{"report_id":"1cba26b5-cc68-4437-b40e-45929f5f3abf","version":0,"status":"done","tags":[],"date":"2026-07-27T14:06:34Z","url":{"schema":"http","addr":"dhlexpress.bg/en/shipping-advice/packaging","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":0,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"final":{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"title":"Packaging Materials | Explore our Boxes and Envelopes ➤ DHL Express | DHL EXPRESS","dom":{"size":187974,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (40273)","md5":"303acfca1f4481fc9426e6d5e5642707","sha1":"22a1afd933e037d632760507c1d0531371bb5f7c","sha256":"91378c31121510fb97d1d76402c321dcfa0dcb5012e3d06cbc3e8c0cc0945050","sha512":"7d046c6083f8375718f22f170fff570da4eaac87f85a658d05f51a02b2d94867de5d8a51b41442df06db243ba2f584fd10b4307757e340b2eb7b68a914d334cf","ssdeep":"1536:n4xYypWziaqV+ayb8KcM4VDOz9JAKHpNwhoyAyKAFvhoyAyDz1wC0SduCKsv1qIB:oV+wVDEeHvKAjHvDxwgnb","tlshash":"fe045d5b3894171ae6d78749a6627a98b4129c7ffd335cedf14e43b84bccbe24c1120a","dom_hash":"domhash22b18cd39ae4892f4e6c4eed2af691b2","first_seen":"","last_seen":"","times_seen":0,"resource_available":false,"data":null}},"submit":{"url":{"schema":"http","addr":"dhlexpress.bg/en/shipping-advice/packaging","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":0,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"tags":null,"meta":null},"settings":{"access":"public","device_type":"desktop","expires_at":"2027-08-31T14:06:34Z","useragent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0","referer":"","cookies":null,"exit_node":"qguvgzjxzsgb3vs"},"stats":{"alert_count":{"ids":0,"urlquery":0,"analyzer":2}},"detection":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null},"summary":[{"fqdn":"cdn.matomo.cloud","ip":{"addr":"3.167.2.128","port":443,"asn":0,"as":"","country":"United States","country_code":"US"},"domain_registered":"2017-09-08","domain_rank":124973,"first_seen":"2019-09-27T14:00:38Z","last_seen":"2026-07-23T17:16:15.343393Z","alert_count":0,"request_count":1,"received_data":677,"sent_data":480,"comment":"","tags":null,"fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}]},{"fqdn":"dhlexpress.bg","ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"domain_registered":"unknown","domain_rank":0,"first_seen":"2022-03-15T15:18:44Z","last_seen":"2026-07-27T12:47:50.488448Z","alert_count":60,"request_count":30,"received_data":2147606,"sent_data":37156,"comment":"","tags":null,"fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Google Tag Manager","description":"Google Tag Manager is a tag management system (TMS) that allows you to quickly and easily update measurement codes and related code fragments collectively known as tags on your website or mobile app.","website":"https://www.google.com/tagmanager","common_platform_enumeration":"","icon":"Google Tag Manager.svg","categories":["Tag managers"]},{"name":"Stimulus","description":"A modest JavaScript framework for the HTML you already have.","website":"https://stimulusjs.org/","common_platform_enumeration":"","icon":"Stimulus.svg","categories":["JavaScript frameworks"]}]},{"fqdn":"www.googletagmanager.com","ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2011-11-11","domain_rank":283,"first_seen":"2012-10-04T01:07:32Z","last_seen":"2026-07-26T22:31:28.839046Z","alert_count":0,"request_count":3,"received_data":1486343,"sent_data":1466,"comment":"","tags":null,"fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"cdn.cookielaw.org","ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2011-06-20","domain_rank":2972,"first_seen":"2013-12-28T13:20:36Z","last_seen":"2026-07-27T08:06:22.811298Z","alert_count":0,"request_count":10,"received_data":763188,"sent_data":5324,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"geolocation.onetrust.com","ip":{"addr":"172.64.155.119","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2004-01-12","domain_rank":4022,"first_seen":"2018-02-07T11:23:41Z","last_seen":"2026-07-27T10:29:06.369193Z","alert_count":0,"request_count":1,"received_data":436,"sent_data":493,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]}],"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":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"e4cda1a4f0f5af7eba0d794b6aeeeee8","sha1":"b812f9ec6a0778c66c5bd42d968cea3f355ea654","sha256":"625aee1e26a0ac019127d27c8ee6bd76e5cea168cd5f4ad441aa0f6c7d0fe32a","sha512":"5e35ce05945aaa39f218814cc40a59de5a0f85ac77a13687f5f5fe8a9a191c43aec1f42708e4a3a3fa1ab85f2267f5f1ea3cf8f8e95d994de9c07f54498acaa6","ssdeep":"","tlshash":"1bc01209b35d507a065bb4022495a117b02f75964b549000a27c49d455996a80409a9d","size":161,"data":"","first_seen":"2026-07-27T12:47:52.577978Z","last_seen":"2026-07-27T14:06:41.201425Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"a0220ceb1dbcaa1c6ecac3ef2cb4014c","sha1":"995eee507449084cdff2bf6e21aad42b255f46cc","sha256":"f6bd915304d974f1b248636e0e47eeae79e28fde94a6fe3ec12f3ccde0e98b36","sha512":"d9208d2736a62ba53030e8dc530404400e34d81f64786ec14e5bfa2f5140426bf0825dc1b8380ca897cc4e3eeefbcfd563ef8398b6927518cf924e04df7414e3","ssdeep":"","tlshash":"7ad0c92df39994e4898ab2a61437a715a817a1e749678018cd181be48524f816425b91","size":205,"data":"","first_seen":"2026-07-27T12:47:52.547309Z","last_seen":"2026-07-27T14:06:41.202234Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"ecd9ae2ba2d6c66b2c7456052a7b5b7b","sha1":"bfb7d3b26284f147f783ab02e3c5e9386d430450","sha256":"aecc991e8656c2a3c3b0c4e6efbec808b4ae6ca9aa7b088f62b2893452fa540d","sha512":"1afecc7fb4ef0fd8fcc16c979b528919613a7cc003242ff1d73ececc9e87a6b423e78b0083cf2c79f4fd18c12ac0565128e31ba90cef51128163df2ef9213b44","ssdeep":"","tlshash":"aab0124fb79db0937e5b6069112d4207b51f1ef70b84a000a2364ef43a952491465fd5","size":105,"data":"","first_seen":"2026-07-27T12:47:52.571767Z","last_seen":"2026-07-27T14:06:41.203197Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"df73cf828f62d2b93d795e7f410ff186","sha1":"892ec4cf0f96b1e20ccf7fa843a3a226363f311f","sha256":"5a9bbf1bddd690f31aa4ffef51bf7d99ea6ef76e639f72f4469996e34bad68bf","sha512":"41797517ee08def752db933ecd99dd4472c4dbee0bcd59882d602a02ee0ffaad57c2a1f8e185250b44091c5afe444eab35cb37e0c784e8cc32d9ef93f0308045","ssdeep":"","tlshash":"fdb0120fb69570977e566079202d530bb61f1ef70b88a040a2364ff47a552490565fd5","size":105,"data":"","first_seen":"2026-07-27T12:47:52.563729Z","last_seen":"2026-07-27T14:06:41.205766Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/scripts/vendor.min.js?v1762424770","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":false,"md5":"cf1a57a2ae81fbc20dc7c54d00fb6ddf","sha1":"cc7a8089a7c78cbad84d596330fc3781d9f0bba4","sha256":"76b6f731dadd69a37d95610bf6878c062b7c4818442164e23d237a6b90062a2b","sha512":"aa5ea88e8e8042226cc32c831dc3e60993f77ee79073f27cc0af956695f7743864dae83fb6d533ef22030690034f1c1f3bf5bf5226f431085b41d8503e5f447c","ssdeep":"6144:VylqWsMOf9QRZ7TPlxUqKxN9l4LDpAnzz9nC0fOh3Oe:QxsB9nbN9l4LDpAn3HGOe","tlshash":"03842a8d7251b13202eb21aa51af45067336196d740e946cb0a8ccee6d7dd88237ffbd","size":393839,"data":"","first_seen":"2025-11-15T08:44:41.070527Z","last_seen":"2026-07-27T14:06:41.191461Z","times_seen":90,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/scripts/application.min.js?v1750161329","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":false,"md5":"1bc2f5a8b85b103a4b72203f60f9244e","sha1":"1e1c9250592505d77743c7d89ef737ec823b6ded","sha256":"211030d4ac9ac4e10d06d1101683822c69bc2d4f6145020b4fe7d83c17bdf06a","sha512":"f854ae1b647d5453182691f8d4224d27303f2a3488b7ee0c211853c7fb523f7b839e111b59e2af1283cba1f84b4ad13b8bbaa99986ed6005c07c1f7c2dcebc44","ssdeep":"768:IP7+tn/k8+DAjDfBEo4jDVxaMTd2qWVzHjo+O:Q7+tnM8A4DfuoUPWVD4","tlshash":"bae229d4726025e349f2a13ea4af63483132293676560588b9b985f52c78d8e7333fbd","size":34191,"data":"","first_seen":"2025-06-25T10:41:46.550387Z","last_seen":"2026-07-27T14:06:41.150754Z","times_seen":120,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"56b5867c078db73e82aee8cb9373cac3","sha1":"8d69cc04e2a3cfb12f0f29807a7337135dba9977","sha256":"24d6f73bfc20fcb313fec5bc653fc8e573c2c975c83d3c037126fc535e630517","sha512":"d088778900ec6e9b2546518300f77e75fca023fd058f8cf53783a3d0d716b59cc530c40cb5d161be904e2593be395ebf7f4bf7d901c6ef06ef4c314e26ba5def","ssdeep":"","tlshash":"b6b0120fb69970937e966069101d4207b51f2ef70b44a000a2364ef43a752490475fd5","size":104,"data":"","first_seen":"2026-07-27T12:47:52.565921Z","last_seen":"2026-07-27T14:06:41.206618Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"af5afb4f1fefd32e13763c4182c95bc7","sha1":"8cf185c10684126f47edd5943d14a76eb96b705c","sha256":"af0c2232938bad901139b7db8c7a2a6bd56262e5cd75c3a2445c55c6fefe0941","sha512":"1914a29dda41ea981969c0ef4a5779616af78eefdfef9d9fd89f840aec376c05458393ab8c3003c741430bd292b12686a27c33d0780b2e337bea1de2544a4ea3","ssdeep":"","tlshash":"5bd0a92df38880e4088af2a31037a311a80390e748238018cc080be08030f812420b80","size":206,"data":"","first_seen":"2026-07-27T12:47:52.569039Z","last_seen":"2026-07-27T14:06:41.207515Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/destination?id=DC-11418689\u0026cx=c\u0026gtm=4e67m0","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"8166c4558722fc1ac0c29d42be719313","sha1":"25edcc61be23213b8d1e29e3847ab37adba6b048","sha256":"0403e687052b08cd86105f7387ce6a97401448461d70f56afcd999ac847fd6da","sha512":"ca80c089278264137caa4aea1f9647119f5662f2ef3023066a98ee71fe410b51e81ac6bc7b1899f00680d4f98996032ab792c1876e633de62c7eaa87b59a84d5","ssdeep":"6144:HhyU0jNY7P69FMxmRknhqsScPmfxNf3Ej1oGanoX+:HhrYaP69Vwz4nO+","tlshash":"ee84f8ccb3d6746693a3b478503f018bb27a69d2f448c898f186d8d42e746998277f7c","size":383772,"data":"","first_seen":"2026-07-27T14:06:41.183579Z","last_seen":"2026-07-27T14:06:41.183579Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"01f5c57682c7db1896a4a1779d45c8cf","sha1":"1416a12158ea1ddf90c2631863ee94823507d254","sha256":"d49a965fe68c2ceeb78a0c9d95daa1bb71a57e3474d088cdd692348466a25779","sha512":"fe2bfbcd58360f7a5d31f40d49d20ed888153137946b843b1cf885a49df085512c1a7eb8a97bacd1b2e1add3d2ad672a1225bd03b9b5e800366b150475767e1d","ssdeep":"","tlshash":"b0d0c92ef39994e4498ab2a61136a715a81795e74967801ccd181be48524f816425b91","size":206,"data":"","first_seen":"2026-07-27T12:47:52.580644Z","last_seen":"2026-07-27T14:06:41.208368Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"5fe023fdcc689a9685aa40bf182e9ff4","sha1":"97f7a6d534259fa6d0d0c71d4858a010bd9b3fbd","sha256":"0d1341213102be94492f98114d4b88574f69b58fe1f6e7e9b42d92814b950f05","sha512":"107d192e14226a81dc095e35331a7c438ff09dccfecce1cdb13079e91a830cf5e22f93ac28c599ba6452da6b04808db18288f18885c2ad90353309c3e68cdf70","ssdeep":"","tlshash":"50b0120fb69571937e576069103d4217b51f1ef70b44a000a6365ef43a552490469fe6","size":105,"data":"","first_seen":"2026-07-27T12:47:52.522943Z","last_seen":"2026-07-27T14:06:41.209212Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"a1ed37f53477014d1cfbd1b251318128","sha1":"ff2bb5051e1a2707d99ac7256039d441daace0ee","sha256":"435068d8da36371654183c0457ba56607b349c2ee5601cadeba458015c89d5ef","sha512":"8e20db0d79a03673412a5e2bcb0b2336d989dcebc2d8d6af6dd1a459caf96679ee42a7277a4a6ab2d14c99dc1933caf68fce176238563e0b52d2ee2362f69cd1","ssdeep":"","tlshash":"abd0a92ef38880e4098ab2a21036a311a80390e748238018cc080be0c020f812424b91","size":206,"data":"","first_seen":"2026-07-27T12:47:52.57597Z","last_seen":"2026-07-27T14:06:41.210244Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/scripts/modules/photoswipe-lightbox.esm.min.js","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"importedModule","is_inline":false,"md5":"b505ee081119c5be142e0dbac4762f99","sha1":"50996ccd34878f848173526bebdc422b5237d28c","sha256":"b82c385604f90cc77082d8e1bd4f5ef7c9d3da62d95dcc3ff1691a4eb0dddd12","sha512":"4bd4645a71a36bce2d5ca1714cdee22d53f7a540ac9dfaa717ed192b60923a1982a9aea5c68bad1d4a22cc1567a8222c1fc1d6edeff7bbd1c438ec25474d532c","ssdeep":"384:GYym0lDcKZyAyHEmlpvGpn1EKWnGQJ4fVlBB6+EV6b324TT+zzIBY:D0lDcK8AyHEY9Gpn1EKuGQJ4fVlB4Bkg","tlshash":"0452a6f573a6c63426ed81d6a017f81ea371b21c5404910c78ac8cdf59a5e8a70babbd","size":14338,"data":"","first_seen":"2024-08-19T16:06:40.943759Z","last_seen":"2026-07-27T14:06:41.1994Z","times_seen":693,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"84b18ccfdb7a1ed3021f4cf31e835e87","sha1":"c4485b605de949377e9278ac1680ceb03f31b7aa","sha256":"e3f267b62bc38354cb9b41fcdc9843864d2a783d87b2a2b9dfdfd46fd3432a02","sha512":"b32a3c3de01288a41491f66d0d93c68b0ea97950e205ab42420aec59df07348ff32030ae65603e1c4fa280a6cfd082bcd4dfc8c12c2f4b36f12a69711bab01d7","ssdeep":"","tlshash":"2ab0120fb69570937f566069102e4207b61f1efb0b44a000a2b64ef43a562490465fd5","size":105,"data":"","first_seen":"2026-07-27T12:47:52.592165Z","last_seen":"2026-07-27T14:06:41.211108Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"0bb44c09cc73aa929636152cf7a38d27","sha1":"f4fed6e4bdf9ad999cfc1bdb80d00c48028fbc7e","sha256":"7e4153ad7a45b986514cf02cfb812ac2740b9e5e0a0e71a95b34dfc871e97e25","sha512":"2b56923d02a016f0283eefbd1c11cccec2a54a793c477a70f84293b188d8de1e85d9efb156808ffa67ce8ec8c84e30b2f8ca10f35faed01ddc8c1182a0670ba4","ssdeep":"","tlshash":"a1d0c92df39994e4498ab3a6103aa715a81795e749678058cd181be48524f826825b91","size":206,"data":"","first_seen":"2026-07-27T12:47:52.557921Z","last_seen":"2026-07-27T14:06:41.211926Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"da2bb594fb6b460180462250f135c968","sha1":"04c66645e28e99ae1d722c946352f5bf8a3a9b38","sha256":"b8b03971fad78b99273b5e3dbea71ba21b5bf307822e2734f84147642ef74c4f","sha512":"8033670ebb782c08509bfd3bc63e9eedd23046d0555b85091474a95d453f85a26a08d2dc41f86bd7afa9aaf6281ae4eafb95797462a0f78263f5fcec6b73d7eb","ssdeep":"","tlshash":"78b0120fb69970937e576069103d420bb61f5ef70b44a000a7364ef43a552490479fe6","size":105,"data":"","first_seen":"2026-07-27T12:47:52.534469Z","last_seen":"2026-07-27T14:06:41.212946Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"3ed54fa9510c0adec80d2943f2557eb0","sha1":"7d9cbc726a8119d76c9cca5992c1cacc89ed46c0","sha256":"381dc3a80995d006189059b76685f6acc9a948d5806ae1296979ffda9ecd093b","sha512":"9f97df8cb98c8b0abc479d6c7237a559c4cccb06771b4b732ba95ad89e6741940089a7bd6e479d72ecf5a58f6fd1b9a3b39dd8c8cf9a185361e011979f3bb52f","ssdeep":"","tlshash":"b4c0800df35d5076076bb4022495e103f01f75d74f54d040727c49d059dd7ac4409f9d","size":161,"data":"","first_seen":"2026-07-27T12:47:52.525096Z","last_seen":"2026-07-27T14:06:41.213704Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"de10f7e684e446ccfd344543936a5f72","sha1":"39cd675dfe6373e7a7e0f23368b96a60a1028278","sha256":"81eb854eb41774aa014640b298a5795a0b39e8c4cdf743c0f9cfde832ff9ee8a","sha512":"30a5b6383ef0430e50ceb96c1c9543891490cbe7356b2c43808b7af3cb1ff6c48135529c84a3972072b5c08ff865c9181f26877c86c2ea0e3a9621030ddaf2e8","ssdeep":"","tlshash":"57d0a92df38884e8088ab2a21036a321a80390e74927801ccc080be0c024f812420b80","size":206,"data":"","first_seen":"2026-07-27T12:47:52.585463Z","last_seen":"2026-07-27T14:06:41.21525Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":true,"md5":"bf88fc894d63149836561e165aa0ddb9","sha1":"95e201eb472157524fc69a9a9e54321c5723c6a3","sha256":"e73f0ac066ea4b7b74a959ddb1520e6ec7b5c2eca6a7c0005de6c7bb53593e4f","sha512":"f9eec713bed23afe7d922a46783b19f41641056a0637bc6d8c93cf2480642a29cd560c7101c3ae5c8e6529748e7f8533e027290a60c43f24e1e326eac94ce8f1","ssdeep":"","tlshash":"fbb09284f3130db406e03b900e9db6857087342881e2a4711faa310d722898663a8868","size":125,"data":"","first_seen":"2026-06-09T19:37:55.364832Z","last_seen":"2026-07-27T14:06:41.216332Z","times_seen":7,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":true,"md5":"45ad3243e734e2449dd1d5628e20a499","sha1":"df4cc67fcc2af77fbf159b32baa588bd04b848d2","sha256":"adf3f60553b4294b70de0f10cff458231e8a2fdff6916494d9ac108aac18f051","sha512":"67917fff0f93a2ebee32921cca598ab05bd68d3cdfc74a24837a8d94f7831eb03b2e73d2ecc624cd3ba935c947ac92ab8b9bb0a915651b929ce4139255024cda","ssdeep":"","tlshash":"d8e0c0ea74110cb670ed06b623b5a529b583660c68092c22cefdc914791c59788128cc","size":359,"data":"","first_seen":"2026-07-27T12:47:52.540223Z","last_seen":"2026-07-27T14:06:41.216983Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":true,"md5":"d6472d250f5e5ba1144b2356eed8f66d","sha1":"bcf74df73cccee4f25074b2638808bfb73ee0f92","sha256":"cba670cac3d9da8c7a269107053580f2485daa7ffa967d34089202ef822d2c84","sha512":"6dee0b45ee1bc63a54c256b6fc14d276a04aa0fd9b9603195412bc7ba7a6d2a7e7ab86027c2b157ffde89bdc25160898a64502ca67db25e4e21857257b060ea1","ssdeep":"","tlshash":"85b092b03264897e068a104c7668c3c43c3d0084b6023840966c35891035d869841f88","size":125,"data":"","first_seen":"2026-06-09T19:37:55.37125Z","last_seen":"2026-07-27T14:06:41.217808Z","times_seen":7,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":true,"md5":"172234ac193a7c7ab3ba1ec509ca3ef2","sha1":"5b6a643b2411c811676f2cf5e15e92a10dcb9155","sha256":"69f71bcf36d6365638f99c6ba94ba849511f3d3c9793ea19d2c9e89f5bd3cc7b","sha512":"e0e950b51e461d640a79ef7793cf33cd8fe08ce4445ac4bd3c3bb8d64cc8008a8b4e75e556b831088bc32bc90d311a29ceafa634d0af05bbefc5fa0a7fa10949","ssdeep":"","tlshash":"1d7000000028828e008000200880a000080b00bc00a008c02b08228c28030000288a80","size":24,"data":"","first_seen":"2026-06-30T09:36:38.59055Z","last_seen":"2026-07-27T14:06:41.218456Z","times_seen":6,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":false,"md5":"4f943c381b86927491cefb2899022a9c","sha1":"ec02de4d3689b7cc01c87953fec0e716b6eb647b","sha256":"82ddb1ae2b33a77d6910b7ad22e7b266909466adc3ca072c8ef2c828b669fdfb","sha512":"33cc306cc2f28745df10230f6713d4e66f8e9a5eea78c2f5873387f7fe1a97d9cc3bef04a24f4163c3e91657b2787742ed9052fd013e869bf3d261a9eff2ea17","ssdeep":"","tlshash":"66b09b9d55e9fd740a023138041f815475053451963a4d80454424a1552d5d520ef5a2","size":118,"data":"","first_seen":"2023-05-21T16:39:27Z","last_seen":"2026-07-27T14:06:41.21906Z","times_seen":139,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/scripttemplates/otSDKStub.js?did=5afb8be5-36db-4066-8d42-fd51ad29102b\u0026data-document-language=true","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"5710f6fcf69b6478e90dc962740985c5","sha1":"1069efeefe35b805ac537fea6cc52f1372ef1769","sha256":"76187e1cf3a80945d8bd89f371e839f638fb991a2dbc6abaa332ba801c4e2f84","sha512":"7367514f89d6a16c493784ff7e39e8613bb5460a6c5c336a09a2f4059bbcde9de86a9826b9cc4c6ea06a72982195f368c724e0032d4334254c291949f87065d8","ssdeep":"384:r8k7hI3RzMABwXeU9LH6rlIgknE8eEaRgCyu8LcSLKvTJ9x4AaHKJx686S:rzIBAABwXb9wvknECPCJ8GJ9ugwS","tlshash":"45c2f989b040ee3447d261dc5a3be25a723a746d3485c168f868dce0647dc4b6633bb6","size":26819,"data":"","first_seen":"2026-07-20T05:14:25.577853Z","last_seen":"2026-07-27T15:49:37.810894Z","times_seen":1268,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"b121048613b8a329143dbcab246330dd","sha1":"f1ec02113974a9503ad0f2141b1a75504956cf7b","sha256":"ee22e6b9feec715ddd6db0487863c3eeb2223281344c5d71bfab38837498b8b6","sha512":"5f198671ec8f6e0a97f34b06b4081330e99591ed30c0d666f675861472c64d0f44fe2156147ab3f24a1ea5591f31836e5771fdf065b83f2d79ef52c466ef1728","ssdeep":"","tlshash":"85b0121fba9570977e566069102d5207b61f1ef70f48b000a2374ef47e552490565fd5","size":105,"data":"","first_seen":"2026-07-27T12:47:52.536847Z","last_seen":"2026-07-27T14:06:41.219656Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/scripts/modules/application_es6.min.js?v1741105408","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":false,"md5":"01ae31799923f81dfdae2216fbc57c9d","sha1":"3d0460b55fae47b253bb973bd28378b2dea3575d","sha256":"66f8e53411a8e9205e5cc3788486c517fdb30b11f1e9e20ab9205d828b3880fa","sha512":"e2a20c178e424ba3a250bc729a35e9384fb0956a0447e4dc7e92a1d7f79f66d477b3051751c49559f25addf6265261accd36d5a9ced14cf2b163522ef39e2f3e","ssdeep":"","tlshash":"6b3144b8f93c987305fd43aea14b65fa81a936ed6d06c018e15d4cc954a8086297593b","size":1601,"data":"","first_seen":"2025-04-04T11:12:55.685143Z","last_seen":"2026-07-27T14:06:41.182997Z","times_seen":131,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"f1dee85fdbe9d582906d73587737f5e5","sha1":"e49ca94f1990dc0527bf57fdd8e9d54091eb6661","sha256":"e80f7e1b1a210a4de112b490e50bafca66e9c673fd3cc7ae2c903316e2e8720a","sha512":"9760d3fd7cab2e6f6829ff60893b523e21e4554589977f7bd3945c4d35fc959f871175219aebb3d14e06bcdf8f92c2b9bdb425767d39fdc726e62defbdacebc5","ssdeep":"","tlshash":"edd0c92df39994e4498ab2a61036a715a817a1e749678018cd181be4c524f816525b91","size":205,"data":"","first_seen":"2026-07-27T12:47:52.527082Z","last_seen":"2026-07-27T14:06:41.220511Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":false,"md5":"2b6654c3c10566778d1a5050c9946ccf","sha1":"0ca0cb6651454577fe69dbed7e55dacff0a45f57","sha256":"3d3feca7be5ede2fc8b8f3bc00dcd15eca878385f0a1b824acc0a4bba932807b","sha512":"76b5bbb3b216479988563957a198bbc3080e870ccc91c8b1857a72e3cf0b83548c9d8b3f3244806ccb2f189fd3e56467d1f53199cf41008b12a1645245d4791a","ssdeep":"","tlshash":"d0b0123e74416c3d405a3c942637801f3473289955011422808c04480c34b08889743c","size":93,"data":"","first_seen":"2023-03-08T13:18:30Z","last_seen":"2026-07-27T14:06:41.221522Z","times_seen":139,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":false,"md5":"95a0f965260abe7e5d8e851798c8a047","sha1":"b3257cd844a6f081272094fef732c158a8815a1a","sha256":"e2e451192d4cfc12a3afd60312ab08ba9f67325be12a469d061abefe329a3905","sha512":"4566e9b7c7375703b05fc41a714f610d8e7a16a7719634f2d861f9bc68b103c52a4f83b4e0a47a3e4f744170c37b6f18cfa2211f6e02b49b718a73444901d62f","ssdeep":"","tlshash":"6cb09b9d55dabd754b033138141b91247505345145354d5045481491561e5d520ff962","size":118,"data":"","first_seen":"2023-05-21T16:39:27Z","last_seen":"2026-07-27T14:06:41.222113Z","times_seen":139,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/js?id=G-CTBNEZK511\u0026cx=c\u0026gtm=4e67m0","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"3f5a856e0f4fd9ae405e6edf20c707c4","sha1":"4fc66583ed54b8d48f150f35b97d392ae4d333c7","sha256":"5b14f6eb13f388bd1bc5282dda3d1b81b7643113c8b3e3d03c7b2afee6a74944","sha512":"8dfef426510e4e3d6e983dd12b00ba87466fff4335d980c45f1b3c0e104f38190c99cd9c019e0324e79e0613d26fbc2a9271501f56723d0cd4588489d4a01695","ssdeep":"6144:Ok7+U0jIWXbP69FMxmRkqn0hdBScPmfxNf3EjKUGxIGaHoXuARR3e:P7H1WLP69V3KGUGxYHOLe","tlshash":"5cc40aceb3d674225396f478543f01cba97b25e2b45cc8aab1c9cce02d7464a8167f78","size":558603,"data":"","first_seen":"2026-07-27T14:06:41.159746Z","last_seen":"2026-07-27T14:06:41.159746Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"99f0dab623c4a2e4efad3d6dd4b417db","sha1":"40bf64c667a293da4f8f367638a106f81c20df87","sha256":"5b27dd335900dde723e1b87271fe56f48d89ca0dc3d49ff0d62ea446a5b1ed61","sha512":"bdc1d2a8872e019faf7cb9b4afd6dbfdef7ead88555116626ae9d667d21abeb5dfeaf4ebe424071bb48cd443857e94a39426169a800a44d0ba21d69b772364cb","ssdeep":"","tlshash":"77d0a92df38880e4088ab2a31036a315a80390e749238018cd080be08024f812424b80","size":206,"data":"","first_seen":"2026-07-27T12:47:52.583024Z","last_seen":"2026-07-27T14:06:41.222696Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"ffbc7cc761de8d163d7a3c84e751c712","sha1":"3034d1b48ec541767d994a0d694fa2dbc851cf22","sha256":"65e50bb51993f764d040f623187f76532f6956b17f2b6265238fbe86845e9b49","sha512":"a91ea558f22bc08c1f7d4f42609ad489ad22eee6e1a378d83f4feeb3c3c7f783f93207da945695efb59cddd92f93ca6823866792df5cb36d8451710093fb9d1a","ssdeep":"","tlshash":"c4d0c92df39994e4498ab2a6103aa715a81795e749678018cd181be48524f816825b91","size":206,"data":"","first_seen":"2026-07-27T12:47:52.529342Z","last_seen":"2026-07-27T14:06:41.223519Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"6eac644eefeaf2dba97608fee5e166f8","sha1":"766b9f30d62703a7ee0492687d670b803949610b","sha256":"7570ce1d5eda643ddb2978424ca9a9bf33705472f64d73aaf0e2409f892058a8","sha512":"dbbc01334a28a03395020420c92ba4bc6a144d9eebda469031d479910eb781b0b1a83384885dd974bb2734164e3ecf31d6ffd5abaa829a616d1ba998e28f6c98","ssdeep":"","tlshash":"dcb0124fbb9570937ea66069102d4207b51f1ef70b44a000a2764ef43a5534d1565fd5","size":105,"data":"","first_seen":"2026-07-27T12:47:52.57398Z","last_seen":"2026-07-27T14:06:41.224379Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/scripttemplates/202510.2.0/otBannerSdk.js","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"a2c3fe34db4c7fb1c4451892bae1e4a0","sha1":"0488250e210aa49c5abeedad334c8107dccc0f48","sha256":"7c549dad313b677b15cb870dc18f00ddc3a7aa549f53aa09dfdacd5db4d9e2da","sha512":"d9663383e52face86d43fcd4075cadb66e73819c3d8060a48c72daa58af2caa5702aa680da47639a71c705e4dab6327954aa147bc299748881fbfa71474f58a3","ssdeep":"6144:gh1WDttuwivNGSwMxnpNE7q2q20+bcVw1culi/rQVa1jdpSb1zHhE/beC:guuBNGS7xnpNE7q2V+QVaYtYbN","tlshash":"81b42a4e7590753587eb92b8c027414aba35746cac85806cb45cc5f90bf9f821ea3fbb","size":524879,"data":"","first_seen":"2025-11-05T01:38:18.209816Z","last_seen":"2026-07-27T14:06:41.17321Z","times_seen":3846,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtm.js?id=GTM-PQP4X5Q","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"8bb0a4eeb62a5d8b7eaff1b8a429b199","sha1":"4fadbbc208e5d437548cebb09d346ce4cf3adbba","sha256":"ded141ecc4a818e0da0d257b9852d40e3c0cc2517133b930f3b7add198cb88c5","sha512":"f69a286e1f2bc44ead6e2e421f919199cf6ccfdd6632b88cac75d5210319de6c1a09194e44846bc73cd3bf929b7e380dbee9f88b7e3258b2dffee03e9dbc73c4","ssdeep":"6144:HLXxFU0jUecP69FMxmRkqn0hdBScPmfxNf3Ej18Ga8oXMJiU7:HLXxm3XP69V3KBM8OMJ/7","tlshash":"78b419ceb3c674269396f478903f018ba57a28e2b44cd895f089cce42e7465a5273f7d","size":541699,"data":"","first_seen":"2026-07-27T14:06:41.179788Z","last_seen":"2026-07-27T14:06:41.179788Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"6fc3f0347a5491fd75657af8d7d2f019","sha1":"38e86bc2eba630a6971937c27c30914ab888e5ce","sha256":"5e19ee4afdc78202bd561b2cf384c3aec9db320c497d503e2d6280216dbc2e16","sha512":"d609654fe09223f68e1f5b3073350558274f5fb54a3f11f04b6a8c5b14e2fb78100d1ffb72cd3adc0be6e07a381130af664855838e4667079d0c7d55cc2a78ab","ssdeep":"","tlshash":"b8b0120fb6d570937f567479101d5207b61f2ef70b44a000a2364ef43a552490565fd5","size":104,"data":"","first_seen":"2026-07-27T12:47:52.549447Z","last_seen":"2026-07-27T14:06:41.225349Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"d79cbac1cd5f8526b329eed6f7731273","sha1":"66a6984c99dabffd2d0e2c9a53d45ffb1a434afd","sha256":"9700a4d8ca9483d5d46dabc3919acc53ac8d9fa97c032ab36e535b0d241c41dd","sha512":"754a69c8cdc5f6e2dbfa035f61e1685088bc863b2785a4825b27e5969c0ce023f40df546260e208fede34fc972006ed6047c14ed35d2cc3305275c2d05881134","ssdeep":"","tlshash":"53d0c92df39994e4498ab2a61036a715a817a1e749678018cd191be48524f816425b91","size":205,"data":"","first_seen":"2026-07-27T12:47:52.587791Z","last_seen":"2026-07-27T14:06:41.226242Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":false,"md5":"f3214f3d102464797c42d9774ef7283a","sha1":"0062b4619ab0d8f60edffdc95443f4e4e15d1f94","sha256":"ea2e34ed43854a18e6e1c1e273d93573cd73e4754593578bbec940dbc3e8e8ee","sha512":"307886e9e361d69025268015c0e9af674a83564438e63705594f9619312ed499a306ffc10d7b9aed59abf17c890c934906ebf0436066edd98c3d4ac89dda7ccd","ssdeep":"","tlshash":"46e0ab2b0952ef3f223a22753db18f0ef6df202d9b848012868bc02d3595dda409234c","size":424,"data":"","first_seen":"2026-07-27T12:47:52.551854Z","last_seen":"2026-07-27T14:06:41.227104Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"946dfb42b8997b1d64f11b98fe2edd72","sha1":"0c3d7a35489a435dfe587950228f216f3670d292","sha256":"66f0ea7da38b5ec2d8a075e140cd7ce3a38ba523942126f5f1f97d7876c1514d","sha512":"9f27cb9e32f5596ebfbc8d82245bc3d8f0096a079cd9c253abd75b3a862682d96278fa1f07d7cfad044e27bd602120d31ef890ece3f7b58b28695ddd1246909f","ssdeep":"","tlshash":"00d0a92df38880e4088ab2a21036a311a80390e748238018cc080be08020f816425b91","size":206,"data":"","first_seen":"2026-07-27T12:47:52.554945Z","last_seen":"2026-07-27T14:06:41.227954Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"b586853b1550654c9396760e25e39886","sha1":"cad6c93d209dcdb32671bdd3fe1f4e221a38d77e","sha256":"fea3ff728dde8f0d20aa14eff5c0569eaf67d01fc723de968e0b5bf38a57cca5","sha512":"92af296126b0745e3be72eb17f7e9439011c79c05a4211a91ab0939b004da5af1f79fb7d873706bef7f03e155f8e5c3460d9f9bf27f45a1fbdaa817693e63d96","ssdeep":"","tlshash":"77c0120ab35d5066075ba40224959102a01f75974a54d040627c49d055996a80409a9d","size":161,"data":"","first_seen":"2026-07-27T12:47:52.560067Z","last_seen":"2026-07-27T14:06:41.228753Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/@googlemaps/markerclustererplus/dist/index.min.js","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"scriptElement","is_inline":false,"md5":"6d72ff71a3a6b58244d7336469a0d479","sha1":"b2538a481ec947ff6e0ed7ef0a1d4cdfee196bcc","sha256":"cc0b14615ea7ed660d7a101035d077229c1fb59db3f2dab02e764bf82df1ee4a","sha512":"18ef9a5e47c5d49da82c16995cc5f0d55af197576ea8ab672303b03844184a579d94356134270aea7537b71a4f6bf146d5eb5f672312f85cc5fbab72b853d36c","ssdeep":"384:31roYQGOFI2gP5kag7uJf4UZ/Uo6m4Lga5Wy9tVjVCOjHxEBWd/T/vbm2cGyrOO7:lMMXkNUZ8o6ZrLVjMW2BI62gwpLogosE","tlshash":"e603d7c9f691b0604393b1f8013f0a8af33b5c59a86a81ecf655d0e16cb994e507bf39","size":40278,"data":"","first_seen":"2023-03-08T13:18:30Z","last_seen":"2026-07-27T14:06:41.153742Z","times_seen":1541,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"8156784ad833d680805d504a19abefa7","sha1":"4618f1bc33bf50fcf35df3f89a0f96dc7c85706a","sha256":"25d5d5dce88339c0c2a92f634e266ff5144ff722a94513a2d40ab23f45429e38","sha512":"b68384031524658bbb7a1edc082766eb15636bcf1d51ce4fd76d4cb51b140dc8eeaf894708771fd66037097cc14495adb2a95bd7510fe33035559d908ee31c39","ssdeep":"","tlshash":"ebb0120fb69570a37e567069101d4207b51f2ef70b84b400a2364ef43e552890465fd5","size":104,"data":"","first_seen":"2026-07-27T12:47:52.589833Z","last_seen":"2026-07-27T14:06:41.229577Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"87cc47fc9fae1e1b785bfee8b5ba7950","sha1":"4462cd679511739636d87ac89b054abad06602dc","sha256":"d4824ac37531d1875ed4b9ea8b5810870b4991a87f811183673c879fe3ea71b9","sha512":"8e20440ea649d3dffbe1cd0bc94540b0c291dd8e7d4aa5cbea7648bac71e2fa4d58b562d801fcac24885e2acae90d321af52179eade515bab24d3626b23ae8e9","ssdeep":"","tlshash":"b5b0120fb6d570937e576069203d4307b61f1ef70b44a040a6374ef43a552490469fe6","size":105,"data":"","first_seen":"2026-07-27T12:47:52.594175Z","last_seen":"2026-07-27T14:06:41.230422Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"introduction_type":"eval","is_inline":false,"md5":"d152e62b1cde47d418038927783483d0","sha1":"980a42ea6ff1cc81ba9ef587abdca347007c381a","sha256":"90db1432be3d95ab84160be94e792aec844c43f5d52724eccb32ef77a27747cf","sha512":"c084e497918a70c5186d9416cbcb3c1064ea5d8edbb784cbb8e3b7fc671cff6824567d12c30f4054fd86ee0313cf90fe22e90011c38f5675ab7b9e34338153cc","ssdeep":"","tlshash":"c0c01209b35d5066075bb41224999102a01f75975a549000627c49d0559d6a80409a9d","size":161,"data":"","first_seen":"2026-07-27T12:47:52.561891Z","last_seen":"2026-07-27T14:06:41.231224Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}}],"eval":null,"write":null,"console":null},"http":[{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging/","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-27T14:06:06.271Z","timestamp":1785161166271,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /en/shipping-advice/packaging/ HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: document\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: none\r\nPriority: u=0, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: text/html; charset=UTF-8\r\ncontent-length: 6785\r\ncache-control: private, max-age=0, must-revalidate\r\npragma: no-cache\r\nx-frame-options: SAMEORIGIN\r\nx-xss-protection: 1; mode=block\r\nreferrer-policy: strict-origin-when-cross-origin\r\nx-content-type-options: nosniff\r\nset-cookie: check=1785161166; expires=Sat, 26-Jul-2031 14:06:06 GMT; Max-Age=157680000; path=/; secure; HttpOnly\nsession0=check; path=/; secure; HttpOnly\nsession1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; path=/; secure; HttpOnly\nsession2=check; path=/; secure; HttpOnly\nsession3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; path=/; secure; HttpOnly\nsession4=check; path=/; secure; HttpOnly\nsession5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; path=/; secure; HttpOnly\nsession6=check; path=/; secure; HttpOnly\nsession7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c; path=/; secure; HttpOnly\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Google Tag Manager","description":"Google Tag Manager is a tag management system (TMS) that allows you to quickly and easily update measurement codes and related code fragments collectively known as tags on your website or mobile app.","website":"https://www.google.com/tagmanager","common_platform_enumeration":"","icon":"Google Tag Manager.svg","categories":["Tag managers"]},{"name":"Stimulus","description":"A modest JavaScript framework for the HTML you already have.","website":"https://stimulusjs.org/","common_platform_enumeration":"","icon":"Stimulus.svg","categories":["JavaScript frameworks"]}],"data":{"size":46162,"size_decoded":8222,"mime_type":"text/html; charset=UTF-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (361), with CRLF, LF line terminators","md5":"b94e216f7ff1d0dbe7d51b5455e9a64c","sha1":"c7d79b8f6a2efd7970a39619df3ec4c55baf0365","sha256":"dabb728287e9e417929e39e9e6930d8da1718a3ea26d8f49386c0e6294f961cd","sha512":"68edd617770480131e04bc090fe30bcfd756d5ec4a395ba12b14ecb287ffa6fa2a3f8c3c31f94548c5637e39e5466ea3611cab50b0d862fdc8fbc2e4ede45d6d","ssdeep":"768:b9YBwHpNwhoypyoUFJxR8EFn0hoypyJz1xR8EFny4SXkXLX+j:b+qHpNwhoypyoUF4hoypyJzq4S07Oj","tlshash":"d2236422588d4c2f155b02c7a1607668f48f1d7dd349a962b2fb40fa6be5ed20e3606f","first_seen":"2026-07-27T14:06:41.146724Z","last_seen":"2026-07-27T14:06:41.146724Z","times_seen":1,"resource_available":false,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIiBjbGFzcz0ibm8tanMiPgoKCTxoZWFkPgoJCTxzY3JpcHQgZm9ybWF0PSJqcyI+Ci8vPCFbQ0RBVEFbCi8vIG91dCBieSBoZWxwZXIgZ3RtX2RhdGFsYXllcgp2YXIgZGF0YUxheWVyID0gd2luZG93LmRhdGFMYXllciB8fCBbXTsKZGF0YUxheWVyLnB1c2goeyJ1c2VyX2lkIjoiM2EzMSJ9KTsKCi8vXV0+Cjwvc2NyaXB0PgoJCQoJCTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KCQoJCTxtZXRhIG5hbWU9InJvYm90cyIgY29udGVudD0ibm9pbmRleCxub2FyY2hpdmUiPgo8bWV0YSBuYW1lPSJnb29nbGVib3QiIGNvbnRlbnQ9Im5vaW5kZXgiPgo8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIj4KPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSIvL2Nkbi5jb29raWVsYXcub3JnIj4KPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSIvL2V4cHJlc3MtcmVzb3VyY2UuZGhsLmNvbSI+CjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiBocmVmbGFuZz0iYmciIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9iZy91c2xvdnlqYS16YS10cmFuc3BvcnR5cmFuZS9vcGFrb3ZrYS8iPgo8bGluayByZWw9ImFsdGVybmF0ZSIgaHJlZmxhbmc9ImJnLUJHIiBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvYmcvdXNsb3Z5amEtemEtdHJhbnNwb3J0eXJhbmUvb3Bha292a2EvIj4KPGxpbmsgcmVsPSJhbHRlcm5hdGUiIGhyZWZsYW5nPSJlbiIgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL3NoaXBwaW5nLWFkdmljZS9wYWNrYWdpbmcvIj4KPGxpbmsgcmVsPSJhbHRlcm5hdGUiIGhyZWZsYW5nPSJlbi1VUyIgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL3NoaXBwaW5nLWFkdmljZS9wYWNrYWdpbmcvIj4KPGxpbmsgcmVsPSJhbHRlcm5hdGUiIGhyZWZsYW5nPSJ4LWRlZmF1bHQiIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9iZy91c2xvdnlqYS16YS10cmFuc3BvcnR5cmFuZS9vcGFrb3ZrYS8iPgo8bGluayByZWw9ImNhbm9uaWNhbCIgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL3NoaXBwaW5nLWFkdmljZS9wYWNrYWdpbmcvIj4KCQkKPCEtLSBHb29nbGUgVGFnIE1hbmFnZXIgLS0+Cgo8c2NyaXB0PgovLzwhW0NEQVRBWwooZnVuY3Rpb24odyxkLHMsbCxpKXt3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFydCc6Cm5ldyBEYXRlKCkuZ2V0VGltZSgpLGV2ZW50OidndG0uanMnfSk7dmFyIGY9ZC5nZXRFbGVtZW50c0J5VGFnTmFtZShzKVswXSwKaj1kLmNyZWF0ZUVsZW1lbnQocyksZGw9bCE9J2RhdGFMYXllcic/JyZsPScrbDonJztqLmFzeW5jPXRydWU7ai5zcmM9CidodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsO2YucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoaixmKTsKfSkod2luZG93LGRvY3VtZW50LCdzY3JpcHQnLCdkYXRhTGF5ZXInLCdHVE0tUFFQNFg1UScpOwovL11dPgo8L3NjcmlwdD48IS0tIEVuZCBHb29nbGUgVGFnIE1hbmFnZXIgLS0+CgoJCQoJCQoJCTx0aXRsZT5QYWNrYWdpbmcgTWF0ZXJpYWxzIHwgRXhwbG9yZSBvdXIgQm94ZXMgYW5kIEVudmVsb3BlcyDinqQgREhMIEV4cHJlc3MgfCBESEwgRVhQUkVTUzwvdGl0bGU+CgoJCTxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJFeHBsb3JlIOKepCB0aGUgZnJlZSBib3hlcyBhbmQgZW52ZWxvcGVzIG9mZmVyZWQgYnkgREhMIEVYUFJFU1MgZm9yIHBhcmNlbCBwYWNrYWdpbmcgfCBJbnRlcm5hdGlvbmFsIGNvdXJpZXIgc2VydmljZXMiPgoJCTxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsaW5pdGlhbC1zY2FsZT0xLjAiPgoKCQkKCQkJCTxzY3JpcHQ+Ci8vPCFbQ0RBVEFbCgkJCWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc05hbWUgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NOYW1lLnJlcGxhY2UoIC9cYm5vLWpzXGIvLCAianMiICk7CgkJCi8vXV0+Cjwvc2NyaXB0PgoJCTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL3B1YmxpYy9kaXN0L3N0eWxlcy92ZW5kb3IubWluLmNzcz92MTc2MjQyNDc3MCIgLz4KCQk8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9wdWJsaWMvZGlzdC9zdHlsZXMvYXBwbGljYXRpb24ubWluLmNzcz92MTc3MzA1NTk1OCIgLz4KCgkJPCEtLSBIVE1MNSBzaGl2IGFuZCBSZXNwb25kLmpzIElFOCBzdXBwb3J0IG9mIEhUTUw1IGVsZW1lbnRzIGFuZCBtZWRpYSBxdWVyaWVzIC0tPgoJCTwhLS1baWYgbHQgSUUgOV0+CgkJCTxzY3JpcHQgc3JjPSIvcHVibGljL2Rpc3Qvc2NyaXB0cy9odG1sNXNoaXYubWluLmpzP3YxNjc1MjUxNjI2Ij48L3NjcmlwdD4KCQkJPHNjcmlwdCBzcmM9Ii9wdWJsaWMvZGlzdC9zY3JpcHRzL3Jlc3BvbmQubWluLmpzP3YxNjc1MjUxNjI2Ij48L3NjcmlwdD4KCQk8IVtlbmRpZl0tLT4KCQkKCQk8bGluayByZWw9InNob3J0Y3V0IGljb24iIGhyZWY9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9mYXZpY29uLmljbyI+CjxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBzaXplcz0iMTZ4MTYiIGhyZWY9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9mYXZpY29uLTE2eDE2LnBuZyI+CjxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBzaXplcz0iMzJ4MzIiIGhyZWY9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9mYXZpY29uLTMyeDMyLnBuZyI+CjxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBzaXplcz0iNDh4NDgiIGhyZWY9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9mYXZpY29uLTQ4eDQ4LnBuZyI+CjxsaW5rIHJlbD0ibWFuaWZlc3QiIGhyZWY9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9tYW5pZmVzdC5qc29uIj4KPG1ldGEgbmFtZT0ibW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIj4KPG1ldGEgbmFtZT0idGhlbWUtY29sb3IiIGNvbnRlbnQ9IiNmZmYiPgo8bWV0YSBuYW1lPSJhcHBsaWNhdGlvbi1uYW1lIiBjb250ZW50PSJESEwgRVhQUkVTUyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjU3eDU3IiBocmVmPSIvcHVibGljL2Rpc3QvZmF2aWNvbnMvYXBwbGUtdG91Y2gtaWNvbi01N3g1Ny5wbmciPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI2MHg2MCIgaHJlZj0iL3B1YmxpYy9kaXN0L2Zhdmljb25zL2FwcGxlLXRvdWNoLWljb24tNjB4NjAucG5nIj4KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iNzJ4NzIiIGhyZWY9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9hcHBsZS10b3VjaC1pY29uLTcyeDcyLnBuZyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9Ijc2eDc2IiBocmVmPSIvcHVibGljL2Rpc3QvZmF2aWNvbnMvYXBwbGUtdG91Y2gtaWNvbi03Nng3Ni5wbmciPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMTR4MTE0IiBocmVmPSIvcHVibGljL2Rpc3QvZmF2aWNvbnMvYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LnBuZyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjEyMHgxMjAiIGhyZWY9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9hcHBsZS10b3VjaC1pY29uLTEyMHgxMjAucG5nIj4KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iMTQ0eDE0NCIgaHJlZj0iL3B1YmxpYy9kaXN0L2Zhdmljb25zL2FwcGxlLXRvdWNoLWljb24tMTQ0eDE0NC5wbmciPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxNTJ4MTUyIiBocmVmPSIvcHVibGljL2Rpc3QvZmF2aWNvbnMvYXBwbGUtdG91Y2gtaWNvbi0xNTJ4MTUyLnBuZyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjE2N3gxNjciIGhyZWY9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9hcHBsZS10b3VjaC1pY29uLTE2N3gxNjcucG5nIj4KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iMTgweDE4MCIgaHJlZj0iL3B1YmxpYy9kaXN0L2Zhdmljb25zL2FwcGxlLXRvdWNoLWljb24tMTgweDE4MC5wbmciPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMDI0eDEwMjQiIGhyZWY9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9hcHBsZS10b3VjaC1pY29uLTEwMjR4MTAyNC5wbmciPgo8bWV0YSBuYW1lPSJhcHBsZS1tb2JpbGUtd2ViLWFwcC1jYXBhYmxlIiBjb250ZW50PSJ5ZXMiPgo8bWV0YSBuYW1lPSJhcHBsZS1tb2JpbGUtd2ViLWFwcC1zdGF0dXMtYmFyLXN0eWxlIiBjb250ZW50PSJibGFjay10cmFuc2x1Y2VudCI+CjxtZXRhIG5hbWU9ImFwcGxlLW1vYmlsZS13ZWItYXBwLXRpdGxlIiBjb250ZW50PSJESEwgRVhQUkVTUyI+CjxtZXRhIG5hbWU9Im1zYXBwbGljYXRpb24tVGlsZUNvbG9yIiBjb250ZW50PSIjZmZmZmZmIj4KPG1ldGEgbmFtZT0ibXNhcHBsaWNhdGlvbi1UaWxlSW1hZ2UiIGNvbnRlbnQ9Ii9wdWJsaWMvZGlzdC9mYXZpY29ucy9tc3RpbGUtMTQ0eDE0NC5wbmciPgo8bWV0YSBuYW1lPSJtc2FwcGxpY2F0aW9uLWNvbmZpZyIgY29udGVudD0iL3B1YmxpYy9kaXN0L2Zhdmljb25zL2Jyb3dzZXJjb25maWcueG1sIj4KCgoJCSAKCQkKCQkJCQkJCQoJPC9oZWFkPgoKCTxib2R5IGNsYXNzPSJib2R5X3BhZ2VzX2RldGFpbCIgZGF0YS1uYW1lc3BhY2U9IiIgZGF0YS1jb250cm9sbGVyPSJwYWdlcyIgZGF0YS1hY3Rpb249ImRldGFpbCIgZGF0YS1jb3VudHJ5PSJCRyIgZGF0YS1jb25zZW50X21hbmFnZW1lbnQ9InRydWUiIGRhdGEtY29uc2VudF9tYW5hZ2VtZW50X3BsYXRmb3JtPSJvbmV0cnVzdCI+CgkJCjwhLS0gR29vZ2xlIFRhZyBNYW5hZ2VyIChub3NjcmlwdCkgLS0+Cjxub3NjcmlwdD48aWZyYW1lIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vbnMuaHRtbD9pZD1HVE0tUFFQNFg1USIgaGVpZ2h0PSIwIiB3aWR0aD0iMCIgc3R5bGU9ImRpc3BsYXk6bm9uZTt2aXNpYmlsaXR5OmhpZGRlbiI+PC9pZnJhbWU+PC9ub3NjcmlwdD4KPCEtLSBFbmQgR29vZ2xlIFRhZyBNYW5hZ2VyIChub3NjcmlwdCkgLS0+CgoJCTxkaXYgY2xhc3M9ImZsYXNoX21lc3NhZ2VzIj4KCQkJCTwvZGl2PgoKCQk8YSBocmVmPSIjbWFpbl9jb250ZW50IiBjbGFzcz0ic3Itb25seSI+U2tpcCBuYXZpZ2F0aW9uPC9hPgoJCQo8ZGl2IGNsYXNzPSJoZWFkZXItd3JhcCI+CgkJCTx1bCBjbGFzcz0ibmF2IG5hdi0tZW1lcmdlbmN5LXdhcm5pbmdzIj4KCQk8bGkgY2xhc3M9Im5hdi1pbWFnZSI+CgkJCQkJCQk8aW1nIHNyYz0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvZmE3LzMzZmE3LzQ4eDQ4L3pueXRHZl8yMHgyMF9iY2UwNzcxYjNlMGM4YmJiLnN2ZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9IiIgYXJpYS1oaWRkZW49InRydWUiPgoJCQkJCTwvbGk+CgkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rICIgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL3Byb21vdGlvbnMvIj48c3BhbiBjbGFzcz0idGV4dC1kYW5nZXIiPkNoZWNrIG91dCBvdXIgY3VycmVudCBwcm9tb3Rpb25zIEhFUkU8L3NwYW4+PC9hPjwvbGk+CgkJCTwvdWw+CgoJCTxoZWFkZXIgY2xhc3M9ImhlYWRlci0tbWFpbiIgaWQ9ImpzLWhlYWRlci0tbWFpbiI+CgkKCQk8YSBocmVmPSIvZW4vIiBjbGFzcz0iaGVhZGVyX19sb2dvIj4KCQkJPGltZyBzcmM9Ii9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2xvZ29fdHJhbnNwYXJlbnQuc3ZnIiBhbHQ9IkRITCIgd2lkdGg9IjE3MyIgaGVpZ2h0PSIyNSI+CgkJPC9hPgoKCQk8YSBjbGFzcz0iaGVhZGVyX19tZW51LXRvZ2dsZSIgaHJlZj0iI2hlYWRlcl9fbWFpbi1tZW51IiBpZD0iaGVhZGVyX19tZW51LXRvZ2dsZSIgdGl0bGU9IlRvZ2dsZSBtZW51IiBhcmlhLWxhYmVsPSJUb2dnbGUgbWVudSIgcm9sZT0iYnV0dG9uIj4KCQkJPHNwYW4gY2xhc3M9Im9wZW5lciI+PHNwYW4gY2xhc3M9ImZhcyBmYS1iYXJzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvc3Bhbj4KCQkJPHNwYW4gY2xhc3M9ImNsb3NlciI+PHNwYW4gY2xhc3M9ImZhcyBmYS10aW1lcyIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L3NwYW4+CgkJPC9hPgoJCQoJCTxkaXYgY2xhc3M9Im5hdnMtLXRvcCI+CgkJCQkJCQoKCQoJPHVsIGNsYXNzPSJuYXYgbmF2LS10b3AiPgoKCQkJCgkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQkJCQkJCTxhIGhyZWY9InRlbDowNzAwMTc3MDAiIGNsYXNzPSJuYXYtbGluayI+PGkgY2xhc3M9ImRobC1pY29uIGRobC1pY29uLWNhbGwgZGhsLWljb24tcmVkIj48L2k+IDxzcGFuIGNsYXNzPSJ0ZXh0LXByaW1hcnkiPjA3MDAxNzcwMDwvc3Bhbj48L2E+CgkJCQkJCTwvbGk+CQoJCQkJCQoJCQkKCQkJCQkJCQkJCQoJCQkJCQkJCQkJCTxsaSBjbGFzcz0ibmF2LWl0ZW0iPgoJCQkJCQkJPGEgaHJlZj0idGVsOiozNDU2IiBjbGFzcz0ibmF2LWxpbmsiPjxpIGNsYXNzPSJkaGwtaWNvbiBkaGwtaWNvbi1jYWxsIGRobC1pY29uLXJlZCI+PC9pPiA8c3BhbiBjbGFzcz0idGV4dC1wcmltYXJ5Ij4qMzQ1Njwvc3Bhbj48L2E+CgkJCQkJCTwvbGk+CQoJCQkJCQoJCQkKCQkJCQkJCQkJCQoJCQkJCQkJCQkJCTxsaSBjbGFzcz0ibmF2LWl0ZW0iPgoJCQkJCQkJPGEgaHJlZj0iL2VuL2ltcG9ydGFudC1pbmZvcm1hdGlvbi8iIGNsYXNzPSJuYXYtbGluayI+SW1wb3J0YW50IGluZm9ybWF0aW9uPC9hPgoJCQkJCQk8L2xpPgkKCQkJCQkKCQkJCgkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQkJCQkJCTxhIGhyZWY9Imh0dHBzOi8vbXlkaGwuZXhwcmVzcy5kaGwvYmcvZW4vdHJhY2tpbmcuaHRtbCMvdHJhY2stYnktbnVtYmVyIiBjbGFzcz0ibmF2LWxpbmsgYmxhbmsiPlRyYWNrIGFuZCB0cmFjZTwvYT4KCQkJCQkJPC9saT4JCgkJCQkJCgkJCQoJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSI+CgkJCQkJCQk8YSBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvZW4vYnVzaW5lc3MtYWNjb3VudC1maWxsaW5nLWZvcm0vIiBjbGFzcz0ibmF2LWxpbmsiPjxpIGNsYXNzPSJkaGwtaWNvbi1yZWQiPjwvaT4gPHNwYW4gY2xhc3M9InRleHQtcHJpbWFyeSI+T3BlbiBhIGJ1c2luZXNzIGFjY291bnQ8L3NwYW4+PC9hPgoJCQkJCQk8L2xpPgkKCQkJCQkKCQkJCgkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQkJCQkJCTxhIGhyZWY9Imh0dHBzOi8vbXlkaGwuZXhwcmVzcy5kaGwvYmcvZW4vaGVscC1hbmQtc3VwcG9ydC5odG1sIy9jb250YWN0X3VzIiBjbGFzcz0ibmF2LWxpbmsgYmxhbmsiPkNvbnRhY3QgdXM8L2E+CgkJCQkJCTwvbGk+CQoJCQkJCQoJCQkKCQkJCQkJCQkJCQoJCQkJCQkJCQkJCTxsaSBjbGFzcz0ibmF2LWl0ZW0iPgoJCQkJCQkJPGEgaHJlZj0iaHR0cHM6Ly9zaGlwbm93LmRobC5jb20vYmcvZW4vIiBjbGFzcz0ibmF2LWxpbmsgYmxhbmsiPjxpIGNsYXNzPSJkaGwtaWNvbi1yZWQiPjwvaT4gPHNwYW4gY2xhc3M9InRleHQtcHJpbWFyeSI+U2hpcE5vdzwvc3Bhbj48L2E+CgkJCQkJCTwvbGk+CQoJCQkJCQoJCQkKCTwvdWw+CgoJCQk8dWwgY2xhc3M9Im5hdiBuYXYtLXNlYXJjaCI+CiAgPGxpIGNsYXNzPSJuYXYtaXRlbSBkcm9wZG93biI+CiAgICA8YSBjbGFzcz0ibmF2LWxpbmsgZHJvcGRvd24tdG9nZ2xlIiAgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiBocmVmPSIjIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5TZWFyY2ggPHNwYW4gY2xhc3M9ImZhcyBmYS1tYWduaWZ5aW5nLWdsYXNzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYT4KICAgIDxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgZHJvcGRvd24tbWVudS1yaWdodCI+CiAgICAgIDxmb3JtIGFjdGlvbj0iL2VuL3NlYXJjaGVzLyIgbWV0aG9kPSJnZXQiPgogICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4KICAgICAgICAgIDxpbnB1dCB0eXBlPSJzZWFyY2giIG5hbWU9InEiIGFyaWEtbGFiZWw9IlNlYXJjaCIgY2xhc3M9ImZvcm0tY29udHJvbCIgdmFsdWU9IiI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cC1hcHBlbmQiPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSI+U2VhcmNoIDxzcGFuIGNsYXNzPSJmYXMgZmEtbWFnbmlmeWluZy1nbGFzcyIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2J1dHRvbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Zvcm0+CiAgICA8L2Rpdj4KICA8L2xpPgo8L3VsPgoKCQkJCQkJCjx1bCBjbGFzcz0ibmF2IG5hdi0tbGFuZ3VhZ2VzIj4KPCEtLQo8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCTxhIGhyZWY9IiIgY2xhc3M9Im5hdi1saW5rIGFjdGl2ZSI+CgkJCQlFbmdsaXNoCgk8L2E+CjwvbGk+Ci0tPgoJCTxsaSBjbGFzcz0ibmF2LWl0ZW0iPgoJCTxhIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9iZy91c2xvdnlqYS16YS10cmFuc3BvcnR5cmFuZS9vcGFrb3ZrYS8iIGNsYXNzPSJuYXYtbGluayIgaHJlZmxhbmc9ImJnLWJnIj4KCQkJCQkJ0JHRitC70LPQsNGA0YHQutC4CgkJPC9hPgoJPC9saT4KCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQk8YSBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvZW4vc2hpcHBpbmctYWR2aWNlL3BhY2thZ2luZy8iIGNsYXNzPSJuYXYtbGluayIgaHJlZmxhbmc9ImVuLWJnIj4KCQkJCQkJRW5nbGlzaAoJCTwvYT4KCTwvbGk+CgkJPC91bD4KCgoJCTwvZGl2PgoJCQkJCgoJCgk8dWwgY2xhc3M9Im5hdiIgaWQ9ImhlYWRlcl9fbWFpbi1tZW51Ij4KCgkJCQoJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSI+CgkJCQkJCQk8YSBocmVmPSIvZW4vIiBjbGFzcz0ibmF2LWxpbmsiPjxpIGNsYXNzPSJmYXMgZmEtaG9tZSI+PC9pPjxzcGFuIGNsYXNzPSJzci1vbmx5Ij5Ib21lPC9zcGFuPjwvYT4KCQkJCQkJPC9saT4JCgkJCQkJCgkJCQoJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJIAkJCQkJCQkJCQkJCQkJCQkJCQoJCQkJCQkJCQkJCTxsaSBjbGFzcz0ibmF2LWl0ZW0gZHJvcGRvd24iPgoJCQkJCQkJCTxhIGhyZWY9Ii9lbi8iIGNsYXNzPSJuYXYtbGluayBkcm9wZG93bi10b2dnbGUiICBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIHJvbGU9ImJ1dHRvbiIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPlNlbmQgc2hpcG1lbnQ8L2E+CgkJCQkJCQkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSAiPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuLyNwcmljZSIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkNoZWNrIHByaWNlPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuLyNsb2NhdG9yIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+RmluZCBsb2NhdGlvbjwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi8jaW5zdHJ1Y3Rpb25zX2V4cHJlc3NfZWFzeSIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkhvdyB0byBzZW5kIGF0IGEgREhMIFNlcnZpY2VQb2ludDwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi8jaW5zdHJ1Y3Rpb25zX2V4cHJlc3Nfd29ybGR3aWRlXzIiIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5Ib3cgdG8gc2VuZCBvbmxpbmU8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vI2luc3RydWN0aW9uc19waG9uZSIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkhvdyB0byBzZW5kIHdpdGggYSBESEwgY291cmllcjwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi8jaW5zdHJ1Y3Rpb25zX2ltcG9ydCIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkhvdyB0byBvcmdhbml6ZSBpbXBvcnQ8L2E+CgkJCQkJCQkJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCTwvbGk+CgkJCQkJCgkJCQoJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSBkcm9wZG93biI+CgkJCQkJCQkJPGEgaHJlZj0iL2VuL3ByaXZhdGUtY2xpZW50cy8iIGNsYXNzPSJuYXYtbGluayBkcm9wZG93bi10b2dnbGUiICBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIHJvbGU9ImJ1dHRvbiIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPlByaXZhdGUgY2xpZW50czwvYT4KCQkJCQkJCQk8ZGl2IGNsYXNzPSJkcm9wZG93bi1tZW51ICI+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vcHJpdmF0ZS1jbGllbnRzL2xveWFsdHktcHJvZ3JhbS8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5ESEwgTG95YWx0eSBjYXJkPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3ByaXZhdGUtY2xpZW50cy9kaGwtZG9tZXN0aWMtZWFzeS8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5ESEwgRG9tZXN0aWMgRWFzeTwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9wcml2YXRlLWNsaWVudHMvZGhsLWV4cHJlc3MtZWFzeS8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5ESEwgRXhwcmVzcyBFYXN5PC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3ByaXZhdGUtY2xpZW50cy9kaGwtZWNvbm9teS1lYXN5LyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkRITCBFY29ub215IEVhc3k8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vcHJpdmF0ZS1jbGllbnRzL3JlY2VpdmVyLXBhaWQtc2VydmljZS8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5SZWNlaXZlciBQYWlkPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3ByaXZhdGUtY2xpZW50cy9kaGwtdW5pdmVyc2l0eS1leHByZXNzLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkRITCBVbml2ZXJzaXR5IEV4cHJlc3M8L2E+CgkJCQkJCQkJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCTwvbGk+CgkJCQkJCgkJCQoJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSBkcm9wZG93biI+CgkJCQkJCQkJPGEgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL2J1c2luZXNzLWN1c3RvbWVycy8iIGNsYXNzPSJuYXYtbGluayBkcm9wZG93bi10b2dnbGUiICBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIHJvbGU9ImJ1dHRvbiIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPkJ1c2luZXNzIGN1c3RvbWVyczwvYT4KCQkJCQkJCQk8ZGl2IGNsYXNzPSJkcm9wZG93bi1tZW51ICI+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vYnVzaW5lc3MtY3VzdG9tZXJzL2dvZ3JlZW4vIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+R29HcmVlbiBQbHVzPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL2J1c2luZXNzLWN1c3RvbWVycy9keW5hbWljcy1kaXNjb3VudC8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5EeW5hbWljcyBEaXNjb3VudDwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9idXNpbmVzcy1jdXN0b21lcnMvb3RoZXItc2VydmljZXMvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+REhMIFNwZWNpYWwgU2VydmljZXM8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vYnVzaW5lc3MtY3VzdG9tZXJzL2RobC1lY29ub215LXNlbGVjdC8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5ESEwgRWNvbm9teSBTZWxlY3Q8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSJodHRwczovL2V4cHJlc3MtcmVzb3VyY2UuZGhsLmNvbS9FYmF5LUNQYVNTLUJ1bGdhcmlhLUVORy5odG1sIiBjbGFzcz0iZHJvcGRvd24taXRlbSBibGFuayI+U2VsbGluZyBvbiBlQmF5PzwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9idXNpbmVzcy1jdXN0b21lcnMvYmctZS1jb21tZXJjZS1pemxlei1uYS1tZXpkeW5hcm9kbnlqYS1wYXphci8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5Hcm93dGggU3RyYXRlZ2llczogSGVyb2VzIG9mIFNtYWxsIEJ1c2luZXNzZXM8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vYnVzaW5lc3MtY3VzdG9tZXJzL2IyYy1lLWNvbW1lcmNlLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkIyQyBNYXN0ZXIgWW91ciBTdWNjZXNzPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL2J1c2luZXNzLWN1c3RvbWVycy9iMmIvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+QjJCINCaZXkgdHJlbmRzPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL2J1c2luZXNzLWN1c3RvbWVycy9kaXNjb3Zlci8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5EaXNjb3ZlciBESEw8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vYnVzaW5lc3MtY3VzdG9tZXJzL3NtYXJ0LWl0LWludGVncmF0aW9uLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPlNtYXJ0IElUIEludGVncmF0aW9uPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL2J1c2luZXNzLWN1c3RvbWVycy90b2dldGhlci10b3dhcmRzLWludGVybmF0aW9uYWwtc3VjY2Vzcy8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5Ub2dldGhlciB0b3dhcmRzIGludGVybmF0aW9uYWwgc3VjY2VzczwvYT4KCQkJCQkJCQkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9saT4KCQkJCQkKCQkJCgkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQkJCQkJCTxhIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9lbi9wcm9tb3Rpb25zLyIgY2xhc3M9Im5hdi1saW5rIj5Qcm9tb3Rpb25zPC9hPgoJCQkJCQk8L2xpPgkKCQkJCQkKCQkJCgkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIGRyb3Bkb3duIj4KCQkJCQkJCQk8YSBocmVmPSIvZW4vc2hpcHBpbmctYWR2aWNlLyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgIGRhdGEtdG9nZ2xlPSJkcm9wZG93biIgcm9sZT0iYnV0dG9uIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+U2hpcHBpbmcgQWR2aWNlPC9hPgoJCQkJCQkJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgIj4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9zaGlwcGluZy1hZHZpY2Uvd2hhdC1jYW5ub3QtYmUtc2VudC8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5XaGF0IGNhbm5vdCBiZSBzZW50PC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3NoaXBwaW5nLWFkdmljZS9wYWNrYWdpbmcvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+UGFja2FnaW5nPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3NoaXBwaW5nLWFkdmljZS9jdXN0b21zLWNsZWFyYW5jZS8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5DdXN0b21zIENsZWFyYW5jZTwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9zaGlwcGluZy1hZHZpY2Uvb24tZGVtYW5kLWRlbGl2ZXJ5LyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPk9uIERlbWFuZCBEZWxpdmVyeTwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9zaGlwcGluZy1hZHZpY2Uvc21hcnQtcmV0dXJuLW9wdGlvbnMvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+U21hcnQgcmV0dXJuIG9wdGlvbnM8L2E+CgkJCQkJCQkJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCTwvbGk+CgkJCQkJCgkJCQoJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSBkcm9wZG93biI+CgkJCQkJCQkJPGEgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL3RvcC1kZXN0aW5hdGlvbnMtMi8iIGNsYXNzPSJuYXYtbGluayBkcm9wZG93bi10b2dnbGUiICBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIHJvbGU9ImJ1dHRvbiIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPlRvcCBkZXN0aW5hdGlvbnM8L2E+CgkJCQkJCQkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSAiPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3RvcC1kZXN0aW5hdGlvbnMtMi9kZWxpdmVyeS10by1ncmVhdC1icml0YWluLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPlBhY2thZ2Ugb3IgcGFyY2VsIHRvIHRoZSBVSzwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi90b3AtZGVzdGluYXRpb25zLTIvZGVsaXZlcmllcy10by1nZXJtYW55LyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPlBhY2thZ2Ugb3IgcGFyY2VsIHRvIEdlcm1hbnk8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vdG9wLWRlc3RpbmF0aW9ucy0yL2RlbGl2ZXJpZXMtdG8tdXNhLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPlBhY2thZ2Ugb3IgcGFyY2VsIHRvIHRoZSBVU0E8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vdG9wLWRlc3RpbmF0aW9ucy0yL2RlbGl2ZXJpZXMtdG8tc3BhaW4vIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+UGFyY2VsIG9yIHBhY2thZ2UgdG8gU3BhaW48L2E+CgkJCQkJCQkJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCTwvbGk+CgkJCQkJCgkJCQoJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSBkcm9wZG93biI+CgkJCQkJCQkJPGEgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL25hc3lqYXQtZWt5cC8iIGNsYXNzPSJuYXYtbGluayBkcm9wZG93bi10b2dnbGUiICBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIHJvbGU9ImJ1dHRvbiIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPkFib3V0IHVzPC9hPgoJCQkJCQkJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgIj4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9vdXItdGVhbS9kaWdpdGFsLWNvbWljLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkRITCBFeHByZXNzIENvbWljPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL291ci10ZWFtL2NhcmVlcnMvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+Q2FyZWVyczwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9vdXItdGVhbS9vdXItdGVhbS8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5PdXIgdGVhbTwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9vdXItdGVhbS9uZXdzLTIvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+TmV3czwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9vdXItdGVhbS9vdXItaGlzdG9yeS1pbi1idWxnYXJpYS8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5ESEwgRXhwcmVzcyBpbiBCdWxnYXJpYTwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9vdXItdGVhbS9iZWNhbWUtYS1kaGwtcGFydG5lci8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5CZWPQvm1lIGEgREhMIFBBUlRORVI8L2E+CgkJCQkJCQkJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCTwvbGk+CgkJCQkJCgkJCQoJPC91bD4KCgkJCQkKCTwvaGVhZGVyPgoJCgk8ZGl2IGNsYXNzPSJuYXYtLW1vYmlsZSI+CgkJCQkKCgkKCTx1bCBjbGFzcz0ibmF2IG5hdi0tdG9wIj4KCgkJCQoJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSI+CgkJCQkJCQk8YSBocmVmPSJ0ZWw6MDcwMDE3NzAwIiBjbGFzcz0ibmF2LWxpbmsiPjxpIGNsYXNzPSJkaGwtaWNvbiBkaGwtaWNvbi1jYWxsIGRobC1pY29uLXJlZCI+PC9pPiA8c3BhbiBjbGFzcz0idGV4dC1wcmltYXJ5Ij4wNzAwMTc3MDA8L3NwYW4+PC9hPgoJCQkJCQk8L2xpPgkKCQkJCQkKCQkJCgkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQkJCQkJCTxhIGhyZWY9InRlbDoqMzQ1NiIgY2xhc3M9Im5hdi1saW5rIj48aSBjbGFzcz0iZGhsLWljb24gZGhsLWljb24tY2FsbCBkaGwtaWNvbi1yZWQiPjwvaT4gPHNwYW4gY2xhc3M9InRleHQtcHJpbWFyeSI+KjM0NTY8L3NwYW4+PC9hPgoJCQkJCQk8L2xpPgkKCQkJCQkKCQkJCgkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQkJCQkJCTxhIGhyZWY9Ii9lbi9pbXBvcnRhbnQtaW5mb3JtYXRpb24vIiBjbGFzcz0ibmF2LWxpbmsiPkltcG9ydGFudCBpbmZvcm1hdGlvbjwvYT4KCQkJCQkJPC9saT4JCgkJCQkJCgkJCQoJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSI+CgkJCQkJCQk8YSBocmVmPSJodHRwczovL215ZGhsLmV4cHJlc3MuZGhsL2JnL2VuL3RyYWNraW5nLmh0bWwjL3RyYWNrLWJ5LW51bWJlciIgY2xhc3M9Im5hdi1saW5rIGJsYW5rIj5UcmFjayBhbmQgdHJhY2U8L2E+CgkJCQkJCTwvbGk+CQoJCQkJCQoJCQkKCQkJCQkJCQkJCQoJCQkJCQkJCQkJCTxsaSBjbGFzcz0ibmF2LWl0ZW0iPgoJCQkJCQkJPGEgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL2J1c2luZXNzLWFjY291bnQtZmlsbGluZy1mb3JtLyIgY2xhc3M9Im5hdi1saW5rIj48aSBjbGFzcz0iZGhsLWljb24tcmVkIj48L2k+IDxzcGFuIGNsYXNzPSJ0ZXh0LXByaW1hcnkiPk9wZW4gYSBidXNpbmVzcyBhY2NvdW50PC9zcGFuPjwvYT4KCQkJCQkJPC9saT4JCgkJCQkJCgkJCQoJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSI+CgkJCQkJCQk8YSBocmVmPSJodHRwczovL215ZGhsLmV4cHJlc3MuZGhsL2JnL2VuL2hlbHAtYW5kLXN1cHBvcnQuaHRtbCMvY29udGFjdF91cyIgY2xhc3M9Im5hdi1saW5rIGJsYW5rIj5Db250YWN0IHVzPC9hPgoJCQkJCQk8L2xpPgkKCQkJCQkKCQkJCgkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQkJCQkJCTxhIGhyZWY9Imh0dHBzOi8vc2hpcG5vdy5kaGwuY29tL2JnL2VuLyIgY2xhc3M9Im5hdi1saW5rIGJsYW5rIj48aSBjbGFzcz0iZGhsLWljb24tcmVkIj48L2k+IDxzcGFuIGNsYXNzPSJ0ZXh0LXByaW1hcnkiPlNoaXBOb3c8L3NwYW4+PC9hPgoJCQkJCQk8L2xpPgkKCQkJCQkKCQkJCgk8L3VsPgoKCQkJCTxhIGhyZWY9IiMiIGNsYXNzPSJuYXYtLW1vYmlsZV9fY2xvc2UganMtLWNsb3NlLW1vYmlsZS1uYXYiIHRpdGxlPSJDbG9zZSBtZW51IiBhcmlhLWxhYmVsPSJDbG9zZSBtZW51IiByb2xlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJmYXMgZmEtdGltZXMiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9hPgoJCQo8dWwgY2xhc3M9Im5hdiBuYXYtLWxhbmd1YWdlcyI+CjwhLS0KPGxpIGNsYXNzPSJuYXYtaXRlbSI+Cgk8YSBocmVmPSIiIGNsYXNzPSJuYXYtbGluayBhY3RpdmUiPgoJCQkJRW5nbGlzaAoJPC9hPgo8L2xpPgotLT4KCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQk8YSBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvYmcvdXNsb3Z5amEtemEtdHJhbnNwb3J0eXJhbmUvb3Bha292a2EvIiBjbGFzcz0ibmF2LWxpbmsiIGhyZWZsYW5nPSJiZy1iZyI+CgkJCQkJCdCR0YrQu9Cz0LDRgNGB0LrQuAoJCTwvYT4KCTwvbGk+CgkJPGxpIGNsYXNzPSJuYXYtaXRlbSI+CgkJPGEgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL3NoaXBwaW5nLWFkdmljZS9wYWNrYWdpbmcvIiBjbGFzcz0ibmF2LWxpbmsiIGhyZWZsYW5nPSJlbi1iZyI+CgkJCQkJCUVuZ2xpc2gKCQk8L2E+Cgk8L2xpPgoJCTwvdWw+CgoKCQkJCQoKCQoJPHVsIGNsYXNzPSJuYXYiPgoKCQkJCgkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIj4KCQkJCQkJCTxhIGhyZWY9Ii9lbi8iIGNsYXNzPSJuYXYtbGluayI+PGkgY2xhc3M9ImZhcyBmYS1ob21lIj48L2k+PHNwYW4gY2xhc3M9InNyLW9ubHkiPkhvbWU8L3NwYW4+PC9hPgoJCQkJCQk8L2xpPgkKCQkJCQkKCQkJCgkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgCQkJCQkJCQkJCQkJCQkJCQkJCgkJCQkJCQkJCQkJPGxpIGNsYXNzPSJuYXYtaXRlbSBkcm9wZG93biI+CgkJCQkJCQkJPGEgaHJlZj0iL2VuLyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgIGRhdGEtdG9nZ2xlPSJkcm9wZG93biIgcm9sZT0iYnV0dG9uIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+U2VuZCBzaGlwbWVudDwvYT4KCQkJCQkJCQk8ZGl2IGNsYXNzPSJkcm9wZG93bi1tZW51ICI+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vI3ByaWNlIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+Q2hlY2sgcHJpY2U8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vI2xvY2F0b3IiIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5GaW5kIGxvY2F0aW9uPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuLyNpbnN0cnVjdGlvbnNfZXhwcmVzc19lYXN5IiBjbGFzcz0iZHJvcGRvd24taXRlbSI+SG93IHRvIHNlbmQgYXQgYSBESEwgU2VydmljZVBvaW50PC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuLyNpbnN0cnVjdGlvbnNfZXhwcmVzc193b3JsZHdpZGVfMiIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkhvdyB0byBzZW5kIG9ubGluZTwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi8jaW5zdHJ1Y3Rpb25zX3Bob25lIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+SG93IHRvIHNlbmQgd2l0aCBhIERITCBjb3VyaWVyPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuLyNpbnN0cnVjdGlvbnNfaW1wb3J0IiBjbGFzcz0iZHJvcGRvd24taXRlbSI+SG93IHRvIG9yZ2FuaXplIGltcG9ydDwvYT4KCQkJCQkJCQkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9saT4KCQkJCQkKCQkJCgkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIGRyb3Bkb3duIj4KCQkJCQkJCQk8YSBocmVmPSIvZW4vcHJpdmF0ZS1jbGllbnRzLyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgIGRhdGEtdG9nZ2xlPSJkcm9wZG93biIgcm9sZT0iYnV0dG9uIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+UHJpdmF0ZSBjbGllbnRzPC9hPgoJCQkJCQkJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgIj4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9wcml2YXRlLWNsaWVudHMvbG95YWx0eS1wcm9ncmFtLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkRITCBMb3lhbHR5IGNhcmQ8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vcHJpdmF0ZS1jbGllbnRzL2RobC1kb21lc3RpYy1lYXN5LyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkRITCBEb21lc3RpYyBFYXN5PC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3ByaXZhdGUtY2xpZW50cy9kaGwtZXhwcmVzcy1lYXN5LyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkRITCBFeHByZXNzIEVhc3k8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vcHJpdmF0ZS1jbGllbnRzL2RobC1lY29ub215LWVhc3kvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+REhMIEVjb25vbXkgRWFzeTwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9wcml2YXRlLWNsaWVudHMvcmVjZWl2ZXItcGFpZC1zZXJ2aWNlLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPlJlY2VpdmVyIFBhaWQ8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vcHJpdmF0ZS1jbGllbnRzL2RobC11bml2ZXJzaXR5LWV4cHJlc3MvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+REhMIFVuaXZlcnNpdHkgRXhwcmVzczwvYT4KCQkJCQkJCQkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9saT4KCQkJCQkKCQkJCgkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIGRyb3Bkb3duIj4KCQkJCQkJCQk8YSBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvZW4vYnVzaW5lc3MtY3VzdG9tZXJzLyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgIGRhdGEtdG9nZ2xlPSJkcm9wZG93biIgcm9sZT0iYnV0dG9uIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+QnVzaW5lc3MgY3VzdG9tZXJzPC9hPgoJCQkJCQkJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgIj4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9idXNpbmVzcy1jdXN0b21lcnMvZ29ncmVlbi8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5Hb0dyZWVuIFBsdXM8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vYnVzaW5lc3MtY3VzdG9tZXJzL2R5bmFtaWNzLWRpc2NvdW50LyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkR5bmFtaWNzIERpc2NvdW50PC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL2J1c2luZXNzLWN1c3RvbWVycy9vdGhlci1zZXJ2aWNlcy8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5ESEwgU3BlY2lhbCBTZXJ2aWNlczwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9idXNpbmVzcy1jdXN0b21lcnMvZGhsLWVjb25vbXktc2VsZWN0LyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkRITCBFY29ub215IFNlbGVjdDwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Imh0dHBzOi8vZXhwcmVzcy1yZXNvdXJjZS5kaGwuY29tL0ViYXktQ1BhU1MtQnVsZ2FyaWEtRU5HLmh0bWwiIGNsYXNzPSJkcm9wZG93bi1pdGVtIGJsYW5rIj5TZWxsaW5nIG9uIGVCYXk/PC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL2J1c2luZXNzLWN1c3RvbWVycy9iZy1lLWNvbW1lcmNlLWl6bGV6LW5hLW1lemR5bmFyb2RueWphLXBhemFyLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkdyb3d0aCBTdHJhdGVnaWVzOiBIZXJvZXMgb2YgU21hbGwgQnVzaW5lc3NlczwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9idXNpbmVzcy1jdXN0b21lcnMvYjJjLWUtY29tbWVyY2UvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+QjJDIE1hc3RlciBZb3VyIFN1Y2Nlc3M8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vYnVzaW5lc3MtY3VzdG9tZXJzL2IyYi8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5CMkIg0JpleSB0cmVuZHM8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vYnVzaW5lc3MtY3VzdG9tZXJzL2Rpc2NvdmVyLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkRpc2NvdmVyIERITDwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi9idXNpbmVzcy1jdXN0b21lcnMvc21hcnQtaXQtaW50ZWdyYXRpb24vIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+U21hcnQgSVQgSW50ZWdyYXRpb248L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vYnVzaW5lc3MtY3VzdG9tZXJzL3RvZ2V0aGVyLXRvd2FyZHMtaW50ZXJuYXRpb25hbC1zdWNjZXNzLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPlRvZ2V0aGVyIHRvd2FyZHMgaW50ZXJuYXRpb25hbCBzdWNjZXNzPC9hPgoJCQkJCQkJCQkJCQkJCQkJCTwvZGl2PgoJCQkJCQk8L2xpPgoJCQkJCQoJCQkKCQkJCQkJCQkJCQkJCQkJCQoJCQkJCQkJCQkJCQkJCQkJCQoJCQkJCQkJCQkJCTxsaSBjbGFzcz0ibmF2LWl0ZW0iPgoJCQkJCQkJPGEgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2VuL3Byb21vdGlvbnMvIiBjbGFzcz0ibmF2LWxpbmsiPlByb21vdGlvbnM8L2E+CgkJCQkJCTwvbGk+CQoJCQkJCQoJCQkKCQkJCQkJCQkJCQkJCQkJCQoJCQkJCQkJCQkJCQkJCQkJCQoJCQkJCQkJCQkJCTxsaSBjbGFzcz0ibmF2LWl0ZW0gZHJvcGRvd24iPgoJCQkJCQkJCTxhIGhyZWY9Ii9lbi9zaGlwcGluZy1hZHZpY2UvIiBjbGFzcz0ibmF2LWxpbmsgZHJvcGRvd24tdG9nZ2xlIiAgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5TaGlwcGluZyBBZHZpY2U8L2E+CgkJCQkJCQkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSAiPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3NoaXBwaW5nLWFkdmljZS93aGF0LWNhbm5vdC1iZS1zZW50LyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPldoYXQgY2Fubm90IGJlIHNlbnQ8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vc2hpcHBpbmctYWR2aWNlL3BhY2thZ2luZy8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5QYWNrYWdpbmc8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vc2hpcHBpbmctYWR2aWNlL2N1c3RvbXMtY2xlYXJhbmNlLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkN1c3RvbXMgQ2xlYXJhbmNlPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3NoaXBwaW5nLWFkdmljZS9vbi1kZW1hbmQtZGVsaXZlcnkvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+T24gRGVtYW5kIERlbGl2ZXJ5PC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3NoaXBwaW5nLWFkdmljZS9zbWFydC1yZXR1cm4tb3B0aW9ucy8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5TbWFydCByZXR1cm4gb3B0aW9uczwvYT4KCQkJCQkJCQkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9saT4KCQkJCQkKCQkJCgkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIGRyb3Bkb3duIj4KCQkJCQkJCQk8YSBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvZW4vdG9wLWRlc3RpbmF0aW9ucy0yLyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgIGRhdGEtdG9nZ2xlPSJkcm9wZG93biIgcm9sZT0iYnV0dG9uIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+VG9wIGRlc3RpbmF0aW9uczwvYT4KCQkJCQkJCQk8ZGl2IGNsYXNzPSJkcm9wZG93bi1tZW51ICI+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vdG9wLWRlc3RpbmF0aW9ucy0yL2RlbGl2ZXJ5LXRvLWdyZWF0LWJyaXRhaW4vIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+UGFja2FnZSBvciBwYXJjZWwgdG8gdGhlIFVLPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL3RvcC1kZXN0aW5hdGlvbnMtMi9kZWxpdmVyaWVzLXRvLWdlcm1hbnkvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+UGFja2FnZSBvciBwYXJjZWwgdG8gR2VybWFueTwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi90b3AtZGVzdGluYXRpb25zLTIvZGVsaXZlcmllcy10by11c2EvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+UGFja2FnZSBvciBwYXJjZWwgdG8gdGhlIFVTQTwvYT4KCQkJCQkJCQkJCQkJCQkJCQkJCTxhIGhyZWY9Ii9lbi90b3AtZGVzdGluYXRpb25zLTIvZGVsaXZlcmllcy10by1zcGFpbi8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5QYXJjZWwgb3IgcGFja2FnZSB0byBTcGFpbjwvYT4KCQkJCQkJCQkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9saT4KCQkJCQkKCQkJCgkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQkJCQkJCQkKCQkJCQkJCQkJCQk8bGkgY2xhc3M9Im5hdi1pdGVtIGRyb3Bkb3duIj4KCQkJCQkJCQk8YSBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvZW4vbmFzeWphdC1la3lwLyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgIGRhdGEtdG9nZ2xlPSJkcm9wZG93biIgcm9sZT0iYnV0dG9uIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+QWJvdXQgdXM8L2E+CgkJCQkJCQkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSAiPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL291ci10ZWFtL2RpZ2l0YWwtY29taWMvIiBjbGFzcz0iZHJvcGRvd24taXRlbSI+REhMIEV4cHJlc3MgQ29taWM8L2E+CgkJCQkJCQkJCQkJCQkJCQkJCQk8YSBocmVmPSIvZW4vb3VyLXRlYW0vY2FyZWVycy8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5DYXJlZXJzPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL291ci10ZWFtL291ci10ZWFtLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPk91ciB0ZWFtPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL291ci10ZWFtL25ld3MtMi8iIGNsYXNzPSJkcm9wZG93bi1pdGVtIj5OZXdzPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL291ci10ZWFtL291ci1oaXN0b3J5LWluLWJ1bGdhcmlhLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkRITCBFeHByZXNzIGluIEJ1bGdhcmlhPC9hPgoJCQkJCQkJCQkJCQkJCQkJCQkJPGEgaHJlZj0iL2VuL291ci10ZWFtL2JlY2FtZS1hLWRobC1wYXJ0bmVyLyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iPkJlY9C+bWUgYSBESEwgUEFSVE5FUjwvYT4KCQkJCQkJCQkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9saT4KCQkJCQkKCQkJCgk8L3VsPgoKCQk8dWwgY2xhc3M9Im5hdiBuYXYtLXNlYXJjaCI+CiAgPGxpIGNsYXNzPSJuYXYtaXRlbSBkcm9wZG93biI+CiAgICA8YSBjbGFzcz0ibmF2LWxpbmsgZHJvcGRvd24tdG9nZ2xlIiAgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiBocmVmPSIjIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5TZWFyY2ggPHNwYW4gY2xhc3M9ImZhcyBmYS1tYWduaWZ5aW5nLWdsYXNzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYT4KICAgIDxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgZHJvcGRvd24tbWVudS1yaWdodCI+CiAgICAgIDxmb3JtIGFjdGlvbj0iL2VuL3NlYXJjaGVzLyIgbWV0aG9kPSJnZXQiPgogICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4KICAgICAgICAgIDxpbnB1dCB0eXBlPSJzZWFyY2giIG5hbWU9InEiIGFyaWEtbGFiZWw9IlNlYXJjaCIgY2xhc3M9ImZvcm0tY29udHJvbCIgdmFsdWU9IiI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cC1hcHBlbmQiPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSI+U2VhcmNoIDxzcGFuIGNsYXNzPSJmYXMgZmEtbWFnbmlmeWluZy1nbGFzcyIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2J1dHRvbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Zvcm0+CiAgICA8L2Rpdj4KICA8L2xpPgo8L3VsPgoKCQkJPC9kaXY+CgkKPC9kaXY+CgoJCTxkaXYgY2xhc3M9ImJvZHkgZ3JpZC1sYXlvdXQiIGlkPSJtYWluX2NvbnRlbnQiPgoJCQkKCQkJIAkJCQkJCQkKCQkJCgkJCQoKCjxhcnRpY2xlIGNsYXNzPSJncmlkLWxheW91dCI+CgkJCTxoZWFkZXIgY2xhc3M9ImNvbnRlbnQtaGVhZGVyICI+CgkJPGRpdiBjbGFzcz0iY29udGVudC1oZWFkZXJfX3RleHQiPgoJCQkJPGgxIGNsYXNzPSJoMSI+UGFja2FnaW5nPC9oMT4KCQkJCQkJPGRpdiBjbGFzcz0ibGVhZCI+CgkJCTxwPkF0IERITCBTRVJWSUNFUE9JTlRTIGFuZCBwYXJ0bmVyIG9mZmljZXMgeW91IHdpbGwgcmVjZWl2ZSB0aGUgZm9sbG93aW5nIHBhY2thZ2luZyBmcmVlIG9mIGNoYXJnZTo8L3A+CgkJPC9kaXY+CgkJCQkJPC9kaXY+CjwvaGVhZGVyPgoKCQkKCQkKCQkKCTxzZWN0aW9uIGNsYXNzPSJwYWdlLWJvZHkiPgoJCTxoMj5TbWFsbCBwYWNrYWdpbmc8L2gyPgoKPGRpdiBjbGFzcz0iY2FyZC1kZWNrIGNhcmQtZGVjay0tNSI+CgoKPGRpdiBjbGFzcz0iaW9iamVjdCBpb2JqZWN0LS1waWN0dXJlIGlvYmplY3QtLXBpY3R1cmUtY2FyZCBjYXJkIj4KCTxmaWd1cmUgY2xhc3M9IiI+CgkJPGEgY2xhc3M9ImlvYmplY3QtLXBpY3R1cmVfX2xpbmsgaW1hZ2Utd3JhcCIgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhkLzM0MDhkLzEyNzZ4MTE4OS91cEtsQVJfMTI3NngxMTg4XzYwZjU5NjQ0MWI3ZDBkNjcucG5nIiB0aXRsZT0iRW52ZWxvcGUgLSBFbmxhcmdlIGltYWdlIiBkYXRhLXBzd3Atd2lkdGg9IjEyNzYiIGRhdGEtcHN3cC1oZWlnaHQ9IjExODgiPgkJCTxwaWN0dXJlPgoJCQkJPHNvdXJjZSBzcmNzZXQ9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZC8zNDA4ZC8xMjc2eDExODkvdXBLbEFSXzYwMHg1NTlfN2I2ZWYxNTViNjVkZGRlNi53ZWJwIDYwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZC8zNDA4ZC8xMjc2eDExODkvdXBLbEFSXzgwMHg3NDVfNTA0NzEyY2I1OGI5Nzg3MC53ZWJwIDgwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZC8zNDA4ZC8xMjc2eDExODkvdXBLbEFSXzEyNzZ4MTE4OF82MGY1OTY0NDFiN2QwZDY3LndlYnAgMTUwMHciIHNpemVzPSIobWF4LXdpZHRoOjE0MDBweCkgMTAwdncsIDE0MDBweCIgdHlwZT0iaW1hZ2Uvd2VicCI+CgkJCQk8c291cmNlIHNyY3NldD0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhkLzM0MDhkLzEyNzZ4MTE4OS91cEtsQVJfNjAweDU1OV83YjZlZjE1NWI2NWRkZGU2LnBuZyA2MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGQvMzQwOGQvMTI3NngxMTg5L3VwS2xBUl84MDB4NzQ1XzUwNDcxMmNiNThiOTc4NzAucG5nIDgwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZC8zNDA4ZC8xMjc2eDExODkvdXBLbEFSXzEyNzZ4MTE4OF82MGY1OTY0NDFiN2QwZDY3LnBuZyAxNTAwdyIgc2l6ZXM9IihtYXgtd2lkdGg6MTQwMHB4KSAxMDB2dywgMTQwMHB4Ij4KCQkJCTxpbWcgY2xhc3M9ImlvYmplY3QtLXBpY3R1cmVfX2ltZyBpbWctZmx1aWQgY2FyZC1pbWctdG9wIiBzcmM9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZC8zNDA4ZC8xMjc2eDExODkvdXBLbEFSXzEyNzZ4MTE4OF82MGY1OTY0NDFiN2QwZDY3LnBuZyIgd2lkdGg9IjEyNzYiIGhlaWdodD0iMTE4OCIgYWx0PSJFbnZlbG9wZSIgCglzcmNzZXQ9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZC8zNDA4ZC8xMjc2eDExODkvdXBLbEFSXzYwMHg1NTlfN2I2ZWYxNTViNjVkZGRlNi5wbmcgNjAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhkLzM0MDhkLzEyNzZ4MTE4OS91cEtsQVJfODAweDc0NV81MDQ3MTJjYjU4Yjk3ODcwLnBuZyA4MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGQvMzQwOGQvMTI3NngxMTg5L3VwS2xBUl8xMjc2eDExODhfNjBmNTk2NDQxYjdkMGQ2Ny5wbmcgMTUwMHciIAoJc2l6ZXM9IihtYXgtd2lkdGg6MTQwMHB4KSAxMDB2dywgMTQwMHB4Ij4KCQkJPC9waWN0dXJlPgoJCTwvYT4JCQkJPGZpZ2NhcHRpb24gY2xhc3M9ImNhcmQtYm9keSBpb2JqZWN0X19jYXB0aW9uIj4KCQkJCQkJPGRpdiBjbGFzcz0iaW9iamVjdF9fdGl0bGUgY2FyZC10aXRsZSI+PGEgY2xhc3M9ImlvYmplY3QtLXBpY3R1cmVfX2xpbmsganNfcGljdHVyZV90cmlnZ2VyIiBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGQvMzQwOGQvMTI3NngxMTg5L3VwS2xBUl8xMjc2eDExODhfNjBmNTk2NDQxYjdkMGQ2Ny5wbmciIHRpdGxlPSJFbnZlbG9wZSAtIEVubGFyZ2UgaW1hZ2UiPjxzcGFuIGNsYXNzPSJmYXMgZmEtc2VhcmNoLXBsdXMiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9hPiA8c3BhbiBjbGFzcz0iaW9iamVjdF9fdGl0bGVfX3NlcGFyYXRvciI+fDwvc3Bhbj4gRW52ZWxvcGU8L2Rpdj4KCQkJCQkJCQkJCTxkaXYgY2xhc3M9ImlvYmplY3RfX2Rlc2NyaXB0aW9uIGlvYmplY3RfX2Rlc2NyaXB0aW9uLS1yaWNoIGNhcmQtdGV4dCI+PHA+U2l6ZTogMzUgw5cgMjcuNSBjbSAod2VpZ2h0OiB1cCB0byAwLjUga2cpPC9wPjwvZGl2PgoJCQkJCTwvZmlnY2FwdGlvbj4KCQkJPC9maWd1cmU+CjwvZGl2PgoKCjxkaXYgY2xhc3M9ImlvYmplY3QgaW9iamVjdC0tcGljdHVyZSBpb2JqZWN0LS1waWN0dXJlLWNhcmQgY2FyZCI+Cgk8ZmlndXJlIGNsYXNzPSIiPgoJCTxhIGNsYXNzPSJpb2JqZWN0LS1waWN0dXJlX19saW5rIGltYWdlLXdyYXAiIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4YS8zNDA4YS8xMjc2eDExODkvVnVSMW13XzEyNzZ4MTE4OF9lYmM0OGQ4YTViZmNiZjhiLnBuZyIgdGl0bGU9IkJveCAyIC0gRW5sYXJnZSBpbWFnZSIgZGF0YS1wc3dwLXdpZHRoPSIxMjc2IiBkYXRhLXBzd3AtaGVpZ2h0PSIxMTg4Ij4JCQk8cGljdHVyZT4KCQkJCTxzb3VyY2Ugc3Jjc2V0PSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGEvMzQwOGEvMTI3NngxMTg5L1Z1UjFtd182MDB4NTU5XzczMmM3YzQyYmRmNzFhMDQud2VicCA2MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGEvMzQwOGEvMTI3NngxMTg5L1Z1UjFtd184MDB4NzQ1XzVjNWVjYmM3NGZmOGU5YmQud2VicCA4MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGEvMzQwOGEvMTI3NngxMTg5L1Z1UjFtd18xMjc2eDExODhfZWJjNDhkOGE1YmZjYmY4Yi53ZWJwIDE1MDB3IiBzaXplcz0iKG1heC13aWR0aDoxNDAwcHgpIDEwMHZ3LCAxNDAwcHgiIHR5cGU9ImltYWdlL3dlYnAiPgoJCQkJPHNvdXJjZSBzcmNzZXQ9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4YS8zNDA4YS8xMjc2eDExODkvVnVSMW13XzYwMHg1NTlfNzMyYzdjNDJiZGY3MWEwNC5wbmcgNjAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhhLzM0MDhhLzEyNzZ4MTE4OS9WdVIxbXdfODAweDc0NV81YzVlY2JjNzRmZjhlOWJkLnBuZyA4MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGEvMzQwOGEvMTI3NngxMTg5L1Z1UjFtd18xMjc2eDExODhfZWJjNDhkOGE1YmZjYmY4Yi5wbmcgMTUwMHciIHNpemVzPSIobWF4LXdpZHRoOjE0MDBweCkgMTAwdncsIDE0MDBweCI+CgkJCQk8aW1nIGNsYXNzPSJpb2JqZWN0LS1waWN0dXJlX19pbWcgaW1nLWZsdWlkIGNhcmQtaW1nLXRvcCIgc3JjPSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGEvMzQwOGEvMTI3NngxMTg5L1Z1UjFtd18xMjc2eDExODhfZWJjNDhkOGE1YmZjYmY4Yi5wbmciIHdpZHRoPSIxMjc2IiBoZWlnaHQ9IjExODgiIGFsdD0iQm94IDIiIAoJc3Jjc2V0PSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGEvMzQwOGEvMTI3NngxMTg5L1Z1UjFtd182MDB4NTU5XzczMmM3YzQyYmRmNzFhMDQucG5nIDYwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4YS8zNDA4YS8xMjc2eDExODkvVnVSMW13XzgwMHg3NDVfNWM1ZWNiYzc0ZmY4ZTliZC5wbmcgODAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhhLzM0MDhhLzEyNzZ4MTE4OS9WdVIxbXdfMTI3NngxMTg4X2ViYzQ4ZDhhNWJmY2JmOGIucG5nIDE1MDB3IiAKCXNpemVzPSIobWF4LXdpZHRoOjE0MDBweCkgMTAwdncsIDE0MDBweCI+CgkJCTwvcGljdHVyZT4KCQk8L2E+CQkJCTxmaWdjYXB0aW9uIGNsYXNzPSJjYXJkLWJvZHkgaW9iamVjdF9fY2FwdGlvbiI+CgkJCQkJCTxkaXYgY2xhc3M9ImlvYmplY3RfX3RpdGxlIGNhcmQtdGl0bGUiPjxhIGNsYXNzPSJpb2JqZWN0LS1waWN0dXJlX19saW5rIGpzX3BpY3R1cmVfdHJpZ2dlciIgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhhLzM0MDhhLzEyNzZ4MTE4OS9WdVIxbXdfMTI3NngxMTg4X2ViYzQ4ZDhhNWJmY2JmOGIucG5nIiB0aXRsZT0iQm94IDIgLSBFbmxhcmdlIGltYWdlIj48c3BhbiBjbGFzcz0iZmFzIGZhLXNlYXJjaC1wbHVzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYT4gPHNwYW4gY2xhc3M9ImlvYmplY3RfX3RpdGxlX19zZXBhcmF0b3IiPnw8L3NwYW4+IEJveCAyPC9kaXY+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpb2JqZWN0X19kZXNjcmlwdGlvbiBpb2JqZWN0X19kZXNjcmlwdGlvbi0tcmljaCBjYXJkLXRleHQiPjxwPlNpemU6IDMzLjcgw5cgMTguMiDDlyA4LjFjbSAod2VpZ2h0OiB1cCB0byAxIGtnKTwvcD48L2Rpdj4KCQkJCQk8L2ZpZ2NhcHRpb24+CgkJCTwvZmlndXJlPgo8L2Rpdj4KCgo8ZGl2IGNsYXNzPSJpb2JqZWN0IGlvYmplY3QtLXBpY3R1cmUgaW9iamVjdC0tcGljdHVyZS1jYXJkIGNhcmQiPgoJPGZpZ3VyZSBjbGFzcz0iIj4KCQk8YSBjbGFzcz0iaW9iamVjdC0tcGljdHVyZV9fbGluayBpbWFnZS13cmFwIiBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGIvMzQwOGIvMTI3NngxMTg5LzlzeHBvY18xMjc2eDExODhfMzA0ZDc2YzQ2ZGIxOTU5Zi5wbmciIHRpdGxlPSJCb3ggMyAtIEVubGFyZ2UgaW1hZ2UiIGRhdGEtcHN3cC13aWR0aD0iMTI3NiIgZGF0YS1wc3dwLWhlaWdodD0iMTE4OCI+CQkJPHBpY3R1cmU+CgkJCQk8c291cmNlIHNyY3NldD0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhiLzM0MDhiLzEyNzZ4MTE4OS85c3hwb2NfNjAweDU1OV9iOWJiYzk0ZDA3YTY3Zjc1LndlYnAgNjAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhiLzM0MDhiLzEyNzZ4MTE4OS85c3hwb2NfODAweDc0NV8yY2EzY2Y2MDRjM2U2NjVkLndlYnAgODAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhiLzM0MDhiLzEyNzZ4MTE4OS85c3hwb2NfMTI3NngxMTg4XzMwNGQ3NmM0NmRiMTk1OWYud2VicCAxNTAwdyIgc2l6ZXM9IihtYXgtd2lkdGg6MTQwMHB4KSAxMDB2dywgMTQwMHB4IiB0eXBlPSJpbWFnZS93ZWJwIj4KCQkJCTxzb3VyY2Ugc3Jjc2V0PSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGIvMzQwOGIvMTI3NngxMTg5LzlzeHBvY182MDB4NTU5X2I5YmJjOTRkMDdhNjdmNzUucG5nIDYwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4Yi8zNDA4Yi8xMjc2eDExODkvOXN4cG9jXzgwMHg3NDVfMmNhM2NmNjA0YzNlNjY1ZC5wbmcgODAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhiLzM0MDhiLzEyNzZ4MTE4OS85c3hwb2NfMTI3NngxMTg4XzMwNGQ3NmM0NmRiMTk1OWYucG5nIDE1MDB3IiBzaXplcz0iKG1heC13aWR0aDoxNDAwcHgpIDEwMHZ3LCAxNDAwcHgiPgoJCQkJPGltZyBjbGFzcz0iaW9iamVjdC0tcGljdHVyZV9faW1nIGltZy1mbHVpZCBjYXJkLWltZy10b3AiIHNyYz0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhiLzM0MDhiLzEyNzZ4MTE4OS85c3hwb2NfMTI3NngxMTg4XzMwNGQ3NmM0NmRiMTk1OWYucG5nIiB3aWR0aD0iMTI3NiIgaGVpZ2h0PSIxMTg4IiBhbHQ9IkJveCAzIiAKCXNyY3NldD0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhiLzM0MDhiLzEyNzZ4MTE4OS85c3hwb2NfNjAweDU1OV9iOWJiYzk0ZDA3YTY3Zjc1LnBuZyA2MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGIvMzQwOGIvMTI3NngxMTg5LzlzeHBvY184MDB4NzQ1XzJjYTNjZjYwNGMzZTY2NWQucG5nIDgwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4Yi8zNDA4Yi8xMjc2eDExODkvOXN4cG9jXzEyNzZ4MTE4OF8zMDRkNzZjNDZkYjE5NTlmLnBuZyAxNTAwdyIgCglzaXplcz0iKG1heC13aWR0aDoxNDAwcHgpIDEwMHZ3LCAxNDAwcHgiPgoJCQk8L3BpY3R1cmU+CgkJPC9hPgkJCQk8ZmlnY2FwdGlvbiBjbGFzcz0iY2FyZC1ib2R5IGlvYmplY3RfX2NhcHRpb24iPgoJCQkJCQk8ZGl2IGNsYXNzPSJpb2JqZWN0X190aXRsZSBjYXJkLXRpdGxlIj48YSBjbGFzcz0iaW9iamVjdC0tcGljdHVyZV9fbGluayBqc19waWN0dXJlX3RyaWdnZXIiIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4Yi8zNDA4Yi8xMjc2eDExODkvOXN4cG9jXzEyNzZ4MTE4OF8zMDRkNzZjNDZkYjE5NTlmLnBuZyIgdGl0bGU9IkJveCAzIC0gRW5sYXJnZSBpbWFnZSI+PHNwYW4gY2xhc3M9ImZhcyBmYS1zZWFyY2gtcGx1cyIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2E+IDxzcGFuIGNsYXNzPSJpb2JqZWN0X190aXRsZV9fc2VwYXJhdG9yIj58PC9zcGFuPiBCb3ggMzwvZGl2PgoJCQkJCQkJCQkJPGRpdiBjbGFzcz0iaW9iamVjdF9fZGVzY3JpcHRpb24gaW9iamVjdF9fZGVzY3JpcHRpb24tLXJpY2ggY2FyZC10ZXh0Ij48cD5TaXplOiAzMy43IMOXIDMyLjIgw5cgOS4yIGNtICh3ZWlnaHQ6IHVwIHRvIDIga2cpPC9wPjwvZGl2PgoJCQkJCTwvZmlnY2FwdGlvbj4KCQkJPC9maWd1cmU+CjwvZGl2PgoKCjxkaXYgY2xhc3M9ImlvYmplY3QgaW9iamVjdC0tcGljdHVyZSBpb2JqZWN0LS1waWN0dXJlLWNhcmQgY2FyZCI+Cgk8ZmlndXJlIGNsYXNzPSIiPgoJCTxhIGNsYXNzPSJpb2JqZWN0LS1waWN0dXJlX19saW5rIGltYWdlLXdyYXAiIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4Yy8zNDA4Yy8xMjc2eDExODkvdTljM2d2XzEyNzZ4MTE4OF9hOTdmMjQzN2E1ODVlOWIyLnBuZyIgdGl0bGU9IkJveCA0IC0gRW5sYXJnZSBpbWFnZSIgZGF0YS1wc3dwLXdpZHRoPSIxMjc2IiBkYXRhLXBzd3AtaGVpZ2h0PSIxMTg4Ij4JCQk8cGljdHVyZT4KCQkJCTxzb3VyY2Ugc3Jjc2V0PSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGMvMzQwOGMvMTI3NngxMTg5L3U5YzNndl82MDB4NTU5X2I3Mzk2NDhiMjM4NTZhZGMud2VicCA2MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGMvMzQwOGMvMTI3NngxMTg5L3U5YzNndl84MDB4NzQ1X2Y5MjhiZjhkMzczMjNhMDkud2VicCA4MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGMvMzQwOGMvMTI3NngxMTg5L3U5YzNndl8xMjc2eDExODhfYTk3ZjI0MzdhNTg1ZTliMi53ZWJwIDE1MDB3IiBzaXplcz0iKG1heC13aWR0aDoxNDAwcHgpIDEwMHZ3LCAxNDAwcHgiIHR5cGU9ImltYWdlL3dlYnAiPgoJCQkJPHNvdXJjZSBzcmNzZXQ9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4Yy8zNDA4Yy8xMjc2eDExODkvdTljM2d2XzYwMHg1NTlfYjczOTY0OGIyMzg1NmFkYy5wbmcgNjAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhjLzM0MDhjLzEyNzZ4MTE4OS91OWMzZ3ZfODAweDc0NV9mOTI4YmY4ZDM3MzIzYTA5LnBuZyA4MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGMvMzQwOGMvMTI3NngxMTg5L3U5YzNndl8xMjc2eDExODhfYTk3ZjI0MzdhNTg1ZTliMi5wbmcgMTUwMHciIHNpemVzPSIobWF4LXdpZHRoOjE0MDBweCkgMTAwdncsIDE0MDBweCI+CgkJCQk8aW1nIGNsYXNzPSJpb2JqZWN0LS1waWN0dXJlX19pbWcgaW1nLWZsdWlkIGNhcmQtaW1nLXRvcCIgc3JjPSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGMvMzQwOGMvMTI3NngxMTg5L3U5YzNndl8xMjc2eDExODhfYTk3ZjI0MzdhNTg1ZTliMi5wbmciIHdpZHRoPSIxMjc2IiBoZWlnaHQ9IjExODgiIGFsdD0iQm94IDQiIAoJc3Jjc2V0PSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGMvMzQwOGMvMTI3NngxMTg5L3U5YzNndl82MDB4NTU5X2I3Mzk2NDhiMjM4NTZhZGMucG5nIDYwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4Yy8zNDA4Yy8xMjc2eDExODkvdTljM2d2XzgwMHg3NDVfZjkyOGJmOGQzNzMyM2EwOS5wbmcgODAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhjLzM0MDhjLzEyNzZ4MTE4OS91OWMzZ3ZfMTI3NngxMTg4X2E5N2YyNDM3YTU4NWU5YjIucG5nIDE1MDB3IiAKCXNpemVzPSIobWF4LXdpZHRoOjE0MDBweCkgMTAwdncsIDE0MDBweCI+CgkJCTwvcGljdHVyZT4KCQk8L2E+CQkJCTxmaWdjYXB0aW9uIGNsYXNzPSJjYXJkLWJvZHkgaW9iamVjdF9fY2FwdGlvbiI+CgkJCQkJCTxkaXYgY2xhc3M9ImlvYmplY3RfX3RpdGxlIGNhcmQtdGl0bGUiPjxhIGNsYXNzPSJpb2JqZWN0LS1waWN0dXJlX19saW5rIGpzX3BpY3R1cmVfdHJpZ2dlciIgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhjLzM0MDhjLzEyNzZ4MTE4OS91OWMzZ3ZfMTI3NngxMTg4X2E5N2YyNDM3YTU4NWU5YjIucG5nIiB0aXRsZT0iQm94IDQgLSBFbmxhcmdlIGltYWdlIj48c3BhbiBjbGFzcz0iZmFzIGZhLXNlYXJjaC1wbHVzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYT4gPHNwYW4gY2xhc3M9ImlvYmplY3RfX3RpdGxlX19zZXBhcmF0b3IiPnw8L3NwYW4+IEJveCA0PC9kaXY+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpb2JqZWN0X19kZXNjcmlwdGlvbiBpb2JqZWN0X19kZXNjcmlwdGlvbi0tcmljaCBjYXJkLXRleHQiPjxwPlNpemU6IDMzLjcgw5cgMzIuMiDDlyAxOCBjbSAod2VpZ2h0OiB1cCB0byA1IGtnKTwvcD48L2Rpdj4KCQkJCQk8L2ZpZ2NhcHRpb24+CgkJCTwvZmlndXJlPgo8L2Rpdj4KCgoKPC9kaXY+Cgo8aDI+TGFyZ9C1IHBhY2thZ2luZzwvaDI+Cgo8ZGl2IGNsYXNzPSJjYXJkLWRlY2sgY2FyZC1kZWNrLS01Ij4KCgo8ZGl2IGNsYXNzPSJpb2JqZWN0IGlvYmplY3QtLXBpY3R1cmUgaW9iamVjdC0tcGljdHVyZS1jYXJkIGNhcmQiPgoJPGZpZ3VyZSBjbGFzcz0iIj4KCQk8YSBjbGFzcz0iaW9iamVjdC0tcGljdHVyZV9fbGluayBpbWFnZS13cmFwIiBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGYvMzQwOGYvMTI3NngxMTg5L283T2NEU18xMjc2eDExODhfNTMxMDY5ZWUwMGViNjJiOC5wbmciIHRpdGxlPSJCb3ggNSAtIEVubGFyZ2UgaW1hZ2UiIGRhdGEtcHN3cC13aWR0aD0iMTI3NiIgZGF0YS1wc3dwLWhlaWdodD0iMTE4OCI+CQkJPHBpY3R1cmU+CgkJCQk8c291cmNlIHNyY3NldD0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhmLzM0MDhmLzEyNzZ4MTE4OS9vN09jRFNfNjAweDU1OV9kZTc0YTMwOGUzM2RlMDhiLndlYnAgNjAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhmLzM0MDhmLzEyNzZ4MTE4OS9vN09jRFNfODAweDc0NV85YWM2MTAyM2ZiZDY0OTMwLndlYnAgODAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhmLzM0MDhmLzEyNzZ4MTE4OS9vN09jRFNfMTI3NngxMTg4XzUzMTA2OWVlMDBlYjYyYjgud2VicCAxNTAwdyIgc2l6ZXM9IihtYXgtd2lkdGg6MTQwMHB4KSAxMDB2dywgMTQwMHB4IiB0eXBlPSJpbWFnZS93ZWJwIj4KCQkJCTxzb3VyY2Ugc3Jjc2V0PSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGYvMzQwOGYvMTI3NngxMTg5L283T2NEU182MDB4NTU5X2RlNzRhMzA4ZTMzZGUwOGIucG5nIDYwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4Zi8zNDA4Zi8xMjc2eDExODkvbzdPY0RTXzgwMHg3NDVfOWFjNjEwMjNmYmQ2NDkzMC5wbmcgODAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhmLzM0MDhmLzEyNzZ4MTE4OS9vN09jRFNfMTI3NngxMTg4XzUzMTA2OWVlMDBlYjYyYjgucG5nIDE1MDB3IiBzaXplcz0iKG1heC13aWR0aDoxNDAwcHgpIDEwMHZ3LCAxNDAwcHgiPgoJCQkJPGltZyBjbGFzcz0iaW9iamVjdC0tcGljdHVyZV9faW1nIGltZy1mbHVpZCBjYXJkLWltZy10b3AiIHNyYz0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhmLzM0MDhmLzEyNzZ4MTE4OS9vN09jRFNfMTI3NngxMTg4XzUzMTA2OWVlMDBlYjYyYjgucG5nIiB3aWR0aD0iMTI3NiIgaGVpZ2h0PSIxMTg4IiBhbHQ9IkJveCA1IiAKCXNyY3NldD0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhmLzM0MDhmLzEyNzZ4MTE4OS9vN09jRFNfNjAweDU1OV9kZTc0YTMwOGUzM2RlMDhiLnBuZyA2MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGYvMzQwOGYvMTI3NngxMTg5L283T2NEU184MDB4NzQ1XzlhYzYxMDIzZmJkNjQ5MzAucG5nIDgwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4Zi8zNDA4Zi8xMjc2eDExODkvbzdPY0RTXzEyNzZ4MTE4OF81MzEwNjllZTAwZWI2MmI4LnBuZyAxNTAwdyIgCglzaXplcz0iKG1heC13aWR0aDoxNDAwcHgpIDEwMHZ3LCAxNDAwcHgiPgoJCQk8L3BpY3R1cmU+CgkJPC9hPgkJCQk8ZmlnY2FwdGlvbiBjbGFzcz0iY2FyZC1ib2R5IGlvYmplY3RfX2NhcHRpb24iPgoJCQkJCQk8ZGl2IGNsYXNzPSJpb2JqZWN0X190aXRsZSBjYXJkLXRpdGxlIj48YSBjbGFzcz0iaW9iamVjdC0tcGljdHVyZV9fbGluayBqc19waWN0dXJlX3RyaWdnZXIiIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4Zi8zNDA4Zi8xMjc2eDExODkvbzdPY0RTXzEyNzZ4MTE4OF81MzEwNjllZTAwZWI2MmI4LnBuZyIgdGl0bGU9IkJveCA1IC0gRW5sYXJnZSBpbWFnZSI+PHNwYW4gY2xhc3M9ImZhcyBmYS1zZWFyY2gtcGx1cyIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2E+IDxzcGFuIGNsYXNzPSJpb2JqZWN0X190aXRsZV9fc2VwYXJhdG9yIj58PC9zcGFuPiBCb3ggNTwvZGl2PgoJCQkJCQkJCQkJPGRpdiBjbGFzcz0iaW9iamVjdF9fZGVzY3JpcHRpb24gaW9iamVjdF9fZGVzY3JpcHRpb24tLXJpY2ggY2FyZC10ZXh0Ij48cD5TaXplOiAzMy43IMOXIDMyLjIgw5cgMzQuNSBjbSAod2VpZ2h0OiB1cCB0byAxMCBrZyk8L3A+PC9kaXY+CgkJCQkJPC9maWdjYXB0aW9uPgoJCQk8L2ZpZ3VyZT4KPC9kaXY+CgoKPGRpdiBjbGFzcz0iaW9iamVjdCBpb2JqZWN0LS1waWN0dXJlIGlvYmplY3QtLXBpY3R1cmUtY2FyZCBjYXJkIj4KCTxmaWd1cmUgY2xhc3M9IiI+CgkJPGEgY2xhc3M9ImlvYmplY3QtLXBpY3R1cmVfX2xpbmsgaW1hZ2Utd3JhcCIgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhlLzM0MDhlLzEyNzZ4MTE4OS90UGJMeTdfMTI3NngxMTg4X2Y3NTlhOGZmYTQyMWUyZTkucG5nIiB0aXRsZT0iQm94IDYgLSBFbmxhcmdlIGltYWdlIiBkYXRhLXBzd3Atd2lkdGg9IjEyNzYiIGRhdGEtcHN3cC1oZWlnaHQ9IjExODgiPgkJCTxwaWN0dXJlPgoJCQkJPHNvdXJjZSBzcmNzZXQ9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZS8zNDA4ZS8xMjc2eDExODkvdFBiTHk3XzYwMHg1NTlfMjg0ZDY2NzBkMjU2YTllYS53ZWJwIDYwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZS8zNDA4ZS8xMjc2eDExODkvdFBiTHk3XzgwMHg3NDVfMDZmOGM4NTU1ODU3YjA4MC53ZWJwIDgwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZS8zNDA4ZS8xMjc2eDExODkvdFBiTHk3XzEyNzZ4MTE4OF9mNzU5YThmZmE0MjFlMmU5LndlYnAgMTUwMHciIHNpemVzPSIobWF4LXdpZHRoOjE0MDBweCkgMTAwdncsIDE0MDBweCIgdHlwZT0iaW1hZ2Uvd2VicCI+CgkJCQk8c291cmNlIHNyY3NldD0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhlLzM0MDhlLzEyNzZ4MTE4OS90UGJMeTdfNjAweDU1OV8yODRkNjY3MGQyNTZhOWVhLnBuZyA2MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGUvMzQwOGUvMTI3NngxMTg5L3RQYkx5N184MDB4NzQ1XzA2ZjhjODU1NTg1N2IwODAucG5nIDgwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZS8zNDA4ZS8xMjc2eDExODkvdFBiTHk3XzEyNzZ4MTE4OF9mNzU5YThmZmE0MjFlMmU5LnBuZyAxNTAwdyIgc2l6ZXM9IihtYXgtd2lkdGg6MTQwMHB4KSAxMDB2dywgMTQwMHB4Ij4KCQkJCTxpbWcgY2xhc3M9ImlvYmplY3QtLXBpY3R1cmVfX2ltZyBpbWctZmx1aWQgY2FyZC1pbWctdG9wIiBzcmM9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZS8zNDA4ZS8xMjc2eDExODkvdFBiTHk3XzEyNzZ4MTE4OF9mNzU5YThmZmE0MjFlMmU5LnBuZyIgd2lkdGg9IjEyNzYiIGhlaWdodD0iMTE4OCIgYWx0PSJCb3ggNiIgCglzcmNzZXQ9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA4ZS8zNDA4ZS8xMjc2eDExODkvdFBiTHk3XzYwMHg1NTlfMjg0ZDY2NzBkMjU2YTllYS5wbmcgNjAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDhlLzM0MDhlLzEyNzZ4MTE4OS90UGJMeTdfODAweDc0NV8wNmY4Yzg1NTU4NTdiMDgwLnBuZyA4MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGUvMzQwOGUvMTI3NngxMTg5L3RQYkx5N18xMjc2eDExODhfZjc1OWE4ZmZhNDIxZTJlOS5wbmcgMTUwMHciIAoJc2l6ZXM9IihtYXgtd2lkdGg6MTQwMHB4KSAxMDB2dywgMTQwMHB4Ij4KCQkJPC9waWN0dXJlPgoJCTwvYT4JCQkJPGZpZ2NhcHRpb24gY2xhc3M9ImNhcmQtYm9keSBpb2JqZWN0X19jYXB0aW9uIj4KCQkJCQkJPGRpdiBjbGFzcz0iaW9iamVjdF9fdGl0bGUgY2FyZC10aXRsZSI+PGEgY2xhc3M9ImlvYmplY3QtLXBpY3R1cmVfX2xpbmsganNfcGljdHVyZV90cmlnZ2VyIiBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOGUvMzQwOGUvMTI3NngxMTg5L3RQYkx5N18xMjc2eDExODhfZjc1OWE4ZmZhNDIxZTJlOS5wbmciIHRpdGxlPSJCb3ggNiAtIEVubGFyZ2UgaW1hZ2UiPjxzcGFuIGNsYXNzPSJmYXMgZmEtc2VhcmNoLXBsdXMiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9hPiA8c3BhbiBjbGFzcz0iaW9iamVjdF9fdGl0bGVfX3NlcGFyYXRvciI+fDwvc3Bhbj4gQm94IDY8L2Rpdj4KCQkJCQkJCQkJCTxkaXYgY2xhc3M9ImlvYmplY3RfX2Rlc2NyaXB0aW9uIGlvYmplY3RfX2Rlc2NyaXB0aW9uLS1yaWNoIGNhcmQtdGV4dCI+PHA+U2l6ZTogNDEuNyDDlyAzNS45IMOXIDM2LjkgY20gKHdlaWdodDogdXAgdG8gMTUga2cpPC9wPjwvZGl2PgoJCQkJCTwvZmlnY2FwdGlvbj4KCQkJPC9maWd1cmU+CjwvZGl2PgoKCjxkaXYgY2xhc3M9ImlvYmplY3QgaW9iamVjdC0tcGljdHVyZSBpb2JqZWN0LS1waWN0dXJlLWNhcmQgY2FyZCI+Cgk8ZmlndXJlIGNsYXNzPSIiPgoJCTxhIGNsYXNzPSJpb2JqZWN0LS1waWN0dXJlX19saW5rIGltYWdlLXdyYXAiIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA5MC8zNDA5MC8xMjc2eDExODkvUVBwNnZxXzEyNzZ4MTE4OF9iOGVhY2YyNzQ4NWIyNmZkLnBuZyIgdGl0bGU9IkJveCA3IC0gRW5sYXJnZSBpbWFnZSIgZGF0YS1wc3dwLXdpZHRoPSIxMjc2IiBkYXRhLXBzd3AtaGVpZ2h0PSIxMTg4Ij4JCQk8cGljdHVyZT4KCQkJCTxzb3VyY2Ugc3Jjc2V0PSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOTAvMzQwOTAvMTI3NngxMTg5L1FQcDZ2cV82MDB4NTU5XzliOWYyZWMzNjg4YjA2ZWUud2VicCA2MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOTAvMzQwOTAvMTI3NngxMTg5L1FQcDZ2cV84MDB4NzQ1XzQ1M2NiMWM5NjZlM2E3Zjkud2VicCA4MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOTAvMzQwOTAvMTI3NngxMTg5L1FQcDZ2cV8xMjc2eDExODhfYjhlYWNmMjc0ODViMjZmZC53ZWJwIDE1MDB3IiBzaXplcz0iKG1heC13aWR0aDoxNDAwcHgpIDEwMHZ3LCAxNDAwcHgiIHR5cGU9ImltYWdlL3dlYnAiPgoJCQkJPHNvdXJjZSBzcmNzZXQ9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA5MC8zNDA5MC8xMjc2eDExODkvUVBwNnZxXzYwMHg1NTlfOWI5ZjJlYzM2ODhiMDZlZS5wbmcgNjAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDkwLzM0MDkwLzEyNzZ4MTE4OS9RUHA2dnFfODAweDc0NV80NTNjYjFjOTY2ZTNhN2Y5LnBuZyA4MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOTAvMzQwOTAvMTI3NngxMTg5L1FQcDZ2cV8xMjc2eDExODhfYjhlYWNmMjc0ODViMjZmZC5wbmcgMTUwMHciIHNpemVzPSIobWF4LXdpZHRoOjE0MDBweCkgMTAwdncsIDE0MDBweCI+CgkJCQk8aW1nIGNsYXNzPSJpb2JqZWN0LS1waWN0dXJlX19pbWcgaW1nLWZsdWlkIGNhcmQtaW1nLXRvcCIgc3JjPSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOTAvMzQwOTAvMTI3NngxMTg5L1FQcDZ2cV8xMjc2eDExODhfYjhlYWNmMjc0ODViMjZmZC5wbmciIHdpZHRoPSIxMjc2IiBoZWlnaHQ9IjExODgiIGFsdD0iQm94IDciIAoJc3Jjc2V0PSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOTAvMzQwOTAvMTI3NngxMTg5L1FQcDZ2cV82MDB4NTU5XzliOWYyZWMzNjg4YjA2ZWUucG5nIDYwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA5MC8zNDA5MC8xMjc2eDExODkvUVBwNnZxXzgwMHg3NDVfNDUzY2IxYzk2NmUzYTdmOS5wbmcgODAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDkwLzM0MDkwLzEyNzZ4MTE4OS9RUHA2dnFfMTI3NngxMTg4X2I4ZWFjZjI3NDg1YjI2ZmQucG5nIDE1MDB3IiAKCXNpemVzPSIobWF4LXdpZHRoOjE0MDBweCkgMTAwdncsIDE0MDBweCI+CgkJCTwvcGljdHVyZT4KCQk8L2E+CQkJCTxmaWdjYXB0aW9uIGNsYXNzPSJjYXJkLWJvZHkgaW9iamVjdF9fY2FwdGlvbiI+CgkJCQkJCTxkaXYgY2xhc3M9ImlvYmplY3RfX3RpdGxlIGNhcmQtdGl0bGUiPjxhIGNsYXNzPSJpb2JqZWN0LS1waWN0dXJlX19saW5rIGpzX3BpY3R1cmVfdHJpZ2dlciIgaHJlZj0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDkwLzM0MDkwLzEyNzZ4MTE4OS9RUHA2dnFfMTI3NngxMTg4X2I4ZWFjZjI3NDg1YjI2ZmQucG5nIiB0aXRsZT0iQm94IDcgLSBFbmxhcmdlIGltYWdlIj48c3BhbiBjbGFzcz0iZmFzIGZhLXNlYXJjaC1wbHVzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYT4gPHNwYW4gY2xhc3M9ImlvYmplY3RfX3RpdGxlX19zZXBhcmF0b3IiPnw8L3NwYW4+IEJveCA3PC9kaXY+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpb2JqZWN0X19kZXNjcmlwdGlvbiBpb2JqZWN0X19kZXNjcmlwdGlvbi0tcmljaCBjYXJkLXRleHQiPjxwPlNpemU6IDQ4LjEgw5cgNDAuNCDDlyAzOC45IGNtICh3ZWlnaHQ6IHVwIHRvIDIwIGtnKTwvcD48L2Rpdj4KCQkJCQk8L2ZpZ2NhcHRpb24+CgkJCTwvZmlndXJlPgo8L2Rpdj4KCgo8ZGl2IGNsYXNzPSJpb2JqZWN0IGlvYmplY3QtLXBpY3R1cmUgaW9iamVjdC0tcGljdHVyZS1jYXJkIGNhcmQiPgoJPGZpZ3VyZSBjbGFzcz0iIj4KCQk8YSBjbGFzcz0iaW9iamVjdC0tcGljdHVyZV9fbGluayBpbWFnZS13cmFwIiBocmVmPSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOTEvMzQwOTEvMTI3NngxMTg5LzkwR3dTOF8xMjc2eDExODhfZDE3MDUxMDI2YTRiNDBkNC5wbmciIHRpdGxlPSJCb3ggOCAtIEVubGFyZ2UgaW1hZ2UiIGRhdGEtcHN3cC13aWR0aD0iMTI3NiIgZGF0YS1wc3dwLWhlaWdodD0iMTE4OCI+CQkJPHBpY3R1cmU+CgkJCQk8c291cmNlIHNyY3NldD0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDkxLzM0MDkxLzEyNzZ4MTE4OS85MEd3UzhfNjAweDU1OV80NGZiMWRlOWY4Zjk3MGM1LndlYnAgNjAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDkxLzM0MDkxLzEyNzZ4MTE4OS85MEd3UzhfODAweDc0NV9lMTA0OTZlYjE5M2MwMDU1LndlYnAgODAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDkxLzM0MDkxLzEyNzZ4MTE4OS85MEd3UzhfMTI3NngxMTg4X2QxNzA1MTAyNmE0YjQwZDQud2VicCAxNTAwdyIgc2l6ZXM9IihtYXgtd2lkdGg6MTQwMHB4KSAxMDB2dywgMTQwMHB4IiB0eXBlPSJpbWFnZS93ZWJwIj4KCQkJCTxzb3VyY2Ugc3Jjc2V0PSJodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOTEvMzQwOTEvMTI3NngxMTg5LzkwR3dTOF82MDB4NTU5XzQ0ZmIxZGU5ZjhmOTcwYzUucG5nIDYwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA5MS8zNDA5MS8xMjc2eDExODkvOTBHd1M4XzgwMHg3NDVfZTEwNDk2ZWIxOTNjMDA1NS5wbmcgODAwdywgaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDkxLzM0MDkxLzEyNzZ4MTE4OS85MEd3UzhfMTI3NngxMTg4X2QxNzA1MTAyNmE0YjQwZDQucG5nIDE1MDB3IiBzaXplcz0iKG1heC13aWR0aDoxNDAwcHgpIDEwMHZ3LCAxNDAwcHgiPgoJCQkJPGltZyBjbGFzcz0iaW9iamVjdC0tcGljdHVyZV9faW1nIGltZy1mbHVpZCBjYXJkLWltZy10b3AiIHNyYz0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDkxLzM0MDkxLzEyNzZ4MTE4OS85MEd3UzhfMTI3NngxMTg4X2QxNzA1MTAyNmE0YjQwZDQucG5nIiB3aWR0aD0iMTI3NiIgaGVpZ2h0PSIxMTg4IiBhbHQ9IkJveCA4IiAKCXNyY3NldD0iaHR0cHM6Ly9kaGxleHByZXNzLmJnL2kvNzcvNzcvMDkxLzM0MDkxLzEyNzZ4MTE4OS85MEd3UzhfNjAweDU1OV80NGZiMWRlOWY4Zjk3MGM1LnBuZyA2MDB3LCBodHRwczovL2RobGV4cHJlc3MuYmcvaS83Ny83Ny8wOTEvMzQwOTEvMTI3NngxMTg5LzkwR3dTOF84MDB4NzQ1X2UxMDQ5NmViMTkzYzAwNTUucG5nIDgwMHcsIGh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA5MS8zNDA5MS8xMjc2eDExODkvOTBHd1M4XzEyNzZ4MTE4OF9kMTcwNTEwMjZhNGI0MGQ0LnBuZyAxNTAwdyIgCglzaXplcz0iKG1heC13aWR0aDoxNDAwcHgpIDEwMHZ3LCAxNDAwcHgiPgoJCQk8L3BpY3R1cmU+CgkJPC9hPgkJCQk8ZmlnY2FwdGlvbiBjbGFzcz0iY2FyZC1ib2R5IGlvYmplY3RfX2NhcHRpb24iPgoJCQkJCQk8ZGl2IGNsYXNzPSJpb2JqZWN0X190aXRsZSBjYXJkLXRpdGxlIj48YSBjbGFzcz0iaW9iamVjdC0tcGljdHVyZV9fbGluayBqc19waWN0dXJlX3RyaWdnZXIiIGhyZWY9Imh0dHBzOi8vZGhsZXhwcmVzcy5iZy9pLzc3Lzc3LzA5MS8zNDA5MS8xMjc2eDExODkvOTBHd1M4XzEyNzZ4MTE4OF9kMTcwNTEwMjZhNGI0MGQ0LnBuZyIgdGl0bGU9IkJveCA4IC0gRW5sYXJnZSBpbWFnZSI+PHNwYW4gY2xhc3M9ImZhcyBmYS1zZWFyY2gtcGx1cyIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2E+IDxzcGFuIGNsYXNzPSJpb2JqZWN0X190aXRsZV9fc2VwYXJhdG9yIj58PC9zcGFuPiBCb3ggODwvZGl2PgoJCQkJCQkJCQkJPGRpdiBjbGFzcz0iaW9iamVjdF9fZGVzY3JpcHRpb24gaW9iamVjdF9fZGVzY3JpcHRpb24tLXJpY2ggY2FyZC10ZXh0Ij48cD5TaXplOiA1NC4xIMOXIDQ0LjQgw5cgNDAuOSBjbSAodGhpY2tuZXNzOiB1cCB0byAyNSBrZyk8L3A+PC9kaXY+CgkJCQkJPC9maWdjYXB0aW9uPgoJCQk8L2ZpZ3VyZT4KPC9kaXY+CgoKCjwvZGl2PgoJPC9zZWN0aW9uPgoJCjwvYXJ0aWNsZT4KCgoKCgoKCgoKCgoJCTwvZGl2PgoJCQoKCQkJPGZvb3RlciBjbGFzcz0iZm9vdGVyIHdpZHRoLS1wYWdlIGdyaWQtbGF5b3V0Ij4KCQk8ZGl2IGNsYXNzPSJyb3cganVzdGlmeS1jb250ZW50LWJldHdlZW4gZm9vdGVyX19saW5rcyI+CgkJCTxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtc20tNiBjb2wtbWQtMyI+CgkJCQkJCQkJPHVsIGNsYXNzPSJsaXN0LWlubGluZSBsaXN0LS1zb2NpYWwtaWNvbnMiPgogICAgPGxpIGNsYXNzPSJsaXN0LWlubGluZS1pdGVtIj4KICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L2RobC1leHByZXNzLWJ1bGdhcmlhIiB0aXRsZT0iTGlua2VkSW4iPjxzcGFuIGNsYXNzPSJmYWIgZmEtbGlua2VkaW4iIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9hPgogIDwvbGk+CiAgICAgIDxsaSBjbGFzcz0ibGlzdC1pbmxpbmUtaXRlbSI+CiAgICA8YSBocmVmPSJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL2RobGV4cHJlc3NidWxnYXJpYS8/aGw9YmciIHRpdGxlPSJJbnN0YWdyYW0iPjxzcGFuIGNsYXNzPSJmYWIgZmEtaW5zdGFncmFtIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYT4KICA8L2xpPgogICAgICA8bGkgY2xhc3M9Imxpc3QtaW5saW5lLWl0ZW0iPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9iZy1iZy5mYWNlYm9vay5jb20vREhMRXhwcmVzc0J1bGdhcmlhIiB0aXRsZT0iRmFjZWJvb2siPjxzcGFuIGNsYXNzPSJmYWIgZmEtZmFjZWJvb2stc3F1YXJlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYT4KICA8L2xpPgogICAgICA8bGkgY2xhc3M9Imxpc3QtaW5saW5lLWl0ZW0iPgogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vY2hhbm5lbC9VQ0RNRGxQcjEtSk5vOFlwVk4wRFRzTlE/dmlld19hcz1zdWJzY3JpYmVyIiB0aXRsZT0iWW91VHViZSI+PHNwYW4gY2xhc3M9ImZhYiBmYS15b3V0dWJlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYT4KICA8L2xpPgogIDwvdWw+CgoJCQkJCgkKCQoJCgk8dWwgY2xhc3M9Imxpc3QtdW5zdHlsZWQiPgoJCQkJCTxsaT4KCQkJCTxhIGhyZWY9Ii9lbi90ZXJtcy1hbmQtY29uZGl0aW9ucy8iPlRlcm1zIGFuZCBDb25kaXRpb25zPC9hPgoJCQk8L2xpPgoJCQkJCTxsaT4KCQkJCTxhIGhyZWY9Imh0dHBzOi8vbXlkaGwuZXhwcmVzcy5kaGwvY29udGVudC9kYW0vZG93bmxvYWRzL2dsb2JhbC9wcml2YWN5LW5vdGljZS9leHByZXNzX3ByaXZhY3lfbm90aWNlLXYxLjJjX2JnX2VuLnBkZiI+UHJpdmFjeSBOb3RpY2U8L2E+CgkJCTwvbGk+CgkJCTwvdWw+CgkKCgkJCTwvZGl2PgoJCQkKCQkJCgkJPC9kaXY+CgoJCTxkaXYgY2xhc3M9InJvdyBzbWFsbHByaW50Ij4KCQkJPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1zbSI+CgkJCQk8dWwgY2xhc3M9Imxpc3QtdW5zdHlsZWQgbWItMCI+CgkJCQkJCgkJCQkJPGxpPgoJCQkJCQkJCQkJCTwvbGk+CgkJCQkJPGxpPgoJCQkJCQk8YSBocmVmPSJodHRwczovL3d3dy5kaGwuY29tL2JnLWJnL2hvbWUuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiPkRITCBFeHByZXNzIEJ1bGdhcmlhPC9hPgkJCQkJPC9saT4KCQkJCQk8bGk+CgkJCQkJCQkJCTwhLS0gT25lVHJ1c3QgQ29va2llcyBTZXR0aW5ncyBidXR0b24gc3RhcnQgLS0+CjxidXR0b24gaWQ9Im90LXNkay1idG4iIGNsYXNzPSJvdC1zZGstc2hvdy1zZXR0aW5ncyI+Q29va2llIFNldHRpbmdzPC9idXR0b24+CjwhLS0gT25lVHJ1c3QgQ29va2llcyBTZXR0aW5ncyBidXR0b24gZW5kIC0tPgoKCQoJCQkJCTwvbGk+CgkJCQk8L3VsPgoJCQk8L2Rpdj4KCQkJPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1zbSB0ZXh0LXNtLXJpZ2h0Ij4KCQkJCTxkaXY+CgkJCQkJCQkJCQkJCQkJCSZjb3B5OyAmbmJzcDsyMDIyJm5kYXNoOzIwMjYgPGEgaHJlZj0iaHR0cHM6Ly93d3cuZGhsLmNvbS8iPkRITCBFeHByZXNzPC9hPi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4JCQkJPC9kaXY+CgkJCQk8ZGl2PgoJCQkJCTxhIGhyZWY9InRlbDowNzAwMTc3MDAiPjA3MDAmbmJzcDsxNyZuYnNwOzcwMDwvYT48YnI+DQoJCQkJCQk8YSBocmVmPSJ0ZWw6KjM0NTYiPiozNDU2PC9hPiZuYnNwO+KAkyZuYnNwO01vYmlsZSAocHJvdmlkZXIgZmVlcyBtYXkgYXBwbHkpICA8YnI+DQoJCQkJCQk8YSBocmVmPSJ0ZWw6KzM1OTI5MzA5NDAwIj4rMzU5Jm5ic3A7MiZuYnNwOzkzMDk0MDAgLSBvdXRzaWRlIEJ1bGdhcmlhPC9hPjxicj4JCQkJPC9kaXY+CgkJCTwvZGl2PgoJCTwvZGl2Pgo8L2Zvb3Rlcj4KCgoJCQoJCQoKCQkKCQk8c2NyaXB0IHNyYz0iL3B1YmxpYy9kaXN0L3NjcmlwdHMvdmVuZG9yLm1pbi5qcz92MTc2MjQyNDc3MCI+PC9zY3JpcHQ+CgkJPHNjcmlwdCBzcmM9Ii9wdWJsaWMvZGlzdC9zY3JpcHRzL2FwcGxpY2F0aW9uLm1pbi5qcz92MTc1MDE2MTMyOSI+PC9zY3JpcHQ+CgkJPHNjcmlwdCBzcmM9Ii9wdWJsaWMvZGlzdC9zY3JpcHRzL21vZHVsZXMvYXBwbGljYXRpb25fZXM2Lm1pbi5qcz92MTc0MTEwNTQwOCIgdHlwZT0ibW9kdWxlIj48L3NjcmlwdD4KCgkJPHNjcmlwdD4KLy88IVtDREFUQVsKCQkJCgkJCi8vXV0+Cjwvc2NyaXB0PgoJCQoJCQoJCTxzY3JpcHQgc3JjPSIvcHVibGljL0Bnb29nbGVtYXBzL21hcmtlcmNsdXN0ZXJlcnBsdXMvZGlzdC9pbmRleC5taW4uanMiPjwvc2NyaXB0PgoJCQkJCTxzY3JpcHQgdHlwZT0idGV4dC9wbGFpbiIgY2xhc3M9Im9wdGFub24tY2F0ZWdvcnktTUFQMDEiPgoJCQkJT25lVHJ1c3QuSW5zZXJ0U2NyaXB0KCdodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20vbWFwcy9hcGkvanM/a2V5PUFJemFTeUFtaWlNUkt2Uk5qNm9rMnpTQVlfOU9YMXhSb290MnlhdyZsaWJyYXJpZXM9Z2VvbWV0cnkmY2FsbGJhY2s9d2luZG93LmxvY2F0b3IuaW5pdE1hcCcsICdib2R5JywgbnVsbCwgbnVsbCwgJ01BUDAxJyk7CgkJCTwvc2NyaXB0PgoJCQoJPC9ib2R5Pgo8L2h0bWw+Cg=="}},"time_used":234,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":234,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/scripts/application.min.js?v1750161329","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.737Z","timestamp":1785161166737,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/scripts/application.min.js?v1750161329 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: application/javascript\r\ncontent-length: 14217\r\nlast-modified: Tue, 17 Jun 2025 11:55:29 GMT\r\netag: \"858f-637c33053b5e0-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":34191,"size_decoded":14513,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (34146)","md5":"1bc2f5a8b85b103a4b72203f60f9244e","sha1":"1e1c9250592505d77743c7d89ef737ec823b6ded","sha256":"211030d4ac9ac4e10d06d1101683822c69bc2d4f6145020b4fe7d83c17bdf06a","sha512":"f854ae1b647d5453182691f8d4224d27303f2a3488b7ee0c211853c7fb523f7b839e111b59e2af1283cba1f84b4ad13b8bbaa99986ed6005c07c1f7c2dcebc44","ssdeep":"768:IP7+tn/k8+DAjDfBEo4jDVxaMTd2qWVzHjo+O:Q7+tnM8A4DfuoUPWVD4","tlshash":"bae229d4726025e349f2a13ea4af63483132293676560588b9b985f52c78d8e7333fbd","first_seen":"2025-06-25T10:41:46.550387Z","last_seen":"2026-07-27T14:06:41.150754Z","times_seen":120,"resource_available":true,"data":"d2luZG93LlVUSUxTPXdpbmRvdy5VVElMU3x8e30sd2luZG93LlVUSUxTLmhlbGxvV29ybGQ9ZnVuY3Rpb24oKXtjb25zb2xlLmxvZygiSGVsbG8gV29ybGQiKX0sd2luZG93LlVUSUxTLmZvcm1IaW50cz1mdW5jdGlvbigpeyQoIi5oZWxwLWhpbnQiKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9JCh0aGlzKSxpPWUuY2xvc2VzdCgiLmZvcm0tZ3JvdXAiKS5maW5kKCIuZm9ybS1jb250cm9sIiksdD1lLmRhdGEoInRpdGxlIil8fCIiLGU9ZS5odG1sKCk7aS5wb3BvdmVyKHtodG1sOiEwLHRyaWdnZXI6ImZvY3VzIix0aXRsZTp0LGNvbnRlbnQ6ZX0pfSl9LHdpbmRvdy5VVElMUy5sb2dpbkF2YWxpYWJpbGl0eUNoZWNrZXI9ZnVuY3Rpb24oKXt2YXIgdD0kKCIjaWRfbG9naW4iKSxuPSQoIjxwIGNsYXNzPSdhbGVydCBhbGVydC1kYW5nZXInPlVzZXJuYW1lIGlzIGFscmVhZHkgdGFrZW4uPC9wPiIpLmhpZGUoKS5hcHBlbmRUbyh0LmNsb3Nlc3QoIi5mb3JtLWdyb3VwIikpO3Qub24oImNoYW5nZSIsZnVuY3Rpb24oKXt2YXIgZT10LnZhbCgpLGk9JCgiaHRtbCIpLmF0dHIoImxhbmciKTsiIiE9PWUmJiQuYWpheCh7ZGF0YVR5cGU6Impzb24iLHVybDoiL2FwaS8iK2krIi9sb2dpbl9hdmFpbGFiaWxpdGllcy9kZXRhaWwvIixkYXRhOntsb2dpbjplLGZvcm1hdDoianNvbiJ9LHN1Y2Nlc3M6ZnVuY3Rpb24oZSl7ImF2YWlsYWJsZSIhPT1lLnN0YXR1cz9uLmZhZGVJbigpOm4uZmFkZU91dCgpfX0pfSkuY2hhbmdlKCl9LHdpbmRvdy5VVElMUy51bm9iZnVzY2F0ZUVtYWlscz1mdW5jdGlvbigpeyQoIi5hdGsxNF9ub19zcGFtIikudW5vYmZ1c2NhdGUoe2F0c3RyaW5nOiJbYXQtc2lnbl0iLGRvdHN0cmluZzoiW2RvdC1zaWduXSJ9KX0sd2luZG93LlVUSUxTLmxpbmtzVGFyZ2V0Qmxhbms9ZnVuY3Rpb24oKXskKCJhLmJsYW5rIikuYXR0cigidGFyZ2V0IiwiX2JsYW5rIil9LHdpbmRvdy5VVElMUz13aW5kb3cuVVRJTFN8fHt9LHdpbmRvdy5VVElMUy5pbml0U3dpcGVyPWZ1bmN0aW9uKCl7dmFyIHU9d2luZG93LmpRdWVyeTt1KCIuc3dpcGVyIikuZWFjaChmdW5jdGlvbihlLGkpe3ZhciB0PXUoaSksbj10LmRhdGEoInNsaWRlc19wZXJfdmlldyIpLGE9dC5kYXRhKCJsb29wIiksbz10LmRhdGEoImF1dG9wbGF5Iikscj10LmRhdGEoInNsaWRlcl9pZCIpLHM9dC5kYXRhKCJicmVha3BvaW50IiksbD10LmRhdGEoImNlbnRlcmVkX3NsaWRlcyIpLGM9dC5kYXRhKCJ0aHVtYnNmb3IiKSxkPXQuZGF0YSgidGh1bWJzIiksdD10LmRhdGEoInNwYWNlYmV0d2VlbiIpLGM9KGNvbnNvbGUubG9nKCJ0aHVtYnNGb3IiLGMpLHtzbGlkZXNQZXJWaWV3Om4sbmF2aWdhdGlvbjp7bmV4dEVsOiIjc3dpcGVyX2J1dHRvbl9uZXh0XyIrcixwcmV2RWw6IiNzd2lwZXJfYnV0dG9uX3ByZXZfIityfSxwYWdpbmF0aW9uOntlbDoiI3N3aXBlcl9wYWdpbmF0aW9uXyIrcixjbGlja2FibGU6ITB9LGxvb3A6YSxhdXRvcGxheTpvPSJudW1iZXIiPT10eXBlb2Ygbz97ZGVsYXk6b306byxzcGVlZDo2MDAscm91bmRMZW5ndGhzOiExLHdhdGNoT3ZlcmZsb3c6ITAsc3BhY2VCZXR3ZWVuOnR9KTtjLnNwYWNlQmV0d2Vlbj10fHwwLCJhdXRvIj09PW4/KHR8fChjLnNwYWNlQmV0d2Vlbj0xMCksIm51bWJlciI9PXR5cGVvZiBzJiYoYy5zbGlkZXNQZXJWaWV3PTEsYy5icmVha3BvaW50cz17fSxjLmJyZWFrcG9pbnRzW3NdPXtzbGlkZXNQZXJWaWV3OiJhdXRvIn0pKTo2PT09bj9jLmJyZWFrcG9pbnRzPXsxMTAwOntzbGlkZXNQZXJWaWV3OjYsc2xpZGVzUGVyR3JvdXA6Nn0sNjAwOntzbGlkZXNQZXJWaWV3OjQsc2xpZGVzUGVyR3JvdXA6NH0sNDAwOntzbGlkZXNQZXJWaWV3OjMsc2xpZGVzUGVyR3JvdXA6M30sMTA6e3NsaWRlc1BlclZpZXc6MixzbGlkZXNQZXJHcm91cDoyfX06MTxuJiYoYy5icmVha3BvaW50cz17OTc2OntzbGlkZXNQZXJWaWV3OjIsc2xpZGVzUGVyR3JvdXA6Mn0sNzQwOntzbGlkZXNQZXJWaWV3OjEsc2xpZGVzUGVyR3JvdXA6MX19KSxsJiYoYy5jZW50ZXJlZFNsaWRlcz1sLGMub249e2ltYWdlc1JlYWR5OmZ1bmN0aW9uKCl7dGhpcy5zbGlkZVRvTG9vcCgwLDApLG8mJnRoaXMuYXV0b3BsYXkuc3RhcnQoKX19KSxkJiYoYy50aHVtYnM9e3N3aXBlcjpkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGQpLnN3aXBlcn0pLG5ldyBTd2lwZXIoaSxjKX0pfSxmdW5jdGlvbihvKXt2YXIgZT1vLmpRdWVyeTtlLmZuLmV4dGVuZCh7UHJpY2luZ0Zvcm06ZnVuY3Rpb24oZSl7dGhpcy5vcHRpb25zPWU7dmFyIG49dGhpcyxhPW8ualF1ZXJ5Oyh0aGlzLmZvcm09dGhpcykuZGltZW5zaW9uc0ZpZWxkcz10aGlzLmZpbmQoIiNwcmljaW5nX2Zvcm1fX2RpbWVuc2lvbnMiKSx0aGlzLnN1Ym1pdEJ1dHRvbj10aGlzLmZpbmQoIiNwcmljaW5nX2Zvcm1fX3N1Ym1pdCIpLHRoaXMuY2hlY2tJbXBvcnRCdXR0b249dGhpcy5maW5kKCIjY2hlY2tfaW1wb3J0X3ByaWNlc19idXR0b24iKSx0aGlzLmxvYWRlckdyYXBoaWM9dGhpcy5maW5kKCIjcHJpY2luZ19mb3JtX19sb2FkaW5nIiksdGhpcy5yZXN1bHRDb250YWluZXI9dGhpcy5maW5kKCIjcHJpY2luZ19mb3JtX19yZXN1bHRzIiksdGhpcy5kaW1lbnNpb25zRGlzY2xhaW1lcj10aGlzLmZpbmQoIiNwcmljaW5nX2Zvcm1fX2RpbWVuc2lvbnNfZGlzY2xhaW1lciIpLHRoaXMub25QYWNrYWdlQ2hhbmdlPWZ1bmN0aW9uKGUpeyJjdXN0b20iPT09YShlLnRhcmdldCkudmFsKCk/bi5kaW1lbnNpb25zRmllbGRzLnNsaWRlRG93bigpOm4uZGltZW5zaW9uc0ZpZWxkcy5zbGlkZVVwKCl9LHRoaXMub25Db3VudHJ5RGVzdGluYXRpb25DaGFuZ2U9ZnVuY3Rpb24oKXtuLmZpbGxVcFNlbGVjdE9mRGVzdGluYXRpb25DaXRpZXMoKX0sdGhpcy5maWxsVXBTZWxlY3RPZkRlc3RpbmF0aW9uQ2l0aWVzPWZ1bmN0aW9uKCl7dmFyIGU9YSgiI3ByaWNpbmdfZm9ybV9fY291bnRyeV9kZXN0aW5hdGlvbiIpLnZhbCgpLGk9YSh0aGlzLmZvcm0pLmRhdGEoImNvdW50cmllc193aXRoX2NpdGllcyIpLHQ9YSgiI3ByaWNpbmdfZm9ybV9fY2l0eV9kZXN0aW5hdGlvbiIpLG49YSgiI2pzLS1wcmljaW5nX2Zvcm1fX2NvdW50cnlfZGVzdGluYXRpb25fX3dyYXAiKTshZXx8aS5pbmRleE9mKGUpPDA/KHQuZW1wdHkoKSx0LmlzKCI6dmlzaWJsZSIpJiZuLmZhZGVPdXQoKSk6KGk9Ii9hcGkvIithKCJodG1sIikuYXR0cigibGFuZyIpKyIvY2l0aWVzLyIsYS5hamF4KHtkYXRhVHlwZToianNvbiIsdXJsOmksZGF0YTp7Y291bnRyeTplLGZvcm1hdDoianNvbiJ9LHN1Y2Nlc3M6ZnVuY3Rpb24oZSl7bi5oaWRlKCksdC5lbXB0eSgpLGNvbnNvbGUubG9nKGUpLGEuZWFjaChlLGZ1bmN0aW9uKGUsaSl7dC5hcHBlbmQoYSgiPG9wdGlvbj48L29wdGlvbj4iKS5hdHRyKCJ2YWx1ZSIsaS5jaG9pY2Vfa2V5KS50ZXh0KGkubmFtZSkpfSksbi5yZW1vdmVDbGFzcygiZC1ub25lIiksbi5mYWRlSW4oKX19KSl9LHRoaXMub25EYXRhPWZ1bmN0aW9uKCl7bi5sb2FkZXJHcmFwaGljLmhpZGUoKSxuLnJlc3VsdENvbnRhaW5lci5zbGlkZURvd24oKX0sdGhpcy5vblN1Ym1pdD1mdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGksdCxlPWEodGhpcy5mb3JtKTtuLmNoZWNrRW1wdHlGaWVsZHMoKT8oaT1lLmF0dHIoImFjdGlvbiIpKyI/IitlLnNlcmlhbGl6ZSgpLHQ9by5sb2NhdGlvbi50b1N0cmluZygpLnJlcGxhY2UoLyMuKi8sIiIpLnJlcGxhY2UoL1w/LiovLCIiKSsiPyIrZS5zZXJpYWxpemUoKSxjb25zb2xlLmxvZyh0KSxuLnN1Ym1pdEJ1dHRvbi5oaWRlKCksbi5jaGVja0ltcG9ydEJ1dHRvbi5oaWRlKCksbi5sb2FkZXJHcmFwaGljLnNob3coKSxhLmFqYXgoe3VybDppfSkuZG9uZShmdW5jdGlvbihlKXtuLnJlc3VsdENvbnRhaW5lci5odG1sKGUpLG4ub25EYXRhKCksMD09PWEoZSkuY2xvc2VzdCgiI2pzLS1mb3JtX2Vycm9ycyIpLmxlbmd0aCYmbi5kaW1lbnNpb25zRGlzY2xhaW1lci5zaG93KCksby5oaXN0b3J5LnJlcGxhY2VTdGF0ZSh7fSwiIix0KX0pKTpuLnNob3dFbXB0eUZpZWxkc01lc3NhZ2UoKX0sdGhpcy5jaGVja0VtcHR5RmllbGRzPWZ1bmN0aW9uKCl7dmFyIGU9YSh0aGlzLmZvcm0pO3JldHVybiIiPT09ZS5maW5kKCIjcHJpY2luZ19mb3JtX19jb3VudHJ5X2Rlc3RpbmF0aW9uIikudmFsKCl8fCIiPT09ZS5maW5kKCIjcHJpY2luZ19mb3JtX19wYWNrYWdlX2hpZGRlbiIpLnZhbCgpfHwiY3VzdG9tIj09PWUuZmluZCgiI3ByaWNpbmdfZm9ybV9fcGFja2FnZV9oaWRkZW4iKS52YWwoKSYmIiI9PT1lLmZpbmQoIiNpZF9zaXplX3dlaWdodCIpLnZhbCgpLnRyaW0oKXx8ImN1c3RvbSI9PT1lLmZpbmQoIiNwcmljaW5nX2Zvcm1fX3BhY2thZ2VfaGlkZGVuIikudmFsKCkmJiJyZXF1aXJlZCI9PT1lLmZpbmQoIiNpZF9zaXplX2xlbmd0aCIpLmRhdGEoInJlcXVpcmVkIikmJigiIj09PWUuZmluZCgiI2lkX3NpemVfbGVuZ3RoIikudmFsKCkudHJpbSgpfHwiIj09PWUuZmluZCgiI2lkX3NpemVfd2lkdGgiKS52YWwoKS50cmltKCl8fCIiPT09ZS5maW5kKCIjaWRfc2l6ZV9oZWlnaHQiKS52YWwoKS50cmltKCkpPyhlLmZpbmQoIiNwcmljaW5nX2Zvcm1fX3N1Ym1pdCIpLmFkZENsYXNzKCJkaXNhYmxlZCIpLCExKTooZS5maW5kKCIjcHJpY2luZ19mb3JtX19zdWJtaXQiKS5yZW1vdmVDbGFzcygiZGlzYWJsZWQiKSxlLmZpbmQoIiNwcmljaW5nX2Zvcm1fX2FsZXJ0IikuaGlkZSgpLGUuZmluZCgiLmpzLS1jb21tb24tZXJyb3IiKS5zaG93KCksZS5maW5kKCIuanMtLXdlaWdodC1yZXF1aXJlZCIpLmhpZGUoKSxlLmZpbmQoIi5qcy0tZGltZW5zaW9ucy1yZXF1aXJlZCIpLmhpZGUoKSwhMCl9LHRoaXMuc2hvd0VtcHR5RmllbGRzTWVzc2FnZT1mdW5jdGlvbigpe3ZhciBlPWEodGhpcy5mb3JtKTsiIj09PWUuZmluZCgiI3ByaWNpbmdfZm9ybV9fY291bnRyeV9kZXN0aW5hdGlvbiIpLnZhbCgpfHwiY3VzdG9tIiE9PWUuZmluZCgiI3ByaWNpbmdfZm9ybV9fcGFja2FnZV9oaWRkZW4iKS52YWwoKXx8InJlcXVpcmVkIiE9PWUuZmluZCgiI2lkX3NpemVfbGVuZ3RoIikuZGF0YSgicmVxdWlyZWQiKXx8IiIhPT1lLmZpbmQoIiNpZF9zaXplX2xlbmd0aCIpLnZhbCgpLnRyaW0oKSYmIiIhPT1lLmZpbmQoIiNpZF9zaXplX3dpZHRoIikudmFsKCkudHJpbSgpJiYiIiE9PWUuZmluZCgiI2lkX3NpemVfaGVpZ2h0IikudmFsKCkudHJpbSgpPygiIiE9PWUuZmluZCgiI3ByaWNpbmdfZm9ybV9fY291bnRyeV9kZXN0aW5hdGlvbiIpLnZhbCgpJiYiY3VzdG9tIj09PWUuZmluZCgiI3ByaWNpbmdfZm9ybV9fcGFja2FnZV9oaWRkZW4iKS52YWwoKSYmIiI9PT1lLmZpbmQoIiNpZF9zaXplX3dlaWdodCIpLnZhbCgpLnRyaW0oKT8oZS5maW5kKCIuanMtLWNvbW1vbi1lcnJvciIpLmhpZGUoKSxlLmZpbmQoIi5qcy0td2VpZ2h0LXJlcXVpcmVkIikuc2hvdygpKTooZS5maW5kKCIuanMtLWNvbW1vbi1lcnJvciIpLnNob3coKSxlLmZpbmQoIi5qcy0td2VpZ2h0LXJlcXVpcmVkIikuaGlkZSgpKSxlLmZpbmQoIi5qcy0tZGltZW5zaW9ucy1yZXF1aXJlZCIpLmhpZGUoKSk6KGUuZmluZCgiLmpzLS1jb21tb24tZXJyb3IiKS5oaWRlKCksZS5maW5kKCIuanMtLXdlaWdodC1yZXF1aXJlZCIpLmhpZGUoKSxlLmZpbmQoIi5qcy0tZG1tZW5zaW9ucy1yZXF1aXJlZCIpLnNob3coKSksZS5maW5kKCIjcHJpY2luZ19mb3JtX19hbGVydCIpLnNob3coKX0sdGhpcy5jaGVja0luaXRpYWxEYXRhRnVsbG5lcz1mdW5jdGlvbigpeyIiIT09bi5yZXN1bHRDb250YWluZXIuaHRtbCgpLnRyaW0oKSYmKG4uc3VibWl0QnV0dG9uLmhpZGUoKSxuLmNoZWNrSW1wb3J0QnV0dG9uLmhpZGUoKSxuLnJlc3VsdENvbnRhaW5lci5zaG93KCksImN1c3RvbSI9PT1uLmZvcm0uZmluZCgiI3ByaWNpbmdfZm9ybV9fcGFja2FnZSIpLnZhbCgpKSYmbi5kaW1lbnNpb25zRmllbGRzLnNob3coKX0sdGhpcy5yZXNldD1mdW5jdGlvbigpe24uY2hlY2tFbXB0eUZpZWxkcygpLG4ubG9hZGVyR3JhcGhpYy5oaWRlKCksbi5yZXN1bHRDb250YWluZXIuYWRkQ2xhc3MoInNsaWRpbmctdXAiKSxuLnJlc3VsdENvbnRhaW5lci5zbGlkZVVwKHtjb21wbGV0ZTpmdW5jdGlvbigpe24ucmVzdWx0Q29udGFpbmVyLnJlbW92ZUNsYXNzKCJzbGlkaW5nLXVwIil9fSksbi5zdWJtaXRCdXR0b24uc2hvdygpLG4uY2hlY2tJbXBvcnRCdXR0b24uc2hvdygpLG4uZGltZW5zaW9uc0Rpc2NsYWltZXIuc2xpZGVVcCgpfSx0aGlzLmluaXQ9ZnVuY3Rpb24oKXt0aGlzLmNoZWNrRW1wdHlGaWVsZHMoKSx0aGlzLmZpbmQoIiNwcmljaW5nX2Zvcm1fX3BhY2thZ2UiKS5vbigiY2hhbmdlIix0aGlzLm9uUGFja2FnZUNoYW5nZSksdGhpcy5zdWJtaXRCdXR0b24ub24oImNsaWNrIix0aGlzLm9uU3VibWl0KSx0aGlzLmZpbmQoIi5mb3JtLWNvbnRyb2wiKS5vbigiY2hhbmdlIix0aGlzLnJlc2V0KSx0aGlzLmNoZWNrSW5pdGlhbERhdGFGdWxsbmVzKCksdGhpcy5maW5kKCIjcHJpY2luZ19mb3JtX19jb3VudHJ5X2Rlc3RpbmF0aW9uIikub24oImNoYW5nZSIsdGhpcy5vbkNvdW50cnlEZXN0aW5hdGlvbkNoYW5nZSksdGhpcy5maWxsVXBTZWxlY3RPZkRlc3RpbmF0aW9uQ2l0aWVzKCl9LHRoaXMubGVuZ3RoJiZ0aGlzLmluaXQoKX19KSxlKCIjcHJpY2luZ19mb3JtIikuUHJpY2luZ0Zvcm0oe30pfSh0aGlzKSx3aW5kb3cuVVRJTFM9d2luZG93LlVUSUxTfHx7fSx3aW5kb3cuVVRJTFMuTG9jYXRvcj1mdW5jdGlvbihlKXt0aGlzLm9wdGlvbnM9ZTt2YXIgdT10aGlzLHM9d2luZG93LmpRdWVyeTt0aGlzLmFwcD1zKCIuanMtbG9jYXRvciIpLHRoaXMuY2x1c3RlclN0eWxlcz1be3dpZHRoOjI1LGhlaWdodDoyNX0se3dpZHRoOjMwLGhlaWdodDozMH0se3dpZHRoOjM1LGhlaWdodDozNX1dLHRoaXMuY2x1c3RlckdyaWRTaXplPTgwLHRoaXMuZmlsdGVySW5wdXRzPUFycmF5LmZyb20oZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgianMtZmlsdGVyLWNoZWNrYm94IikpLHRoaXMuZ2VvbWV0cnk9bnVsbCx0aGlzLmNyaXRlcmlhPW51bGwsdGhpcy5jaGVja2VkRmlsdGVycz1udWxsLHRoaXMubm9ybWFsaXplU3RyaW5nPWZ1bmN0aW9uKGUpe3JldHVybiBlPShlPWUubm9ybWFsaXplP2Uubm9ybWFsaXplKCJORktEIikucmVwbGFjZSgvW1x1MDMwMC1cdTAzNmZdL2csIiIpOmUpLnRvTG93ZXJDYXNlKCl9LHRoaXMubm9ybWFsaXplU2VhcmNoU3RyaW5nPWZ1bmN0aW9uKGUpe3ZhciBpO3JldHVybihlPWUudHJpbSgpKSYmKChpPSI9Ij09PWVbMF0pJiYoZT1lLnN1YnN0cigxKSksZT11Lm5vcm1hbGl6ZVN0cmluZyhlKSkse3Rlcm06ZSxleGFjdDppfX0sdGhpcy5maW5kTWFwTWFya2VyPWZ1bmN0aW9uKGUpe3JldHVybiB3aW5kb3cuc2VydmljZXBvaW50c1tlXS5tYXJrZXJ9LHRoaXMuc2VsZWN0QmVzdEdlb2NvZGVyUmVzdWx0PWZ1bmN0aW9uKGUsaSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0KyspaWYoaS5jb250YWlucyhlW3RdLmdlb21ldHJ5LmxvY2F0aW9uKSlyZXR1cm4gZVt0XTt2YXIgbj1OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksYT1udWxsLG89aS5nZXRDZW50ZXIoKTtmb3IodD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgcj13aW5kb3cuZ29vZ2xlLm1hcHMuZ2VvbWV0cnkuc3BoZXJpY2FsLmNvbXB1dGVEaXN0YW5jZUJldHdlZW4obyxlW3RdLmdlb21ldHJ5LmxvY2F0aW9uKTtyPG4mJihuPXIsYT10KX1yZXR1cm4gbjwxZTY/ZVthXTpudWxsfSx0aGlzLm9uUG9pbnRMaXN0SXRlbUVudGVyPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5hdHRyaWJ1dGVzWyJkYXRhLXNlcnZpY2Vwb2ludF9pZCJdLnZhbHVlO3UuYm91bmNlKHUuZmluZE1hcE1hcmtlcihlKSl9LHRoaXMub25Qb2ludExpc3RJdGVtTGVhdmU9ZnVuY3Rpb24oKXt1LmRldGFpbFNob3dlZCE9PXUuYm91bmNpbmdNYXJrZXImJnUuYm91bmNlT2ZmKCl9LHRoaXMub25ab29tRGV0YWlsPWZ1bmN0aW9uKCl7dS5kZXRhaWxTaG93ZWQmJnUuem9vbU1hcmtlcih1LmRldGFpbFNob3dlZCl9LHRoaXMuYm91bmNlT2ZmPWZ1bmN0aW9uKCl7dS5ib3VuY2luZ01hcmtlciYmKHdpbmRvdy5jbGVhclRpbWVvdXQodS5ib3VuY2luZ1RpbWVyKSx1LmJvdW5jaW5nTWFya2VyLnNldEFuaW1hdGlvbihudWxsKSx1LmJvdW5jaW5nTWFya2VyIT09dS5kZXRhaWxTaG93ZWQmJnUuY2x1c3RlcmVyLmFkZE1hcmtlcih1LmJvdW5jaW5nTWFya2VyKSx1LmJvdW5jaW5nTWFya2VyPW51bGwpfSx0aGlzLmJvdW5jZT1mdW5jdGlvbihlKXt1LmJvdW5jaW5nTWFya2VyIT09ZSYmKHUuYm91bmNlT2ZmKCksKHUuYm91bmNpbmdNYXJrZXI9ZSkhPT11LmRldGFpbFNob3dlZCYmKHUuY2x1c3RlcmVyLnJlbW92ZU1hcmtlcihlKSxlLnNldE1hcCh1Lm1hcCkpLGUuc2V0QW5pbWF0aW9uKGdvb2dsZS5tYXBzLkFuaW1hdGlvbi5CT1VOQ0UpLHUuYm91bmNpbmdUaW1lcj13aW5kb3cuc2V0VGltZW91dCh1LmJvdW5jZU9mZiwyZTMpKX0sdGhpcy56b29tTWFya2VyPWZ1bmN0aW9uKGUpe3UubWFwLnBhblRvKGUuZ2V0UG9zaXRpb24oKSksMTc8PXUubWFwLmdldFpvb20oKT91Lm1hcC5zZXRab29tKDE0KTp1Lm1hcC5zZXRab29tKDE3KX0sdGhpcy5zaG93RGV0YWlsPWZ1bmN0aW9uKGUsaSx0LG4pe3UuZGV0YWlsU2hvd2VkJiZ1LmhpZGVEZXRhaWwoKSx1LmJvdW5jZShuKSx1LmRldGFpbFNob3dlZD1uLHUuY2x1c3RlcmVyLnJlbW92ZU1hcmtlcihuKSxuLnNldE1hcCh1Lm1hcCksdS5hcHAuZmluZCgiLmxvY2F0b3JfX2xpc3QgLmxpc3QtaXRlbSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSwodD10fHx1LmFwcC5maW5kKCcubG9jYXRvcl9fbGlzdCAubGlzdC1pdGVtW2RhdGEtc2VydmljZXBvaW50X2lkPSInK2UrJyJdJykpLmFkZENsYXNzKCJhY3RpdmUiKSx1Lm1hcC5wYW5UbyhuLmdldFBvc2l0aW9uKCkpLHUubWFwLnNldFpvb20oMTQpLHUuYXBwLmZpbmQoIi5sb2NhdG9yX19kZXRhaWwiKS5hZGRDbGFzcygibG9jYXRvcl9fZGV0YWlsLS1zaG93IikscygiLmxvY2F0b3JfX2RldGFpbCIpLmZpbmQoIi5qcy1wbGFjZWhvbGRlciIpLmh0bWwoIiIpLHMuYWpheChpKS5kb25lKGZ1bmN0aW9uKGUpe3MoIi5sb2NhdG9yX19kZXRhaWwiKS5maW5kKCIuanMtcGxhY2Vob2xkZXIiKS5odG1sKGUpfSl9LHRoaXMuaGlkZURldGFpbD1mdW5jdGlvbihlKXt1LmRldGFpbFNob3dlZCYmdS5jbHVzdGVyZXIuYWRkTWFya2VyKHUuZGV0YWlsU2hvd2VkKSx1LmRldGFpbFNob3dlZD0hMSx1LmJvdW5jZU9mZigpLGUmJmUucHJldmVudERlZmF1bHQoKSx1LmFwcC5maW5kKCIubG9jYXRvcl9fbGlzdCAubGlzdC1pdGVtIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLHUuYXBwLmZpbmQoIi5sb2NhdG9yX19kZXRhaWwiKS5yZW1vdmVDbGFzcygibG9jYXRvcl9fZGV0YWlsLS1zaG93Iil9LHRoaXMub25Qb2ludExpc3RJdGVtQ2xpY2s9ZnVuY3Rpb24oZSl7ZT1zKGUuY3VycmVudFRhcmdldCk7dS5zaG93RGV0YWlsT2YoZSl9LHRoaXMuc2hvd0RldGFpbE9mPWZ1bmN0aW9uKGUpe3ZhciBpPWUuZGF0YSgiZGV0YWlsX3VybCIpLHQ9ZS5kYXRhKCJzZXJ2aWNlcG9pbnRfaWQiKSxuPXUuZmluZE1hcE1hcmtlcih0KTt1LnNob3dEZXRhaWwodCxpLGUsbil9LHRoaXMubG9jYXRlTWU9ZnVuY3Rpb24oZSl7ZS5wcmV2ZW50RGVmYXVsdCgpLG5hdmlnYXRvci5nZW9sb2NhdGlvbiYmbmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihmdW5jdGlvbihlKXt1LnNlYXJjaEdlb21ldHJ5KHtsb2NhdGlvbjpuZXcgZ29vZ2xlLm1hcHMuTGF0TG5nKGUuY29vcmRzLmxhdGl0dWRlLGUuY29vcmRzLmxvbmdpdHVkZSl9KX0pfSx0aGlzLnNlYXJjaEJ5WmlwY29kZURlZmVycmVkPWZ1bmN0aW9uKGUpe3Uuc2VhcmNoQnlaaXBjb2RlVGltZW91dCYmd2luZG93LmNsZWFyVGltZW91dCh1LnNlYXJjaEJ5WmlwY29kZVRpbWVvdXQpLGUmJjEzPT09ZS5rZXlDb2RlJiYoZS5wcmV2ZW50RGVmYXVsdCgpLHUuc2VhcmNoQnlaaXBjb2RlKCkpLHUuc2VhcmNoQnlaaXBjb2RlVGltZW91dD13aW5kb3cuc2V0VGltZW91dCh1LnNlYXJjaEJ5WmlwY29kZSwzMDApfSx0aGlzLnNlYXJjaEJ5WmlwY29kZT1mdW5jdGlvbihlKXtlJiZlLnByZXZlbnREZWZhdWx0KCksdS5zZWFyY2hCeVppcGNvZGVUaW1lb3V0JiYod2luZG93LmNsZWFyVGltZW91dCh1LnNlYXJjaEJ5WmlwY29kZVRpbWVvdXQpLHUuc2VhcmNoQnlaaXBjb2RlVGltZW91dD1udWxsKSx1LnNldFNlYXJjaCh1LmFwcC5maW5kKCIjc2VhcmNoX2lucHV0IikudmFsKCkudG9TdHJpbmcoKSksdS5zZWFyY2hCeSgpfSx0aGlzLnNlYXJjaEJ5PWZ1bmN0aW9uKCl7cmV0dXJuIiI9PT11LnNlYXJjaF93aGF0LnRlcm0/dS5jbGVhck1hcmtlcnMoKTp1LnNlYXJjaF93aGF0LmV4YWN0P3Uuc2VhcmNoR2VvbWV0cnkobnVsbCk6dm9pZCB1Lmdlb2NvZGluZyh1LnNlYXJjaEdlb21ldHJ5KX0sdGhpcy5nZW9jb2Rpbmc9ZnVuY3Rpb24odCl7dmFyIGU9cygiYm9keSIpLmRhdGEoImNvdW50cnkiKSxpPS9bMC05XXs0fXxbMC05XXszfSA/WzAtOV17Mn0vLnRlc3QodS5zZWFyY2hfd2hhdC50ZXJtKT8icG9zdCBjb2RlICIrdS5zZWFyY2hfd2hhdC50ZXJtOnUuc2VhcmNoX3doYXQudGVybSxuPShuZXcgUmVnRXhwKCIsXFxzKiIrZSsiJCIpLnRlc3QodS5zZWFyY2hfd2hhdC50ZXJtKXx8KGkrPSIsICIrZSksIkdNTG9jYXRpb24tIitlKyItIitpKSxhPWxvY2FsU3RvcmFnZS5nZXRJdGVtKG4pO2lmKGEpe3RyeXthPUpTT04ucGFyc2UoYSl9Y2F0Y2goZSl7YT1udWxsfWlmKGEmJmEuZGF0ZSYmKG5ldyBEYXRlKS5nZXRUaW1lKCktbmV3IERhdGUoYS5kYXRlKS5nZXRUaW1lKCk8NjA0OGU1KXJldHVybiB2b2lkKGEubG9jYXRpb24/KHI9e2xvY2F0aW9uOm5ldyBnb29nbGUubWFwcy5MYXRMbmcoYS5sb2NhdGlvbil9LGEuYm91bmRzJiYoci5ib3VuZHM9bmV3IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcyh7bGF0OmEuYm91bmRzLnNvdXRoLGxuZzphLmJvdW5kcy53ZXN0fSx7bGF0OmEuYm91bmRzLm5vcnRoLGxuZzphLmJvdW5kcy5lYXN0fSkpLHQocikpOnQobnVsbCkpO2xvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG4pfXZhciBhPW5ldyB3aW5kb3cuZ29vZ2xlLm1hcHMuR2VvY29kZXIsbz13aW5kb3cuVVRJTFMuTG9jYXRvci5DT1VOVFJZX0JPVU5ESU5HX0JPWEVTW2VdWzFdLG89bmV3IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcyh7bGF0Om9bMV0sbG5nOm9bMF19LHtsYXQ6b1szXSxsbmc6b1syXX0pLHI9bG9jYXRpb24uaG9zdG5hbWUuc3BsaXQoIi4iKS5zbGljZSgtMSlbMF07MzxyLmxlbmd0aCYmKHI9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJvZHkiKVswXS5nZXRBdHRyaWJ1dGUoImRhdGEtY291bnRyeSIpKSxhLmdlb2NvZGUoe2FkZHJlc3M6aSxib3VuZHM6byxsYW5ndWFnZTpkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaHRtbCIpWzBdLmdldEF0dHJpYnV0ZSgibGFuZyIpLHJlZ2lvbjpyfSxmdW5jdGlvbihlLGkpe2k9PT13aW5kb3cuZ29vZ2xlLm1hcHMuR2VvY29kZXJTdGF0dXMuT0smJigoZT11LnNlbGVjdEJlc3RHZW9jb2RlclJlc3VsdChlLG8pKT8oZT1lLmdlb21ldHJ5LGxvY2FsU3RvcmFnZS5zZXRJdGVtKG4sSlNPTi5zdHJpbmdpZnkoe2xvY2F0aW9uOmUubG9jYXRpb24sYm91bmRzOmUuYm91bmRzLGRhdGU6bmV3IERhdGV9KSksdChlKSk6aT13aW5kb3cuZ29vZ2xlLm1hcHMuR2VvY29kZXJTdGF0dXMuWkVST19SRVNVTFRTKSxpPT09d2luZG93Lmdvb2dsZS5tYXBzLkdlb2NvZGVyU3RhdHVzLlpFUk9fUkVTVUxUUyYmKGxvY2FsU3RvcmFnZS5zZXRJdGVtKG4sSlNPTi5zdHJpbmdpZnkoe2RhdGU6bmV3IERhdGV9KSksdChudWxsKSl9KX0sdGhpcy5zZXRTZWFyY2g9ZnVuY3Rpb24oaSl7aT11LnNlYXJjaF93aGF0PXUubm9ybWFsaXplU2VhcmNoU3RyaW5nKGkpLHRlc3Q9aS5leGFjdD9mdW5jdGlvbihlKXtyZXR1cm4gZS5ub3JtYWxpemVkX3RpdGxlPT09aS50ZXJtfTpmdW5jdGlvbihlKXtyZXR1cm4gZS5ub3JtYWxpemVkX3RpdGxlLmluY2x1ZGVzKGkudGVybSl9LHUuc2VhcmNoX2ZjZT10ZXN0fSx0aGlzLnNlYXJjaEdlb21ldHJ5PWZ1bmN0aW9uKGUpeyh1Lmdlb21ldHJ5PWUpPyh1LmlhbWhlcmVtYXJrZXIuc2V0UG9zaXRpb24oZS5sb2NhdGlvbiksdS5pYW1oZXJlbWFya2VyLnNldFZpc2libGUoITApKTp1LmlhbWhlcmVtYXJrZXIuc2V0VmlzaWJsZSghMSksdS5yZWNvbXB1dGVDcml0ZXJpYSgpLHUuc2hvd01hcmtlcnMoKX0sdGhpcy5hY3RpdmVGaWx0ZXJzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmlsdGVySW5wdXRzLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gZS5jaGVja2VkfSkubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBwYXJzZUludChlLnZhbHVlKX0pfSx0aGlzLmlzU2VydmljZVBvaW50U3VpdGFibGVGdW5jdGlvbj1mdW5jdGlvbigpe3ZhciBuPXUuY2hlY2tlZEZpbHRlcnN8fHUuYWN0aXZlRmlsdGVycygpO3JldHVybiBuLmxlbmd0aD8obj1BcnJheS5mcm9tKG4pLGZ1bmN0aW9uKGUpe3ZhciBpPWUuZmlsdGVycyxlPXMoImJvZHkiKS5kYXRhKCJjb3VudHJ5Iik7aWYoWyJDWiJdLmluY2x1ZGVzKGUpKXJldHVybiBuLmV2ZXJ5KGZ1bmN0aW9uKGUpe3JldHVybihpJmUpPT09ZX0pO2Zvcih2YXIgdD0wO3Q8bi5sZW5ndGg7dCsrKWlmKChpJm5bdF0pPT09blt0XSlyZXR1cm4hMDtyZXR1cm4hMX0pOm51bGx9LHRoaXMucmVjb21wdXRlQ3JpdGVyaWE9ZnVuY3Rpb24oKXt2YXIgaSx0LGUsbixhPU9iamVjdC5rZXlzKHdpbmRvdy5zZXJ2aWNlcG9pbnRzKSxvPXUuaXNTZXJ2aWNlUG9pbnRTdWl0YWJsZUZ1bmN0aW9uKCkscj11Lmdlb21ldHJ5LHM9KG8mJihhPWEuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBvKHdpbmRvdy5zZXJ2aWNlcG9pbnRzW2VdKX0pKSxlPXImJnIuYm91bmRzP2EuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiEhd2luZG93LnNlcnZpY2Vwb2ludHNbZV0ubGF0bG5nJiZyLmJvdW5kcy5jb250YWlucyh3aW5kb3cuc2VydmljZXBvaW50c1tlXS5sYXRsbmcpfSkubWFwKGZ1bmN0aW9uKGUpe3JldHVybiB3aW5kb3cuc2VydmljZXBvaW50c1tlXX0pOltdLHImJmUubGVuZ3RoPDMmJihpPW5ldyBTZXQoZSksdD1yLmxvY2F0aW9uLGU9ZS5jb25jYXQoZnVuY3Rpb24oZSxpLHQpe2Zvcih2YXIgbixhPU51bWJlci5QT1NJVElWRV9JTkZJTklUWSxvPVtdLHI9MDtyPGUubGVuZ3RoO3IrKyl7dmFyIHM9ZVtyXSxzPXdpbmRvdy5zZXJ2aWNlcG9pbnRzW3NdLGw9aShzKTtpZighKGE8PWwpKXtzPXtkaXN0OmwsaXRlbTpzfTtmb3Iobj0wO248by5sZW5ndGgmJiEobDxvW25dLmRpc3QpO24rKyk7bj09PW8ubGVuZ3RoP28ucHVzaChzKTooby5zcGxpY2UobiwwLHMpLG8ubGVuZ3RoPnQmJihvPW8uc2xpY2UoMCx0KSkpLG8ubGVuZ3RoPT09dCYmKGE9b1tvLmxlbmd0aC0xXS5kaXN0KX19cmV0dXJuIG8ubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBlLml0ZW19KX0oYSxmdW5jdGlvbihlKXtyZXR1cm4haS5oYXMoZSkmJmUubGF0bG5nP3dpbmRvdy5nb29nbGUubWFwcy5nZW9tZXRyeS5zcGhlcmljYWwuY29tcHV0ZURpc3RhbmNlQmV0d2VlbihlLmxhdGxuZyx0KTpOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFl9LDMtZS5sZW5ndGgpKSksdS5zZWFyY2hfd2hhdC50ZXJtKTtpZih1LnNlYXJjaF93aGF0LnRlcm0pe3ZhciBsLGM9dS5zZWFyY2hfZmNlO2ZvcihsIGluIHdpbmRvdy5zZXJ2aWNlcG9pbnRzKXt2YXIgZD1zZXJ2aWNlcG9pbnRzW2xdOyFjKGQpfHxvJiYhbyhkKXx8ZS5wdXNoKGQpfX1lLmxlbmd0aHx8cz8obj1uZXcgU2V0KGUpLHUuY3JpdGVyaWFGY2U9ZnVuY3Rpb24oZSl7cmV0dXJuIG4uaGFzKGUpfSk6bz8obj1uZXcgU2V0KGEpLHUuY3JpdGVyaWFGY2U9ZnVuY3Rpb24oZSl7cmV0dXJuIG4uaGFzKGUuZmFjaWxpdHlJZCl9KTp1LmNyaXRlcmlhRmNlPWZ1bmN0aW9uKCl7cmV0dXJuITB9fSx0aGlzLnNob3dNYXJrZXJzPWZ1bmN0aW9uKGUpe3ZhciBuLGE9MCxvPXUuY3JpdGVyaWFGY2UsaT11Lmdlb21ldHJ5O2U9ZXx8e30sbj1uZXcgZ29vZ2xlLm1hcHMuTGF0TG5nQm91bmRzLGkmJihpLmJvdW5kcz9uLnVuaW9uKGkuYm91bmRzKTpuLmV4dGVuZChpLmxvY2F0aW9uKSksdS5hcHAuZmluZCgiLmxvY2F0b3JfX2xpc3QgLmxpc3QtaXRlbSIpLmVhY2goZnVuY3Rpb24oZSxpKXt2YXIgaT1zKGkpLHQ9d2luZG93LnNlcnZpY2Vwb2ludHNbaS5kYXRhKCJzZXJ2aWNlcG9pbnRfaWQiKV07byh0KT8oYSsrLG4uZXh0ZW5kKHQubWFya2VyLmdldFBvc2l0aW9uKCkpLCEwIT09dC52aXNpYmxlJiYoaS5yZW1vdmVDbGFzcygiZC1ub25lIiksdC52aXNpYmxlPSEwLHQubWFya2VyLnNldFZpc2libGUoITApLHUuY2x1c3RlcmVyLmFkZE1hcmtlcih0Lm1hcmtlciwhMCkpKTohMSE9PXQudmlzaWJsZSYmKGkuYWRkQ2xhc3MoImQtbm9uZSIpLHQubWFya2VyLnNldFZpc2libGUoITEpLHQudmlzaWJsZT0hMSx1LmNsdXN0ZXJlci5yZW1vdmVNYXJrZXIodC5tYXJrZXIsITApKX0pLGUubm9IaWRlRGV0YWlsc3x8dS5oaWRlRGV0YWlsKCksMDxhJiYhZS5kb05vdFNjcm9sbD91Lm1hcC5maXRCb3VuZHMobik6dS5jbHVzdGVyZXIucmVwYWludCgpLGdvb2dsZS5tYXBzLmV2ZW50LmFkZExpc3RlbmVyT25jZSh1Lm1hcCwiYm91bmRzX2NoYW5nZWQiLGZ1bmN0aW9uKCl7MTU8dGhpcy5nZXRab29tKCkmJnRoaXMuc2V0Wm9vbSgxNSl9KX0sdGhpcy5jbGVhck1hcmtlcnM9ZnVuY3Rpb24oKXt1LnNlYXJjaEdlb21ldHJ5KG51bGwpfSx0aGlzLm9uUG9pbnRNYXJrZXJDbGljaz1mdW5jdGlvbihlKXt2YXIgaT11LmFwcC5maW5kKCcubG9jYXRvcl9fbGlzdCAubGlzdC1pdGVtW2RhdGEtc2VydmljZXBvaW50X2lkPSInK2UuZmFjaWxpdHlJZCsnIl0nKTt1LnNob3dEZXRhaWwoZS5mYWNpbGl0eUlkLGUuZGV0YWlsVXJsLGksZSl9LHRoaXMuaW5pdEFwcD1mdW5jdGlvbigpe3RoaXMuYXBwLmZpbmQoIi5sb2NhdG9yX19saXN0IC5saXN0LWl0ZW0iKS5vbigiY2xpY2siLHRoaXMub25Qb2ludExpc3RJdGVtQ2xpY2spLHRoaXMuYXBwLmZpbmQoIi5sb2NhdG9yX19saXN0IC5saXN0LWl0ZW0iKS5vbigia2V5ZG93biIsdGhpcy5vblBvaW50TGlzdEl0ZW1DbGljayksdGhpcy5hcHAuZmluZCgiLmxvY2F0b3JfX2xpc3QgLmxpc3QtaXRlbSIpLm1vdXNlZW50ZXIodGhpcy5vblBvaW50TGlzdEl0ZW1FbnRlciksdGhpcy5hcHAuZmluZCgiLmxvY2F0b3JfX2xpc3QgLmxpc3QtaXRlbSIpLm1vdXNlbGVhdmUodGhpcy5vblBvaW50TGlzdEl0ZW1MZWF2ZSksdGhpcy5hcHAuZmluZCgiLmxvY2F0b3JfX2RldGFpbCAuanMtY2xvc2UiKS5vbigiY2xpY2siLHRoaXMuaGlkZURldGFpbCksdGhpcy5hcHAuZmluZCgiLmxvY2F0b3JfX2RldGFpbCIpLm9uKCJjbGljayIsIi5qcy1sb2NhdG9yLXpvb20tZGV0YWlsIix0aGlzLm9uWm9vbURldGFpbCksdGhpcy5hcHAuZmluZCgiI21hcF91c2VfbG9jYXRpb24iKS5vbigiY2xpY2siLHRoaXMubG9jYXRlTWUpLHRoaXMuYXBwLmZpbmQoIiNzZWFyY2hfaW5wdXQiKS5vbigia2V5dXAiLHRoaXMuc2VhcmNoQnlaaXBjb2RlRGVmZXJyZWQpLHRoaXMuYXBwLmZpbmQoIiNzZWFyY2hfaW5wdXQiKS5vbigia2V5cHJlc3MiLGZ1bmN0aW9uKGUpezEzPT09ZS5jaGFyQ29kZSYmZS5wcmV2ZW50RGVmYXVsdCgpfSksdGhpcy5hcHAuZmluZCgiI21hcF9zZWFyY2hfYnRuIikub24oImNsaWNrIix0aGlzLnNlYXJjaEJ5WmlwY29kZSksdGhpcy5hcHAuZmluZCgiI2xvY2F0b3JfX3NlYXJjaCIpLm9uKCJzdWJtaXQiLGZ1bmN0aW9uKGUpe2UucHJldmVudERlZmF1bHQoKSx0aGlzLnNlYXJjaEJ5WmlwY29kZSgpfSl9LHRoaXMuaW5pdFNwZWNpYWxNYXA9ZnVuY3Rpb24oZSl7dmFyIGk9e3pvb21Db250cm9sOiEwfSx0PUpTT04ucGFyc2UoZS5nZXRBdHRyaWJ1dGUoImRhdGEtYXJncyIpKSxuPSh0P3ZvaWQgMD09PXQuem9vbSYmKHQuem9vbT0xMyk6dD17em9vbToiMTMifSxpLnpvb209cGFyc2VJbnQodC56b29tKSxpLm1heFpvb209cGFyc2VJbnQodC56b29tKSxlLm1hcD1uZXcgZ29vZ2xlLm1hcHMuTWFwKGUsaSksbmV3IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcyk7aWYodC5TUCYmdC5TUC5sZW5ndGgpZm9yKHZhciBhPTA7YTx0LlNQLmxlbmd0aDthKyspc3A9dC5TUFthXSx1LmNyZWF0ZVNQTWFya2VyKHNwLHttYXA6ZS5tYXB9KSxzcC5sYXRsbmc9bmV3IGdvb2dsZS5tYXBzLkxhdExuZyhzcC5sb2NhdGlvbi5sYXQsc3AubG9jYXRpb24ubG5nKSxuLmV4dGVuZChzcC5sYXRsbmcpO2UubWFwLmZpdEJvdW5kcyhuKSxnb29nbGUubWFwcy5ldmVudC5hZGRMaXN0ZW5lck9uY2UoZS5tYXAsImlkbGUiLGZ1bmN0aW9uKCl7ZS5tYXAuc2V0T3B0aW9ucyh7bWF4Wm9vbTpudWxsfSl9KX0sdGhpcy5jcmVhdGVTUE1hcmtlcj1mdW5jdGlvbihlLGkpe3JldHVybiBvcHRzPXtwb3NpdGlvbjplLmxvY2F0aW9uLGljb246Ii9wdWJsaWMvZGlzdC9pbWFnZXMvbWFwLW1hcmtlci5zdmciLHNlcnZpY2Vwb2ludDplLHRpdGxlOmUudGl0bGUsZGV0YWlsVXJsOmUuZGV0YWlsX3VybCx6SW5kZXg6MTUwfSxpJiYob3B0cz1PYmplY3QuYXNzaWduKG9wdHMsaSkpLG5ldyBnb29nbGUubWFwcy5NYXJrZXIob3B0cyl9LHRoaXMuaW5pdE1hcD1mdW5jdGlvbigpe3ZhciBpLGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlYXJjaF9pbnB1dCIpO3Uuc2V0U2VhcmNoKGU/ZS52YWx1ZToiIiwhMCksL14jc2VydmljZXBvaW50PVtBLVowLTldKyQvLnRlc3QobG9jYXRpb24uaGFzaCk/KGk9bG9jYXRpb24uaGFzaC5zdWJzdHIoMTQpLHUuY3JpdGVyaWFGY2U9ZnVuY3Rpb24oZSl7cmV0dXJuIGUuZmFjaWxpdHlJZD09PWl9LGxvY2F0aW9uLmhyZWY9IiNsb2NhdG9yIixsb2NhdGlvbi5ocmVmPSIjc2VydmljZXBvaW50PSIraSk6KHUuY3JpdGVyaWFGY2U9bnVsbCx1LnNlYXJjaF93aGF0LnRlcm0mJiF1LnNlYXJjaF93aGF0LmV4YWN0Pyh1Lm1hcF9pbml0aWFsaXplZD0yLHUuZ2VvY29kaW5nKGZ1bmN0aW9uKGUpe3UuZ2VvbWV0cnk9ZSx1Lm1hcF9pbml0aWFsaXplZC0tLHUuaW5pdE1hcENvbXBsZXRlKGkpfSkpOih1Lmdlb21ldHJ5PW51bGwsdS5tYXBfaW5pdGlhbGl6ZWQ9MSkpLHUuaW5pdE1hcE1hcCgpLHUuaW5pdE1hcENvbXBsZXRlKGkpfSx0aGlzLmluaXRNYXBNYXA9ZnVuY3Rpb24oKXtmb3IodmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgianMtZHJpbmtfbWFwIiksaT0wO2k8ZS5sZW5ndGg7aSsrKXUuaW5pdFNwZWNpYWxNYXAoZVtpXSk7aWYoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImpzLWxvY2F0b3JfbWFwIikpe2Zvcih2YXIgaSBpbiB1Lm1hcD1uZXcgZ29vZ2xlLm1hcHMuTWFwKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJqcy1sb2NhdG9yX21hcCIpLHt9KSx1LmlhbWhlcmVtYXJrZXI9bmV3IGdvb2dsZS5tYXBzLk1hcmtlcih7bWFwOnUubWFwLHRpdGxlOiJKc3RlIHpkZSIsaWNvbjoiL3B1YmxpYy9kaXN0L2ltYWdlcy9tYXAtbWFya2VyLWlhbWhlcmUuc3ZnIix2aXNpYmxlOiExLHpJbmRleDotOTl9KSxzZXJ2aWNlcG9pbnRzKXt2YXIgdD1zZXJ2aWNlcG9pbnRzW2ldO3Qubm9ybWFsaXplZF90aXRsZT11Lm5vcm1hbGl6ZVN0cmluZyh0LnNlYXJjaF90aXRsZSl9dS5tYXBfaW5pdGlhbGl6ZWQtLX19LHRoaXMuaW5pdE1hcENvbXBsZXRlPWZ1bmN0aW9uKGUpe2lmKCEoMDx1Lm1hcF9pbml0aWFsaXplZCkpe3UuY3JpdGVyaWFGY2V8fHUucmVjb21wdXRlQ3JpdGVyaWEoKTt2YXIgaSx0PVtdLG49bmV3IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcztmb3IoaSBpbiBzZXJ2aWNlcG9pbnRzKXt2YXIgYT1zZXJ2aWNlcG9pbnRzW2ldLG89KGEubm9ybWFsaXplZF90aXRsZT11Lm5vcm1hbGl6ZVN0cmluZyhhLnNlYXJjaF90aXRsZSksdS5jcml0ZXJpYUZjZShhKSk7KG1hcmtlcj11LmNyZWF0ZVNQTWFya2VyKGEse3Zpc2libGU6b30pKS5hZGRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dS5vblBvaW50TWFya2VyQ2xpY2sodGhpcyl9KSxvJiZ0LnB1c2gobWFya2VyKSxtYXJrZXIudmlzaWJsZT1vLGEubWFya2VyPW1hcmtlcixhLmxhdGxuZz1uZXcgZ29vZ2xlLm1hcHMuTGF0TG5nKGEubG9jYXRpb24ubGF0LGEubG9jYXRpb24ubG5nKSxuLmV4dGVuZChhLmxhdGxuZyl9dGhpcy5jbHVzdGVyZXI9bmV3IE1hcmtlckNsdXN0ZXJlcih1Lm1hcCxbXSx7c3R5bGVzOnUuY2x1c3RlclN0eWxlcyxjbHVzdGVyQ2xhc3M6Im1hcC1jbHVzdGVyLWljb24iLGdyaWRTaXplOnUuY2x1c3RlckdyaWRTaXplLG1heFpvb206MTJ9KSx1LmRlZmF1bHRCb3VuZHM9bix1LnNob3dNYXJrZXJzKCksZSYmdS5zaG93RGV0YWlsT2YocygiI3NlcnZpY2Vwb2ludF9pdGVtXyIrZSkpLHUuaW5pdEFwcCgpfX0sdGhpcy5yZWNvbXB1dGVGaWx0ZXJzPWZ1bmN0aW9uKCl7dS5yZWNvbXB1dGVDcml0ZXJpYSgpLHUuc2hvd01hcmtlcnMoe2RvTm90U2Nyb2xsOiEwfSl9LHRoaXMuZmlsdGVyQ2hlY2tlZD1mdW5jdGlvbigpe3UuY2hlY2tlZEZpbHRlcnM9bnVsbCx1LnJlY29tcHV0ZUZpbHRlcnMoKX07Zm9yKHZhciBpPTA7aTx0aGlzLmZpbHRlcklucHV0cy5sZW5ndGg7aSsrKXRoaXMuZmlsdGVySW5wdXRzW2ldLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsdGhpcy5maWx0ZXJDaGVja2VkKTt0aGlzLnNldEZpbHRlcnM9ZnVuY3Rpb24oaSl7dGhpcy5jaGVja2VkRmlsdGVycz1pLGk9bmV3IFNldChpKSx1LmZpbHRlcklucHV0cy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UuY2hlY2tlZD1pLmhhcyhwYXJzZUludChlLnZhbHVlKSl9KX0sdGhpcy5zaG93TWFwV2l0aEZpbHRlcnM9ZnVuY3Rpb24oKXtyZXR1cm4gdS5zZXRGaWx0ZXJzKGFyZ3VtZW50cyksdGhpcy5yZWNvbXB1dGVGaWx0ZXJzKCksIShkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIjbG9jYXRvciIpfX0sd2luZG93LlVUSUxTLkxvY2F0b3IuQ09VTlRSWV9CT1VORElOR19CT1hFUz17QUY6WyJBZmdoYW5pc3RhbiIsWzYwLjUyODQyOTgwMzMsMjkuMzE4NTcyNDk2LDc1LjE1ODAyNzc4NTEsMzguNDg2MjgxNjQzMl1dLEFPOlsiQW5nb2xhIixbMTEuNjQwMDk2MDYyOSwtMTcuOTMwNjM2NDg4NSwyNC4wNzk5MDUyMjYzLC00LjQzODAyMzM2OTk4XV0sQUw6WyJBbGJhbmlhIixbMTkuMzA0NDg2MTE4MywzOS42MjQ5OTc2NjcsMjEuMDIwMDQwMzE3NSw0Mi42ODgyNDczODIyXV0sQUU6WyJVbml0ZWQgQXJhYiBFbWlyYXRlcyIsWzUxLjU3OTUxODY3MDUsMjIuNDk2OTQ3NTM2Nyw1Ni4zOTY4NDczNjUxLDI2LjA1NTQ2NDE3OV1dLEFSOlsiQXJnZW50aW5hIixbLTczLjQxNTQzNTc1NzEsLTU1LjI1LC01My42MjgzNDg5NjUsLTIxLjgzMjMxMDQ3OTRdXSxBTTpbIkFybWVuaWEiLFs0My41ODI3NDU4MDI2LDM4Ljc0MTIwMTQ4MzcsNDYuNTA1NzE5ODQyMyw0MS4yNDgxMjg1NjcxXV0sQVE6WyJBbnRhcmN0aWNhIixbLTE4MCwtOTAsMTgwLC02My4yNzA2NjA0ODk1XV0sVEY6WyJGci4gUy4gYW5kIEFudGFyY3RpYyBMYW5kcyIsWzY4LjcyLC00OS43NzUsNzAuNTYsLTQ4LjYyNV1dLEFVOlsiQXVzdHJhbGlhIixbMTEzLjMzODk1MzA3OCwtNDMuNjM0NTk3MjYzNCwxNTMuNTY5NDY5MDI5LC0xMC42NjgxODU3MjM1XV0sQVQ6WyJBdXN0cmlhIixbOS40Nzk5Njk1MTY2NSw0Ni40MzE4MTczMjg1LDE2Ljk3OTY2Njc4MjMsNDkuMDM5MDc0MjA1MV1dLEFaOlsiQXplcmJhaWphbiIsWzQ0Ljc5Mzk4OTY5OTEsMzguMjcwMzc3NTA5MSw1MC4zOTI4MjEwNzkzLDQxLjg2MDY3NTE1NzJdXSxCSTpbIkJ1cnVuZGkiLFsyOS4wMjQ5MjYzODUyLC00LjQ5OTk4MzQxMjI5LDMwLjc1MjI2MjgxMSwtMi4zNDg0ODY4MzAyNV1dLEJFOlsiQmVsZ2l1bSIsWzIuNTEzNTczMDMyMjUsNDkuNTI5NDgzNTQ3Niw2LjE1NjY1ODE1NTk2LDUxLjQ3NTAyMzcwODddXSxCSjpbIkJlbmluIixbLjc3MjMzNTY0NjE3MSw2LjE0MjE1NzcwMTAzLDMuNzk3MTEyMjU3NTEsMTIuMjM1NjM1ODkxMl1dLEJGOlsiQnVya2luYSBGYXNvIixbLTUuNDcwNTY0OTQ3OTMsOS42MTA4MzQ4NjU3NiwyLjE3NzEwNzc4MTU5LDE1LjExNjE1Nzc0MThdXSxCRDpbIkJhbmdsYWRlc2giLFs4OC4wODQ0MjIyMzUxLDIwLjY3MDg4MzI4Nyw5Mi42NzI3MjA5ODE4LDI2LjQ0NjUyNTU4MDNdXSxCRzpbIkJ1bGdhcmlhIixbMjIuMzgwNTI1NzUwNCw0MS4yMzQ0ODU5ODg5LDI4LjU1ODA4MTQ5NTksNDQuMjM0OTIzMDAwN11dLEJTOlsiQmFoYW1hcyIsWy03OC45OCwyMy43MSwtNzcsMjcuMDRdXSxCQTpbIkJvc25pYSBhbmQgSGVyei4iLFsxNS43NTAwMjYwNzU5LDQyLjY1LDE5LjU5OTc2LDQ1LjIzMzc3Njc2MDRdXSxCWTpbIkJlbGFydXMiLFsyMy4xOTk0OTM4NDk0LDUxLjMxOTUwMzQ4NTcsMzIuNjkzNjQzMDE5Myw1Ni4xNjkxMjk5NTA2XV0sQlo6WyJCZWxpemUiLFstODkuMjI5MTIxNjcwMywxNS44ODY5Mzc1Njc2LC04OC4xMDY4MTI5MTM4LDE4LjQ5OTk4MjIwNDddXSxCTzpbIkJvbGl2aWEiLFstNjkuNTkwNDIzNzUzNSwtMjIuODcyOTE4Nzk2NSwtNTcuNDk4MzcxMTQxMiwtOS43NjE5ODc4MDY4NV1dLEJSOlsiQnJhemlsIixbLTczLjk4NzIzNTQ4MDQsLTMzLjc2ODM3Nzc4MDksLTM0LjcyOTk5MzQ1NTUsNS4yNDQ0ODYzOTU2OV1dLEJOOlsiQnJ1bmVpIixbMTE0LjIwNDAxNjU1NSw0LjAwNzYzNjgyNywxMTUuNDUwNzEwNDg0LDUuNDQ3NzI5ODAzODldXSxCVDpbIkJodXRhbiIsWzg4LjgxNDI0ODQ4ODMsMjYuNzE5NDAyOTgxMSw5Mi4xMDM3MTE3ODU5LDI4LjI5NjQzODUwMzVdXSxCVzpbIkJvdHN3YW5hIixbMTkuODk1NDU3Nzk3OSwtMjYuODI4NTQyOTgyNywyOS40MzIxODgzNDgxLC0xNy42NjE4MTU2ODc3XV0sQ0Y6WyJDZW50cmFsIEFmcmljYW4gUmVwLiIsWzE0LjQ1OTQwNzE3OTQsMi4yNjc2Mzk2NzUzLDI3LjM3NDIyNjEwODUsMTEuMTQyMzk1MTI3OF1dLENBOlsiQ2FuYWRhIixbLTE0MC45OTc3OCw0MS42NzUxMDUwODg5LC01Mi42NDgwOTg3MjA5LDgzLjIzMzI0XV0sQ0g6WyJTd2l0emVybGFuZCIsWzYuMDIyNjA5NDkwNTksNDUuNzc2OTQ3NzQwMywxMC40NDI3MDE0NTAyLDQ3LjgzMDgyNzU0MTddXSxDTDpbIkNoaWxlIixbLTc1LjY0NDM5NTMxMTIsLTU1LjYxMTgzLC02Ni45NTk5MiwtMTcuNTgwMDExODk1NF1dLENOOlsiQ2hpbmEiLFs3My42NzUzNzkyNjYzLDE4LjE5NzcwMDkxNCwxMzUuMDI2MzExNDc3LDUzLjQ1ODgwNDQyOTddXSxDSTpbIkl2b3J5IENvYXN0IixbLTguNjAyODgwMjE0ODcsNC4zMzgyODg0NzkwMiwtMi41NjIxODk1MDAzMywxMC41MjQwNjA3NzcyXV0sQ006WyJDYW1lcm9vbiIsWzguNDg4ODE1NTQ1MjksMS43Mjc2NzI2MzQyOCwxNi4wMTI4NTI0MTA2LDEyLjg1OTM5NjI2NzFdXSxDRDpbIkNvbmdvIFtLaW5zaGFzYV0iLFsxMi4xODIzMzY4NjY5LC0xMy4yNTcyMjY2NTc4LDMxLjE3NDE0OTIwNDIsNS4yNTYwODc3NTQ3NF1dLENHOlsiQ29uZ28gW0JyYXp6YXZpbGxlXSIsWzExLjA5Mzc3MjgyMDcsLTUuMDM3OTg2NzQ4ODgsMTguNDUzMDY1MjE5OCwzLjcyODE5NjUxOTM4XV0sQ086WyJDb2xvbWJpYSIsWy03OC45OTA5MzUyMjgyLC00LjI5ODE4Njk0NDE5LC02Ni44NzYzMjU4NTMxLDEyLjQzNzMwMzE2ODJdXSxDUjpbIkNvc3RhIFJpY2EiLFstODUuOTQxNzI1NDMsOC4yMjUwMjc5ODA5OSwtODIuNTQ2MTk2MjU1MiwxMS4yMTcxMTkyNDg5XV0sQ1U6WyJDdWJhIixbLTg0Ljk3NDkxMTA1ODMsMTkuODU1NDgwODYxOSwtNzQuMTc4MDI0ODY4NSwyMy4xODg2MTA3NDQ3XV0sQ1k6WyJDeXBydXMiLFszMi4yNTY2NjcxMDc5LDM0LjU3MTg2OTQxMTgsMzQuMDA0ODgwODEyMywzNS4xNzMxMjQ3MDE1XV0sQ1o6WyJDemVjaCBSZXAuIixbMTIuMjQwMTExMTE4Miw0OC41NTUzMDUyODQyLDE4Ljg1MzE0NDE1ODYsNTEuMTE3MjY3NzY3OV1dLERFOlsiR2VybWFueSIsWzUuOTg4NjU4MDc0NTgsNDcuMzAyNDg3Njk3OSwxNS4wMTY5OTU4ODM5LDU0Ljk4MzEwNDE1M11dLERKOlsiRGppYm91dGkiLFs0MS42NjE3NiwxMC45MjY4Nzg1NjY5LDQzLjMxNzg1MjQxMDcsMTIuNjk5NjM4NTc2N11dLERLOlsiRGVubWFyayIsWzguMDg5OTc2ODQwODYsNTQuODAwMDE0NTUzNCwxMi42OTAwMDYxMzc4LDU3LjczMDAxNjU4OF1dLERPOlsiRG9taW5pY2FuIFJlcC4iLFstNzEuOTQ1MTEyMDY3MywxNy41OTg1NjQzNTgsLTY4LjMxNzk0MzI4NDgsMTkuODg0OTEwNTkwMV1dLERaOlsiQWxnZXJpYSIsWy04LjY4NDM5OTc4NjgxLDE5LjA1NzM2NDIwMzQsMTEuOTk5NTA1NjQ5NSwzNy4xMTgzODA2NDIyXV0sRUM6WyJFY3VhZG9yIixbLTgwLjk2Nzc2NTQ2OTEsLTQuOTU5MTI4NTEzMjEsLTc1LjIzMzcyMjcwMzcsMS4zODA5MjM3NzM2XV0sRUc6WyJFZ3lwdCIsWzI0LjcwMDA3LDIyLDM2Ljg2NjIzLDMxLjU4NTY4XV0sRVI6WyJFcml0cmVhIixbMzYuMzIzMTg4OTE3OCwxMi40NTU0MTU3NTc3LDQzLjA4MTIyNjAyNzIsMTcuOTk4MzA3NF1dLEVTOlsiU3BhaW4iLFstOS4zOTI4ODM2NzM1MywzNS45NDY4NTAwODQsMy4wMzk0ODQwODM2OCw0My43NDgzMzc3MTQyXV0sRUU6WyJFc3RvbmlhIixbMjMuMzM5Nzk1MzYzMSw1Ny40NzQ1MjgzMDY3LDI4LjEzMTY5OTI1MzEsNTkuNjExMDkwMzk5OF1dLEVUOlsiRXRoaW9waWEiLFszMi45NTQxOCwzLjQyMjA2LDQ3Ljc4OTQyLDE0Ljk1OTQzXV0sRkk6WyJGaW5sYW5kIixbMjAuNjQ1NTkyODg5MSw1OS44NDYzNzMxOTYsMzEuNTE2MDkyMTU2Nyw3MC4xNjQxOTMwMjAzXV0sRko6WyJGaWppIixbLTE4MCwtMTguMjg3OTksMTgwLC0xNi4wMjA4ODIyNTY3XV0sRks6WyJGYWxrbGFuZCBJcy4iLFstNjEuMiwtNTIuMywtNTcuNzUsLTUxLjFdXSxGUjpbIkZyYW5jZSIsWy01NC41MjQ3NTQxOTc4LDIuMDUzMzg5MTg3MDIsOS41NjAwMTYzMTAyNyw1MS4xNDg1MDYxNzEzXV0sR0E6WyJHYWJvbiIsWzguNzk3OTk1NjM5NjksLTMuOTc4ODI2NTkyNjMsMTQuNDI1NDU1NzYzNCwyLjMyNjc1NzUxMzg0XV0sR0I6WyJVbml0ZWQgS2luZ2RvbSIsWy03LjU3MjE2NzkzNDU5LDQ5Ljk1OTk5OTkwNSwxLjY4MTUzMDc5NTkxLDU4LjYzNTAwMDEwODVdXSxHRTpbIkdlb3JnaWEiLFszOS45NTUwMDg1NzkzLDQxLjA2NDQ0NDY4ODUsNDYuNjM3OTA4MTU2MSw0My41NTMxMDQxNTNdXSxHSDpbIkdoYW5hIixbLTMuMjQ0MzcwMDgzMDEsNC43MTA0NjIxNDQzOCwxLjA2MDEyMTY5NzYsMTEuMDk4MzQwOTY5M11dLEdOOlsiR3VpbmVhIixbLTE1LjEzMDMxMTI0NTIsNy4zMDkwMzczODA0LC03LjgzMjEwMDM4OTAyLDEyLjU4NjE4Mjk2OTZdXSxHTTpbIkdhbWJpYSIsWy0xNi44NDE1MjQ2MjQxLDEzLjEzMDI4NDEyNTIsLTEzLjg0NDk2MzM0NDgsMTMuODc2NDkxODA3NV1dLEdXOlsiR3VpbmVhIEJpc3NhdSIsWy0xNi42Nzc0NTE5NTE2LDExLjA0MDQxMTY4ODcsLTEzLjcwMDQ3NjA0MDEsMTIuNjI4MTcwMDcwOF1dLEdROlsiRXEuIEd1aW5lYSIsWzkuMzA1NjEzMjM0MSwxLjAxMDExOTUzMzY5LDExLjI4NTA3ODk3MywyLjI4Mzg2NjA3NTA0XV0sR1I6WyJHcmVlY2UiLFsyMC4xNTAwMTU5MDM0LDM0LjkxOTk4NzY5NzksMjYuNjA0MTk1NTkwOSw0MS44MjY5MDQ2MDg3XV0sR0w6WyJHcmVlbmxhbmQiLFstNzMuMjk3LDYwLjAzNjc2LC0xMi4yMDg1NSw4My42NDUxM11dLEdUOlsiR3VhdGVtYWxhIixbLTkyLjIyOTI0ODYyMzQsMTMuNzM1MzM3NjMyNywtODguMjI1MDIyNzUyNiwxNy44MTkzMjYwNzY3XV0sR1k6WyJHdXlhbmEiLFstNjEuNDEwMzAyOTAzOSwxLjI2ODA4ODI4MzY5LC01Ni41MzkzODU3NDg5LDguMzY3MDM0ODE2OTJdXSxITjpbIkhvbmR1cmFzIixbLTg5LjM1MzMyNTk3NTMsMTIuOTg0Njg1Nzc3MiwtODMuMTQ3MjE5MDAxLDE2LjAwNTQwNTc4ODZdXSxIUjpbIkNyb2F0aWEiLFsxMy42NTY5NzU1Mzg4LDQyLjQ3OTk5MTM2LDE5LjM5MDQ3NTcwMTYsNDYuNTAzNzUwOTIyMl1dLEhUOlsiSGFpdGkiLFstNzQuNDU4MDMzNjE2OCwxOC4wMzA5OTI3NDM0LC03MS42MjQ4NzMyMTY0LDE5LjkxNTY4MzkwNTVdXSxIVTpbIkh1bmdhcnkiLFsxNi4yMDIyOTgyMTEzLDQ1Ljc1OTQ4MTEwNjEsMjIuNzEwNTMxNDQ3LDQ4LjYyMzg1NDA3MTZdXSxJRDpbIkluZG9uZXNpYSIsWzk1LjI5MzAyNjE1NzYsLTEwLjM1OTk4NzQ4MTMsMTQxLjAzMzg1MTc2LDUuNDc5ODIwODY4MzRdXSxJTjpbIkluZGlhIixbNjguMTc2NjQ1MTM1NCw3Ljk2NTUzNDc3NjIzLDk3LjQwMjU2MTQ3NjYsMzUuNDk0MDA5NTA3OF1dLElFOlsiSXJlbGFuZCIsWy05Ljk3NzA4NTc0MDU5LDUxLjY2OTMwMTI1NTksLTYuMDMyOTg1Mzk4NzgsNTUuMTMxNjIyMjE5NV1dLElSOlsiSXJhbiIsWzQ0LjEwOTIyNTI5NDgsMjUuMDc4MjM3MDA2MSw2My4zMTY2MzE3MDc2LDM5LjcxMzAwMjYzMTJdXSxJUTpbIklyYXEiLFszOC43OTIzNDA1MjkxLDI5LjA5OTAyNTE3MzUsNDguNTY3OTcxMjI1OCwzNy4zODUyNjM1NzY4XV0sSVM6WyJJY2VsYW5kIixbLTI0LjMyNjE4NDA0NzksNjMuNDk2MzgyOTYxNywtMTMuNjA5NzMyMjI1LDY2LjUyNjc5MjMwNDFdXSxJTDpbIklzcmFlbCIsWzM0LjI2NTQzMzM4MzksMjkuNTAxMzI2MTk4OCwzNS44MzYzOTY5MjU2LDMzLjI3NzQyNjQ1OTNdXSxJVDpbIkl0YWx5IixbNi43NDk5NTUyNzUxLDM2LjYxOTk4NzI5MSwxOC40ODAyNDcwMjMyLDQ3LjExNTM5MzE3NDhdXSxKTTpbIkphbWFpY2EiLFstNzguMzM3NzE5Mjg1OCwxNy43MDExMTYyMzc5LC03Ni4xOTk2NTg1NzYxLDE4LjUyNDIxODQ1MTRdXSxKTzpbIkpvcmRhbiIsWzM0LjkyMjYwMjU3MzQsMjkuMTk3NDk0NjE1MiwzOS4xOTU0NjgzNzc0LDMzLjM3ODY4NjQyODRdXSxKUDpbIkphcGFuIixbMTI5LjQwODQ2MzE2OSwzMS4wMjk1NzkxNjkyLDE0NS41NDMxMzcyNDIsNDUuNTUxNDgzNDY2Ml1dLEtaOlsiS2F6YWtoc3RhbiIsWzQ2LjQ2NjQ0NTc1MzgsNDAuNjYyMzI0NTMwNiw4Ny4zNTk5NzAzMzA4LDU1LjM4NTI1MDE0OTFdXSxLRTpbIktlbnlhIixbMzMuODkzNTY4OTY5NywtNC42NzY3Nyw0MS44NTUwODMwOTI2LDUuNTA2XV0sS0c6WyJLeXJneXpzdGFuIixbNjkuNDY0ODg2OTE2LDM5LjI3OTQ2MzIwMjUsODAuMjU5OTkwMjY4OSw0My4yOTgzMzkzNDE4XV0sS0g6WyJDYW1ib2RpYSIsWzEwMi4zNDgwOTk0LDEwLjQ4NjU0MzY4NzQsMTA3LjYxNDU0Nzk2OCwxNC41NzA1ODM4MDc4XV0sS1I6WyJTLiBLb3JlYSIsWzEyNi4xMTczOTc5MDMsMzQuMzkwMDQ1ODg0NywxMjkuNDY4MzA0NDc4LDM4LjYxMjI0Mjk0NjldXSxLVzpbIkt1d2FpdCIsWzQ2LjU2ODcxMzQxMzMsMjguNTI2MDYyNzMwNCw0OC40MTYwOTQxOTEzLDMwLjA1OTA2OTkzMjZdXSxMQTpbIkxhb3MiLFsxMDAuMTE1OTg3NTgzLDEzLjg4MTA5MTAxLDEwNy41NjQ1MjUxODEsMjIuNDY0NzUzMTE5NF1dLExCOlsiTGViYW5vbiIsWzM1LjEyNjA1MjY4NzMsMzMuMDg5MDQwMDI1NCwzNi42MTE3NTAxMTU3LDM0LjY0NDkxNDA0ODhdXSxMUjpbIkxpYmVyaWEiLFstMTEuNDM4Nzc5NDY2Miw0LjM1NTc1NTExMzEzLC03LjUzOTcxNTEzNTExLDguNTQxMDU1MjAyNjddXSxMWTpbIkxpYnlhIixbOS4zMTk0MTA4NDE1MiwxOS41ODA0NywyNS4xNjQ4MiwzMy4xMzY5OTU3NTQ1XV0sTEs6WyJTcmkgTGFua2EiLFs3OS42OTUxNjY4NjM5LDUuOTY4MzY5ODU5MjMsODEuNzg3OTU5MDE4OSw5LjgyNDA3NzY2MzYxXV0sTFM6WyJMZXNvdGhvIixbMjYuOTk5MjYxOTE1OCwtMzAuNjQ1MTA1ODg5NiwyOS4zMjUxNjY0NTY4LC0yOC42NDc1MDE3MjI5XV0sTFQ6WyJMaXRodWFuaWEiLFsyMS4wNTU4MDA0MDg2LDUzLjkwNTcwMjIxNjIsMjYuNTg4Mjc5MjQ5OCw1Ni4zNzI1MjgzODgxXV0sTFU6WyJMdXhlbWJvdXJnIixbNS42NzQwNTE5NTQ3OCw0OS40NDI2NjcxNDEzLDYuMjQyNzUxMDkyMTYsNTAuMTI4MDUxNjYyOF1dLExWOlsiTGF0dmlhIixbMjEuMDU1ODAwNDA4Niw1NS42MTUxMDY5MiwyOC4xNzY3MDk0MjU2LDU3Ljk3MDE1Njk2ODhdXSxNQTpbIk1vcm9jY28iLFstMTcuMDIwNDI4NDMyNywyMS40MjA3MzQxNTc4LC0xLjEyNDU1MTE1Mzk3LDM1Ljc1OTk4ODEwNDhdXSxNRDpbIk1vbGRvdmEiLFsyNi42MTkzMzY3ODU2LDQ1LjQ4ODI4MzE4OTUsMzAuMDI0NjU4NjQ0Myw0OC40NjcxMTk0NTI1XV0sTUc6WyJNYWRhZ2FzY2FyIixbNDMuMjU0MTg3MDQ2MSwtMjUuNjAxNDM0NDIxNSw1MC40NzY1MzY4OTk2LC0xMi4wNDA1NTY3MzU5XV0sTVg6WyJNZXhpY28iLFstMTE3LjEyNzc2LDE0LjUzODgyODY0MDIsLTg2LjgxMTk4MjM4OCwzMi43MjA4M11dLE1LOlsiTWFjZWRvbmlhIixbMjAuNDYzMTUsNDAuODQyNzI2OTU1NywyMi45NTIzNzcxNTAyLDQyLjMyMDI1OTUwNzhdXSxNTDpbIk1hbGkiLFstMTIuMTcwNzUwMjkxNCwxMC4wOTYzNjA3ODU0LDQuMjcwMjA5OTk1MTQsMjQuOTc0NTc0MDgyOV1dLE1NOlsiTXlhbm1hciIsWzkyLjMwMzIzNDQ5MDksOS45MzI5NTk5MDY0NSwxMDEuMTgwMDA1MzI0LDI4LjMzNTk0NTEzNl1dLE1FOlsiTW9udGVuZWdybyIsWzE4LjQ1LDQxLjg3NzU1LDIwLjMzOTgsNDMuNTIzODRdXSxNTjpbIk1vbmdvbGlhIixbODcuNzUxMjY0Mjc2MSw0MS41OTc0MDk1NzI5LDExOS43NzI4MjM5MjgsNTIuMDQ3MzY2MDM0NV1dLE1aOlsiTW96YW1iaXF1ZSIsWzMwLjE3OTQ4MTIzNTUsLTI2Ljc0MjE5MTY2NDMsNDAuNzc1NDc1Mjk0OCwtMTAuMzE3MDk2MDQyNV1dLE1SOlsiTWF1cml0YW5pYSIsWy0xNy4wNjM0MjMyMjQzLDE0LjYxNjgzNDIxNDcsLTQuOTIzMzM3MzY4MTcsMjcuMzk1NzQ0MTI2OV1dLE1XOlsiTWFsYXdpIixbMzIuNjg4MTY1MzE3NSwtMTYuODAxMjk5NzM3MiwzNS43NzE5MDQ3MzgxLC05LjIzMDU5OTA1MzU5XV0sTVk6WyJNYWxheXNpYSIsWzEwMC4wODU3NTY4NzEsLjc3MzEzMTQxNTIwMSwxMTkuMTgxOTAzOTI1LDYuOTI4MDUyODgzMzJdXSxOQTpbIk5hbWliaWEiLFsxMS43MzQxOTg4NDYxLC0yOS4wNDU0NjE5MjgsMjUuMDg0NDQzMzkzNywtMTYuOTQxMzQyODY4N11dLE5DOlsiTmV3IENhbGVkb25pYSIsWzE2NC4wMjk2MDU3NDgsLTIyLjM5OTk3NjA4ODEsMTY3LjEyMDAxMTQyOCwtMjAuMTA1NjQ1ODQ3M11dLE5FOlsiTmlnZXIiLFsuMjk1NjQ2Mzk2NDk1LDExLjY2MDE2NzE0MTIsMTUuOTAzMjQ2Njk3NywyMy40NzE2Njg0MDI2XV0sTkc6WyJOaWdlcmlhIixbMi42OTE3MDE2OTQzNiw0LjI0MDU5NDE4Mzc3LDE0LjU3NzE3Nzc2ODYsMTMuODY1OTIzOTc3MV1dLE5JOlsiTmljYXJhZ3VhIixbLTg3LjY2ODQ5MzQxNTEsMTAuNzI2ODM5MDk3NSwtODMuMTQ3MjE5MDAxLDE1LjAxNjI2NzE5ODFdXSxOTDpbIk5ldGhlcmxhbmRzIixbMy4zMTQ5NzExNDQyMyw1MC44MDM3MjEwMTUsNy4wOTIwNTMyNTY4Nyw1My41MTA0MDMzNDc0XV0sTk86WyJOb3J3YXkiLFs0Ljk5MjA3ODA3NzgzLDU4LjA3ODg4NDE4MjQsMzEuMjkzNDE4NDEsODAuNjU3MTQ0MjczNl1dLE5QOlsiTmVwYWwiLFs4MC4wODg0MjQ1MTM3LDI2LjM5Nzg5ODA1NzYsODguMTc0ODA0MzE1MSwzMC40MjI3MTY5ODY2XV0sTlo6WyJOZXcgWmVhbGFuZCIsWzE2Ni41MDkxNDQzMjIsLTQ2LjY0MTIzNTQ0NywxNzguNTE3MDkzNTQxLC0zNC40NTA2NjE3MTY1XV0sT006WyJPbWFuIixbNTIuMDAwMDA5OCwxNi42NTEwNTExMzM3LDU5LjgwODA2MDMzNzIsMjYuMzk1OTM0MzUzMV1dLFBLOlsiUGFraXN0YW4iLFs2MC44NzQyNDg0ODgyLDIzLjY5MTk2NTAzMzUsNzcuODM3NDUwNzk5NSwzNy4xMzMwMzA5MTA4XV0sUEE6WyJQYW5hbWEiLFstODIuOTY1NzgzMDQ3Miw3LjIyMDU0MTQ5MDEsLTc3LjI0MjU2NjQ5NDQsOS42MTE2MTAwMTIyNF1dLFBFOlsiUGVydSIsWy04MS40MTA5NDI1NTI0LC0xOC4zNDc5NzUzNTU3LC02OC42NjUwNzk3MTg3LC0uMDU3MjA1NDk4ODY0OV1dLFBIOlsiUGhpbGlwcGluZXMiLFsxMTcuMTc0Mjc0NTMsNS41ODEwMDMzMjI3NywxMjYuNTM3NDIzOTQ0LDE4LjUwNTIyNzM2MjVdXSxQRzpbIlBhcHVhIE5ldyBHdWluZWEiLFsxNDEuMDAwMjEwNDAzLC0xMC42NTI0NzYwODgxLDE1Ni4wMTk5NjU0NDgsLTIuNTAwMDAyMTI5NzNdXSxQTDpbIlBvbGFuZCIsWzE0LjA3NDUyMTExMTcsNDkuMDI3Mzk1MzMxNCwyNC4wMjk5ODU3OTI3LDU0Ljg1MTUzNTk1NjRdXSxQUjpbIlB1ZXJ0byBSaWNvIixbLTY3LjI0MjQyNzUzNzcsMTcuOTQ2NTUzNDUzLC02NS41OTEwMDM3OTA5LDE4LjUyMDYwMTEwMTFdXSxLUDpbIk4uIEtvcmVhIixbMTI0LjI2NTYyNDYyOCwzNy42NjkwNzA1NDMsMTMwLjc4MDAwNzM1OSw0Mi45ODUzODY4Njc4XV0sUFQ6WyJQb3J0dWdhbCIsWy05LjUyNjU3MDYwMzg3LDM2LjgzODI2ODU0MSwtNi4zODkwODc2OTM3LDQyLjI4MDQ2ODY1NV1dLFBZOlsiUGFyYWd1YXkiLFstNjIuNjg1MDU3MTM1NywtMjcuNTQ4NDk5MDM3NCwtNTQuMjkyOTU5NTYwOCwtMTkuMzQyNzQ2Njc3M11dLFFBOlsiUWF0YXIiLFs1MC43NDM5MTA3NjAzLDI0LjU1NjMzMDg3ODIsNTEuNjA2NzAwNDczOCwyNi4xMTQ1ODIwMTc1XV0sUk86WyJSb21hbmlhIixbMjAuMjIwMTkyNDk4NSw0My42ODg0NDQ3MjkyLDI5LjYyNjU0MzQxLDQ4LjIyMDg4MTI1MjZdXSxSVTpbIlJ1c3NpYSIsWy0xODAsNDEuMTUxNDE2MTI0LDE4MCw4MS4yNTA0XV0sUlc6WyJSd2FuZGEiLFsyOS4wMjQ5MjYzODUyLC0yLjkxNzg1Nzc2MTI1LDMwLjgxNjEzNDg4MTMsLTEuMTM0NjU5MTEyMTVdXSxTQTpbIlNhdWRpIEFyYWJpYSIsWzM0LjYzMjMzNjA1MzIsMTYuMzQ3ODkxMzQzNiw1NS42NjY2NTkzNzY5LDMyLjE2MTAwODgxNl1dLFNEOlsiU3VkYW4iLFsyMS45MzY4MSw4LjYxOTcyOTcxMjkzLDM4LjQxMDA4OTk1OTUsMjJdXSxTUzpbIlMuIFN1ZGFuIixbMjMuODg2OTc5NTgwOSwzLjUwOTE3LDM1LjI5ODAwNzExODIsMTIuMjQ4MDA3NzU3MV1dLFNOOlsiU2VuZWdhbCIsWy0xNy42MjUwNDI2OTA1LDEyLjMzMjA4OTk1MiwtMTEuNDY3ODk5MTM1OCwxNi41OTgyNjM2NTgxXV0sU0I6WyJTb2xvbW9uIElzLiIsWzE1Ni40OTEzNTc4NjQsLTEwLjgyNjM2NzI4MjgsMTYyLjM5ODY0NTg2OCwtNi41OTkzMzg0NzQxNV1dLFNMOlsiU2llcnJhIExlb25lIixbLTEzLjI0NjU1MDI1ODgsNi43ODU5MTY4NTYzMSwtMTAuMjMwMDkzNTUzMSwxMC4wNDY5ODM5NTQzXV0sU1Y6WyJFbCBTYWx2YWRvciIsWy05MC4wOTU1NTQ1NzIzLDEzLjE0OTAxNjgzMTksLTg3LjcyMzUwMjk3NzIsMTQuNDI0MTMyNzk4N11dLFNPOlsiU29tYWxpYSIsWzQwLjk4MTA1LC0xLjY4MzI1LDUxLjEzMzg3LDEyLjAyNDY0XV0sUlM6WyJTZXJiaWEiLFsxOC44Mjk4Miw0Mi4yNDUyMjQzOTcxLDIyLjk4NjAxODUwNzYsNDYuMTcxNzI5ODQ0N11dLFNSOlsiU3VyaW5hbWUiLFstNTguMDQ0Njk0MzgzNCwxLjgxNzY2NzE0MTEyLC01My45NTgwNDQ2MDMxLDYuMDI1MjkxNDQ5NF1dLFNLOlsiU2xvdmFraWEiLFsxNi44Nzk5ODI5NDQ0LDQ3Ljc1ODQyODg2MDEsMjIuNTU4MTM3NjQ4Miw0OS41NzE1NzQwMDE3XV0sU0k6WyJTbG92ZW5pYSIsWzEzLjY5ODEwOTk3ODksNDUuNDUyMzE2MzkyNiwxNi41NjQ4MDgzODM5LDQ2Ljg1MjM4NTk3MjddXSxTRTpbIlN3ZWRlbiIsWzExLjAyNzM2ODYwNTIsNTUuMzYxNzM3MzcyNSwyMy45MDMzNzg1MzM2LDY5LjEwNjI0NzI2MDJdXSxTWjpbIlN3YXppbGFuZCIsWzMwLjY3NjYwODUxNDEsLTI3LjI4NTg3OTQwODUsMzIuMDcxNjY1NDgwMywtMjUuNjYwMTkwNTI1XV0sU1k6WyJTeXJpYSIsWzM1LjcwMDc5Nzk2NzMsMzIuMzEyOTM3NTI3LDQyLjM0OTU5MTA5ODgsMzcuMjI5ODcyNTQ0OV1dLFREOlsiQ2hhZCIsWzEzLjU0MDM5MzUwNzYsNy40MjE5MjQ1NDY3NCwyMy44ODY4OSwyMy40MDk3Ml1dLFRHOlsiVG9nbyIsWy0uMDQ5Nzg0NzE1MTU5OSw1LjkyODgzNzM4ODUzLDEuODY1MjQwNTEyNzEsMTEuMDE4NjgxNzQ4OV1dLFRIOlsiVGhhaWxhbmQiLFs5Ny4zNzU4OTY0Mzc2LDUuNjkxMzg0MTgyMTUsMTA1LjU4OTAzODUyNywyMC40MTc4NDk2MzYzXV0sVEo6WyJUYWppa2lzdGFuIixbNjcuNDQyMjE5Njc5NiwzNi43MzgxNzEyOTE2LDc0Ljk4MDAwMjQ3NTksNDAuOTYwMjEzMzI0NV1dLFRNOlsiVHVya21lbmlzdGFuIixbNTIuNTAyNDU5NzUxMiwzNS4yNzA2NjM5Njc0LDY2LjU0NjE1MDM0MzcsNDIuNzUxNTUxMDExN11dLFRMOlsiRWFzdCBUaW1vciIsWzEyNC45Njg2ODI0ODksLTkuMzkzMTczMTA5NTgsMTI3LjMzNTkyODE3NiwtOC4yNzMzNDQ4MjE4MV1dLFRUOlsiVHJpbmlkYWQgYW5kIFRvYmFnbyIsWy02MS45NSwxMCwtNjAuODk1LDEwLjg5XV0sVE46WyJUdW5pc2lhIixbNy41MjQ0ODE2NDIyOSwzMC4zMDc1NTYwNTcyLDExLjQ4ODc4NzQ2OTEsMzcuMzQ5OTk0NDExOF1dLFRSOlsiVHVya2V5IixbMjYuMDQzMzUxMjcxMywzNS44MjE1MzQ3MzU3LDQ0Ljc5Mzk4OTY5OTEsNDIuMTQxNDg0ODkwM11dLFRXOlsiVGFpd2FuIixbMTIwLjEwNjE4ODU5MywyMS45NzA1NzEzOTc0LDEyMS45NTEyNDM5MzEsMjUuMjk1NDU4ODg5M11dLFRaOlsiVGFuemFuaWEiLFsyOS4zMzk5OTc1OTI5LC0xMS43MjA5MzgwMDIyLDQwLjMxNjU5LC0uOTVdXSxVRzpbIlVnYW5kYSIsWzI5LjU3OTQ2NjE4MDEsLTEuNDQzMzIyNDQyMjMsMzUuMDM1OTksNC4yNDk4ODQ5NDczNl1dLFVBOlsiVWtyYWluZSIsWzIyLjA4NTYwODM1MTMsNDQuMzYxNDc4NTgzMyw0MC4wODA3ODkwMTU1LDUyLjMzNTA3NDU3MTNdXSxVWTpbIlVydWd1YXkiLFstNTguNDI3MDc0MTQ0MSwtMzQuOTUyNjQ2NTc5NywtNTMuMjA5NTg4OTk2LC0zMC4xMDk2ODYzNzQ2XV0sVVM6WyJVbml0ZWQgU3RhdGVzIixbLTE3MS43OTExMTA2MDMsMTguOTE2MTksLTY2Ljk2NDY2LDcxLjM1Nzc2MzU3NjldXSxVWjpbIlV6YmVraXN0YW4iLFs1NS45Mjg5MTcyNzA3LDM3LjE0NDk5NDAwNDksNzMuMDU1NDE3MTA4LDQ1LjU4NjgwNDMwNzZdXSxWRTpbIlZlbmV6dWVsYSIsWy03My4zMDQ5NTE1NDQ5LC43MjQ0NTIyMTU5ODIsLTU5Ljc1ODI4NDg3ODIsMTIuMTYyMzA3MDMzN11dLFZOOlsiVmlldG5hbSIsWzEwMi4xNzA0MzU4MjYsOC41OTk3NTk2Mjk3NSwxMDkuMzM1MjY5ODEsMjMuMzUyMDYzMzAwMV1dLFZVOlsiVmFudWF0dSIsWzE2Ni42MjkxMzY5OTgsLTE2LjU5Nzg0OTYyMzMsMTY3Ljg0NDg3Njc0NCwtMTQuNjI2NDk3MDg0Ml1dLFBTOlsiV2VzdCBCYW5rIixbMzQuOTI3NDA4NDgxNiwzMS4zNTM0MzUzNzA0LDM1LjU0NTY2NTMxNzUsMzIuNTMyNTEwNjg3OF1dLFlFOlsiWWVtZW4iLFs0Mi42MDQ4NzI2NzQzLDEyLjU4NTk1MDQyNTcsNTMuMTA4NTcyNjI1NSwxOS4wMDAwMDMzNjM1XV0sWkE6WyJTb3V0aCBBZnJpY2EiLFsxNi4zNDQ5NzY4NDA5LC0zNC44MTkxNjYzNTUxLDMyLjgzMDEyMDQ3NywtMjIuMDkxMzEyNzU4MV1dLFpNOlsiWmFtYmlhIixbMjEuODg3ODQyNjQ1LC0xNy45NjEyMjg5MzY0LDMzLjQ4NTY4NzY5NzEsLTguMjM4MjU2NTI0MjldXSxaVzpbIlppbWJhYndlIixbMjUuMjY0MjI1NzAxNiwtMjIuMjcxNjExODMwMywzMi44NDk4NjA4NzQyLC0xNS41MDc3ODY5NjA1XV19LHdpbmRvdy5VVElMUz13aW5kb3cuVVRJTFN8fHt9LHdpbmRvdy5VVElMUy5jb29raWVDb25zZW50PXt9LHdpbmRvdy5VVElMUy5jb29raWVDb25zZW50LmFjY2VwdGVkPWZ1bmN0aW9uKGUpe3ZhciBpPXdpbmRvdy5VVElMUy5jb29raWVDb25zZW50Ll9nZXRDb29raWVEYXRhKCk7cmV0dXJuISFpJiYhIWkuY3NbZV0mJiJhIj09PWkuY3NbZV0uYX0sd2luZG93LlVUSUxTLmNvb2tpZUNvbnNlbnQuX2dldENvb2tpZURhdGE9ZnVuY3Rpb24oKXt2YXIgZSxpO3JldHVybiB3aW5kb3cuVVRJTFMuY29va2llQ29uc2VudC5fY29va2llRGF0YXx8KDI9PT0oaT0oIjsgIitkb2N1bWVudC5jb29raWUpLnNwbGl0KCI7IGNvbnNlbnQ9IikpLmxlbmd0aCYmKGU9aS5wb3AoKS5zcGxpdCgiOyIpLnNoaWZ0KCksZT1kZWNvZGVVUklDb21wb25lbnQoZSksZT1hdG9iKGUpLGU9SlNPTi5wYXJzZShlKSksd2luZG93LlVUSUxTLmNvb2tpZUNvbnNlbnQuX2Nvb2tpZURhdGE9ZSl9LGZ1bmN0aW9uKGksYSl7InVzZSBzdHJpY3QiO3ZhciBuPWkuZG9jdW1lbnQsdD1pLlVUSUxTLG89e2NvbW1vbjp7aW5pdDpmdW5jdGlvbigpe3ZhciBlO3QudW5vYmZ1c2NhdGVFbWFpbHMoKSx0LmxpbmtzVGFyZ2V0QmxhbmsoKSx0LmZvcm1IaW50cygpLHQuaW5pdFN3aXBlcigpLGEoIi5qcy1kcm9wZG93bi1zZWxlY3QiKS5uZXh0KCIuZHJvcGRvd24tbWVudSIpLmZpbmQoIi5kcm9wZG93bi1pdGVtIikub24oImNsaWNrIixmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCksY29uc29sZS5sb2coIkNMSUNLID4pKig8Iik7dmFyIGU9IiIsaT1hKHRoaXMpLmNsb3Nlc3QoIi5kcm9wZG93bi1tZW51IikuYXR0cigiYXJpYS1sYWJlbGxlZGJ5IiksdD1hKCIjIitpKSxuPXQudmFsKCksaT1hKCIjIitpKyJfaGlkZGVuIik7YSh0aGlzKS5kYXRhKCJpbWFnZSIpJiYoZSs9JzxpbWcgY2xhc3M9InNlbGVjdGVkLWl0ZW0tdGh1bWJuYWlsIiBzcmM9IicrYSh0aGlzKS5kYXRhKCJpbWFnZSIpKyciIHdpZHRoPSIzMCIgaGVpZ2h0PSIyMCI+JyksYSh0aGlzKS5kYXRhKCJ0aXRsZSIpJiYoZSs9YSh0aGlzKS5kYXRhKCJ0aXRsZSIpKSxhKHRoaXMpLmRhdGEoImRlc2NyaXB0aW9uIikmJihlKz0nIDxzbWFsbCBjbGFzcz0idGV4dC1tdXRlZCI+JythKHRoaXMpLmRhdGEoImRlc2NyaXB0aW9uIikrIjwvc21hbGw+IiksdC5odG1sKGUpLHQudmFsKGEodGhpcykuZGF0YSgidmFsdWUiKSksaS52YWwoYSh0aGlzKS5kYXRhKCJ2YWx1ZSIpKSx0LnZhbCgpIT09biYmdC50cmlnZ2VyKCJjaGFuZ2UiKX0pLGEoIi5qcy1sb2NhdG9yIikmJihlPW5ldyB0LkxvY2F0b3Ioe30pLGkubG9jYXRvcj1lKSxhKCIjaGVhZGVyX19tZW51LXRvZ2dsZSIpLm9uKCJjbGljayIsZnVuY3Rpb24oZSl7ZS5wcmV2ZW50RGVmYXVsdCgpLGEoIiNqcy1oZWFkZXItLW1haW4iKS50b2dnbGVDbGFzcygibWVudS1vcGVuIil9KSxhKCIubmF2LS1tb2JpbGUgYTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksIC5qcy0tY2xvc2UtbW9iaWxlLW5hdiIpLm9uKCJjbGljayIsZnVuY3Rpb24oZSl7YSgiI2pzLWhlYWRlci0tbWFpbiIpLnRvZ2dsZUNsYXNzKCJtZW51LW9wZW4iKSxhKGUuY3VycmVudFRhcmdldCkuaXMoYSgiLmpzLS1jbG9zZS1tb2JpbGUtbmF2IikpJiZlLnByZXZlbnREZWZhdWx0KCl9KSxhKCIubmF2LS1zZWFyY2ggbGkuZHJvcGRvd24iKS5vbigic2hvd24uYnMuZHJvcGRvd24iLGZ1bmN0aW9uKCl7YSh0aGlzKS5maW5kKCIuZm9ybS1jb250cm9sW25hbWU9J3EnXSIpLmZvY3VzKCl9KSxuLnF1ZXJ5U2VsZWN0b3IoIltkYXRhLXNlbGVjdF9ib3hfd2l0aF9zZWFyY2hpbmc9J3llcyddIikmJmEuZWFjaChhKCJbZGF0YS1zZWxlY3RfYm94X3dpdGhfc2VhcmNoaW5nPSd5ZXMnXSIpLGZ1bmN0aW9uKGUsaSl7dmFyIHQ9e30sbj1hKGkpLmF0dHIoImRhdGEtbWVzc2FnZV9ub3RoaW5nX2ZvdW5kIik7YShpKS5jc3MoIndpZHRoIiwiMTAwJSIpLG4mJih0Lmxhbmd1YWdlPXtub1Jlc3VsdHM6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KSxhKGkpLnNlbGVjdDIodCl9KX19LG1haW46e2luaXQ6ZnVuY3Rpb24oKXt9fSxsb2dpbnM6e2NyZWF0ZV9uZXc6ZnVuY3Rpb24oKXtuLmdldEVsZW1lbnRCeUlkKCJpZF9sb2dpbiIpLmZvY3VzKCl9fSx1c2Vyczp7aW5pdDpmdW5jdGlvbigpe30sY3JlYXRlX25ldzpmdW5jdGlvbigpe3QubG9naW5BdmFsaWFiaWxpdHlDaGVja2VyKCl9fSxwYWdlczp7ZGV0YWlsOmZ1bmN0aW9uKCl7fX0sYXBpOntjb21tb246e2luaXQ6ZnVuY3Rpb24oKXt0LnVub2JmdXNjYXRlRW1haWxzKCksdC5saW5rc1RhcmdldEJsYW5rKCksdC5mb3JtSGludHMoKX19fSxJTklUSUFMSVpFUjp7ZXhlYzpmdW5jdGlvbihlLGksdCl7dmFyIG49bztlJiYwPGUubGVuZ3RoJiZuW2VdJiYobj1uW2VdKSx2b2lkIDA9PT10JiYodD0iaW5pdCIpLCIiIT09aSYmbltpXSYmImZ1bmN0aW9uIj09dHlwZW9mIG5baV1bdF0mJm5baV1bdF0oKX0saW5pdDpmdW5jdGlvbigpe3ZhciBlPW4uYm9keSxpPWUuZ2V0QXR0cmlidXRlKCJkYXRhLW5hbWVzcGFjZSIpLHQ9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtY29udHJvbGxlciIpLGU9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtYWN0aW9uIik7by5JTklUSUFMSVpFUi5leGVjKGksImNvbW1vbiIpLG8uSU5JVElBTElaRVIuZXhlYyhpLHQpLG8uSU5JVElBTElaRVIuZXhlYyhpLHQsZSl9fX07KGkuQVBQTElDQVRJT049bykuSU5JVElBTElaRVIuaW5pdCgpfSh3aW5kb3csd2luZG93LmpRdWVyeSk7Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPWFwcGxpY2F0aW9uLm1pbi5qcy5tYXAK"}},"time_used":87,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":87,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/@googlemaps/markerclustererplus/dist/index.min.js","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.742Z","timestamp":1785161166742,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/@googlemaps/markerclustererplus/dist/index.min.js HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: application/javascript\r\ncontent-length: 15091\r\nlast-modified: Wed, 01 Feb 2023 11:40:21 GMT\r\netag: \"9d56-5f3a1e9cd351e-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":40278,"size_decoded":15387,"mime_type":"application/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (40207)","md5":"6d72ff71a3a6b58244d7336469a0d479","sha1":"b2538a481ec947ff6e0ed7ef0a1d4cdfee196bcc","sha256":"cc0b14615ea7ed660d7a101035d077229c1fb59db3f2dab02e764bf82df1ee4a","sha512":"18ef9a5e47c5d49da82c16995cc5f0d55af197576ea8ab672303b03844184a579d94356134270aea7537b71a4f6bf146d5eb5f672312f85cc5fbab72b853d36c","ssdeep":"384:31roYQGOFI2gP5kag7uJf4UZ/Uo6m4Lga5Wy9tVjVCOjHxEBWd/T/vbm2cGyrOO7:lMMXkNUZ8o6ZrLVjMW2BI62gwpLogosE","tlshash":"e603d7c9f691b0604393b1f8013f0a8af33b5c59a86a81ecf655d0e16cb994e507bf39","first_seen":"2023-03-08T13:18:30Z","last_seen":"2026-07-27T14:06:41.153742Z","times_seen":1541,"resource_available":true,"data":"dmFyIE1hcmtlckNsdXN0ZXJlcj1mdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgdCxlLHI9InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWxUaGlzP2dsb2JhbFRoaXM6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93OiJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsP2dsb2JhbDoidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/c2VsZjp7fSxuPWZ1bmN0aW9uKHQpe3RyeXtyZXR1cm4hIXQoKX1jYXRjaCh0KXtyZXR1cm4hMH19LGk9IW4oKGZ1bmN0aW9uKCl7cmV0dXJuIDchPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwxLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gN319KVsxXX0pKSxvPWZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0Lk1hdGg9PU1hdGgmJnR9LHM9bygib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMpfHxvKCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3cpfHxvKCJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZil8fG8oIm9iamVjdCI9PXR5cGVvZiByJiZyKXx8ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30oKXx8RnVuY3Rpb24oInJldHVybiB0aGlzIikoKSxhPUZ1bmN0aW9uLnByb3RvdHlwZSx1PWEuYmluZCxjPWEuY2FsbCxsPXUmJnUuYmluZChjKSxoPXU/ZnVuY3Rpb24odCl7cmV0dXJuIHQmJmwoYyx0KX06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJmZ1bmN0aW9uKCl7cmV0dXJuIGMuYXBwbHkodCxhcmd1bWVudHMpfX0scD1mdW5jdGlvbih0KXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdH0sZj1uLGc9cCxkPS8jfFwucHJvdG90eXBlXC4vLHY9ZnVuY3Rpb24odCxlKXt2YXIgcj1fW20odCldO3JldHVybiByPT1ifHxyIT15JiYoZyhlKT9mKGUpOiEhZSl9LG09di5ub3JtYWxpemU9ZnVuY3Rpb24odCl7cmV0dXJuIFN0cmluZyh0KS5yZXBsYWNlKGQsIi4iKS50b0xvd2VyQ2FzZSgpfSxfPXYuZGF0YT17fSx5PXYuTkFUSVZFPSJOIixiPXYuUE9MWUZJTEw9IlAiLHg9dixNPXtleHBvcnRzOnt9fSxTPXMuVHlwZUVycm9yLEk9ZnVuY3Rpb24odCl7aWYobnVsbD09dCl0aHJvdyBTKCJDYW4ndCBjYWxsIG1ldGhvZCBvbiAiK3QpO3JldHVybiB0fSxrPUksdz1zLk9iamVjdCxDPWZ1bmN0aW9uKHQpe3JldHVybiB3KGsodCkpfSxFPUMsTz1oKHt9Lmhhc093blByb3BlcnR5KSxQPU9iamVjdC5oYXNPd258fGZ1bmN0aW9uKHQsZSl7cmV0dXJuIE8oRSh0KSxlKX0sVD17fSxBPXAsTD1mdW5jdGlvbih0KXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIHQ/bnVsbCE9PXQ6QSh0KX0sej1MLGo9cy5kb2N1bWVudCxSPXooaikmJnooai5jcmVhdGVFbGVtZW50KSxOPWZ1bmN0aW9uKHQpe3JldHVybiBSP2ouY3JlYXRlRWxlbWVudCh0KTp7fX0sQj1OLFo9IWkmJiFuKChmdW5jdGlvbigpe3JldHVybiA3IT1PYmplY3QuZGVmaW5lUHJvcGVydHkoQigiZGl2IiksImEiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gN319KS5hfSkpLEY9cyxEPUwsSD1GLlN0cmluZywkPUYuVHlwZUVycm9yLEc9ZnVuY3Rpb24odCl7aWYoRCh0KSlyZXR1cm4gdDt0aHJvdyAkKEgodCkrIiBpcyBub3QgYW4gb2JqZWN0Iil9LFY9RnVuY3Rpb24ucHJvdG90eXBlLmNhbGwsVT1WLmJpbmQ/Vi5iaW5kKFYpOmZ1bmN0aW9uKCl7cmV0dXJuIFYuYXBwbHkoVixhcmd1bWVudHMpfSxXPXMsWD1wLFk9ZnVuY3Rpb24odCl7cmV0dXJuIFgodCk/dDp2b2lkIDB9LEs9ZnVuY3Rpb24odCxlKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDwyP1koV1t0XSk6V1t0XSYmV1t0XVtlXX0scT1oKHt9LmlzUHJvdG90eXBlT2YpLEo9cyxRPUsoIm5hdmlnYXRvciIsInVzZXJBZ2VudCIpfHwiIix0dD1KLnByb2Nlc3MsZXQ9Si5EZW5vLHJ0PXR0JiZ0dC52ZXJzaW9uc3x8ZXQmJmV0LnZlcnNpb24sbnQ9cnQmJnJ0LnY4O250JiYoZT0odD1udC5zcGxpdCgiLiIpKVswXT4wJiZ0WzBdPDQ/MTorKHRbMF0rdFsxXSkpLCFlJiZRJiYoISh0PVEubWF0Y2goL0VkZ2VcLyhcZCspLykpfHx0WzFdPj03NCkmJih0PVEubWF0Y2goL0Nocm9tZVwvKFxkKykvKSkmJihlPSt0WzFdKTt2YXIgaXQ9ZSxvdD1pdCxzdD1uLGF0PSEhT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyYmIXN0KChmdW5jdGlvbigpe3ZhciB0PVN5bWJvbCgpO3JldHVybiFTdHJpbmcodCl8fCEoT2JqZWN0KHQpaW5zdGFuY2VvZiBTeW1ib2wpfHwhU3ltYm9sLnNoYW0mJm90JiZvdDw0MX0pKSx1dD1hdCYmIVN5bWJvbC5zaGFtJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcixjdD1LLGx0PXAsaHQ9cSxwdD11dCxmdD1zLk9iamVjdCxndD1wdD9mdW5jdGlvbih0KXtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3ZhciBlPWN0KCJTeW1ib2wiKTtyZXR1cm4gbHQoZSkmJmh0KGUucHJvdG90eXBlLGZ0KHQpKX0sZHQ9cy5TdHJpbmcsdnQ9ZnVuY3Rpb24odCl7dHJ5e3JldHVybiBkdCh0KX1jYXRjaCh0KXtyZXR1cm4iT2JqZWN0In19LG10PXAsX3Q9dnQseXQ9cy5UeXBlRXJyb3IsYnQ9ZnVuY3Rpb24odCl7aWYobXQodCkpcmV0dXJuIHQ7dGhyb3cgeXQoX3QodCkrIiBpcyBub3QgYSBmdW5jdGlvbiIpfSx4dD1mdW5jdGlvbih0LGUpe3ZhciByPXRbZV07cmV0dXJuIG51bGw9PXI/dm9pZCAwOmJ0KHIpfSxNdD1VLFN0PXAsSXQ9TCxrdD1zLlR5cGVFcnJvcix3dD17ZXhwb3J0czp7fX0sQ3Q9cyxFdD1PYmplY3QuZGVmaW5lUHJvcGVydHksT3Q9ZnVuY3Rpb24odCxlKXt0cnl7RXQoQ3QsdCx7dmFsdWU6ZSxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KX1jYXRjaChyKXtDdFt0XT1lfXJldHVybiBlfSxQdD1PdCxUdD0iX19jb3JlLWpzX3NoYXJlZF9fIixBdD1zW1R0XXx8UHQoVHQse30pLEx0PUF0Oyh3dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIEx0W3RdfHwoTHRbdF09dm9pZCAwIT09ZT9lOnt9KX0pKCJ2ZXJzaW9ucyIsW10pLnB1c2goe3ZlcnNpb246IjMuMTkuMiIsbW9kZToiZ2xvYmFsIixjb3B5cmlnaHQ6IsKpIDIwMjEgRGVuaXMgUHVzaGthcmV2ICh6bG9pcm9jay5ydSkifSk7dmFyIHp0PWgsanQ9MCxSdD1NYXRoLnJhbmRvbSgpLE50PXp0KDEuLnRvU3RyaW5nKSxCdD1mdW5jdGlvbih0KXtyZXR1cm4iU3ltYm9sKCIrKHZvaWQgMD09PXQ/IiI6dCkrIilfIitOdCgrK2p0K1J0LDM2KX0sWnQ9cyxGdD13dC5leHBvcnRzLER0PVAsSHQ9QnQsJHQ9YXQsR3Q9dXQsVnQ9RnQoIndrcyIpLFV0PVp0LlN5bWJvbCxXdD1VdCYmVXQuZm9yLFh0PUd0P1V0OlV0JiZVdC53aXRob3V0U2V0dGVyfHxIdCxZdD1mdW5jdGlvbih0KXtpZighRHQoVnQsdCl8fCEkdCYmInN0cmluZyIhPXR5cGVvZiBWdFt0XSl7dmFyIGU9IlN5bWJvbC4iK3Q7JHQmJkR0KFV0LHQpP1Z0W3RdPVV0W3RdOlZ0W3RdPUd0JiZXdD9XdChlKTpYdChlKX1yZXR1cm4gVnRbdF19LEt0PVUscXQ9TCxKdD1ndCxRdD14dCx0ZT1mdW5jdGlvbih0LGUpe3ZhciByLG47aWYoInN0cmluZyI9PT1lJiZTdChyPXQudG9TdHJpbmcpJiYhSXQobj1NdChyLHQpKSlyZXR1cm4gbjtpZihTdChyPXQudmFsdWVPZikmJiFJdChuPU10KHIsdCkpKXJldHVybiBuO2lmKCJzdHJpbmciIT09ZSYmU3Qocj10LnRvU3RyaW5nKSYmIUl0KG49TXQocix0KSkpcmV0dXJuIG47dGhyb3cga3QoIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZSIpfSxlZT1ZdCxyZT1zLlR5cGVFcnJvcixuZT1lZSgidG9QcmltaXRpdmUiKSxpZT1mdW5jdGlvbih0LGUpe2lmKCFxdCh0KXx8SnQodCkpcmV0dXJuIHQ7dmFyIHIsbj1RdCh0LG5lKTtpZihuKXtpZih2b2lkIDA9PT1lJiYoZT0iZGVmYXVsdCIpLHI9S3Qobix0LGUpLCFxdChyKXx8SnQocikpcmV0dXJuIHI7dGhyb3cgcmUoIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZSIpfXJldHVybiB2b2lkIDA9PT1lJiYoZT0ibnVtYmVyIiksdGUodCxlKX0sb2U9aWUsc2U9Z3QsYWU9ZnVuY3Rpb24odCl7dmFyIGU9b2UodCwic3RyaW5nIik7cmV0dXJuIHNlKGUpP2U6ZSsiIn0sdWU9aSxjZT1aLGxlPUcsaGU9YWUscGU9cy5UeXBlRXJyb3IsZmU9T2JqZWN0LmRlZmluZVByb3BlcnR5O1QuZj11ZT9mZTpmdW5jdGlvbih0LGUscil7aWYobGUodCksZT1oZShlKSxsZShyKSxjZSl0cnl7cmV0dXJuIGZlKHQsZSxyKX1jYXRjaCh0KXt9aWYoImdldCJpbiByfHwic2V0ImluIHIpdGhyb3cgcGUoIkFjY2Vzc29ycyBub3Qgc3VwcG9ydGVkIik7cmV0dXJuInZhbHVlImluIHImJih0W2VdPXIudmFsdWUpLHR9O3ZhciBnZT1mdW5jdGlvbih0LGUpe3JldHVybntlbnVtZXJhYmxlOiEoMSZ0KSxjb25maWd1cmFibGU6ISgyJnQpLHdyaXRhYmxlOiEoNCZ0KSx2YWx1ZTplfX0sZGU9VCx2ZT1nZSxtZT1pP2Z1bmN0aW9uKHQsZSxyKXtyZXR1cm4gZGUuZih0LGUsdmUoMSxyKSl9OmZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gdFtlXT1yLHR9LF9lPXAseWU9QXQsYmU9aChGdW5jdGlvbi50b1N0cmluZyk7X2UoeWUuaW5zcGVjdFNvdXJjZSl8fCh5ZS5pbnNwZWN0U291cmNlPWZ1bmN0aW9uKHQpe3JldHVybiBiZSh0KX0pO3ZhciB4ZSxNZSxTZSxJZT15ZS5pbnNwZWN0U291cmNlLGtlPXAsd2U9SWUsQ2U9cy5XZWFrTWFwLEVlPWtlKENlKSYmL25hdGl2ZSBjb2RlLy50ZXN0KHdlKENlKSksT2U9d3QuZXhwb3J0cyxQZT1CdCxUZT1PZSgia2V5cyIpLEFlPWZ1bmN0aW9uKHQpe3JldHVybiBUZVt0XXx8KFRlW3RdPVBlKHQpKX0sTGU9e30semU9RWUsamU9cyxSZT1oLE5lPUwsQmU9bWUsWmU9UCxGZT1BdCxEZT1BZSxIZT1MZSwkZT0iT2JqZWN0IGFscmVhZHkgaW5pdGlhbGl6ZWQiLEdlPWplLlR5cGVFcnJvcixWZT1qZS5XZWFrTWFwO2lmKHplfHxGZS5zdGF0ZSl7dmFyIFVlPUZlLnN0YXRlfHwoRmUuc3RhdGU9bmV3IFZlKSxXZT1SZShVZS5nZXQpLFhlPVJlKFVlLmhhcyksWWU9UmUoVWUuc2V0KTt4ZT1mdW5jdGlvbih0LGUpe2lmKFhlKFVlLHQpKXRocm93IG5ldyBHZSgkZSk7cmV0dXJuIGUuZmFjYWRlPXQsWWUoVWUsdCxlKSxlfSxNZT1mdW5jdGlvbih0KXtyZXR1cm4gV2UoVWUsdCl8fHt9fSxTZT1mdW5jdGlvbih0KXtyZXR1cm4gWGUoVWUsdCl9fWVsc2V7dmFyIEtlPURlKCJzdGF0ZSIpO0hlW0tlXT0hMCx4ZT1mdW5jdGlvbih0LGUpe2lmKFplKHQsS2UpKXRocm93IG5ldyBHZSgkZSk7cmV0dXJuIGUuZmFjYWRlPXQsQmUodCxLZSxlKSxlfSxNZT1mdW5jdGlvbih0KXtyZXR1cm4gWmUodCxLZSk/dFtLZV06e319LFNlPWZ1bmN0aW9uKHQpe3JldHVybiBaZSh0LEtlKX19dmFyIHFlPXtzZXQ6eGUsZ2V0Ok1lLGhhczpTZSxlbmZvcmNlOmZ1bmN0aW9uKHQpe3JldHVybiBTZSh0KT9NZSh0KTp4ZSh0LHt9KX0sZ2V0dGVyRm9yOmZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlKXt2YXIgcjtpZighTmUoZSl8fChyPU1lKGUpKS50eXBlIT09dCl0aHJvdyBHZSgiSW5jb21wYXRpYmxlIHJlY2VpdmVyLCAiK3QrIiByZXF1aXJlZCIpO3JldHVybiByfX19LEplPWksUWU9UCx0cj1GdW5jdGlvbi5wcm90b3R5cGUsZXI9SmUmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IscnI9UWUodHIsIm5hbWUiKSxucj17RVhJU1RTOnJyLFBST1BFUjpyciYmInNvbWV0aGluZyI9PT1mdW5jdGlvbigpe30ubmFtZSxDT05GSUdVUkFCTEU6cnImJighSmV8fEplJiZlcih0ciwibmFtZSIpLmNvbmZpZ3VyYWJsZSl9LGlyPXMsb3I9cCxzcj1QLGFyPW1lLHVyPU90LGNyPUllLGxyPW5yLkNPTkZJR1VSQUJMRSxocj1xZS5nZXQscHI9cWUuZW5mb3JjZSxmcj1TdHJpbmcoU3RyaW5nKS5zcGxpdCgiU3RyaW5nIik7KE0uZXhwb3J0cz1mdW5jdGlvbih0LGUscixuKXt2YXIgaSxvPSEhbiYmISFuLnVuc2FmZSxzPSEhbiYmISFuLmVudW1lcmFibGUsYT0hIW4mJiEhbi5ub1RhcmdldEdldCx1PW4mJnZvaWQgMCE9PW4ubmFtZT9uLm5hbWU6ZTtvcihyKSYmKCJTeW1ib2woIj09PVN0cmluZyh1KS5zbGljZSgwLDcpJiYodT0iWyIrU3RyaW5nKHUpLnJlcGxhY2UoL15TeW1ib2xcKChbXildKilcKS8sIiQxIikrIl0iKSwoIXNyKHIsIm5hbWUiKXx8bHImJnIubmFtZSE9PXUpJiZhcihyLCJuYW1lIix1KSwoaT1wcihyKSkuc291cmNlfHwoaS5zb3VyY2U9ZnIuam9pbigic3RyaW5nIj09dHlwZW9mIHU/dToiIikpKSx0IT09aXI/KG8/IWEmJnRbZV0mJihzPSEwKTpkZWxldGUgdFtlXSxzP3RbZV09cjphcih0LGUscikpOnM/dFtlXT1yOnVyKGUscil9KShGdW5jdGlvbi5wcm90b3R5cGUsInRvU3RyaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gb3IodGhpcykmJmhyKHRoaXMpLnNvdXJjZXx8Y3IodGhpcyl9KSk7dmFyIGdyPXMsZHI9cCx2cj1nci5TdHJpbmcsbXI9Z3IuVHlwZUVycm9yLF9yPWgseXI9Ryxicj1mdW5jdGlvbih0KXtpZigib2JqZWN0Ij09dHlwZW9mIHR8fGRyKHQpKXJldHVybiB0O3Rocm93IG1yKCJDYW4ndCBzZXQgIit2cih0KSsiIGFzIGEgcHJvdG90eXBlIil9LHhyPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8KCJfX3Byb3RvX18iaW57fT9mdW5jdGlvbigpe3ZhciB0LGU9ITEscj17fTt0cnl7KHQ9X3IoT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihPYmplY3QucHJvdG90eXBlLCJfX3Byb3RvX18iKS5zZXQpKShyLFtdKSxlPXIgaW5zdGFuY2VvZiBBcnJheX1jYXRjaCh0KXt9cmV0dXJuIGZ1bmN0aW9uKHIsbil7cmV0dXJuIHlyKHIpLGJyKG4pLGU/dChyLG4pOnIuX19wcm90b19fPW4scn19KCk6dm9pZCAwKSxNcj1wLFNyPUwsSXI9eHIsa3I9e30sd3I9aCxDcj13cih7fS50b1N0cmluZyksRXI9d3IoIiIuc2xpY2UpLE9yPWZ1bmN0aW9uKHQpe3JldHVybiBFcihDcih0KSw4LC0xKX0sUHI9aCxUcj1uLEFyPU9yLExyPXMuT2JqZWN0LHpyPVByKCIiLnNwbGl0KSxqcj1UcigoZnVuY3Rpb24oKXtyZXR1cm4hTHIoInoiKS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgwKX0pKT9mdW5jdGlvbih0KXtyZXR1cm4iU3RyaW5nIj09QXIodCk/enIodCwiIik6THIodCl9OkxyLFJyPWpyLE5yPUksQnI9ZnVuY3Rpb24odCl7cmV0dXJuIFJyKE5yKHQpKX0sWnI9TWF0aC5jZWlsLEZyPU1hdGguZmxvb3IsRHI9ZnVuY3Rpb24odCl7dmFyIGU9K3Q7cmV0dXJuIGUhPWV8fDA9PT1lPzA6KGU+MD9GcjpacikoZSl9LEhyPURyLCRyPU1hdGgubWF4LEdyPU1hdGgubWluLFZyPWZ1bmN0aW9uKHQsZSl7dmFyIHI9SHIodCk7cmV0dXJuIHI8MD8kcihyK2UsMCk6R3IocixlKX0sVXI9RHIsV3I9TWF0aC5taW4sWHI9ZnVuY3Rpb24odCl7cmV0dXJuIHQ+MD9XcihVcih0KSw5MDA3MTk5MjU0NzQwOTkxKTowfSxZcj1YcixLcj1mdW5jdGlvbih0KXtyZXR1cm4gWXIodC5sZW5ndGgpfSxxcj1CcixKcj1WcixRcj1Lcix0bj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSxyLG4pe3ZhciBpLG89cXIoZSkscz1RcihvKSxhPUpyKG4scyk7aWYodCYmciE9cil7Zm9yKDtzPmE7KWlmKChpPW9bYSsrXSkhPWkpcmV0dXJuITB9ZWxzZSBmb3IoO3M+YTthKyspaWYoKHR8fGEgaW4gbykmJm9bYV09PT1yKXJldHVybiB0fHxhfHwwO3JldHVybiF0JiYtMX19LGVuPXtpbmNsdWRlczp0bighMCksaW5kZXhPZjp0bighMSl9LHJuPVAsbm49QnIsb249ZW4uaW5kZXhPZixzbj1MZSxhbj1oKFtdLnB1c2gpLHVuPWZ1bmN0aW9uKHQsZSl7dmFyIHIsbj1ubih0KSxpPTAsbz1bXTtmb3IociBpbiBuKSFybihzbixyKSYmcm4obixyKSYmYW4obyxyKTtmb3IoO2UubGVuZ3RoPmk7KXJuKG4scj1lW2krK10pJiYofm9uKG8scil8fGFuKG8scikpO3JldHVybiBvfSxjbj1bImNvbnN0cnVjdG9yIiwiaGFzT3duUHJvcGVydHkiLCJpc1Byb3RvdHlwZU9mIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJ0b0xvY2FsZVN0cmluZyIsInRvU3RyaW5nIiwidmFsdWVPZiJdLGxuPXVuLGhuPWNuLmNvbmNhdCgibGVuZ3RoIiwicHJvdG90eXBlIik7a3IuZj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lc3x8ZnVuY3Rpb24odCl7cmV0dXJuIGxuKHQsaG4pfTt2YXIgcG49e30sZm49e30sZ249e30ucHJvcGVydHlJc0VudW1lcmFibGUsZG49T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcix2bj1kbiYmIWduLmNhbGwoezE6Mn0sMSk7Zm4uZj12bj9mdW5jdGlvbih0KXt2YXIgZT1kbih0aGlzLHQpO3JldHVybiEhZSYmZS5lbnVtZXJhYmxlfTpnbjt2YXIgbW49aSxfbj1VLHluPWZuLGJuPWdlLHhuPUJyLE1uPWFlLFNuPVAsSW49Wixrbj1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yO3BuLmY9bW4/a246ZnVuY3Rpb24odCxlKXtpZih0PXhuKHQpLGU9TW4oZSksSW4pdHJ5e3JldHVybiBrbih0LGUpfWNhdGNoKHQpe31pZihTbih0LGUpKXJldHVybiBibighX24oeW4uZix0LGUpLHRbZV0pfTt2YXIgd249aCgxLi52YWx1ZU9mKSxDbj17fTtDbltZdCgidG9TdHJpbmdUYWciKV09InoiO3ZhciBFbj0iW29iamVjdCB6XSI9PT1TdHJpbmcoQ24pLE9uPXMsUG49RW4sVG49cCxBbj1PcixMbj1ZdCgidG9TdHJpbmdUYWciKSx6bj1Pbi5PYmplY3Qsam49IkFyZ3VtZW50cyI9PUFuKGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50c30oKSksUm49UG4/QW46ZnVuY3Rpb24odCl7dmFyIGUscixuO3JldHVybiB2b2lkIDA9PT10PyJVbmRlZmluZWQiOm51bGw9PT10PyJOdWxsIjoic3RyaW5nIj09dHlwZW9mKHI9ZnVuY3Rpb24odCxlKXt0cnl7cmV0dXJuIHRbZV19Y2F0Y2godCl7fX0oZT16bih0KSxMbikpP3I6am4/QW4oZSk6Ik9iamVjdCI9PShuPUFuKGUpKSYmVG4oZS5jYWxsZWUpPyJBcmd1bWVudHMiOm59LE5uPVJuLEJuPXMuU3RyaW5nLFpuPWZ1bmN0aW9uKHQpe2lmKCJTeW1ib2wiPT09Tm4odCkpdGhyb3cgVHlwZUVycm9yKCJDYW5ub3QgY29udmVydCBhIFN5bWJvbCB2YWx1ZSB0byBhIHN0cmluZyIpO3JldHVybiBCbih0KX0sRm49SSxEbj1abixIbj1oKCIiLnJlcGxhY2UpLCRuPSJbXHRcblx2XGZcciDCoOGagOKAgOKAgeKAguKAg+KAhOKAheKAhuKAh+KAiOKAieKAiuKAr+KBn+OAgFx1MjAyOFx1MjAyOVx1ZmVmZl0iLEduPVJlZ0V4cCgiXiIrJG4rJG4rIioiKSxWbj1SZWdFeHAoJG4rJG4rIiokIiksVW49ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3ZhciByPURuKEZuKGUpKTtyZXR1cm4gMSZ0JiYocj1IbihyLEduLCIiKSksMiZ0JiYocj1IbihyLFZuLCIiKSkscn19LFduPXtzdGFydDpVbigxKSxlbmQ6VW4oMiksdHJpbTpVbigzKX0sWG49aSxZbj1zLEtuPWgscW49eCxKbj1NLmV4cG9ydHMsUW49UCx0aT1mdW5jdGlvbih0LGUscil7dmFyIG4saTtyZXR1cm4gSXImJk1yKG49ZS5jb25zdHJ1Y3RvcikmJm4hPT1yJiZTcihpPW4ucHJvdG90eXBlKSYmaSE9PXIucHJvdG90eXBlJiZJcih0LGkpLHR9LGVpPXEscmk9Z3Qsbmk9aWUsaWk9bixvaT1rci5mLHNpPXBuLmYsYWk9VC5mLHVpPXduLGNpPVduLnRyaW0sbGk9Ik51bWJlciIsaGk9WW4uTnVtYmVyLHBpPWhpLnByb3RvdHlwZSxmaT1Zbi5UeXBlRXJyb3IsZ2k9S24oIiIuc2xpY2UpLGRpPUtuKCIiLmNoYXJDb2RlQXQpLHZpPWZ1bmN0aW9uKHQpe3ZhciBlPW5pKHQsIm51bWJlciIpO3JldHVybiJiaWdpbnQiPT10eXBlb2YgZT9lOm1pKGUpfSxtaT1mdW5jdGlvbih0KXt2YXIgZSxyLG4saSxvLHMsYSx1LGM9bmkodCwibnVtYmVyIik7aWYocmkoYykpdGhyb3cgZmkoIkNhbm5vdCBjb252ZXJ0IGEgU3ltYm9sIHZhbHVlIHRvIGEgbnVtYmVyIik7aWYoInN0cmluZyI9PXR5cGVvZiBjJiZjLmxlbmd0aD4yKWlmKGM9Y2koYyksNDM9PT0oZT1kaShjLDApKXx8NDU9PT1lKXtpZig4OD09PShyPWRpKGMsMikpfHwxMjA9PT1yKXJldHVybiBOYU59ZWxzZSBpZig0OD09PWUpe3N3aXRjaChkaShjLDEpKXtjYXNlIDY2OmNhc2UgOTg6bj0yLGk9NDk7YnJlYWs7Y2FzZSA3OTpjYXNlIDExMTpuPTgsaT01NTticmVhaztkZWZhdWx0OnJldHVybitjfWZvcihzPShvPWdpKGMsMikpLmxlbmd0aCxhPTA7YTxzO2ErKylpZigodT1kaShvLGEpKTw0OHx8dT5pKXJldHVybiBOYU47cmV0dXJuIHBhcnNlSW50KG8sbil9cmV0dXJuK2N9O2lmKHFuKGxpLCFoaSgiIDBvMSIpfHwhaGkoIjBiMSIpfHxoaSgiKzB4MSIpKSl7Zm9yKHZhciBfaSx5aT1mdW5jdGlvbih0KXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPDE/MDpoaSh2aSh0KSkscj10aGlzO3JldHVybiBlaShwaSxyKSYmaWkoKGZ1bmN0aW9uKCl7dWkocil9KSk/dGkoT2JqZWN0KGUpLHIseWkpOmV9LGJpPVhuP29pKGhpKToiTUFYX1ZBTFVFLE1JTl9WQUxVRSxOYU4sTkVHQVRJVkVfSU5GSU5JVFksUE9TSVRJVkVfSU5GSU5JVFksRVBTSUxPTixNQVhfU0FGRV9JTlRFR0VSLE1JTl9TQUZFX0lOVEVHRVIsaXNGaW5pdGUsaXNJbnRlZ2VyLGlzTmFOLGlzU2FmZUludGVnZXIscGFyc2VGbG9hdCxwYXJzZUludCxmcm9tU3RyaW5nLHJhbmdlIi5zcGxpdCgiLCIpLHhpPTA7YmkubGVuZ3RoPnhpO3hpKyspUW4oaGksX2k9YmlbeGldKSYmIVFuKHlpLF9pKSYmYWkoeWksX2ksc2koaGksX2kpKTt5aS5wcm90b3R5cGU9cGkscGkuY29uc3RydWN0b3I9eWksSm4oWW4sbGkseWkpfXZhciBNaT17fTtNaS5mPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM7dmFyIFNpPUssSWk9a3Isa2k9TWksd2k9RyxDaT1oKFtdLmNvbmNhdCksRWk9U2koIlJlZmxlY3QiLCJvd25LZXlzIil8fGZ1bmN0aW9uKHQpe3ZhciBlPUlpLmYod2kodCkpLHI9a2kuZjtyZXR1cm4gcj9DaShlLHIodCkpOmV9LE9pPVAsUGk9RWksVGk9cG4sQWk9VCxMaT1zLHppPXBuLmYsamk9bWUsUmk9TS5leHBvcnRzLE5pPU90LEJpPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPVBpKGUpLG49QWkuZixpPVRpLmYsbz0wO288ci5sZW5ndGg7bysrKXt2YXIgcz1yW29dO09pKHQscyl8fG4odCxzLGkoZSxzKSl9fSxaaT14LEZpPWZ1bmN0aW9uKHQsZSl7dmFyIHIsbixpLG8scyxhPXQudGFyZ2V0LHU9dC5nbG9iYWwsYz10LnN0YXQ7aWYocj11P0xpOmM/TGlbYV18fE5pKGEse30pOihMaVthXXx8e30pLnByb3RvdHlwZSlmb3IobiBpbiBlKXtpZihvPWVbbl0saT10Lm5vVGFyZ2V0R2V0PyhzPXppKHIsbikpJiZzLnZhbHVlOnJbbl0sIVppKHU/bjphKyhjPyIuIjoiIyIpK24sdC5mb3JjZWQpJiZ2b2lkIDAhPT1pKXtpZih0eXBlb2Ygbz09dHlwZW9mIGkpY29udGludWU7QmkobyxpKX0odC5zaGFtfHxpJiZpLnNoYW0pJiZqaShvLCJzaGFtIiwhMCksUmkocixuLG8sdCl9fSxEaT1PcixIaT1BcnJheS5pc0FycmF5fHxmdW5jdGlvbih0KXtyZXR1cm4iQXJyYXkiPT1EaSh0KX0sJGk9aCxHaT1uLFZpPXAsVWk9Um4sV2k9SWUsWGk9ZnVuY3Rpb24oKXt9LFlpPVtdLEtpPUsoIlJlZmxlY3QiLCJjb25zdHJ1Y3QiKSxxaT0vXlxzKig/OmNsYXNzfGZ1bmN0aW9uKVxiLyxKaT0kaShxaS5leGVjKSxRaT0hcWkuZXhlYyhYaSksdG89ZnVuY3Rpb24odCl7aWYoIVZpKHQpKXJldHVybiExO3RyeXtyZXR1cm4gS2koWGksWWksdCksITB9Y2F0Y2godCl7cmV0dXJuITF9fSxlbz0hS2l8fEdpKChmdW5jdGlvbigpe3ZhciB0O3JldHVybiB0byh0by5jYWxsKXx8IXRvKE9iamVjdCl8fCF0bygoZnVuY3Rpb24oKXt0PSEwfSkpfHx0fSkpP2Z1bmN0aW9uKHQpe2lmKCFWaSh0KSlyZXR1cm4hMTtzd2l0Y2goVWkodCkpe2Nhc2UiQXN5bmNGdW5jdGlvbiI6Y2FzZSJHZW5lcmF0b3JGdW5jdGlvbiI6Y2FzZSJBc3luY0dlbmVyYXRvckZ1bmN0aW9uIjpyZXR1cm4hMX1yZXR1cm4gUWl8fCEhSmkocWksV2kodCkpfTp0byxybz1zLG5vPUhpLGlvPWVvLG9vPUwsc289WXQoInNwZWNpZXMiKSxhbz1yby5BcnJheSx1bz1mdW5jdGlvbih0KXt2YXIgZTtyZXR1cm4gbm8odCkmJihlPXQuY29uc3RydWN0b3IsKGlvKGUpJiYoZT09PWFvfHxubyhlLnByb3RvdHlwZSkpfHxvbyhlKSYmbnVsbD09PShlPWVbc29dKSkmJihlPXZvaWQgMCkpLHZvaWQgMD09PWU/YW86ZX0sY289ZnVuY3Rpb24odCxlKXtyZXR1cm4gbmV3KHVvKHQpKSgwPT09ZT8wOmUpfSxsbz1hZSxobz1ULHBvPWdlLGZvPWZ1bmN0aW9uKHQsZSxyKXt2YXIgbj1sbyhlKTtuIGluIHQ/aG8uZih0LG4scG8oMCxyKSk6dFtuXT1yfSxnbz1uLHZvPWl0LG1vPVl0KCJzcGVjaWVzIiksX289ZnVuY3Rpb24odCl7cmV0dXJuIHZvPj01MXx8IWdvKChmdW5jdGlvbigpe3ZhciBlPVtdO3JldHVybihlLmNvbnN0cnVjdG9yPXt9KVttb109ZnVuY3Rpb24oKXtyZXR1cm57Zm9vOjF9fSwxIT09ZVt0XShCb29sZWFuKS5mb299KSl9LHlvPUZpLGJvPXMseG89VnIsTW89RHIsU289S3IsSW89Qyxrbz1jbyx3bz1mbyxDbz1fbygic3BsaWNlIiksRW89Ym8uVHlwZUVycm9yLE9vPU1hdGgubWF4LFBvPU1hdGgubWluLFRvPTkwMDcxOTkyNTQ3NDA5OTEsQW89Ik1heGltdW0gYWxsb3dlZCBsZW5ndGggZXhjZWVkZWQiO3lvKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6IUNvfSx7c3BsaWNlOmZ1bmN0aW9uKHQsZSl7dmFyIHIsbixpLG8scyxhLHU9SW8odGhpcyksYz1Tbyh1KSxsPXhvKHQsYyksaD1hcmd1bWVudHMubGVuZ3RoO2lmKDA9PT1oP3I9bj0wOjE9PT1oPyhyPTAsbj1jLWwpOihyPWgtMixuPVBvKE9vKE1vKGUpLDApLGMtbCkpLGMrci1uPlRvKXRocm93IEVvKEFvKTtmb3IoaT1rbyh1LG4pLG89MDtvPG47bysrKShzPWwrbylpbiB1JiZ3byhpLG8sdVtzXSk7aWYoaS5sZW5ndGg9bixyPG4pe2ZvcihvPWw7bzxjLW47bysrKWE9bytyLChzPW8rbilpbiB1P3VbYV09dVtzXTpkZWxldGUgdVthXTtmb3Iobz1jO28+Yy1uK3I7by0tKWRlbGV0ZSB1W28tMV19ZWxzZSBpZihyPm4pZm9yKG89Yy1uO28+bDtvLS0pYT1vK3ItMSwocz1vK24tMSlpbiB1P3VbYV09dVtzXTpkZWxldGUgdVthXTtmb3Iobz0wO288cjtvKyspdVtvK2xdPWFyZ3VtZW50c1tvKzJdO3JldHVybiB1Lmxlbmd0aD1jLW4rcixpfX0pO3ZhciBMbz1oKFtdLnNsaWNlKSx6bz1GaSxqbz1zLFJvPUhpLE5vPWVvLEJvPUwsWm89VnIsRm89S3IsRG89QnIsSG89Zm8sJG89WXQsR289TG8sVm89X28oInNsaWNlIiksVW89JG8oInNwZWNpZXMiKSxXbz1qby5BcnJheSxYbz1NYXRoLm1heDt6byh7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsZm9yY2VkOiFWb30se3NsaWNlOmZ1bmN0aW9uKHQsZSl7dmFyIHIsbixpLG89RG8odGhpcykscz1GbyhvKSxhPVpvKHQscyksdT1abyh2b2lkIDA9PT1lP3M6ZSxzKTtpZihSbyhvKSYmKHI9by5jb25zdHJ1Y3RvciwoTm8ocikmJihyPT09V298fFJvKHIucHJvdG90eXBlKSl8fEJvKHIpJiZudWxsPT09KHI9cltVb10pKSYmKHI9dm9pZCAwKSxyPT09V298fHZvaWQgMD09PXIpKXJldHVybiBHbyhvLGEsdSk7Zm9yKG49bmV3KHZvaWQgMD09PXI/V286cikoWG8odS1hLDApKSxpPTA7YTx1O2ErKyxpKyspYSBpbiBvJiZIbyhuLGksb1thXSk7cmV0dXJuIG4ubGVuZ3RoPWksbn19KTt2YXIgWW89Um4sS289RW4/e30udG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4iW29iamVjdCAiK1lvKHRoaXMpKyJdIn0scW89RW4sSm89TS5leHBvcnRzLFFvPUtvO3FvfHxKbyhPYmplY3QucHJvdG90eXBlLCJ0b1N0cmluZyIsUW8se3Vuc2FmZTohMH0pO3ZhciB0cz1HLGVzPWZ1bmN0aW9uKCl7dmFyIHQ9dHModGhpcyksZT0iIjtyZXR1cm4gdC5nbG9iYWwmJihlKz0iZyIpLHQuaWdub3JlQ2FzZSYmKGUrPSJpIiksdC5tdWx0aWxpbmUmJihlKz0ibSIpLHQuZG90QWxsJiYoZSs9InMiKSx0LnVuaWNvZGUmJihlKz0idSIpLHQuc3RpY2t5JiYoZSs9InkiKSxlfSxycz1oLG5zPW5yLlBST1BFUixpcz1NLmV4cG9ydHMsb3M9Ryxzcz1xLGFzPVpuLHVzPW4sY3M9ZXMsbHM9InRvU3RyaW5nIixocz1SZWdFeHAucHJvdG90eXBlLHBzPWhzLnRvU3RyaW5nLGZzPXJzKGNzKSxncz11cygoZnVuY3Rpb24oKXtyZXR1cm4iL2EvYiIhPXBzLmNhbGwoe3NvdXJjZToiYSIsZmxhZ3M6ImIifSl9KSksZHM9bnMmJnBzLm5hbWUhPWxzOyhnc3x8ZHMpJiZpcyhSZWdFeHAucHJvdG90eXBlLGxzLChmdW5jdGlvbigpe3ZhciB0PW9zKHRoaXMpLGU9YXModC5zb3VyY2UpLHI9dC5mbGFncztyZXR1cm4iLyIrZSsiLyIrYXModm9pZCAwPT09ciYmc3MoaHMsdCkmJiEoImZsYWdzImluIGhzKT9mcyh0KTpyKX0pLHt1bnNhZmU6ITB9KTt2YXIgdnM9ZnVuY3Rpb24odCxlKXtyZXR1cm4odnM9T2JqZWN0LnNldFByb3RvdHlwZU9mfHx7X19wcm90b19fOltdfWluc3RhbmNlb2YgQXJyYXkmJmZ1bmN0aW9uKHQsZSl7dC5fX3Byb3RvX189ZX18fGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShyKSYmKHRbcl09ZVtyXSl9KSh0LGUpfTtmdW5jdGlvbiBtcyh0LGUpe2Z1bmN0aW9uIHIoKXt0aGlzLmNvbnN0cnVjdG9yPXR9dnModCxlKSx0LnByb3RvdHlwZT1udWxsPT09ZT9PYmplY3QuY3JlYXRlKGUpOihyLnByb3RvdHlwZT1lLnByb3RvdHlwZSxuZXcgcil9dmFyIF9zPWZ1bmN0aW9uKCl7cmV0dXJuKF9zPU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxyPTEsbj1hcmd1bWVudHMubGVuZ3RoO3I8bjtyKyspZm9yKHZhciBpIGluIGU9YXJndW1lbnRzW3JdKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLGkpJiYodFtpXT1lW2ldKTtyZXR1cm4gdH0pLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0seXM9bixicz1GaSx4cz1qcixNcz1CcixTcz1mdW5jdGlvbih0LGUpe3ZhciByPVtdW3RdO3JldHVybiEhciYmeXMoKGZ1bmN0aW9uKCl7ci5jYWxsKG51bGwsZXx8ZnVuY3Rpb24oKXt0aHJvdyAxfSwxKX0pKX0sSXM9aChbXS5qb2luKSxrcz14cyE9T2JqZWN0LHdzPVNzKCJqb2luIiwiLCIpO2JzKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6a3N8fCF3c30se2pvaW46ZnVuY3Rpb24odCl7cmV0dXJuIElzKE1zKHRoaXMpLHZvaWQgMD09PXQ/IiwiOnQpfX0pO3ZhciBDcz11bixFcz1jbixPcz1PYmplY3Qua2V5c3x8ZnVuY3Rpb24odCl7cmV0dXJuIENzKHQsRXMpfSxQcz1DLFRzPU9zO0ZpKHt0YXJnZXQ6Ik9iamVjdCIsc3RhdDohMCxmb3JjZWQ6bigoZnVuY3Rpb24oKXtUcygxKX0pKX0se2tleXM6ZnVuY3Rpb24odCl7cmV0dXJuIFRzKFBzKHQpKX19KTt2YXIgQXMsTHM9bix6cz1zLlJlZ0V4cCxqcz1McygoZnVuY3Rpb24oKXt2YXIgdD16cygiYSIsInkiKTtyZXR1cm4gdC5sYXN0SW5kZXg9MixudWxsIT10LmV4ZWMoImFiY2QiKX0pKSxScz1qc3x8THMoKGZ1bmN0aW9uKCl7cmV0dXJuIXpzKCJhIiwieSIpLnN0aWNreX0pKSxOcz17QlJPS0VOX0NBUkVUOmpzfHxMcygoZnVuY3Rpb24oKXt2YXIgdD16cygiXnIiLCJneSIpO3JldHVybiB0Lmxhc3RJbmRleD0yLG51bGwhPXQuZXhlYygic3RyIil9KSksTUlTU0VEX1NUSUNLWTpScyxVTlNVUFBPUlRFRF9ZOmpzfSxCcz1ULFpzPUcsRnM9QnIsRHM9T3MsSHM9aT9PYmplY3QuZGVmaW5lUHJvcGVydGllczpmdW5jdGlvbih0LGUpe1pzKHQpO2Zvcih2YXIgcixuPUZzKGUpLGk9RHMoZSksbz1pLmxlbmd0aCxzPTA7bz5zOylCcy5mKHQscj1pW3MrK10sbltyXSk7cmV0dXJuIHR9LCRzPUsoImRvY3VtZW50IiwiZG9jdW1lbnRFbGVtZW50IiksR3M9RyxWcz1IcyxVcz1jbixXcz1MZSxYcz0kcyxZcz1OLEtzPUFlKCJJRV9QUk9UTyIpLHFzPWZ1bmN0aW9uKCl7fSxKcz1mdW5jdGlvbih0KXtyZXR1cm4iPHNjcmlwdD4iK3QrIjwvIisic2NyaXB0PiJ9LFFzPWZ1bmN0aW9uKHQpe3Qud3JpdGUoSnMoIiIpKSx0LmNsb3NlKCk7dmFyIGU9dC5wYXJlbnRXaW5kb3cuT2JqZWN0O3JldHVybiB0PW51bGwsZX0sdGE9ZnVuY3Rpb24oKXt0cnl7QXM9bmV3IEFjdGl2ZVhPYmplY3QoImh0bWxmaWxlIil9Y2F0Y2godCl7fXZhciB0LGU7dGE9InVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudD9kb2N1bWVudC5kb21haW4mJkFzP1FzKEFzKTooKGU9WXMoImlmcmFtZSIpKS5zdHlsZS5kaXNwbGF5PSJub25lIixYcy5hcHBlbmRDaGlsZChlKSxlLnNyYz1TdHJpbmcoImphdmFzY3JpcHQ6IiksKHQ9ZS5jb250ZW50V2luZG93LmRvY3VtZW50KS5vcGVuKCksdC53cml0ZShKcygiZG9jdW1lbnQuRj1PYmplY3QiKSksdC5jbG9zZSgpLHQuRik6UXMoQXMpO2Zvcih2YXIgcj1Vcy5sZW5ndGg7ci0tOylkZWxldGUgdGEucHJvdG90eXBlW1VzW3JdXTtyZXR1cm4gdGEoKX07V3NbS3NdPSEwO3ZhciBlYSxyYSxuYT1PYmplY3QuY3JlYXRlfHxmdW5jdGlvbih0LGUpe3ZhciByO3JldHVybiBudWxsIT09dD8ocXMucHJvdG90eXBlPUdzKHQpLHI9bmV3IHFzLHFzLnByb3RvdHlwZT1udWxsLHJbS3NdPXQpOnI9dGEoKSx2b2lkIDA9PT1lP3I6VnMocixlKX0saWE9bixvYT1zLlJlZ0V4cCxzYT1pYSgoZnVuY3Rpb24oKXt2YXIgdD1vYSgiLiIsInMiKTtyZXR1cm4hKHQuZG90QWxsJiZ0LmV4ZWMoIlxuIikmJiJzIj09PXQuZmxhZ3MpfSkpLGFhPW4sdWE9cy5SZWdFeHAsY2E9YWEoKGZ1bmN0aW9uKCl7dmFyIHQ9dWEoIig/PGE+YikiLCJnIik7cmV0dXJuImIiIT09dC5leGVjKCJiIikuZ3JvdXBzLmF8fCJiYyIhPT0iYiIucmVwbGFjZSh0LCIkPGE+YyIpfSkpLGxhPVUsaGE9aCxwYT1abixmYT1lcyxnYT1OcyxkYT13dC5leHBvcnRzLHZhPW5hLG1hPXFlLmdldCxfYT1zYSx5YT1jYSxiYT1kYSgibmF0aXZlLXN0cmluZy1yZXBsYWNlIixTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UpLHhhPVJlZ0V4cC5wcm90b3R5cGUuZXhlYyxNYT14YSxTYT1oYSgiIi5jaGFyQXQpLElhPWhhKCIiLmluZGV4T2YpLGthPWhhKCIiLnJlcGxhY2UpLHdhPWhhKCIiLnNsaWNlKSxDYT0ocmE9L2IqL2csbGEoeGEsZWE9L2EvLCJhIiksbGEoeGEscmEsImEiKSwwIT09ZWEubGFzdEluZGV4fHwwIT09cmEubGFzdEluZGV4KSxFYT1nYS5CUk9LRU5fQ0FSRVQsT2E9dm9pZCAwIT09LygpPz8vLmV4ZWMoIiIpWzFdOyhDYXx8T2F8fEVhfHxfYXx8eWEpJiYoTWE9ZnVuY3Rpb24odCl7dmFyIGUscixuLGksbyxzLGEsdT10aGlzLGM9bWEodSksbD1wYSh0KSxoPWMucmF3O2lmKGgpcmV0dXJuIGgubGFzdEluZGV4PXUubGFzdEluZGV4LGU9bGEoTWEsaCxsKSx1Lmxhc3RJbmRleD1oLmxhc3RJbmRleCxlO3ZhciBwPWMuZ3JvdXBzLGY9RWEmJnUuc3RpY2t5LGc9bGEoZmEsdSksZD11LnNvdXJjZSx2PTAsbT1sO2lmKGYmJihnPWthKGcsInkiLCIiKSwtMT09PUlhKGcsImciKSYmKGcrPSJnIiksbT13YShsLHUubGFzdEluZGV4KSx1Lmxhc3RJbmRleD4wJiYoIXUubXVsdGlsaW5lfHx1Lm11bHRpbGluZSYmIlxuIiE9PVNhKGwsdS5sYXN0SW5kZXgtMSkpJiYoZD0iKD86ICIrZCsiKSIsbT0iICIrbSx2KyspLHI9bmV3IFJlZ0V4cCgiXig/OiIrZCsiKSIsZykpLE9hJiYocj1uZXcgUmVnRXhwKCJeIitkKyIkKD8hXFxzKSIsZykpLENhJiYobj11Lmxhc3RJbmRleCksaT1sYSh4YSxmP3I6dSxtKSxmP2k/KGkuaW5wdXQ9d2EoaS5pbnB1dCx2KSxpWzBdPXdhKGlbMF0sdiksaS5pbmRleD11Lmxhc3RJbmRleCx1Lmxhc3RJbmRleCs9aVswXS5sZW5ndGgpOnUubGFzdEluZGV4PTA6Q2EmJmkmJih1Lmxhc3RJbmRleD11Lmdsb2JhbD9pLmluZGV4K2lbMF0ubGVuZ3RoOm4pLE9hJiZpJiZpLmxlbmd0aD4xJiZsYShiYSxpWzBdLHIsKGZ1bmN0aW9uKCl7Zm9yKG89MTtvPGFyZ3VtZW50cy5sZW5ndGgtMjtvKyspdm9pZCAwPT09YXJndW1lbnRzW29dJiYoaVtvXT12b2lkIDApfSkpLGkmJnApZm9yKGkuZ3JvdXBzPXM9dmEobnVsbCksbz0wO288cC5sZW5ndGg7bysrKXNbKGE9cFtvXSlbMF1dPWlbYVsxXV07cmV0dXJuIGl9KTt2YXIgUGE9TWE7Rmkoe3RhcmdldDoiUmVnRXhwIixwcm90bzohMCxmb3JjZWQ6Ly4vLmV4ZWMhPT1QYX0se2V4ZWM6UGF9KTt2YXIgVGE9RnVuY3Rpb24ucHJvdG90eXBlLEFhPVRhLmFwcGx5LExhPVRhLmJpbmQsemE9VGEuY2FsbCxqYT0ib2JqZWN0Ij09dHlwZW9mIFJlZmxlY3QmJlJlZmxlY3QuYXBwbHl8fChMYT96YS5iaW5kKEFhKTpmdW5jdGlvbigpe3JldHVybiB6YS5hcHBseShBYSxhcmd1bWVudHMpfSksUmE9aCxOYT1NLmV4cG9ydHMsQmE9UGEsWmE9bixGYT1ZdCxEYT1tZSxIYT1GYSgic3BlY2llcyIpLCRhPVJlZ0V4cC5wcm90b3R5cGUsR2E9ZnVuY3Rpb24odCxlLHIsbil7dmFyIGk9RmEodCksbz0hWmEoKGZ1bmN0aW9uKCl7dmFyIGU9e307cmV0dXJuIGVbaV09ZnVuY3Rpb24oKXtyZXR1cm4gN30sNyE9IiJbdF0oZSl9KSkscz1vJiYhWmEoKGZ1bmN0aW9uKCl7dmFyIGU9ITEscj0vYS87cmV0dXJuInNwbGl0Ij09PXQmJigocj17fSkuY29uc3RydWN0b3I9e30sci5jb25zdHJ1Y3RvcltIYV09ZnVuY3Rpb24oKXtyZXR1cm4gcn0sci5mbGFncz0iIixyW2ldPS8uL1tpXSksci5leGVjPWZ1bmN0aW9uKCl7cmV0dXJuIGU9ITAsbnVsbH0scltpXSgiIiksIWV9KSk7aWYoIW98fCFzfHxyKXt2YXIgYT1SYSgvLi9baV0pLHU9ZShpLCIiW3RdLChmdW5jdGlvbih0LGUscixuLGkpe3ZhciBzPVJhKHQpLHU9ZS5leGVjO3JldHVybiB1PT09QmF8fHU9PT0kYS5leGVjP28mJiFpP3tkb25lOiEwLHZhbHVlOmEoZSxyLG4pfTp7ZG9uZTohMCx2YWx1ZTpzKHIsZSxuKX06e2RvbmU6ITF9fSkpO05hKFN0cmluZy5wcm90b3R5cGUsdCx1WzBdKSxOYSgkYSxpLHVbMV0pfW4mJkRhKCRhW2ldLCJzaGFtIiwhMCl9LFZhPUwsVWE9T3IsV2E9WXQoIm1hdGNoIiksWGE9ZW8sWWE9dnQsS2E9cy5UeXBlRXJyb3IscWE9RyxKYT1mdW5jdGlvbih0KXtpZihYYSh0KSlyZXR1cm4gdDt0aHJvdyBLYShZYSh0KSsiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIil9LFFhPVl0KCJzcGVjaWVzIiksdHU9aCxldT1EcixydT1abixudT1JLGl1PXR1KCIiLmNoYXJBdCksb3U9dHUoIiIuY2hhckNvZGVBdCksc3U9dHUoIiIuc2xpY2UpLGF1PWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlLHIpe3ZhciBuLGksbz1ydShudShlKSkscz1ldShyKSxhPW8ubGVuZ3RoO3JldHVybiBzPDB8fHM+PWE/dD8iIjp2b2lkIDA6KG49b3UobyxzKSk8NTUyOTZ8fG4+NTYzMTl8fHMrMT09PWF8fChpPW91KG8scysxKSk8NTYzMjB8fGk+NTczNDM/dD9pdShvLHMpOm46dD9zdShvLHMscysyKTppLTU2MzIwKyhuLTU1Mjk2PDwxMCkrNjU1MzZ9fSx1dT17Y29kZUF0OmF1KCExKSxjaGFyQXQ6YXUoITApfS5jaGFyQXQsY3U9ZnVuY3Rpb24odCxlLHIpe3JldHVybiBlKyhyP3V1KHQsZSkubGVuZ3RoOjEpfSxsdT1WcixodT1LcixwdT1mbyxmdT1zLkFycmF5LGd1PU1hdGgubWF4LGR1PVUsdnU9RyxtdT1wLF91PU9yLHl1PVBhLGJ1PXMuVHlwZUVycm9yLHh1PWZ1bmN0aW9uKHQsZSl7dmFyIHI9dC5leGVjO2lmKG11KHIpKXt2YXIgbj1kdShyLHQsZSk7cmV0dXJuIG51bGwhPT1uJiZ2dShuKSxufWlmKCJSZWdFeHAiPT09X3UodCkpcmV0dXJuIGR1KHl1LHQsZSk7dGhyb3cgYnUoIlJlZ0V4cCNleGVjIGNhbGxlZCBvbiBpbmNvbXBhdGlibGUgcmVjZWl2ZXIiKX0sTXU9amEsU3U9VSxJdT1oLGt1PUdhLHd1PWZ1bmN0aW9uKHQpe3ZhciBlO3JldHVybiBWYSh0KSYmKHZvaWQgMCE9PShlPXRbV2FdKT8hIWU6IlJlZ0V4cCI9PVVhKHQpKX0sQ3U9RyxFdT1JLE91PWZ1bmN0aW9uKHQsZSl7dmFyIHIsbj1xYSh0KS5jb25zdHJ1Y3RvcjtyZXR1cm4gdm9pZCAwPT09bnx8bnVsbD09KHI9cWEobilbUWFdKT9lOkphKHIpfSxQdT1jdSxUdT1YcixBdT1abixMdT14dCx6dT1mdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPWh1KHQpLGk9bHUoZSxuKSxvPWx1KHZvaWQgMD09PXI/bjpyLG4pLHM9ZnUoZ3Uoby1pLDApKSxhPTA7aTxvO2krKyxhKyspcHUocyxhLHRbaV0pO3JldHVybiBzLmxlbmd0aD1hLHN9LGp1PXh1LFJ1PVBhLE51PW4sQnU9TnMuVU5TVVBQT1JURURfWSxadT00Mjk0OTY3Mjk1LEZ1PU1hdGgubWluLER1PVtdLnB1c2gsSHU9SXUoLy4vLmV4ZWMpLCR1PUl1KER1KSxHdT1JdSgiIi5zbGljZSk7a3UoInNwbGl0IiwoZnVuY3Rpb24odCxlLHIpe3ZhciBuO3JldHVybiBuPSJjIj09ImFiYmMiLnNwbGl0KC8oYikqLylbMV18fDQhPSJ0ZXN0Ii5zcGxpdCgvKD86KS8sLTEpLmxlbmd0aHx8MiE9ImFiIi5zcGxpdCgvKD86YWIpKi8pLmxlbmd0aHx8NCE9Ii4iLnNwbGl0KC8oLj8pKC4/KS8pLmxlbmd0aHx8Ii4iLnNwbGl0KC8oKSgpLykubGVuZ3RoPjF8fCIiLnNwbGl0KC8uPy8pLmxlbmd0aD9mdW5jdGlvbih0LHIpe3ZhciBuPUF1KEV1KHRoaXMpKSxpPXZvaWQgMD09PXI/WnU6cj4+PjA7aWYoMD09PWkpcmV0dXJuW107aWYodm9pZCAwPT09dClyZXR1cm5bbl07aWYoIXd1KHQpKXJldHVybiBTdShlLG4sdCxpKTtmb3IodmFyIG8scyxhLHU9W10sYz0odC5pZ25vcmVDYXNlPyJpIjoiIikrKHQubXVsdGlsaW5lPyJtIjoiIikrKHQudW5pY29kZT8idSI6IiIpKyh0LnN0aWNreT8ieSI6IiIpLGw9MCxoPW5ldyBSZWdFeHAodC5zb3VyY2UsYysiZyIpOyhvPVN1KFJ1LGgsbikpJiYhKChzPWgubGFzdEluZGV4KT5sJiYoJHUodSxHdShuLGwsby5pbmRleCkpLG8ubGVuZ3RoPjEmJm8uaW5kZXg8bi5sZW5ndGgmJk11KER1LHUsenUobywxKSksYT1vWzBdLmxlbmd0aCxsPXMsdS5sZW5ndGg+PWkpKTspaC5sYXN0SW5kZXg9PT1vLmluZGV4JiZoLmxhc3RJbmRleCsrO3JldHVybiBsPT09bi5sZW5ndGg/IWEmJkh1KGgsIiIpfHwkdSh1LCIiKTokdSh1LEd1KG4sbCkpLHUubGVuZ3RoPmk/enUodSwwLGkpOnV9OiIwIi5zcGxpdCh2b2lkIDAsMCkubGVuZ3RoP2Z1bmN0aW9uKHQscil7cmV0dXJuIHZvaWQgMD09PXQmJjA9PT1yP1tdOlN1KGUsdGhpcyx0LHIpfTplLFtmdW5jdGlvbihlLHIpe3ZhciBpPUV1KHRoaXMpLG89bnVsbD09ZT92b2lkIDA6THUoZSx0KTtyZXR1cm4gbz9TdShvLGUsaSxyKTpTdShuLEF1KGkpLGUscil9LGZ1bmN0aW9uKHQsaSl7dmFyIG89Q3UodGhpcykscz1BdSh0KSxhPXIobixvLHMsaSxuIT09ZSk7aWYoYS5kb25lKXJldHVybiBhLnZhbHVlO3ZhciB1PU91KG8sUmVnRXhwKSxjPW8udW5pY29kZSxsPShvLmlnbm9yZUNhc2U/ImkiOiIiKSsoby5tdWx0aWxpbmU/Im0iOiIiKSsoby51bmljb2RlPyJ1IjoiIikrKEJ1PyJnIjoieSIpLGg9bmV3IHUoQnU/Il4oPzoiK28uc291cmNlKyIpIjpvLGwpLHA9dm9pZCAwPT09aT9adTppPj4+MDtpZigwPT09cClyZXR1cm5bXTtpZigwPT09cy5sZW5ndGgpcmV0dXJuIG51bGw9PT1qdShoLHMpP1tzXTpbXTtmb3IodmFyIGY9MCxnPTAsZD1bXTtnPHMubGVuZ3RoOyl7aC5sYXN0SW5kZXg9QnU/MDpnO3ZhciB2LG09anUoaCxCdT9HdShzLGcpOnMpO2lmKG51bGw9PT1tfHwodj1GdShUdShoLmxhc3RJbmRleCsoQnU/ZzowKSkscy5sZW5ndGgpKT09PWYpZz1QdShzLGcsYyk7ZWxzZXtpZigkdShkLEd1KHMsZixnKSksZC5sZW5ndGg9PT1wKXJldHVybiBkO2Zvcih2YXIgXz0xO188PW0ubGVuZ3RoLTE7XysrKWlmKCR1KGQsbVtfXSksZC5sZW5ndGg9PT1wKXJldHVybiBkO2c9Zj12fX1yZXR1cm4gJHUoZCxHdShzLGYpKSxkfV19KSwhIU51KChmdW5jdGlvbigpe3ZhciB0PS8oPzopLyxlPXQuZXhlYzt0LmV4ZWM9ZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9O3ZhciByPSJhYiIuc3BsaXQodCk7cmV0dXJuIDIhPT1yLmxlbmd0aHx8ImEiIT09clswXXx8ImIiIT09clsxXX0pKSxCdSk7dmFyIFZ1PUZpLFV1PXMsV3U9bixYdT1IaSxZdT1MLEt1PUMscXU9S3IsSnU9Zm8sUXU9Y28sdGM9X28sZWM9aXQscmM9WXQoImlzQ29uY2F0U3ByZWFkYWJsZSIpLG5jPTkwMDcxOTkyNTQ3NDA5OTEsaWM9Ik1heGltdW0gYWxsb3dlZCBpbmRleCBleGNlZWRlZCIsb2M9VXUuVHlwZUVycm9yLHNjPWVjPj01MXx8IVd1KChmdW5jdGlvbigpe3ZhciB0PVtdO3JldHVybiB0W3JjXT0hMSx0LmNvbmNhdCgpWzBdIT09dH0pKSxhYz10YygiY29uY2F0IiksdWM9ZnVuY3Rpb24odCl7aWYoIVl1KHQpKXJldHVybiExO3ZhciBlPXRbcmNdO3JldHVybiB2b2lkIDAhPT1lPyEhZTpYdSh0KX07VnUoe3RhcmdldDoiQXJyYXkiLHByb3RvOiEwLGZvcmNlZDohc2N8fCFhY30se2NvbmNhdDpmdW5jdGlvbih0KXt2YXIgZSxyLG4saSxvLHM9S3UodGhpcyksYT1RdShzLDApLHU9MDtmb3IoZT0tMSxuPWFyZ3VtZW50cy5sZW5ndGg7ZTxuO2UrKylpZih1YyhvPS0xPT09ZT9zOmFyZ3VtZW50c1tlXSkpe2lmKHUrKGk9cXUobykpPm5jKXRocm93IG9jKGljKTtmb3Iocj0wO3I8aTtyKyssdSsrKXIgaW4gbyYmSnUoYSx1LG9bcl0pfWVsc2V7aWYodT49bmMpdGhyb3cgb2MoaWMpO0p1KGEsdSsrLG8pfXJldHVybiBhLmxlbmd0aD11LGF9fSk7dmFyIGNjPWgsbGM9QyxoYz1NYXRoLmZsb29yLHBjPWNjKCIiLmNoYXJBdCksZmM9Y2MoIiIucmVwbGFjZSksZ2M9Y2MoIiIuc2xpY2UpLGRjPS9cJChbJCYnYF18XGR7MSwyfXw8W14+XSo+KS9nLHZjPS9cJChbJCYnYF18XGR7MSwyfSkvZyxtYz1qYSxfYz1VLHljPWgsYmM9R2EseGM9bixNYz1HLFNjPXAsSWM9RHIsa2M9WHIsd2M9Wm4sQ2M9SSxFYz1jdSxPYz14dCxQYz1mdW5jdGlvbih0LGUscixuLGksbyl7dmFyIHM9cit0Lmxlbmd0aCxhPW4ubGVuZ3RoLHU9dmM7cmV0dXJuIHZvaWQgMCE9PWkmJihpPWxjKGkpLHU9ZGMpLGZjKG8sdSwoZnVuY3Rpb24obyx1KXt2YXIgYztzd2l0Y2gocGModSwwKSl7Y2FzZSIkIjpyZXR1cm4iJCI7Y2FzZSImIjpyZXR1cm4gdDtjYXNlImAiOnJldHVybiBnYyhlLDAscik7Y2FzZSInIjpyZXR1cm4gZ2MoZSxzKTtjYXNlIjwiOmM9aVtnYyh1LDEsLTEpXTticmVhaztkZWZhdWx0OnZhciBsPSt1O2lmKDA9PT1sKXJldHVybiBvO2lmKGw+YSl7dmFyIGg9aGMobC8xMCk7cmV0dXJuIDA9PT1oP286aDw9YT92b2lkIDA9PT1uW2gtMV0/cGModSwxKTpuW2gtMV0rcGModSwxKTpvfWM9bltsLTFdfXJldHVybiB2b2lkIDA9PT1jPyIiOmN9KSl9LFRjPXh1LEFjPVl0KCJyZXBsYWNlIiksTGM9TWF0aC5tYXgsemM9TWF0aC5taW4samM9eWMoW10uY29uY2F0KSxSYz15YyhbXS5wdXNoKSxOYz15YygiIi5pbmRleE9mKSxCYz15YygiIi5zbGljZSksWmM9IiQwIj09PSJhIi5yZXBsYWNlKC8uLywiJDAiKSxGYz0hIS8uL1tBY10mJiIiPT09Ly4vW0FjXSgiYSIsIiQwIik7YmMoInJlcGxhY2UiLChmdW5jdGlvbih0LGUscil7dmFyIG49RmM/IiQiOiIkMCI7cmV0dXJuW2Z1bmN0aW9uKHQscil7dmFyIG49Q2ModGhpcyksaT1udWxsPT10P3ZvaWQgMDpPYyh0LEFjKTtyZXR1cm4gaT9fYyhpLHQsbixyKTpfYyhlLHdjKG4pLHQscil9LGZ1bmN0aW9uKHQsaSl7dmFyIG89TWModGhpcykscz13Yyh0KTtpZigic3RyaW5nIj09dHlwZW9mIGkmJi0xPT09TmMoaSxuKSYmLTE9PT1OYyhpLCIkPCIpKXt2YXIgYT1yKGUsbyxzLGkpO2lmKGEuZG9uZSlyZXR1cm4gYS52YWx1ZX12YXIgdT1TYyhpKTt1fHwoaT13YyhpKSk7dmFyIGM9by5nbG9iYWw7aWYoYyl7dmFyIGw9by51bmljb2RlO28ubGFzdEluZGV4PTB9Zm9yKHZhciBoPVtdOzspe3ZhciBwPVRjKG8scyk7aWYobnVsbD09PXApYnJlYWs7aWYoUmMoaCxwKSwhYylicmVhazsiIj09PXdjKHBbMF0pJiYoby5sYXN0SW5kZXg9RWMocyxrYyhvLmxhc3RJbmRleCksbCkpfWZvcih2YXIgZixnPSIiLGQ9MCx2PTA7djxoLmxlbmd0aDt2Kyspe2Zvcih2YXIgbT13YygocD1oW3ZdKVswXSksXz1MYyh6YyhJYyhwLmluZGV4KSxzLmxlbmd0aCksMCkseT1bXSxiPTE7YjxwLmxlbmd0aDtiKyspUmMoeSx2b2lkIDA9PT0oZj1wW2JdKT9mOlN0cmluZyhmKSk7dmFyIHg9cC5ncm91cHM7aWYodSl7dmFyIE09amMoW21dLHksXyxzKTt2b2lkIDAhPT14JiZSYyhNLHgpO3ZhciBTPXdjKG1jKGksdm9pZCAwLE0pKX1lbHNlIFM9UGMobSxzLF8seSx4LGkpO18+PWQmJihnKz1CYyhzLGQsXykrUyxkPV8rbS5sZW5ndGgpfXJldHVybiBnK0JjKHMsZCl9XX0pLCEheGMoKGZ1bmN0aW9uKCl7dmFyIHQ9Ly4vO3JldHVybiB0LmV4ZWM9ZnVuY3Rpb24oKXt2YXIgdD1bXTtyZXR1cm4gdC5ncm91cHM9e2E6IjcifSx0fSwiNyIhPT0iIi5yZXBsYWNlKHQsIiQ8YT4iKX0pKXx8IVpjfHxGYyk7dmFyIERjPWZ1bmN0aW9uIHQoKXshZnVuY3Rpb24odCxlKXtmb3IodmFyIHIgaW4gZS5wcm90b3R5cGUpdC5wcm90b3R5cGVbcl09ZS5wcm90b3R5cGVbcl19KHQsZ29vZ2xlLm1hcHMuT3ZlcmxheVZpZXcpfTtmdW5jdGlvbiBIYyh0KXtyZXR1cm4gT2JqZWN0LmtleXModCkucmVkdWNlKChmdW5jdGlvbihlLHIpe3JldHVybiB0W3JdJiZlLnB1c2gocisiOiIrdFtyXSksZX0pLFtdKS5qb2luKCI7Iil9ZnVuY3Rpb24gJGModCl7cmV0dXJuIHQ/dCsicHgiOnZvaWQgMH12YXIgR2M9ZnVuY3Rpb24odCl7ZnVuY3Rpb24gZShlLHIpe3ZhciBuPXQuY2FsbCh0aGlzKXx8dGhpcztyZXR1cm4gbi5jbHVzdGVyXz1lLG4uc3R5bGVzXz1yLG4uY2VudGVyXz1udWxsLG4uZGl2Xz1udWxsLG4uc3Vtc189bnVsbCxuLnZpc2libGVfPSExLG4uc3R5bGU9bnVsbCxuLnNldE1hcChlLmdldE1hcCgpKSxufXJldHVybiBtcyhlLHQpLGUucHJvdG90eXBlLm9uQWRkPWZ1bmN0aW9uKCl7dmFyIHQsZSxyPXRoaXMsbj10aGlzLmNsdXN0ZXJfLmdldE1hcmtlckNsdXN0ZXJlcigpLGk9Z29vZ2xlLm1hcHMudmVyc2lvbi5zcGxpdCgiLiIpLG89aVswXSxzPWlbMV0sYT0xMDAqcGFyc2VJbnQobywxMCkrcGFyc2VJbnQocywxMCk7dGhpcy5kaXZfPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMudmlzaWJsZV8mJnRoaXMuc2hvdygpLHRoaXMuZ2V0UGFuZXMoKS5vdmVybGF5TW91c2VUYXJnZXQuYXBwZW5kQ2hpbGQodGhpcy5kaXZfKSx0aGlzLmJvdW5kc0NoYW5nZWRMaXN0ZW5lcl89Z29vZ2xlLm1hcHMuZXZlbnQuYWRkTGlzdGVuZXIodGhpcy5nZXRNYXAoKSwiYm91bmRzX2NoYW5nZWQiLChmdW5jdGlvbigpe2U9dH0pKSxnb29nbGUubWFwcy5ldmVudC5hZGREb21MaXN0ZW5lcih0aGlzLmRpdl8sIm1vdXNlZG93biIsKGZ1bmN0aW9uKCl7dD0hMCxlPSExfSkpLGdvb2dsZS5tYXBzLmV2ZW50LmFkZERvbUxpc3RlbmVyKHRoaXMuZGl2XywiY29udGV4dG1lbnUiLChmdW5jdGlvbigpe2dvb2dsZS5tYXBzLmV2ZW50LnRyaWdnZXIobiwiY29udGV4dG1lbnUiLHIuY2x1c3Rlcl8pfSkpLGE+PTMzMiYmZ29vZ2xlLm1hcHMuZXZlbnQuYWRkRG9tTGlzdGVuZXIodGhpcy5kaXZfLCJ0b3VjaHN0YXJ0IiwoZnVuY3Rpb24odCl7dC5zdG9wUHJvcGFnYXRpb24oKX0pKSxnb29nbGUubWFwcy5ldmVudC5hZGREb21MaXN0ZW5lcih0aGlzLmRpdl8sImNsaWNrIiwoZnVuY3Rpb24oaSl7aWYodD0hMSwhZSl7aWYoZ29vZ2xlLm1hcHMuZXZlbnQudHJpZ2dlcihuLCJjbGljayIsci5jbHVzdGVyXyksZ29vZ2xlLm1hcHMuZXZlbnQudHJpZ2dlcihuLCJjbHVzdGVyY2xpY2siLHIuY2x1c3Rlcl8pLG4uZ2V0Wm9vbU9uQ2xpY2soKSl7dmFyIG89bi5nZXRNYXhab29tKCkscz1yLmNsdXN0ZXJfLmdldEJvdW5kcygpO24uZ2V0TWFwKCkuZml0Qm91bmRzKHMpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7bi5nZXRNYXAoKS5maXRCb3VuZHMocyksbnVsbCE9PW8mJm4uZ2V0TWFwKCkuZ2V0Wm9vbSgpPm8mJm4uZ2V0TWFwKCkuc2V0Wm9vbShvKzEpfSksMTAwKX1pLmNhbmNlbEJ1YmJsZT0hMCxpLnN0b3BQcm9wYWdhdGlvbiYmaS5zdG9wUHJvcGFnYXRpb24oKX19KSksZ29vZ2xlLm1hcHMuZXZlbnQuYWRkRG9tTGlzdGVuZXIodGhpcy5kaXZfLCJtb3VzZW92ZXIiLChmdW5jdGlvbigpe2dvb2dsZS5tYXBzLmV2ZW50LnRyaWdnZXIobiwibW91c2VvdmVyIixyLmNsdXN0ZXJfKX0pKSxnb29nbGUubWFwcy5ldmVudC5hZGREb21MaXN0ZW5lcih0aGlzLmRpdl8sIm1vdXNlb3V0IiwoZnVuY3Rpb24oKXtnb29nbGUubWFwcy5ldmVudC50cmlnZ2VyKG4sIm1vdXNlb3V0IixyLmNsdXN0ZXJfKX0pKX0sZS5wcm90b3R5cGUub25SZW1vdmU9ZnVuY3Rpb24oKXt0aGlzLmRpdl8mJnRoaXMuZGl2Xy5wYXJlbnROb2RlJiYodGhpcy5oaWRlKCksZ29vZ2xlLm1hcHMuZXZlbnQucmVtb3ZlTGlzdGVuZXIodGhpcy5ib3VuZHNDaGFuZ2VkTGlzdGVuZXJfKSxnb29nbGUubWFwcy5ldmVudC5jbGVhckluc3RhbmNlTGlzdGVuZXJzKHRoaXMuZGl2XyksdGhpcy5kaXZfLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5kaXZfKSx0aGlzLmRpdl89bnVsbCl9LGUucHJvdG90eXBlLmRyYXc9ZnVuY3Rpb24oKXtpZih0aGlzLnZpc2libGVfKXt2YXIgdD10aGlzLmdldFBvc0Zyb21MYXRMbmdfKHRoaXMuY2VudGVyXyk7dGhpcy5kaXZfLnN0eWxlLnRvcD10LnkrInB4Iix0aGlzLmRpdl8uc3R5bGUubGVmdD10LngrInB4In19LGUucHJvdG90eXBlLmhpZGU9ZnVuY3Rpb24oKXt0aGlzLmRpdl8mJih0aGlzLmRpdl8uc3R5bGUuZGlzcGxheT0ibm9uZSIpLHRoaXMudmlzaWJsZV89ITF9LGUucHJvdG90eXBlLnNob3c9ZnVuY3Rpb24oKXt0aGlzLmRpdl8mJih0aGlzLmRpdl8uY2xhc3NOYW1lPXRoaXMuY2xhc3NOYW1lXyx0aGlzLmRpdl8uc3R5bGUuY3NzVGV4dD10aGlzLmNyZWF0ZUNzc18odGhpcy5nZXRQb3NGcm9tTGF0TG5nXyh0aGlzLmNlbnRlcl8pKSx0aGlzLmRpdl8uaW5uZXJIVE1MPSh0aGlzLnN0eWxlLnVybD90aGlzLmdldEltYWdlRWxlbWVudEh0bWwoKToiIikrdGhpcy5nZXRMYWJlbERpdkh0bWwoKSx2b2lkIDA9PT10aGlzLnN1bXNfLnRpdGxlfHwiIj09PXRoaXMuc3Vtc18udGl0bGU/dGhpcy5kaXZfLnRpdGxlPXRoaXMuY2x1c3Rlcl8uZ2V0TWFya2VyQ2x1c3RlcmVyKCkuZ2V0VGl0bGUoKTp0aGlzLmRpdl8udGl0bGU9dGhpcy5zdW1zXy50aXRsZSx0aGlzLmRpdl8uc3R5bGUuZGlzcGxheT0iIiksdGhpcy52aXNpYmxlXz0hMH0sZS5wcm90b3R5cGUuZ2V0TGFiZWxEaXZIdG1sPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5jbHVzdGVyXy5nZXRNYXJrZXJDbHVzdGVyZXIoKS5hcmlhTGFiZWxGbih0aGlzLnN1bXNfLnRleHQpLGU9e3Bvc2l0aW9uOiJhYnNvbHV0ZSIsdG9wOiRjKHRoaXMuYW5jaG9yVGV4dF9bMF0pLGxlZnQ6JGModGhpcy5hbmNob3JUZXh0X1sxXSksY29sb3I6dGhpcy5zdHlsZS50ZXh0Q29sb3IsImZvbnQtc2l6ZSI6JGModGhpcy5zdHlsZS50ZXh0U2l6ZSksImZvbnQtZmFtaWx5Ijp0aGlzLnN0eWxlLmZvbnRGYW1pbHksImZvbnQtd2VpZ2h0Ijp0aGlzLnN0eWxlLmZvbnRXZWlnaHQsImZvbnQtc3R5bGUiOnRoaXMuc3R5bGUuZm9udFN0eWxlLCJ0ZXh0LWRlY29yYXRpb24iOnRoaXMuc3R5bGUudGV4dERlY29yYXRpb24sInRleHQtYWxpZ24iOiJjZW50ZXIiLHdpZHRoOiRjKHRoaXMuc3R5bGUud2lkdGgpLCJsaW5lLWhlaWdodCI6JGModGhpcy5zdHlsZS50ZXh0TGluZUhlaWdodCl9O3JldHVybidcbjxkaXYgYXJpYS1sYWJlbD0iJy5jb25jYXQodCwnIiBzdHlsZT0iJykuY29uY2F0KEhjKGUpLCciIHRhYmluZGV4PSIwIj5cbiAgPHNwYW4gYXJpYS1oaWRkZW49InRydWUiPicpLmNvbmNhdCh0aGlzLnN1bXNfLnRleHQsIjwvc3Bhbj5cbjwvZGl2PlxuIil9LGUucHJvdG90eXBlLmdldEltYWdlRWxlbWVudEh0bWw9ZnVuY3Rpb24oKXt2YXIgdD0odGhpcy5zdHlsZS5iYWNrZ3JvdW5kUG9zaXRpb258fCIwIDAiKS5zcGxpdCgiICIpLGU9cGFyc2VJbnQodFswXS5yZXBsYWNlKC9eXHMrfFxzKyQvZywiIiksMTApLHI9cGFyc2VJbnQodFsxXS5yZXBsYWNlKC9eXHMrfFxzKyQvZywiIiksMTApLG49e307aWYodGhpcy5jbHVzdGVyXy5nZXRNYXJrZXJDbHVzdGVyZXIoKS5nZXRFbmFibGVSZXRpbmFJY29ucygpKW49e3dpZHRoOiRjKHRoaXMuc3R5bGUud2lkdGgpLGhlaWdodDokYyh0aGlzLnN0eWxlLmhlaWdodCl9O2Vsc2V7dmFyIGk9Wy0xKnIsLTEqZSt0aGlzLnN0eWxlLndpZHRoLC0xKnIrdGhpcy5zdHlsZS5oZWlnaHQsLTEqZV0sbz1pWzFdLHM9aVsyXSxhPWlbM107bj17Y2xpcDoicmVjdCgiLmNvbmNhdChpWzBdLCJweCwgIikuY29uY2F0KG8sInB4LCAiKS5jb25jYXQocywicHgsICIpLmNvbmNhdChhLCJweCkiKX19dmFyIHU9dGhpcy5zdW1zXy51cmw/e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUifTp7fSxjPUhjKF9zKF9zKHtwb3NpdGlvbjoiYWJzb2x1dGUiLHRvcDokYyhyKSxsZWZ0OiRjKGUpfSxuKSx1KSk7cmV0dXJuJzxpbWcgYWx0PSInLmNvbmNhdCh0aGlzLnN1bXNfLnRleHQsJyIgYXJpYS1oaWRkZW49InRydWUiIHNyYz0iJykuY29uY2F0KHRoaXMuc3R5bGUudXJsLCciIHN0eWxlPSInKS5jb25jYXQoYywnIi8+Jyl9LGUucHJvdG90eXBlLnVzZVN0eWxlPWZ1bmN0aW9uKHQpe3RoaXMuc3Vtc189dDt2YXIgZT1NYXRoLm1heCgwLHQuaW5kZXgtMSk7ZT1NYXRoLm1pbih0aGlzLnN0eWxlc18ubGVuZ3RoLTEsZSksdGhpcy5zdHlsZT10aGlzLnN1bXNfLnVybD9fcyhfcyh7fSx0aGlzLnN0eWxlc19bZV0pLHt1cmw6dGhpcy5zdW1zXy51cmx9KTp0aGlzLnN0eWxlc19bZV0sdGhpcy5hbmNob3JUZXh0Xz10aGlzLnN0eWxlLmFuY2hvclRleHR8fFswLDBdLHRoaXMuYW5jaG9ySWNvbl89dGhpcy5zdHlsZS5hbmNob3JJY29ufHxbTWF0aC5mbG9vcih0aGlzLnN0eWxlLmhlaWdodC8yKSxNYXRoLmZsb29yKHRoaXMuc3R5bGUud2lkdGgvMildLHRoaXMuY2xhc3NOYW1lXz10aGlzLmNsdXN0ZXJfLmdldE1hcmtlckNsdXN0ZXJlcigpLmdldENsdXN0ZXJDbGFzcygpKyIgIisodGhpcy5zdHlsZS5jbGFzc05hbWV8fCJjbHVzdGVyLSIrZSl9LGUucHJvdG90eXBlLnNldENlbnRlcj1mdW5jdGlvbih0KXt0aGlzLmNlbnRlcl89dH0sZS5wcm90b3R5cGUuY3JlYXRlQ3NzXz1mdW5jdGlvbih0KXtyZXR1cm4gSGMoeyJ6LWluZGV4IjoiIi5jb25jYXQodGhpcy5jbHVzdGVyXy5nZXRNYXJrZXJDbHVzdGVyZXIoKS5nZXRaSW5kZXgoKSksdG9wOiRjKHQueSksbGVmdDokYyh0LngpLHdpZHRoOiRjKHRoaXMuc3R5bGUud2lkdGgpLGhlaWdodDokYyh0aGlzLnN0eWxlLmhlaWdodCksY3Vyc29yOiJwb2ludGVyIixwb3NpdGlvbjoiYWJzb2x1dGUiLCItd2Via2l0LXVzZXItc2VsZWN0Ijoibm9uZSIsIi1raHRtbC11c2VyLXNlbGVjdCI6Im5vbmUiLCItbW96LXVzZXItc2VsZWN0Ijoibm9uZSIsIi1vLXVzZXItc2VsZWN0Ijoibm9uZSIsInVzZXItc2VsZWN0Ijoibm9uZSJ9KX0sZS5wcm90b3R5cGUuZ2V0UG9zRnJvbUxhdExuZ189ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5nZXRQcm9qZWN0aW9uKCkuZnJvbUxhdExuZ1RvRGl2UGl4ZWwodCk7cmV0dXJuIGUueD1NYXRoLmZsb29yKGUueC10aGlzLmFuY2hvckljb25fWzFdKSxlLnk9TWF0aC5mbG9vcihlLnktdGhpcy5hbmNob3JJY29uX1swXSksZX0sZX0oRGMpLFZjPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCh0KXt0aGlzLm1hcmtlckNsdXN0ZXJlcl89dCx0aGlzLm1hcF89dGhpcy5tYXJrZXJDbHVzdGVyZXJfLmdldE1hcCgpLHRoaXMubWluQ2x1c3RlclNpemVfPXRoaXMubWFya2VyQ2x1c3RlcmVyXy5nZXRNaW5pbXVtQ2x1c3RlclNpemUoKSx0aGlzLmF2ZXJhZ2VDZW50ZXJfPXRoaXMubWFya2VyQ2x1c3RlcmVyXy5nZXRBdmVyYWdlQ2VudGVyKCksdGhpcy5tYXJrZXJzXz1bXSx0aGlzLmNlbnRlcl89bnVsbCx0aGlzLmJvdW5kc189bnVsbCx0aGlzLmNsdXN0ZXJJY29uXz1uZXcgR2ModGhpcyx0aGlzLm1hcmtlckNsdXN0ZXJlcl8uZ2V0U3R5bGVzKCkpfXJldHVybiB0LnByb3RvdHlwZS5nZXRTaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFya2Vyc18ubGVuZ3RofSx0LnByb3RvdHlwZS5nZXRNYXJrZXJzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFya2Vyc199LHQucHJvdG90eXBlLmdldENlbnRlcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNlbnRlcl99LHQucHJvdG90eXBlLmdldE1hcD1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcF99LHQucHJvdG90eXBlLmdldE1hcmtlckNsdXN0ZXJlcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcmtlckNsdXN0ZXJlcl99LHQucHJvdG90eXBlLmdldEJvdW5kcz1mdW5jdGlvbigpe2Zvcih2YXIgdD1uZXcgZ29vZ2xlLm1hcHMuTGF0TG5nQm91bmRzKHRoaXMuY2VudGVyXyx0aGlzLmNlbnRlcl8pLGU9dGhpcy5nZXRNYXJrZXJzKCkscj0wO3I8ZS5sZW5ndGg7cisrKXQuZXh0ZW5kKGVbcl0uZ2V0UG9zaXRpb24oKSk7cmV0dXJuIHR9LHQucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbigpe3RoaXMuY2x1c3Rlckljb25fLnNldE1hcChudWxsKSx0aGlzLm1hcmtlcnNfPVtdLGRlbGV0ZSB0aGlzLm1hcmtlcnNffSx0LnByb3RvdHlwZS5hZGRNYXJrZXI9ZnVuY3Rpb24odCl7aWYodGhpcy5pc01hcmtlckFscmVhZHlBZGRlZF8odCkpcmV0dXJuITE7aWYodGhpcy5jZW50ZXJfKXtpZih0aGlzLmF2ZXJhZ2VDZW50ZXJfKXt2YXIgZT10aGlzLm1hcmtlcnNfLmxlbmd0aCsxLHI9KHRoaXMuY2VudGVyXy5sYXQoKSooZS0xKSt0LmdldFBvc2l0aW9uKCkubGF0KCkpL2Usbj0odGhpcy5jZW50ZXJfLmxuZygpKihlLTEpK3QuZ2V0UG9zaXRpb24oKS5sbmcoKSkvZTt0aGlzLmNlbnRlcl89bmV3IGdvb2dsZS5tYXBzLkxhdExuZyhyLG4pLHRoaXMuY2FsY3VsYXRlQm91bmRzXygpfX1lbHNlIHRoaXMuY2VudGVyXz10LmdldFBvc2l0aW9uKCksdGhpcy5jYWxjdWxhdGVCb3VuZHNfKCk7dC5pc0FkZGVkPSEwLHRoaXMubWFya2Vyc18ucHVzaCh0KTt2YXIgaT10aGlzLm1hcmtlcnNfLmxlbmd0aCxvPXRoaXMubWFya2VyQ2x1c3RlcmVyXy5nZXRNYXhab29tKCk7aWYobnVsbCE9PW8mJnRoaXMubWFwXy5nZXRab29tKCk+byl0LmdldE1hcCgpIT09dGhpcy5tYXBfJiZ0LnNldE1hcCh0aGlzLm1hcF8pO2Vsc2UgaWYoaTx0aGlzLm1pbkNsdXN0ZXJTaXplXyl0LmdldE1hcCgpIT09dGhpcy5tYXBfJiZ0LnNldE1hcCh0aGlzLm1hcF8pO2Vsc2UgaWYoaT09PXRoaXMubWluQ2x1c3RlclNpemVfKWZvcih2YXIgcz0wO3M8aTtzKyspdGhpcy5tYXJrZXJzX1tzXS5zZXRNYXAobnVsbCk7ZWxzZSB0LnNldE1hcChudWxsKTtyZXR1cm4hMH0sdC5wcm90b3R5cGUuaXNNYXJrZXJJbkNsdXN0ZXJCb3VuZHM9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuYm91bmRzXy5jb250YWlucyh0LmdldFBvc2l0aW9uKCkpfSx0LnByb3RvdHlwZS5jYWxjdWxhdGVCb3VuZHNfPWZ1bmN0aW9uKCl7dmFyIHQ9bmV3IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcyh0aGlzLmNlbnRlcl8sdGhpcy5jZW50ZXJfKTt0aGlzLmJvdW5kc189dGhpcy5tYXJrZXJDbHVzdGVyZXJfLmdldEV4dGVuZGVkQm91bmRzKHQpfSx0LnByb3RvdHlwZS51cGRhdGVJY29uPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5tYXJrZXJzXy5sZW5ndGgsZT10aGlzLm1hcmtlckNsdXN0ZXJlcl8uZ2V0TWF4Wm9vbSgpO2lmKG51bGwhPT1lJiZ0aGlzLm1hcF8uZ2V0Wm9vbSgpPmUpdGhpcy5jbHVzdGVySWNvbl8uaGlkZSgpO2Vsc2UgaWYodDx0aGlzLm1pbkNsdXN0ZXJTaXplXyl0aGlzLmNsdXN0ZXJJY29uXy5oaWRlKCk7ZWxzZXt2YXIgcj10aGlzLm1hcmtlckNsdXN0ZXJlcl8uZ2V0U3R5bGVzKCkubGVuZ3RoLG49dGhpcy5tYXJrZXJDbHVzdGVyZXJfLmdldENhbGN1bGF0b3IoKSh0aGlzLm1hcmtlcnNfLHIpO3RoaXMuY2x1c3Rlckljb25fLnNldENlbnRlcih0aGlzLmNlbnRlcl8pLHRoaXMuY2x1c3Rlckljb25fLnVzZVN0eWxlKG4pLHRoaXMuY2x1c3Rlckljb25fLnNob3coKX19LHQucHJvdG90eXBlLmlzTWFya2VyQWxyZWFkeUFkZGVkXz1mdW5jdGlvbih0KXtpZih0aGlzLm1hcmtlcnNfLmluZGV4T2YpcmV0dXJuLTEhPT10aGlzLm1hcmtlcnNfLmluZGV4T2YodCk7Zm9yKHZhciBlPTA7ZTx0aGlzLm1hcmtlcnNfLmxlbmd0aDtlKyspaWYodD09PXRoaXMubWFya2Vyc19bZV0pcmV0dXJuITA7cmV0dXJuITF9LHR9KCksVWM9ZnVuY3Rpb24odCxlLHIpe3JldHVybiB2b2lkIDAhPT10W2VdP3RbZV06cn07cmV0dXJuIGZ1bmN0aW9uKHQpe2Z1bmN0aW9uIGUocixuLGkpe3ZvaWQgMD09PW4mJihuPVtdKSx2b2lkIDA9PT1pJiYoaT17fSk7dmFyIG89dC5jYWxsKHRoaXMpfHx0aGlzO3JldHVybiBvLm9wdGlvbnM9aSxvLm1hcmtlcnNfPVtdLG8uY2x1c3RlcnNfPVtdLG8ubGlzdGVuZXJzXz1bXSxvLmFjdGl2ZU1hcF89bnVsbCxvLnJlYWR5Xz0hMSxvLmFyaWFMYWJlbEZuPW8ub3B0aW9ucy5hcmlhTGFiZWxGbnx8ZnVuY3Rpb24oKXtyZXR1cm4iIn0sby56SW5kZXhfPW8ub3B0aW9ucy56SW5kZXh8fE51bWJlcihnb29nbGUubWFwcy5NYXJrZXIuTUFYX1pJTkRFWCkrMSxvLmdyaWRTaXplXz1vLm9wdGlvbnMuZ3JpZFNpemV8fDYwLG8ubWluQ2x1c3RlclNpemVfPW8ub3B0aW9ucy5taW5pbXVtQ2x1c3RlclNpemV8fDIsby5tYXhab29tXz1vLm9wdGlvbnMubWF4Wm9vbXx8bnVsbCxvLnN0eWxlc189by5vcHRpb25zLnN0eWxlc3x8W10sby50aXRsZV89by5vcHRpb25zLnRpdGxlfHwiIixvLnpvb21PbkNsaWNrXz1VYyhvLm9wdGlvbnMsInpvb21PbkNsaWNrIiwhMCksby5hdmVyYWdlQ2VudGVyXz1VYyhvLm9wdGlvbnMsImF2ZXJhZ2VDZW50ZXIiLCExKSxvLmlnbm9yZUhpZGRlbl89VWMoby5vcHRpb25zLCJpZ25vcmVIaWRkZW4iLCExKSxvLmVuYWJsZVJldGluYUljb25zXz1VYyhvLm9wdGlvbnMsImVuYWJsZVJldGluYUljb25zIiwhMSksby5pbWFnZVBhdGhfPW8ub3B0aW9ucy5pbWFnZVBhdGh8fGUuSU1BR0VfUEFUSCxvLmltYWdlRXh0ZW5zaW9uXz1vLm9wdGlvbnMuaW1hZ2VFeHRlbnNpb258fGUuSU1BR0VfRVhURU5TSU9OLG8uaW1hZ2VTaXplc189by5vcHRpb25zLmltYWdlU2l6ZXN8fGUuSU1BR0VfU0laRVMsby5jYWxjdWxhdG9yXz1vLm9wdGlvbnMuY2FsY3VsYXRvcnx8ZS5DQUxDVUxBVE9SLG8uYmF0Y2hTaXplXz1vLm9wdGlvbnMuYmF0Y2hTaXplfHxlLkJBVENIX1NJWkUsby5iYXRjaFNpemVJRV89by5vcHRpb25zLmJhdGNoU2l6ZUlFfHxlLkJBVENIX1NJWkVfSUUsby5jbHVzdGVyQ2xhc3NfPW8ub3B0aW9ucy5jbHVzdGVyQ2xhc3N8fCJjbHVzdGVyIiwtMSE9PW5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJtc2llIikmJihvLmJhdGNoU2l6ZV89by5iYXRjaFNpemVJRV8pLG8uc2V0dXBTdHlsZXNfKCksby5hZGRNYXJrZXJzKG4sITApLG8uc2V0TWFwKHIpLG99cmV0dXJuIG1zKGUsdCksZS5wcm90b3R5cGUub25BZGQ9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuYWN0aXZlTWFwXz10aGlzLmdldE1hcCgpLHRoaXMucmVhZHlfPSEwLHRoaXMucmVwYWludCgpLHRoaXMucHJldlpvb21fPXRoaXMuZ2V0TWFwKCkuZ2V0Wm9vbSgpLHRoaXMubGlzdGVuZXJzXz1bZ29vZ2xlLm1hcHMuZXZlbnQuYWRkTGlzdGVuZXIodGhpcy5nZXRNYXAoKSwiem9vbV9jaGFuZ2VkIiwoZnVuY3Rpb24oKXt2YXIgZT10LmdldE1hcCgpLHI9ZS5taW5ab29tfHwwLG49TWF0aC5taW4oZS5tYXhab29tfHwxMDAsZS5tYXBUeXBlc1tlLmdldE1hcFR5cGVJZCgpXS5tYXhab29tKSxpPU1hdGgubWluKE1hdGgubWF4KHQuZ2V0TWFwKCkuZ2V0Wm9vbSgpLHIpLG4pO3QucHJldlpvb21fIT1pJiYodC5wcmV2Wm9vbV89aSx0LnJlc2V0Vmlld3BvcnRfKCExKSl9KSksZ29vZ2xlLm1hcHMuZXZlbnQuYWRkTGlzdGVuZXIodGhpcy5nZXRNYXAoKSwiaWRsZSIsKGZ1bmN0aW9uKCl7dC5yZWRyYXdfKCl9KSldfSxlLnByb3RvdHlwZS5vblJlbW92ZT1mdW5jdGlvbigpe2Zvcih2YXIgdD0wO3Q8dGhpcy5tYXJrZXJzXy5sZW5ndGg7dCsrKXRoaXMubWFya2Vyc19bdF0uZ2V0TWFwKCkhPT10aGlzLmFjdGl2ZU1hcF8mJnRoaXMubWFya2Vyc19bdF0uc2V0TWFwKHRoaXMuYWN0aXZlTWFwXyk7Zm9yKHQ9MDt0PHRoaXMuY2x1c3RlcnNfLmxlbmd0aDt0KyspdGhpcy5jbHVzdGVyc19bdF0ucmVtb3ZlKCk7dGhpcy5jbHVzdGVyc189W107Zm9yKHQ9MDt0PHRoaXMubGlzdGVuZXJzXy5sZW5ndGg7dCsrKWdvb2dsZS5tYXBzLmV2ZW50LnJlbW92ZUxpc3RlbmVyKHRoaXMubGlzdGVuZXJzX1t0XSk7dGhpcy5saXN0ZW5lcnNfPVtdLHRoaXMuYWN0aXZlTWFwXz1udWxsLHRoaXMucmVhZHlfPSExfSxlLnByb3RvdHlwZS5kcmF3PWZ1bmN0aW9uKCl7fSxlLnByb3RvdHlwZS5zZXR1cFN0eWxlc189ZnVuY3Rpb24oKXtpZighKHRoaXMuc3R5bGVzXy5sZW5ndGg+MCkpZm9yKHZhciB0PTA7dDx0aGlzLmltYWdlU2l6ZXNfLmxlbmd0aDt0Kyspe3ZhciByPXRoaXMuaW1hZ2VTaXplc19bdF07dGhpcy5zdHlsZXNfLnB1c2goZS53aXRoRGVmYXVsdFN0eWxlKHt1cmw6dGhpcy5pbWFnZVBhdGhfKyh0KzEpKyIuIit0aGlzLmltYWdlRXh0ZW5zaW9uXyxoZWlnaHQ6cix3aWR0aDpyfSkpfX0sZS5wcm90b3R5cGUuZml0TWFwVG9NYXJrZXJzPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10aGlzLmdldE1hcmtlcnMoKSxyPW5ldyBnb29nbGUubWFwcy5MYXRMbmdCb3VuZHMsbj0wO248ZS5sZW5ndGg7bisrKSFlW25dLmdldFZpc2libGUoKSYmdGhpcy5nZXRJZ25vcmVIaWRkZW4oKXx8ci5leHRlbmQoZVtuXS5nZXRQb3NpdGlvbigpKTt0aGlzLmdldE1hcCgpLmZpdEJvdW5kcyhyLHQpfSxlLnByb3RvdHlwZS5nZXRHcmlkU2l6ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdyaWRTaXplX30sZS5wcm90b3R5cGUuc2V0R3JpZFNpemU9ZnVuY3Rpb24odCl7dGhpcy5ncmlkU2l6ZV89dH0sZS5wcm90b3R5cGUuZ2V0TWluaW11bUNsdXN0ZXJTaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWluQ2x1c3RlclNpemVffSxlLnByb3RvdHlwZS5zZXRNaW5pbXVtQ2x1c3RlclNpemU9ZnVuY3Rpb24odCl7dGhpcy5taW5DbHVzdGVyU2l6ZV89dH0sZS5wcm90b3R5cGUuZ2V0TWF4Wm9vbT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1heFpvb21ffSxlLnByb3RvdHlwZS5zZXRNYXhab29tPWZ1bmN0aW9uKHQpe3RoaXMubWF4Wm9vbV89dH0sZS5wcm90b3R5cGUuZ2V0WkluZGV4PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuekluZGV4X30sZS5wcm90b3R5cGUuc2V0WkluZGV4PWZ1bmN0aW9uKHQpe3RoaXMuekluZGV4Xz10fSxlLnByb3RvdHlwZS5nZXRTdHlsZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zdHlsZXNffSxlLnByb3RvdHlwZS5zZXRTdHlsZXM9ZnVuY3Rpb24odCl7dGhpcy5zdHlsZXNfPXR9LGUucHJvdG90eXBlLmdldFRpdGxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGl0bGVffSxlLnByb3RvdHlwZS5zZXRUaXRsZT1mdW5jdGlvbih0KXt0aGlzLnRpdGxlXz10fSxlLnByb3RvdHlwZS5nZXRab29tT25DbGljaz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnpvb21PbkNsaWNrX30sZS5wcm90b3R5cGUuc2V0Wm9vbU9uQ2xpY2s9ZnVuY3Rpb24odCl7dGhpcy56b29tT25DbGlja189dH0sZS5wcm90b3R5cGUuZ2V0QXZlcmFnZUNlbnRlcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmF2ZXJhZ2VDZW50ZXJffSxlLnByb3RvdHlwZS5zZXRBdmVyYWdlQ2VudGVyPWZ1bmN0aW9uKHQpe3RoaXMuYXZlcmFnZUNlbnRlcl89dH0sZS5wcm90b3R5cGUuZ2V0SWdub3JlSGlkZGVuPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWdub3JlSGlkZGVuX30sZS5wcm90b3R5cGUuc2V0SWdub3JlSGlkZGVuPWZ1bmN0aW9uKHQpe3RoaXMuaWdub3JlSGlkZGVuXz10fSxlLnByb3RvdHlwZS5nZXRFbmFibGVSZXRpbmFJY29ucz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmVuYWJsZVJldGluYUljb25zX30sZS5wcm90b3R5cGUuc2V0RW5hYmxlUmV0aW5hSWNvbnM9ZnVuY3Rpb24odCl7dGhpcy5lbmFibGVSZXRpbmFJY29uc189dH0sZS5wcm90b3R5cGUuZ2V0SW1hZ2VFeHRlbnNpb249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pbWFnZUV4dGVuc2lvbl99LGUucHJvdG90eXBlLnNldEltYWdlRXh0ZW5zaW9uPWZ1bmN0aW9uKHQpe3RoaXMuaW1hZ2VFeHRlbnNpb25fPXR9LGUucHJvdG90eXBlLmdldEltYWdlUGF0aD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmltYWdlUGF0aF99LGUucHJvdG90eXBlLnNldEltYWdlUGF0aD1mdW5jdGlvbih0KXt0aGlzLmltYWdlUGF0aF89dH0sZS5wcm90b3R5cGUuZ2V0SW1hZ2VTaXplcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmltYWdlU2l6ZXNffSxlLnByb3RvdHlwZS5zZXRJbWFnZVNpemVzPWZ1bmN0aW9uKHQpe3RoaXMuaW1hZ2VTaXplc189dH0sZS5wcm90b3R5cGUuZ2V0Q2FsY3VsYXRvcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNhbGN1bGF0b3JffSxlLnByb3RvdHlwZS5zZXRDYWxjdWxhdG9yPWZ1bmN0aW9uKHQpe3RoaXMuY2FsY3VsYXRvcl89dH0sZS5wcm90b3R5cGUuZ2V0QmF0Y2hTaXplSUU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5iYXRjaFNpemVJRV99LGUucHJvdG90eXBlLnNldEJhdGNoU2l6ZUlFPWZ1bmN0aW9uKHQpe3RoaXMuYmF0Y2hTaXplSUVfPXR9LGUucHJvdG90eXBlLmdldENsdXN0ZXJDbGFzcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNsdXN0ZXJDbGFzc199LGUucHJvdG90eXBlLnNldENsdXN0ZXJDbGFzcz1mdW5jdGlvbih0KXt0aGlzLmNsdXN0ZXJDbGFzc189dH0sZS5wcm90b3R5cGUuZ2V0TWFya2Vycz1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcmtlcnNffSxlLnByb3RvdHlwZS5nZXRUb3RhbE1hcmtlcnM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXJrZXJzXy5sZW5ndGh9LGUucHJvdG90eXBlLmdldENsdXN0ZXJzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2x1c3RlcnNffSxlLnByb3RvdHlwZS5nZXRUb3RhbENsdXN0ZXJzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2x1c3RlcnNfLmxlbmd0aH0sZS5wcm90b3R5cGUuYWRkTWFya2VyPWZ1bmN0aW9uKHQsZSl7dGhpcy5wdXNoTWFya2VyVG9fKHQpLGV8fHRoaXMucmVkcmF3XygpfSxlLnByb3RvdHlwZS5hZGRNYXJrZXJzPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByIGluIHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJnRoaXMucHVzaE1hcmtlclRvXyh0W3JdKTtlfHx0aGlzLnJlZHJhd18oKX0sZS5wcm90b3R5cGUucHVzaE1hcmtlclRvXz1mdW5jdGlvbih0KXt2YXIgZT10aGlzO3QuZ2V0RHJhZ2dhYmxlKCkmJmdvb2dsZS5tYXBzLmV2ZW50LmFkZExpc3RlbmVyKHQsImRyYWdlbmQiLChmdW5jdGlvbigpe2UucmVhZHlfJiYodC5pc0FkZGVkPSExLGUucmVwYWludCgpKX0pKSx0LmlzQWRkZWQ9ITEsdGhpcy5tYXJrZXJzXy5wdXNoKHQpfSxlLnByb3RvdHlwZS5yZW1vdmVNYXJrZXI9ZnVuY3Rpb24odCxlKXt2YXIgcj10aGlzLnJlbW92ZU1hcmtlcl8odCk7cmV0dXJuIWUmJnImJnRoaXMucmVwYWludCgpLHJ9LGUucHJvdG90eXBlLnJlbW92ZU1hcmtlcnM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIHI9ITEsbj0wO248dC5sZW5ndGg7bisrKXt2YXIgaT10aGlzLnJlbW92ZU1hcmtlcl8odFtuXSk7cj1yfHxpfXJldHVybiFlJiZyJiZ0aGlzLnJlcGFpbnQoKSxyfSxlLnByb3RvdHlwZS5yZW1vdmVNYXJrZXJfPWZ1bmN0aW9uKHQpe3ZhciBlPS0xO2lmKHRoaXMubWFya2Vyc18uaW5kZXhPZillPXRoaXMubWFya2Vyc18uaW5kZXhPZih0KTtlbHNlIGZvcih2YXIgcj0wO3I8dGhpcy5tYXJrZXJzXy5sZW5ndGg7cisrKWlmKHQ9PT10aGlzLm1hcmtlcnNfW3JdKXtlPXI7YnJlYWt9cmV0dXJuLTEhPT1lJiYodC5zZXRNYXAobnVsbCksdGhpcy5tYXJrZXJzXy5zcGxpY2UoZSwxKSwhMCl9LGUucHJvdG90eXBlLmNsZWFyTWFya2Vycz1mdW5jdGlvbigpe3RoaXMucmVzZXRWaWV3cG9ydF8oITApLHRoaXMubWFya2Vyc189W119LGUucHJvdG90eXBlLnJlcGFpbnQ9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmNsdXN0ZXJzXy5zbGljZSgpO3RoaXMuY2x1c3RlcnNfPVtdLHRoaXMucmVzZXRWaWV3cG9ydF8oITEpLHRoaXMucmVkcmF3XygpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTx0Lmxlbmd0aDtlKyspdFtlXS5yZW1vdmUoKX0pLDApfSxlLnByb3RvdHlwZS5nZXRFeHRlbmRlZEJvdW5kcz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmdldFByb2plY3Rpb24oKSxyPW5ldyBnb29nbGUubWFwcy5MYXRMbmcodC5nZXROb3J0aEVhc3QoKS5sYXQoKSx0LmdldE5vcnRoRWFzdCgpLmxuZygpKSxuPW5ldyBnb29nbGUubWFwcy5MYXRMbmcodC5nZXRTb3V0aFdlc3QoKS5sYXQoKSx0LmdldFNvdXRoV2VzdCgpLmxuZygpKSxpPWUuZnJvbUxhdExuZ1RvRGl2UGl4ZWwocik7aS54Kz10aGlzLmdyaWRTaXplXyxpLnktPXRoaXMuZ3JpZFNpemVfO3ZhciBvPWUuZnJvbUxhdExuZ1RvRGl2UGl4ZWwobik7by54LT10aGlzLmdyaWRTaXplXyxvLnkrPXRoaXMuZ3JpZFNpemVfO3ZhciBzPWUuZnJvbURpdlBpeGVsVG9MYXRMbmcoaSksYT1lLmZyb21EaXZQaXhlbFRvTGF0TG5nKG8pO3JldHVybiB0LmV4dGVuZChzKSx0LmV4dGVuZChhKSx0fSxlLnByb3RvdHlwZS5yZWRyYXdfPWZ1bmN0aW9uKCl7dGhpcy5jcmVhdGVDbHVzdGVyc18oMCl9LGUucHJvdG90eXBlLnJlc2V0Vmlld3BvcnRfPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0wO2U8dGhpcy5jbHVzdGVyc18ubGVuZ3RoO2UrKyl0aGlzLmNsdXN0ZXJzX1tlXS5yZW1vdmUoKTt0aGlzLmNsdXN0ZXJzXz1bXTtmb3IoZT0wO2U8dGhpcy5tYXJrZXJzXy5sZW5ndGg7ZSsrKXt2YXIgcj10aGlzLm1hcmtlcnNfW2VdO3IuaXNBZGRlZD0hMSx0JiZyLnNldE1hcChudWxsKX19LGUucHJvdG90eXBlLmRpc3RhbmNlQmV0d2VlblBvaW50c189ZnVuY3Rpb24odCxlKXt2YXIgcj0oZS5sYXQoKS10LmxhdCgpKSpNYXRoLlBJLzE4MCxuPShlLmxuZygpLXQubG5nKCkpKk1hdGguUEkvMTgwLGk9TWF0aC5zaW4oci8yKSpNYXRoLnNpbihyLzIpK01hdGguY29zKHQubGF0KCkqTWF0aC5QSS8xODApKk1hdGguY29zKGUubGF0KCkqTWF0aC5QSS8xODApKk1hdGguc2luKG4vMikqTWF0aC5zaW4obi8yKTtyZXR1cm4gNjM3MSooMipNYXRoLmF0YW4yKE1hdGguc3FydChpKSxNYXRoLnNxcnQoMS1pKSkpfSxlLnByb3RvdHlwZS5pc01hcmtlckluQm91bmRzXz1mdW5jdGlvbih0LGUpe3JldHVybiBlLmNvbnRhaW5zKHQuZ2V0UG9zaXRpb24oKSl9LGUucHJvdG90eXBlLmFkZFRvQ2xvc2VzdENsdXN0ZXJfPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT00ZTQscj1udWxsLG49MDtuPHRoaXMuY2x1c3RlcnNfLmxlbmd0aDtuKyspe3ZhciBpLG89KGk9dGhpcy5jbHVzdGVyc19bbl0pLmdldENlbnRlcigpO2lmKG8pe3ZhciBzPXRoaXMuZGlzdGFuY2VCZXR3ZWVuUG9pbnRzXyhvLHQuZ2V0UG9zaXRpb24oKSk7czxlJiYoZT1zLHI9aSl9fXImJnIuaXNNYXJrZXJJbkNsdXN0ZXJCb3VuZHModCk/ci5hZGRNYXJrZXIodCk6KChpPW5ldyBWYyh0aGlzKSkuYWRkTWFya2VyKHQpLHRoaXMuY2x1c3RlcnNfLnB1c2goaSkpfSxlLnByb3RvdHlwZS5jcmVhdGVDbHVzdGVyc189ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztpZih0aGlzLnJlYWR5Xyl7MD09PXQmJihnb29nbGUubWFwcy5ldmVudC50cmlnZ2VyKHRoaXMsImNsdXN0ZXJpbmdiZWdpbiIsdGhpcyksdm9pZCAwIT09dGhpcy50aW1lclJlZlN0YXRpYyYmKGNsZWFyVGltZW91dCh0aGlzLnRpbWVyUmVmU3RhdGljKSxkZWxldGUgdGhpcy50aW1lclJlZlN0YXRpYykpO2Zvcih2YXIgcj1uZXcgZ29vZ2xlLm1hcHMuTGF0TG5nQm91bmRzKHRoaXMuZ2V0TWFwKCkuZ2V0Qm91bmRzKCkuZ2V0U291dGhXZXN0KCksdGhpcy5nZXRNYXAoKS5nZXRCb3VuZHMoKS5nZXROb3J0aEVhc3QoKSksbj10aGlzLmdldEV4dGVuZGVkQm91bmRzKHIpLGk9TWF0aC5taW4odCt0aGlzLmJhdGNoU2l6ZV8sdGhpcy5tYXJrZXJzXy5sZW5ndGgpLG89dDtvPGk7bysrKXt2YXIgcz10aGlzLm1hcmtlcnNfW29dOyFzLmlzQWRkZWQmJnRoaXMuaXNNYXJrZXJJbkJvdW5kc18ocyxuKSYmKCF0aGlzLmlnbm9yZUhpZGRlbl98fHRoaXMuaWdub3JlSGlkZGVuXyYmcy5nZXRWaXNpYmxlKCkpJiZ0aGlzLmFkZFRvQ2xvc2VzdENsdXN0ZXJfKHMpfWlmKGk8dGhpcy5tYXJrZXJzXy5sZW5ndGgpdGhpcy50aW1lclJlZlN0YXRpYz13aW5kb3cuc2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLmNyZWF0ZUNsdXN0ZXJzXyhpKX0pLDApO2Vsc2V7ZGVsZXRlIHRoaXMudGltZXJSZWZTdGF0aWMsZ29vZ2xlLm1hcHMuZXZlbnQudHJpZ2dlcih0aGlzLCJjbHVzdGVyaW5nZW5kIix0aGlzKTtmb3Iobz0wO288dGhpcy5jbHVzdGVyc18ubGVuZ3RoO28rKyl0aGlzLmNsdXN0ZXJzX1tvXS51cGRhdGVJY29uKCl9fX0sZS5DQUxDVUxBVE9SPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPTAsbj10Lmxlbmd0aCxpPW47MCE9PWk7KWk9TWF0aC5mbG9vcihpLzEwKSxyKys7cmV0dXJuIHI9TWF0aC5taW4ocixlKSx7dGV4dDpuLnRvU3RyaW5nKCksaW5kZXg6cix0aXRsZToiIn19LGUud2l0aERlZmF1bHRTdHlsZT1mdW5jdGlvbih0KXtyZXR1cm4gX3Moe3RleHRDb2xvcjoiYmxhY2siLHRleHRTaXplOjExLHRleHREZWNvcmF0aW9uOiJub25lIix0ZXh0TGluZUhlaWdodDp0LmhlaWdodCxmb250V2VpZ2h0OiJib2xkIixmb250U3R5bGU6Im5vcm1hbCIsZm9udEZhbWlseToiQXJpYWwsc2Fucy1zZXJpZiIsYmFja2dyb3VuZFBvc2l0aW9uOiIwIDAifSx0KX0sZS5CQVRDSF9TSVpFPTJlMyxlLkJBVENIX1NJWkVfSUU9NTAwLGUuSU1BR0VfUEFUSD0iLi4vaW1hZ2VzL20iLGUuSU1BR0VfRVhURU5TSU9OPSJwbmciLGUuSU1BR0VfU0laRVM9WzUzLDU2LDY2LDc4LDkwXSxlfShEYyl9KCk7Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1pbi5qcy5tYXAK"}},"time_used":82,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":82,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/i/77/77/fa7/33fa7/48x48/znytGf_20x20_bce0771b3e0c8bbb.svg","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.925Z","timestamp":1785161166925,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /i/77/77/fa7/33fa7/48x48/znytGf_20x20_bce0771b3e0c8bbb.svg HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 487\r\nlast-modified: Wed, 10 Jul 2024 11:14:43 GMT\r\netag: \"3e3-61ce2c0cb4ec0-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":995,"size_decoded":771,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"0c794d670b55ed0715fe6931871e289a","sha1":"fb5bd140aacdf4501f56f61d86d311036348fb90","sha256":"85a1187317c8e8b4259f725b632223944a7d9a91e28b5b386732caf3341cb676","sha512":"3264a9149ac3cbade91854f77b95518ad48f44989d646f13f8df80b45a79bd4e6e9eacb47700128b9dfab0cb613c34e6007344432fb05ef489f25d531e18fb9e","ssdeep":"","tlshash":"1f11213ed368c40ce203cf304174b985322a7086f0c8c39eefc199c1acaa8e355627b9","first_seen":"2026-07-27T12:47:52.478154Z","last_seen":"2026-07-27T14:06:41.155298Z","times_seen":2,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjAgMCAyMCAyMCI+CjxnPgo8c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmlld0JveD0iMCAwIDQ4IDQ4Ij4KPGc+IDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBpZD0iZGhsX2ljb25zIiB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCI+PHBhdGggZD0iTTQyLDIxdjJIMzdWMjFaTTExLDIxSDZ2Mmg1Wk0yNSw0SDIzVjloMlptNy40ODU0LDI3Ljg5OTQsMy41MzU2LDMuNTM1Mi43MzctLjczNy42NzcxLS42NzcxLTMuNTM1Ny0zLjUzNTFaTTE1LjUxNDYsMTIuMTAwNiwxMS45NzksOC41NjU0bC0uNjc2Ni42NzY2LS43Mzc1LjczNzUsMy41MzU3LDMuNTM1MVptLTQuOTUsMjEuOTIuNjg4OC42ODg3LjcyNTMuNzI1NCwzLjUzNTYtMy41MzUyLTEuNDE0LTEuNDE0Wk0zNy40MzUxLDkuOTgsMzYuNzMsOS4yNzQzbC0uNzA4OS0uNzA4OS0zLjUzNTYsMy41MzUyLDEuNDE0LDEuNDE0Wk0xOSw0Mi4wMDE0QTEuOTk4NiwxLjk5ODYsMCwwLDAsMjAuOTk4Niw0NGg2LjAwMjhBMS45OTg2LDEuOTk4NiwwLDAsMCwyOSw0Mi4wMDE0VjQwSDE5Wk0yNCwxMWExMSwxMSwwLDAsMC02LjExODgsMjAuMTRBNC4zMzYxLDQuMzM2MSwwLDAsMSwxOSwzNC4wMjY0VjM4SDI5VjM0LjAyNTFhNC4yOTkxLDQuMjk5MSwwLDAsMSwxLjE1MzQtMi45MDYxQTExLjAwMDcsMTEuMDAwNywwLDAsMCwyNCwxMVoiIGZpbGw9IiNkNDA1MTEiPjwvcGF0aD48L3N2Zz4gPC9nPgo8L3N2Zz4KPC9nPgo8L3N2Zz4="}},"time_used":34,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":34,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/i/77/77/08a/3408a/1276x1189/VuR1mw_1276x1188_ebc48d8a5bfcbf8b.webp","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"imageset","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.931Z","timestamp":1785161166931,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /i/77/77/08a/3408a/1276x1189/VuR1mw_1276x1188_ebc48d8a5bfcbf8b.webp HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-length: 18620\r\nlast-modified: Wed, 21 Aug 2024 08:35:14 GMT\r\netag: \"48bc-6202d6bc5b480\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":18620,"size_decoded":18826,"mime_type":"image/webp","magic":"RIFF (little-endian) data, Web/P image, VP8 encoding, 1276x1188, Scaling: [none]x[none], YUV color, decoders should clamp","md5":"339cc2bcdef27b9bb7df16fc320eb3be","sha1":"ac56a23e029f78f13815a67f8c2940ba5ce6f4b9","sha256":"36834572ae4d5fa284620c57185a54fe1c2f083f2407344504c337c29660ae4d","sha512":"faceb1c09a6ecd8c2cc0904f67a7e63568593d01e72637589503465af08ca765e54ff197e9b5505b793e73dd149d486649c4a542d8eeed51355849c925d9fcf7","ssdeep":"384:lNpg+NQl2GSclwrg+pBAZxMOGybCC7snn94wLb+B4BEXIcOm1uKM5PetHM:zmazcypBoMOrn7k947cuICNMFes","tlshash":"97829ef66a0e5afacbe34cf9b1dcb3d84b52f2436d47a25004913da787234897650c7a","first_seen":"2026-07-27T14:06:41.157211Z","last_seen":"2026-07-27T14:06:41.157211Z","times_seen":1,"resource_available":false,"data":"UklGRrRIAABXRUJQVlA4IKhIAACQzwKdASr8BKQEPlEokkajoqYhItG4eMAKCWlu++w5i8f9gzBfXPvrolxPFwyz38e8hbrAOk+xn2x6Z3rPnP/H/d/TbxL29/otwx/o+8Oc7/Iv8T+/HvAdJHnffXLvbXQ2+sz/Dclz+X/5X9h/Y182/of874u/kn2D+n+4f5psH/bxqU/M/y3/N/yvGP8oNRH8r/kP/I/s3IJbJ8y8xxxmVBPyXfEF+b/8cMeZCKwrX5AkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkA0yqLtmQisK1+QJASAkBICQEgJASAkBICQEgJASAkBICQEfqlq2ZCKw3VUgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJARomJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQDGFHDAJYcZHNYVr8gSAkBICQEgJASAkBICQEgJASAkBICQEgJASAkAxgskHLy1+on4cN1/DSDcWj3yw35AkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEflQUnf/WNT/6Maopjb4a3I6YvjjnrUbMou2ZCKwrX5AkBICQEgJASAkBICQEgJASAkBICQEZw2/Tq/f/+TWYooppv/jJp1YUXkveHsSxOc+boLk29OeoYkBICQEgJA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xICQGK+MfHP4LYMIIgJASAkBICQEgJASAkBICQEgJA8Oc4aOc5m9AHgQisK7EVqQ8f6l8fTGgaQn16Rhu946Cnjus9CA1CWW/g2N1yNaXUDD0lsMSAjCalNzBv+8g7DktfkCQEgJASAkBICQEgJASAkBIBjWuB7ZG2joGS1UXbMLRO75+KeWlVVktJvC4LFbgsGCwJasUvGUuLgYTPWtyWXoDeHIT/jxkc1hWvyBICQEgJASAkBICQEgJASAqLfDLoPm2/mStwdLNXdYmwJaKRYDAuB6Kvpm/xFnfEfHSL8VRZPXrX9FTfmnaUjEZJqSK6sb4YmdJnyWvyBICQEgJASAkBICQEgJASAkBICQY/o7ejkq4Ad93fQsVOJQ3jcTFOITt50edLFJvReCNVUzIPaJrk6NwwNl0+vYKlKGTZhGE1KaeLXo0va35AkBICQEgJASAkBICQEgJASAkBICQEgIwy56XPjb8qvAr7fg7z662CssLZO0aeEuNy4dOFINX5FkrTl5DqAqPA2nJI8LUL7EaKvFaxRQ3z/eb72hASAkBICQEgJASAkBICQEgJASAkBICQEgKvr9IBAENaEwvAXpOfOgBYJNkKw5yE5L0eUWA7eAwHqOAjSo/HNtoS2ft2xrRIzNqQMu/5LOq17nIm1KQJASAkBICQEgJASAkBICQEgJASAkBICQEgI/RKMHEDaRIdNDwQNBBxx+FXRZ6EsMTfGxRKnKaxH92gdHGQXKKwrX5AkBICQEgJASAkBICQEgJASAkBICQEgJAR+iZIvoopydU7/Bu0OoAPSaYPC3/hcMmk+PZkIrCtfkCQEgJASAkBICQEgJASAkBICQEgJASAkBGHQPhV7GJBe6hY5iAO8rkfgj3eklIEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkFe2gMbKMCVKmwQ67F0/E5+uqLglNVr8gSAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEoYpL2V+Ik62ZCKwrX5AkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgJASAkBICQEgIwAAD+/UaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7meAAABwLEoNvaEkr0YB/AAAEXkTl8U3P8bAAADuml6WuCQ32OggAAHlVGgGxRU8/nXVop2gGd9lWJF+ef62SK4zD8N3BLqiAAEtABl1TCn6E7M3I0gOt9Q8ILh/9jUo7M07WifG7Y2LHIfB3QL96K/P8vqykl5LpSzwh3oDNQnD0bYY+iNJhob3nvTc8RNp90n/10F43HQB1vhm90rQ0tIBAAAmUTyzh3h6QJILQoSRci9/DiNRauhvPbLKyj4RbLY7m9iezzKkrdkQtzuF981+dM70I4nEVa3TqsLk5Pq2XRtleADX5AZ/FWjKMtI+g0/Z9zDruvxTTY46H7WCQHdIySAAANQKfI6ZpN3o9b+cdAptUw/+aygFIGfnzWtrSB563C5/8xBaY9CeZLmXrFKG+tDKUa05na76bGBwJfyqdA7liMLJ2qoxDbcxiBDqR2CaSP3wXEddXjdFNvRQqhofcqaHxiN4R8MtQwjpS1nALCHR3+jl8oYd/cqUDIaEuntYACP9ueJi6LBKZ4xhZOaM8NkJRd3fRYeg1cNJP5sYd6jf5Ve/0eQAmRtBUYQUNbA/1e1vM3kLsVgKhae5gATazgZTvjWqjJTBWuaAEL/mHHg/y00dxD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"}},"time_used":36,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":36,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/js?id=G-CTBNEZK511\u0026cx=c\u0026gtm=4e67m0","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.303Z","timestamp":1785161167303,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google-analytics.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:33 GMT","end":"Mon, 21 Sep 2026 08:37:32 GMT"},"fingerprint":{"sha1":"85:82:80:E9:F0:BC:08:B5:D8:5D:91:B4:E5:D3:DB:B1:A7:2F:E3:F3","sha256":"E3:94:E9:DA:2C:F1:36:09:33:63:D3:69:08:E7:E6:91:8D:F3:61:7F:0F:D0:5F:8E:B6:E9:D7:F3:DD:10:3C:DC"}}},"request":{"raw":"GET /gtag/js?id=G-CTBNEZK511\u0026cx=c\u0026gtm=4e67m0 HTTP/1.1\r\nHost: www.googletagmanager.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-type: application/javascript; charset=UTF-8\r\naccess-control-allow-origin: *\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: Cache-Control\r\ncontent-encoding: zstd\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\nexpires: Mon, 27 Jul 2026 14:06:07 GMT\r\ncache-control: private, max-age=900\r\nstrict-transport-security: max-age=31536000; includeSubDomains\r\ncross-origin-resource-policy: cross-origin\r\nserver: Google Tag Manager\r\ncontent-length: 183297\r\nx-xss-protection: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"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":558603,"size_decoded":183881,"mime_type":"application/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (7413)","md5":"3f5a856e0f4fd9ae405e6edf20c707c4","sha1":"4fc66583ed54b8d48f150f35b97d392ae4d333c7","sha256":"5b14f6eb13f388bd1bc5282dda3d1b81b7643113c8b3e3d03c7b2afee6a74944","sha512":"8dfef426510e4e3d6e983dd12b00ba87466fff4335d980c45f1b3c0e104f38190c99cd9c019e0324e79e0613d26fbc2a9271501f56723d0cd4588489d4a01695","ssdeep":"6144:Ok7+U0jIWXbP69FMxmRkqn0hdBScPmfxNf3EjKUGxIGaHoXuARR3e:P7H1WLP69V3KGUGxYHOLe","tlshash":"5cc40aceb3d674225396f478543f01cba97b25e2b45cc8aab1c9cce02d7464a8167f78","first_seen":"2026-07-27T14:06:41.159746Z","last_seen":"2026-07-27T14:06:41.159746Z","times_seen":1,"resource_available":true,"data":"Ci8vIENvcHlyaWdodCAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKKGZ1bmN0aW9uKCl7Cgp2YXIgZGF0YSA9IHsKInJlc291cmNlIjogewogICJ2ZXJzaW9uIjoiMyIsCiAgCiAgIm1hY3JvcyI6W3siZnVuY3Rpb24iOiJfX2UifSx7ImZ1bmN0aW9uIjoiX19jIiwidnRwX3ZhbHVlIjoiZ29vZ2xlLm5vIn0seyJmdW5jdGlvbiI6Il9fYyIsInZ0cF92YWx1ZSI6MH1dLAogICJ0YWdzIjpbeyJmdW5jdGlvbiI6Il9fb2d0X2Nyb3NzX2RvbWFpbiIsInByaW9yaXR5IjoyOSwidnRwX3J1bGVzIjpbImxpc3QiLCJeZGhsZXhwcmVzc1xcLmJnJCJdLCJ0YWdfaWQiOjEwOH0seyJmdW5jdGlvbiI6Il9fb2d0X2RtYSIsInByaW9yaXR5IjoxOSwidnRwX2RlbGVnYXRpb25Nb2RlIjoiT04iLCJ2dHBfZG1hRGVmYXVsdCI6IkRFTklFRCIsInRhZ19pZCI6MTA2fSx7ImZ1bmN0aW9uIjoiX19vZ3RfMXBfZGF0YV92MiIsInByaW9yaXR5IjoxOSwidnRwX2lzQXV0b0VuYWJsZWQiOnRydWUsInZ0cF9hdXRvUGhvbmVFbmFibGVkIjp0cnVlLCJ2dHBfYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiOlsibGlzdCIsWyJtYXAiLCJleGNsdXNpb25TZWxlY3RvciIsIiJdXSwidnRwX2lzRW5hYmxlZCI6dHJ1ZSwidnRwX2F1dG9BZGRyZXNzRW5hYmxlZCI6dHJ1ZSwidnRwX2F1dG9FbWFpbEVuYWJsZWQiOnRydWUsInZ0cF9pc0F1dG9Db2xsZWN0UGlpRW5hYmxlZEZsYWciOnRydWUsInRhZ19pZCI6MTEwfSx7ImZ1bmN0aW9uIjoiX19jY2RfZ2FfZmlyc3QiLCJwcmlvcml0eSI6MTgsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLUNUQk5FWks1MTEiLCJ0YWdfaWQiOjEyOX0seyJmdW5jdGlvbiI6Il9fc2V0X3Byb2R1Y3Rfc2V0dGluZ3MiLCJwcmlvcml0eSI6MTcsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLUNUQk5FWks1MTEiLCJ2dHBfZm9yZWlnblRsZE1hY3JvUmVzdWx0IjpbIm1hY3JvIiwxXSwidnRwX2lzQ2hpbmFWaXBSZWdpb25NYWNyb1Jlc3VsdCI6WyJtYWNybyIsMl0sInRhZ19pZCI6MTI4fSx7ImZ1bmN0aW9uIjoiX19vZ3RfZ29vZ2xlX3NpZ25hbHMiLCJwcmlvcml0eSI6MTYsInZ0cF9nb29nbGVTaWduYWxzIjoiRU5BQkxFRCIsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLUNUQk5FWks1MTEiLCJ0YWdfaWQiOjEyN30seyJmdW5jdGlvbiI6Il9fY2NkX2dhX3JlZ3Njb3BlIiwicHJpb3JpdHkiOjE1LCJ2dHBfc2V0dGluZ3NUYWJsZSI6WyJsaXN0IixbIm1hcCIsInJlZGFjdEZpZWxkR3JvdXAiLCJERVZJQ0VfQU5EX0dFTyIsImRpc2FsbG93QWxsUmVnaW9ucyIsZmFsc2UsImRpc2FsbG93ZWRSZWdpb25zIiwiIl0sWyJtYXAiLCJyZWRhY3RGaWVsZEdyb3VwIiwiR09PR0xFX1NJR05BTFMiLCJkaXNhbGxvd0FsbFJlZ2lvbnMiLGZhbHNlLCJkaXNhbGxvd2VkUmVnaW9ucyIsIiJdXSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctQ1RCTkVaSzUxMSIsInRhZ19pZCI6MTI2fSx7ImZ1bmN0aW9uIjoiX19jY2RfZW1fZG93bmxvYWQiLCJwcmlvcml0eSI6MTQsInZ0cF9pbmNsdWRlUGFyYW1zIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1DVEJORVpLNTExIiwidGFnX2lkIjoxMjV9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9vdXRib3VuZF9jbGljayIsInByaW9yaXR5IjoxMywidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLUNUQk5FWks1MTEiLCJ0YWdfaWQiOjEyNH0seyJmdW5jdGlvbiI6Il9fY2NkX2VtX3BhZ2VfdmlldyIsInByaW9yaXR5IjoxMiwidnRwX2hpc3RvcnlFdmVudHMiOnRydWUsInZ0cF9pbmNsdWRlUGFyYW1zIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1DVEJORVpLNTExIiwidGFnX2lkIjoxMjN9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9zY3JvbGwiLCJwcmlvcml0eSI6MTEsInZ0cF9pbmNsdWRlUGFyYW1zIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1DVEJORVpLNTExIiwidGFnX2lkIjoxMjJ9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9zaXRlX3NlYXJjaCIsInByaW9yaXR5IjoxMCwidnRwX3NlYXJjaFF1ZXJ5UGFyYW1zIjoicSxzLHNlYXJjaCxxdWVyeSxrZXl3b3JkIiwidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLUNUQk5FWks1MTEiLCJ0YWdfaWQiOjEyMX0seyJmdW5jdGlvbiI6Il9fY2NkX2VtX3ZpZGVvIiwicHJpb3JpdHkiOjksInZ0cF9pbmNsdWRlUGFyYW1zIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1DVEJORVpLNTExIiwidGFnX2lkIjoxMjB9LHsiZnVuY3Rpb24iOiJfX2NjZF9jb252ZXJzaW9uX21hcmtpbmciLCJwcmlvcml0eSI6OCwidnRwX2NvbnZlcnNpb25SdWxlcyI6WyJsaXN0IixbIm1hcCIsIm1hdGNoaW5nUnVsZXMiLCJ7XCJ0eXBlXCI6NSxcImFyZ3NcIjpbe1wic3RyaW5nVmFsdWVcIjpcInB1cmNoYXNlXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il0sWyJtYXAiLCJtYXRjaGluZ1J1bGVzIiwie1widHlwZVwiOjUsXCJhcmdzXCI6W3tcInN0cmluZ1ZhbHVlXCI6XCJnZW5lcmF0ZV9sZWFkXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il0sWyJtYXAiLCJtYXRjaGluZ1J1bGVzIiwie1widHlwZVwiOjUsXCJhcmdzXCI6W3tcInN0cmluZ1ZhbHVlXCI6XCJwcmVwcmF2bmlfc3RpdGVrXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il0sWyJtYXAiLCJtYXRjaGluZ1J1bGVzIiwie1widHlwZVwiOjUsXCJhcmdzXCI6W3tcInN0cmluZ1ZhbHVlXCI6XCJjb252ZXJzaW9uX2V2ZW50X2JlZ2luX2NoZWNrb3V0XCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il0sWyJtYXAiLCJtYXRjaGluZ1J1bGVzIiwie1widHlwZVwiOjUsXCJhcmdzXCI6W3tcInN0cmluZ1ZhbHVlXCI6XCJzbWVfbGVhZF9nZW5lcmF0aW9uXzFcIn0se1wiY29udGV4dFZhbHVlXCI6e1wibmFtZXNwYWNlVHlwZVwiOjEsXCJrZXlQYXJ0c1wiOltcImV2ZW50TmFtZVwiXX19XX0iXSxbIm1hcCIsIm1hdGNoaW5nUnVsZXMiLCJ7XCJ0eXBlXCI6NSxcImFyZ3NcIjpbe1wic3RyaW5nVmFsdWVcIjpcIlNTX2xlYWRfZ2VuZXJhdGlvbl9jYWxsXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il0sWyJtYXAiLCJtYXRjaGluZ1J1bGVzIiwie1widHlwZVwiOjUsXCJhcmdzXCI6W3tcInN0cmluZ1ZhbHVlXCI6XCJzbWVfbGVhZF9nZW5lcmF0aW9uXzJcIn0se1wiY29udGV4dFZhbHVlXCI6e1wibmFtZXNwYWNlVHlwZVwiOjEsXCJrZXlQYXJ0c1wiOltcImV2ZW50TmFtZVwiXX19XX0iXSxbIm1hcCIsIm1hdGNoaW5nUnVsZXMiLCJ7XCJ0eXBlXCI6NSxcImFyZ3NcIjpbe1wic3RyaW5nVmFsdWVcIjpcInNlbmRfb25saW5lXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il0sWyJtYXAiLCJtYXRjaGluZ1J1bGVzIiwie1widHlwZVwiOjUsXCJhcmdzXCI6W3tcInN0cmluZ1ZhbHVlXCI6XCJTU19sZWFkX2dlbmVyYXRpb25fY29udGFjdFwifSx7XCJjb250ZXh0VmFsdWVcIjp7XCJuYW1lc3BhY2VUeXBlXCI6MSxcImtleVBhcnRzXCI6W1wiZXZlbnROYW1lXCJdfX1dfSJdLFsibWFwIiwibWF0Y2hpbmdSdWxlcyIsIntcInR5cGVcIjo1LFwiYXJnc1wiOlt7XCJzdHJpbmdWYWx1ZVwiOlwiZWNvbm9teSBzZWxlY3RfbGVhZFwifSx7XCJjb250ZXh0VmFsdWVcIjp7XCJuYW1lc3BhY2VUeXBlXCI6MSxcImtleVBhcnRzXCI6W1wiZXZlbnROYW1lXCJdfX1dfSJdXSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctQ1RCTkVaSzUxMSIsInRhZ19pZCI6MTE5fSx7ImZ1bmN0aW9uIjoiX19vZ3RfZXZlbnRfY3JlYXRlIiwicHJpb3JpdHkiOjcsInZ0cF9ldmVudE5hbWUiOiJwYWdlX3ZpZXdfY2FsbCIsInZ0cF9pc0NvcHkiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLUNUQk5FWks1MTEiLCJ2dHBfcHJlY29tcGlsZWRSdWxlIjpbIm1hcCIsIm5ld19ldmVudF9uYW1lIiwicGFnZV92aWV3X2NhbGwiLCJtZXJnZV9zb3VyY2VfZXZlbnRfcGFyYW1zIix0cnVlLCJldmVudF9uYW1lX3ByZWRpY2F0ZSIsWyJsaXN0IixbIm1hcCIsInZhbHVlcyIsWyJsaXN0IixbIm1hcCIsInR5cGUiLCJldmVudF9uYW1lIl0sWyJtYXAiLCJ0eXBlIiwiY29uc3QiLCJjb25zdF92YWx1ZSIsImN0YV9waG9uZSJdXSwidHlwZSIsImVxIl1dLCJjb25kaXRpb25zIixbImxpc3QiLFsibWFwIiwicHJlZGljYXRlcyIsWyJsaXN0IixbIm1hcCIsInZhbHVlcyIsWyJsaXN0IixbIm1hcCIsInR5cGUiLCJldmVudF9wYXJhbSIsImV2ZW50X3BhcmFtIixbIm1hcCIsInBhcmFtX25hbWUiLCJzZXJ2aWNlX25hbWUiXV0sWyJtYXAiLCJ0eXBlIiwiY29uc3QiLCJjb25zdF92YWx1ZSIsIlByaWNlMyJdXSwidHlwZSIsImVxIl1dXV1dLCJ0YWdfaWQiOjExOH0seyJmdW5jdGlvbiI6Il9fb2d0X2V2ZW50X2NyZWF0ZSIsInByaW9yaXR5Ijo2LCJ2dHBfZXZlbnROYW1lIjoicHJlcHJhdm5pX3N0aXRlayIsInZ0cF9pc0NvcHkiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLUNUQk5FWks1MTEiLCJ2dHBfcHJlY29tcGlsZWRSdWxlIjpbIm1hcCIsIm5ld19ldmVudF9uYW1lIiwicHJlcHJhdm5pX3N0aXRlayIsIm1lcmdlX3NvdXJjZV9ldmVudF9wYXJhbXMiLHRydWUsImV2ZW50X25hbWVfcHJlZGljYXRlIixbImxpc3QiLFsibWFwIiwidmFsdWVzIixbImxpc3QiLFsibWFwIiwidHlwZSIsImV2ZW50X25hbWUiXSxbIm1hcCIsInR5cGUiLCJjb25zdCIsImNvbnN0X3ZhbHVlIiwicmVkaXJlY3QiXV0sInR5cGUiLCJlcSJdXSwiY29uZGl0aW9ucyIsWyJsaXN0IixbIm1hcCIsInByZWRpY2F0ZXMiLFsibGlzdCIsWyJtYXAiLCJ2YWx1ZXMiLFsibGlzdCIsWyJtYXAiLCJ0eXBlIiwiZXZlbnRfcGFyYW0iLCJldmVudF9wYXJhbSIsWyJtYXAiLCJwYXJhbV9uYW1lIiwic2VydmljZV9uYW1lIl1dLFsibWFwIiwidHlwZSIsImNvbnN0IiwiY29uc3RfdmFsdWUiLCJQcmljZTIiXV0sInR5cGUiLCJlcSJdXV1dXSwidGFnX2lkIjoxMTd9LHsiZnVuY3Rpb24iOiJfX29ndF9ldmVudF9jcmVhdGUiLCJwcmlvcml0eSI6NSwidnRwX2V2ZW50TmFtZSI6InByZXByYXZuaV9zdGl0ZWtfbG9ja2VyIiwidnRwX2lzQ29weSI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctQ1RCTkVaSzUxMSIsInZ0cF9wcmVjb21waWxlZFJ1bGUiOlsibWFwIiwibmV3X2V2ZW50X25hbWUiLCJwcmVwcmF2bmlfc3RpdGVrX2xvY2tlciIsIm1lcmdlX3NvdXJjZV9ldmVudF9wYXJhbXMiLHRydWUsImV2ZW50X25hbWVfcHJlZGljYXRlIixbImxpc3QiLFsibWFwIiwidmFsdWVzIixbImxpc3QiLFsibWFwIiwidHlwZSIsImV2ZW50X25hbWUiXSxbIm1hcCIsInR5cGUiLCJjb25zdCIsImNvbnN0X3ZhbHVlIiwicmVkaXJlY3QiXV0sInR5cGUiLCJlcSJdXSwiY29uZGl0aW9ucyIsWyJsaXN0IixbIm1hcCIsInByZWRpY2F0ZXMiLFsibGlzdCIsWyJtYXAiLCJ2YWx1ZXMiLFsibGlzdCIsWyJtYXAiLCJ0eXBlIiwiZXZlbnRfcGFyYW0iLCJldmVudF9wYXJhbSIsWyJtYXAiLCJwYXJhbV9uYW1lIiwic2VydmljZV9uYW1lIl1dLFsibWFwIiwidHlwZSIsImNvbnN0IiwiY29uc3RfdmFsdWUiLCJQcmljZTUiXV0sInR5cGUiLCJlcSJdXV1dXSwidGFnX2lkIjoxMTZ9LHsiZnVuY3Rpb24iOiJfX29ndF9ldmVudF9jcmVhdGUiLCJwcmlvcml0eSI6NCwidnRwX2V2ZW50TmFtZSI6ImZvcm1fc2VudCIsInZ0cF9pc0NvcHkiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLUNUQk5FWks1MTEiLCJ2dHBfcHJlY29tcGlsZWRSdWxlIjpbIm1hcCIsIm5ld19ldmVudF9uYW1lIiwiZm9ybV9zZW50IiwibWVyZ2Vfc291cmNlX2V2ZW50X3BhcmFtcyIsdHJ1ZSwiZXZlbnRfbmFtZV9wcmVkaWNhdGUiLFsibGlzdCIsWyJtYXAiLCJ2YWx1ZXMiLFsibGlzdCIsWyJtYXAiLCJ0eXBlIiwiZXZlbnRfbmFtZSJdLFsibWFwIiwidHlwZSIsImNvbnN0IiwiY29uc3RfdmFsdWUiLCJwYWdlX3ZpZXciXV0sInR5cGUiLCJlcSJdXSwiY29uZGl0aW9ucyIsWyJsaXN0IixbIm1hcCIsInByZWRpY2F0ZXMiLFsibGlzdCIsWyJtYXAiLCJ2YWx1ZXMiLFsibGlzdCIsWyJtYXAiLCJ0eXBlIiwiZXZlbnRfcGFyYW0iLCJldmVudF9wYXJhbSIsWyJtYXAiLCJwYXJhbV9uYW1lIiwicGFnZV9sb2NhdGlvbiJdXSxbIm1hcCIsInR5cGUiLCJjb25zdCIsImNvbnN0X3ZhbHVlIiwiY2ZkX3Rva2VuPSJdXSwidHlwZSIsImNuIl1dXV1dLCJ0YWdfaWQiOjExNX0seyJmdW5jdGlvbiI6Il9fb2d0X2V2ZW50X2NyZWF0ZSIsInByaW9yaXR5IjozLCJ2dHBfZXZlbnROYW1lIjoicGFnZV92aWV3X3NlcnZpY2Vwb2ludCIsInZ0cF9pc0NvcHkiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLUNUQk5FWks1MTEiLCJ2dHBfcHJlY29tcGlsZWRSdWxlIjpbIm1hcCIsIm5ld19ldmVudF9uYW1lIiwicGFnZV92aWV3X3NlcnZpY2Vwb2ludCIsIm1lcmdlX3NvdXJjZV9ldmVudF9wYXJhbXMiLHRydWUsImV2ZW50X25hbWVfcHJlZGljYXRlIixbImxpc3QiLFsibWFwIiwidmFsdWVzIixbImxpc3QiLFsibWFwIiwidHlwZSIsImV2ZW50X25hbWUiXSxbIm1hcCIsInR5cGUiLCJjb25zdCIsImNvbnN0X3ZhbHVlIiwicGFnZV92aWV3Il1dLCJ0eXBlIiwiZXEiXV0sImNvbmRpdGlvbnMiLFsibGlzdCIsWyJtYXAiLCJwcmVkaWNhdGVzIixbImxpc3QiLFsibWFwIiwidmFsdWVzIixbImxpc3QiLFsibWFwIiwidHlwZSIsImV2ZW50X3BhcmFtIiwiZXZlbnRfcGFyYW0iLFsibWFwIiwicGFyYW1fbmFtZSIsInBhZ2VfbG9jYXRpb24iXV0sWyJtYXAiLCJ0eXBlIiwiY29uc3QiLCJjb25zdF92YWx1ZSIsIlwvc2VydmljZV9wb2ludHNcL2RldGFpbFwvIl1dLCJ0eXBlIiwiY24iXV1dXV0sInRhZ19pZCI6MTE0fSx7ImZ1bmN0aW9uIjoiX19jY2RfYXV0b19yZWRhY3QiLCJwcmlvcml0eSI6MiwidnRwX3JlZGFjdEVtYWlsIjpmYWxzZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctQ1RCTkVaSzUxMSIsInRhZ19pZCI6MTEzfSx7ImZ1bmN0aW9uIjoiX19jY2RfZ2FfYWRzX2xpbmsiLCJwcmlvcml0eSI6MSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctQ1RCTkVaSzUxMSIsInRhZ19pZCI6MTEyfSx7ImZ1bmN0aW9uIjoiX19nY3QiLCJ2dHBfdHJhY2tpbmdJZCI6IkctQ1RCTkVaSzUxMSIsInZ0cF9zZXNzaW9uRHVyYXRpb24iOjAsInRhZ19pZCI6MTAzfSx7ImZ1bmN0aW9uIjoiX19jY2RfZ2FfbGFzdCIsInByaW9yaXR5IjowLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1DVEJORVpLNTExIiwidGFnX2lkIjoxMTF9XSwKICAicHJlZGljYXRlcyI6W3siZnVuY3Rpb24iOiJfZXEiLCJhcmcwIjpbIm1hY3JvIiwwXSwiYXJnMSI6Imd0bS5qcyJ9LHsiZnVuY3Rpb24iOiJfZXEiLCJhcmcwIjpbIm1hY3JvIiwwXSwiYXJnMSI6Imd0bS5pbml0X2NvbnNlbnQifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG0uaW5pdCJ9XSwKICAicnVsZXMiOltbWyJpZiIsMF0sWyJhZGQiLDIxXV0sW1siaWYiLDFdLFsiYWRkIiwxXV0sW1siaWYiLDJdLFsiYWRkIiwwLDIsMjIsMjAsMTksMTgsMTcsMTYsMTUsMTQsMTMsMTIsMTEsMTAsOSw4LDcsNiw1LDQsM11dXQp9LAoicnVudGltZSI6WyBbNTAsIl9fYyIsWzQ2LCJhIl0sWzM2LFsxNyxbMTUsImEiXSwidmFsdWUiXV1dCiAsWzUwLCJfX2NjZF9hdXRvX3JlZGFjdCIsWzQ2LCJhIl0sWzUwLCJ2IixbNDYsImFGIl0sWzM2LFsyLFsxNSwiYUYiXSwicmVwbGFjZSIsWzcsWzE1LCJ1Il0sIlxcJDEiXV1dXSxbNTAsInciLFs0NiwiYUYiXSxbNTIsImFHIixbMzAsWyJjIixbMTUsImFGIl1dLFsxNSwiYUYiXV1dLFs1MiwiYUgiLFs3XV0sWzY1LCJhSSIsWzIsWzE1LCJhRyJdLCJzcGxpdCIsWzcsIiJdXSxbNDYsWzUzLFs1MiwiYUoiLFs3LFsidiIsWzE1LCJhSSJdXV1dLFs1MiwiYUsiLFsiZCIsWzE1LCJhSSJdXV0sWzIyLFsxMixbMTUsImFLIl0sWzQ1XV0sWzQ2LFs1MyxbMzYsWyJkIixbInYiLFsxNSwiYUYiXV1dXV1dXSxbMjIsWzIxLFsxNSwiYUsiXSxbMTUsImFJIl1dLFs0NixbNTMsWzIsWzE1LCJhSiJdLCJwdXNoIixbNyxbMTUsImFLIl1dXSxbMjIsWzIxLFsxNSwiYUkiXSxbMixbMTUsImFJIl0sInRvTG93ZXJDYXNlIixbN11dXSxbNDYsWzUzLFsyLFsxNSwiYUoiXSwicHVzaCIsWzcsWyJkIixbMixbMTUsImFJIl0sInRvTG93ZXJDYXNlIixbN11dXV1dXV0sWzQ2LFsyMixbMjEsWzE1LCJhSSJdLFsyLFsxNSwiYUkiXSwidG9VcHBlckNhc2UiLFs3XV1dLFs0NixbNTMsWzIsWzE1LCJhSiJdLCJwdXNoIixbNyxbImQiLFsyLFsxNSwiYUkiXSwidG9VcHBlckNhc2UiLFs3XV1dXV1dXV1dXV1dXSxbMjIsWzE4LFsxNyxbMTUsImFKIl0sImxlbmd0aCJdLDFdLFs0NixbNTMsWzIsWzE1LCJhSCJdLCJwdXNoIixbNyxbMCxbMCwiKD86IixbMixbMTUsImFKIl0sImpvaW4iLFs3LCJ8Il1dXSwiKSJdXV1dXSxbNDYsWzUzLFsyLFsxNSwiYUgiXSwicHVzaCIsWzcsWzE2LFsxNSwiYUoiXSwwXV1dXV1dXV1dLFszNixbMixbMTUsImFIIl0sImpvaW4iLFs3LCIiXV1dXSxbNTAsIngiLFs0NiwiYUYiLCJhRyIsImFIIl0sWzUyLCJhSSIsWyJ6IixbMTUsImFGIl0sWzE1LCJhSCJdXV0sWzIyLFsyOCxbMTUsImFJIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFsyMixbMjgsWzE3LFsxNSwiYUkiXSwic2VhcmNoIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFs0MSwiYUoiXSxbMywiYUoiLFsxNyxbMTUsImFJIl0sInNlYXJjaCJdXSxbNjUsImFLIixbMTUsImFHIl0sWzQ2LFs1MyxbNTIsImFMIixbNyxbInYiLFsxNSwiYUsiXV0sWyJ3IixbMTUsImFLIl1dXV0sWzY1LCJhTSIsWzE1LCJhTCJdLFs0NixbNTMsWzUyLCJhTiIsWzMwLFsxNixbMTUsInQiXSxbMTUsImFNIl1dLFs0MyxbMTUsInQiXSxbMTUsImFNIl0sWyJiIixbMCxbMCwiKFs/Jl0iLFsxNSwiYU0iXV0sIj0pKFteJl0qKSJdLCJnaSJdXV1dLFszLCJhSiIsWzIsWzE1LCJhSiJdLCJyZXBsYWNlIixbNyxbMTUsImFOIl0sWzAsIiQxIixbMTUsInIiXV1dXV1dXV1dXV0sWzIyLFsyMCxbMTUsImFKIl0sWzE3LFsxNSwiYUkiXSwic2VhcmNoIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFsyMixbMjAsWzE2LFsxNSwiYUoiXSwwXSwiJiJdLFs0NixbMywiYUoiLFsyLFsxNSwiYUoiXSwic3Vic3RyaW5nIixbNywxXV1dXV0sWzIyLFsyMSxbMTYsWzE1LCJhSiJdLDBdLCI/Il0sWzQ2LFszLCJhSiIsWzAsIj8iLFsxNSwiYUoiXV1dXV0sWzIyLFsyMCxbMTUsImFKIl0sIj8iXSxbNDYsWzMsImFKIiwiIl1dXSxbNDMsWzE1LCJhSSJdLCJzZWFyY2giLFsxNSwiYUoiXV0sWzM2LFsiYUEiLFsxNSwiYUkiXSxbMTUsImFIIl1dXV0sWzUwLCJ6IixbNDYsImFGIiwiYUciXSxbMjIsWzIwLFsxNSwiYUciXSxbMTcsWzE1LCJzIl0sIlBBVEgiXV0sWzQ2LFs1MyxbMywiYUYiLFswLFsxNSwieSJdLFsxNSwiYUYiXV1dXV1dLFszNixbImYiLFsxNSwiYUYiXV1dXSxbNTAsImFBIixbNDYsImFGIiwiYUciXSxbNDEsImFIIl0sWzMsImFIIiwiIl0sWzIyLFsyMCxbMTUsImFHIl0sWzE3LFsxNSwicyJdLCJVUkwiXV0sWzQ2LFs1MyxbNDEsImFJIl0sWzMsImFJIiwiIl0sWzIyLFszMCxbMTcsWzE1LCJhRiJdLCJ1c2VybmFtZSJdLFsxNyxbMTUsImFGIl0sInBhc3N3b3JkIl1dLFs0NixbNTMsWzMsImFJIixbMCxbMTUsImFJIl0sWzAsWzAsWzAsWzE3LFsxNSwiYUYiXSwidXNlcm5hbWUiXSxbMzksWzE3LFsxNSwiYUYiXSwicGFzc3dvcmQiXSwiOiIsIiJdXSxbMTcsWzE1LCJhRiJdLCJwYXNzd29yZCJdXSwiQCJdXV1dXV0sWzMsImFIIixbMCxbMCxbMCxbMTcsWzE1LCJhRiJdLCJwcm90b2NvbCJdLCIvLyJdLFsxNSwiYUkiXV0sWzE3LFsxNSwiYUYiXSwiaG9zdCJdXV1dXV0sWzM2LFswLFswLFswLFsxNSwiYUgiXSxbMTcsWzE1LCJhRiJdLCJwYXRobmFtZSJdXSxbMTcsWzE1LCJhRiJdLCJzZWFyY2giXV0sWzE3LFsxNSwiYUYiXSwiaGFzaCJdXV1dLFs1MCwiYUIiLFs0NiwiYUYiLCJhRyJdLFs0MSwiYUgiXSxbMywiYUgiLFsyLFsxNSwiYUYiXSwicmVwbGFjZSIsWzcsWzE1LCJuIl0sWzE1LCJyIl1dXV0sWzIyLFszMCxbMjAsWzE1LCJhRyJdLFsxNyxbMTUsInMiXSwiVVJMIl1dLFsyMCxbMTUsImFHIl0sWzE3LFsxNSwicyJdLCJQQVRIIl1dXSxbNDYsWzUzLFs1MiwiYUkiLFsieiIsWzE1LCJhSCJdLFsxNSwiYUciXV1dLFsyMixbMjAsWzE1LCJhSSJdLFs0NF1dLFs0NixbMzYsWzE1LCJhSCJdXV1dLFs1MiwiYUoiLFsxNyxbMTUsImFJIl0sInNlYXJjaCJdXSxbNTIsImFLIixbMixbMTUsImFKIl0sInJlcGxhY2UiLFs3LFsxNSwibyJdLFsxNSwiciJdXV1dLFsyMixbMjAsWzE1LCJhSiJdLFsxNSwiYUsiXV0sWzQ2LFszNixbMTUsImFIIl1dXV0sWzQzLFsxNSwiYUkiXSwic2VhcmNoIixbMTUsImFLIl1dLFszLCJhSCIsWyJhQSIsWzE1LCJhSSJdLFsxNSwiYUciXV1dXV1dLFszNixbMTUsImFIIl1dXSxbNTAsImFDIixbNDYsImFGIl0sWzIyLFsyMCxbMTUsImFGIl0sWzE1LCJxIl1dLFs0NixbNTMsWzM2LFsxNyxbMTUsInMiXSwiUEFUSCJdXV1dLFs0NixbMjIsWzIxLFsyLFsxNSwicCJdLCJpbmRleE9mIixbNyxbMTUsImFGIl1dXSxbMjcsMV1dLFs0NixbNTMsWzM2LFsxNyxbMTUsInMiXSwiVVJMIl1dXV0sWzQ2LFs1MyxbMzYsWzE3LFsxNSwicyJdLCJURVhUIl1dXV1dXV1dLFs1MCwiYUQiLFs0NiwiYUYiLCJhRyJdLFs0MSwiYUgiXSxbMywiYUgiLGZhbHNlXSxbNTIsImFJIixbImUiLFsxNSwiYUYiXV1dLFszOCxbMTUsImFJIl0sWzQ2LCJzdHJpbmciLCJhcnJheSIsIm9iamVjdCJdLFs0NixbNSxbNDYsWzUyLCJhSiIsWyJhQiIsWzE1LCJhRiJdLFsxNSwiYUciXV1dLFsyMixbMjEsWzE1LCJhRiJdLFsxNSwiYUoiXV0sWzQ2LFs1MyxbMzYsWzE1LCJhSiJdXV1dXSxbNF1dXSxbNSxbNDYsWzUzLFs0MSwiYUsiXSxbMywiYUsiLDBdLFs2MyxbNywiYUsiXSxbMjMsWzE1LCJhSyJdLFsxNyxbMTUsImFGIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJhSyJdLFszLCJhSyIsWzAsWzE1LCJhSyJdLDFdXV0sWzQ2LFs1MyxbNTIsImFMIixbImFEIixbMTYsWzE1LCJhRiJdLFsxNSwiYUsiXV0sWzE3LFsxNSwicyJdLCJURVhUIl1dXSxbMjIsWzIxLFsxNSwiYUwiXSxbNDRdXSxbNDYsWzUzLFs0MyxbMTUsImFGIl0sWzE1LCJhSyJdLFsxNSwiYUwiXV0sWzMsImFIIix0cnVlXV1dXV1dXV0sWzRdXV0sWzUsWzQ2LFs1NCwiYUsiLFsxNSwiYUYiXSxbNDYsWzUzLFs1MiwiYUwiLFsiYUQiLFsxNixbMTUsImFGIl0sWzE1LCJhSyJdXSxbMTcsWzE1LCJzIl0sIlRFWFQiXV1dLFsyMixbMjEsWzE1LCJhTCJdLFs0NF1dLFs0NixbNTMsWzQzLFsxNSwiYUYiXSxbMTUsImFLIl0sWzE1LCJhTCJdXSxbMywiYUgiLHRydWVdXV1dXV1dLFs0XV1dXV0sWzM2LFszOSxbMTUsImFIIl0sWzE1LCJhRiJdLFs0NF1dXV0sWzUwLCJhRSIsWzQ2LCJhRiIsImFHIl0sWzUyLCJhSCIsWzMwLFsyLFsxNSwiYUYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImgiXSwiQUMiXV1dLFs3XV1dLFsyMixbMjAsWzIsWzE1LCJhSCJdLCJpbmRleE9mIixbNyxbMTUsImFHIl1dXSxbMjcsMV1dLFs0NixbNTMsWzIsWzE1LCJhSCJdLCJwdXNoIixbNyxbMTUsImFHIl1dXV1dXSxbMixbMTUsImFGIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJoIl0sIkFDIl0sWzE1LCJhSCJdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY3JlYXRlUmVnZXgiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJkZWNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJlbmNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiZiIsWyJyZXF1aXJlIiwicGFyc2VVcmwiXV0sWzUyLCJnIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfZ29sZEV2ZW50VXNhZ2VJZCJdXSxbNTIsImoiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFs1MiwiayIsWzE3LFsxNSwiYSJdLCJyZWRhY3RFbWFpbCJdXSxbNTIsImwiLFsxNyxbMTUsImEiXSwicmVkYWN0UXVlcnlQYXJhbXMiXV0sWzUyLCJtIixbMzksWzE1LCJsIl0sWzIsWzE1LCJsIl0sInNwbGl0IixbNywiLCJdXSxbN11dXSxbMjIsWzEsWzI4LFsxNyxbMTUsIm0iXSwibGVuZ3RoIl1dLFsyOCxbMTUsImsiXV1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFs1MiwibiIsWyJiIiwiW0EtWjAtOS5fJSstXStAW0EtWjAtOS4tXStcXC5bQS1aXXsyLH0iLCJnaSJdXSxbNTIsIm8iLFsiYiIsWzAsIihbQS1aMC05Ll8tXXwlMjV8JTJCKSslNDBbQS1aMC05Li1dIiwiK1xcLltBLVpdezIsfSJdLCJnaSJdXSxbNTIsInAiLFs3LCJwYWdlX2xvY2F0aW9uIiwicGFnZV9yZWZlcnJlciIsInBhZ2VfcGF0aCIsImxpbmtfdXJsIiwidmlkZW9fdXJsIiwiZm9ybV9kZXN0aW5hdGlvbiJdXSxbNTIsInEiLCJwYWdlX3BhdGgiXSxbNTIsInIiLCIocmVkYWN0ZWQpIl0sWzUyLCJzIixbOCwiVEVYVCIsMCwiVVJMIiwxLCJQQVRIIiwyXV0sWzUyLCJ0IixbOF1dLFs1MiwidSIsWyJiIiwiKFtcXFxcXiQufD8qKygpe31dfFxcW3xcXFspIiwiZyJdXSxbNTIsInkiLCJodHRwOi8vLiJdLFsiZyIsWzE1LCJqIl0sWzUxLCIiLFs3LCJhRiJdLFsyMixbMTUsImsiXSxbNDYsWzUzLFs1MiwiYUciLFsyLFsxNSwiYUYiXSwiZ2V0SGl0S2V5cyIsWzddXV0sWzY1LCJhSCIsWzE1LCJhRyJdLFs0NixbNTMsWzIyLFsyMCxbMTUsImFIIl0sIl9zc3RfcGFyYW1ldGVycyJdLFs0NixbNl1dXSxbNTIsImFJIixbMixbMTUsImFGIl0sImdldEhpdERhdGEiLFs3LFsxNSwiYUgiXV1dXSxbMjIsWzI4LFsxNSwiYUkiXV0sWzQ2LFs2XV1dLFs1MiwiYUoiLFsiYUMiLFsxNSwiYUgiXV1dLFs1MiwiYUsiLFsiYUQiLFsxNSwiYUkiXSxbMTUsImFKIl1dXSxbMjIsWzIxLFsxNSwiYUsiXSxbNDRdXSxbNDYsWzUzLFsyLFsxNSwiYUYiXSwic2V0SGl0RGF0YSIsWzcsWzE1LCJhSCJdLFsxNSwiYUsiXV1dLFsiYUUiLFsxNSwiYUYiXSxbMzksWzIsWzE1LCJhRiJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJCTyJdXV0sWzE3LFsxNSwiaSJdLCJXIl0sWzE3LFsxNSwiaSJdLCJPIl1dXV1dXV1dXV1dXSxbMjIsWzE3LFsxNSwibSJdLCJsZW5ndGgiXSxbNDYsWzUzLFs2NSwiYUciLFsxNSwicCJdLFs0NixbNTMsWzUyLCJhSCIsWzIsWzE1LCJhRiJdLCJnZXRIaXREYXRhIixbNyxbMTUsImFHIl1dXV0sWzIyLFsyOCxbMTUsImFIIl1dLFs0NixbNl1dXSxbNTIsImFJIixbMzksWzIwLFsxNSwiYUciXSxbMTUsInEiXV0sWzE3LFsxNSwicyJdLCJQQVRIIl0sWzE3LFsxNSwicyJdLCJVUkwiXV1dLFs1MiwiYUoiLFsieCIsWzE1LCJhSCJdLFsxNSwibSJdLFsxNSwiYUkiXV1dLFsyMixbMjEsWzE1LCJhSiJdLFsxNSwiYUgiXV0sWzQ2LFs1MyxbMixbMTUsImFGIl0sInNldEhpdERhdGEiLFs3LFsxNSwiYUciXSxbMTUsImFKIl1dXSxbImFFIixbMTUsImFGIl0sWzM5LFsyLFsxNSwiYUYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImgiXSwiQk8iXV1dLFsxNyxbMTUsImkiXSwiWCJdLFsxNyxbMTUsImkiXSwiUCJdXV1dXV1dXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIixbNDYsImEiXSxbMjIsWzMwLFsyOCxbMTcsWzE1LCJhIl0sImNvbnZlcnNpb25SdWxlcyJdXSxbMjAsWzE3LFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sImxlbmd0aCJdLDBdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlQcmVIaXQiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5ldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJmIiwiZmlyc3RfdmlzaXQiXSxbNTIsImciLCJzZXNzaW9uX3N0YXJ0Il0sWzQxLCJoIl0sWzQxLCJpIl0sWyJkIixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdLFs1MSwiIixbNywiaiJdLFs1MiwiayIsWzgsInByZUhpdCIsWzE1LCJqIl1dXSxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiUCJdLHRydWVdXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImsiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQVYiXSx0cnVlXV0sWzRdXV1dXV1dLFsyMixbMixbMTUsImoiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQVoiXV1dLFs0NixbNTMsWzIyLFsyOCxbMTUsImgiXV0sWzQ2LFs1MyxbNTIsImwiLFsiYiIsWzE1LCJqIl0sWzgsIm9taXRIaXREYXRhIix0cnVlLCJvbWl0TWV0YWRhdGEiLHRydWVdXV0sWzIsWzE1LCJsIl0sInNldEV2ZW50TmFtZSIsWzcsWzE1LCJmIl1dXSxbMywiaCIsWzgsInByZUhpdCIsWzE1LCJsIl1dXV1dXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImgiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQkEiXSx0cnVlXV0sWzRdXV1dXV1dXV1dLFsyMixbMixbMTUsImoiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQkwiXV1dLFs0NixbNTMsWzIyLFsyOCxbMTUsImkiXV0sWzQ2LFs1MyxbNTIsImwiLFsiYiIsWzE1LCJqIl0sWzgsIm9taXRIaXREYXRhIix0cnVlLCJvbWl0TWV0YWRhdGEiLHRydWVdXV0sWzIsWzE1LCJsIl0sInNldEV2ZW50TmFtZSIsWzcsWzE1LCJnIl1dXSxbMywiaSIsWzgsInByZUhpdCIsWzE1LCJsIl1dXV1dXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImkiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQk0iXSx0cnVlXV0sWzRdXV1dXV1dXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXQogLFs1MCwiX19jY2RfZW1fZG93bmxvYWQiLFs0NiwiYSJdLFs1MCwicSIsWzQ2LCJ2Il0sWzM2LFsxLFsxNSwidiJdLFsyMSxbMixbMixbMTUsInYiXSwidG9Mb3dlckNhc2UiLFs3XV0sIm1hdGNoIixbNyxbMTUsInAiXV1dLFs0NV1dXV1dLFs1MCwiciIsWzQ2LCJ2Il0sWzUyLCJ3IixbMixbMTcsWzE1LCJ2Il0sInBhdGhuYW1lIl0sInNwbGl0IixbNywiLiJdXV0sWzUyLCJ4IixbMzksWzE4LFsxNyxbMTUsInciXSwibGVuZ3RoIl0sMV0sWzE2LFsxNSwidyJdLFszNyxbMTcsWzE1LCJ3Il0sImxlbmd0aCJdLDFdXSwiIl1dLFszNixbMTYsWzIsWzE1LCJ4Il0sInNwbGl0IixbNywiLyJdXSwwXV1dLFs1MCwicyIsWzQ2LCJ2Il0sWzM2LFszOSxbMTIsWzIsWzE3LFsxNSwidiJdLCJwYXRobmFtZSJdLCJzdWJzdHJpbmciLFs3LDAsMV1dLCIvIl0sWzE3LFsxNSwidiJdLCJwYXRobmFtZSJdLFswLCIvIixbMTcsWzE1LCJ2Il0sInBhdGhuYW1lIl1dXV1dLFs1MCwidCIsWzQ2LCJ2Il0sWzQxLCJ3Il0sWzMsInciLCIiXSxbMjIsWzEsWzE1LCJ2Il0sWzE3LFsxNSwidiJdLCJocmVmIl1dLFs0NixbNTMsWzQxLCJ4Il0sWzMsIngiLFsyLFsxNyxbMTUsInYiXSwiaHJlZiJdLCJpbmRleE9mIixbNywiIyJdXV0sWzMsInciLFszOSxbMjMsWzE1LCJ4Il0sMF0sWzE3LFsxNSwidiJdLCJocmVmIl0sWzIsWzE3LFsxNSwidiJdLCJocmVmIl0sInN1YnN0cmluZyIsWzcsMCxbMTUsIngiXV1dXV1dXV0sWzM2LFsxNSwidyJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9jY2RFbURvd25sb2FkQWN0aXZpdHkiXV0sWzUyLCJmIixbMTcsWzE1LCJkIl0sIkEiXV0sWzUyLCJnIiwiZmlsZV9kb3dubG9hZCJdLFs1MiwiaCIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiaSIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImkiXSxbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXV1dLFsyMixbMixbMTUsImMiXSwiZ2V0SXRlbSIsWzcsWzE1LCJoIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImoiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm0iLFsicmVxdWlyZSIsInBhcnNlVXJsIl1dLFs1MiwibiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsIm8iLFsyLFsxNSwibCJdLCJBIixbNywiZG93bmxvYWQiXV1dLFs1MiwicCIsWzAsIl4ocGRmfHhsc3g/fGRvY3g/fHR4dHxydGZ8Y3N2fGV4ZXxrZXl8cHAoc3x0fHR4KXw3enxwa2d8cmFyfGd6fHppcHxhdml8IiwibW92fG1wNHxtcGU/Z3x3bXZ8bWlkaT98bXAzfHdhdnx3bWEpJCJdXSxbNTIsInUiLFsiayIsWzgsImNoZWNrVmFsaWRhdGlvbiIsdHJ1ZV1dXSxbMjIsWzI4LFsxNSwidSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbMixbMTUsImMiXSwic2V0SXRlbSIsWzcsWzE1LCJoIl0sdHJ1ZV1dLFsiaiIsImd0bS5saW5rQ2xpY2siLFs1MSwiIixbNywidiIsInciXSxbInciXSxbNTIsIngiLFs4LCJldmVudElkIixbMTYsWzE1LCJ2Il0sImd0bS51bmlxdWVFdmVudElkIl0sImRlZmVycmFibGUiLHRydWVdXSxbNTIsInkiLFsxNixbMTUsInYiXSwiZ3RtLmVsZW1lbnRVcmwiXV0sWzUyLCJ6IixbIm0iLFsxNSwieSJdXV0sWzIyLFsyOCxbMTUsInoiXV0sWzQ2LFszNl1dXSxbNTIsImFBIixbInIiLFsxNSwieiJdXV0sWzIyLFsyOCxbInEiLFsxNSwiYUEiXV1dLFs0NixbNTMsWzM2XV1dXSxbNTIsImFCIixbOCwibGlua19pZCIsWzE2LFsxNSwidiJdLCJndG0uZWxlbWVudElkIl0sImxpbmtfdXJsIixbInQiLFsxNSwieiJdXSwibGlua190ZXh0IixbMTYsWzE1LCJ2Il0sImd0bS5lbGVtZW50VGV4dCJdLCJmaWxlX25hbWUiLFsicyIsWzE1LCJ6Il1dLCJmaWxlX2V4dGVuc2lvbiIsWzE1LCJhQSJdXV0sWzIsWzE1LCJsIl0sIkIiLFs3LFsxNSwieCJdXV0sWyJuIixbMTUsIm8iXSxbMTUsImciXSxbMTUsImFCIl0sWzE1LCJ4Il1dXSxbMTUsInUiXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX291dGJvdW5kX2NsaWNrIixbNDYsImEiXSxbNTAsInIiLFs0NiwidyJdLFsyMixbMjgsWzE1LCJ3Il1dLFs0NixbMzYsWzQ0XV1dXSxbNDEsIngiXSxbMywieCIsIiJdLFsyMixbMSxbMTUsInciXSxbMTcsWzE1LCJ3Il0sImhyZWYiXV0sWzQ2LFs1MyxbNDEsInkiXSxbMywieSIsWzIsWzE3LFsxNSwidyJdLCJocmVmIl0sImluZGV4T2YiLFs3LCIjIl1dXSxbMywieCIsWzM5LFsyMyxbMTUsInkiXSwwXSxbMTcsWzE1LCJ3Il0sImhyZWYiXSxbMixbMTcsWzE1LCJ3Il0sImhyZWYiXSwic3Vic3RyaW5nIixbNywwLFsxNSwieSJdXV1dXV1dXSxbMzYsWzE1LCJ4Il1dXSxbNTAsInMiLFs0NiwidyJdLFsyMixbMjgsWzE1LCJ3Il1dLFs0NixbMzYsWzQ0XV1dXSxbNDEsIngiXSxbMywieCIsWzE3LFsxNSwidyJdLCJob3N0bmFtZSJdXSxbNTIsInkiLFsyLFsxNSwieCJdLCJtYXRjaCIsWzcsIl53d3dcXGQqXFwuIl1dXSxbMjIsWzEsWzE1LCJ5Il0sWzE2LFsxNSwieSJdLDBdXSxbNDYsWzMsIngiLFsyLFsxNSwieCJdLCJzdWJzdHJpbmciLFs3LFsxNyxbMTYsWzE1LCJ5Il0sMF0sImxlbmd0aCJdXV1dXV0sWzM2LFsxNSwieCJdXV0sWzUwLCJ0IixbNDYsInciXSxbMjIsWzI4LFsxNSwidyJdXSxbNDYsWzM2LGZhbHNlXV1dLFs1MiwieCIsWzIsWzE3LFsxNSwidyJdLCJob3N0bmFtZSJdLCJ0b0xvd2VyQ2FzZSIsWzddXV0sWzIyLFsyOCxbMTUsIngiXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dLFs0MSwieSJdLFszLCJ5IixbMixbInMiLFsibyIsWyJuIl1dXSwidG9Mb3dlckNhc2UiLFs3XV1dLFs0MSwieiJdLFszLCJ6IixbMzcsWzE3LFsxNSwieCJdLCJsZW5ndGgiXSxbMTcsWzE1LCJ5Il0sImxlbmd0aCJdXV0sWzIyLFsxLFsxOCxbMTUsInoiXSwwXSxbMjksWzIsWzE1LCJ5Il0sImNoYXJBdCIsWzcsMF1dLCIuIl1dLFs0NixbNTMsWzMyLFsxNSwieiJdLFszLCJ6IixbMzcsWzE1LCJ6Il0sMV1dXSxbMywieSIsWzAsIi4iLFsxNSwieSJdXV1dXV0sWzIyLFsxLFsxOSxbMTUsInoiXSwwXSxbMTIsWzIsWzE1LCJ4Il0sImluZGV4T2YiLFs3LFsxNSwieSJdLFsxNSwieiJdXV0sWzE1LCJ6Il1dXSxbNDYsWzUzLFszNixmYWxzZV1dXV0sWzM2LHRydWVdXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2NjZEVtT3V0Ym91bmRDbGlja0FjdGl2aXR5Il1dLFs1MiwiZiIsWzE3LFsxNSwiZCJdLCJEIl1dLFs1MiwiZyIsImNsaWNrIl0sWzUyLCJoIiwiaXNSZWdpc3RlcmVkIl0sWzUyLCJpIixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdXSxbMjIsWyJiIixbMTUsImkiXSxbMTUsImYiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzIsWzE1LCJlIl0sIkEiLFs3LFsxNSwiaSJdLFsxNyxbMTUsImEiXSwiaW5jbHVkZVBhcmFtcyJdXV0sWzIyLFsyLFsxNSwiYyJdLCJnZXRJdGVtIixbNyxbMTUsImgiXV1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFs1MiwiaiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuYWRkRGF0YUxheWVyRXZlbnRMaXN0ZW5lciJdXSxbNTIsImsiLFsicmVxdWlyZSIsImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uTGlua0NsaWNrIl1dLFs1MiwibCIsWzE1LCJfX21vZHVsZV9lbmhhbmNlZE1lYXN1cmVtZW50Il1dLFs1MiwibSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIl1dLFs1MiwibiIsWyJyZXF1aXJlIiwiZ2V0VXJsIl1dLFs1MiwibyIsWyJyZXF1aXJlIiwicGFyc2VVcmwiXV0sWzUyLCJwIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwicSIsWzIsWzE1LCJsIl0sIkEiLFs3LCJvdXRib3VuZF9jbGljayJdXV0sWzUyLCJ1IixbIm0iLFsxNSwiaSJdLCJjcm9zc19kb21haW5fY29uZGl0aW9ucyJdXSxbNTIsInYiLFsiayIsWzgsImFmZmlsaWF0ZURvbWFpbnMiLFsxNSwidSJdLCJjaGVja1ZhbGlkYXRpb24iLHRydWUsIndhaXRGb3JUYWdzIixmYWxzZV1dXSxbMjIsWzI4LFsxNSwidiJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbMixbMTUsImMiXSwic2V0SXRlbSIsWzcsWzE1LCJoIl0sdHJ1ZV1dLFsiaiIsImd0bS5saW5rQ2xpY2siLFs1MSwiIixbNywidyIsIngiXSxbNTIsInkiLFsibyIsWzE2LFsxNSwidyJdLCJndG0uZWxlbWVudFVybCJdXV0sWzIyLFsyOCxbInQiLFsxNSwieSJdXV0sWzQ2LFs1MyxbIngiXSxbMzZdXV1dLFs1MiwieiIsWzgsImxpbmtfaWQiLFsxNixbMTUsInciXSwiZ3RtLmVsZW1lbnRJZCJdLCJsaW5rX2NsYXNzZXMiLFsxNixbMTUsInciXSwiZ3RtLmVsZW1lbnRDbGFzc2VzIl0sImxpbmtfdXJsIixbInIiLFsxNSwieSJdXSwibGlua19kb21haW4iLFsicyIsWzE1LCJ5Il1dLCJvdXRib3VuZCIsdHJ1ZV1dLFs0MyxbMTUsInoiXSwiZXZlbnRfY2FsbGJhY2siLFsxNSwieCJdXSxbNTIsImFBIixbOCwiZXZlbnRJZCIsWzE2LFsxNSwidyJdLCJndG0udW5pcXVlRXZlbnRJZCJdLCJkZWZlcnJhYmxlIix0cnVlXV0sWzIsWzE1LCJsIl0sIkIiLFs3LFsxNSwiYUEiXV1dLFsicCIsWzE1LCJxIl0sWzE1LCJnIl0sWzE1LCJ6Il0sWzE1LCJhQSJdXV0sWzE1LCJ2Il1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9wYWdlX3ZpZXciLFs0NiwiYSJdLFsyMixbMjgsWzE3LFsxNSwiYSJdLCJoaXN0b3J5RXZlbnRzIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwidGVtcGxhdGVTdG9yYWdlIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9jY2RFbVBhZ2VWaWV3QWN0aXZpdHkiXV0sWzUyLCJmIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZyIsWzE3LFsxNSwiZiJdLCJDIl1dLFs1MiwiaCIsInBhZ2VfdmlldyJdLFs1MiwiaSIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiaiIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJqIl0sWzE1LCJnIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImoiXV1dLFsyMixbMixbMTUsImQiXSwiZ2V0SXRlbSIsWzcsWzE1LCJpIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImsiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJsIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkhpc3RvcnlDaGFuZ2UiXV0sWzUyLCJtIixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJuIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwibyIsWzIsWzE1LCJtIl0sIkEiLFs3LCJwYWdlX3ZpZXciXV1dLFs1MiwicCIsWzgsImludGVydmFsIiwxMDAwLCJ1c2VWMkV2ZW50TmFtZSIsdHJ1ZV1dLFs1MiwicSIsWyJsIixbMTUsInAiXV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZCJdLCJzZXRJdGVtIixbNyxbMTUsImkiXSx0cnVlXV0sWyJrIiwiZ3RtLmhpc3RvcnlDaGFuZ2UtdjIiLFs1MSwiIixbNywiciIsInMiXSxbInMiXSxbNTIsInQiLFsxNixbMTUsInIiXSwiZ3RtLm9sZFVybCJdXSxbMjIsWzIwLFsxNixbMTUsInIiXSwiZ3RtLm5ld1VybCJdLFsxNSwidCJdXSxbNDYsWzM2XV1dLFs1MiwidSIsWzE2LFsxNSwiciJdLCJndG0uaGlzdG9yeUNoYW5nZVNvdXJjZSJdXSxbMjIsWzEsWzEsWzIxLFsxNSwidSJdLCJwdXNoU3RhdGUiXSxbMjEsWzE1LCJ1Il0sInBvcHN0YXRlIl1dLFsyMSxbMTUsInUiXSwicmVwbGFjZVN0YXRlIl1dLFs0NixbNTMsWzM2XV1dXSxbNTIsInYiLFs4XV0sWzIyLFsxNyxbMTUsImEiXSwiaW5jbHVkZVBhcmFtcyJdLFs0NixbNTMsWzQzLFsxNSwidiJdLCJwYWdlX2xvY2F0aW9uIixbMTYsWzE1LCJyIl0sImd0bS5uZXdVcmwiXV0sWzQzLFsxNSwidiJdLCJwYWdlX3JlZmVycmVyIixbMTUsInQiXV1dXV0sWzUyLCJ3IixbOCwiZXZlbnRJZCIsWzE2LFsxNSwiciJdLCJndG0udW5pcXVlRXZlbnRJZCJdXV0sWzIyLFsyMSxbMTcsWzE1LCJhIl0sImRlZmVyUGFnZVZpZXciXSxmYWxzZV0sWzQ2LFs1MyxbNDMsWzE1LCJ3Il0sImRlZmVycmFibGUiLHRydWVdXV1dLFsyLFsxNSwibSJdLCJCIixbNyxbMTUsInciXV1dLFsibiIsWzE1LCJvIl0sWzE1LCJoIl0sWzE1LCJ2Il0sWzE1LCJ3Il1dXSxbMTUsInEiXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX3Njcm9sbCIsWzQ2LCJhIl0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9jY2RFbVNjcm9sbEFjdGl2aXR5Il1dLFs1MiwiZiIsWzE3LFsxNSwiZCJdLCJFIl1dLFs1MiwiZyIsInNjcm9sbCJdLFs1MiwiaCIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiaSIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImkiXSxbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXV1dLFsyMixbMixbMTUsImMiXSwiZ2V0SXRlbSIsWzcsWzE1LCJoIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImoiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPblNjcm9sbCJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm0iLFsicmVxdWlyZSIsImludGVybmFsLnNlbmRHdGFnRXZlbnQiXV0sWzUyLCJuIixbMixbMTUsImwiXSwiQSIsWzcsInNjcm9sbCJdXV0sWzUyLCJvIixbImsiLFs4LCJ2ZXJ0aWNhbFRocmVzaG9sZFVuaXRzIiwiUEVSQ0VOVCIsInZlcnRpY2FsVGhyZXNob2xkcyIsOTBdXV0sWzIyLFsyOCxbMTUsIm8iXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWzIsWzE1LCJjIl0sInNldEl0ZW0iLFs3LFsxNSwiaCJdLHRydWVdXSxbImoiLCJndG0uc2Nyb2xsRGVwdGgiLFs1MSwiIixbNywicCIsInEiXSxbInEiXSxbNTIsInIiLFs4LCJldmVudElkIixbMTYsWzE1LCJwIl0sImd0bS51bmlxdWVFdmVudElkIl0sImRlZmVycmFibGUiLHRydWVdXSxbNTIsInMiLFs4LCJwZXJjZW50X3Njcm9sbGVkIixbMTYsWzE1LCJwIl0sImd0bS5zY3JvbGxUaHJlc2hvbGQiXV1dLFsyLFsxNSwibCJdLCJCIixbNyxbMTUsInIiXV1dLFsibSIsWzE1LCJuIl0sWzE1LCJnIl0sWzE1LCJzIl0sWzE1LCJyIl1dXSxbMTUsIm8iXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX3NpdGVfc2VhcmNoIixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImdldFF1ZXJ5UGFyYW1ldGVycyJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnNlbmRHdGFnRXZlbnQiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJnZXRDb250YWluZXJWZXJzaW9uIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9mZWF0dXJlcyJdXSxbNTIsImYiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV9jY2RFbVNpdGVTZWFyY2hBY3Rpdml0eSJdXSxbNTIsImkiLFsyLFsxNSwiaCJdLCJBIixbNyxbMTcsWzE1LCJhIl0sInNlYXJjaFF1ZXJ5UGFyYW1zIl0sWzE1LCJiIl1dXV0sWzUyLCJqIixbMzAsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXSxbMTcsWyJkIl0sImNvbnRhaW5lcklkIl1dXSxbNTIsImsiLFs4LCJkZWZlcnJhYmxlIix0cnVlLCJldmVudElkIixbMTcsWzE1LCJhIl0sImd0bUV2ZW50SWQiXSwiZXZlbnRNZXRhZGF0YSIsWzgsImVtX2V2ZW50Iix0cnVlXV1dLFsyMixbMTUsImkiXSxbNDYsWzUzLFs1MiwibCIsWzM5LFsyOCxbMjgsWzE3LFsxNSwiYSJdLCJpbmNsdWRlUGFyYW1zIl1dXSxbMixbMTUsImgiXSwiQiIsWzcsWzE1LCJpIl0sWzE3LFsxNSwiYSJdLCJhZGRpdGlvbmFsUXVlcnlQYXJhbXMiXSxbMTUsImIiXV1dLFs4XV1dLFs0MyxbMTcsWzE1LCJrIl0sImV2ZW50TWV0YWRhdGEiXSxbMTcsWzE1LCJnIl0sIloiXSwiYSJdLFsiYyIsWzE1LCJqIl0sInZpZXdfc2VhcmNoX3Jlc3VsdHMiLFsxNSwibCJdLFsxNSwiayJdXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZW1fdmlkZW8iLFs0NiwiYSJdLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwidGVtcGxhdGVTdG9yYWdlIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfY2NkRW1WaWRlb0FjdGl2aXR5Il1dLFs1MiwiZiIsWzE3LFsxNSwiZCJdLCJGIl1dLFs1MiwiZyIsInZpZGVvX3N0YXJ0Il0sWzUyLCJoIiwidmlkZW9fcHJvZ3Jlc3MiXSxbNTIsImkiLCJ2aWRlb19jb21wbGV0ZSJdLFs1MiwiaiIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiayIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJrIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImsiXSxbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXV1dLFsyMixbMixbMTUsImMiXSwiZ2V0SXRlbSIsWzcsWzE1LCJqIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImwiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbllvdVR1YmVBY3Rpdml0eSJdXSxbNTIsIm4iLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm8iLFsicmVxdWlyZSIsImludGVybmFsLnNlbmRHdGFnRXZlbnQiXV0sWzUyLCJwIixbMixbMTUsIm4iXSwiQSIsWzcsInZpZGVvIl1dXSxbNTIsInEiLFsibSIsWzgsImNhcHR1cmVDb21wbGV0ZSIsdHJ1ZSwiY2FwdHVyZVN0YXJ0Iix0cnVlLCJwcm9ncmVzc1RocmVzaG9sZHNQZXJjZW50IixbNywxMCwyNSw1MCw3NV1dXV0sWzIyLFsyOCxbMTUsInEiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWzIsWzE1LCJjIl0sInNldEl0ZW0iLFs3LFsxNSwiaiJdLHRydWVdXSxbImwiLCJndG0udmlkZW8iLFs1MSwiIixbNywiciIsInMiXSxbInMiXSxbNTIsInQiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvU3RhdHVzIl1dLFs0MSwidSJdLFsyMixbMjAsWzE1LCJ0Il0sInN0YXJ0Il0sWzQ2LFs1MyxbMywidSIsWzE1LCJnIl1dXV0sWzQ2LFsyMixbMjAsWzE1LCJ0Il0sInByb2dyZXNzIl0sWzQ2LFs1MyxbMywidSIsWzE1LCJoIl1dXV0sWzQ2LFsyMixbMjAsWzE1LCJ0Il0sImNvbXBsZXRlIl0sWzQ2LFs1MyxbMywidSIsWzE1LCJpIl1dXV0sWzQ2LFs1MyxbMzZdXV1dXV1dXSxbNTIsInYiLFs4LCJ2aWRlb19jdXJyZW50X3RpbWUiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvQ3VycmVudFRpbWUiXSwidmlkZW9fZHVyYXRpb24iLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvRHVyYXRpb24iXSwidmlkZW9fcGVyY2VudCIsWzE2LFsxNSwiciJdLCJndG0udmlkZW9QZXJjZW50Il0sInZpZGVvX3Byb3ZpZGVyIixbMTYsWzE1LCJyIl0sImd0bS52aWRlb1Byb3ZpZGVyIl0sInZpZGVvX3RpdGxlIixbMTYsWzE1LCJyIl0sImd0bS52aWRlb1RpdGxlIl0sInZpZGVvX3VybCIsWzE2LFsxNSwiciJdLCJndG0udmlkZW9VcmwiXSwidmlzaWJsZSIsWzE2LFsxNSwiciJdLCJndG0udmlkZW9WaXNpYmxlIl1dXSxbNTIsInciLFs4LCJldmVudElkIixbMTYsWzE1LCJyIl0sImd0bS51bmlxdWVFdmVudElkIl0sImRlZmVycmFibGUiLHRydWVdXSxbMixbMTUsIm4iXSwiQiIsWzcsWzE1LCJ3Il1dXSxbIm8iLFsxNSwicCJdLFsxNSwidSJdLFsxNSwidiJdLFsxNSwidyJdXV0sWzE1LCJxIl1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9nYV9hZHNfbGluayIsWzQ2LCJhIl0sWzUwLCJrIixbNDYsIm4iXSxbMzYsWyJqIixbNywiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdXV1dLFs1MCwibCIsWzQ2LCJuIl0sWzQxLCJvIl0sWzMsIm8iLFsyLFsxNSwibiJdLCJnZXRIaXREYXRhIixbNyxbMTcsWzE1LCJiIl0sIkpSIl1dXV0sWzIyLFsyOCxbMTUsIm8iXV0sWzQ2LFs1MyxbNTIsInIiLFszMCxbMixbMTUsIm4iXSwiZ2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiYiJdLCJKUyJdXV0sWzhdXV0sWzMsIm8iLFsxNixbMTUsInIiXSxbMTcsWzE1LCJiIl0sIkpSIl1dXV1dXSxbMjIsWzI4LFsxNSwibyJdXSxbNDYsWzUzLFszNl1dXV0sWzUyLCJwIixbImQiLFsxNyxbMTUsImMiXSwiUyJdXV0sWzIyLFsxNSwicCJdLFs0NixbNTMsWzM2XV1dXSxbImUiLFsxNyxbMTUsImMiXSwiUyJdLFsxNSwibyJdXSxbImUiLFsxNyxbMTUsImMiXSwiVSJdLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFs1MiwicSIsWyJkIixbMTcsWzE1LCJjIl0sIlQiXV1dLFsyMixbMTUsInEiXSxbNDYsWzUzLFs1MiwiciIsWzMwLFsyLFsxNSwibiJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJBQyJdXV0sWzddXV0sWzIyLFsyMyxbMixbMTUsInIiXSwiaW5kZXhPZiIsWzcsWzE3LFsxNSwiaSJdLCJBQSJdXV0sMF0sWzQ2LFs1MyxbMixbMTUsInIiXSwicHVzaCIsWzcsWzE3LFsxNSwiaSJdLCJBQSJdXV0sWzIsWzE1LCJuIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJoIl0sIkFDIl0sWzE1LCJyIl1dXV1dXV1dXV0sWzUwLCJtIixbNDYsIm4iLCJvIl0sWzIsWzE1LCJnIl0sIkIiLFs3LFsxNSwibiJdLFsxNSwibyJdXV1dLFs1MiwiYiIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9jcm9zc0NvbnRhaW5lclNjaGVtYSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2V0SW5Dcm9zc0NvbnRhaW5lckRhdGEiXV0sWzUyLCJmIixbMTUsIl9fbW9kdWxlX2dhQWRzTGlua0FjdGl2aXR5Il1dLFs1MiwiZyIsWzE1LCJfX21vZHVsZV9wcm9jZXNzb3JzIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfZ29sZEV2ZW50VXNhZ2VJZCJdXSxbNTIsImoiLFsicmVxdWlyZSIsImlzQ29uc2VudEdyYW50ZWQiXV0sWzIsWzE1LCJmIl0sIkEiLFs3LFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzE1LCJsIl0sWzE1LCJtIl0sWzE1LCJrIl1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZ2FfZmlyc3QiLFs0NiwiYSJdLFs1MCwiZSIsWzQ2LCJmIl0sWzIsWzE1LCJjIl0sIkEiLFs3LFsxNSwiZiJdXV0sWzIsWzE1LCJkIl0sIkEiLFs3LFsxNSwiZiJdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfdGFza1BsYXRmb3JtRGV0ZWN0aW9uIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV90YXNrU2V0VGVzdEhpdFBhcmFtcyJdXSxbImIiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzUxLCIiLFs3LCJmIl0sWyJlIixbMTUsImYiXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZ2FfbGFzdCIsWzQ2LCJhIl0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2dhX3JlZ3Njb3BlIixbNDYsImEiXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfY2NkR2FSZWdpb25TY29wZWRTZXR0aW5ncyJdXSxbNTIsImMiLFsyLFsxNSwiYiJdLCJCIixbNyxbMTUsImEiXV1dXSxbMixbMTUsImIiXSwiQSIsWzcsWzE1LCJhIl0sWzE1LCJjIl1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19lIixbNDYsImEiXSxbMzYsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFsicmVxdWlyZSIsImludGVybmFsLmdldEV2ZW50RGF0YSJdXSxbIiQwIiwiZXZlbnQiXV1dXQogLFs1MCwiX19nY3QiLFs0NiwiYSJdLFs1MCwiZyIsWzQ2LCJtIl0sWzUyLCJuIixbN11dLFs2NSwibyIsWzE1LCJtIl0sWzQ2LFs1MyxbNTIsInAiLFsiYiIsWzE1LCJvIl1dXSxbMjIsWzIxLFsxNSwicCJdLFs0NV1dLFs0NixbMixbMTUsIm4iXSwicHVzaCIsWzcsWzE1LCJwIl1dXV1dXV1dLFszNixbMTUsIm4iXV1dLFs1MCwiaCIsWzQ2LCJtIl0sWzUyLCJuIixbMTcsWzE1LCJtIl0sImxpbmtlciJdXSxbMjIsWzEsWzE1LCJuIl0sWzE2LFsxNSwibiJdLCJkb21haW5zIl1dLFs0NixbNTMsWzQzLFsxNSwibiJdLCJkb21haW5zIixbImciLFsxNixbMTUsIm4iXSwiZG9tYWlucyJdXV1dXV0sWzM2LFsxNSwibiJdXV0sWzUwLCJpIixbNDYsIm0iXSxbNTIsIm4iLFsxNyxbMTUsIm0iXSwicmVmZXJyYWxFeGNsdXNpb25EZWZpbml0aW9uIl1dLFsyMixbMSxbMTUsIm4iXSxbMTYsWzE1LCJuIl0sImluY2x1ZGVfY29uZGl0aW9ucyJdXSxbNDYsWzUzLFs0MyxbMTUsIm4iXSwiaW5jbHVkZV9jb25kaXRpb25zIixbImciLFsxNixbMTUsIm4iXSwiaW5jbHVkZV9jb25kaXRpb25zIl1dXV1dXSxbMzYsWzE1LCJuIl1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNyZWF0ZVJlZ2V4Il1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLm1lcmdlUmVtb3RlQ29uZmlnIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJEZXN0aW5hdGlvbiJdXSxbNTIsImYiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImoiLFszMCxbMixbMTUsImYiXSwiZ2V0SXRlbSIsWzcsInJlZ2V4Il1dLFsiYiIsIlsuKitcXC0/XiR7fSgpfFtcXF1cXFxcXSIsImciXV1dLFsyLFsxNSwiZiJdLCJzZXRJdGVtIixbNywicmVnZXgiLFsxNSwiaiJdXV0sWzUyLCJrIixbOF1dLFs1MiwibCIsWzE3LFsxNSwiYSJdLCJzZXNzaW9uRHVyYXRpb24iXV0sWzIyLFsxOCxbMTUsImwiXSwwXSxbNDYsWzUzLFs0MyxbMTUsImsiXSwic2Vzc2lvbl9kdXJhdGlvbiIsWzE1LCJsIl1dXV1dLFs0MyxbMTUsImsiXSwiZXZlbnRfc2V0dGluZ3MiLFsxNyxbMTUsImEiXSwiZXZlbnRTZXR0aW5ncyJdXSxbNDMsWzE1LCJrIl0sImR5bmFtaWNfZXZlbnRfc2V0dGluZ3MiLFsxNyxbMTUsImEiXSwiZHluYW1pY0V2ZW50U2V0dGluZ3MiXV0sWzQzLFsxNSwiayJdLCJnb29nbGVfc2lnbmFscyIsWzIwLFsxNyxbMTUsImEiXSwiZ29vZ2xlU2lnbmFscyJdLDFdXSxbNDMsWzE1LCJrIl0sImdvb2dsZV90bGQiLFsxNyxbMTUsImEiXSwiZm9yZWlnblRsZCJdXSxbNDMsWzE1LCJrIl0sImdhX3Jlc3RyaWN0X2RvbWFpbiIsWzIwLFsxNyxbMTUsImEiXSwicmVzdHJpY3REb21haW4iXSwxXV0sWzQzLFsxNSwiayJdLCJpbnRlcm5hbF90cmFmZmljX3Jlc3VsdHMiLFsxNyxbMTUsImEiXSwiaW50ZXJuYWxUcmFmZmljUmVzdWx0cyJdXSxbNDMsWzE1LCJrIl0sImxpbmtlciIsWyJoIixbMTUsImEiXV1dLFs0MyxbMTUsImsiXSwicmVmZXJyYWxfZXhjbHVzaW9uX2RlZmluaXRpb24iLFsiaSIsWzE1LCJhIl1dXSxbImQiLFsxNyxbMTUsImEiXSwidHJhY2tpbmdJZCJdLFsxNSwiayJdXSxbImUiLFsxNyxbMTUsImEiXSwidHJhY2tpbmdJZCJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19vZ3RfMXBfZGF0YV92MiIsWzQ2LCJhIl0sWzUwLCJwIixbNDYsInIiLCJzIiwidCIsInUiXSxbMjIsWzIwLFsxNixbMTUsInMiXSwidHlwZSJdLFsxNSwidCJdXSxbNDYsWzUzLFsyMixbMjgsWzE1LCJyIl1dLFs0NixbNTMsWzMsInIiLFs4XV1dXV0sWzIyLFsyOCxbMTYsWzE1LCJyIl0sWzE1LCJ0Il1dXSxbNDYsWzUzLFs0MyxbMTUsInIiXSxbMTUsInQiXSxbMTYsWzE1LCJzIl0sInVzZXJEYXRhIl1dLFs1MiwidiIsWzgsIm1vZGUiLCJhIl1dLFsyMixbMTYsWzE1LCJzIl0sInRhZ05hbWUiXSxbNDYsWzUzLFs0MyxbMTUsInYiXSwibG9jYXRpb24iLFsxNixbMTUsInMiXSwidGFnTmFtZSJdXV1dXSxbMjIsWzE2LFsxNSwicyJdLCJxdWVyeVNlbGVjdG9yIl0sWzQ2LFs1MyxbNDMsWzE1LCJ2Il0sInNlbGVjdG9yIixbMTYsWzE1LCJzIl0sInF1ZXJ5U2VsZWN0b3IiXV1dXV0sWzQzLFsxNSwidSJdLFsxNSwidCJdLFsxNSwidiJdXV1dXV1dXSxbMzYsWzE1LCJyIl1dXSxbNTAsInEiLFs0NiwiciIsInMiLCJ0Il0sWzIyLFsyOCxbMTYsWzE1LCJhIl0sWzE1LCJ0Il1dXSxbNDYsWzM2XV1dLFs0MyxbMTUsInIiXSxbMTUsInMiXSxbOCwidmFsdWUiLFsxNixbMTUsImEiXSxbMTUsInQiXV1dXV0sWzIyLFsyOCxbMTcsWzE1LCJhIl0sImlzRW5hYmxlZCJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImciLFsicmVxdWlyZSIsImludGVybmFsLmRldGVjdFVzZXJQcm92aWRlZERhdGEiXV0sWzUyLCJoIixbInJlcXVpcmUiLCJxdWVyeVBlcm1pc3Npb24iXV0sWzUyLCJpIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJqIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiayIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsIm0iLFsiYyIsWzE3LFsxNSwiZSJdLCJBVCJdXV0sWzUyLCJuIixbMzAsWyJmIl0sWzddXV0sWzUyLCJvIixbOCwiZW5hYmxlX2NvZGUiLHRydWVdXSxbMjIsWzE3LFsxNSwiYSJdLCJpc0F1dG9FbmFibGVkIl0sWzQ2LFs1MyxbNTIsInIiLFs3XV0sWzIyLFsxLFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzQ2LFs1MyxbNTMsWzQxLCJ1Il0sWzMsInUiLDBdLFs2MyxbNywidSJdLFsyMyxbMTUsInUiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzMzLFsxNSwidSJdLFszLCJ1IixbMCxbMTUsInUiXSwxXV1dLFs0NixbNTMsWzUyLCJ2IixbMTcsWzE2LFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTUsInUiXV0sImV4Y2x1c2lvblNlbGVjdG9yIl1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFsyLFsxNSwiciJdLCJwdXNoIixbNyxbMTUsInYiXV1dXV1dXV1dXV1dXSxbNTIsInMiLFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl1dLFs1MiwidCIsWzM5LFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl0sWzE3LFsxNSwiYSJdLCJhdXRvRW1haWxFbmFibGVkIl0sdHJ1ZV1dLFs0MyxbMTUsIm8iXSwiYXV0b19kZXRlY3QiLFs4LCJlbWFpbCIsWzE1LCJ0Il0sInBob25lIixbMSxbMTUsInMiXSxbMTcsWzE1LCJhIl0sImF1dG9QaG9uZUVuYWJsZWQiXV0sImFkZHJlc3MiLFsxLFsxNSwicyJdLFsxNyxbMTUsImEiXSwiYXV0b0FkZHJlc3NFbmFibGVkIl1dLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIixbMTUsInIiXV1dXV1dLFsyMixbMTcsWzE1LCJhIl0sImlzTWFudWFsRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJyIixbOF1dLFsyMixbMTcsWzE1LCJhIl0sIm1hbnVhbEVtYWlsRW5hYmxlZCJdLFs0NixbNTMsWyJxIixbMTUsInIiXSwiZW1haWwiLCJlbWFpbFZhbHVlIl1dXV0sWzIyLFsxNyxbMTUsImEiXSwibWFudWFsUGhvbmVFbmFibGVkIl0sWzQ2LFs1MyxbInEiLFsxNSwiciJdLCJwaG9uZSIsInBob25lVmFsdWUiXV1dXSxbMjIsWzE3LFsxNSwiYSJdLCJtYW51YWxBZGRyZXNzRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJzIixbOF1dLFsicSIsWzE1LCJzIl0sImZpcnN0X25hbWUiLCJmaXJzdE5hbWVWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImxhc3RfbmFtZSIsImxhc3ROYW1lVmFsdWUiXSxbInEiLFsxNSwicyJdLCJzdHJlZXQiLCJzdHJlZXRWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNpdHkiLCJjaXR5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJyZWdpb24iLCJyZWdpb25WYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNvdW50cnkiLCJjb3VudHJ5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJwb3N0YWxfY29kZSIsInBvc3RhbENvZGVWYWx1ZSJdLFs0MyxbMTUsInIiXSwibmFtZV9hbmRfYWRkcmVzcyIsWzcsWzE1LCJzIl1dXV1dXSxbNDMsWzE1LCJvIl0sInNlbGVjdG9ycyIsWzE1LCJyIl1dXV1dLFs2NSwiciIsWzE1LCJuIl0sWzQ2LFs1MyxbImkiLFsxNSwiciJdLCJ1c2VyX2RhdGFfc2V0dGluZ3MiLFsxNSwibyJdXSxbNTIsInMiLFsxNixbMTUsIm8iXSwiYXV0b19kZXRlY3QiXV0sWzIyLFsyOCxbMTUsInMiXV0sWzQ2LFs1MyxbNl1dXV0sWzUyLCJ0IixbNTEsIiIsWzcsInUiXSxbNTIsInYiLFsyLFsxNSwidSJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWCJdXV1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFszNixbMTUsInYiXV1dXV0sWzUyLCJ3IixbImMiLFsxNyxbMTUsImUiXSwiQlYiXV1dLFs1MiwieCIsWyJjIixbMTcsWzE1LCJlIl0sIkNJIl1dXSxbNDEsInkiXSxbMjIsWyJoIiwiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iXSxbNDYsWzUzLFszLCJ5IixbImciLFs4LCJleGNsdWRlRWxlbWVudFNlbGVjdG9ycyIsWzE2LFsxNSwicyJdLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIl0sImZpZWxkRmlsdGVycyIsWzgsImVtYWlsIixbMTYsWzE1LCJzIl0sImVtYWlsIl0sInBob25lIixbMTYsWzE1LCJzIl0sInBob25lIl0sImFkZHJlc3MiLFsxNixbMTUsInMiXSwiYWRkcmVzcyJdXSwiaW5jbHVkZVNlbGVjdG9yIixbMTUsInciXSwicmVhZEZyb21EYXRhTGF5ZXIiLFsxNSwieCJdXV1dXV1dLFs1MiwieiIsWzEsWzE1LCJ5Il0sWzE2LFsxNSwieSJdLCJlbGVtZW50cyJdXV0sWzUyLCJhQSIsWzhdXSxbNTIsImFCIixbOF1dLFsyMixbMSxbMTUsInoiXSxbMTgsWzE3LFsxNSwieiJdLCJsZW5ndGgiXSwwXV0sWzQ2LFs1MyxbNDEsImFDIl0sWzQxLCJhRCJdLFszLCJhRCIsWzhdXSxbNTMsWzQxLCJhRSJdLFszLCJhRSIsMF0sWzYzLFs3LCJhRSJdLFsyMyxbMTUsImFFIl0sWzE3LFsxNSwieiJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiYUUiXSxbMywiYUUiLFswLFsxNSwiYUUiXSwxXV1dLFs0NixbNTMsWzUyLCJhRiIsWzE2LFsxNSwieiJdLFsxNSwiYUUiXV1dLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwiZW1haWwiLFsxNSwiYUIiXV0sWzIyLFsiYyIsWzE3LFsxNSwiZSJdLCJCTyJdXSxbNDYsWzUzLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwicGhvbmVfbnVtYmVyIixbMTUsImFCIl1dLFszLCJhQyIsWyJwIixbMTUsImFDIl0sWzE1LCJhRiJdLCJmaXJzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwibGFzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwiY291bnRyeSIsWzE1LCJhRCJdXV0sWzMsImFDIixbInAiLFsxNSwiYUMiXSxbMTUsImFGIl0sInBvc3RhbF9jb2RlIixbMTUsImFEIl1dXV1dXV1dXV0sWzIyLFsxLFsxNSwiYUMiXSxbMjgsWzE2LFsxNSwiYUEiXSwiYWRkcmVzcyJdXV0sWzQ2LFs1MyxbNDMsWzE1LCJhQSJdLCJhZGRyZXNzIixbMTUsImFDIl1dLFsyMixbMTUsIm0iXSxbNDYsWzUzLFs0MyxbMTYsWzE1LCJhQSJdLCJhZGRyZXNzIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUQiXV1dXV1dXV1dXV0sWzIyLFsxLFsxNSwieSJdLFsxNSwieCJdXSxbNDYsWzUzLFs1MiwiYUMiLFsxNixbMTUsInkiXSwiZGF0YUxheWVyU2VhcmNoVGltZSJdXSxbNTIsImFEIixbMTYsWzE1LCJ5Il0sImRhdGFMYXllclNlYXJjaENvdW50Il1dLFsyLFsxNSwidSJdLCJtZXJnZUhpdERhdGFGb3JLZXkiLFs3LFsxNyxbMTUsImwiXSwiRlQiXSxbOCwiZGxzdCIsWzE1LCJhQyJdLCJkbHNjIixbMTUsImFEIl1dXV1dXV0sWzIyLFsxNSwibSJdLFs0NixbNTMsWzIyLFszMCxbMTYsWzE1LCJhQSJdLCJlbWFpbCJdLFsxNixbMTUsImFBIl0sInBob25lX251bWJlciJdXSxbNDYsWzUzLFs0MyxbMTUsImFBIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUIiXV1dXV1dXV0sWzIsWzE1LCJ1Il0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJrIl0sIkNYIl0sWzE1LCJhQSJdXV0sWzM2LFsxNSwiYUEiXV1dXSxbImoiLFsxNSwiciJdLFs1MSwiIixbNywidSJdLFsyLFsxNSwidSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWSJdLFsxNSwidCJdXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19vZ3RfY3Jvc3NfZG9tYWluIixbNDYsImEiXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfY29udmVydERvbWFpbkNvbmRpdGlvbnMiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbMjIsWzE3LFsxNSwiYSJdLCJydWxlcyJdLFs0NixbNTMsWzQxLCJlIl0sWzMsImUiLFszMCxbImMiXSxbN11dXSxbNjUsImYiLFsxNSwiZSJdLFs0NixbNTMsWzQxLCJnIl0sWzMsImciLFsxNyxbMTUsImEiXSwicnVsZXMiXV0sWyJkIixbMTUsImYiXSwiY3Jvc3NfZG9tYWluX2NvbmRpdGlvbnMiLFsxNyxbMTUsImEiXSwicnVsZXMiXV0sWzIyLFsxNyxbMTUsImciXSwibGVuZ3RoIl0sWzQ2LFs1MyxbMywiZyIsWzIsWzE1LCJiIl0sIkEiLFs3LFsxNSwiZyJdXV1dLFsiZCIsWzE1LCJmIl0sImxpbmtlciIsWzgsImRvbWFpbnMiLFsxNSwiZyJdLCJkZWNvcmF0ZV9mb3JtcyIsdHJ1ZSwiYWNjZXB0X2luY29taW5nIix0cnVlLCJ1cmxfcG9zaXRpb24iLCJxdWVyeSJdXV1dXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19vZ3RfZG1hIixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmRlY2xhcmVDb25zZW50U3RhdGUiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pc0RtYVJlZ2lvbiJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLnNldERlbGVnYXRlZENvbnNlbnRUeXBlIl1dLFsyMixbMSxbMjAsWzE3LFsxNSwiYSJdLCJkZWxlZ2F0aW9uTW9kZSJdLCJPTiJdLFsiYyJdXSxbNDYsWzUzLFsiZCIsImFkX3VzZXJfZGF0YSIsImFkX3N0b3JhZ2UiXV1dXSxbMjIsWzIwLFsxNyxbMTUsImEiXSwiZG1hRGVmYXVsdCJdLCJHUkFOVEVEIl0sWzQ2LFs1MyxbImIiLFs4LCJhZF91c2VyX2RhdGEiLCJncmFudGVkIl1dXV1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX29ndF9ldmVudF9jcmVhdGUiLFs0NiwiYSJdLFs1MCwiciIsWzQ2LCJzIiwidCJdLFsyMixbMjgsWzIsWzE1LCJjIl0sIkIiLFs3LFsxNSwicyJdLFsxNixbMTUsInQiXSxbMTUsIm4iXV0sWzMwLFsxNixbMTUsInQiXSxbMTUsIm8iXV0sWzddXV1dXSxbNDYsWzUzLFszNixmYWxzZV1dXV0sWzUyLCJ1IixbMTYsWzE1LCJ0Il0sWzE1LCJwIl1dXSxbMjIsWzIsWzE1LCJjIl0sIkQiLFs3LFsxNSwidSJdXV0sWzQ2LFs1MyxbMzZdXV1dLFs1MiwidiIsWzI4LFsxNixbMTUsInQiXSxbMTUsInEiXV1dXSxbNDEsInciXSxbMywidyIsWzE1LCJ2Il1dLFsyMixbImkiLFsxNyxbMTUsImoiXSwiQUUiXV0sWzQ2LFs1MyxbMywidyIsWzMwLFsxNSwidyJdLFsyOCxbMixbMTUsInMiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImciXSwiQk8iXV1dXV1dXV1dLFs1MiwieCIsWzMwLFsyLFsxNSwicyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZyJdLCJBQyJdXV0sWzddXV0sWzIyLFsyMCxbMixbMTUsIngiXSwiaW5kZXhPZiIsWzcsWzE3LFsxNSwiaCJdLCJBIl1dXSxbMjcsMV1dLFs0NixbNTMsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImgiXSwiQSJdXV1dXV0sWzIsWzE1LCJzIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJnIl0sIkFDIl0sWzE1LCJ4Il1dXSxbNTIsInkiLFsiYiIsWzE1LCJzIl0sWzgsIm9taXRIaXREYXRhIixbMTUsInciXSwib21pdEV2ZW50Q29udGV4dCIsWzE1LCJ2Il0sIm9taXRNZXRhZGF0YSIsdHJ1ZV1dXSxbMixbMTUsImMiXSwiQSIsWzcsWzE1LCJ5Il0sWzE1LCJ0Il1dXSxbMixbMTUsInkiXSwic2V0RXZlbnROYW1lIixbNyxbMTUsInUiXV1dLFsyLFsxNSwieSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZyJdLCJCUiJdLHRydWVdXSxbMixbMTUsInkiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImciXSwiQUMiXSxbNyxbMTcsWzE1LCJoIl0sIksiXV1dXSxbImQiLFsxNSwieSJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jb3B5UHJlSGl0Il1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9ldmVudEVkaXRpbmdBbmRTeW50aGVzaXMiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5wcm9jZXNzQXNOZXdFdmVudCJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJmIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV9nb2xkRXZlbnRVc2FnZUlkIl1dLFs1MiwiaSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbNTIsImoiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJrIixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdXSxbNDEsImwiXSxbMywibCIsWzIsWzE1LCJmIl0sImdldEl0ZW0iLFs3LFsxNSwiayJdXV1dLFs0MSwibSJdLFszLCJtIixbMjgsWzI4LFsxNSwibCJdXV1dLFsyMixbMTUsIm0iXSxbNDYsWzUzLFsyLFsxNSwibCJdLCJwdXNoIixbNyxbMTcsWzE1LCJhIl0sInByZWNvbXBpbGVkUnVsZSJdXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZiJdLCJzZXRJdGVtIixbNyxbMTUsImsiXSxbNyxbMTcsWzE1LCJhIl0sInByZWNvbXBpbGVkUnVsZSJdXV1dLFs1MiwibiIsImV2ZW50X25hbWVfcHJlZGljYXRlIl0sWzUyLCJvIiwiY29uZGl0aW9ucyJdLFs1MiwicCIsIm5ld19ldmVudF9uYW1lIl0sWzUyLCJxIiwibWVyZ2Vfc291cmNlX2V2ZW50X3BhcmFtcyJdLFsiZSIsWzE1LCJrIl0sWzUxLCIiLFs3LCJzIl0sWzIyLFsyLFsxNSwicyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZyJdLCJCUiJdXV0sWzQ2LFs1MyxbMzZdXV1dLFs1MiwidCIsWzIsWzE1LCJmIl0sImdldEl0ZW0iLFs3LFsxNSwiayJdXV1dLFs2NiwidSIsWzE1LCJ0Il0sWzQ2LFs1MyxbInIiLFsxNSwicyJdLFsxNSwidSJdXV1dXV1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX29ndF9nb29nbGVfc2lnbmFscyIsWzQ2LCJhIl0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJnZXRDb250YWluZXJWZXJzaW9uIl1dLFs1MiwiZCIsWzMwLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzE3LFsiYyJdLCJjb250YWluZXJJZCJdXV0sWyJiIixbMTUsImQiXSwiZ29vZ2xlX3NpZ25hbHMiLFsyMCxbMTcsWzE1LCJhIl0sImdvb2dsZVNpZ25hbHMiXSwiRU5BQkxFRCJdXSxbNTIsImUiLFsyMCxbMTcsWzE1LCJhIl0sImdvb2dsZVNpZ25hbHMiXSwiTk9OX0dBSUFfUkVNQVJLRVRJTkciXV0sWyJiIixbMTUsImQiXSwiZ29vZ2xlX29ubyIsWzE1LCJlIl1dLFs1MiwiZiIsWzMwLFsxNSwiZSJdLFsyMCxbMTcsWzE1LCJhIl0sImdvb2dsZVNpZ25hbHMiXSwiTElNSVRFRF9FWFRFUk5BTCJdXV0sWyJiIixbMTUsImQiXSwiZ29vZ2xlX25nIixbMTUsImYiXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fc2V0X3Byb2R1Y3Rfc2V0dGluZ3MiLFs0NiwiYSJdLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUyLCJfX21vZHVsZV9hZHdvcmRzSGl0VHlwZSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImNvbnZlcnNpb24iXSxbNTIsImMiLCJmbG9vZGxpZ2h0Il0sWzUyLCJkIiwiZ2FfY29udmVyc2lvbiJdLFs1MiwiZSIsInBhZ2VfdmlldyJdLFs1MiwiZiIsInJlbWFya2V0aW5nIl0sWzUyLCJnIiwidXNlcl9kYXRhX2xlYWQiXSxbNTIsImgiLCJ1c2VyX2RhdGFfd2ViIl0sWzM2LFs4LCJEIixbMTUsImIiXSwiRSIsWzE1LCJjIl0sIkYiLFsxNSwiZCJdLCJIIixbMTUsImUiXSwiSSIsWzE1LCJmIl0sIkoiLFsxNSwiZyJdLCJLIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2d0YWdTY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCJhZF9wZXJzb25hbGl6YXRpb24iXSxbNTIsImMiLCJhZF9zdG9yYWdlIl0sWzUyLCJkIiwiYWRfdXNlcl9kYXRhIl0sWzUyLCJlIiwiY29uc2VudF91cGRhdGVkIl0sWzUyLCJmIiwiYXBwX3JlbW92ZSJdLFs1MiwiZyIsImFwcF9zdG9yZV9yZWZ1bmQiXSxbNTIsImgiLCJhcHBfc3RvcmVfc3Vic2NyaXB0aW9uX2NhbmNlbCJdLFs1MiwiaSIsImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY29udmVydCJdLFs1MiwiaiIsImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fcmVuZXciXSxbNTIsImsiLCJjb252ZXJzaW9uIl0sWzUyLCJsIiwicHVyY2hhc2UiXSxbNTIsIm0iLCJmaXJzdF9vcGVuIl0sWzUyLCJuIiwiZmlyc3RfdmlzaXQiXSxbNTIsIm8iLCJndGFnLmNvbmZpZyJdLFs1MiwicCIsImluX2FwcF9wdXJjaGFzZSJdLFs1MiwicSIsInBhZ2VfdmlldyJdLFs1MiwiciIsInNlc3Npb25fc3RhcnQiXSxbNTIsInMiLCJ1c2VyX2VuZ2FnZW1lbnQiXSxbNTIsInQiLCJhZHNfZGF0YV9yZWRhY3Rpb24iXSxbNTIsInUiLCJhbGxvd19hZF9wZXJzb25hbGl6YXRpb25fc2lnbmFscyJdLFs1MiwidiIsImFsbG93X2N1c3RvbV9zY3JpcHRzIl0sWzUyLCJ3IiwiYWxsb3dfZW5oYW5jZWRfY29udmVyc2lvbnMiXSxbNTIsIngiLCJhbGxvd19nb29nbGVfc2lnbmFscyJdLFs1MiwieSIsImF1aWQiXSxbNTIsInoiLCJhd19yZW1hcmtldGluZ19vbmx5Il0sWzUyLCJhQSIsImRpc2NvdW50Il0sWzUyLCJhQiIsImF3X2ZlZWRfY291bnRyeSJdLFs1MiwiYUMiLCJhd19mZWVkX2xhbmd1YWdlIl0sWzUyLCJhRCIsIml0ZW1zIl0sWzUyLCJhRSIsImF3X21lcmNoYW50X2lkIl0sWzUyLCJhRiIsImF3X2Jhc2tldF90eXBlIl0sWzUyLCJhRyIsImNsaWVudF9pZCJdLFs1MiwiYUgiLCJjb252ZXJzaW9uX2Nvb2tpZV9wcmVmaXgiXSxbNTIsImFJIiwiY29udmVyc2lvbl9pZCJdLFs1MiwiYUoiLCJjb252ZXJzaW9uX2xpbmtlciJdLFs1MiwiYUsiLCJjb252ZXJzaW9uX2FwaSJdLFs1MiwiYUwiLCJjb29raWVfZGVwcmVjYXRpb24iXSxbNTIsImFNIiwiY29va2llX2V4cGlyZXMiXSxbNTIsImFOIiwiY29va2llX3ByZWZpeCJdLFs1MiwiYU8iLCJjb29raWVfdXBkYXRlIl0sWzUyLCJhUCIsImNvdW50cnkiXSxbNTIsImFRIiwiY3VycmVuY3kiXSxbNTIsImFSIiwiY3VzdG9tZXJfbGlmZXRpbWVfdmFsdWUiXSxbNTIsImFTIiwiY3VzdG9tZXJfdHlwZSJdLFs1MiwiYVQiLCJkZWJ1Z19tb2RlIl0sWzUyLCJhVSIsInNoaXBwaW5nIl0sWzUyLCJhViIsImVuZ2FnZW1lbnRfdGltZV9tc2VjIl0sWzUyLCJhVyIsImVzdGltYXRlZF9kZWxpdmVyeV9kYXRlIl0sWzUyLCJhWCIsImV2ZW50X2RldmVsb3Blcl9pZF9zdHJpbmciXSxbNTIsImFZIiwiZXZlbnRfaWQiXSxbNTIsImFaIiwiZXZlbnQiXSxbNTIsImJBIiwiXyZhZSJdLFs1MiwiYkIiLCJldmVudF90aW1lb3V0Il0sWzUyLCJiQyIsImV4dF9jbGllbnRfaWQiXSxbNTIsImJEIiwiZmlyc3RfcGFydHlfY29sbGVjdGlvbiJdLFs1MiwiYkUiLCJtYXRjaF9pZCJdLFs1MiwiYkYiLCJnZHByX2FwcGxpZXMiXSxbNTIsImJHIiwiX2d0X21ldGFkYXRhIl0sWzUyLCJiSCIsImdvb2dsZV9hbmFseXNpc19wYXJhbXMiXSxbNTIsImJJIiwiX2dvb2dsZV9uZyJdLFs1MiwiYkoiLCJfb25vIl0sWzUyLCJiSyIsImdwcF9zaWQiXSxbNTIsImJMIiwiZ3BwX3N0cmluZyJdLFs1MiwiYk0iLCJnc2FfZXhwZXJpbWVudF9pZCJdLFs1MiwiYk4iLCJndGFnX2V2ZW50X2ZlYXR1cmVfdXNhZ2UiXSxbNTIsImJPIiwiaWZyYW1lX3N0YXRlIl0sWzUyLCJiUCIsImlnbm9yZV9yZWZlcnJlciJdLFs1MiwiYlEiLCJpc19wYXNzdGhyb3VnaCJdLFs1MiwiYlIiLCJsYW5ndWFnZSJdLFs1MiwiYlMiLCJtZXJjaGFudF9mZWVkX2xhYmVsIl0sWzUyLCJiVCIsIm1lcmNoYW50X2ZlZWRfbGFuZ3VhZ2UiXSxbNTIsImJVIiwibWVyY2hhbnRfaWQiXSxbNTIsImJWIiwibmV3X2N1c3RvbWVyIl0sWzUyLCJiVyIsInBhZ2VfaG9zdG5hbWUiXSxbNTIsImJYIiwicGFnZV9wYXRoIl0sWzUyLCJiWSIsInBhZ2VfcmVmZXJyZXIiXSxbNTIsImJaIiwicGFnZV90aXRsZSJdLFs1MiwiY0EiLCJfcGxhdGludW1fcmVxdWVzdF9zdGF0dXMiXSxbNTIsImNCIiwicXVhbnRpdHkiXSxbNTIsImNDIiwicmVzdHJpY3RlZF9kYXRhX3Byb2Nlc3NpbmciXSxbNTIsImNEIiwic2NyZWVuX3Jlc29sdXRpb24iXSxbNTIsImNFIiwic2VuZF9wYWdlX3ZpZXciXSxbNTIsImNGIiwic2VydmVyX2NvbnRhaW5lcl8zcF9lbnJpY2htZW50Il0sWzUyLCJjRyIsInNlcnZlcl9jb250YWluZXJfdXJsIl0sWzUyLCJjSCIsInNlc3Npb25fZHVyYXRpb24iXSxbNTIsImNJIiwic2Vzc2lvbl9lbmdhZ2VkX3RpbWUiXSxbNTIsImNKIiwic2Vzc2lvbl9pZCJdLFs1MiwiY0siLCJfc2hhcmVkX3VzZXJfaWQiXSxbNTIsImNMIiwiZGVsaXZlcnlfcG9zdGFsX2NvZGUiXSxbNTIsImNNIiwidGVzdG9ubHkiXSxbNTIsImNOIiwidG9wbW9zdF91cmwiXSxbNTIsImNPIiwidHJhbnNhY3Rpb25faWQiXSxbNTIsImNQIiwidHJhbnNhY3Rpb25faWRfc291cmNlIl0sWzUyLCJjUSIsInRyYW5zcG9ydF91cmwiXSxbNTIsImNSIiwidXBkYXRlIl0sWzUyLCJjUyIsIl91c2VyX2FnZW50X2FyY2hpdGVjdHVyZSJdLFs1MiwiY1QiLCJfdXNlcl9hZ2VudF9iaXRuZXNzIl0sWzUyLCJjVSIsIl91c2VyX2FnZW50X2Z1bGxfdmVyc2lvbl9saXN0Il0sWzUyLCJjViIsIl91c2VyX2FnZW50X21vYmlsZSJdLFs1MiwiY1ciLCJfdXNlcl9hZ2VudF9tb2RlbCJdLFs1MiwiY1giLCJfdXNlcl9hZ2VudF9wbGF0Zm9ybSJdLFs1MiwiY1kiLCJfdXNlcl9hZ2VudF9wbGF0Zm9ybV92ZXJzaW9uIl0sWzUyLCJjWiIsIl91c2VyX2FnZW50X3dvdzY0Il0sWzUyLCJkQSIsInVzZXJfZGF0YSJdLFs1MiwiZEIiLCJ1c2VyX2RhdGFfYXV0b19sYXRlbmN5Il0sWzUyLCJkQyIsInVzZXJfZGF0YV9hdXRvX21ldGEiXSxbNTIsImREIiwidXNlcl9kYXRhX2F1dG9fbXVsdGkiXSxbNTIsImRFIiwidXNlcl9kYXRhX2F1dG9fc2VsZWN0b3JzIl0sWzUyLCJkRiIsInVzZXJfZGF0YV9hdXRvX3N0YXR1cyJdLFs1MiwiZEciLCJ1c2VyX2RhdGFfbW9kZSJdLFs1MiwiZEgiLCJ1c2VyX2lkIl0sWzUyLCJkSSIsInVzZXJfcHJvcGVydGllcyJdLFs1MiwiZEoiLCJ1c19wcml2YWN5X3N0cmluZyJdLFs1MiwiZEsiLCJ2YWx1ZSJdLFs1MiwiZEwiLCJfZnBtX3BhcmFtZXRlcnMiXSxbNTIsImRNIiwiX2hvc3RfbmFtZSJdLFs1MiwiZE4iLCJfaW5fcGFnZV9jb21tYW5kIl0sWzUyLCJkTyIsIl9tZWFzdXJlbWVudF90eXBlIl0sWzUyLCJkUCIsIm5vbl9wZXJzb25hbGl6ZWRfYWRzIl0sWzUyLCJkUSIsImNvbnZlcnNpb25fbGFiZWwiXSxbNTIsImRSIiwicGFnZV9sb2NhdGlvbiJdLFs1MiwiZFMiLCJfZXh0cmFjdGVkX2RhdGEiXSxbNTIsImRUIiwiZ2xvYmFsX2RldmVsb3Blcl9pZF9zdHJpbmciXSxbNTIsImRVIiwidGNfcHJpdmFjeV9zdHJpbmciXSxbMzYsWzgsIkEiLFsxNSwiYiJdLCJCIixbMTUsImMiXSwiQyIsWzE1LCJkIl0sIkYiLFsxNSwiZSJdLCJJIixbMTUsImYiXSwiSiIsWzE1LCJnIl0sIksiLFsxNSwiaCJdLCJMIixbMTUsImkiXSwiTSIsWzE1LCJqIl0sIk8iLFsxNSwiayJdLCJBQSIsWzE1LCJsIl0sIkFGIixbMTUsIm0iXSwiQUciLFsxNSwibiJdLCJBSCIsWzE1LCJvIl0sIkFKIixbMTUsInAiXSwiQUsiLFsxNSwicSJdLCJBTSIsWzE1LCJyIl0sIkFRIixbMTUsInMiXSwiQkMiLFsxNSwidCJdLCJCSiIsWzE1LCJ1Il0sIkJLIixbMTUsInYiXSwiQk0iLFsxNSwidyJdLCJCTiIsWzE1LCJ4Il0sIkJUIixbMTUsInkiXSwiQlgiLFsxNSwieiJdLCJCWSIsWzE1LCJhQSJdLCJCWiIsWzE1LCJhQiJdLCJDQSIsWzE1LCJhQyJdLCJDQiIsWzE1LCJhRCJdLCJDQyIsWzE1LCJhRSJdLCJDRCIsWzE1LCJhRiJdLCJDTCIsWzE1LCJhRyJdLCJDUSIsWzE1LCJhSCJdLCJDUiIsWzE1LCJhSSJdLCJLRyIsWzE1LCJkUSJdLCJDUyIsWzE1LCJhSiJdLCJDVSIsWzE1LCJhSyJdLCJDVyIsWzE1LCJhTCJdLCJDWSIsWzE1LCJhTSJdLCJEQyIsWzE1LCJhTiJdLCJERCIsWzE1LCJhTyJdLCJERSIsWzE1LCJhUCJdLCJERiIsWzE1LCJhUSJdLCJERyIsWzE1LCJhUiJdLCJESCIsWzE1LCJhUyJdLCJETiIsWzE1LCJhVCJdLCJFQSIsWzE1LCJhVSJdLCJFQyIsWzE1LCJhViJdLCJFRyIsWzE1LCJhVyJdLCJFSiIsWzE1LCJhWCJdLCJFSyIsWzE1LCJhWSJdLCJFTiIsWzE1LCJhWiJdLCJFTyIsWzE1LCJiQSJdLCJFUSIsWzE1LCJiQiJdLCJLSSIsWzE1LCJkUyJdLCJFVSIsWzE1LCJiQyJdLCJFVyIsWzE1LCJiRCJdLCJGRSIsWzE1LCJiRSJdLCJGTyIsWzE1LCJiRiJdLCJGUCIsWzE1LCJiRyJdLCJLSiIsWzE1LCJkVCJdLCJGVCIsWzE1LCJiSCJdLCJGVSIsWzE1LCJiSSJdLCJGViIsWzE1LCJiSiJdLCJGWSIsWzE1LCJiSyJdLCJGWiIsWzE1LCJiTCJdLCJHQiIsWzE1LCJiTSJdLCJHQyIsWzE1LCJiTiJdLCJHRSIsWzE1LCJiTyJdLCJHRiIsWzE1LCJiUCJdLCJHSyIsWzE1LCJiUSJdLCJHTSIsWzE1LCJiUiJdLCJHVCIsWzE1LCJiUyJdLCJHVSIsWzE1LCJiVCJdLCJHViIsWzE1LCJiVSJdLCJHWiIsWzE1LCJiViJdLCJIQyIsWzE1LCJiVyJdLCJLSCIsWzE1LCJkUiJdLCJIRCIsWzE1LCJiWCJdLCJIRSIsWzE1LCJiWSJdLCJIRiIsWzE1LCJiWiJdLCJITiIsWzE1LCJjQSJdLCJIUCIsWzE1LCJjQiJdLCJIVCIsWzE1LCJjQyJdLCJIWCIsWzE1LCJjRCJdLCJJQSIsWzE1LCJjRSJdLCJJQyIsWzE1LCJjRiJdLCJJRCIsWzE1LCJjRyJdLCJJRiIsWzE1LCJjSCJdLCJJSCIsWzE1LCJjSSJdLCJJSSIsWzE1LCJjSiJdLCJJSyIsWzE1LCJjSyJdLCJJTCIsWzE1LCJjTCJdLCJLSyIsWzE1LCJkVSJdLCJJUCIsWzE1LCJjTSJdLCJJUiIsWzE1LCJjTiJdLCJJVSIsWzE1LCJjTyJdLCJJViIsWzE1LCJjUCJdLCJJVyIsWzE1LCJjUSJdLCJJWSIsWzE1LCJjUiJdLCJKQiIsWzE1LCJjUyJdLCJKQyIsWzE1LCJjVCJdLCJKRCIsWzE1LCJjVSJdLCJKRSIsWzE1LCJjViJdLCJKRiIsWzE1LCJjVyJdLCJKRyIsWzE1LCJjWCJdLCJKSCIsWzE1LCJjWSJdLCJKSSIsWzE1LCJjWiJdLCJKSiIsWzE1LCJkQSJdLCJKSyIsWzE1LCJkQiJdLCJKTCIsWzE1LCJkQyJdLCJKTSIsWzE1LCJkRCJdLCJKTiIsWzE1LCJkRSJdLCJKTyIsWzE1LCJkRiJdLCJKUCIsWzE1LCJkRyJdLCJKUiIsWzE1LCJkSCJdLCJKUyIsWzE1LCJkSSJdLCJKVSIsWzE1LCJkSiJdLCJKViIsWzE1LCJkSyJdLCJKWCIsWzE1LCJkTCJdLCJKWSIsWzE1LCJkTSJdLCJKWiIsWzE1LCJkTiJdLCJLQyIsWzE1LCJkTyJdLCJLRCIsWzE1LCJkUCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCJhYm9ydF93aXRob3V0X2ZhaWwiXSxbNTIsImMiLCJhY2NlcHRfYnlfZGVmYXVsdCJdLFs1MiwiZCIsImFsbG93X2FkX3BlcnNvbmFsaXphdGlvbiJdLFs1MiwiZSIsImNvbnNlbnRfc3RhdGUiXSxbNTIsImYiLCJjb25zZW50X3VwZGF0ZWQiXSxbNTIsImciLCJjb252ZXJzaW9uX2xpbmtlcl9lbmFibGVkIl0sWzUyLCJoIiwiY29udmVyc2lvbl9tYXJraW5nX2NhbGxlZCJdLFs1MiwiaSIsImNvb2tpZV9vcHRpb25zIl0sWzUyLCJqIiwiZGVkdXBlX2lkIl0sWzUyLCJrIiwiZW1fZXZlbnQiXSxbNTIsImwiLCJldmVudF9wcm92ZW5hbmNlIl0sWzUyLCJtIiwiZXZlbnRfc291cmNlIl0sWzUyLCJuIiwiZXZlbnRfc3RhcnRfdGltZXN0YW1wX21zIl0sWzUyLCJvIiwiZXZlbnRfdXNhZ2UiXSxbNTIsInAiLCJleHRyYV90YWdfZXhwZXJpbWVudF9pZHMiXSxbNTIsInEiLCJmb3JtX2V2ZW50X2NhbmNlbGVkIl0sWzUyLCJyIiwiZ2E0X2NvbGxlY3Rpb25fc3ViZG9tYWluIl0sWzUyLCJzIiwiZ3RtX2V4dHJhY3RlZF9kYXRhIl0sWzUyLCJ0IiwiaGFuZGxlX2ludGVybmFsbHkiXSxbNTIsInUiLCJoYXNfZ2FfY29udmVyc2lvbl9jb25zZW50cyJdLFs1MiwidiIsImhpdF90eXBlIl0sWzUyLCJ3IiwiaGl0X3R5cGVfb3ZlcnJpZGUiXSxbNTIsIngiLCJpZ25vcmVfZHVwZV9jb25maWciXSxbNTIsInkiLCJpc19jb252ZXJzaW9uIl0sWzUyLCJ6IiwiaXNfZXh0ZXJuYWxfZXZlbnQiXSxbNTIsImFBIiwiaXNfZmlyc3RfdmlzaXQiXSxbNTIsImFCIiwiaXNfZmlyc3RfdmlzaXRfY29udmVyc2lvbiJdLFs1MiwiYUMiLCJpc19mcG1fZW5jcnlwdGlvbiJdLFs1MiwiYUQiLCJpc19mcG1fc3BsaXQiXSxbNTIsImFFIiwiaXNfZ2NwX2Jyb3dzZXIiXSxbNTIsImFGIiwiaXNfZ29vZ2xlX21lYXN1cmVtZW50X2FsbG93ZWQiXSxbNTIsImFHIiwiaXNfc2VydmVyX3NpZGVfZGVzdGluYXRpb24iXSxbNTIsImFIIiwiaXNfc2Vzc2lvbl9zdGFydCJdLFs1MiwiYUkiLCJpc19zZXNzaW9uX3N0YXJ0X2NvbnZlcnNpb24iXSxbNTIsImFKIiwiaXNfc2d0bV9nYV9hZHNfY29udmVyc2lvbl9zdHVkeV9jb250cm9sX2dyb3VwIl0sWzUyLCJhSyIsImlzX3NndG1fcHJlaGl0Il0sWzUyLCJhTCIsImlzX3NwbGl0X2NvbnZlcnNpb24iXSxbNTIsImFNIiwiaXNfc3luIl0sWzUyLCJhTiIsImlzX3Rlc3RfZXZlbnQiXSxbNTIsImFPIiwicHJlaGl0X2Zvcl9yZXRyeSJdLFs1MiwiYVAiLCJyZWRhY3RfYWRzX2RhdGEiXSxbNTIsImFRIiwicmVkYWN0X2NsaWNrX2lkcyJdLFs1MiwiYVIiLCJzZW5kX2NjbV9wYXJhbGxlbF9waW5nIl0sWzUyLCJhUyIsInNlbmRfdXNlcl9kYXRhX2hpdCJdLFs1MiwiYVQiLCJzcGVjdWxhdGl2ZSJdLFs1MiwiYVUiLCJzeW5fb3JfbW9kIl0sWzUyLCJhViIsInRyYW5zaWVudF9lY3NpZCJdLFs1MiwiYVciLCJ1c2VyX2RhdGEiXSxbNTIsImFYIiwidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljIl0sWzUyLCJhWSIsInVzZXJfZGF0YV9mcm9tX2F1dG9tYXRpY19nZXR0ZXIiXSxbNTIsImFaIiwidXNlcl9kYXRhX2Zyb21fY29kZSJdLFs1MiwiYkEiLCJ1c2VyX2RhdGFfZnJvbV9tYW51YWwiXSxbMzYsWzgsIkEiLFsxNSwiYiJdLCJCIixbMTUsImMiXSwiRiIsWzE1LCJkIl0sIk0iLFsxNSwiZSJdLCJOIixbMTUsImYiXSwiTyIsWzE1LCJnIl0sIlAiLFsxNSwiaCJdLCJRIixbMTUsImkiXSwiUyIsWzE1LCJqIl0sIlQiLFsxNSwiayJdLCJaIixbMTUsImwiXSwiQUEiLFsxNSwibSJdLCJBQiIsWzE1LCJuIl0sIkFDIixbMTUsIm8iXSwiQUQiLFsxNSwicCJdLCJBSiIsWzE1LCJxIl0sIkFLIixbMTUsInIiXSwiQU4iLFsxNSwicyJdLCJBTyIsWzE1LCJ0Il0sIkFQIixbMTUsInUiXSwiQVEiLFsxNSwidiJdLCJBUiIsWzE1LCJ3Il0sIkFTIixbMTUsIngiXSwiQVYiLFsxNSwieSJdLCJBWSIsWzE1LCJ6Il0sIkFaIixbMTUsImFBIl0sIkJBIixbMTUsImFCIl0sIkJDIixbMTUsImFDIl0sIkJEIixbMTUsImFEIl0sIkJFIixbMTUsImFFIl0sIkJGIixbMTUsImFGIl0sIkJLIixbMTUsImFHIl0sIkJMIixbMTUsImFIIl0sIkJNIixbMTUsImFJIl0sIkJOIixbMTUsImFKIl0sIkJPIixbMTUsImFLIl0sIkJRIixbMTUsImFMIl0sIkJSIixbMTUsImFNIl0sIkJTIixbMTUsImFOIl0sIkJZIixbMTUsImFPIl0sIkNCIixbMTUsImFQIl0sIkNDIixbMTUsImFRIl0sIkNFIixbMTUsImFSIl0sIkNOIixbMTUsImFTIl0sIkNRIixbMTUsImFUIl0sIkNUIixbMTUsImFVIl0sIkNVIixbMTUsImFWIl0sIkNXIixbMTUsImFXIl0sIkNYIixbMTUsImFYIl0sIkNZIixbMTUsImFZIl0sIkNaIixbMTUsImFaIl0sIkRBIixbMTUsImJBIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9mZWF0dXJlRmxhZ3MiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLDQ1XSxbNTIsImMiLDQ2XSxbNTIsImQiLDQ3XSxbNTIsImUiLDE3NF0sWzUyLCJmIiwyNzZdLFszNixbOCwiRiIsWzE1LCJiIl0sIkciLFsxNSwiYyJdLCJIIixbMTUsImQiXSwiViIsWzE1LCJlIl0sIkFEIixbMTUsImYiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2ZlYXR1cmVzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiw0MjVdLFs1MiwiYyIsNDM1XSxbNTIsImQiLDQ4OF0sWzUyLCJlIiw0ODldLFs1MiwiZiIsNDk4XSxbNTIsImciLDUwM10sWzUyLCJoIiw1MDRdLFs1MiwiaSIsNTA2XSxbNTIsImoiLDUyM10sWzUyLCJrIiw1MzJdLFs1MiwibCIsNTUzXSxbNTIsIm0iLDU2OF0sWzUyLCJuIiw1NzddLFs1MiwibyIsNTgxXSxbNTIsInAiLDU4M10sWzUyLCJxIiw1OTJdLFs1MiwiciIsNTk0XSxbNTIsInMiLDU5OV0sWzM2LFs4LCJBViIsWzE1LCJrIl0sIkFEIixbMTUsImQiXSwiQ0kiLFsxNSwicSJdLCJCViIsWzE1LCJuIl0sIkJPIixbMTUsIm0iXSwiQ0siLFsxNSwiciJdLCJDUCIsWzE1LCJzIl0sIkFNIixbMTUsImciXSwiQloiLFsxNSwibyJdLCJBVCIsWzE1LCJqIl0sIkFFIixbMTUsImUiXSwiQU4iLFsxNSwiaCJdLCJMIixbMTUsImMiXSwiQkMiLFsxNSwibCJdLCJBTyIsWzE1LCJpIl0sIkNCIixbMTUsInAiXSwiQUkiLFsxNSwiZiJdLCJJIixbMTUsImIiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2Nyb3NzQ29udGFpbmVyU2NoZW1hIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiY29va2llX2RlcHJlY2F0aW9uX2xhYmVsIl0sWzUyLCJjIiwicGxkIl0sWzUyLCJkIiwic2hhcmVkX3VzZXJfaWQiXSxbNTIsImUiLCJzaGFyZWRfdXNlcl9pZF9yZXF1ZXN0ZWQiXSxbNTIsImYiLCJzaGFyZWRfdXNlcl9pZF9zb3VyY2UiXSxbMzYsWzgsIkIiLFsxNSwiYiJdLCJOIixbMTUsImMiXSwiUyIsWzE1LCJkIl0sIlQiLFsxNSwiZSJdLCJVIixbMTUsImYiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3BsYXRmb3JtU2NoZW1hIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwxXSxbNTIsImMiLDJdLFs1MiwiZCIsM10sWzUyLCJlIiw0XSxbNTIsImYiLDVdLFs1MiwiZyIsNl0sWzM2LFs4LCJBIixbMTUsImIiXSwiRiIsWzE1LCJnIl0sIkIiLFsxNSwiYyJdLCJDIixbMTUsImQiXSwiRCIsWzE1LCJlIl0sIkUiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZ29sZEV2ZW50VXNhZ2VJZCIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsMV0sWzUyLCJjIiwyXSxbNTIsImQiLDVdLFs1MiwiZSIsNl0sWzUyLCJmIiw3XSxbNTIsImciLDhdLFs1MiwiaCIsOV0sWzUyLCJpIiwxMV0sWzUyLCJqIiwxNV0sWzUyLCJrIiwxNl0sWzUyLCJsIiwyMF0sWzUyLCJtIiwyMV0sWzUyLCJuIiwyM10sWzUyLCJvIiwyNF0sWzUyLCJwIiwyN10sWzUyLCJxIiw0MF0sWzUyLCJyIiw0MV0sWzM2LFs4LCJPIixbMTUsImoiXSwiVyIsWzE1LCJuIl0sIlAiLFsxNSwiayJdLCJYIixbMTUsIm8iXSwiSyIsWzE1LCJpIl0sIkEiLFsxNSwiYiJdLCJUIixbMTUsImwiXSwiRSIsWzE1LCJkIl0sIkYiLFsxNSwiZSJdLCJCIixbMTUsImMiXSwiSCIsWzE1LCJnIl0sIkFOIixbMTUsInEiXSwiSSIsWzE1LCJoIl0sIkciLFsxNSwiZiJdLCJVIixbMTUsIm0iXSwiQU8iLFsxNSwiciJdLCJBQSIsWzE1LCJwIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImFlX2Jsb2NrX2Rvd25sb2FkcyJdLFs1MiwiYyIsImFlX2Jsb2NrX2Zvcm0iXSxbNTIsImQiLCJhZV9ibG9ja19oaXN0b3J5Il0sWzUyLCJlIiwiYWVfYmxvY2tfb3V0Ym91bmRfY2xpY2siXSxbNTIsImYiLCJhZV9ibG9ja19zY3JvbGwiXSxbNTIsImciLCJhZV9ibG9ja192aWRlbyJdLFszNixbOCwiQSIsWzE1LCJiIl0sIkIiLFsxNSwiYyJdLCJDIixbMTUsImQiXSwiRCIsWzE1LCJlIl0sIkUiLFsxNSwiZiJdLCJGIixbMTUsImciXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2NvbnZlcnREb21haW5Db25kaXRpb25zIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJlIixbNDYsImciXSxbMzYsWzIsWzE1LCJnIl0sInJlcGxhY2UiLFs3LFsxNSwiZCJdLCJcXCQmIl1dXV0sWzUwLCJmIixbNDYsImciXSxbNTIsImgiLFs3XV0sWzUzLFs0MSwiaSJdLFszLCJpIiwwXSxbNjMsWzcsImkiXSxbMjMsWzE1LCJpIl0sWzE3LFsxNSwiZyJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiaSJdLFszLCJpIixbMCxbMTUsImkiXSwxXV1dLFs0NixbNTMsWzQxLCJqIl0sWzIyLFsyMCxbImMiLFsxNixbMTUsImciXSxbMTUsImkiXV1dLCJvYmplY3QiXSxbNDYsWzUzLFs1MiwibCIsWzE2LFsxNixbMTUsImciXSxbMTUsImkiXV0sIm1hdGNoVHlwZSJdXSxbNTIsIm0iLFsxNixbMTYsWzE1LCJnIl0sWzE1LCJpIl1dLCJtYXRjaFZhbHVlIl1dLFszOCxbMTUsImwiXSxbNDYsIkJFR0lOU19XSVRIIiwiRU5EU19XSVRIIiwiRVFVQUxTIiwiUkVHRVgiLCJDT05UQUlOUyJdLFs0NixbNSxbNDYsWzMsImoiLFswLCJeIixbImUiLFsxNSwibSJdXV1dLFs0XV1dLFs1LFs0NixbMywiaiIsWzAsWyJlIixbMTUsIm0iXV0sIiQiXV0sWzRdXV0sWzUsWzQ2LFszLCJqIixbMCxbMCwiXiIsWyJlIixbMTUsIm0iXV1dLCIkIl1dLFs0XV1dLFs1LFs0NixbMywiaiIsWzE1LCJtIl1dLFs0XV1dLFs1LFs0Nl1dLFs5LFs0NixbMywiaiIsWyJlIixbMTUsIm0iXV1dLFs0XV1dXV1dXSxbNDYsWzUzLFszLCJqIixbMTYsWzE1LCJnIl0sWzE1LCJpIl1dXV1dXSxbNDEsImsiXSxbMjIsWzE1LCJqIl0sWzQ2LFs1MyxbMywiayIsWyJiIixbMTUsImoiXV1dXV1dLFsyMixbMTUsImsiXSxbNDYsWzUzLFsyLFsxNSwiaCJdLCJwdXNoIixbNyxbMTUsImsiXV1dXV1dXV1dXSxbMzYsWzE1LCJoIl1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNyZWF0ZVJlZ2V4Il1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImQiLFsiYiIsIlsuKitcXC0/XiR7fSgpfFtcXF1cXFxcXSIsImciXV0sWzM2LFs4LCJBIixbMTUsImYiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2NjZEVtU2l0ZVNlYXJjaEFjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJiIixbNDYsImQiLCJlIl0sWzUyLCJmIixbMixbMzAsWzE1LCJkIl0sIiJdLCJzcGxpdCIsWzcsIiwiXV1dLFs1MyxbNDEsImciXSxbMywiZyIsMF0sWzYzLFs3LCJnIl0sWzIzLFsxNSwiZyJdLFsxNyxbMTUsImYiXSwibGVuZ3RoIl1dLFszMyxbMTUsImciXSxbMywiZyIsWzAsWzE1LCJnIl0sMV1dXSxbNDYsWzUzLFs1MiwiaCIsWyJlIixbMixbMTYsWzE1LCJmIl0sWzE1LCJnIl1dLCJ0cmltIixbN11dXV0sWzIyLFsyMSxbMTUsImgiXSxbNDRdXSxbNDYsWzUzLFszNixbMTUsImgiXV1dXV1dXV1dXSxbNTAsImMiLFs0NiwiZCIsImUiLCJmIl0sWzUyLCJnIixbOCwic2VhcmNoX3Rlcm0iLFsxNSwiZCJdXV0sWzUyLCJoIixbMixbMzAsWzE1LCJlIl0sIiJdLCJzcGxpdCIsWzcsIiwiXV1dLFs1MyxbNDEsImkiXSxbMywiaSIsMF0sWzYzLFs3LCJpIl0sWzIzLFsxNSwiaSJdLFsxNyxbMTUsImgiXSwibGVuZ3RoIl1dLFszMyxbMTUsImkiXSxbMywiaSIsWzAsWzE1LCJpIl0sMV1dXSxbNDYsWzUzLFs1MiwiaiIsWzIsWzE2LFsxNSwiaCJdLFsxNSwiaSJdXSwidHJpbSIsWzddXV0sWzUyLCJrIixbImYiLFsxNSwiaiJdXV0sWzIyLFsyMSxbMTUsImsiXSxbNDRdXSxbNDYsWzUzLFs0MyxbMTUsImciXSxbMCwicV8iLFsxNSwiaiJdXSxbMTUsImsiXV1dXV1dXV1dLFszNixbMTUsImciXV1dLFszNixbOCwiQiIsWzE1LCJjIl0sIkEiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfYWR3b3Jkc09yZGVySWRTb3VyY2UiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCIxIl0sWzUyLCJjIiwiMiJdLFs1MiwiZCIsIjMiXSxbMzYsWzgsIkEiLFsxNSwiYiJdLCJCIixbMTUsImMiXSwiQyIsWzE1LCJkIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9mcG1QYXJhbWV0ZXIiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCJjZSJdLFszNixbOCwiQiIsWzE1LCJiIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrSW5pdFNlcnZpY2VXb3JrZXIiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImMiLFs0NiwiZCJdLFsiYiIsWzE1LCJkIl1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmluaXRpYWxpemVTZXJ2aWNlV29ya2VyIl1dLFszNixbOCwiQSIsWzE1LCJjIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9hY3Rpdml0aWVzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJiIixbNDYsImMiLCJkIl0sWzM2LFszOSxbMTUsImQiXSxbImQiLFsxNSwiYyJdXSxbMTUsImMiXV1dXSxbMzYsWzgsIkEiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfcGxhdGZvcm1EZXRlY3Rpb24iLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm8iLFs0Nl0sWzY4LCJ3IixbNTMsWzIyLFsxLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiQUkiXV1dLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiSSJdXV1dLFs0NixbNTMsWzM2LFs3XV1dXV0sWzUyLCJ3IixbImIiLFsxNyxbMTUsImciXSwiTiJdXV0sWzIyLFsibiIsWzE1LCJ3Il1dLFs0NixbNTMsWzM2LFsxNSwidyJdXV1dXSxbNTIsIngiLFs3XV0sWzIyLFsicCJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJBIl1dXV1dLFsyMixbInEiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiQiJdXV1dXSxbMjIsWyJyIl0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkYiXV1dXV0sWzIyLFsidSJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJEIl1dXV1dLFsyMixbInMiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiRSJdXV1dXSxbMjIsWyJ0Il0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkMiXV1dXV0sWzIyLFsibCJdLFs0NixbNTMsWyJmIixbMTcsWzE1LCJnIl0sIk4iXSxbMTUsIngiXSx0cnVlXV1dXSxbMzYsWzE1LCJ4Il1dXSxbNDZdXSxbMzYsWzddXV0sWzUwLCJwIixbNDZdLFs2OCwidyIsWzUzLFszNixbMjgsWzI4LFsiYyIsInNjcmlwdFtkYXRhLXJlcXVpcmVtb2R1bGVePVwibWFnZS9cIl0iXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJxIixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWyJtIiwiWVhOelpYUnpMbk54ZFdGeVpYTndZV05sTG1OdmJTOD0iXV0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjXj1cIi8vIixbMTUsInciXV0sIlwiXSJdXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJyIixbNDZdLFsyMixbMjgsWyJlIixbMTcsWzE1LCJoIl0sIkkiXV1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbNjgsInciLFs1MyxbNTIsInciLFsibSIsImMyaHZjR2xtZVM1amIyMD0iXV0sWzUyLCJ4IixbIm0iLCJjMmh2Y0dsbWVXTmtiaTVqYjIwPSJdXSxbMjIsWzMwLFsyOCxbMTUsInciXV0sWzI4LFsxNSwieCJdXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLCJzY3JpcHRbc3JjKj1cImNkbi4iLFsxNSwidyJdXSwiXCJdLCJdLCJtZXRhW3Byb3BlcnR5PVwib2c6aW1hZ2VcIl1bY29udGVudCo9XCJjZG4uIl0sWzE1LCJ3Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cImNkbi4iXSxbMTUsInciXV0sIlwiXSwiXSwibGlua1tyZWw9XCJwcmVjb25uZWN0XCJdW2hyZWYqPVwiZm9udHMuIl0sWzE1LCJ4Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cIml0ZXJhYmxlLXNob3BpZnlcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cInYuIl0sWzE1LCJ3Il1dLCJcIl0iXV1dXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwicyIsWzQ2XSxbNjgsInciLFs1MyxbNTIsInciLFsiZCIsInByb3RvY29sIl1dLFs1MiwieCIsWyJkIiwiaG9zdCJdXSxbNTIsInkiLFszOSxbMSxbMTUsInciXSxbMTUsIngiXV0sWzAsWzAsWzAsWzAsIltzcmNePVwiIixbMTUsInciXV0sIjovLyJdLFsxNSwieCJdXSwiL3dwLWNvbnRlbnRcIl0sIl0sIiJdXSxbNTIsInoiLFsibSIsIkxuZHZjbVJ3Y21WemN5NWpiMjA9Il1dLFs1MiwiYUEiLFsibSIsIkx5OXpMbmN1YjNKbiJdXSxbMjIsWzMwLFsyOCxbMTUsInoiXV0sWzI4LFsxNSwiYUEiXV1dLFs0NixbMzYsZmFsc2VdXV0sWzM2LFszMCxbInYiLFsxNSwieCJdLFsxNSwieiJdXSxbMjgsWzI4LFsiYyIsWzAsWzAsWzAsWzAsWzE1LCJ5Il0sIm1ldGFbbmFtZT1cImdlbmVyYXRvclwiXVtjb250ZW50Xj1cIldvcmRQcmVzcyBcIl0sIl0sImxpbmtbcmVsPVwiZG5zLXByZWZldGNoXCJdW2hyZWY9XCIiXSxbMTUsImFBIl1dLCJcIl0iXV1dXV1dXSxbNDZdXSxbMzYsZmFsc2VdXSxbNTAsInQiLFs0Nl0sWzY4LCJ3IixbNTMsWzUyLCJ3IixbMjgsWzI4LFsiYyIsWzAsIltjbGFzcyo9XCJ3b29jb21tZXJjZVwiXSwiLCJtZXRhW25hbWU9XCJnZW5lcmF0b3JcIl1bY29udGVudF49XCJXb29Db21tZXJjZSBcIl0iXV1dXV0sWzIyLFsxNSwidyJdLFs0NixbNTNdXV0sWzM2LFsxNSwidyJdXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJ1IixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjKj1cIndvb2NvbW1lcmNlXCJdLCIsImxpbmtbaHJlZio9XCJ3b29jb21tZXJjZVwiXSwiXSwiW2NsYXNzfD1cIndvb2NvbW1lcmNlXCJdIl1dXV1dLFsyMixbMTUsInciXSxbNDYsWzUzXV1dLFszNixbMTUsInciXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwidiIsWzQ2LCJ3IiwieCJdLFszNixbMSxbMTksWzE3LFsxNSwidyJdLCJsZW5ndGgiXSxbMTcsWzE1LCJ4Il0sImxlbmd0aCJdXSxbMjAsWzIsWzE1LCJ3Il0sInN1YnN0cmluZyIsWzcsWzM3LFsxNyxbMTUsInciXSwibGVuZ3RoIl0sWzE3LFsxNSwieCJdLCJsZW5ndGgiXV0sWzE3LFsxNSwidyJdLCJsZW5ndGgiXV1dLFsxNSwieCJdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciJdXSxbNTIsImQiLFsicmVxdWlyZSIsImdldFVybCJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRJbkNyb3NzQ29udGFpbmVyRGF0YSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfY3Jvc3NDb250YWluZXJTY2hlbWEiXV0sWzUyLCJoIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9mZWF0dXJlRmxhZ3MiXV0sWzUyLCJqIixbMTUsIl9fbW9kdWxlX3BsYXRmb3JtU2NoZW1hIl1dLFs1MiwiayIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImwiLFsicmVxdWlyZSIsImludGVybmFsLmlzRG9tUmVhZHkiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJmcm9tQmFzZTY0Il1dLFs1MiwibiIsWzUxLCIiLFs3LCJ3Il0sWzM2LFsyMCxbImsiLFsxNSwidyJdXSwiYXJyYXkiXV1dXSxbMzYsWzgsIkEiLFsxNSwibyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1Eb3dubG9hZEFjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfaWQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfdXJsIixbNDRdXV0sWzIsWzE1LCJrIl0sInNldEhpdERhdGEiLFs3LCJsaW5rX3RleHQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImZpbGVfbmFtZSIsWzQ0XV1dLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywiZmlsZV9leHRlbnNpb24iLFs0NF1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNyxbMTUsImUiXSwiQSJdXSxbNTIsImciLCJmaWxlX2Rvd25sb2FkIl0sWzM2LFs4LCJBIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImUiLFs0NiwiZyJdLFs1MiwiaCIsWyJiIl1dLFs1MiwiaSIsWzddXSxbNTMsWzQxLCJqIl0sWzMsImoiLDBdLFs2MyxbNywiaiJdLFsyMyxbMTUsImoiXSxbMTcsWzE1LCJoIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJqIl0sWzMsImoiLFswLFsxNSwiaiJdLDFdXV0sWzQ2LFs1MyxbNTIsImsiLFsxNixbMTUsImgiXSxbMTUsImoiXV1dLFsyMixbImQiLFsxNSwiZyJdLFsxNSwiayJdXSxbNDYsWzUzLFsyLFsxNSwiaSJdLCJwdXNoIixbNyxbMTUsImsiXV1dXV1dXV1dXSxbMzYsWzE1LCJpIl1dXSxbNTAsImYiLFs0NiwiZyIsImgiXSxbNTIsImkiLFszMCxbMTUsImgiXSxbOF1dXSxbNDMsWzE1LCJpIl0sWzE3LFsxNSwiYyJdLCJUIl0sdHJ1ZV0sWzQzLFsxNSwiaSJdLFsxNyxbMTUsImMiXSwiQ1EiXSx0cnVlXSxbNDMsWzE1LCJpIl0sWzE3LFsxNSwiYyJdLCJaIl0sImEiXSxbNDMsWzE1LCJnIl0sImV2ZW50TWV0YWRhdGEiLFsxNSwiaSJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jbGFpbURlc3RpbmF0aW9uIl1dLFszNixbOCwiQSIsWzE1LCJlIl0sIkIiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1PdXRib3VuZENsaWNrQWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImgiLFs0NiwiaSIsImoiXSxbImMiLFsxNSwiaSJdLFs1MSwiIixbNywiayJdLFsyMixbMzAsWzIxLFsyLFsxNSwiayJdLCJnZXRFdmVudE5hbWUiLFs3XV0sWzE1LCJnIl1dLFsyOCxbMixbMTUsImsiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiVCJdXV1dXSxbNDYsWzUzLFszNl1dXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJrIl0sImFib3J0IixbN11dLFszNl1dXV0sWzIsWzE1LCJrIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIkNRIl0sZmFsc2VdXSxbMjIsWzI4LFsxNSwiaiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywibGlua19pZCIsWzQ0XV1dLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywibGlua19jbGFzc2VzIixbNDRdXV0sWzIsWzE1LCJrIl0sInNldEhpdERhdGEiLFs3LCJsaW5rX3VybCIsWzQ0XV1dLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywibGlua19kb21haW4iLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsIm91dGJvdW5kIixbNDRdXV1dXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJmIixbMTcsWzE1LCJlIl0sIkQiXV0sWzUyLCJnIiwiY2xpY2siXSxbMzYsWzgsIkEiLFsxNSwiaCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1QYWdlVmlld0FjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJqIixbNDYsImsiXSxbImMiLFsxNSwiayJdLFs1MSwiIixbNywibCJdLFsyMixbMzAsWzIxLFsyLFsxNSwibCJdLCJnZXRFdmVudE5hbWUiLFs3XV0sWzE1LCJpIl1dLFsyOCxbMixbMTUsImwiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiVCJdXV1dXSxbNDYsWzUzLFszNl1dXV0sWzIyLFsiYiIsWzE1LCJrIl0sWzE1LCJoIl1dLFs0NixbNTMsWzIsWzE1LCJsIl0sImFib3J0IixbN11dLFszNl1dXV0sWzIyLFsyOCxbMixbMTUsImwiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQk8iXV1dXSxbNDYsWzUzLFsiZCIsWzE1LCJrIl0sWzE3LFsxNSwiZiJdLCJIRSJdLFsyLFsxNSwibCJdLCJnZXRIaXREYXRhIixbNyxbMTcsWzE1LCJmIl0sIkhFIl1dXV1dXV0sWzIsWzE1LCJsIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJlIl0sIkNRIl0sZmFsc2VdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZiIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiZyIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImgiLFsxNyxbMTUsImciXSwiQyJdXSxbNTIsImkiLFsxNyxbMTUsImYiXSwiQUsiXV0sWzM2LFs4LCJBIixbMTUsImoiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2NjZEVtU2Nyb2xsQWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImgiLFs0NiwiaSIsImoiXSxbImMiLFsxNSwiaSJdLFs1MSwiIixbNywiayJdLFsyMixbMzAsWzIxLFsyLFsxNSwiayJdLCJnZXRFdmVudE5hbWUiLFs3XV0sWzE1LCJnIl1dLFsyOCxbMixbMTUsImsiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiVCJdXV1dXSxbNDYsWzUzLFszNl1dXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJrIl0sImFib3J0IixbN11dLFszNl1dXV0sWzIsWzE1LCJrIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIkNRIl0sZmFsc2VdXSxbMjIsWzI4LFsxNSwiaiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywicGVyY2VudF9zY3JvbGxlZCIsWzQ0XV1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZiIsWzE3LFsxNSwiZSJdLCJFIl1dLFs1MiwiZyIsInNjcm9sbCJdLFszNixbOCwiQSIsWzE1LCJoIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9jY2RFbVZpZGVvQWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImoiLFs0NiwiayIsImwiXSxbImMiLFsxNSwiayJdLFs1MSwiIixbNywibSJdLFs1MiwibiIsWzIsWzE1LCJtIl0sImdldEV2ZW50TmFtZSIsWzddXV0sWzUyLCJvIixbMzAsWzMwLFsyMCxbMTUsIm4iXSxbMTUsImciXV0sWzIwLFsxNSwibiJdLFsxNSwiaCJdXV0sWzIwLFsxNSwibiJdLFsxNSwiaSJdXV1dLFsyMixbMzAsWzI4LFsxNSwibyJdXSxbMjgsWzIsWzE1LCJtIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiayJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwibSJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwibSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImwiXV0sWzQ2LFs1MyxbMixbMTUsIm0iXSwic2V0SGl0RGF0YSIsWzcsInZpZGVvX2N1cnJlbnRfdGltZSIsWzQ0XV1dLFsyLFsxNSwibSJdLCJzZXRIaXREYXRhIixbNywidmlkZW9fZHVyYXRpb24iLFs0NF1dXSxbMixbMTUsIm0iXSwic2V0SGl0RGF0YSIsWzcsInZpZGVvX3BlcmNlbnQiLFs0NF1dXSxbMixbMTUsIm0iXSwic2V0SGl0RGF0YSIsWzcsInZpZGVvX3Byb3ZpZGVyIixbNDRdXV0sWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb190aXRsZSIsWzQ0XV1dLFsyLFsxNSwibSJdLCJzZXRIaXREYXRhIixbNywidmlkZW9fdXJsIixbNDRdXV0sWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aXNpYmxlIixbNDRdXV1dXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJmIixbMTcsWzE1LCJlIl0sIkYiXV0sWzUyLCJnIiwidmlkZW9fc3RhcnQiXSxbNTIsImgiLCJ2aWRlb19wcm9ncmVzcyJdLFs1MiwiaSIsInZpZGVvX2NvbXBsZXRlIl0sWzM2LFs4LCJBIixbMTUsImoiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tTZXRHcHBQYXJhbXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImQiLFs0NiwiZSJdLFs1MiwiZiIsWyJiIl1dLFsyMixbMTYsWzE1LCJmIl0sWzE3LFsxNSwiYyJdLCJGWiJdXSxbNDYsWzUzLFsyLFsxNSwiZSJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJjIl0sIkZaIl0sWzE2LFsxNSwiZiJdLFsxNyxbMTUsImMiXSwiRloiXV1dXV1dXSxbMjIsWzE2LFsxNSwiZiJdLFsxNyxbMTUsImMiXSwiRlkiXV0sWzQ2LFs1MyxbMixbMTUsImUiXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiYyJdLCJGWSJdLFsxNixbMTUsImYiXSxbMTcsWzE1LCJjIl0sIkZZIl1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJpdmFjeVN0cmluZ3MiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzM2LFs4LCJBIixbMTUsImQiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tTZXRUZXN0SGl0UGFyYW1zIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJmIixbNDYsImciXSxbMjIsWzIsWzE1LCJnIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJlIl0sIkJTIl1dXSxbNDYsWzUzLFsyLFsxNSwiZyJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJkIl0sIklQIl0sIjEiXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFszNixbOCwiQSIsWzE1LCJmIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV93ZWJBZHNUYXNrcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiaiIsWzQ2LCJtIl0sWzUyLCJuIixbOF1dLFs0MyxbMTUsIm4iXSxbMTcsWzE1LCJkIl0sIkIiXSxbImUiLFsxNyxbMTUsImQiXSwiQiJdXV0sWzQzLFsxNSwibiJdLFsxNyxbMTUsImQiXSwiQyJdLFsiZSIsWzE3LFsxNSwiZCJdLCJDIl1dXSxbNDMsWzE1LCJuIl0sWzE3LFsxNSwiZCJdLCJBIl0sWyJjIixbMTUsIm0iXV1dLFsyLFsxNSwibSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaSJdLCJNIl0sWzE1LCJuIl1dXV0sWzUwLCJrIixbNDYsIm0iXSxbNTIsIm4iLFszMCxbMixbMTUsIm0iXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImkiXSwiTSJdXV0sWzhdXV0sWzIyLFsyOCxbMTYsWzE1LCJuIl0sWzE3LFsxNSwiZCJdLCJDIl1dXSxbNDYsWzUzLFszNl1dXV0sWzIyLFsiaCJdLFs0NixbNTMsWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImQiXSwiQ1UiXSwiMiJdXV1dXV0sWzUwLCJsIixbNDYsIm0iXSxbMjIsWyJnIl0sWzQ2LFs1MyxbMixbMTUsIm0iXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImkiXSwiQkUiXSx0cnVlXV0sWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImQiXSwiSlkiXSwid3d3Lmdvb2dsZS5jb20iXV1dXSxbNDYsWzUzLFsyLFsxNSwibSJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJkIl0sIkpZIl0sInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSJdXV1dXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmdldEFsbG93QWRQZXJzb25hbGl6YXRpb24iXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJpc0NvbnNlbnRHcmFudGVkIl1dLFs1MiwiZiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbNTIsImciLFsicmVxdWlyZSIsImludGVybmFsLmlzR2NwQnJvd3NlciJdXSxbNTIsImgiLFsicmVxdWlyZSIsImludGVybmFsLmlzU2FmYXJpUGNtRWxpZ2libGVCcm93c2VyIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbMzYsWzgsIkIiLFsxNSwiayJdLCJBIixbMTUsImoiXSwiQyIsWzE1LCJsIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9jb21tb25BZHNUYXNrcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiaiIsWzQ2LCJ0Il0sWzUyLCJ1IixbImQiXV0sWzIyLFsyMCxbMTUsInUiXSwiVVMtQ08iXSxbNDYsWzUzLFsyLFsxNSwidCJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkZVIl0sMV1dXV1dXSxbNTAsImsiLFs0NiwidCJdLFsyLFsxNSwidCJdLCJjb3B5VG9IaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIklVIl1dXSxbMixbMTUsInQiXSwiY29weVRvSGl0RGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJKViJdXV0sWzIsWzE1LCJ0Il0sImNvcHlUb0hpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiREYiXV1dLFsyMixbImYiLFsxNyxbMTUsImIiXSwiQU4iXV0sWzQ2LFs1MyxbMixbMTUsInQiXSwiY29weVRvSGl0RGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJFSyJdXV0sWzIsWzE1LCJ0Il0sImNvcHlUb0hpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiRVUiXV1dXV1dXSxbNTAsImwiLFs0NiwidCJdLFsyMixbMjEsWzIsWzE1LCJ0Il0sImdldEV2ZW50TmFtZSIsWzddXSxbMTcsWzE1LCJoIl0sIkFBIl1dLFs0NixbNTMsWzM2XV1dXSxbMixbMTUsInQiXSwiY29weVRvSGl0RGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJDQiJdXV0sWzIsWzE1LCJ0Il0sImNvcHlUb0hpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiQ0MiXV1dLFsyLFsxNSwidCJdLCJjb3B5VG9IaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkJaIl1dXSxbMixbMTUsInQiXSwiY29weVRvSGl0RGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJDQSJdXV0sWzIsWzE1LCJ0Il0sImNvcHlUb0hpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiQlkiXV1dLFsyLFsxNSwidCJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkNEIl0sWzE3LFsxNSwiaCJdLCJBQSJdXV0sWzIsWzE1LCJ0Il0sImNvcHlUb0hpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiR1YiXV1dLFsyLFsxNSwidCJdLCJjb3B5VG9IaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkdUIl1dXSxbMixbMTUsInQiXSwiY29weVRvSGl0RGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJHVSJdXV1dLFs1MCwibSIsWzQ2LCJ0Il0sWzIyLFsyLFsxNSwidCJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaSJdLCJOIl1dXSxbNDYsWzUzLFsyLFsxNSwidCJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkYiXSx0cnVlXV1dXV1dLFs1MCwibiIsWzQ2LCJ0Il0sWzIsWzE1LCJ0Il0sImNvcHlUb0hpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiR1oiXV1dLFsyLFsxNSwidCJdLCJjb3B5VG9IaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkRHIl1dXSxbMixbMTUsInQiXSwiY29weVRvSGl0RGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJFRyJdXV0sWzIsWzE1LCJ0Il0sImNvcHlUb0hpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiREUiXV1dLFsyLFsxNSwidCJdLCJjb3B5VG9IaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkVBIl1dXV0sWzUwLCJvIixbNDYsInQiXSxbNTIsInUiLFsyLFsxNSwidCJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaSJdLCJNIl1dXV0sWzIyLFsxNSwidSJdLFs0NixbNTMsWzUyLCJ2IixbMSxbMTYsWzE1LCJ1Il0sWzE3LFsxNSwiaCJdLCJDIl1dLFsxNixbMTUsInUiXSxbMTcsWzE1LCJoIl0sIkIiXV1dXSxbMixbMTUsInQiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImkiXSwiQ0MiXSxbMSxbMjgsWzI4LFsyLFsxNSwidCJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaSJdLCJDQiJdXV1dXSxbMjgsWzE1LCJ2Il1dXV1dXV1dXSxbNTAsInAiLFs0NiwidCJdLFs1MiwidSIsWzIsWzE1LCJ0Il0sImdldEZyb21FdmVudENvbnRleHQiLFs3LFsxNyxbMTUsImgiXSwiSFQiXV1dXSxbMjIsWzMwLFsyMCxbMTUsInUiXSx0cnVlXSxbMjAsWzE1LCJ1Il0sZmFsc2VdXSxbNDYsWzUzLFsyLFsxNSwidCJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkhUIl0sWzE1LCJ1Il1dXV1dXSxbMjIsWzIwLFsyLFsxNSwidCJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaSJdLCJGIl1dXSxmYWxzZV0sWzQ2LFs1MyxbMixbMTUsInQiXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJLRCJdLHRydWVdXV1dLFs0NixbNTMsWzUyLCJ2IixbMixbMTUsInQiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImkiXSwiTSJdXV1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFsyLFsxNSwidCJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIktEIl0sWzI4LFsxNixbMTUsInYiXSxbMTcsWzE1LCJoIl0sIkEiXV1dXV1dXV1dXV1dLFs1MCwicSIsWzQ2LCJ0Il0sWzIyLFsiYyIsWzIsWzE1LCJ0Il0sImdldERlc3RpbmF0aW9uSWQiLFs3XV0sImdvb2dsZV9uZyJdLFs0NixbNTMsWzIsWzE1LCJ0Il0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiRlUiXSx0cnVlXV1dXV0sWzIyLFsiYyIsWzIsWzE1LCJ0Il0sImdldERlc3RpbmF0aW9uSWQiLFs3XV0sImdvb2dsZV9vbm8iXSxbNDYsWzUzLFsyLFsxNSwidCJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkZWIl0sdHJ1ZV1dXV1dXSxbNTAsInIiLFs0NiwidCJdLFsyMixbMixbMTUsInQiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImkiXSwiQVkiXV1dLFs0NixbNTMsWzIsWzE1LCJ0Il0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiSloiXSx0cnVlXV1dXV1dLFs1MCwicyIsWzQ2LCJ0Il0sWzIyLFsiZSIsWzE1LCJ0Il1dLFs0NixbNTMsWzIsWzE1LCJ0Il0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiRE4iXSx0cnVlXV1dXV1dLFs1MiwiYiIsWzE1LCJfX21vZHVsZV9mZWF0dXJlcyJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmdldFJlZ2lvbkNvZGUiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pc0RlYnVnTW9kZSJdXSxbNTIsImYiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJnIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zY3J1YlVybFBhcmFtcyJdXSxbNTIsImgiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzM2LFs4LCJCIixbMTUsImsiXSwiQyIsWzE1LCJsIl0sIkkiLFsxNSwiciJdLCJBIixbMTUsImoiXSwiRSIsWzE1LCJuIl0sIkQiLFsxNSwibSJdLCJKIixbMTUsInMiXSwiSCIsWzE1LCJxIl0sIkciLFsxNSwicCJdLCJGIixbMTUsIm8iXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tBZGRDb29raWVEZXByZWNhdGlvbkxhYmVsIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJmIixbNDYsImciXSxbNDEsImgiXSxbMywiaCIsWzQ0XV0sWzUyLCJpIixbMixbMTUsImciXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiTSJdXV1dLFsyMixbMSxbMTUsImkiXSxbMTYsWzE1LCJpIl0sWzE3LFsxNSwiZCJdLCJCIl1dXSxbNDYsWzUzLFszLCJoIixbImIiLFsxNyxbMTUsImMiXSwiQiJdXV1dXSxbNDYsWzUzLFszLCJoIiwiZGVuaWVkIl1dXV0sWzIyLFsyOSxbMTUsImgiXSxbNDVdXSxbNDYsWzUzLFsyLFsxNSwiZyJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJkIl0sIkNXIl0sWzE1LCJoIl1dXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jb3B5RnJvbUNyb3NzQ29udGFpbmVyRGF0YSJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfY3Jvc3NDb250YWluZXJTY2hlbWEiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFszNixbOCwiQSIsWzE1LCJmIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrQWRkRGV2ZWxvcGVySWQiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImQiLFs0NiwiZSJdLFs1MiwiZiIsWyJiIixbMTUsImUiXV1dLFs2NSwiZyIsWzcsWzE3LFsxNSwiYyJdLCJLSiJdLFsxNyxbMTUsImMiXSwiRUoiXV0sWzQ2LFs1MyxbMixbMTUsImUiXSwic2V0SGl0RGF0YSIsWzcsWzE1LCJnIl0sWzE2LFsxNSwiZiJdLFsxNSwiZyJdXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldERldmVsb3BlcklkcyJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbMzYsWzgsIkEiLFsxNSwiZCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza0FkZEV2ZW50UHJvdmVuYW5jZSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZiIsWzQ2LCJnIl0sWzIyLFsyOCxbMixbMTUsImciXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiWiJdXV1dLFs0NixbNTMsWzM2XV1dXSxbMixbMTUsImciXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiYiJdLCJFTyJdLFsyLFsxNSwiZyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZSJdLCJaIl1dXV1dXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbMzYsWzgsIkEiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza0FkZFVhY2hQYXJhbXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImUiLFs0NiwiZiJdLFsyMixbMjgsWyJkIiwiZ2V0X3VzZXJfYWdlbnQiXV0sWzQ2LFszNl1dXSxbNTIsImciLFsiYiJdXSxbMjIsWzI4LFsxNSwiZyJdXSxbNDYsWzM2XV1dLFs1MiwiaCIsWzcsWzE3LFsxNSwiYyJdLCJKQiJdLFsxNyxbMTUsImMiXSwiSkMiXSxbMTcsWzE1LCJjIl0sIkpEIl0sWzE3LFsxNSwiYyJdLCJKRSJdLFsxNyxbMTUsImMiXSwiSkYiXSxbMTcsWzE1LCJjIl0sIkpHIl0sWzE3LFsxNSwiYyJdLCJKSCJdLFsxNyxbMTUsImMiXSwiSkkiXV1dLFs2NSwiaSIsWzE1LCJoIl0sWzQ2LFs1MyxbMixbMTUsImYiXSwic2V0SGl0RGF0YSIsWzcsWzE1LCJpIl0sWzE2LFsxNSwiZyJdLFsxNSwiaSJdXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFVzZXJBZ2VudENsaWVudEhpbnRzIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwicXVlcnlQZXJtaXNzaW9uIl1dLFszNixbOCwiQSIsWzE1LCJlIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrU2VuZEFkc0hpdHMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImUiLFs0NiwiZiJdLFsiYiIsWzE1LCJmIl1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLnRhc2tTZW5kQWRzSGl0cyJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyJdXSxbMzYsWzgsIkEiLFsxNSwiZSJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1NldEFkc1BhZ2VQYXJhbXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm8iLFs0NiwicSJdLFsyMixbMixbMTUsInEiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImoiXSwiTiJdXV0sWzQ2LFs1MyxbMzZdXV1dLFs1MiwiciIsWyJsIiwiZ2V0X3VybCJdXSxbNTIsInMiLFsyLFsxNSwicSJdLCJnZXRIaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkdFIl1dXV0sWzIsWzE1LCJxIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiR0UiXSxbMTUsInMiXV1dLFs1MiwidCIsWzIsWzE1LCJxIl0sImdldEZyb21FdmVudENvbnRleHQiLFs3LFsxNyxbMTUsImgiXSwiS0giXV1dXSxbNDEsInUiXSxbMywidSIsWzE1LCJ0Il1dLFsyMixbMSxbMjgsWzE1LCJ1Il1dLFsxNSwiciJdXSxbNDYsWzUzLFsyMixbMjAsWzE1LCJzIl0sWzE3LFsxNSwiYiJdLCJTQU1FX0RPTUFJTl9JRlJBTUlORyJdXSxbNDYsWzUzLFszLCJ1IixbImYiXV1dXSxbNDYsWzUzLFszLCJ1IixbImciXV1dXV1dXV0sWzIsWzE1LCJxIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiS0giXSxbInAiLFsxNSwidSJdXV1dLFsyMixbImwiLCJnZXRfcmVmZXJyZXIiXSxbNDYsWzUzLFsyLFsxNSwicSJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkhFIl0sWyJjIl1dXV1dXSxbMjIsWyJsIiwicmVhZF90aXRsZSJdLFs0NixbNTMsWzIsWzE1LCJxIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImgiXSwiSEYiXSxbImsiXV1dXV1dLFsyLFsxNSwicSJdLCJjb3B5VG9IaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIkdNIl1dXSxbNTIsInYiLFsiZCJdXSxbMixbMTUsInEiXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJIWCJdLFswLFswLFsiaSIsWzE3LFsxNSwidiJdLCJ3aWR0aCJdXSwieCJdLFsiaSIsWzE3LFsxNSwidiJdLCJoZWlnaHQiXV1dXV0sWzUyLCJ3IixbMSxbIm0iLFsxNyxbMTUsIm4iXSwiQ0IiXV0sWzI4LFsyOCxbMTUsInQiXV1dXV0sWzIyLFsxNSwiciJdLFs0NixbNTMsWzUyLCJ4IixbImUiXV0sWzIyLFsxLFsxNSwieCJdLFsyMSxbMTUsIngiXSxbMTUsInUiXV1dLFs0NixbNTMsWzQxLCJ5Il0sWzMsInkiLFsicCIsWzE1LCJ4Il1dXSxbMjIsWzE1LCJ3Il0sWzQ2LFs1MyxbMywieSIsWzE2LFsyLFsxNSwieSJdLCJzcGxpdCIsWzcsIj8iXV0sMF1dXV1dLFsyLFsxNSwicSJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJoIl0sIklSIl0sWzE1LCJ5Il1dXV1dXV1dXV0sWzUwLCJwIixbNDYsInEiXSxbMjIsWzI4LFsxNSwicSJdXSxbNDYsWzM2LCIiXV1dLFs1MiwiciIsWyJpIixbMTUsInEiXV1dLFs1MiwicyIsWzIsWzE1LCJyIl0sInN1YnN0cmluZyIsWzcsMCw1MTJdXV0sWzUyLCJ0IixbMixbMTUsInMiXSwiaW5kZXhPZiIsWzcsIiMiXV1dLFsyMixbMjAsWzE1LCJ0Il0sWzI3LDFdXSxbNDYsWzUzLFszNixbMTUsInMiXV1dXSxbNDYsWzUzLFszNixbMixbMTUsInMiXSwic3Vic3RyaW5nIixbNywwLFsxNSwidCJdXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLklmcmFtaW5nU3RhdGVTY2hlbWEiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJnZXRSZWZlcnJlclVybCJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmdldFNjcmVlbkRpbWVuc2lvbnMiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRUb3BTYW1lRG9tYWluVXJsIl1dLFs1MiwiZiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0VG9wV2luZG93VXJsIl1dLFs1MiwiZyIsWyJyZXF1aXJlIiwiZ2V0VXJsIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiaSIsWyJyZXF1aXJlIiwibWFrZVN0cmluZyJdXSxbNTIsImoiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJyZWFkVGl0bGUiXV0sWzUyLCJsIixbInJlcXVpcmUiLCJxdWVyeVBlcm1pc3Npb24iXV0sWzUyLCJtIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIl1dLFs1MiwibiIsWzE1LCJfX21vZHVsZV9mZWF0dXJlcyJdXSxbMzYsWzgsIkEiLFsxNSwibyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1NldEF1aWRQYXJhbSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZSIsWzQ2LCJmIl0sWzUyLCJnIixbMzAsWzIsWzE1LCJmIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIk0iXV1dLFs4XV1dLFsyMixbMzAsWzMwLFsyOCxbMixbMTUsImYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiTyJdXV1dLFsyOCxbMTYsWzE1LCJnIl0sWzE3LFsxNSwiYyJdLCJCIl1dXV0sWzI4LFsxNixbMTUsImciXSxbMTcsWzE1LCJjIl0sIkMiXV1dXSxbNDYsWzUzLFszNl1dXV0sWzUyLCJoIixbImIiLFsxNSwiZiJdXV0sWzIyLFsxNSwiaCJdLFs0NixbNTMsWzIsWzE1LCJmIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImMiXSwiQlQiXSxbMTUsImgiXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldEF1aWQiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFszNixbOCwiQSIsWzE1LCJlIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrU2V0Q29uZmlnUGFyYW1zIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJlIixbNDYsImYiXSxbMixbMTUsImYiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImIiXSwiTyJdLFsyMSxbMixbMTUsImYiXSwiZ2V0RnJvbUV2ZW50Q29udGV4dCIsWzcsWzE3LFsxNSwiZCJdLCJDUyJdXV0sZmFsc2VdXV0sWzIsWzE1LCJmIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJiIl0sIlEiXSxbImMiLFsxNSwiZiJdXV1dLFs1MiwiZyIsWzIsWzE1LCJmIl0sImdldEZyb21FdmVudENvbnRleHQiLFs3LFsxNyxbMTUsImQiXSwiQkMiXV1dXSxbMixbMTUsImYiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImIiXSwiQ0IiXSxbMSxbMjksWzE1LCJnIl0sWzQ1XV0sWzIxLFsxNSwiZyJdLGZhbHNlXV1dXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0QWRzQ29va2llV3JpdGluZ09wdGlvbnMiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzM2LFs4LCJBIixbMTUsImUiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tTZXRGZWF0dXJlVXNhZ2VQYXJhbXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImQiLFs0NiwiZSJdLFs1MiwiZiIsWyJiIl1dLFsyMixbMTUsImYiXSxbNDYsWzUzLFsyLFsxNSwiZSJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJjIl0sIkdDIl0sWzE1LCJmIl1dXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRBbmRSZXNldEV2ZW50VXNhZ2UiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzM2LFs4LCJBIixbMTUsImQiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tTZXRHb29nbGVBbmFseXNpc1BhcmFtcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiYyIsWzQ2LCJkIl0sWzIsWzE1LCJkIl0sIm1lcmdlSGl0RGF0YUZvcktleSIsWzcsWzE3LFsxNSwiYiJdLCJGVCJdLFsyLFsxNSwiZCJdLCJnZXRNZXJnZWRWYWx1ZXMiLFs3LFsxNyxbMTUsImIiXSwiRlQiXV1dXV1dLFs1MiwiYiIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFszNixbOCwiQSIsWzE1LCJjIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrU2V0SWZyYW1lU3RhdGVQYXJhbSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZCIsWzQ2LCJlIl0sWzIsWzE1LCJlIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImMiXSwiR0UiXSxbImIiXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldElmcmFtaW5nU3RhdGUiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzM2LFs4LCJBIixbMTUsImQiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tTZXRQcml2YWN5UGFyYW1zIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJkIixbNDYsImUiXSxbNTIsImYiLFsiYiJdXSxbNjUsImciLFs3LFsxNyxbMTUsImMiXSwiSlUiXSxbMTcsWzE1LCJjIl0sIkZPIl0sWzE3LFsxNSwiYyJdLCJLSyJdXSxbNDYsWzUzLFsyLFsxNSwiZSJdLCJzZXRIaXREYXRhIixbNyxbMTUsImciXSxbMTYsWzE1LCJmIl0sWzE1LCJnIl1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJpdmFjeVN0cmluZ3MiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzM2LFs4LCJBIixbMTUsImQiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tTZXRVcmxQYXNzdGhyb3VnaFBhcmFtcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZCIsWzQ2LCJlIl0sWzUyLCJmIixbMTYsWyJjIixmYWxzZV0sIl91cCJdXSxbMjIsWzIwLFsxNSwiZiJdLCIxIl0sWzQ2LFs1MyxbMixbMTUsImUiXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiYiJdLCJHSyJdLHRydWVdXV1dXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRMaW5rZXJWYWx1ZUZyb21Mb2NhdGlvbiJdXSxbMzYsWzgsIkEiLFsxNSwiZCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1NldENvb2tpZUV4cGlyYXRpb25QYXJhbSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZCIsWzQ2LCJmIl0sWyJlIixbMTUsImYiXSxbMTcsWzE1LCJiIl0sIkIiXSxbMixbMTUsImYiXSwiZ2V0RnJvbUV2ZW50Q29udGV4dCIsWzcsWzE3LFsxNSwiYyJdLCJDWSJdXV1dXSxbNTAsImUiLFs0NiwiZiIsImciLCJoIl0sWzUyLCJpIixbMzAsWzIsWzE1LCJmIl0sImdldEhpdERhdGEiLFs3LFsxNyxbMTUsImMiXSwiSlgiXV1dLFs4XV1dLFs0MyxbMTUsImkiXSxbMTUsImciXSxbMTUsImgiXV0sWzIsWzE1LCJmIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImMiXSwiSlgiXSxbMTUsImkiXV1dXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfZnBtUGFyYW1ldGVyIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFszNixbOCwiQSIsWzE1LCJkIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrU2V0VXNlcklkUGFyYW1zIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJnIixbNDYsImgiXSxbNTIsImkiLFszMCxbMixbMTUsImgiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiTSJdXV0sWzhdXV0sWzIyLFsyOCxbMTYsWzE1LCJpIl0sWzE3LFsxNSwiZCJdLCJDIl1dXSxbNDYsWzUzLFszNl1dXV0sWzIsWzE1LCJoIl0sImNvcHlUb0hpdERhdGEiLFs3LFsxNyxbMTUsImQiXSwiSlIiXV1dLFs1MiwiaiIsWyJiIixbMTcsWzE1LCJjIl0sIlMiXV1dLFsyMixbMjAsWzE1LCJqIl0sWzQ0XV0sWzQ2LFs1MyxbImYiLFsxNyxbMTUsImMiXSwiVCJdLHRydWVdLFszNl1dXV0sWzUyLCJrIixbImIiLFsxNyxbMTUsImMiXSwiVSJdXV0sWzIsWzE1LCJoIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImQiXSwiSUsiXSxbMCxbMCxbMTUsImsiXSwiLiJdLFsxNSwiaiJdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9jcm9zc0NvbnRhaW5lclNjaGVtYSJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRJbkNyb3NzQ29udGFpbmVyRGF0YSJdXSxbMzYsWzgsIkEiLFsxNSwiZyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1NldEN1c3RvbWVyTGlmZWN5Y2xlUGFyYW1zIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJlIixbNDYsImYiXSxbMjIsWzI4LFsiZCIsWzE3LFsxNSwiYyJdLCJIIl1dXSxbNDYsWzUzLFszNl1dXV0sWzIsWzE1LCJmIl0sImNvcHlUb0hpdERhdGEiLFs3LFsxNyxbMTUsImIiXSwiREgiXV1dXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfZmVhdHVyZUZsYWdzIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbMzYsWzgsIkEiLFsxNSwiZSJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1NldEdzYUV4cGVyaW1lbnRJZCIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZCIsWzQ2LCJlIl0sWzUyLCJmIixbImIiXV0sWzIyLFsyMSxbMTUsImYiXSxbNDRdXSxbNDYsWzUzLFsyLFsxNSwiZSJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJjIl0sIkdCIl0sWzE1LCJmIl1dXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRHc2FFeHBlcmltZW50SWQiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzM2LFs4LCJBIixbMTUsImQiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tTdG9yZUJyYWlkTGFiZWxzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJlIixbNDYsImYiXSxbNTIsImciLFszMCxbMixbMTUsImYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImMiXSwiTSJdXV0sWzhdXV0sWzIyLFsyOCxbMTYsWzE1LCJnIl0sWzE3LFsxNSwiYiJdLCJCIl1dXSxbNDYsWzUzLFszNl1dXV0sWyJkIixbMTUsImYiXV1dLFs1MiwiYiIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLnN0b3JlQWRzQnJhaWRMYWJlbHMiXV0sWzM2LFs4LCJBIixbMTUsImUiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2V2ZW50RWRpdGluZ0FuZFN5bnRoZXNpcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiYUEiLFs0NiwiYU4iLCJhTyJdLFs1MiwiYVAiLFszMCxbMTYsWzE1LCJhTyJdLFsxNSwibSJdXSxbN11dXSxbNjYsImFRIixbMTUsImFQIl0sWzQ2LFs1MyxbMjIsWzE2LFsxNSwiYVEiXSxbMTUsIm4iXV0sWzQ2LFs1MyxbNTIsImFSIixbMTYsWzE2LFsxNSwiYVEiXSxbMTUsIm4iXV0sWzE1LCJwIl1dXSxbNTIsImFTIixbImFGIixbMTUsImFOIl0sWzE2LFsxNixbMTUsImFRIl0sWzE1LCJuIl1dLFsxNSwicSJdXV1dLFsyLFsxNSwiYU4iXSwic2V0SGl0RGF0YSIsWzcsWzE1LCJhUiJdLFsiYUIiLFsxNSwiYVMiXV1dXV1dLFs0NixbMjIsWzE2LFsxNSwiYVEiXSxbMTUsIm8iXV0sWzQ2LFs1MyxbNTIsImFSIixbMTYsWzE2LFsxNSwiYVEiXSxbMTUsIm8iXV0sWzE1LCJwIl1dXSxbMixbMTUsImFOIl0sInNldEhpdERhdGEiLFs3LFsxNSwiYVIiXSxbNDRdXV1dXV1dXV1dXV0sWzUwLCJhQiIsWzQ2LCJhTiJdLFsyMixbMjgsWzE1LCJhTiJdXSxbNDYsWzM2LFsxNSwiYU4iXV1dXSxbNTIsImFPIixbImIiLFsxNSwiYU4iXV1dLFs1MiwiYVAiLFsyMSxbMTUsImFPIl0sWzE1LCJhTyJdXV0sWzIyLFsxNSwiYVAiXSxbNDYsWzM2LFsxNSwiYU4iXV1dXSxbMzYsWzE1LCJhTyJdXV0sWzUwLCJhQyIsWzQ2LCJhTiIsImFPIiwiYVAiXSxbNDEsImFRIl0sWzMsImFRIixbMzAsWzE1LCJhTyJdLFs3XV1dLFszLCJhUSIsWzM5LFsibCIsWzE1LCJhUSJdXSxbMTUsImFRIl0sWzcsWzE1LCJhUSJdXV1dLFsyMixbMjgsWyJhRCIsWzE1LCJhTiJdLFsxNSwiYVEiXV1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbMjIsWzMwLFsyOCxbMTUsImFQIl1dLFsyMCxbMTcsWzE1LCJhUCJdLCJsZW5ndGgiXSwwXV0sWzQ2LFszNix0cnVlXV1dLFs1MyxbNDEsImFSIl0sWzMsImFSIiwwXSxbNjMsWzcsImFSIl0sWzIzLFsxNSwiYVIiXSxbMTcsWzE1LCJhUCJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiYVIiXSxbMywiYVIiLFswLFsxNSwiYVIiXSwxXV1dLFs0NixbNTMsWzUyLCJhUyIsWzMwLFsxNixbMTYsWzE1LCJhUCJdLFsxNSwiYVIiXV0sWzE1LCJ1Il1dLFs3XV1dLFsyMixbImFEIixbMTUsImFOIl0sWzE1LCJhUyJdLHRydWVdLFs0NixbNTMsWzM2LHRydWVdXV1dXV1dXSxbMzYsZmFsc2VdXSxbNTAsImFEIixbNDYsImFOIiwiYU8iLCJhUCJdLFs1MyxbNDEsImFRIl0sWzMsImFRIiwwXSxbNjMsWzcsImFRIl0sWzIzLFsxNSwiYVEiXSxbMTcsWzE1LCJhTyJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiYVEiXSxbMywiYVEiLFswLFsxNSwiYVEiXSwxXV1dLFs0NixbNTMsWzUyLCJhUiIsWzE2LFsxNSwiYU8iXSxbMTUsImFRIl1dXSxbNTIsImFTIixbImFFIixbMTUsImFOIl0sWzE1LCJhUiJdLGZhbHNlXV0sWzIyLFsxNSwiYVAiXSxbNDYsWzUzLFs1MiwiYVQiLFsxNixbMzAsWzE2LFsxNSwiYVIiXSxbMTUsIngiXV0sWzddXSwwXV0sWzIyLFsxLFsxLFsxNSwiYVQiXSxbMjAsWzE2LFsxNSwiYVQiXSxbMTUsInkiXV0sWzE1LCJ0Il1dXSxbMjEsWzIsWzE1LCJ6Il0sImluZGV4T2YiLFs3LFsxNixbMTYsWzE1LCJhVCJdLFsxNSwidCJdXSxbMTUsInMiXV1dXSxbMjcsMV1dXSxbNDYsWzUzLFs1MiwiYVUiLFsiYUUiLFsxNSwiYU4iXSxbMTUsImFSIl0sdHJ1ZV1dLFsyMixbMjEsWzE1LCJhUyJdLFsxNSwiYVUiXV0sWzQ2LFs1MyxbNTIsImFWIixbMzAsWzIsWzE1LCJhTiJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaSJdLCJBQyJdXV0sWzddXV0sWzIsWzE1LCJhViJdLCJwdXNoIixbNyxbMzksWzE1LCJhUyJdLFsxNyxbMTUsImsiXSwiVSJdLFsxNyxbMTUsImsiXSwiVCJdXV1dLFsyLFsxNSwiYU4iXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImkiXSwiQUMiXSxbMTUsImFWIl1dXV1dXV1dXV1dXSxbMjIsWzI4LFsxNSwiYVMiXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dXV1dXSxbMzYsdHJ1ZV1dLFs1MCwiYUUiLFs0NiwiYU4iLCJhTyIsImFQIl0sWzUyLCJhUSIsWzMwLFsxNixbMTUsImFPIl0sWzE1LCJ4Il1dLFs3XV1dLFs0MSwiYVIiXSxbMywiYVIiLFsiYUYiLFsxNSwiYU4iXSxbMTYsWzE1LCJhUSJdLDBdXV0sWzQxLCJhUyJdLFszLCJhUyIsWyJhRiIsWzE1LCJhTiJdLFsxNixbMTUsImFRIl0sMV1dXSxbMjIsWzEsWzE1LCJhUCJdLFsxNSwiYVIiXV0sWzQ2LFs1MyxbMywiYVIiLFszMCxbImciLFsxNSwiYVIiXV0sWzE1LCJhUiJdXV1dXV0sWzIyLFsxNSwiYVMiXSxbNDYsWzUzLFs1MiwiYVkiLFsxNixbMzAsWzE2LFsxNSwiYU8iXSxbMTUsIngiXV0sWzddXSwwXV0sWzIyLFsxLFsxLFsxNSwiYVkiXSxbMjAsWzE2LFsxNSwiYVkiXSxbMTUsInkiXV0sWzE1LCJ0Il1dXSxbMjEsWzIsWzE1LCJ6Il0sImluZGV4T2YiLFs3LFsxNixbMTYsWzE1LCJhWSJdLFsxNSwidCJdXSxbMTUsInMiXV1dXSxbMjcsMV1dXSxbNDYsWzUzLFs1MiwiYVoiLFsyLFsxNSwiYVMiXSwiaW5kZXhPZiIsWzcsIj8iXV1dLFsyMixbMjAsWzE1LCJhWiJdLFsyNywxXV0sWzQ2LFs1MyxbMywiYVMiLFszMCxbImciLFsxNSwiYVMiXV0sWzE1LCJhUyJdXV1dXSxbNDYsWzUzLFs1MiwiYkEiLFsyLFsxNSwiYVMiXSwic3Vic3RyaW5nIixbNywwLFsxNSwiYVoiXV1dXSxbMywiYVMiLFswLFszMCxbImciLFsxNSwiYkEiXV0sWzE1LCJiQSJdXSxbMixbMTUsImFTIl0sInN1YnN0cmluZyIsWzcsWzE1LCJhWiJdXV1dXV1dXV1dXV1dXSxbNTIsImFUIixbMTYsWzE1LCJhTyJdLFsxNSwidyJdXV0sWzIyLFszMCxbMzAsWzMwLFsyMCxbMTUsImFUIl0sImVxaSJdLFsyMCxbMTUsImFUIl0sInN3aSJdXSxbMjAsWzE1LCJhVCJdLCJld2kiXV0sWzIwLFsxNSwiYVQiXSwiY25pIl1dLFs0NixbNTMsWzIyLFsxNSwiYVIiXSxbNDYsWzMsImFSIixbMixbImQiLFsxNSwiYVIiXV0sInRvTG93ZXJDYXNlIixbN11dXV1dLFsyMixbMTUsImFTIl0sWzQ2LFszLCJhUyIsWzIsWyJkIixbMTUsImFTIl1dLCJ0b0xvd2VyQ2FzZSIsWzddXV1dXV1dXSxbNDEsImFVIl0sWzMsImFVIixmYWxzZV0sWzM4LFsxNSwiYVQiXSxbNDYsImVxIiwiZXFpIiwic3ciLCJzd2kiLCJldyIsImV3aSIsImNuIiwiY25pIiwibHQiLCJsZSIsImd0IiwiZ2UiLCJyZSIsInJlaSJdLFs0NixbNSxbNDZdXSxbNSxbNDYsWzMsImFVIixbMjAsWyJkIixbMTUsImFSIl1dLFsiZCIsWzE1LCJhUyJdXV1dLFs0XV1dLFs1LFs0Nl1dLFs1LFs0NixbMywiYVUiLFsyMCxbMixbImQiLFsxNSwiYVIiXV0sImluZGV4T2YiLFs3LFsiZCIsWzE1LCJhUyJdXV1dLDBdXSxbNF1dXSxbNSxbNDZdXSxbNSxbNDYsWzQxLCJhViJdLFszLCJhViIsWyJkIixbMTUsImFSIl1dXSxbNDEsImFXIl0sWzMsImFXIixbImQiLFsxNSwiYVMiXV1dLFs1MiwiYVgiLFszNyxbMTcsWzE1LCJhViJdLCJsZW5ndGgiXSxbMTcsWzE1LCJhVyJdLCJsZW5ndGgiXV1dLFszLCJhVSIsWzEsWzE5LFsxNSwiYVgiXSwwXSxbMjAsWzIsWzE1LCJhViJdLCJpbmRleE9mIixbNyxbMTUsImFXIl0sWzE1LCJhWCJdXV0sWzE1LCJhWCJdXV1dLFs0XV1dLFs1LFs0Nl1dLFs1LFs0NixbMywiYVUiLFsxOSxbMixbImQiLFsxNSwiYVIiXV0sImluZGV4T2YiLFs3LFsiZCIsWzE1LCJhUyJdXV1dLDBdXSxbNF1dXSxbNSxbNDYsWzMsImFVIixbMjMsWyJiIixbMTUsImFSIl1dLFsiYiIsWzE1LCJhUyJdXV1dLFs0XV1dLFs1LFs0NixbMywiYVUiLFsyNCxbImIiLFsxNSwiYVIiXV0sWyJiIixbMTUsImFTIl1dXV0sWzRdXV0sWzUsWzQ2LFszLCJhVSIsWzE4LFsiYiIsWzE1LCJhUiJdXSxbImIiLFsxNSwiYVMiXV1dXSxbNF1dXSxbNSxbNDYsWzMsImFVIixbMTksWyJiIixbMTUsImFSIl1dLFsiYiIsWzE1LCJhUyJdXV1dLFs0XV1dLFs1LFs0NixbMjIsWzIxLFsxNSwiYVIiXSxbNDRdXSxbNDYsWzUzLFs1MiwiYVkiLFsiZSIsWzE1LCJhUyJdXV0sWzIyLFsxNSwiYVkiXSxbNDYsWzMsImFVIixbImYiLFsxNSwiYVkiXSxbMTUsImFSIl1dXV1dXV1dLFs0XV1dLFs1LFs0NixbMjIsWzIxLFsxNSwiYVIiXSxbNDRdXSxbNDYsWzUzLFs1MiwiYVkiLFsiZSIsWzE1LCJhUyJdLCJpIl1dLFsyMixbMTUsImFZIl0sWzQ2LFszLCJhVSIsWyJmIixbMTUsImFZIl0sWzE1LCJhUiJdXV1dXV1dXSxbNF1dXSxbOSxbNDZdXV1dLFsyMixbMjgsWzI4LFsxNixbMTUsImFPIl0sWzE1LCJ2Il1dXV0sWzQ2LFszNixbMjgsWzE1LCJhVSJdXV1dXSxbMzYsWzE1LCJhVSJdXV0sWzUwLCJhRiIsWzQ2LCJhTiIsImFPIl0sWzIyLFsyOCxbMTUsImFPIl1dLFs0NixbMzYsWzQ0XV1dXSxbMzgsWzE2LFsxNSwiYU8iXSxbMTUsInkiXV0sWzQ2LCJldmVudF9uYW1lIiwiY29uc3QiLCJldmVudF9wYXJhbSJdLFs0NixbNSxbNDYsWzM2LFsyLFsxNSwiYU4iXSwiZ2V0RXZlbnROYW1lIixbN11dXV1dLFs1LFs0NixbMzYsWzE2LFsxNSwiYU8iXSxbMTUsInIiXV1dXV0sWzUsWzQ2LFs1MiwiYVAiLFsxNixbMTYsWzE1LCJhTyJdLFsxNSwidCJdXSxbMTUsInMiXV1dLFsyMixbMjAsWzE1LCJhUCJdLFsxNyxbMTUsImoiXSwiSEQiXV0sWzQ2LFs1MyxbMzYsWyJhSSIsWzE1LCJhTiJdXV1dXV0sWzIyLFsyMCxbMTUsImFQIl0sWzE3LFsxNSwiaiJdLCJIQyJdXSxbNDYsWzUzLFszNixbImFKIixbMTUsImFOIl1dXV1dXSxbMzYsWzIsWzE1LCJhTiJdLCJnZXRIaXREYXRhIixbNyxbMTUsImFQIl1dXV1dXSxbOSxbNDYsWzM2LFs0NF1dXV1dXV0sWzUwLCJhSCIsWzQ2LCJhTiJdLFsyMixbMjgsWzE1LCJhTiJdXSxbNDYsWzUzLFszNixbMTUsImFOIl1dXV1dLFs1MiwiYU8iLFsyLFsxNSwiYU4iXSwic3BsaXQiLFs3LCImIl1dXSxbNTIsImFQIixbN11dLFs0MyxbMTUsImFPIl0sMCxbMixbMTYsWzE1LCJhTyJdLDBdLCJzdWJzdHJpbmciLFs3LDFdXV0sWzUzLFs0MSwiYVEiXSxbMywiYVEiLDBdLFs2MyxbNywiYVEiXSxbMjMsWzE1LCJhUSJdLFsxNyxbMTUsImFPIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJhUSJdLFszLCJhUSIsWzAsWzE1LCJhUSJdLDFdXV0sWzQ2LFs1MyxbNTIsImFSIixbMTYsWzE1LCJhTyJdLFsxNSwiYVEiXV1dLFs1MiwiYVMiLFsyLFsxNSwiYVIiXSwiaW5kZXhPZiIsWzcsIj0iXV1dLFs1MiwiYVQiLFszOSxbMTksWzE1LCJhUyJdLDBdLFsyLFsxNSwiYVIiXSwic3Vic3RyaW5nIixbNywwLFsxNSwiYVMiXV1dLFsxNSwiYVIiXV1dLFsyMixbMjgsWzE2LFsxNSwiYUciXSxbMTUsImFUIl1dXSxbNDYsWzUzLFsyLFsxNSwiYVAiXSwicHVzaCIsWzcsWzE2LFsxNSwiYU8iXSxbMTUsImFRIl1dXV1dXV1dXV1dLFsyMixbMTcsWzE1LCJhUCJdLCJsZW5ndGgiXSxbNDYsWzUzLFszNixbMCwiPyIsWzIsWzE1LCJhUCJdLCJqb2luIixbNywiJiJdXV1dXV1dLFszNiwiIl1dLFs1MCwiYUkiLFs0NiwiYU4iXSxbNTIsImFPIixbMixbMTUsImFOIl0sImdldEhpdERhdGEiLFs3LFsxNyxbMTUsImoiXSwiSEQiXV1dXSxbMjIsWzE1LCJhTyJdLFs0NixbMzYsWzE1LCJhTyJdXV1dLFs1MiwiYVAiLFsyLFsxNSwiYU4iXSwiZ2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiaiJdLCJLSCJdXV1dLFsyMixbMjEsWzQwLFsxNSwiYVAiXV0sInN0cmluZyJdLFs0NixbMzYsWzQ0XV1dXSxbNTIsImFRIixbImMiLFsxNSwiYVAiXV1dLFsyMixbMjgsWzE1LCJhUSJdXSxbNDYsWzM2LFs0NF1dXV0sWzQxLCJhUiJdLFszLCJhUiIsWzE3LFsxNSwiYVEiXSwicGF0aG5hbWUiXV0sWzMsImFSIixbMzAsWyJnIixbMTUsImFSIl1dLFsxNSwiYVIiXV1dLFszNixbMCxbMTUsImFSIl0sWyJhSCIsWzE3LFsxNSwiYVEiXSwic2VhcmNoIl1dXV1dLFs1MCwiYUoiLFs0NiwiYU4iXSxbNTIsImFPIixbMixbMTUsImFOIl0sImdldEhpdERhdGEiLFs3LFsxNyxbMTUsImoiXSwiSEMiXV1dXSxbMjIsWzE1LCJhTyJdLFs0NixbMzYsWzE1LCJhTyJdXV1dLFs1MiwiYVAiLFsyLFsxNSwiYU4iXSwiZ2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiaiJdLCJLSCJdXV1dLFsyMixbMjEsWzQwLFsxNSwiYVAiXV0sInN0cmluZyJdLFs0NixbMzYsWzQ0XV1dXSxbNTIsImFRIixbImMiLFsxNSwiYVAiXV1dLFsyMixbMjgsWzE1LCJhUSJdXSxbNDYsWzM2LFs0NF1dXV0sWzM2LFsxNyxbMTUsImFRIl0sImhvc3RuYW1lIl1dXSxbNTAsImFNIixbNDYsImFOIl0sWzIyLFsyOCxbMTUsImFOIl1dLFs0NixbMzYsdHJ1ZV1dXSxbMywiYU4iLFsiZCIsWzE1LCJhTiJdXV0sWzY2LCJhTyIsWzE1LCJhTCJdLFs0NixbNTMsWzIyLFsyMCxbMixbMTUsImFOIl0sImluZGV4T2YiLFs3LFsxNSwiYU8iXV1dLDBdLFs0NixbMzYsdHJ1ZV1dXV1dXSxbMjIsWzE4LFsyLFsxNSwiYUsiXSwiaW5kZXhPZiIsWzcsWzE1LCJhTiJdXV0sWzI3LDFdXSxbNDYsWzM2LHRydWVdXV0sWzM2LGZhbHNlXV0sWzUyLCJiIixbInJlcXVpcmUiLCJtYWtlTnVtYmVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwicGFyc2VVcmwiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJtYWtlU3RyaW5nIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY3JlYXRlUmVnZXgiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC50ZXN0UmVnZXgiXV0sWzUyLCJnIixbInJlcXVpcmUiLCJkZWNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJoIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImoiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImsiLFsxNSwiX19tb2R1bGVfZ29sZEV2ZW50VXNhZ2VJZCJdXSxbNTIsImwiLFs1MSwiIixbNywiYU4iXSxbMzYsWzIwLFsiaCIsWzE1LCJhTiJdXSwiYXJyYXkiXV1dXSxbNTIsIm0iLCJldmVudF9wYXJhbV9vcHMiXSxbNTIsIm4iLCJlZGl0X3BhcmFtIl0sWzUyLCJvIiwiZGVsZXRlX3BhcmFtIl0sWzUyLCJwIiwicGFyYW1fbmFtZSJdLFs1MiwicSIsInBhcmFtX3ZhbHVlIl0sWzUyLCJyIiwiY29uc3RfdmFsdWUiXSxbNTIsInMiLCJwYXJhbV9uYW1lIl0sWzUyLCJ0IiwiZXZlbnRfcGFyYW0iXSxbNTIsInUiLCJwcmVkaWNhdGVzIl0sWzUyLCJ2IiwibmVnYXRlIl0sWzUyLCJ3IiwidHlwZSJdLFs1MiwieCIsInZhbHVlcyJdLFs1MiwieSIsInR5cGUiXSxbNTIsInoiLFs3LFsxNyxbMTUsImoiXSwiSEQiXSxbMTcsWzE1LCJqIl0sIktIIl0sWzE3LFsxNSwiaiJdLCJIRSJdXV0sWzUyLCJhRyIsWzgsIl9fZ2EiLDEsIl9fdXRtYSIsMSwiX191dG1iIiwxLCJfX3V0bWMiLDEsIl9fdXRtayIsMSwiX191dG12IiwxLCJfX3V0bXgiLDEsIl9fdXRteiIsMSwiX2dhYyIsMSwiX2dsIiwxLCJkY2xpZCIsMSwiZ2FkX2NhbXBhaWduaWQiLDEsImdhZF9zb3VyY2UiLDEsImdicmFpZCIsMSwiZ2NsaWQiLDEsImdjbHNyYyIsMSwidXRtX2NhbXBhaWduIiwxLCJ1dG1fY29udGVudCIsMSwidXRtX2V4cGlkIiwxLCJ1dG1faWQiLDEsInV0bV9tZWRpdW0iLDEsInV0bV9ub292ZXJyaWRlIiwxLCJ1dG1fcmVmZXJyZXIiLDEsInV0bV9zb3VyY2UiLDEsInV0bV90ZXJtIiwxLCJ3YnJhaWQiLDFdXSxbNTIsImFLIixbNyxbMTcsWzE1LCJqIl0sIkkiXSxbMTcsWzE1LCJqIl0sIkoiXSxbMTcsWzE1LCJqIl0sIksiXSxbMTcsWzE1LCJqIl0sIkwiXSxbMTcsWzE1LCJqIl0sIk0iXSxbMTcsWzE1LCJqIl0sIkFGIl0sWzE3LFsxNSwiaiJdLCJBRyJdLFsxNyxbMTUsImoiXSwiQUoiXSxbMTcsWzE1LCJqIl0sIkFNIl0sWzE3LFsxNSwiaiJdLCJBUSJdXV0sWzUyLCJhTCIsWzcsIl8iLCJnYV8iLCJnb29nbGVfIiwiZ3RhZy4iLCJmaXJlYmFzZV8iXV0sWzM2LFs4LCJBIixbMTUsImFBIl0sIkQiLFsxNSwiYU0iXSwiQiIsWzE1LCJhQyJdLCJDIixbMTUsImFGIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9nYUFkc0xpbmtBY3Rpdml0eSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwicCIsWzQ2LCJ3IiwieCIsInkiLCJ6Il0sWyJmIixbMTUsInciXSwiZ2E0X2Fkc19saW5rZWQiLHRydWVdLFsiZSIsWzE1LCJ3Il0sWzUxLCIiLFs3LCJhQSIsImFCIl0sWyJ4IixbMTUsImFBIl1dLFsyLFsxNSwiYUEiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImoiXSwiQVAiXSxbMjgsWzI4LFsieiIsWzE1LCJhQSJdXV1dXV0sWyJxIixbMTUsInkiXSxbMTUsImFBIl0sWzE1LCJhQiJdXV1dXSxbNTAsInEiLFs0NiwidyIsIngiLCJ5Il0sWzIyLFsyOCxbInMiLFsxNSwieCJdXV0sWzQ2LFszNl1dXSxbMjIsWyJ0IixbMTUsIngiXSxbMTUsInkiXV0sWzQ2LFszNl1dXSxbMjIsWzIsWzE1LCJ4Il0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJqIl0sIkFWIl1dXSxbNDYsWzUzLFsiciIsWzE1LCJ3Il0sWzE1LCJ4Il1dXV1dLFsyMixbMixbMTUsIngiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImoiXSwiQkEiXV1dLFs0NixbNTMsWyJyIixbMTUsInciXSxbMTUsIngiXSwiZmlyc3RfdmlzaXQiXV1dXSxbMjIsWzIsWzE1LCJ4Il0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJqIl0sIkJNIl1dXSxbNDYsWzUzLFsiciIsWzE1LCJ3Il0sWzE1LCJ4Il0sInNlc3Npb25fc3RhcnQiXV1dXV0sWzUwLCJyIixbNDYsInciLCJ4IiwieSJdLFs1MCwiYUEiLFs0NiwiYUIiXSxbNTIsImFDIixbMixbMTUsIngiXSwiZ2V0SGl0RGF0YSIsWzcsWzE1LCJhQiJdXV1dLFsyMixbMjEsWzE1LCJhQyJdLFs0NF1dLFs0NixbNTMsWzIsWzE1LCJ6Il0sInNldEhpdERhdGEiLFs3LFsxNSwiYUIiXSxbMTUsImFDIl1dXV1dXV0sWzUyLCJ6IixbImIiLFsxNSwieCJdLFs4LCJvbWl0SGl0RGF0YSIsdHJ1ZSwidXNlSGl0RGF0YSIsdHJ1ZV1dXSxbMjIsWzE1LCJ5Il0sWzQ2LFs1MyxbMixbMTUsInoiXSwic2V0RXZlbnROYW1lIixbNyxbMTUsInkiXV1dXV1dLFsyLFsxNSwieiJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaiJdLCJBUSJdLCJnYV9jb252ZXJzaW9uIl1dLFsiYUEiLFsxNyxbMTUsImsiXSwiQ0wiXV0sWyJhQSIsWzE3LFsxNSwiayJdLCJKUiJdXSxbImFBIiwiXyZpYnQiXSxbInciLCJnYV9jb252ZXJzaW9uIixbMTUsInoiXV1dLFs1MCwicyIsWzQ2LCJ3Il0sWzUyLCJ4IixbMjgsWyJkIixbMTcsWzE1LCJpIl0sIkwiXV1dXSxbMjIsWzE1LCJ4Il0sWzQ2LFs1MyxbMjIsWyJkIixbMTcsWzE1LCJpIl0sIkJDIl1dLFs0NixbNTMsWzUyLCJ6IixbMzAsWzIsWzE1LCJ3Il0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJqIl0sIkFEIl1dXSxbN11dXSxbMixbMTUsInoiXSwicHVzaCIsWzcsWzE1LCJvIl1dXSxbMixbMTUsInciXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImoiXSwiQUQiXSxbMTUsInoiXV1dXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dXV1dLFsyMixbMixbMTUsInciXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImoiXSwiQk4iXV1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbMjIsWzIsWzE1LCJ3Il0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJqIl0sIkJLIl1dXSxbNDYsWzUzLFszNixmYWxzZV1dXV0sWzUyLCJ5IixbMzAsWzIsWzE1LCJ3Il0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJqIl0sIkFDIl1dXSxbN11dXSxbMjIsWzIwLFsyLFsxNSwieSJdLCJpbmRleE9mIixbNyxbMTcsWzE1LCJsIl0sIkFPIl1dXSxbMjcsMV1dLFs0NixbNTMsWzIsWzE1LCJ5Il0sInB1c2giLFs3LFsxNyxbMTUsImwiXSwiQU8iXV1dXV1dLFsyMixbMjgsWzIsWzE1LCJ3Il0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJqIl0sIlAiXV1dXSxbNDYsWzUzLFsyMixbMjAsWzIsWzE1LCJ5Il0sImluZGV4T2YiLFs3LFsxNyxbMTUsImwiXSwiQU4iXV1dLFsyNywxXV0sWzQ2LFs1MyxbMixbMTUsInkiXSwicHVzaCIsWzcsWzE3LFsxNSwibCJdLCJBTiJdXV1dXV1dXV0sWzIsWzE1LCJ3Il0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJqIl0sIkFDIl0sWzE1LCJ5Il1dXSxbMjIsWzI4LFszMCxbMzAsWzIsWzE1LCJ3Il0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJqIl0sIkFWIl1dXSxbMixbMTUsInciXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImoiXSwiQkEiXV1dXSxbMixbMTUsInciXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImoiXSwiQk0iXV1dXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dLFszNix0cnVlXV0sWzUwLCJ0IixbNDYsInciLCJ4Il0sWzQxLCJ5Il0sWzMsInkiLGZhbHNlXSxbNTIsInoiLFs3XV0sWzUyLCJhQSIsWyJuIixbMTUsImMiXSxbMTUsIngiXV1dLFs1MiwiYUIiLFs1MSwiIixbNywiYUMiLCJhRCJdLFsyMixbImFDIixbMTUsInciXSxbMTUsImFBIl1dLFs0NixbNTMsWzMsInkiLHRydWVdLFsyLFsxNSwieiJdLCJwdXNoIixbNyxbMTUsImFEIl1dXV1dXV1dLFsiYUIiLFsxNSwidSJdLFsxNyxbMTUsIm0iXSwiR09PR0xFX1NJR05BTF9ESVNBQkxFRCJdXSxbImFCIixbMTUsInYiXSxbMTcsWzE1LCJtIl0sIkRFVklDRV9EQVRBX1JFREFDVElPTl9FTkFCTEVEIl1dLFsyMixbMjgsWzE1LCJ5Il1dLFs0NixbMixbMTUsInoiXSwicHVzaCIsWzcsWzE3LFsxNSwibSJdLCJCRUFDT05fU0VOVCJdXV1dXSxbMixbMTUsInciXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiayJdLCJITiJdLFsyLFsxNSwieiJdLCJqb2luIixbNywiLiJdXV1dLFszNixbMTUsInkiXV1dLFs1MCwidSIsWzQ2LCJ3IiwieCJdLFsyMixbMjgsWzIsWzE1LCJ3Il0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJqIl0sIkJGIl1dXV0sWzQ2LFs1MyxbMzYsdHJ1ZV1dXV0sWzIyLFsiZCIsWzE3LFsxNSwiaSJdLCJBTyJdXSxbNDYsWzUzLFszNixmYWxzZV1dXV0sWzIyLFsyMCxbIngiLFsyLFsxNSwidyJdLCJnZXREZXN0aW5hdGlvbklkIixbN11dLFsxNyxbMTUsImsiXSwiQk4iXV0sZmFsc2VdLFs0NixbNTMsWzM2LHRydWVdXV1dLFszNixmYWxzZV1dLFs1MCwidiIsWzQ2LCJ3IiwieCJdLFszNixbMzAsWzIwLFsieCIsWzIsWzE1LCJ3Il0sImdldERlc3RpbmF0aW9uSWQiLFs3XV0sInJlZGFjdF9kZXZpY2VfaW5mbyJdLHRydWVdLFsyMCxbIngiLFsyLFsxNSwidyJdLCJnZXREZXN0aW5hdGlvbklkIixbN11dLCJnZW9fZ3JhbnVsYXJpdHkiXSx0cnVlXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlQcmVIaXQiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImYiLFsicmVxdWlyZSIsImludGVybmFsLnNldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImciLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImgiLFsxNSwiX19tb2R1bGVfYWN0aXZpdGllcyJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJqIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiayIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwibCIsWzE1LCJfX21vZHVsZV9nb2xkRXZlbnRVc2FnZUlkIl1dLFs1MiwibSIsWzIsWzE1LCJnIl0sImZyZWV6ZSIsWzcsWzgsIkJFQUNPTl9TRU5UIiwib2siLCJHT09HTEVfU0lHTkFMX0RJU0FCTEVEIiwiZ3MiLCJHQTRfU1VCRE9NQUlOX0VOQUJMRUQiLCJ3ZyIsIkRFVklDRV9EQVRBX1JFREFDVElPTl9FTkFCTEVEIiwicmQiLCJHQTRfU1VCRE9NQUlOX0VOQUJMRURfV0lUSE9VVF9DT05TRU5UIiwid2djIl1dXV0sWzUyLCJuIixbMTcsWzE1LCJoIl0sIkEiXV0sWzUyLCJvIiwxLjE4ODY5MTg4RThdLFszNixbOCwiQSIsWzE1LCJwIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9jY2RHYVJlZ2lvblNjb3BlZFNldHRpbmdzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJqIixbNDYsIm0iLCJuIiwibyJdLFs1MCwidCIsWzQ2LCJ2Il0sWzUyLCJ3IixbMTYsWzE1LCJpIl0sWzE1LCJ2Il1dXSxbMjIsWzI4LFsxNSwidyJdXSxbNDYsWzM2XV1dLFs1MyxbNDEsIngiXSxbMywieCIsMF0sWzYzLFs3LCJ4Il0sWzIzLFsxNSwieCJdLFsxNyxbMTUsInciXSwibGVuZ3RoIl1dLFszMyxbMTUsIngiXSxbMywieCIsWzAsWzE1LCJ4Il0sMV1dXSxbNDYsWzUzLFs1MiwieSIsWzE2LFsxNSwidyJdLFsxNSwieCJdXV0sWyJxIixbMTUsInAiXSxbMTcsWzE1LCJ5Il0sIm5hbWUiXSxbMTcsWzE1LCJ5Il0sInZhbHVlIl1dXV1dXV0sWzUwLCJ1IixbNDYsInYiXSxbMjIsWzMwLFsyOCxbMTUsInIiXV0sWzIxLFsxNyxbMTUsInIiXSwibGVuZ3RoIl0sMl1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbNDEsInciXSxbMywidyIsWzE2LFsxNSwidiJdLFsxNSwicyJdXV0sWzIyLFsyMCxbMTUsInciXSxbNDRdXSxbNDYsWzUzLFszLCJ3IixbMTYsWzE1LCJ2Il0sWzE1LCJyIl1dXV1dXSxbMzYsWzI4LFsyOCxbMTUsInciXV1dXV0sWzIyLFsyOCxbMTUsIm4iXV0sWzQ2LFszNl1dXSxbNTIsInAiLFszMCxbMTcsWzE1LCJtIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdLFsxNyxbImMiXSwiY29udGFpbmVySWQiXV1dLFs1MiwicSIsWyJoIixbMTUsImYiXSxbMTUsIm8iXV1dLFs1MiwiciIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFsiaCIsWzE1LCJkIl0sWzE1LCJvIl1dXSxbIiQwIl1dXSxbNTIsInMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbImgiLFsxNSwiZSJdLFsxNSwibyJdXV0sWyIkMCJdXV0sWzUzLFs0MSwidiJdLFszLCJ2IiwwXSxbNjMsWzcsInYiXSxbMjMsWzE1LCJ2Il0sWzE3LFsxNSwibiJdLCJsZW5ndGgiXV0sWzMzLFsxNSwidiJdLFszLCJ2IixbMCxbMTUsInYiXSwxXV1dLFs0NixbNTMsWzUyLCJ3IixbMTYsWzE1LCJuIl0sWzE1LCJ2Il1dXSxbMjIsWzMwLFsxNyxbMTUsInciXSwiZGlzYWxsb3dBbGxSZWdpb25zIl0sWyJ1IixbMTcsWzE1LCJ3Il0sImRpc2FsbG93ZWRSZWdpb25zIl1dXSxbNDYsWzUzLFsidCIsWzE3LFsxNSwidyJdLCJyZWRhY3RGaWVsZEdyb3VwIl1dXV1dXV1dXV0sWzUwLCJrIixbNDYsIm0iXSxbNTIsIm4iLFs4XV0sWzIyLFsyOCxbMTUsIm0iXV0sWzQ2LFszNixbMTUsIm4iXV1dXSxbNTIsIm8iLFsyLFsxNSwibSJdLCJzcGxpdCIsWzcsIiwiXV1dLFs1MyxbNDEsInAiXSxbMywicCIsMF0sWzYzLFs3LCJwIl0sWzIzLFsxNSwicCJdLFsxNyxbMTUsIm8iXSwibGVuZ3RoIl1dLFszMyxbMTUsInAiXSxbMywicCIsWzAsWzE1LCJwIl0sMV1dXSxbNDYsWzUzLFs1MiwicSIsWzIsWzE2LFsxNSwibyJdLFsxNSwicCJdXSwidHJpbSIsWzddXV0sWzIyLFsyOCxbMTUsInEiXV0sWzQ2LFs2XV1dLFs1MiwiciIsWzIsWzE1LCJxIl0sInNwbGl0IixbNywiLSJdXV0sWzUyLCJzIixbMTYsWzE1LCJyIl0sMF1dLFs1MiwidCIsWzM5LFsyMCxbMTcsWzE1LCJyIl0sImxlbmd0aCJdLDJdLFsxNSwicSJdLFs0NF1dXSxbMjIsWzMwLFsyOCxbMTUsInMiXV0sWzIxLFsxNyxbMTUsInMiXSwibGVuZ3RoIl0sMl1dLFs0NixbNTMsWzZdXV1dLFsyMixbMSxbMjEsWzE1LCJ0Il0sWzQ0XV0sWzMwLFsyMyxbMTcsWzE1LCJ0Il0sImxlbmd0aCJdLDRdLFsxOCxbMTcsWzE1LCJ0Il0sImxlbmd0aCJdLDZdXV0sWzQ2LFs1MyxbNl1dXV0sWzQzLFsxNSwibiJdLFsxNSwicSJdLHRydWVdXV1dXSxbMzYsWzE1LCJuIl1dXSxbNTAsImwiLFs0NiwibSJdLFsyMixbMjgsWzE3LFsxNSwibSJdLCJzZXR0aW5nc1RhYmxlIl1dLFs0NixbMzYsWzddXV1dLFs1MiwibiIsWzhdXSxbNTMsWzQxLCJvIl0sWzMsIm8iLDBdLFs2MyxbNywibyJdLFsyMyxbMTUsIm8iXSxbMTcsWzE3LFsxNSwibSJdLCJzZXR0aW5nc1RhYmxlIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJvIl0sWzMsIm8iLFswLFsxNSwibyJdLDFdXV0sWzQ2LFs1MyxbNTIsInAiLFsxNixbMTcsWzE1LCJtIl0sInNldHRpbmdzVGFibGUiXSxbMTUsIm8iXV1dLFs1MiwicSIsWzE3LFsxNSwicCJdLCJyZWRhY3RGaWVsZEdyb3VwIl1dLFsyMixbMjgsWzE2LFsxNSwiaSJdLFsxNSwicSJdXV0sWzQ2LFs2XV1dLFs0MyxbMTUsIm4iXSxbMTUsInEiXSxbOCwicmVkYWN0RmllbGRHcm91cCIsWzE1LCJxIl0sImRpc2FsbG93QWxsUmVnaW9ucyIsZmFsc2UsImRpc2FsbG93ZWRSZWdpb25zIixbOF1dXSxbNTIsInIiLFsxNixbMTUsIm4iXSxbMTUsInEiXV1dLFsyMixbMTcsWzE1LCJwIl0sImRpc2FsbG93QWxsUmVnaW9ucyJdLFs0NixbNTMsWzQzLFsxNSwiciJdLCJkaXNhbGxvd0FsbFJlZ2lvbnMiLHRydWVdLFs2XV1dXSxbNDMsWzE1LCJyIl0sImRpc2FsbG93ZWRSZWdpb25zIixbImsiLFsxNyxbMTUsInAiXSwiZGlzYWxsb3dlZFJlZ2lvbnMiXV1dXV1dXSxbMzYsWzIsWzE1LCJiIl0sInZhbHVlcyIsWzcsWzE1LCJuIl1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiT2JqZWN0Il1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiZ2V0Q29udGFpbmVyVmVyc2lvbiJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmdldENvdW50cnlDb2RlIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UmVnaW9uQ29kZSJdXSxbNTIsImYiLFsicmVxdWlyZSIsImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfYWN0aXZpdGllcyJdXSxbNTIsImgiLFsxNyxbMTUsImciXSwiQSJdXSxbNTIsImkiLFs4LCJHT09HTEVfU0lHTkFMUyIsWzcsWzgsIm5hbWUiLCJhbGxvd19nb29nbGVfc2lnbmFscyIsInZhbHVlIixmYWxzZV1dLCJERVZJQ0VfQU5EX0dFTyIsWzcsWzgsIm5hbWUiLCJnZW9fZ3JhbnVsYXJpdHkiLCJ2YWx1ZSIsdHJ1ZV0sWzgsIm5hbWUiLCJyZWRhY3RfZGV2aWNlX2luZm8iLCJ2YWx1ZSIsdHJ1ZV1dXV0sWzM2LFs4LCJBIixbMTUsImoiXSwiQiIsWzE1LCJsIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrUGxhdGZvcm1EZXRlY3Rpb24iLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImQiLFs0NiwiZSJdLFs1MiwiZiIsWzIsWzE1LCJjIl0sIkEiLFs3XV1dLFsyMixbMSxbMTUsImYiXSxbMTgsWzE3LFsxNSwiZiJdLCJsZW5ndGgiXSwwXV0sWzQ2LFs1MyxbMixbMTUsImUiXSwibWVyZ2VIaXREYXRhRm9yS2V5IixbNyxbMTcsWzE1LCJiIl0sIkZUIl0sWzgsInBsZiIsWzIsWzE1LCJmIl0sImpvaW4iLFs3LCIuIl1dXV1dXV1dXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfcGxhdGZvcm1EZXRlY3Rpb24iXV0sWzM2LFs4LCJBIixbMTUsImQiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2dhQ29udmVyc2lvblByb2Nlc3NvciIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiYUMiLFs0NiwiYUQiXSxbNTIsImFFIixbNyxbMTcsWzE1LCJmIl0sIkIiXSxbMTcsWzE1LCJmIl0sIkMiXV1dLFs1MiwiYUYiLFs1MSwiIixbN10sWyJyIixbMTUsImFEIl1dLFsyLFsxNSwiYUIiXSwiQSIsWzcsWzE1LCJhRCJdXV0sWzIsWzE1LCJ3Il0sIkEiLFs3LFsxNSwiYUQiXV1dLFsyLFsxNSwidCJdLCJBIixbNyxbMTUsImFEIl1dXSxbMixbMTUsImIiXSwiQSIsWzcsWzE1LCJhRCJdXV0sWzIsWzE1LCJiIl0sIkoiLFs3LFsxNSwiYUQiXV1dLFsyLFsxNSwibiJdLCJBIixbNyxbMTUsImFEIl1dXSxbMixbMTUsIngiXSwiQSIsWzcsWzE1LCJhRCJdXV0sWzIsWzE1LCJxIl0sIkEiLFs3LFsxNSwiYUQiXV1dLFsyLFsxNSwiYiJdLCJCIixbNyxbMTUsImFEIl1dXSxbMixbMTUsIm0iXSwiQSIsWzcsWzE1LCJhRCJdXV0sWzIsWzE1LCJiIl0sIkMiLFs3LFsxNSwiYUQiXV1dLFsyLFsxNSwiYiJdLCJFIixbNyxbMTUsImFEIl1dXSxbMixbMTUsImIiXSwiSSIsWzcsWzE1LCJhRCJdXV0sWzIsWzE1LCJiIl0sIkciLFs3LFsxNSwiYUQiXV1dLFsyLFsxNSwiYiJdLCJIIixbNyxbMTUsImFEIl1dXSxbMixbMTUsInkiXSwiQSIsWzcsWzE1LCJhRCJdXV0sWzIsWzE1LCJhQSJdLCJBIixbNyxbMTUsImFEIl1dXSxbImsiLFsxNSwiYUQiXV0sWzIsWzE1LCJsIl0sIkEiLFs3LFsxNSwiYUQiXV1dLFsyLFsxNSwicyJdLCJBIixbNyxbMTUsImFEIl1dXSxbMixbMTUsImIiXSwiRiIsWzcsWzE1LCJhRCJdXV0sWzIsWzE1LCJiIl0sIkQiLFs3LFsxNSwiYUQiXV1dLFsyLFsxNSwibyJdLCJBIixbNyxbMTUsImFEIl1dXSxbMixbMTUsInYiXSwiQSIsWzcsWzE1LCJhRCJdXV0sWzIsWzE1LCJ1Il0sIkEiLFs3LFsxNSwiYUQiXV1dLFsieiIsWzE1LCJhRCJdXSxbMixbMTUsInAiXSwiQSIsWzcsWzE1LCJhRCJdXV1dXSxbNTIsImFHIixbNTEsIiIsWzddLFsiYyIsWzUxLCIiLFs3XSxbImFGIl0sWzIyLFsyOCxbImciLFsxNSwiYUUiXV1dLFs0NixbNTMsWyJkIixbNTEsIiIsWzddLFsyMixbImciLFsxNSwiYUUiXV0sWzQ2LFs1MyxbMixbMTUsImFEIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJpIl0sIk4iXSx0cnVlXV0sWyJhRiJdXV1dXSxbMTUsImFFIl1dXV1dXSxbMTUsImFFIl1dXV0sWyJqIixbMTUsImFHIl1dXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfY29tbW9uQWRzVGFza3MiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jb25zZW50U2NoZWR1bGVGaXJzdFRyeSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmNvbnNlbnRTY2hlZHVsZVJldHJ5Il1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9mZWF0dXJlRmxhZ3MiXV0sWzUyLCJmIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJnIixbInJlcXVpcmUiLCJpc0NvbnNlbnRHcmFudGVkIl1dLFs1MiwiaCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJqIixbInJlcXVpcmUiLCJpbnRlcm5hbC5xdWV1ZUFkc1RyYW5zbWlzc2lvbiJdXSxbNTIsImsiLFsicmVxdWlyZSIsImludGVybmFsLnRhc2tBZGRBZHNDbGlja0lkcyJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfdGFza0FkZENvb2tpZURlcHJlY2F0aW9uTGFiZWwiXV0sWzUyLCJtIixbMTUsIl9fbW9kdWxlX3Rhc2tBZGREZXZlbG9wZXJJZCJdXSxbNTIsIm4iLFsxNSwiX19tb2R1bGVfdGFza0FkZEV2ZW50UHJvdmVuYW5jZSJdXSxbNTIsIm8iLFsxNSwiX19tb2R1bGVfdGFza0FkZFVhY2hQYXJhbXMiXV0sWzUyLCJwIixbMTUsIl9fbW9kdWxlX3Rhc2tTZW5kQWRzSGl0cyJdXSxbNTIsInEiLFsxNSwiX19tb2R1bGVfdGFza1NldEFkc1BhZ2VQYXJhbXMiXV0sWzUyLCJyIixbInJlcXVpcmUiLCJpbnRlcm5hbC50YXNrU2V0QWRzVHJhbnNtaXNzaW9uVHlwZSJdXSxbNTIsInMiLFsxNSwiX19tb2R1bGVfdGFza1NldEF1aWRQYXJhbSJdXSxbNTIsInQiLFsxNSwiX19tb2R1bGVfdGFza1NldENvbmZpZ1BhcmFtcyJdXSxbNTIsInUiLFsxNSwiX19tb2R1bGVfdGFza1NldEZlYXR1cmVVc2FnZVBhcmFtcyJdXSxbNTIsInYiLFsxNSwiX19tb2R1bGVfdGFza1NldEdvb2dsZUFuYWx5c2lzUGFyYW1zIl1dLFs1MiwidyIsWzE1LCJfX21vZHVsZV90YXNrU2V0R3BwUGFyYW1zIl1dLFs1MiwieCIsWzE1LCJfX21vZHVsZV90YXNrU2V0SWZyYW1lU3RhdGVQYXJhbSJdXSxbNTIsInkiLFsxNSwiX19tb2R1bGVfdGFza1NldFByaXZhY3lQYXJhbXMiXV0sWzUyLCJ6IixbInJlcXVpcmUiLCJpbnRlcm5hbC50YXNrU2V0VW5pdmVyc2FsUGFyYW1zIl1dLFs1MiwiYUEiLFsxNSwiX19tb2R1bGVfdGFza1NldFVybFBhc3N0aHJvdWdoUGFyYW1zIl1dLFs1MiwiYUIiLFsxNSwiX19tb2R1bGVfd2ViQWRzVGFza3MiXV0sWzM2LFs4LCJBIixbMTUsImFDIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV91c2VyRGF0YVdlYlByb2Nlc3NvciIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwidyIsWzQ2LCJ4Il0sWzUyLCJ5IixbNyxbMTcsWzE1LCJjIl0sIkIiXSxbMTcsWzE1LCJjIl0sIkMiXV1dLFs1MiwieiIsWzUxLCIiLFs3XSxbIm0iLFsxNSwieCJdXSxbMixbMTUsInYiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsIm8iXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsImIiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsInUiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsImoiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsImIiXSwiRyIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsInMiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsImsiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbImgiLFsxNSwieCJdXSxbMixbMTUsImkiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsInAiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsInIiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsIm4iXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsImwiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsImIiXSwiRCIsWzcsWzE1LCJ4Il1dXSxbMixbMTUsInEiXSwiQSIsWzcsWzE1LCJ4Il1dXSxbInQiLFsxNSwieCJdXSxbMjIsWzI4LFsyLFsxNSwieCJdLCJpc0Fib3J0ZWQiLFs3XV1dLFs0NixbNTMsWyJnIixbMTUsIngiXV1dXV1dXSxbNTIsImFBIixbNTEsIiIsWzddLFsyMixbMjgsWyJkIixbMTUsInkiXV1dLFs0NixbNTMsWzM2XV1dXSxbInoiXV1dLFsiZiIsWzE1LCJhQSJdXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2NvbW1vbkFkc1Rhc2tzIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaXNDb25zZW50R3JhbnRlZCJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5xdWV1ZUFkc1RyYW5zbWlzc2lvbiJdXSxbNTIsImciLFsicmVxdWlyZSIsImludGVybmFsLnNlbmRBZHNIaXQiXV0sWzUyLCJoIixbInJlcXVpcmUiLCJpbnRlcm5hbC50YXNrQWRkQWRzQ2xpY2tJZHMiXV0sWzUyLCJpIixbMTUsIl9fbW9kdWxlX3Rhc2tBZGRDb29raWVEZXByZWNhdGlvbkxhYmVsIl1dLFs1MiwiaiIsWzE1LCJfX21vZHVsZV90YXNrQWRkRGV2ZWxvcGVySWQiXV0sWzUyLCJrIixbMTUsIl9fbW9kdWxlX3Rhc2tBZGRFdmVudFByb3ZlbmFuY2UiXV0sWzUyLCJsIixbMTUsIl9fbW9kdWxlX3Rhc2tBZGRVYWNoUGFyYW1zIl1dLFs1MiwibSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwudGFza1NldEFkc1RyYW5zbWlzc2lvblR5cGUiXV0sWzUyLCJuIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRBdWlkUGFyYW0iXV0sWzUyLCJvIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRDb25maWdQYXJhbXMiXV0sWzUyLCJwIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRDb29raWVFeHBpcmF0aW9uUGFyYW0iXV0sWzUyLCJxIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRGZWF0dXJlVXNhZ2VQYXJhbXMiXV0sWzUyLCJyIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRHb29nbGVBbmFseXNpc1BhcmFtcyJdXSxbNTIsInMiLFsxNSwiX19tb2R1bGVfdGFza1NldElmcmFtZVN0YXRlUGFyYW0iXV0sWzUyLCJ0IixbInJlcXVpcmUiLCJpbnRlcm5hbC50YXNrU2V0VW5pdmVyc2FsUGFyYW1zIl1dLFs1MiwidSIsWzE1LCJfX21vZHVsZV90YXNrU2V0VXNlcklkUGFyYW1zIl1dLFs1MiwidiIsWzE1LCJfX21vZHVsZV93ZWJBZHNUYXNrcyJdXSxbMzYsWzgsIkEiLFsxNSwidyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfYWRzQ29udmVyc2lvblNwbGl0IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJvIixbNDYsInAiXSxbNTIsInEiLFszMCxbMixbMTUsInAiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImwiXSwiTSJdXV0sWzhdXV0sWzIyLFszMCxbMjgsWzE2LFsxNSwicSJdLFsxNyxbMTUsImoiXSwiQyJdXV0sWzI4LFsxNixbMTUsInEiXSxbMTcsWzE1LCJqIl0sIkIiXV1dXSxbNDYsWzUzLFszNl1dXV0sWzIyLFsyOCxbImsiXV0sWzQ2LFszNl1dXSxbNTIsInIiLFsiaSIsWzIsWzE1LCJwIl0sImdldERlc3RpbmF0aW9uSWQiLFs3XV0sImNjZF9lbmFibGVfY20iXV0sWzUyLCJzIixbMixbMTUsInAiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImwiXSwiQ1ciXV1dXSxbMjIsWzI4LFsxNSwicyJdXSxbNDYsWzUzLFszNl1dXV0sWzIsWzE1LCJwIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJsIl0sIkJEIl0sdHJ1ZV1dLFsyLFsxNSwicCJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwibCJdLCJCQyJdLHRydWVdXSxbMjIsWzI4LFsibSIsWzE1LCJzIl1dXSxbNDYsWzUzLFszNl1dXV0sWzIsWzE1LCJwIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJsIl0sIkJRIl0sdHJ1ZV1dLFs1MiwidCIsWzMwLFsiaCIsWzE1LCJwIl1dLFsiZyJdXV0sWzIyLFsyLFsxNSwicCJdLCJnZXRIaXREYXRhIixbNyxbMTcsWzE1LCJqIl0sIklVIl1dXSxbNDYsWzUzLFsyLFsxNSwicCJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJqIl0sIklWIl0sWzE3LFsxNSwiYyJdLCJBIl1dXV1dLFs0NixbNTMsWzQxLCJ2Il0sWzMsInYiLFs0NF1dLFs0MSwidyJdLFszLCJ3IixbNDRdXSxbNTIsIngiLFsyLFsxNSwicCJdLCJnZXRIaXREYXRhIixbNyxbMTcsWzE1LCJqIl0sIktJIl1dXV0sWzIyLFsxNSwieCJdLFs0NixbNTMsWzIyLFsxNixbMTUsIngiXSxbMTcsWzE1LCJqIl0sIklVIl1dLFs0NixbNTMsWzMsInYiLFsxNixbMTUsIngiXSxbMTcsWzE1LCJqIl0sIklVIl1dXSxbMywidyIsWzE3LFsxNSwiYyJdLCJCIl1dXV1dXV1dLFsyMixbMjgsWzE1LCJ2Il1dLFs0NixbNTMsWzMsInYiLFsiZyIsWzIsWzE1LCJwIl0sImdldEhpdERhdGEiLFs3LFsxNyxbMTUsImoiXSwiS0ciXV1dXV0sWzMsInciLFsxNyxbMTUsImMiXSwiQyJdXV1dXSxbMixbMTUsInAiXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiaiJdLCJJVSJdLFsxNSwidiJdXV0sWzIsWzE1LCJwIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImoiXSwiSVYiXSxbMTUsInciXV1dXV1dLFsyLFsxNSwicCJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwibCJdLCJDVSJdLFsxNSwidCJdXV0sWzIyLFszMCxbMjgsWzE1LCJyIl1dLFsyOCxbMixbMTUsInAiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImwiXSwiRiJdXV1dXSxbNDYsWzUzLFsyLFsxNSwicCJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwibCJdLCJDVyJdLFs0NF1dXV1dXSxbMixbMTUsInAiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImwiXSwiQ0UiXSx0cnVlXV0sWzIsWzE1LCJwIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImoiXSwiSUkiXSxbMTUsInQiXV1dLFs1MiwidSIsWyJkIixbMTUsInAiXSxbOCwib21pdEhpdERhdGEiLHRydWVdXV0sWzIsWzE1LCJ1Il0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJsIl0sIkFRIl0sWzE3LFsxNSwiYiJdLCJLIl1dXSxbMixbMTUsInUiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImwiXSwiQ1ciXSxbMTUsInMiXV1dLFsyLFsxNSwidSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwibCJdLCJCQyJdLHRydWVdXSxbMixbMTUsInUiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImwiXSwiQkQiXSx0cnVlXV0sWzIsWzE1LCJ1Il0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJsIl0sIkJRIl0sdHJ1ZV1dLFsyLFsxNSwidSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwibCJdLCJDVSJdLFsxNSwidCJdXV0sWzIsWzE1LCJ1Il0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImoiXSwiQ1IiXSxbMixbMTUsInAiXSwiZ2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiaiJdLCJDUiJdXV1dXSxbMjIsWzEsWzE1LCJyIl0sWyJrIl1dLFs0NixbNTMsWzIsWzE1LCJ1Il0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImoiXSwiS0MiXSwiMSJdXV1dXSxbNjgsInYiLFs1MyxbMixbMTUsIm4iXSwiQSIsWzcsWzE1LCJ1Il1dXV0sWzQ2XV1dLFs1MiwiYiIsWzE1LCJfX21vZHVsZV9hZHdvcmRzSGl0VHlwZSJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfYWR3b3Jkc09yZGVySWRTb3VyY2UiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jb3B5UHJlSGl0Il1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbNTIsImYiLFsxNSwiX19tb2R1bGVfZmVhdHVyZUZsYWdzIl1dLFs1MiwiZyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2VuZXJhdGVDbGllbnRJZCJdXSxbNTIsImgiLFsicmVxdWlyZSIsImludGVybmFsLmdldEVjc2lkQ29va2llVmFsdWUiXV0sWzUyLCJpIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJqIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pc0ZwZmUiXV0sWzUyLCJsIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwibSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwudXNlckRhdGFOZWVkc0VuY3J5cHRpb24iXV0sWzUyLCJuIixbMTUsIl9fbW9kdWxlX3VzZXJEYXRhV2ViUHJvY2Vzc29yIl1dLFszNixbOCwiQSIsWzE1LCJvIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9nYWN0Q29udmVyc2lvblByb2Nlc3NvciIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiYUUiLFs0NiwiYUYiXSxbNTIsImFHIixbNTEsIiIsWzddLFsibyIsWzE1LCJhRiJdXSxbMixbMTUsImFEIl0sIkEiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwibCJdLCJBIixbNyxbMTUsImFGIl1dXSxbMixbMTUsInIiXSwiQSIsWzcsWzE1LCJhRiJdXV0sWzIsWzE1LCJ2Il0sIkEiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwicSJdLCJBIixbNyxbMTUsImFGIl1dXSxbMixbMTUsImMiXSwiQSIsWzcsWzE1LCJhRiJdXV0sWzIsWzE1LCJjIl0sIkoiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwieCJdLCJBIixbNyxbMTUsImFGIl1dXSxbMixbMTUsImoiXSwiQSIsWzcsWzE1LCJhRiJdXV0sWzIsWzE1LCJuIl0sIkEiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwiYyJdLCJCIixbNyxbMTUsImFGIl1dXSxbMixbMTUsImkiXSwiQSIsWzcsWzE1LCJhRiJdXV0sWzIsWzE1LCJjIl0sIkMiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwiYyJdLCJFIixbNyxbMTUsImFGIl1dXSxbMixbMTUsImMiXSwiSSIsWzcsWzE1LCJhRiJdXV0sWzIsWzE1LCJjIl0sIkciLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwieSJdLCJBIixbNyxbMTUsImFGIl1dXSxbMixbMTUsImFBIl0sIkEiLFs3LFsxNSwiYUYiXV1dLFsiZyIsWzE1LCJhRiJdXSxbMixbMTUsImgiXSwiQSIsWzcsWzE1LCJhRiJdXV0sWzIsWzE1LCJwIl0sIkEiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwiYyJdLCJGIixbNyxbMTUsImFGIl1dXSxbMixbMTUsImMiXSwiRCIsWzcsWzE1LCJhRiJdXV0sWzIsWzE1LCJrIl0sIkEiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwidyJdLCJBIixbNyxbMTUsImFGIl1dXSxbMixbMTUsImFDIl0sIkEiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwicyJdLCJBIixbNyxbMTUsImFGIl1dXSxbMixbMTUsImFCIl0sIkEiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwidSJdLCJBIixbNyxbMTUsImFGIl1dXSxbMixbMTUsImFEIl0sIkIiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwiYUQiXSwiQyIsWzcsWzE1LCJhRiJdXV0sWzIsWzE1LCJiIl0sIkEiLFs3LFsxNSwiYUYiXV1dLFsyLFsxNSwidCJdLCJBIixbNyxbMTUsImFGIl1dXSxbInoiLFsxNSwiYUYiXV0sWzIsWzE1LCJtIl0sIkEiLFs3LFsxNSwiYUYiXV1dXV0sWyJmIixbMTUsImFHIl1dXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfYWRzQ29udmVyc2lvblNwbGl0Il1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9jb21tb25BZHNUYXNrcyJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfZmVhdHVyZUZsYWdzIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbNTIsImYiLFsicmVxdWlyZSIsImludGVybmFsLnF1ZXVlQWRzVHJhbnNtaXNzaW9uIl1dLFs1MiwiZyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwudGFza0FkZEFkc0NsaWNrSWRzIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV90YXNrQWRkQ29va2llRGVwcmVjYXRpb25MYWJlbCJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfdGFza0FkZERldmVsb3BlcklkIl1dLFs1MiwiaiIsWzE1LCJfX21vZHVsZV90YXNrQWRkRXZlbnRQcm92ZW5hbmNlIl1dLFs1MiwiayIsWzE1LCJfX21vZHVsZV90YXNrQWRkVWFjaFBhcmFtcyJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfdGFza0luaXRTZXJ2aWNlV29ya2VyIl1dLFs1MiwibSIsWzE1LCJfX21vZHVsZV90YXNrU2VuZEFkc0hpdHMiXV0sWzUyLCJuIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRBZHNQYWdlUGFyYW1zIl1dLFs1MiwibyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwudGFza1NldEFkc1RyYW5zbWlzc2lvblR5cGUiXV0sWzUyLCJwIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRBdWlkUGFyYW0iXV0sWzUyLCJxIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRDb25maWdQYXJhbXMiXV0sWzUyLCJyIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRDb29raWVFeHBpcmF0aW9uUGFyYW0iXV0sWzUyLCJzIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRDdXN0b21lckxpZmVjeWNsZVBhcmFtcyJdXSxbNTIsInQiLFsxNSwiX19tb2R1bGVfdGFza1NldEZlYXR1cmVVc2FnZVBhcmFtcyJdXSxbNTIsInUiLFsxNSwiX19tb2R1bGVfdGFza1NldEdvb2dsZUFuYWx5c2lzUGFyYW1zIl1dLFs1MiwidiIsWzE1LCJfX21vZHVsZV90YXNrU2V0R3BwUGFyYW1zIl1dLFs1MiwidyIsWzE1LCJfX21vZHVsZV90YXNrU2V0R3NhRXhwZXJpbWVudElkIl1dLFs1MiwieCIsWzE1LCJfX21vZHVsZV90YXNrU2V0SWZyYW1lU3RhdGVQYXJhbSJdXSxbNTIsInkiLFsxNSwiX19tb2R1bGVfdGFza1NldFByaXZhY3lQYXJhbXMiXV0sWzUyLCJ6IixbInJlcXVpcmUiLCJpbnRlcm5hbC50YXNrU2V0VW5pdmVyc2FsUGFyYW1zIl1dLFs1MiwiYUEiLFsxNSwiX19tb2R1bGVfdGFza1NldFVybFBhc3N0aHJvdWdoUGFyYW1zIl1dLFs1MiwiYUIiLFsxNSwiX19tb2R1bGVfdGFza1NldFVzZXJJZFBhcmFtcyJdXSxbNTIsImFDIixbMTUsIl9fbW9kdWxlX3Rhc2tTdG9yZUJyYWlkTGFiZWxzIl1dLFs1MiwiYUQiLFsxNSwiX19tb2R1bGVfd2ViQWRzVGFza3MiXV0sWzM2LFs4LCJBIixbMTUsImFFIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9wcm9jZXNzb3JzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJnIixbNDYsImkiLCJqIl0sWzQzLFsxNSwiZiJdLFsxNSwiaSJdLFs4LCJwcm9jZXNzIixbMTUsImoiXV1dXSxbNTAsImgiLFs0NiwiaSIsImoiXSxbNTIsImsiLFsxNixbMTUsImYiXSxbMTUsImkiXV1dLFsyMixbMjgsWzE1LCJrIl1dLFs0NixbNTMsWzIsWzE1LCJrIl0sIm5vU3VjaFByb2Nlc3NvckZvckhpdFR5cGUiLFs3XV1dXV0sWzY4LCJsIixbNTMsWzIsWzE1LCJrIl0sInByb2Nlc3MiLFs3LFsxNSwiaiJdXV1dLFs0Nl1dXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfYWR3b3Jkc0hpdFR5cGUiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2dhQ29udmVyc2lvblByb2Nlc3NvciJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfZ2FjdENvbnZlcnNpb25Qcm9jZXNzb3IiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX3VzZXJEYXRhV2ViUHJvY2Vzc29yIl1dLFs1MiwiZiIsWzhdXSxbImciLFsxNyxbMTUsImIiXSwiRiJdLFsxNyxbMTUsImMiXSwiQSJdXSxbImciLFsxNyxbMTUsImIiXSwiRCJdLFsxNyxbMTUsImQiXSwiQSJdXSxbImciLFsxNyxbMTUsImIiXSwiSyJdLFsxNyxbMTUsImUiXSwiQSJdXSxbMzYsWzgsIkIiLFsxNSwiaCJdLCJBIixbMTUsImciXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KIApdCiwiZW50aXRpZXMiOnsKIl9fYyI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9hdXRvX3JlZGFjdCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9jb252ZXJzaW9uX21hcmtpbmciOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fZG93bmxvYWQiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fcGFnZV92aWV3Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX3Njcm9sbCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9lbV9zaXRlX3NlYXJjaCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9lbV92aWRlbyI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9nYV9hZHNfbGluayI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9nYV9maXJzdCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9nYV9sYXN0Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2dhX3JlZ3Njb3BlIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fZSI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2djdCI6eyI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX29ndF8xcF9kYXRhX3YyIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fb2d0X2Nyb3NzX2RvbWFpbiI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX29ndF9kbWEiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19vZ3RfZXZlbnRfY3JlYXRlIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fb2d0X2dvb2dsZV9zaWduYWxzIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fc2V0X3Byb2R1Y3Rfc2V0dGluZ3MiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KCgp9CiwiYmxvYiI6eyIxIjoiMyIsIjEwIjoiRy1DVEJORVpLNTExIiwiMTQiOiI2N20wIiwiMTUiOiIwIiwiMTYiOiJDaEVJOElPYzB3WVFnT21za3Z1bHhLcVJBUklkQUwyUFlaYlJEcmVyVnJ5REZzalpxNGw4RlQ5MWxlU2I2MjVlaWhNYUFsOVQiLCIxNyI6ImMiLCIxOSI6ImRhdGFMYXllciIsIjIwIjoiIiwiMjEiOiJ3d3cuZ29vZ2xldGFnbWFuYWdlci5jb20iLCIyMiI6ImV5SXdJam9pVGs4aUxDSXhJam9pVGs4dE1ETWlMQ0l5SWpwbVlXeHpaU3dpTXlJNkltZHZiMmRzWlM1dWJ5SXNJalFpT2lKeVpXZHBiMjR4SWl3aU5TSTZabUZzYzJVc0lqWWlPblJ5ZFdVc0lqY2lPaUpoWkY5emRHOXlZV2RsZkdGdVlXeDVkR2xqYzE5emRHOXlZV2RsZkdGa1gzVnpaWEpmWkdGMFlYeGhaRjl3WlhKemIyNWhiR2w2WVhScGIyNGlMQ0k1SWpwMGNuVmxmUSIsIjIzIjoiZ29vZ2xlLnRhZ21hbmFnZXIuZGVidWd1aTIucXVldWUiLCIyNCI6InRhZ2Fzc2lzdGFudC5nb29nbGUuY29tIiwiMjciOjAuMDA1LCIzIjoid3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIiwiMzAiOiJOTyIsIjMxIjoiTk8tMDMiLCIzMiI6ZmFsc2UsIjMzIjoicmVnaW9uMSIsIjM0IjoiRy1DVEJORVpLNTExIiwiMzUiOiJHIiwiMzYiOiJodHRwczovL2Fkc2VydmljZS5nb29nbGUuY29tL3BhZ2VhZC9yZWdjbGsiLCIzNyI6Il9fVEFHR1lfSU5TVEFMTEVEIiwiMzgiOiJjY3QuZ29vZ2xlIiwiMzkiOiJnb29nVGFnZ3lSZWZlcnJlciIsIjQwIjoiaHR0cHM6Ly9jY3QuZ29vZ2xlL3RhZ2d5L2FnZW50LmpzIiwiNDEiOiJnb29nbGUudGFnbWFuYWdlci50YS5wcm9kcXVldWUiLCI0MiI6MC4wMSwiNDMiOiJ7XCJrZXlzXCI6W3tcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCS2x5VFgyanlvYnBRQ21mVXlCYmhCeVFIazlaMkhkTjVsSHhwQkF0SUtHTWNtencwZ0UrZWJsWUNtbTFHYTdiWWVUZHlkb0ptZTZJcGFTb0NVMElVVW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiZGVlNGIzNTEtYjBmNS00YzI3LWE4YzgtZWQ2NjA0NzdhNDRjXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRHRZQlJuUEJTMWc2bWVYTzFyUTVhNTJCNUZibmg3REM1anF2MDJpeEpzc24wazFKOXJjSENhVmMvenpSc25zSEJ6U29GS3M2SjhwSDdDY25RUDNFanc9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiYWQxOTNiMmEtNGE5MC00YzFhLWI3OWUtZGUzN2FjMzkxYmQyXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCTVowVU11ZEFlNFBvYWZTVHBVeFB0SWtmQmVDTWJGQlh2dHlSWXZITENTUS9FVXZFSnNtc1Y0dDZOQi9CRVZwcUwzSHY4Z05TUWg3SytTVW9vZjI1YW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDhjNGVmZTEtZmRkMC00MzZhLWFjOGYtOTIzZjExOTE4Nzg3XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRmZsdlVsK3hwSGFGVkNJWU8xS1BMeGt2K0FqZGw0ZDhydnJYaEk2emZwbmJCRHFJNTFERGt0SEhiM1pXSVM1N29EaDBLaXI5QXVDT29uMk1PeE5WOVk9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDMyYmMyNzAtOTllYS00MjIwLWI1NjItZTJjNWFlNzdkNGQ5XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCQVE4VGt5NERMV09KYkhPSGJWWURiUVpFZkVlbGI0RlRCOEVZTVFlUlFpTDFtMUx0QWQwcjN6ZXlMamdaMy9XMjRSOFZmYjIyelkyaXg2Vy9UZkNqakE9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiMDUwYTZlMTEtMzhhYi00ZjgwLTg5Y2ItN2IzMTliOTcwNGMwXCJ9XX0iLCI0NCI6IjExODg5NzkyMH4xMTg4OTc5MzAiLCI0NSI6dHJ1ZSwiNDYiOnsiMSI6IjEwMDAiLCIxMCI6IjY2dTAiLCIxMSI6IjY2ZzAiLCIxNCI6IjEwMDAiLCIxNiI6IlVTLUNPflVTLUNUflVTLU1UflVTLU5FflVTLU5IflVTLVRYflVTLU1OflVTLU5KflVTLU1EflVTLU9SflVTLURFIiwiMTciOiJVUy1DT35VUy1DVH5VUy1NVH5VUy1ORX5VUy1OSH5VUy1UWH5VUy1NTn5VUy1OSn5VUy1NRH5VUy1PUn5VUy1ERSIsIjIiOiI5IiwiMjAiOiI1MDAwIiwiMjEiOiI1MDAwIiwiMjIiOiI0LjQuMCIsIjIzIjoiMC4wLjAiLCIyNSI6IjEiLCIyNiI6IjQwMDAiLCIyNyI6IjEwMCIsIjMiOiI1IiwiNCI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhfGFkX3BlcnNvbmFsaXphdGlvbiIsIjQ0IjoiMTUwMDAiLCI0OCI6IjMwMDAwIiwiNSI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhIiwiNiI6IjEiLCI2MSI6IjEwMDAiLCI2MiI6IkE2T05IUlk3L2J2QnJvK0lNWmQvYTZMTmpuN1NTdjk5OVNrTi9oRkFFOUw2dk1yMzRkTmdmZFNWZFltdjRVK05IWmcxc3hkMzhSdGNpUnBSVXRJUlBnUUFBQUNDZXlKdmNtbG5hVzRpT2lKb2RIUndjem92TDNkM2R5NW5iMjluYkdWMFlXZHRZVzVoWjJWeUxtTnZiVG8wTkRNaUxDSm1aV0YwZFhKbElqb2lVMmhoY21Wa1YyOXlhMlZ5UlhoMFpXNWtaV1JNYVdabGRHbHRaU0lzSW1WNGNHbHllU0k2TVRjM05qY3lPVFl3TUN3aWFYTlVhR2x5WkZCaGNuUjVJanAwY25WbGZRPT0iLCI2MyI6IjEwMDAiLCI2NiI6IjEwMCIsIjciOiIxMCJ9LCI0OCI6dHJ1ZSwiNSI6IkctQ1RCTkVaSzUxMSIsIjUxIjp0cnVlLCI1NSI6WyJHLUNUQk5FWks1MTEiXSwiNTYiOlt7IjEiOjQwMywiMyI6MC41LCI0IjoxMTU5Mzg0NjUsIjUiOjExNTkzODQ2NiwiNiI6MCwiNyI6Mn0seyIxIjo0MDQsIjMiOjAuNSwiNCI6MTE1OTM4NDY4LCI1IjoxMTU5Mzg0NjksIjYiOjAsIjciOjF9LHsiMSI6NjAyLCIzIjowLjAxLCI0IjoxMjAxMjQ0NTUsIjUiOjEyMDEyNDQ1MywiNiI6MTIwMTI0NDU0LCI3IjozfSx7IjEiOjU2OSwiMiI6dHJ1ZX0seyIxIjo0NzUsIjIiOnRydWV9LHsiMSI6NTAyLCIyIjp0cnVlfSx7IjEiOjU3NywiMiI6dHJ1ZX0seyIxIjo1NjgsIjMiOjAuMDEsIjQiOjExOTc5MTc0OSwiNSI6MTE5NzkxNzQ4LCI2IjowLCI3IjoxfSx7IjEiOjQ5MCwiMiI6dHJ1ZX0seyIxIjo0OTEsIjMiOjAuMDEsIjQiOjExODAxMjAwNywiNSI6MTE4MDEyMDA4LCI2IjoxMTgwMTIwMDksIjciOjF9LHsiMSI6NDgwLCIyIjp0cnVlfSx7IjEiOjU5NCwiMyI6MC4wMSwiNCI6MTE5NzkzOTc0LCI1IjoxMTk3OTM5NzIsIjYiOjExOTc5Mzk3MywiNyI6MX0seyIxIjo1OTksIjIiOnRydWV9LHsiMSI6NTgwLCIzIjowLjEsIjQiOjExOTUyNzAyMCwiNSI6MTE5NTI3MDE5LCI2IjowLCI3IjoxfSx7IjEiOjUyMywiMiI6dHJ1ZX0seyIxIjo1ODEsIjMiOjAuMDEsIjQiOjExOTk0ODg1NCwiNSI6MTE5OTQ4ODUyLCI2IjoxMTk5NDg4NTMsIjciOjN9LHsiMSI6NTU1LCIzIjowLjAxLCI0IjoxMTkyNTk2MDYsIjUiOjExOTI1OTYwNSwiNiI6MCwiNyI6Mn0seyIxIjo1MDQsIjIiOnRydWV9LHsiMSI6NDYyLCIzIjowLjA1LCI0IjoxMTg4MDY1MjQsIjUiOjExODgwNjUyNSwiNiI6MTE4ODA2NTI2LCI3IjoxfSx7IjEiOjQxMywiMiI6dHJ1ZX0seyIxIjo1OTMsIjIiOnRydWV9LHsiMSI6NTA2LCIyIjp0cnVlfSx7IjEiOjUwMCwiMiI6dHJ1ZX0seyIxIjo1NjEsIjMiOjAuMDAxLCI0IjoxMTk0MDQ3MDMsIjUiOjExOTQwNDcwMiwiNiI6MCwiNyI6MX0seyIxIjo0ODEsIjMiOjAuMDAxLCI0IjoxMTk0MDQ3MDEsIjUiOjExOTQwNDcwMCwiNiI6MCwiNyI6MX0seyIxIjo0NTAsIjMiOjAuMDEsIjQiOjExNzIyNzcxNCwiNSI6MTE3MjI3NzE1LCI2IjoxMTcyMjc3MTYsIjciOjN9LHsiMSI6NTgzLCIzIjowLjUsIjQiOjExOTg5NjgwMywiNSI6MTE5ODk2ODAyLCI2IjowLCI3IjoxfSx7IjEiOjQ1OCwiMiI6dHJ1ZX0seyIxIjo1ODIsIjMiOjAuMDEsIjQiOjExOTM4MTY2NCwiNSI6MTE5MzgxNjYyLCI2IjoxMTkzODE2NjMsIjciOjF9LHsiMSI6NTcwLCIyIjp0cnVlfSx7IjEiOjQ5OCwiMyI6MC4yLCI0IjoxMTU2MTY5ODUsIjUiOjExNTYxNjk4NiwiNiI6MCwiNyI6MX0seyIxIjo1OTUsIjIiOnRydWV9LHsiMSI6NTg5LCIzIjowLjAxLCI0IjoxMjAwODQyMTUsIjUiOjEyMDA4NDIxNCwiNiI6MCwiNyI6MX0seyIxIjo0OTUsIjMiOjAuMDUsIjQiOjExODEzMTgxMCwiNSI6MTE4MTMxODA4LCI2IjoxMTgxMzE4MDksIjciOjN9LHsiMSI6NTg3LCIzIjowLjEsIjQiOjExOTczMjE3MSwiNSI6MTE5NzMyMTcwLCI2IjowLCI3IjozfSx7IjEiOjU4NCwiMiI6dHJ1ZX0seyIxIjo1NjQsIjMiOjAuMDAwMSwiNCI6MTE5MjA1MzE3LCI1IjoxMTkyMDUzMTUsIjYiOjExOTIwNTMxNiwiNyI6MX0seyIxIjo1NTcsIjIiOnRydWV9LHsiMSI6NDI3LCIzIjowLjEsIjQiOjExOTcyNDMyMiwiNSI6MTE5NzI0MzIwLCI2IjoxMTk3MjQzMjEsIjciOjJ9LHsiMSI6NTc2LCIzIjowLjAxLCI0IjoxMTkzMTc4MTAsIjUiOjExOTMxNzgxMSwiNiI6MTE5MzE4MTc3LCI3IjozfSx7IjEiOjU3MywiMiI6dHJ1ZX0seyIxIjo0OTksIjIiOnRydWV9LHsiMSI6NTE2LCIzIjowLjEsIjQiOjExODM5NTMzNSwiNSI6MTE4Mzk1MzMzLCI2IjoxMTgzOTUzMzQsIjciOjF9LHsiMSI6NTI0LCIyIjp0cnVlfV0sIjU5IjpbIkctQ1RCTkVaSzUxMSJdLCI2IjoiODYwODU4NjgiLCI2MiI6dHJ1ZSwiNjMiOjAuMDA1fQosInBlcm1pc3Npb25zIjp7CiJfX2MiOnt9CiwKIl9fY2NkX2F1dG9fcmVkYWN0Ijp7fQosCiJfX2NjZF9jb252ZXJzaW9uX21hcmtpbmciOnt9CiwKIl9fY2NkX2VtX2Rvd25sb2FkIjp7Imxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLmxpbmtDbGljayJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9fQosCiJfX2NjZF9lbV9vdXRib3VuZF9jbGljayI6eyJnZXRfdXJsIjp7InVybFBhcnRzIjoiYW55IiwicXVlcmllc0FsbG93ZWQiOiJhbnkifSwibGlzdGVuX2RhdGFfbGF5ZXIiOnsiYWNjZXNzVHlwZSI6InNwZWNpZmljIiwiYWxsb3dlZEV2ZW50cyI6WyJndG0ubGlua0NsaWNrIl19LCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSI6e30sImRldGVjdF9saW5rX2NsaWNrX2V2ZW50cyI6eyJhbGxvd1dhaXRGb3JUYWdzIjoiIn19CiwKIl9fY2NkX2VtX3BhZ2VfdmlldyI6eyJsaXN0ZW5fZGF0YV9sYXllciI6eyJhY2Nlc3NUeXBlIjoic3BlY2lmaWMiLCJhbGxvd2VkRXZlbnRzIjpbImd0bS5oaXN0b3J5Q2hhbmdlLXYyIl19LCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSI6e30sImRldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMiOnt9fQosCiJfX2NjZF9lbV9zY3JvbGwiOnsibGlzdGVuX2RhdGFfbGF5ZXIiOnsiYWNjZXNzVHlwZSI6InNwZWNpZmljIiwiYWxsb3dlZEV2ZW50cyI6WyJndG0uc2Nyb2xsRGVwdGgiXX0sImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIjp7fSwiZGV0ZWN0X3Njcm9sbF9ldmVudHMiOnt9fQosCiJfX2NjZF9lbV9zaXRlX3NlYXJjaCI6eyJnZXRfdXJsIjp7InVybFBhcnRzIjoiYW55IiwicXVlcmllc0FsbG93ZWQiOiJhbnkifSwicmVhZF9jb250YWluZXJfZGF0YSI6e319CiwKIl9fY2NkX2VtX3ZpZGVvIjp7Imxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLnZpZGVvIl19LCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSI6e30sImRldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cyI6eyJhbGxvd0ZpeE1pc3NpbmdKYXZhU2NyaXB0QXBpIjpmYWxzZX19CiwKIl9fY2NkX2dhX2Fkc19saW5rIjp7ImdldF91c2VyX2FnZW50Ijp7fSwicmVhZF9ldmVudF9kYXRhIjp7ImV2ZW50RGF0YUFjY2VzcyI6ImFueSJ9LCJyZWFkX3RpdGxlIjp7fSwicmVhZF9zY3JlZW5fZGltZW5zaW9ucyI6e30sImFjY2Vzc19jb25zZW50Ijp7ImNvbnNlbnRUeXBlcyI6W3siY29uc2VudFR5cGUiOiJhZF9wZXJzb25hbGl6YXRpb24iLCJyZWFkIjp0cnVlLCJ3cml0ZSI6ZmFsc2V9LHsiY29uc2VudFR5cGUiOiJhZF9zdG9yYWdlIiwicmVhZCI6dHJ1ZSwid3JpdGUiOmZhbHNlfSx7ImNvbnNlbnRUeXBlIjoiYWRfdXNlcl9kYXRhIiwicmVhZCI6dHJ1ZSwid3JpdGUiOmZhbHNlfV19LCJnZXRfdXJsIjp7InVybFBhcnRzIjoiYW55In0sImdldF9yZWZlcnJlciI6eyJ1cmxQYXJ0cyI6ImFueSJ9LCJhY2Nlc3NfZ2xvYmFscyI6eyJrZXlzIjpbeyJrZXkiOiJfX2dzYUV4cC5pZCIsInJlYWQiOmZhbHNlLCJ3cml0ZSI6ZmFsc2UsImV4ZWN1dGUiOnRydWV9XX19CiwKIl9fY2NkX2dhX2ZpcnN0Ijp7InJlYWRfZG9tX2VsZW1lbnRzIjp7ImFsbG93ZWRDc3NTZWxlY3RvcnMiOiJhbnkifSwiZ2V0X3VybCI6eyJ1cmxQYXJ0cyI6InNwZWNpZmljIiwicHJvdG9jb2wiOnRydWUsImhvc3QiOnRydWV9fQosCiJfX2NjZF9nYV9sYXN0Ijp7fQosCiJfX2NjZF9nYV9yZWdzY29wZSI6eyJyZWFkX2NvbnRhaW5lcl9kYXRhIjp7fX0KLAoiX19lIjp7InJlYWRfZXZlbnRfZGF0YSI6eyJldmVudERhdGFBY2Nlc3MiOiJzcGVjaWZpYyIsImtleVBhdHRlcm5zIjpbImV2ZW50Il19fQosCiJfX2djdCI6eyJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSI6e319CiwKIl9fb2d0XzFwX2RhdGFfdjIiOnsiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSI6eyJsaW1pdERhdGFTb3VyY2VzIjp0cnVlLCJhbGxvd0F1dG9EYXRhU291cmNlcyI6dHJ1ZSwiYWxsb3dNYW51YWxEYXRhU291cmNlcyI6ZmFsc2UsImFsbG93Q29kZURhdGFTb3VyY2VzIjpmYWxzZX19CiwKIl9fb2d0X2Nyb3NzX2RvbWFpbiI6e30KLAoiX19vZ3RfZG1hIjp7ImFjY2Vzc19jb25zZW50Ijp7ImNvbnNlbnRUeXBlcyI6W3siY29uc2VudFR5cGUiOiJhZF91c2VyX2RhdGEiLCJyZWFkIjpmYWxzZSwid3JpdGUiOnRydWV9LHsiY29uc2VudFR5cGUiOiJhZF9zdG9yYWdlIiwicmVhZCI6dHJ1ZSwid3JpdGUiOmZhbHNlfV19fQosCiJfX29ndF9ldmVudF9jcmVhdGUiOnsiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9fQosCiJfX29ndF9nb29nbGVfc2lnbmFscyI6eyJyZWFkX2NvbnRhaW5lcl9kYXRhIjp7fX0KLAoiX19zZXRfcHJvZHVjdF9zZXR0aW5ncyI6e30KCgp9CgoKCiwic2VjdXJpdHlfZ3JvdXBzIjp7CiJnb29nbGUiOlsKIl9fYyIKLAoiX19jY2RfYXV0b19yZWRhY3QiCiwKIl9fY2NkX2NvbnZlcnNpb25fbWFya2luZyIKLAoiX19jY2RfZW1fZG93bmxvYWQiCiwKIl9fY2NkX2VtX291dGJvdW5kX2NsaWNrIgosCiJfX2NjZF9lbV9wYWdlX3ZpZXciCiwKIl9fY2NkX2VtX3Njcm9sbCIKLAoiX19jY2RfZW1fc2l0ZV9zZWFyY2giCiwKIl9fY2NkX2VtX3ZpZGVvIgosCiJfX2NjZF9nYV9hZHNfbGluayIKLAoiX19jY2RfZ2FfZmlyc3QiCiwKIl9fY2NkX2dhX2xhc3QiCiwKIl9fY2NkX2dhX3JlZ3Njb3BlIgosCiJfX2UiCiwKIl9fZ2N0IgosCiJfX29ndF8xcF9kYXRhX3YyIgosCiJfX29ndF9jcm9zc19kb21haW4iCiwKIl9fb2d0X2RtYSIKLAoiX19vZ3RfZXZlbnRfY3JlYXRlIgosCiJfX29ndF9nb29nbGVfc2lnbmFscyIKLAoiX19zZXRfcHJvZHVjdF9zZXR0aW5ncyIKCl0KCgp9CgoKCgoKfTsKCgoKCnZhciBrLGFhPXR5cGVvZiBPYmplY3QuY3JlYXRlPT0iZnVuY3Rpb24iP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O2IucHJvdG90eXBlPWE7cmV0dXJuIG5ldyBifSxiYT10eXBlb2YgT2JqZWN0LmRlZmluZVByb3BlcnRpZXM9PSJmdW5jdGlvbiI/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGEsYixjKXtpZihhPT1BcnJheS5wcm90b3R5cGV8fGE9PU9iamVjdC5wcm90b3R5cGUpcmV0dXJuIGE7YVtiXT1jLnZhbHVlO3JldHVybiBhfSxjYT1mdW5jdGlvbihhKXtmb3IodmFyIGI9WyJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyxhLCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csIm9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmLCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsJiZnbG9iYWxdLGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkJiZkLk1hdGg9PU1hdGgpcmV0dXJuIGR9dGhyb3cgRXJyb3IoIkNhbm5vdCBmaW5kIGdsb2JhbCBvYmplY3QiKTsKfSxoYT1jYSh0aGlzKSxpYT10eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmdHlwZW9mIFN5bWJvbCgieCIpPT09InN5bWJvbCIsa2E9e30sbGE9e30sbmE9ZnVuY3Rpb24oYSxiLGMpe2lmKCFjfHxhIT1udWxsKXt2YXIgZD1sYVtiXTtpZihkPT1udWxsKXJldHVybiBhW2JdO3ZhciBlPWFbZF07cmV0dXJuIGUhPT12b2lkIDA/ZTphW2JdfX0sb2E9ZnVuY3Rpb24oYSxiLGMpe2lmKGIpYTp7dmFyIGQ9YS5zcGxpdCgiLiIpLGU9ZC5sZW5ndGg9PT0xLGY9ZFswXSxnOyFlJiZmIGluIGthP2c9a2E6Zz1oYTtmb3IodmFyIGg9MDtoPGQubGVuZ3RoLTE7aCsrKXt2YXIgbD1kW2hdO2lmKCEobCBpbiBnKSlicmVhayBhO2c9Z1tsXX12YXIgbj1kW2QubGVuZ3RoLTFdLHA9aWEmJmM9PT0iZXM2Ij9nW25dOm51bGwscT1iKHApO2lmKHEhPW51bGwpaWYoZSliYShrYSxuLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cX0pO2Vsc2UgaWYocSE9PXApe2lmKGxhW25dPT09dm9pZCAwKXt2YXIgcj0KTWF0aC5yYW5kb20oKSoxRTk+Pj4wO2xhW25dPWlhP2hhLlN5bWJvbChuKToiJGpzY3AkIityKyIkIitufWJhKGcsbGFbbl0se2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpxfSl9fX0scGE7aWYoaWEmJnR5cGVvZiBPYmplY3Quc2V0UHJvdG90eXBlT2Y9PSJmdW5jdGlvbiIpcGE9T2JqZWN0LnNldFByb3RvdHlwZU9mO2Vsc2V7dmFyIHJhO2E6e3ZhciB0YT17YTohMH0sdWE9e307dHJ5e3VhLl9fcHJvdG9fXz10YTtyYT11YS5hO2JyZWFrIGF9Y2F0Y2goYSl7fXJhPSExfXBhPXJhP2Z1bmN0aW9uKGEsYil7YS5fX3Byb3RvX189YjtpZihhLl9fcHJvdG9fXyE9PWIpdGhyb3cgbmV3IFR5cGVFcnJvcihhKyIgaXMgbm90IGV4dGVuc2libGUiKTtyZXR1cm4gYX06bnVsbH0KdmFyIHZhPXBhLHdhPWZ1bmN0aW9uKGEsYil7YS5wcm90b3R5cGU9YWEoYi5wcm90b3R5cGUpO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7aWYodmEpdmEoYSxiKTtlbHNlIGZvcih2YXIgYyBpbiBiKWlmKGMhPSJwcm90b3R5cGUiKWlmKE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKXt2YXIgZD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk7ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsYyxkKX1lbHNlIGFbY109YltjXTthLkZ0PWIucHJvdG90eXBlfSx4YT1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX0sbT1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yJiZhW1N5bWJvbC5pdGVyYXRvcl07aWYoYilyZXR1cm4gYi5jYWxsKGEpO2lmKHR5cGVvZiBhLmxlbmd0aD09Im51bWJlciIpcmV0dXJue25leHQ6eGEoYSl9Owp0aHJvdyBFcnJvcihTdHJpbmcoYSkrIiBpcyBub3QgYW4gaXRlcmFibGUgb3IgQXJyYXlMaWtlIik7fSx5YT1mdW5jdGlvbihhKXtmb3IodmFyIGIsYz1bXTshKGI9YS5uZXh0KCkpLmRvbmU7KWMucHVzaChiLnZhbHVlKTtyZXR1cm4gY30sdz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEFycmF5P2E6eWEobShhKSl9LEFhPWZ1bmN0aW9uKGEpe3JldHVybiB6YShhLGEpfSx6YT1mdW5jdGlvbihhLGIpe2EucmF3PWI7T2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoYSksT2JqZWN0LmZyZWV6ZShiKSk7cmV0dXJuIGF9LEJhPWlhJiZ0eXBlb2YgbmEoT2JqZWN0LCJhc3NpZ24iKT09ImZ1bmN0aW9uIj9uYShPYmplY3QsImFzc2lnbiIpOmZ1bmN0aW9uKGEsYil7aWYoYT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJObyBudWxsaXNoIGFyZyIpO2E9T2JqZWN0KGEpO2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTsKaWYoZClmb3IodmFyIGUgaW4gZClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZCxlKSYmKGFbZV09ZFtlXSl9cmV0dXJuIGF9O29hKCJPYmplY3QuYXNzaWduIixmdW5jdGlvbihhKXtyZXR1cm4gYXx8QmF9LCJlczYiKTt2YXIgQ2E9ZnVuY3Rpb24oYSl7aWYoIShhIGluc3RhbmNlb2YgT2JqZWN0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJdGVyYXRvciByZXN1bHQgIithKyIgaXMgbm90IGFuIG9iamVjdCIpO30sRGE9ZnVuY3Rpb24oKXt0aGlzLmZhPSExO3RoaXMuUj1udWxsO3RoaXMuamE9dm9pZCAwO3RoaXMuSD0xO3RoaXMuTj10aGlzLlo9MDt0aGlzLkxhPXRoaXMuSz1udWxsfSxFYT1mdW5jdGlvbihhKXtpZihhLmZhKXRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IHJ1bm5pbmciKTthLmZhPSEwfTtEYS5wcm90b3R5cGUueWE9ZnVuY3Rpb24oYSl7dGhpcy5qYT1hfTsKdmFyIEdhPWZ1bmN0aW9uKGEsYil7YS5LPXthbzpiLGlzRXhjZXB0aW9uOiEwfTthLkg9YS5afHxhLk59O0RhLnByb3RvdHlwZS5nZXROZXh0QWRkcmVzc0pzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O0RhLnByb3RvdHlwZS5nZXRZaWVsZFJlc3VsdEpzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmphfTtEYS5wcm90b3R5cGUucmV0dXJuPWZ1bmN0aW9uKGEpe3RoaXMuSz17cmV0dXJuOmF9O3RoaXMuSD10aGlzLk59O0RhLnByb3RvdHlwZVsicmV0dXJuIl09RGEucHJvdG90eXBlLnJldHVybjtEYS5wcm90b3R5cGUuQWo9ZnVuY3Rpb24oYSl7dGhpcy5LPXtuZDphfTt0aGlzLkg9dGhpcy5OfTtEYS5wcm90b3R5cGUuanVtcFRocm91Z2hGaW5hbGx5QmxvY2tzPURhLnByb3RvdHlwZS5BajtEYS5wcm90b3R5cGUuYWM9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9YjtyZXR1cm57dmFsdWU6YX19O0RhLnByb3RvdHlwZS55aWVsZD1EYS5wcm90b3R5cGUuYWM7CkRhLnByb3RvdHlwZS54cz1mdW5jdGlvbihhLGIpe3ZhciBjPW0oYSksZD1jLm5leHQoKTtDYShkKTtpZihkLmRvbmUpdGhpcy5qYT1kLnZhbHVlLHRoaXMuSD1iO2Vsc2UgcmV0dXJuIHRoaXMuUj1jLHRoaXMuYWMoZC52YWx1ZSxiKX07RGEucHJvdG90eXBlLnlpZWxkQWxsPURhLnByb3RvdHlwZS54cztEYS5wcm90b3R5cGUubmQ9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O0RhLnByb3RvdHlwZS5qdW1wVG89RGEucHJvdG90eXBlLm5kO0RhLnByb3RvdHlwZS5Eaj1mdW5jdGlvbigpe3RoaXMuSD0wfTtEYS5wcm90b3R5cGUuanVtcFRvRW5kPURhLnByb3RvdHlwZS5EajtEYS5wcm90b3R5cGUuTmo9ZnVuY3Rpb24oYSxiKXt0aGlzLlo9YTtiIT12b2lkIDAmJih0aGlzLk49Yil9O0RhLnByb3RvdHlwZS5zZXRDYXRjaEZpbmFsbHlCbG9ja3M9RGEucHJvdG90eXBlLk5qO0RhLnByb3RvdHlwZS52Zz1mdW5jdGlvbihhKXt0aGlzLlo9MDt0aGlzLk49YXx8MH07CkRhLnByb3RvdHlwZS5zZXRGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLnZnO0RhLnByb3RvdHlwZS5Jaj1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuWj1ifHwwfTtEYS5wcm90b3R5cGUubGVhdmVUcnlCbG9jaz1EYS5wcm90b3R5cGUuSWo7RGEucHJvdG90eXBlLlBoPWZ1bmN0aW9uKGEpe3RoaXMuWj1hfHwwO3ZhciBiPXRoaXMuSy5hbzt0aGlzLks9bnVsbDtyZXR1cm4gYn07RGEucHJvdG90eXBlLmVudGVyQ2F0Y2hCbG9jaz1EYS5wcm90b3R5cGUuUGg7RGEucHJvdG90eXBlLmtkPWZ1bmN0aW9uKGEsYixjKXtjP3RoaXMuTGFbY109dGhpcy5LOnRoaXMuTGE9W3RoaXMuS107dGhpcy5aPWF8fDA7dGhpcy5OPWJ8fDB9O0RhLnByb3RvdHlwZS5lbnRlckZpbmFsbHlCbG9jaz1EYS5wcm90b3R5cGUua2Q7CkRhLnByb3RvdHlwZS5oZT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTGEuc3BsaWNlKGJ8fDApWzBdLGQ9dGhpcy5LPXRoaXMuS3x8YztkP2QuaXNFeGNlcHRpb24/dGhpcy5IPXRoaXMuWnx8dGhpcy5OOmQubmQhPXZvaWQgMCYmdGhpcy5OPGQubmQ/KHRoaXMuSD1kLm5kLHRoaXMuSz1udWxsKTp0aGlzLkg9dGhpcy5OOnRoaXMuSD1hfTtEYS5wcm90b3R5cGUubGVhdmVGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLmhlO0RhLnByb3RvdHlwZS5mZT1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IEhhKGEpfTtEYS5wcm90b3R5cGUuZm9ySW49RGEucHJvdG90eXBlLmZlO3ZhciBIYT1mdW5jdGlvbihhKXt0aGlzLks9YTt0aGlzLkg9W107Zm9yKHZhciBiIGluIGEpdGhpcy5ILnB1c2goYik7dGhpcy5ILnJldmVyc2UoKX07SGEucHJvdG90eXBlLmhvPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLkgubGVuZ3RoPjA7KXt2YXIgYT10aGlzLkgucG9wKCk7aWYoYSBpbiB0aGlzLkspcmV0dXJuIGF9cmV0dXJuIG51bGx9OwpIYS5wcm90b3R5cGUuZ2V0TmV4dD1IYS5wcm90b3R5cGUuaG87CnZhciBJYT1mdW5jdGlvbihhKXt0aGlzLkg9bmV3IERhO3RoaXMuSz1hfSxMYT1mdW5jdGlvbihhLGIpe0VhKGEuSCk7dmFyIGM9YS5ILlI7aWYoYylyZXR1cm4gSmEoYSwicmV0dXJuImluIGM/Y1sicmV0dXJuIl06ZnVuY3Rpb24oZCl7cmV0dXJue3ZhbHVlOmQsZG9uZTohMH19LGIsYS5ILnJldHVybik7YS5ILnJldHVybihiKTtyZXR1cm4gS2EoYSl9LEphPWZ1bmN0aW9uKGEsYixjLGQpe3RyeXt2YXIgZT1iLmNhbGwoYS5ILlIsYyk7Q2EoZSk7aWYoIWUuZG9uZSlyZXR1cm4gYS5ILmZhPSExLGU7dmFyIGY9ZS52YWx1ZX1jYXRjaChnKXtyZXR1cm4gYS5ILlI9bnVsbCxHYShhLkgsZyksS2EoYSl9YS5ILlI9bnVsbDtkLmNhbGwoYS5ILGYpO3JldHVybiBLYShhKX0sS2E9ZnVuY3Rpb24oYSl7Zm9yKDthLkguSDspdHJ5e3ZhciBiPWEuSyhhLkgpO2lmKGIpcmV0dXJuIGEuSC5mYT0hMSx7dmFsdWU6Yi52YWx1ZSxkb25lOiExfX1jYXRjaChkKXthLkguamE9dm9pZCAwLEdhKGEuSCwKZCl9YS5ILmZhPSExO2lmKGEuSC5LKXt2YXIgYz1hLkguSzthLkguSz1udWxsO2lmKGMuaXNFeGNlcHRpb24pdGhyb3cgYy5hbztyZXR1cm57dmFsdWU6Yy5yZXR1cm4sZG9uZTohMH19cmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfX0sTWE9ZnVuY3Rpb24oYSl7dGhpcy5uZXh0PWZ1bmN0aW9uKGIpe3ZhciBjO0VhKGEuSCk7YS5ILlI/Yz1KYShhLGEuSC5SLm5leHQsYixhLkgueWEpOihhLkgueWEoYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMudGhyb3c9ZnVuY3Rpb24oYil7dmFyIGM7RWEoYS5IKTthLkguUj9jPUphKGEsYS5ILlJbInRocm93Il0sYixhLkgueWEpOihHYShhLkgsYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMucmV0dXJuPWZ1bmN0aW9uKGIpe3JldHVybiBMYShhLGIpfTt0aGlzW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319LE5hPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IE1hKG5ldyBJYShiKSk7dmEmJmEucHJvdG90eXBlJiZ2YShjLAphLnByb3RvdHlwZSk7cmV0dXJuIGN9LE9hPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPU51bWJlcih0aGlzKSxiPVtdLGM9YTtjPGFyZ3VtZW50cy5sZW5ndGg7YysrKWJbYy1hXT1hcmd1bWVudHNbY107cmV0dXJuIGJ9LFFhPWZ1bmN0aW9uKGEpe3JldHVybiBhfTsvKgoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgUmE9dGhpc3x8c2VsZixTYT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXt9Yy5wcm90b3R5cGU9Yi5wcm90b3R5cGU7YS5GdD1iLnByb3RvdHlwZTthLnByb3RvdHlwZT1uZXcgYzthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2EubnY9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgZz1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGg9MjtoPGFyZ3VtZW50cy5sZW5ndGg7aCsrKWdbaC0yXT1hcmd1bWVudHNbaF07cmV0dXJuIGIucHJvdG90eXBlW2VdLmFwcGx5KGQsZyl9fTt2YXIgVGE9ZnVuY3Rpb24oYSxiKXt0aGlzLnR5cGU9YTt0aGlzLmRhdGE9Yn07dmFyIFVhPWZ1bmN0aW9uKCl7dGhpcy5tYXA9e307dGhpcy5IPXt9fTtVYS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcFsiZHVzdC4iK2FdfTtVYS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9ImR1c3QuIithO3RoaXMuSC5oYXNPd25Qcm9wZXJ0eShjKXx8KHRoaXMubWFwW2NdPWIpfTtVYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eSgiZHVzdC4iK2EpfTtVYS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe3ZhciBiPSJkdXN0LiIrYTt0aGlzLkguaGFzT3duUHJvcGVydHkoYil8fGRlbGV0ZSB0aGlzLm1hcFtiXX07CnZhciBWYT1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYS5tYXApaWYoYS5tYXAuaGFzT3duUHJvcGVydHkoZCkpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO3N3aXRjaChiKXtjYXNlIDE6Yy5wdXNoKGUpO2JyZWFrO2Nhc2UgMjpjLnB1c2goYS5tYXBbZF0pO2JyZWFrO2Nhc2UgMzpjLnB1c2goW2UsYS5tYXBbZF1dKX19cmV0dXJuIGN9O1VhLnByb3RvdHlwZS5GYT1mdW5jdGlvbigpe3JldHVybiBWYSh0aGlzLDEpfTtVYS5wcm90b3R5cGUuaGM9ZnVuY3Rpb24oKXtyZXR1cm4gVmEodGhpcywyKX07VWEucHJvdG90eXBlLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIFZhKHRoaXMsMyl9O3ZhciBXYT1mdW5jdGlvbigpe307V2EucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7fTt2YXIgWGE9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9O3RoaXMucHJlZml4PSJndG0uIn07az1YYS5wcm90b3R5cGU7ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLnZhbHVlW3RoaXMucHJlZml4K1N0cmluZyhhKV09Yn07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVbdGhpcy5wcmVmaXgrU3RyaW5nKGEpXX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWUuaGFzT3duUHJvcGVydHkodGhpcy5wcmVmaXgrU3RyaW5nKGEpKX07ay5kZWxldGU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5wcmVmaXgrU3RyaW5nKGEpO3JldHVybiB0aGlzLnZhbHVlLmhhc093blByb3BlcnR5KGIpPyhkZWxldGUgdGhpcy52YWx1ZVtiXSwhMCk6ITF9O2suY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9fTsKay52YWx1ZXM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3JldHVybiBmdW5jdGlvbiBjKCl7dmFyIGQsZSxmO3JldHVybiBOYShjLGZ1bmN0aW9uKGcpe3N3aXRjaChnLkgpe2Nhc2UgMTpnLnZnKDIpLGU9Zy5mZShhLnZhbHVlKTtjYXNlIDQ6aWYoKGQ9ZS5obygpKT09bnVsbCl7Zy5uZCgyKTticmVha31pZighYS52YWx1ZS5oYXNPd25Qcm9wZXJ0eShkKSl7Zy5uZCg0KTticmVha31mPVFhO3JldHVybiBnLmFjKGEudmFsdWVbZF0sOCk7Y2FzZSA4OmYoZy5qYSk7Zy5uZCg0KTticmVhaztjYXNlIDI6Zy5rZCgpLGcuaGUoMCl9fSl9KCl9O2hhLk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFhhLnByb3RvdHlwZSx7c2l6ZTp7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMudmFsdWUpLmxlbmd0aH19fSk7CmZ1bmN0aW9uIFlhKCl7dHJ5e2lmKE1hcClyZXR1cm4gbmV3IE1hcH1jYXRjaChhKXt9cmV0dXJuIG5ldyBYYX07dmFyIFphPWZ1bmN0aW9uKCl7dGhpcy52YWx1ZXM9W119O1phLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7dGhpcy52YWx1ZXMuaW5kZXhPZihhKT09PS0xJiZ0aGlzLnZhbHVlcy5wdXNoKGEpfTtaYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnZhbHVlcy5pbmRleE9mKGEpPi0xfTt2YXIgJGE9ZnVuY3Rpb24oYSxiKXt0aGlzLmZhPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLlI9dGhpcy5LPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuTj1mdW5jdGlvbihkLGUsZil7cmV0dXJuIGQuYXBwbHkoZSxmKX07dGhpcy5IPVlhKCk7dmFyIGM7YTp7dHJ5e2lmKFNldCl7Yz1uZXcgU2V0O2JyZWFrIGF9fWNhdGNoKGQpe31jPW5ldyBaYX10aGlzLlo9Y307JGEucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhLGIpe2FiKHRoaXMsYSxiLCExKX07JGEucHJvdG90eXBlLlFoPWZ1bmN0aW9uKGEsYil7YWIodGhpcyxhLGIsITApfTt2YXIgYWI9ZnVuY3Rpb24oYSxiLGMsZCl7YS5IYnx8YS5aLmhhcyhiKXx8KGQmJmEuWi5hZGQoYiksYS5ILnNldChiLGMpKX07az0kYS5wcm90b3R5cGU7Cmsuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLkguaGFzKGEpJiZ0aGlzLnBhcmVudCYmdGhpcy5wYXJlbnQuaGFzKGEpP3RoaXMucGFyZW50LnNldChhLGIpOnRoaXMuWi5oYXMoYSl8fHRoaXMuSC5zZXQoYSxiKSl9O2suZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLkguaGFzKGEpP3RoaXMuSC5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLkguaGFzKGEpfHwhKCF0aGlzLnBhcmVudHx8IXRoaXMucGFyZW50LmhhcyhhKSl9O2sud2I9ZnVuY3Rpb24oKXt2YXIgYT1uZXcgJGEodGhpcy5mYSx0aGlzKTt0aGlzLksmJmEuUWIodGhpcy5LKTthLnNkKHRoaXMuTik7YS51ZSh0aGlzLlIpO3JldHVybiBhfTtrLmplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmF9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5LPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTsKay5zZD1mdW5jdGlvbihhKXt0aGlzLk49YX07ay5Qaj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk59O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkhiPSEwfTtrLnVlPWZ1bmN0aW9uKGEpe3RoaXMuUj1hfTtrLnhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUn07dmFyIGJiPWZ1bmN0aW9uKGEsYixjKXt2YXIgZDtkPUVycm9yLmNhbGwodGhpcyxhLm1lc3NhZ2UpO3RoaXMubWVzc2FnZT1kLm1lc3NhZ2U7InN0YWNrImluIGQmJih0aGlzLnN0YWNrPWQuc3RhY2spO3RoaXMudm89YTt0aGlzLlNuPWM9PT12b2lkIDA/ITE6Yzt0aGlzLks9W107dGhpcy5IPWJ9O3dhKGJiLEVycm9yKTt2YXIgY2I9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBiYj9hOm5ldyBiYihhLHZvaWQgMCwhMCl9O3ZhciBkYj1ZYSgpO2Z1bmN0aW9uIGViKGEsYil7Zm9yKHZhciBjLGQ9bShiKSxlPWQubmV4dCgpOyFlLmRvbmUmJiEoYz1mYihhLGUudmFsdWUpLGMgaW5zdGFuY2VvZiBUYSk7ZT1kLm5leHQoKSk7cmV0dXJuIGN9ZnVuY3Rpb24gZmIoYSxiKXt0cnl7dmFyIGM9YlswXSxkPWIuc2xpY2UoMSksZT1TdHJpbmcoYyksZj1kYi5oYXMoZSk/ZGIuZ2V0KGUpOmEuZ2V0KGUpO2lmKCFmfHx0eXBlb2YgZi5pbnZva2UhPT0iZnVuY3Rpb24iKXRocm93IGNiKEVycm9yKCJBdHRlbXB0aW5nIHRvIGV4ZWN1dGUgbm9uLWZ1bmN0aW9uICIrYlswXSsiLiIpKTtyZXR1cm4gZi5hcHBseShhLGQpfWNhdGNoKGgpe3ZhciBnPWEuZm8oKTtnJiZnKGgsYi5jb250ZXh0P3tpZDpiWzBdLGxpbmU6Yi5jb250ZXh0LmxpbmV9Om51bGwpO3Rocm93IGg7fX07dmFyIGdiPWZ1bmN0aW9uKCl7dGhpcy5LPW5ldyBXYTt0aGlzLkg9bmV3ICRhKHRoaXMuSyl9O2s9Z2IucHJvdG90eXBlO2suamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTtrLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07ay5zZD1mdW5jdGlvbihhKXt0aGlzLkguc2QoYSl9O2suZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5yayhbYV0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpfTtrLnJrPWZ1bmN0aW9uKCl7Zm9yKHZhciBhLGI9bShPYS5hcHBseSgwLGFyZ3VtZW50cykpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWE9ZmIodGhpcy5ILGMudmFsdWUpO3JldHVybiBhfTtrLkpxPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKSxjPXRoaXMuSC53YigpO2MudWUoYSk7Zm9yKHZhciBkLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlkPWZiKGMsZi52YWx1ZSk7cmV0dXJuIGR9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07dmFyIGhiPWZ1bmN0aW9uKGEsYil7dGhpcy5SPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLk49dGhpcy5IPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuSz1mdW5jdGlvbihjLGQsZSl7cmV0dXJuIGMuYXBwbHkoZCxlKX07dGhpcy52YWx1ZXM9bmV3IFVhfTtoYi5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7amIodGhpcyxhLGIsITEpfTtoYi5wcm90b3R5cGUuUWg9ZnVuY3Rpb24oYSxiKXtqYih0aGlzLGEsYiwhMCl9O3ZhciBqYj1mdW5jdGlvbihhLGIsYyxkKXtpZighYS5IYilpZihkKXt2YXIgZT1hLnZhbHVlcztlLnNldChiLGMpO2UuSFsiZHVzdC4iK2JdPSEwfWVsc2UgYS52YWx1ZXMuc2V0KGIsYyl9O2s9aGIucHJvdG90eXBlO2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLnZhbHVlcy5oYXMoYSkmJnRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5oYXMoYSk/dGhpcy5wYXJlbnQuc2V0KGEsYik6dGhpcy52YWx1ZXMuc2V0KGEsYikpfTsKay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVzLmhhcyhhKT90aGlzLnZhbHVlcy5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLnZhbHVlcy5oYXMoYSl8fCEoIXRoaXMucGFyZW50fHwhdGhpcy5wYXJlbnQuaGFzKGEpKX07ay53Yj1mdW5jdGlvbigpe3ZhciBhPW5ldyBoYih0aGlzLlIsdGhpcyk7dGhpcy5IJiZhLlFiKHRoaXMuSCk7YS5zZCh0aGlzLkspO2EudWUodGhpcy5OKTtyZXR1cm4gYX07ay5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlJ9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IfTtrLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSz1hfTtrLlBqPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuS307ay5aYT1mdW5jdGlvbigpe3RoaXMuSGI9ITB9O2sudWU9ZnVuY3Rpb24oYSl7dGhpcy5OPWF9O2sueGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OfTt2YXIga2I9ZnVuY3Rpb24oKXt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhfTtrPWtiLnByb3RvdHlwZTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5nZXQoYSl9O2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OYXx8dGhpcy5sYS5zZXQoYSxiKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuaGFzKGEpfTtrLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5GYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLkZhKCl9O2suaGM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5oYygpfTtrLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuZmMoKX07ay5aYT1mdW5jdGlvbigpe3RoaXMuTmE9ITB9O2suSGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OYX07ZnVuY3Rpb24gbGIoKXtmb3IodmFyIGE9bWIsYj17fSxjPTA7YzxhLmxlbmd0aDsrK2MpYlthW2NdXT1jO3JldHVybiBifWZ1bmN0aW9uIG5iKCl7dmFyIGE9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIjthKz1hLnRvTG93ZXJDYXNlKCkrIjAxMjM0NTY3ODktXyI7cmV0dXJuIGErIi4ifXZhciBtYixvYjtmdW5jdGlvbiBwYihhKXttYj1tYnx8bmIoKTtvYj1vYnx8bGIoKTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7Yys9Myl7dmFyIGQ9YysxPGEubGVuZ3RoLGU9YysyPGEubGVuZ3RoLGY9YS5jaGFyQ29kZUF0KGMpLGc9ZD9hLmNoYXJDb2RlQXQoYysxKTowLGg9ZT9hLmNoYXJDb2RlQXQoYysyKTowLGw9Zj4+MixuPShmJjMpPDw0fGc+PjQscD0oZyYxNSk8PDJ8aD4+NixxPWgmNjM7ZXx8KHE9NjQsZHx8KHA9NjQpKTtiLnB1c2gobWJbbF0sbWJbbl0sbWJbcF0sbWJbcV0pfXJldHVybiBiLmpvaW4oIiIpfQpmdW5jdGlvbiBxYihhKXtmdW5jdGlvbiBiKGwpe2Zvcig7ZDxhLmxlbmd0aDspe3ZhciBuPWEuY2hhckF0KGQrKykscD1vYltuXTtpZihwIT1udWxsKXJldHVybiBwO2lmKCEvXltcc1x4YTBdKiQvLnRlc3QobikpdGhyb3cgRXJyb3IoIlVua25vd24gYmFzZTY0IGVuY29kaW5nIGF0IGNoYXI6ICIrbik7fXJldHVybiBsfW1iPW1ifHxuYigpO29iPW9ifHxsYigpO2Zvcih2YXIgYz0iIixkPTA7Oyl7dmFyIGU9YigtMSksZj1iKDApLGc9Yig2NCksaD1iKDY0KTtpZihoPT09NjQmJmU9PT0tMSlyZXR1cm4gYztjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGU8PDJ8Zj4+NCk7ZyE9PTY0JiYoYys9U3RyaW5nLmZyb21DaGFyQ29kZShmPDw0JjI0MHxnPj4yKSxoIT09NjQmJihjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGc8PDYmMTkyfGgpKSl9fTt2YXIgcmI9e307ZnVuY3Rpb24gc2IoYSxiKXt2YXIgYz1yYlthXTtjfHwoYz1yYlthXT1bXSk7Y1tiXT0hMH1mdW5jdGlvbiB0Yigpe2RlbGV0ZSByYi5HQTRfRVZFTlR9ZnVuY3Rpb24gdWIoKXt2YXIgYT12Yi5ILnNsaWNlKCk7cmIuR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUw9YX1mdW5jdGlvbiB3YihhKXtmb3IodmFyIGI9W10sYz0wLGQ9MDtkPGEubGVuZ3RoO2QrKylkJTg9PT0wJiZkPjAmJihiLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShjKSksYz0wKSxhW2RdJiYoY3w9MTw8ZCU4KTtjPjAmJmIucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGMpKTtyZXR1cm4gcGIoYi5qb2luKCIiKSkucmVwbGFjZSgvXC4rJC8sIiIpfTtmdW5jdGlvbiB4Yigpe31mdW5jdGlvbiB5YihhKXtyZXR1cm4gdHlwZW9mIGE9PT0iZnVuY3Rpb24ifWZ1bmN0aW9uIHpiKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifWZ1bmN0aW9uIEFiKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIiJiYhaXNOYU4oYSl9ZnVuY3Rpb24gQmIoYSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YTpbYV19ZnVuY3Rpb24gQ2IoYSxiKXtpZihhJiZBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10mJmIoYVtjXSkpcmV0dXJuIGFbY119ZnVuY3Rpb24gRGIoYSxiKXtpZighQWIoYSl8fCFBYihiKXx8YT5iKWE9MCxiPTIxNDc0ODM2NDc7cmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSooYi1hKzEpK2EpfQpmdW5jdGlvbiBFYihhLGIpe2Zvcih2YXIgYz1uZXcgRmIsZD0wO2Q8YS5sZW5ndGg7ZCsrKWMuc2V0KGFbZF0sITApO2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7ZSsrKWlmKGMuZ2V0KGJbZV0pKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEdiKGEsYil7Zm9yKHZhciBjIGluIGEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYykmJmIoYyxhW2NdKX1mdW5jdGlvbiBIYihhKXtyZXR1cm4hIWEmJihPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoYSk9PT0iW29iamVjdCBBcmd1bWVudHNdInx8T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsImNhbGxlZSIpKX1mdW5jdGlvbiBJYihhKXtyZXR1cm4gTWF0aC5yb3VuZChOdW1iZXIoYSkpfHwwfWZ1bmN0aW9uIEpiKGEpe3JldHVybiJmYWxzZSI9PT1TdHJpbmcoYSkudG9Mb3dlckNhc2UoKT8hMTohIWF9CmZ1bmN0aW9uIEtiKGEpe3ZhciBiPVtdO2lmKEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspYi5wdXNoKFN0cmluZyhhW2NdKSk7cmV0dXJuIGJ9ZnVuY3Rpb24gTGIoYSl7cmV0dXJuIGE/YS5yZXBsYWNlKC9eXHMrfFxzKyQvZywiIik6IiJ9ZnVuY3Rpb24gTWIoKXtyZXR1cm4gbmV3IERhdGUoRGF0ZS5ub3coKSl9ZnVuY3Rpb24gTmIoKXtyZXR1cm4gTWIoKS5nZXRUaW1lKCl9dmFyIEZiPWZ1bmN0aW9uKCl7dGhpcy5wcmVmaXg9Imd0bS4iO3RoaXMudmFsdWVzPXt9fTtGYi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV09Yn07RmIucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV19O0ZiLnByb3RvdHlwZS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5nZXQoYSkhPT12b2lkIDB9OwpmdW5jdGlvbiBPYihhLGIsYyl7cmV0dXJuIGEmJmEuaGFzT3duUHJvcGVydHkoYik/YVtiXTpjfWZ1bmN0aW9uIFBiKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPXZvaWQgMDt0cnl7YygpfWNhdGNoKGQpe319fX1mdW5jdGlvbiBRYihhLGIpe2Zvcih2YXIgYyBpbiBiKWIuaGFzT3duUHJvcGVydHkoYykmJihhW2NdPWJbY10pfWZ1bmN0aW9uIFJiKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyljLnB1c2goYVtkXSksYy5wdXNoLmFwcGx5KGMsYlthW2RdXXx8W10pO3JldHVybiBjfWZ1bmN0aW9uIFNiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoMCxiLmxlbmd0aCk9PT1ifWZ1bmN0aW9uIFRiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoYS5sZW5ndGgtYi5sZW5ndGgsYS5sZW5ndGgpPT09Yn0KZnVuY3Rpb24gVWIoYSxiLGMpe2M9Y3x8W107Zm9yKHZhciBkPWEsZT0wO2U8Yi5sZW5ndGgtMTtlKyspe2lmKCFkLmhhc093blByb3BlcnR5KGJbZV0pKXJldHVybjtkPWRbYltlXV07aWYoYy5pbmRleE9mKGQpPj0wKXJldHVybn1yZXR1cm4gZH1mdW5jdGlvbiBWYihhLGIpe2Zvcih2YXIgYz17fSxkPWMsZT1hLnNwbGl0KCIuIiksZj0wO2Y8ZS5sZW5ndGgtMTtmKyspZD1kW2VbZl1dPXt9O2RbZVtlLmxlbmd0aC0xXV09YjtyZXR1cm4gY312YXIgV2I9L15cd3sxLDl9JC87ZnVuY3Rpb24gWWIoYSxiKXthPWF8fHt9O2I9Ynx8IiwiO3ZhciBjPVtdO0diKGEsZnVuY3Rpb24oZCxlKXtXYi50ZXN0KGQpJiZlJiZjLnB1c2goZCl9KTtyZXR1cm4gYy5qb2luKGIpfQpmdW5jdGlvbiBaYihhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hLmNoYXJDb2RlQXQoYyk7ZDwxMjg/Yi5wdXNoKGQpOmQ8MjA0OD9iLnB1c2goMTkyfGQ+PjYsMTI4fGQmNjMpOmQ8NTUyOTZ8fGQ+PTU3MzQ0P2IucHVzaCgyMjR8ZD4+MTIsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpOihkPTY1NTM2KygoZCYxMDIzKTw8MTB8YS5jaGFyQ29kZUF0KCsrYykmMTAyMyksYi5wdXNoKDI0MHxkPj4xOCwxMjh8ZD4+MTImNjMsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpKX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYil9ZnVuY3Rpb24gJGIoYSl7aWYoIWEpcmV0dXJuIGE7dmFyIGI9YTt0cnl7Yj1kZWNvZGVVUklDb21wb25lbnQoYSl9Y2F0Y2goZCl7fXZhciBjPWIuc3BsaXQoIiwiKTtyZXR1cm4gYy5sZW5ndGg9PT0yJiZjWzBdPT09Y1sxXT9jWzBdOmF9CmZ1bmN0aW9uIGFjKGEsYixjKXtmdW5jdGlvbiBkKG4pe3ZhciBwPW4uc3BsaXQoIj0iKVswXTtpZihhLmluZGV4T2YocCk8MClyZXR1cm4gbjtpZihjIT09dm9pZCAwKXJldHVybiBwKyI9IitjfWZ1bmN0aW9uIGUobil7cmV0dXJuIG4uc3BsaXQoIiYiKS5tYXAoZCkuZmlsdGVyKGZ1bmN0aW9uKHApe3JldHVybiBwIT09dm9pZCAwfSkuam9pbigiJiIpfXZhciBmPWIuaHJlZi5zcGxpdCgvWz8jXS8pWzBdLGc9Yi5zZWFyY2gsaD1iLmhhc2g7Z1swXT09PSI/IiYmKGc9Zy5zdWJzdHJpbmcoMSkpO2hbMF09PT0iIyImJihoPWguc3Vic3RyaW5nKDEpKTtnPWUoZyk7aD1lKGgpO2chPT0iIiYmKGc9Ij8iK2cpO2ghPT0iIiYmKGg9IiMiK2gpO3ZhciBsPSIiK2YrZytoO2xbbC5sZW5ndGgtMV09PT0iLyImJihsPWwuc3Vic3RyaW5nKDAsbC5sZW5ndGgtMSkpO3JldHVybiBsfQpmdW5jdGlvbiBiYyhhKXtmb3IodmFyIGI9MDtiPDM7KytiKXRyeXt2YXIgYz1kZWNvZGVVUklDb21wb25lbnQoYSkucmVwbGFjZSgvXCsvZywiICIpO2lmKGM9PT1hKWJyZWFrO2E9Y31jYXRjaChkKXtyZXR1cm4iIn1yZXR1cm4gYX1mdW5jdGlvbiBjYygpe3ZhciBhPUEsYjthOnt2YXIgYz1hLmNyeXB0b3x8YS5tc0NyeXB0bztpZihjJiZjLmdldFJhbmRvbVZhbHVlcyl0cnl7dmFyIGQ9bmV3IFVpbnQ4QXJyYXkoMjUpO2MuZ2V0UmFuZG9tVmFsdWVzKGQpO2I9YnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyx3KGQpKSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csIl8iKS5yZXBsYWNlKC89KyQvLCIiKTticmVhayBhfWNhdGNoKGUpe31iPXZvaWQgMH1yZXR1cm4gYn07LyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KdmFyIGRjPWdsb2JhbFRoaXMudHJ1c3RlZFR5cGVzLGVjO2Z1bmN0aW9uIGZjKCl7dmFyIGE9bnVsbDtpZighZGMpcmV0dXJuIGE7dHJ5e3ZhciBiPWZ1bmN0aW9uKGMpe3JldHVybiBjfTthPWRjLmNyZWF0ZVBvbGljeSgiZ29vZyNodG1sIix7Y3JlYXRlSFRNTDpiLGNyZWF0ZVNjcmlwdDpiLGNyZWF0ZVNjcmlwdFVSTDpifSl9Y2F0Y2goYyl7fXJldHVybiBhfWZ1bmN0aW9uIGhjKCl7ZWM9PT12b2lkIDAmJihlYz1mYygpKTtyZXR1cm4gZWN9O3ZhciBpYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07aWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07ZnVuY3Rpb24gamMoYSl7dmFyIGI9YSxjPWhjKCksZD1jP2MuY3JlYXRlU2NyaXB0VVJMKGIpOmI7cmV0dXJuIG5ldyBpYyhkKX1mdW5jdGlvbiBrYyhhKXtpZihhIGluc3RhbmNlb2YgaWMpcmV0dXJuIGEuSDt0aHJvdyBFcnJvcigiIik7fTt2YXIgbGM9QWEoWyIiXSksbWM9emEoWyJceDAwIl0sWyJcXDAiXSksbmM9emEoWyJcbiJdLFsiXFxuIl0pLG9jPXphKFsiXHgwMCJdLFsiXFx1MDAwMCJdKTtmdW5jdGlvbiBwYyhhKXtyZXR1cm4gYS50b1N0cmluZygpLmluZGV4T2YoImAiKT09PS0xfXBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKGxjKX0pfHxwYyhmdW5jdGlvbihhKXtyZXR1cm4gYShtYyl9KXx8cGMoZnVuY3Rpb24oYSl7cmV0dXJuIGEobmMpfSl8fHBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKG9jKX0pO3ZhciBxYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07cWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH07dmFyIHJjPWZ1bmN0aW9uKGEpe3RoaXMuSnM9YX07ZnVuY3Rpb24gc2MoYSl7cmV0dXJuIG5ldyByYyhmdW5jdGlvbihiKXtyZXR1cm4gYi5zdWJzdHIoMCxhLmxlbmd0aCsxKS50b0xvd2VyQ2FzZSgpPT09YSsiOiJ9KX12YXIgdGM9W3NjKCJkYXRhIiksc2MoImh0dHAiKSxzYygiaHR0cHMiKSxzYygibWFpbHRvIiksc2MoImZ0cCIpLG5ldyByYyhmdW5jdGlvbihhKXtyZXR1cm4vXlteOl0qKFsvPyNdfCQpLy50ZXN0KGEpfSldO2Z1bmN0aW9uIHVjKGEpe3ZhciBiO2I9Yj09PXZvaWQgMD90YzpiO2lmKGEgaW5zdGFuY2VvZiBxYylyZXR1cm4gYTtmb3IodmFyIGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkIGluc3RhbmNlb2YgcmMmJmQuSnMoYSkpcmV0dXJuIG5ldyBxYyhhKX19dmFyIHZjPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8/I10qKD86Wy8/I118JCkpL2k7CmZ1bmN0aW9uIHdjKGEpe3ZhciBiO2lmKGEgaW5zdGFuY2VvZiBxYylpZihhIGluc3RhbmNlb2YgcWMpYj1hLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7ZWxzZSBiPXZjLnRlc3QoYSk/YTp2b2lkIDA7cmV0dXJuIGJ9O2Z1bmN0aW9uIHhjKGEsYil7dmFyIGM9d2MoYik7YyE9PXZvaWQgMCYmKGEuYWN0aW9uPWMpfTtmdW5jdGlvbiB5YyhhLGIpe3Rocm93IEVycm9yKGI9PT12b2lkIDA/InVuZXhwZWN0ZWQgdmFsdWUgIithKyIhIjpiKTt9O3ZhciB6Yz1mdW5jdGlvbihhKXt0aGlzLkg9YX07emMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07dmFyIEJjPWZ1bmN0aW9uKCl7dGhpcy5IPUFjWzBdLnRvTG93ZXJDYXNlKCl9O0JjLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O2Z1bmN0aW9uIENjKGEsYil7dmFyIGM9W25ldyBCY107aWYoYy5sZW5ndGg9PT0wKXRocm93IEVycm9yKCIiKTt2YXIgZD1jLm1hcChmdW5jdGlvbihmKXt2YXIgZztpZihmIGluc3RhbmNlb2YgQmMpZz1mLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7cmV0dXJuIGd9KSxlPWIudG9Mb3dlckNhc2UoKTtpZihkLmV2ZXJ5KGZ1bmN0aW9uKGYpe3JldHVybiBlLmluZGV4T2YoZikhPT0wfSkpdGhyb3cgRXJyb3IoJ0F0dHJpYnV0ZSAiJytiKyciIGRvZXMgbm90IG1hdGNoIGFueSBvZiB0aGUgYWxsb3dlZCBwcmVmaXhlcy4nKTthLnNldEF0dHJpYnV0ZShiLCJ0cnVlIil9O3ZhciBEYz1BcnJheS5wcm90b3R5cGUuaW5kZXhPZj9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKGEsYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJuIHR5cGVvZiBiIT09InN0cmluZyJ8fGIubGVuZ3RoIT0xPy0xOmEuaW5kZXhPZihiLDApO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGMgaW4gYSYmYVtjXT09PWIpcmV0dXJuIGM7cmV0dXJuLTF9OyJBUlRJQ0xFIFNFQ1RJT04gTkFWIEFTSURFIEgxIEgyIEgzIEg0IEg1IEg2IEhFQURFUiBGT09URVIgQUREUkVTUyBQIEhSIFBSRSBCTE9DS1FVT1RFIE9MIFVMIExIIExJIERMIERUIEREIEZJR1VSRSBGSUdDQVBUSU9OIE1BSU4gRElWIEVNIFNUUk9ORyBTTUFMTCBTIENJVEUgUSBERk4gQUJCUiBSVUJZIFJCIFJUIFJUQyBSUCBEQVRBIFRJTUUgQ09ERSBWQVIgU0FNUCBLQkQgU1VCIFNVUCBJIEIgVSBNQVJLIEJESSBCRE8gU1BBTiBCUiBXQlIgTk9CUiBJTlMgREVMIFBJQ1RVUkUgUEFSQU0gVFJBQ0sgTUFQIFRBQkxFIENBUFRJT04gQ09MR1JPVVAgQ09MIFRCT0RZIFRIRUFEIFRGT09UIFRSIFREIFRIIFNFTEVDVCBEQVRBTElTVCBPUFRHUk9VUCBPUFRJT04gT1VUUFVUIFBST0dSRVNTIE1FVEVSIEZJRUxEU0VUIExFR0VORCBERVRBSUxTIFNVTU1BUlkgTUVOVSBESUFMT0cgU0xPVCBDQU5WQVMgRk9OVCBDRU5URVIgQUNST05ZTSBCQVNFRk9OVCBCSUcgRElSIEhHUk9VUCBTVFJJS0UgVFQiLnNwbGl0KCIgIikuY29uY2F0KFsiQlVUVE9OIiwKIklOUFVUIl0pO2Z1bmN0aW9uIEVjKGEpe3JldHVybiBhPT09bnVsbD8ibnVsbCI6YT09PXZvaWQgMD8idW5kZWZpbmVkIjphfTt2YXIgQT13aW5kb3csRmM9W10sR2M9d2luZG93Lmhpc3RvcnksQj1kb2N1bWVudCxIYz1uYXZpZ2F0b3I7ZnVuY3Rpb24gSWMoKXt2YXIgYTt0cnl7YT1IYy5zZXJ2aWNlV29ya2VyfWNhdGNoKGIpe3JldHVybn1yZXR1cm4gYX12YXIgSmM9Qi5jdXJyZW50U2NyaXB0LEtjPUpjJiZKYy5zcmM7ZnVuY3Rpb24gTWMoYSxiKXt2YXIgYz1BLGQ9Y1thXTtjW2FdPWQ9PT12b2lkIDA/YjpkO3JldHVybiBjW2FdfWZ1bmN0aW9uIE5jKGEpe3JldHVybihIYy51c2VyQWdlbnR8fCIiKS5pbmRleE9mKGEpIT09LTF9ZnVuY3Rpb24gT2MoKXtyZXR1cm4gTmMoIkZpcmVmb3giKXx8TmMoIkZ4aU9TIil9ZnVuY3Rpb24gUGMoKXtyZXR1cm4oTmMoIkdTQSIpfHxOYygiR29vZ2xlQXBwIikpJiYoTmMoImlQaG9uZSIpfHxOYygiaVBhZCIpKX1mdW5jdGlvbiBRYygpe3JldHVybiBOYygiRWRnLyIpfHxOYygiRWRnQS8iKXx8TmMoIkVkZ2lPUy8iKX0KdmFyIFJjPXthc3luYzoxLG5vbmNlOjEsb25lcnJvcjoxLG9ubG9hZDoxLHNyYzoxLHR5cGU6MX0sU2M9e2hlaWdodDoxLG9ubG9hZDoxLHNyYzoxLHN0eWxlOjEsd2lkdGg6MX07ZnVuY3Rpb24gVGMoYSxiLGMpe2ImJkdiKGIsZnVuY3Rpb24oZCxlKXtkPWQudG9Mb3dlckNhc2UoKTtjLmhhc093blByb3BlcnR5KGQpfHxhLnNldEF0dHJpYnV0ZShkLGUpfSl9CmZ1bmN0aW9uIFVjKGEsYixjLGQsZSl7dmFyIGY9Qi5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtUYyhmLGQsUmMpO2YudHlwZT0idGV4dC9qYXZhc2NyaXB0IjtmLmFzeW5jPWQmJmQuYXN5bmM9PT0hMT8hMTohMDt2YXIgZztnPWpjKEVjKGEpKTtmLnNyYz1rYyhnKTt2YXIgaCxsPWYub3duZXJEb2N1bWVudDtsPWw9PT12b2lkIDA/ZG9jdW1lbnQ6bDt2YXIgbixwLHE9KHA9KG49bCkucXVlcnlTZWxlY3Rvcik9PW51bGw/dm9pZCAwOnAuY2FsbChuLCJzY3JpcHRbbm9uY2VdIik7KGg9cT09bnVsbD8iIjpxLm5vbmNlfHxxLmdldEF0dHJpYnV0ZSgibm9uY2UiKXx8IiIpJiZmLnNldEF0dHJpYnV0ZSgibm9uY2UiLGgpO2ImJihmLm9ubG9hZD1iKTtjJiYoZi5vbmVycm9yPWMpO2U/ZS5hcHBlbmRDaGlsZChmKTpWYy5CcyhmKTtyZXR1cm4gZn0KZnVuY3Rpb24gV2MoKXtpZihLYyl7dmFyIGE9S2MudG9Mb3dlckNhc2UoKTtpZihhLmluZGV4T2YoImh0dHBzOi8vIik9PT0wKXJldHVybiAyO2lmKGEuaW5kZXhPZigiaHR0cDovLyIpPT09MClyZXR1cm4gM31yZXR1cm4gMX1mdW5jdGlvbiBYYyhhLGIsYyxkLGUsZil7Zj1mPT09dm9pZCAwPyEwOmY7dmFyIGc9ZSxoPSExO2d8fChnPUIuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksaD0hMCk7VGMoZyxjLFNjKTtkJiZHYihkLGZ1bmN0aW9uKG4scCl7Zy5kYXRhc2V0W25dPXB9KTtmJiYoZy5oZWlnaHQ9IjAiLGcud2lkdGg9IjAiLGcuc3R5bGUuZGlzcGxheT0ibm9uZSIsZy5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iKTthIT09dm9pZCAwJiYoZy5zcmM9YSk7aWYoaCl7dmFyIGw9Qi5ib2R5JiZCLmJvZHkubGFzdENoaWxkfHxCLmJvZHl8fEIuaGVhZDtsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGcsbCl9YiYmKGcub25sb2FkPWIpO3JldHVybiBnfQpmdW5jdGlvbiBaYygpe3JldHVybiBWYy5Fci5hcHBseShWYyx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfWZ1bmN0aW9uICRjKGEsYixjLGQpe2EuYWRkRXZlbnRMaXN0ZW5lciYmYS5hZGRFdmVudExpc3RlbmVyKGIsYywhIWQpfWZ1bmN0aW9uIGFkKGEsYixjKXthLnJlbW92ZUV2ZW50TGlzdGVuZXImJmEucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMsITEpfWZ1bmN0aW9uIGJkKGEpe0Euc2V0VGltZW91dChhLDApfWZ1bmN0aW9uIGNkKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpLGQsZT0oZD1BKS5zZXRJbnRlcnZhbC5hcHBseShkLFthLGJdLmNvbmNhdCh3KGMpKSk7RmMucHVzaChlKTtyZXR1cm4gZX0KZnVuY3Rpb24gZGQoYSl7dmFyIGI9QTt5YihiLnF1ZXVlTWljcm90YXNrKT9iLnF1ZXVlTWljcm90YXNrKGEpOnliKGIuUHJvbWlzZSkmJmIuUHJvbWlzZS5yZXNvbHZlP2IuUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe2EoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk6YmQoYSl9ZnVuY3Rpb24gZWQoYSxiKXtyZXR1cm4gYSYmYiYmYS5hdHRyaWJ1dGVzJiZhLmF0dHJpYnV0ZXNbYl0/YS5hdHRyaWJ1dGVzW2JdLnZhbHVlOm51bGx9ZnVuY3Rpb24gZmQoYSl7dmFyIGI9YS5pbm5lclRleHR8fGEudGV4dENvbnRlbnR8fCIiO2ImJmIhPT0iICImJihiPWIucmVwbGFjZSgvXltcc1x4YTBdKy9nLCIiKSxiPWIucmVwbGFjZSgvW1xzXHhhMF0rJC9nLCIiKSk7YiYmKGI9Yi5yZXBsYWNlKC8oXHhhMCt8XHN7Mix9fFxufFxyXHQpL2csIiAiKSk7cmV0dXJuIGJ9CmZ1bmN0aW9uIGdkKGEpe3ZhciBiPUIuY3JlYXRlRWxlbWVudCgiZGl2IiksYz1iLGQsZT1FYygiQTxkaXY+IithKyI8L2Rpdj4iKSxmPWhjKCksZz1mP2YuY3JlYXRlSFRNTChlKTplO2Q9bmV3IHpjKGcpO2lmKGMubm9kZVR5cGU9PT0xJiYvXihzY3JpcHR8c3R5bGUpJC9pLnRlc3QoYy50YWdOYW1lKSl0aHJvdyBFcnJvcigiIik7dmFyIGg7aWYoZCBpbnN0YW5jZW9mIHpjKWg9ZC5IO2Vsc2UgdGhyb3cgRXJyb3IoIiIpO2MuaW5uZXJIVE1MPWg7Yj1iLmxhc3RDaGlsZDtmb3IodmFyIGw9W107YiYmYi5maXJzdENoaWxkOylsLnB1c2goYi5yZW1vdmVDaGlsZChiLmZpcnN0Q2hpbGQpKTtyZXR1cm4gbH0KZnVuY3Rpb24gaGQoYSxiLGMpe2M9Y3x8MTAwO2Zvcih2YXIgZD17fSxlPTA7ZTxiLmxlbmd0aDtlKyspZFtiW2VdXT0hMDtmb3IodmFyIGY9YSxnPTA7ZiYmZzw9YztnKyspe2lmKGRbU3RyaW5nKGYudGFnTmFtZSkudG9Mb3dlckNhc2UoKV0pcmV0dXJuIGY7Zj1mLnBhcmVudEVsZW1lbnR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gaWQoYSxiLGMpe3ZhciBkO3RyeXtkPUhjLnNlbmRCZWFjb24mJkhjLnNlbmRCZWFjb24oYSl9Y2F0Y2goZSl7c2IoIlRBR0dJTkciLDE1KX1kP2I9PW51bGx8fGIoKTpaYyhhLGIsYyl9ZnVuY3Rpb24gamQoYSxiKXt0cnl7aWYoSGMuc2VuZEJlYWNvbiE9PXZvaWQgMClyZXR1cm4gSGMuc2VuZEJlYWNvbihhLGIpfWNhdGNoKGMpe3NiKCJUQUdHSU5HIiwxNSl9cmV0dXJuITF9ZnVuY3Rpb24ga2QoKXtyZXR1cm4gSGMuc2VuZEJlYWNvbiE9PXZvaWQgMH0KdmFyIGxkPXtjYWNoZToibm8tc3RvcmUiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixrZWVwYWxpdmU6ITAsbWV0aG9kOiJQT1NUIixtb2RlOiJuby1jb3JzIixyZWRpcmVjdDoiZm9sbG93In07CmZ1bmN0aW9uIG1kKGEsYixjLGQsZSl7aWYobmQoKSl7dmFyIGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxsZCk7YiYmKGYuYm9keT1iKTtjJiYoYy5hdHRyaWJ1dGlvblJlcG9ydGluZyYmKGYuYXR0cmlidXRpb25SZXBvcnRpbmc9Yy5hdHRyaWJ1dGlvblJlcG9ydGluZyksYy5icm93c2luZ1RvcGljcyE9PXZvaWQgMCYmKGYuYnJvd3NpbmdUb3BpY3M9Yy5icm93c2luZ1RvcGljcyksYy5jcmVkZW50aWFscyYmKGYuY3JlZGVudGlhbHM9Yy5jcmVkZW50aWFscyksYy5rZWVwYWxpdmUhPT12b2lkIDAmJihmLmtlZXBhbGl2ZT1jLmtlZXBhbGl2ZSksYy5tZXRob2QmJihmLm1ldGhvZD1jLm1ldGhvZCksYy5tb2RlJiYoZi5tb2RlPWMubW9kZSkpO3RyeXt2YXIgZz1BLmZldGNoKGEsZik7aWYoZylyZXR1cm4gZy50aGVuKGZ1bmN0aW9uKGwpe2wmJihsLm9rfHxsLnN0YXR1cz09PTApP2Q9PW51bGx8fGQoKTplPT1udWxsfHxlKCl9KS5jYXRjaChmdW5jdGlvbigpe2U9PQpudWxsfHxlKCl9KSwhMH1jYXRjaChsKXt9fWlmKChjPT1udWxsPzA6Yy5RZyl8fChjPT1udWxsPzA6Yy5jcmVkZW50aWFscykmJmMuY3JlZGVudGlhbHMhPT0iaW5jbHVkZSIpcmV0dXJuIGU9PW51bGx8fGUoKSwhMTtpZihiKXt2YXIgaD1qZChhLGIpO2g/ZD09bnVsbHx8ZCgpOmU9PW51bGx8fGUoKTtyZXR1cm4gaH1WYy53dChhLGQsZSk7cmV0dXJuITB9ZnVuY3Rpb24gbmQoKXtyZXR1cm4geWIoQS5mZXRjaCl9ZnVuY3Rpb24gb2QoYSxiKXt2YXIgYz1hW2JdO2MmJnR5cGVvZiBjLmFuaW1WYWw9PT0ic3RyaW5nIiYmKGM9Yy5hbmltVmFsKTtyZXR1cm4gY31mdW5jdGlvbiBwZCgpe3ZhciBhPUEucGVyZm9ybWFuY2U7aWYoYSYmeWIoYS5ub3cpKXJldHVybiBhLm5vdygpfQpmdW5jdGlvbiBxZCgpe3ZhciBhLGI9QS5wZXJmb3JtYW5jZTtpZihiJiZiLmdldEVudHJpZXNCeVR5cGUpdHJ5e3ZhciBjPWIuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpO2MmJmMubGVuZ3RoPjAmJihhPWNbMF0udHlwZSl9Y2F0Y2goZCl7cmV0dXJuImUifWlmKCFhKXJldHVybiJ1Ijtzd2l0Y2goYSl7Y2FzZSAibmF2aWdhdGUiOnJldHVybiJuIjtjYXNlICJiYWNrX2ZvcndhcmQiOnJldHVybiJoIjtjYXNlICJyZWxvYWQiOnJldHVybiJyIjtjYXNlICJwcmVyZW5kZXIiOnJldHVybiJwIjtkZWZhdWx0OnJldHVybiJ4In19ZnVuY3Rpb24gcmQoKXtyZXR1cm4gQS5wZXJmb3JtYW5jZXx8dm9pZCAwfWZ1bmN0aW9uIHNkKCl7dmFyIGE9QS53ZWJQaXhlbHNNYW5hZ2VyO3JldHVybiBhP2EuY3JlYXRlU2hvcGlmeUV4dGVuZCE9PXZvaWQgMDohMX0KdmFyIFZjPXtFcjpmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1uZXcgSW1hZ2UoMSwxKTtUYyhlLGQse30pO2Uub25sb2FkPWZ1bmN0aW9uKCl7ZS5vbmxvYWQ9bnVsbDtiJiZiKCl9O2Uub25lcnJvcj1mdW5jdGlvbigpe2Uub25lcnJvcj1udWxsO2MmJmMoKX07ZS5zcmM9YTtyZXR1cm4gZX0sQnM6ZnVuY3Rpb24oYSl7dmFyIGI9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF18fEIuYm9keXx8Qi5oZWFkO2IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSxiKX0sd3Q6aWR9O2Z1bmN0aW9uIHRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdWQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKT09PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiB3ZChhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO3JldHVybiBTdHJpbmcoYykuaW5kZXhPZihTdHJpbmcoZCkpPi0xfWZ1bmN0aW9uIHhkKGEsYil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYSkpLGQ9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYikpO3JldHVybiBjLnN1YnN0cmluZygwLGQubGVuZ3RoKT09PWR9CmZ1bmN0aW9uIHlkKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYik7c3dpdGNoKGMpe2Nhc2UgInBhZ2VMb2NhdGlvbiI6dmFyIGU9QS5sb2NhdGlvbi5ocmVmO2QgaW5zdGFuY2VvZiBrYiYmZC5nZXQoInN0cmlwUHJvdG9jb2wiKSYmKGU9ZS5yZXBsYWNlKC9eaHR0cHM/OlwvXC8vLCIiKSk7cmV0dXJuIGV9fTsvKgogalF1ZXJ5IChjKSAyMDA1LCAyMDEyIGpRdWVyeSBGb3VuZGF0aW9uLCBJbmMuIGpxdWVyeS5vcmcvbGljZW5zZS4KKi8KdmFyIHpkPS9cW29iamVjdCAoQm9vbGVhbnxOdW1iZXJ8U3RyaW5nfEZ1bmN0aW9ufEFycmF5fERhdGV8UmVnRXhwKVxdLyxBZD1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBTdHJpbmcoYSk7dmFyIGI9emQuZXhlYyhPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoT2JqZWN0KGEpKSk7cmV0dXJuIGI/YlsxXS50b0xvd2VyQ2FzZSgpOiJvYmplY3QifSxCZD1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoT2JqZWN0KGEpLGIpfSxDZD1mdW5jdGlvbihhKXtpZighYXx8QWQoYSkhPSJvYmplY3QifHxhLm5vZGVUeXBlfHxhPT1hLndpbmRvdylyZXR1cm4hMTt0cnl7aWYoYS5jb25zdHJ1Y3RvciYmIUJkKGEsImNvbnN0cnVjdG9yIikmJiFCZChhLmNvbnN0cnVjdG9yLnByb3RvdHlwZSwiaXNQcm90b3R5cGVPZiIpKXJldHVybiExfWNhdGNoKGMpe3JldHVybiExfWZvcih2YXIgYiBpbiBhKTtyZXR1cm4gYj09PXZvaWQgMHx8CkJkKGEsYil9LEVkPWZ1bmN0aW9uKGEsYil7dmFyIGM9Ynx8KEFkKGEpPT0iYXJyYXkiP1tdOnt9KSxkO2ZvcihkIGluIGEpaWYoQmQoYSxkKSl7dmFyIGU9YVtkXTtBZChlKT09ImFycmF5Ij8oQWQoY1tkXSkhPSJhcnJheSImJihjW2RdPVtdKSxjW2RdPUVkKGUsY1tkXSkpOkNkKGUpPyhDZChjW2RdKXx8KGNbZF09e30pLGNbZF09RWQoZSxjW2RdKSk6Y1tkXT1lfXJldHVybiBjfTtmdW5jdGlvbiBGZChhKXtyZXR1cm4gdHlwZW9mIGE9PT0ibnVtYmVyIiYmYT49MCYmaXNGaW5pdGUoYSkmJmElMT09PTB8fHR5cGVvZiBhPT09InN0cmluZyImJmFbMF0hPT0iLSImJmE9PT0iIitwYXJzZUludChhKX07dmFyIEdkPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphO3RoaXMubGE9bmV3IFVhO3RoaXMudmFsdWVzPVtdO3RoaXMuTmE9ITE7Zm9yKHZhciBiIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShiKSYmKEZkKGIpP3RoaXMudmFsdWVzW051bWJlcihiKV09YVtOdW1iZXIoYildOnRoaXMubGEuc2V0KGIsYVtiXSkpfTtrPUdkLnByb3RvdHlwZTtrLnRvU3RyaW5nPWZ1bmN0aW9uKGEpe2lmKGEmJmEuaW5kZXhPZih0aGlzKT49MClyZXR1cm4iIjtmb3IodmFyIGI9W10sYz0wO2M8dGhpcy52YWx1ZXMubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy52YWx1ZXNbY107ZD09PW51bGx8fGQ9PT12b2lkIDA/Yi5wdXNoKCIiKTpkIGluc3RhbmNlb2YgR2Q/KGE9YXx8W10sYS5wdXNoKHRoaXMpLGIucHVzaChkLnRvU3RyaW5nKGEpKSxhLnBvcCgpKTpiLnB1c2goU3RyaW5nKGQpKX1yZXR1cm4gYi5qb2luKCIsIil9OwprLnNldD1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLk5hKWlmKGE9PT0ibGVuZ3RoIil7aWYoIUZkKGIpKXRocm93IGNiKEVycm9yKCJSYW5nZUVycm9yOiBMZW5ndGggcHJvcGVydHkgbXVzdCBiZSBhIHZhbGlkIGludGVnZXIuIikpO3RoaXMudmFsdWVzLmxlbmd0aD1OdW1iZXIoYil9ZWxzZSBGZChhKT90aGlzLnZhbHVlc1tOdW1iZXIoYSldPWI6dGhpcy5sYS5zZXQoYSxiKX07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0ibGVuZ3RoIj90aGlzLmxlbmd0aCgpOkZkKGEpP3RoaXMudmFsdWVzW051bWJlcihhKV06dGhpcy5sYS5nZXQoYSl9O2subGVuZ3RoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLmxlbmd0aH07ay5GYT1mdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLmxhLkZhKCksYj0wO2I8dGhpcy52YWx1ZXMubGVuZ3RoO2IrKyl0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShiKSYmYS5wdXNoKFN0cmluZyhiKSk7cmV0dXJuIGF9OwprLmhjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuaGMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2godGhpcy52YWx1ZXNbYl0pO3JldHVybiBhfTtrLmZjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuZmMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2goW1N0cmluZyhiKSx0aGlzLnZhbHVlc1tiXV0pO3JldHVybiBhfTtrLnJlbW92ZT1mdW5jdGlvbihhKXtGZChhKT9kZWxldGUgdGhpcy52YWx1ZXNbTnVtYmVyKGEpXTp0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5wb3A9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMucG9wKCl9O2sucHVzaD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlcy5wdXNoLmFwcGx5KHRoaXMudmFsdWVzLHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSl9O2suc2hpZnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMuc2hpZnQoKX07Cmsuc3BsaWNlPWZ1bmN0aW9uKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpO3JldHVybiBiPT09dm9pZCAwJiZjLmxlbmd0aD09PTA/bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZShhKSk6bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZS5hcHBseSh0aGlzLnZhbHVlcyxbYSxifHwwXS5jb25jYXQodyhjKSkpKX07ay51bnNoaWZ0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLnVuc2hpZnQuYXBwbHkodGhpcy52YWx1ZXMsdyhPYS5hcHBseSgwLGFyZ3VtZW50cykpKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIEZkKGEpJiZ0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShhKXx8dGhpcy5sYS5oYXMoYSl9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLk5hPSEwO09iamVjdC5mcmVlemUodGhpcy52YWx1ZXMpfTtrLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9OwpmdW5jdGlvbiBIZChhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGgoKTtjKyspYS5oYXMoYykmJihiW2NdPWEuZ2V0KGMpKTtyZXR1cm4gYn07dmFyIElkPWZ1bmN0aW9uKGEsYil7dGhpcy5mdW5jdGlvbk5hbWU9YTt0aGlzLmllPWI7dGhpcy5sYT1uZXcgVWE7dGhpcy5OYT0hMX07az1JZC5wcm90b3R5cGU7ay50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmZ1bmN0aW9uTmFtZX07ay5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZnVuY3Rpb25OYW1lfTtrLmdldEtleXM9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEdkKHRoaXMuRmEoKSl9O2suaW52b2tlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmllLmNhbGwuYXBwbHkodGhpcy5pZSxbbmV3IEpkKHRoaXMsYSldLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKX07ay5hcHBseT1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmllLmFwcGx5KG5ldyBKZCh0aGlzLGEpLGIpfTtrLk5jPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTt0cnl7cmV0dXJuIHRoaXMuaW52b2tlLmFwcGx5KHRoaXMsW2FdLmNvbmNhdCh3KGIpKSl9Y2F0Y2goYyl7fX07CmsuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmdldChhKX07ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLk5hfHx0aGlzLmxhLnNldChhLGIpfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5oYXMoYSl9O2sucmVtb3ZlPWZ1bmN0aW9uKGEpe3RoaXMuTmF8fHRoaXMubGEucmVtb3ZlKGEpfTtrLkZhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuRmEoKX07ay5oYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmhjKCl9O2suZmM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5mYygpfTtrLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07ay5IYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk5hfTt2YXIgS2Q9ZnVuY3Rpb24oYSxiKXtJZC5jYWxsKHRoaXMsYSxiKX07d2EoS2QsSWQpO3ZhciBMZD1mdW5jdGlvbihhLGIpe0lkLmNhbGwodGhpcyxhLGIpfTt3YShMZCxJZCk7dmFyIEpkPWZ1bmN0aW9uKGEsYil7dGhpcy5pZT1hO3RoaXMuVD1ifTsKSmQucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuVDtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9mYihiLGEpOmF9O0pkLnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWUuZ2V0TmFtZSgpfTtKZC5wcm90b3R5cGUuamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ULmplKCl9O3ZhciBNZD1mdW5jdGlvbigpe3RoaXMubWFwPW5ldyBNYXB9O01kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLm1hcC5zZXQoYSxiKX07TWQucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5tYXAuZ2V0KGEpfTt2YXIgTmQ9ZnVuY3Rpb24oKXt0aGlzLmtleXM9W107dGhpcy52YWx1ZXM9W119O05kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmtleXMucHVzaChhKTt0aGlzLnZhbHVlcy5wdXNoKGIpfTtOZC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMua2V5cy5pbmRleE9mKGEpO2lmKGI+LTEpcmV0dXJuIHRoaXMudmFsdWVzW2JdfTtmdW5jdGlvbiBPZCgpe3RyeXtyZXR1cm4gTWFwP25ldyBNZDpuZXcgTmR9Y2F0Y2goYSl7cmV0dXJuIG5ldyBOZH19O3ZhciBQZD1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgUGQpcmV0dXJuIGE7dmFyIGI7YTppZihhPT12b2lkIDB8fEFycmF5LmlzQXJyYXkoYSl8fENkKGEpKWI9ITA7ZWxzZXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJvb2xlYW4iOmNhc2UgIm51bWJlciI6Y2FzZSAic3RyaW5nIjpjYXNlICJmdW5jdGlvbiI6Yj0hMDticmVhayBhfWI9ITF9aWYoYil0aHJvdyBFcnJvcigiVHlwZSBvZiBnaXZlbiB2YWx1ZSBoYXMgYW4gZXF1aXZhbGVudCBQaXhpZSB0eXBlLiIpO3RoaXMudmFsdWU9YX07UGQucHJvdG90eXBlLmdldFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O1BkLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcodGhpcy52YWx1ZSl9O3ZhciBTZD1mdW5jdGlvbihhKXt0aGlzLnByb21pc2U9YTt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhO3RoaXMubGEuc2V0KCJ0aGVuIixSZCh0aGlzKSk7dGhpcy5sYS5zZXQoImNhdGNoIixSZCh0aGlzLCEwKSk7dGhpcy5sYS5zZXQoImZpbmFsbHkiLFJkKHRoaXMsITEsITApKX07az1TZC5wcm90b3R5cGU7ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuZ2V0KGEpfTtrLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTmF8fHRoaXMubGEuc2V0KGEsYil9O2suaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmhhcyhhKX07ay5yZW1vdmU9ZnVuY3Rpb24oYSl7dGhpcy5OYXx8dGhpcy5sYS5yZW1vdmUoYSl9O2suRmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5GYSgpfTtrLmhjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuaGMoKX07ay5mYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmZjKCl9Owp2YXIgUmQ9ZnVuY3Rpb24oYSxiLGMpe2I9Yj09PXZvaWQgMD8hMTpiO2M9Yz09PXZvaWQgMD8hMTpjO3JldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oZCxlKXtiJiYoZT1kLGQ9dm9pZCAwKTtjJiYoZT1kKTtkIGluc3RhbmNlb2YgS2R8fChkPXZvaWQgMCk7ZSBpbnN0YW5jZW9mIEtkfHwoZT12b2lkIDApO3ZhciBmPXRoaXMuVC53YigpLGc9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe3RyeXtyZXR1cm4gYz8obC5pbnZva2UoZiksYS5wcm9taXNlKTpsLmludm9rZShmLG4pfWNhdGNoKHApe3JldHVybiBQcm9taXNlLnJlamVjdChwIGluc3RhbmNlb2YgRXJyb3I/bmV3IFBkKHApOlN0cmluZyhwKSl9fX0saD1hLnByb21pc2UudGhlbihkJiZnKGQpLGUmJmcoZSkpO3JldHVybiBuZXcgU2QoaCl9KX07U2QucHJvdG90eXBlLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07U2QucHJvdG90eXBlLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9O2Z1bmN0aW9uIFRkKGEsYixjKXt2YXIgZD1PZCgpLGU9ZnVuY3Rpb24oZyxoKXtmb3IodmFyIGw9Zy5GYSgpLG49MDtuPGwubGVuZ3RoO24rKyloW2xbbl1dPWYoZy5nZXQobFtuXSkpfSxmPWZ1bmN0aW9uKGcpe2lmKGc9PT1udWxsfHxnPT09dm9pZCAwKXJldHVybiBnO3ZhciBoPWQuZ2V0KGcpO2lmKGgpcmV0dXJuIGg7aWYoZyBpbnN0YW5jZW9mIEdkKXt2YXIgbD1bXTtkLnNldChnLGwpO2Zvcih2YXIgbj1nLkZhKCkscD0wO3A8bi5sZW5ndGg7cCsrKWxbbltwXV09ZihnLmdldChuW3BdKSk7cmV0dXJuIGx9aWYoZyBpbnN0YW5jZW9mIFNkKXJldHVybiBnLnByb21pc2UudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gVGQodSxiLDEpfSxmdW5jdGlvbih1KXtyZXR1cm4gUHJvbWlzZS5yZWplY3QoVGQodSxiLDEpKX0pO2lmKGcgaW5zdGFuY2VvZiBrYil7dmFyIHE9e307ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9aWYoZyBpbnN0YW5jZW9mIEtkKXt2YXIgcj1mdW5jdGlvbigpe2Zvcih2YXIgdT0KW10sdj0wO3Y8YXJndW1lbnRzLmxlbmd0aDt2KyspdVt2XT1VZChhcmd1bWVudHNbdl0sYixjKTt2YXIgeD1uZXcgaGIoYj9iLmplKCk6bmV3IFdhKTtiJiZ4LnVlKGIueGIoKSk7cmV0dXJuIGYoZy5hcHBseSh4LHUpKX07ZC5zZXQoZyxyKTtlKGcscik7cmV0dXJuIHJ9dmFyIHQ9ITE7c3dpdGNoKGMpe2Nhc2UgMTp0PSEwO2JyZWFrO2Nhc2UgMjp0PSExO2JyZWFrO2Nhc2UgMzp0PSExO2JyZWFrO2RlZmF1bHQ6fWlmKGcgaW5zdGFuY2VvZiBQZCYmdClyZXR1cm4gZy5nZXRWYWx1ZSgpO3N3aXRjaCh0eXBlb2YgZyl7Y2FzZSAiYm9vbGVhbiI6Y2FzZSAibnVtYmVyIjpjYXNlICJzdHJpbmciOmNhc2UgInVuZGVmaW5lZCI6cmV0dXJuIGc7Y2FzZSAib2JqZWN0IjppZihnPT09Cm51bGwpcmV0dXJuIG51bGx9fTtyZXR1cm4gZihhKX0KZnVuY3Rpb24gVWQoYSxiLGMpe3ZhciBkPU9kKCksZT1mdW5jdGlvbihnLGgpe2Zvcih2YXIgbCBpbiBnKWcuaGFzT3duUHJvcGVydHkobCkmJmguc2V0KGwsZihnW2xdKSl9LGY9ZnVuY3Rpb24oZyl7dmFyIGg9ZC5nZXQoZyk7aWYoaClyZXR1cm4gaDtpZihBcnJheS5pc0FycmF5KGcpfHxIYihnKSl7dmFyIGw9bmV3IEdkO2Quc2V0KGcsbCk7Zm9yKHZhciBuIGluIGcpZy5oYXNPd25Qcm9wZXJ0eShuKSYmbC5zZXQobixmKGdbbl0pKTtyZXR1cm4gbH1pZihDZChnKSl7dmFyIHA9bmV3IGtiO2Quc2V0KGcscCk7ZShnLHApO3JldHVybiBwfWlmKHR5cGVvZiBnPT09ImZ1bmN0aW9uIil7dmFyIHE9bmV3IEtkKCIiLGZ1bmN0aW9uKCl7Zm9yKHZhciB1PU9hLmFwcGx5KDAsYXJndW1lbnRzKSx2PVtdLHg9MDt4PHUubGVuZ3RoO3grKyl2W3hdPVRkKHRoaXMuZXZhbHVhdGUodVt4XSksYixjKTtyZXR1cm4gZih0aGlzLlQuUGooKShnLGcsdikpfSk7ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9dmFyIHI9dHlwZW9mIGc7aWYoZz09PW51bGx8fHI9PT0ic3RyaW5nInx8cj09PSJudW1iZXIifHxyPT09ImJvb2xlYW4iKXJldHVybiBnO3ZhciB0PSExO3N3aXRjaChjKXtjYXNlIDE6dD0hMDticmVhaztjYXNlIDI6dD0hMTticmVhaztkZWZhdWx0On1pZihnIT09dm9pZCAwJiZ0KXJldHVybiBuZXcgUGQoZyl9O3JldHVybiBmKGEpfTt2YXIgVmQ9e3N1cHBvcnRlZE1ldGhvZHM6ImNvbmNhdCBldmVyeSBmaWx0ZXIgZm9yRWFjaCBoYXNPd25Qcm9wZXJ0eSBpbmRleE9mIGpvaW4gbGFzdEluZGV4T2YgbWFwIHBvcCBwdXNoIHJlZHVjZSByZWR1Y2VSaWdodCByZXZlcnNlIHNoaWZ0IHNsaWNlIHNvbWUgc29ydCBzcGxpY2UgdW5zaGlmdCB0b1N0cmluZyIuc3BsaXQoIiAiKSxjb25jYXQ6ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPVtdLGM9MDtjPHRoaXMubGVuZ3RoKCk7YysrKWIucHVzaCh0aGlzLmdldChjKSk7Zm9yKHZhciBkPTE7ZDxhcmd1bWVudHMubGVuZ3RoO2QrKylpZihhcmd1bWVudHNbZF1pbnN0YW5jZW9mIEdkKWZvcih2YXIgZT1hcmd1bWVudHNbZF0sZj0wO2Y8ZS5sZW5ndGgoKTtmKyspYi5wdXNoKGUuZ2V0KGYpKTtlbHNlIGIucHVzaChhcmd1bWVudHNbZF0pO3JldHVybiBuZXcgR2QoYil9LGV2ZXJ5OmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD0wO2Q8dGhpcy5sZW5ndGgoKSYmCmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJiFiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcykpcmV0dXJuITE7cmV0dXJuITB9LGZpbHRlcjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9W10sZT0wO2U8dGhpcy5sZW5ndGgoKSYmZTxjO2UrKyl0aGlzLmhhcyhlKSYmYi5pbnZva2UoYSx0aGlzLmdldChlKSxlLHRoaXMpJiZkLnB1c2godGhpcy5nZXQoZSkpO3JldHVybiBuZXcgR2QoZCl9LGZvckVhY2g6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dGhpcy5sZW5ndGgoKSxkPTA7ZDx0aGlzLmxlbmd0aCgpJiZkPGM7ZCsrKXRoaXMuaGFzKGQpJiZiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcyl9LGhhc093blByb3BlcnR5OmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaGFzKGIpfSxpbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9Yz09PXZvaWQgMD8wOk51bWJlcihjKTtlPDAmJihlPU1hdGgubWF4KGQrZSwwKSk7Zm9yKHZhciBmPQplO2Y8ZDtmKyspaWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sam9pbjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDx0aGlzLmxlbmd0aCgpO2QrKyljLnB1c2godGhpcy5nZXQoZCkpO3JldHVybiBjLmpvaW4oYil9LGxhc3RJbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9ZC0xO2MhPT12b2lkIDAmJihlPWM8MD9kK2M6TWF0aC5taW4oYyxlKSk7Zm9yKHZhciBmPWU7Zj49MDtmLS0paWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sbWFwOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD1bXSxlPTA7ZTx0aGlzLmxlbmd0aCgpJiZlPGM7ZSsrKXRoaXMuaGFzKGUpJiYoZFtlXT1iLmludm9rZShhLHRoaXMuZ2V0KGUpLGUsdGhpcykpO3JldHVybiBuZXcgR2QoZCl9LHBvcDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnBvcCgpfSxwdXNoOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnB1c2guYXBwbHkodGhpcywKdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX0scmVkdWNlOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGUsZj0wO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlIG9uIExpc3Qgd2l0aCBubyBlbGVtZW50cy4iKSk7Zm9yKHZhciBnPTA7ZzxkO2crKylpZih0aGlzLmhhcyhnKSl7ZT10aGlzLmdldChnKTtmPWcrMTticmVha31pZihnPT09ZCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2Ugb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aDxkO2grKyl0aGlzLmhhcyhoKSYmKGU9Yi5pbnZva2UoYSxlLHRoaXMuZ2V0KGgpLGgsdGhpcykpO3JldHVybiBlfSxyZWR1Y2VSaWdodDpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5sZW5ndGgoKSxlLGY9ZC0xO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTsKZm9yKHZhciBnPTE7Zzw9ZDtnKyspaWYodGhpcy5oYXMoZC1nKSl7ZT10aGlzLmdldChkLWcpO2Y9ZC0oZysxKTticmVha31pZihnPmQpdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aD49MDtoLS0pdGhpcy5oYXMoaCkmJihlPWIuaW52b2tlKGEsZSx0aGlzLmdldChoKSxoLHRoaXMpKTtyZXR1cm4gZX0scmV2ZXJzZTpmdW5jdGlvbigpe2Zvcih2YXIgYT1IZCh0aGlzKSxiPWEubGVuZ3RoLTEsYz0wO2I+PTA7Yi0tLGMrKylhLmhhc093blByb3BlcnR5KGIpP3RoaXMuc2V0KGMsYVtiXSk6dGhpcy5yZW1vdmUoYyk7cmV0dXJuIHRoaXN9LHNoaWZ0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2hpZnQoKX0sc2xpY2U6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCk7Yj09PXZvaWQgMCYmKGI9MCk7Yj1iPDA/TWF0aC5tYXgoZCtiLDApOk1hdGgubWluKGIsZCk7Yz1jPT09CnZvaWQgMD9kOmM8MD9NYXRoLm1heChkK2MsMCk6TWF0aC5taW4oYyxkKTtjPU1hdGgubWF4KGIsYyk7Zm9yKHZhciBlPVtdLGY9YjtmPGM7ZisrKWUucHVzaCh0aGlzLmdldChmKSk7cmV0dXJuIG5ldyBHZChlKX0sc29tZTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9MDtkPHRoaXMubGVuZ3RoKCkmJmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJmIuaW52b2tlKGEsdGhpcy5nZXQoZCksZCx0aGlzKSlyZXR1cm4hMDtyZXR1cm4hMX0sc29ydDpmdW5jdGlvbihhLGIpe3ZhciBjPUhkKHRoaXMpO2I9PT12b2lkIDA/Yy5zb3J0KCk6Yy5zb3J0KGZ1bmN0aW9uKGUsZil7cmV0dXJuIE51bWJlcihiLmludm9rZShhLGUsZikpfSk7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspYy5oYXNPd25Qcm9wZXJ0eShkKT90aGlzLnNldChkLGNbZF0pOnRoaXMucmVtb3ZlKGQpO3JldHVybiB0aGlzfSxzcGxpY2U6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiB0aGlzLnNwbGljZS5hcHBseSh0aGlzLApbYixjXS5jb25jYXQodyhPYS5hcHBseSgzLGFyZ3VtZW50cykpKSl9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudG9TdHJpbmcoKX0sdW5zaGlmdDpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy51bnNoaWZ0LmFwcGx5KHRoaXMsdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX19O3ZhciBXZD17Y2hhckF0OjEsY29uY2F0OjEsaW5kZXhPZjoxLGxhc3RJbmRleE9mOjEsbWF0Y2g6MSxyZXBsYWNlOjEsc2VhcmNoOjEsc2xpY2U6MSxzcGxpdDoxLHN1YnN0cmluZzoxLHRvTG93ZXJDYXNlOjEsdG9Mb2NhbGVMb3dlckNhc2U6MSx0b1N0cmluZzoxLHRvVXBwZXJDYXNlOjEsdG9Mb2NhbGVVcHBlckNhc2U6MSx0cmltOjF9LFhkPW5ldyBUYSgiYnJlYWsiKSxZZD1uZXcgVGEoImNvbnRpbnVlIik7ZnVuY3Rpb24gWmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSt0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uICRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyk7aWYoIShmIGluc3RhbmNlb2YgR2QpKXRocm93IEVycm9yKCJFcnJvcjogTm9uLUxpc3QgYXJndW1lbnQgZ2l2ZW4gdG8gQXBwbHkgaW5zdHJ1Y3Rpb24uIik7aWYoZD09PW51bGx8fGQ9PT12b2lkIDApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogQ2FuJ3QgcmVhZCBwcm9wZXJ0eSAiK2UrIiBvZiAiK2QrIi4iKSk7dmFyIGc9dHlwZW9mIGQ9PT0ibnVtYmVyIjtpZih0eXBlb2YgZD09PSJib29sZWFuInx8Zyl7aWYoZT09PSJ0b1N0cmluZyIpe2lmKGcmJmYubGVuZ3RoKCkpe3ZhciBoPVRkKGYuZ2V0KDApKTt0cnl7cmV0dXJuIGQudG9TdHJpbmcoaCl9Y2F0Y2godSl7fX1yZXR1cm4gZC50b1N0cmluZygpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZCsiLiIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uLiIpKTt9aWYodHlwZW9mIGQ9PT0KInN0cmluZyIpe2lmKFdkLmhhc093blByb3BlcnR5KGUpKXt2YXIgbD1UZChmLHZvaWQgMCwxKTtyZXR1cm4gVWQoZFtlXS5hcHBseShkLGwpLHRoaXMuVCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKGQgaW5zdGFuY2VvZiBHZCl7aWYoZC5oYXMoZSkpe3ZhciBuPWQuZ2V0KFN0cmluZyhlKSk7aWYobiBpbnN0YW5jZW9mIEtkKXt2YXIgcD1IZChmKTtyZXR1cm4gbi5hcHBseSh0aGlzLlQscCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKFZkLnN1cHBvcnRlZE1ldGhvZHMuaW5kZXhPZihlKT49MCl7dmFyIHE9SGQoZik7cmV0dXJuIFZkW2VdLmNhbGwuYXBwbHkoVmRbZV0sW2QsdGhpcy5UXS5jb25jYXQodyhxKSkpfX1pZihkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkKXtpZihkLmhhcyhlKSl7dmFyIHI9ZC5nZXQoZSk7CmlmKHIgaW5zdGFuY2VvZiBLZCl7dmFyIHQ9SGQoZik7cmV0dXJuIHIuYXBwbHkodGhpcy5ULHQpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uIikpO31pZihlPT09InRvU3RyaW5nIilyZXR1cm4gZCBpbnN0YW5jZW9mIEtkP2QuZ2V0TmFtZSgpOmQudG9TdHJpbmcoKTtpZihlPT09Imhhc093blByb3BlcnR5IilyZXR1cm4gZC5oYXMoZi5nZXQoMCkpfWlmKGQgaW5zdGFuY2VvZiBQZCYmZT09PSJ0b1N0cmluZyIpcmV0dXJuIGQudG9TdHJpbmcoKTt0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBPYmplY3QgaGFzIG5vICciK2UrIicgcHJvcGVydHkuIikpO30KZnVuY3Rpb24gYmUoYSxiKXthPXRoaXMuZXZhbHVhdGUoYSk7aWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBFcnJvcigiSW52YWxpZCBrZXkgbmFtZSBnaXZlbiBmb3IgYXNzaWdubWVudC4iKTt2YXIgYz10aGlzLlQ7aWYoIWMuaGFzKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFzc2lnbiB0byB1bmRlZmluZWQgdmFsdWUgIitiKTt2YXIgZD10aGlzLmV2YWx1YXRlKGIpO2Muc2V0KGEsZCk7cmV0dXJuIGR9ZnVuY3Rpb24gY2UoKXt2YXIgYT1PYS5hcHBseSgwLGFyZ3VtZW50cyksYj10aGlzLlQud2IoKSxjPWViKGIsYSk7aWYoYyBpbnN0YW5jZW9mIFRhKXJldHVybiBjfWZ1bmN0aW9uIGRlKCl7cmV0dXJuIFhkfWZ1bmN0aW9uIGVlKGEpe2Zvcih2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShiW2NdKTtpZihkIGluc3RhbmNlb2YgVGEpcmV0dXJuIGR9fQpmdW5jdGlvbiBmZSgpe2Zvcih2YXIgYT10aGlzLlQsYj0wO2I8YXJndW1lbnRzLmxlbmd0aC0xO2IrPTIpe3ZhciBjPWFyZ3VtZW50c1tiXTtpZih0eXBlb2YgYz09PSJzdHJpbmciKXt2YXIgZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLlFoKGMsZCl9fX1mdW5jdGlvbiBnZSgpe3JldHVybiBZZH1mdW5jdGlvbiBoZShhLGIpe3JldHVybiBuZXcgVGEoYSx0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBpZShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2Q9bmV3IEdkO2Zvcih2YXIgZT10aGlzLmV2YWx1YXRlKGIpLGY9MDtmPGUubGVuZ3RoO2YrKylkLnB1c2goZVtmXSk7dmFyIGc9WzUxLGEsZF0uY29uY2F0KHcoYykpO3RoaXMuVC5hZGQoYSx0aGlzLmV2YWx1YXRlKGcpKX1mdW5jdGlvbiBqZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpL3RoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGtlKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYiksZT1jIGluc3RhbmNlb2YgUGQsZj1kIGluc3RhbmNlb2YgUGQ7cmV0dXJuIGV8fGY/ZSYmZj9jLmdldFZhbHVlKCk9PT1kLmdldFZhbHVlKCk6ITE6Yz09ZH1mdW5jdGlvbiBsZSgpe2Zvcih2YXIgYSxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKylhPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKTtyZXR1cm4gYX1mdW5jdGlvbiBtZShhLGIsYyxkKXtmb3IodmFyIGU9MDtlPGIoKTtlKyspe3ZhciBmPWEoYyhlKSksZz1lYihmLGQpO2lmKGcgaW5zdGFuY2VvZiBUYSl7aWYoZy50eXBlPT09ImJyZWFrIilicmVhaztpZihnLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gZ319fQpmdW5jdGlvbiBuZShhLGIsYyl7aWYodHlwZW9mIGI9PT0ic3RyaW5nIilyZXR1cm4gbWUoYSxmdW5jdGlvbigpe3JldHVybiBiLmxlbmd0aH0sZnVuY3Rpb24oZil7cmV0dXJuIGZ9LGMpO2lmKGIgaW5zdGFuY2VvZiBrYnx8YiBpbnN0YW5jZW9mIFNkfHxiIGluc3RhbmNlb2YgR2R8fGIgaW5zdGFuY2VvZiBLZCl7dmFyIGQ9Yi5GYSgpLGU9ZC5sZW5ndGg7cmV0dXJuIG1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gZX0sZnVuY3Rpb24oZil7cmV0dXJuIGRbZl19LGMpfX1mdW5jdGlvbiBvZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXtnLnNldChkLGgpO3JldHVybiBnfSxlLGYpfQpmdW5jdGlvbiBwZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXt2YXIgbD1nLndiKCk7bC5RaChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIG5lKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLmFkZChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHJlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe2cuc2V0KGQsaCk7cmV0dXJuIGd9LGUsZil9CmZ1bmN0aW9uIHRlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLlFoKGQsaCk7cmV0dXJuIGx9LGUsZil9ZnVuY3Rpb24gdWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gc2UoZnVuY3Rpb24oaCl7dmFyIGw9Zy53YigpO2wuYWRkKGQsaCk7cmV0dXJuIGx9LGUsZil9CmZ1bmN0aW9uIHNlKGEsYixjKXtpZih0eXBlb2YgYj09PSJzdHJpbmciKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RofSxmdW5jdGlvbihkKXtyZXR1cm4gYltkXX0sYyk7aWYoYiBpbnN0YW5jZW9mIEdkKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RoKCl9LGZ1bmN0aW9uKGQpe3JldHVybiBiLmdldChkKX0sYyk7dGhyb3cgY2IoRXJyb3IoIlRoZSB2YWx1ZSBpcyBub3QgaXRlcmFibGUuIikpO30KZnVuY3Rpb24gdmUoYSxiLGMsZCl7ZnVuY3Rpb24gZShxLHIpe2Zvcih2YXIgdD0wO3Q8Zi5sZW5ndGgoKTt0Kyspe3ZhciB1PWYuZ2V0KHQpO3IuYWRkKHUscS5nZXQodSkpfX12YXIgZj10aGlzLmV2YWx1YXRlKGEpO2lmKCEoZiBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiVHlwZUVycm9yOiBOb24tTGlzdCBhcmd1bWVudCBnaXZlbiB0byBGb3JMZXQgaW5zdHJ1Y3Rpb24uIik7dmFyIGc9dGhpcy5ULGg9dGhpcy5ldmFsdWF0ZShkKSxsPWcud2IoKTtmb3IoZShnLGwpO2ZiKGwsYik7KXt2YXIgbj1lYihsLGgpO2lmKG4gaW5zdGFuY2VvZiBUYSl7aWYobi50eXBlPT09ImJyZWFrIilicmVhaztpZihuLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gbn12YXIgcD1nLndiKCk7ZShsLHApO2ZiKHAsYyk7bD1wfX0KZnVuY3Rpb24gd2UoYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyksZD10aGlzLlQsZT10aGlzLmV2YWx1YXRlKGIpO2lmKCEoZSBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiRXJyb3I6IG5vbi1MaXN0IHZhbHVlIGdpdmVuIGZvciBGbiBhcmd1bWVudCBuYW1lcy4iKTtyZXR1cm4gbmV3IEtkKGEsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZj1PYS5hcHBseSgwLGFyZ3VtZW50cyksZz1kLndiKCk7Zy54YigpPT09dm9pZCAwJiZnLnVlKHRoaXMuVC54YigpKTtmb3IodmFyIGg9W10sbD0wO2w8Zi5sZW5ndGg7bCsrKXt2YXIgbj10aGlzLmV2YWx1YXRlKGZbbF0pO2hbbF09bn1mb3IodmFyIHA9ZS5nZXQoImxlbmd0aCIpLHE9MDtxPHA7cSsrKXE8aC5sZW5ndGg/Zy5hZGQoZS5nZXQocSksaFtxXSk6Zy5hZGQoZS5nZXQocSksdm9pZCAwKTtnLmFkZCgiYXJndW1lbnRzIixuZXcgR2QoaCkpO3ZhciByPWViKGcsYyk7aWYociBpbnN0YW5jZW9mIFRhKXJldHVybiByLnR5cGU9PT0KInJldHVybiI/ci5kYXRhOnJ9fSgpKX1mdW5jdGlvbiB4ZShhKXt2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9dGhpcy5UO2lmKHllJiYhYy5oYXMoYikpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKGIrIiBpcyBub3QgZGVmaW5lZC4iKTtyZXR1cm4gYy5nZXQoYil9CmZ1bmN0aW9uIHplKGEsYil7dmFyIGMsZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKTtpZihkPT09dm9pZCAwfHxkPT09bnVsbCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW5ub3QgcmVhZCBwcm9wZXJ0aWVzIG9mICIrZCsiIChyZWFkaW5nICciK2UrIicpIikpO2lmKGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkfHxkIGluc3RhbmNlb2YgR2R8fGQgaW5zdGFuY2VvZiBLZCljPWQuZ2V0KGUpO2Vsc2UgaWYodHlwZW9mIGQ9PT0ic3RyaW5nIillPT09Imxlbmd0aCI/Yz1kLmxlbmd0aDpGZChlKSYmKGM9ZFtlXSk7ZWxzZSBpZihkIGluc3RhbmNlb2YgUGQpcmV0dXJuO3JldHVybiBjfWZ1bmN0aW9uIEFlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk+dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBCZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpPj10aGlzLmV2YWx1YXRlKGIpfQpmdW5jdGlvbiBDZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO2MgaW5zdGFuY2VvZiBQZCYmKGM9Yy5nZXRWYWx1ZSgpKTtkIGluc3RhbmNlb2YgUGQmJihkPWQuZ2V0VmFsdWUoKSk7cmV0dXJuIGM9PT1kfWZ1bmN0aW9uIERlKGEsYil7cmV0dXJuIUNlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIEVlKGEsYixjKXt2YXIgZD1bXTt0aGlzLmV2YWx1YXRlKGEpP2Q9dGhpcy5ldmFsdWF0ZShiKTpjJiYoZD10aGlzLmV2YWx1YXRlKGMpKTt2YXIgZT1lYih0aGlzLlQsZCk7aWYoZSBpbnN0YW5jZW9mIFRhKXJldHVybiBlfXZhciB5ZT0hMTsKZnVuY3Rpb24gRmUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKTx0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIEdlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk8PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gSGUoKXtmb3IodmFyIGE9bmV3IEdkLGI9MDtiPGFyZ3VtZW50cy5sZW5ndGg7YisrKXt2YXIgYz10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiXSk7YS5wdXNoKGMpfXJldHVybiBhfWZ1bmN0aW9uIEllKCl7Zm9yKHZhciBhPW5ldyBrYixiPTA7Yjxhcmd1bWVudHMubGVuZ3RoLTE7Yis9Mil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKSksZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLnNldChjLGQpfXJldHVybiBhfWZ1bmN0aW9uIEplKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkldGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gS2UoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSp0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIExlKGEpe3JldHVybi10aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE1lKGEpe3JldHVybiF0aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE5lKGEsYil7cmV0dXJuIWtlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIE9lKCl7cmV0dXJuIG51bGx9ZnVuY3Rpb24gUGUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBRZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSk7dGhpcy5ldmFsdWF0ZShiKTtyZXR1cm4gY31mdW5jdGlvbiBSZShhKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKX1mdW5jdGlvbiBTZSgpe3JldHVybiBPYS5hcHBseSgwLGFyZ3VtZW50cyl9ZnVuY3Rpb24gVGUoYSl7cmV0dXJuIG5ldyBUYSgicmV0dXJuIix0aGlzLmV2YWx1YXRlKGEpKX0KZnVuY3Rpb24gVWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZihkPT09bnVsbHx8ZD09PXZvaWQgMCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW4ndCBzZXQgcHJvcGVydHkgIitlKyIgb2YgIitkKyIuIikpOyhkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBHZHx8ZCBpbnN0YW5jZW9mIGtiKSYmZC5zZXQoU3RyaW5nKGUpLGYpO3JldHVybiBmfWZ1bmN0aW9uIFZlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSktdGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gV2UoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZighQXJyYXkuaXNBcnJheShlKXx8IUFycmF5LmlzQXJyYXkoZikpdGhyb3cgRXJyb3IoIkVycm9yOiBNYWxmb3JtZWQgc3dpdGNoIGluc3RydWN0aW9uLiIpO2Zvcih2YXIgZyxoPSExLGw9MDtsPGUubGVuZ3RoO2wrKylpZihofHxkPT09dGhpcy5ldmFsdWF0ZShlW2xdKSlpZihnPXRoaXMuZXZhbHVhdGUoZltsXSksZyBpbnN0YW5jZW9mIFRhKXt2YXIgbj1nLnR5cGU7aWYobj09PSJicmVhayIpcmV0dXJuO2lmKG49PT0icmV0dXJuInx8bj09PSJjb250aW51ZSIpcmV0dXJuIGd9ZWxzZSBoPSEwO2lmKGYubGVuZ3RoPT09ZS5sZW5ndGgrMSYmKGc9dGhpcy5ldmFsdWF0ZShmW2YubGVuZ3RoLTFdKSxnIGluc3RhbmNlb2YgVGEmJihnLnR5cGU9PT0icmV0dXJuInx8Zy50eXBlPT09ImNvbnRpbnVlIikpKXJldHVybiBnfQpmdW5jdGlvbiBYZShhLGIsYyl7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk/dGhpcy5ldmFsdWF0ZShiKTp0aGlzLmV2YWx1YXRlKGMpfWZ1bmN0aW9uIFllKGEpe3ZhciBiPXRoaXMuZXZhbHVhdGUoYSk7cmV0dXJuIGIgaW5zdGFuY2VvZiBLZD8iZnVuY3Rpb24iOnR5cGVvZiBifWZ1bmN0aW9uIFplKCl7Zm9yKHZhciBhPXRoaXMuVCxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKyl7dmFyIGM9YXJndW1lbnRzW2JdO3R5cGVvZiBjIT09InN0cmluZyJ8fGEuYWRkKGMsdm9pZCAwKX19CmZ1bmN0aW9uICRlKGEsYixjLGQpe3ZhciBlPXRoaXMuZXZhbHVhdGUoZCk7aWYodGhpcy5ldmFsdWF0ZShjKSl7dmFyIGY9ZWIodGhpcy5ULGUpO2lmKGYgaW5zdGFuY2VvZiBUYSl7aWYoZi50eXBlPT09ImJyZWFrIilyZXR1cm47aWYoZi50eXBlPT09InJldHVybiIpcmV0dXJuIGZ9fWZvcig7dGhpcy5ldmFsdWF0ZShhKTspe3ZhciBnPWViKHRoaXMuVCxlKTtpZihnIGluc3RhbmNlb2YgVGEpe2lmKGcudHlwZT09PSJicmVhayIpYnJlYWs7aWYoZy50eXBlPT09InJldHVybiIpcmV0dXJuIGd9dGhpcy5ldmFsdWF0ZShiKX19ZnVuY3Rpb24gYWYoYSl7cmV0dXJufk51bWJlcih0aGlzLmV2YWx1YXRlKGEpKX1mdW5jdGlvbiBiZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk8PE51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBjZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk+Pk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX0KZnVuY3Rpb24gZGYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpPj4+TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGVmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKSZOdW1iZXIodGhpcy5ldmFsdWF0ZShiKSl9ZnVuY3Rpb24gZmYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpXk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBnZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSl8TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGhmKCl7fQpmdW5jdGlvbiBrZihhLGIsYyl7dHJ5e3ZhciBkPXRoaXMuZXZhbHVhdGUoYik7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfWNhdGNoKGgpe2lmKCEoaCBpbnN0YW5jZW9mIGJiJiZoLlNuKSl0aHJvdyBoO3ZhciBlPXRoaXMuVC53YigpO2EhPT0iIiYmKGggaW5zdGFuY2VvZiBiYiYmKGg9aC52byksZS5hZGQoYSxuZXcgUGQoaCkpKTt2YXIgZj10aGlzLmV2YWx1YXRlKGMpLGc9ZWIoZSxmKTtpZihnIGluc3RhbmNlb2YgVGEpcmV0dXJuIGd9fWZ1bmN0aW9uIGxmKGEsYil7dmFyIGMsZDt0cnl7ZD10aGlzLmV2YWx1YXRlKGEpfWNhdGNoKGYpe2lmKCEoZiBpbnN0YW5jZW9mIGJiJiZmLlNuKSl0aHJvdyBmO2M9Zn12YXIgZT10aGlzLmV2YWx1YXRlKGIpO2lmKGUgaW5zdGFuY2VvZiBUYSlyZXR1cm4gZTtpZihjKXRocm93IGM7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfTt2YXIgbmY9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IGdiO21mKHRoaXMpfTtuZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5ILnJrKGEpfTt2YXIgbWY9ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oYyxkKXt2YXIgZT1uZXcgTGQoU3RyaW5nKGMpLGQpO2UuWmEoKTt2YXIgZj1TdHJpbmcoYyk7YS5ILkguc2V0KGYsZSk7ZGIuc2V0KGYsZSl9O2IoIm1hcCIsSWUpO2IoImFuZCIsdGQpO2IoImNvbnRhaW5zIix3ZCk7YigiZXF1YWxzIix1ZCk7Yigib3IiLHZkKTtiKCJzdGFydHNXaXRoIix4ZCk7YigidmFyaWFibGUiLHlkKX07bmYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07dmFyIHBmPWZ1bmN0aW9uKCl7dGhpcy5LPSExO3RoaXMuSD1uZXcgZ2I7b2YodGhpcyk7dGhpcy5LPSEwfTtwZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gcWYodGhpcy5ILnJrKGEpKX07dmFyIHJmPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gcWYoYS5ILkpxKGIsYykpfTtwZi5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07CnZhciBvZj1mdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihjLGQpe3ZhciBlPVN0cmluZyhjKSxmPW5ldyBMZChlLGQpO2YuWmEoKTthLkguSC5zZXQoZSxmKTtkYi5zZXQoZSxmKX07YigwLFpkKTtiKDEsJGQpO2IoMixhZSk7YigzLGJlKTtiKDU2LGVmKTtiKDU3LGJmKTtiKDU4LGFmKTtiKDU5LGdmKTtiKDYwLGNmKTtiKDYxLGRmKTtiKDYyLGZmKTtiKDUzLGNlKTtiKDQsZGUpO2IoNSxlZSk7Yig2OCxrZik7Yig1MixmZSk7Yig2LGdlKTtiKDQ5LGhlKTtiKDcsSGUpO2IoOCxJZSk7Yig5LGVlKTtiKDUwLGllKTtiKDEwLGplKTtiKDEyLGtlKTtiKDEzLGxlKTtiKDY3LGxmKTtiKDUxLHdlKTtiKDQ3LG9lKTtiKDU0LHBlKTtiKDU1LHFlKTtiKDYzLHZlKTtiKDY0LHJlKTtiKDY1LHRlKTtiKDY2LHVlKTtiKDE1LHhlKTtiKDE2LHplKTtiKDE3LHplKTtiKDE4LEFlKTtiKDE5LEJlKTtiKDIwLENlKTtiKDIxLERlKTtiKDIyLEVlKTtiKDIzLEZlKTtiKDI0LEdlKTtiKDI1LEplKTtiKDI2LApLZSk7YigyNyxMZSk7YigyOCxNZSk7YigyOSxOZSk7Yig0NSxPZSk7YigzMCxQZSk7YigzMixRZSk7YigzMyxRZSk7YigzNCxSZSk7YigzNSxSZSk7Yig0NixTZSk7YigzNixUZSk7Yig0MyxVZSk7YigzNyxWZSk7YigzOCxXZSk7YigzOSxYZSk7Yig0MCxZZSk7Yig0NCxoZik7Yig0MSxaZSk7Yig0MiwkZSl9O3BmLnByb3RvdHlwZS5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkguamUoKX07cGYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07cGYucHJvdG90eXBlLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSC5zZChhKX07CmZ1bmN0aW9uIHFmKGEpe2lmKGEgaW5zdGFuY2VvZiBUYXx8YSBpbnN0YW5jZW9mIEtkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgUGR8fGE9PT1udWxsfHxhPT09dm9pZCAwfHx0eXBlb2YgYT09PSJzdHJpbmcifHx0eXBlb2YgYT09PSJudW1iZXIifHx0eXBlb2YgYT09PSJib29sZWFuIilyZXR1cm4gYX07dmFyIHNmPWZ1bmN0aW9uKGEpe3RoaXMubWVzc2FnZT1hfTtmdW5jdGlvbiB0ZihhKXthLnF2PSEwO3JldHVybiBhfTt2YXIgdWY9dGYoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9KSx2Zj10ZihmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIn0pLHdmPXRmKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn0pO2Z1bmN0aW9uIHhmKGEpe3ZhciBiPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIlthXTtyZXR1cm4gYj09PXZvaWQgMD9uZXcgc2YoIlZhbHVlICIrYSsiIGNhbiBub3QgYmUgZW5jb2RlZCBpbiB3ZWItc2FmZSBiYXNlNjQgZGljdGlvbmFyeS4iKTpifTtmdW5jdGlvbiB5ZihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiIxIjtjYXNlIDI6Y2FzZSA0OnJldHVybiIwIjtkZWZhdWx0OnJldHVybiItIn19O3ZhciB6Zj0vXlsxLTlhLXpBLVpfLV1bMS05YS1jXVsxLTlhLXZdXGQkLztmdW5jdGlvbiBBZihhLGIpe2Zvcih2YXIgYz0iIixkPSEwO2E+Nzspe3ZhciBlPWEmMzE7YT4+PTU7ZD9kPSExOmV8PTMyO2M9IiIreGYoZSkrY31hPDw9MjtkfHwoYXw9MzIpO3JldHVybiBjPSIiK3hmKGF8YikrY31mdW5jdGlvbiBCZihhLGIpe3JldHVybiBiPT09dm9pZCAwfHxiPT09MD8iIjoiIitBZihhLDEpK3hmKGIpfQpmdW5jdGlvbiBDZihhLGIpe3ZhciBjO3ZhciBkPWEuaGksZT1hLmJrO2Q9PT12b2lkIDA/Yz0iIjooZXx8KGU9MCksYz0iIitBZigxLDEpK3hmKGQ8PDJ8ZSkpO3ZhciBmPSI0IitjK0JmKDIsYS5xciksZyxoPWEuSW87Zz1oJiZ6Zi50ZXN0KGgpPyIiK0FmKDMsMikraDoiIjt2YXIgbDt2YXIgbj1hLmN0aWQ7aWYobiYmYil7dmFyIHA9QWYoNSwzKSxxPW4uc3BsaXQoIi0iKSxyPXFbMF0udG9VcHBlckNhc2UoKTtpZihyIT09IkdUTSImJnIhPT0iT1BUIilsPSIiO2Vsc2V7dmFyIHQ9cVsxXTtsPSIiK3AreGYoMSt0Lmxlbmd0aCkrKGEuTHN8fDApK3R9fWVsc2UgbD0iIjt2YXIgdT1hLmNhbm9uaWNhbElkLHY9YS5tYyx4PWEuenYseT1mK2crQmYoNCxhLkRvKStsK0JmKDYsYS5EdCkrKHU/IiIrQWYoNywzKSt4Zih1Lmxlbmd0aCkrdToiIikrKHY/IiIrQWYoOCwzKSt4Zih2Lmxlbmd0aCkrdjoiIikrKHg/IiIrQWYoOSwzKSt4Zih4Lmxlbmd0aCkreDoiIiksejt2YXIgQz1hLnpyO0M9CkM9PT12b2lkIDA/e306Qztmb3IodmFyIEQ9W10sST1tKE9iamVjdC5rZXlzKEMpKSxHPUkubmV4dCgpOyFHLmRvbmU7Rz1JLm5leHQoKSl7dmFyIE49Ry52YWx1ZTtEW051bWJlcihOKV09Q1tOXX1pZihELmxlbmd0aCl7dmFyIFM9QWYoMTAsMyksVztpZihELmxlbmd0aD09PTApVz14ZigwKTtlbHNle2Zvcih2YXIgZWE9W10samE9MCxmYT0hMSxzYT0wO3NhPEQubGVuZ3RoO3NhKyspe2ZhPSEwO3ZhciBkYT1zYSU2O0Rbc2FdJiYoamF8PTE8PGRhKTtkYT09PTUmJihlYS5wdXNoKHhmKGphKSksamE9MCxmYT0hMSl9ZmEmJmVhLnB1c2goeGYoamEpKTtXPWVhLmpvaW4oIiIpfXZhciBtYT1XO3o9IiIrUyt4ZihtYS5sZW5ndGgpK21hfWVsc2Ugej0iIjt2YXIgUGE9YS5VcyxGYT1hLm50O3JldHVybiB5K3orKFBhPyIiK0FmKDExLDMpK3hmKFBhLmxlbmd0aCkrUGE6IiIpKyhGYT8iIitBZigxMywzKSt4ZihGYS5sZW5ndGgpK0ZhOiIiKStCZigxNCxhLkV0KStCZigxNSxhLnJ2KStCZigxNiwKYS5Bdil9O2Z1bmN0aW9uIERmKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZTwxMjg/YltjKytdPWU6KGU8MjA0OD9iW2MrK109ZT4+NnwxOTI6KChlJjY0NTEyKT09NTUyOTYmJmQrMTxhLmxlbmd0aCYmKGEuY2hhckNvZGVBdChkKzEpJjY0NTEyKT09NTYzMjA/KGU9NjU1MzYrKChlJjEwMjMpPDwxMCkrKGEuY2hhckNvZGVBdCgrK2QpJjEwMjMpLGJbYysrXT1lPj4xOHwyNDAsYltjKytdPWU+PjEyJjYzfDEyOCk6YltjKytdPWU+PjEyfDIyNCxiW2MrK109ZT4+NiY2M3wxMjgpLGJbYysrXT1lJjYzfDEyOCl9cmV0dXJuIGJ9O2Z1bmN0aW9uIEVmKGEsYil7Zm9yKHZhciBjPXFiKGIpLGQ9bmV3IFVpbnQ4QXJyYXkoYy5sZW5ndGgpLGU9MDtlPGMubGVuZ3RoO2UrKylkW2VdPWMuY2hhckNvZGVBdChlKTtpZihkLmxlbmd0aCE9PTMyKXRocm93IEVycm9yKCJLZXkgaXMgbm90IDMyIGJ5dGVzLiIpO3JldHVybiBGZihhLGQpfWZ1bmN0aW9uIEZmKGEsYil7aWYoYT09PSIiKXJldHVybiIiO3ZhciBjPVpiKGEpLGQ9Yi5zbGljZSgtMiksZT1bXS5jb25jYXQodyhkKSx3KGMpKS5tYXAoZnVuY3Rpb24oZyxoKXtyZXR1cm4gZ15iW2glYi5sZW5ndGhdfSksZj1uZXcgVWludDhBcnJheShbXS5jb25jYXQodyhlKSx3KGQpKSk7cmV0dXJuIHBiKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoU3RyaW5nLHcoZikpKS5yZXBsYWNlKC9cLiskLywiIil9O3ZhciBHZj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYil7cmV0dXJue3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9fX1yZXR1cm57Y3A6YSgiY29uc2VudCIpLFprOmEoImNvbnZlcnRfY2FzZV90byIpLGFsOmEoImNvbnZlcnRfZmFsc2VfdG8iKSxibDphKCJjb252ZXJ0X251bGxfdG8iKSxlcDphKCJjb252ZXJ0X3RvX2Jvb2xlYW4iKSxhaDphKCJjb252ZXJ0X3RvX251bWJlciIpLGZsOmEoImNvbnZlcnRfdHJ1ZV90byIpLGlsOmEoImNvbnZlcnRfdW5kZWZpbmVkX3RvIiksWXQ6YSgiZGVidWdfbW9kZV9tZXRhZGF0YSIpLFliOmEoImZ1bmN0aW9uIiksUm06YSgiaW5zdGFuY2VfbmFtZSIpLE5xOmEoImxpdmVfb25seSIpLE9xOmEoIm1hbHdhcmVfZGlzYWJsZWQiKSxNRVRBREFUQTphKCJtZXRhZGF0YSIpLFJxOmEoIm9yaWdpbmFsX2FjdGl2aXR5X2lkIiksVHU6YSgib3JpZ2luYWxfdmVuZG9yX3RlbXBsYXRlX2lkIiksU3U6YSgib25jZV9vbl9sb2FkIiksUXE6YSgib25jZV9wZXJfZXZlbnQiKSwKa246YSgib25jZV9wZXJfbG9hZCIpLFZ1OmEoInByaW9yaXR5X292ZXJyaWRlIiksWXU6YSgicmVzcGVjdGVkX2NvbnNlbnRfdHlwZXMiKSx0bjphKCJzZXR1cF90YWdzIikseWo6YSgidGFnX2lkIiksRG46YSgidGVhcmRvd25fdGFncyIpLHBsOmEoImRpc2FibGVkX2luX2dvb2dsZV9tb2RlIiksRnE6YSgiZ2VuZXJhdGVkX3RhZ2dpbmdfbWV0YWRhdGEiKX19KCk7ZnVuY3Rpb24gSGYoYSxiKXt2YXIgYz17fTtjW0dmLlliXT0iX18iK2E7Zm9yKHZhciBkIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbInZ0cF8iK2RdPWJbZF0pO3JldHVybiBjfTtmdW5jdGlvbiBJZihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjLGQ7cmV0dXJuKChjPWRhdGEpPT1udWxsPzA6KGQ9Yy5ibG9iKT09bnVsbD8wOmQuaGFzT3duUHJvcGVydHkoYSkpPyEhZGF0YS5ibG9iW2FdOmJ9ZnVuY3Rpb24gRShhKXt2YXIgYjtiPWI9PT12b2lkIDA/IiI6Yjt2YXIgYyxkO3JldHVybigoYz1kYXRhKT09bnVsbD8wOihkPWMuYmxvYik9PW51bGw/MDpkLmhhc093blByb3BlcnR5KGEpKT9TdHJpbmcoZGF0YS5ibG9iW2FdKTpifWZ1bmN0aW9uIEpmKGEpe3ZhciBiLGM7cmV0dXJuKChiPWRhdGEpPT1udWxsPzA6KGM9Yi5ibG9iKT09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihkYXRhLmJsb2JbYV0pOjB9ZnVuY3Rpb24gS2YoYSl7dmFyIGI7Yj1iPT09dm9pZCAwP1tdOmI7dmFyIGMsZCxlPShjPWRhdGEpPT1udWxsP3ZvaWQgMDooZD1jLmJsb2IpPT1udWxsP3ZvaWQgMDpkW2FdO3JldHVybiBBcnJheS5pc0FycmF5KGUpP2U6Yn0KZnVuY3Rpb24gTGYoYSl7dmFyIGI7Yj1iPT09dm9pZCAwPyIiOmI7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP1N0cmluZyhjW2FdKTpifWZ1bmN0aW9uIE5mKGEsYil7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihjW2FdKTpifWZ1bmN0aW9uIE1mKGEpe3ZhciBiLGM7cmV0dXJuKGI9ZGF0YSk9PW51bGw/dm9pZCAwOihjPWIuYmxvYik9PW51bGw/dm9pZCAwOmNbYV19O3ZhciBPZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7ZD1FcnJvci5jYWxsKHRoaXMsYyk7dGhpcy5tZXNzYWdlPWQubWVzc2FnZTsic3RhY2siaW4gZCYmKHRoaXMuc3RhY2s9ZC5zdGFjayk7dGhpcy5wZXJtaXNzaW9uSWQ9YTt0aGlzLnBhcmFtZXRlcnM9Yjt0aGlzLm5hbWU9IlBlcm1pc3Npb25FcnJvciJ9O3dhKE9mLEVycm9yKTtPZi5wcm90b3R5cGUuZ2V0TWVzc2FnZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1lc3NhZ2V9O2Z1bmN0aW9uIFBmKGEsYil7aWYoQXJyYXkuaXNBcnJheShhKSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsImNvbnRleHQiLHt2YWx1ZTp7bGluZTpiWzBdfX0pO2Zvcih2YXIgYz0xO2M8YS5sZW5ndGg7YysrKVBmKGFbY10sYltjXSl9fTtmdW5jdGlvbiBRZigpe3JldHVybiBmdW5jdGlvbihhLGIpe3ZhciBjO3ZhciBkPVJmO2EgaW5zdGFuY2VvZiBiYj8oYS5IPWQsYz1hKTpjPW5ldyBiYihhLGQpO3ZhciBlPWM7YiYmZS5LLnB1c2goYik7dGhyb3cgZTt9fWZ1bmN0aW9uIFJmKGEpe2lmKCFhLmxlbmd0aClyZXR1cm4gYTthLnB1c2goe2lkOiJtYWluIixsaW5lOjB9KTtmb3IodmFyIGI9YS5sZW5ndGgtMTtiPjA7Yi0tKUFiKGFbYl0uaWQpJiZhLnNwbGljZShiKyssMSk7Zm9yKHZhciBjPWEubGVuZ3RoLTE7Yz4wO2MtLSlhW2NdLmxpbmU9YVtjLTFdLmxpbmU7YS5zcGxpY2UoMCwxKTtyZXR1cm4gYX07dmFyIFNmPVJlZ0V4cCgiW14wLTlcXC4rLV0iLCJnIiksVGY9UmVnRXhwKCJbXjAtOVxcLCstXSIsImciKSxVZj1SZWdFeHAoIlteMC05Ky1dIiwiZyIpOwpmdW5jdGlvbiBWZihhLGIpe2lmKHR5cGVvZiBhPT09Im51bWJlciIpcmV0dXJuIGE7dmFyIGM9U3RyaW5nKGEpLGQ7aWYoYj09PSJBVVRPTUFUSUMiKXt2YXIgZT0oYy5tYXRjaCgvXC4vZyl8fFtdKS5sZW5ndGgsZj0oYy5tYXRjaCgvLC9nKXx8W10pLmxlbmd0aCxnPSJOT05FIjtpZihlPjAmJmY+MCl7dmFyIGg9Yy5sYXN0SW5kZXhPZigiLiIpPmMubGFzdEluZGV4T2YoIiwiKTtoJiZlPT09MT9nPSJQRVJJT0QiOmh8fGYhPT0xfHwoZz0iQ09NTUEiKX1lbHNlIGU9PT0xP2c9KGMuc3BsaXQoIi4iKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJQRVJJT0QiOiJOT05FIjpmPT09MSYmKGc9KGMuc3BsaXQoIiwiKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJDT01NQSI6Ik5PTkUiKTtkPWd9ZWxzZSBkPWI9PT0iQ09NTUEiPyJDT01NQSI6IlBFUklPRCI7dmFyIGwsbjtkPT09IlBFUklPRCI/KGw9Ii4iLG49U2YpOmQ9PT0iQ09NTUEiPyhsPSIsIiwKbj1UZik6KGw9IiIsbj1VZik7dmFyIHA9Yy5yZXBsYWNlKG4sIiIpO2lmKGwhPT0iIiYmcC5zcGxpdChsKS5sZW5ndGg+MilyZXR1cm4gYTt2YXIgcT1wLnJlcGxhY2UoLywvZywiLiIpO2lmKHE9PT0iIilyZXR1cm4gYTt2YXIgcj1OdW1iZXIocSk7cmV0dXJuIGlzTmFOKHIpP2E6cn07dmFyIFdmPVtdLFhmPXt9O2Z1bmN0aW9uIFlmKGEpe3JldHVybiBXZlthXT09PXZvaWQgMD8hMTpXZlthXX07dmFyIFpmPWZ1bmN0aW9uKCl7dGhpcy5IPXt9fSwkZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7KGQ9YS5IKVtiXSE9bnVsbHx8KGRbYl09W10pO2EuSFtiXS5wdXNoKGZ1bmN0aW9uKCl7cmV0dXJuIGMuYXBwbHkobnVsbCx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfSl9O2Z1bmN0aW9uIGFnKGEsYixjLGQpe2lmKGEpZm9yKHZhciBlPTA7ZTxhLmxlbmd0aDtlKyspe3ZhciBmPXZvaWQgMCxnPSJBIHBvbGljeSBmdW5jdGlvbiBkZW5pZWQgdGhlIHBlcm1pc3Npb24gcmVxdWVzdCI7dHJ5e2Y9YVtlXShiLGMsZCksZys9Ii4ifWNhdGNoKGgpe2c9dHlwZW9mIGg9PT0ic3RyaW5nIj9nKygiOiAiK2gpOmggaW5zdGFuY2VvZiBFcnJvcj9nKygiOiAiK2gubWVzc2FnZSk6ZysiLiJ9aWYoIWYpdGhyb3cgbmV3IE9mKGMsZCxnKTt9fQpmdW5jdGlvbiBiZyhhLGIpe3ZhciBjPWNnKGRnLkgsYixmdW5jdGlvbigpe3JldHVybnt9fSk7dHJ5e3JldHVybiBjKGEpLCEwfWNhdGNoKGQpe3JldHVybiExfX1mdW5jdGlvbiBjZyhhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQpe2lmKGQpe3ZhciBlPWEuSFtkXSxmPWEuSC5hbGw7aWYoZXx8Zil7dmFyIGc9Yy5hcHBseSh2b2lkIDAsW2RdLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKTthZyhlLGIsZCxnKTthZyhmLGIsZCxnKX19fX07dmFyIGdnPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSz17fTt0aGlzLkg9bmV3IFpmO3ZhciBlPXt9LGY9e30sZz1jZyh0aGlzLkgsYSxmdW5jdGlvbihoKXtyZXR1cm4gaCYmZVtoXT9lW2hdLmFwcGx5KHZvaWQgMCxbaF0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpOnt9fSk7R2IoYixmdW5jdGlvbihoLGwpe2Z1bmN0aW9uIG4ocSl7dmFyIHI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKCFwW3FdKXRocm93IGVnKHEse30sIlRoZSByZXF1ZXN0ZWQgYWRkaXRpb25hbCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO2cuYXBwbHkobnVsbCxbcV0uY29uY2F0KHcocikpKX12YXIgcD17fTtHYihsLGZ1bmN0aW9uKHEscil7dmFyIHQ9ZmcocSxyLGMpO3BbcV09dC5hc3NlcnQ7ZVtxXXx8KGVbcV09dC5hYSk7dC5PbiYmIWZbcV0mJihmW3FdPXQuT24pfSk7ZC5LW2hdPWZ1bmN0aW9uKHEscil7dmFyIHQ9cFtxXTtpZighdCl0aHJvdyBlZyhxLAp7fSwiVGhlIHJlcXVlc3RlZCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO3ZhciB1PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKTt0LmFwcGx5KHZvaWQgMCx1KTtnLmFwcGx5KHZvaWQgMCx1KTt2YXIgdj1mW3FdO3YmJnYuYXBwbHkobnVsbCxbbl0uY29uY2F0KHcodS5zbGljZSgxKSkpKX19KX0saGc9ZnVuY3Rpb24oYSl7cmV0dXJuIGRnLktbYV18fGZ1bmN0aW9uKCl7fX07CmZ1bmN0aW9uIGZnKGEsYixjKXt0cnl7dmFyIGQ9Y1siX18iK2FdO2lmKCFkKXRocm93IEVycm9yKCJObyBmdW5jdGlvbiBmb3VuZCBmb3IgcGVybWlzc2lvbjogIithKyIuIik7dmFyIGU9SGYoYSxiKTtlLnZ0cF9wZXJtaXNzaW9uTmFtZT1hO2UudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcj1lZztkZWxldGUgZVtHZi5ZYl07cmV0dXJuIGQoZSl9Y2F0Y2goZil7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihnKXt0aHJvdyBuZXcgT2YoZyx7fSwiUGVybWlzc2lvbiAiK2crIiBpcyB1bmtub3duLiIpO30sYWE6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgT2YoYSx7fSwiUGVybWlzc2lvbiAiK2ErIiBpcyB1bmtub3duLiIpO319fX1mdW5jdGlvbiBlZyhhLGIsYyl7cmV0dXJuIG5ldyBPZihhLGIsYyl9O3ZhciBpZz1FKDUpLGpnPUUoMjApLGtnPUUoMSksbGc9ITE7dmFyIG1nPXt9O21nLlBvPUlmKDI5KTttZy5Lcj1JZigyOCk7ZnVuY3Rpb24gbmcoYSl7dmFyIGI9MSxjLGQsZTtpZihhKWZvcihiPTAsZD1hLmxlbmd0aC0xO2Q+PTA7ZC0tKWU9YS5jaGFyQ29kZUF0KGQpLGI9KGI8PDYmMjY4NDM1NDU1KStlKyhlPDwxNCksYz1iJjI2NjMzODMwNCxiPWMhPT0wP2JeYz4+MjE6YjtyZXR1cm4gYn07dmFyIG9nPWZ1bmN0aW9uKGEpe3RoaXMuY2FjaGU9YX07b2cucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXt2YXIgYj1uZyhhKSxjPXRoaXMuY2FjaGUuZ2V0KGIpO2lmKCFjKXJldHVybntwcm9taXNlOnZvaWQgMCxLajowfTtpZihEYXRlLm5vdygpPj1jLnRpbWVzdGFtcCs5RTUpcmV0dXJuIHRoaXMuY2FjaGUuZGVsZXRlKGIpLHtwcm9taXNlOnZvaWQgMCxLajozfTt2YXIgZD1jLnJlc29sdmVkVmFsdWU/MjoxO3JldHVybntwcm9taXNlOmMucmVzb2x2ZWRWYWx1ZT9Qcm9taXNlLnJlc29sdmUoYy5yZXNvbHZlZFZhbHVlKTpjLnByb21pc2UsS2o6ZH19O29nLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz17cHJvbWlzZTpiLHJlc29sdmVkVmFsdWU6dm9pZCAwLHRpbWVzdGFtcDpEYXRlLm5vdygpfTt0aGlzLmNhY2hlLnNldChuZyhhKSxjKTtiLnRoZW4oZnVuY3Rpb24oZCl7Yy5yZXNvbHZlZFZhbHVlPWR9KX07ZnVuY3Rpb24gcGcoYSl7c3dpdGNoKGEpe2Nhc2UgMDpicmVhaztjYXNlIDk6cmV0dXJuImU0IjtjYXNlIDY6cmV0dXJuImU1IjtjYXNlIDE0OnJldHVybiJlNiI7ZGVmYXVsdDpyZXR1cm4iZTcifX07dmFyIEY9e0Q6e1hhOiJhZF9wZXJzb25hbGl6YXRpb24iLGthOiJhZF9zdG9yYWdlIixtYToiYWRfdXNlcl9kYXRhIixyYToiYW5hbHl0aWNzX3N0b3JhZ2UiLG5jOiJyZWdpb24iLHNhOiJjb25zZW50X3VwZGF0ZWQiLFlnOiJ3YWl0X2Zvcl91cGRhdGUiLGVoOiJlbmRwb2ludF90eXBlIixxcDoiYXBwX3JlbW92ZSIscnA6ImFwcF9zdG9yZV9yZWZ1bmQiLHRwOiJhcHBfc3RvcmVfc3Vic2NyaXB0aW9uX2NhbmNlbCIsdXA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY29udmVydCIsdnA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fcmVuZXciLHdwOiJjb25zZW50X3VwZGF0ZSIseHA6ImNvbnZlcnNpb24iLHZsOiJhZGRfcGF5bWVudF9pbmZvIix3bDoiYWRkX3NoaXBwaW5nX2luZm8iLHhlOiJhZGRfdG9fY2FydCIseWU6InJlbW92ZV9mcm9tX2NhcnQiLHhsOiJ2aWV3X2NhcnQiLEFkOiJiZWdpbl9jaGVja291dCIsZXU6ImdlbmVyYXRlX2xlYWQiLHplOiJzZWxlY3RfaXRlbSIsb2M6InZpZXdfaXRlbV9saXN0IiwKUWM6InNlbGVjdF9wcm9tb3Rpb24iLHFjOiJ2aWV3X3Byb21vdGlvbiIsSWI6InB1cmNoYXNlIixBZToicmVmdW5kIixyYzoidmlld19pdGVtIix5bDoiYWRkX3RvX3dpc2hsaXN0Iix5cDoiZXhjZXB0aW9uIix6cDoiZmlyc3Rfb3BlbiIsQXA6ImZpcnN0X3Zpc2l0Iix3YToiZ3RhZy5jb25maWciLEpiOiJndGFnLmdldCIsQnA6ImluX2FwcF9wdXJjaGFzZSIsc2M6InBhZ2VfdmlldyIsQ3A6InNjcmVlbl92aWV3IixEcDoic2Vzc2lvbl9zdGFydCIsRXA6InNvdXJjZV91cGRhdGUiLEZwOiJ0aW1pbmdfY29tcGxldGUiLEdwOiJ0cmFja19zb2NpYWwiLHlmOiJ1c2VyX2VuZ2FnZW1lbnQiLEhwOiJ1c2VyX2lkX3VwZGF0ZSIsZmg6ImJyYWlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLGdoOiJicmFpZF9zdG9yYWdlX3NvdXJjZSIsQmQ6ImdjbGlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLENkOiJnY2xpZF9zdG9yYWdlX3NvdXJjZSIsU2I6ImdjbGdiIixsYjoiZ2NsaWQiLHpsOiJnY2xpZF9sZW4iLApCZToiZ2NsZ3MiLENlOiJnY2xscCIsRGU6ImdjbHN0IixtYjoiYWRzX2RhdGFfcmVkYWN0aW9uIix6ZjoiZ2FkX3NvdXJjZSIsQWY6ImdhZF9zb3VyY2Vfc3JjIixEZDoiZ2NsaWRfdXJsIixBbDoiZ2Nsc3JjIixCZjoiZ2JyYWlkIixFZToid2JyYWlkIixSYzoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uX3NpZ25hbHMiLHJpOiJhbGxvd19jdXN0b21fc2NyaXB0cyIsaGg6ImFsbG93X2Rpc3BsYXlfZmVhdHVyZXMiLHNpOiJhbGxvd19lbmhhbmNlZF9jb252ZXJzaW9ucyIsU2M6ImFsbG93X2dvb2dsZV9zaWduYWxzIix1aToiYWxsb3dfaW50ZXJlc3RfZ3JvdXBzIixJcDoiYXBwX2lkIixKcDoiYXBwX2luc3RhbGxlcl9pZCIsS3A6ImFwcF9uYW1lIixMcDoiYXBwX3ZlcnNpb24iLEVkOiJhdWlkIixmdToiYXV0b19kZXRlY3Rpb25fZW5hYmxlZCIsQmw6ImF1dG9fZXZlbnQiLENsOiJhd19yZW1hcmtldGluZyIsaWg6ImF3X3JlbWFya2V0aW5nX29ubHkiLENmOiJkaXNjb3VudCIsRGY6ImF3X2ZlZWRfY291bnRyeSIsCkVmOiJhd19mZWVkX2xhbmd1YWdlIixIYToiaXRlbXMiLEZmOiJhd19tZXJjaGFudF9pZCIsd2k6ImF3X2Jhc2tldF90eXBlIixHZjoiY2FtcGFpZ25fY29udGVudCIsSGY6ImNhbXBhaWduX2lkIixJZjoiY2FtcGFpZ25fbWVkaXVtIixKZjoiY2FtcGFpZ25fbmFtZSIsS2Y6ImNhbXBhaWduIixMZjoiY2FtcGFpZ25fc291cmNlIixNZjoiY2FtcGFpZ25fdGVybSIsS2I6ImNsaWVudF9pZCIsRGw6InJuZCIseGk6ImNvbnNlbnRfdXBkYXRlX3R5cGUiLE1wOiJjb250ZW50X2dyb3VwIixOcDoiY29udGVudF90eXBlIixGZDoiY29udmVyc2lvbl9jb29raWVfcHJlZml4Iix5aToiY29udmVyc2lvbl9pZCIsdWM6ImNvbnZlcnNpb25fbGlua2VyIixIZDoiY29udmVyc2lvbl9saW5rZXJfZGlzYWJsZWQiLEZlOiJjb252ZXJzaW9uX2FwaSIsemk6Il8mcmNiIixqaDoiY29va2llX2RlcHJlY2F0aW9uIixMYjoiY29va2llX2RvbWFpbiIsQ2I6ImNvb2tpZV9leHBpcmVzIixUYjoiY29va2llX2ZsYWdzIiwKSWQ6ImNvb2tpZV9uYW1lIix2YzoiY29va2llX3BhdGgiLG5iOiJjb29raWVfcHJlZml4IixKZDoiY29va2llX3VwZGF0ZSIsVGM6ImNvdW50cnkiLGViOiJjdXJyZW5jeSIsR2U6ImN1c3RvbWVyX2xpZmV0aW1lX3ZhbHVlIixraDoiY3VzdG9tZXJfdHlwZSIsSGU6ImN1c3RvbV9tYXAiLEFpOiJnY2xkY19saW5rX2RlY29yYXRpb25fc291cmNlIixCaToiZ2NsZGNfc3RvcmFnZV9zb3VyY2UiLE5mOiJnY2xkYyIsS2Q6ImRjbGlkIixFbDoiZGVidWdfbW9kZSIsT2E6ImRldmVsb3Blcl9pZCIsT3A6ImRpc2FibGVfbWVyY2hhbnRfcmVwb3J0ZWRfcHVyY2hhc2VzIixVYzoiZGNfY3VzdG9tX3BhcmFtcyIsUHA6ImRjX25hdHVyYWxfc2VhcmNoIixRcDoiZHluYW1pY19ldmVudF9zZXR0aW5ncyIsRmw6ImFmZmlsaWF0aW9uIixtaDoiY2hlY2tvdXRfb3B0aW9uIixDaToiY2hlY2tvdXRfc3RlcCIsR2w6ImNvdXBvbiIsT2Y6Iml0ZW1fbGlzdF9uYW1lIixEaToibGlzdF9uYW1lIixScDoicHJvbW90aW9ucyIsCkxkOiJzaGlwcGluZyIsSGw6InRheCIsbmg6ImVuZ2FnZW1lbnRfdGltZV9tc2VjIixvaDoiZW5oYW5jZWRfY2xpZW50X2lkIixTcDoiZW5oYW5jZWRfY29udmVyc2lvbnMiLGd1OiJlbmhhbmNlZF9jb252ZXJzaW9uc19hdXRvbWF0aWNfc2V0dGluZ3MiLEllOiJlc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZSIsUGY6ImV2ZW50X2NhbGxiYWNrIixUcDoiZXZlbnRfY2F0ZWdvcnkiLFZjOiJldmVudF9kZXZlbG9wZXJfaWRfc3RyaW5nIixNZDoiZXZlbnRfaWQiLEVpOiJfZXZlbnRfam9pbl9pZCIsVXA6ImV2ZW50X2xhYmVsIixVYjoiZXZlbnQiLElsOiJfJmFlIixGaToiZXZlbnRfc2V0dGluZ3MiLHBoOiJldmVudF90aW1lb3V0IixWcDoiZGVzY3JpcHRpb24iLFdwOiJmYXRhbCIsWHA6ImV4cGVyaW1lbnRzIixOZDoiZXh0X2NsaWVudF9pZCIsR2k6ImZpcmViYXNlX2lkIixRZjoiZmlyc3RfcGFydHlfY29sbGVjdGlvbiIsUmY6Il94XzIwIixWYjoiX3hfMTkiLFlwOiJmbGlnaHRfZXJyb3JfY29kZSIsClpwOiJmbGlnaHRfZXJyb3JfbWVzc2FnZSIsSGk6ImZsX2FjdGl2aXR5X2NhdGVnb3J5IixJaToiZmxfYWN0aXZpdHlfZ3JvdXAiLHFoOiJmbF9hZHZlcnRpc2VyX2lkIixKaToibWF0Y2hfaWQiLEpsOiJmbF9yYW5kb21fbnVtYmVyIixLbDoidHJhbiIsTGw6InUiLHJoOiJnYWNfZ2NsaWQiLEplOiJnYWNfd2JyYWlkIixNbDoiZ2FjX3dicmFpZF9tdWx0aXBsZV9jb252ZXJzaW9ucyIsYXE6ImdhX3Jlc3RyaWN0X2RvbWFpbiIsTmw6ImdhX3RlbXBfY2xpZW50X2lkIixicToiZ2FfdGVtcF9lY2lkIixLZToiZ2Rwcl9hcHBsaWVzIixzaDoiX2d0X21ldGFkYXRhIixPbDoiZ2VvX2dyYW51bGFyaXR5IixTZjoidmFsdWVfY2FsbGJhY2siLFRmOiJ2YWx1ZV9rZXkiLFRhOiJnb29nbGVfYW5hbHlzaXNfcGFyYW1zIixMZToiX2dvb2dsZV9uZyIsY3E6Il9vbm8iLFVmOiJnb29nbGVfc2lnbmFscyIsZnE6Imdvb2dsZV90bGQiLHRoOiJncHBfc2lkIix1aDoiZ3BwX3N0cmluZyIsT2Q6Imdyb3VwcyIsClBsOiJnc2FfZXhwZXJpbWVudF9pZCIsVmY6Imd0YWdfZXZlbnRfZmVhdHVyZV91c2FnZSIsUWw6Imd0bV91cCIsTWU6ImlmcmFtZV9zdGF0ZSIsV2Y6Imlnbm9yZV9yZWZlcnJlciIsUmw6ImludGVybmFsX3RyYWZmaWNfcmVzdWx0cyIsU2w6Il9pc19mcG0iLFljOiJpc19sZWdhY3lfY29udmVydGVkIixaYzoiaXNfbGVnYWN5X2xvYWRlZCIsS2k6ImlzX3Bhc3N0aHJvdWdoIixQZDoiX2xwcyIsdGI6Imxhbmd1YWdlIixMaToibGVnYWN5X2RldmVsb3Blcl9pZF9zdHJpbmciLERiOiJsaW5rZXIiLFhmOiJhY2NlcHRfaW5jb21pbmciLHdjOiJkZWNvcmF0ZV9mb3JtcyIsQWE6ImRvbWFpbnMiLGFkOiJ1cmxfcG9zaXRpb24iLFFkOiJtZXJjaGFudF9mZWVkX2xhYmVsIixSZDoibWVyY2hhbnRfZmVlZF9sYW5ndWFnZSIsU2Q6Im1lcmNoYW50X2lkIixUbDoibWV0aG9kIixncToibmFtZSIsVWw6Im5hdmlnYXRpb25fdHlwZSIsTmU6Im5ld19jdXN0b21lciIsTWk6Im5vbl9pbnRlcmFjdGlvbiIsCmhxOiJvcHRpbWl6ZV9pZCIsVmw6InBhZ2VfaG9zdG5hbWUiLFlmOiJwYWdlX3BhdGgiLFVhOiJwYWdlX3JlZmVycmVyIixNYjoicGFnZV90aXRsZSIsaXE6InBhc3NlbmdlcnMiLFdsOiJwaG9uZV9jb252ZXJzaW9uX2NhbGxiYWNrIixqcToicGhvbmVfY29udmVyc2lvbl9jb3VudHJ5X2NvZGUiLFhsOiJwaG9uZV9jb252ZXJzaW9uX2Nzc19jbGFzcyIsa3E6InBob25lX2NvbnZlcnNpb25faWRzIixZbDoicGhvbmVfY29udmVyc2lvbl9udW1iZXIiLFpsOiJwaG9uZV9jb252ZXJzaW9uX29wdGlvbnMiLGxxOiJfcGxhdGludW1fcmVxdWVzdF9zdGF0dXMiLG1xOiJfcHJvdGVjdGVkX2F1ZGllbmNlX2VuYWJsZWQiLHdoOiJxdWFudGl0eSIseGg6InJlZGFjdF9kZXZpY2VfaW5mbyIsYW06InJlZmVycmFsX2V4Y2x1c2lvbl9kZWZpbml0aW9uIixodToiX3JlcXVlc3Rfc3RhcnRfdGltZSIsV2I6InJlc3RyaWN0ZWRfZGF0YV9wcm9jZXNzaW5nIixucToicmV0b2tlbiIsb3E6InNhbXBsZV9yYXRlIiwKTmk6InNjcmVlbl9uYW1lIixiZDoic2NyZWVuX3Jlc29sdXRpb24iLGJtOiJfc2NyaXB0X3NvdXJjZSIscHE6InNlYXJjaF90ZXJtIixUZDoic2VuZF9wYWdlX3ZpZXciLFhiOiJzZW5kX3RvIixPaToic2VydmVyX2NvbnRhaW5lcl8zcF9lbnJpY2htZW50IixkZDoic2VydmVyX2NvbnRhaW5lcl91cmwiLHFxOiJzZXNzaW9uX2F0dHJpYnV0ZXNfZW5jb2RlZCIseWg6InNlc3Npb25fZHVyYXRpb24iLHpoOiJzZXNzaW9uX2VuZ2FnZWQiLFBpOiJzZXNzaW9uX2VuZ2FnZWRfdGltZSIseGM6InNlc3Npb25faWQiLEFoOiJzZXNzaW9uX251bWJlciIsWmY6Il9zaGFyZWRfdXNlcl9pZCIsVWQ6ImRlbGl2ZXJ5X3Bvc3RhbF9jb2RlIixpdToiX3RhZ19maXJpbmdfZGVsYXkiLGp1OiJfdGFnX2ZpcmluZ190aW1lIixrdToidGVtcG9yYXJ5X2NsaWVudF9pZCIsUWk6InRlc3Rvbmx5IixycToiX3RpbWV6b25lIixQZToidG9wbW9zdF91cmwiLFFlOiJ0cmFja2luZ19pZCIsUmk6InRyYWZmaWNfdHlwZSIsClBhOiJ0cmFuc2FjdGlvbl9pZCIsZG06InRyYW5zYWN0aW9uX2lkX3NvdXJjZSIseWM6InRyYW5zcG9ydF91cmwiLHNxOiJ0cmlwX3R5cGUiLFZkOiJ1cGRhdGUiLHpjOiJ1cmxfcGFzc3Rocm91Z2giLGZtOiJ1cHRncyIsY2c6Il91c2VyX2FnZW50X2FyY2hpdGVjdHVyZSIsZGc6Il91c2VyX2FnZW50X2JpdG5lc3MiLGVnOiJfdXNlcl9hZ2VudF9mdWxsX3ZlcnNpb25fbGlzdCIsZmc6Il91c2VyX2FnZW50X21vYmlsZSIsZ2c6Il91c2VyX2FnZW50X21vZGVsIixoZzoiX3VzZXJfYWdlbnRfcGxhdGZvcm0iLGlnOiJfdXNlcl9hZ2VudF9wbGF0Zm9ybV92ZXJzaW9uIixqZzoiX3VzZXJfYWdlbnRfd293NjQiLEFjOiJ1c2VyX2RhdGEiLGdtOiJ1c2VyX2RhdGFfYXV0b19sYXRlbmN5IixobToidXNlcl9kYXRhX2F1dG9fbWV0YSIsaW06InVzZXJfZGF0YV9hdXRvX211bHRpIixqbToidXNlcl9kYXRhX2F1dG9fc2VsZWN0b3JzIixrbToidXNlcl9kYXRhX2F1dG9fc3RhdHVzIixCYzoidXNlcl9kYXRhX21vZGUiLApsbToidXNlcl9kYXRhX3NldHRpbmdzIixmYjoidXNlcl9pZCIsV2Q6InVzZXJfcHJvcGVydGllcyIsb206Il91c2VyX3JlZ2lvbiIsa2c6InVzX3ByaXZhY3lfc3RyaW5nIixRYToidmFsdWUiLHFtOiJ3YnJhaWRfbXVsdGlwbGVfY29udmVyc2lvbnMiLGVkOiJfZnBtX3BhcmFtZXRlcnMiLFdpOiJfaG9zdF9uYW1lIixWbToiX2luX3BhZ2VfY29tbWFuZCIsWWk6Il9pcF9vdmVycmlkZSIsWm06Il9pc19wYXNzdGhyb3VnaF9jaWQiLEpoOiJfbWVhc3VyZW1lbnRfdHlwZSIsZGU6Im5vbl9wZXJzb25hbGl6ZWRfYWRzIixvajoiX3NzdF9wYXJhbWV0ZXJzIixZcToic2d0bV9nZW9fdXNlcl9jb3VudHJ5IixHZDoiY29udmVyc2lvbl9sYWJlbCIsemE6InBhZ2VfbG9jYXRpb24iLFdjOiJfZXh0cmFjdGVkX2RhdGEiLFhjOiJnbG9iYWxfZGV2ZWxvcGVyX2lkX3N0cmluZyIsT2U6InRjX3ByaXZhY3lfc3RyaW5nIn19O3ZhciBIPXtKOntTbzoiYWJvcnRfd2l0aG91dF9mYWlsIixraToiYWNjZXB0X2J5X2RlZmF1bHQiLEJrOiJhZGRfdGFnX3RpbWluZyIsRGs6ImFkc19jb25zZW50X2dyYW50ZWQiLHZkOiJhZHNfZXZlbnRfcGFnZV92aWV3Iix3ZDoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uIixRdDoiYXV0b19ldmVudCIsS2s6ImJhdGNoX29uX25hdmlnYXRpb24iLFhnOiJiaXNjb3R0aV9qb2luX2lkIixQazoiY2xpZW50X2lkX3NvdXJjZSIsdWY6ImNvbnNlbnRfZXZlbnRfaWQiLHZmOiJjb25zZW50X3ByaW9yaXR5X2lkIixTdDoiY29uc2VudF9zdGF0ZSIsc2E6ImNvbnNlbnRfdXBkYXRlZCIsd2Y6ImNvbnZlcnNpb25fbGlua2VyX2VuYWJsZWQiLFR0OiJjb252ZXJzaW9uX21hcmtpbmdfY2FsbGVkIixHYToiY29va2llX29wdGlvbnMiLG9sOiJkY19yYW5kb20iLFp0OiJkZWR1cGVfaWQiLFBjOiJlbV9ldmVudCIsYnU6ImVuZHBvaW50X2Zvcl9kZWJ1ZyIsdGw6ImVuaGFuY2VkX2NsaWVudF9pZF9zb3VyY2UiLApwcDoiZW5oYW5jZWRfbWF0Y2hfcmVzdWx0IixybToiZXVpZF9sb2dnZWRfaW5fc3RhdGUiLGxnOiJldWlkX21vZGVfZW5hYmxlZCIsdHE6ImV2ZW50X3Byb3ZlbmFuY2UiLG11OiJldmVudF9zb3VyY2UiLEViOiJldmVudF9zdGFydF90aW1lc3RhbXBfbXMiLHdtOiJldmVudF91c2FnZSIsQ2g6ImV4dHJhX3RhZ19leHBlcmltZW50X2lkcyIscHU6ImFkZF9wYXJhbWV0ZXIiLFVpOiJjb3VudGluZ19tZXRob2QiLERoOiJzZW5kX2FzX2lmcmFtZSIscXU6InBhcmFtZXRlcl9vcmRlciIsRWg6InBhcnNlZF90YXJnZXQiLHN1OiJmb3JtX2V2ZW50X2NhbmNlbGVkIixBcToiZ2E0X2NvbGxlY3Rpb25fc3ViZG9tYWluIixWaToiZ2E0X3JlcXVlc3RfZmxhZ3MiLE5tOiJnYnJhaWRfY29va2llX21hcmtlZCIsUW06Imd0bV9leHRyYWN0ZWRfZGF0YSIsQ2M6ImhhbmRsZV9pbnRlcm5hbGx5Iix1dToiaGFzX2dhX2NvbnZlcnNpb25fY29uc2VudHMiLGRhOiJoaXRfdHlwZSIsRGM6ImhpdF90eXBlX292ZXJyaWRlIiwKSHE6Imlnbm9yZV9kdXBlX2NvbmZpZyIsT3U6ImlzX2NvbmZpZ19jb21tYW5kIixHaDoiaXNfY29uc2VudF91cGRhdGUiLG1nOiJpc19jb252ZXJzaW9uIixXbToiaXNfZWNvbW1lcmNlIixYbToiaXNfZWNfY21fc3BsaXQiLGFlOiJpc19leHRlcm5hbF9ldmVudCIsbmc6ImlzX2ZpcnN0X3Zpc2l0IixZbToiaXNfZmlyc3RfdmlzaXRfY29udmVyc2lvbiIsWmk6ImlzX2ZsX2ZhbGxiYWNrX2NvbnZlcnNpb25fZmxvd19hbGxvd2VkIixmZDoiaXNfZnBtX2VuY3J5cHRpb24iLGFqOiJpc19mcG1fc3BsaXQiLG9iOiJpc19nY3BfYnJvd3NlciIsYmo6ImlzX2dvb2dsZV9tZWFzdXJlbWVudF9hbGxvd2VkIixjajoiaXNfZ29vZ2xlX3NpZ25hbHNfZW5hYmxlZCIsYmU6ImlzX21lcmNoYW50X2NlbnRlciIsSGg6ImlzX25ld190b19zaXRlIixFYzoiaXNfcGVyc29uYWxpemF0aW9uIixkajoiaXNfc2VydmVyX3NpZGVfZGVzdGluYXRpb24iLFRlOiJpc19zZXNzaW9uX3N0YXJ0IixibjoiaXNfc2Vzc2lvbl9zdGFydF9jb252ZXJzaW9uIiwKUHU6ImlzX3NndG1fZ2FfYWRzX2NvbnZlcnNpb25fc3R1ZHlfY29udHJvbF9ncm91cCIsUXU6ImlzX3NndG1fcHJlaGl0IixkbjoiaXNfc2d0bV9zZXJ2aWNlX3dvcmtlciIsSWg6ImlzX3NwbGl0X2NvbnZlcnNpb24iLElxOiJpc19zeW4iLEZjOiJpc190ZXN0X2V2ZW50IixvZzoiam9pbl9pZCIsZWo6ImpvaW5fZWxhcHNlZCIscGc6ImpvaW5fdGltZXJfc2VjIixnbjoibG9jYWxfc3RvcmFnZV9hd19jb252ZXJzaW9uX2NvdW50ZXJzIixXZToidHVubmVsX3VwZGF0ZWQiLFV1OiJwcmVoaXRfZm9yX3JldHJ5IixXdToicHJvbWlzZXMiLFh1OiJyZWNvcmRfYXdfbGF0ZW5jeSIsWGU6InJlZGFjdF9hZHNfZGF0YSIsWWU6InJlZGFjdF9jbGlja19pZHMiLHBuOiJyZW1hcmtldGluZ19vbmx5Iixsajoic2VuZF9jY21fcGFyYWxsZWxfcGluZyIsaGQ6InNlbmRfZG91YmxlY2xpY2tfam9pbiIsTWg6InNlbmRfZnBtX2dlb19qb2luIixOaDoic2VuZF9mcG1fZ29vZ2xlX2pvaW4iLFp1OiJzZW5kX2NjbV9wYXJhbGxlbF90ZXN0X3BpbmciLApybjoic2VuZF9nb29nbGVfbWVhc3VyZW1lbnQiLHJnOiJzZW5kX3RsZF9qb2luIixzZzoic2VuZF90b19kZXN0aW5hdGlvbnMiLG1qOiJzZW5kX3RvX3RhcmdldHMiLHNuOiJzZW5kX3VzZXJfZGF0YV9oaXQiLHBqOiJzZXJ2aWNlX3dvcmtlcl9jb250ZXh0IixOYjoic291cmNlX2Nhbm9uaWNhbF9pZCIsSmE6InNwZWN1bGF0aXZlIix5bjoic3BlY3VsYXRpdmVfaW5fbWVzc2FnZSIsQW46InN1cHByZXNzX3NjcmlwdF9sb2FkIixCbjoic3luX29yX21vZCIsemo6InRyYW5zaWVudF9lY3NpZCIsdGc6InRyYW5zbWlzc2lvbl90eXBlIixZYToidXNlcl9kYXRhIixndjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljIixodjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljX2dldHRlciIsR246InVzZXJfZGF0YV9mcm9tX2NvZGUiLGlyOiJ1c2VyX2RhdGFfZnJvbV9tYW51YWwiLGp2OiJ1c2VyX2RhdGFfbW9kZSIsdWc6InVzZXJfaWRfdXBkYXRlZCJ9fTsKdmFyIHRnPWZ1bmN0aW9uKGEpe3ZhciBiPXt9LGM9MDtHYihhLGZ1bmN0aW9uKGUsZil7aWYoZiE9bnVsbCl7dmFyIGc9KCIiK2YpLnJlcGxhY2UoL34vZywifn4iKTtpZihxZy5oYXNPd25Qcm9wZXJ0eShlKSliW3FnW2VdXT1nO2Vsc2UgaWYocmcuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBoPXJnW2VdO2IuaGFzT3duUHJvcGVydHkoaCl8fChiW2hdPWcpfWVsc2UgaWYoZT09PSJjYXRlZ29yeSIpZm9yKHZhciBsPWcuc3BsaXQoIi8iLDUpLG49MDtuPGwubGVuZ3RoO24rKyl7dmFyIHA9YixxPXNnW25dLHI9bFtuXTtwLmhhc093blByb3BlcnR5KHEpfHwocFtxXT1yKX1lbHNlIGlmKGM8Mjcpe3ZhciB0PVN0cmluZy5mcm9tQ2hhckNvZGUoYzwxMD80OCtjOjY1K2MtMTApO2JbImsiK3RdPSgiIitTdHJpbmcoZSkpLnJlcGxhY2UoL34vZywifn4iKTtiWyJ2Iit0XT1nO2MrK319fSk7dmFyIGQ9W107R2IoYixmdW5jdGlvbihlLGYpe2QucHVzaCgiIitlK2YpfSk7cmV0dXJuIGQuam9pbigifiIpfSwKcWc9e2l0ZW1faWQ6ImlkIixpdGVtX25hbWU6Im5tIixpdGVtX2JyYW5kOiJiciIsaXRlbV9jYXRlZ29yeToiY2EiLGl0ZW1fY2F0ZWdvcnkyOiJjMiIsaXRlbV9jYXRlZ29yeTM6ImMzIixpdGVtX2NhdGVnb3J5NDoiYzQiLGl0ZW1fY2F0ZWdvcnk1OiJjNSIsaXRlbV92YXJpYW50OiJ2YSIscHJpY2U6InByIixxdWFudGl0eToicXQiLGNvdXBvbjoiY3AiLGl0ZW1fbGlzdF9uYW1lOiJsbiIsaW5kZXg6ImxwIixpdGVtX2xpc3RfaWQ6ImxpIixkaXNjb3VudDoiZHMiLGFmZmlsaWF0aW9uOiJhZiIscHJvbW90aW9uX2lkOiJwaSIscHJvbW90aW9uX25hbWU6InBuIixjcmVhdGl2ZV9uYW1lOiJjbiIsY3JlYXRpdmVfc2xvdDoiY3MiLGxvY2F0aW9uX2lkOiJsbyJ9LHJnPXtpZDoiaWQiLG5hbWU6Im5tIixicmFuZDoiYnIiLHZhcmlhbnQ6InZhIixsaXN0X25hbWU6ImxuIixsaXN0X3Bvc2l0aW9uOiJscCIsbGlzdDoibG4iLHBvc2l0aW9uOiJscCIsY3JlYXRpdmU6ImNuIn0sc2c9WyJjYSIsCiJjMiIsImMzIiwiYzQiLCJjNSJdO3ZhciB1Zz1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZCE9bnVsbCYmYi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChjKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhkKSkpfSk7cmV0dXJuIGIuam9pbigiJiIpfSx2Zz1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgpe3RoaXMuYmFzZVVybD1iO3RoaXMuZW5kcG9pbnQ9Yzt0aGlzLmRlc3RpbmF0aW9uSWQ9Zjt0aGlzLmV2ZW50SWQ9Zzt0aGlzLnByaW9yaXR5SWQ9aDt0aGlzLkJhPWEuQmE7dGhpcy52ZT1hLnZlO3RoaXMuTGo9YS5Majt0aGlzLk49ZDt0aGlzLks9dWcoYS5CYSk7dGhpcy5IPXVnKGEuTGopO3RoaXMuUj10aGlzLkgubGVuZ3RoO2lmKGUmJnRoaXMuUj4xNjM4NCl0aHJvdyBFcnJvcigiRVZFTlRfVE9PX0xBUkdFIik7fTsKdmFyIHdnPWZ1bmN0aW9uKCl7dGhpcy5ldmVudHM9W107dGhpcy5IPSIiO3RoaXMuQmE9e307dGhpcy5iYXNlVXJsPSIiO3RoaXMuTj0wO3RoaXMuSz0xO3RoaXMuZW5kcG9pbnQ9MH07d2cucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5SKGEpPyh0aGlzLmV2ZW50cy5wdXNoKGEpLHRoaXMuSD1hLkssdGhpcy5CYT1hLkJhLHRoaXMuYmFzZVVybD1hLmJhc2VVcmwsdGhpcy5OKz1hLlIsdGhpcy5LPWEuTix0aGlzLmVuZHBvaW50PWEuZW5kcG9pbnQsdGhpcy5kZXN0aW5hdGlvbklkPWEuZGVzdGluYXRpb25JZCx0aGlzLlo9YS5ldmVudElkLHRoaXMuZmE9YS5wcmlvcml0eUlkLCEwKTohMX07d2cucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZXZlbnRzLmxlbmd0aD90aGlzLmV2ZW50cy5sZW5ndGg+PTIwfHxhLlIrdGhpcy5OPj0xNjM4ND8hMTp0aGlzLmJhc2VVcmw9PT1hLmJhc2VVcmwmJnRoaXMuSz09PWEuTiYmdGhpcy5qYShhKTohMH07CndnLnByb3RvdHlwZS5qYT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5IPT09YS5LfTt2YXIgSj17VTp7a3A6MSxtcDoyLEVuOjMsbm46NCxxbDo1LHJsOjYsRXE6NyxucDo4LERxOjksanA6MTAsaHA6MTEseG46MTIsdm46MTMsTms6MTQsVW86MTUsV286MTYsaG46MTcsc2w6MTgsZm46MTksbHA6MjAsUHE6MjEsYXA6MjIsVm86MjMsWG86MjQsbmw6MjUsTGs6MjYsZXI6MjcsSm06MjgsVW06MjksVG06MzAsU206MzEsTW06MzIsS206MzMsTG06MzQsR206MzUsRm06MzYsSG06MzcsSW06MzgsQnE6MzksQ3E6NDAsVXE6NDF9fTtKLlVbSi5VLmtwXT0iQ1JFQVRFX0VWRU5UX1NPVVJDRSI7Si5VW0ouVS5tcF09IkVESVRfRVZFTlQiO0ouVVtKLlUuRW5dPSJUUkFGRklDX1RZUEUiO0ouVVtKLlUubm5dPSJSRUZFUlJBTF9FWENMVVNJT04iO0ouVVtKLlUucWxdPSJFQ09NTUVSQ0VfRlJPTV9HVE1fVEFHIjtKLlVbSi5VLnJsXT0iRUNPTU1FUkNFX0ZST01fR1RNX1VBX1NDSEVNQSI7Si5VW0ouVS5FcV09IkdBX1NFTkQiO0ouVVtKLlUubnBdPSJFTV9GT1JNIjsKSi5VW0ouVS5EcV09IkdBX0dBTV9MSU5LIjtKLlVbSi5VLmpwXT0iQ1JFQVRFX0VWRU5UX0FVVE9fUEFHRV9QQVRIIjtKLlVbSi5VLmhwXT0iQ1JFQVRFRF9FVkVOVCI7Si5VW0ouVS54bl09IlNJREVMT0FERUQiO0ouVVtKLlUudm5dPSJTR1RNX0xFR0FDWV9DT05GSUdVUkFUSU9OIjtKLlVbSi5VLk5rXT0iQ0NEX0VNX0VWRU5UIjtKLlVbSi5VLlVvXT0iQVVUT19SRURBQ1RfRU1BSUwiO0ouVVtKLlUuV29dPSJBVVRPX1JFREFDVF9RVUVSWV9QQVJBTSI7Si5VW0ouVS5obl09Ik1VTFRJUExFX1BBR0VWSUVXX0ZST01fQ09ORklHIjtKLlVbSi5VLnNsXT0iRU1fRVZFTlRfU0VOVF9CRUZPUkVfQ09ORklHIjtKLlVbSi5VLmZuXT0iTE9BREVEX1ZJQV9DU1RfT1JfU0lERUxPQURJTkciO0ouVVtKLlUubHBdPSJERUNPREVEX1BBUkFNX01BVENIIjtKLlVbSi5VLlBxXT0iTk9OX0RFQ09ERURfUEFSQU1fTUFUQ0giO0ouVVtKLlUuYXBdPSJDQ0RfRVZFTlRfU0dUTSI7CkouVVtKLlUuVm9dPSJBVVRPX1JFREFDVF9FTUFJTF9TR1RNIjtKLlVbSi5VLlhvXT0iQVVUT19SRURBQ1RfUVVFUllfUEFSQU1fU0dUTSI7Si5VW0ouVS5ubF09IkRBSUxZX0xJTUlUX1JFQUNIRUQiO0ouVVtKLlUuTGtdPSJCVVJTVF9MSU1JVF9SRUFDSEVEIjtKLlVbSi5VLmVyXT0iU0hBUkVEX1VTRVJfSURfU0VUX0FGVEVSX1JFUVVFU1QiO0ouVVtKLlUuSm1dPSJHQTRfTVVMVElQTEVfU0VTU0lPTl9DT09LSUVTIjtKLlVbSi5VLlVtXT0iSU5WQUxJRF9HQTRfU0VTU0lPTl9DT1VOVCI7Si5VW0ouVS5UbV09IklOVkFMSURfR0E0X0xBU1RfRVZFTlRfVElNRVNUQU1QIjtKLlVbSi5VLlNtXT0iSU5WQUxJRF9HQTRfSk9JTl9USU1FUiI7Si5VW0ouVS5NbV09IkdBNF9TVEFMRV9TRVNTSU9OX0NPT0tJRV9TRUxFQ1RFRCI7Si5VW0ouVS5LbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzFfUkVBRCI7Si5VW0ouVS5MbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzJfUkVBRCI7CkouVVtKLlUuR21dPSJHQTRfRExfUEFSQU1fUkVDT1ZFUllfQVZBSUxBQkxFIjtKLlVbSi5VLkZtXT0iR0E0X0RMX1BBUkFNX1JFQ09WRVJZX0FQUExJRUQiO0ouVVtKLlUuSG1dPSJHQTRfR09PR0xFX01FQVNVUkVNRU5UX0FMTE9XRUQiO0ouVVtKLlUuSW1dPSJHQTRfR09PR0xFX1NJR05BTFNfRU5BQkxFRCI7Si5VW0ouVS5CcV09IkdBNF9GQUxMQkFDS19SRVFVRVNUIjtKLlVbSi5VLkNxXT0iR0FfQURTX0xJTktfQkVGT1JFX0NPTlZFUlNJT05fTUFSS0lORyI7Si5VW0ouVS5VcV09IlBMQVRJTlVNX0VMSUdJQkxFIjt2YXIgeGc9e30seWc9KHhnLnVhYT0hMCx4Zy51YWI9ITAseGcudWFmdmw9ITAseGcudWFtYj0hMCx4Zy51YW09ITAseGcudWFwPSEwLHhnLnVhcHY9ITAseGcudWF3PSEwLHhnKTsKdmFyIEJnPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5ldmVudHM7aWYoYy5sZW5ndGg9PT0xKXJldHVybiB6ZyhjWzBdLGIpO3ZhciBkPVtdO2EuSCYmZC5wdXNoKGEuSCk7Zm9yKHZhciBlPXt9LGY9MDtmPGMubGVuZ3RoO2YrKylHYihjW2ZdLnZlLGZ1bmN0aW9uKHQsdSl7dSE9bnVsbCYmKGVbdF09ZVt0XXx8e30sZVt0XVtTdHJpbmcodSldPWVbdF1bU3RyaW5nKHUpXSsxfHwxKX0pO3ZhciBnPXt9O0diKGUsZnVuY3Rpb24odCx1KXt2YXIgdix4PS0xLHk9MDtHYih1LGZ1bmN0aW9uKHosQyl7eSs9Qzt2YXIgRD0oei5sZW5ndGgrdC5sZW5ndGgrMikqKEMtMSk7RD54JiYodj16LHg9RCl9KTt5PT09Yy5sZW5ndGgmJihnW3RdPXYpfSk7QWcoZyxkKTtiJiZkLnB1c2goIl9zPSIrYik7Zm9yKHZhciBoPWQuam9pbigiJiIpLGw9W10sbj17fSxwPTA7cDxjLmxlbmd0aDtuPXtmazp2b2lkIDB9LHArKyl7dmFyIHE9W107bi5maz17fTtHYihjW3BdLnZlLGZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbih1LAp2KXtnW3VdIT09IiIrdiYmKHQuZmtbdV09dil9fShuKSk7Y1twXS5IJiZxLnB1c2goY1twXS5IKTtBZyhuLmZrLHEpO2wucHVzaChxLmpvaW4oIiYiKSl9dmFyIHI9bC5qb2luKCJcclxuIik7cmV0dXJue3BhcmFtczpoLGJvZHk6cn19LHpnPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107YS5LJiZjLnB1c2goYS5LKTtiJiZjLnB1c2goIl9zPSIrYik7QWcoYS52ZSxjKTt2YXIgZD0hMTthLkgmJihjLnB1c2goYS5IKSxkPSEwKTt2YXIgZT1jLmpvaW4oIiYiKSxmPSIiLGc9ZS5sZW5ndGgrYS5iYXNlVXJsLmxlbmd0aCsxO2QmJmc+MjA0OCYmKGY9Yy5wb3AoKSxlPWMuam9pbigiJiIpKTtyZXR1cm57cGFyYW1zOmUsYm9keTpmfX0sQWc9ZnVuY3Rpb24oYSxiKXtHYihhLGZ1bmN0aW9uKGMsZCl7ZCE9bnVsbCYmYi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChjKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGQpKX0pfTsKdmFyIEVnPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWEsZT1iW2NdO2lmKCFDZy5leGVjKGUpKXRocm93IEVycm9yKCJJbnZhbGlkIGtleSB3aWxkY2FyZCIpO3ZhciBmPWUuaW5kZXhPZigiLioiKSxnPWYhPT0tMSYmZj09PWUubGVuZ3RoLTIsaD1nP2Uuc2xpY2UoMCxlLmxlbmd0aC0yKTplLGw7YTppZihkLmxlbmd0aD09PTApbD0hMTtlbHNle2Zvcih2YXIgbj1kLnNwbGl0KCIuIikscD0wO3A8bi5sZW5ndGg7cCsrKWlmKCFEZy5leGVjKG5bcF0pKXtsPSExO2JyZWFrIGF9bD0hMH1pZighbHx8aC5sZW5ndGg+ZC5sZW5ndGh8fCFnJiZkLmxlbmd0aCE9PWUubGVuZ3RoPzA6Zz9TYihkLGgpJiYoZD09PWh8fGQuY2hhckF0KGgubGVuZ3RoKT09PSIuIik6ZD09PWgpcmV0dXJuITB9cmV0dXJuITF9LERnPS9eW2EteiRfXVtcdy0kXSokL2ksQ2c9L14oPzpbYS16XyRdW2Etei1fJDAtOV0qXC4pKlthLXpfJF1bYS16LV8kMC05XSooPzpcLlwqKT8kL2k7CnZhciBGZz1bIm1hdGNoZXMiLCJ3ZWJraXRNYXRjaGVzU2VsZWN0b3IiLCJtb3pNYXRjaGVzU2VsZWN0b3IiLCJtc01hdGNoZXNTZWxlY3RvciIsIm9NYXRjaGVzU2VsZWN0b3IiXTtmdW5jdGlvbiBHZyhhLGIpe2lmKCFhKXJldHVybiExO3RyeXtmb3IodmFyIGM9MDtjPEZnLmxlbmd0aDtjKyspe3ZhciBkPUZnW2NdO2lmKGFbZF0hPW51bGwpcmV0dXJuIGFbZF0oYil9fWNhdGNoKGUpe31yZXR1cm4hMX1mdW5jdGlvbiBIZyhhLGIpe3ZhciBjPVN0cmluZyhhKSxkPVN0cmluZyhiKSxlPWMubGVuZ3RoLWQubGVuZ3RoO3JldHVybiBlPj0wJiZjLmluZGV4T2YoZCxlKT09PWV9ZnVuY3Rpb24gSWcoYSxiKXtyZXR1cm4gU3RyaW5nKGEpLnNwbGl0KCIsIikuaW5kZXhPZihTdHJpbmcoYikpPj0wfQpmdW5jdGlvbiBKZyhhLGIsYyxkKXt2YXIgZT1jPyJpIjp2b2lkIDA7dHJ5e3ZhciBmPVN0cmluZyhiKStTdHJpbmcoZSksZz1kPT1udWxsP3ZvaWQgMDpkLmdldChmKTtnfHwoZz1uZXcgUmVnRXhwKGIsZSksZD09bnVsbHx8ZC5zZXQoZixnKSk7cmV0dXJuIGcudGVzdChhKX1jYXRjaChoKXtyZXR1cm4hMX19ZnVuY3Rpb24gS2coYSxiKXtyZXR1cm4gU3RyaW5nKGEpLmluZGV4T2YoU3RyaW5nKGIpKT49MH1mdW5jdGlvbiBMZyhhLGIpe3JldHVybiBTdHJpbmcoYSk9PT1TdHJpbmcoYil9ZnVuY3Rpb24gTWcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPj1OdW1iZXIoYil9ZnVuY3Rpb24gTmcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPD1OdW1iZXIoYil9ZnVuY3Rpb24gT2coYSxiKXtyZXR1cm4gTnVtYmVyKGEpPk51bWJlcihiKX1mdW5jdGlvbiBQZyhhLGIpe3JldHVybiBOdW1iZXIoYSk8TnVtYmVyKGIpfQpmdW5jdGlvbiBRZyhhLGIpe3JldHVybiBTYihTdHJpbmcoYSksU3RyaW5nKGIpKX07ZnVuY3Rpb24gWGcoYSl7dmFyIGI9YS5zZWFyY2g7cmV0dXJuIGEucHJvdG9jb2wrIi8vIithLmhvc3RuYW1lK2EucGF0aG5hbWUrKGI/YisiJnJpY2hzc3Rzc2UiOiI/cmljaHNzdHNzZSIpfTt2YXIgWWc9ZnVuY3Rpb24oKXt0aGlzLlI9IiJ9LCRnPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGM9Yi5mYWxsYmFja191cmwsZD1iLmZhbGxiYWNrX3VybF9tZXRob2Q7aWYoYyYmZCl7dmFyIGU9e307WmcoYSwoZVtkXT1bY10sZS5vcHRpb25zPXt9LGUpKX19fSxhaD1mdW5jdGlvbihhLGIsYyl7aWYoQXJyYXkuaXNBcnJheShhKSlmb3IodmFyIGQ9bShhKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTt0eXBlb2YgZj09PSJzdHJpbmciJiZjKGYsYil9fSxaZz1mdW5jdGlvbihhLGIpe2lmKGIpZm9yKHZhciBjPUNkKGIub3B0aW9ucyk/Yi5vcHRpb25zOnt9LGQ9bShPYmplY3Qua2V5cyhiKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1iW2ZdO3N3aXRjaChmKXtjYXNlICJzZW5kX3BpeGVsIjphaChnLGMsZnVuY3Rpb24oaCxsKXtyZXR1cm4gdm9pZCBhLksoaCxsKX0pO2JyZWFrO2Nhc2UgImZldGNoIjphaChnLApjLGZ1bmN0aW9uKGgsbCl7cmV0dXJuIHZvaWQgYS5IKGgsbCl9KX19fTt2YXIgYmg9L14oW2Etel1bYS16MC05XSopOighfFw/KShcKnxzdHJpbmd8Ym9vbGVhbnxudW1iZXJ8Rm58UGl4aWVNYXB8TGlzdHxPcGFxdWVWYWx1ZSkkL2ksY2g9e0ZuOiJmdW5jdGlvbiIsUGl4aWVNYXA6Ik9iamVjdCIsTGlzdDoiQXJyYXkifTsKZnVuY3Rpb24gZGgoYSxiKXtmb3IodmFyIGM9WyJpbnB1dDohKiJdLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9YmguZXhlYyhjW2RdKTtpZighZSl0aHJvdyBFcnJvcigiSW50ZXJuYWwgRXJyb3IgaW4gIithKTt2YXIgZj1lWzFdLGc9ZVsyXT09PSIhIixoPWVbM10sbD1iW2RdO2lmKGw9PW51bGwpe2lmKGcpdGhyb3cgRXJyb3IoIkVycm9yIGluICIrYSsiLiBSZXF1aXJlZCBhcmd1bWVudCAiK2YrIiBub3Qgc3VwcGxpZWQuIik7fWVsc2UgaWYoaCE9PSIqIil7dmFyIG49dHlwZW9mIGw7bCBpbnN0YW5jZW9mIEtkP249IkZuIjpsIGluc3RhbmNlb2YgR2Q/bj0iTGlzdCI6bCBpbnN0YW5jZW9mIGtiP249IlBpeGllTWFwIjpsIGluc3RhbmNlb2YgU2Q/bj0iUGl4aWVQcm9taXNlIjpsIGluc3RhbmNlb2YgUGQmJihuPSJPcGFxdWVWYWx1ZSIpO2lmKG4hPT1oKXRocm93IEVycm9yKCJFcnJvciBpbiAiK2ErIi4gQXJndW1lbnQgIitmKyIgaGFzIHR5cGUgIisoKGNoW25dfHxuKSsiLCB3aGljaCBkb2VzIG5vdCBtYXRjaCByZXF1aXJlZCB0eXBlICIpKwooKGNoW2hdfHxoKSsiLiIpKTt9fX1mdW5jdGlvbiBLKGEsYixjKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2cgaW5zdGFuY2VvZiBLZD9kLnB1c2goImZ1bmN0aW9uIik6ZyBpbnN0YW5jZW9mIEdkP2QucHVzaCgiQXJyYXkiKTpnIGluc3RhbmNlb2Yga2I/ZC5wdXNoKCJPYmplY3QiKTpnIGluc3RhbmNlb2YgU2Q/ZC5wdXNoKCJQcm9taXNlIik6ZyBpbnN0YW5jZW9mIFBkP2QucHVzaCgiT3BhcXVlVmFsdWUiKTpkLnB1c2godHlwZW9mIGcpfXJldHVybiBFcnJvcigiQXJndW1lbnQgZXJyb3IgaW4gIithKyIuIEV4cGVjdGVkIGFyZ3VtZW50IHR5cGVzIFsiKyhiLmpvaW4oIiwiKSsiXSwgYnV0IHJlY2VpdmVkIFsiKSsoZC5qb2luKCIsIikrIl0uIikpfWZ1bmN0aW9uIGVoKGEpe3JldHVybiBhIGluc3RhbmNlb2Yga2J9ZnVuY3Rpb24gZmgoYSl7cmV0dXJuIGVoKGEpfHxhPT09bnVsbHx8Z2goYSl9CmZ1bmN0aW9uIGhoKGEpe3JldHVybiBhIGluc3RhbmNlb2YgS2R9ZnVuY3Rpb24gaWgoYSl7cmV0dXJuIGhoKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gamgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBHZH1mdW5jdGlvbiBraChhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIFBkfWZ1bmN0aW9uIGxoKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifWZ1bmN0aW9uIG1oKGEpe3JldHVybiBsaChhKXx8YT09PW51bGx8fGdoKGEpfWZ1bmN0aW9uIG5oKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn1mdW5jdGlvbiBvaChhKXtyZXR1cm4gbmgoYSl8fGdoKGEpfWZ1bmN0aW9uIHBoKGEpe3JldHVybiBuaChhKXx8YT09PW51bGx8fGdoKGEpfWZ1bmN0aW9uIHFoKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIifWZ1bmN0aW9uIGdoKGEpe3JldHVybiBhPT09dm9pZCAwfTtmdW5jdGlvbiByaChhKXtyZXR1cm4iIithfQpmdW5jdGlvbiBzaChhLGIpe3ZhciBjPVtdO3JldHVybiBjfTtmdW5jdGlvbiB0aChhLGIpe3ZhciBjPW5ldyBLZChhLGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKSxlPTA7ZTxkLmxlbmd0aDtlKyspZFtlXT10aGlzLmV2YWx1YXRlKGRbZV0pO3RyeXtyZXR1cm4gYi5hcHBseSh0aGlzLGQpfWNhdGNoKGcpe3Rocm93IGNiKGcpO319KTtjLlphKCk7cmV0dXJuIGN9CmZ1bmN0aW9uIHVoKGEsYil7dmFyIGM9bmV3IGtiLGQ7Zm9yKGQgaW4gYilpZihiLmhhc093blByb3BlcnR5KGQpKXt2YXIgZT1iW2RdO3liKGUpP2Muc2V0KGQsdGgoYSsiXyIrZCxlKSk6Q2QoZSk/Yy5zZXQoZCx1aChhKyJfIitkLGUpKTooQWIoZSl8fHpiKGUpfHx0eXBlb2YgZT09PSJib29sZWFuIikmJmMuc2V0KGQsZSl9Yy5aYSgpO3JldHVybiBjfTtmdW5jdGlvbiB3aChhLGIpe2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtpZighbWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGM9e30sZD1uZXcga2I7cmV0dXJuIGQ9dWgoIkFzc2VydEFwaVN1YmplY3QiLApjKX07ZnVuY3Rpb24geGgoYSxiKXtpZighbWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIFNkKXRocm93IEVycm9yKCJBcmd1bWVudCBhY3R1YWwgY2Fubm90IGhhdmUgdHlwZSBQcm9taXNlLiBBc3NlcnRpb25zIG9uIGFzeW5jaHJvbm91cyBjb2RlIGFyZW4ndCBzdXBwb3J0ZWQuIik7dmFyIGM9e30sZD1uZXcga2I7cmV0dXJuIGQ9dWgoIkFzc2VydFRoYXRTdWJqZWN0IixjKX07ZnVuY3Rpb24geWgoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciBiPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxjPVtdLGQ9dGhpcy5ULGU9MDtlPGIubGVuZ3RoOysrZSljLnB1c2goVGQoYltlXSxkKSk7cmV0dXJuIFVkKGEuYXBwbHkobnVsbCxjKSl9fWZ1bmN0aW9uIHpoKCl7Zm9yKHZhciBhPU1hdGgsYj1BaCxjPXt9LGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTthLmhhc093blByb3BlcnR5KGUpJiYoY1tlXT15aChhW2VdLmJpbmQoYSkpKX1yZXR1cm4gY307ZnVuY3Rpb24gQmgoYSl7cmV0dXJuIGEhPW51bGwmJlNiKGEsIl9fY3Z0XyIpfTtmdW5jdGlvbiBDaChhKXt2YXIgYjtyZXR1cm4gYn07ZnVuY3Rpb24gRGgoYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO3RyeXtiPWRlY29kZVVSSUNvbXBvbmVudChhKX1jYXRjaChjKXt9cmV0dXJuIGJ9O2Z1bmN0aW9uIEVoKGEpe3RyeXtyZXR1cm4gZW5jb2RlVVJJKGEpfWNhdGNoKGIpe319O2Z1bmN0aW9uIEZoKGEpe3RyeXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhhKSl9Y2F0Y2goYil7fX07ZnVuY3Rpb24gR2goYSxiKXt2YXIgYz0hMTt2YXIgZD1KU09OLnBhcnNlKGEpO2lmKCFkKXRocm93IEVycm9yKCJJbnZhbGlkIGJvb2xlYW4gZXhwcmVzc2lvbiBzdHJpbmcgd2FzIGdpdmVuLiIpO2M9SGgoZCxiKTtyZXR1cm4gY30KdmFyIEloPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspe2lmKGE9PT12b2lkIDApcmV0dXJuO2E9YVtiW2NdXX1yZXR1cm4gYX0sSmg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnByZUhpdDtpZihjKXt2YXIgZD1hWzBdO3N3aXRjaChkKXtjYXNlICJoaXREYXRhIjpyZXR1cm4gYS5sZW5ndGg8Mj92b2lkIDA6SWgoYy5nZXRIaXREYXRhKGFbMV0pLGEuc2xpY2UoMikpO2Nhc2UgIm1ldGFkYXRhIjpyZXR1cm4gYS5sZW5ndGg8Mj92b2lkIDA6SWgoYy5nZXRNZXRhZGF0YShhWzFdKSxhLnNsaWNlKDIpKTtjYXNlICJldmVudE5hbWUiOnJldHVybiBjLmdldEV2ZW50TmFtZSgpO2Nhc2UgImRlc3RpbmF0aW9uSWQiOnJldHVybiBjLmdldERlc3RpbmF0aW9uSWQoKTtkZWZhdWx0OnRocm93IEVycm9yKGQrIiBpcyBub3QgYSB2YWxpZCBmaWVsZCB0aGF0IGNhbiBiZSBhY2Nlc3NlZFxuICAgICAgICAgICAgICAgICAgICAgIGZyb20gUHJlSGl0IGRhdGEuIik7fX19LApLaD1mdW5jdGlvbihhLGIpe2lmKGEpe2lmKGEuY29udGV4dFZhbHVlIT09dm9pZCAwKXt2YXIgYzthOnt2YXIgZD1hLmNvbnRleHRWYWx1ZSxlPWQua2V5UGFydHM7aWYoZSYmZS5sZW5ndGghPT0wKXt2YXIgZj1kLm5hbWVzcGFjZVR5cGU7c3dpdGNoKGYpe2Nhc2UgMTpjPUpoKGUsYik7YnJlYWsgYTtjYXNlIDI6dmFyIGc9Yi5tYWNybztjPWc/Z1tlWzBdXTp2b2lkIDA7YnJlYWsgYTtkZWZhdWx0OnRocm93IEVycm9yKCJVbmtub3duIE5hbWVzcGFjZSBUeXBlIHVzZWQ6ICIrZik7fX1jPXZvaWQgMH1yZXR1cm4gY31pZihhLmJvb2xlYW5FeHByZXNzaW9uVmFsdWUhPT12b2lkIDApcmV0dXJuIEhoKGEuYm9vbGVhbkV4cHJlc3Npb25WYWx1ZSxiKTtpZihhLmJvb2xlYW5WYWx1ZSE9PXZvaWQgMClyZXR1cm4hIWEuYm9vbGVhblZhbHVlO2lmKGEuc3RyaW5nVmFsdWUhPT12b2lkIDApcmV0dXJuIFN0cmluZyhhLnN0cmluZ1ZhbHVlKTtpZihhLmludGVnZXJWYWx1ZSE9PXZvaWQgMClyZXR1cm4gTnVtYmVyKGEuaW50ZWdlclZhbHVlKTsKaWYoYS5kb3VibGVWYWx1ZSE9PXZvaWQgMClyZXR1cm4gTnVtYmVyKGEuZG91YmxlVmFsdWUpO3Rocm93IEVycm9yKCJVbmtub3duIGZpZWxkIHVzZWQgZm9yIHZhcmlhYmxlIG9mIHR5cGUgRXhwcmVzc2lvblZhbHVlOiIrYSk7fX0sSGg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmFyZ3M7aWYoIUFycmF5LmlzQXJyYXkoYyl8fGMubGVuZ3RoPT09MCl0aHJvdyBFcnJvcignSW52YWxpZCBib29sZWFuIGV4cHJlc3Npb24gZm9ybWF0LiBFeHBlY3RlZCAiYXJncyI6JytjKyIgcHJvcGVydHkgdG9cbiAgICAgICAgIGJlIG5vbi1lbXB0eSBhcnJheS4iKTt2YXIgZD1mdW5jdGlvbihnKXtyZXR1cm4gS2goZyxiKX07c3dpdGNoKGEudHlwZSl7Y2FzZSAxOmZvcih2YXIgZT0wO2U8Yy5sZW5ndGg7ZSsrKWlmKGQoY1tlXSkpcmV0dXJuITA7cmV0dXJuITE7Y2FzZSAyOmZvcih2YXIgZj0wO2Y8Yy5sZW5ndGg7ZisrKWlmKCFkKGNbZl0pKXJldHVybiExO3JldHVybiBjLmxlbmd0aD4wO2Nhc2UgMzpyZXR1cm4hZChjWzBdKTsKY2FzZSA0OnJldHVybiBKZyhkKGNbMF0pLGQoY1sxXSksITEsYi5yZWdleENhY2hlKTtjYXNlIDU6cmV0dXJuIExnKGQoY1swXSksZChjWzFdKSk7Y2FzZSA2OnJldHVybiBRZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgNzpyZXR1cm4gSGcoZChjWzBdKSxkKGNbMV0pKTtjYXNlIDg6cmV0dXJuIEtnKGQoY1swXSksZChjWzFdKSk7Y2FzZSA5OnJldHVybiBQZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgMTA6cmV0dXJuIE5nKGQoY1swXSksZChjWzFdKSk7Y2FzZSAxMTpyZXR1cm4gT2coZChjWzBdKSxkKGNbMV0pKTtjYXNlIDEyOnJldHVybiBNZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgMTM6cmV0dXJuIElnKGQoY1swXSksU3RyaW5nKGQoY1sxXSkpKTtkZWZhdWx0OnRocm93IEVycm9yKCdJbnZhbGlkIGJvb2xlYW4gZXhwcmVzc2lvbiBmb3JtYXQuIEV4cGVjdGVkICJ0eXBlIiBwcm9wZXJ0eSB0b2JlIGEgcG9zaXRpdmUgaW50ZWdlciB3aGljaCBpcyBsZXNzIHRoYW4gMTQuJyk7fX07CmZ1bmN0aW9uIExoKGEpe2lmKCFtaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7fTtmdW5jdGlvbiBNaChhKXt2YXIgYj1UZChhKTtyZXR1cm4gbmcoYj8iIitiOiIiKX07ZnVuY3Rpb24gTmgoYSxiKXtpZighcWgoYSl8fCFxaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsibnVtYmVyIiwibnVtYmVyIl0sYXJndW1lbnRzKTtyZXR1cm4gRGIoYSxiKX07ZnVuY3Rpb24gT2goKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX07ZnVuY3Rpb24gUGgoYSl7aWYoYT09PW51bGwpcmV0dXJuIm51bGwiO2lmKGEgaW5zdGFuY2VvZiBHZClyZXR1cm4iYXJyYXkiO2lmKGEgaW5zdGFuY2VvZiBLZClyZXR1cm4iZnVuY3Rpb24iO2lmKGEgaW5zdGFuY2VvZiBQZCl7dmFyIGI9YS5nZXRWYWx1ZSgpO2lmKChiPT1udWxsP3ZvaWQgMDpiLmNvbnN0cnVjdG9yKT09PXZvaWQgMHx8Yi5jb25zdHJ1Y3Rvci5uYW1lPT09dm9pZCAwKXt2YXIgYz1TdHJpbmcoYik7cmV0dXJuIGMuc3Vic3RyaW5nKDgsYy5sZW5ndGgtMSl9cmV0dXJuIFN0cmluZyhiLmNvbnN0cnVjdG9yLm5hbWUpfXJldHVybiB0eXBlb2YgYX07ZnVuY3Rpb24gUWgoYSl7ZnVuY3Rpb24gYihjKXtyZXR1cm4gZnVuY3Rpb24oZCl7dHJ5e3JldHVybiBjKGQpfWNhdGNoKGUpeyhsZ3x8bWcuUG8pJiZhLmNhbGwodGhpcyxlLm1lc3NhZ2UpfX19cmV0dXJue3BhcnNlOmIoZnVuY3Rpb24oYyl7cmV0dXJuIFVkKEpTT04ucGFyc2UoYykpfSksc3RyaW5naWZ5OmIoZnVuY3Rpb24oYyl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KFRkKGMpKX0pLHB1YmxpY05hbWU6IkpTT04ifX07ZnVuY3Rpb24gUmgoYSl7cmV0dXJuIEliKFRkKGEsdGhpcy5UKSl9O2Z1bmN0aW9uIFNoKGEpe3JldHVybiBOdW1iZXIoVGQoYSx0aGlzLlQpKX07ZnVuY3Rpb24gVGgoYSl7cmV0dXJuIGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEudG9TdHJpbmcoKX07ZnVuY3Rpb24gVWgoYSxiLGMpe3ZhciBkPW51bGwsZT0hMTtyZXR1cm4gZT9kOm51bGx9O3ZhciBBaD0iZmxvb3IgY2VpbCByb3VuZCBtYXggbWluIGFicyBwb3cgc3FydCIuc3BsaXQoIiAiKTtmdW5jdGlvbiBWaCgpe3ZhciBhPXt9O3JldHVybntXcjpmdW5jdGlvbihiKXtyZXR1cm4gYS5oYXNPd25Qcm9wZXJ0eShiKT9hW2JdOnZvaWQgMH0sS286ZnVuY3Rpb24oYixjKXthW2JdPWN9LHJlc2V0OmZ1bmN0aW9uKCl7YT17fX19fWZ1bmN0aW9uIFdoKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEtkLnByb3RvdHlwZS5pbnZva2UuYXBwbHkoYSxbYl0uY29uY2F0KHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSkpfX0KZnVuY3Rpb24gWGgoYSxiKXtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSJdLGFyZ3VtZW50cyk7fQpmdW5jdGlvbiBZaChhLGIpe2lmKCFsaChhKXx8IWVoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJQaXhpZU1hcCJdLGFyZ3VtZW50cyk7fTt2YXIgWmg9e307dmFyICRoPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYjtpZihhIGluc3RhbmNlb2YgR2QpZm9yKHZhciBjPWEuRmEoKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPWNbZF07YS5oYXMoZSkmJmIuc2V0KGUsYS5nZXQoZSkpfWVsc2UgaWYoYSBpbnN0YW5jZW9mIEtkKWZvcih2YXIgZj1hLkZhKCksZz0wO2c8Zi5sZW5ndGg7ZysrKXt2YXIgaD1mW2ddO2Iuc2V0KGgsYS5nZXQoaCkpfWVsc2UgZm9yKHZhciBsPTA7bDxhLmxlbmd0aDtsKyspYi5zZXQobCxhW2xdKTtyZXR1cm4gYn07ClpoLmtleXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5GYSgpKTtyZXR1cm4gbmV3IEdkfTsKWmgudmFsdWVzPWZ1bmN0aW9uKGEpe2RoKHRoaXMuZ2V0TmFtZSgpLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIEdkfHxhIGluc3RhbmNlb2YgS2R8fHR5cGVvZiBhPT09InN0cmluZyIpYT0kaChhKTtpZihhIGluc3RhbmNlb2Yga2J8fGEgaW5zdGFuY2VvZiBTZClyZXR1cm4gbmV3IEdkKGEuaGMoKSk7cmV0dXJuIG5ldyBHZH07ClpoLmVudHJpZXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5mYygpLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gbmV3IEdkKGIpfSkpO3JldHVybiBuZXcgR2R9OwpaaC5mcmVlemU9ZnVuY3Rpb24oYSl7KGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZCkmJmEuWmEoKTtyZXR1cm4gYX07WmguZGVsZXRlPWZ1bmN0aW9uKGEsYil7aWYoYSBpbnN0YW5jZW9mIGtiJiYhYS5IYigpKXJldHVybiBhLnJlbW92ZShiKSwhMDtyZXR1cm4hMX07ZnVuY3Rpb24gTChhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkPWEuVC54YigpO2lmKCFkKXRocm93IEVycm9yKCJNaXNzaW5nIHByb2dyYW0gc3RhdGUuIik7aWYoZC5pdCl7dHJ5e2QuUm4uYXBwbHkobnVsbCxbYl0uY29uY2F0KHcoYykpKX1jYXRjaChlKXt0aHJvdyBzYigiVEFHR0lORyIsMjEpLGU7fXJldHVybn1kLlJuLmFwcGx5KG51bGwsW2JdLmNvbmNhdCh3KGMpKSl9O3ZhciBhaT1mdW5jdGlvbigpe3RoaXMuSz17fTt0aGlzLkg9e307dGhpcy5OPSEwO307YWkucHJvdG90eXBlLmdldD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuY29udGFpbnMoYSk/dGhpcy5LW2FdOnZvaWQgMDtyZXR1cm4gY307YWkucHJvdG90eXBlLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLksuaGFzT3duUHJvcGVydHkoYSl9OwphaS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjKXtpZih0aGlzLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZih0aGlzLkguaGFzT3duUHJvcGVydHkoYSkpdGhyb3cgRXJyb3IoIkF0dGVtcHRpbmcgdG8gYWRkIGFuIEFQSSB3aXRoIGFuIGV4aXN0aW5nIHByaXZhdGUgQVBJIG5hbWU6ICIrYSsiLiIpO3RoaXMuS1thXT1jP3ZvaWQgMDp5YihiKT90aChhLGIpOnVoKGEsYil9O2Z1bmN0aW9uIGJpKGEsYil7dmFyIGM9dm9pZCAwO3JldHVybiBjfTtmdW5jdGlvbiBjaSgpe3ZhciBhPXt9OwpyZXR1cm4gYX07dmFyIGRpPXt9LGVpPShkaVtGLkQuc2FdPSJnY3UiLGRpW0YuRC5laF09ImVwdCIsZGlbRi5ELlNiXT0iZ2NsZ2IiLGRpW0YuRC5sYl09ImdjbGF3IixkaVtGLkQuemxdPSJnY2xpZF9sZW4iLGRpW0YuRC5CZV09ImdjbGdzIixkaVtGLkQuQ2VdPSJnY2xscCIsZGlbRi5ELkRlXT0iZ2Nsc3QiLGRpW0YuRC5FZF09ImF1aWQiLGRpW0YuRC5CbF09ImFlIixkaVtGLkQuQ2ZdPSJkc2NudCIsZGlbRi5ELkRmXT0iZmNudHIiLGRpW0YuRC5FZl09ImZsbmciLGRpW0YuRC5GZl09Im1pZCIsZGlbRi5ELndpXT0iYnR0eXBlIixkaVtGLkQuS2JdPSJnYWNpZCIsZGlbRi5ELkdkXT0ibGFiZWwiLGRpW0YuRC5GZV09ImNhcGkiLGRpW0YuRC5qaF09InBzY2RsIixkaVtGLkQuZWJdPSJjdXJyZW5jeV9jb2RlIixkaVtGLkQuR2VdPSJ2ZGx0diIsZGlbRi5ELmtoXT0iY2xvY3QiLGRpW0YuRC5FbF09Il9kYmciLGRpW0YuRC5JZV09Im9lZGVsZCIsZGlbRi5ELlZjXT0iZWRpZCIsZGlbRi5ELk1kXT0iZXZuaWQiLApkaVtGLkQuRWldPSJldmppZCIsZGlbRi5ELk5kXT0iZXhjaWQiLGRpW0YuRC5yaF09ImdhYyIsZGlbRi5ELkplXT0iZ2FjZ2IiLGRpW0YuRC5NbF09ImdhY21jb3YiLGRpW0YuRC5LZV09ImdkcHIiLGRpW0YuRC5YY109ImdkaWQiLGRpW0YuRC5MZV09Il9uZyIsZGlbRi5ELmNxXT0iX29ubyIsZGlbRi5ELnRoXT0iZ3BwX3NpZCIsZGlbRi5ELnVoXT0iZ3BwIixkaVtGLkQuUGxdPSJnc2FleHAiLGRpW0YuRC5WZl09Il90dSIsZGlbRi5ELk1lXT0iZnJtIixkaVtGLkQuS2ldPSJndG1fdXAiLGRpW0YuRC5QZF09ImxwcyIsZGlbRi5ELkxpXT0iZGlkIixkaVtGLkQuUWRdPSJmY250ciIsZGlbRi5ELlJkXT0iZmxuZyIsZGlbRi5ELlNkXT0ibWlkIixkaVtGLkQuTmVdPXZvaWQgMCxkaVtGLkQuTWJdPSJ0aWJhIixkaVtGLkQuV2JdPSJyZHAiLGRpW0YuRC54Y109ImVjc2lkIixkaVtGLkQuWmZdPSJnYV91aWQiLGRpW0YuRC5VZF09ImRlbG9wYyIsZGlbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IiwKZGlbRi5ELlBhXT0ib2lkIixkaVtGLkQuZG1dPSJvaWRzcmMiLGRpW0YuRC5mbV09InVwdGdzIixkaVtGLkQuY2ddPSJ1YWEiLGRpW0YuRC5kZ109InVhYiIsZGlbRi5ELmVnXT0idWFmdmwiLGRpW0YuRC5mZ109InVhbWIiLGRpW0YuRC5nZ109InVhbSIsZGlbRi5ELmhnXT0idWFwIixkaVtGLkQuaWddPSJ1YXB2IixkaVtGLkQuamddPSJ1YXciLGRpW0YuRC5nbV09ImVjX2xhdCIsZGlbRi5ELmhtXT0iZWNfbWV0YSIsZGlbRi5ELmltXT0iZWNfbSIsZGlbRi5ELmptXT0iZWNfc2VsIixkaVtGLkQua21dPSJlY19zIixkaVtGLkQuQmNdPSJlY19tb2RlIixkaVtGLkQuZmJdPSJ1c2VySWQiLGRpW0YuRC5rZ109InVzX3ByaXZhY3kiLGRpW0YuRC5RYV09InZhbHVlIixkaVtGLkQucW1dPSJtY292IixkaVtGLkQuV2ldPSJobiIsZGlbRi5ELlZtXT0iZ3RtX2VlIixkaVtGLkQuWWldPSJ1aXAiLGRpW0YuRC5KaF09Im10IixkaVtGLkQuZGVdPSJucGEiLGRpW0YuRC5ZcV09InNnX3VjIixkaVtGLkQueWldPQpudWxsLGRpW0YuRC5iZF09bnVsbCxkaVtGLkQudGJdPW51bGwsZGlbRi5ELkhhXT1udWxsLGRpW0YuRC56YV09bnVsbCxkaVtGLkQuVWFdPW51bGwsZGlbRi5ELlBlXT1udWxsLGRpW0YuRC5lZF09bnVsbCxkaVtGLkQuc2hdPW51bGwsZGlbRi5ELkJkXT1udWxsLGRpW0YuRC5DZF09bnVsbCxkaVtGLkQuZmhdPW51bGwsZGlbRi5ELmdoXT1udWxsLGRpW0YuRC5UYV09bnVsbCxkaVtGLkQuV2NdPW51bGwsZGkpO2Z1bmN0aW9uIGZpKGEsYil7aWYoYSl7dmFyIGM9YS5zcGxpdCgieCIpO2MubGVuZ3RoPT09MiYmKGdpKGIsInVfdyIsY1swXSksZ2koYiwidV9oIixjWzFdKSl9fWZ1bmN0aW9uIGhpKGEpe3ZhciBiPWlpO2I9Yj09PXZvaWQgMD9qaTpiO3JldHVybiBraShsaShhLGIpKX1mdW5jdGlvbiBraShhKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4hIWJ9KS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIigiK1ttaShiLnZhbHVlKSxtaShiLnF1YW50aXR5KSxtaShiLml0ZW1faWQpLG1pKGIuc3RhcnRfZGF0ZSksbWkoYi5lbmRfZGF0ZSldLmpvaW4oIioiKSsiKSJ9KS5qb2luKCIiKX0KZnVuY3Rpb24gbGkoYSxiKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4hIWN9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJue2l0ZW1faWQ6YihjKSxxdWFudGl0eTpjLnF1YW50aXR5LHZhbHVlOmMucHJpY2Usc3RhcnRfZGF0ZTpjLnN0YXJ0X2RhdGUsZW5kX2RhdGU6Yy5lbmRfZGF0ZX19KX1mdW5jdGlvbiBqaShhKXtyZXR1cm5bYS5pdGVtX2lkLGEuaWQsYS5pdGVtX25hbWVdLmZpbmQoZnVuY3Rpb24oYil7cmV0dXJuIGIhPW51bGx9KX1mdW5jdGlvbiBuaShhKXtpZihhJiZhLmxlbmd0aClyZXR1cm4gYS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGU/Yi5lc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZToiIn0pLmpvaW4oIiwiKX1mdW5jdGlvbiBnaShhLGIsYyl7Yz09PXZvaWQgMHx8Yz09PW51bGx8fGM9PT0iIiYmIXlnW2JdfHwoYVtiXT1jKX0KZnVuY3Rpb24gbWkoYSl7cmV0dXJuIHR5cGVvZiBhIT09Im51bWJlciImJnR5cGVvZiBhIT09InN0cmluZyI/IiI6YS50b1N0cmluZygpfTtmdW5jdGlvbiBvaSgpe3RoaXMuYmxvY2tTaXplPS0xfTtmdW5jdGlvbiBwaShhLGIpe3RoaXMuYmxvY2tTaXplPS0xO3RoaXMuYmxvY2tTaXplPTY0O3RoaXMuTj1SYS5VaW50OEFycmF5P25ldyBVaW50OEFycmF5KHRoaXMuYmxvY2tTaXplKTpBcnJheSh0aGlzLmJsb2NrU2l6ZSk7dGhpcy5SPXRoaXMuSz0wO3RoaXMuSD1bXTt0aGlzLmZhPWE7dGhpcy5aPWI7dGhpcy5qYT1SYS5JbnQzMkFycmF5P25ldyBJbnQzMkFycmF5KDY0KTpBcnJheSg2NCk7cWk9PT12b2lkIDAmJihSYS5JbnQzMkFycmF5P3FpPW5ldyBJbnQzMkFycmF5KHJpKTpxaT1yaSk7dGhpcy5yZXNldCgpfVNhKHBpLG9pKTtmb3IodmFyIHNpPVtdLHRpPTA7dGk8NjM7dGkrKylzaVt0aV09MDt2YXIgdWk9W10uY29uY2F0KDEyOCxzaSk7CnBpLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuUj10aGlzLks9MDt2YXIgYTtpZihSYS5JbnQzMkFycmF5KWE9bmV3IEludDMyQXJyYXkodGhpcy5aKTtlbHNle3ZhciBiPXRoaXMuWixjPWIubGVuZ3RoO2lmKGM+MCl7Zm9yKHZhciBkPUFycmF5KGMpLGU9MDtlPGM7ZSsrKWRbZV09YltlXTthPWR9ZWxzZSBhPVtdfXRoaXMuSD1hfTsKdmFyIHZpPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1hLk4sYz1hLmphLGQ9MCxlPTA7ZTxiLmxlbmd0aDspY1tkKytdPWJbZV08PDI0fGJbZSsxXTw8MTZ8YltlKzJdPDw4fGJbZSszXSxlPWQqNDtmb3IodmFyIGY9MTY7Zjw2NDtmKyspe3ZhciBnPWNbZi0xNV18MCxoPWNbZi0yXXwwO2NbZl09KChjW2YtMTZdfDApKygoZz4+Pjd8Zzw8MjUpXihnPj4+MTh8Zzw8MTQpXmc+Pj4zKXwwKSsoKGNbZi03XXwwKSsoKGg+Pj4xN3xoPDwxNSleKGg+Pj4xOXxoPDwxMyleaD4+PjEwKXwwKXwwfWZvcih2YXIgbD1hLkhbMF18MCxuPWEuSFsxXXwwLHA9YS5IWzJdfDAscT1hLkhbM118MCxyPWEuSFs0XXwwLHQ9YS5IWzVdfDAsdT1hLkhbNl18MCx2PWEuSFs3XXwwLHg9MDt4PDY0O3grKyl7dmFyIHk9KChsPj4+MnxsPDwzMCleKGw+Pj4xM3xsPDwxOSleKGw+Pj4yMnxsPDwxMCkpKyhsJm5ebCZwXm4mcCl8MCx6PSh2Kygocj4+PjZ8cjw8MjYpXihyPj4+MTF8cjw8MjEpXihyPj4+MjV8cjw8NykpfAowKSsoKChyJnRefnImdSkrKHFpW3hdfDApfDApKyhjW3hdfDApfDApfDA7dj11O3U9dDt0PXI7cj1xK3p8MDtxPXA7cD1uO249bDtsPXoreXwwfWEuSFswXT1hLkhbMF0rbHwwO2EuSFsxXT1hLkhbMV0rbnwwO2EuSFsyXT1hLkhbMl0rcHwwO2EuSFszXT1hLkhbM10rcXwwO2EuSFs0XT1hLkhbNF0rcnwwO2EuSFs1XT1hLkhbNV0rdHwwO2EuSFs2XT1hLkhbNl0rdXwwO2EuSFs3XT1hLkhbN10rdnwwfTsKcGkucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDAmJihiPWEubGVuZ3RoKTt2YXIgYz0wLGQ9dGhpcy5LO2lmKHR5cGVvZiBhPT09InN0cmluZyIpZm9yKDtjPGI7KXRoaXMuTltkKytdPWEuY2hhckNvZGVBdChjKyspLGQ9PXRoaXMuYmxvY2tTaXplJiYodmkodGhpcyksZD0wKTtlbHNle3ZhciBlLGY9dHlwZW9mIGE7ZT1mIT0ib2JqZWN0Ij9mOmE/QXJyYXkuaXNBcnJheShhKT8iYXJyYXkiOmY6Im51bGwiO2lmKGU9PSJhcnJheSJ8fGU9PSJvYmplY3QiJiZ0eXBlb2YgYS5sZW5ndGg9PSJudW1iZXIiKWZvcig7YzxiOyl7dmFyIGc9YVtjKytdO2lmKCEoIm51bWJlciI9PXR5cGVvZiBnJiYwPD1nJiYyNTU+PWcmJmc9PShnfDApKSl0aHJvdyBFcnJvcigibWVzc2FnZSBtdXN0IGJlIGEgYnl0ZSBhcnJheSIpO3RoaXMuTltkKytdPWc7ZD09dGhpcy5ibG9ja1NpemUmJih2aSh0aGlzKSxkPTApfWVsc2UgdGhyb3cgRXJyb3IoIm1lc3NhZ2UgbXVzdCBiZSBzdHJpbmcgb3IgYXJyYXkiKTsKfXRoaXMuSz1kO3RoaXMuUis9Yn07cGkucHJvdG90eXBlLmRpZ2VzdD1mdW5jdGlvbigpe3ZhciBhPVtdLGI9dGhpcy5SKjg7dGhpcy5LPDU2P3RoaXMudXBkYXRlKHVpLDU2LXRoaXMuSyk6dGhpcy51cGRhdGUodWksdGhpcy5ibG9ja1NpemUtKHRoaXMuSy01NikpO2Zvcih2YXIgYz02MztjPj01NjtjLS0pdGhpcy5OW2NdPWImMjU1LGIvPTI1Njt2aSh0aGlzKTtmb3IodmFyIGQ9MCxlPTA7ZTx0aGlzLmZhO2UrKylmb3IodmFyIGY9MjQ7Zj49MDtmLT04KWFbZCsrXT10aGlzLkhbZV0+PmYmMjU1O3JldHVybiBhfTsKdmFyIHJpPVsxMTE2MzUyNDA4LDE4OTk0NDc0NDEsMzA0OTMyMzQ3MSwzOTIxMDA5NTczLDk2MTk4NzE2MywxNTA4OTcwOTkzLDI0NTM2MzU3NDgsMjg3MDc2MzIyMSwzNjI0MzgxMDgwLDMxMDU5ODQwMSw2MDcyMjUyNzgsMTQyNjg4MTk4NywxOTI1MDc4Mzg4LDIxNjIwNzgyMDYsMjYxNDg4ODEwMywzMjQ4MjIyNTgwLDM4MzUzOTA0MDEsNDAyMjIyNDc3NCwyNjQzNDcwNzgsNjA0ODA3NjI4LDc3MDI1NTk4MywxMjQ5MTUwMTIyLDE1NTUwODE2OTIsMTk5NjA2NDk4NiwyNTU0MjIwODgyLDI4MjE4MzQzNDksMjk1Mjk5NjgwOCwzMjEwMzEzNjcxLDMzMzY1NzE4OTEsMzU4NDUyODcxMSwxMTM5MjY5OTMsMzM4MjQxODk1LDY2NjMwNzIwNSw3NzM1Mjk5MTIsMTI5NDc1NzM3MiwxMzk2MTgyMjkxLDE2OTUxODM3MDAsMTk4NjY2MTA1MSwyMTc3MDI2MzUwLDI0NTY5NTYwMzcsMjczMDQ4NTkyMSwyODIwMzAyNDExLDMyNTk3MzA4MDAsMzM0NTc2NDc3MSwzNTE2MDY1ODE3LDM2MDAzNTI4MDQsCjQwOTQ1NzE5MDksMjc1NDIzMzQ0LDQzMDIyNzczNCw1MDY5NDg2MTYsNjU5MDYwNTU2LDg4Mzk5Nzg3Nyw5NTgxMzk1NzEsMTMyMjgyMjIxOCwxNTM3MDAyMDYzLDE3NDc4NzM3NzksMTk1NTU2MjIyMiwyMDI0MTA0ODE1LDIyMjc3MzA0NTIsMjM2MTg1MjQyNCwyNDI4NDM2NDc0LDI3NTY3MzQxODcsMzIwNDAzMTQ3OSwzMzI5MzI1Mjk4XSxxaTtmdW5jdGlvbiB3aSgpe3BpLmNhbGwodGhpcyw4LHhpKX1TYSh3aSxwaSk7dmFyIHhpPVsxNzc5MDMzNzAzLDMxNDQxMzQyNzcsMTAxMzkwNDI0MiwyNzczNDgwNzYyLDEzNTk4OTMxMTksMjYwMDgyMjkyNCw1Mjg3MzQ2MzUsMTU0MTQ1OTIyNV07dmFyIHlpPS9eWzAtOUEtRmEtZl17NjR9JC87ZnVuY3Rpb24gemkoYSl7dHJ5e3JldHVybihuZXcgVGV4dEVuY29kZXIpLmVuY29kZShhKX1jYXRjaChiKXtyZXR1cm4gWmIoYSl9fWZ1bmN0aW9uIEFpKGEpe3ZhciBiPUE7aWYoYT09PSIifHxhPT09ImUwIilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEpO3ZhciBjO2lmKChjPWIuY3J5cHRvKT09bnVsbD8wOmMuc3VidGxlKXtpZih5aS50ZXN0KGEpKXJldHVybiBQcm9taXNlLnJlc29sdmUoYSk7dHJ5e3ZhciBkPXppKGEpO3JldHVybiBiLmNyeXB0by5zdWJ0bGUuZGlnZXN0KCJTSEEtMjU2IixkKS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBCaShlLGIpfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4iZTIifSl9Y2F0Y2goZSl7cmV0dXJuIFByb21pc2UucmVzb2x2ZSgiZTIiKX19ZWxzZSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJlMSIpfQpmdW5jdGlvbiBDaShhKXt0cnl7dmFyIGI9bmV3IHdpO2IudXBkYXRlKHppKGEpKTtyZXR1cm4gYi5kaWdlc3QoKX1jYXRjaChjKXtyZXR1cm4iZTIifX1mdW5jdGlvbiBEaShhKXt2YXIgYj1BO2lmKGE9PT0iInx8YT09PSJlMCJ8fHlpLnRlc3QoYSkpcmV0dXJuIGE7dmFyIGM9Q2koYSk7aWYoYz09PSJlMiIpcmV0dXJuImUyIjt0cnl7cmV0dXJuIEJpKGMsYil9Y2F0Y2goZCl7cmV0dXJuImUyIn19ZnVuY3Rpb24gQmkoYSxiKXt2YXIgYz1BcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KGEpKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoZCl9KS5qb2luKCIiKTtyZXR1cm4gYi5idG9hKGMpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIikucmVwbGFjZSgvPSskLywiIil9O2Z1bmN0aW9uIEVpKCl7Zm9yKHZhciBhPSExLGI9ITEsYz0wO2E9PT1iOylpZihhPURiKDAsMSk9PT0wLGI9RGIoMCwxKT09PTAsYysrLGM+MzApcmV0dXJuO3JldHVybiBhfXZhciBHaT17c2s6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBGaS5zayhhLGIsYyl9fSxIaT1mdW5jdGlvbigpe3RoaXMuc3R1ZGllcz17fTt0aGlzLkg9RWl9OwpIaS5wcm90b3R5cGUuc2s9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMuc3R1ZGllc1tiXTtpZighKChjPT09dm9pZCAwP0RiKDAsOTk5OSk6YyUxRTQpPGQucHJvYmFiaWxpdHkqKGQuY29udHJvbElkMj80OjIpKjFFNCkpcmV0dXJuIGE7YTp7dmFyIGU9ZC5zdHVkeUlkLGY9ZC5leHBlcmltZW50SWQsZz1kLmNvbnRyb2xJZCxoPWQuY29udHJvbElkMjtpZighKChhLmV4cHx8e30pW2ZdfHwoYS5leHB8fHt9KVtnXXx8aCYmKGEuZXhwfHx7fSlbaF0pKXt2YXIgbD1jIT09dm9pZCAwP2MlMj09PTA6dGhpcy5IKCk7aWYobCE9PXZvaWQgMCl7dmFyIG49bD8wOjE7aWYoaCl7dmFyIHA9YyE9PXZvaWQgMD8oYz4+MSklMj09PTA6dGhpcy5IKCk7aWYocD09PXZvaWQgMClicmVhayBhO258PShwPzA6MSk8PDF9bj09PTA/SWkoYSxmLGUpOm49PT0xP0lpKGEsZyxlKTpuPT09MiYmSWkoYSxoLGUpfX19cmV0dXJuIGF9Owp2YXIgS2k9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdP0ppKGMsYil8fCEhKGEuZXhwfHx7fSlbYy5zdHVkaWVzW2JdLmV4cGVyaW1lbnRJZF06ITF9LExpPWZ1bmN0aW9uKGEsYil7dmFyIGM9Rmk7cmV0dXJuIGMuc3R1ZGllc1tiXSYmYy5zdHVkaWVzW2JdLmNvbnRyb2xJZCYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkXTohMX0sTWk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdJiZjLnN0dWRpZXNbYl0uY29udHJvbElkMiYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkMl06ITF9LE5pPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEuZXhwfHx7fSxkPW0oT2JqZWN0LmtleXMoYykubWFwKE51bWJlcikpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2lmKGNbZl09PT1iKXJldHVybiBmfX0sSmk9ZnVuY3Rpb24oYSwKYil7cmV0dXJuISFhLnN0dWRpZXNbYl0uYWN0aXZlfHxhLnN0dWRpZXNbYl0ucHJvYmFiaWxpdHk+LjV9LElpPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLmV4cHx8e307ZFtiXT1jO2EuZXhwPWR9LEZpPW5ldyBIaTt2YXIgaWo9ZnVuY3Rpb24oKXt0aGlzLkg9QS5nb29nbGVfdGFnX21hbmFnZXI9QS5nb29nbGVfdGFnX21hbmFnZXJ8fHt9fSxqajtmdW5jdGlvbiBraihhLGIpe2xqKCk7dmFyIGM9amo7cmV0dXJuIGMuSFthXT1jLkhbYV18fGIoKX1mdW5jdGlvbiBtaihhKXtsaigpO3JldHVybiBqai5IW2FdfWZ1bmN0aW9uIG5qKGEsYil7bGooKTtqai5IW2FdPWJ9ZnVuY3Rpb24gb2ooYSl7dmFyIGI9RSg1KTtsaigpO3ZhciBjPWpqO2MuSFtiXT1jLkhbYl18fGF9ZnVuY3Rpb24gcGooKXt2YXIgYT1FKDE5KTtsaigpO3ZhciBiPWpqO3JldHVybiBiLkhbYV09Yi5IW2FdfHx7fX1mdW5jdGlvbiBxaigpe3ZhciBhPUUoMTkpO2xqKCk7cmV0dXJuIGpqLkhbYV19ZnVuY3Rpb24gcmooKXtsaigpO3ZhciBhPWpqLGI9YS5ILnNlcXVlbmNlfHwxO2EuSC5zZXF1ZW5jZT1iKzE7cmV0dXJuIGJ9ZnVuY3Rpb24gbGooKXtqanx8KGpqPW5ldyBpail9O3ZhciBzaj1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiAwO2Nhc2UgNDkxOnJldHVybiAxMjtjYXNlIDQ4MDpyZXR1cm4gMTE7Y2FzZSA0OTk6cmV0dXJuIDEwO2Nhc2UgNTAwOnJldHVybiA2O2Nhc2UgNDIxOnJldHVybiA5O2Nhc2UgNTYxOnJldHVybiAxNztjYXNlIDQ4MjpyZXR1cm4gMTU7Y2FzZSA1NzA6cmV0dXJuIDE5O2Nhc2UgNDk1OnJldHVybiAxMztjYXNlIDUxNDpyZXR1cm4gMTY7Y2FzZSA1NzM6cmV0dXJuIDE4O2Nhc2UgMjM1OnJldHVybiA4O2Nhc2UgNTM6cmV0dXJuIDE7Y2FzZSA1NDpyZXR1cm4gMjtjYXNlIDUyOnJldHVybiA0O2Nhc2UgNzU6cmV0dXJuIDN9fSx0aj1mdW5jdGlvbihhLGIpe2EuTltiXT0hMDt2YXIgYz1zaihiKTtjIT09dm9pZCAwJiYoV2ZbY109ITApfSxNPWZ1bmN0aW9uKGEpe3JldHVybiEhdWouTlthXX0sdWo9bmV3IGZ1bmN0aW9uKCl7dGhpcy5OPVtdO3RoaXMuSz1bXTt0aGlzLkg9W107CnRqKHRoaXMsMTMyKTt2YXIgYT1OZig2LDZFNCk7WGZbMV09YTt2YXIgYj1OZig3LDEpO1hmWzNdPWI7dmFyIGM9TmYoMzUsNTApO1hmWzJdPWM7dmFyIGQ9TmYoNjksMTc3NjQ0ODkyMCk7WGZbNF09ZDsKdGoodGhpcyw0MzUpO3RqKHRoaXMsMTQxKTsKfTt2YXIgdmo9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IFNldDt0aGlzLks9bmV3IFNldH0seGo9ZnVuY3Rpb24oYSl7dmFyIGI9d2ouSDthPWE9PT12b2lkIDA/W106YTt2YXIgYz1bXS5jb25jYXQodyhiLkgpKS5jb25jYXQoW10uY29uY2F0KHcoYi5LKSkpLmNvbmNhdChhKTtjLnNvcnQoZnVuY3Rpb24oZCxlKXtyZXR1cm4gZC1lfSk7cmV0dXJuIGN9LHlqPWZ1bmN0aW9uKCl7dmFyIGE9W10uY29uY2F0KHcod2ouSC5IKSk7YS5zb3J0KGZ1bmN0aW9uKGIsYyl7cmV0dXJuIGItY30pO3JldHVybiBhfSx6aj1mdW5jdGlvbigpe3ZhciBhPXdqLkgsYj1FKDQ0KTthLkg9bmV3IFNldDtpZihiIT09IiIpZm9yKHZhciBjPW0oYi5zcGxpdCgifiIpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9TnVtYmVyKGQudmFsdWUpO2lzTmFOKGUpfHxhLkguYWRkKGUpfX07dmFyIEFqPXt9LEJqPXtfX2NsOjEsX19lY2w6MSxfX2VobDoxLF9fZXZsOjEsX19mYWw6MSxfX2ZpbDoxLF9fZnNsOjEsX19obDoxLF9famVsOjEsX19sY2w6MSxfX3NkbDoxLF9fdGw6MSxfX3l0bDoxfSxDaj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHtfX3BhdXNlZDoxLF9fdGc6MX0sQmopLERqLEVqPSExO0RqPUVqO3ZhciBGaj0iIjtBai5xaj1Gajt2YXIgd2o9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPW5ldyB2an07dmFyIEdqPS86WzAtOV0rJC8sSGo9L15cZCtcLmZsc1wuZG91YmxlY2xpY2tcLm5ldCQvO2Z1bmN0aW9uIElqKGEsYixjLGQpe3ZhciBlPUpqKGEsISFkLGIpLGYsZztyZXR1cm4gYz8oZz1lW2JdKSE9bnVsbD9nOltdOihmPWVbYl0pPT1udWxsP3ZvaWQgMDpmWzBdfWZ1bmN0aW9uIEpqKGEsYixjKXtmb3IodmFyIGQ9e30sZT1tKGEuc3BsaXQoIiYiKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPW0oZi52YWx1ZS5zcGxpdCgiPSIpKSxoPWcubmV4dCgpLnZhbHVlLGw9eWEoZyksbj1kZWNvZGVVUklDb21wb25lbnQoaC5yZXBsYWNlKC9cKy9nLCIgIikpO2lmKGM9PT12b2lkIDB8fG49PT1jKXt2YXIgcD1sLmpvaW4oIj0iKTtkW25dfHwoZFtuXT1bXSk7ZFtuXS5wdXNoKGI/cDpkZWNvZGVVUklDb21wb25lbnQocC5yZXBsYWNlKC9cKy9nLCIgIikpKX19cmV0dXJuIGR9CmZ1bmN0aW9uIEtqKGEpe3RyeXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEpfWNhdGNoKGIpe319ZnVuY3Rpb24gTGooYSxiLGMsZCxlKXtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7aWYoYj09PSJwcm90b2NvbCJ8fGI9PT0icG9ydCIpYS5wcm90b2NvbD1NaihhLnByb3RvY29sKXx8TWooQS5sb2NhdGlvbi5wcm90b2NvbCk7Yj09PSJwb3J0Ij9hLnBvcnQ9U3RyaW5nKE51bWJlcihhLmhvc3RuYW1lP2EucG9ydDpBLmxvY2F0aW9uLnBvcnQpfHwoYS5wcm90b2NvbD09PSJodHRwIj84MDphLnByb3RvY29sPT09Imh0dHBzIj80NDM6IiIpKTpiPT09Imhvc3QiJiYoYS5ob3N0bmFtZT0oYS5ob3N0bmFtZXx8QS5sb2NhdGlvbi5ob3N0bmFtZSkucmVwbGFjZShHaiwiIikudG9Mb3dlckNhc2UoKSk7cmV0dXJuIE5qKGEsYixjLGQsZSl9CmZ1bmN0aW9uIE5qKGEsYixjLGQsZSl7dmFyIGYsZz1NaihhLnByb3RvY29sKTtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7c3dpdGNoKGIpe2Nhc2UgInVybF9ub19mcmFnbWVudCI6Zj1PaihhKTticmVhaztjYXNlICJwcm90b2NvbCI6Zj1nO2JyZWFrO2Nhc2UgImhvc3QiOmY9YS5ob3N0bmFtZS5yZXBsYWNlKEdqLCIiKS50b0xvd2VyQ2FzZSgpO2lmKGMpe3ZhciBoPS9ed3d3XGQqXC4vLmV4ZWMoZik7aCYmaFswXSYmKGY9Zi5zdWJzdHJpbmcoaFswXS5sZW5ndGgpKX1icmVhaztjYXNlICJwb3J0IjpmPVN0cmluZyhOdW1iZXIoYS5wb3J0KXx8KGc9PT0iaHR0cCI/ODA6Zz09PSJodHRwcyI/NDQzOiIiKSk7YnJlYWs7Y2FzZSAicGF0aCI6YS5wYXRobmFtZXx8YS5ob3N0bmFtZXx8c2IoIlRBR0dJTkciLDEpO2Y9YS5wYXRobmFtZS5zdWJzdHJpbmcoMCwxKT09PSIvIj9hLnBhdGhuYW1lOiIvIithLnBhdGhuYW1lO3ZhciBsPWYuc3BsaXQoIi8iKTsoZHx8W10pLmluZGV4T2YobFtsLmxlbmd0aC0KMV0pPj0wJiYobFtsLmxlbmd0aC0xXT0iIik7Zj1sLmpvaW4oIi8iKTticmVhaztjYXNlICJxdWVyeSI6Zj1hLnNlYXJjaC5yZXBsYWNlKCI/IiwiIik7ZSYmKGY9SWooZixlLCExKSk7YnJlYWs7Y2FzZSAiZXh0ZW5zaW9uIjp2YXIgbj1hLnBhdGhuYW1lLnNwbGl0KCIuIik7Zj1uLmxlbmd0aD4xP25bbi5sZW5ndGgtMV06IiI7Zj1mLnNwbGl0KCIvIilbMF07YnJlYWs7Y2FzZSAiZnJhZ21lbnQiOmY9YS5oYXNoLnJlcGxhY2UoIiMiLCIiKTticmVhaztkZWZhdWx0OmY9YSYmYS5ocmVmfXJldHVybiBmfWZ1bmN0aW9uIE1qKGEpe3JldHVybiBhP2EucmVwbGFjZSgiOiIsIiIpLnRvTG93ZXJDYXNlKCk6IiJ9ZnVuY3Rpb24gT2ooYSl7dmFyIGI9IiI7aWYoYSYmYS5ocmVmKXt2YXIgYz1hLmhyZWYuaW5kZXhPZigiIyIpO2I9YzwwP2EuaHJlZjphLmhyZWYuc3Vic3RyaW5nKDAsYyl9cmV0dXJuIGJ9dmFyIFBqPXt9LFFqPTA7CmZ1bmN0aW9uIFJqKGEpe3ZhciBiPVBqW2FdO2lmKCFiKXt2YXIgYz1CLmNyZWF0ZUVsZW1lbnQoImEiKTthJiYoYy5ocmVmPWEpO3ZhciBkPWMucGF0aG5hbWU7ZFswXSE9PSIvIiYmKGF8fHNiKCJUQUdHSU5HIiwxKSxkPSIvIitkKTt2YXIgZT1jLmhvc3RuYW1lLnJlcGxhY2UoR2osIiIpO2I9e2hyZWY6Yy5ocmVmLHByb3RvY29sOmMucHJvdG9jb2wsaG9zdDpjLmhvc3QsaG9zdG5hbWU6ZSxwYXRobmFtZTpkLHNlYXJjaDpjLnNlYXJjaCxoYXNoOmMuaGFzaCxwb3J0OmMucG9ydH07UWo8NSYmKFBqW2FdPWIsUWorKyl9cmV0dXJuIGJ9ZnVuY3Rpb24gU2ooYSxiLGMpe3ZhciBkPVJqKGEpO3JldHVybiBhYyhiLGQsYyl9CmZ1bmN0aW9uIFRqKGEpe3ZhciBiPVJqKEEubG9jYXRpb24uaHJlZiksYz1MaihiLCJob3N0IiwhMSk7aWYoYyYmYy5tYXRjaChIaikpe3ZhciBkPUxqKGIsInBhdGgiKTtpZihkKXt2YXIgZT1kLnNwbGl0KGErIj0iKTtpZihlLmxlbmd0aD4xKXJldHVybiBlWzFdLnNwbGl0KCI7IilbMF0uc3BsaXQoIj8iKVswXX19fTt2YXIgVWo9eyJodHRwczovL3d3dy5nb29nbGUuY29tIjoiL2ciLCJodHRwczovL3d3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSI6Ii9hcyIsImh0dHBzOi8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iOiIvZ3MifSxWaj1bIi9hcy9kL2NjbS9jb252ZXJzaW9uIiwiL2cvZC9jY20vY29udmVyc2lvbiIsIi9ncy9jY20vY29udmVyc2lvbiIsIi9kL2NjbS9mb3JtLWRhdGEiXTtmdW5jdGlvbiBXaigpe3JldHVybiBJZig0Nyk/SmYoNTQpIT09MTohMX1mdW5jdGlvbiBYaigpe3ZhciBhPUUoMTgpLGI9YS5sZW5ndGg7cmV0dXJuIGFbYi0xXT09PSIvIj9hLnN1YnN0cmluZygwLGItMSk6YX0KZnVuY3Rpb24gWWooYSxiKXtpZihhKXt2YXIgYz0iIithO2MuaW5kZXhPZigiaHR0cDovLyIpIT09MCYmYy5pbmRleE9mKCJodHRwczovLyIpIT09MCYmKGM9Imh0dHBzOi8vIitjKTtjW2MubGVuZ3RoLTFdPT09Ii8iJiYoYz1jLnN1YnN0cmluZygwLGMubGVuZ3RoLTEpKTtyZXR1cm4gUmooIiIrYytiKS5ocmVmfX1mdW5jdGlvbiBaaihhKXtpZihhaygpKXJldHVybiBZaihhLCIvYW5hbHl0aWNzLmpzIil9ZnVuY3Rpb24gYmsoYSl7cmV0dXJuIGE9PT0yfHxhPT09M31mdW5jdGlvbiBjayhhKXtyZXR1cm4gTSg1ODgpJiZhPT09M31mdW5jdGlvbiBhaygpe3JldHVybiBXaigpfHxJZig1MCl9ZnVuY3Rpb24gZGsoKXtyZXR1cm4hIUFqLnFqJiZBai5xai5zcGxpdCgiQEAiKS5qb2luKCIiKSE9PSJTR1RNX1RPS0VOIn0KZnVuY3Rpb24gZWsoYSl7Zm9yKHZhciBiPW0oW0YuRC5kZCxGLkQueWNdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9TyhhLGMudmFsdWUpO2lmKGQpcmV0dXJuIGR9fWZ1bmN0aW9uIGZrKGEsYixjKXtjPWM9PT12b2lkIDA/IiI6YztpZighV2ooKSlyZXR1cm4gYTt2YXIgZD1iP1VqW2FdfHwiIjoiIjtkPT09Ii9ncyImJihjPSIiKTtyZXR1cm4iIitYaigpK2QrY31mdW5jdGlvbiBnayhhKXtpZihXaigpKWZvcih2YXIgYj1tKFZqKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtpZihTYihhLCIiK1hqKCkrZCkpcmV0dXJuIjo6In19CmZ1bmN0aW9uIGhrKCl7dmFyIGE9QTtpZighYSlyZXR1cm4hMTt0cnl7aWYoYT09PWEudG9wKXJldHVybiExO3ZhciBiPWEubG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIGIuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIvIikhPT0tMSYmVGIoYiwiL3N3X2lmcmFtZS5odG1sIil9Y2F0Y2goYyl7cmV0dXJuITF9fTt2YXIgaWs9L2d0YWdbLlwvXWpzLyxqaz0vZ3RtWy5cL11qcy8sbGs9ZnVuY3Rpb24oYSl7dmFyIGI9a2s7aWYoKGEuc2NyaXB0Q29udGFpbmVySWR8fCIiKS5pbmRleE9mKCJHVE0tIik+PTApe3ZhciBjO2E6e3ZhciBkLGU9KGQ9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6ZC5zcmM7aWYoZSl7Zm9yKHZhciBmPUlmKDQ3KSxnPVJqKGUpLGg9Zj9nLnBhdGhuYW1lOiIiK2cuaG9zdG5hbWUrZy5wYXRobmFtZSxsPUIuc2NyaXB0cyxuPSIiLHA9MDtwPGwubGVuZ3RoOysrcCl7dmFyIHE9bFtwXTtpZighKHEuaW5uZXJIVE1MLmxlbmd0aD09PTB8fCFmJiZxLmlubmVySFRNTC5pbmRleE9mKGEuc2NyaXB0Q29udGFpbmVySWR8fCJTSE9VTERfTk9UX0JFX1NFVCIpPDB8fHEuaW5uZXJIVE1MLmluZGV4T2YoaCk8MCkpe2lmKHEuaW5uZXJIVE1MLmluZGV4T2YoIihmdW5jdGlvbih3LGQscyxsLGkpIik+PTApe2M9U3RyaW5nKHApO2JyZWFrIGF9bj1TdHJpbmcocCl9fWlmKG4pe2M9Cm47YnJlYWsgYX19Yz12b2lkIDB9dmFyIHI9YztpZihyKXJldHVybiBiLkg9ITAscn12YXIgdD1bXS5zbGljZS5jYWxsKEIuc2NyaXB0cyk7cmV0dXJuIGEuc2NyaXB0RWxlbWVudD9TdHJpbmcodC5pbmRleE9mKGEuc2NyaXB0RWxlbWVudCkpOiItMSJ9LG1rPWZ1bmN0aW9uKGEpe2lmKGtrLkgpcmV0dXJuIjEiO3ZhciBiLGM9KGI9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6Yi5zcmM7aWYoYyl7aWYoaWsudGVzdChjKSlyZXR1cm4iMyI7aWYoamsudGVzdChjKSlyZXR1cm4iMiJ9cmV0dXJuIjAifSxraz1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O2Z1bmN0aW9uIFAoYSl7c2IoIkdUTSIsYSl9O2Z1bmN0aW9uIG5rKGEpe3ZhciBiPW9rKCkuZGVzdGluYXRpb25BcnJheVthXSxjPW9rKCkuZGVzdGluYXRpb25bYV07cmV0dXJuIGImJmIubGVuZ3RoPjA/YlswXTpjfWZ1bmN0aW9uIHBrKGEsYil7dmFyIGM9b2soKTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO0NiKGMucGVuZGluZyxmdW5jdGlvbihkKXtyZXR1cm4gZC50YXJnZXQuY3RpZD09PWEuY3RpZCYmZC50YXJnZXQuaXNEZXN0aW5hdGlvbj09PWEuaXNEZXN0aW5hdGlvbn0pfHxjLnBlbmRpbmcucHVzaCh7dGFyZ2V0OmEsb25Mb2FkOmJ9KX1mdW5jdGlvbiBxaygpe3ZhciBhPUEuZ29vZ2xlX3RhZ3NfZmlyc3RfcGFydHk7QXJyYXkuaXNBcnJheShhKXx8KGE9W10pO2Zvcih2YXIgYj17fSxjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpYltkLnZhbHVlXT0hMDtyZXR1cm4gT2JqZWN0LmZyZWV6ZShiKX0KdmFyIHJrPWZ1bmN0aW9uKCl7dGhpcy5jb250YWluZXI9e307dGhpcy5kZXN0aW5hdGlvbj17fTt0aGlzLmRlc3RpbmF0aW9uQXJyYXk9e307dGhpcy5jYW5vbmljYWw9e307dGhpcy5wZW5kaW5nPVtdO3RoaXMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz17fTt0aGlzLmluamVjdGVkRmlyc3RQYXJ0eUNvbnRhaW5lcnM9cWsoKX07CmZ1bmN0aW9uIG9rKCl7dmFyIGE9TWMoImdvb2dsZV90YWdfZGF0YSIse30pLGI9YS50aWRyO2ImJnR5cGVvZiBiPT09Im9iamVjdCJ8fChiPW5ldyByayxhLnRpZHI9Yik7dmFyIGM9YjtjLmNvbnRhaW5lcnx8KGMuY29udGFpbmVyPXt9KTtjLmRlc3RpbmF0aW9ufHwoYy5kZXN0aW5hdGlvbj17fSk7Yy5kZXN0aW5hdGlvbkFycmF5fHwoYy5kZXN0aW5hdGlvbkFycmF5PXt9KTtjLmNhbm9uaWNhbHx8KGMuY2Fub25pY2FsPXt9KTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO2MuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc3x8KGMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz1xaygpKTtyZXR1cm4gY307ZnVuY3Rpb24gc2soKXtyZXR1cm4gSWYoNykmJnRrKCkuc29tZShmdW5jdGlvbihhKXtyZXR1cm4gYT09PUUoNSl9KX1mdW5jdGlvbiB1aygpe3ZhciBhO3JldHVybihhPUtmKDU1KSkhPW51bGw/YTpbXX1mdW5jdGlvbiB2aygpe3JldHVybiBFKDYpfHwiXyIrRSg1KX1mdW5jdGlvbiB3aygpe3ZhciBhPUUoMTApO3JldHVybiBhP2Euc3BsaXQoInwiKTpbRSg1KV19ZnVuY3Rpb24gdGsoKXt2YXIgYT1LZig1OSk7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIHR5cGVvZiBiPT09InN0cmluZyJ9KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIuaW5kZXhPZigiR1RNLSIpIT09MH0pOltdfWZ1bmN0aW9uIHhrKCl7dmFyIGE9eWsoemsoKSksYj1hJiZhLnBhcmVudDtpZihiKXJldHVybiB5ayhiKX0KZnVuY3Rpb24gQWsoKXt2YXIgYT15ayh6aygpKTtpZihhKXtmb3IoO2EucGFyZW50Oyl7dmFyIGI9eWsoYS5wYXJlbnQpO2lmKCFiKWJyZWFrO2E9Yn1yZXR1cm4gYX19ZnVuY3Rpb24geWsoYSl7dmFyIGI9b2soKTtyZXR1cm4gYS5pc0Rlc3RpbmF0aW9uP25rKGEuY3RpZCk6Yi5jb250YWluZXJbYS5jdGlkXX1mdW5jdGlvbiBCaygpe3ZhciBhPW9rKCk7aWYoYS5wZW5kaW5nKXtmb3IodmFyIGIsYz1bXSxkPSExLGU9d2soKSxmPXRrKCksZz17fSxoPTA7aDxhLnBlbmRpbmcubGVuZ3RoO2c9e1JnOnZvaWQgMH0saCsrKWcuUmc9YS5wZW5kaW5nW2hdLENiKGcuUmcudGFyZ2V0LmlzRGVzdGluYXRpb24/ZjplLGZ1bmN0aW9uKGwpe3JldHVybiBmdW5jdGlvbihuKXtyZXR1cm4gbj09PWwuUmcudGFyZ2V0LmN0aWR9fShnKSk/ZHx8KGI9Zy5SZy5vbkxvYWQsZD0hMCk6Yy5wdXNoKGcuUmcpO2EucGVuZGluZz1jO2lmKGIpdHJ5e2IodmsoKSl9Y2F0Y2gobCl7fX19CmZ1bmN0aW9uIENrKCl7Zm9yKHZhciBhPUUoNSksYj13aygpLGM9dGsoKSxkPXVrKCksZT1mdW5jdGlvbihxLHIpe3ZhciB0PXtjYW5vbmljYWxDb250YWluZXJJZDpFKDYpLHNjcmlwdENvbnRhaW5lcklkOmEsc3RhdGU6Mixjb250YWluZXJzOmIuc2xpY2UoKSxkZXN0aW5hdGlvbnM6Yy5zbGljZSgpfTtKYyYmKHQuc2NyaXB0RWxlbWVudD1KYyk7S2MmJih0LnNjcmlwdFNvdXJjZT1LYyk7eGsoKT09PXZvaWQgMCYmKHQuaHRtbExvYWRPcmRlcj1sayh0KSx0LmxvYWRTY3JpcHRUeXBlPW1rKHQpKTt2YXIgdSx2O3N3aXRjaChyKXtjYXNlIDA6dT1mdW5jdGlvbih6KXtmLmNvbnRhaW5lcltxXT16fTt2PWYuY29udGFpbmVyW3FdO2JyZWFrO2Nhc2UgMTp1PWZ1bmN0aW9uKHope2YuZGVzdGluYXRpb25BcnJheVtxXT1mLmRlc3RpbmF0aW9uQXJyYXlbcV18fFtdO2YuZGVzdGluYXRpb25BcnJheVtxXS51bnNoaWZ0KHopfTt2YXIgeCx5PSgoeD1mLmRlc3RpbmF0aW9uQXJyYXlbcV0pPT0KbnVsbD92b2lkIDA6eFswXSl8fGYuZGVzdGluYXRpb25bcV07IXl8fHkuc3RhdGUhPT0wJiZ5LnN0YXRlIT09MXx8KHY9eSk7YnJlYWs7Y2FzZSAyOnU9ZnVuY3Rpb24oeil7Zi5kZXN0aW5hdGlvbkFycmF5W3FdPWYuZGVzdGluYXRpb25BcnJheVtxXXx8W107Zi5kZXN0aW5hdGlvbkFycmF5W3FdLnB1c2goeil9LHY9dm9pZCAwfXUmJih2Pyh2LnN0YXRlPT09MCYmUCg5MyksbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx2LHQpKTp1KHQpKX0sZj1vaygpLGc9bShiKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSllKGgudmFsdWUsMCk7Zm9yKHZhciBsPW0oYyksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7ZC5pbmNsdWRlcyhwKT9lKHAsMSk6ZShwLDIpfWYuY2Fub25pY2FsW3ZrKCldPXt9O0JrKCl9ZnVuY3Rpb24gRGsoKXt2YXIgYT12aygpO3JldHVybiEhb2soKS5jYW5vbmljYWxbYV19CmZ1bmN0aW9uIEVrKGEpe3JldHVybiEhb2soKS5jb250YWluZXJbYV19ZnVuY3Rpb24gRmsoKXt2YXIgYT16aygpLGI9eWsoYSk7cmV0dXJuIGImJmIuY29udGV4dH1mdW5jdGlvbiBHayhhKXt2YXIgYj1uayhhKTtyZXR1cm4gYj9iLnN0YXRlIT09MDohMX1mdW5jdGlvbiB6aygpe3JldHVybntjdGlkOkUoNSksaXNEZXN0aW5hdGlvbjpJZig3KX19ZnVuY3Rpb24gSGsoYSxiLGMpe3ZhciBkPXprKCksZT1vaygpLmNvbnRhaW5lclthXTtlJiZlLnN0YXRlIT09M3x8KG9rKCkuY29udGFpbmVyW2FdPXtzdGF0ZToxLGNvbnRleHQ6YixwYXJlbnQ6ZH0scGsoe2N0aWQ6YSxpc0Rlc3RpbmF0aW9uOiExfSxjKSl9ZnVuY3Rpb24gSWsoYSxiLGMpe3ZhciBkPW9rKCksZT1uayhhKTtlP2Uuc3RhdGU9MTooZT17Y29udGV4dDpiLHN0YXRlOjEscGFyZW50OnprKCl9LGQuZGVzdGluYXRpb25BcnJheVthXT1bZV0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sYyl9CmZ1bmN0aW9uIEprKGEsYixjLGQpe3ZhciBlPW9rKCksZj1uayhhKTtmP2Yuc3RhdGU9MDooZj17c3RhdGU6MCx0cmFuc3BvcnRVcmw6Yixjb250ZXh0OmMscGFyZW50OnprKCl9LGUuZGVzdGluYXRpb25BcnJheVthXT1bZl0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sZCk7UCg5MSl9ZnVuY3Rpb24gS2soKXt2YXIgYT1vaygpLmNvbnRhaW5lcixiO2ZvcihiIGluIGEpaWYoYS5oYXNPd25Qcm9wZXJ0eShiKSYmYVtiXS5zdGF0ZT09PTEpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gTGsoKXt2YXIgYT17fTtHYihvaygpLmRlc3RpbmF0aW9uLGZ1bmN0aW9uKGIsYyl7KGM9PW51bGw/dm9pZCAwOmMuc3RhdGUpPT09MCYmKGFbYl09Yyl9KTtHYihvaygpLmRlc3RpbmF0aW9uQXJyYXksZnVuY3Rpb24oYixjKXt2YXIgZD1jWzBdOyhkPT1udWxsP3ZvaWQgMDpkLnN0YXRlKT09PTAmJihhW2JdPWQpfSk7cmV0dXJuIGF9CmZ1bmN0aW9uIE1rKGEpe3JldHVybiEhKGEmJmEucGFyZW50JiZhLmNvbnRleHQmJmEuY29udGV4dC5zb3VyY2U9PT0xJiZhLnBhcmVudC5jdGlkLmluZGV4T2YoIkdUTS0iKSE9PTApfWZ1bmN0aW9uIE5rKCl7Zm9yKHZhciBhPW9rKCksYj1tKHdrKCkpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWlmKGEuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc1tjLnZhbHVlXSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIE9rPWZ1bmN0aW9uKCl7fTtPay5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4idW5kZWZpbmVkIn07dmFyIFBrPW5ldyBPazt2YXIgWGs9ZnVuY3Rpb24oKXt0aGlzLnN0b3JhZ2U9WWEoKX07WGsucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIpfTtYay5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnN0b3JhZ2UuZ2V0KFN0cmluZyhhKSl9O3ZhciBZaztmdW5jdGlvbiBaayhhLGIpe1lrfHwoWWs9bmV3IFhrKTtZay5zZXQoYSxiKX1mdW5jdGlvbiAkayhhKXtZa3x8KFlrPW5ldyBYayk7cmV0dXJuIFlrLmdldChhKX1mdW5jdGlvbiBhbChhLGIpe1lrfHwoWWs9bmV3IFhrKTt2YXIgYz1ZaztjLnN0b3JhZ2UuaGFzKFN0cmluZyhhKSl8fGMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIoKSk7cmV0dXJuIGMuc3RvcmFnZS5nZXQoU3RyaW5nKGEpKX07ZnVuY3Rpb24gYmwoYSxiKXtmdW5jdGlvbiBjKGcpe3ZhciBoPVJqKGcpLGw9TGooaCwicHJvdG9jb2wiKSxuPUxqKGgsImhvc3QiLCEwKSxwPUxqKGgsInBvcnQiKSxxPUxqKGgsInBhdGgiKS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1wvJC8sIiIpO2lmKGw9PT12b2lkIDB8fGw9PT0iaHR0cCImJnA9PT0iODAifHxsPT09Imh0dHBzIiYmcD09PSI0NDMiKWw9IndlYiIscD0iZGVmYXVsdCI7cmV0dXJuW2wsbixwLHFdfWZvcih2YXIgZD1jKFN0cmluZyhhKSksZT1jKFN0cmluZyhiKSksZj0wO2Y8ZC5sZW5ndGg7ZisrKWlmKGRbZl0hPT1lW2ZdKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIGNsKGEpe3JldHVybiBkbChhKT8xOjB9CmZ1bmN0aW9uIGRsKGEpe3ZhciBiPWEuYXJnMCxjPWEuYXJnMTtpZihhLmFueV9vZiYmQXJyYXkuaXNBcnJheShjKSl7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPUVkKGEse30pO0VkKHthcmcxOmNbZF0sYW55X29mOnZvaWQgMH0sZSk7aWYoY2woZSkpcmV0dXJuITB9cmV0dXJuITF9c3dpdGNoKGFbImZ1bmN0aW9uIl0pe2Nhc2UgIl9jbiI6cmV0dXJuIEtnKGIsYyk7Y2FzZSAiX2NzcyI6cmV0dXJuIEdnKGIsYyk7Y2FzZSAiX2V3IjpyZXR1cm4gSGcoYixjKTtjYXNlICJfZXEiOnJldHVybiBMZyhiLGMpO2Nhc2UgIl9nZSI6cmV0dXJuIE1nKGIsYyk7Y2FzZSAiX2d0IjpyZXR1cm4gT2coYixjKTtjYXNlICJfbGMiOnJldHVybiBJZyhiLGMpO2Nhc2UgIl9sZSI6cmV0dXJuIE5nKGIsYyk7Y2FzZSAiX2x0IjpyZXR1cm4gUGcoYixjKTtjYXNlICJfcmUiOnJldHVybiBKZyhiLGMsYS5pZ25vcmVfY2FzZSxhbCgzLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KSk7Y2FzZSAiX3N3IjpyZXR1cm4gUWcoYiwKYyk7Y2FzZSAiX3VtIjpyZXR1cm4gYmwoYixjKX1yZXR1cm4hMX07ZnVuY3Rpb24gZWwoYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGEpKXt2YXIgZjtzd2l0Y2goYVswXSl7Y2FzZSAiZnVuY3Rpb25faWQiOnJldHVybiBhWzFdO2Nhc2UgImxpc3QiOmY9W107Zm9yKHZhciBnPTE7ZzxhLmxlbmd0aDtnKyspZi5wdXNoKGVsKGFbZ10sYixjLGQsZSkpO3JldHVybiBmO2Nhc2UgIm1hY3JvIjp2YXIgaD1kW2FbMV1dO3JldHVybiBoP2guZXZhbHVhdGUoYixlKTp2b2lkIDA7Y2FzZSAibWFwIjpmPXt9O2Zvcih2YXIgbD0xO2w8YS5sZW5ndGg7bCs9MilmW2VsKGFbbF0sYixjLGQsZSldPWVsKGFbbCsxXSxiLGMsZCxlKTtyZXR1cm4gZjtjYXNlICJ0ZW1wbGF0ZSI6Zj1bXTtmb3IodmFyIG49ITEscD0xO3A8YS5sZW5ndGg7cCsrKXt2YXIgcT1lbChhW3BdLGIsYyxkLGUpO2YucHVzaChxKX1yZXR1cm4gZi5qb2luKCIiKTtjYXNlICJlc2NhcGUiOmY9ZWwoYVsxXSxiLGMsZCxlKTtmPVN0cmluZyhmKTtmb3IodmFyIHk9Mjt5PGEubGVuZ3RoO3krKylVaVthW3ldXSYmKGY9VWlbYVt5XV0oZikpO3JldHVybiBmO2Nhc2UgInRhZyI6dmFyIHo9YVsxXTtpZighY1t6XSl0aHJvdyBFcnJvcigiVW5hYmxlIHRvIHJlc29sdmUgdGFnIHJlZmVyZW5jZSAiKwp6KyIuIik7cmV0dXJue2JvOmFbMl0saW5kZXg6en07Y2FzZSAiemIiOnZhciBDPXt9LEQ9KENbR2YuWWJdPWFbMV0sQy5hcmcwPWVsKGFbMl0sYixjLGQsZSksQy5hcmcxPWVsKGFbM10sYixjLGQsZSksQy5pZ25vcmVfY2FzZT1lbChhWzVdLGIsYyxkLGUpLEMpLEk9Y2woRCksRz0hIWFbNF07cmV0dXJuIEd8fEkhPT0yP0chPT0oST09PTEpOm51bGw7ZGVmYXVsdDp0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBleHBhbmQgdW5rbm93biBWYWx1ZSB0eXBlOiAiK2FbMF0rIi4iKTt9fXJldHVybiBhfTtmdW5jdGlvbiBmbChhKXtyZXR1cm4gYSYmYS5pbmRleE9mKCJwZW5kaW5nOiIpPT09MD9nbChhLnN1YnN0cig4KSk6ITF9ZnVuY3Rpb24gZ2woYSl7aWYoYT09bnVsbHx8YS5sZW5ndGg9PT0wKXJldHVybiExO3ZhciBiPU51bWJlcihhKSxjPU5iKCk7cmV0dXJuIGI8YyszRTUmJmI+Yy05RTV9O3ZhciBobD0hMSxpbD0hMSxqbD0hMSxrbD0wLGxsPSExLG1sPXZvaWQgMCxubD1bXTtmdW5jdGlvbiBvbChhKXtpZihrbD09PTApbGwmJm5sJiYobmwubGVuZ3RoPj0xMDAmJm5sLnNoaWZ0KCksbmwucHVzaChhKSk7ZWxzZSBpZihwbCgpKXt2YXIgYj1FKDQxKSxjPU1jKGIsW10pO2MubGVuZ3RoPj01MCYmYy5zaGlmdCgpO2MucHVzaChhKX19ZnVuY3Rpb24gcWwoKXtpbHx8KHJsKCksc2woa2wpKX1mdW5jdGlvbiBzbChhKXtpZighaWx8fGtsPT09MiYmYT09PTEpaWYoaWw9ITAsamwmJihhZChCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwpLGpsPSExKSxtbCE9PXZvaWQgMCYmKEEuY2xlYXJUaW1lb3V0KG1sKSxtbD12b2lkIDApLGtsPWEsYT09PTEpe3ZhciBiPW5sO25sPXZvaWQgMDtiPT1udWxsfHxiLmZvckVhY2goZnVuY3Rpb24oYyl7b2woYyl9KX19CmZ1bmN0aW9uIHJsKCl7dmFyIGE9Qi5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLXRhZy1hc3Npc3RhbnQtcHJvZC1wcmVzZW50Iik7Z2woYSk/a2w9MTohZmwoYSl8fGhsfHxqbD9rbD0yOihqbD0hMCwkYyhCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwsITEpLG1sPUEuc2V0VGltZW91dChmdW5jdGlvbigpe2lsfHwocmwoKSxzbChrbCkpO2hsPSEwfSwyMDApKX1mdW5jdGlvbiBwbCgpe2lmKCFsbClyZXR1cm4hMTtzd2l0Y2goa2wpe2Nhc2UgMTpjYXNlIDA6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2RlZmF1bHQ6cmV0dXJuITF9fTtmdW5jdGlvbiB0bCgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KTtyZXR1cm4gYS5pY3M9YS5pY3N8fG5ldyB1bH12YXIgdWw9ZnVuY3Rpb24oKXt0aGlzLmVudHJpZXM9e307dGhpcy53YWl0UGVyaW9kVGltZWRPdXQ9dGhpcy53YXNTZXRMYXRlPXRoaXMuYWNjZXNzZWRBbnk9dGhpcy5hY2Nlc3NlZERlZmF1bHQ9dGhpcy51c2VkSW1wbGljaXQ9dGhpcy51c2VkVXBkYXRlPXRoaXMudXNlZERlZmF1bHQ9dGhpcy51c2VkRGVjbGFyZT10aGlzLmFjdGl2ZT0hMTt0aGlzLkg9W119Owp1bC5wcm90b3R5cGUuZGVmYXVsdD1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHwhdGhpcy5hY2Nlc3NlZERlZmF1bHQmJiF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWREZWZhdWx0PXRoaXMuYWN0aXZlPSEwO3NiKCJUQUdHSU5HIiwxOSk7Yj09bnVsbD9zYigiVEFHR0lORyIsMTgpOnZsKHRoaXMsYSxiPT09ImdyYW50ZWQiLGMsZCxlLGYsZyl9O3VsLnByb3RvdHlwZS53YWl0Rm9yVXBkYXRlPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGEubGVuZ3RoO2QrKyl2bCh0aGlzLGFbZF0sdm9pZCAwLHZvaWQgMCwiIiwiIixiLGMpfTsKdmFyIHZsPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9YS5lbnRyaWVzLG49bFtiXXx8e30scD1uLnJlZ2lvbixxPWQmJnpiKGQpP2QudG9VcHBlckNhc2UoKTp2b2lkIDA7ZT1lLnRvVXBwZXJDYXNlKCk7Zj1mLnRvVXBwZXJDYXNlKCk7aWYoZT09PSIifHxxPT09Znx8KHE9PT1lP3AhPT1mOiFxJiYhcCkpe3ZhciByPSEhKGcmJmc+MCYmbi51cGRhdGU9PT12b2lkIDApLHQ9e3JlZ2lvbjpxLGRlY2xhcmVfcmVnaW9uOm4uZGVjbGFyZV9yZWdpb24saW1wbGljaXQ6bi5pbXBsaWNpdCxkZWZhdWx0OmMhPT12b2lkIDA/YzpuLmRlZmF1bHQsZGVjbGFyZTpuLmRlY2xhcmUsdXBkYXRlOm4udXBkYXRlLHF1aWV0OnJ9O2lmKGUhPT0iInx8bi5kZWZhdWx0IT09ITEpbFtiXT10O3ImJkEuc2V0VGltZW91dChmdW5jdGlvbigpe2xbYl09PT10JiZ0LnF1aWV0JiYoc2IoIlRBR0dJTkciLDIpLGEud2FpdFBlcmlvZFRpbWVkT3V0PSEwLGEuY2xlYXJUaW1lb3V0KGIsdm9pZCAwLGgpLAphLm5vdGlmeUxpc3RlbmVycygpKX0sZyl9fTtrPXVsLnByb3RvdHlwZTtrLmNsZWFyVGltZW91dD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W2FdLGU9Yy5kZWxlZ2F0ZWRDb25zZW50VHlwZXMsZjtmb3IoZiBpbiBlKWUuaGFzT3duUHJvcGVydHkoZikmJmVbZl09PT1hJiZkLnB1c2goZik7dmFyIGc9dGhpcy5lbnRyaWVzW2FdfHx7fSxoPXRoaXMuZ2V0Q29uc2VudFN0YXRlKGEsYyk7aWYoZy5xdWlldCl7Zy5xdWlldD0hMTtmb3IodmFyIGw9bShkKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl3bCh0aGlzLG4udmFsdWUpfWVsc2UgaWYoYiE9PXZvaWQgMCYmaCE9PWIpZm9yKHZhciBwPW0oZCkscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpd2wodGhpcyxxLnZhbHVlKX07CmsudXBkYXRlPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHx0aGlzLnVzZWRVcGRhdGV8fCF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWRVcGRhdGU9dGhpcy5hY3RpdmU9ITA7aWYoYiE9bnVsbCl7dmFyIGQ9dGhpcy5nZXRDb25zZW50U3RhdGUoYSxjKSxlPXRoaXMuZW50cmllczsoZVthXT1lW2FdfHx7fSkudXBkYXRlPWI9PT0iZ3JhbnRlZCI7dGhpcy5jbGVhclRpbWVvdXQoYSxkLGMpfX07CmsuZGVjbGFyZT1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMudXNlZERlY2xhcmU9dGhpcy5hY3RpdmU9ITA7dmFyIGY9dGhpcy5lbnRyaWVzLGc9ZlthXXx8e30saD1nLmRlY2xhcmVfcmVnaW9uLGw9YyYmemIoYyk/Yy50b1VwcGVyQ2FzZSgpOnZvaWQgMDtkPWQudG9VcHBlckNhc2UoKTtlPWUudG9VcHBlckNhc2UoKTtpZihkPT09IiJ8fGw9PT1lfHwobD09PWQ/aCE9PWU6IWwmJiFoKSl7dmFyIG49e3JlZ2lvbjpnLnJlZ2lvbixkZWNsYXJlX3JlZ2lvbjpsLGRlY2xhcmU6Yj09PSJncmFudGVkIixpbXBsaWNpdDpnLmltcGxpY2l0LGRlZmF1bHQ6Zy5kZWZhdWx0LHVwZGF0ZTpnLnVwZGF0ZSxxdWlldDpnLnF1aWV0fTtpZihkIT09IiJ8fGcuZGVjbGFyZSE9PSExKWZbYV09bn19OwprLmltcGxpY2l0PWZ1bmN0aW9uKGEsYil7dGhpcy51c2VkSW1wbGljaXQ9ITA7dmFyIGM9dGhpcy5lbnRyaWVzLGQ9Y1thXT1jW2FdfHx7fTtkLmltcGxpY2l0IT09ITEmJihkLmltcGxpY2l0PWI9PT0iZ3JhbnRlZCIpfTsKay5nZXRDb25zZW50U3RhdGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmVudHJpZXMsZD1jW2FdfHx7fSxlPWQudXBkYXRlO2lmKGUhPT12b2lkIDApcmV0dXJuIGU/MToyO2lmKGIudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXt2YXIgZj1iLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2FdO2lmKGY9PT0zKXJldHVybiAxO2lmKGY9PT0yKXJldHVybiAyfWVsc2UgaWYoZT1kLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYj09bnVsbD8wOmIuZGVsZWdhdGVkQ29uc2VudFR5cGVzLmhhc093blByb3BlcnR5KGEpKXt2YXIgZz1iLmRlbGVnYXRlZENvbnNlbnRUeXBlc1thXSxoPWNbZ118fHt9O2U9aC51cGRhdGU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYi51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHMpe3ZhciBsPWIuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbZ107aWYobD09PTMpcmV0dXJuIDE7aWYobD09PTIpcmV0dXJuIDJ9ZWxzZSBpZihlPQpoLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjJ9ZT1kLmRlY2xhcmU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7ZT1kLmltcGxpY2l0O3JldHVybiBlIT09dm9pZCAwP2U/Mzo0OjB9O2suYWRkTGlzdGVuZXI9ZnVuY3Rpb24oYSxiKXt0aGlzLkgucHVzaCh7Y29uc2VudFR5cGVzOmEsaWU6Yn0pfTt2YXIgd2w9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGEuSC5sZW5ndGg7KytjKXt2YXIgZD1hLkhbY107QXJyYXkuaXNBcnJheShkLmNvbnNlbnRUeXBlcykmJmQuY29uc2VudFR5cGVzLmluZGV4T2YoYikhPT0tMSYmKGQueG89ITApfX07dWwucHJvdG90eXBlLm5vdGlmeUxpc3RlbmVycz1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2M8dGhpcy5ILmxlbmd0aDsrK2Mpe3ZhciBkPXRoaXMuSFtjXTtpZihkLnhvKXtkLnhvPSExO3RyeXtkLmllKHtjb25zZW50RXZlbnRJZDphLGNvbnNlbnRQcmlvcml0eUlkOmJ9KX1jYXRjaChlKXt9fX19O3ZhciB4bD0hMSx5bD0hMSx6bD17fSxBbD17ZGVsZWdhdGVkQ29uc2VudFR5cGVzOnt9LGNvcmVQbGF0Zm9ybVNlcnZpY2VzOnt9LHVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlczohMSxzZWxlY3RlZEFsbENvcmVQbGF0Zm9ybVNlcnZpY2VzOiExLGNvbnRhaW5lclNjb3BlZERlZmF1bHRzOih6bC5hZF9zdG9yYWdlPTEsemwuYW5hbHl0aWNzX3N0b3JhZ2U9MSx6bC5hZF91c2VyX2RhdGE9MSx6bC5hZF9wZXJzb25hbGl6YXRpb249MSx6bCksdXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzOiExfTtmdW5jdGlvbiBCbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuKHpiKGEpP1thXTphKS5ldmVyeShmdW5jdGlvbihjKXtzd2l0Y2goYi5nZXRDb25zZW50U3RhdGUoYyxBbCkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOmNhc2UgNDpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX0pfQpmdW5jdGlvbiBDbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuIGIuZ2V0Q29uc2VudFN0YXRlKGEsQWwpfWZ1bmN0aW9uIERsKGEpe3ZhciBiPXRsKCk7Yi5hY2Nlc3NlZEFueT0hMDtyZXR1cm4hKGIuZW50cmllc1thXXx8e30pLnF1aWV0fWZ1bmN0aW9uIEVsKCl7aWYoIVlmKDUpKXJldHVybiExO3ZhciBhPXRsKCk7YS5hY2Nlc3NlZEFueT0hMDtpZihhLmFjdGl2ZSlyZXR1cm4hMDtpZighQWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXJldHVybiExO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpaWYoQWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbYy52YWx1ZV0hPT0xKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEZsKGEsYil7dGwoKS5hZGRMaXN0ZW5lcihhLGIpfQpmdW5jdGlvbiBHbChhLGIpe3RsKCkubm90aWZ5TGlzdGVuZXJzKGEsYil9ZnVuY3Rpb24gSGwoYSxiKXtpZihiLmV2ZXJ5KERsKSlhKHt9KTtlbHNle3ZhciBjPSExO0ZsKGIsZnVuY3Rpb24oZCl7IWMmJmIuZXZlcnkoRGwpJiYoYz0hMCxhKGQpKX0pfX0KZnVuY3Rpb24gSWwoYSxiKXt2YXIgYz16YihiKT9bYl06YixkPXt9LGU9ZnVuY3Rpb24oKXtyZXR1cm4gYy5maWx0ZXIoZnVuY3Rpb24oaCl7cmV0dXJuIEJsKGgpJiYhZFtoXX0pfSxmPWUoKTtpZihmLmxlbmd0aCE9PWMubGVuZ3RoKXt2YXIgZz1mdW5jdGlvbihoKXtmb3IodmFyIGw9bShoKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSlkW24udmFsdWVdPSEwfTtnKGYpO0ZsKGMsZnVuY3Rpb24oaCl7ZnVuY3Rpb24gbChxKXtxLmxlbmd0aCE9PTAmJihnKHEpLGguY29uc2VudFR5cGVzPXEsYShoKSl9dmFyIG49ZSgpO2lmKG4ubGVuZ3RoIT09MCl7dmFyIHA9T2JqZWN0LmtleXMoZCkubGVuZ3RoO24ubGVuZ3RoK3A+PWMubGVuZ3RoP2wobik6QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bChlKCkpfSw1MDApfX0pfX07dmFyIEpsPSExO2Z1bmN0aW9uIEtsKGEsYil7dmFyIGM9d2soKSxkPXRrKCk7RSgyNik7dmFyIGU9SWYoNDcpPzA6SWYoNTApPzE6MyxmPVhqKCk7aWYocGwoKSl7dmFyIGc9TGwoIklOSVQiKTtnLmNvbnRhaW5lckxvYWRTb3VyY2U9YSE9bnVsbD9hOjA7YiYmKGcucGFyZW50VGFyZ2V0UmVmZXJlbmNlPWIpO2cuYWxpYXNlcz1jO2cuZGVzdGluYXRpb25zPWQ7ZSE9PXZvaWQgMCYmKGcuZ3RnPXtzb3VyY2U6ZSxtUGF0aDpmIT1udWxsP2Y6IiJ9KTtvbChnKX19CmZ1bmN0aW9uIE1sKGEpe3ZhciBiLGMsZCxlO2I9YS50YXJnZXRJZDtjPWEucmVxdWVzdDtkPWEucWI7ZT1hLmlzQmF0Y2hlZDt2YXIgZjtpZihmPXBsKCkpe3ZhciBnO2E6c3dpdGNoKGMuZW5kcG9pbnQpe2Nhc2UgNjg6Y2FzZSA2OTpjYXNlIDE5OmNhc2UgNjI6Y2FzZSA0NzpnPSEwO2JyZWFrIGE7ZGVmYXVsdDpnPSExfWY9IWd9aWYoZil7dmFyIGg9TGwoIkdUQUdfSElUIix7ZXZlbnRJZDpkLmV2ZW50SWQscHJpb3JpdHlJZDpkLnByaW9yaXR5SWR9KTtoLnRhcmdldD1iO2gudXJsPWMudXJsO2MucG9zdEJvZHkmJihoLnBvc3RCb2R5PWMucG9zdEJvZHkpO2gucGFyYW1ldGVyRW5jb2Rpbmc9Yy5wYXJhbWV0ZXJFbmNvZGluZztoLmVuZHBvaW50PWMuZW5kcG9pbnQ7ZSE9PXZvaWQgMCYmKGguaXNCYXRjaGVkPWUpO29sKGgpfX1mdW5jdGlvbiBObChhKXtwbCgpJiZNbChhKCkpfQpmdW5jdGlvbiBMbChhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2IuZ3JvdXBJZD1PbDt2YXIgYyxkPWIsZT1QbCxmPXtwdWJsaWNJZDpRbH07ZC5ldmVudElkIT1udWxsJiYoZi5ldmVudElkPWQuZXZlbnRJZCk7ZC5wcmlvcml0eUlkIT1udWxsJiYoZi5wcmlvcml0eUlkPWQucHJpb3JpdHlJZCk7ZC5ldmVudE5hbWUmJihmLmV2ZW50TmFtZT1kLmV2ZW50TmFtZSk7ZC5ncm91cElkJiYoZi5ncm91cElkPWQuZ3JvdXBJZCk7ZC50YWdOYW1lJiYoZi50YWdOYW1lPWQudGFnTmFtZSk7Yz17Y29udGFpbmVyUHJvZHVjdDoiR1RNIixrZXk6Zix2ZXJzaW9uOmUsbWVzc2FnZVR5cGU6YX07Yy5jb250YWluZXJQcm9kdWN0PUpsPyJPR1QiOiJHVE0iO2Mua2V5LnRhcmdldFJlZj1SbDtyZXR1cm4gY312YXIgUWw9IiIsUGw9IiIsUmw9e2N0aWQ6IiIsaXNEZXN0aW5hdGlvbjohMX0sT2w7CmZ1bmN0aW9uIFNsKGEpe3ZhciBiPUUoNSksYz1JZig0NSksZD1zaygpLGU9RSg2KSxmPUUoMSk7RSgyMyk7a2w9MDtsbD0hMDtybCgpO09sPWE7UWw9YjtQbD1mO0psPWM7Umw9e2N0aWQ6Yixpc0Rlc3RpbmF0aW9uOmQsY2Fub25pY2FsSWQ6ZX19O2Z1bmN0aW9uIFRsKGEsYixjLGQpe2lmKHBsKCkpe3ZhciBlPWIuTTtNbCh7dGFyZ2V0SWQ6ZHx8W2IudGFyZ2V0LmRlc3RpbmF0aW9uSWRdLHJlcXVlc3Q6e3VybDphLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6Y30scWI6e2V2ZW50SWQ6ZS5ldmVudElkLHByaW9yaXR5SWQ6ZS5wcmlvcml0eUlkfSxGajp7ZXZlbnRJZDpRKGIsSC5KLnVmKSxwcmlvcml0eUlkOlEoYixILkoudmYpfX0pfX07ZnVuY3Rpb24gVWwoYSxiLGMpe3ZhciBkPSJodHRwczovLyIrYStiO3JldHVybiBjP2Z1bmN0aW9uKCl7cmV0dXJuIFdqKCk/WGooKStjK2I6ZH06ZnVuY3Rpb24oKXtyZXR1cm4gZH19O3ZhciBWbD17fSxXbD0oVmxbMjJdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvYXMvZCIpLFZsWzYwXT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvZ3MiKSxWbFsyM109VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9jb252ZXJzaW9uIiwiL2cvZCIpLFZsKTt2YXIgWGw9e30sWWw9KFhsWzVdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iKSxYbFs2XT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iLCIvZ3MiKSxYbFs4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs2Nl09VWwoInd3dy5nb29nbGUuY29tIiwiL3BhZ2VhZC91Y29udmVyc2lvbiIpLFhsWzYzXT1VbCgid3d3Lmdvb2dsZWFkc2VydmljZXMuY29tIiwiL3BhZ2VhZC9jb252ZXJzaW9uIiksWGxbNjRdPVVsKCJwYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIsIi9wYWdlYWQvY29udmVyc2lvbiIsIi9ncyIpLFhsWzY1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs3NF09ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2FzL3AvYyJ9LFhsKTt2YXIgWmw9e30sJGw9KFpsWzQ1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvY2NtL2NvbGxlY3QiKSxabFs0Nl09VWwoInBhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tIiwiL2NjbS9jb2xsZWN0IiwiL2dzIiksWmxbNjldPVVsKCJhZC5kb3VibGVjbGljay5uZXQiLCIvY2NtL3MvY29sbGVjdCIpLFpsWzU4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkL3NldF9wYXJ0aXRpb25lZF9jb29raWUiKSxabFs1N109VWwoInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIsIi9wYWdlYWQvc2V0X3BhcnRpdGlvbmVkX2Nvb2tpZSIpLFpsKTt2YXIgYW09e30sYm09KGFtWzldPVVsKCJnb29nbGVhZHMuZy5kb3VibGVjbGljay5uZXQiLCIvcGFnZWFkL3ZpZXd0aHJvdWdoY29udmVyc2lvbiIpLGFtWzY4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcm1rdC9jb2xsZWN0IiksYW0pO3ZhciBjbT17fSxkbT0oY21bMTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVsyMV09VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9mb3JtLWRhdGEiLCIvZCIpLGNtWzcyXT1VbCgiZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVs3M109VWwoImdvb2dsZS5jb20iLCIvY2NtL2Zvcm0tZGF0YSIsIi9kIiksY20pO3ZhciBlbT17fSxmbT0oZW1bNTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi90cmF2ZWwvZmxpZ2h0cy9jbGljay9jb252ZXJzaW9uIiksZW0pO3ZhciBnbT17fSxobT0oZ21bMV09ZnVuY3Rpb24oKXtyZXR1cm4iaHR0cHM6Ly9hZC5kb3VibGVjbGljay5uZXQvYWN0aXZpdHk7In0sZ21bMl09ZnVuY3Rpb24oKXtyZXR1cm4oV2ooKT9YaigpOiJodHRwczovL2FkZS5nb29nbGVzeW5kaWNhdGlvbi5jb20iKSsiL2RkbS9hY3Rpdml0eSIrKE0oNDY3KT8iOyI6Ii8iKX0sZ21bM109ZnVuY3Rpb24oYSl7cmV0dXJuImh0dHBzOi8vIithLmxyKyIuZmxzLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eWk7In0sZ20pO2Z1bmN0aW9uIGltKGEpe3NiKCJIRUFMVEgiLGEpfTt2YXIgam09e2JhOntQdDoiYXdfdXNlcl9kYXRhX2NhY2hlIixvaToiY29va2llX2RlcHJlY2F0aW9uX2xhYmVsIixiaDoiZGlhZ25vc3RpY3NfcGFnZV9pZCIsb3A6ImVtZW1vIixkdToiZW1fcmVnaXN0cnkiLFNpOiJlYWIiLHJ1OiJmbF91c2VyX2RhdGFfY2FjaGUiLHR1OiJnYTRfdXNlcl9kYXRhX2NhY2hlIixMdToiaWRjX3B2X2NsYWltIixTZToiaXBfZ2VvX2RhdGFfY2FjaGUiLFhpOiJpcF9nZW9fZmV0Y2hfaW5fcHJvZ3Jlc3MiLGpuOiJuYl9kYXRhIixUcToicGFnZV9leHBlcmltZW50X2lkcyIsbG46InBsZCIsVmU6InB0X2RhdGEiLG1uOiJwdF9saXN0ZW5lcl9zZXQiLGtqOiJyZXRyeV9jb250YWluZXJzIixPaDoic2VydmljZV93b3JrZXJfZW5kcG9pbnQiLFpxOiJzaGFyZWRfdXNlcl9pZCIsYXI6InNoYXJlZF91c2VyX2lkX3JlcXVlc3RlZCIsc2o6InNoYXJlZF91c2VyX2lkX3NvdXJjZSIsYnY6ImF3aCIsaHI6InVuaXZlcnNhbF9jbGFpbV9yZWdpc3RyeSJ9fTt2YXIga209ZnVuY3Rpb24oYSl7cmV0dXJuIHRmKGZ1bmN0aW9uKGIpe2Zvcih2YXIgYyBpbiBhKWlmKGI9PT1hW2NdJiYhL15bMC05XSskLy50ZXN0KGMpKXJldHVybiEwO3JldHVybiExfSl9KGptLmJhKTsKZnVuY3Rpb24gbG0oYSxiKXtiPWI9PT12b2lkIDA/ITE6YjtpZihrbShhKSl7dmFyIGMsZCxlPShkPShjPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSkueGNkKSE9bnVsbD9kOmMueGNkPXt9O2lmKGVbYV0pcmV0dXJuIGVbYV07aWYoYil7dmFyIGY9dm9pZCAwLGc9MSxoPXt9LGw9e3NldDpmdW5jdGlvbihuKXtmPW47bC5ub3RpZnkoKX0sZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGZ9LHN1YnNjcmliZTpmdW5jdGlvbihuKXtoW1N0cmluZyhnKV09bjtyZXR1cm4gZysrfSx1bnN1YnNjcmliZTpmdW5jdGlvbihuKXt2YXIgcD1TdHJpbmcobik7cmV0dXJuIGguaGFzT3duUHJvcGVydHkocCk/KGRlbGV0ZSBoW3BdLCEwKTohMX0sbm90aWZ5OmZ1bmN0aW9uKCl7Zm9yKHZhciBuPW0oT2JqZWN0LmtleXMoaCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3RyeXtoW3FdKGEsZil9Y2F0Y2gocil7fX19fTtyZXR1cm4gZVthXT1sfX19CmZ1bmN0aW9uIG1tKGEsYil7dmFyIGM9bG0oYSwhMCk7YyYmYy5zZXQoYil9ZnVuY3Rpb24gbm0oYSl7dmFyIGI7cmV0dXJuKGI9bG0oYSkpPT1udWxsP3ZvaWQgMDpiLmdldCgpfWZ1bmN0aW9uIG9tKGEsYil7dmFyIGM9bG0oYSk7aWYoIWMpe2M9bG0oYSwhMCk7aWYoIWMpcmV0dXJuO2Muc2V0KGIpfXJldHVybiBjLmdldCgpfWZ1bmN0aW9uIHBtKGEsYil7aWYodHlwZW9mIGI9PT0iZnVuY3Rpb24iKXt2YXIgYztyZXR1cm4oYz1sbShhLCEwKSk9PW51bGw/dm9pZCAwOmMuc3Vic2NyaWJlKGIpfX1mdW5jdGlvbiBxbShhLGIpe3ZhciBjPWxtKGEpO3JldHVybiBjP2MudW5zdWJzY3JpYmUoYik6ITF9O3ZhciBzbT1mdW5jdGlvbigpe3RoaXMuSD17fTt0aGlzLks9ITF9O3NtLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dGhpcy5LfHwodGhpcy5IPXRtKCksdGhpcy5IWyIwIl0mJm9tKGptLmJhLlNlLEpTT04uc3RyaW5naWZ5KHRoaXMuSCkpKX07CnZhciB4bT1mdW5jdGlvbigpe3ZhciBhPXVtLGI9dm0sYz12b2lkIDAsZD1mdW5jdGlvbigpe2MhPT12b2lkIDAmJnFtKGptLmJhLlNlLGMpO3RyeXt2YXIgZj1ubShqbS5iYS5TZSk7Yi5IPUpTT04ucGFyc2UoZil9Y2F0Y2goZyl7UCgxMjMpLGltKDIpLGIuSD17fX1iLks9ITA7YSgpfSxlPW5tKGptLmJhLlNlKTtlP2QoZSk6KGM9cG0oam0uYmEuU2UsZCksd20oKSl9LHdtPWZ1bmN0aW9uKCl7aWYoIW5tKGptLmJhLlhpKSl7bW0oam0uYmEuWGksITApO3ZhciBhPWZ1bmN0aW9uKGIpe21tKGptLmJhLlNlLGJ8fCJ7fSIpO21tKGptLmJhLlhpLCExKX07dHJ5e0EuZmV0Y2goImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vY2NtL2dlbyIse21ldGhvZDoiR0VUIixjYWNoZToibm8tc3RvcmUiLG1vZGU6ImNvcnMiLGNyZWRlbnRpYWxzOiJvbWl0In0pLnRoZW4oZnVuY3Rpb24oYil7Yi5vaz9iLnRleHQoKS50aGVuKGZ1bmN0aW9uKGMpe2EoYyl9LGZ1bmN0aW9uKCl7YSgpfSk6YSgpfSxmdW5jdGlvbigpe2EoKX0pfWNhdGNoKGIpe2EoKX19fSwKdG09ZnVuY3Rpb24oKXt2YXIgYT1FKDIyKTt0cnl7cmV0dXJuIEpTT04ucGFyc2UocWIoYSkpfWNhdGNoKGIpe3JldHVybiBQKDEyMyksaW0oMikse319fSx5bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIwIl18fCIifSx6bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIxIl18fCIifSxBbT1mdW5jdGlvbigpe3ZhciBhPXZtLGI9ITE7Yj0hIWEuSFsiMiJdO3JldHVybiBifSxCbT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyI2Il0hPT0hMX0sQ209ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSExO2I9ISFhLkhbIjkiXTtyZXR1cm4gYn0sRG09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO2I9YS5IWyI0Il18fCIiOwpyZXR1cm4gYn0sRW09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO2I9YS5IWyIzIl18fCIiO3JldHVybiBifSx2bT1uZXcgc207ZnVuY3Rpb24gRm0oYSl7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuImh0dHBzOi8vIisoRG0oKXx8Ind3dyIpKyIuZ29vZ2xlLWFuYWx5dGljcy5jb20vIithfWZ1bmN0aW9uIEdtKGEpe2E9YT09PXZvaWQgMD8iZy9jb2xsZWN0IjphO3ZhciBiPURtKCk7cmV0dXJuImh0dHBzOi8vIisoYj9iKyIuIjoiIikrImFuYWx5dGljcy5nb29nbGUuY29tLyIrYX12YXIgSG09e30sSW09KEhtWzE3XT1mdW5jdGlvbigpe3JldHVybiBXaigpJiYhRG0oKT9YaigpKyIvYWcvZy9jIjpHbSgpfSxIbVsxNl09ZnVuY3Rpb24oKXtyZXR1cm4gV2ooKSYmIURtKCk/WGooKSsiL2dhL2cvYyI6Rm0oKX0sSG1bNjddPWZ1bmN0aW9uKCl7dmFyIGE7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuIERtKCk/IiI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vIithfSxIbSk7ZnVuY3Rpb24gSm0oYSxiLGMpe3ZhciBkPVVsKGIsIi9tZWFzdXJlbWVudC9jb252ZXJzaW9uIixjKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gRG0oKT9hKCJtZWFzdXJlbWVudC9jb252ZXJzaW9uIik6ZCgpfX12YXIgS209e30sTG09KEttWzU1XT1KbShGbSwicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvZ3MiKSxLbVs1NF09Sm0oR20sInd3dy5nb29nbGUuY29tIiwiL2ciKSxLbSk7dmFyIE1tPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sV2wsWWwsJGwsYm0sZG0sZm0saG0sTG0sSW0pO2Z1bmN0aW9uIE5tKGEsYil7dmFyIGM9T2JqZWN0LmtleXMoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBiW2RdIT1udWxsfSkubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkKyI9IitiW2RdfSkuam9pbigiJiIpO3JldHVybiBNbVthXSh2b2lkIDApKyI/IitjfTt2YXIgT209e30sUG09KE9tLnRkcD0xLE9tLmV4cD0xLE9tLmd0bT0xLE9tLnBpZD0xLE9tLmRsPTEsT20uc2VxPTEsT20udD0xLE9tLnY9MSxPbSksUm09ZnVuY3Rpb24oKXt2YXIgYT1RbTtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGEuSFtiXX0pfSxTbT1mdW5jdGlvbihhLGIsYyl7aWYoYS5IW2JdPT09dm9pZCAwfHwoYz09PXZvaWQgMD8wOmMpKWEuSFtiXT0hMH0sVG09ZnVuY3Rpb24oYSl7YS5mb3JFYWNoKGZ1bmN0aW9uKGIpe1BtW2JdfHwoUW0uSFtiXT0hMSl9KX0sUW09bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuSz17fX07ZnVuY3Rpb24gVW0oYSxiLGMpe3ZhciBkPWM9PT12b2lkIDA/ITA6YyxlPVFtO2UuS1thXT1iOyhkPT09dm9pZCAwfHxkKSYmU20oZSxhKX1mdW5jdGlvbiBWbShhLGIpe1NtKFFtLGEsYj09PXZvaWQgMD8hMTpiKX07ZnVuY3Rpb24gV20oYSl7dmFyIGI9MDthLkdjLmZvckVhY2goZnVuY3Rpb24oYyl7Ynw9MTw8Y30pO3JldHVybiBifWZ1bmN0aW9uIFhtKCl7cmV0dXJue3RvdGFsOjAsamI6MCxHYzpuZXcgU2V0LGxmOnt9fX1mdW5jdGlvbiBZbShhLGIsYyxkKXt2YXIgZT1PYmplY3Qua2V5cyhhLm5mKS5zb3J0KGZ1bmN0aW9uKGYsZyl7cmV0dXJuIE51bWJlcihmKS1OdW1iZXIoZyl9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuW2YsYihhLm5mW2ZdKV19KS5maWx0ZXIoZnVuY3Rpb24oZil7cmV0dXJuIGZbMV0hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuam9pbihjKX0pLmpvaW4oZCk7cmV0dXJuIGU/ZTp2b2lkIDB9CmZ1bmN0aW9uIFptKGEsYil7dmFyIGMsZCxlO2M9Yz09PXZvaWQgMD8iXyI6YztkPWQ9PT12b2lkIDA/IjsiOmQ7ZT1lPT09dm9pZCAwPyJ+IjplO2Zvcih2YXIgZj1bXSxnPW0oT2JqZWN0LmtleXMoYS5sZikuc29ydCgpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPVltKGEubGZbbF0sYixjLGQpO2lmKG4pe3ZhciBwPXZvaWQgMDtmLnB1c2goIiIrKChwPWwpIT1udWxsP3A6IiIpK2Qrbil9fXJldHVybiBmLmxlbmd0aD9mLmpvaW4oZSk6dm9pZCAwfQpmdW5jdGlvbiAkbShhKXthLmpiPTA7YS5HYy5jbGVhcigpO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKGEubGYpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9YS5sZltjLnZhbHVlXTtkLmpiPTA7ZC5HYy5jbGVhcigpO2Zvcih2YXIgZT1tKE9iamVjdC5rZXlzKGQubmYpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9ZC5uZltmLnZhbHVlXTtnLmpiPTA7Zy5HYy5jbGVhcigpfX19CmZ1bmN0aW9uIGFuKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPzE6ZDthLnRvdGFsKz1kO2EuamIrPWQ7dmFyIGYsZz1iPT09dm9pZCAwPyIiOmI7Zj1hLmxmW2ddfHwoYS5sZltnXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXQsbmY6e319KTtmLnRvdGFsKz1kO2YuamIrPWQ7dmFyIGgsbD1TdHJpbmcoYyk7aD1mLm5mW2xdfHwoZi5uZltsXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXR9KTtoLnRvdGFsKz1kO2guamIrPWQ7ZSE9PXZvaWQgMCYmKGEuR2MuYWRkKGUpLGYuR2MuYWRkKGUpLGguR2MuYWRkKGUpKX07dmFyIGJuPWZ1bmN0aW9uKCl7dGhpcy5IPVhtKCl9O2JuLnByb3RvdHlwZS5pbmNyZW1lbnQ9ZnVuY3Rpb24oYSxiKXthbih0aGlzLkgsYSxiKX07dmFyIGNuPW5ldyBibjtmdW5jdGlvbiBkbihhKXt2YXIgYj1TdHJpbmcoYVtHZi5ZYl18fCIiKS5yZXBsYWNlKC9fL2csIiIpO3JldHVybiBTYihiLCJjdnQiKT8iY3Z0IjpifXZhciBlbj1BLmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCI/Z3RtX2xhdGVuY3k9Iik+PTB8fEEubG9jYXRpb24uc2VhcmNoLmluZGV4T2YoIiZndG1fbGF0ZW5jeT0iKT49MDt2YXIgZ249ZnVuY3Rpb24oKXt2YXIgYT1mbjtyZXR1cm4gTSg2MDMpJiZJZig2NSwhMSkmJiFhLlp9LGZuPW5ldyBmdW5jdGlvbihhKXt0aGlzLlI9YSgpO3ZhciBiPUpmKDI3KTt0aGlzLk49ZW58fHRoaXMuUjxiO3ZhciBjPUpmKDQyKTt0aGlzLlo9ZW58fHRoaXMuUj49MS1jO3ZhciBkPU0oNjAzKSYmSWYoNjUsITEpO3RoaXMuSz10aGlzLlp8fGQ7dmFyIGU9SmYoMjcpLGY9SmYoNjMpO3RoaXMuSD1lbnx8Zj09PTF8fHRoaXMuUj49ZSYmdGhpcy5SPGUrZn0oZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb20oKX0pO3ZhciBobj1mdW5jdGlvbigpe3RoaXMuSD17fX07aG4ucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjKXtpZihmbi5LKXt2YXIgZD1qbihiLGMpO2lmKGQpe3ZhciBlLGY9YjtmPT09NCYmKGY9NSk7dmFyIGc9dGhpcy5IW2ZdO2d8fChnPXRoaXMuSFtmXT17fSk7ZT1nO3ZhciBoPWVbZF07aHx8KGg9ZVtkXT1bXSk7aC5wdXNoKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYSkpO2NuLmluY3JlbWVudChhLmRlc3RpbmF0aW9uSWQsYS5lbmRwb2ludCk7YS5lbmRwb2ludCE9PTU2JiZhLmVuZHBvaW50IT09NjEmJlZtKCJtZGUiLCEwKX19fTsKdmFyIG1uPWZ1bmN0aW9uKGEsYil7dmFyIGM9a24sZD1qbihhLGIpO2lmKGQpe3ZhciBlPWxuKGMsYSk7aWYoZSl7dmFyIGY9ZVtkXTtmJiYoZVtkXT1mLmZpbHRlcihmdW5jdGlvbihnKXtyZXR1cm4hZy5Fb30pKX19fSxsbj1mdW5jdGlvbihhLGIpe2I9PT00JiYoYj01KTtyZXR1cm4gYS5IW2JdfSxqbj1mdW5jdGlvbihhLGIpe3ZhciBjPWI7aWYoYlswXT09PSIvIil7dmFyIGQ7Yz0oKGQ9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmQub3JpZ2luKStifXRyeXt2YXIgZT1uZXcgVVJMKGMpO3JldHVybiBhPT09Mj9lLm9yaWdpbjplLm9yaWdpbitlLnBhdGhuYW1lfWNhdGNoKGYpe319LGtuPW5ldyBobjsKZnVuY3Rpb24gbm4oYSl7c3dpdGNoKGEpe2Nhc2UgInNjcmlwdC1zcmMiOnJldHVybiA0O2Nhc2UgInNjcmlwdC1zcmMtZWxlbSI6cmV0dXJuIDU7Y2FzZSAiZnJhbWUtc3JjIjpyZXR1cm4gMjtjYXNlICJjb25uZWN0LXNyYyI6cmV0dXJuIDE7Y2FzZSAiaW1nLXNyYyI6cmV0dXJuIDN9fTtmdW5jdGlvbiBvbihhLGIsYyl7dmFyIGQsZT1hLkdvb2dsZWJRaENzTztlfHwoZT17fSxhLkdvb2dsZWJRaENzTz1lKTtkPWU7aWYoZFtiXSlyZXR1cm4hMTtkW2JdPVtdO2RbYl1bMF09YztyZXR1cm4hMH07dmFyIHBuLHFuO2E6e2Zvcih2YXIgcm49WyJDTE9TVVJFX0ZMQUdTIl0sc249UmEsdG49MDt0bjxybi5sZW5ndGg7dG4rKylpZihzbj1zbltyblt0bl1dLHNuPT1udWxsKXtxbj1udWxsO2JyZWFrIGF9cW49c259dmFyIHVuPXFuJiZxbls2MTA0MDEzMDFdO3BuPXVuIT1udWxsP3VuOiExO2Z1bmN0aW9uIHZuKCl7dmFyIGE9UmEubmF2aWdhdG9yO2lmKGEpe3ZhciBiPWEudXNlckFnZW50O2lmKGIpcmV0dXJuIGJ9cmV0dXJuIiJ9dmFyIHduLHhuPVJhLm5hdmlnYXRvcjt3bj14bj94bi51c2VyQWdlbnREYXRhfHxudWxsOm51bGw7ZnVuY3Rpb24geW4oYSl7aWYoIXBufHwhd24pcmV0dXJuITE7Zm9yKHZhciBiPTA7Yjx3bi5icmFuZHMubGVuZ3RoO2IrKyl7dmFyIGM9d24uYnJhbmRzW2JdLmJyYW5kO2lmKGMmJmMuaW5kZXhPZihhKSE9LTEpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gem4oYSl7cmV0dXJuIHZuKCkuaW5kZXhPZihhKSE9LTF9O2Z1bmN0aW9uIEFuKCl7cmV0dXJuIHBuPyEhd24mJnduLmJyYW5kcy5sZW5ndGg+MDohMX1mdW5jdGlvbiBCbigpe3JldHVybiBBbigpPyExOnpuKCJPcGVyYSIpfWZ1bmN0aW9uIENuKCl7cmV0dXJuIHpuKCJGaXJlZm94Iil8fHpuKCJGeGlPUyIpfWZ1bmN0aW9uIERuKCl7cmV0dXJuIEFuKCk/eW4oIkNocm9taXVtIik6KHpuKCJDaHJvbWUiKXx8em4oIkNyaU9TIikpJiYhKEFuKCk/MDp6bigiRWRnZSIpKXx8em4oIlNpbGsiKX07ZnVuY3Rpb24gRW4oKXtyZXR1cm4gcG4/ISF3biYmISF3bi5wbGF0Zm9ybTohMX1mdW5jdGlvbiBGbigpe3JldHVybiB6bigiaVBob25lIikmJiF6bigiaVBvZCIpJiYhem4oImlQYWQiKX1mdW5jdGlvbiBHbigpe0ZuKCl8fHpuKCJpUGFkIil8fHpuKCJpUG9kIil9O3ZhciBIbj1mdW5jdGlvbihhKXtIblsiICJdKGEpO3JldHVybiBhfTtIblsiICJdPWZ1bmN0aW9uKCl7fTtCbigpO0FuKCl8fHpuKCJUcmlkZW50Iil8fHpuKCJNU0lFIik7em4oIkVkZ2UiKTshem4oIkdlY2tvIil8fHZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpfHx6bigiVHJpZGVudCIpfHx6bigiTVNJRSIpfHx6bigiRWRnZSIpO3ZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpJiZ6bigiTW9iaWxlIik7RW4oKXx8em4oIk1hY2ludG9zaCIpO0VuKCl8fHpuKCJXaW5kb3dzIik7KEVuKCk/d24ucGxhdGZvcm09PT0iTGludXgiOnpuKCJMaW51eCIpKXx8RW4oKXx8em4oIkNyT1MiKTtFbigpfHx6bigiQW5kcm9pZCIpO0ZuKCk7em4oImlQYWQiKTt6bigiaVBvZCIpO0duKCk7dm4oKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImthaW9zIik7Q24oKTtGbigpfHx6bigiaVBvZCIpO3puKCJpUGFkIik7IXpuKCJBbmRyb2lkIil8fERuKCl8fENuKCl8fEJuKCl8fHpuKCJTaWxrIik7RG4oKTshem4oIlNhZmFyaSIpfHxEbigpfHwoQW4oKT8wOnpuKCJDb2FzdCIpKXx8Qm4oKXx8KEFuKCk/MDp6bigiRWRnZSIpKXx8KEFuKCk/eW4oIk1pY3Jvc29mdCBFZGdlIik6em4oIkVkZy8iKSl8fChBbigpP3luKCJPcGVyYSIpOnpuKCJPUFIiKSl8fENuKCl8fHpuKCJTaWxrIil8fHpuKCJBbmRyb2lkIil8fEduKCk7dmFyIEluPXt9LEpuPW51bGw7CmZ1bmN0aW9uIEtuKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZT4yNTUmJihiW2MrK109ZSYyNTUsZT4+PTgpO2JbYysrXT1lfXZhciBmPTQ7Zj09PXZvaWQgMCYmKGY9MCk7aWYoIUpuKXtKbj17fTtmb3IodmFyIGc9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ii5zcGxpdCgiIiksaD1bIisvPSIsIisvIiwiLV89IiwiLV8uIiwiLV8iXSxsPTA7bDw1O2wrKyl7dmFyIG49Zy5jb25jYXQoaFtsXS5zcGxpdCgiIikpO0luW2xdPW47Zm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07Sm5bcV09PT12b2lkIDAmJihKbltxXT1wKX19fWZvcih2YXIgcj1JbltmXSx0PUFycmF5KE1hdGguZmxvb3IoYi5sZW5ndGgvMykpLHU9cls2NF18fCIiLHY9MCx4PTA7djxiLmxlbmd0aC0yO3YrPTMpe3ZhciB5PWJbdl0sej1iW3YrMV0sQz1iW3YrMl0sCkQ9clt5Pj4yXSxJPXJbKHkmMyk8PDR8ej4+NF0sRz1yWyh6JjE1KTw8MnxDPj42XSxOPXJbQyY2M107dFt4KytdPSIiK0QrSStHK059dmFyIFM9MCxXPXU7c3dpdGNoKGIubGVuZ3RoLXYpe2Nhc2UgMjpTPWJbdisxXSxXPXJbKFMmMTUpPDwyXXx8dTtjYXNlIDE6dmFyIGVhPWJbdl07dFt4XT0iIityW2VhPj4yXStyWyhlYSYzKTw8NHxTPj40XStXK3V9cmV0dXJuIHQuam9pbigiIil9O3ZhciBMbj1mdW5jdGlvbihhKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEucmVwbGFjZSgvXCsvZywiICIpKX07dmFyIE1uPVJlZ0V4cCgiXig/OihbXjovPyMuXSspOik/KD86Ly8oPzooW15cXFxcLz8jXSopQCk/KFteXFxcXC8/I10qPykoPzo6KFswLTldKykpPyg/PVtcXFxcLz8jXXwkKSk/KFtePyNdKyk/KD86XFw/KFteI10qKSk/KD86IyhbXFxzXFxTXSopKT8kIik7ZnVuY3Rpb24gTm4oYSxiLGMsZCl7Zm9yKHZhciBlPWIsZj1jLmxlbmd0aDsoZT1hLmluZGV4T2YoYyxlKSk+PTAmJmU8ZDspe3ZhciBnPWEuY2hhckNvZGVBdChlLTEpO2lmKGc9PTM4fHxnPT02Myl7dmFyIGg9YS5jaGFyQ29kZUF0KGUrZik7aWYoIWh8fGg9PTYxfHxoPT0zOHx8aD09MzUpcmV0dXJuIGV9ZSs9ZisxfXJldHVybi0xfXZhciBPbj0vI3wkLzsKZnVuY3Rpb24gUG4oYSxiKXt2YXIgYz1hLnNlYXJjaChPbiksZD1ObihhLDAsYixjKTtpZihkPDApcmV0dXJuIG51bGw7dmFyIGU9YS5pbmRleE9mKCImIixkKTtpZihlPDB8fGU+YyllPWM7ZCs9Yi5sZW5ndGgrMTtyZXR1cm4gTG4oYS5zbGljZShkLGUhPT0tMT9lOjApKX12YXIgUW49L1s/Jl0oJHwjKS87CmZ1bmN0aW9uIFJuKGEsYixjKXtmb3IodmFyIGQsZT1hLnNlYXJjaChPbiksZj0wLGcsaD1bXTsoZz1ObihhLGYsYixlKSk+PTA7KWgucHVzaChhLnN1YnN0cmluZyhmLGcpKSxmPU1hdGgubWluKGEuaW5kZXhPZigiJiIsZykrMXx8ZSxlKTtoLnB1c2goYS5zbGljZShmKSk7ZD1oLmpvaW4oIiIpLnJlcGxhY2UoUW4sIiQxIik7dmFyIGwsbj1jIT1udWxsPyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGMpKToiIjt2YXIgcD1iK247aWYocCl7dmFyIHEscj1kLmluZGV4T2YoIiMiKTtyPDAmJihyPWQubGVuZ3RoKTt2YXIgdD1kLmluZGV4T2YoIj8iKSx1O3Q8MHx8dD5yPyh0PXIsdT0iIik6dT1kLnN1YnN0cmluZyh0KzEscik7cT1bZC5zbGljZSgwLHQpLHUsZC5zbGljZShyKV07dmFyIHY9cVsxXTtxWzFdPXA/dj92KyImIitwOnA6djtsPXFbMF0rKHFbMV0/Ij8iK3FbMV06IiIpK3FbMl19ZWxzZSBsPWQ7cmV0dXJuIGx9O2Z1bmN0aW9uIFNuKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9UG4oYywiZm10Iik7aWYoZCl7dmFyIG49UG4oYywicmFuZG9tIikscD1QbihjLCJsYWJlbCIpfHwiIjtpZighbilyZXR1cm47dmFyIHE9S24oTG4ocCkrIjoiK0xuKG4pKTtpZighb24oYSxxLGQpKXJldHVybn1sJiZOdW1iZXIobCkhPT00PyhjPVJuKGMsInJmbXQiLGwpLGM9Um4oYywiZm10Iiw0KSk6bHx8KGM9Um4oYywiZm10Iiw0KSk7VWMoYyxmdW5jdGlvbigpe2c9PW51bGx8fFRuKGcpO2g9PW51bGx8fFVuKGgsYyk7YS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzJiZkJiYoYS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzPW51bGwsZCgpKX0sZnVuY3Rpb24oKXtnPT1udWxsfHxUbihnKTtoPT1udWxsfHxVbihoLGMpO2U9PW51bGx8fGUoKX0sZixiLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXS5wYXJlbnRFbGVtZW50fHx2b2lkIDApO3JldHVybiBjfTtmdW5jdGlvbiBWbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwxLGJbMF0pO2lkLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gV24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gamQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBYbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwzLGJbMF0pO1pjLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gWW4oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gbWQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBabihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSw1LGJbMF0pO1VjLmFwcGx5KG51bGwsdyhiKSl9CmZ1bmN0aW9uICRuKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTtiWzBdJiZrbi5yZWdpc3RlcihhLDIsYlswXSk7WGMuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBhbyhhKXt2YXIgYj1Tbi5hcHBseShudWxsLHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSk7YiYma24ucmVnaXN0ZXIoYSw0LGIpO3JldHVybiBifTt2YXIgYm89e01hOntSZTowLFVlOjEsTGg6Mn19O2JvLk1hW2JvLk1hLlJlXT0iRlVMTF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLlVlXT0iTElNSVRFRF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLkxoXT0iTk9fVFJBTlNNSVNTSU9OIjt2YXIgY289e2lhOntnZDowLGNiOjEseGQ6MixaYjozfX07Y28uaWFbY28uaWEuZ2RdPSJOT19RVUVVRSI7Y28uaWFbY28uaWEuY2JdPSJBRFMiO2NvLmlhW2NvLmlhLnhkXT0iQU5BTFlUSUNTIjtjby5pYVtjby5pYS5aYl09Ik1PTklUT1JJTkciO3ZhciBlbz1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuY29uc2VudFR5cGVzPWJ9O2VvLnByb3RvdHlwZS5pc0NvbnNlbnRHcmFudGVkPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMuSCl7Y2FzZSAwOnJldHVybiB0aGlzLmNvbnNlbnRUeXBlcy5ldmVyeShmdW5jdGlvbihhKXtyZXR1cm4gQmwoYSl9KTtjYXNlIDE6cmV0dXJuIHRoaXMuY29uc2VudFR5cGVzLnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIEJsKGEpfSk7ZGVmYXVsdDp5Yyh0aGlzLkgsImNvbnNlbnRzUmVxdWlyZWQgaGFkIGFuIHVua25vd24gdHlwZSIpfX07CnZhciBmbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT17fTt0aGlzLkg9KGFbY28uaWEuZ2RdPWJvLk1hLlJlLGFbY28uaWEuY2JdPWJvLk1hLlJlLGFbY28uaWEueGRdPWJvLk1hLlJlLGFbY28uaWEuWmJdPWJvLk1hLlJlLGEpO3ZhciBiPXt9O3RoaXMuSz0oYltjby5pYS5nZF09bmV3IGVvKDAsW10pLGJbY28uaWEuY2JdPW5ldyBlbygwLFsiYWRfc3RvcmFnZSJdKSxiW2NvLmlhLnhkXT1uZXcgZW8oMCxbImFuYWx5dGljc19zdG9yYWdlIl0pLGJbY28uaWEuWmJdPW5ldyBlbygxLFsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIl0pLGIpfTt2YXIgaG89ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczt0aGlzLnR5cGU9YTt0aGlzLkg9W107RmwoZm8uS1thXS5jb25zZW50VHlwZXMsZnVuY3Rpb24oKXtnbyhiKXx8Yi5mbHVzaCgpfSl9O2hvLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe2Zvcih2YXIgYT1tKHRoaXMuSCksYj1hLm5leHQoKTshYi5kb25lO2I9YS5uZXh0KCkpe3ZhciBjPWIudmFsdWU7YygpfXRoaXMuSD1bXX07dmFyIGdvPWZ1bmN0aW9uKGEpe3JldHVybiBmby5IW2EudHlwZV09PT1iby5NYS5MaCYmIWZvLktbYS50eXBlXS5pc0NvbnNlbnRHcmFudGVkKCl9LGlvPWZ1bmN0aW9uKGEsYil7Z28oYSk/YS5ILnB1c2goYik6YigpfSxqbz1mdW5jdGlvbigpe3RoaXMuSD1uZXcgTWFwfSxsbz1mdW5jdGlvbihhKXt2YXIgYj1rbztiLkguaGFzKGEpfHxiLkguc2V0KGEsbmV3IGhvKGEpKTtyZXR1cm4gYi5ILmdldChhKX07am8ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5ILmNsZWFyKCl9Owp2YXIga289bmV3IGpvO3ZhciBtbz1bImZpbiIsImZzIiwibWNjIiwibmNjIl0sbm89ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwPyExOmE7dmFyIGI9Um0oKSxjPVFtLkssZD1iLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gY1tlXSE9PXZvaWQgMCYmKGF8fCFtby5pbmNsdWRlcyhlKSl9KTtUbShkKTtyZXR1cm4gZC5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9Y1tlXTt0eXBlb2YgZj09PSJmdW5jdGlvbiImJihmPWYoKSk7cmV0dXJuIGY/IiYiK2UrIj0iK2Y6IiJ9KS5qb2luKCIiKSsiJno9MCJ9LG9vPWZ1bmN0aW9uKGEpe3ZhciBiPSJodHRwczovLyIrRSgyMSksYz0iL3RkP2lkPSIrRSg1KTtyZXR1cm4iIitmayhiKStjK2F9LHBvPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/ITE6YjtjPWM9PT12b2lkIDA/ITE6YztpZigkaygyNikmJmZuLksmJkUoNSkmJihjfHwhZ24oKSkpe3ZhciBkPWxvKGNvLmlhLlpiKTtpZihnbyhkKSlhLkh8fChhLkg9ITAsaW8oZCxmdW5jdGlvbigpe3JldHVybiBwbyhhKX0pKTsKZWxzZXtiJiZVbSgiZmluIiwiMSIpO3ZhciBlPW5vKGIpLGY9b28oZSksZz17ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjYxfTtiP1luKGcsZix2b2lkIDAse1FnOiEwfSx2b2lkIDAsZnVuY3Rpb24oKXtaYyhmKyImaW1nPTEiKX0pOlhuKGcsZik7YS5IPSExO3FvKGUpfX19LHFvPWZ1bmN0aW9uKGEpe2lmKEtjJiYoU2IoS2MsImh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tLyIpfHxJZig0NykpJiYhKGEuaW5kZXhPZigiJmNzcD0iKTwwJiZhLmluZGV4T2YoIiZtZGU9Iik8MCkpe3ZhciBiO2E6e3RyeXtpZihLYyl7Yj1uZXcgVVJMKEtjKTticmVhayBhfX1jYXRjaChjKXt9Yj12b2lkIDB9YiYmVWMoIiIrS2MrKEtjLmluZGV4T2YoIj8iKT49MD8iJiI6Ij8iKSsiaXNfdGQ9MSIrYSl9fSxybz1mdW5jdGlvbihhKXtSbSgpLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIVBtW2JdfSkmJnBvKGEsITApfSxzbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0hMTsKJGMoQSwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7cm8oYSl9KX07ZnVuY3Rpb24gdG8oYSxiKXtwbyhzbyxhPT09dm9pZCAwPyExOmEsYj09PXZvaWQgMD8hMTpiKX07dmFyIHVvPVsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIiwiYWRfcGVyc29uYWxpemF0aW9uIl0sdm89W0YuRC5kZCxGLkQueWMsRi5ELlFmLEYuRC5LYixGLkQueGMsRi5ELmZiLEYuRC5EYixGLkQubmIsRi5ELkxiLEYuRC52Y10seW89ZnVuY3Rpb24oKXt2YXIgYT13bzshYS5SJiZhLkgmJih1by5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBBbC5jb250YWluZXJTY29wZWREZWZhdWx0c1tiXSE9PTF9KXx8eG8oIm1iYyIpKTthLlI9ITB9LHhvPWZ1bmN0aW9uKGEpe2ZuLksmJihVbShhLCIxIiksdG8oKSl9LHpvPWZ1bmN0aW9uKGEsYil7dmFyIGM9d287aWYoIWMuTltiXSYmKGMuTltiXT0hMCxjLktbYl0pKWZvcih2YXIgZD1tKHZvKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlpZihPKGEsZS52YWx1ZSkpe3hvKCJlcmMiKTticmVha319LHdvPW5ldyBmdW5jdGlvbigpe3RoaXMuUj10aGlzLkg9ITE7dGhpcy5OPXt9O3RoaXMuSz17fX07dmFyIEFvPXt9LEJvPU9iamVjdC5mcmVlemUoKEFvW0YuRC5SY109MSxBb1tGLkQuaGhdPTEsQW9bRi5ELnNpXT0xLEFvW0YuRC5TY109MSxBb1tGLkQuSGFdPTEsQW9bRi5ELkxiXT0xLEFvW0YuRC5DYl09MSxBb1tGLkQuVGJdPTEsQW9bRi5ELklkXT0xLEFvW0YuRC52Y109MSxBb1tGLkQubmJdPTEsQW9bRi5ELkpkXT0xLEFvW0YuRC5IZV09MSxBb1tGLkQuT2FdPTEsQW9bRi5ELlFwXT0xLEFvW0YuRC5QZl09MSxBb1tGLkQuRmldPTEsQW9bRi5ELnBoXT0xLEFvW0YuRC5XY109MSxBb1tGLkQuUWZdPTEsQW9bRi5ELmFxXT0xLEFvW0YuRC5UYV09MSxBb1tGLkQuVWZdPTEsQW9bRi5ELmZxXT0xLEFvW0YuRC5PZF09MSxBb1tGLkQuUmxdPTEsQW9bRi5ELlljXT0xLEFvW0YuRC5aY109MSxBb1tGLkQuRGJdPTEsQW9bRi5ELmFtXT0xLEFvW0YuRC5XYl09MSxBb1tGLkQuVGRdPTEsQW9bRi5ELlhiXT0xLEFvW0YuRC5PaV09MSxBb1tGLkQuZGRdPTEsQW9bRi5ELnloXT0xLEFvW0YuRC5QaV09CjEsQW9bRi5ELlVkXT0xLEFvW0YuRC55Y109MSxBb1tGLkQuVmRdPTEsQW9bRi5ELmxtXT0xLEFvW0YuRC5XZF09MSxBb1tGLkQuZWRdPTEsQW9bRi5ELm9qXT0xLEFvKSk7T2JqZWN0LmZyZWV6ZShbRi5ELnphLEYuRC5VYSxGLkQuTWIsRi5ELnRiLEYuRC5OaSxGLkQuZmIsRi5ELkdpLEYuRC5NcF0pOwp2YXIgQ289e30sRG89T2JqZWN0LmZyZWV6ZSgoQ29bRi5ELnFwXT0xLENvW0YuRC5ycF09MSxDb1tGLkQudHBdPTEsQ29bRi5ELnVwXT0xLENvW0YuRC52cF09MSxDb1tGLkQuenBdPTEsQ29bRi5ELkFwXT0xLENvW0YuRC5CcF09MSxDb1tGLkQuRHBdPTEsQ29bRi5ELnlmXT0xLENvKSksRW89e30sRm89T2JqZWN0LmZyZWV6ZSgoRW9bRi5ELnZsXT0xLEVvW0YuRC53bF09MSxFb1tGLkQueGVdPTEsRW9bRi5ELnllXT0xLEVvW0YuRC54bF09MSxFb1tGLkQuQWRdPTEsRW9bRi5ELnplXT0xLEVvW0YuRC5vY109MSxFb1tGLkQuUWNdPTEsRW9bRi5ELnFjXT0xLEVvW0YuRC5JYl09MSxFb1tGLkQuQWVdPTEsRW9bRi5ELnJjXT0xLEVvW0YuRC55bF09MSxFbykpLEdvPU9iamVjdC5mcmVlemUoW0YuRC5SYyxGLkQuU2MsRi5ELkpkLEYuRC5RZixGLkQuV2YsRi5ELlRkLEYuRC5PaSxGLkQuVmRdKSxIbz1PYmplY3QuZnJlZXplKFtdLmNvbmNhdCh3KEdvKSkpLElvPU9iamVjdC5mcmVlemUoW0YuRC5DYiwKRi5ELnBoLEYuRC55aCxGLkQuUGksRi5ELm5oXSksSm89T2JqZWN0LmZyZWV6ZShbXS5jb25jYXQodyhJbykpKSxLbz17fSxMbz0oS29bRi5ELmthXT0iMSIsS29bRi5ELnJhXT0iMiIsS29bRi5ELm1hXT0iMyIsS29bRi5ELlhhXT0iNCIsS28pLE1vPXt9LE5vPU9iamVjdC5mcmVlemUoKE1vLnNlYXJjaD0icyIsTW8ueW91dHViZT0ieSIsTW8ucGxheXN0b3JlPSJwIixNby5zaG9wcGluZz0iaCIsTW8uYWRzPSJhIixNby5tYXBzPSJtIixNbykpO2Z1bmN0aW9uIE9vKGEpe3JldHVybiB0eXBlb2YgYSE9PSJvYmplY3QifHxhPT09bnVsbD97fTphfWZ1bmN0aW9uIFBvKGEpe3JldHVybiBhPT09dm9pZCAwfHxhPT09bnVsbD8iIjp0eXBlb2YgYT09PSJvYmplY3QiP2EudG9TdHJpbmcoKTpTdHJpbmcoYSl9ZnVuY3Rpb24gUW8oYSl7aWYoYSE9PXZvaWQgMCYmYSE9PW51bGwpcmV0dXJuIFBvKGEpfTt2YXIgUm89W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV07ZnVuY3Rpb24gU28oYSl7Zm9yKHZhciBiPW0oYVtGLkQubmNdfHxbIiJdKSxjPWIubmV4dCgpLGQ9e307IWMuZG9uZTtkPXtyZWdpb246dm9pZCAwfSxjPWIubmV4dCgpKWQucmVnaW9uPWMudmFsdWUsR2IoYSxmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oZixnKXtpZihmIT09Ri5ELm5jKXt2YXIgaD1QbyhnKSxsPWUucmVnaW9uLG49eW0oKSxwPXptKCk7eWw9ITA7eGwmJnNiKCJUQUdHSU5HIiwyMCk7dGwoKS5kZWNsYXJlKGYsaCxsLG4scCl9fX0oZCkpfQpmdW5jdGlvbiBUbyhhKXt5bygpO3ZhciBiPWFsKDE3LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSxjPWFsKDE2LGZ1bmN0aW9uKCl7cmV0dXJuITF9KTshYiYmYyYmeG8oImNyYyIpO1prKDE3LCEwKTt2YXIgZD1hW0YuRC5ZZ107ZCYmUCg0MSk7dmFyIGU9YVtGLkQubmNdO2U/UCg0MCk6ZT1bIiJdO2Zvcih2YXIgZj1tKGUpLGc9Zi5uZXh0KCksaD17fTshZy5kb25lO2g9e0JvOnZvaWQgMH0sZz1mLm5leHQoKSloLkJvPWcudmFsdWUsR2IoYSxmdW5jdGlvbihsKXtyZXR1cm4gZnVuY3Rpb24obixwKXtpZihuIT09Ri5ELm5jJiZuIT09Ri5ELllnKXt2YXIgcT1RbyhwKSxyPWwuQm8sdD1OdW1iZXIoZCksdT15bSgpLHY9em0oKTt0PXQ9PT12b2lkIDA/MDp0O3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkuZGVmYXVsdChuLHEscix1LHYsdCxBbCl9fX0oaCkpfQpmdW5jdGlvbiBVbyhhKXtBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM9ITA7dmFyIGI9YVtGLkQubmNdO2lmKGIpe3ZhciBjPUFycmF5LmlzQXJyYXkoYik/YjpbYl07aWYoIWMuaW5jbHVkZXMoem0oKSkmJiFjLmluY2x1ZGVzKHltKCkpKXJldHVybn1HYihhLGZ1bmN0aW9uKGQsZSl7c3dpdGNoKGQpe2Nhc2UgImFkX3N0b3JhZ2UiOmNhc2UgImFuYWx5dGljc19zdG9yYWdlIjpjYXNlICJhZF91c2VyX2RhdGEiOmNhc2UgImFkX3BlcnNvbmFsaXphdGlvbiI6YnJlYWs7ZGVmYXVsdDpyZXR1cm59QWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzPSEwO0FsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2RdPWU9PT0iZ3JhbnRlZCI/MzoyfSl9CmZ1bmN0aW9uIFZvKGEsYil7eW8oKTtaaygxNiwhMCk7R2IoYSxmdW5jdGlvbihjLGQpe3ZhciBlPVBvKGQpO3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkudXBkYXRlKGMsZSxBbCl9KTtHbChiLmV2ZW50SWQsYi5wcmlvcml0eUlkKX1mdW5jdGlvbiBXbyhhKXthLmhhc093blByb3BlcnR5KCJhbGwiKSYmKEFsLnNlbGVjdGVkQWxsQ29yZVBsYXRmb3JtU2VydmljZXM9ITAsR2IoTm8sZnVuY3Rpb24oYil7QWwuY29yZVBsYXRmb3JtU2VydmljZXNbYl09YS5hbGw9PT0iZ3JhbnRlZCI7QWwudXNlZENvcmVQbGF0Zm9ybVNlcnZpY2VzPSEwfSkpO0diKGEsZnVuY3Rpb24oYixjKXtiIT09ImFsbCImJihBbC5jb3JlUGxhdGZvcm1TZXJ2aWNlc1tiXT1jPT09ImdyYW50ZWQiLEFsLnVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlcz0hMCl9KX0KZnVuY3Rpb24gWG8oYSl7QXJyYXkuaXNBcnJheShhKXx8KGE9W2FdKTtyZXR1cm4gYS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiBZbygpe3ZhciBhPVpvO0FycmF5LmlzQXJyYXkoYSl8fChhPVthXSk7cmV0dXJuIGEuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiAkbyhhLGIpe0ZsKGEsYil9ZnVuY3Rpb24gYXAoYSxiKXtJbChhLGIpfWZ1bmN0aW9uIGJwKGEsYil7SGwoYSxiKX1mdW5jdGlvbiBjcCgpe3ZhciBhPVtGLkQua2EsRi5ELlhhLEYuRC5tYV07dGwoKS53YWl0Rm9yVXBkYXRlKGEsNTAwLEFsKX1mdW5jdGlvbiBkcChhKXtmb3IodmFyIGI9bShhKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTt0bCgpLmNsZWFyVGltZW91dChkLHZvaWQgMCxBbCl9R2woKX0KZnVuY3Rpb24gZXAoYSl7Zm9yKHZhciBiPXt9LGM9bShhLnNwbGl0KCJ8IikpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKWJbZC52YWx1ZV09ITA7cmV0dXJuIGJ9O3ZhciBmcD1PYmplY3QuZnJlZXplKFtGLkQua2EsRi5ELm1hXSk7CnZhciBocD1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz1tKE9iamVjdC5rZXlzKGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtiW2dwW2VdfHxlXT1hW2VdfXJldHVybiBifSxpcD1mdW5jdGlvbihhKXtyZXR1cm4hIVEoYSxILkoudmQpJiZSKGEsRi5ELlBkKT09PSIxIiYmUihhLEYuRC5IZCkhPT0iMSImJlhvKGZwKX0sanA9ZnVuY3Rpb24oYSxiKXtpZighaXAoYSkpcmV0dXJuITE7dmFyIGM9UWMoKXx8T2MoKT81ODo1NyxkPU5tKGMsaHAoYikpO1RsKGQsYSxjKTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxkKyImZm10PTgiLHZvaWQgMCx7UWc6ITAsbWV0aG9kOiJHRVQifSxmdW5jdGlvbigpe30sZnVuY3Rpb24oKXtaYyhkKyImZm10PTMiKX0pO3JldHVybiEwfSxrcD17fSxncD0oa3AuZGw9InVybCIsa3AuZHI9CiJyZWYiLGtwLnVpZD0idXNlcklkIixrcCk7dmFyIGxwPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZD1mdW5jdGlvbihlKXtiW2VdIT1udWxsJiZiW2VdIT09IiImJihjW2VdPWJbZV0pfTtNKDQ3NCkmJmQoIl9nc2lkIik7UihhLEYuRC5IZCkhPT0iMSImJihkKCJnY2xpZCIpLGQoImdjbHNyYyIpLGQoImF1aWQiKSxkKCJkY2xpZCIpKTtpZihPYmplY3Qua2V5cyhjKS5sZW5ndGgpcmV0dXJuIGQoImd0bSIpLGN9Owp2YXIgbXA9e30sbnA9KG1wW0YuRC5zYV09ImdjdSIsbXBbRi5ELlNiXT0iZ2NsZ2IiLG1wW0YuRC5sYl09ImdjbGF3IixtcFtGLkQuemZdPSJnYWRfc291cmNlIixtcFtGLkQuQWZdPSJnYWRfc291cmNlX3NyYyIsbXBbRi5ELkRkXT0iZ2NsaWQiLG1wW0YuRC5BbF09ImdjbHNyYyIsbXBbRi5ELkJmXT0iZ2JyYWlkIixtcFtGLkQuRWVdPSJ3YnJhaWQiLG1wW0YuRC5FZF09ImF1aWQiLG1wW0YuRC5CbF09ImFlIixtcFtGLkQuSGFdPW51bGwsbXBbRi5ELkRsXT0icm5kIixtcFtGLkQuSGRdPSJuY2wiLG1wW0YuRC5OZl09ImdjbGRjIixtcFtGLkQuS2RdPSJkY2xpZCIsbXBbRi5ELlZjXT0iZWRpZCIsbXBbRi5ELlViXT0iZW4iLG1wW0YuRC5LZV09ImdkcHIiLG1wW0YuRC5YY109ImdkaWQiLG1wW0YuRC5UYV09bnVsbCxtcFtGLkQuTGVdPSJfbmciLG1wW0YuRC50aF09ImdwcF9zaWQiLG1wW0YuRC51aF09ImdwcCIsbXBbRi5ELlZmXT0iX3R1IixtcFtGLkQuUWxdPSJndG1fdXAiLG1wW0YuRC5NZV09CiJmcm0iLG1wW0YuRC5QZF09ImxwcyIsbXBbRi5ELkxpXT0iZGlkIixtcFtGLkQuVWxdPSJuYXZ0IixtcFtGLkQuemFdPSJkbCIsbXBbRi5ELlVhXT0iZHIiLG1wW0YuRC5NYl09ImR0IixtcFtGLkQuYm1dPSJzY3JzcmMiLG1wW0YuRC5aZl09ImdhX3VpZCIsbXBbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IixtcFtGLkQuUWldPSJ0ZXN0b25seSIsbXBbRi5ELnJxXT0idV90eiIsbXBbRi5ELlBlXT0idG9wIixtcFtGLkQuUWVdPSJ0aWQiLG1wW0YuRC5mYl09InVpZCIsbXBbRi5ELmtnXT0idXNfcHJpdmFjeSIsbXBbRi5ELmVkXT1udWxsLG1wW0YuRC5kZV09Im5wYSIsbXApO2Z1bmN0aW9uIG9wKGEsYil7aWYoYiE9bnVsbCYmYiE9PSIiKXt2YXIgYz1iPT09ITA/IjEiOmI9PT0hMT8iMCI6ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiKSk7aWYoU2IoYSwiXyYiKSlyZXR1cm57a2V5OmEuc3Vic3RyaW5nKDIpLHZhbHVlOmN9O3ZhciBkPW5wW2FdO2lmKGQhPT1udWxsKXJldHVybiBkP3trZXk6ZCx2YWx1ZTpjfTp7a2V5OkFiKGIpPyJlcG4uIithOiJlcC4iK2EsdmFsdWU6Y319fTtmdW5jdGlvbiBwcChhKXthPWE9PT12b2lkIDA/W106YTtyZXR1cm4geGooYSkuam9pbigifiIpfTtmdW5jdGlvbiBxcCgpe3ZhciBhPVtdLGI9TnVtYmVyKCcnKXx8MCxjPU51bWJlcignJyl8fDA7Y3x8KGM9Yi8xMDApO3ZhciBkPWZ1bmN0aW9uKCl7dmFyIHQ9ITE7cmV0dXJuIHR9KCk7YS5wdXNoKHt1azoyMjgsc3R1ZHlJZDoyMjgsZXhwZXJpbWVudElkOjEwNTE3NzE1NCxjb250cm9sSWQ6MTA1MTc3MTU1LGNvbnRyb2xJZDI6MTA1MjU1MjQ1LHByb2JhYmlsaXR5OmMsYWN0aXZlOmQsWmU6MH0pO3ZhciBlPU51bWJlcignJyl8fAowLGY9TnVtYmVyKCcnKXx8MDtmfHwoZj1lLzEwMCk7dmFyIGc9ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjIzNSxzdHVkeUlkOjIzNSxleHBlcmltZW50SWQ6MTA1MzU3MTUwLGNvbnRyb2xJZDoxMDUzNTcxNTEsY29udHJvbElkMjowLHByb2JhYmlsaXR5OmYsYWN0aXZlOmcsWmU6MX0pO3ZhciBoPU51bWJlcignJyl8fDAsbD1OdW1iZXIoJycpfHwKMDtsfHwobD1oLzEwMCk7dmFyIG49ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjI2NixzdHVkeUlkOjI2NixleHBlcmltZW50SWQ6MTE1NzE4NTI5LGNvbnRyb2xJZDoxMTU3MTg1MzAsY29udHJvbElkMjoxMTU3MTg1MzEscHJvYmFiaWxpdHk6bCxhY3RpdmU6bixaZTowfSk7dmFyIHA9TnVtYmVyKCcnKXx8MCxxPU51bWJlcignJyl8fAowO3F8fChxPXAvMTAwKTt2YXIgcj1mdW5jdGlvbigpe3ZhciB0PSExO3JldHVybiB0fSgpO2EucHVzaCh7dWs6MjY3LHN0dWR5SWQ6MjY3LGV4cGVyaW1lbnRJZDoxMTU3MTg1MjYsY29udHJvbElkOjExNTcxODUyNyxjb250cm9sSWQyOjExNTcxODUyOCxwcm9iYWJpbGl0eTpxLGFjdGl2ZTpyLFplOjB9KTtyZXR1cm4gYX07dmFyIHJwPWZ1bmN0aW9uKCl7dGhpcy5LPXt9O3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5SPW5ldyBTZXR9LHhwPWZ1bmN0aW9uKGEsYil7dmFyIGM9YixkPWI9YS5OW2Muc3R1ZHlJZF0/bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHthY3RpdmU6ITB9KTpjLGU9Rmk7ZC5jb250cm9sSWQyJiZkLnByb2JhYmlsaXR5PD0uMjV8fChkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZCx7Y29udHJvbElkMjowfSkpO2Uuc3R1ZGllc1tkLnN0dWR5SWRdPWQ7Yi5mb2N1c2VkJiYoYS5LW2Iuc3R1ZHlJZF09ITApO2lmKGIuWmU9PT0xKXt2YXIgZj1iLnN0dWR5SWQ7c3AoYSx0cCgpLGYpO3VwKGEsZik/dGoodWosZik6dnAoYSxmKT91ai5LW2ZdPSEwOndwKGEsZikmJih1ai5IW2ZdPSEwKX1lbHNlIGlmKGIuWmU9PT0wKXt2YXIgZz1iLnN0dWR5SWQ7c3AoYSxhLkgsZyk7dXAoYSxnKT90aih1aixnKTp2cChhLGcpP3VqLktbZ109ITA6d3AoYSxnKSYmCih1ai5IW2ddPSEwKX19LHNwPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPUZpO2lmKGUuc3R1ZGllc1tjXSl7dmFyIGY9ZS5zdHVkaWVzW2NdLGc9Zi5leHBlcmltZW50SWQsaD1mLnByb2JhYmlsaXR5O2lmKCEoYi5zdHVkaWVzfHx7fSlbY10pe3ZhciBsPWIuc3R1ZGllc3x8e307bFtjXT0hMDtiLnN0dWRpZXM9bDtpZighZS5zdHVkaWVzW2NdLmFjdGl2ZSlpZihlLnN0dWRpZXNbY10ucHJvYmFiaWxpdHk+LjUpSWkoYixnLGMpO2Vsc2UgaWYoIShoPD0wfHxoPjEpKXt2YXIgbj12b2lkIDA7aWYoZCl7dmFyIHA9Q2koZCsifiIrYyk7aWYocD09PSJlMiIpbj0tMTtlbHNle2Zvcih2YXIgcT1uZXcgVWludDhBcnJheShwKSxyPUJpZ0ludCgwKSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpcj1yPDxCaWdJbnQoOCl8QmlnSW50KHUudmFsdWUpO249TnVtYmVyKHIlQmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSl9fUdpLnNrKGIsYyxuKX19fWlmKCFhLktbY10pe3ZhciB2PQpOaShiLGMpO3YmJndqLkguSy5hZGQodil9fSx0cD1mdW5jdGlvbigpe3JldHVybiBvbShqbS5iYS5UcSx7fSl9LHVwPWZ1bmN0aW9uKGEsYil7dmFyIGM9dHAoKTtyZXR1cm4gS2koYyxiKXx8S2koYS5ILGIpfSx2cD1mdW5jdGlvbihhLGIpe3ZhciBjPXRwKCk7cmV0dXJuIExpKGMsYil8fExpKGEuSCxiKX0sd3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz10cCgpO3JldHVybiBNaShjLGIpfHxNaShhLkgsYil9LHlwOwpmdW5jdGlvbiB6cCgpe2lmKCF5cCl7dmFyIGE9eXA9bmV3IHJwLGIsYyxkPSgoYj1BKT09bnVsbD92b2lkIDA6KGM9Yi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmMuaGFzaCl8fCIiO2lmKGRbMF09PT0iIyImJmRbMV09PT0iXyImJmRbMl09PT0idCImJmRbM109PT0iZSImJmRbNF09PT0iPSIpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO2lmKGUpZm9yKHZhciBmPW0oZS5zcGxpdCgifiIpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9TnVtYmVyKGcudmFsdWUpO2gmJihhLk5baF09ITAsdGoodWosaCkpfX1mb3IodmFyIGw9bShxcCgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl4cChhLG4udmFsdWUpO2Zvcih2YXIgcD1bXSxxPW0oTWYoNTYpfHxbXSkscj1xLm5leHQoKTshci5kb25lO3I9cS5uZXh0KCkpe3ZhciB0PXIudmFsdWUsdT17c3R1ZHlJZDp0WzFdLGFjdGl2ZTohIXRbMl0scHJvYmFiaWxpdHk6dFszXXx8MCxleHBlcmltZW50SWQ6dFs0XXx8CjAsY29udHJvbElkOnRbNV18fDAsY29udHJvbElkMjp0WzZdfHwwfSx2PTA7c3dpdGNoKHRbN10pe2Nhc2UgMjp2PTE7YnJlYWs7Y2FzZSAzOnY9MjticmVhaztjYXNlIDE6Y2FzZSA0OmNhc2UgNTpjYXNlIDA6dj0wfXZhciB4O2E6c3dpdGNoKHUuc3R1ZHlJZCl7Y2FzZSA1Njc6Y2FzZSA0NjI6eD0hMDticmVhayBhO2RlZmF1bHQ6eD0hMX12YXIgeT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHUse1plOnYsZm9jdXNlZDp4fSk7KHkuYWN0aXZlfHx5LnByb2JhYmlsaXR5Pi41JiZ5LmV4cGVyaW1lbnRJZHx8eS5leHBlcmltZW50SWQmJnkuY29udHJvbElkKSYmcC5wdXNoKHkpfWZvcih2YXIgej1tKHApLEM9ei5uZXh0KCk7IUMuZG9uZTtDPXoubmV4dCgpKXhwKGEsQy52YWx1ZSl9fQpmdW5jdGlvbiBBcChhLGIpe3pwKCk7dmFyIGM9eXA7c3AoYyx0cCgpLGEsYik7dXAoYyxhKT90aih1aixhKTp2cChjLGEpP3VqLktbYV09ITA6d3AoYyxhKSYmKHVqLkhbYV09ITApfWZ1bmN0aW9uIEJwKCl7enAoKTt2YXIgYT15cCxiPXVwKGEsNTY3KTtpZihhLktbNTY3XSl7dmFyIGMsZD10cCgpOyhjPU5pKGQsNTY3KXx8TmkoYS5ILDU2NykpJiZhLlIuYWRkKGMpfXJldHVybiBifWZ1bmN0aW9uIENwKGEpe3pwKCk7dmFyIGI9bmV3IFNldCh5cC5SKTtpZihhKWZvcih2YXIgYz1RKGEsSC5KLkNoKXx8W10sZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWIuYWRkKGUudmFsdWUpO3JldHVybiBwcChbXS5jb25jYXQodyhiKSkpfTtmdW5jdGlvbiBEcChhKXt2YXIgYj1hLmxvY2F0aW9uLmhyZWY7aWYoYT09PWEudG9wKXJldHVybnt1cmw6YixJczohMH07dmFyIGM9ITEsZD1hLmRvY3VtZW50O2QmJmQucmVmZXJyZXImJihiPWQucmVmZXJyZXIsYS5wYXJlbnQ9PT1hLnRvcCYmKGM9ITApKTt2YXIgZT1hLmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucztpZihlKXt2YXIgZj1lW2UubGVuZ3RoLTFdLGc7ZiYmKChnPWIpPT1udWxsP3ZvaWQgMDpnLmluZGV4T2YoZikpPT09LTEmJihjPSExLGI9Zil9cmV0dXJue3VybDpiLElzOmN9fWZ1bmN0aW9uIEVwKGEpe3RyeXt2YXIgYjtpZihiPSEhYSYmYS5sb2NhdGlvbi5ocmVmIT1udWxsKWE6e3RyeXtIbihhLmZvbyk7Yj0hMDticmVhayBhfWNhdGNoKGMpe31iPSExfXJldHVybiBifWNhdGNoKGMpe3JldHVybiExfX1mdW5jdGlvbiBGcCgpe2Zvcih2YXIgYT1BLGI9YTthJiZhIT09YS5wYXJlbnQ7KWE9YS5wYXJlbnQsRXAoYSkmJihiPWEpO3JldHVybiBifTt2YXIgR3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdW5jdGlvbigpe307Yy5wcm90b3R5cGU9YS5wcm90b3R5cGU7dmFyIGQ9bmV3IGM7YS5hcHBseShkLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSk7cmV0dXJuIGR9LEhwPWZ1bmN0aW9uKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPW51bGw7YygpfX19O2Z1bmN0aW9uIElwKGEsYil7aWYoYSlmb3IodmFyIGMgaW4gYSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxjKSYmYihhW2NdLGMsYSl9O2Z1bmN0aW9uIEpwKGEpe3ZhciBiPWEuc3BsaXQoL1s/I10vKSxjPS9bP10vLnRlc3QoYSk/Ij8iK2JbMV06IiI7cmV0dXJue3prOmJbMF0scGFyYW1zOmMsZnJhZ21lbnQ6L1sjXS8udGVzdChhKT8iIyIrKGM/YlsyXTpiWzFdKToiIn19ZnVuY3Rpb24gS3AoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKGIubGVuZ3RoPT09MClyZXR1cm4gamMoYVswXSk7Zm9yKHZhciBjPWFbMF0sZD0wO2Q8Yi5sZW5ndGg7ZCsrKWMrPWVuY29kZVVSSUNvbXBvbmVudChiW2RdKSthW2QrMV07cmV0dXJuIGpjKGMpfQpmdW5jdGlvbiBMcChhLGIsYyxkKXtmdW5jdGlvbiBlKGcsaCl7ZyE9bnVsbCYmKEFycmF5LmlzQXJyYXkoZyk/Zy5mb3JFYWNoKGZ1bmN0aW9uKGwpe3JldHVybiBlKGwsaCl9KTooYis9ZitlbmNvZGVVUklDb21wb25lbnQoaCkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChnKSxmPSImIikpfXZhciBmPWIubGVuZ3RoPyImIjoiPyI7ZC5jb25zdHJ1Y3Rvcj09PU9iamVjdCYmKGQ9T2JqZWN0LmVudHJpZXMoZCkpO0FycmF5LmlzQXJyYXkoZCk/ZC5mb3JFYWNoKGZ1bmN0aW9uKGcpe3JldHVybiBlKGdbMV0sZ1swXSl9KTpkLmZvckVhY2goZSk7cmV0dXJuIGpjKGErYitjKX1mdW5jdGlvbiBNcChhLGIpe3ZhciBjPUpwKGtjKGEpLnRvU3RyaW5nKCkpLGQ9Yy56ay5zbGljZSgtMSk9PT0iLyI/IiI6Ii8iLGU9Yy56aytkK2VuY29kZVVSSUNvbXBvbmVudChiKTtyZXR1cm4gamMoZStjLnBhcmFtcytjLmZyYWdtZW50KX07dmFyIE5wPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEsZD0wO2Q8NTA7KytkKXt2YXIgZTt0cnl7ZT0hKCFjLmZyYW1lc3x8IWMuZnJhbWVzW2JdKX1jYXRjaChoKXtlPSExfWlmKGUpcmV0dXJuIGM7dmFyIGY7YTp7dHJ5e3ZhciBnPWMucGFyZW50O2lmKGcmJmchPT1jKXtmPWc7YnJlYWsgYX19Y2F0Y2goaCl7fWY9bnVsbH1pZighKGM9ZikpYnJlYWt9cmV0dXJuIG51bGx9LE9wPWZ1bmN0aW9uKGEpe3ZhciBiPUE7aWYoYi50b3A9PWIpcmV0dXJuIDA7aWYoYT09PXZvaWQgMD8wOmEpe3ZhciBjPWIubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zO2lmKGMpcmV0dXJuIGNbYy5sZW5ndGgtMV09PWIubG9jYXRpb24ub3JpZ2luPzE6Mn1yZXR1cm4gRXAoYi50b3ApPzE6Mn0sUHA9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2RvY3VtZW50OmE7cmV0dXJuIGEuY3JlYXRlRWxlbWVudCgiaW1nIil9O2Z1bmN0aW9uIFFwKGEpe2Zvcih2YXIgYj1bXSxjPUIuY29va2llLnNwbGl0KCI7IiksZD1uZXcgUmVnRXhwKCJeXFxzKiIrKGF8fCJfZ2FjIikrIl8oVUEtXFxkKy1cXGQrKT1cXHMqKC4rPylcXHMqJCIpLGU9MDtlPGMubGVuZ3RoO2UrKyl7dmFyIGY9Y1tlXS5tYXRjaChkKTtmJiZiLnB1c2goe3VkOmZbMV0sdmFsdWU6ZlsyXSx0aW1lc3RhbXA6TnVtYmVyKGZbMl0uc3BsaXQoIi4iKVsxXSl8fDB9KX1iLnNvcnQoZnVuY3Rpb24oZyxoKXtyZXR1cm4gaC50aW1lc3RhbXAtZy50aW1lc3RhbXB9KTtyZXR1cm4gYn0KZnVuY3Rpb24gUnAoYSxiKXt2YXIgYz1RcChhKSxkPXt9O2lmKCFjfHwhYy5sZW5ndGgpcmV0dXJuIGQ7Zm9yKHZhciBlPTA7ZTxjLmxlbmd0aDtlKyspe3ZhciBmPWNbZV0udmFsdWUuc3BsaXQoIi4iKTtpZighKGZbMF0hPT0iMSJ8fGImJmYubGVuZ3RoPDN8fCFiJiZmLmxlbmd0aCE9PTMpJiZOdW1iZXIoZlsxXSkpe2RbY1tlXS51ZF18fChkW2NbZV0udWRdPVtdKTt2YXIgZz17dmVyc2lvbjpmWzBdLHRpbWVzdGFtcDpOdW1iZXIoZlsxXSkqMUUzLGdjbGlkOmZbMl19O2ImJmYubGVuZ3RoPjMmJihnLmxhYmVscz1mLnNsaWNlKDMpKTtkW2NbZV0udWRdLnB1c2goZyl9fXJldHVybiBkfTtmdW5jdGlvbiBTcChhKXtyZXR1cm4gYS5vcmlnaW4hPT0ibnVsbCJ9O3ZhciBUcD17fSxVcD0oVHAuaz17bmE6L15bXHctXSskL30sVHAuYj17bmE6L15bXHctXSskLyxuazohMH0sVHAuaT17bmE6L15bMS05XVxkKiQvfSxUcC5oPXtuYTovXlxkKyQvfSxUcC50PXtuYTovXlsxLTldXGQqJC99LFRwLmQ9e25hOi9eW0EtWmEtejAtOV8tXSskL30sVHAuaj17bmE6L15cZCskL30sVHAudT17bmE6L15bMS05XVxkKiQvfSxUcC5sPXtuYTovXlswMV0kL30sVHAubz17bmE6L15bMS05XVxkKiQvfSxUcC5nPXtuYTovXlswMV0kL30sVHAucz17bmE6L14uKyQvfSxUcC5tPXtuYTovXlswMV0kL30sVHApO3ZhciBWcD17fSxacD0oVnBbNV09e2ppOnsyOldwfSxaajoiMiIsUmg6WyJrIiwiaSIsImIiLCJ1Il19LFZwWzRdPXtqaTp7MjpXcCxHQ0w6WHB9LFpqOiIyIixSaDpbImsiLCJpIiwiYiIsIm0iXX0sVnBbMl09e2ppOntHUzI6V3AsR1MxOllwfSxaajoiR1MyIixSaDoic29ndGpsaGQiLnNwbGl0KCIiKX0sVnApO2Z1bmN0aW9uICRwKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXt2YXIgZT1hLnNwbGl0KCIuIilbMF07Yz09bnVsbHx8YyhlKTtpZihlKXt2YXIgZj1kLmppW2VdO2lmKGYpcmV0dXJuIGYoYSxiKX19fQpmdW5jdGlvbiBXcChhLGIpe3ZhciBjPWEuc3BsaXQoIi4iKTtpZihjLmxlbmd0aD09PTMpe3ZhciBkPWNbMl07aWYoZC5pbmRleE9mKCIkIik9PT0tMSYmZC5pbmRleE9mKCIlMjQiKSE9PS0xKXRyeXtkPWRlY29kZVVSSUNvbXBvbmVudChkKX1jYXRjaCh0KXt9dmFyIGU9e30sZj1acFtiXTtpZihmKXtmb3IodmFyIGc9Zi5SaCxoPW0oZC5zcGxpdCgiJCIpKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSl7dmFyIG49bC52YWx1ZSxwPW5bMF07aWYoZy5pbmRleE9mKHApIT09LTEpdHJ5e3ZhciBxPWRlY29kZVVSSUNvbXBvbmVudChuLnN1YnN0cmluZygxKSkscj1VcFtwXTtyJiYoci5uaz8oZVtwXT1lW3BdfHxbXSxlW3BdLnB1c2gocSkpOmVbcF09cSl9Y2F0Y2godCl7fX1yZXR1cm4gZX19fWZ1bmN0aW9uIGFxKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXJldHVybltkLlpqLGN8fCIxIixicShhLGIpXS5qb2luKCIuIil9CmZ1bmN0aW9uIGJxKGEsYil7dmFyIGM9WnBbYl07aWYoYyl7Zm9yKHZhciBkPVtdLGU9bShjLlJoKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPVVwW2ddO2lmKGgpe3ZhciBsPWFbZ107aWYobCE9PXZvaWQgMClpZihoLm5rJiZBcnJheS5pc0FycmF5KGwpKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKWQucHVzaChlbmNvZGVVUklDb21wb25lbnQoIiIrZytwLnZhbHVlKSk7ZWxzZSBkLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCIiK2crbCkpfX1yZXR1cm4gZC5qb2luKCIkIil9fWZ1bmN0aW9uIFhwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKTtiLnNoaWZ0KCk7dmFyIGM9Yi5zaGlmdCgpLGQ9Yi5zaGlmdCgpLGU9e307cmV0dXJuIGUuaz1kLGUuaT1jLGUuYj1iLGV9CmZ1bmN0aW9uIFlwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKS5zbGljZSgyKTtpZighKGIubGVuZ3RoPDV8fGIubGVuZ3RoPjcpKXt2YXIgYz17fTtyZXR1cm4gYy5zPWJbMF0sYy5vPWJbMV0sYy5nPWJbMl0sYy50PWJbM10sYy5qPWJbNF0sYy5sPWJbNV0sYy5oPWJbNl0sY319O2Z1bmN0aW9uIGNxKGEsYixjLGQpe3ZhciBlO3JldHVybihlPWRxKGZ1bmN0aW9uKGYpe3JldHVybiBmPT09YX0sYixjLGQpW2FdKSE9bnVsbD9lOltdfWZ1bmN0aW9uIGRxKGEsYixjLGQpe3ZhciBlO2lmKGVxKGQpKXtmb3IodmFyIGY9e30sZz1TdHJpbmcoYnx8ZnEoKSkuc3BsaXQoIjsiKSxoPTA7aDxnLmxlbmd0aDtoKyspe3ZhciBsPWdbaF0uc3BsaXQoIj0iKSxuPWxbMF0udHJpbSgpO2lmKG4mJmEobikpe3ZhciBwPWwuc2xpY2UoMSkuam9pbigiPSIpLnRyaW0oKTtwJiZjJiYocD1kZWNvZGVVUklDb21wb25lbnQocCkpO3ZhciBxPXZvaWQgMCxyPXZvaWQgMDsoKHE9Zilbcj1uXXx8KHFbcl09W10pKS5wdXNoKHApfX1lPWZ9ZWxzZSBlPXt9O3JldHVybiBlfQpmdW5jdGlvbiBncShhLGIsYyxkLGUpe2lmKGVxKGUpKXt2YXIgZj1ocShhLGQsZSk7aWYoZi5sZW5ndGg9PT0xKXJldHVybiBmWzBdO2lmKGYubGVuZ3RoIT09MCl7Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLkpyfSxiKTtpZihmLmxlbmd0aD09PTEpcmV0dXJuIGZbMF07Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLldzfSxjKTtyZXR1cm4gZlswXX19fWZ1bmN0aW9uIGpxKGEsYixjLGQpe3ZhciBlPWZxKCksZj1BO1NwKGYpJiYoZi5kb2N1bWVudC5jb29raWU9YSk7dmFyIGc9ZnEoKTtyZXR1cm4gZSE9PWd8fGMhPT12b2lkIDAmJmNxKGIsZywhMSxkKS5pbmRleE9mKGMpPj0wfQpmdW5jdGlvbiBrcShhLGIsYyxkKXtmdW5jdGlvbiBlKHgseSx6KXtpZih6PT1udWxsKXJldHVybiBkZWxldGUgaFt5XSx4O2hbeV09ejtyZXR1cm4geCsiOyAiK3krIj0iK3p9ZnVuY3Rpb24gZih4LHkpe2lmKHk9PW51bGwpcmV0dXJuIHg7aFt5XT0hMDtyZXR1cm4geCsiOyAiK3l9aWYoIWVxKGMuTWMpKXJldHVybiAyO3ZhciBnO2I9PW51bGw/Zz1hKyI9ZGVsZXRlZDsgZXhwaXJlcz0iKyhuZXcgRGF0ZSgwKSkudG9VVENTdHJpbmcoKTooYy5lbmNvZGUmJihiPWVuY29kZVVSSUNvbXBvbmVudChiKSksYj1scShiKSxnPWErIj0iK2IpO3ZhciBoPXt9O2c9ZShnLCJwYXRoIixjLnBhdGgpO3ZhciBsO2MuZXhwaXJlcyBpbnN0YW5jZW9mIERhdGU/bD1jLmV4cGlyZXMudG9VVENTdHJpbmcoKTpjLmV4cGlyZXMhPW51bGwmJihsPSIiK2MuZXhwaXJlcyk7Zz1lKGcsImV4cGlyZXMiLGwpO2c9ZShnLCJtYXgtYWdlIixjLk9zKTtnPWUoZywic2FtZXNpdGUiLGMucnQpO2Muc2VjdXJlJiYKKGc9ZihnLCJzZWN1cmUiKSk7dmFyIG49Yy5kb21haW47aWYobiYmbi50b0xvd2VyQ2FzZSgpPT09ImF1dG8iKXtmb3IodmFyIHA9bXEoKSxxPXZvaWQgMCxyPSExLHQ9MDt0PHAubGVuZ3RoOysrdCl7dmFyIHU9cFt0XSE9PSJub25lIj9wW3RdOnZvaWQgMCx2PWUoZywiZG9tYWluIix1KTt2PWYodixjLmZsYWdzKTt0cnl7ZCYmZChhLGgpfWNhdGNoKHgpe3E9eDtjb250aW51ZX1yPSEwO2lmKCFucSh1LGMucGF0aCkmJmpxKHYsYSxiLGMuTWMpKXJldHVybiAwfWlmKHEmJiFyKXRocm93IHE7cmV0dXJuIDF9biYmbi50b0xvd2VyQ2FzZSgpIT09Im5vbmUiJiYoZz1lKGcsImRvbWFpbiIsbikpO2c9ZihnLGMuZmxhZ3MpO2QmJmQoYSxoKTtyZXR1cm4gbnEobixjLnBhdGgpPzE6anEoZyxhLGIsYy5NYyk/MDoxfWZ1bmN0aW9uIG9xKGEsYixjKXtjLnBhdGg9PW51bGwmJihjLnBhdGg9Ii8iKTtjLmRvbWFpbnx8KGMuZG9tYWluPSJhdXRvIik7cmV0dXJuIGtxKGEsYixjKX0KZnVuY3Rpb24gaXEoYSxiLGMpe2Zvcih2YXIgZD1bXSxlPVtdLGYsZz0wO2c8YS5sZW5ndGg7ZysrKXt2YXIgaD1hW2ddLGw9YihoKTtsPT09Yz9kLnB1c2goaCk6Zj09PXZvaWQgMHx8bDxmPyhlPVtoXSxmPWwpOmw9PT1mJiZlLnB1c2goaCl9cmV0dXJuIGQubGVuZ3RoPjA/ZDplfWZ1bmN0aW9uIGhxKGEsYixjKXtmb3IodmFyIGQ9W10sZT1jcShhLHZvaWQgMCx2b2lkIDAsYyksZj0wO2Y8ZS5sZW5ndGg7ZisrKXt2YXIgZz1lW2ZdLnNwbGl0KCIuIiksaD1nLnNoaWZ0KCk7aWYoIWJ8fCFofHxiLmluZGV4T2YoaCkhPT0tMSl7dmFyIGw9Zy5zaGlmdCgpO2lmKGwpe3ZhciBuPWwuc3BsaXQoIi0iKTtkLnB1c2goe0JyOmVbZl0sQ3I6Zy5qb2luKCIuIiksSnI6TnVtYmVyKG5bMF0pfHwxLFdzOk51bWJlcihuWzFdKXx8MX0pfX19cmV0dXJuIGR9ZnVuY3Rpb24gbHEoYSl7YSYmYS5sZW5ndGg+MTIwMCYmKGE9YS5zdWJzdHJpbmcoMCwxMjAwKSk7cmV0dXJuIGF9CnZhciBwcT0vXih3d3dcLik/Z29vZ2xlKFwuY29tPyk/KFwuW2Etel17Mn0pPyQvLHFxPS8oXnxcLilkb3VibGVjbGlja1wubmV0JC9pO2Z1bmN0aW9uIG5xKGEsYil7cmV0dXJuIGEhPT12b2lkIDAmJihxcS50ZXN0KEEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWUpfHxiPT09Ii8iJiZwcS50ZXN0KGEpKX1mdW5jdGlvbiBycShhKXtpZighYSlyZXR1cm4gMTt2YXIgYj1hO1lmKDQpJiZhPT09Im5vbmUiJiYoYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTtiPWIuaW5kZXhPZigiLiIpPT09MD9iLnN1YnN0cmluZygxKTpiO3JldHVybiBiLnNwbGl0KCIuIikubGVuZ3RofWZ1bmN0aW9uIHNxKGEpe2lmKCFhfHxhPT09Ii8iKXJldHVybiAxO2FbMF0hPT0iLyImJihhPSIvIithKTthW2EubGVuZ3RoLTFdIT09Ii8iJiYoYSs9Ii8iKTtyZXR1cm4gYS5zcGxpdCgiLyIpLmxlbmd0aC0xfQpmdW5jdGlvbiB0cShhLGIpe3ZhciBjPSIiK3JxKGEpLGQ9c3EoYik7ZD4xJiYoYys9Ii0iK2QpO3JldHVybiBjfQp2YXIgZnE9ZnVuY3Rpb24oKXt2YXIgYT1BO3JldHVybiBTcChhKT9hLmRvY3VtZW50LmNvb2tpZToiIn0sZXE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJllmKDUpPyhBcnJheS5pc0FycmF5KGEpP2E6W2FdKS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gRGwoYikmJkJsKGIpfSk6ITB9LG1xPWZ1bmN0aW9uKCl7dmFyIGE9W10sYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIik7aWYoYi5sZW5ndGg9PT00KXt2YXIgYz1iW2IubGVuZ3RoLTFdO2lmKE51bWJlcihjKS50b1N0cmluZygpPT09YylyZXR1cm5bIm5vbmUiXX1mb3IodmFyIGQ9Yi5sZW5ndGgtMjtkPj0wO2QtLSlhLnB1c2goYi5zbGljZShkKS5qb2luKCIuIikpO3ZhciBlPUEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWU7cXEudGVzdChlKXx8cHEudGVzdChlKXx8YS5wdXNoKCJub25lIik7cmV0dXJuIGF9O2Z1bmN0aW9uIHVxKGEsYixjLGQpe3ZhciBlLGY9TnVtYmVyKGEucGQhPW51bGw/YS5wZDp2b2lkIDApO2YhPT0wJiYoZT1uZXcgRGF0ZSgoYnx8TmIoKSkrMUUzKihmfHw3Nzc2RTMpKSk7cmV0dXJue3BhdGg6YS5wYXRoLGRvbWFpbjphLmRvbWFpbixmbGFnczphLmZsYWdzLGVuY29kZTohIWMsZXhwaXJlczplLE1jOmR9fTt2YXIgdnE9bmV3IE1hcChbWzUsImFkX3N0b3JhZ2UiXSxbNCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXV0sWzIsImFuYWx5dGljc19zdG9yYWdlIl1dKTtmdW5jdGlvbiB3cShhLGIsYyl7aWYoWnBbYl0pe2Zvcih2YXIgZD1bXSxlPWNxKGEsdm9pZCAwLHZvaWQgMCx2cS5nZXQoYikpLGY9bShlKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9JHAoZy52YWx1ZSxiLGMpO2gmJmQucHVzaCh4cShoKSl9cmV0dXJuIGR9fQpmdW5jdGlvbiB5cShhKXt2YXIgYj16cTtpZihacFsyXSl7Zm9yKHZhciBjPXt9LGQ9ZHEoYSx2b2lkIDAsdm9pZCAwLHZxLmdldCgyKSksZT1PYmplY3Qua2V5cyhkKS5zb3J0KCksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWZvcih2YXIgaD1nLnZhbHVlLGw9bShkW2hdKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9JHAobi52YWx1ZSwyLGIpO3AmJihjW2hdfHwoY1toXT1bXSksY1toXS5wdXNoKHhxKHApKSl9cmV0dXJuIGN9fWZ1bmN0aW9uIEFxKGEsYixjLGQsZSl7ZD1kfHx7fTt2YXIgZj10cShkLmRvbWFpbixkLnBhdGgpLGc9YXEoYixjLGYpO2lmKCFnKXJldHVybiAxO3ZhciBoPXVxKGQsZSx2b2lkIDAsdnEuZ2V0KGMpKTtyZXR1cm4gb3EoYSxnLGgpfWZ1bmN0aW9uIEJxKGEsYil7dmFyIGM9Yi5uYTtyZXR1cm4gdHlwZW9mIGM9PT0iZnVuY3Rpb24iP2MoYSk6Yy50ZXN0KGEpfQpmdW5jdGlvbiB4cShhKXtmb3IodmFyIGI9bShPYmplY3Qua2V5cyhhKSksYz1iLm5leHQoKSxkPXt9OyFjLmRvbmU7ZD17QWc6dm9pZCAwfSxjPWIubmV4dCgpKXt2YXIgZT1jLnZhbHVlLGY9YVtlXTtkLkFnPVVwW2VdO2QuQWc/ZC5BZy5uaz9hW2VdPUFycmF5LmlzQXJyYXkoZik/Zi5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIGZ1bmN0aW9uKGgpe3JldHVybiBCcShoLGcuQWcpfX0oZCkpOnZvaWQgMDp0eXBlb2YgZj09PSJzdHJpbmciJiZCcShmLGQuQWcpfHwoYVtlXT12b2lkIDApOmFbZV09dm9pZCAwfXJldHVybiBhfTt2YXIgQ3E7ZnVuY3Rpb24gRHEoKXtmdW5jdGlvbiBhKGcpe2MoZy50YXJnZXR8fGcuc3JjRWxlbWVudHx8e30pfWZ1bmN0aW9uIGIoZyl7ZChnLnRhcmdldHx8Zy5zcmNFbGVtZW50fHx7fSl9dmFyIGM9RXEsZD1GcSxlPUdxKCk7aWYoIWUuaW5pdCl7JGMoQiwibW91c2Vkb3duIixhKTskYyhCLCJrZXl1cCIsYSk7JGMoQiwic3VibWl0IixiKTt2YXIgZj1IVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdDtIVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdD1mdW5jdGlvbigpe2QodGhpcyk7Zi5jYWxsKHRoaXMpfTtlLmluaXQ9ITB9fWZ1bmN0aW9uIEhxKGEsYixjLGQsZSl7dmFyIGY9e2NhbGxiYWNrOmEsZG9tYWluczpiLGZyYWdtZW50OmM9PT0yLHBsYWNlbWVudDpjLGZvcm1zOmQsc2FtZUhvc3Q6ZX07R3EoKS5kZWNvcmF0b3JzLnB1c2goZil9CmZ1bmN0aW9uIElxKGEsYixjKXtmb3IodmFyIGQ9R3EoKS5kZWNvcmF0b3JzLGU9e30sZj0wO2Y8ZC5sZW5ndGg7KytmKXt2YXIgZz1kW2ZdLGg7aWYoaD0hY3x8Zy5mb3JtcylhOnt2YXIgbD1nLmRvbWFpbnMsbj1hLHA9ISFnLnNhbWVIb3N0O2lmKGwmJihwfHxuIT09Qi5sb2NhdGlvbi5ob3N0bmFtZSkpZm9yKHZhciBxPTA7cTxsLmxlbmd0aDtxKyspaWYobFtxXWluc3RhbmNlb2YgUmVnRXhwKXtpZihsW3FdLnRlc3Qobikpe2g9ITA7YnJlYWsgYX19ZWxzZSBpZihuLmluZGV4T2YobFtxXSk+PTB8fHAmJmxbcV0uaW5kZXhPZihuKT49MCl7aD0hMDticmVhayBhfWg9ITF9aWYoaCl7dmFyIHI9Zy5wbGFjZW1lbnQ7cj09PXZvaWQgMCYmKHI9Zy5mcmFnbWVudD8yOjEpO3I9PT1iJiZRYihlLGcuY2FsbGJhY2soKSl9fXJldHVybiBlfQpmdW5jdGlvbiBHcSgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSxiPWEuZ2w7YiYmYi5kZWNvcmF0b3JzfHwoYj17ZGVjb3JhdG9yczpbXX0sYS5nbD1iKTtyZXR1cm4gYn07dmFyIEpxPS8oLio/KVwqKC4qPylcKiguKikvLEtxPS9eaHR0cHM/OlwvXC8oW15cL10qPylcLj9jZG5cLmFtcHByb2plY3RcLm9yZ1wvPyguKikvLExxPS9eKD86d3d3XC58bVwufGFtcFwuKSsvLE1xPS8oW14/I10rKShcP1teI10qKT8oIy4qKT8vO2Z1bmN0aW9uIE5xKGEpe3ZhciBiPU1xLmV4ZWMoYSk7aWYoYilyZXR1cm57aGs6YlsxXSxxdWVyeTpiWzJdLGZyYWdtZW50OmJbM119fWZ1bmN0aW9uIE9xKGEpe3JldHVybiBuZXcgUmVnRXhwKCIoLio/KShefCYpIithKyI9KFteJl0qKSY/KC4qKSIpfQpmdW5jdGlvbiBQcShhLGIpe3ZhciBjPVtIYy51c2VyQWdlbnQsKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpLEhjLnVzZXJMYW5ndWFnZXx8SGMubGFuZ3VhZ2UsTWF0aC5mbG9vcihOYigpLzYwLzFFMyktKGI9PT12b2lkIDA/MDpiKSxhXS5qb2luKCIqIiksZDtpZighKGQ9Q3EpKXtmb3IodmFyIGU9QXJyYXkoMjU2KSxmPTA7ZjwyNTY7ZisrKXtmb3IodmFyIGc9ZixoPTA7aDw4O2grKylnPWcmMT9nPj4+MV4zOTg4MjkyMzg0Omc+Pj4xO2VbZl09Z31kPWV9Q3E9ZDtmb3IodmFyIGw9NDI5NDk2NzI5NSxuPTA7bjxjLmxlbmd0aDtuKyspbD1sPj4+OF5DcVsobF5jLmNoYXJDb2RlQXQobikpJjI1NV07cmV0dXJuKChsXi0xKT4+PjApLnRvU3RyaW5nKDM2KX0KZnVuY3Rpb24gUXEoYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBjPVJqKEEubG9jYXRpb24uaHJlZiksZD1jLnNlYXJjaC5yZXBsYWNlKCI/IiwiIiksZT1JaihkLCJfZ2wiLCExLCEwKXx8IiI7Yi5xdWVyeT1ScShlKXx8e307dmFyIGY9TGooYywiZnJhZ21lbnQiKSxnO3ZhciBoPS0xO2lmKFNiKGYsIl9nbD0iKSloPTQ7ZWxzZXt2YXIgbD1mLmluZGV4T2YoIiZfZ2w9Iik7bD4wJiYoaD1sKzMrMil9aWYoaDwwKWc9dm9pZCAwO2Vsc2V7dmFyIG49Zi5pbmRleE9mKCImIixoKTtnPW48MD9mLnN1YnN0cmluZyhoKTpmLnN1YnN0cmluZyhoLG4pfWIuZnJhZ21lbnQ9UnEoZ3x8IiIpfHx7fTthJiZTcShjLGQsZil9fWZ1bmN0aW9uIFRxKGEsYil7dmFyIGM9T3EoYSkuZXhlYyhiKSxkPWI7aWYoYyl7dmFyIGU9Y1syXSxmPWNbNF07ZD1jWzFdO2YmJihkPWQrZStmKX1yZXR1cm4gZH0KZnVuY3Rpb24gU3EoYSxiLGMpe2Z1bmN0aW9uIGQoZyxoKXt2YXIgbD1UcSgiX2dsIixnKTtsLmxlbmd0aCYmKGw9aCtsKTtyZXR1cm4gbH1pZihHYyYmR2MucmVwbGFjZVN0YXRlKXt2YXIgZT1PcSgiX2dsIik7aWYoZS50ZXN0KGIpfHxlLnRlc3QoYykpe3ZhciBmPUxqKGEsInBhdGgiKTtiPWQoYiwiPyIpO2M9ZChjLCIjIik7R2MucmVwbGFjZVN0YXRlKHt9LCIiLCIiK2YrYitjKX19fWZ1bmN0aW9uIFVxKGEsYil7dmFyIGM9UXEoISFiKSxkPUdxKCk7ZC5kYXRhfHwoZC5kYXRhPXtxdWVyeTp7fSxmcmFnbWVudDp7fX0sYyhkLmRhdGEpKTt2YXIgZT17fSxmPWQuZGF0YTtmJiYoUWIoZSxmLnF1ZXJ5KSxhJiZRYihlLGYuZnJhZ21lbnQpKTtyZXR1cm4gZX0KdmFyIFJxPWZ1bmN0aW9uKGEpe3RyeXt2YXIgYj1WcShhLDMpO2lmKGIhPT12b2lkIDApe2Zvcih2YXIgYz17fSxkPWI/Yi5zcGxpdCgiKiIpOltdLGU9MDtlKzE8ZC5sZW5ndGg7ZSs9Mil7dmFyIGY9ZFtlXSxnPXFiKGRbZSsxXSk7Y1tmXT1nfXNiKCJUQUdHSU5HIiw2KTtyZXR1cm4gY319Y2F0Y2goaCl7c2IoIlRBR0dJTkciLDgpfX07ZnVuY3Rpb24gVnEoYSxiKXtpZihhKXt2YXIgYzthOntmb3IodmFyIGQ9YSxlPTA7ZTwzOysrZSl7dmFyIGY9SnEuZXhlYyhkKTtpZihmKXtjPWY7YnJlYWsgYX1kPUtqKGQpfHwiIn1jPXZvaWQgMH12YXIgZz1jO2lmKGcmJmdbMV09PT0iMSIpe3ZhciBoPWdbM10sbDthOntmb3IodmFyIG49Z1syXSxwPTA7cDxiOysrcClpZihuPT09UHEoaCxwKSl7bD0hMDticmVhayBhfWw9ITF9aWYobClyZXR1cm4gaDtzYigiVEFHR0lORyIsNyl9fX0KZnVuY3Rpb24gV3EoYSxiLGMsZCxlKXtmdW5jdGlvbiBmKHApe3A9VHEoYSxwKTt2YXIgcT1wLmNoYXJBdChwLmxlbmd0aC0xKTtwJiZxIT09IiYiJiYocCs9IiYiKTtyZXR1cm4gcCtufWQ9ZD09PXZvaWQgMD8hMTpkO2U9ZT09PXZvaWQgMD8hMTplO3ZhciBnPU5xKGMpO2lmKCFnKXJldHVybiIiO3ZhciBoPWcucXVlcnl8fCIiLGw9Zy5mcmFnbWVudHx8IiIsbj1hKyI9IitiO2Q/bC5zdWJzdHJpbmcoMSkubGVuZ3RoIT09MCYmZXx8KGw9IiMiK2YobC5zdWJzdHJpbmcoMSkpKTpoPSI/IitmKGguc3Vic3RyaW5nKDEpKTtyZXR1cm4iIitnLmhrK2grbH0KZnVuY3Rpb24gWHEoYSxiKXtmdW5jdGlvbiBjKG4scCxxKXt2YXIgcjthOntmb3IodmFyIHQgaW4gbilpZihuLmhhc093blByb3BlcnR5KHQpKXtyPSEwO2JyZWFrIGF9cj0hMX1pZihyKXt2YXIgdSx2PVtdLHg7Zm9yKHggaW4gbilpZihuLmhhc093blByb3BlcnR5KHgpKXt2YXIgeT1uW3hdO3khPT12b2lkIDAmJnk9PT15JiZ5IT09bnVsbCYmeS50b1N0cmluZygpIT09IltvYmplY3QgT2JqZWN0XSImJih2LnB1c2goeCksdi5wdXNoKHBiKFN0cmluZyh5KSkpKX12YXIgej12LmpvaW4oIioiKTt1PVsiMSIsUHEoeiksel0uam9pbigiKiIpO2Q/KFlmKDMpfHxZZigxKXx8IXApJiZZcSgiX2dsIix1LGEscCxxKTpacSgiX2dsIix1LGEscCxxKX19dmFyIGQ9KGEudGFnTmFtZXx8IiIpLnRvVXBwZXJDYXNlKCk9PT0iRk9STSIsZT1JcShiLDEsZCksZj1JcShiLDIsZCksZz1JcShiLDQsZCksaD1JcShiLDMsZCk7YyhlLCExLCExKTtjKGYsITAsITEpO1lmKDEpJiZjKGcsITAsITApO2Zvcih2YXIgbCBpbiBoKWguaGFzT3duUHJvcGVydHkobCkmJgokcShsLGhbbF0sYSl9ZnVuY3Rpb24gJHEoYSxiLGMpe2MudGFnTmFtZS50b0xvd2VyQ2FzZSgpPT09ImEiP1pxKGEsYixjKTpjLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09PSJmb3JtIiYmWXEoYSxiLGMpfWZ1bmN0aW9uIFpxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7dmFyIGY7aWYoZj1jLmhyZWYpe3ZhciBnO2lmKCEoZz1kKSl7dmFyIGg9QS5sb2NhdGlvbi5ocmVmLGw9TnEoYy5ocmVmKSxuPU5xKGgpO2c9IShsJiZuJiZsLmhrPT09bi5oayYmbC5xdWVyeT09PW4ucXVlcnkmJmwuZnJhZ21lbnQpfWY9Z31pZihmKXt2YXIgcD1XcShhLGIsYy5ocmVmLGQsZSk7dmMudGVzdChwKSYmKGMuaHJlZj1wKX19CmZ1bmN0aW9uIFlxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7aWYoYyl7dmFyIGY9Yy5nZXRBdHRyaWJ1dGUoImFjdGlvbiIpfHwiIjtpZihmKXt2YXIgZz0oYy5tZXRob2R8fCIiKS50b0xvd2VyQ2FzZSgpO2lmKGchPT0iZ2V0Inx8ZCl7aWYoZz09PSJnZXQifHxnPT09InBvc3QiKXt2YXIgaD1XcShhLGIsZixkLGUpO3ZjLnRlc3QoaCkmJihjLmFjdGlvbj1oKX19ZWxzZXtmb3IodmFyIGw9Yy5jaGlsZE5vZGVzfHxbXSxuPSExLHA9MDtwPGwubGVuZ3RoO3ArKyl7dmFyIHE9bFtwXTtpZihxLm5hbWU9PT1hKXtxLnNldEF0dHJpYnV0ZSgidmFsdWUiLGIpO249ITA7YnJlYWt9fWlmKCFuKXt2YXIgcj1CLmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7ci5zZXRBdHRyaWJ1dGUoInR5cGUiLCJoaWRkZW4iKTtyLnNldEF0dHJpYnV0ZSgibmFtZSIsYSk7ci5zZXRBdHRyaWJ1dGUoInZhbHVlIixiKTtjLmFwcGVuZENoaWxkKHIpfX19fX0KZnVuY3Rpb24gRXEoYSl7dHJ5e3ZhciBiO2E6e2Zvcih2YXIgYz1hLGQ9MTAwO2MmJmQ+MDspe2lmKGMuaHJlZiYmYy5ub2RlTmFtZS5tYXRjaCgvXmEoPzpyZWEpPyQvaSkpe2I9YzticmVhayBhfWM9Yy5wYXJlbnROb2RlO2QtLX1iPW51bGx9dmFyIGU9YjtpZihlKXt2YXIgZj1lLnByb3RvY29sO2YhPT0iaHR0cDoiJiZmIT09Imh0dHBzOiJ8fFhxKGUsZS5ob3N0bmFtZSl9fWNhdGNoKGcpe319ZnVuY3Rpb24gRnEoYSl7dHJ5e3ZhciBiPWEuZ2V0QXR0cmlidXRlKCJhY3Rpb24iKTtpZihiKXt2YXIgYz1MaihSaihiKSwiaG9zdCIpO1hxKGEsYyl9fWNhdGNoKGQpe319ZnVuY3Rpb24gYXIoYSxiLGMsZCl7RHEoKTt2YXIgZT1jPT09ImZyYWdtZW50Ij8yOjE7ZD0hIWQ7SHEoYSxiLGUsZCwhMSk7ZT09PTImJnNiKCJUQUdHSU5HIiwyMyk7ZCYmc2IoIlRBR0dJTkciLDI0KX0KZnVuY3Rpb24gYnIoYSxiKXtEcSgpO0hxKGEsW05qKEEubG9jYXRpb24sImhvc3QiLCEwKV0sYiwhMCwhMCl9ZnVuY3Rpb24gY3IoKXt2YXIgYT1CLmxvY2F0aW9uLmhvc3RuYW1lLGI9S3EuZXhlYyhCLnJlZmVycmVyKTtpZighYilyZXR1cm4hMTt2YXIgYz1iWzJdLGQ9YlsxXSxlPSIiO2lmKGMpe3ZhciBmPWMuc3BsaXQoIi8iKSxnPWZbMV07ZT1nPT09InMiP0tqKGZbMl0pfHwiIjpLaihnKXx8IiJ9ZWxzZSBpZihkKXtpZihkLmluZGV4T2YoInhuLS0iKT09PTApcmV0dXJuITE7ZT1kLnJlcGxhY2UoLy0vZywiLiIpLnJlcGxhY2UoL1wuXC4vZywiLSIpfXZhciBoPWEucmVwbGFjZShMcSwiIiksbD1lLnJlcGxhY2UoTHEsIiIpO3JldHVybiBoPT09bHx8VGIoaCwiLiIrbCl9ZnVuY3Rpb24gZHIoYSxiKXtyZXR1cm4gYT09PSExPyExOmF8fGJ8fGNyKCl9O3ZhciBlcj1mdW5jdGlvbihhKXt0aGlzLnZhbHVlPTA7dGhpcy52YWx1ZT1hPT09dm9pZCAwPzA6YX07ZXIucHJvdG90eXBlLnNldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXw9MTw8YX07dmFyIGZyPWZ1bmN0aW9uKGEsYil7Yjw9MHx8KGEudmFsdWV8PTE8PGItMSl9O2VyLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07ZXIucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKGEpe3RoaXMudmFsdWUmPX4oMTw8YSl9O2VyLnByb3RvdHlwZS5jbGVhckFsbD1mdW5jdGlvbigpe3RoaXMudmFsdWU9MH07ZXIucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZT09PWEudmFsdWV9O2Z1bmN0aW9uIGdyKGEpe2lmKGEpdHJ5e3JldHVybiBuZXcgVWludDhBcnJheShhdG9iKGEucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIikpLnNwbGl0KCIiKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuY2hhckNvZGVBdCgwKX0pKX1jYXRjaChiKXt9fWZ1bmN0aW9uIGhyKGEsYil7dmFyIGM9MCxkPTAsZSxmPWI7ZG97aWYoZj49YS5sZW5ndGgpcmV0dXJuO2U9YVtmKytdO2N8PShlJjEyNyk8PGQ7ZCs9N313aGlsZShlJjEyOCk7cmV0dXJuW2MsZl19O2Z1bmN0aW9uIGlyKCl7dmFyIGE9U3RyaW5nLGI9QS5sb2NhdGlvbi5ob3N0bmFtZSxjPUEubG9jYXRpb24ucGF0aG5hbWUsZD1iPWJjKGIpO2Quc3BsaXQoIi4iKS5sZW5ndGg+MiYmKGQ9ZC5yZXBsYWNlKC9eKHd3d1swLTldKnx3ZWJ8ZnRwfHdhcHxob21lfG18d3xhbXB8bW9iaWxlKVwuLywiIikpO2I9ZDtjPWJjKGMpO3ZhciBlPWMuc3BsaXQoIjsiKVswXTtlPWUucmVwbGFjZSgvXC8oYXJ8c2xwfHdlYnxpbmRleCk/XC8/JC8sIiIpO3JldHVybiBhKG5nKCgiIitiK2UpLnRvTG93ZXJDYXNlKCkpKX07dmFyIGpyPVsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdO2Z1bmN0aW9uIGtyKGEsYil7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMiksMTA7aWYoYj09PW51bGx8fGI9PT12b2lkIDB8fGI9PT0iIilyZXR1cm4gc2IoIlRBR0dJTkciLDMzKSwxMTt2YXIgYz1scighMSk7aWYoYy5lcnJvciE9PTApcmV0dXJuIHNiKCJUQUdHSU5HIiwzNCksYy5lcnJvcjtpZighYy52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDM1KSwyO2MudmFsdWVbYV09Yjt2YXIgZD1tcihjKTtkIT09MCYmc2IoIlRBR0dJTkciLDM2KTtyZXR1cm4gZH0KZnVuY3Rpb24gbnIoYSl7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwyNykse2Vycm9yOjEwfTt2YXIgYj1scigpO2lmKGIuZXJyb3IhPT0wKXJldHVybiBzYigiVEFHR0lORyIsMjkpLGI7aWYoIWIudmFsdWUpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMCkse2Vycm9yOjJ9O2lmKCEoYSBpbiBiLnZhbHVlKSlyZXR1cm4gc2IoIlRBR0dJTkciLDMxKSx7dmFsdWU6dm9pZCAwLGVycm9yOjE1fTt2YXIgYz1iLnZhbHVlW2FdO3JldHVybiBjPT09bnVsbHx8Yz09PXZvaWQgMHx8Yz09PSIiPyhzYigiVEFHR0lORyIsMjgpLHt2YWx1ZTp2b2lkIDAsZXJyb3I6MTF9KTp7dmFsdWU6YyxlcnJvcjowfX0KZnVuY3Rpb24gb3IoYSl7aWYoYSl7dmFyIGI9bHIoITEpO2IuZXJyb3IhPT0wP3NiKCJUQUdHSU5HIiwzOCk6Yi52YWx1ZT9hIGluIGIudmFsdWU/KGRlbGV0ZSBiLnZhbHVlW2FdLG1yKGIpIT09MCYmc2IoIlRBR0dJTkciLDQxKSk6c2IoIlRBR0dJTkciLDQwKTpzYigiVEFHR0lORyIsMzkpfWVsc2Ugc2IoIlRBR0dJTkciLDM3KX0KZnVuY3Rpb24gbHIoYSl7YT1hPT09dm9pZCAwPyEwOmE7aWYoIUJsKGpyKSlyZXR1cm4gc2IoIlRBR0dJTkciLDQzKSx7ZXJyb3I6M307dHJ5e2lmKCFBLmxvY2FsU3RvcmFnZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQ0KSx7ZXJyb3I6MX19Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0NSkse2Vycm9yOjE0fX12YXIgYj17c2NoZW1hOiJnY2wiLHZlcnNpb246MX0sYz12b2lkIDA7dHJ5e2M9QS5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgiX2djbF9scyIpfWNhdGNoKGYpe3JldHVybiBzYigiVEFHR0lORyIsNDYpLHtlcnJvcjoxM319dHJ5e2lmKGMpe3ZhciBkPUpTT04ucGFyc2UoYyk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0IiliPWQ7ZWxzZSByZXR1cm4gc2IoIlRBR0dJTkciLDQ3KSx7ZXJyb3I6MTJ9fX1jYXRjaChmKXtyZXR1cm4gc2IoIlRBR0dJTkciLDQ4KSx7ZXJyb3I6OH19aWYoYi5zY2hlbWEhPT0iZ2NsIilyZXR1cm4gc2IoIlRBR0dJTkciLDQ5KSx7ZXJyb3I6NH07CmlmKGIudmVyc2lvbiE9PTEpcmV0dXJuIHNiKCJUQUdHSU5HIiw1MCkse2Vycm9yOjV9O3RyeXt2YXIgZT1wcihiKTthJiZlJiZtcih7dmFsdWU6YixlcnJvcjowfSl9Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0OCkse2Vycm9yOjh9fXJldHVybnt2YWx1ZTpiLGVycm9yOjB9fQpmdW5jdGlvbiBwcihhKXtpZighYXx8dHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4hMTtpZigiZXhwaXJlcyJpbiBhJiYidmFsdWUiaW4gYSl7dmFyIGI7dHlwZW9mIGEuZXhwaXJlcz09PSJudW1iZXIiP2I9YS5leHBpcmVzOmI9dHlwZW9mIGEuZXhwaXJlcz09PSJzdHJpbmciP051bWJlcihhLmV4cGlyZXMpOk5hTjtpZihpc05hTihiKXx8IShEYXRlLm5vdygpPD1iKSlyZXR1cm4gYS52YWx1ZT1udWxsLGEuZXJyb3I9OSxzYigiVEFHR0lORyIsNTQpLCEwfWVsc2V7Zm9yKHZhciBjPSExLGQ9bShPYmplY3Qua2V5cyhhKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpYz1wcihhW2UudmFsdWVdKXx8YztyZXR1cm4gY31yZXR1cm4hMX0KZnVuY3Rpb24gbXIoYSl7aWYoYS5lcnJvcilyZXR1cm4gYS5lcnJvcjtpZighYS52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQyKSwyO3ZhciBiPWEudmFsdWUsYzt0cnl7Yz1KU09OLnN0cmluZ2lmeShiKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUyKSw2fXRyeXtBLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJfZ2NsX2xzIixjKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUzKSw3fXJldHVybiAwfTt2YXIgcXI9e30scnI9KHFyLmdjbGlkPSEwLHFyLmRjbGlkPSEwLHFyLmdicmFpZD0hMCxxci53YnJhaWQ9ITAscXIpLHNyPS9eXHcrJC8sdHI9L15bXHctXSskLyx1cj17fSx2cj0odXIuYXc9IkZQR0NMQVciLHVyKSx3cj17fSx4cj0od3IuYWc9Il9hZyIsd3IuZ2I9Il9nYiIsd3IuYXc9Il9hdyIsd3IuZGM9Il9kYyIsd3IuZ2Y9Il9nZiIsd3IuaGE9Il9oYSIsd3IuZ3A9Il9ncCIsd3IuZ3M9Il9ncyIsd3IpLHlyPS9eKD86d3d3XC4pP2dvb2dsZSg/OlwuY29tPyk/KD86XC5bYS16XXsyfXQ/KT8kLyx6cj0vXnd3d1wuZ29vZ2xlYWRzZXJ2aWNlc1wuY29tJC87ZnVuY3Rpb24gQXIoKXtyZXR1cm5bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXX1mdW5jdGlvbiBCcihhKXtyZXR1cm4hWWYoNSl8fEJsKGEpfWZ1bmN0aW9uIENyKGEsYil7ZnVuY3Rpb24gYygpe3ZhciBkPUJyKGIpO2QmJmEoKTtyZXR1cm4gZH1IbChmdW5jdGlvbigpe2MoKXx8SWwoYyxiKX0sYil9CmZ1bmN0aW9uIERyKGEpe3JldHVybiBFcihhKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuZ2NsaWR9KX1mdW5jdGlvbiBGcihhKXtyZXR1cm4gR3IoYSkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSkubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSl9ZnVuY3Rpb24gR3IoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1IcihhLnByZWZpeCksZD1JcigiZ2IiLGMpLGU9SXIoImFnIixjKTtpZighZXx8IWQpcmV0dXJuW107dmFyIGY9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe24uemc9bDtyZXR1cm4gbn19LGc9RXIoZCxiKS5tYXAoZigiZ2IiKSksaD1KcihlKS5tYXAoZigiYWciKSk7cmV0dXJuIGcuY29uY2F0KGgpLnNvcnQoZnVuY3Rpb24obCxuKXtyZXR1cm4gbi50aW1lc3RhbXAtbC50aW1lc3RhbXB9KX0KZnVuY3Rpb24gS3IoYSxiLGMsZCxlKXt2YXIgZj1DYihhLGZ1bmN0aW9uKGcpe3JldHVybiBnLmdjbGlkPT09Yn0pO2Y/KGYudGltZXN0YW1wPGMmJihmLnRpbWVzdGFtcD1jLGYub2Q9ZSksZi5sYWJlbHM9THIoZi5sYWJlbHN8fFtdLGR8fFtdKSk6YS5wdXNoKHt2ZXJzaW9uOiIyIixnY2xpZDpiLHRpbWVzdGFtcDpjLGxhYmVsczpkLG9kOmV9KX1mdW5jdGlvbiBNcihhKXtmb3IodmFyIGI9d3EoYSw1KXx8W10sYz1bXSxkPW0oYiksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1mLGg9TnIoZik7aCYmS3IoYyxnLmssaCxnLmJ8fFtdLGYudSl9cmV0dXJuIGMuc29ydChmdW5jdGlvbihsLG4pe3JldHVybiBuLnRpbWVzdGFtcC1sLnRpbWVzdGFtcH0pfQpmdW5jdGlvbiBFcihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVtdO09yKGMsYSwxKTtpZihiKWlmKFRiKGEsIl9hdyIpKXt2YXIgZD1QcigpO2QmJihkLm9kPXZvaWQgMCxkLm9hPWQub2F8fFsyXSxRcihjLGQpKTtPcihjLCJnY2xfYXciLDIpfWVsc2UgVGIoYSwiX2diIikmJllmKDYpJiZPcihjLCJnY2xfZ2IiLDIpO2Muc29ydChmdW5jdGlvbihlLGYpe3JldHVybiBmLnRpbWVzdGFtcC1lLnRpbWVzdGFtcH0pO3JldHVybiBScihjKX1mdW5jdGlvbiBTcihhLGIpe2Zvcih2YXIgYz1bXSxkPW0oYSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Yy5pbmNsdWRlcyhmKXx8Yy5wdXNoKGYpfWZvcih2YXIgZz1tKGIpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD1oLnZhbHVlO2MuaW5jbHVkZXMobCl8fGMucHVzaChsKX1yZXR1cm4gY30KZnVuY3Rpb24gUXIoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2Zvcih2YXIgZCxlLGY9bShhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtpZihoLmdjbGlkPT09Yi5nY2xpZCl7ZD1oO2JyZWFrfWgucWEmJmIucWEmJmgucWEuZXF1YWxzKGIucWEpJiYoZT1oKX1pZihkKXt2YXIgbCxuLHA9KGw9ZC5xYSkhPW51bGw/bDpuZXcgZXIscT0obj1iLnFhKSE9bnVsbD9uOm5ldyBlcjtwLnZhbHVlfD1xLnZhbHVlO2QucWE9cDtkLnRpbWVzdGFtcDxiLnRpbWVzdGFtcCYmKGQudGltZXN0YW1wPWIudGltZXN0YW1wLGQub2Q9Yi5vZCk7ZC5sYWJlbHM9U3IoZC5sYWJlbHN8fFtdLGIubGFiZWxzfHxbXSk7ZC5vYT1TcihkLm9hfHxbXSxiLm9hfHxbXSl9ZWxzZSBjJiZlP25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZSxiKTphLnB1c2goYil9CmZ1bmN0aW9uIFRyKGEpe2lmKCFhKXJldHVybiBuZXcgZXI7dmFyIGI9bmV3IGVyO2lmKGE9PT0xKXJldHVybiBmcihiLDIpLGZyKGIsMyksYjtmcihiLGEpO3JldHVybiBifQpmdW5jdGlvbiBQcigpe3ZhciBhPW5yKCJnY2xpZCIpO2lmKCFhfHxhLmVycm9yfHwhYS52YWx1ZXx8dHlwZW9mIGEudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYj1hLnZhbHVlO3RyeXtpZighKCJ2YWx1ZSJpbiBiJiZiLnZhbHVlKXx8dHlwZW9mIGIudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYz1iLnZhbHVlLGQ9Yy52YWx1ZTtpZighZHx8IWQubWF0Y2godHIpKXJldHVybiBudWxsO3ZhciBlPWMubGlua0RlY29yYXRpb25Tb3VyY2UsZj1jLmxpbmtEZWNvcmF0aW9uU291cmNlcyxnPW5ldyBlcjt0eXBlb2YgZT09PSJudW1iZXIiP2c9VHIoZSk6dHlwZW9mIGY9PT0ibnVtYmVyIiYmKGcudmFsdWU9Zik7cmV0dXJue3ZlcnNpb246IiIsZ2NsaWQ6ZCx0aW1lc3RhbXA6TnVtYmVyKGMuY3JlYXRpb25UaW1lTXMpfHwwLGxhYmVsczpbXSxxYTpnLG9hOlsyXX19Y2F0Y2goaCl7cmV0dXJuIG51bGx9fQpmdW5jdGlvbiBVcihhKXt2YXIgYj1ucihhKTtpZihiLmVycm9yIT09MClyZXR1cm4gbnVsbDt0cnl7cmV0dXJuIGIudmFsdWUucmVkdWNlKGZ1bmN0aW9uKGMsZCl7aWYoIWQudmFsdWV8fHR5cGVvZiBkLnZhbHVlIT09Im9iamVjdCIpcmV0dXJuIGM7dmFyIGU9ZC52YWx1ZSxmPWUudmFsdWU7aWYoIWZ8fCFmLm1hdGNoKHRyKSlyZXR1cm4gYzt2YXIgZz1uZXcgZXIsaD1lLmxpbmtEZWNvcmF0aW9uU291cmNlczt0eXBlb2YgaD09PSJudW1iZXIiJiYoZy52YWx1ZT1oKTt2YXIgbDtjLnB1c2goe3ZlcnNpb246IiIsZ2NsaWQ6Zix0aW1lc3RhbXA6TnVtYmVyKGUuY3JlYXRpb25UaW1lTXMpfHwwLGV4cGlyZXM6TnVtYmVyKGQuZXhwaXJlcyl8fDAsbGFiZWxzOihsPWUubGFiZWxzKSE9bnVsbD9sOltdLHFhOmcsb2E6WzJdfSk7cmV0dXJuIGN9LFtdKX1jYXRjaChjKXtyZXR1cm4gbnVsbH19CmZ1bmN0aW9uIE9yKGEsYixjKXtpZihjPT09MSlmb3IodmFyIGQ9Y3EoYixCLmNvb2tpZSx2b2lkIDAsQXIoKSksZT1tKGQpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1WcihmLnZhbHVlLnNwbGl0KCIuIikpLGg9Zy5sZW5ndGg9PT0wP251bGw6e3ZlcnNpb246Z1swXSxnY2xpZDpnWzJdLHRpbWVzdGFtcDooTnVtYmVyKGdbMV0pfHwwKSoxRTMsbGFiZWxzOmcuc2xpY2UoMyl9O2ghPW51bGwmJihoLm9kPXZvaWQgMCxoLnFhPW5ldyBlcixoLm9hPVtjXSxRcihhLGgpKX1lbHNlIGlmKGM9PT0yKXt2YXIgbD1VcihiKTtpZihsKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3Eub2Q9dm9pZCAwO3Eub2E9cS5vYTtRcihhLHEpfX19CmZ1bmN0aW9uIFpyKGEpe3ZhciBiPUVyKGEpLGM9VXIoImdjbF9kYyIpO2lmKGMpZm9yKHZhciBkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Zi5vZD12b2lkIDA7Zi5vYT1mLm9hfHxbMl07UXIoYixmKX1iLnNvcnQoZnVuY3Rpb24oZyxoKXt2YXIgbD1nLm9hJiZnLm9hLmluY2x1ZGVzKDEpLG49aC5vYSYmaC5vYS5pbmNsdWRlcygxKTtyZXR1cm4gbCYmIW4/LTE6IWwmJm4/MTpoLnRpbWVzdGFtcC1nLnRpbWVzdGFtcH0pO3JldHVybiBScihiKX1mdW5jdGlvbiBKcihhKXtyZXR1cm4gTXIoYSkubWFwKGZ1bmN0aW9uKGIpe2IucWE9bmV3IGVyO2Iub2E9WzFdO3JldHVybiBifSl9CmZ1bmN0aW9uIExyKGEsYil7aWYoIWEubGVuZ3RoKXJldHVybiBiO2lmKCFiLmxlbmd0aClyZXR1cm4gYTt2YXIgYz17fTtyZXR1cm4gYS5jb25jYXQoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBjLmhhc093blByb3BlcnR5KGQpPyExOmNbZF09ITB9KX1mdW5jdGlvbiBIcihhKXtyZXR1cm4gYSYmdHlwZW9mIGE9PT0ic3RyaW5nIiYmYS5tYXRjaChzcik/YToiX2djbCJ9ZnVuY3Rpb24gJHIoYSxiKXtpZihhKXt2YXIgYz17dmFsdWU6YSxxYTpuZXcgZXJ9O2ZyKGMucWEsYik7cmV0dXJuIGN9fQpmdW5jdGlvbiBhcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpO2lmKGImJighZnx8IWUpKXt2YXIgZz1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Z8fChmPSRyKElqKGcsImdjbGlkIiwhMSksMykpO2V8fChlPUlqKGcsImdjbHNyYyIsITEpKX1yZXR1cm4gZiYmKGU9PT12b2lkIDB8fGU9PT0iYXcifHxlPT09ImF3LmRzInx8WWYoOCkmJmU9PT0iYXcuZHYiKT9bZl06W119CmZ1bmN0aW9uIGJzKGEsYil7dmFyIGM9UmooYSksZD1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpLGU9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2Nsc3JjIiksZj1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJ3YnJhaWQiKTtmPSRiKGYpO3ZhciBnPUxqKGMsInF1ZXJ5IiwhMSx2b2lkIDAsImdicmFpZCIpLGg9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpLGw9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKTtpZihiJiYhKGQmJmUmJmYmJmcpKXt2YXIgbj1jLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Q9ZHx8SWoobiwiZ2NsaWQiLCExKTtlPWV8fElqKG4sImdjbHNyYyIsITEpO2Y9Znx8SWoobiwid2JyYWlkIiwhMSk7Zz1nfHxJaihuLCJnYnJhaWQiLCExKTtoPWh8fElqKG4sImdhZF9zb3VyY2UiLCExKX1yZXR1cm4gY3MoZCxlLGwsZixnLGgpfQpmdW5jdGlvbiBkcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpLGc9JHIoTGooZCwicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKSxjPzQ6Mik7aWYoYiYmKCFlfHwhZikpe3ZhciBoPWQuaGFzaC5yZXBsYWNlKCIjIiwiIik7Znx8KGY9JHIoSWooaCwiZ2NsaWQiLCExKSwzKSk7ZXx8KGU9SWooaCwiZ2Nsc3JjIiwhMSkpfXJldHVybiBmJiZlJiYoZT09PSJhdy5kcyJ8fGU9PT0iYXcuZHYifHxlPT09IjNwLmRzInx8ZT09PSJkcyIpP1tmXTpnP1tnXTpbXX1mdW5jdGlvbiBlcygpe3JldHVybiBicyhBLmxvY2F0aW9uLmhyZWYsITApfQpmdW5jdGlvbiBjcyhhLGIsYyxkLGUsZil7dmFyIGc9e30saD1mdW5jdGlvbihsLG4pe2dbbl18fChnW25dPVtdKTtnW25dLnB1c2gobCl9O2cuZ2NsaWQ9YTtnLmdjbHNyYz1iO2cuZGNsaWQ9YztpZihhIT09dm9pZCAwJiZhLm1hdGNoKHRyKSlzd2l0Y2goYil7Y2FzZSB2b2lkIDA6aChhLCJhdyIpO2JyZWFrO2Nhc2UgImF3LmRzIjpoKGEsImF3Iik7aChhLCJkYyIpO2JyZWFrO2Nhc2UgImF3LmR2IjpZZig4KSYmKGgoYSwiYXciKSxoKGEsImRjIikpO2JyZWFrO2Nhc2UgImRzIjpoKGEsImRjIik7YnJlYWs7Y2FzZSAiM3AuZHMiOmgoYSwiZGMiKTticmVhaztjYXNlICJnZiI6aChhLCJnZiIpO2JyZWFrO2Nhc2UgImhhIjpoKGEsImhhIil9YyYmaChjLCJkYyIpO2QhPT12b2lkIDAmJnRyLnRlc3QoZCkmJihnLndicmFpZD1kLGgoZCwiZ2IiKSk7ZSE9PXZvaWQgMCYmdHIudGVzdChlKSYmKGcuZ2JyYWlkPWUsaChlLCJhZyIpKTtmIT09dm9pZCAwJiZ0ci50ZXN0KGYpJiYoZy5nYWRfc291cmNlPQpmLGgoZiwiZ3MiKSk7cmV0dXJuIGd9ZnVuY3Rpb24gZnMoKXtmb3IodmFyIGE9ZXMoKSxiPSEwLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpaWYoYVtkLnZhbHVlXSE9PXZvaWQgMCl7Yj0hMTticmVha31iJiYoYT1icyhBLmRvY3VtZW50LnJlZmVycmVyLCExKSxhLmdhZF9zb3VyY2U9dm9pZCAwKTtyZXR1cm4gYX1mdW5jdGlvbiBncyhhKXt2YXIgYj1mcygpO2hzKGIsITEsYSl9CmZ1bmN0aW9uIGlzKGEpe3ZhciBiPWFzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk7Yi5sZW5ndGh8fChiPWFzKEEuZG9jdW1lbnQucmVmZXJyZXIsITEsITApKTthPWF8fHt9O2pzKGEpO2lmKGIubGVuZ3RoKXt2YXIgYz1iWzBdLGQ9TmIoKSxlPXVxKGEsZCwhMCksZj1BcigpLGc9ZnVuY3Rpb24oKXtCcihmKSYmZS5leHBpcmVzIT09dm9pZCAwJiZrcigiZ2NsaWQiLHt2YWx1ZTp7dmFsdWU6Yy52YWx1ZSxjcmVhdGlvblRpbWVNczpkLGxpbmtEZWNvcmF0aW9uU291cmNlczpjLnFhLmdldCgpfSxleHBpcmVzOk51bWJlcihlLmV4cGlyZXMpfSl9O0hsKGZ1bmN0aW9uKCl7ZygpO0JyKGYpfHxJbChnLGYpfSxmKX19CmZ1bmN0aW9uIGpzKGEpe3ZhciBiPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjtpZih5ci50ZXN0KGIpfHx6ci50ZXN0KGIpfHxrcygpKXt2YXIgYzthOntmb3IodmFyIGQ9UmooQS5sb2NhdGlvbi5ocmVmKSxlPUpqKExqKGQsInF1ZXJ5IikpLGY9bShPYmplY3Qua2V5cyhlKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7aWYoIXJyW2hdKXt2YXIgbD1lW2hdWzBdfHwiIixuO2lmKCFsfHxsLmxlbmd0aDw1MHx8bC5sZW5ndGg+MjAwKW49ITE7ZWxzZXt2YXIgcD1ncihsKSxxO2lmKHApYzp7dmFyIHI9cDtpZihyJiZyLmxlbmd0aCE9PTApe3ZhciB0PTA7dHJ5e2Zvcih2YXIgdT0xMDt0PHIubGVuZ3RoJiYhKHUtLTw9MCk7KXt2YXIgdj1ocihyLHQpO2lmKHY9PT12b2lkIDApYnJlYWs7dmFyIHg9bSh2KSx5PXgubmV4dCgpLnZhbHVlLHo9eC5uZXh0KCkudmFsdWUsQz15LEQ9eixJPUMmNztpZihDPj4zPT09MTYzODIpe2lmKEkhPT0KMClicmVhazt2YXIgRz1ocihyLEQpO2lmKEc9PT12b2lkIDApYnJlYWs7cT1tKEcpLm5leHQoKS52YWx1ZT09PTE7YnJlYWsgY312YXIgTjtkOnt2YXIgUz12b2lkIDAsVz1yLGVhPUQ7c3dpdGNoKEkpe2Nhc2UgMDpOPShTPWhyKFcsZWEpKT09bnVsbD92b2lkIDA6U1sxXTticmVhayBkO2Nhc2UgMTpOPWVhKzg7YnJlYWsgZDtjYXNlIDI6dmFyIGphPWhyKFcsZWEpO2lmKGphPT09dm9pZCAwKWJyZWFrO3ZhciBmYT1tKGphKSxzYT1mYS5uZXh0KCkudmFsdWU7Tj1mYS5uZXh0KCkudmFsdWUrc2E7YnJlYWsgZDtjYXNlIDU6Tj1lYSs0O2JyZWFrIGR9Tj12b2lkIDB9aWYoTj09PXZvaWQgMHx8Tj5yLmxlbmd0aHx8Tjw9dClicmVhazt0PU59fWNhdGNoKG1hKXt9fXE9ITF9ZWxzZSBxPSExO249cX1pZihuKXtjPWw7YnJlYWsgYX19fWM9dm9pZCAwfXZhciBkYT1jO2RhJiZscygiZ2NsX2F3IixkYSw3LGEpfX0KZnVuY3Rpb24gbHMoYSxiLGMsZCl7bXMoYSxbe3ZlcnNpb246IiIsZ2NsaWQ6Yix0aW1lc3RhbXA6TmIoKSxxYTpUcihjKX1dLGQpfQpmdW5jdGlvbiBtcyhhLGIsYyl7Yz1jfHx7fTt2YXIgZD1BcigpLGU9ZnVuY3Rpb24oKXtpZihCcihkKSYmYi5sZW5ndGg+MCl7dmFyIGY9VXIoYSl8fFtdO2IuZm9yRWFjaChmdW5jdGlvbihnKXt2YXIgaD11cShjLGcudGltZXN0YW1wLCEwKTtoLmV4cGlyZXMhPT12b2lkIDAmJlFyKGYse3ZlcnNpb246IiIsZ2NsaWQ6Zy5nY2xpZCx0aW1lc3RhbXA6Zy50aW1lc3RhbXAsZXhwaXJlczpOdW1iZXIoaC5leHBpcmVzKSxxYTpnLnFhLGxhYmVsczpnLmxhYmVsc30sITApfSk7Zi5sZW5ndGgmJmtyKGEsZi5tYXAoZnVuY3Rpb24oZyl7dmFyIGg9e3ZhbHVlOmcuZ2NsaWQsY3JlYXRpb25UaW1lTXM6Zy50aW1lc3RhbXAsbGlua0RlY29yYXRpb25Tb3VyY2VzOmcucWE/Zy5xYS5nZXQoKTowfSxsO2lmKChsPWcubGFiZWxzKT09bnVsbD8wOmwubGVuZ3RoKWgubGFiZWxzPWcubGFiZWxzO3JldHVybnt2YWx1ZTpoLGV4cGlyZXM6TnVtYmVyKGcuZXhwaXJlcyl9fSkpfX07SGwoZnVuY3Rpb24oKXtCcihkKT8KZSgpOklsKGUsZCl9LGQpfQpmdW5jdGlvbiBocyhhLGIsYyxkLGUpe2M9Y3x8e307ZT1lfHxbXTt2YXIgZj1IcihjLnByZWZpeCksZz1kfHxOYigpLGg9TWF0aC5yb3VuZChnLzFFMyksbD1BcigpLG49ITEscD0hMSxxPVlmKDkpLHI9ZnVuY3Rpb24oKXtpZihCcihsKSl7dmFyIHQ9dXEoYyxnLCEwKTt0Lk1jPWw7Zm9yKHZhciB1PWZ1bmN0aW9uKFcsZWEpe3ZhciBqYT1JcihXLGYpO2phJiYob3EoamEsZWEsdCksVyE9PSJnYiImJihuPSEwKSl9LHY9ZnVuY3Rpb24oVyl7dmFyIGVhPVsiR0NMIixoLFddO2UubGVuZ3RoPjAmJmVhLnB1c2goZS5qb2luKCIuIikpO3JldHVybiBlYS5qb2luKCIuIil9LHg9bShbImF3IiwiZGMiLCJnZiIsImhhIiwiZ3AiXSkseT14Lm5leHQoKTsheS5kb25lO3k9eC5uZXh0KCkpe3ZhciB6PXkudmFsdWU7YVt6XSYmdSh6LHYoYVt6XVswXSkpfWlmKCghbnx8cSkmJmEuZ2Ipe3ZhciBDPWEuZ2JbMF0sRD1JcigiZ2IiLGYpOyFiJiZFcihEKS5zb21lKGZ1bmN0aW9uKFcpe3JldHVybiBXLmdjbGlkPT09QyYmClcubGFiZWxzJiZXLmxhYmVscy5sZW5ndGg+MH0pfHx1KCJnYiIsdihDKSl9fWlmKCFwJiZhLmdicmFpZCYmQnIoImFkX3N0b3JhZ2UiKSYmKHA9ITAsIW58fHEpKXt2YXIgST1hLmdicmFpZCxHPUlyKCJhZyIsZik7aWYoYnx8IUpyKEcpLnNvbWUoZnVuY3Rpb24oVyl7cmV0dXJuIFcuZ2NsaWQ9PT1JJiZXLmxhYmVscyYmVy5sYWJlbHMubGVuZ3RoPjB9KSl7dmFyIE49e30sUz0oTi5rPUksTi5pPSIiK2gsTi5iPWUsTik7QXEoRyxTLDUsYyxnKX19bnMoYSxmLGcsYyl9O0hsKGZ1bmN0aW9uKCl7cigpO0JyKGwpfHxJbChyLGwpfSxsKX0KZnVuY3Rpb24gbnMoYSxiLGMsZCl7aWYoYS5nYWRfc291cmNlIT09dm9pZCAwJiZCcigiYWRfc3RvcmFnZSIpKXt2YXIgZT1xZCgpO2lmKGUhPT0iciImJmUhPT0iaCIpe3ZhciBmPWEuZ2FkX3NvdXJjZSxnPUlyKCJncyIsYik7aWYoZyl7dmFyIGg9TWF0aC5mbG9vcigoTmIoKS0ocGQoKXx8MCkpLzFFMyksbCxuPWlyKCkscD17fTtsPShwLms9ZixwLmk9IiIraCxwLnU9bixwKTtBcShnLGwsNSxkLGMpfX19fWZ1bmN0aW9uIG9zKGEsYixjKXtmb3IodmFyIGQ9d3EoYixjKSxlPTA7ZTxkLmxlbmd0aDsrK2UpaWYoTnIoZFtlXSk+YSlyZXR1cm4hMDtyZXR1cm4hMX0KZnVuY3Rpb24gcHMoYSl7dmFyIGI9cXMsYz1ycyhhLnByZWZpeCk7Q3IoZnVuY3Rpb24oKXtmb3IodmFyIGQ9SHIoYS5wcmVmaXgpLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWNbZ107aWYoaCl7dmFyIGw9TWF0aC5taW4oc3MoaCksTmIoKSksbj11cShhLGwsITApO24uTWM9QXIoKTt2YXIgcD1JcihnLGQpO3AmJm9xKHAsaCxuKX19dmFyIHE9VXEoITApO2hzKGNzKHEuZ2NsaWQscS5nY2xzcmMpLCExLGEpfSxBcigpKX0KZnVuY3Rpb24gcnMoYSl7dmFyIGI9VXEoITApLGM9SHIoYSksZD17fSxlO2ZvcihlIGluIHhyKWlmKHhyLmhhc093blByb3BlcnR5KGUpKXt2YXIgZj1lLGc9SXIoZixjKTtpZihnIT09dm9pZCAwKXt2YXIgaD1iW2ddO2lmKGgpe3ZhciBsPXNzKGgpLG47YTp7Zm9yKHZhciBwPU1hdGgubWluKGwsTmIoKSl8fE5iKCkscT1jcShnLEIuY29va2llLHZvaWQgMCxBcigpKSxyPTA7cjxxLmxlbmd0aDsrK3IpaWYoc3MocVtyXSk+cCl7bj0hMDticmVhayBhfW49ITF9bnx8KGRbZl09aCl9fX1yZXR1cm4gZH0KZnVuY3Rpb24gdHMoYSl7dmFyIGI9WyJhZyJdLGM9VXEoITApLGQ9SHIoYS5wcmVmaXgpO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoZil7dmFyIGc9Y1tmXTtpZihnKXt2YXIgaD0kcChnLDUpO2lmKGgpe3ZhciBsPU5yKGgpO2x8fChsPU5iKCkpO2lmKG9zKGwsZiw1KSlicmVhaztoLmk9IiIrTWF0aC5yb3VuZChsLzFFMyk7QXEoZixoLDUsYSxsKX19fX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiBJcihhLGIpe3ZhciBjPXhyW2FdO2lmKGMhPT12b2lkIDApcmV0dXJuIGIrY31mdW5jdGlvbiBzcyhhKXtyZXR1cm4gVnIoYS5zcGxpdCgiLiIpKS5sZW5ndGghPT0wPyhOdW1iZXIoYS5zcGxpdCgiLiIpWzFdKXx8MCkqMUUzOjB9ZnVuY3Rpb24gTnIoYSl7cmV0dXJuIGE/KE51bWJlcihhLmkpfHwwKSoxRTM6MH0KZnVuY3Rpb24gVnIoYSl7cmV0dXJuIGEubGVuZ3RoPDN8fGFbMF0hPT0iR0NMIiYmYVswXSE9PSIxInx8IS9eXGQrJC8udGVzdChhWzFdKXx8IXRyLnRlc3QoYVsyXSk/W106YX1mdW5jdGlvbiB1cyhhLGIsYyxkKXt2YXIgZT1xcztpZihBcnJheS5pc0FycmF5KGEpJiZTcChBKSl7dmFyIGY9SHIoZCksZz1mdW5jdGlvbigpe2Zvcih2YXIgaD17fSxsPTA7bDxlLmxlbmd0aDsrK2wpe3ZhciBuPUlyKGVbbF0sZik7aWYobil7dmFyIHA9Y3EobixCLmNvb2tpZSx2b2lkIDAsQXIoKSk7cC5sZW5ndGgmJihoW25dPXAuc29ydCgpW3AubGVuZ3RoLTFdKX19cmV0dXJuIGh9O0NyKGZ1bmN0aW9uKCl7YXIoZyxhLGIsYyl9LEFyKCkpfX0KZnVuY3Rpb24gdnMoYSxiLGMpe3ZhciBkPXFzO2lmKFlmKDEzKSYmQXJyYXkuaXNBcnJheShhKSYmU3AoQSkpe3ZhciBlPWZ1bmN0aW9uKCl7Zm9yKHZhciBmPXt9LGc9MDtnPGQubGVuZ3RoOysrZyl7dmFyIGg9dnJbZFtnXV07aWYoaCl7dmFyIGw9Y3EoaCxCLmNvb2tpZSx2b2lkIDAsQXIoKSk7aWYobC5sZW5ndGgpe2Zvcih2YXIgbj12b2lkIDAscD0wLHE9bShsKSxyPXEubmV4dCgpOyFyLmRvbmU7cj1xLm5leHQoKSl7dmFyIHQ9ci52YWx1ZSx1PSRwKHQsNCk7aWYodSYmKHUubT09PSIxInx8WWYoMTYpKSl7dmFyIHY9TnIodSk7dj49cCYmKHA9dixuPXQpfX1uJiYoZltoXT1uKX19fXJldHVybiBmfTtDcihmdW5jdGlvbigpe2FyKGUsYSxiLGMpfSxBcigpKX19CmZ1bmN0aW9uIHdzKGEsYixjLGQpe2lmKEFycmF5LmlzQXJyYXkoYSkmJlNwKEEpKXt2YXIgZT1bImFnIl0sZj1IcihkKSxnPWZ1bmN0aW9uKCl7Zm9yKHZhciBoPXt9LGw9MDtsPGUubGVuZ3RoOysrbCl7dmFyIG49SXIoZVtsXSxmKTtpZighbilyZXR1cm57fTt2YXIgcD13cShuLDUpO2lmKHAubGVuZ3RoKXt2YXIgcT1wLnNvcnQoZnVuY3Rpb24ocix0KXtyZXR1cm4gTnIodCktTnIocil9KVswXTtoW25dPWFxKHEsNSl9fXJldHVybiBofTtDcihmdW5jdGlvbigpe2FyKGcsYSxiLGMpfSxbImFkX3N0b3JhZ2UiXSl9fWZ1bmN0aW9uIFJyKGEpe3JldHVybiBhLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gdHIudGVzdChiLmdjbGlkKX0pfQpmdW5jdGlvbiB4cyhhLGIpe2lmKFNwKEEpKXtmb3IodmFyIGM9SHIoYi5wcmVmaXgpLGQ9e30sZT0wO2U8YS5sZW5ndGg7ZSsrKXhyW2FbZV1dJiYoZFthW2VdXT14clthW2VdXSk7Q3IoZnVuY3Rpb24oKXtHYihkLGZ1bmN0aW9uKGYsZyl7dmFyIGg9Y3EoYytnLEIuY29va2llLHZvaWQgMCxBcigpKTtoLnNvcnQoZnVuY3Rpb24odCx1KXtyZXR1cm4gc3ModSktc3ModCl9KTtpZihoLmxlbmd0aCl7dmFyIGw9aFswXSxuPXNzKGwpLHA9VnIobC5zcGxpdCgiLiIpKS5sZW5ndGghPT0wP2wuc3BsaXQoIi4iKS5zbGljZSgzKTpbXSxxPXt9LHI7cj1WcihsLnNwbGl0KCIuIikpLmxlbmd0aCE9PTA/bC5zcGxpdCgiLiIpWzJdOnZvaWQgMDtxW2ZdPVtyXTtocyhxLCEwLGIsbixwKX19KX0sQXIoKSl9fQpmdW5jdGlvbiB5cyhhKXt2YXIgYj1bImFnIl0sYz1bImdicmFpZCJdO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUhyKGEucHJlZml4KSxlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoIWYpYnJlYWs7dmFyIGc9d3EoZiw1KTtpZihnLmxlbmd0aCl7dmFyIGg9Zy5zb3J0KGZ1bmN0aW9uKHEscil7cmV0dXJuIE5yKHIpLU5yKHEpfSlbMF0sbD1OcihoKSxuPWguYixwPXt9O3BbY1tlXV09aC5rO2hzKHAsITAsYSxsLG4pfX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiB6cyhhLGIpe2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7KytjKWlmKGFbYltjXV0pcmV0dXJuITA7cmV0dXJuITF9CmZ1bmN0aW9uIEFzKGEpe2Z1bmN0aW9uIGIoaCxsLG4pe24mJihoW2xdPW4pfWlmKEVsKCkpe3ZhciBjPWVzKCksZDthLmluY2x1ZGVzKCJnYWRfc291cmNlIikmJihkPWMuZ2FkX3NvdXJjZSE9PXZvaWQgMD9jLmdhZF9zb3VyY2U6VXEoITEpLl9ncyk7aWYoenMoYyxhKXx8ZCl7dmFyIGU9e307YihlLCJnY2xpZCIsYy5nY2xpZCk7YihlLCJkY2xpZCIsYy5kY2xpZCk7YihlLCJnY2xzcmMiLGMuZ2Nsc3JjKTtiKGUsIndicmFpZCIsYy53YnJhaWQpO2IoZSwiZ2JyYWlkIixjLmdicmFpZCk7YnIoZnVuY3Rpb24oKXtyZXR1cm4gZX0sMyk7dmFyIGY9e30sZz0oZi5fdXA9IjEiLGYpO2IoZywiX2dzIixkKTticihmdW5jdGlvbigpe3JldHVybiBnfSwxKX19fWZ1bmN0aW9uIGtzKCl7dmFyIGE9UmooQS5sb2NhdGlvbi5ocmVmKTtyZXR1cm4gTGooYSwicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpfQpmdW5jdGlvbiBCcyhhKXtpZighWWYoMSkpcmV0dXJuIG51bGw7dmFyIGI9VXEoITApLmdhZF9zb3VyY2U7aWYoYiE9bnVsbClyZXR1cm4gQS5sb2NhdGlvbi5oYXNoPSIiLGI7aWYoWWYoMikpe2I9a3MoKTtpZihiIT1udWxsKXJldHVybiBiO3ZhciBjPWVzKCk7aWYoenMoYyxhKSlyZXR1cm4iMCJ9cmV0dXJuIG51bGx9ZnVuY3Rpb24gQ3MoYSl7dmFyIGI9QnMoYSk7YiE9bnVsbCYmYnIoZnVuY3Rpb24oKXt2YXIgYz17fTtyZXR1cm4gYy5nYWRfc291cmNlPWIsY30sNCl9CmZ1bmN0aW9uIERzKGEsYixjKXt2YXIgZD1bXTtpZihiLmxlbmd0aD09PTApcmV0dXJuIGQ7Zm9yKHZhciBlPXt9LGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXSxoPWcuemc/Zy56ZzoiZ2NsIjtpZigoZy5sYWJlbHN8fFtdKS5pbmRleE9mKGMpPT09LTEpe2EucHVzaCgwKTt2YXIgbD0hMSxuPXZvaWQgMDtpZigobj1nLm9hKT09bnVsbD8wOm4uaW5jbHVkZXMoMikpbD0hMDt2YXIgcD12b2lkIDA7KChwPWcub2EpPT1udWxsPzA6cC5pbmNsdWRlcygxKSkmJiFlW2hdJiYobD0hMCxlW2hdPSEwKTtsJiZkLnB1c2goZyl9ZWxzZXthLnB1c2goMSk7dmFyIHE9dm9pZCAwO2lmKChxPWcub2EpPT1udWxsPzA6cS5pbmNsdWRlcygxKSllW2hdPSEwfX1yZXR1cm4gZH0KZnVuY3Rpb24gRXMoYSxiLGMsZCxlKXtlPWU9PT12b2lkIDA/ITE6ZTt2YXIgZj1bXTtjPWN8fHt9O2lmKCFCcihBcigpKSlyZXR1cm4gZjt2YXIgZz1FcihhLGUpLGg9RHMoZixnLGIpO2lmKGgubGVuZ3RoJiYhZCl7Zm9yKHZhciBsPVtdLG49ITEscD1tKGgpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlLHQ9cix1PXQudmVyc2lvbix2PXQuZ2NsaWQseD10LnRpbWVzdGFtcCx5PXQub2Esej0odC5sYWJlbHN8fFtdKS5jb25jYXQoW2JdKSxDPXZvaWQgMDtpZigoKEM9eSk9PW51bGw/MDpDLmluY2x1ZGVzKDEpKSYmIW4pe3ZhciBEPVt1LE1hdGgucm91bmQoeC8xRTMpLHZdLmNvbmNhdCh6KS5qb2luKCIuIiksST11cShjLHgsITApO0kuTWM9QXIoKTtvcShhLEQsSSk7bj0hMH12YXIgRz12b2lkIDA7ZSYmKChHPXkpPT1udWxsPzA6Ry5pbmNsdWRlcygyKSkmJmwucHVzaChuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHIse2xhYmVsczp6fSkpfWwubGVuZ3RoJiYKbXMoImdjbF9nYiIsbCxjKX1yZXR1cm4gZn0KZnVuY3Rpb24gRnMoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3ZhciBkPVtdO2I9Ynx8e307dmFyIGU9R3IoYixjKSxmPURzKGQsZSxhKTtpZihmLmxlbmd0aCl7Zm9yKHZhciBnPVtdLGg9e30sbD1tKGYpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlLHE9SHIoYi5wcmVmaXgpLHI9SXIocC56ZyxxKTtpZighcilyZXR1cm4gZDt2YXIgdD1wLHU9dC52ZXJzaW9uLHY9dC5nY2xpZCx4PXQudGltZXN0YW1wLHk9dC5vYSx6PU1hdGgucm91bmQoeC8xRTMpLEM9THIodC5sYWJlbHN8fFtdLFthXSksRD12b2lkIDA7aWYoKEQ9eSk9PW51bGw/MDpELmluY2x1ZGVzKDEpKWlmKHAuemc9PT0iYWciJiYhaC5hZyl7dmFyIEk9e30sRz0oSS5rPXYsSS5pPSIiK3osSS5iPUMsSSk7QXEocixHLDUsYix4KTtoLmFnPSEwfWVsc2UgaWYocC56Zz09PSJnYiImJiFoLmdiKXt2YXIgTj1bdSx6LHZdLmNvbmNhdChDKS5qb2luKCIuIiksUz11cShiLHgsITApO1MuTWM9CkFyKCk7b3EocixOLFMpO2guZ2I9ITB9dmFyIFc9dm9pZCAwO2MmJigoVz15KT09bnVsbD8wOlcuaW5jbHVkZXMoMikpJiZnLnB1c2gobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxwLHtsYWJlbHM6Q30pKX1nLmxlbmd0aCYmbXMoImdjbF9nYiIsZyxiKX1yZXR1cm4gZH1mdW5jdGlvbiBHcyhhLGIpe3ZhciBjPUhyKGIpLGQ9SXIoYSxjKTtpZighZClyZXR1cm4gMDt2YXIgZTtlPWE9PT0iYWciP0pyKGQpOkVyKGQpO2Zvcih2YXIgZj0wLGc9MDtnPGUubGVuZ3RoO2crKylmPU1hdGgubWF4KGYsZVtnXS50aW1lc3RhbXApO3JldHVybiBmfWZ1bmN0aW9uIEhzKGEpe2Zvcih2YXIgYj0wLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpZm9yKHZhciBlPWFbZC52YWx1ZV0sZj0wO2Y8ZS5sZW5ndGg7ZisrKWI9TWF0aC5tYXgoYixOdW1iZXIoZVtmXS50aW1lc3RhbXApKTtyZXR1cm4gYn0KZnVuY3Rpb24gSXMoYSl7dmFyIGI9TWF0aC5tYXgoR3MoImF3IixhKSxIcyhCcihBcigpKT9ScCgpOnt9KSksYz1NYXRoLm1heChHcygiZ2IiLGEpLEhzKEJyKEFyKCkpP1JwKCJfZ2FjX2diIiwhMCk6e30pKTtjPU1hdGgubWF4KGMsR3MoImFnIixhKSk7cmV0dXJuIGM+Yn07dmFyIEpzPVJlZ0V4cCgiXlVBLVxcZCstXFxkKyUzQVtcXHctXSsoPzolMkNbXFx3LV0rKSooPzolM0JVQS1cXGQrLVxcZCslM0FbXFx3LV0rKD86JTJDW1xcdy1dKykqKSokIiksS3M9L15+P1tcdy1dKyg/Olwufj9bXHctXSspKiQvLExzPS9eXGQrXC5mbHNcLmRvdWJsZWNsaWNrXC5uZXQkLyxNcz0vO2dhYz0oW147P10rKS8sTnM9LztnYWNnYj0oW147P10rKS87CmZ1bmN0aW9uIE9zKGEsYil7aWYoTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpKXt2YXIgYz1CLmxvY2F0aW9uLmhyZWYubWF0Y2goYik7cmV0dXJuIGMmJmMubGVuZ3RoPT09MiYmY1sxXS5tYXRjaChKcyk/S2ooY1sxXSl8fCIiOiIifWZvcih2YXIgZD1bXSxlPW0oT2JqZWN0LmtleXMoYSkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXtmb3IodmFyIGc9Zi52YWx1ZSxoPVtdLGw9YVtnXSxuPTA7bjxsLmxlbmd0aDtuKyspaC5wdXNoKGxbbl0uZ2NsaWQpO2QucHVzaChnKyI6IitoLmpvaW4oIiwiKSl9cmV0dXJuIGQubGVuZ3RoPjA/ZC5qb2luKCI7Iik6IiJ9CmZ1bmN0aW9uIFBzKGEsYixjKXtmb3IodmFyIGQ9QnIoQXIoKSk/UnAoIl9nYWNfZ2IiLCEwKTp7fSxlPVtdLGY9ITEsZz1tKE9iamVjdC5rZXlzKGQpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPUVzKCJfZ2FjX2diXyIrbCxhLGIsYyk7Zj1mfHxuLmxlbmd0aCE9PTAmJm4uc29tZShmdW5jdGlvbihwKXtyZXR1cm4gcD09PTF9KTtlLnB1c2gobCsiOiIrbi5qb2luKCIsIikpfXJldHVybntScjpmP2Uuam9pbigiOyIpOiIiLFFyOk9zKGQsTnMpfX1mdW5jdGlvbiBRcyhhKXt2YXIgYj1CLmxvY2F0aW9uLmhyZWYubWF0Y2gobmV3IFJlZ0V4cCgiOyIrYSsiPShbXjs/XSspIikpO3JldHVybiBiJiZiLmxlbmd0aD09PTImJmJbMV0ubWF0Y2goS3MpP2JbMV06dm9pZCAwfQpmdW5jdGlvbiBScyhhKXt2YXIgYj17fSxjLGQsZTtMcy50ZXN0KEIubG9jYXRpb24uaG9zdCkmJihjPVFzKCJnY2xncyIpLGQ9UXMoImdjbHN0IiksZT1RcygiZ2NsbHAiKSk7aWYoYyYmZCYmZSliLkVnPWMsYi5XaD1kLGIuVWg9ZTtlbHNle3ZhciBmPU5iKCksZz1NcigoYXx8Il9nY2wiKSsiX2dzIiksaD1nLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gcC5nY2xpZH0pLGw9Zy5tYXAoZnVuY3Rpb24ocCl7cmV0dXJuIGYtcC50aW1lc3RhbXB9KSxuPWcubWFwKGZ1bmN0aW9uKHApe3JldHVybiBwLm9kfSk7aC5sZW5ndGg+MCYmbC5sZW5ndGg+MCYmbi5sZW5ndGg+MCYmKGIuRWc9aC5qb2luKCIuIiksYi5XaD1sLmpvaW4oIi4iKSxiLlVoPW4uam9pbigiLiIpKX1yZXR1cm4gYn0KZnVuY3Rpb24gU3MoYSxiKXt2YXIgYz1hLnNwbGl0KCIuIiksZD1iP2Iuc3BsaXQoIi4iKTpbXSxlPWQubGVuZ3RoPT09Yy5sZW5ndGg/ZDp2b2lkIDA7cmV0dXJuIGMubWFwKGZ1bmN0aW9uKGYsZyl7dmFyIGg9e2djbGlkOmZ9O2lmKGUpe3ZhciBsPWVbZ10uc3BsaXQoIl8iKTtpZihsLmxlbmd0aD09PTIpe2gucWE9bmV3IGVyKE51bWJlcihsWzBdKSk7dmFyIG47dmFyIHA9TnVtYmVyKGxbMV0pO2lmKHA9PT0wKW49WzBdO2Vsc2V7dmFyIHE9W107cCYxJiZxLnB1c2goMSk7cCYyJiZxLnB1c2goMik7cCY0JiZxLnB1c2goMyk7cCY4JiZxLnB1c2goNCk7cCYxNiYmcS5wdXNoKDUpO249cX1oLm9hPW59fXJldHVybiBofSl9CmZ1bmN0aW9uIFRzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2lmKExzLnRlc3QoQi5sb2NhdGlvbi5ob3N0KSl7dmFyIGU9UXMoYyk7aWYoZSl7aWYoWWYoMTcpKXt2YXIgZj1RcyhjKyJfc3JjIik7cmV0dXJuIFNzKGUsZil9aWYoZCl7dmFyIGc9bmV3IGVyO2ZyKGcsMik7ZnIoZywzKTtyZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpnLG9hOlsxXX19KX1yZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpuZXcgZXIsb2E6WzFdfX0pfX1lbHNle2lmKGI9PT0iZ2NsaWQiKXtmb3IodmFyIGg9RXIoKGF8fCJfZ2NsIikrIl9hdyIsZCksbD1OdW1iZXIoWGZbNF09PT12b2lkIDA/MDpYZls0XSksbj1tKFVzKCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3EudGltZXN0YW1wPmwmJlFyKGgscSl9cmV0dXJuIGh9aWYoYj09PSJ3YnJhaWQiKXJldHVybiBFcigoYXx8CiJfZ2NsIikrIl9nYiIsZCk7aWYoYj09PSJicmFpZHMiKXJldHVybiBHcih7cHJlZml4OmF9LGQpfXJldHVybltdfWZ1bmN0aW9uIFVzKCl7cmV0dXJuKHdxKHZyLmF3LDQpfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLm09PT0iMSJ9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJue2djbGlkOmEuayx0aW1lc3RhbXA6TnVtYmVyKGEuaSksdmVyc2lvbjoiIixvYTpbNV19fSl9ZnVuY3Rpb24gVnMoYSl7Zm9yKHZhciBiPTAsYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2U+MCYmKGJ8PTE8PGUtMSl9cmV0dXJuIGIudG9TdHJpbmcoKX1mdW5jdGlvbiBXcyhhKXtyZXR1cm4gTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpPyEoUXMoImdjbGF3Iil8fFFzKCJnYWMiKSk6SXMoYSl9CmZ1bmN0aW9uIFhzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlO2U9Yz9GcyhhLGIsZCk6RXMoKGImJmIucHJlZml4fHwiX2djbCIpKyJfZ2IiLGEsYix2b2lkIDAsZCk7cmV0dXJuIGUubGVuZ3RoPT09MHx8ZS5ldmVyeShmdW5jdGlvbihmKXtyZXR1cm4gZj09PTB9KT8iIjplLmpvaW4oIi4iKX07CnZhciBZcz1mdW5jdGlvbihhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1raigiYWRzX3BhZ2V2aWV3IixmdW5jdGlvbigpe3JldHVybnt9fSk7aWYoY1thXSlyZXR1cm4hMTtifHwoY1thXT0hMCk7cmV0dXJuITB9LFpzPWZ1bmN0aW9uKGEpe3JldHVybiBTaihhLCJnY2xpZCBkY2xpZCBnYnJhaWQgd2JyYWlkIGdjbGF3IGdjbGRjIGdjbGhhIGdjbGdmIGdjbGdiIF9nbCIuc3BsaXQoIiAiKSwiMCIpfSxhdD1mdW5jdGlvbigpe3ZhciBhPVJqKEEubG9jYXRpb24uaHJlZiksYj12b2lkIDAsYz12b2lkIDAsZD1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfc291cmNlIiksZT1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfY2FtcGFpZ25pZCIpLGYsZz1hLmhhc2gucmVwbGFjZSgiIyIsIiIpLm1hdGNoKCRzKTtmPWc/Z1sxXTp2b2lkIDA7ZCYmZj8oYj1kLGM9MSk6ZD8oYj1kLGM9Mik6ZiYmKGI9ZixjPTMpO3JldHVybntEZzpiLFNyOmMsVGg6ZX19LGJ0PWZ1bmN0aW9uKGEpe3ZhciBiPQpPcCghMSk9PT0xP0EudG9wLmxvY2F0aW9uLmhyZWY6QS5sb2NhdGlvbi5ocmVmO3JldHVybiBhKGIpfSxjdD1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZD1ScihkKTtmb3IodmFyIGU9W10sZj0wO2Y8ZC5sZW5ndGg7ZisrKWUucHVzaChkW2ZdLmdjbGlkKTtlLmxlbmd0aCYmYi5wdXNoKGMrIjoiK2Uuam9pbigiLCIpKX0pO3JldHVybiBiLmpvaW4oIjsiKX0sZXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWR0KGEpO2lmKGQpcmV0dXJuIGQ7dmFyIGU9SHIoYik7aWYoZT09PSJfZ2NsIil7dmFyIGY9IVhvKGZwKSYmYyxnPVtdO2E9PT0iYXciP2c9YXMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKTphPT09ImRjIiYmKGc9ZHMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKSk7aWYoZy5sZW5ndGg+MClyZXR1cm4gZj9be3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsZ2NsaWQ6IjAifV06Zy5tYXAoZnVuY3Rpb24obCl7cmV0dXJue3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsCmdjbGlkOmwudmFsdWUscWE6bC5xYSxvYTpbMV19fSl9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9hPT09ImF3Ij9FcihoLE0oNTYyKSk6WnIoaCk6W119LGR0PWZ1bmN0aW9uKGEpe3ZhciBiPVRqKCJnY2wiK2EpLGM9YT09PSJkYyJ8fGE9PT0iYXciP1RqKCJnY2wiK2ErIl9zcmMiKTp2b2lkIDA7aWYoYilyZXR1cm4gU3MoYixjKX0sZnQ9ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PT0iYXcifHxhPT09ImRjInx8YT09PSJnYiIpe3ZhciBkPVRqKCJnY2wiK2EpO2lmKGQpcmV0dXJuIGQuc3BsaXQoIi4iKX12YXIgZT1IcihiKTtpZihlPT09Il9nY2wiKXt2YXIgZj0hWG8oZnApJiZjLGc7Zz1lcygpW2FdfHxbXTtpZihnLmxlbmd0aD4wKXJldHVybiBmP1siMCJdOmd9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9EcihoKTpbXX0sZ3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKCFSKGEsYil8fCFSKGEsYykpcmV0dXJuIiI7dmFyIGQ9UihhLGIpLnNwbGl0KCIuIiksZT1SKGEsYykuc3BsaXQoIi4iKTtyZXR1cm4gZC5sZW5ndGgmJgplLmxlbmd0aCYmZC5sZW5ndGg9PT1lLmxlbmd0aCYmZFswXSYmZVswXT9kLm1hcChmdW5jdGlvbihmLGcpe3JldHVybiBmKyJfIitlW2ddfSkuam9pbigiLiIpOiIifSwkcz0vXmdhZF9zb3VyY2VbXz1dKFxkKykkLztmdW5jdGlvbiBodChhLGIsYyl7dmFyIGQ9UihhLEYuRC5UYSk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0Iilmb3IodmFyIGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1kW2ddO2lmKGghPT12b2lkIDApe2g9PT1udWxsJiYoaD0iIik7dmFyIGw9ImdhcC4iK2csbj1TdHJpbmcoaCk7Yz9jKGwsbik6YltsXT1ufX19O3ZhciBpdD0hMSxqdD1bXTtmdW5jdGlvbiBrdCgpe2lmKCFpdCl7aXQ9ITA7Zm9yKHZhciBhPWp0Lmxlbmd0aC0xO2E+PTA7YS0tKWp0W2FdKCk7anQ9W119fTtmdW5jdGlvbiBsdChhKXt2YXIgYj1bXSxjPTAsZDtmb3IoZCBpbiBhKWJbYysrXT1hW2RdO3JldHVybiBifTtmdW5jdGlvbiBtdChhLGIsYyl7cmV0dXJuIHR5cGVvZiBhLmFkZEV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iPyhhLmFkZEV2ZW50TGlzdGVuZXIoYixjLCExKSwhMCk6ITF9ZnVuY3Rpb24gbnQoYSxiLGMpe3R5cGVvZiBhLnJlbW92ZUV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iJiZhLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixjLCExKX07ZnVuY3Rpb24gb3QoYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHN8fChhLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cz1bXSk7dmFyIGU9UHAoYS5kb2N1bWVudCk7aWYoYyl7dmFyIGY9ZnVuY3Rpb24oKXtpZihjKXt2YXIgZz1hLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cyxoPURjKGcsZSk7aD49MCYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGcsaCwxKX1udChlLCJsb2FkIixmKTtudChlLCJlcnJvciIsZil9O210KGUsImxvYWQiLGYpO210KGUsImVycm9yIixmKX1kJiYoZS5hdHRyaWJ1dGlvblNyYz0iIik7ZS5zcmM9YjthLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cy5wdXNoKGUpfQpmdW5jdGlvbiBwdChhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz0iaHR0cHM6Ly9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvZ2VuXzIwND9pZD10Y2ZlIjtJcChhLGZ1bmN0aW9uKGQsZSl7aWYoZHx8ZD09PTApYys9IiYiK2UrIj0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoZCkpfSk7cXQoYyxiKX0KZnVuY3Rpb24gcXQoYSxiKXt2YXIgYz13aW5kb3csZDtiPWI9PT12b2lkIDA/ITE6YjtkPWQ9PT12b2lkIDA/ITE6ZDtpZihjLmZldGNoKXt2YXIgZT17a2VlcGFsaXZlOiEwLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixyZWRpcmVjdDoiZm9sbG93IixtZXRob2Q6ImdldCIsbW9kZToibm8tY29ycyJ9O2QmJihlLm1vZGU9ImNvcnMiLCJzZXRBdHRyaWJ1dGlvblJlcG9ydGluZyJpbiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU/ZS5hdHRyaWJ1dGlvblJlcG9ydGluZz17ZXZlbnRTb3VyY2VFbGlnaWJsZToidHJ1ZSIsdHJpZ2dlckVsaWdpYmxlOiJmYWxzZSJ9OmUuaGVhZGVycz17IkF0dHJpYnV0aW9uLVJlcG9ydGluZy1FbGlnaWJsZSI6ImV2ZW50LXNvdXJjZSJ9KTtjLmZldGNoKGEsZSl9ZWxzZSBvdChjLGEsYj09PXZvaWQgMD8hMTpiLGQ9PT12b2lkIDA/ITE6ZCl9O2Z1bmN0aW9uIHJ0KCl7dGhpcy5mYT10aGlzLmZhO3RoaXMuUj10aGlzLlJ9cnQucHJvdG90eXBlLmZhPSExO3J0LnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5mYXx8KHRoaXMuZmE9ITAsdGhpcy5OKCkpfTtydC5wcm90b3R5cGVbU3ltYm9sLmRpc3Bvc2VdPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCl9O3J0LnByb3RvdHlwZS5hZGRPbkRpc3Bvc2VDYWxsYmFjaz1mdW5jdGlvbihhLGIpe3RoaXMuZmE/YiE9PXZvaWQgMD9hLmNhbGwoYik6YSgpOih0aGlzLlJ8fCh0aGlzLlI9W10pLGImJihhPWEuYmluZChiKSksdGhpcy5SLnB1c2goYSkpfTtydC5wcm90b3R5cGUuTj1mdW5jdGlvbigpe2lmKHRoaXMuUilmb3IoO3RoaXMuUi5sZW5ndGg7KXRoaXMuUi5zaGlmdCgpKCl9O2Z1bmN0aW9uIHN0KGEpe2EuYWRkdGxDb25zZW50PT09dm9pZCAwfHx2ZihhLmFkZHRsQ29uc2VudCl8fChhLmFkZHRsQ29uc2VudD12b2lkIDApO2EuZ2RwckFwcGxpZXM9PT12b2lkIDB8fHdmKGEuZ2RwckFwcGxpZXMpfHwoYS5nZHByQXBwbGllcz12b2lkIDApO3JldHVybiBhLnRjU3RyaW5nIT09dm9pZCAwJiYhdmYoYS50Y1N0cmluZyl8fGEubGlzdGVuZXJJZCE9PXZvaWQgMCYmIXVmKGEubGlzdGVuZXJJZCk/MjphLmNtcFN0YXR1cyYmYS5jbXBTdGF0dXMhPT0iZXJyb3IiPzA6M312YXIgdHQ9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306YjtydC5jYWxsKHRoaXMpO3RoaXMuSD1udWxsO3RoaXMuamE9e307dGhpcy55YT0wO3RoaXMuWj1udWxsO3RoaXMuSz1hO3ZhciBjO3RoaXMudGltZW91dE1zPShjPWIudGltZW91dE1zKSE9bnVsbD9jOjUwMDt2YXIgZDt0aGlzLkVqPShkPWIuRWopIT1udWxsP2Q6ITF9O3dhKHR0LHJ0KTsKdHQucHJvdG90eXBlLk49ZnVuY3Rpb24oKXt0aGlzLmphPXt9O3RoaXMuWiYmKG50KHRoaXMuSywibWVzc2FnZSIsdGhpcy5aKSxkZWxldGUgdGhpcy5aKTtkZWxldGUgdGhpcy5qYTtkZWxldGUgdGhpcy5LO2RlbGV0ZSB0aGlzLkg7cnQucHJvdG90eXBlLk4uY2FsbCh0aGlzKX07dmFyIHZ0PWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYS5LLl9fdGNmYXBpPT09ImZ1bmN0aW9uInx8dXQoYSkhPW51bGx9Owp0dC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9e2ludGVybmFsQmxvY2tPbkVycm9yczp0aGlzLkVqfSxkPUhwKGZ1bmN0aW9uKCl7YShjKX0pLGU9MDt0aGlzLnRpbWVvdXRNcyE9PS0xJiYoZT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSI7Yy5pbnRlcm5hbEVycm9yU3RhdGU9MTtkKCl9LHRoaXMudGltZW91dE1zKSk7dmFyIGY9ZnVuY3Rpb24oZyxoKXtjbGVhclRpbWVvdXQoZSk7Zz8oYz1nLGMuaW50ZXJuYWxFcnJvclN0YXRlPXN0KGMpLGMuaW50ZXJuYWxCbG9ja09uRXJyb3JzPWIuRWosaCYmYy5pbnRlcm5hbEVycm9yU3RhdGU9PT0wfHwoYy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsaHx8KGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpKSk6KGMudGNTdHJpbmc9InRjdW5hdmFpbGFibGUiLGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpO2EoYyl9O3RyeXt3dCh0aGlzLCJhZGRFdmVudExpc3RlbmVyIiwKZil9Y2F0Y2goZyl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsYy5pbnRlcm5hbEVycm9yU3RhdGU9MyxlJiYoY2xlYXJUaW1lb3V0KGUpLGU9MCksZCgpfX07dHQucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7YSYmYS5saXN0ZW5lcklkJiZ3dCh0aGlzLCJyZW1vdmVFdmVudExpc3RlbmVyIixudWxsLGEubGlzdGVuZXJJZCl9Owp2YXIgenQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2Q9ZD09PXZvaWQgMD8iNzU1IjpkO3ZhciBlO2E6e2lmKGEucHVibGlzaGVyJiZhLnB1Ymxpc2hlci5yZXN0cmljdGlvbnMpe3ZhciBmPWEucHVibGlzaGVyLnJlc3RyaWN0aW9uc1tiXTtpZihmIT09dm9pZCAwKXtlPWZbZD09PXZvaWQgMD8iNzU1IjpkXTticmVhayBhfX1lPXZvaWQgMH12YXIgZz1lO2lmKGc9PT0wKXJldHVybiExO3ZhciBoPWM7Yz09PTI/KGg9MCxnPT09MiYmKGg9MSkpOmM9PT0zJiYoaD0xLGc9PT0xJiYoaD0wKSk7dmFyIGw7aWYoaD09PTApaWYoYS5wdXJwb3NlJiZhLnZlbmRvcil7dmFyIG49eHQoYS52ZW5kb3IuY29uc2VudHMsZD09PXZvaWQgMD8iNzU1IjpkKTtsPW4mJmI9PT0iMSImJmEucHVycG9zZU9uZVRyZWF0bWVudCYmYS5wdWJsaXNoZXJDQz09PSJDSCI/ITA6biYmeHQoYS5wdXJwb3NlLmNvbnNlbnRzLGIpfWVsc2UgbD0hMDtlbHNlIGw9aD09PTE/YS5wdXJwb3NlJiZhLnZlbmRvcj94dChhLnB1cnBvc2UubGVnaXRpbWF0ZUludGVyZXN0cywKYikmJnh0KGEudmVuZG9yLmxlZ2l0aW1hdGVJbnRlcmVzdHMsZD09PXZvaWQgMD8iNzU1IjpkKTohMDohMDtyZXR1cm4gbH0seHQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4hKCFhfHwhYVtiXSl9LHd0PWZ1bmN0aW9uKGEsYixjLGQpe2N8fChjPWZ1bmN0aW9uKCl7fSk7dmFyIGU9YS5LO2lmKHR5cGVvZiBlLl9fdGNmYXBpPT09ImZ1bmN0aW9uIil7dmFyIGY9ZS5fX3RjZmFwaTtmKGIsMixjLGQpfWVsc2UgaWYodXQoYSkpe0F0KGEpO3ZhciBnPSsrYS55YTthLmphW2ddPWM7aWYoYS5IKXt2YXIgaD17fTthLkgucG9zdE1lc3NhZ2UoKGguX190Y2ZhcGlDYWxsPXtjb21tYW5kOmIsdmVyc2lvbjoyLGNhbGxJZDpnLHBhcmFtZXRlcjpkfSxoKSwiKiIpfX1lbHNlIGMoe30sITEpfSx1dD1mdW5jdGlvbihhKXtpZihhLkgpcmV0dXJuIGEuSDthLkg9TnAoYS5LLCJfX3RjZmFwaUxvY2F0b3IiKTtyZXR1cm4gYS5IfSxBdD1mdW5jdGlvbihhKXtpZighYS5aKXt2YXIgYj1mdW5jdGlvbihjKXtpZihjLnNvdXJjZT09PQphLkgpdHJ5e3ZhciBkO2Q9KHZmKGMuZGF0YSk/SlNPTi5wYXJzZShjLmRhdGEpOmMuZGF0YSkuX190Y2ZhcGlSZXR1cm47YS5qYVtkLmNhbGxJZF0oZC5yZXR1cm5WYWx1ZSxkLnN1Y2Nlc3MpfWNhdGNoKGUpe319O2EuWj1iO210KGEuSywibWVzc2FnZSIsYil9fSxCdD1mdW5jdGlvbihhKXtpZihhLmdkcHJBcHBsaWVzPT09ITEpcmV0dXJuITA7YS5pbnRlcm5hbEVycm9yU3RhdGU9PT12b2lkIDAmJihhLmludGVybmFsRXJyb3JTdGF0ZT1zdChhKSk7cmV0dXJuIGEuY21wU3RhdHVzPT09ImVycm9yInx8YS5pbnRlcm5hbEVycm9yU3RhdGUhPT0wP2EuaW50ZXJuYWxCbG9ja09uRXJyb3JzPyhwdCh7ZTpTdHJpbmcoYS5pbnRlcm5hbEVycm9yU3RhdGUpfSksITEpOiEwOmEuY21wU3RhdHVzIT09ImxvYWRlZCJ8fGEuZXZlbnRTdGF0dXMhPT0idGNsb2FkZWQiJiZhLmV2ZW50U3RhdHVzIT09InVzZXJhY3Rpb25jb21wbGV0ZSI/ITE6ITB9O3ZhciBDdD17MTowLDM6MCw0OjAsNzozLDk6MywxMDozfTtmdW5jdGlvbiBEdCgpe3JldHVybiBraigidGNmIixmdW5jdGlvbigpe3JldHVybnt9fSl9dmFyIEV0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0dChBLHt0aW1lb3V0TXM6LTF9KX07CmZ1bmN0aW9uIEZ0KCl7dmFyIGE9RHQoKSxiPUV0KCk7dnQoYikmJiFHdCgpJiYhSHQoKSYmUCgxMjQpO2lmKCFhLmFjdGl2ZSYmdnQoYikpe0d0KCkmJihhLmFjdGl2ZT0hMCxhLnB1cnBvc2VzPXt9LGEuY21wSWQ9MCxhLnRjZlBvbGljeVZlcnNpb249MCx0bCgpLmFjdGl2ZT0hMCxhLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIik7Y3AoKTt0cnl7Yi5hZGRFdmVudExpc3RlbmVyKGZ1bmN0aW9uKGMpe2lmKGMuaW50ZXJuYWxFcnJvclN0YXRlIT09MClJdChhKSxkcChbRi5ELmthLEYuRC5YYSxGLkQubWFdKSx0bCgpLmFjdGl2ZT0hMDtlbHNlIGlmKGEuZ2RwckFwcGxpZXM9Yy5nZHByQXBwbGllcyxhLmNtcElkPWMuY21wSWQsYS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9Yy5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGUsSHQoKSYmKGEuYWN0aXZlPSEwKSwhSnQoYyl8fEd0KCl8fEh0KCkpe2EudGNmUG9saWN5VmVyc2lvbj1jLnRjZlBvbGljeVZlcnNpb247dmFyIGQ7aWYoYy5nZHByQXBwbGllcz09PQohMSl7dmFyIGU9e30sZjtmb3IoZiBpbiBDdClDdC5oYXNPd25Qcm9wZXJ0eShmKSYmKGVbZl09ITApO2Q9ZTtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoYyl9ZWxzZSBpZihKdChjKSl7dmFyIGc9e30saDtmb3IoaCBpbiBDdClpZihDdC5oYXNPd25Qcm9wZXJ0eShoKSlpZihoPT09IjEiKXt2YXIgbCxuPWMscD17VXI6ITB9O3A9cD09PXZvaWQgMD97fTpwO2w9QnQobik/bi5nZHByQXBwbGllcz09PSExPyEwOm4udGNTdHJpbmc9PT0idGN1bmF2YWlsYWJsZSI/IXAuaWRwY0FwcGxpZXM6KHAuaWRwY0FwcGxpZXN8fG4uZ2RwckFwcGxpZXMhPT12b2lkIDB8fHAuVXIpJiYocC5pZHBjQXBwbGllc3x8dmYobi50Y1N0cmluZykmJm4udGNTdHJpbmcubGVuZ3RoKT96dChuLCIxIiwwKTohMDohMTtnWyIxIl09bH1lbHNlIGdbaF09enQoYyxoLEN0W2hdKTtkPWd9aWYoZCl7YS50Y1N0cmluZz1jLnRjU3RyaW5nfHwidGNlbXB0eSI7YS5wdXJwb3Nlcz1kO3ZhciBxPXt9LHI9KHFbRi5ELmthXT0KYS5wdXJwb3Nlc1siMSJdPyJncmFudGVkIjoiZGVuaWVkIixxKTthLmdkcHJBcHBsaWVzIT09ITA/KGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pLHRsKCkuYWN0aXZlPSEwKToocltGLkQuWGFdPWEucHVycG9zZXNbIjMiXSYmYS5wdXJwb3Nlc1siNCJdPyJncmFudGVkIjoiZGVuaWVkIix0eXBlb2YgYS50Y2ZQb2xpY3lWZXJzaW9uPT09Im51bWJlciImJmEudGNmUG9saWN5VmVyc2lvbj49ND9yW0YuRC5tYV09YS5wdXJwb3Nlc1siMSJdJiZhLnB1cnBvc2VzWyI3Il0/ImdyYW50ZWQiOiJkZW5pZWQiOmRwKFtGLkQubWFdKSxWbyhyLHtldmVudElkOjB9LHtnZHByQXBwbGllczphP2EuZ2RwckFwcGxpZXM6dm9pZCAwLHRjU3RyaW5nOkt0KCl8fCIifSkpfX1lbHNlIGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pfSl9Y2F0Y2goYyl7SXQoYSksZHAoW0YuRC5rYSxGLkQuWGEsRi5ELm1hXSksdGwoKS5hY3RpdmU9ITB9fX0KZnVuY3Rpb24gSXQoYSl7YS50eXBlPSJlIjthLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIn1mdW5jdGlvbiBKdChhKXtyZXR1cm4gYS5ldmVudFN0YXR1cz09PSJ0Y2xvYWRlZCJ8fGEuZXZlbnRTdGF0dXM9PT0idXNlcmFjdGlvbmNvbXBsZXRlInx8YS5ldmVudFN0YXR1cz09PSJjbXB1aXNob3duIn1mdW5jdGlvbiBHdCgpe3JldHVybiBBLmd0YWdfZW5hYmxlX3RjZl9zdXBwb3J0PT09ITB9ZnVuY3Rpb24gSHQoKXtyZXR1cm4gRHQoKS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9PT0hMH1mdW5jdGlvbiBLdCgpe3ZhciBhPUR0KCk7aWYoYS5hY3RpdmUpcmV0dXJuIGEudGNTdHJpbmd9ZnVuY3Rpb24gTHQoKXt2YXIgYT1EdCgpO2lmKGEuYWN0aXZlJiZhLmdkcHJBcHBsaWVzIT09dm9pZCAwKXJldHVybiBhLmdkcHJBcHBsaWVzPyIxIjoiMCJ9CmZ1bmN0aW9uIE10KGEpe2lmKCFDdC5oYXNPd25Qcm9wZXJ0eShTdHJpbmcoYSkpKXJldHVybiEwO3ZhciBiPUR0KCk7cmV0dXJuIGIuYWN0aXZlJiZiLnB1cnBvc2VzPyEhYi5wdXJwb3Nlc1tTdHJpbmcoYSldOiEwfTt2YXIgTnQ9W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV0sT3Q9e30sUHQ9KE90W0YuRC5rYV09MSxPdFtGLkQucmFdPTIsT3QpO2Z1bmN0aW9uIFF0KGEpe2lmKGE9PT12b2lkIDApcmV0dXJuIDA7c3dpdGNoKE8oYSxGLkQuUmMpKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICExOnJldHVybiAzO2RlZmF1bHQ6cmV0dXJuIDJ9fWZ1bmN0aW9uIFJ0KCl7cmV0dXJuKE0oMTgzKT9MZigxNikuc3BsaXQoIn4iKTpMZigxNykuc3BsaXQoIn4iKSkuaW5kZXhPZih6bSgpKSE9PS0xJiZIYy5nbG9iYWxQcml2YWN5Q29udHJvbD09PSEwfWZ1bmN0aW9uIFN0KGEpe2lmKFJ0KCkpcmV0dXJuITE7dmFyIGI9UXQoYSk7aWYoYj09PTMpcmV0dXJuITE7c3dpdGNoKENsKEYuRC5YYSkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2Nhc2UgNDpyZXR1cm4gYj09PTI7Y2FzZSAwOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fQpmdW5jdGlvbiBUdCgpe3JldHVybiBFbCgpfHwhQmwoRi5ELmthKXx8IUJsKEYuRC5yYSl9ZnVuY3Rpb24gVXQoKXt2YXIgYT17fSxiO2ZvcihiIGluIFB0KVB0Lmhhc093blByb3BlcnR5KGIpJiYoYVtQdFtiXV09Q2woYikpO3JldHVybiJHMSIreWYoYVsxXXx8MCkreWYoYVsyXXx8MCl9dmFyIFZ0PXt9LFd0PShWdFtGLkQua2FdPTAsVnRbRi5ELnJhXT0xLFZ0W0YuRC5tYV09MixWdFtGLkQuWGFdPTMsVnQpO2Z1bmN0aW9uIFh0KGEpe3N3aXRjaChhKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICEwOnJldHVybiAzO2Nhc2UgITE6cmV0dXJuIDI7ZGVmYXVsdDpyZXR1cm4gMH19CmZ1bmN0aW9uIFl0KGEpe2Zvcih2YXIgYj0iMSIsYz0wO2M8TnQubGVuZ3RoO2MrKyl7dmFyIGQ9YixlLGY9TnRbY10sZz1BbC5kZWxlZ2F0ZWRDb25zZW50VHlwZXNbZl07ZT1nPT09dm9pZCAwPzA6V3QuaGFzT3duUHJvcGVydHkoZyk/MTJ8V3RbZ106ODt2YXIgaD10bCgpO2guYWNjZXNzZWRBbnk9ITA7dmFyIGw9aC5lbnRyaWVzW2ZdfHx7fTtlPWU8PDJ8WHQobC5pbXBsaWNpdCk7Yj1kKygiIisiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbZV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW1h0KGwuZGVjbGFyZSk8PDR8WHQobC5kZWZhdWx0KTw8MnxYdChsLnVwZGF0ZSldKX12YXIgbj1iLHA9KFJ0KCk/MTowKTw8MyxxPShFbCgpPzE6MCk8PDIscj1RdChhKTtiPW4rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW3B8CnF8cl07cmV0dXJuIGIrPSIiKyIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9zdG9yYWdlPDw0fEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFuYWx5dGljc19zdG9yYWdlPDwyfEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFkX3VzZXJfZGF0YV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iWyhBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM/MTowKTw8MnxBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9wZXJzb25hbGl6YXRpb25dfWZ1bmN0aW9uIFp0KCl7cmV0dXJuIEJsKEYuRC5tYSk/ImEiOiItIn1mdW5jdGlvbiAkdCgpe3JldHVybiBCbSgpfHwoR3QoKXx8SHQoKSkmJkx0KCk9PT0iMSI/IjEiOiIwIn0KZnVuY3Rpb24gYXUoKXtyZXR1cm4oQm0oKT8hMDohKCFHdCgpJiYhSHQoKSkmJkx0KCk9PT0iMSIpfHwhQmwoRi5ELm1hKX0KZnVuY3Rpb24gYnUoKXt2YXIgYT0iMCIsYj0iMCIsYzt2YXIgZD1EdCgpO2M9ZC5hY3RpdmU/ZC5jbXBJZDp2b2lkIDA7dHlwZW9mIGM9PT0ibnVtYmVyIiYmYz49MCYmYzw9NDA5NSYmKGE9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2M+PjYmNjNdLGI9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2MmNjNdKTt2YXIgZT0iMCIsZjt2YXIgZz1EdCgpO2Y9Zy5hY3RpdmU/Zy50Y2ZQb2xpY3lWZXJzaW9uOnZvaWQgMDt0eXBlb2YgZj09PSJudW1iZXIiJiZmPj0wJiZmPD02MyYmKGU9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2ZdKTt2YXIgaD0wO0JtKCkmJihofD0xKTtMdCgpPT09IjEiJiYoaHw9Mik7R3QoKSYmKGh8PTQpO3ZhciBsO3ZhciBuPUR0KCk7bD1uLmVuYWJsZUFkdmVydGlzZXJDb25zZW50TW9kZSE9PQp2b2lkIDA/bi5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU/IjEiOiIwIjp2b2lkIDA7bD09PSIxIiYmKGh8PTgpO3RsKCkud2FpdFBlcmlvZFRpbWVkT3V0JiYoaHw9MTYpO3JldHVybiIxIithK2IrZSsiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbaF19O3ZhciBjdT17VUE6MSxBVzoyLERDOjMsRzo0LEdGOjUsR1Q6MTIsR1RNOjE0LEhBOjYsTUM6N307CmZ1bmN0aW9uIGR1KGEpe2E9YT09PXZvaWQgMD97fTphO3ZhciBiPUUoNSkuc3BsaXQoIi0iKVswXS50b1VwcGVyQ2FzZSgpLGMsZD17Y3RpZDpFKDUpLERvOkpmKDE1KSxJbzpFKDE0KSxMczpJZig3KT8yOjEsRHQ6YS5wZixjYW5vbmljYWxJZDpFKDYpLG50OihjPUFrKCkpPT1udWxsP3ZvaWQgMDpjLmNhbm9uaWNhbENvbnRhaW5lcklkLEV0OmEuVGc9PT12b2lkIDA/dm9pZCAwOmEuVGc/MTA6MTJ9O2QuY2Fub25pY2FsSWQhPT1hLm1jJiYoZC5tYz1hLm1jKTt2YXIgZT14aygpO2QuVXM9ZT9lLmNhbm9uaWNhbENvbnRhaW5lcklkOnZvaWQgMDtJZig0NSk/KGQuaGk9Y3VbYl0sZC5oaXx8KGQuaGk9MCkpOmQuaGk9RGo/MTM6MTA7SWYoNDcpPyhkLmJrPTAsZC5xcj0yKTpJZig1MCk/ZC5iaz0xOmQuYms9Mzt2YXIgZj1hLGc9ezY6ITF9O0pmKDU0KT09PTI/Z1s3XT0hMDpKZig1NCk9PT0xJiYoZ1syXT0hMCk7aWYoS2Mpe3ZhciBoPUxqKFJqKEtjKSwiaG9zdCIpO2gmJihnWzhdPQpoLm1hdGNoKC9eKHd3d1wuKT9nb29nbGV0YWdtYW5hZ2VyXC5jb20kLyk9PT1udWxsKX12YXIgbDtnWzldPShsPWYuZWYpIT1udWxsP2w6ITE7dmFyIG49RmsoKSxwO2dbMTBdPShwPW49PW51bGw/dm9pZCAwOm4uZnJvbUNvbnRhaW5lckV4ZWN1dGlvbikhPW51bGw/cDohMTtkLnpyPWc7cmV0dXJuIENmKGQsYS5Qbil9Owp2YXIgZnU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9bShldShhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWUsZj1SKGEsZSksZz1RKGEsSC5KLlllKTtNKDU4OSkmJmcmJihlPT09Ri5ELnphfHxlPT09Ri5ELlVhfHxlPT09Ri5ELlBlKSYmdHlwZW9mIGY9PT0ic3RyaW5nIiYmKGY9WnMoZikpO3ZhciBoPW9wKGUsZik7aCYmKCFnfHxlIT09Ri5ELkRkJiZlIT09Ri5ELktkJiZlIT09Ri5ELkVlJiZlIT09Ri5ELkJmfHwoaC52YWx1ZT0iMCIpLE0oNTA0KSYmKGU9PT1GLkQuTWQ/aC5rZXk9ImV2bmlkIjplPT09Ri5ELk5kJiYoaC5rZXk9ImV4Y2lkIikpLGJbaC5rZXldPWgudmFsdWUpfWIuZ3RtPWR1KHttYzpRKGEsSC5KLk5iKSxUZzphLk0uaXNHdG1FdmVudCxlZjpRKGEsSC5KLkNjKX0pO1R0KCkmJihiLmdjcz1iLmdjc3x8VXQoKSk7Yi5nY2Q9Yi5nY2R8fFl0KGEuTSk7YXUoKSYmKGIuZG1hX2Nwcz1adCgpKTtiLmRtYT0kdCgpO3Z0KEV0KCkpJiYKKGIudGNmZD1idSgpKTt2YXIgbD1DcChhKTtsJiYoYi50YWdfZXhwPWwpO2lmKFEoYSxILkouQmspKXtiLnRmdD1TdHJpbmcoTmIoKSk7dmFyIG49cGQoKTtuIT09dm9pZCAwJiYoYi50ZmQ9U3RyaW5nKE1hdGgucm91bmQobikpKX1iLmFwdmU9IjEiO2IuYXB2Zj1uZCgpPyJmIjoibmYiO2ZvLkhbY28uaWEuY2JdIT09Ym8uTWEuVWV8fGZvLktbY28uaWEuY2JdLmlzQ29uc2VudEdyYW50ZWQoKXx8KGIubGltaXRlZF9hZHM9IjEiKTt2YXIgcD1RKGEsSC5KLlhnKTtNKDQ3NCkmJnAhPW51bGwmJnAhPT0iIiYmKGIuX2dzaWQ9cCk7aHQoYSxiLGZ1bmN0aW9uKHEscil7YltxXT1lbmNvZGVVUklDb21wb25lbnQocil9KTtyZXR1cm4gYn07dmFyIGd1PWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5lbmRwb2ludD1hO3RoaXMuZmE9Yzt0aGlzLmphPWQ7dGhpcy5wYXJhbWV0ZXJFbmNvZGluZz1lO3RoaXMuWj1iLnNsaWNlKCl9O2d1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIFhvKHRoaXMuWil9O2d1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtndS5wcm90b3R5cGUuUj1mdW5jdGlvbigpe3ZhciBhPU1tW3RoaXMuZW5kcG9pbnRdKHZvaWQgMCk7cmV0dXJuIFNiKGEsImh0dHBzOi8vIik/YS5zdWJzdHJpbmcoOCk6U2IoYSwiaHR0cDovLyIpP2Euc3Vic3RyaW5nKDcpOmF9O3ZhciBodT1mdW5jdGlvbihhLGIpe3RoaXMubWV0aG9kTmFtZT1hO3RoaXMuUj1ifTtodS5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKHRoaXMuaXNTdXBwb3J0ZWQoKSlpZigoYz09bnVsbD92b2lkIDA6Yy5ib2R5KT09PXZvaWQgMHx8dGhpcy5IKCkpdHJ5e3RoaXMuSyhhLGIsYyl9Y2F0Y2goZCl7YS5yZChkKX1lbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgZG9lcyBub3Qgc3VwcG9ydCBhIHJlcXVlc3QgYm9keS4iKTtlbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgaXMgbm90IHN1cHBvcnRlZC4iKX07dmFyIGl1PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJJbWFnZVBpeGVsIiwzKX07d2EoaXUsaHUpO2l1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtpdS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTsKaXUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe1pjKGIsZnVuY3Rpb24oKXthLmpmKCl9LGZ1bmN0aW9uKCl7YS5vbkZhaWx1cmUodm9pZCAwKX0sYz09bnVsbD92b2lkIDA6Yy5hZil9O3ZhciBqdT1mdW5jdGlvbigpe2h1LmNhbGwodGhpcywiU2VuZEJlYWNvbiIsMSl9O3dhKGp1LGh1KTtqdS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4ga2QoKX07anUucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07anUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe2pkKGIsYz09bnVsbD92b2lkIDA6Yy5ib2R5KT9hLmpmKCk6YS5yZCh2b2lkIDApfTt2YXIga3U9ZnVuY3Rpb24oKXtodS5jYWxsKHRoaXMsIkZldGNoIiwxKX07d2Eoa3UsaHUpO2t1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiB5YihBLmZldGNoKX07a3UucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07Cmt1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtBLmZldGNoKGIsYz09bnVsbD92b2lkIDA6Yy5HYikudGhlbihmdW5jdGlvbihkKXtpZihkLm9rKWEucGUoZCk7ZWxzZSBpZihkLnN0YXR1cz09PTApYS5qZigpO2Vsc2UgYS5vbkZhaWx1cmUoIkZldGNoIGZhaWxlZCB3aXRoIHN0YXR1cyBjb2RlICIrZC5zdGF0dXMrIi4iKX0pLmNhdGNoKGZ1bmN0aW9uKGQpe2EucmQoZCl9KX07dmFyIGx1PW5ldyBpdSxtdT1uZXcganUsbnU9bmV3IGt1O3ZhciBvdT1mdW5jdGlvbigpe307b3UucHJvdG90eXBlLks9ZnVuY3Rpb24oKXtyZXR1cm5bXX07CnZhciBwdT1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXTpiO2d1LmNhbGwodGhpcyxhLGIsMSwhMCwyKX07d2EocHUsZ3UpO3B1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe2lmKHRoaXMuWi5sZW5ndGgpe3ZhciBiPVEoYSxILkouRGspO2lmKGIhPT12b2lkIDApcmV0dXJuIGJ9cmV0dXJuIGd1LnByb3RvdHlwZS5LLmNhbGwodGhpcyxhKX07cHUucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdShhKTthLnRhcmdldC5kZXN0aW5hdGlvbklkJiYoYy50aWQ9YS50YXJnZXQuZGVzdGluYXRpb25JZCk7Yi5tZXRob2QgaW5zdGFuY2VvZiBrdT9jLmZtdD0iOCI6Yi5tZXRob2QgaW5zdGFuY2VvZiBqdT9jLmZtdD0iNSI6Yi5tZXRob2QgaW5zdGFuY2VvZiBpdSYmKGMuZm10PSIzIik7cmV0dXJuIGN9O3B1LnByb3RvdHlwZS55YT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTihhLGIpO3JldHVybiI/IitPYmplY3Qua2V5cyhjKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQrCiI9IitjW2RdfSkuam9pbigiJiIpfTtwdS5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy55YShhLGIpLGU9e307aWYoYi5tZXRob2QgaW5zdGFuY2VvZiBrdSl7ZS5HYj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGxkKTtpZih0aGlzLmVuZHBvaW50PT09NTh8fHRoaXMuZW5kcG9pbnQ9PT01NyllLkdiLm1ldGhvZD0iR0VUIjt0aGlzLmVuZHBvaW50IT09NDV8fHF1LksoYSl8fChlLkdiLmNyZWRlbnRpYWxzPSJvbWl0IixkKz0iJmdhcC51Y2ZiPTEiKX1jKGQsZSl9O3ZhciBxdT1uZXcgcHUoNDUpLHJ1PW5ldyBwdSg0NSxbXSksc3U9bmV3IHB1KDQ2LFtdKSx0dT1mdW5jdGlvbigpe3B1LmNhbGwodGhpcyw2OSl9O3dhKHR1LHB1KTt0dS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oYSl7dmFyIGI9TSg0NzQpJiYoISFSKGEsIl9nc2lkIil8fCEhUShhLEguSi5YZykpLGM9UihhLEYuRC5IZCkhPT0iMSImJighIVIoYSwiZ2NsaWQiKXx8CiEhUihhLCJkY2xpZCIpfHwhIVIoYSwiZ2Nsc3JjIil8fCEhUihhLCJhdWlkIikpO3JldHVybiBifHxjfTt0dS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1KGEpLGQ9bHAoYSxjKXx8e307T2JqZWN0LmtleXMoZCkubGVuZ3RoPjAmJihiLm1ldGhvZCBpbnN0YW5jZW9mIGt1P2QuZm10PSI4IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGp1P2QuZm10PSI1IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGl1JiYoZC5mbXQ9IjMiKSk7cmV0dXJuIGR9O3ZhciB1dT1uZXcgdHUsdnU9ZnVuY3Rpb24oKXtwdS5jYWxsKHRoaXMsNDUpfTt3YSh2dSxwdSk7dnUucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2cvZC9jY20vY29sbGVjdCJ9O3Z1LnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9cHUucHJvdG90eXBlLk4uY2FsbCh0aGlzLGEsYik7Y1siZ2FwLjFwZmIiXT0iMSI7cmV0dXJuIGN9O3ZhciB3dT1mdW5jdGlvbihhKXtwdS5jYWxsKHRoaXMsYSxbImFkX3N0b3JhZ2UiLAoiYWRfdXNlcl9kYXRhIl0pfTt3YSh3dSxwdSk7d3UucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1wdS5wcm90b3R5cGUuTi5jYWxsKHRoaXMsYSxiKTtyZXR1cm4gaHAoYyl9O3ZhciB4dT1uZXcgd3UoNTgpLHl1PW5ldyB3dSg1NyksenU9ZnVuY3Rpb24oKXt9O3dhKHp1LG91KTt6dS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj1xdS5LKGEpLGM9Yj9xdTpzdSxkPVt7ZW5kcG9pbnQ6YyxtZXRob2Q6bmQoKT9udTptdX0se2VuZHBvaW50OmMsbWV0aG9kOmx1fV07Yj9NKDUxNykmJklmKDQ3KSYmZC5wdXNoKHtlbmRwb2ludDpuZXcgdnUsbWV0aG9kOm51fSk6TSg2MDApJiZkLnB1c2goe2VuZHBvaW50OnJ1LG1ldGhvZDpudX0pO3JldHVybiBkfTt6dS5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPSEhUShhLEguSi52ZCksZD1SKGEsRi5ELlBkKT09PSIxIixlPVIoYSxGLkQuSGQpPT09IjEiLGY9cXUuSyhhKSxnPWMmJmQmJiFlJiZmO2lmKGcpe3ZhciBoPQpRYygpfHxPYygpP3h1Onl1O2IucHVzaChbe2VuZHBvaW50OmgsbWV0aG9kOm51fSx7ZW5kcG9pbnQ6aCxtZXRob2Q6bHV9XSl9ZiYmKGd8fFEoYSxILkouaGQpKSYmYi5wdXNoKFt7ZW5kcG9pbnQ6dXUsbWV0aG9kOm5kKCk/bnU6bHV9XSk7cmV0dXJuIGJ9O3ZhciBBdT1uZXcgenU7dmFyIFQ9e1c6e0prOjEsbmo6MixGazozLG1sOjQsR2s6NSx5ZDo2LGtsOjcsTXE6OCxxbjo5LEhrOjEwLElrOjExLEZoOjEyLERtOjEzLEFtOjE0LENtOjE1LHptOjE2LEJtOjE3LHltOjE4LFRvOjE5LHhxOjIwLHlxOjIxLGZqOjIyLHVuOjI0LE9tOjI1LFNrOjI2LFRrOjI3LFJrOjI4LFVrOjI5LHJqOjMwLE9rOjMxLFpvOjMyfX07VC5XW1QuVy5Ka109IkFMTE9XX0lOVEVSRVNUX0dST1VQUyI7VC5XW1QuVy5ual09IlNFUlZFUl9DT05UQUlORVJfVVJMIjtULldbVC5XLkZrXT0iQURTX0RBVEFfUkVEQUNUSU9OIjtULldbVC5XLm1sXT0iQ1VTVE9NRVJfTElGRVRJTUVfVkFMVUUiO1QuV1tULlcuR2tdPSJBTExPV19DVVNUT01fU0NSSVBUUyI7VC5XW1QuVy55ZF09IkFOWV9DT09LSUVfUEFSQU1TIjtULldbVC5XLmtsXT0iQ09PS0lFX0VYUElSRVMiO1QuV1tULlcuTXFdPSJMRUdBQ1lfRU5IQU5DRURfQ09OVkVSU0lPTl9KU19WQVJJQUJMRSI7VC5XW1QuVy5xbl09IlJFU1RSSUNURURfREFUQV9QUk9DRVNTSU5HIjsKVC5XW1QuVy5Ia109IkFMTE9XX0RJU1BMQVlfRkVBVFVSRVMiO1QuV1tULlcuSWtdPSJBTExPV19HT09HTEVfU0lHTkFMUyI7VC5XW1QuVy5GaF09IkdFTkVSQVRFRF9UUkFOU0FDVElPTl9JRCI7VC5XW1QuVy5EbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOS05PV04iO1QuV1tULlcuQW1dPSJGTE9PRExJR0hUX0NPVU5USU5HX01FVEhPRF9TVEFOREFSRCI7VC5XW1QuVy5DbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOSVFVRSI7VC5XW1QuVy56bV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1BFUl9TRVNTSU9OIjtULldbVC5XLkJtXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfVFJBTlNBQ1RJT05TIjtULldbVC5XLnltXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfSVRFTVNfU09MRCI7VC5XW1QuVy5Ub109IkFEU19PR1RfVjFfVVNBR0UiO1QuV1tULlcueHFdPSJGT1JNX0lOVEVSQUNUSU9OX1BFUk1JU1NJT05fREVOSUVEIjsKVC5XW1QuVy55cV09IkZPUk1fU1VCTUlUX1BFUk1JU1NJT05fREVOSUVEIjtULldbVC5XLmZqXT0iTUlDUk9UQVNLX05PVF9TVVBQT1JURUQiO1QuV1tULlcudW5dPSJTRVRfRU5DUllQVEVEX0RBVEFfVE9fQ0FDSEUiO1QuV1tULlcuT21dPSJHRVRfRU5DUllQVEVEX0RBVEFfRlJPTV9DQUNIRSI7VC5XW1QuVy5Ta109IkNPTkZJR19ERVRFQ1RFRF9XSVRIX05PX1BBUkFNIjtULldbVC5XLlRrXT0iQ09ORklHX0RFVEVDVEVEX1dJVEhfUEFSQU0iO1QuV1tULlcuUmtdPSJDT05GSUdfQ09OU0VOVF9TRVRfQkVGT1JFIjtULldbVC5XLlVrXT0iQ09ORklHX1NFVF9VU0VEX0JFRk9SRSI7VC5XW1QuVy5yal09IlNIQURPV19ET01fQVVUT19QSUkiO1QuV1tULlcuT2tdPSJDQ0RfVVNFUl9EQVRBX1dFQl9PTl9DT05GSUciO1QuV1tULlcuWm9dPSJCTEVOREVEX1VTRVJfREFUQSI7dmFyIEJ1PXt9LEN1PShCdVtGLkQudWldPVQuVy5KayxCdVtGLkQuZGRdPVQuVy5uaixCdVtGLkQueWNdPVQuVy5uaixCdVtGLkQubWJdPVQuVy5GayxCdVtGLkQuR2VdPVQuVy5tbCxCdVtGLkQucmldPVQuVy5HayxCdVtGLkQuSmRdPVQuVy55ZCxCdVtGLkQubmJdPVQuVy55ZCxCdVtGLkQuTGJdPVQuVy55ZCxCdVtGLkQuSWRdPVQuVy55ZCxCdVtGLkQudmNdPVQuVy55ZCxCdVtGLkQuVGJdPVQuVy55ZCxCdVtGLkQuQ2JdPVQuVy5rbCxCdVtGLkQuV2JdPVQuVy5xbixCdVtGLkQuaGhdPVQuVy5IayxCdVtGLkQuU2NdPVQuVy5JayxCdSksRHU9e30sRXU9KER1LnVua25vd249VC5XLkRtLER1LnN0YW5kYXJkPVQuVy5BbSxEdS51bmlxdWU9VC5XLkNtLER1LnBlcl9zZXNzaW9uPVQuVy56bSxEdS50cmFuc2FjdGlvbnM9VC5XLkJtLER1Lml0ZW1zX3NvbGQ9VC5XLnltLER1KTt2YXIgRnU9ZnVuY3Rpb24oYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3NiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsYik7YyYmKGEuSFtiXT0hMCl9LHZiPW5ldyBmdW5jdGlvbigpe3RoaXMuSD1bXX07ZnVuY3Rpb24gR3UoYSl7RnUodmIsYSwhMSl9ZnVuY3Rpb24gSHUoYSxiKXt2YXIgYz1iPT09dm9pZCAwPyExOmIsZD12YjtjPWM9PT12b2lkIDA/ITE6Yztmb3IodmFyIGU9T2JqZWN0LmtleXMoYSksZj1tKE9iamVjdC5rZXlzKEN1KSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7ZS5pbmNsdWRlcyhoKSYmRnUoZCxDdVtoXSxjKX19O2Z1bmN0aW9uIEl1KGEsYil7YT9hLnRoZW4oYik6Yih2b2lkIDApfWZ1bmN0aW9uIEp1KGEpe3JldHVybiBQcm9taXNlLmFsbFNldHRsZWQoYSkudGhlbihmdW5jdGlvbihiKXtyZXR1cm4gYi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGMuc3RhdHVzPT09ImZ1bGZpbGxlZCJ9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGMudmFsdWV9KX0pfWZ1bmN0aW9uIEt1KCl7dmFyIGEsYjtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZShmdW5jdGlvbihjLGQpe2E9YztiPWR9KSxyZXNvbHZlOmEscmVqZWN0OmJ9fTtmdW5jdGlvbiBMdShhLGIsYyxkLGUsZil7dmFyIGc9Yy5zbGljZSgpLGg7ZD09bnVsbHx8KGg9ZC51dik9PW51bGx8fGguY2FsbChkLGEsYixjLGUpO3ZhciBsPUt1KCksbj1sLnByb21pc2UscD1sLnJlc29sdmUscT1bXSxyPWZ1bmN0aW9uKCl7cChxKTt2YXIgdTtkPT1udWxsfHwodT1kLlJzKT09bnVsbHx8dS5jYWxsKGQsYSxiLGMsZSxxKX0sdD1mdW5jdGlvbigpe3ZhciB1PWcuc2hpZnQoKTt1P3UubWV0aG9kLmlzU3VwcG9ydGVkKCk/TXUoYSxiLHUuZW5kcG9pbnQsZCxxLHUubWV0aG9kLGUsZix0LHIpOnQoKTpyKCl9O3QoKTtyZXR1cm4gbn0KZnVuY3Rpb24gTXUoYSxiLGMsZCxlLGYsZyxoLGwsbil7dmFyIHA9Yy5SKGEpLHE9e3RrOmIsZW5kcG9pbnQ6Yyxpc1ByaW1hcnk6ZyxzYjp2b2lkIDAscGs6ZixqdDp7fX0scj0hMSx0PWZ1bmN0aW9uKHosQyl7aWYocilQKDE4Nyk7ZWxzZSBpZihyPSEwLCF1KXt2YXIgRD1DfHx7fSxJPUQuYm9keSxHPUQuR2IsTj1ELmFmO0M9T2JqZWN0LmZyZWV6ZShuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LEk/e2JvZHk6SX06e30sRz97R2I6R306e30sTj97YWY6Tn06e30pKTtpZihJJiYhZi5IKCkpeCgpLGwoKTtlbHNle3ZhciBTPU51KHopLFc9cFswXT09PSIvIj8iIitwK1M6Imh0dHBzOi8vIitwK1M7cS5zYj1XO3EuanQ9Qzt2YXIgZWE7ZD09bnVsbHx8KGVhPWQuU3MpPT1udWxsfHxlYS5jYWxsKGQsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHEpKTt2YXIgamE9e2Rlc3RpbmF0aW9uSWQ6YS50YXJnZXQuZGVzdGluYXRpb25JZCxlbmRwb2ludDpjLmVuZHBvaW50LApldmVudElkOmEuTS5ldmVudElkLHByaW9yaXR5SWQ6YS5NLnByaW9yaXR5SWR9O2YuUj09PXZvaWQgMHx8Yy5mYSE9PTImJihjLmZhIT09MXx8ZS5sZW5ndGgpfHxrbi5yZWdpc3RlcihqYSxmLlIsVyk7dmFyIGZhPWZ1bmN0aW9uKGRhLG1hKXt4KCk7aWYocS5zdGF0dXMhPT12b2lkIDApcmV0dXJuIFAoMTkyKSwhMTtxLnN0YXR1cz1kYTtlLnB1c2gocSk7dmFyIFBhO2Q9PW51bGx8fChQYT1kLnVvKT09bnVsbHx8UGEuY2FsbChkLGEsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxxKSxtYSk7cmV0dXJuITB9LHNhPXtGbzpqYSxyZDpmdW5jdGlvbigpe2ZhKDIpJiZsKCl9LG9uRmFpbHVyZTpmdW5jdGlvbigpe2ZhKDMpJiZsKCl9LHBlOmZ1bmN0aW9uKGRhKXtmYShkYS5zdGF0dXM9PT0wPzE6ZGEub2s/MDozLGRhKSYmbigpfSxqZjpmdW5jdGlvbigpe2ZhKDEpJiZuKCl9fTtPdShjLGEsVyxTLEkpO2Yuc2VuZFJlcXVlc3Qoc2EsVyxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LAp7fSxJJiZ7Ym9keTpJfSxHJiZ7R2I6R30sTiYme2FmOk59KSl9fX0sdT0hMSx2LHg9ZnVuY3Rpb24oKXt2IT09dm9pZCAwJiYoQS5jbGVhclRpbWVvdXQodiksdj12b2lkIDApfTtNKDU3NCkmJih2PUEuc2V0VGltZW91dChmdW5jdGlvbigpe3Y9dm9pZCAwO3U9ITA7aWYocS5zdGF0dXM9PT12b2lkIDApe3Euc3RhdHVzPTQ7cS5zYj09PXZvaWQgMCYmKHEuc2I9IltmYWlsZWQgdG8gYnVpbGRdICIrcCk7ZS5wdXNoKHEpO3ZhciB6O2Q9PW51bGx8fCh6PWQudW8pPT1udWxsfHx6LmNhbGwoZCxhLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scSksdm9pZCAwKTtsKCl9fSw1RTMpKTt2YXIgeT17SWM6cCxtZXRob2Q6Zix5djplLGlzUHJpbWFyeTpnLEN0Omh9O3RyeXtjLkgoYSx5LHQpfWNhdGNoKHope3goKSxQKDE4OCksbCgpfX0KZnVuY3Rpb24gT3UoYSxiLGMsZCxlKXtpZihhLmphKXt2YXIgZj1iLnRhcmdldC5kZXN0aW5hdGlvbklkLGc9YS5lbmRwb2ludDtpZihnPT09NDV8fGc9PT00Nnx8Zz09PTY5fHxnPT09NTh8fGc9PT01Nyl7dmFyIGg9L1s/Jl10aWRzPShbXiZdKykvLmV4ZWMoZCk7Zj1oP2RlY29kZVVSSUNvbXBvbmVudChoWzFdKS5zcGxpdCgifiIpOltmXX1NbCh7dGFyZ2V0SWQ6ZixyZXF1ZXN0Om5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30se3VybDpjLHBhcmFtZXRlckVuY29kaW5nOmEucGFyYW1ldGVyRW5jb2RpbmcsZW5kcG9pbnQ6YS5lbmRwb2ludH0sZT97cG9zdEJvZHk6ZX06e30pLHFiOntldmVudElkOmIuTS5ldmVudElkLHByaW9yaXR5SWQ6Yi5NLnByaW9yaXR5SWR9LEZqOntldmVudElkOlEoYixILkoudWYpLHByaW9yaXR5SWQ6UShiLEguSi52Zil9fSl9fQpmdW5jdGlvbiBOdShhKXtyZXR1cm4gYSYmYSE9PSI/Ij9hWzBdIT09Ij8iPyI/Ii5jb25jYXQoYSk6YToiIn07ZnVuY3Rpb24gUHUoYSxiLGMsZCxlKXt2YXIgZjtlPT1udWxsfHwoZj1lLnZ2KT09bnVsbHx8Zi5jYWxsKGUsYSxiKTtpZighYy5sZW5ndGgpe3ZhciBnO2U9PW51bGx8fChnPWUuVHMpPT1udWxsfHxnLmNhbGwoZSxhLGIsW10pO3JldHVybiBQcm9taXNlLnJlc29sdmUoW10pfXZhciBoPVtdLGw9e3RrOmIsbWs6YyxqazpkfTtoLnB1c2goTHUoYSxiLGMsZSwhMCxsKSk7Zm9yKHZhciBuPW0oZCkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpaC5wdXNoKEx1KGEsYixwLnZhbHVlLGUsITEsbCkpO3JldHVybiBKdShoKS50aGVuKGZ1bmN0aW9uKHEpe2Zvcih2YXIgcj1bXSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpci5wdXNoLmFwcGx5KHIsdyh1LnZhbHVlKSk7dmFyIHY7ZT09bnVsbHx8KHY9ZS5Ucyk9PW51bGx8fHYuY2FsbChlLGEsYixyKTtyZXR1cm4gcn0pfTtmdW5jdGlvbiBRdShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2I9PW51bGx8fChkPWIud3YpPT1udWxsfHxkLmNhbGwoYixhLGMpO2Zvcih2YXIgZT1bXSxmPW0oYyksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpZS5wdXNoKFJ1KGEsZy52YWx1ZSkpO2Zvcih2YXIgaD1bXSxsPW0oZSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7aC5wdXNoKFB1KGEscC50ayxwLm1rLHAuamssYikpfUp1KGgpLnRoZW4oZnVuY3Rpb24ocSl7Zm9yKHZhciByPVtdLHQ9bShxKSx1PXQubmV4dCgpOyF1LmRvbmU7dT10Lm5leHQoKSlyLnB1c2guYXBwbHkocix3KHUudmFsdWUpKTt2YXIgdjtiPT1udWxsfHwodj1iLlFzKT09bnVsbHx8di5jYWxsKGIsYSxjLHIpfSl9CmZ1bmN0aW9uIFJ1KGEsYil7dmFyIGM9ZnVuY3Rpb24oZil7cmV0dXJuIGYubWV0aG9kLmlzU3VwcG9ydGVkKCkmJmYuZW5kcG9pbnQuaXNTdXBwb3J0ZWQoYSkmJmYuZW5kcG9pbnQuSyhhKX0sZD0oYi5IKGEpfHxbXSkuZmlsdGVyKGMpLGU9W107ZC5sZW5ndGgmJihlPShiLksoYSl8fFtdKS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuZmlsdGVyKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmLmxlbmd0aD4wfSkpO3JldHVybnt0azpiLG1rOmQsams6ZX19Owp2YXIgU3U9ZnVuY3Rpb24oYSxiKXtpZihNKDUxNykmJklmKDQ3KSYmYT09PTQ1KXJldHVybiBYaigpKyIvZy9kL2NjbS9jb2xsZWN0PyIrYi5zcGxpdCgiPyIpWzFdKyImZ2FwLjFwZmI9MSJ9LFd1PWZ1bmN0aW9uKCl7dmFyIGE9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGEubGVuZ3RoKXtmb3IodmFyIGI9e30sYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9VHUoZS5rZSwiYXB2YyIpLGc9VHUoZS5rZSwidGZ0IiksaD1UdShlLmtlLCJ0ZmQiKSxsPVR1KGUua2UsInRpZCIpLG49Tm0oZS5lbmRwb2ludCxlLmtlKSxwPWJbbl09YltuXXx8e3hrOltdLFpoOltdfTtwLlpoLnB1c2goZSk7bD8ocC54ay5wdXNoKGwpLHAudWR8fChwLnVkPWwpKTpwLnhrLnB1c2goIiIpO2Y9PT0iMSImJihwLlFuPSEwKTtpZihnfHxoKXAuTm49ITB9YS5sZW5ndGg9MDtmb3IodmFyIHE9bShPYmplY3Qua2V5cyhiKSkscj1xLm5leHQoKSx0PXt9OyFyLmRvbmU7dD0Ke3lrOnZvaWQgMH0scj1xLm5leHQoKSl7dmFyIHU9ci52YWx1ZSx2PWJbdV07dC55az12LnhrO3ZhciB4PXQueWsuZmlsdGVyKGZ1bmN0aW9uKEQpe3JldHVybiBmdW5jdGlvbihJLEcpe3JldHVybiBELnlrLmluZGV4T2YoSSk9PT1HfX0odCkpLmZpbHRlcihmdW5jdGlvbihEKXtyZXR1cm4hIUR9KTtpZihNKDQyNykpe3ZhciB5PVV1KHYseCk7UXUoeSx2b2lkIDAsQXUpfWVsc2V7dmFyIHo9dSsiJmFwdmM9Iisodi5Rbj8iMSI6IjAiKTt4Lmxlbmd0aCYmKHorPSImdGlkcz0iK3guam9pbigifiIpKTt2LnVkJiYoeis9IiZ0aWQ9Iit2LnVkKTtpZih2Lk5uKXt6Kz0iJnRmdD0iK1N0cmluZyhOYigpKTt2YXIgQz1wZCgpO0MhPT12b2lkIDAmJih6Kz0iJnRmZD0iK1N0cmluZyhNYXRoLnJvdW5kKEMpKSl9VnUodi5aaFswXS5ldmVudCx6LHYuWmhbMF0uZW5kcG9pbnQseC5sZW5ndGg/eDpbIiJdKX19fX0sVHU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hW2JdO2lmKGMhPT12b2lkIDApcmV0dXJuIGRlbGV0ZSBhW2JdLApjfSxWdT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT17ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxmPWZ1bmN0aW9uKGwsbil7dmFyIHA9YitYdShsKTtUbChwLGEsYyxkKTtyZXR1cm4gbihwKX07aWYobmQoKSl7dmFyIGc9ZnVuY3Rpb24oKXt9LGg9U3UoYyxiKTtoIT09dm9pZCAwJiYoZz1mdW5jdGlvbigpe1luKGUsaCtYdSg4KSx2b2lkIDAse1FnOiEwfSl9KTtmKDgsZnVuY3Rpb24obCl7WW4oZSxsLHZvaWQgMCx7UWc6ITB9LGZ1bmN0aW9uKCl7fSxmdW5jdGlvbigpe1pjKGIrWHUoMyksZnVuY3Rpb24oKXt9LGcpfSl9KX1lbHNlIGYoNSxmdW5jdGlvbihsKXtyZXR1cm4gV24oZSxsKX0pfHxaYyhiK1h1KDMpKX0sVXU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLlpoWzBdLGQ9eyJfJmFwdmMiOmEuUW4/IjEiOiIwIn07Yi5sZW5ndGg+MCYmKGRbIl8mdGlkcyJdPQpiLmpvaW4oIn4iKSk7aWYoYS5Obil7ZFsiXyZ0ZnQiXT1TdHJpbmcoTmIoKSk7dmFyIGU9cGQoKTtlIT09dm9pZCAwJiYoZFsiXyZ0ZmQiXT1TdHJpbmcoTWF0aC5yb3VuZChlKSkpfXJldHVybiBZdShjLmV2ZW50LGEudWR8fCIiLGQpfSxZdT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxhLnRhcmdldCx7ZGVzdGluYXRpb25JZDpifSksZT1adShhLHt0YXJnZXQ6ZH0pO2J8fFUoZSxGLkQuUWUpO2Zvcih2YXIgZj1tKE9iamVjdC5rZXlzKGMpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtVKGUsaCxjW2hdKX1yZXR1cm4gZX0sWHU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgODpjYXNlIDM6Y2FzZSA1OnJldHVybiImZm10PSIrYTtkZWZhdWx0OnJldHVybiIifX0sJHU9ZnVuY3Rpb24oYSxiKXthPVp1KGEpO1YoYSxILkouRGssWG8oZnApKTtUdCgpJiZVKGEsIl8mZ2NzIixVdCgpKTsKVShhLCJfJmdjZCIsWXQoYS5NKSk7dmFyIGM9WG8oZnApPzQ1OjQ2LGQ9ZnVuY3Rpb24oKXt2YXIgZj1iLnRpZDtpZihNKDQyNykpe3ZhciBnPVl1KGEsZixiKTtRdShnLHZvaWQgMCxBdSl9ZWxzZXt2YXIgaD1ObShjLGIpO1Z1KGEsaCxjLFtmXSl9fTtpZih5YihBLnF1ZXVlTWljcm90YXNrKSl7dmFyIGU9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGUubGVuZ3RoPT09MCl0cnl7QS5xdWV1ZU1pY3JvdGFzayhXdSl9Y2F0Y2goZil7R3UoVC5XLmZqKTtkKCk7cmV0dXJufWI9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxiKTtlLnB1c2goe2V2ZW50OmEsa2U6YixlbmRwb2ludDpjfSl9ZWxzZSBHdShULlcuZmopLGQoKX07dmFyIGF2PWZ1bmN0aW9uKGEsYixjLGQpe2d1LmNhbGwodGhpcyxhLGIsYz09PXZvaWQgMD8xOmMsZD09PXZvaWQgMD8hMTpkLDMsdm9pZCAwKX07d2EoYXYsZ3UpO2F2LnByb3RvdHlwZS55YT1mdW5jdGlvbihhLGIpe3ZhciBjPVIoYSxGLkQueWkpO3JldHVybiBiKyIvIitjKyIvIn07YXYucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMueWEoYSxndS5wcm90b3R5cGUuUi5jYWxsKHRoaXMsYSkpfTt2YXIgWD17Vjp7TWs6ImNhbGxfY29udmVyc2lvbiIsemQ6ImNjbV9jb252ZXJzaW9uIixRazoiY29tbW9uX2F3Iix4YToiY29udmVyc2lvbiIsd3E6ImZsb29kbGlnaHQiLFlkOiJnYV9jb252ZXJzaW9uIixaZDoiZ2NwX3JlbWFya2V0aW5nIixLYToicGFnZV92aWV3Iix1YjoicmVtYXJrZXRpbmciLE9iOiJ1c2VyX2RhdGFfbGVhZCIsRmI6InVzZXJfZGF0YV93ZWIifX07ZnVuY3Rpb24gYnYoYSxiKXtiJiZHYihiLGZ1bmN0aW9uKGMsZCl7dHlwZW9mIGQhPT0ib2JqZWN0IiYmZCE9PXZvaWQgMCYmKGFbIjFwLiIrY109U3RyaW5nKGQpKX0pfTsKdmFyIGN2PWZ1bmN0aW9uKGEsYil7dmFyIGM9UihhLEYuRC5zaCk7aWYoYylmb3IodmFyIGQ9bShPYmplY3Qua2V5cyhjKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1jW2ZdO2chPW51bGwmJihiWyJndG1kLiIrZl09U3RyaW5nKGcpKX19LGd2PWZ1bmN0aW9uKGEpe3ZhciBiPWR2KGEpO2lmKGIubGVuZ3RoKXt2YXIgYz1ldihhKS5WbixkPWZ2KGMpfHwiIjtyZXR1cm4gYi5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9ZnYoZSk7cmV0dXJuIiIrZCsoZCYmZj8iOyI6IiIpK2Z9KX19LGR2PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1odihhKSxjPXt9LGQ9bShiKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZSxnPXZvaWQgMDtpZihmLmhhc093blByb3BlcnR5KCJnb29nbGVfYnVzaW5lc3NfdmVydGljYWwiKSl7Zz1mLmdvb2dsZV9idXNpbmVzc192ZXJ0aWNhbDt2YXIgaD17fTtjW2ddPWNbZ118fChoLmdvb2dsZV9idXNpbmVzc192ZXJ0aWNhbD0KZyxoKX1lbHNlIGc9IiIsYy5oYXNPd25Qcm9wZXJ0eShnKXx8KGNbZ109e30pO3ZhciBsPWNbZ10sbjtmb3IobiBpbiBmKW4hPT0iZ29vZ2xlX2J1c2luZXNzX3ZlcnRpY2FsIiYmKG4gaW4gbHx8KGxbbl09W10pLGxbbl0ucHVzaChmW25dKSl9cmV0dXJuIE9iamVjdC5rZXlzKGMpLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gY1twXX0pfSxodj1mdW5jdGlvbihhKXt2YXIgYj1SKGEsRi5ELkhhKTtyZXR1cm4gYiYmYi5sZW5ndGg/Yi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuISFjfSkubWFwKGZ1bmN0aW9uKGMpe3ZhciBkPXt9O3JldHVybiBkLmlkPWlpKGMpLGQub3JpZ2luPWMub3JpZ2luLGQuZGVzdGluYXRpb249Yy5kZXN0aW5hdGlvbixkLnN0YXJ0X2RhdGU9Yy5zdGFydF9kYXRlLGQuZW5kX2RhdGU9Yy5lbmRfZGF0ZSxkLmxvY2F0aW9uX2lkPWMubG9jYXRpb25faWQsZC5nb29nbGVfYnVzaW5lc3NfdmVydGljYWw9Yy5nb29nbGVfYnVzaW5lc3NfdmVydGljYWwsZH0pOltdfSwKaWk9ZnVuY3Rpb24oYSl7YS5pdGVtX2lkIT1udWxsJiYoYS5pZCE9bnVsbD8oUCgxMzgpLGEuaWQhPT1hLml0ZW1faWQmJlAoMTQ4KSk6UCgxNTMpKTtyZXR1cm4gamkoYSl9LGZ2PWZ1bmN0aW9uKGEpe2lmKGEmJnR5cGVvZiBhPT09Im9iamVjdCImJiFBcnJheS5pc0FycmF5KGEpKXJldHVybiBPYmplY3Qua2V5cyhhKS5tYXAoZnVuY3Rpb24oYil7dmFyIGM9aXYoYik7aWYoYyl7dmFyIGQ9YVtiXSxlPUFycmF5LmlzQXJyYXkoZCk/anYoZCk6aXYoZCk7aWYoZSE9PXZvaWQgMClyZXR1cm4gYysiPSIrZX19KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIhPT12b2lkIDB9KS5qb2luKCI7Iil9LGp2PWZ1bmN0aW9uKGEpe3ZhciBiPWEubWFwKGl2KS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGMhPT12b2lkIDB9KTtyZXR1cm4gYi5sZW5ndGg/Yi5qb2luKCIsIik6dm9pZCAwfSxpdj1mdW5jdGlvbihhKXtpZihhIT1udWxsKXt2YXIgYj10eXBlb2YgYTtpZihiIT09Im9iamVjdCImJgpiIT09ImZ1bmN0aW9uIilyZXR1cm4gU3RyaW5nKGEpLnJlcGxhY2UoLywvZywiXFwsIikucmVwbGFjZSgvOy9nLCJcXDsiKS5yZXBsYWNlKC89L2csIlxcPSIpfX0sa3Y9ZnVuY3Rpb24oYSl7cmV0dXJuIE9iamVjdC5rZXlzKGEpLm1hcChmdW5jdGlvbihiKXt2YXIgYz1hW2JdO2lmKGMhPW51bGwmJihjIT09IiJ8fHlnW2JdKSlyZXR1cm4gYz09PSEwfHxjPT09ITE/YisiPSIrKGM/MTowKTpiKyI9IitlbmNvZGVVUklDb21wb25lbnQoYyl9KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuISFifSkuam9pbigiJiIpfSxsdj1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLmRhKSxjPXt9LGQ9UShhLEguSi5FYik7aWYoYj09PVguVi54YXx8Yj09PVguVi51Ynx8Yj09PVguVi5ZZHx8Yj09PVguVi56ZHx8Yj09PVguVi5aZCljLnJhbmRvbT0iIitkO2I9PT1YLlYueGF8fGI9PT1YLlYudWJ8fGI9PT1YLlYuemR8fGI9PT1YLlYuWmQ/KGMuY3Y9IjExIixjLmZzdD0iIitkLGMuZm10PSIzIiwKYy5iZz0iZmZmZmZmIixjLmd1aWQ9Ik9OIixjLmFzeW5jPSIxIixjLmVuPWEuZXZlbnROYW1lKTpiPT09WC5WLllkJiYoYy5jdj0iMTEiLGMudGlkPWEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsYy5mc3Q9IiIrZCxjLmZtdD0iOCIsYy5lbj1hLmV2ZW50TmFtZSk7dmFyIGU9QnMoWyJhdyIsImRjIl0pO2UhPW51bGwmJihjLmdhZF9zb3VyY2U9ZSk7Yy5ndG09ZHUoe21jOlEoYSxILkouTmIpLFRnOmEuTS5pc0d0bUV2ZW50LGVmOlEoYSxILkouQ2MpfSk7YiE9PVguVi51YiYmVHQoKSYmKGMuZ2NzPVV0KCkpO2MuZ2NkPVl0KGEuTSk7YXUoKSYmKGMuZG1hX2Nwcz1adCgpKTtjLmRtYT0kdCgpO3Z0KEV0KCkpJiYoYy50Y2ZkPWJ1KCkpO3ZhciBmPUNwKGEpO2YmJihjLnRhZ19leHA9Zik7Zm8uSFtjby5pYS5jYl0hPT1iby5NYS5VZXx8Zm8uS1tjby5pYS5jYl0uaXNDb25zZW50R3JhbnRlZCgpfHwoYy5saW1pdGVkX2Fkcz0iMSIpO1IoYSxGLkQuYmQpJiZmaShSKGEsRi5ELmJkKSxjKTtpZihSKGEsCkYuRC50Yikpe3ZhciBnPVIoYSxGLkQudGIpO2cmJihnLmxlbmd0aD09PTI/Z2koYywiaGwiLGcpOmcubGVuZ3RoPT09NSYmKGdpKGMsImhsIixnLnN1YnN0cmluZygwLDIpKSxnaShjLCJnbCIsZy5zdWJzdHJpbmcoMyw1KSkpKX12YXIgaD1RKGEsSC5KLlllKSxsPWZ1bmN0aW9uKEksRyl7dmFyIE49UihhLEcpO04mJihjW0ldPWg/WnMoTik6Til9O2woInVybCIsRi5ELnphKTtsKCJyZWYiLEYuRC5VYSk7bCgidG9wIixGLkQuUGUpO3ZhciBuPWd0KGEsRi5ELkJkLEYuRC5DZCk7biYmKGMuZ2NsYXdfc3JjPW4pO3ZhciBwPWd0KGEsRi5ELmZoLEYuRC5naCk7cCYmKGMuZ2NsZ2Jfc3JjPXApO3ZhciBxPWZ1bmN0aW9uKEksRyl7Zm9yKHZhciBOPW0oT2JqZWN0LmtleXMoSSkpLFM9Ti5uZXh0KCk7IVMuZG9uZTtTPU4ubmV4dCgpKXt2YXIgVz1TLnZhbHVlO2VpW1ddJiZ0eXBlb2YgSVtXXT09PSJzdHJpbmciJiYoR1siZXh0LiIrZWlbV11dPUlbV10pfX0scj1SKGEsRi5ELldjKTtyJiYKcShyLGMpO3ZhciB0PWV2KGEpLHU9dC5WbjtuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGMsdC5rZSk7YnYoYyxSKGEsRi5ELmVkKSk7dmFyIHY9UihhLEYuRC5OZSk7diE9PXZvaWQgMCYmdiE9PSIiJiYoYy52ZG5jPVN0cmluZyh2KSk7dmFyIHg9UihhLEYuRC5MZCk7eCE9PXZvaWQgMCYmKGMuc2hmPXgpO3ZhciB5PVIoYSxGLkQuVGMpO3khPT12b2lkIDAmJihjLmRlbGM9eSk7aWYoYiE9PVguVi5ZZCl7dmFyIHo9ZnYodSk7eiYmKGMuZGF0YT16KX12YXIgQz1SKGEsRi5ELkhhKTtpZihDJiYoYj09PVguVi54YXx8Yj09PVguVi5ZZHx8Yj09PVguVi5aZHx8Yj09PVguVi56ZCkpe3ZhciBEPW5pKEMpO0QhPT12b2lkIDAmJihjLmllZGVsZD1EKTtjLml0ZW09aGkoQyl9aHQoYSxjKTtjdihhLGMpO1EoYSxILkouSWgpJiYoYy5hZWNzPSIxIik7YiE9PVguVi54YXx8UShhLEguSi5FYyl8fFEoYSxILkoub2IpfHwoYy5jYXRlZ29yeT0iYWNyY3BfdjFfNTEyIik7cmV0dXJuIGN9LApldj1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz17fSxkPVEoYSxILkouZGEpLGU9bShldShhKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1SKGEsZyk7aWYoaCE9PXZvaWQgMClpZihTYihnLCJfJiIpKWJbZy5zdWJzdHJpbmcoMildPWg7ZWxzZSBpZihlaS5oYXNPd25Qcm9wZXJ0eShnKSl7aWYoZyE9PUYuRC5FaXx8ZD09PVguVi54YSYmIVEoYSxILkouRWMpKXt2YXIgbD1laVtnXTtsJiYoZyE9PUYuRC5OZCYmZyE9PUYuRC5NZHx8TSg1MDQpP2JbbF09aDpjW2ddPWgpfX1lbHNlIGNbZ109aH1yZXR1cm57a2U6YixWbjpjfX07dmFyIG12PXtOZzoidmFsdWUiLHBiOiJjb252ZXJzaW9uQ291bnQiLE9nOjF9LG52PXtOZzoidGltZW91dHMiLHBiOiJ0aW1lb3V0cyIsT2c6MH0sb3Y9e05nOiJlb3BDb3VudCIscGI6ImVuZE9mUGFnZUNvdW50IixPZzowfSxwdj17Tmc6ImVycm9ycyIscGI6ImVycm9ycyIsT2c6MH0scXY9W212LG52LHB2LG92XTtmdW5jdGlvbiBydihhLGIpe2I9Yj09PXZvaWQgMD8xOmI7aWYoIXN2KGEpKXJldHVybnt9O3ZhciBjPXR2KHF2KSxkPWNbYS5wYl07aWYoZD09PXZvaWQgMHx8ZD09PS0xKXJldHVybiBjO3ZhciBlPXt9LGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLChlW2EucGJdPWQrYixlKSk7cmV0dXJuIHV2KGYpP2Y6Y30KZnVuY3Rpb24gdHYoYSl7dmFyIGI7YTp7dmFyIGM9bnIoImdjbF9jdHIiKTtpZihjLmVycm9yPT09MCYmYy52YWx1ZSYmdHlwZW9mIGMudmFsdWU9PT0ib2JqZWN0Iil7dmFyIGQ9Yy52YWx1ZTt0cnl7Yj0idmFsdWUiaW4gZCYmdHlwZW9mIGQudmFsdWU9PT0ib2JqZWN0Ij9kLnZhbHVlOnZvaWQgMDticmVhayBhfWNhdGNoKHApe319Yj12b2lkIDB9Zm9yKHZhciBlPWIsZj17fSxnPW0oYSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWU7aWYoZSYmc3YobCkpe3ZhciBuPWVbbC5OZ107bj09PXZvaWQgMHx8TnVtYmVyLmlzTmFOKG4pP2ZbbC5wYl09LTE6ZltsLnBiXT1OdW1iZXIobil9ZWxzZSBmW2wucGJdPS0xfXJldHVybiBmfQpmdW5jdGlvbiB1dihhLGIpe2I9Ynx8e307Zm9yKHZhciBjPU5iKCksZD11cShiLGMsITApLGU9e30sZj1tKHF2KSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZSxsPWFbaC5wYl07bCE9PXZvaWQgMCYmbCE9PS0xJiYoZVtoLk5nXT1sKX1lLmNyZWF0aW9uVGltZU1zPWM7cmV0dXJuIGtyKCJnY2xfY3RyIix7dmFsdWU6ZSxleHBpcmVzOk51bWJlcihkLmV4cGlyZXMpfSk9PT0wPyEwOiExfWZ1bmN0aW9uIHN2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuZnR8fFlmKGEuZnQpOiExfWZ1bmN0aW9uIHZ2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuQXN8fFlmKGEuQXMpOiExfTtmdW5jdGlvbiB3digpe2lmKHh2KCkpe3ZhciBhPW5yKCJsYXN0X2NvbnZzIik7aWYoYS5lcnJvcj09PTAmJmEudmFsdWUmJnR5cGVvZiBhLnZhbHVlPT09Im9iamVjdCIpe3ZhciBiPWEudmFsdWU7aWYoYi52YWx1ZSYmQXJyYXkuaXNBcnJheShiLnZhbHVlKSl7dmFyIGM9Yi52YWx1ZTtpZighKGMubGVuZ3RoPjEpKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2lmKHR5cGVvZiBnIT09Im9iamVjdCJ8fGc9PT1udWxsfHx0eXBlb2YgZy5yYW5kb20hPT0ibnVtYmVyInx8dHlwZW9mIGcubGFiZWwhPT0ic3RyaW5nInx8Zy5sYWJlbC5sZW5ndGg+MjAwKXJldHVybjtkLnB1c2goe3JhbmRvbTpnLnJhbmRvbSxsYWJlbDpnLmxhYmVsfSl9cmV0dXJuIGR9fX19fQpmdW5jdGlvbiB5dihhLGIpeyF4digpfHxhLmxlbmd0aD4xfHxhLmxlbmd0aD09PTEmJmFbMF0ubGFiZWwubGVuZ3RoPjIwMHx8KGI9Ynx8e30sa3IoImxhc3RfY29udnMiLHt2YWx1ZTphLGV4cGlyZXM6TnVtYmVyKHVxKGIpLmV4cGlyZXMpfSkpfWZ1bmN0aW9uIHh2KCl7cmV0dXJuIEJsKFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSYmWWYoMTEpfTtmdW5jdGlvbiB6dihhKXt2YXIgYj1NYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqMjE0NzQ4MzY0Nyk7cmV0dXJuIGE/U3RyaW5nKGJebmcoYSkmMjE0NzQ4MzY0Nyk6U3RyaW5nKGIpfWZ1bmN0aW9uIEF2KGEpe3JldHVyblt6dihhKSxNYXRoLnJvdW5kKE5iKCkvMUUzKV0uam9pbigiLiIpfWZ1bmN0aW9uIEJ2KGEsYixjLGQsZSl7dmFyIGY9cnEoYiksZztyZXR1cm4oZz1ncShhLGYsc3EoYyksZCxlKSk9PW51bGw/dm9pZCAwOmcuQ3J9O3ZhciBDdj1bIjEiXSxEdj17fSxFdj17fTtmdW5jdGlvbiBGdihhKXtyZXR1cm4gRXZbR3YoYSldfWZ1bmN0aW9uIEh2KGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM9R3YoYS5wcmVmaXgpO2lmKER2W2NdKUl2KGEpLEp2KGEpO2Vsc2UgaWYoS3YoYyxhLnBhdGgsYS5kb21haW4pKXt2YXIgZD1GdihhLnByZWZpeCl8fHtpZDp2b2lkIDAsa2M6dm9pZCAwfTtiJiZMdihhLGQpO0l2KGEpO0p2KGEpfWVsc2V7dmFyIGU9VGooImF1aWRkYyIpO2lmKGUpc2IoIlRBR0dJTkciLDE3KSxEdltjXT1lO2Vsc2UgaWYoYil7dmFyIGY9R3YoYS5wcmVmaXgpLGc9QXYoKTtNdihmLGcsYSk7S3YoYyxhLnBhdGgsYS5kb21haW4pO0l2KGEsITApO0p2KGEsITApfX19CmZ1bmN0aW9uIEl2KGEsYil7KGI9PT12b2lkIDA/MDpiKSYmc3YobXYpJiZvcigiZ2NsX2N0ciIpO2lmKHZ2KG12KSYmdHYoW212XSlbbXYucGJdPT09LTEpe2Zvcih2YXIgYz17fSxkPShjW212LnBiXT0wLGMpLGU9bShxdiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7ZyE9PW12JiZ2dihnKSYmKGRbZy5wYl09MCl9dXYoZCxhKX19ZnVuY3Rpb24gSnYoYSxiKXsoYj09PXZvaWQgMD8wOmIpJiZ4digpJiZvcigibGFzdF9jb252cyIpOyFCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSl8fCFZZigxMil8fHd2KCl8fHl2KFtdLGEpfQpmdW5jdGlvbiBMdihhLGIpe3ZhciBjPUd2KGEucHJlZml4KSxkPUR2W2NdO2lmKGQpe3ZhciBlPWQuc3BsaXQoIi4iKTtpZihlLmxlbmd0aD09PTIpe3ZhciBmPU51bWJlcihlWzFdKXx8MDtpZihmKXt2YXIgZz1kO1lmKDE5KSYmYi5maT9nPWQrIi4iKyhiLnNlc3Npb25JZHx8Ii0uLSIpKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSsiLiIrYi5maSsiLiIrKGIuTGM/Yi5MYzpNYXRoLmZsb29yKE5iKCkvMUUzKSk6Yi5zZXNzaW9uSWQmJihnPWQrIi4iK2Iuc2Vzc2lvbklkKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSk7TXYoYyxnLGEsZioxRTMpfX19fWZ1bmN0aW9uIE12KGEsYixjLGQpe3ZhciBlO2U9WyIxIix0cShjLmRvbWFpbixjLnBhdGgpLGJdLmpvaW4oIi4iKTt2YXIgZj11cShjLGQpO2YuTWM9TnYoKTtvcShhLGUsZil9CmZ1bmN0aW9uIEt2KGEsYixjKXt2YXIgZD1CdihhLGIsYyxDdixOdigpKTtpZighZClyZXR1cm4hMTtPdihhLGQpO3JldHVybiEwfWZ1bmN0aW9uIE92KGEsYil7dmFyIGM9Yi5zcGxpdCgiLiIpO2lmKGMubGVuZ3RoPT09MylFdlthXT17c2Vzc2lvbklkOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2Vsc2UgaWYoYy5sZW5ndGg+PTImJihEdlthXT1jWzBdKyIuIitjWzFdLGMuc2hpZnQoKSxjLnNoaWZ0KCksYy5sZW5ndGg+PTMpKXt2YXIgZD17c2Vzc2lvbklkOmNbMF09PT0iLSI/dm9pZCAwOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2lmKFlmKDE5KSYmYy5sZW5ndGg+PTYpe3ZhciBlPWNbM10rIi4iK2NbNF0sZj1OdW1iZXIoY1s1XSl8fDA7ZSYmZiE9PTAmJihkLmZpPWUsZC5MYz1mKX1FdlthXT1kfX1mdW5jdGlvbiBHdihhKXtyZXR1cm4oYXx8Il9nY2wiKSsiX2F1In0KZnVuY3Rpb24gUHYoYSl7ZnVuY3Rpb24gYigpe0JsKGMpJiZhKCl9dmFyIGM9TnYoKTtIbChmdW5jdGlvbigpe2IoKTtCbChjKXx8SWwoYixjKX0sYyl9ZnVuY3Rpb24gUXYoYSl7dmFyIGI9VXEoITApLGM9R3YoYS5wcmVmaXgpO1B2KGZ1bmN0aW9uKCl7dmFyIGQ9YltjXTtpZihkKXtPdihjLGQpO3ZhciBlPU51bWJlcihEdltjXS5zcGxpdCgiLiIpWzFdKSoxRTM7aWYoZSl7c2IoIlRBR0dJTkciLDE2KTt2YXIgZj11cShhLGUpO2YuTWM9TnYoKTt2YXIgZz1bIjEiLHRxKGEuZG9tYWluLGEucGF0aCksZF0uam9pbigiLiIpO29xKGMsZyxmKX19fSl9ZnVuY3Rpb24gUnYoYSxiLGMsZCxlKXtlPWV8fHt9O3ZhciBmPWZ1bmN0aW9uKCl7dmFyIGc9e30saD1CdihhLGUucGF0aCxlLmRvbWFpbixDdixOdigpKTtoJiYoZ1thXT1oKTtyZXR1cm4gZ307UHYoZnVuY3Rpb24oKXthcihmLGIsYyxkKX0pfQpmdW5jdGlvbiBOdigpe3JldHVyblsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdfTsKdmFyIFR2PWZ1bmN0aW9uKGEpe3JldHVybiBTdihhLHtPajohMH0pLlNofSxTdj1mdW5jdGlvbihhLGIpe2E9YXx8e307aWYoIVhvKEYuRC5rYSkpcmV0dXJue307dmFyIGM9VXYoYSksZD1jLlNoLGU9Yy5paztiLk9qJiYhZCYmKGQ9QXYoKSk7Yi5YaCYmIWUmJihlPUF2KCkpO3ZhciBmPXt9O2QmJihmLnNlc3Npb25JZD1kKTtlJiYoZi5maT1lKTt2YXIgZz1GdihIcihhLnByZWZpeCkpO2cmJihiLk9qJiYhYi5YaD9nLkxjJiYoZi5MYz1nLkxjKTpiLlhoJiYhYi5PaiYmZy5rYyYmKGYua2M9Zy5rYykpO2lmKGR8fGUpe3ZhciBoPWEsbD1HdihoLnByZWZpeCk7THYoaCxmKTtkZWxldGUgRHZbbF07ZGVsZXRlIEV2W2xdO0t2KGwsaC5wYXRoLGguZG9tYWluKX1yZXR1cm4gVXYoYSl9LFV2PWZ1bmN0aW9uKGEpe2lmKCFYbyhGLkQua2EpKXJldHVybnt9O2E9YXx8e307SHYoYSwhMSk7dmFyIGI9RnYoSHIoYS5wcmVmaXgpKTtpZighYilyZXR1cm57fTt2YXIgYz1OYigpLGQ9e307aWYoYy0KYi5rYyoxRTM8PShNKDQ1MCl8fE0oNDQzKT84NjRFNToxOEU1KSl7dmFyIGU9Yi5zZXNzaW9uSWQ7aWYoZSl7dmFyIGY9ZS5zcGxpdCgiLiIpO2YubGVuZ3RoPT09MiYmYy0oTnVtYmVyKGZbMV0pfHwwKSoxRTM8PTg2NEU1JiYoZC5TaD1lKX19aWYoYi5MYyYmYy1iLkxjKjFFMzw9ODY0RTUpe3ZhciBnPWIuZmk7aWYoZyl7dmFyIGg9Zy5zcGxpdCgiLiIpO2gubGVuZ3RoPT09MiYmYy0oTnVtYmVyKGhbMV0pfHwwKSoxRTM8PTg2NEU1JiYoZC5paz1nKX19cmV0dXJuIGR9O3ZhciBWdj0iZW1haWwgZW1haWxfYWRkcmVzcyBzaGEyNTZfZW1haWxfYWRkcmVzcyBwaG9uZV9udW1iZXIgc2hhMjU2X3Bob25lX251bWJlciBmaXJzdF9uYW1lIGxhc3RfbmFtZSIuc3BsaXQoIiAiKSxXdj0iZmlyc3RfbmFtZSBzaGEyNTZfZmlyc3RfbmFtZSBsYXN0X25hbWUgc2hhMjU2X2xhc3RfbmFtZSBzdHJlZXQgc2hhMjU2X3N0cmVldCBjaXR5IHJlZ2lvbiBjb3VudHJ5IHBvc3RhbF9jb2RlIi5zcGxpdCgiICIpO2Z1bmN0aW9uIFh2KGEsYil7aWYoIWIuX3RhZ19tZXRhZGF0YSl7Zm9yKHZhciBjPXt9LGQ9MCxlPTA7ZTxhLmxlbmd0aDtlKyspZCs9WXYoYVtlXSxiLGMpPzE6MDtkPjAmJihiLl90YWdfbWV0YWRhdGE9Yyl9fQpmdW5jdGlvbiBZdihhLGIsYyl7dmFyIGQ9YlthXTtpZihkPT09dm9pZCAwfHxkPT09bnVsbClyZXR1cm4hMTtjW2FdPUFycmF5LmlzQXJyYXkoZCk/ZC5tYXAoZnVuY3Rpb24oKXtyZXR1cm57bW9kZToiYyJ9fSk6e21vZGU6ImMifTtyZXR1cm4hMH1mdW5jdGlvbiBadihhKXtpZihNKDUyMykmJmEpe1h2KFZ2LGEpO2Zvcih2YXIgYj1CYihhLmFkZHJlc3MpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YltjXTtkJiZYdihXdixkKX12YXIgZT1hLmhvbWVfYWRkcmVzcztlJiZYdihXdixlKX19CmZ1bmN0aW9uICR2KGEsYixjKXtmdW5jdGlvbiBkKGYsZyl7Zz1TdHJpbmcoZykuc3Vic3RyaW5nKDAsMTAwKTtlLnB1c2goIiIrZitlbmNvZGVVUklDb21wb25lbnQoZykpfWlmKCFjKXJldHVybiIiO3ZhciBlPVtdO2QoImkiLFN0cmluZyhhKSk7ZCgiZiIsYik7Yy5tb2RlJiZkKCJtIixjLm1vZGUpO2MuaXNQcmVIYXNoZWQmJmQoInAiLCIxIik7Yy5yYXdMZW5ndGgmJmQoInIiLFN0cmluZyhjLnJhd0xlbmd0aCkpO2Mubm9ybWFsaXplZExlbmd0aCYmZCgibiIsU3RyaW5nKGMubm9ybWFsaXplZExlbmd0aCkpO2MubG9jYXRpb24mJmQoImwiLGMubG9jYXRpb24pO2Muc2VsZWN0b3ImJmQoInMiLGMuc2VsZWN0b3IpO3JldHVybiBlLmpvaW4oIi4iKX07dmFyIGF3PXZvaWQgMDtmdW5jdGlvbiBidygpe2lmKCFhdyl7dmFyIGE9b20oam0uYmEub3AsbmV3IE1hcCk7YXc9bmV3IG9nKGEpfXJldHVybiBhd307CnZhciBjdz1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4gYTtmb3IodmFyIGI9e30sYz1tKE9iamVjdC5rZXlzKGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtlIT09ImFkZHJlc3MiJiZlIT09InBob25lX251bWJlciImJmUhPT0ic2hhMjU2X3Bob25lX251bWJlciImJihiW2VdPWFbZV0pfXJldHVybiBifSxmdz1mdW5jdGlvbihhKXt2YXIgYj1NKDUyMyksYz1bInR2LjEiXSxkPVsidHZkLjEiXSxlPWR3KGEpO2lmKGUpcmV0dXJuIGMucHVzaChlKSx7aGFzVXBkOiExLE9vOmMuam9pbigifiIpLFluOmMuam9pbigifiIpLGVuY3J5cHRpb25LZXlTdHJpbmc6dm9pZCAwLGlpOnt9LG1ldGFkYXRhUGFyYW06Yj9kLmpvaW4oIn4iKTp2b2lkIDB9O3ZhciBmPXt9LGc9MDt2YXIgaD0wLGw9ZXcoYSxmdW5jdGlvbihxLHIsdCl7aCsrO3ZhciB1PXEudmFsdWUsdjsKaWYodCl7dmFyIHg9cisiX18iK2crKzt2PSIke3VzZXJEYXRhLiIreCsifHNoYTI1Nn0iO2ZbeF09dX1lbHNlIHY9ZW5jb2RlVVJJQ29tcG9uZW50KGVuY29kZVVSSUNvbXBvbmVudCh1KSk7cS5pbmRleCE9PXZvaWQgMCYmKHIrPXEuaW5kZXgpO2MucHVzaChyKyIuIit2KTtpZihiKXt2YXIgeT0kdihoLHIscS5tZXRhZGF0YSk7eSYmZC5wdXNoKHkpfX0pLmhhc1VwZCxuPWQuam9pbigifiIpO3ZhciBwPWMuam9pbigifiIpO3JldHVybntoYXNVcGQ6bCxPbzpwLGlpOnt1c2VyRGF0YTpmfSxZbjoidHYuMX4keyIrKHArInwiKyhNKDU1NSk/ImVuY3J5cHRfd2l0aF9tZW1vIjoiZW5jcnlwdCIpKyJ9IiksZW5jcnlwdGlvbktleVN0cmluZzpFKDQzKSxtZXRhZGF0YVBhcmFtOmI/bjp2b2lkIDB9fSxodz1mdW5jdGlvbihhKXtpZighKGEhPW51bGwmJk9iamVjdC5rZXlzKGEpLmxlbmd0aD4wKSlyZXR1cm4hMTsKdmFyIGI9Z3coYSk7cmV0dXJuIGV3KGIsZnVuY3Rpb24oKXt9KS5oYXNVcGR9LGV3PWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP2Z1bmN0aW9uKCl7fTpiO2Zvcih2YXIgYz0hMSxkPSExLGU9bShhKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtpZihnLnZhbHVlKXt2YXIgaD1pd1tnLm5hbWVdO2lmKGgpe3ZhciBsPWp3KGcpO2wmJihjPSEwKTtkPSEwO2IoZyxoLGwpfX19cmV0dXJue2hhc1VwZDpkLGhhc1VwZFRvSGFzaDpjfX0sanc9ZnVuY3Rpb24oYSl7dmFyIGI9a3coYS5uYW1lKSxjPS9eZVxkKyQvLnRlc3QoYS52YWx1ZSksZDtpZihkPWImJiFjKXt2YXIgZT1hLnZhbHVlO2Q9IShsdy50ZXN0KGUpfHx5aS50ZXN0KGUpKX1yZXR1cm4gZH0sa3c9ZnVuY3Rpb24oYSl7cmV0dXJuIG13LmluZGV4T2YoYSkhPT0tMX0sc3c9ZnVuY3Rpb24oYSxiLGMpe2lmKHliKEEuUHJvbWlzZSkpdHJ5e3ZhciBkPSExO3ZhciBlPWd3KGEsZCksZj1udyhlKS50aGVuKGZ1bmN0aW9uKGgpe3ZhciBsPWgueWIsbj1sLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4hU2IocS5uYW1lLCJyYXciKX0pLHA9b3coe3liOm59KTtyZXR1cm57cmVzdWx0OntwYXJhbTpwLnBhcmFtLGhhc1VwZFRvSGFzaDpwLmhhc1VwZFRvSGFzaCxoYXNVcGQ6cC5oYXNVcGQsaGFkRXJyb3I6cC5oYWRFcnJvcixtZXRhZGF0YVBhcmFtOnAubWV0YWRhdGFQYXJhbX0seWI6bH19KTtyZXR1cm4gZi50aGVuKGZ1bmN0aW9uKGgpe3JldHVybiBoLnJlc3VsdH0pfWNhdGNoKGgpe319LHF3PWZ1bmN0aW9uKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gYn0sb3c9ZnVuY3Rpb24oYSl7dmFyIGI9TSg1MjMpLGM9YS55YixkPVsidHYuMSJdLGU9WyJ0dmQuMSJdLGY9ZHcoYyk7aWYoZilyZXR1cm4gZC5wdXNoKGYpLHtwYXJhbTpkLmpvaW4oIn4iKSxoYXNVcGRUb0hhc2g6ITEsaGFzVXBkOiExLGhhZEVycm9yOiEwLG1ldGFkYXRhUGFyYW06Yj9lLmpvaW4oIn4iKTp2b2lkIDB9O3ZhciBnPWMuZmlsdGVyKGZ1bmN0aW9uKHEpe3JldHVybiFqdyhxKX0pLGg9MCxsPWV3KGcsZnVuY3Rpb24ocSxyKXtoKys7dmFyIHQ9cS52YWx1ZSx1PXEuaW5kZXg7dSE9PXZvaWQgMCYmKHIrPXUpO2QucHVzaChyKyIuIit0KTtpZihiKXt2YXIgdj0kdihoLHIscS5tZXRhZGF0YSk7diYmZS5wdXNoKHYpfX0pLG49bC5oYXNVcGRUb0hhc2gscD1sLmhhc1VwZDtyZXR1cm57cGFyYW06ZW5jb2RlVVJJQ29tcG9uZW50KGQuam9pbigifiIpKSwKaGFzVXBkVG9IYXNoOm4saGFzVXBkOnAsaGFkRXJyb3I6ITEsbWV0YWRhdGFQYXJhbTpiP2Uuam9pbigifiIpOnZvaWQgMH19LGR3PWZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoPT09MSYmYVswXS5uYW1lPT09ImVycm9yX2NvZGUiKXJldHVybiBpdy5lcnJvcl9jb2RlKyIuIithWzBdLnZhbHVlfSxwdz1mdW5jdGlvbihhKXtpZihhLmxlbmd0aD09PTEmJmFbMF0ubmFtZT09PSJlcnJvcl9jb2RlIilyZXR1cm4hMTtmb3IodmFyIGI9bShhKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtpZihpd1tkLm5hbWVdJiZkLnZhbHVlKXJldHVybiEwfXJldHVybiExfSxndz1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVtdO2lmKEEubG9jYXRpb24ucHJvdG9jb2whPT0iaHR0cHM6IilyZXR1cm4gYy5wdXNoKHtuYW1lOiJlcnJvcl9jb2RlIix2YWx1ZToiZTMiLGluZGV4OnZvaWQgMH0pLGM7dmFyIGQ9Yy5wdXNoLGU9ZC5hcHBseSxmPVtdLApnPWYuY29uY2F0LGgsbD1hLl90YWdfbWV0YWRhdGF8fHt9O2g9W10uY29uY2F0KHcodHcoe25hbWU6ImVtYWlsIixyYXc6YS5lbWFpbCxTYTphLnNoYTI1Nl9lbWFpbF9hZGRyZXNzLGFiOmwuZW1haWwsbWQ6bC5zaGEyNTZfZW1haWxfYWRkcmVzc30sdXcpKSx3KHR3KHtuYW1lOiJwaG9uZV9udW1iZXIiLHJhdzphLnBob25lX251bWJlcixTYTphLnNoYTI1Nl9waG9uZV9udW1iZXIsYWI6bC5waG9uZV9udW1iZXIsbWQ6bC5zaGEyNTZfcGhvbmVfbnVtYmVyfSx2dykpKTt2YXIgbj13KGgpLHAscT1hLl90YWdfbWV0YWRhdGF8fHt9LHI9YS5ob21lX2FkZHJlc3N8fHt9LHQ9ci5fdGFnX21ldGFkYXRhfHx7fTtwPVtdLmNvbmNhdCh3KHR3KHtuYW1lOiJmaXJzdF9uYW1lIixyYXc6YS5maXJzdF9uYW1lLFNhOmEuc2hhMjU2X2ZpcnN0X25hbWUsYWI6cS5maXJzdF9uYW1lLG1kOnEuc2hhMjU2X2ZpcnN0X25hbWV9LHd3KHh3KSkpLHcodHcoe25hbWU6Imxhc3RfbmFtZSIscmF3OmEubGFzdF9uYW1lLApTYTphLnNoYTI1Nl9sYXN0X25hbWUsYWI6cS5sYXN0X25hbWUsbWQ6cS5zaGEyNTZfbGFzdF9uYW1lfSx3dyh4dykpKSx3KHR3KHtuYW1lOiJzdHJlZXQiLHJhdzpyLnN0cmVldCxTYTpyLnNoYTI1Nl9zdHJlZXQsYWI6dC5zdHJlZXQsbWQ6dC5zaGEyNTZfc3RyZWV0fSx3dyh5dykpKSx3KHR3KHtuYW1lOiJjaXR5IixyYXc6ci5jaXR5LGFiOnQuY2l0eX0sd3coeXcpKSksdyh0dyh7bmFtZToicG9zdGFsX2NvZGUiLHJhdzpyLnBvc3RhbF9jb2RlLGFiOnQucG9zdGFsX2NvZGV9LHd3KHp3KSkpLHcodHcoe25hbWU6InJlZ2lvbiIscmF3OnIucmVnaW9uLGFiOnQucmVnaW9ufSx3dyh5dykpKSx3KHR3KHtuYW1lOiJjb3VudHJ5IixyYXc6ci5jb3VudHJ5LGFiOnQuY291bnRyeX0sd3coencpKSkpO2Zvcih2YXIgdT13KHApLHY9W10seD1CYihhLmFkZHJlc3N8fHt9KSx5PTA7eTx4Lmxlbmd0aDt5Kyspe2Zvcih2YXIgej14W3ldLEM9ei5fdGFnX21ldGFkYXRhfHx7fSxEPVtdLmNvbmNhdCh3KHR3KHtuYW1lOiJmaXJzdF9uYW1lIiwKcmF3OnouZmlyc3RfbmFtZSxTYTp6LnNoYTI1Nl9maXJzdF9uYW1lLGFiOkMuZmlyc3RfbmFtZSxtZDpDLnNoYTI1Nl9maXJzdF9uYW1lfSx4dykpLHcodHcoe25hbWU6Imxhc3RfbmFtZSIscmF3OnoubGFzdF9uYW1lLFNhOnouc2hhMjU2X2xhc3RfbmFtZSxhYjpDLmxhc3RfbmFtZSxtZDpDLnNoYTI1Nl9sYXN0X25hbWV9LHh3KSksdyh0dyh7bmFtZToic3RyZWV0IixyYXc6ei5zdHJlZXQsU2E6ei5zaGEyNTZfc3RyZWV0LGFiOkMuc3RyZWV0LG1kOkMuc2hhMjU2X3N0cmVldH0seXcpKSx3KHR3KHtuYW1lOiJjaXR5IixyYXc6ei5jaXR5LGFiOkMuY2l0eX0seXcpKSx3KHR3KHtuYW1lOiJwb3N0YWxfY29kZSIscmF3OnoucG9zdGFsX2NvZGUsYWI6Qy5wb3N0YWxfY29kZX0sencpKSx3KHR3KHtuYW1lOiJyZWdpb24iLHJhdzp6LnJlZ2lvbixhYjpDLnJlZ2lvbn0seXcpKSx3KHR3KHtuYW1lOiJjb3VudHJ5IixyYXc6ei5jb3VudHJ5LGFiOkMuY291bnRyeX0sencpKSksST0wO0k8CkQubGVuZ3RoO0krKylEW0ldLmluZGV4PXk7di5wdXNoLmFwcGx5KHYsdyhEKSl9ZS5jYWxsKGQsYyxnLmNhbGwoZixuLHUsdyh2KSkpO2lmKGImJkJwKCkpe3ZhciBHPWMucHVzaCxOPUcuYXBwbHksUz1bXTtTLnB1c2guYXBwbHkoUyxbXS5jb25jYXQodyhBdyh7bmFtZToicmF3X2VtYWlsIixyYXc6YS5lbWFpbCxTYTphLnNoYTI1Nl9lbWFpbF9hZGRyZXNzfSkpLHcoQXcoe25hbWU6InJhd19waG9uZV9udW1iZXIiLHJhdzphLnBob25lX251bWJlcixTYTphLnNoYTI1Nl9waG9uZV9udW1iZXJ9KSkpKTtmb3IodmFyIFc9QmIoYS5hZGRyZXNzfHx7fSksZWE9MDtlYTxXLmxlbmd0aDtlYSsrKXt2YXIgamE9V1tlYV07Uy5wdXNoLmFwcGx5KFMsW10uY29uY2F0KHcoQXcoe25hbWU6InJhd19maXJzdF9uYW1lIixyYXc6amEuZmlyc3RfbmFtZSxTYTpqYS5zaGEyNTZfZmlyc3RfbmFtZX0sZWEpKSx3KEF3KHtuYW1lOiJyYXdfbGFzdF9uYW1lIixyYXc6amEubGFzdF9uYW1lLFNhOmphLnNoYTI1Nl9sYXN0X25hbWV9LAplYSkpLHcoQXcoe25hbWU6InJhd19zdHJlZXQiLHJhdzpqYS5zdHJlZXQsU2E6amEuc2hhMjU2X3N0cmVldH0sZWEpKSkpfWlmKGEuZmlyc3RfbmFtZXx8YS5ob21lX2FkZHJlc3Mpe1MucHVzaC5hcHBseShTLFtdLmNvbmNhdCh3KEF3KHtuYW1lOiJyYXdfZmlyc3RfbmFtZSIscmF3OmEuZmlyc3RfbmFtZSxTYTphLnNoYTI1Nl9maXJzdF9uYW1lfSkpLHcoQXcoe25hbWU6InJhd19sYXN0X25hbWUiLHJhdzphLmxhc3RfbmFtZSxTYTphLnNoYTI1Nl9sYXN0X25hbWV9KSkpKTt2YXIgZmE9YS5ob21lX2FkZHJlc3N8fHt9O1MucHVzaC5hcHBseShTLHcoQXcoe25hbWU6InJhd19zdHJlZXQiLHJhdzpmYS5zdHJlZXQsU2E6ZmEuc2hhMjU2X3N0cmVldH0pKSl9Ti5jYWxsKEcsYyx3KFMpKX1yZXR1cm4gY30sd3c9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe1AoNjQpO3JldHVybiBhKGIpfX0sQXc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtpZihhLlNhKXJldHVybiBjO2Zvcih2YXIgZD0KQmIoYS5yYXcpLGU9MDtlPGQubGVuZ3RoOysrZSl7dmFyIGY9QncoZFtlXSk7aWYoZiYmIXlpLnRlc3QoZikpaWYoL15lXGQrJC8udGVzdChmKSljLnB1c2goe25hbWU6YS5uYW1lLHZhbHVlOmYsaW5kZXg6Yn0pO2Vsc2V7dmFyIGc9YyxoPWcucHVzaCxsPWEubmFtZSxuO3ZhciBwPUE7dHJ5e249QmkoQXJyYXkuZnJvbShaYihmKSkscCl9Y2F0Y2gocSl7bj0iZTAifWguY2FsbChnLHtuYW1lOmwsdmFsdWU6bixpbmRleDpifSl9fXJldHVybiBjfSx0dz1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ9TSg1MjMpLGU9YS5yYXcsZj1kP2EuYWI6dm9pZCAwO0N3KGUsITEpO2EuU2EmJihlJiZQKDkwKSxlPWEuU2EsZj1kP2EubWQ6dm9pZCAwLEN3KGUsITApKTtmb3IodmFyIGc9QmIoZSksaD1CYihmKSxsPTA7bDxnLmxlbmd0aDsrK2wpe3ZhciBuO3ZhciBwPWEubmFtZSxxPWIscj1oW2xdLHQ9QncoZ1tsXSk7aWYodCE9PSIiKWlmKHlpLnRlc3QodCkpe3ImJihyLmlzUHJlSGFzaGVkPSEwKTsKdmFyIHU9e25hbWU6cCx2YWx1ZTp0LGluZGV4OnZvaWQgMH07ciYmKHUubWV0YWRhdGE9cik7bj11fWVsc2V7dmFyIHY9cSh0KSx4PXtuYW1lOnAsdmFsdWU6dixpbmRleDp2b2lkIDB9O3ImJih4Lm1ldGFkYXRhPXIsdiYmKHIucmF3TGVuZ3RoPVN0cmluZyh0KS5sZW5ndGgsci5ub3JtYWxpemVkTGVuZ3RoPXYubGVuZ3RoKSk7bj14fWVsc2Ugbj12b2lkIDA7dmFyIHk9bjt5JiZjLnB1c2goeSl9cmV0dXJuIGN9LEN3PWZ1bmN0aW9uKGEsYil7aWYoemIoYSl8fEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPUJiKGEpLGQ9MDtkPGMubGVuZ3RoOysrZCl7dmFyIGU9QncoY1tkXSksZj15aS50ZXN0KGUpO2ImJiFmJiZQKDg5KTshYiYmZiYmUCg4OCl9fSxEdz1mdW5jdGlvbihhKXt2YXIgYj1hP2d3KGEpOltdO3JldHVybiBvdyh7eWI6Yn0pfSxFdz1mdW5jdGlvbihhKXtyZXR1cm4gYSYmYSE9bnVsbCYmT2JqZWN0LmtleXMoYSkubGVuZ3RoPjAmJnliKEEuUHJvbWlzZSk/Z3coYSkuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gYi52YWx1ZSYmCmt3KGIubmFtZSkmJiF5aS50ZXN0KGIudmFsdWUpfSk6ITF9LEJ3PWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsPyIiOnpiKGEpP0xiKFN0cmluZyhhKSk6ImUwIn0senc9ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZShGdywiIil9LHh3PWZ1bmN0aW9uKGEpe3JldHVybiB5dyhhLnJlcGxhY2UoL1xzL2csIiIpKX0seXc9ZnVuY3Rpb24oYSl7cmV0dXJuIExiKGEucmVwbGFjZShHdywiIikudG9Mb3dlckNhc2UoKSl9LHZ3PWZ1bmN0aW9uKGEpe2E9YS5yZXBsYWNlKC9bXHMtKCkvLl0vZywiIik7YS5jaGFyQXQoMCkhPT0iKyImJihhPSIrIithKTtyZXR1cm4oTSg1OTcpP0h3Okl3KS50ZXN0KGEpP2E6ImUwIn0sdXc9ZnVuY3Rpb24oYSl7dmFyIGI9YS50b0xvd2VyQ2FzZSgpLnNwbGl0KCJAIik7aWYoYi5sZW5ndGg9PT0yKXt2YXIgYz1iWzBdOy9eKGdtYWlsfGdvb2dsZW1haWwpXC4vLnRlc3QoYlsxXSkmJihjPWMucmVwbGFjZSgvXC4vZywiIikpO2M9YysiQCIrYlsxXTtpZihKdy50ZXN0KGMpKXJldHVybiBjfXJldHVybiJlMCJ9LApLdz1mdW5jdGlvbihhKXt0cnl7cmV0dXJuIGEuZm9yRWFjaChmdW5jdGlvbihiKXtiLnZhbHVlJiZrdyhiLm5hbWUpJiYoYi52YWx1ZT1EaShiLnZhbHVlKSl9KSx7eWI6YX19Y2F0Y2goYil7cmV0dXJue3liOltdfX19LG53PWZ1bmN0aW9uKGEpe3JldHVybiBhLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIudmFsdWUmJmt3KGIubmFtZSl9KT95YihBLlByb21pc2UpP1Byb21pc2UuYWxsKGEubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLnZhbHVlJiZrdyhiLm5hbWUpP0FpKGIudmFsdWUpLnRoZW4oZnVuY3Rpb24oYyl7Yi52YWx1ZT1jfSk6UHJvbWlzZS5yZXNvbHZlKCl9KSkudGhlbihmdW5jdGlvbigpe3JldHVybnt5YjphfX0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue3liOltdfX0pOnt0aGVuOmZ1bmN0aW9uKGIpe2Ioe3liOltdfSl9fTpQcm9taXNlLnJlc29sdmUoe3liOmF9KX0sR3c9L1swLTlgfiFAIyQlXiYqKClfXC0rPTo7PD4sLj98L1xcW1xdXS9nLEp3PS9eXFMrQFxTK1wuXFMrJC8sCkl3PS9eXCtcZHsxMCwxNX0kLyxIdz0vXlwrXGR7NywxNX0kLyxGdz0vWy5+XS9nLGx3PS9eWzAtOUEtWmEtel8tXXs0M30kLyxMdz1bInJlbSIsInJwbiIsInJmbiIsInJsbiIsInJzYSJdLE13PXt9LGl3PShNdy5lbWFpbD0iZW0iLE13LnBob25lX251bWJlcj0icG4iLE13LmZpcnN0X25hbWU9ImZuIixNdy5sYXN0X25hbWU9ImxuIixNdy5zdHJlZXQ9InNhIixNdy5jaXR5PSJjdCIsTXcucmVnaW9uPSJyZyIsTXcuY291bnRyeT0iY28iLE13LnBvc3RhbF9jb2RlPSJwYyIsTXcuZXJyb3JfY29kZT0iZWMiLE13LnJhd19lbWFpbD0icmVtIixNdy5yYXdfcGhvbmVfbnVtYmVyPSJycG4iLE13LnJhd19maXJzdF9uYW1lPSJyZm4iLE13LnJhd19sYXN0X25hbWU9InJsbiIsTXcucmF3X3N0cmVldD0icnNhIixNdyk7dmFyIG13PU9iamVjdC5mcmVlemUoWyJlbWFpbCIsCiJwaG9uZV9udW1iZXIiLCJmaXJzdF9uYW1lIiwibGFzdF9uYW1lIiwic3RyZWV0Il0pOwp2YXIgUXc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1sdihhKSxkPWZ1bmN0aW9uKHApe3ZhciBxPUNwKGEpO3EmJihjLnRhZ19leHA9cSk7YihwKX0sZT1RKGEsSC5KLmRhKSxmPVEoYSxILkouWWEpLGc9WG8oW0YuRC5tYSxGLkQua2FdKSxoO2E6c3dpdGNoKGUpe2Nhc2UgWC5WLnhhOmNhc2UgWC5WLnpkOmNhc2UgWC5WLlpkOmNhc2UgWC5WLk9iOmNhc2UgWC5WLkZiOmg9ITA7YnJlYWsgYTtkZWZhdWx0Omg9ITF9aWYoaCYmZiYmZylpZihRKGEsSC5KLmZkKSlpZihOdyhhKSlkKGMpO2Vsc2V7dmFyIGw9c3coZiwhMCk7T3cobCxhLGMsZCl9ZWxzZXt2YXIgbjthOnt0cnl7bj1vdyhLdyhndyhmKSkpO2JyZWFrIGF9Y2F0Y2gocCl7fW49dm9pZCAwfWlmKG4pdHJ5e1B3KGMsYSkobil9Y2F0Y2gocCl7fWQoYyl9ZWxzZSBkZWxldGUgYy5lY19tb2RlLGQoYyl9LE53PWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouZGEpO3JldHVybiBiPT09WC5WLkZifHxiPT09WC5WLk9ifSxSdz1mdW5jdGlvbihhLApiKXtyZXR1cm4gYSE9PTF8fFEoYixILkouZGEpPT09WC5WLk9iJiYhTSg0NDUpPyExOiEhUShiLEguSi5mZCl9LFB3PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKGMpe1J3KGMuZW5jcnlwdGlvblJlc3VsdD8xOjAsYil8fChhLmVtPWMucGFyYW0pO2lmKGMuaGFzVXBkKXt2YXIgZD1TdyhiKTtkJiYoYS5lY3NpZD1kKX1NKDUyMykmJmMubWV0YWRhdGFQYXJhbSYmKGEuZW1kPWMubWV0YWRhdGFQYXJhbSk7fX0sU3c9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5kYSk9PT1YLlYuRmImJgohTSg0NDMpKXt2YXIgYj1RKGEsSC5KLkdhKTtyZXR1cm4gUShhLEguSi56ail8fFR2KGIpfX0sT3c9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYSl0cnl7YS50aGVuKFB3KGMsYikpLnRoZW4oZnVuY3Rpb24oKXtkKGMpfSk7cmV0dXJufWNhdGNoKGUpe31kKGMpfTt2YXIgVHc9T2JqZWN0LmZyZWV6ZSh7Z2NwOiIxIixzc2N0ZToiMSIsY3RfY29va2llX3ByZXNlbnQ6IjEifSk7CnZhciBVdz1mdW5jdGlvbihhLGIpe2F2LmNhbGwodGhpcyxhLGIsMSwhMSl9O3dhKFV3LGF2KTtVdy5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7UXcoYSxmdW5jdGlvbihkKXtRKGEsSC5KLmFqKSYmZGVsZXRlIGQuaXRlbTtRKGEsSC5KLm9iKSYmbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCxkLFR3KTt2YXIgZT1nayhiLkljKTtlJiYoZC5fdWlwPWUpO3ZhciBmPSI/IitrdihkKTtjKGYpfSl9O3ZhciBWdz1uZXcgVXcoMjIsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pLFd3PW5ldyBVdygyMyxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSksWHc9bmV3IFV3KDYwLFtdKSxZdz1mdW5jdGlvbigpe307d2EoWXcsb3UpO1l3LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEpe3JldHVybiBRKGEsSC5KLmRhKT09PVguVi56ZCYmUShhLEguSi5saik/W3tlbmRwb2ludDpYbyhmcCk/UShhLEguSi5vYik/V3c6Vnc6WHcsbWV0aG9kOmx1fV06W119O3ZhciBadz1uZXcgWXc7Cgp2YXIgJHc9ZnVuY3Rpb24oYSl7aWYoT3AoKT09PTIpcmV0dXJuITE7dmFyIGI9UShhLEguSi5kYSksYz1bWC5WLnhhLFguVi51Yl07TSg1OTMpJiZjLnB1c2goWC5WLllkKTtyZXR1cm4gYy5pbmNsdWRlcyhiKT8hMDohMX0sYXg9ZnVuY3Rpb24oYSl7cmV0dXJuIE0oNTAwKSYmT3AoKSE9PTImJlEoYSxILkouZGEpPT09WC5WLnhhfSxieD1mdW5jdGlvbihhKXt2YXIgYj1IcihhLnByZWZpeCk7Yj09PSJfZ2NsIiYmKGI9IiIpO3JldHVybiBifSxjeD1mdW5jdGlvbihhKXtpZihSKGEsRi5ELlNiKXx8UihhLEYuRC5KZSkpe3ZhciBiPVIoYSxGLkQuR2QpLGM9RWQoUShhLEguSi5HYSksbnVsbCksZD1IcihjLnByZWZpeCk7Yy5wcmVmaXg9ZD09PSJfZ2NsIj8iIjpkO2lmKFIoYSxGLkQuU2IpKXt2YXIgZT1YcyhiLGMsIVEoYSxILkouTm0pLGF4KGEpKTtWKGEsSC5KLk5tLCEwKTtlJiZVKGEsRi5ELnFtLGUpfWlmKFIoYSxGLkQuSmUpKXt2YXIgZj1QcyhiLGMpLlJyO2YmJlUoYSxGLkQuTWwsCmYpfX19LGl4PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBkeDtzd2l0Y2goUShhLEguSi5kYSkpe2Nhc2UgWC5WLnhhOlUoYSxGLkQuZm0sVXEoITEpLl9ncyk7ZXgoYSk7ZngoYSxiKTtneChhLGIpO2lmKCFiLmpvKCl8fE0oNDIxKSl7dmFyIGM9bm0oam0uYmEuVmUpLGQ9WG8oRi5ELmthKSYmWG8oRi5ELm1hKTtpZihjJiZjLmdjbGlkJiYhZCYmIVEoYSxILkouWGUpKXt2YXIgZT1TdHJpbmcoYy5nY2xpZCksZj1uZXcgZXI7ZnIoZiw2KTtiLkNqKHt2ZXJzaW9uOiJHQ0wiLHRpbWVzdGFtcDowLGdjbGlkOmUscWE6ZixvYTpbNF19KX19YnJlYWs7Y2FzZSBYLlYuT2I6Y2FzZSBYLlYuRmI6ZXgoYSk7ZngoYSxiKTticmVhaztjYXNlIFguVi51YjppZihNKDQ1OCkmJlhvKEYuRC5rYSkmJlEoYSxILkoud2YpKXt2YXIgZz1RKGEsSC5KLkdhKTtoeChhLGIsYngoZykpfWJyZWFrO2Nhc2UgWC5WLllkOmV4KGEpLGZ4KGEsYiksZ3goYSxiKX1iLk90KGEpfSxmeD1mdW5jdGlvbihhLGIpe2lmKFhvKEYuRC5rYSkmJgpRKGEsSC5KLndmKSl7dmFyIGM9UShhLEguSi5HYSksZD1ieChjKSxlPVJzKGQpO1UoYSxGLkQuQmUsZS5FZyk7VShhLEYuRC5EZSxlLldoKTtVKGEsRi5ELkNlLGUuVWgpO00oNDIxKT8oangoYSxiLGMsZCksaHgoYSxiLGQpKTpXcyhkKT9qeChhLGIsYyxkKTpoeChhLGIsZCl9fSxoeD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9JHcoYSk7VHMoYywiZ2NsaWQiLCJnY2xhdyIsZCkuZm9yRWFjaChmdW5jdGlvbihmKXtiLkNqKGYpfSk7Yi5MbygpO2lmKCFjKXt2YXIgZT1PcyhCcihBcigpKT9ScCgpOnt9LE1zKTtlJiZVKGEsRi5ELnJoLGUpfX0sang9ZnVuY3Rpb24oYSxiLGMsZCl7VHMoZCwiYnJhaWRzIiwiZ2NsZ2IiLGF4KGEpKS5mb3JFYWNoKGZ1bmN0aW9uKGcpe2IuanIoZyl9KTtpZighZCl7dmFyIGU9UihhLEYuRC5HZCk7Yz1FZChjLG51bGwpO2MucHJlZml4PWQ7dmFyIGY9UHMoZSxjLCEwKS5RcjtmJiZVKGEsRi5ELkplLGYpfX0sZXg9ZnVuY3Rpb24oYSl7aWYoTSgxNikpe3ZhciBiPQpPKGEuTSxGLkQuemEpO2J8fChiPU9wKCExKT09PTE/QS50b3AubG9jYXRpb24uaHJlZjpBLmxvY2F0aW9uLmhyZWYpO3ZhciBjLGQ9UmooYiksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpO2lmKCFlKXt2YXIgZj1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2U9ZXx8SWooZiwiZ2NsaWQiLCExKX0oYz1lP2UubGVuZ3RoOnZvaWQgMCkmJlUoYSxGLkQuemwsYyl9fSxneD1mdW5jdGlvbihhLGIpe3ZhciBjPVhvKEYuRC5rYSkmJlhvKEYuRC5tYSk7aWYoIWIuam8oKXx8TSg0MjEpKXt2YXIgZDt2YXIgZTtiOnt2YXIgZixnPUEsaD1bXTt0cnl7Zy5uYXZpZ2F0aW9uJiZnLm5hdmlnYXRpb24uZW50cmllcyYmKGg9Zy5uYXZpZ2F0aW9uLmVudHJpZXMoKSl9Y2F0Y2goQyl7fWY9aDt2YXIgbD17fTt0cnl7Zm9yKHZhciBuPWYubGVuZ3RoLTE7bj49MDtuLS0pe3ZhciBwPWZbbl0mJmZbbl0udXJsO2lmKHApe3ZhciBxPShuZXcgVVJMKHApKS5zZWFyY2hQYXJhbXMscj1xLmdldCgiZ2NsaWQiKXx8CnZvaWQgMCx0PXEuZ2V0KCJnY2xzcmMiKXx8dm9pZCAwO2lmKHIpe2wuZ2NsaWQ9cjt0JiYobC5WaD10KTtlPWw7YnJlYWsgYn19fX1jYXRjaChDKXt9ZT1sfXZhciB1PWUsdj11LmdjbGlkLHg9dS5WaCx5O2lmKHYmJih4PT09dm9pZCAwfHx4PT09ImF3Inx8eD09PSJhdy5kcyJ8fFlmKDgpJiZ4PT09ImF3LmR2IikpaWYodiE9PXZvaWQgMCl7dmFyIHo9bmV3IGVyO2ZyKHosMik7ZnIoeiwzKTt5PXt2ZXJzaW9uOiJHQ0wiLHRpbWVzdGFtcDowLGdjbGlkOnYscWE6eixvYTpbM119fWVsc2UgeT12b2lkIDA7ZWxzZSB5PXZvaWQgMDtkPXk7ZCYmKCFjJiZRKGEsSC5KLlhlKSYmKGQuZ2NsaWQ9IjAiKSxiLkNqKGQpLGIuTG8oKSl9fSxkeD1mdW5jdGlvbigpe3RoaXMuSD1bXTt0aGlzLks9W107dGhpcy5OPXZvaWQgMH07az1keC5wcm90b3R5cGU7ay5Daj1mdW5jdGlvbihhKXtRcih0aGlzLkgsYSl9O2suanI9ZnVuY3Rpb24oYSl7UXIodGhpcy5LLGEpfTtrLmpvPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSy5sZW5ndGg+CjB9O2suTG89ZnVuY3Rpb24oKXt0aGlzLk4hPT0hMSYmKHRoaXMuTj0hMSl9O2sueW89ZnVuY3Rpb24oYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7aWYoYS5sZW5ndGgpe3ZhciBlPVtdLGY9W10sZz1bXTthLmZvckVhY2goZnVuY3Rpb24oaCl7ZS5wdXNoKGguZ2NsaWQpO3ZhciBsLG47Zi5wdXNoKChuPShsPWgucWEpPT1udWxsP3ZvaWQgMDpsLmdldCgpKSE9bnVsbD9uOjApO2cucHVzaChWcyhoLm9hfHxbMF0pKX0pO2UubGVuZ3RoJiZVKGIsYy5pZCxlLmpvaW4oIi4iKSk7ZHx8KGYubGVuZ3RoJiZVKGIsYy5xYSxmLmpvaW4oIi4iKSksZy5sZW5ndGgmJlUoYixjLm9hLGcuam9pbigiLiIpKSl9fTtrLk90PWZ1bmN0aW9uKGEpe3RoaXMuSC5sZW5ndGg+MCYmdGhpcy55byh0aGlzLkgsYSx7aWQ6Ri5ELmxiLHFhOkYuRC5CZCxvYTpGLkQuQ2R9LHRoaXMuTik7KHRoaXMuSC5sZW5ndGg9PT0wfHxNKDQyMSkpJiZ0aGlzLnlvKHRoaXMuSyxhLHtpZDpGLkQuU2IscWE6Ri5ELmZoLApvYTpGLkQuZ2h9KX07dmFyIGt4PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJJbmplY3RBZHNTY3JpcHQiKX07d2Eoa3gsaHUpO2t4LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtreC5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTtreC5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIsYyl7YW8oYS5GbyxBLEIsYixmdW5jdGlvbigpe3JldHVybiB2b2lkIGEuamYoKX0sZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBhLnJkKHZvaWQgMCl9LGM9PW51bGw/dm9pZCAwOmMuYWYpfHxYbihhLkZvLGIucmVwbGFjZSgiJmZtdD00JiIsIiZmbXQ9MyYiKSxmdW5jdGlvbigpe3JldHVybiB2b2lkIGEuamYoKX0sZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBhLnJkKHZvaWQgMCl9LGM9PW51bGw/dm9pZCAwOmMuYWYpfTt2YXIgbHg9bmV3IGt4O3ZhciBteD1PYmplY3QuZnJlZXplKHthdHRyaWJ1dGlvbnNyYzoiIn0pLG54PU9iamVjdC5mcmVlemUoe2V2ZW50U291cmNlRWxpZ2libGU6ITEsdHJpZ2dlckVsaWdpYmxlOiEwfSk7ZnVuY3Rpb24gb3goKXt2YXIgYT1YTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU7cmV0dXJuIGEmJnliKGEuc2V0QXR0cmlidXRpb25SZXBvcnRpbmcpfTt2YXIgcHg9T2JqZWN0LmZyZWV6ZSh7Y2FjaGU6Im5vLXN0b3JlIixjcmVkZW50aWFsczoiaW5jbHVkZSIsbWV0aG9kOiJHRVQiLGtlZXBhbGl2ZTohMCxyZWRpcmVjdDoiZm9sbG93In0pOwpmdW5jdGlvbiBxeChhLGIsYyxkLGUsZil7aWYoIXliKEEuZmV0Y2gpKXJldHVybiBmPT1udWxsfHxmKHZvaWQgMCx2b2lkIDApLCExO3ZhciBnPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scHgpO2ImJihnLmJvZHk9YixnLm1ldGhvZD0iUE9TVCIpO25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZyxkKTtBLmZldGNoKGEsZykudGhlbihmdW5jdGlvbihoKXtpZihoLm9rKXtpZihoLmJvZHkpe3ZhciBsPWguYm9keS5nZXRSZWFkZXIoKSxuPW5ldyBUZXh0RGVjb2RlcjtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocCl7ZnVuY3Rpb24gcSgpe2wucmVhZCgpLnRoZW4oZnVuY3Rpb24ocil7dmFyIHQ7dD1yLmRvbmU7dmFyIHU9bi5kZWNvZGUoci52YWx1ZSx7c3RyZWFtOiF0fSk7dT1jLlIrdTtmb3IodmFyIHY9dS5pbmRleE9mKCJcblxuIik7diE9PS0xOyl7dmFyIHg9WmcseTthOnt2YXIgej1tKHUuc3Vic3RyaW5nKDAsdikuc3BsaXQoIlxuIikpLEM9CnoubmV4dCgpLnZhbHVlLEQ9ei5uZXh0KCkudmFsdWU7aWYoU2IoQywiZXZlbnQ6IG1lc3NhZ2UiKSYmU2IoRCwiZGF0YTogIikpe3ZhciBJPUQuc3Vic3RyaW5nKDYpO3RyeXt5PUpTT04ucGFyc2UoSSk7YnJlYWsgYX1jYXRjaChHKXt9fXk9dm9pZCAwfXgoYyx5KTt1PXUuc3Vic3RyaW5nKHYrMik7dj11LmluZGV4T2YoIlxuXG4iKX1jLlI9dTt0PyhlPT1udWxsfHxlKGgpLHAoKSk6cSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtlPT1udWxsfHxlKGgpO3AoKX0pfXEoKX0pfWU9PW51bGx8fGUoaCl9ZWxzZSBmPT1udWxsfHxmKGgsdm9pZCAwKX0pLmNhdGNoKGZ1bmN0aW9uKGgpe2Y9PW51bGx8fGYodm9pZCAwLGgpfSk7cmV0dXJuITB9O3ZhciByeD1mdW5jdGlvbihhKXtodS5jYWxsKHRoaXMsIkZldGNoUmljaFJlc3BvbnNlIiwxKTt0aGlzLk49YX07d2EocngsaHUpO3J4LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiB5YihBLmZldGNoKX07cngucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07cngucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe3F4KGIsYz09bnVsbD92b2lkIDA6Yy5ib2R5LHRoaXMuTixjPT1udWxsP3ZvaWQgMDpjLkdiLGEucGUsZnVuY3Rpb24oZCxlKXthLm9uRmFpbHVyZShlKX0pfTsKdmFyIHN4PWZ1bmN0aW9uKGEsYil7dmFyIGM9dm9pZCAwO2EgaW5zdGFuY2VvZiBrdT9jPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sbGQpOmEgaW5zdGFuY2VvZiByeCYmKGM9e30sb3goKSYmKGMuYXR0cmlidXRpb25SZXBvcnRpbmc9bngpKTshYiYmYyYmKGMuY3JlZGVudGlhbHM9Im9taXQiLGMubW9kZT0iY29ycyIpO3JldHVybiBjfSx0eD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1iLm1ldGhvZDtRdyhhLGZ1bmN0aW9uKGYpe3ZhciBnPVEoYSxILkoub2IpLGg9WG8oZnApLGw9ZSBpbnN0YW5jZW9mIGl1PzM6ZSBpbnN0YW5jZW9mIGt4P2M9PT01fHxjPT09OD8zOjQ6ZSBpbnN0YW5jZW9mIGt1PyFnJiZoPzM6ODplIGluc3RhbmNlb2Ygcng/NzotMTtlIGluc3RhbmNlb2Yga3gmJmw9PT0zPyhmLmZtdD00LGYucmZtdD0zKTpmLmZtdD1sO25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZixjPT09NjY/e2djcDoiNCJ9Omd8fGM9PT04fHxjPT09NjU/ClR3Ont9KTt2YXIgbj1laVtGLkQuZWhdO24mJihmW25dPWMpO2lmKE0oNTY5KSl7dmFyIHA9Yi5DdCxxPXAuamsuZmlsdGVyKGZ1bmN0aW9uKHYpe3JldHVybiB2WzBdIT09dm9pZCAwfSkubWFwKGZ1bmN0aW9uKHYpe3JldHVybiB2WzBdLmVuZHBvaW50LmVuZHBvaW50fSk7cS5sZW5ndGg+MCYmKHEucHVzaChwLm1rWzBdLmVuZHBvaW50LmVuZHBvaW50KSxmLmVwcD1xLnNvcnQoZnVuY3Rpb24odix4KXtyZXR1cm4gdi14fSkuam9pbigifiIpKX12YXIgcj0iPyIra3YoZiksdD1zeChlLGgpLHU7dT0oZSBpbnN0YW5jZW9mIGl1fHxlIGluc3RhbmNlb2Yga3gpJiZYbygiYWRfdXNlcl9kYXRhIik/bXg6dm9pZCAwO2Qocix7R2I6dCxhZjp1fSl9KX07dmFyIHV4PWZ1bmN0aW9uKGEsYil7YXYuY2FsbCh0aGlzLGEsYiwyKX07d2EodXgsYXYpO3V4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYixjKXt0eChhLGIsdGhpcy5lbmRwb2ludCxjKX07dmFyIHZ4PW5ldyB1eCg1LFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSx3eD1uZXcgdXgoNixbXSkseHg9bmV3IHV4KDYzLFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSx5eD1uZXcgdXgoNjUsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pLHp4PW5ldyB1eCg4LFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSxBeD1uZXcgdXgoNjYsW10pLEJ4PW5ldyB1eCg3NCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk7dmFyIEN4PWZ1bmN0aW9uKCl7WWcuYXBwbHkodGhpcyxhcmd1bWVudHMpfTt3YShDeCxZZyk7Q3gucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiKXtaYyhhLHZvaWQgMCwkZyh0aGlzLGIpLGIuYXR0cmlidXRpb25fcmVwb3J0aW5nJiZveCgpP214Ont9KX07Q3gucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmF0dHJpYnV0aW9uX3JlcG9ydGluZyYmb3goKT97YXR0cmlidXRpb25SZXBvcnRpbmc6bnh9Ont9LGQ9JGcodGhpcyxiKTtiLnByb2Nlc3NfcmVzcG9uc2U/cXgoYSx2b2lkIDAsdGhpcyxjLHZvaWQgMCxkKTptZChhLHZvaWQgMCxjLHZvaWQgMCxkKX07dmFyIER4PWZ1bmN0aW9uKCl7Q3guYXBwbHkodGhpcyxhcmd1bWVudHMpfTt3YShEeCxDeCk7RHgucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXtDeC5wcm90b3R5cGUuSC5jYWxsKHRoaXMsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGIse3Byb2Nlc3NfcmVzcG9uc2U6ITF9KSl9O3ZhciBFeD1mdW5jdGlvbigpe307d2EoRXgsb3UpO0V4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouZGEpIT09WC5WLnhhKXJldHVybltdO3ZhciBiPVhvKGZwKSxjPSEhUShhLEguSi5vYiksZD0hIVEoYSxILkouRWMpLGU9W3tlbmRwb2ludDpiP2Q/Yz95eDp4eDpjP3p4OnZ4Ond4LG1ldGhvZDpuZCgpP2I/TSg0OTApP2M/bnU6bmV3IHJ4KG5ldyBEeCk6bHg6bnU6bHV9XSxmPWI/Yz92b2lkIDA6eng6QXg7ZiYmZS5wdXNoKHtlbmRwb2ludDpmLG1ldGhvZDpudX0pO3JldHVybiBlfTtFeC5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXtyZXR1cm4gUShhLEguSi5kYSk9PT1YLlYueGEmJldqKCkmJiFRKGEsSC5KLkVjKSYmTSg1NjkpJiZYbyhmcCk/W1t7ZW5kcG9pbnQ6QngsbWV0aG9kOm51fV1dOltdfTt2YXIgRng9bmV3IEV4O3ZhciBHeD1mdW5jdGlvbihhLGIpe2d1LmNhbGwodGhpcyxhLGIsMSwhMSwzKX07d2EoR3gsZ3UpO0d4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1sdihhKSxlPSI/IitrdihkKTtjKGUse0diOmxkfSl9O3ZhciBIeD1uZXcgR3goNTQsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pLEl4PW5ldyBHeCg1NSxbXSksSng9ZnVuY3Rpb24oKXt9O3dhKEp4LG91KTtKeC5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXtyZXR1cm5be2VuZHBvaW50Okh4LksoYSk/SHg6SXgsbWV0aG9kOm51fV19O3ZhciBLeD1uZXcgSng7CnZhciBMeD1mdW5jdGlvbigpe2F2LmNhbGwodGhpcyw5LFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdLDEpfTt3YShMeCxhdik7THgucHJvdG90eXBlLmlzU3VwcG9ydGVkPWZ1bmN0aW9uKGEpe3JldHVybiBRKGEsSC5KLmRhKT09PVguVi5aZH07THgucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXM7UXcoYSxmdW5jdGlvbihlKXt2YXIgZj1laVtGLkQuZWhdO2YmJihlW2ZdPWQuZW5kcG9pbnQpO2UuZ2NwPTE7ZS5jdF9jb29raWVfcHJlc2VudD0xO2UuZm10PWIubWV0aG9kIGluc3RhbmNlb2Yga3U/ODozO3ZhciBnPSI/IitrdihlKTtjKGcse0diOmxkfSl9KX07dmFyIE14PW5ldyBMeCxOeD1mdW5jdGlvbigpe307d2EoTngsb3UpO054LnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuW3tlbmRwb2ludDpNeCxtZXRob2Q6bnV9LHtlbmRwb2ludDpNeCxtZXRob2Q6bHV9XX07dmFyIE94PW5ldyBOeDt2YXIgUHg9WzY4XTt2YXIgUXg9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9YTt0aGlzLnRpbWVvdXRNcz1iO3RoaXMuUmI9dm9pZCAwfSxSeD1mdW5jdGlvbihhKXthLlJifHwoYS5SYj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS5IKCk7YS5SYj12b2lkIDB9LGEudGltZW91dE1zKSl9LFRuPWZ1bmN0aW9uKGEpe2EuUmImJihjbGVhclRpbWVvdXQoYS5SYiksYS5SYj12b2lkIDApfTt2YXIgU3g9ZnVuY3Rpb24oKXt2YXIgYT1OZig2NiwwKTt0aGlzLks9W107dGhpcy5SPWE7dGhpcy5IPVlhKCl9LFV4PWZ1bmN0aW9uKGEpe3ZhciBiPVR4O2IuSy5wdXNoKGEpO2IuTnx8KGIuTj1mdW5jdGlvbigpe2Zvcih2YXIgYz1tKGIuSyksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7dHJ5e2UoKX1jYXRjaChsKXt9fWZvcih2YXIgZj1tKGIuSC52YWx1ZXMoKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPXZvaWQgMDsoaD1nLnZhbHVlLndlKT09bnVsbHx8VG4oaCl9Yi5ILmNsZWFyKCl9LCRjKEEsInBhZ2VoaWRlIixiLk4pKX0sVng9ZnVuY3Rpb24oYSl7dmFyIGI9YS5tYXRjaChNbilbM118fG51bGwsYz0oYj9kZWNvZGVVUkkoYik6Yil8fCIiLGQ9UG4oYSwibGFiZWwiKXx8IiIsZT1QbihhLCJyYW5kb20iKXx8IiI7cmV0dXJuIGMrIjoiK0xuKGQpKyI6IitMbihlKX0sV3g9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVR4LAplPVZ4KGEpO2lmKCEoZC5ILmhhcyhlKXx8ZC5ILnNpemU+PWQuUikpe3ZhciBmPXt9O2ImJmI+MCYmYyYmKGYud2U9bmV3IFF4KGMsYikpO2QuSC5zZXQoZSxmKTt2YXIgZzsoZz1mLndlKT09bnVsbHx8UngoZyl9fSxVbj1mdW5jdGlvbihhLGIpe3ZhciBjPVZ4KGIpLGQsZTsoZD1hLkguZ2V0KGMpKT09bnVsbHx8KGU9ZC53ZSk9PW51bGx8fFRuKGUpO2EuSC5kZWxldGUoYyl9O1N4LnByb3RvdHlwZS5nZXRTaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSC5zaXplfTsKdmFyIFh4PWZ1bmN0aW9uKGEsYil7dmFyIGMsZD0oYz1RKGEsSC5KLmduKSk9PW51bGw/dm9pZCAwOmNbYi5wYl07cmV0dXJuIGQhPT12b2lkIDAmJmQ+PWIuT2d9LFl4PWZ1bmN0aW9uKGEsYil7aWYoUShhLEguSi5kYSk9PT1YLlYueGEmJiFRKGEsSC5KLkVjKSYmWHgoYSxudikmJiEoYjw9MCkpcmV0dXJuIG5ldyBReChmdW5jdGlvbigpe3J2KG52KX0sYil9LFp4PWZ1bmN0aW9uKGEsYixjKXtRKGIsSC5KLmRhKSE9PVguVi54YXx8UShiLEguSi5FYyl8fChUeHx8KFR4PW5ldyBTeCxYeChiLG92KSYmVXgoZnVuY3Rpb24oKXt2YXIgZDtydihvdiwoZD1UeCk9PW51bGw/dm9pZCAwOmQuZ2V0U2l6ZSgpKX0pKSxYeChiLG52KT9XeChhLGMsZnVuY3Rpb24oKXtydihudik7dmFyIGQ7KGQ9VHgpPT1udWxsfHxVbihkLGEpfSk6V3goYSkpfSxUeDsKdmFyICR4PWZ1bmN0aW9uKGEsYixjLGQsZSl7ZT1lPT09dm9pZCAwPzA6ZTtpZihkKXt2YXIgZj1RKGEsSC5KLkViKTtiPWIuTGEoe3JhbmRvbTpmK2UsZGF0YTpkfSl9cmV0dXJuW3tlbmRwb2ludDpiLG1ldGhvZDpjfSx7ZW5kcG9pbnQ6YixtZXRob2Q6bHV9XX0sYXk9ZnVuY3Rpb24oYSxiLGMsZCl7YXYuY2FsbCh0aGlzLGEsYiwxLGMpO3RoaXMuTj1kfTt3YShheSxhdik7YXkucHJvdG90eXBlLmlzU3VwcG9ydGVkPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmVuZHBvaW50PT09NjgmJlEoYSxILkoub2IpPyExOiEwfTtheS5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bHYoYSk7dGhpcy5OJiZuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGQsdGhpcy5OKTt2YXIgZT1laVtGLkQuZWhdO2UmJihkW2VdPXRoaXMuZW5kcG9pbnQpO3RoaXMuZW5kcG9pbnQhPT02OCYmKGRlbGV0ZSBkLmdjbGF3LGRlbGV0ZSBkLmdjbGF3X3NyYyk7dmFyIGY9dm9pZCAwO1EoYSwKSC5KLm9iKT8oZC5nY3A9MSxkLmN0X2Nvb2tpZV9wcmVzZW50PTEpOnRoaXMuZW5kcG9pbnQ9PT02OCYmKGQuZ2NwPTUsYi5tZXRob2QgaW5zdGFuY2VvZiBrdSYmKGQuZm10PTgsZj1sZCkpO3ZhciBnPSI/IitrdihkKTtjKGcsZj97R2I6Zn06e30pfTtheS5wcm90b3R5cGUuTGE9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBheSh0aGlzLmVuZHBvaW50LHRoaXMuWix0aGlzLmphLGEpfTt2YXIgYnk9bmV3IGF5KDksWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0sITApLGN5PW5ldyBheSg2OCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSwhMSksZHk9ZnVuY3Rpb24oKXt9O3dhKGR5LG91KTtkeS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj1ndihhKTtyZXR1cm4gJHgoYSxieSxRKGEsSC5KLm9iKT9udTpseCxiPT1udWxsP3ZvaWQgMDpiWzBdKX07ZHkucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9Z3YoYSksYz1bXTtNKDQ1OCkmJiFRKGEsSC5KLm9iKSYmCmMucHVzaCgkeChhLGN5LG51LGI9PW51bGw/dm9pZCAwOmJbMF0pKTtpZihiJiZiLmxlbmd0aD4xKWZvcih2YXIgZD1RKGEsSC5KLm9iKT9udTpseCxlPTE7ZTxiLmxlbmd0aDsrK2UpYy5wdXNoKCR4KGEsYnksZCxiW2VdLGUpKTtyZXR1cm4gY307dmFyIGV5PW5ldyBkeTsKdmFyIGd5PWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIodil7cmV0dXJuIHYuc3BsaXQoIn4iKS5maWx0ZXIoZnVuY3Rpb24oeCl7dmFyIHk9eC5zcGxpdCgiLiIpWzBdO3JldHVybiFMdy5zb21lKGZ1bmN0aW9uKHope3JldHVybiBTYih5LHopfSl9KS5qb2luKCJ+Iil9aWYoTncoYSkmJlEoYSxILkouZmQpKXt2YXIgYz1RKGEsSC5KLllhKSxkPUJwKCksZT1ndyhjLGQpLGY9ZS5zb21lKGZ1bmN0aW9uKHYpe3JldHVybiBTYih2Lm5hbWUsInJhdyIpfSksZz1mdyhlKSxoPWcuT28sbD1nLmlpLG49Zy5oYXNVcGQscD1nLlluLHE9Zy5lbmNyeXB0aW9uS2V5U3RyaW5nLHI9Zy5tZXRhZGF0YVBhcmFtLHQ9W107UncoMSxhKXx8dC5wdXNoKCImZW09IitiKGgpKTt0LnB1c2goIiZlbWU9IitwKTt2YXIgdTtyZXR1cm4gdT17aWk6bCxJdDp0LHN2OmUsWG46cixlbmNyeXB0aW9uS2V5U3RyaW5nOnEsVnI6ZnVuY3Rpb24odil7dmFyIHg9ZnkoYSx1KSx5PXN3KFEoYSxILkouWWEpLCEwLCEwKTtJdSh5LApmdW5jdGlvbih6KXtpZighUncoMSxhKSl7dmFyIEM9KHo9PW51bGw/dm9pZCAwOnoucGFyYW0pfHxvdyh7eWI6W119KS5wYXJhbTt4LmVtPUN9dih4KX0pfSxoYXNVcGQ6bixwZjp2b2lkIDAscmF3UGlpQWRkZWQ6Zn19fSxmeT1mdW5jdGlvbihhLGIpe3ZhciBjLGQ9KGM9Yi5wZikhPW51bGw/YzozLGU9e2d0bTpkdSh7bWM6UShhLEguSi5OYiksVGc6YS5NLmlzR3RtRXZlbnQsZWY6UShhLEguSi5DYykscGY6ZH0pfTtiLlhuJiYoZS5lbWQ9Yi5Ybik7aWYoYi5oYXNVcGQpe3ZhciBmPQpTdyhhKTtmJiYoZS5lY3NpZD1mKX1iLnJhd1BpaUFkZGVkJiYoZVsiZ2FwLnJwIl09IjEiKTtyZXR1cm4gZX07dmFyIGRnO2Z1bmN0aW9uIGh5KGEsYil7dmFyIGM7KGM9ZGcpPT1udWxsfHwkZihjLkgsYSxiKX07dmFyIGl5PUFhKFsiLyJdKSxqeT1mdW5jdGlvbihhKXt0aGlzLkg9YTt0aGlzLmZhaWx1cmVUeXBlPXZvaWQgMH07ankucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXt0cnl7dmFyIGQ9dGhpcy5ILmFjdGl2ZTtkPyhkLnBvc3RNZXNzYWdlKHt0eXBlOjEsY29tbWFuZDphfSksYih7ZGF0YToiIn0pKTpjKHtmYWlsdXJlVHlwZToxMyxkYXRhOiIifSl9Y2F0Y2goZSl7Yyh7ZmFpbHVyZVR5cGU6MTEsZGF0YTplLm1lc3NhZ2V9KX19O3ZhciBreT1mdW5jdGlvbihhLGIpe3RoaXMuZmFpbHVyZVR5cGU9YTt0aGlzLkg9Yn07a3kucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXtjKHtmYWlsdXJlVHlwZTp0aGlzLmZhaWx1cmVUeXBlLGRhdGE6ImYiK3RoaXMuZmFpbHVyZVR5cGUrKCJ0IisoKG5ldyBEYXRlKS5nZXRUaW1lKCktdGhpcy5IKSl9KX07CnZhciBueT1mdW5jdGlvbihhKXt2YXIgYj10aGlzO3RoaXMuaW5pdFRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dGhpcy5IPW5ldyBreSgxNSx0aGlzLmluaXRUaW1lKTt2YXIgYz1uZXcgUHJvbWlzZShmdW5jdGlvbihlKXtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlKCl9LDIwKX0pLGQ9bHkoYSkudGhlbihmdW5jdGlvbihlKXtiLkg9bmV3IGp5KGUpO215KGIsZSl9KS5jYXRjaChmdW5jdGlvbigpe2IuSD1uZXcga3koNCxiLmluaXRUaW1lKX0pO3RoaXMuSz1Qcm9taXNlLnJhY2UoW2MsZF0pfSxteT1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1bmN0aW9uKGQpe2QmJmQuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKCl7aWYoZC5zdGF0ZT09PSJyZWR1bmRhbnQiKXt2YXIgZT1iLmFjdGl2ZTtlJiZlLnN0YXRlIT09InJlZHVuZGFudCJ8fChhLkg9bmV3IGt5KDEwLGEuaW5pdFRpbWUpKX19KX07YyhiLmFjdGl2ZSk7YyhiLndhaXRpbmcpO2MoYi5pbnN0YWxsaW5nKTsKYi5hZGRFdmVudExpc3RlbmVyKCJ1cGRhdGVmb3VuZCIsZnVuY3Rpb24oKXtjKGIuaW5zdGFsbGluZyl9KX07bnkucHJvdG90eXBlLmRlbGVnYXRlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSy50aGVuKGZ1bmN0aW9uKCl7ZC5ILmlvKGEsYixjKX0pfTtueS5wcm90b3R5cGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gMn07CnZhciBseT1mdW5jdGlvbihhKXt2YXIgYixjPUxmKDExKTtjPUxmKDEwKTtiPWM7dmFyIGQ9e3Njb3BlOihUYihhLmhyZWYsIi8iKT9hLmhyZWYuc2xpY2UoMCwtMSk6YS5ocmVmKSsiL18vc2VydmljZV93b3JrZXIifTtiJiYoZC51cGRhdGVWaWFDYWNoZT0iYWxsIik7dmFyIGUsZj1veShhLGIpLGc9bmV3IE1hcChbWyJwYXRoIixhLnBhdGhuYW1lXV0pLGg9SnAoa2MoZikudG9TdHJpbmcoKSk7ZT1McChoLnprLGgucGFyYW1zLGguZnJhZ21lbnQsZyk7dmFyIGw9SWMoKSxuPWtjKGUpO3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLGQpfWNhdGNoKHApe3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLnRvU3RyaW5nKCksZCl9Y2F0Y2gocSl7cmV0dXJuIFByb21pc2UucmVqZWN0KHEpfX19OwpmdW5jdGlvbiBveShhLGIpe2Zvcih2YXIgYz1LcChpeSksZD1hLnBhdGhuYW1lLnNwbGl0KCIvIikuZmlsdGVyKGZ1bmN0aW9uKGgpe3JldHVybiBoLmxlbmd0aD4wfSksZT1bXS5jb25jYXQodyhkKSxbIl8iLCJzZXJ2aWNlX3dvcmtlciIsYiwic3cuanMiXSksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWM9TXAoYyxnLnZhbHVlKTtyZXR1cm4gY307ZnVuY3Rpb24gcHkoYSl7dmFyIGI9bm0oam0uYmEuT2gpLGM9Yj09bnVsbD92b2lkIDA6YlthXTtjfHxhIT09ImxpdGUifHwoYz1iPT1udWxsP3ZvaWQgMDpiLmZ1bGwpO3JldHVybiBjfXZhciBxeT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cHkoImZ1bGwiKTtkP2QuZGVsZWdhdGUoYSxiLGMpOmMoe2ZhaWx1cmVUeXBlOjE2fSl9O2Z1bmN0aW9uIHJ5KGEsYixjLGQsZSl7cXkoe2NvbW1hbmRUeXBlOjAscGFyYW1zOnt1cmw6YSxtZXRob2Q6MSx0ZW1wbGF0ZXM6Yixib2R5OiIiLHByb2Nlc3NSZXNwb25zZTohMSxlbmNyeXB0aW9uS2V5U3RyaW5nOmUsc29SZWZlcnJlcjpBLmxvY2F0aW9uLmhyZWZ9fSxjLGZ1bmN0aW9uKGYpe2QoZi5mYWlsdXJlVHlwZSxmLmRhdGEpfSl9O3ZhciBzeT1mdW5jdGlvbihhKXtodS5jYWxsKHRoaXMsIlNlcnZpY2VXb3JrZXJGcmFtZWxlc3MiKTt0aGlzLk49YX07d2Eoc3ksaHUpO3N5LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtzeS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTtzeS5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXM7cnkoYix0aGlzLk4uaWksZnVuY3Rpb24oKXthLmpmKCl9LGZ1bmN0aW9uKGQpe2MuTi5wZj1kO2EucmQodm9pZCAwKX0sdGhpcy5OLmVuY3J5cHRpb25LZXlTdHJpbmcpfTsKdmFyIHR5PWZ1bmN0aW9uKGEpe2F2LmNhbGwodGhpcyxhLFsiYWRfdXNlcl9kYXRhIiwiYWRfc3RvcmFnZSJdLDEsITEpfTt3YSh0eSxhdik7dHkucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXM7UXcoYSxmdW5jdGlvbihlKXt2YXIgZj1RKGEsSC5KLnBqKSxnPWZ1bmN0aW9uKCl7dmFyIG49a3YoZSk7ZiYmYi5tZXRob2QgaW5zdGFuY2VvZiBzeSYmKG4rPWYuSXQuam9pbigiIikpO2Mobix7R2I6bGR9KX07aWYoZC5lbmRwb2ludD09PTIxfHxkLmVuZHBvaW50PT09NzMpe3ZhciBoPWdrKGIuSWMpO2gmJihlLl91aXA9aCl9aWYoZiYmKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZSxmeShhLGYpKSwhKGIubWV0aG9kIGluc3RhbmNlb2Ygc3kpKSl7dmFyIGw7Zi5wZj0obD1mLnBmKSE9bnVsbD9sOjE3O2YuVnIoZnVuY3Rpb24obil7bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCxlLG4pO2coKX0pO3JldHVybn1nKCl9KX07dHkucHJvdG90eXBlLlI9CmZ1bmN0aW9uKGEpe3JldHVybiBhdi5wcm90b3R5cGUuUi5jYWxsKHRoaXMsYSkuc2xpY2UoMCwtMSl9O3ZhciB1eT1uZXcgdHkoMTEpLHZ5PW5ldyB0eSg3Miksd3k9ZnVuY3Rpb24oYSxiKXt0aGlzLlo9YTt0aGlzLlI9Yn07d2Eod3ksb3UpO3d5LnByb3RvdHlwZS5mYT1mdW5jdGlvbigpe3JldHVybiBNKDU2Myk/W3RoaXMuWix0aGlzLlJdOk0oMTQxKT9bdGhpcy5aXTpbdGhpcy5SXX07d3kucHJvdG90eXBlLmphPWZ1bmN0aW9uKCl7cmV0dXJuIG51LmlzU3VwcG9ydGVkKCk/W251XTpbbXUsbHVdfTt3eS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9dGhpcy5mYSgpLGQ9Yy5mbGF0TWFwKGZ1bmN0aW9uKGYpe3JldHVybiBiLmphKCkubWFwKGZ1bmN0aW9uKGcpe3JldHVybntlbmRwb2ludDpmLG1ldGhvZDpnfX0pfSk7aWYodGhpcy5OKCkpe3ZhciBlPVEoYSxILkoucGopO2UmJmUuaGFzVXBkJiZkLnVuc2hpZnQoe2VuZHBvaW50OmNbMF0sbWV0aG9kOm5ldyBzeShlKX0pfXJldHVybiBkfTsKdmFyIHh5PWZ1bmN0aW9uKCl7d3kuY2FsbCh0aGlzLHV5LHZ5KX07d2EoeHksd3kpO3h5LnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7cmV0dXJuITB9O3ZhciB5eT1uZXcgeHksenk9bmV3IHR5KDIxKSxBeT1uZXcgdHkoNzMpLEJ5PWZ1bmN0aW9uKCl7d3kuY2FsbCh0aGlzLHp5LEF5KX07d2EoQnksd3kpO0J5LnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7cmV0dXJuIE0oNTg3KX07dmFyIEN5PW5ldyBCeTt2YXIgRHk9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0wO3RoaXMuSz0hMTtNKDQ2MikmJlVtKCJmcyIsZnVuY3Rpb24oKXtyZXR1cm4gYS5IPjAmJmEuSDw1P1N0cmluZyhhLkgpOnZvaWQgMH0sITEpfSxFeTtmdW5jdGlvbiBGeShhLGIpe0V5fHwoRXk9bmV3IER5KTt2YXIgYz1FeTtNKDQ2MikmJmZuLksmJihiPT09Imd0bS5mb3JtU3VibWl0Inx8Yj09PSJmb3JtX3N1Ym1pdCImJklmKDQ1KSkmJihhPT09MXx8Yy5LKSYmKGMuSz0hMCxjLkg9YSxhIT09NT9WbSgiZnMiKTpRbS5ILmZzPSExKX07dmFyIEd5PWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouZGEpPT09WC5WLkthKXt2YXIgYj1mdShhKTtpZighTSg0MjcpJiYoanAoYSxiKXx8UShhLEguSi5oZCkpJiZYbyhmcCkpe3ZhciBjPWxwKGEsYik7aWYoYyl7dmFyIGQ9Tm0oNjksYyk7VGwoZCxhLDY5KTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OjY5LGV2ZW50SWQ6YS5NLmV2ZW50SWQscHJpb3JpdHlJZDphLk0ucHJpb3JpdHlJZH0sZCl9fXZhciBlPXliKGEuTS5vblN1Y2Nlc3MpP2EuTS5vblN1Y2Nlc3M6eGI7JHUoYSxiKTtlKCl9fTt2YXIgSHk9e1g6e1dxOjAsRWs6MSxaZzoyLFhrOjMsbWk6NCxWazo1LFdrOjYsWWs6NyxuaTo4LHRtOjksc206MTAsVGk6MTEsdm06MTIsQmg6MTMsRW06MTQsaWo6MTUsU3E6MTYsamQ6MTcsdWo6MTgsdmo6MTksd2o6MjAsQ246MjEseGo6MjJ9fTtIeS5YW0h5LlguV3FdPSJSRVNFUlZFRF9aRVJPIjtIeS5YW0h5LlguRWtdPSJBRFNfQ09OVkVSU0lPTl9ISVQiO0h5LlhbSHkuWC5aZ109IkNPTlRBSU5FUl9FWEVDVVRFX1NUQVJUIjtIeS5YW0h5LlguWGtdPSJDT05UQUlORVJfU0VUVVBfRU5EIjtIeS5YW0h5LlgubWldPSJDT05UQUlORVJfU0VUVVBfU1RBUlQiO0h5LlhbSHkuWC5Wa109IkNPTlRBSU5FUl9CTE9DS0lOR19FTkQiO0h5LlhbSHkuWC5Xa109IkNPTlRBSU5FUl9FWEVDVVRFX0VORCI7SHkuWFtIeS5YLllrXT0iQ09OVEFJTkVSX1lJRUxEX0VORCI7SHkuWFtIeS5YLm5pXT0iQ09OVEFJTkVSX1lJRUxEX1NUQVJUIjtIeS5YW0h5LlgudG1dPSJFVkVOVF9FWEVDVVRFX0VORCI7Ckh5LlhbSHkuWC5zbV09IkVWRU5UX0VWQUxVQVRJT05fRU5EIjtIeS5YW0h5LlguVGldPSJFVkVOVF9FVkFMVUFUSU9OX1NUQVJUIjtIeS5YW0h5Llgudm1dPSJFVkVOVF9TRVRVUF9FTkQiO0h5LlhbSHkuWC5CaF09IkVWRU5UX1NFVFVQX1NUQVJUIjtIeS5YW0h5LlguRW1dPSJHQTRfQ09OVkVSU0lPTl9ISVQiO0h5LlhbSHkuWC5pal09IlBBR0VfTE9BRCI7SHkuWFtIeS5YLlNxXT0iUEFHRVZJRVciO0h5LlhbSHkuWC5qZF09IlNOSVBQRVRfTE9BRCI7SHkuWFtIeS5YLnVqXT0iVEFHX0NBTExCQUNLX0VSUk9SIjtIeS5YW0h5LlgudmpdPSJUQUdfQ0FMTEJBQ0tfRkFJTFVSRSI7SHkuWFtIeS5YLndqXT0iVEFHX0NBTExCQUNLX1NVQ0NFU1MiO0h5LlhbSHkuWC5Dbl09IlRBR19FWEVDVVRFX0VORCI7SHkuWFtIeS5YLnhqXT0iVEFHX0VYRUNVVEVfU1RBUlQiO3ZhciBJeT17fTtJeS5YPUh5Llg7dmFyIEp5PXtSdToiTCIsWHE6IlMiLGt2OiJZIixSdDoiQiIsbnU6IkUiLE51OiJJIixmdjoiVEMiLHZ1OiJIVEMiLG91OiJGIixNdToiQyJ9LEt5PXtYcToiUyIsbHU6IlYiLGF1OiJFIixkdjoidGFnIn0sTHk9e30sTXk9KEx5W0l5LlgudmpdPSI2IixMeVtJeS5YLndqXT0iNSIsTHlbSXkuWC51al09IjciLEx5KTtmdW5jdGlvbiBOeShhKXt2YXIgYj1FKDUpLGM9TnVtYmVyKGEuZXZlbnRJZCksZD1OdW1iZXIoYS50YWdJZCk7cmV0dXJuKFNiKGIsIkdUTS0iKT9iOiJHVE0tIitiKSsiOiIrKEFiKGMpP2MrIjoiOiIiKSsoQWIoZCk/ZCsiOiI6IiIpK2Euc3RhZ2V9O2Z1bmN0aW9uIE95KCl7dmFyIGE9cmQoKTtyZXR1cm4hIShhJiZhLm1hcmsgaW5zdGFuY2VvZiBGdW5jdGlvbiYmYS5tZWFzdXJlIGluc3RhbmNlb2YgRnVuY3Rpb24mJmEuY2xlYXJNZWFzdXJlcyBpbnN0YW5jZW9mIEZ1bmN0aW9uJiZhLmNsZWFyTWFya3MgaW5zdGFuY2VvZiBGdW5jdGlvbil9O3ZhciBQeT1mdW5jdGlvbigpe3RoaXMuSD17fX0sUXk7ZnVuY3Rpb24gUnkoKXtReXx8KFF5PW5ldyBQeSk7cmV0dXJuIFF5fWZ1bmN0aW9uIFN5KGEpe3ZhciBiPVJ5KCksYz1OeShhKTtyZXR1cm4gYi5IW2NdfWZ1bmN0aW9uIFR5KGEsYil7dmFyIGM7YTp7dmFyIGQ9UnkoKTtpZihPeSgpKXt2YXIgZT1OeShhKSxmLGc7aWYoZj0oZz1yZCgpKT09bnVsbD92b2lkIDA6Zy5tYXJrKGUsYikpe2M9ZC5IW2VdPWY7YnJlYWsgYX19Yz12b2lkIDB9cmV0dXJuIGN9O2Z1bmN0aW9uIFV5KGEsYil7aWYoT3koKSl7YS5lbnRyeT1OeShhKTt2YXIgYz1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGEpO2Muc3RhZ2U9YjtkZWxldGUgYy5zZW50O3ZhciBkPVN5KGI9PT1JeS5YLmpkP3tzdGFnZTpJeS5YLmpkfTpjKSxlPVN5KGEpO2lmKGQmJmUmJiEoZC5zdGFydFRpbWU+ZS5zdGFydFRpbWUpKXtjLnN0YWdlPWIrIjoiK2Euc3RhZ2U7dmFyIGY9TnkoYyksZz17c3RhcnQ6ZC5uYW1lLGVuZDplLm5hbWV9LGgsbDtyZXR1cm4obD0oaD1yZCgpKT09bnVsbD92b2lkIDA6aC5tZWFzdXJlKGYsZykpPT1udWxsP3ZvaWQgMDpsLmR1cmF0aW9ufX19O3ZhciBXeT1mdW5jdGlvbigpe3ZhciBhPTU7VnkuUm8+MCYmKGE9VnkuUm8pO3RoaXMuSz1hO3RoaXMuSD0wO3RoaXMuTj1bXX0sWHk9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuSDxhLks/ITE6TmIoKS1hLk5bYS5IJWEuS108MUUzfSxZeT1mdW5jdGlvbihhKXt2YXIgYj1hLkgrKyVhLks7YS5OW2JdPU5iKCl9O3ZhciBWeT17Um86TmYoMywwKX0sJHk9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMueWE9W107dGhpcy5IPXZvaWQgMDt0aGlzLlo9e307dGhpcy5LPXZvaWQgMDt0aGlzLmphPW5ldyBXeTt0aGlzLkxhPTFFMzt0aGlzLlI9dGhpcy5OPSExO3RoaXMuZmE9RGIoKTtaeSh0aGlzLGZ1bmN0aW9uKCl7dmFyIGI9W1sidiIsIjMiXSxbInQiLCJ0Il0sWyJwaWQiLFN0cmluZyhhLmZhKV1dLGM9ZHUoKTtjJiZiLnB1c2goWyJndG0iLGNdKTtyZXR1cm4gYn0pO2NkKGZ1bmN0aW9uKCl7YS5mYT1EYigpfSw4NjRFNSl9LFp5PWZ1bmN0aW9uKGEsYil7YS55YS5wdXNoKGIpfSxhej1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5IO2lmKGQ9PT12b2lkIDApaWYoYylkPXJqKCk7ZWxzZSByZXR1cm4iIjtmb3IodmFyIGU9W2ZrKCJodHRwczovLyIrRSgyMSkpLCIvYSIsIj9pZD0iK0UoNSldLGY9bShhLnlhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSlmb3IodmFyIGg9Zy52YWx1ZSxsPQpoKHtldmVudElkOmQsdGY6ISFifSksbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1tKHAudmFsdWUpLHI9cS5uZXh0KCkudmFsdWUsdD1xLm5leHQoKS52YWx1ZTtlLnB1c2goIiYiK3IrIj0iK3QpfWUucHVzaCgiJno9MCIpO3JldHVybiBlLmpvaW4oIiIpfSxiej1mdW5jdGlvbihhKXtpZigkaygyNikmJihhLksmJihBLmNsZWFyVGltZW91dChhLkspLGEuSz12b2lkIDApLGEuSCE9PXZvaWQgMCYmYS5SKSl7dmFyIGI9bG8oY28uaWEuWmIpO2lmKGdvKGIpKWEuTnx8KGEuTj0hMCxpbyhiLGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYnooYSl9KSk7ZWxzZSBpZihhLlpbYS5IXXx8WHkoYS5qYSl8fGEuTGEtLTw9MClQKDEpLGEuWlthLkhdPSEwO2Vsc2V7WXkoYS5qYSk7dmFyIGM9YXooYSwhMCk7WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmEuSH0sYyk7YS5SPSExO2EuTj0hMX19fSxjej1mdW5jdGlvbihhKXthLkt8fChhLks9CkEuc2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiB2b2lkIGJ6KGEpfSw1MDApKX0sZXo9ZnVuY3Rpb24oYSl7dmFyIGI9ZHo7Yi5aW2FdfHwoYSE9PWIuSCYmKGJ6KGIpLGIuSD1hKSxiLlI9ITAsY3ooYiksYXooYikubGVuZ3RoPj0yMDIyJiZieihiKSl9LGR6O2Z1bmN0aW9uIGZ6KGEpe2d6KCk7WnkoZHosYSl9ZnVuY3Rpb24gaHooKXt2YXIgYTthPWE9PT12b2lkIDA/ITE6YTtneigpO3ZhciBiPWEsYz1kejtiPWI9PT12b2lkIDA/ITE6YjtpZihmbi5OJiYkaygyNikpe3ZhciBkPWF6KGMsITAsITApO2I/Vm4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmMuSH0sZCk6WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmMuSH0sZCl9fWZ1bmN0aW9uIGd6KCl7ZHp8fChkej1uZXcgJHkpfTtmdW5jdGlvbiBpeigpe2Z1bmN0aW9uIGEoYyxkKXt2YXIgZT13YihyYltkXXx8W10pO2UmJmIucHVzaChbYyxlXSl9dmFyIGI9W107YSgidSIsIkdUTSIpO2EoInV0IiwiVEFHR0lORyIpO2EoImgiLCJIRUFMVEgiKTtyZXR1cm4gYn07dmFyIGp6PSJodHRwczovLyIrRSgyMSksa3o9ZnVuY3Rpb24oKXt0aGlzLk49ITE7dGhpcy5SPVtdO3RoaXMuWj1bXTt0aGlzLkg9e1RDOjAsSFRDOjB9O3RoaXMuSz17fX0sbHo9ZnVuY3Rpb24oYSxiLGMsZCl7YS5LW2JdfHwoYS5LW2JdPXt9KTthLktbYl1bY109ZH0sb3o9ZnVuY3Rpb24oYSl7dmFyIGI9IiIsYz0iIixkPW16KCk7QWIoZCkmJihhLkguST1NYXRoLmZsb29yKGQpKTtjPW56KGEuSCxKeSkudG9TdHJpbmcoKTtmb3IodmFyIGU9bShPYmplY3Qua2V5cyhhLkspKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWEuS1tnXS5uYW1lLGw9IiIsbj1ueihhLktbZ10sS3kpO24mJihsPWgrIi4iK24udG9TdHJpbmcoKSxiKz0ifiIrbCl9dmFyIHA9In5BV0NUIithLlIuam9pbigiLiIpLHE9In5HQSIrYS5aLmpvaW4oIi4iKSxyPSImY2NpZD0iK3ZrKCkudG9TdHJpbmcoKSsiJmNpZD0iK0UoNSkudG9TdHJpbmcoKSsiJmw9IitjK2IrKGEuUi5sZW5ndGg/CnA6IiIpKyhhLloubGVuZ3RoP3E6IiIpO2lmKE0oMjE0KSl7dmFyIHQsdT0odD1yZCgpKT09bnVsbD92b2lkIDA6dC5nZXRFbnRyaWVzQnlOYW1lKEtjKS5tYXAoZnVuY3Rpb24odil7cmV0dXJuIFN0cmluZyh2LmR1cmF0aW9uKX0pLmpvaW4oIi4iKTt1JiYocis9In5TUyIrdSl9cmV0dXJuIHJ9LHB6PWZ1bmN0aW9uKGEsYil7aWYoIWIuc3RhZ2V8fGEuTnx8IU95KCl8fFN5KGIpKXJldHVybiExO3ZhciBjLGQ9KGM9cmQoKSk9PW51bGw/dm9pZCAwOmMudGltZU9yaWdpbjtpZighQWIoZCkpYS5OPSEwO2Vsc2UgaWYoQWIoJGsoMjUpKSYmIVN5KHtzdGFnZTpJeS5YLmpkfSkmJiFhLk4mJk95KCkpdHJ5e3ZhciBlPU51bWJlcigkaygyNSkpO1R5KHtzdGFnZTpJeS5YLmpkfSx7c3RhcnRUaW1lOk1hdGgubWF4KGUtZCwwKX0pO1R5KHtzdGFnZTpJeS5YLmlqfSx7c3RhcnRUaW1lOjB9KTt2YXIgZj1VeSh7c3RhZ2U6SXkuWC5qZH0sSXkuWC5paik7ZiYmKGEuSC5MPU1hdGguZmxvb3IoZikpfWNhdGNoKGcpe2EuTj0KITB9aWYoYS5OKXJldHVybiExO3RyeXtpZighVHkoYikpcmV0dXJuITF9Y2F0Y2goZyl7cmV0dXJuIGEuTj0hMCwhMX1yZXR1cm4hMH0scXo9ZnVuY3Rpb24oYSxiLGMpe2lmKHB6KGEsYikpdHJ5e3ZhciBkPVV5KGIsYyk7aWYoZClyZXR1cm4gTWF0aC5mbG9vcihkKX1jYXRjaChlKXthLk49ITB9fSxzej1mdW5jdGlvbigpe3ZhciBhPXJ6KCk7cHooYSx7c3RhZ2U6SXkuWC5taX0pfSx0ej1mdW5jdGlvbigpe3ZhciBhPXJ6KCksYj1xeihhLHtzdGFnZTpJeS5YLlhrfSxJeS5YLm1pKTtiIT09dm9pZCAwJiYoYS5ILlM9Yil9LHV6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKTtweihhLHtzdGFnZTpJeS5YLm5pfSl9LHZ6PWZ1bmN0aW9uKGEsYil7dmFyIGM9cnooKTtweihjLHtzdGFnZTpJeS5YLkJoLGV2ZW50SWQ6YX0pO2MuS1thXSYmYy5LW2FdLm5hbWV8fGx6KGMsYSwibmFtZSIsU2IoYiwiZ3RtLiIpP2I6IioiKX0sd3o9ZnVuY3Rpb24oYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5Llgudm0sCmV2ZW50SWQ6YX0sSXkuWC5CaCk7YyE9PXZvaWQgMCYmbHooYixhLCJTIixjKX0seXo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1yeigpLGQ9cXooYyx7c3RhZ2U6SXkuWC50bSxldmVudElkOmF9LEl5LlguQmgpO2QhPT12b2lkIDAmJmx6KGMsYSwiRSIsZCk7aWYoYj09PSJndG0ubG9hZCIpe3ZhciBlPXF6KGMse3N0YWdlOkl5LlguV2t9LEl5LlguWmcpO2UhPT12b2lkIDAmJihjLkguRT1lKTtpbyhsbyhjby5pYS5aYiksZnVuY3Rpb24oKXtpZighYy5OJiZPeSgpJiZFKDUpKXt2YXIgZj14eigpO2YhPT12b2lkIDAmJihjLkguRj1NYXRoLmZsb29yKGYpKTt0cnl7Zm9yKHZhciBnPWl6KHtldmVudElkOjAsdGY6ITF9KSxoPVtdLGw9bShnKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bShuLnZhbHVlKSxxPXAubmV4dCgpLnZhbHVlLHI9cC5uZXh0KCkudmFsdWU7aC5wdXNoKCImIitxKyI9IityKX12YXIgdD1DcCgpLHU9W1tmayhqeiksIi9hP3Y9MyZ0PWwiLCImcGlkPSIrCkRiKCkudG9TdHJpbmcoKSwiJnJ2PSIrRSgxNCksdD8iJnRhZ19leHA9Iit0OiIiLGguam9pbigiIildLmpvaW4oIiIpLCImZ3RtPSIsZHUoKSxveihjKV0uam9pbigiIik7aWYodS5sZW5ndGg+MjAyMil7dmFyIHY9TWF0aC5tYXgodS5sYXN0SW5kZXhPZigiLlRTIiwyMDIyKSx1Lmxhc3RJbmRleE9mKCJ+IiwyMDIyKSk7dT11LnNsaWNlKDAsdil9WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1Nn0sdSl9Y2F0Y2goeCl7fX19KX19LHp6O2Z1bmN0aW9uIHJ6KCl7enp8fCh6ej1uZXcga3opO3JldHVybiB6en1mdW5jdGlvbiBteigpe3RyeXt2YXIgYTtyZXR1cm4oKGE9cmQoKSk9PW51bGw/dm9pZCAwOmEuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdKS5kb21JbnRlcmFjdGl2ZX1jYXRjaChiKXt9fQpmdW5jdGlvbiBueihhLGIpe3JldHVybiBPYmplY3Qua2V5cyhiKS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGJbY119KS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGFbY10hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuKCIiKyhjPT09InRhZyI/IiI6YykpLmNvbmNhdChhW2NdLnRvU3RyaW5nKCkpfSkuam9pbigiLiIpfWZ1bmN0aW9uIEF6KGEpe3ZhciBiPXJ6KCksYz1xeihiLHtzdGFnZTpJeS5YLkVtLGV2ZW50SWQ6YX0sSXkuWC5qZCk7YyE9PXZvaWQgMCYmYi5aLnB1c2goYyl9ZnVuY3Rpb24gQnooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5LlguRWssZXZlbnRJZDphfSxJeS5YLmpkKTtjIT09dm9pZCAwJiZiLlIucHVzaChjKX1mdW5jdGlvbiBDeihhKXt2YXIgYj1yeigpO3B6KGIse3N0YWdlOkl5LlguVGksZXZlbnRJZDphfSl9CmZ1bmN0aW9uIER6KGEpe3ZhciBiPXJ6KCksYz1xeihiLHtzdGFnZTpJeS5YLnNtLGV2ZW50SWQ6YX0sSXkuWC5UaSk7YyE9PXZvaWQgMCYmbHooYixhLCJWIixjKX1mdW5jdGlvbiB4eigpe3RyeXt2YXIgYSxiO3JldHVybihiPShhPXJkKCkpPT1udWxsP3ZvaWQgMDphLmdldEVudHJpZXNCeVR5cGUoInBhaW50IikuZmluZChmdW5jdGlvbihjKXtyZXR1cm4gYy5uYW1lPT09ImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQifSkpPT1udWxsP3ZvaWQgMDpiLnN0YXJ0VGltZX1jYXRjaChjKXt9fWZ1bmN0aW9uIEV6KGEsYil7dmFyIGM9cnooKTtweihjLHtzdGFnZTpJeS5YLnhqLGV2ZW50SWQ6YS5pZCx0YWdJZDpOdW1iZXIoYltHZi55al0pfSl9CmZ1bmN0aW9uIEZ6KGEsYixjKXt2YXIgZD1yeigpLGU9ZG4oYiksZj1OdW1iZXIoYltHZi55al0pLGc9cXooZCx7c3RhZ2U6YyxldmVudElkOmEuaWQsdGFnSWQ6Zn0sSXkuWC54aik7aWYoZyE9PXZvaWQgMCYmZC5LW2EuaWRdKXt2YXIgaD1kLktbYS5pZF0udGFnfHwiIixsLG49KGw9TXlbY10pIT1udWxsP2w6IjEiLHA9bmV3IFJlZ0V4cCgiVFNcXGQiK2UrIi5USSIrZikscT0iVFMiK24rZSsiLlRJIitmKyIuVEUiK2c7aC5zZWFyY2gocCk+PTA/biE9PSIxIiYmbHooZCxhLmlkLCJ0YWciLGgucmVwbGFjZShwLHEucmVwbGFjZSgiLlRFIitnLCIiKSkpOihseihkLGEuaWQsInRhZyIsKGg/aCsiLiI6IiIpK3EpLGU9PT0iaHRtbCImJihkLkguSFRDKz0xKSxkLkguVEMrPTEpfX07CnZhciBHej1mdW5jdGlvbihhKXtRKGEsSC5KLmRhKT09PVguVi54YSYmIVEoYSxILkouRWMpJiZYeChhLHB2KSYmcnYocHYpfSxJej1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLmRhKTtpZihiPT09WC5WLkthKUd5KGEpO2Vsc2V7dmFyIGM9SHpbYl07aWYoYylmbi5IJiZiPT09WC5WLnhhJiZCeihhLk0uZXZlbnRJZCksUXcoYSxmdW5jdGlvbihkKXt2YXIgZT1neShhKTtWKGEsSC5KLnBqLGUpO2UmJm5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZCxmeShhLGUpKTtGeSgzLGEuZXZlbnROYW1lKTt2YXIgZj17fSxnPXt9O1F1KGEse1FzOmZ1bmN0aW9uKGgsbCxuKXtpZihuLmZpbmQoZnVuY3Rpb24ocCl7cmV0dXJuIHAuaXNQcmltYXJ5JiYocC5zdGF0dXM9PT0wfHxwLnN0YXR1cz09PTEpfSkpaC5NLm9uU3VjY2VzcygpO2Vsc2UgR3ooaCksaC5NLm9uRmFpbHVyZSgpfSxTczpmdW5jdGlvbihoLGwpe3ZhciBuO3ZhciBwPWwuc2IscT1sLmVuZHBvaW50LmVuZHBvaW50LApyO3N3aXRjaChsLnBrIGluc3RhbmNlb2Yga3g/MjpsLnBrIGluc3RhbmNlb2Ygcng/NDpsLnBrIGluc3RhbmNlb2Yga3U/MzoxKXtjYXNlIDI6cj0yMTticmVhaztjYXNlIDM6UShoLEguSi5kYSk9PT1YLlYueGEmJlEoaCxILkoub2IpJiZxIT09OSYmKHI9MjApO2JyZWFrO2Nhc2UgNDpyPTIwfWlmKHIpe3ZhciB0O3ZhciB1PU5mKHIsLTEpO1h4KGgsb3YpPyhaeChwLGgsdSksdD17TXQ6VHh9KTp0PXt3ZTpZeChoLHUpfTt2YXIgdj10LHg9di53ZSx5PXYuTXQ7eD09bnVsbHx8UngoeCk7bj17d2U6eCxrdDp5fX1lbHNlIG49e307dmFyIHo9bixDPXoud2UsRD16Lmt0O0MmJihmW2wuc2JdPUMpO0QmJihnW2wuc2JdPUQpfSx1bzpmdW5jdGlvbihoLGwpe2ZbbC5zYl0mJihUbihmW2wuc2JdKSxkZWxldGUgZltsLnNiXSk7Z1tsLnNiXSYmKFVuKGdbbC5zYl0sbC5zYiksZGVsZXRlIGdbbC5zYl0pfSxSczpmdW5jdGlvbihoLGwsbixwLHEpe2lmKHEubGVuZ3RoJiZiIT09WC5WLnViKXt2YXIgcj0KcVtxLmxlbmd0aC0xXSx0PXIuc2IsdT1yLmVuZHBvaW50LmVuZHBvaW50O2lmKCFQeC5pbmNsdWRlcyh1KSl7dmFyIHY9aC5NO01sKHt0YXJnZXRJZDpoLnRhcmdldC5kZXN0aW5hdGlvbklkLHJlcXVlc3Q6e3VybDp0LHBhcmFtZXRlckVuY29kaW5nOjMsZW5kcG9pbnQ6dX0scWI6e2V2ZW50SWQ6di5ldmVudElkLHByaW9yaXR5SWQ6di5wcmlvcml0eUlkfSxGajp7ZXZlbnRJZDpRKGgsSC5KLnVmKSxwcmlvcml0eUlkOlEoaCxILkoudmYpfX0pO1EoaCxILkouZGEpfX19fSxjKX0pO2Vsc2UgYS5NLm9uRmFpbHVyZSgpfX0sSno9e30sSHo9KEp6W1guVi56ZF09WncsSnpbWC5WLnhhXT1GeCxKeltYLlYuWWRdPUt4LEp6W1guVi5aZF09T3gsSnpbWC5WLnViXT1leSxKeltYLlYuT2JdPXl5LEp6W1guVi5GYl09Q3ksSnopO3ZhciBLej17Z2o6e2JwOiIxIix1cToiMiIsVnE6IjMifX07CnZhciBMej17fSxNej1PYmplY3QuZnJlZXplKChMeltGLkQuZmhdPTEsTHpbRi5ELmdoXT0xLEx6W0YuRC5CZF09MSxMeltGLkQuQ2RdPTEsTHpbRi5ELlJjXT0xLEx6W0YuRC5zaV09MSxMeltGLkQudWldPTEsTHpbRi5ELkNsXT0xLEx6W0YuRC5paF09MSxMeltGLkQuQ2ZdPTEsTHpbRi5ELkRmXT0xLEx6W0YuRC5FZl09MSxMeltGLkQuSGFdPTEsTHpbRi5ELkZmXT0xLEx6W0YuRC5GZF09MSxMeltGLkQudWNdPTEsTHpbRi5ELkhkXT0xLEx6W0YuRC5MYl09MSxMeltGLkQuQ2JdPTEsTHpbRi5ELlRiXT0xLEx6W0YuRC5uYl09MSxMeltGLkQuZWJdPTEsTHpbRi5ELkdlXT0xLEx6W0YuRC5raF09MSxMeltGLkQuT2FdPTEsTHpbRi5ELk9wXT0xLEx6W0YuRC5TcF09MSxMeltGLkQuSWVdPTEsTHpbRi5ELkdpXT0xLEx6W0YuRC5RZl09MSxMeltGLkQuVGFdPTEsTHpbRi5ELlljXT0xLEx6W0YuRC5aY109MSxMeltGLkQudGJdPTEsTHpbRi5ELlFkXT0xLEx6W0YuRC5SZF09MSxMeltGLkQuU2RdPQoxLEx6W0YuRC5OZV09MSxMeltGLkQuemFdPTEsTHpbRi5ELlVhXT0xLEx6W0YuRC5XbF09MSxMeltGLkQuWGxdPTEsTHpbRi5ELllsXT0xLEx6W0YuRC5abF09MSxMeltGLkQuV2JdPTEsTHpbRi5ELlRkXT0xLEx6W0YuRC5YYl09MSxMeltGLkQuZGRdPTEsTHpbRi5ELlVkXT0xLEx6W0YuRC5RZV09MSxMeltGLkQuUGFdPTEsTHpbRi5ELnljXT0xLEx6W0YuRC5WZF09MSxMeltGLkQuemNdPTEsTHpbRi5ELkFjXT0xLEx6W0YuRC5mYl09MSxMeltGLkQuUWFdPTEsTHopKSxOej17fSxPej0oTnpbRi5ELlVjXT0xLE56W0YuRC5QcF09MSxOeltGLkQuSGVdPTEsTnpbRi5ELnJpXT0xLE56Lm9yZWY9MSxOeik7dmFyIFB6LFF6OwpmdW5jdGlvbiBSeihhLGIpe3ZhciBjPWFbR2YuWWJdLGQ9YiYmYi5ldmVudDtpZighYyl0aHJvdyBFcnJvcigiRXJyb3I6IE5vIGZ1bmN0aW9uIG5hbWUgZ2l2ZW4gZm9yIGZ1bmN0aW9uIGNhbGwuIik7dmFyIGU9UXpbY10sZj17fSxnO2ZvcihnIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShnKSYmKFNiKGcsInZ0cF8iKT9mW2UhPT12b2lkIDA/ZzpnLnN1YnN0cmluZyg0KV09YVtnXTpnPT09R2YuRnEudG9TdHJpbmcoKSYmKGZbZSE9PXZvaWQgMD8idnRwX2d0bUdlbmVyYXRlZFRhZ2dpbmdNZXRhZGF0YSI6Z109YVtnXSkpO0lmKDYxKSYmZSYmKGYudnRwX2V4dHJhRXhwZXJpbWVudElkcz0hMCk7ZSYmZCYmZC5jYWNoZWRNb2RlbFZhbHVlcyYmKGYudnRwX2d0bUNhY2hlZFZhbHVlcz1kLmNhY2hlZE1vZGVsVmFsdWVzKTtiJiZlJiYoZi52dHBfZ3RtRW50aXR5SW5kZXg9Yi5pbmRleCxmLnZ0cF9ndG1FbnRpdHlOYW1lPWIubmFtZSk7cmV0dXJuIGUhPT12b2lkIDA/ZShmKTpQeihjLGYsCmIpfXZhciBUej1mdW5jdGlvbigpe3ZhciBhPVN6O2lmKE0oNTg1KSYmZm4uSyl7dmFyIGI9RSg1KS5pbmRleE9mKCJHVE0tIik9PT0wJiZJZig2MiksYyxkPSgoYz1GaygpKT09bnVsbD92b2lkIDA6Yy5zb3VyY2UpPT09MTtiJiYhZHx8YS5IfHwoYS5IPSEwLFVtKCJhYmwiLCIxIiksdG8oKSl9fSxTej1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O3ZhciBVej1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLkg9YTt0aGlzLmluZGV4PWI7dGhpcy50YWdzPWM7dGhpcy5tYWNyb3M9ZDt0aGlzLm5hbWU9U3RyaW5nKHRoaXMuSFtHZi5SbV18fCIiKX07ClV6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIpe2lmKCFiW3RoaXMuaW5kZXhdJiYhYS5pc0Jsb2NrZWQodGhpcy5IKSl7Ylt0aGlzLmluZGV4XT0hMDt0aGlzLkhbR2YucGwudG9TdHJpbmcoKV0mJlR6KCk7dmFyIGM9dGhpcy5uYW1lLGQ7dHJ5e3ZhciBlPXt9LGY7Zm9yKGYgaW4gdGhpcy5IKXRoaXMuSC5oYXNPd25Qcm9wZXJ0eShmKSYmKGVbZl09ZWwodGhpcy5IW2ZdLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLGIpKTtlLnZ0cF9ndG1FdmVudElkPWEuaWQ7YS5wcmlvcml0eUlkJiYoZS52dHBfZ3RtUHJpb3JpdHlJZD1hLnByaW9yaXR5SWQpO3ZhciBnPWQ9UnooZSx7ZXZlbnQ6YSxpbmRleDp0aGlzLmluZGV4LHR5cGU6MixuYW1lOmN9KTtlW0dmLlprXSYmdHlwZW9mIGc9PT0ic3RyaW5nIiYmKGc9ZVtHZi5aa109PT0xP2cudG9Mb3dlckNhc2UoKTpnLnRvVXBwZXJDYXNlKCkpO2UuaGFzT3duUHJvcGVydHkoR2YuYWgpJiYoZz1ZZigxOCk/ZVtHZi5haF09PT0xPwpWZihnLCJQRVJJT0QiKTplW0dmLmFoXT09PTI/VmYoZywiQ09NTUEiKTpWZihnLCJBVVRPTUFUSUMiKTplW0dmLmFoXT09PTE/VmYoZywiUEVSSU9EIik6VmYoZywiQ09NTUEiKSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5ibCkmJmc9PT1udWxsJiYoZz1lW0dmLmJsXSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5pbCkmJmc9PT12b2lkIDAmJihnPWVbR2YuaWxdKTtlLmhhc093blByb3BlcnR5KEdmLmVwKSYmKGc9SmIoZykpO2UuaGFzT3duUHJvcGVydHkoR2YuZmwpJiZnPT09ITAmJihnPWVbR2YuZmxdKTtlLmhhc093blByb3BlcnR5KEdmLmFsKSYmZz09PSExJiYoZz1lW0dmLmFsXSk7ZD1nfWNhdGNoKGgpe2EubG9nTWFjcm9FcnJvciYmYS5sb2dNYWNyb0Vycm9yKGgsTnVtYmVyKHRoaXMuaW5kZXgpLGMpLGQ9ITF9Ylt0aGlzLmluZGV4XT0hMTtyZXR1cm4gZH19O1V6LnByb3RvdHlwZS5GZz1mdW5jdGlvbigpe3JldHVybiBuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHRoaXMuSCl9O3ZhciBWej1mdW5jdGlvbihhLGIsYyl7dGhpcy5IPWE7dGhpcy50YWdzPWI7dGhpcy5tYWNyb3M9Y307VnoucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEsYil7dHJ5e2Zvcih2YXIgYz17fSxkPW0oT2JqZWN0LmtleXModGhpcy5IKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Y1tmXT1mPT09ImZ1bmN0aW9uIj90aGlzLkhbZl06ZWwodGhpcy5IW2ZdLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLGIpfXJldHVybiBjbChjKX1jYXRjaChnKXtKU09OLnN0cmluZ2lmeSh0aGlzLkgpfXJldHVybiAyfTtWei5wcm90b3R5cGUuRmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx0aGlzLkgpfTt2YXIgV3o9ZnVuY3Rpb24oYSxiKXt0aGlzLmluZGV4PWI7dGhpcy5OPVtdO3RoaXMuUj1bXTt0aGlzLks9W107dGhpcy5IPVtdO3RoaXMubmFtZT0iIjtmb3IodmFyIGM9bShhKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9bShkLnZhbHVlKSxmPWUubmV4dCgpLnZhbHVlLGc9eWEoZSksaD1mLGw9ZztoPT09ImlmIj90aGlzLk49bDpoPT09InVubGVzcyI/dGhpcy5SPWw6aD09PSJhZGQiP3RoaXMuSz1sOmg9PT0iYmxvY2siP3RoaXMuSD1sOmg9PT0icnVsZU5hbWUiJiYodGhpcy5uYW1lPWxbMF0pfX07Cld6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIpe3ZhciBjPVh6KHRoaXMsYiksZD1bXSxlPVtdO2M/KGQucHVzaC5hcHBseShkLHcodGhpcy5LKSksZS5wdXNoLmFwcGx5KGUsdyh0aGlzLkgpKSk6Yz09PW51bGwmJmUucHVzaC5hcHBseShlLHcodGhpcy5IKSk7cmV0dXJue2ZpcmluZ1RhZ3M6ZCxibG9ja2luZ1RhZ3M6ZX19Owp2YXIgWHo9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9bShhLk4pLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1iKGQudmFsdWUpO2lmKGU9PT0wKXJldHVybiExO2lmKGU9PT0yKXJldHVybiBudWxsfWZvcih2YXIgZj1tKGEuUiksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWIoZy52YWx1ZSk7aWYoaD09PTIpcmV0dXJuIG51bGw7aWYoaD09PTEpcmV0dXJuITF9cmV0dXJuITB9O1d6LnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZX07dmFyIFl6PWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSWE9YTt0aGlzLmluZGV4PWI7dGhpcy50YWdzPWM7dGhpcy5tYWNyb3M9ZDt0aGlzLk89U3RyaW5nKHRoaXMuSWFbR2YuWWJdKTt0aGlzLm5hbWU9U3RyaW5nKHRoaXMuSWFbR2YuUm1dfHwiIik7dGhpcy50YWdJZD1OdW1iZXIodGhpcy5JYVtHZi55al0pfTsKWXoucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/e306Yzt2YXIgZCxlPWM7ZT1lPT09dm9pZCAwP3t9OmU7dmFyIGY9e30sZztmb3IoZyBpbiB0aGlzLklhKXRoaXMuSWEuaGFzT3duUHJvcGVydHkoZykmJihmW2ddPWVsKHRoaXMuSWFbZ10sYSx0aGlzLnRhZ3MsdGhpcy5tYWNyb3MsW10pKTtkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZixlKTtkLnZ0cF9ndG1UYWdJZD10aGlzLnRhZ0lkO3RoaXMuSWFbR2YucGwudG9TdHJpbmcoKV0mJlR6KCk7UnooZCx7ZXZlbnQ6YSxpbmRleDp0aGlzLmluZGV4LHR5cGU6MSxuYW1lOnRoaXMubmFtZX0pfTtZei5wcm90b3R5cGUuRmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx0aGlzLklhKX07CnZhciBaej1mdW5jdGlvbihhLGIpe2lmKGEuSWFbR2YudG5dKXJldHVybiBlbChhLklhW0dmLnRuXSxiLGEudGFncyxhLm1hY3JvcyxbXSl9LCR6PWZ1bmN0aW9uKGEsYil7aWYoYS5JYVtHZi5Ebl0pcmV0dXJuIGVsKGEuSWFbR2YuRG5dLGIsYS50YWdzLGEubWFjcm9zLFtdKX0sYUE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLklhW0dmLmNwXTtpZihjKXJldHVybiBlbChjLGIsYS50YWdzLGEubWFjcm9zLFtdKX07WXoucHJvdG90eXBlLmdldE1ldGFkYXRhPWZ1bmN0aW9uKGEpe3JldHVybiBlbCh0aGlzLklhW0dmLk1FVEFEQVRBXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxbXSl9O1l6LnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZX07dmFyIGJBPWZ1bmN0aW9uKCl7dGhpcy5tYWNyb3M9W107dGhpcy5ydWxlcz1bXTt0aGlzLnByZWRpY2F0ZXM9W107dGhpcy50YWdzPVtdO3RoaXMudms9W119O2JBLnByb3RvdHlwZS5nZXRSdWxlcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJ1bGVzfTt2YXIgY0E9bmV3IGJBO2Z1bmN0aW9uIGRBKGEsYixjLGQpe3ZhciBlPVdjKCksZjtpZihlPT09MSlhOnt2YXIgZz1FKDMpO2c9Zy50b0xvd2VyQ2FzZSgpO2Zvcih2YXIgaD0iaHR0cHM6Ly8iK2csbD0iaHR0cDovLyIrZyxuPTEscD1CLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSxxPTA7cTxwLmxlbmd0aCYmcTwxMDA7cSsrKXt2YXIgcj1wW3FdLnNyYztpZihyKXtyPXIudG9Mb3dlckNhc2UoKTtpZihyLmluZGV4T2YobCk9PT0wKXtmPTM7YnJlYWsgYX1uPT09MSYmci5pbmRleE9mKGgpPT09MCYmKG49Mil9fWY9bn1lbHNlIGY9ZTtyZXR1cm4oZj09PTJ8fGR8fCJodHRwOiIhPT1BLmxvY2F0aW9uLnByb3RvY29sP2E6YikrY307dmFyIGVBPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLks9e307dGhpcy5IPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYS5LKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLkssZCkmJmMucHVzaChkKyJ+IithLktbZF0pO3ZhciBlPVtdLGY7Zm9yKGYgaW4gYS5IKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLkgsZikmJmUucHVzaChmKyJ+IithLkhbZl0pO2IudGYmJihhLks9e30sYS5IPXt9KTt2YXIgZz1bXTtjLmxlbmd0aD4wJiZnLnB1c2goWyJiY3MiLGMuam9pbigiLiIpXSk7ZS5sZW5ndGg+MCYmZy5wdXNoKFsiYmV0IixlLmpvaW4oIi4iKV0pO3JldHVybiBnfSl9LGZBO2Z1bmN0aW9uIGdBKCl7ZkF8fChmQT1uZXcgZUEpfTtmdW5jdGlvbiBoQShhLGIsYyxkLGUpe2lmKCFFayhhKSl7ZC5sb2FkRXhwZXJpbWVudHM9eWooKTtIayhhLGQsZSk7dmFyIGY9aUEoYSksZz1mdW5jdGlvbigpe29rKCkuY29udGFpbmVyW2FdJiYob2soKS5jb250YWluZXJbYV0uc3RhdGU9Myk7akEoKX0saD17ZGVzdGluYXRpb25JZDphLGVuZHBvaW50OjB9O2lmKFdqKCkpe3ZhciBsPVhqKCksbj1sKyIvIitrQShmLGEpO1puKGgsbix2b2lkIDAsZnVuY3Rpb24oKXtsQShhLG4sbCsiLyIrZixoLGcpfSl9ZWxzZXt2YXIgcD1TYihhLCJHVE0tIikscT1kaygpLHI9Yz8iL2d0YWcvanMiOiIvZ3RtLmpzIix0PW1BKGIscitmLGEpO2lmKCF0KXt2YXIgdT1FKDMpK3I7cSYmS2MmJnAmJih1PUtjLnJlcGxhY2UoL14oPzpodHRwcz86XC9cLyk/L2ksIiIpLnNwbGl0KC9bPyNdLylbMF0pO3Q9ZEEoImh0dHBzOi8vIiwiaHR0cDovLyIsdStmKX1abihoLHQsdm9pZCAwLGcpfX19CmZ1bmN0aW9uIGpBKCl7S2soKXx8R2IoTGsoKSxmdW5jdGlvbihhLGIpe25BKGEsYi50cmFuc3BvcnRVcmwsYi5jb250ZXh0KTtQKDkyKX0pfWZ1bmN0aW9uIG5BKGEsYixjLGQpe2lmKCFHayhhKSlpZihjLmxvYWRFeHBlcmltZW50c3x8KGMubG9hZEV4cGVyaW1lbnRzPXlqKCkpLEtrKCkpSmsoYSxiLGMsZCk7ZWxzZXtJayhhLGMsZCk7dmFyIGU9e2Rlc3RpbmF0aW9uSWQ6YSxlbmRwb2ludDowfTtpZihXaigpKXt2YXIgZj1YaigpLGc9Imd0ZCIraUEoYSwhMCksaD1mKyIvIitrQShnLGEpO1puKGUsaCx2b2lkIDAsZnVuY3Rpb24oKXtsQShhLGgsZisiLyIrZyxlKX0pfWVsc2V7dmFyIGw9Ii9ndGFnL2Rlc3RpbmF0aW9uIitpQShhLCEwKSxuPW1BKGIsbCxhKTtufHwobj1kQSgiaHR0cHM6Ly8iLCJodHRwOi8vIixFKDMpK2wpKTtabihlLG4pfX19CmZ1bmN0aW9uIGxBKGEsYixjLGQsZSl7aWYoTSg0MTMpKXtnQSgpO3ZhciBmPWZBO2lmKGZuLk4pe3ZhciBnPUEucGVyZm9ybWFuY2UsaD0tMTtpZihnJiZnLmdldEVudHJpZXNCeVR5cGUpe3ZhciBsPVJqKGIpLmhyZWYsbj1nLmdldEVudHJpZXNCeU5hbWUobCkucG9wKCk7aWYoIW4pZm9yKHZhciBwPWcuZ2V0RW50cmllc0J5VHlwZSgicmVzb3VyY2UiKSxxPTA7cTxwLmxlbmd0aDtxKyspe3ZhciByPXBbcV07aWYoci5uYW1lJiZyLm5hbWUuaW5kZXhPZihiKSE9PS0xKXtuPXI7YnJlYWt9fW4mJm4ucmVzcG9uc2VTdGF0dXMhPT12b2lkIDAmJihoPW4ucmVzcG9uc2VTdGF0dXMpfWYuS1thXT1ofVAoMTkwKTt2YXIgdD1ubShqbS5iYS5rail8fHt9O3RbYV09ITA7bW0oam0uYmEua2osdCk7dmFyIHU9YysoYy5pbmRleE9mKCI/Iik9PT0tMT8iP2Y9MSI6IiZmPTEiKTtlP1puKGQsdSx2b2lkIDAsZSk6Wm4oZCx1KX1lbHNlIGUmJmUoKX0KZnVuY3Rpb24gaUEoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz0iP2lkPSIrZW5jb2RlVVJJQ29tcG9uZW50KGEpLGQ9RSgxOSk7ZCE9PSJkYXRhTGF5ZXIiJiYoYys9IiZsPSIrZCk7dmFyIGU9U2IoYSwiR1RNLSIpO2lmKCFlfHxiKWMrPSImY3g9YyI7ZSYmSWYoNjIpJiYoYys9IiZnb29nbGVfb25seT10cnVlIik7dmFyIGY9YyxnLGg9e0RvOkpmKDE1KSxJbzpFKDE0KX07Zz1DZihoKTtjPWYrKCImZ3RtPSIrZyk7ZGsoKSYmKGMrPSImc2lnbj0iK0FqLnFqKTt2YXIgbD1jLG49SmYoNTQpO2lmKG49PT0xKXtsKz0iJmZwcz1mYyI7dmFyIHA9RSg2MCk7cCYmKGwrPSImZ2Rldj0iK3ApfWVsc2Ugbj09PTImJihsKz0iJmZwcz1mZSIpO3JldHVybiBsfQpmdW5jdGlvbiBrQShhLGIpe2lmKCFNKDQxMyl8fCFYaigpKXJldHVybiBhO3ZhciBjPUUoNTgpO2lmKCFjKXJldHVybiBQKDE4MiksYTt0cnl7dmFyIGQ9TmIoKSxlPUVmKGEsYyksZj1OYigpLWQ7Z0EoKTt2YXIgZz1mQTtmbi5OJiYoZy5IW2JdPWYpO3JldHVybiBlfWNhdGNoKGgpe3JldHVybiBQKDE4MyksYX19ZnVuY3Rpb24gbUEoYSxiLGMpe2lmKGFrKCkmJmEpe3ZhciBkPUUoNTgpLGU9WGooKTtpZihkJiZlKXRyeXt2YXIgZj1OYigpO2I9ZSsiLyIrRWYoYixkKTt2YXIgZz1OYigpLWY7Z0EoKTt2YXIgaD1mQTtmbi5OJiYoaC5IW2NdPWcpfWNhdGNoKGwpe1AoMTgzKX1yZXR1cm4gWWooYSxiKX19O3ZhciBwQT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5LPW5ldyBGYjt0aGlzLkg9e307dGhpcy5OPXt9O3RoaXMuUj17bmFtZTpFKDE5KSxzZXQ6ZnVuY3Rpb24oYixjKXtFZChWYihiLGMpLGEuSCk7b0EoYSl9LGdldDpmdW5jdGlvbihiKXtyZXR1cm4gYS5nZXQoYiwyKX0scmVzZXQ6ZnVuY3Rpb24oKXthLks9bmV3IEZiO2EuSD17fTtvQShhKX19fTtwQS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGIhPTI/dGhpcy5LLmdldChhKTpxQSh0aGlzLGEpfTt2YXIgcUE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWIuc3BsaXQoIi4iKTtjPWN8fFtdO2Zvcih2YXIgZT1hLkgsZj0wO2Y8ZC5sZW5ndGg7ZisrKXtpZihlPT09bnVsbClyZXR1cm4hMTtpZihlPT09dm9pZCAwKWJyZWFrO2U9ZVtkW2ZdXTtpZihjLmluZGV4T2YoZSkhPT0tMSlyZXR1cm59cmV0dXJuIGV9OwpwQS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OLmhhc093blByb3BlcnR5KGEpfHwodGhpcy5LLnNldChhLGIpLEVkKFZiKGEsYiksdGhpcy5IKSxvQSh0aGlzKSl9O3ZhciBzQT1mdW5jdGlvbigpe2Zvcih2YXIgYT1bImd0bS5hbGxvd2xpc3QiLCJndG0uYmxvY2tsaXN0IiwiZ3RtLndoaXRlbGlzdCIsImd0bS5ibGFja2xpc3QiLCJ0YWdUeXBlQmxhY2tsaXN0Il0sYj1yQSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1iLmdldChkLDEpO2lmKEFycmF5LmlzQXJyYXkoZSl8fENkKGUpKWU9RWQoZSxudWxsKTtiLk5bZF09ZX19LG9BPWZ1bmN0aW9uKGEsYil7R2IoYS5OLGZ1bmN0aW9uKGMsZCl7YS5LLnNldChjLGQpO0VkKFZiKGMpLGEuSCk7RWQoVmIoYyxkKSxhLkgpO2ImJmRlbGV0ZSBhLk5bY119KX0sckE9bmV3IHBBLHRBPXJBLlI7ZnVuY3Rpb24gdUEoYSxiKXtyZXR1cm4gckEuZ2V0KGEsYil9CmZ1bmN0aW9uIHZBKGEsYil7dmFyIGM9Yj09PXZvaWQgMD8yOmIsZD1yQSxlLGY9KGM9PT12b2lkIDA/MjpjKSE9PTE/cUEoZCxhKTpkLksuZ2V0KGEpO0FkKGYpPT09ImFycmF5Inx8QWQoZik9PT0ib2JqZWN0Ij9lPUVkKGYsbnVsbCk6ZT1mO3JldHVybiBlfTt2YXIgd0E9bmV3IFJlZ0V4cCgvXiguKlwuKT8oZ29vZ2xlfHlvdXR1YmV8YmxvZ2dlcnx3aXRoZ29vZ2xlKShcLmNvbT8pPyhcLlthLXpdezJ9KT9cLj8kLykseEE9e2NsOlsiZWNsIl0sY3VzdG9tUGl4ZWxzOlsibm9uR29vZ2xlUGl4ZWxzIl0sZWNsOlsiY2wiXSxlaGw6WyJobCJdLGdhYXdjOlsiZ29vZ3RhZyJdLGhsOlsiZWhsIl0saHRtbDpbImN1c3RvbVNjcmlwdHMiLCJjdXN0b21QaXhlbHMiLCJub25Hb29nbGVQaXhlbHMiLCJub25Hb29nbGVTY3JpcHRzIiwibm9uR29vZ2xlSWZyYW1lcyJdLGN1c3RvbVNjcmlwdHM6WyJodG1sIiwiY3VzdG9tUGl4ZWxzIiwibm9uR29vZ2xlUGl4ZWxzIiwibm9uR29vZ2xlU2NyaXB0cyIsIm5vbkdvb2dsZUlmcmFtZXMiXSxub25Hb29nbGVQaXhlbHM6W10sbm9uR29vZ2xlU2NyaXB0czpbIm5vbkdvb2dsZVBpeGVscyJdLG5vbkdvb2dsZUlmcmFtZXM6WyJub25Hb29nbGVQaXhlbHMiXX0seUE9e2NsOlsiZWNsIl0sY3VzdG9tUGl4ZWxzOlsiY3VzdG9tU2NyaXB0cyIsCiJodG1sIl0sZWNsOlsiY2wiXSxlaGw6WyJobCJdLGdhYXdjOlsiZ29vZ3RhZyJdLGhsOlsiZWhsIl0saHRtbDpbImN1c3RvbVNjcmlwdHMiXSxjdXN0b21TY3JpcHRzOlsiaHRtbCJdLG5vbkdvb2dsZVBpeGVsczpbImN1c3RvbVBpeGVscyIsImN1c3RvbVNjcmlwdHMiLCJodG1sIiwibm9uR29vZ2xlU2NyaXB0cyIsIm5vbkdvb2dsZUlmcmFtZXMiXSxub25Hb29nbGVTY3JpcHRzOlsiY3VzdG9tU2NyaXB0cyIsImh0bWwiXSxub25Hb29nbGVJZnJhbWVzOlsiY3VzdG9tU2NyaXB0cyIsImh0bWwiLCJub25Hb29nbGVTY3JpcHRzIl19LHpBPSJnb29nbGUgY3VzdG9tUGl4ZWxzIGN1c3RvbVNjcmlwdHMgaHRtbCBub25Hb29nbGVQaXhlbHMgbm9uR29vZ2xlU2NyaXB0cyBub25Hb29nbGVJZnJhbWVzIi5zcGxpdCgiICIpOwpmdW5jdGlvbiBBQSgpe3ZhciBhPXVBKCJndG0uYWxsb3dsaXN0Iil8fHVBKCJndG0ud2hpdGVsaXN0Iik7YSYmUCg5KTtJZig2MikmJihhPXZvaWQgMCk7QkEoKSYmKElmKDYyKT9QKDExNik6KFAoMTE3KSxJZig0OCkmJihhPVtdLHdpbmRvdy5jb25zb2xlJiZ3aW5kb3cuY29uc29sZS5sb2cmJndpbmRvdy5jb25zb2xlLmxvZygiR1RNIGJsb2NrZWQuIFNlZSBnby8xMzY4NzcyOC4iKSkpKTt2YXIgYj1hJiZSYihLYihhKSx4QSksYz11QSgiZ3RtLmJsb2NrbGlzdCIpfHx1QSgiZ3RtLmJsYWNrbGlzdCIpO2N8fChjPXVBKCJ0YWdUeXBlQmxhY2tsaXN0IikpJiZQKDMpO2M/UCg4KTpjPVtdO0JBKCkmJihjPUtiKGMpLGMucHVzaCgibm9uR29vZ2xlUGl4ZWxzIiwibm9uR29vZ2xlU2NyaXB0cyIsInNhbmRib3hlZFNjcmlwdHMiKSk7S2IoYykuaW5kZXhPZigiZ29vZ2xlIik+PTAmJlAoMik7dmFyIGQ9YyYmUmIoS2IoYykseUEpLGU9e307cmV0dXJuIGZ1bmN0aW9uKGYpe3ZhciBnPWYmJgpmW0dmLlliXTtpZighZ3x8dHlwZW9mIGchPT0ic3RyaW5nIilyZXR1cm4hMDtnPWcucmVwbGFjZSgvXl8qLywiIik7aWYoZVtnXSE9PXZvaWQgMClyZXR1cm4gZVtnXTt2YXIgaD1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSlbZ118fFtdLGw9ITA7YSYmKGw9bCYmQ0EoZyxoLGIpKTt2YXIgbj0hMTtjJiYobj1EQShnLGgsZCkpO3ZhciBwPSFsfHxuOyFwJiYoaC5pbmRleE9mKCJzYW5kYm94ZWRTY3JpcHRzIik9PT0tMXx8YiYmYi5pbmRleE9mKCJzYW5kYm94ZWRTY3JpcHRzIikhPT0tMT8wOkViKGQsekEpKSYmKHA9ITApO3JldHVybiBlW2ddPXB9fWZ1bmN0aW9uIENBKGEsYixjKXtpZihjLmluZGV4T2YoYSk8MClpZihiJiZiLmxlbmd0aD4wKWZvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7ZCsrKXtpZihjLmluZGV4T2YoYltkXSk8MClyZXR1cm4gUCgxMSksITF9ZWxzZSByZXR1cm4hMTtyZXR1cm4hMH0KZnVuY3Rpb24gREEoYSxiLGMpe3ZhciBkPWMuaW5kZXhPZihhKT49MDtpZihkKXJldHVybiBkO3ZhciBlPUViKGMsYnx8W10pO2UmJlAoMTApO3JldHVybiBlfWZ1bmN0aW9uIEJBKCl7cmV0dXJuIHdBLnRlc3QoQS5sb2NhdGlvbiYmQS5sb2NhdGlvbi5ob3N0bmFtZSl9O2Z1bmN0aW9uIEVBKGEpe2Zvcih2YXIgYj1bXSxjPVtdLGQ9RkEoYSksZT1tKGNBLmdldFJ1bGVzKCkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXtmb3IodmFyIGc9Zi52YWx1ZS5ldmFsdWF0ZShhLGQpLGg9Zy5maXJpbmdUYWdzLGw9Zy5ibG9ja2luZ1RhZ3Msbj0wO248aC5sZW5ndGg7bisrKWJbaFtuXV09ITA7Zm9yKHZhciBwPTA7cDxsLmxlbmd0aDtwKyspY1tsW3BdXT0hMH1mb3IodmFyIHE9W10scj0wO3I8Y0EudGFncy5sZW5ndGg7cisrKWJbcl0mJiFjW3JdJiYocVtyXT0hMCk7cmV0dXJuIHF9ZnVuY3Rpb24gRkEoYSl7dmFyIGI9W107cmV0dXJuIGZ1bmN0aW9uKGMpe2JbY109PT12b2lkIDAmJihiW2NdPWNBLnByZWRpY2F0ZXNbY10uZXZhbHVhdGUoYSxbXSkpO3JldHVybiBiW2NdfX07dmFyIEdBPWZ1bmN0aW9uKCl7dGhpcy5LPTA7dGhpcy5IPXt9fTtHQS5wcm90b3R5cGUuYWRkTGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSsrdGhpcy5LO3RoaXMuSFthXT10aGlzLkhbYV18fHt9O3RoaXMuSFthXVtTdHJpbmcoZCldPXtsaXN0ZW5lcjpiLHJmOmN9O3JldHVybiBkfTtHQS5wcm90b3R5cGUucmVtb3ZlTGlzdGVuZXI9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLkhbYV0sZD1TdHJpbmcoYik7aWYoIWN8fCFjW2RdKXJldHVybiExO2RlbGV0ZSBjW2RdO3JldHVybiEwfTt2YXIgSUE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtHYihIQS5IW2FdLGZ1bmN0aW9uKGQsZSl7Yy5pbmRleE9mKGUubGlzdGVuZXIpPDAmJihlLnJmPT09dm9pZCAwfHxiLmluZGV4T2YoZS5yZik+PTApJiZjLnB1c2goZS5saXN0ZW5lcil9KTtyZXR1cm4gY307ZnVuY3Rpb24gSkEoYSxiLGMpe3JldHVybntlbnRpdHlUeXBlOmEsaW5kZXhJbk9yaWdpbkNvbnRhaW5lcjpiLG5hbWVJbk9yaWdpbkNvbnRhaW5lcjpjLG9yaWdpbkNvbnRhaW5lcklkOkUoNSksb3JpZ2luQ0lkOnZrKCl9fTtmdW5jdGlvbiBLQShhLGIpe2lmKGRhdGEuZW50aXRpZXMpe3ZhciBjPWRhdGEuZW50aXRpZXNbYV07aWYoYylyZXR1cm4gY1tiXX19O3ZhciBNQT1mdW5jdGlvbihhLGIpe3RoaXMuSD0hMTt0aGlzLlI9W107dGhpcy5ldmVudERhdGE9e3RhZ3M6W119O3RoaXMuWj0hMTt0aGlzLks9dGhpcy5OPTA7TEEodGhpcyxhLGIpfSxOQT1mdW5jdGlvbihhLGIsYyxkKXtpZihDai5oYXNPd25Qcm9wZXJ0eShiKXx8Yj09PSJfX3pvbmUiKXJldHVybi0xO3ZhciBlPXt9O0NkKGQpJiYoZT1FZChkLGUpKTtlLmlkPWM7ZS5zdGF0dXM9InRpbWVvdXQiO3JldHVybiBhLmV2ZW50RGF0YS50YWdzLnB1c2goZSktMX0sT0E9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5ldmVudERhdGEudGFnc1tiXTtlJiYoZS5zdGF0dXM9YyxlLmV4ZWN1dGlvblRpbWU9ZCl9LFBBPWZ1bmN0aW9uKGEpe2lmKCFhLkgpe2Zvcih2YXIgYj1hLlIsYz0wO2M8Yi5sZW5ndGg7YysrKWJbY10oKTthLkg9ITA7YS5SLmxlbmd0aD0wfX0sTEE9ZnVuY3Rpb24oYSxiLGMpe2IhPT12b2lkIDAmJmEud2coYik7YyYmQS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7UEEoYSl9LApOdW1iZXIoYykpfTtNQS5wcm90b3R5cGUud2c9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPVBiKGZ1bmN0aW9uKCl7YmQoZnVuY3Rpb24oKXthKEUoNSksYi5ldmVudERhdGEpfSl9KTt0aGlzLkg/YygpOnRoaXMuUi5wdXNoKGMpfTt2YXIgUUE9ZnVuY3Rpb24oYSl7YS5OKys7cmV0dXJuIFBiKGZ1bmN0aW9uKCl7YS5LKys7YS5aJiZhLks+PWEuTiYmUEEoYSl9KX0sUkE9ZnVuY3Rpb24oYSl7YS5aPSEwO2EuSz49YS5OJiZQQShhKX07ZnVuY3Rpb24gU0EoKXtyZXR1cm4gQVtUQSgpXX0KZnVuY3Rpb24gVEEoKXtyZXR1cm4gQS5Hb29nbGVBbmFseXRpY3NPYmplY3R8fCJnYSJ9dmFyIFdBPW5ldyBmdW5jdGlvbigpe3RoaXMuSD17fX07ZnVuY3Rpb24gWEEoKXthOnt2YXIgYT1FKDUpO319CmZ1bmN0aW9uIFlBKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGM9U0EoKSxkPWMmJmMuZ2V0QnlOYW1lJiZjLmdldEJ5TmFtZShhKTtpZihkKXt2YXIgZT1kLmdldCgic2VuZEhpdFRhc2siKTtkLnNldCgic2VuZEhpdFRhc2siLGZ1bmN0aW9uKGYpe3ZhciBnPWYuZ2V0KCJoaXRQYXlsb2FkIiksaD1mLmdldCgiaGl0Q2FsbGJhY2siKSxsPWcuaW5kZXhPZigiJnRpZD0iK2IpPDA7bCYmKGYuc2V0KCJoaXRQYXlsb2FkIixnLnJlcGxhY2UoLyZ0aWQ9VUEtWzAtOV0rLVswLTldKy8sIiZ0aWQ9IitiKSwhMCksZi5zZXQoImhpdENhbGxiYWNrIix2b2lkIDAsITApKTtlKGYpO2wmJihmLnNldCgiaGl0UGF5bG9hZCIsZywhMCksZi5zZXQoImhpdENhbGxiYWNrIixoLCEwKSxmLnNldCgiX3hfMTkiLHZvaWQgMCwhMCksZShmKSl9KX19fTt2YXIgYUI9WyJlcyIsIjEiXSxiQj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5ldmVudERhdGE9e307dGhpcy5IPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjO3ZhciBkPWIuZXZlbnRJZCxlPWIudGY7aWYoYS5ldmVudERhdGFbZF0pe3ZhciBmPVtdO2EuSFtkXXx8Zi5wdXNoKGFCKTtmLnB1c2guYXBwbHkoZix3KGEuZXZlbnREYXRhW2RdKSk7ZSYmKGEuSFtkXT0hMCk7Yz1mfWVsc2UgYz1bXTtyZXR1cm4gY30pfSxjQjtmdW5jdGlvbiBkQihhLGIpe3ZhciBjO2lmKChjPWNCKSE9bnVsbCYmZm4uTil7dmFyIGQ9Yy5ldmVudERhdGEsZTtlPWIubWF0Y2goL14oZ3RtfGd0YWcpXC4vKT9lbmNvZGVVUklDb21wb25lbnQoYik6IioiO2RbYV09W1siZSIsZV0sWyJlaWQiLFN0cmluZyhhKV1dO2d6KCk7ZXooYSl9fTt2YXIgZUI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD17fTt0aGlzLks9e307ZnooZnVuY3Rpb24oYil7dmFyIGM9Yi5ldmVudElkLGQ9Yi50ZixlPVtdLGY9YS5IW2NdfHxbXTtmLmxlbmd0aCYmZS5wdXNoKFsidHIiLGYuam9pbigiLiIpXSk7dmFyIGc9YS5LW2NdfHxbXTtnLmxlbmd0aCYmZS5wdXNoKFsidGkiLGcuam9pbigiLiIpXSk7ZCYmKGRlbGV0ZSBhLkhbY10sZGVsZXRlIGEuS1tjXSk7cmV0dXJuIGV9KX0sZkI7CmZ1bmN0aW9uIGdCKGEsYixjKXtmQnx8KGZCPW5ldyBlQik7dmFyIGQ9ZkI7aWYoZm4uTiYmYil7dmFyIGU9ZG4oYik7ZC5IW2FdPWQuSFthXXx8W107ZC5IW2FdLnB1c2goYytlKTt2YXIgZj1iW0dmLlliXTtpZighZil0aHJvdyBFcnJvcigiRXJyb3I6IE5vIGZ1bmN0aW9uIG5hbWUgZ2l2ZW4gZm9yIGZ1bmN0aW9uIGNhbGwuIik7dmFyIGc9KFF6W2ZdPyIxIjoiMiIpK2U7ZC5LW2FdPWQuS1thXXx8W107ZC5LW2FdLnB1c2goZyk7Z3ooKTtleihhKX19O2Z1bmN0aW9uIGhCKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6YztpQigpLmFkZFJlc3RyaWN0aW9uKDAsYSxiLGMpfWZ1bmN0aW9uIGpCKCl7dmFyIGE9dmsoKTtyZXR1cm4gaUIoKS5nZXRSZXN0cmljdGlvbnMoMCxhKX1mdW5jdGlvbiBrQihhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aUIoKS5hZGRSZXN0cmljdGlvbigxLGEsYixjKX1mdW5jdGlvbiBsQigpe3ZhciBhPXZrKCk7cmV0dXJuIGlCKCkuZ2V0UmVzdHJpY3Rpb25zKDEsYSl9dmFyIG1CPWZ1bmN0aW9uKCl7dGhpcy5jb250YWluZXI9e307dGhpcy5IPXt9fSxuQj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuY29udGFpbmVyW2JdO2N8fChjPXtfZW50aXR5OntpbnRlcm5hbDpbXSxleHRlcm5hbDpbXX0sX2V2ZW50OntpbnRlcm5hbDpbXSxleHRlcm5hbDpbXX19LGEuY29udGFpbmVyW2JdPWMpO3JldHVybiBjfTsKbUIucHJvdG90eXBlLmFkZFJlc3RyaWN0aW9uPWZ1bmN0aW9uKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2lmKCFkfHwhdGhpcy5IW2JdKXt2YXIgZT1uQih0aGlzLGIpO2E9PT0wP2Q/ZS5fZW50aXR5LmV4dGVybmFsLnB1c2goYyk6ZS5fZW50aXR5LmludGVybmFsLnB1c2goYyk6YT09PTEmJihkP2UuX2V2ZW50LmV4dGVybmFsLnB1c2goYyk6ZS5fZXZlbnQuaW50ZXJuYWwucHVzaChjKSl9fTsKbUIucHJvdG90eXBlLmdldFJlc3RyaWN0aW9ucz1mdW5jdGlvbihhLGIpe3ZhciBjPW5CKHRoaXMsYik7aWYoYT09PTApe3ZhciBkLGU7cmV0dXJuW10uY29uY2F0KHcoKGM9PW51bGw/dm9pZCAwOihkPWMuX2VudGl0eSk9PW51bGw/dm9pZCAwOmQuaW50ZXJuYWwpfHxbXSksdygoYz09bnVsbD92b2lkIDA6KGU9Yy5fZW50aXR5KT09bnVsbD92b2lkIDA6ZS5leHRlcm5hbCl8fFtdKSl9aWYoYT09PTEpe3ZhciBmLGc7cmV0dXJuW10uY29uY2F0KHcoKGM9PW51bGw/dm9pZCAwOihmPWMuX2V2ZW50KT09bnVsbD92b2lkIDA6Zi5pbnRlcm5hbCl8fFtdKSx3KChjPT1udWxsP3ZvaWQgMDooZz1jLl9ldmVudCk9PW51bGw/dm9pZCAwOmcuZXh0ZXJuYWwpfHxbXSkpfXJldHVybltdfTsKbUIucHJvdG90eXBlLmdldEV4dGVybmFsUmVzdHJpY3Rpb25zPWZ1bmN0aW9uKGEsYil7dmFyIGM9bkIodGhpcyxiKSxkLGU7cmV0dXJuIGE9PT0wPyhjPT1udWxsP3ZvaWQgMDooZD1jLl9lbnRpdHkpPT1udWxsP3ZvaWQgMDpkLmV4dGVybmFsKXx8W106KGM9PW51bGw/dm9pZCAwOihlPWMuX2V2ZW50KT09bnVsbD92b2lkIDA6ZS5leHRlcm5hbCl8fFtdfTttQi5wcm90b3R5cGUucmVtb3ZlRXh0ZXJuYWxSZXN0cmljdGlvbnM9ZnVuY3Rpb24oYSl7dmFyIGI9bkIodGhpcyxhKTtiLl9ldmVudCYmKGIuX2V2ZW50LmV4dGVybmFsPVtdKTtiLl9lbnRpdHkmJihiLl9lbnRpdHkuZXh0ZXJuYWw9W10pO3RoaXMuSFthXT0hMH07ZnVuY3Rpb24gaUIoKXtyZXR1cm4ga2ooInIiLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBtQn0pfTtmdW5jdGlvbiBvQihhLGIsYyxkKXt2YXIgZT1jQS50YWdzW2FdLGY9cEIoYSxiLGMsZCk7aWYoIWYpcmV0dXJuIG51bGw7dmFyIGc9WnooZSxjKTtpZihnJiZnLmxlbmd0aCl7dmFyIGg9Z1swXTtmPW9CKGguaW5kZXgse29uU3VjY2VzczpmLG9uRmFpbHVyZTpoLmJvPT09MT9iLnRlcm1pbmF0ZTpmLHRlcm1pbmF0ZTpiLnRlcm1pbmF0ZX0sYyxkKX1yZXR1cm4gZn0KZnVuY3Rpb24gcEIoYSxiLGMsZCl7ZnVuY3Rpb24gZSgpe2Z1bmN0aW9uIHkoKXtpbSgzKTt2YXIgUz1OYigpLU47SkEoMSxhLGYuZ2V0TmFtZSgpKTtnQihjLmlkLGcsIjciKTtPQShjLmxkLEQsImV4Y2VwdGlvbiIsUyk7Zm4uSCYmRnooYyxnLEl5LlgudWopO0l8fChJPSEwLGwoKSl9aWYoZi5JYVtHZi5PcV0pbCgpO2Vsc2V7dmFyIHo9YUEoZixjKTtpZih6IT1udWxsKWZvcih2YXIgQz0wO0M8ei5sZW5ndGg7QysrKWlmKCFYbyh6W0NdKSl7bCgpO3JldHVybn12YXIgRD1OQShjLmxkLGYuTyxmLnRhZ0lkLGYuZ2V0TWV0YWRhdGEoYykpLEk9ITEsRz17dnRwX2d0bU9uU3VjY2VzczpmdW5jdGlvbigpe2lmKCFJKXtJPSEwO3ZhciBTPU5iKCktTjtnQihjLmlkLGcsIjUiKTtPQShjLmxkLEQsInN1Y2Nlc3MiLFMpO2ZuLkgmJkZ6KGMsZyxJeS5YLndqKTtoKCl9fSx2dHBfZ3RtT25GYWlsdXJlOmZ1bmN0aW9uKCl7aWYoIUkpe0k9ITA7dmFyIFM9TmIoKS1OO2dCKGMuaWQsZywiNiIpOwpPQShjLmxkLEQsImZhaWx1cmUiLFMpO2ZuLkgmJkZ6KGMsZyxJeS5YLnZqKTtsKCl9fX07Ry52dHBfZ3RtRXZlbnRJZD1jLmlkO2MucHJpb3JpdHlJZCYmKEcudnRwX2d0bVByaW9yaXR5SWQ9Yy5wcmlvcml0eUlkKTtnQihjLmlkLGcsIjEiKTtmbi5IJiZFeihjLGcpO3ZhciBOPU5iKCk7dHJ5e2YuZXZhbHVhdGUoYyxkLEcpfWNhdGNoKFMpe3koUyl9Zm4uSCYmRnooYyxnLEl5LlguQ24pfX12YXIgZj1jQS50YWdzW2FdLGc9Zi5GZygpLGg9Yi5vblN1Y2Nlc3MsbD1iLm9uRmFpbHVyZSxuPWIudGVybWluYXRlO2lmKGMuaXNCbG9ja2VkKGcpKXJldHVybiBudWxsO3ZhciBwPSR6KGYsYyk7aWYocCYmcC5sZW5ndGgpe3ZhciBxPXBbMF0scj1vQihxLmluZGV4LHtvblN1Y2Nlc3M6aCxvbkZhaWx1cmU6bCx0ZXJtaW5hdGU6bn0sYyxkKTtpZighcilyZXR1cm4gbnVsbDtoPXI7bD1xLmJvPT09Mj9uOnJ9aWYoZi5JYVtHZi5rbl18fGYuSWFbR2YuUXFdKXt2YXIgdD1mLklhW0dmLmtuXT8KY0Eudms6Yy52ayx1PWgsdj1sO2lmKCF0W2FdKXt2YXIgeD1xQihhLHQsUGIoZSkpO2g9eC5vblN1Y2Nlc3M7bD14Lm9uRmFpbHVyZX1yZXR1cm4gZnVuY3Rpb24oKXt0W2FdKHUsdil9fXJldHVybiBlfWZ1bmN0aW9uIHFCKGEsYixjKXt2YXIgZD1bXSxlPVtdO2JbYV09ckIoZCxlLGMpO3JldHVybntvblN1Y2Nlc3M6ZnVuY3Rpb24oKXtiW2FdPXNCO2Zvcih2YXIgZj0wO2Y8ZC5sZW5ndGg7ZisrKWRbZl0oKX0sb25GYWlsdXJlOmZ1bmN0aW9uKCl7YlthXT10Qjtmb3IodmFyIGY9MDtmPGUubGVuZ3RoO2YrKyllW2ZdKCl9fX1mdW5jdGlvbiByQihhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQsZSl7YS5wdXNoKGQpO2IucHVzaChlKTtjKCl9fWZ1bmN0aW9uIHNCKGEpe2EoKX1mdW5jdGlvbiB0QihhLGIpe2IoKX07dmFyIHdCPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGNBLnRhZ3MubGVuZ3RoO2QrKylpZihhW2RdKXt2YXIgZT1jQS50YWdzW2RdO3ZhciBmPVFBKGIubGQpO3RyeXt2YXIgZz1vQihkLHtvblN1Y2Nlc3M6ZixvbkZhaWx1cmU6Zix0ZXJtaW5hdGU6Zn0sYixkKTtpZihnKXt2YXIgaD1ReltlLk9dO2MucHVzaCh7Tm86ZCxwcmlvcml0eU92ZXJyaWRlOihoP2gucHJpb3JpdHlPdmVycmlkZXx8MDowKXx8S0EoZS5PLDEpfHwwLGV4ZWN1dGU6Z30pfWVsc2UgdUIoZCxiKSxmKCl9Y2F0Y2gobil7ZigpfX1jLnNvcnQodkIpO2Zvcih2YXIgbD0wO2w8Yy5sZW5ndGg7bCsrKWNbbF0uZXhlY3V0ZSgpO3JldHVybiBjLmxlbmd0aD4wfTsKZnVuY3Rpb24geEIoYSxiKXtpZighSEEpcmV0dXJuITE7dmFyIGM9YVsiZ3RtLnRyaWdnZXJzIl0mJlN0cmluZyhhWyJndG0udHJpZ2dlcnMiXSksZD1JQShhLmV2ZW50LGM/U3RyaW5nKGMpLnNwbGl0KCIsIik6W10pO2lmKCFkLmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIGU9MDtlPGQubGVuZ3RoOysrZSl7dmFyIGY9UUEoYik7dHJ5e2RbZV0oYSxmKX1jYXRjaChnKXtmKCl9fXJldHVybiEwfWZ1bmN0aW9uIHZCKGEsYil7dmFyIGMsZD1iLnByaW9yaXR5T3ZlcnJpZGUsZT1hLnByaW9yaXR5T3ZlcnJpZGU7Yz1kPmU/MTpkPGU/LTE6MDt2YXIgZjtpZihjIT09MClmPWM7ZWxzZXt2YXIgZz1hLk5vLGg9Yi5ObztmPWc+aD8xOmc8aD8tMTowfXJldHVybiBmfQpmdW5jdGlvbiB1QihhLGIpe2lmKGZuLk4pe3ZhciBjPWZ1bmN0aW9uKGQpe3ZhciBlPWIuaXNCbG9ja2VkKGNBLnRhZ3NbZF0uRmcoKSk/IjMiOiI0IixmPVp6KGNBLnRhZ3NbZF0sYik7ZiYmZi5sZW5ndGgmJmMoZlswXS5pbmRleCk7Z0IoYi5pZCxjQS50YWdzW2RdLkZnKCksZSk7dmFyIGc9JHooY0EudGFnc1tkXSxiKTtnJiZnLmxlbmd0aCYmYyhnWzBdLmluZGV4KX07YyhhKX19dmFyIEhBO2Z1bmN0aW9uIHlCKCl7SEF8fChIQT1uZXcgR0EpO3JldHVybiBIQX0KZnVuY3Rpb24gekIoYSl7dmFyIGI9YVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXSxjPWFbImd0bS5wcmlvcml0eUlkIl0sZD1hWyJndG0ucHJpb3JpdHlRdWV1ZSJdLGU9YS5ldmVudDtmbi5IJiZ2eihiLGUpO2lmKGU9PT0iZ3RtLmpzIil7aWYoJGsoMTMpKXJldHVybiExO1prKDEzLCEwKX12YXIgZj0hMSxnPWxCKCksaD1FZChhLG51bGwpO2lmKCFnLmV2ZXJ5KGZ1bmN0aW9uKHUpe3JldHVybiB1KHtvcmlnaW5hbEV2ZW50RGF0YTpofSl9KSl7aWYoZSE9PSJndG0uanMiJiZlIT09Imd0bS5pbml0IiYmZSE9PSJndG0uaW5pdF9jb25zZW50IilyZXR1cm4hMTtmPSEwfWRCKGIsZSk7dmFyIGw9YS5ldmVudENhbGxiYWNrLG49YS5ldmVudFRpbWVvdXQscD17aWQ6Yixwcmlvcml0eUlkOmMscHJpb3JpdHlRdWV1ZTpkLG5hbWU6ZSxpc0Jsb2NrZWQ6QUIoaCxmKSx2azpbXSxsb2dNYWNyb0Vycm9yOmZ1bmN0aW9uKHUsdix4KXtQKDYpO2ltKDQpO0pBKDIsdix4KX0sY2FjaGVkTW9kZWxWYWx1ZXM6QkIoKSwKbGQ6bmV3IE1BKGZ1bmN0aW9uKCl7Zm4uSCYmeXooYixlKTtGeSg1LGUpO2wmJmwuYXBwbHkobCxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpfSxuKSxvcmlnaW5hbEV2ZW50RGF0YTpofTtmbi5IJiZDeihwLmlkKTt2YXIgcT1FQShwKTtmbi5IJiZEeihwLmlkKTtGeSgyLGUpO2NBLmdldFJ1bGVzKCk7ZiYmKHE9Q0IocSkpO2ZuLkgmJnd6KGIpO3ZhciByPXdCKHEscCk7ciYmRnkoNCxlKTt2YXIgdD14QihhLHAubGQpO1JBKHAubGQpO2UhPT0iZ3RtLmpzIiYmZSE9PSJndG0uc3luYyJ8fFhBKCk7cmV0dXJuIERCKHEscil8fHR9CmZ1bmN0aW9uIEJCKCl7dmFyIGE9e307YS5ldmVudD12QSgiZXZlbnQiLDEpO2EuZWNvbW1lcmNlPXZBKCJlY29tbWVyY2UiLDEpO2EuZ3RtPXZBKCJndG0iKTthLmV2ZW50TW9kZWw9dkEoImV2ZW50TW9kZWwiKTtyZXR1cm4gYX0KZnVuY3Rpb24gQUIoYSxiKXt2YXIgYz1BQSgpO3JldHVybiBmdW5jdGlvbihkKXt2YXIgZT1jKGQpO2lmKGUpcmV0dXJuITA7dmFyIGY9ZCYmZFtHZi5ZYl07aWYoIWZ8fHR5cGVvZiBmIT09InN0cmluZyIpcmV0dXJuITA7Zj1mLnJlcGxhY2UoL15fKi8sIiIpO3ZhciBnPWpCKCksaD1hO2ImJihoPUVkKGEsbnVsbCksaFsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUik7Zm9yKHZhciBsPSExLG49YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pW2ZdfHxbXSxwPW0oZykscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpe3ZhciByPXEudmFsdWU7dHJ5e3Ioe2VudGl0eUlkOmYsc2VjdXJpdHlHcm91cHM6bixvcmlnaW5hbEV2ZW50RGF0YTpofSl8fChsPSEwKX1jYXRjaCh0KXtsPSEwfX1yZXR1cm4gbHx8ZX19CmZ1bmN0aW9uIENCKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspaWYoYVtjXSl7dmFyIGQ9Y0EudGFnc1tjXS5PO2lmKEJqW2RdfHxjQS50YWdzW2NdLklhW0dmLlJxXSE9PXZvaWQgMHx8S0EoZCwyKSliW2NdPSEwfXJldHVybiBifWZ1bmN0aW9uIERCKGEsYil7aWYoIWIpcmV0dXJuIGI7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoYVtjXSYmY0EudGFnc1tjXSYmIUNqW2NBLnRhZ3NbY10uT10pcmV0dXJuITA7cmV0dXJuITF9O3ZhciBFQj1OZig2MSwxRTMpLEZCPU5mKDY4LDJFMyksWm89WyJhZF9zdG9yYWdlIiwiYW5hbHl0aWNzX3N0b3JhZ2UiXTtmdW5jdGlvbiBHQihhLGIpe2lmKGEpe3ZhciBjPWtqKCJndGgiLGZ1bmN0aW9uKCl7cmV0dXJue319KSxkO2EhPT0yfHwoKGQ9SEIoKSk9PW51bGw/dm9pZCAwOmQuc3RhdHVzKSE9PTN8fGIhPT12b2lkIDAmJmI8PUZCfHwoYT0zLGMuZGw9Yj9NYXRoLmZsb29yKGIvMUUzKTp2b2lkIDApO2Mucz1hO0lCKGMpfX1mdW5jdGlvbiBJQihhKXtpZihhLnMpe3ZhciBiPWZ1bmN0aW9uKCl7dmFyIGM9e3N0YXR1czphLnMsZXhwaXJlczpEYXRlLm5vdygpKzg2NEU1fTthLmRsIT09dm9pZCAwJiYoYy5kZWxheT1hLmRsKTtrcigiZ3RnX2xvYWRfc3RhdHVzIixjKX07YnAoZnVuY3Rpb24oKXtpZihZbygpKWIoKTtlbHNlIGZvcih2YXIgYz1QYihiKSxkPW0oWm8pLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKUlsKGMsZS52YWx1ZSl9LFpvKX19CmZ1bmN0aW9uIEpCKCl7dmFyIGE9S0IoITApO3JldHVybiBhPyhMQihhLnN0YXR1cyxhLmRlbGF5KSwhMSk6ITB9ZnVuY3Rpb24gS0IoYSl7YT1hPT09dm9pZCAwPyExOmE7aWYoYWsoKSl7dmFyIGI9bnIoImd0Z19sb2FkX3N0YXR1cyIpLGM9Yi52YWx1ZSxkPWEmJkFiKGM9PW51bGw/dm9pZCAwOmMuZXhwaXJlcykmJihjPT1udWxsP3ZvaWQgMDpjLmV4cGlyZXMpPERhdGUubm93KCkrMzZFNTtpZihiLmVycm9yPT09MCYmQWIoYz09bnVsbD92b2lkIDA6Yy5zdGF0dXMpJiYhZCl7dmFyIGU9e3N0YXR1czpjLnN0YXR1c307KGM9PW51bGw/dm9pZCAwOmMuZGVsYXkpIT09dm9pZCAwJiYoZS5kZWxheT1jLmRlbGF5KTtyZXR1cm4gZX1yZXR1cm4gSEIoKX19ZnVuY3Rpb24gTEIoYSxiKXt2YXIgYz1raigiZ3RoIixmdW5jdGlvbigpe3JldHVybnt9fSk7Yy5zPWE7YiE9PXZvaWQgMCYmKGMuZGw9Yil9CmZ1bmN0aW9uIEhCKCl7dmFyIGE9bWooImd0aCIpO2lmKGEhPW51bGwmJmEucyl7dmFyIGI9e3N0YXR1czphLnN9O2EuZGwhPT12b2lkIDAmJihiLmRlbGF5PWEuZGwpO3JldHVybiBifX1mdW5jdGlvbiBNQigpe3ZhciBhOygoYT1IQigpKT09bnVsbD92b2lkIDA6YS5zdGF0dXMpPT09MSYmR0IoMyl9ZnVuY3Rpb24gTkIoKXtpZihKQigpKXt2YXIgYT1EYXRlLm5vdygpO25qKCJndGgiLHtsOmZ1bmN0aW9uKCl7R0IoMixEYXRlLm5vdygpLWEpfSxzOjF9KTt2YXIgYj1FKDUpLGM9U2IoYiwiR1RNLSIpPyIvZ3RtLmpzIjoiL2d0YWcvanMiLGQ9Imh0dHBzOi8vIitFKDMpK2MrIj9pZD0iK2IrIiZndGdfaGVhbHRoPTEiO1VjKGQsTUIsTUIpO0Euc2V0VGltZW91dChNQixFQil9fTtmdW5jdGlvbiBPQigpe3lCKCkuYWRkTGlzdGVuZXIoImd0bS5pbml0IixmdW5jdGlvbihhLGIpe1prKDI2LCEwKTtNKDU1NikmJmFrKCkmJiFJZig0NSkmJihmby5IW2NvLmlhLlpiXT1iby5NYS5MaCk7aWYoYWsoKSl7dmFyIGM7Yz1sbyhjby5pYS5aYik7Z28oYyk/aW8oYyxOQik6TkIoKX10byghMSwhMCk7YigpfSl9O2Z1bmN0aW9uIFBCKCl7aWYobWooInBzY2RsIikhPT12b2lkIDApbm0oam0uYmEub2kpPT09dm9pZCAwJiZtbShqbS5iYS5vaSxtaigicHNjZGwiKSk7ZWxzZXt2YXIgYT1mdW5jdGlvbihjKXtuaigicHNjZGwiLGMpO21tKGptLmJhLm9pLGMpfSxiPWZ1bmN0aW9uKCl7YSgiZXJyb3IiKX07dHJ5e0hjLmNvb2tpZURlcHJlY2F0aW9uTGFiZWw/KGEoInBlbmRpbmciKSxIYy5jb29raWVEZXByZWNhdGlvbkxhYmVsLmdldFZhbHVlKCkudGhlbihhKS5jYXRjaChiKSk6YSgibm9hcGkiKX1jYXRjaChjKXtiKGMpfX19O3ZhciBSQj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5yZWFkeT0hMTt0aGlzLks9MDt0aGlzLkg9W107dmFyIGI9QTtpZihCLnJlYWR5U3RhdGU9PT0iaW50ZXJhY3RpdmUiJiYhQi5jcmVhdGVFdmVudE9iamVjdHx8Qi5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIil0aGlzLm9uUmVhZHkoKTtlbHNleyRjKEIsIkRPTUNvbnRlbnRMb2FkZWQiLGZ1bmN0aW9uKGQpe3JldHVybiB2b2lkIGEub25SZWFkeShkKX0pOyRjKEIsInJlYWR5c3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKGQpe3JldHVybiB2b2lkIGEub25SZWFkeShkKX0pO2lmKEIuY3JlYXRlRXZlbnRPYmplY3QmJkIuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsKXt2YXIgYz0hMDt0cnl7Yz0hYi5mcmFtZUVsZW1lbnR9Y2F0Y2goZCl7fWMmJlFCKHRoaXMpfSRjKGIsImxvYWQiLGZ1bmN0aW9uKGQpe3JldHVybiB2b2lkIGEub25SZWFkeShkKX0pfX07UkIucHJvdG90eXBlLmlzUmVhZHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5yZWFkeX07ClJCLnByb3RvdHlwZS5vblJlYWR5PWZ1bmN0aW9uKGEpe2lmKCF0aGlzLnJlYWR5KXt2YXIgYj1CLmNyZWF0ZUV2ZW50T2JqZWN0LGM9Qi5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIixkPUIucmVhZHlTdGF0ZT09PSJpbnRlcmFjdGl2ZSI7aWYoIWF8fGEudHlwZSE9PSJyZWFkeXN0YXRlY2hhbmdlInx8Y3x8IWImJmQpe3RoaXMucmVhZHk9ITA7Zm9yKHZhciBlPTA7ZTx0aGlzLkgubGVuZ3RoO2UrKyliZCh0aGlzLkhbZV0pfXRoaXMuSC5wdXNoPWZ1bmN0aW9uKCl7Zm9yKHZhciBmPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxnPTA7ZzxmLmxlbmd0aDtnKyspYmQoZltnXSk7cmV0dXJuIDB9fX07CnZhciBRQj1mdW5jdGlvbihhKXtpZighYS5yZWFkeSYmYS5LPDE0MCl7YS5LKys7dHJ5e3ZhciBiLGM7KGM9KGI9Qi5kb2N1bWVudEVsZW1lbnQpLmRvU2Nyb2xsKT09bnVsbHx8Yy5jYWxsKGIsImxlZnQiKTthLm9uUmVhZHkoKX1jYXRjaChkKXtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBRQihhKX0sNTApfX19LFNCO2Z1bmN0aW9uIFRCKCl7U0J8fChTQj1uZXcgUkIpfWZ1bmN0aW9uIFVCKCl7VEIoKTt2YXIgYTtyZXR1cm4oYT1TQik9PW51bGw/dm9pZCAwOmEuaXNSZWFkeSgpfWZ1bmN0aW9uIFZCKGEpe1RCKCk7dmFyIGI7KGI9U0IpIT1udWxsJiYoYi5yZWFkeT9iZChhKTpiLkgucHVzaChhKSl9O3ZhciBYQj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9V0IsZTtpZigoZT1kLkgpPT1udWxsfHwhZS5Pcil7dmFyIGY9T2JqZWN0LmtleXMoYikubGVuZ3RoPjA/MjoxLGcsaCxsPShjPT1udWxsP3ZvaWQgMDooaD1jLm9yaWdpbmF0aW5nRW50aXR5KT09bnVsbD92b2lkIDA6aC5vcmlnaW5Db250YWluZXJJZCl8fCIiO2c9bD9TYihsLCJHVE0tIik/MzoyOjE7aWYoIWEpZC5IPXt0eXBlOmYsc291cmNlOmcscGFyYW1zOmJ9O2Vsc2UgaWYoZC5IKXtQKDE4NCk7dmFyIG49ITE7ZC5ILnNvdXJjZT09PWd8fGQuSC5zb3VyY2UhPT0zJiZnIT09M3x8KFVtKCJpZGNzIiwiMSIpLG49ITApO2QuSC50eXBlIT09MiYmZiE9PTJ8fFAoMTg2KTt2YXIgcDtpZihwPWQuSC50eXBlPT09MiYmZj09PTIpYTp7dmFyIHE9ZC5ILnBhcmFtcyxyPU9iamVjdC5rZXlzKHEpLHQ9T2JqZWN0LmtleXMoYik7aWYoci5sZW5ndGghPT10Lmxlbmd0aClwPSEwO2Vsc2V7Zm9yKHZhciB1PW0ociksdj11Lm5leHQoKTshdi5kb25lO3Y9CnUubmV4dCgpKXt2YXIgeD12LnZhbHVlO2lmKCFiLmhhc093blByb3BlcnR5KHgpfHxxW3hdIT09Ylt4XSl7cD0hMDticmVhayBhfX1wPSExfX1wJiYoVW0oImlkY2MiLCIxIiksbj0hMCk7biYmKHRvKCksZC5ILk9yPSEwKX19fSxXQj1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9dm9pZCAwfTt2YXIgWkI9ZnVuY3Rpb24oYSl7dmFyIGI9WUI7KCFmbi5LfHxTYihFKDUpLCJHVE0tIik/MDphPT09dm9pZCAwKSYmYi5IPT09MCYmKFVtKCJtY2MiLCIxIiksYi5IPTEpfSxZQj1uZXcgZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0wO1VtKCJuY2MiLGZ1bmN0aW9uKCl7aWYoSWYoNDUpJiZhLkghPT0yKXJldHVybiIxIn0pfTt2YXIgJEI9L14oPzpBV3xEQ3xHfEdGfEdUfEhBfE1DfFVBKSQvLGFDPS9ccy87CmZ1bmN0aW9uIGJDKGEsYil7aWYoemIoYSkpe2E9TGIoYSk7dmFyIGM9YS5pbmRleE9mKCItIik7aWYoIShjPDApKXt2YXIgZD1hLnN1YnN0cmluZygwLGMpO2lmKCRCLnRlc3QoZCkpe3ZhciBlPWEuc3Vic3RyaW5nKGMrMSksZjtpZihiKXt2YXIgZz1mdW5jdGlvbihuKXt2YXIgcD1uLmluZGV4T2YoIi8iKTtyZXR1cm4gcDwwP1tuXTpbbi5zdWJzdHJpbmcoMCxwKSxuLnN1YnN0cmluZyhwKzEpXX07Zj1nKGUpO2lmKGQ9PT0iREMiJiZmLmxlbmd0aD09PTIpe3ZhciBoPWcoZlsxXSk7aC5sZW5ndGg9PT0yJiYoZlsxXT1oWzBdLGYucHVzaChoWzFdKSl9fWVsc2V7Zj1lLnNwbGl0KCIvIik7Zm9yKHZhciBsPTA7bDxmLmxlbmd0aDtsKyspaWYoIWZbbF18fGFDLnRlc3QoZltsXSkmJihkIT09IkFXInx8bCE9PTEpKXJldHVybn1yZXR1cm57aWQ6YSxwcmVmaXg6ZCxkZXN0aW5hdGlvbklkOmQrIi0iK2ZbMF0saWRzOmYsSmM6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pZCE9PXRoaXMuZGVzdGluYXRpb25JZH19fX19fQpmdW5jdGlvbiBjQyhhLGIpe2Zvcih2YXIgYz17fSxkPTA7ZDxhLmxlbmd0aDsrK2Qpe3ZhciBlPWJDKGFbZF0sYik7ZSYmKGNbZS5pZF09ZSl9dmFyIGY9W10sZztmb3IoZyBpbiBjKWlmKGMuaGFzT3duUHJvcGVydHkoZykpe3ZhciBoPWNbZ107aC5wcmVmaXg9PT0iQVciJiZoLmlkc1tkQ1sxXV0mJmYucHVzaChoLmRlc3RpbmF0aW9uSWQpfWZvcih2YXIgbD0wO2w8Zi5sZW5ndGg7KytsKWRlbGV0ZSBjW2ZbbF1dO2Zvcih2YXIgbj1bXSxwPW0oT2JqZWN0LmtleXMoYykpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKW4ucHVzaChjW3EudmFsdWVdKTtyZXR1cm4gbn12YXIgZUM9e30sZEM9KGVDWzBdPTAsZUNbMV09MSxlQ1syXT0yLGVDWzNdPTAsZUNbNF09MSxlQ1s1XT0wLGVDWzZdPTAsZUNbN109MCxlQyk7dmFyIGZDPXtpbml0aWFsaXplZDoxMSxjb21wbGV0ZToxMixpbnRlcmFjdGl2ZToxM30sZ0M9e30saEM9T2JqZWN0LmZyZWV6ZSgoZ0NbRi5ELlRkXT0hMCxnQykpLGlDPWZ1bmN0aW9uKCl7dGhpcy5SPU5mKDM0LDUwMCk7dGhpcy5IPXt9O3RoaXMuTj17fTt0aGlzLks9dm9pZCAwfSxqQz1mdW5jdGlvbihhLGIsYyl7aWYoYy5sZW5ndGgmJmZuLkspe3ZhciBkOyhkPWEuSClbYl0hPW51bGx8fChkW2JdPVtdKTt2YXIgZTsoZT1hLk4pW2JdIT1udWxsfHwoZVtiXT1bXSk7dmFyIGY9Yy5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIWEuTltiXS5pbmNsdWRlcyhnKX0pO2EuSFtiXS5wdXNoLmFwcGx5KGEuSFtiXSx3KGYpKTthLk5bYl0ucHVzaC5hcHBseShhLk5bYl0sdyhmKSk7IWEuSyYmZi5sZW5ndGg+MCYmKFZtKCJ0ZGMiLCEwKSxhLks9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dG8oKTthLkg9e307YS5LPXZvaWQgMH0sYS5SKSl9fTsKaUMucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO1VtKCJ0ZGMiLGZ1bmN0aW9uKCl7YS5LJiYoQS5jbGVhclRpbWVvdXQoYS5LKSxhLks9dm9pZCAwKTt2YXIgYj1bXSxjO2ZvcihjIGluIGEuSClhLkguaGFzT3duUHJvcGVydHkoYykmJmIucHVzaChjKyIqIithLkhbY10uam9pbigiLiIpKTtyZXR1cm4gYi5sZW5ndGg/Yi5qb2luKCIhIik6dm9pZCAwfSwhMSl9Owp2YXIga0M9ZnVuY3Rpb24oYSxiKXt2YXIgYz17fSxkO2ZvcihkIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbZF09ITApO2Zvcih2YXIgZSBpbiBhKWEuaGFzT3duUHJvcGVydHkoZSkmJihjW2VdPSEwKTtyZXR1cm4gY30sbEM9ZnVuY3Rpb24oYSxiLGMsZCxlKXtkPWQ9PT12b2lkIDA/e306ZDtlPWU9PT12b2lkIDA/IiI6ZTtpZihiPT09YylyZXR1cm5bXTt2YXIgZj1mdW5jdGlvbih0LHUpe3ZhciB2O0FkKHUpPT09Im9iamVjdCI/dj11W3RdOkFkKHUpPT09ImFycmF5IiYmKHY9dVt0XSk7cmV0dXJuIHY9PT12b2lkIDA/aENbdF06dn0sZz1rQyhiLGMpLGg7Zm9yKGggaW4gZylpZihnLmhhc093blByb3BlcnR5KGgpJiZoIT09Ri5ELlhiKXt2YXIgbD0oZT9lKyIuIjoiIikraCxuPWYoaCxiKSxwPWYoaCxjKSxxPUFkKG4pPT09Im9iamVjdCJ8fEFkKG4pPT09ImFycmF5IixyPUFkKHApPT09Im9iamVjdCJ8fEFkKHApPT09ImFycmF5IjtpZihxJiZyKWxDKGEsbixwLGQsbCk7CmVsc2UgaWYocXx8cnx8biE9PXApZFtsXT0hMH1yZXR1cm4gT2JqZWN0LmtleXMoZCl9LG1DPW5ldyBpQzt2YXIgbkM9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5LPU5iKCk7dGhpcy5IPWI7dGhpcy5hcmdzPWM7dGhpcy5tZXNzYWdlQ29udGV4dD1kO3RoaXMudHlwZT1hfSxvQz1mdW5jdGlvbigpe3RoaXMuV2E9e307dGhpcy5pYj17fTt0aGlzLks9e307dGhpcy5OPW51bGw7dGhpcy5oYj17fTt0aGlzLkg9ITE7dGhpcy5zdGF0dXM9MX07ZnVuY3Rpb24gcEMoYSxiKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD09PTE/cUMoInNldCIsYSk6cUMoInNldCIsYSxiKX1mdW5jdGlvbiByQyhhLGIpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPT09MT9xQygiY29uZmlnIixhKTpxQygiY29uZmlnIixhLGIpfWZ1bmN0aW9uIHNDKGEsYixjKXtjPWN8fHt9O2NbRi5ELlhiXT1hO3JldHVybiBxQygiZXZlbnQiLGIsYyl9ZnVuY3Rpb24gcUMoKXtyZXR1cm4gYXJndW1lbnRzfTt2YXIgdEM9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoLGwsbixwLHEscil7dGhpcy5ldmVudElkPWE7dGhpcy5wcmlvcml0eUlkPWI7dGhpcy5wcmlvcml0eVF1ZXVlPWM7dGhpcy5FYT1kO3RoaXMuV2E9ZTt0aGlzLmhiPWY7dGhpcy5IYz1nO3RoaXMuQmc9aDt0aGlzLmliPWw7dGhpcy5ldmVudE1ldGFkYXRhPW47dGhpcy5vblN1Y2Nlc3M9cDt0aGlzLm9uRmFpbHVyZT1xO3RoaXMuaXNHdG1FdmVudD1yfSx1Qz1mdW5jdGlvbihhKXt2YXIgYj17b25TdWNjZXNzOnhiLG9uRmFpbHVyZTp4Yn07Yj1iPT09dm9pZCAwP3t9OmI7dmFyIGMsZCxlLGYsZyxoLGwsbixwLHEscix0LHUsdix4LHkseixDLEQsSSxHLE4sUyxXLGVhLGphO3JldHVybiBuZXcgdEMoKHY9KGM9Yik9PW51bGw/dm9pZCAwOmMuZXZlbnRJZCkhPW51bGw/djphLmV2ZW50SWQsKHg9KGQ9Yik9PW51bGw/dm9pZCAwOmQucHJpb3JpdHlJZCkhPW51bGw/eDphLnByaW9yaXR5SWQsKHk9KGU9Yik9PW51bGw/dm9pZCAwOmUucHJpb3JpdHlRdWV1ZSkhPQpudWxsP3k6YS5wcmlvcml0eVF1ZXVlLCh6PShmPWIpPT1udWxsP3ZvaWQgMDpmLkVhKSE9bnVsbD96OmEuRWEsKEM9KGc9Yik9PW51bGw/dm9pZCAwOmcuV2EpIT1udWxsP0M6YS5XYSwoRD0oaD1iKT09bnVsbD92b2lkIDA6aC5oYikhPW51bGw/RDphLmhiLChJPShsPWIpPT1udWxsP3ZvaWQgMDpsLkhjKSE9bnVsbD9JOmEuSGMsKEc9KG49Yik9PW51bGw/dm9pZCAwOm4uQmcpIT1udWxsP0c6YS5CZywoTj0ocD1iKT09bnVsbD92b2lkIDA6cC5pYikhPW51bGw/TjphLmliLChTPShxPWIpPT1udWxsP3ZvaWQgMDpxLmV2ZW50TWV0YWRhdGEpIT1udWxsP1M6YS5ldmVudE1ldGFkYXRhLChXPShyPWIpPT1udWxsP3ZvaWQgMDpyLm9uU3VjY2VzcykhPW51bGw/VzphLm9uU3VjY2VzcywoZWE9KHQ9Yik9PW51bGw/dm9pZCAwOnQub25GYWlsdXJlKSE9bnVsbD9lYTphLm9uRmFpbHVyZSwoamE9KHU9Yik9PW51bGw/dm9pZCAwOnUuaXNHdG1FdmVudCkhPW51bGw/amE6YS5pc0d0bUV2ZW50KX0sCnZDPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107c3dpdGNoKGIpe2Nhc2UgMzpjLnB1c2goYS5FYSk7Yy5wdXNoKGEuV2EpO2MucHVzaChhLmhiKTtjLnB1c2goYS5IYyk7Yy5wdXNoKGEuaWIpO2JyZWFrO2Nhc2UgMjpjLnB1c2goYS5FYSk7YnJlYWs7Y2FzZSAxOmMucHVzaChhLldhKTtjLnB1c2goYS5oYik7Yy5wdXNoKGEuSGMpO2MucHVzaChhLmliKTticmVhaztjYXNlIDQ6Yy5wdXNoKGEuRWEpLGMucHVzaChhLldhKSxjLnB1c2goYS5oYiksYy5wdXNoKGEuSGMpfXJldHVybiBjfSxPPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1tKHZDKGEsZD09PXZvaWQgMD8zOmQpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtpZihnW2JdIT09dm9pZCAwKXJldHVybiBnW2JdfXJldHVybiBjfSx3Qz1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz12QyhhLDQpLGQ9bShjKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlmb3IodmFyIGY9T2JqZWN0LmtleXMoZS52YWx1ZSksCmc9bShmKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSliW2gudmFsdWVdPTE7cmV0dXJuIE9iamVjdC5rZXlzKGIpfTt0Qy5wcm90b3R5cGUuZ2V0TWVyZ2VkVmFsdWVzPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/MzpiO3ZhciBkPXt9LGU9ITEsZj1mdW5jdGlvbihuKXtDZChuKSYmR2IobixmdW5jdGlvbihwLHEpe2U9ITA7ZFtwXT1xfSl9O2MmJmYoYyk7dmFyIGc9dkModGhpcyxiKTtnLnJldmVyc2UoKTtmb3IodmFyIGg9bShnKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSlmKGwudmFsdWVbYV0pO3JldHVybiBlP2Q6dm9pZCAwfTsKdmFyIHhDPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bRi5ELktmLEYuRC5HZixGLkQuSGYsRi5ELklmLEYuRC5KZixGLkQuTGYsRi5ELk1mXSxjPXZDKGEsMyksZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXtmb3IodmFyIGY9ZS52YWx1ZSxnPXt9LGg9ITEsbD1tKGIpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO2ZbcF0hPT12b2lkIDAmJihnW3BdPWZbcF0saD0hMCl9dmFyIHE9aD9nOnZvaWQgMDtpZihxKXJldHVybiBxfXJldHVybnt9fSx5Qz1mdW5jdGlvbihhLGIsYyl7dGhpcy5ldmVudElkPWE7dGhpcy5wcmlvcml0eUlkPWI7dGhpcy5wcmlvcml0eVF1ZXVlPWM7dGhpcy5FYT17fTt0aGlzLldhPXt9O3RoaXMuaGI9e307dGhpcy5IYz17fTt0aGlzLkJnPXt9O3RoaXMuaWI9e307dGhpcy5ldmVudE1ldGFkYXRhPXt9O3RoaXMuaXNHdG1FdmVudD0hMTt0aGlzLm9uU3VjY2Vzcz1mdW5jdGlvbigpe307dGhpcy5vbkZhaWx1cmU9CmZ1bmN0aW9uKCl7fX0sekM9ZnVuY3Rpb24oYSxiKXthLkVhPWI7cmV0dXJuIGF9LEFDPWZ1bmN0aW9uKGEsYil7YS5XYT1iO3JldHVybiBhfSxCQz1mdW5jdGlvbihhLGIpe2EuaGI9YjtyZXR1cm4gYX0sQ0M9ZnVuY3Rpb24oYSxiKXthLkhjPWI7cmV0dXJuIGF9LERDPWZ1bmN0aW9uKGEsYil7YS5CZz1iO3JldHVybiBhfSxFQz1mdW5jdGlvbihhLGIpe2EuaWI9YjtyZXR1cm4gYX0sRkM9ZnVuY3Rpb24oYSxiKXthLmV2ZW50TWV0YWRhdGE9Ynx8e307cmV0dXJuIGF9LEdDPWZ1bmN0aW9uKGEsYil7YS5vblN1Y2Nlc3M9YjtyZXR1cm4gYX0sSEM9ZnVuY3Rpb24oYSxiKXthLm9uRmFpbHVyZT1iO3JldHVybiBhfSxJQz1mdW5jdGlvbihhLGIpe2EuaXNHdG1FdmVudD1iO3JldHVybiBhfSxKQz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IHRDKGEuZXZlbnRJZCxhLnByaW9yaXR5SWQsYS5wcmlvcml0eVF1ZXVlLGEuRWEsYS5XYSxhLmhiLGEuSGMsYS5CZyxhLmliLGEuZXZlbnRNZXRhZGF0YSwKYS5vblN1Y2Nlc3MsYS5vbkZhaWx1cmUsYS5pc0d0bUV2ZW50KX07ZnVuY3Rpb24gS0MoYSxiKXtHYihhLGZ1bmN0aW9uKGMpe3ZhciBkO2lmKGQ9Yy5jaGFyQXQoMCk9PT0iXyIpe3ZhciBlO2E6c3dpdGNoKGMpe2Nhc2UgRi5ELlZiOmNhc2UgRi5ELlJmOmNhc2UgRi5ELnNoOmU9ITA7YnJlYWsgYTtkZWZhdWx0OmU9ITF9ZD0hZX1kJiYoYiYmYihjKSxkZWxldGUgYVtjXSl9KX07dmFyIExDPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9e307ZnooZnVuY3Rpb24oYil7dmFyIGM9Yi5ldmVudElkLGQ9Yi50ZixlPVtdLGY9YS5IW2NdfHxbXTtmLmxlbmd0aCYmZS5wdXNoKFsiZXByIixmLmpvaW4oIi4iKV0pO2QmJmRlbGV0ZSBhLkhbY107cmV0dXJuIGV9KX0sTkM9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPU1DO2ZuLk4mJmEhPT12b2lkIDAmJihkLkhbYV09ZC5IW2FdfHxbXSxkLkhbYV0ucHVzaChjK2IpLGd6KCksZXooYSkpfSxNQztmdW5jdGlvbiBPQygpe01DfHwoTUM9bmV3IExDKX07dmFyIFBDPWZ1bmN0aW9uKCl7dGhpcy5kZXN0aW5hdGlvbnM9e307dGhpcy5IPXt9O3RoaXMuY29tbWFuZHM9W119LFFDPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuZGVzdGluYXRpb25zW2IuZGVzdGluYXRpb25JZF09YS5kZXN0aW5hdGlvbnNbYi5kZXN0aW5hdGlvbklkXXx8bmV3IG9DfSxSQz1mdW5jdGlvbihhLGIsYyxkKXtpZihkLkgpe3ZhciBlPVFDKGEsZC5IKSxmPWUuTjtpZihmKXt2YXIgZz1FZChjLG51bGwpLGg9RWQoZS5XYVtkLkguZGVzdGluYXRpb25JZF0sbnVsbCksbD1FZChlLmhiLG51bGwpLG49RWQoZS5pYixudWxsKSxwPUVkKGEuSCxudWxsKSxxPXt9O2lmKGZuLk4pdHJ5e3E9RWQockEuSCxudWxsKX1jYXRjaCh4KXtQKDcyKX12YXIgcj1kLkgucHJlZml4LHQ9ZnVuY3Rpb24oeCl7dmFyIHk9ZC5tZXNzYWdlQ29udGV4dC5ldmVudElkO09DKCk7TkMoeSxyLHgpfSx1PUpDKElDKEhDKEdDKEZDKERDKENDKEVDKEJDKEFDKHpDKG5ldyB5QyhkLm1lc3NhZ2VDb250ZXh0LmV2ZW50SWQsCmQubWVzc2FnZUNvbnRleHQucHJpb3JpdHlJZCxkLm1lc3NhZ2VDb250ZXh0LnByaW9yaXR5UXVldWUpLGcpLGgpLGwpLG4pLHApLHEpLGQubWVzc2FnZUNvbnRleHQuZXZlbnRNZXRhZGF0YSksZnVuY3Rpb24oKXtpZih0KXt2YXIgeD10O3Q9dm9pZCAwO3goIjIiKTtpZihkLm1lc3NhZ2VDb250ZXh0Lm9uU3VjY2VzcylkLm1lc3NhZ2VDb250ZXh0Lm9uU3VjY2VzcygpfX0pLGZ1bmN0aW9uKCl7aWYodCl7dmFyIHg9dDt0PXZvaWQgMDt4KCIzIik7aWYoZC5tZXNzYWdlQ29udGV4dC5vbkZhaWx1cmUpZC5tZXNzYWdlQ29udGV4dC5vbkZhaWx1cmUoKX19KSwhIWQubWVzc2FnZUNvbnRleHQuaXNHdG1FdmVudCkpLHY9ZnVuY3Rpb24oKXt0cnl7dmFyIHg9ZC5tZXNzYWdlQ29udGV4dC5ldmVudElkO09DKCk7TkMoeCxyLCIxIik7dmFyIHk9ZC5ILmlkLHo9bUM7aWYoZm4uSyYmYj09PUYuRC53YSl7dmFyIEMsRD0oQz1iQyh5KSk9PW51bGw/dm9pZCAwOkMuaWRzO2lmKCEoRCYmRC5sZW5ndGg+CjEpKXt2YXIgST11LkVhW0YuRC5YYl07aWYoIUl8fEk9PT15KXt2YXIgRyxOPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KTtOLnRkfHwoTi50ZD17fSk7Rz1OLnRkO3ZhciBTPUVkKHUuSGMsbnVsbCk7RWQodS5FYSxTKTt2YXIgVz1bXSxlYTtmb3IoZWEgaW4gRylHLmhhc093blByb3BlcnR5KGVhKSYmbEMoeixHW2VhXSxTKS5sZW5ndGgmJlcucHVzaChlYSk7Vy5sZW5ndGgmJihqQyh6LHksVyksc2IoIlRBR0dJTkciLGZDW0IucmVhZHlTdGF0ZV18fDE0KSk7R1t5XT1TfX19ZihkLkguaWQsYixkLkssdSl9Y2F0Y2goZmEpe3ZhciBqYT1kLm1lc3NhZ2VDb250ZXh0LmV2ZW50SWQ7T0MoKTtOQyhqYSxyLCI0Iil9fTtiPT09Imd0YWcuZ2V0Ij92KCk6aW8oZS5SLHYpfX19LFNDPWZ1bmN0aW9uKGEsYil7aWYoYi50eXBlIT09InJlcXVpcmUiKXt2YXIgYz12b2lkIDA7Yi50eXBlPT09ImV2ZW50IiYmKGM9Yi5hcmdzWzFdKTtpZihiLkgpZm9yKHZhciBkPVFDKGEsYi5IKS5LW2IudHlwZV18fApbXSxlPTA7ZTxkLmxlbmd0aDtlKyspZFtlXShjKTtlbHNlIGZvcih2YXIgZiBpbiBhLmRlc3RpbmF0aW9ucylpZihhLmRlc3RpbmF0aW9ucy5oYXNPd25Qcm9wZXJ0eShmKSl7dmFyIGc9YS5kZXN0aW5hdGlvbnNbZl07aWYoZyYmZy5LKWZvcih2YXIgaD1nLktbYi50eXBlXXx8W10sbD0wO2w8aC5sZW5ndGg7bCsrKWhbbF0oYyl9fX07UEMucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPVFDKHRoaXMsYSk7ZS5zdGF0dXMhPT0zJiYoZS5OPWIsZS5zdGF0dXM9MyxlLlI9bG8oYyksVEModGhpcyxhLGR8fHt9KSx0aGlzLmZsdXNoKCkpfTsKUEMucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24oYSxiLGMsZCl7YyE9PXZvaWQgMCYmKFFDKHRoaXMsYykuc3RhdHVzPT09MSYmKFFDKHRoaXMsYykuc3RhdHVzPTIsdGhpcy5wdXNoKCJyZXF1aXJlIixbe31dLGMse30pKSxRQyh0aGlzLGMpLkgmJihkLmRlZmVycmFibGU9ITEpLGQuZXZlbnRNZXRhZGF0YXx8KGQuZXZlbnRNZXRhZGF0YT17fSksZC5ldmVudE1ldGFkYXRhW0guSi5zZ118fChkLmV2ZW50TWV0YWRhdGFbSC5KLnNnXT1bYy5kZXN0aW5hdGlvbklkXSksZC5ldmVudE1ldGFkYXRhW0guSi5tal18fChkLmV2ZW50TWV0YWRhdGFbSC5KLm1qXT1bYy5pZF0pKTt0aGlzLmNvbW1hbmRzLnB1c2gobmV3IG5DKGEsYyxiLGQpKTtkLmRlZmVycmFibGV8fHRoaXMuZmx1c2goKX07ClBDLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbihhKXtmb3IodmFyIGI9dGhpcyxjPVtdLGQ9ITEsZT17fTt0aGlzLmNvbW1hbmRzLmxlbmd0aDtlPXtabjp2b2lkIDB9KXt2YXIgZj10aGlzLmNvbW1hbmRzWzBdLGc9Zi5IO2lmKGYubWVzc2FnZUNvbnRleHQuZGVmZXJyYWJsZSkhZ3x8UUModGhpcyxnKS5IPyhmLm1lc3NhZ2VDb250ZXh0LmRlZmVycmFibGU9ITEsdGhpcy5jb21tYW5kcy5wdXNoKGYpKTpjLnB1c2goZiksdGhpcy5jb21tYW5kcy5zaGlmdCgpO2Vsc2V7c3dpdGNoKGYudHlwZSl7Y2FzZSAicmVxdWlyZSI6aWYoUUModGhpcyxnKS5zdGF0dXMhPT0zJiYhYSl7dGhpcy5jb21tYW5kcy5wdXNoLmFwcGx5KHRoaXMuY29tbWFuZHMsYyk7cmV0dXJufWJyZWFrO2Nhc2UgInNldCI6dmFyIGg9Zi5hcmdzWzBdO0tDKGgpO1VDKGgpO0diKGgsZnVuY3Rpb24oeCx5KXtFZChWYih4LHkpLGIuSCl9KTtIdShoLCEwKTticmVhaztjYXNlICJldmVudCI6ZS5abj1mLmFyZ3NbMV07dmFyIGw9ClZDKGYuYXJnc1swXSxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbigpe319KGUpKSxuPWxbRi5ELlhiXTtuJiZuIT09Zy5pZHx8SHUobCk7UkModGhpcyxlLlpuLGwsZik7YnJlYWs7Y2FzZSAiZ2V0Ijp2YXIgcD17fSxxPShwW0YuRC5UZl09Zi5hcmdzWzBdLHBbRi5ELlNmXT1mLmFyZ3NbMV0scCk7UkModGhpcyxGLkQuSmIscSxmKTticmVhaztjYXNlICJjb250YWluZXJfY29uZmlnIjp2YXIgcj1RQyh0aGlzLGcpLHQ9VkMoZi5hcmdzWzBdLGZ1bmN0aW9uKCl7fSk7SHUodCwhMCk7ci5IPSEwO0VkKHQsci5oYik7ZD0hMDticmVhaztjYXNlICJkZXN0aW5hdGlvbl9jb25maWciOnZhciB1PVFDKHRoaXMsZyksdj1WQyhmLmFyZ3NbMF0sZnVuY3Rpb24oKXt9KTtIdSh2LCEwKTt1LldhW2cuaWRdfHwodS5XYVtnLmlkXT17fSk7dS5IPSEwO0VkKHYsdS5XYVtnLmlkXSk7ZD0hMDticmVhaztjYXNlICJyZXNldF9jb250YWluZXJfY29uZmlnIjpRQyh0aGlzLGcpLmhiPXt9O2JyZWFrOwpjYXNlICJyZXNldF90YXJnZXRfY29uZmlnIjpRQyh0aGlzLGcpLldhW2cuaWRdPXt9fXRoaXMuY29tbWFuZHMuc2hpZnQoKTtTQyh0aGlzLGYpfX10aGlzLmNvbW1hbmRzLnB1c2guYXBwbHkodGhpcy5jb21tYW5kcyxjKTtkJiZ0aGlzLmZsdXNoKCl9O3ZhciBUQz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9RWQoYyxudWxsKTtFZChRQyhhLGIpLmliLGQpO1FDKGEsYikuaWI9ZH07ZnVuY3Rpb24gVkMoYSxiKXt2YXIgYz17fTtHYihhLGZ1bmN0aW9uKGQsZSl7RWQoVmIoZCxlKSxjKX0pO0tDKGMsYik7VUMoYyk7cmV0dXJuIGN9CmZ1bmN0aW9uIFVDKGEpe2lmKE0oNjAxKSYmQkEoKSl7Zm9yKHZhciBiPSExLGM9bShuZXcgU2V0KFtGLkQueWMsRi5ELmRkXSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2FbZV0hPT12b2lkIDAmJihiPSEwLGRlbGV0ZSBhW2VdKX1iJiYhYWwoMzUsZnVuY3Rpb24oKXtyZXR1cm4hMX0pJiYoWmsoMzUsITApLHdpbmRvdy5jb25zb2xlJiZ3aW5kb3cuY29uc29sZS5sb2cmJndpbmRvdy5jb25zb2xlLmxvZygiR29vZ2xlIFRhZyBNYW5hZ2VyOiBTZXJ2ZXItc2lkZSBHVE0gcGFyYW1ldGVycyAodHJhbnNwb3J0X3VybC9zZXJ2ZXJfY29udGFpbmVyX3VybCkgYXJlIG5vdCBwZXJtaXR0ZWQgb24gdGhpcyBkb21haW4gYW5kIGhhdmUgYmVlbiBpZ25vcmVkLiIpLFAoMTk3KSl9fTt2YXIgV0M9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IFBDO3RoaXMuSz0hMX07V0MucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7dGhpcy5ILmZsdXNoKCl9O3ZhciBYQztmdW5jdGlvbiBZQygpe1hDfHwoWEM9bmV3IFdDKTtyZXR1cm4gWEN9ZnVuY3Rpb24gWkMoYSxiLGMsZCl7dmFyIGU9WUMoKSxmPWJDKGMsZC5pc0d0bUV2ZW50KTtmJiYoZS5LJiYoZC5kZWZlcnJhYmxlPSEwKSxlLkgucHVzaCgiZXZlbnQiLFtiLGFdLGYsZCkpfWZ1bmN0aW9uICRDKGEsYixjLGQpe3ZhciBlPVlDKCksZj1iQyhjLGQuaXNHdG1FdmVudCk7ZiYmZS5ILnB1c2goImdldCIsW2EsYl0sZixkKX1mdW5jdGlvbiBhRChhLGIsYyl7dmFyIGQ9WUMoKSxlPWJDKGEsYy5pc0d0bUV2ZW50KTtlJiZkLkgucHVzaCgiY29udGFpbmVyX2NvbmZpZyIsW2JdLGUsYyl9CmZ1bmN0aW9uIGJEKGEsYixjKXt2YXIgZD1ZQygpLGU9YkMoYSxjLmlzR3RtRXZlbnQpO2UmJmQuSC5wdXNoKCJkZXN0aW5hdGlvbl9jb25maWciLFtiXSxlLGMpfWZ1bmN0aW9uIGNEKGEpe3ZhciBiPVlDKCksYz1iQyhhLCEwKTtjJiZiLkgucHVzaCgicmVzZXRfY29udGFpbmVyX2NvbmZpZyIsW10sYyx7fSl9ZnVuY3Rpb24gZEQoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO2MmJmIuSC5wdXNoKCJyZXNldF90YXJnZXRfY29uZmlnIixbXSxjLHt9KX1mdW5jdGlvbiBlRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7cmV0dXJuIGM/UUMoYi5ILGMpLmliOnt9fWZ1bmN0aW9uIGZEKGEpe3JldHVybiBZQygpLkguSFthXX1mdW5jdGlvbiBnRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7cmV0dXJuIGM/UUMoYi5ILGMpLkg6ITF9O2Z1bmN0aW9uIGhEKGEsYil7YS5oYXNPd25Qcm9wZXJ0eSgiZ3RtLnVuaXF1ZUV2ZW50SWQiKXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsImd0bS51bmlxdWVFdmVudElkIix7dmFsdWU6cmooKX0pO2IuZXZlbnRJZD1hWyJndG0udW5pcXVlRXZlbnRJZCJdO2IucHJpb3JpdHlJZD1hWyJndG0ucHJpb3JpdHlJZCJdO3JldHVybntldmVudElkOmIuZXZlbnRJZCxwcmlvcml0eUlkOmIucHJpb3JpdHlJZH19ZnVuY3Rpb24gaUQoYSl7Zm9yKHZhciBiPW0oW0YuRC5kZCxGLkQueWNdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZSxlPWEmJmFbZF18fGZEKGQpO2lmKGUpcmV0dXJuIGV9fWZ1bmN0aW9uIGpEKGEpe3JldHVybiFhLmlzR3RtRXZlbnR8fGEuZXZlbnRNZXRhZGF0YSYmYS5ldmVudE1ldGFkYXRhW0guSi5DY10mJmEuZXZlbnRNZXRhZGF0YVtILkouTmJdIT09dmsoKT8hMTohMH07dmFyIGtEPW5ldyBmdW5jdGlvbigpe3RoaXMuSD0hMX07dmFyIGxEPWZ1bmN0aW9uKCl7dGhpcy5tZXNzYWdlcz1bXTt0aGlzLkg9W119O2xELnByb3RvdHlwZS5lbnF1ZXVlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLm1lc3NhZ2VzLmxlbmd0aCsxO2FbImd0bS51bmlxdWVFdmVudElkIl09YjthWyJndG0ucHJpb3JpdHlJZCJdPWQ7dmFyIGU9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHtldmVudElkOmIscHJpb3JpdHlJZDpkLGZyb21Db250YWluZXJFeGVjdXRpb246ITB9KTtpZihNKDU5NSkpe3ZhciBmPWMucHJpb3JpdHlRdWV1ZT9bXS5jb25jYXQodyhjLnByaW9yaXR5UXVldWUpLFtkXSk6W2RdO2FbImd0bS5wcmlvcml0eVF1ZXVlIl09ZjtlLnByaW9yaXR5UXVldWU9Zn12YXIgZz17bWVzc2FnZTphLG5vdEJlZm9yZUV2ZW50SWQ6Yixwcmlvcml0eUlkOmQsbWVzc2FnZUNvbnRleHQ6ZX07dGhpcy5tZXNzYWdlcy5wdXNoKGcpO2Zvcih2YXIgaD0wO2g8dGhpcy5ILmxlbmd0aDtoKyspdHJ5e3RoaXMuSFtoXShnKX1jYXRjaChsKXt9fTsKbEQucHJvdG90eXBlLmxpc3Rlbj1mdW5jdGlvbihhKXt0aGlzLkgucHVzaChhKX07bEQucHJvdG90eXBlLmdldD1mdW5jdGlvbigpe2Zvcih2YXIgYT17fSxiPTA7Yjx0aGlzLm1lc3NhZ2VzLmxlbmd0aDtiKyspe3ZhciBjPXRoaXMubWVzc2FnZXNbYl0sZD1hW2Mubm90QmVmb3JlRXZlbnRJZF07ZHx8KGQ9W10sYVtjLm5vdEJlZm9yZUV2ZW50SWRdPWQpO2QucHVzaChjKX1yZXR1cm4gYX07bEQucHJvdG90eXBlLnBydW5lPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPVtdLGQ9MDtkPHRoaXMubWVzc2FnZXMubGVuZ3RoO2QrKyl7dmFyIGU9dGhpcy5tZXNzYWdlc1tkXTtlLm5vdEJlZm9yZUV2ZW50SWQ9PT1hP2IucHVzaChlKTpjLnB1c2goZSl9dGhpcy5tZXNzYWdlcz1jO3JldHVybiBifTsKZnVuY3Rpb24gbUQoYSxiLGMpe2MuZXZlbnRNZXRhZGF0YT1jLmV2ZW50TWV0YWRhdGF8fHt9O2MuZXZlbnRNZXRhZGF0YVtILkouTmJdPU0oNTUwKT92aygpOkUoNik7bkQoKS5lbnF1ZXVlKGEsYixjKX1mdW5jdGlvbiBuRCgpe3JldHVybiBraigibWIiLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBsRH0pfTt2YXIgcEQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1vRDtiPVN0cmluZyhiKS5zcGxpdCgiLCIpO2Zvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1jLk5bYltkXV18fFtdO2MuTltiW2RdXT1lO2UuaW5kZXhPZihhKTwwJiZlLnB1c2goYSl9fSxxRD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1vRCxkPVtdLGU9W10sZj17fSxnPTA7ZzxhLmxlbmd0aDtmPXtsazp2b2lkIDAsUWo6dm9pZCAwLFJqOnZvaWQgMH0sZysrKXt2YXIgaD1hW2ddO2lmKGguaW5kZXhPZigiLSIpPj0wKXtpZihmLmxrPWJDKGgsYiksZi5sayl7dmFyIGw9dGsoKTtDYihsLGZ1bmN0aW9uKHgpe3JldHVybiBmdW5jdGlvbih5KXtyZXR1cm4geC5say5kZXN0aW5hdGlvbklkPT09eX19KGYpKT9kLnB1c2goaCk6ZS5wdXNoKGgpfX1lbHNle2lmKE0oNTUwKSl7dmFyIG49Yy5LW2hdfHxbXTtmLlJqPXt9O24uZm9yRWFjaChmdW5jdGlvbih4KXtyZXR1cm4gZnVuY3Rpb24oeSl7eC5Salt5XT0hMH19KGYpKTtmb3IodmFyIHA9CnRrKCkscT0wO3E8cC5sZW5ndGg7cSsrKWYuUmpbcFtxXV0mJmQucHVzaChwW3FdKX1lbHNle3ZhciByPWMuSFtoXXx8W107Zi5Raj17fTtyLmZvckVhY2goZnVuY3Rpb24oeCl7cmV0dXJuIGZ1bmN0aW9uKHkpe3guUWpbeV09ITB9fShmKSk7Zm9yKHZhciB0PXdrKCksdT0wO3U8dC5sZW5ndGg7dSsrKWlmKGYuUWpbdFt1XV0pe2Q9ZC5jb25jYXQodGsoKSk7YnJlYWt9fXZhciB2PWMuTltoXXx8W107di5sZW5ndGgmJihkPWQuY29uY2F0KHYpKX19cmV0dXJue2VrOmQsUHM6ZX19LHJEPWZ1bmN0aW9uKGEpe0diKG9ELkgsZnVuY3Rpb24oYixjKXt2YXIgZD1jLmluZGV4T2YoYSk7ZD49MCYmYy5zcGxpY2UoZCwxKX0pfSxzRD1mdW5jdGlvbihhKXtHYihvRC5LLGZ1bmN0aW9uKGIsYyl7dmFyIGQ9Yy5pbmRleE9mKGEpO2Q+PTAmJmMuc3BsaWNlKGQsMSl9KX0sdEQ9ZnVuY3Rpb24oYSl7R2Iob0QuTixmdW5jdGlvbihiLGMpe3ZhciBkPWMuaW5kZXhPZihhKTtkPj0wJiZjLnNwbGljZShkLAoxKX0pfSxvRD1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9e307dGhpcy5OPXt9O3RoaXMuSz17fX07ZnVuY3Rpb24gdUQoYSxiLGMpe3ZhciBkPUVkKGEsbnVsbCk7ZC5ldmVudElkPXZvaWQgMDtkLmluaGVyaXRQYXJlbnRDb25maWc9dm9pZCAwO09iamVjdC5rZXlzKGIpLnNvbWUoZnVuY3Rpb24oZil7cmV0dXJuIGJbZl0hPT12b2lkIDB9KSYmUCgxMzYpO3ZhciBlPUVkKGIsbnVsbCk7RWQoYyxlKTttRChyQyh3aygpWzBdLGUpLGEuZXZlbnRJZCxkKX0KZnVuY3Rpb24gdkQoYSxiLGMsZCl7dmFyIGU9e30sZj0oZVtGLkQuVWJdPUYuRC53YSxlWyJndG0uY29uZmlnQ29udGFpbmVySWQiXT1hLmlkLGVbImd0bS5jb25maWdQYXJhbWV0ZXJzIl09YixlWyJndG0udW5pcXVlRXZlbnRJZCJdPWQuZXZlbnRJZCxlKTtjLnByaW9yaXR5UXVldWUmJihmWyJndG0ucHJpb3JpdHlRdWV1ZSJdPWMucHJpb3JpdHlRdWV1ZSk7Yy5ldmVudE1ldGFkYXRhJiYoZlsiZ3RtLmV2ZW50TWV0YWRhdGEiXT1jLmV2ZW50TWV0YWRhdGEpO2EuSmMoKSYmKGZbImd0bS5jb25maWdDb250YWluZXJJZCJdPXdrKClbMF0sZlsiZ3RtLm9yaWdpbmFsQ29uZmlnVGFyZ2V0SWQiXT1hLmlkKTtyZXR1cm4gZn1mdW5jdGlvbiB3RChhLGIsYyl7aWYoSWYoMTEpJiYhYyYmIWFbRi5ELlZkXSl7dmFyIGQ9YWwoMTAsZnVuY3Rpb24oKXtyZXR1cm4hMX0pO1prKDEwLCEwKTtYQihkLGEsYik7aWYoZClyZXR1cm4hMH1yZXR1cm4hMX07ZnVuY3Rpb24geEQoYSxiKXt2YXIgYz17fSxkPShjLmV2ZW50PWEsYyk7YiYmKGQuZXZlbnRNb2RlbD1FZChiLG51bGwpLGJbRi5ELlBmXSYmKGQuZXZlbnRDYWxsYmFjaz1iW0YuRC5QZl0pLGJbRi5ELnBoXSYmKGQuZXZlbnRUaW1lb3V0PWJbRi5ELnBoXSkpO3JldHVybiBkfQpmdW5jdGlvbiB5RChhLGIpe3ZhciBjPWEmJmFbRi5ELlhiXTtjPT09dm9pZCAwJiYoYz11QShGLkQuWGIsMiksYz09PXZvaWQgMCYmKGM9ImRlZmF1bHQiKSk7aWYoemIoYyl8fEFycmF5LmlzQXJyYXkoYykpe3ZhciBkO2Q9Yi5pc0d0bUV2ZW50P3piKGMpP1tjXTpjOmMudG9TdHJpbmcoKS5yZXBsYWNlKC9ccysvZywiIikuc3BsaXQoIiwiKTt2YXIgZT1xRChkLGIuaXNHdG1FdmVudCksZj1lLmVrLGc9ZS5QcztpZihnLmxlbmd0aClmb3IodmFyIGg9aUQoYSksbD0wO2w8Zy5sZW5ndGg7bCsrKXt2YXIgbj1iQyhnW2xdLGIuaXNHdG1FdmVudCk7aWYobil7dmFyIHA9bi5kZXN0aW5hdGlvbklkLHE9dm9pZCAwOygocT1uayhuLmRlc3RpbmF0aW9uSWQpKT09bnVsbD92b2lkIDA6cS5zdGF0ZSk9PT0wfHxuQShwLGgse3NvdXJjZTozLGZyb21Db250YWluZXJFeGVjdXRpb246Yi5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufSl9fXZhciByPWYuY29uY2F0KGcpO3JldHVybntlazpjQyhmLGIuaXNHdG1FdmVudCksCm1yOmNDKHIsYi5pc0d0bUV2ZW50KX19fTt2YXIgekQ9e30sQUQ9KHpELmNvbmZpZz1mdW5jdGlvbihhLGIpe3ZhciBjPWhEKGEsYiksZDthOntpZighKGEubGVuZ3RoPDIpJiZ6YihhWzFdKSl7dmFyIGU9e307aWYoYS5sZW5ndGg+Mil7aWYoYVsyXSE9PXZvaWQgMCYmIUNkKGFbMl0pfHxhLmxlbmd0aD4zKXtkPXZvaWQgMDticmVhayBhfWU9YVsyXX12YXIgZj1iQyhhWzFdLGIuaXNHdG1FdmVudCk7aWYoZil7ZD17dGFyZ2V0OmYscGFyYW1zOmV9O2JyZWFrIGF9fWQ9dm9pZCAwfXZhciBnPWQ7aWYoZyl7dmFyIGg9Zy50YXJnZXQsbD1nLnBhcmFtcyxuO2E6e2lmKCFJZig3KSl7dmFyIHA9eWsoemsoKSk7aWYoTWsocCkpe3ZhciBxPXAucGFyZW50LHI9cS5pc0Rlc3RpbmF0aW9uO249e1ZzOnlrKHEpLE1zOnJ9O2JyZWFrIGF9fW49dm9pZCAwfXZhciB0PW4sdT10PT1udWxsP3ZvaWQgMDp0LlZzLHY9dD09bnVsbD92b2lkIDA6dC5NcztkQihjLmV2ZW50SWQsImd0YWcuY29uZmlnIik7dmFyIHgseT1oLmRlc3RpbmF0aW9uSWQ7CmlmKGguSmMoKT90aygpLmluZGV4T2YoeSkhPT0tMTp3aygpLmluZGV4T2YoeSkhPT0tMSlhOntpZih1JiYoUCgxMjgpLHYmJlAoMTMwKSxiLmluaGVyaXRQYXJlbnRDb25maWcpKXt2YXIgejt2YXIgQz0kaygxMik7aWYoQyl1RChiLEMsbCksej0hMTtlbHNle3ZhciBEPSRrKDExKTshbFtGLkQuVmRdJiYoTSg1NTApfHxJZigxMSkpJiZEfHxaaygxMSxFZChsLG51bGwpKTt6PSEwfXomJnUuY29udGFpbmVycyYmdS5jb250YWluZXJzLmpvaW4oIiwiKTt4PXZvaWQgMDticmVhayBhfXZhciBJPSFJZig0NSksRz0hU2IoaC5pZCwiR1RNLSIpO0kmJkcmJihPYmplY3Qua2V5cyhsKS5sZW5ndGg9PT0wP0d1KFQuVy5Tayk6R3UoVC5XLlRrKSxFbCgpJiZHdShULlcuUmspLCRrKDMxKSYmR3UoVC5XLlVrKSk7dmFyIE49WUI7Zm4uSyYmKE4uSD09PTEmJihRbS5ILm1jYz0hMSksTi5IPTIpO2lmKE0oNTUwKXx8IXdEKGwsYixoLkpjKCkpKXtrRC5IfHxQKDQzKTtpZighTSg1NTApKXtpZighYi5ub1RhcmdldEdyb3VwKXt2YXIgUz0KaC5pZDtpZihoLkpjKCkpdEQoUykscEQoUyxsW0YuRC5PZF18fCJkZWZhdWx0Iik7ZWxzZXtyRChTKTt2YXIgVz1sW0YuRC5PZF18fCJkZWZhdWx0IixlYT1vRDtXPVcudG9TdHJpbmcoKS5zcGxpdCgiLCIpO2Zvcih2YXIgamE9MDtqYTxXLmxlbmd0aDtqYSsrKXt2YXIgZmE9ZWEuSFtXW2phXV18fFtdO2VhLkhbV1tqYV1dPWZhO2ZhLmluZGV4T2YoUyk8MCYmZmEucHVzaChTKX19fWRlbGV0ZSBsW0YuRC5PZF19dmFyIHNhPWIuZXZlbnRNZXRhZGF0YXx8e307c2EuaGFzT3duUHJvcGVydHkoSC5KLmFlKXx8KHNhW0guSi5hZV09IWIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbik7Yi5ldmVudE1ldGFkYXRhPXNhO2RlbGV0ZSBsW0YuRC5QZl07aWYoTSg1NTApKXt4PXZEKGgsbCxiLGMpO2JyZWFrIGF9dmFyIGRhPSEhbFtGLkQuVmRdO2RlbGV0ZSBsW0YuRC5WZF07dmFyIG1hPXRrKCksUGE9Y0QsRmE9YUQ7aC5KYygpJiYobWE9W2guaWRdLFBhPWRELEZhPWJEKTtmb3IodmFyIHFhPTA7cWE8Cm1hLmxlbmd0aDtxYSsrKXtkYXx8UGEobWFbcWFdKTt2YXIgaWI9Z0QobWFbcWFdKTtGYShtYVtxYV0sRWQobCxudWxsKSxFZChiLG51bGwpKTtpYiYmZGF8fFpDKEYuRC53YSxFZChsLG51bGwpLG1hW3FhXSxFZChiLG51bGwpKX19eD12b2lkIDB9ZWxzZSBhOntpZighYi5pbmhlcml0UGFyZW50Q29uZmlnJiYhbFtGLkQuWmNdKXt2YXIgWGI9aUQobCksTGM9aC5kZXN0aW5hdGlvbklkO2lmKGguSmMoKSluQShMYyxYYix7c291cmNlOjIsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KTtlbHNlIGlmKHUhPT12b2lkIDAmJnUuY29udGFpbmVycy5pbmRleE9mKExjKSE9PS0xKXt2YXIgUWQ9JGsoMTEpLFljPSRrKDEyKTtRZD91RChiLGwsUWQpOlljfHxaaygxMixFZChsLG51bGwpKX1lbHNlIGlmKGhBKExjLFhiLCEwLHtzb3VyY2U6Mixmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pLE0oNTUwKSl7eD12RChoLApsLGIsYyk7YnJlYWsgYX19eD12b2lkIDB9cmV0dXJuIHh9fSx6RC5jb25zZW50PWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg9PT0zKXtQKDM5KTt2YXIgYz1oRChhLGIpLGQ9YVsxXSxlPXt9LGY9T28oYVsyXSksZztmb3IoZyBpbiBmKWlmKGYuaGFzT3duUHJvcGVydHkoZykpe3ZhciBoPWZbZ107ZVtnXT1nPT09Ri5ELllnP0FycmF5LmlzQXJyYXkoaCk/TmFOOk51bWJlcihoKTpnPT09Ri5ELm5jPyhBcnJheS5pc0FycmF5KGgpP2g6W2hdKS5tYXAoUG8pOlFvKGgpfWIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbnx8KGVbRi5ELm1hXSYmUCgxMzkpLGVbRi5ELlhhXSYmUCgxNDApKTtkPT09ImRlZmF1bHQiP1RvKGUpOmQ9PT0idXBkYXRlIj9WbyhlLGMpOmQ9PT0iZGVjbGFyZSImJmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbiYmU28oZSl9fSx6RC5jb250YWluZXJfY29uZmlnPWZ1bmN0aW9uKGEsYil7aWYoakQoYikmJmEubGVuZ3RoPT09MyYmemIoYVsxXSkmJkNkKGFbMl0pKXt2YXIgYz0KYVsyXSxkPWJDKGFbMV0sITApO2QmJmFEKGQuZGVzdGluYXRpb25JZCxjLEVkKGIsbnVsbCkpfX0sekQuZGVzdGluYXRpb25fY29uZmlnPWZ1bmN0aW9uKGEsYil7aWYoakQoYikmJmEubGVuZ3RoPT09MyYmemIoYVsxXSkmJkNkKGFbMl0pKXt2YXIgYz1hWzJdLGQ9YkMoYVsxXSwhMCk7aWYoZCl7aWYoTSg1NTApKXtpZighYi5ub1RhcmdldEdyb3VwKXt2YXIgZT1kLmlkO2lmKGQuSmMoKSl0RChlKSxwRChlLGNbRi5ELk9kXXx8ImRlZmF1bHQiKTtlbHNle3NEKGUpO3ZhciBmPWNbRi5ELk9kXXx8ImRlZmF1bHQiLGc9b0Q7Zj1TdHJpbmcoZikuc3BsaXQoIiwiKTtmb3IodmFyIGg9MDtoPGYubGVuZ3RoO2grKyl7dmFyIGw9Zy5LW2ZbaF1dfHxbXTtnLktbZltoXV09bDtsLmluZGV4T2YoZSk8MCYmbC5wdXNoKGUpfX19ZGVsZXRlIGNbRi5ELk9kXX1iRChkLmlkLGMsRWQoYixudWxsKSl9fX0sekQuZXZlbnQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hWzFdO2lmKCEoYS5sZW5ndGg8MikmJgp6YihjKSl7dmFyIGQ9dm9pZCAwO2lmKGEubGVuZ3RoPjIpe2lmKCFDZChhWzJdKSYmYVsyXSE9PXZvaWQgMHx8YS5sZW5ndGg+MylyZXR1cm47ZD1hWzJdfXZhciBlPXhEKGMsZCksZj1oRChhLGIpLGc9Zi5ldmVudElkLGg9Zi5wcmlvcml0eUlkO2VbImd0bS51bmlxdWVFdmVudElkIl09ZztoJiYoZVsiZ3RtLnByaW9yaXR5SWQiXT1oKTtiLnByaW9yaXR5UXVldWUmJihlWyJndG0ucHJpb3JpdHlRdWV1ZSJdPWIucHJpb3JpdHlRdWV1ZSk7aWYoYz09PSJvcHRpbWl6ZS5jYWxsYmFjayIpcmV0dXJuIGUuZXZlbnRNb2RlbD1lLmV2ZW50TW9kZWx8fHt9LGU7dmFyIGw9eUQoZCxiKTtpZihsKXtmb3IodmFyIG49bC5layxwPWwubXIscT1wLm1hcChmdW5jdGlvbihOKXtyZXR1cm4gTi5pZH0pLHI9cC5tYXAoZnVuY3Rpb24oTil7cmV0dXJuIE4uZGVzdGluYXRpb25JZH0pLHQ9bi5tYXAoZnVuY3Rpb24oTil7cmV0dXJuIE4uaWR9KSx1PW0odGsoKSksdj11Lm5leHQoKTshdi5kb25lO3Y9CnUubmV4dCgpKXt2YXIgeD12LnZhbHVlO3IuaW5kZXhPZih4KTwwJiZ0LnB1c2goeCl9ZEIoZyxjKTtmb3IodmFyIHk9bSh0KSx6PXkubmV4dCgpOyF6LmRvbmU7ej15Lm5leHQoKSl7dmFyIEM9ei52YWx1ZSxEPUVkKGIsbnVsbCksST1FZChkLG51bGwpO2RlbGV0ZSBJW0YuRC5QZl07dmFyIEc9RC5ldmVudE1ldGFkYXRhfHx7fTtHLmhhc093blByb3BlcnR5KEguSi5hZSl8fChHW0guSi5hZV09IUQuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbik7R1tILkoubWpdPXEuc2xpY2UoKTtHW0guSi5zZ109ci5zbGljZSgpO0QuZXZlbnRNZXRhZGF0YT1HO1pDKGMsSSxDLEQpfWUuZXZlbnRNb2RlbD1lLmV2ZW50TW9kZWx8fHt9O3EubGVuZ3RoPjA/ZS5ldmVudE1vZGVsW0YuRC5YYl09cS5qb2luKCIsIik6ZGVsZXRlIGUuZXZlbnRNb2RlbFtGLkQuWGJdO2tELkh8fFAoNDMpO2Iubm9HdG1FdmVudD09PXZvaWQgMCYmYi5ldmVudE1ldGFkYXRhJiZiLmV2ZW50TWV0YWRhdGFbSC5KLkJuXSYmKGIubm9HdG1FdmVudD0KITApO2UuZXZlbnRNb2RlbFtGLkQuWWNdJiYoYi5ub0d0bUV2ZW50PSEwKTtyZXR1cm4gYi5ub0d0bUV2ZW50P3ZvaWQgMDplfX19LHpELmdldD1mdW5jdGlvbihhLGIpe1AoNTMpO2lmKGEubGVuZ3RoPT09NCYmemIoYVsxXSkmJnpiKGFbMl0pJiZ5YihhWzNdKSl7dmFyIGM9YkMoYVsxXSxiLmlzR3RtRXZlbnQpLGQ9U3RyaW5nKGFbMl0pLGU9YVszXTtpZihjKXtrRC5IfHxQKDQzKTt2YXIgZj1pRCgpO2lmKENiKHRrKCksZnVuY3Rpb24oaCl7cmV0dXJuIGMuZGVzdGluYXRpb25JZD09PWh9KSl7aEQoYSxiKTt2YXIgZz17fTtFZCgoZ1tGLkQuVGZdPWQsZ1tGLkQuU2ZdPWUsZyksbnVsbCk7JEMoZCxmdW5jdGlvbihoKXtiZChmdW5jdGlvbigpe2UoaCl9KX0sYy5pZCxiKX1lbHNlIG5BKGMuZGVzdGluYXRpb25JZCxmLHtzb3VyY2U6NCxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pfX19LHpELmpzPWZ1bmN0aW9uKGEsYil7dmFyIGM7aWYoYS5sZW5ndGg9PT0KMiYmYVsxXS5nZXRUaW1lKXtrRC5IPSEwO3ZhciBkPWhEKGEsYiksZT1kLmV2ZW50SWQsZj1kLnByaW9yaXR5SWQsZz17fTtjPShnLmV2ZW50PSJndG0uanMiLGdbImd0bS5zdGFydCJdPWFbMV0uZ2V0VGltZSgpLGdbImd0bS51bmlxdWVFdmVudElkIl09ZSxnWyJndG0ucHJpb3JpdHlJZCJdPWYsZyl9ZWxzZSBjPXZvaWQgMDtyZXR1cm4gY30sekQucG9saWN5PWZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoPT09MyYmemIoYVsxXSkmJnliKGFbMl0pKXtpZihoeShhWzFdLGFbMl0pLFAoNzQpLGFbMV09PT0iYWxsIil7UCg3NSk7dmFyIGI9ITE7dHJ5e2I9YVsyXShFKDUpLCJ1bmtub3duIix7fSl9Y2F0Y2goYyl7fWJ8fFAoNzYpfX1lbHNlIFAoNzMpfSx6RC5yZXNldF90YXJnZXRfY29uZmlnPWZ1bmN0aW9uKGEsYil7aWYoakQoYikmJmEubGVuZ3RoPT09MiYmemIoYVsxXSkpe3ZhciBjPWJDKGFbMV0sITApO2MmJmREKGMuaWQpfX0sekQuc2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9dm9pZCAwOwphLmxlbmd0aD09PTImJkNkKGFbMV0pP2M9RWQoYVsxXSxudWxsKTphLmxlbmd0aD09PTMmJnpiKGFbMV0pJiYoYz17fSxDZChhWzJdKXx8QXJyYXkuaXNBcnJheShhWzJdKT9jW2FbMV1dPUVkKGFbMl0sbnVsbCk6Y1thWzFdXT1hWzJdKTtpZihjKXtaaygzMSwhMCk7dmFyIGQ9aEQoYSxiKSxlPWQuZXZlbnRJZCxmPWQucHJpb3JpdHlJZDtFZChjLG51bGwpO0UoNSk7dmFyIGc9RWQoYyxudWxsKTtZQygpLkgucHVzaCgic2V0IixbZ10sdm9pZCAwLGIpO2NbImd0bS51bmlxdWVFdmVudElkIl09ZTtmJiYoY1siZ3RtLnByaW9yaXR5SWQiXT1mKTtkZWxldGUgYy5ldmVudDtiLm92ZXJ3cml0ZU1vZGVsRmllbGRzPSEwO3JldHVybiBjfX0sekQpLEJEPXt9LENEPShCRC5wb2xpY3k9ITAsQkQpO3ZhciBFRD1mdW5jdGlvbihhKXtpZihERChhKSlyZXR1cm4gYTt0aGlzLnZhbHVlPWF9O0VELnByb3RvdHlwZS5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07dmFyIEREPWZ1bmN0aW9uKGEpe3JldHVybiFhfHxBZChhKSE9PSJvYmplY3QifHxDZChhKT8hMToiZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlImluIGF9O0VELnByb3RvdHlwZS5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWU9RUQucHJvdG90eXBlLmdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZTt2YXIgRkQ9e0JiOiIxIixlZToiMiIsWGQ6IjMiLGNlOiI0Iix4ZjoiNSIscWc6IjYiLEtoOiI3Iix0ajoiOCIsbGk6IjkiLGpqOiIxMCJ9Owp2YXIgR0Q9ZnVuY3Rpb24oYSxiKXtpZihhKXt2YXIgYz1hLnRyaW0oKS5yZXBsYWNlQWxsKC9ccysvZywiIikucmVwbGFjZUFsbCgvKFxkezIsfSlcLi9nLCIkMSIpLnJlcGxhY2VBbGwoLy0vZywiIikucmVwbGFjZUFsbCgvXCgoXGQrKVwpL2csIiQxIik7aWYoYiYmYy5tYXRjaCgvXlwrP1xkezMsNH0kLykpcmV0dXJuIGM7Yy5jaGFyQXQoMCkhPT0iKyImJihjPSIrIitjKTtpZihjLm1hdGNoKG5ldyBSZWdFeHAoIl5cXCtcXGR7IisoTSg1OTcpPzc6MTApKyIsMTV9JCIpKSlyZXR1cm4gY319LElEPWZ1bmN0aW9uKGEpe2lmKGEpe3ZhciBiPWEudHJpbSgpO2lmKEhELnRlc3QoYikpcmV0dXJuIGIudG9Mb3dlckNhc2UoKS5yZXBsYWNlQWxsKC9bLSBdKy9nLCIiKX19LE1EPWZ1bmN0aW9uKGEpe3ZhciBiPUpEKEtEKShhKTtpZihiJiYhTEQoYikpcmV0dXJuIGJ9LExEPWZ1bmN0aW9uKGEpe2lmKCFBLmxvY2F0aW9uKXJldHVybiExO3ZhciBiPU5qKEEubG9jYXRpb24sImhvc3QiLCEwKSwKYztpZihNKDYwMikpYTp7Zm9yKHZhciBkPWIuc3BsaXQoIi4iKSxlPWEudG9Mb3dlckNhc2UoKSxmPTA7ZjxkLmxlbmd0aC0xO2YrKyl7dmFyIGc9ZC5zbGljZShmKS5qb2luKCIuIik7aWYoZS5tYXRjaCgiQCIrZysiJCIpKXtjPSEwO2JyZWFrIGF9fWM9ITF9ZWxzZSBjPWEudG9Mb3dlckNhc2UoKS5pbmRleE9mKGIpPj0wO3JldHVybiBjfSxKRD1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYil7dmFyIGM9Yi5tYXRjaChhKTtyZXR1cm4gYz9jWzBdLnRyaW0oKS50b0xvd2VyQ2FzZSgpOnZvaWQgMH19LEtEPS9bQS1aMC05Ll8lKy1dK0BbQS1aMC05Li1dK1wuW0EtWl17Mix9L2ksTkQ9SkQoL14oW15ceDAwLVx4NDBceDViLVx4NjBceDdiLVx4ZmZdfFsuLV18XHMpKyQvKSxIRD1SZWdFeHAoIl4oPzpbQS1aXXsxLDJ9XFxkW0EtWlxcZF0/WyAtXT9cXGRbQS1aXXsyfXxbQS1aXVxcZFtBLVpdWyAtXT9cXGRbQS1aXVxcZHxcXGR7NH0gP1tBLVpdezJ9fFtBLVpdXFxkezR9W0EtWl17M318XFxkezV9KD86LVxcZHs0fSk/fFxcZHs1fS1cXGR7M318XFxkezR9LVxcZHszfXxcXGR7M30tXFxkezR9fFxcZHsyfS1cXGR7M318XFxkezN9ID9cXGR7Mn18XFxkezQsN30pJCIsCiJpIiksT0Q9SkQoL14oW15ceDAwLVx4NDBceDViLVx4NjBceDdiLVx4ZmZdfFsuLV18XHN8XGQpKyQvKTsKdmFyIFBEPWZ1bmN0aW9uKCl7dmFyIGE9U3RyaW5nKGFsKDMzLGZ1bmN0aW9uKCl7cmV0dXJuIDB9KSk7YS5pbmRleE9mKCIuIikhPT0tMSYmKGE9YS5zdWJzdHJpbmcoMCxhLmluZGV4T2YoIi4iKSszKSk7dmFyIGI9YWwoMzQsZnVuY3Rpb24oKXtyZXR1cm4gMH0pO3JldHVybnt2dDpOdW1iZXIoYSksc3Q6Yn19LFFEPWZ1bmN0aW9uKCl7cmV0dXJuIGFsKDMyLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KX0sU0Q9ZnVuY3Rpb24oYSl7dmFyIGI9cGQoKXx8MCxjPVtGRC5CYl07TSg1NjgpJiZjLnB1c2goRkQuZWUsRkQuWGQsRkQuY2UsRkQueGYsRkQucWcsRkQudGosRkQubGksRkQuamopO2Zvcih2YXIgZD1SRChhLG5ldyBTZXQoYykpLGU9YWwoMzIsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE1hcH0pLGY9bShkKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtlLnNldChoLkRhLGgpfXZhciBsPShwZCgpfHwwKS1iLG49YWwoMzMsZnVuY3Rpb24oKXtyZXR1cm4gMH0pOwpaaygzMyxuK2wpO3ZhciBwPWFsKDM0LGZ1bmN0aW9uKCl7cmV0dXJuIDB9KTtaaygzNCxwKzEpfSxSRD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1OZigzNiwyKSxkPVtdLGU9W3tvbzphLGRlcHRoOjB9XTtlLmxlbmd0aD4wOylmb3IodmFyIGY9ZS5zaGlmdCgpLGc9Zi5vbyxoPWYuZGVwdGgsbD1tKE9iamVjdC5rZXlzKGcpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtpZighVEQuaGFzKHApKXt2YXIgcT1nW3BdO2lmKHEpaWYoQ2QocSkpaCsxPD1jJiZlLnB1c2goe29vOnEsZGVwdGg6aCsxfSk7ZWxzZXtmb3IodmFyIHI9bShiKSx0PXIubmV4dCgpOyF0LmRvbmU7dD1yLm5leHQoKSl7dmFyIHU9dC52YWx1ZSx2PVVEW3VdO2lmKHYmJnYuS2MudGVzdChwKSl7dmFyIHg9di5uYShTdHJpbmcocSkpO2lmKHgpe2QucHVzaCh7Q2E6eCxEYTp1fSk7Yi5kZWxldGUodSk7YnJlYWt9fX1pZihiLnNpemU9PT0wKXJldHVybiBkfX19cmV0dXJuIGR9LFREPQpuZXcgU2V0KFsiaXRlbXMiLCJlY29tbWVyY2UiXSksVkQ9UmVnRXhwKCJwaG9uZSIsImkiKSxXRD1SZWdFeHAoImZpcnN0Xz9uYW1lIiwiaSIpLFhEPVJlZ0V4cCgibGFzdF8/bmFtZSIsImkiKSxZRD1SZWdFeHAoImNvdW50cnkiLCJpIiksWkQ9UmVnRXhwKCJwb3N0fHppcCIsImkiKSwkRD1SZWdFeHAoImFkZHJlc3N8c3RyZWV0IiwiaSIpLGFFPVJlZ0V4cCgiY2l0eSIsImkiKSxiRT1SZWdFeHAoInJlZ2lvbnxzdGF0ZXxwcm92aW5jZSIsImkiKSxjRT17fSxVRD0oY0VbRkQuQmJdPXtLYzpSZWdFeHAoImVtYWlsIiwiaSIpLG5hOk1EfSxjRVtGRC5lZV09e0tjOlZELG5hOmZ1bmN0aW9uKGEpe3JldHVybiBHRChhLCExKX19LGNFW0ZELlhkXT17S2M6V0QsbmE6TkR9LGNFW0ZELmNlXT17S2M6WEQsbmE6TkR9LGNFW0ZELnRqXT17S2M6JEQsbmE6T0R9LGNFW0ZELmxpXT17S2M6YUUsbmE6TkR9LGNFW0ZELmpqXT17S2M6YkUsbmE6TkR9LGNFW0ZELnFnXT17S2M6WkQsbmE6SUR9LGNFW0ZELnhmXT0Ke0tjOllELG5hOk5EfSxjRSk7dmFyIGRFPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLmxvYWRlZD0hMTt0aGlzLkg9W107aWYoQi5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIil0aGlzLm9uTG9hZCgpO2Vsc2UgJGMoQSwibG9hZCIsZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBhLm9uTG9hZCgpfSl9O2RFLnByb3RvdHlwZS5vbkxvYWQ9ZnVuY3Rpb24oKXtpZighdGhpcy5sb2FkZWQpe3RoaXMubG9hZGVkPSEwO2Zvcih2YXIgYT0wO2E8dGhpcy5ILmxlbmd0aDthKyspYmQodGhpcy5IW2FdKX19O3ZhciBmRT1mdW5jdGlvbihhKXt2YXIgYj1lRTtiLmxvYWRlZD9iZChhKTpiLkgucHVzaChhKX0sZUU9bmV3IGRFO3ZhciBnRT1mdW5jdGlvbigpe3RoaXMuWj0wO3RoaXMuSz17fTt0aGlzLkg9W107dGhpcy5OPVtdO3RoaXMuZmE9dGhpcy5SPXRoaXMuamE9ITF9LGlFPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1oRTthLmV2ZW50Q2FsbGJhY2s9YjtjJiYoYS5ldmVudFRpbWVvdXQ9Yyk7cmV0dXJuIGQucHVzaChhKX0sakU9ZnVuY3Rpb24oYSxiKXtpZighQWIoYil8fGI8MCliPTA7dmFyIGM9cWooKSxkPTAsZT0hMSxmPXZvaWQgMDtmPUEuc2V0VGltZW91dChmdW5jdGlvbigpe2V8fChlPSEwLGEoKSk7Zj12b2lkIDB9LGIpO3JldHVybiBmdW5jdGlvbigpe3ZhciBnPWM/Yy5zdWJzY3JpYmVyczoxOysrZD09PWcmJihmJiYoQS5jbGVhclRpbWVvdXQoZiksZj12b2lkIDApLGV8fChhKCksZT0hMCkpfX0sbEU9ZnVuY3Rpb24oYSl7dmFyIGI7aWYoYS5OLmxlbmd0aCliPWEuTi5zaGlmdCgpO2Vsc2UgaWYoYS5ILmxlbmd0aCliPWEuSC5zaGlmdCgpO2Vsc2UgcmV0dXJuO3ZhciBjO3ZhciBkPWI7aWYoYS5qYXx8CiFrRShkLm1lc3NhZ2UpKWM9ZDtlbHNle2EuamE9ITA7dmFyIGU9ZC5tZXNzYWdlWyJndG0udW5pcXVlRXZlbnRJZCJdLGYsZzt0eXBlb2YgZT09PSJudW1iZXIiPyhmPWUtMixnPWUtMSk6KGY9cmooKSxnPXJqKCksZC5tZXNzYWdlWyJndG0udW5pcXVlRXZlbnRJZCJdPXJqKCkpO3ZhciBoPXt9LGw9e21lc3NhZ2U6KGguZXZlbnQ9Imd0bS5pbml0X2NvbnNlbnQiLGhbImd0bS51bmlxdWVFdmVudElkIl09ZixoKSxtZXNzYWdlQ29udGV4dDp7ZXZlbnRJZDpmfX0sbj17fSxwPXttZXNzYWdlOihuLmV2ZW50PSJndG0uaW5pdCIsblsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1nLG4pLG1lc3NhZ2VDb250ZXh0OntldmVudElkOmd9fTthLkgudW5zaGlmdChwLGQpO2M9bH1yZXR1cm4gY30sb0U9ZnVuY3Rpb24oYSl7YS5mYXx8UCgxOTYpO2Zvcih2YXIgYj0hMSxjOyFhLlImJihjPWxFKGEpKTspe2EuUj0hMDt2YXIgZD1yQTtkZWxldGUgZC5ILmV2ZW50TW9kZWw7b0EoZCk7dmFyIGU9YyxmPQplLm1lc3NhZ2UsZz1lLm1lc3NhZ2VDb250ZXh0O2lmKGY9PW51bGwpYS5SPSExO2Vsc2V7Zy5mcm9tQ29udGFpbmVyRXhlY3V0aW9uJiZzQSgpO3RyeXtpZih5YihmKSl0cnl7Zi5jYWxsKHRBKX1jYXRjaChTKXt9ZWxzZSBpZihBcnJheS5pc0FycmF5KGYpKXtpZih6YihmWzBdKSl7dmFyIGg9ZlswXS5zcGxpdCgiLiIpLGw9aC5wb3AoKSxuPWYuc2xpY2UoMSkscD11QShoLmpvaW4oIi4iKSwyKTtpZihwIT1udWxsKXRyeXtwW2xdLmFwcGx5KHAsbil9Y2F0Y2goUyl7fX19ZWxzZXt2YXIgcT12b2lkIDA7aWYoSGIoZikpYTp7aWYoZi5sZW5ndGgmJnpiKGZbMF0pKXt2YXIgcj1BRFtmWzBdXTtpZihyJiYoIWcuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbnx8IUNEW2ZbMF1dKSl7cT1yKGYsZyk7YnJlYWsgYX19cT12b2lkIDB9ZWxzZSBxPWY7aWYocSl7dmFyIHQ7Zm9yKHZhciB1PXEsdj11Ll9jbGVhcnx8Zy5vdmVyd3JpdGVNb2RlbEZpZWxkcyx4PW0oT2JqZWN0LmtleXModSkpLHk9eC5uZXh0KCk7IXkuZG9uZTt5PQp4Lm5leHQoKSl7dmFyIHo9eS52YWx1ZTt6IT09Il9jbGVhciImJih2JiZyQS5zZXQoeix2b2lkIDApLHJBLnNldCh6LHVbel0pKX1NKDU5MikmJlNEKHUpOyRrKDI1KXx8WmsoMjUsdVsiZ3RtLnN0YXJ0Il0pO3ZhciBDPXVbImd0bS51bmlxdWVFdmVudElkIl07dS5ldmVudD8odHlwZW9mIEMhPT0ibnVtYmVyIiYmKEM9cmooKSx1WyJndG0udW5pcXVlRXZlbnRJZCJdPUMsckEuc2V0KCJndG0udW5pcXVlRXZlbnRJZCIsQykpLHQ9ekIodSkpOnQ9ITE7Yj10fHxifX19ZmluYWxseXtnLmZyb21Db250YWluZXJFeGVjdXRpb24mJm9BKHJBLCEwKTt2YXIgRD1mWyJndG0udW5pcXVlRXZlbnRJZCJdO2lmKHR5cGVvZiBEPT09Im51bWJlciIpe2Zvcih2YXIgST1hLEc9SS5LW1N0cmluZyhEKV18fFtdLE49MDtOPEcubGVuZ3RoO04rKylJLk4ucHVzaChtRShHW05dKSk7Ry5sZW5ndGgmJkkuTi5zb3J0KG5FKTtkZWxldGUgSS5LW1N0cmluZyhEKV07RD5hLlomJihhLlo9RCl9YS5SPSExfX19cmV0dXJuIWJ9LApwRT1mdW5jdGlvbigpe3ZhciBhPWhFO2EuZmEmJlAoMTk1KTthLmZhPSEwO2lmKGZuLkgpe3ZhciBiPSFJZig1MSksYz1yeigpO3B6KGMse3N0YWdlOkl5LlguWmd9KTtpZihiKXt2YXIgZD1xeihjLHtzdGFnZTpJeS5YLllrfSxJeS5YLm5pKTtkIT09dm9pZCAwJiYoYy5ILlk9ZCl9dmFyIGU9YS5ILmxlbmd0aDtyeigpLkguQz1lfW9FKGEpO2lmKGZuLkgpe3ZhciBmPXJ6KCksZz1xeihmLHtzdGFnZTpJeS5YLlZrfSxJeS5YLlpnKTtnIT09dm9pZCAwJiYoZi5ILkI9Zyl9dHJ5e3ZhciBoPUFbRSgxOSldLGw9RSg1KSxuPWguaGlkZTtpZihuJiZuW2xdIT09dm9pZCAwJiZuLmVuZCl7bltsXT0hMTt2YXIgcD0hMCxxO2ZvcihxIGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eShxKSYmbltxXT09PSEwKXtwPSExO2JyZWFrfXAmJihuLmVuZCgpLG4uZW5kPW51bGwpfX1jYXRjaChyKXtFKDUpfX0scUU9ZnVuY3Rpb24oYSxiKXtpZihhLlo8Yi5ub3RCZWZvcmVFdmVudElkKXt2YXIgYz1TdHJpbmcoYi5ub3RCZWZvcmVFdmVudElkKTsKYS5LW2NdPWEuS1tjXXx8W107YS5LW2NdLnB1c2goYil9ZWxzZXthLk4ucHVzaChtRShiKSk7YS5OLnNvcnQobkUpO3ZhciBkPWZ1bmN0aW9uKCl7YS5SfHxvRShhKX07TSg1ODApP2RkKGQpOmJkKGQpfX07CmdFLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShoKXt2YXIgbD17fTtpZihERChoKSl7dmFyIG49aDtoPUREKG4pP24uZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlKCk6dm9pZCAwO2wuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbj0hMH1yZXR1cm57bWVzc2FnZTpoLG1lc3NhZ2VDb250ZXh0Omx9fXZhciBiPXRoaXMsYz1NYyhFKDE5KSxbXSksZD1waigpO2QucHJ1bmVkPT09ITAmJlAoODMpO3RoaXMuSz1uRCgpLmdldCgpO25EKCkubGlzdGVuKGZ1bmN0aW9uKGgpe3FFKGIsaCl9KTtkLnN1YnNjcmliZXJzPShkLnN1YnNjcmliZXJzfHwwKSsxO3ZhciBlPWMucHVzaCxmPXRoaXM7Yy5wdXNoPWZ1bmN0aW9uKCl7dmFyIGg7bGooKTtpZihqai5ILlNBTkRCT1hFRF9KU19TRU1BUEhPUkU+MCl7aD1bXTtmb3IodmFyIGw9MDtsPGFyZ3VtZW50cy5sZW5ndGg7bCsrKWhbbF09bmV3IEVEKGFyZ3VtZW50c1tsXSl9ZWxzZSBoPVtdLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApOwp2YXIgbj1oLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gYSh0KX0pO2YuSC5wdXNoLmFwcGx5KGYuSCxuKTt2YXIgcD1lLmFwcGx5KGMsaCkscT1NYXRoLm1heCgxMDAsTmYoMSwzMDApKTtpZih0aGlzLmxlbmd0aD5xKWZvcihQKDQpLGQucHJ1bmVkPSEwO3RoaXMubGVuZ3RoPnE7KXRoaXMuc2hpZnQoKTt2YXIgcj10eXBlb2YgcCE9PSJib29sZWFuInx8cDtyZXR1cm4gb0UoZikmJnJ9O3ZhciBnPWMuc2xpY2UoMCkubWFwKGZ1bmN0aW9uKGgpe3JldHVybiBhKGgpfSk7dGhpcy5ILnB1c2guYXBwbHkodGhpcy5ILGcpO0lmKDUxKXx8KGZuLkgmJnV6KCksYmQockUpKTtWQihmdW5jdGlvbigpe2lmKCFkLmd0bURvbSl7ZC5ndG1Eb209ITA7dmFyIGg9e307Yy5wdXNoKChoLmV2ZW50PSJndG0uZG9tIixoKSl9fSk7ZkUoZnVuY3Rpb24oKXtpZighZC5ndG1Mb2FkKXtkLmd0bUxvYWQ9ITA7dmFyIGg9e307Yy5wdXNoKChoLmV2ZW50PSJndG0ubG9hZCIsaCkpfX0pfTsKZ0UucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24oYSl7cmV0dXJuIEFbRSgxOSldLnB1c2goYSl9O3ZhciBoRT1uZXcgZ0U7ZnVuY3Rpb24gbkUoYSxiKXt2YXIgYz1hLm1lc3NhZ2VDb250ZXh0LGQ9Yi5tZXNzYWdlQ29udGV4dDtpZihjLmV2ZW50SWQhPT1kLmV2ZW50SWQpcmV0dXJuIGMuZXZlbnRJZC1kLmV2ZW50SWQ7aWYoIU0oNTk1KSlyZXR1cm4gYy5wcmlvcml0eUlkLWQucHJpb3JpdHlJZDt2YXIgZSxmLGc7YTp7Zm9yKHZhciBoPShlPWMucHJpb3JpdHlRdWV1ZSkhPW51bGw/ZTpbYy5wcmlvcml0eUlkXSxsPShmPWQucHJpb3JpdHlRdWV1ZSkhPW51bGw/ZjpbZC5wcmlvcml0eUlkXSxuPU1hdGgubWluKGgubGVuZ3RoLGwubGVuZ3RoKSxwPTA7cDxuO3ArKylpZihoW3BdIT09bFtwXSl7Zz1oW3BdLWxbcF07YnJlYWsgYX1nPWgubGVuZ3RoLWwubGVuZ3RofXJldHVybiBnfQpmdW5jdGlvbiBrRShhKXtpZihhPT1udWxsfHx0eXBlb2YgYSE9PSJvYmplY3QiKXJldHVybiExO2lmKGEuZXZlbnQpcmV0dXJuITA7aWYoSGIoYSkpe3ZhciBiPWFbMF07aWYoYj09PSJjb25maWcifHxiPT09ImV2ZW50Inx8Yj09PSJqcyJ8fGI9PT0iZ2V0IilyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBtRShhKXtyZXR1cm57bWVzc2FnZTphLm1lc3NhZ2UsbWVzc2FnZUNvbnRleHQ6YS5tZXNzYWdlQ29udGV4dH19ZnVuY3Rpb24gc0UoYSxiLGMpe3JldHVybiBpRShhLGIsYyl9ZnVuY3Rpb24gdEUoYSxiKXtyZXR1cm4gakUoYSxiKX1mdW5jdGlvbiByRSgpe3BFKCl9ZnVuY3Rpb24gdUUoYSl7cmV0dXJuIGhFLnB1c2goYSl9O3ZhciB2RT1mdW5jdGlvbigpe307dkUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYSxiPVJqKEEubG9jYXRpb24uaHJlZik7KGE9Yi5ob3N0bmFtZStiLnBhdGhuYW1lKSYmVW0oImRsIixlbmNvZGVVUklDb21wb25lbnQoYSkpO3ZhciBjO3ZhciBkPUUoNSk7aWYoZCl7dmFyIGU9SWYoNyk/MTowLGY9RmsoKSxnPWYmJmYuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbj8xOjAsaD1mJiZmLnNvdXJjZXx8MCxsPUUoNik7Yz1kKyI7IitsKyI7IitnKyI7IitoKyI7IitlfWVsc2UgYz12b2lkIDA7dmFyIG49YztuJiZVbSgidGRwIixuKTt2YXIgcD1PcCghMCk7cCE9PXZvaWQgMCYmVW0oImZybSIsU3RyaW5nKHApKX07dmFyIHdFPW5ldyB2RTt2YXIgeEU9ZnVuY3Rpb24oKXt0aGlzLkg9WG0oKTt0aGlzLks9dm9pZCAwfSx5RT1mdW5jdGlvbihhLGIpe3JldHVybiBabShhLGZ1bmN0aW9uKGMpe3JldHVybiBjLmpiPjA/Yj9jLmpiKyJfIitXbShjKTpTdHJpbmcoYy5qYik6dm9pZCAwfSl9Owp4RS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe3ZhciBhPXRoaXM7aWYocGwoKXx8Zm4uSylVbSgiY3NwIixmdW5jdGlvbigpe3ZhciBiPXlFKGEuSCwhMCk7JG0oYS5IKTtyZXR1cm4gYn0sITEpLFVtKCJtZGUiLGZ1bmN0aW9uKCl7dmFyIGI9Y24uSCxjPXlFKGIsITEpOyRtKGIpO3JldHVybiBjfSwhMSksQS5hZGRFdmVudExpc3RlbmVyKCJzZWN1cml0eXBvbGljeXZpb2xhdGlvbiIsZnVuY3Rpb24oYil7aWYoYi5kaXNwb3NpdGlvbj09PSJlbmZvcmNlIil7UCgxNzkpO3ZhciBjPW5uKGIuZWZmZWN0aXZlRGlyZWN0aXZlKTtpZihjKXt2YXIgZDthOnt2YXIgZT1iLmJsb2NrZWRVUkksZj1rbjtpZihmbi5LJiZlKXt2YXIgZz1qbihjLGUpO2lmKGcpe3ZhciBoO2Q9KGg9bG4oZixjKSk9PW51bGw/dm9pZCAwOmhbZ107YnJlYWsgYX19ZD12b2lkIDB9dmFyIGw9ZDtpZihsKXt2YXIgbjthOnt0cnl7dmFyIHA9bmV3IFVSTChiLmJsb2NrZWRVUkkpLHE9cC5wYXRobmFtZS5pbmRleE9mKCI7Iik7Cm49cT49MD9wLm9yaWdpbitwLnBhdGhuYW1lLnN1YnN0cmluZygwLHEpOnAub3JpZ2luK3AucGF0aG5hbWU7YnJlYWsgYX1jYXRjaChEKXt9bj12b2lkIDB9dmFyIHI9bjtpZihyKXtmb3IodmFyIHQ9bShsKSx1PXQubmV4dCgpOyF1LmRvbmU7dT10Lm5leHQoKSl7dmFyIHY9dS52YWx1ZTtpZighdi5Fbyl7di5Fbz0hMDt2YXIgeD17ZXZlbnRJZDp2LmV2ZW50SWQscHJpb3JpdHlJZDp2LnByaW9yaXR5SWR9O2lmKHBsKCkpe3ZhciB5PXgsej17dHlwZToxLGJsb2NrZWRVcmw6cixlbmRwb2ludDp2LmVuZHBvaW50LHZpb2xhdGlvbjpiLmVmZmVjdGl2ZURpcmVjdGl2ZX07aWYocGwoKSl7dmFyIEM9TGwoIlRBR19ESUFHTk9TVElDUyIse2V2ZW50SWQ6eT09bnVsbD92b2lkIDA6eS5ldmVudElkLHByaW9yaXR5SWQ6eT09bnVsbD92b2lkIDA6eS5wcmlvcml0eUlkfSk7Qy50YWdEaWFnbm9zdGljcz16O29sKEMpfX16RShhLHYuZGVzdGluYXRpb25JZCx2LmVuZHBvaW50LGMpfX1tbihjLApiLmJsb2NrZWRVUkkpfX19fX0pfTt2YXIgekU9ZnVuY3Rpb24oYSxiLGMsZCl7YW4oYS5ILGIsYywxLGQpO1ZtKCJjc3AiLCEwKTtWbSgibWRlIiwhMCk7YyE9PTYxJiZjIT09NTYmJmEuSz09PXZvaWQgMCYmKGEuSz1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXthLkguamI+MCYmdG8oITEpO2EuSz12b2lkIDB9LDUwMCkpfSxBRT1uZXcgeEU7dmFyIEJFPWZ1bmN0aW9uKCl7dGhpcy5zZXF1ZW5jZU51bWJlcj0wfTtCRS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe3ZhciBhPXRoaXM7Q0UodGhpcyk7SWYoNjUpJiZVbSgibXRibCIsIjEiKTtVbSgidiIsIjMiKTtVbSgidCIsInQiKTtVbSgicGlkIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcobm0oam0uYmEuYmgpKX0pO1VtKCJndG0iLGZ1bmN0aW9uKCl7cmV0dXJuIGR1KCl9KTtVbSgic2VxIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcoKythLnNlcXVlbmNlTnVtYmVyKX0pO1VtKCJleHAiLGZ1bmN0aW9uKCl7cmV0dXJuIENwKCl9KX07dmFyIENFPWZ1bmN0aW9uKGEpe2lmKG5tKGptLmJhLmJoKT09PXZvaWQgMCl7dmFyIGI9ZnVuY3Rpb24oKXttbShqbS5iYS5iaCxEYigpKTthLnNlcXVlbmNlTnVtYmVyPTB9O2IoKTtjZChiLDg2NEU1KX1lbHNlIHBtKGptLmJhLmJoLGZ1bmN0aW9uKCl7YS5zZXF1ZW5jZU51bWJlcj0wfSk7YS5zZXF1ZW5jZU51bWJlcj0wfSxERT1uZXcgQkU7ZnVuY3Rpb24gRUUoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEFbYV19fQp2YXIgRkU9e30sR0U9KEZFWzE0XT1mdW5jdGlvbigpe3ZhciBhO3JldHVybihhPUEuY3J5cHRvKT09bnVsbD92b2lkIDA6YS5nZXRSYW5kb21WYWx1ZXN9LEZFWzE1XT1mdW5jdGlvbigpe3ZhciBhLGI7cmV0dXJuKGE9QS5jcnlwdG8pPT1udWxsP3ZvaWQgMDooYj1hLnN1YnRsZSk9PW51bGw/dm9pZCAwOmIuZGlnZXN0fSxGRVsxXT1FRSgiZmV0Y2giKSxGRVs2XT1FRSgiTWFwIiksRkVbMl09ZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb219LEZFWzhdPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIil9LEZFWzldPWZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5lbnRyaWVzfSxGRVsxMF09ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzfSxGRVs1XT1FRSgiUHJvbWlzZSIpLEZFWzEzXT1FRSgiUmVnRXhwIiksRkVbM109ZnVuY3Rpb24oKXtyZXR1cm4gSGMuc2VuZEJlYWNvbn0sRkVbN109RUUoIlNldCIpLEZFWzEyXT1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcucHJvdG90eXBlLmVuZHNXaXRofSwKRkVbMTFdPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aH0sRkVbNF09RUUoIlhNTEh0dHBSZXF1ZXN0IiksRkUpLEhFPXt9LElFPShIRVsxNV09ITAsSEUpO3ZhciBORT0vXihodHRwcz86KT9cL1wvLzsKCmZ1bmN0aW9uIGhGKCl7fTtmdW5jdGlvbiBpRigpe0lmKDYyKSYmKGh5KCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiLGZ1bmN0aW9uKGEsYixjKXt2YXIgZDtyZXR1cm4oKGQ9Yy5vcHRpb25zKT09bnVsbD92b2lkIDA6ZC53YWl0Rm9yVGFncykhPT0hMH0pLGh5KCJkZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzIixmdW5jdGlvbihhLGIsYyl7dmFyIGQ7cmV0dXJuKChkPWMub3B0aW9ucyk9PW51bGw/dm9pZCAwOmQud2FpdEZvclRhZ3MpIT09ITB9KSxoeSgiZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzIixmdW5jdGlvbihhLGIsYyl7dmFyIGQ7cmV0dXJuKChkPWMub3B0aW9ucyk9PW51bGw/dm9pZCAwOmQuZml4TWlzc2luZ0FwaSkhPT0hMH0pKX07dmFyIGpGPWZ1bmN0aW9uKCl7dGhpcy5IPXRoaXMuZ3BwU3RyaW5nPXZvaWQgMH07akYucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5IPXRoaXMuZ3BwU3RyaW5nPXZvaWQgMH07dmFyIGtGPW5ldyBqRjtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO2x0KHtHdTowLEZ1OjEsQ3U6Mix4dTozLER1OjQseXU6NSxFdTo2LEF1OjcsQnU6OCx3dTo5LHp1OjEwLEh1OjExfSkubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBOdW1iZXIoYSl9KTtsdCh7SnU6MCxLdToxLEl1OjJ9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJuIE51bWJlcihhKX0pO3ZhciBsRj1mdW5jdGlvbihhLGIsYyxkKXtydC5jYWxsKHRoaXMpO3RoaXMuZmU9Yjt0aGlzLmtkPWM7dGhpcy5hYz1kO3RoaXMuTGE9bmV3IE1hcDt0aGlzLmhlPTA7dGhpcy5qYT1uZXcgTWFwO3RoaXMueWE9bmV3IE1hcDt0aGlzLlo9dm9pZCAwO3RoaXMuSz1hfTt3YShsRixydCk7bEYucHJvdG90eXBlLk49ZnVuY3Rpb24oKXtkZWxldGUgdGhpcy5IO3RoaXMuTGEuY2xlYXIoKTt0aGlzLmphLmNsZWFyKCk7dGhpcy55YS5jbGVhcigpO3RoaXMuWiYmKG50KHRoaXMuSywibWVzc2FnZSIsdGhpcy5aKSxkZWxldGUgdGhpcy5aKTtkZWxldGUgdGhpcy5LO2RlbGV0ZSB0aGlzLmFjO3J0LnByb3RvdHlwZS5OLmNhbGwodGhpcyl9Owp2YXIgbUY9ZnVuY3Rpb24oYSl7aWYoYS5IKXJldHVybiBhLkg7YS5rZCYmYS5rZChhLkspP2EuSD1hLks6YS5IPU5wKGEuSyxhLmZlKTt2YXIgYjtyZXR1cm4oYj1hLkgpIT1udWxsP2I6bnVsbH0sb0Y9ZnVuY3Rpb24oYSxiLGMpe2lmKG1GKGEpKWlmKGEuSD09PWEuSyl7dmFyIGQ9YS5MYS5nZXQoYik7ZCYmZChhLkgsYyl9ZWxzZXt2YXIgZT1hLmphLmdldChiKTtpZihlJiZlLmRrKXtuRihhKTt2YXIgZj0rK2EuaGU7YS55YS5zZXQoZix7cGU6ZS5wZSxJcjplLm5vKGMpLHBlcnNpc3RlbnQ6Yj09PSJhZGRFdmVudExpc3RlbmVyIn0pO2EuSC5wb3N0TWVzc2FnZShlLmRrKGMsZiksIioiKX19fSxuRj1mdW5jdGlvbihhKXthLlp8fChhLlo9ZnVuY3Rpb24oYil7aWYoYi5zb3VyY2U9PT1hLkgpdHJ5e3ZhciBjO2M9YS5hYz9hLmFjKGIpOnZvaWQgMDtpZihjKXt2YXIgZD1jLllzLGU9YS55YS5nZXQoZCk7aWYoZSl7ZS5wZXJzaXN0ZW50fHxhLnlhLmRlbGV0ZShkKTt2YXIgZjsoZj0KZS5wZSk9PW51bGx8fGYuY2FsbChlLGUuSXIsYy5wYXlsb2FkKX19fWNhdGNoKGcpe319LG10KGEuSywibWVzc2FnZSIsYS5aKSl9O3ZhciBwRj1mdW5jdGlvbihhLGIpe3ZhciBjPWIubGlzdGVuZXIsZD0oMCxhLl9fZ3BwKSgiYWRkRXZlbnRMaXN0ZW5lciIsYyk7ZCYmYyhkLCEwKX0scUY9ZnVuY3Rpb24oYSxiKXsoMCxhLl9fZ3BwKSgicmVtb3ZlRXZlbnRMaXN0ZW5lciIsYi5saXN0ZW5lcixiLmxpc3RlbmVySWQpfSxyRj17bm86ZnVuY3Rpb24oYSl7cmV0dXJuIGEubGlzdGVuZXJ9LGRrOmZ1bmN0aW9uKGEsYil7dmFyIGM9e307cmV0dXJuIGMuX19ncHBDYWxsPXtjYWxsSWQ6Yixjb21tYW5kOiJhZGRFdmVudExpc3RlbmVyIix2ZXJzaW9uOiIxLjEifSxjfSxwZTpmdW5jdGlvbihhLGIpe3ZhciBjPWIuX19ncHBSZXR1cm47YShjLnJldHVyblZhbHVlLGMuc3VjY2Vzcyl9fSxzRj17bm86ZnVuY3Rpb24oYSl7cmV0dXJuIGEubGlzdGVuZXJ9LGRrOmZ1bmN0aW9uKGEsYil7dmFyIGM9e307cmV0dXJuIGMuX19ncHBDYWxsPXtjYWxsSWQ6Yixjb21tYW5kOiJyZW1vdmVFdmVudExpc3RlbmVyIix2ZXJzaW9uOiIxLjEiLApwYXJhbWV0ZXI6YS5saXN0ZW5lcklkfSxjfSxwZTpmdW5jdGlvbihhLGIpe3ZhciBjPWIuX19ncHBSZXR1cm4sZD1jLnJldHVyblZhbHVlLmRhdGE7YT09bnVsbHx8YShkLGMuc3VjY2Vzcyl9fTtmdW5jdGlvbiB0RihhKXt2YXIgYj17fTt2ZihhLmRhdGEpP2I9SlNPTi5wYXJzZShhLmRhdGEpOmI9YS5kYXRhO3JldHVybntwYXlsb2FkOmIsWXM6Yi5fX2dwcFJldHVybi5jYWxsSWR9fQp2YXIgdUY9ZnVuY3Rpb24oYSxiKXt2YXIgYztjPShiPT09dm9pZCAwP3t9OmIpLnRpbWVvdXRNcztydC5jYWxsKHRoaXMpO3RoaXMuY2FsbGVyPW5ldyBsRihhLCJfX2dwcExvY2F0b3IiLGZ1bmN0aW9uKGQpe3JldHVybiB0eXBlb2YgZC5fX2dwcD09PSJmdW5jdGlvbiJ9LHRGKTt0aGlzLmNhbGxlci5MYS5zZXQoImFkZEV2ZW50TGlzdGVuZXIiLHBGKTt0aGlzLmNhbGxlci5qYS5zZXQoImFkZEV2ZW50TGlzdGVuZXIiLHJGKTt0aGlzLmNhbGxlci5MYS5zZXQoInJlbW92ZUV2ZW50TGlzdGVuZXIiLHFGKTt0aGlzLmNhbGxlci5qYS5zZXQoInJlbW92ZUV2ZW50TGlzdGVuZXIiLHNGKTt0aGlzLnRpbWVvdXRNcz1jIT1udWxsP2M6NTAwfTt3YSh1RixydCk7dUYucHJvdG90eXBlLk49ZnVuY3Rpb24oKXt0aGlzLmNhbGxlci5kaXNwb3NlKCk7cnQucHJvdG90eXBlLk4uY2FsbCh0aGlzKX07CnVGLnByb3RvdHlwZS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1IcChmdW5jdGlvbigpe2EodkYsITApfSksZD10aGlzLnRpbWVvdXRNcz09PS0xP3ZvaWQgMDpzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YygpfSx0aGlzLnRpbWVvdXRNcyk7b0YodGhpcy5jYWxsZXIsImFkZEV2ZW50TGlzdGVuZXIiLHtsaXN0ZW5lcjpmdW5jdGlvbihlLGYpe2NsZWFyVGltZW91dChkKTt0cnl7dmFyIGc7dmFyIGg7KChoPWUucGluZ0RhdGEpPT1udWxsP3ZvaWQgMDpoLmdwcFZlcnNpb24pPT09dm9pZCAwfHxlLnBpbmdEYXRhLmdwcFZlcnNpb249PT0iMSJ8fGUucGluZ0RhdGEuZ3BwVmVyc2lvbj09PSIxLjAiPyhiLnJlbW92ZUV2ZW50TGlzdGVuZXIoZS5saXN0ZW5lcklkKSxnPXtldmVudE5hbWU6InNpZ25hbFN0YXR1cyIsZGF0YToicmVhZHkiLHBpbmdEYXRhOntpbnRlcm5hbEVycm9yU3RhdGU6MSxncHBTdHJpbmc6IkdQUF9FUlJPUl9TVFJJTkdfSVNfREVQUkVDQVRFRF9TUEVDIiwKYXBwbGljYWJsZVNlY3Rpb25zOlstMV19fSk6QXJyYXkuaXNBcnJheShlLnBpbmdEYXRhLmFwcGxpY2FibGVTZWN0aW9ucyk/Zz1lOihiLnJlbW92ZUV2ZW50TGlzdGVuZXIoZS5saXN0ZW5lcklkKSxnPXtldmVudE5hbWU6InNpZ25hbFN0YXR1cyIsZGF0YToicmVhZHkiLHBpbmdEYXRhOntpbnRlcm5hbEVycm9yU3RhdGU6MixncHBTdHJpbmc6IkdQUF9FUlJPUl9TVFJJTkdfRVhQRUNURURfQVBQTElDQVRJT05fU0VDVElPTl9BUlJBWSIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19fSk7YShnLGYpfWNhdGNoKGwpe2lmKGU9PW51bGw/MDplLmxpc3RlbmVySWQpdHJ5e2IucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLmxpc3RlbmVySWQpfWNhdGNoKG4pe2Eod0YsITApO3JldHVybn1hKHhGLCEwKX19fSl9Owp1Ri5wcm90b3R5cGUucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXtvRih0aGlzLmNhbGxlciwicmVtb3ZlRXZlbnRMaXN0ZW5lciIse2xpc3RlbmVyOmZ1bmN0aW9uKCl7fSxsaXN0ZW5lcklkOmF9KX07CnZhciB4Rj17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjIsZ3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX1VOQVZBSUxBQkxFIixhcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX0sbGlzdGVuZXJJZDotMX0sdkY9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2dwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19MSVNURU5FUl9SRUdJU1RSQVRJT05fVElNRU9VVCIsaW50ZXJuYWxFcnJvclN0YXRlOjIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9LHdGPXtldmVudE5hbWU6InNpZ25hbFN0YXR1cyIsZGF0YToicmVhZHkiLHBpbmdEYXRhOntncHBTdHJpbmc6IkdQUF9FUlJPUl9TVFJJTkdfUkVNT1ZFX0VWRU5UX0xJU1RFTkVSX0VSUk9SIixpbnRlcm5hbEVycm9yU3RhdGU6MixhcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX0sbGlzdGVuZXJJZDotMX07ZnVuY3Rpb24geUYoYSl7dmFyIGI7aWYoIShiPWEucGluZ0RhdGEuc2lnbmFsU3RhdHVzPT09InJlYWR5Iikpe3ZhciBjPWEucGluZ0RhdGEuYXBwbGljYWJsZVNlY3Rpb25zO2I9IWN8fGMubGVuZ3RoPT09MSYmY1swXT09PS0xfWlmKGIpe2tGLmdwcFN0cmluZz1hLnBpbmdEYXRhLmdwcFN0cmluZzt2YXIgZD1hLnBpbmdEYXRhLmFwcGxpY2FibGVTZWN0aW9ucy5qb2luKCIsIik7a0YuSD1kfX1mdW5jdGlvbiB6Rigpe3RyeXt2YXIgYT1uZXcgdUYoQSx7dGltZW91dE1zOi0xfSk7bUYoYS5jYWxsZXIpJiZhLmFkZEV2ZW50TGlzdGVuZXIoeUYpfWNhdGNoKGIpe319O2Z1bmN0aW9uIEFGKCl7dmFyIGE9W1siY3YiLEUoMSldLFsicnYiLEUoMTQpXSxbInRjIixjQS50YWdzLmZpbHRlcihmdW5jdGlvbihkKXtyZXR1cm4gZH0pLmxlbmd0aF1dLGI9SmYoMTUpO2ImJmEucHVzaChbIngiLGJdKTt2YXIgYz1DcCgpO2MmJmEucHVzaChbInRhZ19leHAiLGNdKTtyZXR1cm4gYX07dmFyIEJGPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9e307dGhpcy5LPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPWIuZXZlbnRJZCxkPWIudGYsZT1bXSxmPWEuSFtjXXx8W107Zi5sZW5ndGgmJmUucHVzaChbImhmIixmLmpvaW4oIi4iKV0pO3ZhciBnPWEuS1tjXXx8W107Zy5sZW5ndGgmJmUucHVzaChbImh0IixnLmpvaW4oIi4iKV0pO2QmJihkZWxldGUgYS5IW2NdLGRlbGV0ZSBhLktbY10pO3JldHVybiBlfSl9LENGPWZ1bmN0aW9uKCl7dmFyIGE9MDtyZXR1cm4gZnVuY3Rpb24oYil7c3dpdGNoKGIpe2Nhc2UgMTphfD0xO2JyZWFrO2Nhc2UgMjphfD0yO2JyZWFrO2Nhc2UgMzphfD00fXJldHVybiBhfX0sREY7dmFyIEVGPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9IiI7Zm4uTiYmTSg1MTYpJiZmeihmdW5jdGlvbigpe3ZhciBiPVtdO2EuSCYmYi5wdXNoKFsicHNkIixhLkhdKTtyZXR1cm4gYn0pfSxGRjtmdW5jdGlvbiBHRigpe3JldHVybiExfQpmdW5jdGlvbiBIRigpe3ZhciBhPXt9O3JldHVybiBmdW5jdGlvbihiLGMsZCl7fX07ZnVuY3Rpb24gSUYoKXt2YXIgYT1KRjtyZXR1cm4gZnVuY3Rpb24oYixjLGQpe3ZhciBlPWQmJmQuZXZlbnQ7S0YoYyk7dmFyIGY9QmgoYik/dm9pZCAwOjEsZz1uZXcga2I7R2IoYyxmdW5jdGlvbihyLHQpe3ZhciB1PVVkKHQsdm9pZCAwLGYpO3U9PT12b2lkIDAmJnQhPT12b2lkIDAmJlAoNDQpO2cuc2V0KHIsdSl9KTthLlFiKFFmKCkpO3ZhciBoPXtSbjpoZyhiKSxldmVudElkOmU9PW51bGw/dm9pZCAwOmUuaWQscHJpb3JpdHlJZDplIT09dm9pZCAwP2UucHJpb3JpdHlJZDp2b2lkIDAscHJpb3JpdHlRdWV1ZTplIT09dm9pZCAwP2UucHJpb3JpdHlRdWV1ZTp2b2lkIDAsd2c6ZSE9PXZvaWQgMD9mdW5jdGlvbihyKXtlLmxkLndnKHIpfTp2b2lkIDAsUGI6ZnVuY3Rpb24oKXtyZXR1cm4gYn0sbG9nOmZ1bmN0aW9uKCl7fSxOcjp7aW5kZXg6ZD09bnVsbD92b2lkIDA6ZC5pbmRleCx0eXBlOmQ9PW51bGw/dm9pZCAwOmQudHlwZSxuYW1lOmQ9PW51bGw/dm9pZCAwOmQubmFtZX0sCml0OiEhS0EoYiwzKSxvcmlnaW5hbEV2ZW50RGF0YTplPT1udWxsP3ZvaWQgMDplLm9yaWdpbmFsRXZlbnREYXRhfTtlJiZlLmNhY2hlZE1vZGVsVmFsdWVzJiYoaC5jYWNoZWRNb2RlbFZhbHVlcz17Z3RtOmUuY2FjaGVkTW9kZWxWYWx1ZXMuZ3RtLGVjb21tZXJjZTplLmNhY2hlZE1vZGVsVmFsdWVzLmVjb21tZXJjZX0pO2lmKEdGKCkpe3ZhciBsPUhGKCksbixwO2guQWI9e3drOltdLHlnOnt9LGpjOmZ1bmN0aW9uKHIsdCx1KXt0PT09MSYmKG49cik7dD09PTcmJihwPXUpO2wocix0LHUpfSxlaTpWaCgpfTtoLmxvZz1mdW5jdGlvbihyKXt2YXIgdD1PYS5hcHBseSgxLGFyZ3VtZW50cyk7biYmbChuLDQse2xldmVsOnIsc291cmNlOnAsbWVzc2FnZTp0fSl9fQp2YXIgcT1yZihhLGgsW2IsZ10pO2EuUWIoKTtxIGluc3RhbmNlb2YgVGEmJihxLnR5cGU9PT0icmV0dXJuIj9xPXEuZGF0YTpxPXZvaWQgMCk7cmV0dXJuIFRkKHEsdm9pZCAwLGYpfX1mdW5jdGlvbiBLRihhKXt2YXIgYj1hLmd0bU9uU3VjY2VzcyxjPWEuZ3RtT25GYWlsdXJlO3liKGIpJiYoYS5ndG1PblN1Y2Nlc3M9ZnVuY3Rpb24oKXtiZChiKX0pO3liKGMpJiYoYS5ndG1PbkZhaWx1cmU9ZnVuY3Rpb24oKXtiZChjKX0pfTt2YXIgTEY9ZnVuY3Rpb24oYSl7aXgoYSl9O3ZhciBNRj1mdW5jdGlvbihhKXtWKGEsSC5KLnRnLGNvLmlhLmNiKX07ZnVuY3Rpb24gTkYoKXtyZXR1cm4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjIwKX07dmFyIE9GPVtGLkQuemldLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gYS5zbGljZSgyKX0pO3ZhciBQRj1mdW5jdGlvbihhKXtVKGEsRi5ELnppLGFsKDgsTkYpKX07ZnVuY3Rpb24gUUYoYSl7fVFGLlA9ImludGVybmFsLmFkZEFkc0NsaWNrSWRzIjtmdW5jdGlvbiBSRihhLGIpe3ZhciBjPXRoaXM7fVJGLnB1YmxpY05hbWU9ImFkZENvbnNlbnRMaXN0ZW5lciI7dmFyIFNGPSExO2Z1bmN0aW9uIFRGKGEpe2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7KytiKWlmKFNGKXRyeXthW2JdKCl9Y2F0Y2goYyl7UCg3Nyl9ZWxzZSBhW2JdKCl9ZnVuY3Rpb24gVUYoYSxiLGMpe3ZhciBkPXRoaXMsZTtpZighbGgoYSl8fCFoaChiKXx8IW1oKGMpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJmdW5jdGlvbiIsInN0cmluZ3x1bmRlZmluZWQiXSxhcmd1bWVudHMpO1RGKFtmdW5jdGlvbigpe0woZCwibGlzdGVuX2RhdGFfbGF5ZXIiLGEpfV0pO2U9eUIoKS5hZGRMaXN0ZW5lcihhLFRkKGIsdm9pZCAwLDEpLGM9PT1udWxsP3ZvaWQgMDpjKTtyZXR1cm4gZX1VRi5QPSJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBWRihhLGIsYyl7fVZGLnB1YmxpY05hbWU9ImFkZERvY3VtZW50RXZlbnRMaXN0ZW5lciI7ZnVuY3Rpb24gV0YoYSxiLGMsZCl7fVdGLnB1YmxpY05hbWU9ImFkZEVsZW1lbnRFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBYRihhKXtyZXR1cm4gYS5ULnhiKCl9O2Z1bmN0aW9uIFlGKGEpe31ZRi5wdWJsaWNOYW1lPSJhZGRFdmVudENhbGxiYWNrIjsKdmFyIFpGPWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmciP2E6U3RyaW5nKHJqKCkpfSxiRz1mdW5jdGlvbihhLGIpeyRGKGEsImluaXQiLCExKXx8KGFHKGEsImluaXQiLCEwKSxiKCkpfSwkRj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Y0coYSk7cmV0dXJuIE9iKGQsYixjKX0sZEc9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9Y0coYSksZj1PYihlLGIsZCksZz1jKGYpO3JldHVybiBlW2JdPWd9LGFHPWZ1bmN0aW9uKGEsYixjKXtjRyhhKVtiXT1jfSxjRz1mdW5jdGlvbihhKXt2YXIgYj1raigiYXV0b0V2ZW50c1NldHRpbmdzIixmdW5jdGlvbigpe3JldHVybnt9fSk7Yi5oYXNPd25Qcm9wZXJ0eShhKXx8KGJbYV09e30pO3JldHVybiBiW2FdfSxlRz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9e2V2ZW50OmIsImd0bS5lbGVtZW50IjphLCJndG0uZWxlbWVudENsYXNzZXMiOm9kKGEsImNsYXNzTmFtZSIpLCJndG0uZWxlbWVudElkIjphLmZvcnx8ZWQoYSwiaWQiKXx8CiIiLCJndG0uZWxlbWVudFRhcmdldCI6YS5mb3JtVGFyZ2V0fHxvZChhLCJ0YXJnZXQiKXx8IiJ9O2MmJihkWyJndG0udHJpZ2dlcnMiXT1jLmpvaW4oIiwiKSk7ZFsiZ3RtLmVsZW1lbnRVcmwiXT0oYS5hdHRyaWJ1dGVzJiZhLmF0dHJpYnV0ZXMuZm9ybWFjdGlvbj9hLmZvcm1BY3Rpb246IiIpfHxhLmFjdGlvbnx8b2QoYSwiaHJlZiIpfHxhLnNyY3x8YS5jb2RlfHxhLmNvZGViYXNlfHwiIjtyZXR1cm4gZH07CmZ1bmN0aW9uIGlHKGEpe2lmKGEuZm9ybSl7dmFyIGI7cmV0dXJuKChiPWEuZm9ybSk9PW51bGw/MDpiLnRhZ05hbWUpP2EuZm9ybTpCLmdldEVsZW1lbnRCeUlkKGEuZm9ybSl9cmV0dXJuIGhkKGEsWyJmb3JtIl0sMTAwKX07CmZ1bmN0aW9uIG1HKGEpe31tRy5QPSJpbnRlcm5hbC5hZGRGb3JtQWJhbmRvbm1lbnRMaXN0ZW5lciI7ZnVuY3Rpb24gbkcoYSxiLGMsZCl7fQpuRy5QPSJpbnRlcm5hbC5hZGRGb3JtRGF0YSI7CmZ1bmN0aW9uIHNHKGEpe31zRy5QPSJpbnRlcm5hbC5hZGRHYVNlbmRMaXN0ZW5lciI7ZnVuY3Rpb24gdEcoYSl7aWYoIWEpcmV0dXJue307dmFyIGI9YS5OcjtyZXR1cm4gSkEoYi50eXBlLGIuaW5kZXgsYi5uYW1lKX1mdW5jdGlvbiB1RyhhKXtpZighYSlyZXR1cm57fTt2YXIgYj17b3JpZ2luYXRpbmdFbnRpdHk6dEcoYSl9O2EucHJpb3JpdHlRdWV1ZSYmKGIucHJpb3JpdHlRdWV1ZT1hLnByaW9yaXR5UXVldWUpO3JldHVybiBifTtmdW5jdGlvbiBDRyhhKXt2YXIgYj1taigiem9uZXMiKTtyZXR1cm4gYj9iLmdldElzQWxsb3dlZEZuKHdrKCksYSk6ZnVuY3Rpb24oKXtyZXR1cm4hMH19ZnVuY3Rpb24gREcoKXt2YXIgYT1taigiem9uZXMiKTthJiZhLnVucmVnaXN0ZXJDaGlsZCh3aygpKX0KZnVuY3Rpb24gRUcoKXtrQih2aygpLGZ1bmN0aW9uKGEpe3ZhciBiPWEub3JpZ2luYWxFdmVudERhdGFbImd0bS51bmlxdWVFdmVudElkIl0sYz1taigiem9uZXMiKTtyZXR1cm4gYz9jLmlzQWN0aXZlKHdrKCksYik6ITB9KTtoQih2aygpLGZ1bmN0aW9uKGEpe3ZhciBiLGM7Yj1hLmVudGl0eUlkO2M9YS5zZWN1cml0eUdyb3VwcztyZXR1cm4gQ0coTnVtYmVyKGEub3JpZ2luYWxFdmVudERhdGFbImd0bS51bmlxdWVFdmVudElkIl0pKShiLGMpfSl9O3ZhciBGRz1mdW5jdGlvbihhLGIpe3RoaXMudGFnSWQ9YTt0aGlzLmNhbm9uaWNhbElkPWJ9OwpmdW5jdGlvbiBHRyhhLGIpe3ZhciBjPXRoaXM7cmV0dXJuIGF9R0cuUD0iaW50ZXJuYWwubG9hZEdvb2dsZVRhZyI7ZnVuY3Rpb24gSEcoYSl7cmV0dXJuIG5ldyBLZCgiIixmdW5jdGlvbihiKXt2YXIgYz10aGlzLmV2YWx1YXRlKGIpO2lmKGMgaW5zdGFuY2VvZiBLZClyZXR1cm4gbmV3IEtkKCIiLGZ1bmN0aW9uKCl7dmFyIGQ9T2EuYXBwbHkoMCxhcmd1bWVudHMpLGU9dGhpcyxmPUVkKFhGKHRoaXMpLG51bGwpO2YuZXZlbnRJZD1hLmV2ZW50SWQ7Zi5wcmlvcml0eUlkPWEucHJpb3JpdHlJZDtmLm9yaWdpbmFsRXZlbnREYXRhPWEub3JpZ2luYWxFdmVudERhdGE7dmFyIGc9ZC5tYXAoZnVuY3Rpb24obCl7cmV0dXJuIGUuZXZhbHVhdGUobCl9KSxoPXRoaXMuVC53YigpO2gudWUoZik7cmV0dXJuIGMuTmMuYXBwbHkoYyxbaF0uY29uY2F0KHcoZykpKX0pfSl9O2Z1bmN0aW9uIElHKGEsYixjKXt2YXIgZD10aGlzO31JRy5QPSJpbnRlcm5hbC5hZGRHb29nbGVUYWdSZXN0cmljdGlvbiI7CmZ1bmN0aW9uIFBHKGEsYil7fVBHLlA9ImludGVybmFsLmFkZEhpc3RvcnlDaGFuZ2VMaXN0ZW5lciI7ZnVuY3Rpb24gUUcoYSxiLGMpe31RRy5wdWJsaWNOYW1lPSJhZGRXaW5kb3dFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBSRyhhLGIpe3JldHVybiEwfVJHLnB1YmxpY05hbWU9ImFsaWFzSW5XaW5kb3ciO2Z1bmN0aW9uIFNHKGEsYixjKXt9U0cuUD0iaW50ZXJuYWwuYXBwZW5kUmVtb3RlQ29uZmlnUGFyYW1ldGVyIjtmdW5jdGlvbiBURyhhKXt2YXIgYjtyZXR1cm4gYn0KVEcucHVibGljTmFtZT0iY2FsbEluV2luZG93IjtmdW5jdGlvbiBVRyhhKXt9VUcucHVibGljTmFtZT0iY2FsbExhdGVyIjtmdW5jdGlvbiBWRyhhKXt9VkcuUD0iY2FsbE9uRG9tUmVhZHkiO2Z1bmN0aW9uIFdHKGEpe31XRy5QPSJjYWxsT25XaW5kb3dMb2FkIjt2YXIgWUc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1ubShYRyl8fHt9LGQ9Y1thXXx8e307aWYoZFtiXSlyZXR1cm4hMTt2YXIgZT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGQpO2VbYl09ITA7dmFyIGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjKTtmW2FdPWU7bW0oWEcsZik7cmV0dXJuITB9LFhHPWptLmJhLmhyO2Z1bmN0aW9uIFpHKGEsYil7aWYoIWxoKGEpfHwhbGgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInN0cmluZyJdLGFyZ3VtZW50cyk7dmFyIGM9WUcoYSxiKTtyZXR1cm4gY31aRy5QPSJpbnRlcm5hbC5jbGFpbURlc3RpbmF0aW9uIjtmdW5jdGlvbiAkRyhhLGIpe3ZhciBjO3JldHVybiBjfSRHLlA9ImludGVybmFsLmNvbXB1dGVHdG1QYXJhbWV0ZXIiO2Z1bmN0aW9uIGFIKGEsYil7dmFyIGM9dGhpcztpZighaGgoYSl8fCFqaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiZnVuY3Rpb24iLCJhcnJheSJdLGFyZ3VtZW50cyk7YnAoZnVuY3Rpb24oKXthLmludm9rZShjLlQpfSxUZChiKSk7fWFILlA9ImludGVybmFsLmNvbnNlbnRTY2hlZHVsZUZpcnN0VHJ5IjtmdW5jdGlvbiBiSChhLGIpe3ZhciBjPXRoaXM7aWYoIWhoKGEpfHwhamgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbImZ1bmN0aW9uIiwiYXJyYXkiXSxhcmd1bWVudHMpO2FwKGZ1bmN0aW9uKGQpe2EuaW52b2tlKGMuVCxVZChkKSl9LFRkKGIpKTt9YkguUD0iaW50ZXJuYWwuY29uc2VudFNjaGVkdWxlUmV0cnkiO2Z1bmN0aW9uIGNIKGEpe3ZhciBiO2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTt2YXIgYz1hO2lmKCFrbShjKSl0aHJvdyBFcnJvcigiY29weUZyb21Dcm9zc0NvbnRhaW5lckRhdGEgcmVxdWlyZXMgdmFsaWQgQ3Jvc3NDb250YWluZXJTY2hlbWEga2V5LiIpO3ZhciBkPW5tKGMpO2I9VWQoZCx0aGlzLlQsMSk7cmV0dXJuIGJ9Y0guUD0iaW50ZXJuYWwuY29weUZyb21Dcm9zc0NvbnRhaW5lckRhdGEiO2Z1bmN0aW9uIGRIKGEsYil7dmFyIGM7dmFyIGU9VWQoYyx0aGlzLlQsQmgoWEYodGhpcykuUGIoKSk/MjoxKTtlPT09dm9pZCAwJiZjIT09dm9pZCAwJiZQKDQ1KTtyZXR1cm4gZX1kSC5wdWJsaWNOYW1lPSJjb3B5RnJvbURhdGFMYXllciI7CmZ1bmN0aW9uIGVIKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gYn1lSC5QPSJpbnRlcm5hbC5jb3B5RnJvbURhdGFMYXllckNhY2hlIjtmdW5jdGlvbiBmSChhKXt2YXIgYjtyZXR1cm4gYn1mSC5wdWJsaWNOYW1lPSJjb3B5RnJvbVdpbmRvdyI7ZnVuY3Rpb24gZ0goYSl7dmFyIGI9dm9pZCAwO3JldHVybiBVZChiLHRoaXMuVCwxKX1nSC5QPSJpbnRlcm5hbC5jb3B5S2V5RnJvbVdpbmRvdyI7dmFyIGhIPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09Y28uaWEuY2ImJmZvLkhbYV09PT1iby5NYS5VZSYmIVhvKEYuRC5rYSl9O3ZhciBpSD1mdW5jdGlvbigpe3JldHVybiIwIn0sakg9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGEhPT0ic3RyaW5nIilyZXR1cm4iIjt2YXIgYj1bImdjbGlkIiwiZGNsaWQiLCJ3YnJhaWQiLCJfZ2wiXTtNKDEwMikmJmIucHVzaCgiZ2JyYWlkIik7cmV0dXJuIFNqKGEsYiwiMCIpfTt2YXIga0g9e30sbEg9e30sbUg9e30sbkg9e30sb0g9e30scEg9e30scUg9e30sckg9e30sc0g9e30sdEg9e30sdUg9e30sdkg9e30sd0g9e30seEg9e30seUg9e30sekg9e30sQUg9e30sQkg9e30sQ0g9e30sREg9e30sRUg9e30sRkg9e30sR0g9e30sSEg9e30sSUg9e30sSkg9e30sS0g9KEpIW0YuRC5mYl09KGtIWzJdPVtoSF0sa0gpLEpIW0YuRC5aZl09KGxIWzJdPVtoSF0sbEgpLEpIW0YuRC5KaV09KG1IWzJdPVtoSF0sbUgpLEpIW0YuRC5nbV09KG5IWzJdPVtoSF0sbkgpLEpIW0YuRC5obV09KG9IWzJdPVtoSF0sb0gpLEpIW0YuRC5pbV09KHBIWzJdPVtoSF0scEgpLEpIW0YuRC5qbV09KHFIWzJdPVtoSF0scUgpLEpIW0YuRC5rbV09KHJIWzJdPVtoSF0sckgpLEpIW0YuRC5CY109KHNIWzJdPVtoSF0sc0gpLEpIW0YuRC5jZ109KHRIWzJdPVtoSF0sdEgpLEpIW0YuRC5kZ109KHVIWzJdPVtoSF0sdUgpLEpIW0YuRC5lZ109KHZIWzJdPVtoSF0sdkgpLEpIW0YuRC5mZ109KHdIWzJdPQpbaEhdLHdIKSxKSFtGLkQuZ2ddPSh4SFsyXT1baEhdLHhIKSxKSFtGLkQuaGddPSh5SFsyXT1baEhdLHlIKSxKSFtGLkQuaWddPSh6SFsyXT1baEhdLHpIKSxKSFtGLkQuamddPShBSFsyXT1baEhdLEFIKSxKSFtGLkQubGJdPShCSFsxXT1baEhdLEJIKSxKSFtGLkQuRGRdPShDSFsxXT1baEhdLENIKSxKSFtGLkQuS2RdPShESFsxXT1baEhdLERIKSxKSFtGLkQuRWVdPShFSFsxXT1baEhdLEVIKSxKSFtGLkQuQmZdPShGSFsxXT1bZnVuY3Rpb24oYSl7cmV0dXJuIE0oMTAyKSYmaEgoYSl9XSxGSCksSkhbRi5ELlVjXT0oR0hbMV09W2hIXSxHSCksSkhbRi5ELnphXT0oSEhbMV09W2hIXSxISCksSkhbRi5ELlVhXT0oSUhbMV09W2hIXSxJSCksSkgpLExIPXt9LE1IPShMSFtGLkQubGJdPWlILExIW0YuRC5EZF09aUgsTEhbRi5ELktkXT1pSCxMSFtGLkQuRWVdPWlILExIW0YuRC5CZl09aUgsTEhbRi5ELlVjXT1mdW5jdGlvbihhKXtpZighQ2QoYSkpcmV0dXJue307dmFyIGI9RWQoYSwKbnVsbCk7ZGVsZXRlIGIubWF0Y2hfaWQ7cmV0dXJuIGJ9LExIW0YuRC56YV09akgsTEhbRi5ELlVhXT1qSCxMSCksTkg9e30sT0g9e30sUEg9KE9IW0guSi5ZYV09KE5IWzJdPVtoSF0sTkgpLE9IKSxRSD17fTt2YXIgUkg9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5IPWE7dGhpcy5OPWI7dGhpcy5SPWM7dGhpcy5aPWR9O1JILnByb3RvdHlwZS5nZXRWYWx1ZT1mdW5jdGlvbihhKXthPWE9PT12b2lkIDA/Y28uaWEuZ2Q6YTtpZighdGhpcy5OLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIoYSl9KSlyZXR1cm4gdGhpcy5SLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIoYSl9KT90aGlzLloodGhpcy5IKTp0aGlzLkh9O1JILnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIEFkKHRoaXMuSCk9PT0iYXJyYXkifHxDZCh0aGlzLkgpP0VkKHRoaXMuSCxudWxsKTp0aGlzLkh9Owp2YXIgU0g9ZnVuY3Rpb24oKXt9LFRIPWZ1bmN0aW9uKGEsYil7dGhpcy5jb25kaXRpb25zPWE7dGhpcy5IPWJ9LFVIPWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlPSgoZD1hLmNvbmRpdGlvbnNbYl0pPT1udWxsP3ZvaWQgMDpkWzJdKXx8W10sZixnPSgoZj1hLmNvbmRpdGlvbnNbYl0pPT1udWxsP3ZvaWQgMDpmWzFdKXx8W107cmV0dXJuIG5ldyBSSChjLGUsZyxhLkhbYl18fFNIKX0sVkgsV0g7dmFyIFlIPWZ1bmN0aW9uKGEpe2EuSz0hMDthLkg9ITE7aWYoSWYoNTIpKXtpZihNKDUxNikmJlhIKCkpe3ZhciBiO2Euc2V0dGluZ3M9KGI9ZGF0YS5wcm9kdWN0U2V0dGluZ3MpIT1udWxsP2I6e307YS5IPSEwfWVsc2V7dmFyIGM7YS5zZXR0aW5ncz0oYz1wcm9kdWN0U2V0dGluZ3MpIT1udWxsP2M6e319cHJvZHVjdFNldHRpbmdzPXZvaWQgMDtkYXRhLnByb2R1Y3RTZXR0aW5ncz12b2lkIDA7dmFyIGQ7KGQ9RkYpIT1udWxsJiZmbi5OJiZNKDUxNikmJihkLkg9YS5IPyIxIjoiMCIpfX0sJEg9ZnVuY3Rpb24oYSl7dmFyIGI9Wkg7Yi5LfHxZSChiKTtyZXR1cm4gYi5zZXR0aW5nc1thXX0sWkg9bmV3IGZ1bmN0aW9uKCl7dGhpcy5zZXR0aW5ncz17fTt0aGlzLks9dGhpcy5IPSExfTsKZnVuY3Rpb24gWEgoKXtpZighZGF0YS5wcm9kdWN0U2V0dGluZ3MmJiFwcm9kdWN0U2V0dGluZ3MpcmV0dXJuITA7aWYoIWRhdGEucHJvZHVjdFNldHRpbmdzfHwhcHJvZHVjdFNldHRpbmdzfHxPYmplY3Qua2V5cyhkYXRhLnByb2R1Y3RTZXR0aW5ncykubGVuZ3RoIT09T2JqZWN0LmtleXMocHJvZHVjdFNldHRpbmdzKS5sZW5ndGgpcmV0dXJuITE7Zm9yKHZhciBhIGluIHByb2R1Y3RTZXR0aW5ncylpZighZGF0YS5wcm9kdWN0U2V0dGluZ3MuaGFzT3duUHJvcGVydHkoYSl8fGRhdGEucHJvZHVjdFNldHRpbmdzW2FdLnByZUF1dG9QaWkhPT1wcm9kdWN0U2V0dGluZ3NbYV0ucHJlQXV0b1BpaSlyZXR1cm4hMTtyZXR1cm4hMH07dmFyIGFJPWZ1bmN0aW9uKGEsYixjKXt0aGlzLmV2ZW50TmFtZT1iO3RoaXMuTT1jO3RoaXMuSD17fTt0aGlzLmlzQWJvcnRlZD0hMTt0aGlzLnRhcmdldD1hO3RoaXMubWV0YWRhdGE9e307Zm9yKHZhciBkPWMuZXZlbnRNZXRhZGF0YXx8e30sZT1tKE9iamVjdC5rZXlzKGQpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtWKHRoaXMsZyxkW2ddKX19LFI9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkO3JldHVybihjPWEuSFtiXSk9PW51bGw/dm9pZCAwOihkPWMuZ2V0VmFsdWUpPT1udWxsP3ZvaWQgMDpkLmNhbGwoYyxRKGEsSC5KLnRnKSl9LGV1PWZ1bmN0aW9uKGEpe3JldHVybiBPYmplY3Qua2V5cyhhLkgpfSxVPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLkgsZTtjPT09dm9pZCAwP2U9dm9pZCAwOihWSCE9bnVsbHx8KFZIPW5ldyBUSChLSCxNSCkpLGU9VUgoVkgsYixjKSk7ZFtiXT1lfTsKYUkucHJvdG90eXBlLm1lcmdlSGl0RGF0YUZvcktleT1mdW5jdGlvbihhLGIpe3ZhciBjLGQsZTtjPShkPXRoaXMuSFthXSk9PW51bGw/dm9pZCAwOihlPWQuSyk9PW51bGw/dm9pZCAwOmUuY2FsbChkKTtpZighYylyZXR1cm4gVSh0aGlzLGEsYiksITA7aWYoIUNkKGMpKXJldHVybiExO1UodGhpcyxhLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsYyxiKSk7cmV0dXJuITB9O3ZhciBiST1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2Zvcih2YXIgYz1tKE9iamVjdC5rZXlzKGEuSCkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9dm9pZCAwLGc9dm9pZCAwLGg9dm9pZCAwO2JbZV09KGY9YS5IW2VdKT09bnVsbD92b2lkIDA6KGg9KGc9ZikuSyk9PW51bGw/dm9pZCAwOmguY2FsbChnKX1yZXR1cm4gYn07CmFJLnByb3RvdHlwZS5jb3B5VG9IaXREYXRhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1PKHRoaXMuTSxhKTtkPT09dm9pZCAwJiYoZD1iKTtpZih6YihkKSYmYyE9PXZvaWQgMCl0cnl7ZD1jKGQpfWNhdGNoKGUpe31kIT09dm9pZCAwJiZVKHRoaXMsYSxkKX07CnZhciBRPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5tZXRhZGF0YVtiXTtpZihiPT09SC5KLnRnKXt2YXIgZDtyZXR1cm4gYz09bnVsbD92b2lkIDA6KGQ9Yy5LKT09bnVsbD92b2lkIDA6ZC5jYWxsKGMpfXZhciBlO3JldHVybiBjPT1udWxsP3ZvaWQgMDooZT1jLmdldFZhbHVlKT09bnVsbD92b2lkIDA6ZS5jYWxsKGMsUShhLEguSi50ZykpfSxWPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLm1ldGFkYXRhLGU7Yz09PXZvaWQgMD9lPWM6KFdIIT1udWxsfHwoV0g9bmV3IFRIKFBILFFIKSksZT1VSChXSCxiLGMpKTtkW2JdPWV9LGNJPWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7Zm9yKHZhciBjPW0oT2JqZWN0LmtleXMoYS5tZXRhZGF0YSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9dm9pZCAwLGc9dm9pZCAwLGg9dm9pZCAwO2JbZV09KGY9YS5tZXRhZGF0YVtlXSk9PW51bGw/dm9pZCAwOihoPShnPWYpLkspPT1udWxsP3ZvaWQgMDoKaC5jYWxsKGcpfXJldHVybiBifSxkST1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9JEgoYS50YXJnZXQuZGVzdGluYXRpb25JZCk7cmV0dXJuIGQmJmRbYl0hPT12b2lkIDA/ZFtiXTpjfSxadT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1uZXcgYUkoKGI9PW51bGw/dm9pZCAwOmIudGFyZ2V0KXx8YS50YXJnZXQsKGI9PW51bGw/dm9pZCAwOmIuZXZlbnROYW1lKXx8YS5ldmVudE5hbWUsKGI9PW51bGw/dm9pZCAwOmIuTSl8fGEuTSksZD1iSShhKSxlPW0oT2JqZWN0LmtleXMoZCkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO1UoYyxnLGRbZ10pfWZvcih2YXIgaD1jSShhKSxsPW0oT2JqZWN0LmtleXMoaCkpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO1YoYyxwLGhbcF0pfWMuaXNBYm9ydGVkPWEuaXNBYm9ydGVkO3JldHVybiBjfSxlST1mdW5jdGlvbihhKXt2YXIgYj1hLk0sYz1iLmV2ZW50SWQsZD1iLnByaW9yaXR5SWQ7CnJldHVybiBkP2MrIl8iK2Q6U3RyaW5nKGMpfTthSS5wcm90b3R5cGUuYWNjZXB0PWZ1bmN0aW9uKCl7dmFyIGE9b20oam0uYmEuU2kse30pLGI9ZUkodGhpcyksYz10aGlzLnRhcmdldC5kZXN0aW5hdGlvbklkO2FbYl18fChhW2JdPXt9KTthW2JdW2NdPXZrKCk7dmFyIGQ9am0uYmEuU2k7aWYoa20oZCkpe3ZhciBlOyhlPWxtKGQpKT09bnVsbHx8ZS5ub3RpZnkoKX19O2FJLnByb3RvdHlwZS5jYW5CZUFjY2VwdGVkPWZ1bmN0aW9uKGEpe3ZhciBiPW5tKGptLmJhLlNpKTtpZighYilyZXR1cm4hMDt2YXIgYz1iW2VJKHRoaXMpXTtpZighYylyZXR1cm4hMDt2YXIgZD1jW2EhPW51bGw/YTp0aGlzLnRhcmdldC5kZXN0aW5hdGlvbklkXTtyZXR1cm4gZD09PXZvaWQgMHx8ZD09PXZrKCl9O2Z1bmN0aW9uIGZJKGEpe3JldHVybntnZXREZXN0aW5hdGlvbklkOmZ1bmN0aW9uKCl7cmV0dXJuIGEudGFyZ2V0LmRlc3RpbmF0aW9uSWR9LGdldEV2ZW50TmFtZTpmdW5jdGlvbigpe3JldHVybiBhLmV2ZW50TmFtZX0sc2V0RXZlbnROYW1lOmZ1bmN0aW9uKGIpe2EuZXZlbnROYW1lPWJ9LGdldEhpdERhdGE6ZnVuY3Rpb24oYil7cmV0dXJuIFIoYSxiKX0sc2V0SGl0RGF0YTpmdW5jdGlvbihiLGMpe1UoYSxiLGMpfSxzZXRIaXREYXRhSWZOb3REZWZpbmVkOmZ1bmN0aW9uKGIsYyl7UihhLGIpPT09dm9pZCAwJiZVKGEsYixjKX0sY29weVRvSGl0RGF0YTpmdW5jdGlvbihiLGMpe2EuY29weVRvSGl0RGF0YShiLGMpfSxnZXRNZXRhZGF0YTpmdW5jdGlvbihiKXtyZXR1cm4gUShhLGIpfSxzZXRNZXRhZGF0YTpmdW5jdGlvbihiLGMpe1YoYSxiLGMpfSxpc0Fib3J0ZWQ6ZnVuY3Rpb24oKXtyZXR1cm4gYS5pc0Fib3J0ZWR9LGFib3J0OmZ1bmN0aW9uKCl7YS5pc0Fib3J0ZWQ9ITB9LApnZXRGcm9tRXZlbnRDb250ZXh0OmZ1bmN0aW9uKGIpe3JldHVybiBPKGEuTSxiKX0scmI6ZnVuY3Rpb24oKXtyZXR1cm4gYX0sZ2V0SGl0S2V5czpmdW5jdGlvbigpe3JldHVybiBldShhKX0sZ2V0TWVyZ2VkVmFsdWVzOmZ1bmN0aW9uKGIpe3JldHVybiBhLk0uZ2V0TWVyZ2VkVmFsdWVzKGIsMyl9LG1lcmdlSGl0RGF0YUZvcktleTpmdW5jdGlvbihiLGMpe3JldHVybiBDZChjKT9hLm1lcmdlSGl0RGF0YUZvcktleShiLGMpOiExfSxhY2NlcHQ6ZnVuY3Rpb24oKXthLmFjY2VwdCgpfSxjYW5CZUFjY2VwdGVkOmZ1bmN0aW9uKGIpe3JldHVybiBhLmNhbkJlQWNjZXB0ZWQoYil9fX07ZnVuY3Rpb24gZ0koYSxiKXt2YXIgYztpZighZWgoYSl8fCFmaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0IiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGQ9VGQoYil8fHt9LGU9VGQoYSx0aGlzLlQsMSkucmIoKSxmPWUuTTtkLm9taXRFdmVudENvbnRleHQmJihmPUpDKG5ldyB5QyhlLk0uZXZlbnRJZCxlLk0ucHJpb3JpdHlJZCkpKTt2YXIgZz1uZXcgYUkoZS50YXJnZXQsZS5ldmVudE5hbWUsZik7aWYoIWQub21pdEhpdERhdGEpZm9yKHZhciBoPWJJKGUpLGw9bShPYmplY3Qua2V5cyhoKSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7VShnLHAsaFtwXSl9aWYoZC5vbWl0TWV0YWRhdGEpZy5tZXRhZGF0YT17fTtlbHNlIGZvcih2YXIgcT1jSShlKSxyPW0oT2JqZWN0LmtleXMocSkpLHQ9ci5uZXh0KCk7IXQuZG9uZTt0PQpyLm5leHQoKSl7dmFyIHU9dC52YWx1ZTtWKGcsdSxxW3VdKX1nLmlzQWJvcnRlZD1lLmlzQWJvcnRlZDtjPVVkKGZJKGcpLHRoaXMuVCwxKTtyZXR1cm4gY31nSS5QPSJpbnRlcm5hbC5jb3B5UHJlSGl0IjtmdW5jdGlvbiBoSShhLGIpe3ZhciBjPW51bGw7cmV0dXJuIFVkKGMsdGhpcy5ULDIpfWhJLnB1YmxpY05hbWU9ImNyZWF0ZUFyZ3VtZW50c1F1ZXVlIjtmdW5jdGlvbiBpSShhKXtyZXR1cm4gVWQoZnVuY3Rpb24oYyl7dmFyIGQ9U0EoKTtpZih0eXBlb2YgYz09PSJmdW5jdGlvbiIpZChmdW5jdGlvbigpe2MoZnVuY3Rpb24oZixnLGgpe3ZhciBsPQpTQSgpLG49bCYmbC5nZXRCeU5hbWUmJmwuZ2V0QnlOYW1lKGYpO3JldHVybihuZXcgQS5nYXBsdWdpbnMuTGlua2VyKG4pKS5kZWNvcmF0ZShnLGgpfSl9KTtlbHNlIGlmKEFycmF5LmlzQXJyYXkoYykpe3ZhciBlPVN0cmluZyhjWzBdKS5zcGxpdCgiLiIpO2JbZS5sZW5ndGg9PT0xP2VbMF06ZVsxXV0mJmQuYXBwbHkobnVsbCxjKX1lbHNlIGlmKGM9PT0iaXNMb2FkZWQiKXJldHVybiEhZC5sb2FkZWR9LHRoaXMuVCwxKX1pSS5QPSJpbnRlcm5hbC5jcmVhdGVHYUNvbW1hbmRRdWV1ZSI7ZnVuY3Rpb24gakkoYSl7cmV0dXJuIFVkKGZ1bmN0aW9uKCl7aWYoIXliKGUucHVzaCkpdGhyb3cgRXJyb3IoIk9iamVjdCBhdCAiK2ErIiBpbiB3aW5kb3cgaXMgbm90IGFuIGFycmF5LiIpO2UucHVzaC5hcHBseShlLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKSl9LHRoaXMuVCwKQmgoWEYodGhpcykuUGIoKSk/MjoxKX1qSS5wdWJsaWNOYW1lPSJjcmVhdGVRdWV1ZSI7ZnVuY3Rpb24ga0koYSxiKXt2YXIgYz1udWxsO2lmKCFsaChhKXx8IW1oKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmd8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTt0cnl7dmFyIGQ9KGJ8fCIiKS5zcGxpdCgiIikuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiJpZyIuaW5kZXhPZihlKT49MH0pLmpvaW4oIiIpO2M9bmV3IFBkKG5ldyBSZWdFeHAoYSxkKSl9Y2F0Y2goZSl7fXJldHVybiBjfWtJLlA9ImludGVybmFsLmNyZWF0ZVJlZ2V4IjtmdW5jdGlvbiBsSShhKXtpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCJdLGFyZ3VtZW50cyk7Zm9yKHZhciBiPWEuRmEoKSxjPW0oYiksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7ZSE9PUYuRC5uYyYmTCh0aGlzLCJhY2Nlc3NfY29uc2VudCIsZSwid3JpdGUiKX12YXIgZj1YRih0aGlzKSxnPWYuZXZlbnRJZCxoPXVHKGYpLGw9VGQoYSk7bUQocUMoImNvbnNlbnQiLCJkZWNsYXJlIixsKSxnLGgpO31sSS5QPSJpbnRlcm5hbC5kZWNsYXJlQ29uc2VudFN0YXRlIjtmdW5jdGlvbiBtSShhKXt2YXIgYj0iIjtyZXR1cm4gYn1tSS5QPSJpbnRlcm5hbC5kZWNvZGVVcmxIdG1sRW50aXRpZXMiO2Z1bmN0aW9uIG5JKGEsYixjKXt2YXIgZDtyZXR1cm4gZH1uSS5QPSJpbnRlcm5hbC5kZWNvcmF0ZVVybFdpdGhHYUNvb2tpZXMiO2Z1bmN0aW9uIG9JKCl7fW9JLlA9ImludGVybmFsLmRlZmVyQ3VzdG9tRXZlbnRzIjtmdW5jdGlvbiBwSShhLGIpe3RyeXtyZXR1cm4gYS5jbG9zZXN0KGIpfWNhdGNoKGMpe3JldHVybiBudWxsfX07ZnVuY3Rpb24gcUkoKXt2YXIgYT1BLnNjcmVlbjtyZXR1cm57d2lkdGg6YT9hLndpZHRoOjAsaGVpZ2h0OmE/YS5oZWlnaHQ6MH19CmZ1bmN0aW9uIHJJKGEpe2lmKEIuaGlkZGVuKXJldHVybiEwO3ZhciBiPWEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7aWYoYi50b3A9PT1iLmJvdHRvbXx8Yi5sZWZ0PT09Yi5yaWdodHx8IUEuZ2V0Q29tcHV0ZWRTdHlsZSlyZXR1cm4hMDt2YXIgYz1BLmdldENvbXB1dGVkU3R5bGUoYSxudWxsKTtpZihjLnZpc2liaWxpdHk9PT0iaGlkZGVuIilyZXR1cm4hMDtmb3IodmFyIGQ9YSxlPWM7ZDspe2lmKGUuZGlzcGxheT09PSJub25lIilyZXR1cm4hMDt2YXIgZj1lLm9wYWNpdHksZz1lLmZpbHRlcjtpZihnKXt2YXIgaD1nLmluZGV4T2YoIm9wYWNpdHkoIik7aD49MCYmKGc9Zy5zdWJzdHJpbmcoaCs4LGcuaW5kZXhPZigiKSIsaCkpLGcuY2hhckF0KGcubGVuZ3RoLTEpPT09IiUiJiYoZz1nLnN1YnN0cmluZygwLGcubGVuZ3RoLTEpKSxmPVN0cmluZyhNYXRoLm1pbihOdW1iZXIoZyksTnVtYmVyKGYpKSkpfWlmKGYhPT12b2lkIDAmJk51bWJlcihmKTw9MClyZXR1cm4hMDsoZD1kLnBhcmVudEVsZW1lbnQpJiYKKGU9QS5nZXRDb21wdXRlZFN0eWxlKGQsbnVsbCkpfXJldHVybiExfQp2YXIgdEk9ZnVuY3Rpb24oYSl7dmFyIGI9c0koKSxjPWIuaGVpZ2h0LGQ9Yi53aWR0aCxlPWEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksZj1lLmJvdHRvbS1lLnRvcCxnPWUucmlnaHQtZS5sZWZ0O3JldHVybiBmJiZnPygxLU1hdGgubWluKChNYXRoLm1heCgwLWUubGVmdCwwKStNYXRoLm1heChlLnJpZ2h0LWQsMCkpL2csMSkpKigxLU1hdGgubWluKChNYXRoLm1heCgwLWUudG9wLDApK01hdGgubWF4KGUuYm90dG9tLWMsMCkpL2YsMSkpOjB9LHNJPWZ1bmN0aW9uKCl7dmFyIGE9Qi5ib2R5LGI9Qi5kb2N1bWVudEVsZW1lbnR8fGEmJmEucGFyZW50RWxlbWVudCxjLGQ7aWYoQi5jb21wYXRNb2RlJiZCLmNvbXBhdE1vZGUhPT0iQmFja0NvbXBhdCIpYz1iP2IuY2xpZW50SGVpZ2h0OjAsZD1iP2IuY2xpZW50V2lkdGg6MDtlbHNle3ZhciBlPWZ1bmN0aW9uKGYsZyl7cmV0dXJuIGYmJmc/TWF0aC5taW4oZixnKTpNYXRoLm1heChmLGcpfTtjPWUoYj9iLmNsaWVudEhlaWdodDowLGE/CmEuY2xpZW50SGVpZ2h0OjApO2Q9ZShiP2IuY2xpZW50V2lkdGg6MCxhP2EuY2xpZW50V2lkdGg6MCl9cmV0dXJue3dpZHRoOmQsaGVpZ2h0OmN9fTt2YXIgdkk9ZnVuY3Rpb24oYSl7aWYodUkpe3ZhciBiPWFsKDI0LGZ1bmN0aW9uKCl7cmV0dXJuW119KTtpZihhPj0wJiZhPGIubGVuZ3RoJiZiW2FdKXt2YXIgYzsoYz1iW2FdKT09bnVsbHx8Yy5kaXNjb25uZWN0KCk7YlthXT12b2lkIDB9fWVsc2UgQS5jbGVhckludGVydmFsKGEpfSx5ST1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspY1tkXT4xP2NbZF09MTpjW2RdPDAmJihjW2RdPTApO2lmKHVJKXt2YXIgZT0hMTtiZChmdW5jdGlvbigpe2V8fHdJKGEsYixjKSgpfSk7cmV0dXJuIHhJKGZ1bmN0aW9uKGYpe2U9ITA7Zm9yKHZhciBnPXtIZzowfTtnLkhnPGYubGVuZ3RoO2c9e0hnOmcuSGd9LGcuSGcrKyliZChmdW5jdGlvbihoKXtyZXR1cm4gZnVuY3Rpb24oKXthKGZbaC5IZ10pfX0oZykpfSwKYixjKX1yZXR1cm4gY2Qod0koYSxiLGMpLDFFMyl9LHdJPWZ1bmN0aW9uKGEsYixjKXtmdW5jdGlvbiBkKGgsbCl7dmFyIG49e3RvcDowLGJvdHRvbTowLHJpZ2h0OjAsbGVmdDowLHdpZHRoOjAsaGVpZ2h0OjB9LHA9e2JvdW5kaW5nQ2xpZW50UmVjdDpoLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGludGVyc2VjdGlvblJhdGlvOmwsaW50ZXJzZWN0aW9uUmVjdDpuLGlzSW50ZXJzZWN0aW5nOmw+MCxyb290Qm91bmRzOm4sdGFyZ2V0OmgsdGltZTpOYigpfTtiZChmdW5jdGlvbigpe2EocCl9KX1mb3IodmFyIGU9W10sZj1bXSxnPTA7ZzxiLmxlbmd0aDtnKyspZS5wdXNoKDApLGYucHVzaCgtMSk7Yy5zb3J0KGZ1bmN0aW9uKGgsbCl7cmV0dXJuIGgtbH0pO3JldHVybiBmdW5jdGlvbigpe2Zvcih2YXIgaD0wO2g8Yi5sZW5ndGg7aCsrKXt2YXIgbD10SShiW2hdKTtpZihsPmVbaF0pZm9yKDtmW2hdPGMubGVuZ3RoLTEmJmw+PWNbZltoXSsxXTspZChiW2hdLGwpLGZbaF0rKztlbHNlIGlmKGw8CmVbaF0pZm9yKDtmW2hdPj0wJiZsPD1jW2ZbaF1dOylkKGJbaF0sbCksZltoXS0tO2VbaF09bH19fSx4ST1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPW5ldyBBLkludGVyc2VjdGlvbk9ic2VydmVyKGEse3RocmVzaG9sZDpjfSksZT0wO2U8Yi5sZW5ndGg7ZSsrKWQub2JzZXJ2ZShiW2VdKTtmb3IodmFyIGY9YWwoMjQsZnVuY3Rpb24oKXtyZXR1cm5bXX0pLGc9MDtnPGYubGVuZ3RoO2crKylpZighZltnXSlyZXR1cm4gZltnXT1kLGc7cmV0dXJuIGYucHVzaChkKS0xfSx1ST0hKCFBLkludGVyc2VjdGlvbk9ic2VydmVyfHwhQS5JbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5KTsKdmFyIEpJPWZ1bmN0aW9uKGEpe3ZhciBiLGM9KGI9YT09bnVsbD92b2lkIDA6YS5pbmNsdWRlU2VsZWN0b3IpIT1udWxsP2I6ITAsZCxlPShkPWE9PW51bGw/dm9pZCAwOmEuaW5jbHVkZVZpc2liaWxpdHkpIT1udWxsP2Q6ITAsZixnPShmPWE9PW51bGw/dm9pZCAwOmEuc2VsZWN0TXVsdGlwbGVFbGVtZW50cykhPW51bGw/ZjohMSxoPShhPT1udWxsP3ZvaWQgMDphLmV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzKXx8W10sbD0oYT09bnVsbD92b2lkIDA6YS5maWVsZEZpbHRlcnMpfHx7ZW1haWw6ITAscGhvbmU6ITEsYWRkcmVzczohMX0sbj1hbCg2LGZ1bmN0aW9uKCl7cmV0dXJue319KSxwPXpJKHtpbmNsdWRlU2VsZWN0b3I6YyxpbmNsdWRlVmlzaWJpbGl0eTplLGV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzOmgsZmllbGRGaWx0ZXJzOmx9KSxxPW5bcF07aWYocSYmTmIoKS1xLnRpbWVzdGFtcDwyMDApe3ZhciByPXEucmVzdWx0LHQ7KHIuZWxlbWVudHMuc29tZShmdW5jdGlvbihxYSl7cmV0dXJuIHFhLmRpfSl8fAooKHQ9ci5naSk9PW51bGw/MDp0LmRpKSkmJkd1KFQuVy5yaik7cmV0dXJuIHJ9dmFyIHU9QUkoKSx2PXUuc3RhdHVzLHg9W10seSx6LEM9W107aWYoTSg1NjgpKXt2YXIgRD1CSShsKSxJPUNJKHUuZWxlbWVudHMsRCksRz1ESShJKSxOPUVJKEcsaCksUz1GSShOKTt5PVMuZmlsdGVyKGZ1bmN0aW9uKHFhKXtyZXR1cm4gcWEuRGE9PT1GRC5CYn0pWzBdO2Zvcih2YXIgVz1bXSxlYT17SWc6MH07ZWEuSWc8RC5sZW5ndGg7ZWE9e0lnOmVhLklnfSxlYS5JZysrKXt2YXIgamE9Ti5maWx0ZXIoZnVuY3Rpb24ocWEpe3JldHVybiBmdW5jdGlvbihpYil7cmV0dXJuIGliLkRhPT09RFtxYS5JZ119fShlYSkpO2phLmxlbmd0aD4xMCYmKHY9IjMiLGphPWphLnNsaWNlKDAsMTApKTtXPVcuY29uY2F0KGphKX1OPVc7IWcmJlMmJihOPVMpO2Zvcih2YXIgZmE9MDtmYTxOLmxlbmd0aDtmYSsrKXt2YXIgc2E9TltmYV07c2EuRGEhPT1GRC5LaCYmQy5wdXNoKEdJKHNhLGMsZSkpfX1lbHNle2lmKGwuZW1haWwpe3ZhciBkYT0KSEkodS5lbGVtZW50cyk7eD1FSShkYSxoKTt5PUlJKHgpO2RhLmxlbmd0aD4xMCYmKHY9IjMiKX0hZyYmeSYmKHg9W3ldKTtmb3IodmFyIG1hPTA7bWE8eC5sZW5ndGg7bWErKylDLnB1c2goR0koeFttYV0sYyxlKSk7Qz1DLnNsaWNlKDAsMTApfXkmJih6PUdJKHksYyxlKSk7dmFyIFBhPXtlbGVtZW50czpDLGdpOnosc3RhdHVzOnZ9O25bcF09e3RpbWVzdGFtcDpOYigpLHJlc3VsdDpQYX07dmFyIEZhOyhQYS5lbGVtZW50cy5zb21lKGZ1bmN0aW9uKHFhKXtyZXR1cm4gcWEuZGl9KXx8KChGYT1QYS5naSk9PW51bGw/MDpGYS5kaSkpJiZHdShULlcucmopO3JldHVybiBQYX0sREk9ZnVuY3Rpb24oYSl7dmFyIGI9YS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5LaH0pLGM9YS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5YZH0pO2lmKGEuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiB1LkRhPT09RkQuY2V9KS5sZW5ndGg9PT0wJiZjLmxlbmd0aD09PQowKWZvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1iW2RdLGY9ZS5DYS5zcGxpdCgiICIpO2YubGVuZ3RoPjEmJmEucHVzaCh7Q2E6ZlswXSxEYTpGRC5YZCxlbGVtZW50OmUuZWxlbWVudCxPYzplLk9jfSx7Q2E6Zi5zbGljZSgxKS5qb2luKCIgIiksRGE6RkQuY2UsZWxlbWVudDplLmVsZW1lbnQsT2M6ZS5PY30pfWZvcih2YXIgZyxoPTAsbCxuPWZ1bmN0aW9uKHUpe3JldHVybiB1LkRhPT09RkQuZWUmJnUuQ2EubGVuZ3RoPj0zJiZ1LkNhLmxlbmd0aDw9NH0scD0wO3A8YS5sZW5ndGg7cCsrKXt2YXIgcT1hW3BdO2lmKG4ocSkmJmcmJnEuZWxlbWVudC5wYXJlbnRFbGVtZW50PT09ZyYmaDwzKXtpZihoKz0xLGwrPXEuQ2EsaD09PTMpe3ZhciByPXAtaCsxO2lmKGw9S0lbRkQuZWVdLm5hKGwpKWFbcl0uQ2E9bH19ZWxzZSBpZihoPTAsbD0iIixnPXZvaWQgMCxuKHEpKXtoKys7bD1xLkNhO3ZhciB0PXZvaWQgMDtnPSh0PXEuZWxlbWVudC5wYXJlbnRFbGVtZW50KSE9bnVsbD8KdDp2b2lkIDB9fXJldHVybiBhLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4hbih1KX0pfSxPST1mdW5jdGlvbihhLGIpe2lmKGEudmFsdWUmJkxJLmluZGV4T2YoKGEudHlwZXx8InRleHQiKS50b0xvd2VyQ2FzZSgpKSE9PS0xKXt2YXIgYz1hLmF1dG9jb21wbGV0ZTtpZihjKWZvcih2YXIgZD1jLnNwbGl0KCIgIiksZT0wO2U8ZC5sZW5ndGg7ZSsrKXt2YXIgZj1NSShhLnZhbHVlLGIsZFtlXSk7aWYoZilyZXR1cm4gZn12YXIgZyxoPVthLm5hbWUsYS5pZCwoZz1hLmFyaWFMYWJlbCkhPW51bGw/Zzp2b2lkIDAsYS5wbGFjZWhvbGRlcl0sbD1hLnBhcmVudEVsZW1lbnQ7bCYmbC50YWdOYW1lPT09IkxBQkVMIiYmaC5wdXNoKGwuaW5uZXJUZXh0KTt2YXIgbj1hLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7biYmbi50YWdOYW1lPT09IkxBQkVMIiYmIW4uaHRtbEZvciYmaC5wdXNoKG4uaW5uZXJUZXh0KTtpZihhLmlkKXt2YXIgcD1bXTt0cnl7cD1kb2N1bWVudC5ib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoJ2xhYmVsW2Zvcj0iJysKYS5pZCsnIl0nKX1jYXRjaChEKXt9Zm9yKHZhciBxPTA7cTxwLmxlbmd0aDtxKyspaC5wdXNoKHBbcV0uaW5uZXJUZXh0KX1oPWguZmlsdGVyKGZ1bmN0aW9uKEQpe3JldHVybiBEJiZELnRyaW0oKX0pO2Zvcih2YXIgcix0PTAsdT0wO3U8aC5sZW5ndGg7dSsrKXt2YXIgdj1OSShhLGIsaFt1XSk7aWYodil7dmFyIHg9dix5PXguQ2Esej14LkRhLEM9eC5YcztDPnQmJih0PUMscj17Q2E6eSxEYTp6fSl9fXJldHVybiByfX0sTkk9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1iW2RdO2lmKEtJW2VdLm5lKXt2YXIgZj1LSVtlXS5uZS5leGVjKGMudHJpbSgpKTtpZihmKXt2YXIgZz1hLGg9W10sbD1nLnZhbHVlLnRyaW0oKTtsJiZoLnB1c2gobCk7aWYoZy50YWdOYW1lPT09IlNFTEVDVCIpdHJ5e3ZhciBuPWcucXVlcnlTZWxlY3RvcignW3ZhbHVlPSInK2cudmFsdWUrJyJdJykscD1uJiZuLmlubmVyVGV4dC50cmltKCk7cCYmaC5wdXNoKHApfWNhdGNoKHUpe31mb3IodmFyIHE9Cmgscj12b2lkIDAsdD0wO3Q8cS5sZW5ndGgmJiFyO3QrKylyPUtJW2VdLm5hKHFbdF0pO2lmKHIpcmV0dXJue0RhOmUsQ2E6cixYczpmWzBdLmxlbmd0aC9jLnRyaW0oKS5sZW5ndGh9fX19fSxNST1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF07aWYoS0lbZV0uYXV0b2NvbXBsZXRlJiZLSVtlXS5hdXRvY29tcGxldGUuaW5kZXhPZihjKT49MCl7dmFyIGY9S0lbZV0ubmEoYS50cmltKCkpO2lmKGYpcmV0dXJue0RhOmUsQ2E6Zn19fX0sQkk9ZnVuY3Rpb24oYSl7dmFyIGI9W107YS5lbWFpbCYmYi5wdXNoKEZELkJiKTthLnBob25lJiZiLnB1c2goRkQuZWUpO2EuYWRkcmVzcyYmYi5wdXNoKEZELlhkLEZELmNlLEZELnhmLEZELnFnLEZELktoKTtyZXR1cm4gYn0sQ0k9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9W10sZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hW2RdLGY9ZS5lbGVtZW50LGc9ZS5PYyxoO2E6e3ZhciBsPWYsbj1iLApwPWwuaW5uZXJIVE1MO1BJLmluZGV4T2YobC50YWdOYW1lKT49MCYmKHA9bC52YWx1ZXx8cCk7aWYocCl7dmFyIHE7Yjp7Zm9yKHZhciByPXAsdD1uLHU9MDt1PHQubGVuZ3RoO3UrKyl7dmFyIHY9dFt1XTtpZighS0lbdl0ubWUpe3ZhciB4PUtJW3ZdLm5hKHIudHJpbSgpKTtpZih4KXtxPXtEYTp2LENhOnh9O2JyZWFrIGJ9fX1xPXZvaWQgMH1pZihxKXtoPXE7YnJlYWsgYX1pZihQSS5pbmRleE9mKGwudGFnTmFtZSkhPT0tMSl7aD1PSShsLG4pO2JyZWFrIGF9fWg9dm9pZCAwfXZhciB5PWg7aWYoeSl7dmFyIHo9eTtjLnB1c2goe0NhOnouQ2EsRGE6ei5EYSxlbGVtZW50OmYsT2M6Z30pfX1yZXR1cm4gY30sRkk9ZnVuY3Rpb24oYSl7dmFyIGI9W107aWYoYS5sZW5ndGg9PT0wKXJldHVybiBiO3ZhciBjPXt9LGQ7Zm9yKGQgaW4gRkQpaWYoYz17Vmc6Yy5WZ30sYy5WZz1kLEZELmhhc093blByb3BlcnR5KGMuVmcpKXt2YXIgZT1hLmZpbHRlcihmdW5jdGlvbihmKXtyZXR1cm4gZnVuY3Rpb24oZyl7cmV0dXJuIGcuRGE9PT0KRkRbZi5WZ119fShjKSk7ZS5sZW5ndGghPT0wJiYoRkRbYy5WZ109PT1GRC5CYiYmKGU9UUkoZSxmdW5jdGlvbihmKXtyZXR1cm4hUkkudGVzdChmLkNhKX0pLGU9UUkoZSxmdW5jdGlvbihmKXtyZXR1cm4gZi5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCJ9KSxlPVFJKGUsZnVuY3Rpb24oZil7cmV0dXJuIXJJKGYuZWxlbWVudCl9KSksYi5wdXNoKGVbMF0pKX1yZXR1cm4gYn0sR0k9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuZWxlbWVudCxlPWEuT2MsZj17Q2E6YS5DYSx0eXBlOmEuRGEsdGFnTmFtZTpkLnRhZ05hbWV9O2lmKGIpe3ZhciBnLGg9U0koZCk7aWYoZz0oZT9lKyJ8IitoOmgpLnNsaWNlKDAsVEkpKWYucXVlcnlTZWxlY3Rvcj1nfWMmJihmLmlzVmlzaWJsZT0hckkoZCkpO2UmJihmLmRpPSEwKTtyZXR1cm4gZn0sekk9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGU7Yj1hLmluY2x1ZGVTZWxlY3RvcjtjPWEuaW5jbHVkZVZpc2liaWxpdHk7ZD1hLmV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzOwplPWEuZmllbGRGaWx0ZXJzO3ZhciBmPSEhYisiLiIrISFjO2QubGVuZ3RoJiYoZis9Ii4iK2Quam9pbigiLiIpKTtyZXR1cm4gZis9Ii4iK2UuZW1haWwrIi4iK2UucGhvbmUrIi4iK2UuYWRkcmVzc30sSUk9ZnVuY3Rpb24oYSl7aWYoYS5sZW5ndGghPT0wKXt2YXIgYjtiPVFJKGEsZnVuY3Rpb24oYyl7cmV0dXJuIVJJLnRlc3QoYy5DYSl9KTtiPVFJKGIsZnVuY3Rpb24oYyl7cmV0dXJuIGMuZWxlbWVudC50YWdOYW1lLnRvVXBwZXJDYXNlKCk9PT0iSU5QVVQifSk7Yj1RSShiLGZ1bmN0aW9uKGMpe3JldHVybiFySShjLmVsZW1lbnQpfSk7cmV0dXJuIGJbMF19fSxFST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspe2Zvcih2YXIgZT0hMCxmPTA7ZjxiLmxlbmd0aDtmKyspe3ZhciBnPWJbZl07aWYoZyYmcEkoYVtkXS5lbGVtZW50LGcpKXtlPSExO2JyZWFrfX1hW2RdLkRhPT09RkQuQmImJk0oNjAyKSYmKFJJLnRlc3QoYVtkXS5DYSl8fGFbZF0uZWxlbWVudC50YWdOYW1lLnRvVXBwZXJDYXNlKCk9PT0KIkEiJiZhW2RdLmVsZW1lbnQuaGFzQXR0cmlidXRlKCJocmVmIikmJmFbZF0uZWxlbWVudC5nZXRBdHRyaWJ1dGUoImhyZWYiKS5pbmRleE9mKCJtYWlsdG86IikhPT0tMT9lPSExOmFbZF0uZWxlbWVudC5jbG9zZXN0KCJmb290ZXIiKSE9PW51bGwmJihlPSExKSk7ZSYmYy5wdXNoKGFbZF0pfXJldHVybiBjfSxRST1mdW5jdGlvbihhLGIpe2lmKGEubGVuZ3RoPD0xKXJldHVybiBhO3ZhciBjPWEuZmlsdGVyKGIpO3JldHVybiBjLmxlbmd0aD09PTA/YTpjfSxTST1mdW5jdGlvbihhKXtpZihhPT09Qi5ib2R5KXJldHVybiJib2R5IjtpZihhLmlkKXJldHVybiIjIithLmlkO3ZhciBiPWEucGFyZW50RWxlbWVudDtpZihiKXt2YXIgYz1TSShiKSxkPVVJKGEsYiksZT1WSShhKSsiOm50aC1jaGlsZCgiK2QrIikiO3JldHVybiBjP2MrIj4iK2U6ZX12YXIgZj1hLnBhcmVudE5vZGU7aWYoZiBpbnN0YW5jZW9mIFNoYWRvd1Jvb3Qpe3ZhciBnPVVJKGEsZik7cmV0dXJuIFZJKGEpKyI6bnRoLWNoaWxkKCIrCmcrIikifXJldHVybiBhLnRhZ05hbWU/YS50YWdOYW1lLnRvTG93ZXJDYXNlKCk6IiJ9LFZJPWZ1bmN0aW9uKGEpe2lmKGEuY2xhc3NMaXN0JiZhLmNsYXNzTGlzdC5sZW5ndGg+MCl7dmFyIGI9QXJyYXkuZnJvbShhLmNsYXNzTGlzdCxmdW5jdGlvbihjKXtyZXR1cm4gQ1NTLmVzY2FwZShjKX0pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4gYy5sZW5ndGg+MH0pO2lmKGIubGVuZ3RoPjApcmV0dXJuIi4iK2Iuam9pbigiLiIpfXJldHVybiIifSxVST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1iLmNoaWxkcmVuLGQ9MDtkPGMubGVuZ3RoO2QrKylpZihjW2RdPT09YSlyZXR1cm4gZCsxO3JldHVybiAxfSxIST1mdW5jdGlvbihhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLGU9ZC5lbGVtZW50LGY9ZC5PYyxnPWUudGV4dENvbnRlbnQ7ZS50YWdOYW1lLnRvVXBwZXJDYXNlKCk9PT0iSU5QVVQiJiZlLnZhbHVlJiYoZz1lLnZhbHVlKTtpZihnKXt2YXIgaD0KZy5tYXRjaChLRCk7aWYoaCl7dmFyIGw9aFswXTtMRChsKXx8Yi5wdXNoKHtlbGVtZW50OmUsQ2E6bCxEYTpGRC5CYixPYzpmfSl9fX1yZXR1cm4gYn0sQUk9ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPUIuYm9keTtpZighYilyZXR1cm57ZWxlbWVudHM6YSxzdGF0dXM6IjQifTt2YXIgYz1XSShiLDAsIiIsYSk7cmV0dXJue2VsZW1lbnRzOmEsc3RhdHVzOmN9fSxXST1mdW5jdGlvbihhLGIsYyxkKXtmb3IodmFyIGU9YS5xdWVyeVNlbGVjdG9yQWxsKCIqIiksZj1lLmxlbmd0aD4xRTQ/IjIiOiIxIixnPTA7ZzxNYXRoLm1pbihlLmxlbmd0aCwxRTQpO2crKyl7dmFyIGg9ZVtnXTtpZighKFhJLmluZGV4T2YoaC50YWdOYW1lLnRvVXBwZXJDYXNlKCkpPj0wKSYmaC5jaGlsZHJlbiBpbnN0YW5jZW9mIEhUTUxDb2xsZWN0aW9uKXt2YXIgbD0hMTtpZihNKDU4MikmJmguc2hhZG93Um9vdCYmYjwxKXt2YXIgbj1TSShoKTtXSShoLnNoYWRvd1Jvb3QsYisxLGM/YysifCIrbjpuLGQpPT09IjIiJiYKKGY9IjIiKTtsPSEwfXZhciBwPSExO2lmKCFsKWZvcih2YXIgcT0wO3E8TWF0aC5taW4oaC5jaGlsZEVsZW1lbnRDb3VudCwxRTQpO3ErKylpZighKFlJLmluZGV4T2YoaC5jaGlsZHJlbltxXS50YWdOYW1lLnRvVXBwZXJDYXNlKCkpPj0wKSl7cD0hMDticmVha30oIXAmJiFsfHxNKDU2OCkmJlBJLmluZGV4T2YoaC50YWdOYW1lKSE9PS0xKSYmZC5wdXNoKHtlbGVtZW50OmgsT2M6Yj4wP2M6dm9pZCAwfSl9fXJldHVybiBmfSxSST0vc3VwcG9ydHxub3JlcGx5L2ksWEk9IlNDUklQVCBTVFlMRSBJTUcgU1ZHIFBBVEggQlIgTk9TQ1JJUFQgVEVYVEFSRUEiLnNwbGl0KCIgIiksWUk9WyJCUiJdLFRJPU5mKDcwLDUwKSxQST1bIklOUFVUIiwiU0VMRUNUIl0sTEk9InRleHQgdGVsIHNlYXJjaCBudW1iZXIgaGlkZGVuIGVtYWlsIHNlbGVjdC1vbmUiLnNwbGl0KCIgIiksWkk9UmVnRXhwKCJwaG9uZXxtb2JpbGV8Y29udGFjdC4/bnVtYmVyfHRlbGVmb25udW1tZXJ8dGVsZWZvbm98dGVsXHUwMGU5Zm9ub3x0ZWxmaXhlfFx1OTZmYlx1OGE3MXx0ZWxlZm9uZXx0ZWxlbW92ZWx8XHUwNDQyXHUwNDM1XHUwNDNiXHUwNDM1XHUwNDQ0XHUwNDNlXHUwNDNkfFx1MDkyZVx1MDk0Ylx1MDkyY1x1MDkzZVx1MDkwN1x1MDkzMnxcdTc1MzVcdThiZGR8XHU2MjRiXHU2NzNhXHU1M2Y3fFx1MGQyZVx1MGQ0YVx1MGQyY1x1MGQ0OFx1MGQzMlx1MGQ0ZFx1MjAwZHwoXnxbLV9dKXRlbFstX10/KFxcZCspKihcXFsuKlxcXSkqJHwoPzpcdWM4MDRcdWQ2NTR8XHVkNTc4XHViNGRjXHVkM2YwfFx1ZDczNFx1YjMwMFx1ZDNmMHxcdWQ3MzRcdWIzMDBcdWM4MDRcdWQ2NTQpKD86Lj9cdWJjODhcdWQ2MzgpP3woXFxifF98XFwqKXRlbGVmb24oXFxifF98XFwqKXx0ZWxlcG9ufHBvbnNlbHwobm9tb3J8bm9cXC4/KS4/KGhwfGhhbmRwaG9uZSkiLAoiaSIpLCRJPVJlZ0V4cCgiXm5hbWV8ZnVsbC4/bmFtZXx5b3VyLj9uYW1lfGN1c3RvbWVyLj9uYW1lfGJpbGwuP25hbWV8c2hpcC4/bmFtZXxuYW1lLipmaXJzdC4qbGFzdHxmaXJzdGFuZGxhc3RuYW1lfGNvbnRhY3QuPyhuYW1lfHBlcnNvbil8bm9tYnJlLip5LiphcGVsbGlkb3N8Xm5vbSg/IVthLXpBLVpdKXxcdTMwNGFcdTU0MGRcdTUyNGR8XHU2YzBmXHU1NDBkfF5ub21lfFx1MDY0Nlx1MDYyN1x1MDY0NS4qXHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2MmVcdTA2MjdcdTA2NDZcdTA2NDhcdTA2MjdcdTA2MmZcdTA2YWZcdTA2Y2N8XHU1OWQzXFxzKlx1NTQwZHxcdTA0M2FcdTA0M2VcdTA0M2RcdTA0NDJcdTA0MzBcdTA0M2FcdTA0NDJcdTA0M2RcdTA0M2VcdTA0MzUuP1x1MDQzYlx1MDQzOFx1MDQ0Nlx1MDQzZXwoXFxifF98XFwqKWFkW1x1MDEzMV0/IHNveWFkW1x1MDEzMV0/KFxcYnxffFxcKil8XHVjMTMxXHViYTg1fG5hbWEuPyhsZW5na2FwfHBlbmVyaW1hfGthbXUpIiwKImkiKSxhSj1SZWdFeHAoImZpcnN0LipuYW1lfGluaXRpYWxzfGZuYW1lfGZpcnN0JHxnaXZlbi4qbmFtZXx2b3JuYW1lfG5vbWJyZXxmb3JlbmFtZXxwclx1MDBlOW5vbXxwcmVub218XHU1NDBkfG5vbWV8XHUwNDE4XHUwNDNjXHUwNDRmfFx1MDY0Nlx1MDYyN1x1MDY0NXxcdWM3NzRcdWI5ODR8XHUwZDJhXHUwZDQ3XHUwZDMwXHUwZDRkfChcXGJ8X3xcXCopKGlzaW18YWR8YWQoaXxcdTAxMzF8aW5penxcdTAxMzFuXHUwMTMxeik/KShcXGJ8X3xcXCopfFx1MDkyOFx1MDkzZVx1MDkyZXxuYW1hIGRlcGFuIiwiaSIpLGJKPVJlZ0V4cCgibGFzdC4qbmFtZXxsbmFtZXxzdXJuYW1lKD8hXFxkKXxsYXN0JHxzZWNvbmRuYW1lfGZhbWlseS4qbmFtZXxuYWNobmFtZXxhcGVsbGlkb3M/fGZhbWlsbGV8Xm5vbSg/IVthLXpBLVpdKXxjb2dub21lfFx1NTlkM3xhcGVsaWRvc3xzdXJlbmFtZXxzb2JyZW5vbWV8XHUwNDI0XHUwNDMwXHUwNDNjXHUwNDM4XHUwNDNiXHUwNDM4XHUwNDRmfFx1MDY0Nlx1MDYyN1x1MDY0NS4qXHUwNjJlXHUwNjI3XHUwNjQ2XHUwNjQ4XHUwNjI3XHUwNjJmXHUwNmFmXHUwNmNjfFx1MDkwOVx1MDkyYVx1MDkyOFx1MDkzZVx1MDkyZXxcdTBkMmVcdTBkMzFcdTBkNDFcdTBkMmFcdTBkNDdcdTBkMzBcdTBkNGR8KFxcYnxffFxcKikoc295aXNpbXxzb3lhZChpfFx1MDEzMXxpbml6fFx1MDEzMW5cdTAxMzF6KT8pKFxcYnxffFxcKil8XFxiXHVjMTMxKD86W15cdWJhODVdfFxcYil8bmFtYSBiZWxha2FuZyIsCiJpIiksY0o9UmVnRXhwKCJjb3VudHJ5fGNvdW50cmllc3xwYVx1MDBlZHN8cGFpc3woXFxifF8pbGFuZChcXGJ8XykoPyEuKihtYXJrLiopKXwoXnxbXihcdTUxNjV8XHU1MWZhKV0pXHU1NmZkfFx1NTZmZFx1NWJiNnxcdWFkNmRcdWFjMDB8XHViMDk4XHViNzdjfChcXGJ8XykoXHUwMGZjbGtlfHVsY2V8dWxrZSkoXFxifF8pfFx1MDZhOVx1MDYzNFx1MDY0OFx1MDYzMXxuZWdhcmEiLCJpIiksZEo9UmVnRXhwKCIoXnxbXi5dKXppcHxwb3N0YWx8cG9zdC4qY29kZXxwY29kZXxwaW4uP2NvZGV8cG9zdGxlaXR6YWhsfFxcYmNwXFxifFxcYmNkcFxcYnxcXGJjYXBcXGJ8XHU5MGY1XHU0ZmJmXHU3NTZhXHU1M2Y3fGNvZGlnb3xjb2Rwb3N8XFxiY2VwXFxifFx1MDQxZlx1MDQzZVx1MDQ0N1x1MDQ0Mlx1MDQzZVx1MDQzMlx1MDQ0Ylx1MDQzOS4/XHUwNDE4XHUwNDNkXHUwNDM0XHUwNDM1XHUwNDNhXHUwNDQxfFx1MDkyYVx1MDkzZlx1MDkyOC4/XHUwOTE1XHUwOTRiXHUwOTIxfFx1MGQyYVx1MGQzZlx1MGQyOFx1MGQ0ZFx1MjAwZFx1MGQxNVx1MGQ0Ylx1MGQyMVx1MGQ0ZHxcdTkwYWVcdTY1M2ZcdTdmMTZcdTc4MDF8XHU5MGFlXHU3ZjE2fFx1OTBmNVx1OTA1ZVx1NTM0MFx1ODY1ZnwoXFxifF8pcG9zdGEga29kdShcXGJ8Xyl8XHVjNmIwXHVkM2I4Lj9cdWJjODhcdWQ2Mzh8a29kZS4/cG9zIiwKImkiKSxlSj17fSxLST0oZUpbRkQuQmJdPXttZTohMSxuYTpNRH0sZUpbRkQuZWVdPXttZTohMCxhdXRvY29tcGxldGU6WyJ0ZWwiLCJ0ZWwtbmF0aW9uYWwiLCJ0ZWwtbG9jYWwiXSxuZTpaSSxuYTpmdW5jdGlvbihhKXtyZXR1cm4gR0QoYSwhMCl9fSxlSltGRC5LaF09e21lOiEwLGF1dG9jb21wbGV0ZTpbIm5hbWUiLCJjYy1uYW1lIl0sbmU6JEksbmE6TkR9LGVKW0ZELlhkXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsiZ2l2ZW4tbmFtZSIsImNjLWdpdmVuLW5hbWUiXSxuZTphSixuYTpORH0sZUpbRkQuY2VdPXttZTohMCxhdXRvY29tcGxldGU6WyJmYW1pbHktbmFtZSIsImNjLWZhbWlseS1uYW1lIl0sbmU6YkosbmE6TkR9LGVKW0ZELnhmXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsiY291bnRyeSIsImNvdW50cnktbmFtZSJdLG5lOmNKLG5hOk5EfSxlSltGRC5xZ109e21lOiEwLGF1dG9jb21wbGV0ZTpbInBvc3RhbC1jb2RlIl0sbmU6ZEosbmE6SUR9LGVKKTtmdW5jdGlvbiBmSihhKXt2YXIgYjtMKHRoaXMsImRldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEiLCJhdXRvIik7dmFyIGM9VGQoYSl8fHt9LGQ9Skkoe2luY2x1ZGVTZWxlY3RvcjohIWMuaW5jbHVkZVNlbGVjdG9yLGluY2x1ZGVWaXNpYmlsaXR5OiEhYy5pbmNsdWRlVmlzaWJpbGl0eSxleGNsdWRlRWxlbWVudFNlbGVjdG9yczpjLmV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzLGZpZWxkRmlsdGVyczpjLmZpZWxkRmlsdGVycyxzZWxlY3RNdWx0aXBsZUVsZW1lbnRzOiEhYy5zZWxlY3RNdWx0aXBsZUVsZW1lbnRzfSk7Yj1uZXcga2I7dmFyIGU9bmV3IEdkO2Iuc2V0KCJlbGVtZW50cyIsZSk7Zm9yKHZhciBmPWQuZWxlbWVudHMsZz0wO2c8Zi5sZW5ndGg7ZysrKWUucHVzaChnSihmW2ddKSk7ZC5naSE9PXZvaWQgMCYmYi5zZXQoInByZWZlcnJlZEVtYWlsRWxlbWVudCIsCmdKKGQuZ2kpKTtiLnNldCgic3RhdHVzIixkLnN0YXR1cyk7aWYoYy5yZWFkRnJvbURhdGFMYXllcil7aEooZSxjKTt2YXIgaD1QRCgpLGw9aC5zdDtiLnNldCgiZGF0YUxheWVyU2VhcmNoVGltZSIsaC52dCk7Yi5zZXQoImRhdGFMYXllclNlYXJjaENvdW50IixsKX1yZXR1cm4gYn0KdmFyIGlKPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIEZELkJiOnJldHVybiJlbWFpbCI7Y2FzZSBGRC5lZTpyZXR1cm4icGhvbmVfbnVtYmVyIjtjYXNlIEZELlhkOnJldHVybiJmaXJzdF9uYW1lIjtjYXNlIEZELmNlOnJldHVybiJsYXN0X25hbWUiO2Nhc2UgRkQudGo6cmV0dXJuInN0cmVldCI7Y2FzZSBGRC5saTpyZXR1cm4iY2l0eSI7Y2FzZSBGRC5qajpyZXR1cm4icmVnaW9uIjtjYXNlIEZELnFnOnJldHVybiJwb3N0YWxfY29kZSI7Y2FzZSBGRC54ZjpyZXR1cm4iY291bnRyeSJ9fSxqSj1mdW5jdGlvbihhKXt2YXIgYj1uZXcga2IsYz1pSihhLkRhKTtjIT09dm9pZCAwJiZiLnNldCgidHlwZSIsYyk7Yi5zZXQoInVzZXJEYXRhIixhLkNhKTtiLnNldCgidGFnTmFtZSIsIkRMWVIiKTtyZXR1cm4gYn0saEo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1RRCgpO2lmKE0oNTY4KSlmb3IodmFyIGQ9bmV3IFNldChhLmhjKCkubWFwKGZ1bmN0aW9uKHIpe3JldHVybiByLmdldCgidHlwZSIpfSkpLAplPW0oYyksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPW0oZi52YWx1ZSksaD1nLm5leHQoKS52YWx1ZSxsPWcubmV4dCgpLnZhbHVlLG49aCxwPWw7aWYoYi5zZWxlY3RNdWx0aXBsZUVsZW1lbnRzKWEucHVzaChqSihwKSk7ZWxzZXt2YXIgcT1pSihuKTtxJiYhZC5oYXMocSkmJmEucHVzaChqSihwKSl9fWVsc2UgYy5oYXMoRkQuQmIpJiYoYi5zZWxlY3RNdWx0aXBsZUVsZW1lbnRzfHxhLmxlbmd0aCgpPT09MCkmJmEucHVzaChqSihjLmdldChGRC5CYikpKX0sZ0o9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IGtiO2Iuc2V0KCJ1c2VyRGF0YSIsYS5DYSk7Yi5zZXQoInRhZ05hbWUiLGEudGFnTmFtZSk7YS5xdWVyeVNlbGVjdG9yIT09dm9pZCAwJiZiLnNldCgicXVlcnlTZWxlY3RvciIsYS5xdWVyeVNlbGVjdG9yKTthLmlzVmlzaWJsZSE9PXZvaWQgMCYmYi5zZXQoImlzVmlzaWJsZSIsYS5pc1Zpc2libGUpO2lmKE0oNTY4KSl7dmFyIGM9aUooYS50eXBlKTtjIT09CnZvaWQgMCYmYi5zZXQoInR5cGUiLGMpfWVsc2Ugc3dpdGNoKGEudHlwZSl7Y2FzZSBGRC5CYjpiLnNldCgidHlwZSIsImVtYWlsIil9cmV0dXJuIGJ9O2ZKLlA9ImludGVybmFsLmRldGVjdFVzZXJQcm92aWRlZERhdGEiOwpmdW5jdGlvbiBtSihhLGIpe3JldHVybiBmfW1KLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uQ2xpY2siOwp2YXIgbko9ZnVuY3Rpb24oKXt0aGlzLkg9W107dGhpcy5OPSEhQS5NdXRhdGlvbk9ic2VydmVyfTtuSi5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj10aGlzO2lmKHRoaXMuSC5sZW5ndGg9PT0wKXt2YXIgYz1mdW5jdGlvbigpe3ZhciBkPUIuYm9keTtpZihkKWlmKGIuTikobmV3IE11dGF0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24oKXtmb3IodmFyIGY9MDtmPGIuSC5sZW5ndGg7ZisrKWJkKGIuSFtmXSl9KSkub2JzZXJ2ZShkLHtjaGlsZExpc3Q6ITAsc3VidHJlZTohMH0pO2Vsc2V7dmFyIGU9ITE7JGMoZCwiRE9NTm9kZUluc2VydGVkIixmdW5jdGlvbigpe2V8fChlPSEwLGJkKGZ1bmN0aW9uKCl7ZT0hMTtmb3IodmFyIGY9MDtmPGIuSC5sZW5ndGg7ZisrKWJkKGIuSFtmXSl9KSl9KX19O0IuYm9keT9jKCk6YmQoYyl9dGhpcy5ILnB1c2goYSl9O25KLnByb3RvdHlwZS5SPWZ1bmN0aW9uKGEpe2lmKHRoaXMuSClmb3IodmFyIGI9MDtiPHRoaXMuSC5sZW5ndGg7YisrKXRoaXMuSFtiXT09PQphJiZ0aGlzLkguc3BsaWNlKGIsMSl9O3ZhciBvSj1uZXcgbko7CmZ1bmN0aW9uIHRKKGEsYil7cmV0dXJuIHB9dEouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25FbGVtZW50VmlzaWJpbGl0eSI7ZnVuY3Rpb24gdUooKXt9dUouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25FcnJvciI7CmZ1bmN0aW9uIEFKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZH1BSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1JbnRlcmFjdGlvbiI7CmZ1bmN0aW9uIEZKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZn1GSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1TdWJtaXQiOwpmdW5jdGlvbiBLSigpe3ZhciBhPXRoaXM7fUtKLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uR2FTZW5kIjsKdmFyIE1KPWZ1bmN0aW9uKGEsYixjLGQpe2M9Yz09PXZvaWQgMD97fTpjO2Q9ZD09PXZvaWQgMD9bXTpkO3ZhciBlPSIiK2I7aWYoY1tlXSljW2VdLnB1c2goYSk7ZWxzZXt2YXIgZj1bYV07Y1tlXT1mO3ZhciBnPUxKKCJndG0uaGlzdG9yeUNoYW5nZS12MiIpLGg9LTE7ZC5wdXNoKGZ1bmN0aW9uKGwpe2g+PTAmJkEuY2xlYXJUaW1lb3V0KGgpO2I/aD1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtnKGwsZik7aD0tMX0sYik6ZyhsLGYpfSl9fSxMSj1mdW5jdGlvbihhKXt2YXIgYj1BLmxvY2F0aW9uLmhyZWYsYz17c291cmNlOm51bGwsc3RhdGU6QS5oaXN0b3J5LnN0YXRlfHxudWxsLHVybDpPaihSaihiKSksa2I6TGooUmooYiksImZyYWdtZW50Iil9O3JldHVybiBmdW5jdGlvbihkLGUpe3ZhciBmPWMsZz17fTtnW2Yuc291cmNlXT0hMDtnW2Quc291cmNlXT0hMDtpZighZy5wb3BzdGF0ZXx8IWcuaGFzaGNoYW5nZXx8Zi5rYiE9PWQua2Ipe3ZhciBoPXtldmVudDphLCJndG0uaGlzdG9yeUNoYW5nZVNvdXJjZSI6ZC5zb3VyY2UsCiJndG0ub2xkVXJsRnJhZ21lbnQiOmMua2IsImd0bS5uZXdVcmxGcmFnbWVudCI6ZC5rYiwiZ3RtLm9sZEhpc3RvcnlTdGF0ZSI6Yy5zdGF0ZSwiZ3RtLm5ld0hpc3RvcnlTdGF0ZSI6ZC5zdGF0ZSwiZ3RtLm9sZFVybCI6Yy51cmwsImd0bS5uZXdVcmwiOmQudXJsfTtlJiYoaFsiZ3RtLnRyaWdnZXJzIl09ZS5qb2luKCIsIikpO2M9ZDt1RShoKX19fSxOSj1mdW5jdGlvbihhLGIpe3ZhciBjPUEuaGlzdG9yeSxkPWNbYV07aWYoeWIoZCkpdHJ5e2NbYV09ZnVuY3Rpb24oZSxmLGcpe2QuYXBwbHkoYyxbXS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKSk7dmFyIGg9QS5sb2NhdGlvbi5ocmVmO2Ioe3NvdXJjZTphLHN0YXRlOmUsdXJsOk9qKFJqKGgpKSxrYjpMaihSaihoKSwiZnJhZ21lbnQiKX0pfX1jYXRjaChlKXt9fSxQSj1mdW5jdGlvbihhKXtBLmFkZEV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIixmdW5jdGlvbihiKXt2YXIgYz1PSihiKTthKHtzb3VyY2U6InBvcHN0YXRlIixzdGF0ZTpiLnN0YXRlLAp1cmw6T2ooUmooYykpLGtiOkxqKFJqKGMpLCJmcmFnbWVudCIpfSl9KX0sUUo9ZnVuY3Rpb24oYSl7QS5hZGRFdmVudExpc3RlbmVyKCJoYXNoY2hhbmdlIixmdW5jdGlvbihiKXt2YXIgYz1PSihiKTthKHtzb3VyY2U6Imhhc2hjaGFuZ2UiLHN0YXRlOm51bGwsdXJsOk9qKFJqKGMpKSxrYjpMaihSaihjKSwiZnJhZ21lbnQiKX0pfSl9LE9KPWZ1bmN0aW9uKGEpe3ZhciBiLGM7cmV0dXJuKChiPWEudGFyZ2V0KT09bnVsbD92b2lkIDA6KGM9Yi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmMuaHJlZil8fEEubG9jYXRpb24uaHJlZn07CmZ1bmN0aW9uIFJKKGEsYil7dmFyIGM9dGhpcztpZighZmgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdHx1bmRlZmluZWQiLCJhbnkiXSxhcmd1bWVudHMpO1RGKFtmdW5jdGlvbigpe0woYywiZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cyIpfV0pO3ZhciBkPWEmJmEuZ2V0KCJ1c2VWMkV2ZW50TmFtZSIpPyJlaGwiOiJobCIsZT1OdW1iZXIoYSYmYS5nZXQoImludGVydmFsIikpO2U+MCYmaXNGaW5pdGUoZSl8fChlPTApO3ZhciBmO2lmKCEkRihkLCJpbml0IiwhMSkpe3ZhciBnPXt9LGg9W10sbDtkPT09ImVobCI/KGw9ZnVuY3Rpb24ocCl7Zm9yKHZhciBxPTA7cTxoLmxlbmd0aDtxKyspaFtxXShwKX0sZj1aRihiKSxNSihmLGUsZyxoKSxhRyhkLCJyZWciLGZ1bmN0aW9uKHAscSl7TUoocCxxLGcsaCl9KSk6bD1MSigiZ3RtLmhpc3RvcnlDaGFuZ2UiKTsKUUoobCk7UEoobCk7TkooInB1c2hTdGF0ZSIsbCk7TkooInJlcGxhY2VTdGF0ZSIsbCk7YUcoZCwiaW5pdCIsITApfWVsc2UgaWYoZD09PSJlaGwiKXt2YXIgbj0kRihkLCJyZWciKTtuJiYoZj1aRihiKSxuKGYsZSkpfWQ9PT0iaGwiJiYoZj12b2lkIDApO3JldHVybiBmfVJKLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uSGlzdG9yeUNoYW5nZSI7dmFyIFNKPVsiaHR0cDovLyIsImh0dHBzOi8vIiwiamF2YXNjcmlwdDoiLCJmaWxlOi8vIl07CnZhciBUSj1mdW5jdGlvbihhLGIpe2lmKGEud2hpY2g9PT0yfHxhLmN0cmxLZXl8fGEuc2hpZnRLZXl8fGEuYWx0S2V5fHxhLm1ldGFLZXkpcmV0dXJuITE7dmFyIGM9b2QoYiwiaHJlZiIpO2lmKGMuaW5kZXhPZigiOiIpIT09LTEmJiFTSi5zb21lKGZ1bmN0aW9uKGgpe3JldHVybiBTYihjLGgpfSkpcmV0dXJuITE7dmFyIGQ9Yy5pbmRleE9mKCIjIiksZT1vZChiLCJ0YXJnZXQiKTtpZihlJiZlIT09Il9zZWxmIiYmZSE9PSJfcGFyZW50IiYmZSE9PSJfdG9wInx8ZD09PTApcmV0dXJuITE7aWYoZD4wKXt2YXIgZj1PaihSaihjKSksZz1PaihSaihBLmxvY2F0aW9uLmhyZWYpKTtyZXR1cm4gZiE9PWd9cmV0dXJuITB9LFVKPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPUxqKFJqKChiLmF0dHJpYnV0ZXMmJmIuYXR0cmlidXRlcy5mb3JtYWN0aW9uP2IuZm9ybUFjdGlvbjoiIil8fGIuYWN0aW9ufHxvZChiLCJocmVmIil8fGIuc3JjfHxiLmNvZGV8fGIuY29kZWJhc2V8fCIiKSwiaG9zdCIpLApkPTA7ZDxhLmxlbmd0aDtkKyspdHJ5e2lmKChuZXcgUmVnRXhwKGFbZF0pKS50ZXN0KGMpKXJldHVybiExfWNhdGNoKGUpe31yZXR1cm4hMH0sVko9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGMpe3ZhciBkPWMudGFyZ2V0O2lmKGQmJmMud2hpY2ghPT0zJiYhKGMuSHx8Yy50aW1lU3RhbXAmJmMudGltZVN0YW1wPT09Yikpe2I9Yy50aW1lU3RhbXA7ZD1oZChkLFsiYSIsImFyZWEiXSwxMDApO2lmKCFkKXJldHVybiBjLnJldHVyblZhbHVlO3ZhciBlPWMuZGVmYXVsdFByZXZlbnRlZHx8Yy5yZXR1cm5WYWx1ZT09PSExLGY9JEYoImxjbCIsZT8ibnYubXd0IjoibXd0IiwwKSxnO2c9ZT8kRigibGNsIiwibnYuaWRzIixbXSk6JEYoImxjbCIsImlkcyIsW10pO2Zvcih2YXIgaD1bXSxsPTA7bDxnLmxlbmd0aDtsKyspe3ZhciBuPWdbbF0scD0kRigibGNsIiwiYWZmLm1hcCIse30pW25dO3AmJiFVSihwLGQpfHxoLnB1c2gobil9aWYoaC5sZW5ndGgpe3ZhciBxPVRKKGMsZCkscj1lRyhkLCJndG0ubGlua0NsaWNrIiwKaCk7clsiZ3RtLmVsZW1lbnRUZXh0Il09ZmQoZCk7clsiZ3RtLndpbGxPcGVuSW5OZXdXaW5kb3ciXT0hcTtpZihxJiYhZSYmZiYmZC5ocmVmKXt2YXIgdD0hIUNiKFN0cmluZyhvZChkLCJyZWwiKXx8IiIpLnNwbGl0KCIgIiksZnVuY3Rpb24oeSl7cmV0dXJuIHkudG9Mb3dlckNhc2UoKT09PSJub3JlZmVycmVyIn0pLHU9QVsob2QoZCwidGFyZ2V0Iil8fCJfc2VsZiIpLnN1YnN0cmluZygxKV0sdj0hMCx4PXRFKGZ1bmN0aW9uKCl7dmFyIHk7aWYoeT12JiZ1KXt2YXIgejthOmlmKHQpe3ZhciBDO3RyeXtDPW5ldyBNb3VzZUV2ZW50KGMudHlwZSx7YnViYmxlczohMH0pfWNhdGNoKEQpe2lmKCFCLmNyZWF0ZUV2ZW50KXt6PSExO2JyZWFrIGF9Qz1CLmNyZWF0ZUV2ZW50KCJNb3VzZUV2ZW50cyIpO0MuaW5pdEV2ZW50KGMudHlwZSwhMCwhMCl9Qy5IPSEwO2MudGFyZ2V0LmRpc3BhdGNoRXZlbnQoQyk7ej0hMH1lbHNlIHo9ITE7eT0hen15JiYodS5sb2NhdGlvbi5ocmVmPW9kKGQsCiJocmVmIikpfSxmKTtpZihpRShyLHgsZikpdj0hMTtlbHNlIHJldHVybiBjLnByZXZlbnREZWZhdWx0JiZjLnByZXZlbnREZWZhdWx0KCksYy5yZXR1cm5WYWx1ZT0hMX1lbHNlIHNFKHIsZnVuY3Rpb24oKXt9LGZ8fDJFMyk7cmV0dXJuITB9fX12YXIgYj0wOyRjKEIsImNsaWNrIixhLCExKTskYyhCLCJhdXhjbGljayIsYSwhMSl9OwpmdW5jdGlvbiBXSihhLGIpe3ZhciBjPXRoaXM7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTt2YXIgZD1UZChhKTtURihbZnVuY3Rpb24oKXtMKGMsImRldGVjdF9saW5rX2NsaWNrX2V2ZW50cyIsZCl9XSk7dmFyIGU9ZCYmISFkLndhaXRGb3JUYWdzLGY9ZCYmISFkLmNoZWNrVmFsaWRhdGlvbixnPWQ/ZC5hZmZpbGlhdGVEb21haW5zOnZvaWQgMCxoPVpGKGIpO2lmKGUpe3ZhciBsPU51bWJlcihkLndhaXRGb3JUYWdzVGltZW91dCk7bD4wJiZpc0Zpbml0ZShsKXx8KGw9MkUzKTt2YXIgbj1mdW5jdGlvbihxKXtyZXR1cm4gTWF0aC5tYXgobCxxKX07ZEcoImxjbCIsIm13dCIsbiwwKTtmfHxkRygibGNsIiwibnYubXd0IixuLDApfXZhciBwPWZ1bmN0aW9uKHEpe3EucHVzaChoKTsKcmV0dXJuIHF9O2RHKCJsY2wiLCJpZHMiLHAsW10pO2Z8fGRHKCJsY2wiLCJudi5pZHMiLHAsW10pO2cmJmRHKCJsY2wiLCJhZmYubWFwIixmdW5jdGlvbihxKXtxW2hdPWc7cmV0dXJuIHF9LHt9KTskRigibGNsIiwiaW5pdCIsITEpfHwoVkooKSxhRygibGNsIiwiaW5pdCIsITApKTtyZXR1cm4gaH1XSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayI7CnZhciBYSj1mdW5jdGlvbihhKXtyZXR1cm4gJEYoInNkbCIsYSx7fSl9LFlKPWZ1bmN0aW9uKGEsYixjKXtpZihiKXt2YXIgZD1BcnJheS5pc0FycmF5KGEpP2E6W2FdO2RHKCJzZGwiLGMsZnVuY3Rpb24oZSl7Zm9yKHZhciBmPTA7ZjxkLmxlbmd0aDtmKyspe3ZhciBnPVN0cmluZyhkW2ZdKTtlLmhhc093blByb3BlcnR5KGcpfHwoZVtnXT1bXSk7ZVtnXS5wdXNoKGIpfXJldHVybiBlfSx7fSl9fSxhSz1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXtaSihhLGIpOyRKKGMsITApfXJldHVybiBjfSxiSz1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXtoP2c9QS5zZXRUaW1lb3V0KGMsZSk6KGc9MCxaSihhLGIpLCRKKGQpKTtoPSExfWZ1bmN0aW9uIGQoKXtmJiZiKCk7Zz9oPSEwOihnPUEuc2V0VGltZW91dChjLGUpLGFHKCJzZGwiLCJwZW5kaW5nIiwhMCkpfXZhciBlPTI1MCxmPSExO0Iuc2Nyb2xsaW5nRWxlbWVudCYmQi5kb2N1bWVudEVsZW1lbnQmJihlPTUwLGY9ITApO3ZhciBnPQowLGg9ITE7cmV0dXJuIGR9LCRKPWZ1bmN0aW9uKGEsYil7JEYoInNkbCIsImluaXQiLCExKSYmIWNLKCkmJihiP2FkKEEsInNjcm9sbGVuZCIsYSk6YWQoQSwic2Nyb2xsIixhKSxhZChBLCJyZXNpemUiLGEpLGFHKCJzZGwiLCJpbml0IiwhMSkpfSxaSj1mdW5jdGlvbihhLGIpe3ZhciBjPWIoKSxkPWMuZGVwdGhYLGU9Yy5kZXB0aFksZj1kL2Euc2Nyb2xsV2lkdGgqMTAwLGc9ZS9hLnNjcm9sbEhlaWdodCoxMDA7ZEsoZCwiaG9yaXoucGl4IiwiUElYRUxTIiwiaG9yaXpvbnRhbCIpO2RLKGYsImhvcml6LnBjdCIsIlBFUkNFTlQiLCJob3Jpem9udGFsIik7ZEsoZSwidmVydC5waXgiLCJQSVhFTFMiLCJ2ZXJ0aWNhbCIpO2RLKGcsInZlcnQucGN0IiwiUEVSQ0VOVCIsInZlcnRpY2FsIik7YUcoInNkbCIsInBlbmRpbmciLCExKX0sZEs9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9WEooYiksZj17fSxnO2ZvcihnIGluIGUpaWYoZj17cWY6Zi5xZn0sZi5xZj1nLGUuaGFzT3duUHJvcGVydHkoZi5xZikpe3ZhciBoPQpOdW1iZXIoZi5xZik7aWYoIShhPGgpKXt2YXIgbD17fTt1RSgobC5ldmVudD0iZ3RtLnNjcm9sbERlcHRoIixsWyJndG0uc2Nyb2xsVGhyZXNob2xkIl09aCxsWyJndG0uc2Nyb2xsVW5pdHMiXT1jLnRvTG93ZXJDYXNlKCksbFsiZ3RtLnNjcm9sbERpcmVjdGlvbiJdPWQsbFsiZ3RtLnRyaWdnZXJzIl09ZVtmLnFmXS5qb2luKCIsIiksbCkpO2RHKCJzZGwiLGIsZnVuY3Rpb24obil7cmV0dXJuIGZ1bmN0aW9uKHApe2RlbGV0ZSBwW24ucWZdO3JldHVybiBwfX0oZikse30pfX19LGZLPWZ1bmN0aW9uKCl7dmFyIGE9ZEcoInNkbCIsInNjciIsZnVuY3Rpb24oYyl7Y3x8KGM9Qi5zY3JvbGxpbmdFbGVtZW50fHxCLmJvZHkmJkIuYm9keS5wYXJlbnROb2RlKTtyZXR1cm4gY30sbnVsbCksYj1kRygic2RsIiwiZGVwdGgiLGZ1bmN0aW9uKGMpe2N8fChjPWVLKGEpKTtyZXR1cm4gY30pO3JldHVybntzY3JvbGxpbmdFbGVtZW50OmEsdnI6Yn19LGVLPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz0KMDtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZD1zSSgpLGU9ZC5oZWlnaHQ7Yj1NYXRoLm1heChhLnNjcm9sbExlZnQrZC53aWR0aCxiKTtjPU1hdGgubWF4KGEuc2Nyb2xsVG9wK2UsYyk7cmV0dXJue2RlcHRoWDpiLGRlcHRoWTpjfX19LGNLPWZ1bmN0aW9uKCl7cmV0dXJuISEoT2JqZWN0LmtleXMoWEooImhvcml6LnBpeCIpKS5sZW5ndGh8fE9iamVjdC5rZXlzKFhKKCJob3Jpei5wY3QiKSkubGVuZ3RofHxPYmplY3Qua2V5cyhYSigidmVydC5waXgiKSkubGVuZ3RofHxPYmplY3Qua2V5cyhYSigidmVydC5wY3QiKSkubGVuZ3RoKX07CmZ1bmN0aW9uIGdLKGEsYil7dmFyIGM9dGhpcztpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsImFueSJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3Rfc2Nyb2xsX2V2ZW50cyIpfV0pO3ZhciBkPWZLKCksZT1kLnNjcm9sbGluZ0VsZW1lbnQsZj1kLnZyO2lmKCFlKXJldHVybjt2YXIgZz1aRihiKSxoPVRkKGEpO3N3aXRjaChoLmhvcml6b250YWxUaHJlc2hvbGRVbml0cyl7Y2FzZSAiUElYRUxTIjpZSihoLmhvcml6b250YWxUaHJlc2hvbGRzLGcsImhvcml6LnBpeCIpO2JyZWFrO2Nhc2UgIlBFUkNFTlQiOllKKGguaG9yaXpvbnRhbFRocmVzaG9sZHMsZywiaG9yaXoucGN0Iil9c3dpdGNoKGgudmVydGljYWxUaHJlc2hvbGRVbml0cyl7Y2FzZSAiUElYRUxTIjpZSihoLnZlcnRpY2FsVGhyZXNob2xkcywKZywidmVydC5waXgiKTticmVhaztjYXNlICJQRVJDRU5UIjpZSihoLnZlcnRpY2FsVGhyZXNob2xkcyxnLCJ2ZXJ0LnBjdCIpfSRGKCJzZGwiLCJpbml0IiwhMSk/JEYoInNkbCIsInBlbmRpbmciLCExKXx8YmQoZnVuY3Rpb24oKXtaSihlLGYpfSk6KGFHKCJzZGwiLCJpbml0IiwhMCksYUcoInNkbCIsInBlbmRpbmciLCEwKSxiZChmdW5jdGlvbigpe1pKKGUsZik7aWYoY0soKSl7dmFyIGw9YksoZSxmKTsib25zY3JvbGxlbmQiaW4gQT8obD1hSyhlLGYpLCRjKEEsInNjcm9sbGVuZCIsbCkpOiRjKEEsInNjcm9sbCIsbCk7JGMoQSwicmVzaXplIixsKX1lbHNlIGFHKCJzZGwiLCJpbml0IiwhMSl9KSk7cmV0dXJuIGd9Z0suUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25TY3JvbGwiO2Z1bmN0aW9uIGhLKGEpe3JldHVybiBmdW5jdGlvbigpe2lmKGEubGltaXQmJmEuZ2s+PWEubGltaXQpYS5haSYmQS5jbGVhckludGVydmFsKGEuYWkpO2Vsc2V7YS5naysrO3ZhciBiPU5iKCk7dUUoe2V2ZW50OmEuZXZlbnROYW1lLCJndG0udGltZXJJZCI6YS5haSwiZ3RtLnRpbWVyRXZlbnROdW1iZXIiOmEuZ2ssImd0bS50aW1lckludGVydmFsIjphLmludGVydmFsLCJndG0udGltZXJMaW1pdCI6YS5saW1pdCwiZ3RtLnRpbWVyU3RhcnRUaW1lIjphLk1vLCJndG0udGltZXJDdXJyZW50VGltZSI6YiwiZ3RtLnRpbWVyRWxhcHNlZFRpbWUiOmItYS5NbywiZ3RtLnRyaWdnZXJzIjphLkx0fSl9fX0KZnVuY3Rpb24gaUsoYSxiKXsKcmV0dXJuIGZ9aUsuUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25UaW1lciI7CnZhciBqSz1mdW5jdGlvbihhLGIsYyl7ZnVuY3Rpb24gZCgpe3ZhciBnPWEoKTtmKz1lPyhOYigpLWUpKmcucGxheWJhY2tSYXRlLzFFMzowO2U9TmIoKX12YXIgZT0wLGY9MDtyZXR1cm57Y3JlYXRlRXZlbnQ6ZnVuY3Rpb24oZyxoLGwpe3ZhciBuPWEoKSxwPW4uV24scT1sP01hdGgucm91bmQobCk6aD9NYXRoLnJvdW5kKG4uV24qaCk6TWF0aC5yb3VuZChuLkdyKSxyPWghPT12b2lkIDA/TWF0aC5yb3VuZChoKjEwMCk6cDw9MD8wOk1hdGgucm91bmQocS9wKjEwMCksdD1CLmhpZGRlbj8hMTp0SShjKT49LjU7ZCgpO3ZhciB1PXZvaWQgMDtiIT09dm9pZCAwJiYodT1bYl0pO3ZhciB2PWVHKGMsImd0bS52aWRlbyIsdSk7dlsiZ3RtLnZpZGVvUHJvdmlkZXIiXT0ieW91dHViZSI7dlsiZ3RtLnZpZGVvU3RhdHVzIl09Zzt2WyJndG0udmlkZW9VcmwiXT1uLnVybDt2WyJndG0udmlkZW9UaXRsZSJdPW4udGl0bGU7dlsiZ3RtLnZpZGVvRHVyYXRpb24iXT1NYXRoLnJvdW5kKHApO3ZbImd0bS52aWRlb0N1cnJlbnRUaW1lIl09Ck1hdGgucm91bmQocSk7dlsiZ3RtLnZpZGVvRWxhcHNlZFRpbWUiXT1NYXRoLnJvdW5kKGYpO3ZbImd0bS52aWRlb1BlcmNlbnQiXT1yO3ZbImd0bS52aWRlb1Zpc2libGUiXT10O3JldHVybiB2fSxtdDpmdW5jdGlvbigpe2U9TmIoKX0sQmo6ZnVuY3Rpb24oKXtkKCl9fX07dmFyIEFjPUFhKFsiZGF0YS1ndG0teXQtaW5zcGVjdGVkLSJdKSxrSz1bInd3dy55b3V0dWJlLmNvbSIsInd3dy55b3V0dWJlLW5vY29va2llLmNvbSJdLGxLOwp2YXIgbUs9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEubWFwKGZ1bmN0aW9uKGcpe3JldHVybnt0ZTpnLEpvOmcsd286dm9pZCAwfX0pO2lmKCFiLmxlbmd0aClyZXR1cm4gZDt2YXIgZT1iLm1hcChmdW5jdGlvbihnKXtyZXR1cm57dGU6ZypjLEpvOnZvaWQgMCx3bzpnfX0pO2lmKCFkLmxlbmd0aClyZXR1cm4gZTt2YXIgZj1kLmNvbmNhdChlKTtmLnNvcnQoZnVuY3Rpb24oZyxoKXtyZXR1cm4gZy50ZS1oLnRlfSk7cmV0dXJuIGZ9LG5LPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphO2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspYVtjXTwwfHxiLnB1c2goYVtjXSk7Yi5zb3J0KGZ1bmN0aW9uKGQsZSl7cmV0dXJuIGQtZX0pO3JldHVybiBifSxvSz1mdW5jdGlvbihhKXthPWE9PT12b2lkIDA/W106YTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKWFbY10+MTAwfHxhW2NdPDB8fChiW2NdPWFbY10vMTAwKTtiLnNvcnQoZnVuY3Rpb24oZCxlKXtyZXR1cm4gZC0KZX0pO3JldHVybiBifSxwSz1mdW5jdGlvbihhLGIpe3ZhciBjLGQ7ZnVuY3Rpb24gZSgpe3Q9aksoZnVuY3Rpb24oKXtyZXR1cm57dXJsOngsdGl0bGU6eSxXbjp2LEdyOmEuZ2V0Q3VycmVudFRpbWUoKSxwbGF5YmFja1JhdGU6en19LGIucmYsYS5nZXRJZnJhbWUoKSk7dj0wO3k9eD0iIjt6PTE7cmV0dXJuIGZ9ZnVuY3Rpb24gZihHKXtzd2l0Y2goRyl7Y2FzZSAxOnY9TWF0aC5yb3VuZChhLmdldER1cmF0aW9uKCkpO3g9YS5nZXRWaWRlb1VybCgpO2lmKGEuZ2V0VmlkZW9EYXRhKXt2YXIgTj1hLmdldFZpZGVvRGF0YSgpO3k9Tj9OLnRpdGxlOiIifXo9YS5nZXRQbGF5YmFja1JhdGUoKTtiLnlyP3VFKHQuY3JlYXRlRXZlbnQoInN0YXJ0IikpOnQuQmooKTt1PW1LKGIuZXQsYi5jdCxhLmdldER1cmF0aW9uKCkpO3JldHVybiBnKEcpO2RlZmF1bHQ6cmV0dXJuIGZ9fWZ1bmN0aW9uIGcoKXtDPWEuZ2V0Q3VycmVudFRpbWUoKTtEPU1iKCkuZ2V0VGltZSgpO3QubXQoKTtyKCk7cmV0dXJuIGh9CmZ1bmN0aW9uIGgoRyl7dmFyIE47c3dpdGNoKEcpe2Nhc2UgMDpyZXR1cm4gbihHKTtjYXNlIDI6Tj0icGF1c2UiO2Nhc2UgMzp2YXIgUz1hLmdldEN1cnJlbnRUaW1lKCktQztOPU1hdGguYWJzKChNYigpLmdldFRpbWUoKS1EKS8xRTMqei1TKT4xPyJzZWVrIjpOfHwiYnVmZmVyaW5nIjthLmdldEN1cnJlbnRUaW1lKCkmJihiLnhyP3VFKHQuY3JlYXRlRXZlbnQoTikpOnQuQmooKSk7cSgpO3JldHVybiBsO2Nhc2UgLTE6cmV0dXJuIGUoRyk7ZGVmYXVsdDpyZXR1cm4gaH19ZnVuY3Rpb24gbChHKXtzd2l0Y2goRyl7Y2FzZSAwOnJldHVybiBuKEcpO2Nhc2UgMTpyZXR1cm4gZyhHKTtjYXNlIC0xOnJldHVybiBlKEcpO2RlZmF1bHQ6cmV0dXJuIGx9fWZ1bmN0aW9uIG4oKXtmb3IoO2Q7KXt2YXIgRz1jO0EuY2xlYXJUaW1lb3V0KGQpO0coKX1iLndyJiZ1RSh0LmNyZWF0ZUV2ZW50KCJjb21wbGV0ZSIsMSkpO3JldHVybiBlKC0xKX1mdW5jdGlvbiBwKCl7fWZ1bmN0aW9uIHEoKXtkJiYKKEEuY2xlYXJUaW1lb3V0KGQpLGQ9MCxjPXApfWZ1bmN0aW9uIHIoKXtpZih1Lmxlbmd0aCYmeiE9PTApe3ZhciBHPS0xLE47ZG97Tj11WzBdO2lmKE4udGU+YS5nZXREdXJhdGlvbigpKXJldHVybjtHPShOLnRlLWEuZ2V0Q3VycmVudFRpbWUoKSkvejtpZihHPDAmJih1LnNoaWZ0KCksdS5sZW5ndGg9PT0wKSlyZXR1cm59d2hpbGUoRzwwKTtjPWZ1bmN0aW9uKCl7ZD0wO2M9cDt1Lmxlbmd0aD4wJiZ1WzBdLnRlPT09Ti50ZSYmKHUuc2hpZnQoKSx1RSh0LmNyZWF0ZUV2ZW50KCJwcm9ncmVzcyIsTi53byxOLkpvKSkpO3IoKX07ZD1BLnNldFRpbWVvdXQoYyxHKjFFMyl9fXZhciB0LHU9W10sdix4LHkseixDLEQsST1lKC0xKTtkPTA7Yz1wO3JldHVybntvblN0YXRlQ2hhbmdlOmZ1bmN0aW9uKEcpe0k9SShHKX0sb25QbGF5YmFja1JhdGVDaGFuZ2U6ZnVuY3Rpb24oRyl7Qz1hLmdldEN1cnJlbnRUaW1lKCk7RD1NYigpLmdldFRpbWUoKTt0LkJqKCk7ej1HO3EoKTtyKCl9fX0scks9CmZ1bmN0aW9uKGEpe2JkKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYigpe2Zvcih2YXIgZD1jLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJpZnJhbWUiKSxlPWQubGVuZ3RoLGY9MDtmPGU7ZisrKXFLKGRbZl0sYSl9dmFyIGM9QjtiKCk7b0ouSyhiKX0pfSxxSz1mdW5jdGlvbihhLGIpe2lmKCFhLmdldEF0dHJpYnV0ZSgiZGF0YS1ndG0teXQtaW5zcGVjdGVkLSIrYi5yZikmJihDYyhhLCJkYXRhLWd0bS15dC1pbnNwZWN0ZWQtIitiLnJmKSxzSyhhLGIuY28pKSl7YS5pZHx8KGEuaWQ9dEsoKSk7dmFyIGM9QS5ZVCxkPWMuZ2V0KGEuaWQpO2R8fChkPW5ldyBjLlBsYXllcihhLmlkKSk7dmFyIGU9cEsoZCxiKSxmPXt9LGc7Zm9yKGcgaW4gZSlmPXtNZzpmLk1nfSxmLk1nPWcsZS5oYXNPd25Qcm9wZXJ0eShmLk1nKSYmZC5hZGRFdmVudExpc3RlbmVyKGYuTWcsZnVuY3Rpb24oaCl7cmV0dXJuIGZ1bmN0aW9uKGwpe3JldHVybiBlW2guTWddKGwuZGF0YSl9fShmKSl9fSxzSz1mdW5jdGlvbihhLApiKXt2YXIgYz1hLmdldEF0dHJpYnV0ZSgic3JjIik7aWYodUsoYywiZW1iZWQvIikpe2lmKGMuaW5kZXhPZigiZW5hYmxlanNhcGk9MSIpPjApcmV0dXJuITA7aWYoYil7dmFyIGQ7dmFyIGU9Yy5pbmRleE9mKCI/IikhPT0tMT8iJiI6Ij8iO2MuaW5kZXhPZigib3JpZ2luPSIpPi0xP2Q9YytlKyJlbmFibGVqc2FwaT0xIjoobEt8fChsSz1CLmxvY2F0aW9uLnByb3RvY29sKyIvLyIrQi5sb2NhdGlvbi5ob3N0bmFtZSxCLmxvY2F0aW9uLnBvcnQmJihsSys9IjoiK0IubG9jYXRpb24ucG9ydCkpLGQ9YytlKyJlbmFibGVqc2FwaT0xJm9yaWdpbj0iK2VuY29kZVVSSUNvbXBvbmVudChsSykpO3ZhciBmO2Y9amMoZCk7YS5zcmM9a2MoZikudG9TdHJpbmcoKTtyZXR1cm4hMH19cmV0dXJuITF9LHVLPWZ1bmN0aW9uKGEsYil7aWYoIWEpcmV0dXJuITE7Zm9yKHZhciBjPTA7YzxrSy5sZW5ndGg7YysrKWlmKGEuaW5kZXhPZigiLy8iK2tLW2NdKyIvIitiKT49MClyZXR1cm4hMDtyZXR1cm4hMX0sCnRLPWZ1bmN0aW9uKCl7dmFyIGE9IiIrTWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpKjFFOSk7cmV0dXJuIEIuZ2V0RWxlbWVudEJ5SWQoYSk/dEsoKTphfTsKZnVuY3Rpb24gdksoYSxiKXt2YXIgYz10aGlzO3ZhciBkPWZ1bmN0aW9uKCl7cksocSl9O2lmKCFlaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0IiwiYW55Il0sYXJndW1lbnRzKTtURihbZnVuY3Rpb24oKXtMKGMsImRldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cyIse2ZpeE1pc3NpbmdBcGk6ISFhLmdldCgiZml4TWlzc2luZ0FwaSIpfSl9XSk7dmFyIGU9WkYoYiksZj0hIWEuZ2V0KCJjYXB0dXJlU3RhcnQiKSxnPSEhYS5nZXQoImNhcHR1cmVDb21wbGV0ZSIpLGg9ISFhLmdldCgiY2FwdHVyZVBhdXNlIiksbD1vSyhUZChhLmdldCgicHJvZ3Jlc3NUaHJlc2hvbGRzUGVyY2VudCIpKSksbj1uSyhUZChhLmdldCgicHJvZ3Jlc3NUaHJlc2hvbGRzVGltZUluU2Vjb25kcyIpKSkscD0hIWEuZ2V0KCJmaXhNaXNzaW5nQXBpIik7CmlmKCEoZnx8Z3x8aHx8bC5sZW5ndGh8fG4ubGVuZ3RoKSlyZXR1cm47dmFyIHE9e3lyOmYsd3I6Zyx4cjpoLGN0OmwsZXQ6bixjbzpwLHJmOmV9LHI9QS5ZVDtpZihyKXJldHVybiByLnJlYWR5JiZyLnJlYWR5KGQpLGU7dmFyIHQ9QSx1PXQub25Zb3VUdWJlSWZyYW1lQVBJUmVhZHk7dC5vbllvdVR1YmVJZnJhbWVBUElSZWFkeT1mdW5jdGlvbigpe3UmJnUoKTtkKCl9O2JkKGZ1bmN0aW9uKCl7Zm9yKHZhciB2PUIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpLHg9di5sZW5ndGgseT0wO3k8eDt5Kyspe3ZhciB6PXZbeV0uZ2V0QXR0cmlidXRlKCJzcmMiKTtpZih1Syh6LCJpZnJhbWVfYXBpIil8fHVLKHosInBsYXllcl9hcGkiKSlyZXR1cm4gZX1mb3IodmFyIEM9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaWZyYW1lIiksRD1DLmxlbmd0aCxJPWFsKDUsZnVuY3Rpb24oKXtyZXR1cm4hMX0pLEc9MDtHPEQ7RysrKWlmKCFJJiZzSyhDW0ddLHEuY28pKXJldHVybiBVYygiaHR0cHM6Ly93d3cueW91dHViZS5jb20vaWZyYW1lX2FwaSIpLApaayg1LCEwKSxlfSk7cmV0dXJuIGV9dksuUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Zb3VUdWJlQWN0aXZpdHkiO2Z1bmN0aW9uIHdLKGEsYil7aWYoIWxoKGEpfHwhZmgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsIk9iamVjdHx1bmRlZmluZWQiXSxhcmd1bWVudHMpO3ZhciBjPWI/VGQoYik6e307Yy5yZWdleENhY2hlPWFsKDMsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE1hcH0pO3JldHVybiBHaChhLGMpfXdLLlA9ImludGVybmFsLmV2YWx1YXRlQm9vbGVhbkV4cHJlc3Npb24iO2Z1bmN0aW9uIHhLKGEpe3ZhciBiPSExO3JldHVybiBifXhLLlA9ImludGVybmFsLmV2YWx1YXRlTWF0Y2hpbmdSdWxlcyI7dmFyIHlLPW5ldyBNYXAoW1siYXciLDRdXSk7ZnVuY3Rpb24geksoYSl7dmFyIGI9dnJbYV0sYz15Sy5nZXQoYSk7cmV0dXJuIGM/KHdxKGIsYyl8fFtdKS5zb21lKGZ1bmN0aW9uKGQpe3JldHVybiBkLm09PT0iMCJ8fGQubT09PXZvaWQgMH0pOiExfQpmdW5jdGlvbiBBSyhhLGIpe2lmKE0oNDk1KSl7Zm9yKHZhciBjPW5ldyBNYXAsZD1tKHlLKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9bShlLnZhbHVlKSxnPWYubmV4dCgpLnZhbHVlLGg9Zi5uZXh0KCkudmFsdWUsbD1nLG49YVtsXSxwPUFycmF5LmlzQXJyYXkobik/blswXTpuO2lmKHAhPT12b2lkIDApe3ZhciBxPXt9LHI9KHEuaz1wLHEuaT1TdHJpbmcoTWF0aC5mbG9vcihEYXRlLm5vdygpLzFFMykpLHEuYj1bXSxxLm09IjEiLHEpLHQ9YXEocixoKTt0JiYoeksobCl8fGMuc2V0KGwsdCkpfX1pZihjLnNpemUpe3ZhciB1LHY9W10seD1iLnBhdGh8fCIvIjt2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCJwIikrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh4KSk7Yi5BciYmdi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudCgiY2UiKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiLkFyKSkpO3ZhciB5PWIuZG9tYWluJiZiLmRvbWFpbiE9PSJhdXRvIj8KYi5kb21haW46ImF1dG86IitBLmxvY2F0aW9uLmhvc3RuYW1lO3YucHVzaChlbmNvZGVVUklDb21wb25lbnQoImQiKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KHkpKTtmb3IodmFyIHo9bShjKSxDPXoubmV4dCgpOyFDLmRvbmU7Qz16Lm5leHQoKSl7dmFyIEQ9bShDLnZhbHVlKSxJPUQubmV4dCgpLnZhbHVlLEc9RC5uZXh0KCkudmFsdWU7di5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChJKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KEcpKX11PSJfL3NldF9jb29raWU/Iit2LmpvaW4oIiYiKTt2YXIgTixTPUUoNTgpO049RWYodSxTKTt2YXIgVz1YaigpKyIvIitOO21kKFcpfX19O2Z1bmN0aW9uIEJLKGEpe3JldHVybiJDV1ZXZWJWaWV3TWVzc2FnZSJpbiBhfWZ1bmN0aW9uIENLKGEpe3ZhciBiPUEsYz1iLndlYmtpdDtkZWxldGUgYi53ZWJraXQ7YShiLndlYmtpdCk7Yi53ZWJraXQ9Y31mdW5jdGlvbiBESyhhLGIpe3ZhciBjPXthY3Rpb246ImdjbF9zZXR1cCJ9O2lmKEJLKGEubWVzc2FnZUhhbmRsZXJzKSlyZXR1cm4gYS5tZXNzYWdlSGFuZGxlcnMuQ1dWV2ViVmlld01lc3NhZ2UucG9zdE1lc3NhZ2Uoe2NvbW1hbmQ6YixwYXlsb2FkOmN9KSwhMDt2YXIgZD1hLm1lc3NhZ2VIYW5kbGVyc1tiXTtyZXR1cm4gZD8oZC5wb3N0TWVzc2FnZShjKSwhMCk6ITF9O3ZhciBFSz17fSxGSz0oRUsuYXdiPXtub3RGb3VuZDoxNzh9LEVLLnl0Yj17bm90Rm91bmQ6MTk0fSxFSyk7ZnVuY3Rpb24gR0soYSl7dmFyIGIsYz0oYj1GS1thXSk9PW51bGw/dm9pZCAwOmIubm90Rm91bmQ7YyYmUChjKX0KZnVuY3Rpb24gSEsoYSl7aWYoIW5tKGptLmJhLmpuKSYmIndlYmtpdCJpbiBBJiZBLndlYmtpdC5tZXNzYWdlSGFuZGxlcnMpe3ZhciBiPWZ1bmN0aW9uKCl7dHJ5e0NLKGZ1bmN0aW9uKGMpe2lmKGMpe3ZhciBkO2Q9QksoYy5tZXNzYWdlSGFuZGxlcnMpfHwiYXdiImluIGMubWVzc2FnZUhhbmRsZXJzP3tjb21tYW5kOiJhd2IiLHNvdXJjZTo1fTooQksoYy5tZXNzYWdlSGFuZGxlcnMpfHwieXRiImluIGMubWVzc2FnZUhhbmRsZXJzKSYmTSg0OTkpP3tjb21tYW5kOiJ5dGIiLHNvdXJjZTo4fTp2b2lkIDA7ZCYmKG1tKGptLmJhLmpuLGZ1bmN0aW9uKGUpe3ZhciBmPWQuc291cmNlO2UuZ2NsaWQmJmxzKCJnY2xfYXciLGUuZ2NsaWQsZixhKTtlLndicmFpZCYmbHMoImdjbF9nYiIsZS53YnJhaWQsZixhKX0pLERLKGMsZC5jb21tYW5kKXx8R0soZC5jb21tYW5kKSl9fSl9Y2F0Y2goYyl7UCgxOTMpfX07SGwoZnVuY3Rpb24oKXtCcihmcCk/YigpOklsKGIsZnApfSxmcCl9fTt2YXIgSUs9WyJodHRwczovL3d3dy5nb29nbGUuY29tIiwiaHR0cHM6Ly93d3cueW91dHViZS5jb20iLCJodHRwczovL20ueW91dHViZS5jb20iXTtmdW5jdGlvbiBKSyhhKXtyZXR1cm4gYS5kYXRhLmFjdGlvbiE9PSJnY2xfdHJhbnNmZXIiPyhQKDE3MyksITApOmEuZGF0YS5nYWRTb3VyY2U/YS5kYXRhLmdjbGlkPyExOihQKDE4MSksITApOihQKDE4MCksITApfQpmdW5jdGlvbiBLSyhhLGIpe2lmKCFhfHxNKGEpKXtpZihubShqbS5iYS5WZSkpcmV0dXJuIFAoMTc2KSxqbS5iYS5WZTtpZihubShqbS5iYS5tbikpcmV0dXJuIFAoMTcwKSxqbS5iYS5WZTt2YXIgYz1GcCgpO2lmKCFjKVAoMTcxKTtlbHNlIGlmKGMub3BlbmVyKXt2YXIgZD1mdW5jdGlvbihnKXtpZighSUsuaW5jbHVkZXMoZy5vcmlnaW4pKVAoMTcyKTtlbHNlIGlmKCFKSyhnKSl7dmFyIGg9e2dhZFNvdXJjZTpnLmRhdGEuZ2FkU291cmNlfTtoLmdjbGlkPWcuZGF0YS5nY2xpZDttbShqbS5iYS5WZSxoKTtiJiZnLmRhdGEuZ2NsaWQmJmxzKCJnY2xfYXciLFN0cmluZyhnLmRhdGEuZ2NsaWQpLDYsYik7dmFyIGw7KGw9Zy5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24pPT1udWxsfHxsLmNhbGwoZyk7bnQoYywibWVzc2FnZSIsZCl9fTtpZihtdChjLCJtZXNzYWdlIixkKSl7bW0oam0uYmEubW4sITApO2Zvcih2YXIgZT1tKElLKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSljLm9wZW5lci5wb3N0TWVzc2FnZSh7YWN0aW9uOiJnY2xfc2V0dXAifSwKZi52YWx1ZSk7UCgxNzQpO3JldHVybiBqbS5iYS5WZX1QKDE3NSl9fX07CnZhciBMSz1mdW5jdGlvbihhKXt2YXIgYj17cHJlZml4Ok8oYS5NLEYuRC5GZCl8fE8oYS5NLEYuRC5uYiksZG9tYWluOk8oYS5NLEYuRC5MYikscGQ6TyhhLk0sRi5ELkNiKSxmbGFnczpPKGEuTSxGLkQuVGIpfTthLk0uaXNHdG1FdmVudCYmKGIucGF0aD1PKGEuTSxGLkQudmMpKTtyZXR1cm4gYn0sTUs9ZnVuY3Rpb24oYSxiKXtpZighUShhLEguSi5XZSkpe3ZhciBjPUtLKDExOSk7aWYoYyl7dmFyIGQ9bm0oYyksZT1mdW5jdGlvbihnKXtWKGEsSC5KLldlLCEwKTt2YXIgaD1SKGEsRi5ELnpmKSxsPVIoYSxGLkQuQWYpO1UoYSxGLkQuemYsU3RyaW5nKGcuZ2FkU291cmNlKSk7VShhLEYuRC5BZiw2KTtWKGEsSC5KLnNhKTtWKGEsSC5KLnVnKTtVKGEsRi5ELnNhKTtiKCk7VShhLEYuRC56ZixoKTtVKGEsRi5ELkFmLGwpO1YoYSxILkouV2UsITEpfTtpZihkKWUoZCk7ZWxzZXt2YXIgZj12b2lkIDA7Zj1wbShjLGZ1bmN0aW9uKGcsaCl7ZShoKTtxbShjLGYpfSl9fX19LFBLPWZ1bmN0aW9uKGEpe3ZhciBiLApjLGQsZTtiPWEuVG47Yz1hLm1vO2Q9YS5RbztlPWEuVW47aWYoYil7aWYoZHIoY1tGLkQuWGZdLCEhY1tGLkQuQWFdKSl7aWYoV2ooKSYmQnIoQXIoKSkpe2Zvcih2YXIgZj1VcSghMCksZz17fSxoPW0oT2JqZWN0LmtleXModnIpKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSl7dmFyIG49bC52YWx1ZSxwPXZyW25dLHE9ZltwXTtpZihxKXt2YXIgcj0kcChxLDQpO3ImJihvcyhNYXRoLm1pbihOcihyKSxOYigpKXx8TmIoKSxwLDQpfHwoZ1tuXT1xKSl9fWZvcih2YXIgdD17fSx1PW0oT2JqZWN0LmtleXMoZykpLHY9dS5uZXh0KCk7IXYuZG9uZTt2PXUubmV4dCgpKXt2YXIgeD12LnZhbHVlLHk9Z1t4XTtpZih5IT09dm9pZCAwKXt2YXIgej0kcCh5LDQpO3omJnoubT09PSIxIiYmKHRbeF09ei5rKX19QUsodCxlKX1wcyhlKTt0cyhlKTtRdihlKX1pZihPcCgpIT09Mil7Z3MoZSk7aXMoZSk7aWYoWWYoMTUpKXt2YXIgQz1lLEQ9ZHMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKTsKRC5sZW5ndGh8fChEPWRzKEEuZG9jdW1lbnQucmVmZXJyZXIsITEsITApKTtpZihELmxlbmd0aCl7Qz1DfHx7fTt2YXIgST1EWzBdO0kudmFsdWUmJm1zKCJnY2xfZGMiLFt7dmVyc2lvbjoiIixnY2xpZDpJLnZhbHVlLHRpbWVzdGFtcDpOYigpLHFhOkkucWF9XSxDKX19SEsoZSk7S0sodm9pZCAwLGUpfWVsc2UgZ3MoZSk7aWYoV2ooKSYmQnIoQXIoKSkpe3ZhciBHPWZzKCk7QUsoRyxlKX14cyhxcyxlKTt5cyhlKX1jW0YuRC5BYV0mJih2cyhjW0YuRC5BYV0sY1tGLkQuYWRdLCEhY1tGLkQud2NdKSx1cyhjW0YuRC5BYV0sY1tGLkQuYWRdLCEhY1tGLkQud2NdLGUucHJlZml4KSx3cyhjW0YuRC5BYV0sY1tGLkQuYWRdLCEhY1tGLkQud2NdLGUucHJlZml4KSxSdihHdihlLnByZWZpeCksY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSxlKSxSdigiRlBBVSIsY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSxlKSk7ZCYmQXMoTkspO0NzKE9LKX0scXM9WyJhdyIsImRjIiwKImdiIl0sT0s9WyJhdyIsImRjIiwiZ2IiLCJhZyJdLE5LPVsiYXciLCJkYyIsImdiIiwiYWciLCJnYWRfc291cmNlIl07CnZhciBRSz1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLkdhKSxjPVEoYSxILkouc24pLGQ9TSg0NDMpJiZjP1R2KGIpOlV2KGIpLlNoLGU9dm9pZCAwO00oNTcwKSYmYyYmKGU9U3YoYix7WGg6ITB9KS5payk7dmFyIGY7YTp7aWYoSWYoNDcpJiZYbyhmcCkpe3ZhciBnPWRJKGEsImNjZF9lbmFibGVfY20iLCExKSxoPVEoYSxILkouWWEpO1YoYSxILkouYWosITApO1YoYSxILkouZmQsITApO2lmKGh3KGgpKXtWKGEsSC5KLkloLCEwKTt2YXIgbD1kfHxBdigpLG49e30scD17ZXZlbnRNZXRhZGF0YToobltILkouRGNdPVguVi5GYixuW0guSi5ZYV09aCxuW0guSi56al09bCxuW0guSi5mZF09ITAsbltILkouYWpdPSEwLG5bSC5KLkloXT0hMCxuW0guSi5YbV09ZyYmSWYoNDcpLG4pLG5vR3RtRXZlbnQ6ITB9LHE9c0MoYS50YXJnZXQuZGVzdGluYXRpb25JZCxhLmV2ZW50TmFtZSxhLk0uRWEpO21EKHEsYS5NLmV2ZW50SWQscCk7ZyYmUShhLEguSi53ZCl8fFYoYSxILkouWWEpO2Y9bDsKYnJlYWsgYX19Zj12b2lkIDB9dmFyIHI9ZHx8ZjtpZihyfHxlKXt2YXIgdCx1O3Q9UihhLEYuRC5QYSk7dT1Lei5nai5icDt2YXIgdj1SKGEsRi5ELldjKTshdCYmdiYmKHQ9dltGLkQuUGFdLHU9S3ouZ2oudXEpO3R8fCh0PUF2KFIoYSxGLkQuR2QpKSxzYigiR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUwiLFQuVy5GaCksdT1Lei5nai5WcSk7VShhLEYuRC5QYSx0KTtVKGEsRi5ELmRtLHUpO3ImJlUoYSxGLkQueGMscik7ZSYmVShhLCJfJmVjc2lkMiIsZSk7VihhLEguSi5saiwhMCl9fTsKdmFyIFJLPWZ1bmN0aW9uKGEpe1EoYSxILkoueW4pfHxWKGEsSC5KLkphLCExKX0sU0s9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5kYSksYz1YbyhmcCksZD1RKGEsSC5KLnNhKSxlPVIoYSxGLkQuR2QpLGY9UShhLEguSi5wbik7c3dpdGNoKGIpe2Nhc2UgWC5WLnhhOiFmJiZlJiZSSyhhKTthLmV2ZW50TmFtZT09PUYuRC53YSYmVihhLEguSi5KYSwhMCk7YnJlYWs7Y2FzZSBYLlYuT2I6Y2FzZSBYLlYuRmI6aWYoIWN8fGR8fCFmJiZlKWEuaXNBYm9ydGVkPSEwO2JyZWFrO2Nhc2UgWC5WLnViOmN8fChhLmlzQWJvcnRlZD0hMCk7IWYmJmV8fFJLKGEpO1EoYSxILkoud2QpfHwoYS5pc0Fib3J0ZWQ9ITApO2EuZXZlbnROYW1lIT09Ri5ELndhfHxPKGEuTSxGLkQuQ2wpIT09ITEmJk8oYS5NLEYuRC5UZCkhPT0hMXx8VihhLEguSi5KYSwhMCk7YnJlYWs7Y2FzZSBYLlYuS2E6YS5ldmVudE5hbWUhPT1GLkQuc2MmJlEoYSxILkouUGMpJiYoYS5pc0Fib3J0ZWQ9ITApLGEudGFyZ2V0Lmlkc1tkQ1sxXV0mJgpPKGEuTSxGLkQuaWgpIT09ITAmJihhLmlzQWJvcnRlZD0hMCl9fTt2YXIgVEs9ZnVuY3Rpb24oYSl7dmFyIGIsYz1NKDU3Nik7aWYoUShhLEguSi5zbikpc3dpdGNoKFEoYSxILkouZGEpKXtjYXNlIFguVi5GYjppZighKGEuZXZlbnROYW1lIT09Ri5ELndhfHxjJiZodyhRKGEsSC5KLllhKSkpKWJyZWFrO2I9OTc7YS5ldmVudE5hbWU9PT1GLkQud2EmJkd1KFQuVy5Payk7TSg0ODgpP1YoYSxILkouSmEsITEpOlJLKGEpO2JyZWFrO2Nhc2UgWC5WLk9iOmlmKGEuZXZlbnROYW1lPT09Ri5ELndhKWJyZWFrO2I9OTg7TSg0ODgpP1YoYSxILkouSmEsITEpOlJLKGEpO2JyZWFrO2Nhc2UgWC5WLnhhOmI9OTl9IVEoYSxILkouSmEpJiZiJiZQKGIpO1EoYSxILkouSmEpPT09ITAmJihhLmlzQWJvcnRlZD0hMCl9Owp2YXIgVUs9ZnVuY3Rpb24oYSl7aWYoTSg1NjkpJiZXaigpJiZRKGEsSC5KLmRhKT09PVguVi54YSYmIVEoYSxILkouRWMpKXt2YXIgYj1NYXRoLmZsb29yKERhdGUubm93KCkvMUUzKSxjPW5ldyBVaW50OEFycmF5KFtiJjI1NSxiPj44JjI1NV0pLGQsZT15bSgpfHwiWFgiLGY9em0oKXx8IjAwIjtkPW5ldyBVaW50OEFycmF5KFtlLmNoYXJDb2RlQXQoMCksZS5jaGFyQ29kZUF0KDEpLGYuY2hhckNvZGVBdCgwKSxmLmNoYXJDb2RlQXQoMSldKTt2YXIgZz1uZXcgVWludDhBcnJheSg3KSxoO2lmKChoPUEuY3J5cHRvKT09bnVsbHx8IWguZ2V0UmFuZG9tVmFsdWVzKGcpKWZvcih2YXIgbD0wO2w8NztsKyspZ1tsXT1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjU2KTt2YXIgbj1uZXcgVWludDhBcnJheShbXS5jb25jYXQodyhjKSx3KGQpLHcoZykpKSxwO3RyeXtwPWJ0b2EoU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShTdHJpbmcsdyhuKSkpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLAoiXyIpLnJlcGxhY2UoLz0rJC8sIiIpfWNhdGNoKHEpe3A9IiJ9VShhLEYuRC5FaSxwKX19O2Z1bmN0aW9uIFZLKCl7cmV0dXJuIE10KDcpJiZNdCg5KSYmTXQoMTApfTt2YXIgV0s9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXt9O2EubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5vaiwoZFtiXT1jLGQpKX0sWEs9ZnVuY3Rpb24oYSxiKXt2YXIgYz1kSShhLEYuRC5GaSxhLk0uaWJbRi5ELkZpXSk7aWYoYyYmY1tifHxhLmV2ZW50TmFtZV0hPT12b2lkIDApcmV0dXJuIGNbYnx8YS5ldmVudE5hbWVdfSxZSz1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLllhKTtpZihDZChiKSlyZXR1cm4gYn0sWks9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5iZSl8fCFlayhhLk0pKXJldHVybiAxO2lmKCFPKGEuTSxGLkQuZGQpKXt2YXIgYj1PKGEuTSxGLkQuUWYpO2lmKGIhPT0hMCYmYiE9PSJ0cnVlIilyZXR1cm4gMX12YXIgYz1PKGEuTSxGLkQuT2kpO3JldHVybiBjPT09ITF8fGM9PT0iZmFsc2UiPzM6Mn07CnZhciBhTD1mdW5jdGlvbihhLGIpe2EmJigkSygic2lkIixhLnRhcmdldElkLGIpLCRLKCJjYyIsYS5jbGllbnRDb3VudCxiKSwkSygidGwiLGEudG90YWxMaWZlTXMsYiksJEsoImhjIixhLmhlYXJ0YmVhdENvdW50LGIpLCRLKCJjbCIsYS5jbGllbnRMaWZlTXMsYikpfSwkSz1mdW5jdGlvbihhLGIsYyl7YiE9bnVsbCYmYy5wdXNoKGErIj0iK2IpfSxiTD1mdW5jdGlvbigpe3ZhciBhPUIucmVmZXJyZXI7aWYoYSl7dmFyIGI7cmV0dXJuIExqKFJqKGEpLCJob3N0Iik9PT0oKGI9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmIuaG9zdCk/MToyfXJldHVybiAwfSxkTD1mdW5jdGlvbigpe3RoaXMuamE9Y0w7dGhpcy5OPTA7dGhpcy55YT1OZig1Nyw1KTt0aGlzLlI9TmYoNTgsNTApO3RoaXMuZmE9RGIoKTt0aGlzLkxhPSJodHRwczovLyIrRSgyMSkrIi9hPyJ9O2RMLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjLGQpewp2YXIgZT1iTCgpLGYsZz1bXTtmPUE9PT1BLnRvcCYmZSE9PTAmJmI/KGI9PW51bGw/dm9pZCAwOmIuY2xpZW50Q291bnQpPjE/ZT09PTI/MToyOmU9PT0yPzA6Mzo0O2EmJiRLKCJzaSIsYS5KZyxnKTskSygibSIsMCxnKTskSygiaXNzIixmLGcpOyRLKCJpZiIsYyxnKTthTChiLGcpO2QmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGQuc3Vic3RyaW5nKDAsdGhpcy5SKSksZyk7dGhpcy5aKGcpO307ZEwucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1bXTskSygibSIsMSxmKTskSygicyIsYSxmKTskSygicG8iLGJMKCksZik7YiYmKCRLKCJzdCIsYi5zdGF0ZSxmKSwkSygic2kiLGIuSmcsZiksJEsoInNtIixiLlVnLGYpKTthTChjLGYpOyRLKCJjIixkLGYpO2UmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGUuc3Vic3RyaW5nKDAsCnRoaXMuUikpLGYpO3RoaXMuWihmKTt9O2RMLnByb3RvdHlwZS5aPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphOyFmbi5OfHx0aGlzLk4+PXRoaXMueWF8fCgkSygicGlkIix0aGlzLmZhLGEpLCRLKCJiYyIsKyt0aGlzLk4sYSksYS51bnNoaWZ0KCJjdGlkPSIrRSg1KSsiJnQ9cyIpLHRoaXMuamEoIiIrdGhpcy5MYSthLmpvaW4oIiYiKSkpfTtmdW5jdGlvbiBlTChhKXtyZXR1cm4gYS5wZXJmb3JtYW5jZSYmYS5wZXJmb3JtYW5jZS5ub3coKXx8RGF0ZS5ub3coKX0KdmFyIGZMPWZ1bmN0aW9uKGEsYil7dmFyIGM9QSxkPU5mKDUzLDUwMCksZT1OZig1NCw1RTMpLGY9TmYoOCwyMCksZz1OZig1NSw1RTMpLGg7dmFyIGw9ZnVuY3Rpb24obixwLHEpe3E9cT09PXZvaWQgMD97cW86ZnVuY3Rpb24oKXt9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbigpe30sb25GYWlsdXJlOmZ1bmN0aW9uKCl7fX06cTt0aGlzLklqPW47dGhpcy5IPXA7dGhpcy5OPXE7dGhpcy5mYT10aGlzLmphPXRoaXMuaGVhcnRiZWF0Q291bnQ9dGhpcy5Eaj0wO3RoaXMuZmU9ITE7dGhpcy5LPXt9O3RoaXMuaWQ9U3RyaW5nKE1hdGguZmxvb3IoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIqTWF0aC5yYW5kb20oKSkpO3RoaXMuc3RhdGU9MDt0aGlzLkpnPWVMKHRoaXMuSCk7dGhpcy5VZz1lTCh0aGlzLkgpO3RoaXMuWj0xMH07bC5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbigpe3RoaXMuUigxKTsKdGhpcy5MYSgpfTtsLnByb3RvdHlwZS5nZXRTdGF0ZT1mdW5jdGlvbigpe3JldHVybntzdGF0ZTp0aGlzLnN0YXRlLEpnOk1hdGgucm91bmQoZUwodGhpcy5IKS10aGlzLkpnKSxVZzpNYXRoLnJvdW5kKGVMKHRoaXMuSCktdGhpcy5VZyl9fTtsLnByb3RvdHlwZS5SPWZ1bmN0aW9uKG4pe3RoaXMuc3RhdGUhPT1uJiYodGhpcy5zdGF0ZT1uLHRoaXMuVWc9ZUwodGhpcy5IKSl9O2wucHJvdG90eXBlLnZnPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyh0aGlzLkRqKyspfTtsLnByb3RvdHlwZS5MYT1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5oZWFydGJlYXRDb3VudCsrO3RoaXMueWEoe3R5cGU6MCxjbGllbnRJZDp0aGlzLmlkLHJlcXVlc3RJZDp0aGlzLnZnKCksbWF4RGVsYXk6dGhpcy5oZSgpfSxmdW5jdGlvbihwKXtpZihwLnR5cGU9PT0wKXt2YXIgcTtpZigoKHE9cC5mYWlsdXJlKT09bnVsbD92b2lkIDA6cS5mYWlsdXJlVHlwZSkhPW51bGwpaWYocC5zdGF0cyYmKG4uc3RhdHM9CnAuc3RhdHMpLG4uZmErKyxwLmlzRGVhZHx8bi5mYT5mKXt2YXIgcj1wLmlzRGVhZCYmcC5mYWlsdXJlLmZhaWx1cmVUeXBlO24uWj1yfHwxMDtuLlIoNCk7bi5BaigpO3ZhciB0LHU7KHU9KHQ9bi5OKS5wbyk9PW51bGx8fHUuY2FsbCh0LHtmYWlsdXJlVHlwZTpyfHwxMCxkYXRhOnAuZmFpbHVyZS5kYXRhfSl9ZWxzZSBuLlIoMyksbi5QaCgpO2Vsc2V7aWYobi5oZWFydGJlYXRDb3VudD5wLnN0YXRzLmhlYXJ0YmVhdENvdW50K2Ype24uaGVhcnRiZWF0Q291bnQ9cC5zdGF0cy5oZWFydGJlYXRDb3VudDt2YXIgdix4Oyh4PSh2PW4uTikub25GYWlsdXJlKT09bnVsbHx8eC5jYWxsKHYse2ZhaWx1cmVUeXBlOjEzfSl9bi5zdGF0cz1wLnN0YXRzO3ZhciB5PW4uc3RhdGU7bi5SKDIpO2lmKHkhPT0yKWlmKG4uZmUpe3ZhciB6LEM7KEM9KHo9bi5OKS5zbyk9PW51bGx8fEMuY2FsbCh6KX1lbHNle24uZmU9ITA7dmFyIEQsSTsoST0oRD1uLk4pLnFvKT09bnVsbHx8SS5jYWxsKEQpfW4uZmE9CjA7bi5OaigpO24uUGgoKX19fSl9O2wucHJvdG90eXBlLmhlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RhdGU9PT0yP2U6ZH07bC5wcm90b3R5cGUuUGg9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuSC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi5MYSgpfSxNYXRoLm1heCgwLHRoaXMuaGUoKS0oZUwodGhpcy5IKS10aGlzLmphKSkpfTtsLnByb3RvdHlwZS5rcj1mdW5jdGlvbihuLHAscSl7dmFyIHI9dGhpczt0aGlzLnlhKHt0eXBlOjEsY2xpZW50SWQ6dGhpcy5pZCxyZXF1ZXN0SWQ6dGhpcy52ZygpLGNvbW1hbmQ6bn0sZnVuY3Rpb24odCl7aWYodC50eXBlPT09MSlpZih0LnJlc3VsdClwKHQucmVzdWx0KTtlbHNle3ZhciB1LHYseCx5PXtmYWlsdXJlVHlwZTooeD0odT10LmZhaWx1cmUpPT1udWxsP3ZvaWQgMDp1LmZhaWx1cmVUeXBlKSE9bnVsbD94OjEyLGRhdGE6KHY9dC5mYWlsdXJlKT09bnVsbD92b2lkIDA6di5kYXRhfSx6LEM7KEM9KHo9ci5OKS5vbkZhaWx1cmUpPT0KbnVsbHx8Qy5jYWxsKHoseSk7cSh5KX19KX07bC5wcm90b3R5cGUueWE9ZnVuY3Rpb24obixwKXt2YXIgcT10aGlzO2lmKHRoaXMuc3RhdGU9PT00KW4uZmFpbHVyZT17ZmFpbHVyZVR5cGU6dGhpcy5afSxwKG4pO2Vsc2V7dmFyIHI9dGhpcy5zdGF0ZSE9PTImJm4udHlwZSE9PTAsdD1uLnJlcXVlc3RJZCx1LHY9dGhpcy5ILnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgeT1xLktbdF07eSYmKGltKDYpLHEua2QoeSw3KSl9LCh1PW4ubWF4RGVsYXkpIT1udWxsP3U6ZykseD17cmVxdWVzdDpuLEhvOnAsem86cixOczp2fTt0aGlzLktbdF09eDtyfHx0aGlzLnNlbmRSZXF1ZXN0KHgpfX07bC5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24obil7dGhpcy5qYT1lTCh0aGlzLkgpO24uem89ITE7dGhpcy5JaihuLnJlcXVlc3QpfTtsLnByb3RvdHlwZS5Oaj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT0KdGhpcy5LW3AudmFsdWVdO3Euem8mJnRoaXMuc2VuZFJlcXVlc3QocSl9fTtsLnByb3RvdHlwZS5Baj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXRoaXMua2QodGhpcy5LW3AudmFsdWVdLHRoaXMuWil9O2wucHJvdG90eXBlLmtkPWZ1bmN0aW9uKG4scCl7dGhpcy5hYyhuKTt2YXIgcT1uLnJlcXVlc3Q7cS5mYWlsdXJlPXtmYWlsdXJlVHlwZTpwfTtuLkhvKHEpfTtsLnByb3RvdHlwZS5hYz1mdW5jdGlvbihuKXtkZWxldGUgdGhpcy5LW24ucmVxdWVzdC5yZXF1ZXN0SWRdO3RoaXMuSC5jbGVhclRpbWVvdXQobi5Ocyl9O2wucHJvdG90eXBlLmtzPWZ1bmN0aW9uKG4pe3RoaXMuamE9ZUwodGhpcy5IKTt2YXIgcD10aGlzLktbbi5yZXF1ZXN0SWRdO2lmKHApdGhpcy5hYyhwKSxwLkhvKG4pO2Vsc2V7dmFyIHEscjsocj0ocT10aGlzLk4pLm9uRmFpbHVyZSk9PW51bGx8fHIuY2FsbChxLHtmYWlsdXJlVHlwZToxNH0pfX07Cmg9bmV3IGwoYSxjLGIpO3JldHVybiBofTsKdmFyIGdMPWZ1bmN0aW9uKCl7cmV0dXJuIGFsKDE4LGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBkTH0pfSxjTD1mdW5jdGlvbihhKXtpbyhsbyhjby5pYS5aYiksZnVuY3Rpb24oKXtaYyhhKX0pfSxoTD1mdW5jdGlvbihhKXt2YXIgYj1hLnN1YnN0cmluZygwLGEuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIiKSk7cmV0dXJuIiYxcD0xIisoYj8iJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQoYik6IiIpfSxpTD1mdW5jdGlvbihhKXt2YXIgYj1BLmxvY2F0aW9uLm9yaWdpbjtpZighYilyZXR1cm4gbnVsbDsoTSg0MzIpP1dqKCk6V2ooKSYmIWEpJiYoYT0iIitiK1hqKCkrIi9fL3NlcnZpY2Vfd29ya2VyIik7dmFyIGM9YSxkLGU9TGYoMTEpO2U9TGYoMTApO2Q9ZTtjPyhjLmNoYXJBdChjLmxlbmd0aC0xKSE9PSIvIiYmCihjKz0iLyIpLGE9YytkKTphPSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9zdGF0aWMvc2VydmljZV93b3JrZXIvIitkKyIvIjt2YXIgZjt0cnl7Zj1uZXcgVVJMKGEpfWNhdGNoKGcpe3JldHVybiBudWxsfXJldHVybiBmLnByb3RvY29sIT09Imh0dHBzOiI/bnVsbDpmfSxqTD1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5PaCk7cmV0dXJuIGImJmJbYV19LGtMPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dGhpcy5LPWdMKCk7dGhpcy5aPXRoaXMuUj0hMTt0aGlzLmZhPW51bGw7dGhpcy5pbml0VGltZT1NYXRoLnJvdW5kKE5iKCkpO3RoaXMuSD0xNTt0aGlzLk49dGhpcy5GcihhKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtiLmluaXRpYWxpemUoKX0sMUUzKTtiZChmdW5jdGlvbigpe2IuenMoYSl9KX07az1rTC5wcm90b3R5cGU7ay5kZWxlZ2F0ZT1mdW5jdGlvbihhLGIsYyl7dGhpcy5nZXRTdGF0ZSgpIT09Mj8odGhpcy5LLkgodGhpcy5ILHtzdGF0ZTp0aGlzLmdldFN0YXRlKCksCkpnOnRoaXMuaW5pdFRpbWUsVWc6TWF0aC5yb3VuZChOYigpKS10aGlzLmluaXRUaW1lfSx2b2lkIDAsYS5jb21tYW5kVHlwZSksYyh7ZmFpbHVyZVR5cGU6dGhpcy5IfSkpOnRoaXMuTi5rcihhLGIsYyl9O2suZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OLmdldFN0YXRlKCkuc3RhdGV9O2suenM9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5vcmlnaW4sYz10aGlzLGQ9WGMoKTt0cnl7dmFyIGU9ZC5jb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksZj1hLnBhdGhuYW1lLGc9ZltmLmxlbmd0aC0xXT09PSIvIj9hLnRvU3RyaW5nKCk6YS50b1N0cmluZygpKyIvIixoPWEub3JpZ2luIT09Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIj9oTChmKToiIixsO00oMTMzKSYmKGw9e3NhbmRib3g6ImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMifSk7WGMoZysic3dfaWZyYW1lLmh0bWw/b3JpZ2luPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpKwpoLHZvaWQgMCxsLHZvaWQgMCxlKTt2YXIgbj1mdW5jdGlvbigpe2QuY29udGVudERvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSk7ZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe2MuZmE9ZS5jb250ZW50V2luZG93O2QuY29udGVudFdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixmdW5jdGlvbihwKXtwLm9yaWdpbj09PWEub3JpZ2luJiZjLk4ua3MocC5kYXRhKX0pO2MuaW5pdGlhbGl6ZSgpfSl9O2QuY29udGVudERvY3VtZW50LnJlYWR5U3RhdGU9PT0iY29tcGxldGUiP24oKTpkLmNvbnRlbnRXaW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXtuKCl9KX1jYXRjaChwKXtkLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZCksdGhpcy5IPTExLHRoaXMuSy5LKHZvaWQgMCx2b2lkIDAsdGhpcy5ILHAudG9TdHJpbmcoKSl9fTtrLkZyPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1mTChmdW5jdGlvbihkKXt2YXIgZTsoZT1iLmZhKT09Cm51bGx8fGUucG9zdE1lc3NhZ2UoZCxhLm9yaWdpbil9LHtxbzpmdW5jdGlvbigpe2IuUj0hMDtiLksuSyhjLmdldFN0YXRlKCksYy5zdGF0cyl9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbihkKXtiLlI/KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDEwLGIuSy5IKGIuSCxjLmdldFN0YXRlKCksYy5zdGF0cyx2b2lkIDAsZD09bnVsbD92b2lkIDA6ZC5kYXRhKSk6KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDQsYi5LLksoYy5nZXRTdGF0ZSgpLGMuc3RhdHMsYi5ILGQ9PW51bGw/dm9pZCAwOmQuZGF0YSkpfSxvbkZhaWx1cmU6ZnVuY3Rpb24oZCl7Yi5IPWQuZmFpbHVyZVR5cGU7Yi5LLkgoYi5ILGMuZ2V0U3RhdGUoKSxjLnN0YXRzLGQuY29tbWFuZCxkLmRhdGEpfX0pO3JldHVybiBjfTtrLmluaXRpYWxpemU9ZnVuY3Rpb24oKXt0aGlzLlp8fHRoaXMuTi5pbml0KCk7dGhpcy5aPSEwfTsKdmFyIGxMPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlO2lmKChlPWpMKGEpKT09bnVsbHx8IWUuZGVsZWdhdGUpe3ZhciBmPUljKCk/MTY6NjtnTCgpLkgoZix2b2lkIDAsdm9pZCAwLGIuY29tbWFuZFR5cGUpO2Qoe2ZhaWx1cmVUeXBlOmZ9KTtyZXR1cm59akwoYSkuZGVsZWdhdGUoYixjLGQpO307CmZ1bmN0aW9uIG1MKGEsYixjLGQpe3ZhciBlPWlMKGEpO2lmKGU9PT1udWxsKXtkKCJfaXNfc3c9ZiIrKEljKCk/MTY6NikrInRlIik7cmV0dXJufXZhciBmPWI/MTowLGc9TWF0aC5yb3VuZChOYigpKSxoLGw9KGg9akwoZS5vcmlnaW4pKT09bnVsbD92b2lkIDA6aC5pbml0VGltZSxuPWw/Zy1sOnZvaWQgMCxwO00oNDMyKT9wPVdqKCk/dm9pZCAwOkEubG9jYXRpb24uaHJlZjpwPUEubG9jYXRpb24uaHJlZjtsTChlLm9yaWdpbix7Y29tbWFuZFR5cGU6MCxwYXJhbXM6e3VybDphLG1ldGhvZDpmLHRlbXBsYXRlczpjLGJvZHk6Ynx8IiIscHJvY2Vzc1Jlc3BvbnNlOiEwLHNpbmNlSW5pdDpuLGF0dHJpYnV0aW9uUmVwb3J0aW5nOiEwLHJlZmVyZXI6cCxzdHJpY3Q6TSg1ODQpfX0sZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKHEpe3ZhciByPSJfaXNfc3c9ZiIrcS5mYWlsdXJlVHlwZSx0LHU9KHQ9akwoZS5vcmlnaW4pKT09Cm51bGw/dm9pZCAwOnQuZ2V0U3RhdGUoKTt1IT09dm9pZCAwJiYocis9InMiK3UpO2Qobj9yKygidCIrbik6cisidGUiKX0pO307ZnVuY3Rpb24gbkwoYSl7aWYoSWYoNDcpJiZkSShhLCJjY2RfYWRkXzFwX2RhdGEiLCExKSYmV2ooKSl7dmFyIGI9YS5NO2lmKEljKCkmJmJnKCJpbnRlcm5hbF9zd19hbGxvd2VkIiwiIikpe3ZhciBjPWVrKGIpLGQ9V2ooKT9YaigpOnZvaWQgMCxlO2U9ZD97cGF0aDpkLGVvOiJmdWxsIn06Yz97cGF0aDpjLGVvOiJsaXRlIn06dm9pZCAwO2lmKGUpe3ZhciBmPWUuZW8sZz1uZXcgVVJMKGUucGF0aCxBLmxvY2F0aW9uLm9yaWdpbik7aWYoZy5vcmlnaW49PT1BLmxvY2F0aW9uLm9yaWdpbiYmcHkoZik9PT12b2lkIDApe3ZhciBoPW9tKGptLmJhLk9oLHt9KTtoW2ZdfHwoaFtmXT1uZXcgbnkoZykpfX19fX07dmFyIG9MPWZ1bmN0aW9uKGEpe25MKGEpfTsKdmFyIHBMPWZ1bmN0aW9uKGEpe2lmKCFRKGEsSC5KLkphKSYmIWEuaXNBYm9ydGVkKWlmKFEoYSxILkouZGEpIT09WC5WLnhhKVEoYSxILkouWG0pJiZVKGEsRi5ELkpoLCIxIiksSXooYSk7ZWxzZXt2YXIgYj1RKGEsSC5KLllhKSxjPVIoYSxGLkQuQmMpLGQ9UShhLEguSi5mZCksZT1JZig0NykmJmRJKGEsImNjZF9lbmFibGVfY20iLCExKSxmPVhvKGZwKSYmUShhLEguSi53ZCkmJmU7ZiYmKFUoYSxGLkQuSmgsIjEiKSxRKGEsSC5KLkloKSYmKFYoYSxILkouWWEpLFUoYSxGLkQuQmMpLFYoYSxILkouZmQsITEpKSk7dmFyIGc9cnYobXYpO1YoYSxILkouZ24sZyk7Zm9yKHZhciBoLGw9W10sbj1tKHF2KSxwPW4ubmV4dCgpOyFwLmRvbmU7cD1uLm5leHQoKSl7dmFyIHE9cC52YWx1ZSxyPWdbcS5wYl07aWYocj09PXZvaWQgMHx8cjxxLk9nKWJyZWFrO2wucHVzaChyLnRvU3RyaW5nKCkpfShoPWwuam9pbigifiIpKSYmVShhLCJfJmdjbF9jdHIiLGgpO3ZhciB0O3ZhciB1PXtyYW5kb206UShhLApILkouRWIpLGxhYmVsOlIoYSxGLkQuR2QpfSx2PVEoYSxILkouR2EpLHg9d3YoKTt4Pyh5dihbdV0sdiksdD14Lmxlbmd0aD09PTA/e3JhbmRvbTowLGxhYmVsOiIwIn06eFswXSk6dD12b2lkIDA7dmFyIHk9dDt5JiZhLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEse2xhc3RfcmFuZG9tOnkucmFuZG9tLGxhc3RfbGFiZWw6eS5sYWJlbH0pO0l6KGEpO2lmKFEoYSxILkoub2IpJiZYbyhmcCkpe3ZhciB6PVp1KGEse006dUMoYS5NKX0pO1YoeixILkouZGEsWC5WLlpkKTtJeih6KX1pZihRKGEsSC5KLmxqKSl7dmFyIEM9WnUoYSx7TTp1QyhhLk0pfSk7VihDLEguSi5kYSxYLlYuemQpO0l6KEMpfWlmKGYpe3ZhciBEPVp1KGEse006dUMoYS5NKX0pO1UoRCxGLkQuSmgsIjIiKTtWKEQsSC5KLkVjLCEwKTtWKEQsSC5KLmZkLGQpO1YoRCxILkouWWEsYik7VShELEYuRC5CYyxjKTtJeihEKX19fTt2YXIgcUw9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5kYSk9PT1YLlYueGE7aWYoIWJ8fGEuZXZlbnROYW1lPT09Ri5ELklifHxhLk0uaXNHdG1FdmVudClhLmNvcHlUb0hpdERhdGEoRi5ELkhhKSxiJiYoYS5jb3B5VG9IaXREYXRhKEYuRC5GZiksYS5jb3B5VG9IaXREYXRhKEYuRC5EZiksYS5jb3B5VG9IaXREYXRhKEYuRC5FZiksYS5jb3B5VG9IaXREYXRhKEYuRC5DZiksVShhLEYuRC53aSxGLkQuSWIpLGEuY29weVRvSGl0RGF0YShGLkQuU2QpLGEuY29weVRvSGl0RGF0YShGLkQuUWQpLGEuY29weVRvSGl0RGF0YShGLkQuUmQpKX07dmFyIHJMPWZ1bmN0aW9uKCl7dmFyIGE9SGMmJkhjLnVzZXJBZ2VudHx8IiI7aWYoYS5pbmRleE9mKCJTYWZhcmkiKTwwfHwvQ2hyb21lfENvYXN0fE9wZXJhfEVkZ3xTaWxrfEFuZHJvaWQvLnRlc3QoYSkpcmV0dXJuITE7dmFyIGI9KC9WZXJzaW9uXC8oW1xkXC5dKykvLmV4ZWMoYSl8fFtdKVsxXXx8IiI7aWYoYj09PSIiKXJldHVybiExO2Zvcih2YXIgYz1bIjE0IiwiMSIsIjEiXSxkPWIuc3BsaXQoIi4iKSxlPTA7ZTxkLmxlbmd0aDtlKyspe2lmKGNbZV09PT12b2lkIDApcmV0dXJuITA7aWYoZFtlXSE9PWNbZV0pcmV0dXJuIE51bWJlcihkW2VdKT5OdW1iZXIoY1tlXSl9cmV0dXJuIGQubGVuZ3RoPj1jLmxlbmd0aH07ZnVuY3Rpb24gc0woKXt2YXIgYTthPWE9PT12b2lkIDA/ZG9jdW1lbnQ6YTt2YXIgYjtyZXR1cm4hKChiPWEuZmVhdHVyZVBvbGljeSk9PW51bGx8fCFiLmFsbG93ZWRGZWF0dXJlcygpLmluY2x1ZGVzKCJhdHRyaWJ1dGlvbi1yZXBvcnRpbmciKSl9O3ZhciB0TD1mdW5jdGlvbihhKXtYbyhGLkQubWEpJiYoQS5fZ3RtcGNtPT09ITB8fHJMKCk/VShhLEYuRC5GZSwiMiIpOnNMKCkmJlUoYSxGLkQuRmUsIjEiKSk7KE9jKCl8fFFjKCkpJiZWKGEsSC5KLm9iLCEwKTtWKGEsSC5KLlllLFEoYSxILkouWGUpJiYhWG8oZnApKTtRKGEsSC5KLnNhKSYmVShhLEYuRC5zYSwhMCk7YS5NLmV2ZW50TWV0YWRhdGFbSC5KLmFlXSYmVShhLEYuRC5WbSwhMCl9O3ZhciB1TD1mdW5jdGlvbihhKXthLmNvcHlUb0hpdERhdGEoRi5ELlBhKTthLmNvcHlUb0hpdERhdGEoRi5ELlFhKTthLmNvcHlUb0hpdERhdGEoRi5ELmViKTtRKGEsSC5KLm9iKT9VKGEsRi5ELldpLCJ3d3cuZ29vZ2xlLmNvbSIpOlUoYSxGLkQuV2ksInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIpO3ZhciBiPU8oYS5NLEYuRC5XYik7YiE9PSEwJiZiIT09ITF8fFUoYSxGLkQuV2IsYil9O3ZhciB2TD1mdW5jdGlvbihhKXt2YXIgYj1hLnRhcmdldC5pZHNbZENbMF1dO2lmKGIpe1UoYSxGLkQueWksYik7dmFyIGM9YS50YXJnZXQuaWRzW2RDWzFdXTtjJiZVKGEsRi5ELkdkLGMpO08oYS5NLEYuRC5paCk9PT0hMCYmVihhLEguSi5wbiwhMCl9ZWxzZSBhLmlzQWJvcnRlZD0hMH07ZnVuY3Rpb24gd0woYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7dmFyIGU9RnAoKSxmPURwKGUpO2lmKGYudXJsKWlmKGQpe3ZhciBnPWMoZi51cmwpO2IhPT1nJiZVKGEsRi5ELlBlLGcpfWVsc2V7dmFyIGg9Zi51cmw7YiE9PWgmJlUoYSxGLkQuUGUsYyhoKSl9fTt2YXIgekw9ZnVuY3Rpb24oYSl7aWYoIVEoYSxILkouc2EpKXt2YXIgYj1SKGEsRi5ELk1lKSxjPU8oYS5NLEYuRC56YSksZD1jO2R8fChkPWI9PT0xP0EudG9wLmxvY2F0aW9uLmhyZWY6QS5sb2NhdGlvbi5ocmVmKTtVKGEsRi5ELnphLHhMKGQpKTthLmNvcHlUb0hpdERhdGEoRi5ELlVhLEIucmVmZXJyZXIpO1UoYSxGLkQuTWIseUwoKSk7YS5jb3B5VG9IaXREYXRhKEYuRC50Yik7dmFyIGU9cUkoKTtVKGEsRi5ELmJkLGUud2lkdGgrIngiK2UuaGVpZ2h0KTt2YXIgZj1NKDU4MykmJiEhYzt3TChhLGQsZnVuY3Rpb24oZyl7dmFyIGg9eEwoZyk7ZiYmKGg9aC5zcGxpdCgiPyIpWzBdKTtyZXR1cm4gaH0pfX07CnZhciB4TD1mdW5jdGlvbihhKXtpZihhIT1udWxsKXt2YXIgYj1TdHJpbmcoYSkuc3Vic3RyaW5nKDAsNTEyKSxjPWIuaW5kZXhPZigiIyIpO3JldHVybiBjPT09LTE/YjpiLnN1YnN0cmluZygwLGMpfXJldHVybiIifSx5TD1mdW5jdGlvbigpe3ZhciBhPUIudGl0bGU7aWYoYT09PXZvaWQgMHx8YT09PSIiKXJldHVybiIiO2E9ZW5jb2RlVVJJQ29tcG9uZW50KGEpO2Zvcih2YXIgYj0yNTY7Yj4wJiZLaihhLnN1YnN0cmluZygwLGIpKT09PXZvaWQgMDspYi0tO3JldHVybiBLaihhLnN1YnN0cmluZygwLGIpKXx8IiJ9O2Z1bmN0aW9uIEFMKGEpe1YoYSxILkouSmEsITApO1YoYSxILkouRWIsTmIoKSk7VihhLEguSi55bixhLk0uZXZlbnRNZXRhZGF0YVtILkouSmFdKX07dmFyIEJMPWZ1bmN0aW9uKGEpe00oNDcpJiZhLmNvcHlUb0hpdERhdGEoRi5ELmtoKX07dmFyIENMPWZ1bmN0aW9uKGEpe3ZhciBiPU0oNDQzKSxjPU0oNTcwKTtpZigoYnx8YykmJlhvKGZwKSl7dmFyIGQ9UShhLEguSi5ZYSk7aWYoaHcoZCkpe3ZhciBlPVEoYSxILkouR2EpO2lmKGIpe3ZhciBmPVEoYSxILkouemopfHxUdihlKTtVKGEsRi5ELnhjLGYpfWlmKGMpe3ZhciBnPVN2KGUse1hoOiEwfSkuaWs7ZyYmVShhLCJfJmVjc2lkMiIsZyl9fX19O3ZhciBETD1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLlFtKTtiJiZVKGEsRi5ELldjLGIpfTt2YXIgRUw9ZnVuY3Rpb24oYSl7dmFyIGI9QTtpZihiLl9fZ3NhRXhwJiZiLl9fZ3NhRXhwLmlkKXt2YXIgYz1iLl9fZ3NhRXhwLmlkO2lmKHliKGMpKXRyeXt2YXIgZD1OdW1iZXIoYygpKTtpc05hTihkKXx8VShhLEYuRC5QbCxkKX1jYXRjaChlKXt9fX07dmFyIEZMPWZ1bmN0aW9uKGEpe2EuY29weVRvSGl0RGF0YShGLkQuTmUpO2EuY29weVRvSGl0RGF0YShGLkQuR2UpO2EuY29weVRvSGl0RGF0YShGLkQuVWQpO2EuY29weVRvSGl0RGF0YShGLkQuSWUpO2EuY29weVRvSGl0RGF0YShGLkQuVGMpO2EuY29weVRvSGl0RGF0YShGLkQuTGQpfTt2YXIgR0w9ZnVuY3Rpb24oYSl7aWYoWG8oRi5ELm1hKSl7YS5jb3B5VG9IaXREYXRhKEYuRC5mYik7dmFyIGI9bm0oam0uYmEuWnEpO2lmKGI9PT12b2lkIDApbW0oam0uYmEuYXIsITApO2Vsc2V7dmFyIGM9bm0oam0uYmEuc2opO1UoYSxGLkQuWmYsYysiLiIrYil9fX07CnZhciBNTD1mdW5jdGlvbihhLGIpe2lmKGEmJih6YihhKSYmKGE9YkMoYSkpLGEpKXt2YXIgYz12b2lkIDAsZD0hMSxlPU8oYixGLkQua3EpO2lmKGUmJkFycmF5LmlzQXJyYXkoZSkpe2M9W107Zm9yKHZhciBmPTA7ZjxlLmxlbmd0aDtmKyspe3ZhciBnPWJDKGVbZl0pO2cmJihjLnB1c2goZyksKGEuaWQ9PT1nLmlkfHxhLmlkPT09YS5kZXN0aW5hdGlvbklkJiZhLmRlc3RpbmF0aW9uSWQ9PT1nLmRlc3RpbmF0aW9uSWQpJiYoZD0hMCkpfX1pZighY3x8ZCl7dmFyIGg9TyhiLEYuRC5ZbCksbDtpZihoKXtsPUFycmF5LmlzQXJyYXkoaCk/aDpbaF07dmFyIG49TyhiLEYuRC5XbCkscD1PKGIsRi5ELlhsKSxxPU8oYixGLkQuWmwpLHI9UW8oTyhiLEYuRC5qcSkpLHQ9bnx8cCx1PTE7YS5wcmVmaXghPT0iVUEifHxjfHwodT01KTtmb3IodmFyIHY9MDt2PGwubGVuZ3RoO3YrKylpZih2PHUpaWYoYylITChjLGxbdl0scixiLHtvZTp0LG9wdGlvbnM6cX0pO2Vsc2UgaWYoYS5wcmVmaXg9PT0KIkFXIiYmYS5pZHNbZENbMV1dKXt2YXIgeD1hLmlkc1tkQ1swXV0seT1hLmlkc1tkQ1sxXV0sej1sW3ZdLEM9YixEPXtvZTp0LG9wdGlvbnM6cX07UCgyMik7aWYoeil7RD1EfHx7fTt2YXIgST1JTChKTCxELHgsQyksRz17YWs6eCxjbDp5fTtELm9lPT09dm9pZCAwJiYoRy5hdXRvcmVwbGFjZT16KTtLTChHLEMpO0koMixELm9lLEcseiwwLE1iKCksRC5vcHRpb25zKX19ZWxzZSBpZihhLnByZWZpeD09PSJVQSIpe3ZhciBOPWEuZGVzdGluYXRpb25JZCxTPWxbdl0sVz17b2U6dH07UCgyMyk7aWYoUyl7Vz1XfHx7fTt2YXIgZWE9SUwoTEwsVyxOKSxqYT17fTtXLm9lIT09dm9pZCAwP2phLnJlY2VpdmVyPVcub2U6amEucmVwbGFjZT1TO2phLmdhX3dwaWQ9TjtqYS5kZXN0aW5hdGlvbj1TO2VhKDIsTWIoKSxqYSl9fX19fX0sSEw9ZnVuY3Rpb24oYSxiLGMsZCxlKXtQKDIxKTtpZihiJiZjKXtlPWV8fHt9O2Zvcih2YXIgZj17Y291bnRyeU5hbWVDb2RlOmMsZGVzdGluYXRpb25OdW1iZXI6YiwKcmV0cmlldmFsVGltZTpNYigpfSxnPWFsKDQsZnVuY3Rpb24oKXtyZXR1cm57fX0pLGg9MDtoPGEubGVuZ3RoO2grKyl7dmFyIGw9YVtoXTtnW2wuaWRdfHwobCYmbC5wcmVmaXg9PT0iQVciJiYhZi5hZERhdGEmJmwuaWRzLmxlbmd0aD49Mj8oZi5hZERhdGE9e2FrOmwuaWRzW2RDWzBdXSxjbDpsLmlkc1tkQ1sxXV19LEtMKGYuYWREYXRhLGQpLGdbbC5pZF09ITApOmwmJmwucHJlZml4PT09IlVBIiYmIWYuZ2FEYXRhJiYoZi5nYURhdGE9e2dhV3BpZDpsLmRlc3RpbmF0aW9uSWR9LGdbbC5pZF09ITApKX0oZi5nYURhdGF8fGYuYWREYXRhKSYmSUwoTkwsZSx2b2lkIDAsZCkoZS5vZSxmLGUub3B0aW9ucyl9fSxLTD1mdW5jdGlvbihhLGIpe2EuZG1hPSR0KCk7YXUoKSYmKGEuZG1hQ3BzPVp0KCkpO1N0KGIpP2EubnBhPSIwIjphLm5wYT0iMSJ9LElMPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPUE7aWYoZVthLmZ1bmN0aW9uTmFtZV0pcmV0dXJuIGIucm8mJmJkKGIucm8pLGVbYS5mdW5jdGlvbk5hbWVdOwp2YXIgZj1PTCgpO2VbYS5mdW5jdGlvbk5hbWVdPWY7aWYoYS5hZGRpdGlvbmFsUXVldWVzKWZvcih2YXIgZz0wO2c8YS5hZGRpdGlvbmFsUXVldWVzLmxlbmd0aDtnKyspZVthLmFkZGl0aW9uYWxRdWV1ZXNbZ11dPWVbYS5hZGRpdGlvbmFsUXVldWVzW2ddXXx8T0woKTthLmlkS2V5JiZlW2EuaWRLZXldPT09dm9pZCAwJiYoZVthLmlkS2V5XT1jKTtabih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjAsZXZlbnRJZDpkPT1udWxsP3ZvaWQgMDpkLmV2ZW50SWQscHJpb3JpdHlJZDpkPT1udWxsP3ZvaWQgMDpkLnByaW9yaXR5SWR9LGRBKCJodHRwczovLyIsImh0dHA6Ly8iLGEuc2NyaXB0VXJsKSxiLnJvLGIudHYpO3JldHVybiBmfSxPTD1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXthLnE9YS5xfHxbXTthLnEucHVzaChhcmd1bWVudHMpfXJldHVybiBhfSxKTD17ZnVuY3Rpb25OYW1lOiJfZ29vZ1djbUltcGwiLGlkS2V5OiJfZ29vZ1djbUFrIixzY3JpcHRVcmw6Ind3dy5nc3RhdGljLmNvbS93Y20vbG9hZGVyLmpzIn0sCkxMPXtmdW5jdGlvbk5hbWU6Il9nYVBob25lSW1wbCIsaWRLZXk6ImdhX3dwaWQiLHNjcmlwdFVybDoid3d3LmdzdGF0aWMuY29tL2dhcGhvbmUvbG9hZGVyLmpzIn0sUEw9e1lvOkxmKDIpLGdyOiI1In0sTkw9e2Z1bmN0aW9uTmFtZToiX2dvb2dDYWxsVHJhY2tpbmdJbXBsIixhZGRpdGlvbmFsUXVldWVzOltMTC5mdW5jdGlvbk5hbWUsSkwuZnVuY3Rpb25OYW1lXSxzY3JpcHRVcmw6Ind3dy5nc3RhdGljLmNvbS9jYWxsLXRyYWNraW5nL2NhbGwtdHJhY2tpbmdfIisoUEwuWW98fFBMLmdyKSsiLmpzIn07dmFyIFFMPWZ1bmN0aW9uKGEpe1EoYSxILkouc2EpfHxNTChhLnRhcmdldCxhLk0pO2EuaXNBYm9ydGVkPSEwfTt2YXIgUkw9ZnVuY3Rpb24oYSl7WG8oRi5ELmthKSYmY3goYSl9O3ZhciBTTD1mdW5jdGlvbihhKXt2YXIgYj1YbyhGLkQua2EpP21qKCJwc2NkbCIpOiJkZW5pZWQiO2IhPW51bGwmJlUoYSxGLkQuamgsYil9O3ZhciBUTD1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9e319O3ZhciBVTD1mdW5jdGlvbihhLGIpe3ZhciBjPWEuTTtpZihiPT09dm9pZCAwPzA6Yil7dmFyIGQ9Yy5nZXRNZXJnZWRWYWx1ZXMoRi5ELk9hKTtZYihkKSYmVShhLEYuRC5MaSxZYihkKSl9dmFyIGU9T28oZkQoRi5ELk9hKSksZj1jLmdldE1lcmdlZFZhbHVlcyhGLkQuT2EsMSxlKSxnPWMuZ2V0TWVyZ2VkVmFsdWVzKEYuRC5PYSwyKSxoPVliKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZixuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LFRMLkgpKSwiLiIpLGw9WWIoZywiLiIpO2gmJlUoYSxGLkQuWGMsaCk7bCYmVShhLEYuRC5WYyxsKX07dmFyIFZMPWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkoudHEpO2ImJlUoYSxGLkQuSWwsYil9O2Z1bmN0aW9uIFdMKGEpe3ZhciBiPUtCKCExKTtpZihiIT1udWxsJiZiLnN0YXR1cyl7dmFyIGM9e2d0YjpiLnN0YXR1c307Yi5kZWxheSYmKGMuZ3RiZD1iLmRlbGF5KTthLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEsYyl9fTt2YXIgWEw9ZnVuY3Rpb24oYSl7em0oKT09PSJVUy1DTyImJlUoYSxGLkQuTGUsMSl9O3ZhciBZTD17UmE6e0NrOjEsem46MixIbjozLEluOjQsSm46NSx3bjo2fX07WUwuUmFbWUwuUmEuQ2tdPSJBRE9CRV9DT01NRVJDRSI7WUwuUmFbWUwuUmEuem5dPSJTUVVBUkVTUEFDRSI7WUwuUmFbWUwuUmEuSG5dPSJXT09fQ09NTUVSQ0UiO1lMLlJhW1lMLlJhLkluXT0iV09PX0NPTU1FUkNFX0xFR0FDWSI7WUwuUmFbWUwuUmEuSm5dPSJXT1JEX1BSRVNTIjtZTC5SYVtZTC5SYS53bl09IlNIT1BJRlkiO2Z1bmN0aW9uIFpMKGEpe3ZhciBiPUE7cmV0dXJuIEtqKGIuZXNjYXBlKGIuYXRvYihhKSkpfQpmdW5jdGlvbiAkTCgpe3RyeXtpZighTSg0OTgpJiYhTSg0MjUpKXJldHVybltdO3ZhciBhPW5tKGptLmJhLmxuKTtpZihBcnJheS5pc0FycmF5KGEpKXJldHVybiBhO3ZhciBiPVtdLGM7YTp7dHJ5e2M9ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtkYXRhLXJlcXVpcmVtb2R1bGVePSJtYWdlLyJdJyk7YnJlYWsgYX1jYXRjaCh5KXt9Yz0hMX1jJiZiLnB1c2goWUwuUmEuQ2spO3ZhciBkO2E6e3RyeXt2YXIgZT1aTCgiWVhOelpYUnpMbk54ZFdGeVpYTndZV05sTG1OdmJTOD0iKTtkPWU/ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtzcmNePSIvLycrZSsnIl0nKTohMTticmVhayBhfWNhdGNoKHkpe31kPSExfWQmJmIucHVzaChZTC5SYS56bik7dmFyIGY7YTp7aWYoTSg0MjUpKXRyeXt2YXIgZz1aTCgiYzJodmNHbG1lUzVqYjIwPSIpLGg9WkwoImMyaHZjR2xtZVdOa2JpNWpiMjA9Iik7Zj1nJiZoPyEhQi5xdWVyeVNlbGVjdG9yKCdzY3JpcHRbc3JjKj0iY2RuLicrZysnIl0sbWV0YVtwcm9wZXJ0eT0ib2c6aW1hZ2UiXVtjb250ZW50Kj0iY2RuLicrCihnKyciXSxsaW5rW3JlbD0icHJlY29ubmVjdCJdW2hyZWYqPSJjZG4uJykrKGcrJyJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9ImZvbnRzLicpKyhoKyciXSxsaW5rW3JlbD0icHJlY29ubmVjdCJdW2hyZWYqPSJpdGVyYWJsZS1zaG9waWZ5Il0sbGlua1tyZWw9InByZWNvbm5lY3QiXVtocmVmKj0idi4nKSsoZysnIl0nKSk6ITE7YnJlYWsgYX1jYXRjaCh5KXt9Zj0hMX1mJiZiLnB1c2goWUwuUmEud24pO3ZhciBsO2E6e3RyeXtsPSEhQi5xdWVyeVNlbGVjdG9yKCdzY3JpcHRbc3JjKj0id29vY29tbWVyY2UiXSxsaW5rW2hyZWYqPSJ3b29jb21tZXJjZSJdLFtjbGFzc3w9Indvb2NvbW1lcmNlIl0nKTticmVhayBhfWNhdGNoKHkpe31sPSExfWwmJmIucHVzaChZTC5SYS5Jbik7dmFyIG47YTp7dHJ5e3ZhciBwLHE9KChwPUIubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpwLmhvc3RuYW1lKXx8IiIscix0PSgocj1CLmxvY2F0aW9uKT09bnVsbD92b2lkIDA6ci5vcmlnaW4pfHwKIiIsdT1aTCgiTG5kdmNtUndjbVZ6Y3k1amIyMD0iKSx2PVpMKCJMeTl6TG5jdWIzSm4iKTtuPXUmJnY/VGIocSx1KXx8ISFCLnF1ZXJ5U2VsZWN0b3IoJ1tzcmNePSInK3QrJy93cC1jb250ZW50Il0sbWV0YVtuYW1lPSJnZW5lcmF0b3IiXVtjb250ZW50Xj0iV29yZFByZXNzICJdLGxpbmtbcmVsPSJkbnMtcHJlZmV0Y2giXVtocmVmPSInKyh2KyciXScpKTohMTticmVhayBhfWNhdGNoKHkpe31uPSExfW4mJmIucHVzaChZTC5SYS5Kbik7dmFyIHg7YTp7dHJ5e3g9ISFCLnF1ZXJ5U2VsZWN0b3IoJ1tjbGFzcyo9Indvb2NvbW1lcmNlIl0sbWV0YVtuYW1lPSJnZW5lcmF0b3IiXVtjb250ZW50Xj0iV29vQ29tbWVyY2UgIl0nKTticmVhayBhfWNhdGNoKHkpe314PSExfXgmJmIucHVzaChZTC5SYS5Ibik7VUIoKSYmbW0oam0uYmEubG4sYik7cmV0dXJuIGJ9Y2F0Y2goeSl7fXJldHVybltdfTtmdW5jdGlvbiB3TShhKXtpZihNKDQyNSkmJlEoYSxILkouRmMpKXt2YXIgYj1OZig2NywxNTAwKSxjPWEubWVyZ2VIaXREYXRhRm9yS2V5LGQ9Ri5ELlRhLGU9e307Yy5jYWxsKGEsZCxlKX19O3ZhciB4TT0icGxhdGZvcm0gcGxhdGZvcm1WZXJzaW9uIGFyY2hpdGVjdHVyZSBtb2RlbCB1YUZ1bGxWZXJzaW9uIGJpdG5lc3MgZnVsbFZlcnNpb25MaXN0IHdvdzY0Ii5zcGxpdCgiICIpO2Z1bmN0aW9uIHlNKGEpe3ZhciBiO3JldHVybihiPWEuZ29vZ2xlX3RhZ19kYXRhKSE9bnVsbD9iOmEuZ29vZ2xlX3RhZ19kYXRhPXt9fWZ1bmN0aW9uIHpNKGEpe3ZhciBiLGM7cmV0dXJuKGM9KGI9YS5nb29nbGVfdGFnX2RhdGEpPT1udWxsP3ZvaWQgMDpiLnVhY2hfcHJvbWlzZSkhPW51bGw/YzpudWxsfWZ1bmN0aW9uIEFNKGEpe3ZhciBiLGM7cmV0dXJuIHR5cGVvZigoYj1hLm5hdmlnYXRvcik9PW51bGw/dm9pZCAwOihjPWIudXNlckFnZW50RGF0YSk9PW51bGw/dm9pZCAwOmMuZ2V0SGlnaEVudHJvcHlWYWx1ZXMpPT09ImZ1bmN0aW9uIn0KZnVuY3Rpb24gQk0oYSl7aWYoIUFNKGEpKXJldHVybiBudWxsO3ZhciBiPXlNKGEpO2lmKGIudWFjaF9wcm9taXNlKXJldHVybiBiLnVhY2hfcHJvbWlzZTt2YXIgYz1hLm5hdmlnYXRvci51c2VyQWdlbnREYXRhLmdldEhpZ2hFbnRyb3B5VmFsdWVzKHhNKS50aGVuKGZ1bmN0aW9uKGQpe2IudWFjaCE9bnVsbHx8KGIudWFjaD1kKTtyZXR1cm4gZH0pO3JldHVybiBiLnVhY2hfcHJvbWlzZT1jfTsKdmFyIENNPWZ1bmN0aW9uKCl7dGhpcy53aW5kb3c9QTt0aGlzLk49TmJ9O0NNLnByb3RvdHlwZS5SPWZ1bmN0aW9uKCl7aWYoQU0odGhpcy53aW5kb3cpJiYodGhpcy5aPXRoaXMuTigpLCF6TSh0aGlzLndpbmRvdykpKXt2YXIgYT1CTSh0aGlzLndpbmRvdyk7YSYmYS50aGVuKGZ1bmN0aW9uKCl7UCg5NSl9KS5jYXRjaChmdW5jdGlvbigpe1AoOTYpfSl9fTtDTS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3ZhciBhPXRoaXMud2luZG93Lmdvb2dsZV90YWdfZGF0YSxiO2lmKGEhPW51bGwmJmEudWFjaCl7dmFyIGM9YS51YWNoLGQ9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjKTtjLmZ1bGxWZXJzaW9uTGlzdCYmKGQuZnVsbFZlcnNpb25MaXN0PWMuZnVsbFZlcnNpb25MaXN0LnNsaWNlKDApKTtiPWR9ZWxzZSBiPW51bGw7cmV0dXJuIGJ9O0NNLnByb3RvdHlwZS5mYT1mdW5jdGlvbihhKXt2YXIgYj0wLGM9dGhpcyxkPWZ1bmN0aW9uKGgsbCl7dHJ5e2EoaCxsKX1jYXRjaChuKXt9fSwKZT10aGlzLkgoKTtpZihlKWQoZSk7ZWxzZXt2YXIgZj16TSh0aGlzLndpbmRvdyk7aWYoZil7Yj1NYXRoLm1pbihNYXRoLm1heChpc0Zpbml0ZShiKT9iOjAsMCksMUUzKTt2YXIgZz10aGlzLndpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZC5LZ3x8KGQuS2c9ITAsUCgxMDYpLGQobnVsbCxFcnJvcigiVGltZW91dCIpKSl9LGIpO2YudGhlbihmdW5jdGlvbihoKXtkLktnfHwoZC5LZz0hMCxQKDEwNCksYy53aW5kb3cuY2xlYXJUaW1lb3V0KGcpLGQoaCkpfSkuY2F0Y2goZnVuY3Rpb24oaCl7ZC5LZ3x8KGQuS2c9ITAsUCgxMDUpLGMud2luZG93LmNsZWFyVGltZW91dChnKSxkKG51bGwsaCkpfSl9ZWxzZSBkKG51bGwpfX07Q00ucHJvdG90eXBlLks9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5aIT09dm9pZCAwfTt2YXIgRE09ZnVuY3Rpb24oKXt2YXIgYTthPWE9PT12b2lkIDA/QTphO3JldHVybiBBTShhKX0sRU09ZnVuY3Rpb24oYSl7dmFyIGI9e307YltGLkQuY2ddPWEuYXJjaGl0ZWN0dXJlOwpiW0YuRC5kZ109YS5iaXRuZXNzO2EuZnVsbFZlcnNpb25MaXN0JiYoYltGLkQuZWddPWEuZnVsbFZlcnNpb25MaXN0Lm1hcChmdW5jdGlvbihjKXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGMuYnJhbmR8fCIiKSsiOyIrZW5jb2RlVVJJQ29tcG9uZW50KGMudmVyc2lvbnx8IiIpfSkuam9pbigifCIpKTtiW0YuRC5mZ109YS5tb2JpbGU/IjEiOiIwIjtiW0YuRC5nZ109YS5tb2RlbDtiW0YuRC5oZ109YS5wbGF0Zm9ybTtiW0YuRC5pZ109YS5wbGF0Zm9ybVZlcnNpb247YltGLkQuamddPWEud293NjQ/IjEiOiIwIjtyZXR1cm4gYn0sRk09bmV3IENNO3ZhciBHTT1mdW5jdGlvbihhKXtpZighRE0oKSlQKDg3KTtlbHNlIGlmKEZNLksoKSl7UCg4NSk7dmFyIGI9Rk0uSCgpO2lmKGIpe2lmKGIpZm9yKHZhciBjPUVNKGIpLGQ9bShPYmplY3Qua2V5cyhjKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7VShhLGYsY1tmXSl9fWVsc2UgUCg4Nil9fTtmdW5jdGlvbiBITShhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVEoYSxILkouc2cpLGQ9ZEkoYSwiY3VzdG9tX2V2ZW50X2FjY2VwdF9ydWxlcyIsITEpJiYhYjtpZihjKXt2YXIgZT1jLmluZGV4T2YoYS50YXJnZXQuZGVzdGluYXRpb25JZCk+PTAsZj0hMDtRKGEsSC5KLkNjKSYmKGY9UShhLEguSi5OYik9PT12aygpKTtlJiZmP1YoYSxILkoua2ksITApOihWKGEsSC5KLmtpLCExKSxkfHwoYS5pc0Fib3J0ZWQ9ITApKTtpZihhLmNhbkJlQWNjZXB0ZWQoKSl7dmFyIGc9dWsoKS5pbmRleE9mKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpPj0wLGg9ITE7aWYoIWcpe3ZhciBsLG49KGw9bmsoYS50YXJnZXQuZGVzdGluYXRpb25JZCkpPT1udWxsP3ZvaWQgMDpsLmNhbm9uaWNhbENvbnRhaW5lcklkO24mJihoPXZrKCk9PT1uKX1nfHxoP1EoYSxILkoua2kpJiZhLmFjY2VwdCgpOmEuaXNBYm9ydGVkPSEwfWVsc2UgYS5pc0Fib3J0ZWQ9ITB9fTt2YXIgSU09ZnVuY3Rpb24oYSl7dmFyIGI9TyhhLk0sRi5ELlpjKSxjPU8oYS5NLEYuRC5ZYyk7YiYmIWM/KGEuZXZlbnROYW1lIT09Ri5ELndhJiZhLmV2ZW50TmFtZSE9PUYuRC55ZiYmUCgxMzEpLGEuaXNBYm9ydGVkPSEwKTohYiYmYyYmKFAoMTMyKSxhLmlzQWJvcnRlZD0hMCl9O3ZhciBKTT1mdW5jdGlvbihhKXtpZihhLmV2ZW50TmFtZT09PUYuRC53YSl7dmFyIGI9SWYoMTEpLGM9UShhLEguSi5IcSk7ISghTSg1NTApJiZifHxjKXx8YS50YXJnZXQuSmMoKXx8WUcoImlkY19jb25maWdfcHYiLGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpfHwoYS5pc0Fib3J0ZWQ9ITApfX07dmFyIExNPWZ1bmN0aW9uKGEsYil7S00uTihhLGIpfSxNTT1mdW5jdGlvbigpe3RoaXMuSD17fX07TU0ucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLkhbYV07Y3x8KGM9dGhpcy5IW2FdPVtdKTtjLnB1c2goYil9O01NLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuSFthLnRhcmdldC5kZXN0aW5hdGlvbklkXTtpZighYS5pc0Fib3J0ZWQmJmIpZm9yKHZhciBjPWZJKGEpLGQ9MDtkPGIubGVuZ3RoOysrZCl7dHJ5e2JbZF0oYyl9Y2F0Y2goZSl7YS5pc0Fib3J0ZWQ9ITB9aWYoYS5pc0Fib3J0ZWQpYnJlYWt9fTt2YXIgS009bmV3IE1NO3ZhciBOTT1mdW5jdGlvbihhKXtLTS5LKGEpO307dmFyIE9NPWZ1bmN0aW9uKGEpe2EmJihBcCg0OTUsYSksQXAoNTY3LGEpLEFwKDQ1MCxhKSxBcCg0NDMsYSksQXAoNTg3LGEpLEFwKDU3NixhKSxBcCg1NzAsYSksQXAoNTgxLGEpLEFwKDYwMixhKSl9LFBNPWZ1bmN0aW9uKGEpe2lmKFEoYSxILkoud2YpJiZYbyhmcCkpe3ZhciBiPVEoYSxILkouR2EpLGM9UShhLEguSi5kYSkhPT1YLlYudWImJlEoYSxILkouZGEpIT09WC5WLk9iJiZRKGEsSC5KLmRhKSE9PVguVi5GYiYmYS5ldmVudE5hbWUhPT1GLkQuSmI7SHYoYixjKTt2YXIgZD1EdltHdihiLnByZWZpeCldO09NKGQpO1UoYSxGLkQuRWQsZCl9fTtmdW5jdGlvbiBRTSgpe3JldHVybiBraigiZGVkdXBlX2djbGlkIixmdW5jdGlvbigpe3JldHVybiBBdigpfSl9O3ZhciBSTT0vXih3d3dcLik/Z29vZ2xlKFwuY29tPyk/KFwuW2Etel17Mn10Pyk/JC8sU009L153d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20kLztmdW5jdGlvbiBUTShhKXthfHwoYT1VTSgpKTtyZXR1cm4gYS5OdD8hMTphLm5zfHxhLnFzfHxhLnZzfHxhLnJzfHxhLkRnfHxhLlRofHxhLlRyfHxhLlZoPT09ImF3LmRzInx8TSgyMzUpJiZhLlZoPT09ImF3LmR2Inx8YS5Zcj8hMDohMX0KZnVuY3Rpb24gVU0oKXt2YXIgYT17fSxiPVVxKCEwKTthLk50PSEhYi5fdXA7dmFyIGM9ZXMoKSxkPWF0KCk7YS5ucz1jLmF3IT09dm9pZCAwO2EucXM9Yy5kYyE9PXZvaWQgMDthLnZzPWMud2JyYWlkIT09dm9pZCAwO2EucnM9Yy5nYnJhaWQhPT12b2lkIDA7YS5WaD10eXBlb2YgYy5nY2xzcmM9PT0ic3RyaW5nIj9jLmdjbHNyYzp2b2lkIDA7YS5EZz1kLkRnO2EuVGg9ZC5UaDt2YXIgZT1CLnJlZmVycmVyP0xqKFJqKEIucmVmZXJyZXIpLCJob3N0Iik6IiI7YS5Zcj1STS50ZXN0KGUpO2EuVHI9U00udGVzdChlKTtyZXR1cm4gYX07ZnVuY3Rpb24gVk0oKXt2YXIgYT1BLl9fdXNwYXBpO2lmKHliKGEpKXt2YXIgYj0iIjt0cnl7YSgiZ2V0VVNQRGF0YSIsMSxmdW5jdGlvbihjLGQpe2lmKGQmJmMpe3ZhciBlPWMudXNwU3RyaW5nO2UmJlJlZ0V4cCgiXltcXGRhLXpBLVotXXsxLDIwfSQiKS50ZXN0KGUpJiYoYj1lKX19KX1jYXRjaChjKXt9cmV0dXJuIGJ9fTsKdmFyIFdNPWZ1bmN0aW9uKGEpe3ZhciBiPVhvKGZwKTtWKGEsSC5KLlllLE8oYS5NLEYuRC5tYikhPW51bGwmJk8oYS5NLEYuRC5tYikhPT0hMSYmIWIpO3ZhciBjPVEoYSxILkouZGopLGQ9TyhhLk0sRi5ELnVjKSE9PSExLGU9TEsoYSk7ZHx8VShhLEYuRC5IZCwiMSIpO3ZhciBmPUhyKGUucHJlZml4KSxnPVEoYSxILkouc2EpfHxRKGEsSC5KLnVnKXx8UShhLEguSi5XZSk7Y3x8Z3x8VShhLCJfJmFwdmMiLCIwIik7YS5NLmlzR3RtRXZlbnQmJlUoYSxGLkQuSWwsImciKTtVKGEsRi5ELkVkKTtVKGEsRi5ELk1iKTtpZihiJiYoVShhLEYuRC5NYix5TCgpKSxkKSl7SHYoZSk7dmFyIGg9RHZbR3YoZS5wcmVmaXgpXTtVKGEsRi5ELkVkLGgpO09NKGgpfWlmKGEuZXZlbnROYW1lPT09Ri5ELndhJiYhZyl7dmFyIGw9TyhhLk0sRi5ELnpjKSxuPU8oYS5NLEYuRC5EYil8fHt9O1BLKHtUbjpkLG1vOm4sUW86bCxVbjplfSk7IWMmJllzKGYpJiYoVihhLEguSi52ZCwhMCksVShhLCJfJmFwdmMiLAoiMSIpKX1pZihjKWEuaXNBYm9ydGVkPSEwO2Vsc2V7YS50YXJnZXQuZGVzdGluYXRpb25JZCYmVShhLEYuRC5RZSxhLnRhcmdldC5kZXN0aW5hdGlvbklkKTtVKGEsRi5ELlViLGEuZXZlbnROYW1lKTthLmV2ZW50TmFtZT09PUYuRC53YSYmVShhLEYuRC5VYixGLkQuc2MpO2lmKFEoYSxILkouc2EpKVUoYSxGLkQuVWIsRi5ELndwKSxVKGEsRi5ELnNhLCIxIik7ZWxzZSBpZihRKGEsSC5KLnVnKSlVKGEsRi5ELlViLEYuRC5IcCk7ZWxzZSBpZihRKGEsSC5KLldlKSlVKGEsRi5ELlViLEYuRC5FcCk7ZWxzZXt2YXIgcD1lcygpO1UoYSxGLkQuRGQscC5nY2xpZCk7VShhLEYuRC5LZCxwLmRjbGlkKTtVKGEsRi5ELkFsLHAuZ2Nsc3JjKTtpZighUihhLEYuRC5EZCkmJiFSKGEsRi5ELktkKXx8TSg0MjEpKVUoYSxGLkQuRWUscC53YnJhaWQpLFUoYSxGLkQuQmYscC5nYnJhaWQpO3ZhciBxPU0oNTg5KSxyPWZ1bmN0aW9uKGZhKXtyZXR1cm4gZmEucmVwbGFjZSgvW1w/I10uKiQvLCIiKX0sCnQ9ISFPKGEuTSxGLkQuemEpLHU9cT90P2Z1bmN0aW9uKGZhKXtyZXR1cm4geEwocihmYSkpfTpmdW5jdGlvbihmYSl7cmV0dXJuIHhMKGZhLnJlcGxhY2UoLyMuKiQvLCIiKSl9OnIsdj1idCh1KTtVKGEsRi5ELnphLHYpO3ZhciB4PSEhTyhhLk0sRi5ELlVhKSx5PUIucmVmZXJyZXI7VShhLEYuRC5VYSxxP3g/cih5KTp5LnJlcGxhY2UoLyMuKiQvLCIiKTpCLnJlZmVycmVyP0xqKFJqKEIucmVmZXJyZXIpLCJob3N0Iik6IiIpO3dMKGEsdix1LCEwKTtpZihLYyl7dmFyIHo9TGooUmooS2MpLCJob3N0Iik7eiYmVShhLEYuRC5ibSx6KX1pZighUShhLEguSi5XZSkpe3ZhciBDPWF0KCk7VShhLEYuRC56ZixDLkRnKTtVKGEsRi5ELkFmLEMuU3IpfXZhciBEPVVNKCk7VE0oRCkmJlUoYSxGLkQuUGQsIjEiKTtVKGEsRi5ELkRsLFFNKCkpO1VxKCExKS5fdXA9PT0iMSImJlUoYSxGLkQuUWwsIjEiKX13by5IPSEwO1UoYSxGLkQuU2IpO1UoYSxGLkQubGIpO2lmKE0oNDIxKSl7dmFyIEk9RnIoZSk7CkkubGVuZ3RoPjAmJlUoYSxGLkQuU2IsSS5qb2luKCIuIikpO3ZhciBHPURyKGYrIl9hdyIpO0cubGVuZ3RoPjAmJlUoYSxGLkQubGIsRy5qb2luKCIuIikpfWVsc2UgaWYoIVIoYSxGLkQuRGQpJiYhUihhLEYuRC5LZCkmJldzKGYpKXt2YXIgTj1GcihlKTtOLmxlbmd0aD4wJiZVKGEsRi5ELlNiLE4uam9pbigiLiIpKX1lbHNlIGlmKCFSKGEsRi5ELkVlKSYmYil7dmFyIFM9RHIoZisiX2F3Iik7Uy5sZW5ndGg+MCYmVShhLEYuRC5sYixTLmpvaW4oIi4iKSl9VShhLEYuRC5VbCxxZCgpKTthLk0uaXNHdG1FdmVudCYmKGEuTS5FYVtGLkQuUmNdPWZEKEYuRC5SYykpO1N0KGEuTSk/VShhLEYuRC5kZSwhMSk6VShhLEYuRC5kZSwhMCk7VihhLEguSi5CaywhMCk7dmFyIFc9Vk0oKTtXIT09dm9pZCAwJiZVKGEsRi5ELmtnLFd8fCJlcnJvciIpO3ZhciBlYT1MdCgpO2VhJiZVKGEsRi5ELktlLGVhKTt2YXIgamE9S3QoKTtqYSYmVShhLEYuRC5PZSxqYSk7UShhLEguSi5QYyl8fFYoYSxILkouSmEsCiExKX19Owp2YXIgWE09ZnVuY3Rpb24oYSxiLGMpe2I9Yj09PXZvaWQgMD8hMDpiO2M9Yz09PXZvaWQgMD97fTpjO2lmKGEuZXZlbnROYW1lPT09Ri5ELkpiJiYhYS5NLmlzR3RtRXZlbnQpe3ZhciBkPU8oYS5NLEYuRC5TZik7aWYodHlwZW9mIGQ9PT0iZnVuY3Rpb24iJiYhUShhLEguSi5zYSkpe3ZhciBlPVN0cmluZyhPKGEuTSxGLkQuVGYpKSxmPWU7Y1tlXSYmKGY9Y1tlXSk7dmFyIGc9UihhLGYpfHxPKGEuTSxlKTtpZihiKXtpZih0eXBlb2YgZD09PSJmdW5jdGlvbiIpaWYoZT09PUYuRC5sYiYmZyE9PXZvaWQgMCl7dmFyIGg9Zy5zcGxpdCgiLiIpO2gubGVuZ3RoPT09MD9kKHZvaWQgMCk6aC5sZW5ndGg9PT0xP2QoaFswXSk6ZChoKX1lbHNlIGlmKGU9PT1GLkQucXEmJk0oMjU4KSl7dmFyIGwsbj17fTtYbyhmcCkmJihuLmF1aWQ9UihhLEYuRC5FZCkpO3ZhciBwPVVNKCk7aWYoVE0ocCkpbi5nYWRfc291cmNlPXAuRGcsbi5nYWRfY2FtcGFpZ25pZD1wLlRoLG4uc2Vzc2lvbl9zdGFydF90aW1lX3VzZWM9CihEYXRlLm5vdygpKjFFMykudG9TdHJpbmcoKSxuLmxhbmRpbmdfcGFnZV91cmw9QS5sb2NhdGlvbi5ocmVmLG4ubGFuZGluZ19wYWdlX3JlZmVycmVyPUIucmVmZXJyZXIsbi5sYW5kaW5nX3BhZ2VfdXNlcl9hZ2VudD1IYy51c2VyQWdlbnQ7ZWxzZXt2YXIgcT1RKGEsSC5KLkdhKTtuLmdhZF9zb3VyY2U9UnMocS5wcmVmaXgpLkVnfWw9YnRvYShKU09OLnN0cmluZ2lmeShuKSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csIl8iKS5yZXBsYWNlKC89KyQvLCIiKTtkKGwpfWVsc2UgZChnKX1lbHNlIGQoZyl9YS5pc0Fib3J0ZWQ9ITB9fTt2YXIgWU09ZnVuY3Rpb24oYSl7aWYoTSg0MjUpJiZRKGEsSC5KLkZjKSl7Zm9yKHZhciBiPVsiXyZhcHZjIiwidGlkcyIsRi5ELlRhLEYuRC5RaSxGLkQuVWIsRi5ELlFlLEYuRC5WYyxGLkQuWGNdLGM9bShldShhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7aWYoZT09PUYuRC56YSl7dmFyIGY9UihhLGUpO2YmJihmPWYucmVwbGFjZSgvW1w/I10uKiQvLCIiKSk7VShhLGUsZil9ZWxzZSBiLmluY2x1ZGVzKGUpfHxVKGEsZSl9VihhLEguSi5YZyk7VihhLEguSi5oZCl9fTtmdW5jdGlvbiBaTShhKXtpZihmbi5LKWlmKHdvLkg9ITAsYS5ldmVudE5hbWU9PT1GLkQud2Epem8oYS5NLGEudGFyZ2V0LmlkKTtlbHNle1EoYSxILkouUGMpfHwod28uS1thLnRhcmdldC5pZF09ITApO3ZhciBiPVEoYSxILkouTmIpO1pCKGIpfX07dmFyICRNPWZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlLGY9Yj09PXZvaWQgMD97fTpiO2M9Zi5Taj09PXZvaWQgMD8hMTpmLlNqO2Q9Zi5Naj09PXZvaWQgMD8hMTpmLk1qO2U9Zi5rbz09PXZvaWQgMD8hMTpmLmtvO2R8fChhLk0uaXNHdG1FdmVudD9RKGEsSC5KLmRhKSE9PVguVi54YSYmYS5ldmVudE5hbWUmJlUoYSxGLkQuVWIsYS5ldmVudE5hbWUpOlUoYSxGLkQuVWIsYS5ldmVudE5hbWUpKTtHYihhLk0uRWEsZnVuY3Rpb24oZyxoKXtNeltnXXx8YyYmQm9bZ118fGUmJk96W2ddfHxVKGEsZyxoKX0pfTt2YXIgYU49ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPW0oW0YuRC5QYSxGLkQuUWEsRi5ELmViLEYuRC5OZSxGLkQuR2UsRi5ELlVkLEYuRC5JZSxGLkQuVGMsRi5ELkxkLEYuRC5raCxGLkQuRmYsRi5ELkRmLEYuRC5FZixGLkQuQ2YsRi5ELndpLEYuRC5TZCxGLkQuUWQsRi5ELlJkLEYuRC50Yl0pLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWEuY29weVRvSGl0RGF0YShjLnZhbHVlKX07ZnVuY3Rpb24gYk4oYSxiKXtyZXR1cm4ga3IoImdzaWRfZGMiLHt2YWx1ZTp7am9pbklkOmEsbGFzdEpvaW5lZFRpbWVNczpifSxleHBpcmVzOmIrM0U1fSk9PT0wPyEwOiExfTsKdmFyIGNOPWZ1bmN0aW9uKGEpe2lmKFhvKGZwKSl7dmFyIGI7YTp7dmFyIGM9bnIoImdzaWRfZGMiKTtpZihjLmVycm9yPT09MCYmYy52YWx1ZSYmdHlwZW9mIGMudmFsdWU9PT0ib2JqZWN0Iil7dmFyIGQ9Yy52YWx1ZTtpZihkLnZhbHVlJiZ0eXBlb2YgZC52YWx1ZT09PSJvYmplY3QiKXt2YXIgZT1kLnZhbHVlO2lmKGUuam9pbklkJiZlLmxhc3RKb2luZWRUaW1lTXMmJnR5cGVvZiBlLmpvaW5JZD09PSJzdHJpbmciJiZ0eXBlb2YgZS5sYXN0Sm9pbmVkVGltZU1zPT09Im51bWJlciIpe2I9ZTticmVhayBhfX19Yj12b2lkIDB9dmFyIGY9YixnPWY9PW51bGw/dm9pZCAwOmYuam9pbklkLGg9TmIoKTtpZighZnx8IWd8fGYubGFzdEpvaW5lZFRpbWVNczxoLTNFNSl7dmFyIGw9Y2MoKTtnPWwmJmJOKGwsTmIoKSk/bDp2b2lkIDA7ZyYmVihhLEguSi5oZCwhMCl9ZWxzZSBnJiZmLmxhc3RKb2luZWRUaW1lTXM8aC02RTQmJmJOKGYuam9pbklkLGgpJiZWKGEsSC5KLmhkLCEwKTtnJiZNKDQ3NCkmJgpWKGEsSC5KLlhnLGcpfX07dmFyIGROPWZ1bmN0aW9uKGEpe1YoYSxILkoud2YsTyhhLk0sRi5ELnVjKSE9PSExKTtWKGEsSC5KLkdhLExLKGEpKTtWKGEsSC5KLlhlLE8oYS5NLEYuRC5tYikhPW51bGwmJk8oYS5NLEYuRC5tYikhPT0hMSk7VihhLEguSi53ZCxTdChhLk0pKX07dmFyIGVOPXt6cTp7VXQ6ImNkIixmcDoiY2UiLFZ0OiJjZiIsV3Q6ImNwZiIsWHQ6ImN1In19O3ZhciBmTj1mdW5jdGlvbihhKXt2YXIgYj1lTi56cS5mcCxjPU8oYS5NLEYuRC5DYik7UihhLEYuRC5lZCl8fFUoYSxGLkQuZWQse30pO1IoYSxGLkQuZWQpW2JdPWN9O2Z1bmN0aW9uIGdOKGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM9d2IocmIuR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUx8fFtdKTtjJiYoVShhLEYuRC5WZixjKSxiJiZ1YigpKX07dmFyIGhOPWZ1bmN0aW9uKGEpe3ZhciBiPWEuTS5nZXRNZXJnZWRWYWx1ZXMoRi5ELlRhKTtiJiZhLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEsYil9O3ZhciBpTj1mdW5jdGlvbihhKXt2YXIgYj1PcCghMSk7VShhLEYuRC5NZSxiKX07dmFyIGpOPWZ1bmN0aW9uKGEpe1EoYSxILkoud2QpP1UoYSxGLkQuZGUsIjAiKTpVKGEsRi5ELmRlLCIxIil9O3ZhciBrTj1mdW5jdGlvbihhLGIpe2lmKGI9PT12b2lkIDB8fGIpe3ZhciBjPVZNKCk7YyE9PXZvaWQgMCYmVShhLEYuRC5rZyxjfHwiZXJyb3IiKX12YXIgZD1MdCgpO2QmJlUoYSxGLkQuS2UsZCk7dmFyIGU9S3QoKTtlJiZVKGEsRi5ELk9lLGUpfTt2YXIgbE49ZnVuY3Rpb24oYSl7dmFyIGI9bm0oam0uYmEua2opLGM9RSg1KTtiJiZiW2NdJiZhLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEse3JldHJ5OiIxIn0pfTt2YXIgbU49ZnVuY3Rpb24oYSl7VXEoITEpLl91cD09PSIxIiYmVShhLEYuRC5LaSwiMSIpfTsKdmFyIG5OPWZ1bmN0aW9uKGEsYixjKXtpZihhIT09dm9pZCAwKXJldHVybiBBcnJheS5pc0FycmF5KGEpP2EubWFwKGZ1bmN0aW9uKCl7cmV0dXJue21vZGU6Im0iLGxvY2F0aW9uOmIsc2VsZWN0b3I6Y319KTp7bW9kZToibSIsbG9jYXRpb246YixzZWxlY3RvcjpjfX0sb049ZnVuY3Rpb24oYSxiLGMsZCl7aWYoIWMpcmV0dXJuITE7Zm9yKHZhciBlPVN0cmluZyhjLnZhbHVlKSxmLGc9dm9pZCAwLGg9ZS5yZXBsYWNlKC9cWyI/Jz8vZywiLiIpLnJlcGxhY2UoLyI/Jz9cXS9nLCIiKS5zcGxpdCgiLCIpLm1hcChmdW5jdGlvbih1KXtyZXR1cm4gdS50cmltKCl9KS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUmJiFTYih1LCIjIikmJiFTYih1LCIuIil9KSxsPTA7bDxoLmxlbmd0aDtsKyspe3ZhciBuPWhbbF07aWYoU2IobiwiZGF0YUxheWVyLiIpKWY9dUEobi5zdWJzdHJpbmcoMTApKSxnPW5OKGYsImQiLG4pO2Vsc2V7dmFyIHA9bi5zcGxpdCgiLiIpO2Y9QVtwLnNoaWZ0KCldOwpmb3IodmFyIHE9MDtxPHAubGVuZ3RoO3ErKylmPWYmJmZbcFtxXV07Zz1uTihmLCJqIixuKX1pZihmIT09dm9pZCAwKWJyZWFrfWlmKGY9PT12b2lkIDApdHJ5e3ZhciByPUIucXVlcnlTZWxlY3RvckFsbChlKTtpZihyJiZyLmxlbmd0aD4wKXtmPVtdO2Zvcih2YXIgdD0wO3Q8ci5sZW5ndGgmJnQ8KGI9PT0iZW1haWwifHxiPT09InBob25lX251bWJlciI/NToxKTt0KyspZi5wdXNoKGZkKHJbdF0pfHxMYihyW3RdLnZhbHVlKSk7Zj1mLmxlbmd0aD09PTE/ZlswXTpmO2c9bk4oZiwiYyIsZSl9fWNhdGNoKHUpe1AoMTQ5KX1yZXR1cm4gZj8oYVtiXT1mLGQmJmcmJihkW2JdPWcpLCEwKTohMX07CnZhciBwTj1mdW5jdGlvbihhKXtpZihkSShhLCJjY2RfYWRkXzFwX2RhdGEiLCExKSYmWG8oZnApKXt2YXIgYj1hLk0uaWJbRi5ELmxtXTtpZihDZChiKSYmYi5lbmFibGVfY29kZSl7dmFyIGM9TyhhLk0sRi5ELkFjKTtpZihjPT09bnVsbClWKGEsSC5KLkduLG51bGwpO2Vsc2UgaWYoYi5lbmFibGVfY29kZSYmQ2QoYykmJihadihjKSxWKGEsSC5KLkduLGMpKSxDZChiLnNlbGVjdG9ycykpe3ZhciBkPUguSi5pcixlO3ZhciBmPWIuc2VsZWN0b3JzLGc9TSg1MjMpO2c9Zz09PXZvaWQgMD8hMTpnO2lmKGYpe3ZhciBoPXt9LGw9ITEsbj17fTtsPW9OKGgsImVtYWlsIixmLmVtYWlsLG4pfHxsO2w9b04oaCwicGhvbmVfbnVtYmVyIixmLnBob25lLG4pfHxsO2guYWRkcmVzcz1bXTtmb3IodmFyIHA9Zi5uYW1lX2FuZF9hZGRyZXNzfHxbXSxxPTA7cTxwLmxlbmd0aDtxKyspe3ZhciByPXt9LHQ9e307bD1vTihyLCJmaXJzdF9uYW1lIixwW3FdLmZpcnN0X25hbWUsdCl8fGw7bD1vTihyLAoibGFzdF9uYW1lIixwW3FdLmxhc3RfbmFtZSx0KXx8bDtsPW9OKHIsInN0cmVldCIscFtxXS5zdHJlZXQsdCl8fGw7bD1vTihyLCJjaXR5IixwW3FdLmNpdHksdCl8fGw7bD1vTihyLCJyZWdpb24iLHBbcV0ucmVnaW9uLHQpfHxsO2w9b04ociwiY291bnRyeSIscFtxXS5jb3VudHJ5LHQpfHxsO2w9b04ociwicG9zdGFsX2NvZGUiLHBbcV0ucG9zdGFsX2NvZGUsdCl8fGw7aC5hZGRyZXNzLnB1c2gocik7ZyYmKHIuX3RhZ19tZXRhZGF0YT10KX1nJiYoaC5fdGFnX21ldGFkYXRhPW4pO2U9bD9oOnZvaWQgMH1lbHNlIGU9dm9pZCAwO1YoYSxkLGUpfX19fTsKdmFyIHFOPWZ1bmN0aW9uKGEpe3ZhciBiPWZ1bmN0aW9uKGUpe1VMKGUsITApfSxjPWZ1bmN0aW9uKGUpe3BOKGUpfSxkPWZ1bmN0aW9uKGUpeyRNKGUse1NqOiEwLE1qOiEwfSl9O3N3aXRjaChhKXtjYXNlIFguVi5RazpyZXR1cm5bUEYsQUwsTUYsSE0sSk0sSU1dO2Nhc2UgWC5WLkthOnJldHVybltmTixYTCxaTSxpTixjTixXTSxkLFNLLGFOLEdMLGIsd00sbE4saE4sVkwsb0wsTk0sZnVuY3Rpb24oZSl7Z04oZSwhMSl9LFdMLFlNLHBMXTtjYXNlIFguVi5NazpyZXR1cm5bWk0sUUxdO2Nhc2UgWC5WLnhhOnJldHVybltVSyxYTCxaTSxkTix2TCx0TCwkTSxTSyxpTixWTCx6TCxHTCxiLHFMLEZMLEJMLEVMLHVMLGpOLG9MLGtOLG1OLExGLGMsZk4sU0wsbE4saE4sUE0sWE0sR00sTk0sVEssREwsUUssUkwsZ04sV0wscExdO2Nhc2UgWC5WLnViOnJldHVybltYTCxaTSxkTix2TCwkTSxTSyxpTix6TCxHTCxiLFZMLHFMLEVMLHVMLGpOLG9MLGtOLExGLFNMLGZOLGxOLGhOLFBNLEdNLApOTSxUSyxnTixXTCxwTF07Y2FzZSBYLlYuT2I6cmV0dXJuW1hMLFpNLGROLHZMLFNLLEdMLGIsak4sb0wsaU4sTEYsYyxTTCxmTixsTixoTixWTCxQTSxHTSxOTSxUSyxnTixXTCxwTF07Y2FzZSBYLlYuRmI6cmV0dXJuW1hMLFpNLGROLHZMLFNLLEdMLGIsak4sb0wsaU4sVkwsTEYsYyxTTCxmTixsTixoTixQTSxHTSxOTSxUSyxDTCxnTixXTCxwTF07ZGVmYXVsdDpyZXR1cm5bXX19LHJOPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1xTihRKGEsSC5KLmRhKSksYz0wO2M8Yi5sZW5ndGgmJihiW2NdKGEpLCFhLmlzQWJvcnRlZCk7YysrKTt9LHNOPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPW5ldyBhSShiLnRhcmdldCxiLmV2ZW50TmFtZSxiLk0pLGQ9bShldShiKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7VShjLGYsUihiLGYpKX1mb3IodmFyIGc9bShPYmplY3Qua2V5cyhiLm1ldGFkYXRhKSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPQpoLnZhbHVlO1YoYyxsLFEoYixsKSl9VihjLEguSi5kYSxhKTtyZXR1cm4gY30sdE49ZnVuY3Rpb24oYSxiLGMsZCl7ZnVuY3Rpb24gZSh1LHYpe2Zvcih2YXIgeD1tKGwpLHk9eC5uZXh0KCk7IXkuZG9uZTt5PXgubmV4dCgpKXt2YXIgej15LnZhbHVlO3ouaXNBYm9ydGVkPSExO1YoeixILkouSmEsITApO1YoeixILkouc2EsITApO1YoeixILkouRWIsTmIoKSk7Vih6LEguSi51Zix1KTtWKHosSC5KLnZmLHYpfX1mdW5jdGlvbiBmKHUpe2Zvcih2YXIgdj17fSx4PTA7eDxsLmxlbmd0aDt2PXtWYTp2b2lkIDB9LHgrKylpZih2LlZhPWxbeF0sIXV8fHUoUSh2LlZhLEguSi5kYSkpKWlmKCFRKHYuVmEsSC5KLnNhKXx8USh2LlZhLEguSi5kYSkhPT1YLlYuS2F8fFEodi5WYSxILkoudmQpKWlmKCFRKHYuVmEsSC5KLnNhKXx8USh2LlZhLEguSi5kYSk9PT1YLlYuS2F8fFhvKHIpKXJOKGxbeF0pLFEodi5WYSxILkouSmEpfHx2LlZhLmlzQWJvcnRlZHx8USh2LlZhLEguSi5kYSkhPT1YLlYuS2F8fAohUSh2LlZhLEguSi52ZCl8fChNSyh2LlZhLGZ1bmN0aW9uKCl7ZihmdW5jdGlvbih5KXtyZXR1cm4geT09PVguVi5LYX0pfSksUih2LlZhLEYuRC5aZik9PT12b2lkIDAmJnQ9PT12b2lkIDAmJih0PXBtKGptLmJhLnNqLGZ1bmN0aW9uKHkpe3JldHVybiBmdW5jdGlvbigpe3FtKGptLmJhLnNqLHQpO3Q9dm9pZCAwO1hvKEYuRC5tYSkmJihWKHkuVmEsSC5KLnVnLCEwKSxWKHkuVmEsSC5KLnNhLCExKSxVKHkuVmEsRi5ELnNhKSxmKGZ1bmN0aW9uKHope3JldHVybiB6PT09WC5WLkthfSksVih5LlZhLEguSi51ZywhMSkpfX0odikpKSl9dmFyIGc9ZC5pc0d0bUV2ZW50JiZhPT09IiI/e2lkOiIiLHByZWZpeDoiIixkZXN0aW5hdGlvbklkOiIiLGlkczpbXSxKYzpmdW5jdGlvbigpe3JldHVybiExfX06YkMoYSxkLmlzR3RtRXZlbnQpO2lmKGcpe3ZhciBoPW5ldyBhSShnLGIsZCk7VihoLEguSi5kYSxYLlYuUWspO3JOKGgpO2lmKCFoLmlzQWJvcnRlZCl7dmFyIGw9W107aWYoZC5ldmVudE1ldGFkYXRhW0guSi5EY10pe3ZhciBuPQpkLmV2ZW50TWV0YWRhdGFbSC5KLkRjXTtBcnJheS5pc0FycmF5KG4pfHwobj1bbl0pO2Zvcih2YXIgcD0wO3A8bi5sZW5ndGg7cCsrKXt2YXIgcT1zTihuW3BdLGgpO00oNDg4KXx8VihxLEguSi5KYSwhMSk7bC5wdXNoKHEpfX1lbHNlIGI9PT1GLkQud2EmJmwucHVzaChzTihYLlYuTWssaCkpLGIhPT1GLkQuSmImJmwucHVzaChzTihYLlYuS2EsaCkpLGwucHVzaChzTihYLlYueGEsaCkpLGIhPT1GLkQuSmImJihsLnB1c2goc04oWC5WLk9iLGgpKSxsLnB1c2goc04oWC5WLkZiLGgpKSxsLnB1c2goc04oWC5WLnViLGgpKSk7dmFyIHI9W0YuRC5rYSxGLkQubWFdLHQ9dm9pZCAwO2JwKGZ1bmN0aW9uKCl7ZigpO3ZhciB1PSFYbyhbRi5ELlhhXSk7aWYoIVhvKHIpfHx1KXt2YXIgdj1yO3UmJih2PVtdLmNvbmNhdCh3KHYpLFtGLkQuWGFdKSk7YXAoZnVuY3Rpb24oeCl7dmFyIHkseixDO3k9eC5jb25zZW50RXZlbnRJZDt6PXguY29uc2VudFByaW9yaXR5SWQ7Qz14LmNvbnNlbnRUeXBlczsKZSh5LHopO0MmJkMubGVuZ3RoPT09MSYmQ1swXT09PUYuRC5YYT9mKGZ1bmN0aW9uKEQpe3JldHVybiBEPT09WC5WLnVifSk6ZigpfSx2KX19LHIpfX19O2Z1bmN0aW9uIEZPKGEsYixjLGQpe31GTy5QPSJpbnRlcm5hbC5leGVjdXRlRXZlbnRQcm9jZXNzb3IiO2Z1bmN0aW9uIEdPKGEpe3ZhciBiO3JldHVybiBVZChiLHRoaXMuVCwxKX1HTy5QPSJpbnRlcm5hbC5leGVjdXRlSmF2YXNjcmlwdFN0cmluZyI7ZnVuY3Rpb24gSE8oYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBjPUE7dHJ5e2I9S2ooYy5lc2NhcGUoYy5hdG9iKGEpKSl9Y2F0Y2goZCl7cmV0dXJufXJldHVybiBifTtmdW5jdGlvbiBJTyhhKXt2YXIgYj0iIjtpZighbWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZ3x1bmRlZmluZWQiXSxhcmd1bWVudHMpO2I9QXYoYT09PW51bGw/dm9pZCAwOmEpO3JldHVybiBifUlPLlA9ImludGVybmFsLmdlbmVyYXRlQ2xpZW50SWQiO2Z1bmN0aW9uIEpPKGEpe3ZhciBiPXt9O2lmKCFlaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgYz1UZChhLHRoaXMuVCwxKS5yYigpO2I9TEsoYyk7cmV0dXJuIFVkKGIpfUpPLlA9ImludGVybmFsLmdldEFkc0Nvb2tpZVdyaXRpbmdPcHRpb25zIjtmdW5jdGlvbiBLTyhhLGIpe3ZhciBjPSExO2lmKCFlaChhKSYmIWdoKGEpfHwhb2goYil8fGdoKGEpJiZnaChiKXx8IWdoKGEpJiYhZ2goYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsImJvb2xlYW58dW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgZDtpZihiKXt2YXIgZT1YRih0aGlzKTtkPUpDKElDKG5ldyB5QyhOdW1iZXIoZS5ldmVudElkKSxOdW1iZXIoZS5wcmlvcml0eUlkKSksITApKX1lbHNlIGQ9VGQoYSx0aGlzLlQsMSkucmIoKS5NO2M9U3QoZCk7cmV0dXJuIGN9S08uUD0iaW50ZXJuYWwuZ2V0QWxsb3dBZFBlcnNvbmFsaXphdGlvbiI7ZnVuY3Rpb24gTE8oKXt2YXIgYTsoYT13YihyYi5HVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTHx8W10pKSYmdWIoKTtyZXR1cm4gYX1MTy5QPSJpbnRlcm5hbC5nZXRBbmRSZXNldEV2ZW50VXNhZ2UiO2Z1bmN0aW9uIE1PKGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM7aWYoIWVoKGEpfHwhb2goYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsImJvb2xlYW58dW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgZD1RKFRkKGEsdGhpcy5ULDEpLnJiKCksSC5KLkdhKXx8e307SHYoZCxiKTtjPUR2W0d2KGQucHJlZml4KV07cmV0dXJuIGN9TU8uUD0iaW50ZXJuYWwuZ2V0QXVpZCI7ZnVuY3Rpb24gTk8oKXt2YXIgYT1bXTtyZXR1cm4gVWQoYSl9Tk8uUD0iaW50ZXJuYWwuZ2V0Q29udGFpbmVySWRzIjtmdW5jdGlvbiBPTygpe3ZhciBhPW5ldyBrYjtMKHRoaXMsInJlYWRfY29udGFpbmVyX2RhdGEiKSxhLnNldCgiY29udGFpbmVySWQiLGlnKSxhLnNldCgidmVyc2lvbiIsa2cpLGEuc2V0KCJlbnZpcm9ubWVudE5hbWUiLGpnKSxhLnNldCgiZGVidWdNb2RlIixsZyksYS5zZXQoInByZXZpZXdNb2RlIixtZy5QbyksYS5zZXQoImVudmlyb25tZW50TW9kZSIsbWcuS3IpLGEuc2V0KCJmaXJzdFBhcnR5U2VydmluZyIsYWsoKSksYS5zZXQoImNvbnRhaW5lclVybCIsS2MpLGEuc2V0KCJpc0dvb2dsZU9ubHlNb2RlIixJZig2MikpLGEuWmEoKTtyZXR1cm4gYX1PTy5wdWJsaWNOYW1lPSJnZXRDb250YWluZXJWZXJzaW9uIjtmdW5jdGlvbiBQTyhhLGIpe2I9Yj09PXZvaWQgMD8hMDpiO3ZhciBjO3JldHVybiBjfVBPLnB1YmxpY05hbWU9ImdldENvb2tpZVZhbHVlcyI7ZnVuY3Rpb24gUU8oKXt2YXIgYT0iIjtyZXR1cm4gYX1RTy5QPSJpbnRlcm5hbC5nZXRDb3JlUGxhdGZvcm1TZXJ2aWNlc1BhcmFtIjtmdW5jdGlvbiBSTygpe3JldHVybiB5bSgpfVJPLlA9ImludGVybmFsLmdldENvdW50cnlDb2RlIjtmdW5jdGlvbiBTTygpe3ZhciBhPVtdO2E9dGsoKTtyZXR1cm4gVWQoYSl9U08uUD0iaW50ZXJuYWwuZ2V0RGVzdGluYXRpb25JZHMiO2Z1bmN0aW9uIFRPKGEpe3ZhciBiPW5ldyBrYjtpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCJdLGFyZ3VtZW50cyk7dmFyIGM9VGQoYSx0aGlzLlQsMSkucmIoKSxkPWZ1bmN0aW9uKGYsZyxoKXt2YXIgbD1jLk0uZ2V0TWVyZ2VkVmFsdWVzKEYuRC5PYSxmLGgpLG49WWIoQ2QobCk/bDp7fSwiLiIpO24mJmIuc2V0KGcsbil9LGU9T28oZkQoRi5ELk9hKSk7ZCgxLEYuRC5YYyxlKTtkKDIsRi5ELlZjKTtyZXR1cm4gYn1UTy5QPSJpbnRlcm5hbC5nZXREZXZlbG9wZXJJZHMiO2Z1bmN0aW9uIFVPKGEpe3ZhciBiO2lmKCFlaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgYz1RKFRkKGEsdGhpcy5ULDEpLnJiKCksSC5KLkdhKXx8e307Yj1VdihjKS5TaDtyZXR1cm4gYn1VTy5QPSJpbnRlcm5hbC5nZXRFY3NpZENvb2tpZVZhbHVlIjtmdW5jdGlvbiBWTyhhLGIpe3ZhciBjPW51bGw7cmV0dXJuIGN9Vk8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudEF0dHJpYnV0ZSI7ZnVuY3Rpb24gV08oYSl7dmFyIGI9bnVsbDtyZXR1cm4gYn1XTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50QnlJZCI7ZnVuY3Rpb24gWE8oYSl7dmFyIGI9IiI7cmV0dXJuIGJ9WE8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudElubmVyVGV4dCI7ZnVuY3Rpb24gWU8oYSl7dmFyIGI9bnVsbDtyZXR1cm4gYn1ZTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50UGFyZW50IjtmdW5jdGlvbiBaTyhhKXt2YXIgYj1udWxsO3JldHVybiBifVpPLlA9ImludGVybmFsLmdldEVsZW1lbnRQcmV2aW91c1NpYmxpbmciO2Z1bmN0aW9uICRPKGEsYil7dmFyIGM9bnVsbDtyZXR1cm4gVWQoYyl9JE8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFByb3BlcnR5IjtmdW5jdGlvbiBhUChhKXt2YXIgYjtyZXR1cm4gYn1hUC5QPSJpbnRlcm5hbC5nZXRFbGVtZW50VmFsdWUiO2Z1bmN0aW9uIGJQKGEpe3ZhciBiPTA7cmV0dXJuIGJ9YlAuUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFZpc2liaWxpdHlSYXRpbyI7ZnVuY3Rpb24gY1AoYSl7dmFyIGI9bnVsbDtyZXR1cm4gYn1jUC5QPSJpbnRlcm5hbC5nZXRFbGVtZW50c0J5Q3NzU2VsZWN0b3IiOwpmdW5jdGlvbiBkUChhKXt2YXIgYjtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7TCh0aGlzLCJyZWFkX2V2ZW50X2RhdGEiLGEpO3ZhciBjO2E6e3ZhciBkPWEsZT1YRih0aGlzKS5vcmlnaW5hbEV2ZW50RGF0YTtpZihlKXtmb3IodmFyIGY9ZSxnPXt9LGg9e30sbD17fSxuPVtdLHA9ZC5zcGxpdCgiXFxcXCIpLHE9MDtxPHAubGVuZ3RoO3ErKyl7Zm9yKHZhciByPXBbcV0uc3BsaXQoIlxcLiIpLHQ9MDt0PHIubGVuZ3RoO3QrKyl7Zm9yKHZhciB1PXJbdF0uc3BsaXQoIi4iKSx2PTA7djx1Lmxlbmd0aDt2Kyspbi5wdXNoKHVbdl0pLHYhPT11Lmxlbmd0aC0xJiZuLnB1c2gobCk7dCE9PXIubGVuZ3RoLTEmJm4ucHVzaChoKX1xIT09cC5sZW5ndGgtMSYmbi5wdXNoKGcpfWZvcih2YXIgeD1bXSx5PSIiLHo9bShuKSxDPXoubmV4dCgpOyFDLmRvbmU7Qz0Kei5uZXh0KCkpe3ZhciBEPUMudmFsdWU7RD09PWw/KHgucHVzaCh5KSx5PSIiKTp5PUQ9PT1nP3krIlxcIjpEPT09aD95KyIuIjp5K0R9eSYmeC5wdXNoKHkpO2Zvcih2YXIgST1tKHgpLEc9SS5uZXh0KCk7IUcuZG9uZTtHPUkubmV4dCgpKXtpZihmPT1udWxsKXtjPXZvaWQgMDticmVhayBhfWY9ZltHLnZhbHVlXX1jPWZ9ZWxzZSBjPXZvaWQgMH1iPVVkKGMsdGhpcy5ULDEpO3JldHVybiBifWRQLlA9ImludGVybmFsLmdldEV2ZW50RGF0YSI7ZnVuY3Rpb24gZVAoYSl7dmFyIGI9bnVsbDtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7TCh0aGlzLCJyZWFkX2RvbV9lbGVtZW50cyIsImNzcyIsYSk7dHJ5e3ZhciBjPUIucXVlcnlTZWxlY3RvcihhKTtjJiYoYj1uZXcgUGQoYykpfWNhdGNoKGQpe3JldHVybiBudWxsfXJldHVybiBifWVQLlA9ImludGVybmFsLmdldEZpcnN0RWxlbWVudEJ5Q3NzU2VsZWN0b3IiO2Z1bmN0aW9uIGZQKCl7dmFyIGE7TCh0aGlzLCJhY2Nlc3NfZ2xvYmFscyIsImV4ZWN1dGUiLCJfX2dzYUV4cC5pZCIpO3ZhciBiPUE7aWYoIWIuX19nc2FFeHB8fCFiLl9fZ3NhRXhwLmlkKXJldHVybiBhO3ZhciBjPWIuX19nc2FFeHAuaWQ7aWYoIXliKGMpKXJldHVybiBhO3RyeXt2YXIgZD1OdW1iZXIoYygpKTtpZihpc05hTihkKSlyZXR1cm4gYTthPWR9Y2F0Y2goZSl7cmV0dXJuIGF9cmV0dXJuIGF9ZlAuUD0iaW50ZXJuYWwuZ2V0R3NhRXhwZXJpbWVudElkIjtmdW5jdGlvbiBnUCgpe3JldHVybiBuZXcgUGQoUGspfWdQLlA9ImludGVybmFsLmdldEh0bWxJZCI7ZnVuY3Rpb24gaFAoKXt2YXIgYTthPU9wKCExKTtyZXR1cm4gYX1oUC5QPSJpbnRlcm5hbC5nZXRJZnJhbWluZ1N0YXRlIjtmdW5jdGlvbiBpUChhLGIpe3ZhciBjPXt9O2lmKCFuaChhKXx8IW9oKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJib29sZWFuIiwiYm9vbGVhbnx1bmRlZmluZWQiXSxhcmd1bWVudHMpO0wodGhpcywiZ2V0X3VybCIpO2M9VXEoYSxiKTtyZXR1cm4gVWQoYyl9aVAuUD0iaW50ZXJuYWwuZ2V0TGlua2VyVmFsdWVGcm9tTG9jYXRpb24iO2Z1bmN0aW9uIGpQKCl7dmFyIGE9bmV3IGtiO2lmKGFyZ3VtZW50cy5sZW5ndGghPT0wKXRocm93IEsodGhpcy5nZXROYW1lKCksW10sYXJndW1lbnRzKTt2YXIgYj1WTSgpO2IhPT12b2lkIDAmJmEuc2V0KEYuRC5rZyxifHwiZXJyb3IiKTt2YXIgYz1MdCgpO2MmJmEuc2V0KEYuRC5LZSxjKTt2YXIgZD1LdCgpO2QmJmEuc2V0KEYuRC5PZSxkKTt2YXIgZT1rRi5ncHBTdHJpbmc7ZSYmYS5zZXQoRi5ELnVoLGUpO3ZhciBmPWtGLkg7ZiYmYS5zZXQoRi5ELnRoLGYpO3JldHVybiBhfWpQLlA9ImludGVybmFsLmdldFByaXZhY3lTdHJpbmdzIjtmdW5jdGlvbiBrUChhLGIpe3ZhciBjO2lmKCFsaChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBkPSRIKGEpfHx7fTtjPVVkKGRbYl0sdGhpcy5UKTtyZXR1cm4gY31rUC5QPSJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiO2Z1bmN0aW9uIGxQKGEsYil7dmFyIGM7aWYoIWxoKGEpfHwhcGgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImJvb2xlYW58dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtMKHRoaXMsImdldF91cmwiLCJxdWVyeSIsYSk7dmFyIGQ9TGooUmooQS5sb2NhdGlvbi5ocmVmKSwicXVlcnkiKSxlPUlqKGQsYSxiKTtjPVVkKGUsdGhpcy5UKTtyZXR1cm4gY31sUC5wdWJsaWNOYW1lPSJnZXRRdWVyeVBhcmFtZXRlcnMiO2Z1bmN0aW9uIG1QKGEsYil7dmFyIGM7cmV0dXJuIGN9bVAucHVibGljTmFtZT0iZ2V0UmVmZXJyZXJRdWVyeVBhcmFtZXRlcnMiO2Z1bmN0aW9uIG5QKGEpe3ZhciBiPSIiO2lmKCFtaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7TCh0aGlzLCJnZXRfcmVmZXJyZXIiLGEpO2I9TmooUmooQi5yZWZlcnJlciksYSk7cmV0dXJuIGJ9blAucHVibGljTmFtZT0iZ2V0UmVmZXJyZXJVcmwiO2Z1bmN0aW9uIG9QKCl7cmV0dXJuIHptKCl9b1AuUD0iaW50ZXJuYWwuZ2V0UmVnaW9uQ29kZSI7ZnVuY3Rpb24gcFAoYSxiKXt2YXIgYztpZighbGgoYSl8fCFsaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nIl0sYXJndW1lbnRzKTt2YXIgZD1lRChhKTtjPVVkKGRbYl0sdGhpcy5UKTtyZXR1cm4gY31wUC5QPSJpbnRlcm5hbC5nZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiO2Z1bmN0aW9uIHFQKGEsYil7dmFyIGM9bnVsbDsKcmV0dXJuIGN9cVAuUD0iaW50ZXJuYWwuZ2V0U2NvcGVkRWxlbWVudHNCeUNzc1NlbGVjdG9yIjtmdW5jdGlvbiByUCgpe3ZhciBhPW5ldyBrYjthLnNldCgid2lkdGgiLDApO2Euc2V0KCJoZWlnaHQiLDApO0wodGhpcywicmVhZF9zY3JlZW5fZGltZW5zaW9ucyIpO3ZhciBiPXFJKCk7YS5zZXQoIndpZHRoIixiLndpZHRoKTthLnNldCgiaGVpZ2h0IixiLmhlaWdodCk7cmV0dXJuIGF9clAuUD0iaW50ZXJuYWwuZ2V0U2NyZWVuRGltZW5zaW9ucyI7ZnVuY3Rpb24gc1AoKXt2YXIgYT0iIjtMKHRoaXMsImdldF91cmwiKTt2YXIgYj1GcCgpO2E9RHAoYikudXJsO3JldHVybiBhfXNQLlA9ImludGVybmFsLmdldFRvcFNhbWVEb21haW5VcmwiO2Z1bmN0aW9uIHRQKCl7dmFyIGE9IiI7TCh0aGlzLCJnZXRfdXJsIiksYT1BLnRvcC5sb2NhdGlvbi5ocmVmO3JldHVybiBhfXRQLlA9ImludGVybmFsLmdldFRvcFdpbmRvd1VybCI7ZnVuY3Rpb24gdVAoYSl7dmFyIGI9IiI7aWYoIW1oKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmd8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtMKHRoaXMsImdldF91cmwiLGEpO2I9TGooUmooQS5sb2NhdGlvbi5ocmVmKSxhKTtyZXR1cm4gYn11UC5wdWJsaWNOYW1lPSJnZXRVcmwiO2Z1bmN0aW9uIHZQKCl7TCh0aGlzLCJnZXRfdXNlcl9hZ2VudCIpO3JldHVybiBIYy51c2VyQWdlbnR9dlAucHVibGljTmFtZT0iZ2V0VXNlckFnZW50Ijt2UC5QPSJpbnRlcm5hbC5nZXRVc2VyQWdlbnQiO2Z1bmN0aW9uIHdQKCl7dmFyIGE7TCh0aGlzLCJnZXRfdXNlcl9hZ2VudCIpO2lmKCFETSgpfHwhRk0uSygpKXJldHVybjthPUZNLkgoKTtyZXR1cm4gYT9VZChFTShhKSk6YX13UC5QPSJpbnRlcm5hbC5nZXRVc2VyQWdlbnRDbGllbnRIaW50cyI7dmFyIHlQPWZ1bmN0aW9uKGEpe3ZhciBiPWEuZXZlbnROYW1lPT09Ri5ELnNjJiZFbCgpJiZiayhaSyhhKSksYz1RKGEsSC5KLmRuKSxkPVEoYSxILkouS2spLGU9UShhLEguSi5tZyksZj1RKGEsSC5KLlRlKSxnPVEoYSxILkouRmMpLGg9UShhLEguSi5oZCksbD1RKGEsSC5KLnJnKSxuPVEoYSxILkouTWgpLHA9UShhLEguSi5OaCkscT0hIVlLKGEpfHwhIVEoYSxILkoucHApO3JldHVybiEoIW5kKCkmJiFrZCgpfHxlfHxxfHxmfHxnfHxofHxsfHxwfHxufHxifHxjfHwhZCYmeFAoKSl9LHhQPWZ1bmN0aW9uKCl7cmV0dXJuIGFsKDksZnVuY3Rpb24oKXtyZXR1cm4hMX0pfTtmdW5jdGlvbiB6UCgpe3ZhciBhPUE7cmV0dXJuIGEuZ2FHbG9iYWw9YS5nYUdsb2JhbHx8e319ZnVuY3Rpb24gQVAoYSxiKXt2YXIgYz16UCgpO2lmKGMudmlkPT09dm9pZCAwfHxiJiYhYy5mcm9tX2Nvb2tpZSljLnZpZD1hLGMuZnJvbV9jb29raWU9Yn07dmFyIEJQPVsiR0ExIl07CnZhciBDUD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9UShhLEguSi5Qayk7aWYoZD09PXZvaWQgMHx8Yzw9ZClVKGEsRi5ELktiLGIpLFYoYSxILkouUGssYyl9LEVQPWZ1bmN0aW9uKGEsYil7dmFyIGM9UihhLEYuRC5LYik7aWYoTyhhLk0sRi5ELlpjKSYmTyhhLk0sRi5ELlljKXx8YiYmYz09PWIpcmV0dXJuIGM7aWYoYyl7Yz0iIitjO2lmKCFEUChjLGEpKXJldHVybiBQKDMxKSxhLmlzQWJvcnRlZD0hMCwiIjtBUChjLFhvKEYuRC5yYSkpO3JldHVybiBjfVAoMzIpO2EuaXNBYm9ydGVkPSEwO3JldHVybiIifSxGUD1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLkdhKSxjPWIucHJlZml4KyJfZ2EiLGQ9QnYoYi5wcmVmaXgrIl9nYSIsYi5kb21haW4sYi5wYXRoLEJQLEYuRC5yYSk7aWYoIWQpe3ZhciBlPVN0cmluZyhPKGEuTSxGLkQuSWQsIiIpKTtlJiZlIT09YyYmKGQ9QnYoZSxiLmRvbWFpbixiLnBhdGgsQlAsRi5ELnJhKSl9cmV0dXJuIGR9LERQPWZ1bmN0aW9uKGEsYil7dmFyIGM7CnZhciBkPVEoYixILkouR2EpLGU9ZC5wcmVmaXgrIl9nYSIsZj11cShkLHZvaWQgMCx2b2lkIDAsRi5ELnJhKTtpZihPKGIuTSxGLkQuSmQpPT09ITEmJkZQKGIpPT09YSljPSEwO2Vsc2V7dmFyIGc7Zz1bQlBbMF0sdHEoZC5kb21haW4sZC5wYXRoKSxhXS5qb2luKCIuIik7Yz1vcShlLGcsZikhPT0xfXJldHVybiBjfTsKdmFyIEdQPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz0wO3JldHVybntzdGFydDpmdW5jdGlvbigpe2I9TmIoKX0sc3RvcDpmdW5jdGlvbigpe2M9dGhpcy5nZXQoKX0sZ2V0OmZ1bmN0aW9uKCl7dmFyIGQ9MDthLlZqKCkmJihkPU5iKCktYik7cmV0dXJuIGQrY319fSxIUD1mdW5jdGlvbigpe3RoaXMuSD12b2lkIDA7dGhpcy5LPTA7dGhpcy5pc0FjdGl2ZT10aGlzLmlzVmlzaWJsZT10aGlzLk49ITE7dGhpcy5aPXRoaXMuUj12b2lkIDB9O2s9SFAucHJvdG90eXBlO2suS3E9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcztpZighdGhpcy5IKXt0aGlzLk49Qi5oYXNGb2N1cygpO3RoaXMuaXNWaXNpYmxlPSFCLmhpZGRlbjt0aGlzLmlzQWN0aXZlPSEwO3ZhciBjPWZ1bmN0aW9uKGUsZixnKXskYyhlLGYsZnVuY3Rpb24oaCl7Yi5ILnN0b3AoKTtnKGgpO2IuVmooKSYmYi5ILnN0YXJ0KCl9KX0sZD1BO2MoZCwiZm9jdXMiLGZ1bmN0aW9uKCl7Yi5OPSEwfSk7YyhkLCJibHVyIixmdW5jdGlvbigpe2IuTj0KITF9KTtjKGQsInBhZ2VzaG93IixmdW5jdGlvbihlKXtiLmlzQWN0aXZlPSEwO2UucGVyc2lzdGVkJiZQKDU2KTtiLlomJmIuWigpfSk7YyhkLCJwYWdlaGlkZSIsZnVuY3Rpb24oKXtiLmlzQWN0aXZlPSExO2IuUiYmYi5SKCl9KTtjKEIsInZpc2liaWxpdHljaGFuZ2UiLGZ1bmN0aW9uKCl7Yi5pc1Zpc2libGU9IUIuaGlkZGVufSk7YmsoWksoYSkpJiYhT2MoKSYmYyhkLCJiZWZvcmV1bmxvYWQiLGZ1bmN0aW9uKCl7WmsoOSwhMCl9KTt0aGlzLnFrKCEwKTt0aGlzLks9MH19O2sucWs9ZnVuY3Rpb24oYSl7aWYoKGE9PT12b2lkIDA/MDphKXx8dGhpcy5IKXRoaXMuSys9dGhpcy5ZaCgpLHRoaXMuSD1HUCh0aGlzKSx0aGlzLlZqKCkmJnRoaXMuSC5zdGFydCgpfTtrLkt0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuWWgoKTtiPjAmJlUoYSxGLkQubmgsYil9O2subHM9ZnVuY3Rpb24oYSl7VShhLEYuRC5uaCk7dGhpcy5xaygpO3RoaXMuSz0wfTtrLlZqPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTiYmCnRoaXMuaXNWaXNpYmxlJiZ0aGlzLmlzQWN0aXZlfTtrLlhyPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSyt0aGlzLlloKCl9O2suWWg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IJiZ0aGlzLkguZ2V0KCl8fDB9O2suaHQ9ZnVuY3Rpb24oYSl7dGhpcy5SPWF9O2suQ289ZnVuY3Rpb24oYSl7dGhpcy5aPWF9O3ZhciBJUD1mdW5jdGlvbihhKXtzYigiR0E0X0VWRU5UIixhKX07dmFyIEpQPWZ1bmN0aW9uKGEpe3ZhciBiLGM9UShhLEguSi53bSk7aWYoQXJyYXkuaXNBcnJheShjKSlmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKylJUChjW2RdKTsoYj13YihyYi5HQTRfRVZFTlR8fFtdKSkmJlUoYSwiX2V1IixiKX07CnZhciBNUD1mdW5jdGlvbihhKXt2YXIgYj1uZXcgUmVnRXhwKCJeIisoKChhPT1udWxsP3ZvaWQgMDphLnByZWZpeCl8fCIiKSsiX2dhX1xcdyskIikpLGM9eXEoZnVuY3Rpb24ocCl7cmV0dXJuIGIudGVzdChwKX0pLGQ9e30sZTtmb3IoZSBpbiBjKWlmKGMuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBmPUtQKGNbZV0pO2lmKGYpe3ZhciBnPWJxKGYsMik7aWYoZyl7dmFyIGg9TFAoZyk7aWYoaCl7dmFyIGw9dm9pZCAwLG49KCgobD1hKT09bnVsbD92b2lkIDA6bC5wcmVmaXgpfHwiIikubGVuZ3RoKzQ7ZFsiRy0iK2Uuc3Vic3RyaW5nKG4pXT1ofX19fXJldHVybiBkfSxOUD1mdW5jdGlvbihhKXtpZihhKXt2YXIgYjthOnt2YXIgYz0oU2IoYSwicyIpJiZhLmluZGV4T2YoIi4iKT09PS0xPyJHUzIiOiJHUzEiKSsiLjEuIithO3RyeXtiPSRwKGMsMik7YnJlYWsgYX1jYXRjaChkKXt9Yj12b2lkIDB9cmV0dXJuIGJ9fSxLUD1mdW5jdGlvbihhKXtpZihhJiZhLmxlbmd0aCE9PTApe2Zvcih2YXIgYiwKYz0tSW5maW5pdHksZD1tKGEpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2lmKGYudCE9PXZvaWQgMCl7dmFyIGc9TnVtYmVyKGYudCk7IWlzTmFOKGcpJiZnPmMmJihjPWcsYj1mKX19cmV0dXJuIGJ9fSx6cT1mdW5jdGlvbihhKXthJiYoYT09PSJHUzEiP0lQKEouVS5LbSk6YT09PSJHUzIiJiZJUChKLlUuTG0pKX0sTFA9ZnVuY3Rpb24oYSl7dmFyIGI9TlAoYSk7aWYoYil7dmFyIGM9TnVtYmVyKGIubyksZD1OdW1iZXIoYi50KSxlPU51bWJlcihiLmp8fDApO2N8fElQKEouVS5VbSk7ZHx8SVAoSi5VLlRtKTtpc05hTihlKSYmSVAoSi5VLlNtKTtpZihjJiZkJiYhaXNOYU4oZSkpe3ZhciBmPWIuaCxnPWYmJmYhPT0iMCI/U3RyaW5nKGYpOnZvaWQgMCxoPWIuZD9TdHJpbmcoYi5kKTp2b2lkIDAsbD17fTtyZXR1cm4gbC5zPVN0cmluZyhiLnMpLGwubz1jLGwuZz0hIU51bWJlcihiLmcpLGwudD1kLGwuZD1oLGwuaj1lLGwubD1iLmw9PT0iMSIsCmwuaD1nLGx9fX07CnZhciBQUD1mdW5jdGlvbihhLGIsYyl7aWYoIWIpcmV0dXJuIGE7aWYoIWEpcmV0dXJuIGI7dmFyIGQ9TFAoYSk7aWYoIWQpcmV0dXJuIGI7dmFyIGUsZj1JYigoZT1PKGMuTSxGLkQueWgpKSE9bnVsbD9lOjMwKSxnPVEoYyxILkouRWIpO2lmKCEoTWF0aC5mbG9vcihnLzFFMyk+ZC50K2YqNjApKXJldHVybiBhO3ZhciBoPUxQKGIpO2lmKCFoKXJldHVybiBhO2gubz1kLm8rMTt2YXIgbDtyZXR1cm4obD1PUChoKSkhPW51bGw/bDpifSxSUD1mdW5jdGlvbihhLGIpe3ZhciBjPVEoYixILkouR2EpLGQ9UVAoYixjKSxlPU5QKGEpO2lmKCFlKXJldHVybiExO3ZhciBmPXVxKGN8fHt9LHZvaWQgMCx2b2lkIDAsdnEuZ2V0KDIpKTtvcShkLHZvaWQgMCxmKTtyZXR1cm4gQXEoZCxlLDIsYykhPT0xfSxTUD1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLkdhKSxjO3ZhciBkPVFQKGEsYiksZTtiOnt2YXIgZj16cSxnPVpwWzJdO2lmKGcpe3ZhciBoLGw9cnEoYi5kb21haW4pLG49c3EoYi5wYXRoKSwKcD1PYmplY3Qua2V5cyhnLmppKSxxPXZxLmdldCgyKSxyO2lmKGg9KHI9Z3EoZCxsLG4scCxxKSk9PW51bGw/dm9pZCAwOnIuQnIpe3ZhciB0PSRwKGgsMixmKTtlPXQ/eHEodCk6dm9pZCAwO2JyZWFrIGJ9fWU9dm9pZCAwfWlmKGUpe3ZhciB1PXdxKGQsMix6cSk7aWYodSYmdS5sZW5ndGg+MSl7SVAoSi5VLkptKTt2YXIgdj1LUCh1KTt2JiZ2LnQhPT1lLnQmJihJUChKLlUuTW0pLGU9dil9Yz1icShlLDIpfWVsc2UgYz12b2lkIDA7cmV0dXJuIGN9LFRQPWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouRWIpLGM9e307Yy5zPVIoYSxGLkQueGMpO2Mubz1SKGEsRi5ELkFoKTt2YXIgZDtkPVIoYSxGLkQuemgpO3ZhciBlPShjLmc9ZCxjLnQ9TWF0aC5mbG9vcihiLzFFMyksYy5kPVEoYSxILkoub2cpLGMuaj1RKGEsSC5KLnBnKXx8MCxjLmw9ISFRKGEsSC5KLnJtKSxjLmg9UihhLEYuRC5vaCksYyk7cmV0dXJuIE9QKGUpfSxPUD1mdW5jdGlvbihhKXtpZihhLnMmJmEubyl7dmFyIGI9Cnt9LGM9KGIucz1hLnMsYi5vPVN0cmluZyhhLm8pLGIuZz1JYihhLmcpPyIxIjoiMCIsYi50PVN0cmluZyhhLnQpLGIuaj1TdHJpbmcoYS5qKSxiLmw9YS5sPyIxIjoiMCIsYi5oPWEuaHx8IjAiLGIuZD1hLmQsYik7cmV0dXJuIGJxKGMsMil9fSxRUD1mdW5jdGlvbihhLGIpe3JldHVybiBiLnByZWZpeCsiX2dhXyIrYS50YXJnZXQuaWRzW2RDWzZdXX07CnZhciBVUD1mdW5jdGlvbigpe3JldHVybiBhbCgyLGZ1bmN0aW9uKCl7cmV0dXJuITF9KX0sVlA9ZnVuY3Rpb24oYSl7dmFyIGI9TyhhLk0sRi5ELkRiKSxjPWEuTS5pYltGLkQuRGJdO2lmKGM9PT1iKXJldHVybiBjO3ZhciBkPUVkKGIsbnVsbCk7YyYmY1tGLkQuQWFdJiYoZFtGLkQuQWFdPShkW0YuRC5BYV18fFtdKS5jb25jYXQoY1tGLkQuQWFdKSk7cmV0dXJuIGR9LFdQPWZ1bmN0aW9uKGEsYil7dmFyIGM9VXEoITApO3JldHVybiBjLl91cCE9PSIxIj97fTp7Y2xpZW50SWQ6Y1thXSx6YjpjW2JdfX0sWFA9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVVxKCEwKSxlPWRbYl07ZSYmKENQKGEsZSwyKSxEUChlLGEpKTt2YXIgZj1kW2NdO2YmJlJQKGYsYSk7cmV0dXJue2NsaWVudElkOmUsemI6Zn19LFlQPWZ1bmN0aW9uKCl7dmFyIGE9TmooQS5sb2NhdGlvbiwiaG9zdCIpLGI9TmooUmooQi5yZWZlcnJlciksImhvc3QiKTtyZXR1cm4gYSYmYj9hPT09Ynx8YS5pbmRleE9mKCIuIitiKT49CjB8fGIuaW5kZXhPZigiLiIrYSk+PTA/ITA6ITE6ITF9LFpQPWZ1bmN0aW9uKGEpe2lmKCFPKGEuTSxGLkQuemMpKXJldHVybnt9O3ZhciBiPVEoYSxILkouR2EpLGM9Yi5wcmVmaXgrIl9nYSIsZD1RUChhLGIpO2JyKGZ1bmN0aW9uKCl7dmFyIGU7aWYoWG8oImFuYWx5dGljc19zdG9yYWdlIikpZT17fTtlbHNle3ZhciBmPXtfdXA6IjEifSxnO2c9UihhLEYuRC5LYik7ZT0oZltjXT1nLGZbZF09VFAoYSksZil9cmV0dXJuIGV9LDEpO3JldHVybiFYbygiYW5hbHl0aWNzX3N0b3JhZ2UiKSYmWVAoKT9XUChjLGQpOnt9fSwkUD1mdW5jdGlvbihhKXt2YXIgYj1WUChhKXx8e30sYz1RKGEsSC5KLkdhKSxkPWMucHJlZml4KyJfZ2EiLGU9UVAoYSxjKSxmPXt9O2RyKGJbRi5ELlhmXSwhIWJbRi5ELkFhXSkmJihmPVhQKGEsZCxlKSxmLmNsaWVudElkJiZmLnpiJiZaaygyLCEwKSk7YltGLkQuQWFdJiZhcihmdW5jdGlvbigpe3ZhciBnPXt9LGg9RlAoYSk7aCYmKGdbZF09aCk7dmFyIGw9U1AoYSk7CmwmJihnW2VdPWwpO3ZhciBuPWNxKCJGUExDIix2b2lkIDAsdm9pZCAwLEYuRC5yYSk7bi5sZW5ndGgmJihnLl9mcGxjPW5bMF0pO3JldHVybiBnfSxiW0YuRC5BYV0sYltGLkQuYWRdLCEhYltGLkQud2NdKTtyZXR1cm4gZn07dmFyIGFRPWZ1bmN0aW9uKGEpe2lmKCFRKGEsSC5KLmJlKSYmZWsoYS5NKSl7dmFyIGI9VlAoYSl8fHt9LGM9KGRyKGJbRi5ELlhmXSwhIWJbRi5ELkFhXSk/VXEoITApLl9mcGxjOnZvaWQgMCl8fChjcSgiRlBMQyIsdm9pZCAwLHZvaWQgMCxGLkQucmEpLmxlbmd0aD4wP3ZvaWQgMDoiMCIpO1UoYSwiX2ZwbGMiLGMpfX07ZnVuY3Rpb24gYlEoYSl7KGJrKFpLKGEpKXx8V2ooKSkmJlUoYSxGLkQub20sem0oKXx8eW0oKSk7IWJrKFpLKGEpKSYmV2ooKSYmVShhLEYuRC5ZaSwiOjoiKX1mdW5jdGlvbiBjUShhKXtXaigpJiYoYmsoWksoYSkpfHxEbSgpfHxVKGEsRi5ELlNsLCEwKSl9O3ZhciBlUT1mdW5jdGlvbihhLGIpe2tqKCJncmwiLGZ1bmN0aW9uKCl7cmV0dXJuIGRRKCl9KShiKXx8KFAoMzUpLGEuaXNBYm9ydGVkPSEwKX0sZFE9ZnVuY3Rpb24oKXt2YXIgYT1OYigpLGI9YSs4NjRFNSxjPTIwLGQ9NUUzO3JldHVybiBmdW5jdGlvbihlKXt2YXIgZj1OYigpO2Y+PWImJihiPWYrODY0RTUsZD01RTMpO2M9TWF0aC5taW4oYysoZi1hKS8xRTMqNSwyMCk7YT1mO3ZhciBnPSExO2Q8MXx8YzwxfHwoZz0hMCxkLS0sYy0tKTtlJiYoZS5Icj1kLGUudXI9Yyk7cmV0dXJuIGd9fTsKdmFyIGZRPWZ1bmN0aW9uKGEpe3ZhciBiPVIoYSxGLkQuVWEpO3JldHVybiBMaihSaihiKSwiaG9zdCIsITApfSxnUT1mdW5jdGlvbihhKXtpZihPKGEuTSxGLkQuV2YpIT09dm9pZCAwKWEuY29weVRvSGl0RGF0YShGLkQuV2YpO2Vsc2V7dmFyIGI9TyhhLk0sRi5ELmFtKSxjLGQ7YTp7aWYoVVAoKSl7dmFyIGU9VlAoYSl8fHt9O2lmKGUmJmVbRi5ELkFhXSlmb3IodmFyIGY9ZlEoYSksZz1lW0YuRC5BYV0saD0wO2g8Zy5sZW5ndGg7aCsrKWlmKGdbaF1pbnN0YW5jZW9mIFJlZ0V4cCl7aWYoZ1toXS50ZXN0KGYpKXtkPSEwO2JyZWFrIGF9fWVsc2UgaWYoZi5pbmRleE9mKGdbaF0pPj0wKXtkPSEwO2JyZWFrIGF9fWQ9ITF9aWYoIShjPWQpKXt2YXIgbDtpZihsPWIpYTp7Zm9yKHZhciBuPWIuaW5jbHVkZV9jb25kaXRpb25zfHxbXSxwPWZRKGEpLHE9MDtxPG4ubGVuZ3RoO3ErKylpZihuW3FdLnRlc3QocCkpe2w9ITA7YnJlYWsgYX1sPSExfWM9bH1jJiYoVShhLEYuRC5XZiwiMSIpLApJUChKLlUubm4pKX19O2Z1bmN0aW9uIGhRKGEsYixjLGQpe3ZhciBlO2lmKChuZCgpfHxrZCgpKSYmWGooKSYmWGooKSE9PSIvIil7dmFyIGY9UmooYSk7ZT1JZig1MCkmJmQmJlRiKGYucGF0aG5hbWUsIi9nL2NvbGxlY3QiKT8yOihkfHwhV2ooKXx8RG0oKT8wOlRiKGYucGF0aG5hbWUsIi9nYS9nL2MiKXx8VGIoZi5wYXRobmFtZSwiL2FnL2cvYyIpKT8xOjB9ZWxzZSBlPTA7c3dpdGNoKGUpe2Nhc2UgMjp2YXIgZztpZihNKDU0Nikpe3ZhciBoPVRiKGEsIi9nL2NvbGxlY3QiKT9hLnN1YnN0cmluZygwLGEubGVuZ3RoLTEwKTphLGw9aVEoKSxuPWgrbCxwPWpRKCIvZy9jb2xsZWN0IixiLGMpO2c9e0ljOm4sa2Y6IiIsYm9keTpwfX1lbHNlIGc9e0ljOmEsa2Y6Yixib2R5OmN9O3JldHVybiBnO2Nhc2UgMTp2YXIgcTtpZihNKDU0Nykpe3ZhciByPWlRKCksdD1hLmluZGV4T2YociksdT1hLnN1YnN0cmluZygwLHQpK3Isdj1qUShhLnN1YnN0cmluZyh0K3IubGVuZ3RoLTEpLGIsYyk7cT17SWM6dSxrZjoiIiwKYm9keTp2fX1lbHNlIHE9e0ljOmEsa2Y6Yixib2R5OmN9O3JldHVybiBxO2RlZmF1bHQ6cmV0dXJue0ljOmEsa2Y6Yixib2R5OmN9fX1mdW5jdGlvbiBpUSgpe3ZhciBhPVhqKCk7aWYoIWEpcmV0dXJuIiI7U2IoYSwiLyIpfHwoYT0iLyIrYSk7VGIoYSwiLyIpfHwoYSs9Ii8iKTtyZXR1cm4gYX1mdW5jdGlvbiBqUShhLGIsYyl7dmFyIGQ9W2FdO2ImJmQucHVzaCgiPyIsYik7YyYmZC5wdXNoKCJcclxuIixjKTtyZXR1cm4gZC5qb2luKCIiKX07CnZhciBrUT1mdW5jdGlvbihhLGIpe1R0KCkmJihhLmdjcz1VdCgpLFEoYixILkouR2gpJiYoYS5nY3U9IjEiKSk7YS5nY2Q9WXQoYi5NKTthLm5wYT1RKGIsSC5KLndkKT8iMCI6IjEiO3ptKCk9PT0iVVMtQ08iJiYoYS5fbmc9IjEiKX0sbFE9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5iZSkpcmV0dXJue3VybDpmaygiaHR0cHM6Ly93d3cubWVyY2hhbnQtY2VudGVyLWFuYWx5dGljcy5nb29nIix2b2lkIDAsIiIpKyIvbWMvY29sbGVjdCIsZW5kcG9pbnQ6MjB9O3ZhciBiPVlqKGVrKGEuTSksIi9nL2NvbGxlY3QiKTtpZihiKXJldHVybnt1cmw6YixlbmRwb2ludDoxNn07dmFyIGM7Yz1RKGEsSC5KLnJuKSYmIVEoYSxILkouRmMpPzE3OjE2O3JldHVybnt1cmw6TW1bY10odm9pZCAwKSxlbmRwb2ludDpjfX0sbVE9e307bVFbRi5ELktiXT0iY2lkIjttUVtGLkQueGldPSJnY3V0IjttUVtGLkQuRmVdPSJhcmUiO21RW0YuRC5qaF09InBzY2RsIjttUVtGLkQuTmRdPSJleGNpZCI7bVFbRi5ELkdpXT0KIl9maWQiO21RW0YuRC5PbF09Il9nZW8iO21RW0YuRC5YY109ImdkaWQiO21RW0YuRC5MZV09Il9uZyI7bVFbRi5ELk1lXT0iZnJtIjttUVtGLkQuV2ZdPSJpciI7bVFbRi5ELlNsXT0iZnAiO21RW0YuRC50Yl09InVsIjttUVtGLkQuTWldPSJuaSI7bVFbRi5ELm1xXT0icGFlIjttUVtGLkQueGhdPSJfcmRpIjttUVtGLkQuYmRdPSJzciI7bVFbRi5ELlFpXT0idGVzdG9ubHkiO21RW0YuRC5RZV09InRpZCI7bVFbRi5ELlJpXT0idHQiO21RW0YuRC5CY109ImVjX21vZGUiO21RW0YuRC5abV09Imd0bV91cCI7bVFbRi5ELmNnXT0idWFhIjttUVtGLkQuZGddPSJ1YWIiO21RW0YuRC5lZ109InVhZnZsIjttUVtGLkQuZmddPSJ1YW1iIjttUVtGLkQuZ2ddPSJ1YW0iOwptUVtGLkQuaGddPSJ1YXAiO21RW0YuRC5pZ109InVhcHYiO21RW0YuRC5qZ109InVhdyI7bVFbRi5ELm9tXT0idXIiO21RW0YuRC5ZaV09Il91aXAiO21RW0YuRC5scV09Il9wcnMiO21RW0YuRC5QZF09ImxwcyI7bVFbRi5ELkJlXT0iZ2NsZ3MiO21RW0YuRC5EZV09ImdjbHN0IjttUVtGLkQuQ2VdPSJnY2xscCI7dmFyIG5RPXt9O25RW0YuRC5HZl09ImNjIjtuUVtGLkQuSGZdPSJjaSI7blFbRi5ELklmXT0iY20iO25RW0YuRC5KZl09ImNuIjtuUVtGLkQuTGZdPSJjcyI7blFbRi5ELk1mXT0iY2siO25RW0YuRC5lYl09ImN1IjtuUVtGLkQuVmZdPSJfdHUiO25RW0YuRC56YV09ImRsIjtuUVtGLkQuWWZdPSJkcCI7blFbRi5ELlVhXT0iZHIiO25RW0YuRC5NYl09ImR0IjtuUVtGLkQuemhdPSJzZWciO25RW0YuRC54Y109CiJzaWQiO25RW0YuRC5BaF09InNjdCI7blFbRi5ELmZiXT0idWlkIjt2YXIgb1E9e307b1FbRi5ELm5oXT0iX2V0IjtvUVtGLkQuVmNdPSJlZGlkIjtvUVtGLkQuTWRdPSJldm5pZCI7TSg5NCkmJihvUS5fZXU9Il9ldSIpO3ZhciBwUT17fTtwUVtGLkQuR2ZdPSJjYyI7cFFbRi5ELkhmXT0iY2kiO3BRW0YuRC5JZl09ImNtIjtwUVtGLkQuSmZdPSJjbiI7cFFbRi5ELkxmXT0iY3MiO3BRW0YuRC5NZl09ImNrIjt2YXIgcVE9e30sclE9KHFRW0YuRC5BY109MSxxUSksc1E9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoZGEsbWEpe2lmKG1hIT09dm9pZCAwJiYhQm8uaGFzT3duUHJvcGVydHkoZGEpKXttYT09PW51bGwmJihtYT0iIik7dmFyIFBhO3ZhciBGYT1tYTtkYSE9PUYuRC5vaD9QYT0hMTpRKGEsSC5KLmxnKXx8YmsoWksoYSkpPyhlLmVjaWQ9RmEsUGE9ITApOlBhPXZvaWQgMDtpZighUGEpe3ZhciBxYT1tYTttYT09PSEwJiYocWE9IjEiKTttYT09PSExJiYocWE9IjAiKTtxYT0KU3RyaW5nKHFhKTt2YXIgaWI7aWYoZGEhPT1GLkQuTmQmJmRhIT09Ri5ELk1kfHxNKDUwNCkpaWYobVFbZGFdKWliPW1RW2RhXSx2W2liXT1xYTtlbHNlIGlmKG5RW2RhXSlpYj1uUVtkYV0sZ1tpYl09cWE7ZWxzZSBpZihvUVtkYV0paWI9b1FbZGFdLGZbaWJdPXFhO2Vsc2UgaWYoU2IoZGEsIl8mIikpaWI9ZGEuc3Vic3RyaW5nKDIpLHZbaWJdPXFhO2Vsc2UgaWYoZGEuY2hhckF0KDApPT09Il8iKXZbZGFdPXFhO2Vsc2V7dmFyIFhiO3BRW2RhXT9YYj0hMDpkYSE9PUYuRC5LZj9YYj0hMToodHlwZW9mIG1hIT09Im9iamVjdCImJnUoZGEsbWEpLFhiPSEwKTtYYnx8dShkYSxtYSl9ZWxzZSB1KGRhLG1hKX19fXZhciBlPXt9LGY9e30sZz17fTtlLnY9IjIiO2UudGlkPWEudGFyZ2V0LmRlc3RpbmF0aW9uSWQ7ZS5ndG09ZHUoe21jOlEoYSxILkouTmIpLGVmOlEoYSxILkouQ2MpfSk7ZS5fcD0kaygyNSk7YyYmKGMuaGFzVXBkfHxjLmhhZEVycm9yKSYmKGUuZW09Yy5wYXJhbSk7UShhLApILkoucmcpJiYoZS5fZ2F6PTEpO2tRKGUsYSk7YXUoKSYmKGUuZG1hX2Nwcz1adCgpKTtlLmRtYT0kdCgpO3Z0KEV0KCkpJiYoZS50Y2ZkPWJ1KCkpO3ZhciBoPUNwKGEpO2gmJihnLnRhZ19leHA9aCk7dmFyIGw9UihhLEYuRC5YYyk7bCYmKGUuZ2RpZD1sKTtmLmVuPVN0cmluZyhhLmV2ZW50TmFtZSk7aWYoUShhLEguSi5uZykpe3ZhciBuPVEoYSxILkouWW0pO2YuX2Z2PW4/MjoxfVEoYSxILkouSGgpJiYoZi5fbnNpPTEpO2lmKFEoYSxILkouVGUpKXt2YXIgcD1RKGEsSC5KLmJuKTtmLl9zcz1wPzI6MX1RKGEsSC5KLm1nKSYmKGYuX2M9MSk7UShhLEguSi5hZSkmJihmLl9lZT0xKTtpZihRKGEsSC5KLldtKSl7dmFyIHE9UihhLEYuRC5IYSl8fE8oYS5NLEYuRC5IYSk7aWYoQXJyYXkuaXNBcnJheShxKSlmb3IodmFyIHI9MDtyPHEubGVuZ3RoJiZyPDIwMDtyKyspZlsicHIiKyhyKzEpXT10ZyhxW3JdKX12YXIgdD1SKGEsRi5ELlZjKTt0JiYoZi5lZGlkPXQpO2h0KGEsZik7Zm9yKHZhciB1PQpmdW5jdGlvbihkYSxtYSl7aWYodHlwZW9mIG1hIT09Im9iamVjdCJ8fCFyUVtkYV0pe3ZhciBQYT0iZXAuIitkYSxGYT0iZXBuLiIrZGE7ZGE9QWIobWEpP0ZhOlBhO3ZhciBxYT1BYihtYSk/UGE6RmE7Zi5oYXNPd25Qcm9wZXJ0eShxYSkmJmRlbGV0ZSBmW3FhXTtmW2RhXT1TdHJpbmcobWEpfX0sdj17fSx4PW0oZXUoYSkpLHk9eC5uZXh0KCk7IXkuZG9uZTt5PXgubmV4dCgpKXt2YXIgej15LnZhbHVlO2QoeixSKGEseikpfWZvcih2YXIgQz1tKE9iamVjdC5rZXlzKHYpLnNvcnQoKSksRD1DLm5leHQoKTshRC5kb25lO0Q9Qy5uZXh0KCkpe3ZhciBJPUQudmFsdWU7ZVtJXT12W0ldfShmdW5jdGlvbihkYSl7YmsoWksoYSkpJiZ0eXBlb2YgZGE9PT0ib2JqZWN0IiYmR2IoZGF8fHt9LGZ1bmN0aW9uKG1hLFBhKXt0eXBlb2YgUGEhPT0ib2JqZWN0IiYmKGVbInNzdC4iK21hXT1TdHJpbmcoUGEpKX0pfSkoUihhLEYuRC5vaikpO2J2KGUsUihhLEYuRC5lZCkpO3ZhciBHPVIoYSxGLkQuV2QpfHwKe307R2IoRyxmdW5jdGlvbihkYSxtYSl7bWEhPT12b2lkIDAmJigobWE9PT1udWxsJiYobWE9IiIpLGRhIT09Ri5ELmZifHxnLnVpZCk/YltkYV0hPT1tYSYmKGZbKEFiKG1hKT8idXBuLiI6InVwLiIpK1N0cmluZyhkYSldPVN0cmluZyhtYSksYltkYV09bWEpOmcudWlkPVN0cmluZyhtYSkpfSk7aWYoV2ooKSYmIURtKCkmJiFiayhaSyhhKSkpe3ZhciBOPVEoYSxILkoub2cpO04/ZS5fZ3NpZD1OOmUubmppZD0iMSJ9dmFyIFM9UShhLEguSi5WaSk7KFM9PW51bGw/dm9pZCAwOlMudmFsdWUpPjAmJihlLmdhZj1TLmdldCgpKTt2YXIgVz1SKGEsRi5ELldjKTtpZihXKWZvcih2YXIgZWE9bShPYmplY3Qua2V5cyhXKSksamE9ZWEubmV4dCgpOyFqYS5kb25lO2phPWVhLm5leHQoKSl7dmFyIGZhPWphLnZhbHVlO2ZbImV4dC4iK2ZhXT1XW2ZhXXx8IiJ9dmFyIHNhPWxRKGEpO3ZnLmNhbGwodGhpcyx7QmE6ZSx2ZTpnLExqOmZ9LHNhLnVybCxzYS5lbmRwb2ludCxaSyhhKSx2b2lkIDAsCmEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsYS5NLmV2ZW50SWQsYS5NLnByaW9yaXR5SWQpfTt3YShzUSx2Zyk7CnZhciB0UT1mdW5jdGlvbihhLGIpe3JldHVybiBhLnJlcGxhY2UoL1wkXHsoW15cfV0rKVx9L2csZnVuY3Rpb24oYyxkKXtyZXR1cm4gYltkXXx8Y30pfSx1UT1mdW5jdGlvbihhKXt2YXIgYj17fSxjPSIiLGQ9YS5wYXRobmFtZS5pbmRleE9mKCIvZy9jb2xsZWN0Iik7ZD49MCYmKGM9YS5wYXRobmFtZS5zdWJzdHJpbmcoMCxkKSk7Yi50cmFuc3BvcnRfdXJsPWEucHJvdG9jb2wrIi8vIithLmhvc3RuYW1lK2M7dmFyIGU7dHJ5e2U9ZW5jb2RlVVJJQ29tcG9uZW50KGN8fCIvIil9Y2F0Y2goZil7ZT1lbmNvZGVVUklDb21wb25lbnQoIi8iKX1iLmVuY29kZWRfcGF0aD1lO3JldHVybiBifSx2UT1mdW5jdGlvbihhLGIpe2lmKCFNKDU0NikpcmV0dXJue3VybDphLGJvZHk6Yn07dmFyIGM9bShhLnNwbGl0KCI/IikpLGQ9Yy5uZXh0KCkudmFsdWUsZT1jLm5leHQoKS52YWx1ZSxmPWhRKGQsZXx8IiIsYnx8IiIsITApLGc9Zi5JYyxoPWYua2Y7YT1oIT09IiI/ZysiPyIraDpnO2I9Zi5ib2R5OwpyZXR1cm57dXJsOmEsYm9keTpifX0seFE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVJqKGIpLGU9dVEoZCksZj12UShYZyhkKSxjKSxnPWZ1bmN0aW9uKGgpe3F4KGYudXJsLGYuYm9keSxuZXcgd1EoZSxoKSkmJmEmJmtuLnJlZ2lzdGVyKGEsMSxmLnVybCl9OyFNKDEzMil8fE5jKCI7IHd2Iil8fE5jKCJGQkFOIil8fE5jKCJGQkFWIil8fFBjKCk/ZygpOm1MKGYudXJsLGYuYm9keSxlLGcpfSx3UT1mdW5jdGlvbihhLGIpe0N4LmNhbGwodGhpcyk7dGhpcy50ZW1wbGF0ZXM9YTt0aGlzLk49Yn07d2Eod1EsQ3gpO3dRLnByb3RvdHlwZS5aPWZ1bmN0aW9uKGEpe3ZhciBiPXRRKGEsdGhpcy50ZW1wbGF0ZXMpO3JldHVybiB0aGlzLk4/Yi5yZXBsYWNlKCJfaXNfc3c9MCIsdGhpcy5OKTpifTt3US5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuWihhKTtDeC5wcm90b3R5cGUuSy5jYWxsKHRoaXMsYyxiKX07d1EucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXt2YXIgYz0KdGhpcy5aKGEpO0N4LnByb3RvdHlwZS5ILmNhbGwodGhpcyxjLGIpfTsKdmFyIHlRPWZ1bmN0aW9uKGEpe3JldHVybiFTYihhLEZtKCkpJiYhU2IoYSxHbSgpKX0sQVE9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2lmKCFuZCgpKXJldHVybiB6UShhLGIsYyxkKSwhMDtZbihjLGIhPT0iIj9hKyI/IitiOmEsZCxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGV8fHt9LHtRZzohMH0pLHZvaWQgMCxmKXx8elEoYSxiLGMsZCk7cmV0dXJuITB9LHpRPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWIhPT0iIj9hKyI/IitiOmE7ZD9XbihjLGUsZCk6Vm4oYyxlKX0sQ1E9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1iLGc9cGQoKTtnIT09dm9pZCAwJiYoZis9IiZ0ZmQ9IitNYXRoLnJvdW5kKGcpKTtiPWY7dmFyIGg9YSsiPyIrYjtpZighYmsoZCl8fGNrKGQpfHx4UCgpKXt2YXIgbD1oUShhLGIsYyxiayhkKSk7YT1sLkljO2I9bC5rZjtjPWwuYm9keTtBUShhLGIsZSxjLHZvaWQgMCxCUShhLGIsZSxjKSl8fHpRKGEsYixlLGMpfWVsc2UgeFEoZSxoLGMpOwpiayhkKSYmTSg1NjQpJiZuZCgpJiZUYihhLCIvZy9jb2xsZWN0IikmJkEuZmV0Y2goYS5zdWJzdHJpbmcoMCxhLmxlbmd0aC0xMCkse21ldGhvZDoiUE9TVCIsYm9keToiQ2pBT0FUd2NDQmdPIixjcmVkZW50aWFsczoib21pdCJ9KX0sQlE9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoIXlRKGEpKXt2YXIgZT1NbVs2N10odm9pZCAwKTtpZihlKXJldHVybiBmdW5jdGlvbigpe3ZhciBmO3ZhciBnPWIucmVwbGFjZSgvXlw/LywiIiksaD1OdW1iZXIoSWooZywiZ2FmIiwhMSkpLGw9MDtOdW1iZXIuaXNJbnRlZ2VyKGgpJiYobD1oKTt2YXIgbj1uZXcgZXIobCk7ZnIobiwxKTtpZihuLnZhbHVlIT09MCl7dmFyIHAscT1uLmdldCgpLHI9UmVnRXhwKCIoXnxbPyZdKWdhZj1bXiZdKigmfCQpIik7cD1yLnRlc3QoZyk/Zy5yZXBsYWNlKHIsIiQxZ2FmPSIrcSsiJDIiKTpnLmluZGV4T2YoIj8iKT49MD9nKyImZ2FmPSIrcTpnWzBdPT09Ii8ifHxnLmluZGV4T2YoIjovLyIpPj0wP2crIj9nYWY9IisKcTpnLmxlbmd0aD4wP2crIiZnYWY9IitxOiJnYWY9IitxO2Y9Yi5pbmRleE9mKCI/Iik9PT0wPyI/IitwOnB9ZWxzZSBmPXZvaWQgMDtBUShlLGZ8fGIsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHtlbmRwb2ludDo2N30pLGQsYy5lbmRwb2ludD09PTE3P3ZvaWQgMDp7Y3JlZGVudGlhbHM6Im9taXQifSl9fX0sRFE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVtdLGU9ZnVuY3Rpb24oaCl7ZC5wdXNoKGgrIj0iK2VuY29kZVVSSUNvbXBvbmVudCgiIithLkJhW2hdKSl9O2QucHVzaCgidj0yIik7ZSgiX2dzaWQiKTtlKCJndG0iKTthLkJhLl9nZW8mJmUoIl9nZW8iKTt2YXIgZj0iaHR0cHM6Ly97Z2E0Q29sbGVjdGlvblN1YmRvbWFpbi59Z29vZ2xlLWFuYWx5dGljcy5jb20vZy9zL2NvbGxlY3QiLnJlcGxhY2UoIntnYTRDb2xsZWN0aW9uU3ViZG9tYWluLn0iLChifHwid3d3IikrIi4iKSxnPWQuam9pbigiJiIpO3pRKGYsZyx7ZGVzdGluYXRpb25JZDphLmRlc3RpbmF0aW9uSWR8fAoiIixlbmRwb2ludDo2MixldmVudElkOmEuZXZlbnRJZCxwcmlvcml0eUlkOmEucHJpb3JpdHlJZH0pO01sKHt0YXJnZXRJZDpTdHJpbmcoYS5CYS50aWQpLHJlcXVlc3Q6e3VybDpmKyI/IitnLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6NjJ9LHFiOmN9KX0sRVE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSJodHRwczovL3tnYTRDb2xsZWN0aW9uU3ViZG9tYWluLn1hbmFseXRpY3MuZ29vZ2xlLmNvbS9nL3MvY29sbGVjdCIucmVwbGFjZSgie2dhNENvbGxlY3Rpb25TdWJkb21haW4ufSIsYj9iKyIuIjoiIiksZT1bXSxmPWZ1bmN0aW9uKGgpe2UucHVzaChoKyI9IitlbmNvZGVVUklDb21wb25lbnQoIiIrYS5CYVtoXSkpfTtmKCJfZ3NpZCIpO2YoImd0bSIpO2EuQmEuX2dlbyYmZigiX2dlbyIpO3ZhciBnPWUuam9pbigiJiIpO3pRKGQsZyx7ZGVzdGluYXRpb25JZDphLmRlc3RpbmF0aW9uSWR8fCIiLGVuZHBvaW50OjE4LGV2ZW50SWQ6YS5ldmVudElkLHByaW9yaXR5SWQ6YS5wcmlvcml0eUlkfSk7Ck1sKHt0YXJnZXRJZDpTdHJpbmcoYS5CYS50aWQpLHJlcXVlc3Q6e3VybDpkKyI/IitnLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6MTh9LHFiOmN9KX0sRlE9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2MmJmIucHVzaCgidGFnX2V4cD0iK2MpO2IucHVzaCgiej0iK0RiKCkpO2lmKCFlKXt2YXIgZz1kJiZTYihkLCJnb29nbGUuIikmJmQhPT0iZ29vZ2xlLmNvbSI/Imh0dHBzOi8vd3d3LiUvYWRzL2dhLWF1ZGllbmNlcz92PTEmdD1zciZzbGZfcmQ9MSZfcj00JiIucmVwbGFjZSgiJSIsZCk6dm9pZCAwO2lmKGcpe3ZhciBoPWcrYi5qb2luKCImIik7WG4oe2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDo0NyxldmVudElkOmEuZXZlbnRJZCxwcmlvcml0eUlkOmEucHJpb3JpdHlJZH0saCk7TWwoe3RhcmdldElkOlN0cmluZyhhLkJhLnRpZCkscmVxdWVzdDp7dXJsOmgscGFyYW1ldGVyRW5jb2Rpbmc6MixlbmRwb2ludDo0N30scWI6Zn0pfX19LEdRPQpmdW5jdGlvbihhLGIsYyxkKXtjJiZiLnB1c2goInRhZ19leHA9IitjKTt6USgiaHR0cHM6Ly9zdGF0cy5nLmRvdWJsZWNsaWNrLm5ldC9nL2NvbGxlY3QiLCJ2PTImIitiLmpvaW4oIiYiKSx7ZGVzdGluYXRpb25JZDphLmRlc3RpbmF0aW9uSWR8fCIiLGVuZHBvaW50OjE5LGV2ZW50SWQ6YS5ldmVudElkLHByaW9yaXR5SWQ6YS5wcmlvcml0eUlkfSk7TWwoe3RhcmdldElkOlN0cmluZyhhLkJhLnRpZCkscmVxdWVzdDp7dXJsOiJodHRwczovL3N0YXRzLmcuZG91YmxlY2xpY2submV0L2cvY29sbGVjdD92PTImIitiLmpvaW4oIiYiKSxwYXJhbWV0ZXJFbmNvZGluZzoyLGVuZHBvaW50OjE5fSxxYjpkfSl9LEhRPWZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gYyh2KXtxLnB1c2godisiPSIrZW5jb2RlVVJJQ29tcG9uZW50KCIiK2EuQmFbdl0pKX12YXIgZD1iLnh0LGU9Yi5CdCxmPWIuQXQsZz1iLnp0LGg9Yi5acixsPWIuQ3Msbj1iLlByLHA9Yi5HdDtpZihkfHxlfHxmfHxnKXt2YXIgcT0KW107YS5CYS5fbmcmJmMoIl9uZyIpO2EuQmEubmdzJiZjKCJuZ3MiKTthLkJhLmlidCYmYygiaWJ0Iik7YygidGlkIik7YygiY2lkIik7YygiZ3RtIik7Zm9yKHZhciByPW0oT0YpLHQ9ci5uZXh0KCk7IXQuZG9uZTt0PXIubmV4dCgpKXt2YXIgdT10LnZhbHVlO2EuQmFbdV0hPW51bGwmJmModSl9cS5wdXNoKCJhaXA9MSIpO2EudmUudWlkJiZxLnB1c2goInVpZD0iK2VuY29kZVVSSUNvbXBvbmVudCgiIithLnZlLnVpZCkpO2MoImRtYSIpO2EuQmEuZG1hX2NwcyE9bnVsbCYmYygiZG1hX2NwcyIpO2EuQmEuZ2NzIT1udWxsJiZjKCJnY3MiKTtjKCJnY2QiKTthLkJhLm5wYSE9bnVsbCYmYygibnBhIik7YS5CYS5mcm0hPW51bGwmJmMoImZybSIpO2QmJkdRKGEscS5zbGljZSgpLHAsYi5xYik7ZSYmRlEoYSxxLnNsaWNlKCkscCxoLGwsYi5xYik7ZiYmRVEoYSxuLGIucWIpO2cmJkRRKGEsbixiLnFiKX19LElRPWZ1bmN0aW9uKCl7dGhpcy5SPTE7dGhpcy5aPXt9O3RoaXMuSz0tMTt0aGlzLkg9Cm5ldyB3Z307SVEucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLGQ9bmV3IHNRKGEsdGhpcy5aLGIpLGU9e2V2ZW50SWQ6YS5NLmV2ZW50SWQscHJpb3JpdHlJZDphLk0ucHJpb3JpdHlJZH0sZj15UChhKSxnLGg7ZiYmdGhpcy5ILlIoZCl8fHRoaXMuZmx1c2goKTt2YXIgbD1mJiZ0aGlzLkguYWRkKGQpO2lmKGwpe2lmKHRoaXMuSzwwKXt2YXIgbj1BLHA9bi5zZXRUaW1lb3V0LHE7YmsoWksoYSkpP0pRPyhKUT0hMSxxPUtRKTpxPUxROnE9NUUzO3RoaXMuSz1wLmNhbGwobixmdW5jdGlvbigpe2MuZmx1c2goKX0scSl9fWVsc2V7dmFyIHI9emcoZCx0aGlzLlIrKyksdD1yLnBhcmFtcyx1PXIuYm9keTtnPXQ7aD11O0Z5KDMsYS5ldmVudE5hbWUpO0NRKGQuYmFzZVVybCx0LHUsZC5OLHtkZXN0aW5hdGlvbklkOmEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsZW5kcG9pbnQ6ZC5lbmRwb2ludCxldmVudElkOmQuZXZlbnRJZCxwcmlvcml0eUlkOmQucHJpb3JpdHlJZH0pOwp2YXIgdj1RKGEsSC5KLmhkKSx4PVEoYSxILkoucmcpLHk9UShhLEguSi5OaCksej1RKGEsSC5KLk1oKSxDPU8oYS5NLEYuRC51aSkhPT0hMSxEPVN0KGEuTSksST17eHQ6dixCdDp4LEF0OnksenQ6eixacjpFbSgpLG12OkMsbHY6RCxDczpBbSgpLHFiOmUsTTphLk0sUHI6RG0oKSxHdDpDcChhKX07SFEoZCxJKX1mbi5IJiZBeihhLk0uZXZlbnRJZCk7TmwoZnVuY3Rpb24oKXtpZihsKXt2YXIgRz16ZyhkKSxOPUcuYm9keTtnPUcucGFyYW1zO2g9Tn1yZXR1cm57dGFyZ2V0SWQ6YS50YXJnZXQuZGVzdGluYXRpb25JZCxyZXF1ZXN0Ont1cmw6ZC5iYXNlVXJsKyI/IitnLHBhcmFtZXRlckVuY29kaW5nOjIscG9zdEJvZHk6aCxlbmRwb2ludDpkLmVuZHBvaW50fSxxYjplLGlzQmF0Y2hlZDohMX19KX07SVEucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhKXtZSyhhKSYmIXhQKCk/dGhpcy5mYShhKTp0aGlzLk4oYSl9O0lRLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe2lmKHRoaXMuSC5ldmVudHMubGVuZ3RoKXt2YXIgYT0KQmcodGhpcy5ILHRoaXMuUisrKTtDUSh0aGlzLkguYmFzZVVybCxhLnBhcmFtcyxhLmJvZHksdGhpcy5ILksse2Rlc3RpbmF0aW9uSWQ6dGhpcy5ILmRlc3RpbmF0aW9uSWR8fCIiLGVuZHBvaW50OnRoaXMuSC5lbmRwb2ludCxldmVudElkOnRoaXMuSC5aLHByaW9yaXR5SWQ6dGhpcy5ILmZhfSk7dGhpcy5IPW5ldyB3Zzt0aGlzLks+PTAmJihBLmNsZWFyVGltZW91dCh0aGlzLkspLHRoaXMuSz0tMSl9fTtJUS5wcm90b3R5cGUuZmE9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPVlLKGEpO00oNTY4KSYmIU0oNTg2KSYmUihhLEYuRC5CYyk9PT0iYSImJihjPWN3KGMpKTtpZihFdyhjKSl7dmFyIGQ9c3coYyk7ZD9kLnRoZW4oZnVuY3Rpb24oZil7Yi5OKGEsZil9LGZ1bmN0aW9uKCl7Yi5OKGEpfSk6dGhpcy5OKGEpfWVsc2V7dmFyIGU9RHcoYyk7dGhpcy5OKGEsZSl9fTt2YXIgS1E9TmYoMjQsNTAwKSxMUT1OZig1Niw1RTMpLEpRPSEwO3ZhciBNUT1mdW5jdGlvbihhKXt2YXIgYj1TdChhLk0pO08oYS5NLEYuRC5XYik9PT0hMCYmKGI9ITEpO1YoYSxILkoud2QsYil9Owp2YXIgTlE9ZnVuY3Rpb24oYSxiLGMpe2M9PT12b2lkIDAmJihjPXt9KTtpZihiPT1udWxsKXJldHVybiBjO2lmKHR5cGVvZiBiPT09Im9iamVjdCIpZm9yKHZhciBkPW0oT2JqZWN0LmtleXMoYikpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO05RKGErIi4iK2YsYltmXSxjKX1lbHNlIGNbYV09YjtyZXR1cm4gY30sT1E9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9bShhKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtiW2VdPSEhWG8oZSl9cmV0dXJuIGJ9LFFRPWZ1bmN0aW9uKGEsYil7dmFyIGM9UFEuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiFYbyhlKX0pO2lmKGMubGVuZ3RoKXt2YXIgZD1PUShjKTskbyhjLGZ1bmN0aW9uKCl7Zm9yKHZhciBlPU9RKGMpLGY9W10sZz1tKGMpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD1oLnZhbHVlOyFkW2xdJiZlW2xdJiZmLnB1c2gobCk7ZVtsXSYmCihkW2xdPSEwKX1pZihmLmxlbmd0aCl7VihiLEguSi5HaCwhMCk7dmFyIG49Zi5tYXAoZnVuY3Rpb24ocCl7cmV0dXJuIExvW3BdfSkuam9pbigiLiIpO24mJldLKGIsImdjdXQiLG4pO01RKGIpO2EoYil9fSl9fSxSUT1mdW5jdGlvbihhKXtSKGEsRi5ELldjKSYmIWJrKFpLKGEpKSYmVShhLEYuRC5XYyl9LFNRPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmV0soYSwibmF2dCIscWQoKSl9LFRRPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmV0soYSwibHBjIixpcigpKX0sVVE9ZnVuY3Rpb24oYSl7aWYoYmsoWksoYSkpKXt2YXIgYj1PKGEuTSxGLkQuV2IpLGM7Yj09PSEwJiYoYz0iMSIpO2I9PT0hMSYmKGM9IjAiKTtjJiZXSyhhLCJyZHAiLGMpfX0sVlE9ZnVuY3Rpb24oYSxiKXtpZihiayhaSyhiKSkpe3ZhciBjPVEoYixILkoubWcpOyhiLmV2ZW50TmFtZT09PSJwYWdlX3ZpZXcifHxjKSYmUVEoYSxiKX19LFdRPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSYmYS5ldmVudE5hbWU9PT1GLkQueWYmJgpRKGEsSC5KLkdoKSl7dmFyIGI9UihhLEYuRC54aSk7YiYmKFdLKGEsImdjdXQiLGIpLFdLKGEsInN5biIsMSkpfX0sWFE9ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PT1iKXJldHVybiBXaigpJiZTYihjKyIvIixYaigpKyIvIik/IjciOiIxIjtpZihUYihhLCIuIitiKSlyZXR1cm4iMiI7aWYoVGIoYiwiLiIrYSkpcmV0dXJuIjMiO3ZhciBkPWEuc3BsaXQoIi4iKSxlPWIuc3BsaXQoIi4iKSxmPWZ1bmN0aW9uKGcpe2lmKGQubGVuZ3RoPGd8fGUubGVuZ3RoPGcpcmV0dXJuITE7Zm9yKHZhciBoPTE7aDw9ZztoKyspaWYoZFtkLmxlbmd0aC1oXSE9PWVbZS5sZW5ndGgtaF0pcmV0dXJuITE7cmV0dXJuITB9O3JldHVybiBmKDMpPyI2IjpmKDIpPyI1IjoiNCJ9LFlRPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9ZWsoYS5NKTtpZihiKXt2YXIgYz1ZaihiLCIvIiksZD1SaihjKSxlPU5qKGQsImhvc3QiKSxmPU5qKEEubG9jYXRpb24sImhvc3QiKTtpZihlJiZmKXt2YXIgZz1OaihkLAoicGF0aCIpO2EubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSx7c3N0ZDpYUShlLGYsZyl9KX19fX0sWlE9ZnVuY3Rpb24oYSl7YmsoWksoYSkpJiZWKGEsSC5KLkphLCExKX0sJFE9ZnVuY3Rpb24oYSl7YmsoWksoYSkpJiYoUShhLEguSi5KYSkmJldLKGEsInNwIiwxKSxRKGEsSC5KLklxKSYmV0soYSwic3luIiwxKSxRKGEsSC5KLlBjKSYmKFdLKGEsImVtX2V2ZW50IiwxKSxXSyhhLCJzcCIsMSkpKX0sYVI9ZnVuY3Rpb24oYSl7aWYoYmsoWksoYSkpKXt2YXIgYj0kaygyNSk7YiYmV0soYSwidGZ0IixOdW1iZXIoYikpfX0sYlI9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihlKXt2YXIgZj1OUShGLkQuQWMsZSk7R2IoZixmdW5jdGlvbihnLGgpe1UoYSxnLGgpfSl9aWYoYmsoWksoYSkpKXt2YXIgYz1kSShhLCJjY2RfYWRkXzFwX2RhdGEiLCExKT8xOjA7V0soYSwidWRlIixjKTt2YXIgZD1PKGEuTSxGLkQuQWMpO2QhPT12b2lkIDA/KFp2KGQpLGIoZCksVShhLEYuRC5CYywiYyIpKToKYihRKGEsSC5KLllhKSk7VihhLEguSi5ZYSl9fSxjUj1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkpe3ZhciBiPVZNKCk7YiYmV0soYSwidXNfcHJpdmFjeSIsYik7dmFyIGM9THQoKTtjJiZXSyhhLCJnZHByIixjKTt2YXIgZD1LdCgpO2QmJldLKGEsImdkcHJfY29uc2VudCIsZCk7dmFyIGU9a0YuZ3BwU3RyaW5nO2UmJldLKGEsImdwcCIsZSk7dmFyIGY9a0YuSDtmJiZXSyhhLCJncHBfc2lkIixmKX19LGRSPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmRWwoKSYmTyhhLk0sRi5ELm1iKSYmV0soYSwiYWRyIiwxKX0sZVI9ZnVuY3Rpb24oYSl7aWYoYmsoWksoYSkpKXt2YXIgYj1EbSgpO2ImJldLKGEsImdjc3ViIixiKX19LGZSPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7TyhhLk0sRi5ELlNjLHZvaWQgMCw0KT09PSExJiZXSyhhLCJuZ3MiLDEpO0FtKCkmJldLKGEsImdhX3JkIiwxKTtWSygpfHxXSyhhLCJuZ3N0IiwxKTt2YXIgYj1FbSgpO2ImJldLKGEsImV0bGQiLGIpfX0sZ1I9CmZ1bmN0aW9uKGEpe30saFI9ZnVuY3Rpb24oYSl7YmsoWksoYSkpJiZFbCgpJiZXSyhhLCJybmQiLFFNKCkpfSxQUT1bRi5ELmthLEYuRC5tYSxGLkQuWGFdOwp2YXIgaVI9ZnVuY3Rpb24oYSxiKXt2YXIgYzthOntpZighUShhLEguSi5GYykpe3ZhciBkPVRQKGEpO2lmKGQpe2lmKFJQKGQsYSkpe2M9ZDticmVhayBhfVAoMjUpO2EuaXNBYm9ydGVkPSEwfX1jPXZvaWQgMH12YXIgZT1jO3JldHVybntjbGllbnRJZDpFUChhLGIpLHpiOmV9fSxqUj1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPVFvKE8oYS5NLEYuRC5LYikpO2lmKE8oYS5NLEYuRC5aYykmJk8oYS5NLEYuRC5ZYykpZj9DUChhLGYsMSk6KFAoMTI3KSxhLmlzQWJvcnRlZD0hMCk7ZWxzZXt2YXIgZz1mPzE6ODtWKGEsSC5KLkhoLCExKTtmfHwoZj1GUChhKSxnPTMpO2Z8fChmPWIsZz01KTtpZighZil7dmFyIGg9WG8oRi5ELnJhKSxsPXpQKCk7Zj0hbC5mcm9tX2Nvb2tpZXx8aD9sLnZpZDp2b2lkIDA7Zz02fWY/Zj0iIitmOihmPUF2KCksZz03LFYoYSxILkoubmcsITApLFYoYSxILkouSGgsITApKTtDUChhLGYsZyl9UihhLEYuRC5LYik7aWYoIVEoYSxILkouRmMpKXt2YXIgbj0KUShhLEguSi5FYikscD1NYXRoLmZsb29yKG4vMUUzKSxxPXZvaWQgMDtRKGEsSC5KLkhoKXx8KHE9U1AoYSl8fGMpO3ZhciByPUliKE8oYS5NLEYuRC55aCwzMCkpO3I9TWF0aC5taW4oNDc1LHIpO3I9TWF0aC5tYXgoNSxyKTt2YXIgdD1JYihPKGEuTSxGLkQuUGksMUU0KSksdT1MUChxKTtWKGEsSC5KLm5nLCExKTtWKGEsSC5KLlRlLCExKTtWKGEsSC5KLnBnLDApO3UmJnUuaiYmVihhLEguSi5wZyxNYXRoLm1heCgwLHUuai1NYXRoLm1heCgwLHAtdS50KSkpO3ZhciB2PSExO2lmKCF1KXtWKGEsSC5KLm5nLCEwKTt2PSEwO3ZhciB4PXt9O3U9KHgucz1TdHJpbmcocCkseC5vPTEseC5nPSExLHgudD1wLHgubD0hMSx4Lmg9dm9pZCAwLHgpfXA+dS50K3IqNjAmJih2PSEwLHUucz1TdHJpbmcocCksdS5vKyssdS5nPSExLHUuaD12b2lkIDApO2lmKHYpVihhLEguSi5UZSwhMCksZC5scyhhKTtlbHNlIGlmKGQuWHIoKT50fHxhLmV2ZW50TmFtZT09PUYuRC5zYyl1Lmc9ITA7UShhLEguSi5sZyk/Ck8oYS5NLEYuRC5mYik/dS5sPSEwOnUubD0hMTp1Lmw9ITE7dmFyIHk9dS5oO2lmKFEoYSxILkoubGcpfHxiayhaSyhhKSkpe3ZhciB6PU8oYS5NLEYuRC5vaCksQz16PzE6ODt6fHwoej15LEM9NCk7enx8KHo9enYoKSxDPTcpO3ZhciBEPXoudG9TdHJpbmcoKSxJPUMsRz1RKGEsSC5KLnRsKTtpZihHPT09dm9pZCAwfHxJPD1HKVUoYSxGLkQub2gsRCksVihhLEguSi50bCxJKX1lPyhhLmNvcHlUb0hpdERhdGEoRi5ELnhjLHUucyksYS5jb3B5VG9IaXREYXRhKEYuRC5BaCx1Lm8pLGEuY29weVRvSGl0RGF0YShGLkQuemgsdS5nPzE6MCkpOihVKGEsRi5ELnhjLHUucyksVShhLEYuRC5BaCx1Lm8pLFUoYSxGLkQuemgsdS5nPzE6MCkpO1YoYSxILkoucm0sdS5sPzE6MCk7V2ooKSYmVihhLEguSi5vZyx1LmR8fGNjKCkpfX07CnZhciBrUj1mdW5jdGlvbihhKXt2YXIgYj1hLmluZGV4T2YoIj8iKSxjPWI9PT0tMT9hOmEuc3Vic3RyaW5nKDAsYiksZD1LaihjKTtkJiYoYz1kKTtyZXR1cm4gYj09PS0xP2M6IiIrYythLnN1YnN0cmluZyhiKX0sbFI9ZnVuY3Rpb24oYSl7aWYoIU8oYS5NLEYuRC5ZYyl8fCFPKGEuTSxGLkQuWmMpKXt2YXIgYj1hLmNvcHlUb0hpdERhdGEsYz1GLkQuemEsZD0iIixlPUIubG9jYXRpb247aWYoZSl7dmFyIGY9ZS5wYXRobmFtZXx8IiI7Zi5jaGFyQXQoMCkhPT0iLyImJihmPSIvIitmKTt2YXIgZz1lLnNlYXJjaHx8IiI7aWYoZ1swXT09PSI/Iilmb3IodmFyIGg9Zy5zdWJzdHJpbmcoMSkuc3BsaXQoIiYiKSxsPTA7bDxoLmxlbmd0aDsrK2wpe3ZhciBuPWhbbF0uc3BsaXQoIj0iKTtuJiZuLmxlbmd0aD09PTImJm5bMF09PT0id2JyYWlkIiYmKGc9Zy5yZXBsYWNlKC8oWz8mXSl3YnJhaWQ9W14mXSsvLCIkMXdicmFpZD0iKyRiKG5bMV0pKSl9ZD1lLnByb3RvY29sKyIvLyIrZS5ob3N0bmFtZSsKZitnfWIuY2FsbChhLGMsZCxrUik7dmFyIHA9YS5jb3B5VG9IaXREYXRhLHE9Ri5ELlVhLHI9dUEoImd0bS5ndGFnUmVmZXJyZXIuIithLnRhcmdldC5kZXN0aW5hdGlvbklkKSx0PUIucmVmZXJyZXI7cC5jYWxsKGEscSwocj8iIityOnQpfHx2b2lkIDAsa1IpO2EuY29weVRvSGl0RGF0YShGLkQuTWIsQi50aXRsZSk7YS5jb3B5VG9IaXREYXRhKEYuRC50YiwoSGMubGFuZ3VhZ2V8fCIiKS50b0xvd2VyQ2FzZSgpKTt2YXIgdT1xSSgpO2EuY29weVRvSGl0RGF0YShGLkQuYmQsdS53aWR0aCsieCIrdS5oZWlnaHQpO2EuY29weVRvSGl0RGF0YShGLkQuWWYsdm9pZCAwLGtSKTtUTSgpJiZhLmNvcHlUb0hpdERhdGEoRi5ELlBkLCIxIil9fTt2YXIgblI9ZnVuY3Rpb24oYSl7dmFyIGI9eEMoYS5NKSxjPWZ1bmN0aW9uKGQsZSl7bVJbZF0mJlUoYSxkLGUpfTtDZChiW0YuRC5LZl0pP0diKGJbRi5ELktmXSxmdW5jdGlvbihkLGUpe2MoKEYuRC5LZisiXyIrZCkudG9Mb3dlckNhc2UoKSxlKX0pOkdiKGIsYyl9LG9SPXt9LG1SPShvUltGLkQuR2ZdPTEsb1JbRi5ELkhmXT0xLG9SW0YuRC5JZl09MSxvUltGLkQuSmZdPTEsb1JbRi5ELkxmXT0xLG9SW0YuRC5NZl09MSxvUik7dmFyIHBSPWZ1bmN0aW9uKGEpe2lmKCFiayhaSyhhKSkmJlEoYSxILkoubWcpJiZYbyhGLkQua2EpJiZkSShhLCJnYTRfYWRzX2xpbmtlZCIsITEpKXt2YXIgYj1MSyhhKSxjPUhyKGIucHJlZml4KSxkPVJzKGMpO1UoYSxGLkQuQmUsZC5FZyk7VShhLEYuRC5EZSxkLldoKTtVKGEsRi5ELkNlLGQuVWgpfX07dmFyIHFSPWZ1bmN0aW9uKGEpe3ZhciBiPU8oYS5NLEYuRC5aYyk7YiYmSVAoSi5VLnhuKTtRKGEsSC5KLlBjKSYmSVAoSi5VLk5rKTt2YXIgYz15ayh6aygpKTsoYnx8TWsoYyl8fGMmJmMucGFyZW50JiZjLmNvbnRleHQmJmMuY29udGV4dC5zb3VyY2U9PT01KSYmSVAoSi5VLmZuKTtRKGEsSC5KLmNqKSYmSVAoSi5VLkltKTtRKGEsSC5KLmJqKSYmSVAoSi5VLkhtKX07dmFyIHJSPWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouVmkpfHxuZXcgZXI7UShhLEguSi5iaikmJlEoYSxILkouY2opJiZmcihiLDIpO1YoYSxILkouVmksYil9O2Z1bmN0aW9uIHNSKGEpe2EuY29weVRvSGl0RGF0YShGLkQuZmIpO3ZhciBiPU8oYS5NLEYuRC5XZCk7YiYmKEtDKGIsZnVuY3Rpb24oKXt9KSxVKGEsRi5ELldkLGIpKX07dmFyIHVSPWZ1bmN0aW9uKGEpe2lmKHRSLk1yLnJlcGxhY2UoL1xzKy9nLCIiKS5zcGxpdCgiLCIpLmluZGV4T2YoYS5ldmVudE5hbWUpPj0wKWEuaXNBYm9ydGVkPSEwO2Vsc2V7dmFyIGI9WEsoYSk7YiYmYi5ibGFja2xpc3RlZCYmKGEuaXNBYm9ydGVkPSEwKX19LHRSPXtNcjpMZigzMSl9O2Z1bmN0aW9uIHZSKGEpe3ZhciBiPWZ1bmN0aW9uKGMpe3JldHVybiEhYyYmYy5jb252ZXJzaW9ufTtWKGEsSC5KLm1nLGIoWEsoYSkpKTtRKGEsSC5KLm5nKSYmVihhLEguSi5ZbSxiKFhLKGEsImZpcnN0X3Zpc2l0IikpKTtRKGEsSC5KLlRlKSYmVihhLEguSi5ibixiKFhLKGEsInNlc3Npb25fc3RhcnQiKSkpfTt2YXIgd1I9ZnVuY3Rpb24oYSl7Rm8uaGFzT3duUHJvcGVydHkoYS5ldmVudE5hbWUpJiYoVihhLEguSi5XbSwhMCksYS5jb3B5VG9IaXREYXRhKEYuRC5IYSksYS5jb3B5VG9IaXREYXRhKEYuRC5lYikpfTt2YXIgeFI9ZnVuY3Rpb24oYSl7UShhLEguSi5iZSk/VihhLEguSi5sZywhMSk6ZEkoYSwiY2NkX2FkZF9lY19zdGl0Y2hpbmciLCExKSYmVihhLEguSi5sZywhMCl9O3ZhciB5Uj1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLnBnKTtiPWJ8fDA7dmFyIGM9ISFRKGEsSC5KLnNhKSxkPWI9PT0wfHxjO1YoYSxILkouZWosZCk7ZCYmVihhLEguSi5wZyw2MCl9O3ZhciBBUj1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz1TdHJpbmcoelIuY29va2llKS5zcGxpdCgiOyIpLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9Y1tkXS5zcGxpdCgiPSIpLGY9ZVswXS50cmltKCk7aWYoZiYmYShmKSl7dmFyIGc9ZS5zbGljZSgxKS5qb2luKCI9IikudHJpbSgpO2cmJihnPWRlY29kZVVSSUNvbXBvbmVudChnKSk7dmFyIGg9dm9pZCAwLGw9dm9pZCAwOygoaD1iKVtsPWZdfHwoaFtsXT1bXSkpLnB1c2goZyl9fXJldHVybiBifTt2YXIgQlI9d2luZG93LHpSPWRvY3VtZW50LENSPWZ1bmN0aW9uKGEpe3ZhciBiPUJSLl9nYVVzZXJQcmVmcztpZihiJiZiLmlvbyYmYi5pb28oKXx8elIuZG9jdW1lbnRFbGVtZW50Lmhhc0F0dHJpYnV0ZSgiZGF0YS1nb29nbGUtYW5hbHl0aWNzLW9wdC1vdXQiKXx8YSYmQlJbImdhLWRpc2FibGUtIithXT09PSEwKXJldHVybiEwO3RyeXt2YXIgYz1CUi5leHRlcm5hbDtpZihjJiZjLl9nYVVzZXJQcmVmcyYmYy5fZ2FVc2VyUHJlZnM9PSJvbyIpcmV0dXJuITB9Y2F0Y2goZil7fWZvcih2YXIgZD1BUihmdW5jdGlvbihmKXtyZXR1cm4gZj09PSJBTVBfVE9LRU4ifSkuQU1QX1RPS0VOfHxbXSxlPTA7ZTxkLmxlbmd0aDtlKyspaWYoZFtlXT09IiRPUFRfT1VUIilyZXR1cm4hMDtyZXR1cm4gelIuZ2V0RWxlbWVudEJ5SWQoIl9fZ2FPcHRPdXRFeHRlbnNpb24iKT8hMDohMX07dmFyIERSPWZ1bmN0aW9uKGEpe2lmKENSKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpKVAoMjgpLGEuaXNBYm9ydGVkPSEwO2Vsc2V7dmFyIGI9eGsoKTtpZihiJiZBcnJheS5pc0FycmF5KGIuZGVzdGluYXRpb25zKSlmb3IodmFyIGM9MDtjPGIuZGVzdGluYXRpb25zLmxlbmd0aDtjKyspaWYoQ1IoYi5kZXN0aW5hdGlvbnNbY10pKXtQKDEyNSk7YS5pc0Fib3J0ZWQ9ITA7YnJlYWt9fX07dmFyIEVSPWZ1bmN0aW9uKGEpe3ZhciBiPUIubG9jYXRpb24ucHJvdG9jb2w7YiE9PSJodHRwOiImJmIhPT0iaHR0cHM6IiYmKFAoMjkpLGEuaXNBYm9ydGVkPSEwKX07dmFyIEZSPWZ1bmN0aW9uKGEpe0hjJiZIYy5sb2FkUHVycG9zZT09PSJwcmV2aWV3IiYmKFAoMzApLGEuaXNBYm9ydGVkPSEwKX07dmFyIEdSPWZ1bmN0aW9uKGEsYil7Yi5UaiYmKFYoYSxILkouc2EsITApLGIuVGo9ITEsV2ooKSYmVihhLEguSi5vZyxjYygpKSl9O3ZhciBIUj1mdW5jdGlvbihhKXtmdW5jdGlvbiBiKGMsZCl7Qm9bY118fGQ9PT12b2lkIDB8fFUoYSxjLGQpfU0oNTUwKSYmR2IoYS5NLldhLGIpO0diKGEuTS5oYixiKTtHYihhLk0uRWEsYil9O3ZhciBJUj1mdW5jdGlvbihhKXthLmV2ZW50TmFtZT09PUYuRC53YSYmKE8oYS5NLEYuRC5UZCwhMCk/KGEuTS5FYVtGLkQuT2FdJiYoTSg1NTApJiYoYS5NLldhW0YuRC5PYV09YS5NLkVhW0YuRC5PYV0pLGEuTS5oYltGLkQuT2FdPWEuTS5FYVtGLkQuT2FdLGEuTS5FYVtGLkQuT2FdPXZvaWQgMCxVKGEsRi5ELk9hKSksYS5ldmVudE5hbWU9Ri5ELnNjKTphLmlzQWJvcnRlZD0hMCl9Owp2YXIgSlI9ZnVuY3Rpb24oYSl7aWYoTSgxMzIpKXt2YXIgYj1aSyhhKTtpZihiayhiKSlpZihjayhiKSljayhaSyhhKSkmJmEubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSx7IjNwZCI6IjEifSk7ZWxzZSBpZighKE5jKCI7IHd2Iil8fE5jKCJGQkFOIil8fE5jKCJGQkFWIil8fFBjKCkpJiZYbyhGLkQucmEpKXtWKGEsSC5KLmRuLCEwKTtiayhaSyhhKSkmJldLKGEsInN3X2V4cCIsMSk7YTp7aWYoIU0oMTMyKXx8IWJrKFpLKGEpKXx8Y2soWksoYSkpKWJyZWFrIGE7Yjp7dmFyIGM9e290OllqKGVrKGEuTSksIi9fL3NlcnZpY2Vfd29ya2VyIil9LGQ7ZD0oYz09PXZvaWQgMD97fTpjKS5vdDt2YXIgZT1pTChkKTtpZihlPT09bnVsbHx8IWJnKCJpbnRlcm5hbF9zd19hbGxvd2VkIiwiIil8fGpMKGUub3JpZ2luKSlicmVhayBiOwppZighSWMoKSl7Z0woKS5LKHZvaWQgMCx2b2lkIDAsNik7YnJlYWsgYn12YXIgZj1uZXcga0woZSk7b20oam0uYmEuT2gse30pW2Uub3JpZ2luXT1mO319fX19O3ZhciBMUj1mdW5jdGlvbihhKXthLmNvcHlUb0hpdERhdGEoRi5ELk9sKTtPKGEuTSxGLkQueGgpJiYoVShhLEYuRC54aCwhMCksYmsoWksoYSkpfHxLUihhKSl9LEtSPWZ1bmN0aW9uKGEpe3ZhciBiPUYuRC5iZCxjO2N8fChjPWZ1bmN0aW9uKCl7fSk7UihhLGIpIT09dm9pZCAwJiZVKGEsYixjKFIoYSxiKSkpfTt2YXIgTVI9ImdjbGlkIGRjbGlkIGdjbHNyYyB3YnJhaWQgZ2JyYWlkIGdhZF9zb3VyY2UgZ2FkX2NhbXBhaWduaWQgdXRtX3NvdXJjZSB1dG1fbWVkaXVtIHV0bV9jYW1wYWlnbiB1dG1fdGVybSB1dG1fY29udGVudCB1dG1faWQiLnNwbGl0KCIgIik7ZnVuY3Rpb24gTlIoKXt2YXIgYT1CLmxvY2F0aW9uLGIsYz1hPT1udWxsP3ZvaWQgMDooYj1hLnNlYXJjaCk9PW51bGw/dm9pZCAwOmIucmVwbGFjZSgiPyIsIiIpLGQ7aWYoYyl7Zm9yKHZhciBlPVtdLGY9SmooYywhMCksZz1tKE1SKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPWZbbF07aWYobilmb3IodmFyIHA9MDtwPG4ubGVuZ3RoO3ArKyl7dmFyIHE9bltwXTtxIT09dm9pZCAwJiZlLnB1c2goe25hbWU6bCx2YWx1ZTpxfSl9fWQ9ZX1lbHNlIGQ9W107cmV0dXJuIGR9O3ZhciBPUj1mdW5jdGlvbihhKXt2YXIgYj1NKDI2NiksYz1NKDI2Nyk7aWYoYnx8Yyl7dmFyIGQ9UihhLEYuRC56YSk7aWYoZCYmZC5pbmRleE9mKCI/Iik9PT0tMSl7dmFyIGU9TlIoKTtpZihlLmxlbmd0aCE9PTAmJihiJiZJUChKLlUuR20pLGMpKXtJUChKLlUuRm0pO3ZhciBmPWUubWFwKGZ1bmN0aW9uKGcpe3JldHVybiBnLm5hbWUrIj0iK2cudmFsdWV9KS5qb2luKCImIik7VShhLEYuRC56YSxkKyI/IitmKX19fX07dmFyIFBSPVtGLkQucmEsRi5ELmthXSxRUj1bRi5ELnJhLEYuRC5rYSxGLkQubWFdOwpmdW5jdGlvbiBSUihhKXt2YXIgYixjPU0oNTA2KSYmIWRJKGEsImNjZF9nYV9hZHNfaWRzX29wdF9vdXQiLCExKSxkPSEhZEkoYSwiZ29vZ2xlX25nIiwhMSksZT1YbyhjP2Q/UVI6ZnA6UFIpLGY7Zj1kSShhLEYuRC5VZixPKGEuTSxGLkQuVWYpKXx8ISFkSShhLCJnb29nbGVfbmciLCExKTtiPXtoZjpjLEVzOmQsR286ZSxmZjpmLExnOiEhZEkoYSwiZ2E0X2Fkc19saW5rZWQiLCExKSxiaTpBbSgpLEdqOiFWSygpLEZzOmJrKFpLKGEpKSxEczohIVEoYSxILkouYmUpLEdzOiEhUShhLEguSi5UZSksdXM6ISFPKGEuTSxGLkQuTmwpLEtzOiEhUShhLEguSi5laikseGc6TyhhLk0sRi5ELlNjKSxucjpPKGEuTSxGLkQuU2Msdm9pZCAwLDQpLEhzOiEhUShhLEguSi5GYyl9O1YoYSxILkouY2osYi5mZik7VihhLEguSi5iaixTUihiKSk7Yi5oZiYmIWIuZmYmJmIuTGcmJlNSKGIpJiZVKGEsIl8maWJ0IiwiMSIpO1NSKGIpJiZiLkdvJiYoYi5oZj9iLnhnIT09ITF8fGIuTGc6MSkmJlYoYSwKSC5KLnJuLCEwKTtiLkVzJiYhYi5iaSYmVShhLEYuRC5MZSwxKTsoYi5oZj9iLnhnOmIubnIpPT09ITEmJlUoYSwiXyZuZ3MiLCIxIik7VihhLEguSi5oZCxUUihiKSYmKGIuR3N8fGIudXMpKTtWKGEsSC5KLnJnLFRSKGIpJiZiLktzJiYhYi5iaSl9ZnVuY3Rpb24gU1IoYSl7cmV0dXJuIGEuaGY/KGEuTGd8fGEuZmYpJiYhYS5iaSYmIWEuR2o6YS5mZiYmYS54ZyE9PSExJiYhYS5HaiYmIWEuYml9ZnVuY3Rpb24gVFIoYSl7aWYoYS5IcylyZXR1cm4hMTtpZihhLmhmKXtpZighYS5mZiYmIWEuTGcpcmV0dXJuITF9ZWxzZSBpZighYS5mZilyZXR1cm4hMTtyZXR1cm4gYS5Gc3x8YS5Ec3x8YS5Hanx8KGEuaGY/YS54Zz09PSExJiYhYS5MZzphLnhnPT09ITEpfHwhYS5Hbz8hMTohMH07dmFyIFVSPWZ1bmN0aW9uKGEpe3NMKCkmJlUoYSxGLkQuRmUsIjEiKX07dmFyIFZSPWZ1bmN0aW9uKGEpe3ZhciBiPXtwcmVmaXg6U3RyaW5nKE8oYS5NLEYuRC5uYiwiIikpLHBhdGg6U3RyaW5nKE8oYS5NLEYuRC52YywiLyIpKSxmbGFnczpTdHJpbmcoTyhhLk0sRi5ELlRiLCIiKSksZG9tYWluOlN0cmluZyhPKGEuTSxGLkQuTGIsImF1dG8iKSkscGQ6TnVtYmVyKE8oYS5NLEYuRC5DYiw2MzA3MkUzKSl9O1YoYSxILkouR2EsYil9O3ZhciBXUj1mdW5jdGlvbihhKXtpZihNKDQzNSl8fE0oNTUzKSl7dmFyIGI9RG0oKTtiJiZWKGEsSC5KLkFxLGIpfX07dmFyIFlSPWZ1bmN0aW9uKGEpe2EuY29weVRvSGl0RGF0YShGLkQuUmkpO2Zvcih2YXIgYj1PKGEuTSxGLkQuUmwpfHxbXSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY107aWYoZC5ydWxlX3Jlc3VsdCl7YS5jb3B5VG9IaXREYXRhKEYuRC5SaSxkLnRyYWZmaWNfdHlwZSk7SVAoSi5VLkVuKTticmVha319fTt2YXIgWlI9ZnVuY3Rpb24oYSl7aWYoZEkoYSwiZ2E0X2Fkc19saW5rZWQiLCExKSYmYS5ldmVudE5hbWU9PT1GLkQud2Epe3ZhciBiPU8oYS5NLEYuRC51YykhPT0hMTtpZihiKXt2YXIgYz1MSyhhKTtjLnBkJiYoYy5wZD1NYXRoLm1pbihjLnBkLDc3NzZFMykpO1BLKHtUbjpiLG1vOk9vKE8oYS5NLEYuRC5EYikpLFFvOiEhTyhhLk0sRi5ELnpjKSxVbjpjfSl9fX07dmFyICRSPWZ1bmN0aW9uKGEpe1YoYSxILkouTWgsITEpO1YoYSxILkouTmgsITEpO2lmKCFEbSgpJiZXaigpJiYhYmsoWksoYSkpJiYhUShhLEguSi5iZSkmJlEoYSxILkouZWopKXt2YXIgYj1RKGEsSC5KLnJnKTtRKGEsSC5KLm9nKSYmKGI/VihhLEguSi5OaCwhMCk6VihhLEguSi5NaCwhMCkpfX07dmFyIGFTPWZ1bmN0aW9uKGEpe08oYS5NLEYuRC56YykmJihYbyhGLkQucmEpfHxPKGEuTSxGLkQuS2IpfHxVKGEsRi5ELlptLCEwKSk7dmFyIGI7dmFyIGM7Yz1jPT09dm9pZCAwPzM6Yzt2YXIgZD1BLmxvY2F0aW9uLmhyZWY7aWYoZCl7dmFyIGU9UmooZCkuc2VhcmNoLnJlcGxhY2UoIj8iLCIiKSxmPUlqKGUsIl9nbCIsITEsITApfHwiIjtiPWY/VnEoZixjKSE9PXZvaWQgMDohMX1lbHNlIGI9ITE7YiYmYmsoWksoYSkpJiZXSyhhLCJnbHYiLDEpO2lmKGEuZXZlbnROYW1lIT09Ri5ELndhKXJldHVybnt9O08oYS5NLEYuRC56YykmJkFzKFsiYXciLCJkYyJdKTtDcyhbImF3IiwiZGMiXSk7dmFyIGc9JFAoYSksaD1aUChhKTtyZXR1cm4gT2JqZWN0LmtleXMoZykubGVuZ3RoP2c6aH07dmFyIGJTPWZ1bmN0aW9uKGEpe3ZhciBiPSEwO2I9Yj09PXZvaWQgMD8hMTpiO2lmKE0oNDI1KSYmIShwbCgpfHxiJiZRKGEsSC5KLmRqKXx8YS5ldmVudE5hbWUhPT1GLkQud2F8fFEoYSxILkouRmMpKSl7dmFyIGM9e30sZD17fSxlPXtldmVudE1ldGFkYXRhOm5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYS5NLmV2ZW50TWV0YWRhdGEsKGNbSC5KLkZjXT0hMCxjKSxiP3t9OihkW0guSi5EY109WC5WLkthLGQpKSxub0d0bUV2ZW50OiEwfSxmPXNDKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsInN0cnVjdHVyZWRfZGF0YSIsYS5NLkVhKTttRChmLGEuTS5ldmVudElkLGUpfX07CnZhciBkUz1mdW5jdGlvbihhKXtyZXR1cm4hYXx8Y1MudGVzdChhKXx8RG8uaGFzT3duUHJvcGVydHkoYSl9LGNTPS9eKF98Z2FffGdvb2dsZV98Z3RhZ1wufGZpcmViYXNlXykuKiQvLGVTPWZ1bmN0aW9uKGEpe3RoaXMueWE9YTt0aGlzLkg9dGhpcy56Yj10aGlzLmNsaWVudElkPXZvaWQgMDt0aGlzLmphPXRoaXMuUj0hMTt0aGlzLkxhPTA7dGhpcy5OPSExO3RoaXMuWj17VGo6ITF9O3RoaXMuZmE9bmV3IElRO3RoaXMuSz1uZXcgSFB9O2s9ZVMucHJvdG90eXBlO2suWnM9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMsZT1iQyh0aGlzLnlhKTtpZihlKWlmKGMuZXZlbnRNZXRhZGF0YVtILkouYWVdJiZhLmNoYXJBdCgwKT09PSJfIiljLm9uRmFpbHVyZSgpO2Vsc2V7YSE9PUYuRC53YSYmYSE9PUYuRC5KYiYmZFMoYSkmJlAoNTgpO3ZhciBmPW5ldyBhSShlLGEsYyk7VihmLEguSi5FYixiKTt2YXIgZz1bRi5ELnJhXSxoPWJrKFpLKGYpKTtWKGYsSC5KLmRqLGgpO2lmKGRJKGYsRi5ELlVmLApPKGYuTSxGLkQuVWYpKXx8aClnLnB1c2goRi5ELmthKSxnLnB1c2goRi5ELm1hKTtGTS5mYShmdW5jdGlvbigpe2JwKGZ1bmN0aW9uKCl7ZC5idChmKX0sZyl9KX1lbHNlIGMub25GYWlsdXJlKCl9O2suYnQ9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczt0cnl7SE0oYSk7aWYoYS5pc0Fib3J0ZWQpe3RiKCk7cmV0dXJufUpNKGEpO0RSKGEpO3VSKGEpO0VSKGEpO0ZSKGEpO0lNKGEpO3ZhciBjPXt9O2VRKGEsYyk7aWYoYS5pc0Fib3J0ZWQpe2EuTS5vbkZhaWx1cmUoKTt0YigpO3JldHVybn10aGlzLkg9YTt2YXIgZD1jLnVyO2MuSHI9PT0wJiZJUChKLlUubmwpO2Q9PT0wJiZJUChKLlUuTGspO1pNKGEpO1YoYSxILkoudGcsY28uaWEueGQpO1ZSKGEpO0hSKGEpO3RoaXMuTHEoYSk7dGhpcy5LLkt0KGEpO1UoYSxGLkQuemksYWwoOCxORikpO3hSKGEpO3BOKGEpO1pSKGEpO01RKGEpO3RoaXMuQW8oYVMoYSkpO2JTKGEpO3ZhciBlPWEuZXZlbnROYW1lPT09Ri5ELndhO2UmJih0aGlzLk49CiEwKTtJUihhKTtlJiYhYS5pc0Fib3J0ZWQmJnRoaXMuTGErKz4wJiZJUChKLlUuaG4pO1VMKGEpO2pSKGEsdGhpcy5jbGllbnRJZCx0aGlzLnpiLHRoaXMuSywhdGhpcy5qYSk7blIoYSk7bFIoYSk7T1IoYSk7WEwoYSk7R1IoYSx0aGlzLlopO3lSKGEpO3ZSKGEpO3dSKGEpO1lSKGEpO2FRKGEpO2dRKGEpO3dNKGEpO2hSKGEpO1lRKGEpO2dSKGEpO2ZSKGEpO2VSKGEpO2RSKGEpO2NSKGEpO2FSKGEpOyRRKGEpO1dRKGEpO1VRKGEpO1RRKGEpO1NRKGEpO2JRKGEpO2NRKGEpO08oYS5NLEYuRC54aCkmJiFiayhaSyhhKSl8fEdNKGEpO1VSKGEpO1dSKGEpO2lOKGEpO1ZMKGEpO1NMKGEpO2xOKGEpO2hOKGEpO1hNKGEsITEpO3NSKGEpO1JSKGEpOyRSKGEpO05NKGEpO3JSKGEpO3BSKGEpO2JSKGEpO1pRKGEpO1JRKGEpO3FSKGEpOyF0aGlzLk4mJlEoYSxILkouUGMpJiZJUChKLlUuc2wpO0pQKGEpO2lmKE0oNTc1KSl7aWYoYS5pc0Fib3J0ZWQpe2lmKCFRKGEsSC5KLlNvKSlhLk0ub25GYWlsdXJlKCk7CnRiKCk7cmV0dXJufWlmKFEoYSxILkouSmEpKXthLk0ub25GYWlsdXJlKCk7dGIoKTtyZXR1cm59fWVsc2UgaWYoUShhLEguSi5KYSl8fGEuaXNBYm9ydGVkKXthLk0ub25GYWlsdXJlKCk7dGIoKTtyZXR1cm59dGhpcy5BbyhpUihhLHRoaXMuY2xpZW50SWQpKTt0aGlzLmphPSEwO3RoaXMuSHQoYSk7SlIoYSk7VlEoZnVuY3Rpb24oZil7Yi5NbihmKX0sYSk7dGhpcy5LLnFrKCk7TFIoYSk7Z04oYSk7V0woYSk7WU0oYSk7aWYoYS5pc0Fib3J0ZWQpe2EuTS5vbkZhaWx1cmUoKTt0YigpO3JldHVybn10aGlzLk1uKGEpO2EuTS5vblN1Y2Nlc3MoKX1jYXRjaChmKXthLk0ub25GYWlsdXJlKCl9dGIoKX07ay5Nbj1mdW5jdGlvbihhKXt0aGlzLmZhLmFkZChhKX07ay5Bbz1mdW5jdGlvbihhKXt2YXIgYj1hLmNsaWVudElkLGM9YS56YjtiJiZjJiYodGhpcy5jbGllbnRJZD1iLHRoaXMuemI9Yyl9O2suZmx1c2g9ZnVuY3Rpb24oKXt0aGlzLmZhLmZsdXNoKCl9O2suSHQ9ZnVuY3Rpb24oYSl7dmFyIGI9CnRoaXM7aWYoIXRoaXMuUil7dmFyIGM9WG8oRi5ELm1hKSxkPVhvKEYuRC5yYSk7JG8oW0YuRC5tYSxGLkQucmEsRi5ELmthXSxmdW5jdGlvbihlKXt2YXIgZjtmPShlPT09dm9pZCAwP3t9OmUpLmNvbnNlbnRFdmVudElkO3ZhciBnPVhvKEYuRC5tYSksaD1YbyhGLkQucmEpLGw9ITEsbj17fSxwPXt9O2lmKGQhPT1oJiZiLkgmJmIuemImJmIuY2xpZW50SWQpe3ZhciBxPWIuY2xpZW50SWQscjt2YXIgdD1MUChiLnpiKTtyPXQ/dC5oOnZvaWQgMDtpZihoKXt2YXIgdT1GUChiLkgpO2lmKHUpe2IuY2xpZW50SWQ9dTt2YXIgdj1TUChiLkgpO3YmJihiLnpiPVBQKHYsYi56YixiLkgpKX1lbHNlIERQKGIuY2xpZW50SWQsYi5IKSxBUChiLmNsaWVudElkLCEwKTtSUChiLnpiLGIuSCk7bD0hMDtuW0YuRC5ObF09cTtyJiYobltGLkQuYnFdPXIpfWVsc2UgYi56Yj12b2lkIDAsYi5jbGllbnRJZD12b2lkIDAsQS5nYUdsb2JhbD17fX1nJiYhYyYmKGw9ITAscFtILkouR2hdPSEwLG5bRi5ELnhpXT0KTG9bRi5ELm1hXSk7aWYobCl7dmFyIHg9c0MoYi55YSxGLkQueWYsbik7bUQoeCxmIT1udWxsP2Y6YS5NLmV2ZW50SWQse2V2ZW50TWV0YWRhdGE6cH0pfWQ9aDtjPWc7Yi5aLlRqPSEwfSk7dGhpcy5SPSEwfX07ay5McT1mdW5jdGlvbihhKXthLmV2ZW50TmFtZSE9PUYuRC5KYiYmdGhpcy5LLktxKGEpfTt2YXIgZ1M9ZnVuY3Rpb24oYSl7aWYoIWZTKGEpKXt2YXIgYj0hMSxjPWZ1bmN0aW9uKCl7IWImJmZTKGEpJiYoYj0hMCxhZChCLCJ2aXNpYmlsaXR5Y2hhbmdlIixjKSxhZChCLCJwcmVyZW5kZXJpbmdjaGFuZ2UiLGMpLFAoNTUpKX07JGMoQiwidmlzaWJpbGl0eWNoYW5nZSIsYyk7JGMoQiwicHJlcmVuZGVyaW5nY2hhbmdlIixjKTtQKDU0KX19LGZTPWZ1bmN0aW9uKGEpe2lmKCJwcmVyZW5kZXJpbmciaW4gQj9CLnByZXJlbmRlcmluZzpCLnZpc2liaWxpdHlTdGF0ZT09PSJwcmVyZW5kZXIiKXJldHVybiExO2EoKTtyZXR1cm4hMH07ZnVuY3Rpb24gaFMoYSl7Z1MoZnVuY3Rpb24oKXt2YXIgYj1iQyhhKTtpZihiKXt2YXIgYz1pUyhiKSxkPWNvLmlhLnhkLGU9WUMoKSxmPWJDKGEsITApO2YmJmUuSC5yZWdpc3RlcihmLGMsZCx2b2lkIDApfX0pO31mdW5jdGlvbiBpUyhhKXt2YXIgYj1mdW5jdGlvbigpe307dmFyIGM9bmV3IGVTKGEuaWQpLGQ9YS5wcmVmaXg9PT0iTUMiO2I9ZnVuY3Rpb24oZSxmLGcsaCl7ZCYmKGguZXZlbnRNZXRhZGF0YVtILkouYmVdPSEwKTtjLlpzKGYsZyxoKX07alMoYSxjKTtyZXR1cm4gYn0KZnVuY3Rpb24galMoYSxiKXt2YXIgYz1iLks7Yy5odChmdW5jdGlvbigpe1prKDksITApO1lDKCkuZmx1c2goKTtpZihjLlloKCk+PTFFMyYma2QoKSl7dmFyIGQ9e30sZT17ZXZlbnRJZDpyaigpLGV2ZW50TWV0YWRhdGE6KGRbSC5KLktrXT0hMCxkKSxkZWZlcnJhYmxlOiEwfTtaQyhGLkQueWYse30sYS5pZCxlKX1iLmZsdXNoKCk7Yy5DbyhmdW5jdGlvbigpe1prKDksITEpO2MuQ28oKX0pfSk7fXZhciBrUz1KLlUucWwsbFM9Si5VLnJsO2Z1bmN0aW9uIG1TKGEsYil7dmFyIGM9dGsoKTtjJiZjLmluZGV4T2YoYik+LTEmJihhW0guSi5DY109ITApfWZ1bmN0aW9uIG9TKGEsYixjKXt2YXIgZD10aGlzO31vUy5QPSJpbnRlcm5hbC5ndGFnQ29uZmlnIjtmdW5jdGlvbiBwUyhhLGIsYyxkKXt2YXIgZT10aGlzO31wUy5QPSJpbnRlcm5hbC5ndGFnRGVzdGluYXRpb25Db25maWciOwpmdW5jdGlvbiByUyhhLGIpe30KclMucHVibGljTmFtZT0iZ3RhZ1NldCI7ZnVuY3Rpb24gc1MoKXt2YXIgYT17fTthPXtOT19JRlJBTUlORzowLFNBTUVfRE9NQUlOX0lGUkFNSU5HOjEsQ1JPU1NfRE9NQUlOX0lGUkFNSU5HOjJ9O3JldHVybiBhfTtmdW5jdGlvbiB0UyhhKXtpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCJdLGFyZ3VtZW50cyk7dmFyIGI9VGQoYSx0aGlzLlQsMSkucmIoKTtuTChiKTt9dFMuUD0iaW50ZXJuYWwuaW5pdGlhbGl6ZVNlcnZpY2VXb3JrZXIiO2Z1bmN0aW9uIHVTKGEsYil7fXVTLnB1YmxpY05hbWU9ImluamVjdEhpZGRlbklmcmFtZSI7ZnVuY3Rpb24gdlMoYSxiLGMsZCxlKXt9dlMuUD0iaW50ZXJuYWwuaW5qZWN0SHRtbCI7dmFyIEFTPXtkbDoxLGlkOjF9OwpmdW5jdGlvbiBCUyhhLGIsYyxkKXt9QlMucHVibGljTmFtZT0iaW5qZWN0U2NyaXB0IjtmdW5jdGlvbiBDUygpe3ZhciBhPXZtLGI9ITE7Yj0hIWEuSFsiNSJdO3JldHVybiBifUNTLlA9ImludGVybmFsLmlzQXV0b1BpaUVsaWdpYmxlIjtmdW5jdGlvbiBEUyhhKXt2YXIgYj0hMDtpZighbGgoYSkmJiFqaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiQXJyYXkiXSxhcmd1bWVudHMpO3ZhciBjPVRkKGEpO2lmKHpiKGMpKUwodGhpcywiYWNjZXNzX2NvbnNlbnQiLGMsInJlYWQiKTtlbHNlIGZvcih2YXIgZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKUwodGhpcywiYWNjZXNzX2NvbnNlbnQiLGUudmFsdWUsInJlYWQiKTtiPVhvKGMpO3JldHVybiBifURTLnB1YmxpY05hbWU9ImlzQ29uc2VudEdyYW50ZWQiO2Z1bmN0aW9uIEVTKGEpe3ZhciBiPSExO2lmKCFlaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgYz1UZChhLHRoaXMuVCwxKS5yYigpO2I9ISFPKGMuTSxGLkQuRWwpO3JldHVybiBifUVTLlA9ImludGVybmFsLmlzRGVidWdNb2RlIjtmdW5jdGlvbiBGUyhhKXt2YXIgYj0hMTtyZXR1cm4gYn1GUy5QPSJpbnRlcm5hbC5pc0Rlc3RpbmF0aW9uSW5pdGlhbGl6ZWQiO2Z1bmN0aW9uIEdTKCl7cmV0dXJuIEJtKCl9R1MuUD0iaW50ZXJuYWwuaXNEbWFSZWdpb24iO2Z1bmN0aW9uIEhTKCl7cmV0dXJuIFVCKCl9SFMuUD0iaW50ZXJuYWwuaXNEb21SZWFkeSI7ZnVuY3Rpb24gSVMoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9SVMuUD0iaW50ZXJuYWwuaXNFbnRpdHlJbmZyYXN0cnVjdHVyZSI7ZnVuY3Rpb24gSlMoYSl7dmFyIGI9ITE7aWYoIXFoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJudW1iZXIiXSxbYV0pO2I9TShhKTtyZXR1cm4gYn1KUy5QPSJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIjtmdW5jdGlvbiBLUygpe3ZhciBhPSExO2E9SWYoNDcpO3JldHVybiBhfUtTLlA9ImludGVybmFsLmlzRnBmZSI7ZnVuY3Rpb24gTFMoKXt2YXIgYT0hMTthPU9jKCl8fFFjKCk7cmV0dXJuIGF9TFMuUD0iaW50ZXJuYWwuaXNHY3BCcm93c2VyIjtmdW5jdGlvbiBNUygpe3ZhciBhPSExO3JldHVybiBhfU1TLlA9ImludGVybmFsLmlzTGFuZGluZ1BhZ2UiO2Z1bmN0aW9uIE5TKCl7dmFyIGE9ITE7cmV0dXJuIGF9TlMuUD0iaW50ZXJuYWwuaXNPZ3QiO2Z1bmN0aW9uIE9TKCl7dmFyIGE7YT1BLl9ndG1wY209PT0hMD8hMDpyTCgpO3JldHVybiBhfU9TLlA9ImludGVybmFsLmlzU2FmYXJpUGNtRWxpZ2libGVCcm93c2VyIjtmdW5jdGlvbiBQUygpe3ZhciBhPVFoKGZ1bmN0aW9uKGIpe1hGKHRoaXMpLmxvZygiZXJyb3IiLGIpfSk7YS5wdWJsaWNOYW1lPSJKU09OIjtyZXR1cm4gYX07ZnVuY3Rpb24gUVMoYSl7dmFyIGI9dm9pZCAwO3JldHVybiBVZChiKX1RUy5QPSJpbnRlcm5hbC5sZWdhY3lQYXJzZVVybCI7ZnVuY3Rpb24gUlMoKXtyZXR1cm4hMX0KdmFyIFNTPXtnZXRJdGVtOmZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9LHNldEl0ZW06ZnVuY3Rpb24oYSxiKXtyZXR1cm4hMX0scmVtb3ZlSXRlbTpmdW5jdGlvbihhKXt9fTtmdW5jdGlvbiBUUygpe31UUy5wdWJsaWNOYW1lPSJsb2dUb0NvbnNvbGUiO2Z1bmN0aW9uIFVTKGEsYil7aWYoIWxoKGEpfHwhZWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsIk9iamVjdCJdLGFyZ3VtZW50cyk7dmFyIGM9YSxkPVRkKGIsdGhpcy5UKSxlPVlDKCksZj1iQyhjLCEwKTtmJiZUQyhlLkgsZixkKTt9VVMuUD0iaW50ZXJuYWwubWVyZ2VSZW1vdGVDb25maWciO2Z1bmN0aW9uIFZTKGEsYixjKXtjPWM9PT12b2lkIDA/ITA6Yzt2YXIgZD1bXTtyZXR1cm4gVWQoZCl9VlMuUD0iaW50ZXJuYWwucGFyc2VDb29raWVWYWx1ZXNGcm9tU3RyaW5nIjtmdW5jdGlvbiBXUyhhKXt2YXIgYj12b2lkIDA7aWYodHlwZW9mIGEhPT0ic3RyaW5nIilyZXR1cm47YSYmU2IoYSwiLy8iKSYmKGE9Qi5sb2NhdGlvbi5wcm90b2NvbCthKTtpZih0eXBlb2YgVVJMPT09ImZ1bmN0aW9uIil7dmFyIGM7YTp7dmFyIGQ7dHJ5e2Q9bmV3IFVSTChhKX1jYXRjaCh4KXtjPXZvaWQgMDticmVhayBhfWZvcih2YXIgZT17fSxmPUFycmF5LmZyb20oZC5zZWFyY2hQYXJhbXMpLGc9MDtnPGYubGVuZ3RoO2crKyl7dmFyIGg9ZltnXVswXSxsPWZbZ11bMV07ZS5oYXNPd25Qcm9wZXJ0eShoKT90eXBlb2YgZVtoXT09PSJzdHJpbmciP2VbaF09W2VbaF0sbF06ZVtoXS5wdXNoKGwpOmVbaF09bH1jPXtocmVmOmQuaHJlZixvcmlnaW46ZC5vcmlnaW4scHJvdG9jb2w6ZC5wcm90b2NvbCx1c2VybmFtZTpkLnVzZXJuYW1lLHBhc3N3b3JkOmQucGFzc3dvcmQsaG9zdDpkLmhvc3QsaG9zdG5hbWU6ZC5ob3N0bmFtZSwKcG9ydDpkLnBvcnQscGF0aG5hbWU6ZC5wYXRobmFtZSxzZWFyY2g6ZC5zZWFyY2gsc2VhcmNoUGFyYW1zOmUsaGFzaDpkLmhhc2h9fXJldHVybiBVZChjKX12YXIgbjt0cnl7bj1SaihhKX1jYXRjaCh4KXtyZXR1cm59aWYoIW4ucHJvdG9jb2x8fCFuLmhvc3QpcmV0dXJuO3ZhciBwPXt9O2lmKG4uc2VhcmNoKWZvcih2YXIgcT1uLnNlYXJjaC5yZXBsYWNlKCI/IiwiIikuc3BsaXQoIiYiKSxyPTA7cjxxLmxlbmd0aDtyKyspe3ZhciB0PXFbcl0uc3BsaXQoIj0iKSx1PXRbMF0sdj1Laih0LnNwbGljZSgxKS5qb2luKCI9IikpfHwiIjt2PXYucmVwbGFjZSgvXCsvZywiICIpO3AuaGFzT3duUHJvcGVydHkodSk/dHlwZW9mIHBbdV09PT0ic3RyaW5nIj9wW3VdPVtwW3VdLHZdOnBbdV0ucHVzaCh2KTpwW3VdPXZ9bi5zZWFyY2hQYXJhbXM9cDtuLm9yaWdpbj1uLnByb3RvY29sKyIvLyIrbi5ob3N0O24udXNlcm5hbWU9IiI7bi5wYXNzd29yZD0iIjtiPVVkKG4pOwpyZXR1cm4gYn1XUy5wdWJsaWNOYW1lPSJwYXJzZVVybCI7ZnVuY3Rpb24gWFMoYSl7aWYoIWVoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3QiXSxhcmd1bWVudHMpO3ZhciBiPVRkKGEsdGhpcy5ULDEpLnJiKCksYz17fTtFZChiLk0uRWEsYyk7YkkoYixjKTt2YXIgZD17fTtjSShiLGQpO2RbSC5KLkJuXT0hMDt2YXIgZT17ZXZlbnRNZXRhZGF0YTpkfSxmPWIuTS5ldmVudElkLGc9c0MoYi50YXJnZXQuZGVzdGluYXRpb25JZCxiLmV2ZW50TmFtZSxjKTttRChnLGYsZSk7fVhTLlA9ImludGVybmFsLnByb2Nlc3NBc05ld0V2ZW50IjtmdW5jdGlvbiBZUyhhLGIsYyl7dmFyIGQ7cmV0dXJuIGR9WVMuUD0iaW50ZXJuYWwucHVzaFRvRGF0YUxheWVyIjtmdW5jdGlvbiBaUyhhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyksYz0hMTtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7Zm9yKHZhciBkPVt0aGlzLGFdLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlkLnB1c2goVGQoZi52YWx1ZSx0aGlzLlQsMSkpO3RyeXtMLmFwcGx5KG51bGwsZCksYz0hMH1jYXRjaChnKXtyZXR1cm4hMX1yZXR1cm4gY31aUy5wdWJsaWNOYW1lPSJxdWVyeVBlcm1pc3Npb24iO2Z1bmN0aW9uICRTKGEpe3ZhciBiPXRoaXM7aWYoIWhoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJmdW5jdGlvbiJdLGFyZ3VtZW50cyk7aW8obG8oY28uaWEuY2IpLGZ1bmN0aW9uKCl7YS5pbnZva2UoYi5UKX0pO30kUy5QPSJpbnRlcm5hbC5xdWV1ZUFkc1RyYW5zbWlzc2lvbiI7ZnVuY3Rpb24gYVQoYSl7dmFyIGI9dm9pZCAwO3JldHVybiBifWFULnB1YmxpY05hbWU9InJlYWRBbmFseXRpY3NTdG9yYWdlIjtmdW5jdGlvbiBiVCgpe3ZhciBhPSIiO3JldHVybiBhfWJULnB1YmxpY05hbWU9InJlYWRDaGFyYWN0ZXJTZXQiO2Z1bmN0aW9uIGNUKCl7cmV0dXJuIEUoMTkpfWNULlA9ImludGVybmFsLnJlYWREYXRhTGF5ZXJOYW1lIjtmdW5jdGlvbiBkVCgpe3ZhciBhPSIiO0wodGhpcywicmVhZF90aXRsZSIpLGE9Qi50aXRsZXx8IiI7cmV0dXJuIGF9ZFQucHVibGljTmFtZT0icmVhZFRpdGxlIjtmdW5jdGlvbiBlVChhLGIpe3ZhciBjPXRoaXM7aWYoIWxoKGEpfHwhaGgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImZ1bmN0aW9uIl0sYXJndW1lbnRzKTtMTShhLGZ1bmN0aW9uKGQpe2IuaW52b2tlKGMuVCxVZChkLGMuVCwxKSl9KTt9ZVQuUD0iaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayI7ZnVuY3Rpb24gZlQoYSxiKXtpZighbGgoYSl8fCFlaChiKSYmIWdoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJPYmplY3R8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZihCaChYRih0aGlzKS5QYigpKSlyZXR1cm4hMTt2YXIgYyxkLGU9YkMoYSwhMCk7aWYoIWUpcmV0dXJuITE7c3dpdGNoKGUucHJlZml4KXtjYXNlICJBVyI6Yz10TjtkPWNvLmlhLmNiO2JyZWFrO2Nhc2UgIkRDIjpjPUlOO2Q9Y28uaWEuY2I7YnJlYWs7Y2FzZSAiR0YiOmM9Tk47ZD1jby5pYS5nZDticmVhaztjYXNlICJIQSI6Yz1QTjtkPWNvLmlhLmdkO2JyZWFrO2Nhc2UgIlVBIjpjPWZPO2Q9Y28uaWEuZ2Q7YnJlYWs7Y2FzZSAiTUMiOmM9aVMoZSk7ZD1jby5pYS54ZDticmVhaztjYXNlICJHIjpyZXR1cm4gaFMoYSksITA7ZGVmYXVsdDpyZXR1cm4hMX12YXIgZj1hLApnPWMsaD1kLGw9VGQoYix0aGlzLlQsMSksbj1ZQygpLHA9YkMoZiwhMCk7cCYmbi5ILnJlZ2lzdGVyKHAsZyxoLGwpO3JldHVybiEwfWZULlA9ImludGVybmFsLnJlZ2lzdGVyRGVzdGluYXRpb24iO3ZhciBnVD1bImV2ZW50Il07ZnVuY3Rpb24gaFQoYSxiLGMpe31oVC5QPSJpbnRlcm5hbC5yZWdpc3Rlckd0YWdDb21tYW5kTGlzdGVuZXIiO2Z1bmN0aW9uIGlUKGEsYil7dmFyIGM9ITE7cmV0dXJuIGN9aVQuUD0iaW50ZXJuYWwucmVtb3ZlRGF0YUxheWVyRXZlbnRMaXN0ZW5lciI7ZnVuY3Rpb24galQoYSxiKXt9CmpULlA9ImludGVybmFsLnJlbW92ZUZvcm1EYXRhIjtmdW5jdGlvbiBrVCgpe31rVC5wdWJsaWNOYW1lPSJyZXNldERhdGFMYXllciI7ZnVuY3Rpb24gbFQoYSxiLGMpe3ZhciBkPXZvaWQgMDtpZighbGgoYSl8fCFqaChiKXx8IWxoKGMpJiYhZ2goYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsIkFycmF5Iiwic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGU9VGQoYik7ZD1TaihhLGUsYyk7cmV0dXJuIGR9bFQuUD0iaW50ZXJuYWwuc2NydWJVcmxQYXJhbXMiO2Z1bmN0aW9uIG1UKGEpe2lmKCFlaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgYj1UZChhLHRoaXMuVCwxKS5yYigpO0l6KGIpO31tVC5QPSJpbnRlcm5hbC5zZW5kQWRzSGl0IjtmdW5jdGlvbiBuVChhLGIsYyxkKXtpZihhcmd1bWVudHMubGVuZ3RoPDJ8fCFmaChkKXx8IWZoKGMpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJhbnkiLCJhbnkiLCJPYmplY3R8dW5kZWZpbmVkIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGU9Yz9UZChjLHRoaXMuVCwxKTp7fSxmPVRkKGEpLGc9QXJyYXkuaXNBcnJheShmKT9mOltmXTtiPVN0cmluZyhiKTt2YXIgaD1kP1RkKGQpOnt9LGw9WEYodGhpcyk7aC5vcmlnaW5hdGluZ0VudGl0eT10RyhsKTtsLnByaW9yaXR5UXVldWUmJihoLnByaW9yaXR5UXVldWU9bC5wcmlvcml0eVF1ZXVlKTtmb3IodmFyIG49MDtuPGcubGVuZ3RoO24rKyl7dmFyIHA9Z1tuXTtpZih0eXBlb2YgcD09PSJzdHJpbmciKXt2YXIgcT17fTtFZChlLHEpO3ZhciByPXt9O0VkKGgscik7dmFyIHQ9c0MocCxiLHEpO21EKHQsCmguZXZlbnRJZHx8bC5ldmVudElkLHIpfX19blQuUD0iaW50ZXJuYWwuc2VuZEd0YWdFdmVudCI7ZnVuY3Rpb24gb1QoYSxiLGMpe31vVC5wdWJsaWNOYW1lPSJzZW5kUGl4ZWwiO2Z1bmN0aW9uIHBUKGEsYil7fXBULlA9ImludGVybmFsLnNldEFuY2hvckhyZWYiO2Z1bmN0aW9uIHFUKGEpe31xVC5QPSJpbnRlcm5hbC5zZXRDb250YWluZXJDb25zZW50RGVmYXVsdHMiO2Z1bmN0aW9uIHJUKGEsYixjLGQpe3ZhciBlPXRoaXM7ZD1kPT09dm9pZCAwPyEwOmQ7dmFyIGY9ITE7CnJldHVybiBmfXJULnB1YmxpY05hbWU9InNldENvb2tpZSI7ZnVuY3Rpb24gc1QoYSl7fXNULlA9ImludGVybmFsLnNldENvcmVQbGF0Zm9ybVNlcnZpY2VzIjtmdW5jdGlvbiB0VChhLGIpe310VC5QPSJpbnRlcm5hbC5zZXREYXRhTGF5ZXJWYWx1ZSI7ZnVuY3Rpb24gdVQoYSl7fXVULnB1YmxpY05hbWU9InNldERlZmF1bHRDb25zZW50U3RhdGUiO2Z1bmN0aW9uIHZUKGEsYil7aWYoIWxoKGEpfHwhbGgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInN0cmluZyJdLGFyZ3VtZW50cyk7TCh0aGlzLCJhY2Nlc3NfY29uc2VudCIsYSwid3JpdGUiKTtMKHRoaXMsImFjY2Vzc19jb25zZW50IixiLCJyZWFkIik7Qm0oKSYmKEFsLmRlbGVnYXRlZENvbnNlbnRUeXBlc1thXT1iKTt9dlQuUD0iaW50ZXJuYWwuc2V0RGVsZWdhdGVkQ29uc2VudFR5cGUiO2Z1bmN0aW9uIHdUKGEsYil7fXdULlA9ImludGVybmFsLnNldEZvcm1BY3Rpb24iO2Z1bmN0aW9uIHhUKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6YztpZighbGgoYSl8fCFvaChjKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiYW55IiwiYm9vbGVhbnx1bmRlZmluZWQiXSxhcmd1bWVudHMpO2lmKCFrbShhKSl0aHJvdyBFcnJvcigic2V0SW5Dcm9zc0NvbnRhaW5lckRhdGEgcmVxdWlyZXMgdmFsaWQgQ3Jvc3NDb250YWluZXJTY2hlbWEga2V5LiIpOyhjfHxubShhKT09PXZvaWQgMCkmJm1tKGEsVGQoYix0aGlzLlQsMSkpO314VC5QPSJpbnRlcm5hbC5zZXRJbkNyb3NzQ29udGFpbmVyRGF0YSI7ZnVuY3Rpb24geVQoYSxiLGMpe3JldHVybiExfXlULnB1YmxpY05hbWU9InNldEluV2luZG93IjtmdW5jdGlvbiB6VChhLGIsYyl7aWYoIWxoKGEpfHwhbGgoYil8fGFyZ3VtZW50cy5sZW5ndGghPT0zKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciLCJhbnkiXSxhcmd1bWVudHMpO3ZhciBkPSRIKGEpfHx7fTtkW2JdPVRkKGMsdGhpcy5UKTt2YXIgZT1hLGY9Wkg7Zi5LfHxZSChmKTtmLnNldHRpbmdzW2VdPWQ7fXpULlA9ImludGVybmFsLnNldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciI7ZnVuY3Rpb24gQVQoYSxiLGMpe2lmKCFsaChhKXx8IWxoKGIpfHxhcmd1bWVudHMubGVuZ3RoIT09Myl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nIiwiYW55Il0sYXJndW1lbnRzKTtmb3IodmFyIGQ9Yi5zcGxpdCgiLiIpLGU9ZUQoYSksZj0wO2Y8ZC5sZW5ndGgtMTtmKyspe2lmKGVbZFtmXV09PT12b2lkIDApZVtkW2ZdXT17fTtlbHNlIGlmKCFDZChlW2RbZl1dKSl0aHJvdyBFcnJvcigic2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIGZhaWxlZCwgcGF0aCBjb250YWlucyBhIG5vbi1vYmplY3QgdHlwZTogIitkW2ZdKTtlPWVbZFtmXV19ZVtkW2ZdXT1UZChjLHRoaXMuVCwxKTt9QVQuUD0iaW50ZXJuYWwuc2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIjtmdW5jdGlvbiBCVChhLGIpe30KQlQuUD0iaW50ZXJuYWwuc2V0VHJhbnNtaXNzaW9uTW9kZSI7ZnVuY3Rpb24gQ1QoYSxiLGMsZCl7dmFyIGU9dGhpczt9Q1QucHVibGljTmFtZT0ic2hhMjU2IjtmdW5jdGlvbiBEVChhLGIsYyl7fQpEVC5QPSJpbnRlcm5hbC5zb3J0UmVtb3RlQ29uZmlnUGFyYW1ldGVycyI7ZnVuY3Rpb24gRVQoYSl7aWYoIWVoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3QiXSxhcmd1bWVudHMpO3ZhciBiPVRkKGEsdGhpcy5ULDEpLnJiKCk7Y3goYik7fUVULlA9ImludGVybmFsLnN0b3JlQWRzQnJhaWRMYWJlbHMiO2Z1bmN0aW9uIEZUKGEsYil7dmFyIGM9dm9pZCAwO3JldHVybiBjfUZULlA9ImludGVybmFsLnN1YnNjcmliZVRvQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBHVChhKXtpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCJdLGFyZ3VtZW50cyk7dmFyIGI9VGQoYSx0aGlzLlQsMSkucmIoKTtwTChiKTt9R1QuUD0iaW50ZXJuYWwudGFza1NlbmRBZHNIaXRzIjt2YXIgSFQ9e2dldEl0ZW06ZnVuY3Rpb24oYSl7dmFyIGI9bnVsbDtMKHRoaXMsImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIik7dmFyIGM9WEYodGhpcykuUGIoKSxkPWFsKDcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO2RbY10mJihiPWRbY10uaGFzT3duUHJvcGVydHkoImd0bS4iK2EpP2RbY11bImd0bS4iK2FdOm51bGwpO3JldHVybiBifSxzZXRJdGVtOmZ1bmN0aW9uKGEsYil7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBjPVhGKHRoaXMpLlBiKCksZD1hbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtkW2NdPWRbY118fHt9O2RbY11bImd0bS4iK2FdPWI7fSwKcmVtb3ZlSXRlbTpmdW5jdGlvbihhKXtMKHRoaXMsImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIik7dmFyIGI9WEYodGhpcykuUGIoKSxjPWFsKDcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO2lmKCFjW2JdfHwhY1tiXS5oYXNPd25Qcm9wZXJ0eSgiZ3RtLiIrYSkpcmV0dXJuO2RlbGV0ZSBjW2JdWyJndG0uIithXTt9LGNsZWFyOmZ1bmN0aW9uKCl7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBhPVhGKHRoaXMpLlBiKCk7ZGVsZXRlIGFsKDcsZnVuY3Rpb24oKXtyZXR1cm57fX0pW2FdO30sCnB1YmxpY05hbWU6InRlbXBsYXRlU3RvcmFnZSJ9O2Z1bmN0aW9uIElUKGEsYil7dmFyIGM9ITE7aWYoIWtoKGEpfHwhbGgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9wYXF1ZVZhbHVlIiwic3RyaW5nIl0sYXJndW1lbnRzKTt2YXIgZD1hLmdldFZhbHVlKCk7aWYoIShkIGluc3RhbmNlb2YgUmVnRXhwKSlyZXR1cm4hMTtjPWQudGVzdChiKTtyZXR1cm4gY31JVC5QPSJpbnRlcm5hbC50ZXN0UmVnZXgiO2Z1bmN0aW9uIEpUKGEpe3ZhciBiO3JldHVybiBifTtmdW5jdGlvbiBLVChhLGIpe31LVC5QPSJpbnRlcm5hbC50cmFja1VzYWdlIjtmdW5jdGlvbiBMVChhLGIpe3ZhciBjO3JldHVybiBjfUxULlA9ImludGVybmFsLnVuc3Vic2NyaWJlRnJvbUNyb3NzQ29udGFpbmVyRGF0YSI7ZnVuY3Rpb24gTVQoYSl7fU1ULnB1YmxpY05hbWU9InVwZGF0ZUNvbnNlbnRTdGF0ZSI7ZnVuY3Rpb24gTlQoYSl7dmFyIGI9ITE7aWYoYSYmIWVoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3QiXSxhcmd1bWVudHMpO3ZhciBjPVRkKGEsdGhpcy5ULDEpO2MmJihiPWh3KGMpKTtyZXR1cm4gYn1OVC5QPSJpbnRlcm5hbC51c2VyRGF0YU5lZWRzRW5jcnlwdGlvbiI7dmFyIE9UPWZ1bmN0aW9uKCl7dGhpcy5IPW5ldyBhaX0sUVQ9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oYSl7dmFyIGI7dmFyIGM9UFQuSDtpZihjLmNvbnRhaW5zKGEpKWI9Yy5nZXQoYSx0aGlzKTtlbHNle3ZhciBkO2lmKGQ9Yy5ILmhhc093blByb3BlcnR5KGEpKXt2YXIgZT10aGlzLlQueGIoKTtpZihlKXt2YXIgZj0hMSxnPWUuUGIoKTtpZihnKXtCaChnKXx8KGY9ITApO31kPWZ9ZWxzZSBkPSEwfWlmKGQpe3ZhciBoPWMuSC5oYXNPd25Qcm9wZXJ0eShhKT9jLkhbYV06dm9pZCAwO2I9aH1lbHNlIHRocm93IEVycm9yKGErIiBpcyBub3QgYSB2YWxpZCBBUEkgbmFtZS4iKTt9cmV0dXJuIGJ9fSxQVDtmdW5jdGlvbiBSVChhLGIsYyl7UFR8fChQVD1uZXcgT1QpO1BULkguYWRkKGEsYixjKX1mdW5jdGlvbiBTVChhLGIpe1BUfHwoUFQ9bmV3IE9UKTt2YXIgYz1QVC5IO2lmKGMuSC5oYXNPd25Qcm9wZXJ0eShhKSl0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBhZGQgYSBwcml2YXRlIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZihjLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIHByaXZhdGUgZnVuY3Rpb24gd2l0aCBhbiBleGlzdGluZyBBUEkgbmFtZTogIithKyIuIik7Yy5IW2FdPXliKGIpP3RoKGEsYik6dWgoYSxiKX07ZnVuY3Rpb24gVFQoYSxiKXtmdW5jdGlvbiBjKGQpe2lmKCFlaChkKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgZT1UZChkLHRoaXMuVCwxKS5yYigpO2EoZSl9Yy5QPSJpbnRlcm5hbC4iK2I7cmV0dXJuIGN9O2Z1bmN0aW9uIFVUKCl7dmFyIGE9ZnVuY3Rpb24oYyl7cmV0dXJuIHZvaWQgU1QoYy5QLGMpfSxiPWZ1bmN0aW9uKGMpe3JldHVybiB2b2lkIFJUKGMucHVibGljTmFtZSxjKX07YihSRik7YihZRik7YihSRyk7YihURyk7YihVRyk7YihkSCk7YihmSCk7YihoSSk7YihQUygpKTtiKGpJKTtiKE9PKTtiKFBPKTtiKGxQKTtiKG1QKTtiKG5QKTtiKHVQKTtiKHZQKTtiKHJTKTtiKHVTKTtiKEJTKTtiKERTKTtiKFRTKTtiKFdTKTtiKFpTKTtiKGFUKTtiKGJUKTtiKGRUKTtiKG9UKTtiKHJUKTtiKHVUKTtiKHlUKTtiKENUKTtiKEhUKTtiKE1UKTtSVCgiTWF0aCIsemgoKSk7UlQoIk9iamVjdCIsWmgpO1JUKCJUZXN0SGVscGVyIixjaSgpKTtSVCgiYXNzZXJ0QXBpIix3aCk7UlQoImFzc2VydFRoYXQiLHhoKTtSVCgiZGVjb2RlVXJpIixDaCk7UlQoImRlY29kZVVyaUNvbXBvbmVudCIsRGgpO1JUKCJlbmNvZGVVcmkiLEVoKTtSVCgiZW5jb2RlVXJpQ29tcG9uZW50IixGaCk7UlQoImZhaWwiLApMaCk7UlQoImdlbmVyYXRlUmFuZG9tIixOaCk7UlQoImdldFRpbWVzdGFtcCIsT2gpO1JUKCJnZXRUaW1lc3RhbXBNaWxsaXMiLE9oKTtSVCgiZ2V0VHlwZSIsUGgpO1JUKCJtYWtlSW50ZWdlciIsUmgpO1JUKCJtYWtlTnVtYmVyIixTaCk7UlQoIm1ha2VTdHJpbmciLFRoKTtSVCgibWFrZVRhYmxlTWFwIixVaCk7UlQoIm1vY2siLFhoKTtSVCgibW9ja09iamVjdCIsWWgpO1JUKCJmcm9tQmFzZTY0IixITywhKCJhdG9iImluIEEpKTtSVCgibG9jYWxTdG9yYWdlIixTUywhUlMoKSk7UlQoInRvQmFzZTY0IixKVCwhKCJidG9hImluIEEpKTthKFFGKTthKFVGKTthKG5HKTthKHNHKTthKElHKTthKFBHKTthKFNHKTthKFZHKTthKFdHKTthKFpHKTthKCRHKTthKGFIKTthKGJIKTthKGNIKTthKGVIKTthKGdIKTthKGdJKTthKGlJKTthKGtJKTthKGxJKTthKG1JKTthKG5JKTthKG9JKTthKGZKKTthKG1KKTthKHRKKTthKHVKKTthKEFKKTthKEZKKTthKEtKKTthKFJKKTthKFdKKTthKGdLKTsKYShpSyk7YSh2Syk7YSh3Syk7YSh4Syk7YShGTyk7YShHTyk7YShJTyk7YShKTyk7YShLTyk7YShMTyk7YShNTyk7YShOTyk7YShRTyk7YShSTyk7YShTTyk7YShUTyk7YShVTyk7YShWTyk7YShXTyk7YShYTyk7YShZTyk7YShaTyk7YSgkTyk7YShhUCk7YShiUCk7YShjUCk7YShkUCk7YShlUCk7YShmUCk7YShnUCk7YShoUCk7YShpUCk7YShqUCk7YShrUCk7YShvUCk7YShwUCk7YShxUCk7YShyUCk7YShzUCk7YSh0UCk7YSh3UCk7YShvUyk7YShwUyk7YSh0Uyk7YSh2Uyk7YShDUyk7YShFUyk7YShGUyk7YShHUyk7YShIUyk7YShJUyk7YShKUyk7YShLUyk7YShMUyk7YShNUyk7YShOUyk7YShPUyk7YShRUyk7YShHRyk7YShVUyk7YShWUyk7YShYUyk7YShZUyk7YSgkUyk7YShjVCk7YShlVCk7YShmVCk7YShoVCk7YShpVCk7YShqVCk7YShsVCk7YShtVCk7YShuVCk7YShwVCk7YShxVCk7YShzVCk7YSh0VCk7YSh2VCk7YSh3VCk7YSh4VCk7YSh6VCk7YShBVCk7YShCVCk7YShEVCk7CmEoRVQpO2EoRlQpO2EoR1QpO2EoSVQpO2EoS1QpO2EoTFQpO2EoTlQpO1NUKCJpbnRlcm5hbC5JZnJhbWluZ1N0YXRlU2NoZW1hIixzUygpKTtTVCgiaW50ZXJuYWwucXVpY2tIYXNoIixNaCk7YShUVChNRiwidGFza1NldEFkc1RyYW5zbWlzc2lvblR5cGUiKSksYShUVChQRiwidGFza1NldFVuaXZlcnNhbFBhcmFtcyIpKTthKFRUKExGLCJ0YXNrQWRkQWRzQ2xpY2tJZHMiKSk7UFR8fChQVD1uZXcgT1QpO3JldHVybiBRVCgpfTt2YXIgSkY7ZnVuY3Rpb24gVlQoKXtKRi5zZChmdW5jdGlvbihhLGIsYyl7bGooKTt2YXIgZD1qajtkLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRT1kLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRXx8MDtkLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRSsrO3RyeXtyZXR1cm4gYS5hcHBseShiLGMpfWZpbmFsbHl7bGooKSxqai5ILlNBTkRCT1hFRF9KU19TRU1BUEhPUkUtLX19KX1mdW5jdGlvbiBXVChhKXtpZihhJiZhLmxlbmd0aClmb3IodmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pLGM9MDtjPGEubGVuZ3RoO2MrKyl7dmFyIGQ9YVtjXS5yZXBsYWNlKC9eXyovLCIiKTtiW2RdPVsic2FuZGJveGVkU2NyaXB0cyJdfX0KZnVuY3Rpb24gWFQoYSl7aWYoYSl7dmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO0diKGEsZnVuY3Rpb24oYyxkKXtmb3IodmFyIGU9MDtlPGQubGVuZ3RoO2UrKyl7dmFyIGY9ZFtlXS5yZXBsYWNlKC9eXyovLCIiKTtiW2ZdPWJbZl18fFtdO2JbZl0ucHVzaChjKX19KX19O2Z1bmN0aW9uIFpUKGEpe21EKHBDKCJkZXZlbG9wZXJfaWQuIithLCEwKSwwLHt9KX07ZnVuY3Rpb24gJFQoYSxiKXtyZXR1cm4gRWQoYSxifHxudWxsKX1mdW5jdGlvbiBZKGEpe3JldHVybiB3aW5kb3cuZW5jb2RlVVJJQ29tcG9uZW50KGEpfWZ1bmN0aW9uIGFVKGEpe1pjKGEsdm9pZCAwLHZvaWQgMCl9ZnVuY3Rpb24gYlUoYSl7dmFyIGI9WyJ2ZWludGVyYWN0aXZlLmNvbSIsInZlLWludGVyYWN0aXZlLmNuIl07aWYoIWEpcmV0dXJuITE7dmFyIGM9TGooUmooYSksImhvc3QiKTtpZighYylyZXR1cm4hMTtmb3IodmFyIGQ9MDtiJiZkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXSYmYltkXS50b0xvd2VyQ2FzZSgpO2lmKGUpe3ZhciBmPWMubGVuZ3RoLWUubGVuZ3RoO2Y+MCYmZS5jaGFyQXQoMCkhPT0iLiImJihmLS0sZT0iLiIrZSk7aWYoZj49MCYmYy5pbmRleE9mKGUsZik9PT1mKXJldHVybiEwfX1yZXR1cm4hMX0KZnVuY3Rpb24gY1UoYSxiLGMpe2Zvcih2YXIgZD17fSxlPSExLGY9MDthJiZmPGEubGVuZ3RoO2YrKylhW2ZdJiZhW2ZdLmhhc093blByb3BlcnR5KGIpJiZhW2ZdLmhhc093blByb3BlcnR5KGMpJiYoZFthW2ZdW2JdXT1hW2ZdW2NdLGU9ITApO3JldHVybiBlP2Q6bnVsbH1mdW5jdGlvbiBkVShhLGIpe3ZhciBjPXt9O2lmKGEpZm9yKHZhciBkIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbZF09YVtkXSk7aWYoYil7dmFyIGU9Y1UoYiwicGFyYW1ldGVyIiwicGFyYW1ldGVyVmFsdWUiKTtlJiYoYz0kVChlLGMpKX1yZXR1cm4gY31mdW5jdGlvbiBlVShhLGIsYyl7cmV0dXJuIGE9PT12b2lkIDB8fGE9PT1jP2I6YX1mdW5jdGlvbiBmVShhLGIsYyl7cmV0dXJuIFVjKGEsYixjLHZvaWQgMCl9ZnVuY3Rpb24gZ1UoYSxiKXtBW2FdPWJ9ZnVuY3Rpb24gaFUoYSxiLGMpe3ZhciBkPUE7YiYmKGRbYV09PT12b2lkIDB8fGMmJiFkW2FdKSYmKGRbYV09Yik7cmV0dXJuIGRbYV19dmFyIGlVPXt9LGpVPVguVjt2YXIgWj17c2VjdXJpdHlHcm91cHM6e319OwoKWi5zZWN1cml0eUdyb3Vwcy5hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZT1bImdvb2dsZSJdLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZT1mdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LGFhOmZ1bmN0aW9uKCl7cmV0dXJue319fX0sWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlLk89ImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIixaLl9fYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UuaXNWZW5kb3JUZW1wbGF0ZT0hMCxaLl9fYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UucHJpb3JpdHlPdmVycmlkZT0wLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZS5pc0luZnJhc3RydWN0dXJlPSExLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZVsiNSJdPSExLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZVsiNiJdPSExOwoKWi5zZWN1cml0eUdyb3Vwcy5hY2Nlc3NfZ2xvYmFscz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMsZCl7dmFyIGU9e2tleTpkLHJlYWQ6ITEsd3JpdGU6ITEsZXhlY3V0ZTohMX07c3dpdGNoKGMpe2Nhc2UgInJlYWQiOmUucmVhZD0hMDticmVhaztjYXNlICJ3cml0ZSI6ZS53cml0ZT0hMDticmVhaztjYXNlICJyZWFkd3JpdGUiOmUucmVhZD1lLndyaXRlPSEwO2JyZWFrO2Nhc2UgImV4ZWN1dGUiOmUuZXhlY3V0ZT0hMDticmVhaztkZWZhdWx0OnRocm93IEVycm9yKCJJbnZhbGlkICIrYisiIHJlcXVlc3QgIitjKTt9cmV0dXJuIGV9KGZ1bmN0aW9uKGIpe1ouX19hY2Nlc3NfZ2xvYmFscz1iO1ouX19hY2Nlc3NfZ2xvYmFscy5PPSJhY2Nlc3NfZ2xvYmFscyI7Wi5fX2FjY2Vzc19nbG9iYWxzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2FjY2Vzc19nbG9iYWxzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fYWNjZXNzX2dsb2JhbHMuaXNJbmZyYXN0cnVjdHVyZT0hMTsKWi5fX2FjY2Vzc19nbG9iYWxzWyI1Il09ITE7Wi5fX2FjY2Vzc19nbG9iYWxzWyI2Il09ITF9KShmdW5jdGlvbihiKXtmb3IodmFyIGM9Yi52dHBfa2V5c3x8W10sZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3IsZT1bXSxmPVtdLGc9W10saD0wO2g8Yy5sZW5ndGg7aCsrKXt2YXIgbD1jW2hdLG49bC5rZXk7bC5yZWFkJiZlLnB1c2gobik7bC53cml0ZSYmZi5wdXNoKG4pO2wuZXhlY3V0ZSYmZy5wdXNoKG4pfXJldHVybnthc3NlcnQ6ZnVuY3Rpb24ocCxxLHIpe2lmKCF6YihyKSl0aHJvdyBkKHAse30sIktleSBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKHE9PT0icmVhZCIpe2lmKGUuaW5kZXhPZihyKT4tMSlyZXR1cm59ZWxzZSBpZihxPT09IndyaXRlIil7aWYoZi5pbmRleE9mKHIpPi0xKXJldHVybn1lbHNlIGlmKHE9PT0icmVhZHdyaXRlIil7aWYoZi5pbmRleE9mKHIpPi0xJiZlLmluZGV4T2Yocik+LTEpcmV0dXJufWVsc2UgaWYocT09PSJleGVjdXRlIil7aWYoZy5pbmRleE9mKHIpPgotMSlyZXR1cm59ZWxzZSB0aHJvdyBkKHAse30sIk9wZXJhdGlvbiBtdXN0IGJlIGVpdGhlciAncmVhZCcsICd3cml0ZScsIG9yICdleGVjdXRlJywgd2FzICIrcSk7dGhyb3cgZChwLHt9LCJQcm9oaWJpdGVkICIrcSsiIG9uIGdsb2JhbCB2YXJpYWJsZTogIityKyIuIik7fSxhYTphfX0pfSgpOwoKClouc2VjdXJpdHlHcm91cHMuZ2V0X3JlZmVycmVyPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57Y29tcG9uZW50OmMscXVlcnlLZXk6ZH19KGZ1bmN0aW9uKGIpe1ouX19nZXRfcmVmZXJyZXI9YjtaLl9fZ2V0X3JlZmVycmVyLk89ImdldF9yZWZlcnJlciI7Wi5fX2dldF9yZWZlcnJlci5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19nZXRfcmVmZXJyZXIucHJpb3JpdHlPdmVycmlkZT0wO1ouX19nZXRfcmVmZXJyZXIuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZ2V0X3JlZmVycmVyWyI1Il09ITE7Wi5fX2dldF9yZWZlcnJlclsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfdXJsUGFydHM9PT0iYW55Ij9udWxsOltdO2MmJihiLnZ0cF9wcm90b2NvbCYmYy5wdXNoKCJwcm90b2NvbCIpLGIudnRwX2hvc3QmJmMucHVzaCgiaG9zdCIpLGIudnRwX3BvcnQmJmMucHVzaCgicG9ydCIpLGIudnRwX3BhdGgmJmMucHVzaCgicGF0aCIpLGIudnRwX2V4dGVuc2lvbiYmCmMucHVzaCgiZXh0ZW5zaW9uIiksYi52dHBfcXVlcnkmJmMucHVzaCgicXVlcnkiKSk7dmFyIGQ9YyYmYi52dHBfcXVlcmllc0FsbG93ZWQhPT0iYW55Ij9iLnZ0cF9xdWVyeUtleXN8fFtdOm51bGwsZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihmLGcsaCl7aWYoZyl7aWYoIXpiKGcpKXRocm93IGUoZix7fSwiVVJMIGNvbXBvbmVudCBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKGMmJmMuaW5kZXhPZihnKTwwKXRocm93IGUoZix7fSwiUHJvaGliaXRlZCBVUkwgY29tcG9uZW50OiAiK2cpO2lmKGc9PT0icXVlcnkiJiZkKXtpZighaCl0aHJvdyBlKGYse30sIlByb2hpYml0ZWQgZnJvbSBnZXR0aW5nIGVudGlyZSBVUkwgcXVlcnkgd2hlbiBxdWVyeSBrZXlzIGFyZSBzcGVjaWZpZWQuIik7aWYoIXpiKGgpKXRocm93IGUoZix7fSwiUXVlcnkga2V5IG11c3QgYmUgYSBzdHJpbmcuIik7aWYoZC5pbmRleE9mKGgpPDApdGhyb3cgZShmLHt9LAoiUHJvaGliaXRlZCBxdWVyeSBrZXk6ICIraCk7fX1lbHNlIGlmKGMpdGhyb3cgZShmLHt9LCJQcm9oaWJpdGVkIGZyb20gZ2V0dGluZyBlbnRpcmUgVVJMIHdoZW4gY29tcG9uZW50cyBhcmUgc3BlY2lmaWVkLiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5yZWFkX2V2ZW50X2RhdGE9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57a2V5OmN9fShmdW5jdGlvbihiKXtaLl9fcmVhZF9ldmVudF9kYXRhPWI7Wi5fX3JlYWRfZXZlbnRfZGF0YS5PPSJyZWFkX2V2ZW50X2RhdGEiO1ouX19yZWFkX2V2ZW50X2RhdGEuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fcmVhZF9ldmVudF9kYXRhLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fcmVhZF9ldmVudF9kYXRhLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX3JlYWRfZXZlbnRfZGF0YVsiNSJdPSExO1ouX19yZWFkX2V2ZW50X2RhdGFbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2V2ZW50RGF0YUFjY2VzcyxkPWIudnRwX2tleVBhdHRlcm5zfHxbXSxlPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGYsZyl7aWYoZyE9bnVsbCYmIXpiKGcpKXRocm93IGUoZix7a2V5Omd9LCJLZXkgbXVzdCBiZSBhIHN0cmluZy4iKTsKaWYoYyE9PSJhbnkiKXt0cnl7aWYoYz09PSJzcGVjaWZpYyImJmchPW51bGwmJkVnKGcsZCkpcmV0dXJufWNhdGNoKGgpe3Rocm93IGUoZix7a2V5Omd9LCJJbnZhbGlkIGtleSBmaWx0ZXIuIik7fXRocm93IGUoZix7a2V5Omd9LCJQcm9oaWJpdGVkIHJlYWQgZnJvbSBldmVudCBkYXRhLiIpO319LGFhOmF9fSl9KCk7CgpaLnNlY3VyaXR5R3JvdXBzLnJlYWRfdGl0bGU9WyJnb29nbGUiXSxaLl9fcmVhZF90aXRsZT1mdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LGFhOmZ1bmN0aW9uKCl7cmV0dXJue319fX0sWi5fX3JlYWRfdGl0bGUuTz0icmVhZF90aXRsZSIsWi5fX3JlYWRfdGl0bGUuaXNWZW5kb3JUZW1wbGF0ZT0hMCxaLl9fcmVhZF90aXRsZS5wcmlvcml0eU92ZXJyaWRlPTAsWi5fX3JlYWRfdGl0bGUuaXNJbmZyYXN0cnVjdHVyZT0hMSxaLl9fcmVhZF90aXRsZVsiNSJdPSExLFouX19yZWFkX3RpdGxlWyI2Il09ITE7Clouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue29wdGlvbnM6e2ZpeE1pc3NpbmdBcGk6ISFjLmZpeE1pc3NpbmdBcGl9fX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cz1iO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMuTz0iZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzIjtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzWyI2Il09CiExfSkoZnVuY3Rpb24oYil7dmFyIGM9ISFiLnZ0cF9hbGxvd0ZpeE1pc3NpbmdKYXZhU2NyaXB0QXBpLGQ9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZSxmKXtpZighYyYmZiYmZi5maXhNaXNzaW5nQXBpKXRocm93IGQoZSx7fSwiUHJvaGliaXRlZCBvcHRpb246IGZpeE1pc3NpbmdBcGkuIik7fSxhYTphfX0pfSgpOwoKCgoKWi5zZWN1cml0eUdyb3Vwcy5yZWFkX3NjcmVlbl9kaW1lbnNpb25zPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7cmV0dXJue319KGZ1bmN0aW9uKGIpe1ouX19yZWFkX3NjcmVlbl9kaW1lbnNpb25zPWI7Wi5fX3JlYWRfc2NyZWVuX2RpbWVuc2lvbnMuTz0icmVhZF9zY3JlZW5fZGltZW5zaW9ucyI7Wi5fX3JlYWRfc2NyZWVuX2RpbWVuc2lvbnMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fcmVhZF9zY3JlZW5fZGltZW5zaW9ucy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3JlYWRfc2NyZWVuX2RpbWVuc2lvbnMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fcmVhZF9zY3JlZW5fZGltZW5zaW9uc1siNSJdPSExO1ouX19yZWFkX3NjcmVlbl9kaW1lbnNpb25zWyI2Il09ITF9KShmdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LGFhOmF9fSl9KCk7CgoKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7cmV0dXJue319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzPWI7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMuTz0iZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cyI7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50c1siNSJdPSExO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzWyI2Il09ITF9KShmdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LGFhOmF9fSl9KCk7CgoKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfbGlua19jbGlja19ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57b3B0aW9uczpjfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50cz1iO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHMuTz0iZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzIjtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9hbGxvd1dhaXRGb3JUYWdzLGQ9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZSwKZil7aWYoIWMmJmYmJmYud2FpdEZvclRhZ3MpdGhyb3cgZChlLHt9LCJQcm9oaWJpdGVkIG9wdGlvbiB3YWl0Rm9yVGFncy4iKTt9LGFhOmF9fSl9KCk7Clouc2VjdXJpdHlHcm91cHMucmVhZF9jb250YWluZXJfZGF0YT1bImdvb2dsZSJdLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhPWZ1bmN0aW9uKCl7cmV0dXJue2Fzc2VydDpmdW5jdGlvbigpe30sYWE6ZnVuY3Rpb24oKXtyZXR1cm57fX19fSxaLl9fcmVhZF9jb250YWluZXJfZGF0YS5PPSJyZWFkX2NvbnRhaW5lcl9kYXRhIixaLl9fcmVhZF9jb250YWluZXJfZGF0YS5pc1ZlbmRvclRlbXBsYXRlPSEwLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLnByaW9yaXR5T3ZlcnJpZGU9MCxaLl9fcmVhZF9jb250YWluZXJfZGF0YS5pc0luZnJhc3RydWN0dXJlPSExLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhWyI1Il09ITEsWi5fX3JlYWRfY29udGFpbmVyX2RhdGFbIjYiXT0hMTsKWi5zZWN1cml0eUdyb3Vwcy5saXN0ZW5fZGF0YV9sYXllcj1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMpe3JldHVybntldmVudE5hbWU6Y319KGZ1bmN0aW9uKGIpe1ouX19saXN0ZW5fZGF0YV9sYXllcj1iO1ouX19saXN0ZW5fZGF0YV9sYXllci5PPSJsaXN0ZW5fZGF0YV9sYXllciI7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fbGlzdGVuX2RhdGFfbGF5ZXIuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fbGlzdGVuX2RhdGFfbGF5ZXJbIjUiXT0hMTtaLl9fbGlzdGVuX2RhdGFfbGF5ZXJbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FjY2Vzc1R5cGUsZD1iLnZ0cF9hbGxvd2VkRXZlbnRzfHxbXSxlPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGYsZyl7aWYoIXpiKGcpKXRocm93IGUoZix7ZXZlbnROYW1lOmd9LAoiRXZlbnQgbmFtZSBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKCEoYz09PSJhbnkifHxjPT09InNwZWNpZmljIiYmZC5pbmRleE9mKGcpPj0wKSl0aHJvdyBlKGYse2V2ZW50TmFtZTpnfSwiUHJvaGliaXRlZCBsaXN0ZW4gb24gZGF0YSBsYXllciBldmVudC4iKTt9LGFhOmF9fSl9KCk7Clouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YT1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMpe3JldHVybntkYXRhU291cmNlOmN9fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YT1iO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhLk89ImRldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEiO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEucHJpb3JpdHlPdmVycmlkZT0wO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGFbIjUiXT0hMTtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YVsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZCwKZSl7aWYoZSE9PSJhdXRvIiYmZSE9PSJtYW51YWwiJiZlIT09ImNvZGUiKXRocm93IGMoZCx7fSwiVW5rbm93biB1c2VyIHByb3ZpZGVkIGRhdGEgc291cmNlLiIpO2lmKGIudnRwX2xpbWl0RGF0YVNvdXJjZXMpaWYoZSE9PSJhdXRvInx8Yi52dHBfYWxsb3dBdXRvRGF0YVNvdXJjZXMpe2lmKGU9PT0ibWFudWFsIiYmIWIudnRwX2FsbG93TWFudWFsRGF0YVNvdXJjZXMpdGhyb3cgYyhkLHt9LCJEZXRlY3Rpb24gb2YgdXNlciBwcm92aWRlZCBkYXRhIHZpYSBtYW51YWxseSBzcGVjaWZpZWQgQ1NTIHNlbGVjdG9ycyBpcyBub3QgYWxsb3dlZC4iKTtpZihlPT09ImNvZGUiJiYhYi52dHBfYWxsb3dDb2RlRGF0YVNvdXJjZXMpdGhyb3cgYyhkLHt9LCJEZXRlY3Rpb24gb2YgdXNlciBwcm92aWRlZCBkYXRhIGZyb20gYW4gaW4tcGFnZSB2YXJpYWJsZSBpcyBub3QgYWxsb3dlZC4iKTt9ZWxzZSB0aHJvdyBjKGQse30sIkF1dG9tYXRpYyBkZXRlY3Rpb24gb2YgdXNlciBwcm92aWRlZCBkYXRhIGlzIG5vdCBhbGxvd2VkLiIpOwp9LGFhOmF9fSl9KCk7Clouc2VjdXJpdHlHcm91cHMuZ2V0X3VybD1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMsZCl7cmV0dXJue2NvbXBvbmVudDpjLHF1ZXJ5S2V5OmR9fShmdW5jdGlvbihiKXtaLl9fZ2V0X3VybD1iO1ouX19nZXRfdXJsLk89ImdldF91cmwiO1ouX19nZXRfdXJsLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2dldF91cmwucHJpb3JpdHlPdmVycmlkZT0wO1ouX19nZXRfdXJsLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2dldF91cmxbIjUiXT0hMTtaLl9fZ2V0X3VybFsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfdXJsUGFydHM9PT0iYW55Ij9udWxsOltdO2MmJihiLnZ0cF9wcm90b2NvbCYmYy5wdXNoKCJwcm90b2NvbCIpLGIudnRwX2hvc3QmJmMucHVzaCgiaG9zdCIpLGIudnRwX3BvcnQmJmMucHVzaCgicG9ydCIpLGIudnRwX3BhdGgmJmMucHVzaCgicGF0aCIpLGIudnRwX2V4dGVuc2lvbiYmYy5wdXNoKCJleHRlbnNpb24iKSxiLnZ0cF9xdWVyeSYmCmMucHVzaCgicXVlcnkiKSxiLnZ0cF9mcmFnbWVudCYmYy5wdXNoKCJmcmFnbWVudCIpKTt2YXIgZD1jJiZiLnZ0cF9xdWVyaWVzQWxsb3dlZCE9PSJhbnkiP2IudnRwX3F1ZXJ5S2V5c3x8W106bnVsbCxlPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGYsZyxoKXtpZihnKXtpZighemIoZykpdGhyb3cgZShmLHt9LCJVUkwgY29tcG9uZW50IG11c3QgYmUgYSBzdHJpbmcuIik7aWYoYyYmYy5pbmRleE9mKGcpPDApdGhyb3cgZShmLHt9LCJQcm9oaWJpdGVkIFVSTCBjb21wb25lbnQ6ICIrZyk7aWYoZz09PSJxdWVyeSImJmQpe2lmKCFoKXRocm93IGUoZix7fSwiUHJvaGliaXRlZCBmcm9tIGdldHRpbmcgZW50aXJlIFVSTCBxdWVyeSB3aGVuIHF1ZXJ5IGtleXMgYXJlIHNwZWNpZmllZC4iKTtpZighemIoaCkpdGhyb3cgZShmLHt9LCJRdWVyeSBrZXkgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihkLmluZGV4T2YoaCk8MCl0aHJvdyBlKGYse30sCiJQcm9oaWJpdGVkIHF1ZXJ5IGtleTogIitoKTt9fWVsc2UgaWYoYyl0aHJvdyBlKGYse30sIlByb2hpYml0ZWQgZnJvbSBnZXR0aW5nIGVudGlyZSBVUkwgd2hlbiBjb21wb25lbnRzIGFyZSBzcGVjaWZpZWQuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmFjY2Vzc19jb25zZW50PVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXt2YXIgZT17Y29uc2VudFR5cGU6YyxyZWFkOiExLHdyaXRlOiExfTtzd2l0Y2goZCl7Y2FzZSAicmVhZCI6ZS5yZWFkPSEwO2JyZWFrO2Nhc2UgIndyaXRlIjplLndyaXRlPSEwO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIkludmFsaWQgIitiKyIgcmVxdWVzdCAiK2QpO31yZXR1cm4gZX0oZnVuY3Rpb24oYil7Wi5fX2FjY2Vzc19jb25zZW50PWI7Wi5fX2FjY2Vzc19jb25zZW50Lk89ImFjY2Vzc19jb25zZW50IjtaLl9fYWNjZXNzX2NvbnNlbnQuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fYWNjZXNzX2NvbnNlbnQucHJpb3JpdHlPdmVycmlkZT0wO1ouX19hY2Nlc3NfY29uc2VudC5pc0luZnJhc3RydWN0dXJlPSExO1ouX19hY2Nlc3NfY29uc2VudFsiNSJdPSExO1ouX19hY2Nlc3NfY29uc2VudFsiNiJdPSExfSkoZnVuY3Rpb24oYil7Zm9yKHZhciBjPQpiLnZ0cF9jb25zZW50VHlwZXN8fFtdLGQ9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yLGU9W10sZj1bXSxnPTA7ZzxjLmxlbmd0aDtnKyspe3ZhciBoPWNbZ10sbD1oLmNvbnNlbnRUeXBlO2gucmVhZCYmZS5wdXNoKGwpO2gud3JpdGUmJmYucHVzaChsKX1yZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKG4scCxxKXtpZighemIocCkpdGhyb3cgZChuLHt9LCJDb25zZW50IHR5cGUgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihxPT09InJlYWQiKXtpZihlLmluZGV4T2YocCk+LTEpcmV0dXJufWVsc2UgaWYocT09PSJ3cml0ZSIpe2lmKGYuaW5kZXhPZihwKT4tMSlyZXR1cm59ZWxzZSB0aHJvdyBkKG4se30sIkFjY2VzcyB0eXBlIG11c3QgYmUgZWl0aGVyICdyZWFkJywgb3IgJ3dyaXRlJywgd2FzICIrcSk7dGhyb3cgZChuLHt9LCJQcm9oaWJpdGVkICIrcSsiIG9uIGNvbnNlbnQgdHlwZTogIitwKyIuIik7fSxhYTphfX0pfSgpOwoKCgpaLnNlY3VyaXR5R3JvdXBzLnJlYWRfZG9tX2VsZW1lbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57dHlwZTpjLHZhbHVlOmR9fShmdW5jdGlvbihiKXtaLl9fcmVhZF9kb21fZWxlbWVudHM9YjtaLl9fcmVhZF9kb21fZWxlbWVudHMuTz0icmVhZF9kb21fZWxlbWVudHMiO1ouX19yZWFkX2RvbV9lbGVtZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19yZWFkX2RvbV9lbGVtZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzWyI1Il09ITE7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9hbGxvd2VkRWxlbWVudElkc3x8Im5vbmUiLGQ9Yi52dHBfYWxsb3dlZENzc1NlbGVjdG9yc3x8Im5vbmUiLGU9Yi52dHBfZWxlbWVudElkc3x8W10sZj1iLnZ0cF9jc3NTZWxlY3RvcnN8fFtdLGc9CmIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGgsbCxuKXtzd2l0Y2gobCl7Y2FzZSAiaWQiOmlmKGM9PT0ibm9uZSIpYnJlYWs7aWYoYz09PSJhbnkifHxlLmluZGV4T2Yobik+LTEpcmV0dXJuO2JyZWFrO2Nhc2UgImNzcyI6aWYoZD09PSJub25lIilicmVhaztpZihkPT09ImFueSJ8fGYuaW5kZXhPZihuKT4tMSlyZXR1cm47YnJlYWs7ZGVmYXVsdDp0aHJvdyBnKGgse30sIlVua25vd24gc2VsZWN0b3IgdHlwZSAiK2wrIi4iKTt9dGhyb3cgZyhoLHt9LCJQcm9oaWJpdGVkIHNlbGVjdG9yIHZhbHVlICIrbisiIGZvciBzZWxlY3RvciB0eXBlICIrbCsiLiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3Rfc2Nyb2xsX2V2ZW50cz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe3JldHVybnt9fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHM9YjtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHMuTz0iZGV0ZWN0X3Njcm9sbF9ldmVudHMiO1ouX19kZXRlY3Rfc2Nyb2xsX2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3Rfc2Nyb2xsX2V2ZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF9zY3JvbGxfZXZlbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF9zY3JvbGxfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9zY3JvbGxfZXZlbnRzWyI2Il09ITF9KShmdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LGFhOmF9fSl9KCk7Wi5zZWN1cml0eUdyb3Vwcy5nZXRfdXNlcl9hZ2VudD1bImdvb2dsZSJdLFouX19nZXRfdXNlcl9hZ2VudD1mdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LGFhOmZ1bmN0aW9uKCl7cmV0dXJue319fX0sWi5fX2dldF91c2VyX2FnZW50Lk89ImdldF91c2VyX2FnZW50IixaLl9fZ2V0X3VzZXJfYWdlbnQuaXNWZW5kb3JUZW1wbGF0ZT0hMCxaLl9fZ2V0X3VzZXJfYWdlbnQucHJpb3JpdHlPdmVycmlkZT0wLFouX19nZXRfdXNlcl9hZ2VudC5pc0luZnJhc3RydWN0dXJlPSExLFouX19nZXRfdXNlcl9hZ2VudFsiNSJdPSExLFouX19nZXRfdXNlcl9hZ2VudFsiNiJdPSExOwoKCgpmdW5jdGlvbiBrVSgpe3ZhciBhPXt9LGI9e2RhdGFMYXllcjp0QSxjYWxsYmFjazpmdW5jdGlvbihjKXthLmhhc093blByb3BlcnR5KGMpJiZ5YihhW2NdKSYmYVtjXSgpO2RlbGV0ZSBhW2NdfSxib290c3RyYXA6MH07cmV0dXJuIGJ9CmZ1bmN0aW9uIGxVKCl7dmFyIGE9a1UoKTtvaihhKTtDaygpO2pBKCk7dmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO1FiKGIsWi5zZWN1cml0eUdyb3Vwcyk7dmFyIGM9eWsoemsoKSksZCxlPWM9PW51bGw/dm9pZCAwOihkPWMuY29udGV4dCk9PW51bGw/dm9pZCAwOmQuc291cmNlO0tsKGUsYz09bnVsbD92b2lkIDA6Yy5wYXJlbnQpO2UhPT0yJiZlIT09NCYmZSE9PTN8fFAoMTQyKTtyZXR1cm4gYX1mdW5jdGlvbiBtVSgpe3ZhciBhPUUoNjApO2lmKGEpZm9yKHZhciBiPWEuc3BsaXQoIi4iKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY10sZT1UTDtkJiYoZS5IW2RdPSEwKX19CmZ1bmN0aW9uIG5VKCl7enAoKTtsaigpO2Zvcih2YXIgYT1kYXRhLnJlc291cmNlfHx7fSxiPWNBLGM9YS5tYWNyb3N8fFtdLGQ9MDtkPGMubGVuZ3RoO2QrKyliLm1hY3Jvcy5wdXNoKG5ldyBVeihjW2RdLGQsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBlPWEudGFnc3x8W10sZj0wO2Y8ZS5sZW5ndGg7ZisrKWIudGFncy5wdXNoKG5ldyBZeihlW2ZdLGYsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBnPWEucHJlZGljYXRlc3x8W10saD0wO2g8Zy5sZW5ndGg7aCsrKWIucHJlZGljYXRlcy5wdXNoKG5ldyBWeihnW2hdLGIudGFncyxiLm1hY3JvcykpO2Zvcih2YXIgbD1hLnJ1bGVzfHxbXSxuPTA7bjxsLmxlbmd0aDtuKyspYi5ydWxlcy5wdXNoKG5ldyBXeihsW25dLG4pKTtRej1aO3ZhciBwPWRhdGEucGVybWlzc2lvbnN8fHt9LHE9WjtkZz1uZXcgZ2coRSg1KSxwLHEpO3ZhciByPWRhdGEuc2FuZGJveGVkX3NjcmlwdHMsdD1kYXRhLnNlY3VyaXR5X2dyb3Vwcyx1PWRhdGEucnVudGltZXx8CltdLHY9ZGF0YS5ydW50aW1lX2xpbmVzO0pGPW5ldyBwZjtWVCgpO1B6PUlGKCk7dmFyIHg9SkYseT1VVCgpLHo9bmV3IExkKCJyZXF1aXJlIix5KTt6LlphKCk7eC5ILkguc2V0KCJyZXF1aXJlIix6KTtkYi5zZXQoInJlcXVpcmUiLHopO2Zvcih2YXIgQz0wO0M8dS5sZW5ndGg7QysrKXt2YXIgRD11W0NdO2lmKCFBcnJheS5pc0FycmF5KEQpfHxELmxlbmd0aDwzKXtpZihELmxlbmd0aD09PTApY29udGludWU7YnJlYWt9diYmdltDXSYmdltDXS5sZW5ndGgmJlBmKEQsdltDXSk7dHJ5e0pGLmV4ZWN1dGUoRCl9Y2F0Y2gob1Upe319V1Qocik7WFQodCk7dmFyIEk9bFUoKTtpRigpO3ZtLmJpbmQoKTtpZighRGopZm9yKHZhciBHPUJtKCk/ZXAoTGYoNSkpOmVwKExmKDQpKSxOPW0oUm8pLFM9Ti5uZXh0KCk7IVMuZG9uZTtTPU4ubmV4dCgpKXt2YXIgVz1TLnZhbHVlLGVhPVcsamE9R1tXXT8iZ3JhbnRlZCI6ImRlbmllZCI7dGwoKS5pbXBsaWNpdChlYSxqYSl9aEUuYmluZCgpO1RCKCk7Ck9CKCk7Zm4uTiYmKGd6KCksZnooQUYpLGdBKCksY0I9bmV3IGJCLGZ6KGl6KSxPQygpLERGfHwoREY9bmV3IEJGKSxmQnx8KGZCPW5ldyBlQiksRkY9bmV3IEVGKTtpZihmbi5LKXtERS5iaW5kKCk7bUMuYmluZCgpO3dFLmJpbmQoKTt2YXIgZmE9QWsoKTtpZihmYSl7dmFyIHNhO2E6e3ZhciBkYSxtYT0oZGE9ZmEuc2NyaXB0RWxlbWVudCk9PW51bGw/dm9pZCAwOmRhLnNyYztpZihtYSl7dmFyIFBhO3RyeXt2YXIgRmE7UGE9KEZhPXJkKCkpPT1udWxsP3ZvaWQgMDpGYS5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpfWNhdGNoKG9VKXt9aWYoUGEpe2Zvcih2YXIgcWE9LTEsaWI9bShQYSksWGI9aWIubmV4dCgpOyFYYi5kb25lO1hiPWliLm5leHQoKSl7dmFyIExjPVhiLnZhbHVlO2lmKExjLmluaXRpYXRvclR5cGU9PT0KInNjcmlwdCImJihxYSs9MSxMYy5uYW1lLnJlcGxhY2UoTkUsIiIpPT09bWEucmVwbGFjZShORSwiIikpKXtzYT1xYTticmVhayBhfX1QKDE0Nil9ZWxzZSBQKDE0NSl9c2E9dm9pZCAwfXZhciBRZD1zYTtRZCE9PXZvaWQgMCYmKGZhLmNhbm9uaWNhbENvbnRhaW5lcklkJiZVbSgicnRnIixTdHJpbmcoZmEuY2Fub25pY2FsQ29udGFpbmVySWQpKSxVbSgic2xvIixTdHJpbmcoUWQpKSxVbSgiaGxvIixmYS5odG1sTG9hZE9yZGVyfHwiLTEiKSxVbSgibHN0IixTdHJpbmcoZmEubG9hZFNjcmlwdFR5cGV8fCIwIikpKX1lbHNlIFAoMTQ0KTt2YXIgWWM7dmFyIERkPXhrKCk7aWYoRGQpaWYoRGQuY2Fub25pY2FsQ29udGFpbmVySWQpWWM9RGQuY2Fub25pY2FsQ29udGFpbmVySWQ7ZWxzZXt2YXIgamYsdmg9RGQuc2NyaXB0Q29udGFpbmVySWR8fCgoamY9RGQuZGVzdGluYXRpb25zKT09bnVsbD92b2lkIDA6amZbMF0pO1ljPXZoPyJfIit2aDp2b2lkIDB9ZWxzZSBZYz12b2lkIDA7dmFyIEpFPQpZYztKRSYmVW0oInBjaWQiLEpFKTtVbSgiYnQiLFN0cmluZyhJZig0Nyk/MjpJZig1MCk/MTowKSk7VW0oImN0IixTdHJpbmcoSWYoNDcpPzA6SWYoNTApPzE6MykpO0FFLmJpbmQoKTtmb3IodmFyIFdyPVtdLFhyPVtdLEtFPW0oT2JqZWN0LmtleXMoR0UpKSxZcj1LRS5uZXh0KCk7IVlyLmRvbmU7WXI9S0UubmV4dCgpKXt2YXIgcm09WXIudmFsdWU7aWYod2luZG93LmlzU2VjdXJlQ29udGV4dHx8IUlFW3JtXSl7dmFyIExFPUdFW3JtXSgpO2lmKHliKExFKSl7dmFyIE1FPUZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKExFKTtUYihNRSwieyBbbmF0aXZlIGNvZGVdIH0iKXx8VGIoTUUsIntcbiAgICBbbmF0aXZlIGNvZGVdXG59Iil8fFhyLnB1c2gocm0pfWVsc2UgV3IucHVzaChybSl9fVdyLmxlbmd0aD4wJiZVbSgianNtIixXci5qb2luKCJ+IikpO1hyLmxlbmd0aD4wJiZVbSgianNwIixYci5qb2luKCJ+IikpO0V5fHwoRXk9bmV3IER5KX1oRigpO2ltKDEpO0VHKCk7cmV0dXJuIEl9CmZ1bmN0aW9uIHVtKCl7dHJ5e2lmKCFoaygpJiYoSWYoNDcpfHwhTmsoKSkpe0lmKDY0KSYmd2ouSC5LLmFkZCgxMTg1MTc5MTcpO3pqKCk7Zm4uSCYmc3ooKTtXZls1XT0hMDt2YXIgYT1raigiZGVidWdHcm91cElkIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcoTWF0aC5mbG9vcihOdW1iZXIuTUFYX1NBRkVfSU5URUdFUipNYXRoLnJhbmRvbSgpKSl9KTtTbChhKTtrdCgpO3pGKCk7RnQoKTtQQigpO2lmKERrKCkpe0UoNSk7REcoKTtpQigpLnJlbW92ZUV4dGVybmFsUmVzdHJpY3Rpb25zKHZrKCkpO31lbHNle0ZNLlIoKTtuVSgpLmJvb3RzdHJhcD1OYigpO0lmKDUxKSYmcEUoKTsKZm4uSCYmdHooKTt0eXBlb2YgQS5uYW1lPT09InN0cmluZyImJlNiKEEubmFtZSwid2ViLXBpeGVsLXNhbmRib3gtQ1VTVE9NIikmJnNkKCk/WlQoImRNRGcwWXoiKTpBLlNob3BpZnkmJihaVCgiZE4yWmtNaiIpLHNkKCkmJlpUKCJkTlRVMFl6IikpO21VKCl9fX1jYXRjaChiKXtpbSg1KSxoeigpfX0KKGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXtuPUIuZG9jdW1lbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS10YWctYXNzaXN0YW50LXByZXNlbnQiKTtnbChuKSYmKGw9aC54bSl9ZnVuY3Rpb24gYygpe2wmJktjP2cobCk6YSgpfWlmKCFBW0UoMzcpXSl7dmFyIGQ9ITE7aWYoQi5yZWZlcnJlcil7dmFyIGU9UmooQi5yZWZlcnJlcik7ZD1OaihlLCJob3N0Iik9PT1FKDM4KX1pZighZCl7dmFyIGY9Y3EoRSgzOSkpO2Q9ISghZi5sZW5ndGh8fCFmWzBdLmxlbmd0aCl9ZCYmKEFbRSgzNyldPSEwLFVjKEUoNDApKSl9dmFyIGc9ZnVuY3Rpb24odSl7dmFyIHY9IkdUTSIseD0iR1RNIjtJZig0NSkmJih2PSJPR1QiLHg9IkdUQUciKTt2YXIgeT1FKDIzKSx6PUFbeV07enx8KHo9W10sQVt5XT16LFVjKCJodHRwczovLyIrRSgzKSsiL2RlYnVnL2Jvb3RzdHJhcD9pZD0iK0UoNSkrIiZzcmM9Iit4KyImY29uZD0iK1N0cmluZyh1KSsiJmd0bT0iK2R1KCkpKTt2YXIgQz17bWVzc2FnZVR5cGU6IkNPTlRBSU5FUl9TVEFSVElORyIsCmRhdGE6e3NjcmlwdFNvdXJjZTpLYyxjb250YWluZXJQcm9kdWN0OnYsZGVidWc6ITEsaWQ6RSg1KSx0YXJnZXRSZWY6e2N0aWQ6RSg1KSxpc0Rlc3RpbmF0aW9uOnNrKCksY2Fub25pY2FsSWQ6RSg2KX0sYWxpYXNlczp3aygpLGRlc3RpbmF0aW9uczp0aygpfX0sRD1DLmRhdGE7RC5yZXN1bWU9ZnVuY3Rpb24oKXthKCl9O0QucmVzdW1lV2l0aE1lbW9zPWZ1bmN0aW9uKCl7c2woMSk7YSgpfTtJZigyKSYmKEMuZGF0YS5pbml0aWFsUHVibGlzaD0hMCk7ei5wdXNoKEMpfSxoPXtHcToxLFBtOjIsb246MyxqbDo0LHhtOjV9O2hbaC5HcV09IkdUTV9ERUJVR19MRUdBQ1lfUEFSQU0iO2hbaC5QbV09IkdUTV9ERUJVR19QQVJBTSI7aFtoLm9uXT0iUkVGRVJSRVIiO2hbaC5qbF09IkNPT0tJRSI7aFtoLnhtXT0iRVhURU5TSU9OX1BBUkFNIjt2YXIgbD12b2lkIDAsbj12b2lkIDAscD1MaihBLmxvY2F0aW9uLCJxdWVyeSIsITEsdm9pZCAwLCJndG1fZGVidWciKTtnbChwKSYmKGw9aC5QbSk7CmlmKCFsJiZCLnJlZmVycmVyKXt2YXIgcT1SaihCLnJlZmVycmVyKTtOaihxLCJob3N0Iik9PT1FKDI0KSYmKGw9aC5vbil9aWYoIWwpe3ZhciByPWNxKCJfX1RBR19BU1NJU1RBTlQiKTtyLmxlbmd0aCYmclswXS5sZW5ndGgmJihsPWguamwpfWx8fGIoKTtpZighbCYmZmwobikpe3ZhciB0PSExOyRjKEIsIlRBRGVidWdTaWduYWwiLGZ1bmN0aW9uKCl7dHx8KHQ9ITAsYigpLGMoKSl9LCExKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0fHwodD0hMCxiKCksYygpKX0sMjAwKX1lbHNlIGMoKX0pKGZ1bmN0aW9uKCl7IUlmKDQ3KXx8dG0oKVsiMCJdP3VtKCk6eG0oKX0pOwoKfSkoKQoK"}},"time_used":85,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":40,"receive":45,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/consent/5afb8be5-36db-4066-8d42-fd51ad29102b/5afb8be5-36db-4066-8d42-fd51ad29102b.json","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.446Z","timestamp":1785161167446,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /consent/5afb8be5-36db-4066-8d42-fd51ad29102b/5afb8be5-36db-4066-8d42-fd51ad29102b.json HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/\r\nOrigin: https://dhlexpress.bg\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: application/json\r\ncf-ray: a21c33f09c9e783d-OSL\r\ncf-cache-status: HIT\r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=86400\r\ncontent-encoding: gzip\r\netag: 0x8DE373E1318EAE3\r\nexpires: Tue, 28 Jul 2026 14:06:07 GMT\r\nlast-modified: Tue, 09 Dec 2025 16:14:48 GMT\r\nserver: cloudflare\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nvary: accept-encoding\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding, X-OneTrust-IsBot\r\ncontent-md5: D3navigKsNEJhflbEEFcbQ==\r\ncross-origin-resource-policy: cross-origin, cross-origin\r\nx-content-type-options: nosniff\r\nx-onetrust-isbot: true\r\nx-ms-blob-type: BlockBlob\r\nx-ms-lease-status: unlocked\r\nx-ms-request-id: 6a4ac55c-a01e-0023-3268-e2fc41000000\r\nx-ms-version: 2009-09-19\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":"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":5717,"size_decoded":3328,"mime_type":"application/json","magic":"JSON text data","md5":"584ec1f870379f3649481652371ca3ad","sha1":"290fbb304149bdb2094c9ef3a7e47847715cb085","sha256":"aebf7b684db64486f28ff9e1cccd46838a669e169c89432e7183ce1d0b1f3ef5","sha512":"3f46f11dd28dbe0f4c5ecfeb47530d0c3b74d150dd4f2028c5b3ca909d23ccdebfea8d65a8de1e186dd5c4a9de168946ed6ae1323c4b7385d090aeb511b0c2ae","ssdeep":"96:npyIk40w1aOCxCBKGa6AyL6AbvNZtlhb3/FgBj7jAjijFZPbY2uz8Qm:FzMOCxn6vLbvtnb3/qhPIGs8Qm","tlshash":"24c18619ba4d473ecb8e43d5d41dbd0c8add2432158abc14cc8f4dac1ea7bb3285655b","first_seen":"2026-07-27T12:47:52.512224Z","last_seen":"2026-07-27T14:06:41.161832Z","times_seen":2,"resource_available":false,"data":"eyJDb29raWVTUEFFbmFibGVkIjpmYWxzZSwiQ29va2llU2FtZVNpdGVOb25lRW5hYmxlZCI6ZmFsc2UsIkNvb2tpZVYyQ1NQRW5hYmxlZCI6ZmFsc2UsIk11bHRpVmFyaWFudFRlc3RpbmdFbmFibGVkIjpmYWxzZSwiVXNlVjIiOnRydWUsIk1vYmlsZVNESyI6ZmFsc2UsIlNraXBHZW9sb2NhdGlvbiI6ZmFsc2UsIlNjcmlwdFR5cGUiOiJQUk9EVUNUSU9OIiwiVmVyc2lvbiI6IjIwMjUxMC4yLjAiLCJPcHRhbm9uRGF0YUpTT04iOiI1YWZiOGJlNS0zNmRiLTQwNjYtOGQ0Mi1mZDUxYWQyOTEwMmIiLCJHZW9sb2NhdGlvblVybCI6Imh0dHBzOi8vZ2VvbG9jYXRpb24ub25ldHJ1c3QuY29tL2Nvb2tpZWNvbnNlbnRwdWIvdjEvZ2VvL2xvY2F0aW9uIiwiQnVsa0RvbWFpbkNoZWNrVXJsIjoiaHR0cHM6Ly9jb29raWVzLWRhdGEub25ldHJ1c3QuaW8vYmFubmVyc2RrL3YxL2RvbWFpbmdyb3VwY2hlY2siLCJSdWxlU2V0IjpbeyJJZCI6IjAxOTI2YjE3LWRjNzEtNzRiZC05NDhkLWFiNGYxZTlhYWMzYyIsIk5hbWUiOiJHbG9iYWwiLCJDb3VudHJpZXMiOlsicHIiLCJwcyIsInB3IiwicHkiLCJxYSIsImFkIiwiYWUiLCJhZiIsImFnIiwiYWkiLCJhbCIsImFtIiwiYW8iLCJhcSIsImFyIiwiYXMiLCJhdSIsImF3IiwiYXoiLCJiYSIsImJiIiwicnMiLCJiZCIsInJ1IiwiYmYiLCJydyIsImJoIiwiYmkiLCJiaiIsImJsIiwiYm0iLCJibiIsImJvIiwic2EiLCJicSIsInNiIiwiYnIiLCJzYyIsInNkIiwiYnMiLCJidCIsImJ2Iiwic2ciLCJidyIsInNoIiwic2oiLCJieSIsImJ6Iiwic2wiLCJzbiIsInNvIiwiY2EiLCJzciIsImNjIiwic3MiLCJzdCIsImNkIiwic3YiLCJjZiIsImNnIiwiY2giLCJzeCIsInN5IiwiY2kiLCJzeiIsImNrIiwiY2wiLCJjbSIsImNuIiwiY28iLCJ0YyIsImNyIiwidGQiLCJjdSIsInRmIiwiY3YiLCJ0ZyIsInRoIiwiY3ciLCJjeCIsInRqIiwidGsiLCJ0bCIsInRtIiwidG4iLCJ0byIsInRyIiwidHQiLCJ0diIsInR3IiwiZGoiLCJ0eiIsImRtIiwiZG8iLCJ1YSIsInVnIiwiZHoiLCJ1bSIsInVzIiwiZWMiLCJlZyIsImVoIiwidXkiLCJ1eiIsInZhIiwidmMiLCJlciIsImV0IiwidmUiLCJ2ZyIsInZpIiwidm4iLCJ2dSIsImZqIiwiZmsiLCJmbSIsImZvIiwid2YiLCJnYSIsImdiIiwid3MiLCJnZCIsImdlIiwiZ2ciLCJnaCIsImdpIiwiZ2wiLCJnbSIsImduIiwiZ3EiLCJncyIsImd0IiwiZ3UiLCJndyIsImd5IiwieGsiLCJoayIsImhtIiwiaG4iLCJodCIsInllIiwiaWQiLCJpbCIsImltIiwiaW4iLCJpbyIsInphIiwiaXEiLCJpciIsInptIiwiamUiLCJ6dyIsImptIiwiam8iLCJqcCIsImtlIiwia2ciLCJraCIsImtpIiwia20iLCJrbiIsImtwIiwia3IiLCJrdyIsImt5Iiwia3oiLCJsYSIsImxiIiwibGMiLCJsayIsImxyIiwibHMiLCJseSIsIm1hIiwibWQiLCJtZSIsIm1nIiwibWgiLCJtayIsIm1sIiwibW0iLCJtbiIsIm1vIiwibXAiLCJtciIsIm1zIiwibXUiLCJtdiIsIm13IiwibXgiLCJteSIsIm16IiwibmEiLCJuYyIsIm5lIiwibmYiLCJuZyIsIm5pIiwibnAiLCJuciIsIm51IiwibnoiLCJvbSIsInBhIiwicGUiLCJwZiIsInBnIiwicGgiLCJwayIsInBtIiwicG4iXSwiU3RhdGVzIjp7fSwiTGFuZ3VhZ2VTd2l0Y2hlclBsYWNlaG9sZGVyIjp7ImhpIjoiaGkiLCJwcyI6InBzIiwicHQiOiJwdCIsImhyIjoiaHIiLCJodSI6Imh1IiwieWkiOiJ5aSIsImh5IjoiaHkiLCJ5byI6InlvIiwiaWQiOiJpZCIsImFmIjoiYWYiLCJpcyI6ImlzIiwiaXQiOiJpdCIsImFtIjoiYW0iLCJmeS1ubCI6ImZ5LW5sIiwiZnItY2EiOiJmci1jYSIsInpoIjoiemgiLCJhciI6ImFyIiwiZnItYmUiOiJmci1iZSIsImphIjoiamEiLCJheiI6ImF6IiwienUiOiJ6dSIsInJvIjoicm8iLCJuYi1ubyI6Im5iLW5vIiwicnUiOiJydSIsImJlIjoiYmUiLCJiZyI6ImJnIiwiemgtbW8iOiJ6aC1tbyIsImp2IjoianYiLCJibiI6ImJuIiwiZGUtYXQiOiJkZS1hdCIsInNkIjoic2QiLCJicyI6ImJzIiwiZGVmYXVsdCI6ImVuIiwic2kiOiJzaSIsImthIjoia2EiLCJzayI6InNrIiwic2wiOiJzbCIsInNtIjoic20iLCJzbiI6InNuIiwic28iOiJzbyIsImNhIjoiY2EiLCJzcSI6InNxIiwic3IiOiJzciIsImtrIjoia2siLCJzdCI6InN0Iiwic3UiOiJzdSIsImttIjoia20iLCJzdiI6InN2Iiwia24iOiJrbiIsInN3Ijoic3ciLCJrbyI6ImtvIiwiemgtdHciOiJ6aC10dyIsInpoLWhhbnQiOiJ6aC1oYW50IiwiemgtaGFucyI6InpoLWhhbnMiLCJrdSI6Imt1IiwiY28iOiJjbyIsInRhIjoidGEiLCJreSI6Imt5IiwiY3MiOiJjcyIsInRlIjoidGUiLCJ0ZyI6InRnIiwidGgiOiJ0aCIsImVzLWFyIjoiZXMtYXIiLCJjeSI6ImN5IiwibGIiOiJsYiIsImRhIjoiZGEiLCJ0ciI6InRyIiwidHQiOiJ0dCIsImRlIjoiZGUiLCJsbyI6ImxvIiwibHQiOiJsdCIsImx2IjoibHYiLCJubC1iZSI6Im5sLWJlIiwiemgtY24iOiJ6aC1jbiIsInVrIjoidWsiLCJtZSI6Im1lIiwibWciOiJtZyIsIm1pIjoibWkiLCJ1ciI6InVyIiwibWsiOiJtayIsImRlLWNoIjoiZGUtY2giLCJtbCI6Im1sIiwiZGUtYmUiOiJkZS1iZSIsIm1uIjoibW4iLCJ1eiI6InV6IiwibXIiOiJtciIsIm1zIjoibXMiLCJtdCI6Im10IiwiZWwiOiJlbCIsImVvIjoiZW8iLCJteSI6Im15IiwiZXMiOiJlcyIsImV0IjoiZXQiLCJldSI6ImV1IiwidmkiOiJ2aSIsIm5lIjoibmUiLCJmYSI6ImZhIiwiZW4tZ2IiOiJlbi1nYiIsIm5sIjoibmwiLCJubyI6Im5vIiwiZmkiOiJmaSIsImFyLWFlIjoiYXItYWUiLCJzbC1zaSI6InNsLXNpIiwiZnIiOiJmciIsImZyLWNoIjoiZnItY2giLCJlcy11cyI6ImVzLXVzIiwiZ2EiOiJnYSIsImdkIjoiZ2QiLCJnbCI6ImdsIiwiemgtaGsiOiJ6aC1oayIsInB0LWJyIjoicHQtYnIiLCJlcy1teCI6ImVzLW14IiwiZ3UiOiJndSIsInhoIjoieGgiLCJwYSI6InBhIiwiaGEiOiJoYSIsInBsIjoicGwiLCJoZSI6ImhlIn0sIkJhbm5lclB1c2hlc0Rvd24iOmZhbHNlLCJEZWZhdWx0Ijp0cnVlLCJHbG9iYWwiOnRydWUsIlR5cGUiOiJHRFBSIiwiVXNlR29vZ2xlVmVuZG9ycyI6ZmFsc2UsIlZhcmlhbnRFbmFibGVkIjpmYWxzZSwiVGVzdEVuZFRpbWUiOm51bGwsIlZhcmlhbnRzIjpbXSwiVGVtcGxhdGVOYW1lIjoiRVhQIDIwMjMgU3RhbmRhcmQgQ01QICIsIkNvbmRpdGlvbnMiOltdLCJHQ0VuYWJsZSI6dHJ1ZSwiSXNHUFBFbmFibGVkIjpmYWxzZSwiRW5hYmxlSldUQXV0aEZvcktub3duVXNlcnMiOmZhbHNlfV0sIklhYkRhdGEiOnsiY29va2llVmVyc2lvbiI6IjEiLCJjcmVhdGVkVGltZSI6IjIwMjUtMTItMDlUMTY6MTQ6NDcuNTE4MDAwOTkwIiwidXBkYXRlZFRpbWUiOiIyMDI1LTEyLTA5VDE2OjE0OjQ3LjUxODAwODE1MCIsImNtcElkIjoiMjgiLCJjbXBWZXJzaW9uIjoiMSIsImNvbnNlbnRTY3JlZW4iOiIxIiwiY29uc2VudExhbmd1YWdlIjpudWxsLCJ2ZW5kb3JMaXN0VmVyc2lvbiI6MCwibWF4VmVuZG9ySWQiOjAsImVuY29kaW5nVHlwZSI6IjAiLCJnbG9iYWxWZW5kb3JMaXN0VXJsIjoiaHR0cHM6Ly9jZG4uY29va2llbGF3Lm9yZy92ZW5kb3JsaXN0L2lhYkRhdGEuanNvbiJ9LCJJYWJWMkRhdGEiOnsiY29va2llVmVyc2lvbiI6IjEiLCJjcmVhdGVkVGltZSI6IjIwMjUtMTItMDlUMTY6MTQ6NDcuNTQzODQyMjk1IiwidXBkYXRlZFRpbWUiOiIyMDI1LTEyLTA5VDE2OjE0OjQ3LjU0Mzg0ODQxNSIsImNtcElkIjoiMjgiLCJjbXBWZXJzaW9uIjoiMSIsImNvbnNlbnRTY3JlZW4iOiIxIiwiY29uc2VudExhbmd1YWdlIjpudWxsLCJ2ZW5kb3JMaXN0VmVyc2lvbiI6MCwibWF4VmVuZG9ySWQiOjAsImVuY29kaW5nVHlwZSI6IjAiLCJnbG9iYWxWZW5kb3JMaXN0VXJsIjoiaHR0cHM6Ly9jZG4uY29va2llbGF3Lm9yZy92ZW5kb3JsaXN0L2lhYjJEYXRhLmpzb24ifSwiSWFiMlYyRGF0YSI6eyJjb29raWVWZXJzaW9uIjoiMSIsImNyZWF0ZWRUaW1lIjoiMjAyNS0xMi0wOVQxNjoxNDo0Ny41Njk4MzA4NzciLCJ1cGRhdGVkVGltZSI6IjIwMjUtMTItMDlUMTY6MTQ6NDcuNTY5ODM3MDEzIiwiY21wSWQiOiIyOCIsImNtcFZlcnNpb24iOiIxIiwiY29uc2VudFNjcmVlbiI6IjEiLCJjb25zZW50TGFuZ3VhZ2UiOm51bGwsInZlbmRvckxpc3RWZXJzaW9uIjowLCJtYXhWZW5kb3JJZCI6MCwiZW5jb2RpbmdUeXBlIjoiMCIsImdsb2JhbFZlbmRvckxpc3RVcmwiOiJodHRwczovL2Nkbi5jb29raWVsYXcub3JnL3ZlbmRvcmxpc3QvaWFiMlYyRGF0YS5qc29uIn0sIkdvb2dsZURhdGEiOnsidmVuZG9yTGlzdFZlcnNpb24iOjEwNywiZ29vZ2xlVmVuZG9yTGlzdFVybCI6Imh0dHBzOi8vY2RuLmNvb2tpZWxhdy5vcmcvdmVuZG9ybGlzdC9nb29nbGVEYXRhLmpzb24ifSwiU2NyaXB0RHluYW1pY0xvYWRFbmFibGVkIjpmYWxzZSwiVGVuYW50RmVhdHVyZXMiOnsiQ29va2llVjJCYW5uZXJGb2N1cyI6dHJ1ZSwiQ29va2llVjJSZWplY3RBbGwiOnRydWUsIkNvb2tpZVYyR1BDIjp0cnVlLCJDb29raWVWMkdlb2xvY2F0aW9uSnNvbkFwaSI6dHJ1ZSwiQ29va2llVjJUQ0YyMSI6dHJ1ZSwiQ29va2llVjJTa2lwQ2F0ZWdvcnkiOnRydWUsIkNvb2tpZVYyQmFubmVyTG9nbyI6dHJ1ZSwiQ29uc2VudFN0b3JlQ29uc2VudFN0cmluZ3MiOnRydWUsImZlYXR1cmVzLmNtcC1hbWF6b24tY29uc2VudC1TaWduYWwiOnRydWUsIkNvb2tpZVYyQXNzaWduVGVtcGxhdGVSdWxlIjp0cnVlLCJNb2JpbGVBdXRoZW50aWNhdGVkQ29uc2VudHMiOnRydWUsIkNvb2tpZVYyTWljcm9zb2Z0VUVUIjp0cnVlLCJDb29raWVWMkdDTURNQSI6dHJ1ZSwiQ29va2llVjJSZW1vdmVTZXR0aW5nc0ljb24iOnRydWUsIkNvb2tpZVYyTmV3Q29uc2VudFJlY2VpcHRBUEkiOnRydWUsIkNvb2tpZVYyR2VuZXJhbFZlbmRvcnMiOnRydWUsIkNvb2tpZVYyR1BQIjp0cnVlfSwiSXNTdXBwcmVzc0Jhbm5lciI6ZmFsc2UsIklzU3VwcHJlc3NQQyI6ZmFsc2UsIlB1Ymxpc2hlckNDIjoiREUiLCJEb21haW4iOiJkaGxleHByZXNzLmJnIiwiVGVuYW50R3VpZCI6IjkzNzViYWQ3LWY2NWUtNGY4YS1iYzE2LTgyNTQ3MjNiZDY2YSIsIkVudklkIjoiYXBwLWRlLXByb2QiLCJSZW1vdGVBY3Rpb25zRW5hYmxlZCI6ZmFsc2UsIkdlb1J1bGVHcm91cE5hbWUiOiJFWFAgMjAyMyBTdGFuZGFyZCBDTVAgIiwiR0FUcmFja1RvZ2dsZSI6ZmFsc2UsIkdBVHJhY2tBc3NpZ25lZENhdGVnb3J5IjoiIiwiV2ViRm9ybUludGVncmF0aW9uRW5hYmxlZCI6ZmFsc2UsIldlYkZvcm1TcmNVcmwiOiIiLCJXZWJGb3JtV29ya2VyVXJsIjoiIiwiR3BwRGF0YSI6eyJjbXBJZCI6IjI4In0sIkF1dGhlbnRpY2F0ZWRDb25zZW50IjpmYWxzZSwiQXV0aGVudGljYXRlZExvZ2dlZE91dENvbnNlbnQiOmZhbHNlLCJDRE5Mb2NhdGlvbiI6Imh0dHBzOi8vY2RuLmNvb2tpZWxhdy5vcmciLCJSb290RG9tYWluQ29uc2VudEVuYWJsZWQiOmZhbHNlLCJSb290RG9tYWluVXJsIjoiIiwiTGFuZ3VhZ2VEZXRlY3Rpb25FbmFibGVkIjp0cnVlLCJMYW5ndWFnZURldGVjdGlvbkJ5SHRtbCI6dHJ1ZSwiRGF0YUxhbmd1YWdlIjoiIiwiRGlzY2xvc3VyZUNETlVybCI6Imh0dHBzOi8vY2RuLmNvb2tpZWxhdy5vcmcvdmVuZG9ybGlzdC9EZXZpY2VTdG9yYWdlRGlzY2xvc3VyZURhdGEiLCJTRU9PcHRpbWl6YXRpb24iOmZhbHNlLCJQYXJ0aXRpb25lZENvb2tpZUVuYWJsZWQiOmZhbHNlLCJCYW5uZXJSZWZyZXNoQWZ0ZXJDYWxsVG9BY3Rpb25FbmFibGVkIjpmYWxzZX0="}},"time_used":59,"timings":{"blocked":0,"dns":0,"connect":1,"send":0,"wait":51,"receive":0,"ssl":7},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/i/77/77/08d/3408d/1276x1189/upKlAR_1276x1188_60f596441b7d0d67.webp","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"imageset","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.929Z","timestamp":1785161166929,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /i/77/77/08d/3408d/1276x1189/upKlAR_1276x1188_60f596441b7d0d67.webp HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-length: 18340\r\nlast-modified: Wed, 21 Aug 2024 08:36:59 GMT\r\netag: \"47a4-6202d7207e0c0\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":18340,"size_decoded":18546,"mime_type":"image/webp","magic":"RIFF (little-endian) data, Web/P image, VP8 encoding, 1276x1188, Scaling: [none]x[none], YUV color, decoders should clamp","md5":"52b6845be36321478bac37acf1823de1","sha1":"b8b04b1aef37b2a483fca562f09a36faae9181f6","sha256":"1ef28df9034b0729d5ca19e7eeaaedc1ad4e5ed44f5df6c80d109bc8cf54ee55","sha512":"ee0709be575467225ebd25ad3393f11a8608c604c9825ce449240cbe929ecbd15626281b2b612f2c9f440bb6eadd6672a696b9c1c38e12106e14c3cd3456e711","ssdeep":"384:GUe7kTDO/sDbpGrZkaoDdbO88osIEo7iFMCKzNnGsVsb6:GFgTHbErZkpO88TA7iFMHzkb","tlshash":"d882492bba5e6749c557f97280508f6abf746d6668e3c3d3187628be4840c1f11278e3","first_seen":"2026-07-27T14:06:41.163587Z","last_seen":"2026-07-27T14:06:41.163587Z","times_seen":1,"resource_available":false,"data":"UklGRpxHAABXRUJQVlA4IJBHAABQJQKdASr8BKQEPlEok0ajoqIhINMIYHAKCWdu42McpMwXP3Jw16ntPNQ3H10X4yNmE+nfuX6F5nvzG9pXmnwP9R+MP7d8+P+Lu3+O/7nkqcp/7j++fk984v9//uvaX/V/8l/wPzt+gX9Qv9r/bP8p+1v0S/9Xrr/vP/P9RX87/w/7L+7B/2P2g96n9j/2/7U/AV/KP9F/7/bB/8/s4/5T/p////5/Av+z3//9eb91/hx/sv/M/a/4If2l//nZ3dOf6l3QP5j/I/lp57+VL0p7Yf3v50P0X/R8pHW//d/vnql/Nftn+d/rf+M/X355/23/I/unl38cP7r1C/yr+V/6j+5fjj8iET3pBQL+e/23wEv8r0y/Qv8P/wPuQ+wH+Yf17/sev3hY+q+wL/UP83+y3u2f5H/2/1fqT+sP/L/qPgZ/Yn/tgtLjfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyuj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iGM8hMmoCZXRvqagJldG+Jf+Nc6QuN9PHHLgLU55nPSAKPqagJldY00fFoVFOTUBMro31NQEyujfFGC2Qt7MLBz6Y1zgeU0KVm9xs2RD623aELQAUDtrcPrbbRHJjPhejbizFsDbHQNFemk6NtsbcvTP6B7ELWDeoPKJ9BbA2x0bbYU/l+CZ2AzcL0bcWbbizFsDbHRtxZi2FnKfQo7qvneVmXiFxvqagJldG+pqLDQC5FqrggrctVpBdY9ez+igG0XkNNvPSJAaMHTfyvh1dngsTTfyuU+ldZl4hcb6moCZXRvqagK191NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEwQAD+/56AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAg4BQ7EC/d01FDTaLOaf2FNos4NNZc7v3YIy4eaw6+isDC0Y8nvvG78JsrlI57Qp6BYuFNiMnStEgi/wvnM7Xz/THih1yFdJCaocuyyjHgjf0MVIj5TzSCm1WZmkUwJSZj8DNQDNtbpgho9YIgEcey0EAMJneUrg9wTHJXpYlUsHEe/00NA1k3cUokJL8Y4Ipo9QUYYlOq0OQZSBhOy/7Lc89R73/3c2Rn6QwgFSfoo/YSixZBh6vfT1LaRunVEaxJJ+IbsxrULCbAFhYT4Za7dtRD8ZKqBY3WBFne++UuQTZB7+BikPef1I6xyMqx6mXYxayiGJKYHUyFVIfVYARKQj70n3uLeLpUTDuFNT+LhPsKq/R3u9ncD+Pfj/uScOLSjwfJGw27MMBYlow7OSLFxj6KgVmYhLG9VcpkZ52nOMoGt1bJjYPy/Lto27qC+VcyheAvadTt2bAAMj6NtGeM1W2mKl3xrIeAAAWJHAPmLSTo1NozdfNCzqZVJk4TT+3TNcZybkuL3K08yY8a5R8xjuOuhvUVJbOnZ9Jp7aMKAOWCqWz9Rd0fdp6RRoceyHpsqTyGtC3USWLtfYvytY26zZ0Sf+GLo2vArNre08qWLwZWsiGb/e6UUMrmmlI6s4T16wxIVVJf50IEXMrGT31zScbP80ed8prtulT7G1JpdGQSGkEmZFtUo7f4gHsQg5Zu0TRP/DTL6+vZYllsbaaICqy6iQCOM5dMU4IIOt4forceIPn0aI/q+5WDVs0ToVZqEMOsfZuEadmtkAfzfXYMeW3ItLG4J1pfNDTsetNplewvgyrbZs90m+evEDv2vPygDIdGemyZsRlPZo9qdny731/eHdggIUcxaaofL3YKMlY6q8AUWfWhoQa8nSebS1UBhWXBUg2P8FVx5BJ7w2stfHPAc/Oc8vQxLz75CrmEC4yuhhj9E7ubV7EKOOma0dnaNAm+d0xXLMCcZDIMVjz+1RIsfq7czpfg6D6zp2ihKubVr4tu0du4n+mNfm7oYoRW/mbeOP7tcMxrHk6EYUQxh9YbInbj5XABPr7x0/j9QubOKuza/L+JrRJmWAlvJG+KQnauSZAEnnL9XZqaftfS+4yYTAf1cgbf5B9tHBj+MMxQKLtSu2o1guhSnRdPjOYv8ZHVN2FrRqtcaGXc5Tl/H2ju4D9So7Xzy+nMTdD5qkfueiZfvtO4+A6rc7lTLukY91ZBrwHErIGjfsveB5d7ATOKDI0yL6X03Dpgtx9FdJ4u4VGlhuZm+DrCcqCDbEKzv7U1YICeSUCvqecpRQ7lD2DlQN+Mzik0RKQj6/wAF9+/lGRM+VvJbRaJweSPaV3axD4O/W3oFU3dJ+GMgC969th5f4XR5zjLqvvYpYLMlmjMd/M7N3OKtEwmmWQI9L6kf8Bs2bu5Syh95WX5cd3TKpMFY2FdnRfK1zhajxPyVsfJhKTCzRaTLUfgTADq51p4cVDMsxAKCqVwjmxc+8wSjobP6veIW2YDxr9kX+sch40EopgHkBSs2LWPVTSp9+RcRb25RhYzSNZ/VMDDh9NsnRRSU8M/3SFpMWPZUPaGKM5kBxCmwT+3Ojz0WxtNbF/DSxMaRYJegfdDK/oDpRuVcdxvdwp1/yzpHl1F9v8g76nRPz9tMlX6IjSppBf32VprktRkBvTPV7HnI6ftiCgi3w9A4kKuvdyKjff2/9wMPuxJNakit+p3konphA++oZI/ttJw6Jhc2zlJShvLhqepmeIsQfA1BLi80CtxID5ScNlON/3hluD5Hc7t9ZEn4KHMm3zbzvjofXdlBHgcBG4t4zpRY9yvjiFAt1OHWrXyAEqABjnI3kL2XiEEcSfo5iWyKNmENgxPF7O9GqJK41w6m2rMgmKCY4b9hLMdspc9+KCoBtW/BSAdiNHE7UmqAqUI2JpUKBTOrhtjC2bioNTnj67t38PAZFDHy1DvjHY1vFetqqLdZvrC6FK0Iva48csAN56BHD5TESVineRdnGuSL9o1nAvnRDGLaEyl0U3PBH2lRv8Ot0UVAbkDeEXFurdpzv6gQMzAzBe/3Lsu/EiRIkntqqDoO+FA/uu4QOl9w8McjisvRvVEB7tz+ptnGKqt/qxX+PMybxorJoewSpqx0gcrlA9SlukTj2aLlv1Y8Jh08vgsZc+DzeoB8DnyjyJmXI5KlWggfKbOOp5XPLga2l8d2UCUDV2BunyHHg3ofck4PoMJTNW0JoYlotlxV+6Z2qO+BBeTAmi1aq8h5bD5pdyG8E6RgB4h3zg/IdZBphqBXQwW85GpFqjQPp5z6a9Sy+/b0Rr7BIJJTBu+iDObQumXTe9L5zfF6LrAh+bwOf4QTCITZEeTF4Q4YyyH7g9mDcoQwdZFTkDYBfbL/jOOAAXf7w9jqj28J93voEwfbyMkH3zkU8l5lWjuK/zaieUYu7en6pssjJRxhTqgQNw91inzKhIRhTCd2rolg1hmsw9J78dQ/lcbZnx4AAU6XbxgqTbzSplVmS2RtID7wEJdBxveSXpJ14CP1YuTB/AwWFMtO+aMsgg3YZbfjR0erN63+doUT/Dn0B7NLqzoLsOjYBQWvoP9iFrUhJwuPmfRgRJ/naD26YbaWRr96zHC+8bxcdM3JQNFIS+xa1lJ8RKCuSEoLD6F9bynML29wJHd9KYZc/SOWMgfZjbWnQVnz7/0pQYlj6inFsNV+tj4SGMR599soAIRkGrsAkMjvb2rzrWoQZD8NgFlqcyX/1HnJHJiNY9axyC4pRSw1iOg2rAHAeO+fW3UnyqLt5AJGhv5Ak9I+m8Lb3c4g8PFfYGj6cZx/n9mbc/GkBQ8X0N0GWXWhdWdnDyfWMrfe+5iSZ97B/EHrPP9uyA6+OIreoMUKSH/1VzRI7owYzaFqVrvlJ+fOovdyMM+rrEJmw2cd6EiXUe4+8qeV8OjryjBtYQCejEhJfj/IScZuQwhq9qnVqn693rZDY5NwME8xdMWAHwwZe5nmTd00rYXBuV5gzMGX/4zG4I73eIuRqpXzxV8zQxkmvMm3W1iXUad7ssCaQq1SafWufi9FyGj/+VZYVXRes/TQytVhTJ2G+nWcmaB2EERVqFQlCxqo8utBsqouk3B0z/r4LUW/5nhlNQAhVknN8ln4RhhNx81C0Lqhu503eMnCqnOX0weDZ6kB0ztkYpwJqDRxzwPC8TXkoruok6zWyQ1q9Q7iY6XHN5i/YgOHB+5JnvksavD2CEV0ckyNmyFJK48gUGbJCwyecE23dqVlgmPHiHEmbuhlbA/Ab9jsXadvFAOn3OB59D1Un9vQR/o7gU6JylsTG7dker8vRmEcgXb1VvUjhu3Qf8oLrgGCIDtoK+k//XqWz4suo4QSYgifQm3DWostUKnFvyC+uylpyTX/CjuKHDS3+/oS6beCrxOxtFTy+9VuLl4viSq23IMjNcf8gDvy+SUMFWoVysUClm/3rZwWIGM0e3XN08xfEBT3CErOt80fmmf559qb0+/RQEztVWeX3YK/brHVkAf6Y2Oc3a15HPwRPZaCVvEvJanfBlKqLDxWzQlQQkrpCQV2lPTkemapvu66bTQMF92RrbFZ4b1OVYxUK3gjbgHO9t8y5jGvLcCGdLlUYQkQki3Vitdcl+iE/K2RNUgCQD22HGmm/GeqVp+YooUoggiYsRBUTvZH79ofyQFZP0jBnCDpvBwXe/SaJ02bAshQYJcrF8ajjgUY/P39/E2rQpYml6+u/VF1wpB1MTC9Cq/xeLqrshvmRGU3IGarQevvY6Wq1UozRBqN+gt7yoqkJF44giRiciUmNGfM4BKRJ0J5TwGNEuA5I2tro5zTILwGUXFRGyMqNsgmRHU1+3WNq8hKzxqtq7/Fr42Dphujm0zBvrS5+0G+6KtN/ACPfLPcH9MCRBZojZPv9DiHi1TizeHmPMHIDZDMtMqifWPHe4jknNmk2ACYUKYxqbSCzb2pF7tPeS6wznGo8KcMHkCYSgEz2w+SNFRNvFBf5Dmf8B/4IPN5PuXraqGI0okK1wv8wlaQyxt238nNg5ZAODyomef4XX3bt1x6Y3mvEaTrjr38tG/eouRQLyB58pVoF1ObruUPmGkD3qyl3gk6ciZbQAVm0Tm31mBemBBlkbwla0uACiHikktSrAQT5K6ER0plvBJaTWUAJolCOj8SeTn+e/Xlk//YA+gD+C96vxA9RRnd6vxBY5tQNZGv4bF8eC9INziGU8N7QD0TJQe9C2O76XIzq05LCm3D7rOVbqkE02BepUb9e9GzhDjIeAZqe2l/LFJcnGjHvma3ahvpqwxWrLsCQCGgBbZRz6ibj/EJj6zadUUztLI0JLbT1C4GKKhQ2PBDoYh9LA8jycAeoAnMCISY4XXtAY+EYoumglEW9PcHCJWiAcaCvZLJyB4tKV3sTrC9zEyGshj6lidNAJx0VV8fiJV1aXA1fa38ntZ2Vgm0fctTBR/QvfYmtdDMwhQD/oxUSYZfU3s/GPYCMh+2AQba8IldjLItAqSAsrMcXoFNoipYFb1TvELnTn5hVBb3o3uyET9/JVhCx/+atvtNYPOg8J4waNJ8u+B3T6uqgKd2iTX78cz23dJ3UJxPvt9jueZGHMr7k/EWaLExn5d6ev3IAPPb9Zx7owIlUDrcVkJGiYES6D2YF58YGxJ6QYGmyjVVdznE1WP2Et/5iPHZOkl3t2pB/B4GOEGliEjbsAqWxBh7Fh7QubvRfuEAnCr9MflGq6/GAiGsxR40hmioZBvQ4GtboC5AMFG/GQHhokJtdApKKg8haXfGWVXa54ra9KuHbf1EteJexLGWzPd2v/3A3e2htce414o9c+KqKrBZUgwCqmJ2ti5yPZlbPpVhv4lJm0GEEsB1o28FY9QlFaJYkfeS8O6/2ZB4WrLJr19zgq0NmzoDS/41GblZuxisi8MsPcveC3eBirJKEvrqx3JOOWFZFgJJvNRDi1TeE0OfAEqEsaqyYuyMzqOdz4OstbtajKm2RYY+8NrYWDeyiZftirfcPMHCXr9VR41XwM+dCACbcehh8gFqNRm9wEnfpCHgF3klLzQ3tj38UA57XgHX/jiGof/f5Lonj3J5yLK6635q8mN/dwvEceY//VfUn7NaJzyGtQAdxFjKiGXgFU7XxG7HPorp64IGy5w/ZiJVst+BqZ51Oiu5ZiKMBqkkbxOXhYOFGfIW2XgSycq9eHmuv9KX6FUTR4NdMMfQPo1eXZQSW4VlLOsSpGSIQlbGWxcKWzmyHOHKZicaqwmznzI0QRk0pCx5Hh6oMf4kM/dUFifpyFw0f0YpDjOa9dSNp8ZinuNfN8olYMsI0YYW/vR0Cdz0KXo1+Zp2t+8WeKlz11JOqcku89oTAIwri3gfrQdhbHDkLMrYHyLpWBKjShVRaliQr+ivwd+OeiTv8VuKadY9B+39SmPNGPH2jWJRu3E4jUokNgegNAGO5FaVeRfojubMGWLC7lUpFD4+Moqe1KvNj3/2V0j68O63mwYMr5Rb82wDXKvm8SnO5LCLuhYNnG5pYOPlWQdCYW1yoNNnjfI0NNKpfStMUq7ZUFFZM2rmd45PWBoobedJPS0Pul3syX4fVHblMROy3tj4P9wOaIb1i6qBoWRQGSVQbRQkEyYo0PZ/f/BwuVeFWs9A1B5yloEK/jazsU+qzOHeoECAfGyDZKV1a7Ar7BZOowLs975W4nZAQ81+SRIO4VPhm841YSyoFeZmAuUxhFh5HR3I+msee387L/jvMsNRDuJiYjGn5Hx3ltoZxG2y+u2OioZYtPuBK4AJfP50CxJ5WQL4hhHzSsMLvPtgIunqnuuFDqAZNoXsOn57aeuXC72P7acELeZeoN8X+17bcxZ73reNL9v8sp+ZpetyGtyuqQ6YltKR0luv4GoSzk8igNLkOaTBjbiTJE2RwdcwCsAfL/8r4ksYJg6vNtgkp6As/CHB3mDaod05+vfE2DHHDXpy/cK9QL5n4CEE1rnJYVZ70+hEiO99wrYWcxXtxvjlgpTsDRDuyD5uhWBvBntF3yzeXk5w/b2BKvuPA0Y98kY9RsEv/GVNoa+z9oMyWl1eyhw7DnSl5RHVegTNdW8mA7MwTK8mj7mgRCR5fuCA5Cj8Il2kZaAAcnEAky6i4eNPqQ8RFPWC/rhwpMBD38gSOAPS4HScVXwHK+AZUhooW9KNpF7jXRua4TrPMslIsrj7XPANp24ij5Vy2y9VP0x6MicUb4uVgQoA6uKwU3j/9DRsPvnhqj6Bi7BuJ4QU1fX8899NLPSSZUzYangN9XEWtqM91yR89plsVBGMgJUbZtMCppu8AZKvYSgaw+s+L+EUW3kT0S10ugOUW36zxplfNW0zUvfL8/z6Xbkv70R/Tm+G+wv+G1lz7H45NVrs27P/w/+KRTxVq54tMc+F4LDVaPM7XaXIZgepEogvqcoMd6eA8Vu4gSR50zHUiTj86Lccs9xKhZ+iMg3wKW2odiAtgc15jbesu/pw0LOcO9fnefgMj2loBrgqd5CAINSDjghtnKrkxSyU8J4LiquLUBC2xxMSwyKOOTZRiW9rD4sGS1fcYtkjS+Jt3hPJo7ElD7Ey67Y6XTgNfUjc4DNbUGefVvAMoj3cOoYNB/vPn1bw4/SdUICQDmnzaeaI/ck1Zoa+fU7RWYO3X8cPyB+SOqZ6Uw50zED0eiw+TwFf+QrJZGJFG6+JpcF426HFXaTOqo3TgnqGPD2qUgbZfrA1225BEE/N75UNGAc1UhNcPLDthsZdh1ds5YqYOiQ+4xaL+oHNBEyqLwhZBtECSib3Yv3TlD34LmZe5VWfXTPf/b+QCQBH87l7zZYpyT4Mh02ra0M/pxWhZq/NQql+Z5i1Q54w8vQkzs4nh+IhMKFL76b163QWFh/hZ7YiM8L/gExMHoULW45vRKziCpsYOwLYFKqBf4LD9vihYfq/zxYmuSe4wP6ALgLgv4Fr52P1OtLBA7ReuxHTN20EJnqqRZyLteoqZYSpw3ROkl+5kB5Xd5NlLHnzzqlTN5jLA+LcalLeclFu6H/jnFsaThxR5igRh2BA9L03cAH4sSMbjwGV7sNMYTIKxY330Y0IwMs+tSGidg4d2Dljc+G8JH6mgGXRgUfBVV3/elEyrjPd++MNwaF2YKGS/l1mrDH+fk8LtR9bm/nmCJ1u3HlZb9Wj8FDawnMZbxndkWRcZocIrA2mVn2bYS77/EFT0OAkNMqEbBCb1AIOnAyvxuVzsMP4NQu9FAh+q801bTlqjktavSVe7XnM2ztVB4ozq3JFalzW3+IiblphZYk6YfR5Tqcu8f6MqQWw6fm25BPmjguhk4JX8AoYLbEkZ3l5C5+fL3wYKYFaZ/rANQ7xm5YPP7mRzZ545SseRB2RtTrmxyxlaE2UJElBJRbJcy03XNAG//49A+fUv1gjS57iXJCcJhrGxJIs1yQSlZFR5ORFaMrwYI5Z/Rw7/r54w1rAVNGpkUkdVH7b5XRZrKjHFacznHLXY0zlCYsMsYMj99368wSy/U981VMTXyfAP25ASZc2NAnn0poOm+dV2ah3ZYYoCM1d6DPNXnF2zKb/srd6rRAhMWNWs1YqevsXwT6Sg3UVGDBHcuMvd8lv076WH4b1Gc/K6W8rbJbZ1qSd6WlpXHnFYbdXcV0pXiAn6+BruOaAXjs3Q/V4SQqj/063eUbbR5jE5ytS2Zsrk3cZJwc5K3lomeycD/DMhE5GfNsgKurAV9qX9LUdCc4AStq13gDhKhwrGEZX4JFzQy2bAExr2ljhJtKg1X7+bF4YYhuqO0fmXb2vBT4/Df5MhWRfUKEJtwjKQTba0lhKGfXtfsN7yO0Cle0mEQyjX9Hr3L6gTv6er0hg0oD7SL2zJD81OoqiPCc+H45dR25NRxFOcmZlb9JUdN0sNM+NvLQ58m4WGShm+d2hWwhIpwIwBxll3Xpp1tEt3bryyhvU3ryabC5jESGoCt3K9LtmVsUrS9lBPNGDFIEx3d35d/8urflV/dRShCBo5RMTbkfgLAnCiXxKl/VoNqIMNWBCkRQKRNGTutshijyMyL6ObPwAbNvDoOACi449HuLFdF6DubpYggsMBHLQVVTrWdmoUUMPRFvphSDbym/ITBY3ZH3M5nk8C4guh+zVHQcBGKKoeMSi42LzqQJshULKxTs7FqFvXEGK3A9nmokvJj3/lFbge38tceUs9Lx90HvJ6+jVX2eqnUnOwq2v0ZQdD3uH8PD9i9/IWLKYsINj2tz6q9ai3SZ+ZjdHgX1msAQPauB6A8mzq8S6rzgvu4jM9SnSeA0pzMi2bOVj3rm+I964wap2MqHul4EZpXisgbzmmlQJFs8fb/p8ZnB3Eedvy5dWdb6JOpWzHZUT2eZbwxzFh5qSYqNpuKrFaG/Am0rSE4Jn1cqnG/tNh168ab3HhjPhme7734Sg/VyB0dCEXVf3UCxA6wddRDIdzPiIq15M4gbCl718lcDEXzLKxf+oi4F/fGLYp+dfo9dV2WCpFXxmmz+Aj2RAD8gJaNpltSDq0d5wotp95JBXGc81WB7B+8AC7ei7TQeJaoURMc7fliKBIJRQwBDwTMnOdzppcndbnjQJuSaIcthLHiR4inIHyXJ8kWWoSbyCB9TbxUl5OeEUZ8ojGN8hfK4netghPdPb3qusimd3hzL6GzwToybnecBf1zLe4njLJ5jS08/GaBi1BeZt+zk4rW5gDdA7q3DLGcFoxGPeRHb860b4KtI432xrzfMqB0airNVWePyD4d8CUnkoNNTVGxDnLBXHqgBjQ8Ay2shv9rOV4Qj8EPI8eE1jZEsnE0UvO34R5nVGX/oOflnhoFQ7SftQvM0nq0TGN4kHM+gguUKZJtEdXHUMKZFScMpC0jSdExO+1jwbzmb8cgaOKaiASMt+Hjz2yI8ghRgkfh0gd5fJ2S3fGsvsw9mD6Fou5YtR+UJTne8UjEzIJ3X1Xca26VcLFB3+6w9R9oU391KP0j87gSFbhHumlSwst3iUxd4hESKJ0AvUBQG8ydGgj56WtKIwvVrCmHV0Ai+KmXG9Fswp0NmPxyh+ZBepTbKzfAwhKDnOvZipVvDpmb7SpsnsBhwa26i5GPbyzWZDmIlCRXLBnsTpjscccTe1qPS4XY+Yef/b60eDt9Yr9plok85Tni4BJa1qh4/EtrOLTuEubJXxNQMhrOkv3UH0X0f3nAkwcBgJ6GZ1eDr028PRDpAJA/MbQUcIgbxn65YUbFqsiwNCaTYKf4QpjtwdCr4YXrMKbTnCwOtaXFWH2BU5yAf6bQ/LCRghOKh7Ky6b+U6FoGmrsHA8ixaGaw7vIlOQ4JXUqCtFnxKmvOwY+oKIdUOU9Y1dfD1Prz4YjvYDRRGqMEqQ0QilvRSdAAFDVUlQRpj3T21U47PAI0RgWg6iR4CmzeoYQzG5R2DTjwRinSPCm8KU4ecMOXPwXB1cF0Lp+UusWyWbnY2Wi3PozjZfvoI+Cc4YEZzMrpx4de5H+XEzJrXbPuVudv3banGqO9L6WTxkbjvmhfFhgjfkLtmnKAs3CpNnhjpWI/w/S29MEMFNchl7LqE9tQcmlI1OEnaC4H0nlseq7cowlu9Lhv405E9gU6mnfSiDNccPYmcx8BEcmoqKED/X1QecXMputntAYV5iOJONJq3yUYOV4yjeFnkN/6IyySpXRNztqTRhcXesZck/SZduEi2ltMVAl+OptGzhMA6pwwTPPdIMXGJp9Cp0zmg1ZyVNASrHnxj3JjBZz66Aeoj9m8uwrV4iaK0eQ4lhUvygLXCCOnjf3i8jEXhm/o3bAm1HPXoDSUFZHDO5FmVDQiSsiFvIuTMuAiytDPSlhESc2Qw/HMCs80jlEM/avI8fTzAVCiAEUlU9PtB2v3fumST4V1rM3akKSdmQQCmQoB3fRTF81Z30VkaJozmsa9+IralhVY/n+4w2gjHlcVAFEF30OsDi2EmuHcuuOgJYTAwHKAdFAXm187J7oMtFEfspxAu+r9GRDd/iG+t+Si5XXjNyeA5JWdNz3gK1HphF6YZldl95cSKl04K+/QQs7kBtx9wWsqYN5VrIECV0x1gYyI0H+aIEi/4VMnXqVTZdAVgZ7C7vMQe3AlDEGzCvAkGXDdNHtIG4INbBx9h8rFbqUURpjCYkxli9wF78AiOQJ9zlBQvuDHxzY4l3HkF1BwDcgFbgc1aK61OE1YwLhQh7KcEtFKU1wanqz0OTlVVZqXjNbU2JFiYhQX7bQyLU6rPdNk/97R62liNNysEfKBQSVvBOn5odjN11hnXq7GrlepYK7NouhkpfziahJyWZjXo7HsiEy2xDri3fg50hvnV9IhlV7n7/ZLWyqlMSHd25SnxSR+g0D4NijrOvkmFpqzG9NDFknDSudWPYYJS7E7NaVk8wMg54yhXnKenxD1SobtovlW2JMLGi62gze/8umfdCOg1tG0X/voReS2Ntu06dZEThq6pH9pT/fXgwKHv4qIV3VpL7ERCho0BizS6NLJD/y/Hm0EcO7TbEBvfpf7eMNmWr+o7i29q2dRH9vJSefRUAiuClT8ksWmGNAuP5J/pud8OM8ulm5hL6sYmVU8y/h/Xm/JH9CZfm2jvGxlRbSwTU2laVM+ceAbK5WV2k/G7duGer8rlQYvavr26kAOIMiY0ArZt7iWN3WbDVxM2Pg+/46RggtD0NLfaputvrdu5qJ9pZ2L02lfYPRnFgFmLDWDZUc+C+nyIzIZ9aBj4464jnmgpY6emOtbqqkLdwSOAliDl9foTkFJ1kQLsFjARoesBoKj4LG8qGpHmtP9bifF96wLbG65ezwwDO7rJeNDNB9gx3waY+kcAUZyn235XIv3nqmvdjOOAWCkxr/nRQwC123Jsy8YPZt9fzq9i9nFMlFrXsDFRxFIPZqSBbHPSp9ssjS/1P1qpjwiefnEXnehY7iLNiJ9J/BzjMUzppWHofe4hs++gHeZ6aeC1krjTX8Cd1BO5DlKVblTcqaFd8XcG8K7TMT6KeGK10ZHe9WPoaNbzJc8KcoYtecjWErXQggM3c0BW7JarDeAONtAWqwdmUyXpyilhiaBLgKVutHnr/6/ZFNOazrmMPk6r/B2owSuBIFnzleIDVi4NLvmtsqxwQe5qAAt1u3cVgK5/WdjkRXicziQK+/gm/uQULyJ2ugBl5CO4KCn7UVvizPG4Iqus2iwWyYM2qVpmr2cOePlPPe2uOpH3gPq8QEY/EhmNhDLLbK8rqtzMJu3Z3Y18FalQtj8YXNF9GmSAwEwQsrU00WyS30/rY6edL7sEYJeavHpgRY/7HJt14KFpZ1wzJB4I8pv+h2Nkb3KCbchpkuYrHZlqiUTdgcUFh/QVgjcYh3tJ5cw1Oc0QN0AnvcxsX8dC/O/vOmbLieE8QIt/e2Ayb6V3qdddfe3MO2kUXt+ukDH45z2sDoHS455FpfKuVpzvKo4K2KvisiJ9hUaGUbvYgbyiKWkK4tilx+sIriFh8y6wZSOZWeeyTR3NcowFN5kfLBlq5NLE+W4z6dLjN5nwy6HHh2yLRJWi35/V/07v7bq7c+Mtx7yXnGZRkGCgze4FEbn8OLwtnyIWHHDJ1KkWi9CMWhLwayR2h8m/fClQGaarrc2LGfVHoaErZBgGzS/vwn5+9y6lX/ZTWgYpRwjFZNRO5b4F7EN83vTfIk3Rsg7DH48mLEJGxLuwtsGXB+h7sg5yICgCxSbuEAlD9nm9wleHzAmgiH1rYwwlfPUtjxuf4d+02V36kpBHwRgRI9/7nsd54M3/jw08bsnVs412bCqNSGkWLpk1BXl/sfWX1j+YfQ78gwmQlBpo/vv2O6Zb5MipF6u8+Wr0SO7FdK5n+MQQzFcGSHSawOwGhDWxpvAh3+2hetEPK3Bqhszp+Qd/uIOvAUqeHXTLbzRMzIkZ+bF2Pjh1y7xVFq0ybRzdcuJgMdHr5/5hPk/VCEloVHtECRti81O4HQ40ZyRUhqwhwFQCaEDlxutBR/XQY5ofNMGuEMCWMHp9gOAxdjQr3C2JibV69Xn6sSQjs8x+rzsACvEdWfx6uQD9c4OpvfpB1BUUdqEdKDmgA1gsFgVprBH2rzOPc9Bp198qZvgfxCPlI7heuyskjjwz9MP+p/kbHMKKEChDOe3jwAgKrb2YIDunzOyi4xfelWg0TENMh+0Kx4lWSgG2Q/TxkUFOJppRjvzKFs+zt1FXs5iw2E9H7GvhFSSiV+GFzTmDlVteo86ZhRXVnSbPztbE8r4jHwACHxNJpQ/nPQIEeJo3oxR9bQwA0JG1fOVhhaCJlcvXbHt6LEiyr1OY1uKM1tcLo6TYsCiDFjrtEJnRxMcujtWZMzcbrqRIA1GBl9e0Q0mxEc6QQUdG1uLnjY0AQK12OPpFfcTTi+GbKuPB/JFTOqXyscVDfWeTrjrON3YID1QAy4YsecQA450y2oPGxxcwHolygWeLMlaHJghPnYVHlz4JovJV70I9X5AUrE6bDkFod7MA5p89LC2s85JdyuY5AjU5kQDorWtyX1GBJIKTMBsPbUAcdvZEF4Rfh6Jb0P2zzIC7wSi3aW7/sG3VCg40tqK1Fd1mK2fr0TgfHfx3s6gtfcvz2p3Rrh2hXDmM3f4heNNPkM4z8dw+SLA70mLe1H1obLU8wpEekh4h51NFYo/okJ6xP15IqFAWRszWLp5z2oIk40EGRT6rXQI+ulzb9eDaXCy/FsdF+fk6nWZaS2dg2iu5TYtqOxkf1c8zBXEOgc4dQQVE8Dj7wk5JaLCrG/rjtYHKI1g979DAC845jfdp5pWNDeNv11syR0dRyEh+T/Nd5tPuc5e/kyE2xi1GlEyAE7J4Ugwu92hnMZtdAvmBaJc/QeXGwlj/ifiU9lDtPm6mLepnUTGmzPvcT6m/8/Ic4VVETlqgkGuVEiJ5X40qwEqVyIjOFefkdPNwzYhSQwjZ3cApblqylZQFnBIXX76fbtbofKH6r2qRyU1oQJA4F0fKvFCQeEJMHDu9NnMpdAwa2xLscXR+CLHB6sVUKpe8u5rqJHtDzjCbSlyoXx/TcMDR5feIMQaArP5eO1JyhqOFhPuUeN++61GJOAk3AEzDzDPqc6gaUciE4Afja6/+g+OvSEDHHg/JM5tGgSlOuriAY5yWXzlPC80bhQkFM7qZnYXbxmnp7+KVGrNJbpidZSg1ocbfvPb8MeWPJ4ylUik1A6tF0mpc9+/KFhJMM9voPimj1IefJbkvBl+8+CeDxKn7biE5ZTLc1Jd9cE+KUYsybkxeASa7HsiB2hzIM2miAgN3B1ircMcka+X5l4Hz+yaM85UbOxSVTGIc65EtSye4VbG8V5GIEnMZ8ZjNeTzxDY44CH+vr7CjUL5aLq+I7of3adHUcF1usFK6+e9rrobcK0YIx12WzMSfP2HY11XGiqYAyDVXRJy5/9tX3wnmRmCO4bRDwX0NsenWLUq5huP7eDO3qswbNiFdJmPmGy02sCObCP8J+X/5xYc2+al4vMDCgqX5ThhiNoKb1A87WmEhTXCnVJdWVHuCCcitTmf2xaV8nBRAUXpHcgxfcRL0UIbbea1YCihsl3XJmNWku94s0pa92tY3kGVUbXFzlBw0w2qKKuH8TiG0yZ7b3Gl6TvS6XlO9HJJ5E87AyI/Y3Bj/2pNODdNxP4Q3fBrYKueJFL+2KrpCpALfw+53m0MY5YUFHgPbY77KDLxyaZRsYZQ8T0aDvKX8dv1YXp9c1K76a9upOrR2+vixa/zrPoUfKmGmG20SPogvWc6YGs6MJhGzm85BJG8Kb7KfCDPM2r0dmolD39NYBWbn7G7nxBzb/32OaREkmRfyRiIRZfOoCwL2iyl/V/lnwHl0kppbP2ZWEtNcM8t2uAjK4Z9z23gDI1i1AFN5xb3ZqdHgbERzsjUkmpvOGlHUCA/6NlhlhgxtFlLM5zD76U1Hfafq1yCYJbKA9flCe+f1AZdw7YKowopD9neCcSkhQ8EsJwy1tVai1s7TZu6xaf9bfHYGebklNvcp8wRBzhjLiE1bAKPpummtmRQLyQ6xAPxlM6GtZkwdUZhKfvsnJkrtgqD6lLiSZX6hiaUE+y2RNdPIAI0RUL7pdfdraMH+ynxV14/TPViSJEr4lpbMvefaefd4XBwjQ1r5oBUKdy8E4GlXwz4j5wkGJKSm4CNzIXYc0BLqDJFDjXpxPD/UtHmnB6ExmBkXzHCKVpfKVqS8UsRHUhQEXODpjFhyvjd44RCHM1Ac61wOGlXp4SG43ic5AidiyEStYUVqp/r9QX43iLpkuXaCg9Snvxz+87PK5+YMl1lBwXQCo+A/26TScS+/sGztaUIyiD42A2jTlBH48JjC5ui4Tj0Ela7a+PQFqjovdvN5ZDnpC+PJkyhMMWUKYOvTD74Itm5ZV7BIv6YuNpmrutZ+3EuZ7uLc4+MvG/C3+3/IEWlNDiZyYkNpQ9Hi5wMu+1n8rk7lf/pfDmsH7E78hMobQdHZJmGlCyM099oHXjIZSM1OdpRYuuyg5rC7m3jhL/Y0fat+rYWalNx8l2QZj282T2W1EOprcuT3EfOB52n9vyCQoZYKJ3YaUK4EVEw+Xh/qROD+1QQmRSUB888jCpHrkGb99u3GkCIggTEYCtodWPQp0LFd/Mw1S1GqprcZTWcoRBm+TGxD69tZ7KUVPkwkfDU1+A6krIX5vJ5t/q0voTj30AmY3JByvD/9j9vUxODHzqnhmj7ct20IAML2V6LRemMhHtiXhBTfwI3kjCvCjFeFiPG0b39k9IHqS56TnOpVUVWRmi5vwFunJfetvgnomH5f/LVdjtkiedLr5Pe+U7lXbZYGRDz75Rt1gV5u8w4+mHuiahL99Ve7/Gvbxs59FgRKpgeHMKlmugJ4VfeJUD8m/UIMnGowtHcggFZoEDrPtBqhwwapnFEHrqTcfNsGIqZwucqv5kuKB7/S//Hap4/J2RZgQ7Vm+ixbNEFAJL9kuFWgfMCWDxLmk5AXYhSuafZl2SykXNWP//Ry8/iojOFXNPgjhMUTd7LvXEcrpNaiGqoVnpx6wYVuvgiAswulMslzY+p22HxfXmJjwQ6V2hKYywatgq+1BfgpelGcBSC5BF6whaBBko1/oxSp/X5OdDplYzjS/obamW+enXtk3/ycBJFDPq+IhfdGNZ0LEkdQ/vcl4ex3DKKlN/JhDBQk7WhMoCCkBwVkCAec4YTHTQUTesSThdhVh8yBeyId/A6oaYIZ+MocNtSFWicIqTIJNGVC3//9PrKKNLlBrKdx4KUoT796+FdpQvHHODbrRTkY24vGkoRiYxzyAbHZeNyvud3AqHbvT4urv4VUbHYc2+USlJIC3GypbfvxK9DCVHGNg+fJ/DSMEwKC5Rig8EUci/X9Ts6wgHg5tfFt4f4/nOJ9ak9J7wQdVUsMSOJ6GLqfbo2F12RCwNtOp+9AvaSJE7BPk4vDB76LktSpslLRcqTQ+80/QoemH8eaf3hBGAaY6XYSekRc94JAQUlqmnm7dTlXV6bsKppv6yl24ba3ojR5VeIVNOaLc1qzER1VVpP082+7qu+QAzXv7gFaFg3VNi5nsBIU/E1MmWW168A/BmIqLCWl/kMlC4difSpHoSXxZpa7iS/wU0f5pAcaqXix1QhJfx7yeSBzUhCYhGS6yEaFXhF7wP10YUJHRjQ7No8qtLocBBMULPzcuUTAbybbgkwLHZAHyNiQnWyla+0paPKVePGO+R/ojzDyUmrUNlNwGSpnim/NUaDhn6bQUbp4oDJX3MzbK8sUcS5OZ9jO/eTnTHFW3XtUZwHcnM0Y5I0bAOxQpG220zHysukNkDuF47+m4lrktaI0vTr1HGDjk3ZBo/jxmZnjw/fxWnLTbNwrqNpfdgWOx6xyr3pcgjMZIz4WBHp/aQYfq20se5OJYNK+FEJXnOknQO+Br52v5ykx/2Yf+tixPLhdsS/DPfO8oigzo7J/zgLBT+zUAq69evDMZCpOC2mD312fa/6ud9MWEoJc1G2ZxsF4QkOhehWMCVC2t8dmgmfRKLPg78UyYOI4A19cCEMs69lpfwJL+IZhmntpfZFVMMg9hPso13yls8l++3dZlCuUvVs+Mi3v2IypBZ+BHv+PO40PntQm2VXMGsRUb5Yyt1Xs0hXr6gGoGdzysaqo5AKhAYhTSBhhdmz7VheOpJ80p4mE86pQksSMPAVDOAcVgXYgQW5U5HPrsy2OYEB+aDhuxe9cu0WVP/6mJoAfsRzTJtyQygtIEB5YKlEDUlVPBz+bTyQUh8nhfRgEGTB5hvNjaQf3TkO9MOZLnSB96CVkTHR4/2KNEel7VOgpDzsNOpVxpkSqurebyeIeW7Svu1RGET0+FfvefU0vZZqWC7BCEh4MqH+C47Z5irXQpE/43MzVTLB9EN4/rBuyEEA6CkTWVLrzBEV8KY4Dmlx2cOV+9yy1psu2w++PIjqS9U8AYqdSgYMa6fiv9lZYe3LnlqpEmCO/Dkukgsp9HFtqLegTVimVS7nun3/1VXrs6VIFgvSDlNSTdVNvYtwK5lcTzu29LY1xh068VefFZVnXQtPAmkyYDr/LnZfRuZfQJGZ2xxZX9i6vG22FCniQWPy0PA3pFCEIKPoY5UZpdR/5Eh0NorXBTI+4GUueSSus8M+ns6V5CbGpTLwPWl0HXWVD0KnF84slo1Rt5G3kYP9+MvM2bSGylud8WEC+sk/uxVNrhD19hGXq0fJLE4KfDFJlkV4DsR8Wi5Io2tWJJKg3gg4dvnpia/O7iCgCIzgmGRkKjiej8Jkf7BZ9GYJOp3hBy2KtQ+Dawb3eKFCl/iTVgqh24ZNPz7S1O1LWHEwgupA6moY1L6DjbscaQCuH1Mdw2oJRq8/rqsWwUOqBWs8kVg6XBs82moesPmuvrBUKI801HPgRk3uhtcWqmZbw55lZo0sPy4RdRR7Bx5oR6lboU4Pw9RaGT63gyHPMeNvfj2lR+y9M0sMg93svXgAc3Xy2tOfmOcMNSstleJ4s+mKgAHz9wcdgR/iVdciQa6OJ/Mu6oN7UC/DQCyl/N7rUsNnyw3MEj6FM3f97gAZWiyZnBqO3R8dd12Q95TRUMBBHNc3nPCA4w5lqDHbhCCKmlRytjjri2Lsx7YGWwvIztyfIMq5QECmm1QKAFvnxWBMJNUwL/MxVPiOHXN9JuFNVwUrQV7z0ffpWLCL9okWdLddfIc0VoUAdnB/FgkfkmWIz0XOlDIDe8yyOi0O4PaaD0bEWtG32bb3cDhRu9r4gkqfIi1ef0aLt0mwSQLNKXyf9rrf3oLhrhmmX5j1c+8ncg+ZKSwqVHka3G5Fcc/5RmOQ2NfUMjTkYghngKBlo5LpDAOVZHKd1UutMhBU2cbJ1lRd5nOlm5pXgMp/TKh+ImE4oKldOrg9tr9e7nVdDtMUivUOdtZSkj4z7oWkX9aYkp3OQFSPE0Yttc3Ljg15sIdzfbxI0b51lFp+K3XBLWRjeyhl4tQXH4TcmKpTrh4Ef8BYrMIMbEYK2JjBptpbBBg3r1B05CHAGyqv6tXQ2jhXd5MaMKCj3cDFGGjIi1FKRFkqSV0KbFmdbmWOylTyBPvjYB2+88WnW4/maz80zYqJQNHEf4cs5FFH4lAPvgoHbAb7xiY5VecCGwcHJPBmkXGk7VQa52hslrax29foxCSermqfTxaaGg3HMQCyDtGQS61aLJftseWv5QKw+gJWrUpXD0VfPV9PMjkfWr3GjMJjE7mQor71wNNC4GlxpCt6F5rYGk4PfOXS1MkYZQjxjlD+c3223Syoh0ZdQZlELYZadj4CNeirIv9UCNy1i9aYBM4BJ5u0PZDypcoEoCO1jAKacILbt7HdRo6TxNOv/psqKIJrwKzlZ9NPHBFy+NU6gNCL+yTCW5FcJR8EMzK41M+WeGRkFMmEckzE0gnI/UWJp/wjBmsnrUHFAOyPsPQMS7yTA1Yv0NBmwS45tstwLkFTq7OFTCUyBy3wcw9gAADfcJaCsbQi3br/XQ3Fi/d00lsNxp0BeDzT89/J8L/L6fLhBAxtVgLKaHdevVXHrdZYIReSJQvwzRuIxBGDdMWWUySG/kMdks5LfxZjjHL+NQA8RR70SlGclcCUYRr6dwAPhABNIU1vcHpUMViW2et8XPfQXWwk6T9YtzMokitAqSmiUr3aqrcZ2r5JUj2XDV5wD7jcPUITpEYkhSJiudzxtYtDBTQeR86cSHmFG4HjanpX9pAw4KiFEYjUSX8ABTmTKZy5wZniWlMVQA2rcpwrRs0uL9qt1pIf4iUnliqoE8nUesdS5ngOBbAGnhmViYNM+aWBGRLBgfIHOkJNEij/f/6HjpCCu4xvxm2TzupMsiCDOxOJV4Qkgw0k7WB8A0WDE/WQbE3HOfq9uLSsQeupmWTcEAbvklxymgG3WVQhs56ttYtSFGhIPG2Mg0TqzCh3cwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="}},"time_used":55,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":55,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/i/77/77/08c/3408c/1276x1189/u9c3gv_1276x1188_a97f2437a585e9b2.webp","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"imageset","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.933Z","timestamp":1785161166933,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /i/77/77/08c/3408c/1276x1189/u9c3gv_1276x1188_a97f2437a585e9b2.webp HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-length: 26464\r\nlast-modified: Wed, 21 Aug 2024 08:35:58 GMT\r\netag: \"6760-6202d6e651780\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":26464,"size_decoded":26670,"mime_type":"image/webp","magic":"RIFF (little-endian) data, Web/P image, VP8 encoding, 1276x1188, Scaling: [none]x[none], YUV color, decoders should clamp","md5":"18b794521cb7ed18ab51bb634806eca5","sha1":"236350be3f2f395310d075e9a8eca8717e72a083","sha256":"c4fa967c341907dc10c4600b6501da2ecbf365a082276e1ff5ea6f4e429259e8","sha512":"68821f833c63ba70ef144df357b88003640df674811e94386e29d939faf899f80ddd27153a83a70f6672fa8ea3cc04aaecb56bebc46ded124151c341bdeea1d7","ssdeep":"768:LK8jIU8PjsqXZKc2WeDMa+qu7rZEMtp1yfkQPEDQDv6CY:LK8uIqQ9kJtp10VDv6CY","tlshash":"1ec2bed5b61eb115fd8b36fda62348c8eb242a79ee3104d19730f23a3512c0dd03ea81","first_seen":"2026-07-27T14:06:41.167088Z","last_seen":"2026-07-27T14:06:41.167088Z","times_seen":1,"resource_available":false,"data":"UklGRlhnAABXRUJQVlA4IExnAACQHQOdASr8BKQEPlEokkajoqihInJosRAKCWlu6/+TV+teqR7B98mTdO1iTfhpwDWMsgjCb6X7M71nzX66+mtx35Yb6/f58++FVzVnV95Obr0LfyT/B/v7wcfPF/pfSX06HocPWm/juS5+df+N/d/8j7gvl375/pfy29G/x76z/T/4X9zf7z8+PmV4wez/Mv+Y/j3+J/gv8z7B97/5l/C+gR+Ofy//Jf3L8kvjFiGdhKC/1v/MedP+f6Rfx3+y6cfDU/jeof5NP/N/9fTD+if771K/7B+wYbSTRiA64bmybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nyay5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5NybkjjAz8n5Pyfk/J+T46BVyCA3Sf/ezjmaBC208ZTwRIiREiJESIkRIiREiJESIkRIiREiJESIkRIiREiJESIkAYsjn6H6cze3ekhdp+MxPe9gdCk3Dc2Tcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5NUQu7d9/V5M6w3vNyo7+9BHH3L3+Aszu4bmybk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5NybgLNubf7t1PHk265sm5ndoOoFK/BMWkSeuTVw3Nk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5NwFm3Nav/CkDa/pbSfaCREiJI+Y5Xc8Amgb5E82s7QSIkRIiREiJESIkRIiREiJESIkRIiREHsugnf/0Zu7luq/b+8U6sNslh7poxAdcN0wFeeN0Jexhs09kNTam1NqbU2ptTam1NqbU2ptTam01Xkyujf8kYf+/sG1DganxvHf//w9nVpJ1nz3OH7MqDfCFyqMSIkRIiQMnECgSm4JuxVpam1NqbU2ptTam1NqbU2ptNV5PyfigWbfZRMP7wpp/L87F+p8r+JzBi/MLhaxZ99kUIJNYB1lkAqf2861Z4d4xfyKn8Er4jEB1w3Nm+2fv3eiliygXD26iuSaMQHXDc2Tcm5Nybg+1Od72wDB5//843f/w0Go1//9hf//871jbK3VSzUG++BKXP0OrpQhlbW1TkBRbVfFM+PNBlvxkmCXPBpdhxOfJzlahlZ6ORSr+pBRgjNxgubJuR9rQSrNqNgmVAObqdwA16zU5Q4pWybk3JuTcm5Nybk3JuTcmqFglv/t4n//tkuNsCr/rd///n9tt9UkBnppqheGx/5CRATZTz9XJm1u8DMT2nK6f5DjFy0LfG3tArRYuv478FNezAjy5K5s+DEyQhXz+3whOhiKRKd+lqXxI7gEv7XGBQrx6+/1pPz8bmdO0sN2TJM8IAkHFNRVGoIHYBi0l12kATTYx9xxhCbvIEPMN91FnC9tVIiREiJESIkRIiREiJD9F7M77/9xE/9O+Y87t//3YB4b4ljOH88DO8GDdFUFNFwX8MPzM72jiQza7gpWlZ1GZtzwB+98posXRNdwliGwz1FlNI2qKf3q1ShclPEvEN7me8/SJj/HNZbOVUP69lp+xaOeR7n4LeChR/KY12L8zfRxo+Gwzsz/WAsDb9IeziyQz+nvljq8BQqLKke3f/zys02h/7n0dyNaidG/Q/ZwMzEi7uIGGOG5sm5Nybk1lybkfYalp/ScFhv5IVenKdXQ/efp/pdqAzPDUt6wyAN7bP/XljKgADCxyDqrlDkWVlr4iKOaP41wllC/ZCFY5BShz3dmXcjzyT1KTnqnvj0JWGRFSOvoJ1ugFDk9dbng/EOzaHKysSb/tETEQi36gCSSqeGXYxts34q2n/9FWtPsYLIEOufk/KfepjT06iHHFgsSOVPqtW+M+XqTbS9TjKH4qTeyqGKD9JMjqxIWixLeXzsx7AWHXDc2Tcm5NybkfbOknfpe2Bez8552x80T/DjXhPMRkohvv3DIP/2MqcIMC1S/8tjFnBHuazfXohtPhhsG6xbLFxGySPjybm6KpcMGIi5KDOXuiboiu7lilwKyWZMNpn20YEkGaKr78Vd/rsZgPyOIYlMedNPRABJPy7vwn3qAwRB/0nhAuisF6Ur1Q4Dn68XBp+T9CpufMn1tvTMjEb/pGaoasHZusku1fyfjwAQmo4/CTYxX0dEFKNuPJyAYYNAkRIiREgaiQBqcIc//n8u/LzOcjVuWx7+IQtO27Wt8Dpe2xBB7W4sN+gmhlhMh9zTZ+48oDyHRPdY8mYrpUToZYNPKONBUQEP3g53GOz8JOUdBI7EwzwsY7G38Nh9e4yGLuwXw2etScT0sVBt0Cu9zSOD90feiSaESU+fvAyCREh92OBY3zjplDP08i7DUcL7eaGKMA3o1IQr9pV6jtxPJ+T8n5MQQ32SP/FPHalDQrV4F8+sur6K/y5h7bCoFlOcMD43UW7/fgtdeu12IcH/IBuCekVT6AEfHFB7Me2V87KobP6RSD+IeN1G2iAd5liACAWmIC4OxqciFt8IdB5E/J+TFppqD2G/n2lskxoxAdhwFPalJNXKNiZTo7bvqI0Le+jsvY65FGEdJAbmdoJESH2hFYShSe9dXZdhLPt1tBJTiVFPsx2LP+UVmrouYHY5tGeX5RZ67v+xelZwc8+PSNyMVV4D4DEYBPHzfTCIg0ZwypgDdTp7u8Hk2GTB0HbfeWSdlm5NyP2wP08KtlkP/QXZ+N9dAOel//i4TksaWD5OWAsBYCwFYE56zCIEUFYKKb07Dc/J+lrq/zXzDfP/pomnCxjHApLA+ZE3tGk7EN2qkAUCReHF7nLTqbeDR4P1TZOOWbiQBiyt+xca/bKs2Tcm5Up24eSK8zUoVhnAHQSNQ9htlzcVAT/y9OaTFJN5c+5naCREKCePJXl9GT2bmLj6CSSIkRJAfJ8hyKo7SoUbjsPdwLOraFGw50bx+ku5uTcm4ME7fKmlP8+eieT8n4vWhU4L7nUB42pRTMgyrx5B5z6aLoizkeXfWaumjG5lCMk8LBOG5smqXQ3OuwGZ2oTVePhY0iunwgOuG4TOg1v2dHfoUCo3GQ75pX7QQfsLe++/PpbK6uG5smtJkX/7Iq7P3ZZ6DND7S3/GuqygHnz/4uYa7m3w8Pk+crjXy27aZb60lIZL4GBTjEMcqM/BpUEhGfmdoJAQ1mGdDE3y102LcycWZdQwPGNWi4bmyilyeyuV6euyk/dNGIDrspF7axqkqEWDimjEB1q2n8xx/ZL6sW4p+0ih64vz7HFDQOcJItIhMYfVcEpmk+///YeNZlU/eOtqHkvBih+L+9nNLHswDPNyxHsHM2B5zGdzZNyQzpraCQ/Yf4cUz1cOceLCEBYCvwJksZn2mjHCwv3KOQV98chDPEAQweCC/KMAeTDCzPx7vS2v3bjcmEZESOIJzJ4UgtZzQsC4akoThAQv1dIsmwFA1O7FJL+YjTr/HVBLRgWSil+YFjysWel6kIOHHpRw7R+2f7YMpZ+T8TZ9FNGIDpJditKoiD8wPA8N2Q4nVLZ/a8r7YSv5H3NrO52Bp4kIcHKb87FftkYj3HOM9Eg7ilnzedt+YUMDg8y9wFB/SE6jhI4+AbJuSJr/9MbrBvdSsTZAwbeGNzJ8LACbQEuVTO/jux3Q6ZOzWXsZRdJzciN8CGh9V28VidRFcXDANASedWCTynlKbU2lnp+PefVIiREiIP1d+d2CHWHqMT9ei4ctcdoZZe+d5L7GG8sgEwGOs2WdAe4+v7ahqdotwXf6RA7Og69lF2fjc9lD2AXt7PZriydbwt+O8O9oMkJLI7lqUDKZVVucr2kA5xqzJ0tG4WpjwSDrH1AfNF3dpp9ks7NDxZ1+/kAmguTcm5H6f/PHDc2Tcm5NUYE0yez6g3iOs/KYujIlRr3Ac5vjx8tRxOG5tJ9mo+3d+Pd6+dL804ugNZv5z//gcGzfXQauYSbD4Q2PnDQ7wFnCBnFone6MNq063XKQ+lVYYXx/Z6AFSCPUTEvz+Tcm5NW8+nmybk3JuTVxWwaalf1FENT1JxxgzOxdZtpvbmytDjW9/4b7Z//i4Yx+7frFlHKgilsMx4xt7rGp+qQDi4b2GbVgL/TyIa3whj6TY07f8lsM/K3Z0tCirYdDTam1NqbU2p0R3i7T8i2GBr7+d6N3yN3/FqGvqX0IE21JHadnLclNhPJ+T8nwR3xuDs6/x4o0mGBucf2fDkFc7u4GO78iMH3o21nE3EgPW+YLcxE64NtMGoiVRc9fbgpGAkT8n6+ignjzoHXDc2Tcm5NyTzPTva3aynJj03Z4TqmvfrCufZjF3mk3EQwcTjH0kga202ptOGwo7t6YVM4uhgq+9ooP96/uKjY3h5NqbS/xGeTiRjrCmfZakC5n51U2ptU8mn6q7s2HmqlBc2Tcm5Nybk1/qdhTw/3oNuHOjf/z33GElZi/Vx2PIJZG0jtFA5L/BJ9hiXPxGTx1HYH/+OmxIiREiYjIiREIgm7grIJylD7Nz11K7XVido90Z+T9inT3TD7xaraAsB6DHHWsOaW3ON5c/J+T8n5PyfkFpA9fAUhj2NS+y+BoAaX2m7H+aCGDqEgxFh7ALyl68WJXQ0U0YgOuG5sm4FrLR2RetpODU3wC0EiJEWchcpoKRXviIkJ9WUzs8dlNAUFuBWfyYg+hkW0rOPUKwovFW2bzLETvhgG2v/Pe6MQHXDc2TcRmc3NXYKChGcJjXOH9/eeg/pGbPBO2Tcm5Nybk3JBIXoVJYcwJHpD72yDbLKrn6WAsBYf+Q9UNSNPJTaEcS+eGAYn+1pWXeZVgXtRvT2vsAalBcG5PoEHFPrMTyII9B6xvELUoJESIkRIiREiVblmtn4rDbF3Kv2u4fK+tCpiNM0YgOuG5sm5Nyap7XXiAf0ag91KkwBjEB1w3Pb11CKUmdDPUaVW+NFDPY13L1QiQQpnALoUcji5jhL1tJNktyYgOuG5sm5NyblS/MxFmAruyIeg9q9nNP+Guka+Jou4DrhubJuTcm4CtZWBVc6an/ngAqY+i3U2ptTanEglcR3PN45WIIU76Nu2WN/wJZf3RGAxYZS2BAmw/KQdbpW5sm5Nybk3JuTclveVEAklkpezQNfaOmqIDrhubJuTcMEWaHtopzKGaK3iN3xqMgT6Xxx1z79y49SIkRIiRSKA1WcnOONTm7ZVVnK9vPqXpRxEi3YKifk/J+T8n5PyflChLOoqJpxpM0Y+V8ZxAfO0EiJESIkAhC5BLv+g0hWXauzB6fgNFF64mkiSyBgXYgOuG5sFxDIL6SfKOC6tdSdbamg44bmybk3JuTcm5NyeZb+ZjPVyNMs0teOhgiG6poS9EQw+JESIgqf1dfpBdJk2t2aVQuoVDmAJ6VjcDYcR1HTcm5Nybk1SqWT4GrgGRFd8GdoJESIkRIiREiJESIk6TI9gTm+7WROSAuMrwfRgprEpP///0/ixNm/J+T8l+CoWi4r3Xsp4cd7/w663FzO0EiJESIpOpKMKOOeRCvrgjPyfk/J+TEVIoV29rkmjECb7UeHX9B9vH06YOuemt/b7iQoLVyf98soRhliNxWO2fU+ia0ZM3qH1yw5EjEiJEQrRpR2/nOWkgbLJNGIDrhubPuMp5WDWmtVgsK1IhPJ+T8n4kfEoDnIwtEilWFi6+BAWAsRTkOlWgElhrkeYRa7BUvCR72KAaBCM5fYS/29VWiQdjR4c93u2P1gF8pqof5w3Nk1RE5VncvCrXd2gkRIiREiJESIhiBA2V7XKsULhbpoxAdcG1olgUGGec9jW8Ysq7Fm1TH1PspsB3frhp+LwaG3pdohTFD7kF2PWByZkEY/2v8Cj0yaCjUg7p87DaH1LIcPd3yhs9lkmjDemD6VRizy6Ijq5mybk3JuTcm5Nyte/sguqyb5X5wOsjuG5sm4JZK4q2/HfsEDRIjrYM2bKTs5s8XEKnakGZSnMGQs0hFo09wn1LKIEpO/v7Q55ZvIu9g3Xhbptpa9fYHCmNL9+fGd4kPriMhooGDQlqB7Z9krmdN9YKLuHgDbMRWSYw/rYk2Zhf/XKP8Zmybk3JuTcm5NyblNIxCAQr49hBi1BkiMQHWrHP42okFfRvjGpQkWvvokpbH/arVVkL0EkiQtj2QnwYiorE8gfF0R0MecpQ3MIKhIGR93wsuYNEGwRs2NaMLjv9CoO6cj+FEBjC4BNiHN4lzZIX/nKeas7GzE9A5q8UT440TrrcF1KxwKSKuWXYdDDFgdGj9kd0RQV+cXXaM1+qREiJESIkRIiREiJESIkSnlT54AHele2L+6MQV3abLw5ePU3rCR0dCRwLB5KaXZUS62QFAd44Ccy9ChohQiNXcjzJddSOIqniuTl6qMBTMsN0YtXqoY1A/oFbGDikG/4D0apVzBKY9g64/ZNQ3999tA28C/rzzseRCiFeXn+W2BZ5E7/tOTTOfWa6nShrmbJuTcm5Nybk3JuTcm5N0n1DQDCeUitTSNptTfCW2B+Wx2Y7ocIDWlreR74ycoTHtTuV9cnG4wl7A7dNYOIAq7zhQfRLHUbSbb6ebsn/23ge7eItcrkoaeglRGLqON3Io50P/32QgRpkMpsinTTfsBRESIkRIiREiJESIkRIiREiJElm39+Y99odBVZLHPJ+k3eSCCSmtQF5VBjgVRi1lg+HVmO+209Ap1DfeWvlPpw53KpQxiUZwQs5pIWXDQ6YE/V7/lXsPr0kgQBhezaVfztH6Tyfk/J+T8n5Pyfk/J+T8n5Pyfnl6Bp9xP32Ek4bU9qWwR/a0lqocK9ePB8rJm9grPU4oYz3PEfoKVfMGX+q5s44+BBjOAjl03Bdgqd+yl1tFK8ocqSSBkM1BC+KkpFkSWbk3JuTcm5Nybk3JuTcm5Nybk3Juo1mtjjXjPniQ+Bm7jtUBPHHtU0wMCeM8CImWfwAUv0kIa3U3t/WWfsODnFBdZmk680Dhxg/cAIpCUZ8VWqCYfErPnFmlUJ5Pyfk/J+T8n5Pyfk/J+T8n5PygGIa0WuNFZfYua06kSOPmYSk6ooT+WNMHdNAzlu2riOk5IW0EyYaiHiK9EjaP6Qalj7uXyc+95NwS4bmybk3JuTcm5Nybk3JuTcm5Nybk3Juk+1QMmmy5TBJ6ftUArva8K/A/FV5Ifly5OYPfFcim9A4eRQImxlWf4aSvTtDmaHm3vo+8T34kRIiREiJESIkRIiREiJESIkRIiREiJESQQMEGWbMDuRVStM4x0YE6vKeKtjuJg/TjPoWjRUcFH/oS/Dyd14HOx8CIh3ecTz2gkRIiREiJESIkRIiREiJESIkRIiREiJESInVQTDi4O77Iki1jIJFHR6Wt0zBUIn+5b2fDYj6sMQHXDc2Tcm5Nybk3JuTcm5Nybk3JuTcm5Nybk5RIuNxVAG0Tx71lpiSnW7u/Om4rB1w3Nk3JuTcm5Nybk3JuTcm5Nybk3JuTcm5Nybk3CAUxVHsluhZtTPdSgMph3mfSiqyPEiJESIkRIiREiJESIkRIiREiJESIkRIiREiJESIkRIiD9nqyrHzjRa7urYgwLc7s/MxEwy1tBIiREiJESIkRIiREiJESIkRIiREiJESIkRIiREiJEUDlFK7RE0I26n09kwRIn5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n6SSRPyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk/J+T8n5Pyfk94AD+/XEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAao/wAAAAkWoLQ7NDTC6JgAAAVeI9JLaH5Fz2A8zmAAABRte+toEGbhd5YLsAAAYbmYcr9wBsBhcAAATWAV1SmapneBp2e/o0YbjgvBH3VDuIB5/26PXuuzaaxHv2lqoZs1ufKOOslEs9XRNIFr9NA9s+I6w5r42rFegCqmZEw24zBdbtTXdg5z09bT+FI70TSAABxWgBkGyB5H5ghy+QFLRTeZcOkRjQ6AMPFZbFXx+E4KOilR97hUj90Bys0Zq+fb5zEYaBcRjlBs30KDA3IbW3yFVDlBvK4+KyrcvvWBdLSPyb8a4sV0rweFvss2q5sbx5/wHMU1EGfSiGJs6bGYAbLeZ4AATMAELFa73cTt+AWY873qT+7UeO2rxuGY4F+F5FQ6Jl9Uq+Mg+rt8MqeUNRcsMRtnMbUOfjj25FI7BeBukrkOausaOvF07UJkCu154zqin5Mjq6RXoKNFqR5at7mCQRVu+5KtHYCr1Id2kyckV3uAF7Y7IvAADvgKHfkWAxwX6nlHE8Iqbxckql4Ha9+p/uMAxEvLtfmWYMhbXofQhxd5ATepRMbZwwK4yhPSgbDAmRkrC7B5PiZ8rYJdP0+2hwT94usYlp7vW0z4nMaZ7XP9VcPG7JOT6y00mrVhMxAxUYHkbg9eU5gAQoClREpFY5QXX77iNsMVqleH4h2fvA45qb/K85XFCGxO+g1IXCZWLpGssmXiVKp+JlQPytrvjAK31yOP5Rd8vwAIQxUQFqR6bwI4qlg6lW01M/JOkH3bApZfyUvg4w8gvOTvp9QduWIAGZ8pfyBbT5wAlboAB42gC5CjT4SeHyJIxFyGu5Y3rlvn1dIjS+khrKqNkJt5uMzf+cJovAgHy56w5WB3y7Zp9qLe56UOli+EkjjWBoi/WtPtDss92nh7RaGuugHPqictPZdT/YCZiMc5j5u0tyroAsNOjXWRnM4FC9Zl9UGN8+mpyqBFy2ZIgCmbfZGrR5d6zmmp/xPS/Rzh4QANpAHRmckN6bZ0csGO84syoMSZm59Xb8t5b3FSv8TsgDSs6eqr8LZFmtL+BscgwTtOcsbjozPgCpqwMoKv4d0+PmQbOkVxfyWRXUG1rz+6tIDNGhEKBsVdjKcBryciHHCOT8AF1+1KM04CXTSv3lXdQsXKrWCKGE4iZbACT6sOhnMIuNvPTAD1BpCXXmFd1c8RqGlbyr1MzsnUMiSmA5qUFY7Kv0suZ7hEKO5b+TiMBYGYkdLKPye/ovKhkcAEGruiHEV5jJCpbKU0XIOe78dM9zZZwWzT9EPk0uyDlHYs90ajjGaqlX/v1FidpR6YbsVcTCm/J3u7kAWBRnDGOhhWsyyBYv/SDZCWjnvIe32D4DjLRPtH4vCYjRuS9CVK2x0wkQPuMr3M4V0pwdOEARsRhlmyuupI7s8kjC8rKMdktRoBmD0W1j40nk8ZM2YzwV2sPiqAdhP06X0SsFf9QuSr+bqUP8vYHko4KETdKu+GvXdU11FYpWKJCtxcmXyWzyvhx0sch7jtRbPqGocB5sP1eDzqQAyLkDNwX0bULVSb+ToxMIjlQ+3nBfzdjwrLSJd53caTzw4Mjjk7sNQor5B82gAc+847LXCSB1eY3YbJXyJiFPYjDNnqfTnJ7hPgF6scYfjTL5IxJoRa7EA5PDDZgpMOkaftyROgiP8c8bGkRaT5P4sXAdPvvRPoQ4MVGLrlkZtS20ii2W1sNegTpoyWF5YM2LDVIgBg99b3Xalr7rla6SGal+HFxJhomZQDsgOEfF2xw8smrGZ0kA3tDbO0xcI37XVAFaUBWZxnioupq5Omqzv39ZcpMxu2y0Gq0dZrQ4a8GB/5MvkJG6Z01mF82TdfFBNNZ3vvXPMISifJ7i7GAsRc4WQzPaEyKOOcrf7aeZeSrH/pxvCZV0PTK8Vs0GuSaWESMr3Kgcg+bNFmDgcLEKulDvtky7IpIdLTeUo7Uwsuil6VFKwSdjKMs++lxVoSokTTPImpaLLbt4dHHi4ROsGVJXkGNIfgRv8RLDhwd33OE5cEVG+W13DowhXvut0bhoyoz75tgGPfjZrpuiW6EenGGhy0pRg4AIS3rlYhLiEx8CaQT09Okmpgr1+akdsdLgAgbWVsWgUae+qkLCUHjOXgkRUBf2fuVOrXfTFQb4fErMnOyhA5p5OQr8RcFX7Kpykx0/8njTMwwSscWuUBXVUqsNYimur6tq+6BTWsB/QUzmV6+bbwY8sGwNeTahpMJ+Cw//HlGxYmCsFoEOr4FzvTv0MrMekFtviMvrcAX8sPBVxwk2cuGB7OYV1PHYZwoX0UqSNm+gh25LQ/ddLMVGPD2rufc/VTIaIfUYPRyttEkBcvKwe1MAFuweqvx2B+mimVjAC7hWJilYKUZERB/r5ixQpbnsYLD8q4YUefxV9JnCsYwY0oOFYQFdtkXdCME4BzTVVROSA86cgRaiJFlx9fTv6dJPRQQXf48B9gFrjgr7f10/MijsOg7fjWftAJTEDAXh4hwCrPzw9UX74Ew4Y3v2LjMzxKktIFKPb7K6LMPPxGFxXPbR4x0TdcoEVwhv8BQFBQG5Cp8XCiuy58yxjKVrMczRjkrZRpfRKVgEX4vB6jEDG3N5ZrnTbgFcUP1mchvOLmlpVQ5QBpPuM0UwPMKUE7D6bTHEaBzLMThUDY6EU9XF2pDQtD1rF5UIVm/REMwGdpY/Hw3Sr0WFcclESHJRpVE4o1eYPQY27a7KaPihcSdbwsW59Xlt9Y0aCh609hRQQ2VltfduJG8VEcIKDiAC3rxwYLYqru/fs5EQmxTeN1P/WB4rs3CHz9NoXFUcOaQJ7zI/CyTTe3bhB+SiVuf+gCdui8Fw/xLOiyyWu0rCAxYBY0qOTrS9Eis9cpHgU7poz7eHmuSFpITcdB9AuFUqSMBXZgH4wH3nY6hLvzYTCI5UPt5wX88yS/Qw5bQpH8BQMr1JBwnQwSbTWWQfH4QhG85a/kx3EPGfLeQsfhOAxDTkGyV8joFetiX+ulccAzV8+3znLjIgOkWi+SMvJ+Zk18cEFGqOimwUae5UQzUUgJw3Oyv4Lz6qQFIrAIl3Qe5XOKKYWz1k8H2O6ERtuiiZnR55cWk7w4cns/EHqDBxYw84xPAzO+Ly0IUCc/UXZNHIxVPi3mL6xTXieAYZP5yXdg4EJtTYdrfOUOXolevufwFYHmC7zgH46oN+w8oHSj/R/bj1QvLd5S/AyFZXEPLX/HXcngTrm/MvukQtJDLNmXt8HH+CCGERD71JqvgiakM39un7EPVpdkCC90UgnMm2CI2i/0ph5DgYxVa7rxdmUygSfQsg8k7vmdvMosX64Y5KehIbk2PkQocX274t0UL2uUxwVHDpdysK+a7wx6BF1Lqawg9ImVfrC5LsE2r0uIlRDHNtULEGTY+QxsWRJODioGqz85c9CXonTqOkBj839bN69S/wZ8Nn0lQBhVBmpJPKtfiwHafDyMwmzq3y9xlOiGL/+bDS2x0w1jbDJn3SB3uCIEfH+K1LFpSBG77NGmdvNQxPDulI37PpH9DplOqDG4+QpmEgYScO/eOxYCGEQ/ppEMEiC/aWQ5s9tPzfTqizp/n/9i/bTd9rratSEbujKCp6v1ypH9hRL0dI2y3MUl+wz5o+0FGWQq3aBaWHmjiIIywsTYRakqiEYB9ztVcXs/NMUdz6XyBL9iuaN8qYDvU3XoCrZ95Fnk70w7Mp1iGgpQYxVpieDueT1/WNwVv26/WO8pf2lbxocKOOuHqpwcZRdhJGPjAv59smZtxBTbNj9BQfRj90kaGILxLlojJkUMRfqClDoRQPkf5h6Dykn5ULaPnhRv8WrMipIE7O/hPWzrU/GmYvy9TGq+xATFbQ7BMTd7AxqT50dEWQbVnOxS2Ix6b+yNYx3JFKQ9wzQZqugPukVcNjnWjuxBoc0pF9h67ZGiOFQA2/oAYZbwSyeauWaaRsbjbrnQ6m7FLRFZBR3N6W24zigIUDCWu93ZQLm35M7a3OV0JlAAdEPm9mGj1KujkLPijr+QeNqUpwP5RmQHdzNYHZ+p7oQfmZNfYr0WjcZNVXZzsgMctsr80vy1lJrSJaYBu38tWA0hJS1qOgaLAhG/ied/wKaiIy8Ub/IlU+8/1QvXkmnFMip5mZ+2FO/haw0ptGyH7f2bU22CO1RR8TcUBKivXGkBN8QQUAvqKshhgNY8hbqrsGLprumNw6NXzEb2FZFDDZ+sQlKCkSwH3BdlRpLWCViQ/VB+NXwJfR6VBnwJxEP++JQDsGtm+pt7KMS1gGdYbJZSSWd1ZAICNksk0VuGX0FtHJGPdHUELWv2JVnoe39d3gWFaAEMmFXIiea7b3eh0qVViDfM1myB0eCLMsgIOeJkqU15Pzi9CTmoJR/i6N7QXql8imEMwBPnVYGnUQ0gAz3BuBO+MvRRJx0EKrzjz/jF0NChBUZrSrBKvpGoxIa+aBXXfe3ueDXkzju3KKLo3Wh9RRdW0P3bKhUGkOkk2B8Fk7IiBGY1VSdEoEdpXQiueOhUqyZO3DUbwgquspTqIvSFqqk/dxqy672zazpBITzIiJe6amicGg591OKYHz8iK0fVn+z3gnXzfc7CanPCuaxfcmAtcx+h4R5Di9LjEcyTtv7LpOu4gN3aM7msZhSHHqtuIh5P6EfbDZfAfK/sacTh4WjyaJqLm8jOPgwTPVBWrD2VCE/D+N9g/jer+9p+Fgmcu4bFubANjYyNVGFGRjt/4TYOVvJThP9G6wfWbDHX9gqL+lhkBBxbPai34FYF7SCfGcAA7jsKDY2NGg2nQ9mNfdt3eO7+ztAXAULwldTxpLTCZ6VBTuvL/mJIQ6RGDPFzIFcrgpAwHMd/6tvZkg6wQR3YkCBCpuTywLxCM78VzYkweV6IjIlmzf2wJJ166uQ7+kBzmso0DKckY5EGdGawEDpYvWiE2KSihMWL/hbMhIPw2eShRfjoSmPqyKmJVK2t/B4nLYdf7iq6Ndk2PNjOkXTqEnncI1jWMhHsXlrzLCSClRteUJM1YheClnw9PvRTT4ajQTCX0NxPMsmhXj7J6FgTyMLG4mW3lbQR7YP4spicHorhMViiUf7GWZbJp6cHVEf0EJmg15PgyPaQXNRCysPuJneu3xJvpWGTXzLSoeD+Ypxguce4uClpxK8KCyxhxXOgjpEfoAFFsRX7msGBmorMCJLMoPduuLaEyF82dnoLWnDXYGyBQ1jM8D97Xh56/6A/bDjwALFswdU3+fajpNXmznGe4L1Bu8Rb1DIqX8O7hzOaUMY6q4nav0zc5fe9QYDFPCwLoUDR2xLyc7bQWiVrLkjo0+GXU2uBxcQdqHBC4J+37E9gLBWufgtN45j8bfYDAENzVELeGkGmyiNkY084WDqKyyzQ21778CSJ8gNrxCaP804xnFL2AQ49Ohaj+sjt67cavPtqXQA0M9JIVvg6/rar4TofYA9a0ItlSsIh+uRyzZIxuqHkFscNwypVOvYhhHU9IeeWWucT3M6db3+38ie66TCHOd9Re2Ja5uw7skJ9AIzPAOR1V3aVu2duH+YGqvLwInALS16ZwGzfOmQ6aCon0ihLIkHED3V7BxjamRoAT0YCXMnXJ+4OvOY/b+UDiJQ0KCtNFG01TN1RkDnqr44iB40LQPismidWrRZKcjcY68XghT23B0zQGW1TJdzlTQ5fdD1vMP5nOEnzk020SjVHQGKedZRIMEvsGKhpmGuUqVgVtclfiYV4mgpMsxWheud8zkZ+EOCXqzLz0OFK/wtNR2uUUuMgsJJcbK7gjhdn0w5ERlJMcTmI+C2pU0NhHMOJdP443GtxMfM8g6ROlbXhN4adHt7978ahZKrGJ1vwPNy+nKY8VBU8OEUhYh/ZmKdVsVXoXdrxuuCycwlBR4kS7qGj5RAUPBnR4MrUkmsnzsVC4apwbNfKfZRG8Jehs2y8sNITk4GSbqBo1u/MUT6gfxJvweAjnMkJcIk7LSuVk+x6qeQRDTWZMUvjjMBuPQK2Yo6pW2qCmHzh0JcQmkhn4t/rXLvMMabHbHl8IECgaCeuTKoD0iIbKif1oh4bovJ/WEc0kT5+FCZoUy0eHy5yN0GyurLIoSyRrLJl4lXhe55KaSBfdvgd2YP8ewzqwTqYh8DqxbG8JFo5N2VNLTjYAR3E+Gi8GtBWmG1RWIla1tSu1ligCBdEA+WiXhaZFNZSdskekTARLXhR3NdOHHZGcvY8xun/5LV7vCCANnxPm8gkxvjZpRxK0QN/8WH+QqNX05FCGAkC9buYuEYIpxgB8wmTQAY6PwOb6j71l3gaw8TGONIuksS5Y3/UyFXcSzUOEz/BnvGFBY7LropR6AGfIxMEjZbKOYVqDGZf55wqVYQAj3H67Bh0UnQ2TI6YSNqgj1lz4UG3YtJBhQpIJV+IE3jnilWT8o4sPDkPvNowXY1MDUKrNJVGXIxZnrnzx2wi3KgNnbYBhdesh7156dwya5pNtDgLWrJABR/Y34syY4Yij3T96FKCAAr1M4M3c+zVhVTgd81JK92BWiYaWfraoPTJnMFX6lmZlebx3Q7TWOE0G/3YK+d5h/dcxAhYs4bCyfB9tI6b1ylmU5hIHb7xIjFWt6n2+vSFWbriwelWe39FhU8Ossm9uRKP5w317SQStY5AJvfdi7oakcKt+qXxXxw1k83ustMR4APnn8pxd8NYUXoqzZB9WV/zmqw5TyeHv9SOk3TSzvfhvJgCXc1jrHBtNbR1HPgRRVhwdKbvCMdZayKWtLrwmwZ+woqDSXPyt1cZqHcd0eFE4+nLMdUd5xNPgNv4AdJclzR5chDicJ7JukDZ72RxGsVZjQXpLD+cGzZXQmngez1A7mnvIJAocg9bTg6USDjH4xohoHfYKC9fGe5VPE11eem5OvzTGwxWBwaCzc0/VnEVe07/TngGDmVQA2JQlKKIcrtJrEBJKkrpPe3FDTZXkLnkXIEovnMSKqMpj7iOzbTwgXbAUSKpsILNjF4z6ZxlVsm3P3GkzOcsgsAHi7MrCSV7GYm8KNHHIyhkDzgiD0ns8K6IU4k72L3oKM/k6wDPo+qBHWcx7Lq78F+8LZy5TU5S98h9qC6fdvx66kvEkBhe8W8Rxd2ZOl9/+CqjCp2sOO/anDYbCJk3wQHzNMbQxMCSlk188b6vCPKyQarJgZETDrgMPt9ILGdThOM+UziG61MjweKbbjAy4V7mOqOZkIy2Xx+GJpDTlS0du6+rf1yq/gcrx2jQpM3vL9J9FqEsmyJ/cpY7CFJJfHzCmH1ehsC6CfRK1llHzBIE6BlBhhTgJIoWkrBi/5oEcCLyXaehvsFl8AE3qMLou9mRFrJRUChTcm24ojAuANAFrfYM0I3BGiWsqK/aeK5ZHPS7AbpBwQJpFLkfnOk8TlEXMIHqCG8yVJI20JizlnjJKt7cFNTo36XyT2H8hQst67SADbGX0rex65a2E7gktv/4zaJq+s/S768D+qwRZwZNwkCB96sCiohwdd1W+PYO6sq/cVjYRBw0PlHpktFhtWJtdIOh5X3nYkVNiVJgOa3t3ggI0fxSu+82fmnLVEOoR81I0CFysr2lEXjvwZDQEOTlHzVS9S2SxwG3o2aj4mahZ4qWQ1a2u8lSDoGFTjO543AovlgB1tWZ4Kpmj1ICykbPSyHKgB2j6BjX/6GJaYghhzCK9ux1vT/pTcOPFWtx4xNudQaIDl1f1mjq0a08tVPFvKAr9fRvSzZ5+VB1hsey3ayLb8KTJmlTybXU3XLazGx8Uy3szPntnbbtlbBvLndzuTbWBILTkmMHOUXw4lObAL0nCbEOEo5cvTzadgimIWvJ6UH1apVNE0t3Mk2o0PQ0rE7iffsZTgiKqlOfopkOPCJUWDuUSfTIMKaJut4/FTxMpn4kE/EglyfUDQ3cL53RRY0FG69PTQEoUx5etDRb/H3gq9OXoNhXaeQgLLXGQHJhdjX5LUcdM0enYD7TKC4Ko3gxLq6kLeB81SXvQVhyj/M3eIV4ODjxtIm/VR4dvrd1k90iyCFK84uPFuW5iEDWIVd4YVs07Bq2TShyVfH/uuVtAZ6tODoX5TG94ZEz4/pzJnDUhaGLAVsMt5GczrSN2v8gqScdF0kwg68xUMSN1GdkR6X03rxgoFGzYF7nTKBTzlHoDPpv6qodzXhhUzABznAWEcjQFInX9odz8KYB3R2N78lh43PbCk6avr1YfzQfV6XWbeAHt1e1xh0gBA15NtKtBQ7Va4LhZKK6M0AbpIokmi90NgnQsaFrCg2LrgIO4ZmSaCCax4wV16qhBoEn7OSMbt2g6TXQB28TyH50Vgnt8EB62E6sI65Lm5y73O5FXnzo5k9vu3xQ0uWeVE+eaVnJgAd6vZV1pjzb2lYdNlrwVE4Tq2jq7uc+Z+j/g6ODAk+vedvCnueJAwOCZEcXG/aesN9IlbCwqNV2PA+PGbETtFnFuzUEo1mU0tbF3Bvaa6skwrQKJEcsfMEgxgBaymR85TQBukuV7Zwa3YuzLlXLDdToebi6ueDzdfE81uto/cHINwKu7Ump6GBRZgjXC3GGDnu3rvBr3CvjsfFV0Ug0UeU5W1Yw+xHEECS3T7XhwBt/OK62wr4n9CsCsSwd6SSeIKkG1DIaoccfU8tkqGoNV6YRV4RKivjQsgXm0cwwR8Our/fXFyom3QLKx16sC3EP8K6jKOL19k7FtEVavde03zyrmh7c1s2arQ35dA8IOyBgLL69xJ2g8XKU0wMgr8kGDGoiKgL+QTDi9Yb9lAaffMV3PT9UXGs2APam4Q4SWOgvqb+BxBp7Cv/mb+WXPeAmZF43ih5k87zzbL4P5GnmaT0fsDE/R4W+FjyUCdDRqLdo4CtWB57kIa+H8Y11ONiwBby9dVmgDokx2I/DF1ROljTpJaAcLPKXC7/2RTMl1nQa+3sSnMIx3OZNuWI9h6dHmiSAxBs31NQPFUdQCAqeT0oPukThPvG2UQZUph2o8roDlZraJsnAWiRpALmma017DQf70S4VrQ3XoB+Hoe61Pje2GL9I/a49QC/pItdDU2cmU7E2P4f4sgB0u08q+7LJ9GIQwE0Fzy+o5IJPaOZLTd0UJ6gT4GXQ0gikL89Cnfj/mH3V/7ITlQNh0ue8Kw5PZxr5oBAfGYXIPqKPdc6PD4P5ZlDCtYWcNXrl05zoeKJSWEBZv7EDtMcDLjnMBUyWHZ1b4Xkm2iXZsVxGWXolbKw8F1zcsQtVhFw5L+PkbRzz91Ol+kulKwAequVvqzVrdgFLAJ96RWwnoa3gycQXB/Z+9N1XkoNJfZHNvRKqkIEiRky+hI1EpxZ0h2vpxqw4pwC2nkEXlMHY9uKIZIrZf83R5Wev19aTmHn3uMq3/y4VKEpUx0iVCo9n4Bd/D25DdsbOQmAf/jcJNMCG2jHV3RjQuNh1MFH/VNiiAakFLBQKQ0AdEmOxH4YszCThwmprDaNkYYcTw9ch3/M6fMXOZRiRPkYRCP14TdHS3yjX+VbYBR8/Mmst/g5gNFsqE4bc19y57LETQSEiKdn17tnoLccZrWe3sAszbZL5SbutAQ14D3LZoJEuPyB1n01pyoXIzeBUpxFZ4yQvQ71FsY5p4Tc0aenVCnohpNGe+cwx7RzVO4U6TljlCUYOb7/Q/qny/ZH5cqDYMtt2nV9qm9ni8P5oW5/cDzSGU87xP+FAg5xMnxghhyXrq0WOvLYptT5lBeBaeBCJizx585FXxQGImGCmQJLOrg6AQSVfkFQoO4uetIjs12fDwlOaZDE+3nhg58Ad0js7oYipgStvbW92FxrreV2HAFW5UCNJHVGoUVXzl4FqAVV7aufNVJkvTXQmSEZPBl317kwXAE7KhSOp4vuYlmBoSHCkENgPSRYrrM9Cg8+zwDuPtwG9R/5tuzxIqZjFmWg2trWn2hW3dIC732WPff5dVkIz8aUrzAITYTDWkVy9frYvzo+jvQK48G8rJhzzbqqfyQ6jA9qnaq/DCHUx7Ld9FPMiftZwQ2LMZY+tXCzOQTQFEA8hZwhNTuiR5Y931Zdm6ZB2Y5txRqzklMdOjjySaMdk03mObu9yZ1Z2QMf9A6EYb3+X68YP1a420aN1dip07Lb/nmVFhcYk0qSnF/XspIx+u3BJ7/3eRmWiakJMgxwGTB5k2Imzy5dI8YAfgejwdIFo3M7MBkoZmGQe+AWcDTkELoTp1oTQTcNfxsQUnfBwo2sGVIjTI2LUANqpgCzRhvd7xr9qIYLSZnIfYsgtMAtvyJjEjIN1sgEeVcYuzYQdDMl5q7Mg7d7zfWlt5v8fTWBM6nd9DRl+CwO6OK2eRxNkfXHYfhLLRAPqyWVWSCpZpzYjtTmcAuPVLwmBbSk4ebQcT+IjlEK5a5APp9ty+jwJQ2IdinaSrN9AN3X+Sjxn9Frv5lr5P4tdETdxAjeYq0rEhxBDHeq1AsyzcjeoYxvpqwslbsNC5EvKr+qKe/4v8BgOSURmn7XOXswGkXgp0k2hctUVX2SXzhAQxkW6UmFIpEVNZQ6/nPNsyxLAxvyf7aHiIZwT9mAuSxEaaankRLk/C6nol4K34dozWvLlNYyRlMGQxMmTNlyiL/AzGnr72BTPbOEHrWxLruLqCLq57eK7reFaxuLS8B+VCPV19AREfA5Bkh9TSQ2gVT1fZ43NvTVteuFmgdReET9ma+k9EtkE4oP2TTYANMlEwuGhGSvj5vKKR7ZUaxrmRvmD/KF8S74m/Gq6EwGevcWoqhAHKtF++YW96rF91PpbuiOqZLi9WFHpca7zTWsKFoTzBXqSfy97S3t2cVlkUBrot/y0GQE0YzdYqIUuJX2cOXXagJ2wfa8Qutbwz5WJmFXnP52MHJRZN88Lsh7sYCDk/Pc2pyOvtoX7/LDaLzwBVx+pegvTfzcVBnSSp8okVWCPxZzwkT7rEOygaY7J/p8EQzQNWsosljhc1wP+RQimWXd2qnqkQOjDeZ5QrM5zrdRZ2BTNBpyAPCi0VszEUtatDQBeIQ258H61dsyKwWsXPbuYXd+Tku4THB0pvwPG+G4Vfxr4JfUISLVwaAOkq9TelB6AFxTXPo3AvQHLZXRThJ2tqZZNL9mE9fr9xOsiiCMTuh0T/N1V+l2AyE65rBbA5ZrVn0m7B62lBeZxrH7c5cpaGCPQVOCSOUcwspd/UnmGvHcUYWq0H3/CPros8MBBoPCGLZkDqQJFdGf1oGgDba16rpiXhqRYAnHL7H4V8fmh9MaZTL5cJ0IaygetFOwZ8bO2UzKhkxRiI0hpwmvIOzji0nXcS4PZJXE/ToCiZJQPqdGyxgOjpf+AOArJ07ijO8yon8AZ/M/KqW2b91UsHKzri2R9a7WIl5KDIhhREvJMZw40y5uC5lluIR3TCmxTZ5j83+FRoBlwd7qqdBYtpSxiU/4JD8Dil8m0oza3v938CUP+dV8YdRxIvaEngms76E3L5uyV84kLiZukSuYSX1ricWHp0Q+/TlPIqjhlRVWlG62OKT82Jw/+EiSzJHtGDlUjFjpeUSwqY4uaXHRP/Z4Gjj4m4xUGVf2gn83W3doIiM1u0hFj7xO7i8lQOoYHzIwQjutHHNCD57oxmjNlH2ilxQ+yuh8oQLfy/dUCLXZFNfloxWzpj3zILhQgwU8BU4zqYMad1pqHb/pe0QowIcXBgVgKIIApLeW0Y7MbcWG4cm+/cSxtu4lzmDJ+qCAmj0yRhMaT8oionlK8RwdqfiDOP4wfIsat2iTHJ7Zdt1tkGb/MG6vwCC9lKwNqUZ5avAUlploRefOyjxVUWsdoSmJdYjTFxLXdKxRCazACcmcC8Uliu1UgAFhJVq4DJ9QdkvHdD2cZoE2i8WVIWH9jywWGGgOv9ze266bSm8DorzY5hEnKPrGEo9Lf3A3YWrCbxM67jftdnRcfYcZuw+4xFFrOp/M4ULRknHL+KfGK81/sUj/0We58CpSHPDs07tpTrjU5q0LCNkdR39vDBGTG4cbF7nYDP4eemJN+n+OqmFf8DoXWdq77jxvBE+p/9Ii3IWB4uX8SQzH0NgzzLY/UvKUU1LL/0TYDA4PGyRF+fhwzsZcFwQHWvJ+h+IXSCNqsy6pU4QzdnNIcndiZ6oRMsONvePGQw+8mJBf0XA42SmxgIi3v5TUMPnaIlRwsVY0i4aHz9kknjIKAg5np0Q+S8PHAHN8VcHsEESj2y5mGsJyefaXY7OTtiuysJ1M5gXXJ/62hT0CONp7YVGaKEYahF/zqAwsIsIJuBeAdJf7ZXRJ0xel9WVAl/MN8AaP7GeSPX2DFdHVL4ix2eLg+8hlC9pkhgQ4/yEGJ3udILmBtQU9Ad83s6JqkKCBuMAUK/Gpsv/eOiymDQ2bFtdpa3IEKRVlmkoZ+wF2jMCNVpe8bxbdx1xyJ/VYAcq6GcnjgV7NCPq4oKGh38eLWLHxp0rvvbeyam+8Am7sG/wokA0cn/yM8FDo1aemKCnXwPlifm4ZWWMjQUbojt1ZOLHgYk33/AAJmj7TcHcoTN1oJtSdaFdmpuXk8HEFgmco152m0inVFPTJokuWiLN7KYoQdXdBoblJAzaTYN8ROpPsyr5v5jgCvxpx4DtTBK2etlHUvTbgVIIuOJKrmlpH8XH6yGZWgfmtDxyuXZB2GSt9H53UmGEFsWEjVFJ+zPScJdZcQUEsbAX5KxBNXGQ9wyBKQAH8gCeYY164tNqbHlhuZzUI5UqgRq/7H6QqU5+jMgnNzObQyY8/9In6abaMdS+2/baTMAkOYqv+gSdh0uGt+xoPcKE2H7M+1KwIL7aAQxarMQ0C7tYXg/yaD8vcruRtLQi5sNQImZmXiUjGciKRoOb/6qzY/q+JYqWBcWphXZ82Y0CDinBpqvt9ZQZi8/2/HUuzkPEkP2B0SZmvmLyr5rDcSnPPe+rFZJcUFxo14xDFxYRabJiZGQMqQbpmlxRiaCTcBM6ws1zTR5l3dav4PhS1khRBwHzDJyz2dqsIADLRndaP7vjeQ1hQAM0KMoShuiSyS3KlzS/I5/6osplbVUi0q5gHMWaplRQA0fdPIFUgn7D7cfu0N73zCL5FkQgQT3ypVjJimY4yPcYT2gSHs/o0iLtEwIjW/9Xq8pUTObt0SmFpIjzRQKsDzfhCeYXF7O0qIKG2V3X73aTmZV2YtYDyuPM5MpdtLDAZs1YPawCwkqMC45ayl9guFbKEFu+Kkmn2lCtPOA7a84Crn6TgKJCEAJNkNlSEKKN0phwxHpva23XT4L79oWLNminGyqgwhqZgzdvgkdAo95VfFpfTMaZSCJiPu5Rk11QF1NUYiQ8EZPPtJI/Bc5kKMzgLvH8H8aD78kt1qtddSmXm1j2hh84ydnoB9q0XX/X5L9q1UBhWC3BUE04/6l3oERcvDPIEMspwoGXYZNCnOuzObyuwTse9bjjE8AT+bMWnqmVhDod4rXMBnYrHWLW0jX/Vn9uMqvqnDl9nCQfNvdJJ4/r++L2XT9JBLCRpyFAh3J7Q/e9Oh1Rrfs7EAiZ2WbUOOV1pdyw0O7oiXqqrN6hp2enYJWDrQmhkjmskDG+saX3h8z4pqTPEk+adjFZVhL1/o66YsgMddlmNPYLak9gmQ8gZzhtCw9z0aWlakjx4FS6m6AG2mieGeodlelguZCkaefBS1g+i+UCvl707a+bqcqNwOottREbEEPvYFEz/q+dss8JS2TRxq6xSus30r2Uj2oqDY2Ohjl7j5kxiI0mfksUGxDjyyq5074c9BxLpTDK/gxQdfjdRSx+aosjsIz3LbLrfG9pJVSoRZreBgKUs/T+bSgWOwnoOfKR8BpoDMF1diob9C3ROsIyl2mwuiLhH8vJTVZpk0kAE+2K2Oerhsy0t5IgVPYtct4ZVY3Rs3kGatdsKyJctlWp/FriFH11vPDDYtivdbaben0E2V5G41AKm2STbf0RI8FOG+dqTywyQjgmUqGoNV/OyQTndIE8wO9y5af4ttxNvdLD8Fp+9WbA6J3pJVCyLtmyG+WNf+cpX/1Ut9N/am3q/Aa5pLtmMQ/aAHHX2VXINEIJY4Jq8yAXfXVpzuF+FVlBM3nYKP5q5+y6xcEE40KuubGsCqPR39mB6x9fPzmqpZB3Jo2hz85rb2okp0nHq5SHwNsvWLlNY4jROBjGaeJIKR2F/S1vpPr/s6l5TpLo+aD8Sv6dvBdDMw/N3ymFkBrCb4p7bI5kduc768dOoJ1KvH76cdQV0SUP8502cy6nh/r9oh4xfk+glb4EC8dltqh3fiH+blpL0v7SiP3Jy3O2C94hBqpIouZ/jy+Yhntz1YEf7sB5c+ilhUgQI5kufg5K65Q1sDkJ4B54Bc9LbLRTls4LvXA9t8/367Mng8q8AaowXBsxxDdr7+QRpSeDsHBjLPl9nBJBNddgbfEmyWAbJvpL73Jss10zIO+tcCMo9pBuKa/WbSyppjrAqeAa6TQzjZDqto5V3DnM5sRYRxe8VSwcJSoF+Qj9TCjttuj9psJxBl3IFiuZ7AYOxeNGZHSmAAALbKEzdaCbXhI9lrnK1wjN8Duh/vDpSLAEed0F5xoABbFgNAULMOqInYjTIpLIUdX+8jb45E0Q715fhKfJVpDmpJkyX3GUYEgxSgw9zA8J1De04gVQBDbTONvNB8XN28dKSi7YUVTjligP0KpvdKMeMxWH9j/43m6f6PhmLfi40HA7RWD3K3ucjWU9b0i/ErQK/wCYPfAeMr6R/ejrvmUhWQWZ2J545cddKDKcNzu8RIanx8Dm4G+hQPRUjFMyIx7nFIINHIsKFapRaI14K7lDSiahuobawl9sMKtLlHlabvq+WVtm7Y7TcEcTHNMZndPyLlm/+OFmTqjLF7iaIrDs7W0xLg0zumiC0l6lKiQP1oPaHff0psBG4adR7dkl/DXGicTQ0snd5j+hv13ik6ebltf7coOoA6VGz6qNqh5cO0Az8YYhJYc4DKsq02xLJ+10imZ3xTfbEBrrxuCJbEOqRUyJV0AnoX8N+1Iv4q3VuYxEBpLue7nApnOYRuo+ldDtdCgagnCkOJs3Q4ZdVCvs/rfgCm4pW46VaJ6RJlwEGoBTaYCxcNI5Uln18BHzyNDYNDw0zbQ5DBlKXIJUDMvtfA/Y3hCd2koPCOCqN+uyq01xtXeA48+fwogeq83RQghvFmu+A/k9LUVo39BbXyp0UDIonFPcetYfXqHGMS39KR+Frue8r9xPIUQcP3lUBvyPE7awyHI0tleI2QFgp2SF9RG2pJcvwn9r15lF5xnXCQlINO29KY4AEdNjNgalOwtsZYMgfFdIUwmoElgBSg9+epaNFoKo5mgoSEVz2eWnyTdVictkkJUMaahl+zooxMfRnW13/wd7q7Aq4pnqhC3V/odh+N5E5426YV1aFoo7nWzyA2yaSmEGbh6cqD90dGE/5yk9IFN0UJnEniBTzx9qGqgG2raAvLqiEr5jNfuzWtAdd2oxtRhi9v8qqPHAO61PVTdHAaJQEqwZBRU3g3iZpo9dVnt4mMWANiMbFGNBRlXobCHJFd0Pwk/wC21z4/njy/v3uw6F9r2Ls0JVS+aCj078KnpJBLeD1NK8X+04fPUmygoSIG6TuWLY98LtBBP24W7+fwYcKYdFoGQUXyFjCNAAEeavWM6ZNNx8jf4AUoYHypztEPfh5n8/NnY/wIXMPVEx4qDh13pmzcV5b1lY9iNEVUCMXpZvdlXehtXiQLMA/LTCzANR1jjPWKQZR2KYz4KCNN3bi8T84VDHJIZMHtRLy8NS9YhKicgvBAJXrJsqrUEh/55lspaCeEfHbW9uADRLq9czBnOuU7IPkESqc5HSzrNqmV88tfMUyKcokzHmMjRhcZQX1qeRxJwwmtkX9ifHTDgvVKTJkyh4UvXUtFIk+Hm2GJKRGcSJpuVyOgyocsQDYc66ZAOi+/kdHd5HpjI31ZJ+/JLnKafiXxWB+W2H3WPoZwNW9AFwt0TyC2IO7YP5ViCoc35qmSQ3S9wB3O9mXG/DzLknJhh5CIJuglxMYxPi/nErSvB1V3kpEqYzIcW31NB7u796NYQXLoPH51Ayv7Z1me2LDmPQLt0BvjCrRsNUALiLt47rDeDzkEgFiXjBswB1BhMJxCUE2qoQdx6Gufteh6akCDF4ATPN5K5q2yJAWS/HKmV1VIaASf/8BR06RHy//VBeWxjpqAG49xlJYDe2LhIWrxDqXdRszmCbbp7y7rX/GCU01Abh1pdYoeMhViIOVzVI9EzpIw+if2/c7KOgBfEgXjnpCvo0yMaVqXMAYSel1GUVeUvt4SfpMVDOn/mTgjaK7M5MOsaDAmNksDJVUsqTR2WgzsKohOZM5mcIvOuxaUvpHgiUctdRqgvWoz8+LLXtLKokDyQVkN0Z7fLTCNTHKk5amqAF3U4TqftvRaxfCbMyHPiFrup3J4qKs11NDNveAAtlZkdqtCCIwVsYgSxkPDkg5h9taVTgiw73LpW6SV2mZokebtsM160Q5ACAoimolJZHjOCVLM993Za2k82eRK8rw1k39tZDlhEi7SKapOxTf8jz9h4nsiAIMBtPp+VQGLTnSBE1xJ7F3Dtkagt0jv53xB5HR27hTPTweqFkPTdWG3lpenZndPw17ci/wTcz2HH0qejPX4bEzmGG5ny77P2npJ+KcMwWhC0p0+267g5OBkCZpeV8qN/vI1Sw5TEhiMf/nYKIQp76SjU2zBBCfbRIp1nyepqAnafu1yW6EP++wkbGZVflL6GsXRVgctApjOgB87ZaE/4EPAS8MR0CIH4151jQuVYDAirOwVXlvWCCs8asETsN4q/m2IAkPpmTYIfAPunu89LH+MKI/5myqGoocjaKUq79u/6E1SB06jVJrKXryaOH9ImGWRB4echJONkTxgyd/vBrKiCT6l9zecIPkl+6Wkhw7PIXvUXBU+WxRWnFJx6UJ1p2pRAXrN+0BUH6aeUETQ7sT5uix/FHwV9SaIy/Bt8Y83RTyTIh5o7gucgHsK0eRiwXiS8FjGHRRgiohqG3k4LuA+4RFZo8KN+LWpNx9j6TiXO3F/XuHOQG2H5+MlTW3RJGDgG6hldepK3GNrHJlmt/Al8YhyrJ+mwCu0G0kZwYeKs9eaJTzJ62z6ryRQNjno+AN67mOBxKh00qZ/r1mqyD4NqyAc3s22wzA1Cr8tY9zxOcmcKXojfESkjVTn9fPRNWUGCnWUFyu9hTsXJ/1DoC2JlN4DBVB9fVmgE62ZYhY9DEa35369V1fK/UQsMl1/673Hlxz3h1fbORHHpFk9kji0UbXIbmYSDuHgpgIpQDanpUvZUalTl0m8PZbg7XKNWE+mrGHWXaBLGJkViSijJsn7xQU8BWlVrXYUNGNEVHN08K25bPU6i+oalgrzNh7vgsusW38o1u2u4czNpWWpWuG77WxkFs6R3HoO95JBK4zdbA81w5vNCSvnIF1r2KykPW6NYNXVdwn+XgU84vMHKHdMghnh9kVlb3ywWbiqQwXcmykBdA6ByjLN6dxOY1uZY4z1ikGUdklcxXkEXEKmqggY1ACpW0xufZSB4YuMX8XW4ohIExtzqqsotJY5NHW/086d04BXr8/g1BAEDGx3wih77qfPAtehEv6hAGVPROaR4SpYM8ortIpJRpuXoryNykH7JUDzuaYZybnrhVDvGaXAnikvkvA+eSKKMrT/G41wrFODX2UlfJljiO4C8AzNe5om8n83dIr1wu3x/g2gjTikEF6SaTpG10UV2pLoUsG+X7qfiHWuAiL2DeClD4SuqWvjCLWxWeUDZuvRRXriMzF9Zl+2S5UB5Idgi+AUUWrtDuVWl9kWXDKM3jzo3mZEynkmOoyIAgUZaLkwSm4qFrVBUt79GfXZUlgl/+i6HMmLV/kX7HHC4jCGzFrxCARAeD5fTkSLkI4kGACAqM+aERwDQzXmah0NOaXSq33PSzGD8ZA5MjaSyWNfIi5N5S4h28n++d6D2FCVOK4x8/sWKFe74VX48nfiEgbDhKv8kxNeVzn/3LOhSaLa3bb1Vr/VPbp4V1JYAI9JoyUYlSG+5qa63l/uv3GWVp8p25lHnbzAuYSr3fXuLU80ijp68tvkldln1MpNJwb1CjakX3w757PWsd4gvx5rqTgY534LepY/qOJrV0+QatHAs8gZcvI/gwwqgpm/bPWNufbYDJXky2w+C/CvGttWBfIzwLuvo3kO0y2NExo+5S1Y7D/oUbiCP2L6RWc31zhfOakTcmcJ4vQw9qDuVkqfPCX2G8brHk15HGVtvpOxFPa7QMz3k548wbzMsAasxjd+8vCNPlAbha+oaKlOdC2FS2lgTSXTX2B5DPTJqKxO3tHdfS+RBfSoJv74OUHVSzX2KUziAE5jNf/cACjTNJSzzSwWf1p9JsopcZJaC+k0mLob7lE+VDIWYY0nae04zQfTcAm8FwNYuVmKhTN9qy0DGMNXUW2Izlp+PK4VkVaJaYMpRvsrXOqZil778mTahpzxuWIpkmwHc5J4qJ7Yd69+sEgjyIam1My9w0L/VihWKzgUaQE/5mZQakIdWpe0iTCZliDaLkIrXk2EkophcoNIv2/Y95C+y6iw3ebWPkmGxHyrJ1GvhIPdmHsiKgS/Jb8/QzFXpFsdh92k8WhSnkhBq7FpXxilnGfDP9fON2zkpwCvL9UVrur5qg3E1uvGZmIu61QpenXIfKEbKaZAAGWP6wklp3hiTJGteNDKGyDZoBX7g1qof4u218HY1pNux61jpxkRz0PSTDy2IcS/RfREEKPqwLbstJgzgvrMQO/sY0dIVWsQJRfeKjk3j6L/GlRunOk/FD31tGsJVQt9i6dQeIf9mLsLMEU770bVf23updm6lBFwCxWEHRcqEvWRnf1cFSCwYjah8pTjVb/hbOgqsAP+7dzpWunywZ+NvE0wNODpt+XNSvj9sT3EaDKb90ygIMg0UqVMOI3A4osW0mz6FZFEu0pzDPyp4SvLxV0ZXtzNw5L9pETwE+xbj5SBoS5SQ0VMw75g5dfRrlozS9c/gk7FuMPZv+zFkf2Kkdl3XZXP3TJV/xAALhXrawIQSjnz4Cg4HniLJMuPvL7L860CHiIa57cFne1CwzBqadDgKDq/o51BRA7Tf7UunYCpeICBmY11xYuOsDrE5yfjlB5/wGcci6/MVpc+E6XiHj5VcGayXCMuBiphpBH5xHbuvH4BwuRVXonEHnJffw26IPACrJfs5/ZF5vn9SC5E2D+EZolpS0LQgJ+vpe7rbUt74nEeZLp3gg5NtbcTnCTZmPZiHqfeeDIu2ynH8kp+pCXzeFdnn9rfQlxFgEQrx4ko75T0k+/HIq/uyAQOQld8yZ/p3RyRAKrk9C6CPf+PfDMNlicwD0E9kqc3vTwk/+4UNtElyJ886bho6J4pNoyfyNzqUcd6MBSsmf5XHUpiivc5NSjwP+gcFcznAesLbvICAftxzsLp4Y9xgksSlhib0OpT7OZxzYDmukkPXlhLGlhFL2JXk3H64Tprr8ZH130VIKdposJtMbNyo6ABZllT+5IhdhR5iF9dE9KzvvkApferJgzyXVnZDwLqVFGmqNQfxvrnlquKF2BI+Hei1VeUhc+sxm3rKuozkHxtTacZKXvLrsSQMFeTFFT0md8L+IPREXDsgqAMyw7GSGyryD8i9umoggmilqtVfZ2ey0qW78JRCMwXbUSQtlU8+t+i6ucqAZUphhGSpMjfLJiMjtG8uhyQlEtJoJbnNBzSevoDeSmSSuDvqilZlGddZDEhqyrT6WwuUCbzetalGVYs1ZEfGmCCg1l8MlVNX7XaTt/j+RfaVsS4NRIajyoeTSHTnhD1wfg2Lmqui6k8Vi1OlTOVbXdy4JK8GvF1OaSbnvQfI3pNZet69Nbl3mKtgRo0svBItEUFGyn746GQX7kF0eIeN4dRfazSeSJhyrSYPqvJEMmLqEJR/cc94jWX7fwfqfdh3r3Url8lUiEBBj8NErdZf1b3kQM2wdiUWrfPH40QG9I53PlmuEaaqT3/MZg7i+6hiNsQI5xyBlJzF17NwWBlwQH7ozCXOlS49zAZScoK5ZTjAjq0pJTF/3U5CTI5rFu5YBua1q0FNbuiloJBTUJue2Do4zs+8m1JbI+vDRfFhhda2CpYDKaxVP53ZyiwDfjGTXLFFRdBVu4biKS2DA923PaMOodakWRrVUUi/fcaUR4p1Z7qLgsIUTX6W9yxpqtEXQ8R8dbKJMsppK29WJhB77OiCL5yiPQMYJM/8R4vLq9EjdUAsUbvqCFIFNiUwMEdS5gP4eqVTzr5hOJUnckka/jw/eC4lzXU18/E+2jr3tTxXY26cyRGXcqcknO5H9qNcosH43vFzcz4s3doy3td+sMUfCSIgnkMwC6nD8k3t+5duOCwBFfbDdzd24QdK9OIqAN1+S/Aod0XvJLoMnc1iAAA1/AhVuQJyPhoIQbqy001nC5CWAvWgfrlMXNRjDp1WDDZuL5kIHuxgCxHBhYbYqKqDueXOpi7YnxsWM6BHd90dLBXKPha9MwxxfuIZwOvcwf8Y1nBGXcFAPYJSCHPZzmu1kSDpbG0eVX4gicP1EVHjsjrIJ87HvdSfzwlYX1nu37bCYsviuBLE5aCJZNv0oJtAppIvswoQErGAeBVi86MIpL5iJ2fLGxOOuKfTjINxtvifmy0ea2KBxtshd5OkLza83M9FsZvu1h2kTuUJan+ioC+L/dVgiJXxNbiwHJ/Jds2PmE2/n0NiNWa9Oa+DB1lnyU7tmuA0/dUk0isCZ5NMcWng4g31XfwRrtm1G9NZz5GTawiMCoT1xEWGGlu4iQb3zrDjc+4lk98D6aKKwr676Uy0IeEnkPbjxwc2uruePTbWS4ft2oOJFsxjcbSB2aJdUQyhsphemfgBwxRSIuJjFT4+2LEoOjMCf9zH5YumzqI00qzbS+dEcrTFmrS4Ty56B5MC/ead4Fu8+n1D/wINuuIMy557YNdfChgKWjd5MgoiaXTO2ZzeuMAI5i5nhCA2X6e77YElRzAMlMbm5YxDXmElAyimN7kkWbU5Qtt8DgiVZPgvTg9N+6fzRvqEim1vOqfd6tGiw00Nf3WCBFE/VNpaHdiU6Y5ay411fKuizv9TNnU8ZFGWKab8SD93vY/RLwQaQZ7YCZAGQ7YLFhpi3YrN3OiQU6jyXBqZ5/NaGfeEo0SG8X3rTrJM0aSUVMyh0YhTxDHpmadEEbZ9UgqoA7E2ACWyqL6nz2CGYyCKT5C6Og1HG5oeJbpgp1y/bxSmBwGoR/lNUzk8mFv91P+T2ygc1uOW/la7AoLSbcUcLDCnUa4IkAKwlRgQxykXl8WgR3bwT2CWoUevS8L5oDP04LhVzWdjauC8LCDdvTisAJH2shdk9A51PCVIkdPWeq2rPt8e65gQlKrMIcqmxnjlOMSBq/ct6FO8AEAtkozbnW/6odV9y/OPrDEozM75J+xDl/+RSGFnGZc153Fs/T2znrO9tdy8KDw0vqFqySGK5XKRAYR/F/Q7mBSjhynZxLQk7CMjJhZ/RMqI/fPdWDEq0rHOVqte76nOKe6crr3KYC8FSr7VDHXp5o4Ac+1z3qc6kXag9S++veVwgNw/moF0QCvV5oAAPfMt6q6SvD4Qy5LJahBtq/+vKm1a7Xt9ljfWf5PXXanTKnZSVQaDYJVwHJJHred9DdsDPCzHPKR3jkFtW7o0RlzX9w55M0kHIqTLEGxVJM2+u9tz0M+YxUDgFW79LPvjQ8e6zwjccepRgs5liXj07BybhnkGvjF17yLDE5+ZVDQIsp17vkDP2jjAoxG+UG7QmQogg4alJfWaZi2QtyP3b3buXSqMA+t//mDm1DJTQCGp7b+EubNw+VKvvgqfIvcnY4KzV26cMVcq8te7V6AP3olaSM935CaqD/fTCWEYhvjtfya2xgTT5NZKspvky5kZNr2BGVk3bDDtkvxp/ZhpE9wHithX47i31eE5ZswbU8pqYkPS1eShxath1537jr3HR6/hUt7nmGAIODBYGKPsP+uZH2MOQT6CP2LSfLld5/zBQ02Ty2hbrvzULP/mWNz6+B6izpc5I9WGF18bChBXNieyo2SUpgt3OsMad5n0fmlrCb8fqICKkYjPBCyzXI2rN6BPZ8MRKmc1zvJV0kA9YKFkZCvU+88tt8dXmQt8S2yJSnzS84NbKIJVPckrAvm97qUAlW/sMEgshZTTwYTzX3ou0CkOFiA3PasV/Gq9QY2OGuHC21W6GIzzCbujjZ0lZuj2teIiiFq8HTizDzZxQiCbGR9tpN6jlP3HbwuW1eoWak1tf1I+wmFQFenbtgIIxH9UU8lJg6uRAh4r4My9NSj9qwLXXtG75X02tA8AXwHzLF4/F/HSAYkdQfl5Y0BoERN8OMor3Q3zJnRp8Jye/ade7lFqA5CRrDRk4sDylWGKulr9BbTFjNrgY3B7zz3YmPxcTGsOOlLPNhR2FSidVHwm4tpS0WD+r9d0n7+VZLAzBWjbhraB4g6NnuuvcWp5o++AkAbKDCmbkOJAAB2PrYgIWoH4W9U4M7vi+ZUQCjRxM9WeKniTCUHFrGI8Ajfc/a6HnoNVhpfRIoH1h5rEI02cMMq7M5SSliCZZb4j6eIlhv3lJyWzbFrr3K8Vw13lV+L51f+2/N5nEfcz7naIM+zNPPcVHyJqpPFju+9lvz2pjVZZWepaAjfzpjgSnWT8msneZGD7dzmi4DkqL8XcGCg4uywBbNOs9bHjRcDFz78cUhecxW5J1l3ALIQTIpXVOsWCSa+nQ8+bIufGF3l5Mxq1qL5+pa+rePoNhOoNPoKtmTie7MKmUmjUGvXDY1kMUFMVpFI+tmsJT4kd5mWYh2TwWuxLqoV+Jz+WmRnE8EmrsPGwwBlh6MgyNjsCGyuDl2I+oZVq9Md/8zCvaGS9zyZxhYLcKuPDY6Q0ROXrpqfnCLALoxit5bzSrXYFacFJO2yPEnJMePGybOmj9bjV9j7kZFH92WrAgQ0aTLqPnGm6H1dufjYLQnsD2RB+6au+X3mMTXxgPL5XgCGBoE6jlN7HOPcDFD66A9G5e4b7PatE/waRSruZZU5IRsAnE/zfc3Z7aKPFc3k9qFVdIONqJZJQoNiHNsuvjZCn667f4mRH1lQGup+lgLHdYB/YYcpBXFC4stiWZ1giohhoRsSjLRcBMQMexDflApXPWed2QIUh0AdG9grW8bwHGq5fZeaNJdEFS476PgAA5Z01jcYnHevDKq1uV2dzX/nMxR0qERVrvvxBu+W/SIn6wlb4xVG6GFnK0RMfBnu0V/0c6gW7R26RCGd8r7bwRvNOPnDCI/uMbfUXM4wuiPdwItpP4MLYNArck2/L0PuE32VBuoqUhaTzwMOuzaw0QKnJHyfP7zp5+SQqjbRmuNdQaJt5DumrUyRBivQ0KYrm/3ngMY3k9gXtpg1Yhg3CnImAXpQznlhPyazadmMjgYBF3UTL7pIlz2DrQ0JYIgVOVNN8q4PXQtvwHkH6ok8zKmCb5s5XyEBWe3RE/sJd48VFElahzrf+2kLGn98EAN9KBLdZqaoqaBuUs+nBR4HH9gzbAQi0Sd+RpwtjqEmXKf09T0Uvqr5TBu6uYwQWvuV/9DXEUx35Wh+To4GOd3BbLlWJhmj09aqe2gsFMPZFS5HM1nv6cFRjR0p+BBunfS7OK9Mejq6Lnnup6/z8vOQIOeNJQMbgOMVDqbuilYdT5YwFb6QD96+573imYTg02P2K+RHL2JcUO3VwncWXWwNgIU4o0tbAb6AAADQ8PTA9wcuJl2SUna5gM9x7OettpOhEG0DTdOXCb4ZNOlZTn9URdjXgasiVz9d9Q7gJXXPJ76t9IBBWhzvd3Gw9sS4U3H22Rh72oDm6XSJFc1EmuC7GzaiuBcQw39S5o4J7n2POgMoxHAW5oDaYEkP4clnVGJ/cVvs4aVV5KJ8GRioGtvIoJEJ9yZ+fXO/4KhywbwwLVqZNZXAsicvNk2n+ziKfo2W4agBX2ekqtjqHSjs/XD/I0U8RpCnNSdzrfj8wbwX7xEDWcYHPw3QkSDffbmwoX+WhRBlIb8LBTb+nisNW0B7uTka8wUAfVe04bL9/0apHjFPrL1Lqjc7I0U2BkMPQJ6yuqWm3jmkjnDCWeYvch6wc6p/P+IE6y3GA8EdNM5D7lw8GYlS7aMZt5L+isQswn760taI0fRvLCRljXhBuit1kGn6HqDlfgRcKRBxutY4rkaULfjyoculdLcJvIMa8AR0K8cyYtBW1qB9zqSF0Fi9ORuPtPIZMHjFEKjQ178zRlISw8TX/+Oto0usDLHuH4uI9vf3AAHJzZYmnI2W5vnZPdv1NWwpaNox/St+Kz+DKQOhB4IqYmBxqR5VLvVAevDUSqZgWoMUvNsK/BGLdcNnp3Cumo9v45iLGvz0rTZyUO201O5jxffdAf7yHw8rFn+P8IwopfiISADamU+5vKM832l3SXgotuYStmLvYuZxdA5LD+041B9MeUcfV+3Qb05SFNV/6oCwfOqbujR3n1nkCjh5u1ELAuJE2jxC2v96NpW+bjLoJNpK+zrK7ytLFI9PW5GU3a7uZmZZnz6vUPcoiPyfj3lTP2u7LDxoUsqyneyv8rRnHsOwCHE+nkT4FzpeVbFqCNjS6fL+7Lm+1s9idPgl5PSnYybqCnuZUo55nz6fw4kUoaSwIJ+TUFZNi0GNGvWlFZUGdzFkUzSwWydAyEKoasst3lGRFRTO6AQYH8UwpPkiWeabPcTWALAwmG0Agjg7JWPfNeReRqgyd0A7qvCiu01vc1EuDyfgBSrhQj1vYCkA7hi0yzngfmdHVYT/qCmZHuHbVdcj8RbnHllUZ9zHpAzgw6eVGFQ2ODTmGVby8AAAAEb9pZeeOEc85WIIcfmv0kCf/9zTlIV+sYzbb8HNN+sEW8s6btPp1uhrjuzkRBd27u4pYXb1fratkb+zpBwtTbDInMYB10a0p56ZVhOeEFR7KqrU1Tn4b9S2xMr2BK8UvDJoTPtNKaYFWHTmcNOFbDfBbjdhtt9NbMIZJP4WYKnZ48bhK+6LgbmUbVl9QlmZSJUPifuNeEeFK67S4J3rebXlURiDRqMJ1mNl2BA8ZfJlifKroI03JYkDywK3oNBUEOhsQTeE2NHZyhWiISupjtInd6ESd3VzaQvhmFCMSGOd8FvT7QtGFSwtuX+z+AevcJ5w1t7yZMzqebpu5dSR3diN9Ti7WIX4Bj3jOHkd6oAAAAkxvGchc4N1aWAuvdo0uQq7Q3keyxey3VKl/5N2H+NVTj1UoWc4MXu0EYNsSM8L3dfeNvhWEXHwq6oFNBEnv02CEz68SPl/xQexF1oogz+hZupM/hMTMDjh2XAVBoHNL/97Od5BJo94VOIXKvGEef7iwo6m7nyHMqjaRugEG3+nUScRNdcOzQHMkAV2IkenanJglI14+DgRa4C2TYy5yEVFTVHWF90fQk2v8savpcLD6tiudmuOu23UuIkQuXjc+xcurvCvvvGufREqk3MSe6Vg5d2uXha68kK/j89Yk5WKoNUpdBPBmnxdboQPweEbUtjl8Tzk5waHMtAy8lskWxfcj/2GhEb+LFG7qfHGAeFWe4Uu7ad2dfKRe+yxdDXNqYwDiCipjZSI7au5xeY2lkaNVoaRkcmZNDyfPdFGL9edfVldWeKkyD0CiG/LoHh26PWfzRpOpgMPArDxH8+viUaqSVjLJwAAAAAKwLl+RMuZkv1zAcYwPpFsjjjSELX0tvCOJC3lS+XurH+bq0HKgNPjt+AEiywuqe0OC/6KAGhPY0SXVHJnc9CjXxj+Q3Jjb1gcQLuHoyTG+DAfjOTT+YJyMNURTKPb95MhsFkQAB0P7oIvDtIsTG74ukq4FaqR2Z5CFKIZOf8REL6kNAVLwfQYRLzB7qZu1N7BvwFDsc20qJIgjacZqSTkknKUZlu8xZRbsuVLI0k/usJxF9GDh4acvFRztEwqmt4Dhe4ypL6mG5nr/aU/hLGfSPl5Os5boVsX+A+HNY+RYzluS2NO4tossm5nISbWqCC6UtFg/q/UjbAqtA0FcXu/j6lg7rTnUBVqQhbQAAAUd/+Hg00pzfOCy/3ghyw54EFwNDd8lI1kKKS/o73lU+LD10ZyC/ojLQJEKcfrrUENZ8Pvlmanwiu/PdFLguZCd15arjR24gfRzw0SBKWEyqNEibNVNpd+Agh8t3sIRR7v4+aDoAAAA18v4MeTFTNO/Pa3Ol8+K3/Z3zVY90Ng3ni9Xxh3nZcUhR7PD5CZ9oAxdnxLoPNtTMVUn8EAMt+IjKn2yYhYtw9ghMhGCpBxSmo9KqZ0eRdn1zfogOVmXURDwAbicHRngAAAEBRpxc9ePsQEFVSI8b/tC1M2yXtAO5f++ZONm7/yuf9x4dnhgKJ40oUm2UHe2fDNVem88O0KuG/KBSues87smRyqEh8DxTKBEoeF7WHiWvpv4vCgQV6xAAAADe0GVgy/lsy1efWJli9Y/3gDjeK/ngFevz98LXwBdEyTppLU7O3Fbyy28R57c5RGOjsQ1FKG9vzyS7KXsS4odurhdUjT1fSIMFskt00LOE7E7Z/WcAAAAMAx3idTLm+cFldZI5SUtpTVtBSIUNajDAkg/RNefcd20AuW9n+G8Xkr9/ixK21hK1tmKxoHJsrPAKE2oQFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="}},"time_used":46,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":46,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/images/dhl_icons/red/call_rgb_red.svg","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.016Z","timestamp":1785161167016,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/images/dhl_icons/red/call_rgb_red.svg HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://dhlexpress.bg/public/dist/styles/application.min.css?v1773055958\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 418\r\nlast-modified: Tue, 05 Sep 2023 11:06:01 GMT\r\netag: \"297-6049a9cc59370-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":663,"size_decoded":702,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"41db2dae250b86a2cd44a39ba66dfabe","sha1":"1b4f5ddd365068977b43ac64b7e8881531b11eb3","sha256":"19d8fb166c899ebed76d755fe5ec1f05a8513e0ff555fb615407d9d5fde77523","sha512":"af2cb3550fa8eef518d30bab9eec8132589ad2482c2813d0439409bc55212ea7f4f254e59ff72fcd0495cc77273ca70553355766e9968ac4b3e3ad14bfd6c228","ssdeep":"","tlshash":"27019ec1c3245714e6c18fb21f34ce77717770f92a51079fb9e2a54a526a3813749b48","first_seen":"2026-07-27T12:47:52.451276Z","last_seen":"2026-07-27T14:06:41.17165Z","times_seen":2,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJkcGRobF9pY29ucyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNDggNDgiPjxwYXRoIGQ9Ik0zMi4wMzE4LDI4Ljk2ODNsLTUuMDYwNiw1LjA2MDdjLS4zMTE4LC4zMTE4LS43OTY0LC4zODcyLTEuMTgyMiwuMTczOC01LjAzNzUtMi43ODYzLTkuMjA1NC02Ljk1NDMtMTEuOTkxNi0xMS45OTE2LS4yMTM0LS4zODU4LS4xMzgtLjg3MDQsLjE3MzgtMS4xODIybDUuMDYwNi01LjA2MDdjLjYwMy0uNjAzLC44NTYyLTEuNDcyNCwuNjcxMi0yLjMwNDlsLTEuMjY4OS01LjcxYy0uMjUzNi0xLjE0MTMtMS4yNjU5LTEuOTUzMy0yLjQzNS0xLjk1MzNINi45OTg1Yy0uNTQxNywwLS45ODIxLC40MzQ1LS45OTMsLjk3Ni0uMDAzNSwuMTc0Mi0uMDA1NSwuMzQ4OC0uMDA1NSwuNTI0LDAsMTkuMDUzNywxNS40NDYyLDM0LjUsMzQuNSwzNC41LC4xNzUxLDAsLjM0OTctLjAwMiwuNTI0LS4wMDU1LC41NDE2LS4wMTEsLjk3Ni0uNDUxMywuOTc2LS45OTN2LTkuMDAwNWMwLTEuMTY5MS0uODEyLTIuMTgxNC0xLjk1MzMtMi40MzVsLTUuNzEtMS4yNjg5Yy0uODMyNS0uMTg1LTEuNzAxOSwuMDY4Mi0yLjMwNDksLjY3MTJaIiBmaWxsPSIjZDQwNTExIi8+PC9zdmc+"}},"time_used":33,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":33,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/scripttemplates/202510.2.0/otBannerSdk.js","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.561Z","timestamp":1785161167561,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /scripttemplates/202510.2.0/otBannerSdk.js HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: application/javascript\r\ncontent-length: 126783\r\ncontent-encoding: gzip\r\ncontent-md5: ONvHB8r9DWLCEg97H59YDg==\r\nlast-modified: Fri, 21 Nov 2025 06:40:44 GMT\r\netag: 0x8DE28C8E5F0189D\r\nserver: cloudflare\r\nx-ms-request-id: 810a2449-f01e-00b3-411b-d1690d000000\r\nx-ms-version: 2009-09-19\r\nx-ms-lease-status: unlocked\r\nx-ms-blob-type: BlockBlob\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding\r\naccess-control-allow-origin: *\r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\nvary: accept-encoding\r\nage: 32372\r\ncache-control: max-age=86400\r\ncf-cache-status: HIT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\ncf-ray: a21c33f14b54b1b8-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":"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":524879,"size_decoded":127729,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (65451)","md5":"a2c3fe34db4c7fb1c4451892bae1e4a0","sha1":"0488250e210aa49c5abeedad334c8107dccc0f48","sha256":"7c549dad313b677b15cb870dc18f00ddc3a7aa549f53aa09dfdacd5db4d9e2da","sha512":"d9663383e52face86d43fcd4075cadb66e73819c3d8060a48c72daa58af2caa5702aa680da47639a71c705e4dab6327954aa147bc299748881fbfa71474f58a3","ssdeep":"6144:gh1WDttuwivNGSwMxnpNE7q2q20+bcVw1culi/rQVa1jdpSb1zHhE/beC:guuBNGS7xnpNE7q2V+QVaYtYbN","tlshash":"81b42a4e7590753587eb92b8c027414aba35746cac85806cb45cc5f90bf9f821ea3fbb","first_seen":"2025-11-05T01:38:18.209816Z","last_seen":"2026-07-27T14:06:41.17321Z","times_seen":3846,"resource_available":true,"data":"LyoqIAogKiBvbmV0cnVzdC1iYW5uZXItc2RrCiAqIHYyMDI1MTAuMi4wCiAqIGJ5IE9uZVRydXN0IExMQwogKiBDb3B5cmlnaHQgMjAyNSAKICovCigoKT0+e3ZhciBHPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKEc9T2JqZWN0LnNldFByb3RvdHlwZU9mfHwoe19fcHJvdG9fXzpbXX1pbnN0YW5jZW9mIEFycmF5P2Z1bmN0aW9uKGUsdCl7ZS5fX3Byb3RvX189dH06ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG8gaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxvKSYmKGVbb109dFtvXSl9KSkoZSx0KX07ZnVuY3Rpb24geChlLHQpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiB0JiZudWxsIT09dCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIrU3RyaW5nKHQpKyIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpO2Z1bmN0aW9uIG8oKXt0aGlzLmNvbnN0cnVjdG9yPWV9RyhlLHQpLGUucHJvdG90eXBlPW51bGw9PT10P09iamVjdC5jcmVhdGUodCk6KG8ucHJvdG90eXBlPXQucHJvdG90eXBlLG5ldyBvKX12YXIgSCxSPWZ1bmN0aW9uKCl7cmV0dXJuKFI9T2JqZWN0LmFzc2lnbnx8ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG89MSxuPWFyZ3VtZW50cy5sZW5ndGg7bzxuO28rKylmb3IodmFyIHIgaW4gdD1hcmd1bWVudHNbb10pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJihlW3JdPXRbcl0pO3JldHVybiBlfSkuYXBwbHkodGhpcyxhcmd1bWVudHMpfTtmdW5jdGlvbiBGKGUscyxhLGwpe3JldHVybiBuZXcoYT1hfHxQcm9taXNlKShmdW5jdGlvbihvLHQpe2Z1bmN0aW9uIG4oZSl7dHJ5e2kobC5uZXh0KGUpKX1jYXRjaChlKXt0KGUpfX1mdW5jdGlvbiByKGUpe3RyeXtpKGwudGhyb3coZSkpfWNhdGNoKGUpe3QoZSl9fWZ1bmN0aW9uIGkoZSl7dmFyIHQ7ZS5kb25lP28oZS52YWx1ZSk6KCh0PWUudmFsdWUpaW5zdGFuY2VvZiBhP3Q6bmV3IGEoZnVuY3Rpb24oZSl7ZSh0KX0pKS50aGVuKG4scil9aSgobD1sLmFwcGx5KGUsc3x8W10pKS5uZXh0KCkpfSl9ZnVuY3Rpb24gTShuLHIpe3ZhciBpLHMsYSxsPXtsYWJlbDowLHNlbnQ6ZnVuY3Rpb24oKXtpZigxJmFbMF0pdGhyb3cgYVsxXTtyZXR1cm4gYVsxXX0sdHJ5czpbXSxvcHM6W119LGM9T2JqZWN0LmNyZWF0ZSgoImZ1bmN0aW9uIj09dHlwZW9mIEl0ZXJhdG9yP0l0ZXJhdG9yOk9iamVjdCkucHJvdG90eXBlKTtyZXR1cm4gYy5uZXh0PWUoMCksYy50aHJvdz1lKDEpLGMucmV0dXJuPWUoMiksImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmKGNbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSksYztmdW5jdGlvbiBlKG8pe3JldHVybiBmdW5jdGlvbihlKXt2YXIgdD1bbyxlXTtpZihpKXRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTtmb3IoO2w9YyYmdFtjPTBdPzA6bDspdHJ5e2lmKGk9MSxzJiYoYT0yJnRbMF0/cy5yZXR1cm46dFswXT9zLnRocm93fHwoKGE9cy5yZXR1cm4pJiZhLmNhbGwocyksMCk6cy5uZXh0KSYmIShhPWEuY2FsbChzLHRbMV0pKS5kb25lKXJldHVybiBhO3N3aXRjaChzPTAsKHQ9YT9bMiZ0WzBdLGEudmFsdWVdOnQpWzBdKXtjYXNlIDA6Y2FzZSAxOmE9dDticmVhaztjYXNlIDQ6cmV0dXJuIGwubGFiZWwrKyx7dmFsdWU6dFsxXSxkb25lOiExfTtjYXNlIDU6bC5sYWJlbCsrLHM9dFsxXSx0PVswXTtjb250aW51ZTtjYXNlIDc6dD1sLm9wcy5wb3AoKSxsLnRyeXMucG9wKCk7Y29udGludWU7ZGVmYXVsdDppZighKGE9MDwoYT1sLnRyeXMpLmxlbmd0aCYmYVthLmxlbmd0aC0xXSkmJig2PT09dFswXXx8Mj09PXRbMF0pKXtsPTA7Y29udGludWV9aWYoMz09PXRbMF0mJighYXx8dFsxXT5hWzBdJiZ0WzFdPGFbM10pKWwubGFiZWw9dFsxXTtlbHNlIGlmKDY9PT10WzBdJiZsLmxhYmVsPGFbMV0pbC5sYWJlbD1hWzFdLGE9dDtlbHNle2lmKCEoYSYmbC5sYWJlbDxhWzJdKSl7YVsyXSYmbC5vcHMucG9wKCksbC50cnlzLnBvcCgpO2NvbnRpbnVlfWwubGFiZWw9YVsyXSxsLm9wcy5wdXNoKHQpfX10PXIuY2FsbChuLGwpfWNhdGNoKGUpe3Q9WzYsZV0scz0wfWZpbmFsbHl7aT1hPTB9aWYoNSZ0WzBdKXRocm93IHRbMV07cmV0dXJue3ZhbHVlOnRbMF0/dFsxXTp2b2lkIDAsZG9uZTohMH19fX1mdW5jdGlvbiBVKCl7Zm9yKHZhciBlPTAsdD0wLG89YXJndW1lbnRzLmxlbmd0aDt0PG87dCsrKWUrPWFyZ3VtZW50c1t0XS5sZW5ndGg7Zm9yKHZhciBuPUFycmF5KGUpLHI9MCx0PTA7dDxvO3QrKylmb3IodmFyIGk9YXJndW1lbnRzW3RdLHM9MCxhPWkubGVuZ3RoO3M8YTtzKysscisrKW5bcl09aVtzXTtyZXR1cm4gbn0oZT1IPUh8fHt9KVtlLkFDVElWRT0wXT0iQUNUSVZFIixlW2UuQUxXQVlTX0FDVElWRT0xXT0iQUxXQVlTX0FDVElWRSIsZVtlLkVYUElSRUQ9Ml09IkVYUElSRUQiLGVbZS5OT19DT05TRU5UPTNdPSJOT19DT05TRU5UIixlW2UuT1BUX09VVD00XT0iT1BUX09VVCIsZVtlLlBFTkRJTkc9NV09IlBFTkRJTkciLGVbZS5XSVRIRFJBV049Nl09IldJVEhEUkFXTiI7dmFyIHE9c2V0VGltZW91dDtmdW5jdGlvbiBqKGUpe3JldHVybiBCb29sZWFuKGUmJnZvaWQgMCE9PWUubGVuZ3RoKX1mdW5jdGlvbiBLKCl7fWZ1bmN0aW9uIHooZSl7aWYoISh0aGlzIGluc3RhbmNlb2YgeikpdGhyb3cgbmV3IFR5cGVFcnJvcigiUHJvbWlzZXMgbXVzdCBiZSBjb25zdHJ1Y3RlZCB2aWEgbmV3Iik7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcigibm90IGEgZnVuY3Rpb24iKTt0aGlzLl9zdGF0ZT0wLHRoaXMuX2hhbmRsZWQ9ITEsdGhpcy5fdmFsdWU9dm9pZCAwLHRoaXMuX2RlZmVycmVkcz1bXSxaKGUsdGhpcyl9ZnVuY3Rpb24gVyhvLG4pe2Zvcig7Mz09PW8uX3N0YXRlOylvPW8uX3ZhbHVlOzA9PT1vLl9zdGF0ZT9vLl9kZWZlcnJlZHMucHVzaChuKTooby5faGFuZGxlZD0hMCx6Ll9pbW1lZGlhdGVGbihmdW5jdGlvbigpe3ZhciBlLHQ9MT09PW8uX3N0YXRlP24ub25GdWxmaWxsZWQ6bi5vblJlamVjdGVkO2lmKG51bGw9PT10KSgxPT09by5fc3RhdGU/WTpKKShuLnByb21pc2Usby5fdmFsdWUpO2Vsc2V7dHJ5e2U9dChvLl92YWx1ZSl9Y2F0Y2goZSl7cmV0dXJuIHZvaWQgSihuLnByb21pc2UsZSl9WShuLnByb21pc2UsZSl9fSkpfWZ1bmN0aW9uIFkodCxlKXt0cnl7aWYoZT09PXQpdGhyb3cgbmV3IFR5cGVFcnJvcigiQSBwcm9taXNlIGNhbm5vdCBiZSByZXNvbHZlZCB3aXRoIGl0c2VsZi4iKTtpZihlJiYoIm9iamVjdCI9PXR5cGVvZiBlfHwiZnVuY3Rpb24iPT10eXBlb2YgZSkpe3ZhciBvPWUudGhlbjtpZihlIGluc3RhbmNlb2YgeilyZXR1cm4gdC5fc3RhdGU9Myx0Ll92YWx1ZT1lLHZvaWQgWCh0KTtpZigiZnVuY3Rpb24iPT10eXBlb2YgbylyZXR1cm4gdm9pZCBaKChuPW8scj1lLGZ1bmN0aW9uKCl7bi5hcHBseShyLGFyZ3VtZW50cyl9KSx0KX10Ll9zdGF0ZT0xLHQuX3ZhbHVlPWUsWCh0KX1jYXRjaChlKXtKKHQsZSl9dmFyIG4scn1mdW5jdGlvbiBKKGUsdCl7ZS5fc3RhdGU9MixlLl92YWx1ZT10LFgoZSl9ZnVuY3Rpb24gWChlKXsyPT09ZS5fc3RhdGUmJjA9PT1lLl9kZWZlcnJlZHMubGVuZ3RoJiZ6Ll9pbW1lZGlhdGVGbihmdW5jdGlvbigpe2UuX2hhbmRsZWR8fHouX3VuaGFuZGxlZFJlamVjdGlvbkZuKGUuX3ZhbHVlKX0pO2Zvcih2YXIgdD0wLG89ZS5fZGVmZXJyZWRzLmxlbmd0aDt0PG87dCsrKVcoZSxlLl9kZWZlcnJlZHNbdF0pO2UuX2RlZmVycmVkcz1udWxsfWZ1bmN0aW9uIFEoZSx0LG8pe3RoaXMub25GdWxmaWxsZWQ9ImZ1bmN0aW9uIj09dHlwZW9mIGU/ZTpudWxsLHRoaXMub25SZWplY3RlZD0iZnVuY3Rpb24iPT10eXBlb2YgdD90Om51bGwsdGhpcy5wcm9taXNlPW99ZnVuY3Rpb24gWihlLHQpe3ZhciBvPSExO3RyeXtlKGZ1bmN0aW9uKGUpe298fChvPSEwLFkodCxlKSl9LGZ1bmN0aW9uKGUpe298fChvPSEwLEoodCxlKSl9KX1jYXRjaChlKXtvfHwobz0hMCxKKHQsZSkpfX1mdW5jdGlvbiAkKCl7fXoucHJvdG90eXBlLmNhdGNoPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnRoZW4obnVsbCxlKX0sei5wcm90b3R5cGUudGhlbj1mdW5jdGlvbihlLHQpe3ZhciBvPW5ldyB0aGlzLmNvbnN0cnVjdG9yKEspO3JldHVybiBXKHRoaXMsbmV3IFEoZSx0LG8pKSxvfSx6LnByb3RvdHlwZS5maW5hbGx5PWZ1bmN0aW9uKHQpe3ZhciBvPXRoaXMuY29uc3RydWN0b3I7cmV0dXJuIHRoaXMudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gby5yZXNvbHZlKHQoKSkudGhlbihmdW5jdGlvbigpe3JldHVybiBlfSl9LGZ1bmN0aW9uKGUpe3JldHVybiBvLnJlc29sdmUodCgpKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG8ucmVqZWN0KGUpfSl9KX0sei5hbGw9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyB6KGZ1bmN0aW9uKHIsaSl7aWYoIWoodCkpcmV0dXJuIGkobmV3IFR5cGVFcnJvcigiUHJvbWlzZS5hbGwgYWNjZXB0cyBhbiBhcnJheSIpKTt2YXIgcz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh0KTtpZigwPT09cy5sZW5ndGgpcmV0dXJuIHIoW10pO3ZhciBhPXMubGVuZ3RoO2Zvcih2YXIgZT0wO2U8cy5sZW5ndGg7ZSsrKSFmdW5jdGlvbiB0KG8sZSl7dHJ5e2lmKGUmJigib2JqZWN0Ij09dHlwZW9mIGV8fCJmdW5jdGlvbiI9PXR5cGVvZiBlKSl7dmFyIG49ZS50aGVuO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBuKXJldHVybiB2b2lkIG4uY2FsbChlLGZ1bmN0aW9uKGUpe3QobyxlKX0saSl9c1tvXT1lLDA9PS0tYSYmcihzKX1jYXRjaChlKXtpKGUpfX0oZSxzW2VdKX0pfSx6LnJlc29sdmU9ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJvYmplY3QiPT10eXBlb2YgdCYmdC5jb25zdHJ1Y3Rvcj09PXo/dDpuZXcgeihmdW5jdGlvbihlKXtlKHQpfSl9LHoucmVqZWN0PWZ1bmN0aW9uKG8pe3JldHVybiBuZXcgeihmdW5jdGlvbihlLHQpe3Qobyl9KX0sei5yYWNlPWZ1bmN0aW9uKHIpe3JldHVybiBuZXcgeihmdW5jdGlvbihlLHQpe2lmKCFqKHIpKXJldHVybiB0KG5ldyBUeXBlRXJyb3IoIlByb21pc2UucmFjZSBhY2NlcHRzIGFuIGFycmF5IikpO2Zvcih2YXIgbz0wLG49ci5sZW5ndGg7bzxuO28rKyl6LnJlc29sdmUocltvXSkudGhlbihlLHQpfSl9LHouX2ltbWVkaWF0ZUZuPSJmdW5jdGlvbiI9PXR5cGVvZiBzZXRJbW1lZGlhdGU/ZnVuY3Rpb24oZSl7c2V0SW1tZWRpYXRlKGUpfTpmdW5jdGlvbihlKXtxKGUsMCl9LHouX3VuaGFuZGxlZFJlamVjdGlvbkZuPWZ1bmN0aW9uKGUpeyJ1bmRlZmluZWQiIT10eXBlb2YgY29uc29sZSYmY29uc29sZSYmY29uc29sZS53YXJuKCJQb3NzaWJsZSBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IixlKX0sJC5wcm90b3R5cGUuaW5pdFBvbHlmaWxsPWZ1bmN0aW9uKCl7dGhpcy5pbml0QXJyYXlJbmNsdWRlc1BvbHlmaWxsKCksdGhpcy5pbml0T2JqZWN0QXNzaWduUG9seWZpbGwoKSx0aGlzLmluaXRBcnJheUZpbGxQb2x5ZmlsbCgpLHRoaXMuaW5pdENsb3Nlc3RQb2x5ZmlsbCgpLHRoaXMuaW5pdEluY2x1ZGVzUG9seWZpbGwoKSx0aGlzLmluaXRFbmRzV2l0aFBvbHkoKSx0aGlzLmluaXRDdXN0b21FdmVudFBvbHlmaWxsKCksdGhpcy5wcm9taXNlc1BvbHlmaWwoKX0sJC5wcm90b3R5cGUuaW5pdEFycmF5SW5jbHVkZXNQb2x5ZmlsbD1mdW5jdGlvbigpe0FycmF5LnByb3RvdHlwZS5pbmNsdWRlc3x8T2JqZWN0LmRlZmluZVByb3BlcnR5KEFycmF5LnByb3RvdHlwZSwiaW5jbHVkZXMiLHt2YWx1ZTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9W10sbz0xO288YXJndW1lbnRzLmxlbmd0aDtvKyspdFtvLTFdPWFyZ3VtZW50c1tvXTtpZihudWxsPT10aGlzKXRocm93IG5ldyBUeXBlRXJyb3IoIkFycmF5LnByb3RvdHlwZS5pbmNsdWRlcyBjYWxsZWQgb24gbnVsbCBvciB1bmRlZmluZWQiKTt2YXIgbj1PYmplY3QodGhpcykscj1wYXJzZUludChuLmxlbmd0aCwxMCl8fDA7aWYoMCE9PXIpe3ZhciBpLHMsYT10WzFdfHwwO2ZvcigwPD1hP2k9YTooaT1yK2EpPDAmJihpPTApO2k8cjspe2lmKGU9PT0ocz1uW2ldKXx8ZSE9ZSYmcyE9cylyZXR1cm4hMDtpKyt9fXJldHVybiExfSx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9KX0sJC5wcm90b3R5cGUuaW5pdEVuZHNXaXRoUG9seT1mdW5jdGlvbigpe1N0cmluZy5wcm90b3R5cGUuZW5kc1dpdGh8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShTdHJpbmcucHJvdG90eXBlLCJlbmRzV2l0aCIse3ZhbHVlOmZ1bmN0aW9uKGUsdCl7cmV0dXJuKHZvaWQgMD09PXR8fHQ+dGhpcy5sZW5ndGgpJiYodD10aGlzLmxlbmd0aCksdGhpcy5zdWJzdHJpbmcodC1lLmxlbmd0aCx0KT09PWV9LHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pfSwkLnByb3RvdHlwZS5pbml0Q2xvc2VzdFBvbHlmaWxsPWZ1bmN0aW9uKCl7RWxlbWVudC5wcm90b3R5cGUubWF0Y2hlc3x8KEVsZW1lbnQucHJvdG90eXBlLm1hdGNoZXM9RWxlbWVudC5wcm90b3R5cGUubXNNYXRjaGVzU2VsZWN0b3J8fEVsZW1lbnQucHJvdG90eXBlLndlYmtpdE1hdGNoZXNTZWxlY3RvciksRWxlbWVudC5wcm90b3R5cGUuY2xvc2VzdHx8T2JqZWN0LmRlZmluZVByb3BlcnR5KEVsZW1lbnQucHJvdG90eXBlLCJjbG9zZXN0Iix7dmFsdWU6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztkb3tpZih0Lm1hdGNoZXMoZSkpcmV0dXJuIHR9d2hpbGUobnVsbCE9PSh0PXQucGFyZW50RWxlbWVudHx8dC5wYXJlbnROb2RlKSYmMT09PXQubm9kZVR5cGUpO3JldHVybiBudWxsfSx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9KX0sJC5wcm90b3R5cGUuaW5pdEluY2x1ZGVzUG9seWZpbGw9ZnVuY3Rpb24oKXtTdHJpbmcucHJvdG90eXBlLmluY2x1ZGVzfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoU3RyaW5nLnByb3RvdHlwZSwiaW5jbHVkZXMiLHt2YWx1ZTpmdW5jdGlvbihlLHQpe3JldHVybiEoKHQ9Im51bWJlciIhPXR5cGVvZiB0PzA6dCkrZS5sZW5ndGg+dGhpcy5sZW5ndGgpJiYtMSE9PXRoaXMuaW5kZXhPZihlLHQpfSx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9KX0sJC5wcm90b3R5cGUuaW5pdE9iamVjdEFzc2lnblBvbHlmaWxsPWZ1bmN0aW9uKCl7ImZ1bmN0aW9uIiE9dHlwZW9mIE9iamVjdC5hc3NpZ24mJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QsImFzc2lnbiIse3ZhbHVlOmZ1bmN0aW9uKGUsdCl7aWYobnVsbD09ZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY29udmVydCB1bmRlZmluZWQgb3IgbnVsbCB0byBvYmplY3QiKTtmb3IodmFyIG89T2JqZWN0KGUpLG49MTtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKXt2YXIgcj1hcmd1bWVudHNbbl07aWYobnVsbCE9cilmb3IodmFyIGkgaW4gcilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixpKSYmKG9baV09cltpXSl9cmV0dXJuIG99LHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pfSwkLnByb3RvdHlwZS5pbml0QXJyYXlGaWxsUG9seWZpbGw9ZnVuY3Rpb24oKXtBcnJheS5wcm90b3R5cGUuZmlsbHx8T2JqZWN0LmRlZmluZVByb3BlcnR5KEFycmF5LnByb3RvdHlwZSwiZmlsbCIse3ZhbHVlOmZ1bmN0aW9uKGUpe2lmKG51bGw9PXRoaXMpdGhyb3cgbmV3IFR5cGVFcnJvcigidGhpcyBpcyBudWxsIG9yIG5vdCBkZWZpbmVkIik7Zm9yKHZhciB0PU9iamVjdCh0aGlzKSxvPXQubGVuZ3RoPj4+MCxuPWFyZ3VtZW50c1sxXT4+MCxyPW48MD9NYXRoLm1heChvK24sMCk6TWF0aC5taW4obixvKSxuPWFyZ3VtZW50c1syXSxuPXZvaWQgMD09PW4/bzpuPj4wLGk9bjwwP01hdGgubWF4KG8rbiwwKTpNYXRoLm1pbihuLG8pO3I8aTspdFtyXT1lLHIrKztyZXR1cm4gdH19KX0sJC5wcm90b3R5cGUuaW5pdEN1c3RvbUV2ZW50UG9seWZpbGw9ZnVuY3Rpb24oKXtpZigiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93LkN1c3RvbUV2ZW50KXJldHVybiExO2Z1bmN0aW9uIGUoZSx0KXt0PXR8fHtidWJibGVzOiExLGNhbmNlbGFibGU6ITEsZGV0YWlsOnZvaWQgMH07dmFyIG89ZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkN1c3RvbUV2ZW50Iik7cmV0dXJuIG8uaW5pdEN1c3RvbUV2ZW50KGUsdC5idWJibGVzLHQuY2FuY2VsYWJsZSx0LmRldGFpbCksb31lLnByb3RvdHlwZT13aW5kb3cuRXZlbnQucHJvdG90eXBlLHdpbmRvdy5DdXN0b21FdmVudD1lfSwkLnByb3RvdHlwZS5pbnNlcnRWaWV3UG9ydFRhZz1mdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ21ldGFbbmFtZT0idmlld3BvcnQiXScpLHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibWV0YSIpO3QubmFtZT0idmlld3BvcnQiLHQuY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiLGV8fGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodCl9LCQucHJvdG90eXBlLnByb21pc2VzUG9seWZpbD1mdW5jdGlvbigpeyJ1bmRlZmluZWQiPT10eXBlb2YgUHJvbWlzZSYmKHdpbmRvdy5Qcm9taXNlPXopfTt2YXIgZWUsdGUsb2UsbmUscmUsaWUsc2UsYWUsbGUsY2UsZGUsdWUscGUsQ2UsZ2UsaGUseWUsZmUsU2UsbWUsdmUsVGUsUGUsQWUsa2UsSWUsYmUsTGUsX2UsbyxFZSxPZSxEZSxWZSx3ZSxCZSxOZSxHZT1uZXcgJCx4ZT0oKGU9ZWU9ZWV8fHt9KVtlLlVua25vd249MF09IlVua25vd24iLGVbZS5CYW5uZXJDbG9zZUJ1dHRvbj0xXT0iQmFubmVyQ2xvc2VCdXR0b24iLGVbZS5Db25maXJtQ2hvaWNlQnV0dG9uPTJdPSJDb25maXJtQ2hvaWNlQnV0dG9uIixlW2UuQWNjZXB0QWxsPTNdPSJBY2NlcHRBbGwiLGVbZS5SZWplY3RBbGw9NF09IlJlamVjdEFsbCIsZVtlLkJhbm5lclNhdmVTZXR0aW5ncz01XT0iQmFubmVyU2F2ZVNldHRpbmdzIixlW2UuQ29udGludWVXaXRob3V0QWNjZXB0aW5nQnV0dG9uPTZdPSJDb250aW51ZVdpdGhvdXRBY2NlcHRpbmdCdXR0b24iLChlPXRlPXRlfHx7fSlbZS5CYW5uZXI9MV09IkJhbm5lciIsZVtlLlBDPTJdPSJQQyIsZVtlLkFQST0zXT0iQVBJIiwoZT1vZT1vZXx8e30pLkFjY2VwdEFsbD0iQWNjZXB0QWxsIixlLlJlamVjdEFsbD0iUmVqZWN0QWxsIixlLlVwZGF0ZUNvbnNlbnQ9IlVwZGF0ZUNvbnNlbnQiLChlPW5lPW5lfHx7fSlbZS5QdXJwb3NlPTFdPSJQdXJwb3NlIixlW2UuU3BlY2lhbEZlYXR1cmU9Ml09IlNwZWNpYWxGZWF0dXJlIiwoZT1yZT1yZXx8e30pLkxlZ2FsPSJsZWdhbCIsZS5Vc2VyRnJpZW5kbHk9InVzZXJfZnJpZW5kbHkiLChlPWllPWllfHx7fSkuVG9wPSJ0b3AiLGUuQm90dG9tPSJib3R0b20iLChlPXNlPXNlfHx7fSlbZS5CYW5uZXI9MF09IkJhbm5lciIsZVtlLlByZWZDZW50ZXJIb21lPTFdPSJQcmVmQ2VudGVySG9tZSIsZVtlLlZlbmRvckxpc3Q9Ml09IlZlbmRvckxpc3QiLGVbZS5Db29raWVMaXN0PTNdPSJDb29raWVMaXN0IixlW2UuSWFiSWxsdXN0cmF0aW9ucz00XT0iSWFiSWxsdXN0cmF0aW9ucyIsKGU9YWU9YWV8fHt9KVtlLlJpZ2h0QXJyb3c9MzldPSJSaWdodEFycm93IixlW2UuTGVmdEFycm93PTM3XT0iTGVmdEFycm93IixlW2UuVXBBcnJvdz0zOF09IlVwQXJyb3ciLGVbZS5Eb3duQXJyb3c9NDBdPSJEb3duQXJyb3ciLChlPWxlPWxlfHx7fSkuQWZ0ZXJUaXRsZT0iQWZ0ZXJUaXRsZSIsZS5BZnRlckRlc2NyaXB0aW9uPSJBZnRlckRlc2NyaXB0aW9uIixlLkFmdGVyRFBEPSJBZnRlckRQRCIsKGU9Y2U9Y2V8fHt9KS5QbHVzTWludXM9IlBsdXNtaW51cyIsZS5DYXJldD0iQ2FyZXQiLGUuTm9BY2NvcmRpb249Ik5vQWNjb3JkaW9uIiwoZT1kZT1kZXx8e30pLkNvbnNlbnQ9IkNvbnNlbnQiLGUuTEk9IkxJIixlLkFkZHRsQ29uc2VudD0iQWRkdGxDb25zZW50IiwoZT11ZT11ZXx8e30pLklhYjFQdWI9ImV1cHViY29uc2VudCIsZS5JYWIyUHViPSJldXB1YmNvbnNlbnQtdjIiLGUuSWFiMUV1PSJldWNvbnNlbnQiLGUuSWFiMkV1PSJldWNvbnNlbnQtdjIiLChlPXBlPXBlfHx7fSlbZS5EaXNhYmxlZD0wXT0iRGlzYWJsZWQiLGVbZS5Db25zZW50PTFdPSJDb25zZW50IixlW2UuTGVnSW50PTJdPSJMZWdJbnQiLChlPUNlPUNlfHx7fSlbZVsiQmFubmVyIC0gQWxsb3cgQWxsIl09MV09IkJhbm5lciAtIEFsbG93IEFsbCIsZVtlWyJCYW5uZXIgLSBSZWplY3QgQWxsIl09Ml09IkJhbm5lciAtIFJlamVjdCBBbGwiLGVbZVsiQmFubmVyIC0gQ2xvc2UiXT0zXT0iQmFubmVyIC0gQ2xvc2UiLGVbZVsiUHJlZmVyZW5jZSBDZW50ZXIgLSBBbGxvdyBBbGwiXT00XT0iUHJlZmVyZW5jZSBDZW50ZXIgLSBBbGxvdyBBbGwiLGVbZVsiUHJlZmVyZW5jZSBDZW50ZXIgLSBSZWplY3QgQWxsIl09NV09IlByZWZlcmVuY2UgQ2VudGVyIC0gUmVqZWN0IEFsbCIsZVtlWyJQcmVmZXJlbmNlIENlbnRlciAtIENvbmZpcm0iXT02XT0iUHJlZmVyZW5jZSBDZW50ZXIgLSBDb25maXJtIixlW2VbIkdQQyB2YWx1ZSBjaGFuZ2VkIl09N109IkdQQyB2YWx1ZSBjaGFuZ2VkIiwoZT1nZT1nZXx8e30pLkFjdGl2ZT0iMSIsZS5JbkFjdGl2ZT0iMCIsKGU9aGU9aGV8fHt9KS5Ib3N0PSJIb3N0IixlLkdlblZlbmRvcj0iR2VuVmVuIiwoZT15ZT15ZXx8e30pW2UuSG9zdD0xXT0iSG9zdCIsZVtlLkdlblZlbj0yXT0iR2VuVmVuIixlW2UuSG9zdEFuZEdlblZlbj0zXT0iSG9zdEFuZEdlblZlbiIsKGU9ZmU9ZmV8fHt9KVtlLm1pbkRheXM9MV09Im1pbkRheXMiLGVbZS5tYXhEYXlzPTMwXT0ibWF4RGF5cyIsZVtlLm1heFllYXI9MzE1MzZlM109Im1heFllYXIiLGVbZS5tYXhTZWNUb0RheXM9ODY0MDBdPSJtYXhTZWNUb0RheXMiLChlPVNlPVNlfHx7fSlbZS5SVEw9MF09IlJUTCIsZVtlLkxUUj0xXT0iTFRSIiwoZT1tZT1tZXx8e30pW2UuR29vZ2xlVmVuZG9yPTFdPSJHb29nbGVWZW5kb3IiLGVbZS5HZW5lcmFsVmVuZG9yPTJdPSJHZW5lcmFsVmVuZG9yIiwoZT14dD14dHx8e30pW2UuRGF5cz0xXT0iRGF5cyIsZVtlLldlZWtzPTddPSJXZWVrcyIsZVtlLk1vbnRocz0zMF09Ik1vbnRocyIsZVtlLlllYXJzPTM2NV09IlllYXJzIiwoZT12ZT12ZXx8e30pLkNoZWNrYm94PSJDaGVja2JveCIsZS5Ub2dnbGU9IlRvZ2dsZSIsKGU9VGU9VGV8fHt9KS5TbGlkZUluPSJTbGlkZV9JbiIsZS5GYWRlSW49IkZhZGVfSW4iLGUuUmVtb3ZlQW5pbWF0aW9uPSJSZW1vdmVfQW5pbWF0aW9uIiwoZT1QZT1QZXx8e30pLkxpbms9IkxpbmsiLGUuSWNvbj0iSWNvbiIsKGU9QWU9QWV8fHt9KS5jb25zZW50PSJjb25zZW50IixlLnNldD0ic2V0IiwoZT1rZT1rZXx8e30pLnVwZGF0ZT0idXBkYXRlIixlLmRlZmF1bHQ9ImRlZmF1bHQiLGUuYWRzX2RhdGFfcmVkYWN0aW9uPSJhZHNfZGF0YV9yZWRhY3Rpb24iLChlPUllPUllfHx7fSkuYW5hbHl0aWNzX3N0b3JhZ2U9ImFuYWx5dGljc19zdG9yYWdlIixlLmFkX3N0b3JhZ2U9ImFkX3N0b3JhZ2UiLGUuZnVuY3Rpb25hbGl0eV9zdG9yYWdlPSJmdW5jdGlvbmFsaXR5X3N0b3JhZ2UiLGUucGVyc29uYWxpemF0aW9uX3N0b3JhZ2U9InBlcnNvbmFsaXphdGlvbl9zdG9yYWdlIixlLnNlY3VyaXR5X3N0b3JhZ2U9InNlY3VyaXR5X3N0b3JhZ2UiLGUuYWRfdXNlcl9kYXRhPSJhZF91c2VyX2RhdGEiLGUuYWRfcGVyc29uYWxpemF0aW9uPSJhZF9wZXJzb25hbGl6YXRpb24iLGUucmVnaW9uPSJyZWdpb24iLGUud2FpdF9mb3JfdXBkYXRlPSJ3YWl0X2Zvcl91cGRhdGUiLChlPWJlPWJlfHx7fSkuZ3JhbnRlZD0iZ3JhbnRlZCIsZS5kZW5pZWQ9ImRlbmllZCIsMCwoZT1MZT1MZXx8e30pLk9CSkVDVF9UT19MST0iT2JqZWN0VG9MSSIsZS5MSV9BQ1RJVkVfSUZfTEVHQUxfQkFTSVM9IkxJQWN0aXZlSWZMZWdhbEJhc2lzIiwoZT1fZT1fZXx8e30pLmNvb2tpZXM9ImNvb2tpZXMiLGUudmVuZG9ycz0idmVuZG9ycyIsKGU9bz1vfHx7fSkuR0RQUj0iR0RQUiIsZS5DQ1BBPSJDQ1BBIixlLklBQjI9IklBQjIiLGUuSUFCMlYyPSJJQUIyVjIiLGUuR0VORVJJQz0iR0VORVJJQyIsZS5MR1BEPSJMR1BEIixlLkdFTkVSSUNfUFJPTVBUPSJHRU5FUklDX1BST01QVCIsZS5DUFJBPSJDUFJBIixlLkNEUEE9IkNEUEEiLGUuREVMQVdBUkU9IkRFTEFXQVJFIixlLklPV0E9IklPV0EiLGUuTkVCUkFTS0E9Ik5FQlJBU0tBIixlLlVTTkFUSU9OQUw9IlVTTkFUSU9OQUwiLGUuQ1VTVE9NPSJDVVNUT00iLGUuRkxPUklEQT0iRkxPUklEQSIsZS5DT0xPUkFETz0iQ09MT1JBRE8iLGUuQ09OTkVDVElDVVQ9IkNURFBBIixlLk1PTlRBTkE9Ik1PTlRBTkEiLGUuVEVYQVM9IlRFWEFTIixlLk9SRUdPTj0iT1JFR09OIixlLlRFTk5FU1NFRT0iVEVOTkVTU0VFIixlLk5FV0pFUlNFWT0iTkVXSkVSU0VZIixlLk5FV0hBTVBTSElSRT0iTkVXSEFNUFNISVJFIixlLlVDUEE9IlVDUEEiLGUuVklSR0lOSUE9IlZJUkdJTklBIix7Y2E6by5DUFJBLHZhOm8uQ0RQQSxjbzpvLkNPTE9SQURPLG9yOm8uT1JFR09OLGN0Om8uQ09OTkVDVElDVVQsZmw6by5GTE9SSURBLG10Om8uTU9OVEFOQSx0eDpvLlRFWEFTLGRlOm8uREVMQVdBUkUsaWE6by5JT1dBLG5lOm8uTkVCUkFTS0EsdG46by5URU5ORVNTRUUsbmo6by5ORVdKRVJTRVksbmg6by5ORVdIQU1QU0hJUkUsdXQ6by5VQ1BBfSksaD0oKGU9RWU9RWV8fHt9KS5BQ0NFUFRfQUxMPSJBQ0NFUFRfQUxMIixlLlJFSkVDVF9BTEw9IlJFSkVDVF9BTEwiLGUuU0FWRV9QUkVGRVJFTkNFPSJTQVZFX1BSRUZFUkVOQ0UiLChlPU9lPU9lfHx7fSkuTmFtZT0iT1RHUFBDb25zZW50IixlW2UuQ2h1bmtTaXplPTRlM109IkNodW5rU2l6ZSIsZS5DaHVua0NvdW50UGFyYW09IkdQUENvb2tpZXNDb3VudCIsZS5ncHBTaWQ9ImdwcFNpZCIsKGU9RGU9RGV8fHt9KS5Nc3BhQ292ZXJlZFRyYW5zYWN0aW9uPSJJc01TUEFFbmFibGVkIixlLk1zcGFPcHRPdXRPcHRpb25Nb2RlPSJPcHQtT3V0IixlLk1zcGFTZXJ2aWNlUHJvdmlkZXJNb2RlPSJTZXJ2aWNlIFByb3ZpZGVyIiwwLChlPVZlPVZlfHx7fSkuR3BjU2VnbWVudFR5cGU9IkdwY1NlZ21lbnRUeXBlIixlLkdwYz0iR3BjIiwoZT13ZT13ZXx8e30pLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nPSJTZW5zaXRpdmVEYXRhUHJvY2Vzc2luZyIsZS5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzPSJLbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzIiwoZT1CZT1CZXx8e30pLkNQUkE9InVzY2EiLGUuQ0NQQT0idXNjYSIsZS5DRFBBPSJ1c3ZhIixlLk9SRUdPTj0idXNvciIsZS5VU05BVElPTkFMPSJ1c25hdCIsZS5DT0xPUkFETz0idXNjbyIsZS5GTE9SSURBPSJ1c2ZsIixlLkNURFBBPSJ1c2N0IixlLk1PTlRBTkE9InVzbXQiLGUuVEVYQVM9InVzdHgiLGUuREVMQVdBUkU9InVzZGUiLGUuSU9XQT0idXNpYSIsZS5ORUJSQVNLQT0idXNuZSIsZS5URU5ORVNTRUU9InVzdG4iLGUuTkVXSkVSU0VZPSJ1c25qIixlLk5FV0hBTVBTSElSRT0idXNuaCIsZS5VQ1BBPSJ1c3V0IixlLlZJUkdJTklBPSJ1c3ZhIixlLklBQjJWMj0idGNmZXV2MiIsKGU9TmU9TmV8fHt9KVtlLkNQUkE9OF09IkNQUkEiLGVbZS5DQ1BBPThdPSJDQ1BBIixlW2UuQ0RQQT05XT0iQ0RQQSIsZVtlLk9SRUdPTj0xNV09Ik9SRUdPTiIsZVtlLlVTTkFUSU9OQUw9N109IlVTTkFUSU9OQUwiLGVbZS5DT0xPUkFETz0xMF09IkNPTE9SQURPIixlW2UuRkxPUklEQT0xM109IkZMT1JJREEiLGVbZS5NT05UQU5BPTE0XT0iTU9OVEFOQSIsZVtlLlRFWEFTPTE2XT0iVEVYQVMiLGVbZS5ERUxBV0FSRT0xN109IkRFTEFXQVJFIixlW2UuSU9XQT0xOF09IklPV0EiLGVbZS5ORUJSQVNLQT0xOV09Ik5FQlJBU0tBIixlW2UuTkVXSEFNUFNISVJFPTIwXT0iTkVXSEFNUFNISVJFIixlW2UuTkVXSkVSU0VZPTIxXT0iTkVXSkVSU0VZIixlW2UuVEVOTkVTU0VFPTIyXT0iVEVOTkVTU0VFIixlW2UuVUNQQT0xMV09IlVDUEEiLGVbZS5WSVJHSU5JQT05XT0iVklSR0lOSUEiLGVbZS5DVERQQT0xMl09IkNURFBBIixlW2UuSUFCMlYyPTJdPSJJQUIyVjIiLDAsMCwwLDAsMCx7QVdBSVRJTkdfUkVfQ09OU0VOVDoiQXdhaXRpbmdSZWNvbnNlbnQiLENPTlNFTlRfSUQ6ImNvbnNlbnRJZCIsR0VPX0xPQ0FUSU9OOiJnZW9sb2NhdGlvbiIsSU5URVJBQ1RJT05fQ09VTlQ6ImludGVyYWN0aW9uQ291bnQiLElTX0lBQl9HTE9CQUw6ImlzSUFCR2xvYmFsIixOT1RfTEFORElOR19QQUdFOiJOb3RMYW5kaW5nUGFnZSIsR0VPOiJnZW8iLEdQQ19FTkFCTEVEOiJpc0dwY0VuYWJsZWQiLEdQQ19Ccm93c2VyX0ZsYWc6ImJyb3dzZXJHcGNGbGFnIixJU19BTk9OWU1PVVNfQ09OU0VOVDoiaXNBbm9uVXNlciIsSURFTlRJRklFUl9UWVBFOiJpZGVudGlmaWVyVHlwZSIsUFJFVl9VU0VSX0NPTlNFTlQ6ImlUeXBlIixJTlRFUkFDVElPTl9UWVBFOiJpbnRUeXBlIixHUk9VUFM6Imdyb3VwcyIsSEVBTFRIX1NJR05BVFVSRV9BVVRIT1JJWkFUSU9OOiJoZWFsdGhBdXRoIn0pLHk9e0FERElUSU9OQUxfQ09OU0VOVF9TVFJJTkc6Ik9UQWRkaXRpb25hbENvbnNlbnRTdHJpbmciLEFMRVJUX0JPWF9DTE9TRUQ6Ik9wdGFub25BbGVydEJveENsb3NlZCIsT1BUQU5PTl9DT05TRU5UOiJPcHRhbm9uQ29uc2VudCIsRVVfUFVCX0NPTlNFTlQ6ImV1cHViY29uc2VudC12MiIsRVVfQ09OU0VOVDoiZXVjb25zZW50LXYyIixTRUxFQ1RFRF9WQVJJQU5UOiJPVFZhcmlhbnQiLE9UX1BSRVZJRVc6Im90cHJldmlldyIsR1BQX0NPTlNFTlQ6T2UuTmFtZX0sSGU9IkNPTkZJUk1FRCIsUmU9Ik9QVF9PVVQiLEZlPSJOT19DSE9JQ0UiLE1lPSJOT1RHSVZFTiIsVWU9Ik5PX09QVF9PVVQiLGY9e0FMV0FZU19JTkFDVElWRToiYWx3YXlzIGluYWN0aXZlIixBTFdBWVNfQUNUSVZFOiJhbHdheXMgYWN0aXZlIixBQ1RJVkU6ImFjdGl2ZSIsSU5BQ1RJVkVfTEFORElOR19QQUdFOiJpbmFjdGl2ZSBsYW5kaW5ncGFnZSIsSU5BQ1RJVkU6ImluYWN0aXZlIixJTVBMSUVEX0NPTlNFTlQ6ImltcGxpZWQgY29uc2VudCIsR1BDOiJncGMiLEROVDoiZG50In0scWU9e0xPQ0FMOiJMT0NBTCIsVEVTVDoiVEVTVCIsTE9DQUxfVEVTVDoiTE9DQUxfVEVTVCIsUFJPRFVDVElPTjoiUFJPRFVDVElPTiJ9LGplPSJkYXRhLWRvY3VtZW50LWxhbmd1YWdlIixLZT0iZGF0YS1sYW5ndWFnZSIsemU9Im90Q29va2llU2V0dGluZ3NCdXR0b24uanNvbiIsV2U9Im90Q29va2llU2V0dGluZ3NCdXR0b25SdGwuanNvbiIsWWU9Im90Q2VudGVyUm91bmRlZCIsSmU9Im90RmxhdCIsWGU9Im90RmxvYXRpbmdSb3VuZGVkQ29ybmVyIixRZT0ib3RGbG9hdGluZ0ZsYXQiLFplPSJvdEZsb2F0aW5nUm91bmRlZEljb24iLCRlPSJvdEZsb2F0aW5nUm91bmRlZCIsZXQ9Im90Q2hvaWNlc0Jhbm5lciIsdHQ9Im90Tm9CYW5uZXIiLG90PSJvdFBjQ2VudGVyIixudD0ib3RQY0xpc3QiLHJ0PSJvdFBjUGFuZWwiLGl0PSJvdFBjUG9wdXAiLHN0PSJvdFBjVGFiIixhdD0iaGlkZWJhbm5lciIsbHQ9MjEwLGN0PTE2MCxkdD0xMDUsdXQ9MzAscHQ9Ii0tb3QtZm9vdGVyLXNwYWNlIixDdD0oKGU9e30pW3h0LkRheXNdPSJQQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuRGF5IixlW3h0LldlZWtzXT0iTGZTcG5XayIsZVt4dC5Nb250aHNdPSJQQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuTW9udGgiLGVbeHQuWWVhcnNdPSJMZlNwbllyIixlKSxndD0iRE5BQyIsaHQ9IkNhdGVnb3J5Iix5dD0iSG9zdCIsZnQ9IkdlbmVyYWwgVmVuZG9yIixTdD0iVmVuZG9yU2VydmljZSIsbXQ9ImFyaWEtbGFiZWwiLHZ0PSJhcmlhLWhpZGRlbiIsVHQ9ImFkX3N0b3JhZ2UiLFB0PSJ1c2VyX2RhdGEiLEF0PSJCUkFOQ0giLGt0PSJDT09LSUUiLEl0PSJJQUIyVjJfU1BMX1BVUlBPU0UiLGJ0PSJJQUIyVjJfRkVBVFVSRSIsTHQ9IklBQjJWMl9TUExfRkVBVFVSRSIsX3Q9WyJJQUIyX1BVUlBPU0UiLCJJQUIyX1NUQUNLIiwiSUFCMl9GRUFUVVJFIiwiSUFCMl9TUExfUFVSUE9TRSIsIklBQjJfU1BMX0ZFQVRVUkUiLCJJQUIyVjJfUFVSUE9TRSIsIklBQjJWMl9TUExfUFVSUE9TRSIsIklBQjJWMl9GRUFUVVJFIiwiSUFCMlYyX1NQTF9GRUFUVVJFIiwiSUFCMlYyX1NUQUNLIl0sRXQ9WyJDT09LSUUiLCJCUkFOQ0giLCJJQUIyX1NUQUNLIiwiSUFCMlYyX1NUQUNLIl0sT3Q9WyJJQUIyX1BVUlBPU0UiLCJJQUIyX1NQTF9GRUFUVVJFIiwiSUFCMlYyX1BVUlBPU0UiLCJJQUIyVjJfU1BMX0ZFQVRVUkUiXSxEdD1bIklBQjJfRkVBVFVSRSIsIklBQjJfU1BMX1BVUlBPU0UiLCJJQUIyVjJfRkVBVFVSRSIsIklBQjJWMl9TUExfUFVSUE9TRSJdLFZ0PVsiSUFCMl9QVVJQT1NFIiwiSUFCMl9TUExfUFVSUE9TRSIsIklBQjJfRkVBVFVSRSIsIklBQjJfU1BMX0ZFQVRVUkUiXSx3dD17SUFCMlYyOiJwdXIiLElGRTJWMjoiZnQiLElTUDJWMjoic3BsX3B1ciIsSVNGMlYyOiJzcGxfZnQifSxCdD17cHVyOiJwdXJwb3NlcyIsZnQ6ImZlYXR1cmVzIixzcGxfcHVyOiJzcGVjaWFsUHVycG9zZXMiLHNwbF9mdDoic3BlY2lhbEZlYXR1cmVzIn0sUz1uZXcgZnVuY3Rpb24oKXt9O2Z1bmN0aW9uIGQoZSx0LG8pe3ZvaWQgMD09PW8mJihvPSExKTtmdW5jdGlvbiBuKGUpe3JldHVybiBlPygiOyIhPT0oZT1lLnRyaW0oKSkuY2hhckF0KGUubGVuZ3RoLTEpJiYoZSs9IjsiKSxlLnRyaW0oKSk6bnVsbH12YXIgaT1uKGUuZ2V0QXR0cmlidXRlKCJzdHlsZSIpKSxzPW4odCksdD0iIix0PW8mJmk/KCgpPT57Zm9yKHZhciBlPWkuc3BsaXQoIjsiKS5jb25jYXQocy5zcGxpdCgiOyIpKS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIDAhPT1lLmxlbmd0aH0pLHQ9IiIsbz0iIixuPWUubGVuZ3RoLTE7MDw9bjtuLS0pe3ZhciByPWVbbl0uc3Vic3RyaW5nKDAsZVtuXS5pbmRleE9mKCI6IikrMSkudHJpbSgpO3QuaW5kZXhPZihyKTwwJiYodCs9cixvKz1lW25dKyI7Iil9cmV0dXJuIG99KSgpOnM7ZS5zZXRBdHRyaWJ1dGUoInN0eWxlIix0KX1hLmluc2VydEFmdGVyPWZ1bmN0aW9uKGUsdCl7dC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlLHQubmV4dFNpYmxpbmcpfSxhLmluc2VydEJlZm9yZT1mdW5jdGlvbihlLHQpe3QucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSx0KX0sYS5pbkFycmF5PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQuaW5kZXhPZihlKX0sYS5hamF4PWZ1bmN0aW9uKGUpe3ZhciB0PW51bGwsbz1uZXcgWE1MSHR0cFJlcXVlc3Qsbj1lLnR5cGUscj1lLmNvbnRlbnRUeXBlLGk9ZS5kYXRhLHM9ZS5zdWNjZXNzLGE9ZS50b2tlbix0PWUuZXJyb3I7by5vcGVuKG4sZS51cmwsIWUuc3luYyksby5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLHIpLGEmJm8uc2V0UmVxdWVzdEhlYWRlcigiQXV0aG9yaXphdGlvbiIsYSksby53aXRoQ3JlZGVudGlhbHM9ITEsby5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgZTsyMDA8PXRoaXMuc3RhdHVzJiZ0aGlzLnN0YXR1czw0MDA/KGU9SlNPTi5wYXJzZSh0aGlzLnJlc3BvbnNlVGV4dCkscyhlKSk6dCh7bWVzc2FnZToiRXJyb3IgTG9hZGluZyBEYXRhIixzdGF0dXNDb2RlOnRoaXMuc3RhdHVzfSl9LG8ub25lcnJvcj1mdW5jdGlvbihlKXt0KGUpfSwicG9zdCI9PT1uLnRvTG93ZXJDYXNlKCl8fCJwdXQiPT09bi50b0xvd2VyQ2FzZSgpP28uc2VuZChpKTpvLnNlbmQoKX0sYS5wcmV2TmV4dEhlbHBlcj1mdW5jdGlvbihvLGUsbil7dmFyIHI9W107ZnVuY3Rpb24gaShlLHQsbyl7dFtlXSYmbz9vLmluY2x1ZGVzKCIuIik/KHRbZV0uY2xhc3NMaXN0WzBdfHx0W2VdLmNsYXNzTGlzdC52YWx1ZSYmdFtlXS5jbGFzc0xpc3QudmFsdWUuaW5jbHVkZXMoby5zcGxpdCgiLiIpWzFdKSkmJnIucHVzaCh0W2VdKTpvLmluY2x1ZGVzKCIjIik/dFtlXS5pZD09PW8uc3BsaXQoIiMiKVsxXSYmci5wdXNoKHRbZV0pOnRbZV0udGFnTmFtZT09PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoby50cmltKCkpLnRhZ05hbWUmJnIucHVzaCh0W2VdKTp0W2VdJiZyLnB1c2godFtlXSl9cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChlKSxmdW5jdGlvbihlLHQpe2kobyxlLG4pfSk6aShvLGUsbikscn0sYS5icm93c2VyPWZ1bmN0aW9uKCl7dmFyIGUsdCxvO3JldHVybiBuYXZpZ2F0b3Iuc2F5c3dobz0obz0odD1uYXZpZ2F0b3IudXNlckFnZW50KS5tYXRjaCgvKG9wZXJhfGNocm9tZXxzYWZhcml8ZmlyZWZveHxtc2llfHRyaWRlbnQoPz1cLykpXC8/XHMqKFxkKykvaSl8fFtdLC90cmlkZW50L2kudGVzdChvWzFdKT8iSUUgIisoKGU9L1xicnZbIDpdKyhcZCspL2cuZXhlYyh0KXx8W10pWzFdfHwiIik6IkNocm9tZSI9PT1vWzFdJiZudWxsIT0oZT10Lm1hdGNoKC9cYihPUFJ8RWRnZSlcLyhcZCspLykpP2Uuc2xpY2UoMSkuam9pbigiICIpLnJlcGxhY2UoIk9QUiIsIk9wZXJhIik6KG89b1syXT9bb1sxXSxvWzJdXTpbbmF2aWdhdG9yLmFwcE5hbWUsbmF2aWdhdG9yLmFwcFZlcnNpb24sIi0/Il0sbnVsbCE9KGU9dC5tYXRjaCgvdmVyc2lvblwvKFxkKykvaSkpJiZvLnNwbGljZSgxLDEsZVsxXSksby5qb2luKCIgIikpKSx7dmVyc2lvbjpwYXJzZUludChuYXZpZ2F0b3Iuc2F5c3doby5zcGxpdCgiICIpWzFdKSx0eXBlOm5hdmlnYXRvci5zYXlzd2hvLnNwbGl0KCIgIilbMF0sdXNlckFnZW50Om5hdmlnYXRvci51c2VyQWdlbnR9fSxhLmlzTm9kZUxpc3Q9ZnVuY3Rpb24oZSl7ZT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSk7cmV0dXJuIltvYmplY3QgTm9kZUxpc3RdIj09PWV8fCJbb2JqZWN0IEFycmF5XSI9PT1lfSxhLmdldElubmVySHRtbENvbnRlbnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIGEuaXNDc3BUcnVzdGVkVHlwZSgpP3dpbmRvdy5PdFRydXN0ZWRUeXBlLlRydXN0ZWRUeXBlUG9saWN5LmNyZWF0ZUhUTUwoZSk6ZX0sYS5nZXRTY3JpcHRVcmw9ZnVuY3Rpb24oZSl7cmV0dXJuIGEuaXNDc3BUcnVzdGVkVHlwZSgpP3dpbmRvdy5PdFRydXN0ZWRUeXBlLlRydXN0ZWRUeXBlUG9saWN5LmNyZWF0ZVNjcmlwdFVSTChlKTplfSxhLmlzQ3NwVHJ1c3RlZFR5cGU9ZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4obnVsbD09KGU9d2luZG93Lk90VHJ1c3RlZFR5cGUpP3ZvaWQgMDplLmlzQ3NwVHJ1c3RlZFR5cGVFbmFibGVkKSYmKG51bGw9PShlPXdpbmRvdy5PdFRydXN0ZWRUeXBlKT92b2lkIDA6ZS5UcnVzdGVkVHlwZVBvbGljeSl9LGEucHJvdG90eXBlLmZhZGVPdXQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztpZih2b2lkIDA9PT1lJiYoZT02MCksMTw9dGhpcy5lbC5sZW5ndGgpZm9yKHZhciBvPTA7bzx0aGlzLmVsLmxlbmd0aDtvKyspZCh0aGlzLmVsW29dLCJcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzICIrZSsibXMsIG9wYWNpdHkgIitlKyJtcyBsaW5lYXI7XG4gICAgICAgICAgICAgICAgIiwhMCk7dmFyIG49c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtpZigxPD10LmVsLmxlbmd0aClmb3IodmFyIGU9MDtlPHQuZWwubGVuZ3RoO2UrKyl0LmVsW2VdLnN0eWxlLm9wYWNpdHk8PTAmJihkKHQuZWxbZV0sImRpc3BsYXk6IG5vbmU7IiwhMCksY2xlYXJJbnRlcnZhbChuKSwib3B0YW5vbi1wb3B1cC1iZyI9PT10LmVsW2VdLmlkKSYmdC5lbFtlXS5yZW1vdmVBdHRyaWJ1dGUoInN0eWxlIil9LGUpO3JldHVybiB0aGlzfSxhLnByb3RvdHlwZS5oaWRlPWZ1bmN0aW9uKCl7aWYoMTw9dGhpcy5lbC5sZW5ndGgpZm9yKHZhciBlPTA7ZTx0aGlzLmVsLmxlbmd0aDtlKyspZCh0aGlzLmVsW2VdLCJkaXNwbGF5OiBub25lOyIsITApLHRoaXMuZWxbZV0uc2V0QXR0cmlidXRlKHZ0LCEwKTtlbHNlIGEuaXNOb2RlTGlzdCh0aGlzLmVsKXx8KGQodGhpcy5lbCwiZGlzcGxheTogbm9uZTsiLCEwKSx0aGlzLmVsLnNldEF0dHJpYnV0ZSh2dCwhMCkpO3JldHVybiB0aGlzfSxhLnByb3RvdHlwZS5zaG93PWZ1bmN0aW9uKGUpe2lmKHZvaWQgMD09PWUmJihlPSJibG9jayIpLDE8PXRoaXMuZWwubGVuZ3RoKWZvcih2YXIgdD0wO3Q8dGhpcy5lbC5sZW5ndGg7dCsrKWQodGhpcy5lbFt0XSwiZGlzcGxheTogIitlKyI7IiwhMCksdGhpcy5lbFt0XS5yZW1vdmVBdHRyaWJ1dGUodnQpO2Vsc2UgYS5pc05vZGVMaXN0KHRoaXMuZWwpfHwoZCh0aGlzLmVsLCJkaXNwbGF5OiAiK2UrIjsiLCEwKSx0aGlzLmVsLnJlbW92ZUF0dHJpYnV0ZSh2dCkpO3JldHVybiB0aGlzfSxhLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oKXtpZigxPD10aGlzLmVsLmxlbmd0aClmb3IodmFyIGU9MDtlPHRoaXMuZWwubGVuZ3RoO2UrKyl0aGlzLmVsW2VdLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5lbFtlXSk7ZWxzZSB0aGlzLmVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5lbCk7cmV0dXJuIHRoaXN9LGEucHJvdG90eXBlLmNzcz1mdW5jdGlvbihlKXtpZihlKWlmKDE8PXRoaXMuZWwubGVuZ3RoKXtpZighZS5pbmNsdWRlcygiOiIpKXJldHVybiB0aGlzLmVsWzBdLnN0eWxlW2VdO2Zvcih2YXIgdD0wO3Q8dGhpcy5lbC5sZW5ndGg7dCsrKWQodGhpcy5lbFt0XSxlKX1lbHNle2lmKCFlLmluY2x1ZGVzKCI6IikpcmV0dXJuIHRoaXMuZWwuc3R5bGVbZV07ZCh0aGlzLmVsLGUpfXJldHVybiB0aGlzfSxhLnByb3RvdHlwZS5yZW1vdmVDbGFzcz1mdW5jdGlvbihlKXtpZigxPD10aGlzLmVsLmxlbmd0aClmb3IodmFyIHQ9MDt0PHRoaXMuZWwubGVuZ3RoO3QrKyl0aGlzLmVsW3RdLmNsYXNzTGlzdD90aGlzLmVsW3RdLmNsYXNzTGlzdC5yZW1vdmUoZSk6dGhpcy5lbFt0XS5jbGFzc05hbWU9dGhpcy5lbFt0XS5jbGFzc05hbWUucmVwbGFjZShuZXcgUmVnRXhwKCIoXnxcXGIpIitlLnNwbGl0KCIgIikuam9pbigifCIpKyIoXFxifCQpIiwiZ2kiKSwiICIpO2Vsc2UgdGhpcy5lbC5jbGFzc0xpc3Q/dGhpcy5lbC5jbGFzc0xpc3QucmVtb3ZlKGUpOnRoaXMuZWwuY2xhc3NOYW1lPXRoaXMuZWwuY2xhc3NOYW1lLnJlcGxhY2UobmV3IFJlZ0V4cCgiKF58XFxiKSIrZS5zcGxpdCgiICIpLmpvaW4oInwiKSsiKFxcYnwkKSIsImdpIiksIiAiKTtyZXR1cm4gdGhpc30sYS5wcm90b3R5cGUuYWRkQ2xhc3M9ZnVuY3Rpb24oZSl7aWYoMTw9dGhpcy5lbC5sZW5ndGgpZm9yKHZhciB0PTA7dDx0aGlzLmVsLmxlbmd0aDt0KyspdGhpcy5lbFt0XS5jbGFzc0xpc3Q/dGhpcy5lbFt0XS5jbGFzc0xpc3QuYWRkKGUpOnRoaXMuZWxbdF0uY2xhc3NOYW1lKz0iICIrZTtlbHNlIHRoaXMuZWwuY2xhc3NMaXN0P3RoaXMuZWwuY2xhc3NMaXN0LmFkZChlKTp0aGlzLmVsLmNsYXNzTmFtZSs9IiAiK2U7cmV0dXJuIHRoaXN9LGEucHJvdG90eXBlLm9uPWZ1bmN0aW9uKHIsaSxzKXt2YXIgZT10aGlzO2lmKCJzdHJpbmciIT10eXBlb2YgaSlpZih0aGlzLmVsJiYiSFRNTCI9PT10aGlzLmVsLm5vZGVOYW1lJiYibG9hZCI9PT1yfHwicmVzaXplIj09PXJ8fCJzY3JvbGwiPT09cilzd2l0Y2gocil7Y2FzZSJsb2FkIjp3aW5kb3cub25sb2FkPWk7YnJlYWs7Y2FzZSJyZXNpemUiOndpbmRvdy5vbnJlc2l6ZT1pO2JyZWFrO2Nhc2Uic2Nyb2xsIjp3aW5kb3cub25zY3JvbGw9aX1lbHNlIGlmKHRoaXMuZWwmJjE8PXRoaXMuZWwubGVuZ3RoKWZvcih2YXIgdD0wO3Q8dGhpcy5lbC5sZW5ndGg7dCsrKXRoaXMuZWxbdF0uYWRkRXZlbnRMaXN0ZW5lcihyLGkpO2Vsc2UgdGhpcy5lbCYmdGhpcy5lbCBpbnN0YW5jZW9mIEVsZW1lbnQmJnRoaXMuZWwuYWRkRXZlbnRMaXN0ZW5lcihyLGkpO2Vsc2UgaWYodGhpcy5lbCYmIkhUTUwiPT09dGhpcy5lbC5ub2RlTmFtZSYmImxvYWQiPT09cnx8InJlc2l6ZSI9PT1yfHwic2Nyb2xsIj09PXIpc3dpdGNoKHIpe2Nhc2UibG9hZCI6d2luZG93Lm9ubG9hZD1zO2JyZWFrO2Nhc2UicmVzaXplIjp3aW5kb3cub25yZXNpemU9czticmVhaztjYXNlInNjcm9sbCI6d2luZG93Lm9uc2Nyb2xsPXN9ZWxzZXt2YXIgYT1mdW5jdGlvbihvKXt2YXIgbj1vLnRhcmdldDtlLmVsLmV2ZW50RXhlY3V0ZWQ9ITAsQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGkpLGZ1bmN0aW9uKGUsdCl7TnRbIiIrcitpXSYmZGVsZXRlIE50WyIiK3IraV0sZS5hZGRFdmVudExpc3RlbmVyKHIscyksZT09PW4mJnMmJnMuY2FsbChlLG8pfSksZS5lbCYmZS5lbFswXT9lLmVsWzBdLnJlbW92ZUV2ZW50TGlzdGVuZXIocixhKTplLmVsJiZlLmVsIGluc3RhbmNlb2YgRWxlbWVudCYmZS5lbC5yZW1vdmVFdmVudExpc3RlbmVyKHIsYSl9O2lmKHRoaXMuZWwmJjE8PXRoaXMuZWwubGVuZ3RoKWZvcih0PTA7dDx0aGlzLmVsLmxlbmd0aDt0KyspdGhpcy5lbFt0XS5ldmVudEV4ZWN1dGVkPSExLHRoaXMuZWxbdF0uZXZlbnRFeGVjdXRlZHx8dGhpcy5lbFt0XS5hZGRFdmVudExpc3RlbmVyKHIsYSk7ZWxzZSB0aGlzLmVsJiYodGhpcy5lbC5ldmVudEV4ZWN1dGVkPSExLCF0aGlzLmVsLmV2ZW50RXhlY3V0ZWQpJiZ0aGlzLmVsIGluc3RhbmNlb2YgRWxlbWVudCYmKE50WyIiK3IraV18fChOdFsiIityK2ldPSEwLHRoaXMuZWwuYWRkRXZlbnRMaXN0ZW5lcihyLGEpKSl9cmV0dXJuIHRoaXN9LGEucHJvdG90eXBlLm9mZj1mdW5jdGlvbihlLHQpe2lmKDE8PXRoaXMuZWwubGVuZ3RoKWZvcih2YXIgbz0wO288dGhpcy5lbC5sZW5ndGg7bysrKXRoaXMuZWxbb10ucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLHQpO2Vsc2UgdGhpcy5lbC5yZW1vdmVFdmVudExpc3RlbmVyKGUsdCk7cmV0dXJuIHRoaXN9LGEucHJvdG90eXBlLm9uZT1mdW5jdGlvbih0LG8pe3ZhciBuPXRoaXM7aWYoMTw9dGhpcy5lbC5sZW5ndGgpZm9yKHZhciBlPTA7ZTx0aGlzLmVsLmxlbmd0aDtlKyspdGhpcy5lbFtlXS5hZGRFdmVudExpc3RlbmVyKHQsZnVuY3Rpb24oZSl7ZS5zdG9wUHJvcGFnYXRpb24oKSxlLmN1cnJlbnRUYXJnZXQuZGF0YXNldC50cmlnZ2VyZWR8fChvKCksZS5jdXJyZW50VGFyZ2V0LmRhdGFzZXQudHJpZ2dlcmVkPSEwKX0pO2Vsc2V7dmFyIHI9ZnVuY3Rpb24oZSl7ZS5zdG9wUHJvcGFnYXRpb24oKSxvKCksbi5vZmYodCxyKX07dGhpcy5lbC5hZGRFdmVudExpc3RlbmVyKHQscil9cmV0dXJuIHRoaXN9LGEucHJvdG90eXBlLnRyaWdnZXI9ZnVuY3Rpb24oZSl7ZT1uZXcgQ3VzdG9tRXZlbnQoZSx7Y3VzdG9tRXZlbnQ6InllcyJ9KTtyZXR1cm4gdGhpcy5lbC5kaXNwYXRjaEV2ZW50KGUpLHRoaXN9LGEucHJvdG90eXBlLmZvY3VzPWZ1bmN0aW9uKCl7cmV0dXJuKDE8PXRoaXMuZWwubGVuZ3RoP3RoaXMuZWxbMF06dGhpcy5lbCkuZm9jdXMoKSx0aGlzfSxhLnByb3RvdHlwZS5hdHRyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuZWwmJjE8PXRoaXMuZWwubGVuZ3RoP3Q/KCJjbGFzcyI9PT1lP3RoaXMuYWRkQ2xhc3ModCk6dGhpcy5lbFswXS5zZXRBdHRyaWJ1dGUoZSx0KSx0aGlzKTp0aGlzLmVsWzBdLmdldEF0dHJpYnV0ZShlKTp0JiZ0aGlzLmVsPygiY2xhc3MiPT09ZT90aGlzLmFkZENsYXNzKHQpOnRoaXMuZWwuc2V0QXR0cmlidXRlKGUsdCksdGhpcyk6dGhpcy5lbCYmdGhpcy5lbC5nZXRBdHRyaWJ1dGUoZSl9LGEucHJvdG90eXBlLmh0bWw9ZnVuY3Rpb24oZSl7aWYobnVsbD09ZSlyZXR1cm4oMTw9dGhpcy5lbC5sZW5ndGg/dGhpcy5lbFswXTp0aGlzLmVsKS5pbm5lckhUTUw7dmFyIHQ9YS5nZXRJbm5lckh0bWxDb250ZW50KGUpO2lmKDE8PXRoaXMuZWwubGVuZ3RoKWZvcih2YXIgbz0wO288dGhpcy5lbC5sZW5ndGg7bysrKXRoaXMuZWxbb10uaW5uZXJIVE1MPXQ7ZWxzZSB0aGlzLmVsLmlubmVySFRNTD10O3JldHVybiB0aGlzfSxhLnByb3RvdHlwZS5hcHBlbmQ9ZnVuY3Rpb24oZSl7aWYoInN0cmluZyIhPXR5cGVvZiBlfHxlLmluY2x1ZGVzKCI8Iil8fGUuaW5jbHVkZXMoIj4iKSlpZihBcnJheS5pc0FycmF5KGUpKXt2YXIgbz10aGlzO0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZSxmdW5jdGlvbihlLHQpe2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3Ioby5zZWxlY3RvcikuYXBwZW5kQ2hpbGQobmV3IGEoZSwiY2UiKS5lbCl9KX1lbHNle2lmKCJzdHJpbmciPT10eXBlb2YgZXx8QXJyYXkuaXNBcnJheShlKSlyZXR1cm4gdGhpcy5hcHBlbmRIdG1sRWxlbWVudChlKTtpZigic3RyaW5nIj09dHlwZW9mIHRoaXMuc2VsZWN0b3IpZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLnNlbGVjdG9yKS5hcHBlbmRDaGlsZChlKTtlbHNlIGlmKDE8PWUubGVuZ3RoKWZvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXRoaXMuc2VsZWN0b3IuYXBwZW5kQ2hpbGQoZVt0XSk7ZWxzZSB0aGlzLnNlbGVjdG9yLmFwcGVuZENoaWxkKGUpfWVsc2UgdGhpcy5lbC5pbnNlcnRBZGphY2VudFRleHQoImJlZm9yZWVuZCIsZSk7cmV0dXJuIHRoaXN9LGEucHJvdG90eXBlLnRleHQ9ZnVuY3Rpb24obyl7aWYodGhpcy5lbCl7aWYoMTw9dGhpcy5lbC5sZW5ndGgpe2lmKCFvKXJldHVybiB0aGlzLmVsWzBdLnRleHRDb250ZW50O0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwodGhpcy5lbCxmdW5jdGlvbihlLHQpe2UudGV4dENvbnRlbnQ9b30pfWVsc2V7aWYoIW8pcmV0dXJuIHRoaXMuZWwudGV4dENvbnRlbnQ7dGhpcy5lbC50ZXh0Q29udGVudD1vfXJldHVybiB0aGlzfX0sYS5wcm90b3R5cGUuZGF0YT1mdW5jdGlvbihvLG4pe2lmKCEodGhpcy5lbC5sZW5ndGg8MSkpe2lmKCEoMTw9dGhpcy5lbC5sZW5ndGgpKXJldHVybiByKHRoaXMuZWwsbik7QXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbCh0aGlzLmVsLGZ1bmN0aW9uKGUsdCl7cihlLG4pfSl9cmV0dXJuIHRoaXM7ZnVuY3Rpb24gcihlLHQpe2lmKCF0KXJldHVybiBKU09OLnBhcnNlKGUuZ2V0QXR0cmlidXRlKCJkYXRhLSIrbykpOyJvYmplY3QiPT10eXBlb2YgdD9lLnNldEF0dHJpYnV0ZSgiZGF0YS0iK28sSlNPTi5zdHJpbmdpZnkodCkpOmUuc2V0QXR0cmlidXRlKCJkYXRhLSIrbyx0KX19LGEucHJvdG90eXBlLmhlaWdodD1mdW5jdGlvbihlKXt0aGlzLmVsLmxlbmd0aCYmKHRoaXMuZWw9dGhpcy5lbFswXSk7Zm9yKHZhciB0PXBhcnNlSW50KHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRoaXMuZWwsbnVsbCkuZ2V0UHJvcGVydHlWYWx1ZSgicGFkZGluZy10b3AiKS5zcGxpdCgicHgiKVswXSksbz1wYXJzZUludCh3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLmVsLG51bGwpLmdldFByb3BlcnR5VmFsdWUoInBhZGRpbmctYm90dG9tIikuc3BsaXQoInB4IilbMF0pLG49cGFyc2VJbnQod2luZG93LmdldENvbXB1dGVkU3R5bGUodGhpcy5lbCxudWxsKS5nZXRQcm9wZXJ0eVZhbHVlKCJtYXJnaW4tdG9wIikuc3BsaXQoInB4IilbMF0pLHI9cGFyc2VJbnQod2luZG93LmdldENvbXB1dGVkU3R5bGUodGhpcy5lbCxudWxsKS5nZXRQcm9wZXJ0eVZhbHVlKCJtYXJnaW4tYm90dG9tIikuc3BsaXQoInB4IilbMF0pLGk9cGFyc2VJbnQod2luZG93LmdldENvbXB1dGVkU3R5bGUodGhpcy5lbCxudWxsKS5nZXRQcm9wZXJ0eVZhbHVlKCJoZWlnaHQiKS5zcGxpdCgicHgiKVswXSkscz1bdCxvLG4scl0sYT0wLGw9MDtsPHMubGVuZ3RoO2wrKykwPHNbbF0mJihhKz1zW2xdKTtyZXR1cm4gZT8odD1lLnRvU3RyaW5nKCkuc3BsaXQocGFyc2VJbnQoZSkpWzFdP2UudG9TdHJpbmcoKS5zcGxpdChwYXJzZUludChlKSlbMV06InB4IixvPSJudW1iZXIiPT10eXBlb2YgZT9lOnBhcnNlSW50KGUudG9TdHJpbmcoKS5zcGxpdCh0KVswXSksKHQmJiJweCI9PT10fHwiJSI9PT10fHwiZW0iPT09dHx8InJlbSI9PT10KSYmKDA8bz9kKHRoaXMuZWwsImhlaWdodDogIisoYStvK3QpKyI7IiwhMCk6ImF1dG8iPT09ZSYmZCh0aGlzLmVsLCJoZWlnaHQ6ICIrZSsiOyIsITApKSx0aGlzKTp0aGlzLnNlbGVjdG9yPT09ZG9jdW1lbnQ/aTp0aGlzLmVsLmNsaWVudEhlaWdodC1hfSxhLnByb3RvdHlwZS5lYWNoPWZ1bmN0aW9uKGUpe3ZhciB0PSExO3JldHVybiB2b2lkIDA9PT10aGlzLmVsLmxlbmd0aCYmKHRoaXMuZWw9W3RoaXMuZWxdLHQ9ITApLEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwodGhpcy5lbCxlKSx0JiYodGhpcy5lbD10aGlzLmVsWzBdKSx0aGlzfSxhLnByb3RvdHlwZS5pcz1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lbC5sZW5ndGg/KHRoaXMuZWxbMF0ubWF0Y2hlc3x8dGhpcy5lbFswXS5tYXRjaGVzU2VsZWN0b3J8fHRoaXMuZWxbMF0ubXNNYXRjaGVzU2VsZWN0b3J8fHRoaXMuZWxbMF0ubW96TWF0Y2hlc1NlbGVjdG9yfHx0aGlzLmVsWzBdLndlYmtpdE1hdGNoZXNTZWxlY3Rvcnx8dGhpcy5lbFswXS5vTWF0Y2hlc1NlbGVjdG9yKS5jYWxsKHRoaXMuZWxbMF0sZSk6KHRoaXMuZWwubWF0Y2hlc3x8dGhpcy5lbC5tYXRjaGVzU2VsZWN0b3J8fHRoaXMuZWwubXNNYXRjaGVzU2VsZWN0b3J8fHRoaXMuZWwubW96TWF0Y2hlc1NlbGVjdG9yfHx0aGlzLmVsLndlYmtpdE1hdGNoZXNTZWxlY3Rvcnx8dGhpcy5lbC5vTWF0Y2hlc1NlbGVjdG9yKS5jYWxsKHRoaXMuZWwsZSl9LGEucHJvdG90eXBlLmZpbHRlcj1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lbD1BcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh0aGlzLnNlbGVjdG9yKSxlKSx0aGlzfSxhLnByb3RvdHlwZS5hbmltYXRlPWZ1bmN0aW9uKGUsdCl7dmFyIG8sbixyLGkscz10aGlzO3RoaXMuZWw9ZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLnNlbGVjdG9yKTtmb3IobyBpbiBlKW49byxpPXI9dm9pZCAwLHI9cGFyc2VJbnQoZVtuXSksaT1lW25dLnNwbGl0KHBhcnNlSW50KGVbbl0pKVsxXT9lW25dLnNwbGl0KHBhcnNlSW50KGVbbl0pKVsxXToicHgiLHI9cy5jcmVhdGVLZXlGcmFtZUFuaW1hdGlvbihuLHMuZWwscixpKSwoaT1kb2N1bWVudC5oZWFkLnF1ZXJ5U2VsZWN0b3IoIiNvbmV0cnVzdC1zdHlsZSIpKT9pLmlubmVySFRNTD1hLmdldElubmVySHRtbENvbnRlbnQoaS5pbm5lckhUTUwrcik6KChpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIikpLmlkPSJvbmV0cnVzdC1sZWdhY3ktc3R5bGUiLGkudHlwZT0idGV4dC9jc3MiLGkuaW5uZXJIVE1MPWEuZ2V0SW5uZXJIdG1sQ29udGVudChyKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGkpKSxzLmFkZFdlYktpdEFuaW1hdGlvbihuLHQpO3JldHVybiB0aGlzfSxhLnByb3RvdHlwZS5zY3JvbGxUb3A9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbC5zY3JvbGxUb3B9LGEucHJvdG90eXBlLmFwcGVuZEh0bWxFbGVtZW50PWZ1bmN0aW9uKG8pe3ZhciBuLHIsZTtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHRoaXMuc2VsZWN0b3I/ZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLnNlbGVjdG9yKS5hcHBlbmRDaGlsZChuZXcgYShvLCJjZSIpLmVsKTp0aGlzLnVzZUVsPyhuPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSwocj0hKCFvLmluY2x1ZGVzKCI8dGgiKSYmIW8uaW5jbHVkZXMoIjx0ZCIpKSkmJihlPW8uc3BsaXQoIiAiKVswXS5zcGxpdCgiPCIpWzFdLG4uYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudChlKSksbi5maXJzdENoaWxkLmlubmVySFRNTD1hLmdldElubmVySHRtbENvbnRlbnQobykpLEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwodGhpcy5lbCxmdW5jdGlvbihlLHQpe3I/ZS5hcHBlbmRDaGlsZChuLmZpcnN0Q2hpbGQpOmUuYXBwZW5kQ2hpbGQobmV3IGEobywiY2UiKS5lbCl9KSk6dGhpcy5zZWxlY3Rvci5hcHBlbmRDaGlsZChuZXcgYShvLCJjZSIpLmVsKSx0aGlzfSxhLnByb3RvdHlwZS5jcmVhdGVLZXlGcmFtZUFuaW1hdGlvbj1mdW5jdGlvbihlLHQsbyxuKXtyZXR1cm4iXG4gICAgICAgIEBrZXlmcmFtZXMgc2xpZGUtIisoInRvcCI9PT1lPyJ1cCI6ImRvd24iKSsiLWN1c3RvbSB7XG4gICAgICAgICAgICAwJSB7XG4gICAgICAgICAgICAgICAgIisoInRvcCI9PT1lPyJ0b3AiOiJib3R0b20iKSsiOiAiKygidG9wIj09PWU/dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A6d2luZG93LmlubmVySGVpZ2h0KSsicHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDEwMCUge1xuICAgICAgICAgICAgICAgICIrKCJ0b3AiPT09ZT8idG9wIjoiYm90dG9tIikrIjogIisobytuKSsiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBzbGlkZS0iKygidG9wIj09PWU/InVwIjoiZG93biIpKyItY3VzdG9tIHtcbiAgICAgICAgICAgIDAlIHtcbiAgICAgICAgICAgICAgICAiKygidG9wIj09PWU/InRvcCI6ImJvdHRvbSIpKyI6ICIrKCJ0b3AiPT09ZT90LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDp3aW5kb3cuaW5uZXJIZWlnaHQpKyJweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICAgICAgIisoInRvcCI9PT1lPyJ0b3AiOiJib3R0b20iKSsiOiAiKyhvK24pKyI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQC1tb3ota2V5ZnJhbWVzIHNsaWRlLSIrKCJ0b3AiPT09ZT8idXAiOiJkb3duIikrIi1jdXN0b20ge1xuICAgICAgICAgICAgMCUge1xuICAgICAgICAgICAgICAgICIrKCJ0b3AiPT09ZT8idG9wIjoiYm90dG9tIikrIjogIisoInRvcCI9PT1lP3QuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wOndpbmRvdy5pbm5lckhlaWdodCkrInB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgICAgICAiKygidG9wIj09PWU/InRvcCI6ImJvdHRvbSIpKyI6ICIrKG8rbikrIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAifSxhLnByb3RvdHlwZS5hZGRXZWJLaXRBbmltYXRpb249ZnVuY3Rpb24oZSx0KXsoYS5icm93c2VyKCkudHlwZT1hLmJyb3dzZXIoKS52ZXJzaW9uPD04KT9kKHRoaXMuZWwsInRvcCI9PT1lPyItd2Via2l0LWFuaW1hdGlvbjogc2xpZGUtdXAtY3VzdG9tICI6Ii13ZWJraXQtYW5pbWF0aW9uOiBzbGlkZS1kb3duLWN1c3RvbSAiK3QrIm1zIGVhc2Utb3V0IGZvcndhcmRzOyIpOmQodGhpcy5lbCwiXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6ICIrKCJ0b3AiPT09ZT8ic2xpZGUtdXAtY3VzdG9tIjoic2xpZGUtZG93bi1jdXN0b20iKSsiO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogIit0KyJtcztcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgICAgICIsITApfTt2YXIgbT1hO2Z1bmN0aW9uIGEoZSx0KXtzd2l0Y2godm9pZCAwPT09dCYmKHQ9IiIpLHRoaXMuc2VsZWN0b3I9ZSx0aGlzLnVzZUVsPSExLHQpe2Nhc2UiY2UiOnZhciBvPWEuYnJvd3NlcigpLnR5cGUudG9Mb3dlckNhc2UoKSxuPWEuYnJvd3NlcigpLnZlcnNpb247bjwxMCYmInNhZmFyaSI9PT1vfHwiY2hyb21lIj09PW8mJm48PTQ0fHxuPD00MCYmImZpcmVmb3giPT09bz8oKG49ZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCkpLmJvZHkuaW5uZXJIVE1MPWEuZ2V0SW5uZXJIdG1sQ29udGVudChlKSx0aGlzLmVsPW4uYm9keS5jaGlsZHJlblswXSk6KG89ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKS5jcmVhdGVDb250ZXh0dWFsRnJhZ21lbnQoYS5nZXRJbm5lckh0bWxDb250ZW50KGUpKSx0aGlzLmVsPW8uZmlyc3RDaGlsZCksdGhpcy5sZW5ndGg9MTticmVhaztjYXNlIiI6dGhpcy5lbD1lPT09ZG9jdW1lbnR8fGU9PT13aW5kb3c/ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50OiJzdHJpbmciIT10eXBlb2YgZT9lOmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoZSksdGhpcy5sZW5ndGg9ZT09PWRvY3VtZW50fHxlPT09d2luZG93fHwic3RyaW5nIiE9dHlwZW9mIGU/MTp0aGlzLmVsLmxlbmd0aDticmVhaztkZWZhdWx0OnRoaXMubGVuZ3RoPTB9fWZ1bmN0aW9uIHYoZSx0KXtyZXR1cm4gbmV3IG0oZSx0PXZvaWQgMD09PXQ/IiI6dCl9dmFyIE50PXt9O2Z1bmN0aW9uIEd0KCl7fUd0LnByb3RvdHlwZS5jb252ZXJ0S2V5VmFsdWVMb3dlckNhc2U9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0IGluIGUpZVt0LnRvTG93ZXJDYXNlKCldP2VbdC50b0xvd2VyQ2FzZSgpXT1lW3RdLnRvTG93ZXJDYXNlKCk6KGVbdF0mJihlW3QudG9Mb3dlckNhc2UoKV09ZVt0XS50b0xvd2VyQ2FzZSgpKSxkZWxldGUgZVt0XSk7cmV0dXJuIGV9LEd0LnByb3RvdHlwZS5hcnJUb1N0cj1mdW5jdGlvbihlKXtyZXR1cm4gZS50b1N0cmluZygpfSxHdC5wcm90b3R5cGUuc3RyVG9BcnI9ZnVuY3Rpb24oZSl7cmV0dXJuIGU/ZS5zcGxpdCgiLCIpOltdfSxHdC5wcm90b3R5cGUuc3RyVG9NYXA9ZnVuY3Rpb24oZSl7aWYoIWUpcmV0dXJuIG5ldyBNYXA7Zm9yKHZhciB0PW5ldyBNYXAsbz0wLG49dGhpcy5zdHJUb0FycihlKTtvPG4ubGVuZ3RoO28rKyl7dmFyIHI9bltvXS5zcGxpdCgiOiIpO3Quc2V0KHJbMF0sIjEiPT09clsxXSl9cmV0dXJuIHR9LEd0LnByb3RvdHlwZS5lbXB0eT1mdW5jdGlvbihlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChlKTtpZih0KWZvcig7dC5oYXNDaGlsZE5vZGVzKCk7KXQucmVtb3ZlQ2hpbGQodC5sYXN0Q2hpbGQpfSxHdC5wcm90b3R5cGUuc2hvdz1mdW5jdGlvbihlKXtlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGUpO2UmJmQoZSwiZGlzcGxheTogYmxvY2s7IiwhMCl9LEd0LnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oZSl7ZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChlKTtlJiZlLnBhcmVudE5vZGUmJmUucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlKX0sR3QucHJvdG90eXBlLmFwcGVuZFRvPWZ1bmN0aW9uKGUsdCl7dmFyIG8sZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChlKTtlJiYoKG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQodCksZS5hcHBlbmRDaGlsZChvKSl9LEd0LnByb3RvdHlwZS5jb250YWlucz1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbz0wO288ZS5sZW5ndGg7bys9MSlpZihlW29dLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKT09PXQudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpKXJldHVybiEwO3JldHVybiExfSxHdC5wcm90b3R5cGUuaW5kZXhPZj1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbz0wO288ZS5sZW5ndGg7bys9MSlpZihlW29dPT09dClyZXR1cm4gbztyZXR1cm4tMX0sR3QucHJvdG90eXBlLmVuZHNXaXRoPWZ1bmN0aW9uKGUsdCl7cmV0dXJuLTEhPT1lLmluZGV4T2YodCxlLmxlbmd0aC10Lmxlbmd0aCl9LEd0LnByb3RvdHlwZS5nZW5lcmF0ZVVVSUQ9ZnVuY3Rpb24oKXt2YXIgbz0obmV3IERhdGUpLmdldFRpbWUoKTtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIHBlcmZvcm1hbmNlJiYiZnVuY3Rpb24iPT10eXBlb2YgcGVyZm9ybWFuY2Uubm93JiYobys9cGVyZm9ybWFuY2Uubm93KCkpLCJ4eHh4eHh4eC14eHh4LTR4eHgteXh4eC14eHh4eHh4eHh4eHgiLnJlcGxhY2UoL1t4eV0vZyxmdW5jdGlvbihlKXt2YXIgdD0obysxNipNYXRoLnJhbmRvbSgpKSUxNnwwO3JldHVybiBvPU1hdGguZmxvb3Ioby8xNiksKCJ4Ij09PWU/dDozJnR8OCkudG9TdHJpbmcoMTYpfSl9LEd0LnByb3RvdHlwZS5nZXRBY3RpdmVJZEFycmF5PWZ1bmN0aW9uKGUpe3JldHVybiBlLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4idHJ1ZSI9PT1lLnNwbGl0KCI6IilbMV19KS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIHBhcnNlSW50KGUuc3BsaXQoIjoiKVswXSl9KX0sR3QucHJvdG90eXBlLmRpc3RpbmN0QXJyYXk9ZnVuY3Rpb24oZSl7dmFyIHQ9bmV3IEFycmF5O3JldHVybiBlLmZvckVhY2goZnVuY3Rpb24oZSl7dC5pbmRleE9mKGUpPDAmJnQucHVzaChlKX0pLHR9LEd0LnByb3RvdHlwZS5maW5kSW5kZXg9ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG89LTEsbj0wO248ZS5sZW5ndGg7bisrKWlmKHZvaWQgMCE9PWVbbl0mJnQoZVtuXSxuKSl7bz1uO2JyZWFrfXJldHVybiBvfSxHdC5wcm90b3R5cGUuZ2V0VVJMPWZ1bmN0aW9uKGUpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtyZXR1cm4gdC5ocmVmPWUsdH0sR3QucHJvdG90eXBlLnJlbW92ZVVSTFByZWZpeGVzPWZ1bmN0aW9uKGUpe3JldHVybiBlLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvKF5cdys6fF4pXC9cLy8sIiIpLnJlcGxhY2UoInd3dy4iLCIiKX0sR3QucHJvdG90eXBlLnJlbW92ZUNoaWxkPWZ1bmN0aW9uKGUpe2lmKGUpaWYoZSBpbnN0YW5jZW9mIE5vZGVMaXN0fHxlIGluc3RhbmNlb2YgQXJyYXkpZm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0KyspZVt0XS5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGVbdF0pO2Vsc2UgZS5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGUpfSxHdC5wcm90b3R5cGUuZ2V0UmVsYXRpdmVVUkw9ZnVuY3Rpb24oZSx0LG8pe3JldHVybiB2b2lkIDA9PT1vJiYobz0hMSksdD8odD0iLi8iK2UucmVwbGFjZSgvXihodHRwfGh0dHBzKTpcL1wvLywiIikuc3BsaXQoIi8iKS5zbGljZSgxKS5qb2luKCIvIikucmVwbGFjZSgiLmpzb24iLCIiKSxvP3Q6dCsiLmpzIik6ZX0sR3QucHJvdG90eXBlLnNldENoZWNrZWRBdHRyaWJ1dGU9ZnVuY3Rpb24oZSx0LG8peyh0PWU/ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKTp0KSYmKG8/dC5zZXRBdHRyaWJ1dGUoImNoZWNrZWQiLCIiKTp0LnJlbW92ZUF0dHJpYnV0ZSgiY2hlY2tlZCIpLHQuY2hlY2tlZD1vKX0sR3QucHJvdG90eXBlLnNldEFyaWFDaGVja2VkQXR0cmlidXRlPWZ1bmN0aW9uKGUsdCxvKXsodD1lP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoZSk6dCkmJnQuc2V0QXR0cmlidXRlKCJhcmlhLWNoZWNrZWQiLG8pfSxHdC5wcm90b3R5cGUuc2V0RGlzYWJsZWRBdHRyaWJ1dGU9ZnVuY3Rpb24oZSx0LG8peyh0PWU/ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKTp0KSYmKG8/dC5zZXRBdHRyaWJ1dGUoImRpc2FibGVkIixvLnRvU3RyaW5nKCkpOnQucmVtb3ZlQXR0cmlidXRlKCJkaXNhYmxlZCIpKX0sR3QucHJvdG90eXBlLnNldEh0bWxBdHRyaWJ1dGVzPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBvIGluIHQpZS5zZXRBdHRyaWJ1dGUobyx0W29dKSxlW29dPXRbb119LEd0LnByb3RvdHlwZS5jYWxjdWxhdGVDb29raWVMaWZlc3Bhbj1mdW5jdGlvbihlKXtyZXR1cm4gZTwwP0wuTGlmZXNwYW5UeXBlVGV4dDooZT1NYXRoLmZsb29yKGUvZmUubWF4U2VjVG9EYXlzKSk8ZmUubWluRGF5cz8iPCAxICIrTC5QQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuRGF5OmU8ZmUubWF4RGF5cz9lKyIgIitMLlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW5EYXlzOjE9PT0oZT1NYXRoLmZsb29yKGUvZmUubWF4RGF5cykpP2UrIiAiK0wuUENlbnRlclZlbmRvckxpc3RMaWZlc3Bhbk1vbnRoOmUrIiAiK0wuUENlbnRlclZlbmRvckxpc3RMaWZlc3Bhbk1vbnRoc30sR3QucHJvdG90eXBlLmluc2VydEVsZW1lbnQ9ZnVuY3Rpb24oZSx0LG8pe2UmJnQmJmUuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KG8sdCl9LEd0LnByb3RvdHlwZS5jdXN0b21RdWVyeVNlbGVjdG9yPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdC5xdWVyeVNlbGVjdG9yKGUpfX0sR3QucHJvdG90eXBlLmN1c3RvbVF1ZXJ5U2VsZWN0b3JBbGw9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB0LnF1ZXJ5U2VsZWN0b3JBbGwoZSl9fTt2YXIgVCxQPW5ldyBHdCx4dD0oSHQucHJvdG90eXBlLnJlbW92ZUFsZXJ0Qm94PWZ1bmN0aW9uKCl7bnVsbCE9PXRoaXMuZ2V0Q29va2llKHkuQUxFUlRfQk9YX0NMT1NFRCkmJnRoaXMuc2V0Q29va2llKHkuQUxFUlRfQk9YX0NMT1NFRCwiIiwwLCEwKX0sSHQucHJvdG90eXBlLnJlbW92ZUlhYjE9ZnVuY3Rpb24oKXtudWxsIT09dGhpcy5nZXRDb29raWUodWUuSWFiMVB1YikmJnRoaXMuc2V0Q29va2llKHVlLklhYjFQdWIsIiIsMCwhMCl9LEh0LnByb3RvdHlwZS5yZW1vdmVJYWIyPWZ1bmN0aW9uKCl7bnVsbCE9PXRoaXMuZ2V0Q29va2llKHVlLklhYjJQdWIpJiZ0aGlzLnNldENvb2tpZSh1ZS5JYWIyUHViLCIiLDAsITApfSxIdC5wcm90b3R5cGUucmVtb3ZlQWRkdGxTdHI9ZnVuY3Rpb24oKXtudWxsIT09dGhpcy5nZXRDb29raWUoeS5BRERJVElPTkFMX0NPTlNFTlRfU1RSSU5HKSYmdGhpcy5zZXRDb29raWUoeS5BRERJVElPTkFMX0NPTlNFTlRfU1RSSU5HLCIiLDAsITApfSxIdC5wcm90b3R5cGUucmVtb3ZlVmFyaWFudD1mdW5jdGlvbigpe251bGwhPT10aGlzLmdldENvb2tpZSh5LlNFTEVDVEVEX1ZBUklBTlQpJiZ0aGlzLnNldENvb2tpZSh5LlNFTEVDVEVEX1ZBUklBTlQsIiIsMCwhMCl9LEh0LnByb3RvdHlwZS5yZW1vdmVPcHRhbm9uPWZ1bmN0aW9uKCl7bnVsbCE9PXRoaXMuZ2V0Q29va2llKHkuT1BUQU5PTl9DT05TRU5UKSYmdGhpcy5zZXRDb29raWUoeS5PUFRBTk9OX0NPTlNFTlQsIiIsMCwhMCl9LEh0LnByb3RvdHlwZS5yZW1vdmVQcmV2aWV3PWZ1bmN0aW9uKCl7bnVsbCE9PXRoaXMuZ2V0Q29va2llKHkuT1RfUFJFVklFVykmJnRoaXMuc2V0Q29va2llKHkuT1RfUFJFVklFVywiIiwwLCEwKX0sSHQucHJvdG90eXBlLnJlbW92ZUFsbENvb2tpZXM9ZnVuY3Rpb24oKXt0aGlzLnJlbW92ZUlhYjEoKSx0aGlzLnJlbW92ZUlhYjIoKSx0aGlzLnJlbW92ZVByZXZpZXcoKSx0aGlzLnJlbW92ZU9wdGFub24oKSx0aGlzLnJlbW92ZVZhcmlhbnQoKSx0aGlzLnJlbW92ZUFsZXJ0Qm94KCksdGhpcy5yZW1vdmVBZGR0bFN0cigpLHRoaXMucmVtb3ZlQW1wU3RvcmFnZSgpfSxIdC5wcm90b3R5cGUud3JpdGVDb29raWVQYXJhbT1mdW5jdGlvbihlLHQsbyxuKXt2YXIgcixpLHMsYT17fSxsPXRoaXMuZ2V0Q29va2llKGUpO2lmKGwpZm9yKGk9bC5zcGxpdCgiJiIpLHI9MDtyPGkubGVuZ3RoO3IrPTEpcz1pW3JdLnNwbGl0KCI9IiksYVtkZWNvZGVVUklDb21wb25lbnQoc1swXSldPXNbMF09PT10JiZuP2RlY29kZVVSSUNvbXBvbmVudChzWzFdKTpkZWNvZGVVUklDb21wb25lbnQoc1sxXSkucmVwbGFjZSgvXCsvZywiICIpO2FbdF09bztsPVMubW9kdWxlSW5pdGlhbGl6ZXIuVGVuYW50RmVhdHVyZXM7bCYmbC5Db29raWVWMkNvb2tpZURhdGVUaW1lSW5JU08/YS5kYXRlc3RhbXA9KG5ldyBEYXRlKS50b0lTT1N0cmluZygpOmEuZGF0ZXN0YW1wPShuZXcgRGF0ZSkudG9TdHJpbmcoKSxhLnZlcnNpb249Xy5vdFNES1ZlcnNpb24sbz10aGlzLnBhcmFtKGEpLHRoaXMuc2V0Q29va2llKGUsbyxMLlJlY29uc2VudEZyZXF1ZW5jeURheXMpfSxIdC5wcm90b3R5cGUucmVhZENvb2tpZVBhcmFtPWZ1bmN0aW9uKGUsdCxvKXt2YXIgbixyLGkscyxlPXRoaXMuZ2V0Q29va2llKGUpO2lmKGUpe2ZvcihyPXt9LGk9ZS5zcGxpdCgiJiIpLG49MDtuPGkubGVuZ3RoO24rPTEpcz1pW25dLnNwbGl0KCI9IikscltkZWNvZGVVUklDb21wb25lbnQoc1swXSldPW8/ZGVjb2RlVVJJQ29tcG9uZW50KHNbMV0pOmRlY29kZVVSSUNvbXBvbmVudChzWzFdKS5yZXBsYWNlKC9cKy9nLCIgIik7cmV0dXJuIHQmJnJbdF0/clt0XTp0JiYhclt0XT8iIjpyfXJldHVybiIifSxIdC5wcm90b3R5cGUuZ2V0Q29va2llPWZ1bmN0aW9uKGUpe2lmKFMmJlMubW9kdWxlSW5pdGlhbGl6ZXImJlMubW9kdWxlSW5pdGlhbGl6ZXIuTW9iaWxlU0RLKXt2YXIgdD10aGlzLmdldENvb2tpZURhdGFPYmooZSk7aWYodClyZXR1cm4gdC52YWx1ZX1pZihfLmlzQU1QJiYoXy5hbXBEYXRhPUpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXy5kYXRhRG9tYWluSWQpKXx8e30sXy5hbXBEYXRhKSlyZXR1cm4gXy5hbXBEYXRhW2VdfHxudWxsO2Zvcih2YXIgbyxuPWUrIj0iLHI9ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7IiksaT0wO2k8ci5sZW5ndGg7aSs9MSl7Zm9yKG89cltpXTsiICI9PT1vLmNoYXJBdCgwKTspbz1vLnN1YnN0cmluZygxLG8ubGVuZ3RoKTtpZigwPT09by5pbmRleE9mKG4pKXJldHVybiBvLnN1YnN0cmluZyhuLmxlbmd0aCxvLmxlbmd0aCl9cmV0dXJuIG51bGx9LEh0LnByb3RvdHlwZS5zZXRBbXBTdG9yYWdlPWZ1bmN0aW9uKCl7d2luZG93LmxvY2FsU3RvcmFnZS5zZXRJdGVtKF8uZGF0YURvbWFpbklkLEpTT04uc3RyaW5naWZ5KF8uYW1wRGF0YSkpfSxIdC5wcm90b3R5cGUucmVtb3ZlQW1wU3RvcmFnZT1mdW5jdGlvbigpe3dpbmRvdy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShfLmRhdGFEb21haW5JZCl9LEh0LnByb3RvdHlwZS5oYW5kbGVBbXA9ZnVuY3Rpb24oZSx0KXsiIiE9PXQ/Xy5hbXBEYXRhW2VdPXQ6ZGVsZXRlIF8uYW1wRGF0YVtlXSwwPT09T2JqZWN0LmtleXMoXy5hbXBEYXRhKS5sZW5ndGg/dGhpcy5yZW1vdmVBbXBTdG9yYWdlKCk6dGhpcy5zZXRBbXBTdG9yYWdlKCl9LEh0LnByb3RvdHlwZS5nZXRFeHBpcnlWYWx1ZT1mdW5jdGlvbihlLHQsbyl7cmV0dXJuIHZvaWQgMD09PXQmJih0PSExKSx2b2lkIDA9PT1vJiYobz1uZXcgRGF0ZSksZT8oby5zZXRUaW1lKG8uZ2V0VGltZSgpKzI0KmUqNjAqNjAqMWUzKSwiOyBleHBpcmVzPSIrby50b1VUQ1N0cmluZygpKTp0PyI7IGV4cGlyZXM9IituZXcgRGF0ZSgwKS50b1VUQ1N0cmluZygpOiIifSxIdC5wcm90b3R5cGUuZ2V0RG9tYWluVXJsPWZ1bmN0aW9uKCl7dmFyIGUsdD1TLm1vZHVsZUluaXRpYWxpemVyO3JldHVybiB0JiZ0LlJvb3REb21haW5Db25zZW50RW5hYmxlZD9lPXQuUm9vdERvbWFpblVybDp0JiZ0LkRvbWFpbiYmKGU9dC5Eb21haW4pLGV9LEh0LnByb3RvdHlwZS5zZXRDb29raWU9ZnVuY3Rpb24oZSx0LG8sbixyKXt2YXIgaSxzLGEsbCxjLGQ7dm9pZCAwPT09biYmKG49ITEpLHZvaWQgMD09PXImJihyPW5ldyBEYXRlKSxfLmlzQU1QP3RoaXMuaGFuZGxlQW1wKGUsdCk6KG89dGhpcy5nZXRFeHBpcnlWYWx1ZShvLG4sciksbj1TLm1vZHVsZUluaXRpYWxpemVyLHM9IiIsKGk9KGk9dGhpcy5nZXREb21haW5VcmwoKSk/aS5zcGxpdCgiLyIpOltdKS5sZW5ndGg8PTE/aVsxXT0iIjpzPWkuc2xpY2UoMSkuam9pbigiLyIpLGE9IlNhbWVzaXRlPUxheCIsbi5Db29raWVTYW1lU2l0ZU5vbmVFbmFibGVkJiYoYT0iU2FtZXNpdGU9Tm9uZTsgU2VjdXJlIixuLlBhcnRpdGlvbmVkQ29va2llRW5hYmxlZCkmJihhKz0iOyBQYXJ0aXRpb25lZCIpLGw9Uy5tb2R1bGVJbml0aWFsaXplci5UZW5hbnRGZWF0dXJlcyxjPW4uU2NyaXB0VHlwZT09PXFlLlRFU1R8fG4uU2NyaXB0VHlwZT09PXFlLkxPQ0FMX1RFU1QsXy5pc1ByZXZpZXd8fCFjJiYhbi5Nb2JpbGVTREs/KGQ9dCtvKyI7IHBhdGg9LyIrcysiOyBkb21haW49LiIraVswXSsiOyAiK2EsbCYmbC5Db29raWVWMkNvb2tpZVByaW9yaXR5JiYoZCs9IjtQcmlvcml0eT1IaWdoOyIpLGRvY3VtZW50LmNvb2tpZT1lKyI9IitkKTooZD10K28rIjsgcGF0aD0vOyAiK2EsbCYmbC5Db29raWVWMkNvb2tpZVByaW9yaXR5JiYoZCs9IjtQcmlvcml0eT1IaWdoOyIpLG4uTW9iaWxlU0RLP3RoaXMuc2V0Q29va2llRGF0YU9iaih7bmFtZTplLHZhbHVlOnQsZXhwaXJlczpvLGRhdGU6cixkb21haW5BbmRQYXRoOml9KTpkb2N1bWVudC5jb29raWU9ZSsiPSIrZCkpfSxIdC5wcm90b3R5cGUuc2V0Q29va2llRGF0YU9iaj1mdW5jdGlvbih0KXt2YXIgZTt0JiYoXy5vdENvb2tpZURhdGF8fCh3aW5kb3cuT25lVHJ1c3QmJndpbmRvdy5PbmVUcnVzdC5vdENvb2tpZURhdGE/Xy5vdENvb2tpZURhdGE9d2luZG93Lk9uZVRydXN0Lm90Q29va2llRGF0YTpfLm90Q29va2llRGF0YT1bXSksLTE8KGU9UC5maW5kSW5kZXgoXy5vdENvb2tpZURhdGEsZnVuY3Rpb24oZSl7cmV0dXJuIGUubmFtZT09PXQubmFtZX0pKT9fLm90Q29va2llRGF0YVtlXT10Ol8ub3RDb29raWVEYXRhLnB1c2godCkpfSxIdC5wcm90b3R5cGUuZ2V0Q29va2llRGF0YU9iaj1mdW5jdGlvbih0KXtfLm90Q29va2llRGF0YSYmMCE9PV8ub3RDb29raWVEYXRhLmxlbmd0aHx8KHdpbmRvdy5PbmVUcnVzdCYmd2luZG93Lk9uZVRydXN0Lm90Q29va2llRGF0YT9fLm90Q29va2llRGF0YT13aW5kb3cuT25lVHJ1c3Qub3RDb29raWVEYXRhOl8ub3RDb29raWVEYXRhPVtdKTt2YXIgZT1QLmZpbmRJbmRleChfLm90Q29va2llRGF0YSxmdW5jdGlvbihlKXtyZXR1cm4gZS5uYW1lPT09dH0pO2lmKDA8PWUpe3ZhciBvPV8ub3RDb29raWVEYXRhW2VdO2lmKG8uZGF0ZSlyZXR1cm4gbmV3IERhdGUoby5kYXRlKTxuZXcgRGF0ZT8oXy5vdENvb2tpZURhdGEuc3BsaWNlKGUsMSksbnVsbCk6b31yZXR1cm4gbnVsbH0sSHQucHJvdG90eXBlLmdldENvb2tpZXNDaHVuaz1mdW5jdGlvbihlLHQpe3ZhciBvPXt9O2lmKGUubGVuZ3RoPD00ZTMpb1t0XT1lO2Vsc2UgZm9yKHZhciBuPTAscj0wO248ZS5sZW5ndGg7KXt2YXIgaT1lLnNsaWNlKG4sbis0ZTMpOzA9PT1yP29bdF09aTpvW3QrIl8iK3JdPWksbis9NGUzLHIrK31yZXR1cm4gb30sSHQucHJvdG90eXBlLmdldE1lcmdlZENvb2tpZUJ5TmFtZT1mdW5jdGlvbihlKXt2YXIgdD0iIixvPXRoaXMuZ2V0Q29va2llKGUpO2lmKCFvKXJldHVybiIiO3QrPW87Zm9yKHZhciBuPTE7Oyl7dmFyIHI9dGhpcy5nZXRDb29raWUoZSsiXyIrbik7aWYoIXIpYnJlYWs7dCs9cixuKyt9cmV0dXJuIHR9LEh0LnByb3RvdHlwZS5wYXJhbT1mdW5jdGlvbihlKXt2YXIgdCxvPSIiO2Zvcih0IGluIGUpZS5oYXNPd25Qcm9wZXJ0eSh0KSYmKCIiIT09byYmKG8rPSImIiksbys9dCsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGVbdF0pLnJlcGxhY2UoLyUyMC9nLCIrIikpO3JldHVybiBvfSxIdCk7ZnVuY3Rpb24gSHQoKXt9dmFyIEEsayxSdD17UF9Db250ZW50OiIjb3QtcGMtY29udGVudCIsUF9Mb2dvOiIub3QtcGMtbG9nbyIsUF9UaXRsZToiI290LXBjLXRpdGxlIixQX1RpdGxlX01vYmlsZToiI290LXBjLXRpdGxlLW1vYmlsZSIsUF9Qb2xpY3lfVHh0OiIjb3QtcGMtZGVzYyIsUF9WZW5kb3JfVGl0bGVfRWxtOiIjb3QtbHN0LXRpdGxlIixQX1ZlbmRvcl9UaXRsZToiI290LWxzdC10aXRsZSBoMyIsUF9NYW5hZ2VfQ29va2llc19UeHQ6IiNvdC1jYXRlZ29yeS10aXRsZSIsUF9MYWJlbF9UeHQ6Ii5vdC1sYWJlbC10eHQiLFBfQ2F0ZWdvcnlfSGVhZGVyOiIub3QtY2F0LWhlYWRlciIsUF9DYXRlZ29yeV9HcnA6Ii5vdC1jYXQtZ3JwIixQX0NhdGVnb3J5X0l0ZW06Ii5vdC1jYXQtaXRlbSIsUF9WZW5kb3JfTGlzdDoiI290LXBjLWxzdCIsUF9WZW5kb3JfQ29udGVudDoiI290LWxzdC1jbnQiLFBfVmVuZG9yX0NvbnRhaW5lcjoiI290LXZlbi1sc3QiLFBfVmVuX0J4OiJvdC12ZW4tYm94IixQX1Zlbl9OYW1lOiIub3QtdmVuLW5hbWUiLFBfVmVuX0xpbms6Ii5vdC12ZW4tbGluayIsUF9WZW5fTGVnX0NsYWltOiIub3QtdmVuLWxlZ2NsYWltLWxpbmsiLFBfVmVuX0N0Z2w6Im90LXZlbi1jdGdsIixQX1Zlbl9MdGdsOiJvdC12ZW4tbGl0Z2wiLFBfVmVuX0x0Z2xfT25seToib3QtdmVuLWxpdGdsLW9ubHkiLFBfVmVuX09wdHM6Ii5vdC12ZW4tb3B0cyIsUF9UcmlhbmdsZToiI290LWFuY2hvciIsUF9GbHRyX01vZGFsOiIjb3QtZmx0ci1tb2RhbCIsUF9GbHRyX09wdGlvbnM6Ii5vdC1mbHRyLW9wdHMiLFBfRmx0cl9PcHRpb246Ii5vdC1mbHRyLW9wdCIsUF9TZWxlY3RfQ250cjoiI290LXNlbC1ibGsiLFBfSG9zdF9DbnRyOiIjb3QtaG9zdC1sc3QiLFBfSG9zdF9IZHI6Ii5vdC1ob3N0LWhkciIsUF9Ib3N0X0Rlc2M6Ii5vdC1ob3N0LWRlc2MiLFBfTGlfSGRyOiIub3QtcGxpLWhkciIsUF9MaV9UaXRsZToiLm90LWxpLXRpdGxlIixQX1NlbF9BbGxfVmVuZG9yX0NvbnNlbnRfSGFuZGxlcjoiI3NlbGVjdC1hbGwtdmVuZG9yLWxlZy1oYW5kbGVyIixQX1NlbF9BbGxfVmVuZG9yX0xlZ19IYW5kbGVyOiIjc2VsZWN0LWFsbC12ZW5kb3ItZ3JvdXBzLWhhbmRsZXIiLFBfU2VsX0FsbF9Ib3N0X0hhbmRsZXI6IiNzZWxlY3QtYWxsLWhvc3RzLWdyb3Vwcy1oYW5kbGVyIixQX0hvc3RfVGl0bGU6Ii5vdC1ob3N0LW5hbWUiLFBfTGVnX1NlbGVjdF9BbGw6Ii5vdC1zZWwtYWxsLWhkciIsUF9MZWdfSGVhZGVyOiIub3QtbGktaGRyIixQX0FjY19IZWFkZXI6Ii5vdC1hY2MtaGRyIixQX0Nuc250X0hlYWRlcjoiLm90LWNvbnNlbnQtaGRyIixQX1RnbF9DbnRyOiIub3QtdGdsLWNudHIiLFBfQ0J4X0NudHI6Ii5vdC1jaGtib3giLFBfU2VsX0FsbF9Ib3N0X0VsOiJvdC1zZWxhbGwtaG9zdGNudHIiLFBfU2VsX0FsbF9WZW5kb3JfQ29uc2VudF9FbDoib3Qtc2VsYWxsLXZlbmNudHIiLFBfU2VsX0FsbF9WZW5kb3JfTGVnX0VsOiJvdC1zZWxhbGwtbGljbnRyIixQX2NfTmFtZToib3QtYy1uYW1lIixQX2NfSG9zdDoib3QtYy1ob3N0IixQX2NfRHVyYXRpb246Im90LWMtZHVyYXRpb24iLFBfY19UeXBlOiJvdC1jLXR5cGUiLFBfY19DYXRlZ29yeToib3QtYy1jYXRlZ29yeSIsUF9jX0Rlc2M6Im90LWMtZGVzY3JpcHRpb24iLFBfSG9zdF9WaWV3X0Nvb2tpZXM6Ii5vdC1ob3N0LWV4cGFuZCIsUF9Ib3N0X09wdDoiLm90LWhvc3Qtb3B0IixQX0hvc3RfSW5mbzoiLm90LWhvc3QtaW5mbyIsUF9BcnJ3X0NudHI6Ii5vdC1hcnctY250ciIsUF9BY2NfVHh0OiIub3QtYWNjLXR4dCIsUF9WZW5kb3JfQ2hlY2tCeDoib3QtdmVuLWNoa2JveCIsUF9WZW5kb3JfTGVnQ2hlY2tCeDoib3QtdmVuLWxlZy1jaGtib3giLFBfSG9zdF9VSToib3QtaG9zdHMtdWkiLFBfSG9zdF9DbnQ6Im90LWhvc3QtY250IixQX0hvc3RfQng6Im90LWhvc3QtYm94IixQX1Zlbl9EZXRzOiIub3QtdmVuLWRldHMiLFBfVmVuX0Rpc2M6Ii5vdC12ZW4tZGlzYyIsUF9HdmVuX0xpc3Q6IiNvdC1nbi12ZW5sc3QiLFBfQ2xvc2VfQnRuOiIub3QtY2xvc2UtaWNvbiIsUF9WZW5fTHN0X0NudHI6Ii5vdC12bHN0LWNudHIiLFBfSG9zdF9Mc3RfY250cjoiLm90LWhsc3QtY250ciIsUF9TdWJfR3JwX0NudHI6Ii5vdC1zdWJncnAtY250ciIsUF9TdWJncnBfRGVzYzoiLm90LXN1YmdycC1kZXNjIixQX1N1YmdwX3VsOiIub3Qtc3ViZ3JwcyIsUF9TdWJncnBfbGk6Ii5vdC1zdWJncnAiLFBfU3ViZ3JwX1RnbF9DbnRyOiIub3Qtc3ViZ3JwLXRnbCIsUF9HcnBfQ29udGFpbmVyOiIub3QtZ3Jwcy1jbnRyIixQX1ByaXZhY3lfVHh0OiIjb3QtcHZjeS10eHQiLFBfUHJpdmFjeV9IZHI6IiNvdC1wdmN5LWhkciIsUF9BY3RpdmVfTWVudToib3QtYWN0aXZlLW1lbnUiLFBfRGVzY19Db250YWluZXI6Ii5vdC1kZXNjLWNudHIiLFBfVGFiX0dycF9IZHI6Im90LWdycC1oZHIxIixQX1NlYXJjaF9DbnRyOiIjb3Qtc2VhcmNoLWNudHIiLFBfQ2xyX0ZsdHJfVHh0OiIjY2xlYXItZmlsdGVycy1oYW5kbGVyIixQX0FjY19HcnBfRGVzYzoiLm90LWFjYy1ncnBkZXNjIixQX0FjY19Db250YWluZXI6Ii5vdC1hY2MtZ3JwY250ciIsUF9MaW5lX1Rocm91Z2g6ImxpbmUtdGhyb3VnaCIsUF9WZW5kb3JfU2VhcmNoX0lucHV0OiIjdmVuZG9yLXNlYXJjaC1oYW5kbGVyIn0sRnQ9e1BfR3JwX0NvbnRhaW5lcjoiLmdyb3Vwcy1jb250YWluZXIiLFBfQ29udGVudDoiI290LWNvbnRlbnQiLFBfQ2F0ZWdvcnlfSGVhZGVyOiIuY2F0ZWdvcnktaGVhZGVyIixQX0Rlc2NfQ29udGFpbmVyOiIuZGVzY3JpcHRpb24tY29udGFpbmVyIixQX0xhYmVsX1R4dDoiLmxhYmVsLXRleHQiLFBfQWNjX0dycF9EZXNjOiIub3QtYWNjb3JkaW9uLWdyb3VwLXBjLWNvbnRhaW5lciIsUF9MZWdfSW50X0hkcjoiLmxlZy1pbnQtaGVhZGVyIixQX05vdF9BbHdheXNfQWN0aXZlOiJwOm5vdCgub3QtYWx3YXlzLWFjdGl2ZSkiLFBfQ2F0ZWdvcnlfR3JwOiIuY2F0ZWdvcnktZ3JvdXAiLFBfQ2F0ZWdvcnlfSXRlbToiLmNhdGVnb3J5LWl0ZW0iLFBfU3ViX0dycF9DbnRyOiIuY29va2llLXN1Ymdyb3Vwcy1jb250YWluZXIiLFBfQWNjX0NvbnRhaW5lcjoiLm90LWFjY29yZGlvbi1wYy1jb250YWluZXIiLFBfQ2xvc2VfQnRuOiIucGMtY2xvc2UtYnV0dG9uIixQX0xvZ286Ii5wYy1sb2dvIixQX1RpdGxlOiIjcGMtdGl0bGUiLFBfVGl0bGVfTW9iaWxlOiIjcGMtdGl0bGUtbW9iaWxlIixQX1ByaXZhY3lfVHh0OiIjcHJpdmFjeS10ZXh0IixQX1ByaXZhY3lfSGRyOiIjcGMtcHJpdmFjeS1oZWFkZXIiLFBfUG9saWN5X1R4dDoiI3BjLXBvbGljeS10ZXh0IixQX01hbmFnZV9Db29raWVzX1R4dDoiI21hbmFnZS1jb29raWVzLXRleHQiLFBfVmVuZG9yX1RpdGxlOiIjdmVuZG9ycy1saXN0LXRpdGxlIixQX1ZlbmRvcl9UaXRsZV9FbG06IiN2ZW5kb3JzLWxpc3QtdGl0bGUiLFBfVmVuZG9yX0xpc3Q6IiN2ZW5kb3JzLWxpc3QiLFBfVmVuZG9yX0NvbnRlbnQ6IiN2ZW5kb3ItbGlzdC1jb250ZW50IixQX1ZlbmRvcl9Db250YWluZXI6IiN2ZW5kb3JzLWxpc3QtY29udGFpbmVyIixQX1Zlbl9CeDoidmVuZG9yLWJveCIsUF9WZW5fTmFtZToiLnZlbmRvci10aXRsZSIsUF9WZW5fTGluazoiLnZlbmRvci1wcml2YWN5LW5vdGljZSIsUF9WZW5fTGVnX0NsYWltOiIudmVuZG9yLWxlZ2NsYWltLWxpbmsiLFBfVmVuX0N0Z2w6Im90LXZlbmRvci1jb25zZW50LXRnbCIsUF9WZW5fTHRnbDoib3QtbGVnLWludC10Z2wiLFBfVmVuX0x0Z2xfT25seToib3QtbGVnLWludC10Z2wtb25seSIsUF9WZW5fT3B0czoiLnZlbmRvci1vcHRpb25zIixQX1RyaWFuZ2xlOiIjb3QtdHJpYW5nbGUiLFBfRmx0cl9Nb2RhbDoiI290LWZpbHRlci1tb2RhbCIsUF9GbHRyX09wdGlvbnM6Ii5vdC1ncm91cC1vcHRpb25zIixQX0ZsdHJfT3B0aW9uOiIub3QtZ3JvdXAtb3B0aW9uIixQX1NlbGVjdF9DbnRyOiIjc2VsZWN0LWFsbC1jb250YWluZXIiLFBfSG9zdF9DbnRyOiIjaG9zdHMtbGlzdC1jb250YWluZXIiLFBfSG9zdF9IZHI6Ii5ob3N0LWluZm8iLFBfSG9zdF9EZXNjOiIuaG9zdC1kZXNjcmlwdGlvbiIsUF9Ib3N0X09wdDoiLmhvc3Qtb3B0aW9uLWdyb3VwIixQX0hvc3RfSW5mbzoiLnZlbmRvci1ob3N0IixQX1Zlbl9EZXRzOiIudmVuZG9yLXB1cnBvc2UtZ3JvdXBzIixQX1Zlbl9EaXNjOiIub3QtdmVuLWRpc2MiLFBfR3Zlbl9MaXN0OiIjb3QtZ24tdmVubHN0IixQX0FycndfQ250cjoiLm90LWFycm93LWNvbnRhaW5lciIsUF9MaV9IZHI6Ii5sZWctaW50LWhlYWRlciIsUF9MaV9UaXRsZToiLmxlZy1pbnQtdGl0bGUiLFBfQWNjX1R4dDoiLmFjY29yZGlvbi10ZXh0IixQX1RnbF9DbnRyOiIub3QtdG9nZ2xlLWdyb3VwIixQX0NCeF9DbnRyOiIub3QtY2hrYm94LWNvbnRhaW5lciIsUF9Ib3N0X1RpdGxlOiIuaG9zdC10aXRsZSIsUF9MZWdfU2VsZWN0X0FsbDoiLmxlZy1pbnQtc2VsLWFsbC1oZHIiLFBfTGVnX0hlYWRlcjoiLmxlZy1pbnQtaGRyIixQX0Nuc250X0hlYWRlcjoiLmNvbnNlbnQtaGRyIixQX0FjY19IZWFkZXI6Ii5hY2NvcmRpb24taGVhZGVyIixQX1NlbF9BbGxfVmVuZG9yX0NvbnNlbnRfSGFuZGxlcjoiI3NlbGVjdC1hbGwtdmVuZG9yLWxlZy1oYW5kbGVyIixQX1NlbF9BbGxfVmVuZG9yX0xlZ19IYW5kbGVyOiIjc2VsZWN0LWFsbC12ZW5kb3ItZ3JvdXBzLWhhbmRsZXIiLFBfU2VsX0FsbF9Ib3N0X0hhbmRsZXI6IiNzZWxlY3QtYWxsLWhvc3RzLWdyb3Vwcy1oYW5kbGVyIixQX1NlbF9BbGxfSG9zdF9FbDoic2VsZWN0LWFsbC1ob3N0cy1pbnB1dC1jb250YWluZXIiLFBfU2VsX0FsbF9WZW5kb3JfQ29uc2VudF9FbDoic2VsZWN0LWFsbC12ZW5kb3JzLWlucHV0LWNvbnRhaW5lciIsUF9TZWxfQWxsX1ZlbmRvcl9MZWdfRWw6InNlbGVjdC1hbGwtdmVuZG9ycy1sZWctaW5wdXQtY29udGFpbmVyIixQX2NfTmFtZToiY29va2llLW5hbWUtY29udGFpbmVyIixQX2NfSG9zdDoiY29va2llLWhvc3QtY29udGFpbmVyIixQX2NfRHVyYXRpb246ImNvb2tpZS1kdXJhdGlvbi1jb250YWluZXIiLFBfY19UeXBlOiJjb29raWUtdHlwZS1jb250YWluZXIiLFBfY19DYXRlZ29yeToiY29va2llLWNhdGVnb3J5LWNvbnRhaW5lciIsUF9jX0Rlc2M6ImNvb2tpZS1kZXNjcmlwdGlvbi1jb250YWluZXIiLFBfSG9zdF9WaWV3X0Nvb2tpZXM6Ii5ob3N0LXZpZXctY29va2llcyIsUF9WZW5kb3JfQ2hlY2tCeDoidmVuZG9yLWNoa2JveCIsUF9WZW5kb3JfTGVnQ2hlY2tCeDoidmVuZG9yLWxlZy1jaGtib3giLFBfSG9zdF9VSToiaG9zdHMtbGlzdCIsUF9Ib3N0X0NudDoiaG9zdC1saXN0LWNvbnRlbnQiLFBfSG9zdF9CeDoiaG9zdC1ib3giLFBfVmVuX0xzdF9DbnRyOiIuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWNvbnRhaW5lciIsUF9Ib3N0X0xzdF9jbnRyOiIuY2F0ZWdvcnktaG9zdC1saXN0LWNvbnRhaW5lciIsUF9TdWJncnBfRGVzYzoiLmNvb2tpZS1zdWJncm91cHMtZGVzY3JpcHRpb24tbGVnYWwiLFBfU3ViZ3BfdWw6Ii5jb29raWUtc3ViZ3JvdXBzIixQX1N1YmdycF9saToiLmNvb2tpZS1zdWJncm91cCIsUF9TdWJncnBfVGdsX0NudHI6Ii5jb29raWUtc3ViZ3JvdXAtdG9nZ2xlIixQX0FjdGl2ZV9NZW51OiJhY3RpdmUtZ3JvdXAiLFBfVGFiX0dycF9IZHI6Imdyb3VwLXRvZ2dsZSIsUF9TZWFyY2hfQ250cjoiI3NlYXJjaC1jb250YWluZXIiLFBfQ2xyX0ZsdHJfVHh0OiIjY2xlYXItZmlsdGVycy1oYW5kbGVyIHAiLFBfVmVuZG9yX1NlYXJjaF9JbnB1dDoiI3ZlbmRvci1zZWFyY2gtaGFuZGxlciJ9LE10PXtHcm91cFR5cGVzOntDb29raWU6IkNPT0tJRSIsQnVuZGxlOiJCUkFOQ0giLEZ0OiJJQUIyX0ZFQVRVUkUiLFB1cjoiSUFCMl9QVVJQT1NFIixTcGxfRnQ6IklBQjJfU1BMX0ZFQVRVUkUiLFNwbF9QdXI6IklBQjJfU1BMX1BVUlBPU0UiLFN0YWNrOiJJQUIyX1NUQUNLIn0sSWRQYXR0ZXJuczp7UHVyOiJJQUJWMl8iLEZ0OiJJRkVWMl8iLFNwbF9QdXI6IklTUFYyXyIsU3BsX0Z0OiJJU0ZWMl8ifX0sVXQ9e0dyb3VwVHlwZXM6e0Nvb2tpZToiQ09PS0lFIixCdW5kbGU6IkJSQU5DSCIsRnQ6IklBQjJWMl9GRUFUVVJFIixQdXI6IklBQjJWMl9QVVJQT1NFIixTcGxfRnQ6IklBQjJWMl9TUExfRkVBVFVSRSIsU3BsX1B1cjoiSUFCMlYyX1NQTF9QVVJQT1NFIixTdGFjazoiSUFCMlYyX1NUQUNLIn0sSWRQYXR0ZXJuczp7UHVyOiJJQUIyVjJfIixGdDoiSUZFMlYyXyIsU3BsX1B1cjoiSVNQMlYyXyIsU3BsX0Z0OiJJU0YyVjJfIn19O2p0LnByb3RvdHlwZS5nZXREYXRhTGFuZ3VhZ2VDdWx0dXJlPWZ1bmN0aW9uKCl7dmFyIGU9SS5nZXRTdHViQXR0cihLZSl8fFMubW9kdWxlSW5pdGlhbGl6ZXIuRGF0YUxhbmd1YWdlO3JldHVybiBlP3RoaXMuY2hlY2tBbmRUYW5zZm9ybUxhbmdDb2RlV2l0aFVuZGVyZHNjb3JlKGUudG9Mb3dlckNhc2UoKSk6dGhpcy5kZXRlY3REb2N1bWVudE9yQnJvd3Nlckxhbmd1YWdlKCkudG9Mb3dlckNhc2UoKX0sanQucHJvdG90eXBlLmNoZWNrQW5kVGFuc2Zvcm1MYW5nQ29kZVdpdGhVbmRlcmRzY29yZT1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKC9cXy8sIi0iKX0sanQucHJvdG90eXBlLmRldGVjdERvY3VtZW50T3JCcm93c2VyTGFuZ3VhZ2U9ZnVuY3Rpb24oKXt2YXIgZT0iIjtpZihiLmxhbmdTd2l0Y2hlclBsZHIpe3ZhciB0PVAuY29udmVydEtleVZhbHVlTG93ZXJDYXNlKGIubGFuZ1N3aXRjaGVyUGxkciksbz10aGlzLmdldFVzZXJMYW5ndWFnZSgpLnRvTG93ZXJDYXNlKCk7aWYoIShlPXRbb118fHRbbysiLSIrb118fCh0LmRlZmF1bHQ9PT1vP3QuZGVmYXVsdDpudWxsKSkpaWYoMj09PW8ubGVuZ3RoKWZvcih2YXIgbj0wO248T2JqZWN0LmtleXModCkubGVuZ3RoO24rPTEpe3ZhciByPU9iamVjdC5rZXlzKHQpW25dO2lmKHIuc3Vic3RyKDAsMik9PT1vKXtlPXRbcl07YnJlYWt9fWVsc2UgMjxvLmxlbmd0aCYmKGU9dFtvLnN1YnN0cigwLDIpXSk7ZT1lfHx0LmRlZmF1bHR9cmV0dXJuIGV9LGp0LnByb3RvdHlwZS5nZXRVc2VyTGFuZ3VhZ2U9ZnVuY3Rpb24oKXtyZXR1cm4gYi51c2VEb2N1bWVudExhbmd1YWdlP3RoaXMuY2hlY2tBbmRUYW5zZm9ybUxhbmdDb2RlV2l0aFVuZGVyZHNjb3JlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5sYW5nKTpuYXZpZ2F0b3IubGFuZ3VhZ2VzJiZuYXZpZ2F0b3IubGFuZ3VhZ2VzLmxlbmd0aD9uYXZpZ2F0b3IubGFuZ3VhZ2VzWzBdOm5hdmlnYXRvci5sYW5ndWFnZXx8bmF2aWdhdG9yLnVzZXJMYW5ndWFnZX0sanQucHJvdG90eXBlLmlzVmFsaWRMYW5ndWFnZT1mdW5jdGlvbihlLHQpe3ZhciBvPVAuY29udmVydEtleVZhbHVlTG93ZXJDYXNlKGIubGFuZ1N3aXRjaGVyUGxkcik7cmV0dXJuISghb3x8IW9bdF0mJiFvW3QrIi0iK3RdJiZvLmRlZmF1bHQhPT10KX0sanQucHJvdG90eXBlLmdldExhbmdKc29uVXJsPWZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUmJihlPW51bGwpO3ZhciB0LG89Yi5nZXRSZWdpb25SdWxlKCk7aWYoZSl7aWYoZT1lLnRvTG93ZXJDYXNlKCksIXRoaXMuaXNWYWxpZExhbmd1YWdlKG8sZSkpcmV0dXJuIG51bGx9ZWxzZSBlPXRoaXMuZ2V0RGF0YUxhbmd1YWdlQ3VsdHVyZSgpO3JldHVybiBsLmxhbmc9ZSxsLmNvbnNlbnRMYW5ndWFnZT1lLnN1YnN0cigwLDIpLHQ9Yi5jYW5Vc2VDb25kaXRpb25hbExvZ2ljP2IuYmFubmVyRGF0YVBhcmVudFVSTCsiLyIrby5JZCsiLyIrYi5Db25kaXRpb24uSWQrIi8iK2U6Yi5iYW5uZXJEYXRhUGFyZW50VVJMKyIvIitvLklkKyIvIitlLHQ9Yi5tdWx0aVZhcmlhbnRUZXN0aW5nRW5hYmxlZD9iLmJhbm5lckRhdGFQYXJlbnRVUkwrIi8iK28uSWQrIi92YXJpYW50cy8iK2Iuc2VsZWN0ZWRWYXJpYW50LklkKyIvIitlOnR9LGp0LnByb3RvdHlwZS5wb3B1bGF0ZUxhbmdTd2l0Y2hlclBsaGRyPWZ1bmN0aW9uKCl7dmFyIGUsdCxvLG49Yi5nZXRSZWdpb25SdWxlKCk7biYmKGU9bi5WYXJpYW50cyxiLm11bHRpVmFyaWFudFRlc3RpbmdFbmFibGVkJiZlPyhvPXZvaWQgMCwodD1ULmdldENvb2tpZSh5LlNFTEVDVEVEX1ZBUklBTlQpKSYmKG89ZVtQLmZpbmRJbmRleChlLGZ1bmN0aW9uKGUpe3JldHVybiBlLklkPT09dH0pXSksdCYmb3x8KG89ZVtNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqZS5sZW5ndGgpXSksYi5sYW5nU3dpdGNoZXJQbGRyPW8uTGFuZ3VhZ2VTd2l0Y2hlclBsYWNlaG9sZGVyLGIuc2VsZWN0ZWRWYXJpYW50PW8pOmIuY2FuVXNlQ29uZGl0aW9uYWxMb2dpYz9iLmxhbmdTd2l0Y2hlclBsZHI9Yi5Db25kaXRpb24uTGFuZ3VhZ2VTd2l0Y2hlclBsYWNlaG9sZGVyOmIubGFuZ1N3aXRjaGVyUGxkcj1uLkxhbmd1YWdlU3dpdGNoZXJQbGFjZWhvbGRlcil9O3ZhciBxdCxlPWp0O2Z1bmN0aW9uIGp0KCl7fVd0LnByb3RvdHlwZS5nZXRMYW5nSnNvbj1mdW5jdGlvbihlKXt2YXIgdDtyZXR1cm4gdm9pZCAwPT09ZSYmKGU9bnVsbCksYi5wcmV2aWV3TW9kZT8odD1KU09OLnBhcnNlKHdpbmRvdy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJvdFByZXZpZXdEYXRhIikpLFByb21pc2UucmVzb2x2ZSh0LmxhbmdKc29uKSk6KHQ9cXQuZ2V0TGFuZ0pzb25VcmwoZSkpP0t0Lm90RmV0Y2godCsiLmpzb24iLCExLCExLCEwKTpQcm9taXNlLnJlc29sdmUobnVsbCl9LFd0LnByb3RvdHlwZS5nZXRQZXJzaXN0ZW50Q29va2llU3ZnPWZ1bmN0aW9uKGUpe2U9ZXx8TC5jb29raWVQZXJzaXN0ZW50TG9nbztyZXR1cm4gZT9LdC5vdEZldGNoKGUsITApOlByb21pc2UucmVzb2x2ZShudWxsKX0sV3QucHJvdG90eXBlLmdldFNwcml0ZVN2Zz1mdW5jdGlvbihlKXtyZXR1cm4gZT9LdC5vdEZldGNoKGUsITApOlByb21pc2UucmVzb2x2ZShudWxsKX0sV3QucHJvdG90eXBlLmZldGNoR3ZsT2JqPWZ1bmN0aW9uKCl7dmFyIGU9Uy5tb2R1bGVJbml0aWFsaXplci5JYWJWMkRhdGEuZ2xvYmFsVmVuZG9yTGlzdFVybDtyZXR1cm4iSUFCMlYyIj09PWIuZ2V0UmVnaW9uUnVsZVR5cGUoKSYmKGU9Uy5tb2R1bGVJbml0aWFsaXplci5JYWIyVjJEYXRhLmdsb2JhbFZlbmRvckxpc3RVcmwpLHRoaXMub3RGZXRjaChlKX0sV3QucHJvdG90eXBlLmZldGNoR29vZ2xlVmVuZG9ycz1mdW5jdGlvbigpe3ZhciBlPUkudXBkYXRlQ29ycmVjdElBQlVybChTLm1vZHVsZUluaXRpYWxpemVyLkdvb2dsZURhdGEuZ29vZ2xlVmVuZG9yTGlzdFVybCk7cmV0dXJuIEkuY2hlY2tNb2JpbGVPZmZsaW5lUmVxdWVzdChJLmdldEJhbm5lclZlcnNpb25VcmwoKSk/SS5vdEZldGNoT2ZmbGluZUZpbGUoUC5nZXRSZWxhdGl2ZVVSTChlLCEwKSk6KGIubW9iaWxlT25saW5lVVJMLnB1c2goZSksdGhpcy5vdEZldGNoKGUpKX0sV3QucHJvdG90eXBlLmdldFN0b3JhZ2VEaXNjbG9zdXJlPWZ1bmN0aW9uKHQpe3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7cmV0dXJuWzIsdGhpcy5vdEZldGNoKHQsITEsITApXX0pfSl9LFd0LnByb3RvdHlwZS5sb2FkQ01QPWZ1bmN0aW9uKCl7dmFyIG89dGhpcztyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24oZSl7dmFyIHQ9by5jaGVja0lmUmVxdWlyZXNQb2xseWZpbGwoKT8ib3RUQ0YtaWUiOiJvdFRDRiI7SS5qc29ucChJLmdldEJhbm5lclZlcnNpb25VcmwoKSsiLyIrdCsiLmpzIixlLGUpfSl9LFd0LnByb3RvdHlwZS5sb2FkR1BQPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe0kuanNvbnAoSS5nZXRCYW5uZXJWZXJzaW9uVXJsKCkrIi9vdEdQUC5qcyIsZSxlKX0pfSxXdC5wcm90b3R5cGUubG9hZENvbmZpcm1EaWFsb2c9ZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7cmV0dXJuIGUucmVsPSJzdHlsZXNoZWV0IixlLmhyZWY9SS5nZXRCYW5uZXJTREtBc3Nlc3RzVXJsKCkrIi9vdENvbmZpcm1EaWFsb2ciKyhMLnVzZVJUTD8iUnRsIjoiIikrIi5jc3MiLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoZSksbmV3IFByb21pc2UoZnVuY3Rpb24oZSl7SS5qc29ucChJLmdldEJhbm5lclZlcnNpb25VcmwoKSsiL290Q29uZmlybURpYWxvZy5qcyIsZSxlKX0pfSxXdC5wcm90b3R5cGUuZ2V0Q1NCdG5Db250ZW50PWZ1bmN0aW9uKCl7cmV0dXJuIEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHQsbyxuLHI7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtzd2l0Y2goZS5sYWJlbCl7Y2FzZSAwOnJldHVybih0PUwudXNlUlRMP1NlLlJUTDpTZS5MVFIsbC5jc0J0bkFzc2V0W3RdKT9bMywyXToobz1JLmdldEJhbm5lclNES0Fzc2VzdHNVcmwoKSsiLyIrKEwudXNlUlRMP1dlOnplKSxuPWwuY3NCdG5Bc3NldCxyPXQsWzQsdGhpcy5vdEZldGNoKG8pXSk7Y2FzZSAxOm5bcl09ZS5zZW50KCksZS5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bMixsLmNzQnRuQXNzZXRbdF1dfX0pfSl9LFd0LnByb3RvdHlwZS5nZXRQY0NvbnRlbnQ9ZnVuY3Rpb24oaSl7cmV0dXJuIHZvaWQgMD09PWkmJihpPSExKSxGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciB0LG8sbixyO3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm4odD1MLnVzZVJUTD9TZS5SVEw6U2UuTFRSLGwucGNBc3NldFt0XSYmIWkpP1szLDJdOihvPUkuZ2V0QmFubmVyU0RLQXNzZXN0c1VybCgpLEwuUENUZW1wbGF0ZVVwZ3JhZGUmJihvKz0iL3YyIiksbz1vKyIvIitiLnBjTmFtZSsoTC51c2VSVEw/IlJ0bCI6IiIpKyIuanNvbiIsbj1sLnBjQXNzZXQscj10LFs0LHRoaXMub3RGZXRjaChvKV0pO2Nhc2UgMTpuW3JdPWUuc2VudCgpLGUubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzIsbC5wY0Fzc2V0W3RdXX19KX0pfSxXdC5wcm90b3R5cGUuZ2V0QmFubmVyQ29udGVudD1mdW5jdGlvbihzLGEpe3JldHVybiB2b2lkIDA9PT1zJiYocz0hMSksdm9pZCAwPT09YSYmKGE9bnVsbCksRih0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgdCxvLG4scixpO3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDppZih0PUwudXNlUlRMP1NlLlJUTDpTZS5MVFIsbz1hfHxxdC5nZXREYXRhTGFuZ3VhZ2VDdWx0dXJlKCksbC5iQXNzZXRbdF0mJiFzKXJldHVyblszLDJdO2lmKGk9Yi5nZXRSZWdpb25SdWxlKCksbj12b2lkIDAsUy5mcC5Db29raWVWMlNTUil7aWYoYi5wcmV2aWV3TW9kZSlyZXR1cm4gcj1KU09OLnBhcnNlKHdpbmRvdy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJvdFByZXZpZXdEYXRhIikpLFsyLFByb21pc2UucmVzb2x2ZShyLmJMYXlvdXQpXTtuPWIuYmFubmVyRGF0YVBhcmVudFVSTCsiLyIraS5JZCxiLmNhblVzZUNvbmRpdGlvbmFsTG9naWMmJihuKz0iLyIrYi5Db25kaXRpb24uSWQpLG4rPSIvYkxheW91dC0iK28rIi5qc29uIn1lbHNlIG49SS5nZXRCYW5uZXJTREtBc3Nlc3RzVXJsKCkrKCIvIitiLmJhbm5lck5hbWUrKEwudXNlUlRMPyJSdGwiOiIiKSkrIi5qc29uIjtyZXR1cm4gcj1sLmJBc3NldCxpPXQsWzQsdGhpcy5vdEZldGNoKG4pXTtjYXNlIDE6cltpXT1lLnNlbnQoKSxlLmxhYmVsPTI7Y2FzZSAyOnJldHVyblsyLGwuYkFzc2V0W3RdXX19KX0pfSxXdC5wcm90b3R5cGUuZ2V0Q29tbW9uU3R5bGVzPWZ1bmN0aW9uKGkpe3JldHVybiB2b2lkIDA9PT1pJiYoaT0hMSksRih0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgdCxvLG4scjtyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6cmV0dXJuKHQ9TC51c2VSVEw/U2UuUlRMOlNlLkxUUixsLmNTdHlsZXNbdF0mJiFpKT9bMywyXToobz1JLmdldEJhbm5lclNES0Fzc2VzdHNVcmwoKSsiL290Q29tbW9uU3R5bGVzIisoTC51c2VSVEw/IlJ0bCI6IiIpKyIuY3NzIixuPWwuY1N0eWxlcyxyPXQsWzQsdGhpcy5vdEZldGNoKG8sITApXSk7Y2FzZSAxOm5bcl09ZS5zZW50KCksZS5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bMixsLmNTdHlsZXNbdF1dfX0pfSl9LFd0LnByb3RvdHlwZS5nZXRTeW5jTnRmeUNvbnRlbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gRih0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgdCxvLG4scjtyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6cmV0dXJuKHQ9TC51c2VSVEw/U2UuUlRMOlNlLkxUUixsLnN5bmNOdGZ5Q29udGVudFt0XSk/WzMsMl06KG89SS5nZXRCYW5uZXJTREtBc3Nlc3RzVXJsKCkrIi9vdFN5bmNOb3RpZmljYXRpb24iKyhMLnVzZVJUTD8iUnRsIjoiIikrIi5qc29uIixuPWwuc3luY050ZnlDb250ZW50LHI9dCxbNCx0aGlzLm90RmV0Y2gobyldKTtjYXNlIDE6bltyXT1lLnNlbnQoKSxlLmxhYmVsPTI7Y2FzZSAyOnJldHVyblsyLGwuc3luY050ZnlDb250ZW50W3RdXX19KX0pfSxXdC5wcm90b3R5cGUuZ2V0Q29uc2VudFByb2ZpbGU9ZnVuY3Rpb24oZSx0KXt2YXIgbz10aGlzLG49e0lkZW50aWZpZXI6ZSxUZW5hbnRJZDpsLnRlbmFudElkLEF1dGhvcml6YXRpb246dH07cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe28uZ2V0SlNPTihsLmNvbnNlbnRBcGksbixlLGUpfSl9LFd0LnByb3RvdHlwZS5jaGVja0lmUmVxdWlyZXNQb2xseWZpbGw9ZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudDtyZXR1cm4gMDxlLmluZGV4T2YoIk1TSUUgIil8fDA8ZS5pbmRleE9mKCJUcmlkZW50LyIpfHwidW5kZWZpbmVkIj09dHlwZW9mIFNldH0sV3QucHJvdG90eXBlLm90RmV0Y2g9ZnVuY3Rpb24ocixpLHMsYSl7cmV0dXJuIHZvaWQgMD09PWkmJihpPSExKSx2b2lkIDA9PT1zJiYocz0hMSksdm9pZCAwPT09YSYmKGE9ITEpLEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHQsbyxuPXRoaXM7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtzd2l0Y2goZS5sYWJlbCl7Y2FzZSAwOnJldHVybiBJLmNoZWNrTW9iaWxlT2ZmbGluZVJlcXVlc3Qocik/WzQsSS5vdEZldGNoT2ZmbGluZUZpbGUocildOlszLDJdO2Nhc2UgMTpyZXR1cm5bMixlLnNlbnQoKV07Y2FzZSAyOnJldHVybiBlLnRyeXMucHVzaChbMiw5LCwxMF0pLGIubW9iaWxlT25saW5lVVJMLnB1c2gociksInVuZGVmaW5lZCIhPXR5cGVvZiBmZXRjaD9bMywzXTpbMixuZXcgUHJvbWlzZShmdW5jdGlvbihlKXtuLmdldEpTT04ocixudWxsLGUsZSxpKX0pXTtjYXNlIDM6cmV0dXJuWzQsZmV0Y2gocildO2Nhc2UgNDpyZXR1cm4odD1lLnNlbnQoKSxzJiZ0LmhlYWRlcnMuZ2V0KCJBY2Nlc3MtQ29udHJvbC1BbGxvdy1DcmVkZW50aWFscyIpKT9bMixQcm9taXNlLnJlc29sdmUoKV06KGEmJnQuaGVhZGVycy5nZXQoIlgtT25lVHJ1c3QtSXNCb3QiKSYmKGwuaXNCb3RIZWFkZXI9InRydWUiPT09dC5oZWFkZXJzLmdldCgiWC1PbmVUcnVzdC1Jc0JvdCIpLnRvTG93ZXJDYXNlKCkpLGk/WzQsdC50ZXh0KCldOlszLDZdKTtjYXNlIDU6cmV0dXJuWzIsZS5zZW50KCldO2Nhc2UgNjpyZXR1cm5bNCx0Lmpzb24oKV07Y2FzZSA3OnJldHVyblsyLGUuc2VudCgpXTtjYXNlIDg6cmV0dXJuWzMsMTBdO2Nhc2UgOTpyZXR1cm4gbz1lLnNlbnQoKSxjb25zb2xlLmxvZygiRXJyb3IgaW4gZmV0Y2ggVVJMIDogIityKyIgRXhjZXB0aW9uIDoiK28pLFszLDEwXTtjYXNlIDEwOnJldHVyblsyXX19KX0pfSxXdC5wcm90b3R5cGUuZ2V0SlNPTj1mdW5jdGlvbihlLHQsbyxuLHIpe3ZvaWQgMD09PXQmJih0PW51bGwpLHZvaWQgMD09PXImJihyPSExKTt2YXIgaT1uZXcgWE1MSHR0cFJlcXVlc3Q7aWYoaS5vcGVuKCJHRVQiLGUsITApLGkud2l0aENyZWRlbnRpYWxzPSExLHQpZm9yKHZhciBzIGluIHQpaS5zZXRSZXF1ZXN0SGVhZGVyKHMsdFtzXSk7aS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgZTsyMDA8PXRoaXMuc3RhdHVzJiZ0aGlzLnN0YXR1czw0MDAmJnRoaXMucmVzcG9uc2VUZXh0PyhlPXZvaWQgMCxlPXI/dGhpcy5yZXNwb25zZVRleHQ6SlNPTi5wYXJzZSh0aGlzLnJlc3BvbnNlVGV4dCksbyhlKSk6bih7bWVzc2FnZToiRXJyb3IgTG9hZGluZyBEYXRhIixzdGF0dXNDb2RlOnRoaXMuc3RhdHVzfSl9LGkub25lcnJvcj1mdW5jdGlvbihlKXtuKGUpfSxpLnNlbmQoKX0sV3QucHJvdG90eXBlLmdldEdlb2xvY2F0aW9uPWZ1bmN0aW9uKHQpe3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBvLG49dGhpcztyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3JldHVybiBvPXRoaXMuZ2V0R2VvbG9jYXRpb25VUkwodCksWzIsbmV3IFByb21pc2UoZnVuY3Rpb24oZSx0KXtuLmdldEpTT04obyx7YWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uIn0sZSx0KX0pXX0pfSl9LFd0LnByb3RvdHlwZS5nZXRHZW9sb2NhdGlvblVSTD1mdW5jdGlvbihlKXt2YXIgdD1sLnN0b3JhZ2VCYXNlVVJMKyIvc2NyaXB0dGVtcGxhdGVzLyIrZS5WZXJzaW9uO3JldHVybiBuZXcgUmVnRXhwKCJeZmlsZTovLyIsImkiKS50ZXN0KHQpJiZlLk1vYmlsZVNESz8iLi8iK2UuR2VvbG9jYXRpb25VcmwucmVwbGFjZSgvXihodHRwfGh0dHBzKTpcL1wvLywiIikuc3BsaXQoIi8iKS5zbGljZSgxKS5qb2luKCIvIikrIi5qcyI6ZS5HZW9sb2NhdGlvblVybH07dmFyIEt0LHp0PVd0O2Z1bmN0aW9uIFd0KCl7fXZhciBJLFl0PSJncm91cHMiLEp0PSJob3N0cyIsWHQ9ImdlblZlbmRvcnMiLFF0PSJ2cyIsWnQ9KCR0LnByb3RvdHlwZS5hZGRMb2dvVXJscz1mdW5jdGlvbigpe0kuY2hlY2tNb2JpbGVPZmZsaW5lUmVxdWVzdChJLmdldEJhbm5lclZlcnNpb25VcmwoKSl8fChiLm1vYmlsZU9ubGluZVVSTC5wdXNoKEkudXBkYXRlQ29ycmVjdFVybChMLm9wdGFub25Mb2dvKSksYi5tb2JpbGVPbmxpbmVVUkwucHVzaChJLnVwZGF0ZUNvcnJlY3RVcmwoTC5vbmVUcnVzdEZ0ckxvZ28pKSl9LCR0LnByb3RvdHlwZS5nZXRDb29raWVMYWJlbD1mdW5jdGlvbihlLHQsbyl7dmFyIG47cmV0dXJuIHZvaWQgMD09PW8mJihvPSEwKSxlPyhuPWUuTmFtZSx0PydcbiAgICAgICAgICAgICAgICA8YSAgY2xhc3M9ImNvb2tpZS1sYWJlbCJcbiAgICAgICAgICAgICAgICAgICAgaHJlZj0iJysobz8iaHR0cHM6Ly9jb29raWVwZWRpYS5jby51ay9jb29raWVzLyI6Imh0dHBzOi8vY29va2llcGVkaWEuY28udWsvaG9zdC8iKStlLk5hbWUrJyJcbiAgICAgICAgICAgICAgICAgICAgcmVsPSJub29wZW5lciJcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PSJfYmxhbmsiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAnK2UuTmFtZSsnJm5ic3A7PHNwYW4gY2xhc3M9Im90LXNjcm4tcmRyIj4nK0wuTmV3V2luVHh0KyI8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgIjpuKToiIn0sJHQucHJvdG90eXBlLmdldEJhbm5lclNES0Fzc2VzdHNVcmw9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXRCYW5uZXJWZXJzaW9uVXJsKCkrIi9hc3NldHMifSwkdC5wcm90b3R5cGUuZ2V0QmFubmVyVmVyc2lvblVybD1mdW5jdGlvbigpe3ZhciBlPWIuYmFubmVyU2NyaXB0RWxlbWVudC5nZXRBdHRyaWJ1dGUoInNyYyIpO3JldHVybiIiKygtMSE9PWUuaW5kZXhPZigiL2NvbnNlbnQvIik/ZS5zcGxpdCgiY29uc2VudC8iKVswXSsic2NyaXB0dGVtcGxhdGVzLyI6ZS5zcGxpdCgib3RTREtTdHViIilbMF0pK1MubW9kdWxlSW5pdGlhbGl6ZXIuVmVyc2lvbn0sJHQucHJvdG90eXBlLmNoZWNrTW9iaWxlT2ZmbGluZVJlcXVlc3Q9ZnVuY3Rpb24oZSl7cmV0dXJuIFMubW9kdWxlSW5pdGlhbGl6ZXIuTW9iaWxlU0RLJiZuZXcgUmVnRXhwKCJeZmlsZTovLyIsImkiKS50ZXN0KGUpfSwkdC5wcm90b3R5cGUudXBkYXRlQ29ycmVjdElBQlVybD1mdW5jdGlvbihlKXt2YXIgdCxvPVMubW9kdWxlSW5pdGlhbGl6ZXIuU2NyaXB0VHlwZTtyZXR1cm4gbyE9PXFlLkxPQ0FMJiZvIT09cWUuTE9DQUxfVEVTVHx8KG89UC5nZXRVUkwoZSksKHQ9KHQ9Yi5iYW5uZXJTY3JpcHRFbGVtZW50KSYmdC5nZXRBdHRyaWJ1dGUoInNyYyIpP1AuZ2V0VVJMKHQuZ2V0QXR0cmlidXRlKCJzcmMiKSk6bnVsbCkmJm8mJnQuaG9zdG5hbWUhPT1vLmhvc3RuYW1lJiYoZT0oZT0odD0iIitiLmJhbm5lckRhdGFQYXJlbnRVUkwpK28ucGF0aG5hbWUuc3BsaXQoIi8iKS5wb3AoKS5yZXBsYWNlKC8oXlwvPykvLCIvIikpLnJlcGxhY2Uoby5ob3N0bmFtZSx0Lmhvc3RuYW1lKSkpLGV9LCR0LnByb3RvdHlwZS51cGRhdGVDb3JyZWN0VXJsPWZ1bmN0aW9uKGUsdCl7aWYoKHZvaWQgMD09PXQmJih0PSExKSxiLnByZXZpZXdNb2RlKSYmbmV3IFJlZ0V4cCgiXmRhdGE6aW1hZ2UvIikudGVzdChlKSlyZXR1cm4gZTt2YXIgbz1QLmdldFVSTChlKSxuPWIuYmFubmVyU2NyaXB0RWxlbWVudCxuPW4mJm4uZ2V0QXR0cmlidXRlKCJzcmMiKT9QLmdldFVSTChuLmdldEF0dHJpYnV0ZSgic3JjIikpOm51bGw7aWYobiYmbyYmbi5ob3N0bmFtZSE9PW8uaG9zdG5hbWUpe3ZhciByPVMubW9kdWxlSW5pdGlhbGl6ZXIuU2NyaXB0VHlwZTtpZihyPT09cWUuTE9DQUx8fHI9PT1xZS5MT0NBTF9URVNUKXtpZih0KXJldHVybiBlO249Yi5iYW5uZXJEYXRhUGFyZW50VVJMKyIvIitiLmdldFJlZ2lvblJ1bGUoKS5JZCxiLmNhblVzZUNvbmRpdGlvbmFsTG9naWMmJihuKz0iLyIrYi5Db25kaXRpb24uSWQpLGU9bisobnVsbD09KHI9bnVsbD09KHI9ZSk/dm9pZCAwOnIucmVwbGFjZShudWxsPT0odD1TLm1vZHVsZUluaXRpYWxpemVyKT92b2lkIDA6dC5DRE5Mb2NhdGlvbiwiIikpP3ZvaWQgMDpyLnJlcGxhY2UoLyheXC8/KS8sIi8iKSl9ZWxzZSBlPW51bGw9PSh0PWUpP3ZvaWQgMDp0LnJlcGxhY2Uoby5ob3N0bmFtZSxuLmhvc3RuYW1lKX1yZXR1cm4gZX0sJHQucHJvdG90eXBlLmlzQnVuZGxlT3JTdGFja0FjdGl2ZT1mdW5jdGlvbihuLHIpe3ZvaWQgMD09PXImJihyPW51bGwpO2Zvcih2YXIgaT1fLm9uZVRydXN0SUFCQ29uc2VudCxzPSEwLGE9KHI9cnx8Xy5ncm91cHNDb25zZW50LDApOygoKT0+e3ZhciBlLHQsbz1uLlN1Ykdyb3Vwc1thXTtvJiZvLlN0YXR1cyE9PWYuQUxXQVlTX0FDVElWRSYmKG8uVHlwZT09PWt0PygtMTwodD1QLmZpbmRJbmRleChyLGZ1bmN0aW9uKGUpe3JldHVybiBlLnNwbGl0KCI6IilbMF09PT1vLkN1c3RvbUdyb3VwSWR9KSkmJiIwIj09PXJbdF0uc3BsaXQoIjoiKVsxXXx8IXIubGVuZ3RoKSYmKHM9ITEpOihlPW8uVHlwZT09PWsuR3JvdXBUeXBlcy5TcGxfRnQ/aS5zcGVjaWFsRmVhdHVyZXM6aS5wdXJwb3NlLCgtMTwodD1QLmZpbmRJbmRleChlLGZ1bmN0aW9uKGUpe3JldHVybiBlLnNwbGl0KCI6IilbMF09PT1vLklhYkdycElkfSkpJiYiZmFsc2UiPT09ZVt0XS5zcGxpdCgiOiIpWzFdfHwhZS5sZW5ndGgpJiYocz0hMSkpKSxhKyt9KSgpLHMmJmE8bi5TdWJHcm91cHMubGVuZ3RoOyk7cmV0dXJuIHN9LCR0LnByb3RvdHlwZS5vdEZldGNoT2ZmbGluZUZpbGU9ZnVuY3Rpb24obil7cmV0dXJuIEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHQsbztyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6cmV0dXJuIG49bi5yZXBsYWNlKCIuanNvbiIsIi5qcyIpLHQ9bi5zcGxpdCgiLyIpLHQ9dFt0Lmxlbmd0aC0xXSxvPXQuc3BsaXQoIi5qcyIpWzBdLFs0LG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe2Z1bmN0aW9uIHQoKXtlKHdpbmRvd1tvXSl9SS5qc29ucChuLHQsdCl9KV07Y2FzZSAxOnJldHVyblsyLGUuc2VudCgpXX19KX0pfSwkdC5wcm90b3R5cGUuanNvbnA9ZnVuY3Rpb24oZSx0LG8sbil7dm9pZCAwPT09biYmKG49IiIpLEkuY2hlY2tNb2JpbGVPZmZsaW5lUmVxdWVzdChlKXx8Yi5tb2JpbGVPbmxpbmVVUkwucHVzaChlKTt2YXIgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSxpPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF07ZnVuY3Rpb24gcygpe3QoKX1yLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpeyJsb2FkZWQiIT09dGhpcy5yZWFkeVN0YXRlJiYiY29tcGxldGUiIT09dGhpcy5yZWFkeVN0YXRlfHxzKCl9LHIuaWQ9bixyLm9ubG9hZD1zLHIub25lcnJvcj1mdW5jdGlvbigpe28oKX0sci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLGIuc3JpSGFzaCYmKGUuaW5jbHVkZXMoIm90VENGIikmJm51bGwhPShuPWIuc3JpSGFzaCkmJm5bIm90VENGLmpzIl0mJihyLmludGVncml0eT1iLnNyaUhhc2hbIm90VENGLmpzIl0pLGUuaW5jbHVkZXMoIm90R1BQIikmJm51bGwhPShuPWIuc3JpSGFzaCkmJm5bIm90R1BQLmpzIl0mJihyLmludGVncml0eT1iLnNyaUhhc2hbIm90R1BQLmpzIl0pLGUuaW5jbHVkZXMoIm90Q29uZmlybURpYWxvZyIpKSYmbnVsbCE9KG49Yi5zcmlIYXNoKSYmblsib3RDb25maXJtRGlhbG9nLmpzIl0mJihyLmludGVncml0eT1iLnNyaUhhc2hbIm90Q29uZmlybURpYWxvZy5qcyJdKSxyLmFzeW5jPSEwLHIuc3JjPW0uZ2V0U2NyaXB0VXJsKGUpLF8uY3Jvc3NPcmlnaW4mJnIuc2V0QXR0cmlidXRlKCJjcm9zc29yaWdpbiIsXy5jcm9zc09yaWdpbiksaS5hcHBlbmRDaGlsZChyKX0sJHQucHJvdG90eXBlLmlzQ29va2llUG9saWN5UGFnZT1mdW5jdGlvbihlKXtmb3IodmFyIHQ9ITEsbz1QLnJlbW92ZVVSTFByZWZpeGVzKHdpbmRvdy5sb2NhdGlvbi5ocmVmKSxuPXYoIjxkaXY+PC9kaXY+IiwiY2UiKS5lbCxyPSh2KG4pLmh0bWwoZSksbi5xdWVyeVNlbGVjdG9yQWxsKCJhIikpLGk9MDtpPHIubGVuZ3RoO2krKylpZihQLnJlbW92ZVVSTFByZWZpeGVzKHJbaV0uaHJlZik9PT1vKXt0PSEwO2JyZWFrfXJldHVybiB0fSwkdC5wcm90b3R5cGUuaXNCYW5uZXJWaXNpYmxlPWZ1bmN0aW9uKCl7dmFyIGU9ITEsdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib25ldHJ1c3QtYmFubmVyLXNkayIpO3JldHVybiBlPXQmJnQuZ2V0QXR0cmlidXRlKCJzdHlsZSIpPy0xPT09dC5nZXRBdHRyaWJ1dGUoInN0eWxlIikucmVwbGFjZSgvXHMvZywiIikuaW5kZXhPZigiZGlzcGxheTpub25lIik6ZX0sJHQucHJvdG90eXBlLmhpZGVCYW5uZXI9ZnVuY3Rpb24oKXt2YXIgZSx0PXRoaXM7Xy5ibnJBbmltYXRpb25JblByb2c/c2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiB0LmhpZGVCYW5uZXIoKX0sMTAwKToodigiI29uZXRydXN0LWJhbm5lci1zZGsiKS5mYWRlT3V0KDQwMCksbnVsbCE9KGU9bnVsbD09KGU9d2luZG93Lk9uZVRydXN0X0NvbmZpcm1EaWFsb2cpP3ZvaWQgMDplLmdldEluc3RhbmNlKCkpJiZlLmNsb3NlKCkpfSwkdC5wcm90b3R5cGUucmVzZXRGb2N1c1RvQm9keT1mdW5jdGlvbigpe2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQmJmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuYmx1cigpfSwkdC5wcm90b3R5cGUuZ2V0RHVyYXRpb249ZnVuY3Rpb24oZSl7dmFyIHQsbz1lLkxlbmd0aCxlPWUuRHVyYXRpb25UeXBlO3JldHVybiBvJiYwIT09cGFyc2VJbnQobyk/KG89cGFyc2VJbnQobyksZT8odD0xPChvPXRoaXMucm91bmRfdG9fcHJlY2lzaW9uKG8vZSwuNSkpP0N0W2VdKyJzIjpDdFtlXSxMLkxpZmVzcGFuRHVyYXRpb25UZXh0JiYxPT09ZSYmKHQ9IkxpZmVzcGFuRHVyYXRpb25UZXh0IiksbysiICIrTFt0XSk6dGhpcy5nZXREdXJhdGlvblRleHQobykpOkwuTGZTcGFuU2Vjc30sJHQucHJvdG90eXBlLmlzRGF0ZUN1cnJlbnQ9ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zcGxpdCgiLyIpLHQ9cGFyc2VJbnQoZVsxXSksbz1wYXJzZUludChlWzBdKSxlPXBhcnNlSW50KGVbMl0pLG49bmV3IERhdGUscj1uLmdldERhdGUoKSxpPW4uZ2V0RnVsbFllYXIoKSxuPW4uZ2V0TW9udGgoKSsxO3JldHVybiBpPGV8fGU9PT1pJiZuPG98fGU9PT1pJiZvPT09biYmcjw9dH0sJHQucHJvdG90eXBlLmluc2VydEZvb3RlckxvZ289ZnVuY3Rpb24oZSl7dmFyIHQ9dihlKS5lbDtpZih0Lmxlbmd0aCYmTC5vbmVUcnVzdEZ0ckxvZ28pe3ZhciBvPUkudXBkYXRlQ29ycmVjdFVybChMLm9uZVRydXN0RnRyTG9nbyk7SS5jaGVja01vYmlsZU9mZmxpbmVSZXF1ZXN0KEkuZ2V0QmFubmVyVmVyc2lvblVybCgpKSYmKG89UC5nZXRSZWxhdGl2ZVVSTChvLCEwLCEwKSk7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciByLGkscz0iUG93ZXJlZCBieSBPbmVUcnVzdCAiK0wuTmV3V2luVHh0LGE9KHYodFtuXSkuYXR0cigiaHJlZiIsTC5wQ0Zvb3RlckxvZ29VcmwpLHYodFtuXSkuYXR0cigiYXJpYS1sYWJlbCIscyksdFtuXS5xdWVyeVNlbGVjdG9yKCJpbWciKSk7Uy5mcC5DTVBJY29uU3ByaXRlPyh0W25dLnJlbW92ZUNoaWxkKGEpLHI9IiMiK25ldyBVUkwobyx3aW5kb3cubG9jYXRpb24ub3JpZ2luKS5wYXRobmFtZS5zcGxpdCgiLyIpLnBvcCgpLnNwbGl0KCIuIikuc2hpZnQoKSwoaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwic3ZnIikpLmNsYXNzTGlzdC5hZGQoIm90LWZvb3Rlci1zdmctbG9nbyIpLGkuaW5uZXJIVE1MPSI8dXNlPjwvdXNlPiIsaS5zZXRBdHRyaWJ1dGUoInRpdGxlIixzKSxpLnF1ZXJ5U2VsZWN0b3IoInVzZSIpLnNldEF0dHJpYnV0ZSgiaHJlZiIsciksdFtuXS5hcHBlbmRDaGlsZChpKSk6KGEuc2V0QXR0cmlidXRlKCJzcmMiLG8pLGEuc2V0QXR0cmlidXRlKCJ0aXRsZSIscykpfX19LCR0LnByb3RvdHlwZS5nZXRVVENGb3JtYXR0ZWREYXRlPWZ1bmN0aW9uKGUpe2U9bmV3IERhdGUoZSk7cmV0dXJuIGUuZ2V0VVRDRnVsbFllYXIoKSsiLSIrKGUuZ2V0VVRDTW9udGgoKSsxKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKSsiLSIrZS5nZXRVVENEYXRlKCkudG9TdHJpbmcoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKSsiICIrZS5nZXRVVENIb3VycygpKyI6IitlLmdldFVUQ01pbnV0ZXMoKS50b1N0cmluZygpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwiMCIpKyI6IitlLmdldFVUQ1NlY29uZHMoKS50b1N0cmluZygpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwiMCIpfSwkdC5wcm90b3R5cGUuZ2V0RHVyYXRpb25UZXh0PWZ1bmN0aW9uKGUpe3JldHVybiAzNjU8PWU/KGU9dGhpcy5yb3VuZF90b19wcmVjaXNpb24oZS89MzY1LC41KSkrIiAiKygxPGU/TC5MZlNwbllyczpMLkxmU3BuWXIpOkwuTGlmZXNwYW5EdXJhdGlvblRleHQ/ZSsiICIrTC5MaWZlc3BhbkR1cmF0aW9uVGV4dDplKyIgIisoMTxlP0wuUENlbnRlclZlbmRvckxpc3RMaWZlc3BhbkRheXM6TC5QQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuRGF5KX0sJHQucHJvdG90eXBlLnJvdW5kX3RvX3ByZWNpc2lvbj1mdW5jdGlvbihlLHQpe2U9K2UrKHZvaWQgMD09PXQ/LjU6dC8yKTtyZXR1cm4gZS1lJSh2b2lkIDA9PT10PzE6K3QpfSwkdC5wcm90b3R5cGUuaXNPcHRPdXRFbmFibGVkPWZ1bmN0aW9uKCl7cmV0dXJuIEwuUENUZW1wbGF0ZVVwZ3JhZGU/Xy5nZW5WZW5PcHRPdXRFbmFibGVkOkwuYWxsb3dIb3N0T3B0T3V0fSwkdC5wcm90b3R5cGUuZmluZFVzZXJUeXBlPWZ1bmN0aW9uKGUpe18uaXNLZXlib2FyZFVzZXI9ISghZXx8MCE9PWUuZGV0YWlsKX0sJHQucHJvdG90eXBlLmdldENTU1Byb3BzRnJvbVN0cmluZz1mdW5jdGlvbihlKXt2YXIgdCxvO3JldHVybiBlPyh0PWUubGVuZ3RoLG89e30sKGU9ZS5lbmRzV2l0aCgiOyIpP2Uuc3Vic3RyaW5nKDAsdC0xKTplKS50cmltKCkuc3BsaXQoIjsiKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2U9ZS50cmltKCkudG9TdHJpbmcoKS5zcGxpdCgiOiIpLGU9SlNPTi5wYXJzZSgneyAiJytlWzBdLnRyaW0oKSsnIiA6ICInK2VbMV0udHJpbSgpKyciIH0nKTtvPU9iamVjdC5hc3NpZ24obyxlKX0pLG8pOnt9fSwkdC5wcm90b3R5cGUuc2V0Q2xvc2VJY29uPWZ1bmN0aW9uKGUpe3ZhciB0LG8sbj1JLnVwZGF0ZUNvcnJlY3RVcmwoTC5PVENsb3NlQnRuTG9nbykscj12KGUpO3IubGVuZ3RoJiYodD1lLnF1ZXJ5U2VsZWN0b3IoInN2ZyIpLFMuZnAuQ01QSWNvblNwcml0ZSYmbiYmIXQ/KHQ9bmV3IFVSTChuLHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pLnBhdGhuYW1lLnNwbGl0KCIvIikucG9wKCkuc3BsaXQoIi4iKS5zaGlmdCgpLChvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCJzdmciKSkuY2xhc3NMaXN0LmFkZCgib3Qtc3ZnLWljb24iKSxvLmlubmVySFRNTD0iPHVzZT48L3VzZT4iLG8ucXVlcnlTZWxlY3RvcigidXNlIikuc2V0QXR0cmlidXRlKCJocmVmIiwiIyIrdCksZS5hcHBlbmRDaGlsZChvKSk6ZChyLmVsLCdiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIicrbisnIiknLCEwKSl9LCR0LnByb3RvdHlwZS5jcmVhdGVPcHRPdXRTaWduYWxFbGVtZW50PWZ1bmN0aW9uKGUsdCl7dmFyIG89ZSh0PyIjb3QtcGMtY29udGVudCI6IiNvbmV0cnVzdC1wb2xpY3kiKSxuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHI9KG4uY2xhc3NMaXN0LmFkZCgib3Qtb3B0b3V0LXNpZ25hbCIpLGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKSxpPShyLmNsYXNzTGlzdC5hZGQoIm90LW9wdG91dC1pY29uIiksZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpKTtyZXR1cm4gaS5pbm5lclRleHQ9dGhpcy5nZXRPcHRPdXRTaWduYWxUZXh0KHQpLG4uYXBwZW5kKHIpLG4uYXBwZW5kKGkpLG51bGwhPSh0PW8pJiZ0LnByZXBlbmQobiksdGhpcy5hcHBseUd1YXJkTG9nbyhlKSxufSwkdC5wcm90b3R5cGUuZ2V0T3B0T3V0U2lnbmFsVGV4dD1mdW5jdGlvbihlKXtpZihudWxsIT09Ty5hbGVydEJveENsb3NlRGF0ZSgpKXtpZihlJiZMLlBDT3B0T3V0U2lnbmFsVGV4dEFmdGVyQ29uc2VudClyZXR1cm4gTC5QQ09wdE91dFNpZ25hbFRleHRBZnRlckNvbnNlbnQ7aWYoIWUmJkwuQk9wdE91dFNpZ25hbFRleHRBZnRlckNvbnNlbnQpcmV0dXJuIEwuQk9wdE91dFNpZ25hbFRleHRBZnRlckNvbnNlbnR9cmV0dXJuIGU/TC5QQ09wdE91dFNpZ25hbFRleHQ6TC5CT3B0T3V0U2lnbmFsVGV4dH0sJHQucHJvdG90eXBlLnNob3VsZFNob3dEb3VibGVPcHRJblNpZ25hbD1mdW5jdGlvbihuKXt2YXIgZSx0LHIsaTtyZXR1cm4gdm9pZCAwPT09biYmKG49ITEpLCEoIUwuUENTaG93RG91YmxlT3B0SW5TaWduYWx8fCh0PSEhKGU9Xy5pc1BDVmlzaWJsZT9kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib25ldHJ1c3QtcGMtc2RrIik6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm9uZXRydXN0LWJhbm5lci1zZGsiKSkmJiJub25lIiE9PXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGUpLmRpc3BsYXksIWUpfHwhdCkmJihlPVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULFl0KSx0PVAuc3RyVG9BcnIoZSkscj1JLmdldEdyb3VwQ29uc2VudE1hcCh0KSxpPUkuZ2V0R3JvdXBDb25zZW50TWFwKF8uZ3JvdXBzQ29uc2VudCksbnVsbD09KGU9TC5Hcm91cHMpP3ZvaWQgMDplLnNvbWUoZnVuY3Rpb24oZSl7dmFyIHQ9ZS5TdGF0dXM9PT1mLkFDVElWRSxvPWIuZ3BjRW5hYmxlZCYmZS5Jc0dwY0VuYWJsZWQ7aWYodHx8byl7dD1lLkN1c3RvbUdyb3VwSWQ7aWYoIjAiPT09clt0XSYmKCIxIj09PWlbdF18fG4pKXJldHVybiEwfXJldHVybiExfSkpfSwkdC5wcm90b3R5cGUuZ2V0R3JvdXBDb25zZW50TWFwPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT0oZT1lKT92b2lkIDA6ZS5yZWR1Y2UoZnVuY3Rpb24oZSx0KXt0PXQuc3BsaXQoIjoiKTtyZXR1cm4gZVt0WzBdXT10WzFdLGV9LHt9KX0sJHQucHJvdG90eXBlLmNyZWF0ZURvdWJsZU9wdEluQ29uZmlybURpYWxvZz1mdW5jdGlvbihlLHQsbyl7dmFyIG49bnVsbD09KG49d2luZG93Lk9uZVRydXN0X0NvbmZpcm1EaWFsb2cpP3ZvaWQgMDpuLmdldEluc3RhbmNlKCk7biYmKG4uY3JlYXRlKHt0ZXh0OkwuUENEb3VibGVPcHRJblNpZ25hbFRleHQsZGVzY3JpcHRpb246TC5QQ0RvdWJsZU9wdEluU2lnbmFsRGVzY3JpcHRpb24sY2FuY2VsVGV4dDpMLlBDRG91YmxlT3B0SW5TaWduYWxDYW5jZWxUZXh0LGNvbmZpcm1UZXh0OkwuUENEb3VibGVPcHRJblNpZ25hbENvbmZpcm1UZXh0LG9uQ29uZmlybTp0LG9uQ2FuY2VsOm99KS5vcGVuKGU/IiNvbmV0cnVzdC1wYy1zZGsiOiIjb25ldHJ1c3QtYmFubmVyLXNkayIpLEkuc2V0Q2xvc2VJY29uKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5vdC1jb25maXJtLWRpYWxvZyAub3QtY2xvc2UtaWNvbiIpKSl9LCR0LnByb3RvdHlwZS5hcHBseUd1YXJkTG9nbz1mdW5jdGlvbihpKXtyZXR1cm4gRih0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgdCxvLG4scjtyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6cmV0dXJuIFMuZnAuQ01QSWNvblNwcml0ZT8obj0iPHN2ZyBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgIDx1c2UgaHJlZj0nI290X29wdF9vdXRfc2lnbmFsJz48L3VzZT5cbiAgICAgICAgICAgIDwvc3ZnPiIsdihpKCIub3Qtb3B0b3V0LWljb24iKSkuaHRtbChuKSx2KGkoIi5vdC1vcHRvdXQtaWNvbiBzdmciKSkuYXR0cigiY2xhc3MiLCJvdC1zb3VyY2Utc3ByaXRlIiksWzMsM10pOlszLDFdO2Nhc2UgMTpyZXR1cm4odD1MLmNvb2tpZVBlcnNpc3RlbnRMb2dvKS5pbmNsdWRlcygib3RfZ3VhcmRfbG9nby5zdmciKXx8KG89TC5PVENsb3NlQnRuTG9nbyxyPW8uaW5kZXhPZigic3RhdGljLyIpLHQ9by5yZXBsYWNlKG8uc2xpY2Uocis3KSwib3RfZ3VhcmRfbG9nby5zdmciKSksKG89Uy5tb2R1bGVJbml0aWFsaXplci5TY3JpcHRUeXBlKSE9PXFlLkxPQ0FMJiZvIT09cWUuTE9DQUxfVEVTVHx8KHQ9SS51cGRhdGVDb3JyZWN0VXJsKHQpKSxbNCxLdC5nZXRQZXJzaXN0ZW50Q29va2llU3ZnKHQpXTtjYXNlIDI6bj1lLnNlbnQoKSxyPShyPW4pJiZuLnJlcGxhY2UoLzxzdmcoW1xzXFNdKj8pPi9pLCc8c3ZnJDEgYXJpYS1oaWRkZW49InRydWUiPicpLHYoIi5vdC1vcHRvdXQtaWNvbiIpLmh0bWwociksZS5sYWJlbD0zO2Nhc2UgMzpyZXR1cm5bMl19fSl9KX0sJHQucHJvdG90eXBlLnVwZGF0ZVRDU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIGU9Ty5pYWJTdHJpbmdTREsoKS50Y1N0cmluZygpLmVuY29kZShfLnRjTW9kZWwpO18uY21wQXBpLnVwZGF0ZShlLCExKX0sJHQucHJvdG90eXBlLnJlcGxhY2VUZXh0RnJvbVN0cmluZz1mdW5jdGlvbihlLHQsbyl7cmV0dXJuIHQuc3BsaXQoZSkuam9pbihvKX0sJHQucHJvdG90eXBlLmdldFN0dWJRdWVyeVBhcmFtPWZ1bmN0aW9uKGUpe3ZhciB0PWIuc3R1YlVybHx8d2luZG93Lm90U3R1YkRhdGEmJndpbmRvdy5vdFN0dWJEYXRhLnN0dWJVcmw7cmV0dXJuIXR8fCh0PXQuc3BsaXQoIj8iKSkubGVuZ3RoPDI/bnVsbDpuZXcgVVJMU2VhcmNoUGFyYW1zKHRbMV0pLmdldChlKX0sJHQucHJvdG90eXBlLmdldFN0dWJBdHRyPWZ1bmN0aW9uKGUpe3ZhciB0PWIuYmFubmVyU2NyaXB0RWxlbWVudCx0PXQmJnQuZ2V0QXR0cmlidXRlKGUpO3JldHVybiB0fHxJLmdldFN0dWJRdWVyeVBhcmFtKGUpfSwkdC5wcm90b3R5cGUuZ2V0VmVuZG9yUGFnZUhlYWRlclRleHQ9ZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9UaXRsZSsnLCAjb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtdGl0bGUgcFthcmlhLWxldmVsPSIzIl0nKTtyZXR1cm4gZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50P2UuaW5uZXJUZXh0OiIifSwkdC5wcm90b3R5cGUucmVwbGFjZUhlYWRpbmdzPWZ1bmN0aW9uKGUpe3ZhciB0O2lmKG51bGwhPSh0PVMubW9kdWxlSW5pdGlhbGl6ZXIpJiZ0LlNFT09wdGltaXphdGlvbilmb3IodmFyIG89MTtvPD02O28rKykobj0+e2UucXVlcnlTZWxlY3RvckFsbCgiaCIrbikuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdCxvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTtvLnNldEF0dHJpYnV0ZSgicm9sZSIsImhlYWRpbmciKSxvLnNldEF0dHJpYnV0ZSgiYXJpYS1sZXZlbCIsbi50b1N0cmluZygpKSxvLmlubmVySFRNTD1lLmlubmVySFRNTCxlLmNsYXNzTmFtZSYmKG8uY2xhc3NOYW1lPWUuY2xhc3NOYW1lKSxlLmlkJiYoby5pZD1lLmlkKSxlLnRpdGxlJiYoby50aXRsZT1lLnRpdGxlKSxudWxsIT0odD1lLnBhcmVudE5vZGUpJiZ0LnJlcGxhY2VDaGlsZChvLGUpfSl9KShvKX0sJHQucHJvdG90eXBlLmFkZEV4dGVybmFsSWNvbkZvckxpbmtzPWZ1bmN0aW9uKGUpe3ZhciBvO0wuQmFubmVyUmVxdWlyZUV4dGVybmFsTGlua3MmJihvPVMuZnAuQ01QSWNvblNwcml0ZSYmTC5PVEV4dGVybmFsTGlua0xvZ28mJiFMLkJhbm5lckV4dGVybmFsTGlua3NMb2dvLGUoJ2FbdGFyZ2V0PSJfYmxhbmsiXScpLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnRFbGVtZW50O3QmJiJESVYiPT09dC50YWdOYW1lJiZ0LmNsYXNzTGlzdC5jb250YWlucygib3QtcGMtZm9vdGVyLWxvZ28iKXx8KG8/KHQ9SS51cGRhdGVDb3JyZWN0VXJsKEwuT1RFeHRlcm5hbExpbmtMb2dvKSx0PUwuQmFubmVyRXh0ZXJuYWxMaW5rc0xvZ28/SS51cGRhdGVDb3JyZWN0VXJsKEwuQmFubmVyRXh0ZXJuYWxMaW5rc0xvZ28pOnQsdD1uZXcgVVJMKHQsd2luZG93LmxvY2F0aW9uLm9yaWdpbikucGF0aG5hbWUuc3BsaXQoIi8iKS5wb3AoKS5zcGxpdCgiLiIpLnNoaWZ0KCksZS5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyZW5kIixtLmdldElubmVySHRtbENvbnRlbnQoIjxzdmcgY2xhc3M9J290LWV4dC1sbmsnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXNlIGhyZWY9JyMiK3QrIic+PC91c2U+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPiIpKSk6ZS5jbGFzc0xpc3QuYWRkKCJvdC1leHQtbG5rIikpfSkpfSwkdCk7ZnVuY3Rpb24gJHQoKXt9dC5wcm90b3R5cGUuZ2V0UHVycG9zZU9uZUdycElkPWZ1bmN0aW9uKCl7cmV0dXJuIGsuSWRQYXR0ZXJucy5QdXIrIjEifSx0LnByb3RvdHlwZS5zZXRSZWdpb25SdWxlPWZ1bmN0aW9uKGUpe3RoaXMucnVsZT1lfSx0LnByb3RvdHlwZS5nZXRSZWdpb25SdWxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucnVsZX0sdC5wcm90b3R5cGUuZ2V0UmVnaW9uUnVsZVR5cGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tdWx0aVZhcmlhbnRUZXN0aW5nRW5hYmxlZCYmdGhpcy5zZWxlY3RlZFZhcmlhbnQ/dGhpcy5zZWxlY3RlZFZhcmlhbnQuVGVtcGxhdGVUeXBlOnRoaXMuY29uZGl0aW9uYWxMb2dpY0VuYWJsZWQmJiF0aGlzLmFsbENvbmRpdGlvbnNGYWlsZWQ/dGhpcy5Db25kaXRpb24uVGVtcGxhdGVUeXBlOnRoaXMucnVsZS5UeXBlfSx0LnByb3RvdHlwZS5nZXRUZW1wbGF0ZU5hbWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tdWx0aVZhcmlhbnRUZXN0aW5nRW5hYmxlZCYmdGhpcy5zZWxlY3RlZFZhcmlhbnQ/dGhpcy5zZWxlY3RlZFZhcmlhbnQuTmFtZToodGhpcy5jYW5Vc2VDb25kaXRpb25hbExvZ2ljP3RoaXMuQ29uZGl0aW9uOnRoaXMucnVsZSkuVGVtcGxhdGVOYW1lfSx0LnByb3RvdHlwZS5pc0dyb3VwRXhpc3RJbkltcGxpZWRDb25zZW50YWJsZUdyb3VwPWZ1bmN0aW9uKHQpe3JldHVybiBiLmNvbnNlbnRhYmxlSW1wbGllZENvbnNlbnRHcm91cC5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBlLkN1c3RvbUdyb3VwSWQ9PT10LkN1c3RvbUdyb3VwSWR9KX0sdC5wcm90b3R5cGUucmVtb3ZlR3JvdXBGcm9tSW1wbGllZENvbnNlbnRhYmxlR3JvdXA9ZnVuY3Rpb24odCl7dGhpcy5jb25zZW50YWJsZUltcGxpZWRDb25zZW50R3JvdXA9dGhpcy5jb25zZW50YWJsZUltcGxpZWRDb25zZW50R3JvdXAuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlLkN1c3RvbUdyb3VwSWQhPT10LkN1c3RvbUdyb3VwSWR9KX0sdC5wcm90b3R5cGUuaW5pdENvbnNlbnRhYmxlSW1wbGllZENvbnNlbnRHcm91cD1mdW5jdGlvbihlKXt2YXIgdD10aGlzO2UuZm9yRWFjaChmdW5jdGlvbihlKXtlLlN0YXR1cz09PWYuSU5BQ1RJVkVfTEFORElOR19QQUdFJiZ0LmNvbnNlbnRhYmxlSW1wbGllZENvbnNlbnRHcm91cC5wdXNoKGUpfSl9LHQucHJvdG90eXBlLnJlc2V0SW1wbGllZENvbnNlbnRhYmxlR3JvdXBzPWZ1bmN0aW9uKCl7dGhpcy5jb25zZW50YWJsZUltcGxpZWRDb25zZW50R3JvdXA9dGhpcy5jb25zZW50YWJsZUdycHMuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlLlN0YXR1cz09PWYuSU5BQ1RJVkVfTEFORElOR19QQUdFfSl9LHQucHJvdG90eXBlLmNhblVzZUdvb2dsZVZlbmRvcnM9ZnVuY3Rpb24oZSl7cmV0dXJuISFlJiYodGhpcy5jb25kaXRpb25hbExvZ2ljRW5hYmxlZCYmIXRoaXMuYWxsQ29uZGl0aW9uc0ZhaWxlZD90aGlzLkNvbmRpdGlvbjp0aGlzLnJ1bGUpLlVzZUdvb2dsZVZlbmRvcnN9LHQucHJvdG90eXBlLmluaXRWYXJpYWJsZXM9ZnVuY3Rpb24oKXt0aGlzLmNvbnNlbnRhYmxlR3Jwcz1bXSx0aGlzLmNvbnNlbnRhYmxlSW1wbGllZENvbnNlbnRHcm91cD1bXSx0aGlzLmNvbnNlbnRhYmxlSWFiR3Jwcz1bXSx0aGlzLmlhYkdycHM9W10sdGhpcy5pYWJHcnBJZE1hcD17fSx0aGlzLmRvbWFpbkdycHM9e30sdGhpcy5pYWJHcm91cHM9e3B1cnBvc2VzOnt9LGxlZ0ludFB1cnBvc2VzOnt9LHNwZWNpYWxQdXJwb3Nlczp7fSxmZWF0dXJlczp7fSxzcGVjaWFsRmVhdHVyZXM6e319fSx0LnByb3RvdHlwZS5pbml0PWZ1bmN0aW9uKGUpe3RoaXMuZ2V0R1BDU2lnbmFsKCksdGhpcy5pbml0VmFyaWFibGVzKCk7dmFyIHQ9ZS5Eb21haW5EYXRhO3RoaXMuc2V0UHVibGljRG9tYWluRGF0YShKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHQpKSksdGhpcy5kb21haW5EYXRhTWFwcGVyKHQpLHRoaXMuY29tbW9uRGF0YU1hcHBlcihlLkNvbW1vbkRhdGEpLEwuTnRmeUNvbmZpZz1lLk50ZnlDb25maWd8fHt9LHRoaXMuc2V0QmFubmVyTmFtZSgpLHRoaXMuc2V0UGNOYW1lKCksdGhpcy5wb3B1bGF0ZUdQQ1NpZ25hbCgpLHRoaXMucG9wdWxhdGVHUENCcm93c2VyU2lnbmFsKCksTC5Hb29nbGVDb25zZW50LkdDRW5hYmxlJiZ0aGlzLmluaXRHQ00oKX0sdC5wcm90b3R5cGUuZ2V0R1BDU2lnbmFsPWZ1bmN0aW9uKCl7bmF2aWdhdG9yLmdsb2JhbFByaXZhY3lDb250cm9sP3RoaXMuZ3BjRW5hYmxlZD0hMDp0aGlzLmdwY0VuYWJsZWQ9ITF9LHQucHJvdG90eXBlLmlzVmFsaWRDb25zZW50Tm90aWNlR3JvdXA9ZnVuY3Rpb24oZSx0KXt2YXIgbyxuLHIsaSxzLGE7cmV0dXJuISFlLlNob3dJblBvcHVwJiYobz10aGlzLmlzR3JvdXBIYXNDb29raWVzKGUpLHM9aT1yPW49ITEsbnVsbCE9KGE9ZSkmJmEuUGFyZW50fHwoZS5TdWJHcm91cHMubGVuZ3RoJiYobj1lLlN1Ykdyb3Vwcy5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBlLkdyb3VwTmFtZSYmZS5TaG93SW5Qb3B1cCYmZS5GaXJzdFBhcnR5Q29va2llcy5sZW5ndGh9KSxyPWUuU3ViR3JvdXBzLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuIGUuR3JvdXBOYW1lJiZlLlNob3dJblBvcHVwJiYoZS5Ib3N0cy5sZW5ndGh8fGUuR2VuZXJhbFZlbmRvcnNJZHMmJmUuR2VuZXJhbFZlbmRvcnNJZHMubGVuZ3RoKX0pLGk9ZS5TdWJHcm91cHMuc29tZShmdW5jdGlvbihlKXtyZXR1cm4gZS5Hcm91cE5hbWUmJmUuQWx3YXlzU2hvd0NhdGVnb3J5fSksIXR8fGUuRmlyc3RQYXJ0eUNvb2tpZXMubGVuZ3RoJiZlLkhvc3RzLmxlbmd0aHx8KHM9IWUuU3ViR3JvdXBzLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuLTE9PT1fdC5pbmRleE9mKGUuVHlwZSl9KSkpLGE9ZS5TdWJHcm91cHMuc29tZShmdW5jdGlvbihlKXtyZXR1cm4tMTxfdC5pbmRleE9mKGUuVHlwZSl9KSwoLTE8X3QuaW5kZXhPZihlLlR5cGUpfHxhKSYmKGUuU2hvd1ZlbmRvckxpc3Q9ITApLChlLkhvc3RzLmxlbmd0aHx8cnx8bikmJihlLlNob3dIb3N0TGlzdD0hMCkpLHRoaXMuaXNWYWxpZEdyb3VwKG8sZSxuLHIscyxpKSl9LHQucHJvdG90eXBlLmlzVmFsaWRHcm91cD1mdW5jdGlvbihlLHQsbyxuLHIsaSl7dmFyIHM9bC5zaG93VmVuZG9yU2VydmljZSYmdC5WZW5kb3JTZXJ2aWNlcyYmdC5WZW5kb3JTZXJ2aWNlcy5sZW5ndGg7cmV0dXJuISF0LkFsd2F5c1Nob3dDYXRlZ29yeXx8ZXx8LTE8X3QuaW5kZXhPZih0LlR5cGUpfHxvfHxufHxpfHxyfHxzfSx0LnByb3RvdHlwZS5pc0dyb3VwSGFzQ29va2llcz1mdW5jdGlvbihlKXtyZXR1cm4gZS5GaXJzdFBhcnR5Q29va2llcy5sZW5ndGh8fGUuSG9zdHMubGVuZ3RofHxlLkdlbmVyYWxWZW5kb3JzSWRzJiZlLkdlbmVyYWxWZW5kb3JzSWRzLmxlbmd0aHx8ZS5WZW5kb3JTZXJ2aWNlcyYmZS5WZW5kb3JTZXJ2aWNlcy5sZW5ndGh9LHQucHJvdG90eXBlLmV4dHJhY3RHcm91cElkRm9ySWFiR3JvdXA9ZnVuY3Rpb24oZSl7cmV0dXJuLTE8ZS5pbmRleE9mKGsuSWRQYXR0ZXJucy5TcGxfUHVyKT9lPWUucmVwbGFjZShrLklkUGF0dGVybnMuU3BsX1B1ciwiIik6LTE8ZS5pbmRleE9mKGsuSWRQYXR0ZXJucy5QdXIpP2U9ZS5yZXBsYWNlKGsuSWRQYXR0ZXJucy5QdXIsIiIpOi0xPGUuaW5kZXhPZihrLklkUGF0dGVybnMuRnQpP2U9ZS5yZXBsYWNlKGsuSWRQYXR0ZXJucy5GdCwiIik6LTE8ZS5pbmRleE9mKGsuSWRQYXR0ZXJucy5TcGxfRnQpJiYoZT1lLnJlcGxhY2Uoay5JZFBhdHRlcm5zLlNwbF9GdCwiIikpLGV9LHQucHJvdG90eXBlLmlzSWFiR3JwQW5kTm9uQ29uc2VudGFibGU9ZnVuY3Rpb24oZSl7dmFyIHQ9ay5Hcm91cFR5cGVzO3JldHVybiF0aGlzLmlzSWFiMm9ydjJUZW1wbGF0ZSYmLTE8X3QuaW5kZXhPZihlLlR5cGUpfHx0aGlzLmlzSWFiMm9ydjJUZW1wbGF0ZSYmKGUuVHlwZT09PXQuUHVyfHxlLlR5cGU9PT10LlN0YWNrKSYmIWUuSGFzQ29uc2VudE9wdE91dCYmIWUuSGFzTGVnSW50T3B0T3V0fHxlLlR5cGU9PT10LlNwbF9GdCYmIWUuSGFzQ29uc2VudE9wdE91dH0sdC5wcm90b3R5cGUuc2V0VGNmUHVycG9zZVBhcmVudE1hcEZvckdycD1mdW5jdGlvbihlKXt2YXIgdD1rLkdyb3VwVHlwZXM7aWYodGhpcy5pc1RjZlYyVGVtcGxhdGUmJmUuUGFyZW50KXN3aXRjaChlLlR5cGUpe2Nhc2UgdC5QdXI6dGhpcy50Y2ZQYXJlbnRNYXAucHVyLnNldChwYXJzZUludChlLklhYkdycElkKSxlLlBhcmVudCk7YnJlYWs7Y2FzZSB0LlNwbF9QdXI6dGhpcy50Y2ZQYXJlbnRNYXAuc3BsX3B1ci5zZXQocGFyc2VJbnQoZS5JYWJHcnBJZCksZS5QYXJlbnQpO2JyZWFrO2Nhc2UgdC5GdDp0aGlzLnRjZlBhcmVudE1hcC5mdC5zZXQocGFyc2VJbnQoZS5JYWJHcnBJZCksZS5QYXJlbnQpO2JyZWFrO2Nhc2UgdC5TcGxfRnQ6dGhpcy50Y2ZQYXJlbnRNYXAuc3BsX2Z0LnNldChwYXJzZUludChlLklhYkdycElkKSxlLlBhcmVudCl9fSx0LnByb3RvdHlwZS5wb3B1bGF0ZUdyb3Vwcz1mdW5jdGlvbihlLHIpe3ZhciBpPXRoaXMscz17fSxhPVtdLGw9ay5Hcm91cFR5cGVzLHQ9KGUuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1lLkN1c3RvbUdyb3VwSWQ7aWYoaS5zZXRIZWFsdGhTaWduYXR1cmVEYXRhSW50b0dyb3VwKHIsZSksdm9pZCAwIT09ZS5IYXNDb25zZW50T3B0T3V0JiZlLklzSWFiUHVycG9zZXx8KGUuSGFzQ29uc2VudE9wdE91dD0hMCksIWkuaXNJYWJHcnBBbmROb25Db25zZW50YWJsZShlKSl7aWYodCE9PWIuZ2V0UHVycG9zZU9uZUdycElkKCl8fGUuU2hvd0luUG9wdXB8fChpLnB1cnBvc2VPbmVUcmVhdG1lbnQ9ITApLGkuZ3JwQ29udGFpbkxlZ2FsT3B0T3V0PWUuSGFzTGVnSW50T3B0T3V0fHxpLmdycENvbnRhaW5MZWdhbE9wdE91dCxlLlN1Ykdyb3Vwcz1bXSxlLlBhcmVudD9hLnB1c2goZSk6c1t0XT1lLGkuaXNJYWIyb3J2MlRlbXBsYXRlJiYtMTxfdC5pbmRleE9mKGUuVHlwZSkpe3ZhciBvPWkuZXh0cmFjdEdyb3VwSWRGb3JJYWJHcm91cCh0KSxuPShpLmlhYkdycElkTWFwW3RdPW8sZS5JYWJHcnBJZD1vLHtkZXNjcmlwdGlvbjplLkdyb3VwRGVzY3JpcHRpb24sZGVzY3JpcHRpb25MZWdhbDplLkRlc2NyaXB0aW9uTGVnYWwsaWQ6TnVtYmVyKG8pLG5hbWU6ZS5Hcm91cE5hbWV9KTtzd2l0Y2goZS5UeXBlKXtjYXNlIGwuUHVyOmkuaWFiR3JvdXBzLnB1cnBvc2VzW29dPW47YnJlYWs7Y2FzZSBsLlNwbF9QdXI6aS5pYWJHcm91cHMuc3BlY2lhbFB1cnBvc2VzW29dPW47YnJlYWs7Y2FzZSBsLkZ0OmkuaWFiR3JvdXBzLmZlYXR1cmVzW29dPW47YnJlYWs7Y2FzZSBsLlNwbF9GdDppLmlhYkdyb3Vwcy5zcGVjaWFsRmVhdHVyZXNbb109bn19aS5zZXRUY2ZQdXJwb3NlUGFyZW50TWFwRm9yR3JwKGUpfX0pLGEuZm9yRWFjaChmdW5jdGlvbihlKXtzW2UuUGFyZW50XSYmZS5TaG93SW5Qb3B1cCYmKGUuQWx3YXlzU2hvd0NhdGVnb3J5fHxlLkZpcnN0UGFydHlDb29raWVzLmxlbmd0aHx8ZS5Ib3N0cy5sZW5ndGh8fGUuR2VuZXJhbFZlbmRvcnNJZHMmJmUuR2VuZXJhbFZlbmRvcnNJZHMubGVuZ3RofHwtMTxfdC5pbmRleE9mKGUuVHlwZSkpJiZzW2UuUGFyZW50XS5TdWJHcm91cHMucHVzaChlKX0pLFtdKTtyZXR1cm4gT2JqZWN0LmtleXMocykuZm9yRWFjaChmdW5jdGlvbihlKXtpLmlzVmFsaWRDb25zZW50Tm90aWNlR3JvdXAoc1tlXSxyLklzSWFiRW5hYmxlZCkmJihzW2VdLlN1Ykdyb3Vwcy5zb3J0KGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUuT3JkZXItdC5PcmRlcn0pLHQucHVzaChzW2VdKSl9KSx0aGlzLmluaXRHcnBWYXIodCksdC5zb3J0KGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUuT3JkZXItdC5PcmRlcn0pfSx0LnByb3RvdHlwZS5zZXRIZWFsdGhTaWduYXR1cmVEYXRhSW50b0dyb3VwPWZ1bmN0aW9uKGUsdCl7dGhpcy5yZXF1aXJlU2lnbmF0dXJlRW5hYmxlZCYmZS5SZXF1aXJlU2lnbmF0dXJlQ0lEPT09dC5DdXN0b21Hcm91cElkJiYodC5uZWVkc0hlYWx0aFNpZ25hdHVyZT0hMCwiMSI9PT1ULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLkhFQUxUSF9TSUdOQVRVUkVfQVVUSE9SSVpBVElPTikpJiYodC5oZWFsdGhTaWduYXR1cmVJZD1ULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLkNPTlNFTlRfSUQpKX0sdC5wcm90b3R5cGUuaXNHcnBDb25zZW50YWJsZT1mdW5jdGlvbihlKXt2YXIgdD1rLkdyb3VwVHlwZXM7cmV0dXJuIGUuVHlwZT09PXQuQ29va2llfHxlLlR5cGU9PT10LlB1cnx8ZS5UeXBlPT09dC5TcGxfRnR9LHQucHJvdG90eXBlLmluaXRHcnBWYXI9ZnVuY3Rpb24oZSl7dmFyIG89dGhpcyxuPSEwLHI9ITA7ZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe1UoW2VdLGUuU3ViR3JvdXBzKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0O28uaXNHcnBDb25zZW50YWJsZShlKSYmKG8uZG9tYWluR3Jwc1tlLlB1cnBvc2VJZC50b0xvd2VyQ2FzZSgpXT1lLkN1c3RvbUdyb3VwSWQpLC0xPEV0LmluZGV4T2YoZS5UeXBlKSYmby5jb25zZW50YWJsZUdycHMucHVzaChlKSwtMTxPdC5pbmRleE9mKGUuVHlwZSkmJm8uY29uc2VudGFibGVJYWJHcnBzLnB1c2goZSksLTE9PT1FdC5pbmRleE9mKGUuVHlwZSkmJm8uaWFiR3Jwcy5wdXNoKGUpLG8uZ3BjRW5hYmxlZCYmZS5Jc0dwY0VuYWJsZWQmJihlLlN0YXR1cz1mLklOQUNUSVZFKSwodD1vLkROVEVuYWJsZWQmJmUuSXNEbnRFbmFibGVkP2YuRE5UOmUuU3RhdHVzLnRvTG93ZXJDYXNlKCkpIT09Zi5BQ1RJVkUmJnQhPT1mLklOQUNUSVZFX0xBTkRJTkdfUEFHRSYmdCE9PWYuRE5UfHwobj0hMSksdCE9PWYuSU5BQ1RJVkVfTEFORElOR19QQUdFJiZ0IT09Zi5BTFdBWVNfQUNUSVZFJiYocj0hMSksby5ncGNGb3JBR3JwRW5hYmxlZHx8KG8uZ3BjRm9yQUdycEVuYWJsZWQ9ZS5Jc0dwY0VuYWJsZWQpfSl9KSx0aGlzLmlzT3B0SW5Nb2RlPW4sdGhpcy5pc1NvZnRPcHRJbk1vZGU9cn0sdC5wcm90b3R5cGUuZG9tYWluRGF0YU1hcHBlcj1mdW5jdGlvbihlKXt0aGlzLnJlcXVpcmVTaWduYXR1cmVFbmFibGVkPShudWxsPT0odD1TLmZwKT92b2lkIDA6dC5Db29raWVWMlN1Ym1pdFB1cnBvc2UpJiZlLklzUmVxdWlyZVNpZ25hdHVyZUVuYWJsZWQmJmUuUENUZW1wbGF0ZVVwZ3JhZGU7dmFyIHQ9e0FyaWFDbG9zZVByZWZlcmVuY2VzOmUuQXJpYUNsb3NlUHJlZmVyZW5jZXMsQXJpYU9wZW5QcmVmZXJlbmNlczplLkFyaWFPcGVuUHJlZmVyZW5jZXMsQXJpYVByaXZhY3k6ZS5BcmlhUHJpdmFjeSxDZW50ZXJSb3VuZGVkOmUuQ2VudGVyUm91bmRlZCxGbGF0OmUuRmxhdCxGbG9hdGluZ0ZsYXQ6ZS5GbG9hdGluZ0ZsYXQsRmxvYXRpbmdSb3VuZGVkOmUuRmxvYXRpbmdSb3VuZGVkLEZsb2F0aW5nUm91bmRlZENvcm5lcjplLkZsb2F0aW5nUm91bmRlZENvcm5lcixGbG9hdGluZ1JvdW5kZWRJY29uOmUuRmxvYXRpbmdSb3VuZGVkSWNvbixWZW5kb3JMZXZlbE9wdE91dDplLklzSWFiRW5hYmxlZCxBYm91dENvb2tpZXNUZXh0OmUuQWJvdXRDb29raWVzVGV4dCxBYm91dExpbms6ZS5BYm91dExpbmssQWJvdXRUZXh0OmUuQWJvdXRUZXh0LEFjdGl2ZVRleHQ6ZS5BY3RpdmVUZXh0LEFkZExpbmtzVG9Db29raWVwZWRpYTplLkFkZExpbmtzVG9Db29raWVwZWRpYSxBbGVydEFsbG93Q29va2llc1RleHQ6ZS5BbGVydEFsbG93Q29va2llc1RleHQsQWxlcnRDbG9zZVRleHQ6ZS5BbGVydENsb3NlVGV4dCxBbGVydExheW91dDplLkFsZXJ0TGF5b3V0LEFsZXJ0TW9yZUluZm9UZXh0OmUuQWxlcnRNb3JlSW5mb1RleHQsQWxlcnRNb3JlSW5mb1RleHREaWFsb2c6ZS5BbGVydE1vcmVJbmZvVGV4dERpYWxvZyxBbGVydE5vdGljZVRleHQ6ZS5BbGVydE5vdGljZVRleHQsQWxsb3dBbGxUZXh0OmUuUHJlZmVyZW5jZUNlbnRlckNvbmZpcm1UZXh0LEFsd2F5c0FjdGl2ZVRleHQ6ZS5BbHdheXNBY3RpdmVUZXh0LEFsd2F5c0luYWN0aXZlVGV4dDplLkFsd2F5c0luYWN0aXZlVGV4dCxCYW5uZXJBZGRpdGlvbmFsRGVzY1BsYWNlbWVudDplLkJhbm5lckFkZGl0aW9uYWxEZXNjUGxhY2VtZW50LEJhbm5lckFkZGl0aW9uYWxEZXNjcmlwdGlvbjplLkJhbm5lckFkZGl0aW9uYWxEZXNjcmlwdGlvbixCYW5uZXJDbG9zZUJ1dHRvblRleHQ6ZS5CYW5uZXJDbG9zZUJ1dHRvblRleHQsQmFubmVyRmVhdHVyZURlc2NyaXB0aW9uOmUuQmFubmVyRmVhdHVyZURlc2NyaXB0aW9uLEJhbm5lckZlYXR1cmVUaXRsZTplLkJhbm5lckZlYXR1cmVUaXRsZSxCYW5uZXJJQUJQYXJ0bmVyc0xpbms6ZS5CYW5uZXJJQUJQYXJ0bmVyc0xpbmssQmFubmVySW5mb3JtYXRpb25EZXNjcmlwdGlvbjplLkJhbm5lckluZm9ybWF0aW9uRGVzY3JpcHRpb24sQmFubmVySW5mb3JtYXRpb25UaXRsZTplLkJhbm5lckluZm9ybWF0aW9uVGl0bGUsQmFubmVyTm9uSUFCVmVuZG9yTGlzdFRleHQ6ZS5CYW5uZXJOb25JQUJWZW5kb3JMaXN0VGV4dCxCYW5uZXJQb3NpdGlvbjplLkJhbm5lclBvc2l0aW9uLEJhbm5lclB1cnBvc2VEZXNjcmlwdGlvbjplLkJhbm5lclB1cnBvc2VEZXNjcmlwdGlvbixCYW5uZXJQdXJwb3NlVGl0bGU6ZS5CYW5uZXJQdXJwb3NlVGl0bGUsQmFubmVyUmVqZWN0QWxsQnV0dG9uVGV4dDplLkJhbm5lclJlamVjdEFsbEJ1dHRvblRleHQsQmFubmVyUmVsYXRpdmVGb250U2l6ZXNUb2dnbGU6ZS5CYW5uZXJSZWxhdGl2ZUZvbnRTaXplc1RvZ2dsZSxCYW5uZXJTZXR0aW5nc0J1dHRvbkRpc3BsYXlMaW5rOmUuQmFubmVyU2V0dGluZ3NCdXR0b25EaXNwbGF5TGluayxCYW5uZXJTaG93UmVqZWN0QWxsQnV0dG9uOmUuQmFubmVyU2hvd1JlamVjdEFsbEJ1dHRvbixCU2hvd09wdE91dFNpZ25hbDplLkJTaG93T3B0T3V0U2lnbmFsLEJPcHRPdXRTaWduYWxUZXh0OmUuQk9wdE91dFNpZ25hbFRleHQsQk9wdE91dFNpZ25hbFRleHRBZnRlckNvbnNlbnQ6ZS5CT3B0T3V0U2lnbmFsVGV4dEFmdGVyQ29uc2VudCxCUmVnaW9uQXJpYUxhYmVsOmUuQlJlZ2lvbkFyaWFMYWJlbCxCYW5uZXJUaXRsZTplLkJhbm5lclRpdGxlLEJDbG9zZUJ1dHRvblR5cGU6ZS5CQ2xvc2VCdXR0b25UeXBlLEJDb250aW51ZVRleHQ6ZS5CQ29udGludWVUZXh0LEJDb29raWVQb2xpY3lMaW5rU2NyZWVuUmVhZGVyOmUuQkNvb2tpZVBvbGljeUxpbmtTY3JlZW5SZWFkZXIsQm5yTG9nb0FyaWE6ZS5CbnJMb2dvQXJpYSxCSW1wcmludExpbmtTY3JlZW5SZWFkZXI6ZS5CSW1wcmludExpbmtTY3JlZW5SZWFkZXIsQkluaXRpYWxGb2N1czplLkJJbml0aWFsRm9jdXMsQkluaXRpYWxGb2N1c0xpbmtBbmRCdXR0b246ZS5CSW5pdGlhbEZvY3VzTGlua0FuZEJ1dHRvbixCUmVqZWN0Q29uc2VudFR5cGU6ZS5CUmVqZWN0Q29uc2VudFR5cGUsQlNhdmVCdG5UeHQ6ZS5CU2F2ZUJ0blRleHQsQlNob3dJbXByaW50TGluazplLkJTaG93SW1wcmludExpbmssQlNob3dQb2xpY3lMaW5rOmUuQlNob3dQb2xpY3lMaW5rLEJTaG93U2F2ZUJ0bjplLkJTaG93U2F2ZUJ0bixjY3RJZDplLmNjdElkLENhbkdlbmVyYXRlTm90R2l2ZW5SZWNlaXB0czplLkNhbkdlbmVyYXRlTm90R2l2ZW5SZWNlaXB0cyxDaG9pY2VzQmFubmVyOmUuQ2hvaWNlc0Jhbm5lcixDbG9zZVNob3VsZEFjY2VwdEFsbENvb2tpZXM6ZS5DbG9zZVNob3VsZEFjY2VwdEFsbENvb2tpZXMsQ2xvc2VUZXh0OmUuQ2xvc2VUZXh0LENvbmZpcm1UZXh0OmUuQ29uZmlybVRleHQsQ29uc2VudE1vZGVsOntOYW1lOmUuQ29uc2VudE1vZGVsfSxDb29raWVMaXN0RGVzY3JpcHRpb246ZS5Db29raWVMaXN0RGVzY3JpcHRpb24sQ29va2llTGlzdFRpdGxlOmUuQ29va2llTGlzdFRpdGxlLENvb2tpZVNldHRpbmdCdXR0b25UZXh0OmUuQ29va2llU2V0dGluZ0J1dHRvblRleHQsQ29va2llc1VzZWRUZXh0OmUuQ29va2llc1VzZWRUZXh0LEN1c3RvbUpzOmUuQ3VzdG9tSnMsZmlyc3RQYXJ0eVR4dDplLkNvb2tpZUZpcnN0UGFydHlUZXh0LEZvb3RlckRlc2NyaXB0aW9uVGV4dDplLkZvb3RlckRlc2NyaXB0aW9uVGV4dCxGb3JjZUNvbnNlbnQ6ZS5Gb3JjZUNvbnNlbnQsR2VuZXJhbFZlbmRvcnM6ZS5HZW5lcmFsVmVuZG9ycyxHZW5lcmFsVmVuZG9yc0VuYWJsZWQ6ZS5QQ2VudGVyVXNlR2VuZXJhbFZlbmRvcnNUb2dnbGUsR2VuVmVuT3B0T3V0OmUuUENlbnRlckFsbG93VmVuZG9yT3B0b3V0LEdsb2JhbFJlc3RyaWN0aW9uRW5hYmxlZDplLkdsb2JhbFJlc3RyaWN0aW9uRW5hYmxlZCxHbG9iYWxSZXN0cmljdGlvbnM6ZS5HbG9iYWxSZXN0cmljdGlvbnMsR29vZ2xlQ29uc2VudDp7R0NBZFN0b3JhZ2U6ZS5HQ0FkU3RvcmFnZSxHQ0FuYWx5dGljc1N0b3JhZ2U6ZS5HQ0FuYWx5dGljc1N0b3JhZ2UsR0NFbmFibGU6ZS5HQ0VuYWJsZSxHQ0Z1bmN0aW9uYWxpdHlTdG9yYWdlOmUuR0NGdW5jdGlvbmFsaXR5U3RvcmFnZSxHQ1BlcnNvbmFsaXphdGlvblN0b3JhZ2U6ZS5HQ1BlcnNvbmFsaXphdGlvblN0b3JhZ2UsR0NSZWRhY3RFbmFibGU6ZS5HQ1JlZGFjdEVuYWJsZSxHQ1NlY3VyaXR5U3RvcmFnZTplLkdDU2VjdXJpdHlTdG9yYWdlLEdDV2FpdFRpbWU6ZS5HQ1dhaXRUaW1lLEdDQWRVc2VyRGF0YTplLkdDQWRVc2VyRGF0YSxHQ0FkUGVyc29uYWxpemF0aW9uOmUuR0NBZFBlcnNvbmFsaXphdGlvbn0sTUNNRGF0YTplLk1DTURhdGEsQUNNRGF0YTplLkFDTURhdGEsR3JvdXBHZW5WZW5MaXN0TGFiZWw6ZS5QQ2VudGVyR2VuZXJhbFZlbmRvclRoaXJkUGFydHlDb29raWVzVGV4dCxHcm91cHM6dGhpcy5wb3B1bGF0ZUdyb3VwcyhlLkdyb3VwcyxlKSxIaWRlVG9vbGJhckNvb2tpZUxpc3Q6ZS5IaWRlVG9vbGJhckNvb2tpZUxpc3QsSWFiVHlwZTplLklhYlR5cGUsSW5hY3RpdmVUZXh0OmUuSW5hY3RpdmVUZXh0LElzQ29uc2VudExvZ2dpbmdFbmFibGVkOmUuSXNDb25zZW50TG9nZ2luZ0VuYWJsZWQsSXNJYWJFbmFibGVkOmUuSXNJYWJFbmFibGVkLElzSWFiVGhpcmRQYXJ0eUNvb2tpZUVuYWJsZWQ6ZS5Jc0lhYlRoaXJkUGFydHlDb29raWVFbmFibGVkLElzTGlmZXNwYW5FbmFibGVkOmUuSXNMaWZlc3BhbkVuYWJsZWQsTGFuZ3VhZ2U6ZS5MYW5ndWFnZSxMYXN0UmVjb25zZW50RGF0ZTplLkxhc3RSZWNvbnNlbnREYXRlLExmU3BhblNlY3M6ZS5QQ0xpZmVTcGFuU2VjcyxMZlNwbldrOmUuUENMaWZlU3BhbldrLExmU3BuV2tzOmUuUENMaWZlU3BhbldrcyxMZlNwbllyOmUuUENMaWZlU3BhbllyLExmU3BuWXJzOmUuUENMaWZlU3BhbllycyxMaWZlc3BhbkR1cmF0aW9uVGV4dDplLkxpZmVzcGFuRHVyYXRpb25UZXh0LE1haW5JbmZvVGV4dDplLk1haW5JbmZvVGV4dCxNYWluVGV4dDplLk1haW5UZXh0LE1hbmFnZVByZWZlcmVuY2VUZXh0OmUuUHJlZmVyZW5jZUNlbnRlck1hbmFnZVByZWZlcmVuY2VzVGV4dCxOZXdWZW5kb3JzSW5hY3RpdmVFbmFibGVkOmUuTmV3VmVuZG9yc0luYWN0aXZlRW5hYmxlZCxOZXdXaW5UeHQ6ZS5QcmVmZXJlbmNlQ2VudGVyTW9yZUluZm9TY3JlZW5SZWFkZXIsTmV4dFBhZ2VBY2NlcHRBbGxDb29raWVzOmUuTmV4dFBhZ2VBY2NlcHRBbGxDb29raWVzLE5leHRQYWdlQ2xvc2VCYW5uZXI6ZS5OZXh0UGFnZUNsb3NlQmFubmVyLE5vQmFubmVyOmUuTm9CYW5uZXIsT25DbGlja0FjY2VwdEFsbENvb2tpZXM6ZS5PbkNsaWNrQWNjZXB0QWxsQ29va2llcyxPbkNsaWNrQ2xvc2VCYW5uZXI6ZS5PbkNsaWNrQ2xvc2VCYW5uZXIsT3ZlcnJpZGRlblZlbmRvcnM6bnVsbCE9KHQ9ZS5PdmVycmlkZGVuVmVuZG9ycyk/dDp7fSxPdmVycmlkZW5Hb29nbGVWZW5kb3JzOm51bGwhPSh0PWUuT3ZlcnJpZGVuR29vZ2xlVmVuZG9ycyk/dDp7fSxQdWJsaXNoZXI6ZS5wdWJsaXNoZXIsUHVibGlzaGVyQ0M6ZS5QdWJsaXNoZXJDQyxSZWNvbnNlbnRGcmVxdWVuY3lEYXlzOmUuUmVjb25zZW50RnJlcXVlbmN5RGF5cyxTY3JvbGxBY2NlcHRBbGxDb29raWVzOmUuU2Nyb2xsQWNjZXB0QWxsQ29va2llcyxTY3JvbGxDbG9zZUJhbm5lcjplLlNjcm9sbENsb3NlQmFubmVyLFNob3dBbGVydE5vdGljZTplLlNob3dBbGVydE5vdGljZSxzaG93QmFubmVyQ2xvc2VCdXR0b246ZS5zaG93QmFubmVyQ2xvc2VCdXR0b24sU2hvd1ByZWZlcmVuY2VDZW50ZXJDbG9zZUJ1dHRvbjplLlNob3dQcmVmZXJlbmNlQ2VudGVyQ2xvc2VCdXR0b24sVGhpcmRQYXJ0eUNvb2tpZUxpc3RUZXh0OmUuVGhpcmRQYXJ0eUNvb2tpZUxpc3RUZXh0LHRoaXJkUGFydHlUeHQ6ZS5Db29raWVUaGlyZFBhcnR5VGV4dCxVc2VHb29nbGVWZW5kb3JzOnRoaXMuY2FuVXNlR29vZ2xlVmVuZG9ycyhlLlBDVGVtcGxhdGVVcGdyYWRlKSxWZW5kb3JDb25zZW50TW9kZWw6ZS5WZW5kb3JDb25zZW50TW9kZWwsVmVuZG9yTGlzdFRleHQ6ZS5WZW5kb3JMaXN0VGV4dCxWZW5kb3JzOmUuVmVuZG9ycyxQQ0NhdGVnb3J5U3R5bGU6ZS5QQ0NhdGVnb3J5U3R5bGV8fHZlLkNoZWNrYm94LFBDU2hvd0Fsd2F5c0FjdGl2ZVRvZ2dsZTplLlBDU2hvd0Fsd2F5c0FjdGl2ZVRvZ2dsZSxQQ2VudGVySW1wcmludExpbmtTY3JlZW5SZWFkZXI6ZS5QQ2VudGVySW1wcmludExpbmtTY3JlZW5SZWFkZXIsUENlbnRlckltcHJpbnRMaW5rVGV4dDplLlBDZW50ZXJJbXByaW50TGlua1RleHQsUENlbnRlckltcHJpbnRMaW5rVXJsOmUuUENlbnRlckltcHJpbnRMaW5rVXJsLFBDU2hvd09wdE91dFNpZ25hbDplLlBDU2hvd09wdE91dFNpZ25hbCxQQ1Nob3dEb3VibGVPcHRJblNpZ25hbDplLlBDU2hvd0RvdWJsZU9wdEluU2lnbmFsLFBDRG91YmxlT3B0SW5TaWduYWxUZXh0OmUuUENEb3VibGVPcHRJblNpZ25hbFRleHQsUENEb3VibGVPcHRJblNpZ25hbERlc2NyaXB0aW9uOmUuUENEb3VibGVPcHRJblNpZ25hbERlc2NyaXB0aW9uLFBDRG91YmxlT3B0SW5TaWduYWxDb25maXJtVGV4dDplLlBDRG91YmxlT3B0SW5TaWduYWxDb25maXJtVGV4dCxQQ0RvdWJsZU9wdEluU2lnbmFsQ2FuY2VsVGV4dDplLlBDRG91YmxlT3B0SW5TaWduYWxDYW5jZWxUZXh0LFBDT3B0T3V0U2lnbmFsVGV4dDplLlBDT3B0T3V0U2lnbmFsVGV4dCxQQ09wdE91dFNpZ25hbFRleHRBZnRlckNvbnNlbnQ6ZS5QQ09wdE91dFNpZ25hbFRleHRBZnRlckNvbnNlbnQsUENSZWdpb25BcmlhTGFiZWw6ZS5QQ1JlZ2lvbkFyaWFMYWJlbCxQQ0hvc3ROb3RGb3VuZDplLlBDSG9zdE5vdEZvdW5kLFBDVmVuZG9yTm90Rm91bmQ6ZS5QQ1ZlbmRvck5vdEZvdW5kLFBDVGVjaE5vdEZvdW5kOmUuUENUZWNoTm90Rm91bmQsVXNlTm9uU3RhbmRhcmRTdGFja3M6ZS5Vc2VOb25TdGFuZGFyZFN0YWNrcyxSZXF1aXJlU2lnbmF0dXJlQ0lEOmUuUmVxdWlyZVNpZ25hdHVyZUNJRCxJc1JlcXVpcmVTaWduYXR1cmVFbmFibGVkOmUuSXNSZXF1aXJlU2lnbmF0dXJlRW5hYmxlZCxQQ1JlcXVpcmVTaWduYXR1cmVIZWxwVGV4dDplLlBDUmVxdWlyZVNpZ25hdHVyZUhlbHBUZXh0LFBDUmVxdWlyZVNpZ25hdHVyZUZpZWxkTGFiZWw6ZS5QQ1JlcXVpcmVTaWduYXR1cmVGaWVsZExhYmVsLFBDUmVxdWlyZVNpZ25hdHVyZUhlYWRlclRleHQ6ZS5QQ1JlcXVpcmVTaWduYXR1cmVIZWFkZXJUZXh0LFBDUmVxdWlyZVNpZ25hdHVyZUhlYWRlckRlc2M6ZS5QQ1JlcXVpcmVTaWduYXR1cmVIZWFkZXJEZXNjLFBDUmVxdWlyZVNpZ25hdHVyZVJlamVjdEJ0blRleHQ6ZS5QQ1JlcXVpcmVTaWduYXR1cmVSZWplY3RCdG5UZXh0LFBDUmVxdWlyZVNpZ25hdHVyZUNvbmZpcm1CdG5UZXh0OmUuUENSZXF1aXJlU2lnbmF0dXJlQ29uZmlybUJ0blRleHQsUENDb29raWVMaXN0RmlsdGVyc1RleHQ6ZS5QQ0Nvb2tpZUxpc3RGaWx0ZXJzVGV4dCxHUENPcHRPdXROb3RlVGV4dDplLkdQQ09wdE91dE5vdGVUZXh0LEROVE9wdE91dE5vdGVUZXh0OmUuRE5UT3B0T3V0Tm90ZVRleHR9O3RoaXMuc2V0QnV0dG9uc09yZGVyKHQsZSksdGhpcy5zZXRQQ0RvbWFpbkRhdGEodCxlKSx0aGlzLnNldEFkZGl0aW9uYWxUZWNobm9sb2dpZXModCxlKSx0aGlzLnNldFZlbmRvclNlcnZpY2VDb25maWdEYXRhKHQsZSksdGhpcy5zZXREb21haW5Db21tb25EYXRhRGVmYXVsdHModCxlKSx0aGlzLnNldERvbWFpblBDRGF0YURlZmF1bHRzKHQsZSksdGhpcy5zZXRHcHBEYXRhKHQsZSksZS5QQ1RlbXBsYXRlVXBncmFkZSYmKGUuQ2VudGVyfHxlLlBhbmVsKSYmKHQuUENBY2NvcmRpb25TdHlsZT1lLlBDQWNjb3JkaW9uU3R5bGUpLHQuUENlbnRlckVuYWJsZUFjY29yZGlvbj1lLlBDQWNjb3JkaW9uU3R5bGUhPT1jZS5Ob0FjY29yZGlvbix0aGlzLmxlZ0ludFNldHRpbmdzPWUuTGVnSW50U2V0dGluZ3N8fHt9LHZvaWQgMD09PXRoaXMubGVnSW50U2V0dGluZ3MuUEFsbG93TEkmJih0aGlzLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJPSEwKSxTLm1vZHVsZUluaXRpYWxpemVyLk1vYmlsZVNES3x8KHRoaXMucGFnZVB1c2hlZERvd249ZS5CYW5uZXJQdXNoZXNEb3duUGFnZSksTD1SKFIoe30sTCksdCl9LHQucHJvdG90eXBlLnNldEJ1dHRvbnNPcmRlcj1mdW5jdGlvbihlLHQpe1MuZnAuV2ViQnV0dG9uQ3VzdG9taXNhdGlvbnMmJihlLlBjQk89ezA6dC5QQ0JQT0ZpcnN0UG9zaXRpb24sMTp0LlBDQlBPU2Vjb25kUG9zaXRpb24sMjp0LlBDQlBPVGhpcmRQb3NpdGlvbn0sZS5CYW5uZXJCTz0oKGU9e30pW3QuQmFubmVyQlBPRmlyc3RQb3NpdGlvbl09MCxlW3QuQmFubmVyQlBPU2Vjb25kUG9zaXRpb25dPTEsZVt0LkJhbm5lckJQT1RoaXJkUG9zaXRpb25dPTIsZVt0LkJhbm5lckJQT0ZvdXJ0aFBvc2l0aW9uXT0zLGUpKX0sdC5wcm90b3R5cGUuc2V0R3BwRGF0YT1mdW5jdGlvbihlLHQpe2UuR1BQUHVycG9zZXM9Uih7fSx0LkdQUFB1cnBvc2VzKSxlLklzR1BQRGF0YVByb2Nlc3NpbmdBcHBsaWNhYmxlPXQuSXNHUFBEYXRhUHJvY2Vzc2luZ0FwcGxpY2FibGUsZS5Jc0dQUEVuYWJsZWQ9dC5Jc0dQUEVuYWJsZWQsZS5Jc0dQUEtub3duQ2hpbGRBcHBsaWNhYmxlPXQuSXNHUFBLbm93bkNoaWxkQXBwbGljYWJsZSxlLklzTVNQQUVuYWJsZWQ9dC5Jc01TUEFFbmFibGVkLGUuTVNQQU9wdGlvbk1vZGU9dC5NU1BBT3B0aW9uTW9kZSxlLlVzZUdQUFVTTmF0aW9uYWw9dC5Vc2VHUFBVU05hdGlvbmFsfSx0LnByb3RvdHlwZS5zZXRQQ0RvbWFpbkRhdGE9ZnVuY3Rpb24oZSx0KXtlLlBDQWNjb3JkaW9uU3R5bGU9Y2UuQ2FyZXQsZS5QQ0FjdGl2ZVRleHQ9dC5QQ0FjdGl2ZVRleHQsZS5QQ0Nsb3NlQnV0dG9uVHlwZT10LlBDQ2xvc2VCdXR0b25UeXBlLGUuUENDb250aW51ZVRleHQ9dC5QQ0NvbnRpbnVlVGV4dCxlLlBDQ29va2llUG9saWN5TGlua1NjcmVlblJlYWRlcj10LlBDQ29va2llUG9saWN5TGlua1NjcmVlblJlYWRlcixlLlBDQ29va2llUG9saWN5VGV4dD10LlBDQ29va2llUG9saWN5VGV4dCxlLlBDZW50ZXJBbGxvd0FsbENvbnNlbnRUZXh0PXQuUENlbnRlckFsbG93QWxsQ29uc2VudFRleHQsZS5QQ2VudGVyQXBwbHlGaWx0ZXJzVGV4dD10LlBDZW50ZXJBcHBseUZpbHRlcnNUZXh0LGUuUENlbnRlckFwcGx5RmlsdGVyc0FyaWFMYWJlbD10LlBDZW50ZXJBcHBseUZpbHRlcnNBcmlhTGFiZWwsZS5BbWF6b25Db25zZW50U3JjVXJsPXQuQW1hem9uQ29uc2VudFNyY1VybCxlLlBDZW50ZXJUb2dnbGVBY3RpdmVDb2xvcj10LlBDZW50ZXJUb2dnbGVBY3RpdmVDb2xvcixlLlBDZW50ZXJUb2dnbGVJbkFjdGl2ZUNvbG9yPXQuUENlbnRlclRvZ2dsZUluQWN0aXZlQ29sb3IsZS5QQ2VudGVyQmFja1RleHQ9dC5QQ2VudGVyQmFja1RleHQsZS5QQ2VudGVyQ2FuY2VsRmlsdGVyc1RleHQ9dC5QQ2VudGVyQ2FuY2VsRmlsdGVyc1RleHQsZS5QQ2VudGVyQ2FuY2VsRmlsdGVyQXJpYUxhYmVsPXQuUENlbnRlckNhbmNlbEZpbHRlckFyaWFMYWJlbCxlLlBDZW50ZXJDbGVhckZpbHRlcnNBcmlhTGFiZWw9dC5QQ2VudGVyQ2xlYXJGaWx0ZXJzQXJpYUxhYmVsLGUuUENlbnRlckNsZWFyRmlsdGVyc1RleHQ9dC5QQ2VudGVyQ2xlYXJGaWx0ZXJzVGV4dCxlLlBDZW50ZXJDb29raWVzTGlzdFRleHQ9dC5QQ2VudGVyQ29va2llc0xpc3RUZXh0LGUuUENlbnRlckVuYWJsZUFjY29yZGlvbj10LlBDZW50ZXJFbmFibGVBY2NvcmRpb24sZS5QQ2VudGVyRmlsdGVyVGV4dD10LlBDZW50ZXJGaWx0ZXJUZXh0LGUuUENlbnRlckdlbmVyYWxWZW5kb3JzVGV4dD10LlBDZW50ZXJHZW5lcmFsVmVuZG9yc1RleHQsZS5QQ2VudGVyUmVqZWN0QWxsQnV0dG9uVGV4dD10LlBDZW50ZXJSZWplY3RBbGxCdXR0b25UZXh0LGUuUENlbnRlclNlbGVjdEFsbFZlbmRvcnNUZXh0PXQuUENlbnRlclNlbGVjdEFsbFZlbmRvcnNUZXh0LGUuUENlbnRlclNob3dSZWplY3RBbGxCdXR0b249dC5QQ2VudGVyU2hvd1JlamVjdEFsbEJ1dHRvbixlLlBDZW50ZXJVc2VySWREZXNjcmlwdGlvblRleHQ9dC5QQ2VudGVyVXNlcklkRGVzY3JpcHRpb25UZXh0LGUuUENlbnRlclVzZXJJZE5vdFlldENvbnNlbnRlZFRleHQ9dC5QQ2VudGVyVXNlcklkTm90WWV0Q29uc2VudGVkVGV4dCxlLlBDZW50ZXJVc2VySWRUaW1lc3RhbXBUaXRsZVRleHQ9dC5QQ2VudGVyVXNlcklkVGltZXN0YW1wVGl0bGVUZXh0LGUuUENlbnRlclVzZXJJZFRpdGxlVGV4dD10LlBDZW50ZXJVc2VySWRUaXRsZVRleHQsZS5QQ2VudGVyVmVuZG9yTGlzdERlc2NUZXh0PXQuUENlbnRlclZlbmRvckxpc3REZXNjVGV4dCxlLlBDZW50ZXJWZW5kb3JMaXN0RGlzY2xvc3VyZT10LlBDZW50ZXJWZW5kb3JMaXN0RGlzY2xvc3VyZSxlLlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW49dC5QQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuLGUuUENlbnRlclZlbmRvckxpc3RMaWZlc3BhbkRheT10LlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW5EYXksZS5QQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuRGF5cz10LlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW5EYXlzLGUuUENlbnRlclZlbmRvckxpc3RMaWZlc3Bhbk1vbnRoPXQuUENlbnRlclZlbmRvckxpc3RMaWZlc3Bhbk1vbnRoLGUuUENlbnRlclZlbmRvckxpc3RMaWZlc3Bhbk1vbnRocz10LlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW5Nb250aHMsZS5QQ2VudGVyVmVuZG9yTGlzdE5vbkNvb2tpZVVzYWdlPXQuUENlbnRlclZlbmRvckxpc3ROb25Db29raWVVc2FnZSxlLlBDZW50ZXJWZW5kb3JMaXN0U3RvcmFnZURvbWFpbj10LlBDZW50ZXJWZW5kb3JMaXN0U3RvcmFnZURvbWFpbixlLlBDVkxTRG9tYWluc1VzZWQ9dC5QQ1ZMU0RvbWFpbnNVc2VkLGUuUENWTFNVc2U9dC5QQ1ZMU1VzZSxlLlBDZW50ZXJWZW5kb3JMaXN0U3RvcmFnZUlkZW50aWZpZXI9dC5QQ2VudGVyVmVuZG9yTGlzdFN0b3JhZ2VJZGVudGlmaWVyLGUuUENlbnRlclZlbmRvckxpc3RTdG9yYWdlUHVycG9zZXM9dC5QQ2VudGVyVmVuZG9yTGlzdFN0b3JhZ2VQdXJwb3NlcyxlLlBDZW50ZXJWZW5kb3JMaXN0U3RvcmFnZVR5cGU9dC5QQ2VudGVyVmVuZG9yTGlzdFN0b3JhZ2VUeXBlLGUuUENlbnRlclZlbmRvcnNMaXN0VGV4dD10LlBDZW50ZXJWZW5kb3JzTGlzdFRleHQsZS5QQ2VudGVyVmlld1ByaXZhY3lQb2xpY3lUZXh0PXQuUENlbnRlclZpZXdQcml2YWN5UG9saWN5VGV4dCxlLlBDR29vZ2xlVmVuZG9yc1RleHQ9dC5QQ0dvb2dsZVZlbmRvcnNUZXh0LGUuUENHcnBEZXNjTGlua1Bvc2l0aW9uPXQuUENHcnBEZXNjTGlua1Bvc2l0aW9uLGUuUENHcnBEZXNjVHlwZT10LlBDR3JwRGVzY1R5cGUsZS5QQ0dWZW5Qb2xpY3lUeHQ9dC5QQ0dlbmVyYWxWZW5kb3JzUG9saWN5VGV4dCxlLlBDSUFCVmVuZG9yc1RleHQ9dC5QQ0lBQlZlbmRvcnNUZXh0LGUuUENJQUJWZW5kb3JMZWdJbnRDbGFpbVRleHQ9dC5QQ0lBQlZlbmRvckxlZ0ludENsYWltVGV4dCxlLlBDVkxpc3REYXRhRGVjbGFyYXRpb25UZXh0PXQuUENWTGlzdERhdGFEZWNsYXJhdGlvblRleHQsZS5QQ1ZMaXN0RGF0YVJldGVudGlvblRleHQ9dC5QQ1ZMaXN0RGF0YVJldGVudGlvblRleHQsZS5QQ1ZMaXN0U3RkUmV0ZW50aW9uVGV4dD10LlBDVkxpc3RTdGRSZXRlbnRpb25UZXh0LGUuSUFCRGF0YUNhdGVnb3JpZXM9dC5JQUJEYXRhQ2F0ZWdvcmllcyxlLlBDSW5hY3RpdmVUZXh0PXQuUENJbmFjdGl2ZVRleHQsZS5QQ0lsbHVzVGV4dD10LlBDSWxsdXNUZXh0LGUuUENMb2dvQXJpYT10LlBDTG9nb1NjcmVlblJlYWRlcixlLlBDT3BlbnNDb29raWVzRGV0YWlsc0FsZXJ0PXQuUENPcGVuc0Nvb2tpZXNEZXRhaWxzQWxlcnQsZS5QQ2VudGVyVmVuZG9yTGlzdFNjcmVlblJlYWRlcj10LlBDZW50ZXJWZW5kb3JMaXN0U2NyZWVuUmVhZGVyLGUuUENPcGVuc1ZlbmRvckRldGFpbHNBbGVydD10LlBDT3BlbnNWZW5kb3JEZXRhaWxzQWxlcnQsZS5QQ2VudGVyRHluYW1pY1JlbmRlcmluZ0VuYWJsZT10LlBDZW50ZXJEeW5hbWljUmVuZGVyaW5nRW5hYmxlLGUuUENUZW1wbGF0ZVVwZ3JhZGU9dC5QQ1RlbXBsYXRlVXBncmFkZSxlLlBDVmVuZG9yRnVsbExlZ2FsVGV4dD10LlBDVmVuZG9yRnVsbExlZ2FsVGV4dCxlLlBDVmlld0Nvb2tpZXNUZXh0PXQuUENWaWV3Q29va2llc1RleHQsZS5QQ0xheW91dD17Q2VudGVyOnQuQ2VudGVyLExpc3Q6dC5MaXN0LFBhbmVsOnQuUGFuZWwsUG9wdXA6dC5Qb3B1cCxUYWI6dC5UYWJ9LGUuUENlbnRlclZlbmRvckxpc3RMaW5rVGV4dD10LlBDZW50ZXJWZW5kb3JMaXN0TGlua1RleHQsZS5QQ2VudGVyVmVuZG9yTGlzdExpbmtBcmlhTGFiZWw9dC5QQ2VudGVyVmVuZG9yTGlzdExpbmtBcmlhTGFiZWwsZS5QcmVmZXJlbmNlQ2VudGVyUG9zaXRpb249dC5QcmVmZXJlbmNlQ2VudGVyUG9zaXRpb24sZS5QQ1ZlbmRvcnNDb3VudFRleHQ9dC5QQ1ZlbmRvcnNDb3VudFRleHQsZS5QQ1ZlbmRvcnNDb3VudEZlYXR1cmVUZXh0PXQuUENWZW5kb3JzQ291bnRGZWF0dXJlVGV4dCxlLlBDVmVuZG9yc0NvdW50U3BjRmVhdHVyZVRleHQ9dC5QQ1ZlbmRvcnNDb3VudFNwY0ZlYXR1cmVUZXh0LGUuUENWZW5kb3JzQ291bnRTcGNQdXJwb3NlVGV4dD10LlBDVmVuZG9yc0NvdW50U3BjUHVycG9zZVRleHR9LHQucHJvdG90eXBlLnNldFZlbmRvclNlcnZpY2VDb25maWdEYXRhPWZ1bmN0aW9uKGUsdCl7ZS5WZW5kb3JTZXJ2aWNlQ29uZmlnPXtQQ1ZTT3B0T3V0OnQuUENWU09wdE91dCxQQ1ZTRW5hYmxlOnQuUENWU0VuYWJsZSxQQ1ZTRXhwYW5kQ2F0ZWdvcnk6dC5QQ1ZTRXhwYW5kQ2F0ZWdvcnksUENWU0V4cGFuZEdyb3VwOnQuUENWU0V4cGFuZEdyb3VwLFBDVlNDYXRlZ29yeVZpZXc6dC5QQ1ZTQ2F0ZWdvcnlWaWV3LFBDVlNOYW1lVGV4dDp0LlBDVlNOYW1lVGV4dCxQQ1ZTQWxsb3dBbGxUZXh0OnQuUENWU0FsbG93QWxsVGV4dCxQQ1ZTTGlzdFRpdGxlOnQuUENWU0xpc3RUaXRsZSxQQ1ZTUGFyZW50Q29tcGFueVRleHQ6dC5QQ1ZTUGFyZW50Q29tcGFueVRleHQsUENWU0FkZHJlc3NUZXh0OnQuUENWU0FkZHJlc3NUZXh0LFBDVlNEZWZhdWx0Q2F0ZWdvcnlUZXh0OnQuUENWU0RlZmF1bHRDYXRlZ29yeVRleHQsUENWU0RlZmF1bHREZXNjcmlwdGlvblRleHQ6dC5QQ1ZTRGVmYXVsdERlc2NyaXB0aW9uVGV4dCxQQ1ZTRFBPRW1haWxUZXh0OnQuUENWU0RQT0VtYWlsVGV4dCxQQ1ZTRFBPTGlua1RleHQ6dC5QQ1ZTRFBPTGlua1RleHQsUENWU1ByaXZhY3lQb2xpY3lMaW5rVGV4dDp0LlBDVlNQcml2YWN5UG9saWN5TGlua1RleHQsUENWU0Nvb2tpZVBvbGljeUxpbmtUZXh0OnQuUENWU0Nvb2tpZVBvbGljeUxpbmtUZXh0LFBDVlNPcHRPdXRMaW5rVGV4dDp0LlBDVlNPcHRPdXRMaW5rVGV4dCxQQ1ZTTGVnYWxCYXNpc1RleHQ6dC5QQ1ZTTGVnYWxCYXNpc1RleHR9fSx0LnByb3RvdHlwZS5zZXRBZGRpdGlvbmFsVGVjaG5vbG9naWVzPWZ1bmN0aW9uKGUsdCl7ZS5BZGRpdGlvbmFsVGVjaG5vbG9naWVzQ29uZmlnPXtQQ1Nob3dUcmFja2luZ1RlY2g6dC5QQ1Nob3dUcmFja2luZ1RlY2gsUENDb29raWVzTGFiZWw6dC5QQ0Nvb2tpZXNMYWJlbCxQQ1RlY2hEZXRhaWxzVGV4dDp0LlBDVGVjaERldGFpbHNUZXh0LFBDVHJhY2tpbmdUZWNoVGl0bGU6dC5QQ1RyYWNraW5nVGVjaFRpdGxlLFBDTG9jYWxTdG9yYWdlTGFiZWw6dC5QQ0xvY2FsU3RvcmFnZUxhYmVsLFBDU2Vzc2lvblN0b3JhZ2VMYWJlbDp0LlBDU2Vzc2lvblN0b3JhZ2VMYWJlbCxQQ1RlY2hEZXRhaWxzQXJpYUxhYmVsOnQuUENUZWNoRGV0YWlsc0FyaWFMYWJlbCxQQ0xvY2FsU3RvcmFnZUR1cmF0aW9uVGV4dDp0LlBDTG9jYWxTdG9yYWdlRHVyYXRpb25UZXh0LFBDU2Vzc2lvblN0b3JhZ2VEdXJhdGlvblRleHQ6dC5QQ1Nlc3Npb25TdG9yYWdlRHVyYXRpb25UZXh0fX0sdC5wcm90b3R5cGUuc2V0RG9tYWluQ29tbW9uRGF0YURlZmF1bHRzPWZ1bmN0aW9uKGUsdCl7ZS5BZHZhbmNlZEFuYWx5dGljc0NhdGVnb3J5PXQuQWR2YW5jZWRBbmFseXRpY3NDYXRlZ29yeXx8IiIsZS5CYW5uZXJEUEREZXNjcmlwdGlvbj10LkJhbm5lckRQRERlc2NyaXB0aW9ufHxbXSxlLkJhbm5lckRQRERlc2NyaXB0aW9uRm9ybWF0PXQuQmFubmVyRFBERGVzY3JpcHRpb25Gb3JtYXR8fCIiLGUuQmFubmVyRFBEVGl0bGU9dC5CYW5uZXJEUERUaXRsZXx8IiIsZS5DYXRlZ29yaWVzVGV4dD10LkNhdGVnb3JpZXNUZXh0fHwiQ2F0ZWdvcmllcyIsZS5Db29raWVzVGV4dD10LkNvb2tpZXNUZXh0fHwiQ29va2llcyIsZS5Db29raWVzRGVzY1RleHQ9dC5Db29raWVzRGVzY1RleHR8fCJEZXNjcmlwdGlvbiIsZS5MaWZlc3BhblRleHQ9dC5MaWZlc3BhblRleHR8fCJMaWZlc3BhbiIsZS5MaWZlc3BhblR5cGVUZXh0PXQuTGlmZXNwYW5UeXBlVGV4dHx8IlNlc3Npb24iLGUuUENlbnRlckNvbnNlbnRUZXh0PXQuUENlbnRlckNvbnNlbnRUZXh0fHwiQ29uc2VudCJ9LHQucHJvdG90eXBlLnNldERvbWFpblBDRGF0YURlZmF1bHRzPWZ1bmN0aW9uKGUsdCl7ZS5QQ2VudGVyQ29va2llTGlzdEZpbHRlckFyaWE9dC5QQ2VudGVyQ29va2llTGlzdEZpbHRlckFyaWF8fCJGaWx0ZXIiLGUuUENlbnRlckNvb2tpZUxpc3RTZWFyY2g9dC5QQ2VudGVyQ29va2llTGlzdFNlYXJjaHx8IlNlYXJjaCIsZS5QQ2VudGVyQ29va2llU2VhcmNoQXJpYUxhYmVsPXQuUENlbnRlckNvb2tpZVNlYXJjaEFyaWFMYWJlbHx8IkNvb2tpZSBsaXN0IHNlYXJjaCIsZS5QQ2VudGVyQ29va2llQ2F0ZWdvcmllc0FyaWFMYWJlbD10LlBDZW50ZXJDb29raWVDYXRlZ29yaWVzQXJpYUxhYmVsfHwiQ29va2llIENhdGVnb3JpZXMiLGUuUENlbnRlckZpbHRlckFwcGxpZWRBcmlhPXQuUENlbnRlckZpbHRlckFwcGxpZWRBcmlhfHwiQXBwbGllZCIsZS5QQ2VudGVyRmlsdGVyQ2xlYXJlZEFyaWE9dC5QQ2VudGVyRmlsdGVyQ2xlYXJlZEFyaWF8fCJGaWx0ZXJzIENsZWFyZWQiLGUuUENlbnRlckxlZ0ludENvbHVtbkhlYWRlcj10LlBDZW50ZXJMZWdJbnRDb2x1bW5IZWFkZXJ8fCJMZWdpdGltYXRlIEludGVyZXN0IixlLlBDZW50ZXJMZWdpdEludGVyZXN0VGV4dD10LlBDZW50ZXJMZWdpdEludGVyZXN0VGV4dHx8IkxlZ2l0aW1hdGUgSW50ZXJlc3QiLGUuUENlbnRlclZlbmRvckxpc3RGaWx0ZXJBcmlhPXQuUENlbnRlclZlbmRvckxpc3RGaWx0ZXJBcmlhfHwiRmlsdGVyIixlLlBDZW50ZXJWZW5kb3JMaXN0U2VhcmNoPXQuUENlbnRlclZlbmRvckxpc3RTZWFyY2h8fCJTZWFyY2giLGUuUENlbnRlclZlbmRvclNlYXJjaEFyaWFMYWJlbD10LlBDZW50ZXJWZW5kb3JTZWFyY2hBcmlhTGFiZWx8fCJWZW5kb3IgbGlzdCBzZWFyY2giLGUuUENGaXJzdFBhcnR5Q29va2llTGlzdFRleHQ9dC5QQ0ZpcnN0UGFydHlDb29raWVMaXN0VGV4dHx8IkZpcnN0IFBhcnR5IENvb2tpZXMiLGUuUENTaG93Q29uc2VudExhYmVscz0hIXQuUENUZW1wbGF0ZVVwZ3JhZGUmJnQuUENTaG93Q29uc2VudExhYmVscyxlLlBDU2hvd1BlcnNpc3RlbnRDb29raWVzSG92ZXJCdXR0b249dC5QQ1Nob3dQZXJzaXN0ZW50Q29va2llc0hvdmVyQnV0dG9ufHwhMX0sdC5wcm90b3R5cGUuY29tbW9uRGF0YU1hcHBlcj1mdW5jdGlvbihlKXt2YXIgdD17aWFiVGhpcmRQYXJ0eUNvbnNlbnRVcmw6ZS5JYWJUaGlyZFBhcnR5Q29va2llVXJsLG9wdGFub25IaWRlQWNjZXB0QnV0dG9uOmUuT3B0YW5vbkhpZGVBY2NlcHRCdXR0b24sb3B0YW5vbkhpZGVDb29raWVTZXR0aW5nQnV0dG9uOmUuT3B0YW5vbkhpZGVDb29raWVTZXR0aW5nQnV0dG9uLG9wdGFub25TdHlsZTplLk9wdGFub25TdHlsZSxvcHRhbm9uU3RhdGljQ29udGVudExvY2F0aW9uOmUuT3B0YW5vblN0YXRpY0NvbnRlbnRMb2NhdGlvbixiYW5uZXJDdXN0b21DU1M6ZS5CYW5uZXJDdXN0b21DU1MucmVwbGFjZSgvXFxuL2csIiIpLHBjQ3VzdG9tQ1NTOmUuUENDdXN0b21DU1MucmVwbGFjZSgvXFxuL2csIiIpLHRleHRDb2xvcjplLlRleHRDb2xvcixidXR0b25Db2xvcjplLkJ1dHRvbkNvbG9yLGJ1dHRvblRleHRDb2xvcjplLkJ1dHRvblRleHRDb2xvcixiYW5uZXJNUEJ1dHRvbkNvbG9yOmUuQmFubmVyTVBCdXR0b25Db2xvcixiYW5uZXJNUEJ1dHRvblRleHRDb2xvcjplLkJhbm5lck1QQnV0dG9uVGV4dENvbG9yLGJhY2tncm91bmRDb2xvcjplLkJhY2tncm91bmRDb2xvcixiYW5uZXJBY2NvcmRpb25CYWNrZ3JvdW5kQ29sb3I6ZS5CYW5uZXJBY2NvcmRpb25CYWNrZ3JvdW5kQ29sb3IsQkNvbnRpbnVlQ29sb3I6ZS5CQ29udGludWVDb2xvcixQQ0NvbnRpbnVlQ29sb3I6ZS5QQ0NvbnRpbnVlQ29sb3IscGNUZXh0Q29sb3I6ZS5QY1RleHRDb2xvcixwY0J1dHRvbkNvbG9yOmUuUGNCdXR0b25Db2xvcixwY0J1dHRvblRleHRDb2xvcjplLlBjQnV0dG9uVGV4dENvbG9yLHBjQWNjb3JkaW9uQmFja2dyb3VuZENvbG9yOmUuUGNBY2NvcmRpb25CYWNrZ3JvdW5kQ29sb3IscGNMaW5rc1RleHRDb2xvcjplLlBjTGlua3NUZXh0Q29sb3IsYmFubmVyTGlua3NUZXh0Q29sb3I6ZS5CYW5uZXJMaW5rc1RleHRDb2xvcixwY0VuYWJsZVRvZ2dsZXM6ZS5QY0VuYWJsZVRvZ2dsZXMscGNCYWNrZ3JvdW5kQ29sb3I6ZS5QY0JhY2tncm91bmRDb2xvcixwY01lbnVDb2xvcjplLlBjTWVudUNvbG9yLHBjTWVudUhpZ2hMaWdodENvbG9yOmUuUGNNZW51SGlnaExpZ2h0Q29sb3IsbGVnYWN5QmFubmVyTGF5b3V0OmUuTGVnYWN5QmFubmVyTGF5b3V0LG9wdGFub25Mb2dvOmUuT3B0YW5vbkxvZ28sb25lVHJ1c3RGdHJMb2dvOmUuT25lVHJ1c3RGb290ZXJMb2dvLG9wdGFub25Db29raWVEb21haW46ZS5PcHRhbm9uQ29va2llRG9tYWluLGNvb2tpZVBlcnNpc3RlbnRMb2dvOmUuQ29va2llUGVyc2lzdGVudExvZ28sb3B0YW5vbkdyb3VwSWRQZXJmb3JtYW5jZUNvb2tpZXM6ZS5PcHRhbm9uR3JvdXBJZFBlcmZvcm1hbmNlQ29va2llcyxvcHRhbm9uR3JvdXBJZEZ1bmN0aW9uYWxpdHlDb29raWVzOmUuT3B0YW5vbkdyb3VwSWRGdW5jdGlvbmFsaXR5Q29va2llcyxvcHRhbm9uR3JvdXBJZFRhcmdldGluZ0Nvb2tpZXM6ZS5PcHRhbm9uR3JvdXBJZFRhcmdldGluZ0Nvb2tpZXMsb3B0YW5vbkdyb3VwSWRTb2NpYWxDb29raWVzOmUuT3B0YW5vbkdyb3VwSWRTb2NpYWxDb29raWVzLG9wdGFub25TaG93U3ViR3JvdXBDb29raWVzOmUuU2hvd1N1Ykdyb3VwQ29va2llcyx1c2VSVEw6ZS5Vc2VSVEwsc2hvd0Jhbm5lckNvb2tpZVNldHRpbmdzOmUuU2hvd0Jhbm5lckNvb2tpZVNldHRpbmdzLHNob3dCYW5uZXJBY2NlcHRCdXR0b246ZS5TaG93QmFubmVyQWNjZXB0QnV0dG9uLHNob3dDb29raWVMaXN0OmUuU2hvd0Nvb2tpZUxpc3QsYWxsb3dIb3N0T3B0T3V0OmUuQWxsb3dIb3N0T3B0T3V0LENvb2tpZXNWMk5ld0Nvb2tpZVBvbGljeTplLkNvb2tpZXNWMk5ld0Nvb2tpZVBvbGljeSxjb29raWVMaXN0VGl0bGVDb2xvcjplLkNvb2tpZUxpc3RUaXRsZUNvbG9yLGNvb2tpZUxpc3RHcm91cE5hbWVDb2xvcjplLkNvb2tpZUxpc3RHcm91cE5hbWVDb2xvcixjb29raWVMaXN0VGFibGVIZWFkZXJDb2xvcjplLkNvb2tpZUxpc3RUYWJsZUhlYWRlckNvbG9yLENvb2tpZUxpc3RUYWJsZUhlYWRlckJhY2tncm91bmRDb2xvcjplLkNvb2tpZUxpc3RUYWJsZUhlYWRlckJhY2tncm91bmRDb2xvcixjb29raWVMaXN0UHJpbWFyeUNvbG9yOmUuQ29va2llTGlzdFByaW1hcnlDb2xvcixjb29raWVMaXN0Q3VzdG9tQ3NzOmUuQ29va2llTGlzdEN1c3RvbUNzcyxwY1Nob3dDb29raWVIb3N0OmUuUENTaG93Q29va2llSG9zdCxwY1Nob3dDb29raWVEdXJhdGlvbjplLlBDU2hvd0Nvb2tpZUR1cmF0aW9uLHBjU2hvd0Nvb2tpZVR5cGU6ZS5QQ1Nob3dDb29raWVUeXBlLHBjU2hvd0Nvb2tpZUNhdGVnb3J5OmUuUENTaG93Q29va2llQ2F0ZWdvcnkscGNTaG93Q29va2llRGVzY3JpcHRpb246ZS5QQ1Nob3dDb29raWVEZXNjcmlwdGlvbixDb25zZW50SW50ZWdyYXRpb246ZS5Db25zZW50SW50ZWdyYXRpb24sQ29uc2VudFB1cnBvc2VzVGV4dDplLkJDb25zZW50UHVycG9zZXNUZXh0fHwiQ29uc2VudCBQdXJwb3NlcyIsRmVhdHVyZXNUZXh0OmUuQkZlYXR1cmVzVGV4dHx8IkZlYXR1cmVzIixMZWdpdGltYXRlSW50ZXJlc3RQdXJwb3Nlc1RleHQ6ZS5CTGVnaXRpbWF0ZUludGVyZXN0UHVycG9zZXNUZXh0fHwiTGVnaXRpbWF0ZSBJbnRlcmVzdCBQdXJwb3NlcyIsQ29uc2VudFRleHQ6ZS5CQ29uc2VudFRleHR8fCJDb25zZW50IixMZWdpdEludGVyZXN0VGV4dDplLkJMZWdpdEludGVyZXN0VGV4dHx8IkxlZ2l0LiBJbnRlcmVzdCIscGNEaWFsb2dDbG9zZTplLlBDRGlhbG9nQ2xvc2V8fCJkaWFsb2cgY2xvc2VkIixwQ0Zvb3RlckxvZ29Vcmw6ZS5QQ0Zvb3RlckxvZ29VcmwsU3BlY2lhbEZlYXR1cmVzVGV4dDplLkJTcGVjaWFsRmVhdHVyZXNUZXh0fHwiU3BlY2lhbCBGZWF0dXJlcyIsU3BlY2lhbFB1cnBvc2VzVGV4dDplLkJTcGVjaWFsUHVycG9zZXNUZXh0fHwiU3BlY2lhbCBQdXJwb3NlcyIscGNDTGlzdE5hbWU6ZS5QQ0NMaXN0TmFtZXx8Ik5hbWUiLHBjQ0xpc3RIb3N0OmUuUENDTGlzdEhvc3R8fCJIb3N0IixwY0NMaXN0RHVyYXRpb246ZS5QQ0NMaXN0RHVyYXRpb258fCJEdXJhdGlvbiIscGNDTGlzdFR5cGU6ZS5QQ0NMaXN0VHlwZXx8IlR5cGUiLHBjQ0xpc3RDYXRlZ29yeTplLlBDQ0xpc3RDYXRlZ29yeXx8IkNhdGVnb3J5IixwY0NMaXN0RGVzY3JpcHRpb246ZS5QQ0NMaXN0RGVzY3JpcHRpb258fCJEZXNjcmlwdGlvbiIsSWFiTGVnYWxUZXh0VXJsOmUuSWFiTGVnYWxUZXh0VXJsLHBjTGVnSW50QnV0dG9uQ29sb3I6ZS5QY0xlZ0ludEJ1dHRvbkNvbG9yLHBjTGVnSW50QnV0dG9uVGV4dENvbG9yOmUuUGNMZWdJbnRCdXR0b25UZXh0Q29sb3IsUENlbnRlckV4cGFuZFRvVmlld1RleHQ6ZS5QQ2VudGVyRXhwYW5kVG9WaWV3VGV4dCxCQ2F0ZWdvcnlDb250YWluZXJDb2xvcjplLkJDYXRlZ29yeUNvbnRhaW5lckNvbG9yLEJDYXRlZ29yeVN0eWxlQ29sb3I6ZS5CQ2F0ZWdvcnlTdHlsZUNvbG9yLEJMaW5lQnJlYWtDb2xvcjplLkJMaW5lQnJlYWtDb2xvcixCU2F2ZUJ0bkNvbG9yOmUuQlNhdmVCdG5Db2xvcixCQ2F0ZWdvcnlTdHlsZTplLkJDYXRlZ29yeVN0eWxlLEJBbmltYXRpb246ZS5CQW5pbWF0aW9uLEJGb2N1c0JvcmRlckNvbG9yOmUuQkZvY3VzQm9yZGVyQ29sb3IsUENGb2N1c0JvcmRlckNvbG9yOmUuUENGb2N1c0JvcmRlckNvbG9yLEJuckxvZ286ZS5CbnJMb2dvLE9UQ2xvc2VCdG5Mb2dvOmUuT1RDbG9zZUJ0bkxvZ28sT1RTcHJpdGVMb2dvOmUuT1RTcHJpdGVMb2dvLE9URXh0ZXJuYWxMaW5rTG9nbzplLk9URXh0ZXJuYWxMaW5rTG9nbyxCYW5uZXJFeHRlcm5hbExpbmtzTG9nbzp0aGlzLmN1c3RvbUV4dGVybmFsTGlua0xvZ28oZSksQmFubmVyUmVxdWlyZUV4dGVybmFsTGlua3M6ZS5CYW5uZXJSZXF1aXJlRXh0ZXJuYWxMaW5rcyxCYW5uZXJSZXF1aXJlRXh0ZXJuYWxMaW5rc0N1c3RvbUxvZ286ZS5CYW5uZXJSZXF1aXJlRXh0ZXJuYWxMaW5rc0N1c3RvbUxvZ299O3RoaXMuY29va2llTGlzdE1hcHBlcih0LGUpLEw9UihSKHt9LEwpLHQpLHRoaXMucHViRG9tYWluRGF0YS5Db29raWVzVjJOZXdDb29raWVQb2xpY3k9ZS5Db29raWVzVjJOZXdDb29raWVQb2xpY3l9LHQucHJvdG90eXBlLmN1c3RvbUV4dGVybmFsTGlua0xvZ289ZnVuY3Rpb24oZSl7cmV0dXJuIGUuQmFubmVyUmVxdWlyZUV4dGVybmFsTGlua3NDdXN0b21Mb2dvP2UuQmFubmVyRXh0ZXJuYWxMaW5rc0xvZ286IiJ9LHQucHJvdG90eXBlLmNvb2tpZUxpc3RNYXBwZXI9ZnVuY3Rpb24oZSx0KXtlLlRUTEdyb3VwQnlUZWNoPXQuVFRMR3JvdXBCeVRlY2gsZS5UVExTaG93VGVjaERlc2M9dC5UVExTaG93VGVjaERlc2N9LHQucHJvdG90eXBlLnNldFB1YmxpY0RvbWFpbkRhdGE9ZnVuY3Rpb24obil7dGhpcy5wdWJEb21haW5EYXRhPXtBYm91dENvb2tpZXNUZXh0Om4uQWJvdXRDb29raWVzVGV4dCxBYm91dExpbms6bi5BYm91dExpbmssQWJvdXRUZXh0Om4uQWJvdXRUZXh0LEFjdGl2ZVRleHQ6bi5BY3RpdmVUZXh0LEFkZExpbmtzVG9Db29raWVwZWRpYTpuLkFkZExpbmtzVG9Db29raWVwZWRpYSxBbGVydEFsbG93Q29va2llc1RleHQ6bi5BbGVydEFsbG93Q29va2llc1RleHQsQWxlcnRDbG9zZVRleHQ6bi5BbGVydENsb3NlVGV4dCxBbGVydExheW91dDpuLkFsZXJ0TGF5b3V0LEFsZXJ0TW9yZUluZm9UZXh0Om4uQWxlcnRNb3JlSW5mb1RleHQsQWxlcnRNb3JlSW5mb1RleHREaWFsb2c6bi5BbGVydE1vcmVJbmZvQXJpYUxhYmVsLEFsZXJ0Tm90aWNlVGV4dDpuLkFsZXJ0Tm90aWNlVGV4dCxBbGxvd0FsbFRleHQ6bi5QcmVmZXJlbmNlQ2VudGVyQ29uZmlybVRleHQsQWx3YXlzQWN0aXZlVGV4dDpuLkFsd2F5c0FjdGl2ZVRleHQsQWx3YXlzSW5hY3RpdmVUZXh0Om4uQWx3YXlzSW5hY3RpdmVUZXh0LEJBbmltYXRpb246bi5CQW5pbWF0aW9uLEJhbm5lckNsb3NlQnV0dG9uVGV4dDpuLkJhbm5lckNsb3NlQnV0dG9uVGV4dCxCYW5uZXJEUEREZXNjcmlwdGlvbjpuLkJhbm5lckRQRERlc2NyaXB0aW9ufHxbXSxCYW5uZXJEUEREZXNjcmlwdGlvbkZvcm1hdDpuLkJhbm5lckRQRERlc2NyaXB0aW9uRm9ybWF0fHwiIixCYW5uZXJEUERUaXRsZTpuLkJhbm5lckRQRFRpdGxlfHwiIixCYW5uZXJGZWF0dXJlRGVzY3JpcHRpb246bi5CYW5uZXJGZWF0dXJlRGVzY3JpcHRpb24sQmFubmVyRmVhdHVyZVRpdGxlOm4uQmFubmVyRmVhdHVyZVRpdGxlLEJhbm5lcklBQlBhcnRuZXJzTGluazpuLkJhbm5lcklBQlBhcnRuZXJzTGluayxCYW5uZXJJbmZvcm1hdGlvbkRlc2NyaXB0aW9uOm4uQmFubmVySW5mb3JtYXRpb25EZXNjcmlwdGlvbixCYW5uZXJJbmZvcm1hdGlvblRpdGxlOm4uQmFubmVySW5mb3JtYXRpb25UaXRsZSxCYW5uZXJQb3NpdGlvbjpuLkJhbm5lclBvc2l0aW9uLEJhbm5lclB1cnBvc2VEZXNjcmlwdGlvbjpuLkJhbm5lclB1cnBvc2VEZXNjcmlwdGlvbixCYW5uZXJQdXJwb3NlVGl0bGU6bi5CYW5uZXJQdXJwb3NlVGl0bGUsQmFubmVyUmVqZWN0QWxsQnV0dG9uVGV4dDpuLkJhbm5lclJlamVjdEFsbEJ1dHRvblRleHQsQmFubmVyUmVsYXRpdmVGb250U2l6ZXNUb2dnbGU6bi5CYW5uZXJSZWxhdGl2ZUZvbnRTaXplc1RvZ2dsZSxCYW5uZXJTZXR0aW5nc0J1dHRvbkRpc3BsYXlMaW5rOm4uQmFubmVyU2V0dGluZ3NCdXR0b25EaXNwbGF5TGluayxCYW5uZXJTaG93UmVqZWN0QWxsQnV0dG9uOm4uQmFubmVyU2hvd1JlamVjdEFsbEJ1dHRvbixCYW5uZXJUaXRsZTpuLkJhbm5lclRpdGxlLEJDYXRlZ29yeUNvbnRhaW5lckNvbG9yOm4uQkNhdGVnb3J5Q29udGFpbmVyQ29sb3IsQkNhdGVnb3J5U3R5bGU6bi5CQ2F0ZWdvcnlTdHlsZSxCQ2F0ZWdvcnlTdHlsZUNvbG9yOm4uQkNhdGVnb3J5U3R5bGVDb2xvcixCQ2xvc2VCdXR0b25UeXBlOm4uQkNsb3NlQnV0dG9uVHlwZSxCQ29udGludWVUZXh0Om4uQkNvbnRpbnVlVGV4dCxCSW5pdGlhbEZvY3VzOm4uQkluaXRpYWxGb2N1cyxCSW5pdGlhbEZvY3VzTGlua0FuZEJ1dHRvbjpuLkJJbml0aWFsRm9jdXNMaW5rQW5kQnV0dG9uLEJMaW5lQnJlYWtDb2xvcjpuLkJMaW5lQnJlYWtDb2xvcixCUmVqZWN0Q29uc2VudFR5cGU6bi5CUmVqZWN0Q29uc2VudFR5cGUsQlNhdmVCdG5Db2xvcjpuLkJTYXZlQnRuQ29sb3IsQlNhdmVCdG5UeHQ6bi5CU2F2ZUJ0blRleHQsQlNob3dTYXZlQnRuOm4uQlNob3dTYXZlQnRuLENhdGVnb3JpZXNUZXh0Om4uQ2F0ZWdvcmllc1RleHQsY2N0SWQ6bi5jY3RJZCxDaG9pY2VzQmFubmVyOm4uQ2hvaWNlc0Jhbm5lcixDbG9zZVNob3VsZEFjY2VwdEFsbENvb2tpZXM6bi5DbG9zZVNob3VsZEFjY2VwdEFsbENvb2tpZXMsQ2xvc2VUZXh0Om4uQ2xvc2VUZXh0LENvbmZpcm1UZXh0Om4uQ29uZmlybVRleHQsQ29uc2VudEludGVncmF0aW9uRGF0YTpudWxsLENvbnNlbnRNb2RlbDp7TmFtZTpuLkNvbnNlbnRNb2RlbH0sQ29va2llTGlzdERlc2NyaXB0aW9uOm4uQ29va2llTGlzdERlc2NyaXB0aW9uLENvb2tpZUxpc3RUaXRsZTpuLkNvb2tpZUxpc3RUaXRsZSxDb29raWVTZXR0aW5nQnV0dG9uVGV4dDpuLkNvb2tpZVNldHRpbmdCdXR0b25UZXh0LENvb2tpZXNUZXh0Om4uQ29va2llc1RleHQsQ29va2llc0Rlc2NUZXh0Om4uQ29va2llc0Rlc2NUZXh0LENvb2tpZXNVc2VkVGV4dDpuLkNvb2tpZXNVc2VkVGV4dCxDdXN0b21KczpuLkN1c3RvbUpzLERvbWFpbjpTLm1vZHVsZUluaXRpYWxpemVyLkRvbWFpbixGb290ZXJEZXNjcmlwdGlvblRleHQ6bi5Gb290ZXJEZXNjcmlwdGlvblRleHQsRm9yY2VDb25zZW50Om4uRm9yY2VDb25zZW50LEdlbmVyYWxWZW5kb3JzOm4uR2VuZXJhbFZlbmRvcnMsR29vZ2xlQ29uc2VudDp7R0NBZFN0b3JhZ2U6bi5HQ0FkU3RvcmFnZSxHQ0FuYWx5dGljc1N0b3JhZ2U6bi5HQ0FuYWx5dGljc1N0b3JhZ2UsR0NFbmFibGU6bi5HQ0VuYWJsZSxHQ0Z1bmN0aW9uYWxpdHlTdG9yYWdlOm4uR0NGdW5jdGlvbmFsaXR5U3RvcmFnZSxHQ1BlcnNvbmFsaXphdGlvblN0b3JhZ2U6bi5HQ1BlcnNvbmFsaXphdGlvblN0b3JhZ2UsR0NSZWRhY3RFbmFibGU6bi5HQ1JlZGFjdEVuYWJsZSxHQ1NlY3VyaXR5U3RvcmFnZTpuLkdDU2VjdXJpdHlTdG9yYWdlLEdDV2FpdFRpbWU6bi5HQ1dhaXRUaW1lLEdDQWRVc2VyRGF0YTpuLkdDQWRVc2VyRGF0YSxHQ0FkUGVyc29uYWxpemF0aW9uOm4uR0NBZFBlcnNvbmFsaXphdGlvbn0sTUNNRGF0YTpuLk1DTURhdGEsQUNNRGF0YTpuLkFDTURhdGEsR3JvdXBzOm51bGwsSGlkZVRvb2xiYXJDb29raWVMaXN0Om4uSGlkZVRvb2xiYXJDb29raWVMaXN0LElhYlR5cGU6bi5JYWJUeXBlLEluYWN0aXZlVGV4dDpuLkluYWN0aXZlVGV4dCxJc0Jhbm5lckxvYWRlZDohMSxJc0NvbnNlbnRMb2dnaW5nRW5hYmxlZDpuLklzQ29uc2VudExvZ2dpbmdFbmFibGVkLElzSUFCRW5hYmxlZDpuLklzSWFiRW5hYmxlZCxJc0lhYlRoaXJkUGFydHlDb29raWVFbmFibGVkOm4uSXNJYWJUaGlyZFBhcnR5Q29va2llRW5hYmxlZCxJc0xpZmVzcGFuRW5hYmxlZDpuLklzTGlmZXNwYW5FbmFibGVkLExhbmd1YWdlOm4uTGFuZ3VhZ2UsTGFzdFJlY29uc2VudERhdGU6bi5MYXN0UmVjb25zZW50RGF0ZSxMaWZlc3BhbkR1cmF0aW9uVGV4dDpuLkxpZmVzcGFuRHVyYXRpb25UZXh0LExpZmVzcGFuVGV4dDpuLkxpZmVzcGFuVGV4dCxMaWZlc3BhblR5cGVUZXh0Om4uTGlmZXNwYW5UeXBlVGV4dCxNYWluSW5mb1RleHQ6bi5NYWluSW5mb1RleHQsTWFpblRleHQ6bi5NYWluVGV4dCxNYW5hZ2VQcmVmZXJlbmNlVGV4dDpuLlByZWZlcmVuY2VDZW50ZXJNYW5hZ2VQcmVmZXJlbmNlc1RleHQsTmV4dFBhZ2VBY2NlcHRBbGxDb29raWVzOm4uTmV4dFBhZ2VBY2NlcHRBbGxDb29raWVzLE5leHRQYWdlQ2xvc2VCYW5uZXI6bi5OZXh0UGFnZUNsb3NlQmFubmVyLE5vQmFubmVyOm4uTm9CYW5uZXIsT25DbGlja0FjY2VwdEFsbENvb2tpZXM6bi5PbkNsaWNrQWNjZXB0QWxsQ29va2llcyxPbkNsaWNrQ2xvc2VCYW5uZXI6bi5PbkNsaWNrQ2xvc2VCYW5uZXIsT3ZlcnJpZGVuR29vZ2xlVmVuZG9yczpuLk92ZXJyaWRlbkdvb2dsZVZlbmRvcnMsUENBY2NvcmRpb25TdHlsZTpjZS5DYXJldCxQQ0Nsb3NlQnV0dG9uVHlwZTpuLlBDQ2xvc2VCdXR0b25UeXBlLFBDQ29udGludWVUZXh0Om4uUENDb250aW51ZVRleHQsUENlbnRlckFsbG93QWxsQ29uc2VudFRleHQ6bi5QQ2VudGVyQWxsb3dBbGxDb25zZW50VGV4dCxQQ2VudGVyQXBwbHlGaWx0ZXJzVGV4dDpuLlBDZW50ZXJBcHBseUZpbHRlcnNUZXh0LFBDZW50ZXJCYWNrVGV4dDpuLlBDZW50ZXJCYWNrVGV4dCxQQ2VudGVyQ2FuY2VsRmlsdGVyc1RleHQ6bi5QQ2VudGVyQ2FuY2VsRmlsdGVyc1RleHQsUENlbnRlckNsZWFyRmlsdGVyc1RleHQ6bi5QQ2VudGVyQ2xlYXJGaWx0ZXJzVGV4dCxQQ2VudGVyQ29va2llU2VhcmNoQXJpYUxhYmVsOm4uUENlbnRlckNvb2tpZVNlYXJjaEFyaWFMYWJlbHx8IkNvb2tpZSBsaXN0IHNlYXJjaCIsUENlbnRlckNvb2tpZUNhdGVnb3JpZXNBcmlhTGFiZWw6bi5QQ2VudGVyQ29va2llQ2F0ZWdvcmllc0FyaWFMYWJlbHx8IkNvb2tpZSBDYXRlZ29yaWVzIixQQ2VudGVyQ29va2llc0xpc3RUZXh0Om4uUENlbnRlckNvb2tpZXNMaXN0VGV4dCxQQ2VudGVyRW5hYmxlQWNjb3JkaW9uOm4uUENlbnRlckVuYWJsZUFjY29yZGlvbixQQ2VudGVyRXhwYW5kVG9WaWV3VGV4dDpuLlBDZW50ZXJFeHBhbmRUb1ZpZXdUZXh0LFBDZW50ZXJGaWx0ZXJBcHBsaWVkQXJpYTpuLlBDZW50ZXJGaWx0ZXJBcHBsaWVkQXJpYXx8IkFwcGxpZWQiLFBDZW50ZXJGaWx0ZXJDbGVhcmVkQXJpYTpuLlBDZW50ZXJGaWx0ZXJDbGVhcmVkQXJpYXx8IkZpbHRlcnMgQ2xlYXJlZCIsUENlbnRlckZpbHRlclRleHQ6bi5QQ2VudGVyRmlsdGVyVGV4dCxQQ2VudGVyUmVqZWN0QWxsQnV0dG9uVGV4dDpuLlBDZW50ZXJSZWplY3RBbGxCdXR0b25UZXh0LFBDZW50ZXJTZWxlY3RBbGxWZW5kb3JzVGV4dDpuLlBDZW50ZXJTZWxlY3RBbGxWZW5kb3JzVGV4dCxQQ2VudGVyU2hvd1JlamVjdEFsbEJ1dHRvbjpuLlBDZW50ZXJTaG93UmVqZWN0QWxsQnV0dG9uLFBDZW50ZXJVc2VySWREZXNjcmlwdGlvblRleHQ6bi5QQ2VudGVyVXNlcklkRGVzY3JpcHRpb25UZXh0LFBDZW50ZXJVc2VySWROb3RZZXRDb25zZW50ZWRUZXh0Om4uUENlbnRlclVzZXJJZE5vdFlldENvbnNlbnRlZFRleHQsUENlbnRlclVzZXJJZFRpbWVzdGFtcFRpdGxlVGV4dDpuLlBDZW50ZXJVc2VySWRUaW1lc3RhbXBUaXRsZVRleHQsUENlbnRlclVzZXJJZFRpdGxlVGV4dDpuLlBDZW50ZXJVc2VySWRUaXRsZVRleHQsUENlbnRlclZlbmRvckxpc3REZXNjVGV4dDpuLlBDZW50ZXJWZW5kb3JMaXN0RGVzY1RleHQsUENlbnRlclZlbmRvclNlYXJjaEFyaWFMYWJlbDpuLlBDZW50ZXJWZW5kb3JTZWFyY2hBcmlhTGFiZWx8fCJWZW5kb3IgbGlzdCBzZWFyY2giLFBDZW50ZXJWZW5kb3JzTGlzdFRleHQ6bi5QQ2VudGVyVmVuZG9yc0xpc3RUZXh0LFBDZW50ZXJWaWV3UHJpdmFjeVBvbGljeVRleHQ6bi5QQ2VudGVyVmlld1ByaXZhY3lQb2xpY3lUZXh0LFBDRmlyc3RQYXJ0eUNvb2tpZUxpc3RUZXh0Om4uUENGaXJzdFBhcnR5Q29va2llTGlzdFRleHQsUENHb29nbGVWZW5kb3JzVGV4dDpuLlBDR29vZ2xlVmVuZG9yc1RleHQsUENHcnBEZXNjTGlua1Bvc2l0aW9uOm4uUENHcnBEZXNjTGlua1Bvc2l0aW9uLFBDR3JwRGVzY1R5cGU6bi5QQ0dycERlc2NUeXBlLFBDSUFCVmVuZG9yc1RleHQ6bi5QQ0lBQlZlbmRvcnNUZXh0LFBDSUFCVmVuZG9yTGVnSW50Q2xhaW1UZXh0Om4uUENJQUJWZW5kb3JMZWdJbnRDbGFpbVRleHQsUENWTGlzdERhdGFEZWNsYXJhdGlvblRleHQ6bi5QQ1ZMaXN0RGF0YURlY2xhcmF0aW9uVGV4dCxQQ1ZMaXN0RGF0YVJldGVudGlvblRleHQ6bi5QQ1ZMaXN0RGF0YVJldGVudGlvblRleHQsUENWTGlzdFN0ZFJldGVudGlvblRleHQ6bi5QQ1ZMaXN0U3RkUmV0ZW50aW9uVGV4dCxJQUJEYXRhQ2F0ZWdvcmllczpuLklBQkRhdGFDYXRlZ29yaWVzLFBDTG9nb0FyaWE6bi5QQ0xvZ29TY3JlZW5SZWFkZXIsUENPcGVuc0Nvb2tpZXNEZXRhaWxzQWxlcnQ6bi5QQ09wZW5zQ29va2llc0RldGFpbHNBbGVydCxQQ2VudGVyVmVuZG9yTGlzdFNjcmVlblJlYWRlcjpuLlBDZW50ZXJWZW5kb3JMaXN0U2NyZWVuUmVhZGVyLFBDT3BlbnNWZW5kb3JEZXRhaWxzQWxlcnQ6bi5QQ09wZW5zVmVuZG9yRGV0YWlsc0FsZXJ0LFBDU2hvd1BlcnNpc3RlbnRDb29raWVzSG92ZXJCdXR0b246bi5QQ1Nob3dQZXJzaXN0ZW50Q29va2llc0hvdmVyQnV0dG9uLFBDZW50ZXJEeW5hbWljUmVuZGVyaW5nRW5hYmxlOm4uUENlbnRlckR5bmFtaWNSZW5kZXJpbmdFbmFibGUsUENUZW1wbGF0ZVVwZ3JhZGU6bi5QQ1RlbXBsYXRlVXBncmFkZSxQQ1ZlbmRvckZ1bGxMZWdhbFRleHQ6bi5QQ1ZlbmRvckZ1bGxMZWdhbFRleHQsUENWaWV3Q29va2llc1RleHQ6bi5QQ1ZpZXdDb29raWVzVGV4dCxQQ0xheW91dDp7Q2VudGVyOm4uQ2VudGVyLExpc3Q6bi5MaXN0LFBhbmVsOm4uUGFuZWwsUG9wdXA6bi5Qb3B1cCxUYWI6bi5UYWJ9LFBDZW50ZXJWZW5kb3JMaXN0TGlua1RleHQ6bi5QQ2VudGVyVmVuZG9yTGlzdExpbmtUZXh0LFBDZW50ZXJWZW5kb3JMaXN0TGlua0FyaWFMYWJlbDpuLlBDZW50ZXJWZW5kb3JMaXN0TGlua0FyaWFMYWJlbCxQQ2VudGVySW1wcmludExpbmtTY3JlZW5SZWFkZXI6bi5QQ2VudGVySW1wcmludExpbmtTY3JlZW5SZWFkZXIsUENlbnRlckltcHJpbnRMaW5rVGV4dDpuLlBDZW50ZXJJbXByaW50TGlua1RleHQsUENlbnRlckltcHJpbnRMaW5rVXJsOm4uUENlbnRlckltcHJpbnRMaW5rVXJsLFByZWZlcmVuY2VDZW50ZXJQb3NpdGlvbjpuLlByZWZlcmVuY2VDZW50ZXJQb3NpdGlvbixTY3JvbGxBY2NlcHRBbGxDb29raWVzOm4uU2Nyb2xsQWNjZXB0QWxsQ29va2llcyxTY3JvbGxDbG9zZUJhbm5lcjpuLlNjcm9sbENsb3NlQmFubmVyLFNob3dBbGVydE5vdGljZTpuLlNob3dBbGVydE5vdGljZSxzaG93QmFubmVyQ2xvc2VCdXR0b246bi5zaG93QmFubmVyQ2xvc2VCdXR0b24sU2hvd1ByZWZlcmVuY2VDZW50ZXJDbG9zZUJ1dHRvbjpuLlNob3dQcmVmZXJlbmNlQ2VudGVyQ2xvc2VCdXR0b24sVGhpcmRQYXJ0eUNvb2tpZUxpc3RUZXh0Om4uVGhpcmRQYXJ0eUNvb2tpZUxpc3RUZXh0LFVzZUdvb2dsZVZlbmRvcnM6dGhpcy5jYW5Vc2VHb29nbGVWZW5kb3JzKG4uUENUZW1wbGF0ZVVwZ3JhZGUpLFZlbmRvckNvbnNlbnRNb2RlbDpuLlZlbmRvckNvbnNlbnRNb2RlbCxWZW5kb3JMZXZlbE9wdE91dDpuLklzSWFiRW5hYmxlZCxWZW5kb3JMaXN0VGV4dDpuLlZlbmRvckxpc3RUZXh0LENvb2tpZXNWMk5ld0Nvb2tpZVBvbGljeTohMX0sbi5QQ1RlbXBsYXRlVXBncmFkZSYmKG4uQ2VudGVyfHxuLlBhbmVsKSYmbi5QQ0FjY29yZGlvblN0eWxlIT09Y2UuTm9BY2NvcmRpb24mJih0aGlzLnB1YkRvbWFpbkRhdGEuUENBY2NvcmRpb25TdHlsZT1uLlBDQWNjb3JkaW9uU3R5bGUpLHRoaXMucHViRG9tYWluRGF0YS5QQ2VudGVyRW5hYmxlQWNjb3JkaW9uPW4uUENBY2NvcmRpb25TdHlsZSE9PWNlLk5vQWNjb3JkaW9uO3ZhciByPVtdO24uR3JvdXBzLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQsbzshbi5Jc0lhYkVuYWJsZWQmJmUuSXNJYWJQdXJwb3NlfHwoZS5Db29raWVzPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZS5GaXJzdFBhcnR5Q29va2llcykpLG89bnVsbD09KG89ZS5Ib3N0cyk/dm9pZCAwOm8ucmVkdWNlKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUuY29uY2F0KEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodC5Db29raWVzKSkpfSxbXSksKHQ9ZS5Db29raWVzKS5wdXNoLmFwcGx5KHQsbyksci5wdXNoKGUpKX0pLHRoaXMucHViRG9tYWluRGF0YS5Hcm91cHM9cn0sdC5wcm90b3R5cGUuc2V0QmFubmVyU2NyaXB0RWxlbWVudD1mdW5jdGlvbihlKXt0aGlzLmJhbm5lclNjcmlwdEVsZW1lbnQ9ZSx0aGlzLnNldERvbWFpbkVsZW1lbnRBdHRyaWJ1dGVzKCl9LHQucHJvdG90eXBlLnNldEdDTWNhbGxiYWNrPWZ1bmN0aW9uKCl7d2luZG93Lm90RXZlbnRMaXN0ZW5lcnMmJndpbmRvdy5vdEV2ZW50TGlzdGVuZXJzLmxlbmd0aCYmd2luZG93Lm90RXZlbnRMaXN0ZW5lcnMuZm9yRWFjaChmdW5jdGlvbihlKXtlJiYiY29uc2VudC5jaGFuZ2VkIj09PWUuZXZlbnQmJihiLmdjbVVwZGF0ZUNhbGxiYWNrPWUubGlzdGVuZXIpfSl9LHQucHJvdG90eXBlLnNldERvbWFpbkVsZW1lbnRBdHRyaWJ1dGVzPWZ1bmN0aW9uKCl7dmFyIGU7dGhpcy5iYW5uZXJTY3JpcHRFbGVtZW50JiYoKGU9InRydWUiPT09SS5nZXRTdHViQXR0cihqZSl8fFMubW9kdWxlSW5pdGlhbGl6ZXIuTGFuZ3VhZ2VEZXRlY3Rpb25FbmFibGVkJiZTLm1vZHVsZUluaXRpYWxpemVyLkxhbmd1YWdlRGV0ZWN0aW9uQnlIdG1sKSYmdGhpcy5zZXRVc2VEb2N1bWVudExhbmd1YWdlKGUpLHRoaXMuYmFubmVyU2NyaXB0RWxlbWVudC5oYXNBdHRyaWJ1dGUoImRhdGEtaWdub3JlLWdhIikmJih0aGlzLmlnbm9yZUdvb2dsZUFubHl0aWNzQ2FsbD0idHJ1ZSI9PT10aGlzLmJhbm5lclNjcmlwdEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLWlnbm9yZS1nYSIpKSx0aGlzLmJhbm5lclNjcmlwdEVsZW1lbnQuaGFzQXR0cmlidXRlKCJkYXRhLWlnbm9yZS1odG1sIikpJiYodGhpcy5pZ25vcmVJbmplY3RpbmdIdG1sQ3NzPSJ0cnVlIj09PXRoaXMuYmFubmVyU2NyaXB0RWxlbWVudC5nZXRBdHRyaWJ1dGUoImRhdGEtaWdub3JlLWh0bWwiKSl9LHQucHJvdG90eXBlLnNldFVzZURvY3VtZW50TGFuZ3VhZ2U9ZnVuY3Rpb24oZSl7dGhpcy51c2VEb2N1bWVudExhbmd1YWdlPWV9LHQucHJvdG90eXBlLnNldFBjTmFtZT1mdW5jdGlvbigpe3ZhciBlPUwuUENMYXlvdXQ7ZS5DZW50ZXI/dGhpcy5wY05hbWU9b3Q6ZS5QYW5lbD90aGlzLnBjTmFtZT1ydDplLlBvcHVwP3RoaXMucGNOYW1lPWl0OmUuTGlzdD90aGlzLnBjTmFtZT1udDplLlRhYiYmKHRoaXMucGNOYW1lPXN0KX0sdC5wcm90b3R5cGUuc2V0QmFubmVyTmFtZT1mdW5jdGlvbigpe0wuRmxhdD90aGlzLmJhbm5lck5hbWU9SmU6TC5GbG9hdGluZ1JvdW5kZWRDb3JuZXI/dGhpcy5iYW5uZXJOYW1lPVhlOkwuRmxvYXRpbmdGbGF0P3RoaXMuYmFubmVyTmFtZT1RZTpMLkZsb2F0aW5nUm91bmRlZD90aGlzLmJhbm5lck5hbWU9JGU6TC5GbG9hdGluZ1JvdW5kZWRJY29uP3RoaXMuYmFubmVyTmFtZT1aZTpMLkNlbnRlclJvdW5kZWQ/dGhpcy5iYW5uZXJOYW1lPVllOkwuQ2hvaWNlc0Jhbm5lcj90aGlzLmJhbm5lck5hbWU9ZXQ6TC5Ob0Jhbm5lciYmKHRoaXMuYmFubmVyTmFtZT10dCl9LHQucHJvdG90eXBlLnBvcHVsYXRlR1BDU2lnbmFsPWZ1bmN0aW9uKCl7dmFyIGU9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5HUENfRU5BQkxFRCksdD10aGlzLmdwY0ZvckFHcnBFbmFibGVkJiZ0aGlzLmdwY0VuYWJsZWQ/IjEiOiIwIjt0aGlzLmdwY1ZhbHVlQ2hhbmdlZD1lP2UhPXQ6dGhpcy5ncGNGb3JBR3JwRW5hYmxlZCxULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5HUENfRU5BQkxFRCx0KX0sdC5wcm90b3R5cGUucG9wdWxhdGVHUENCcm93c2VyU2lnbmFsPWZ1bmN0aW9uKCl7dmFyIGU9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5HUENfQnJvd3Nlcl9GbGFnKSx0PXRoaXMuZ3BjRW5hYmxlZD8iMSI6IjAiO3RoaXMuZ3BjQnJvd3NlclZhbHVlQ2hhbmdlZD1lIT09dCxULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5HUENfQnJvd3Nlcl9GbGFnLHQpfSx0LnByb3RvdHlwZS5pbml0R0NNPWZ1bmN0aW9uKCl7dmFyIG89W10sZT0oT2JqZWN0LmtleXModGhpcy5ydWxlLlN0YXRlcykuZm9yRWFjaChmdW5jdGlvbih0KXtiLnJ1bGUuU3RhdGVzW3RdLmZvckVhY2goZnVuY3Rpb24oZSl7by5wdXNoKCh0KyItIitlKS50b1VwcGVyQ2FzZSgpKX0pfSksYi5ydWxlLkNvdW50cmllcy5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIGUudG9VcHBlckNhc2UoKX0pKTtiLmdjbUNvdW50cmllcz1lLmNvbmNhdChvKX0sdC5wcm90b3R5cGUuZ2V0UmVnaW9uRGV0YWlsc09uUnVsZVNldD1mdW5jdGlvbihlLHQpe3ZhciBvLG47dCYmMTx0Lmxlbmd0aCYmKG89WyJjbyIsInZhIiwidXQiXSwxPD0obj10LmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hby5pbmNsdWRlcyhlKX0pKS5sZW5ndGgpJiZuLmxlbmd0aDx0Lmxlbmd0aCYmKGUuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50cz0yKX07dmFyIGVvPXQ7ZnVuY3Rpb24gdCgpe3ZhciB0PXRoaXM7dGhpcy5ETlRFbmFibGVkPSJ5ZXMiPT09bmF2aWdhdG9yLmRvTm90VHJhY2t8fCIxIj09PW5hdmlnYXRvci5kb05vdFRyYWNrLHRoaXMuZ3BjRW5hYmxlZD0hMSx0aGlzLmdwY0ZvckFHcnBFbmFibGVkPSExLHRoaXMucGFnZVB1c2hlZERvd249ITEsdGhpcy5pYWJHcm91cHM9e3B1cnBvc2VzOnt9LGxlZ0ludFB1cnBvc2VzOnt9LHNwZWNpYWxQdXJwb3Nlczp7fSxmZWF0dXJlczp7fSxzcGVjaWFsRmVhdHVyZXM6e319LHRoaXMuaWFiVHlwZT1udWxsLHRoaXMuZ3JwQ29udGFpbkxlZ2FsT3B0T3V0PSExLHRoaXMucHVycG9zZU9uZVRyZWF0bWVudD0hMSx0aGlzLmlnbm9yZUluamVjdGluZ0h0bWxDc3M9ITEsdGhpcy5pZ25vcmVHb29nbGVBbmx5dGljc0NhbGw9ITEsdGhpcy5tb2JpbGVPbmxpbmVVUkw9W10sdGhpcy5pYWJHcnBJZE1hcD17fSx0aGlzLmlhYkdycHM9W10sdGhpcy5jb25zZW50YWJsZUdycHM9W10sdGhpcy5jb25zZW50YWJsZUltcGxpZWRDb25zZW50R3JvdXA9W10sdGhpcy5jb25zZW50YWJsZUlhYkdycHM9W10sdGhpcy5kb21haW5HcnBzPXt9LHRoaXMudGhpcmRQYXJ0eWlGcmFtZUxvYWRlZD0hMSx0aGlzLnRoaXJkUGFydHlpRnJhbWVSZXNvbHZlPW51bGwsdGhpcy50aGlyZFBhcnR5aUZyYW1lUHJvbWlzZT1uZXcgUHJvbWlzZShmdW5jdGlvbihlKXt0LnRoaXJkUGFydHlpRnJhbWVSZXNvbHZlPWV9KSx0aGlzLmlzT3B0SW5Nb2RlPSExLHRoaXMuaXNTb2Z0T3B0SW5Nb2RlPSExLHRoaXMuZ3BjVmFsdWVDaGFuZ2VkPSExLHRoaXMuZ3BjQnJvd3NlclZhbHVlQ2hhbmdlZD0hMSx0aGlzLmNvbmRpdGlvbmFsTG9naWNFbmFibGVkPSExLHRoaXMuYWxsQ29uZGl0aW9uc0ZhaWxlZD0hMSx0aGlzLmNhblVzZUNvbmRpdGlvbmFsTG9naWM9ITEsdGhpcy5ndG1VcGRhdGVkaW5TdHViPSExLHRoaXMuZ2NtRGV2SWRTZXQ9ITEsdGhpcy5tYWtlR1BDT3JETlRDb25zZW50Q2FsbD0hMCx0aGlzLnRjZjJBY3RpdmVWZW5kb3JzPXthbGw6MCxwdXI6bmV3IE1hcCxmdDpuZXcgTWFwLHNwbF9wdXI6bmV3IE1hcCxzcGxfZnQ6bmV3IE1hcCxzdGFjazpuZXcgTWFwfSx0aGlzLnRjZlBhcmVudE1hcD17cHVyOm5ldyBNYXAsZnQ6bmV3IE1hcCxzcGxfcHVyOm5ldyBNYXAsc3BsX2Z0Om5ldyBNYXB9fXZhciBiLEw9e307ZnVuY3Rpb24gdG8oKXt0aGlzLm90U0RLVmVyc2lvbj0iMjAyNTEwLjIuMCIsdGhpcy5pc0FNUD0hMSx0aGlzLmFtcERhdGE9e30sdGhpcy5vdENvb2tpZURhdGE9d2luZG93Lk9uZVRydXN0JiZ3aW5kb3cuT25lVHJ1c3Qub3RDb29raWVEYXRhfHxbXSx0aGlzLnN5bmNSZXF1aXJlZD0hMSx0aGlzLmlzSWFiU3luY2VkPSExLHRoaXMuaXNHYWNTeW5jZWQ9ITEsdGhpcy5ncnBzU3luY2VkPVtdLHRoaXMuc3luY2VkVmFsaWRHcnA9ITEsdGhpcy5ncm91cHNDb25zZW50PVtdLHRoaXMuaW5pdGlhbEdyb3Vwc0NvbnNlbnQ9W10sdGhpcy5ob3N0c0NvbnNlbnQ9W10sdGhpcy5pbml0aWFsSG9zdENvbnNlbnQ9W10sdGhpcy5nZW5WZW5kb3JzQ29uc2VudD17fSx0aGlzLnZzQ29uc2VudD1uZXcgTWFwLHRoaXMuaW5pdGlhbEdlblZlbmRvcnNDb25zZW50PXt9LHRoaXMudmVuZG9ycz17bGlzdDpbXSxzZWFyY2hQYXJhbToiIix2ZW5kb3JUZW1wbGF0ZTpudWxsLHNlbGVjdGVkVmVuZG9yczpbXSxzZWxlY3RlZFB1cnBvc2U6W10sc2VsZWN0ZWRMZWdJbnQ6W10sc2VsZWN0ZWRMZWdJbnRWZW5kb3JzOltdLHNlbGVjdGVkU3BlY2lhbEZlYXR1cmVzOltdfSx0aGlzLmluaXRpYWxWZW5kb3JzPXtsaXN0OltdLHNlYXJjaFBhcmFtOiIiLHZlbmRvclRlbXBsYXRlOm51bGwsc2VsZWN0ZWRWZW5kb3JzOltdLHNlbGVjdGVkUHVycG9zZTpbXSxzZWxlY3RlZExlZ0ludDpbXSxzZWxlY3RlZExlZ0ludFZlbmRvcnM6W10sc2VsZWN0ZWRTcGVjaWFsRmVhdHVyZXM6W119LHRoaXMub25lVHJ1c3RJQUJDb25zZW50PXtwdXJwb3NlOltdLGxlZ2ltYXRlSW50ZXJlc3Q6W10sZmVhdHVyZXM6W10sc3BlY2lhbEZlYXR1cmVzOltdLHNwZWNpYWxQdXJwb3NlczpbXSx2ZW5kb3JzOltdLGxlZ0ludFZlbmRvcnM6W10sdmVuZG9yTGlzdDpudWxsLElBQkNvb2tpZVZhbHVlOiIifSx0aGlzLmluaXRpYWxPbmVUcnVzdElBQkNvbnNlbnQ9e3B1cnBvc2U6W10sbGVnaW1hdGVJbnRlcmVzdDpbXSxmZWF0dXJlczpbXSxzcGVjaWFsRmVhdHVyZXM6W10sc3BlY2lhbFB1cnBvc2VzOltdLHZlbmRvcnM6W10sbGVnSW50VmVuZG9yczpbXSx2ZW5kb3JMaXN0Om51bGwsSUFCQ29va2llVmFsdWU6IiJ9LHRoaXMuYWRkdGxWZW5kb3JzPXt2ZW5kb3JDb25zZW50OltdLHZlbmRvclNlbGVjdGVkOnt9fSx0aGlzLmluaXRpYWxBZGR0bFZlbmRvcnM9e3ZlbmRvckNvbnNlbnQ6W10sdmVuZG9yU2VsZWN0ZWQ6e319LHRoaXMuYWRkdGxDb25zZW50VmVyc2lvbj0iMX4iLHRoaXMuZGVsZXRlZEdvb2dsZVZlbmRvcnM9e30sdGhpcy5pbml0aWFsQWRkdGxWZW5kb3JzTGlzdD17fSx0aGlzLmlzQWRkdGxDb25zZW50PSExLHRoaXMuY3VycmVudEdsb2JhbEZpbHRlcmVkTGlzdD1bXSx0aGlzLmZpbHRlckJ5SUFCQ2F0ZWdvcmllcz1bXSx0aGlzLmZpbHRlckJ5Q2F0ZWdvcmllcz1bXSx0aGlzLmhvc3RzPXtob3N0VGVtcGxhdGU6bnVsbCxob3N0Q29va2llVGVtcGxhdGU6bnVsbH0sdGhpcy5nZW5lcmFsVmVuZG9ycz17Z3ZUZW1wbGF0ZTpudWxsLGd2Q29va2llVGVtcGxhdGU6bnVsbH0sdGhpcy5vbmVUcnVzdEFsd2F5c0FjdGl2ZUhvc3RzPVtdLHRoaXMuYWx3YXlzQWN0aXZlR2VuVmVuZG9ycz1bXSx0aGlzLnNvZnRPcHRJbkdlblZlbmRvcnM9W10sdGhpcy5vcHRJbkdlblZlbmRvcnM9W10sdGhpcy5vcHRhbm9uSG9zdExpc3Q9W10sdGhpcy5zcmNFeGVjR3Jwcz1bXSx0aGlzLmh0bWxFeGVjR3Jwcz1bXSx0aGlzLnNyY0V4ZWNHcnBzVGVtcD1bXSx0aGlzLmh0bWxFeGVjR3Jwc1RlbXA9W10sdGhpcy5pc1BDVmlzaWJsZT0hMSx0aGlzLmRhdGFHcm91cFN0YXRlPVtdLHRoaXMudXNlckxvY2F0aW9uPXtjb3VudHJ5OiIiLHN0YXRlOiIiLHN0YXRlTmFtZToiIn0sdGhpcy52ZW5kb3JzU2V0dGluZz17fSx0aGlzLmRzUGFyYW1zPXt9LHRoaXMuaXNWMlN0dWI9ITEsdGhpcy5maXJlT25ldHJ1c3RHcnA9ITEsdGhpcy5zaG93VmVuZG9yU2VydmljZT0hMSx0aGlzLnNob3dHZW5lcmFsVmVuZG9ycz0hMSx0aGlzLmdlblZlbk9wdE91dEVuYWJsZWQ9ITEsdGhpcy5ncGNDb25zZW50VHhuPSExLHRoaXMudnNJc0FjdGl2ZUFuZE9wdE91dD0hMSx0aGlzLmJBc3NldD17fSx0aGlzLnBjQXNzZXQ9e30sdGhpcy5jc0J0bkFzc2V0PXt9LHRoaXMuY1N0eWxlcz17fSx0aGlzLnZlbmRvckRvbUluaXQ9ITEsdGhpcy5nZW5WZW5kb3JEb21Jbml0PSExLHRoaXMuc3luY050ZnlDb250ZW50PXt9LHRoaXMubnRmeVJlcXVpcmVkPSExLHRoaXMuc2tpcEFkZGluZ0hUTUw9ITEsdGhpcy5ibnJBbmltYXRpb25JblByb2c9ITEsdGhpcy5pc1ByZXZpZXc9ITEsdGhpcy5nZW9Gcm9tVXJsPSIiLHRoaXMuaGlkZUJhbm5lcj0hMSx0aGlzLnNldEF0dHJpYnV0ZVBvbHlmaWxsSXNBY3RpdmU9ITEsdGhpcy5zdG9yYWdlQmFzZVVSTD0iIix0aGlzLmlzS2V5Ym9hcmRVc2VyPSExLHRoaXMuaXNCb3RIZWFkZXI9ITEsdGhpcy5jdXN0b21lclN0eWxlcz1uZXcgTWFwLHRoaXMuc2hvd1RyYWNraW5nVGVjaD0hMSx0aGlzLmN1cnJlbnRUcmFja2luZ1RlY2g9e319dG8ucHJvdG90eXBlLmdldFZlbmRvcnNJbkRvbWFpbj1mdW5jdGlvbigpe3ZhciBlLHQ7cmV0dXJuIF8uX3ZlbmRvcnNJbkRvbWFpbnx8KGU9bmV3IE1hcCx0PW51bGwhPSh0PUwuR3JvdXBzKT90OltdLF8uc2V0VmVuZG9yU2VydmljZXNNYXAodCxlKSxfLl92ZW5kb3JzSW5Eb21haW49ZSksXy5fdmVuZG9yc0luRG9tYWlufSx0by5wcm90b3R5cGUuc2V0VmVuZG9yU2VydmljZXNNYXA9ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG8sbj0wLHI9ZTtuPHIubGVuZ3RoO24rKyl7dmFyIGk9cltuXTtpLlN1Ykdyb3VwcyYmMDxpLlN1Ykdyb3Vwcy5sZW5ndGgmJl8uc2V0VmVuZG9yU2VydmljZXNNYXAoaS5TdWJHcm91cHMsdCk7Zm9yKHZhciBzPTAsYT1udWxsIT0obz1pLlZlbmRvclNlcnZpY2VzKT9vOltdO3M8YS5sZW5ndGg7cysrKXt2YXIgbD1hW3NdLGM9T2JqZWN0LmFzc2lnbih7fSxpKTtkZWxldGUgYy5WZW5kb3JTZXJ2aWNlcyxsLmdyb3VwUmVmPWMsdC5zZXQobC5DdXN0b21WZW5kb3JTZXJ2aWNlSWQsbCl9fX0sdG8ucHJvdG90eXBlLmNsZWFyVmVuZG9yc0luRG9tYWluPWZ1bmN0aW9uKCl7Xy5fdmVuZG9yc0luRG9tYWluPW51bGx9LHRvLnByb3RvdHlwZS5jaGVja1ZlbmRvckNvbnNlbnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIF8udmVuZG9yc1NldHRpbmdbZV0mJl8udmVuZG9yc1NldHRpbmdbZV0uY29uc2VudH07dmFyIF89bmV3IHRvLGw9XztmdW5jdGlvbiBuKCl7dGhpcy5JQUJUQ0ZfREVGQVVMVF9MQU5HVUFHRT0iRU4iLHRoaXMuSUFCVENGX0RFRkFVTFRfU0VSQklBTj0iU1ItQ1lSTCIsdGhpcy5JQUJUQ0ZfREVGQVVMVF9QT1JUVUdVRVNFPSJQVC1QVCIsdGhpcy5JQUJUQ0ZfU1VQUE9SVEVEX0xBTkdVQUdFUz1uZXcgU2V0KFsiQVIiLCJCRyIsIkJTIiwiQ0EiLCJDUyIsIkNZIiwiREEiLCJERSIsIkVMIiwiRU4iLCJFUyIsIkVUIiwiRVUiLCJGSSIsIkZSIiwiR0wiLCJIRSIsIkhSIiwiSFUiLCJISSIsIklEIiwiSVQiLCJKQSIsIktBIiwiS08iLCJMVCIsIkxWIiwiTUsiLCJNUyIsIk1UIiwiTkwiLCJOTyIsIlBMIiwiUFQtQlIiLCJQVC1QVCIsIlJPIiwiUlUiLCJTSyIsIlNMIiwiU1EiLCJTUi1MQVROIiwiU1ItQ1lSTCIsIlNWIiwiU1ciLCJUSCIsIlRMIiwiVFIiLCJVSyIsIlZJIiwiWkgiLCJaSC1IQU5UIl0pfW4ucHJvdG90eXBlLmluaXRpYWxpemVCYW5uZXJWYXJpYWJsZXM9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5Eb21haW5EYXRhO2IuaWFiVHlwZT10LklhYlR5cGUsQT10LlBDVGVtcGxhdGVVcGdyYWRlP1J0OkZ0LGs9IklBQjIiPT09Yi5pYWJUeXBlP010OlV0LGIuaW5pdChlKSxfLnNob3dHZW5lcmFsVmVuZG9ycz1MLkdlbmVyYWxWZW5kb3JzRW5hYmxlZCYmTC5QQ1RlbXBsYXRlVXBncmFkZSxfLnNob3dWZW5kb3JTZXJ2aWNlPVMuZnAuQ29va2llVjJWZW5kb3JTZXJ2aWNlU2NyaXB0JiZMLlZlbmRvclNlcnZpY2VDb25maWcuUENWU0VuYWJsZSYmIWIuaXNJYWIyb3J2MlRlbXBsYXRlJiZMLlBDVGVtcGxhdGVVcGdyYWRlLF8udnNJc0FjdGl2ZUFuZE9wdE91dD1fLnNob3dWZW5kb3JTZXJ2aWNlJiZMLlZlbmRvclNlcnZpY2VDb25maWcuUENWU09wdE91dCxfLnNob3dUcmFja2luZ1RlY2g9Uy5mcC5Db29raWVWMlRyYWNraW5nVGVjaFByZWZDZW50ZXImJkwuQWRkaXRpb25hbFRlY2hub2xvZ2llc0NvbmZpZy5QQ1Nob3dUcmFja2luZ1RlY2gsXy5nZW5WZW5PcHRPdXRFbmFibGVkPV8uc2hvd0dlbmVyYWxWZW5kb3JzJiZMLkdlblZlbk9wdE91dCxJLmFkZExvZ29VcmxzKCksdGhpcy5lbnN1cmVBbWF6b25Db25zZW50KHQpLHRoaXMuc2V0R2VvbG9jYXRpb25JbkNvb2tpZXMoKSx0aGlzLnNldE9yVXBkYXRlM3JkUGFydHlJQUJDb25zZW50RmxhZygpfSxuLnByb3RvdHlwZS5lbnN1cmVBbWF6b25Db25zZW50PWZ1bmN0aW9uKGUpe3ZhciB0LG8sbixyLGk7dHJ5e3dpbmRvdyYmImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5hbXpuQ29uc2VudHx8bnVsbCE9KHQ9TCkmJnQuQUNNRGF0YSYmTC5BQ01EYXRhLkVuYWJsZWQmJihvPWUuQW1hem9uQ29uc2VudFNyY1VybCkmJiFkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzY3JpcHRbc3JjPSInK28rJyJdJykmJigobj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSkuc3JjPW8sbi5hc3luYz0hMCxuLnR5cGU9InRleHQvamF2YXNjcmlwdCIsKHI9d2luZG93Lm90U3R1YkRhdGF8fHt9KS5ub25jZSYmbi5zZXRBdHRyaWJ1dGUoIm5vbmNlIixyLm5vbmNlKSwoaT1yLmNyb3NzT3JpZ2lufHxfLmNyb3NzT3JpZ2luKSYmbi5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIixpKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKG4pKX1jYXRjaChlKXt0cnl7Y29uc29sZS5pbmZvKCJPVCAtIEZhaWxlZCB0byBlbnN1cmUgQW1hem9uIENvbnNlbnQgc2NyaXB0IixlKX1jYXRjaChlKXt9fX0sbi5wcm90b3R5cGUuaW5pdGlhbGl6ZVZlbmRvckluT3ZlcnJpZGRlblZlbmRvcnM9ZnVuY3Rpb24oZSx0KXtMLk92ZXJyaWRkZW5WZW5kb3JzW2VdPXtkaXNhYmxlZENQOltdLGRpc2FibGVkTElQOltdLGFjdGl2ZTp0LGxlZ0ludDohMSxjb25zZW50OiExfX0sbi5wcm90b3R5cGUuYXBwbHlHbG9iYWxSZXN0cmljdGlvbnNvbk5ld1ZlbmRvcj1mdW5jdGlvbihlLHQsbyxuKXt2YXIgcj1MLkdsb2JhbFJlc3RyaWN0aW9ucyxpPUwuT3ZlcnJpZGRlblZlbmRvcnM7c3dpdGNoKEwuUHVibGlzaGVyLnJlc3RyaWN0aW9uc1tvXXx8KEwuUHVibGlzaGVyLnJlc3RyaWN0aW9uc1tvXT17fSksaVt0XXx8dGhpcy5pbml0aWFsaXplVmVuZG9ySW5PdmVycmlkZGVuVmVuZG9ycyh0LCEwKSxpW3RdLmRpc2FibGVkQ1B8fChpW3RdLmRpc2FibGVkQ1A9W10pLGlbdF0uZGlzYWJsZWRMSVB8fChpW3RdLmRpc2FibGVkTElQPVtdKSxyW29dKXtjYXNlIHBlLkRpc2FibGVkOihuP2lbdF0uZGlzYWJsZWRDUDppW3RdLmRpc2FibGVkTElQKS5wdXNoKG8pLEwuUHVibGlzaGVyLnJlc3RyaWN0aW9uc1tvXVt0XT1wZS5EaXNhYmxlZDticmVhaztjYXNlIHBlLkNvbnNlbnQ6bj8oaVt0XS5jb25zZW50PSEwLEwuUHVibGlzaGVyLnJlc3RyaWN0aW9uc1tvXVt0XT1wZS5Db25zZW50KTooaVt0XS5kaXNhYmxlZExJUC5wdXNoKG8pLHRoaXMuY2hlY2tGbGV4aWJsZVB1cnBvc2UoZSx0LG8sITEpKTticmVhaztjYXNlIHBlLkxlZ0ludDpuPyhpW3RdLmRpc2FibGVkQ1AucHVzaChvKSx0aGlzLmNoZWNrRmxleGlibGVQdXJwb3NlKGUsdCxvLCEwKSk6KGlbdF0ubGVnSW50PSEwLEwuUHVibGlzaGVyLnJlc3RyaWN0aW9uc1tvXVt0XT1wZS5MZWdJbnQpO2JyZWFrO2Nhc2Ugdm9pZCAwOm4/aVt0XS5jb25zZW50PSEwOmlbdF0ubGVnSW50PSEwfX0sbi5wcm90b3R5cGUuY2hlY2tGbGV4aWJsZVB1cnBvc2U9ZnVuY3Rpb24oZSx0LG8sbil7ZS5mbGV4aWJsZVB1cnBvc2VzLmluY2x1ZGVzKG8pPyhuP0wuT3ZlcnJpZGRlblZlbmRvcnNbdF0ubGVnSW50PSEwOkwuT3ZlcnJpZGRlblZlbmRvcnNbdF0uY29uc2VudD0hMCxMLlB1Ymxpc2hlci5yZXN0cmljdGlvbnNbb11bdF09bj9wZS5MZWdJbnQ6cGUuQ29uc2VudCk6TC5QdWJsaXNoZXIucmVzdHJpY3Rpb25zW29dW3RdPXBlLkRpc2FibGVkfSxuLnByb3RvdHlwZS5nZXRBY3RpdmVQdXJwb3Nlc0ZvclZlbmRvcj1mdW5jdGlvbihlLHQpe3ZhciBvPUwuT3ZlcnJpZGRlblZlbmRvcnNbdF0mJkwuT3ZlcnJpZGRlblZlbmRvcnNbdF0uZGlzYWJsZWRDUCxuPUwuT3ZlcnJpZGRlblZlbmRvcnNbdF0mJkwuT3ZlcnJpZGRlblZlbmRvcnNbdF0uZGlzYWJsZWRMSVAsbz1vP3RoaXMucmVtb3ZlRWxlbWVudHNGcm9tQXJyYXkoZS5wdXJwb3NlcyxMLk92ZXJyaWRkZW5WZW5kb3JzW3RdLmRpc2FibGVkQ1ApfHxbXTplLnB1cnBvc2VzfHxbXSxuPW4/dGhpcy5yZW1vdmVFbGVtZW50c0Zyb21BcnJheShlLmxlZ0ludFB1cnBvc2VzLEwuT3ZlcnJpZGRlblZlbmRvcnNbdF0uZGlzYWJsZWRMSVApfHxbXTplLmxlZ0ludFB1cnBvc2VzfHxbXSx0PVUobyxuLGUuZmxleGlibGVQdXJwb3Nlc3x8W10pO3JldHVybiBuZXcgU2V0KHQpfSxuLnByb3RvdHlwZS5jYW5JbmZlckdDTVNldHRpbmdzRnJvbVRDU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIGIuaXNUY2ZWMlRlbXBsYXRlJiZMLkdvb2dsZUNvbnNlbnQuR0NFbmFibGV9LG4ucHJvdG90eXBlLnNob3VsZE92ZXJyaWRlVENEYXRhPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5jYW5JbmZlckdDTVNldHRpbmdzRnJvbVRDU3RyaW5nKCk7cmV0dXJuIEwuVXNlR29vZ2xlVmVuZG9yc3x8ZX0sbi5wcm90b3R5cGUuc2V0QWN0aXZlVmVuZG9yQ291bnQ9ZnVuY3Rpb24obyxlKXt2YXIgbixyLGkscz10aGlzLGE9W107IklBQjJWMiI9PT1iLmdldFJlZ2lvblJ1bGVUeXBlKCkmJihuPW5ldyBTZXQscj1iLnRjZjJBY3RpdmVWZW5kb3JzLChpPXRoaXMuZ2V0QWN0aXZlUHVycG9zZXNGb3JWZW5kb3IobyxlKSkuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1yLnB1ci5nZXQoZSl8fDA7ci5wdXIuc2V0KGUsdCsxKSxiLnRjZlBhcmVudE1hcC5wdXIuZ2V0KGUpJiZuLmFkZChiLnRjZlBhcmVudE1hcC5wdXIuZ2V0KGUpKX0pLG8uc3BlY2lhbFB1cnBvc2VzJiZvLnNwZWNpYWxQdXJwb3Nlcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PXIuc3BsX3B1ci5nZXQoZSl8fDA7ci5zcGxfcHVyLnNldChlLHQrMSksYi50Y2ZQYXJlbnRNYXAuc3BsX3B1ci5nZXQoZSkmJihuLmFkZChiLnRjZlBhcmVudE1hcC5zcGxfcHVyLmdldChlKSksdD1iLnRjZlBhcmVudE1hcC5zcGxfcHVyLmdldChlKSxzLnVwZGF0ZVBhcmVudENvdW50QnlUeXBlKHQscixvLGEsaSkpfSksby5mZWF0dXJlcyYmby5mZWF0dXJlcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PXIuZnQuZ2V0KGUpfHwwO3IuZnQuc2V0KGUsdCsxKSxiLnRjZlBhcmVudE1hcC5mdC5nZXQoZSkmJihuLmFkZChiLnRjZlBhcmVudE1hcC5mdC5nZXQoZSkpLHQ9Yi50Y2ZQYXJlbnRNYXAuZnQuZ2V0KGUpLHMudXBkYXRlUGFyZW50Q291bnRCeVR5cGUodCxyLG8sYSxpKSl9KSxvLnNwZWNpYWxGZWF0dXJlcyYmby5zcGVjaWFsRmVhdHVyZXMuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1yLnNwbF9mdC5nZXQoZSl8fDA7ci5zcGxfZnQuc2V0KGUsdCsxKSxiLnRjZlBhcmVudE1hcC5zcGxfZnQuZ2V0KGUpJiYobi5hZGQoYi50Y2ZQYXJlbnRNYXAuc3BsX2Z0LmdldChlKSksdD1iLnRjZlBhcmVudE1hcC5zcGxfZnQuZ2V0KGUpLHMudXBkYXRlUGFyZW50Q291bnRCeVR5cGUodCxyLG8sYSxpKSl9KSxuLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9ci5zdGFjay5nZXQoZSl8fDA7ci5zdGFjay5zZXQoZSx0KzEpfSkpfSxuLnByb3RvdHlwZS51cGRhdGVQYXJlbnRDb3VudEJ5VHlwZT1mdW5jdGlvbihlLHQsbyxuLHIpe3ZhciBpLHMsYSxsO2UmJiFuLmluY2x1ZGVzKGUpJiYoaT0hMSxhPWUuc3BsaXQoIl8iKSxzPVsiSUFCMlYyIiwiSUZFMlYyIiwiSVNQMlYyIiwiSVNGMlYyIl0uaW5jbHVkZXMoYVswXSksMTxhLmxlbmd0aCkmJnMmJihzPXRoaXMucmVhZFByb3Aod3QsYVswXSksYT1wYXJzZUludChhWzFdKSxsPXZvaWQgMCwocz09PXd0LklBQjJWMiYmIXIuaGFzKGEpfHxzIT09d3QuSUFCMlYyJiYobD1vW3RoaXMucmVhZFByb3AoQnQscyldKSYmIWwuaW5jbHVkZXMoYSkpJiYoaT0hMCkscykmJmkmJigocj10W3NdLmdldChhKSk/dFtzXS5zZXQoYSxyKzEpOih0W3NdLnNldChhLDEpLG4ucHVzaChlKSkpfSxuLnByb3RvdHlwZS5yZWFkUHJvcD1mdW5jdGlvbihlLHQpe3ZhciBvLG49IiI7Zm9yKG8gaW4gZSlpZih0PT09byl7bj1lW29dO2JyZWFrfXJldHVybiBufSxuLnByb3RvdHlwZS5pc1ZlbmRvckludmFsaWQ9ZnVuY3Rpb24oZSx0KXt2YXIgbz0hMSxuPSFlLnB1cnBvc2VzLmxlbmd0aCYmIWUuZmxleGlibGVQdXJwb3Nlcy5sZW5ndGgscj0oTC5PdmVycmlkZGVuVmVuZG9yc1t0XSYmIUwuT3ZlcnJpZGRlblZlbmRvcnNbdF0uY29uc2VudCYmKG49ITApLCEwKTtyZXR1cm4gYi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSYmZS5sZWdJbnRQdXJwb3Nlcy5sZW5ndGgmJighTC5PdmVycmlkZGVuVmVuZG9yc1t0XXx8TC5PdmVycmlkZGVuVmVuZG9yc1t0XS5sZWdJbnQpJiYocj0hMSksbz0hbnx8IXJ8fGUuc3BlY2lhbFB1cnBvc2VzLmxlbmd0aHx8ZS5mZWF0dXJlcy5sZW5ndGh8fGUuc3BlY2lhbEZlYXR1cmVzLmxlbmd0aD9vOiEwfSxuLnByb3RvdHlwZS5yZW1vdmVJbkFjdGl2ZVZlbmRvcnNGb3JUY2Y9ZnVuY3Rpb24ocil7dmFyIGk9dGhpcyxzPV8uaWFiRGF0YS52ZW5kb3JMaXN0VmVyc2lvbixlPUwuUHVibGlzaGVyLGE9TC5HbG9iYWxSZXN0cmljdGlvbkVuYWJsZWQ7MCE9PU9iamVjdC5rZXlzKGUpLmxlbmd0aCYmZSYmT2JqZWN0LmtleXMoZS5yZXN0cmljdGlvbnMpLmxlbmd0aCxPYmplY3Qua2V5cyhyLnZlbmRvcnMpLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIG89ci52ZW5kb3JzW3RdLGU9ITEsbj1pLmdldFZlbmRvckdWTFZlcnNpb24obyksbj0oczxuJiYoTC5OZXdWZW5kb3JzSW5hY3RpdmVFbmFibGVkPyhpLmluaXRpYWxpemVWZW5kb3JJbk92ZXJyaWRkZW5WZW5kb3JzKHQsITEpLGU9ITApOmEmJihvLnB1cnBvc2VzLmZvckVhY2goZnVuY3Rpb24oZSl7aS5hcHBseUdsb2JhbFJlc3RyaWN0aW9uc29uTmV3VmVuZG9yKG8sdCxlLCEwKX0pLG8ubGVnSW50UHVycG9zZXMuZm9yRWFjaChmdW5jdGlvbihlKXtpLmFwcGx5R2xvYmFsUmVzdHJpY3Rpb25zb25OZXdWZW5kb3Iobyx0LGUsITEpfSkpKSxMLk92ZXJyaWRkZW5WZW5kb3JzW3RdJiYhTC5PdmVycmlkZGVuVmVuZG9yc1t0XS5hY3RpdmUmJihlPSEwKSwtMTxMLlZlbmRvcnMuaW5kZXhPZihOdW1iZXIodCkpJiYoZT0hMCksaS5pc1ZlbmRvckludmFsaWQobyx0KSk7KGU9ZXx8bikmJmRlbGV0ZSByLnZlbmRvcnNbdF0sZXx8aS5zZXRBY3RpdmVWZW5kb3JDb3VudChvLHQpfSl9LG4ucHJvdG90eXBlLmdldFZlbmRvckdWTFZlcnNpb249ZnVuY3Rpb24oZSl7cmV0dXJuIGIuaXNUY2ZWMlRlbXBsYXRlP2UuaWFiMlYyR1ZMVmVyc2lvbjplLmlhYjJHVkxWZXJzaW9ufSxuLnByb3RvdHlwZS5yZW1vdmVFbGVtZW50c0Zyb21BcnJheT1mdW5jdGlvbihlLHQpe3JldHVybiBlLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hdC5pbmNsdWRlcyhlKX0pfSxuLnByb3RvdHlwZS5zZXRQdWJsaXNoZXJSZXN0cmljdGlvbnM9ZnVuY3Rpb24oKXt2YXIgaSx0LHMsYSxlPUwuUHVibGlzaGVyO2UmJmUucmVzdHJpY3Rpb25zJiYoaT10aGlzLmlhYlN0cmluZ1NESygpLHQ9ZS5yZXN0cmljdGlvbnMscz1fLmlhYkRhdGEsYT1fLm9uZVRydXN0SUFCQ29uc2VudC52ZW5kb3JMaXN0LnZlbmRvcnMsT2JqZWN0LmtleXModCkuZm9yRWFjaChmdW5jdGlvbihvKXt2YXIgbixyPXRbb10sZT1iLmlhYkdyb3Vwcy5wdXJwb3Nlc1tvXTtlJiYobj17ZGVzY3JpcHRpb246ZS5kZXNjcmlwdGlvbixwdXJwb3NlSWQ6ZS5pZCxwdXJwb3NlTmFtZTplLm5hbWV9KSxPYmplY3Qua2V5cyhyKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0O18udmVuZG9yc1NldHRpbmdbZV0mJih0PV8udmVuZG9yc1NldHRpbmdbZV0uYXJySW5kZXgsMT09PXJbZV0mJi0xPT09YVtlXS5wdXJwb3Nlcy5pbmRleE9mKE51bWJlcihvKSk/cy52ZW5kb3JzW3RdLnB1cnBvc2VzLnB1c2gobik6Mj09PXJbZV0mJi0xPT09YVtlXS5sZWdJbnRQdXJwb3Nlcy5pbmRleE9mKE51bWJlcihvKSkmJnMudmVuZG9yc1t0XS5sZWdJbnRQdXJwb3Nlcy5wdXNoKG4pLHQ9aS5wdXJwb3NlUmVzdHJpY3Rpb24oTnVtYmVyKG8pLHJbZV0pLF8udGNNb2RlbC5wdWJsaXNoZXJSZXN0cmljdGlvbnMuYWRkKE51bWJlcihlKSx0KSl9KX0pKX0sbi5wcm90b3R5cGUucG9wdWxhdGVWZW5kb3JMaXN0VENGPWZ1bmN0aW9uKCl7dmFyIHA7cmV0dXJuIEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHQsbyxuLHIsaSxzLGEsbCxjLGQsdTtyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6cmV0dXJuKHQ9dGhpcy5pYWJTdHJpbmdTREsoKSxvPV8uaWFiRGF0YSxuPUkudXBkYXRlQ29ycmVjdElBQlVybChvLmdsb2JhbFZlbmRvckxpc3RVcmwpLHI9IXRoaXMuaXNJQUJDcm9zc0NvbnNlbnRFbmFibGVkKCkscz10aGlzLmdldENvbnNlbnRMYW5ndWFnZSgpLEkuY2hlY2tNb2JpbGVPZmZsaW5lUmVxdWVzdChJLmdldEJhbm5lclZlcnNpb25VcmwoKSkpP1szLDFdOihiLm1vYmlsZU9ubGluZVVSTC5wdXNoKG4pLGk9dC5ndmwocyxuLF8uZ3ZsT2JqKSxbMywzXSk7Y2FzZSAxOnJldHVybiBsPShhPXQpLmd2bCxjPVtzLG51bGxdLFs0LEkub3RGZXRjaE9mZmxpbmVGaWxlKFAuZ2V0UmVsYXRpdmVVUkwobiwhMCkpXTtjYXNlIDI6aT1sLmFwcGx5KGEsYy5jb25jYXQoW2Uuc2VudCgpXSkpLGUubGFiZWw9MztjYXNlIDM6cmV0dXJuIHRoaXMucmVtb3ZlSW5BY3RpdmVWZW5kb3JzRm9yVGNmKGkpLGIudGNmMkFjdGl2ZVZlbmRvcnMuYWxsPU9iamVjdC5rZXlzKGkudmVuZG9ycykubGVuZ3RoLF8ub25lVHJ1c3RJQUJDb25zZW50LnZlbmRvckxpc3Q9aSx0aGlzLmFzc2lnbklBQkRhdGFXaXRoR2xvYmFsVmVuZG9yTGlzdChpKSxkPV8sWzQsdC50Y01vZGVsKGkpXTtjYXNlIDQ6ZC50Y01vZGVsPWUuc2VudCgpLHImJnRoaXMuc2V0UHVibGlzaGVyUmVzdHJpY3Rpb25zKCksXy50Y01vZGVsLmNtcElkPXBhcnNlSW50KG8uY21wSWQpLGIuaXNUY2ZWMlRlbXBsYXRlJiYoXy50Y01vZGVsLnVzZU5vblN0YW5kYXJkVGV4dHM9TC5Vc2VOb25TdGFuZGFyZFN0YWNrcyksXy50Y01vZGVsLmNtcFZlcnNpb249cGFyc2VJbnQoby5jbXBWZXJzaW9uKSwwPCh1PU9iamVjdC5rZXlzKGkudmVuZG9ycykubWFwKE51bWJlcikpLmxlbmd0aCYmbnVsbCE9KHA9bnVsbD09KHA9Xy50Y01vZGVsKT92b2lkIDA6cC52ZW5kb3JzRGlzY2xvc2VkKSYmcC5zZXQodSk7dHJ5e18udGNNb2RlbC5jb25zZW50TGFuZ3VhZ2U9Xy5jb25zZW50TGFuZ3VhZ2V9Y2F0Y2goZSl7Xy50Y01vZGVsLmNvbnNlbnRMYW5ndWFnZT0iRU4ifXJldHVybiBfLnRjTW9kZWwuY29uc2VudFNjcmVlbj1wYXJzZUludChvLmNvbnNlbnRTY3JlZW4pLF8udGNNb2RlbC5pc1NlcnZpY2VTcGVjaWZpYz1yLF8udGNNb2RlbC5wdXJwb3NlT25lVHJlYXRtZW50PWIucHVycG9zZU9uZVRyZWF0bWVudCxMLlB1Ymxpc2hlckNDP18udGNNb2RlbC5wdWJsaXNoZXJDb3VudHJ5Q29kZT1MLlB1Ymxpc2hlckNDOl8udXNlckxvY2F0aW9uLmNvdW50cnkmJihfLnRjTW9kZWwucHVibGlzaGVyQ291bnRyeUNvZGU9Xy51c2VyTG9jYXRpb24uY291bnRyeSksXy5jbXBBcGk9dC5jbXBBcGkoXy50Y01vZGVsLmNtcElkLF8udGNNb2RlbC5jbXBWZXJzaW9uLHIsdGhpcy5zaG91bGRPdmVycmlkZVRDRGF0YSgpP3tnZXRUQ0RhdGE6dGhpcy5vdmVycmlkZVRDRGF0YSxnZXRJbkFwcFRDRGF0YTp0aGlzLm92ZXJyaWRlVENEYXRhfTp2b2lkIDApLG51bGwhPT10aGlzLmFsZXJ0Qm94Q2xvc2VEYXRlKCkmJiF0aGlzLm5lZWRSZWNvbnNlbnQoKXx8dGhpcy5yZXNldFRDTW9kZWwoKSxbMl19fSl9KX0sbi5wcm90b3R5cGUucmVzZXRUQ01vZGVsPWZ1bmN0aW9uKCl7dmFyIGUsdCxvPXRoaXMuaWFiU3RyaW5nU0RLKCksbj1fLnRjTW9kZWwuY2xvbmUoKTtuLnVuc2V0QWxsKCksYi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSYmKGU9Yi5jb25zZW50YWJsZUlhYkdycHMuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlLkhhc0xlZ0ludE9wdE91dCYmZS5UeXBlPT09ay5Hcm91cFR5cGVzLlB1cn0pLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gcGFyc2VJbnQoYi5pYWJHcnBJZE1hcFtlLkN1c3RvbUdyb3VwSWRdKX0pLHQ9T2JqZWN0LmtleXMoXy52ZW5kb3JzU2V0dGluZykuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBfLnZlbmRvcnNTZXR0aW5nW2VdLmxlZ0ludH0pLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gcGFyc2VJbnQoZSl9KSxuLnB1cnBvc2VMZWdpdGltYXRlSW50ZXJlc3RzLnNldChlKSxuLnZlbmRvckxlZ2l0aW1hdGVJbnRlcmVzdHMuc2V0KHQpLG4uaXNTZXJ2aWNlU3BlY2lmaWMpJiZuLnB1Ymxpc2hlckxlZ2l0aW1hdGVJbnRlcmVzdHMuc2V0KGUpO3RyeXt2YXIgcixpPV8ub25lVHJ1c3RJQUJDb25zZW50JiZfLm9uZVRydXN0SUFCQ29uc2VudC52ZW5kb3JMaXN0LHM9aSYmaS52ZW5kb3JzO3MmJm4mJm4udmVuZG9yc0Rpc2Nsb3NlZCYmImZ1bmN0aW9uIj09dHlwZW9mIG4udmVuZG9yc0Rpc2Nsb3NlZC5zZXQmJihyPU9iamVjdC5rZXlzKHMpLm1hcChOdW1iZXIpKS5sZW5ndGgmJm4udmVuZG9yc0Rpc2Nsb3NlZC5zZXQocil9Y2F0Y2goZSl7Y29uc29sZS5pbmZvKGUpfV8uY21wQXBpLnVwZGF0ZShvLnRjU3RyaW5nKCkuZW5jb2RlKG4pLCEwKX0sbi5wcm90b3R5cGUub3ZlcnJpZGVUQ0RhdGE9ZnVuY3Rpb24oZSx0LG8pe3ZhciBuPU8uY2FuSW5mZXJHQ01TZXR0aW5nc0Zyb21UQ1N0cmluZygpO3QmJnQudGNTdHJpbmcmJihMLlVzZUdvb2dsZVZlbmRvcnMmJih0LmFkZHRsQ29uc2VudD0iIitfLmFkZHRsQ29uc2VudFZlcnNpb24rKF8uaXNBZGR0bENvbnNlbnQ/Xy5hZGR0bFZlbmRvcnMudmVuZG9yQ29uc2VudC5qb2luKCIuIik6IiIpKSxuKSYmKHQuZW5hYmxlQWR2ZXJ0aXNlckNvbnNlbnRNb2RlPSEwKSwiZnVuY3Rpb24iPT10eXBlb2YgZT9lKHQsbyk6Y29uc29sZS5lcnJvcigiX190Y2ZhcGkgcmVjZWl2ZWQgaW52YWxpZCBwYXJhbWV0ZXJzLiIpfSxuLnByb3RvdHlwZS5zZXRJYWJEYXRhPWZ1bmN0aW9uKCl7Xy5pYWJEYXRhPWIuaXNUY2ZWMlRlbXBsYXRlP1MubW9kdWxlSW5pdGlhbGl6ZXIuSWFiMlYyRGF0YTpTLm1vZHVsZUluaXRpYWxpemVyLklhYlYyRGF0YSxfLmlhYkRhdGEuY29uc2VudExhbmd1YWdlPV8uY29uc2VudExhbmd1YWdlfSxuLnByb3RvdHlwZS5hc3NpZ25JQUJEYXRhV2l0aEdsb2JhbFZlbmRvckxpc3Q9ZnVuY3Rpb24obyl7dmFyIHI9dGhpcyxpPUwuT3ZlcnJpZGRlblZlbmRvcnMscz0oXy5pYWJEYXRhLnZlbmRvckxpc3RWZXJzaW9uPW8udmVuZG9yTGlzdFZlcnNpb24sXy5pYWJEYXRhLnZlbmRvcnM9W10sTC5JQUJEYXRhQ2F0ZWdvcmllcyk7T2JqZWN0LmtleXMoby52ZW5kb3JzKS5mb3JFYWNoKGZ1bmN0aW9uKG4pe18udmVuZG9yc1NldHRpbmdbbl09e2NvbnNlbnQ6ITAsbGVnSW50OiEwLGFyckluZGV4OjAsc3BlY2lhbFB1cnBvc2VzT25seTohMX07dmFyIGU9e30sdD1vLnZlbmRvcnNbbl07ZS52ZW5kb3JJZD1uLGUudmVuZG9yTmFtZT10Lm5hbWUsZS5wb2xpY3lVcmw9dC5wb2xpY3lVcmwsci5zZXRJQUIyVmVuZG9yRGF0YSh0LGUpLGUuY29va2llTWF4QWdlPXQuY29va2llTWF4QWdlU2Vjb25kcz9QLmNhbGN1bGF0ZUNvb2tpZUxpZmVzcGFuKHQuY29va2llTWF4QWdlU2Vjb25kcyk6bnVsbCxlLnVzZXNOb25Db29raWVBY2Nlc3M9dC51c2VzTm9uQ29va2llQWNjZXNzLGUuZGV2aWNlU3RvcmFnZURpc2Nsb3N1cmVVcmw9dC5kZXZpY2VTdG9yYWdlRGlzY2xvc3VyZVVybHx8bnVsbCxiLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJJiYhci5zaG91bGRIYXZlVmVuZG9yTElVbnNldChpLHQsbil8fChfLnZlbmRvcnNTZXR0aW5nW25dLmxlZ0ludD0hMSksYi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSYmci52ZW5kb3JIYXNOb0xJQW5kUHVyQ29uc2VudChpLHQsbikmJnQuc3BlY2lhbFB1cnBvc2VzLmxlbmd0aCYmKF8udmVuZG9yc1NldHRpbmdbbl0uc3BlY2lhbFB1cnBvc2VzT25seT0hMCxfLmFueVZlbmRvckhhc09ubHlTcGxQdXI9ITApLHIuY2FuU2hvd0NvbnNlbnRUb2dnbGUoaSx0LG4pLGUuZmVhdHVyZXM9dC5mZWF0dXJlcy5yZWR1Y2UoZnVuY3Rpb24oZSx0KXt0PWIuaWFiR3JvdXBzLmZlYXR1cmVzW3RdO3JldHVybiB0JiZlLnB1c2goe2Rlc2NyaXB0aW9uOnQuZGVzY3JpcHRpb24sZmVhdHVyZUlkOnQuaWQsZmVhdHVyZU5hbWU6dC5uYW1lfSksZX0sW10pLGUuc3BlY2lhbEZlYXR1cmVzPW8udmVuZG9yc1tuXS5zcGVjaWFsRmVhdHVyZXMucmVkdWNlKGZ1bmN0aW9uKGUsdCl7dD1iLmlhYkdyb3Vwcy5zcGVjaWFsRmVhdHVyZXNbdF07cmV0dXJuIHQmJmUucHVzaCh7ZGVzY3JpcHRpb246dC5kZXNjcmlwdGlvbixmZWF0dXJlSWQ6dC5pZCxmZWF0dXJlTmFtZTp0Lm5hbWV9KSxlfSxbXSksci5tYXBEYXRhRGVjbGFyYXRpb25Gb3JWZW5kb3Ioby52ZW5kb3JzW25dLGUscyksci5tYXBEYXRhUmV0ZW50aW9uRm9yVmVuZG9yKG8udmVuZG9yc1tuXSxlKSxlLnB1cnBvc2VzPW8udmVuZG9yc1tuXS5wdXJwb3Nlcy5yZWR1Y2UoZnVuY3Rpb24oZSx0KXt2YXIgbz1iLmlhYkdyb3Vwcy5wdXJwb3Nlc1t0XTtyZXR1cm4hb3x8aVtuXSYmaVtuXS5kaXNhYmxlZENQJiYtMSE9PWlbbl0uZGlzYWJsZWRDUC5pbmRleE9mKHQpfHxlLnB1c2goe2Rlc2NyaXB0aW9uOm8uZGVzY3JpcHRpb24scHVycG9zZUlkOm8uaWQscHVycG9zZU5hbWU6by5uYW1lfSksZX0sW10pLGUubGVnSW50UHVycG9zZXM9by52ZW5kb3JzW25dLmxlZ0ludFB1cnBvc2VzLnJlZHVjZShmdW5jdGlvbihlLHQpe3ZhciBvPWIuaWFiR3JvdXBzLnB1cnBvc2VzW3RdO3JldHVybiFvfHxpW25dJiZpW25dLmRpc2FibGVkTElQJiYtMSE9PWlbbl0uZGlzYWJsZWRMSVAuaW5kZXhPZih0KXx8ZS5wdXNoKHtkZXNjcmlwdGlvbjpvLmRlc2NyaXB0aW9uLHB1cnBvc2VJZDpvLmlkLHB1cnBvc2VOYW1lOm8ubmFtZX0pLGV9LFtdKSxlLnNwZWNpYWxQdXJwb3Nlcz10LnNwZWNpYWxQdXJwb3Nlcy5yZWR1Y2UoZnVuY3Rpb24oZSx0KXt0PWIuaWFiR3JvdXBzLnNwZWNpYWxQdXJwb3Nlc1t0XTtyZXR1cm4gdCYmZS5wdXNoKHtkZXNjcmlwdGlvbjp0LmRlc2NyaXB0aW9uLHB1cnBvc2VJZDp0LmlkLHB1cnBvc2VOYW1lOnQubmFtZX0pLGV9LFtdKSxfLmlhYkRhdGEudmVuZG9ycy5wdXNoKGUpLF8udmVuZG9yc1NldHRpbmdbbl0uYXJySW5kZXg9Xy5pYWJEYXRhLnZlbmRvcnMubGVuZ3RoLTF9KX0sbi5wcm90b3R5cGUuY2FuU2hvd0NvbnNlbnRUb2dnbGU9ZnVuY3Rpb24oZSx0LG8pe3ZhciBuPSEhYi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSYmdC5mbGV4aWJsZVB1cnBvc2VzLmV2ZXJ5KGZ1bmN0aW9uKGUpe3JldHVybiB0LmxlZ0ludFB1cnBvc2VzLmluY2x1ZGVzKGUpfSkscj0hIWIubGVnSW50U2V0dGluZ3MuUEFsbG93TEkmJihlW29dPyFlW29dLmNvbnNlbnQ6bik7KCFlW29dfHxlW29dLmNvbnNlbnQpJiYoZVtvXXx8dC5wdXJwb3Nlcy5sZW5ndGh8fHQuZmxleGlibGVQdXJwb3Nlcy5sZW5ndGgmJih0LmZsZXhpYmxlUHVycG9zZXMubGVuZ3RoLCFuKSkmJih0LnB1cnBvc2VzLmxlbmd0aHx8dC5mbGV4aWJsZVB1cnBvc2VzLmxlbmd0aCYmKHQuZmxleGlibGVQdXJwb3Nlcy5sZW5ndGgsIXIpKXx8KF8udmVuZG9yc1NldHRpbmdbb10uY29uc2VudD0hMSl9LG4ucHJvdG90eXBlLnZlbmRvckhhc05vTElBbmRQdXJDb25zZW50PWZ1bmN0aW9uKGUsdCxvKXtyZXR1cm4gZVtvXSYmIWVbb10ubGVnSW50JiYhZVtvXS5jb25zZW50fHwhZVtvXSYmIXQubGVnSW50UHVycG9zZXMubGVuZ3RoJiYhdC5wdXJwb3Nlcy5sZW5ndGh9LG4ucHJvdG90eXBlLnNob3VsZEhhdmVWZW5kb3JMSVVuc2V0PWZ1bmN0aW9uKGUsdCxvKXt2YXIgbj0hMSxyPSExLGk9dC5zcGVjaWFsUHVycG9zZXMubGVuZ3RoO3JldHVybihlW29dJiYhZVtvXS5sZWdJbnR8fCFlW29dJiYhdC5sZWdJbnRQdXJwb3Nlcy5sZW5ndGgpJiYobj0hMCksKGVbb10mJiFlW29dLmNvbnNlbnR8fCFlW29dJiYhdC5wdXJwb3Nlcy5sZW5ndGgpJiYocj0hMCksISghbnx8cj09PUJvb2xlYW4oaSkmJihyfHxpKSl9LG4ucHJvdG90eXBlLm1hcERhdGFEZWNsYXJhdGlvbkZvclZlbmRvcj1mdW5jdGlvbihlLHQsbil7dmFyIG87Yi5pc1RjZlYyVGVtcGxhdGUmJm51bGwhPShvPWUuZGF0YURlY2xhcmF0aW9uKSYmby5sZW5ndGgmJih0LmRhdGFEZWNsYXJhdGlvbj1lLmRhdGFEZWNsYXJhdGlvbi5yZWR1Y2UoZnVuY3Rpb24oZSx0KXt2YXIgbz1uLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuSWQ9PT10fSk7cmV0dXJuIG8mJmUucHVzaCh7RGVzY3JpcHRpb246by5EZXNjcmlwdGlvbixJZDpvLklkLE5hbWU6by5OYW1lfSksZX0sW10pKX0sbi5wcm90b3R5cGUubWFwRGF0YVJldGVudGlvbkZvclZlbmRvcj1mdW5jdGlvbihvLG4pe3ZhciBlO24uZGF0YVJldGVudGlvbj17fSxiLmlzVGNmVjJUZW1wbGF0ZSYmby5kYXRhUmV0ZW50aW9uJiYobnVsbCE9PShudWxsPT0oZT1vLmRhdGFSZXRlbnRpb24pP3ZvaWQgMDplLnN0ZFJldGVudGlvbikmJnZvaWQgMCE9PShudWxsPT0oZT1vLmRhdGFSZXRlbnRpb24pP3ZvaWQgMDplLnN0ZFJldGVudGlvbikmJihuLmRhdGFSZXRlbnRpb249e3N0ZFJldGVudGlvbjpvLmRhdGFSZXRlbnRpb24uc3RkUmV0ZW50aW9ufSksT2JqZWN0LmtleXMobnVsbD09KGU9by5kYXRhUmV0ZW50aW9uKT92b2lkIDA6ZS5wdXJwb3NlcykubGVuZ3RoJiYobi5kYXRhUmV0ZW50aW9uLnB1cnBvc2VzPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoby5kYXRhUmV0ZW50aW9uLnB1cnBvc2VzKSksT2JqZWN0LmtleXMoby5kYXRhUmV0ZW50aW9uLnB1cnBvc2VzKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWIuaWFiR3JvdXBzLnB1cnBvc2VzW2VdO3QmJihuLmRhdGFSZXRlbnRpb24ucHVycG9zZXNbZV09e25hbWU6dC5uYW1lLGlkOnQuaWQscmV0ZW50aW9uOm8uZGF0YVJldGVudGlvbi5wdXJwb3Nlc1tlXX0pfSkpLE9iamVjdC5rZXlzKG51bGw9PShlPW8uZGF0YVJldGVudGlvbik/dm9pZCAwOmUuc3BlY2lhbFB1cnBvc2VzKS5sZW5ndGgpJiYobi5kYXRhUmV0ZW50aW9uLnNwZWNpYWxQdXJwb3Nlcz1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KG8uZGF0YVJldGVudGlvbi5zcGVjaWFsUHVycG9zZXMpKSxPYmplY3Qua2V5cyhvLmRhdGFSZXRlbnRpb24uc3BlY2lhbFB1cnBvc2VzKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWIuaWFiR3JvdXBzLnNwZWNpYWxQdXJwb3Nlc1tlXTt0JiYobi5kYXRhUmV0ZW50aW9uLnNwZWNpYWxQdXJwb3Nlc1tlXT17bmFtZTp0Lm5hbWUsaWQ6dC5pZCxyZXRlbnRpb246by5kYXRhUmV0ZW50aW9uLnNwZWNpYWxQdXJwb3Nlc1tlXX0pfSkpfSxuLnByb3RvdHlwZS5zZXRJQUIyVmVuZG9yRGF0YT1mdW5jdGlvbihlLHQpe3ZhciBvLG4scjtiLmlzVGNmVjJUZW1wbGF0ZSYmKG49Xy5sYW5nLHI9KHI9ZS51cmxzLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUubGFuZ0lkPT09bn0pKXx8ZS51cmxzWzBdLHQudmVuZG9yUHJpdmFjeVVybD0obnVsbD09KG89cik/dm9pZCAwOm8ucHJpdmFjeSl8fCIiLHQubGVnSW50Q2xhaW09KG51bGw9PShvPXIpP3ZvaWQgMDpvLmxlZ0ludENsYWltKXx8IiIsbnVsbCE9KHI9ZS5kYXRhRGVjbGFyYXRpb24pJiZyLmxlbmd0aCYmKHQuZGF0YURlY2xhcmF0aW9uPWUuZGF0YURlY2xhcmF0aW9uKSxlLkRhdGFSZXRlbnRpb24pJiYodC5EYXRhUmV0ZW50aW9uPWUuRGF0YVJldGVudGlvbil9LG4ucHJvdG90eXBlLnBvcHVsYXRlSUFCQ29va2llcz1mdW5jdGlvbigpe3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDppZighdGhpcy5pc0lBQkNyb3NzQ29uc2VudEVuYWJsZWQoKSlyZXR1cm5bMyw1XTtlLmxhYmVsPTE7Y2FzZSAxOnJldHVybiBlLnRyeXMucHVzaChbMSwzLCw0XSksWzQsdGhpcy5zZXRJQUIzcmRQYXJ0eUNvb2tpZSh5LkVVX0NPTlNFTlQsIiIsMCwhMCldO2Nhc2UgMjpyZXR1cm4gZS5zZW50KCksWzMsNF07Y2FzZSAzOnJldHVybiBlLnNlbnQoKSx0aGlzLnNldElBQkNvb2tpZURhdGEoKSx0aGlzLnVwZGF0ZUNyb3NzQ29uc2VudENvb2tpZSghMSksWzMsNF07Y2FzZSA0OnJldHVyblszLDZdO2Nhc2UgNTpPLm5lZWRSZWNvbnNlbnQoKXx8dGhpcy5zZXRJQUJDb29raWVEYXRhKCksZS5sYWJlbD02O2Nhc2UgNjpyZXR1cm5bMl19fSl9KX0sbi5wcm90b3R5cGUuc2V0SUFCM3JkUGFydHlDb29raWU9ZnVuY3Rpb24oZSx0LG8sbil7dmFyIHI9TC5pYWJUaGlyZFBhcnR5Q29uc2VudFVybDt0cnl7aWYociYmZG9jdW1lbnQuYm9keSlyZXR1cm4gdGhpcy51cGRhdGVUaGlyZFBhcnR5Q29uc2VudChyLGUsdCxvLG4pO3Rocm93IG5ldyBSZWZlcmVuY2VFcnJvcn1jYXRjaChlKXt0aHJvdyBlfX0sbi5wcm90b3R5cGUuc2V0SUFCQ29va2llRGF0YT1mdW5jdGlvbigpe18ub25lVHJ1c3RJQUJDb25zZW50LklBQkNvb2tpZVZhbHVlPVQuZ2V0TWVyZ2VkQ29va2llQnlOYW1lKHkuRVVfUFVCX0NPTlNFTlQpfSxuLnByb3RvdHlwZS51cGRhdGVUaGlyZFBhcnR5Q29uc2VudD1mdW5jdGlvbihuLHIsaSxzLGEpe3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciB0LG87cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtyZXR1cm4gdD13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wrIi8vIituKyIvP25hbWU9IityKyImdmFsdWU9IitpKyImZXhwaXJlPSIrcysiJmlzRmlyc3RSZXF1ZXN0PSIrYSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib25ldHJ1c3RJYWJDb29raWUiKT8oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm9uZXRydXN0SWFiQ29va2llIikuY29udGVudFdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKHQpLFsyXSk6KGQobz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKSwiZGlzcGxheTogbm9uZTsiLCEwKSxvLmlkPSJvbmV0cnVzdElhYkNvb2tpZSIsby5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiT25lVHJ1c3QgSUFCIENvb2tpZSIpLG8uc3JjPXQsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChvKSxbMixuZXcgUHJvbWlzZShmdW5jdGlvbihlKXtvLm9ubG9hZD1mdW5jdGlvbigpe2IudGhpcmRQYXJ0eWlGcmFtZVJlc29sdmUoKSxiLnRoaXJkUGFydHlpRnJhbWVMb2FkZWQ9ITAsZSgpfSxvLm9uZXJyb3I9ZnVuY3Rpb24oKXt0aHJvdyBiLnRoaXJkUGFydHlpRnJhbWVSZXNvbHZlKCksYi50aGlyZFBhcnR5aUZyYW1lTG9hZGVkPSEwLGUoKSxuZXcgVVJJRXJyb3J9fSldKX0pfSl9LG4ucHJvdG90eXBlLnNldElBQlZlbmRvcj1mdW5jdGlvbihuLHIsaSl7dmFyIHQscz10aGlzO3ZvaWQgMD09PW4mJihuPSEwKSx2b2lkIDA9PT1yJiYocj0hMSksdm9pZCAwPT09aSYmKGk9ITEpLF8uaWFiRGF0YS52ZW5kb3JzLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQsbyxlPWUudmVuZG9ySWQ7Yi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMST8obz12b2lkIDAscj9vPW46KHQ9Xy52ZW5kb3JzU2V0dGluZ1tlXSxpJiZ0LmxlZ0ludCYmIXQuc3BlY2lhbFB1cnBvc2VzT25seT9zLnVwZGF0ZVZlbmRvclB1cnBvc2VPckxJKCEwLGUsITEpOihvPSEhXy52ZW5kb3JzU2V0dGluZ1tlXS5jb25zZW50JiZuLHMudXBkYXRlVmVuZG9yUHVycG9zZU9yTEkoITAsZSxfLnZlbmRvcnNTZXR0aW5nW2VdLmxlZ0ludCkpKSxzLnVwZGF0ZVZlbmRvclB1cnBvc2VPckxJKCExLGUsbykpOihfLm9uZVRydXN0SUFCQ29uc2VudC5sZWdJbnRWZW5kb3JzPVtdLHMudXBkYXRlVmVuZG9yUHVycG9zZU9yTEkoITEsZSxuKSl9KSxMLlVzZUdvb2dsZVZlbmRvcnMmJih0PV8uYWRkdGxWZW5kb3JzLE9iamVjdC5rZXlzKF8uYWRkdGxWZW5kb3JzTGlzdCkuZm9yRWFjaChmdW5jdGlvbihlKXtuPyh0LnZlbmRvclNlbGVjdGVkWyIiK2UudG9TdHJpbmcoKV09ITAsdC52ZW5kb3JDb25zZW50LnB1c2goIiIrZS50b1N0cmluZygpKSk6ciYmKHQudmVuZG9yU2VsZWN0ZWRbIiIrZS50b1N0cmluZygpXT0hMSxlPXQudmVuZG9yQ29uc2VudC5pbmRleE9mKCIiK2UudG9TdHJpbmcoKSksdC52ZW5kb3JDb25zZW50LnNwbGljZShlLDEpKX0pKX0sbi5wcm90b3R5cGUudXBkYXRlVmVuZG9yUHVycG9zZU9yTEk9ZnVuY3Rpb24oZSx0LG8pe3ZvaWQgMD09PW8mJihvPSExKSwoZT12b2lkIDA9PT1lPyExOmUpPy0xPChlPV8ub25lVHJ1c3RJQUJDb25zZW50LmxlZ0ludFZlbmRvcnMuZmluZEluZGV4KGZ1bmN0aW9uKGUpe3JldHVybiBlLmluY2x1ZGVzKHQudG9TdHJpbmcoKSsiOnRydWUiKXx8ZS5pbmNsdWRlcyh0LnRvU3RyaW5nKCkrIjpmYWxzZSIpfSkpP18ub25lVHJ1c3RJQUJDb25zZW50LmxlZ0ludFZlbmRvcnNbZV09dC50b1N0cmluZygpKyI6IitvOl8ub25lVHJ1c3RJQUJDb25zZW50LmxlZ0ludFZlbmRvcnMucHVzaCh0LnRvU3RyaW5nKCkrIjoiK28pOi0xPChlPV8ub25lVHJ1c3RJQUJDb25zZW50LnZlbmRvcnMuZmluZEluZGV4KGZ1bmN0aW9uKGUpe3JldHVybiBlLmluY2x1ZGVzKHQudG9TdHJpbmcoKSsiOnRydWUiKXx8ZS5pbmNsdWRlcyh0LnRvU3RyaW5nKCkrIjpmYWxzZSIpfSkpP18ub25lVHJ1c3RJQUJDb25zZW50LnZlbmRvcnNbZV09dC50b1N0cmluZygpKyI6IitvOl8ub25lVHJ1c3RJQUJDb25zZW50LnZlbmRvcnMucHVzaCh0LnRvU3RyaW5nKCkrIjoiK28pfSxuLnByb3RvdHlwZS5zZXRPclVwZGF0ZTNyZFBhcnR5SUFCQ29uc2VudEZsYWc9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmdldElBQkNyb3NzQ29uc2VudGZsYWdEYXRhKCk7TC5Jc0lhYkVuYWJsZWQ/ZSYmIXRoaXMubmVlZFJlY29uc2VudCgpfHx0aGlzLnVwZGF0ZUNyb3NzQ29uc2VudENvb2tpZShMLklzSWFiVGhpcmRQYXJ0eUNvb2tpZUVuYWJsZWQpOmUmJiF0aGlzLnJlY29uc2VudFJlcXVpcmVkKCkmJiJ0cnVlIiE9PWV8fHRoaXMudXBkYXRlQ3Jvc3NDb25zZW50Q29va2llKCExKX0sbi5wcm90b3R5cGUuaXNJQUJDcm9zc0NvbnNlbnRFbmFibGVkPWZ1bmN0aW9uKCl7cmV0dXJuInRydWUiPT09dGhpcy5nZXRJQUJDcm9zc0NvbnNlbnRmbGFnRGF0YSgpfSxuLnByb3RvdHlwZS5nZXRJQUJDcm9zc0NvbnNlbnRmbGFnRGF0YT1mdW5jdGlvbigpe3JldHVybiBULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLklTX0lBQl9HTE9CQUwpfSxuLnByb3RvdHlwZS5zZXRHZW9sb2NhdGlvbkluQ29va2llcz1mdW5jdGlvbigpe3ZhciBlLHQ9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5HRU9fTE9DQVRJT04pO18udXNlckxvY2F0aW9uJiYhdCYmdGhpcy5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKT8oZT1fLnVzZXJMb2NhdGlvbi5jb3VudHJ5KyI7IitfLnVzZXJMb2NhdGlvbi5zdGF0ZSx0aGlzLnNldFVwZGF0ZUdlb2xvY2F0aW9uQ29va2llc0RhdGEoZSkpOnRoaXMucmVjb25zZW50UmVxdWlyZWQoKSYmdCYmdGhpcy5zZXRVcGRhdGVHZW9sb2NhdGlvbkNvb2tpZXNEYXRhKCIiKX0sbi5wcm90b3R5cGUuaWFiU3RyaW5nU0RLPWZ1bmN0aW9uKCl7dmFyIGU9Uy5tb2R1bGVJbml0aWFsaXplci5vdElBQk1vZHVsZURhdGE7aWYoTC5Jc0lhYkVuYWJsZWQmJmUpcmV0dXJue2d2bDplLnRjZlNka1JlZi5ndmwsdGNNb2RlbDplLnRjZlNka1JlZi50Y01vZGVsLHRjU3RyaW5nOmUudGNmU2RrUmVmLnRjU3RyaW5nLGNtcEFwaTplLnRjZlNka1JlZi5jbXBBcGkscHVycG9zZVJlc3RyaWN0aW9uOmUudGNmU2RrUmVmLnB1cnBvc2VSZXN0cmljdGlvbn19LG4ucHJvdG90eXBlLnNldFVwZGF0ZUdlb2xvY2F0aW9uQ29va2llc0RhdGE9ZnVuY3Rpb24oZSl7VC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguR0VPX0xPQ0FUSU9OLGUpfSxuLnByb3RvdHlwZS5jYWxjdWxhdGVEYXlzRnJvbURhdGVUb1RvZGF5PWZ1bmN0aW9uKGUpe3ZhciBlPW5ldyBEYXRlKGUpLHQ9bmV3IERhdGUsdD0oZS5zZXRVVENIb3VycygwLDAsMCwwKSx0LnNldFVUQ0hvdXJzKDAsMCwwLDApLE1hdGguYWJzKHQuZ2V0VGltZSgpLWUuZ2V0VGltZSgpKSk7cmV0dXJuIE1hdGguY2VpbCh0Lzg2NGU1KX0sbi5wcm90b3R5cGUucmVjb25zZW50UmVxdWlyZWQ9ZnVuY3Rpb24oKXtyZXR1cm4oUy5tb2R1bGVJbml0aWFsaXplci5Nb2JpbGVTREt8fHRoaXMuYXdhaXRpbmdSZWNvbnNlbnQoKSkmJnRoaXMubmVlZFJlY29uc2VudCgpfSxuLnByb3RvdHlwZS5hd2FpdGluZ1JlY29uc2VudD1mdW5jdGlvbigpe3JldHVybiJ0cnVlIj09PVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguQVdBSVRJTkdfUkVfQ09OU0VOVCl9LG4ucHJvdG90eXBlLm5lZWRSZWNvbnNlbnQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmFsZXJ0Qm94Q2xvc2VEYXRlKCksdD1MLkxhc3RSZWNvbnNlbnREYXRlO3JldHVybiEhKGUmJnQmJm5ldyBEYXRlKHQpPm5ldyBEYXRlKGUpKXx8KF8uaXNBTVAmJmU/dGhpcy5jYWxjdWxhdGVEYXlzRnJvbURhdGVUb1RvZGF5KGUpPj1MLlJlY29uc2VudEZyZXF1ZW5jeURheXM6dm9pZCAwKX0sbi5wcm90b3R5cGUudXBkYXRlQ3Jvc3NDb25zZW50Q29va2llPWZ1bmN0aW9uKGUpe1Qud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLklTX0lBQl9HTE9CQUwsZSl9LG4ucHJvdG90eXBlLmFsZXJ0Qm94Q2xvc2VEYXRlPWZ1bmN0aW9uKCl7cmV0dXJuIFQuZ2V0Q29va2llKHkuQUxFUlRfQk9YX0NMT1NFRCl9LG4ucHJvdG90eXBlLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZD1mdW5jdGlvbigpe3JldHVybiBudWxsIT09dGhpcy5hbGVydEJveENsb3NlRGF0ZSgpJiYhdGhpcy5yZWNvbnNlbnRSZXF1aXJlZCgpfSxuLnByb3RvdHlwZS5nZW5lcmF0ZUxlZ0ludEJ1dHRvbkVsZW1lbnRzPWZ1bmN0aW9uKGUsdCxvLG4pe3JldHVybiBtLmdldElubmVySHRtbENvbnRlbnQoJzxkaXYgY2xhc3M9Im90LWxlZy1idG4tY29udGFpbmVyIiBkYXRhLWdyb3VwLWlkPSInK3QrJyIgZGF0YS1lbC1pZD0iJyt0KyctbGVnLW91dCIgaXMtdmVuZG9yPSInKyhvPXZvaWQgMD09PW8/ITE6bykrJyI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9Im90LW9iai1sZWctYnRuLWhhbmRsZXIgJysoZT8ib3QtbGVnLWludC1lbmFibGVkIG90LWluYWN0aXZlLWxlZy1idG4iOiJvdC1hY3RpdmUtbGVnLWJ0biIpKyciIGFyaWEtbGFiZWw9IicrKG49dm9pZCAwPT09bj8iIjpuKSsiLCAiKyhlP2IubGVnSW50U2V0dGluZ3MuUE9iamVjdExlZ0ludFRleHQ6Yi5sZWdJbnRTZXR0aW5ncy5QT2JqZWN0aW9uQXBwbGllZFRleHQpKyciPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDUxMiA1MTIiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGw9IicrTC5wY0J1dHRvblRleHRDb2xvcisnIiBkPSJNMTczLjg5OCA0MzkuNDA0bC0xNjYuNC0xNjYuNGMtOS45OTctOS45OTctOS45OTctMjYuMjA2IDAtMzYuMjA0bDM2LjIwMy0zNi4yMDRjOS45OTctOS45OTggMjYuMjA3LTkuOTk4IDM2LjIwNCAwTDE5MiAzMTIuNjkgNDMyLjA5NSA3Mi41OTZjOS45OTctOS45OTcgMjYuMjA3LTkuOTk3IDM2LjIwNCAwbDM2LjIwMyAzNi4yMDRjOS45OTcgOS45OTcgOS45OTcgMjYuMjA2IDAgMzYuMjA0bC0yOTQuNCAyOTQuNDAxYy05Ljk5OCA5Ljk5Ny0yNi4yMDcgOS45OTctMzYuMjA0LS4wMDF6Ii8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPicrKGU/Yi5sZWdJbnRTZXR0aW5ncy5QT2JqZWN0TGVnSW50VGV4dDpiLmxlZ0ludFNldHRpbmdzLlBPYmplY3Rpb25BcHBsaWVkVGV4dCkrJ1xuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im90LXJlbW92ZS1vYmplY3Rpb24taGFuZGxlciJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXN0eWxlPSJjb2xvcjonK0wucGNCdXR0b25Db2xvcisiOyAiKyhlPyJkaXNwbGF5Om5vbmU7IjoiIikrJyJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPSInK24rIiwgIitiLmxlZ0ludFNldHRpbmdzLlBSZW1vdmVPYmplY3Rpb25UZXh0KyciXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICcrYi5sZWdJbnRTZXR0aW5ncy5QUmVtb3ZlT2JqZWN0aW9uVGV4dCsiXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PiIpfSxuLnByb3RvdHlwZS5zeW5jQWxlcnRCb3hDb29raWU9ZnVuY3Rpb24oZSl7dmFyIHQ9TC5SZWNvbnNlbnRGcmVxdWVuY3lEYXlzO1Quc2V0Q29va2llKHkuQUxFUlRfQk9YX0NMT1NFRCxlPWV8fCIiLHQsITEsbmV3IERhdGUoZSkpfSxuLnByb3RvdHlwZS5zeW5jQ29va2llRXhwaXJ5PWZ1bmN0aW9uKCl7aWYoXy5zeW5jUmVxdWlyZWQpe3ZhciBlPUwuUmVjb25zZW50RnJlcXVlbmN5RGF5cyx0PVQuZ2V0Q29va2llKHkuQUxFUlRfQk9YX0NMT1NFRCksbz1ULmdldENvb2tpZSh5Lk9QVEFOT05fQ09OU0VOVCksbz0oVC5zZXRDb29raWUoeS5PUFRBTk9OX0NPTlNFTlQsbyxlLCExLG5ldyBEYXRlKHQpKSxPLm5lZWRSZWNvbnNlbnQoKSYmVC5yZW1vdmVBbGVydEJveCgpLFQuZ2V0TWVyZ2VkQ29va2llQnlOYW1lKHkuRVVfUFVCX0NPTlNFTlQpKTtpZihvKWlmKE8uaXNJQUJDcm9zc0NvbnNlbnRFbmFibGVkKCkpVC5yZW1vdmVJYWIyKCk7ZWxzZSBmb3IodmFyIG49VC5nZXRDb29raWVzQ2h1bmsobyx5LkVVX1BVQl9DT05TRU5UKSxyPTAsaT1PYmplY3Qua2V5cyhuKTtyPGkubGVuZ3RoO3IrKyl7dmFyIHM9aVtyXTtULnNldENvb2tpZShzLG5bc10sZSwhMSxuZXcgRGF0ZSh0KSl9bz1ULmdldENvb2tpZSh5LkFERElUSU9OQUxfQ09OU0VOVF9TVFJJTkcpO28mJlQuc2V0Q29va2llKHkuQURESVRJT05BTF9DT05TRU5UX1NUUklORyxvLGUsITEsbmV3IERhdGUodCkpfX0sbi5wcm90b3R5cGUuc3luY090UHJldmlld0Nvb2tpZT1mdW5jdGlvbigpe3ZhciBlPVQuZ2V0Q29va2llKHkuT1RfUFJFVklFVyk7ZSYmVC5zZXRDb29raWUoeS5PVF9QUkVWSUVXLGUsMSwhMSl9LG4ucHJvdG90eXBlLmRpc3BhdGNoQ29uc2VudEV2ZW50PWZ1bmN0aW9uKCl7d2luZG93LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJPVENvbnNlbnRBcHBsaWVkIix7T1RDb25zZW50QXBwbGllZDoieWVzIn0pKX0sbi5wcm90b3R5cGUuZ2V0Q29uc2VudExhbmd1YWdlPWZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIF8ubGFuZz8oZT1fLmxhbmcudG9VcHBlckNhc2UoKSx0aGlzLklBQlRDRl9TVVBQT1JURURfTEFOR1VBR0VTLmhhcyhlKXx8KGU9ZS5zdWJzdHIoMCwyKSx0aGlzLklBQlRDRl9TVVBQT1JURURfTEFOR1VBR0VTLmhhcyhlKSk/ZToiUFQiPT09ZT90aGlzLklBQlRDRl9ERUZBVUxUX1BPUlRVR1VFU0U6IlNSIj09PWU/dGhpcy5JQUJUQ0ZfREVGQVVMVF9TRVJCSUFOOnRoaXMuSUFCVENGX0RFRkFVTFRfTEFOR1VBR0UpOnRoaXMuSUFCVENGX0RFRkFVTFRfTEFOR1VBR0V9O3ZhciBFLE89bmV3IG4sb289ZnVuY3Rpb24oKXt9O2xvLnByb3RvdHlwZS5pc0Fsd2F5c0FjdGl2ZUdyb3VwPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiF0aGlzLmdldEdycFN0YXR1cyhlKXx8KHQ9dGhpcy5nZXRHcnBTdGF0dXMoZSkudG9Mb3dlckNhc2UoKSwodD1lLlBhcmVudCYmdCE9PWYuQUxXQVlTX0FDVElWRT90aGlzLmdldEdycFN0YXR1cyh0aGlzLmdldFBhcmVudEdyb3VwKGUuUGFyZW50KSkudG9Mb3dlckNhc2UoKTp0KT09PWYuQUxXQVlTX0FDVElWRSl9LGxvLnByb3RvdHlwZS5nZXRHcnBTdGF0dXM9ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJmUuU3RhdHVzP2IuRE5URW5hYmxlZCYmZS5Jc0RudEVuYWJsZWQ/Zi5ETlQ6ZS5TdGF0dXM6IiJ9LGxvLnByb3RvdHlwZS5nZXRQYXJlbnRHcm91cD1mdW5jdGlvbih0KXt2YXIgZTtyZXR1cm4gdCYmMDwoZT1MLkdyb3Vwcy5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIGUuT3B0YW5vbkdyb3VwSWQ9PT10fSkpLmxlbmd0aD9lWzBdOm51bGx9LGxvLnByb3RvdHlwZS5jaGVja0lmR3JvdXBIYXNDb25zZW50PWZ1bmN0aW9uKHQpe3ZhciBlPWwuZ3JvdXBzQ29uc2VudCxvPVAuZmluZEluZGV4KGUsZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3BsaXQoIjoiKVswXT09PXQuQ3VzdG9tR3JvdXBJZH0pO3JldHVybi0xPG8mJiIxIj09PWVbb10uc3BsaXQoIjoiKVsxXX0sbG8ucHJvdG90eXBlLmNoZWNrSXNBY3RpdmVCeURlZmF1bHQ9ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIXRoaXMuZ2V0R3JwU3RhdHVzKGUpfHwodD10aGlzLmdldEdycFN0YXR1cyhlKS50b0xvd2VyQ2FzZSgpLCh0PWUuUGFyZW50JiZ0IT09Zi5BTFdBWVNfQUNUSVZFP3RoaXMuZ2V0R3JwU3RhdHVzKHRoaXMuZ2V0UGFyZW50R3JvdXAoZS5QYXJlbnQpKS50b0xvd2VyQ2FzZSgpOnQpPT09Zi5BTFdBWVNfQUNUSVZFKXx8dD09PWYuSU5BQ1RJVkVfTEFORElOR19QQUdFfHx0PT09Zi5BQ1RJVkV8fHQ9PT1mLkROVCYmIWIuRE5URW5hYmxlZH0sbG8ucHJvdG90eXBlLmdldEdyb3VwQnlJZD1mdW5jdGlvbihlKXtmb3IodmFyIHQ9bnVsbCxvPTAsbj1MLkdyb3VwcztvPG4ubGVuZ3RoO28rKyl7Zm9yKHZhciByPW5bb10saT0wLHM9VShyLlN1Ykdyb3Vwcyxbcl0pO2k8cy5sZW5ndGg7aSsrKXt2YXIgYT1zW2ldO2lmKGEuQ3VzdG9tR3JvdXBJZD09PWUpe3Q9YTticmVha319aWYodClicmVha31yZXR1cm4gdH0sbG8ucHJvdG90eXBlLmlzU29mdE9wdEluR3JwPWZ1bmN0aW9uKGUpe3JldHVybiEhZSYmKGU9ZSYmIWUuUGFyZW50P2U6RC5nZXRQYXJlbnRHcm91cChlLlBhcmVudCksImluYWN0aXZlIGxhbmRpbmdwYWdlIj09PUQuZ2V0R3JwU3RhdHVzKGUpLnRvTG93ZXJDYXNlKCkpfSxsby5wcm90b3R5cGUuaXNPcHRJbkdycD1mdW5jdGlvbihlKXtyZXR1cm4hIWUmJiJpbmFjdGl2ZSI9PT1ELmdldEdycFN0YXR1cyhlKS50b0xvd2VyQ2FzZSgpfSxsby5wcm90b3R5cGUuZ2V0UGFyZW50QnlHcnA9ZnVuY3Rpb24oZSl7cmV0dXJuIGUuUGFyZW50P3RoaXMuZ2V0R3JvdXBCeUlkKGUuUGFyZW50KTpudWxsfSxsby5wcm90b3R5cGUuZ2V0VlNCeUlkPWZ1bmN0aW9uKGUpe3JldHVybiBsLmdldFZlbmRvcnNJbkRvbWFpbigpLmdldChlKX0sbG8ucHJvdG90eXBlLmdldEdycEJ5VmVuZG9ySWQ9ZnVuY3Rpb24oZSl7dmFyIHQ9bnVsbDtyZXR1cm4gdD1sLmdldFZlbmRvcnNJbkRvbWFpbigpLmhhcyhlKT9sLmdldFZlbmRvcnNJbkRvbWFpbigpLmdldChlKS5ncm91cFJlZjp0fTt2YXIgRCxubyxybyxpbyxzbyxhbz1sbztmdW5jdGlvbiBsbygpe30oTHI9bm89bm98fHt9KS5TYWxlT3B0T3V0PSJTYWxlT3B0T3V0Q0lEIixMci5TaGFyaW5nT3B0T3V0PSJTaGFyaW5nT3B0T3V0Q0lEIixMci5QZXJzb25hbERhdGFDb25zZW50cz0iUGVyc29uYWxEYXRhQ0lEIiwoTHI9cm89cm98fHt9KS5TaGFyaW5nT3B0T3V0Tm90aWNlPSJTaGFyaW5nT3B0T3V0Q0lEIixMci5TYWxlT3B0T3V0Tm90aWNlPSJTYWxlT3B0T3V0Q0lEIixMci5TZW5zaXRpdmVEYXRhTGltaXRVc2VOb3RpY2U9IlNlbnNpdGl2ZVBJQ0lEIHx8IFNlbnNpdGl2ZVNJQ0lEIHx8IEdlb2xvY2F0aW9uQ0lEIHx8IFJSRVBJbmZvQ0lEIHx8IENvbW11bmljYXRpb25DSUQgfHwgR2VuZXRpY0NJRHx8IEJpb21ldHJpY0NJRCB8fCBIZWFsdGhDSUQgfHwgU2V4dWFsT3JpZW50YXRpb25DSUQiLChMcj1pbz1pb3x8e30pLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHMxPSJLbm93bkNoaWxkU2VsbFBJQ0lEIixMci5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzMj0iS25vd25DaGlsZFNoYXJlUElDSUQiLChMcj1zbz1zb3x8e30pLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMT0iU2Vuc2l0aXZlUElDSUQiLExyLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMj0iU2Vuc2l0aXZlU0lDSUQiLExyLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMz0iR2VvbG9jYXRpb25DSUQiLExyLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nND0iUlJFUEluZm9DSUQiLExyLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNT0iQ29tbXVuaWNhdGlvbkNJRCIsTHIuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc2PSJHZW5ldGljQ0lEIixMci5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzc9IkJpb21ldHJpY0NJRCIsTHIuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc4PSJIZWFsdGhDSUQiLExyLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nOT0iU2V4dWFsT3JpZW50YXRpb25DSUQiLHBvLnByb3RvdHlwZS5pbml0aWFsaXNlQ3NzUmVmZXJlbmNlcz1mdW5jdGlvbigpe3ZhciBlLHQ9IiI7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm9uZXRydXN0LXN0eWxlIik/ZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib25ldHJ1c3Qtc3R5bGUiKTooKGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKSkuaWQ9Im9uZXRydXN0LXN0eWxlIixTLm1vZHVsZUluaXRpYWxpemVyLkNvb2tpZVYyQ1NQRW5hYmxlZCYmXy5ub25jZSYmZS5zZXRBdHRyaWJ1dGUoIm5vbmNlIixfLm5vbmNlKSkseHMuY29tbW9uU3R5bGVzJiYodCs9eHMuY29tbW9uU3R5bGVzKSx4cy5iYW5uZXJHcm91cCYmKHQrPXhzLmJhbm5lckdyb3VwLmNzcyxTLmZwLkNvb2tpZVYyU1NSfHwodCs9dGhpcy5hZGRDdXN0b21CYW5uZXJDU1MoKSksTC5iYW5uZXJDdXN0b21DU1MpJiYodCs9TC5iYW5uZXJDdXN0b21DU1MpLHhzLnByZWZlcmVuY2VDZW50ZXJHcm91cCYmKHQ9KHQrPXhzLnByZWZlcmVuY2VDZW50ZXJHcm91cC5jc3MpK3RoaXMuYWRkQ3VzdG9tUHJlZmVyZW5jZUNlbnRlckNTUygpKSx4cy5jb29raWVMaXN0R3JvdXAmJiFTLmZwLkNvb2tpZVYyVHJhY2tpbmdUZWNobm9sb2dpZXMmJih0PSh0Kz14cy5jb29raWVMaXN0R3JvdXAuY3NzKSt0aGlzLmFkZEN1c3RvbUNvb2tpZUxpc3RDU1MoKSksdCs9dGhpcy5hZGRQZXJzaXN0ZW50TG9nb0NTUygpLHRoaXMucHJvY2Vzc2VkQ1NTPXQsYi5pZ25vcmVJbmplY3RpbmdIdG1sQ3NzfHwoZS50ZXh0Q29udGVudD10LHYoZG9jdW1lbnQuaGVhZCkuYXBwZW5kKGUpKX0scG8ucHJvdG90eXBlLmFkZFBlcnNpc3RlbnRMb2dvQ1NTPWZ1bmN0aW9uKCl7aWYoTC5jb29raWVQZXJzaXN0ZW50TG9nbyl7dmFyIGU9SS51cGRhdGVDb3JyZWN0VXJsKEwuY29va2llUGVyc2lzdGVudExvZ28pLHQ9bmV3IFVSTChlLHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pLnBhdGhuYW1lO2lmKCEoUy5mcC5DTVBJY29uU3ByaXRlJiYoUy5mcC5DTVBJY29uU3ByaXRlLHQuaW5jbHVkZXMoIi9sb2dvcy9zdGF0aWMvIikpJiYodC5pbmNsdWRlcygic3JjL2Fzc2V0cy9pbWFnZXMvIil8fG5ldyBVUkwoZSx3aW5kb3cubG9jYXRpb24ub3JpZ2luKS5ob3N0LmluY2x1ZGVzKCJsb2NhbGhvc3QiKSl8fEwuY29va2llUGVyc2lzdGVudExvZ28uaW5jbHVkZXMoIm90X2d1YXJkX2xvZ28uc3ZnIikpKXJldHVybiIub3QtZmxvYXRpbmctYnV0dG9uX19mcm9udHtiYWNrZ3JvdW5kLWltYWdlOnVybCgnIitlKyInKX0ifXJldHVybiIifSxwby5wcm90b3R5cGUuc2hvdWxkQWRkRXh0SWNvbkNzcz1mdW5jdGlvbigpe3JldHVybiBMLkJhbm5lclJlcXVpcmVFeHRlcm5hbExpbmtzJiYoIVMuZnAuQ01QSWNvblNwcml0ZXx8KFMuZnAuQ01QSWNvblNwcml0ZSxMLkJhbm5lckV4dGVybmFsTGlua3NMb2dvKSl9LHBvLnByb3RvdHlwZS5zZXRUb2dnbGVDb2xvcj1mdW5jdGlvbigpe3ZhciBlPUwuUENlbnRlclRvZ2dsZUluQWN0aXZlQ29sb3IsdD1MLlBDZW50ZXJUb2dnbGVBY3RpdmVDb2xvcix0PXQ/IiNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC10Z2wgaW5wdXQ6Y2hlY2tlZCsub3Qtc3dpdGNoIC5vdC1zd2l0Y2gtbm9iIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAiK3QrIjtcbiAgICAgICAgICAgIH0iOiIiO3JldHVybiBlJiYodCs9IlxuICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC1zd2l0Y2gtbm9iIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIitlKyI7XG4gICAgICAgICAgICAgICAgfSIpLHR9LHBvLnByb3RvdHlwZS5zZXRCdXRvbkNvbG9yPWZ1bmN0aW9uKCl7dmFyIGUsdD1MLnBjQnV0dG9uQ29sb3Isbz1MLnBjQnV0dG9uVGV4dENvbG9yLG49TC5wY0xlZ0ludEJ1dHRvbkNvbG9yLHI9TC5wY0xlZ0ludEJ1dHRvblRleHRDb2xvcixpPSIiO3JldHVybih0fHxvKSYmKGU9Yi5wY05hbWU9PT1udD8iI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ2F0ZWdvcnlfSXRlbSsiLFxuICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkay5vdC1sZWctb3B0LW91dCAiK0EuUF9MaV9IZHIrIntcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAiK3QrIjtcbiAgICAgICAgICAgICAgICB9IjoiIixpPSIjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNka1xuICAgICAgICAgICAgYnV0dG9uOm5vdCgjY2xlYXItZmlsdGVycy1oYW5kbGVyKTpub3QoLm90LWNsb3NlLWljb24pOm5vdCgjZmlsdGVyLWJ0bi1oYW5kbGVyKTpub3QoLm90LXJlbW92ZS1vYmplY3Rpb24taGFuZGxlcik6bm90KC5vdC1vYmotbGVnLWJ0bi1oYW5kbGVyKTpub3QoW2FyaWEtZXhwYW5kZWRdKTpub3QoLm90LWxpbmstYnRuKSxcbiAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC1sZWctYnRuLWNvbnRhaW5lciAub3QtYWN0aXZlLWxlZy1idG4ge1xuICAgICAgICAgICAgICAgICIrKHQ/ImJhY2tncm91bmQtY29sb3I6ICIrdCsiO2JvcmRlci1jb2xvcjogIit0KyI7IjoiIikrIlxuICAgICAgICAgICAgICAgICIrKG8/ImNvbG9yOiAiK28rIjsiOiIiKSsiXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAuIitBLlBfQWN0aXZlX01lbnUrIiB7XG4gICAgICAgICAgICAgICAgIisodD8iYm9yZGVyLWNvbG9yOiAiK3QrIjsiOiIiKSsiXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAiK2UrIlxuICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLm90LWxlZy1idG4tY29udGFpbmVyIC5vdC1yZW1vdmUtb2JqZWN0aW9uLWhhbmRsZXJ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAub3QtbGVnLWJ0bi1jb250YWluZXIgLm90LWluYWN0aXZlLWxlZy1idG4ge1xuICAgICAgICAgICAgICAgICIrKG4/ImJhY2tncm91bmQtY29sb3I6ICIrbisiOyI6IiIpKyJcbiAgICAgICAgICAgICAgICAiKyhyPyJjb2xvcjogIityKyI7IGJvcmRlci1jb2xvcjogIityKyI7IjoiIikrIlxuICAgICAgICAgICAgfSIpLGl9LHBvLnByb3RvdHlwZS5zZXRGb2N1c0JvcmRlckNvbG9yPWZ1bmN0aW9uKCl7dmFyIGU9IiIsdD1MLlBDRm9jdXNCb3JkZXJDb2xvcjtyZXR1cm4gdCYmKGUrPSdcbiAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC10Z2wgaW5wdXQ6Zm9jdXMgKyAub3Qtc3dpdGNoLCAub3Qtc3dpdGNoIC5vdC1zd2l0Y2gtbm9iLCAub3Qtc3dpdGNoIC5vdC1zd2l0Y2gtbm9iOmJlZm9yZSxcbiAgICAgICAgICAgICNvbmV0cnVzdC1wYy1zZGsgLm90LWNoZWNrYm94IGlucHV0W3R5cGU9ImNoZWNrYm94Il06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLFxuICAgICAgICAgICAgI29uZXRydXN0LXBjLXNkayAub3QtY2hrYm94IGlucHV0W3R5cGU9ImNoZWNrYm94Il06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lLWNvbG9yOiAnK3QrIjtcbiAgICAgICAgICAgICAgICBvdXRsaW5lLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtaXRlbSA+IGJ1dHRvbjpmb2N1cywgI29uZXRydXN0LXBjLXNkayAub3QtdmVuLWl0ZW0gPiBidXR0b246Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICIrdCsiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgKjpmb2N1cyxcbiAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC12bHN0LWNudHIgPiBhOmZvY3VzIHtcbiAgICAgICAgICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCAiK3QrIjtcbiAgICAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG4gICAgICAgICAgICB9IiksZX0scG8ucHJvdG90eXBlLnNldENsb3NlSWNvbkNvbG9yPWZ1bmN0aW9uKCl7dmFyIGU9IiI7cmV0dXJuIEwuUENDbG9zZUJ1dHRvblR5cGU9PT1QZS5MaW5rJiYoZSs9IiNvbmV0cnVzdC1wYy1zZGsub3QtY2xvc2UtYnRuLWxpbmsgLm90LWNsb3NlLWljb24ge2NvbG9yOiAiK0wuUENDb250aW51ZUNvbG9yKyJ9IiksZX0scG8ucHJvdG90eXBlLnNldFRhYkxheW91dFN0eWxlcz1mdW5jdGlvbigpe3ZhciBlPSIiLHQ9TC5wY01lbnVDb2xvcixvPUwucGNNZW51SGlnaExpZ2h0Q29sb3I7cmV0dXJuIGIucGNOYW1lPT09c3QmJih0JiYoZSs9IiNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS1tZW51LXN3aXRjaC1oYW5kbGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIit0KyJcbiAgICAgICAgICAgICAgICB9IiksbykmJihlKz0iI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLiIrQS5QX0FjdGl2ZV9NZW51KyIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAiK28rIlxuICAgICAgICAgICAgICAgIH0iKSxlfSxwby5wcm90b3R5cGUuc2V0Rm9jdXNJZlRlbXBsYXRlVXBncmFkZT1mdW5jdGlvbigpe3ZhciBlPSIiLHQ9TC5QQ0ZvY3VzQm9yZGVyQ29sb3I7cmV0dXJuIUwuUENUZW1wbGF0ZVVwZ3JhZGUmJnQmJihlKz0nXG4gICAgICAgICAgICAjb25ldHJ1c3QtcGMtc2RrIGlucHV0W3R5cGU9ImNoZWNrYm94Il06Zm9jdXMgKyAuYWNjb3JkaW9uLWhlYWRlcixcbiAgICAgICAgICAgICNvbmV0cnVzdC1wYy1zZGsgLmNhdGVnb3J5LWl0ZW0gLm90LXN3aXRjaC5vdC10b2dnbGUgaW5wdXQ6Zm9jdXMgKyAub3Qtc3dpdGNoLWxhYmVsLFxuICAgICAgICAgICAgI29uZXRydXN0LXBjLXNkayAuY2hlY2tib3ggaW5wdXQ6Zm9jdXMgKyBsYWJlbDo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG91dGxpbmUtY29sb3I6ICcrdCsiO1xuICAgICAgICAgICAgICAgIG91dGxpbmUtd2lkdGg6IDFweDtcbiAgICAgICAgICAgIH0iKSxlfSxwby5wcm90b3R5cGUuc2V0RXh0TG5rVXJsPWZ1bmN0aW9uKCl7dmFyIGU9IiIsdD1JLnVwZGF0ZUNvcnJlY3RVcmwoTC5PVEV4dGVybmFsTGlua0xvZ28pO3JldHVybiB0JiYoZSs9ImEub3QtZXh0LWxuazphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyIrKEwuQmFubmVyRXh0ZXJuYWxMaW5rc0xvZ28/SS51cGRhdGVDb3JyZWN0VXJsKEwuQmFubmVyRXh0ZXJuYWxMaW5rc0xvZ28pOnQpKyInKTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgIiksZX0scG8ucHJvdG90eXBlLnNldEJhbm5lckxpbmtNYXJnaW5zPWZ1bmN0aW9uKCl7cmV0dXJuIiNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wb2xpY3ktdGV4dCBhLm90LWNvb2tpZS1wb2xpY3ktbGluayxcbiAgICAgICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcG9saWN5LXRleHQgYS5vdC1pbXByaW50LWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIH0ifSxwby5wcm90b3R5cGUuc2V0Q3VzdG9tQ3NzPWZ1bmN0aW9uKCl7dmFyIGU9IiI7cmV0dXJuIEwucGNDdXN0b21DU1MmJihlKz1MLnBjQ3VzdG9tQ1NTKSxlfTt2YXIgY28sdW89cG87ZnVuY3Rpb24gcG8oKXt0aGlzLnByb2Nlc3NlZENTUz0iIix0aGlzLmFkZEN1c3RvbUJhbm5lckNTUz1mdW5jdGlvbigpe3ZhciBlPUwuYmFja2dyb3VuZENvbG9yLHQ9TC5idXR0b25Db2xvcixvPUwudGV4dENvbG9yLG49TC5idXR0b25UZXh0Q29sb3Iscj1MLmJhbm5lck1QQnV0dG9uQ29sb3IsaT1MLmJhbm5lck1QQnV0dG9uVGV4dENvbG9yLHM9TC5iYW5uZXJBY2NvcmRpb25CYWNrZ3JvdW5kQ29sb3IsYT1MLkJTYXZlQnRuQ29sb3IsbD1MLkJDYXRlZ29yeUNvbnRhaW5lckNvbG9yLGM9TC5CTGluZUJyZWFrQ29sb3IsZD1MLkJDYXRlZ29yeVN0eWxlQ29sb3IsdT1MLmJhbm5lckxpbmtzVGV4dENvbG9yLHA9TC5CRm9jdXNCb3JkZXJDb2xvcixvPSJcbiAgICAgICAgIisoYi5iYW5uZXJOYW1lPT09UWU/ZT8iI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1zZGstY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIitlKyI7fSI6IiI6ZT8iI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1iYW5uZXItc2RrIHtiYWNrZ3JvdW5kLWNvbG9yOiAiK2UrIjt9IjoiIikrIlxuICAgICAgICAgICAgIisobz8iI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wb2xpY3ktdGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcG9saWN5LXRleHQsXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAub3QtYi1hZGRsLWRlc2MsXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAub3QtZHBkLWRlc2MsXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAub3QtZHBkLXRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBvbGljeS10ZXh0ICo6bm90KC5vbmV0cnVzdC12ZW5kb3JzLWxpc3QtaGFuZGxlciksXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAub3QtZHBkLWRlc2MgKjpub3QoLm9uZXRydXN0LXZlbmRvcnMtbGlzdC1oYW5kbGVyKSxcbiAgICAgICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1iYW5uZXItc2RrICNiYW5uZXItb3B0aW9ucyAqLFxuICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtYmFubmVyLXNkayAub3QtY2F0LWhlYWRlcixcbiAgICAgICAgICAgICAgICAgICAgI29uZXRydXN0LWJhbm5lci1zZGsgLm90LW9wdG91dC1zaWduYWxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIrbysiO1xuICAgICAgICAgICAgICAgICAgICB9IjoiIikrIlxuICAgICAgICAgICAgIisocz8iI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1iYW5uZXItc2RrIC5iYW5uZXItb3B0aW9uLWRldGFpbHMge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAiK3MrIjt9IjoiIikrIlxuICAgICAgICAgICAgIisodT8iICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtYmFubmVyLXNkayBhW2hyZWZdLFxuICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LWJhbm5lci1zZGsgYVtocmVmXSBmb250LFxuICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LWJhbm5lci1zZGsgLm90LWxpbmstYnRuXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIrdSsiO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSI6IiIpO3JldHVybih0fHxuKSYmKG8rPSIjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LWFjY2VwdC1idG4taGFuZGxlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcmVqZWN0LWFsbC1oYW5kbGVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1iYW5uZXItc2RrICNvdC1kaWFsb2ctY29uZmlybS1oYW5kbGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKyh0PyJiYWNrZ3JvdW5kLWNvbG9yOiAiK3QrIjtib3JkZXItY29sb3I6ICIrdCsiOyI6IiIpKyJcbiAgICAgICAgICAgICAgICAiKyhuPyJjb2xvcjogIituKyI7IjoiIikrIlxuICAgICAgICAgICAgfSIpLHAmJihvKz0iXG4gICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LWJhbm5lci1zZGsgKjpmb2N1cyxcbiAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtYmFubmVyLXNkazpmb2N1cyB7XG4gICAgICAgICAgICAgICBvdXRsaW5lLWNvbG9yOiAiK3ArIjtcbiAgICAgICAgICAgICAgIG91dGxpbmUtd2lkdGg6IDFweDtcbiAgICAgICAgICAgIH0iKSwoaXx8cikmJihvKz0iXG4gICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLWJ0bi1oYW5kbGVyLFxuICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1idG4taGFuZGxlci5jb29raWUtc2V0dGluZy1saW5rLFxuICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvdC1kaWFsb2ctY2FuY2VsLWhhbmRsZXIge1xuICAgICAgICAgICAgICAgICIrKGk/ImNvbG9yOiAiK2krIjsgYm9yZGVyLWNvbG9yOiAiK2krIjsiOiIiKSsiXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpcbiAgICAgICAgICAgICAgICAiKyhyJiYhTC5CYW5uZXJTZXR0aW5nc0J1dHRvbkRpc3BsYXlMaW5rP3I6ZSkrIjtcbiAgICAgICAgICAgIH0iKSxiLmJhbm5lck5hbWU9PT1ldCYmKHI9aT10PXU9cz12b2lkIDAsZCYmKGk9ImJhY2tncm91bmQtY29sb3I6ICIrZCsiOyIscj0iYm9yZGVyLWNvbG9yOiAiK2QrIjsiKSxwJiYobys9IlxuICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtYmFubmVyLXNkayAub3QtdGdsIGlucHV0OmZvY3VzKy5vdC1zd2l0Y2ggLm90LXN3aXRjaC1ub2IsXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1jaGtib3ggaW5wdXQ6Zm9jdXMgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZS1jb2xvcjogIitwKyI7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmUtd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICB9Iiksbys9IiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1ibnItc2F2ZS1oYW5kbGVyIHsiKyhzPWE/ImNvbG9yOiAiK24rIjtib3JkZXItY29sb3I6ICIrbisiO2JhY2tncm91bmQtY29sb3I6ICIrYSsiOyI6cykrIn0jb25ldHJ1c3QtYmFubmVyLXNkayAub3QtY2F0LWxzdCB7IisodT1sPyJiYWNrZ3JvdW5kLWNvbG9yOiAiK2wrIjsiOnUpKyJ9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LWNhdC1iZHIgeyIrKHQ9Yz8iYm9yZGVyLWNvbG9yOiAiK2MrIjsiOnQpKyJ9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXRnbCBpbnB1dDpjaGVja2VkKy5vdC1zd2l0Y2ggLm90LXN3aXRjaC1ub2I6YmVmb3JlLCNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1jaGtib3ggaW5wdXQ6Y2hlY2tlZH5sYWJlbDo6YmVmb3JlIHsiK2krIn0jb25ldHJ1c3QtYmFubmVyLXNkayAub3QtY2hrYm94IGxhYmVsOjpiZWZvcmUsI29uZXRydXN0LWJhbm5lci1zZGsgLm90LXRnbCBpbnB1dDpjaGVja2VkKy5vdC1zd2l0Y2ggLm90LXN3aXRjaC1ub2IgeyIrcisifSNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wYy1idG4taGFuZGxlci5jb29raWUtc2V0dGluZy1saW5rIHtiYWNrZ3JvdW5kOiBpbmhlcml0fSIpLEwuQkNsb3NlQnV0dG9uVHlwZT09PVBlLkxpbmsmJihvKz0iI29uZXRydXN0LWJhbm5lci1zZGsub3QtY2xvc2UtYnRuLWxpbmsgLmJhbm5lci1jbG9zZS1idXR0b24ge2NvbG9yOiAiK0wuQkNvbnRpbnVlQ29sb3IrIn0iKSxvKz1jby5zZXRCYW5uZXJMaW5rTWFyZ2lucygpfSx0aGlzLmFkZEN1c3RvbVByZWZlcmVuY2VDZW50ZXJDU1M9ZnVuY3Rpb24oKXt2YXIgZT1MLnBjQmFja2dyb3VuZENvbG9yLHQ9TC5wY1RleHRDb2xvcixvPUwucGNMaW5rc1RleHRDb2xvcixuPUwuUENlbnRlckVuYWJsZUFjY29yZGlvbixyPUwucGNBY2NvcmRpb25CYWNrZ3JvdW5kQ29sb3IsZT0iXG4gICAgICAgICAgICAiKyhlPyhiLnBjTmFtZT09PW50PyIjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAuZ3JvdXAtcGFyZW50LWNvbnRhaW5lcixcbiAgICAgICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5tYW5hZ2UtcGMtY29udGFpbmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfTGlzdDoiI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsiKSsiLFxuICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAiK0EuUF9TZWFyY2hfQ250cisiLFxuICAgICAgICAgICAgICAgICIrKG4mJmIucGNOYW1lPT09bnQ/IiNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0IitBLlBfQ2F0ZWdvcnlfSXRlbToiI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLm90LXN3aXRjaC5vdC10b2dnbGUiKSsiLFxuICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1RhYl9HcnBfSGRyKyIgLmNoZWNrYm94LFxuICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1RpdGxlKyI6YWZ0ZXJcbiAgICAgICAgICAgICAgICAiKyhTLmlzVjJUZW1wbGF0ZT8iLCNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWwtYmxrLFxuICAgICAgICAgICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgI290LWZsdHItY250LFxuICAgICAgICAgICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVHJpYW5nbGU6IiIpKyIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAiK2UrIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAiOiIiKSsiXG4gICAgICAgICAgICAiKyh0PyIjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayBoMyxcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayBoNCxcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayBoNSxcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayBoNixcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayBwLFxuICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250YWluZXIrIiAiK0EuUF9WZW5fT3B0cysiIHAsXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfUG9saWN5X1R4dCsiLFxuICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1RpdGxlKyIsXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfTGlfVGl0bGUrIixcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAiK0EuUF9MZWdfU2VsZWN0X0FsbCsiIHNwYW4sXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfSG9zdF9DbnRyKyIgIitBLlBfSG9zdF9JbmZvKyIsXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfRmx0cl9Nb2RhbCsiICNtb2RhbC1oZWFkZXIsXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLm90LWNoZWNrYm94IGxhYmVsIHNwYW4sXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0xpc3QrIiAiK0EuUF9TZWxlY3RfQ250cisiIHAsXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0xpc3QrIiAiK0EuUF9WZW5kb3JfVGl0bGUrIixcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfTGlzdCsnICNvdC1sc3QtdGl0bGUgcFthcmlhLWxldmVsPSIzIl0sXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgJytBLlBfVmVuZG9yX0xpc3QrIiAuYmFjay1idG4taGFuZGxlciBwLFxuICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9MaXN0KyIgIitBLlBfVmVuX05hbWUrIixcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfTGlzdCsiICIrQS5QX1ZlbmRvcl9Db250YWluZXIrIiAuY29uc2VudC1jYXRlZ29yeSxcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAub3QtbGVnLWJ0bi1jb250YWluZXIgLm90LWluYWN0aXZlLWxlZy1idG4sXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLm90LWxhYmVsLXN0YXR1cyxcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAub3QtY2hrYm94IGxhYmVsIHNwYW4sXG4gICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgI2NsZWFyLWZpbHRlcnMtaGFuZGxlcixcbiAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAub3Qtb3B0b3V0LXNpZ25hbFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIrdCsiO1xuICAgICAgICAgICAgICAgIH0iOiIiKSsiXG4gICAgICAgICAgICAiKyhvPyIgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLnByaXZhY3ktbm90aWNlLWxpbmssXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC1wZ3BoLWxpbmssXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS12ZW5kb3JzLWxpc3QtaGFuZGxlcixcbiAgICAgICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLmNhdGVnb3J5LXZlbmRvcnMtbGlzdC1oYW5kbGVyICsgYSxcbiAgICAgICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLmNhdGVnb3J5LWhvc3QtbGlzdC1oYW5kbGVyLFxuICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5fTGluaysiLFxuICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5fTGVnX0NsYWltKyIsXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0hvc3RfQ250cisiICIrQS5QX0hvc3RfVGl0bGUrIiBhLFxuICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAiK0EuUF9Ib3N0X0NudHIrIiAiK0EuUF9BY2NfSGVhZGVyKyIgIitBLlBfSG9zdF9WaWV3X0Nvb2tpZXMrIixcbiAgICAgICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfSG9zdF9DbnRyKyIgIitBLlBfSG9zdF9JbmZvKyIgYSxcbiAgICAgICAgICAgICAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ29udGVudCsiICIrQS5QX1BvbGljeV9UeHQrIiAub3QtbGluay1idG4sXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gLm90LXZuZC1pbmZvIGEsXG4gICAgICAgICAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtY250IC5vdC12bmQtaW5mbyBhLFxuICAgICAgICAgICAgICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAjb3QtcGMtZGVzYyBhXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAiK28rIjtcbiAgICAgICAgICAgICAgICAgICAgfSI6IiIpKyJcbiAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS12ZW5kb3JzLWxpc3QtaGFuZGxlcjpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICAgICAgICAgICIrKG4mJnI/IiNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0FjY19Db250YWluZXIrQS5QX0FjY19UeHQrIixcbiAgICAgICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0FjY19UeHQrIiAiK0EuUF9TdWJncnBfVGdsX0NudHIrIiAub3Qtc3dpdGNoLm90LXRvZ2dsZVxuICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAiK3IrIjtcbiAgICAgICAgICAgIH0iOiIiKSsiXG4gICAgICAgICAgICAiKyhyPyIgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfSG9zdF9DbnRyKyIgIitBLlBfSG9zdF9JbmZvKyIsXG4gICAgICAgICAgICAgICAgICAgICIrKFMuaXNWMlRlbXBsYXRlPyIjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAiK0EuUF9BY2NfVHh0KyIgLm90LXZlbi1kZXRzIjoiI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQWNjX1R4dCsiICIrQS5QX1Zlbl9PcHRzKSsiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAiK3IrIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IjoiIikrIlxuICAgICAgICAiLGU9KGU9KGU9KGU9KGU9KGU9KGUrPWNvLnNldEJ1dG9uQ29sb3IoKSkrY28uc2V0VG9nZ2xlQ29sb3IoKSkrY28uc2V0Rm9jdXNCb3JkZXJDb2xvcigpKStjby5zZXRDbG9zZUljb25Db2xvcigpKStjby5zZXRUYWJMYXlvdXRTdHlsZXMoKSkrY28uc2V0VGFiTGF5b3V0U3R5bGVzKCkpK2NvLnNldEZvY3VzSWZUZW1wbGF0ZVVwZ3JhZGUoKTtyZXR1cm4gY28uc2hvdWxkQWRkRXh0SWNvbkNzcygpJiYoZSs9Y28uc2V0RXh0TG5rVXJsKCkpLGUrPWNvLnNldEN1c3RvbUNzcygpfSx0aGlzLmFkZEN1c3RvbUNvb2tpZUxpc3RDU1M9ZnVuY3Rpb24oKXt2YXIgZT1MLkNvb2tpZXNWMk5ld0Nvb2tpZVBvbGljeT8iLXYyLm90LXNkay1jb29raWUtcG9saWN5IjoiIixlPSJcbiAgICAgICAgICAgICAgICAiKyhMLmNvb2tpZUxpc3RQcmltYXJ5Q29sb3I/IlxuICAgICAgICAgICAgICAgICAgICAjb3Qtc2RrLWNvb2tpZS1wb2xpY3kiK2UrIiBoNSxcbiAgICAgICAgICAgICAgICAgICAgI290LXNkay1jb29raWUtcG9saWN5IitlKyIgaDYsXG4gICAgICAgICAgICAgICAgICAgICNvdC1zZGstY29va2llLXBvbGljeSIrZSsiIGxpLFxuICAgICAgICAgICAgICAgICAgICAjb3Qtc2RrLWNvb2tpZS1wb2xpY3kiK2UrIiBwLFxuICAgICAgICAgICAgICAgICAgICAjb3Qtc2RrLWNvb2tpZS1wb2xpY3kiK2UrIiBhLFxuICAgICAgICAgICAgICAgICAgICAjb3Qtc2RrLWNvb2tpZS1wb2xpY3kiK2UrIiBzcGFuLFxuICAgICAgICAgICAgICAgICAgICAjb3Qtc2RrLWNvb2tpZS1wb2xpY3kiK2UrIiB0ZCxcbiAgICAgICAgICAgICAgICAgICAgI290LXNkay1jb29raWUtcG9saWN5IitlKyIgI2Nvb2tpZS1wb2xpY3ktZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIrTC5jb29raWVMaXN0UHJpbWFyeUNvbG9yKyI7XG4gICAgICAgICAgICAgICAgICAgIH0iOiIiKSsiXG4gICAgICAgICAgICAgICAgICAgICIrKEwuY29va2llTGlzdFRhYmxlSGVhZGVyQ29sb3I/IiNvdC1zZGstY29va2llLXBvbGljeSIrZSsiIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAiK0wuY29va2llTGlzdFRhYmxlSGVhZGVyQ29sb3IrIjtcbiAgICAgICAgICAgICAgICAgICAgfSI6IiIpKyJcbiAgICAgICAgICAgICAgICAgICAgIisoTC5jb29raWVMaXN0R3JvdXBOYW1lQ29sb3I/IiNvdC1zZGstY29va2llLXBvbGljeSIrZSsiIC5vdC1zZGstY29va2llLXBvbGljeS1ncm91cCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIitMLmNvb2tpZUxpc3RHcm91cE5hbWVDb2xvcisiO1xuICAgICAgICAgICAgICAgICAgICB9IjoiIikrIlxuICAgICAgICAgICAgICAgICAgICAiKyhMLmNvb2tpZUxpc3RUaXRsZUNvbG9yPyJcbiAgICAgICAgICAgICAgICAgICAgI290LXNkay1jb29raWUtcG9saWN5IitlKyIgI2Nvb2tpZS1wb2xpY3ktdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAiK0wuY29va2llTGlzdFRpdGxlQ29sb3IrIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgIjoiIikrIlxuICAgICAgICAgICAgIisoZSYmTC5Db29raWVMaXN0VGFibGVIZWFkZXJCYWNrZ3JvdW5kQ29sb3I/IlxuICAgICAgICAgICAgICAgICAgICAjb3Qtc2RrLWNvb2tpZS1wb2xpY3kiK2UrIiB0YWJsZSB0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIitMLkNvb2tpZUxpc3RUYWJsZUhlYWRlckJhY2tncm91bmRDb2xvcisiO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAiOiIiKSsiXG4gICAgICAgICAgICAiO3JldHVybiBMLmNvb2tpZUxpc3RDdXN0b21Dc3MmJihlKz1MLmNvb2tpZUxpc3RDdXN0b21Dc3MpLGV9fWhvLnByb3RvdHlwZS5nZXRBbGxvd0FsbEJ1dHRvbj1mdW5jdGlvbigpe3JldHVybiB2KCIjb25ldHJ1c3QtcGMtc2RrICNhY2NlcHQtcmVjb21tZW5kZWQtYnRuLWhhbmRsZXIiKX0saG8ucHJvdG90eXBlLmdldFNlbGVjdGVkVmVuZG9ycz1mdW5jdGlvbigpe3JldHVybiB2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1RnbF9DbnRyKyIgLm90LWNoZWNrYm94IGlucHV0OmNoZWNrZWQiKX07dmFyIENvLGdvPWhvO2Z1bmN0aW9uIGhvKCl7fVNvLnByb3RvdHlwZS5pc0lhYkNvb2tpZVZhbGlkPWZ1bmN0aW9uKCl7dmFyIGU9bnVsbDtyZXR1cm4gbnVsbCE9PShlPWIuaXNJYWIyb3J2MlRlbXBsYXRlP1QuZ2V0Q29va2llKCJldXB1YmNvbnNlbnQtdjIiKTplKX0sU28ucHJvdG90eXBlLmlhYlR5cGVJc0NoYW5nZWQ9ZnVuY3Rpb24oKXt0aGlzLmlzSWFiQ29va2llVmFsaWQoKXx8KFQucmVtb3ZlQWxlcnRCb3goKSxULnJlbW92ZUlhYjEoKSl9LFNvLnByb3RvdHlwZS5pbml0aWFsaXplSUFCTW9kdWxlPWZ1bmN0aW9uKCl7cmV0dXJuIEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtzd2l0Y2goZS5sYWJlbCl7Y2FzZSAwOnJldHVybiBMLklzSWFiRW5hYmxlZD8oUy5tb2R1bGVJbml0aWFsaXplci5vdElBQk1vZHVsZURhdGE9d2luZG93Lm90SWFiTW9kdWxlLE8uc2V0SWFiRGF0YSgpLFs0LE8ucG9wdWxhdGVWZW5kb3JMaXN0VENGKCldKTpbMywyXTtjYXNlIDE6cmV0dXJuIGUuc2VudCgpLE8uaXNJQUJDcm9zc0NvbnNlbnRFbmFibGVkKCl8fHRoaXMuaWFiVHlwZUlzQ2hhbmdlZCgpLE8ucG9wdWxhdGVJQUJDb29raWVzKCksTC5Vc2VHb29nbGVWZW5kb3JzJiYoTC5OZXdWZW5kb3JzSW5hY3RpdmVFbmFibGVkJiZ0aGlzLnJlbW92ZUFUUExpc3RWZW5kb3JzKCksdGhpcy5yZW1vdmVJbkFjdGl2ZUFkZHRsVmVuZG9ycygpKSxbMywzXTtjYXNlIDI6VC5yZW1vdmVJYWIxKCksZS5sYWJlbD0zO2Nhc2UgMzpyZXR1cm5bMl19fSl9KX0sU28ucHJvdG90eXBlLnJlbW92ZUFUUExpc3RWZW5kb3JzPWZ1bmN0aW9uKCl7dmFyIGUsdCxvPVMubW9kdWxlSW5pdGlhbGl6ZXIuR29vZ2xlRGF0YS52ZW5kb3JMaXN0VmVyc2lvbjtmb3IodCBpbiBfLmFkZHRsVmVuZG9yc0xpc3QpKG51bGw9PShlPV8uYWRkdGxWZW5kb3JzTGlzdFt0XSk/dm9pZCAwOmUuZ3ZsVmVyc2lvbik+byYmKF8uZGVsZXRlZEdvb2dsZVZlbmRvcnNbdF09Xy5hZGR0bFZlbmRvcnNMaXN0W3RdLGRlbGV0ZSBfLmFkZHRsVmVuZG9yc0xpc3RbdF0pfSxTby5wcm90b3R5cGUucmVtb3ZlSW5BY3RpdmVBZGR0bFZlbmRvcnM9ZnVuY3Rpb24oKXt2YXIgZSx0PUwuT3ZlcnJpZGVuR29vZ2xlVmVuZG9ycztmb3IoZSBpbiB0KXRbZV0uYWN0aXZlfHxkZWxldGUgXy5hZGR0bFZlbmRvcnNMaXN0W2VdfSxTby5wcm90b3R5cGUuZ2V0SUFCQ29uc2VudERhdGE9ZnVuY3Rpb24oKXt2YXIgZT1fLm9uZVRydXN0SUFCQ29uc2VudCx0PU8uaWFiU3RyaW5nU0RLKCkudGNTdHJpbmcoKSxvPShfLnRjTW9kZWwudW5zZXRBbGxQdXJwb3NlQ29uc2VudHMoKSxfLnRjTW9kZWwudW5zZXRBbGxWZW5kb3JDb25zZW50cygpLF8udGNNb2RlbC51bnNldEFsbFZlbmRvckxlZ2l0aW1hdGVJbnRlcmVzdHMoKSxfLnRjTW9kZWwudW5zZXRBbGxTcGVjaWFsRmVhdHVyZU9wdGlucygpLF8udGNNb2RlbC51bnNldEFsbFB1cnBvc2VMZWdpdGltYXRlSW50ZXJlc3RzKCksXy50Y01vZGVsLnB1Ymxpc2hlckNvbnNlbnRzLmVtcHR5KCksXy50Y01vZGVsLnB1Ymxpc2hlckxlZ2l0aW1hdGVJbnRlcmVzdHMuZW1wdHkoKSxfLnRjTW9kZWwucHVycG9zZUNvbnNlbnRzLnNldChQLmdldEFjdGl2ZUlkQXJyYXkoZS5wdXJwb3NlKSksXy50Y01vZGVsLnB1Ymxpc2hlckNvbnNlbnRzLnNldChQLmdldEFjdGl2ZUlkQXJyYXkoZS5wdXJwb3NlKSksYi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMST9QLmdldEFjdGl2ZUlkQXJyYXkoZS5sZWdpbWF0ZUludGVyZXN0KTpbXSksbz0oXy50Y01vZGVsLnB1cnBvc2VMZWdpdGltYXRlSW50ZXJlc3RzLnNldChvKSxfLnRjTW9kZWwucHVibGlzaGVyTGVnaXRpbWF0ZUludGVyZXN0cy5zZXQobyksXy50Y01vZGVsLnZlbmRvckNvbnNlbnRzLnNldChQLmdldEFjdGl2ZUlkQXJyYXkoUC5kaXN0aW5jdEFycmF5KGUudmVuZG9ycykpKSxiLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJJiZ0aGlzLnNob3VsZFNldFZlbmRvckxlZ2l0aW1hdGVJbnRlcmVzdChlKSYmKGUubGVnSW50VmVuZG9ycz1bXSksXy50Y01vZGVsLnZlbmRvckxlZ2l0aW1hdGVJbnRlcmVzdHMuc2V0KFAuZ2V0QWN0aXZlSWRBcnJheShQLmRpc3RpbmN0QXJyYXkoZS5sZWdJbnRWZW5kb3JzKSkpLF8udGNNb2RlbC5zcGVjaWFsRmVhdHVyZU9wdGlucy5zZXQoUC5nZXRBY3RpdmVJZEFycmF5KGUuc3BlY2lhbEZlYXR1cmVzKSksbmV3IERhdGUpLGU9bmV3IERhdGUoby5nZXRVVENGdWxsWWVhcigpLG8uZ2V0VVRDTW9udGgoKSxvLmdldFVUQ0RhdGUoKSwwLDAsMCksbz0oXy50Y01vZGVsLmxhc3RVcGRhdGVkPWUsXy50Y01vZGVsLmNyZWF0ZWQ9ZSx0LmVuY29kZShfLnRjTW9kZWwpKTtyZXR1cm4gXy5jbXBBcGkudXBkYXRlKG8sITEpLG99LFNvLnByb3RvdHlwZS5zaG91bGRTZXRWZW5kb3JMZWdpdGltYXRlSW50ZXJlc3Q9ZnVuY3Rpb24oZSl7cmV0dXJuIV8uYW55VmVuZG9ySGFzT25seVNwbFB1ciYmIVAuZ2V0QWN0aXZlSWRBcnJheShlLmxlZ2ltYXRlSW50ZXJlc3QpfSxTby5wcm90b3R5cGUuZGVjb2RlVENTdHJpbmc9ZnVuY3Rpb24oZSl7cmV0dXJuIE8uaWFiU3RyaW5nU0RLKCkudGNTdHJpbmcoKS5kZWNvZGUoZSl9LFNvLnByb3RvdHlwZS5nZXRWZW5kb3JDb25zZW50c1JlcXVlc3RWMj1mdW5jdGlvbihlKXt2YXIgbztyZXR1cm4gd2luZG93Ll9fdGNmYXBpKCJnZXRJbkFwcFRDRGF0YSIsMixmdW5jdGlvbihlLHQpe289W2UsdF19KSxlLmFwcGx5KHRoaXMsbyl9LFNvLnByb3RvdHlwZS5nZXRQaW5nUmVxdWVzdEZvclRjZj1mdW5jdGlvbihlKXt2YXIgdDtyZXR1cm4gd2luZG93Ll9fdGNmYXBpKCJwaW5nIiwyLGZ1bmN0aW9uKGUpe3Q9W2VdfSksZS5hcHBseSh0aGlzLHQpfSxTby5wcm90b3R5cGUucG9wdWxhdGVWZW5kb3JBbmRQdXJwb3NlRnJvbUNvb2tpZURhdGE9ZnVuY3Rpb24oKXt2YXIgbj1fLm9uZVRydXN0SUFCQ29uc2VudCxlPXlvLmRlY29kZVRDU3RyaW5nKG4uSUFCQ29va2llVmFsdWUpLHQ9ay5Hcm91cFR5cGVzLHI9e30saT17fSxzPShiLmlhYkdycHMuZm9yRWFjaChmdW5jdGlvbihlKXtlLlR5cGU9PT10LlB1cj9yW2IuaWFiR3JwSWRNYXBbZS5DdXN0b21Hcm91cElkXV09ZTplLlR5cGU9PT10LlNwbF9GdCYmKGlbYi5pYWJHcnBJZE1hcFtlLkN1c3RvbUdyb3VwSWRdXT1lKX0pLFtdKTt0aGlzLnN5bmNWZW5kb3JDb25zZW50KGUpLHM9W10sZS52ZW5kb3JMZWdpdGltYXRlSW50ZXJlc3RzLmZvckVhY2goZnVuY3Rpb24oZSx0KXt2YXIgbz1lO18udmVuZG9yc1NldHRpbmdbdF0mJl8udmVuZG9yc1NldHRpbmdbdF0ubGVnSW50fHwhZXx8KHMucHVzaCh0KSxvPSExKSxuLmxlZ0ludFZlbmRvcnMucHVzaCh0KyI6IitvKX0pLGUudmVuZG9yTGVnaXRpbWF0ZUludGVyZXN0cy51bnNldChzKSxzPVtdLGUucHVycG9zZUNvbnNlbnRzLmZvckVhY2goZnVuY3Rpb24oZSxvKXt2YXIgdD1lLGU9KCEocltvXSYmcltvXS5IYXNDb25zZW50T3B0T3V0KSYmZSYmKHMucHVzaChvKSx0PSExKSxQLmZpbmRJbmRleChuLnB1cnBvc2UsZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS5zcGxpdCgiOiIpWzBdPT09by50b1N0cmluZygpfSkpOy0xPT09ZT9uLnB1cnBvc2UucHVzaChvKyI6Iit0KTpuLnB1cnBvc2VbZV09bysiOiIrdH0pLGUucHVycG9zZUNvbnNlbnRzLnVuc2V0KHMpLGUucHVibGlzaGVyQ29uc2VudHMudW5zZXQocykscz1bXSxlLnNwZWNpYWxGZWF0dXJlT3B0aW5zLmZvckVhY2goZnVuY3Rpb24oZSxvKXt2YXIgdD1lLGU9KCEoaVtvXSYmaVtvXS5IYXNDb25zZW50T3B0T3V0KSYmZSYmKHMucHVzaChvKSx0PSExKSxQLmZpbmRJbmRleChuLnNwZWNpYWxGZWF0dXJlcyxmdW5jdGlvbihlLHQpe3JldHVybiBlLnNwbGl0KCI6IilbMF09PT1vLnRvU3RyaW5nKCl9KSk7LTE9PT1lP24uc3BlY2lhbEZlYXR1cmVzLnB1c2gobysiOiIrdCk6bi5zcGVjaWFsRmVhdHVyZXNbZV09bysiOiIrdH0pLGUuc3BlY2lhbEZlYXR1cmVPcHRpbnMudW5zZXQocyksdGhpcy5zeW5jUHVyQW5kUHViTGVnSW50KGUsciksdGhpcy5zeW5jQnVuZGxlQW5kU3RhY2soKSxlLmd2bD1fLnRjTW9kZWwuZ3ZsLGUuaXNTZXJ2aWNlU3BlY2lmaWM9IU8uaXNJQUJDcm9zc0NvbnNlbnRFbmFibGVkKCksXy50Y01vZGVsPWUsTy5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKT9fLmNtcEFwaS51cGRhdGUobi5JQUJDb29raWVWYWx1ZSwhMSk6Ty5yZXNldFRDTW9kZWwoKX0sU28ucHJvdG90eXBlLnN5bmNWZW5kb3JDb25zZW50PWZ1bmN0aW9uKGUpe3ZhciBuPVtdLHI9W107ZS52ZW5kb3JDb25zZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7dmFyIG89ZTtfLnZlbmRvcnNTZXR0aW5nW3RdJiZfLnZlbmRvcnNTZXR0aW5nW3RdLmNvbnNlbnR8fCFlfHwobi5wdXNoKHQpLG89ITEpLHIucHVzaCh0KyI6IitvKX0pLF8ub25lVHJ1c3RJQUJDb25zZW50LnZlbmRvcnM9cixlLnZlbmRvckNvbnNlbnRzLnVuc2V0KG4pfSxTby5wcm90b3R5cGUuc3luY1B1ckFuZFB1YkxlZ0ludD1mdW5jdGlvbihlLG4pe3ZhciByPVtdLGk9Xy5vbmVUcnVzdElBQkNvbnNlbnQ7ZS5wdXJwb3NlTGVnaXRpbWF0ZUludGVyZXN0cy5mb3JFYWNoKGZ1bmN0aW9uKGUsbyl7dmFyIHQ9ZSxlPSghKG5bb10mJm5bb10uSGFzTGVnSW50T3B0T3V0JiZiLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJKSYmZSYmKHIucHVzaChvKSx0PSExKSxQLmZpbmRJbmRleChpLmxlZ2ltYXRlSW50ZXJlc3QsZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS5zcGxpdCgiOiIpWzBdPT09by50b1N0cmluZygpfSkpOy0xPT09ZT9pLmxlZ2ltYXRlSW50ZXJlc3QucHVzaChvKyI6Iit0KTppLmxlZ2ltYXRlSW50ZXJlc3RbZV09bysiOiIrdH0pLGUucHVycG9zZUxlZ2l0aW1hdGVJbnRlcmVzdHMudW5zZXQociksZS5wdWJsaXNoZXJMZWdpdGltYXRlSW50ZXJlc3RzLnVuc2V0KHIpfSxTby5wcm90b3R5cGUuc3luY0J1bmRsZUFuZFN0YWNrPWZ1bmN0aW9uKCl7dmFyIGU9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImdyb3VwcyIpLG49KF8uZ3JvdXBzQ29uc2VudD1QLnN0clRvQXJyKGUpLGsuR3JvdXBUeXBlcyk7TC5Hcm91cHMuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZSxvO3QuVHlwZSE9PW4uQnVuZGxlJiZ0LlR5cGUhPT1uLlN0YWNrfHwobz1JLmlzQnVuZGxlT3JTdGFja0FjdGl2ZSh0KSxlPVAuZmluZEluZGV4KF8uZ3JvdXBzQ29uc2VudCxmdW5jdGlvbihlKXtyZXR1cm4gZS5zcGxpdCgiOiIpWzBdPT09dC5DdXN0b21Hcm91cElkfSksbz10LkN1c3RvbUdyb3VwSWQrIjoiK051bWJlcihvKSwtMTxlP18uZ3JvdXBzQ29uc2VudFtlXT1vOl8uZ3JvdXBzQ29uc2VudC5wdXNoKG8pKX0pLFQud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCwiZ3JvdXBzIixfLmdyb3Vwc0NvbnNlbnQuam9pbigiLCIpKX0sU28ucHJvdG90eXBlLnBvcHVsYXRlR29vZ2xlQ29uc2VudD1mdW5jdGlvbigpe3ZhciBlO0wuVXNlR29vZ2xlVmVuZG9ycyYmKGU9VC5nZXRDb29raWUoeS5BRERJVElPTkFMX0NPTlNFTlRfU1RSSU5HKSkmJihfLmlzQWRkdGxDb25zZW50PSEwLF8uYWRkdGxWZW5kb3JzLnZlbmRvckNvbnNlbnQ9ZS5yZXBsYWNlKF8uYWRkdGxDb25zZW50VmVyc2lvbiwiIikuc3BsaXQoIi4iKSl9LFNvLnByb3RvdHlwZS5pc0luaXRJQUJDb29raWVEYXRhPWZ1bmN0aW9uKGUpe3JldHVybiJpbml0Ij09PWV8fE8ubmVlZFJlY29uc2VudCgpfSxTby5wcm90b3R5cGUudXBkYXRlRnJvbUdsb2JhbENvbnNlbnQ9ZnVuY3Rpb24oZSl7dmFyIHQ9Xy5vbmVUcnVzdElBQkNvbnNlbnQ7dC5JQUJDb29raWVWYWx1ZT1lLHQucHVycG9zZT10LnB1cnBvc2V8fFtdLHQuc3BlY2lhbEZlYXR1cmVzPXQuc3BlY2lhbEZlYXR1cmVzfHxbXSx0LmxlZ0ludFZlbmRvcnM9W10sdC5sZWdpbWF0ZUludGVyZXN0PXQubGVnaW1hdGVJbnRlcmVzdHx8W10sdC52ZW5kb3JzPVtdLHlvLnBvcHVsYXRlVmVuZG9yQW5kUHVycG9zZUZyb21Db29raWVEYXRhKCksVC5zZXRDb29raWUoeS5FVV9QVUJfQ09OU0VOVCwiIiwtMSl9O3ZhciB5byxmbz1TbztmdW5jdGlvbiBTbygpe31Uby5wcm90b3R5cGUubG9hZEJhbm5lcj1mdW5jdGlvbigpe1MubW9kdWxlSW5pdGlhbGl6ZXIuU2NyaXB0RHluYW1pY0xvYWRFbmFibGVkPyJjb21wbGV0ZSI9PT1kb2N1bWVudC5yZWFkeVN0YXRlP3Yod2luZG93KS50cmlnZ2VyKCJvdGxvYWRiYW5uZXIiKTp3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oZSl7dih3aW5kb3cpLnRyaWdnZXIoIm90bG9hZGJhbm5lciIpfSk6ImxvYWRpbmciIT09ZG9jdW1lbnQucmVhZHlTdGF0ZT92KHdpbmRvdykudHJpZ2dlcigib3Rsb2FkYmFubmVyIik6d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGZ1bmN0aW9uKGUpe3Yod2luZG93KS50cmlnZ2VyKCJvdGxvYWRiYW5uZXIiKX0pLGIucHViRG9tYWluRGF0YS5Jc0Jhbm5lckxvYWRlZD0hMH0sVG8ucHJvdG90eXBlLk9uQ29uc2VudENoYW5nZWQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS50b1N0cmluZygpO21vLmNvbnNlbnRDaGFuZ2VkRXZlbnRNYXBbdF18fChtby5jb25zZW50Q2hhbmdlZEV2ZW50TWFwW3RdPSEwLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJjb25zZW50Lm9uZXRydXN0IixlKSl9LFRvLnByb3RvdHlwZS50cmlnZ2VyR29vZ2xlQW5hbHl0aWNzRXZlbnQ9ZnVuY3Rpb24oZSx0LG8sbil7dmFyIHI9ITE7Uy5tb2R1bGVJbml0aWFsaXplci5HQVRyYWNrVG9nZ2xlJiYoIkFTIj09PVMubW9kdWxlSW5pdGlhbGl6ZXIuR0FUcmFja0Fzc2lnbmVkQ2F0ZWdvcnl8fCIiPT09Uy5tb2R1bGVJbml0aWFsaXplci5HQVRyYWNrQXNzaWduZWRDYXRlZ29yeXx8d2luZG93Lk9uZXRydXN0QWN0aXZlR3JvdXBzLmluY2x1ZGVzKCIsIitTLm1vZHVsZUluaXRpYWxpemVyLkdBVHJhY2tBc3NpZ25lZENhdGVnb3J5KyIsIikpJiYocj0hMCksIWIuaWdub3JlR29vZ2xlQW5seXRpY3NDYWxsJiZyJiYodm9pZCAwIT09d2luZG93Ll9nYXEmJndpbmRvdy5fZ2FxLnB1c2goWyJfdHJhY2tFdmVudCIsZSx0LG8sbl0pLCJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuZ2EmJndpbmRvdy5nYSgic2VuZCIsImV2ZW50IixlLHQsbyxuKSxyPXdpbmRvd1tiLm90RGF0YUxheWVyLm5hbWVdLCFiLm90RGF0YUxheWVyLmlnbm9yZSkmJnZvaWQgMCE9PXImJnImJnIuY29uc3RydWN0b3I9PT1BcnJheSYmKCJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuZ3RhZz93aW5kb3cuZ3RhZygiZXZlbnQiLCJ0cmFja09wdGFub25FdmVudCIse29wdGFub25DYXRlZ29yeTplLG9wdGFub25BY3Rpb246dCxvcHRhbm9uTGFiZWw6byxvcHRhbm9uVmFsdWU6bn0pOnIucHVzaCh7ZXZlbnQ6InRyYWNrT3B0YW5vbkV2ZW50IixvcHRhbm9uQ2F0ZWdvcnk6ZSxvcHRhbm9uQWN0aW9uOnQsb3B0YW5vbkxhYmVsOm8sb3B0YW5vblZhbHVlOm59KSl9LFRvLnByb3RvdHlwZS5zZXRBbGVydEJveENsb3NlZD1mdW5jdGlvbihlKXt2YXIgdD0obmV3IERhdGUpLnRvSVNPU3RyaW5nKCksZT0oZT9ULnNldENvb2tpZSh5LkFMRVJUX0JPWF9DTE9TRUQsdCxMLlJlY29uc2VudEZyZXF1ZW5jeURheXMpOlQuc2V0Q29va2llKHkuQUxFUlRfQk9YX0NMT1NFRCx0LDApLHYoIi5vbmV0cnVzdC1wYy1kYXJrLWZpbHRlciIpLmVsWzBdKTtlJiYibm9uZSIhPT1nZXRDb21wdXRlZFN0eWxlKGUpLmdldFByb3BlcnR5VmFsdWUoImRpc3BsYXkiKSYmdigiLm9uZXRydXN0LXBjLWRhcmstZmlsdGVyIikuZmFkZU91dCg0MDApfSxUby5wcm90b3R5cGUudXBkYXRlQ29uc2VudEZyb21Db29raWU9ZnVuY3Rpb24odCl7cmV0dXJuIEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtyZXR1cm4gdD8oeW8uaXNJbml0SUFCQ29va2llRGF0YSh0KXx8eW8udXBkYXRlRnJvbUdsb2JhbENvbnNlbnQodCksImluaXQiPT09dCYmKFQucmVtb3ZlSWFiMSgpLE8uaXNBbGVydEJveENsb3NlZEFuZFZhbGlkKCkmJk8ucmVzZXRUQ01vZGVsKCksVC5yZW1vdmVBbGVydEJveCgpKSk6KE8ucmVzZXRUQ01vZGVsKCksTy51cGRhdGVDcm9zc0NvbnNlbnRDb29raWUoITEpLE8uc2V0SUFCQ29va2llRGF0YSgpKSxtby5hc3NldFByb21pc2UudGhlbihmdW5jdGlvbigpe21vLmxvYWRCYW5uZXIoKX0pLFsyXX0pfSl9O3ZhciBtbyx2bz1UbztmdW5jdGlvbiBUbygpe3ZhciB0PXRoaXM7dGhpcy5jb25zZW50Q2hhbmdlZEV2ZW50TWFwPXt9LHRoaXMuYXNzZXRSZXNvbHZlPW51bGwsdGhpcy5hc3NldFByb21pc2U9bmV3IFByb21pc2UoZnVuY3Rpb24oZSl7dC5hc3NldFJlc29sdmU9ZX0pfWtvLnByb3RvdHlwZS53cml0ZUhzdFBhcmFtPWZ1bmN0aW9uKGUsdCl7VC53cml0ZUNvb2tpZVBhcmFtKGUsImhvc3RzIixQLmFyclRvU3RyKCh0PXZvaWQgMD09PXQ/bnVsbDp0KXx8Xy5ob3N0c0NvbnNlbnQpKX0sa28ucHJvdG90eXBlLndyaXRlR2VuVmVuQ29va2llUGFyYW09ZnVuY3Rpb24oZSl7dmFyIHQ9TC5HZW5lcmFsVmVuZG9ycyxvPV8uZ2VuVmVuZG9yc0NvbnNlbnQsbj0iIjt0LmZvckVhY2goZnVuY3Rpb24oZSl7bis9ZS5WZW5kb3JDdXN0b21JZCsiOiIrKG9bZS5WZW5kb3JDdXN0b21JZF0/IjEiOiIwIikrIiwifSksVC53cml0ZUNvb2tpZVBhcmFtKGUsImdlblZlbmRvcnMiLG4pfSxrby5wcm90b3R5cGUud3JpdGVWU0NvbnNlbnRDb29raWVQYXJhbT1mdW5jdGlvbihlKXt2YXIgbz0iIjtfLnZzQ29uc2VudC5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIG8rPXQrIjoiKyhlPyIxIjoiMCIpKyIsIn0pLG89by5zbGljZSgwLC0xKSxULndyaXRlQ29va2llUGFyYW0oZSxRdCxvKX0sa28ucHJvdG90eXBlLnVwZGF0ZUdyb3Vwc0luQ29va2llPWZ1bmN0aW9uKGUsdCl7VC53cml0ZUNvb2tpZVBhcmFtKGUsImdyb3VwcyIsUC5hcnJUb1N0cigodD12b2lkIDA9PT10P251bGw6dCl8fF8uZ3JvdXBzQ29uc2VudCkpfSxrby5wcm90b3R5cGUud3JpdGVHcnBQYXJhbT1mdW5jdGlvbihlLHQpe3RoaXMudXBkYXRlR3JvdXBzSW5Db29raWUoZSx0PXZvaWQgMD09PXQ/bnVsbDp0KSxMLklzSWFiRW5hYmxlZCYmTy5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKSYmdGhpcy5pbnNlcnRPclVwZGF0ZUlhYkNvb2tpZXMoKX0sa28ucHJvdG90eXBlLmluc2VydE9yVXBkYXRlSWFiQ29va2llcz1mdW5jdGlvbigpe3ZhciBlPV8ub25lVHJ1c3RJQUJDb25zZW50O2lmKGUucHVycG9zZSYmZS52ZW5kb3JzKXtfLmlzQWRkdGxDb25zZW50PUwuVXNlR29vZ2xlVmVuZG9ycyxlLklBQkNvb2tpZVZhbHVlPXlvLmdldElBQkNvbnNlbnREYXRhKCk7dmFyIHQ9TC5SZWNvbnNlbnRGcmVxdWVuY3lEYXlzO2lmKE8uaXNJQUJDcm9zc0NvbnNlbnRFbmFibGVkKCkpTy5zZXRJQUIzcmRQYXJ0eUNvb2tpZSh5LkVVX0NPTlNFTlQsZS5JQUJDb29raWVWYWx1ZSx0LCExKTtlbHNle2Zvcih2YXIgbz1ULmdldENvb2tpZXNDaHVuayhlLklBQkNvb2tpZVZhbHVlLHkuRVVfUFVCX0NPTlNFTlQpLG49MCxyPU9iamVjdC5rZXlzKG8pO248ci5sZW5ndGg7bisrKXt2YXIgaT1yW25dO1Quc2V0Q29va2llKGksb1tpXSx0KX1MLlVzZUdvb2dsZVZlbmRvcnMmJlQuc2V0Q29va2llKHkuQURESVRJT05BTF9DT05TRU5UX1NUUklORywiIitfLmFkZHRsQ29uc2VudFZlcnNpb24rXy5hZGR0bFZlbmRvcnMudmVuZG9yQ29uc2VudC5qb2luKCIuIiksdCl9fX07dmFyIFBvLEFvPWtvO2Z1bmN0aW9uIGtvKCl7fUxvLnByb3RvdHlwZS5pbml0R2VuVmVuZG9yQ29uc2VudD1mdW5jdGlvbigpe3ZhciBlLHQsbj10aGlzO0wuR2VuVmVuT3B0T3V0PyhlPWIuY29uc2VudGFibGVHcnBzLCh0PVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULCJnZW5WZW5kb3JzIikpPyhfLmdlblZlbmRvcnNDb25zZW50PXt9LHQuc3BsaXQoIiwiKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UmJiIxIj09PShlPWUuc3BsaXQoIjoiKSlbMV0mJihfLmdlblZlbmRvcnNDb25zZW50W2VbMF1dPSEwKX0pKTooXy5nZW5WZW5kb3JzQ29uc2VudD17fSxlLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIG89Xy5zeW5jUmVxdWlyZWQ/RC5jaGVja0lmR3JvdXBIYXNDb25zZW50KGUpOkQuY2hlY2tJc0FjdGl2ZUJ5RGVmYXVsdChlKTtlLkdlbmVyYWxWZW5kb3JzSWRzJiZlLkdlbmVyYWxWZW5kb3JzSWRzLmxlbmd0aCYmZS5HZW5lcmFsVmVuZG9yc0lkcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PW4uaXNHZW5WZW5QYXJ0T2ZBbHdheXNBY3RpdmVHcm91cChlKTtfLmdlblZlbmRvcnNDb25zZW50W2VdPXR8fG99KX0pKSk6KF8uZ2VuVmVuZG9yc0NvbnNlbnQ9e30sUG8ud3JpdGVHZW5WZW5Db29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCkpfSxMby5wcm90b3R5cGUucG9wdWxhdGVHZW5WZW5kb3JMaXN0cz1mdW5jdGlvbigpe2IuY29uc2VudGFibGVHcnBzLmZvckVhY2goZnVuY3Rpb24oZSl7ZS5HZW5lcmFsVmVuZG9yc0lkcyYmKEQuaXNBbHdheXNBY3RpdmVHcm91cChlKT9lLkdlbmVyYWxWZW5kb3JzSWRzLmZvckVhY2goZnVuY3Rpb24oZSl7Xy5hbHdheXNBY3RpdmVHZW5WZW5kb3JzLnB1c2goZSl9KTpELmlzT3B0SW5HcnAoZSk/ZS5HZW5lcmFsVmVuZG9yc0lkcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe18ub3B0SW5HZW5WZW5kb3JzLnB1c2goZSl9KTpELmlzU29mdE9wdEluR3JwKGUpJiZlLkdlbmVyYWxWZW5kb3JzSWRzLmZvckVhY2goZnVuY3Rpb24oZSl7Xy5vcHRJbkdlblZlbmRvcnMuaW5jbHVkZXMoZSl8fF8uc29mdE9wdEluR2VuVmVuZG9ycy5wdXNoKGUpfSkpfSl9LExvLnByb3RvdHlwZS51cGRhdGVHZW5WZW5kb3JTdGF0dXM9ZnVuY3Rpb24oZSx0KXtfLmdlblZlbmRvcnNDb25zZW50W2VdPXR8fHRoaXMuaXNHZW5WZW5QYXJ0T2ZBbHdheXNBY3RpdmVHcm91cChlKX0sTG8ucHJvdG90eXBlLmlzR2VuVmVuUGFydE9mQWx3YXlzQWN0aXZlR3JvdXA9ZnVuY3Rpb24oZSl7cmV0dXJuIF8uYWx3YXlzQWN0aXZlR2VuVmVuZG9ycy5pbmNsdWRlcyhlKX07dmFyIElvLGJvPUxvO2Z1bmN0aW9uIExvKCl7fU9vLnByb3RvdHlwZS5pc0xhbmRpbmdQYWdlPWZ1bmN0aW9uKCl7dmFyIGU9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImxhbmRpbmdQYXRoIik7cmV0dXJuIWV8fGU9PT1sb2NhdGlvbi5ocmVmfSxPby5wcm90b3R5cGUuc2V0TGFuZGluZ1BhdGhQYXJhbT1mdW5jdGlvbihlKXtULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImxhbmRpbmdQYXRoIixlKX07dmFyIF9vLEVvPU9vO2Z1bmN0aW9uIE9vKCl7fXdvLnByb3RvdHlwZS5zeW5jaHJvbmlzZUNvb2tpZUdyb3VwRGF0YT1mdW5jdGlvbihlKXt2YXIgbj10aGlzLHQ9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImdyb3VwcyIpLHI9UC5zdHJUb0Fycih0KSxpPVAuc3RyVG9BcnIodC5yZXBsYWNlKC86MHw6MS9nLCIiKSksdD1PLm5lZWRSZWNvbnNlbnQoKSxzPSExLGE9ITEsbD1rLkdyb3VwVHlwZXM7ZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0LG89ZS5DdXN0b21Hcm91cElkO2UuVHlwZSE9PWwuQnVuZGxlJiZlLlR5cGUhPT1sLlN0YWNrJiYoLTE9PT1QLmluZGV4T2YoaSxvKT8ocz0hMCx0PUQuY2hlY2tJc0FjdGl2ZUJ5RGVmYXVsdChlKSxhPSEwLHIucHVzaChvKyh0PyI6MSI6IjowIikpKTphPW4udXBkYXRlSW1wbGllZENvbnNlbnRHcm91cChlLHIsbyxhKSxiLkROVEVuYWJsZWQmJmUuSXNEbnRFbmFibGVkJiYtMTxyLmluZGV4T2YobysiOjEiKSYmKGUuaXNEZW5pZWRCeUROVD0hMCksYi5ncGNFbmFibGVkJiZlLklzR3BjRW5hYmxlZCYmYi5ncGNWYWx1ZUNoYW5nZWQmJi0xPCh0PXIuaW5kZXhPZihvKyI6MSIpKSkmJihhPSEwLF8uZ3BjQ29uc2VudFR4bj0hMCxyW3RdPW8rIjowIixlLmlzRGVuaWVkQnlHUEM9ITApfSksYT10aGlzLnVwZGF0ZUNvbnNlbnRGb3JCdW5kbGVHcnBzKGUscixpLGEsdCksKGE9dGhpcy5yZW1vdmVSZWR1bmRhbnRHcnBzRnJvbUNvb2tpZShyLHQsYSkpJiYoXy5maXJlT25ldHJ1c3RHcnA9ITAsUG8udXBkYXRlR3JvdXBzSW5Db29raWUoeS5PUFRBTk9OX0NPTlNFTlQsciksXy5zeW5jUmVxdWlyZWQpJiZzJiZULnJlbW92ZUFsZXJ0Qm94KCl9LHdvLnByb3RvdHlwZS51cGRhdGVJbXBsaWVkQ29uc2VudEdyb3VwPWZ1bmN0aW9uKGUsdCxvLG4pe3JldHVybiBlLlN0YXR1cyE9PWYuSU5BQ1RJVkVfTEFORElOR19QQUdFfHxPLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpfHxfby5pc0xhbmRpbmdQYWdlKCl8fDA8PShlPXQuaW5kZXhPZihvKyI6MCIpKSYmKG49ITAsdFtlXT1vKyI6MSIpLG59LHdvLnByb3RvdHlwZS5yZW1vdmVSZWR1bmRhbnRHcnBzRnJvbUNvb2tpZT1mdW5jdGlvbihlLG8sdCl7Zm9yKHZhciBuPWUubGVuZ3RoLHI9dDtuLS07KSgoKT0+e3ZhciB0PWVbbl0ucmVwbGFjZSgvOjB8OjEvZywiIik7TC5Hcm91cHMuc29tZShmdW5jdGlvbihlKXtyZXR1cm4oIW98fGUuVHlwZSE9PWsuR3JvdXBUeXBlcy5TdGFjaykmJihlLkN1c3RvbUdyb3VwSWQ9PT10fHxlLlN1Ykdyb3Vwcy5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBlLkN1c3RvbUdyb3VwSWQ9PT10fSkpfSl8fChyPSEwLGUuc3BsaWNlKG4sMSkpfSkoKTtyZXR1cm4gcn0sd28ucHJvdG90eXBlLnVwZGF0ZUNvbnNlbnRGb3JCdW5kbGVHcnBzPWZ1bmN0aW9uKGUscixpLHQscyl7dmFyIGE9dGhpcyxsPXQsYz1rLkdyb3VwVHlwZXM7cmV0dXJuIGUuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdCxvPWUuVHlwZT09PWMuQnVuZGxlfHxlLlR5cGU9PT1jLlN0YWNrLG49ZS5DdXN0b21Hcm91cElkO28mJigtMT09PVAuaW5kZXhPZihpLG4pPyhvPUkuaXNCdW5kbGVPclN0YWNrQWN0aXZlKGUsciksbD0hMCxyLnB1c2gobisobz8iOjEiOiI6MCIpKSk6cyYmImZhbHNlIj09PU8uZ2V0SUFCQ3Jvc3NDb25zZW50ZmxhZ0RhdGEoKXx8Yi5ncGNFbmFibGVkJiZiLmdwY1ZhbHVlQ2hhbmdlZHx8Xy5zeW5jUmVxdWlyZWQ/KG89SS5pc0J1bmRsZU9yU3RhY2tBY3RpdmUoZSxyKSwtMTwodD1yLmluZGV4T2YobisiOiIrKG8/IjAiOiIxIikpKSYmKGw9ITAsclt0XT1uKyhvPyI6MSI6IjowIikpKTpsPWEudXBkYXRlSW1wbGllZENvbnNlbnRHcm91cChlLHIsbixsKSl9KSxsfSx3by5wcm90b3R5cGUuZ3JvdXBIYXNDb25zZW50PWZ1bmN0aW9uKHQpe3ZhciBlPVAuc3RyVG9BcnIoVC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImdyb3VwcyIpKSxvPVAuZmluZEluZGV4KGUsZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3BsaXQoIjoiKVswXT09PXQuQ3VzdG9tR3JvdXBJZH0pO3JldHVybi0xPG8mJiIxIj09PWVbb10uc3BsaXQoIjoiKVsxXX0sd28ucHJvdG90eXBlLnN5bmNocm9uaXNlQ29va2llSG9zdERhdGE9ZnVuY3Rpb24oKXtmb3IodmFyIG49dGhpcyxlPVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULCJob3N0cyIpLHI9UC5zdHJUb0FycihlKSxpPVAuc3RyVG9BcnIoZS5yZXBsYWNlKC86MHw6MS9nLCIiKSkscz0hMSxvPShMLkdyb3Vwcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe1UoZS5TdWJHcm91cHMsW2VdKS5mb3JFYWNoKGZ1bmN0aW9uKG8pe28uSG9zdHMubGVuZ3RoJiZvLkhvc3RzLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ7LTE9PT1QLmluZGV4T2YoaSxlLkhvc3RJZCkmJihzPSEwLHQ9Xy5zeW5jUmVxdWlyZWQ/bi5ncm91cEhhc0NvbnNlbnQobyk6RC5jaGVja0lzQWN0aXZlQnlEZWZhdWx0KG8pLHIucHVzaChlLkhvc3RJZCsodD8iOjEiOiI6MCIpKSl9KX0pfSksci5sZW5ndGgpO28tLTspKCgpPT57dmFyIHQ9cltvXS5yZXBsYWNlKC86MHw6MS9nLCIiKTtMLkdyb3Vwcy5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBVKGUuU3ViR3JvdXBzLFtlXSkuc29tZShmdW5jdGlvbihlKXtyZXR1cm4gZS5Ib3N0cy5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBlLkhvc3RJZD09PXR9KX0pfSl8fChzPSEwLHIuc3BsaWNlKG8sMSkpfSkoKTtzJiYoXy5maXJlT25ldHJ1c3RHcnA9ITAsUG8ud3JpdGVIc3RQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxyKSl9LHdvLnByb3RvdHlwZS50b2dnbGVHcm91cEhvc3RzPWZ1bmN0aW9uKGUsdCl7dmFyIG89dGhpcztlLkhvc3RzLmZvckVhY2goZnVuY3Rpb24oZSl7by51cGRhdGVIb3N0U3RhdHVzKGUsdCl9KX0sd28ucHJvdG90eXBlLnRvZ2dsZUdyb3VwR2VuVmVuZG9ycz1mdW5jdGlvbihlLHQpe2UuR2VuZXJhbFZlbmRvcnNJZHMuZm9yRWFjaChmdW5jdGlvbihlKXtJby51cGRhdGVHZW5WZW5kb3JTdGF0dXMoZSx0KX0pfSx3by5wcm90b3R5cGUudXBkYXRlSG9zdFN0YXR1cz1mdW5jdGlvbih0LGUpe3ZhciBvPVAuZmluZEluZGV4KF8uaG9zdHNDb25zZW50LGZ1bmN0aW9uKGUpe3JldHVybiF0LmlzQWN0aXZlJiZ0Lkhvc3RJZD09PWUucmVwbGFjZSgvOjB8OjEvZywiIil9KTstMTxvJiYoZT1lfHx0aGlzLmlzSG9zdFBhcnRPZkFsd2F5c0FjdGl2ZUdyb3VwKHQuSG9zdElkKSxfLmhvc3RzQ29uc2VudFtvXT10Lkhvc3RJZCsiOiIrKGU/IjEiOiIwIikpfSx3by5wcm90b3R5cGUuaXNIb3N0UGFydE9mQWx3YXlzQWN0aXZlR3JvdXA9ZnVuY3Rpb24oZSl7cmV0dXJuIF8ub25lVHJ1c3RBbHdheXNBY3RpdmVIb3N0cy5pbmNsdWRlcyhlKX07dmFyIERvLFZvPXdvO2Z1bmN0aW9uIHdvKCl7fXZhciBCbyxObz0iT25lVHJ1c3QgQ29va2llIENvbnNlbnQiLEdvPSJCYW5uZXIgQXV0byBDbG9zZSIseG89IkJhbm5lciBDbG9zZSBCdXR0b24iLEhvPSJCYW5uZXIgLSBDb250aW51ZSB3aXRob3V0IEFjY2VwdGluZyIsUm89IkJhbm5lciAtIENvbmZpcm0iLEZvPSJQcmVmZXJlbmNlcyBDbG9zZSBCdXR0b24iLE1vPSJQcmVmZXJlbmNlIENlbnRlciBPcGVuZWQgRnJvbSBCYW5uZXIiLFVvPSJQcmVmZXJlbmNlIENlbnRlciBPcGVuZWQgRnJvbSBCdXR0b24iLHFvPSJQcmVmZXJlbmNlIENlbnRlciBPcGVuZWQgRnJvbSBGdW5jdGlvbiIsam89IlByZWZlcmVuY2VzIFNhdmUgU2V0dGluZ3MiLEtvPSJWZW5kb3JzIExpc3QgT3BlbmVkIEZyb20gRnVuY3Rpb24iLHpvPSJGbG9hdGluZyBDb29raWUgU2V0dGluZ3MgT3BlbiBCdXR0b24iLFdvPSJGbG9hdGluZyBDb29raWUgU2V0dGluZ3MgQ2xvc2UgQnV0dG9uIixZbz0iUHJlZmVyZW5jZXMgVG9nZ2xlIE9uIixKbz0iUHJlZmVyZW5jZXMgVG9nZ2xlIE9mZiIsWG89IkdlbmVyYWwgVmVuZG9yIFRvZ2dsZSBPbiIsUW89IkdlbmVyYWwgVmVuZG9yIFRvZ2dsZSBPZmYiLFpvPSJIb3N0IFRvZ2dsZSBPbiIsJG89Ikhvc3QgVG9nZ2xlIE9mZiIsZW49IlByZWZlcmVuY2VzIExlZ2l0aW1hdGUgSW50ZXJlc3QgT2JqZWN0aW9uIix0bj0iUHJlZmVyZW5jZXMgTGVnaXRpbWF0ZSBJbnRlcmVzdCBSZW1vdmUgT2JqZWN0aW9uIixvbj0iSUFCIFZlbmRvciBUb2dnbGUgT04iLG5uPSJJQUIgVmVuZG9yIFRvZ2dsZSBPZmYiLHJuPSJJQUIgVmVuZG9yIExlZ2l0aW1hdGUgSW50ZXJlc3QgT2JqZWN0aW9uIixzbj0iSUFCIFZlbmRvciBMZWdpdGltYXRlIEludGVyZXN0IFJlbW92ZSBPYmplY3Rpb24iLGFuPSJWZW5kb3IgU2VydmljZSBUb2dnbGUgT24iLGxuPSJWZW5kb3IgU2VydmljZSBUb2dnbGUgT2ZmIixjbj0oZG4ucHJvdG90eXBlLnNldEJhbm5lckZvY3VzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vbmV0cnVzdC12ZW5kb3JzLWxpc3QtaGFuZGxlciIpLmVsKSxvPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHYoJyNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wb2xpY3ktdGV4dCBhLCNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wb2xpY3ktdGV4dCBidXR0b24sI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXBvbGljeS10ZXh0IFt0YWJpbmRleF06bm90KFt0YWJpbmRleD0iLTEiXSknKS5lbCksbj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh2KCIjb25ldHJ1c3QtYmFubmVyLXNkayAub3QtYm5yLXNhdmUtaGFuZGxlciIpLmVsKSxyPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHYoIiNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wYy1idG4taGFuZGxlciIpLmVsKSxpPUFycmF5LnByb3RvdHlwZS5jb25jYXQuY2FsbChBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh2KCIjb25ldHJ1c3QtYmFubmVyLXNkayAuY2F0ZWdvcnktc3dpdGNoLWhhbmRsZXI6bm90KFtkaXNhYmxlZF0pIikuZWwpLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1jYXQtbHN0IGJ1dHRvbiIpLmVsKSx0KSxpPUFycmF5LnByb3RvdHlwZS5jb25jYXQuY2FsbChvLGkpLHM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodigiI29uZXRydXN0LWJhbm5lci1zZGsgLm9uZXRydXN0LWNsb3NlLWJ0bi1oYW5kbGVyIikuZWwpLHQ9KGIuYmFubmVyTmFtZT09PVFlJiYoaT1BcnJheS5wcm90b3R5cGUuY29uY2F0LmNhbGwodCxvKSksQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodigiI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWFjY2VwdC1idG4taGFuZGxlciIpLmVsKSksbz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh2KCIjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcmVqZWN0LWFsbC1oYW5kbGVyIikuZWwpLG49QXJyYXkucHJvdG90eXBlLmNvbmNhdC5jYWxsKG4sdCxvLHIpLHI9KChiLmJhbm5lck5hbWUhPT1KZXx8TC5Jc0lhYkVuYWJsZWQpJiZiLmJhbm5lck5hbWUhPT1ZZSYmYi5iYW5uZXJOYW1lIT09JGV8fChuPUFycmF5LnByb3RvdHlwZS5jb25jYXQuY2FsbChyLG8sdCkpLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1ndi1saXN0LWhhbmRsZXIiKS5lbCkpLG89KGIuYmFubmVyTmFtZT09PWV0PyhpPUFycmF5LnByb3RvdHlwZS5jb25jYXQuY2FsbChyLGkpLG49QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodigiI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWJ1dHRvbi1ncm91cCBidXR0b24iKS5lbCkpOmk9QXJyYXkucHJvdG90eXBlLmNvbmNhdC5jYWxsKGksciksdGhpcy5yZWFycmFuZ2VJbkJ1dHRvbk9yZGVyKG4pLHYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1iLWFkZGwtZGVzYyIpLmVsWzBdKSx0PXRoaXMuZ2V0VGFiYmFibGVFbGVtZW50cyhvKSxpPUwuQmFubmVyQWRkaXRpb25hbERlc2NQbGFjZW1lbnQ9PT1sZS5BZnRlclRpdGxlP0FycmF5LnByb3RvdHlwZS5jb25jYXQuY2FsbCh0LGkpOkFycmF5LnByb3RvdHlwZS5jb25jYXQuY2FsbChpLHQpLHI9bmV3IFNldChBcnJheS5wcm90b3R5cGUuY29uY2F0LmNhbGwoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodigiI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWNvb2tpZS1idG4iKS5lbCksaSxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh2KCIjb25ldHJ1c3QtYmFubmVyLXNkayAuYmFubmVyLW9wdGlvbi1pbnB1dCIpLmVsKSxuLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1ibnItZm9vdGVyLWxvZ28gYSIpLmVsKSxzKSk7dGhpcy5iYW5uZXJFbD1BcnJheS5mcm9tKHIpLHRoaXMuYmFubmVyPXYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIikuZWxbMF0sKEwuQkluaXRpYWxGb2N1c3x8TC5CSW5pdGlhbEZvY3VzTGlua0FuZEJ1dHRvbnx8TC5Gb3JjZUNvbnNlbnQpJiYoTC5CSW5pdGlhbEZvY3VzP3NldFRpbWVvdXQoZnVuY3Rpb24oKXtlLmJhbm5lci5mb2N1cygpfSwxZTMpOnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLmJhbm5lckVsWzBdLmZvY3VzKCl9LDFlMykpfSxkbi5wcm90b3R5cGUuaGFuZGxlQmFubmVyRm9jdXM9ZnVuY3Rpb24oZSx0KXt2YXIgbz1lLnRhcmdldCxuPUJvLmJhbm5lckVsLHI9bi5pbmRleE9mKG8pLGk9bi5sZW5ndGgtMSxzPW51bGw7aWYodGhpcy5oYW5kbGVCYW5uZXJGb2N1c0JvZHlSZXNldCh0LHIsaSkpSS5yZXNldEZvY3VzVG9Cb2R5KCk7ZWxzZSBpZih0aGlzLmJhbm5lcj09PW8pcz10aGlzLmhhbmRsZUluaXRpYWxCYW5uZXJGb2N1cyh0LG4saSxzKTtlbHNlIGZvcig7IXM7KXt2YXIgYT12b2lkIDA7MCE9PShhPXQ/cjw9MD9uW2ldOm5bci0xXTpyPT09aT9uWzBdOm5bcisxXSkuY2xpZW50SGVpZ2h0fHwwIT09YS5vZmZzZXRIZWlnaHQ/cz1hOnQ/ci0tOnIrK31zJiYoZS5wcmV2ZW50RGVmYXVsdCgpLHMuZm9jdXMoKSl9LGRuLnByb3RvdHlwZS5yZWFycmFuZ2VJbkJ1dHRvbk9yZGVyPWZ1bmN0aW9uKGUpe0wuUENUZW1wbGF0ZVVwZ3JhZGUmJlMuZnAuV2ViQnV0dG9uQ3VzdG9taXNhdGlvbnMmJmUmJmUuc29ydChmdW5jdGlvbihlLHQpe2Z1bmN0aW9uIG8oZSl7cmV0dXJuKGU9QXJyYXkuZnJvbShlLmNsYXNzTGlzdCkuZmluZChmdW5jdGlvbihlKXtyZXR1cm4gZS5zdGFydHNXaXRoKCJvdC1idXR0b24tb3JkZXItIil9KSk/cGFyc2VJbnQoZS5yZXBsYWNlKCJvdC1idXR0b24tb3JkZXItIiwiIikpOjEvMH1yZXR1cm4gbyhlKS1vKHQpfSl9LGRuLnByb3RvdHlwZS5oYW5kbGVCYW5uZXJGb2N1c0JvZHlSZXNldD1mdW5jdGlvbihlLHQsbyl7cmV0dXJuIShMLkZvcmNlQ29uc2VudHx8IUwuQkluaXRpYWxGb2N1cyYmIUwuQkluaXRpYWxGb2N1c0xpbmtBbmRCdXR0b258fCEoZSYmMD09PXR8fCFlJiZ0PT09bykpfSxkbi5wcm90b3R5cGUuaGFuZGxlSW5pdGlhbEJhbm5lckZvY3VzPWZ1bmN0aW9uKGUsdCxvLG4pe3JldHVybiBlJiZMLkZvcmNlQ29uc2VudD9uPXRbb106ZXx8KG49dFswXSksbn0sZG4ucHJvdG90eXBlLnNldFBDRm9jdXM9ZnVuY3Rpb24oZSl7aWYoZSYmIShlLmxlbmd0aDw9MCkpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0uc2V0QXR0cmlidXRlKCJ0YWJpbmRleCIsIjAiKTt0aGlzLnNldEZpcnN0QW5kTGFzdChlKTt0aGlzLmZpcnN0SXRlbT90aGlzLmZpcnN0SXRlbS5mb2N1cyh7cHJldmVudFNjcm9sbDohMH0pOmVbMF0uZm9jdXMoKSx0aGlzLmZpcnN0SXRlbSYmdih0aGlzLmZpcnN0SXRlbSkub24oImtleWRvd24iLEJvLmZpcnN0SXRlbUhhbmRsZXIpLHRoaXMubGFzdEl0ZW0mJnYodGhpcy5sYXN0SXRlbSkub24oImtleWRvd24iLEJvLmxhc3RJdGVtSGFuZGxlcil9fSxkbi5wcm90b3R5cGUuc2V0Rmlyc3RBbmRMYXN0PWZ1bmN0aW9uKGUpe3RoaXMuZmlyc3RJdGVtPXRoaXMuZ2V0RWxlbWVudEZvckZvY3VzKGUsMCwhMCksdGhpcy5sYXN0SXRlbT10aGlzLmZpcnN0SXRlbT90aGlzLmdldEVsZW1lbnRGb3JGb2N1cyhlLGUubGVuZ3RoLTEsITEpOm51bGx9LGRuLnByb3RvdHlwZS5zZXRMYXN0SXRlbT1mdW5jdGlvbigpe3ZhciBlPXRoaXMuZ2V0UENFbGVtZW50cygpLGU9dGhpcy5nZXRFbGVtZW50Rm9yRm9jdXMoZSxlLmxlbmd0aC0xLCExKTtlIT09dGhpcy5sYXN0SXRlbSYmKHYodGhpcy5sYXN0SXRlbSkub2ZmKCJrZXlkb3duIixCby5sYXN0SXRlbUhhbmRsZXIpLHRoaXMubGFzdEl0ZW09ZSx2KGUpLm9uKCJrZXlkb3duIixCby5sYXN0SXRlbUhhbmRsZXIpKX0sZG4ucHJvdG90eXBlLmdldFBDRWxlbWVudHM9ZnVuY3Rpb24oKXt2YXIgZT0iI29uZXRydXN0LXBjLXNkayAjY2xvc2UtcGMtYnRuLWhhbmRsZXIsXG4gICAgICAgICAgICAjb25ldHJ1c3QtcGMtc2RrIC5iYWNrLWJ0bi1oYW5kbGVyLFxuICAgICAgICAgICAgI29uZXRydXN0LXBjLXNkayAuIitBLlBfQWN0aXZlX01lbnUrJyxcbiAgICAgICAgICAgICNvbmV0cnVzdC1wYy1zZGsgaW5wdXQsXG4gICAgICAgICAgICAjb25ldHJ1c3QtcGMtc2RrIGEsXG4gICAgICAgICAgICAjb25ldHJ1c3QtcGMtc2RrIFt0YWJpbmRleD0iMCJdIGJ1dHRvbixcbiAgICAgICAgICAgICNvbmV0cnVzdC1wYy1zZGsgLnNhdmUtcHJlZmVyZW5jZS1idG4taGFuZGxlcixcbiAgICAgICAgICAgICNvbmV0cnVzdC1wYy1zZGsgLm90LXBjLXJlZnVzZS1hbGwtaGFuZGxlcixcbiAgICAgICAgICAgICNvbmV0cnVzdC1wYy1zZGsgI2FjY2VwdC1yZWNvbW1lbmRlZC1idG4taGFuZGxlcic7cmV0dXJuIF8ucGNMYXllcj09PXNlLkNvb2tpZUxpc3Q/ZSs9IiAsI29uZXRydXN0LXBjLXNkayAiK0EuUF9Db250ZW50KyIgLnBvd2VyZWQtYnktbG9nbyI6ZSs9Iiwjb25ldHJ1c3QtcGMtc2RrICN2ZW5kb3ItbGlzdC1zYXZlLWJ0biAucG93ZXJlZC1ieS1sb2dvIixBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh2KGUpLmVsKX0sZG4ucHJvdG90eXBlLmdldEFjdGl2ZVRhYj1mdW5jdGlvbigpe3JldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS1tZW51LXN3aXRjaC1oYW5kbGVyW3RhYmluZGV4PSIwIl0nKX0sZG4ucHJvdG90eXBlLmdldEVsZW1lbnRGb3JGb2N1cz1mdW5jdGlvbihlLHQsbyl7Zm9yKHZhciBuPWVbdF07bz9uJiZudWxsPT09bi5vZmZzZXRQYXJlbnQmJnQ8ZS5sZW5ndGgtMTpuJiZudWxsPT09bi5vZmZzZXRQYXJlbnQmJjA8dDspbj1lW3RdLG8/Kyt0Oi0tdDtyZXR1cm4gbn0sZG4ucHJvdG90eXBlLmhhbmRsZUZvY3VzVGFiTGF5b3V0RXhjZXB0Q2xvc2VQQz1mdW5jdGlvbihlKXt2YXIgdD0iY2xvc2UtcGMtYnRuLWhhbmRsZXIiPT09ZS50YXJnZXQuaWQmJigxMz09PWUua2V5Q29kZXx8MzI9PT1lLmtleUNvZGV8fCJFbnRlciI9PT1lLmNvZGV8fCJTcGFjZSI9PT1lLmNvZGUpO0wuUENMYXlvdXQuVGFiJiZfLnBjTGF5ZXI9PT1zZS5QcmVmQ2VudGVySG9tZSYmIXQmJih0PUJvLmdldEFjdGl2ZVRhYigpKSYmKGUucHJldmVudERlZmF1bHQoKSx0LmZvY3VzKCkpfSxkbi5wcm90b3R5cGUuZmlyc3RJdGVtSGFuZGxlcj1mdW5jdGlvbihlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib25ldHJ1c3QtYmFubmVyLXNkayIpOzk9PT1lLmtleUNvZGUmJmUuc2hpZnRLZXkmJkJvLmZpcnN0SXRlbSE9PXQ/KGUucHJldmVudERlZmF1bHQoKSxCby5sYXN0SXRlbS5mb2N1cygpKTpMLlNob3dQcmVmZXJlbmNlQ2VudGVyQ2xvc2VCdXR0b24/Qm8uaGFuZGxlRm9jdXNUYWJMYXlvdXRFeGNlcHRDbG9zZVBDKGUpOiFMLlBDTGF5b3V0LlRhYnx8Xy5wY0xheWVyIT09c2UuUHJlZkNlbnRlckhvbWV8fDM3IT09ZS5rZXlDb2RlJiYzOSE9PWUua2V5Q29kZXx8KHQ9Qm8uZ2V0QWN0aXZlVGFiKCkpJiZ2KHQpLm9uKCJrZXlkb3duIixCby5maXJzdEl0ZW1IYW5kbGVyKX0sZG4ucHJvdG90eXBlLmxhc3RJdGVtSGFuZGxlcj1mdW5jdGlvbihlKXs5IT09ZS5rZXlDb2RlfHxlLnNoaWZ0S2V5fHwoZS5wcmV2ZW50RGVmYXVsdCgpLGU9Xy5wY0xheWVyPT09c2UuVmVuZG9yTGlzdHx8Xy5wY0xheWVyPT09c2UuQ29va2llTGlzdCwoTC5QQ0xheW91dC5UYWImJl8uaXNQQ1Zpc2libGUmJiFMLlNob3dQcmVmZXJlbmNlQ2VudGVyQ2xvc2VCdXR0b24mJiFlP0JvLmdldEFjdGl2ZVRhYigpOkJvLmZpcnN0SXRlbSkuZm9jdXMoKSl9LGRuLnByb3RvdHlwZS5nZXRUYWJiYWJsZUVsZW1lbnRzPWZ1bmN0aW9uKGUpe3JldHVybiBlP0FycmF5LmZyb20oZS5xdWVyeVNlbGVjdG9yQWxsKFsiYVtocmVmXSIsImFyZWFbaHJlZl0iLCJpbnB1dDpub3QoW2Rpc2FibGVkXSkiLCJzZWxlY3Q6bm90KFtkaXNhYmxlZF0pIiwidGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pIiwiYnV0dG9uOm5vdChbZGlzYWJsZWRdKSIsJ1t0YWJpbmRleF06bm90KFt0YWJpbmRleD0iLTEiXSknLCJbY29udGVudGVkaXRhYmxlXSJdLmpvaW4oIiwiKSkpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hZS5oYXNBdHRyaWJ1dGUoImRpc2FibGVkIil9KTpbXX0sZG4pO2Z1bmN0aW9uIGRuKCl7dGhpcy5iYW5uZXJFbD1bXX1wbi5wcm90b3R5cGUuZ2V0QWxsR3JvdXBFbGVtZW50cz1mdW5jdGlvbigpe3JldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJkaXYjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0NhdGVnb3J5X0dycCsiICIrQS5QX0NhdGVnb3J5X0l0ZW0rIjpub3QoLm90LXZuZC1pdGVtKSIpfSxwbi5wcm90b3R5cGUudG9nZ2xlR3JwRWxlbWVudHM9ZnVuY3Rpb24oZSx0LG8sbil7dm9pZCAwPT09biYmKG49ITEpO2Zvcih2YXIgcj0oZT1iLnBjTmFtZT09PXN0JiZMLlBDVGVtcGxhdGVVcGdyYWRlP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNvdC1kZXNjLWlkLSIrZS5nZXRBdHRyaWJ1dGUoImRhdGEtb3B0YW5vbmdyb3VwaWQiKSk6ZSkucXVlcnlTZWxlY3RvckFsbCgnaW5wdXRbY2xhc3MqPSJjYXRlZ29yeS1zd2l0Y2gtaGFuZGxlciJdJyksaT0wO2k8ci5sZW5ndGg7aSsrKXt2YXIgcz1yW2ldLmdldEF0dHJpYnV0ZSgiaWQiKS5pbmNsdWRlcygibGVnLW91dCIpO24mJnN8fChQLnNldENoZWNrZWRBdHRyaWJ1dGUobnVsbCxyW2ldLG8pLHJbaV0mJkwuUENTaG93Q29uc2VudExhYmVscyYmKHJbaV0ucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoIi5vdC1sYWJlbC1zdGF0dXMiKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KG8/TC5QQ0FjdGl2ZVRleHQ6TC5QQ0luYWN0aXZlVGV4dCkpKX1iLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJJiZiLmxlZ0ludFNldHRpbmdzLlBTaG93TGVnSW50QnRuJiZ0LlR5cGU9PT1rLkdyb3VwVHlwZXMuUHVyJiZ0Lkhhc0xlZ0ludE9wdE91dCYmIW4mJlYudXBkYXRlTGVnSW50QnRuRWxlbWVudChlLnF1ZXJ5U2VsZWN0b3IoIi5vdC1sZWctYnRuLWNvbnRhaW5lciIpLG8pfSxwbi5wcm90b3R5cGUudG9vZ2xlQWxsU3ViR3JwRWxlbWVudHM9ZnVuY3Rpb24oZSx0KXt2YXIgbztlLlNob3dTdWJncm91cD8obz1lLkN1c3RvbUdyb3VwSWQsbz10aGlzLmdldEdyb3VwRWxlbWVudEJ5T3B0YW5vbkdyb3VwSWQoby50b1N0cmluZygpKSxWLnRvb2dsZVN1Ykdyb3VwRWxlbWVudChvLHQsZS5Jc0xlZ0ludFRvZ2dsZSkpOnRoaXMudXBkYXRlSGlkZGVuU3ViR3JvdXBEYXRhKGUsdCl9LHBuLnByb3RvdHlwZS5pc1N1YkdycExlZ0ludEVuYWJsZWQ9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSYmYi5sZWdJbnRTZXR0aW5ncy5QU2hvd0xlZ0ludEJ0biYmZS5UeXBlPT09ay5Hcm91cFR5cGVzLlB1ciYmZS5IYXNMZWdJbnRPcHRPdXQmJnQuU2hvd1N1Ymdyb3VwVG9nZ2xlfSxwbi5wcm90b3R5cGUudG9vZ2xlU3ViR3JvdXBFbGVtZW50PWZ1bmN0aW9uKGUsdCxvLG4pe3ZvaWQgMD09PW8mJihvPSExKSx2b2lkIDA9PT1uJiYobj0hMSk7Zm9yKHZhciByPShlPWIucGNOYW1lPT09c3QmJkwuUENUZW1wbGF0ZVVwZ3JhZGU/ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI290LWRlc2MtaWQtIitlLmdldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIpKTplKS5xdWVyeVNlbGVjdG9yQWxsKCJsaSIrQS5QX1N1YmdycF9saSksaT0wO2k8ci5sZW5ndGg7aSsrKXt2YXIgcz1ELmdldEdyb3VwQnlJZChyW2ldLmdldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIpKSxhPXMuT3B0YW5vbkdyb3VwSWQsbD1ELmdldFBhcmVudEdyb3VwKHMuUGFyZW50KSxsPSh0aGlzLmlzU3ViR3JwTGVnSW50RW5hYmxlZChzLGwpJiZvJiZWLnVwZGF0ZUxlZ0ludEJ0bkVsZW1lbnQocltpXSx0KSxvPyJbaWQ9J290LXN1Yi1ncm91cC1pZC0iK2ErIi1sZWctb3V0J10iOiJbaWQ9J290LXN1Yi1ncm91cC1pZC0iK2ErIiddIiksYT1yW2ldLnF1ZXJ5U2VsZWN0b3IoJ2lucHV0W2NsYXNzKj0iY29va2llLXN1Ymdyb3VwLWhhbmRsZXIiXScrbCk7UC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsYSx0KSxhJiZMLlBDU2hvd0NvbnNlbnRMYWJlbHMmJihhLnBhcmVudEVsZW1lbnQucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKCIub3QtbGFiZWwtc3RhdHVzIikuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudCh0P0wuUENBY3RpdmVUZXh0OkwuUENJbmFjdGl2ZVRleHQpKSxufHwocy5Jc0xlZ0ludFRvZ2dsZT1vLFYudG9nZ2xlR3JwU3RhdHVzKHMsdCkscy5Jc0xlZ0ludFRvZ2dsZT0hMSxEby50b2dnbGVHcm91cEhvc3RzKHMsdCksXy5nZW5WZW5PcHRPdXRFbmFibGVkJiZEby50b2dnbGVHcm91cEdlblZlbmRvcnMocyx0KSl9fSxwbi5wcm90b3R5cGUudG9nZ2xlR3JwU3RhdHVzPWZ1bmN0aW9uKGUsdCl7dmFyIG89ZS5Jc0xlZ0ludFRvZ2dsZSYmZS5UeXBlPT09ay5Hcm91cFR5cGVzLlB1cj90P3RuOmVuOnQ/WW86Sm87bW8udHJpZ2dlckdvb2dsZUFuYWx5dGljc0V2ZW50KE5vLG8sZS5Hcm91cE5hbWUrIjogIitlLk9wdGFub25Hcm91cElkKSx0P3RoaXMudXBkYXRlRW5hYmxlZEdyb3VwRGF0YShlKTp0aGlzLnVwZGF0ZURpc2FibGVkR3JvdXBEYXRhKGUpfSxwbi5wcm90b3R5cGUuc2V0SW5wdXRJRD1mdW5jdGlvbihlLHQsbyxuLHIpe3YoZSkuYXR0cigiaWQiLHQpLHYoZSkuYXR0cigibmFtZSIsdCksdihlKS5kYXRhKCJvcHRhbm9uR3JvdXBJZCIsbyksUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsZSxuKSx2KGUpLmF0dHIoImFyaWEtbGFiZWxsZWRieSIscil9LHBuLnByb3RvdHlwZS51cGRhdGVFbmFibGVkR3JvdXBEYXRhPWZ1bmN0aW9uKGUpe3ZhciB0LG87LTE8T3QuaW5kZXhPZihlLlR5cGUpP3RoaXMudXBkYXRlSWFiR3JvdXBEYXRhKGUsITApOih0PVYuZ2V0R3JvdXBWYXJpYWJsZSgpLC0xIT09KG89UC5pbmRleE9mKHQsZS5DdXN0b21Hcm91cElkKyI6MCIpKSYmKHRbb109ZS5DdXN0b21Hcm91cElkKyI6MSIpKX0scG4ucHJvdG90eXBlLnVwZGF0ZURpc2FibGVkR3JvdXBEYXRhPWZ1bmN0aW9uKGUpe3ZhciB0LG87LTE8T3QuaW5kZXhPZihlLlR5cGUpP3RoaXMudXBkYXRlSWFiR3JvdXBEYXRhKGUsITEpOmUuU3RhdHVzIT09Zi5BTFdBWVNfQUNUSVZFJiYodD1WLmdldEdyb3VwVmFyaWFibGUoKSwtMSE9PShvPVAuaW5kZXhPZih0LGUuQ3VzdG9tR3JvdXBJZCsiOjEiKSkmJih0W29dPWUuQ3VzdG9tR3JvdXBJZCsiOjAiKSx0aGlzLmlzSW1wbGljaXRDb25zZW50RGVmYXVsdFN0YXR1cyhlKSkmJmIucmVtb3ZlR3JvdXBGcm9tSW1wbGllZENvbnNlbnRhYmxlR3JvdXAoZSl9LHBuLnByb3RvdHlwZS51cGRhdGVJYWJHcm91cERhdGE9ZnVuY3Rpb24oZSx0KXt2YXIgbztlLlR5cGU9PT1rLkdyb3VwVHlwZXMuU3BsX0Z0P3RoaXMudXBkYXRlSWFiU3BlY2lhbEZlYXR1cmVEYXRhKGUuSWFiR3JwSWQsdCk6KG89ZS5Jc0xlZ0ludFRvZ2dsZT9fLnZlbmRvcnMuc2VsZWN0ZWRMZWdJbnQ6Xy52ZW5kb3JzLnNlbGVjdGVkUHVycG9zZSx0aGlzLnVwZGF0ZUlhYlB1cnBvc2VEYXRhKGUuSWFiR3JwSWQsdCxvKSl9LHBuLnByb3RvdHlwZS5pc0FsbFN1Ymdyb3Vwc0Rpc2FibGVkPWZ1bmN0aW9uKGUpe3JldHVybiFlLlN1Ykdyb3Vwcy5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBWLmlzR3JvdXBBY3RpdmUoZSl9KX0scG4ucHJvdG90eXBlLmlzQWxsU3ViZ3JvdXBzRW5hYmxlZD1mdW5jdGlvbihlKXtyZXR1cm4hZS5TdWJHcm91cHMuc29tZShmdW5jdGlvbihlKXtyZXR1cm4gVi5Jc0dyb3VwSW5BY3RpdmUoZSl9KX0scG4ucHJvdG90eXBlLnRvZ2dsZUdyb3VwSHRtbEVsZW1lbnQ9ZnVuY3Rpb24oZSx0LG8pe2IubGVnSW50U2V0dGluZ3MuUEFsbG93TEkmJmIubGVnSW50U2V0dGluZ3MuUFNob3dMZWdJbnRCdG4mJmUuVHlwZT09PWsuR3JvdXBUeXBlcy5QdXImJmUuSGFzTGVnSW50T3B0T3V0JiYoZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJbZGF0YS1lbC1pZD0iK3QrIl0iKSkmJnRoaXMudXBkYXRlTGVnSW50QnRuRWxlbWVudChlLG8pO2U9digiI290LWdyb3VwLWlkLSIrdCkuZWxbMF07UC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsZSxvKSxlJiZMLlBDU2hvd0NvbnNlbnRMYWJlbHMmJihlLnBhcmVudEVsZW1lbnQucXVlcnlTZWxlY3RvcigiLm90LWxhYmVsLXN0YXR1cyIpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobz9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KSl9LHBuLnByb3RvdHlwZS51cGRhdGVMZWdJbnRCdG5FbGVtZW50PWZ1bmN0aW9uKGUsdCxvKXt2b2lkIDA9PT1vJiYobz0iIik7dmFyIG49Yi5sZWdJbnRTZXR0aW5ncyxyPWUucXVlcnlTZWxlY3RvcigiLm90LW9iai1sZWctYnRuLWhhbmRsZXIiKSxlPWUucXVlcnlTZWxlY3RvcigiLm90LXJlbW92ZS1vYmplY3Rpb24taGFuZGxlciIpO3Q/KHIuY2xhc3NMaXN0LmFkZCgib3QtaW5hY3RpdmUtbGVnLWJ0biIpLHIuY2xhc3NMaXN0LmFkZCgib3QtbGVnLWludC1lbmFibGVkIiksci5jbGFzc0xpc3QucmVtb3ZlKCJvdC1hY3RpdmUtbGVnLWJ0biIpLHIuZm9jdXMoKSk6KHIuY2xhc3NMaXN0LmFkZCgib3QtYWN0aXZlLWxlZy1idG4iKSxyLmNsYXNzTGlzdC5yZW1vdmUoIm90LWluYWN0aXZlLWxlZy1idG4iKSxyLmNsYXNzTGlzdC5yZW1vdmUoIm90LWxlZy1pbnQtZW5hYmxlZCIpKSxyLnF1ZXJ5U2VsZWN0b3IoInNwYW4iKS5pbm5lclRleHQ9dD9uLlBPYmplY3RMZWdJbnRUZXh0Om4uUE9iamVjdGlvbkFwcGxpZWRUZXh0LG8mJnIuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixvKyIsICIrKHQ/bi5QT2JqZWN0TGVnSW50VGV4dDpuLlBPYmplY3Rpb25BcHBsaWVkVGV4dCkpLGQoZSwiZGlzcGxheTogIisodD8ibm9uZSI6ImlubGluZS1ibG9jayIpKyI7IiwhMCl9LHBuLnByb3RvdHlwZS5pc0dyb3VwQWN0aXZlPWZ1bmN0aW9uKGUpe2U9LTE8T3QuaW5kZXhPZihlLlR5cGUpPy0xIT09dGhpcy5pc0lhYlB1cnBvc2VBY3RpdmUoZSk6LTEhPT1tLmluQXJyYXkoZS5DdXN0b21Hcm91cElkKyI6MSIsVi5nZXRHcm91cFZhcmlhYmxlKCkpfHx0aGlzLmlzR3JvdXBFbmFibGVkRm9ySW1wbGljaXRDb25zZW50KGUpO3JldHVybiBlfSxwbi5wcm90b3R5cGUuaXNHcm91cEVuYWJsZWRGb3JJbXBsaWNpdENvbnNlbnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuaXNJbXBsaWNpdENvbnNlbnREZWZhdWx0U3RhdHVzKGUpJiZiLmlzR3JvdXBFeGlzdEluSW1wbGllZENvbnNlbnRhYmxlR3JvdXAoZSl9LHBuLnByb3RvdHlwZS5pc0ltcGxpY2l0Q29uc2VudERlZmF1bHRTdGF0dXM9ZnVuY3Rpb24oZSl7cmV0dXJuIGUuU3RhdHVzPT09Zi5JTkFDVElWRV9MQU5ESU5HX1BBR0UmJiFPLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpJiZfby5pc0xhbmRpbmdQYWdlKCl9LHBuLnByb3RvdHlwZS5zYWZlRm9ybWF0dGVkR3JvdXBEZXNjcmlwdGlvbj1mdW5jdGlvbihlKXtyZXR1cm4gZSYmZS5Hcm91cERlc2NyaXB0aW9uP2UuR3JvdXBEZXNjcmlwdGlvbi5yZXBsYWNlKC9cclxuL2csIjxicj4iKToiIn0scG4ucHJvdG90eXBlLmNhbkluc2VydEZvckdyb3VwPWZ1bmN0aW9uKGUsdCl7dm9pZCAwPT09dCYmKHQ9ITEpO3ZhciBvPW51bGwhPWUmJnZvaWQgMCE9PWUsbj1ULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCwiZ3JvdXBzIikscj1fLmdyb3Vwc0NvbnNlbnQuam9pbigiLCIpLGk9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImhvc3RzIikscz1fLmhvc3RzQ29uc2VudC5qb2luKCIsIik7aWYodClyZXR1cm4hMDtuPT09ciYmaT09PXN8fHhzLmVuc3VyZUh0bWxHcm91cERhdGFJbml0aWFsaXNlZCgpO3ZhciBhPVtdO2lmKF8uc2hvd0dlbmVyYWxWZW5kb3JzKWZvcih2YXIgbD0wLGM9T2JqZWN0LmVudHJpZXMoXy5nZW5WZW5kb3JzQ29uc2VudCk7bDxjLmxlbmd0aDtsKyspe3ZhciBkPWNbbF0sdT1kWzBdO2EucHVzaCh1KyI6IisoZFsxXT8iMSI6IjAiKSl9Xy5zaG93VmVuZG9yU2VydmljZSYmXy52c0NvbnNlbnQuZm9yRWFjaChmdW5jdGlvbihlLHQpe2EucHVzaCh0KyI6IisoZT8iMSI6IjAiKSl9KTt0PV8uZ3JvdXBzQ29uc2VudC5jb25jYXQoXy5ob3N0c0NvbnNlbnQpLmNvbmNhdChhKSxuPVAuY29udGFpbnModCxlKyI6MSIpLHI9dGhpcy5kb2VzSG9zdEV4aXN0KGUpLGk9dGhpcy5kb2VzR3JvdXBFeGlzdChlKSxzPSExLF8uc2hvd0dlbmVyYWxWZW5kb3JzP3M9dGhpcy5kb2VzR2VuVmVuZG9yRXhpc3QoZSk6Xy5zaG93VmVuZG9yU2VydmljZSYmKHM9dGhpcy5kb2VzVmVuZG9yU2VydmljZUV4aXN0KGUpKSx0PSEoIXImJiFzKXx8biYmeHMuY2FuU29mdE9wdEluSW5zZXJ0Rm9yR3JvdXAoZSk7cmV0dXJuISghb3x8IShuJiZ0fHwhaSYmIXImJiFzKSl9LHBuLnByb3RvdHlwZS5zZXRBbGxvd0FsbEJ1dHRvbj1mdW5jdGlvbigpe3ZhciB0PTAsZT1MLkdyb3Vwcy5zb21lKGZ1bmN0aW9uKGUpe2lmKC0xPT09RHQuaW5kZXhPZihlLlR5cGUpKXJldHVybiBWLklzR3JvdXBJbkFjdGl2ZShlKSYmdCsrLGUuU3ViR3JvdXBzLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuIFYuSXNHcm91cEluQWN0aXZlKGUpfSkmJnQrKywxPD10fSksbz1Dby5nZXRBbGxvd0FsbEJ1dHRvbigpO3JldHVybiBlP28uc2hvdygiaW5saW5lLWJsb2NrIik6by5oaWRlKCksQm8ubGFzdEl0ZW0mJkJvLnNldExhc3RJdGVtKCksZX0scG4ucHJvdG90eXBlLmlzQW55R3JvdXBPcHRlZE91dD1mdW5jdGlvbigpe2Zvcih2YXIgZT0hMSx0PTAsbz1MLkdyb3Vwczt0PG8ubGVuZ3RoO3QrKyl7dmFyIG49b1t0XTtpZighMD09PVYuSXNHcm91cEluQWN0aXZlKG4pKXtlPSEwO2JyZWFrfX1yZXR1cm4gZX0scG4ucHJvdG90eXBlLmdldEdyb3VwVmFyaWFibGU9ZnVuY3Rpb24oKXtyZXR1cm4gXy5ncm91cHNDb25zZW50fSxwbi5wcm90b3R5cGUuSXNHcm91cEluQWN0aXZlPWZ1bmN0aW9uKGUpe2U9LTE8T3QuaW5kZXhPZihlLlR5cGUpPy0xPT09dGhpcy5pc0lhYlB1cnBvc2VBY3RpdmUoZSk6ISgtMTxEdC5pbmRleE9mKGUuVHlwZSkpJiYtMT09PW0uaW5BcnJheShlLkN1c3RvbUdyb3VwSWQrIjoxIixWLmdldEdyb3VwVmFyaWFibGUoKSk7cmV0dXJuIGV9LHBuLnByb3RvdHlwZS51cGRhdGVJYWJQdXJwb3NlRGF0YT1mdW5jdGlvbih0LGUsbyl7dmFyIG49UC5maW5kSW5kZXgobyxmdW5jdGlvbihlKXtyZXR1cm4gZS5zcGxpdCgiOiIpWzBdPT09dH0pO29bLTE9PT1uP051bWJlcih0KTpuXT10KyI6IitlfSxwbi5wcm90b3R5cGUudXBkYXRlSWFiU3BlY2lhbEZlYXR1cmVEYXRhPWZ1bmN0aW9uKHQsZSl7dmFyIG89LTE9PT0obz1QLmZpbmRJbmRleChfLnZlbmRvcnMuc2VsZWN0ZWRTcGVjaWFsRmVhdHVyZXMsZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3BsaXQoIjoiKVswXT09PXR9KSk/TnVtYmVyKHQpOm87Xy52ZW5kb3JzLnNlbGVjdGVkU3BlY2lhbEZlYXR1cmVzW29dPXQrIjoiK2V9LHBuLnByb3RvdHlwZS5nZXRHcm91cEVsZW1lbnRCeU9wdGFub25Hcm91cElkPWZ1bmN0aW9uKGUpe3JldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0NhdGVnb3J5X0dycCsiICIrQS5QX0NhdGVnb3J5X0l0ZW0rJ1tkYXRhLW9wdGFub25ncm91cGlkPVxuICAgICAgICAgICAgIicrZSsnIl0nKX0scG4ucHJvdG90eXBlLnVwZGF0ZUhpZGRlblN1Ykdyb3VwRGF0YT1mdW5jdGlvbihlLHQpe2UuU3ViR3JvdXBzLmZvckVhY2goZnVuY3Rpb24oZSl7Vi50b2dnbGVHcnBTdGF0dXMoZSx0KSxEby50b2dnbGVHcm91cEhvc3RzKGUsdCksXy5nZW5WZW5PcHRPdXRFbmFibGVkJiZEby50b2dnbGVHcm91cEdlblZlbmRvcnMoZSx0KX0pfSxwbi5wcm90b3R5cGUuaXNJYWJQdXJwb3NlQWN0aXZlPWZ1bmN0aW9uKGUpe3ZhciB0PWUuVHlwZT09PWsuR3JvdXBUeXBlcy5TcGxfRnQ/Xy52ZW5kb3JzLnNlbGVjdGVkU3BlY2lhbEZlYXR1cmVzOmUuSXNMZWdJbnRUb2dnbGU/Xy52ZW5kb3JzLnNlbGVjdGVkTGVnSW50Ol8udmVuZG9ycy5zZWxlY3RlZFB1cnBvc2U7cmV0dXJuIG0uaW5BcnJheShlLklhYkdycElkKyI6dHJ1ZSIsdCl9LHBuLnByb3RvdHlwZS5kb2VzR3JvdXBFeGlzdD1mdW5jdGlvbihlKXtyZXR1cm4hIUQuZ2V0R3JvdXBCeUlkKGUpfSxwbi5wcm90b3R5cGUuZG9lc0hvc3RFeGlzdD1mdW5jdGlvbihlKXt2YXIgdD1fLmhvc3RzQ29uc2VudDtyZXR1cm4tMSE9PXQuaW5kZXhPZihlKyI6MCIpfHwtMSE9PXQuaW5kZXhPZihlKyI6MSIpfSxwbi5wcm90b3R5cGUuZG9lc0dlblZlbmRvckV4aXN0PWZ1bmN0aW9uKHQpe3JldHVybiEhTC5HZW5lcmFsVmVuZG9ycyYmISFMLkdlbmVyYWxWZW5kb3JzLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuVmVuZG9yQ3VzdG9tSWQ9PT10fSl9LHBuLnByb3RvdHlwZS5kb2VzVmVuZG9yU2VydmljZUV4aXN0PWZ1bmN0aW9uKGUpe3JldHVybiBfLmdldFZlbmRvcnNJbkRvbWFpbigpLmhhcyhlKX07dmFyIFYsdW49cG47ZnVuY3Rpb24gcG4oKXt9dmFyIENuLGduLGhuPSIjb25ldHJ1c3QtYmFubmVyLXNkayIseW49Ii5iYW5uZXJfbG9nbyIsZm49IiNvbmV0cnVzdC1wYy1zZGsiLFNuPSIjb25ldHJ1c3QtYWNjZXB0LWJ0bi1oYW5kbGVyIixtbj0iI29uZXRydXN0LXJlamVjdC1hbGwtaGFuZGxlciIsdm49IiNvbmV0cnVzdC1wYy1idG4taGFuZGxlciIsVG49IiNhY2NlcHQtcmVjb21tZW5kZWQtYnRuLWhhbmRsZXIiLFBuPShBbi5wcm90b3R5cGUuQmFubmVyUHVzaERvd25IYW5kbGVyPWZ1bmN0aW9uKCl7dGhpcy5jaGVja0lzQnJvd3NlcklFMTFPckJlbG93KCl8fChnbi5wdXNoUGFnZURvd24oaG4pLHYod2luZG93KS5vbigicmVzaXplIixmdW5jdGlvbigpeyJub25lIiE9PXYoaG4pLmNzcygiZGlzcGxheSIpJiZnbi5wdXNoUGFnZURvd24oaG4pfSkpfSxBbi5wcm90b3R5cGUuY2hlY2tJc0Jyb3dzZXJJRTExT3JCZWxvdz1mdW5jdGlvbigpe3ZhciBlPXdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50O3JldHVybiAwPGUuaW5kZXhPZigiTVNJRSAiKXx8MDxlLmluZGV4T2YoIlRyaWRlbnQvIil9LEFuLnByb3RvdHlwZS5hZGRPVENzc1Byb3BlcnRpZXNUb0JvZHk9ZnVuY3Rpb24oZSx0KXt2YXIgbz1nbi5nZXRDc3NEYXRhKGUsdCk7bC5jdXN0b21lclN0eWxlcy5zZXQoZSxvKSxnbi5zZXRTdHlsZXNPbkJvZHkodCl9LEFuLnByb3RvdHlwZS5yZW1vdmVBZGRlZE9UQ3NzU3R5bGVzPWZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUmJihlPUNuLkJhbm5lcik7dmFyIHQ9bC5jdXN0b21lclN0eWxlcy5nZXQoZSk7dD8oZ24uc2V0U3R5bGVzT25Cb2R5KHQuY3VzdG9tZXJCb2R5Q1NTKSxnbi5zZXRTdHlsZXNPbkh0bWwodC5jdXN0b21lckh0bWxDU1MpLGwuY3VzdG9tZXJTdHlsZXMuZGVsZXRlKGUpKTowPGwuY3VzdG9tZXJTdHlsZXMuc2l6ZSYmbC5jdXN0b21lclN0eWxlcy5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGduLnJlbW92ZUFkZGVkT1RDc3NTdHlsZXModCl9KX0sQW4ucHJvdG90eXBlLmdldENzc0RhdGE9ZnVuY3Rpb24oZSx0KXt2YXIgbyxuLHI9digiYm9keSIpLmVsWzBdLGk9digiaHRtbCIpLmVsWzBdLHM9e30sYT17fSxlPWwuY3VzdG9tZXJTdHlsZXMuZ2V0KGUpLGE9ZT8obz1lLnNjcmlwdEJvZHlDU1Msbj1lLmN1c3RvbWVyQm9keUNTUyxlPWUuY3VzdG9tZXJIdG1sQ1NTLHIuc3R5bGUudG9wIT09by50b3AmJihuLnRvcD1yLnN0eWxlLnRvcCksci5zdHlsZS5wb3NpdGlvbiE9PW8ucG9zaXRpb24mJihuLnBvc2l0aW9uPXIuc3R5bGUucG9zaXRpb24pLHIuc3R5bGUub3ZlcmZsb3chPT1vLm92ZXJmbG93JiYobi5vdmVyZmxvdz1yLnN0eWxlLm92ZXJmbG93KSxpLnN0eWxlLm92ZXJmbG93IT09by5vdmVyZmxvdyYmKGUub3ZlcmZsb3c9aS5zdHlsZS5vdmVyZmxvdykscz1uLGUpOihzPXt0b3A6ci5zdHlsZS50b3AscG9zaXRpb246ci5zdHlsZS5wb3NpdGlvbixvdmVyZmxvdzpyLnN0eWxlLm92ZXJmbG93fSx7b3ZlcmZsb3c6aS5zdHlsZS5vdmVyZmxvd30pO3JldHVybntzY3JpcHRCb2R5Q1NTOnQsY3VzdG9tZXJCb2R5Q1NTOnMsY3VzdG9tZXJIdG1sQ1NTOmF9fSxBbi5wcm90b3R5cGUuc2V0U3R5bGVzT25Cb2R5PWZ1bmN0aW9uKGUpe3ZhciB0PXYoImJvZHkiKS5lbFswXTtnbi5zZXRTdHlsZXNPbkh0bWxFbGVtZW50KHQsZSl9LEFuLnByb3RvdHlwZS5zZXRTdHlsZXNPbkh0bWw9ZnVuY3Rpb24oZSl7dmFyIHQ9digiaHRtbCIpLmVsWzBdO2duLnNldFN0eWxlc09uSHRtbEVsZW1lbnQodCx7b3ZlcmZsb3c6ZS5vdmVyZmxvd30pfSxBbi5wcm90b3R5cGUuc2V0U3R5bGVzT25IdG1sRWxlbWVudD1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbz0iIixuPTAscj1PYmplY3QuZW50cmllcyh0KTtuPHIubGVuZ3RoO24rKyl7dmFyIGk9cltuXSxzPWlbMF0saT1pWzFdO2k/bys9cysiOiAiK2krIjsiOmUuc3R5bGUucmVtb3ZlUHJvcGVydHkocyl9byYmZChlLG8sITApfSxBbi5wcm90b3R5cGUucHVzaFBhZ2VEb3duPWZ1bmN0aW9uKGUpe3ZhciB0PXYoZSkuaGVpZ2h0KCkrInB4IixlPSh2KGUpLnNob3coKS5jc3MoIlxuICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtIit0KyI7XG4gICAgICAgICIpLGwuaXNQQ1Zpc2libGU/Q24uUEM6Q24uQmFubmVyKSx0PXtwb3NpdGlvbjoicmVsYXRpdmUiLHRvcDp0fTtsLmlzUENWaXNpYmxlJiYodC5vdmVyZmxvdz0iaGlkZGVuIiksZ24uYWRkT1RDc3NQcm9wZXJ0aWVzVG9Cb2R5KGUsdCl9LEFuKTtmdW5jdGlvbiBBbigpe30oTHI9Q249Q258fHt9KS5CYW5uZXI9IkJhbm5lciIsTHIuUEM9IlBDIixibi5wcm90b3R5cGUuc2hvd0NvbnNlbnROb3RpY2U9ZnVuY3Rpb24oKXt2YXIgZSx0LG87IUwuTm9CYW5uZXJ8fEwuRm9yY2VDb25zZW50P3YoIi5vbmV0cnVzdC1wYy1kYXJrLWZpbHRlciIpLnJlbW92ZUNsYXNzKCJvdC1oaWRlIik6digiLm9uZXRydXN0LXBjLWRhcmstZmlsdGVyIikuYWRkQ2xhc3MoIm90LWhpZGUiKSx2KCIiK2tuLk9ORVRSVVNUX1BDX1NESykucmVtb3ZlQ2xhc3MoIm90LWhpZGUiKSxTLmlzVjJUZW1wbGF0ZSYmdGhpcy5jbG9zZVBDVGV4dCghMCksYi5wY05hbWU9PT1ydCYmKHYoIiIra24uT05FVFJVU1RfUENfU0RLKS5lbFswXS5jbGFzc0xpc3QuY29udGFpbnMoIm90LWFuaW1hdGVkIil8fHYoIiIra24uT05FVFJVU1RfUENfU0RLKS5hZGRDbGFzcygib3QtYW5pbWF0ZWQiKSxlPUwuUHJlZmVyZW5jZUNlbnRlclBvc2l0aW9uLHQ9KG89TC51c2VSVEwpPyJyaWdodCI6ImxlZnQiLG89bz8ibGVmdCI6InJpZ2h0Iix2KCIiK2tuLk9ORVRSVVNUX1BDX1NESykuZWxbMF0uY2xhc3NMaXN0LmNvbnRhaW5zKCJvdC1zbGlkZS1vdXQtIisoInJpZ2h0Ij09PWU/bzp0KSkmJnYoIiIra24uT05FVFJVU1RfUENfU0RLKS5yZW1vdmVDbGFzcygib3Qtc2xpZGUtb3V0LSIrKCJyaWdodCI9PT1lP286dCkpLHYoIiIra24uT05FVFJVU1RfUENfU0RLKS5hZGRDbGFzcygib3Qtc2xpZGUtaW4tIisoInJpZ2h0Ij09PWU/bzp0KSkpLFMuZnAuV2ViQnV0dG9uQ3VzdG9taXNhdGlvbnN8fFYuc2V0QWxsb3dBbGxCdXR0b24oKSxCby5zZXRQQ0ZvY3VzKEJvLmdldFBDRWxlbWVudHMoKSksTC5Ob0Jhbm5lciYmTC5TY3JvbGxDbG9zZUJhbm5lcnx8dGhpcy5wY0hhc1Njcm9sbCgpLHRoaXMuaGFuZGxlQm9keVN0eWxlc0ZvckJhbm5lclB1c2hkb3duKCl9LGJuLnByb3RvdHlwZS5oaWRlQ29uc2VudE5vdGljZVYyPWZ1bmN0aW9uKCl7dmFyIGUsdCxvOzA9PT12KHRoaXMuT05FVFJVU1RfUENfU0RLKS5sZW5ndGg/dGhpcy5zZXRGb2N1c09uUGFnZSgpOihTLmlzVjJUZW1wbGF0ZSYmdGhpcy5jbG9zZVBDVGV4dCgpLEwuRm9yY2VDb25zZW50JiYhSS5pc0Nvb2tpZVBvbGljeVBhZ2UoTC5BbGVydE5vdGljZVRleHQpJiYhTy5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKSYmTC5TaG93QWxlcnROb3RpY2U/digiIit0aGlzLk9ORVRSVVNUX1BDX0RBUktfRklMVEVSKS5jc3MoInotaW5kZXg6IDIxNDc0ODM2NDU7Iikuc2hvdygpOnYoIiIrdGhpcy5PTkVUUlVTVF9QQ19EQVJLX0ZJTFRFUikuZmFkZU91dChMLlBDTGF5b3V0LlBhbmVsPzUwMDo0MDApLEwuUENMYXlvdXQuUGFuZWwmJihlPUwuUHJlZmVyZW5jZUNlbnRlclBvc2l0aW9uLHQ9KG89TC51c2VSVEwpPyJyaWdodCI6ImxlZnQiLG89bz8ibGVmdCI6InJpZ2h0Iix2KCIiK3RoaXMuT05FVFJVU1RfUENfU0RLKS5yZW1vdmVDbGFzcygib3Qtc2xpZGUtaW4tIisoInJpZ2h0Ij09PWU/bzp0KSksdigiIit0aGlzLk9ORVRSVVNUX1BDX1NESykuYWRkQ2xhc3MoIm90LXNsaWRlLW91dC0iKygicmlnaHQiPT09ZT9vOnQpKSksdigiIit0aGlzLk9ORVRSVVNUX1BDX1NESykuZmFkZU91dChMLlBDTGF5b3V0LlBhbmVsPzUwMDo0MDApLGwuaXNQQ1Zpc2libGU9ITEsbC5wY0xheWVyPXNlLkJhbm5lcix0aGlzLnNldEZvY3VzKCkpfSxibi5wcm90b3R5cGUuc2V0Rm9jdXM9ZnVuY3Rpb24oKXt2YXIgZTtsLnBjU291cmNlfHxPLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpP2wucGNTb3VyY2U/KGwucGNTb3VyY2UuZm9jdXMoKSxsLnBjU291cmNlPW51bGwpOnRoaXMuc2V0Rm9jdXNPblBhZ2UoKTooZT12KCIjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcGMtYnRuLWhhbmRsZXIiKS5lbFswXSkmJmUuZm9jdXMoKX0sYm4ucHJvdG90eXBlLmhhbmRsZUJvZHlTdHlsZXNGb3JCYW5uZXJQdXNoZG93bj1mdW5jdGlvbigpe2IucGNOYW1lPT09c3QmJmIucGFnZVB1c2hlZERvd24mJiJ0b3AiPT09TC5CYW5uZXJQb3NpdGlvbiYmZ24uYWRkT1RDc3NQcm9wZXJ0aWVzVG9Cb2R5KENuLlBDLHt9KX0sYm4ucHJvdG90eXBlLnNldEZvY3VzT25QYWdlPWZ1bmN0aW9uKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnYnV0dG9uLCBhLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgW3RhYmluZGV4XTpub3QoW3RhYmluZGV4PSItMSJdKScpO2wuaXNLZXlib2FyZFVzZXImJmUubGVuZ3RoJiZlWzBdLmZvY3VzKCl9LGJuLnByb3RvdHlwZS5jbG9zZVBDVGV4dD1mdW5jdGlvbihlKXt2b2lkIDA9PT1lJiYoZT0hMSk7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayBzcGFuW2FyaWEtbGl2ZV0iKSxvPUwuQWJvdXRDb29raWVzVGV4dDt0JiYodC5pbm5lclRleHQ9ZT8iIjpvKygiICIrTC5wY0RpYWxvZ0Nsb3NlKSl9LGJuLnByb3RvdHlwZS5wY0hhc1Njcm9sbD1mdW5jdGlvbigpe3RoaXMuYm9keVN0eWxlQ2hhbmdlZD0hMDt2YXIgZT12KCJib2R5Iik7ZSYmZS5sZW5ndGgmJmduLmFkZE9UQ3NzUHJvcGVydGllc1RvQm9keShDbi5QQyx7b3ZlcmZsb3c6ImhpZGRlbiJ9KX0sYm4ucHJvdG90eXBlLmNoZWNrSWZQY1Nka0NvbnRhaW5lckV4aXN0PWZ1bmN0aW9uKCl7cmV0dXJuIXYoIiIra24uT05FVFJVU1RfUENfU0RLKS5sZW5ndGh9O3ZhciBrbixJbj1ibjtmdW5jdGlvbiBibigpe3RoaXMuT05FVFJVU1RfUENfU0RLPSIjb25ldHJ1c3QtcGMtc2RrIix0aGlzLk9ORVRSVVNUX1BDX0RBUktfRklMVEVSPSIub25ldHJ1c3QtcGMtZGFyay1maWx0ZXIiLHRoaXMuYm9keVN0eWxlQ2hhbmdlZD0hMX1Fbi5wcm90b3R5cGUudXBkYXRlR3RtTWFjcm9zPWZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUmJihlPSEwKTt2YXIgbj1bXTtfLmdyb3Vwc0NvbnNlbnQuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1lLnJlcGxhY2UoIjoxIiwiIiksbz1ELmdldEdycFN0YXR1cyhELmdldEdyb3VwQnlJZCh0KSkudG9Mb3dlckNhc2UoKT09PWYuQUxXQVlTX0FDVElWRTtQLmVuZHNXaXRoKGUsIjoxIikmJih4cy5jYW5Tb2Z0T3B0SW5JbnNlcnRGb3JHcm91cCh0KXx8bykmJm4ucHVzaCh0KX0pLF8uaG9zdHNDb25zZW50LmZvckVhY2goZnVuY3Rpb24oZSl7UC5lbmRzV2l0aChlLCI6MSIpJiZuLnB1c2goZS5yZXBsYWNlKCI6MSIsIiIpKX0pLF8uc2hvd0dlbmVyYWxWZW5kb3JzJiZMLkdlblZlbk9wdE91dCYmTC5HZW5lcmFsVmVuZG9ycy5mb3JFYWNoKGZ1bmN0aW9uKGUpeyFfLmdlblZlbmRvcnNDb25zZW50W2UuVmVuZG9yQ3VzdG9tSWRdfHxfLnNvZnRPcHRJbkdlblZlbmRvcnMuaW5jbHVkZXMoZS5WZW5kb3JDdXN0b21JZCkmJl9vLmlzTGFuZGluZ1BhZ2UoKXx8bi5wdXNoKGUuVmVuZG9yQ3VzdG9tSWQpfSk7Xy52c0lzQWN0aXZlQW5kT3B0T3V0JiZfLmdldFZlbmRvcnNJbkRvbWFpbigpLmZvckVhY2goZnVuY3Rpb24oZSl7Xy52c0NvbnNlbnQuZ2V0KGUuQ3VzdG9tVmVuZG9yU2VydmljZUlkKSYmbi5wdXNoKGUuQ3VzdG9tVmVuZG9yU2VydmljZUlkKX0pO3ZhciB0PSIsIitQLmFyclRvU3RyKG4pKyIsIixvPXRoaXMuaW5jbHVkZUFsbEFjdGl2ZUlBQkRhdGEoKTtMLkdvb2dsZUNvbnNlbnQuR0NFbmFibGUmJiFiLm90RGF0YUxheWVyLmlnbm9yZSYmdGhpcy51cGRhdGVHQ01UYWdzKFUobixvKSksTC5NQ01EYXRhJiZMLk1DTURhdGEuRW5hYmxlZCYmdGhpcy51cGRhdGVNQ01UYWdzKFUobixvKSksdGhpcy51cGRhdGVBQ01UYWdzKFUobixvKSksd2luZG93Lk9uZXRydXN0QWN0aXZlR3JvdXBzPXQsd2luZG93Lk9wdGFub25BY3RpdmVHcm91cHM9dCxiLmdjbVVwZGF0ZUNhbGxiYWNrJiZiLmdjbVVwZGF0ZUNhbGxiYWNrKCksYi5vdERhdGFMYXllci5pZ25vcmV8fHZvaWQgMD09PXRoaXMuX3dpbmRvd1tiLm90RGF0YUxheWVyLm5hbWVdfHx0aGlzLl93aW5kb3dbYi5vdERhdGFMYXllci5uYW1lXS5jb25zdHJ1Y3RvciE9PUFycmF5PyFiLm90RGF0YUxheWVyLmlnbm9yZSYmYi5vdERhdGFMYXllci5uYW1lJiYodGhpcy5fd2luZG93W2Iub3REYXRhTGF5ZXIubmFtZV09W3tldmVudDoiT25lVHJ1c3RMb2FkZWQiLE9uZXRydXN0QWN0aXZlR3JvdXBzOnR9LHtldmVudDoiT3B0YW5vbkxvYWRlZCIsT3B0YW5vbkFjdGl2ZUdyb3Vwczp0fV0pOih0aGlzLl93aW5kb3dbYi5vdERhdGFMYXllci5uYW1lXS5wdXNoKHtldmVudDoiT25lVHJ1c3RMb2FkZWQiLE9uZXRydXN0QWN0aXZlR3JvdXBzOnR9KSx0aGlzLl93aW5kb3dbYi5vdERhdGFMYXllci5uYW1lXS5wdXNoKHtldmVudDoiT3B0YW5vbkxvYWRlZCIsT3B0YW5vbkFjdGl2ZUdyb3Vwczp0fSkpLHRoaXMuZGlzcGF0Y2hFdmVudHMoZSxuLHQpfSxFbi5wcm90b3R5cGUuaW5jbHVkZUFsbEFjdGl2ZUlBQkRhdGE9ZnVuY3Rpb24oKXt0cnl7Zm9yKHZhciBuPVtdLGU9MCx0PVsicHVycG9zZSIsImZlYXR1cmVzIiwic3BlY2lhbEZlYXR1cmVzIiwic3BlY2lhbFB1cnBvc2VzIl07ZTx0Lmxlbmd0aDtlKyspKG89Pnt2YXIgdCxlPV8ub25lVHJ1c3RJQUJDb25zZW50W29dOyJwdXJwb3NlIj09PW98fCJzcGVjaWFsRmVhdHVyZXMiPT09bz9lLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9InB1cnBvc2UiPT09bz8iSUFCMlYyIjoiSVNGMlYyIixlPWUuc3BsaXQoIjoiKTsidHJ1ZSI9PT1lWzFdJiZuLnB1c2godCsiXyIrZVswXSl9KToodD1bXSxlLmZvckVhY2goZnVuY3Rpb24oZSl7ZS52YWx1ZSYmdC5wdXNoKGUuZ3JvdXBJZC50b1N0cmluZygpKX0pLG49VShuLHQpKX0pKHRbZV0pO3JldHVybiBufWNhdGNoKGUpe3JldHVybltdfX0sRW4ucHJvdG90eXBlLmRpc3BhdGNoRXZlbnRzPWZ1bmN0aW9uKGUsdCxvKXshZSYmYi5ndG1VcGRhdGVkaW5TdHVifHwobj1uZXcgQ3VzdG9tRXZlbnQoImNvbnNlbnQub25ldHJ1c3QiLHtkZXRhaWw6dH0pKTt2YXIgbixyLGk9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImdyb3VwcyIpLHM9Xy5maXJlT25ldHJ1c3RHcnB8fCFpfHxlfHwhYi5ndG1VcGRhdGVkaW5TdHViO3MmJihfLmZpcmVPbmV0cnVzdEdycD0hMSwhYi5vdERhdGFMYXllci5pZ25vcmUmJnRoaXMuX3dpbmRvd1tiLm90RGF0YUxheWVyLm5hbWVdJiZ0aGlzLl93aW5kb3dbYi5vdERhdGFMYXllci5uYW1lXS5jb25zdHJ1Y3Rvcj09PUFycmF5JiZ0aGlzLl93aW5kb3dbYi5vdERhdGFMYXllci5uYW1lXS5wdXNoKHtldmVudDoiT25lVHJ1c3RHcm91cHNVcGRhdGVkIixPbmV0cnVzdEFjdGl2ZUdyb3VwczpvfSkscj1uZXcgQ3VzdG9tRXZlbnQoIk9uZVRydXN0R3JvdXBzVXBkYXRlZCIse2RldGFpbDp0fSkpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtuJiZzJiZ3aW5kb3cuZGlzcGF0Y2hFdmVudChuKSxyJiZ3aW5kb3cuZGlzcGF0Y2hFdmVudChyKX0pfSxFbi5wcm90b3R5cGUuaXNDYXRlZ29yeU1hcHBlZD1mdW5jdGlvbihlKXtyZXR1cm4gZSE9PWd0JiYiIiE9PWV9LEVuLnByb3RvdHlwZS51cGRhdGVHQ01UYWdzPWZ1bmN0aW9uKG8pe3ZhciBuLHI9dGhpcyxpPXt9LGU9KHRoaXMuY2FuVXBkYXRlR0NNQ2F0ZWdvcmllcygpJiYoZT1bW0wuR29vZ2xlQ29uc2VudC5HQ0FkU3RvcmFnZSxJZS5hZF9zdG9yYWdlXSxbTC5Hb29nbGVDb25zZW50LkdDQW5hbHl0aWNzU3RvcmFnZSxJZS5hbmFseXRpY3Nfc3RvcmFnZV0sW0wuR29vZ2xlQ29uc2VudC5HQ0Z1bmN0aW9uYWxpdHlTdG9yYWdlLEllLmZ1bmN0aW9uYWxpdHlfc3RvcmFnZV0sW0wuR29vZ2xlQ29uc2VudC5HQ1BlcnNvbmFsaXphdGlvblN0b3JhZ2UsSWUucGVyc29uYWxpemF0aW9uX3N0b3JhZ2VdLFtMLkdvb2dsZUNvbnNlbnQuR0NTZWN1cml0eVN0b3JhZ2UsSWUuc2VjdXJpdHlfc3RvcmFnZV1dLFMuZnAuQ29va2llVjJHQ01ETUEmJihlLnB1c2goW0wuR29vZ2xlQ29uc2VudC5HQ0FkVXNlckRhdGEsSWUuYWRfdXNlcl9kYXRhXSksZS5wdXNoKFtMLkdvb2dsZUNvbnNlbnQuR0NBZFBlcnNvbmFsaXphdGlvbixJZS5hZF9wZXJzb25hbGl6YXRpb25dKSksZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0O3IuaXNDYXRlZ29yeU1hcHBlZChlWzBdKSYmKHQ9by5pbmNsdWRlcyhlWzBdKT9iZS5ncmFudGVkOmJlLmRlbmllZCxpW2VbMV1dPXQpfSkpLFQuZ2V0Q29va2llKHkuQUxFUlRfQk9YX0NMT1NFRCkpLHQ9Yi5nZXRSZWdpb25SdWxlKCkuR2xvYmFsOyJmdW5jdGlvbiIhPXR5cGVvZiB3aW5kb3cuZ3RhZyYmKG49dGhpcy5fd2luZG93LHdpbmRvdy5ndGFnPWZ1bmN0aW9uKGUsdCxvKXtiLm90RGF0YUxheWVyLmlnbm9yZXx8KG5bYi5vdERhdGFMYXllci5uYW1lXT9uW2Iub3REYXRhTGF5ZXIubmFtZV0ucHVzaChhcmd1bWVudHMpOm5bYi5vdERhdGFMYXllci5uYW1lXT1bYXJndW1lbnRzXSl9KSwiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Lmd0YWcmJihiLmdjbURldklkU2V0fHwod2luZG93Lmd0YWcoQWUuc2V0LCJkZXZlbG9wZXJfaWQuZFlXSmhNaiIsITApLGIuZ2NtRGV2SWRTZXQ9ITApLGUpJiYodHx8KGlbSWUucmVnaW9uXT1iLmdjbUNvdW50cmllcyksMCE9PU9iamVjdC5rZXlzKGkpLmxlbmd0aCkmJndpbmRvdy5ndGFnKEFlLmNvbnNlbnQsa2UudXBkYXRlLGkpfSxFbi5wcm90b3R5cGUudXBkYXRlTUNNVGFncz1mdW5jdGlvbihlKXtmb3IodmFyIHQ9InVldHEiLG89e30sbj0wLHI9T2JqZWN0LmVudHJpZXMoTC5NQ01EYXRhLlN0b3JhZ2VUeXBlcyk7bjxyLmxlbmd0aDtuKyspe3ZhciBpPXJbbl0scz1pWzBdLGk9aVsxXTt0aGlzLmlzQ2F0ZWdvcnlNYXBwZWQoaSkmJihpPWUuaW5jbHVkZXMoaSk/YmUuZ3JhbnRlZDpiZS5kZW5pZWQsb1tzXT1pKSx0aGlzLl93aW5kb3dbdF09dGhpcy5fd2luZG93W3RdfHxbXSx0aGlzLl93aW5kb3dbdF0ucHVzaCgiY29uc2VudCIsInVwZGF0ZSIsbyl9fSxFbi5wcm90b3R5cGUudXBkYXRlQUNNVGFncz1mdW5jdGlvbihlKXt2YXIgdCxvO0wuQUNNRGF0YSYmTC5BQ01EYXRhLkVuYWJsZWQmJigobz17fSkuY291bnRyeUNvZGU9bnVsbD09KHQ9Xy51c2VyTG9jYXRpb24pP3ZvaWQgMDp0LmNvdW50cnksdGhpcy5zZXRDb25zZW50T25Nb2RlKG8sUHQsZSksdGhpcy5zZXRDb25zZW50T25Nb2RlKG8sVHQsZSksdGhpcy5wb2xsRm9yQW1hem9uQ29uc2VudChvKSl9LEVuLnByb3RvdHlwZS5wb2xsRm9yQW1hem9uQ29uc2VudD1mdW5jdGlvbihlKXt2YXIgdD10aGlzLG89MCxuPXNldEludGVydmFsKGZ1bmN0aW9uKCl7bysrO3RyeXt0Ll93aW5kb3cuYW16bkNvbnNlbnQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0Ll93aW5kb3cuYW16bkNvbnNlbnQ/KHQuX3dpbmRvdy5hbXpuQ29uc2VudCgpLnNldENvdW50cnlDb2RlKGUuY291bnRyeUNvZGUpLnNldEVuYWJsZUFkU3RvcmFnZShlW1R0XSkuc2V0RW5hYmxlVXNlckRhdGEoZVtQdF0pLmJ1aWxkKCksY2xlYXJJbnRlcnZhbChuKSk6NTA8PW8mJihjbGVhckludGVydmFsKG4pLGNvbnNvbGUud2FybigiT25lVHJ1c3Q6IEFtYXpvbiBDb25zZW50IEpTIG5vdCBhdmFpbGFibGUgYWZ0ZXIgdGltZW91dC4gQUNNIGNvbnNlbnQgbm90IHNldC4iKSl9Y2F0Y2goZSl7Y2xlYXJJbnRlcnZhbChuKSxjb25zb2xlLndhcm4oIk9uZVRydXN0OiBFcnJvciBzZXR0aW5nIEFtYXpvbiBDb25zZW50LiBBQ00gY29uc2VudCBub3Qgc2V0LiIsZSl9fSwxMDApfSxFbi5wcm90b3R5cGUuc2V0Q29uc2VudE9uTW9kZT1mdW5jdGlvbihlLHQsbyl7dmFyIG49TC5BQ01EYXRhLlN0b3JhZ2VUeXBlc1t0XSxvPSEoIXRoaXMuaXNDYXRlZ29yeU1hcHBlZChuKXx8IW8uaW5jbHVkZXMobikpO2VbdF09b30sRW4ucHJvdG90eXBlLmNhblVwZGF0ZUdDTUNhdGVnb3JpZXM9ZnVuY3Rpb24oKXtyZXR1cm4gTC5Hb29nbGVDb25zZW50LkdDQWRTdG9yYWdlIT09Z3R8fEwuR29vZ2xlQ29uc2VudC5HQ0FuYWx5dGljc1N0b3JhZ2UhPT1ndHx8TC5Hb29nbGVDb25zZW50LkdDRnVuY3Rpb25hbGl0eVN0b3JhZ2UhPT1ndHx8TC5Hb29nbGVDb25zZW50LkdDUGVyc29uYWxpemF0aW9uU3RvcmFnZSE9PWd0fHxMLkdvb2dsZUNvbnNlbnQuR0NTZWN1cml0eVN0b3JhZ2UhPT1ndHx8TC5Hb29nbGVDb25zZW50LkdDQWRVc2VyRGF0YSE9PWd0fHxMLkdvb2dsZUNvbnNlbnQuR0NBZFBlcnNvbmFsaXphdGlvbiE9PWd0fSxFbi5wcm90b3R5cGUuY2hlY2tBbmRXYXJuR0NNQ29uZmlnPWZ1bmN0aW9uKCl7dmFyIGU9MCx0PTAsbz0wLG49MDtpZihMLkdvb2dsZUNvbnNlbnQuR0NFbmFibGUmJiFiLm90RGF0YUxheWVyLmlnbm9yZSl7Zm9yKHZhciByPXRoaXMuX3dpbmRvd1tiLm90RGF0YUxheWVyLm5hbWVdLGk9MCxzPU9iamVjdC5rZXlzKHIpO2k8cy5sZW5ndGg7aSsrKXt2YXIgYT1zW2ldO24rKyx0aGlzLmlzT2JqZWN0VHlwZUFyZ3MoclthXSkmJigiY29uc2VudCI9PT1yW2FdWzBdJiYiZGVmYXVsdCI9PT1yW2FdWzFdP3Q9bjoiY29uc2VudCI9PT1yW2FdWzBdJiYidXBkYXRlIj09PXJbYV1bMV0/bz1uOjA9PT1lJiYiY29uZmlnIj09PXJbYV1bMF0mJnRoaXMuaXNHb29nbGVUYWcoclthXVsxXSkmJihlPW4pKX10aGlzLmFkZEdDTUNvbmZpZ1N0YXR1cyhlLHQsbyl9fSxFbi5wcm90b3R5cGUuYWRkR0NNQ29uZmlnU3RhdHVzPWZ1bmN0aW9uKGUsdCxvKXswIT09ZSYmKGU8dD9jb25zb2xlLndhcm4oIkdvb2dsZSBDb25zZW50IG1vZGUgZGVmYXVsdCB2YWx1ZSBpcyBzZXQgYWZ0ZXIgdGhlIEdvb2dsZSB0YWdzIHdlcmUgbG9hZGVkLiIpOjA9PT10P2NvbnNvbGUud2FybigiR29vZ2xlIENvbnNlbnQgbW9kZSBkZWZhdWx0IG9yIGNvbnNlbnQgdmFsdWUgaGFzIG5vdCBiZWVuIHNldCBidXQgdGhlIEdvb2dsZSB0YWdzIHdlcmUgbG9hZGVkLiIpOih0PGV8fG88ZSkmJmNvbnNvbGUuaW5mbygiR29vZ2xlIENvbnNlbnQgbW9kZSBpcyBwcm9wZXJseSBjb25maWd1cmVkLiIpKX0sRW4ucHJvdG90eXBlLmlzR29vZ2xlVGFnPWZ1bmN0aW9uKGUpe3JldHVybiBlJiYoLTE8ZS5pbmRleE9mKCJHVC0iKXx8LTE8ZS5pbmRleE9mKCJHLSIpfHwtMTxlLmluZGV4T2YoIkFXLSIpKX0sRW4ucHJvdG90eXBlLmlzT2JqZWN0VHlwZUFyZ3M9ZnVuY3Rpb24oZSl7cmV0dXJuIltvYmplY3QgQXJndW1lbnRzXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSl9O3ZhciBMbixfbj1FbjtmdW5jdGlvbiBFbigpe3RoaXMuX3dpbmRvdz13aW5kb3d9Vm4ucHJvdG90eXBlLnVwZGF0ZUZpbHRlclNlbGVjdGlvbj1mdW5jdGlvbihlKXtvPShlPXZvaWQgMD09PWU/ITE6ZSk/KHQ9Xy5maWx0ZXJCeUNhdGVnb3JpZXMsImRhdGEtb3B0YW5vbmdyb3VwaWQiKToodD1fLmZpbHRlckJ5SUFCQ2F0ZWdvcmllcywiZGF0YS1wdXJwb3NlaWQiKTtmb3IodmFyIHQsbyxuPXYoIiNvbmV0cnVzdC1wYy1zZGsgLmNhdGVnb3J5LWZpbHRlci1oYW5kbGVyIikuZWwscj0wO3I8bi5sZW5ndGg7cisrKXt2YXIgaT1uW3JdLmdldEF0dHJpYnV0ZShvKSxpPS0xPHQuaW5kZXhPZihpKTtQLnNldENoZWNrZWRBdHRyaWJ1dGUobnVsbCxuW3JdLGkpfX0sVm4ucHJvdG90eXBlLmNhbmNlbEhvc3RGaWx0ZXI9ZnVuY3Rpb24oKXtmb3IodmFyIGU9digiI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktZmlsdGVyLWhhbmRsZXIiKS5lbCx0PTA7dDxlLmxlbmd0aDt0Kyspe3ZhciBvPWVbdF0uZ2V0QXR0cmlidXRlKCJkYXRhLW9wdGFub25ncm91cGlkIiksbz0wPD1fLmZpbHRlckJ5Q2F0ZWdvcmllcy5pbmRleE9mKG8pO1Auc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLGVbdF0sbyl9fSxWbi5wcm90b3R5cGUudXBkYXRlSG9zdEZpbHRlckxpc3Q9ZnVuY3Rpb24oKXtmb3IodmFyIGU9digiI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktZmlsdGVyLWhhbmRsZXIiKS5lbCx0PTA7dDxlLmxlbmd0aDt0Kyspe3ZhciBvLG49ZVt0XS5nZXRBdHRyaWJ1dGUoImRhdGEtb3B0YW5vbmdyb3VwaWQiKTtlW3RdLmNoZWNrZWQmJl8uZmlsdGVyQnlDYXRlZ29yaWVzLmluZGV4T2Yobik8MD9fLmZpbHRlckJ5Q2F0ZWdvcmllcy5wdXNoKG4pOiFlW3RdLmNoZWNrZWQmJi0xPF8uZmlsdGVyQnlDYXRlZ29yaWVzLmluZGV4T2YobikmJihvPV8uZmlsdGVyQnlDYXRlZ29yaWVzLF8uZmlsdGVyQnlDYXRlZ29yaWVzLnNwbGljZShvLmluZGV4T2YobiksMSkpfXJldHVybiBfLmZpbHRlckJ5Q2F0ZWdvcmllc30sVm4ucHJvdG90eXBlLkluaXRpYWxpemVIb3N0TGlzdD1mdW5jdGlvbigpe3ZhciBlPUEuUF9WZW5kb3JfTGlzdCsiICIrQS5QX0hvc3RfQ250cisiIGxpIjtfLmhvc3RzLmhvc3RUZW1wbGF0ZT12KGUpLmVsWzBdLmNsb25lTm9kZSghMCksXy5ob3N0cy5ob3N0Q29va2llVGVtcGxhdGU9dihBLlBfVmVuZG9yX0xpc3QrIiAiK0EuUF9Ib3N0X0NudHIrIiAiK0EuUF9Ib3N0X09wdCsiIGxpIikuZWxbMF0uY2xvbmVOb2RlKCEwKX0sVm4ucHJvdG90eXBlLmdldENvb2tpZXNGb3JHcm91cD1mdW5jdGlvbih0KXt2YXIgbz1bXSxuPVtdO3JldHVybiB0LkZpcnN0UGFydHlDb29raWVzLmxlbmd0aCYmdC5GaXJzdFBhcnR5Q29va2llcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe24ucHVzaChSKFIoe30sZSkse2dyb3VwTmFtZTp0Lkdyb3VwTmFtZX0pKX0pLHQuSG9zdHMubGVuZ3RoJiZ0Lkhvc3RzLmZvckVhY2goZnVuY3Rpb24oZSl7by5wdXNoKFIoUih7fSxlKSx7aXNBY3RpdmU6ImFsd2F5cyBhY3RpdmUiPT09RC5nZXRHcnBTdGF0dXModCkudG9Mb3dlckNhc2UoKSxncm91cE5hbWU6dC5Hcm91cE5hbWUsVHlwZTpoZS5Ib3N0fSkpfSkse2ZpcnN0UGFydHlDb29raWVzTGlzdDpuLHRoaXJkUGFydHlDb29raWVzTGlzdDpvfX0sVm4ucHJvdG90eXBlLnJlYWN0aXZhdGVTcmNUYWc9ZnVuY3Rpb24oZSl7dmFyIHQ9WyJzcmMiXTtlLnNldEF0dHJpYnV0ZSh0WzBdLGUuZ2V0QXR0cmlidXRlKCJkYXRhLSIrdFswXSkpLGUucmVtb3ZlQXR0cmlidXRlKCJkYXRhLXNyYyIpfSxWbi5wcm90b3R5cGUucmVhY3RpdmF0ZVNjcmlwdFRhZz1mdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGUsbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGUudGFnTmFtZSksbj0oby5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KG0uZ2V0SW5uZXJIdG1sQ29udGVudChlLmlubmVySFRNTCkpLGUuYXR0cmlidXRlcyk7aWYoMDxuLmxlbmd0aClmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKykidHlwZSIhPT1uW3JdLm5hbWU/by5zZXRBdHRyaWJ1dGUobltyXS5uYW1lLG5bcl0udmFsdWUsITApOm8uc2V0QXR0cmlidXRlKCJ0eXBlIiwidGV4dC9qYXZhc2NyaXB0IiwhMCk7dC5hcHBlbmRDaGlsZChvKSx0LnJlbW92ZUNoaWxkKGUpfSxWbi5wcm90b3R5cGUucmVhY3RpdmF0ZVRhZz1mdW5jdGlvbihlLHQpe3ZhciBvLG49MDw9ZS5jbGFzc05hbWUuaW5kZXhPZigib3QtdnNjYXQiKSxyPTA8PWUuY2xhc3NOYW1lLmluZGV4T2YoIm9wdGFub24tY2F0ZWdvcnkiKSxpPShuJiZyP289dGhpcy5nZXRHcm91cEVsZW1lbnRzKGUuY2xhc3NOYW1lLF8uc2hvd1ZlbmRvclNlcnZpY2UpOm4/Xy5zaG93VmVuZG9yU2VydmljZT9vPXRoaXMuZ2V0R3JvdXBFbGVtZW50cyhlLmNsYXNzTmFtZSwhMCk6dGhpcy51bkJsb2NrVGFnKHQsZSk6ciYmKF8uc2hvd1ZlbmRvclNlcnZpY2U/dGhpcy51bkJsb2NrVGFnKHQsZSk6bz10aGlzLmdldEdyb3VwRWxlbWVudHMoZS5jbGFzc05hbWUsITEpKSwhMCk7aWYobyYmMDxvLmxlbmd0aCl7Zm9yKHZhciBzPTA7czxvLmxlbmd0aDtzKyspaWYoIVYuY2FuSW5zZXJ0Rm9yR3JvdXAob1tzXS50cmltKCkpKXtpPSExO2JyZWFrfWkmJnRoaXMudW5CbG9ja1RhZyh0LGUpfX0sVm4ucHJvdG90eXBlLnVuQmxvY2tUYWc9ZnVuY3Rpb24oZSx0KXtlP3RoaXMucmVhY3RpdmF0ZVNyY1RhZyh0KTp0aGlzLnJlYWN0aXZhdGVTY3JpcHRUYWcodCl9LFZuLnByb3RvdHlwZS5nZXRHcm91cEVsZW1lbnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/bnVsbD09KHQ9ZS5tYXRjaCgvb3QtdnNjYXQoLVthLXpBLVowLTksXSspKy8pKT92b2lkIDA6dFswXS5zcGxpdCgvb3QtdnNjYXQtL2kpWzFdLnNwbGl0KCItIik6bnVsbD09KHQ9ZS5tYXRjaCgvb3B0YW5vbi1jYXRlZ29yeSgtW2EtekEtWjAtOSxdKykrLykpP3ZvaWQgMDp0WzBdLnNwbGl0KC9vcHRhbm9uLWNhdGVnb3J5LS9pKVsxXS5zcGxpdCgiLSIpfSxWbi5wcm90b3R5cGUuc3Vic3RpdHV0ZVBsYWluVGV4dFNjcmlwdFRhZ3M9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzY3JpcHRbY2xhc3MqPSJvcHRhbm9uLWNhdGVnb3J5Il0nKSksbz1bXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJypbY2xhc3MqPSJvcHRhbm9uLWNhdGVnb3J5Il0nKSksZT1BcnJheS5mcm9tKG5ldyBTZXQoZS5jb25jYXQoW10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzY3JpcHRbY2xhc3MqPSJvdC12c2NhdCJdJyl8fFtdKSkpKSxvPUFycmF5LmZyb20obmV3IFNldChvLmNvbmNhdChbXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJypbY2xhc3MqPSJvdC12c2NhdCJdJyl8fFtdKSkpKTtBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKG8sZnVuY3Rpb24oZSl7IlNDUklQVCIhPT1lLnRhZ05hbWUmJmUuaGFzQXR0cmlidXRlKCJkYXRhLXNyYyIpJiZ0LnJlYWN0aXZhdGVUYWcoZSwhMCl9KSxBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKGUsZnVuY3Rpb24oZSl7ZS5oYXNBdHRyaWJ1dGUoInR5cGUiKSYmInRleHQvcGxhaW4iPT09ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSYmdC5yZWFjdGl2YXRlVGFnKGUsITEpfSl9O3ZhciBPbixEbj1WbjtmdW5jdGlvbiBWbigpe312YXIgd24sQm49IkJhbm5lciIsTm49IlByZWZlcmVuY2UgQ2VudGVyIixHbj0iQVBJIix4bj0iQ2xvc2UiLEhuPSJBbGxvdyBBbGwiLFJuPSJSZWplY3QgQWxsIixGbj0iQ29uZmlybSIsTW49IkNvbmZpcm0iLFVuPSJDb250aW51ZSB3aXRob3V0IEFjY2VwdGluZyIscW49KGpuLnByb3RvdHlwZS5pbml0PWZ1bmN0aW9uKCl7dGhpcy5pbnNlcnRIdG1sKCksdGhpcy5pbnNlcnRDc3MoKSx0aGlzLnNob3dOdHkoKSx0aGlzLmluaXRIYW5kbGVyKCl9LGpuLnByb3RvdHlwZS5nZXRDb250ZW50PWZ1bmN0aW9uKCl7cmV0dXJuIEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtyZXR1cm5bMixLdC5nZXRTeW5jTnRmeUNvbnRlbnQoKS50aGVuKGZ1bmN0aW9uKGUpe2wuc3luY050ZnlHcnA9e25hbWU6ZS5uYW1lLGh0bWw6YXRvYihlLmh0bWwpLGNzczplLmNzc319KV19KX0pfSxqbi5wcm90b3R5cGUuaW5zZXJ0SHRtbD1mdW5jdGlvbigpe3RoaXMucmVtb3ZlSHRtbCgpO2Z1bmN0aW9uIGUoZSl7cmV0dXJuIHQucXVlcnlTZWxlY3RvcihlKX12YXIgdD1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxvPSh2KG8pLmh0bWwobC5zeW5jTnRmeUdycC5odG1sKSxvLnF1ZXJ5U2VsZWN0b3IodGhpcy5FbCkpLG49KEwuQmFubmVyUmVsYXRpdmVGb250U2l6ZXNUb2dnbGUmJnYobykuYWRkQ2xhc3MoIm90UmVsRm9udCIpLEwudXNlUlRMJiZ2KG8pLmF0dHIoImRpciIsInJ0bCIpLHYodCkuYXBwZW5kKG8pLEwuTnRmeUNvbmZpZyksbj0odGhpcy5pbml0SHRtbCgiU3luYyIsbi5TeW5jLGUsdC5xdWVyeVNlbGVjdG9yKHRoaXMuRWwpKSxuLlNob3dDUz92KGUoIi5vdC1wYy1oYW5kbGVyIikpLmh0bWwobi5DU1R4dCk6KHYobykuYWRkQ2xhc3MoIm90LWhpZGUtY3NidG4iKSxlKCIub3Qtc3luYy1idG5jbnRyIikucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChlKCIub3Qtc3luYy1idG5jbnRyIikpKSxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSk7dihuKS5hcHBlbmQodCksdigiI29uZXRydXN0LWNvbnNlbnQtc2RrIikuYXBwZW5kKG4uZmlyc3RDaGlsZCl9LGpuLnByb3RvdHlwZS5pbml0SGFuZGxlcj1mdW5jdGlvbigpe3YodGhpcy5FbCsiIC5vdC1zeW5jLWNsb3NlLWhhbmRsZXIiKS5vbigiY2xpY2siLGZ1bmN0aW9uKCl7cmV0dXJuIHduLmNsb3NlKCl9KX0sam4ucHJvdG90eXBlLnNob3dOdHk9ZnVuY3Rpb24oKXt2YXIgZT12KHRoaXMuRWwpO2UuY3NzKCJib3R0b206IC0zMDBweDsiKSxlLmFuaW1hdGUoe2JvdHRvbToiMWVtOyJ9LDFlMyksc2V0VGltZW91dChmdW5jdGlvbigpe2UuY3NzKCJib3R0b206IDFyZW07Iil9LDFlMyksZS5mb2N1cygpfSxqbi5wcm90b3R5cGUuY2hhbmdlU3RhdGU9ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7d24ucmVmcmVzaFN0YXRlKCl9LDE1MDApfSxqbi5wcm90b3R5cGUucmVmcmVzaFN0YXRlPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlKXtyZXR1cm4gdC5xdWVyeVNlbGVjdG9yKGUpfXZhciB0PXYodGhpcy5FbCkuZWxbMF0sbz0odC5jbGFzc0xpc3QuYWRkKCJvdC1udHktY29tcGxldGUiKSx0LmNsYXNzTGlzdC5yZW1vdmUoIm90LW50eS1zeW5jIiksTC5OdGZ5Q29uZmlnKTt0aGlzLmluaXRIdG1sKCJDb21wbGV0ZSIsby5Db21wbGV0ZSxlLHQpLG8uU2hvd0NTJiYoIkxJTksiPT09by5DU1R5cGUmJnYoZSgiLm90LXBjLWhhbmRsZXIiKSkuYWRkQ2xhc3MoIm90LXBjLWxpbmsiKSx2KCIub3Qtc3luYy1idG5jbnRyIikuc2hvdygiaW5saW5lLWJsb2NrIiksdGhpcy5hbGlnbkNvbnRlbnQoKSx2KHdpbmRvdykub24oInJlc2l6ZSIsZnVuY3Rpb24oKXtyZXR1cm4gd24ucmVzaXplRXZlbnR9KSksc2V0VGltZW91dChmdW5jdGlvbigpe3duLmNsb3NlKCl9LDFlMypMLk50ZnlDb25maWcuTnRmeUR1cmF0aW9uKX0sam4ucHJvdG90eXBlLmluc2VydENzcz1mdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvbmV0cnVzdC1zdHlsZSIpO2UuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChlLmlubmVySFRNTCtsLnN5bmNOdGZ5R3JwLmNzcyksZS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KGUuaW5uZXJIVE1MK3RoaXMuYWRkQ3VzdG9tU3R5bGVzKCkpfSxqbi5wcm90b3R5cGUuYWRkQ3VzdG9tU3R5bGVzPWZ1bmN0aW9uKCl7dmFyIGU9TC5OdGZ5Q29uZmlnLHQ9ZS5TeW5jLG89ZS5Db21wbGV0ZSxuPWUuQ1NCdXR0b24scj1lLkNTTGluaztyZXR1cm4iXG4gICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb3Qtc3luYy1udGZ5Lm90LW50eS1zeW5jIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICIrdC5CZ0NvbG9yKyI7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAiK3QuQmRyQ29sb3IrIjtcbiAgICAgICAgfVxuICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI290LXN5bmMtbnRmeSAub3Qtc3luYy1yZWZyZXNoPmcge1xuICAgICAgICAgICAgZmlsbDogIit0Lkljb25CZ0NvbG9yKyI7XG4gICAgICAgIH1cbiAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvdC1zeW5jLW50Znkub3QtbnR5LXN5bmMgI290LXN5bmMtdGl0bGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogIit0LlRpdGxlQWxpZ24rIjtcbiAgICAgICAgICAgIGNvbG9yOiAiK3QuVGl0bGVDb2xvcisiO1xuICAgICAgICB9XG4gICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb3Qtc3luYy1udGZ5Lm90LW50eS1zeW5jIC5vdC1zeW5jLWRlc2MgIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICIrdC5EZXNjQWxpZ24rIjtcbiAgICAgICAgICAgIGNvbG9yOiAiK3QuRGVzY0NvbG9yKyI7XG4gICAgICAgIH1cbiAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvdC1zeW5jLW50Znkub3QtbnR5LWNvbXBsZXRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICIrby5CZ0NvbG9yKyI7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAiK28uQmRyQ29sb3IrIjtcbiAgICAgICAgfVxuICAgICAgICAjb25ldHJ1c3QtY29uc2VudC1zZGsgI290LXN5bmMtbnRmeSAub3Qtc3luYy1jaGVjaz5nIHtcbiAgICAgICAgICAgIGZpbGw6ICIrby5JY29uQmdDb2xvcisiO1xuICAgICAgICB9XG4gICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb3Qtc3luYy1udGZ5Lm90LW50eS1jb21wbGV0ZSAjb3Qtc3luYy10aXRsZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAiK28uVGl0bGVBbGlnbisiO1xuICAgICAgICAgICAgY29sb3I6ICIrby5UaXRsZUNvbG9yKyI7XG4gICAgICAgIH1cbiAgICAgICAgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvdC1zeW5jLW50Znkub3QtbnR5LWNvbXBsZXRlIC5vdC1zeW5jLWRlc2MgIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICIrby5EZXNjQWxpZ24rIjtcbiAgICAgICAgICAgIGNvbG9yOiAiK28uRGVzY0NvbG9yKyI7XG4gICAgICAgIH1cbiAgICAgICAgIisoIkJVVFRPTiI9PT1lLkNTVHlwZT8iXG4gICAgICAgICNvbmV0cnVzdC1jb25zZW50LXNkayAjb3Qtc3luYy1udGZ5IC5vdC1wYy1oYW5kbGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICIrbi5CZ0NvbG9yKyI7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAiK24uQmRyQ29sb3IrIjtcbiAgICAgICAgICAgIGNvbG9yOiAiK24uQ29sb3IrIjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICIrbi5BbGlnbisiO1xuICAgICAgICB9IjoiICNvbmV0cnVzdC1jb25zZW50LXNkayAjb3Qtc3luYy1udGZ5IC5vdC1wYy1oYW5kbGVyLm90LXBjLWxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICIrci5Db2xvcisiO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogIityLkFsaWduKyI7XG4gICAgICAgIH0iKSsiXG4gICAgICAgICJ9LGpuLnByb3RvdHlwZS5pbml0SHRtbD1mdW5jdGlvbihlLHQsbyxuKXt2YXIgcj0iQ29tcGxldGUiPT09ZT8iLm90LXN5bmMtcmVmcmVzaCI6Ii5vdC1zeW5jLWNoZWNrIjt0LlNob3dJY29uPyh2KG8oIlN5bmMiPT09ZT8iLm90LXN5bmMtcmVmcmVzaCI6Ii5vdC1zeW5jLWNoZWNrIikpLnNob3coKSx2KG8ocikpLmhpZGUoKSx2KG8oIi5vdC1zeW5jLWljb24iKSkuc2hvdygiaW5saW5lLWJsb2NrIiksbi5jbGFzc0xpc3QucmVtb3ZlKCJvdC1oaWRlLWljb24iKSk6KHYobygiLm90LXN5bmMtaWNvbiIpKS5oaWRlKCksbi5jbGFzc0xpc3QuYWRkKCJvdC1oaWRlLWljb24iKSksdC5UaXRsZT92KG8oIiNvdC1zeW5jLXRpdGxlIikpLmh0bWwodC5UaXRsZSk6dihvKCIjb3Qtc3luYy10aXRsZSIpKS5oaWRlKCksdC5EZXNjP3YobygiLm90LXN5bmMtZGVzYyIpKS5odG1sKHQuRGVzYyk6dihvKCIub3Qtc3luYy1kZXNjIikpLmhpZGUoKSx0LlNob3dDbG9zZT8odihvKCIub3Qtc3luYy1jbG9zZS1oYW5kbGVyIikpLnNob3coImlubGluZS1ibG9jayIpLHYobygiLm90LWNsb3NlLWljb24iKSkuYXR0cigiYXJpYS1sYWJlbCIsdC5DbG9zZUFyaWEpLG4uY2xhc3NMaXN0LnJlbW92ZSgib3QtaGlkZS1jbG9zZSIpKToodihvKCIub3Qtc3luYy1jbG9zZS1oYW5kbGVyIikpLmhpZGUoKSxuLmNsYXNzTGlzdC5hZGQoIm90LWhpZGUtY2xvc2UiKSl9LGpuLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpe3RoaXMuaGlkZVN5bmNOdGZ5KCksSS5yZXNldEZvY3VzVG9Cb2R5KCl9LGpuLnByb3RvdHlwZS5oaWRlU3luY050Znk9ZnVuY3Rpb24oKXtMLk50ZnlDb25maWcuU2hvd0NTJiZ3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIix3bi5yZXNpemVFdmVudCksdigiI290LXN5bmMtbnRmeSIpLmZhZGVPdXQoNDAwKX0sam4ucHJvdG90eXBlLnJlbW92ZUh0bWw9ZnVuY3Rpb24oKXt2YXIgZT12KHRoaXMuRWwpLmVsO2UmJlAucmVtb3ZlQ2hpbGQoZSl9LGpuLnByb3RvdHlwZS5hbGlnbkNvbnRlbnQ9ZnVuY3Rpb24oKXt2KCIub3Qtc3luYy1idG5jbnRyIikuZWxbMF0uY2xpZW50SGVpZ2h0PnYoIi5vdC1zeW5jLXRpdGxlY250ciIpLmVsWzBdLmNsaWVudEhlaWdodCYmKHYoIi5vdC1zeW5jLXRpdGxlY250ciIpLmFkZENsYXNzKCJvdC1wb3MtYWJzIiksdigiLm90LXN5bmMtYnRuY250ciIpLmFkZENsYXNzKCJvdC1wb3MtcmVsIikpfSxqbi5wcm90b3R5cGUucmVzaXplRXZlbnQ9ZnVuY3Rpb24oKXt3aW5kb3cuaW5uZXJXaWR0aDw9ODk2JiZ3bi5hbGlnbkNvbnRlbnQoKX0sam4pO2Z1bmN0aW9uIGpuKCl7dGhpcy5FbD0iI290LXN5bmMtbnRmeSJ9V24ucHJvdG90eXBlLnRvZ2dsZVZlbmRvckNvbnNlbnQ9ZnVuY3Rpb24oZSx0KXt2b2lkIDA9PT10JiYodD1udWxsKSwoZT0oZT12b2lkIDA9PT1lP1tdOmUpLmxlbmd0aD9lOmwub25lVHJ1c3RJQUJDb25zZW50LnZlbmRvcnMpLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIGU9ZS5zcGxpdCgiOiIpLHQ9ZVswXSxlPWVbMV0sdD12KEEuUF9WZW5kb3JfQ29udGFpbmVyKyIgLiIrQS5QX1Zlbl9DdGdsKycgW3ZlbmRvcmlkPSInK3QrJyJdJykuZWxbMF07dCYmUC5zZXRDaGVja2VkQXR0cmlidXRlKCIiLHQsInRydWUiPT09ZSl9KTt2YXIgbyxuPXYoIiNvbmV0cnVzdC1wYy1zZGsgI3NlbGVjdC1hbGwtdmVuZG9yLWdyb3Vwcy1oYW5kbGVyIikuZWxbMF07biYmKG89UC5nZXRBY3RpdmVJZEFycmF5KFAuZGlzdGluY3RBcnJheShlKSksKHQ9bnVsbD09PXQ/by5sZW5ndGg9PT1lLmxlbmd0aDp0KXx8MD09PW8ubGVuZ3RoP24ucGFyZW50RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKFJ0LlBfTGluZV9UaHJvdWdoKTpuLnBhcmVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZChSdC5QX0xpbmVfVGhyb3VnaCksUC5zZXRDaGVja2VkQXR0cmlidXRlKCIiLG4sdCkpfSxXbi5wcm90b3R5cGUudG9nZ2xlVmVuZG9yTGk9ZnVuY3Rpb24oZSx0KXt2b2lkIDA9PT10JiYodD1udWxsKSwoZT0oZT12b2lkIDA9PT1lP1tdOmUpLmxlbmd0aD9lOmwub25lVHJ1c3RJQUJDb25zZW50LmxlZ0ludFZlbmRvcnMpLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIGU9ZS5zcGxpdCgiOiIpLHQ9ZVswXSxlPWVbMV0sdD12KEEuUF9WZW5kb3JfQ29udGFpbmVyKyIgLiIrQS5QX1Zlbl9MdGdsKycgW2xlZy12ZW5kb3JpZD0iJyt0KyciXScpLmVsWzBdO3QmJlAuc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiIix0LCJ0cnVlIj09PWUpfSk7dmFyIG8sbj12KCIjb25ldHJ1c3QtcGMtc2RrICNzZWxlY3QtYWxsLXZlbmRvci1sZWctaGFuZGxlciIpLmVsWzBdO24mJihvPVAuZ2V0QWN0aXZlSWRBcnJheShQLmRpc3RpbmN0QXJyYXkoZSkpLCh0PW51bGw9PT10P28ubGVuZ3RoPT09ZS5sZW5ndGg6dCl8fDA9PT1vLmxlbmd0aD9uLnBhcmVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShSdC5QX0xpbmVfVGhyb3VnaCk6bi5wYXJlbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoUnQuUF9MaW5lX1Rocm91Z2gpLFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiIixuLHQpKX0sV24ucHJvdG90eXBlLnVwZGF0ZVZlbmRvckxlZ0J0bnM9ZnVuY3Rpb24oZSl7KGU9KGU9dm9pZCAwPT09ZT9bXTplKS5sZW5ndGg/ZTpsLm9uZVRydXN0SUFCQ29uc2VudC5sZWdJbnRWZW5kb3JzKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciBlPWUuc3BsaXQoIjoiKSx0PWVbMF0sZT1lWzFdLHQ9dihBLlBfVmVuZG9yX0NvbnRhaW5lcisnIC5vdC1sZWctYnRuLWNvbnRhaW5lcltkYXRhLWdyb3VwLWlkPSInK3QrJyJdJykuZWxbMF07dCYmVi51cGRhdGVMZWdJbnRCdG5FbGVtZW50KHQsInRydWUiPT09ZSl9KX07dmFyIEtuLHpuPVduO2Z1bmN0aW9uIFduKCl7fWZ1bmN0aW9uIFluKCl7cmV0dXJuKCFiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmTC5QQ1RlbXBsYXRlVXBncmFkZSYmTC5QQ0NhdGVnb3J5U3R5bGU9PT12ZS5Ub2dnbGU/RS50b2dnbGVFbDpFLmNoa2JveEVsKS5jbG9uZU5vZGUoITApfVhuLnByb3RvdHlwZS5zZXRIdG1sVGVtcGxhdGU9ZnVuY3Rpb24oZSl7dy5zZXRJbnRlcm5hbERhdGEoKSx3LnJvb3RIdG1sPWUsdy5jbG9uZUh0bWxFbGVtZW50cygpfSxYbi5wcm90b3R5cGUuZ2V0VmVuZG9yTGlzdEVsZT1mdW5jdGlvbihlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxuPShvLmNsYXNzTGlzdC5hZGQoIm90LXZzLWxpc3QiKSxMLlZlbmRvclNlcnZpY2VDb25maWcuUENWU0V4cGFuZEdyb3VwKTtyZXR1cm4gZS5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7ZT13LmNyZWF0ZVZlbmRvcihlLmdyb3VwUmVmLGUsbiwib3QtdnMtbHN0LWlkLSIrdCk7by5hcHBlbmRDaGlsZChlKX0pLHQuYXBwZW5kQ2hpbGQobyksdH0sWG4ucHJvdG90eXBlLmluc2VydFZlbmRvclNlcnZpY2VIdG1sPWZ1bmN0aW9uKGUsdCl7dmFyIG87dy5jaGVja0lmSXNJbnZhbGlkKGUsdCl8fChvPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSx3LnNldFZlbmRvckNvbnRhaW5lcihvLGUpLHcuc2V0VmVuZG9yTGlzdChvLGUpLGUuU3ViR3JvdXBzJiYwPGUuU3ViR3JvdXBzLmxlbmd0aD8oby5xdWVyeVNlbGVjdG9yKHRoaXMuTUFJTl9DT05UX0VMRSkuY2xhc3NMaXN0LmFkZCgib3Qtdm5kLXN1YmdycC1jbnQiKSxlPXQuY2hpbGRyZW5bMV0sYi5wY05hbWU9PT1zdCYmKGU9dC5jaGlsZHJlblsyXSksdC5pbnNlcnRCZWZvcmUobyxlKSk6dC5hcHBlbmRDaGlsZChvKSl9LFhuLnByb3RvdHlwZS50b2dnbGVWZW5kb3JTZXJ2aWNlPWZ1bmN0aW9uKGUsdCxvLG4pe2U9RC5nZXRHcm91cEJ5SWQoZSksdD1ELmdldFZTQnlJZCh0KTtuPW58fHcuZ2V0VmVuZG9ySW5wdXRFbGVtZW50KHQuQ3VzdG9tVmVuZG9yU2VydmljZUlkKSx3LnNldFZlbmRvclNlcnZpY2VTdGF0ZShuLHQsbyksbz93LmNoYW5nZUdyb3VwU3RhdGUoZSxvLHcuaXNUb2dnbGUpOncuY2hlY2tHcm91cENoaWxkcmVuU3RhdGUoZSl8fHcuY2hhbmdlR3JvdXBTdGF0ZShlLCExLHcuaXNUb2dnbGUpfSxYbi5wcm90b3R5cGUuc2V0VmVuZG9yU3RhdGVCeUdyb3VwPWZ1bmN0aW9uKGUsdCl7ZT1lLlZlbmRvclNlcnZpY2VzO2lmKGwuc2hvd1ZlbmRvclNlcnZpY2UmJmUpZm9yKHZhciBvPTAsbj1lO288bi5sZW5ndGg7bysrKXt2YXIgcj1uW29dLGk9dy5nZXRWZW5kb3JJbnB1dEVsZW1lbnQoci5DdXN0b21WZW5kb3JTZXJ2aWNlSWQpO3cuc2V0VmVuZG9yU2VydmljZVN0YXRlKGkscix0KX19LFhuLnByb3RvdHlwZS5yZXNldFZlbmRvclVJU3RhdGU9ZnVuY3Rpb24oZSl7ZS5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7dD13LmdldFZlbmRvcklucHV0RWxlbWVudCh0KTt3LmNoYW5nZVZlbmRvclNlcnZpY2VVSVN0YXRlKHQsZSl9KX0sWG4ucHJvdG90eXBlLnNldFZlbmRvclNlcnZpY2VTdGF0ZT1mdW5jdGlvbihlLHQsbyl7dy5jaGFuZ2VWZW5kb3JTZXJ2aWNlU3RhdGUodCxvKSx3LmNoYW5nZVZlbmRvclNlcnZpY2VVSVN0YXRlKGUsbyk7ZT1vP2FuOmxuO21vLnRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudChObyxlLHQuU2VydmljZU5hbWUrIjogIit0LkN1c3RvbVZlbmRvclNlcnZpY2VJZCl9LFhuLnByb3RvdHlwZS5yZW1vdmVWU1VJVGVtcGxhdGU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKHRoaXMuTUFJTl9DT05UX0VMRSk7dCYmZS5yZW1vdmVDaGlsZCh0KX0sWG4ucHJvdG90eXBlLmNvbnNlbnRBbGw9ZnVuY3Rpb24obyl7bC5nZXRWZW5kb3JzSW5Eb21haW4oKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PW87b3x8KHQ9RC5pc0Fsd2F5c0FjdGl2ZUdyb3VwKGUuZ3JvdXBSZWYpKSx3LnRvZ2dsZVZlbmRvclNlcnZpY2UoZS5ncm91cFJlZi5DdXN0b21Hcm91cElkLGUuQ3VzdG9tVmVuZG9yU2VydmljZUlkLHR8fG8pfSl9LFhuLnByb3RvdHlwZS5jbG9uZUh0bWxFbGVtZW50cz1mdW5jdGlvbigpe3ZhciBlLHQsbyxuLHI9dy5yb290SHRtbC5xdWVyeVNlbGVjdG9yKHRoaXMuTUFJTl9DT05UX0VMRSk7ciYmKGU9ci5xdWVyeVNlbGVjdG9yKCIub3Qtdm5kLXNlcnYtaGRyLWNudHIiKSxuPShvPSh0PXIucXVlcnlTZWxlY3RvcigiLm90LXZuZC1sc3QtY29udCIpKS5xdWVyeVNlbGVjdG9yKCIub3Qtdm5kLWl0ZW0iKSkucXVlcnlTZWxlY3RvcigiLm90LXZuZC1pbmZvIiksdy52ZW5kb3JMYWJlbENvbnRhaW5lckNsb25lPWUuY2xvbmVOb2RlKCEwKSxyLnJlbW92ZUNoaWxkKGUpLHcudmVuZG9ySW5mb0Nsb25lPW4uY2xvbmVOb2RlKCEwKSxvLnF1ZXJ5U2VsZWN0b3IoIi5vdC12bmQtaW5mby1jbnRyIikucmVtb3ZlQ2hpbGQobiksdy52ZW5kb3JJdGVtQ2xvbmU9by5jbG9uZU5vZGUoITApLHQucmVtb3ZlQ2hpbGQobyksdy52ZW5kb3JMaXN0Q29udGFpbmVyQ2xvbmU9dC5jbG9uZU5vZGUoITApLHIucmVtb3ZlQ2hpbGQodCksdy52ZW5kb3JTZXJ2TWFpbkNvbnRhaW5lckNsb25lPXIuY2xvbmVOb2RlKCEwKSx3LnJvb3RIdG1sLnJlbW92ZUNoaWxkKHIpKX0sWG4ucHJvdG90eXBlLnNldEludGVybmFsRGF0YT1mdW5jdGlvbigpe3cuaXNUb2dnbGU9TC5QQ0NhdGVnb3J5U3R5bGU9PT12ZS5Ub2dnbGU7dmFyIGU9TC5WZW5kb3JTZXJ2aWNlQ29uZmlnO3cuc3RyaW5nVHJhbnNsYXRpb249bmV3IE1hcCx3LnN0cmluZ1RyYW5zbGF0aW9uLnNldCgiU2VydmljZU5hbWUiLGUuUENWU05hbWVUZXh0fHwiU2VydmljZU5hbWUiKSx3LnN0cmluZ1RyYW5zbGF0aW9uLnNldCgiUGFyZW50Q29tcGFueSIsZS5QQ1ZTUGFyZW50Q29tcGFueVRleHR8fCJQYXJlbnRDb21wYW55Iiksdy5zdHJpbmdUcmFuc2xhdGlvbi5zZXQoIkFkZHJlc3MiLGUuUENWU0FkZHJlc3NUZXh0fHwiQWRkcmVzcyIpLHcuc3RyaW5nVHJhbnNsYXRpb24uc2V0KCJEZWZhdWx0Q2F0ZWdvcnlOYW1lIixlLlBDVlNEZWZhdWx0Q2F0ZWdvcnlUZXh0fHwiRGVmYXVsdENhdGVnb3J5TmFtZSIpLHcuc3RyaW5nVHJhbnNsYXRpb24uc2V0KCJEZXNjcmlwdGlvbiIsZS5QQ1ZTRGVmYXVsdERlc2NyaXB0aW9uVGV4dHx8IkRlc2NyaXB0aW9uIiksdy5zdHJpbmdUcmFuc2xhdGlvbi5zZXQoIkRQT0VtYWlsIixlLlBDVlNEUE9FbWFpbFRleHR8fCJEUE9FbWFpbCIpLHcuc3RyaW5nVHJhbnNsYXRpb24uc2V0KCJEUE9MaW5rIixlLlBDVlNEUE9MaW5rVGV4dHx8IkRQT0xpbmsiKSx3LnN0cmluZ1RyYW5zbGF0aW9uLnNldCgiUHJpdmFjeVBvbGljeUxpbmsiLGUuUENWU1ByaXZhY3lQb2xpY3lMaW5rVGV4dHx8IlByaXZhY3lQb2xpY3lMaW5rIiksdy5zdHJpbmdUcmFuc2xhdGlvbi5zZXQoIkNvb2tpZVBvbGljeUxpbmsiLGUuUENWU0Nvb2tpZVBvbGljeUxpbmtUZXh0fHwiQ29va2llUG9saWN5TGluayIpLHcuc3RyaW5nVHJhbnNsYXRpb24uc2V0KCJPcHRPdXRMaW5rIixlLlBDVlNPcHRPdXRMaW5rVGV4dHx8Ik9wdE91dExpbmsiKSx3LnN0cmluZ1RyYW5zbGF0aW9uLnNldCgiTGVnYWxCYXNpcyIsZS5QQ1ZTTGVnYWxCYXNpc1RleHR8fCJMZWdhbEJhc2lzIil9LFhuLnByb3RvdHlwZS5zZXRWZW5kb3JDb250YWluZXI9ZnVuY3Rpb24oZSx0KXt2YXIgbz13LnZlbmRvclNlcnZNYWluQ29udGFpbmVyQ2xvbmUuY2xvbmVOb2RlKCEwKSx0PShvLnNldEF0dHJpYnV0ZSgiZGF0YS1ncm91cC1pZCIsdC5DdXN0b21Hcm91cElkKSx3LnZlbmRvckxhYmVsQ29udGFpbmVyQ2xvbmUuY2xvbmVOb2RlKCEwKSk7dC5xdWVyeVNlbGVjdG9yKCIub3Qtdm5kLXNlcnYtaGRyIikuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChMLlZlbmRvclNlcnZpY2VDb25maWcuUENWU0xpc3RUaXRsZSksby5hcHBlbmRDaGlsZCh0KSxlLmFwcGVuZENoaWxkKG8pfSxYbi5wcm90b3R5cGUuc2V0VmVuZG9yTGlzdD1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbz0wLG49dy5nZXRWU0Zyb21Hcm91cEFuZFN1Ymdyb3Vwcyh0KSxyPW4ubGVuZ3RoLGU9ZS5xdWVyeVNlbGVjdG9yKHRoaXMuTUFJTl9DT05UX0VMRSksaT13LnZlbmRvckxpc3RDb250YWluZXJDbG9uZS5jbG9uZU5vZGUoKSxzPUwuVmVuZG9yU2VydmljZUNvbmZpZy5QQ1ZTRXhwYW5kQ2F0ZWdvcnk7bzxyO28rKyl7dmFyIGE9dy5jcmVhdGVWZW5kb3IodCxuW29dLHMpO2kuYXBwZW5kQ2hpbGQoYSl9ZS5hcHBlbmRDaGlsZChpKX0sWG4ucHJvdG90eXBlLmdldFZTRnJvbUdyb3VwQW5kU3ViZ3JvdXBzPWZ1bmN0aW9uKGUsdCl7dmFyIG8sbj1udWxsIT0obz1lLlZlbmRvclNlcnZpY2VzKT9vOltdO2lmKHQ9dm9pZCAwPT09dD8hMTp0KWZvcih2YXIgcj0wLGk9bnVsbCE9KG89ZS5TdWJHcm91cHMpP286W107cjxpLmxlbmd0aDtyKyspe3ZhciBzPW51bGwhPShzPWlbcl0uVmVuZG9yU2VydmljZXMpP3M6W107bi5wdXNoLmFwcGx5KG4scyl9cmV0dXJuIG59LFhuLnByb3RvdHlwZS5jcmVhdGVWZW5kb3I9ZnVuY3Rpb24oZSx0LG8sbil7dmFyIHI9dy52ZW5kb3JJdGVtQ2xvbmUuY2xvbmVOb2RlKCEwKSxpPShyLnNldEF0dHJpYnV0ZSgiZGF0YS12bmQtaWQiLHQuQ3VzdG9tVmVuZG9yU2VydmljZUlkKSxMLlBDQWNjb3JkaW9uU3R5bGU9PT1jZS5Ob0FjY29yZGlvbj8oci5jbGFzc0xpc3QucmVtb3ZlKCJvdC1hY2NvcmRpb24tbGF5b3V0IiksKGk9ci5xdWVyeVNlbGVjdG9yKCJidXR0b24iKSkmJnIucmVtb3ZlQ2hpbGQoaSkpOncuc2V0RXhwYW5kVmVuZG9yTGlzdChyLG8pLHcuc2V0VmVuZG9ySGVhZGVyKGUsdCxyLG4pLHIucXVlcnlTZWxlY3RvcigiLm90LXZuZC1pbmZvLWNudHIiKSk7cmV0dXJuIHcuc2V0VmVuZG9ySW5mbyhpLHQpLHJ9LFhuLnByb3RvdHlwZS5zZXRFeHBhbmRWZW5kb3JMaXN0PWZ1bmN0aW9uKGUsdCl7ZS5xdWVyeVNlbGVjdG9yKCJidXR0b24iKS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCIiK3QpfSxYbi5wcm90b3R5cGUuc2V0VmVuZG9ySGVhZGVyPWZ1bmN0aW9uKGUsdCxvLG4pe3ZhciByPUwuUENTaG93QWx3YXlzQWN0aXZlVG9nZ2xlLGk9ImFsd2F5cyBhY3RpdmUiPT09RC5nZXRHcnBTdGF0dXMoZSkudG9Mb3dlckNhc2UoKSxvPW8ucXVlcnlTZWxlY3RvcigiLm90LWFjYy1oZHIiKSxzPShpJiZvLmNsYXNzTGlzdC5hZGQoIm90LWFsd2F5cy1hY3RpdmUtZ3JvdXAiKSxudWxsKSxlPShpJiZMLlBDQ2F0ZWdvcnlTdHlsZT09PXZlLlRvZ2dsZXx8KHM9dy5zZXRIZWFkZXJJbnB1dFN0eWxlKGUsdCxpLG4pKSx3LnNldEhlYWRlclRleHQodCxvKSksbj0oby5hcHBlbmRDaGlsZChlKSx3LmdldFBvc2l0aW9uRm9yRWxlbWVudChMLlBDQWNjb3JkaW9uU3R5bGUsdy5pc1RvZ2dsZSkpLHQ9bi5wb3NpdGlvbkljb247cyYmby5pbnNlcnRBZGphY2VudEVsZW1lbnQobi5wb3NpdGlvbklucHV0LHMpLGkmJnImJihlPXcuZ2V0QWx3YXlzQWN0aXZlRWxlbWVudCgpLG8uaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLGUpKSxMLlBDQWNjb3JkaW9uU3R5bGUhPT1jZS5Ob0FjY29yZGlvbiYmKG49dy5zZXRIZWFkZXJBY2NvcmRpb25JY29uKCksby5pbnNlcnRBZGphY2VudEVsZW1lbnQodCxuKSl9LFhuLnByb3RvdHlwZS5nZXRQb3NpdGlvbkZvckVsZW1lbnQ9ZnVuY3Rpb24oZSx0KXt2YXIgbz0iYmVmb3JlZW5kIixuPSJiZWZvcmVlbmQiO3JldHVybntwb3NpdGlvbkljb246bz10JiZlPT09Y2UuUGx1c01pbnVzPyJhZnRlcmJlZ2luIjpvLHBvc2l0aW9uSW5wdXQ6bj10P246ImFmdGVyYmVnaW4ifX0sWG4ucHJvdG90eXBlLnNldEhlYWRlckFjY29yZGlvbkljb249ZnVuY3Rpb24oKXt2YXIgZT0oTC5QQ0FjY29yZGlvblN0eWxlPT09Y2UuQ2FyZXQ/RS5hcnJvd0VsOkUucGx1c01pbnVzRWwpLmNsb25lTm9kZSghMCk7cmV0dXJuIGV9LFhuLnByb3RvdHlwZS5zZXRIZWFkZXJUZXh0PWZ1bmN0aW9uKGUsdCl7dmFyIG89dC5xdWVyeVNlbGVjdG9yKCIub3QtY2F0LWhlYWRlciIpLG49by5jbG9uZU5vZGUoKTtyZXR1cm4gdC5yZW1vdmVDaGlsZChvKSxuLmlubmVyVGV4dD1lLlNlcnZpY2VOYW1lLG59LFhuLnByb3RvdHlwZS5zZXRIZWFkZXJJbnB1dFN0eWxlPWZ1bmN0aW9uKGUsdCxvLG4pe3ZhciByLGkscyxhO3JldHVybiBMLlZlbmRvclNlcnZpY2VDb25maWcuUENWU09wdE91dD8oZT1ELmNoZWNrSXNBY3RpdmVCeURlZmF1bHQoZSkscj0hMSxyPShpPWwudnNDb25zZW50KS5oYXModC5DdXN0b21WZW5kb3JTZXJ2aWNlSWQpP2kuZ2V0KHQuQ3VzdG9tVmVuZG9yU2VydmljZUlkKTplLChpPVluKCkpLnF1ZXJ5U2VsZWN0b3IoImlucHV0IikuY2xhc3NMaXN0LmFkZCgiY2F0ZWdvcnktc3dpdGNoLWhhbmRsZXIiKSxlPWkucXVlcnlTZWxlY3RvcigiaW5wdXQiKSxhPXQuQ3VzdG9tVmVuZG9yU2VydmljZUlkLG49bnVsbCE9bj9uOiJvdC12ZW5kb3ItaWQtIithLHM9Im90LXZlbmRvci1oZWFkZXItaWQtIithLHYoZSkuYXR0cigiaWQiLG4pLHYoZSkuYXR0cigibmFtZSIsbiksdihlKS5hdHRyKCJhcmlhLWxhYmVsbGVkYnkiLHMpLHYoZSkuZGF0YSgib3QtdnMtaWQiLGEpLHYoZSkuZGF0YSgib3B0YW5vbmdyb3VwaWQiLHQuZ3JvdXBSZWYuQ3VzdG9tR3JvdXBJZCksZS5kaXNhYmxlZD1vLFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLGUsciksYT13LmlzVG9nZ2xlP246cyx2KGkucXVlcnlTZWxlY3RvcigibGFiZWwiKSkuYXR0cigiZm9yIixhKSx2KGkucXVlcnlTZWxlY3RvcigiLm90LWxhYmVsLXR4dCIpKS5odG1sKHQuU2VydmljZU5hbWUpLGkpOm51bGx9LFhuLnByb3RvdHlwZS5nZXRBbHdheXNBY3RpdmVFbGVtZW50PWZ1bmN0aW9uKCl7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIGUuY2xhc3NMaXN0LmFkZCgib3QtYWx3YXlzLWFjdGl2ZSIpLGUuaW5uZXJUZXh0PUwuQWx3YXlzQWN0aXZlVGV4dCxlfSxYbi5wcm90b3R5cGUuc2V0VmVuZG9ySW5mbz1mdW5jdGlvbihlLHQpe3ZhciBvLG4scixpLHMsYSxsPVsiRFBPTGluayIsIlByaXZhY3lQb2xpY3lMaW5rIiwiQ29va2llUG9saWN5TGluayIsIk9wdE91dExpbmsiXTtmb3IobyBpbiB0KXcuc2tpcFZlbmRvckluZm9LZXkobyx0KXx8KG49dFtvXSwocj13LnZlbmRvckluZm9DbG9uZS5jbG9uZU5vZGUoITApKS5kYXRhc2V0LnZuZEluZm9LZXk9bysiLSIrdC5DdXN0b21WZW5kb3JTZXJ2aWNlSWQsaT1yLnF1ZXJ5U2VsZWN0b3IoIi5vdC12bmQtbGJsIikscz1yLnF1ZXJ5U2VsZWN0b3IoIi5vdC12bmQtY250IiksaS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KHcuZ2V0TG9jYWxpemVkU3RyaW5nKG8pKSxsLmluY2x1ZGVzKG8pPyhzLnJlbW92ZSgpLGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpLHYoYSkuYXR0cigiaHJlZiIsbiksdihhKS5hdHRyKCJ0YXJnZXQiLCJfYmxhbmsiKSx2KGEpLmF0dHIoInJlbCIsIm5vb3BlbmVyIiksdihhKS5hdHRyKCJhcmlhLWxhYmVsIixuKyIgIitMLk5ld1dpblR4dCksYS5jbGFzc0xpc3QuYWRkKCJvdC12bmQtY250IiksYS5pbm5lclRleHQ9bixpLmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJlbmQiLGEpKTpzLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobiksZS5hcHBlbmRDaGlsZChyKSl9LFhuLnByb3RvdHlwZS5za2lwVmVuZG9ySW5mb0tleT1mdW5jdGlvbihlLHQpe3JldHVybiJWZW5kb3JTZXJ2aWNlSWQiPT09ZXx8IkRlZmF1bHRDYXRlZ29yeUlkIj09PWV8fCJTZXJ2aWNlTmFtZSI9PT1lfHwiZ3JvdXBSZWYiPT09ZXx8IkN1c3RvbVZlbmRvclNlcnZpY2VJZCI9PT1lfHwiUHVycG9zZUlkIj09PWV8fCF0W2VdfSxYbi5wcm90b3R5cGUuZ2V0TG9jYWxpemVkU3RyaW5nPWZ1bmN0aW9uKGUpe3JldHVybiB3LnN0cmluZ1RyYW5zbGF0aW9uLmhhcyhlKT93LnN0cmluZ1RyYW5zbGF0aW9uLmdldChlKToiREVGQVVMVCJ9LFhuLnByb3RvdHlwZS5jaGVja0dyb3VwQ2hpbGRyZW5TdGF0ZT1mdW5jdGlvbihlKXtmb3IodmFyIHQsbz0wLG49bnVsbCE9KHQ9ZS5TdWJHcm91cHMpP3Q6W107bzxuLmxlbmd0aDtvKyspe3ZhciByPW5bb107aWYody5jaGVja0dyb3VwQ2hpbGRyZW5TdGF0ZShyKSlyZXR1cm4hMH1mb3IodmFyIGk9MCxzPW51bGwhPSh0PWUuVmVuZG9yU2VydmljZXMpP3Q6W107aTxzLmxlbmd0aDtpKyspe3ZhciBhPXNbaV07aWYobC52c0NvbnNlbnQuZ2V0KGEuQ3VzdG9tVmVuZG9yU2VydmljZUlkKSlyZXR1cm4hMH1yZXR1cm4hMX0sWG4ucHJvdG90eXBlLmNoYW5nZVZlbmRvclNlcnZpY2VTdGF0ZT1mdW5jdGlvbihlLHQpe2wudnNDb25zZW50LnNldChlLkN1c3RvbVZlbmRvclNlcnZpY2VJZCx0KX0sWG4ucHJvdG90eXBlLmNoYW5nZVZlbmRvclNlcnZpY2VVSVN0YXRlPWZ1bmN0aW9uKGUsdCl7ZSYmUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsZSx0KX0sWG4ucHJvdG90eXBlLmNoYW5nZUdyb3VwU3RhdGU9ZnVuY3Rpb24oZSx0LG8pe3ZhciBuPUQuZ2V0UGFyZW50QnlHcnAoZSk7Vi50b2dnbGVHcnBTdGF0dXMoZSx0KSx3LnVwZGF0ZUdyb3VwVUlTdGF0ZShlLkN1c3RvbUdyb3VwSWQsdCxvLG51bGwhPT1uKSxuJiYoZT13LmNoZWNrR3JvdXBDaGlsZHJlblN0YXRlKG4pLHcuY2hhbmdlR3JvdXBTdGF0ZShuLGUsbykpfSxYbi5wcm90b3R5cGUudXBkYXRlR3JvdXBVSVN0YXRlPWZ1bmN0aW9uKGUsdCxvLG4pe3ZvaWQgMD09PW4mJihuPSExKTtuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoKG4/IiNvdC1zdWItZ3JvdXAtaWQtIjoiI290LWdyb3VwLWlkLSIpK2UpO24mJlAuc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLG4sdCl9LFhuLnByb3RvdHlwZS5nZXRWZW5kb3JJbnB1dEVsZW1lbnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdC12ZW5kb3ItaWQtIitlKX0sWG4ucHJvdG90eXBlLmNoZWNrSWZJc0ludmFsaWQ9ZnVuY3Rpb24oZSx0KXtyZXR1cm4hZXx8IWUuVmVuZG9yU2VydmljZXN8fCF0fHxlLlZlbmRvclNlcnZpY2VzLmxlbmd0aDw9MH07dmFyIHcsSm49WG47ZnVuY3Rpb24gWG4oKXt0aGlzLk1BSU5fQ09OVF9FTEU9Ii5vdC12bmQtc2VydiJ9ZnVuY3Rpb24gUW4oZSx0KXt2YXIgbyxuLHI9Im90R2VuZXJpY0JhY2tkcm9wIixpPSIjIityLHM9Im90LWdlbmVyaWMtbW9kYWwtbGF5ZXIiO2Z1bmN0aW9uIGEoZSl7ZT8odihpKS5yZW1vdmVDbGFzcygib3QtaGlkZSIpLHYoaSkuZWxbMF0ucmVtb3ZlQXR0cmlidXRlKCJzdHlsZSIpKToodihpKS5mYWRlT3V0KDQwMCksdihpKS5hZGRDbGFzcygib3QtaGlkZSIpKX1yZXR1cm4obz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuY2xhc3NMaXN0LmFkZChzKSwobj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuc2V0QXR0cmlidXRlKCJpZCIsciksbi5jbGFzc0xpc3QuYWRkKCJvbmV0cnVzdC1wYy1kYXJrLWZpbHRlciIpLG8uYXBwZW5kQ2hpbGQobiksKHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLmNsYXNzTGlzdC5hZGQoIm90LWdlbmVyYWwtbW9kYWwiKSxyLnNldEF0dHJpYnV0ZSgiaWQiLG51bGwhPWU/ZToiZ2VuZXJpY01vZGFsIiksby5hcHBlbmRDaGlsZChyKSxuPSIjb25ldHJ1c3QtY29uc2VudC1zZGsgLm90LWdlbmVyYWwtbW9kYWwgeyBiYWNrZ3JvdW5kLWNvbG9yOiAiK0wucGNCYWNrZ3JvdW5kQ29sb3IrIjt9IiwoZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib25ldHJ1c3Qtc3R5bGUiKSkudGV4dENvbnRlbnQ9ZS50ZXh0Q29udGVudCtuLHtkaWFsb2dMYXllckh0bWw6byxtb2RhbEh0bWw6cixjbG9zZU1vZGFsSGFuZGxlcjpmdW5jdGlvbigpe2EoITEpO3ZhciBlPXQucXVlcnlTZWxlY3RvcigiLiIrcyk7dC5yZW1vdmVDaGlsZChlKX0sb3Blbk1vZGFsSGFuZGxlcjpmdW5jdGlvbigpe2EoITApfX19JG4uZ2V0SW5zdGFuY2U9ZnVuY3Rpb24oKXtyZXR1cm4gJG4uaW5zdGFuY2U9JG4uaW5zdGFuY2U/JG4uaW5zdGFuY2U6bmV3ICRufSwkbi5wcm90b3R5cGUuZ2V0SGVhbHRoU2lnbmF0dXJlVUlJZk5lZWRlZD1mdW5jdGlvbihlKXtpZigodm9pZCAwPT09ZSYmKGU9ITEpLGIucmVxdWlyZVNpZ25hdHVyZUVuYWJsZWQpJiYodGhpcy5oZWFsdGhTaWduYXR1cmVHcm91cD1MLkdyb3Vwcy5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBlLm5lZWRzSGVhbHRoU2lnbmF0dXJlfSksdGhpcy5oZWFsdGhTaWduYXR1cmVHcm91cCkpaWYoYi5oZWFsdGhTaWduYXR1cmVHcm91cHx8ZSlpZihiLmhlYWx0aFNpZ25hdHVyZURhdGEpdGhpcy5zZXRTaWduSGVhbHRoRGF0YUludG9Db29raWVHcm91cChiLmhlYWx0aFNpZ25hdHVyZURhdGEpO2Vsc2V7dmFyIHQ9Vi5pc0dyb3VwQWN0aXZlKHRoaXMuaGVhbHRoU2lnbmF0dXJlR3JvdXApLG89IjEiPT09VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5IRUFMVEhfU0lHTkFUVVJFX0FVVEhPUklaQVRJT04pO2lmKCEoZSYmdCYmbykpcmV0dXJuIHRoaXMuc2hvd0hlYWx0aFNpZ25hdHVyZU1vZGFsKGZ1bmN0aW9uKCl7fSksdGhpcy5oZWFsdGhTaWduYXR1cmVFbGVtZW50fWVsc2UodD1WLmlzR3JvdXBBY3RpdmUodGhpcy5oZWFsdGhTaWduYXR1cmVHcm91cCkpJiZrci5zZXREYXRhU3ViamVjdElkVjIoYi5oZWFsdGhTaWduYXR1cmVEYXRhKSxULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5IRUFMVEhfU0lHTkFUVVJFX0FVVEhPUklaQVRJT04sdD8iMSI6IiIpO3JldHVybiBudWxsfSwkbi5wcm90b3R5cGUuY2hlY2tJZkhlYWx0aFNpZ25hdHVyZU5lZWRlZD1mdW5jdGlvbihlKXt2YXIgdCxvLG49dGhpcztyZXR1cm4gdm9pZCAwPT09ZSYmKGU9ITEpLCFiLnJlcXVpcmVTaWduYXR1cmVFbmFibGVkfHxsLmJhbm5lckNsb3NlU291cmNlPT09ZWUuUmVqZWN0QWxsfHxsLmJhbm5lckNsb3NlU291cmNlPT09ZWUuQmFubmVyQ2xvc2VCdXR0b258fGwuYmFubmVyQ2xvc2VTb3VyY2U9PT1lZS5Db250aW51ZVdpdGhvdXRBY2NlcHRpbmdCdXR0b24/UHJvbWlzZS5yZXNvbHZlKCk6KHRoaXMuaGVhbHRoU2lnbmF0dXJlR3JvdXA9TC5Hcm91cHMuZmluZChmdW5jdGlvbihlKXtyZXR1cm4gZS5uZWVkc0hlYWx0aFNpZ25hdHVyZX0pLHRoaXMuaGVhbHRoU2lnbmF0dXJlR3JvdXA/KGU9ZXx8dGhpcy5nZXRHcm91cFRvZ2dsZUh0bWxWYWx1ZSgpKT9iLmhlYWx0aFNpZ25hdHVyZURhdGE/KHRoaXMuc2V0U2lnbkhlYWx0aERhdGFJbnRvQ29va2llR3JvdXAoYi5oZWFsdGhTaWduYXR1cmVEYXRhKSxQcm9taXNlLnJlc29sdmUoKSk6KHQ9Vi5pc0dyb3VwQWN0aXZlKHRoaXMuaGVhbHRoU2lnbmF0dXJlR3JvdXApLG89IjEiPT09VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5IRUFMVEhfU0lHTkFUVVJFX0FVVEhPUklaQVRJT04pLGUmJnQmJm8/UHJvbWlzZS5yZXNvbHZlKCk6bmV3IFByb21pc2UoZnVuY3Rpb24oZSl7bi5zaG93SGVhbHRoU2lnbmF0dXJlTW9kYWwoZSl9KSk6KCh0PVYuaXNHcm91cEFjdGl2ZSh0aGlzLmhlYWx0aFNpZ25hdHVyZUdyb3VwKSkmJmtyLnNldERhdGFTdWJqZWN0SWRWMihiLmhlYWx0aFNpZ25hdHVyZURhdGEpLFQud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLkhFQUxUSF9TSUdOQVRVUkVfQVVUSE9SSVpBVElPTix0PyIxIjoiIiksUHJvbWlzZS5yZXNvbHZlKCkpOihlPSLwn5uRIElOVkFMSUQgQ29va2llIGNhdGVnb3J5OiAiK0wuUmVxdWlyZVNpZ25hdHVyZUNJRCxQcm9taXNlLnJlamVjdChlKSkpfSwkbi5wcm90b3R5cGUuZ2V0SGVhbHRoU2lnbmF0dXJlQ29tcG9uZW50PWZ1bmN0aW9uKGUsdCl7dGhpcy5pc01vZGFsPSExLHRoaXMubGFuZ0pzb249TCx0aGlzLnBhcmVudEVsZW1lbnQ9ZSx0aGlzLmhlYWx0aFNpZ25hdHVyZUdyb3VwPXQ7ZT17ZXJyb3JNZXNzYWdlOnRoaXMubGFuZ0pzb24uUENSZXF1aXJlU2lnbmF0dXJlSGVscFRleHQsaW5wdXRMYWJlbFRleHQ6dGhpcy5sYW5nSnNvbi5QQ1JlcXVpcmVTaWduYXR1cmVGaWVsZExhYmVsfSx0PSc8Zm9ybSBjbGFzcz0ib3Qtc2lnbmF0dXJlLWhlYWx0aC1mb3JtIiBpZD0iZm9ybSI+XG4gICAgICAgIDxkaXYgY2xhc3M9Im90LWlucHV0LWZpZWxkLWNvbnQiPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj0ib3RIZWFsdGhTaWduYXR1cmVEYXRhIiBjbGFzcz0ib3Qtc2lnbmF0dXJlLWxhYmVsIj4nK2UuaW5wdXRMYWJlbFRleHQrJzwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9Im90SGVhbHRoU2lnbmF0dXJlRGF0YSIgbmFtZT0ib3RIZWFsdGhTaWduYXR1cmVEYXRhIiByZXF1aXJlZCBhcmlhLXJlcXVpcmVkPSJ0cnVlIiBjbGFzcz0ib3Qtc2lnbmF0dXJlLWlucHV0IlxuICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9IicrZS5pbnB1dExhYmVsVGV4dCsnIiBhdXRvZm9jdXMgYXJpYS1pbnZhbGlkPSJ0cnVlIiBhcmlhLWRlc2NyaWJlZGJ5PSJvdEhlYWx0aFNpZ25hdHVyZUVycm9yTWVzZyIvPlxuICAgICAgICAgICAgPHNwYW4gaWQ9Im90SGVhbHRoU2lnbmF0dXJlRXJyb3JNZXNnIiBjbGFzcz0ib3QtaGVhbHRoLXNpZ25hdHVyZS1lcnJvciI+XG4gICAgICAgICAgICAgICAgJytlLmVycm9yTWVzc2FnZSsiXG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZm9ybT4iLGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KHQpLGUuY2xhc3NMaXN0LmFkZCgib3Qtc2lnbmF0dXJlLWhlYWx0aC1ncm91cCIpLHRoaXMuc2V0Q29uc2VudElkSW5wdXQoZSksdGhpcy5oZWFsdGhTaWduYXR1cmVFbGVtZW50PWUsdGhpcy5wYXJlbnRFbGVtZW50LmFwcGVuZENoaWxkKGUpLHRoaXMuYWRkRXZlbnRIYW5kbGVycygpfSwkbi5wcm90b3R5cGUucmVzZXRIZWFsdGhTaWduYXR1cmVEYXRhPWZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUmJihlPSExKSxiLnJlcXVpcmVTaWduYXR1cmVFbmFibGVkJiYoYi5oZWFsdGhTaWduYXR1cmVEYXRhPSIiLGIuaGVhbHRoU2lnbmF0dXJlR3JvdXA9bnVsbCxlKSYmVC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguSEVBTFRIX1NJR05BVFVSRV9BVVRIT1JJWkFUSU9OLCIiKX0sJG4ucHJvdG90eXBlLnNldENvbnNlbnRJZEluUEM9ZnVuY3Rpb24oKXt0aGlzLnNldENvbnNlbnRJZElucHV0KG51bGwpfSwkbi5wcm90b3R5cGUuc2V0Q29uc2VudElkSW5wdXQ9ZnVuY3Rpb24oZSl7dmFyIHQ7dGhpcy5oZWFsdGhTaWduYXR1cmVHcm91cCYmKFQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguSEVBTFRIX1NJR05BVFVSRV9BVVRIT1JJWkFUSU9OKT8odD0oZXx8ZG9jdW1lbnQpLnF1ZXJ5U2VsZWN0b3IodGhpcy5IRUFMVEhfU0lHTkFUVVJFX0lOUFVUX1NFTEVDVE9SKSkmJihlPSIiLFYuaXNHcm91cEFjdGl2ZSh0aGlzLmhlYWx0aFNpZ25hdHVyZUdyb3VwKSYmKGU9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5DT05TRU5UX0lEKSksdC52YWx1ZT1lKToodD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRoaXMuSEVBTFRIX1NJR05BVFVSRV9JTlBVVF9TRUxFQ1RPUikpJiYodC52YWx1ZT0iIikpfSwkbi5wcm90b3R5cGUuc2hvd0hlYWx0aFNpZ25hdHVyZU1vZGFsPWZ1bmN0aW9uKHQpe3ZhciBvPXRoaXM7a24uaGlkZUNvbnNlbnROb3RpY2VWMigpLHRoaXMubGFuZ0pzb249TCx0aGlzLnBhcmVudEVsZW1lbnQ9ZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLlBBUkVOVF9TRUxFQ1RPUiksdGhpcy5zZXRNeUhlYWx0aERhdGFNb2RhbChmdW5jdGlvbihlKXtvLnNldFNpZ25IZWFsdGhEYXRhSW50b0Nvb2tpZUdyb3VwKGUpLHQoKX0sZnVuY3Rpb24oKXtWLnRvZ2dsZUdycFN0YXR1cyhvLmhlYWx0aFNpZ25hdHVyZUdyb3VwLCExKSxWLnRvZ2dsZUdyb3VwSHRtbEVsZW1lbnQoby5oZWFsdGhTaWduYXR1cmVHcm91cCxvLmhlYWx0aFNpZ25hdHVyZUdyb3VwLkN1c3RvbUdyb3VwSWQsITEpLHQoKX0pfSwkbi5wcm90b3R5cGUuc2V0TXlIZWFsdGhEYXRhTW9kYWw9ZnVuY3Rpb24oZSx0KXt0aGlzLmlzTW9kYWw9ITAsdGhpcy5yZWplY3RDYWxsYmFjaz10LHRoaXMuY29uZmlybUNhbGxiYWNrPWUsdGhpcy5jb25maWdPcHRpb25zPXttYWluVGl0bGU6dGhpcy5oZWFsdGhTaWduYXR1cmVHcm91cC5Hcm91cE5hbWUsZGVzY3JpcHRpb246dGhpcy5oZWFsdGhTaWduYXR1cmVHcm91cC5Hcm91cERlc2NyaXB0aW9uLHN1YnRpdGxlOnRoaXMubGFuZ0pzb24uUENSZXF1aXJlU2lnbmF0dXJlSGVhZGVyVGV4dCxhcmlhTGFiZWw6dGhpcy5sYW5nSnNvbi5QQ1JlcXVpcmVTaWduYXR1cmVIZWFkZXJEZXNjLGVycm9yTWVzc2FnZTp0aGlzLmxhbmdKc29uLlBDUmVxdWlyZVNpZ25hdHVyZUhlbHBUZXh0LHN1YkRlc2NyaXB0aW9uOnRoaXMubGFuZ0pzb24uUENSZXF1aXJlU2lnbmF0dXJlSGVhZGVyRGVzYyxpbnB1dExhYmVsVGV4dDp0aGlzLmxhbmdKc29uLlBDUmVxdWlyZVNpZ25hdHVyZUZpZWxkTGFiZWwscmVqZWN0QnV0dG9uVGV4dDp0aGlzLmxhbmdKc29uLlBDUmVxdWlyZVNpZ25hdHVyZVJlamVjdEJ0blRleHQsYWNjZXB0QnV0dG9uVGV4dDp0aGlzLmxhbmdKc29uLlBDUmVxdWlyZVNpZ25hdHVyZUNvbmZpcm1CdG5UZXh0fTt0PWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxlPXRoaXMuY3JlYXRlTW9kYWwodCk7dGhpcy5oZWFsdGhTaWduYXR1cmVFbGVtZW50PXRoaXMuY3JlYXRlSGVhbHRTaWduYXR1cmVGb3JtKGUpLHRoaXMucGFyZW50RWxlbWVudC5hcHBlbmRDaGlsZCh0KSx0aGlzLnNldEZvY3VzT25JbnB1dCgpLHRoaXMuYWRkRXZlbnRIYW5kbGVycygpLHRoaXMuZ2VuZXJpY01vZGFsLm9wZW5Nb2RhbEhhbmRsZXIoKX0sJG4ucHJvdG90eXBlLnNldFNpZ25IZWFsdGhEYXRhSW50b0Nvb2tpZUdyb3VwPWZ1bmN0aW9uKGUpe2U/KGtyLnNldERhdGFTdWJqZWN0SWRWMihlKSxiLmhlYWx0aFNpZ25hdHVyZURhdGE9ZSxWLnRvZ2dsZUdycFN0YXR1cyh0aGlzLmhlYWx0aFNpZ25hdHVyZUdyb3VwLCEwKSk6KGIuaGVhbHRoU2lnbmF0dXJlRGF0YT0iIixWLnRvZ2dsZUdycFN0YXR1cyh0aGlzLmhlYWx0aFNpZ25hdHVyZUdyb3VwLCExKSksVC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguSEVBTFRIX1NJR05BVFVSRV9BVVRIT1JJWkFUSU9OLGU/IjEiOiIiKX0sJG4ucHJvdG90eXBlLmNyZWF0ZU1vZGFsPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmdlbmVyaWNNb2RhbD1Rbih0aGlzLk1PREFMX0lELHRoaXMucGFyZW50RWxlbWVudCksZS5hcHBlbmRDaGlsZCh0aGlzLmdlbmVyaWNNb2RhbC5kaWFsb2dMYXllckh0bWwpLHRoaXMuZ2VuZXJpY01vZGFsLm1vZGFsSHRtbH0sJG4ucHJvdG90eXBlLmNyZWF0ZUhlYWx0U2lnbmF0dXJlRm9ybT1mdW5jdGlvbihlKXt0PXRoaXMuY29uZmlnT3B0aW9ucyxvPSEwPT09KG51bGw9PShvPVMubW9kdWxlSW5pdGlhbGl6ZXIpP3ZvaWQgMDpvLlNFT09wdGltaXphdGlvbik7dmFyIHQsbz0nPGRpdlxuICAgICAgICBjbGFzcz0ib3Qtc2lnbmF0dXJlLWhlYWx0aCJcbiAgICAgICAgcm9sZT0iZGlhbG9nIlxuICAgICAgICBhcmlhLWxhYmVsPSInK3QuYXJpYUxhYmVsKyciXG4gICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9Im90U2lnbmF0dXJlR3JvdXBEZXNjIj5cbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9Im90LXNpZ25hdHVyZS1jb250Ij5cbiAgICAgICAgICAgICcrKG8/JzxwIGlkPSJvdFNpZ25hdHVyZVN1YnRpdGxlIiBjbGFzcz0ib3Qtc2lnbmF0dXJlLXN1YnRpdGxlIiByb2xlPSJoZWFkaW5nIiBhcmlhLWxldmVsPSI0Ij4nK3Quc3VidGl0bGUrIjwvcD4iOic8aDQgaWQ9Im90U2lnbmF0dXJlU3VidGl0bGUiIGNsYXNzPSJvdC1zaWduYXR1cmUtc3VidGl0bGUiPicrdC5zdWJ0aXRsZSsiPC9oND4iKSsnXG4gICAgICAgICAgICA8cCBjbGFzcz0ib3Qtc2lnbmF0dXJlLXBhcmFncmFwaCI+Jyt0LnN1YkRlc2NyaXB0aW9uKyc8L3A+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9Im90LXNpZ25hdHVyZS1jb250Ij5cbiAgICAgICAgICAgICcrKG8/JzxwIGlkPSJvdFNpZ25hdHVyZUdyb3VwVGl0bGUiIGNsYXNzPSJvdC1zaWduYXR1cmUtZ3JvdXAtdGl0bGUiIHJvbGU9ImhlYWRpbmciIGFyaWEtbGV2ZWw9IjUiPicrdC5tYWluVGl0bGUrIjwvcD4iOic8aDUgaWQ9Im90U2lnbmF0dXJlR3JvdXBUaXRsZSIgY2xhc3M9Im90LXNpZ25hdHVyZS1ncm91cC10aXRsZSI+Jyt0Lm1haW5UaXRsZSsiPC9oNT4iKSsnXG4gICAgICAgICAgICA8cCBpZD0ib3RTaWduYXR1cmVHcm91cERlc2MiIGNsYXNzPSJvdC1zaWduYXR1cmUtcGFyYWdyYXBoIj4nK3QuZGVzY3JpcHRpb24rJzwvcD5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICA8Zm9ybSBjbGFzcz0ib3Qtc2lnbmF0dXJlLWhlYWx0aC1mb3JtIiBpZD0iZm9ybSI+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPSJvdEhlYWx0aFNpZ25hdHVyZURhdGEiIGNsYXNzPSJvdC1zaWduYXR1cmUtbGFiZWwiPicrdC5pbnB1dExhYmVsVGV4dCsnPC9sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ib3RIZWFsdGhTaWduYXR1cmVEYXRhIiBuYW1lPSJvdEhlYWx0aFNpZ25hdHVyZURhdGEiIHJlcXVpcmVkIGFyaWEtcmVxdWlyZWQ9InRydWUiIGNsYXNzPSJvdC1zaWduYXR1cmUtaW5wdXQiXG4gICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0iJyt0LmlucHV0TGFiZWxUZXh0KyciIGF1dG9mb2N1cyBhcmlhLWludmFsaWQ9InRydWUiIGFyaWEtZGVzY3JpYmVkYnk9Im90SGVhbHRoU2lnbmF0dXJlRXJyb3JNZXNnIi8+XG4gICAgICAgICAgICA8c3BhbiBpZD0ib3RIZWFsdGhTaWduYXR1cmVFcnJvck1lc2ciIGNsYXNzPSJvdC1oZWFsdGgtc2lnbmF0dXJlLWVycm9yIiBhcmlhLWxpdmU9ImFzc2VydGl2ZSI+XG4gICAgICAgICAgICAgICAgJyt0LmVycm9yTWVzc2FnZSsnXG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZm9ybT5cbiAgICAgICAgPGRpdiBjbGFzcz0ib3Qtc2lnbmF0dXJlLWJ1dHRvbnMtY29udCI+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJvdC1zaWduYXR1cmUtYnV0dG9uIHJlamVjdCI+Jyt0LnJlamVjdEJ1dHRvblRleHQrJzwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ib3Qtc2lnbmF0dXJlLWJ1dHRvbiBhY2NlcHQiPicrdC5hY2NlcHRCdXR0b25UZXh0KyI8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+IjtyZXR1cm4gZS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KG8pLHRoaXMuc2V0Q29uc2VudElkSW5wdXQoZSksdGhpcy5hZGRTdHlsZXMoKSxlLnF1ZXJ5U2VsZWN0b3IoIi5vdC1zaWduYXR1cmUtaGVhbHRoIil9LCRuLnByb3RvdHlwZS5hZGRFdmVudEhhbmRsZXJzPWZ1bmN0aW9uKCl7dGhpcy5pc01vZGFsPyh0aGlzLnBhcmVudEVsZW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLlJFSkVDVF9TRUxFQ1RPUikuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMucmVqZWN0TGlzdGVuZXIuYmluZCh0aGlzKSksdGhpcy5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IodGhpcy5DT05GSVJNX1NFTEVDVE9SKS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5jb25maXJtTGlzdGVuZXIuYmluZCh0aGlzKSkpOnRoaXMucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKHRoaXMuSEVBTFRIX1NJR05BVFVSRV9JTlBVVF9TRUxFQ1RPUikuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuaGVhbHRoU2lnbmF0dXJlSW5wdXRDaGFuZ2VkLmJpbmQodGhpcykpfSwkbi5wcm90b3R5cGUucmVtb3ZlTW9kYWw9ZnVuY3Rpb24oKXt0aGlzLnJlbW92ZUV2ZW50SGFuZGxlcnMoKSx0aGlzLmdlbmVyaWNNb2RhbC5jbG9zZU1vZGFsSGFuZGxlcigpfSwkbi5wcm90b3R5cGUucmVtb3ZlRXZlbnRIYW5kbGVycz1mdW5jdGlvbigpe3RoaXMuaXNNb2RhbD8odGhpcy5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IodGhpcy5SRUpFQ1RfU0VMRUNUT1IpLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLnJlamVjdExpc3RlbmVyKSx0aGlzLnBhcmVudEVsZW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLkNPTkZJUk1fU0VMRUNUT1IpLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmNvbmZpcm1MaXN0ZW5lcikpOnRoaXMucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKHRoaXMuSEVBTFRIX1NJR05BVFVSRV9JTlBVVF9TRUxFQ1RPUikucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuaGVhbHRoU2lnbmF0dXJlSW5wdXRDaGFuZ2VkKX0sJG4ucHJvdG90eXBlLnJlamVjdExpc3RlbmVyPWZ1bmN0aW9uKCl7dGhpcy5yZW1vdmVNb2RhbCgpLHRoaXMucmVqZWN0Q2FsbGJhY2smJnRoaXMucmVqZWN0Q2FsbGJhY2soKX0sJG4ucHJvdG90eXBlLmNvbmZpcm1MaXN0ZW5lcj1mdW5jdGlvbigpe3ZhciBlPXRoaXMuaGVhbHRoU2lnbmF0dXJlRWxlbWVudC5xdWVyeVNlbGVjdG9yKHRoaXMuSEVBTFRIX1NJR05BVFVSRV9JTlBVVF9TRUxFQ1RPUikudmFsdWU7ZSYmKHRoaXMucmVtb3ZlTW9kYWwoKSx0aGlzLmNvbmZpcm1DYWxsYmFjayhlKSl9LCRuLnByb3RvdHlwZS5oZWFsdGhTaWduYXR1cmVJbnB1dENoYW5nZWQ9ZnVuY3Rpb24oZSl7Yi5oZWFsdGhTaWduYXR1cmVEYXRhPWUudGFyZ2V0LnZhbHVlfSwkbi5wcm90b3R5cGUuc2V0Rm9jdXNPbklucHV0PWZ1bmN0aW9uKCl7dGhpcy5oZWFsdGhTaWduYXR1cmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IodGhpcy5IRUFMVEhfU0lHTkFUVVJFX0lOUFVUX1NFTEVDVE9SKS5mb2N1cygpfSwkbi5wcm90b3R5cGUuYWRkU3R5bGVzPWZ1bmN0aW9uKCl7dmFyIGU9IiIsdD0oZT0oZT0oZSs9dGhpcy5zZXRQYXJhZ3JhcGhTdHlsZXMoKSkrdGhpcy5zZXRBY2NlcHRCdXR0b25zU3R5bGVzKCkpK3RoaXMuc2V0UmVqZWN0QnV0dG9uc1N0eWxlcygpLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvbmV0cnVzdC1zdHlsZSIpKTt0LnRleHRDb250ZW50PXQudGV4dENvbnRlbnQrZX0sJG4ucHJvdG90eXBlLnNldFJlamVjdEJ1dHRvbnNTdHlsZXM9ZnVuY3Rpb24oKXtyZXR1cm4iI29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoICIrdGhpcy5SRUpFQ1RfU0VMRUNUT1IrIiB7XG4gICAgICAgICAgICBjb2xvcjogIitMLmJhbm5lck1QQnV0dG9uVGV4dENvbG9yKyI7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICIrTC5iYW5uZXJNUEJ1dHRvblRleHRDb2xvcisiO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIitMLmJhbm5lck1QQnV0dG9uQ29sb3IrIjtcbiAgICAgICAgfSJ9LCRuLnByb3RvdHlwZS5zZXRBY2NlcHRCdXR0b25zU3R5bGVzPWZ1bmN0aW9uKCl7cmV0dXJuIiNvbmV0cnVzdC1jb25zZW50LXNkayAub3Qtc2lnbmF0dXJlLWhlYWx0aCAiK3RoaXMuQ09ORklSTV9TRUxFQ1RPUisiIHtcbiAgICAgICAgICAgIGNvbG9yOiAiK0wuYnV0dG9uVGV4dENvbG9yKyI7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICIrTC5idXR0b25Db2xvcisiO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIitMLmJ1dHRvbkNvbG9yKyI7XG4gICAgICAgIH0ifSwkbi5wcm90b3R5cGUuc2V0UGFyYWdyYXBoU3R5bGVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSEVBTFRIX1NJR05BVFVSRV9QQVJBR1JBUEhfU0VMRUNUT1IrIiB7XG4gICAgICAgICAgICBjb2xvcjogIitMLnRleHRDb2xvcisiO1xuICAgICAgICB9In0sJG4ucHJvdG90eXBlLmdldEdyb3VwVG9nZ2xlSHRtbFZhbHVlPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5oZWFsdGhTaWduYXR1cmVHcm91cC5DdXN0b21Hcm91cElkLGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXQjb3QtZ3JvdXAtaWQtIitlKyIsIGlucHV0I290LWJuci1oZHItaWQtIitlKyIsIGlucHV0I290LWJuci1ncnAtaWQtIitlKTtyZXR1cm4hIWUmJiEwPT09ZS5jaGVja2VkfTt2YXIgWm49JG47ZnVuY3Rpb24gJG4oKXt0aGlzLk1PREFMX0lEPSJoZWFsdGhTaWduYXR1cmVEYXRhTW9kYWwiLHRoaXMuUEFSRU5UX1NFTEVDVE9SPSIjb25ldHJ1c3QtY29uc2VudC1zZGsiLHRoaXMuUkVKRUNUX1NFTEVDVE9SPSIub3Qtc2lnbmF0dXJlLWJ1dHRvbi5yZWplY3QiLHRoaXMuQ09ORklSTV9TRUxFQ1RPUj0iLm90LXNpZ25hdHVyZS1idXR0b24uYWNjZXB0Iix0aGlzLkhFQUxUSF9TSUdOQVRVUkVfSU5QVVRfU0VMRUNUT1I9IiNvdEhlYWx0aFNpZ25hdHVyZURhdGEiLHRoaXMuSEVBTFRIX1NJR05BVFVSRV9QQVJBR1JBUEhfU0VMRUNUT1I9InAub3Qtc2lnbmF0dXJlLXBhcmFncmFwaCJ9dHIucHJvdG90eXBlLnVwZGF0ZURhdGFTdWJqZWN0VGltZXN0YW1wPWZ1bmN0aW9uKCl7dmFyIGU9Ty5hbGVydEJveENsb3NlRGF0ZSgpLGU9ZSYmSS5nZXRVVENGb3JtYXR0ZWREYXRlKGUpO3YoIi5vdC11c2VyaWQtdGltZXN0YW1wIikuaHRtbChMLlBDZW50ZXJVc2VySWRUaW1lc3RhbXBUaXRsZVRleHQrIjogIitlKX0sdHIucHJvdG90eXBlLmNsb3NlQmFubmVyPWZ1bmN0aW9uKGUsdCl7dmFyIG89dGhpczt2b2lkIDA9PT10JiYodD0hMSksZT8hdCYmSS5zaG91bGRTaG93RG91YmxlT3B0SW5TaWduYWwoITApP0kuY3JlYXRlRG91YmxlT3B0SW5Db25maXJtRGlhbG9nKCExLGZ1bmN0aW9uKCl7by5jbG9zZU9wdGFub25BbGVydEJveCgpLG8uYWxsb3dBbGwoITEpfSxmdW5jdGlvbigpe0wuT25DbGlja0Nsb3NlQmFubmVyJiZkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixDLmJvZHlDbGlja0V2ZW50KSxMLlNjcm9sbENsb3NlQmFubmVyJiZ3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixDLnNjcm9sbENsb3NlQmFubmVyKX0pOih0aGlzLmNsb3NlT3B0YW5vbkFsZXJ0Qm94KCksdGhpcy5hbGxvd0FsbCghMSkpOih0aGlzLmNoZWNrSW1wbGljaXRDb25zZW50V2hlbkJhbm5lcklzQ2xvc2VkKCExKSx0aGlzLmNsb3NlT3B0YW5vbkFsZXJ0Qm94KCksdGhpcy5jbG9zZSghMSkpfSx0ci5wcm90b3R5cGUuYWxsb3dBbGw9ZnVuY3Rpb24oZSx0KXt2b2lkIDA9PT10JiYodD0hMSksUy5tb2R1bGVJbml0aWFsaXplci5Nb2JpbGVTREs/d2luZG93Lk9uZVRydXN0LkFsbG93QWxsKCk6dGhpcy5BbGxvd0FsbFYyKGUsdCl9LHRyLnByb3RvdHlwZS5iYW5uZXJBY3Rpb25zSGFuZGxlcj1mdW5jdGlvbih0LG4sZSl7dmFyIHI9dGhpcyxpPSh2b2lkIDA9PT1lJiYoZT0hMSksX28uc2V0TGFuZGluZ1BhdGhQYXJhbShoLk5PVF9MQU5ESU5HX1BBR0UpLF8uZ3JvdXBzQ29uc2VudD1bXSxfLmhvc3RzQ29uc2VudD1bXSxfLmdlblZlbmRvcnNDb25zZW50PXt9LHt9KTtMLkdyb3Vwcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2lmKGUuSXNBYm91dEdyb3VwKXJldHVybiExO1UoZS5TdWJHcm91cHMsW2VdKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciBvPXIuZ2V0R3JvdXBTdGF0dXModCxuLGUpO3Iuc2V0R3JvdXBDb25zZW50KG8sZSksZS5Ib3N0cy5sZW5ndGgmJkkuaXNPcHRPdXRFbmFibGVkKCkmJmUuSG9zdHMuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdDtpW2UuSG9zdElkXT9Eby51cGRhdGVIb3N0U3RhdHVzKGUsbyk6KGlbZS5Ib3N0SWRdPSEwLHQ9RG8uaXNIb3N0UGFydE9mQWx3YXlzQWN0aXZlR3JvdXAoZS5Ib3N0SWQpLF8uaG9zdHNDb25zZW50LnB1c2goZS5Ib3N0SWQrIjoiKyh0fHxvPyIxIjoiMCIpKSl9KSxfLmdlblZlbk9wdE91dEVuYWJsZWQmJmUuR2VuZXJhbFZlbmRvcnNJZHMmJmUuR2VuZXJhbFZlbmRvcnNJZHMubGVuZ3RoJiZlLkdlbmVyYWxWZW5kb3JzSWRzLmZvckVhY2goZnVuY3Rpb24oZSl7SW8udXBkYXRlR2VuVmVuZG9yU3RhdHVzKGUsbyl9KX0pfSksTC5Jc0lhYkVuYWJsZWQmJih0P3RoaXMuaWFiLmFsbG93QWxsaGFuZGxlcigpOnRoaXMuaWFiLnJlamVjdEFsbEhhbmRsZXIoZSkpLGduLnJlbW92ZUFkZGVkT1RDc3NTdHlsZXMoKSxrbi5oaWRlQ29uc2VudE5vdGljZVYyKCksUG8ud3JpdGVHcnBQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCksUG8ud3JpdGVIc3RQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCksXy5nZW5WZW5PcHRPdXRFbmFibGVkJiZQby53cml0ZUdlblZlbkNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5UKSxfLnZzSXNBY3RpdmVBbmRPcHRPdXQmJlBvLndyaXRlVlNDb25zZW50Q29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQpLE9uLnN1YnN0aXR1dGVQbGFpblRleHRTY3JpcHRUYWdzKCksTG4udXBkYXRlR3RtTWFjcm9zKCksdGhpcy5leGVjdXRlT3B0YW5vbldyYXBwZXIoKSxudWxsIT0oZT1udWxsPT0oZT1TKT92b2lkIDA6ZS5tb2R1bGVJbml0aWFsaXplcikmJmUuQmFubmVyUmVmcmVzaEFmdGVyQ2FsbFRvQWN0aW9uRW5hYmxlZCYmdGhpcy5yZWxvYWRQYWdlKCl9LHRyLnByb3RvdHlwZS5nZXRHcm91cFN0YXR1cz1mdW5jdGlvbihlLHQsbyl7cmV0dXJuIGU/by5TdGF0dXMudG9Mb3dlckNhc2UoKSE9PWYuQUxXQVlTX0lOQUNUSVZFOiEhdCYmRC5pc0Fsd2F5c0FjdGl2ZUdyb3VwKG8pfSx0ci5wcm90b3R5cGUuc2V0R3JvdXBDb25zZW50PWZ1bmN0aW9uKGUsdCl7dmFyIG87LTE8RXQuaW5kZXhPZih0LlR5cGUpJiYobz0iIixvPWIucmVxdWlyZVNpZ25hdHVyZUVuYWJsZWQmJnQubmVlZHNIZWFsdGhTaWduYXR1cmU/Yi5oZWFsdGhTaWduYXR1cmVEYXRhPyIxIjoiMCI6ZSYmdC5IYXNDb25zZW50T3B0T3V0PyIxIjoiMCIsXy5ncm91cHNDb25zZW50LnB1c2godC5DdXN0b21Hcm91cElkKyI6IitvKSl9LHRyLnByb3RvdHlwZS5uZXh0UGFnZUNsb3NlQmFubmVyPWZ1bmN0aW9uKCl7X28uaXNMYW5kaW5nUGFnZSgpfHxPLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpfHx0aGlzLmNsb3NlQmFubmVyKEwuTmV4dFBhZ2VBY2NlcHRBbGxDb29raWVzLCEwKX0sdHIucHJvdG90eXBlLnJtU2Nyb2xsQW5kQ2xpY2tCb2R5RXZlbnRzPWZ1bmN0aW9uKCl7TC5TY3JvbGxDbG9zZUJhbm5lciYmd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsdGhpcy5zY3JvbGxDbG9zZUJhbm5lciksTC5PbkNsaWNrQ2xvc2VCYW5uZXImJmRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMuYm9keUNsaWNrRXZlbnQpfSx0ci5wcm90b3R5cGUub25DbGlja0Nsb3NlQmFubmVyPWZ1bmN0aW9uKGUpe08uaXNBbGVydEJveENsb3NlZEFuZFZhbGlkKCl8fChtby50cmlnZ2VyR29vZ2xlQW5hbHl0aWNzRXZlbnQoTm8sR28pLHRoaXMuY2xvc2VCYW5uZXIoTC5PbkNsaWNrQWNjZXB0QWxsQ29va2llcykpLEMucm1TY3JvbGxBbmRDbGlja0JvZHlFdmVudHMoKX0sdHIucHJvdG90eXBlLnNjcm9sbENsb3NlQmFubmVyPWZ1bmN0aW9uKCl7dmFyIGU9dihkb2N1bWVudCkuaGVpZ2h0KCktdih3aW5kb3cpLmhlaWdodCgpLGU9KDA9PT1lJiYoZT12KHdpbmRvdykuaGVpZ2h0KCkpLDEwMCp2KHdpbmRvdykuc2Nyb2xsVG9wKCkvZSk7MjU8KGU9ZTw9MD8xMDAqKGRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQmJmRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQuc2Nyb2xsVG9wfHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3B8fGRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wKS8oZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudCYmZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudC5zY3JvbGxIZWlnaHR8fGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbEhlaWdodHx8ZG9jdW1lbnQuYm9keSYmZG9jdW1lbnQuYm9keS5zY3JvbGxIZWlnaHQpOmUpJiYhTy5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKSYmKCFfLmlzUENWaXNpYmxlfHxMLk5vQmFubmVyKT8obW8udHJpZ2dlckdvb2dsZUFuYWx5dGljc0V2ZW50KE5vLEdvKSxDLmNsb3NlQmFubmVyKEwuU2Nyb2xsQWNjZXB0QWxsQ29va2llcyksQy5ybVNjcm9sbEFuZENsaWNrQm9keUV2ZW50cygpKTpPLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpJiZDLnJtU2Nyb2xsQW5kQ2xpY2tCb2R5RXZlbnRzKCl9LHRyLnByb3RvdHlwZS5BbGxvd0FsbFYyPWZ1bmN0aW9uKGUsdCl7dm9pZCAwPT09dCYmKHQ9ITEpO2Zvcih2YXIgbz10aGlzLmdyb3Vwc0NsYXNzLmdldEFsbEdyb3VwRWxlbWVudHMoKSxuPTA7bjxvLmxlbmd0aDtuKyspe3ZhciByPUQuZ2V0R3JvdXBCeUlkKG9bbl0uZ2V0QXR0cmlidXRlKCJkYXRhLW9wdGFub25ncm91cGlkIikpO2IucmVxdWlyZVNpZ25hdHVyZUVuYWJsZWQmJnIubmVlZHNIZWFsdGhTaWduYXR1cmU/dGhpcy5ncm91cHNDbGFzcy50b2dnbGVHcnBFbGVtZW50cyhvW25dLHIsISFiLmhlYWx0aFNpZ25hdHVyZURhdGEpOih0aGlzLmdyb3Vwc0NsYXNzLnRvZ2dsZUdycEVsZW1lbnRzKG9bbl0sciwhMCksdGhpcy5ncm91cHNDbGFzcy50b29nbGVTdWJHcm91cEVsZW1lbnQob1tuXSwhMCwhMSwhMCksdGhpcy5ncm91cHNDbGFzcy50b29nbGVTdWJHcm91cEVsZW1lbnQob1tuXSwhMCwhMCwhMCkpfV8uc2hvd1ZlbmRvclNlcnZpY2UmJncuY29uc2VudEFsbCghMCksdGhpcy5iYW5uZXJBY3Rpb25zSGFuZGxlcighMCwhMSksdGhpcy5jb25zZW50VHJhbnNhY3Rpb25zKGUsITAsdCksTC5Jc0lhYkVuYWJsZWQmJih0aGlzLmlhYi51cGRhdGVJYWJWYXJpYWJsZVJlZmVyZW5jZSgpLHRoaXMuaWFiLnVwZGF0ZVZlbmRvcnNET01Ub2dnbGVTdGF0dXMoITApLHRoaXMudXBkYXRlVmVuZG9yTGVnQnRucyghMCkpfSx0ci5wcm90b3R5cGUucmVqZWN0QWxsPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBvLG4scj0odD12b2lkIDA9PT10PyExOnQpP0NlWzVdOkNlWzJdLGk9dGhpcy5ncm91cHNDbGFzcy5nZXRBbGxHcm91cEVsZW1lbnRzKCkscz1udWxsIT0obz1udWxsPT0obz1TKT92b2lkIDA6by5mcCkmJm8uQ29va2llVjJSZWplY3RBbGw/KG49dGhpcy5pbml0aWFsaXplT2JqZWN0VG9MSVJlamVjdEFsbCh0KSx0aGlzLmluaXRpYWxpemVBbGxvd0xJUmVqZWN0QWxsKHQpKTohKG49ITApLGE9MDthPGkubGVuZ3RoO2ErKyl7dmFyIGw9RC5nZXRHcm91cEJ5SWQoaVthXS5nZXRBdHRyaWJ1dGUoImRhdGEtb3B0YW5vbmdyb3VwaWQiKSk7ImFsd2F5cyBhY3RpdmUiIT09RC5nZXRHcnBTdGF0dXMobCkudG9Mb3dlckNhc2UoKSYmKFYudG9nZ2xlR3JwRWxlbWVudHMoaVthXSxsLCExLHMpLHRoaXMuZ3JvdXBzQ2xhc3MudG9vZ2xlU3ViR3JvdXBFbGVtZW50KGlbYV0sITEsITEsITApLEwuSXNJYWJFbmFibGVkJiYoTC5Jc0lhYkVuYWJsZWQsIW4pfHx0aGlzLmdyb3Vwc0NsYXNzLnRvb2dsZVN1Ykdyb3VwRWxlbWVudChpW2FdLCExLCEwLCEwKSl9Xy5zaG93VmVuZG9yU2VydmljZSYmdy5jb25zZW50QWxsKCExKSx0aGlzLmJhbm5lckFjdGlvbnNIYW5kbGVyKCExLCEwLHMpLHIhPT1fLmNvbnNlbnRJbnRlcmFjdGlvblR5cGUmJnRoaXMuY29uc2VudFRyYW5zYWN0aW9ucyhlLCExLHQpLEwuSXNJYWJFbmFibGVkJiYodGhpcy5pYWIudXBkYXRlSWFiVmFyaWFibGVSZWZlcmVuY2UoKSx0aGlzLmlhYi51cGRhdGVWZW5kb3JzRE9NVG9nZ2xlU3RhdHVzKCExLHMpLHN8fHRoaXMudXBkYXRlVmVuZG9yTGVnQnRucyghMSkpfSx0ci5wcm90b3R5cGUuaW5pdGlhbGl6ZU9iamVjdFRvTElSZWplY3RBbGw9ZnVuY3Rpb24oZSl7cmV0dXJuIWUmJkwuQmFubmVyU2hvd1JlamVjdEFsbEJ1dHRvbiYmTC5CUmVqZWN0Q29uc2VudFR5cGU9PT1MZS5PQkpFQ1RfVE9fTEl8fGUmJkwuUENlbnRlclNob3dSZWplY3RBbGxCdXR0b24mJkwuQlJlamVjdENvbnNlbnRUeXBlPT09TGUuT0JKRUNUX1RPX0xJfSx0ci5wcm90b3R5cGUuaW5pdGlhbGl6ZUFsbG93TElSZWplY3RBbGw9ZnVuY3Rpb24oZSl7cmV0dXJuIEwuSXNJYWJFbmFibGVkJiYoIWUmJkwuQmFubmVyU2hvd1JlamVjdEFsbEJ1dHRvbiYmTC5CUmVqZWN0Q29uc2VudFR5cGU9PT1MZS5MSV9BQ1RJVkVfSUZfTEVHQUxfQkFTSVN8fGUmJkwuUENlbnRlclNob3dSZWplY3RBbGxCdXR0b24mJkwuQlJlamVjdENvbnNlbnRUeXBlPT09TGUuTElfQUNUSVZFX0lGX0xFR0FMX0JBU0lTKX0sdHIucHJvdG90eXBlLnVwZGF0ZUNvbnNlbnREYXRhPWZ1bmN0aW9uKGUpe19vLnNldExhbmRpbmdQYXRoUGFyYW0oaC5OT1RfTEFORElOR19QQUdFKSxMLklzSWFiRW5hYmxlZCYmIWUmJnRoaXMuaWFiLnNhdmVWZW5kb3JTdGF0dXMoKSxQby53cml0ZUdycFBhcmFtKHkuT1BUQU5PTl9DT05TRU5UKSxQby53cml0ZUhzdFBhcmFtKHkuT1BUQU5PTl9DT05TRU5UKSxfLnNob3dHZW5lcmFsVmVuZG9ycyYmTC5HZW5WZW5PcHRPdXQmJlBvLndyaXRlR2VuVmVuQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQpLF8udnNJc0FjdGl2ZUFuZE9wdE91dCYmUG8ud3JpdGVWU0NvbnNlbnRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCksT24uc3Vic3RpdHV0ZVBsYWluVGV4dFNjcmlwdFRhZ3MoKSxMbi51cGRhdGVHdG1NYWNyb3MoKX0sdHIucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKGUsdCl7dmFyIG87dm9pZCAwPT09dCYmKHQ9dGUuQmFubmVyKSxrbi5oaWRlQ29uc2VudE5vdGljZVYyKCksdGhpcy51cGRhdGVDb25zZW50RGF0YShlKSxMLklzQ29uc2VudExvZ2dpbmdFbmFibGVkPyhvPXQ9PT10ZS5QQz9Gbjp0PT09dGUuQmFubmVyP3huOmIuYXBpU291cmNlLGU9dD09PXRlLlBDP05uOnQ9PT10ZS5CYW5uZXI/Qm46R24sXy5iYW5uZXJDbG9zZVNvdXJjZT09PWVlLkNvbnRpbnVlV2l0aG91dEFjY2VwdGluZ0J1dHRvbiYmKG89VW4pLF8uYmFubmVyQ2xvc2VTb3VyY2U9PT1lZS5CYW5uZXJTYXZlU2V0dGluZ3MmJihvPU1uKSxCcy5jcmVhdGVDb25zZW50VHhuKCExLGUrIiAtICIrbyx0PT09dGUuUEMpKTpPLmRpc3BhdGNoQ29uc2VudEV2ZW50KCksdGhpcy5leGVjdXRlT3B0YW5vbldyYXBwZXIoKSxudWxsPT0odD1udWxsPT0oZT1TKT92b2lkIDA6ZS5tb2R1bGVJbml0aWFsaXplcil8fCF0LkJhbm5lclJlZnJlc2hBZnRlckNhbGxUb0FjdGlvbkVuYWJsZWR8fG8hPT1NbiYmbyE9PUZufHx0aGlzLnJlbG9hZFBhZ2UoKX0sdHIucHJvdG90eXBlLnJlbG9hZFBhZ2U9ZnVuY3Rpb24oKXtjb25zb2xlLndhcm4oIlRyaWdnZXJpbmcgUGFnZSBSZWZyZXNoIiksc2V0VGltZW91dChmdW5jdGlvbigpe2xvY2F0aW9uLnJlbG9hZCgpfSwyMDApfSx0ci5wcm90b3R5cGUuZXhlY3V0ZU9wdGFub25XcmFwcGVyPWZ1bmN0aW9uKCl7dHJ5e2lmKCJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuT3B0YW5vbldyYXBwZXImJiJ1bmRlZmluZWQiIT09d2luZG93Lk9wdGFub25XcmFwcGVyKXt3aW5kb3cuT3B0YW5vbldyYXBwZXIoKTtmb3IodmFyIGU9MCx0PV8uc3JjRXhlY0dycHNUZW1wO2U8dC5sZW5ndGg7ZSsrKXt2YXIgbz10W2VdOy0xPT09Xy5zcmNFeGVjR3Jwcy5pbmRleE9mKG8pJiZfLnNyY0V4ZWNHcnBzLnB1c2gobyl9Xy5zcmNFeGVjR3Jwc1RlbXA9W107Zm9yKHZhciBuPTAscj1fLmh0bWxFeGVjR3Jwc1RlbXA7bjxyLmxlbmd0aDtuKyspe289cltuXTstMT09PV8uaHRtbEV4ZWNHcnBzLmluZGV4T2YobykmJl8uaHRtbEV4ZWNHcnBzLnB1c2gobyl9Xy5odG1sRXhlY0dycHNUZW1wPVtdfX1jYXRjaChlKXtjb25zb2xlLndhcm4oIkVycm9yIGluIE9wdGFub24gd3JhcHBlciwgcGxlYXNlIHJldmlldyB5b3VyIGNvZGUuICIrZSl9fSx0ci5wcm90b3R5cGUudXBkYXRlVmVuZG9yTGVnQnRucz1mdW5jdGlvbihlKXtpZihiLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJJiZiLmxlZ0ludFNldHRpbmdzLlBTaG93TGVnSW50QnRuKWZvcih2YXIgdD12KEEuUF9WZW5kb3JfQ29udGFpbmVyKyIgLm90LWxlZy1idG4tY29udGFpbmVyIikuZWwsbz0wO288dC5sZW5ndGg7bysrKXRoaXMuZ3JvdXBzQ2xhc3MudXBkYXRlTGVnSW50QnRuRWxlbWVudCh0W29dLGUpfSx0ci5wcm90b3R5cGUuc2hvd0ZsdGdDa1N0Z0J1dHRvbj1mdW5jdGlvbigpe3ZhciBlPXYoIiNvdC1zZGstYnRuLWZsb2F0aW5nIiksZT0oZS5yZW1vdmVDbGFzcygib3QtaGlkZSIpLGUucmVtb3ZlQ2xhc3MoIm90LXBjLW9wZW4iKSxMLmNvb2tpZVBlcnNpc3RlbnRMb2dvLmluY2x1ZGVzKCJvdF9ndWFyZF9sb2dvLnN2ZyIpJiZ2KEMuZmx0Z0Zyb250QnRuU3ZnKS5hdHRyKHZ0LCIiKSx2KEMuZmx0Z0JhY2tCdG5TdmcpLmF0dHIodnQsInRydWUiKSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKEMuZmx0Z0J0bkJhY2tCdG4pKSx0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoQy5mbHRnQnRuRnJvbnRCdG4pO3QmJih0LnNldEF0dHJpYnV0ZSh2dCwiZmFsc2UiKSx0LnN0eWxlLmRpc3BsYXk9ImJsb2NrIiksZSYmKGUuc2V0QXR0cmlidXRlKHZ0LCJ0cnVlIiksZS5zdHlsZS5kaXNwbGF5PSJub25lIil9LHRyLnByb3RvdHlwZS5jb25zZW50VHJhbnNhY3Rpb25zPWZ1bmN0aW9uKGUsdCxvKXt2b2lkIDA9PT1vJiYobz0hMSksQnMmJiFlJiZMLklzQ29uc2VudExvZ2dpbmdFbmFibGVkP0JzLmNyZWF0ZUNvbnNlbnRUeG4oITEsKG8/Tm46Qm4pKyIgLSAiKyh0P0huOlJuKSxvKTpPLmRpc3BhdGNoQ29uc2VudEV2ZW50KCl9LHRyLnByb3RvdHlwZS5oaWRlVmVuZG9yc0xpc3Q9ZnVuY3Rpb24oKXtrbi5jaGVja0lmUGNTZGtDb250YWluZXJFeGlzdCgpfHwoTC5QQ1RlbXBsYXRlVXBncmFkZT92KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0NvbnRlbnQpLnJlbW92ZUNsYXNzKCJvdC1oaWRlIik6digiI29uZXRydXN0LXBjLXNkayAub3QtbWFpbi1jb250ZW50Iikuc2hvdygpLHYoIiNvbmV0cnVzdC1wYy1zZGsgI2Nsb3NlLXBjLWJ0bi1oYW5kbGVyLm1haW4iKS5zaG93KCksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfTGlzdCkuYWRkQ2xhc3MoIm90LWhpZGUiKSl9LHRyLnByb3RvdHlwZS5yZXNldENvbnNlbnQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9dGhpcy5nZXRJbml0aWFsQ29uc2VudCgpO18uZ3JvdXBzQ29uc2VudD1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHQpKSxfLmhvc3RzQ29uc2VudD1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KF8uaW5pdGlhbEhvc3RDb25zZW50KSksXy5zaG93R2VuZXJhbFZlbmRvcnMmJihfLmdlblZlbmRvcnNDb25zZW50PUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoXy5pbml0aWFsR2VuVmVuZG9yc0NvbnNlbnQpKSksXy52c0lzQWN0aXZlQW5kT3B0T3V0JiYoXy52c0NvbnNlbnQ9bmV3IE1hcChfLmluaXRpYWxWZW5kb3JzU2VydmljZUNvbnNlbnQpKSxMLklzSWFiRW5hYmxlZCYmKF8ub25lVHJ1c3RJQUJDb25zZW50PUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoXy5pbml0aWFsT25lVHJ1c3RJQUJDb25zZW50KSksXy52ZW5kb3JzPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoXy5pbml0aWFsVmVuZG9ycykpLF8udmVuZG9ycy52ZW5kb3JUZW1wbGF0ZT1fLmluaXRpYWxWZW5kb3JzLnZlbmRvclRlbXBsYXRlKSxMLlVzZUdvb2dsZVZlbmRvcnMmJihfLmFkZHRsVmVuZG9ycz1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KF8uaW5pdGlhbEFkZHRsVmVuZG9ycykpLF8uYWRkdGxWZW5kb3JzTGlzdD1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KF8uaW5pdGlhbEFkZHRsVmVuZG9yc0xpc3QpKSksc2V0VGltZW91dChmdW5jdGlvbigpe2UucmVzZXRDb25zZW50VUkoKX0sNDAwKX0sdHIucHJvdG90eXBlLmdldEluaXRpYWxDb25zZW50PWZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIEwuTm9CYW5uZXImJkwuU2hvd1ByZWZlcmVuY2VDZW50ZXJDbG9zZUJ1dHRvbiYmMDxiLmNvbnNlbnRhYmxlSW1wbGllZENvbnNlbnRHcm91cC5sZW5ndGg/KGU9Xy5pbml0aWFsR3JvdXBzQ29uc2VudC5tYXAoZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zcGxpdCgiOiIpWzBdO3JldHVybiBiLmNvbnNlbnRhYmxlSW1wbGllZENvbnNlbnRHcm91cC5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBlLkN1c3RvbUdyb3VwSWQ9PT10fSk/dCsiOjEiOmV9KSxiLmNvbnNlbnRhYmxlSW1wbGllZENvbnNlbnRHcm91cD1bXSxlKTpfLmluaXRpYWxHcm91cHNDb25zZW50fSx0ci5wcm90b3R5cGUuc2V0TGJsVHh0Rm9yVGdsPWZ1bmN0aW9uKGUsdCl7ZT1lLnF1ZXJ5U2VsZWN0b3IoIi5vdC1sYWJlbC1zdGF0dXMiKTtMLlBDU2hvd0NvbnNlbnRMYWJlbHMmJmUmJihlLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQodD9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KSl9LHRyLnByb3RvdHlwZS5yZXNldENvbnNlbnRVST1mdW5jdGlvbigpe3ZhciBwPXRoaXM7Vi5nZXRBbGxHcm91cEVsZW1lbnRzKCkuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1lLmdldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIpLHQ9RC5nZXRHcm91cEJ5SWQodCksbz1WLmlzR3JvdXBBY3RpdmUodCksbj1rLkdyb3VwVHlwZXM7aWYoYi5wY05hbWU9PT1zdCYmTC5QQ1RlbXBsYXRlVXBncmFkZSYmKGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI290LWRlc2MtaWQtIitlLmdldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIpKSkscC5zZXRMYmxUeHRGb3JUZ2woZSxvKSx0LlR5cGU9PT1BdHx8dC5UeXBlPT09bi5TdGFja3x8MDwobnVsbD09KG49dC5TdWJHcm91cHMpP3ZvaWQgMDpuLmxlbmd0aCkpZm9yKHZhciByPWUucXVlcnlTZWxlY3RvcignaW5wdXRbY2xhc3MqPSJjYXRlZ29yeS1zd2l0Y2gtaGFuZGxlciJdJyksaT0oUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwscixvKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoImxpIitBLlBfU3ViZ3JwX2xpKSkscz0wO3M8aS5sZW5ndGg7cysrKXt2YXIgYT1ELmdldEdyb3VwQnlJZChpW3NdLmdldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIpKSxsPShhLk9wdGFub25Hcm91cElkLFYuaXNHcm91cEFjdGl2ZShhKSksYz1pW3NdLnF1ZXJ5U2VsZWN0b3IoJ2lucHV0W2NsYXNzKj0iY29va2llLXN1Ymdyb3VwLWhhbmRsZXIiXScpLGQ9aVtzXS5xdWVyeVNlbGVjdG9yKCIub3QtbGFiZWwtc3RhdHVzIiksdT1lLnF1ZXJ5U2VsZWN0b3IoIi5vdC1sYWJlbC1zdGF0dXMiKTtMLlBDU2hvd0NvbnNlbnRMYWJlbHMmJmQmJih1LmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobD9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KSksUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsYyxsKSxDLnJlc2V0TGVnSW50QnV0dG9uKGEsaVtzXSl9ZWxzZXtyPWUucXVlcnlTZWxlY3RvcignaW5wdXRbY2xhc3MqPSJjYXRlZ29yeS1zd2l0Y2gtaGFuZGxlciJdJyk7UC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwscixvKSxDLnJlc2V0TGVnSW50QnV0dG9uKHQsZSl9fSksTC5Jc0lhYkVuYWJsZWQmJktuLnRvZ2dsZVZlbmRvckNvbnNlbnQoKSx0aGlzLnJlc2V0R2VuVmVuVUkoKSx0aGlzLnJlc2V0R29vZ2xlVmVuVUkoKSxfLnZzSXNBY3RpdmVBbmRPcHRPdXQmJncucmVzZXRWZW5kb3JVSVN0YXRlKF8udnNDb25zZW50KX0sdHIucHJvdG90eXBlLnJlc2V0R2VuVmVuVUk9ZnVuY3Rpb24oKXt2YXIgZT12KCIjb25ldHJ1c3QtcGMtc2RrIC5vdC1nbnZlbi1jaGtib3gtaGFuZGxlciIpLmVsO2lmKF8uc2hvd0dlbmVyYWxWZW5kb3JzJiZlJiZlLmxlbmd0aCl7Zm9yKHZhciB0PTAsbz1lO3Q8by5sZW5ndGg7dCsrKXt2YXIgbj1vW3RdLHI9bi5nZXRBdHRyaWJ1dGUoImduLXZpZCIpLGk9Qm9vbGVhbihfLmdlblZlbmRvcnNDb25zZW50W3JdKTtQLnNldENoZWNrZWRBdHRyaWJ1dGUoIiIsbixpKSxJby51cGRhdGVHZW5WZW5kb3JTdGF0dXMocixpKX1nLmdlblZlblNlbGVjdEFsbFRnbEV2ZW50KCl9fSx0ci5wcm90b3R5cGUucmVzZXRHb29nbGVWZW5VST1mdW5jdGlvbigpe3ZhciBlPXYoIiNvbmV0cnVzdC1wYy1zZGsgLm90LWFkZHRsdmVuLWNoa2JveC1oYW5kbGVyIikuZWw7aWYoTC5Vc2VHb29nbGVWZW5kb3JzJiZlJiZlLmxlbmd0aClmb3IodmFyIHQ9MCxvPWU7dDxvLmxlbmd0aDt0Kyspe3ZhciBuPW9bdF0scj1uLmdldEF0dHJpYnV0ZSgiYWRkdGwtdmlkIik7Xy5hZGR0bFZlbmRvcnNMaXN0W3JdJiYocj1Cb29sZWFuKF8uYWRkdGxWZW5kb3JzLnZlbmRvclNlbGVjdGVkW3JdKSxQLnNldENoZWNrZWRBdHRyaWJ1dGUoIiIsbixyKSl9fSx0ci5wcm90b3R5cGUucmVzZXRMZWdJbnRCdXR0b249ZnVuY3Rpb24oZSx0KXt2YXIgbztiLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJJiZlLlR5cGU9PT1rLkdyb3VwVHlwZXMuUHVyJiZlLkhhc0xlZ0ludE9wdE91dCYmYi5sZWdJbnRTZXR0aW5ncy5QU2hvd0xlZ0ludEJ0biYmKG89ITAsLTE8Xy52ZW5kb3JzLnNlbGVjdGVkTGVnSW50LmluZGV4T2YoZS5JYWJHcnBJZCsiOmZhbHNlIikmJihvPSExKSxWLnVwZGF0ZUxlZ0ludEJ0bkVsZW1lbnQodCxvKSl9LHRyLnByb3RvdHlwZS5oYW5kbGVUb2dnbGVzT25TaW5ndWxhckNvbnNlbnRVcGRhdGU9ZnVuY3Rpb24oZSx0KXtpZih0aGlzLmNsb3NlT3B0YW5vbkFsZXJ0Qm94KCksZT09PWh0KWZvcih2YXIgcz10aGlzLG89MCxuPXQ7bzxuLmxlbmd0aDtvKyspe3ZhciByPW5bb107KChlLHQpPT57Zm9yKHZhciBvPUQuZ2V0R3JvdXBCeUlkKGUpLG49cy5ncm91cHNDbGFzcy5nZXRBbGxHcm91cEVsZW1lbnRzKCkscj0wO3I8bi5sZW5ndGg7cisrKXt2YXIgaT1ELmdldEdyb3VwQnlJZChuW3JdLmdldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIpKTtpZihpLk9wdGFub25Hcm91cElkPT09by5PcHRhbm9uR3JvdXBJZCYmIWkuUGFyZW50KXt1LnRvZ2dsZVYyQ2F0ZWdvcnkobnVsbCxpLHQsaS5DdXN0b21Hcm91cElkKTticmVha31pPWkuU3ViR3JvdXBzLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuT3B0YW5vbkdyb3VwSWQ9PT1vLk9wdGFub25Hcm91cElkfSk7aSYmdS50b2dnbGVTdWJDYXRlZ29yeShudWxsLGkuQ3VzdG9tR3JvdXBJZCx0LGkuQ3VzdG9tR3JvdXBJZCl9fSkoYz1yLmlkLGQ9ci5pc0VuYWJsZWQpfWVsc2UgaWYoZT09PVN0KWZvcih2YXIgaT0wLGE9dDtpPGEubGVuZ3RoO2krKyl7dmFyIGw9YVtpXSxjPWwuaWQsZD1sLmlzRW5hYmxlZCxsPUQuZ2V0R3JwQnlWZW5kb3JJZChjKTtsJiZ3LnRvZ2dsZVZlbmRvclNlcnZpY2UobC5DdXN0b21Hcm91cElkLGMsZCl9dGhpcy5jbG9zZSghMSx0ZS5BUEkpfSx0ci5wcm90b3R5cGUuY2hlY2tJbXBsaWNpdENvbnNlbnRXaGVuQmFubmVySXNDbG9zZWQ9ZnVuY3Rpb24oZSl7dmFyIHQ7dm9pZCAwPT09ZSYmKGU9ITEpLE8uaXNBbGVydEJveENsb3NlZEFuZFZhbGlkKCl8fCFfby5pc0xhbmRpbmdQYWdlKCkmJiFlfHwoXy5iYW5uZXJDbG9zZVNvdXJjZT09PWVlLkJhbm5lckNsb3NlQnV0dG9uJiZiLnJlc2V0SW1wbGllZENvbnNlbnRhYmxlR3JvdXBzKCksdD1uZXcgTWFwLGIuY29uc2VudGFibGVJbXBsaWVkQ29uc2VudEdyb3VwLmZvckVhY2goZnVuY3Rpb24obyl7dmFyIG47by5TdGF0dXM9PT1mLklOQUNUSVZFX0xBTkRJTkdfUEFHRSYmMDw9KG49UC5maW5kSW5kZXgoXy5ncm91cHNDb25zZW50LGZ1bmN0aW9uKGUpe3JldHVybiBlLnNwbGl0KCI6IilbMF09PT1vLkN1c3RvbUdyb3VwSWR9KSkmJih0LnNldChvLkN1c3RvbUdyb3VwSWQsbyksVShvLlN1Ykdyb3Vwcyxbb10pLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9Yi5ncGNFbmFibGVkJiZlLklzR3BjRW5hYmxlZDtfLmdyb3Vwc0NvbnNlbnRbbl09by5DdXN0b21Hcm91cElkKyI6MSIsdCYmKF8uZ3JvdXBzQ29uc2VudFtuXT1vLkN1c3RvbUdyb3VwSWQrIjowIiksIXQmJmUuSG9zdHMubGVuZ3RoJiZJLmlzT3B0T3V0RW5hYmxlZCgpJiZlLkhvc3RzLmZvckVhY2goZnVuY3Rpb24oZSl7cmV0dXJuIERvLnVwZGF0ZUhvc3RTdGF0dXMoZSwhMCl9KSwhdCYmXy5nZW5WZW5PcHRPdXRFbmFibGVkJiZlLkdlbmVyYWxWZW5kb3JzSWRzJiZlLkdlbmVyYWxWZW5kb3JzSWRzLmxlbmd0aCYmZS5HZW5lcmFsVmVuZG9yc0lkcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3JldHVybiBJby51cGRhdGVHZW5WZW5kb3JTdGF0dXMoZSwhMCl9KX0pKX0pLHRoaXMuc2V0SW1wbGljaXRDb25zZW50VUkodCkpfSx0ci5wcm90b3R5cGUuc2V0SW1wbGljaXRDb25zZW50VUk9ZnVuY3Rpb24oZSl7dmFyIG89dGhpcztlLnNpemU8PTB8fGUuZm9yRWFjaChmdW5jdGlvbihlLHQpe3Q9by5nZXRHcm91cEVsZW1lbnQodCk7dCYmKG8uZ3JvdXBzQ2xhc3MudG9nZ2xlR3JwRWxlbWVudHModCxlLCEwKSxvLmdyb3Vwc0NsYXNzLnRvb2dsZVN1Ykdyb3VwRWxlbWVudCh0LCEwLCExLCEwKSxvLmdyb3Vwc0NsYXNzLnRvb2dsZVN1Ykdyb3VwRWxlbWVudCh0LCEwLCEwLCEwKSl9KX0sdHIucHJvdG90eXBlLmdldEdyb3VwRWxlbWVudD1mdW5jdGlvbihlKXtyZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiZGl2I29uZXRydXN0LXBjLXNkayAiK0EuUF9DYXRlZ29yeV9HcnArIiAiK0EuUF9DYXRlZ29yeV9JdGVtKydbZGF0YS1vcHRhbm9uZ3JvdXBpZD0iJytlKyciXTpub3QoLm90LXZuZC1pdGVtKScpfTt2YXIgQyxlcj10cjtmdW5jdGlvbiB0cigpe3ZhciBuPXRoaXM7dGhpcy5pYWI9Zyx0aGlzLmdyb3Vwc0NsYXNzPVYsdGhpcy5mbHRnQmFja0J0blN2Zz0iLm90LWZsb2F0aW5nLWJ1dHRvbl9fYmFjayBzdmciLHRoaXMuZmx0Z0Zyb250QnRuU3ZnPSIub3QtZmxvYXRpbmctYnV0dG9uX19mcm9udCBzdmciLHRoaXMuZmx0Z0J0bkJhY2tCdG49Ii5vdC1mbG9hdGluZy1idXR0b25fX2JhY2sgYnV0dG9uIix0aGlzLmZsdGdCdG5Gcm9udEJ0bj0iLm90LWZsb2F0aW5nLWJ1dHRvbl9fZnJvbnQgYnV0dG9uIix0aGlzLmNsb3NlT3B0YW5vbkFsZXJ0Qm94PWZ1bmN0aW9uKCl7dmFyIGU7SS5oaWRlQmFubmVyKCksdihkb2N1bWVudCkub2ZmKCJrZXlkb3duIix1LmNsb3NlUENXaGVuRXNjUHJlc3NlZCksTC5OdGZ5Q29uZmlnLlNob3dOdGZ5JiZ3bi5oaWRlU3luY050ZnkoKSxtby5zZXRBbGVydEJveENsb3NlZCghMCksTC5QQ1RlbXBsYXRlVXBncmFkZSYmTC5QQ2VudGVyVXNlcklkVGl0bGVUZXh0JiZMLklzQ29uc2VudExvZ2dpbmdFbmFibGVkJiZuLnVwZGF0ZURhdGFTdWJqZWN0VGltZXN0YW1wKCksTy5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKSYmKGU9digiLm9uZXRydXN0LXBjLWRhcmstZmlsdGVyIikuZWxbMF0pJiYibm9uZSIhPT1nZXRDb21wdXRlZFN0eWxlKGUpLmdldFByb3BlcnR5VmFsdWUoImRpc3BsYXkiKSYmdigiLm9uZXRydXN0LXBjLWRhcmstZmlsdGVyIikuZmFkZU91dCg0MDApLHhzLmNzQnRuR3JvdXAmJm4uc2hvd0ZsdGdDa1N0Z0J1dHRvbigpfSx0aGlzLmJvZHlDbGlja0V2ZW50PWZ1bmN0aW9uKGUpe3ZhciB0PWUudGFyZ2V0O3QuY2xvc2VzdCgiI29uZXRydXN0LWJhbm5lci1zZGsiKXx8dC5jbG9zZXN0KCIjb25ldHJ1c3QtcGMtc2RrIil8fHQuY2xvc2VzdCgiLm9uZXRydXN0LXBjLWRhcmstZmlsdGVyIil8fHQuY2xvc2VzdCgiLm90LXNkay1zaG93LXNldHRpbmdzIil8fHQuY2xvc2VzdCgiLm9wdGFub24tc2hvdy1zZXR0aW5ncyIpfHx0LmNsb3Nlc3QoIi5vcHRhbm9uLXRvZ2dsZS1kaXNwbGF5Iil8fHQuY2xvc2VzdCgiLm90LWNvbmZpcm0tZGlhbG9nLW92ZXJsYXkiKXx8Qy5vbkNsaWNrQ2xvc2VCYW5uZXIoZSl9LHRoaXMuYmFubmVyQ2xvc2VCdXR0b25IYW5kbGVyPWZ1bmN0aW9uKG8pe3JldHVybiB2b2lkIDA9PT1vJiYobz0hMSksRihuLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgdDtyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6cmV0dXJuKEMuY2hlY2tJbXBsaWNpdENvbnNlbnRXaGVuQmFubmVySXNDbG9zZWQobyksQy5jbG9zZU9wdGFub25BbGVydEJveCgpLFMubW9kdWxlSW5pdGlhbGl6ZXIuTW9iaWxlU0RLKT8od2luZG93Lk9uZVRydXN0LkNsb3NlKCksWzMsNV0pOlszLDFdO2Nhc2UgMTpyZXR1cm4gZS50cnlzLnB1c2goWzEsMywsNF0pLFs0LFpuLmdldEluc3RhbmNlKCkuY2hlY2tJZkhlYWx0aFNpZ25hdHVyZU5lZWRlZCgpXTtjYXNlIDI6cmV0dXJuIGUuc2VudCgpLFszLDRdO2Nhc2UgMzpyZXR1cm4gdD1lLnNlbnQoKSxjb25zb2xlLmVycm9yKHQpLFszLDRdO2Nhc2UgNDp0PV8uYmFubmVyQ2xvc2VTb3VyY2U9PT1lZS5Db25maXJtQ2hvaWNlQnV0dG9uP3RlLlBDOnRlLkJhbm5lcixDLmNsb3NlKG8sdCksZS5sYWJlbD01O2Nhc2UgNTpyZXR1cm5bMiwhMV19fSl9KX0sdGhpcy5hbGxvd0FsbEV2ZW50SGFuZGxlcj1mdW5jdGlvbihyKXtyZXR1cm4gdm9pZCAwPT09ciYmKHI9ITEpLEYobix2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIG8sdCxuPXRoaXM7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtyZXR1cm4gdihkb2N1bWVudCkub2ZmKCJrZXlkb3duIix1LnNoaWZ0QmFubmVyRm9jdXMpLG89cj8iUHJlZmVyZW5jZXMgQWxsb3cgQWxsIjoiQmFubmVyIEFjY2VwdCBDb29raWVzIix0PWZ1bmN0aW9uKCl7cmV0dXJuIEYobix2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHQ7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtzd2l0Y2goZS5sYWJlbCl7Y2FzZSAwOm1vLnRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudChObyxvKSxyJiZiLnJlcXVpcmVTaWduYXR1cmVFbmFibGVkJiYoa24uaGlkZUNvbnNlbnROb3RpY2VWMigpLHRoaXMuY2xvc2VPcHRhbm9uQWxlcnRCb3goKSksZS5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gZS50cnlzLnB1c2goWzEsMywsNF0pLFs0LFpuLmdldEluc3RhbmNlKCkuY2hlY2tJZkhlYWx0aFNpZ25hdHVyZU5lZWRlZCghMCldO2Nhc2UgMjpyZXR1cm4gZS5zZW50KCksWzMsNF07Y2FzZSAzOnJldHVybiB0PWUuc2VudCgpLGNvbnNvbGUuZXJyb3IodCksWzMsNF07Y2FzZSA0OnJldHVybiB0aGlzLmFsbG93QWxsRXZlbnQoITEsciksdGhpcy5oaWRlVmVuZG9yc0xpc3QoKSxbMl19fSl9KX0sSS5zaG91bGRTaG93RG91YmxlT3B0SW5TaWduYWwoITApP0kuY3JlYXRlRG91YmxlT3B0SW5Db25maXJtRGlhbG9nKHIsdCk6dCgpLFsyXX0pfSl9LHRoaXMuYWxsb3dBbGxFdmVudD1mdW5jdGlvbihlLHQpe3ZvaWQgMD09PWUmJihlPSExKSx2b2lkIDA9PT10JiYodD0hMSksbi5jbG9zZU9wdGFub25BbGVydEJveCgpLEMuYWxsb3dBbGwoZSx0KX0sdGhpcy5yZWplY3RBbGxFdmVudEhhbmRsZXI9ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9ITEpLHYoZG9jdW1lbnQpLm9mZigia2V5ZG93biIsdS5zaGlmdEJhbm5lckZvY3VzKSxtby50cmlnZ2VyR29vZ2xlQW5hbHl0aWNzRXZlbnQoTm8sZT8iUHJlZmVyZW5jZXMgUmVqZWN0IEFsbCI6IkJhbm5lciBSZWplY3QgQWxsIiksWm4uZ2V0SW5zdGFuY2UoKS5yZXNldEhlYWx0aFNpZ25hdHVyZURhdGEoITApLFMubW9kdWxlSW5pdGlhbGl6ZXIuTW9iaWxlU0RLP3dpbmRvdy5PbmVUcnVzdC5SZWplY3RBbGwoKToobi5yZWplY3RBbGxFdmVudCghMSxlKSxuLmhpZGVWZW5kb3JzTGlzdCgpKX0sdGhpcy5yZWplY3RBbGxFdmVudD1mdW5jdGlvbihlLHQpe3ZvaWQgMD09PWUmJihlPSExKSx2b2lkIDA9PT10JiYodD0hMSksbi5jbG9zZU9wdGFub25BbGVydEJveCgpLCFPLmlzSUFCQ3Jvc3NDb25zZW50RW5hYmxlZCgpfHxiLnRoaXJkUGFydHlpRnJhbWVMb2FkZWQ/bi5yZWplY3RBbGwoZSx0KTpiLnRoaXJkUGFydHlpRnJhbWVQcm9taXNlLnRoZW4oZnVuY3Rpb24oKXtuLnJlamVjdEFsbChlLHQpfSl9fXJyLnByb3RvdHlwZS5zZXRGaWx0ZXJMaXN0PWZ1bmN0aW9uKG8pe3ZhciBlLG49dGhpcyxyPSh2KCIjb25ldHJ1c3QtcGMtc2RrICNvdC1maWx0ZXItbGlzdC1oZWFkZXIiKS5odG1sKEwuUENDb29raWVMaXN0RmlsdGVyc1RleHQpLG51bGw9PShlPW51bGw9PShlPW51bGw9PShlPXYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfRmx0cl9Nb2RhbCsiICIrQS5QX0ZsdHJfT3B0aW9uKSk/dm9pZCAwOmUuZWwpP3ZvaWQgMDplWzBdKT92b2lkIDA6ZS5jbG9uZU5vZGUoITApKTt2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0ZsdHJfTW9kYWwrIiAiK0EuUF9GbHRyX09wdGlvbnMpLmh0bWwoIiIpLChTLmlzVjJUZW1wbGF0ZXx8TC5QQ0xheW91dC5Qb3B1cCkmJih2KHRoaXMuQ0FOQ0VMX0ZJTFRFUikuaHRtbChMLlBDZW50ZXJDYW5jZWxGaWx0ZXJzVGV4dHx8IkNhbmNlbCIpLHYodGhpcy5DQU5DRUxfRklMVEVSKS5hdHRyKG10LEwuUENlbnRlckNhbmNlbEZpbHRlckFyaWFMYWJlbCkpLCFTLmlzVjJUZW1wbGF0ZSYmTC5QQ0xheW91dC5Qb3B1cHx8KHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ2xyX0ZsdHJfVHh0KS5odG1sKEwuUENlbnRlckNsZWFyRmlsdGVyc1RleHQpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ2xyX0ZsdHJfVHh0KS5hdHRyKG10LEwuUENlbnRlckNsZWFyRmlsdGVyc0FyaWFMYWJlbCksZT1JLmdldFZlbmRvclBhZ2VIZWFkZXJUZXh0KCksdigiI2ZpbHRlci1idG4taGFuZGxlciIpLmVsWzBdLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsTC5QQ2VudGVyRmlsdGVyVGV4dCsiICIrZSkpLHYoIiNvbmV0cnVzdC1wYy1zZGsgI2ZpbHRlci1hcHBseS1oYW5kbGVyIikuaHRtbChMLlBDZW50ZXJBcHBseUZpbHRlcnNUZXh0KSx2KCIjb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItYXBwbHktaGFuZGxlciIpLmF0dHIobXQsTC5QQ2VudGVyQXBwbHlGaWx0ZXJzQXJpYUxhYmVsKSxvP2IuY29uc2VudGFibGVHcnBzLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9Xy5jb29raWVMaXN0VHlwZT09PXllLkdlblZlbnx8Xy5jb29raWVMaXN0VHlwZT09PXllLkhvc3RBbmRHZW5WZW4/ZS5Ib3N0cy5sZW5ndGh8fGUuRmlyc3RQYXJ0eUNvb2tpZXMubGVuZ3RofHxlLkdlbmVyYWxWZW5kb3JzSWRzJiZlLkdlbmVyYWxWZW5kb3JzSWRzLmxlbmd0aDplLkhvc3RzLmxlbmd0aHx8ZS5GaXJzdFBhcnR5Q29va2llcy5sZW5ndGg7dCYmbi5maWx0ZXJHcm91cE9wdGlvblNldHRlcihyLGUsbyl9KTpiLmlhYkdycHMuZm9yRWFjaChmdW5jdGlvbihlKXtuLmZpbHRlckdyb3VwT3B0aW9uU2V0dGVyKHIsZSxvKX0pfSxyci5wcm90b3R5cGUuc2V0RmlsdGVyTGlzdEJ5R3JvdXA9ZnVuY3Rpb24oZSx0KXt2YXIgbyxuLHI9dGhpczshZXx8ZS5sZW5ndGg8PTA/digiI29uZXRydXN0LXBjLXNkayAiK0EuUF9GbHRyX01vZGFsKyIgIitBLlBfRmx0cl9PcHRpb25zKS5odG1sKCIiKToobz1udWxsPT0obj1udWxsPT0obj1udWxsPT0obj12KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0ZsdHJfTW9kYWwrIiAiK0EuUF9GbHRyX09wdGlvbikpP3ZvaWQgMDpuLmVsKT92b2lkIDA6blswXSk/dm9pZCAwOm4uY2xvbmVOb2RlKCEwKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0ZsdHJfTW9kYWwrIiAiK0EuUF9GbHRyX09wdGlvbnMpLmh0bWwoIiIpLChTLmlzVjJUZW1wbGF0ZXx8TC5QQ0xheW91dC5Qb3B1cCkmJih2KHRoaXMuQ0FOQ0VMX0ZJTFRFUikuaHRtbChMLlBDZW50ZXJDYW5jZWxGaWx0ZXJzVGV4dHx8IkNhbmNlbCIpLHYodGhpcy5DQU5DRUxfRklMVEVSKS5hdHRyKG10LEwuUENlbnRlckNhbmNlbEZpbHRlckFyaWFMYWJlbCkpLCFTLmlzVjJUZW1wbGF0ZSYmTC5QQ0xheW91dC5Qb3B1cHx8KHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ2xyX0ZsdHJfVHh0KS5odG1sKEwuUENlbnRlckNsZWFyRmlsdGVyc1RleHQpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ2xyX0ZsdHJfVHh0KS5hdHRyKG10LEwuUENlbnRlckNsZWFyRmlsdGVyc0FyaWFMYWJlbCksbj1JLmdldFZlbmRvclBhZ2VIZWFkZXJUZXh0KCksdigiI2ZpbHRlci1idG4taGFuZGxlciIpLmVsWzBdLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsTC5QQ2VudGVyRmlsdGVyVGV4dCsiICIrbikpLHYoIiNvbmV0cnVzdC1wYy1zZGsgI2ZpbHRlci1hcHBseS1oYW5kbGVyIikuaHRtbChMLlBDZW50ZXJBcHBseUZpbHRlcnNUZXh0KSxlLmZvckVhY2goZnVuY3Rpb24oZSl7ci5maWx0ZXJHcm91cE9wdGlvblNldHRlcihvLGUsdCl9KSl9LHJyLnByb3RvdHlwZS5maWx0ZXJHcm91cE9wdGlvblNldHRlcj1mdW5jdGlvbihlLHQsbyl7dmFyIG49dC5DdXN0b21Hcm91cElkLHI9bisiLWZpbHRlciI7ZSYmKGU9ZS5jbG9uZU5vZGUoITApLHYoQS5QX0ZsdHJfTW9kYWwrIiAiK0EuUF9GbHRyX09wdGlvbnMpLmFwcGVuZChlKSx2KGUucXVlcnlTZWxlY3RvcigiaW5wdXQiKSkuYXR0cigiaWQiLHIpLHYoZS5xdWVyeVNlbGVjdG9yKCJsYWJlbCIpKS5hdHRyKCJmb3IiLHIpLChTLmlzVjJUZW1wbGF0ZT92KGUucXVlcnlTZWxlY3RvcihBLlBfTGFiZWxfVHh0KSk6dihlLnF1ZXJ5U2VsZWN0b3IoImxhYmVsIHNwYW4iKSkpLmh0bWwodC5Hcm91cE5hbWUpLHYoZS5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpKS5hdHRyKG8/ImRhdGEtb3B0YW5vbmdyb3VwaWQiOiJkYXRhLXB1cnBvc2VpZCIsbikpfTt2YXIgb3IsbnI9cnI7ZnVuY3Rpb24gcnIoKXt0aGlzLmJvZHlTY3JvbGxQcm9wPSIiLHRoaXMuaHRtbFNjcm9sbFByb3A9IiIsdGhpcy5PTkVUUlVTVF9QQ19TREs9IiNvbmV0cnVzdC1wYy1zZGsiLHRoaXMuT05FVFJVU1RfUENfREFSS19GSUxURVI9Ii5vbmV0cnVzdC1wYy1kYXJrLWZpbHRlciIsdGhpcy5DQU5DRUxfRklMVEVSPSIjb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItY2FuY2VsLWhhbmRsZXIifWFyLnByb3RvdHlwZS5zaG93UGFyYWdyYXBoPWZ1bmN0aW9uKGUpe3ZhciB0PVIoe30sZSksbz10Lmxpc3RUaXRsZSxuPXQuaHRtbEZyYWdtZW50LHQ9dC5wYXJhZ3JwaENvbnRhaW5lclNlbGVjdG9yO2lyLm9wdGlvbnM9ZSxpci5oaWRlT3RoZXJIdG1sRWxlbWVudHMoZSksaXIuc2V0UGFyYWdyYXBoVGl0bGUobyksaXIuYWRkSXRlbUxpc3RUb1Jvb3RFbGVtZW50KG4sdCl9LGFyLnByb3RvdHlwZS5oaWRlUGFyYWdyYXBoVUk9ZnVuY3Rpb24oKXt2YXIgZT1SKHt9LGlyLm9wdGlvbnMpLHQ9ZS5zaG93Rm9vdGVyO2Uuc2hvd1NlYXJjaEJveHx8KG51bGwhPShlPWlyLmNoZWNrYm94ZXNDb250YWluZXJFbGUpJiZlLmNsYXNzTGlzdC5yZW1vdmUoIm90LWhpZGUiKSxudWxsIT0oZT1pci5zZWFyY2hJbnB1dENvbnRhaW5lckVsZSkmJmUuY2xhc3NMaXN0LnJlbW92ZSgib3QtaGlkZSIpLG51bGwhPShlPWlyLmxpc3RIb3RzVmVuZG9yc0NvbnRhaW5lckVsZSkmJmUuY2xhc3NMaXN0LnJlbW92ZSgib3QtaGlkZSIpKSx0fHwobnVsbCE9KGU9aXIuZm9vdGVyQnV0dG9uQ29udGFpbmVyRWxlKSYmZS5jbGFzc0xpc3QucmVtb3ZlKCJvdC1oaWRlIiksdS5zZXRDZW50ZXJMYXlvdXRGb290ZXJIZWlnaHQoKSksaXIucm9vdEVsZS5yZW1vdmVDaGlsZChpci5wYXJhZ3JhcGhDb250YWluZXJFbGUpfSxhci5wcm90b3R5cGUuYWRkSXRlbUxpc3RUb1Jvb3RFbGVtZW50PWZ1bmN0aW9uKGUsdCl7dmFyIG89ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfTGlzdCk7aXIucm9vdEVsZT1vLnF1ZXJ5U2VsZWN0b3IodGhpcy5NQUlOX0NPTlRfRUxFKSxpci5yb290RWxlLmFwcGVuZENoaWxkKGUpLGlyLnBhcmFncmFwaENvbnRhaW5lckVsZT1pci5yb290RWxlLnF1ZXJ5U2VsZWN0b3IodCl9LGFyLnByb3RvdHlwZS5zZXRQYXJhZ3JhcGhUaXRsZT1mdW5jdGlvbihlKXtkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9UaXRsZSsnLCAjb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtdGl0bGUgcFthcmlhLWxldmVsPSIzIl0nKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KGUpfSxhci5wcm90b3R5cGUuaGlkZU90aGVySHRtbEVsZW1lbnRzPWZ1bmN0aW9uKGUpe3ZhciBlPVIoe30sZSksdD1lLnNob3dGb290ZXIsZT1lLnNob3dTZWFyY2hCb3gsbz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9MaXN0KSxvPSghZSYmbyYmKGlyLmNoZWNrYm94ZXNDb250YWluZXJFbGU9by5xdWVyeVNlbGVjdG9yKHRoaXMuU0VMX0JMS19FTEUpLGlyLnNlYXJjaElucHV0Q29udGFpbmVyRWxlPW8ucXVlcnlTZWxlY3Rvcih0aGlzLkxTVF9TVUJIRFJfRUxFKSxpci5saXN0SG90c1ZlbmRvcnNDb250YWluZXJFbGU9by5xdWVyeVNlbGVjdG9yKHRoaXMuU0RLX1JPV19FTEUpLG51bGwhPShlPWlyLmNoZWNrYm94ZXNDb250YWluZXJFbGUpJiZlLmNsYXNzTGlzdC5hZGQoIm90LWhpZGUiKSxudWxsIT0obz1pci5zZWFyY2hJbnB1dENvbnRhaW5lckVsZSkmJm8uY2xhc3NMaXN0LmFkZCgib3QtaGlkZSIpLG51bGwhPShlPWlyLmxpc3RIb3RzVmVuZG9yc0NvbnRhaW5lckVsZSkpJiZlLmNsYXNzTGlzdC5hZGQoIm90LWhpZGUiKSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1mb290ZXIgLm90LWJ0bi1jb250YWluZXIiKSk7IXQmJm8mJihpci5mb290ZXJCdXR0b25Db250YWluZXJFbGU9byxudWxsIT0oZT1pci5mb290ZXJCdXR0b25Db250YWluZXJFbGUpJiZlLmNsYXNzTGlzdC5hZGQoIm90LWhpZGUiKSx1LnNldENlbnRlckxheW91dEZvb3RlckhlaWdodCgpKX07dmFyIGlyLHNyPWFyO2Z1bmN0aW9uIGFyKCl7dGhpcy5TREtfUk9XX0VMRT0iLm90LXNkay1yb3ciLHRoaXMuU0VMX0JMS19FTEU9IiNvdC1zZWwtYmxrIix0aGlzLk1BSU5fQ09OVF9FTEU9IiNvdC1sc3QtY250Iix0aGlzLkxTVF9TVUJIRFJfRUxFPSIub3QtbHN0LXN1YmhkciJ9ZHIucHJvdG90eXBlLnNob3dJbGx1c3RyYXRpb25zPWZ1bmN0aW9uKGUsdCl7ZT1sci5pbnNlcnRQYXJhZ3JhcGhDb250YWluZXIoZSx0KSx0PXtzaG93Rm9vdGVyOiExLHNob3dTZWFyY2hCb3g6ITEsbGlzdFRpdGxlOkwuUENJbGx1c1RleHQsaHRtbEZyYWdtZW50OmUscGFyYWdycGhDb250YWluZXJTZWxlY3RvcjoiLiIrdGhpcy5QQVJBR1JBUEhfQ09OVEFJTkVSX0VMRX07aXIuc2hvd1BhcmFncmFwaCh0KX0sZHIucHJvdG90eXBlLmhpZGVVST1mdW5jdGlvbigpe2lyLmhpZGVQYXJhZ3JhcGhVSSgpfSxkci5wcm90b3R5cGUuYWRkSWxsdXN0cmF0aW9uc0xpbms9ZnVuY3Rpb24oZSx0LG8sbil7dm9pZCAwPT09biYmKG49ITEpO3ZhciByPXQuSWFiSWxsdXN0cmF0aW9ucyYmMDx0LklhYklsbHVzdHJhdGlvbnMubGVuZ3RoO28mJnImJkwuUENHcnBEZXNjVHlwZT09PXJlLlVzZXJGcmllbmRseSYmKG89TC5QQ1ZlbmRvckZ1bGxMZWdhbFRleHQrIiZuYnNwOyIsKHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIikpLmNsYXNzTGlzdC5hZGQoIm90LWxpbmstYnRuIiksci5jbGFzc0xpc3QuYWRkKCJvdC1wZ3BoLWxpbmsiKSxyLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsdC5Hcm91cE5hbWUrIiwgIitMLlBDVmVuZG9yRnVsbExlZ2FsVGV4dCksci5zZXRBdHRyaWJ1dGUoImRhdGEtcGFyZW50LWlkIix0LkN1c3RvbUdyb3VwSWQpLG4/KHIuY2xhc3NMaXN0LmFkZCgib3QtcGdwaC1saW5rLXN1Ymdyb3VwIiksZS5hcHBlbmRDaGlsZChyKSk6KG89IiZuYnNwO3wmbmJzcCIrbyxlLmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJlbmQiLHIpKSxyLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobykpfSxkci5wcm90b3R5cGUuaW5zZXJ0UGFyYWdyYXBoQ29udGFpbmVyPWZ1bmN0aW9uKGUsdCl7dmFyIG89ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksZT0obi5jbGFzc0xpc3QuYWRkKHRoaXMuUEFSQUdSQVBIX0NPTlRBSU5FUl9FTEUpLGxyLmluc2VydFB1cnBvc2VUaXRsZShlKSkscj0obi5hcHBlbmRDaGlsZChlKSxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSk7cmV0dXJuIHIuY2xhc3NMaXN0LmFkZCgib3QtcGFyYWdyYXBoLWxzdCIpLHQuZm9yRWFjaChmdW5jdGlvbihlLHQpe2U9bHIuaW5zZXJ0RGVzY3JpcHRpb25FbGVtZW50KGUsdCk7ci5hcHBlbmRDaGlsZChlKX0pLG4uYXBwZW5kQ2hpbGQociksby5hcHBlbmRDaGlsZChuKSxvfSxkci5wcm90b3R5cGUuaW5zZXJ0UHVycG9zZVRpdGxlPWZ1bmN0aW9uKGUpe251bGwhPShvPVMubW9kdWxlSW5pdGlhbGl6ZXIpJiZvLlNFT09wdGltaXphdGlvbj8oKHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpKS5zZXRBdHRyaWJ1dGUoInJvbGUiLCJoZWFkaW5nIiksdC5zZXRBdHRyaWJ1dGUoImFyaWEtbGV2ZWwiLCI0IikpOnQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaDQiKSx0LmNsYXNzTGlzdC5hZGQoIm90LXBncGgtdGl0bGUiKTt2YXIgdCxvPWRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGUpO3JldHVybiB0LmFwcGVuZENoaWxkKG8pLHR9LGRyLnByb3RvdHlwZS5pbnNlcnREZXNjcmlwdGlvbkVsZW1lbnQ9ZnVuY3Rpb24oZSx0KXt2YXIgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7cmV0dXJuIG8uc2V0QXR0cmlidXRlKCJpZCIsIm90LXBncGgtZGVzYy1pZC0iK3QpLG8uY2xhc3NMaXN0LmFkZCgib3QtcGdwaC1kZXNjIiksby5pbm5lclRleHQ9ZSxvfTt2YXIgbHIsY3I9ZHI7ZnVuY3Rpb24gZHIoKXt0aGlzLlBBUkFHUkFQSF9DT05UQUlORVJfRUxFPSJvdC1wZ3BoLWNvbnRyIn1yLnByb3RvdHlwZS5pbnNlcnRQY0h0bWw9ZnVuY3Rpb24oKXtCLmpzb25BZGRBYm91dENvb2tpZXMoTCk7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLGU9KHhzLnByZWZlcmVuY2VDZW50ZXJHcm91cCYmKG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdihvKS5odG1sKHhzLnByZWZlcmVuY2VDZW50ZXJHcm91cC5odG1sKSxvPW8ucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayIpLEIuYWRkQ2xhc3Nlc1BlckNvbmZpZyhvKSx2KHQpLmFwcGVuZChvKSxCLm1hbmFnZUNsb3NlQnV0dG9ucyhvLG89ZnVuY3Rpb24oZSl7cmV0dXJuIHQucXVlcnlTZWxlY3RvckFsbChlKX0sbj1mdW5jdGlvbihlKXtyZXR1cm4gdC5xdWVyeVNlbGVjdG9yKGUpfSksTC5MYW5ndWFnZSYmTC5MYW5ndWFnZS5DdWx0dXJlJiZ2KG4oIiNvbmV0cnVzdC1wYy1zZGsiKSkuYXR0cigibGFuZyIsTC5MYW5ndWFnZS5DdWx0dXJlKSxCLmFkZExvZ29zKG4sbyksdihuKEEuUF9UaXRsZSkpLmh0bWwoTC5NYWluVGV4dCksTC5QQ0Nsb3NlQnV0dG9uVHlwZT09PVBlLkxpbmsmJkwuUENUZW1wbGF0ZVVwZ3JhZGUmJmIucGNOYW1lPT09c3QmJnYobihBLlBfVGl0bGUpKS5hZGRDbGFzcygib3QtcGMtdGl0bGUtc2hyaW5rIiksTC5QQ1RlbXBsYXRlVXBncmFkZSYmdihuKGZuKycgPiBkaXZbcm9sZT0iZGlhbG9nIl0nKSkuY3NzKCJoZWlnaHQ6IDEwMCU7IiksdihuKGZuKycgPiBkaXZbcm9sZT0iZGlhbG9nIl0nKSkuYXR0cih0aGlzLl9hcmlhTGFiZWwsTC5NYWluVGV4dCksTC5QQ1JlZ2lvbkFyaWFMYWJlbCYmKHYobigiI29uZXRydXN0LXBjLXNkayIpKS5hdHRyKHRoaXMuX2FyaWFMYWJlbCxMLlBDUmVnaW9uQXJpYUxhYmVsKSx2KG4oIiNvbmV0cnVzdC1wYy1zZGsiKSkuYXR0cigicm9sZSIsInJlZ2lvbiIpKSxiLnBjTmFtZT09PXN0JiYobnVsbCE9KGU9dihuKEEuUF9UaXRsZSkpKSYmZS5hdHRyKCJ0aXRsZSIsTC5NYWluVGV4dCksdihuKEEuUF9Qcml2YWN5X1R4dCkpLmh0bWwoTC5BYm91dENvb2tpZXNUZXh0KSx2KG4oQS5QX1ByaXZhY3lfSGRyKSkuaHRtbChMLkFib3V0Q29va2llc1RleHQpLG51bGwhPShlPXYobigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9Db250ZW50KyIgLm90LXRhYi1saXN0IikpKSYmZS5hdHRyKHRoaXMuX2FyaWFMYWJlbCxMLlBDZW50ZXJDb29raWVDYXRlZ29yaWVzQXJpYUxhYmVsKSxCLnVwZGF0ZVRpdGxlRm9yTW9iaWxlVmlldyhuKSksZT0nPHNwYW4gY2xhc3M9Im90LXRjZjItdmVuZG9yLWNvdW50IG90LXRleHQtYm9sZCB0Y2YyLXZjb3VudCI+JytiLnRjZjJBY3RpdmVWZW5kb3JzLmFsbC50b1N0cmluZygpKyI8L3NwYW4+IixlPUkucmVwbGFjZVRleHRGcm9tU3RyaW5nKCJbVkVORE9SX05VTUJFUl0iLEwuTWFpbkluZm9UZXh0LGUpLHYobihBLlBfUG9saWN5X1R4dCkpLmh0bWwoZSksQi5jb25maWd1cmVMaW5rRmllbGRzKG4sbyksQi5jb25maWd1cmVTdWJqZWN0RGF0YUZpZWxkcyhuKSxCLmNvbmZpZ3VyZUJ1dHRvbnMobixvKSxCLnNldE1hbmFnZVByZWZlcmVuY2VUZXh0KG4pLEIuaW5pdGlhbGl6ZVByZWZlcmVuY2VDZW50ZXJHcm91cHMobix0KSxCLnJlbW92ZUxpc3RzV2hlbkFwcHJvcHJpYXRlKG4pLEwuUENUZW1wbGF0ZVVwZ3JhZGUpJiZCLnNldE9wdE91dFNpZ25hbE5vdGlmaWNhdGlvbihuKSxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKSksbz0oZS5zZXRBdHRyaWJ1dGUoImNsYXNzIiwib3QtdGV4dC1yZXNpemUiKSxlLnNldEF0dHJpYnV0ZSgic2FuZGJveCIsImFsbG93LXNhbWUtb3JpZ2luIiksZS5zZXRBdHRyaWJ1dGUoInRpdGxlIiwib25ldHJ1c3QtdGV4dC1yZXNpemUiKSxkKGUsInBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAtNTAwMDBweDsgd2lkdGg6IDEwMGVtOyIpLGUuc2V0QXR0cmlidXRlKHRoaXMuX2FyaWFIaWRkZW4sInRydWUiKSx2KHQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayIpKS5hcHBlbmQoZSksSS5yZXBsYWNlSGVhZGluZ3ModCksZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm9uZXRydXN0LWNvbnNlbnQtc2RrIikpLG49KHYobykuYXBwZW5kKHQpLGIuaWdub3JlSW5qZWN0aW5nSHRtbENzc3x8dihkb2N1bWVudC5ib2R5KS5hcHBlbmQobyksKEwuc2hvd0Nvb2tpZUxpc3R8fF8uc2hvd0dlbmVyYWxWZW5kb3JzKSYmT24uSW5pdGlhbGl6ZUhvc3RMaXN0KCksQS5QX1ZlbmRvcl9MaXN0KyIgIitBLlBfSG9zdF9DbnRyKyIgbGkiKSxlPXYobikuZWxbMF07ZSYmUC5yZW1vdmVDaGlsZChlKX0sci5wcm90b3R5cGUudXBkYXRlVGl0bGVGb3JNb2JpbGVWaWV3PWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIHQoKXt2YXIgZT13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShvLmVsKS5kaXNwbGF5O28uYXR0cihCLl9hcmlhSGlkZGVuLCJub25lIiE9PWU/ImZhbHNlIjoidHJ1ZSIpLG4uYXR0cihCLl9hcmlhSGlkZGVuLCJub25lIiE9PWU/InRydWUiOiJmYWxzZSIpfXZhciBvPXYoZShBLlBfVGl0bGVfTW9iaWxlKSksbj12KGUoQS5QX1RpdGxlKSk7by5odG1sKEwuTWFpblRleHQpLHNldFRpbWVvdXQodCksdih3aW5kb3cpLm9uKCJyZXNpemUiLHQpfSxyLnByb3RvdHlwZS5hZGRDbGFzc2VzUGVyQ29uZmlnPWZ1bmN0aW9uKGUpey9DaHJvbWV8U2FmYXJpL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSYmL0dvb2dsZSBJbmN8QXBwbGUgQ29tcHV0ZXIvaS50ZXN0KG5hdmlnYXRvci52ZW5kb3IpfHx2KGUpLmFkZENsYXNzKCJvdC1zZGstbm90LXdlYmtpdCIpLEwudXNlUlRMJiZ2KGUpLmF0dHIoImRpciIsInJ0bCIpLGIubGVnSW50U2V0dGluZ3MuUEFsbG93TEkmJmIuaXNJYWIyb3J2MlRlbXBsYXRlJiYodihlKS5hZGRDbGFzcygib3QtbGVnLW9wdC1vdXQiKSxiLmxlZ0ludFNldHRpbmdzLlBTaG93TGVnSW50QnRuKSYmdihlKS5hZGRDbGFzcygib3QtbGVnLWJ0biIpLEwuQmFubmVyUmVsYXRpdmVGb250U2l6ZXNUb2dnbGUmJnYoZSkuYWRkQ2xhc3MoIm90UmVsRm9udCIpLEwuUENTaG93Q29uc2VudExhYmVscyYmdihlKS5hZGRDbGFzcygib3QtdGdsLXdpdGgtbGFiZWwiKSwoTC5Vc2VHb29nbGVWZW5kb3JzfHxfLnNob3dHZW5lcmFsVmVuZG9ycykmJnYoZSkuYWRkQ2xhc3MoIm90LWFkZHRsLXZlbmRvcnMiKSwicmlnaHQiPT09TC5QcmVmZXJlbmNlQ2VudGVyUG9zaXRpb24mJnYoZSkuYWRkQ2xhc3MoTC51c2VSVEw/InJpZ2h0LXJ0bCI6InJpZ2h0Iil9LHIucHJvdG90eXBlLm1hbmFnZUNsb3NlQnV0dG9ucz1mdW5jdGlvbihlLHQsbyl7dmFyIG49dih0KEEuUF9DbG9zZV9CdG4pKS5lbDtpZihMLlNob3dQcmVmZXJlbmNlQ2VudGVyQ2xvc2VCdXR0b24pe0wuQ2xvc2VUZXh0fHwoTC5DbG9zZVRleHQ9IkNsb3NlIFByZWZlcmVuY2UgQ2VudGVyIik7Zm9yKHZhciByPTAsaT1uO3I8aS5sZW5ndGg7cisrKXt2YXIgcz1pW3JdO0wuUENDbG9zZUJ1dHRvblR5cGU9PT1QZS5MaW5rJiZMLlBDVGVtcGxhdGVVcGdyYWRlPyh2KHMpLmh0bWwoTC5QQ0NvbnRpbnVlVGV4dCksdihlKS5hZGRDbGFzcygib3QtY2xvc2UtYnRuLWxpbmsiKSx2KHMpLmVsLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLl9hcmlhTGFiZWwpKToodihzKS5lbC5zZXRBdHRyaWJ1dGUodGhpcy5fYXJpYUxhYmVsLEwuQ2xvc2VUZXh0KSxJLnNldENsb3NlSWNvbihvKCIjb25ldHJ1c3QtcGMtc2RrIC5vdC1jbG9zZS1pY29uIikpKX19ZWxzZSBmb3IodmFyIGE9MDthPG4ubGVuZ3RoO2ErKyl2KG5bYV0ucGFyZW50RWxlbWVudCkuZWwucmVtb3ZlQ2hpbGQoblthXSl9LHIucHJvdG90eXBlLmFkZExvZ29zPWZ1bmN0aW9uKGUsdCl7dmFyIG8sbixyLGU9ZShBLlBfTG9nbyk7ZSYmTC5vcHRhbm9uTG9nbyYmKG89SS51cGRhdGVDb3JyZWN0VXJsKEwub3B0YW5vbkxvZ28pLEkuY2hlY2tNb2JpbGVPZmZsaW5lUmVxdWVzdChJLmdldEJhbm5lclZlcnNpb25VcmwoKSkmJihvPVAuZ2V0UmVsYXRpdmVVUkwobywhMCwhMCkpLHI9bmV3IFVSTChvLHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pLnBhdGhuYW1lLFMuZnAuQ01QSWNvblNwcml0ZSYmKHIuaW5jbHVkZXMoIi9sb2dvcy9zdGF0aWMvIil8fHIuaW5jbHVkZXMoInNyYy9hc3NldHMvaW1hZ2VzLyIpJiZuZXcgVVJMKG8sd2luZG93LmxvY2F0aW9uLm9yaWdpbikuaG9zdC5pbmNsdWRlcygibG9jYWxob3N0IikpPyhyPXIuc3BsaXQoIi8iKS5wb3AoKS5zcGxpdCgiLiIpLnNoaWZ0KCksKG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsInN2ZyIpKS5pbm5lckhUTUw9Ijx1c2U+PC91c2U+IixuLnF1ZXJ5U2VsZWN0b3IoInVzZSIpLnNldEF0dHJpYnV0ZSgiaHJlZiIsIiMiK3IpLEwuUENMb2dvQXJpYSYmdihlKS5hdHRyKHRoaXMuX2FyaWFMYWJlbCxMLlBDTG9nb0FyaWEpLGUuc2V0QXR0cmlidXRlKCJyb2xlIiwiaW1nIiksZS5hcHBlbmQobikpOigocj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKSkuc2V0QXR0cmlidXRlKCJhbHQiLEwuUENMb2dvQXJpYSksci5zZXRBdHRyaWJ1dGUoInNyYyIsbyksZS5hcHBlbmQocikpKSxJLmluc2VydEZvb3RlckxvZ28odCgiLm90LXBjLWZvb3Rlci1sb2dvIGEiKSl9LHIucHJvdG90eXBlLmNvbmZpZ3VyZUxpbmtGaWVsZHM9ZnVuY3Rpb24oZSx0KXt2YXIgbztMLkFib3V0VGV4dCYmdihlKEEuUF9Qb2xpY3lfVHh0KSkuaHRtbCh2KGUoQS5QX1BvbGljeV9UeHQpKS5odG1sKCkrJ1xuICAgICAgICAgICAgPGJyLz48YSBocmVmPSInK0wuQWJvdXRMaW5rKyciIGNsYXNzPSJwcml2YWN5LW5vdGljZS1saW5rIiByZWw9Im5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0iJytMLlBDQ29va2llUG9saWN5TGlua1NjcmVlblJlYWRlcisnIj4nK0wuQWJvdXRUZXh0KyI8L2E+IiksTC5QQ2VudGVySW1wcmludExpbmtUZXh0JiYoTC5BYm91dFRleHR8fGUoQS5QX1BvbGljeV9UeHQpLmluc2VydEFkamFjZW50SFRNTCgiYmVmb3JlZW5kIixtLmdldElubmVySHRtbENvbnRlbnQoIjxici8+IikpLChvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKSkuY2xhc3NMaXN0LmFkZCgib3QtbGluay1idG4iLCJvdC1pbXByaW50LWhhbmRsZXIiKSxvLnRleHRDb250ZW50PUwuUENlbnRlckltcHJpbnRMaW5rVGV4dCxvLnNldEF0dHJpYnV0ZSh0aGlzLl9hcmlhTGFiZWwsTC5QQ2VudGVySW1wcmludExpbmtTY3JlZW5SZWFkZXIpLG8uc2V0QXR0cmlidXRlKCJocmVmIixMLlBDZW50ZXJJbXByaW50TGlua1VybCksby5zZXRBdHRyaWJ1dGUoInJlbCIsIm5vb3BlbmVyIiksby5zZXRBdHRyaWJ1dGUoInRhcmdldCIsIl9ibGFuayIpLGUoQS5QX1BvbGljeV9UeHQpLmFwcGVuZENoaWxkKG8pKSxMLlBDZW50ZXJWZW5kb3JMaXN0TGlua1RleHQmJihvPSFMLklzSWFiRW5hYmxlZCYmXy5zaG93R2VuZXJhbFZlbmRvcnM/Im90LWd2LWxpc3QtaGFuZGxlciI6Im9uZXRydXN0LXZlbmRvcnMtbGlzdC1oYW5kbGVyIixlKEEuUF9Qb2xpY3lfVHh0KS5pbnNlcnRBZGphY2VudEhUTUwoImJlZm9yZWVuZCIsbS5nZXRJbm5lckh0bWxDb250ZW50KCc8YnV0dG9uIGNsYXNzPSJvdC1saW5rLWJ0biAnK28rJyIgYXJpYS1sYWJlbD0iJytMLlBDZW50ZXJWZW5kb3JMaXN0TGlua0FyaWFMYWJlbCsnIj5cbiAgICAgICAgICAgICAgICAgICAgJytMLlBDZW50ZXJWZW5kb3JMaXN0TGlua1RleHQrIlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4iKSkpLEkuYWRkRXh0ZXJuYWxJY29uRm9yTGlua3ModCl9LHIucHJvdG90eXBlLmNvbmZpZ3VyZVN1YmplY3REYXRhRmllbGRzPWZ1bmN0aW9uKGUpe3ZhciB0O0wuUENUZW1wbGF0ZVVwZ3JhZGUmJkwuUENlbnRlclVzZXJJZFRpdGxlVGV4dCYmTC5Jc0NvbnNlbnRMb2dnaW5nRW5hYmxlZCYmKHQ9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5DT05TRU5UX0lEKSxlKEEuUF9Qb2xpY3lfVHh0KS5pbnNlcnRBZGphY2VudEhUTUwoImJlZm9yZWVuZCIsbS5nZXRJbm5lckh0bWxDb250ZW50KCc8ZGl2IGNsYXNzPSJvdC11c2VyaWQtdGl0bGUiPjxzdHJvbmc+JytMLlBDZW50ZXJVc2VySWRUaXRsZVRleHQrIjogPC9zdHJvbmc+ICIrdCsiPC9kaXY+IikpLEwuUENlbnRlclVzZXJJZERlc2NyaXB0aW9uVGV4dCYmZShBLlBfUG9saWN5X1R4dCkuaW5zZXJ0QWRqYWNlbnRIVE1MKCJiZWZvcmVlbmQiLG0uZ2V0SW5uZXJIdG1sQ29udGVudCgnPGRpdiBjbGFzcz0ib3QtdXNlcmlkLWRlc2MiPjxlbT4nK0wuUENlbnRlclVzZXJJZERlc2NyaXB0aW9uVGV4dCsiPC9lbT48L2Rpdj4iKSksTC5QQ2VudGVyVXNlcklkVGltZXN0YW1wVGl0bGVUZXh0KSYmKHQ9KHQ9VC5nZXRDb29raWUoeS5BTEVSVF9CT1hfQ0xPU0VEKSkmJkkuZ2V0VVRDRm9ybWF0dGVkRGF0ZSh0KXx8TC5QQ2VudGVyVXNlcklkTm90WWV0Q29uc2VudGVkVGV4dCxlKEEuUF9Qb2xpY3lfVHh0KS5pbnNlcnRBZGphY2VudEhUTUwoImJlZm9yZWVuZCIsbS5nZXRJbm5lckh0bWxDb250ZW50KCc8ZGl2IGNsYXNzPSJvdC11c2VyaWQtdGltZXN0YW1wIj48c3Ryb25nPicrTC5QQ2VudGVyVXNlcklkVGltZXN0YW1wVGl0bGVUZXh0KyI6IDwvc3Ryb25nPiAiK3QrIjwvZGl2PiIpKSl9LHIucHJvdG90eXBlLnNldE1hbmFnZVByZWZlcmVuY2VUZXh0PWZ1bmN0aW9uKGUpe3ZhciBlPWUoQS5QX01hbmFnZV9Db29raWVzX1R4dCksdD12KGUpO2UmJih0Lmh0bWwoTC5NYW5hZ2VQcmVmZXJlbmNlVGV4dCksTC5NYW5hZ2VQcmVmZXJlbmNlVGV4dHx8UC5yZW1vdmVDaGlsZCh0LmVsKSl9LHIucHJvdG90eXBlLmNvbmZpZ3VyZUJ1dHRvbnM9ZnVuY3Rpb24oZSx0KXt0aGlzLnNldEJ1dHRvbnNPcmRlcihlKSxMLkNvbmZpcm1UZXh0LnRyaW0oKT92KGUoVG4pKS5odG1sKEwuQ29uZmlybVRleHQpOmUoVG4pLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZShUbikpO2Zvcih2YXIgbz10KCIuc2F2ZS1wcmVmZXJlbmNlLWJ0bi1oYW5kbGVyIiksbj0wO248by5sZW5ndGg7bisrKXYob1tuXSkuaHRtbChMLkFsbG93QWxsVGV4dCk7dmFyIHI9dCgiLm90LXBjLXJlZnVzZS1hbGwtaGFuZGxlciIpO2lmKEwuUENlbnRlclNob3dSZWplY3RBbGxCdXR0b24mJkwuUENlbnRlclJlamVjdEFsbEJ1dHRvblRleHQudHJpbSgpKWZvcihuPTA7bjxyLmxlbmd0aDtuKyspdihyW25dKS5odG1sKEwuUENlbnRlclJlamVjdEFsbEJ1dHRvblRleHQpO2Vsc2UgUC5yZW1vdmVDaGlsZChyKTt0aGlzLmNoZWNrSWZTdGFja0J1dHRvbnMoZSl9LHIucHJvdG90eXBlLnNldEJ1dHRvbnNPcmRlcj1mdW5jdGlvbihlKXtpZihMLlBDVGVtcGxhdGVVcGdyYWRlJiZTLmZwLldlYkJ1dHRvbkN1c3RvbWlzYXRpb25zJiZ0aGlzLmNoZWNrQnV0dG9uc09yZGVyVmFsaWRhdGlvbihlKSl7dmFyIHQ9bmV3IE1hcCxvPW5ldyBNYXAsbj1lKCIub3QtcGMtcmVmdXNlLWFsbC1oYW5kbGVyIikscj1lKFRuKSxpPWUoIi5zYXZlLXByZWZlcmVuY2UtYnRuLWhhbmRsZXIiKSxzPSh0aGlzLnNldEJ1dHRvbk9yZGVyQ29uZmlnKHIsdCxvLEVlLkFDQ0VQVF9BTEwpLHRoaXMuc2V0QnV0dG9uT3JkZXJDb25maWcobix0LG8sRWUuUkVKRUNUX0FMTCksdGhpcy5zZXRCdXR0b25PcmRlckNvbmZpZyhpLHQsbyxFZS5TQVZFX1BSRUZFUkVOQ0UpLGUoIiNvbmV0cnVzdC1wYy1zZGsgLm90LXBjLWZvb3RlciAub3QtYnRuLWNvbnRhaW5lciIpKTtpZihzKXtzLmNsYXNzTGlzdC5hZGQoIm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIiKTtmb3IodmFyIGE9MCxsPU9iamVjdC5lbnRyaWVzKEwuUGNCTyk7YTxsLmxlbmd0aDthKyspe3ZhciBjPWxbYV0sZD1jWzBdLGM9Y1sxXSx1PXQuZ2V0KE51bWJlcihkKSksYz1vLmdldChjKTt1JiZjJiYodS5yZXBsYWNlV2l0aChjKSxjLmNsYXNzTGlzdC5hZGQoIm90LWJ1dHRvbi1vcmRlci0iK2QpLCIwIiE9PWR8fGIucGNOYW1lIT09b3QmJmIucGNOYW1lIT09cnR8fHMuaW5zZXJ0QmVmb3JlKGMscy5maXJzdENoaWxkKSl9Yi5wY05hbWU9PT1zdCYmKHI9cy5xdWVyeVNlbGVjdG9yQWxsKCdbY2xhc3MqPSJvdC1idXR0b24tb3JkZXItIl0nKSxzLmlubmVySFRNTD0iIixudWxsIT0obj1yKSkmJm4uZm9yRWFjaChmdW5jdGlvbihlKXtyZXR1cm4gcy5hcHBlbmRDaGlsZChlKX0pfX19LHIucHJvdG90eXBlLmNoZWNrSWZTdGFja0J1dHRvbnM9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5idXR0dG9uc1RleHRBcmVMYXJnZSgpO0wuUENUZW1wbGF0ZVVwZ3JhZGUmJlMuZnAuV2ViQnV0dG9uQ3VzdG9taXNhdGlvbnMmJihiLnBjTmFtZT09PW90fHxiLnBjTmFtZT09PXN0KSYmdCYmKHQ9ZSgiLm90LWJ0bi1jb250YWluZXIub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciIpKSYmKHQuY2xhc3NMaXN0LmFkZCgib3Qtc3RhY2stYnV0dG9ucyIpLG51bGwhPShlPXQ9ZSgiLm90LXBjLWZvb3RlciIpKSYmZS5zdHlsZS5zZXRQcm9wZXJ0eSgiaGVpZ2h0IiwiMTAwJSIpLG51bGwhPShlPXQpJiZlLnN0eWxlLnNldFByb3BlcnR5KCJkaXNwbGF5IiwiZmxleCIpLG51bGwhPShlPXQpKSYmZS5zdHlsZS5zZXRQcm9wZXJ0eSgiZmxleC1kaXJlY3Rpb24iLCJjb2x1bW4iKX0sci5wcm90b3R5cGUuYnV0dHRvbnNUZXh0QXJlTGFyZ2U9ZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gMjA8KG51bGw9PShlPUwuQ29uZmlybVRleHQpP3ZvaWQgMDplLmxlbmd0aCl8fDIwPChudWxsPT0oZT1MLkFsbG93QWxsVGV4dCk/dm9pZCAwOmUubGVuZ3RoKXx8MjA8KG51bGw9PShlPUwuUENlbnRlclJlamVjdEFsbEJ1dHRvblRleHQpP3ZvaWQgMDplLmxlbmd0aCl9LHIucHJvdG90eXBlLmNoZWNrQnV0dG9uc09yZGVyVmFsaWRhdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1lKCIub3QtcGMtcmVmdXNlLWFsbC1oYW5kbGVyIiksbz1lKFRuKTtyZXR1cm4hKGUoIi5zYXZlLXByZWZlcmVuY2UtYnRuLWhhbmRsZXIiKSYmIXRoaXMuY2hlY2tJZkNvbmZpZ3VyYXRpb25Jc1ZhbGlkKEVlLlNBVkVfUFJFRkVSRU5DRSl8fG8mJiF0aGlzLmNoZWNrSWZDb25maWd1cmF0aW9uSXNWYWxpZChFZS5BQ0NFUFRfQUxMKXx8dCYmIXRoaXMuY2hlY2tJZkNvbmZpZ3VyYXRpb25Jc1ZhbGlkKEVlLlJFSkVDVF9BTEwpKX0sci5wcm90b3R5cGUuY2hlY2tJZkNvbmZpZ3VyYXRpb25Jc1ZhbGlkPWZ1bmN0aW9uKGUpe3ZhciB0LG89ITE7Zm9yKHQgaW4gTC5QY0JPKXt2YXIgbj1OdW1iZXIodCk7aWYoTC5QY0JPW25dPT09ZSl7bz0hMDticmVha319cmV0dXJuIG99LHIucHJvdG90eXBlLnNldEJ1dHRvbk9yZGVyQ29uZmlnPWZ1bmN0aW9uKGUsdCxvLG4pe3ZhciByO2UmJihyPU51bWJlcihlLmdldEF0dHJpYnV0ZSgib3QtYnV0dG9uLW9yZGVyIikpLGUucmVtb3ZlQXR0cmlidXRlKCJvdC1idXR0b24tb3JkZXIiKSx0LnNldChyLGUpLG8uc2V0KG4sZS5jbG9uZU5vZGUoITApKSl9LHIucHJvdG90eXBlLnJlbW92ZUxpc3RzV2hlbkFwcHJvcHJpYXRlPWZ1bmN0aW9uKGUpe3ZhciB0O0wuSXNJYWJFbmFibGVkfHwodD1lKEEuUF9WZW5kb3JfQ29udGFpbmVyKSkmJnQucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZCh0KSxMLnNob3dDb29raWVMaXN0fHxfLnNob3dHZW5lcmFsVmVuZG9yc3x8KHQ9ZShBLlBfSG9zdF9DbnRyKSkmJnQucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZCh0KX0sci5wcm90b3R5cGUuc2V0UGFyZW50R3JvdXBOYW1lPWZ1bmN0aW9uKGUsdCxvLG4pe3ZhciByPWUucXVlcnlTZWxlY3RvcignLmNhdGVnb3J5LWhlYWRlciwub3QtY2F0LWhlYWRlciwuY2F0ZWdvcnktbWVudS1zd2l0Y2gtaGFuZGxlcj5oMywuY2F0ZWdvcnktbWVudS1zd2l0Y2gtaGFuZGxlcj5wW2FyaWEtbGV2ZWw9IjMiXScpO3YocikuaHRtbCh0KSx2KHIpLmF0dHIoImlkIixvKSxiLnBjTmFtZT09PXN0JiYoZS5xdWVyeVNlbGVjdG9yKEEuUF9DYXRlZ29yeV9IZWFkZXIpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQodCksZS5xdWVyeVNlbGVjdG9yKCIiK0EuUF9EZXNjX0NvbnRhaW5lcikuc2V0QXR0cmlidXRlKCJpZCIsbiksZS5xdWVyeVNlbGVjdG9yKCIuY2F0ZWdvcnktbWVudS1zd2l0Y2gtaGFuZGxlciIpLnNldEF0dHJpYnV0ZSgiYXJpYS1jb250cm9scyIsbikpfSxyLnByb3RvdHlwZS5zZXRMZWdJbnRCdXR0b249ZnVuY3Rpb24oZSx0LG8sbil7dm9pZCAwPT09byYmKG89ITEpO3ZhciByPSEwLHI9KC0xPF8udmVuZG9ycy5zZWxlY3RlZExlZ0ludC5pbmRleE9mKHQuSWFiR3JwSWQrIjpmYWxzZSIpJiYocj0hMSksTy5nZW5lcmF0ZUxlZ0ludEJ1dHRvbkVsZW1lbnRzKHIsdC5PcHRhbm9uR3JvdXBJZCwhMSx0Lkdyb3VwTmFtZSkpLHQ9KG8/bi5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyZW5kIixyKTplLmluc2VydEFkamFjZW50SFRNTCgiYmVmb3JlZW5kIixyKSxlLnF1ZXJ5U2VsZWN0b3IoIi5vdC1yZW1vdmUtb2JqZWN0aW9uLWhhbmRsZXIiKSk7dCYmZCh0LHQuZ2V0QXR0cmlidXRlKCJkYXRhLXN0eWxlIikpfSxyLnByb3RvdHlwZS5zZXRQYXJlbnRHcm91cERlc2NyaXB0aW9uPWZ1bmN0aW9uKGUsdCxvLG4scil7dmFyIGk9Vi5zYWZlRm9ybWF0dGVkR3JvdXBEZXNjcmlwdGlvbih0KSxzPWUucXVlcnlTZWxlY3RvcigicDpub3QoLm90LWFsd2F5cy1hY3RpdmUpIiksYT1lLnF1ZXJ5U2VsZWN0b3IoQS5QX0FjY19HcnBfRGVzYykscz1zfHxhO3JldHVybi0xPFZ0LmluZGV4T2YodC5UeXBlKSYmby5QQ0dycERlc2NUeXBlPT09cmUuTGVnYWw/aT10LkRlc2NyaXB0aW9uTGVnYWw6cy5jbGFzc0xpc3QuYWRkKCJvdC1jYXRlZ29yeS1kZXNjIiksYi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSYmIWIubGVnSW50U2V0dGluZ3MuUFNob3dMZWdJbnRCdG4mJih0LlN1Ykdyb3Vwcy5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBlLkhhc0xlZ0ludE9wdE91dH0pfHx0Lkhhc0xlZ0ludE9wdE91dD9zLnBhcmVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgib3QtbGVnLWJvcmRlci1jb2xvciIpOlAucmVtb3ZlQ2hpbGQoZS5xdWVyeVNlbGVjdG9yKEEuUF9MaV9IZHIpKSksYi5wY05hbWUhPT1zdCYmcy5zZXRBdHRyaWJ1dGUoImlkIixuKSx2KHMpLmh0bWwoaSksdC5UeXBlPT09ay5Hcm91cFR5cGVzLlN0YWNrJiZQLnJlbW92ZUNoaWxkKHMpLHN9LHIucHJvdG90eXBlLmNsb25lT3RIdG1sRWxzPWZ1bmN0aW9uKGUpe3ZhciB0PS9vdFBjUGFuZWx8b3RQY0NlbnRlci87RS50b2dnbGVFbD12KGUoIi5vdC10Z2wiKSkuZWwuY2xvbmVOb2RlKCEwKSxFLmFycm93RWw9dihlKCcjb25ldHJ1c3QtcGMtc2RrIFtyb2xlPSJkaWFsb2ciXSA+ICcrQS5QX0FycndfQ250cikpLmVsLmNsb25lTm9kZSghMCksRS5zdWJHcnBFbD12KGUoQS5QX1N1Yl9HcnBfQ250cikpLmVsLmNsb25lTm9kZSghMCksRS52TGlzdEVsPXYoZShBLlBfVmVuX0xzdF9DbnRyKSkuZWwuY2xvbmVOb2RlKCEwKSxFLmNMaXN0RWw9dihlKEEuUF9Ib3N0X0xzdF9jbnRyKSkuZWwuY2xvbmVOb2RlKCEwKSxFLmNoa2JveEVsPXYoZShBLlBfQ0J4X0NudHIpKS5lbC5jbG9uZU5vZGUoITApLEUuYWNjb3JkaW9uRWw9dihlKCIub3QtYWNjLWNudHIiKSkuZWwuY2xvbmVOb2RlKCEwKSx0LnRlc3QoYi5wY05hbWUpJiYoRS5wbHVzTWludXNFbD12KGUoIi5vdC1wbHVzLW1pbnVzIikpLmVsLmNsb25lTm9kZSghMCkpLFAucmVtb3ZlQ2hpbGQoZSgiLm90LXRnbCIpKSxQLnJlbW92ZUNoaWxkKGUoJyNvbmV0cnVzdC1wYy1zZGsgW3JvbGU9ImRpYWxvZyJdID4gJytBLlBfQXJyd19DbnRyKSksUC5yZW1vdmVDaGlsZChlKEEuUF9TdWJfR3JwX0NudHIpKSxQLnJlbW92ZUNoaWxkKGUoQS5QX1Zlbl9Mc3RfQ250cikpLFAucmVtb3ZlQ2hpbGQoZShBLlBfSG9zdF9Mc3RfY250cikpLFAucmVtb3ZlQ2hpbGQoZShBLlBfQ0J4X0NudHIpKSxQLnJlbW92ZUNoaWxkKGUoIi5vdC1hY2MtY250ciIpKSx0LnRlc3QoYi5wY05hbWUpJiZQLnJlbW92ZUNoaWxkKGUoIi5vdC1wbHVzLW1pbnVzIikpfSxyLnByb3RvdHlwZS5pbnNlcnRTZWxlY3RBbGxFbHM9ZnVuY3Rpb24oZSl7dmFyIGU9ZShBLlBfU2VsZWN0X0NudHIrIiAub3Qtc2VsLWFsbC1jaGtib3giKSx0PV8uc2hvd1ZlbmRvclNlcnZpY2U/WW4oKTpFLmNoa2JveEVsLmNsb25lTm9kZSghMCksdD0odC5pZD1BLlBfU2VsX0FsbF9Ib3N0X0VsLHQucXVlcnlTZWxlY3RvcigiaW5wdXQiKS5pZD0ic2VsZWN0LWFsbC1ob3N0cy1ncm91cHMtaGFuZGxlciIsdC5xdWVyeVNlbGVjdG9yKCJsYWJlbCIpLnNldEF0dHJpYnV0ZSgiZm9yIiwic2VsZWN0LWFsbC1ob3N0cy1ncm91cHMtaGFuZGxlciIpLHYoZSkuYXBwZW5kKHQpLF8uc2hvd1ZlbmRvclNlcnZpY2U/WW4oKTpFLmNoa2JveEVsLmNsb25lTm9kZSghMCkpLHQ9KHQuaWQ9QS5QX1NlbF9BbGxfVmVuZG9yX0NvbnNlbnRfRWwsdC5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLmlkPSJzZWxlY3QtYWxsLXZlbmRvci1ncm91cHMtaGFuZGxlciIsdC5xdWVyeVNlbGVjdG9yKCJsYWJlbCIpLnNldEF0dHJpYnV0ZSgiZm9yIiwic2VsZWN0LWFsbC12ZW5kb3ItZ3JvdXBzLWhhbmRsZXIiKSx2KGUpLmFwcGVuZCh0KSxfLnNob3dWZW5kb3JTZXJ2aWNlP1luKCk6RS5jaGtib3hFbC5jbG9uZU5vZGUoITApKTt0LmlkPUEuUF9TZWxfQWxsX1ZlbmRvcl9MZWdfRWwsdC5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLmlkPSJzZWxlY3QtYWxsLXZlbmRvci1sZWctaGFuZGxlciIsdC5xdWVyeVNlbGVjdG9yKCJsYWJlbCIpLnNldEF0dHJpYnV0ZSgiZm9yIiwic2VsZWN0LWFsbC12ZW5kb3ItbGVnLWhhbmRsZXIiKSx2KGUpLmFwcGVuZCh0KX0sci5wcm90b3R5cGUuaW5pdGlhbGl6ZVByZWZlcmVuY2VDZW50ZXJHcm91cHM9ZnVuY3Rpb24oZSx0KXt2YXIgbyxuPWIucGNOYW1lLHI9KFMuaXNWMlRlbXBsYXRlJiYoQi5jbG9uZU90SHRtbEVscyhlKSwocj1FLmNoa2JveEVsLmNsb25lTm9kZSghMCkpLnF1ZXJ5U2VsZWN0b3IoImlucHV0IikuY2xhc3NMaXN0LmFkZCgiY2F0ZWdvcnktZmlsdGVyLWhhbmRsZXIiKSx2KGUoQS5QX0ZsdHJfTW9kYWwrIiAiK0EuUF9GbHRyX09wdGlvbikpLmFwcGVuZChyKSxCLmluc2VydFNlbGVjdEFsbEVscyhlKSksdihlKCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0NhdGVnb3J5X0dycCkpKSxpPShuPT09b3R8fG49PT1ydHx8bj09PW50P0wuUENlbnRlckVuYWJsZUFjY29yZGlvbj9QLnJlbW92ZUNoaWxkKHIuZWwucXVlcnlTZWxlY3RvcihBLlBfQ2F0ZWdvcnlfSXRlbSsiOm5vdCgub3QtYWNjb3JkaW9uLWxheW91dCkiKSk6UC5yZW1vdmVDaGlsZChyLmVsLnF1ZXJ5U2VsZWN0b3IoQS5QX0NhdGVnb3J5X0l0ZW0rIi5vdC1hY2NvcmRpb24tbGF5b3V0IikpOm49PT1zdCYmKEwuUENlbnRlckVuYWJsZUFjY29yZGlvbj0hMSksZSgiI29uZXRydXN0LXBjLXNkayAiK0EuUF9DYXRlZ29yeV9JdGVtKSkscz1TLmlzVjJUZW1wbGF0ZT9FLnN1YkdycEVsLmNsb25lTm9kZSghMCk6dihlKEEuUF9TdWJfR3JwX0NudHIpKSxhPVMuaXNWMlRlbXBsYXRlP251bGw6dihlKEEuUF9BY2NfQ29udGFpbmVyKyIgIitBLlBfU3ViX0dycF9DbnRyKSk7TC5QQ1RlbXBsYXRlVXBncmFkZSYmL290UGNUYWIvLnRlc3QobikmJihvPWUoIi5vdC1hYnQtdGFiIikuY2xvbmVOb2RlKCEwKSxQLnJlbW92ZUNoaWxkKGUoIi5vdC1hYnQtdGFiIikpKSxyLmVsLnJlbW92ZUNoaWxkKGkpLEIuc2V0VmVuZG9yTGlzdENsYXNzKGUsaSksQi5zZXRQQ0hlYWRlcihlLGkpLEIuY3JlYXRlSHRtbEZvckVhY2hHcm91cCh7Zm06ZSxmcmFnbWVudDp0LGNhdGVnb3J5R3JvdXBUZW1wbGF0ZTppLGNvb2tpZVByZWZlcmVuY2VzQ29udGFpbmVyOnIscG9wdXBTdWJHcnBDb250YWluZXI6YSxzdWJHcnBDb250YWluZXI6c30pLEIuc2V0UGNUYWJMYXlvdXQoZSx0LG8pfSxyLnByb3RvdHlwZS5nZXRBY3RpdmVWZW5kb3JDb3VudD1mdW5jdGlvbihlKXt2YXIgdD1wYXJzZUludChlLklhYkdycElkKSxvPTA7cmV0dXJuIGUuVHlwZT09PWsuR3JvdXBUeXBlcy5QdXI/bz1iLnRjZjJBY3RpdmVWZW5kb3JzLnB1ci5nZXQodCk6ZS5UeXBlPT09ay5Hcm91cFR5cGVzLkZ0P289Yi50Y2YyQWN0aXZlVmVuZG9ycy5mdC5nZXQodCk6ZS5UeXBlPT09ay5Hcm91cFR5cGVzLlNwbF9QdXI/bz1iLnRjZjJBY3RpdmVWZW5kb3JzLnNwbF9wdXIuZ2V0KHQpOmUuVHlwZT09PWsuR3JvdXBUeXBlcy5TcGxfRnQmJihvPWIudGNmMkFjdGl2ZVZlbmRvcnMuc3BsX2Z0LmdldCh0KSksb3x8MH0sci5wcm90b3R5cGUuZ2V0QWN0aXZlVmVuZG9yQ291bnRGb3JTdGFjaz1mdW5jdGlvbihlKXtyZXR1cm4gYi50Y2YyQWN0aXZlVmVuZG9ycy5zdGFjay5nZXQoZSl8fDB9LHIucHJvdG90eXBlLmdldFZlbmRvckNvdW50RWw9ZnVuY3Rpb24oZSx0KXt2YXIgbz0iW1ZFTkRPUl9OVU1CRVJdIixuPSIiO3N3aXRjaCh0KXtjYXNlIGJ0Om49TC5QQ1ZlbmRvcnNDb3VudEZlYXR1cmVUZXh0O2JyZWFrO2Nhc2UgTHQ6bj1MLlBDVmVuZG9yc0NvdW50U3BjRmVhdHVyZVRleHQ7YnJlYWs7Y2FzZSBJdDpuPUwuUENWZW5kb3JzQ291bnRTcGNQdXJwb3NlVGV4dDticmVhaztkZWZhdWx0Om49TC5QQ1ZlbmRvcnNDb3VudFRleHR9cmV0dXJuIG4mJi0xPG4uaW5kZXhPZihvKT8nPHNwYW4gY2xhc3M9Im90LXB1ci12ZHItY291bnQiPiAnK24ucmVwbGFjZShvLGUudG9TdHJpbmcoKSkrIiA8L3NwYW4+IjoiIn0sci5wcm90b3R5cGUuY3JlYXRlSHRtbEZvckVhY2hHcm91cD1mdW5jdGlvbihlKXt2YXIgdD1lLmZtLG89ZS5mcmFnbWVudCxuPWUuY2F0ZWdvcnlHcm91cFRlbXBsYXRlLHI9ZS5jb29raWVQcmVmZXJlbmNlc0NvbnRhaW5lcixpPWUucG9wdXBTdWJHcnBDb250YWluZXIscz1lLnN1YkdycENvbnRhaW5lcixlPUwuR3JvdXBzLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gZS5PcmRlcn0pO0wuUENUZW1wbGF0ZVVwZ3JhZGUmJihfLnNob3dWZW5kb3JTZXJ2aWNlP3cuc2V0SHRtbFRlbXBsYXRlKHQoJyNvbmV0cnVzdC1wYy1zZGsgZGl2W3JvbGU9ImRpYWxvZyJdJykpOncucmVtb3ZlVlNVSVRlbXBsYXRlKHQoJyNvbmV0cnVzdC1wYy1zZGsgZGl2W3JvbGU9ImRpYWxvZyJdJykpKTtmb3IodmFyIGE9MCxsPWU7YTxsLmxlbmd0aDthKyspe3ZhciBjPWxbYV0sZD1jLkdyb3VwTmFtZSx1PWMuQ3VzdG9tR3JvdXBJZCxkPUIuYXBwZW5kVmVuZG9yQ291bnRFbGVtZW50KGMsZCkscD1uLmNsb25lTm9kZSghMCkscD12KHApLmVsLEM9Im90LWdyb3VwLWlkLSIrdSxnPSJvdC1oZWFkZXItaWQtIit1LGg9Im90LWRlc2MtaWQtIit1LHk9IiIsdT0oYy5TdGF0dXM9PT1mLkFMV0FZU19BQ1RJVkUmJih5PSIgb3Qtc3RhdHVzLWlkLSIrdSkscC5zZXRBdHRyaWJ1dGUoImRhdGEtb3B0YW5vbmdyb3VwaWQiLHUpLHAucXVlcnlTZWxlY3RvcigiaW5wdXQsYnV0dG9uIikpLHU9KHUmJihjLlR5cGUhPT1rLkdyb3VwVHlwZXMuU3RhY2smJnUuc2V0QXR0cmlidXRlKCJhcmlhLWNvbnRyb2xzIixoKSx1LnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbGxlZGJ5IixnK3kpKSxCLnNldFBhcmVudEdyb3VwTmFtZShwLGQsZyxoKSxCLnNldFBvcHVwRGF0YShjLHApLEIuc2V0UGFyZW50R3JvdXBEZXNjcmlwdGlvbihwLGMsTCxoLEMpKSx5PShTLmlzVjJUZW1wbGF0ZT9CLnNldFRvZ2dsZShwLHUsYyxDLGcpOkIuc2V0VG9nZ2xlUHJvcHMocCx1LGMsQyxnKSx0aGlzLmFkZENhdGVnb3J5R3JvdXBzVG9QYXJlbnQodCxyLHApLEIuc2V0U3ViR3JvdXBEYXRhKGMscCxpLHMpLEwuUENHcnBEZXNjTGlua1Bvc2l0aW9uPT09aWUuVG9wKSxkPShjLlR5cGU9PT1rLkdyb3VwVHlwZXMuU3RhY2smJnkmJih1PXAucXVlcnlTZWxlY3RvcihBLlBfU3ViX0dycF9DbnRyKSkseT91Om51bGwpO0Iuc2V0VmVuZG9yTGlzdEJ0bihwLHQsbyxjLGQsTCksQi5zZXRIb3N0TGlzdEJ0bihwLHQsbyxjKSxCLnNldFZlbmRvclNlcnZpY2VEYXRhKGMscCksQi5hcHBlbmRIZWFsdGhTaWduYXR1cmVGb3JtVG9Hcm91cChjLHApLF8uZGF0YUdyb3VwU3RhdGUucHVzaChjKX19LHIucHJvdG90eXBlLmFkZENhdGVnb3J5R3JvdXBzVG9QYXJlbnQ9ZnVuY3Rpb24oZSx0LG8pe3ZhciBuPTA9PT10LmVsLmNoaWxkcmVuLmxlbmd0aCxlPSEhZSgiI29uZXRydXN0LXBjLXNkayAiK0EuUF9DYXRlZ29yeV9HcnApLnF1ZXJ5U2VsZWN0b3IoQS5QX0NhdGVnb3J5X0l0ZW0pLHI9KHI9dC5lbC5xdWVyeVNlbGVjdG9yQWxsKEEuUF9DYXRlZ29yeV9JdGVtKyI6bm90KC5vdC12bmQtaXRlbSkiKSlbci5sZW5ndGgtMV07bj90LmFwcGVuZChvKToobj10LmVsLnF1ZXJ5U2VsZWN0b3IoQS5QX0xpX0hkcil8fHQuZWwucXVlcnlTZWxlY3RvcigiaDMiKXx8dC5lbC5xdWVyeVNlbGVjdG9yKCdwW2FyaWEtbGV2ZWw9IjMiXScpLCFlJiZuP20uaW5zZXJ0QWZ0ZXIobyxuKTpyP20uaW5zZXJ0QWZ0ZXIobyxyKTp0LmVsLmluc2VydEJlZm9yZShvLHQuZWwuZmlyc3RDaGlsZCkpfSxyLnByb3RvdHlwZS5hcHBlbmRIZWFsdGhTaWduYXR1cmVGb3JtVG9Hcm91cD1mdW5jdGlvbihlLHQpe3ZhciBvO2IucmVxdWlyZVNpZ25hdHVyZUVuYWJsZWQmJmUubmVlZHNIZWFsdGhTaWduYXR1cmUmJihvPUEuUF9BY2NfQ29udGFpbmVyLEwuUENMYXlvdXQuVGFiJiYobz0iI290LWRlc2MtaWQtIitlLkN1c3RvbUdyb3VwSWQpLHQ9dC5xdWVyeVNlbGVjdG9yKG8pLFpuLmdldEluc3RhbmNlKCkuZ2V0SGVhbHRoU2lnbmF0dXJlQ29tcG9uZW50KHQsZSkpfSxyLnByb3RvdHlwZS5hcHBlbmRWZW5kb3JDb3VudEVsZW1lbnQ9ZnVuY3Rpb24oZSx0KXt2YXIgbyxuLHI9LTE8ZS5TdWJHcm91cHMuZmluZEluZGV4KGZ1bmN0aW9uKGUpe3JldHVybiBlLklzSWFiUHVycG9zZX0pO3JldHVybiBiLmlzVGNmVjJUZW1wbGF0ZSYmKGUuSXNJYWJQdXJwb3NlfHxyKSYmKG49dm9pZCAwLG49ZS5UeXBlIT09ay5Hcm91cFR5cGVzLlN0YWNrJiZlLlR5cGUhPT1rLkdyb3VwVHlwZXMuQnVuZGxlJiZlLlR5cGUhPT1rLkdyb3VwVHlwZXMuQ29va2llP3RoaXMuZ2V0QWN0aXZlVmVuZG9yQ291bnQoZSk6KG89IiIsbz0hZS5Jc0lhYlB1cnBvc2UmJnI/ZS5DdXN0b21Hcm91cElkOmUuSWFiR3JwSWQsdGhpcy5nZXRBY3RpdmVWZW5kb3JDb3VudEZvclN0YWNrKG8pKSx0Kz10aGlzLmdldFZlbmRvckNvdW50RWwobixlLlR5cGUpKSx0fSxyLnByb3RvdHlwZS5zZXRQb3B1cERhdGE9ZnVuY3Rpb24oZSx0KXtiLnBjTmFtZT09PWl0JiYoZS5TaG93VmVuZG9yTGlzdCYmYi5pc0lhYjJvcnYyVGVtcGxhdGU/KFAucmVtb3ZlQ2hpbGQodC5xdWVyeVNlbGVjdG9yKCJwOm5vdCgub3QtYWx3YXlzLWFjdGl2ZSkiKSksUC5yZW1vdmVDaGlsZCh0LnF1ZXJ5U2VsZWN0b3IoQS5QX0FjY19UeHQrIjpub3QoIitBLlBfQWNjX0NvbnRhaW5lcisiKSIpKSxlLlN1Ykdyb3Vwcy5sZW5ndGh8fFMuaXNWMlRlbXBsYXRlfHxQLnJlbW92ZUNoaWxkKHQucXVlcnlTZWxlY3RvcihBLlBfU3ViX0dycF9DbnRyKSkpOlAucmVtb3ZlQ2hpbGQodC5xdWVyeVNlbGVjdG9yKEEuUF9BY2NfQ29udGFpbmVyKSkpfSxyLnByb3RvdHlwZS5zZXRWZW5kb3JTZXJ2aWNlRGF0YT1mdW5jdGlvbihlLHQpe3ZhciBvLG49Yi5wY05hbWU7Xy5zaG93VmVuZG9yU2VydmljZSYmTC5WZW5kb3JTZXJ2aWNlQ29uZmlnLlBDVlNDYXRlZ29yeVZpZXcmJihvPUEuUF9BY2NfVHh0LG49PT1zdCYmKG89QS5QX0Rlc2NfQ29udGFpbmVyKSxuPXQucXVlcnlTZWxlY3RvcihvKSxMLlBDQWNjb3JkaW9uU3R5bGU9PT1jZS5Ob0FjY29yZGlvbiYmKG49dCksdy5pbnNlcnRWZW5kb3JTZXJ2aWNlSHRtbChlLG4pKX0sci5wcm90b3R5cGUuanNvbkFkZEFib3V0Q29va2llcz1mdW5jdGlvbihlKXt2YXIgdD17fTtyZXR1cm4gdC5Hcm91cE5hbWU9ZS5BYm91dENvb2tpZXNUZXh0LHQuR3JvdXBEZXNjcmlwdGlvbj1lLk1haW5JbmZvVGV4dCx0LlNob3dJblBvcHVwPSEwLHQuT3JkZXI9MCx0LklzQWJvdXRHcm91cD0hMCx0fSxyLnByb3RvdHlwZS5zZXRWZW5kb3JMaXN0QnRuPWZ1bmN0aW9uKGUsdCxvLG4scixpKXt2YXIgcyxhLGw9Yi5wY05hbWU7bi5TaG93VmVuZG9yTGlzdD8ocz1hPXZvaWQgMCxTLmlzVjJUZW1wbGF0ZT9hPShzPUUudkxpc3RFbC5jbG9uZU5vZGUoITApKS5xdWVyeVNlbGVjdG9yKCIuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXIiKTpzPShhPWUucXVlcnlTZWxlY3RvcigiLmNhdGVnb3J5LXZlbmRvcnMtbGlzdC1oYW5kbGVyIikpLnBhcmVudEVsZW1lbnQsYS5zZXRBdHRyaWJ1dGUoImRpciIsImx0ciIpLGEuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChpLlZlbmRvckxpc3RUZXh0KSxhLnNldEF0dHJpYnV0ZSh0aGlzLl9hcmlhTGFiZWwsTC5QQ09wZW5zVmVuZG9yRGV0YWlsc0FsZXJ0KSxhLnNldEF0dHJpYnV0ZSgiZGF0YS1wYXJlbnQtaWQiLG4uQ3VzdG9tR3JvdXBJZCksQi5zZXRJQUJMZWdhbExpbmsoYSxuLGkpLFMuaXNWMlRlbXBsYXRlJiYoYT1lLGw9PT1zdD9hPWUucXVlcnlTZWxlY3RvcigiIitBLlBfRGVzY19Db250YWluZXIpOmkuUENlbnRlckVuYWJsZUFjY29yZGlvbiYmKGE9ZS5xdWVyeVNlbGVjdG9yKEEuUF9BY2NfVHh0KSksYS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIscykpLHImJnIuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmViZWdpbiIscykpOlMuaXNWMlRlbXBsYXRlfHwobCE9PXJ0JiZsIT09b3R8fGkuUENlbnRlckVuYWJsZUFjY29yZGlvbj8obD09PWl0fHxsPT09cnR8fGw9PT1vdCYmaS5QQ2VudGVyRW5hYmxlQWNjb3JkaW9uKSYmKG49dCgiI3ZlbmRvci1saXN0LWNvbnRhaW5lciIpLGE9ZS5xdWVyeVNlbGVjdG9yKEEuUF9BY2NfVHh0KSxuJiZvLnF1ZXJ5U2VsZWN0b3IoIiIrQS5QX0NvbnRlbnQpLnJlbW92ZUNoaWxkKG4pLFMuaXNWMlRlbXBsYXRlfHx2KGEpLmVsLnJlbW92ZUNoaWxkKGEucXVlcnlTZWxlY3RvcihBLlBfVmVuX0xzdF9DbnRyKSkpOlAucmVtb3ZlQ2hpbGQoZS5xdWVyeVNlbGVjdG9yKEEuUF9WZW5fTHN0X0NudHIpKSxsIT09c3QmJmwhPT1udCl8fChyPWUucXVlcnlTZWxlY3RvcihBLlBfVmVuX0xzdF9DbnRyKSkmJnIucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChyKX0sci5wcm90b3R5cGUuc2V0SUFCTGVnYWxMaW5rPWZ1bmN0aW9uKGUsdCxvKXt2YXIgbixyO2IuaXNUY2ZWMlRlbXBsYXRlP2xyLmFkZElsbHVzdHJhdGlvbnNMaW5rKGUsdCx0LlNob3dWZW5kb3JMaXN0KTpvLlBDR3JwRGVzY1R5cGU9PT1yZS5Vc2VyRnJpZW5kbHkmJih0PXZvaWQgMCxuPSExLEwuQmFubmVyUmVxdWlyZUV4dGVybmFsTGlua3MmJihTLmZwLkNNUEljb25TcHJpdGUmJkwuT1RFeHRlcm5hbExpbmtMb2dvJiYhTC5CYW5uZXJFeHRlcm5hbExpbmtzTG9nbyYmKG49ITAscj1JLnVwZGF0ZUNvcnJlY3RVcmwoTC5PVEV4dGVybmFsTGlua0xvZ28pLHI9TC5CYW5uZXJFeHRlcm5hbExpbmtzTG9nbz9JLnVwZGF0ZUNvcnJlY3RVcmwoTC5CYW5uZXJFeHRlcm5hbExpbmtzTG9nbyk6cix0PSI8c3ZnIGNsYXNzPSdvdC1leHQtbG5rJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXNlIGhyZWY9JyMiK25ldyBVUkwocix3aW5kb3cubG9jYXRpb24ub3JpZ2luKS5wYXRobmFtZS5zcGxpdCgiLyIpLnBvcCgpLnNwbGl0KCIuIikuc2hpZnQoKSsiJz48L3VzZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4iKSxMLkJhbm5lclJlcXVpcmVFeHRlcm5hbExpbmtzKSYmbiYmZS5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyZW5kIixtLmdldElubmVySHRtbENvbnRlbnQodCkpLHI9TC5CYW5uZXJSZXF1aXJlRXh0ZXJuYWxMaW5rcyYmIW4sZS5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyZW5kIixtLmdldElubmVySHRtbENvbnRlbnQoIjxhIGhyZWY9JyIrTC5JYWJMZWdhbFRleHRVcmwrIj9sYW5nPSIrXy5jb25zZW50TGFuZ3VhZ2UrJ1wnXG4gICAgICAgICAgICAgICAgICAgICAgICByZWw9Im5vb3BlbmVyIiAnKyhyPydjbGFzcz0ib3QtZXh0LWxuayInOiIiKSsiIHRhcmdldD0nX2JsYW5rJz4mbmJzcDt8Jm5ic3A7IitvLlBDVmVuZG9yRnVsbExlZ2FsVGV4dCsnJm5ic3A7PHNwYW4gY2xhc3M9Im90LXNjcm4tcmRyIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICcrTC5OZXdXaW5UeHQrIjwvc3Bhbj48L2E+IikpKX0sci5wcm90b3R5cGUuc2V0SG9zdExpc3RCdG49ZnVuY3Rpb24oZSx0LG8sbil7dmFyIHIsaT1iLnBjTmFtZSxzPSExLGE9KEwuc2hvd0Nvb2tpZUxpc3QmJihzPS0xPFAuZmluZEluZGV4KFUobi5TdWJHcm91cHMsW25dKSxmdW5jdGlvbihlKXtyZXR1cm4tMT09PV90LmluZGV4T2YoZS5UeXBlKSYmZS5GaXJzdFBhcnR5Q29va2llcy5sZW5ndGh9KSksXy5zaG93R2VuZXJhbFZlbmRvcnMmJm4uR2VuZXJhbFZlbmRvcnNJZHMmJm4uR2VuZXJhbFZlbmRvcnNJZHMubGVuZ3RoKTshXy5zaG93VmVuZG9yU2VydmljZSYmKEwuc2hvd0Nvb2tpZUxpc3R8fF8uc2hvd0dlbmVyYWxWZW5kb3JzKSYmKG4uU2hvd0hvc3RMaXN0fHxzfHxhKT8ocz12b2lkIDAsUy5pc1YyVGVtcGxhdGU/KHM9KGE9RS5jTGlzdEVsLmNsb25lTm9kZSghMCkpLnF1ZXJ5U2VsZWN0b3IoIi5jYXRlZ29yeS1ob3N0LWxpc3QtaGFuZGxlciIpLHI9ZSxpPT09c3Q/cj1lLnF1ZXJ5U2VsZWN0b3IoIiIrQS5QX0Rlc2NfQ29udGFpbmVyKTpMLlBDZW50ZXJFbmFibGVBY2NvcmRpb24mJihyPWUucXVlcnlTZWxlY3RvcihBLlBfQWNjX1R4dCkpLHIuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLGEpKTpzPWUucXVlcnlTZWxlY3RvcigiLmNhdGVnb3J5LWhvc3QtbGlzdC1oYW5kbGVyIiksQi5zZXRjTGlzdEhhbmRsZXIocyxuKSk6Qi5zZXRIb3N0TGlzdFZlbmRvckxpc3QodCxvLGUpfSxyLnByb3RvdHlwZS5zZXRjTGlzdEhhbmRsZXI9ZnVuY3Rpb24oZSx0KXt2YXIgbyxuO2UmJihvPShuPUIuc2V0Y0xpc3RIZWFkZXJUaXRsZUFuZFNjcmVlblJlYWRlcigpKVswXSxuPW5bMV0sZS5zZXRBdHRyaWJ1dGUoImRpciIsImx0ciIpLGUuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChvKSxlLnNldEF0dHJpYnV0ZSh0aGlzLl9hcmlhTGFiZWwsdC5Hcm91cE5hbWUrIiAtICIrbiksZS5zZXRBdHRyaWJ1dGUoImRhdGEtcGFyZW50LWlkIix0LkN1c3RvbUdyb3VwSWQpKX0sci5wcm90b3R5cGUuc2V0Y0xpc3RIZWFkZXJUaXRsZUFuZFNjcmVlblJlYWRlcj1mdW5jdGlvbigpe3ZhciBlLHQ9Xy5zaG93VHJhY2tpbmdUZWNoPyhlPUwuQWRkaXRpb25hbFRlY2hub2xvZ2llc0NvbmZpZy5QQ1RlY2hEZXRhaWxzVGV4dCxMLkFkZGl0aW9uYWxUZWNobm9sb2dpZXNDb25maWcuUENUZWNoRGV0YWlsc0FyaWFMYWJlbCk6Xy5zaG93R2VuZXJhbFZlbmRvcnM/KGU9TC5Hcm91cEdlblZlbkxpc3RMYWJlbCxMLlBDZW50ZXJWZW5kb3JMaXN0U2NyZWVuUmVhZGVyKTooZT1MLlRoaXJkUGFydHlDb29raWVMaXN0VGV4dCxMLlBDT3BlbnNDb29raWVzRGV0YWlsc0FsZXJ0KTtyZXR1cm5bZSx0XX0sci5wcm90b3R5cGUuc2V0SG9zdExpc3RWZW5kb3JMaXN0PWZ1bmN0aW9uKGUsdCxvKXt2YXIgbjtiLnBjTmFtZT09PWl0PyhlPWUoIiN2ZW5kb3ItbGlzdC1jb250YWluZXIiKSxuPW8ucXVlcnlTZWxlY3RvcihBLlBfQWNjX1R4dCksZSYmdC5xdWVyeVNlbGVjdG9yKCIiK0EuUF9Db250ZW50KS5yZW1vdmVDaGlsZChlKSxuLnF1ZXJ5U2VsZWN0b3IoQS5QX0hvc3RfTHN0X2NudHIpJiZ2KG4pLmVsLnJlbW92ZUNoaWxkKG4ucXVlcnlTZWxlY3RvcihBLlBfSG9zdF9Mc3RfY250cikpKToodD1vLnF1ZXJ5U2VsZWN0b3IoQS5QX0hvc3RfTHN0X2NudHIpKSYmdC5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKHQpfSxyLnByb3RvdHlwZS5zZXRTdWJHcm91cERhdGE9ZnVuY3Rpb24oZSx0LG8sbil7dmFyIHI7MDxlLlN1Ykdyb3Vwcy5sZW5ndGgmJmUuU2hvd1N1Ymdyb3VwJiYocj1iLnBjTmFtZT09PWl0JiZlLlNob3dWZW5kb3JMaXN0JiZiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmIUwuUENUZW1wbGF0ZVVwZ3JhZGUsQi5zZXRTdWJHcnBzKGUscj9vOm4sdCxMKSl9LHIucHJvdG90eXBlLnNldFN1YkdycHM9ZnVuY3Rpb24odCxvLG4scil7dmFyIGU7Yi5wY05hbWU9PT1pdCYmdC5TaG93VmVuZG9yTGlzdCYmYi5pc0lhYjJvcnYyVGVtcGxhdGUmJiFMLlBDVGVtcGxhdGVVcGdyYWRlJiYoZT1uLnF1ZXJ5U2VsZWN0b3IoQS5QX1N1Yl9HcnBfQ250cikpLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZSksdC5TdWJHcm91cHMuZm9yRWFjaChmdW5jdGlvbihlKXtCLnNldFN1Ykdyb3Vwcyh7Z3JvdXA6dCxzdWJncm91cDplLGdycEVsOm4sc3ViR3JwRWw6byxqc29uOnJ9KX0pfSxyLnByb3RvdHlwZS5zZXRTdWJHcm91cHM9ZnVuY3Rpb24oZSl7dmFyIHQsbz1lLmdyb3VwLG49ZS5zdWJncm91cCxyPWUuZ3JwRWwsaT1lLnN1YkdycEVsLGU9ZS5qc29uLHM9Yi5wY05hbWUsYT1CLmdldFJlbW92ZUNvbnNlbnRUb2dnbGUobiksaT0oUy5pc1YyVGVtcGxhdGU/aTppLmVsKS5jbG9uZU5vZGUoITApLGw9aS5xdWVyeVNlbGVjdG9yKEEuUF9TdWJncF91bCksYz1pLnF1ZXJ5U2VsZWN0b3IoQS5QX1N1YmdycF9saSkuY2xvbmVOb2RlKCEwKSxkPW4uQ3VzdG9tR3JvdXBJZCx1PSJvdC1zdWItZ3JvdXAtaWQtIitkLHA9RC5nZXRHcnBTdGF0dXMobikudG9Mb3dlckNhc2UoKSxDPWMucXVlcnlTZWxlY3RvcignLmNvb2tpZS1zdWJncm91cD5oNCwgLmNvb2tpZS1zdWJncm91cD5oNSxcbiAgICAgICAgICAgIC5jb29raWUtc3ViZ3JvdXA+aDYsIC5vdC1zdWJncnA+aDQsXG4gICAgICAgICAgICAub3Qtc3ViZ3JwPmg1LCAub3Qtc3ViZ3JwPmg2LCAuY29va2llLXN1Ymdyb3VwPnBbYXJpYS1sZXZlbD0iNCJdLCAuY29va2llLXN1Ymdyb3VwPnBbYXJpYS1sZXZlbD0iNSJdLFxuICAgICAgICAgICAgLmNvb2tpZS1zdWJncm91cD5wW2FyaWEtbGV2ZWw9IjYiXSwgLm90LXN1YmdycD5wW2FyaWEtbGV2ZWw9IjQiXSxcbiAgICAgICAgICAgIC5vdC1zdWJncnA+cFthcmlhLWxldmVsPSI1Il0sIC5vdC1zdWJncnA+cFthcmlhLWxldmVsPSI2Il0nKSxnPWMucXVlcnlTZWxlY3RvcihBLlBfVGdsX0NudHIpLGQ9KGMuc2V0QXR0cmlidXRlKCJkYXRhLW9wdGFub25ncm91cGlkIixkKSxTLmlzVjJUZW1wbGF0ZT8oKHQ9Qi5nZXRJbnB1dEVsZSgpKS5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLnNldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIsZCksdC5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLmNsYXNzTGlzdC5hZGQoImNvb2tpZS1zdWJncm91cC1oYW5kbGVyIiksdD10LmNsb25lTm9kZSghMCksZy5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsdCkpOih0PWMucXVlcnlTZWxlY3RvcigiLm90LXRvZ2dsZSIpKS5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLnNldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIsZCksdihpLnF1ZXJ5U2VsZWN0b3IoQS5QX1N1YmdwX3VsKSkuaHRtbCgiIiksQi5hZGRTdWJncm91cE5hbWUobixDKSxCLnNldERhdGFJZlZlbmRvclNlcnZpY2VFbmFibGVkKEMsYyx0KSx0LnF1ZXJ5U2VsZWN0b3IoImlucHV0Iikuc2V0QXR0cmlidXRlKCJpZCIsdSksdC5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLnNldEF0dHJpYnV0ZSh0aGlzLl9hcmlhTGFiZWwsbi5Hcm91cE5hbWUpLHQucXVlcnlTZWxlY3RvcigibGFiZWwiKS5zZXRBdHRyaWJ1dGUoImZvciIsdSksQi5zZXRTdWJHcm91cERlc2NyaXB0aW9uKHtqc29uOmUsZ3JvdXA6byxzdWJncm91cDpuLHN1Ykdyb3VwQ2xvbmU6Y30pLGIuaXNUY2ZWMlRlbXBsYXRlJiZsci5hZGRJbGx1c3RyYXRpb25zTGluayhjLG4sby5TaG93VmVuZG9yTGlzdCwhMCksVShPdCxFdCkpO28uU2hvd1N1Ymdyb3VwVG9nZ2xlJiYtMTxkLmluZGV4T2Yobi5UeXBlKT9CLnNldFN1Ykdyb3VwVG9nZ2xlKHtpZDp1LHN1Ykdyb3VwQ2xvbmU6Yyxncm91cDpvLHN1Ymdyb3VwOm4sdG9nZ2xlR3JvdXA6Z30pOnA9PT1mLkFMV0FZU19BQ1RJVkUmJihvLlNob3dTdWJncm91cFRvZ2dsZXx8LTE9PT1EdC5pbmRleE9mKG4uVHlwZSkpfHwoYT0hMCksQi5zZXRTdWJHcm91cHNQcm9wZXJ0aWVzKHtyZW1vdmVDb25zZW50VG9nZ2xlOmEsc3ViR3JvdXBUb2dnbGU6dCxzdWJHcm91cENsb25lOmMsc3RhdHVzOnAsc3ViZ3JvdXA6bixncnBFbDpyLHBjTmFtZTpzLGpzb246ZSxzdWJHcnBFbENsb25lOmksdWxQYXJlbnRDb250YWluZXJFbGU6bH0pfSxyLnByb3RvdHlwZS5nZXRSZW1vdmVDb25zZW50VG9nZ2xlPWZ1bmN0aW9uKGUpe3ZhciB0PSExO3JldHVybiB0PWIuaXNJYWIyb3J2MlRlbXBsYXRlJiZlLlR5cGU9PT1rLkdyb3VwVHlwZXMuUHVyJiYhZS5IYXNDb25zZW50T3B0T3V0PyEwOnR9LHIucHJvdG90eXBlLmFkZFN1Ymdyb3VwTmFtZT1mdW5jdGlvbihlLHQpe3ZhciBvLG49ZS5Hcm91cE5hbWU7Yi5pc1RjZlYyVGVtcGxhdGUmJmUuSXNJYWJQdXJwb3NlJiYobz10aGlzLmdldEFjdGl2ZVZlbmRvckNvdW50KGUpLG4rPXRoaXMuZ2V0VmVuZG9yQ291bnRFbChvLGUuVHlwZSkpLHYodCkuaHRtbChuKX0sci5wcm90b3R5cGUuc2V0RGF0YUlmVmVuZG9yU2VydmljZUVuYWJsZWQ9ZnVuY3Rpb24oZSx0LG8pe3ZhciBuO18uc2hvd1ZlbmRvclNlcnZpY2UmJigobj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuY2xhc3NMaXN0LmFkZCgib3QtYWNjLWhkciIpLGUuY2xhc3NMaXN0LmFkZCgib3QtY2F0LWhlYWRlciIpLG4uYXBwZW5kQ2hpbGQoZSksZT0iYWZ0ZXJiZWdpbiIsTC5QQ0NhdGVnb3J5U3R5bGU9PT12ZS5Ub2dnbGUmJihlPSJiZWZvcmVlbmQiKSxuLmluc2VydEFkamFjZW50RWxlbWVudChlLG8pLHQucmVtb3ZlQ2hpbGQodC5xdWVyeVNlbGVjdG9yKEEuUF9TdWJncnBfVGdsX0NudHIpKSx0Lmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJiZWdpbiIsbikpfSxyLnByb3RvdHlwZS5zZXRTdWJHcm91cERlc2NyaXB0aW9uPWZ1bmN0aW9uKGUpe3ZhciB0LG89ZS5qc29uLG49ZS5ncm91cCxyPWUuc3ViZ3JvdXAsZT1lLnN1Ykdyb3VwQ2xvbmUsaT1iLnBjTmFtZSxzPW8uUENHcnBEZXNjVHlwZT09PXJlLkxlZ2FsLGk9aT09PWl0JiZuLlNob3dWZW5kb3JMaXN0JiZiLmlzSWFiMm9ydjJUZW1wbGF0ZSxhPXYoZS5xdWVyeVNlbGVjdG9yKEEuUF9TdWJncnBfRGVzYykpO2k/KHQ9ci5EZXNjcmlwdGlvbkxlZ2FsJiZzP3IuRGVzY3JpcHRpb25MZWdhbDpyLkdyb3VwRGVzY3JpcHRpb24sYS5odG1sKHQpKToodD1WLnNhZmVGb3JtYXR0ZWRHcm91cERlc2NyaXB0aW9uKHIpLGk9ITEsLTE8VnQuaW5kZXhPZihyLlR5cGUpJiZzJiYoaT0hMCx0PXIuRGVzY3JpcHRpb25MZWdhbCksby5QQ2VudGVyRW5hYmxlQWNjb3JkaW9uJiZpfHwoYT12KGUucXVlcnlTZWxlY3RvcigicCIpKSksbi5TaG93U3ViR3JvdXBEZXNjcmlwdGlvbj9hLmh0bWwodCk6YS5odG1sKCIiKSl9LHIucHJvdG90eXBlLnNldFN1Ykdyb3VwVG9nZ2xlPWZ1bmN0aW9uKGUpe3ZhciB0PWUuaWQsbz1lLnN1Ykdyb3VwQ2xvbmUsbj1lLmdyb3VwLHI9ZS5zdWJncm91cCxlPWUudG9nZ2xlR3JvdXAsaT1WLmlzR3JvdXBBY3RpdmUociksbj0oQi5zZXRTdWJHcm91cEFjdGl2ZSh7Z3JvdXA6bixzdWJncm91cDpyLHN1Ykdyb3VwQ2xvbmU6b30saSksZS5xdWVyeVNlbGVjdG9yKCIub3QtbGFiZWwtc3RhdHVzIikpO0wuUENTaG93Q29uc2VudExhYmVscz9uLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoaT9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KTpQLnJlbW92ZUNoaWxkKG4pLGIubGVnSW50U2V0dGluZ3MuUEFsbG93TEkmJnIuVHlwZT09PWsuR3JvdXBUeXBlcy5QdXImJnIuSGFzTGVnSW50T3B0T3V0JiYoYi5sZWdJbnRTZXR0aW5ncy5QU2hvd0xlZ0ludEJ0bj9CLnNldExlZ0ludEJ1dHRvbihvLHIpOihpPWUuY2xvbmVOb2RlKCEwKSxlLmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJlbmQiLGkpLG49aS5xdWVyeVNlbGVjdG9yKCIub3QtbGFiZWwtc3RhdHVzIiksKG89aS5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpKS5zZXRBdHRyaWJ1dGUoImlkIix0KyItbGVnLW91dCIpLGkucXVlcnlTZWxlY3RvcigibGFiZWwiKS5zZXRBdHRyaWJ1dGUoImZvciIsdCsiLWxlZy1vdXQiKSxyLklzTGVnSW50VG9nZ2xlPSEwLGU9Vi5pc0dyb3VwQWN0aXZlKHIpLEwuUENTaG93Q29uc2VudExhYmVscz9uLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoZT9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KTpQLnJlbW92ZUNoaWxkKG4pLFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLG8sZSksci5Jc0xlZ0ludFRvZ2dsZT0hMSkpfSxyLnByb3RvdHlwZS5zZXRTdWJHcm91cEFjdGl2ZT1mdW5jdGlvbihlLHQpe3ZhciBvO3QmJih0PWUuZ3JvdXAsbz1lLnN1Ymdyb3VwLGU9ZS5zdWJHcm91cENsb25lLHQ9RC5nZXRHcnBTdGF0dXModCkudG9Mb3dlckNhc2UoKSxlLnF1ZXJ5U2VsZWN0b3IoImlucHV0Iikuc2V0QXR0cmlidXRlKCJjaGVja2VkIiwiIiksdD09PWYuQUxXQVlTX0FDVElWRSkmJi0xPT09VnQuaW5kZXhPZihvLlR5cGUpJiYoZS5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLmRpc2FibGVkPSEwLGUucXVlcnlTZWxlY3RvcigiaW5wdXQiKS5zZXRBdHRyaWJ1dGUoImRpc2FibGVkIiwidHJ1ZSIpKX0sci5wcm90b3R5cGUuc2V0U3ViR3JvdXBzUHJvcGVydGllcz1mdW5jdGlvbihlKXt2YXIgdD1lLnJlbW92ZUNvbnNlbnRUb2dnbGUsbz1lLnN1Ykdyb3VwVG9nZ2xlLG49ZS5zdWJHcm91cENsb25lLHI9ZS5zdGF0dXMsaT1lLnN1Ymdyb3VwLHM9ZS5ncnBFbCxhPWUucGNOYW1lLGw9ZS5qc29uLGM9ZS5zdWJHcnBFbENsb25lLGU9ZS51bFBhcmVudENvbnRhaW5lckVsZTt0JiYoby5jbGFzc0xpc3QuYWRkKCJvdC1oaWRlLXRnbCIpLG8ucXVlcnlTZWxlY3RvcigiaW5wdXQiKS5zZXRBdHRyaWJ1dGUodGhpcy5fYXJpYUhpZGRlbiwidHJ1ZSIpKSxyIT09Zi5BTFdBWVNfQUNUSVZFJiZyIT09Zi5BTFdBWVNfSU5BQ1RJVkV8fHR8fChvJiZvLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQobyksKHQ9bi5xdWVyeVNlbGVjdG9yKEEuUF9UZ2xfQ250cikpJiZ0LmNsYXNzTGlzdC5hZGQoIm90LWFsd2F5cy1hY3RpdmUtc3ViZ3JvdXAiKSxCLnNldEFsd2F5c0FjdGl2ZShuLCEwLHI9PT1mLkFMV0FZU19JTkFDVElWRSkpLCJDT09LSUUiPT09aS5UeXBlJiYtMSE9PWkuUGFyZW50LmluZGV4T2YoIlNUQUNLIikmJmQoYywiZGlzcGxheTogbm9uZTsiKSx2KGUpLmFwcGVuZChuKSxTLmlzVjJUZW1wbGF0ZT8obz1zLCJvdFBjVGFiIj09PWE/bz1zLnF1ZXJ5U2VsZWN0b3IoIiIrQS5QX0Rlc2NfQ29udGFpbmVyKTpsLlBDZW50ZXJFbmFibGVBY2NvcmRpb24mJihvPXMucXVlcnlTZWxlY3RvcihBLlBfQWNjX1R4dCkpLG8uaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLGMpKToodD1zLnF1ZXJ5U2VsZWN0b3IoQS5QX0NhdGVnb3J5X0l0ZW0rIiAiK0EuUF9WZW5fTHN0X0NudHIpKSYmdC5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWJlZ2luIixjKSxfLnNob3dWZW5kb3JTZXJ2aWNlJiZMLlZlbmRvclNlcnZpY2VDb25maWcuUENWU0NhdGVnb3J5VmlldyYmdy5pbnNlcnRWZW5kb3JTZXJ2aWNlSHRtbChpLGUpfSxyLnByb3RvdHlwZS5nZXRJbnB1dEVsZUZvckNhdGVnb3J5PWZ1bmN0aW9uKGUpe3JldHVybiBfLnNob3dWZW5kb3JTZXJ2aWNlJiZMLlBDQ2F0ZWdvcnlTdHlsZT09PXZlLkNoZWNrYm94JiZlLmNsYXNzTGlzdC5hZGQoIm90LWNoZWNrYm94LWNvbnNlbnQiKSxCLmdldElucHV0RWxlKCl9LHIucHJvdG90eXBlLmdldElucHV0RWxlPWZ1bmN0aW9uKCl7cmV0dXJuIWIuaXNJYWIyb3J2MlRlbXBsYXRlJiZMLlBDVGVtcGxhdGVVcGdyYWRlP1luKCk6RS50b2dnbGVFbC5jbG9uZU5vZGUoITApfSxyLnByb3RvdHlwZS5zZXRUb2dnbGU9ZnVuY3Rpb24oZSx0LG8sbixyKXt2YXIgaT1CLmdldElucHV0RWxlRm9yQ2F0ZWdvcnkoZSkscz0oaS5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLmNsYXNzTGlzdC5hZGQoImNhdGVnb3J5LXN3aXRjaC1oYW5kbGVyIiksaS5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpKSxhPWUucXVlcnlTZWxlY3RvcihBLlBfQ2F0ZWdvcnlfSGVhZGVyKSxsPVYuaXNHcm91cEFjdGl2ZShvKSxjPVtmLkFMV0FZU19BQ1RJVkUsZi5BTFdBWVNfSU5BQ1RJVkVdLmluY2x1ZGVzKEQuZ2V0R3JwU3RhdHVzKG8pLnRvTG93ZXJDYXNlKCkpLGQ9by5PcHRhbm9uR3JvdXBJZC50b1N0cmluZygpLHU9ay5Hcm91cFR5cGVzLHA9ITA7IWIuaXNJYWIyb3J2MlRlbXBsYXRlfHxvLlR5cGUhPT11LlB1ciYmby5UeXBlIT09dS5TdGFja3x8by5IYXNDb25zZW50T3B0T3V0fHwocD0hMSksdihpLnF1ZXJ5U2VsZWN0b3IoImxhYmVsIikpLmF0dHIoImZvciIsbiksdihpLnF1ZXJ5U2VsZWN0b3IoIi5vdC1sYWJlbC10eHQiKSkuaHRtbChvLkdyb3VwTmFtZSk7Yi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSYmby5UeXBlPT09dS5QdXImJm8uSGFzTGVnSW50T3B0T3V0JiYoYi5sZWdJbnRTZXR0aW5ncy5QU2hvd0xlZ0ludEJ0bj9CLnNldExlZ0ludEJ1dHRvbihlLG8sITAsdCk6KHU9aS5jbG9uZU5vZGUoITApLG8uSXNMZWdJbnRUb2dnbGU9ITAsdD1WLmlzR3JvdXBBY3RpdmUobyksQz11LnF1ZXJ5U2VsZWN0b3IoIi5vdC1sYWJlbC1zdGF0dXMiKSxMLlBDU2hvd0NvbnNlbnRMYWJlbHM/Qy5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KHQ/TC5QQ0FjdGl2ZVRleHQ6TC5QQ0luYWN0aXZlVGV4dCk6UC5yZW1vdmVDaGlsZChDKSxvLklzTGVnSW50VG9nZ2xlPSExLFYuc2V0SW5wdXRJRCh1LnF1ZXJ5U2VsZWN0b3IoImlucHV0IiksbisiLWxlZy1vdXQiLGQsdCxyKSx2KHUucXVlcnlTZWxlY3RvcigibGFiZWwiKSkuYXR0cigiZm9yIixuKyItbGVnLW91dCIpLGEuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJhZnRlcmVuZCIsdSkpKTt2YXIgQz1pLnF1ZXJ5U2VsZWN0b3IoIi5vdC1sYWJlbC1zdGF0dXMiKSxkPShMLlBDU2hvd0NvbnNlbnRMYWJlbHM/Qy5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KGw/TC5QQ0FjdGl2ZVRleHQ6TC5QQ0luYWN0aXZlVGV4dCk6UC5yZW1vdmVDaGlsZChDKSxMLlBDQ2F0ZWdvcnlTdHlsZT09PXZlLlRvZ2dsZSk7dGhpcy5oaWRlVG9nZ2xlQ29udGFpbmVyKGMscCxkLGkpLHAmJnRoaXMuc2V0QWx3YXlzQWN0aXZlT3JUb2dnbGVJbnB1dChvLGUsaSxzLG4sciksQi5zZXROb0FjY29yZGlvbkhlYWRlcihlLGMpfSxyLnByb3RvdHlwZS5zZXROb0FjY29yZGlvbkhlYWRlcj1mdW5jdGlvbihlLHQpe3ZhciBvLG4scixpOyFiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmTC5QQ1RlbXBsYXRlVXBncmFkZSYmKG89TC5QQ0NhdGVnb3J5U3R5bGU9PT12ZS5DaGVja2JveCxMLlBDQWNjb3JkaW9uU3R5bGU9PT1jZS5Ob0FjY29yZGlvbikmJm8mJigobz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuY2xhc3NMaXN0LmFkZCgib3QtYWNjLWhkciIpLG49ZS5xdWVyeVNlbGVjdG9yKCIub3QtY2hrYm94Iikscj1lLnF1ZXJ5U2VsZWN0b3IoIi5vdC1hbHdheXMtYWN0aXZlIiksaT1lLnF1ZXJ5U2VsZWN0b3IoQS5QX0NhdGVnb3J5X0hlYWRlciksbiYmby5hcHBlbmRDaGlsZChuKSxvLmFwcGVuZENoaWxkKGkpLHQmJm8uYXBwZW5kQ2hpbGQociksZS5pbnNlcnRCZWZvcmUobyxlLmZpcnN0Q2hpbGQpKX0sci5wcm90b3R5cGUuaGlkZVRvZ2dsZUNvbnRhaW5lcj1mdW5jdGlvbihlLHQsbyxuKXshZSYmdHx8IW98fChuLmNsYXNzTGlzdC5hZGQoIm90LWhpZGUtdGdsIiksbi5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLnNldEF0dHJpYnV0ZSh0aGlzLl9hcmlhSGlkZGVuLCJ0cnVlIikpfSxyLnByb3RvdHlwZS5zZXRBbHdheXNBY3RpdmVPclRvZ2dsZUlucHV0PWZ1bmN0aW9uKGUsdCxvLG4scixpKXt2YXIgcz0iYWx3YXlzIGFjdGl2ZSI9PT1ELmdldEdycFN0YXR1cyhlKS50b0xvd2VyQ2FzZSgpLGE9ImFsd2F5cyBpbmFjdGl2ZSI9PT1ELmdldEdycFN0YXR1cyhlKS50b0xvd2VyQ2FzZSgpLGw9TC5QQ0NhdGVnb3J5U3R5bGU9PT12ZS5Ub2dnbGUsYz1lLk9wdGFub25Hcm91cElkLnRvU3RyaW5nKCksZT1WLmlzR3JvdXBBY3RpdmUoZSksZD10LnF1ZXJ5U2VsZWN0b3IoQS5QX0NhdGVnb3J5X0hlYWRlcik7IWIuaXNJYWIyb3J2MlRlbXBsYXRlJiZMLlBDVGVtcGxhdGVVcGdyYWRlPygoc3x8YSkmJkwuUENTaG93QWx3YXlzQWN0aXZlVG9nZ2xlJiYoQi5zZXRBbHdheXNBY3RpdmUodCwhMSxhKSxvLnF1ZXJ5U2VsZWN0b3IoImlucHV0Iikuc2V0QXR0cmlidXRlKCJkaXNhYmxlZCIsInRydWUiKSkscyYmbHx8Qi5pbnNlcnRBY2NvcmRpb25JbnB1dEhlYWRlcihkLG8pLFYuc2V0SW5wdXRJRChuLHIsYyxlLGkpLEIuaW5zZXJ0QWNjb3JkaW9uUG9pbnRlcih0LGQpKTooQi5pbnNlcnRBY2NvcmRpb25Qb2ludGVyKHQsZCksc3x8YT9MLlBDU2hvd0Fsd2F5c0FjdGl2ZVRvZ2dsZSYmQi5zZXRBbHdheXNBY3RpdmUodCwhMSxhKTooQi5pbnNlcnRBY2NvcmRpb25JbnB1dEhlYWRlcihkLG8pLFYuc2V0SW5wdXRJRChuLHIsYyxlLGkpKSl9LHIucHJvdG90eXBlLnNldE9wdE91dFNpZ25hbFZpc2liaWxpdHk9ZnVuY3Rpb24oZSl7dmFyIHQ9Yi5ncGNFbmFibGVkJiZiLmdwY0ZvckFHcnBFbmFibGVkLG89Ty5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKSYmVi5pc0FueUdyb3VwT3B0ZWRPdXQoKTtMLlBDU2hvd09wdE91dFNpZ25hbCYmKHR8fG98fGIucHJldmlld01vZGUpP2UuY2xhc3NMaXN0LnJlbW92ZSgib3QtaGlkZSIpOmUuY2xhc3NMaXN0LmFkZCgib3QtaGlkZSIpfSxyLnByb3RvdHlwZS5zZXRPcHRPdXRTaWduYWxOb3RpZmljYXRpb249ZnVuY3Rpb24oZSl7ZT1JLmNyZWF0ZU9wdE91dFNpZ25hbEVsZW1lbnQoZSwhMCk7Qi5zZXRPcHRPdXRTaWduYWxWaXNpYmlsaXR5KGUpfSxyLnByb3RvdHlwZS5pbnNlcnRBY2NvcmRpb25JbnB1dEhlYWRlcj1mdW5jdGlvbihlLHQpe3ZhciBvPUIuZ2V0UG9zaXRpb25Gb3JJbnB1dEVsZSgpO2UuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KG8sdCl9LHIucHJvdG90eXBlLmdldFBvc2l0aW9uRm9ySW5wdXRFbGU9ZnVuY3Rpb24oKXt2YXIgZT0iYmVmb3JlYmVnaW4iO3JldHVybiBlPSFiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmTC5QQ1RlbXBsYXRlVXBncmFkZSYmTC5QQ0NhdGVnb3J5U3R5bGUhPT12ZS5Ub2dnbGU/ZToiYWZ0ZXJlbmQifSxyLnByb3RvdHlwZS5pbnNlcnRBY2NvcmRpb25Qb2ludGVyPWZ1bmN0aW9uKGUsdCl7dmFyIG8sbjtlLmNsYXNzTGlzdC5hZGQoIm90LXZzLWNvbmZpZyIpLEwuUENlbnRlckVuYWJsZUFjY29yZGlvbiYmKCFiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmTC5QQ1RlbXBsYXRlVXBncmFkZT8oZT1lLnF1ZXJ5U2VsZWN0b3IoQS5QX0FjY19IZWFkZXIpLG89bj12b2lkIDAsbj0oTC5QQ0FjY29yZGlvblN0eWxlPT09Y2UuQ2FyZXQ/KG89ImJlZm9yZWVuZCIsRS5hcnJvd0VsKToobz1MLlBDQ2F0ZWdvcnlTdHlsZT09PXZlLkNoZWNrYm94PyJiZWZvcmVlbmQiOiJhZnRlcmJlZ2luIixFLnBsdXNNaW51c0VsKSkuY2xvbmVOb2RlKCEwKSxlLmluc2VydEFkamFjZW50RWxlbWVudChvLG4pKTpMLlBDQWNjb3JkaW9uU3R5bGU9PT1jZS5DYXJldD90Lmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJlbmQiLEUuYXJyb3dFbC5jbG9uZU5vZGUoITApKTp0Lmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlYmVnaW4iLEUucGx1c01pbnVzRWwuY2xvbmVOb2RlKCEwKSkpfSxyLnByb3RvdHlwZS5zZXRUb2dnbGVQcm9wcz1mdW5jdGlvbihlLHQsbyxuLHIpe3ZhciBpPWUucXVlcnlTZWxlY3RvckFsbCgiaW5wdXQ6bm90KC5jb29raWUtc3ViZ3JvdXAtaGFuZGxlcikiKSxzPWUucXVlcnlTZWxlY3RvckFsbCgibGFiZWwiKSxhPVYuaXNHcm91cEFjdGl2ZShvKSxsPW8uQ3VzdG9tR3JvdXBJZCxjPWUucXVlcnlTZWxlY3RvcigiLmxhYmVsLXRleHQiKTtjJiZ2KGMpLmh0bWwoby5Hcm91cE5hbWUpO2Zvcih2YXIgZCx1LHAsQyxnPTA7ZzxpLmxlbmd0aDtnKyspc1tnXSYmdihzW2ddKS5hdHRyKCJmb3IiLG4pLDI8PWkubGVuZ3RoJiYwPT09Zz92KGlbZ10pLmF0dHIoImlkIixuKyItdG9nZ2xlIik6KGQ9dGhpcy5jYW5TaG93Q29uc2VudFRvZ2dsZShvKSx0aGlzLmNhblNob3dMZWdJbnRUb2dnbGUobykmJihiLmxlZ0ludFNldHRpbmdzLlBTaG93TGVnSW50QnRuP0Iuc2V0TGVnSW50QnV0dG9uKGUsbywhMCx0KTooQz0odT1lLnF1ZXJ5U2VsZWN0b3IoQS5QX1RnbF9DbnRyKyI6bm90KCIrQS5QX1N1YmdycF9UZ2xfQ250cisiKSIpfHxlLnF1ZXJ5U2VsZWN0b3IoIi5vdC10b2dnbGUiKSkuY2xvbmVOb2RlKCEwKSx1Lmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJlbmQiLEMpLHU9Qy5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLG8uSXNMZWdJbnRUb2dnbGU9ITAscD1WLmlzR3JvdXBBY3RpdmUobyksby5Jc0xlZ0ludFRvZ2dsZT0hMSxWLnNldElucHV0SUQodSxuKyItbGVnLW91dCIsbCxwLHIpLHYoQy5xdWVyeVNlbGVjdG9yKCJsYWJlbCIpKS5hdHRyKCJmb3IiLG4rIi1sZWctb3V0IiksUC5yZW1vdmVDaGlsZChDLnF1ZXJ5U2VsZWN0b3IoQS5QX0FycndfQ250cikpKSksdT1ELmdldEdycFN0YXR1cyhvKS50b0xvd2VyQ2FzZSgpPT09Zi5BTFdBWVNfQUNUSVZFLHA9RC5nZXRHcnBTdGF0dXMobykudG9Mb3dlckNhc2UoKT09PWYuQUxXQVlTX0lOQUNUSVZFLCF1JiZkfHwoQz1pW2ddLmNsb3Nlc3QoIi5vdC10b2dnbGUiKSkmJihDLmNsYXNzTGlzdC5hZGQoIm90LWhpZGUtdGdsIiksQy5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLnNldEF0dHJpYnV0ZSh0aGlzLl9hcmlhSGlkZGVuLCEwKSksZCYmKHUmJkIuc2V0QWx3YXlzQWN0aXZlKGUsITEscCksVi5zZXRJbnB1dElEKGlbZ10sbixsLGEscikpKX0sci5wcm90b3R5cGUuY2FuU2hvd0NvbnNlbnRUb2dnbGU9ZnVuY3Rpb24oZSl7dmFyIHQ9ITAsbz1rLkdyb3VwVHlwZXM7cmV0dXJuIHQ9IWIuaXNJYWIyb3J2MlRlbXBsYXRlfHxlLlR5cGUhPT1vLlB1ciYmZS5UeXBlIT09by5TdGFja3x8ZS5IYXNDb25zZW50T3B0T3V0P3Q6ITF9LHIucHJvdG90eXBlLmNhblNob3dMZWdJbnRUb2dnbGU9ZnVuY3Rpb24oZSl7dmFyIHQ9ay5Hcm91cFR5cGVzO3JldHVybiBiLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJJiZlLlR5cGU9PT10LlB1ciYmZS5IYXNMZWdJbnRPcHRPdXR9LHIucHJvdG90eXBlLnNldEFsd2F5c0FjdGl2ZT1mdW5jdGlvbihlLHQsbyl7dm9pZCAwPT09dCYmKHQ9ITEpLHZvaWQgMD09PW8mJihvPSExKTt2YXIgbixyPWIucGNOYW1lO3I9PT1pdHx8cj09PXN0fHx0PyhyPWUucXVlcnlTZWxlY3RvcihBLlBfVGdsX0NudHIpKSYmci5pbnNlcnRBZGphY2VudEVsZW1lbnQoImFmdGVyYmVnaW4iLHYoIjxkaXYgY2xhc3M9J290LWFsd2F5cy1hY3RpdmUnPiIrKG8/TC5BbHdheXNJbmFjdGl2ZVRleHQ6TC5BbHdheXNBY3RpdmVUZXh0KSsiPC9kaXY+IiwiY2UiKS5lbCk6KHI9Im90LXN0YXR1cy1pZC0iKyhyPW51bGw9PShuPXI9KHQ9ZS5xdWVyeVNlbGVjdG9yKEEuUF9DYXRlZ29yeV9IZWFkZXIpKS5pZCk/dm9pZCAwOm4uc3BsaXQoIi0iKVszXSksIVMuaXNWMlRlbXBsYXRlJiZMLlBDZW50ZXJFbmFibGVBY2NvcmRpb24mJihyPSJvdC1zdGF0dXMtaWQtIisocj1udWxsPT0obj1yPSh0PWUucXVlcnlTZWxlY3RvcihBLlBfQXJyd19DbnRyKSkuaWQpP3ZvaWQgMDpuLnNwbGl0KCItIilbM10pKSx2KHQpLmVsLmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJlbmQiLHYoJzxkaXYgaWQ9IicrcisiXCIgY2xhc3M9J290LWFsd2F5cy1hY3RpdmUnPiIrKG8/TC5BbHdheXNJbmFjdGl2ZVRleHQ6TC5BbHdheXNBY3RpdmVUZXh0KSsiPC9kaXY+IiwiY2UiKS5lbCkpLEwuUENlbnRlckVuYWJsZUFjY29yZGlvbj8obj1lLnF1ZXJ5U2VsZWN0b3IoQS5QX0FjY19IZWFkZXIpKSYmbi5jbGFzc0xpc3QuYWRkKCJvdC1hbHdheXMtYWN0aXZlLWdyb3VwIik6KCh0PWUucXVlcnlTZWxlY3RvcigiIitBLlBfRGVzY19Db250YWluZXIpKSYmdC5jbGFzc0xpc3QuYWRkKCJvdC1hbHdheXMtYWN0aXZlLWdyb3VwIiksZS5jbGFzc0xpc3QuYWRkKCJvdC1hbHdheXMtYWN0aXZlLWdyb3VwIikpfSxyLnByb3RvdHlwZS5zZXRQY1RhYkxheW91dD1mdW5jdGlvbihlLHQsbyl7dmFyIG4scj1lKCIub3QtdGFiLWRlc2MiKTsib3RQY1RhYiI9PT1iLnBjTmFtZSYmKG8mJmUoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ2F0ZWdvcnlfR3JwKS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImFmdGVyYmVnaW4iLG8pLHImJjY0MDx3aW5kb3cuaW5uZXJXaWR0aCYmdihyKS5hcHBlbmQodC5xdWVyeVNlbGVjdG9yQWxsKCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0Rlc2NfQ29udGFpbmVyKSksTC5Jc0lhYkVuYWJsZWQ/KG49ZShBLlBfRGVzY19Db250YWluZXIrIiAuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXIiKSkmJihuLnNldEF0dHJpYnV0ZSgiZGlyIiwibHRyIiksbi5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KEwuVmVuZG9yTGlzdFRleHQpKToobj1lKEEuUF9EZXNjX0NvbnRhaW5lcisiIC5jYXRlZ29yeS12ZW5kb3JzLWxpc3QtaGFuZGxlciIpKSYmbi5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKG4pKX0sci5wcm90b3R5cGUuc2V0VmVuZG9yTGlzdENsYXNzPWZ1bmN0aW9uKGUsdCl7Uy5pc1YyVGVtcGxhdGU/TC5QQ0FjY29yZGlvblN0eWxlPT09Y2UuQ2FyZXQmJih2KGUoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0xpc3QpKS5hZGRDbGFzcygib3QtZW5ibC1jaHIiKSxMLlBDZW50ZXJFbmFibGVBY2NvcmRpb24pJiZ2KGUoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ29udGVudCkpLmFkZENsYXNzKCJvdC1lbmJsLWNociIpOnYodC5xdWVyeVNlbGVjdG9yKEEuUF9TdWJfR3JwX0NudHIpKS5yZW1vdmUoKX0sci5wcm90b3R5cGUuc2V0UENIZWFkZXI9ZnVuY3Rpb24oZSx0KXt2YXIgbz1iLnBjTmFtZSxuPWUoQS5QX0xpX0hkcil8fHQucXVlcnlTZWxlY3RvcihBLlBfTGlfSGRyKTtiLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJJiZiLmdycENvbnRhaW5MZWdhbE9wdE91dCYmYi5pc0lhYjJvcnYyVGVtcGxhdGUmJiFiLmxlZ0ludFNldHRpbmdzLlBTaG93TGVnSW50QnRuPyhuLnF1ZXJ5U2VsZWN0b3IoInNwYW46Zmlyc3QtY2hpbGQiKS5pbm5lclRleHQ9TC5Db25zZW50VGV4dCxuLnF1ZXJ5U2VsZWN0b3IoInNwYW46bGFzdC1jaGlsZCIpLmlubmVyVGV4dD1MLkxlZ2l0SW50ZXJlc3RUZXh0LFMuaXNWMlRlbXBsYXRlJiYobi5xdWVyeVNlbGVjdG9yKCJzcGFuOmZpcnN0LWNoaWxkIikuaW5uZXJUZXh0PUwuUENlbnRlckNvbnNlbnRUZXh0LG4ucXVlcnlTZWxlY3Rvcigic3BhbjpsYXN0LWNoaWxkIikuaW5uZXJUZXh0PUwuUENlbnRlckxlZ0ludENvbHVtbkhlYWRlciksTC5QQ2VudGVyRW5hYmxlQWNjb3JkaW9uJiZuP24uY2xhc3NMaXN0LmFkZCgib3QtbGVnLWJvcmRlci1jb2xvciIpOiJvdFBjTGlzdCI9PT1vJiZ0Lmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJiZWdpbiIsbikpOihQLnJlbW92ZUNoaWxkKGUoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfTGlfSGRyKSksUC5yZW1vdmVDaGlsZCh0LnF1ZXJ5U2VsZWN0b3IoQS5QX0xpX0hkcikpKX07dmFyIEIsdXI9cjtmdW5jdGlvbiByKCl7dGhpcy5fYXJpYUhpZGRlbj0iYXJpYS1oaWRkZW4iLHRoaXMuX2FyaWFMYWJlbD0iYXJpYS1sYWJlbCJ9Z3IucHJvdG90eXBlLnNob3dCYW5uZXI9ZnVuY3Rpb24oKXt2YXIgZT1iLmJhbm5lck5hbWUsdD12KHRoaXMuRWwpO2wuc2tpcEFkZGluZ0hUTUwmJiJub25lIj09PWdldENvbXB1dGVkU3R5bGUodC5lbFswXSkuZ2V0UHJvcGVydHlWYWx1ZSgiZGlzcGxheSIpJiZlIT09WGUmJmUhPT1KZSYmZSE9PSRlP3QuY3NzKCJkaXNwbGF5OiBibG9jazsiKTpMLkJBbmltYXRpb249PT1UZS5TbGlkZUluP3RoaXMuc2xpZGVJbkFuaW1hdGlvbih0LGUpOkwuQkFuaW1hdGlvbj09PVRlLkZhZGVJbiYmdC5hZGRDbGFzcygib3QtZmFkZS1pbiIpfSxnci5wcm90b3R5cGUuaW5zZXJ0QWxlcnRIdG1sPWZ1bmN0aW9uKCl7TC5Jc0dQUEVuYWJsZWQmJkRzLnNldENtcERpc3BsYXlTdGF0dXMoInZpc2libGUiKTtmdW5jdGlvbiBlKGUpe3JldHVybiB0LnF1ZXJ5U2VsZWN0b3IoZSl9dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iiksbz0odihvKS5odG1sKHhzLmJhbm5lckdyb3VwLmh0bWwpLG8ucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LWJhbm5lci1zZGsiKSk7dGhpcy5zZXRBcmlhTW9kYWxGb3JCYW5uZXIobyksUy5mcC5Db29raWVWMlNTUj8odih0KS5hcHBlbmQobyksdGhpcy5zZXRCYW5uZXJMaW5rQXR0cmlidXRlcyhlKSx0aGlzLl9yZWplY3RCdG49ZShtbiksdGhpcy5fYWNjZXB0QnRuPWUoU24pKTp0aGlzLmluc2VydEh0bWxGb3JOb25TU1JGbG93KG8sdCxlLGZ1bmN0aW9uKGUpe3JldHVybiB0LnF1ZXJ5U2VsZWN0b3JBbGwoZSl9KSx0aGlzLnNzckFuZE5vblNTUkNvbW1vbkh0bWwodCl9LGdyLnByb3RvdHlwZS5pbnNlcnRIdG1sRm9yTm9uU1NSRmxvdz1mdW5jdGlvbihlLHQsbyxuKXt2YXIgcixpLHM9Yi5iYW5uZXJOYW1lO3hzLmJhbm5lckdyb3VwJiYoTC5CYW5uZXJSZWxhdGl2ZUZvbnRTaXplc1RvZ2dsZSYmdihlKS5hZGRDbGFzcygib3RSZWxGb250IiksKEwuQkluaXRpYWxGb2N1c3x8TC5CSW5pdGlhbEZvY3VzTGlua0FuZEJ1dHRvbikmJmUuc2V0QXR0cmlidXRlKCJ0YWJpbmRleCIsIjAiKSxMLnVzZVJUTCYmdihlKS5hdHRyKCJkaXIiLCJydGwiKSxiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmTC5CYW5uZXJEUEREZXNjcmlwdGlvbi5sZW5ndGgmJnYoZSkuYWRkQ2xhc3MoIm90LWlhYi0yIiksKHI9TC5CYW5uZXJQb3NpdGlvbikmJigiYm90dG9tLWxlZnQiPT09cj92KGUpLmFkZENsYXNzKCJvdC1ib3R0b20tbGVmdCIpOiJib3R0b20tcmlnaHQiPT09cj92KGUpLmFkZENsYXNzKCJvdC1ib3R0b20tcmlnaHQiKTp2KGUpLmFkZENsYXNzKHIpKSx2KHQpLmFwcGVuZChlKSx0aGlzLnNldEJhbm5lckRhdGEobykscj10aGlzLnNldElBQjJIdG1sRGF0YShvKSx0aGlzLnNldEFjY2VwdEFuZFJlamVjdEJ0bkh0bWwobyksdGhpcy5zZXRCdXR0b25zT3JkZXIobyksdD10aGlzLmh0bWxGb3JCYW5uZXJCdXR0b25zKGUsbyxuKSxuPUwuc2hvd0Jhbm5lckNsb3NlQnV0dG9uLGk9TC5CQ2xvc2VCdXR0b25UeXBlPT09UGUuTGluayx0aGlzLnNldFdpZHRoRm9yRmxhdEJhbm5lcihvLHIsdCksbiYmcz09PVFlJiZiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmIWkmJigodD1vKCIuYmFubmVyLWNsb3NlLWJ0bi1jb250YWluZXIiKSkucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZCh0KSx2KGUpLmVsLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlRW5kIix0KSx2KG8oIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1zZGstY29udGFpbmVyIikpLmFkZENsYXNzKCJvdC10b3AtY250ciIpKSx0aGlzLnNldEJhbm5lck9wdGlvbnMobyxyKSx0aGlzLnNldEJhbm5lckxvZ28oZSxvKSl9LGdyLnByb3RvdHlwZS5zZXRCYW5uZXJPcHRpb25zPWZ1bmN0aW9uKGUsdCl7dmFyIG89dGhpcyxuPWIuYmFubmVyTmFtZSxyPXRoaXMuaXNDbXBFbmFibGVkKCksaT1be3R5cGU6InB1cnBvc2UiLHRpdGxlS2V5OiJCYW5uZXJQdXJwb3NlVGl0bGUiLGRlc2NyaXB0aW9uS2V5OiJCYW5uZXJQdXJwb3NlRGVzY3JpcHRpb24iLGlkZW50aWZpZXI6InB1cnBvc2Utb3B0aW9uIn0se3R5cGU6ImZlYXR1cmUiLHRpdGxlS2V5OiJCYW5uZXJGZWF0dXJlVGl0bGUiLGRlc2NyaXB0aW9uS2V5OiJCYW5uZXJGZWF0dXJlRGVzY3JpcHRpb24iLGlkZW50aWZpZXI6ImZlYXR1cmUtb3B0aW9uIn0se3R5cGU6ImluZm9ybWF0aW9uIix0aXRsZUtleToiQmFubmVySW5mb3JtYXRpb25UaXRsZSIsZGVzY3JpcHRpb25LZXk6IkJhbm5lckluZm9ybWF0aW9uRGVzY3JpcHRpb24iLGlkZW50aWZpZXI6ImluZm9ybWF0aW9uLW9wdGlvbiJ9XSxzPXYoZSh0aGlzLl9iYW5uZXJPcHRpb25zU2VsZWN0b3IpKS5lbDtyPyhuPT09WmU/dGhpcy5zZXRGbG9hdGluZ1JvdW5kZWRJY29uQmFubmVyQ21wT3B0aW9ucyhlLGkpOih0aGlzLnNldENtcEJhbm5lck9wdGlvbnMoZSxpKSxuPT09ZXQmJnQuZWwuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLHMpKSx2KHdpbmRvdykub24oInJlc2l6ZSIsZnVuY3Rpb24oKXt3aW5kb3cuaW5uZXJXaWR0aDw9ODk2JiZvLnNldEJhbm5lck9wdGlvbkNvbnRlbnQoKX0pKTooYi5iYW5uZXJOYW1lPT09UWUmJihzPXYoZSgiLmJhbm5lci1vcHRpb25zLWNhcmQiKSkuZWwpLFAucmVtb3ZlQ2hpbGQocykpfSxnci5wcm90b3R5cGUuc2V0V2lkdGhGb3JGbGF0QmFubmVyPWZ1bmN0aW9uKGUsdCxvKXt2YXIgbj1iLmJhbm5lck5hbWUscj1MLnNob3dCYW5uZXJDbG9zZUJ1dHRvbixpPXRoaXMuaGFzTm9BY3Rpb25CdXR0b25zKCk7bj09PUplJiYoYi5pc0lhYjJvcnYyVGVtcGxhdGUmJih0LnJlbW92ZUNsYXNzKCJvdC1zZGstZWlnaHQiKSx0aGlzLnNldE9yZGVyRm9yQWNjZXB0QW5kQ29va2llU2V0dGluZ3MoZSxvKSksciYmIWkmJmIuaXNJYWIyb3J2MlRlbXBsYXRlP3QuYWRkQ2xhc3MoIm90LXNkay1uaW5lIik6ciYmaT90LmFkZENsYXNzKCJvdC1zZGstZWxldmVuIik6IXImJmk/dC5hZGRDbGFzcygib3Qtc2RrLXR3ZWx2ZSIpOnJ8fGl8fCFiLmlzSWFiMm9ydjJUZW1wbGF0ZXx8KHQuYWRkQ2xhc3MoIm90LXNkay10ZW4iKSx2KGUodGhpcy5fYnRuR3JwUGFyZW50U2VsZWN0b3IpKS5hZGRDbGFzcygib3Qtc2RrLXR3byIpLHYoZSh0aGlzLl9idG5HcnBQYXJlbnRTZWxlY3RvcikpLnJlbW92ZUNsYXNzKCJvdC1zZGstdGhyZWUiKSkpfSxnci5wcm90b3R5cGUuc2V0T3JkZXJGb3JBY2NlcHRBbmRDb29raWVTZXR0aW5ncz1mdW5jdGlvbihlLHQpe0wuUENUZW1wbGF0ZVVwZ3JhZGUmJlMuZnAuV2ViQnV0dG9uQ3VzdG9taXNhdGlvbnN8fChMLnNob3dCYW5uZXJBY2NlcHRCdXR0b24mJnQuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJhZnRlcmJlZ2luIix0aGlzLl9hY2NlcHRCdG4pLEwuc2hvd0Jhbm5lckNvb2tpZVNldHRpbmdzJiZ0Lmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlZW5kIixlKHZuKSkpfSxnci5wcm90b3R5cGUuaGFzTm9BY3Rpb25CdXR0b25zPWZ1bmN0aW9uKCl7dmFyIGU9IUwuc2hvd0Jhbm5lckFjY2VwdEJ1dHRvbiYmIUwuc2hvd0Jhbm5lckNvb2tpZVNldHRpbmdzJiYhTC5CYW5uZXJTaG93UmVqZWN0QWxsQnV0dG9uO3JldHVybiBiLmJhbm5lck5hbWU9PT1ldD9lJiYhTC5CU2hvd1NhdmVCdG46ZX0sZ3IucHJvdG90eXBlLmh0bWxGb3JCYW5uZXJCdXR0b25zPWZ1bmN0aW9uKGUsdCxvKXt2YXIgbj1iLmJhbm5lck5hbWUscj0odGhpcy5oYXNOb0FjdGlvbkJ1dHRvbnMoKSYmdCh0aGlzLl9idG5HcnBQYXJlbnRTZWxlY3RvcikucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZCh0KHRoaXMuX2J0bkdycFBhcmVudFNlbGVjdG9yKSksTC5zaG93QmFubmVyQ2xvc2VCdXR0b24pLGk9dihvKCIuYmFubmVyLWNsb3NlLWJ1dHRvbiIpKS5lbCxzPXQoIiNvbmV0cnVzdC1idXR0b24tZ3JvdXAiKSxhPUwuQkNsb3NlQnV0dG9uVHlwZT09PVBlLkxpbms7aWYocilmb3IobD0wO2w8aS5sZW5ndGg7bCsrKWE/KHYoaVtsXSkuaHRtbChMLkJDb250aW51ZVRleHQpLHYoZSkuYWRkQ2xhc3MoIm90LWNsb3NlLWJ0bi1saW5rIiksdihpW2xdKS5hZGRDbGFzcygib3QtY2xvc2UtbGluayIpLHYoaVtsXSkucmVtb3ZlQ2xhc3MoIm9uZXRydXN0LWNsb3NlLWJ0bi11aSIpLHYoaVtsXSkucmVtb3ZlQ2xhc3MoIm90LWNsb3NlLWljb24iKSxuIT09UWUmJm4hPT1aZXx8KHMuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJhZnRlcmJlZ2luIix0KCIub25ldHJ1c3QtY2xvc2UtYnRuLWhhbmRsZXIiKS5wYXJlbnRFbGVtZW50KSx2KGlbbF0pLmF0dHIoInRhYmluZGV4IiwiMSIpKSk6KEkuc2V0Q2xvc2VJY29uKHQoIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1jbG9zZS1pY29uIikpLHYoaVtsXSkuZWwuc2V0QXR0cmlidXRlKG10LEwuQmFubmVyQ2xvc2VCdXR0b25UZXh0fHwiQ2xvc2UgQ29va2llIEJhbm5lciIpKTtlbHNle2Zvcih2YXIgbD0wO2w8aS5sZW5ndGg7bCsrKXYoaVtsXS5wYXJlbnRFbGVtZW50KS5lbC5yZW1vdmVDaGlsZChpW2xdKTtuIT09SmUmJm4hPT1aZXx8UC5yZW1vdmVDaGlsZCh0KCIjb25ldHJ1c3QtY2xvc2UtYnRuLWNvbnRhaW5lci1tb2JpbGUiKSl9cmV0dXJuIHN9LGdyLnByb3RvdHlwZS5zZXRCdXR0b25zT3JkZXI9ZnVuY3Rpb24oZSl7aWYodGhpcy5jaGVja0J1dHRvbk9yZGVyUHJlY29uZGl0aW9ucygpKXt2YXIgdD1lKCIjb25ldHJ1c3QtYnV0dG9uLWdyb3VwIik7aWYodCl7dC5jbGFzc0xpc3QuYWRkKCJvdC1idXR0b24tb3JkZXItY29udGFpbmVyIik7dmFyIG8sbixyPW5ldyBNYXA7aWYoTC5zaG93QmFubmVyQWNjZXB0QnV0dG9uJiYobz1lKFNuKSkmJihvLmNsYXNzTGlzdC5hZGQoIm90LWJ1dHRvbi1vcmRlci0iK0wuQmFubmVyQk8uQUNDRVBUX0FMTCksci5zZXQoTC5CYW5uZXJCTy5BQ0NFUFRfQUxMLG8pKSxMLkJhbm5lclNob3dSZWplY3RBbGxCdXR0b24mJihvPWUobW4pKSYmKG8uY2xhc3NMaXN0LmFkZCgib3QtYnV0dG9uLW9yZGVyLSIrTC5CYW5uZXJCTy5SRUpFQ1RfQUxMKSxyLnNldChMLkJhbm5lckJPLlJFSkVDVF9BTEwsbykpLEwuQlNob3dTYXZlQnRuJiYobz1lKCIub3QtYm5yLXNhdmUtaGFuZGxlciIpKSYmKG49dm9pZCAwIT09TC5CYW5uZXJCTy5TQVZFX1BSRUZFUkVOQ0UmJjA8PUwuQmFubmVyQk8uU0FWRV9QUkVGRVJFTkNFP0wuQmFubmVyQk8uU0FWRV9QUkVGRVJFTkNFOkwuQmFubmVyQk8uQ09PS0lFX1NFVFRJTkdTLG8uY2xhc3NMaXN0LmFkZCgib3QtYnV0dG9uLW9yZGVyLSIrbiksci5zZXQobixvKSksTC5zaG93QmFubmVyQ29va2llU2V0dGluZ3MmJnRoaXMuYWRkQ29va2llU2V0dGluZ3NCdXR0b25zT3JkZXIoZSxyKSwhKHIuc2l6ZTw9MCkpe3QuaW5uZXJIVE1MPSIiO2Zvcih2YXIgaT1BcnJheS5mcm9tKHIua2V5cygpKS5zb3J0KGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUtdH0pLHM9MDtzPGkubGVuZ3RoO3MrKyl7dmFyIGE9ci5nZXQoaVtzXSk7YSYmdC5hcHBlbmRDaGlsZChhKX19fX19LGdyLnByb3RvdHlwZS5jaGVja0J1dHRvbk9yZGVyUHJlY29uZGl0aW9ucz1mdW5jdGlvbigpe3JldHVybiEoIUwuUENUZW1wbGF0ZVVwZ3JhZGV8fCFTLmZwLldlYkJ1dHRvbkN1c3RvbWlzYXRpb25zfHwodGhpcy5faXNWYWxpZEJ1dHRvbk9yZGVyQ29uZmlnPXRoaXMuY2hlY2tCdXR0b25zT3JkZXJWYWxpZGF0aW9uKCksIXRoaXMuX2lzVmFsaWRCdXR0b25PcmRlckNvbmZpZykpfSxnci5wcm90b3R5cGUuY2hlY2tCdXR0b25zT3JkZXJWYWxpZGF0aW9uPWZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIShMLkJTaG93U2F2ZUJ0biYmdm9pZCAwPT09TC5CYW5uZXJCTy5TQVZFX1BSRUZFUkVOQ0UmJnZvaWQgMD09PUwuQmFubmVyQk8uQ09PS0lFX1NFVFRJTkdTfHxMLnNob3dCYW5uZXJBY2NlcHRCdXR0b24mJnZvaWQgMD09PUwuQmFubmVyQk8uQUNDRVBUX0FMTHx8TC5CYW5uZXJTaG93UmVqZWN0QWxsQnV0dG9uJiZ2b2lkIDA9PT1MLkJhbm5lckJPLlJFSkVDVF9BTEx8fChlPXRoaXMuaXNGb3VyQnV0dG9uc0NvbmZpZ3VyZWQoKSxMLnNob3dCYW5uZXJDb29raWVTZXR0aW5ncyYmdm9pZCAwPT09TC5CYW5uZXJCTy5DT09LSUVfU0VUVElOR1MmJiFlKSl9LGdyLnByb3RvdHlwZS5hZGRDb29raWVTZXR0aW5nc0J1dHRvbnNPcmRlcj1mdW5jdGlvbihlLHQpe3ZhciBlPWUodm4pLG89Yi5iYW5uZXJOYW1lPT09ZXQsbj10aGlzLmlzRm91ckJ1dHRvbnNDb25maWd1cmVkKCkscj1vJiZuP051bWJlci5NQVhfVkFMVUU6TC5CYW5uZXJCTy5DT09LSUVfU0VUVElOR1M7ZSYmKG8mJm58fGUuY2xhc3NMaXN0LmFkZCgib3QtYnV0dG9uLW9yZGVyLSIrciksdC5zZXQocixlKSl9LGdyLnByb3RvdHlwZS5pc0ZvdXJCdXR0b25zQ29uZmlndXJlZD1mdW5jdGlvbigpe3JldHVybiBMLkJhbm5lclNob3dSZWplY3RBbGxCdXR0b24mJkwuc2hvd0Jhbm5lckFjY2VwdEJ1dHRvbiYmTC5zaG93QmFubmVyQ29va2llU2V0dGluZ3MmJkwuQlNob3dTYXZlQnRufSxnci5wcm90b3R5cGUuc2V0QWNjZXB0QW5kUmVqZWN0QnRuSHRtbD1mdW5jdGlvbihlKXt2YXIgdD1iLmJhbm5lck5hbWUsZT0oTC5zaG93QmFubmVyQWNjZXB0QnV0dG9uPyh0aGlzLl9hY2NlcHRCdG49ZShTbiksdih0aGlzLl9hY2NlcHRCdG4pLmh0bWwoTC5BbGVydEFsbG93Q29va2llc1RleHQpLHQhPT0kZXx8TC5zaG93QmFubmVyQ29va2llU2V0dGluZ3N8fEwuQmFubmVyU2hvd1JlamVjdEFsbEJ1dHRvbnx8dih0aGlzLl9hY2NlcHRCdG4ucGFyZW50RWxlbWVudCkuYWRkQ2xhc3MoImFjY2VwdC1idG4tb25seSIpKTpQLnJlbW92ZUNoaWxkKGUoU24pKSxMLkJhbm5lclNob3dSZWplY3RBbGxCdXR0b24mJkwuQmFubmVyUmVqZWN0QWxsQnV0dG9uVGV4dC50cmltKCk/KHRoaXMuX3JlamVjdEJ0bj1lKG1uKSx2KHRoaXMuX3JlamVjdEJ0bikuaHRtbChMLkJhbm5lclJlamVjdEFsbEJ1dHRvblRleHQpLGUodGhpcy5fYnRuR3JwUGFyZW50U2VsZWN0b3IpLmNsYXNzTGlzdC5hZGQoImhhcy1yZWplY3QtYWxsLWJ1dHRvbiIpKTooUC5yZW1vdmVDaGlsZChlKG1uKSksUC5yZW1vdmVDaGlsZChlKCIjb25ldHJ1c3QtcmVqZWN0LWJ0bi1jb250YWluZXIiKSkpLHYoZSh2bikpKTtMLnNob3dCYW5uZXJDb29raWVTZXR0aW5ncz8oZS5odG1sKEwuQWxlcnRNb3JlSW5mb1RleHQpLGUuYXR0cigiYXJpYS1sYWJlbCIsTC5BbGVydE1vcmVJbmZvVGV4dERpYWxvZyksTC5CYW5uZXJTZXR0aW5nc0J1dHRvbkRpc3BsYXlMaW5rJiZlLmFkZENsYXNzKCJjb29raWUtc2V0dGluZy1saW5rIiksdCE9PSRlfHxMLnNob3dCYW5uZXJBY2NlcHRCdXR0b258fGUuYWRkQ2xhc3MoImNvb2tpZS1zZXR0aW5ncy1idG4tb25seSIpKTpQLnJlbW92ZUNoaWxkKGUuZWwpfSxnci5wcm90b3R5cGUuc2V0SUFCMkh0bWxEYXRhPWZ1bmN0aW9uKGUpe3ZhciB0PWIuYmFubmVyTmFtZSxvPShiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmTC5CYW5uZXJEUEREZXNjcmlwdGlvbi5sZW5ndGgmJnQhPT1ldD8odihlKCIub3QtZHBkLWNvbnRhaW5lciAub3QtZHBkLXRpdGxlIikpLmh0bWwoTC5CYW5uZXJEUERUaXRsZSksdihlKCIub3QtZHBkLWNvbnRhaW5lciAub3QtZHBkLWRlc2MiKSkuaHRtbChMLkJhbm5lckRQRERlc2NyaXB0aW9uLmpvaW4oIiwmbmJzcDsiKSkpOlAucmVtb3ZlQ2hpbGQoZSgiLm90LWRwZC1jb250YWluZXIiKSksdihlKHRoaXMuX290R3JwQ29udGFpbmVyU2VsZWN0b3IpKSksdD0oYi5pc0lhYjJvcnYyVGVtcGxhdGUmJkwuQmFubmVyQWRkaXRpb25hbERlc2NyaXB0aW9uLnRyaW0oKSYmdGhpcy5zZXRBZGRpdGlvbmFsRGVzYyhlKSxiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmTC5CYW5uZXJEUEREZXNjcmlwdGlvbi5sZW5ndGg/dCE9PWV0P3YoZSgiLm90LWRwZC1jb250YWluZXIgLm90LWRwZC1kZXNjIikpOm86dihlKHByLlBPTElDWV9URVhUX1NFTEVDVE9SKSkpO3JldHVybiBMLklzSWFiRW5hYmxlZCYmTC5CYW5uZXJJQUJQYXJ0bmVyc0xpbmsmJnQuYXBwZW5kKCc8YnV0dG9uIGNsYXNzPSJvdC1saW5rLWJ0biBvbmV0cnVzdC12ZW5kb3JzLWxpc3QtaGFuZGxlciI+XG4gICAgICAgICcrTC5CYW5uZXJJQUJQYXJ0bmVyc0xpbmsrIlxuICAgICAgICA8L2J1dHRvbj4iKSxvfSxnci5wcm90b3R5cGUuc2V0QmFubmVyRGF0YT1mdW5jdGlvbihlKXt2YXIgdDtMLkJhbm5lclRpdGxlPyh2KGUoIiNvbmV0cnVzdC1wb2xpY3ktdGl0bGUiKSkuaHRtbChMLkJhbm5lclRpdGxlKSx2KGUoJ1tyb2xlPSJkaWFsb2ciXScpKS5hdHRyKG10LEwuQmFubmVyVGl0bGUpKTooUC5yZW1vdmVDaGlsZChlKCIjb25ldHJ1c3QtcG9saWN5LXRpdGxlIikpLHYoZSgiI29uZXRydXN0LWJhbm5lci1zZGsiKSkuYWRkQ2xhc3MoIm90LXdvLXRpdGxlIiksdihlKCdbcm9sZT0iZGlhbG9nIl0nKSkuYXR0cihtdCxMLkFyaWFQcml2YWN5KSksIUwuSXNJYWJFbmFibGVkJiZsLnNob3dHZW5lcmFsVmVuZG9ycyYmTC5CYW5uZXJOb25JQUJWZW5kb3JMaXN0VGV4dCYmKCh0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5zZXRBdHRyaWJ1dGUoImlkIiwib3QtZ3YtbGluay1jdG5yIiksdih0KS5odG1sKCc8YnV0dG9uIGNsYXNzPSJvdC1saW5rLWJ0biBvdC1ndi1saXN0LWhhbmRsZXIiPicrTC5CYW5uZXJOb25JQUJWZW5kb3JMaXN0VGV4dCsiPC9idXR0b24+IiksdihlKCIjb25ldHJ1c3QtcG9saWN5IikpLmVsLmFwcGVuZENoaWxkKHQpKSx2KGUocHIuUE9MSUNZX1RFWFRfU0VMRUNUT1IpKS5odG1sKEwuQWxlcnROb3RpY2VUZXh0KSx0aGlzLnNldEJhbm5lckxpbmtBdHRyaWJ1dGVzKGUpfSxnci5wcm90b3R5cGUuc2V0QmFubmVyTGlua0F0dHJpYnV0ZXM9ZnVuY3Rpb24oZSl7dmFyIHQ7dihlKHRoaXMuY29va2llUG9saWN5TGlua1NlbGVjdG9yKSkubGVuZ3RoJiYodD12KGUocHIuUE9MSUNZX1RFWFRfU0VMRUNUT1IrIiAub3QtY29va2llLXBvbGljeS1saW5rIikpLGU9dihlKHByLlBPTElDWV9URVhUX1NFTEVDVE9SKyIgLm90LWltcHJpbnQtbGluayIpKSxMLkJTaG93UG9saWN5TGluayYmdCYmKHQuYXR0cihtdCxMLkJDb29raWVQb2xpY3lMaW5rU2NyZWVuUmVhZGVyKSx0LmF0dHIoInJlbCIsIm5vb3BlbmVyIiksdC5hdHRyKCJ0YXJnZXQiLCJfYmxhbmsiKSksTC5CU2hvd0ltcHJpbnRMaW5rKSYmZSYmKGUuYXR0cihtdCxMLkJJbXByaW50TGlua1NjcmVlblJlYWRlciksZS5hdHRyKCJyZWwiLCJub29wZW5lciIpLGUuYXR0cigidGFyZ2V0IiwiX2JsYW5rIikpfSxnci5wcm90b3R5cGUuaXNDbXBFbmFibGVkPWZ1bmN0aW9uKCl7cmV0dXJuIEwuQmFubmVyUHVycG9zZVRpdGxlfHxMLkJhbm5lclB1cnBvc2VEZXNjcmlwdGlvbnx8TC5CYW5uZXJGZWF0dXJlVGl0bGV8fEwuQmFubmVyRmVhdHVyZURlc2NyaXB0aW9ufHxMLkJhbm5lckluZm9ybWF0aW9uVGl0bGV8fEwuQmFubmVySW5mb3JtYXRpb25EZXNjcmlwdGlvbn0sZ3IucHJvdG90eXBlLnNzckFuZE5vblNTUkNvbW1vbkh0bWw9ZnVuY3Rpb24odCl7ZnVuY3Rpb24gZShlKXtyZXR1cm4gdC5xdWVyeVNlbGVjdG9yKGUpfWZ1bmN0aW9uIG8oZSl7cmV0dXJuIHQucXVlcnlTZWxlY3RvckFsbChlKX12YXIgbixyPXRoaXMsaT10aGlzLmlzQ21wRW5hYmxlZCgpLHM9KHRoaXMuc2V0T3B0T3V0U2lnbmFsTm90aWZpY2F0aW9uKGUpLCJbVkVORE9SX05VTUJFUl0iKSxhPXYoZShwci5QT0xJQ1lfVEVYVF9TRUxFQ1RPUikpLmh0bWwoKSxzPShiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmLTE8YS5pbmRleE9mKHMpJiYobj0nPHNwYW4gY2xhc3M9Im90LXRjZjItdmVuZG9yLWNvdW50IG90LXRleHQtYm9sZCI+JytiLnRjZjJBY3RpdmVWZW5kb3JzLmFsbC50b1N0cmluZygpKyI8L3NwYW4+IixhPUkucmVwbGFjZVRleHRGcm9tU3RyaW5nKHMsYSxuKSx2KGUocHIuUE9MSUNZX1RFWFRfU0VMRUNUT1IpKS5odG1sKGEpKSx2KGUoIiNvbmV0cnVzdC1iYW5uZXItc2RrIikpLmF0dHIoInJvbGUiLCJyZWdpb24iKSxMLkJSZWdpb25BcmlhTGFiZWwmJnYoZSgiI29uZXRydXN0LWJhbm5lci1zZGsiKSkuYXR0cihtdCxMLkJSZWdpb25BcmlhTGFiZWwpLGIuYmFubmVyTmFtZT09PWV0JiZTLm1vZHVsZUluaXRpYWxpemVyLklzU3VwcHJlc3NQQyYmKGwuZGF0YUdyb3VwU3RhdGU9TC5Hcm91cHMuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlLk9yZGVyfSkpLEkuYWRkRXh0ZXJuYWxJY29uRm9yTGlua3MobyksYi5iYW5uZXJOYW1lPT09ZXQmJih0aGlzLl9mb3VyQnRucz10aGlzLmlzRm91ckJ1dHRvbnNDb25maWd1cmVkKCksdGhpcy5fc2F2ZUJ0bj1lKCIub3QtYm5yLXNhdmUtaGFuZGxlciIpLHRoaXMuX3NldHRpbmdzQnRuPWUodm4pLHRoaXMuX2J0bnNDbnRyPWUoIi5iYW5uZXItYWN0aW9ucy1jb250YWluZXIiKSxMLkJTaG93U2F2ZUJ0bj92KHRoaXMuX3NhdmVCdG4pLmh0bWwoTC5CU2F2ZUJ0blR4dCk6KFAucmVtb3ZlQ2hpbGQodGhpcy5fc2F2ZUJ0biksdGhpcy5fc2F2ZUJ0bj1udWxsKSxJLmluc2VydEZvb3RlckxvZ28obygiLm90LWJuci1mb290ZXItbG9nbyBhIikpLHRoaXMuX2Rlc2NyaXB0Q250cj1lKCIub3QtY2F0LWxzdCIpLHRoaXMuc2V0QmFubmVyQnRuKCksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsZnVuY3Rpb24oKXtyLnNldEJhbm5lckJ0bigpfSksdGhpcy5fZm91ckJ0bnMmJnYoZSgiI29uZXRydXN0LWJhbm5lci1zZGsiKSkuYWRkQ2xhc3MoImhhcy1yZWplY3QtYWxsLWJ1dHRvbiIpLHRoaXMuaW5zZXJ0R3JwcyhlKSksSS5yZXBsYWNlSGVhZGluZ3ModCksZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpO3YocykuYXBwZW5kKHQpLGIuaWdub3JlSW5qZWN0aW5nSHRtbENzc3x8KHYoIiNvbmV0cnVzdC1jb25zZW50LXNkayIpLmFwcGVuZChzLmZpcnN0Q2hpbGQpLGkmJnRoaXMuc2V0QmFubmVyT3B0aW9uQ29udGVudCgpKSx0aGlzLnNldEJuckJ0bkdycEFsaWdubWVudCgpfSxnci5wcm90b3R5cGUuc2V0QXJpYU1vZGFsRm9yQmFubmVyPWZ1bmN0aW9uKGUpe0wuRm9yY2VDb25zZW50JiZlLnF1ZXJ5U2VsZWN0b3IoJ1tyb2xlPSJkaWFsb2ciXScpLnNldEF0dHJpYnV0ZSgiYXJpYS1tb2RhbCIsInRydWUiKX0sZ3IucHJvdG90eXBlLnNldEJuckJ0bkdycEFsaWdubWVudD1mdW5jdGlvbigpe3ZhciBlPXYodGhpcy5fb3RHcnBDb250YWluZXJTZWxlY3RvcikuZWwsdD12KHRoaXMuX2J0bkdycFBhcmVudFNlbGVjdG9yKS5lbCxlPSgoZS5sZW5ndGgmJmVbMF0uY2xpZW50SGVpZ2h0KTwodC5sZW5ndGgmJnRbMF0uY2xpZW50SGVpZ2h0KT92KCIjb25ldHJ1c3QtYmFubmVyLXNkayIpLnJlbW92ZUNsYXNzKCJ2ZXJ0aWNhbC1hbGlnbi1jb250ZW50Iik6digiI29uZXRydXN0LWJhbm5lci1zZGsiKS5hZGRDbGFzcygidmVydGljYWwtYWxpZ24tY29udGVudCIpLGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNvbmV0cnVzdC1idXR0b24tZ3JvdXAtcGFyZW50IGJ1dHRvbjpmaXJzdC1vZi10eXBlIikpLHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LWJ1dHRvbi1ncm91cC1wYXJlbnQgYnV0dG9uOmxhc3Qtb2YtdHlwZSIpO3QmJmUmJjE8TWF0aC5hYnModC5vZmZzZXRUb3AtZS5vZmZzZXRUb3ApJiZ2KCIjb25ldHJ1c3QtYmFubmVyLXNkayIpLmFkZENsYXNzKCJvdC1idXR0b25zLWZ3Iil9LGdyLnByb3RvdHlwZS5zbGlkZUluQW5pbWF0aW9uPWZ1bmN0aW9uKGUsdCl7dD09PUplPyJib3R0b20iPT09TC5CYW5uZXJQb3NpdGlvbj8oZS5jc3MoImJvdHRvbTogLTk5cHg7IiksZS5hbmltYXRlKHtib3R0b206IjBweCJ9LDFlMyksbC5ibnJBbmltYXRpb25JblByb2c9ITAsc2V0VGltZW91dChmdW5jdGlvbigpe2UuY3NzKCJib3R0b206IDBweDsiKSxsLmJuckFuaW1hdGlvbkluUHJvZz0hMX0sMWUzKSk6KGUuY3NzKCJ0b3A6IC05OXB4OyBib3R0b206IGF1dG87IiksYi5wYWdlUHVzaGVkRG93biYmIWduLmNoZWNrSXNCcm93c2VySUUxMU9yQmVsb3coKT9nbi5CYW5uZXJQdXNoRG93bkhhbmRsZXIoKTooZS5hbmltYXRlKHt0b3A6IjAifSwxZTMpLGwuYm5yQW5pbWF0aW9uSW5Qcm9nPSEwLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLmNzcygidG9wOiAwcHg7IGJvdHRvbTogYXV0bzsiKSxsLmJuckFuaW1hdGlvbkluUHJvZz0hMX0sMWUzKSkpOnQhPT1YZSYmdCE9PSRlfHwoZS5jc3MoImJvdHRvbTogLTMwMHB4OyIpLGUuYW5pbWF0ZSh7Ym90dG9tOiIxZW0ifSwyZTMpLGwuYm5yQW5pbWF0aW9uSW5Qcm9nPSEwLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLmNzcygiYm90dG9tOiAxcmVtOyIpLGwuYm5yQW5pbWF0aW9uSW5Qcm9nPSExfSwyZTMpKX0sZ3IucHJvdG90eXBlLnNldEJhbm5lckJ0bj1mdW5jdGlvbigpe3ZhciBlO0wuUENUZW1wbGF0ZVVwZ3JhZGUmJlMuZnAuV2ViQnV0dG9uQ3VzdG9taXNhdGlvbnMmJnRoaXMuX2lzVmFsaWRCdXR0b25PcmRlckNvbmZpZyYmYi5iYW5uZXJOYW1lPT09ZXQ/d2luZG93LmlubmVyV2lkdGg8PTYwMCYmdGhpcy5fZm91ckJ0bnM/KGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LWJ1dHRvbi1ncm91cCIpLFAuaW5zZXJ0RWxlbWVudChlLHRoaXMuX3NldHRpbmdzQnRuLCJiZWZvcmVlbmQiKSk6dGhpcy5fZm91ckJ0bnMmJnRoaXMuX2Rlc2NyaXB0Q250ci5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsdGhpcy5fc2V0dGluZ3NCdG4pOndpbmRvdy5pbm5lcldpZHRoPD02MDA/KFAuaW5zZXJ0RWxlbWVudCh0aGlzLl9idG5zQ250cix0aGlzLl9zZXR0aW5nc0J0biwiYWZ0ZXJiZWdpbiIpLFAuaW5zZXJ0RWxlbWVudCh0aGlzLl9idG5zQ250cix0aGlzLl9zYXZlQnRuLCJhZnRlcmJlZ2luIiksUC5pbnNlcnRFbGVtZW50KHRoaXMuX2J0bnNDbnRyLHRoaXMuX2FjY2VwdEJ0biwiYWZ0ZXJiZWdpbiIpLFAuaW5zZXJ0RWxlbWVudCh0aGlzLl9idG5zQ250cix0aGlzLl9yZWplY3RCdG4sImFmdGVyYmVnaW4iKSk6dGhpcy5fZm91ckJ0bnM/KHRoaXMuX2Rlc2NyaXB0Q250ci5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsdGhpcy5fc2V0dGluZ3NCdG4pLHRoaXMuX2FjY2VwdEJ0bi5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWJlZ2luIix0aGlzLl9yZWplY3RCdG4pLHRoaXMuX2J0bnNDbnRyLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlYmVnaW4iLHRoaXMuX3NhdmVCdG4pKTooUC5pbnNlcnRFbGVtZW50KHRoaXMuX2J0bnNDbnRyLHRoaXMuX3NldHRpbmdzQnRuLCJiZWZvcmViZWdpbiIpLFAuaW5zZXJ0RWxlbWVudCh0aGlzLl9idG5zQ250cix0aGlzLl9zYXZlQnRuLHRoaXMuX3NldHRpbmdzQnRuPyJhZnRlcmJlZ2luIjoiYmVmb3JlYmVnaW4iKSxQLmluc2VydEVsZW1lbnQodGhpcy5fYnRuc0NudHIsdGhpcy5fcmVqZWN0QnRuLCJiZWZvcmVlbmQiKSxQLmluc2VydEVsZW1lbnQodGhpcy5fYnRuc0NudHIsdGhpcy5fYWNjZXB0QnRuLCJiZWZvcmVlbmQiKSl9LGdyLnByb3RvdHlwZS5zZXRDbXBCYW5uZXJPcHRpb25zPWZ1bmN0aW9uKG4sZSl7dmFyIHI9dihuKCIjYmFubmVyLW9wdGlvbnMgLmJhbm5lci1vcHRpb24iKSkuZWwuY2xvbmVOb2RlKCEwKSxpPSh2KG4odGhpcy5fYmFubmVyT3B0aW9uc1NlbGVjdG9yKSkuaHRtbCgiIiksMSk7ZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PXIuY2xvbmVOb2RlKCEwKSxvPUxbZS50aXRsZUtleV0sZT1MW2UuZGVzY3JpcHRpb25LZXldOyhvfHxlKSYmKHQucXVlcnlTZWxlY3RvcigiLmJhbm5lci1vcHRpb24taGVhZGVyIDpmaXJzdC1jaGlsZCIpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobyksbz10LnF1ZXJ5U2VsZWN0b3IoIi5iYW5uZXItb3B0aW9uLWRldGFpbHMiKSxlPyhvLnNldEF0dHJpYnV0ZSgiaWQiLCJvcHRpb24tZGV0YWlscy0iK2krKyksby5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KGUpKTpvLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQobyksdihuKCIjYmFubmVyLW9wdGlvbnMiKSkuZWwuYXBwZW5kQ2hpbGQodCkpfSl9LGdyLnByb3RvdHlwZS5zZXRGbG9hdGluZ1JvdW5kZWRJY29uQmFubmVyQ21wT3B0aW9ucz1mdW5jdGlvbihyLGUpe3ZhciBpPXRoaXMscz12KHIoIiNiYW5uZXItb3B0aW9ucyBidXR0b24iKSkuZWwuY2xvbmVOb2RlKCEwKSxuPXYocigiLmJhbm5lci1vcHRpb24tZGV0YWlscyIpKS5lbC5jbG9uZU5vZGUoITApO3Yocih0aGlzLl9iYW5uZXJPcHRpb25zU2VsZWN0b3IpKS5odG1sKCIiKSxlLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9cy5jbG9uZU5vZGUoITApLG89TFtlLnRpdGxlS2V5XSxuPUxbZS5kZXNjcmlwdGlvbktleV07KG98fG4pJiYodC5zZXRBdHRyaWJ1dGUoImlkIixlLmlkZW50aWZpZXIpLHQucXVlcnlTZWxlY3RvcigiLmJhbm5lci1vcHRpb24taGVhZGVyIDpmaXJzdC1jaGlsZCIpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobyksdihyKGkuX2Jhbm5lck9wdGlvbnNTZWxlY3RvcikpLmVsLmFwcGVuZENoaWxkKHQpKX0pLGUuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdCxvPUxbZS5kZXNjcmlwdGlvbktleV07byYmKCh0PW4uY2xvbmVOb2RlKCEwKSkuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChvKSx0LmNsYXNzTGlzdC5hZGQoZS5pZGVudGlmaWVyKSx2KHIoaS5fYmFubmVyT3B0aW9uc1NlbGVjdG9yKSkuZWwuYXBwZW5kQ2hpbGQodCkpfSl9LGdyLnByb3RvdHlwZS5zZXRCYW5uZXJPcHRpb25Db250ZW50PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztiLmJhbm5lck5hbWUhPT1KZSYmYi5iYW5uZXJOYW1lIT09WmV8fHNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgZTsod2luZG93LmlubmVyV2lkdGg8NzY5PyhlPXYodC5fYmFubmVyT3B0aW9uc1NlbGVjdG9yKS5lbFswXSx2KHQuX290R3JwQ29udGFpbmVyU2VsZWN0b3IpKTooZT12KHQuX2Jhbm5lck9wdGlvbnNTZWxlY3RvcikuZWxbMF0sYi5iYW5uZXJOYW1lPT09WmU/digiLmJhbm5lci1jb250ZW50Iik6digiI29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1jb250YWluZXIiKSkpLmVsWzBdLmFwcGVuZENoaWxkKGUpfSl9LGdyLnByb3RvdHlwZS5zZXRBZGRpdGlvbmFsRGVzYz1mdW5jdGlvbihlKXt2YXIgdD1MLkJhbm5lckFkZGl0aW9uYWxEZXNjUGxhY2VtZW50LG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpLG49KG8uY2xhc3NMaXN0LmFkZCgib3QtYi1hZGRsLWRlc2MiKSx2KG8pLmh0bWwoTC5CYW5uZXJBZGRpdGlvbmFsRGVzY3JpcHRpb24pLGUocHIuUE9MSUNZX1RFWFRfU0VMRUNUT1IpKTt0PT09bGUuQWZ0ZXJUaXRsZT9uLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlQmVnaW4iLG8pOnQ9PT1sZS5BZnRlckRlc2NyaXB0aW9uP24uaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJhZnRlckVuZCIsbyk6dD09PWxlLkFmdGVyRFBEJiYobj1lKCIub3QtZHBkLWNvbnRhaW5lciAub3QtZHBkLWRlc2MiKSwobj1MLkNob2ljZXNCYW5uZXI/ZSh0aGlzLl9vdEdycENvbnRhaW5lclNlbGVjdG9yKTpuKS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZUVuZCIsbykpfSxnci5wcm90b3R5cGUuaW5zZXJ0R3Jwcz1mdW5jdGlvbihlKXt2YXIgZD1lKCIub3QtY2F0LWl0ZW0iKS5jbG9uZU5vZGUoITApLHU9KFAucmVtb3ZlQ2hpbGQoZSgiLm90LWNhdC1pdGVtIikpLEwuQkNhdGVnb3J5U3R5bGU9PT12ZS5DaGVja2JveD9QLnJlbW92ZUNoaWxkKGQucXVlcnlTZWxlY3RvcigiLm90LXRnbCIpKTooUC5yZW1vdmVDaGlsZChkLnF1ZXJ5U2VsZWN0b3IoIi5vdC1jaGtib3giKSksdihkKS5hZGRDbGFzcygib3QtY2F0LWJkciIpKSxlKCIub3QtY2F0LWxzdCB1bCIpKTtMLkdyb3Vwcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWQuY2xvbmVOb2RlKCEwKSxvPXQucXVlcnlTZWxlY3RvcigiLm90LXRnbCwub3QtY2hrYm94Iiksbj1lLkdyb3VwTmFtZSxyPWUuQ3VzdG9tR3JvdXBJZCxpPSJvdC1ibnItZ3JwLWlkLSIrcixzPSJvdC1ibnItaGRyLWlkLSIrcixhPS0xIT09RHQuaW5kZXhPZihlLlR5cGUpLGw9RC5nZXRHcnBTdGF0dXMoZSkudG9Mb3dlckNhc2UoKT09PWYuQUxXQVlTX0FDVElWRXx8YSxjPUQuZ2V0R3JwU3RhdHVzKGUpLnRvTG93ZXJDYXNlKCk9PT1mLkFMV0FZU19JTkFDVElWRXx8YSxhPVYuaXNHcm91cEFjdGl2ZShlKXx8YSxlPSh2KG8ucXVlcnlTZWxlY3RvcigibGFiZWwiKSkuYXR0cigiZm9yIixpKSx2KG8ucXVlcnlTZWxlY3RvcigiLm90LWxhYmVsLXR4dCIpKS5odG1sKGUuR3JvdXBOYW1lKSxvLnF1ZXJ5U2VsZWN0b3IoImlucHV0IikpLGw9KChsfHxjKSYmKEwuQkNhdGVnb3J5U3R5bGU9PT12ZS5Ub2dnbGU/KFAucmVtb3ZlQ2hpbGQobyksdC5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsdigiPGRpdiBjbGFzcz0nb3QtYWx3YXlzLWFjdGl2ZSc+IisoYz9MLkFsd2F5c0luYWN0aXZlVGV4dDpMLkFsd2F5c0FjdGl2ZVRleHQpKyI8L2Rpdj4iLCJjZSIpLmVsKSk6dihlKS5hdHRyKCJkaXNhYmxlZCIsITApKSxlLmNsYXNzTGlzdC5hZGQoImNhdGVnb3J5LXN3aXRjaC1oYW5kbGVyIiksVi5zZXRJbnB1dElEKGUsaSxyLGEscyksdC5xdWVyeVNlbGVjdG9yKCdoNCwgcFthcmlhLWxldmVsPSI0Il0nKSk7dihsKS5odG1sKG4pLHYobCkuYXR0cigiaWQiLHMpLHYodSkuYXBwZW5kKHQpfSl9LGdyLnByb3RvdHlwZS5zZXRCYW5uZXJMb2dvPWZ1bmN0aW9uKGUsdCl7dmFyIG8sbjtTLmZwLkNvb2tpZVYyQmFubmVyTG9nbyYmTC5CbnJMb2dvJiYobz10KHluKSxuPSJhZnRlcmVuZCIsYi5iYW5uZXJOYW1lPT09WmUmJihvPXQoIiNvbmV0cnVzdC1jb29raWUtYnRuIiksbj0iYmVmb3JlZW5kIiksdD1JLnVwZGF0ZUNvcnJlY3RVcmwoTC5CbnJMb2dvKSx2KGUpLmFkZENsYXNzKCJvdC1ibnItdy1sb2dvIiksdihvKS5lbC5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KCIiKSxvLmluc2VydEFkamFjZW50SFRNTChuLG0uZ2V0SW5uZXJIdG1sQ29udGVudCgiPGltZyBjbGFzcz0nb3QtYm5yLWxvZ28nIHNyYz0nIit0KyInXG4gICAgICAgICAgICB0aXRsZT0nIitMLkJuckxvZ29BcmlhKyInXG4gICAgICAgICAgICBhbHQ9JyIrTC5CbnJMb2dvQXJpYSsiJy8+IikpKX0sZ3IucHJvdG90eXBlLnNldE9wdE91dFNpZ25hbE5vdGlmaWNhdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1iLmdwY0VuYWJsZWQmJmIuZ3BjRm9yQUdycEVuYWJsZWQ7TC5CU2hvd09wdE91dFNpZ25hbCYmKHR8fGIucHJldmlld01vZGUpJiZJLmNyZWF0ZU9wdE91dFNpZ25hbEVsZW1lbnQoZSwhMSl9O3ZhciBwcixDcj1ncjtmdW5jdGlvbiBncigpe3RoaXMuUE9MSUNZX1RFWFRfU0VMRUNUT1I9IiNvbmV0cnVzdC1wb2xpY3ktdGV4dCIsdGhpcy5FbD0iI29uZXRydXN0LWJhbm5lci1zZGsiLHRoaXMuX3NhdmVCdG49bnVsbCx0aGlzLl9zZXR0aW5nc0J0bj1udWxsLHRoaXMuX2FjY2VwdEJ0bj1udWxsLHRoaXMuX3JlamVjdEJ0bj1udWxsLHRoaXMuX2Rlc2NyaXB0Q250cj1udWxsLHRoaXMuX2J0bnNDbnRyPW51bGwsdGhpcy5fZm91ckJ0bnM9ITEsdGhpcy5faXNWYWxpZEJ1dHRvbk9yZGVyQ29uZmlnPSEwLHRoaXMuX2Jhbm5lck9wdGlvbnNTZWxlY3Rvcj0iI2Jhbm5lci1vcHRpb25zIix0aGlzLl9idG5HcnBQYXJlbnRTZWxlY3Rvcj0iI29uZXRydXN0LWJ1dHRvbi1ncm91cC1wYXJlbnQiLHRoaXMuX290R3JwQ29udGFpbmVyU2VsZWN0b3I9IiNvbmV0cnVzdC1ncm91cC1jb250YWluZXIiLHRoaXMuY29va2llUG9saWN5TGlua1NlbGVjdG9yPSIjb25ldHJ1c3QtcG9saWN5LXRleHQgYSJ9eXIucHJvdG90eXBlLnNldEhlYWRlckNvbmZpZz1mdW5jdGlvbigpe2Muc2V0SGVhZGVyKCksYy5zZXRTZWFyY2hJbnB1dCgpLGMuc2V0SGVhZGVyVUlDb25zZW50KCk7dmFyIGU9Yy5nZXRHcm91cHNGb3JGaWx0ZXIoKTtvci5zZXRGaWx0ZXJMaXN0QnlHcm91cChlLCExKX0seXIucHJvdG90eXBlLmZpbHRlclZlbmRvckJ5U3RyaW5nPWZ1bmN0aW9uKGUpe2Muc2VhcmNoUXVlcnk9ZSxjLmZpbHRlclZlbmRvckJ5R3JvdXBPclF1ZXJ5KCl9LHlyLnByb3RvdHlwZS5maWx0ZXJWZW5kb3JCeUdyb3VwPWZ1bmN0aW9uKGUpe2MuZmlsdGVyR3JvdXBzPWUsYy5maWx0ZXJWZW5kb3JCeUdyb3VwT3JRdWVyeSgpfSx5ci5wcm90b3R5cGUuc2hvd1ZTTGlzdD1mdW5jdGlvbigpe2MucmVtb3ZlTGlzdGVuZXJzKCksYy5zaG93RW1wdHlSZXN1bHRzKCExLCIiKSxjLmNsZWFyVUlFbGVtZW50c0luTWFpbigpLGMuYWRkVlNMaXN0KGwuZ2V0VmVuZG9yc0luRG9tYWluKCkpfSx5ci5wcm90b3R5cGUuc2hvd0VtcHR5UmVzdWx0cz1mdW5jdGlvbihlLHQpe2U/dGhpcy5zZXROb1Jlc3VsdHNDb250ZW50KHQpOih2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250ZW50KS5yZW1vdmVDbGFzcygibm8tcmVzdWx0cyIpLChlPXYoIiNvbmV0cnVzdC1wYy1zZGsgI25vLXJlc3VsdHMiKSkubGVuZ3RoJiZlLnJlbW92ZSgpKX0seXIucHJvdG90eXBlLnNldE5vUmVzdWx0c0NvbnRlbnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbyxuLHIsaT12KCIjb25ldHJ1c3QtcGMtc2RrICNuby1yZXN1bHRzIikuZWxbMF07aWYoIWkpcmV0dXJuIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iiksbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIiksbj1kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiICIrTC5QQ1ZlbmRvck5vdEZvdW5kKyIuIikscj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdC5pZD0ibm8tcmVzdWx0cyIsdC5zZXRBdHRyaWJ1dGUoImFyaWEtbGl2ZSIsImFzc2VydGl2ZSIpLHQuc2V0QXR0cmlidXRlKCJhcmlhLWF0b21pYyIsInRydWUiKSxyLmlkPSJ1c2VyLXRleHQiLHIuaW5uZXJUZXh0PWUsby5hcHBlbmRDaGlsZChyKSxvLmFwcGVuZENoaWxkKG4pLHQuYXBwZW5kQ2hpbGQobyksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfQ29udGVudCkuYWRkQ2xhc3MoIm5vLXJlc3VsdHMiKSx2KCIjdmVuZG9yLXNlYXJjaC1oYW5kbGVyIikuZWxbMF0uc2V0QXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5Iix0LmlkKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250ZW50KS5hcHBlbmQodCk7aS5xdWVyeVNlbGVjdG9yKCJzcGFuIikuaW5uZXJUZXh0PWV9LHlyLnByb3RvdHlwZS5nZXRHcm91cHNGaWx0ZXI9ZnVuY3Rpb24oKXtmb3IodmFyIGU9W10sdD0wLG89digiI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktZmlsdGVyLWhhbmRsZXIiKS5lbDt0PG8ubGVuZ3RoO3QrKyl7dmFyIG49b1t0XSxyPW4uZ2V0QXR0cmlidXRlKCJkYXRhLXB1cnBvc2VpZCIpO24uY2hlY2tlZCYmZS5wdXNoKHIpfXJldHVybiBlfSx5ci5wcm90b3R5cGUuY2FuY2VsRmlsdGVyPWZ1bmN0aW9uKCl7Zm9yKHZhciBlPTAsdD12KCIjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS1maWx0ZXItaGFuZGxlciIpLmVsO2U8dC5sZW5ndGg7ZSsrKXt2YXIgbz10W2VdLG49by5nZXRBdHRyaWJ1dGUoImRhdGEtb3B0YW5vbmdyb3VwaWQiKSxuPTA8PWwuZmlsdGVyQnlDYXRlZ29yaWVzLmluZGV4T2Yobik7UC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsbyxuKX12YXIgcj1jLmdldEdyb3Vwc0ZpbHRlcigpO2MuZmlsdGVyVmVuZG9yQnlHcm91cChyKX0seXIucHJvdG90eXBlLmNsZWFyRmlsdGVyPWZ1bmN0aW9uKCl7Yy5zZWFyY2hRdWVyeT0iIixjLmZpbHRlckdyb3Vwcz1bXX0seXIucHJvdG90eXBlLnRvZ2dsZVZlbmRvcnM9ZnVuY3Rpb24ocil7bC5nZXRWZW5kb3JzSW5Eb21haW4oKS5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7dmFyIG8sbjtELmlzQWx3YXlzQWN0aXZlR3JvdXAoZS5ncm91cFJlZil8fChvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdC12ZW5kb3ItaWQtIit0KSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdC12cy1sc3QtaWQtIit0KSx3LnRvZ2dsZVZlbmRvclNlcnZpY2UoZS5ncm91cFJlZi5DdXN0b21Hcm91cElkLHQscixvKSx3LnRvZ2dsZVZlbmRvclNlcnZpY2UoZS5ncm91cFJlZi5DdXN0b21Hcm91cElkLHQscixuKSl9KX0seXIucHJvdG90eXBlLmhpZGVWZW5kb3JMaXN0PWZ1bmN0aW9uKCl7Yy5yZW1vdmVMaXN0ZW5lcnMoKSxjLmNsZWFyVUlFbGVtZW50c0luTWFpbigpfSx5ci5wcm90b3R5cGUuYWRkTGlzdGVuZXJzPWZ1bmN0aW9uKCl7digiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfQ29udGVudCsiIC5vdC12cy1saXN0IC5jYXRlZ29yeS1zd2l0Y2gtaGFuZGxlciIpLm9uKCJjbGljayIsYy50b2dnbGVWZW5kb3JIYW5kbGVyKSx2KCIjb25ldHJ1c3QtcGMtc2RrIikub24oImNsaWNrIiwiLm90LXZzLWxpc3QiLHUub25DYXRlZ29yeUl0ZW1Ub2dnbGUuYmluZCh0aGlzKSl9LHlyLnByb3RvdHlwZS5yZW1vdmVMaXN0ZW5lcnM9ZnVuY3Rpb24oKXt2YXIgZTtkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5jYXRlZ29yeS1zd2l0Y2gtaGFuZGxlciIpLmZvckVhY2goZnVuY3Rpb24oZSl7cmV0dXJuIGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHUudG9nZ2xlR3JvdXBPUlZlbmRvckhhbmRsZXIpfSksbnVsbCE9KGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCIpKSYmZS5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdS5vbkNhdGVnb3J5SXRlbVRvZ2dsZSl9LHlyLnByb3RvdHlwZS50b2dnbGVWZW5kb3JIYW5kbGVyPWZ1bmN0aW9uKGUpe3UudG9nZ2xlVmVuZG9yRnJvbUxpc3RIYW5kbGVyKGUpLGMuY2hlY2tBbGxvd0FsbENoZWNrZWRWYWx1ZSgpfSx5ci5wcm90b3R5cGUuZmlsdGVyVmVuZG9yQnlHcm91cE9yUXVlcnk9ZnVuY3Rpb24oKXt2YXIgbz1uZXcgTWFwO2wuZ2V0VmVuZG9yc0luRG9tYWluKCkuZm9yRWFjaChmdW5jdGlvbihlLHQpe2MuY2hlY2tWZW5kb3JDb25kaXRpb25zKGUpJiZvLnNldCh0LGUpfSksYy5zaG93RW1wdHlSZXN1bHRzKG8uc2l6ZTw9MCxjLnNlYXJjaFF1ZXJ5KSxjLnJlbW92ZUxpc3RlbmVycygpLGMuY2xlYXJVSUVsZW1lbnRzSW5NYWluKCksYy5hZGRWU0xpc3Qobyl9LHlyLnByb3RvdHlwZS5jaGVja1ZlbmRvckNvbmRpdGlvbnM9ZnVuY3Rpb24oZSl7cmV0dXJuISgiIiE9PWMuc2VhcmNoUXVlcnkmJmUuU2VydmljZU5hbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKGMuc2VhcmNoUXVlcnkudG9Mb3dlckNhc2UoKSk8MHx8MDxjLmZpbHRlckdyb3Vwcy5sZW5ndGgmJmMuZmlsdGVyR3JvdXBzLmluZGV4T2YoZS5ncm91cFJlZi5DdXN0b21Hcm91cElkKTwwKX0seXIucHJvdG90eXBlLmFkZFZTTGlzdD1mdW5jdGlvbihlKXt2YXIgdD12KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250ZW50KyIgLm90LXNkay1jb2x1bW4iKSxlPXcuZ2V0VmVuZG9yTGlzdEVsZShlKTt0LmFwcGVuZChlKSxjLmFkZExpc3RlbmVycygpfSx5ci5wcm90b3R5cGUuZ2V0R3JvdXBzRm9yRmlsdGVyPWZ1bmN0aW9uKCl7dmFyIHQ9bmV3IE1hcDtyZXR1cm4gbC5nZXRWZW5kb3JzSW5Eb21haW4oKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3QuaGFzKGUuZ3JvdXBSZWYuQ3VzdG9tR3JvdXBJZCl8fHQuc2V0KGUuZ3JvdXBSZWYuQ3VzdG9tR3JvdXBJZCxlLmdyb3VwUmVmKX0pLEFycmF5LmZyb20odC52YWx1ZXMoKSl9LHlyLnByb3RvdHlwZS5jbGVhclVJRWxlbWVudHNJbk1haW49ZnVuY3Rpb24oKXt2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250ZW50KyIgdWwiK0EuUF9Ib3N0X0NudHIpLmh0bWwoIiIpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0NvbnRlbnQrIiB1bCIrQS5QX0hvc3RfQ250cikuaGlkZSgpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0NvbnRlbnQrIiB1bCIrQS5QX1ZlbmRvcl9Db250YWluZXIpLmh0bWwoIiIpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0NvbnRlbnQrIiB1bCIrQS5QX1ZlbmRvcl9Db250YWluZXIpLmhpZGUoKTt2YXIgZT12KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250ZW50KyIgLm90LXZzLWxpc3QiKTtlJiZlLmxlbmd0aCYmZS5yZW1vdmUoKX0seXIucHJvdG90eXBlLnNldEhlYWRlcj1mdW5jdGlvbigpe3ZhciBlPUwuVmVuZG9yU2VydmljZUNvbmZpZy5QQ1ZTTGlzdFRpdGxlLHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfVGl0bGUrJywgI29uZXRydXN0LXBjLXNkayAjb3QtbHN0LXRpdGxlIHBbYXJpYS1sZXZlbD0iMyJdJyk7dCYmKHQuaW5uZXJUZXh0PWUpfSx5ci5wcm90b3R5cGUuc2V0U2VhcmNoSW5wdXQ9ZnVuY3Rpb24oKXt2YXIgZT1MLlBDZW50ZXJDb29raWVMaXN0U2VhcmNoLHQ9TC5QQ2VudGVyQ29va2llU2VhcmNoQXJpYUxhYmVsLG89digiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfU2VhcmNoX0lucHV0KTtvLmVsWzBdLnBsYWNlaG9sZGVyPWUsby5hdHRyKCJhcmlhLWxhYmVsIix0KX0seXIucHJvdG90eXBlLnNldEhlYWRlclVJQ29uc2VudD1mdW5jdGlvbigpe3ZhciBlLHQsbzt2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1NlbGVjdF9DbnRyKS5hZGRDbGFzcygib3Qtdm5kLWxpc3QtY250IiksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9TZWxlY3RfQ250cisiIC5vdC1zZWwtYWxsIikuYWRkQ2xhc3MoIm90LXZzLXNlbGMtYWxsIiksTC5QQ0NhdGVnb3J5U3R5bGU9PT12ZS5Ub2dnbGUmJih2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1NlbGVjdF9DbnRyKyIgLm90LXNlbC1hbGwiKS5hZGRDbGFzcygib3QtdG9nZ2xlLWNvbmYiKSxMLlBDQWNjb3JkaW9uU3R5bGU9PT1jZS5DYXJldCkmJnYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfU2VsZWN0X0NudHIrIiAub3Qtc2VsLWFsbCIpLmFkZENsYXNzKCJvdC1jYXJldC1jb25mIiksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9MZWdfU2VsZWN0X0FsbCkuaGlkZSgpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIyIrQS5QX1NlbF9BbGxfSG9zdF9FbCkuaGlkZSgpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfSG9zdF9DbnRyKS5oaWRlKCksdihBLlBfVmVuZG9yX0xpc3QrIiAjc2VsZWN0LWFsbC10ZXh0LWNvbnRhaW5lciIpLmhpZGUoKSx2KCIjb25ldHJ1c3QtcGMtc2RrICMiK0EuUF9TZWxfQWxsX1ZlbmRvcl9MZWdfRWwpLmhpZGUoKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250YWluZXIpLnNob3coKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1NlbGVjdF9DbnRyKS5zaG93KCksdigiI29uZXRydXN0LXBjLXNkayAjIitBLlBfU2VsX0FsbF9WZW5kb3JfQ29uc2VudF9FbCkuc2hvdygiaW5saW5lLWJsb2NrIiksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfTGlzdCkucmVtb3ZlQ2xhc3MoQS5QX0hvc3RfVUkpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0NvbnRlbnQpLnJlbW92ZUNsYXNzKEEuUF9Ib3N0X0NudCksZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayAub3Qtc2VsLWFsbC1jaGtib3ggLnNlbC1hbGwtaGRyIil8fChlPXZvaWQgMCxudWxsIT0odD1TLm1vZHVsZUluaXRpYWxpemVyKSYmdC5TRU9PcHRpbWl6YXRpb24/KChlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKSkuc2V0QXR0cmlidXRlKCJyb2xlIiwiaGVhZGluZyIpLGUuc2V0QXR0cmlidXRlKCJhcmlhLWxldmVsIiwiNCIpKTplPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImg0IiksZS5jbGFzc05hbWU9InNlbC1hbGwtaGRyIixlLnRleHRDb250ZW50PShudWxsPT0odD1MLlZlbmRvclNlcnZpY2VDb25maWcpP3ZvaWQgMDp0LlBDVlNBbGxvd0FsbFRleHQpfHwiUENWU0FsbG93QWxsVGV4dCIsdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrIC5vdC1zZWwtYWxsLWNoa2JveCIpLG89TC5QQ0NhdGVnb3J5U3R5bGU9PT12ZS5DaGVja2JveD8iYmVmb3JlZW5kIjoiYWZ0ZXJiZWdpbiIsdC5pbnNlcnRBZGphY2VudEVsZW1lbnQobyxlKSksYy5jaGVja0FsbG93QWxsQ2hlY2tlZFZhbHVlKCl9LHlyLnByb3RvdHlwZS5jaGVja0FsbG93QWxsQ2hlY2tlZFZhbHVlPWZ1bmN0aW9uKCl7dmFyIHQ9ITAsZT0obC52c0NvbnNlbnQuZm9yRWFjaChmdW5jdGlvbihlKXtlfHwodD0hMSl9KSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiI3NlbGVjdC1hbGwtdmVuZG9yLWdyb3Vwcy1oYW5kbGVyIikpO1Auc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLGUsdCl9O3ZhciBjLGhyPXlyO2Z1bmN0aW9uIHlyKCl7dGhpcy5zZWFyY2hRdWVyeT0iIix0aGlzLmZpbHRlckdyb3Vwcz1bXX1pLnByb3RvdHlwZS5pbml0Q29va2llU2V0dGluZ0hhbmRsZXJzPWZ1bmN0aW9uKCl7dihkb2N1bWVudCkub24oImNsaWNrIiwiLm9wdGFub24tc2hvdy1zZXR0aW5ncywgLm9wdGFub24tdG9nZ2xlLWRpc3BsYXksIC5vdC1zZGstc2hvdy1zZXR0aW5ncywgLm90LXBjLWhhbmRsZXIiLHRoaXMuY29va2llc1NldHRpbmdzQm91bmRMaXN0ZW5lcil9LGkucHJvdG90eXBlLmluaXRGbGd0Q2tTdGdCdG5FdmVudEhhbmRsZXJzPWZ1bmN0aW9uKCl7digiLm90LWZsb2F0aW5nLWJ1dHRvbl9fb3BlbiIpLm9uKCJjbGljayIsZnVuY3Rpb24oZSl7c2V0VGltZW91dChmdW5jdGlvbigpe3UuZmxvYXRpbmdDb29raWVTZXR0aW5nT3BlbkJ0bkNsaWNrZWQoZSl9LDApfSksdigiLm90LWZsb2F0aW5nLWJ1dHRvbl9fY2xvc2UiKS5vbigiY2xpY2siLGZ1bmN0aW9uKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt1LmZsb2F0aW5nQ29va2llU2V0dGluZ0Nsb3NlQnRuQ2xpY2tlZChlKX0sMCl9KX0saS5wcm90b3R5cGUuZmxvYXRpbmdDb29raWVTZXR0aW5nT3BlbkJ0bkNsaWNrZWQ9ZnVuY3Rpb24oZSl7dih1LmZsdGdCdG5TbHRyKS5hZGRDbGFzcygib3QtcGMtb3BlbiIpLEwuY29va2llUGVyc2lzdGVudExvZ28uaW5jbHVkZXMoIm90X2d1YXJkX2xvZ28uc3ZnIikmJnYodS5mbHRnQnRuRlNsdHIpLmF0dHIodnQsInRydWUiKSx2KHUuZmx0Z0J0bkJTbHRyKS5hdHRyKHZ0LCIiKSx2KHUuZmx0Z0J0bkZyb250QnRuKS5lbFswXS5zZXRBdHRyaWJ1dGUodnQsITApLHYodS5mbHRnQnRuRnJvbnRCdG4pLmVsWzBdLnN0eWxlLmRpc3BsYXk9Im5vbmUiLHYodS5mbHRnQnRuQmFja0J0bikuZWxbMF0uc2V0QXR0cmlidXRlKG10LEwuQXJpYUNsb3NlUHJlZmVyZW5jZXMpLHYodS5mbHRnQnRuQmFja0J0bikuZWxbMF0uc2V0QXR0cmlidXRlKHZ0LCExKSx2KHUuZmx0Z0J0bkJhY2tCdG4pLmVsWzBdLnN0eWxlLmRpc3BsYXk9ImJsb2NrIixtby50cmlnZ2VyR29vZ2xlQW5hbHl0aWNzRXZlbnQoTm8sem8pLHUuc2hvd0Nvb2tpZVNldHRpbmdzSGFuZGxlcihlKX0saS5wcm90b3R5cGUuZmxvYXRpbmdDb29raWVTZXR0aW5nQ2xvc2VCdG5DbGlja2VkPWZ1bmN0aW9uKGUpe3YodS5mbHRnQnRuRnJvbnRCdG4pLmVsWzBdLnNldEF0dHJpYnV0ZShtdCxMLkNvb2tpZVNldHRpbmdCdXR0b25UZXh0KSx2KHUuZmx0Z0J0bkZyb250QnRuKS5lbFswXS5zZXRBdHRyaWJ1dGUodnQsITEpLHYodS5mbHRnQnRuRnJvbnRCdG4pLmVsWzBdLnN0eWxlLmRpc3BsYXk9ImJsb2NrIix2KHUuZmx0Z0J0bkJhY2tCdG4pLmVsWzBdLnNldEF0dHJpYnV0ZSh2dCwhMCksdih1LmZsdGdCdG5CYWNrQnRuKS5lbFswXS5zdHlsZS5kaXNwbGF5PSJub25lIixlJiYobW8udHJpZ2dlckdvb2dsZUFuYWx5dGljc0V2ZW50KE5vLFdvKSx1LmhpZGVDb29raWVTZXR0aW5nc0hhbmRsZXIoZSkpfSxpLnByb3RvdHlwZS5pbml0aWFsaXNlTGVnSW50QnRuSGFuZGxlcnM9ZnVuY3Rpb24oKXt2KGRvY3VtZW50KS5vbigiY2xpY2siLCIub3Qtb2JqLWxlZy1idG4taGFuZGxlciIsdS5vbkxlZ0ludEJ1dHRvbkNsaWNrKSx2KGRvY3VtZW50KS5vbigiY2xpY2siLCIub3QtcmVtb3ZlLW9iamVjdGlvbi1oYW5kbGVyIix1Lm9uTGVnSW50QnV0dG9uQ2xpY2spfSxpLnByb3RvdHlwZS5pbml0aWFsaXNlQWRkdGxWZW5IYW5kbGVyPWZ1bmN0aW9uKCl7digiI29uZXRydXN0LXBjLXNkayAjb3QtYWRkdGwtdmVubHN0Iikub24oImNsaWNrIix1LnNlbGVjdFZlbmRvcnNHcm91cEhhbmRsZXIpLHYoIiNvbmV0cnVzdC1wYy1zZGsgI290LXNlbGFsbC1hZHRsdmVuLWhhbmRsZXIiKS5vbigiY2xpY2siLHUuc2VsQWxsQWR0bFZlbkhhbmRsZXIpfSxpLnByb3RvdHlwZS5pbml0aWFsaXplR2VuVmVuSGFuZGxlcnM9ZnVuY3Rpb24oKXt2KCIjb25ldHJ1c3QtcGMtc2RrICNvdC1nbi12ZW5sc3QgLm90LWdudmVuLWNoa2JveC1oYW5kbGVyIikub24oImNsaWNrIix1LmdlblZlbmRvclRvZ2dsZWQpLHYoIiNvbmV0cnVzdC1wYy1zZGsgI290LWduLXZlbmxzdCAub3QtZ3YtdmVuYm94Iikub24oImNsaWNrIix1LmdlblZlbmRvckRldGFpbHMpLHYoIiNvbmV0cnVzdC1wYy1zZGsgI290LXNlbGFsbC1nbnZlbi1oYW5kbGVyIikub24oImNsaWNrIix1LnNlbGVjdEFsbEdlblZlbkhhbmRsZXIpfSxpLnByb3RvdHlwZS5pbml0aWFsaXNlQ29uc2VudE5vdGljZUhhbmRsZXJzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztiLnBjTmFtZT09PXN0JiZ1LmNhdGVnb3J5TWVudVN3aXRjaEhhbmRsZXIoKSx2KCIjb25ldHJ1c3QtcGMtc2RrIC5vbmV0cnVzdC1jbG9zZS1idG4taGFuZGxlciIpLm9uKCJjbGljayIsZnVuY3Rpb24oZSl7c2V0VGltZW91dChmdW5jdGlvbigpe3UuYmFubmVyQ2xvc2VCdXR0b25IYW5kbGVyKGUpfSwwKX0pLHYoIiNvbmV0cnVzdC1wYy1zZGsgI2FjY2VwdC1yZWNvbW1lbmRlZC1idG4taGFuZGxlciIpLm9uKCJjbGljayIsZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Qy5hbGxvd0FsbEV2ZW50SGFuZGxlcighMCl9LDApfSksdigiI29uZXRydXN0LXBjLXNkayAub3QtcGMtcmVmdXNlLWFsbC1oYW5kbGVyIikub24oImNsaWNrIixmdW5jdGlvbigpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXtDLnJlamVjdEFsbEV2ZW50SGFuZGxlcighMCl9LDApfSksdigiI29uZXRydXN0LXBjLXNkayAjY2xvc2UtcGMtYnRuLWhhbmRsZXIiKS5vbigiY2xpY2siLGZ1bmN0aW9uKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt1LmhpZGVDb29raWVTZXR0aW5nc0hhbmRsZXIoZSl9LDApfSksdihkb2N1bWVudCkub24oImtleWRvd24iLHUuY2xvc2VQQ1doZW5Fc2NQcmVzc2VkKSx2KCIjb25ldHJ1c3QtcGMtc2RrICN2ZW5kb3ItY2xvc2UtcGMtYnRuLWhhbmRsZXIiKS5vbigiY2xpY2siLHUuaGlkZUNvb2tpZVNldHRpbmdzSGFuZGxlciksdigiI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktc3dpdGNoLWhhbmRsZXIiKS5vbigiY2xpY2siLHUudG9nZ2xlR3JvdXBPUlZlbmRvckhhbmRsZXIpLHYoIiNvbmV0cnVzdC1wYy1zZGsgLmNvb2tpZS1zdWJncm91cC1oYW5kbGVyIikub24oImNsaWNrIix1LnRvZ2dsZVN1YkNhdGVnb3J5KSx2KCIjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS1tZW51LXN3aXRjaC1oYW5kbGVyIikub24oImtleWRvd24iLGZ1bmN0aW9uKGUpe2IucGNOYW1lIT09c3R8fGUua2V5Q29kZSE9PWFlLlVwQXJyb3cmJmUua2V5Q29kZSE9PWFlLkRvd25BcnJvd3x8KGUucHJldmVudERlZmF1bHQoKSxMLlBDVGVtcGxhdGVVcGdyYWRlP3UuY2hhbmdlU2VsZWN0ZWRUYWJWMihlKTp1LmNoYW5nZVNlbGVjdGVkVGFiKGUpKX0pLHYoIiIrdS5QQ19TRUxFQ1RPUikub24oImNsaWNrIixBLlBfQ2F0ZWdvcnlfSXRlbSsiID4gaW5wdXQ6Zmlyc3QtY2hpbGQsIitBLlBfQ2F0ZWdvcnlfSXRlbSsiID4gYnV0dG9uOmZpcnN0LWNoaWxkIix1Lm9uQ2F0ZWdvcnlJdGVtVG9nZ2xlLmJpbmQodGhpcykpLChMLnNob3dDb29raWVMaXN0fHxfLnNob3dHZW5lcmFsVmVuZG9ycykmJih2KCIjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS1ob3N0LWxpc3QtaGFuZGxlciIpLm9uKCJjbGljayIsZnVuY3Rpb24oZSl7c2V0VGltZW91dChmdW5jdGlvbigpe18uc2hvd0dlbmVyYWxWZW5kb3JzJiZMLnNob3dDb29raWVMaXN0P18uY29va2llTGlzdFR5cGU9eWUuSG9zdEFuZEdlblZlbjpfLnNob3dHZW5lcmFsVmVuZG9ycz9fLmNvb2tpZUxpc3RUeXBlPXllLkdlblZlbjpfLmNvb2tpZUxpc3RUeXBlPXllLkhvc3QsdS5wY0xpbmtTb3VyY2U9ZS50YXJnZXQsdS5sb2FkQ29va2llTGlzdChlLnRhcmdldCl9LDApfSksSS5pc09wdE91dEVuYWJsZWQoKT8odigiI29uZXRydXN0LXBjLXNkayAjc2VsZWN0LWFsbC1ob3N0cy1ncm91cHMtaGFuZGxlciIpLm9uKCJjbGljayIsdS5zZWxlY3RBbGxIb3N0c0dyb3Vwc0hhbmRsZXIpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfSG9zdF9DbnRyKS5vbigiY2xpY2siLHUuc2VsZWN0SG9zdHNHcm91cEhhbmRsZXIpKTp2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0hvc3RfQ250cikub24oImNsaWNrIix1LnRvZ2dsZUFjY29yZGlvblN0YXR1cykpLHUuYWRkTGlzdGVuZXJXaGVuSWFiRW5hYmxlZCgpLHUuYWRkRXZlbnRMaXN0ZW5lcldoZW5Jc0hvc3RPclZlbmRvcnNBcmVFbmFibGVkKCksdS5hZGRkTGlzdGVuZXJXaGVuTm9CYW5uZXIoKSx2KCIjb25ldHJ1c3QtcGMtc2RrIC5vdC1ndi1saXN0LWhhbmRsZXIiKS5vbigiY2xpY2siLGZ1bmN0aW9uKHQpe3JldHVybiBGKGUsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7cmV0dXJuIF8uY29va2llTGlzdFR5cGU9eWUuR2VuVmVuLHUubG9hZENvb2tpZUxpc3QodC50YXJnZXQpLFsyXX0pfSl9KSx1LmFkZExpc3RlbmVyV2hlblZlbmRvclNlcnZpY2VzKCksdS5hZGRFdmVudExpc3RuZXJGb3JWZW5kb3JzTGlzdCgpfSxpLnByb3RvdHlwZS5hZGRFdmVudExpc3RlbmVyV2hlbklzSG9zdE9yVmVuZG9yc0FyZUVuYWJsZWQ9ZnVuY3Rpb24oKXt2YXIgZTsoTC5Jc0lhYkVuYWJsZWR8fEwuc2hvd0Nvb2tpZUxpc3R8fF8uc2hvd0dlbmVyYWxWZW5kb3JzfHxfLnNob3dWZW5kb3JTZXJ2aWNlKSYmKHYoZG9jdW1lbnQpLm9uKCJjbGljayIsIi5iYWNrLWJ0bi1oYW5kbGVyIix1LmJhY2tCdG5IYW5kbGVyKSx1LmFkZExpc3RlbmVyU2VhcmNoS2V5RXZlbnQoKSx2KCIjb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItYnRuLWhhbmRsZXIiKS5vbigiY2xpY2siLHUudG9nZ2xlVmVuZG9yRmlsdGVyc0hhbmRsZXIpLHYoIiNvbmV0cnVzdC1wYy1zZGsgI2ZpbHRlci1hcHBseS1oYW5kbGVyIikub24oImNsaWNrIixmdW5jdGlvbigpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt1LmFwcGx5RmlsdGVySGFuZGxlcigpfSwwKX0pLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfRmx0cl9Nb2RhbCkub24oImNsaWNrIix1LnRnbEZsdHJPcHRpb25IYW5kbGVyKSwhUy5pc1YyVGVtcGxhdGUmJmIucGNOYW1lIT09aXR8fHYoIiNvbmV0cnVzdC1wYy1zZGsgI2ZpbHRlci1jYW5jZWwtaGFuZGxlciIpLm9uKCJjbGljayIsdS5jYW5jZWxGaWx0ZXJIYW5kbGVyKSwhUy5pc1YyVGVtcGxhdGUmJmIucGNOYW1lPT09aXR8fHYoIiNvbmV0cnVzdC1wYy1zZGsgI2NsZWFyLWZpbHRlcnMtaGFuZGxlciIpLm9uKCJjbGljayIsdS5jbGVhckZpbHRlcnNIYW5kbGVyKSxTLmlzVjJUZW1wbGF0ZT92KCIjb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItY2FuY2VsLWhhbmRsZXIiKS5vbigia2V5ZG93biIsZnVuY3Rpb24oZSl7OSE9PWUua2V5Q29kZSYmInRhYiIhPT1lLmNvZGV8fGUuc2hpZnRLZXl8fChlLnByZXZlbnREZWZhdWx0KCksdigiI29uZXRydXN0LXBjLXNkayAjY2xlYXItZmlsdGVycy1oYW5kbGVyIikuZWxbMF0uZm9jdXMoKSl9KTp2KCIjb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItYXBwbHktaGFuZGxlciIpLm9uKCJrZXlkb3duIixmdW5jdGlvbihlKXs5IT09ZS5rZXlDb2RlJiYidGFiIiE9PWUuY29kZXx8ZS5zaGlmdEtleXx8KGUucHJldmVudERlZmF1bHQoKSx2KCIjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS1maWx0ZXItaGFuZGxlciIpLmVsWzBdLmZvY3VzKCkpfSksZT12KCIjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS1maWx0ZXItaGFuZGxlciIpLmVsLHYoZVswXSkub24oImtleWRvd24iLGZ1bmN0aW9uKGUpezkhPT1lLmtleUNvZGUmJiJ0YWIiIT09ZS5jb2RlfHwhZS5zaGlmdEtleXx8KGUucHJldmVudERlZmF1bHQoKSx2KCIjb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItYXBwbHktaGFuZGxlciIpLmVsWzBdLmZvY3VzKCkpfSkpfSxpLnByb3RvdHlwZS5hZGRMaXN0ZW5lclNlYXJjaEtleUV2ZW50PWZ1bmN0aW9uKCl7dih1LlZFTkRPUl9TRUFSQ0hfU0VMRUNUT1IpLm9uKCJrZXl1cCIsZnVuY3Rpb24oZSl7ZT1lLnRhcmdldC52YWx1ZS50cmltKCk7dS5jdXJyZW50U2VhcmNoSW5wdXQhPT1lJiYoXy5zaG93VmVuZG9yU2VydmljZT9jLmZpbHRlclZlbmRvckJ5U3RyaW5nKGUpOnUuaXNDb29raWVMaXN0PyhnLnNlYXJjaEhvc3RMaXN0KGUpLF8uc2hvd1RyYWNraW5nVGVjaCYmdS5hZGRFdmVudEFkZGl0aW9uYWxUZWNobm9sb2dpZXMoKSk6KGcubG9hZFZlbmRvckxpc3QoZSxbXSksTC5Vc2VHb29nbGVWZW5kb3JzJiZnLnNlYXJjaFZlbmRvcnMoZy5nb29nbGVTZWFyY2hTZWxlY3RvcnMsXy5hZGR0bFZlbmRvcnNMaXN0LG1lLkdvb2dsZVZlbmRvcixlKSxfLnNob3dHZW5lcmFsVmVuZG9ycyYmTC5HZW5lcmFsVmVuZG9ycy5sZW5ndGgmJmcuc2VhcmNoVmVuZG9ycyhnLmdlblZlbmRvclNlYXJjaFNlbGVjdG9ycyxMLkdlbmVyYWxWZW5kb3JzLG1lLkdlbmVyYWxWZW5kb3IsZSkpLGcucGxheVNlYXJjaFN0YXR1cyh1LmlzQ29va2llTGlzdCksdS5jdXJyZW50U2VhcmNoSW5wdXQ9ZSl9KX0saS5wcm90b3R5cGUuYWRkTGlzdGVuZXJXaGVuSWFiRW5hYmxlZD1mdW5jdGlvbigpe0wuSXNJYWJFbmFibGVkJiYodigiI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXIiKS5vbigiY2xpY2siLGZ1bmN0aW9uKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt1LnBjTGlua1NvdXJjZT1lLnRhcmdldCx1LnNob3dWZW5kb3JzTGlzdChlLnRhcmdldCl9LDApfSksdigiI29uZXRydXN0LXBjLXNkayAub3QtcGdwaC1saW5rIikub24oImNsaWNrIixmdW5jdGlvbihlKXt1LnBjTGlua1NvdXJjZT1lLnRhcmdldCx1LnNob3dJbGx1c3RyYXRpb25zKGUudGFyZ2V0KX0pLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0NvbnRhaW5lcikub24oImNsaWNrIix1LnNlbGVjdFZlbmRvcnNHcm91cEhhbmRsZXIpLEwuVXNlR29vZ2xlVmVuZG9yc3x8dS5iaW5kU2VsQWxsSGFuZGxlcnMoKSx1LmluaXRpYWxpc2VMZWdJbnRCdG5IYW5kbGVycygpKX0saS5wcm90b3R5cGUuYWRkZExpc3RlbmVyV2hlbk5vQmFubmVyPWZ1bmN0aW9uKCl7TC5Ob0Jhbm5lciYmKEwuT25DbGlja0Nsb3NlQmFubmVyJiZkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixDLmJvZHlDbGlja0V2ZW50KSxMLlNjcm9sbENsb3NlQmFubmVyKSYmd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsQy5zY3JvbGxDbG9zZUJhbm5lcil9LGkucHJvdG90eXBlLmFkZExpc3RlbmVyV2hlblZlbmRvclNlcnZpY2VzPWZ1bmN0aW9uKCl7Xy5zaG93VmVuZG9yU2VydmljZSYmKHUuYmluZFNlbEFsbEhhbmRsZXJzKCksdigiI29uZXRydXN0LXBjLXNkayAub25ldHJ1c3QtdmVuZG9ycy1saXN0LWhhbmRsZXIiKS5vbigiY2xpY2siLGZ1bmN0aW9uKCl7c2V0VGltZW91dChmdW5jdGlvbigpe3Uuc2hvd1ZlbmRvcnNMaXN0KG51bGwsITApfSwwKX0pKX0saS5wcm90b3R5cGUuYmluZFNlbEFsbEhhbmRsZXJzPWZ1bmN0aW9uKCl7digiI29uZXRydXN0LXBjLXNkayAjc2VsZWN0LWFsbC12ZW5kb3ItbGVnLWhhbmRsZXIiKS5vbigiY2xpY2siLHUuc2VsZWN0QWxsVmVuZG9yc0xlZ0ludEhhbmRsZXIpLHYoIiNvbmV0cnVzdC1wYy1zZGsgI3NlbGVjdC1hbGwtdmVuZG9yLWdyb3Vwcy1oYW5kbGVyIikub24oImNsaWNrIix1LlNlbGVjdEFsbFZlbmRvckNvbnNlbnRIYW5kbGVyKX0saS5wcm90b3R5cGUuaGlkZUNvb2tpZVNldHRpbmdzSGFuZGxlcj1mdW5jdGlvbihlKXt2YXIgdDtyZXR1cm4gdm9pZCAwPT09ZSYmKGU9d2luZG93LmV2ZW50KSxabi5nZXRJbnN0YW5jZSgpLnJlc2V0SGVhbHRoU2lnbmF0dXJlRGF0YSgpLG1vLnRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudChObyxGbyksZ24ucmVtb3ZlQWRkZWRPVENzc1N0eWxlcyhDbi5QQyksa24uaGlkZUNvbnNlbnROb3RpY2VWMigpLG51bGwhPSh0PW51bGw9PSh0PXdpbmRvdy5PbmVUcnVzdF9Db25maXJtRGlhbG9nKT92b2lkIDA6dC5nZXRJbnN0YW5jZSgpKSYmdC5jbG9zZSgpLHYoZG9jdW1lbnQpLm9mZigia2V5ZG93biIsdS5jbG9zZVBDV2hlbkVzY1ByZXNzZWQpLHUuZ2V0UmVzaXplRWxlbWVudCgpLnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdS5zZXRDZW50ZXJMYXlvdXRGb290ZXJIZWlnaHQpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLHUuc2V0Q2VudGVyTGF5b3V0Rm9vdGVySGVpZ2h0KSwhUy5pc1YyVGVtcGxhdGUmJmIucGNOYW1lIT09aXR8fHUuY2xvc2VGaWx0ZXIoITEpLGIucGNOYW1lPT09bnQmJnYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ29udGVudCkucmVtb3ZlQ2xhc3MoIm90LWhpZGUiKSxDLmhpZGVWZW5kb3JzTGlzdCgpLHhzLmNzQnRuR3JvdXAmJih2KHUuZmx0Z0J0blNsdHIpLnJlbW92ZUNsYXNzKCJvdC1wYy1vcGVuIiksdS5mbG9hdGluZ0Nvb2tpZVNldHRpbmdDbG9zZUJ0bkNsaWNrZWQobnVsbCkpLHUuY29uZmlybVBDKGUpLEMucmVzZXRDb25zZW50KCksITF9LGkucHJvdG90eXBlLnNlbGVjdEFsbEhvc3RzR3JvdXBzSGFuZGxlcj1mdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldC5jaGVja2VkLGU9digiI29uZXRydXN0LXBjLXNkayAjIitBLlBfU2VsX0FsbF9Ib3N0X0VsKS5lbFswXSxvPWUuY2xhc3NMaXN0LmNvbnRhaW5zKCJsaW5lLXRocm91Z2giKSxuPXYoIiNvbmV0cnVzdC1wYy1zZGsgLmhvc3QtY2hlY2tib3gtaGFuZGxlciIpLmVsO1Auc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiI3NlbGVjdC1hbGwtaG9zdHMtZ3JvdXBzLWhhbmRsZXIiLG51bGwsdCksUC5zZXRBcmlhQ2hlY2tlZEF0dHJpYnV0ZSgiI3NlbGVjdC1hbGwtaG9zdHMtZ3JvdXBzLWhhbmRsZXIiLG51bGwsdC50b1N0cmluZygpKTtmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKyluW3JdLmdldEF0dHJpYnV0ZSgiZGlzYWJsZWQiKXx8UC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsbltyXSx0KTtfLm9wdGFub25Ib3N0TGlzdC5mb3JFYWNoKGZ1bmN0aW9uKGUpe0RvLnVwZGF0ZUhvc3RTdGF0dXMoZSx0KX0pLG4uZm9yRWFjaChmdW5jdGlvbihlKXtJby51cGRhdGVHZW5WZW5kb3JTdGF0dXMoZS5nZXRBdHRyaWJ1dGUoImhvc3RJZCIpLHQpfSksbyYmZS5jbGFzc0xpc3QucmVtb3ZlKCJsaW5lLXRocm91Z2giKX0saS5wcm90b3R5cGUuc2VsZWN0SG9zdHNHcm91cEhhbmRsZXI9ZnVuY3Rpb24oZSl7dS50b2dnbGVBY2NvcmRpb25TdGF0dXMoZSk7dmFyIHQ9ZS50YXJnZXQuZ2V0QXR0cmlidXRlKCJob3N0SWQiKSxvPWUudGFyZ2V0LmdldEF0dHJpYnV0ZSgiY2tUeXBlIiksbj1lLnRhcmdldC5jaGVja2VkO251bGwhPT10JiYobz09PWhlLkdlblZlbmRvcj8obz1MLkdlbmVyYWxWZW5kb3JzLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuVmVuZG9yQ3VzdG9tSWQ9PT10fSkuTmFtZSxtby50cmlnZ2VyR29vZ2xlQW5hbHl0aWNzRXZlbnQoTm8sbj9YbzpRbyxvKyI6IFZFTl8iK3QpLElvLnVwZGF0ZUdlblZlbmRvclN0YXR1cyh0LG4pKToobz1QLmZpbmRJbmRleChfLm9wdGFub25Ib3N0TGlzdCxmdW5jdGlvbihlKXtyZXR1cm4gZS5Ib3N0SWQ9PT10fSksbz1fLm9wdGFub25Ib3N0TGlzdFtvXSx1LnRvZ2dsZUhvc3RTdGF0dXMobyxuKSksUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsZS50YXJnZXQsbikpfSxpLnByb3RvdHlwZS5vbkNhdGVnb3J5SXRlbVRvZ2dsZT1mdW5jdGlvbihlKXtlLnN0b3BQcm9wYWdhdGlvbigpO3ZhciB0PWUudGFyZ2V0OyJCVVRUT04iIT09dC50YWdOYW1lJiYiSU5QVVQiIT09dC50YWdOYW1lfHwoYi5wY05hbWU9PT1udCYmdGhpcy5zZXRQY0xpc3RDb250YWluZXJIZWlnaHQoKSx1LnRvZ2dsZUFjY29yZGlvblN0YXR1cyhlKSl9LGkucHJvdG90eXBlLnRvZ2dsZUFjY29yZGlvblN0YXR1cz1mdW5jdGlvbihlKXt2YXIgdCxlPWUudGFyZ2V0O2UmJmUuZ2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIikmJih0PSJ0cnVlIj09PWUuZ2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIik/ImZhbHNlIjoidHJ1ZSIsZS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLHQpKX0saS5wcm90b3R5cGUudG9nZ2xlSG9zdFN0YXR1cz1mdW5jdGlvbihlLHQpe21vLnRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudChObyx0P1pvOiRvLGUuSG9zdE5hbWUrIjogSF8iK2UuSG9zdElkKSxEby51cGRhdGVIb3N0U3RhdHVzKGUsdCl9LGkucHJvdG90eXBlLnRvZ2dsZUJhbm5lck9wdGlvbnM9ZnVuY3Rpb24oZSl7digiLmJhbm5lci1vcHRpb24taW5wdXQiKS5lYWNoKGZ1bmN0aW9uKGUpe3YoZSkuZWwuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwhMSl9KSx1LnRvZ2dsZUFjY29yZGlvblN0YXR1cyhlKX0saS5wcm90b3R5cGUuYmFubmVyQ2xvc2VCdXR0b25IYW5kbGVyPWZ1bmN0aW9uKG4pe3ZhciByO3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciB0LG87cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtyZXR1cm4gdihkb2N1bWVudCkub2ZmKCJrZXlkb3duIix1LnNoaWZ0QmFubmVyRm9jdXMpLC0xPCh0PShudWxsPT0ocj1udWxsPT0ocj1uKT92b2lkIDA6ci50YXJnZXQpP3ZvaWQgMDpyLmNsYXNzTmFtZSl8fCIiKS5pbmRleE9mKCJzYXZlLXByZWZlcmVuY2UtYnRuLWhhbmRsZXIiKT8oXy5iYW5uZXJDbG9zZVNvdXJjZT1lZS5Db25maXJtQ2hvaWNlQnV0dG9uLG1vLnRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudChObyxqbykpOi0xPHQuaW5kZXhPZigiYmFubmVyLWNsb3NlLWJ1dHRvbiIpPyhfLmJhbm5lckNsb3NlU291cmNlPWVlLkJhbm5lckNsb3NlQnV0dG9uLG89eG8sLTE8dC5pbmRleE9mKCJvdC1jbG9zZS1saW5rIikmJihvPUhvLF8uYmFubmVyQ2xvc2VTb3VyY2U9ZWUuQ29udGludWVXaXRob3V0QWNjZXB0aW5nQnV0dG9uKSxtby50cmlnZ2VyR29vZ2xlQW5hbHl0aWNzRXZlbnQoTm8sbykpOi0xPHQuaW5kZXhPZigib3QtYm5yLXNhdmUtaGFuZGxlciIpJiYoXy5iYW5uZXJDbG9zZVNvdXJjZT1lZS5CYW5uZXJTYXZlU2V0dGluZ3MsbW8udHJpZ2dlckdvb2dsZUFuYWx5dGljc0V2ZW50KE5vLFJvKSksZ24ucmVtb3ZlQWRkZWRPVENzc1N0eWxlcygpLEMuaGlkZVZlbmRvcnNMaXN0KCksWzIsQy5iYW5uZXJDbG9zZUJ1dHRvbkhhbmRsZXIoKV19KX0pfSxpLnByb3RvdHlwZS5vbkxlZ0ludEJ1dHRvbkNsaWNrPWZ1bmN0aW9uKGUpe3ZhciB0LG8sbixyO2UmJihuPSJ0cnVlIj09PShlPWUuY3VycmVudFRhcmdldCkucGFyZW50RWxlbWVudC5nZXRBdHRyaWJ1dGUoImlzLXZlbmRvciIpLHQ9ZS5wYXJlbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1ncm91cC1pZCIpLHI9IiIsbz0hZS5jbGFzc0xpc3QuY29udGFpbnMoIm90LWxlZy1pbnQtZW5hYmxlZCIpLG4/dS5vblZlbmRvclRvZ2dsZSh0LGRlLkxJKToocj0obj1ELmdldEdyb3VwQnlJZCh0KSkuR3JvdXBOYW1lLG4uUGFyZW50P3UudXBkYXRlU3ViR3JvdXBUb2dnbGVzKG4sbywhMCk6dS51cGRhdGVHcm91cFRvZ2dsZXMobixvLCEwKSksVi51cGRhdGVMZWdJbnRCdG5FbGVtZW50KGUucGFyZW50RWxlbWVudCxvLHIpKX0saS5wcm90b3R5cGUudXBkYXRlR3JvdXBUb2dnbGVzPWZ1bmN0aW9uKHQsbyxlKXtEby50b2dnbGVHcm91cEhvc3RzKHQsbyksXy5nZW5WZW5PcHRPdXRFbmFibGVkJiZEby50b2dnbGVHcm91cEdlblZlbmRvcnModCxvKSx0LklzTGVnSW50VG9nZ2xlPWUsdS50b2dnbGVHcm91cFN0YXR1cyh0LG8pLHQuU3ViR3JvdXBzJiZ0LlN1Ykdyb3Vwcy5sZW5ndGgmJihiLmJhbm5lck5hbWU9PT1ldCYmUy5tb2R1bGVJbml0aWFsaXplci5Jc1N1cHByZXNzUEMmJnQuU3ViR3JvdXBzLmxlbmd0aD90LlN1Ykdyb3Vwcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UuSXNMZWdJbnRUb2dnbGU9dC5Jc0xlZ0ludFRvZ2dsZSxWLnRvZ2dsZUdycFN0YXR1cyhlLG8pLGUuSXNMZWdJbnRUb2dnbGU9ITEsRG8udG9nZ2xlR3JvdXBIb3N0cyhlLG8pLF8uZ2VuVmVuT3B0T3V0RW5hYmxlZCYmRG8udG9nZ2xlR3JvdXBHZW5WZW5kb3JzKGUsbyksdy5zZXRWZW5kb3JTdGF0ZUJ5R3JvdXAoZSxvKX0pOlYudG9vZ2xlQWxsU3ViR3JwRWxlbWVudHModCxvKSx0LlN1Ykdyb3Vwcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3JldHVybiB3LnNldFZlbmRvclN0YXRlQnlHcm91cChlLG8pfSkpLHcuc2V0VmVuZG9yU3RhdGVCeUdyb3VwKHQsbyksUy5mcC5XZWJCdXR0b25DdXN0b21pc2F0aW9uc3x8dGhpcy5hbGxvd0FsbFZpc2libGUoVi5zZXRBbGxvd0FsbEJ1dHRvbigpKSx0LklzTGVnSW50VG9nZ2xlPSExfSxpLnByb3RvdHlwZS50b2dnbGVHcm91cFN0YXR1cz1mdW5jdGlvbihlLHQpe3ZhciBvO2IucmVxdWlyZVNpZ25hdHVyZUVuYWJsZWQmJmUubmVlZHNIZWFsdGhTaWduYXR1cmU/KG89ITEsdD8oYi5oZWFsdGhTaWduYXR1cmVEYXRhJiYobz0hMCksYi5oZWFsdGhTaWduYXR1cmVHcm91cD1lKTpiLmhlYWx0aFNpZ25hdHVyZUdyb3VwPW51bGwsVi50b2dnbGVHcnBTdGF0dXMoZSxvKSk6Vi50b2dnbGVHcnBTdGF0dXMoZSx0KX0saS5wcm90b3R5cGUudXBkYXRlU3ViR3JvdXBUb2dnbGVzPWZ1bmN0aW9uKGUsdCxvKXtEby50b2dnbGVHcm91cEhvc3RzKGUsdCksXy5nZW5WZW5PcHRPdXRFbmFibGVkJiZEby50b2dnbGVHcm91cEdlblZlbmRvcnMoZSx0KTt2YXIgbj1ELmdldEdyb3VwQnlJZChlLlBhcmVudCksbz0oZS5Jc0xlZ0ludFRvZ2dsZT1vLG4uSXNMZWdJbnRUb2dnbGU9ZS5Jc0xlZ0ludFRvZ2dsZSxWLmlzR3JvdXBBY3RpdmUobikpO3Q/KFYudG9nZ2xlR3JwU3RhdHVzKGUsITApLFYuaXNBbGxTdWJncm91cHNFbmFibGVkKG4pJiYhbyYmKFYudG9nZ2xlR3JwU3RhdHVzKG4sITApLERvLnRvZ2dsZUdyb3VwSG9zdHMobix0KSxfLmdlblZlbk9wdE91dEVuYWJsZWQmJkRvLnRvZ2dsZUdyb3VwR2VuVmVuZG9ycyhuLHQpLFYudG9nZ2xlR3JvdXBIdG1sRWxlbWVudChlLGUuUGFyZW50KyhlLklzTGVnSW50VG9nZ2xlPyItbGVnLW91dCI6IiIpLCEwKSkpOihWLnRvZ2dsZUdycFN0YXR1cyhlLCExKSxWLmlzQWxsU3ViZ3JvdXBzRGlzYWJsZWQobikmJm8/KFYudG9nZ2xlR3JwU3RhdHVzKG4sITEpLERvLnRvZ2dsZUdyb3VwSG9zdHMobix0KSxfLmdlblZlbk9wdE91dEVuYWJsZWQmJkRvLnRvZ2dsZUdyb3VwR2VuVmVuZG9ycyhuLHQpLFYudG9nZ2xlR3JvdXBIdG1sRWxlbWVudChlLGUuUGFyZW50KyhlLklzTGVnSW50VG9nZ2xlPyItbGVnLW91dCI6IiIpLHQpKTooVi50b2dnbGVHcnBTdGF0dXMobiwhMSksRG8udG9nZ2xlR3JvdXBIb3N0cyhuLCExKSxfLmdlblZlbk9wdE91dEVuYWJsZWQmJkRvLnRvZ2dsZUdyb3VwR2VuVmVuZG9ycyhuLHQpLFYudG9nZ2xlR3JvdXBIdG1sRWxlbWVudChlLGUuUGFyZW50KyhlLklzTGVnSW50VG9nZ2xlPyItbGVnLW91dCI6IiIpLCExKSkpLHRoaXMuYWxsb3dBbGxWaXNpYmxlKFYuc2V0QWxsb3dBbGxCdXR0b24oKSksZS5Jc0xlZ0ludFRvZ2dsZT0hMSxuLklzTGVnSW50VG9nZ2xlPWUuSXNMZWdJbnRUb2dnbGV9LGkucHJvdG90eXBlLmhpZGVDYXRlZ29yeUNvbnRhaW5lcj1mdW5jdGlvbihlKXt0aGlzLmlzQ29va2llTGlzdD1lPXZvaWQgMD09PWU/ITE6ZSx1LmFkZEhpZGVDbGFzc0NvbnRhaW5lcigpLF8uc2hvd1ZlbmRvclNlcnZpY2U/Yy5zZXRIZWFkZXJDb25maWcoKTooZT91LnNldENvb2tpZUxpc3RUZW1wbGF0ZSgpOnUuc2V0VmVuZG9yTGlzdFRlbXBsYXRlKCksb3Iuc2V0RmlsdGVyTGlzdChlKSl9LGkucHJvdG90eXBlLnNldENvb2tpZUxpc3RUZW1wbGF0ZT1mdW5jdGlvbigpe3ZhciBlPVMuaXNWMlRlbXBsYXRlO3YoQS5QX1ZlbmRvcl9MaXN0KyIgI3NlbGVjdC1hbGwtdGV4dC1jb250YWluZXIiKS5zaG93KCJpbmxpbmUtYmxvY2siKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0hvc3RfQ250cikuc2hvdygpLEkuaXNPcHRPdXRFbmFibGVkKCk/digiI29uZXRydXN0LXBjLXNkayAjIitBLlBfU2VsX0FsbF9Ib3N0X0VsKS5zaG93KCJpbmxpbmUtYmxvY2siKTp2KCIjb25ldHJ1c3QtcGMtc2RrICMiK0EuUF9TZWxfQWxsX0hvc3RfRWwpLmhpZGUoKSx2KCIjb25ldHJ1c3QtcGMtc2RrICMiK0EuUF9TZWxfQWxsX1ZlbmRvcl9MZWdfRWwpLmhpZGUoKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0xlZ19IZWFkZXIpLmhpZGUoKSxlfHx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0xlZ19TZWxlY3RfQWxsKS5oaWRlKCksdigiI29uZXRydXN0LXBjLXNkayAjIitBLlBfU2VsX0FsbF9WZW5kb3JfQ29uc2VudF9FbCkuaGlkZSgpLHYoIiNvbmV0cnVzdC1wYy1zZGsgICIrQS5QX1ZlbmRvcl9Db250YWluZXIpLmhpZGUoKSwoTC5Vc2VHb29nbGVWZW5kb3JzfHxfLnNob3dHZW5lcmFsVmVuZG9ycykmJnYoIiNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1jbnRyIikuaGlkZSgpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0xpc3QpLmFkZENsYXNzKEEuUF9Ib3N0X1VJKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250ZW50KS5hZGRDbGFzcyhBLlBfSG9zdF9DbnQpfSxpLnByb3RvdHlwZS5zZXRWZW5kb3JMaXN0VGVtcGxhdGU9ZnVuY3Rpb24oKXt2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250YWluZXIpLnNob3coKSx2KCIjb25ldHJ1c3QtcGMtc2RrICMiK0EuUF9TZWxfQWxsX1ZlbmRvcl9Db25zZW50X0VsKS5zaG93KCJpbmxpbmUtYmxvY2siKSxMLlVzZUdvb2dsZVZlbmRvcnMmJnYoIiNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1jbnRyIikuc2hvdygpLGIubGVnSW50U2V0dGluZ3MuUEFsbG93TEkmJmIuaXNJYWIyb3J2MlRlbXBsYXRlPyh2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1NlbGVjdF9DbnRyKS5zaG93KFMuaXNWMlRlbXBsYXRlP3ZvaWQgMDoiaW5saW5lLWJsb2NrIiksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9MZWdfU2VsZWN0X0FsbCkuc2hvdygiaW5saW5lLWJsb2NrIiksdigiI29uZXRydXN0LXBjLXNkayAjIitBLlBfU2VsX0FsbF9WZW5kb3JfTGVnX0VsKS5zaG93KCJpbmxpbmUtYmxvY2siKSx2KEEuUF9WZW5kb3JfTGlzdCsiICNzZWxlY3QtYWxsLXRleHQtY29udGFpbmVyIikuaGlkZSgpLGIubGVnSW50U2V0dGluZ3MuUFNob3dMZWdJbnRCdG4/KHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfTGVnX0hlYWRlcikuaGlkZSgpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIyIrQS5QX1NlbF9BbGxfVmVuZG9yX0xlZ19FbCkuaGlkZSgpKTp2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0xlZ19IZWFkZXIpLnNob3coKSk6KHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfU2VsZWN0X0NudHIpLnNob3coKSx2KEEuUF9WZW5kb3JfTGlzdCsiICNzZWxlY3QtYWxsLXRleHQtY29udGFpbmVyIikuc2hvdygiaW5saW5lLWJsb2NrIiksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9MZWdfU2VsZWN0X0FsbCkuaGlkZSgpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIyIrQS5QX1NlbF9BbGxfVmVuZG9yX0xlZ19FbCkuaGlkZSgpKSx2KCIjb25ldHJ1c3QtcGMtc2RrICMiK0EuUF9TZWxfQWxsX0hvc3RfRWwpLmhpZGUoKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0hvc3RfQ250cikuaGlkZSgpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX0xpc3QpLnJlbW92ZUNsYXNzKEEuUF9Ib3N0X1VJKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250ZW50KS5yZW1vdmVDbGFzcyhBLlBfSG9zdF9DbnQpfSxpLnByb3RvdHlwZS5zaG93QWxsVmVuZG9ycz1mdW5jdGlvbih0KXtyZXR1cm4gRih0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsdS5mZXRjaEFuZFNldHVwUEMoKV07Y2FzZSAxOnJldHVybiBlLnNlbnQoKSx1LnNob3dWZW5kb3JzTGlzdChudWxsLCEwKSxfLmlzUENWaXNpYmxlP1szLDNdOls0LHUuc2hvd0Nvb2tpZVNldHRpbmdzSGFuZGxlcih0KV07Y2FzZSAyOmUuc2VudCgpLGUubGFiZWw9MztjYXNlIDM6cmV0dXJuWzJdfX0pfSl9LGkucHJvdG90eXBlLmZldGNoQW5kU2V0dXBQQz1mdW5jdGlvbigpe3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciB0O3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm4gUy5tb2R1bGVJbml0aWFsaXplci5Jc1N1cHByZXNzUEMmJjA9PT12KCIiK3UuUENfU0VMRUNUT1IpLmxlbmd0aD9bNCxLdC5nZXRQY0NvbnRlbnQoKV06WzMsMl07Y2FzZSAxOnQ9ZS5zZW50KCkseHMucHJlZmVyZW5jZUNlbnRlckdyb3VwPXtuYW1lOnQubmFtZSxodG1sOmF0b2IodC5odG1sKSxjc3M6dC5jc3N9LFMuaXNWMlRlbXBsYXRlPUwuUENUZW1wbGF0ZVVwZ3JhZGUmJi9vdFBjUGFuZWx8b3RQY0NlbnRlcnxvdFBjVGFiLy50ZXN0KHQubmFtZSksKHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm9uZXRydXN0LXN0eWxlIikpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQodC5pbm5lckhUTUwreHMucHJlZmVyZW5jZUNlbnRlckdyb3VwLmNzcyksdC5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KHQuaW5uZXJIVE1MK2NvLmFkZEN1c3RvbVByZWZlcmVuY2VDZW50ZXJDU1MoKSksQi5pbnNlcnRQY0h0bWwoKSx1LmluaXRpYWxpc2VDb25zZW50Tm90aWNlSGFuZGxlcnMoKSxMLklzSWFiRW5hYmxlZCYmZy5Jbml0aWFsaXplVmVuZG9yTGlzdCgpLGUubGFiZWw9MjtjYXNlIDI6cmV0dXJuIDAhPT12KCIiK3UuUENfU0VMRUNUT1IpLmxlbmd0aCYmTC5QQ1RlbXBsYXRlVXBncmFkZSYmKCh0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNvbmV0cnVzdC1wYy1zZGsgLm90LW9wdG91dC1zaWduYWwiKSkucXVlcnlTZWxlY3Rvcigic3BhbiIpLmlubmVyVGV4dD1JLmdldE9wdE91dFNpZ25hbFRleHQoITApLEIuc2V0T3B0T3V0U2lnbmFsVmlzaWJpbGl0eSh0KSksWzJdfX0pfSl9LGkucHJvdG90eXBlLnNldFZlbmRvckNvbnRlbnQ9ZnVuY3Rpb24oKXt2KCIiK3UuRklMVEVSX0NPVU5UX1NFTEVDVE9SKS50ZXh0KF8uZmlsdGVyQnlJQUJDYXRlZ29yaWVzLmxlbmd0aC50b1N0cmluZygpKSxnLmxvYWRWZW5kb3JMaXN0KCIiLF8uZmlsdGVyQnlJQUJDYXRlZ29yaWVzKSxMLlVzZUdvb2dsZVZlbmRvcnMmJihfLnZlbmRvckRvbUluaXQ/Zy5yZXNldEFkZHRsVmVuZG9ycygpOihnLmluaXRHb29nbGVWZW5kb3JzKCksdigiIit1LlBDX1NFTEVDVE9SKS5vbigiY2xpY2siLCIub3QtYWNjLWNudHIgPiBidXR0b24iLHUudG9nZ2xlQWNjb3JkaW9uU3RhdHVzLmJpbmQodGhpcykpKSksXy52ZW5kb3JEb21Jbml0fHwoXy52ZW5kb3JEb21Jbml0PSEwLHUuaW5pdGlhbGlzZUxlZ0ludEJ0bkhhbmRsZXJzKCksTC5Vc2VHb29nbGVWZW5kb3JzJiYodS5pbml0aWFsaXNlQWRkdGxWZW5IYW5kbGVyKCksdS5iaW5kU2VsQWxsSGFuZGxlcnMoKSkpLF8uc2hvd0dlbmVyYWxWZW5kb3JzJiYhXy5nZW5WZW5kb3JEb21Jbml0JiYoXy5nZW5WZW5kb3JEb21Jbml0PSEwLGcuaW5pdEdlblZlbmRvcnMoKSx1LmluaXRpYWxpemVHZW5WZW5IYW5kbGVycygpLEwuVXNlR29vZ2xlVmVuZG9yc3x8KHUuYmluZFNlbEFsbEhhbmRsZXJzKCksdigiIit1LlBDX1NFTEVDVE9SKS5vbigiY2xpY2siLCIub3QtYWNjLWNudHIgPiBidXR0b24iLHUudG9nZ2xlQWNjb3JkaW9uU3RhdHVzLmJpbmQodGhpcykpKSl9LGkucHJvdG90eXBlLmFkZEV2ZW50QWRkaXRpb25hbFRlY2hub2xvZ2llcz1mdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1jbnRyLm90LWFkZC10ZWNoID4gYnV0dG9uIik7MDxlLmxlbmd0aCYmKHYoZSkub2ZmKCJjbGljayIsdS50b2dnbGVBY2NvcmRpb25TdGF0dXMpLHYoZSkub24oImNsaWNrIix1LnRvZ2dsZUFjY29yZGlvblN0YXR1cykpfSxpLnByb3RvdHlwZS5zaG93VmVuZG9yc0xpc3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9ITEpLF8uY29va2llTGlzdFR5cGU9bnVsbCx1LmhpZGVDYXRlZ29yeUNvbnRhaW5lcighMSksZ24uYWRkT1RDc3NQcm9wZXJ0aWVzVG9Cb2R5KENuLlBDLHt9KSxfLnNob3dWZW5kb3JTZXJ2aWNlP2Muc2hvd1ZTTGlzdCgpOih0fHwodD1lLmdldEF0dHJpYnV0ZSgiZGF0YS1wYXJlbnQtaWQiKSkmJih0PUQuZ2V0R3JvdXBCeUlkKHQpKSYmKHQ9VSh0LlN1Ykdyb3VwcyxbdF0pLnJlZHVjZShmdW5jdGlvbihlLHQpe3JldHVybi0xPF90LmluZGV4T2YodC5UeXBlKSYmZS5wdXNoKHQuQ3VzdG9tR3JvdXBJZCksZX0sW10pLF8uZmlsdGVyQnlJQUJDYXRlZ29yaWVzPVUoXy5maWx0ZXJCeUlBQkNhdGVnb3JpZXMsdCkpLHUuc2V0VmVuZG9yQ29udGVudCgpLE9uLnVwZGF0ZUZpbHRlclNlbGVjdGlvbighMSkpLF8ucGNMYXllcj1zZS5WZW5kb3JMaXN0LGUmJkJvLnNldFBDRm9jdXMoQm8uZ2V0UENFbGVtZW50cygpKSx0aGlzLnNldFNlYXJjaElucHV0Rm9jdXMoKSwhMX0saS5wcm90b3R5cGUuc2hvd0lsbHVzdHJhdGlvbnM9ZnVuY3Rpb24oZSl7ZT1lLmdldEF0dHJpYnV0ZSgiZGF0YS1wYXJlbnQtaWQiKSxlPUQuZ2V0R3JvdXBCeUlkKGUpO18uY29va2llTGlzdFR5cGU9bnVsbCxfLnBjTGF5ZXI9c2UuSWFiSWxsdXN0cmF0aW9ucyx1LmFkZEhpZGVDbGFzc0NvbnRhaW5lcigpLGxyLnNob3dJbGx1c3RyYXRpb25zKGUuR3JvdXBOYW1lLGUuSWFiSWxsdXN0cmF0aW9ucyksQm8uc2V0UENGb2N1cyhCby5nZXRQQ0VsZW1lbnRzKCkpfSxpLnByb3RvdHlwZS5hZGRIaWRlQ2xhc3NDb250YWluZXI9ZnVuY3Rpb24oKXt2YXIgZT1iLnBjTmFtZTtMLlBDVGVtcGxhdGVVcGdyYWRlP3YoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ29udGVudCkuYWRkQ2xhc3MoIm90LWhpZGUiKTp2KCIjb25ldHJ1c3QtcGMtc2RrIC5vdC1tYWluLWNvbnRlbnQiKS5oaWRlKCksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfTGlzdCkucmVtb3ZlQ2xhc3MoIm90LWhpZGUiKSxlIT09aXQmJmUhPT1udCYmdigiI29uZXRydXN0LXBjLXNkayAjY2xvc2UtcGMtYnRuLWhhbmRsZXIubWFpbiIpLmhpZGUoKSxlPT09bnQmJmQodigiIit1LlBDX1NFTEVDVE9SKS5lbFswXSwnaGVpZ2h0OiAiIjsnLCEwKX0saS5wcm90b3R5cGUubG9hZENvb2tpZUxpc3Q9ZnVuY3Rpb24oZSl7Xy5maWx0ZXJCeUNhdGVnb3JpZXM9W10sdS5oaWRlQ2F0ZWdvcnlDb250YWluZXIoITApO3ZhciB0LGU9ZSYmZS5nZXRBdHRyaWJ1dGUoImRhdGEtcGFyZW50LWlkIik7cmV0dXJuIGUmJih0PUQuZ2V0R3JvdXBCeUlkKGUpLF8uZmlsdGVyQnlDYXRlZ29yaWVzLnB1c2goZSksdC5TdWJHcm91cHMubGVuZ3RoKSYmdC5TdWJHcm91cHMuZm9yRWFjaChmdW5jdGlvbihlKXstMT09PV90LmluZGV4T2YoZS5UeXBlKSYmKGU9ZS5DdXN0b21Hcm91cElkLF8uZmlsdGVyQnlDYXRlZ29yaWVzLmluZGV4T2YoZSk8MCkmJl8uZmlsdGVyQnlDYXRlZ29yaWVzLnB1c2goZSl9KSxnLmxvYWRIb3N0TGlzdCgiIixfLmZpbHRlckJ5Q2F0ZWdvcmllcyksXy5zaG93VHJhY2tpbmdUZWNoJiZ1LmFkZEV2ZW50QWRkaXRpb25hbFRlY2hub2xvZ2llcygpLHYoIiIrdS5GSUxURVJfQ09VTlRfU0VMRUNUT1IpLnRleHQoXy5maWx0ZXJCeUNhdGVnb3JpZXMubGVuZ3RoLnRvU3RyaW5nKCkpLE9uLnVwZGF0ZUZpbHRlclNlbGVjdGlvbighMCksXy5wY0xheWVyPXNlLkNvb2tpZUxpc3QsQm8uc2V0UENGb2N1cyhCby5nZXRQQ0VsZW1lbnRzKCkpLHRoaXMuc2V0U2VhcmNoSW5wdXRGb2N1cygpLCExfSxpLnByb3RvdHlwZS5zZWxlY3RBbGxWZW5kb3JzTGVnSW50SGFuZGxlcj1mdW5jdGlvbihlKXt2YXIgdD12KCIjb25ldHJ1c3QtcGMtc2RrICMiK0EuUF9TZWxfQWxsX1ZlbmRvcl9MZWdfRWwpLmVsWzBdLG89dC5jbGFzc0xpc3QuY29udGFpbnMoImxpbmUtdGhyb3VnaCIpLG49dihBLlBfVmVuZG9yX0NvbnRhaW5lcisnIGxpOm5vdChbc3R5bGU9ImRpc3BsYXk6IG5vbmU7Il0pIC52ZW5kb3ItbGVnLWNoZWNrYm94LWhhbmRsZXInKS5lbCxyPWUudGFyZ2V0LmNoZWNrZWQsaT17fTtfLnZlbmRvcnMuc2VsZWN0ZWRMZWdJbnRWZW5kb3JzLm1hcChmdW5jdGlvbihlLHQpe2lbZS5zcGxpdCgiOiIpWzBdXT10fSk7Zm9yKHZhciBzPTA7czxuLmxlbmd0aDtzKyspe1Auc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLG5bc10sciksTC5QQ1Nob3dDb25zZW50TGFiZWxzJiYobltzXS5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoIi5vdC1sYWJlbC1zdGF0dXMiKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KHI/TC5QQ0FjdGl2ZVRleHQ6TC5QQ0luYWN0aXZlVGV4dCkpO3ZhciBhPW5bc10uZ2V0QXR0cmlidXRlKCJsZWctdmVuZG9yaWQiKSxsPWlbYV07dm9pZCAwPT09bCYmKGw9YSksXy52ZW5kb3JzLnNlbGVjdGVkTGVnSW50VmVuZG9yc1tsXT1hKyI6IityfW8mJnQuY2xhc3NMaXN0LnJlbW92ZSgibGluZS10aHJvdWdoIiksUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsZS50YXJnZXQsciksUC5zZXRBcmlhQ2hlY2tlZEF0dHJpYnV0ZShudWxsLGUudGFyZ2V0LHIpfSxpLnByb3RvdHlwZS5zZWxBbGxBZHRsVmVuSGFuZGxlcj1mdW5jdGlvbihlKXtmb3IodmFyIHQ9digiI29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWFkdGx2ZW5jbnRyIikuZWxbMF0sbz10LmNsYXNzTGlzdC5jb250YWlucygibGluZS10aHJvdWdoIiksbj12KCIjb25ldHJ1c3QtcGMtc2RrIC5vdC1hZGR0bHZlbi1jaGtib3gtaGFuZGxlciIpLmVsLHI9ZS50YXJnZXQuY2hlY2tlZCxpPTA7aTxuLmxlbmd0aDtpKyspUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsbltpXSxyKSxMLlBDU2hvd0NvbnNlbnRMYWJlbHMmJihuW2ldLnBhcmVudEVsZW1lbnQucXVlcnlTZWxlY3RvcigiLm90LWxhYmVsLXN0YXR1cyIpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQocj9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KSk7cj9MLlVzZUdvb2dsZVZlbmRvcnMmJk9iamVjdC5rZXlzKF8uYWRkdGxWZW5kb3JzTGlzdCkuZm9yRWFjaChmdW5jdGlvbihlKXtfLmFkZHRsVmVuZG9ycy52ZW5kb3JTZWxlY3RlZFtlXT0hMH0pOl8uYWRkdGxWZW5kb3JzLnZlbmRvclNlbGVjdGVkPXt9LG8mJnQuY2xhc3NMaXN0LnJlbW92ZSgibGluZS10aHJvdWdoIil9LGkucHJvdG90eXBlLnNlbGVjdEFsbEdlblZlbkhhbmRsZXI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQuY2hlY2tlZDt1LnNlbGVjdEFsbEhhbmRsZXIoe3NlbEFsbEVsOiIjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtZ252ZW5jbnRyIix2ZW5kb3JCb3hlczoiI29uZXRydXN0LXBjLXNkayAub3QtZ252ZW4tY2hrYm94LWhhbmRsZXIifSwiZ2VudmVuIix0KSxQLnNldENoZWNrZWRBdHRyaWJ1dGUobnVsbCxlLnRhcmdldCx0KSxQLnNldEFyaWFDaGVja2VkQXR0cmlidXRlKG51bGwsZS50YXJnZXQsdCl9LGkucHJvdG90eXBlLnNlbGVjdEFsbEhhbmRsZXI9ZnVuY3Rpb24oZSx0LG8pe2Zvcih2YXIgbj12KGUuc2VsQWxsRWwpLmVsWzBdLHI9bi5jbGFzc0xpc3QuY29udGFpbnMoImxpbmUtdGhyb3VnaCIpLGk9dihlLnZlbmRvckJveGVzKS5lbCxzPTA7czxpLmxlbmd0aDtzKyspImdlbnZlbiI9PT10JiYhbyYmXy5hbHdheXNBY3RpdmVHZW5WZW5kb3JzLmluY2x1ZGVzKGlbc10uZ2V0QXR0cmlidXRlKCJnbi12aWQiKSk/KFAuc2V0RGlzYWJsZWRBdHRyaWJ1dGUobnVsbCxpW3NdLCEwKSxQLnNldENoZWNrZWRBdHRyaWJ1dGUobnVsbCxpW3NdLCEwKSk6UC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsaVtzXSxvKSxMLlBDU2hvd0NvbnNlbnRMYWJlbHMmJihpW3NdLnBhcmVudEVsZW1lbnQucXVlcnlTZWxlY3RvcigiLm90LWxhYmVsLXN0YXR1cyIpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobz9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KSk7bz8iZ29vZ2xldmVuIj09PXQmJkwuVXNlR29vZ2xlVmVuZG9ycz9PYmplY3Qua2V5cyhfLmFkZHRsVmVuZG9yc0xpc3QpLmZvckVhY2goZnVuY3Rpb24oZSl7Xy5hZGR0bFZlbmRvcnMudmVuZG9yU2VsZWN0ZWRbZV09ITB9KToiZ2VudmVuIj09PXQmJl8uc2hvd0dlbmVyYWxWZW5kb3JzJiZMLkdlbmVyYWxWZW5kb3JzLmZvckVhY2goZnVuY3Rpb24oZSl7Xy5nZW5WZW5kb3JzQ29uc2VudFtlLlZlbmRvckN1c3RvbUlkXT0hMH0pOiJnb29nbGV2ZW4iPT09dD9fLmFkZHRsVmVuZG9ycy52ZW5kb3JTZWxlY3RlZD17fTooXy5nZW5WZW5kb3JzQ29uc2VudD17fSxfLmFsd2F5c0FjdGl2ZUdlblZlbmRvcnMuZm9yRWFjaChmdW5jdGlvbihlKXtfLmdlblZlbmRvcnNDb25zZW50W2VdPSEwfSkpLHImJm4uY2xhc3NMaXN0LnJlbW92ZSgibGluZS10aHJvdWdoIil9LGkucHJvdG90eXBlLlNlbGVjdEFsbFZlbmRvckNvbnNlbnRIYW5kbGVyPWZ1bmN0aW9uKGUpe3ZhciB0PWUudGFyZ2V0LmNoZWNrZWQ7aWYoXy5zaG93VmVuZG9yU2VydmljZSljLnRvZ2dsZVZlbmRvcnModCk7ZWxzZXt2YXIgbz12KCIjb25ldHJ1c3QtcGMtc2RrICMiK0EuUF9TZWxfQWxsX1ZlbmRvcl9Db25zZW50X0VsKS5lbFswXSxuPW8uY2xhc3NMaXN0LmNvbnRhaW5zKCJsaW5lLXRocm91Z2giKSxyPXYoQS5QX1ZlbmRvcl9Db250YWluZXIrJyBsaTpub3QoW3N0eWxlPSJkaXNwbGF5OiBub25lOyJdKSAudmVuZG9yLWNoZWNrYm94LWhhbmRsZXInKS5lbCxpPXt9O18udmVuZG9ycy5zZWxlY3RlZFZlbmRvcnMubWFwKGZ1bmN0aW9uKGUsdCl7aVtlLnNwbGl0KCI6IilbMF1dPXR9KTtmb3IodmFyIHM9MDtzPHIubGVuZ3RoO3MrKyl7UC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwscltzXSx0KSxMLlBDU2hvd0NvbnNlbnRMYWJlbHMmJihyW3NdLnBhcmVudEVsZW1lbnQucXVlcnlTZWxlY3RvcigiLm90LWxhYmVsLXN0YXR1cyIpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQodD9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KSk7dmFyIGE9cltzXS5nZXRBdHRyaWJ1dGUoInZlbmRvcmlkIiksbD1pW2FdO3ZvaWQgMD09PWwmJihsPWEpLF8udmVuZG9ycy5zZWxlY3RlZFZlbmRvcnNbbF09YSsiOiIrdH1uJiZvLmNsYXNzTGlzdC5yZW1vdmUoImxpbmUtdGhyb3VnaCIpfVAuc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLGUudGFyZ2V0LHQpLFAuc2V0QXJpYUNoZWNrZWRBdHRyaWJ1dGUobnVsbCxlLnRhcmdldCx0KX0saS5wcm90b3R5cGUub25WZW5kb3JUb2dnbGU9ZnVuY3Rpb24obyxlKXt2YXIgdD1fLnZlbmRvcnMsbj1fLmFkZHRsVmVuZG9ycyxyPWU9PT1kZS5MST90LnNlbGVjdGVkTGVnSW50VmVuZG9yczplPT09ZGUuQWRkdGxDb25zZW50P1tdOnQuc2VsZWN0ZWRWZW5kb3JzLGk9ITEscz1OdW1iZXIobyk7ci5zb21lKGZ1bmN0aW9uKGUsdCl7ZT1lLnNwbGl0KCI6Iik7aWYoZVswXT09PW8pcmV0dXJuIHM9dCxpPSJ0cnVlIj09PWVbMV0sITB9KSxlPT09ZGUuTEk/KG1vLnRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudChObyxpP3JuOnNuLHQubGlzdC5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBlLnZlbmRvcklkPT09b30pLnZlbmRvck5hbWUrIjogIitrLklkUGF0dGVybnMuUHVyK28pLHQuc2VsZWN0ZWRMZWdJbnRWZW5kb3JzW3NdPW8rIjoiKyFpLGIubGVnSW50U2V0dGluZ3MuUFNob3dMZWdJbnRCdG58fGcudmVuZG9yTGVnSW50VG9nZ2xlRXZlbnQoKSk6ZT09PWRlLkFkZHRsQ29uc2VudD8obi52ZW5kb3JTZWxlY3RlZFtvXT9kZWxldGUgbi52ZW5kb3JTZWxlY3RlZFtvXTpuLnZlbmRvclNlbGVjdGVkW29dPSEwLGcudmVuQWR0bFNlbEFsbFRnbEV2ZW50KCkpOihtby50cmlnZ2VyR29vZ2xlQW5hbHl0aWNzRXZlbnQoTm8saT9ubjpvbix0Lmxpc3QuZmluZChmdW5jdGlvbihlKXtyZXR1cm4gZS52ZW5kb3JJZD09PW99KS52ZW5kb3JOYW1lKyI6ICIray5JZFBhdHRlcm5zLlB1citvKSx0LnNlbGVjdGVkVmVuZG9yc1tzXT1vKyI6IishaSxnLnZlbmRvcnNMaXN0RXZlbnQoKSl9LGkucHJvdG90eXBlLm9uVmVuZG9yRGlzY2xvc3VyZT1mdW5jdGlvbihyKXt2YXIgaTtyZXR1cm4gRih0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgdCxvLG47cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtzd2l0Y2goZS5sYWJlbCl7Y2FzZSAwOnJldHVybih0PV8uZGlzY1ZlbmRvcnMpW3JdLmlzRmV0Y2hlZD9bMyw0XToodFtyXS5pc0ZldGNoZWQ9ITAsbz10W3JdLmRpc2Nsb3N1cmVVcmwsbj12b2lkIDAsbnVsbCE9KGk9Uy5tb2R1bGVJbml0aWFsaXplcikmJmkuRGlzY2xvc3VyZUNETlVybD8obz1TLm1vZHVsZUluaXRpYWxpemVyLkRpc2Nsb3N1cmVDRE5VcmwrIi8iK3IrIi5qc29uIixbNCxLdC5nZXRTdG9yYWdlRGlzY2xvc3VyZShvKV0pOlszLDJdKTtjYXNlIDE6aWYobj1lLnNlbnQoKSlyZXR1cm5bMixnLnVwZGF0ZVZlbmRvckRpc2Nsb3N1cmUocixuKV07bz10W3JdLmRpc2Nsb3N1cmVVcmwsZS5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bNCxLdC5nZXRTdG9yYWdlRGlzY2xvc3VyZShvKV07Y2FzZSAzOnJldHVybiBuPWUuc2VudCgpLFsyLGcudXBkYXRlVmVuZG9yRGlzY2xvc3VyZShyLG4pXTtjYXNlIDQ6cmV0dXJuWzJdfX0pfSl9LGkucHJvdG90eXBlLnRnbEZsdHJPcHRpb25IYW5kbGVyPWZ1bmN0aW9uKGUpe2UmJmUudGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucygiY2F0ZWdvcnktZmlsdGVyLWhhbmRsZXIiKSYmUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsZS50YXJnZXQsZS50YXJnZXQuY2hlY2tlZCl9LGkucHJvdG90eXBlLnNlbGVjdFZlbmRvcnNHcm91cEhhbmRsZXI9ZnVuY3Rpb24oZSl7dS50b2dnbGVBY2NvcmRpb25TdGF0dXMoZSk7dmFyIHQ9ZS50YXJnZXQuZ2V0QXR0cmlidXRlKCJsZWctdmVuZG9yaWQiKSxvPWUudGFyZ2V0LmdldEF0dHJpYnV0ZSgidmVuZG9yaWQiKSxuPWUudGFyZ2V0LmdldEF0dHJpYnV0ZSgiYWRkdGwtdmlkIikscj1lLnRhcmdldC5nZXRBdHRyaWJ1dGUoImRpc2MtdmlkIik7dD91Lm9uVmVuZG9yVG9nZ2xlKHQsZGUuTEkpOm8/dS5vblZlbmRvclRvZ2dsZShvLGRlLkNvbnNlbnQpOm4mJnUub25WZW5kb3JUb2dnbGUobixkZS5BZGR0bENvbnNlbnQpLHImJnUub25WZW5kb3JEaXNjbG9zdXJlKHIpLCh0fHxvfHxuKSYmKFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLGUudGFyZ2V0LGUudGFyZ2V0LmNoZWNrZWQpLEwuUENTaG93Q29uc2VudExhYmVscykmJihlLnRhcmdldC5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoIi5vdC1sYWJlbC1zdGF0dXMiKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KGUudGFyZ2V0LmNoZWNrZWQ/TC5QQ0FjdGl2ZVRleHQ6TC5QQ0luYWN0aXZlVGV4dCkpfSxpLnByb3RvdHlwZS50b2dnbGVWZW5kb3JGaWx0ZXJzSGFuZGxlcj1mdW5jdGlvbigpe3ZhciBlLHQ9ITEsbz12KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0ZsdHJfTW9kYWwpLmVsWzBdO3N3aXRjaChiLnBjTmFtZSl7Y2FzZSBydDpjYXNlIG90OmNhc2UgbnQ6Y2FzZSBzdDoodD0iYmxvY2siPT09by5zdHlsZS5kaXNwbGF5KT91LmNsb3NlRmlsdGVyKCk6KGU9digiI29uZXRydXN0LXBjLXNkayAiK0EuUF9UcmlhbmdsZSkuZWxbMF0sdihlKS5hdHRyKCJzdHlsZSIsImRpc3BsYXk6IGJsb2NrOyIpLHYobykuYXR0cigic3R5bGUiLCJkaXNwbGF5OiBibG9jazsiKSxlPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKG8ucXVlcnlTZWxlY3RvckFsbCgiW2hyZWZdLCBpbnB1dCwgYnV0dG9uIikpLEJvLnNldFBDRm9jdXMoZSkpO2JyZWFrO2Nhc2UgaXQ6ODk2PHdpbmRvdy5pbm5lcldpZHRofHw4OTY8d2luZG93LnNjcmVlbi5oZWlnaHQ/ZChvLCJ3aWR0aDogNDAwcHg7IiwhMCk6ZChvLCJoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyIpLG8ucXVlcnlTZWxlY3RvcigiLm90LWNoZWNrYm94IGlucHV0IikuZm9jdXMoKTticmVhaztkZWZhdWx0OnJldHVybn1TLmlzVjJUZW1wbGF0ZSYmIXQmJih2KCIjb25ldHJ1c3QtcGMtc2RrIikuYWRkQ2xhc3MoIm90LXNody1mbHRyIiksdigiI29uZXRydXN0LXBjLXNkayAub3QtZmx0ci1zY3JsY250IikuZWxbMF0uc2Nyb2xsVG9wPTApfSxpLnByb3RvdHlwZS5jbGVhckZpbHRlcnNIYW5kbGVyPWZ1bmN0aW9uKCl7dS5zZXRBcmlhTGFiZWxmb3JCdXR0b25JbkZpbHRlcihMLlBDZW50ZXJGaWx0ZXJDbGVhcmVkQXJpYSk7Zm9yKHZhciBlPXYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfRmx0cl9Nb2RhbCsiIGlucHV0IikuZWwsdD0wO3Q8ZS5sZW5ndGg7dCsrKVAuc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLGVbdF0sITEpO3UuaXNDb29raWVMaXN0P18uZmlsdGVyQnlDYXRlZ29yaWVzPVtdOl8uZmlsdGVyQnlJQUJDYXRlZ29yaWVzPVtdfSxpLnByb3RvdHlwZS5jYW5jZWxGaWx0ZXJIYW5kbGVyPWZ1bmN0aW9uKCl7Xy5zaG93VmVuZG9yU2VydmljZT9jLmNhbmNlbEZpbHRlcigpOnUuaXNDb29raWVMaXN0P09uLmNhbmNlbEhvc3RGaWx0ZXIoKTpnLmNhbmNlbFZlbmRvckZpbHRlcigpLHUuY2xvc2VGaWx0ZXIoKSx2KCIjb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItYnRuLWhhbmRsZXIiKS5mb2N1cygpfSxpLnByb3RvdHlwZS5hcHBseUZpbHRlckhhbmRsZXI9ZnVuY3Rpb24oKXt2YXIgZTt1LnNldEFyaWFMYWJlbGZvckJ1dHRvbkluRmlsdGVyKEwuUENlbnRlckZpbHRlckFwcGxpZWRBcmlhKSxfLnNob3dWZW5kb3JTZXJ2aWNlPyhlPWMuZ2V0R3JvdXBzRmlsdGVyKCksYy5maWx0ZXJWZW5kb3JCeUdyb3VwKGUpKTp1LmlzQ29va2llTGlzdD8oZT1Pbi51cGRhdGVIb3N0RmlsdGVyTGlzdCgpLGcubG9hZEhvc3RMaXN0KCIiLGUpLF8uc2hvd1RyYWNraW5nVGVjaCYmdS5hZGRFdmVudEFkZGl0aW9uYWxUZWNobm9sb2dpZXMoKSk6KGU9Zy51cGRhdGVWZW5kb3JGaWx0ZXJMaXN0KCksZy5sb2FkVmVuZG9yTGlzdCgiIixlKSksdigiIit1LkZJTFRFUl9DT1VOVF9TRUxFQ1RPUikudGV4dChTdHJpbmcoZS5sZW5ndGgpKSx1LmNsb3NlRmlsdGVyKCksdigiI29uZXRydXN0LXBjLXNkayAjZmlsdGVyLWJ0bi1oYW5kbGVyIikuZm9jdXMoKSxnLnBsYXlTZWFyY2hTdGF0dXModS5pc0Nvb2tpZUxpc3QpfSxpLnByb3RvdHlwZS5zZXRBcmlhTGFiZWxmb3JCdXR0b25JbkZpbHRlcj1mdW5jdGlvbihlKXt2YXIgdD1fLmlzUENWaXNpYmxlP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNvbmV0cnVzdC1wYy1zZGsgc3BhblthcmlhLWxpdmVdIik6ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LWJhbm5lci1zZGsgc3BhblthcmlhLWxpdmVdIik7aWYoIXQpeyh0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKSkuY2xhc3NMaXN0LmFkZCgib3Qtc2Nybi1yZHIiKSx0LnNldEF0dHJpYnV0ZSgiYXJpYS1hdG9taWMiLCJ0cnVlIik7dmFyIG89dm9pZCAwO2lmKF8uaXNQQ1Zpc2libGU/bz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCh1LnBjU0RLU2VsZWN0b3IpOmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHUuYmFubmVyU2VsZWN0b3IpJiYobz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCh1LmJhbm5lclNlbGVjdG9yKSksIW8pcmV0dXJuO28uYXBwZW5kQ2hpbGQodCl9dC5zZXRBdHRyaWJ1dGUoImFyaWEtYXRvbWljIiwidHJ1ZSIpLHQuc2V0QXR0cmlidXRlKCJhcmlhLXJlbGV2YW50IiwiYWRkaXRpb25zIiksdC5zZXRBdHRyaWJ1dGUoImFyaWEtbGl2ZSIsImFzc2VydGl2ZSIpLHQuc2V0QXR0cmlidXRlKG10LGUpLHUudGltZUNhbGxiYWNrJiZjbGVhclRpbWVvdXQodS50aW1lQ2FsbGJhY2spLHUudGltZUNhbGxiYWNrPXNldFRpbWVvdXQoZnVuY3Rpb24oKXt1LnRpbWVDYWxsYmFjaz1udWxsLHQuc2V0QXR0cmlidXRlKG10LCIiKX0sOTAwKX0saS5wcm90b3R5cGUuc2V0UGNMaXN0Q29udGFpbmVySGVpZ2h0PWZ1bmN0aW9uKCl7digiI29uZXRydXN0LXBjLXNkayAiK0EuUF9Db250ZW50KS5lbFswXS5jbGFzc0xpc3QuY29udGFpbnMoIm90LWhpZGUiKT9kKHYoIiIrdS5QQ19TRUxFQ1RPUikuZWxbMF0sJ2hlaWdodDogIiI7JywhMCk6c2V0VGltZW91dChmdW5jdGlvbigpe3ZhciBlPXdpbmRvdy5pbm5lckhlaWdodDs3Njg8PXdpbmRvdy5pbm5lcldpZHRoJiY2MDA8PXdpbmRvdy5pbm5lckhlaWdodCYmKGU9Ljgqd2luZG93LmlubmVySGVpZ2h0KSwhdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9Db250ZW50KS5lbFswXS5zY3JvbGxIZWlnaHR8fHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfQ29udGVudCkuZWxbMF0uc2Nyb2xsSGVpZ2h0Pj1lP2QodigiIit1LlBDX1NFTEVDVE9SKS5lbFswXSwiaGVpZ2h0OiAiK2UrInB4OyIsITApOmQodigiIit1LlBDX1NFTEVDVE9SKS5lbFswXSwiaGVpZ2h0OiBhdXRvOyIsITApfSl9LGkucHJvdG90eXBlLmNoYW5nZVNlbGVjdGVkVGFiPWZ1bmN0aW9uKGUpe3ZhciB0LG89digiI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktbWVudS1zd2l0Y2gtaGFuZGxlciIpLG49MCxyPXYoby5lbFswXSk7by5lYWNoKGZ1bmN0aW9uKGUsdCl7dihlKS5lbC5jbGFzc0xpc3QuY29udGFpbnMoQS5QX0FjdGl2ZV9NZW51KSYmKG49dCx2KGUpLmVsLmNsYXNzTGlzdC5yZW1vdmUoQS5QX0FjdGl2ZV9NZW51KSxyPXYoZSkpfSksZS5rZXlDb2RlPT09YWUuRG93bkFycm93P3Q9bisxPj1vLmVsLmxlbmd0aD92KG8uZWxbMF0pOnYoby5lbFtuKzFdKTplLmtleUNvZGU9PT1hZS5VcEFycm93JiYodD12KG4tMTwwP28uZWxbby5lbC5sZW5ndGgtMV06by5lbFtuLTFdKSksdGhpcy50YWJNZW51VG9nZ2xlKHQscil9LGkucHJvdG90eXBlLmNoYW5nZVNlbGVjdGVkVGFiVjI9ZnVuY3Rpb24oZSl7dmFyIHQsbz1lLnRhcmdldC5wYXJlbnRFbGVtZW50LGU9KGUua2V5Q29kZT09PWFlLkRvd25BcnJvdz90PW8ubmV4dEVsZW1lbnRTaWJsaW5nfHxvLnBhcmVudEVsZW1lbnQuZmlyc3RDaGlsZDplLmtleUNvZGU9PT1hZS5VcEFycm93JiYodD1vLnByZXZpb3VzRWxlbWVudFNpYmxpbmd8fG8ucGFyZW50RWxlbWVudC5sYXN0Q2hpbGQpLHQucXVlcnlTZWxlY3RvcigiLmNhdGVnb3J5LW1lbnUtc3dpdGNoLWhhbmRsZXIiKSk7ZS5mb2N1cygpLHRoaXMuZ3JvdXBUYWJDbGljayhlKX0saS5wcm90b3R5cGUuY2F0ZWdvcnlNZW51U3dpdGNoSGFuZGxlcj1mdW5jdGlvbigpe2Zvcih2YXIgbz10aGlzLGU9digiI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktbWVudS1zd2l0Y2gtaGFuZGxlciIpLmVsLG49dGhpcyx0PTA7dDxlLmxlbmd0aDt0KyspKHQ9PntlW3RdLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixuLmdyb3VwVGFiQ2xpY2spLGVbdF0uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oZSl7aWYoMTw9dCYmZS5zaGlmdEtleSYmOT09PWUua2V5Q29kZSYmIUwuU2hvd1ByZWZlcmVuY2VDZW50ZXJDbG9zZUJ1dHRvbiYmTC5QQ0xheW91dC5UYWImJihlLnByZXZlbnREZWZhdWx0KCksQm8ubGFzdEl0ZW0uZm9jdXMoKSksMzI9PT1lLmtleUNvZGV8fCJzcGFjZSI9PT1lLmNvZGUpcmV0dXJuIG8uZ3JvdXBUYWJDbGljayhlLmN1cnJlbnRUYXJnZXQpLGUucHJldmVudERlZmF1bHQoKSwhMX0pfSkodCl9LGkucHJvdG90eXBlLmdyb3VwVGFiQ2xpY2s9ZnVuY3Rpb24oZSl7dmFyIHQ9digiI29uZXRydXN0LXBjLXNkayAiK0EuUF9HcnBfQ29udGFpbmVyKS5lbFswXSxvPXQucXVlcnlTZWxlY3RvcigiLiIrQS5QX0FjdGl2ZV9NZW51KSxlPWUuY3VycmVudFRhcmdldHx8ZSxuPWUuZ2V0QXR0cmlidXRlKCJhcmlhLWNvbnRyb2xzIik7by5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IiwtMSksby5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCExKSxvLmNsYXNzTGlzdC5yZW1vdmUoQS5QX0FjdGl2ZV9NZW51KSx0LnF1ZXJ5U2VsZWN0b3IoQS5QX0Rlc2NfQ29udGFpbmVyKyI6bm90KC5vdC1oaWRlKSIpLmNsYXNzTGlzdC5hZGQoIm90LWhpZGUiKSx0LnF1ZXJ5U2VsZWN0b3IoIiMiK24pLmNsYXNzTGlzdC5yZW1vdmUoIm90LWhpZGUiKSxlLnNldEF0dHJpYnV0ZSgidGFiaW5kZXgiLDApLGUuc2V0QXR0cmlidXRlKCJhcmlhLXNlbGVjdGVkIiwhMCksZS5jbGFzc0xpc3QuYWRkKEEuUF9BY3RpdmVfTWVudSl9LGkucHJvdG90eXBlLnRhYk1lbnVUb2dnbGU9ZnVuY3Rpb24oZSx0KXtlLmVsLnNldEF0dHJpYnV0ZSgidGFiaW5kZXgiLDApLGUuZWwuc2V0QXR0cmlidXRlKCJhcmlhLXNlbGVjdGVkIiwhMCksdC5lbC5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IiwtMSksdC5lbC5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCExKSxlLmZvY3VzKCksdC5lbC5wYXJlbnRFbGVtZW50LnBhcmVudEVsZW1lbnQucXVlcnlTZWxlY3RvcigiIitBLlBfRGVzY19Db250YWluZXIpLmNsYXNzTGlzdC5hZGQoIm90LWhpZGUiKSxlLmVsLnBhcmVudEVsZW1lbnQucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKCIiK0EuUF9EZXNjX0NvbnRhaW5lcikuY2xhc3NMaXN0LnJlbW92ZSgib3QtaGlkZSIpLGUuZWwuY2xhc3NMaXN0LmFkZChBLlBfQWN0aXZlX01lbnUpfSxpLnByb3RvdHlwZS5jbG9zZUZpbHRlcj1mdW5jdGlvbihlKXt2YXIgdCxvO3ZvaWQgMD09PWUmJihlPSEwKSxrbi5jaGVja0lmUGNTZGtDb250YWluZXJFeGlzdCgpfHwodD12KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0ZsdHJfTW9kYWwpLmVsWzBdLG89digiI29uZXRydXN0LXBjLXNkayAiK0EuUF9UcmlhbmdsZSkuZWxbMF0sYi5wY05hbWU9PT1pdD84OTY8d2luZG93LmlubmVyV2lkdGh8fDg5Njx3aW5kb3cuc2NyZWVuLmhlaWdodD9kKHQsIndpZHRoOiAwOyIsITApOmQodCwiaGVpZ2h0OiAwOyIpOmQodCwiZGlzcGxheTogbm9uZTsiKSxvJiZ2KG8pLmF0dHIoInN0eWxlIiwiZGlzcGxheTogbm9uZTsiKSxTLmlzVjJUZW1wbGF0ZSYmdigiI29uZXRydXN0LXBjLXNkayIpLnJlbW92ZUNsYXNzKCJvdC1zaHctZmx0ciIpLGUmJkJvLnNldEZpcnN0QW5kTGFzdChCby5nZXRQQ0VsZW1lbnRzKCkpKX0saS5wcm90b3R5cGUuc2V0QmFja0J1dHRvbkZvY3VzPWZ1bmN0aW9uKCl7digiI29uZXRydXN0LXBjLXNkayAuYmFjay1idG4taGFuZGxlciIpLmVsWzBdLmZvY3VzKCl9LGkucHJvdG90eXBlLnNldFNlYXJjaElucHV0Rm9jdXM9ZnVuY3Rpb24oKXt2KHUuVkVORE9SX1NFQVJDSF9TRUxFQ1RPUikuZWxbMF0uZm9jdXMoKX0saS5wcm90b3R5cGUuc2V0Q2VudGVyTGF5b3V0Rm9vdGVySGVpZ2h0PWZ1bmN0aW9uKCl7dmFyIGU9dS5wYztpZihiLnBjTmFtZT09PXN0JiZlKXt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3JBbGwoIiIrQS5QX0Rlc2NfQ29udGFpbmVyKSxvPWUucXVlcnlTZWxlY3RvckFsbCgibGkgLmNhdGVnb3J5LW1lbnUtc3dpdGNoLWhhbmRsZXIiKTtpZighZS5xdWVyeVNlbGVjdG9yKCIuY2F0ZWdvcnktbWVudS1zd2l0Y2gtaGFuZGxlciArICIrQS5QX0Rlc2NfQ29udGFpbmVyKSYmd2luZG93LmlubmVyV2lkdGg8PTY0MClmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKylvW25dLmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJlbmQiLHRbbl0pO2Vsc2UgZS5xdWVyeVNlbGVjdG9yKCIuY2F0ZWdvcnktbWVudS1zd2l0Y2gtaGFuZGxlciArICIrQS5QX0Rlc2NfQ29udGFpbmVyKSYmNjQwPHdpbmRvdy5pbm5lcldpZHRoJiZ2KGUucXVlcnlTZWxlY3RvcigiLm90LXRhYi1kZXNjIikpLmFwcGVuZCh0KX11LnBjQ2VudGVyQW5kVGFiQ2hlY2tCdXR0b25zT3JkZXJTaXplcygpLHUuc2V0UGFuZWxMYXlvdXRCdXR0b25zU2l6ZSgpLHUuc2V0TWFpbkNvbnRlbnRIZWlnaHQoKX0saS5wcm90b3R5cGUucGNDZW50ZXJBbmRUYWJDaGVja0J1dHRvbnNPcmRlclNpemVzPWZ1bmN0aW9uKCl7dmFyIGUsdCxvLG4scjtMLlBDVGVtcGxhdGVVcGdyYWRlJiZTLmZwLldlYkJ1dHRvbkN1c3RvbWlzYXRpb25zJiYoYi5wY05hbWU9PT1vdHx8Yi5wY05hbWU9PT1zdCkmJih3aW5kb3cuaW5uZXJXaWR0aDw9NTAwfHwyMDwobnVsbD09KGU9TC5Db25maXJtVGV4dCk/dm9pZCAwOmUubGVuZ3RoKXx8MjA8KG51bGw9PShlPUwuQWxsb3dBbGxUZXh0KT92b2lkIDA6ZS5sZW5ndGgpfHwyMDwobnVsbD09KGU9TC5QQ2VudGVyUmVqZWN0QWxsQnV0dG9uVGV4dCk/dm9pZCAwOmUubGVuZ3RoKT91LnN0YWNrQnV0dG9ucygpOihlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodS5QQ19TRUxFQ1RPUiksdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHUuUENfRk9PVEVSKSxvPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodS5vdFBjQ29udGFpbmVyU2VsZWN0b3IpLG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI290LXBjLWxzdCIpLG51bGwhPShyPXQpJiZyLnN0eWxlLnNldFByb3BlcnR5KCJoZWlnaHQiLCJhdXRvIikscj1jdCxudWxsIT0oZT1udWxsPT0oZT1lKT92b2lkIDA6ZS5jbGFzc0xpc3QpJiZlLmNvbnRhaW5zKCJvdC1mdHItc3RhY2tlZCIpJiYocj1sdCksbnVsbCE9KGU9dCkmJmUuc3R5bGUuc2V0UHJvcGVydHkocHQscisicHgiKSxudWxsIT0odD1vKSYmdC5zdHlsZS5zZXRQcm9wZXJ0eShwdCxyKyJweCIpLG51bGwhPShlPW4pJiZlLnN0eWxlLnNldFByb3BlcnR5KHB0LHIrInB4IikpKX0saS5wcm90b3R5cGUuc2V0UGFuZWxMYXlvdXRCdXR0b25zU2l6ZT1mdW5jdGlvbigpe3ZhciBlLHQsbyxuLHI7TC5QQ1RlbXBsYXRlVXBncmFkZSYmUy5mcC5XZWJCdXR0b25DdXN0b21pc2F0aW9ucyYmYi5wY05hbWU9PT1ydCYmKG89ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm90LWJ0bi1jb250YWluZXIub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciIpKSYmKHQ9KG51bGw9PSh0PW8uY2hpbGRyZW4pP3ZvaWQgMDp0Lmxlbmd0aCkqbHQvMyx0PU1hdGgubWF4KGR0LE1hdGgubWluKGx0LHQpKSxvLmNsYXNzTGlzdC5jb250YWlucygib3QtaGlkZSIpJiYodD1NYXRoLm1pbih1dCx0KSksbz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIub3QtcGMtZm9vdGVyIiksbj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb3QtcGMtbHN0Iikscj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHUub3RQY0NvbnRhaW5lclNlbGVjdG9yKSxudWxsIT0oZT1vKSYmZS5zdHlsZS5zZXRQcm9wZXJ0eSgiaGVpZ2h0IiwiMTAwJSIpLG51bGwhPShlPW8pJiZlLnN0eWxlLnNldFByb3BlcnR5KCJkaXNwbGF5IiwiZmxleCIpLG51bGwhPShlPW8pJiZlLnN0eWxlLnNldFByb3BlcnR5KCJmbGV4LWRpcmVjdGlvbiIsImNvbHVtbiIpLG51bGwhPShlPW8pJiZlLnN0eWxlLnNldFByb3BlcnR5KHB0LHQrInB4IiksbnVsbCE9KG89cikmJm8uc3R5bGUuc2V0UHJvcGVydHkocHQsdCsicHgiKSxudWxsIT0oZT1uKSkmJmUuc3R5bGUuc2V0UHJvcGVydHkocHQsdCsicHgiKX0saS5wcm90b3R5cGUuc3RhY2tCdXR0b25zPWZ1bmN0aW9uKCl7dmFyIGUsdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHUuUENfRk9PVEVSKSxvPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodS5vdFBjQ29udGFpbmVyU2VsZWN0b3IpLG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI290LXBjLWxzdCIpLHI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm90LWJ0bi1jb250YWluZXIub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciIpO3ImJihlPShudWxsPT0oZT1yKT92b2lkIDA6ZS5jaGlsZHJlbi5sZW5ndGgpKmx0LzMsZT1NYXRoLm1heChkdCxNYXRoLm1pbihsdCxlKSksci5jbGFzc0xpc3QuY29udGFpbnMoIm90LWhpZGUiKSYmKGU9TWF0aC5taW4odXQsZSkpLG51bGwhPShyPXQpJiZyLnN0eWxlLnNldFByb3BlcnR5KCJoZWlnaHQiLCIxMDAlIiksbnVsbCE9KHI9dCkmJnIuc3R5bGUuc2V0UHJvcGVydHkocHQsZSsicHgiKSxudWxsIT0odD1vKSYmdC5zdHlsZS5zZXRQcm9wZXJ0eShwdCxlKyJweCIpLG51bGwhPShyPW4pKSYmci5zdHlsZS5zZXRQcm9wZXJ0eShwdCxlKyJweCIpfSxpLnByb3RvdHlwZS5zZXRNYWluQ29udGVudEhlaWdodD1mdW5jdGlvbigpe3ZhciBlLHQ9dGhpcy5wYyxvPXQucXVlcnlTZWxlY3Rvcih1LlBDX0ZPT1RFUiksbj10LnF1ZXJ5U2VsZWN0b3IoIi5vdC1wYy1oZWFkZXIiKSxyPUwuUENMYXlvdXQsaT0odS50b2dnbGVGdHJTdGFja2VkQ2xhc3ModCksTC5QQ1RlbXBsYXRlVXBncmFkZXx8ci5DZW50ZXJ8fChlPXQuY2xpZW50SGVpZ2h0LW8uY2xpZW50SGVpZ2h0LW4uY2xpZW50SGVpZ2h0LTMsTC5QQ1RlbXBsYXRlVXBncmFkZSYmIXIuVGFiJiZMLlBDZW50ZXJWZW5kb3JMaXN0RGVzY1RleHQmJihlPWUtKChpPXYoIiN2ZHItbHN0LWRzYyIpLmVsKS5sZW5ndGgmJmlbMF0uY2xpZW50SGVpZ2h0KS0xMCksZCh0LnF1ZXJ5U2VsZWN0b3IoIiIrQS5QX1ZlbmRvcl9MaXN0KSwiaGVpZ2h0OiAiK2UrInB4OyIsITApKSx0LnF1ZXJ5U2VsZWN0b3IoIiIrQS5QX0NvbnRlbnQpKTtMLlBDVGVtcGxhdGVVcGdyYWRlJiZyLkNlbnRlcj8oZT02MDA8d2luZG93LmlubmVyV2lkdGgmJjQ3NTx3aW5kb3cuaW5uZXJIZWlnaHQsIXRoaXMucGNCb2R5SGVpZ2h0JiZlJiYodGhpcy5wY0JvZHlIZWlnaHQ9aS5zY3JvbGxIZWlnaHQpLGU/KGk9dGhpcy5wY0JvZHlIZWlnaHQrby5jbGllbnRIZWlnaHQrbi5jbGllbnRIZWlnaHQrMjApPi44KndpbmRvdy5pbm5lckhlaWdodHx8MD09PXRoaXMucGNCb2R5SGVpZ2h0P2QodCwiaGVpZ2h0OiAiKy44KndpbmRvdy5pbm5lckhlaWdodCsicHg7IiwhMCk6ZCh0LCJoZWlnaHQ6ICIraSsicHg7IiwhMCk6ZCh0LCJoZWlnaHQ6IDk1JTsiLCEwKSk6dGhpcy5zZXRQQ0NvbnRlbnRBbmRMaXN0SGVpZ2h0KHQscil9LGkucHJvdG90eXBlLnRvZ2dsZUZ0clN0YWNrZWRDbGFzcz1mdW5jdGlvbihlKXt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3JBbGwoIi5vdC1wYy1mb290ZXIgYnV0dG9uIiksdD1BcnJheS5mcm9tKHQpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4ibm9uZSIhPT1nZXRDb21wdXRlZFN0eWxlKGUpLmRpc3BsYXl9KSxvPXRbdC5sZW5ndGgtMV07ZS5jbGFzc0xpc3QucmVtb3ZlKCJvdC1mdHItc3RhY2tlZCIpLHRbMF0mJm8mJm8ub2Zmc2V0VG9wPnRbMF0ub2Zmc2V0VG9wKzEmJmUuY2xhc3NMaXN0LmFkZCgib3QtZnRyLXN0YWNrZWQiKX0saS5wcm90b3R5cGUuc2V0UENDb250ZW50QW5kTGlzdEhlaWdodD1mdW5jdGlvbihlLHQpe3ZhciBvPWUucXVlcnlTZWxlY3Rvcih1LlBDX0ZPT1RFUiksbj1lLnF1ZXJ5U2VsZWN0b3IoIi5vdC1wYy1oZWFkZXIiKSxyPWUucXVlcnlTZWxlY3RvcigiI290LXBjLWxzdCIpO2QoZS5xdWVyeVNlbGVjdG9yKCIiK0EuUF9Db250ZW50KSwiaGVpZ2h0OiAiKyhlLmNsaWVudEhlaWdodC1vLmNsaWVudEhlaWdodC1uLmNsaWVudEhlaWdodC0zKSsicHg7IiwhMCksdC5UYWImJmQociwiaGVpZ2h0OiAiKyhlLmNsaWVudEhlaWdodC1vLmNsaWVudEhlaWdodC1uLmNsaWVudEhlaWdodC0zKSsicHg7IiwhMCl9LGkucHJvdG90eXBlLmFsbG93QWxsVmlzaWJsZT1mdW5jdGlvbihlKXtlIT09dGhpcy5hbGxvd1Zpc2libGUmJkwuUENMYXlvdXQuVGFiJiZMLlBDVGVtcGxhdGVVcGdyYWRlJiYodGhpcy5wYyYmdGhpcy5zZXRNYWluQ29udGVudEhlaWdodCgpLHRoaXMuYWxsb3dWaXNpYmxlPWUpfSxpLnByb3RvdHlwZS5yZXN0b3JlUGM9ZnVuY3Rpb24oKXtfLnBjTGF5ZXI9PT1zZS5Db29raWVMaXN0Pyh1LmhpZGVDYXRlZ29yeUNvbnRhaW5lcighMCksZy5sb2FkSG9zdExpc3QoIiIsXy5maWx0ZXJCeUNhdGVnb3JpZXMpLF8uc2hvd1RyYWNraW5nVGVjaCYmdS5hZGRFdmVudEFkZGl0aW9uYWxUZWNobm9sb2dpZXMoKSx2KCIiK3UuRklMVEVSX0NPVU5UX1NFTEVDVE9SKS50ZXh0KF8uZmlsdGVyQnlDYXRlZ29yaWVzLmxlbmd0aC50b1N0cmluZygpKSk6Xy5wY0xheWVyPT09c2UuVmVuZG9yTGlzdCYmKHUuaGlkZUNhdGVnb3J5Q29udGFpbmVyKCExKSx1LnNldFZlbmRvckNvbnRlbnQoKSksXy5pc1BDVmlzaWJsZT0hMSx1LnRvZ2dsZUluZm9EaXNwbGF5KCksXy5wY0xheWVyIT09c2UuVmVuZG9yTGlzdCYmXy5wY0xheWVyIT09c2UuQ29va2llTGlzdHx8KE9uLnVwZGF0ZUZpbHRlclNlbGVjdGlvbihfLnBjTGF5ZXI9PT1zZS5Db29raWVMaXN0KSx1LnNldEJhY2tCdXR0b25Gb2N1cygpLEJvLnNldFBDRm9jdXMoQm8uZ2V0UENFbGVtZW50cygpKSl9LGkucHJvdG90eXBlLnRvZ2dsZUluZm9EaXNwbGF5PWZ1bmN0aW9uKCl7dmFyIG47cmV0dXJuIEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHQsbztyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6cmV0dXJuIHhzLmNzQnRuR3JvdXAmJih2KHUuZmx0Z0J0blNsdHIpLmFkZENsYXNzKCJvdC1wYy1vcGVuIiksdS5vdEd1YXJkTG9nb1Byb21pc2UudGhlbihmdW5jdGlvbigpe0wuY29va2llUGVyc2lzdGVudExvZ28uaW5jbHVkZXMoIm90X2d1YXJkX2xvZ28uc3ZnIikmJnYodS5mbHRnQnRuRlNsdHIpLmF0dHIodnQsInRydWUiKX0pLHYodS5mbHRnQnRuQlNsdHIpLmF0dHIodnQsIiIpLHYodS5mbHRnQnRuQmFja0J0bikuZWxbMF0uc3R5bGUuZGlzcGxheT0iYmxvY2siKSxbNCx1LmZldGNoQW5kU2V0dXBQQygpXTtjYXNlIDE6cmV0dXJuIGUuc2VudCgpLGIucGNOYW1lPT09bnQmJnRoaXMuc2V0UGNMaXN0Q29udGFpbmVySGVpZ2h0KCksdm9pZCAwIT09Xy5wY0xheWVyJiZfLnBjTGF5ZXIhPT1zZS5CYW5uZXJ8fChfLnBjTGF5ZXI9c2UuUHJlZkNlbnRlckhvbWUpLHQ9digiIit1LlBDX1NFTEVDVE9SKS5lbFswXSx2KCIub25ldHJ1c3QtcGMtZGFyay1maWx0ZXIiKS5lbFswXS5yZW1vdmVBdHRyaWJ1dGUoInN0eWxlIiksdC5yZW1vdmVBdHRyaWJ1dGUoInN0eWxlIiksXy5pc1BDVmlzaWJsZXx8KGtuLnNob3dDb25zZW50Tm90aWNlKCksXy5pc1BDVmlzaWJsZT0hMCxvPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodS5vdFBjQ29udGFpbmVyU2VsZWN0b3IpLG51bGwhPShuPW8pJiZuLnNldEF0dHJpYnV0ZSgidGFiaW5kZXgiLCItMSIpLEwuUENUZW1wbGF0ZVVwZ3JhZGUmJih0aGlzLnBjPXQsbz10LnF1ZXJ5U2VsZWN0b3IoIiNhY2NlcHQtcmVjb21tZW5kZWQtYnRuLWhhbmRsZXIiKSx0aGlzLmFsbG93VmlzaWJsZT1vJiYwPG8uY2xpZW50SGVpZ2h0LHRoaXMuc2V0Q2VudGVyTGF5b3V0Rm9vdGVySGVpZ2h0KCksdS5nZXRSZXNpemVFbGVtZW50KCkuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIix1LnNldENlbnRlckxheW91dEZvb3RlckhlaWdodCksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdS5zZXRDZW50ZXJMYXlvdXRGb290ZXJIZWlnaHQpKSx2KGRvY3VtZW50KS5vbigia2V5ZG93biIsdS5jbG9zZVBDV2hlbkVzY1ByZXNzZWQpKSx3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoIk9uZVRydXN0UENMb2FkZWQiLHtPbmVUcnVzdFBDTG9hZGVkOiJ5ZXMifSkpLHUuY2FwdHVyZUluaXRpYWxDb25zZW50KCksYi5yZXF1aXJlU2lnbmF0dXJlRW5hYmxlZCYmWm4uZ2V0SW5zdGFuY2UoKS5zZXRDb25zZW50SWRJblBDKCksWzJdfX0pfSl9LGkucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKHQpe3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm4gTC5CQ2xvc2VCdXR0b25UeXBlPT09UGUuTGluaz9fLmJhbm5lckNsb3NlU291cmNlPWVlLkNvbnRpbnVlV2l0aG91dEFjY2VwdGluZ0J1dHRvbjpfLmJhbm5lckNsb3NlU291cmNlPWVlLkJhbm5lckNsb3NlQnV0dG9uLFs0LEMuYmFubmVyQ2xvc2VCdXR0b25IYW5kbGVyKHQpXTtjYXNlIDE6cmV0dXJuIGUuc2VudCgpLGduLnJlbW92ZUFkZGVkT1RDc3NTdHlsZXMoKSx1LmdldFJlc2l6ZUVsZW1lbnQoKS5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLHUuc2V0Q2VudGVyTGF5b3V0Rm9vdGVySGVpZ2h0KSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIix1LnNldENlbnRlckxheW91dEZvb3RlckhlaWdodCksWzJdfX0pfSl9LGkucHJvdG90eXBlLmNsb3NlUHJlZmVyZW5jZUNlbnRlcj1mdW5jdGlvbihlKXtlJiZlLnByZXZlbnREZWZhdWx0KCksd2luZG93LmxvY2F0aW9uLmhyZWY9Imh0dHBzOi8vb3RzZGsvL2NvbnNlbnRDaGFuZ2VkIn0saS5wcm90b3R5cGUuaW5pdGlhbGl6ZUFsYXJ0SHRtbEFuZEhhbmRsZXI9ZnVuY3Rpb24oKXtfLnNraXBBZGRpbmdIVE1MPTA8digiI29uZXRydXN0LWJhbm5lci1zZGsiKS5sZW5ndGgsXy5za2lwQWRkaW5nSFRNTHx8cHIuaW5zZXJ0QWxlcnRIdG1sKCksdGhpcy5pbml0aWFsaXNlQWxlcnRIYW5kbGVycygpfSxpLnByb3RvdHlwZS5pbml0aWFsaXNlQWxlcnRIYW5kbGVycz1mdW5jdGlvbigpe3ZhciBlPXRoaXMsdD0ocHIuc2hvd0Jhbm5lcigpLEwuRm9yY2VDb25zZW50JiYhSS5pc0Nvb2tpZVBvbGljeVBhZ2UoTC5BbGVydE5vdGljZVRleHQpJiZ2KCIub25ldHJ1c3QtcGMtZGFyay1maWx0ZXIiKS5yZW1vdmVDbGFzcygib3QtaGlkZSIpLmNzcygiei1pbmRleDoyMTQ3NDgzNjQ1OyIpLEwuT25DbGlja0Nsb3NlQmFubmVyJiZkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixDLmJvZHlDbGlja0V2ZW50KSxMLlNjcm9sbENsb3NlQmFubmVyJiYod2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsQy5zY3JvbGxDbG9zZUJhbm5lciksdihkb2N1bWVudCkub24oImNsaWNrIiwiLm9uZXRydXN0LWNsb3NlLWJ0bi1oYW5kbGVyIixDLnJtU2Nyb2xsQW5kQ2xpY2tCb2R5RXZlbnRzKSx2KGRvY3VtZW50KS5vbigiY2xpY2siLCIjb25ldHJ1c3QtYWNjZXB0LWJ0bi1oYW5kbGVyIixDLnJtU2Nyb2xsQW5kQ2xpY2tCb2R5RXZlbnRzKSx2KGRvY3VtZW50KS5vbigiY2xpY2siLCIjYWNjZXB0LXJlY29tbWVuZGVkLWJ0bi1oYW5kbGVyIixDLnJtU2Nyb2xsQW5kQ2xpY2tCb2R5RXZlbnRzKSksdGhpcy5hZGRFdmVudExpc3RuZXJGb3JWZW5kb3JzTGlzdCgpLEwuRmxvYXRpbmdSb3VuZGVkSWNvbiYmdigiI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWNvb2tpZS1idG4iKS5vbigiY2xpY2siLGZ1bmN0aW9uKGUpe18ucGNTb3VyY2U9ZS5jdXJyZW50VGFyZ2V0LHUuc2hvd0Nvb2tpZVNldHRpbmdzSGFuZGxlcihlKX0pLHYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vbmV0cnVzdC1jbG9zZS1idG4taGFuZGxlciIpLm9uKCJjbGljayIsZnVuY3Rpb24oZSl7c2V0VGltZW91dChmdW5jdGlvbigpe1puLmdldEluc3RhbmNlKCkucmVzZXRIZWFsdGhTaWduYXR1cmVEYXRhKCksdS5iYW5uZXJDbG9zZUJ1dHRvbkhhbmRsZXIoZSl9LDApfSksdigiI29uZXRydXN0LWJhbm5lci1zZGsgLm90LWJuci1zYXZlLWhhbmRsZXIiKS5vbigiY2xpY2siLHUuYmFubmVyQ2xvc2VCdXR0b25IYW5kbGVyKSx2KCIjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcGMtYnRuLWhhbmRsZXIiKS5vbigiY2xpY2siLGZ1bmN0aW9uKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt1LnNob3dDb29raWVTZXR0aW5nc0hhbmRsZXIoZSl9LDApfSksdigiI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWFjY2VwdC1idG4taGFuZGxlciIpLm9uKCJjbGljayIsZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Qy5hbGxvd0FsbEV2ZW50SGFuZGxlcighMSl9LDApfSksdigiI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXJlamVjdC1hbGwtaGFuZGxlciIpLm9uKCJjbGljayIsZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Qy5yZWplY3RBbGxFdmVudEhhbmRsZXIoITEpfSwwKX0pLHYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5iYW5uZXItb3B0aW9uLWlucHV0Iikub24oImNsaWNrIixiLmJhbm5lck5hbWU9PT1aZT91LnRvZ2dsZUJhbm5lck9wdGlvbnM6dS50b2dnbGVBY2NvcmRpb25TdGF0dXMpLHYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1ndi1saXN0LWhhbmRsZXIiKS5vbigiY2xpY2siLGZ1bmN0aW9uKHQpe3JldHVybiBGKGUsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm4gXy5jb29raWVMaXN0VHlwZT15ZS5HZW5WZW4sWzQsdS5mZXRjaEFuZFNldHVwUEMoKV07Y2FzZSAxOnJldHVybiBlLnNlbnQoKSx1LmxvYWRDb29raWVMaXN0KHQudGFyZ2V0KSx1LnNob3dDb29raWVTZXR0aW5nc0hhbmRsZXIodCksWzJdfX0pfSl9KSx2KCIjb25ldHJ1c3QtYmFubmVyLXNkayAuY2F0ZWdvcnktc3dpdGNoLWhhbmRsZXIiKS5vbigiY2xpY2siLHUudG9nZ2xlQmFubmVyQ2F0ZWdvcnkpLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvbmV0cnVzdC1iYW5uZXItc2RrIikpO0wuRm9yY2VDb25zZW50JiZ0JiYibm9uZSIhPT13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0KS5kaXNwbGF5JiZ2KGRvY3VtZW50KS5vbigia2V5ZG93biIsdS5zaGlmdEJhbm5lckZvY3VzKSx2KCIjb25ldHJ1c3QtYmFubmVyLXNkayIpLm9uKCJrZXlkb3duIixmdW5jdGlvbihlKXszMiE9PWUua2V5Q29kZSYmIlNwYWNlIiE9PWUuY29kZSYmMTMhPT1lLmtleUNvZGUmJiJFbnRlciIhPT1lLmNvZGV8fEkuZmluZFVzZXJUeXBlKGUpfSl9LGkucHJvdG90eXBlLmFkZEV2ZW50TGlzdG5lckZvclZlbmRvcnNMaXN0PWZ1bmN0aW9uKCl7KEwuSXNJYWJFbmFibGVkfHxMLlVzZUdvb2dsZVZlbmRvcnN8fF8uc2hvd0dlbmVyYWxWZW5kb3JzKSYmIV8uc2hvd1ZlbmRvclNlcnZpY2UmJnYoZG9jdW1lbnQpLm9uKCJjbGljayIsIi5vbmV0cnVzdC12ZW5kb3JzLWxpc3QtaGFuZGxlciIsZnVuY3Rpb24oZSl7c2V0VGltZW91dChmdW5jdGlvbigpe3Uuc2hvd0FsbFZlbmRvcnMoZSl9LDApfSl9LGkucHJvdG90eXBlLmdldFJlc2l6ZUVsZW1lbnQ9ZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrIC5vdC10ZXh0LXJlc2l6ZSIpO3JldHVybiBlP2UuY29udGVudFdpbmRvd3x8ZTpkb2N1bWVudH0saS5wcm90b3R5cGUuaW5zZXJ0Q29va2llU2V0dGluZ1RleHQ9ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9ITEpO2Zvcih2YXIgdD1MLkNvb2tpZVNldHRpbmdCdXR0b25UZXh0LG89digiLm90LXNkay1zaG93LXNldHRpbmdzIikuZWwsbj12KCIub3B0YW5vbi10b2dnbGUtZGlzcGxheSIpLmVsLHI9MDtyPG8ubGVuZ3RoO3IrKyl2KG9bcl0pLnRleHQodCksdihuW3JdKS50ZXh0KHQpO2U/KG51bGwhPShlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5vdC1zZGstc2hvdy1zZXR0aW5ncyIpKSYmZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5jb29raWVzU2V0dGluZ3NCb3VuZExpc3RlbmVyKSxudWxsIT0oZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIub3B0YW5vbi10b2dnbGUtZGlzcGxheSIpKSYmZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5jb29raWVzU2V0dGluZ3NCb3VuZExpc3RlbmVyKSk6dS5pbml0Q29va2llU2V0dGluZ0hhbmRsZXJzKCl9LGkucHJvdG90eXBlLmdlblZlbmRvclRvZ2dsZWQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQuZ2V0QXR0cmlidXRlKCJnbi12aWQiKSxvPShJby51cGRhdGVHZW5WZW5kb3JTdGF0dXModCxlLnRhcmdldC5jaGVja2VkKSxMLkdlbmVyYWxWZW5kb3JzLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuVmVuZG9yQ3VzdG9tSWQ9PT10fSkuTmFtZSk7bW8udHJpZ2dlckdvb2dsZUFuYWx5dGljc0V2ZW50KE5vLGUudGFyZ2V0LmNoZWNrZWQ/WG86UW8sbysiOiBWRU5fIit0KSxnLmdlblZlblNlbGVjdEFsbFRnbEV2ZW50KCl9LGkucHJvdG90eXBlLmdlblZlbmRvckRldGFpbHM9ZnVuY3Rpb24oZSl7dS50b2dnbGVBY2NvcmRpb25TdGF0dXMoZSl9LGkucHJvdG90eXBlLmNvbmZpcm1QQz1mdW5jdGlvbihuKXtyZXR1cm4gRih0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgdCxvO3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm4odD1PLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpLEwuTm9CYW5uZXImJkwuU2hvd1ByZWZlcmVuY2VDZW50ZXJDbG9zZUJ1dHRvbiYmIXQpPyhfLmJhbm5lckNsb3NlU291cmNlPWVlLkJhbm5lckNsb3NlQnV0dG9uLFs0LEMuYmFubmVyQ2xvc2VCdXR0b25IYW5kbGVyKCldKTpbMywyXTtjYXNlIDE6ZS5zZW50KCksZS5sYWJlbD0yO2Nhc2UgMjpyZXR1cm4gbz1JLmlzQmFubmVyVmlzaWJsZSgpLCFTLm1vZHVsZUluaXRpYWxpemVyLk1vYmlsZVNES3x8IXQmJm98fHUuY2xvc2VQcmVmZXJlbmNlQ2VudGVyKG4pLFsyXX19KX0pfSxpLnByb3RvdHlwZS5jYXB0dXJlSW5pdGlhbENvbnNlbnQ9ZnVuY3Rpb24oKXtfLmluaXRpYWxHcm91cHNDb25zZW50PUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoXy5ncm91cHNDb25zZW50KSksXy5pbml0aWFsSG9zdENvbnNlbnQ9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShfLmhvc3RzQ29uc2VudCkpLF8uc2hvd0dlbmVyYWxWZW5kb3JzJiYoXy5pbml0aWFsR2VuVmVuZG9yc0NvbnNlbnQ9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShfLmdlblZlbmRvcnNDb25zZW50KSkpLEwuSXNJYWJFbmFibGVkJiYoXy5pbml0aWFsT25lVHJ1c3RJQUJDb25zZW50PUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoXy5vbmVUcnVzdElBQkNvbnNlbnQpKSxfLmluaXRpYWxWZW5kb3JzPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoXy52ZW5kb3JzKSksXy5pbml0aWFsVmVuZG9ycy52ZW5kb3JUZW1wbGF0ZT1fLnZlbmRvcnMudmVuZG9yVGVtcGxhdGUpLEwuVXNlR29vZ2xlVmVuZG9ycyYmKF8uaW5pdGlhbEFkZHRsVmVuZG9yc0xpc3Q9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShfLmFkZHRsVmVuZG9yc0xpc3QpKSxfLmluaXRpYWxBZGR0bFZlbmRvcnM9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShfLmFkZHRsVmVuZG9ycykpKSxfLnZzSXNBY3RpdmVBbmRPcHRPdXQmJihfLmluaXRpYWxWZW5kb3JzU2VydmljZUNvbnNlbnQ9bmV3IE1hcChfLnZzQ29uc2VudCkpfSxpLnByb3RvdHlwZS5nZXRTaG93Q29va2llU2V0dGluZ0NsYXNzTmFtZT1mdW5jdGlvbihlKXtpZighZXx8IWUudGFyZ2V0KXJldHVybiIiO3ZhciBlPWUudGFyZ2V0LHQ9ZS5jbGFzc05hbWU7aWYoIkJVVFRPTiIhPT1lLnRhZ05hbWUpe2U9ZS5jbG9zZXN0KCJidXR0b24iKTtpZighZSlyZXR1cm4iIjt0PWUuY2xhc3NOYW1lfXJldHVybiJzdHJpbmciIT10eXBlb2YgdD8iIjp0fTt2YXIgdSxmcj1pO2Z1bmN0aW9uIGkoKXt2YXIgdD10aGlzO3RoaXMuYWxsb3dWaXNpYmxlPSExLHRoaXMuZmx0Z0J0bkJhY2tCdG49Ii5vdC1mbG9hdGluZy1idXR0b25fX2JhY2sgYnV0dG9uIix0aGlzLmZsdGdCdG5CU2x0cj0iLm90LWZsb2F0aW5nLWJ1dHRvbl9fYmFjayBzdmciLHRoaXMuZmx0Z0J0bkZyb250QnRuPSIub3QtZmxvYXRpbmctYnV0dG9uX19mcm9udCBidXR0b24iLHRoaXMuZmx0Z0J0bkZTbHRyPSIub3QtZmxvYXRpbmctYnV0dG9uX19mcm9udCBzdmciLHRoaXMuZmx0Z0J0blNsdHI9IiNvdC1zZGstYnRuLWZsb2F0aW5nIix0aGlzLlBDX1NFTEVDVE9SPSIjb25ldHJ1c3QtcGMtc2RrIix0aGlzLkZJTFRFUl9DT1VOVF9TRUxFQ1RPUj0iI29uZXRydXN0LXBjLXNkayAjZmlsdGVyLWNvdW50Iix0aGlzLlZFTkRPUl9TRUFSQ0hfU0VMRUNUT1I9IiNvbmV0cnVzdC1wYy1zZGsgI3ZlbmRvci1zZWFyY2gtaGFuZGxlciIsdGhpcy5QQ19GT09URVI9Ii5vdC1wYy1mb290ZXIiLHRoaXMuaXNDb29raWVMaXN0PSExLHRoaXMucGM9bnVsbCx0aGlzLmN1cnJlbnRTZWFyY2hJbnB1dD0iIix0aGlzLnBjTGlua1NvdXJjZT1udWxsLHRoaXMucGNTREtTZWxlY3Rvcj0ib25ldHJ1c3QtcGMtc2RrIix0aGlzLmJhbm5lclNlbGVjdG9yPSJvbmV0cnVzdC1iYW5uZXItc2RrIix0aGlzLm90UGNDb250YWluZXJTZWxlY3Rvcj0iI290LXBjLWNvbnRlbnQiLHRoaXMub3RHdWFyZExvZ29SZXNvbHZlPW51bGwsdGhpcy5vdEd1YXJkTG9nb1Byb21pc2U9bmV3IFByb21pc2UoZnVuY3Rpb24oZSl7dC5vdEd1YXJkTG9nb1Jlc29sdmU9ZX0pLHRoaXMuY2xvc2VQQ1doZW5Fc2NQcmVzc2VkPWZ1bmN0aW9uKGUpe3ZhciB0LG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodS5wY1NES1NlbGVjdG9yKTtvJiYodD0ibm9uZSIhPT13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShvKS5kaXNwbGF5LDI3PT09ZS5rZXlDb2RlJiZvJiZ0JiYoImJsb2NrIj09PShvPXYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfRmx0cl9Nb2RhbCkuZWxbMF0pLnN0eWxlLmRpc3BsYXl8fCIwcHgiPG8uc3R5bGUud2lkdGg/KHUuY2xvc2VGaWx0ZXIoKSx2KCIjb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItYnRuLWhhbmRsZXIiKS5mb2N1cygpKTpMLk5vQmFubmVyJiYhTC5TaG93UHJlZmVyZW5jZUNlbnRlckNsb3NlQnV0dG9ufHx1LmhpZGVDb29raWVTZXR0aW5nc0hhbmRsZXIoKSx1LmNvbmZpcm1QQygpKSx0JiYzMj09PWUua2V5Q29kZXx8IlNwYWNlIj09PWUuY29kZXx8MTM9PT1lLmtleUNvZGV8fCJFbnRlciI9PT1lLmNvZGUpJiZJLmZpbmRVc2VyVHlwZShlKX0sdGhpcy5zaG93Q29va2llU2V0dGluZ3NIYW5kbGVyPWZ1bmN0aW9uKG4pe3JldHVybiBGKHQsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciB0LG87cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtzd2l0Y2goZS5sYWJlbCl7Y2FzZSAwOnJldHVybihvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHUucGNTREtTZWxlY3RvciksbyYmIm5vbmUiIT09d2luZG93LmdldENvbXB1dGVkU3R5bGUobykuZ2V0UHJvcGVydHlWYWx1ZSgiZGlzcGxheSIpKT9bMl06KHYoZG9jdW1lbnQpLm9uKCJrZXlkb3duIix1LmNsb3NlUENXaGVuRXNjUHJlc3NlZCksbiYmbi5zdG9wUHJvcGFnYXRpb24oKSxuJiZuLnRhcmdldCYmKG89dGhpcy5nZXRTaG93Q29va2llU2V0dGluZ0NsYXNzTmFtZShuKSx0PSJvbmV0cnVzdC1wYy1idG4taGFuZGxlciI9PT1uLnRhcmdldC5pZCxvPW8uaW5jbHVkZXMoIm90LXNkay1zaG93LXNldHRpbmdzIiksKHR8fG8pJiYobz10P01vOlVvLG1vLnRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudChObyxvKSksXy5wY1NvdXJjZT1uLnRhcmdldCksWzQsdS50b2dnbGVJbmZvRGlzcGxheSgpXSk7Y2FzZSAxOnJldHVybiBlLnNlbnQoKSxbMiwhMV19fSl9KX0sdGhpcy5jb29raWVzU2V0dGluZ3NCb3VuZExpc3RlbmVyPXRoaXMuc2hvd0Nvb2tpZVNldHRpbmdzSGFuZGxlci5iaW5kKHRoaXMpLHRoaXMuYmFja0J0bkhhbmRsZXI9ZnVuY3Rpb24oKXtyZXR1cm4gXy5wY0xheWVyPT09c2UuSWFiSWxsdXN0cmF0aW9ucz9sci5oaWRlVUkoKTooXy5zaG93VmVuZG9yU2VydmljZSYmYy5oaWRlVmVuZG9yTGlzdCgpLF8uc2hvd1RyYWNraW5nVGVjaCYmKHUuY3VycmVudFNlYXJjaElucHV0PSIiKSksQy5oaWRlVmVuZG9yc0xpc3QoKSxiLnBjTmFtZT09PW50JiYodigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9Db250ZW50KS5yZW1vdmVDbGFzcygib3QtaGlkZSIpLHYoIiIrdS5QQ19TRUxFQ1RPUikuZWxbMF0ucmVtb3ZlQXR0cmlidXRlKCJzdHlsZSIpLHQuc2V0UGNMaXN0Q29udGFpbmVySGVpZ2h0KCkpLHYoIiIrdS5GSUxURVJfQ09VTlRfU0VMRUNUT1IpLnRleHQoIjAiKSx2KHUuVkVORE9SX1NFQVJDSF9TRUxFQ1RPUikubGVuZ3RoJiYodih1LlZFTkRPUl9TRUFSQ0hfU0VMRUNUT1IpLmVsWzBdLnZhbHVlPSIiKSxfLmN1cnJlbnRHbG9iYWxGaWx0ZXJlZExpc3Q9W10sXy5maWx0ZXJCeUNhdGVnb3JpZXM9W10sXy5maWx0ZXJCeUlBQkNhdGVnb3JpZXM9W10sXy52ZW5kb3JzLnNlYXJjaFBhcmFtPSIiLHUuY2xvc2VGaWx0ZXIoKSxfLnBjTGF5ZXI9c2UuUHJlZkNlbnRlckhvbWUsdC5wY0xpbmtTb3VyY2U/KHQucGNMaW5rU291cmNlLmZvY3VzKCksdC5wY0xpbmtTb3VyY2U9bnVsbCk6Qm8uc2V0UENGb2N1cyhCby5nZXRQQ0VsZW1lbnRzKCkpLCExfSx0aGlzLmJhbm5lckNsb3NlQm91bmRMaXN0ZW5lcj10aGlzLmJhbm5lckNsb3NlQnV0dG9uSGFuZGxlci5iaW5kKHRoaXMpLHRoaXMudG9nZ2xlR3JvdXBPUlZlbmRvckhhbmRsZXI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5jdXJyZW50VGFyZ2V0O3QuZGF0YXNldC5vdFZzSWQ/dS50b2dnbGVWZW5kb3JTZXJ2aWNlSGFuZGxlci5iaW5kKHRoaXMpKGUpOnQuZGF0YXNldC5vcHRhbm9uZ3JvdXBpZCYmdS50b2dnbGVWMkNhdGVnb3J5LmJpbmQodGhpcykoKX0sdGhpcy50b2dnbGVWZW5kb3JGcm9tTGlzdEhhbmRsZXI9ZnVuY3Rpb24oZSl7dmFyIGU9ZS5jdXJyZW50VGFyZ2V0LHQ9ZS5jaGVja2VkLG89ZS5kYXRhc2V0Lm90VnNJZCxlPWUuZGF0YXNldC5vcHRhbm9uZ3JvdXBpZCxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdC12ZW5kb3ItaWQtIitvKTt3LnRvZ2dsZVZlbmRvclNlcnZpY2UoZSxvLHQsbil9LHRoaXMudG9nZ2xlVmVuZG9yU2VydmljZUhhbmRsZXI9ZnVuY3Rpb24oZSl7dmFyIGU9ZS5jdXJyZW50VGFyZ2V0LHQ9ZS5jaGVja2VkLG89ZS5kYXRhc2V0Lm90VnNJZCxuPWUuZGF0YXNldC5vcHRhbm9uZ3JvdXBpZCxuPSh3LnRvZ2dsZVZlbmRvclNlcnZpY2UobixvLHQsZSksRC5nZXRWU0J5SWQobykpO3Uuc2V0QXJpYUxhYmVsZm9yQnV0dG9uSW5GaWx0ZXIobi5TZXJ2aWNlTmFtZSl9LHRoaXMudG9nZ2xlVjJDYXRlZ29yeT1mdW5jdGlvbihlLHQsbyxuKXt0fHwocj10aGlzLmdldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIpLGk9ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuZ2V0QXR0cmlidXRlLGE9UC5maW5kSW5kZXgoXy5kYXRhR3JvdXBTdGF0ZSxmdW5jdGlvbihlKXtyZXR1cm4gaSYmZS5DdXN0b21Hcm91cElkPT09cn0pLHQ9Xy5kYXRhR3JvdXBTdGF0ZVthXSksdm9pZCAwPT09byYmKG89dih0aGlzKS5pcygiOmNoZWNrZWQiKSksTC5DaG9pY2VzQmFubmVyJiZQLnNldENoZWNrZWRBdHRyaWJ1dGUoIiNvdC1ibnItZ3JwLWlkLSIrdC5DdXN0b21Hcm91cElkLG51bGwsbyksbj9kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb3QtZ3JvdXAtaWQtIituKSYmKFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiI290LWdyb3VwLWlkLSIrbixudWxsLG8pLHM9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI290LWdyb3VwLWlkLSIrbikpOihQLnNldENoZWNrZWRBdHRyaWJ1dGUobnVsbCxzPXRoaXMsbykscy5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoIi5vdC1zd2l0Y2gtbm9iIikpLEwuUENTaG93Q29uc2VudExhYmVscyYmKHMucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoIi5vdC1sYWJlbC1zdGF0dXMiKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KG8/TC5QQ0FjdGl2ZVRleHQ6TC5QQ0luYWN0aXZlVGV4dCkpO3ZhciByLGkscyxhPXRoaXMgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmLTEhPT10aGlzLmdldEF0dHJpYnV0ZSgiaWQiKS5pbmRleE9mKCItbGVnLW91dCIpO3Uuc2V0QXJpYUxhYmVsZm9yQnV0dG9uSW5GaWx0ZXIodC5Hcm91cE5hbWUpLHUudXBkYXRlR3JvdXBUb2dnbGVzKHQsbyxhKX0sdGhpcy50b2dnbGVCYW5uZXJDYXRlZ29yeT1mdW5jdGlvbigpe3ZhciB0PXRoaXMsZT1QLmZpbmRJbmRleChfLmRhdGFHcm91cFN0YXRlLGZ1bmN0aW9uKGUpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldEF0dHJpYnV0ZSYmZS5DdXN0b21Hcm91cElkPT09dC5nZXRBdHRyaWJ1dGUoImRhdGEtb3B0YW5vbmdyb3VwaWQiKX0pLGU9Xy5kYXRhR3JvdXBTdGF0ZVtlXSxvPXYodCkuaXMoIjpjaGVja2VkIik7dS50b2dnbGVWMkNhdGVnb3J5KG51bGwsZSxvLGUuQ3VzdG9tR3JvdXBJZCl9LHRoaXMuc2hpZnRCYW5uZXJGb2N1cz1mdW5jdGlvbihlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCh1LnBjU0RLU2VsZWN0b3IpLG89ITE7dCYmKG89Im5vbmUiIT09d2luZG93LmdldENvbXB1dGVkU3R5bGUodCkuZGlzcGxheSksIlRhYiIhPT1lLmNvZGV8fG98fEJvLmhhbmRsZUJhbm5lckZvY3VzKGUsZS5zaGlmdEtleSl9LHRoaXMudG9nZ2xlU3ViQ2F0ZWdvcnk9ZnVuY3Rpb24oZSx0LG8sbil7dD10fHx0aGlzLmdldEF0dHJpYnV0ZSgiZGF0YS1vcHRhbm9uZ3JvdXBpZCIpO3ZhciByLHQ9RC5nZXRHcm91cEJ5SWQodCksbj0odm9pZCAwPT09byYmKG89dih0aGlzKS5pcygiOmNoZWNrZWQiKSksbj8oUC5zZXRDaGVja2VkQXR0cmlidXRlKCIjb3Qtc3ViLWdyb3VwLWlkLSIrbixudWxsLG8pLHI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI290LXN1Yi1ncm91cC1pZC0iK24pKTpQLnNldENoZWNrZWRBdHRyaWJ1dGUobnVsbCxyPXRoaXMsbyksRC5nZXRQYXJlbnRHcm91cCh0LlBhcmVudCkuU2hvd1N1Ymdyb3VwKSxuPShMLlBDU2hvd0NvbnNlbnRMYWJlbHMmJm4mJihyLnBhcmVudEVsZW1lbnQucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKCIub3QtbGFiZWwtc3RhdHVzIikuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChvP0wuUENBY3RpdmVUZXh0OkwuUENJbmFjdGl2ZVRleHQpKSx0aGlzIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJi0xIT09dGhpcy5nZXRBdHRyaWJ1dGUoImlkIikuaW5kZXhPZigiLWxlZy1vdXQiKSk7dS5zZXRBcmlhTGFiZWxmb3JCdXR0b25JbkZpbHRlcih0Lkdyb3VwTmFtZSksdS51cGRhdGVTdWJHcm91cFRvZ2dsZXModCxvLG4pLHcuc2V0VmVuZG9yU3RhdGVCeUdyb3VwKHQsbyl9fXZyLnByb3RvdHlwZS5pbml0aWFsaXNlTGFuZGluZ1BhdGg9ZnVuY3Rpb24oKXt2YXIgZT1PLm5lZWRSZWNvbnNlbnQoKTtfby5pc0xhbmRpbmdQYWdlKCk/X28uc2V0TGFuZGluZ1BhdGhQYXJhbShsb2NhdGlvbi5ocmVmKTplJiYhTy5hd2FpdGluZ1JlY29uc2VudCgpPyhfby5zZXRMYW5kaW5nUGF0aFBhcmFtKGxvY2F0aW9uLmhyZWYpLFQud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLkFXQUlUSU5HX1JFX0NPTlNFTlQsITApKTooZXx8VC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguQVdBSVRJTkdfUkVfQ09OU0VOVCwhMSksX28uc2V0TGFuZGluZ1BhdGhQYXJhbShoLk5PVF9MQU5ESU5HX1BBR0UpLGIuaXNTb2Z0T3B0SW5Nb2RlJiYhUy5tb2R1bGVJbml0aWFsaXplci5Nb2JpbGVTREsmJm1vLnNldEFsZXJ0Qm94Q2xvc2VkKCEwKSxMLk5leHRQYWdlQ2xvc2VCYW5uZXImJkwuU2hvd0FsZXJ0Tm90aWNlJiZDLm5leHRQYWdlQ2xvc2VCYW5uZXIoKSl9O3ZhciBTcixtcj12cjtmdW5jdGlvbiB2cigpe31Bci5wcm90b3R5cGUuaW5zZXJ0Q29va2llUG9saWN5SHRtbD1mdW5jdGlvbigpe2lmKHYodGhpcy5PTkVUUlVTVF9DT09LSUVfUE9MSUNZKS5sZW5ndGgpe3ZhciBlLHQsbyxuPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxyPSh4cy5jb29raWVMaXN0R3JvdXAmJih0PUwuQ29va2llc1YyTmV3Q29va2llUG9saWN5PyIub3Qtc2RrLWNvb2tpZS1wb2xpY3kiOiIjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIiLG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdihvKS5odG1sKHhzLmNvb2tpZUxpc3RHcm91cC5odG1sKSxvLnJlbW92ZUNoaWxkKG8ucXVlcnlTZWxlY3Rvcih0KSksZT1vLnF1ZXJ5U2VsZWN0b3IoIi5vdC1zZGstY29va2llLXBvbGljeSIpLEwudXNlUlRMKSYmdihlKS5hdHRyKCJkaXIiLCJydGwiKSxlLnF1ZXJ5U2VsZWN0b3IoIiNjb29raWUtcG9saWN5LXRpdGxlIikuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChMLkNvb2tpZUxpc3RUaXRsZXx8IiIpLGUucXVlcnlTZWxlY3RvcigiI2Nvb2tpZS1wb2xpY3ktZGVzY3JpcHRpb24iKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KEwuQ29va2llTGlzdERlc2NyaXB0aW9ufHwiIiksZS5xdWVyeVNlbGVjdG9yKCJzZWN0aW9uIikpLGk9ZS5xdWVyeVNlbGVjdG9yKCJzZWN0aW9uIHRib2R5IHRyIikscz1udWxsLGE9bnVsbDtMLkNvb2tpZXNWMk5ld0Nvb2tpZVBvbGljeXx8KHM9ZS5xdWVyeVNlbGVjdG9yKCJzZWN0aW9uLnN1Ymdyb3VwIiksYT1lLnF1ZXJ5U2VsZWN0b3IoInNlY3Rpb24uc3ViZ3JvdXAgdGJvZHkgdHIiKSx2KGUpLmVsLnJlbW92ZUNoaWxkKGUucXVlcnlTZWxlY3Rvcigic2VjdGlvbi5zdWJncm91cCIpKSksdihlKS5lbC5yZW1vdmVDaGlsZChlLnF1ZXJ5U2VsZWN0b3IoInNlY3Rpb24iKSksIXYodGhpcy5DT09LSUVfUE9MSUNZX1NFTEVDVE9SKS5sZW5ndGgmJnYodGhpcy5PUFRBTk9OX1BPTElDWV9TRUxFQ1RPUikubGVuZ3RoP3YodGhpcy5PUFRBTk9OX1BPTElDWV9TRUxFQ1RPUikuYXBwZW5kKCc8ZGl2IGlkPSJvdC1zZGstY29va2llLXBvbGljeSI+PC9kaXY+Jyk6KHYodGhpcy5DT09LSUVfUE9MSUNZX1NFTEVDVE9SKS5odG1sKCIiKSx2KHRoaXMuT1BUQU5PTl9QT0xJQ1lfU0VMRUNUT1IpLmh0bWwoIiIpKTtmb3IodmFyIGw9MCxjPUwuR3JvdXBzO2w8Yy5sZW5ndGg7bCsrKXt2YXIgZD1jW2xdLHU9e2pzb246TCxncm91cDpkLHNlY3Rpb25UZW1wbGF0ZTpyLHRhYmxlUm93VGVtcGxhdGU6aSxjb29raWVMaXN0OmUsZnJhZ21lbnQ6bn07aWYoTC5Db29raWVzVjJOZXdDb29raWVQb2xpY3kpdGhpcy5pbnNlcnRHcm91cEhUTUxWMih1KTtlbHNlIGlmKHRoaXMuaW5zZXJ0R3JvdXBIVE1MKHUpLGQuU2hvd1N1Ymdyb3VwKWZvcih2YXIgcD0wLEM9ZC5TdWJHcm91cHM7cDxDLmxlbmd0aDtwKyspe3ZhciBnPUNbcF0sZz17anNvbjpMLGdyb3VwOmcsc2VjdGlvblRlbXBsYXRlOnMsdGFibGVSb3dUZW1wbGF0ZTphLGNvb2tpZUxpc3Q6ZSxmcmFnbWVudDpufTt0aGlzLmluc2VydEdyb3VwSFRNTChnKX19fX0sQXIucHJvdG90eXBlLmluc2VydEdyb3VwSFRNTFYyPWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIHQoZSl7cmV0dXJuIGMucXVlcnlTZWxlY3RvcihlKX12YXIgbyxuPXRoaXMscj1lLmpzb24saT1lLmdyb3VwLHM9ZS5zZWN0aW9uVGVtcGxhdGUsYT1lLnRhYmxlUm93VGVtcGxhdGUsbD1lLmNvb2tpZUxpc3QsZT1lLmZyYWdtZW50LGM9cy5jbG9uZU5vZGUoITApLHM9aS5TdWJHcm91cHMsZD0odih0KCJ0Ym9keSIpKS5odG1sKCIiKSxpLkhvc3RzLnNsaWNlKCkpLHU9aS5GaXJzdFBhcnR5Q29va2llcy5zbGljZSgpLHA9ZC5sZW5ndGh8fHUubGVuZ3RoP2kuR3JvdXBOYW1lOiIiLHM9KGkuU2hvd1N1Ymdyb3VwJiZzLmxlbmd0aD8obz1jLnF1ZXJ5U2VsZWN0b3IoInNlY3Rpb24ub3Qtc2RrLXN1Ymdyb3VwIHVsIGxpIikscy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PW8uY2xvbmVOb2RlKCEwKTtkPWQuY29uY2F0KGUuSG9zdHMpLHU9dS5jb25jYXQoZS5GaXJzdFBhcnR5Q29va2llcyksKGUuSG9zdHMubGVuZ3RofHxlLkZpcnN0UGFydHlDb29raWVzLmxlbmd0aCkmJihwKz0iLCIrZS5Hcm91cE5hbWUpLHYodC5xdWVyeVNlbGVjdG9yKCIub3Qtc2RrLWNvb2tpZS1wb2xpY3ktZ3JvdXAiKSkuaHRtbChlLkdyb3VwTmFtZSksdih0LnF1ZXJ5U2VsZWN0b3IoIi5vdC1zZGstY29va2llLXBvbGljeS1ncm91cC1kZXNjIikpLmh0bWwobi5ncm91cHNDbGFzcy5zYWZlRm9ybWF0dGVkR3JvdXBEZXNjcmlwdGlvbihlKSksdihvLnBhcmVudEVsZW1lbnQpLmFwcGVuZCh0KX0pLGMucXVlcnlTZWxlY3Rvcigic2VjdGlvbi5vdC1zZGstc3ViZ3JvdXAgdWwiKS5yZW1vdmVDaGlsZChvKSk6Yy5yZW1vdmVDaGlsZChjLnF1ZXJ5U2VsZWN0b3IoInNlY3Rpb24ub3Qtc2RrLXN1Ymdyb3VwIikpLEwuVFRMR3JvdXBCeVRlY2gmJih0aGlzLnNldENvb2tpZUxpc3RIZWFkZXJPcmRlcihjKSx0aGlzLnNldENvb2tpZUxpc3RCb2R5T3JkZXIoYSkpLHIuSXNMaWZlc3BhbkVuYWJsZWQ/dih0KCJ0aC5vdC1saWZlLXNwYW4iKSkuZWwuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChyLkxpZmVzcGFuVGV4dCk6dih0KCJ0aGVhZCB0ciIpKS5lbC5yZW1vdmVDaGlsZCh2KHQoInRoLm90LWxpZmUtc3BhbiIpKS5lbCksdih0KCJ0aC5vdC1jb29raWVzIikpLmVsLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoci5Db29raWVzVGV4dCksdih0KCJ0aC5vdC1ob3N0IikpLmVsLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoci5DYXRlZ29yaWVzVGV4dCksdih0KCJ0aC5vdC1jb29raWVzLXR5cGUiKSkuZWwuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChyLkNvb2tpZXNVc2VkVGV4dCksdih0KCJ0aC5vdC1ob3N0LWRlc2NyaXB0aW9uIikpLmVsLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoci5Db29raWVzRGVzY1RleHQpLHRoaXMudHJhbnNmb3JtRmlyc3RQYXJ0eUNvb2tpZXModSxkLGkpKSxDPSExOyhDPUwuVFRMR3JvdXBCeVRlY2g/TC5UVExTaG93VGVjaERlc2M6cy5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBlLkRlc2NyaXB0aW9ufSkpfHx2KHQoInRoZWFkIHRyIikpLmVsLnJlbW92ZUNoaWxkKHYodCgidGgub3QtaG9zdC1kZXNjcmlwdGlvbiIpKS5lbCksdih0KCIub3Qtc2RrLWNvb2tpZS1wb2xpY3ktZ3JvdXAiKSkuaHRtbChpLkdyb3VwTmFtZSksdih0KCIub3Qtc2RrLWNvb2tpZS1wb2xpY3ktZ3JvdXAtZGVzYyIpKS5odG1sKHRoaXMuZ3JvdXBzQ2xhc3Muc2FmZUZvcm1hdHRlZEdyb3VwRGVzY3JpcHRpb24oaSkpLEwuVFRMR3JvdXBCeVRlY2g/dGhpcy5pbnNlcnRDb29raWVMaW5lQnlMaW5lKHtqc29uOnIsaG9zdHM6cyx0YWJsZVJvd1RlbXBsYXRlOmEsc2hvd0hvc3REZXNjcmlwdGlvbjpDLHN0OnR9KTp0aGlzLmluc2VydEhvc3RIdG1sVjIoe2pzb246cixob3N0czpzLHRhYmxlUm93VGVtcGxhdGU6YSxzaG93SG9zdERlc2NyaXB0aW9uOkMsc3Q6dH0pLDA9PT1zLmxlbmd0aD9jLnJlbW92ZUNoaWxkKGMucXVlcnlTZWxlY3RvcigidGFibGUiKSk6dih0KCJjYXB0aW9uIikpLmVsLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQocCksdihsKS5hcHBlbmQoYyksdihlKS5hcHBlbmQobCksdih0aGlzLkNPT0tJRV9QT0xJQ1lfU0VMRUNUT1IpLmFwcGVuZChlKX0sQXIucHJvdG90eXBlLmluc2VydEhvc3RIdG1sVjI9ZnVuY3Rpb24oZSl7Zm9yKHZhciBsLGM9ZS5qc29uLGQ9ZS50YWJsZVJvd1RlbXBsYXRlLHU9ZS5zaG93SG9zdERlc2NyaXB0aW9uLHA9ZS5zdCxDPXRoaXMsdD0wLG89ZS5ob3N0czt0PG8ubGVuZ3RoO3QrKykoZT0+e2Zvcih2YXIgdD1kLmNsb25lTm9kZSghMCksbz1mdW5jdGlvbihlKXtyZXR1cm4gdC5xdWVyeVNlbGVjdG9yKGUpfSxuPShDLmNsZWFyQ29va2llUm93RWxlbWVudChvKSxbXSkscj1bXSxpPTAscz1lLkNvb2tpZXM7aTxzLmxlbmd0aDtpKyspe3ZhciBhPXNbaV0sYT0oKGw9YSkuSXNTZXNzaW9uP24ucHVzaChjLkxpZmVzcGFuVHlwZVRleHQpOm4ucHVzaChJLmdldER1cmF0aW9uKGwpKSxsLk5hbWUpO2UuVHlwZSYmKGE9J1xuICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2Nvb2tpZXBlZGlhLmNvLnVrL2Nvb2tpZXMvJytsLk5hbWUrJyJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbD0ibm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIiBhcmlhLWxhYmVsPSInK2wuTmFtZSsiICIrTC5OZXdXaW5UeHQrJyI+XG4gICAgICAgICAgICAgICAgICAgICAgICAnK2wuTmFtZSsiXG4gICAgICAgICAgICAgICAgICAgIDwvYT4iKSxyLnB1c2goYSl9Qy5zZXREYXRhTGFiZWxBdHRyaWJ1dGUobyxjKSxDLmNyZWF0ZUNvb2tpZVJvd0h0bWxFbGVtZW50KHtob3N0OmUsc3ViR3JvdXBDb29raWU6bCx0cnQ6byxqc29uOmMsbGlmZXNwYW5UZXh0Om4uam9pbigiLCAiKSxob3N0VHlwZTpyLmpvaW4oIiwgIil9KSxDLnJlbW92ZUxpZmVTcGFuT3JIb3N0RGVzY3JpcHRpb24oYyx1LHQsbyksdihwKCJ0Ym9keSIpKS5hcHBlbmQodCl9KShvW3RdKX0sQXIucHJvdG90eXBlLmluc2VydEdyb3VwSFRNTD1mdW5jdGlvbihlKXtmdW5jdGlvbiB0KGUpe3JldHVybiBsLnF1ZXJ5U2VsZWN0b3IoZSl9dmFyIG8sbj1lLmpzb24scj1lLmdyb3VwLGk9ZS5zZWN0aW9uVGVtcGxhdGUscz1lLnRhYmxlUm93VGVtcGxhdGUsYT1lLmNvb2tpZUxpc3QsZT1lLmZyYWdtZW50LGw9aS5jbG9uZU5vZGUoITApLGk9KHYodCgiY2FwdGlvbiIpKS5lbC5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KHIuR3JvdXBOYW1lKSx2KHQoInRib2R5IikpLmh0bWwoIiIpLHYodCgidGhlYWQgdHIiKSksbi5Jc0xpZmVzcGFuRW5hYmxlZD92KHQoInRoLmxpZmUtc3BhbiIpKS5lbC5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KG4uTGlmZXNwYW5UZXh0KTp2KHQoInRoZWFkIHRyIikpLmVsLnJlbW92ZUNoaWxkKHYodCgidGgubGlmZS1zcGFuIikpLmVsKSx2KHQoInRoLmNvb2tpZXMiKSkuZWwuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChuLkNvb2tpZXNUZXh0KSx2KHQoInRoLmhvc3QiKSkuZWwuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChuLkNhdGVnb3JpZXNUZXh0KSwhMSk7aWYoci5Ib3N0cy5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBlLmRlc2NyaXB0aW9ufSk/aT0hMDp2KHQoInRoZWFkIHRyIikpLmVsLnJlbW92ZUNoaWxkKHYodCgidGguaG9zdC1kZXNjcmlwdGlvbiIpKS5lbCksdih0KCIub3Qtc2RrLWNvb2tpZS1wb2xpY3ktZ3JvdXAiKSkuaHRtbChyLkdyb3VwTmFtZSksdih0KCIub3Qtc2RrLWNvb2tpZS1wb2xpY3ktZ3JvdXAtZGVzYyIpKS5odG1sKHRoaXMuZ3JvdXBzQ2xhc3Muc2FmZUZvcm1hdHRlZEdyb3VwRGVzY3JpcHRpb24ocikpLDA8ci5GaXJzdFBhcnR5Q29va2llcy5sZW5ndGgpe3YodCgiLmNvb2tpZXMtdXNlZC1oZWFkZXIiKSkuaHRtbChuLkNvb2tpZXNVc2VkVGV4dCksdih0KCIuY29va2llcy1saXN0IikpLmh0bWwoIiIpO2Zvcih2YXIgYz0wO2M8ci5GaXJzdFBhcnR5Q29va2llcy5sZW5ndGg7YysrKW89ci5GaXJzdFBhcnR5Q29va2llc1tjXSx2KHQoIi5jb29raWVzLWxpc3QiKSkuYXBwZW5kKCI8bGk+ICIrSS5nZXRDb29raWVMYWJlbChvLG4uQWRkTGlua3NUb0Nvb2tpZXBlZGlhKSsiIDxsaT4iKX1lbHNlIGwucmVtb3ZlQ2hpbGQodCgiLmNvb2tpZXMtdXNlZC1oZWFkZXIiKSksbC5yZW1vdmVDaGlsZCh0KCIuY29va2llcy1saXN0IikpO3RoaXMuaW5zZXJ0SG9zdEh0bWxWMSh7anNvbjpuLGhvc3RzOnIuSG9zdHMsdGFibGVSb3dUZW1wbGF0ZTpzLHNob3dIb3N0RGVzY3JpcHRpb246aSxzdDp0fSksdihhKS5hcHBlbmQobCksdihlKS5hcHBlbmQoYSksdih0aGlzLkNPT0tJRV9QT0xJQ1lfU0VMRUNUT1IpLmFwcGVuZChlKX0sQXIucHJvdG90eXBlLmluc2VydEhvc3RIdG1sVjE9ZnVuY3Rpb24oZSl7Zm9yKHZhciBsPWUuanNvbix0PWUuaG9zdHMsYz1lLnRhYmxlUm93VGVtcGxhdGUsZD1lLnNob3dIb3N0RGVzY3JpcHRpb24sdT1lLnN0LG89MCxuPXQ7bzxuLmxlbmd0aDtvKyspKGU9Pntmb3IodmFyIHQ9Yy5jbG9uZU5vZGUoITApLG89ZnVuY3Rpb24oZSl7cmV0dXJuIHQucXVlcnlTZWxlY3RvcihlKX0sbj0odihvKCIuY29va2llcy10ZCB1bCIpKS5odG1sKCIiKSx2KG8oIi5saWZlLXNwYW4tdGQgdWwiKSkuaHRtbCgiIiksdihvKCIuaG9zdC10ZCIpKS5odG1sKCIiKSx2KG8oIi5ob3N0LWRlc2NyaXB0aW9uLXRkIikpLmh0bWwoJzxzcGFuIGNsYXNzPSJvdC1tb2JpbGUtYm9yZGVyIj48L3NwYW4+PHA+JytlLkRlc2NyaXB0aW9uKyI8L3A+ICIpLDApLHI9MCxpPWUuQ29va2llcztyPGkubGVuZ3RoO3IrKyl7dmFyIHM9aVtyXSxhPSIiLGE9cy5Jc1Nlc3Npb24/bC5MaWZlc3BhblR5cGVUZXh0OjA9PT1zLkxlbmd0aD8iPDEgIitsLkxpZmVzcGFuRHVyYXRpb25UZXh0fHxsLlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW5EYXlzOnMuTGVuZ3RoKyIgIitsLkxpZmVzcGFuRHVyYXRpb25UZXh0fHxsLlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW5EYXlzLGE9bC5Jc0xpZmVzcGFuRW5hYmxlZD8iJm5ic3A7KCIrYSsiKSI6IiI7dihvKCIuY29va2llcy10ZCB1bCIpKS5hcHBlbmQoIjxsaT4gIitzLk5hbWUrIiAiK2ErIiA8L2xpPiIpLGwuSXNMaWZlc3BhbkVuYWJsZWQmJihhPXMuTGVuZ3RoP3MuTGVuZ3RoKyIgZGF5cyI6Ik4vQSIsdihvKCIubGlmZS1zcGFuLXRkIHVsIikpLmFwcGVuZCgiPGxpPiIrYSsiPC9saT4iKSksMD09PW4mJih2KG8oIi5ob3N0LXRkIikpLmFwcGVuZCgnPHNwYW4gY2xhc3M9Im90LW1vYmlsZS1ib3JkZXIiPjwvc3Bhbj4nKSx2KG8oIi5ob3N0LXRkIikpLmFwcGVuZCgnPGEgaHJlZj0iaHR0cHM6Ly9jb29raWVwZWRpYS5jby51ay9ob3N0Lycrcy5Ib3N0KyciIHJlbD0ibm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIlxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0iJysoZS5EaXNwbGF5TmFtZXx8ZS5Ib3N0TmFtZSkrIiAiK0wuTmV3V2luVHh0KyciPicrKGUuRGlzcGxheU5hbWV8fGUuSG9zdE5hbWUpKyI8L2E+IikpLG4rK31kfHx0LnJlbW92ZUNoaWxkKG8oInRkLmhvc3QtZGVzY3JpcHRpb24tdGQiKSksdih1KCJ0Ym9keSIpKS5hcHBlbmQodCl9KShuW29dKTswPT09dC5sZW5ndGgmJnYodSgidGFibGUiKSkuZWwucmVtb3ZlQ2hpbGQodih1KCJ0aGVhZCIpKS5lbCl9LEFyLnByb3RvdHlwZS50cmFuc2Zvcm1GaXJzdFBhcnR5Q29va2llcz1mdW5jdGlvbihlLHQsbyl7dmFyIG49dGhpcyxyPXQuc2xpY2UoKSx0PShlLmZvckVhY2goZnVuY3Rpb24oZSl7bi5wb3B1bGF0ZUhvc3RHcm91cChlLHIsTC5maXJzdFBhcnR5VHh0KX0pLG8uR2VuZXJhbFZlbmRvcnNJZHMpLGU9KHRoaXMucG9wdWxhdGVHZW5WZW5kb3IodCxvLHIpLG8uU3ViR3JvdXBzfHxbXSk7cmV0dXJuIGUubGVuZ3RoJiZlLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9ZS5HZW5lcmFsVmVuZG9yc0lkcztuLnBvcHVsYXRlR2VuVmVuZG9yKHQsZSxyKX0pLHJ9LEFyLnByb3RvdHlwZS5wb3B1bGF0ZUdlblZlbmRvcj1mdW5jdGlvbihlLG8sbil7dmFyIHI9dGhpcztlLmxlbmd0aCYmZS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBlPUwuR2VuZXJhbFZlbmRvcnMuZmluZChmdW5jdGlvbihlKXtyZXR1cm4gZS5WZW5kb3JDdXN0b21JZD09PXR9KTtlLkNvb2tpZXMubGVuZ3RoJiZlLkNvb2tpZXMuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdDtlLmNhdGVnb3J5PT09by5Hcm91cE5hbWUmJih0PWUuaXNUaGlyZFBhcnR5PyIiOkwuZmlyc3RQYXJ0eVR4dCxyLnBvcHVsYXRlSG9zdEdyb3VwKGUsbix0KSl9KX0pfSxBci5wcm90b3R5cGUucG9wdWxhdGVIb3N0R3JvdXA9ZnVuY3Rpb24odCxlLG8pe2Uuc29tZShmdW5jdGlvbihlKXtpZihlLkhvc3ROYW1lPT09dC5Ib3N0JiZlLlR5cGU9PT1vKXJldHVybiBlLkNvb2tpZXMucHVzaCh0KSwhMH0pfHxlLnVuc2hpZnQoe0hvc3ROYW1lOnQuSG9zdCxEaXNwbGF5TmFtZTp0Lkhvc3QsSG9zdElkOiIiLERlc2NyaXB0aW9uOiIiLFR5cGU6byxDb29raWVzOlt0XX0pfSxBci5wcm90b3R5cGUuaW5zZXJ0Q29va2llTGluZUJ5TGluZT1mdW5jdGlvbihlKXtmb3IodmFyIHQ9ZS5qc29uLG89ZS50YWJsZVJvd1RlbXBsYXRlLG49ZS5zaG93SG9zdERlc2NyaXB0aW9uLHI9ZS5zdCxpPTAscz1lLmhvc3RzO2k8cy5sZW5ndGg7aSsrKWZvcih2YXIgYT1zW2ldLGw9MCxjPWEuQ29va2llcztsPGMubGVuZ3RoO2wrKyl7dmFyIGQ9Y1tsXSx1PWQuSXNTZXNzaW9uP3QuTGlmZXNwYW5UeXBlVGV4dDpJLmdldER1cmF0aW9uKGQpLHA9ZC5OYW1lLEM9KGEuVHlwZSYmKHA9JzxhIGhyZWY9Imh0dHBzOi8vY29va2llcGVkaWEuY28udWsvY29va2llcy8nK3ArJyJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbD0ibm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIiBhcmlhLWxhYmVsPSInK3ArIiAiK0wuTmV3V2luVHh0KyciPicrcCsiXG4gICAgICAgICAgICAgICAgICAgIDwvYT4iKSxvLmNsb25lTm9kZSghMCkpLGc9dGhpcy5xdWVyeVRvSHRtbEVsZW1lbnQoQyk7dGhpcy5jbGVhckNvb2tpZVJvd0VsZW1lbnQoZyksdGhpcy5jcmVhdGVDb29raWVSb3dIdG1sRWxlbWVudCh7aG9zdDphLHN1Ykdyb3VwQ29va2llOmQsdHJ0OmcsanNvbjp0LGxpZmVzcGFuVGV4dDp1LGhvc3RUeXBlOnB9KSx0aGlzLnJlbW92ZUxpZmVTcGFuT3JIb3N0RGVzY3JpcHRpb24odCxuLEMsZyksdihyKCJ0Ym9keSIpKS5hcHBlbmQoQyl9fSxBci5wcm90b3R5cGUucmVtb3ZlTGlmZVNwYW5Pckhvc3REZXNjcmlwdGlvbj1mdW5jdGlvbihlLHQsbyxuKXtlLklzTGlmZXNwYW5FbmFibGVkfHxvLnJlbW92ZUNoaWxkKG4oInRkLm90LWxpZmUtc3Bhbi10ZCIpKSx0fHxvLnJlbW92ZUNoaWxkKG4oInRkLm90LWhvc3QtZGVzY3JpcHRpb24tdGQiKSl9LEFyLnByb3RvdHlwZS5jcmVhdGVDb29raWVSb3dIdG1sRWxlbWVudD1mdW5jdGlvbihlKXt2YXIgdD1lLmhvc3Qsbz1lLnN1Ykdyb3VwQ29va2llLG49ZS50cnQscj1lLmxpZmVzcGFuVGV4dCxpPWUuaG9zdFR5cGUscz0iLm90LWhvc3QtdGQiLGU9KHRoaXMuc2V0RGF0YUxhYmVsQXR0cmlidXRlKG4sZS5qc29uKSx2KG4oIi5vdC1ob3N0LWRlc2NyaXB0aW9uLXRkIikpLmh0bWwoJzxzcGFuIGNsYXNzPSJvdC1tb2JpbGUtYm9yZGVyIj48L3NwYW4+PHA+JytvLmRlc2NyaXB0aW9uKyI8L3A+ICIpLHYobihzKSkuYXBwZW5kKCc8c3BhbiBjbGFzcz0ib3QtbW9iaWxlLWJvcmRlciI+PC9zcGFuPicpLHQuRGlzcGxheU5hbWV8fHQuSG9zdE5hbWUpO3YobihzKSkuYXBwZW5kKHQuVHlwZT9lOic8YSBocmVmPSJodHRwczovL2Nvb2tpZXBlZGlhLmNvLnVrL2hvc3QvJytvLkhvc3QrJyIgcmVsPSJub29wZW5lciIgdGFyZ2V0PSJfYmxhbmsiXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPSInK2UrIiAiK0wuTmV3V2luVHh0KyciPlxuICAgICAgICAgICAgICAgICAgICAgICAgJytlKyJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4iKSxuKCIub3QtY29va2llcy10ZCAub3QtY29va2llcy10ZC1jb250ZW50IikuaW5zZXJ0QWRqYWNlbnRIVE1MKCJiZWZvcmVlbmQiLG0uZ2V0SW5uZXJIdG1sQ29udGVudChpKSksdihuKCIub3QtbGlmZS1zcGFuLXRkIC5vdC1saWZlLXNwYW4tdGQtY29udGVudCIpKS5odG1sKHIpLHYobigiLm90LWNvb2tpZXMtdHlwZSAub3QtY29va2llcy10eXBlLXRkLWNvbnRlbnQiKSkuaHRtbCh0LlR5cGU/TC5maXJzdFBhcnR5VHh0OkwudGhpcmRQYXJ0eVR4dCl9LEFyLnByb3RvdHlwZS5zZXREYXRhTGFiZWxBdHRyaWJ1dGU9ZnVuY3Rpb24oZSx0KXt2YXIgbz0iZGF0YS1sYWJlbCI7ZSgiLm90LWhvc3QtdGQiKS5zZXRBdHRyaWJ1dGUobyx0LkNhdGVnb3JpZXNUZXh0KSxlKCIub3QtY29va2llcy10ZCIpLnNldEF0dHJpYnV0ZShvLHQuQ29va2llc1RleHQpLGUoIi5vdC1jb29raWVzLXR5cGUiKS5zZXRBdHRyaWJ1dGUobyx0LkNvb2tpZXNVc2VkVGV4dCksZSgiLm90LWxpZmUtc3Bhbi10ZCIpLnNldEF0dHJpYnV0ZShvLHQuTGlmZXNwYW5UZXh0KSxlKCIub3QtaG9zdC1kZXNjcmlwdGlvbi10ZCIpLnNldEF0dHJpYnV0ZShvLHQuQ29va2llc0Rlc2NUZXh0KX0sQXIucHJvdG90eXBlLmNsZWFyQ29va2llUm93RWxlbWVudD1mdW5jdGlvbihlKXt2KGUoIi5vdC1jb29raWVzLXRkIHNwYW4iKSkudGV4dCgiIiksdihlKCIub3QtbGlmZS1zcGFuLXRkIHNwYW4iKSkudGV4dCgiIiksdihlKCIub3QtY29va2llcy10eXBlIHNwYW4iKSkudGV4dCgiIiksdihlKCIub3QtY29va2llcy10ZCAub3QtY29va2llcy10ZC1jb250ZW50IikpLmh0bWwoIiIpLHYoZSgiLm90LWhvc3QtdGQiKSkuaHRtbCgiIil9LEFyLnByb3RvdHlwZS5zZXRDb29raWVMaXN0SGVhZGVyT3JkZXI9ZnVuY3Rpb24oZSl7dmFyIGU9ZS5xdWVyeVNlbGVjdG9yKCJzZWN0aW9uIHRhYmxlIHRoZWFkIHRyIiksdD1lLnF1ZXJ5U2VsZWN0b3IoInRoLm90LWhvc3QiKSxvPWUucXVlcnlTZWxlY3RvcigidGgub3QtY29va2llcyIpLG49ZS5xdWVyeVNlbGVjdG9yKCJ0aC5vdC1saWZlLXNwYW4iKSxyPWUucXVlcnlTZWxlY3RvcigidGgub3QtY29va2llcy10eXBlIiksaT1lLnF1ZXJ5U2VsZWN0b3IoInRoLm90LWhvc3QtZGVzY3JpcHRpb24iKTtlLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoIiIpLGUuYXBwZW5kQ2hpbGQoby5jbG9uZU5vZGUoITApKSxlLmFwcGVuZENoaWxkKHQuY2xvbmVOb2RlKCEwKSksZS5hcHBlbmRDaGlsZChuLmNsb25lTm9kZSghMCkpLGUuYXBwZW5kQ2hpbGQoci5jbG9uZU5vZGUoITApKSxlLmFwcGVuZENoaWxkKGkuY2xvbmVOb2RlKCEwKSl9LEFyLnByb3RvdHlwZS5zZXRDb29raWVMaXN0Qm9keU9yZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PWUucXVlcnlTZWxlY3RvcigidGQub3QtaG9zdC10ZCIpLG89ZS5xdWVyeVNlbGVjdG9yKCJ0ZC5vdC1jb29raWVzLXRkIiksbj1lLnF1ZXJ5U2VsZWN0b3IoInRkLm90LWxpZmUtc3Bhbi10ZCIpLHI9ZS5xdWVyeVNlbGVjdG9yKCJ0ZC5vdC1jb29raWVzLXR5cGUiKSxpPWUucXVlcnlTZWxlY3RvcigidGQub3QtaG9zdC1kZXNjcmlwdGlvbi10ZCIpO2UuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudCgiIiksZS5hcHBlbmRDaGlsZChvLmNsb25lTm9kZSghMCkpLGUuYXBwZW5kQ2hpbGQodC5jbG9uZU5vZGUoITApKSxlLmFwcGVuZENoaWxkKG4uY2xvbmVOb2RlKCEwKSksZS5hcHBlbmRDaGlsZChyLmNsb25lTm9kZSghMCkpLGUuYXBwZW5kQ2hpbGQoaS5jbG9uZU5vZGUoITApKX0sQXIucHJvdG90eXBlLnF1ZXJ5VG9IdG1sRWxlbWVudD1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIHQucXVlcnlTZWxlY3RvcihlKX19O3ZhciBUcixQcj1BcjtmdW5jdGlvbiBBcigpe3RoaXMuZ3JvdXBzQ2xhc3M9Vix0aGlzLkNPT0tJRV9QT0xJQ1lfU0VMRUNUT1I9IiNvdC1zZGstY29va2llLXBvbGljeSIsdGhpcy5PUFRBTk9OX1BPTElDWV9TRUxFQ1RPUj0iI29wdGFub24tY29va2llLXBvbGljeSIsdGhpcy5PTkVUUlVTVF9DT09LSUVfUE9MSUNZPSIjb3Qtc2RrLWNvb2tpZS1wb2xpY3ksICNvcHRhbm9uLWNvb2tpZS1wb2xpY3kifWJyLnByb3RvdHlwZS5Jc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQ9ZnVuY3Rpb24oKXtyZXR1cm4gTy5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKX0sYnIucHJvdG90eXBlLkxvYWRCYW5uZXI9ZnVuY3Rpb24oKXttby5sb2FkQmFubmVyKCl9LGJyLnByb3RvdHlwZS5Jbml0PWZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUmJihlPSExKSxHZS5pbnNlcnRWaWV3UG9ydFRhZygpLHhzLmVuc3VyZUh0bWxHcm91cERhdGFJbml0aWFsaXNlZCgpLExuLnVwZGF0ZUd0bU1hY3JvcyghMSksU3IuaW5pdGlhbGlzZUxhbmRpbmdQYXRoKCksZXx8Y28uaW5pdGlhbGlzZUNzc1JlZmVyZW5jZXMoKX0sYnIucHJvdG90eXBlLkZldGNoQW5kRG93bmxvYWRQQz1mdW5jdGlvbigpe3UuZmV0Y2hBbmRTZXR1cFBDKCl9LGJyLnByb3RvdHlwZS5Ub2dnbGVJbmZvRGlzcGxheT1mdW5jdGlvbigpe21vLnRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudChObyxxbyksdS50b2dnbGVJbmZvRGlzcGxheSgpfSxici5wcm90b3R5cGUuQ2xvc2U9ZnVuY3Rpb24oZSl7dS5jbG9zZShlKX0sYnIucHJvdG90eXBlLkFsbG93QWxsPWZ1bmN0aW9uKGUpe0kuc2hvdWxkU2hvd0RvdWJsZU9wdEluU2lnbmFsKCEwKT9JLmNyZWF0ZURvdWJsZU9wdEluQ29uZmlybURpYWxvZyhfLmlzUENWaXNpYmxlLGZ1bmN0aW9uKCl7Qy5hbGxvd0FsbEV2ZW50KGUpfSk6Qy5hbGxvd0FsbEV2ZW50KGUpfSxici5wcm90b3R5cGUuUmVqZWN0QWxsPWZ1bmN0aW9uKGUpe0MucmVqZWN0QWxsRXZlbnQoZSl9LGJyLnByb3RvdHlwZS5zZW5kUmVjZWlwdD1mdW5jdGlvbigpe3ZhciBlPVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguSU5URVJBQ1RJT05fVFlQRSk7QnMuY3JlYXRlQ29uc2VudFR4bighMSxlLCExLCEwLCEwKX0sYnIucHJvdG90eXBlLnNldERhdGFTdWJqZWN0SWRWMj1mdW5jdGlvbihlLHQsbyl7dm9pZCAwPT09dCYmKHQ9ITEpLHZvaWQgMD09PW8mJihvPSIiKSwoZXx8dCkmJihlJiZlLnRyaW0oKSYmKGU9ZS5yZXBsYWNlKC8gL2csIiIpLFQud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLkNPTlNFTlRfSUQsZSwhMCkpLG51bGwhPShlPW8pJiZlLnRyaW0oKSYmVC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguSURFTlRJRklFUl9UWVBFLG8udHJpbSgpKSxfLmRzUGFyYW1zLmlzQW5vbnltb3VzPXQsXy5kc1BhcmFtcy5mb3JjZVVzZXJDb25zZW50QXR0cmlidXRlcz0hMCxULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5JU19BTk9OWU1PVVNfQ09OU0VOVCx0PyIxIjoiMCIpKX0sYnIucHJvdG90eXBlLmdldERhdGFTdWJqZWN0SWQ9ZnVuY3Rpb24oKXtyZXR1cm4gVC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5DT05TRU5UX0lELCEwKX0sYnIucHJvdG90eXBlLmdldERTRGVmYXVsdElkZW50aWZpZXI9ZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gbnVsbD09KGU9TC5Db25zZW50SW50ZWdyYXRpb24pP3ZvaWQgMDplLkRlZmF1bHRJZGVudGlmaWVyfSxici5wcm90b3R5cGUuc3luY2hyb25pc2VDb29raWVXaXRoUGF5bG9hZD1mdW5jdGlvbihuKXt2YXIgZT1ULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCwiZ3JvdXBzIiksZT1QLnN0clRvQXJyKGUpLHI9W107ZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciBlPWUuc3BsaXQoIjoiKSx0PUQuZ2V0R3JvdXBCeUlkKGVbMF0pLG89UC5maW5kSW5kZXgobixmdW5jdGlvbihlKXtyZXR1cm4gZS5JZD09PXQuUHVycG9zZUlkfSksbz1uW29dO28/by5UcmFuc2FjdGlvblR5cGU9PT1IZT8oci5wdXNoKGVbMF0rIjoxIiksdC5QYXJlbnQ/dS50b2dnbGVTdWJDYXRlZ29yeShudWxsLHQuQ3VzdG9tR3JvdXBJZCwhMCx0LkN1c3RvbUdyb3VwSWQpOnUudG9nZ2xlVjJDYXRlZ29yeShudWxsLHQsITAsdC5DdXN0b21Hcm91cElkKSk6KHIucHVzaChlWzBdKyI6MCIpLHQuUGFyZW50P3UudG9nZ2xlU3ViQ2F0ZWdvcnkobnVsbCx0LkN1c3RvbUdyb3VwSWQsITEsdC5DdXN0b21Hcm91cElkKTp1LnRvZ2dsZVYyQ2F0ZWdvcnkobnVsbCx0LCExLHQuQ3VzdG9tR3JvdXBJZCkpOnIucHVzaChlWzBdKyI6IitlWzFdKX0pLFBvLndyaXRlR3JwUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQscil9LGJyLnByb3RvdHlwZS5nZXRHZW9sb2NhdGlvbkRhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gXy51c2VyTG9jYXRpb259LGJyLnByb3RvdHlwZS5UcmlnZ2VyR29vZ2xlQW5hbHl0aWNzRXZlbnQ9ZnVuY3Rpb24oZSx0LG8sbil7bW8udHJpZ2dlckdvb2dsZUFuYWx5dGljc0V2ZW50KGUsdCxvLG4pfSxici5wcm90b3R5cGUuUmVjb25zZW50R3JvdXBzPWZ1bmN0aW9uKCl7dmFyIG49ITEsZT1ULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCwiZ3JvdXBzIikscj1QLnN0clRvQXJyKGUpLGk9UC5zdHJUb0FycihlLnJlcGxhY2UoLzowfDoxL2csIiIpKSxzPSExLHQ9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImhvc3RzIiksYT1QLnN0clRvQXJyKHQpLGw9UC5zdHJUb0Fycih0LnJlcGxhY2UoLzowfDoxL2csIiIpKSxjPVsiaW5hY3RpdmUiLCJpbmFjdGl2ZSBsYW5kaW5ncGFnZSIsImRvIG5vdCB0cmFjayJdO2UmJihMLkdyb3Vwcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe1UoZS5TdWJHcm91cHMsW2VdKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWUuQ3VzdG9tR3JvdXBJZCxvPVAuaW5kZXhPZihpLHQpOy0xIT09byYmKGU9RC5nZXRHcnBTdGF0dXMoZSkudG9Mb3dlckNhc2UoKSwtMTxjLmluZGV4T2YoZSkpJiYobj0hMCxyW29dPXQrKCJpbmFjdGl2ZSBsYW5kaW5ncGFnZSI9PT1lPyI6MSI6IjowIikpfSl9KSxuKSYmUG8ud3JpdGVHcnBQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxyKSx0JiYoTC5Hcm91cHMuZm9yRWFjaChmdW5jdGlvbihlKXtVKGUuU3ViR3JvdXBzLFtlXSkuZm9yRWFjaChmdW5jdGlvbihuKXtuLkhvc3RzLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQsbz1QLmluZGV4T2YobCxlLkhvc3RJZCk7LTEhPT1vJiYodD1ELmdldEdycFN0YXR1cyhuKS50b0xvd2VyQ2FzZSgpLC0xPGMuaW5kZXhPZih0KSkmJihzPSEwLGFbb109ZS5Ib3N0SWQrKCJpbmFjdGl2ZSBsYW5kaW5ncGFnZSI9PT10PyI6MSI6IjowIikpfSl9KX0pLHMpJiZQby53cml0ZUhzdFBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGEpfSxici5wcm90b3R5cGUuU2V0QWxlcnRCb3hDbG9zZWQ9ZnVuY3Rpb24oZSl7bW8uc2V0QWxlcnRCb3hDbG9zZWQoZSl9LGJyLnByb3RvdHlwZS5HZXREb21haW5EYXRhPWZ1bmN0aW9uKCl7cmV0dXJuIGIucHViRG9tYWluRGF0YX0sYnIucHJvdG90eXBlLnNldEdlb0xvY2F0aW9uPWZ1bmN0aW9uKGUsdCl7Xy51c2VyTG9jYXRpb249e2NvdW50cnk6ZSxzdGF0ZTp0PXZvaWQgMD09PXQ/IiI6dCxzdGF0ZU5hbWU6IiJ9fSxici5wcm90b3R5cGUuY2hhbmdlTGFuZz1mdW5jdGlvbih0KXt2YXIgbzt0IT09Xy5sYW5nJiYobz1TLm1vZHVsZUluaXRpYWxpemVyLEt0LmdldExhbmdKc29uKHQpLnRoZW4oZnVuY3Rpb24oZSl7ZT8oYi5pbml0KGUpLHhzLmZldGNoQXNzZXRzKHQpLnRoZW4oZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib25ldHJ1c3Qtc3R5bGUiKSxlPShlJiYoZS50ZXh0Q29udGVudD0iIiksY28uaW5pdGlhbGlzZUNzc1JlZmVyZW5jZXMoKSxvLklzU3VwcHJlc3NQQyYmIV8uaXNQQ1Zpc2libGV8fChQLnJlbW92ZUNoaWxkKHYoIiNvbmV0cnVzdC1wYy1zZGsiKS5lbCksXy52ZW5kb3JEb21Jbml0PSExLF8uZ2VuVmVuZG9yRG9tSW5pdD0hMSxCLmluc2VydFBjSHRtbCgpLHUuaW5pdGlhbGlzZUNvbnNlbnROb3RpY2VIYW5kbGVycygpLEwuSXNJYWJFbmFibGVkJiYoTy5hc3NpZ25JQUJEYXRhV2l0aEdsb2JhbFZlbmRvckxpc3QoXy5ndmxPYmopLGcuSW5pdGlhbGl6ZVZlbmRvckxpc3QoKSksXy5pc1BDVmlzaWJsZSYmdS5yZXN0b3JlUGMoKSksITApO1AucmVtb3ZlQ2hpbGQodigiI29uZXRydXN0LWJhbm5lci1zZGsiKS5lbCksTy5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKXx8by5Jc1N1cHByZXNzQmFubmVyJiYoby5Jc1N1cHByZXNzQmFubmVyLF8uc2tpcEFkZGluZ0hUTUwpfHxMLk5vQmFubmVyfHwhTC5TaG93QWxlcnROb3RpY2V8fCh1LmluaXRpYWxpemVBbGFydEh0bWxBbmRIYW5kbGVyKCksZT0hMSksa3IuaW5pdENvb2tpZVBvbGljeUFuZFNldHRpbmdzKCksUC5yZW1vdmVDaGlsZCh2KCIjb3Qtc2RrLWJ0bi1mbG9hdGluZyIpLmVsKSxxcy5pbnNlcnRDU0J0bihlKSxrci5wcm9jZXNzZWRIdG1sPW51bGwsa3IudXBkYXRlVENTdHJpbmdPbkxhbmdDaGFuZ2UodCl9KSk6Y29uc29sZS5lcnJvcigiTGFuZ3VhZ2U6Iit0KyIgZG9lc24ndCBleGlzdCBmb3IgdGhlIGdlbyBydWxlIil9KSl9LGJyLnByb3RvdHlwZS51cGRhdGVUQ1N0cmluZ09uTGFuZ0NoYW5nZT1mdW5jdGlvbihlKXtiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmKF8uY29uc2VudExhbmd1YWdlPWUsXy50Y01vZGVsLmNvbnNlbnRMYW5ndWFnZT1fLmNvbnNlbnRMYW5ndWFnZSxfLnRjTW9kZWwudXNlTm9uU3RhbmRhcmRUZXh0cz1MLlVzZU5vblN0YW5kYXJkU3RhY2tzLE8uaXNBbGVydEJveENsb3NlZEFuZFZhbGlkKCl8fEkudXBkYXRlVENTdHJpbmcoKSl9LGJyLnByb3RvdHlwZS5pbml0Q29va2llUG9saWN5QW5kU2V0dGluZ3M9ZnVuY3Rpb24oZSl7dmFyIHQ7KGU9dm9pZCAwPT09ZT8hMTplKSYmKG51bGwhPSh0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5vdC1zZGstc2hvdy1zZXR0aW5ncyIpKSYmdC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdS5jb29raWVzU2V0dGluZ3NCb3VuZExpc3RlbmVyKSxudWxsIT0odD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIub3B0YW5vbi10b2dnbGUtZGlzcGxheSIpKSkmJnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHUuY29va2llc1NldHRpbmdzQm91bmRMaXN0ZW5lciksUy5mcC5Db29raWVWMlRyYWNraW5nVGVjaG5vbG9naWVzP3FzLmluc2VydFRyYWNraW5nVGVjaG5vbG9naWVzKCk6VHIuaW5zZXJ0Q29va2llUG9saWN5SHRtbCgpLHUuaW5zZXJ0Q29va2llU2V0dGluZ1RleHQoZSl9LGJyLnByb3RvdHlwZS5zaG93VmVuZG9yc0xpc3Q9ZnVuY3Rpb24oKXtfLnBjTGF5ZXIhPT1zZS5WZW5kb3JMaXN0JiYodS5zaG93QWxsVmVuZG9ycygpLG1vLnRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudChObyxLbykpfSxici5wcm90b3R5cGUuZ2V0VGVzdExvZ0RhdGE9ZnVuY3Rpb24oKXt2YXIgZT1MLkdyb3Vwcyx0PWIucHViRG9tYWluRGF0YSxvPVMubW9kdWxlSW5pdGlhbGl6ZXIuVmVyc2lvbixvPShjb25zb2xlLmluZm8oIiVjV2VsY29tZSB0byBPbmVUcnVzdCBMb2ciLCJwYWRkaW5nOiA4cHg7IGJhY2tncm91bmQtY29sb3I6ICM0M2MyMzM7IGNvbG9yOiB3aGl0ZTsgZm9udC1zdHlsZTogaXRhbGljOyBib3JkZXI6IDFweCBzb2xpZCBibGFjazsgZm9udC1zaXplOiAxLjVlbTsiKSxjb25zb2xlLmluZm8oIlNjcmlwdCBpcyBmb3I6ICVjIisodC5Eb21haW58fEwub3B0YW5vbkNvb2tpZURvbWFpbiksInBhZGRpbmc6IDRweCA2cHg7IGZvbnQtc3R5bGU6IGl0YWxpYzsgYm9yZGVyOiAycHggc29saWQgIzQzYzIzMzsgZm9udC1zaXplOiAxMnB4OyIpLGNvbnNvbGUuaW5mbygiU2NyaXB0IFZlcnNpb24gUHVibGlzaGVkOiAiK28pLGNvbnNvbGUuaW5mbygiVGhlIGNvbnNlbnQgbW9kZWwgaXM6ICIrdC5Db25zZW50TW9kZWwuTmFtZSksbnVsbCE9PU8uYWxlcnRCb3hDbG9zZURhdGUoKSksbj0oY29uc29sZS5pbmZvKCJDb25zZW50IGhhcyAiKyhvPyIiOiJub3QgIikrImJlZW4gZ2l2ZW4gIisobz8i8J+RjSI6IvCfm5EiKSksTG4uY2hlY2tBbmRXYXJuR0NNQ29uZmlnKCksW10pLHI9KGUuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD0iIix0PWUuU3RhdHVzJiYiYWx3YXlzIGFjdGl2ZSI9PT1lLlN0YXR1cy50b0xvd2VyQ2FzZSgpPyJBbHdheXMgQWN0aXZlIjpWLmlzR3JvdXBBY3RpdmUoZSk/IkFjdGl2ZSI6IkluYWN0aXZlIjtuLnB1c2goe0N1c3RvbUdyb3VwSWQ6ZS5DdXN0b21Hcm91cElkLEdyb3VwTmFtZTplLkdyb3VwTmFtZSxTdGF0dXM6dH0pfSksY29uc29sZS5ncm91cENvbGxhcHNlZCgiQ3VycmVudCBDYXRlZ29yeSBTdGF0dXMiKSxjb25zb2xlLnRhYmxlKG4pLGNvbnNvbGUuZ3JvdXBFbmQoKSxbXSksbz0odC5HZW5lcmFsVmVuZG9ycy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3IucHVzaCh7Q3VzdG9tR3JvdXBJZDplLlZlbmRvckN1c3RvbUlkLE5hbWU6ZS5OYW1lLFN0YXR1czprci5pc0NhdGVnb3J5QWN0aXZlKGUuVmVuZG9yQ3VzdG9tSWQpPyJhY3RpdmUiOiJpbmFjdGl2ZSJ9KX0pLGNvbnNvbGUuZ3JvdXBDb2xsYXBzZWQoIkdlbmVyYWwgVmVuZG9yIElkcyIpLGNvbnNvbGUudGFibGUociksY29uc29sZS5ncm91cEVuZCgpLGIuZ2V0UmVnaW9uUnVsZSgpKSx0PV8udXNlckxvY2F0aW9uLGk9Uy5tb2R1bGVJbml0aWFsaXplci5HZW9SdWxlR3JvdXBOYW1lLHQ9KGIuY29uZGl0aW9uYWxMb2dpY0VuYWJsZWQ/Y29uc29sZS5ncm91cENvbGxhcHNlZCgiR2VvbG9jYXRpb24sIFRlbXBsYXRlICYgQ29uZGl0aW9uIik6Y29uc29sZS5ncm91cENvbGxhcHNlZCgiR2VvbG9jYXRpb24gYW5kIFRlbXBsYXRlIiksXy51c2VyTG9jYXRpb24uY291bnRyeSYmY29uc29sZS5pbmZvKCJUaGUgR2VvbG9jYXRpb24gaXMgIit0LmNvdW50cnkudG9VcHBlckNhc2UoKSksY29uc29sZS5pbmZvKCJUaGUgR2VvbG9jYXRpb24gcnVsZSBpcyAiK28uTmFtZSksY29uc29sZS5pbmZvKCJUaGUgR2VvbG9jYXRpb25SdWxlR3JvdXAgaXMgIitpKSxiLmNhblVzZUNvbmRpdGlvbmFsTG9naWMmJmNvbnNvbGUuaW5mbygiVGhlIENvbmRpdGlvbiBuYW1lIGlzICIrYi5Db25kaXRpb24uTmFtZSksY29uc29sZS5pbmZvKCJUaGUgVGVtcGxhdGVOYW1lIGlzICIrYi5nZXRUZW1wbGF0ZU5hbWUoKSksY29uc29sZS5ncm91cEVuZCgpLGUuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBWLmlzR3JvdXBBY3RpdmUoZSkmJiJDT09LSUUiPT09ZS5UeXBlfSkpO2NvbnNvbGUuZ3JvdXBDb2xsYXBzZWQoIlRoZSBjb29raWVzIGV4cGVjdGVkIHRvIGJlIGFjdGl2ZSBpZiBibG9ja2luZyBoYXMgYmVlbiBpbXBsZW1lbnRlZCBhcmUiKSx0LmZvckVhY2goZnVuY3Rpb24oZSl7Y29uc29sZS5ncm91cENvbGxhcHNlZChlLkdyb3VwTmFtZSk7ZT1rci5nZXRBbGxGb3JtYXRDb29raWVzRm9yQUdyb3VwKGUpO2NvbnNvbGUudGFibGUoZSxbIk5hbWUiLCJIb3N0IiwiZGVzY3JpcHRpb24iXSksY29uc29sZS5ncm91cEVuZCgpfSksY29uc29sZS5ncm91cEVuZCgpfSxici5wcm90b3R5cGUuaXNDYXRlZ29yeUFjdGl2ZT1mdW5jdGlvbihlKXtyZXR1cm4tMSE9PXdpbmRvdy5PcHRhbm9uQWN0aXZlR3JvdXBzLmluZGV4T2YoIiwiK2UrIiwiKX0sYnIucHJvdG90eXBlLmdldEFsbEZvcm1hdENvb2tpZXNGb3JBR3JvdXA9ZnVuY3Rpb24oZSl7dmFyIHQ9W107cmV0dXJuIGUuRmlyc3RQYXJ0eUNvb2tpZXMuZm9yRWFjaChmdW5jdGlvbihlKXtyZXR1cm4gdC5wdXNoKHtOYW1lOmUuTmFtZSxIb3N0OmUuSG9zdCxEZXNjcmlwdGlvbjplLmRlc2NyaXB0aW9ufSl9KSwobnVsbD09KGU9ZS5Ib3N0cyk/dm9pZCAwOmUucmVkdWNlKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUuY29uY2F0KEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodC5Db29raWVzKSkpfSxbXSkpLmZvckVhY2goZnVuY3Rpb24oZSl7cmV0dXJuIHQucHVzaCh7TmFtZTplLk5hbWUsSG9zdDplLkhvc3QsRGVzY3JpcHRpb246ZS5kZXNjcmlwdGlvbn0pfSksdH0sYnIucHJvdG90eXBlLnVwZGF0ZVNpbmd1bGFyQ29uc2VudD1mdW5jdGlvbihsLGMpe3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciB0LG8sbixyLGkscyxhO3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCx1LmZldGNoQW5kU2V0dXBQQygpXTtjYXNlIDE6Zm9yKGUuc2VudCgpLGIuYXBpU291cmNlPW9lLlVwZGF0ZUNvbnNlbnQsdD1jLnNwbGl0KCIsIiksbz1bXSxuPTAscj10O248ci5sZW5ndGg7bisrKXM9cltuXSxzPXMuc3BsaXQoIjoiKSxpPXNbMF0scz1zWzFdLGE9Qm9vbGVhbihOdW1iZXIocykpLGw9PT1odD8iYWx3YXlzIGFjdGl2ZSI9PT1ELmdldEdycFN0YXR1cyhELmdldEdyb3VwQnlJZChpKSl8fChrci51cGRhdGVDb25zZW50QXJyYXkoXy5ncm91cHNDb25zZW50LGkscyksby5wdXNoKHtpZDppLGlzRW5hYmxlZDphfSkpOmw9PT15dD9rci51cGRhdGVDb25zZW50QXJyYXkoXy5ob3N0c0NvbnNlbnQsaSxzKTpsPT09ZnQ/Xy5nZW5WZW5kb3JzQ29uc2VudFtpXT1hOmw9PT1TdCYmby5wdXNoKHtpZDppLGlzRW5hYmxlZDphfSk7cmV0dXJuIEMuaGFuZGxlVG9nZ2xlc09uU2luZ3VsYXJDb25zZW50VXBkYXRlKGwsbyksWzJdfX0pfSl9LGJyLnByb3RvdHlwZS52ZW5kb3JTZXJ2aWNlRW5hYmxlZD1mdW5jdGlvbigpe3JldHVybiBfLnNob3dWZW5kb3JTZXJ2aWNlfSxici5wcm90b3R5cGUudXBkYXRlR0NNPWZ1bmN0aW9uKGUpe2V8fGNvbnNvbGUuZXJyb3IoIk5vIGNhbGxiYWNrIHBhc3NlZCB0byB0aGUgVXBkYXRlR0NNIiksYi5nY21VcGRhdGVDYWxsYmFjaz1lfSxici5wcm90b3R5cGUudXBkYXRlQ29uc2VudEFycmF5PWZ1bmN0aW9uKGUsdCxvKXt2YXIgbj1lLmZpbmRJbmRleChmdW5jdGlvbihlKXtyZXR1cm4gZT09PXQrIjowInx8ZT09PXQrIjoxIn0pOy0xPG4/ZVtuXT10KyI6IitvOmUucHVzaCh0KyI6IitvKX07dmFyIGtyLElyPWJyO2Z1bmN0aW9uIGJyKCl7dGhpcy5wcm9jZXNzZWRIdG1sPSIiLHRoaXMudXNlR2VvTG9jYXRpb25TZXJ2aWNlPSEwLHRoaXMuSXNBbGVydEJveENsb3NlZD10aGlzLklzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCx0aGlzLkluaXRpYWxpemVCYW5uZXI9ZnVuY3Rpb24oKXtyZXR1cm4gcXMuaW5pdEJhbm5lcigpfSx0aGlzLmdldEhUTUw9ZnVuY3Rpb24oKXtyZXR1cm4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm9uZXRydXN0LWJhbm5lci1zZGsiKXx8KEIuaW5zZXJ0UGNIdG1sKCkscHIuaW5zZXJ0QWxlcnRIdG1sKCkpLGtyLnByb2Nlc3NlZEh0bWx8fChrci5wcm9jZXNzZWRIdG1sPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNvbmV0cnVzdC1jb25zZW50LXNkayIpLm91dGVySFRNTCksa3IucHJvY2Vzc2VkSHRtbH0sdGhpcy5nZXRDU1M9ZnVuY3Rpb24oKXtyZXR1cm4gY28ucHJvY2Vzc2VkQ1NTfSx0aGlzLnNldENvbnNlbnRQcm9maWxlPWZ1bmN0aW9uKGUpe3ZhciB0LG87ZS5jdXN0b21QYXlsb2FkJiZudWxsIT0odD1vPWUuY3VzdG9tUGF5bG9hZCkmJnQuSW50ZXJhY3Rpb24mJlQud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLklOVEVSQUNUSU9OX0NPVU5ULG8uSW50ZXJhY3Rpb24pLGtyLnNldERhdGFTdWJqZWN0SWRWMihlLmlkZW50aWZpZXIsZS5pc0Fub255bW91cyxlLmlkZW50aWZpZXJUeXBlKSxrci5zeW5jaHJvbmlzZUNvb2tpZVdpdGhQYXlsb2FkKGUucHVycG9zZXMpLEMuZXhlY3V0ZU9wdGFub25XcmFwcGVyKCl9LHRoaXMuSW5zZXJ0U2NyaXB0PWZ1bmN0aW9uKGUsdCxvLG4scixpKXt2YXIgcyxhPW51bGwhPW4mJnZvaWQgMCE9PW4sbD1hJiZ2b2lkIDAhPT1uLmlnbm9yZUdyb3VwQ2hlY2smJiEwPT09bi5pZ25vcmVHcm91cENoZWNrO2lmKFYuY2FuSW5zZXJ0Rm9yR3JvdXAocixsKSYmIVAuY29udGFpbnMoXy5zcmNFeGVjR3JwcyxyKSl7Xy5zcmNFeGVjR3Jwc1RlbXAucHVzaChyKSxhJiZ2b2lkIDAhPT1uLmRlbGV0ZVNlbGVjdG9yQ29udGVudCYmITA9PT1uLmRlbGV0ZVNlbGVjdG9yQ29udGVudCYmUC5lbXB0eSh0KTt2YXIgYz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtzd2l0Y2gobnVsbCE9byYmdm9pZCAwIT09byYmKHM9ITEsYy5vbmxvYWQ9Yy5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXtzfHx0aGlzLnJlYWR5U3RhdGUmJiJsb2FkZWQiIT09dGhpcy5yZWFkeVN0YXRlJiYiY29tcGxldGUiIT09dGhpcy5yZWFkeVN0YXRlfHwocz0hMCxvKCkpfSksYy50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLGMuc3JjPWUsaSYmKGMuYXN5bmM9aSksdCl7Y2FzZSJoZWFkIjpkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGMpO2JyZWFrO2Nhc2UiYm9keSI6ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJvZHkiKVswXS5hcHBlbmRDaGlsZChjKTticmVhaztkZWZhdWx0OnZhciBkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHQpO2QmJihkLmFwcGVuZENoaWxkKGMpLGEpJiZ2b2lkIDAhPT1uLm1ha2VTZWxlY3RvclZpc2libGUmJiEwPT09bi5tYWtlU2VsZWN0b3JWaXNpYmxlJiZQLnNob3codCl9aWYoYSYmdm9pZCAwIT09bi5tYWtlRWxlbWVudHNWaXNpYmxlKWZvcih2YXIgdT0wLHA9bi5tYWtlRWxlbWVudHNWaXNpYmxlO3U8cC5sZW5ndGg7dSsrKXt2YXIgQz1wW3VdO1Auc2hvdyhDKX1pZihhJiZ2b2lkIDAhPT1uLmRlbGV0ZUVsZW1lbnRzKWZvcih2YXIgZz0wLGg9bi5kZWxldGVFbGVtZW50cztnPGgubGVuZ3RoO2crKyl7Qz1oW2ddO1AucmVtb3ZlKEMpfX19LHRoaXMuSW5zZXJ0SHRtbD1mdW5jdGlvbihlLHQsbyxuLHIpe3ZhciBpPW51bGwhPW4mJnZvaWQgMCE9PW4scz1pJiZ2b2lkIDAhPT1uLmlnbm9yZUdyb3VwQ2hlY2smJiEwPT09bi5pZ25vcmVHcm91cENoZWNrO2lmKFYuY2FuSW5zZXJ0Rm9yR3JvdXAocixzKSYmIVAuY29udGFpbnMoXy5odG1sRXhlY0dycHMscikpe2lmKF8uaHRtbEV4ZWNHcnBzVGVtcC5wdXNoKHIpLGkmJnZvaWQgMCE9PW4uZGVsZXRlU2VsZWN0b3JDb250ZW50JiYhMD09PW4uZGVsZXRlU2VsZWN0b3JDb250ZW50JiZQLmVtcHR5KHQpLFAuYXBwZW5kVG8odCxlKSxpJiZ2b2lkIDAhPT1uLm1ha2VTZWxlY3RvclZpc2libGUmJiEwPT09bi5tYWtlU2VsZWN0b3JWaXNpYmxlJiZQLnNob3codCksaSYmdm9pZCAwIT09bi5tYWtlRWxlbWVudHNWaXNpYmxlKWZvcih2YXIgYT0wLGw9bi5tYWtlRWxlbWVudHNWaXNpYmxlO2E8bC5sZW5ndGg7YSsrKXt2YXIgYz1sW2FdO1Auc2hvdyhjKX1pZihpJiZ2b2lkIDAhPT1uLmRlbGV0ZUVsZW1lbnRzKWZvcih2YXIgZD0wLHU9bi5kZWxldGVFbGVtZW50cztkPHUubGVuZ3RoO2QrKyl7Yz11W2RdO1AucmVtb3ZlKGMpfW51bGwhPW8mJnZvaWQgMCE9PW8mJm8oKX19LHRoaXMuQmxvY2tHb29nbGVBbmFseXRpY3M9ZnVuY3Rpb24oZSx0KXt3aW5kb3dbImdhLWRpc2FibGUtIitlXT0hVi5jYW5JbnNlcnRGb3JHcm91cCh0KX19X3IucHJvdG90eXBlLmdldEZpZWxkc1ZhbHVlcz1mdW5jdGlvbihlLHQsbyxuLHIpe3ZvaWQgMD09PXImJihyPSExKTtlPXRoaXMuZ2V0U2VjdGlvbkZpZWxkc01hcHBpbmcoZSksdD10aGlzLmdldFNlY3Rpb25GaWVsZHNNYXBwaW5nKHQsITApLG89dGhpcy5nZXREeW5hbWljRmllbGRzKG8sbiksbj10aGlzLmdldE1TUEFTZWN0aW9uRmllbGRWYWx1ZSgpLHI9cj90aGlzLmdldEdwY1NlY3Rpb25GaWVsZFZhbHVlKCk6e307cmV0dXJuIEwuSXNNU1BBRW5hYmxlZCYmTC5NU1BBT3B0aW9uTW9kZT09PURlLk1zcGFTZXJ2aWNlUHJvdmlkZXJNb2RlJiZTLmZwLkNvb2tpZUlBQkdQUFYyP3RoaXMuc2VydmljZVByb3ZpZGVyTW9kZShlLHQsbyxuLHIpOlIoUihSKFIoUih7fSxlKSx0KSxvKSxuKSxyKX0sX3IucHJvdG90eXBlLnNlcnZpY2VQcm92aWRlck1vZGU9ZnVuY3Rpb24oZSx0LG8sbixyKXtlPXRoaXMuZ2V0Tm90QXBwbGljYWJsZVZhbHVlKGUpLHQ9dGhpcy5nZXROb3RBcHBsaWNhYmxlVmFsdWUodCksbz10aGlzLmdldE5vdEFwcGxpY2FibGVWYWx1ZShvKTtyZXR1cm4gUihSKFIoUihSKHt9LGUpLHQpLG8pLG4pLHIpfSxfci5wcm90b3R5cGUuZ2V0Tm90QXBwbGljYWJsZVZhbHVlPWZ1bmN0aW9uKGUpe3ZhciBvPXt9O3JldHVybiBPYmplY3QuZW50cmllcyhlKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWVbMF0sZT1lWzFdO0FycmF5LmlzQXJyYXkoZSk/b1t0XT1lLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gMH0pOm9bdF09MH0pLG99LF9yLnByb3RvdHlwZS5nZXRHcGNTZWN0aW9uRmllbGRWYWx1ZT1mdW5jdGlvbigpe3ZhciBlPXt9O3JldHVybiBlW1ZlLkdwY1NlZ21lbnRUeXBlXT0xLGVbVmUuR3BjXT1iLmdwY0VuYWJsZWQsZX0sX3IucHJvdG90eXBlLmdldE1TUEFTZWN0aW9uRmllbGRWYWx1ZT1mdW5jdGlvbigpe3ZhciBlPXt9O3JldHVybiBMLklzTVNQQUVuYWJsZWQ/KGUuTXNwYUNvdmVyZWRUcmFuc2FjdGlvbj0xLEwuTVNQQU9wdGlvbk1vZGU9PT1EZS5Nc3BhU2VydmljZVByb3ZpZGVyTW9kZT8oZS5Nc3BhU2VydmljZVByb3ZpZGVyTW9kZT0xLGUuTXNwYU9wdE91dE9wdGlvbk1vZGU9Mik6TC5NU1BBT3B0aW9uTW9kZT09PURlLk1zcGFPcHRPdXRPcHRpb25Nb2RlPyhlLk1zcGFTZXJ2aWNlUHJvdmlkZXJNb2RlPTIsZS5Nc3BhT3B0T3V0T3B0aW9uTW9kZT0xKTooZS5Nc3BhU2VydmljZVByb3ZpZGVyTW9kZT0yLGUuTXNwYU9wdE91dE9wdGlvbk1vZGU9MikpOihlLk1zcGFDb3ZlcmVkVHJhbnNhY3Rpb249MixlLk1zcGFTZXJ2aWNlUHJvdmlkZXJNb2RlPTAsZS5Nc3BhT3B0T3V0T3B0aW9uTW9kZT0wKSxlfSxfci5wcm90b3R5cGUuZ2V0RHluYW1pY0FycmF5RmllbGRzVmFsdWU9ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG89e30sbj1bXSxyPXRoaXMuZ2V0U2VjdGlvbkZpZWxkc01hcHBpbmcodCksaT0xO2k8PU9iamVjdC5rZXlzKHIpLmxlbmd0aDtpKyspbi5wdXNoKHJbZStpXSk7cmV0dXJuIG9bZV09bixvfSxfci5wcm90b3R5cGUuZ2V0RHluYW1pY0ZpZWxkcz1mdW5jdGlvbihlLHQpe3ZhciBvLG49e307cmV0dXJuIEwuSXNHUFBLbm93bkNoaWxkQXBwbGljYWJsZSYmZSYmKG89dGhpcy5nZXREeW5hbWljQXJyYXlGaWVsZHNWYWx1ZSh3ZS5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzLGUpLG49UihSKHt9LG4pLG8pKSxMLklzR1BQRGF0YVByb2Nlc3NpbmdBcHBsaWNhYmxlJiZ0JiYobz10aGlzLmdldER5bmFtaWNBcnJheUZpZWxkc1ZhbHVlKHdlLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nLHQpLG49UihSKHt9LG4pLG8pKSxufSxfci5wcm90b3R5cGUuZ2V0U2VjdGlvbkZpZWxkc01hcHBpbmc9ZnVuY3Rpb24oZSxvKXt2YXIgbj10aGlzLHI9KHZvaWQgMD09PW8mJihvPSExKSx7fSk7cmV0dXJuIFMuZnAsT2JqZWN0LmVudHJpZXMoZSkuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1lWzBdLGU9bi5ldmFsdWF0ZVZhbHVlT3BlcmF0b3JzKGVbMV0pO3JbdF09bi5jYWxjdWxhdGVGaWVsZFZhbHVlKGUsbyl9KSxyfSxfci5wcm90b3R5cGUuZXZhbHVhdGVWYWx1ZU9wZXJhdG9ycz1mdW5jdGlvbihlKXt2YXIgdCxvLG49IiIscj1bXTtyZXR1cm4gZSYmKHQ9ZS5zcGxpdCgiICYmICIpLG89ZS5zcGxpdCgiIHx8ICIpLHI9KDE8dC5sZW5ndGg/KG49IiYmIix0KToxPG8ubGVuZ3RoPyhuPSJ8fCIsbyk6KG49IiIsW2VdKSkubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBMLkdQUFB1cnBvc2VzW2VdfHwiIn0pKSx7dmFsdWVzOnIsb3BlcmF0b3I6bn19LF9yLnByb3RvdHlwZS5jYWxjdWxhdGVGaWVsZFZhbHVlPWZ1bmN0aW9uKGUsdCl7dmFyIG87aWYoZS52YWx1ZXMubGVuZ3RoKXN3aXRjaChlLm9wZXJhdG9yKXtjYXNlIiYmIjpvPXRoaXMuY2FsY3VsYXRlQW5kRmllbGRWYWx1ZShlLnZhbHVlcyx0KTticmVhaztjYXNlInx8IjpvPXRoaXMuY2FsY3VsYXRlT3JGaWVsZFZhbHVlKGUudmFsdWVzLHQpO2JyZWFrO2RlZmF1bHQ6bz10aGlzLmNhbGN1bGF0ZVNpbmdsZUZpZWxkVmFsdWUoZS52YWx1ZXNbMF0sdCl9ZWxzZSBvPTA7cmV0dXJuIG99LF9yLnByb3RvdHlwZS5jYWxjdWxhdGVPckZpZWxkVmFsdWU9ZnVuY3Rpb24oZSx0KXt2YXIgbz10aGlzO3JldHVybiB0aGlzLmlzTm90QXBwbGljYWJsZShlKT8wOihlPWUuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiIiIT09ZS50cmltKCl9KS5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBvLmZpZWxkVmFsdWVDb25kaXRpb24oZSx0KX0pLHRoaXMuY2FsY3VsYXRlRmllbGRWYWx1ZUZyb21CaXQoZSx0KSl9LF9yLnByb3RvdHlwZS5jYWxjdWxhdGVBbmRGaWVsZFZhbHVlPWZ1bmN0aW9uKGUsdCl7dmFyIG89dGhpcztyZXR1cm4gdGhpcy5pc05vdEFwcGxpY2FibGUoZSk/MDooZT1lLmV2ZXJ5KGZ1bmN0aW9uKGUpe3JldHVybiBvLmZpZWxkVmFsdWVDb25kaXRpb24oZSx0KX0pLHRoaXMuY2FsY3VsYXRlRmllbGRWYWx1ZUZyb21CaXQoZSx0KSl9LF9yLnByb3RvdHlwZS5jYWxjdWxhdGVTaW5nbGVGaWVsZFZhbHVlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUmJnRoaXMuaXNWYWxpZEdyb3VwKGUpPyhlPXRoaXMuZmllbGRWYWx1ZUNvbmRpdGlvbihlLHQpLHRoaXMuY2FsY3VsYXRlRmllbGRWYWx1ZUZyb21CaXQoZSx0KSk6MH0sX3IucHJvdG90eXBlLmlzVmFsaWRHcm91cD1mdW5jdGlvbihlKXtlPWU/RC5nZXRHcm91cEJ5SWQoZSk6bnVsbDtyZXR1cm4hIWUmJmIuaXNWYWxpZENvbnNlbnROb3RpY2VHcm91cChlLEwuSXNJYWJFbmFibGVkKX0sX3IucHJvdG90eXBlLmNhbGN1bGF0ZUZpZWxkVmFsdWVGcm9tQml0PWZ1bmN0aW9uKGUsdCl7dD10P2U/MTowOmU/MjoxO3JldHVybiB0fSxfci5wcm90b3R5cGUuaXNOb3RBcHBsaWNhYmxlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIWUuc29tZShmdW5jdGlvbihlKXtyZXR1cm4gQm9vbGVhbihlKSYmdC5pc1ZhbGlkR3JvdXAoZSl9KX0sX3IucHJvdG90eXBlLmZpZWxkVmFsdWVDb25kaXRpb249ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD9Cb29sZWFuKGUpOmtyLmlzQ2F0ZWdvcnlBY3RpdmUoZSl9O3ZhciBMcj1fcjtmdW5jdGlvbiBfcigpe314KEJyLEVyPUxyKSxCci5wcm90b3R5cGUuZ2V0U2VjdGlvbkZpZWxkc1ZhbHVlcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldEZpZWxkc1ZhbHVlcyhubyxybyxpbyxzbywhMCl9O3ZhciBFcixPcixEcixWcix3cj1CcjtmdW5jdGlvbiBCcigpe3JldHVybiBudWxsIT09RXImJkVyLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpc30ocD1Pcj1Pcnx8e30pLlNhbGVPcHRPdXQ9IlNhbGVPcHRPdXRDSUQiLHAuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50cz0iS25vd25DaGlsZFNlbGxQSUNJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0NJRCB8fCBLbm93bkNoaWxkU2hhcmVQSUNJRCB8fCBLbm93bkNoaWxkU2VsbEFnZTE2VG8xOENJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0FnZTE2VG8xOENJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0JlbG93QWdlMTNDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NCZXR3ZWVuQWdlMTNUbzE2Q0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQmV0d2VlbkFnZTE2VG8xOENJRCB8fCBLbm93bkNoaWxkU2VsbEFnZTE2VG8xN0NJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0FnZTE2VG8xN0NJRCIscC5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0PSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIiwocD1Ecj1Ecnx8e30pLlNoYXJpbmdOb3RpY2U9IlNhbGVPcHRPdXRDSUQgfHwgVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIscC5TYWxlT3B0T3V0Tm90aWNlPSJTYWxlT3B0T3V0Q0lEIixwLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXROb3RpY2U9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLChwPVZyPVZyfHx7fSkuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcxPSJSYWNlQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMj0iUmVsaWdpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmczPSJIZWFsdGhDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc0PSJTZXh1YWxPcmllbnRhdGlvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzU9IkltbWlncmF0aW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNj0iR2VuZXRpY0NJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzc9IkJpb21ldHJpY0NJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzg9Ikdlb2xvY2F0aW9uQ0lEIix4KEhyLE5yPUxyKSxIci5wcm90b3R5cGUuZ2V0U2VjdGlvbkZpZWxkc1ZhbHVlcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldEZpZWxkc1ZhbHVlcyhPcixEcixudWxsLFZyLCExKX07dmFyIE5yLEdyLHhyPUhyO2Z1bmN0aW9uIEhyKCl7cmV0dXJuIG51bGwhPT1OciYmTnIuYXBwbHkodGhpcyxhcmd1bWVudHMpfHx0aGlzfShwPUdyPUdyfHx7fSkuVmVyc2lvbj0idmVyc2lvbiIscC5DbXBJZD0iY21wSWQiLHAuQ21wVmVyc2lvbj0iY21wVmVyc2lvbiIscC5Db25zZW50U2NyZWVuPSJjb25zZW50U2NyZWVuIixwLkNvbnNlbnRMYW5ndWFnZT0iY29uc2VudExhbmd1YWdlIixwLlZlbmRvckxpc3RWZXJzaW9uPSJ2ZW5kb3JMaXN0VmVyc2lvbiIscC5Qb2xpY3lWZXJzaW9uPSJwb2xpY3lWZXJzaW9uIixwLklzU2VydmljZVNwZWNpZmljPSJpc1NlcnZpY2VTcGVjaWZpYyIscC5Vc2VOb25TdGFuZGFyZFN0YWNrcz0idXNlTm9uU3RhbmRhcmRUZXh0cyIscC5QdXJwb3NlT25lVHJlYXRtZW50PSJwdXJwb3NlT25lVHJlYXRtZW50IixwLlB1Ymxpc2hlckNvdW50cnlDb2RlPSJwdWJsaXNoZXJDb3VudHJ5Q29kZSIscC5OdW1DdXN0b21QdXJwb3Nlcz0ibnVtQ3VzdG9tUHVycG9zZXMiLHAuVmVuZG9yc0FsbG93ZWRTZWdtZW50VHlwZT0iVmVuZG9yc0FsbG93ZWRTZWdtZW50VHlwZSIscC5WZW5kb3JzRGlzY2xvc2VkU2VnbWVudFR5cGU9IlZlbmRvcnNEaXNjbG9zZWRTZWdtZW50VHlwZSIscC5QdWJsaXNoZXJQdXJwb3Nlc1NlZ21lbnRUeXBlPSJQdWJsaXNoZXJQdXJwb3Nlc1NlZ21lbnRUeXBlIixqci5wcm90b3R5cGUuZ2V0U2VjdGlvbkZpZWxkc1ZhbHVlcz1mdW5jdGlvbigpe2Zvcih2YXIgZT17fSx0PTAsbz1PYmplY3Qua2V5cyhHcik7dDxvLmxlbmd0aDt0Kyspe3ZhciBuPW9bdF0scj1HcltuXTtsLnRjTW9kZWwmJmwudGNNb2RlbFtyXSYmKGVbbl09bC50Y01vZGVsW3JdKX1lLkNvbnNlbnRMYW5ndWFnZT1udWxsPT0oaT1lLkNvbnNlbnRMYW5ndWFnZSk/dm9pZCAwOmkudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpO3ZhciBpPXRoaXMuc2V0UHVycG9zZXNEYXRhKCk7cmV0dXJuIFIoUih7fSxlKSxpKX0sanIucHJvdG90eXBlLnNldFB1cnBvc2VzRGF0YT1mdW5jdGlvbigpe3ZhciBlPXt9LHQ9bC5vbmVUcnVzdElBQkNvbnNlbnQsbz10aGlzLmdldENvbnNlbnRWYWx1ZXNGcm9tUHVycG9zZSh0LnB1cnBvc2UpLG89KGUuUHVycG9zZUNvbnNlbnRzPW8sZS5QdWJsaXNoZXJDb25zZW50cz1vLGIubGVnSW50U2V0dGluZ3MuUEFsbG93TEk/dGhpcy5nZXRDb25zZW50VmFsdWVzRnJvbVB1cnBvc2UodC5sZWdpbWF0ZUludGVyZXN0KTpbXSk7cmV0dXJuIGUuUHVycG9zZUxlZ2l0aW1hdGVJbnRlcmVzdHM9byxlLlB1Ymxpc2hlckxlZ2l0aW1hdGVJbnRlcmVzdHM9byxlLlZlbmRvckNvbnNlbnRzPXRoaXMuc3luY1ZlbmRvckNvbnNlbnQobC50Y01vZGVsLnZlbmRvckNvbnNlbnRzKSxiLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJJiYhby5sZW5ndGgmJih0LmxlZ0ludFZlbmRvcnM9W10pLGUuVmVuZG9yTGVnaXRpbWF0ZUludGVyZXN0cz10aGlzLmdldENvbnNlbnRWYWx1ZXNGcm9tUHVycG9zZShQLmRpc3RpbmN0QXJyYXkodC5sZWdJbnRWZW5kb3JzKSwhMCwhMCksZS5TcGVjaWFsRmVhdHVyZU9wdGlucz10aGlzLmdldENvbnNlbnRWYWx1ZXNGcm9tUHVycG9zZSh0LnNwZWNpYWxGZWF0dXJlcyksZX0sanIucHJvdG90eXBlLnN5bmNWZW5kb3JDb25zZW50PWZ1bmN0aW9uKGUpe3ZhciBlPWUuY2xvbmUoKSxvPVtdO3JldHVybiBlLmZvckVhY2goZnVuY3Rpb24oZSx0KXtsLnZlbmRvcnNTZXR0aW5nW3RdJiZsLnZlbmRvcnNTZXR0aW5nW3RdLmNvbnNlbnR8fCFlfHxvLnB1c2godCl9KSxlLnVuc2V0KG8pLEFycmF5LmZyb20oZS52YWx1ZXMoKSl9LGpyLnByb3RvdHlwZS5nZXRDb25zZW50VmFsdWVzRnJvbVB1cnBvc2U9ZnVuY3Rpb24oZSx0LG8pe3ZhciBuPSh0PXZvaWQgMD09PXQ/ITE6dCk/MDoxO3JldHVybihvPXZvaWQgMD09PW8/ITE6bykmJihlPWUuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiJ0cnVlIj09PWUuc3BsaXQoIjoiKVsxXX0pKSx0P2UubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBwYXJzZUludChlLnNwbGl0KCI6Iilbbl0pfSk6ZS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuInRydWUiPT09ZS5zcGxpdCgiOiIpW25dfSl9O3ZhciBScixGcixNcixVcixxcj1qcjtmdW5jdGlvbiBqcigpe30ocD1Scj1Scnx8e30pLlNhbGVPcHRPdXQ9IlNhbGVPcHRPdXRDSUQiLHAuU2hhcmluZ09wdE91dD0iU2hhcmluZ09wdE91dENJRCIscC5QZXJzb25hbERhdGFDb25zZW50cz0iUGVyc29uYWxEYXRhQ0lEIixwLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXQ9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLChwPUZyPUZyfHx7fSkuU2hhcmluZ05vdGljZT0iU2hhcmluZ09wdE91dENJRCIscC5TYWxlT3B0T3V0Tm90aWNlPSJTYWxlT3B0T3V0Q0lEIixwLlNoYXJpbmdPcHRPdXROb3RpY2U9IlNoYXJpbmdPcHRPdXRDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmdPcHRPdXROb3RpY2U9IlJhY2VDSUQgfHwgUmVsaWdpb25DSUQgfHwgSGVhbHRoQ0lEIHx8IFNleHVhbE9yaWVudGF0aW9uQ0lEIHx8IEltbWlncmF0aW9uQ0lEIHx8IEdlbmV0aWNDSUQgfHwgQmlvbWV0cmljQ0lEIHx8IEdlb2xvY2F0aW9uQ0lEIHx8IFNlbnNpdGl2ZVBJQ0lEIHx8IFNlbnNpdGl2ZVNJQ0lEIHx8IFVuaW9uTWVtYmVyc2hpcENJRCB8fCBDb21tdW5pY2F0aW9uQ0lEIHx8IENvbnN1bWVySGVhbHRoQ0lEIHx8IENyaW1lVmljdGltQ0lEIHx8IE5hdGlvbmFsT3JpZ2luQ0lEIHx8IFRyYW5zZ2VuZGVyQ0lEIixwLlNlbnNpdGl2ZURhdGFMaW1pdFVzZU5vdGljZT0iUmFjZUNJRCB8fCBSZWxpZ2lvbkNJRCB8fCBIZWFsdGhDSUQgfHwgU2V4dWFsT3JpZW50YXRpb25DSUQgfHwgSW1taWdyYXRpb25DSUQgfHwgR2VuZXRpY0NJRCB8fCBCaW9tZXRyaWNDSUQgfHwgR2VvbG9jYXRpb25DSUQgfHwgU2Vuc2l0aXZlUElDSUQgfHwgU2Vuc2l0aXZlU0lDSUQgfHwgVW5pb25NZW1iZXJzaGlwQ0lEIHx8IENvbW11bmljYXRpb25DSUQgfHwgQ29uc3VtZXJIZWFsdGhDSUQgfHwgQ3JpbWVWaWN0aW1DSUQgfHwgTmF0aW9uYWxPcmlnaW5DSUQgfHwgVHJhbnNnZW5kZXJDSUQiLHAuVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dE5vdGljZT0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKHA9TXI9TXJ8fHt9KS5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzMT0iUERDQWJvdmVBZ2VDSUQiLHAuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czI9IlBEQ0JlbG93QWdlQ0lEIixwLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHMzPSJLbm93bkNoaWxkUHJvY2Vzc0FnZTE2VG8xN0NJRCIsKHA9VXI9VXJ8fHt9KS5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzE9IlJhY2VDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcyPSJSZWxpZ2lvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzM9IkhlYWx0aENJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzQ9IlNleHVhbE9yaWVudGF0aW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNT0iSW1taWdyYXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc2PSJHZW5ldGljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNz0iQmlvbWV0cmljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nOD0iR2VvbG9jYXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc5PSJTZW5zaXRpdmVQSUNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzEwPSJTZW5zaXRpdmVTSUNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzExPSJVbmlvbk1lbWJlcnNoaXBDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcxMj0iQ29tbXVuaWNhdGlvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzEzPSJDb25zdW1lckhlYWx0aENJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzE0PSJDcmltZVZpY3RpbUNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzE1PSJOYXRpb25hbE9yaWdpbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzE2PSJUcmFuc2dlbmRlckNJRCIseChYcixLcj1MciksWHIucHJvdG90eXBlLmdldFNlY3Rpb25GaWVsZHNWYWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXRGaWVsZHNWYWx1ZXMoUnIsRnIsTXIsVXIsITApfTt2YXIgS3IsenIsV3IsWXIsSnI9WHI7ZnVuY3Rpb24gWHIoKXtyZXR1cm4gbnVsbCE9PUtyJiZLci5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9KHA9enI9enJ8fHt9KS5TYWxlT3B0T3V0PSJTYWxlT3B0T3V0Q0lEIixwLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXQ9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLHAuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50cz0iS25vd25DaGlsZFNlbGxQSUNJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0NJRCB8fCBLbm93bkNoaWxkU2hhcmVQSUNJRCB8fCBLbm93bkNoaWxkU2VsbEFnZTE2VG8xOENJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0FnZTE2VG8xOENJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0JlbG93QWdlMTNDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NCZXR3ZWVuQWdlMTNUbzE2Q0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQmV0d2VlbkFnZTE2VG8xOENJRCB8fCBLbm93bkNoaWxkU2VsbEFnZTE2VG8xN0NJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0FnZTE2VG8xN0NJRCIsKHA9V3I9V3J8fHt9KS5TaGFyaW5nTm90aWNlPSJTYWxlT3B0T3V0Q0lEIHx8IFRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLHAuU2FsZU9wdE91dE5vdGljZT0iU2FsZU9wdE91dENJRCIscC5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Tm90aWNlPSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIiwocD1Zcj1Zcnx8e30pLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMT0iUmFjZUNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzI9IlJlbGlnaW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMz0iSGVhbHRoQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nND0iU2V4dWFsT3JpZW50YXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc1PSJJbW1pZ3JhdGlvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzY9IkdlbmV0aWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc3PSJCaW9tZXRyaWNDSUQiLHgobmksUXI9THIpLG5pLnByb3RvdHlwZS5nZXRTZWN0aW9uRmllbGRzVmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0RmllbGRzVmFsdWVzKHpyLFdyLG51bGwsWXIsITApfTt2YXIgUXIsWnIsJHIsZWksdGksb2k9bmk7ZnVuY3Rpb24gbmkoKXtyZXR1cm4gbnVsbCE9PVFyJiZRci5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9KHA9WnI9WnJ8fHt9KS5TYWxlT3B0T3V0PSJTYWxlT3B0T3V0Q0lEIixwLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXQ9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLChwPSRyPSRyfHx7fSkuU2hhcmluZ05vdGljZT0iU2FsZU9wdE91dENJRCB8fCBUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIixwLlNhbGVPcHRPdXROb3RpY2U9IlNhbGVPcHRPdXRDSUQiLHAuVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dE5vdGljZT0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKHA9ZWk9ZWl8fHt9KS5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzMT0iS25vd25DaGlsZFByb2Nlc3NDSUQiLHAuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czI9IlBEQ0Fib3ZlQWdlQ0lEIixwLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHMzPSJQRENCZWxvd0FnZUNJRCIsKHA9dGk9dGl8fHt9KS5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzE9IlJhY2VDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcyPSJSZWxpZ2lvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzM9IkhlYWx0aENJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzQ9IlNleHVhbE9yaWVudGF0aW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNT0iSW1taWdyYXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc2PSJHZW5ldGljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNz0iQmlvbWV0cmljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nOD0iR2VvbG9jYXRpb25DSUQiLHgoZGkscmk9THIpLGRpLnByb3RvdHlwZS5nZXRTZWN0aW9uRmllbGRzVmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0RmllbGRzVmFsdWVzKFpyLCRyLGVpLHRpLCEwKX07dmFyIHJpLGlpLHNpLGFpLGxpLGNpPWRpO2Z1bmN0aW9uIGRpKCl7cmV0dXJuIG51bGwhPT1yaSYmcmkuYXBwbHkodGhpcyxhcmd1bWVudHMpfHx0aGlzfShwPWlpPWlpfHx7fSkuU2FsZU9wdE91dD0iU2FsZU9wdE91dENJRCIscC5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0PSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIixwLkFkZGl0aW9uYWxEYXRhUHJvY2Vzc2luZ0NvbnNlbnQ9IlBlcnNvbmFsRGF0YUNJRCIsKHA9c2k9c2l8fHt9KS5TaGFyaW5nTm90aWNlPSJTYWxlT3B0T3V0Q0lEIHx8IFRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLHAuU2FsZU9wdE91dE5vdGljZT0iU2FsZU9wdE91dENJRCIscC5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Tm90aWNlPSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIiwocD1haT1haXx8e30pLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHMxPSJLbm93bkNoaWxkUHJvY2Vzc0NJRCIscC5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzMj0iUERDQWJvdmVBZ2VDSUQiLHAuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czM9IlBEQ0JlbG93QWdlQ0lEIiwocD1saT1saXx8e30pLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMT0iUmFjZUNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzI9IlJlbGlnaW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMz0iSGVhbHRoQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nND0iU2V4dWFsT3JpZW50YXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc1PSJJbW1pZ3JhdGlvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzY9IkdlbmV0aWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc3PSJCaW9tZXRyaWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc4PSJHZW9sb2NhdGlvbkNJRCIseCh5aSx1aT1McikseWkucHJvdG90eXBlLmdldFNlY3Rpb25GaWVsZHNWYWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXRGaWVsZHNWYWx1ZXMoaWksc2ksYWksbGksITApfTt2YXIgdWkscGksQ2ksZ2ksaGk9eWk7ZnVuY3Rpb24geWkoKXtyZXR1cm4gbnVsbCE9PXVpJiZ1aS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9KHA9cGk9cGl8fHt9KS5TYWxlT3B0T3V0PSJTYWxlT3B0T3V0Q0lEIixwLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXQ9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLHAuQWRkaXRpb25hbERhdGFQcm9jZXNzaW5nQ29uc2VudD0iUGVyc29uYWxEYXRhQ0lEIixwLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHM9Iktub3duQ2hpbGRTZWxsUElDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NDSUQgfHwgS25vd25DaGlsZFNoYXJlUElDSUQgfHwgS25vd25DaGlsZFNlbGxBZ2UxNlRvMThDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NBZ2UxNlRvMThDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NCZWxvd0FnZTEzQ0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQmV0d2VlbkFnZTEzVG8xNkNJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0JldHdlZW5BZ2UxNlRvMThDSUQgfHwgS25vd25DaGlsZFNlbGxBZ2UxNlRvMTdDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NBZ2UxNlRvMTdDSUQiLChwPUNpPUNpfHx7fSkuUHJvY2Vzc2luZ05vdGljZT0iUGVyc29uYWxEYXRhQ0lEIixwLlNhbGVPcHRPdXROb3RpY2U9IlNhbGVPcHRPdXRDSUQiLHAuVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dE5vdGljZT0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKHA9Z2k9Z2l8fHt9KS5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzE9IlJhY2VDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcyPSJSZWxpZ2lvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzM9IkhlYWx0aENJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzQ9IlNleHVhbE9yaWVudGF0aW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNT0iSW1taWdyYXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc2PSJHZW5ldGljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNz0iQmlvbWV0cmljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nOD0iR2VvbG9jYXRpb25DSUQiLHgoQWksZmk9THIpLEFpLnByb3RvdHlwZS5nZXRTZWN0aW9uRmllbGRzVmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0RmllbGRzVmFsdWVzKHBpLENpLG51bGwsZ2ksITApfTt2YXIgZmksU2ksbWksdmksVGksUGk9QWk7ZnVuY3Rpb24gQWkoKXtyZXR1cm4gbnVsbCE9PWZpJiZmaS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9KHA9U2k9U2l8fHt9KS5TYWxlT3B0T3V0PSJTYWxlT3B0T3V0Q0lEIixwLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXQ9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLChOPW1pPW1pfHx7fSkuUHJvY2Vzc2luZ05vdGljZT1wLkFkZGl0aW9uYWxEYXRhUHJvY2Vzc2luZ0NvbnNlbnQ9IlBlcnNvbmFsRGF0YUNJRCIsTi5TYWxlT3B0T3V0Tm90aWNlPSJTYWxlT3B0T3V0Q0lEIixOLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXROb3RpY2U9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLChwPXZpPXZpfHx7fSkuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czE9Iktub3duQ2hpbGRQcm9jZXNzQmVsb3dBZ2UxM0NJRCIscC5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzMj0iS25vd25DaGlsZFByb2Nlc3NCZXR3ZWVuQWdlMTNUbzE2Q0lEIixwLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHMzPSJLbm93bkNoaWxkUHJvY2Vzc0JldHdlZW5BZ2UxNlRvMThDSUQiLChOPVRpPVRpfHx7fSkuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcxPSJSYWNlQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMj0iUmVsaWdpb25DSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmczPSJIZWFsdGhDSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc0PSJTZXh1YWxPcmllbnRhdGlvbkNJRCIsTi5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzU9IkltbWlncmF0aW9uQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNj0iR2VuZXRpY0NJRCIsTi5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzc9IkJpb21ldHJpY0NJRCIsTi5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzg9Ikdlb2xvY2F0aW9uQ0lEIix4KE9pLGtpPUxyKSxPaS5wcm90b3R5cGUuZ2V0U2VjdGlvbkZpZWxkc1ZhbHVlcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldEZpZWxkc1ZhbHVlcyhTaSxtaSx2aSxUaSwhMSl9O3ZhciBraSxJaSxiaSxMaSxfaSxFaT1PaTtmdW5jdGlvbiBPaSgpe3JldHVybiBudWxsIT09a2kmJmtpLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpc30ocD1JaT1JaXx8e30pLlNhbGVPcHRPdXQ9IlNhbGVPcHRPdXRDSUQiLHAuVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dD0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKE49Ymk9Yml8fHt9KS5Qcm9jZXNzaW5nTm90aWNlPXAuQWRkaXRpb25hbERhdGFQcm9jZXNzaW5nQ29uc2VudD0iUGVyc29uYWxEYXRhQ0lEIixOLlNhbGVPcHRPdXROb3RpY2U9IlNhbGVPcHRPdXRDSUQiLE4uVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dE5vdGljZT0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKHA9TGk9TGl8fHt9KS5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzMT0iS25vd25DaGlsZFByb2Nlc3NDSUQiLHAuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czI9Iktub3duQ2hpbGRTZWxsUElDSUQiLHAuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czM9Iktub3duQ2hpbGRTaGFyZVBJQ0lEIixwLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHM0PSJLbm93bkNoaWxkU2VsbEFnZTE2VG8xOENJRCIscC5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzNT0iS25vd25DaGlsZFByb2Nlc3NBZ2UxNlRvMThDSUQiLChOPV9pPV9pfHx7fSkuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcxPSJSYWNlQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMj0iUmVsaWdpb25DSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmczPSJIZWFsdGhDSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc0PSJTZXh1YWxPcmllbnRhdGlvbkNJRCIsTi5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzU9IkltbWlncmF0aW9uQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNj0iR2VuZXRpY0NJRCIsTi5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzc9IkJpb21ldHJpY0NJRCIsTi5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzg9Ikdlb2xvY2F0aW9uQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nOT0iVHJhbnNnZW5kZXJDSUQiLHgoR2ksRGk9THIpLEdpLnByb3RvdHlwZS5nZXRTZWN0aW9uRmllbGRzVmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0RmllbGRzVmFsdWVzKElpLGJpLExpLF9pLCEwKX07dmFyIERpLFZpLHdpLEJpLE5pPUdpO2Z1bmN0aW9uIEdpKCl7cmV0dXJuIG51bGwhPT1EaSYmRGkuYXBwbHkodGhpcyxhcmd1bWVudHMpfHx0aGlzfShwPVZpPVZpfHx7fSkuU2FsZU9wdE91dD0iU2FsZU9wdE91dENJRCIscC5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0PSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIixwLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHM9Iktub3duQ2hpbGRTZWxsUElDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NDSUQgfHwgS25vd25DaGlsZFNoYXJlUElDSUQgfHwgS25vd25DaGlsZFNlbGxBZ2UxNlRvMThDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NBZ2UxNlRvMThDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NCZWxvd0FnZTEzQ0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQmV0d2VlbkFnZTEzVG8xNkNJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0JldHdlZW5BZ2UxNlRvMThDSUQgfHwgS25vd25DaGlsZFNlbGxBZ2UxNlRvMTdDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NBZ2UxNlRvMTdDSUQiLChOPXdpPXdpfHx7fSkuUHJvY2Vzc2luZ05vdGljZT0iQWRkaXRpb25hbERhdGFDSUQiLE4uU2FsZU9wdE91dE5vdGljZT0iU2FsZU9wdE91dENJRCIsTi5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Tm90aWNlPSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIixOLlNlbnNpdGl2ZURhdGFPcHRPdXROb3RpY2U9IlJhY2VDSUQgfHwgUmVsaWdpb25DSUQgfHwgSGVhbHRoQ0lEIHx8IFNleHVhbE9yaWVudGF0aW9uQ0lEIHx8IEltbWlncmF0aW9uQ0lEIHx8IEdlbmV0aWNDSUQgfHwgQmlvbWV0cmljQ0lEIHx8IEdlb2xvY2F0aW9uQ0lEIiwocD1CaT1CaXx8e30pLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMT0iUmFjZUNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzI9IlJlbGlnaW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMz0iSGVhbHRoQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nND0iU2V4dWFsT3JpZW50YXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc1PSJJbW1pZ3JhdGlvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzY9IkdlbmV0aWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc3PSJCaW9tZXRyaWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc4PSJHZW9sb2NhdGlvbkNJRCIseChVaSx4aT1MciksVWkucHJvdG90eXBlLmdldFNlY3Rpb25GaWVsZHNWYWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXRGaWVsZHNWYWx1ZXMoVmksd2ksbnVsbCxCaSwhMCl9O3ZhciB4aSxIaSxSaSxGaSxNaT1VaTtmdW5jdGlvbiBVaSgpe3JldHVybiBudWxsIT09eGkmJnhpLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpc30oTj1IaT1IaXx8e30pLlNhbGVPcHRPdXQ9IlNhbGVPcHRPdXRDSUQiLE4uVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dD0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsTi5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzPSJLbm93bkNoaWxkU2VsbFBJQ0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQ0lEIHx8IEtub3duQ2hpbGRTaGFyZVBJQ0lEIHx8IEtub3duQ2hpbGRTZWxsQWdlMTZUbzE4Q0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQWdlMTZUbzE4Q0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQmVsb3dBZ2UxM0NJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0JldHdlZW5BZ2UxM1RvMTZDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NCZXR3ZWVuQWdlMTZUbzE4Q0lEIHx8IEtub3duQ2hpbGRTZWxsQWdlMTZUbzE3Q0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQWdlMTZUbzE3Q0lEIiwocD1SaT1SaXx8e30pLlByb2Nlc3NpbmdOb3RpY2U9Ti5BZGRpdGlvbmFsRGF0YVByb2Nlc3NpbmdDb25zZW50PSJQZXJzb25hbERhdGFDSUQiLHAuU2FsZU9wdE91dE5vdGljZT0iU2FsZU9wdE91dENJRCIscC5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Tm90aWNlPSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIiwoTj1GaT1GaXx8e30pLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMT0iUmFjZUNJRCIsTi5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzI9IlJlbGlnaW9uQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMz0iSGVhbHRoQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nND0iU2V4dWFsT3JpZW50YXRpb25DSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc1PSJJbW1pZ3JhdGlvbkNJRCIsTi5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzY9IkdlbmV0aWNDSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc3PSJCaW9tZXRyaWNDSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc4PSJHZW9sb2NhdGlvbkNJRCIseChZaSxxaT1MciksWWkucHJvdG90eXBlLmdldFNlY3Rpb25GaWVsZHNWYWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXRGaWVsZHNWYWx1ZXMoSGksUmksbnVsbCxGaSwhMCl9O3ZhciBxaSxqaSxLaSx6aSxXaT1ZaTtmdW5jdGlvbiBZaSgpe3JldHVybiBudWxsIT09cWkmJnFpLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpc30ocD1qaT1qaXx8e30pLlNhbGVPcHRPdXQ9IlNhbGVPcHRPdXRDSUQiLHAuVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dD0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIscC5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzPSJLbm93bkNoaWxkU2VsbFBJQ0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQ0lEIHx8IEtub3duQ2hpbGRTaGFyZVBJQ0lEIHx8IEtub3duQ2hpbGRTZWxsQWdlMTZUbzE4Q0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQWdlMTZUbzE4Q0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQmVsb3dBZ2UxM0NJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0JldHdlZW5BZ2UxM1RvMTZDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NCZXR3ZWVuQWdlMTZUbzE4Q0lEIHx8IEtub3duQ2hpbGRTZWxsQWdlMTZUbzE3Q0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQWdlMTZUbzE3Q0lEIiwoTj1LaT1LaXx8e30pLlByb2Nlc3NpbmdOb3RpY2U9cC5BZGRpdGlvbmFsRGF0YVByb2Nlc3NpbmdDb25zZW50PSJQZXJzb25hbERhdGFDSUQiLE4uU2FsZU9wdE91dE5vdGljZT0iU2FsZU9wdE91dENJRCIsTi5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Tm90aWNlPSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIiwocD16aT16aXx8e30pLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMT0iUmFjZUNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzI9IlJlbGlnaW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMz0iSGVhbHRoQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nND0iU2V4dWFsT3JpZW50YXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc1PSJJbW1pZ3JhdGlvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzY9IkdlbmV0aWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc3PSJCaW9tZXRyaWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc4PSJHZW9sb2NhdGlvbkNJRCIseCh0cyxKaT1MciksdHMucHJvdG90eXBlLmdldFNlY3Rpb25GaWVsZHNWYWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXRGaWVsZHNWYWx1ZXMoamksS2ksbnVsbCx6aSwhMCl9O3ZhciBKaSxYaSxRaSxaaSwkaSxlcz10cztmdW5jdGlvbiB0cygpe3JldHVybiBudWxsIT09SmkmJkppLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpc30oTj1YaT1YaXx8e30pLlNhbGVPcHRPdXQ9IlNhbGVPcHRPdXRDSUQiLE4uVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dD0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKHA9UWk9UWl8fHt9KS5Qcm9jZXNzaW5nTm90aWNlPU4uQWRkaXRpb25hbERhdGFQcm9jZXNzaW5nQ29uc2VudD0iUGVyc29uYWxEYXRhQ0lEIixwLlNhbGVPcHRPdXROb3RpY2U9IlNhbGVPcHRPdXRDSUQiLHAuVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dE5vdGljZT0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKE49Wmk9Wml8fHt9KS5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzMT0iS25vd25DaGlsZFByb2Nlc3NDSUQiLE4uS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czI9IlBEQ0Fib3ZlQWdlQ0lEIixOLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHMzPSJQRENCZWxvd0FnZUNJRCIsTi5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzND0iS25vd25DaGlsZFNlbGxBZ2UxNlRvMTdDSUQiLE4uS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czU9Iktub3duQ2hpbGRQcm9jZXNzQWdlMTZUbzE3Q0lEIiwocD0kaT0kaXx8e30pLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMT0iUmFjZUNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzI9IlJlbGlnaW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMz0iSGVhbHRoQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nND0iU2V4dWFsT3JpZW50YXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc1PSJJbW1pZ3JhdGlvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzY9IkdlbmV0aWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc3PSJCaW9tZXRyaWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc4PSJHZW9sb2NhdGlvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzk9IlRyYW5zZ2VuZGVyQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMTA9IlNlbnNpdGl2ZVNJQ0lEIix4KGxzLG9zPUxyKSxscy5wcm90b3R5cGUuZ2V0U2VjdGlvbkZpZWxkc1ZhbHVlcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldEZpZWxkc1ZhbHVlcyhYaSxRaSxaaSwkaSwhMCl9O3ZhciBvcyxucyxycyxpcyxzcyxhcz1scztmdW5jdGlvbiBscygpe3JldHVybiBudWxsIT09b3MmJm9zLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpc30oTj1ucz1uc3x8e30pLlNhbGVPcHRPdXQ9IlNhbGVPcHRPdXRDSUQiLE4uVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dD0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKHA9cnM9cnN8fHt9KS5Qcm9jZXNzaW5nTm90aWNlPU4uQWRkaXRpb25hbERhdGFQcm9jZXNzaW5nQ29uc2VudD0iUGVyc29uYWxEYXRhQ0lEIixwLlNhbGVPcHRPdXROb3RpY2U9IlNhbGVPcHRPdXRDSUQiLHAuVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dE5vdGljZT0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKE49aXM9aXN8fHt9KS5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzMT0iS25vd25DaGlsZFByb2Nlc3NDSUQiLE4uS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czI9IlBEQ0Fib3ZlQWdlQ0lEIixOLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHMzPSJQRENCZWxvd0FnZUNJRCIsKHA9c3M9c3N8fHt9KS5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzE9IlJhY2VDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcyPSJSZWxpZ2lvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzM9IkhlYWx0aENJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzQ9IlNleHVhbE9yaWVudGF0aW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNT0iSW1taWdyYXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc2PSJHZW5ldGljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNz0iQmlvbWV0cmljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nOD0iR2VvbG9jYXRpb25DSUQiLHgoZ3MsY3M9THIpLGdzLnByb3RvdHlwZS5nZXRTZWN0aW9uRmllbGRzVmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0RmllbGRzVmFsdWVzKG5zLHJzLGlzLHNzLCEwKX07dmFyIGNzLGRzLHVzLHBzLENzPWdzO2Z1bmN0aW9uIGdzKCl7cmV0dXJuIG51bGwhPT1jcyYmY3MuYXBwbHkodGhpcyxhcmd1bWVudHMpfHx0aGlzfShOPWRzPWRzfHx7fSkuU2FsZU9wdE91dD0iU2FsZU9wdE91dENJRCIsTi5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0PSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIixOLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHM9Iktub3duQ2hpbGRTZWxsUElDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NDSUQgfHwgS25vd25DaGlsZFNoYXJlUElDSUQgfHwgS25vd25DaGlsZFNlbGxBZ2UxNlRvMThDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NBZ2UxNlRvMThDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NCZWxvd0FnZTEzQ0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQmV0d2VlbkFnZTEzVG8xNkNJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0JldHdlZW5BZ2UxNlRvMThDSUQgfHwgS25vd25DaGlsZFNlbGxBZ2UxNlRvMTdDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NBZ2UxNlRvMTdDSUQiLChwPXVzPXVzfHx7fSkuU2hhcmluZ05vdGljZT0iU2FsZU9wdE91dENJRCB8fCBUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIixwLlNhbGVPcHRPdXROb3RpY2U9IlNhbGVPcHRPdXRDSUQiLHAuVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dE5vdGljZT0iVGFyZ2V0ZWRBZHZlcnRpc2luZ09wdE91dENJRCIsKE49cHM9cHN8fHt9KS5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzE9IlJhY2VDSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcyPSJSZWxpZ2lvbkNJRCIsTi5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzM9IlNleHVhbE9yaWVudGF0aW9uQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nND0iSW1taWdyYXRpb25DSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc1PSJIZWFsdGhDSUQiLE4uU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc2PSJHZW5ldGljQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNz0iQmlvbWV0cmljQ0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nOD0iR2VvbG9jYXRpb25DSUQiLHgodnMsaHM9THIpLHZzLnByb3RvdHlwZS5nZXRTZWN0aW9uRmllbGRzVmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0RmllbGRzVmFsdWVzKGRzLHVzLG51bGwscHMsITEpfTt2YXIgaHMseXMsZnMsU3MsbXM9dnM7ZnVuY3Rpb24gdnMoKXtyZXR1cm4gbnVsbCE9PWhzJiZocy5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9KHA9eXM9eXN8fHt9KS5TYWxlT3B0T3V0PSJTYWxlT3B0T3V0Q0lEIixwLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXQ9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLHAuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50cz0iS25vd25DaGlsZFNlbGxQSUNJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0NJRCB8fCBLbm93bkNoaWxkU2hhcmVQSUNJRCB8fCBLbm93bkNoaWxkU2VsbEFnZTE2VG8xOENJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0FnZTE2VG8xOENJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0JlbG93QWdlMTNDSUQgfHwgS25vd25DaGlsZFByb2Nlc3NCZXR3ZWVuQWdlMTNUbzE2Q0lEIHx8IEtub3duQ2hpbGRQcm9jZXNzQmV0d2VlbkFnZTE2VG8xOENJRCB8fCBLbm93bkNoaWxkU2VsbEFnZTE2VG8xN0NJRCB8fCBLbm93bkNoaWxkUHJvY2Vzc0FnZTE2VG8xN0NJRCIsKE49ZnM9ZnN8fHt9KS5TaGFyaW5nTm90aWNlPSJTYWxlT3B0T3V0Q0lEIHx8IFRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLE4uU2FsZU9wdE91dE5vdGljZT0iU2FsZU9wdE91dENJRCIsTi5UYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Tm90aWNlPSJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIixOLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nT3B0T3V0Tm90aWNlPSJSYWNlQ0lEIHx8IFJlbGlnaW9uQ0lEIHx8IFNleHVhbE9yaWVudGF0aW9uQ0lEIHx8IEltbWlncmF0aW9uQ0lEIHx8IEhlYWx0aENJRCB8fCBHZW5ldGljQ0lEIHx8IEJpb21ldHJpY0NJRCB8fCBHZW9sb2NhdGlvbkNJRCIsKHA9U3M9U3N8fHt9KS5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzE9IlJhY2VDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcyPSJSZWxpZ2lvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzM9IlNleHVhbE9yaWVudGF0aW9uQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nND0iSW1taWdyYXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc1PSJIZWFsdGhDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc2PSJHZW5ldGljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNz0iQmlvbWV0cmljQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nOD0iR2VvbG9jYXRpb25DSUQiLHgoQXMsVHM9THIpLEFzLnByb3RvdHlwZS5nZXRTZWN0aW9uRmllbGRzVmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0RmllbGRzVmFsdWVzKHlzLGZzLG51bGwsU3MsITEpfTt2YXIgVHMsUHM9QXM7ZnVuY3Rpb24gQXMoKXtyZXR1cm4gbnVsbCE9PVRzJiZUcy5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9KE49a3M9a3N8fHt9KS5TYWxlT3B0T3V0PSJTYWxlT3B0T3V0Q0lEIixOLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXQ9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLChwPUlzPUlzfHx7fSkuUHJvY2Vzc2luZ05vdGljZT1OLkFkZGl0aW9uYWxEYXRhUHJvY2Vzc2luZ0NvbnNlbnQ9IlBlcnNvbmFsRGF0YUNJRCIscC5TYWxlT3B0T3V0Tm90aWNlPSJTYWxlT3B0T3V0Q0lEIixwLlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXROb3RpY2U9IlRhcmdldGVkQWR2ZXJ0aXNpbmdPcHRPdXRDSUQiLChOPWJzPWJzfHx7fSkuS25vd25DaGlsZFNlbnNpdGl2ZURhdGFDb25zZW50czE9Iktub3duQ2hpbGRQcm9jZXNzQ0lEIixOLktub3duQ2hpbGRTZW5zaXRpdmVEYXRhQ29uc2VudHMyPSJQRENBYm92ZUFnZUNJRCIsTi5Lbm93bkNoaWxkU2Vuc2l0aXZlRGF0YUNvbnNlbnRzMz0iUERDQmVsb3dBZ2VDSUQiLChwPUxzPUxzfHx7fSkuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcxPSJSYWNlQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nMj0iUmVsaWdpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmczPSJIZWFsdGhDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc0PSJTZXh1YWxPcmllbnRhdGlvbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzU9IlRyYW5zZ2VuZGVyQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nNj0iSW1taWdyYXRpb25DSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3Npbmc3PSJOYXRpb25hbE9yaWdpbkNJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzg9IkNyaW1lVmljdGltQ0lEIixwLlNlbnNpdGl2ZURhdGFQcm9jZXNzaW5nOT0iR2VuZXRpY0NJRCIscC5TZW5zaXRpdmVEYXRhUHJvY2Vzc2luZzEwPSJCaW9tZXRyaWNDSUQiLHAuU2Vuc2l0aXZlRGF0YVByb2Nlc3NpbmcxMT0iR2VvbG9jYXRpb25DSUQiLHgoT3MsX3M9THIpLE9zLnByb3RvdHlwZS5nZXRTZWN0aW9uRmllbGRzVmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0RmllbGRzVmFsdWVzKGtzLElzLGJzLExzLCEwKX07dmFyIGtzLElzLGJzLExzLF9zLEVzPU9zO2Z1bmN0aW9uIE9zKCl7cmV0dXJuIG51bGwhPT1fcyYmX3MuYXBwbHkodGhpcyxhcmd1bWVudHMpfHx0aGlzfXdzLnByb3RvdHlwZS5pbml0R3BwQ29uc2VudD1mdW5jdGlvbigpe3RoaXMuaW5pdFRlbXBsYXRlQW5kU2VjdGlvbkluc3RhbmNlKCksdGhpcy5jbXBBcGkuc2V0QXBwbGljYWJsZVNlY3Rpb25zKHRoaXMuZ2V0QXBwbGljYWJsZVNlY3Rpb25zKHRoaXMuZ3BwVGVtcGxhdGVBcHBsaWVkKSk7dmFyIG8sbixlPXRoaXMucmVhZEdwcENvb2tpZXMoKSx0PXRoaXMuZ2V0Q3VycmVudFNlY3Rpb25OYW1lKHRoaXMuZ3BwVGVtcGxhdGVBcHBsaWVkKSxyPSExO3RoaXMuZ3BwU2VjdGlvbklkPXRoaXMuZ2V0Q3VycmVudFNlY3Rpb25JZCh0aGlzLmdwcFRlbXBsYXRlQXBwbGllZCksZSYmKE8ubmVlZFJlY29uc2VudCgpP3RoaXMuZGVsZXRlQWxsR3BwQ29va2llcygpOih0aGlzLmNtcEFwaS5zZXRHcHBTdHJpbmcoZSkscj0hMCkpLHRoaXMuY21wQXBpLnNldFN1cHBvcnRlZEFQSXMoKG89W10sbj17fSxPYmplY3Qua2V5cyhOZSkuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD17fSxlPSh0W2VdPU5lW2VdLE9iamVjdC5hc3NpZ24odCxuKSk7bj1lfSksT2JqZWN0LmtleXMoQmUpLm1hcChmdW5jdGlvbihlKXtyZXR1cm57bmFtZTplLHZhbHVlOkJlW2VdfX0pLmZvckVhY2goZnVuY3Rpb24oZSl7ZT1uW2UubmFtZV0rIjoiK2UudmFsdWU7by5wdXNoKGUpfSksby5maWx0ZXIoZnVuY3Rpb24oZSx0KXtyZXR1cm4gby5pbmRleE9mKGUpPT09dH0pKSksdGhpcy5jbXBBcGkuc2V0Q21wU3RhdHVzKG51bGw9PShlPXRoaXMuZ3BwU0RLUmVmKT92b2lkIDA6ZS5jbXBTdGF0dXMuTE9BREVEKSwodCYmIXRoaXMuY21wQXBpLmhhc1NlY3Rpb24odCl8fGIuZ3BjQnJvd3NlclZhbHVlQ2hhbmdlZHx8bC5ncnBzU3luY2VkJiYwPGwuZ3Jwc1N5bmNlZC5sZW5ndGgpJiZ0aGlzLnNldE9yVXBkYXRlR3BwU2VjdGlvblN0cmluZyh0LHIpLHdpbmRvdy5PbmVUcnVzdC5PbkNvbnNlbnRDaGFuZ2VkKHRoaXMudXBkYXRlR3BwQ29uc2VudFN0cmluZyksdGhpcy5jbXBBcGkuc2V0U2lnbmFsU3RhdHVzKG51bGw9PShlPXRoaXMuZ3BwU0RLUmVmKT92b2lkIDA6ZS5zaWduYWxTdGF0dXMuUkVBRFkpfSx3cy5wcm90b3R5cGUuaW5pdFRlbXBsYXRlQW5kU2VjdGlvbkluc3RhbmNlPWZ1bmN0aW9uKCl7dmFyIGU9Uy5mcDtlJiZlLkNvb2tpZUlBQkdQUFYyP3RoaXMuZ3BwVGVtcGxhdGVBcHBsaWVkPXRoaXMuZ2V0VGVtcGxhdGVUeXBlQnlMb2NhdGlvbigpOnRoaXMuZ3BwVGVtcGxhdGVBcHBsaWVkPXRoaXMuZ2V0R3BwVGVtcGxhdGVBcHBsaWVkKCksdGhpcy5ncHBTZWN0aW9uPXRoaXMuZ2V0U2VjdGlvbkluc3RhbmNlKHRoaXMuZ3BwVGVtcGxhdGVBcHBsaWVkKX0sd3MucHJvdG90eXBlLnNldENtcERpc3BsYXlTdGF0dXM9ZnVuY3Rpb24oZSl7dmFyIHQ7InZpc2libGUiPT09ZT90aGlzLmNtcEFwaS5zZXRDbXBEaXNwbGF5U3RhdHVzKG51bGw9PSh0PXRoaXMuZ3BwU0RLUmVmKT92b2lkIDA6dC5kaXNwbGF5U3RhdHVzLlZJU0lCTEUpOiJoaWRkZW4iPT09ZT90aGlzLmNtcEFwaS5zZXRDbXBEaXNwbGF5U3RhdHVzKG51bGw9PSh0PXRoaXMuZ3BwU0RLUmVmKT92b2lkIDA6dC5kaXNwbGF5U3RhdHVzLkhJRERFTik6ImRpc2FibGVkIj09PWUmJnRoaXMuY21wQXBpLnNldENtcERpc3BsYXlTdGF0dXMobnVsbD09KHQ9dGhpcy5ncHBTREtSZWYpP3ZvaWQgMDp0LmRpc3BsYXlTdGF0dXMuRElTQUJMRUQpfSx3cy5wcm90b3R5cGUuc2V0R3BwQ29va2llcz1mdW5jdGlvbihlLHQpe3Q/dGhpcy51cGRhdGVHcHBDb29raWVzKGUpOih0PXRoaXMuZ2V0Q29va2llc0NodW5rKGUpLGU9T2JqZWN0LmtleXModCkubGVuZ3RoLHRoaXMud3JpdGVHcHBDb29raWVzKGUsdCkpfSx3cy5wcm90b3R5cGUucmVhZEdwcENvb2tpZXM9ZnVuY3Rpb24oKXt2YXIgZT1OdW1iZXIoVC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsT2UuQ2h1bmtDb3VudFBhcmFtKXx8MCk7aWYoZTw9MSlyZXR1cm4gMD09PWU/IiI6VC5nZXRDb29raWUoeS5HUFBfQ09OU0VOVCk7Zm9yKHZhciB0PSIiLG89MTtvPD1lO28rKyl2YXIgbj1ULmdldENvb2tpZSgiIitPZS5OYW1lK28pLHQ9dC5jb25jYXQobik7cmV0dXJuIHR9LHdzLnByb3RvdHlwZS5kZWxldGVHcHBDb29raWVzPWZ1bmN0aW9uKGUsdCl7aWYoMDxlJiYoMT09PWUmJihULnNldENvb2tpZSgiIitPZS5OYW1lLCIiLDAsITApLGUrKyksZTw9dCkpZm9yKHZhciBvPWU7bzw9dDtvKyspVC5zZXRDb29raWUoIiIrT2UuTmFtZStvLCIiLDAsITApfSx3cy5wcm90b3R5cGUuZ2V0U2VjdGlvbkluc3RhbmNlPWZ1bmN0aW9uKGUpe3ZhciB0O3N3aXRjaChlKXtjYXNlIG8uQ1BSQTpjYXNlIG8uQ0NQQTp0PW5ldyB3cjticmVhaztjYXNlIG8uQ0RQQTp0PW5ldyB4cjticmVhaztjYXNlIG8uVVNOQVRJT05BTDp0PW5ldyBKcjticmVhaztjYXNlIG8uQ09MT1JBRE86dD1uZXcgb2k7YnJlYWs7Y2FzZSBvLk9SRUdPTjp0PW5ldyBFczticmVhaztjYXNlIG8uRkxPUklEQTp0PW5ldyBFaTticmVhaztjYXNlIG8uQ09OTkVDVElDVVQ6dD1uZXcgY2l9cmV0dXJuIHQ9WyJNT05UQU5BIiwiVEVYQVMiLCJERUxBV0FSRSIsIk5FQlJBU0tBIiwiSU9XQSIsIlRFTk5FU1NFRSIsIk5FV0pFUlNFWSIsIk5FV0hBTVBTSElSRSIsIlVDUEEiLCJWSVJHSU5JQSIsIklBQjJWMiJdLmluY2x1ZGVzKGUpP3RoaXMuZ2V0U2VjdGlvbkluc3RhbmNlQnlUZW1wVHlwZShlKTp0fSx3cy5wcm90b3R5cGUuZ2V0U2VjdGlvbkluc3RhbmNlQnlUZW1wVHlwZT1mdW5jdGlvbihlKXt2YXIgdDtzd2l0Y2goZSl7Y2FzZSBvLk1PTlRBTkE6dD1uZXcgaGk7YnJlYWs7Y2FzZSBvLlRFWEFTOnQ9bmV3IFBpO2JyZWFrO2Nhc2Ugby5ERUxBV0FSRTp0PW5ldyBOaTticmVhaztjYXNlIG8uSU9XQTp0PW5ldyBNaTticmVhaztjYXNlIG8uTkVCUkFTS0E6dD1uZXcgV2k7YnJlYWs7Y2FzZSBvLlRFTk5FU1NFRTp0PW5ldyBlczticmVhaztjYXNlIG8uTkVXSkVSU0VZOnQ9bmV3IGFzO2JyZWFrO2Nhc2Ugby5ORVdIQU1QU0hJUkU6dD1uZXcgQ3M7YnJlYWs7Y2FzZSBvLlVDUEE6dD1uZXcgUHM7YnJlYWs7Y2FzZSBvLlZJUkdJTklBOnQ9bmV3IG1zO2JyZWFrO2Nhc2Ugby5JQUIyVjI6dD1uZXcgcXJ9cmV0dXJuIHR9LHdzLnByb3RvdHlwZS5nZXRUZW1wbGF0ZVR5cGVCeUxvY2F0aW9uPWZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIGIuZ2V0UmVnaW9uUnVsZVR5cGUoKT09PW8uSUFCMlYyP28uSUFCMlYyOiFMLlVzZUdQUFVTTmF0aW9uYWwmJiJ1cyI9PT0oZT1rci5nZXRHZW9sb2NhdGlvbkRhdGEoKSkuY291bnRyeS50b0xvY2FsZUxvd2VyQ2FzZSgpJiZ4ZVtlLnN0YXRlLnRvTG9jYWxlTG93ZXJDYXNlKCldfHxvLlVTTkFUSU9OQUx9LHdzLnByb3RvdHlwZS5oYXNHUFBTZWN0aW9uPWZ1bmN0aW9uKCl7cmV0dXJuISF0aGlzLmdwcFNlY3Rpb259LHdzLnByb3RvdHlwZS5nZXRHcHBUZW1wbGF0ZUFwcGxpZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gTC5Vc2VHUFBVU05hdGlvbmFsP28uVVNOQVRJT05BTDpiLmdldFJlZ2lvblJ1bGVUeXBlKCl9LHdzLnByb3RvdHlwZS5pbml0R3BwU0RLPWZ1bmN0aW9uKCl7dmFyIGUsdD1OdW1iZXIucGFyc2VJbnQoKG51bGw9PSh0PVMubW9kdWxlSW5pdGlhbGl6ZXIuR3BwRGF0YSk/dm9pZCAwOnQuY21wSWQpfHwiMjgiKTtyZXR1cm4gbnVsbD09KGU9dGhpcy5ncHBTREtSZWYpP3ZvaWQgMDplLmdwcENtcEFwaSh0LDEuMSl9LHdzLnByb3RvdHlwZS5zZXRPclVwZGF0ZUdwcFNlY3Rpb25TdHJpbmc9ZnVuY3Rpb24obyxlKXt2YXIgbj10aGlzLHQ9dGhpcy5ncHBTZWN0aW9uLmdldFNlY3Rpb25GaWVsZHNWYWx1ZXMoKTtPYmplY3QuZW50cmllcyh0KS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWVbMF07bi5jbXBBcGkuc2V0RmllbGRWYWx1ZShvLHQsZVsxXSl9KSx0aGlzLmNtcEFwaS5maXJlU2VjdGlvbkNoYW5nZShvKSx0aGlzLnNldEdwcENvb2tpZXModGhpcy5jbXBBcGkuZ2V0R3BwU3RyaW5nKCksZSl9LHdzLnByb3RvdHlwZS5nZXRDdXJyZW50U2VjdGlvbk5hbWU9ZnVuY3Rpb24odCl7dmFyIGUsbz0iIixuPU9iamVjdC5lbnRyaWVzKEJlKS5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBlWzBdPT09dH0pO3JldHVybiBvPW51bGwhPShlPW4pJiZlLmxlbmd0aCYmMTxuLmxlbmd0aD9uWzFdOm99LHdzLnByb3RvdHlwZS5nZXRDdXJyZW50U2VjdGlvbklkPWZ1bmN0aW9uKHQpe3ZhciBlLG89MCxuPU9iamVjdC5lbnRyaWVzKE5lKS5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBlWzBdPT09dH0pO3JldHVybiBvPW51bGwhPShlPW4pJiZlLmxlbmd0aCYmMTxuLmxlbmd0aD9uWzFdOm99LHdzLnByb3RvdHlwZS51cGRhdGVHcHBDb29raWVzPWZ1bmN0aW9uKGUpe3ZhciBlPXRoaXMuZ2V0Q29va2llc0NodW5rKGUpLHQ9T2JqZWN0LmtleXMoZSkubGVuZ3RoLG89TnVtYmVyKFQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULE9lLkNodW5rQ291bnRQYXJhbSl8fDApO3RoaXMud3JpdGVHcHBDb29raWVzKHQsZSksdDxvJiZ0aGlzLmRlbGV0ZUdwcENvb2tpZXModCsxLG8pfSx3cy5wcm90b3R5cGUuZGVsZXRlQWxsR3BwQ29va2llcz1mdW5jdGlvbigpe3ZhciBlPU51bWJlcihULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxPZS5DaHVua0NvdW50UGFyYW0pfHwwKTt0aGlzLmRlbGV0ZUdwcENvb2tpZXMoMSxlKX0sd3MucHJvdG90eXBlLmdldENvb2tpZXNDaHVuaz1mdW5jdGlvbihlKXtmb3IodmFyIHQ9e30sbz0hMSxuPWUscj0xO24ubGVuZ3RoOyl7dmFyIGkscz12b2lkIDA7bi5sZW5ndGg+T2UuQ2h1bmtTaXplP3M9T2UuQ2h1bmtTaXplOihzPW4ubGVuZ3RoLG89MT09PXIpLG8/KHRbT2UuTmFtZV09bixuPSIiKTooaT1uLnNsaWNlKDAscyksbj1uLnNsaWNlKHMsbi5sZW5ndGgpLHRbIiIrT2UuTmFtZStyXT1pKSxyKyt9cmV0dXJuIHR9LHdzLnByb3RvdHlwZS53cml0ZUdwcENvb2tpZXM9ZnVuY3Rpb24oZSx0KXtULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsT2UuQ2h1bmtDb3VudFBhcmFtLGUpLFQud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxPZS5ncHBTaWQsdGhpcy5ncHBTZWN0aW9uSWQpO2Zvcih2YXIgbz0wLG49T2JqZWN0LmVudHJpZXModCk7bzxuLmxlbmd0aDtvKyspe3ZhciByPW5bb10saT1yWzBdO1Quc2V0Q29va2llKGksclsxXSxMLlJlY29uc2VudEZyZXF1ZW5jeURheXMpfX0sd3MucHJvdG90eXBlLmdldFN1cHBvcnRlZEFQSXM9ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyhCZSkuZmlsdGVyKGZ1bmN0aW9uKGUsdCxvKXtyZXR1cm4gby5pbmRleE9mKGUpPT09dH0pfSx3cy5wcm90b3R5cGUuZ2V0QXBwbGljYWJsZVNlY3Rpb25zPWZ1bmN0aW9uKGUpe3JldHVyblt0aGlzLmdldEN1cnJlbnRTZWN0aW9uSWQoZSldfTt2YXIgRHMsVnM9d3M7ZnVuY3Rpb24gd3MoKXt2YXIgZSx0PXRoaXM7dGhpcy5ncHBTREtSZWY9bnVsbD09KGU9d2luZG93Lm90SWFiTW9kdWxlKT92b2lkIDA6ZS5ncHBTZGtSZWYsdGhpcy5jbXBBcGk9dGhpcy5pbml0R3BwU0RLKCksdGhpcy51cGRhdGVHcHBDb25zZW50U3RyaW5nPWZ1bmN0aW9uKCl7dC5jbXBBcGkuZ2V0Q21wRGlzcGxheVN0YXR1cygpPT09KG51bGw9PShlPXQuZ3BwU0RLUmVmKT92b2lkIDA6ZS5kaXNwbGF5U3RhdHVzLlZJU0lCTEUpJiZ0LmNtcEFwaS5zZXRDbXBEaXNwbGF5U3RhdHVzKG51bGw9PShlPXQuZ3BwU0RLUmVmKT92b2lkIDA6ZS5kaXNwbGF5U3RhdHVzLkhJRERFTik7dmFyIGU9dC5nZXRDdXJyZW50U2VjdGlvbk5hbWUodC5ncHBUZW1wbGF0ZUFwcGxpZWQpO3Quc2V0T3JVcGRhdGVHcHBTZWN0aW9uU3RyaW5nKGUsITApfX1Hcy5wcm90b3R5cGUuaXNBdXRoVXNyPWZ1bmN0aW9uKGUpe3ZhciB0PVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguSVNfQU5PTllNT1VTX0NPTlNFTlQpO18uY29uc2VudFByZWZlcmVuY2VzfHwiMSIhPT10P1Qud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCwiaVR5cGUiLCIiKTpULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImlUeXBlIiwiIitDZVtlXSl9LEdzLnByb3RvdHlwZS5pc0Jhbm5lckNsb3NlZEJ5SWNvbk9yTGluaz1mdW5jdGlvbigpe3ZhciBlPV8uYmFubmVyQ2xvc2VTb3VyY2U7cmV0dXJuIGU9PT1lZS5CYW5uZXJDbG9zZUJ1dHRvbnx8ZT09PWVlLkNvbnRpbnVlV2l0aG91dEFjY2VwdGluZ0J1dHRvbn0sR3MucHJvdG90eXBlLmFkZENyb3NzRGV2aWNlQXR0cmlidXRlcz1mdW5jdGlvbihlKXtfLmlzVjJTdHViJiYoZS5zeW5jR3JvdXA9Xy5zeW5jR3JwSWQsTC5Vc2VHb29nbGVWZW5kb3JzKSYmKGUuZ2FjU3RyaW5nPVQuZ2V0Q29va2llKHkuQURESVRJT05BTF9DT05TRU5UX1NUUklORykpfSxHcy5wcm90b3R5cGUuYWRkQWR2QW5hbHl0aWNzQXR0cmlidXRlcz1mdW5jdGlvbihlLHQpe3ZhciBvLG49RC5nZXRHcm91cEJ5SWQoTC5BZHZhbmNlZEFuYWx5dGljc0NhdGVnb3J5KTtuJiZ0aGlzLmNhblNlbmRBZHZhbmNlZEFuYWx5dGljcyhlLnB1cnBvc2VzLG4pJiYobz13aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudCxlLmRzRGF0YUVsZW1lbnRzPXtJbnRlcmFjdGlvblR5cGU6dCxDb3VudHJ5Ol8mJl8udXNlckxvY2F0aW9uJiYvXlthLXpBLVpdezJ9JC8udGVzdChfLnVzZXJMb2NhdGlvbi5jb3VudHJ5KT9fLnVzZXJMb2NhdGlvbi5jb3VudHJ5LnRvVXBwZXJDYXNlKCk6IiIsVXNlckFnZW50Om8sQ29uc2VudE1vZGVsOkwuQ29uc2VudE1vZGVsLk5hbWV9LGUuc291cmNlPXtwdXJwb3NlSWRzOltuLlB1cnBvc2VJZF0sY29udGVudDp3aW5kb3cubG9jYXRpb24uaHJlZix0eXBlOiJXRUIifSx0aGlzLmFkZEdlb2xvY2F0aW9uQXR0cmlidXRlcyhlLG4pKX0sR3MucHJvdG90eXBlLmFkZEdlb2xvY2F0aW9uQXR0cmlidXRlcz1mdW5jdGlvbihlLHQpe3ZhciBvPV8udXNlckxvY2F0aW9uO28mJihlLmdlb2xvY2F0aW9uPXtjb3VudHJ5Om8uY291bnRyeS50b1VwcGVyQ2FzZSgpLHN0YXRlOm8uc3RhdGUsc3RhdGVOYW1lOm8uc3RhdGVOYW1lfHwiIixwdXJwb3NlSWRzOnQ/W3QuUHVycG9zZUlkXTpbXX0pfSxHcy5wcm90b3R5cGUuY2FuU2VuZENvbnNlbnRSZWNlaXB0PWZ1bmN0aW9uKGUsdCxvKXtyZXR1cm4gZXx8Yi5hcGlTb3VyY2U9PT1vZS5VcGRhdGVDb25zZW50fHxfLmNvbnNlbnRJbnRlcmFjdGlvblR5cGUhPT10fHxvfSxHcy5wcm90b3R5cGUuYWRkR3BwU3RyaW5nQXR0cmlidXRlPWZ1bmN0aW9uKGUpe0wuSXNHUFBFbmFibGVkJiZEcy5oYXNHUFBTZWN0aW9uKCkmJkRzLnVwZGF0ZUdwcENvbnNlbnRTdHJpbmcoKTt2YXIgdD1ULmdldENvb2tpZSh5LkdQUF9DT05TRU5UKTt0JiYoZS5ncHBTdHJpbmc9dCl9LEdzLnByb3RvdHlwZS5hZGRDb25zZW50U3RyaW5nVG9QYXlsb2FkPWZ1bmN0aW9uKGUpe3ZhciB0PVQuZ2V0TWVyZ2VkQ29va2llQnlOYW1lKHkuRVVfUFVCX0NPTlNFTlQpLG89Yi5nZXRSZWdpb25SdWxlVHlwZSgpOyhiLmlzSWFiMm9ydjJUZW1wbGF0ZXx8IklBQkMiPT09bykmJnQ/ZS5jb25zZW50U3RyaW5nPXt0eXBlOiJJQUJDIj09PW8/InRjZmNhbmFkYSI6IklBQjIiIT09byYmIklBQjJWMiIhPT1vPyIiOiJ0Y2ZldSIsY29udGVudDp0fTpMLklzR1BQRW5hYmxlZCYmZS5oYXNPd25Qcm9wZXJ0eSgiZ3BwU3RyaW5nIikmJmUuZ3BwU3RyaW5nJiYoZS5jb25zZW50U3RyaW5nPXt0eXBlOiJncHAiLGNvbnRlbnQ6ZS5ncHBTdHJpbmd9LGRlbGV0ZSBlLmdwcFN0cmluZyl9LEdzLnByb3RvdHlwZS5jcmVhdGVDb25zZW50VHhuPWZ1bmN0aW9uKGUsdCxvLG4scixpKXt2b2lkIDA9PT10JiYodD0iIiksdm9pZCAwPT09byYmKG89ITEpLHZvaWQgMD09PWkmJihpPSIiKTt2YXIgcz10aGlzLmVuc3VyZUNvbnNlbnRJZChlLG49dm9pZCAwPT09bj8hMDpuLHI9dm9pZCAwPT09cj8hMTpyKSxhPUwuQ29uc2VudEludGVncmF0aW9uLGw9dGhpcy5nZXRDb25zZW50VVJMKHMuaXNBbm9ueW1vdXMpLGM9dGhpcy5jYW5DcmVhdGVDb25zZW50UmVjZWlwdFR4bihzLGUpO18uaXNWMlN0dWImJnQmJnRoaXMuaXNBdXRoVXNyKHQpLGMmJihjPVMubW9kdWxlSW5pdGlhbGl6ZXIsQnMubm9PcHRPdXRUb29nbGU9Yy5UZW5hbnRGZWF0dXJlcy5Db29raWVWMk5vT3B0T3V0LEJzLmlzQ2xvc2VCeUljb25Pckxpbms9dGhpcy5pc0Jhbm5lckNsb3NlZEJ5SWNvbk9yTGluaygpLHM9e3JlcXVlc3RJbmZvcm1hdGlvbjphLlJlcXVlc3RJbmZvcm1hdGlvbixpZGVudGlmaWVyOnMuaWQsaWRlbnRpZmllclR5cGU6cy5pZGVudGlmaWVyVHlwZSxjdXN0b21QYXlsb2FkOntJbnRlcmFjdGlvbjpzLmNvdW50LEFkZERlZmF1bHRJbnRlcmFjdGlvbjpzLmFkZERmbHRJbnR9LGlzQW5vbnltb3VzOnMuaXNBbm9ueW1vdXMsdGVzdDpjLlNjcmlwdFR5cGU9PT1xZS5URVNUfHxjLlNjcmlwdFR5cGU9PT1xZS5MT0NBTF9URVNULHB1cnBvc2VzOnRoaXMuZ2V0Q29uc2V0UHVycG9zZXMoZSxpLHQpLGRzRGF0YUVsZW1lbnRzOnt9fSx0aGlzLmhhbmRsZVJlY2VpcHRzV2hlblNlbmRSZWNlaXB0SXNFbmFibGVkKHMscix0KSx0aGlzLmFkZENyb3NzRGV2aWNlQXR0cmlidXRlcyhzKSx0aGlzLmFkZEFkdkFuYWx5dGljc0F0dHJpYnV0ZXMocyx0KSx0aGlzLmFkZEdwcFN0cmluZ0F0dHJpYnV0ZShzKSx0aGlzLmFkZENvbnNlbnRTdHJpbmdUb1BheWxvYWQocyksIWMuTW9iaWxlU0RLJiZuJiZzLnB1cnBvc2VzLmxlbmd0aCYmKGk9SlNPTi5zdHJpbmdpZnkocyksYz10aGlzLmdldEF1dGhUb2tlbigpLHRoaXMuc2VuZEJlYWNvblN1cHBvcnRlZChlLGMpPyhuYXZpZ2F0b3Iuc2VuZEJlYWNvbihsLGkpLE8uZGlzcGF0Y2hDb25zZW50RXZlbnQoKSk6dGhpcy5jYW5TZW5kQ29uc2VudFJlY2VpcHQobyx0LHIpJiZtLmFqYXgoe3VybDpsLHR5cGU6InBvc3QiLGRhdGFUeXBlOiJqc29uIixjb250ZW50VHlwZToiYXBwbGljYXRpb24vanNvbiIsZGF0YTpKU09OLnN0cmluZ2lmeShzKSxzeW5jOmUsc3VjY2VzczpmdW5jdGlvbigpe08uZGlzcGF0Y2hDb25zZW50RXZlbnQoKX0sZXJyb3I6ZnVuY3Rpb24oKXtPLmRpc3BhdGNoQ29uc2VudEV2ZW50KCl9LHRva2VuOmN9KSksYi5wdWJEb21haW5EYXRhLkNvbnNlbnRJbnRlZ3JhdGlvbkRhdGE9e2NvbnNlbnRBcGk6YS5Db25zZW50QXBpLGNvbnNlbnRQYXlsb2FkOnN9KSxfLmNvbnNlbnRJbnRlcmFjdGlvblR5cGU9dCx0aGlzLnN0b3JlSW50ZXJhY3Rpb25UeXBlKHQpfSxHcy5wcm90b3R5cGUuY2FuQ3JlYXRlQ29uc2VudFJlY2VpcHRUeG49ZnVuY3Rpb24oZSx0KXt2YXIgbz1MLkNvbnNlbnRJbnRlZ3JhdGlvbixuPXRoaXMuZ2V0Q29uc2VudFVSTChlLmlzQW5vbnltb3VzKSxyPXdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LHI9L09uZVRydXN0Ly50ZXN0KHIpLGk9Xy5pc0JvdEhlYWRlcjtyZXR1cm4gbiYmby5SZXF1ZXN0SW5mb3JtYXRpb24mJmUuaWQmJiFyJiYhaSYmIXRoaXMuYmxvY2tEZWZhdWx0UmVjZWlwdENhbGwodCl9LEdzLnByb3RvdHlwZS5nZXRDb25zZW50VVJMPWZ1bmN0aW9uKGUpe3ZhciB0PUwuQ29uc2VudEludGVncmF0aW9uLG89dC5Db25zZW50QXBpLG49Uy5tb2R1bGVJbml0aWFsaXplci5UZW5hbnRGZWF0dXJlcztyZXR1cm4gbiYmbi5Db29raWVWMk5ld0NvbnNlbnRSZWNlaXB0QVBJJiYoZSYmdC5Bbm9ueW1vdXNDb25zZW50QXBpP289dC5Bbm9ueW1vdXNDb25zZW50QXBpOl8uaXNWMlN0dWImJnQuQ1JPQ29uc2VudEFwaSYmKG89dC5DUk9Db25zZW50QXBpKSksb30sR3MucHJvdG90eXBlLmJsb2NrRGVmYXVsdFJlY2VpcHRDYWxsPWZ1bmN0aW9uKGUpe3JldHVybiEhZSYmISFTLmZwLkNNUE5vdEdpdmVuJiYhTC5DYW5HZW5lcmF0ZU5vdEdpdmVuUmVjZWlwdHN9LEdzLnByb3RvdHlwZS5lbnN1cmVDb25zZW50SWQ9ZnVuY3Rpb24oZSx0LG8pe3ZvaWQgMD09PW8mJihvPSExKTt2YXIgbixyPSExLGk9dGhpcy5nZXRJZGVuVHlwZUFuZElzQW5vbkF0dHIoKSxzPWkuaXNBbm9ueW1vdXMsaT1pLmlkZW50aWZpZXJUeXBlLGU9ZXx8IXR8fG8/MDoocj0hMCwxKSxhPVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguQ09OU0VOVF9JRCwhMCk7cmV0dXJuIGE/KG49cGFyc2VJbnQoVC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5JTlRFUkFDVElPTl9DT1VOVCksMTApLGlzTmFOKG4pfHwodCYmIW8mJisrbixlPW4scj0hMSkpOihhPVAuZ2VuZXJhdGVVVUlEKCksVC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguQ09OU0VOVF9JRCxhKSksVC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguSU5URVJBQ1RJT05fQ09VTlQsZSksVC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguSVNfQU5PTllNT1VTX0NPTlNFTlQscz8iMSI6IjAiKSx7aWQ6YSxjb3VudDplLGFkZERmbHRJbnQ6cixpZGVudGlmaWVyVHlwZTppLGlzQW5vbnltb3VzOnN9fSxHcy5wcm90b3R5cGUuZ2V0SWRlblR5cGVBbmRJc0Fub25BdHRyPWZ1bmN0aW9uKCl7dmFyIGU9ITAsdD1ULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLklERU5USUZJRVJfVFlQRSwhMSksbz10LG49KCExIT09KG51bGw9PShuPUwuQ29uc2VudEludGVncmF0aW9uKT92b2lkIDA6bi5JZGVudGlmaWVkUmVjZWlwdHNBbGxvd2VkKSYmXy5pc1YyU3R1Ynx8KGU9ITAsbz1udWxsPT0obj1MLkNvbnNlbnRJbnRlZ3JhdGlvbik/dm9pZCAwOm4uRGVmYXVsdEFub255bW91c0lkZW50aWZpZXIpLChfLmlzVjJTdHVifHxudWxsIT0obj1MLkNvbnNlbnRJbnRlZ3JhdGlvbikmJm4uSWRlbnRpZmllZFJlY2VpcHRzQWxsb3dlZCYmIV8uaXNWMlN0dWIpJiYoZT0obj10aGlzLnNldEFub255bWl0eUJhc2VkT25Lbm93blVzZXJPck5vdChlLG8pKS5pc0Fub255bW91cyxvPW4uaWRUeXBlVXBkYXRlZCksXy5kc1BhcmFtcyk7cmV0dXJuIG4uZm9yY2VVc2VyQ29uc2VudEF0dHJpYnV0ZXMmJihuJiZuLmhhc093blByb3BlcnR5KCJpc0Fub255bW91cyIpJiYoZT1uLmlzQW5vbnltb3VzKSx0KSYmKG89dCkse2lzQW5vbnltb3VzOmUsaWRlbnRpZmllclR5cGU6b319LEdzLnByb3RvdHlwZS5zZXRBbm9ueW1pdHlCYXNlZE9uS25vd25Vc2VyT3JOb3Q9ZnVuY3Rpb24oZSx0KXt2YXIgbyxuPSIiLG49bnVsbCE9KG89Xy5kc1BhcmFtcykmJm8uaWQ/KGU9ITEsbnVsbCE9KG89dCkmJm8udHJpbSgpLmxlbmd0aD90Om51bGw9PShvPUwuQ29uc2VudEludGVncmF0aW9uKT92b2lkIDA6by5EZWZhdWx0SWRlbnRpZmllcik6KGU9ITAsbnVsbD09KHQ9TC5Db25zZW50SW50ZWdyYXRpb24pP3ZvaWQgMDp0LkRlZmF1bHRBbm9ueW1vdXNJZGVudGlmaWVyKTtyZXR1cm57aXNBbm9ueW1vdXM6ZSxpZFR5cGVVcGRhdGVkOm59fSxHcy5wcm90b3R5cGUuc3RvcmVJbnRlcmFjdGlvblR5cGU9ZnVuY3Rpb24oZSl7dmFyIHQ7bnVsbCE9KHQ9ZSkmJnQubGVuZ3RoJiYoaXNOYU4oZSkmJihlPUNlW2VdKSxULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5JTlRFUkFDVElPTl9UWVBFLGUpKX0sR3MucHJvdG90eXBlLmdldEF1dGhUb2tlbj1mdW5jdGlvbigpe3ZhciBlPW51bGw7cmV0dXJuIGU9TC5Db25zZW50SW50ZWdyYXRpb24uRW5hYmxlSldUQXV0aEZvcktub3duVXNlcnMmJl8uZHNQYXJhbXMuaWQmJl8uZHNQYXJhbXMudG9rZW4/Xy5kc1BhcmFtcy50b2tlbjplfSxHcy5wcm90b3R5cGUuc2VuZEJlYWNvblN1cHBvcnRlZD1mdW5jdGlvbihlLHQpe3JldHVybiBlJiZuYXZpZ2F0b3Iuc2VuZEJlYWNvbiYmIXR9LEdzLnByb3RvdHlwZS5oYW5kbGVSZWNlaXB0c1doZW5TZW5kUmVjZWlwdElzRW5hYmxlZD1mdW5jdGlvbihlLHQsbyl7IV8uaXNWMlN0dWImJnQmJigodD1ULmdldENvb2tpZSh5LkFMRVJUX0JPWF9DTE9TRUQpKSYmKGUuaW50ZXJhY3Rpb25EYXRlPXQpLG8mJihlLkludGVyYWN0aW9uVHlwZT1vKSxlLmVuYWJsZURhdGFFbGVtZW50RGF0ZVZhbGlkYXRpb249ITApfSxHcy5wcm90b3R5cGUuZ2V0R3JwRGV0YWlscz1mdW5jdGlvbihlLG8pe3ZhciBuPVtdO3JldHVybiBlLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIGU9ZS5zcGxpdCgiOiIpLHQ9ZVswXSxlPSJ0cnVlIj09PWVbMV0/IjEiOiIwIix0PUJzLmdldE9wdGFub25JZEZvcklhYkdyb3VwKHQsbyk7bi5wdXNoKHQrIjoiK2UpfSksbn0sR3MucHJvdG90eXBlLmdldE9wdGFub25JZEZvcklhYkdyb3VwPWZ1bmN0aW9uKGUsdCl7dmFyIG87cmV0dXJuIHQ9PT1uZS5QdXJwb3NlP289ay5JZFBhdHRlcm5zLlB1citlOnQ9PT1uZS5TcGVjaWFsRmVhdHVyZSYmKG89ay5JZFBhdHRlcm5zLlNwbF9GdCtlKSxvfSxHcy5wcm90b3R5cGUuZ2V0Q29uc2V0UHVycG9zZXM9ZnVuY3Rpb24obixyLGkpe3ZhciBzPXRoaXMsYT1bXSxlPVtdLHQ9Xy5vbmVUcnVzdElBQkNvbnNlbnQsbz10JiZ0LnB1cnBvc2U/dGhpcy5nZXRHcnBEZXRhaWxzKHQucHVycG9zZSxuZS5QdXJwb3NlKTpbXSxsPXQmJnQuc3BlY2lhbEZlYXR1cmVzP3RoaXMuZ2V0R3JwRGV0YWlscyh0LnNwZWNpYWxGZWF0dXJlcyxuZS5TcGVjaWFsRmVhdHVyZSk6W10sZT1VKHQuc3BlY2lhbFB1cnBvc2VzLHQuZmVhdHVyZXMpO3JldHVybiBVKF8uZ3JvdXBzQ29uc2VudCxvLGwpLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQsZT1lLnNwbGl0KCI6Iiksbz1ELmdldEdyb3VwQnlJZChlWzBdKTtvJiZvLlB1cnBvc2VJZCYmKGU9cy5nZXRUcmFuc2FjdGlvblR5cGUobyxlLG4pLHQ9cy5wcm9jZXNzR3JvdXBDb25zZW50UHVycG9zZShvLGUsYSxyLGkpLHMuc2V0VlNDb25zZW50QnlHcm91cChvLGUsdCkuZm9yRWFjaChmdW5jdGlvbihlKXtyZXR1cm4gYS5wdXNoKGUpfSkpfSksZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UucHVycG9zZUlkJiZhLnB1c2goe0lkOmUucHVycG9zZUlkLFRyYW5zYWN0aW9uVHlwZTpGZX0pfSksIkdQQyIhPT1yJiYiRE5UIiE9PXJ8fChhPWEuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlLlB1cnBvc2VOb3RlfSkpLF8uYmFubmVyQ2xvc2VTb3VyY2U9ZWUuVW5rbm93bixhfSxHcy5wcm90b3R5cGUuc2V0VlNDb25zZW50QnlHcm91cD1mdW5jdGlvbihlLG8sbil7dmFyIHI9W107cmV0dXJuIF8uc2hvd1ZlbmRvclNlcnZpY2UmJmUuVmVuZG9yU2VydmljZXMmJmUuVmVuZG9yU2VydmljZXMuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdDt0PW8udXNlT3duP18udnNDb25zZW50LmdldChlLkN1c3RvbVZlbmRvclNlcnZpY2VJZCk/SGU6UmU6by50eG5UeXBlLHIucHVzaCgiR1BDIj09PW4/e0lkOmUuUHVycG9zZUlkLFRyYW5zYWN0aW9uVHlwZTp0LFB1cnBvc2VOb3RlOntub3RlSWQ6TC5Db25zZW50SW50ZWdyYXRpb24uR1BDUmVhc29uSUQsbm90ZVR5cGU6IlVOU1VCU0NSSUJFX1JFQVNPTiIsbm90ZVRleHQ6TC5HUENPcHRPdXROb3RlVGV4dH19OiJETlQiPT09bj97SWQ6ZS5QdXJwb3NlSWQsVHJhbnNhY3Rpb25UeXBlOnQsUHVycG9zZU5vdGU6e25vdGVJZDpMLkNvbnNlbnRJbnRlZ3JhdGlvbi5ETlRSZWFzb25JRCxub3RlVHlwZToiVU5TVUJTQ1JJQkVfUkVBU09OIixub3RlVGV4dDpMLkROVE9wdE91dE5vdGVUZXh0fX06e0lkOmUuUHVycG9zZUlkLFRyYW5zYWN0aW9uVHlwZTp0fSl9KSxyfSxHcy5wcm90b3R5cGUuZ2V0VHJhbnNhY3Rpb25UeXBlPWZ1bmN0aW9uKGUsdCxvKXt2YXIgbj17dHhuVHlwZTpGZSx1c2VPd246ITF9O3JldHVybiBlLlN0YXR1cz09PWYuQUxXQVlTX0FDVElWRT9uLnR4blR5cGU9RmU6ZS5TdGF0dXMudG9Mb3dlckNhc2UoKT09PWYuQUxXQVlTX0lOQUNUSVZFfHxlLlN0YXR1cz09PWYuSU5BQ1RJVkUmJkJzLmlzQ2xvc2VCeUljb25Pckxpbmt8fG8/bi50eG5UeXBlPU1lOmUuU3RhdHVzPT09Zi5BQ1RJVkUmJkJzLmlzQ2xvc2VCeUljb25Pckxpbms/bi50eG5UeXBlPUJzLm5vT3B0T3V0VG9vZ2xlP1VlOkhlOihuLnVzZU93bj0hMCxuLnR4blR5cGU9dGhpcy5nZXRUeG5UeXBlKHRbMV0pKSxufSxHcy5wcm90b3R5cGUuZ2V0VHhuVHlwZT1mdW5jdGlvbihlKXtyZXR1cm4iMCI9PT1lP1JlOkhlfSxHcy5wcm90b3R5cGUuaXNQdXJwb3NlQ29uc2VudGVkVG89ZnVuY3Rpb24oZSx0KXt2YXIgbz1bSGUsRmVdO3JldHVybiBlLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuIGUuSWQ9PT10LlB1cnBvc2VJZCYmKC0xIT09by5pbmRleE9mKGUuVHJhbnNhY3Rpb25UeXBlKXx8RC5jaGVja0lmR3JvdXBIYXNDb25zZW50KHQpKX0pfSxHcy5wcm90b3R5cGUucHJvY2Vzc0dyb3VwQ29uc2VudFB1cnBvc2U9ZnVuY3Rpb24oZSx0LG8sbixyKXtyZXR1cm4oIW4mJiJHUEMgdmFsdWUgY2hhbmdlZCI9PT1yfHwiR1BDIj09PW4pJiZlLmlzRGVuaWVkQnlHUEM/KG8ucHVzaCh7SWQ6ZS5QdXJwb3NlSWQsVHJhbnNhY3Rpb25UeXBlOnQudHhuVHlwZSxQdXJwb3NlTm90ZTp7bm90ZUlkOkwuQ29uc2VudEludGVncmF0aW9uLkdQQ1JlYXNvbklELG5vdGVUeXBlOiJVTlNVQlNDUklCRV9SRUFTT04iLG5vdGVUZXh0OkwuR1BDT3B0T3V0Tm90ZVRleHR9fSksIkdQQyIpOiJETlQiPT09biYmZS5pc0RlbmllZEJ5RE5UPyhvLnB1c2goe0lkOmUuUHVycG9zZUlkLFRyYW5zYWN0aW9uVHlwZTp0LnR4blR5cGUsUHVycG9zZU5vdGU6e25vdGVJZDpMLkNvbnNlbnRJbnRlZ3JhdGlvbi5ETlRSZWFzb25JRCxub3RlVHlwZToiVU5TVUJTQ1JJQkVfUkVBU09OIixub3RlVGV4dDpMLkROVE9wdE91dE5vdGVUZXh0fX0pLCJETlQiKTooby5wdXNoKHtJZDplLlB1cnBvc2VJZCxUcmFuc2FjdGlvblR5cGU6dC50eG5UeXBlfSksIm5vbmUiKX0sR3MucHJvdG90eXBlLmNhblNlbmRBZHZhbmNlZEFuYWx5dGljcz1mdW5jdGlvbih0LGUpe3ZhciBvPXRoaXM7cmV0dXJuIkJSQU5DSCI9PT1lLlR5cGV8fGUuVHlwZT09PWsuR3JvdXBUeXBlcy5TdGFjaz9lLlN1Ykdyb3Vwcy5sZW5ndGgmJmUuU3ViR3JvdXBzLmV2ZXJ5KGZ1bmN0aW9uKGUpe3JldHVybiBvLmlzUHVycG9zZUNvbnNlbnRlZFRvKHQsZSl9KTp0aGlzLmlzUHVycG9zZUNvbnNlbnRlZFRvKHQsZSl9O3ZhciBCcyxOcz1HcztmdW5jdGlvbiBHcygpe312YXIgeHMsSHM9ZnVuY3Rpb24oKXt0aGlzLmFzc2V0cz1mdW5jdGlvbigpe3JldHVybntuYW1lOiJvdENvb2tpZVBvbGljeSIsaHRtbDonPGRpdiBjbGFzcz0ib3Qtc2RrLWNvb2tpZS1wb2xpY3kgb3Qtc2RrLWNvbnRhaW5lciI+XG4gICAgPGgzIGlkPSJjb29raWUtcG9saWN5LXRpdGxlIj5Db29raWUgVHJhY2tpbmcgVGFibGU8L2gzPlxuICAgIDxkaXYgaWQ9ImNvb2tpZS1wb2xpY3ktZGVzY3JpcHRpb24iPjwvZGl2PlxuICAgIDxzZWN0aW9uPlxuICAgICAgICA8aDQgY2xhc3M9Im90LXNkay1jb29raWUtcG9saWN5LWdyb3VwIj5TdHJpY3RseSBOZWNlc3NhcnkgQ29va2llczwvaDQ+XG4gICAgICAgIDxwIGNsYXNzPSJvdC1zZGstY29va2llLXBvbGljeS1ncm91cC1kZXNjIj5ncm91cCBkZXNjcmlwdGlvbjwvcD5cbiAgICAgICAgPGg1IGNsYXNzPSJjb29raWVzLXVzZWQtaGVhZGVyIj5Db29raWVzIFVzZWQ8L2g1PlxuICAgICAgICA8dWwgY2xhc3M9ImNvb2tpZXMtbGlzdCI+XG4gICAgICAgICAgICA8bGk+Q29va2llIDE8L2xpPlxuICAgICAgICA8L3VsPlxuICAgICAgICA8dGFibGU+XG4gICAgICAgICAgICA8Y2FwdGlvbiBjbGFzcz0ib3Qtc2Nybi1yZHIiPmNhcHRpb248L2NhcHRpb24+XG4gICAgICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9ImNvbCIgY2xhc3M9InRhYmxlLWhlYWRlciBob3N0Ij5Ib3N0PC90aD5cbiAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPSJjb2wiIGNsYXNzPSJ0YWJsZS1oZWFkZXIgaG9zdC1kZXNjcmlwdGlvbiI+SG9zdCBEZXNjcmlwdGlvbjwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT0iY29sIiBjbGFzcz0idGFibGUtaGVhZGVyIGNvb2tpZXMiPkNvb2tpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9ImNvbCIgY2xhc3M9InRhYmxlLWhlYWRlciBsaWZlLXNwYW4iPkxpZmUgU3BhbjwvdGg+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9Imhvc3QtdGQiIGRhdGEtbGFiZWw9Ikhvc3QiPjxzcGFuIGNsYXNzPSJvdC1tb2JpbGUtYm9yZGVyIj48L3NwYW4+PGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL2Nvb2tpZXBlZGlhLmNvLnVrL2hvc3QvLmFwcC5vbmV0cnVzdC5jb20/X2dhPTIuMTU3Njc1ODk4LjE1NzIwODQzOTUuMTU1NjEyMDA5MC0xMjY2NDU5MjMwLjE1NTU1OTM1NDgmX2dhPTIuMTU3Njc1ODk4LjE1NzIwODQzOTUuMTU1NjEyMDA5MC0xMjY2NDU5MjMwLjE1NTU1OTM1NDgiPkF6dXJlPC9hPlxuICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9Imhvc3QtZGVzY3JpcHRpb24tdGQiIGRhdGEtbGFiZWw9Ikhvc3QgRGVzY3JpcHRpb24iPjxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im90LW1vYmlsZS1ib3JkZXIiPjwvc3Bhbj5UaGVzZVxuICAgICAgICAgICAgICAgICAgICAgICAgY29va2llcyBhcmUgdXNlZCB0byBtYWtlIHN1cmVcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2l0b3IgcGFnZSByZXF1ZXN0cyBhcmUgcm91dGVkIHRvIHRoZSBzYW1lIHNlcnZlciBpbiBhbGwgYnJvd3Npbmcgc2Vzc2lvbnMuPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb29raWVzLXRkIiBkYXRhLWxhYmVsPSJDb29raWVzIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJvdC1tb2JpbGUtYm9yZGVyIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPkFSUkFmZmluaXR5PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0ibGlmZS1zcGFuLXRkIiBkYXRhLWxhYmVsPSJMaWZlIFNwYW4iPjxzcGFuIGNsYXNzPSJvdC1tb2JpbGUtYm9yZGVyIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjEwMCBkYXlzPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgPC9zZWN0aW9uPlxuICAgIDxzZWN0aW9uIGNsYXNzPSJzdWJncm91cCI+XG4gICAgICAgIDxoNSBjbGFzcz0ib3Qtc2RrLWNvb2tpZS1wb2xpY3ktZ3JvdXAiPlN0cmljdGx5IE5lY2Vzc2FyeSBDb29raWVzPC9oNT5cbiAgICAgICAgPHAgY2xhc3M9Im90LXNkay1jb29raWUtcG9saWN5LWdyb3VwLWRlc2MiPmRlc2NyaXB0aW9uPC9wPlxuICAgICAgICA8aDYgY2xhc3M9ImNvb2tpZXMtdXNlZC1oZWFkZXIiPkNvb2tpZXMgVXNlZDwvaDY+XG4gICAgICAgIDx1bCBjbGFzcz0iY29va2llcy1saXN0Ij5cbiAgICAgICAgICAgIDxsaT5Db29raWUgMTwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICAgIDx0YWJsZT5cbiAgICAgICAgICAgIDxjYXB0aW9uIGNsYXNzPSJvdC1zY3JuLXJkciI+Y2FwdGlvbjwvY2FwdGlvbj5cbiAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT0iY29sIiBjbGFzcz0idGFibGUtaGVhZGVyIGhvc3QiPkhvc3Q8L3RoPlxuICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9ImNvbCIgY2xhc3M9InRhYmxlLWhlYWRlciBob3N0LWRlc2NyaXB0aW9uIj5Ib3N0IERlc2NyaXB0aW9uPC90aD5cbiAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPSJjb2wiIGNsYXNzPSJ0YWJsZS1oZWFkZXIgY29va2llcyI+Q29va2llczwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT0iY29sIiBjbGFzcz0idGFibGUtaGVhZGVyIGxpZmUtc3BhbiI+TGlmZSBTcGFuPC90aD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgPC90aGVhZD5cbiAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iaG9zdC10ZCIgZGF0YS1sYWJlbD0iSG9zdCI+PHNwYW4gY2xhc3M9Im90LW1vYmlsZS1ib3JkZXIiPjwvc3Bhbj48YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vY29va2llcGVkaWEuY28udWsvaG9zdC8uYXBwLm9uZXRydXN0LmNvbT9fZ2E9Mi4xNTc2NzU4OTguMTU3MjA4NDM5NS4xNTU2MTIwMDkwLTEyNjY0NTkyMzAuMTU1NTU5MzU0OCZfZ2E9Mi4xNTc2NzU4OTguMTU3MjA4NDM5NS4xNTU2MTIwMDkwLTEyNjY0NTkyMzAuMTU1NTU5MzU0OCI+QXp1cmU8L2E+XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iaG9zdC1kZXNjcmlwdGlvbi10ZCIgZGF0YS1sYWJlbD0iSG9zdCBEZXNjcmlwdGlvbiI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ib3QtbW9iaWxlLWJvcmRlciI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgY29va2llcyBhcmUgdXNlZCB0byBtYWtlIHN1cmVuZyBzZXNzaW9ucy5cbiAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb29raWVzLXRkIiBkYXRhLWxhYmVsPSJDb29raWVzIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJvdC1tb2JpbGUtYm9yZGVyIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPkFSUkFmZmluaXR5PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0ibGlmZS1zcGFuLXRkIiBkYXRhLWxhYmVsPSJMaWZlIFNwYW4iPjxzcGFuIGNsYXNzPSJvdC1tb2JpbGUtYm9yZGVyIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjEwMCBkYXlzPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgPC9zZWN0aW9uPlxuPC9kaXY+XG5ceDNjIS0tIE5ldyBDb29raWVzIHBvbGljeSBMaW5rLS1ceDNlXG48ZGl2IGlkPSJvdC1zZGstY29va2llLXBvbGljeS12MiIgY2xhc3M9Im90LXNkay1jb29raWUtcG9saWN5IG90LXNkay1jb250YWluZXIiPlxuICAgIDxoMyBpZD0iY29va2llLXBvbGljeS10aXRsZSIgY2xhc3M9Im90LXNkay1jb29raWUtcG9saWN5LXRpdGxlIj5Db29raWUgVHJhY2tpbmcgVGFibGU8L2gzPlxuICAgIDxkaXYgaWQ9ImNvb2tpZS1wb2xpY3ktZGVzY3JpcHRpb24iPjwvZGl2PlxuICAgIDxzZWN0aW9uPlxuICAgICAgICA8aDQgY2xhc3M9Im90LXNkay1jb29raWUtcG9saWN5LWdyb3VwIj5TdHJpY3RseSBOZWNlc3NhcnkgQ29va2llczwvaDQ+XG4gICAgICAgIDxwIGNsYXNzPSJvdC1zZGstY29va2llLXBvbGljeS1ncm91cC1kZXNjIj5ncm91cCBkZXNjcmlwdGlvbjwvcD5cbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9Im90LXNkay1zdWJncm91cCI+XG4gICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9Im90LXNkay1jb29raWUtcG9saWN5LWdyb3VwIj5TdHJpY3RseSBOZWNlc3NhcnkgQ29va2llczwvaDU+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJvdC1zZGstY29va2llLXBvbGljeS1ncm91cC1kZXNjIj5kZXNjcmlwdGlvbjwvcD5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICA8dGFibGU+XG4gICAgICAgICAgICA8Y2FwdGlvbiBjbGFzcz0ib3Qtc2Nybi1yZHIiPmNhcHRpb248L2NhcHRpb24+XG4gICAgICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9ImNvbCIgY2xhc3M9Im90LXRhYmxlLWhlYWRlciBvdC1ob3N0Ij5Ib3N0PC90aD5cbiAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPSJjb2wiIGNsYXNzPSJvdC10YWJsZS1oZWFkZXIgb3QtaG9zdC1kZXNjcmlwdGlvbiI+SG9zdCBEZXNjcmlwdGlvbjwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT0iY29sIiBjbGFzcz0ib3QtdGFibGUtaGVhZGVyIG90LWNvb2tpZXMiPkNvb2tpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9ImNvbCIgY2xhc3M9Im90LXRhYmxlLWhlYWRlciBvdC1jb29raWVzLXR5cGUiPlR5cGU8L3RoPlxuICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9ImNvbCIgY2xhc3M9Im90LXRhYmxlLWhlYWRlciBvdC1saWZlLXNwYW4iPkxpZmUgU3BhbjwvdGg+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9Im90LWhvc3QtdGQiIGRhdGEtbGFiZWw9Ikhvc3QiPjxzcGFuIGNsYXNzPSJvdC1tb2JpbGUtYm9yZGVyIj48L3NwYW4+PGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL2Nvb2tpZXBlZGlhLmNvLnVrL2hvc3QvLmFwcC5vbmV0cnVzdC5jb20/X2dhPTIuMTU3Njc1ODk4LjE1NzIwODQzOTUuMTU1NjEyMDA5MC0xMjY2NDU5MjMwLjE1NTU1OTM1NDgmX2dhPTIuMTU3Njc1ODk4LjE1NzIwODQzOTUuMTU1NjEyMDA5MC0xMjY2NDU5MjMwLjE1NTU1OTM1NDgiPkF6dXJlPC9hPlxuICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9Im90LWhvc3QtZGVzY3JpcHRpb24tdGQiIGRhdGEtbGFiZWw9Ikhvc3QgRGVzY3JpcHRpb24iPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im90LW1vYmlsZS1ib3JkZXIiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvb2tpZXMgYXJlIHVzZWQgdG8gbWFrZSBzdXJlbmcgc2Vzc2lvbnMuXG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0ib3QtY29va2llcy10ZCIgZGF0YS1sYWJlbD0iQ29va2llcyI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ib3QtbW9iaWxlLWJvcmRlciI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im90LWNvb2tpZXMtdGQtY29udGVudCI+QVJSQWZmaW5pdHk8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0ib3QtY29va2llcy10eXBlIiBkYXRhLWxhYmVsPSJUeXBlIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJvdC1tb2JpbGUtYm9yZGVyIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ib3QtY29va2llcy10eXBlLXRkLWNvbnRlbnQiPjFzdCBQYXJ0eTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJvdC1saWZlLXNwYW4tdGQiIGRhdGEtbGFiZWw9IkxpZmUgU3BhbiI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ib3QtbW9iaWxlLWJvcmRlciI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im90LWxpZmUtc3Bhbi10ZC1jb250ZW50Ij4xMDAgZGF5czwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgPC90YWJsZT5cbiAgICA8L3NlY3Rpb24+XG48L2Rpdj4nLGNzczoiLm90LXNkay1jb29raWUtcG9saWN5e2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjE2cHh9Lm90LXNkay1jb29raWUtcG9saWN5Lm90UmVsRm9udHtmb250LXNpemU6MXJlbX0ub3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDMsLm90LXNkay1jb29raWUtcG9saWN5IGg0LC5vdC1zZGstY29va2llLXBvbGljeSBoNiwub3Qtc2RrLWNvb2tpZS1wb2xpY3kgcCwub3Qtc2RrLWNvb2tpZS1wb2xpY3kgbGksLm90LXNkay1jb29raWUtcG9saWN5IGEsLm90LXNkay1jb29raWUtcG9saWN5IHRoLC5vdC1zZGstY29va2llLXBvbGljeSAjY29va2llLXBvbGljeS1kZXNjcmlwdGlvbiwub3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1jb29raWUtcG9saWN5LWdyb3VwLC5vdC1zZGstY29va2llLXBvbGljeSAjY29va2llLXBvbGljeS10aXRsZXtjb2xvcjpkaW1ncmF5fS5vdC1zZGstY29va2llLXBvbGljeSAjY29va2llLXBvbGljeS1kZXNjcmlwdGlvbnttYXJnaW4tYm90dG9tOjFlbX0ub3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDR7Zm9udC1zaXplOjEuMmVtfS5vdC1zZGstY29va2llLXBvbGljeSBoNntmb250LXNpemU6MWVtO21hcmdpbi10b3A6MmVtfS5vdC1zZGstY29va2llLXBvbGljeSB0aHttaW4td2lkdGg6NzVweH0ub3Qtc2RrLWNvb2tpZS1wb2xpY3kgYSwub3Qtc2RrLWNvb2tpZS1wb2xpY3kgYTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZ9Lm90LXNkay1jb29raWUtcG9saWN5IHRoZWFke2JhY2tncm91bmQtY29sb3I6I2Y2ZjZmNDtmb250LXdlaWdodDpib2xkfS5vdC1zZGstY29va2llLXBvbGljeSAub3QtbW9iaWxlLWJvcmRlcntkaXNwbGF5Om5vbmV9Lm90LXNkay1jb29raWUtcG9saWN5IHNlY3Rpb257bWFyZ2luLWJvdHRvbToyZW19Lm90LXNkay1jb29raWUtcG9saWN5IHRhYmxle2JvcmRlci1jb2xsYXBzZTppbmhlcml0fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeXtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxcmVtfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSBoMywjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDQsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IGg2LCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSBwLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSBsaSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgYSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGgsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5ICNjb29raWUtcG9saWN5LWRlc2NyaXB0aW9uLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLWNvb2tpZS1wb2xpY3ktZ3JvdXAsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5ICNjb29raWUtcG9saWN5LXRpdGxle2NvbG9yOmRpbWdyYXl9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5ICNjb29raWUtcG9saWN5LWRlc2NyaXB0aW9ue21hcmdpbi1ib3R0b206MWVtfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLXN1Ymdyb3Vwe21hcmdpbi1sZWZ0OjEuNWVtfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAjY29va2llLXBvbGljeS1kZXNjcmlwdGlvbiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1jb29raWUtcG9saWN5LWdyb3VwLWRlc2MsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IC5vdC10YWJsZS1oZWFkZXIsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IGEsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHNwYW4sI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRke2ZvbnQtc2l6ZTouOWVtfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0ZCBzcGFuLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0ZCBhe2ZvbnQtc2l6ZTppbmhlcml0fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLWNvb2tpZS1wb2xpY3ktZ3JvdXB7Zm9udC1zaXplOjFlbTttYXJnaW4tYm90dG9tOi42ZW19I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstY29va2llLXBvbGljeS10aXRsZXttYXJnaW4tYm90dG9tOjEuMmVtfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeT5zZWN0aW9ue21hcmdpbi1ib3R0b206MWVtfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0aHttaW4td2lkdGg6NzVweH0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgYSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgYTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZ9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRoZWFke2JhY2tncm91bmQtY29sb3I6I2Y2ZjZmNDtmb250LXdlaWdodDpib2xkfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAub3QtbW9iaWxlLWJvcmRlcntkaXNwbGF5Om5vbmV9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHNlY3Rpb257bWFyZ2luLWJvdHRvbToyZW19I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstc3ViZ3JvdXAgdWwgbGl7bGlzdC1zdHlsZTpkaXNjO21hcmdpbi1sZWZ0OjEuNWVtfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLXN1Ymdyb3VwIHVsIGxpIGg0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZXtib3JkZXItY29sbGFwc2U6aW5oZXJpdDttYXJnaW46YXV0bztib3JkZXI6MXB4IHNvbGlkICNkN2Q3ZDc7Ym9yZGVyLXJhZGl1czo1cHg7Ym9yZGVyLXNwYWNpbmc6aW5pdGlhbDt3aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbn0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGFibGUgdGgsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlIHRke2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNkN2Q3ZDc7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjZDdkN2Q3fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZSB0cjpsYXN0LWNoaWxkIHRke2JvcmRlci1ib3R0b206MHB4fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZSB0ciB0aDpsYXN0LWNoaWxkLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZSB0ciB0ZDpsYXN0LWNoaWxke2JvcmRlci1yaWdodDowcHh9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlIC5vdC1ob3N0LCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZSAub3QtY29va2llcy10eXBle3dpZHRoOjI1JX0ub3Qtc2RrLWNvb2tpZS1wb2xpY3lbZGlyPXJ0bF17dGV4dC1hbGlnbjpsZWZ0fSNvdC1zZGstY29va2llLXBvbGljeSBoM3tmb250LXNpemU6MS41ZW19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MzBweCl7Lm90LXNkay1jb29raWUtcG9saWN5Om5vdCgjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIpIHRhYmxlLC5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSB0aGVhZCwub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgdGJvZHksLm90LXNkay1jb29raWUtcG9saWN5Om5vdCgjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIpIHRoLC5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSB0ZCwub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgdHJ7ZGlzcGxheTpibG9ja30ub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgdGhlYWQgdHJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOi05OTk5cHg7bGVmdDotOTk5OXB4fS5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSB0cnttYXJnaW46MCAwIDFlbSAwfS5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSB0cjpudGgtY2hpbGQob2RkKSwub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgdHI6bnRoLWNoaWxkKG9kZCkgYXtiYWNrZ3JvdW5kOiNmNmY2ZjR9Lm90LXNkay1jb29raWUtcG9saWN5Om5vdCgjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIpIHRke2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlZWU7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZy1sZWZ0OjUwJX0ub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgdGQ6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDoxMDAlO2xlZnQ6NnB4O3dpZHRoOjQwJTtwYWRkaW5nLXJpZ2h0OjEwcHh9Lm90LXNkay1jb29raWUtcG9saWN5Om5vdCgjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIpIC5vdC1tb2JpbGUtYm9yZGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO2JhY2tncm91bmQtY29sb3I6I2U0ZTRlNDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt0b3A6MDtsZWZ0OjQ1JTt3aWR0aDoycHh9Lm90LXNkay1jb29raWUtcG9saWN5Om5vdCgjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIpIHRkOmJlZm9yZXtjb250ZW50OmF0dHIoZGF0YS1sYWJlbCk7Zm9udC13ZWlnaHQ6Ym9sZH0ub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgbGl7d29yZC1icmVhazpicmVhay13b3JkO3dvcmQtd3JhcDpicmVhay13b3JkfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZXtvdmVyZmxvdzpoaWRkZW59I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlIHRke2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNkN2Q3ZDd9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0aGVhZCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGJvZHksI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRoLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0ZCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdHJ7ZGlzcGxheTpibG9ja30jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGFibGUgLm90LWhvc3QsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlIC5vdC1jb29raWVzLXR5cGV7d2lkdGg6YXV0b30jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdHJ7bWFyZ2luOjAgMCAxZW0gMH0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGQ6YmVmb3Jle2hlaWdodDoxMDAlO3dpZHRoOjQwJTtwYWRkaW5nLXJpZ2h0OjEwcHh9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRkOmJlZm9yZXtjb250ZW50OmF0dHIoZGF0YS1sYWJlbCk7Zm9udC13ZWlnaHQ6Ym9sZH0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgbGl7d29yZC1icmVhazpicmVhay13b3JkO3dvcmQtd3JhcDpicmVhay13b3JkfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0aGVhZCB0cntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTk5OTlweDtsZWZ0Oi05OTk5cHg7ei1pbmRleDotOTk5OX0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGFibGUgdHI6bGFzdC1jaGlsZCB0ZHtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZDdkN2Q3O2JvcmRlci1yaWdodDowcHh9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlIHRyOmxhc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tOjBweH19Iixjc3NSVEw6Ii5vdC1zZGstY29va2llLXBvbGljeXtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxNnB4fS5vdC1zZGstY29va2llLXBvbGljeS5vdFJlbEZvbnR7Zm9udC1zaXplOjFyZW19Lm90LXNkay1jb29raWUtcG9saWN5IGgzLC5vdC1zZGstY29va2llLXBvbGljeSBoNCwub3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDYsLm90LXNkay1jb29raWUtcG9saWN5IHAsLm90LXNkay1jb29raWUtcG9saWN5IGxpLC5vdC1zZGstY29va2llLXBvbGljeSBhLC5vdC1zZGstY29va2llLXBvbGljeSB0aCwub3Qtc2RrLWNvb2tpZS1wb2xpY3kgI2Nvb2tpZS1wb2xpY3ktZGVzY3JpcHRpb24sLm90LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstY29va2llLXBvbGljeS1ncm91cCwub3Qtc2RrLWNvb2tpZS1wb2xpY3kgI2Nvb2tpZS1wb2xpY3ktdGl0bGV7Y29sb3I6ZGltZ3JheX0ub3Qtc2RrLWNvb2tpZS1wb2xpY3kgI2Nvb2tpZS1wb2xpY3ktZGVzY3JpcHRpb257bWFyZ2luLWJvdHRvbToxZW19Lm90LXNkay1jb29raWUtcG9saWN5IGg0e2ZvbnQtc2l6ZToxLjJlbX0ub3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDZ7Zm9udC1zaXplOjFlbTttYXJnaW4tdG9wOjJlbX0ub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGh7bWluLXdpZHRoOjc1cHh9Lm90LXNkay1jb29raWUtcG9saWN5IGEsLm90LXNkay1jb29raWUtcG9saWN5IGE6aG92ZXJ7YmFja2dyb3VuZDojZmZmfS5vdC1zZGstY29va2llLXBvbGljeSB0aGVhZHtiYWNrZ3JvdW5kLWNvbG9yOiNmNmY2ZjQ7Zm9udC13ZWlnaHQ6Ym9sZH0ub3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LW1vYmlsZS1ib3JkZXJ7ZGlzcGxheTpub25lfS5vdC1zZGstY29va2llLXBvbGljeSBzZWN0aW9ue21hcmdpbi1ib3R0b206MmVtfS5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZXtib3JkZXItY29sbGFwc2U6aW5oZXJpdH0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3l7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6MXJlbX0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDMsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IGg0LCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSBoNiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgcCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgbGksI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IGEsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRoLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAjY29va2llLXBvbGljeS1kZXNjcmlwdGlvbiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1jb29raWUtcG9saWN5LWdyb3VwLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAjY29va2llLXBvbGljeS10aXRsZXtjb2xvcjpkaW1ncmF5fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAjY29va2llLXBvbGljeS1kZXNjcmlwdGlvbnttYXJnaW4tYm90dG9tOjFlbX0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1zdWJncm91cHttYXJnaW4tcmlnaHQ6MS41ZW19I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5ICNjb29raWUtcG9saWN5LWRlc2NyaXB0aW9uLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLWNvb2tpZS1wb2xpY3ktZ3JvdXAtZGVzYywjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXRhYmxlLWhlYWRlciwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgYSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgc3Bhbiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGR7Zm9udC1zaXplOi45ZW19I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRkIHNwYW4sI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRkIGF7Zm9udC1zaXplOmluaGVyaXR9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstY29va2llLXBvbGljeS1ncm91cHtmb250LXNpemU6MWVtO21hcmdpbi1ib3R0b206LjZlbX0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1jb29raWUtcG9saWN5LXRpdGxle21hcmdpbi1ib3R0b206MS4yZW19I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5PnNlY3Rpb257bWFyZ2luLWJvdHRvbToxZW19I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRoe21pbi13aWR0aDo3NXB4fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSBhLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSBhOmhvdmVye2JhY2tncm91bmQ6I2ZmZn0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGhlYWR7YmFja2dyb3VuZC1jb2xvcjojZjZmNmY0O2ZvbnQtd2VpZ2h0OmJvbGR9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IC5vdC1tb2JpbGUtYm9yZGVye2Rpc3BsYXk6bm9uZX0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgc2VjdGlvbnttYXJnaW4tYm90dG9tOjJlbX0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1zdWJncm91cCB1bCBsaXtsaXN0LXN0eWxlOmRpc2M7bWFyZ2luLXJpZ2h0OjEuNWVtfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLXN1Ymdyb3VwIHVsIGxpIGg0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZXtib3JkZXItY29sbGFwc2U6aW5oZXJpdDttYXJnaW46YXV0bztib3JkZXI6MXB4IHNvbGlkICNkN2Q3ZDc7Ym9yZGVyLXJhZGl1czo1cHg7Ym9yZGVyLXNwYWNpbmc6aW5pdGlhbDt3aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbn0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGFibGUgdGgsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlIHRke2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNkN2Q3ZDc7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNkN2Q3ZDd9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlIHRyOmxhc3QtY2hpbGQgdGR7Ym9yZGVyLWJvdHRvbTowcHh9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlIHRyIHRoOmxhc3QtY2hpbGQsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxlIHRyIHRkOmxhc3QtY2hpbGR7Ym9yZGVyLWxlZnQ6MHB4fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZSAub3QtaG9zdCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGFibGUgLm90LWNvb2tpZXMtdHlwZXt3aWR0aDoyNSV9Lm90LXNkay1jb29raWUtcG9saWN5W2Rpcj1ydGxde3RleHQtYWxpZ246cmlnaHR9I290LXNkay1jb29raWUtcG9saWN5IGgze2ZvbnQtc2l6ZToxLjVlbX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUzMHB4KXsub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgdGFibGUsLm90LXNkay1jb29raWUtcG9saWN5Om5vdCgjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIpIHRoZWFkLC5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSB0Ym9keSwub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgdGgsLm90LXNkay1jb29raWUtcG9saWN5Om5vdCgjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIpIHRkLC5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSB0cntkaXNwbGF5OmJsb2NrfS5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSB0aGVhZCB0cntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTk5OTlweDtyaWdodDotOTk5OXB4fS5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSB0cnttYXJnaW46MCAwIDFlbSAwfS5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSB0cjpudGgtY2hpbGQob2RkKSwub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgdHI6bnRoLWNoaWxkKG9kZCkgYXtiYWNrZ3JvdW5kOiNmNmY2ZjR9Lm90LXNkay1jb29raWUtcG9saWN5Om5vdCgjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIpIHRke2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlZWU7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZy1yaWdodDo1MCV9Lm90LXNkay1jb29raWUtcG9saWN5Om5vdCgjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIpIHRkOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTtyaWdodDo2cHg7d2lkdGg6NDAlO3BhZGRpbmctbGVmdDoxMHB4fS5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSAub3QtbW9iaWxlLWJvcmRlcntkaXNwbGF5OmlubGluZS1ibG9jaztiYWNrZ3JvdW5kLWNvbG9yOiNlNGU0ZTQ7cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OjEwMCU7dG9wOjA7cmlnaHQ6NDUlO3dpZHRoOjJweH0ub3Qtc2RrLWNvb2tpZS1wb2xpY3k6bm90KCNvdC1zZGstY29va2llLXBvbGljeS12MikgdGQ6YmVmb3Jle2NvbnRlbnQ6YXR0cihkYXRhLWxhYmVsKTtmb250LXdlaWdodDpib2xkfS5vdC1zZGstY29va2llLXBvbGljeTpub3QoI290LXNkay1jb29raWUtcG9saWN5LXYyKSBsaXt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d29yZC13cmFwOmJyZWFrLXdvcmR9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRhYmxle292ZXJmbG93OmhpZGRlbn0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGFibGUgdGR7Ym9yZGVyOm5vbmU7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2Q3ZDdkN30jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGFibGUsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRoZWFkLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0Ym9keSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGgsI290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IHRkLCNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0cntkaXNwbGF5OmJsb2NrfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZSAub3QtaG9zdCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGFibGUgLm90LWNvb2tpZXMtdHlwZXt3aWR0aDphdXRvfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0cnttYXJnaW46MCAwIDFlbSAwfSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0ZDpiZWZvcmV7aGVpZ2h0OjEwMCU7d2lkdGg6NDAlO3BhZGRpbmctbGVmdDoxMHB4fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0ZDpiZWZvcmV7Y29udGVudDphdHRyKGRhdGEtbGFiZWwpO2ZvbnQtd2VpZ2h0OmJvbGR9I290LXNkay1jb29raWUtcG9saWN5LXYyLm90LXNkay1jb29raWUtcG9saWN5IGxpe3dvcmQtYnJlYWs6YnJlYWstd29yZDt3b3JkLXdyYXA6YnJlYWstd29yZH0jb3Qtc2RrLWNvb2tpZS1wb2xpY3ktdjIub3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGhlYWQgdHJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOi05OTk5cHg7cmlnaHQ6LTk5OTlweDt6LWluZGV4Oi05OTk5fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZSB0cjpsYXN0LWNoaWxkIHRke2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNkN2Q3ZDc7Ym9yZGVyLWxlZnQ6MHB4fSNvdC1zZGstY29va2llLXBvbGljeS12Mi5vdC1zZGstY29va2llLXBvbGljeSB0YWJsZSB0cjpsYXN0LWNoaWxkIHRkOmxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbTowcHh9fSJ9fX0sUnM9Im9wdC1vdXQiLEZzPShNcy5wcm90b3R5cGUuaW5pdGlhbGl6ZUZlYXR1cmVzQW5kU3BlY2lhbFB1cnBvc2VzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztfLm9uZVRydXN0SUFCQ29uc2VudC5mZWF0dXJlcz1bXSxfLm9uZVRydXN0SUFCQ29uc2VudC5zcGVjaWFsUHVycG9zZXM9W10sTC5Hcm91cHMuZm9yRWFjaChmdW5jdGlvbihlKXt0LmNoZWNrQW5kUG9wdWxhdGVGZWF0QW5kU3BsUHVyKGUpfSl9LE1zLnByb3RvdHlwZS5jaGVja0FuZFBvcHVsYXRlRmVhdEFuZFNwbFB1cj1mdW5jdGlvbihlKXt2YXIgdCxvPXRoaXMsbj1rLkdyb3VwVHlwZXM7ZS5UeXBlIT09bi5GdCYmZS5UeXBlIT09bi5TcGxfUHVyfHwoKHQ9e30pLmdyb3VwSWQ9ZS5PcHRhbm9uR3JvdXBJZCx0LnB1cnBvc2VJZD1lLlB1cnBvc2VJZCx0LnZhbHVlPSEwLChlLlR5cGU9PT1uLkZ0P18ub25lVHJ1c3RJQUJDb25zZW50LmZlYXR1cmVzOl8ub25lVHJ1c3RJQUJDb25zZW50LnNwZWNpYWxQdXJwb3NlcykucHVzaCh0KSksZS5TdWJHcm91cHMmJmUuU3ViR3JvdXBzLmZvckVhY2goZnVuY3Rpb24oZSl7by5jaGVja0FuZFBvcHVsYXRlRmVhdEFuZFNwbFB1cihlKX0pfSxNcy5wcm90b3R5cGUuaW5pdEdycHNBbmRIb3N0cz1mdW5jdGlvbigpe3RoaXMuaW5pdGlhbGl6ZUdyb3VwRGF0YShiLmNvbnNlbnRhYmxlR3JwcyksTy5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKXx8Yi5pbml0Q29uc2VudGFibGVJbXBsaWVkQ29uc2VudEdyb3VwKGIuY29uc2VudGFibGVHcnBzKSxMLnNob3dDb29raWVMaXN0JiZJLmlzT3B0T3V0RW5hYmxlZCgpP3RoaXMuaW5pdGlhbGl6ZUhvc3REYXRhKGIuY29uc2VudGFibGVHcnBzKTooXy5ob3N0c0NvbnNlbnQ9W10sUG8ud3JpdGVIc3RQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCkpfSxNcy5wcm90b3R5cGUuZW5zdXJlSHRtbEdyb3VwRGF0YUluaXRpYWxpc2VkPWZ1bmN0aW9uKCl7dmFyIGUsdCxvLG47dGhpcy5pbml0R3Jwc0FuZEhvc3RzKCksXy5zaG93R2VuZXJhbFZlbmRvcnMmJihJby5wb3B1bGF0ZUdlblZlbmRvckxpc3RzKCksSW8uaW5pdEdlblZlbmRvckNvbnNlbnQoKSksTC5Jc0lhYkVuYWJsZWQmJih0aGlzLmluaXRpYWxpemVJQUJEYXRhKCksdGhpcy5pbml0aWFsaXplRmVhdHVyZXNBbmRTcGVjaWFsUHVycG9zZXMoKSksXy52c0lzQWN0aXZlQW5kT3B0T3V0JiZ0aGlzLmluaXRpYWxpemVWZW5kb3JzU2VydmljZSgpLE8uc2V0T3JVcGRhdGUzcmRQYXJ0eUlBQkNvbnNlbnRGbGFnKCksTy5zZXRHZW9sb2NhdGlvbkluQ29va2llcygpLEwuSXNDb25zZW50TG9nZ2luZ0VuYWJsZWQmJihlPXdpbmRvdy5PbmVUcnVzdC5kYXRhU3ViamVjdFBhcmFtc3x8e30sdD1ULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCwiaVR5cGUiKSxvPSIiLG49ITEsXy5pc1YyU3R1YiYmZS5pZCYmZS50b2tlbiYmKHR8fGIuZm9yY2VDcmVhdGVUcnhMb2NhbENvbnNlbnRJc0dyZWF0ZXIpJiYobj0hMCxvPUNlW3RdKSxCcy5jcmVhdGVDb25zZW50VHhuKCExLG8sITEsbikpfSxNcy5wcm90b3R5cGUuaW5pdGlhbGl6ZVZlbmRvcnNTZXJ2aWNlPWZ1bmN0aW9uKCl7dmFyIG89Ty5pc0FsZXJ0Qm94Q2xvc2VkQW5kVmFsaWQoKSxlPVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULFF0KSxuPVAuc3RyVG9NYXAoZSk7Xy5nZXRWZW5kb3JzSW5Eb21haW4oKS5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7bi5oYXModCl8fChlPSFvJiZELmNoZWNrSXNBY3RpdmVCeURlZmF1bHQoZS5ncm91cFJlZiksbi5zZXQodCxlKSl9KSxfLnZzQ29uc2VudD1ufSxNcy5wcm90b3R5cGUuaW5pdGlhbGl6ZUdyb3VwRGF0YT1mdW5jdGlvbihlKXt2YXIgdDtULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxZdCk/KERvLnN5bmNocm9uaXNlQ29va2llR3JvdXBEYXRhKGUpLHQ9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsWXQpLF8uZ3JvdXBzQ29uc2VudD1QLnN0clRvQXJyKHQpLF8uZ3BjQ29uc2VudFR4biYmKEwuSXNDb25zZW50TG9nZ2luZ0VuYWJsZWQmJkJzLmNyZWF0ZUNvbnNlbnRUeG4oITEsIkdQQyB2YWx1ZSBjaGFuZ2VkIiwhMSwhMCksXy5ncGNDb25zZW50VHhuPSExLG1vLnNldEFsZXJ0Qm94Q2xvc2VkKCEwKSkpOihfLmdyb3Vwc0NvbnNlbnQ9W10sZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PUQuY2hlY2tJc0FjdGl2ZUJ5RGVmYXVsdChlKSYmZS5IYXNDb25zZW50T3B0T3V0O2UuU3RhdHVzPT09Zi5JTkFDVElWRV9MQU5ESU5HX1BBR0UmJiFPLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpJiZfby5pc0xhbmRpbmdQYWdlKCkmJih0PSExKSxfLmdyb3Vwc0NvbnNlbnQucHVzaChlLkN1c3RvbUdyb3VwSWQrIjoiKyh0PyIxIjoiMCIpKSxiLmdwY0VuYWJsZWQmJmUuSXNHcGNFbmFibGVkJiZlLlN0YXR1cz09PWYuSU5BQ1RJVkUmJihlLmlzRGVuaWVkQnlHUEM9ITApLGIuRE5URW5hYmxlZCYmZS5Jc0RudEVuYWJsZWQmJmUuU3RhdHVzPT09Zi5BQ1RJVkUmJihlLmlzRGVuaWVkQnlETlQ9ITApfSksTC5Jc0NvbnNlbnRMb2dnaW5nRW5hYmxlZCYmd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImJlZm9yZXVubG9hZCIsdGhpcy5jb25zZW50RGVmYXVsQ2FsbCkpLEwuSXNDb25zZW50TG9nZ2luZ0VuYWJsZWQmJmIubWFrZUdQQ09yRE5UQ29uc2VudENhbGwmJiFPLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpJiYoYi5tYWtlR1BDT3JETlRDb25zZW50Q2FsbD0hMSxiLmdwY0VuYWJsZWQmJmUuc29tZShmdW5jdGlvbihlKXtyZXR1cm4hMD09PWUuaXNEZW5pZWRCeUdQQ30pP0JzLmNyZWF0ZUNvbnNlbnRUeG4oITEsIkdQQyB2YWx1ZSBjaGFuZ2VkIiwhMSwhMCwhMSwiR1BDIik6Yi5ETlRFbmFibGVkJiZlLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuITA9PT1lLmlzRGVuaWVkQnlETlR9KSYmQnMuY3JlYXRlQ29uc2VudFR4bighMSwiRE5UIHZhbHVlIGNoYW5nZWQiLCExLCEwLCExLCJETlQiKSl9LE1zLnByb3RvdHlwZS5pbml0aWFsaXplSG9zdERhdGE9ZnVuY3Rpb24oZSl7dmFyIHQscjtULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCwiaG9zdHMiKT8oRG8uc3luY2hyb25pc2VDb29raWVIb3N0RGF0YSgpLHQ9VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsImhvc3RzIiksXy5ob3N0c0NvbnNlbnQ9UC5zdHJUb0Fycih0KSxlLmZvckVhY2goZnVuY3Rpb24oZSl7RC5pc0Fsd2F5c0FjdGl2ZUdyb3VwKGUpJiZlLkhvc3RzLmxlbmd0aCYmZS5Ib3N0cy5mb3JFYWNoKGZ1bmN0aW9uKGUpe18ub25lVHJ1c3RBbHdheXNBY3RpdmVIb3N0cy5wdXNoKGUuSG9zdElkKX0pfSkpOihfLmhvc3RzQ29uc2VudD1bXSxyPXt9LGUuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgbz1ELmlzQWx3YXlzQWN0aXZlR3JvdXAoZSksbj1fLnN5bmNSZXF1aXJlZD9Eby5ncm91cEhhc0NvbnNlbnQoZSk6RC5jaGVja0lzQWN0aXZlQnlEZWZhdWx0KGUpO2UuSG9zdHMubGVuZ3RoJiZlLkhvc3RzLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ7cltlLkhvc3RJZF0/RG8udXBkYXRlSG9zdFN0YXR1cyhlLG4pOihyW2UuSG9zdElkXT0hMCxvJiZfLm9uZVRydXN0QWx3YXlzQWN0aXZlSG9zdHMucHVzaChlLkhvc3RJZCksdD1Eby5pc0hvc3RQYXJ0T2ZBbHdheXNBY3RpdmVHcm91cChlLkhvc3RJZCksXy5ob3N0c0NvbnNlbnQucHVzaChlLkhvc3RJZCsodHx8bj8iOjEiOiI6MCIpKSl9KX0pKX0sTXMucHJvdG90eXBlLmNvbnNlbnREZWZhdWxDYWxsPWZ1bmN0aW9uKCl7dmFyIGU9cGFyc2VJbnQoVC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5JTlRFUkFDVElPTl9DT1VOVCksMTApOyFpc05hTihlKSYmMCE9PWV8fChtby50cmlnZ2VyR29vZ2xlQW5hbHl0aWNzRXZlbnQoTm8sIkNsaWNrIiwiTm8gaW50ZXJhY3Rpb24iKSxMLklzQ29uc2VudExvZ2dpbmdFbmFibGVkJiZCcy5jcmVhdGVDb25zZW50VHhuKCEwKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYmVmb3JldW5sb2FkIix4cy5jb25zZW50RGVmYXVsQ2FsbCkpfSxNcy5wcm90b3R5cGUuZmV0Y2hBc3NldHM9ZnVuY3Rpb24ocyl7cmV0dXJuIHZvaWQgMD09PXMmJihzPW51bGwpLEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHQsbyxuLHIsaTtyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6cmV0dXJuIHQ9Uy5tb2R1bGVJbml0aWFsaXplcixpPU8uaXNBbGVydEJveENsb3NlZEFuZFZhbGlkKCksbz0hIXMsaT14cy5pc0ZldGNoQmFubmVyKHQuSXNTdXBwcmVzc0Jhbm5lcixpKSxuPXhzLmNvb2tpZVNldHRpbmdCdG5QcmVzZW50KCksbj1iLmlzSWFiMm9ydjJUZW1wbGF0ZT9MLlBDU2hvd1BlcnNpc3RlbnRDb29raWVzSG92ZXJCdXR0b24mJighTC5QQ2VudGVyRHluYW1pY1JlbmRlcmluZ0VuYWJsZXx8KEwuUENlbnRlckR5bmFtaWNSZW5kZXJpbmdFbmFibGUsIW4pKTpMLlBDU2hvd1BlcnNpc3RlbnRDb29raWVzSG92ZXJCdXR0b24scj0idHJ1ZSI9PT1fLnVybFBhcmFtcy5nZXQoYXQpLF8uaGlkZUJhbm5lcj1yLFs0LFByb21pc2UuYWxsKFshaXx8TC5Ob0Jhbm5lcnx8cj9Qcm9taXNlLnJlc29sdmUobnVsbCk6S3QuZ2V0QmFubmVyQ29udGVudChvLHMpLCF0LklzU3VwcHJlc3NQQ3x8Xy5pc1BDVmlzaWJsZT9LdC5nZXRQY0NvbnRlbnQoKTpQcm9taXNlLnJlc29sdmUobnVsbCksbj9LdC5nZXRDU0J0bkNvbnRlbnQoKTpQcm9taXNlLnJlc29sdmUobnVsbCksS3QuZ2V0Q29tbW9uU3R5bGVzKCldKV07Y2FzZSAxOnJldHVybiBpPWUuc2VudCgpLHI9aVswXSxvPWlbMV0sdD1pWzJdLG49aVszXSx4cy5mZXRjaENvbnRlbnQocixvLHQsbikseHMuc2V0Q29va2llTGlzdEdyb3VwRGF0YSgpLFsyXX19KX0pfSxNcy5wcm90b3R5cGUuZmV0Y2hDb250ZW50PWZ1bmN0aW9uKGUsdCxvLG4pe3ZhciByO2UmJihyPWUuaHRtbCxTLmZwLkNvb2tpZVYyU1NSfHwocj1hdG9iKGUuaHRtbCkpLHRoaXMuYmFubmVyR3JvdXA9e25hbWU6ZS5uYW1lLGh0bWw6cixjc3M6ZS5jc3N9KSx0JiYodGhpcy5wcmVmZXJlbmNlQ2VudGVyR3JvdXA9e25hbWU6dC5uYW1lLGh0bWw6YXRvYih0Lmh0bWwpLGNzczp0LmNzc30sUy5pc1YyVGVtcGxhdGU9TC5QQ1RlbXBsYXRlVXBncmFkZSYmL290UGNQYW5lbHxvdFBjQ2VudGVyfG90UGNUYWIvLnRlc3QodC5uYW1lKSksbyYmKHRoaXMuY3NCdG5Hcm91cD17bmFtZToiQ29va2llU2V0dGluZ3NCdXR0b24iLGh0bWw6YXRvYihvLmh0bWwpLGNzczpvLmNzc30pLG4mJih0aGlzLmNvbW1vblN0eWxlcz1uKX0sTXMucHJvdG90eXBlLmNvb2tpZVNldHRpbmdCdG5QcmVzZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHYoIiNvdC1zZGstYnRuIikubGVuZ3RofHx2KCIub3Qtc2RrLXNob3ctc2V0dGluZ3MiKS5sZW5ndGh8fHYoIi5vcHRhbm9uLXNob3ctc2V0dGluZ3MiKS5sZW5ndGh9LE1zLnByb3RvdHlwZS5pc0ZldGNoQmFubmVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIWV8fEwuU2hvd0FsZXJ0Tm90aWNlJiYhdCYmZSYmIXYoIiNvbmV0cnVzdC1iYW5uZXItc2RrIikubGVuZ3RofSxNcy5wcm90b3R5cGUuc2V0Q29va2llTGlzdEdyb3VwRGF0YT1mdW5jdGlvbigpe3ZhciBlO1MuZnAuQ29va2llVjJUcmFja2luZ1RlY2hub2xvZ2llc3x8KGU9KG5ldyBIcykuYXNzZXRzKCkseHMuY29va2llTGlzdEdyb3VwPXtuYW1lOmUubmFtZSxodG1sOmUuaHRtbCxjc3M6TC51c2VSVEw/ZS5jc3NSVEw6ZS5jc3N9KX0sTXMucHJvdG90eXBlLmluaXRpYWxpemVJYWJQdXJwb3NlQ29uc2VudE9uUmVsb2FkPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztiLmNvbnNlbnRhYmxlSWFiR3Jwcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3Quc2V0SUFCQ29uc2VudChlLCExKSxlLklzTGVnSW50VG9nZ2xlPSEwLHQuc2V0SUFCQ29uc2VudChlLCExKX0pfSxNcy5wcm90b3R5cGUuaW5pdGlhbGl6ZUlBQkRhdGE9ZnVuY3Rpb24obyxuLHIpe3ZhciBpPXRoaXMsZT0odm9pZCAwPT09byYmKG89ITEpLHZvaWQgMD09PW4mJihuPSExKSx2b2lkIDA9PT1yJiYocj0hMSksXy5vbmVUcnVzdElBQkNvbnNlbnQpLHQ9KGUucHVycG9zZT1bXSxlLnZlbmRvcnM9W10sZS5sZWdJbnRWZW5kb3JzPVtdLGUuc3BlY2lhbEZlYXR1cmVzPVtdLGUubGVnaW1hdGVJbnRlcmVzdD1bXSxfLmFkZHRsVmVuZG9ycykscz1MLlZlbmRvckNvbnNlbnRNb2RlbD09PVJzO3QudmVuZG9yQ29uc2VudD1bXSwhZS5JQUJDb29raWVWYWx1ZXx8b3x8bnx8Ty5yZWNvbnNlbnRSZXF1aXJlZCgpPyhiLmNvbnNlbnRhYmxlSWFiR3Jwcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0O24mJiFyP2kuc2V0SUFCQ29uc2VudChlLEQuaXNBbHdheXNBY3RpdmVHcm91cChlKSk6cj9lLkhhc0NvbnNlbnRPcHRPdXQmJmkuc2V0SUFCQ29uc2VudChlLCExKToodD1vJiZlLkhhc0NvbnNlbnRPcHRPdXQsaS5zZXRJQUJDb25zZW50KGUsdCksZS5UeXBlPT09ay5Hcm91cFR5cGVzLlB1ciYmKGUuSXNMZWdJbnRUb2dnbGU9ITAsaS5zZXRJQUJDb25zZW50KGUsZS5IYXNMZWdJbnRPcHRPdXQpKSl9KSxMLklzSWFiRW5hYmxlZCYmciYmKF8ub25lVHJ1c3RJQUJDb25zZW50LmxlZ2ltYXRlSW50ZXJlc3Q9Xy52ZW5kb3JzLnNlbGVjdGVkTGVnSW50LnNsaWNlKCkpLHQ9b3x8IW4mJnMsciYmdGhpcy5pYWIuc2F2ZVZlbmRvclN0YXR1cyhyKSxPLnNldElBQlZlbmRvcih0LHIsbiksIU8ucmVjb25zZW50UmVxdWlyZWQoKXx8b3x8bnx8Ty5yZXNldFRDTW9kZWwoKSk6KHRoaXMuaW5pdGlhbGl6ZUlhYlB1cnBvc2VDb25zZW50T25SZWxvYWQoKSx5by5wb3B1bGF0ZUdvb2dsZUNvbnNlbnQoKSx5by5wb3B1bGF0ZVZlbmRvckFuZFB1cnBvc2VGcm9tQ29va2llRGF0YSgpKX0sTXMucHJvdG90eXBlLmNhblNvZnRPcHRJbkluc2VydEZvckdyb3VwPWZ1bmN0aW9uKGUpe3ZhciBlPUQuZ2V0R3JvdXBCeUlkKGUpO2lmKGUpcmV0dXJuIGU9ZSYmIWUuUGFyZW50P2U6RC5nZXRQYXJlbnRHcm91cChlLlBhcmVudCksImluYWN0aXZlIGxhbmRpbmdwYWdlIiE9PUQuZ2V0R3JwU3RhdHVzKGUpLnRvTG93ZXJDYXNlKCl8fCFfby5pc0xhbmRpbmdQYWdlKCl9LE1zLnByb3RvdHlwZS5zZXRJQUJDb25zZW50PWZ1bmN0aW9uKGUsdCl7ZS5UeXBlPT09ay5Hcm91cFR5cGVzLlNwbF9GdD90aGlzLnNldElhYlNwZWNpRmVhdHVyZUNvbnNlbnQoZSx0KTplLklzTGVnSW50VG9nZ2xlPyh0aGlzLnNldElhYkxlZ0ludENvbnNlbnQoZSx0KSxlLklzTGVnSW50VG9nZ2xlPSExKTp0aGlzLnNldElhYlB1cnBvc2VDb25zZW50KGUsdCl9LE1zLnByb3RvdHlwZS5zZXRJYWJQdXJwb3NlQ29uc2VudD1mdW5jdGlvbihvLG4pe3ZhciByPSExO18ub25lVHJ1c3RJQUJDb25zZW50LnB1cnBvc2U9Xy5vbmVUcnVzdElBQkNvbnNlbnQucHVycG9zZS5tYXAoZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zcGxpdCgiOiIpWzBdO3JldHVybiB0PT09by5JYWJHcnBJZCYmKGU9dCsiOiIrbixyPSEwKSxlfSkscnx8Xy5vbmVUcnVzdElBQkNvbnNlbnQucHVycG9zZS5wdXNoKG8uSWFiR3JwSWQrIjoiK24pfSxNcy5wcm90b3R5cGUuc2V0SWFiTGVnSW50Q29uc2VudD1mdW5jdGlvbihvLG4pe3ZhciByPSExO18ub25lVHJ1c3RJQUJDb25zZW50LmxlZ2ltYXRlSW50ZXJlc3Q9Xy5vbmVUcnVzdElBQkNvbnNlbnQubGVnaW1hdGVJbnRlcmVzdC5tYXAoZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zcGxpdCgiOiIpWzBdO3JldHVybiB0PT09by5JYWJHcnBJZCYmKGU9dCsiOiIrbixyPSEwKSxlfSkscnx8Xy5vbmVUcnVzdElBQkNvbnNlbnQubGVnaW1hdGVJbnRlcmVzdC5wdXNoKG8uSWFiR3JwSWQrIjoiK24pfSxNcy5wcm90b3R5cGUuc2V0SWFiU3BlY2lGZWF0dXJlQ29uc2VudD1mdW5jdGlvbihvLG4pe3ZhciByPSExO18ub25lVHJ1c3RJQUJDb25zZW50LnNwZWNpYWxGZWF0dXJlcz1fLm9uZVRydXN0SUFCQ29uc2VudC5zcGVjaWFsRmVhdHVyZXMubWFwKGZ1bmN0aW9uKGUpe3ZhciB0PWUuc3BsaXQoIjoiKVswXTtyZXR1cm4gdD09PW8uSWFiR3JwSWQmJihlPXQrIjoiK24scj0hMCksZX0pLHJ8fF8ub25lVHJ1c3RJQUJDb25zZW50LnNwZWNpYWxGZWF0dXJlcy5wdXNoKG8uSWFiR3JwSWQrIjoiK24pfSxNcyk7ZnVuY3Rpb24gTXMoKXt0aGlzLmlhYj1nfXMucHJvdG90eXBlLmdldFNlYXJjaFF1ZXJ5PWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMsZT1lLnRyaW0oKS5zcGxpdCgvXHMrL2cpO3JldHVybiBuZXcgUmVnRXhwKGUubWFwKGZ1bmN0aW9uKGUpe3JldHVybiB0LmVzY2FwZVJlZ0V4cChlKX0pLmpvaW4oInwiKSsiKC4rKT8iLCJnaSIpfSxzLnByb3RvdHlwZS5lc2NhcGVSZWdFeHA9ZnVuY3Rpb24oZSl7cmV0dXJuIGUucmVwbGFjZSgvWy0vXFxeJCorPy4oKXxbXF17fV0vZywiXFwkJiIpfSxzLnByb3RvdHlwZS5zZXRHbG9iYWxGaWx0ZXJlZExpc3Q9ZnVuY3Rpb24oZSl7cmV0dXJuIF8uY3VycmVudEdsb2JhbEZpbHRlcmVkTGlzdD1lfSxzLnByb3RvdHlwZS52ZW5kb3JIYXNQdXJwb3NlPWZ1bmN0aW9uKGUsdCl7dmFyIG89ITEsbj1wYXJzZUludChiLmlhYkdycElkTWFwW3RdKTtyZXR1cm4tMTx0LmluZGV4T2Yoay5JZFBhdHRlcm5zLkZ0KT8oZS5mZWF0dXJlc3x8W10pLmZvckVhY2goZnVuY3Rpb24oZSl7ZS5mZWF0dXJlSWQ9PT1uJiYobz0hMCl9KTotMTx0LmluZGV4T2Yoay5JZFBhdHRlcm5zLlNwbF9GdCk/ZS5zcGVjaWFsRmVhdHVyZXMuZm9yRWFjaChmdW5jdGlvbihlKXtlLmZlYXR1cmVJZD09PW4mJihvPSEwKX0pOi0xPHQuaW5kZXhPZihrLklkUGF0dGVybnMuU3BsX1B1cik/KGUuc3BlY2lhbFB1cnBvc2VzfHxbXSkuZm9yRWFjaChmdW5jdGlvbihlKXtlLnB1cnBvc2VJZD09PW4mJihvPSEwKX0pOihlLnB1cnBvc2VzLmZvckVhY2goZnVuY3Rpb24oZSl7ZS5wdXJwb3NlSWQ9PT1uJiYobz0hMCl9KSxlLmxlZ0ludFB1cnBvc2VzLmZvckVhY2goZnVuY3Rpb24oZSl7ZS5wdXJwb3NlSWQ9PT1uJiYobz0hMCl9KSksb30scy5wcm90b3R5cGUuZmlsdGVyTGlzdD1mdW5jdGlvbih0LGUsbyl7dmFyIG4scixpPW8mJm8ubGVuZ3RoO3JldHVybiIiIT09dHx8aT8oaSYmKGk9digiI29uZXRydXN0LXBjLXNkayAiK0EuUF9GbHRyX09wdGlvbnMrIiBpbnB1dCIpLmVsLmxlbmd0aCxyPSEobj1bXSksaSE9PW8ubGVuZ3RoP2UuZm9yRWFjaChmdW5jdGlvbih0KXtyPSEwLHQudmVuZG9yTmFtZSYmby5mb3JFYWNoKGZ1bmN0aW9uKGUpe2cudmVuZG9ySGFzUHVycG9zZSh0LGUpJiZuLnB1c2godCl9KX0pOm49ZSxyJiYobj1uLmZpbHRlcihmdW5jdGlvbihlLHQsbyl7cmV0dXJuIG8uaW5kZXhPZihlKT09PXR9KSksdGhpcy5zZXRHbG9iYWxGaWx0ZXJlZExpc3QobikpLCIiPT09dD9fLmN1cnJlbnRHbG9iYWxGaWx0ZXJlZExpc3Q6Xy5jdXJyZW50R2xvYmFsRmlsdGVyZWRMaXN0LmZpbHRlcihmdW5jdGlvbihlKXtpZihlLnZlbmRvck5hbWUpcmV0dXJuIGUudmVuZG9yTmFtZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHQudG9Mb3dlckNhc2UoKSl9KSk6dGhpcy5zZXRHbG9iYWxGaWx0ZXJlZExpc3QoZSl9LHMucHJvdG90eXBlLmxvYWRWZW5kb3JMaXN0PWZ1bmN0aW9uKGUsdCl7dm9pZCAwPT09ZSYmKGU9IiIpO3ZhciBvPV8udmVuZG9ycyxvPShfLmN1cnJlbnRHbG9iYWxGaWx0ZXJlZExpc3Q9by5saXN0LGU/KG8uc2VhcmNoUGFyYW09ZSxfLmZpbHRlckJ5SUFCQ2F0ZWdvcmllcz1bXSxPbi51cGRhdGVGaWx0ZXJTZWxlY3Rpb24oITEpKTpvLnNlYXJjaFBhcmFtIT09ZT9vLnNlYXJjaFBhcmFtPSIiOnQ9Xy5maWx0ZXJCeUlBQkNhdGVnb3JpZXMsdGhpcy5maWx0ZXJMaXN0KG8uc2VhcmNoUGFyYW0sby5saXN0LHQpKTt2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250ZW50KS5lbFswXS5zY3JvbGxUb3A9MCxfLmFkZHRsVmVuZG9yc0xpc3QmJjA8T2JqZWN0LmtleXMoXy5hZGR0bFZlbmRvcnNMaXN0KS5sZW5ndGgmJih0aGlzLmhhc0dvb2dsZVZlbmRvcnM9ITApLHRoaXMuaW5pdFZlbmRvcnNEYXRhKGUsbyl9LHMucHJvdG90eXBlLnNlYXJjaFZlbmRvcnM9ZnVuY3Rpb24oZSx0LG8sbil7aWYobil7dmFyIHIsaSxzPXRoaXMuZ2V0U2VhcmNoUXVlcnkobiksYT0wO2ZvcihyIGluIHQpciYmKGk9bz09PW1lLkdvb2dsZVZlbmRvcj9yOnRbcl0uVmVuZG9yQ3VzdG9tSWQsaT12KCIiK2UudmVuZG9yQWNjQnRuK2kpLmVsWzBdLnBhcmVudEVsZW1lbnQscy5sYXN0SW5kZXg9MCxzLnRlc3QodFtyXVtlLm5hbWVdKT8oZChpLHRoaXMuX2Rpc3BsYXlOdWxsLCEwKSxhKyspOmQoaSwiZGlzcGxheTogbm9uZTsiLCEwKSk7MD09PWE/KHYoZS5hY2NJZCkuaGlkZSgpLG89PT1tZS5Hb29nbGVWZW5kb3I/dGhpcy5oYXNHb29nbGVWZW5kb3JzPSExOnRoaXMuaGFzR2VuVmVuZG9ycz0hMSk6KG89PT1tZS5Hb29nbGVWZW5kb3I/dGhpcy5oYXNHb29nbGVWZW5kb3JzPSEwOnRoaXMuaGFzR2VuVmVuZG9ycz0hMCx2KGUuYWNjSWQpLnNob3coKSksdGhpcy5zaG93RW1wdHlSZXN1bHRzKCF0aGlzLmhhc0dvb2dsZVZlbmRvcnMmJiF0aGlzLmhhc0lhYlZlbmRvcnMmJiF0aGlzLmhhc0dlblZlbmRvcnMsbil9ZWxzZSBmb3IodmFyIGw9digiICIrZS52ZW5MaXN0SWQrJyBsaVtzdHlsZV49ImRpc3BsYXk6IG5vbmUiXScpLmVsLGM9MDtjPGwubGVuZ3RoO2MrKylkKGxbY10sdGhpcy5fZGlzcGxheU51bGwsITApO249digiI29uZXRydXN0LXBjLXNkayAiK2Uuc2VsZWN0QWxsRXZudEhuZGxyKS5lbFswXTtkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGUudmVuTGlzdElkKycgbGk6bm90KFtzdHlsZV49ImRpc3BsYXk6IG5vbmUiXSkgJytlLmN0Z2wrIiA+IGlucHV0W2NoZWNrZWRdIik/UC5zZXRDaGVja2VkQXR0cmlidXRlKCIiLG4sITApOlAuc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiIixuLCExKSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGUudmVuTGlzdElkKycgbGk6bm90KFtzdHlsZV49ImRpc3BsYXk6IG5vbmUiXSkgJytlLmN0Z2wrIiA+IGlucHV0Om5vdChbY2hlY2tlZF0pIik/bi5wYXJlbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQodGhpcy5MSU5FX1RIUk9VR0hfQ0xBU1MpOm4ucGFyZW50RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuTElORV9USFJPVUdIX0NMQVNTKX0scy5wcm90b3R5cGUuaW5pdEdvb2dsZVZlbmRvcnM9ZnVuY3Rpb24oKXt0aGlzLnBvcHVsYXRlQWRkdGxWZW5kb3JzKF8uYWRkdGxWZW5kb3JzTGlzdCksdGhpcy52ZW5BZHRsU2VsQWxsVGdsRXZlbnQoKX0scy5wcm90b3R5cGUuaW5pdEdlblZlbmRvcnM9ZnVuY3Rpb24oKXt0aGlzLnBvcHVsYXRlR2VuZXJhbFZlbmRvcnMoKSxMLkdlblZlbk9wdE91dCYmTC5HZW5lcmFsVmVuZG9ycyYmTC5HZW5lcmFsVmVuZG9ycy5sZW5ndGgmJnRoaXMuZ2VuVmVuU2VsZWN0QWxsVGdsRXZlbnQoKX0scy5wcm90b3R5cGUucmVzZXRBZGR0bFZlbmRvcnM9ZnVuY3Rpb24oKXtnLnNlYXJjaFZlbmRvcnMoZy5nb29nbGVTZWFyY2hTZWxlY3RvcnMsXy5hZGR0bFZlbmRvcnNMaXN0LG1lLkdvb2dsZVZlbmRvciksdGhpcy5zaG93Q29uc2VudEhlYWRlcigpfSxzLnByb3RvdHlwZS52ZW5BZHRsU2VsQWxsVGdsRXZlbnQ9ZnVuY3Rpb24oKXtnLnNlbGVjdEFsbEV2ZW50SGFuZGxlcih7dmVuZG9yc0xpc3Q6JyNvdC1hZGR0bC12ZW5sc3QgbGk6bm90KFtzdHlsZV49ImRpc3BsYXk6IG5vbmUiXSkgLm90LXZlbi1hZHRsY3RnbCBpbnB1dCcsc2VsQWxsQ250cjoiI29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWFkdGx2ZW5jbnRyIixzZWxBbGxDaGtib3g6IiNvbmV0cnVzdC1wYy1zZGsgI290LXNlbGFsbC1hZHRsdmVuLWhhbmRsZXIifSl9LHMucHJvdG90eXBlLmdlblZlblNlbGVjdEFsbFRnbEV2ZW50PWZ1bmN0aW9uKCl7dmFyIGU9e3ZlbmRvcnNMaXN0OkEuUF9HdmVuX0xpc3QrJyBsaTpub3QoW3N0eWxlXj0iZGlzcGxheTogbm9uZSJdKSAub3QtdmVuLWd2Y3RnbCBpbnB1dCcsc2VsQWxsQ250cjoiI29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWdudmVuY250ciIsc2VsQWxsQ2hrYm94OiIjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtZ252ZW4taGFuZGxlciJ9O2cuc2VsZWN0QWxsRXZlbnRIYW5kbGVyKGUpfSxzLnByb3RvdHlwZS5oYW5kbGVTZWxlY3RBbGxDaGJveFNlbGVjdGlvbj1mdW5jdGlvbihlLHQsbyl7Zm9yKHZhciBuPSEwLHI9ITAsaT0wO2k8ZS5sZW5ndGgmJihlW2ldLmNoZWNrZWQ/cj0hMTpuPSExLG58fHIpO2krKyk7bnx8cj9vLmNsYXNzTGlzdC5yZW1vdmUodGhpcy5MSU5FX1RIUk9VR0hfQ0xBU1MpOihvLmNsYXNzTGlzdC5hZGQodGhpcy5MSU5FX1RIUk9VR0hfQ0xBU1MpLFAuc2V0QXJpYUNoZWNrZWRBdHRyaWJ1dGUoIiIsdCwibWl4ZWQiKSksdC5jaGVja2VkPSExLG4/KHQuY2hlY2tlZD0hMCxQLnNldEFyaWFDaGVja2VkQXR0cmlidXRlKCIiLHQsdC5jaGVja2VkKSk6ciYmUC5zZXRBcmlhQ2hlY2tlZEF0dHJpYnV0ZSgiIix0LHQuY2hlY2tlZCksUC5zZXRDaGVja2VkQXR0cmlidXRlKCIiLHQsdC5jaGVja2VkKX0scy5wcm90b3R5cGUuc2VsZWN0QWxsRXZlbnRIYW5kbGVyPWZ1bmN0aW9uKGUpe3ZhciB0PXYoZS52ZW5kb3JzTGlzdCkuZWwsbz12KGUuc2VsQWxsQ250cikuZWxbMF0sZT12KGUuc2VsQWxsQ2hrYm94KS5lbFswXTtnLmhhbmRsZVNlbGVjdEFsbENoYm94U2VsZWN0aW9uKHQsZSxvKX0scy5wcm90b3R5cGUudmVuZG9yTGVnSW50VG9nZ2xlRXZlbnQ9ZnVuY3Rpb24oKXt2YXIgZT12KEEuUF9WZW5kb3JfQ29udGFpbmVyKycgbGk6bm90KFtzdHlsZV49ImRpc3BsYXk6IG5vbmUiXSkgLicrQS5QX1Zlbl9MdGdsKyIgaW5wdXQiKS5lbCx0PXYoIiNvbmV0cnVzdC1wYy1zZGsgIyIrQS5QX1NlbF9BbGxfVmVuZG9yX0xlZ19FbCkuZWxbMF0sbz12KCIjb25ldHJ1c3QtcGMtc2RrICNzZWxlY3QtYWxsLXZlbmRvci1sZWctaGFuZGxlciIpLmVsWzBdO2cuaGFuZGxlU2VsZWN0QWxsQ2hib3hTZWxlY3Rpb24oZSxvLHQpfSxzLnByb3RvdHlwZS52ZW5kb3JzTGlzdEV2ZW50PWZ1bmN0aW9uKCl7dmFyIGU9dihBLlBfVmVuZG9yX0NvbnRhaW5lcisnIGxpOm5vdChbc3R5bGVePSJkaXNwbGF5OiBub25lIl0pIC4nK0EuUF9WZW5fQ3RnbCsiIGlucHV0IikuZWwsdD12KCIjb25ldHJ1c3QtcGMtc2RrICMiK0EuUF9TZWxfQWxsX1ZlbmRvcl9Db25zZW50X0VsKS5lbFswXSxvPXYoIiNvbmV0cnVzdC1wYy1zZGsgI3NlbGVjdC1hbGwtdmVuZG9yLWdyb3Vwcy1oYW5kbGVyIikuZWxbMF07Zy5oYW5kbGVTZWxlY3RBbGxDaGJveFNlbGVjdGlvbihlLG8sdCl9LHMucHJvdG90eXBlLnNob3dFbXB0eVJlc3VsdHM9ZnVuY3Rpb24oZSx0LG8pe3ZvaWQgMD09PW8mJihvPSExKTt2YXIgbj12KCIjb25ldHJ1c3QtcGMtc2RrICNuby1yZXN1bHRzIik7ZT90aGlzLnNldE5vUmVzdWx0c0NvbnRlbnQodCxvKToodigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfQ29udGVudCkucmVtb3ZlQ2xhc3MoIm5vLXJlc3VsdHMiKSxuLmxlbmd0aCYmbi5yZW1vdmUoKSl9LHMucHJvdG90eXBlLnBsYXlTZWFyY2hTdGF0dXM9ZnVuY3Rpb24oZSl7dmFyIHQ9ZT9kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKEEuUF9Ib3N0X0NudHIrIiA+IGxpIik6ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChBLlBfVmVuZG9yX0NvbnRhaW5lcisnID4gbGk6bm90KFtzdHlsZSQ9Im5vbmU7Il0pLCcrQS5QX0d2ZW5fTGlzdCsnID4gbGk6bm90KFtzdHlsZSQ9Im5vbmU7Il0pJyksbz10Lmxlbmd0aCxuPXYoJyNvbmV0cnVzdC1wYy1zZGsgW3JvbGU9InN0YXR1cyJdJyk7bz9uLnRleHQodC5sZW5ndGgrIiAiKyhlPyJob3N0IjoidmVuZG9yIikrKDE8bz8icyI6IiIpKyIgcmV0dXJuZWQuIik6bi5lbFswXS50ZXh0Q29udGVudD0iIn0scy5wcm90b3R5cGUuc2V0Tm9SZXN1bHRzQ29udGVudD1mdW5jdGlvbihlLHQpe3ZvaWQgMD09PXQmJih0PSExKTt2YXIgbyxuLHIsaT12KCIjb25ldHJ1c3QtcGMtc2RrICNuby1yZXN1bHRzIikuZWxbMF07aWYoIWkpcmV0dXJuIHQ9Zy5nZXROb1Jlc3VsdHNGb3VuZCh0KSxvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpLHQ9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUodCkscj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksby5pZD0ibm8tcmVzdWx0cyIsby5zZXRBdHRyaWJ1dGUoImFyaWEtbGl2ZSIsImFzc2VydGl2ZSIpLG8uc2V0QXR0cmlidXRlKCJhcmlhLWF0b21pYyIsInRydWUiKSxyLmlkPSJ1c2VyLXRleHQiLHIuaW5uZXJUZXh0PWUsbi5hcHBlbmRDaGlsZChyKSxuLmFwcGVuZENoaWxkKHQpLG8uYXBwZW5kQ2hpbGQobiksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfQ29udGVudCkuYWRkQ2xhc3MoIm5vLXJlc3VsdHMiKSx2KCIjdmVuZG9yLXNlYXJjaC1oYW5kbGVyIikuZWxbMF0uc2V0QXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IixvLmlkKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250ZW50KS5hcHBlbmQobyk7aS5xdWVyeVNlbGVjdG9yKCJzcGFuIikuaW5uZXJUZXh0PWV9LHMucHJvdG90eXBlLnNlYXJjaEhvc3RMaXN0PWZ1bmN0aW9uKGUpe3ZhciB0PXt9LG89W107Xy5zaG93VHJhY2tpbmdUZWNoPyh0PV8uY3VycmVudFRyYWNraW5nVGVjaCxvPSh0PWU/Zy5nZXRGaWx0ZXJlZEFkZGl0aW9uYVRlY2h0RGF0YShlLHQpOnQpLkNvb2tpZXMpOihvPV8uY3VycmVudEdsb2JhbEZpbHRlcmVkTGlzdCxlJiYobz10aGlzLnNlYXJjaExpc3QoZSxvKSkpLHRoaXMuaW5pdEhvc3REYXRhKHtzZWFyY2hTdHJpbmc6ZSxjb29raWVzTGlzdDpvLGFkZFRlY2hEYXRhOnR9KX0scy5wcm90b3R5cGUuc2VhcmNoTGlzdD1mdW5jdGlvbihlLHQpe3ZhciBvPXRoaXMuZ2V0U2VhcmNoUXVlcnkoZSk7cmV0dXJuIHQuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBvLmxhc3RJbmRleD0wLG8udGVzdChlLkRpc3BsYXlOYW1lfHxlLkhvc3ROYW1lKX0pfSxzLnByb3RvdHlwZS5zZXRMaXN0U2VhcmNoVmFsdWVzPWZ1bmN0aW9uKGUpe3ZhciB0PUwuUENlbnRlclZlbmRvclNlYXJjaEFyaWFMYWJlbCxvPUwuUENlbnRlclZlbmRvckxpc3RTZWFyY2gsbj1MLlBDZW50ZXJWZW5kb3JzTGlzdFRleHQscj1MLlBDZW50ZXJWZW5kb3JMaXN0RmlsdGVyQXJpYTtlPT09X2UuY29va2llcyYmKHQ9TC5QQ2VudGVyQ29va2llU2VhcmNoQXJpYUxhYmVsLG89TC5QQ2VudGVyQ29va2llTGlzdFNlYXJjaCxuPUwuUENlbnRlckNvb2tpZXNMaXN0VGV4dCxyPUwuUENlbnRlckNvb2tpZUxpc3RGaWx0ZXJBcmlhKSxfLmNvb2tpZUxpc3RUeXBlIT09eWUuSG9zdEFuZEdlblZlbiYmXy5jb29raWVMaXN0VHlwZSE9PXllLkhvc3R8fCFfLnNob3dUcmFja2luZ1RlY2h8fChuPUwuQWRkaXRpb25hbFRlY2hub2xvZ2llc0NvbmZpZy5QQ1RyYWNraW5nVGVjaFRpdGxlKSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9UaXRsZSsnLCAjb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtdGl0bGUgcFthcmlhLWxldmVsPSIzIl0nKS5pbm5lclRleHQ9bjt2KCIjZmlsdGVyLWJ0bi1oYW5kbGVyIikuZWxbMF0uc2V0QXR0cmlidXRlKHRoaXMuQVJJQV9MQUJFTF9BVFRSSUJVVEUscisiICIrbik7ZT12KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9TZWFyY2hfSW5wdXQpO2UuZWxbMF0ucGxhY2Vob2xkZXI9byxlLmF0dHIoImFyaWEtbGFiZWwiLHQpfSxzLnByb3RvdHlwZS5pbml0SG9zdERhdGE9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zZWFyY2hTdHJpbmcsbz1lLmNvb2tpZXNMaXN0LGU9ZS5hZGRUZWNoRGF0YSxuPShfLm9wdGFub25Ib3N0TGlzdD1vLCExKSxyPSh0aGlzLnNldEJhY2tCdG5UeHQoKSx2KEEuUF9WZW5kb3JfTGlzdCsiICNzZWxlY3QtYWxsLXRleHQtY29udGFpbmVyIHAiKS5odG1sKEwuUENlbnRlckFsbG93QWxsQ29uc2VudFRleHQpLGcuZ2V0SG9zdFBhcmVudENvbnRhaW5lcigpKSxpPW8mJjA9PT1vLmxlbmd0aCxzPShfLnNob3dUcmFja2luZ1RlY2gmJihpPTA9PT1lLkxvY2FsU3RvcmFnZXMubGVuZ3RoJiYwPT09ZS5TZXNzaW9uU3RvcmFnZXMubGVuZ3RoJiYoMD09PWUuQ29va2llcy5sZW5ndGh8fDA9PT1lLkNvb2tpZXNbMF0uQ29va2llcy5sZW5ndGgpKSxfLmNvb2tpZUxpc3RUeXBlPT09eWUuSG9zdCksaT0odGhpcy5zaG93RW1wdHlSZXN1bHRzKGksdCxzKSx0aGlzLnNldEhvc3RMaXN0U2VhcmNoVmFsdWVzKCksdigiI2ZpbHRlci1idG4taGFuZGxlciIpLmVsWzBdKSx0PUkuZ2V0VmVuZG9yUGFnZUhlYWRlclRleHQoKTtpLnNldEF0dHJpYnV0ZSh0aGlzLkFSSUFfTEFCRUxfQVRUUklCVVRFLEwuUENlbnRlckNvb2tpZUxpc3RGaWx0ZXJBcmlhKyIgIit0KTt2KCIjZmlsdGVyLWJ0bi1oYW5kbGVyIHRpdGxlIikuaHRtbChMLlBDZW50ZXJDb29raWVMaXN0RmlsdGVyQXJpYSksUy5pc1YyVGVtcGxhdGUmJnYoIiNvdC1zZWwtYmxrIHNwYW46Zmlyc3QtY2hpbGQiKS5odG1sKEwuUENlbnRlckFsbG93QWxsQ29uc2VudFRleHR8fEwuQ29uc2VudFRleHQpO2Zvcih2YXIgYT1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksbD0wO2w8by5sZW5ndGg7bCsrKXt2YXIgYz1fLmhvc3RzLmhvc3RUZW1wbGF0ZS5jbG9uZU5vZGUoITApLGQ9b1tsXS5EaXNwbGF5TmFtZXx8b1tsXS5Ib3N0TmFtZTt0aGlzLmNyZWF0ZUhvc3RBY2NvcmRpb25zKGQsYyxsKSxuPXRoaXMuY3JlYXRlSG9zdENoZWNrYm94ZXMoZCxvLGwsYyxuKSx0aGlzLnBvcHVsYXRlSG9zdERhdGFJbnRvRE9NRWxlbWVudHMoYyxvLGQsbCxhKX1nLnNldENvb2tpZXNJbnNpZGVIb3N0Q29udGFpbmVyKHIsYSxlKTtzPTE9PT1vLmxlbmd0aCYmb1swXS5Ib3N0TmFtZT09PUwuUENGaXJzdFBhcnR5Q29va2llTGlzdFRleHQ7aWYoSS5pc09wdE91dEVuYWJsZWQoKSYmIXMpe1Auc2V0RGlzYWJsZWRBdHRyaWJ1dGUoIiNvbmV0cnVzdC1wYy1zZGsgI3NlbGVjdC1hbGwtaG9zdHMtZ3JvdXBzLWhhbmRsZXIiLG51bGwsIW4pO2Zvcih2YXIgdT12KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0hvc3RfQ250cisiIC5vdC1ob3N0LXRnbCBpbnB1dCIpLmVsLHA9MDtwPHUubGVuZ3RoO3ArKyl1W3BdLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmhvc3RzTGlzdEV2ZW50KTt2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1NlbGVjdF9DbnRyKS5yZW1vdmVDbGFzcygib3QtaGlkZSIpLHRoaXMuaG9zdHNMaXN0RXZlbnQoKX1lbHNlIHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfU2VsZWN0X0NudHIpLmFkZENsYXNzKCJvdC1oaWRlIil9LHMucHJvdG90eXBlLnNldENvb2tpZXNJbnNpZGVIb3N0Q29udGFpbmVyPWZ1bmN0aW9uKGUsdCxvKXt2YXIgbixyO18uc2hvd1RyYWNraW5nVGVjaCYmbz8wPChvPWcuZ2V0QWRkaXRpb25hbFRlY2hub2xvZ2llc0h0bWwobykpLmNoaWxkcmVuLmxlbmd0aCYmKChuPW8ucXVlcnlTZWxlY3RvcigiLiIrdGhpcy5URUNIX0NPT0tJRVNfU0VMRUNUT1IrIiAiK3RoaXMuQUNDX1RYVCkpJiYoKHI9ZS5xdWVyeVNlbGVjdG9yKCJ1bCIrQS5QX0hvc3RfQ250cikpLmFwcGVuZENoaWxkKHQpLG4uYXBwZW5kQ2hpbGQocikpLGUuYXBwZW5kQ2hpbGQobykpOmUuYXBwZW5kQ2hpbGQodCl9LHMucHJvdG90eXBlLmdldEhvc3RQYXJlbnRDb250YWluZXI9ZnVuY3Rpb24oKXt2YXIgZT1udWxsO3JldHVybiBfLnNob3dUcmFja2luZ1RlY2g/KGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfQ29udGVudCsiIC5vdC1zZGstY29sdW1uIiksZy5yZW1vdmVUcmFja2luZ1RlY2hBY2NvcmlvbnMoKSk6KGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfQ29udGVudCsiIHVsIitBLlBfSG9zdF9DbnRyKSkuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudCgiIiksZX0scy5wcm90b3R5cGUucmVtb3ZlVHJhY2tpbmdUZWNoQWNjb3Jpb25zPWZ1bmN0aW9uKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9WZW5kb3JfQ29udGVudCsiIC5vdC1zZGstY29sdW1uIiksdD1lLnF1ZXJ5U2VsZWN0b3IoIi4iK3RoaXMuVEVDSF9DT09LSUVTX1NFTEVDVE9SKyIgdWwiK0EuUF9Ib3N0X0NudHIpO2lmKHQ/KHQuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudCgiIiksZS5hcHBlbmRDaGlsZCh0KSk6KHQ9ZS5xdWVyeVNlbGVjdG9yKCJ1bCIrQS5QX0hvc3RfQ250cikpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoIiIpLGUpZm9yKHZhciBvPWUucXVlcnlTZWxlY3RvckFsbCgiLm90LWFkZC10ZWNoIiksbj1vLmxlbmd0aC0xOzA8PW47bi0tKXt2YXIgcj1vLml0ZW0obik7ZS5yZW1vdmVDaGlsZChyKX19LHMucHJvdG90eXBlLnNldEhvc3RMaXN0U2VhcmNoVmFsdWVzPWZ1bmN0aW9uKCl7dmFyIGU9Yi5wY05hbWU7TC5HZW5lcmFsVmVuZG9yc0VuYWJsZWQmJihTLmlzVjJUZW1wbGF0ZXx8ZSE9PXN0KSYmdGhpcy5zZXRMaXN0U2VhcmNoVmFsdWVzKF9lLnZlbmRvcnMpLEwuR2VuZXJhbFZlbmRvcnNFbmFibGVkfHwhUy5pc1YyVGVtcGxhdGUmJmU9PT1zdHx8dGhpcy5zZXRMaXN0U2VhcmNoVmFsdWVzKF9lLmNvb2tpZXMpfSxzLnByb3RvdHlwZS5jcmVhdGVIb3N0QWNjb3JkaW9ucz1mdW5jdGlvbihlLHQsbyl7dmFyIG49dC5xdWVyeVNlbGVjdG9yKCIuIitBLlBfSG9zdF9CeCksZT0obiYmUC5zZXRIdG1sQXR0cmlidXRlcyhuLHtpZDoiaG9zdC0iK28sbmFtZToiaG9zdC0iK28sImFyaWEtbGFiZWwiOmUrIiAiK0wuUENWaWV3Q29va2llc1RleHQsImFyaWEtY29udHJvbHMiOiJvdC1ob3N0LWFjYy10eHQtIitvfSksdC5xdWVyeVNlbGVjdG9yKEEuUF9BY2NfVHh0KSk7ZSYmUC5zZXRIdG1sQXR0cmlidXRlcyhlLHtpZDoib3QtaG9zdC1hY2MtdHh0LSIrbyxyb2xlOiJyZWdpb24iLCJhcmlhLWxhYmVsbGVkYnkiOm4uaWR9KX0scy5wcm90b3R5cGUuY3JlYXRlSG9zdENoZWNrYm94ZXM9ZnVuY3Rpb24oZSx0LG8sbixyKXt2YXIgaT1JLmlzT3B0T3V0RW5hYmxlZCgpLHM9Uy5pc1YyVGVtcGxhdGUsYT1iLnBjTmFtZTtyZXR1cm4haXx8dFtvXS5pc0ZpcnN0UGFydHk/KGk9bi5xdWVyeVNlbGVjdG9yKCIub3QtaG9zdC10Z2wiKSkmJmkucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChpKTooaT12b2lkIDAscz8oKGk9RS5jaGtib3hFbC5jbG9uZU5vZGUoITApKS5jbGFzc0xpc3QuYWRkKCJvdC1ob3N0LXRnbCIpLGkucXVlcnlTZWxlY3RvcigiaW5wdXQiKS5jbGFzc0xpc3QuYWRkKCJob3N0LWNoZWNrYm94LWhhbmRsZXIiKSxhPT09c3Q/bi5xdWVyeVNlbGVjdG9yKEEuUF9Ib3N0X0hkcikuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmViZWdpbiIsaSk6bi5xdWVyeVNlbGVjdG9yKEEuUF9UZ2xfQ250cikuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLGkpKTppPW4ucXVlcnlTZWxlY3RvcigiLm90LWhvc3QtdGdsIiksUC5zZXRIdG1sQXR0cmlidXRlcyhpLnF1ZXJ5U2VsZWN0b3IoImlucHV0Iikse2lkOiJvdC1ob3N0LWNoa2JveC0iK28sImFyaWEtbGFiZWwiOmUsaG9zdElkOnRbb10uSG9zdElkLGNrVHlwZTp0W29dLlR5cGV9KSxpLnF1ZXJ5U2VsZWN0b3IoImxhYmVsIikuc2V0QXR0cmlidXRlKCJmb3IiLCJvdC1ob3N0LWNoa2JveC0iK28pLCh0W29dLlR5cGU9PT1oZS5HZW5WZW5kb3I/Xy5nZW5WZW5kb3JzQ29uc2VudFt0W29dLkhvc3RJZF06LTEhPT1fLmhvc3RzQ29uc2VudC5pbmRleE9mKHRbb10uSG9zdElkKyI6MSIpKT8oUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsaS5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLCEwKSx0W29dLmlzQWN0aXZlP1Auc2V0RGlzYWJsZWRBdHRyaWJ1dGUobnVsbCxpLnF1ZXJ5U2VsZWN0b3IoImlucHV0IiksITApOnI9cnx8ITApOihyPSEwLFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLGkucXVlcnlTZWxlY3RvcigiaW5wdXQiKSwhMSkpLGkucXVlcnlTZWxlY3RvcihBLlBfTGFiZWxfVHh0KS5pbm5lclRleHQ9ZSkscn0scy5wcm90b3R5cGUucG9wdWxhdGVIb3N0RGF0YUludG9ET01FbGVtZW50cz1mdW5jdGlvbih0LG8sZSxuLHIpe3ZhciBpLHM9dGhpcyxhPVMuaXNWMlRlbXBsYXRlLGw9Yi5wY05hbWUsbD0oTC5QQ0FjY29yZGlvblN0eWxlPT09Y2UuUGx1c01pbnVzP3QucXVlcnlTZWxlY3RvcihBLlBfQWNjX0hlYWRlcikuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJhZnRlcmJlZ2luIixFLnBsdXNNaW51c0VsLmNsb25lTm9kZSghMCkpOmEmJihpPUUuYXJyb3dFbC5jbG9uZU5vZGUoITApLGw9PT1zdD90LnF1ZXJ5U2VsZWN0b3IoQS5QX0hvc3RfVmlld19Db29raWVzKS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImFmdGVyZW5kIixpKTp0LnF1ZXJ5U2VsZWN0b3IoQS5QX1RnbF9DbnRyKS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsaSkpLEwuQWRkTGlua3NUb0Nvb2tpZXBlZGlhJiYhb1tuXS5pc0ZpcnN0UGFydHkmJihlPSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSAgY2xhc3M9ImNvb2tpZS1sYWJlbCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9jb29raWVwZWRpYS5jby51ay9ob3N0Lycrb1tuXS5Ib3N0TmFtZSsnIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWw9Im5vb3BlbmVyIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9Il9ibGFuayJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcrZSsnJm5ic3A7PHNwYW4gY2xhc3M9Im90LXNjcm4tcmRyIj4nK0wuTmV3V2luVHh0KyI8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgIiksdC5xdWVyeVNlbGVjdG9yKEEuUF9Ib3N0X1RpdGxlKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KGUpLHQucXVlcnlTZWxlY3RvcihBLlBfSG9zdF9EZXNjKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KG9bbl0uRGVzY3JpcHRpb24pLG9bbl0uUHJpdmFjeVBvbGljeSYmTC5wY1Nob3dDb29raWVIb3N0JiZ0LnF1ZXJ5U2VsZWN0b3IoQS5QX0hvc3RfRGVzYykuaW5zZXJ0QWRqYWNlbnRIVE1MKCJhZnRlcmVuZCIsbS5nZXRJbm5lckh0bWxDb250ZW50KCc8YSBocmVmPSInK29bbl0uUHJpdmFjeVBvbGljeSsnIiByZWw9Im5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+JysoYT9MLlBDR1ZlblBvbGljeVR4dDpMLlBDQ29va2llUG9saWN5VGV4dCkrJyZuYnNwOzxzcGFuIGNsYXNzPSJvdC1zY3JuLXJkciI+JytMLk5ld1dpblR4dCsiPC9zcGFuPjwvYT4iKSksdC5xdWVyeVNlbGVjdG9yKEEuUF9Ib3N0X1ZpZXdfQ29va2llcykpO3JldHVybiFfLnNob3dHZW5lcmFsVmVuZG9yc3x8b1tuXS5Db29raWVzJiZvW25dLkNvb2tpZXMubGVuZ3RoP0wuUENWaWV3Q29va2llc1RleHQmJihsLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoTC5QQ1ZpZXdDb29raWVzVGV4dCkpOihQLnJlbW92ZUNoaWxkKGwpLHYodCkuYWRkQ2xhc3MoIm90LWhpZGUtYWNjIikpLG9bbl0uRGVzY3JpcHRpb24mJkwucGNTaG93Q29va2llSG9zdHx8KGk9dC5xdWVyeVNlbGVjdG9yKEEuUF9Ib3N0X0Rlc2MpKS5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGkpLHYodC5xdWVyeVNlbGVjdG9yKEEuUF9Ib3N0X09wdCkpLmh0bWwoIiIpLG51bGwhPShhPW9bbl0uQ29va2llcykmJmEuZm9yRWFjaChmdW5jdGlvbihlKXtlPXMuZ2V0Q29va2llRWxlbWVudChlLG9bbl0pO3YodC5xdWVyeVNlbGVjdG9yKEEuUF9Ib3N0X09wdCkpLmFwcGVuZChlKX0pLHIuYXBwZW5kKHQpLGV9LHMucHJvdG90eXBlLmhvc3RzTGlzdEV2ZW50PWZ1bmN0aW9uKCl7dmFyIGU9digiI29uZXRydXN0LXBjLXNkayAiK0EuUF9Ib3N0X0NudHIrIiAub3QtaG9zdC10Z2wgaW5wdXQiKS5lbCx0PXYoIiNvbmV0cnVzdC1wYy1zZGsgIyIrQS5QX1NlbF9BbGxfSG9zdF9FbCkuZWxbMF0sbz12KCIjb25ldHJ1c3QtcGMtc2RrICNzZWxlY3QtYWxsLWhvc3RzLWdyb3Vwcy1oYW5kbGVyIikuZWxbMF0sbj12KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0Nuc250X0hlYWRlcikuZWxbMF07Zy5oYW5kbGVTZWxlY3RBbGxDaGJveFNlbGVjdGlvbihlLG8sdCksbyYmbiYmby5zZXRBdHRyaWJ1dGUodGhpcy5BUklBX0xBQkVMX0FUVFJJQlVURSxuLnRleHRDb250ZW50KyIgIitMLlBDZW50ZXJTZWxlY3RBbGxWZW5kb3JzVGV4dCl9LHMucHJvdG90eXBlLmxvYWRIb3N0TGlzdD1mdW5jdGlvbihlLHQpe3ZhciBvPXt9LG49W10sbj1fLnNob3dUcmFja2luZ1RlY2g/KG89Zy5nZXRBZGRpdGlvbmFsVGVjaG5vbG9naWVzRGF0YUZyb21Hcm91cCh0KSwoXy5jdXJyZW50VHJhY2tpbmdUZWNoPW8pLkNvb2tpZXMpOmcuZ2V0Q29tYmluZWRDb29raWVMaXN0KHQpO18uY3VycmVudEdsb2JhbEZpbHRlcmVkTGlzdD1uLHRoaXMuaW5pdEhvc3REYXRhKHtzZWFyY2hTdHJpbmc6ZSxjb29raWVzTGlzdDpuLGFkZFRlY2hEYXRhOm99KX0scy5wcm90b3R5cGUuZ2V0Q29tYmluZWRDb29raWVMaXN0PWZ1bmN0aW9uKGUpe3ZhciB0LG89W10sbj1bXTtyZXR1cm4gXy5jb29raWVMaXN0VHlwZSE9PXllLkdlblZlbiYmKG49KHQ9Zy5nZXRGaXJzdHNBbmRUaGlyZENvb2tpc0Zyb21Hcm91cHMoZSkpLmZpcnN0UGFydHlDb29raWVzTGlzdCxvPXQudGhpcmRQYXJ0eUNvb2tpZXNMaXN0LG4ubGVuZ3RoKSYmby51bnNoaWZ0KHtIb3N0TmFtZTpMLlBDRmlyc3RQYXJ0eUNvb2tpZUxpc3RUZXh0LERpc3BsYXlOYW1lOkwuUENGaXJzdFBhcnR5Q29va2llTGlzdFRleHQsSG9zdElkOnRoaXMuRklSU1RfUEFSVFlfQ09PS0lFU19HUk9VUF9OQU1FLGlzRmlyc3RQYXJ0eTohMCxDb29raWVzOm4sRGVzY3JpcHRpb246IiJ9KSxfLnNob3dHZW5lcmFsVmVuZG9ycz8odD10aGlzLmdldEZpbHRlcmVkR2VuVmVuZG9yc0xpc3QoZSksVShvLHRoaXMubWFwR2VuVmVuZG9yTGlzdFRvSG9zdEZvcm1hdCh0KSkpOm99LHMucHJvdG90eXBlLm1hcEdlblZlbmRvckxpc3RUb0hvc3RGb3JtYXQ9ZnVuY3Rpb24oZSl7cmV0dXJuIGUubWFwKGZ1bmN0aW9uKGUpe3JldHVybntDb29raWVzOmUuQ29va2llcyxEaXNwbGF5TmFtZTplLk5hbWUsSG9zdE5hbWU6ZS5OYW1lLEhvc3RJZDplLlZlbmRvckN1c3RvbUlkLERlc2NyaXB0aW9uOmUuRGVzY3JpcHRpb24sVHlwZTpoZS5HZW5WZW5kb3IsUHJpdmFjeVBvbGljeTplLlByaXZhY3lQb2xpY3lVcmwsaXNBY3RpdmU6LTE8Xy5hbHdheXNBY3RpdmVHZW5WZW5kb3JzLmluZGV4T2YoZS5WZW5kb3JDdXN0b21JZCl9fSl9LHMucHJvdG90eXBlLm1hcEdlblZlbmRvclRvSG9zdEZvcm1hdD1mdW5jdGlvbihlKXtyZXR1cm57Q29va2llczplLkNvb2tpZXMsRGlzcGxheU5hbWU6ZS5OYW1lLEhvc3ROYW1lOmUuTmFtZSxIb3N0SWQ6ZS5WZW5kb3JDdXN0b21JZCxEZXNjcmlwdGlvbjplLkRlc2NyaXB0aW9uLFR5cGU6aGUuR2VuVmVuZG9yfX0scy5wcm90b3R5cGUuZ2V0RmlsdGVyZWRHZW5WZW5kb3JzTGlzdD1mdW5jdGlvbih0KXt2YXIgZSxvPVtdLG49W107cmV0dXJuIHQubGVuZ3RoPyhMLkdyb3Vwcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe1UoZS5TdWJHcm91cHMsW2VdKS5mb3JFYWNoKGZ1bmN0aW9uKGUpey0xIT09dC5pbmRleE9mKGUuQ3VzdG9tR3JvdXBJZCkmJmUuR2VuZXJhbFZlbmRvcnNJZHMmJmUuR2VuZXJhbFZlbmRvcnNJZHMuZm9yRWFjaChmdW5jdGlvbihlKXtvLnB1c2goZSl9KX0pfSksZT1MLkdlbmVyYWxWZW5kb3JzLG8ubGVuZ3RoP2UuZmlsdGVyKGZ1bmN0aW9uKGUpe2lmKC0xPG8uaW5kZXhPZihlLlZlbmRvckN1c3RvbUlkKSlyZXR1cm4gZX0pOm4pOkwuR2VuZXJhbFZlbmRvcnN9LHMucHJvdG90eXBlLmluaXRWZW5kb3JzRGF0YT1mdW5jdGlvbihlLHQpe3ZhciBvPXRoaXMsbj10LHQ9Xy52ZW5kb3JzLmxpc3Qscj0odGhpcy5zZXRCYWNrQnRuVHh0KCksdihBLlBfVmVuZG9yX0xpc3QrIiAjc2VsZWN0LWFsbC10ZXh0LWNvbnRhaW5lciBwIikuaHRtbChMLlBDZW50ZXJBbGxvd0FsbENvbnNlbnRUZXh0KSxnLnNldENvbnNlbnRMZWdJbnRBbmRIZWFkZXJUZXh0KCksSS5nZXRWZW5kb3JQYWdlSGVhZGVyVGV4dCgpKTtpZih2KCIjb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItYnRuLWhhbmRsZXIiKS5lbFswXS5zZXRBdHRyaWJ1dGUodGhpcy5BUklBX0xBQkVMX0FUVFJJQlVURSxMLlBDZW50ZXJWZW5kb3JMaXN0RmlsdGVyQXJpYSsiICIrciksdigiI29uZXRydXN0LXBjLXNkayAjZmlsdGVyLWJ0bi1oYW5kbGVyIHRpdGxlIikuaHRtbChMLlBDZW50ZXJWZW5kb3JMaXN0RmlsdGVyQXJpYSksdGhpcy5oYXNJYWJWZW5kb3JzPTA8bi5sZW5ndGgsdGhpcy5zaG93RW1wdHlSZXN1bHRzKCF0aGlzLmhhc0dvb2dsZVZlbmRvcnMmJiF0aGlzLmhhc0lhYlZlbmRvcnMmJiF0aGlzLmhhc0dlblZlbmRvcnMsZSwhMSksZy5oaWRlT3JTaG93VmVuZG9yTGlzdChuKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250YWluZXIrIiAuIitBLlBfVmVuX0J4KS5sZW5ndGghPT10Lmxlbmd0aCYmdGhpcy5hdHRhY2hWZW5kb3JzVG9ET00oKSxuLmxlbmd0aCE9PXQubGVuZ3RoKXQuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD12KEEuUF9WZW5kb3JfQ29udGFpbmVyKyIgI0lBQiIrZS52ZW5kb3JJZCkuZWxbMF0ucGFyZW50RWxlbWVudDstMT09PW4uaW5kZXhPZihlKT9kKHQsImRpc3BsYXk6IG5vbmU7IiwhMCk6ZCh0LG8uX2Rpc3BsYXlOdWxsLCEwKX0pO2Vsc2UgZm9yKHZhciBpPXYoQS5QX1ZlbmRvcl9Db250YWluZXIrJyBsaVtzdHlsZV49ImRpc3BsYXk6IG5vbmUiXScpLmVsLHM9MDtzPGkubGVuZ3RoO3MrKylkKGlbc10sdGhpcy5fZGlzcGxheU51bGwsITApOyFTLmlzVjJUZW1wbGF0ZSYmYi5wY05hbWU9PT1zdHx8dGhpcy5zZXRMaXN0U2VhcmNoVmFsdWVzKF9lLnZlbmRvcnMpO3I9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3Zkci1sc3QtZHNjIik7IXImJkwuUENlbnRlclZlbmRvckxpc3REZXNjVGV4dCYmKChyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKSkuaWQ9InZkci1sc3QtZHNjIix2KHIpLmh0bWwoTC5QQ2VudGVyVmVuZG9yTGlzdERlc2NUZXh0KSxiLnBjTmFtZSE9PXN0JiZiLnBjTmFtZSE9PW50PyhlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfVmVuZG9yX1RpdGxlX0VsbSkpJiZlLmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJlbmQiLHIpOih0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoQS5QX1ZlbmRvcl9Db250ZW50KyIgLm90LXNkay1yb3ciKSkmJnQuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmViZWdpbiIscikpLHYoIiNvbmV0cnVzdC1wYy1zZGsgIitBLlBfU2VsZWN0X0NudHIpLnJlbW92ZUNsYXNzKCJvdC1oaWRlIiksdGhpcy52ZW5kb3JzTGlzdEV2ZW50KCksYi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSYmdGhpcy52ZW5kb3JMZWdJbnRUb2dnbGVFdmVudCgpfSxzLnByb3RvdHlwZS5zZXRDb25zZW50TGVnSW50QW5kSGVhZGVyVGV4dD1mdW5jdGlvbigpe1MuaXNWMlRlbXBsYXRlJiYodigiI290LXNlbC1ibGsgc3BhbjpmaXJzdC1jaGlsZCIpLmh0bWwoTC5QQ2VudGVyQWxsb3dBbGxDb25zZW50VGV4dHx8TC5Db25zZW50VGV4dCksdigiI290LXNlbC1ibGsgc3BhbjpsYXN0LWNoaWxkIikuaHRtbChMLkxlZ2l0SW50ZXJlc3RUZXh0KSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX0Nuc250X0hlYWRlcikuaHRtbChMLlBDZW50ZXJBbGxvd0FsbENvbnNlbnRUZXh0KSxiLmxlZ0ludFNldHRpbmdzLlBBbGxvd0xJJiYhYi5sZWdJbnRTZXR0aW5ncy5QU2hvd0xlZ0ludEJ0biYmdigiI29uZXRydXN0LXBjLXNkayAub3Qtc2VsLWFsbC1oZHIgLm90LWxpLWhkciIpLmh0bWwoTC5QQ2VudGVyTGVnaXRJbnRlcmVzdFRleHQpLGIubGVnSW50U2V0dGluZ3MuUEFsbG93TEkmJiFiLmxlZ0ludFNldHRpbmdzLlBTaG93TGVnSW50QnRufHxkKHYoIiNvdC1zZWwtYmxrIHNwYW46Zmlyc3QtY2hpbGQiKS5lbFswXSwibWF4LXdpZHRoOiAxMDAlOyIsITApKX0scy5wcm90b3R5cGUuaGlkZU9yU2hvd1ZlbmRvckxpc3Q9ZnVuY3Rpb24oZSl7MD09PWUubGVuZ3RoP3YoIiNvdC1sc3QtY250IC5vdC1hY2MtY250ciIpLmhpZGUoKTp2KCIjb3QtbHN0LWNudCAub3QtYWNjLWNudHIiKS5zaG93KCksXy5zaG93VHJhY2tpbmdUZWNoJiZnLnJlbW92ZVRyYWNraW5nVGVjaEFjY29yaW9ucygpfSxzLnByb3RvdHlwZS51cGRhdGVWZW5kb3JzRE9NVG9nZ2xlU3RhdHVzPWZ1bmN0aW9uKGUsdCl7dm9pZCAwPT09dCYmKHQ9ITEpO2Zvcih2YXIgbz12KEEuUF9WZW5kb3JfQ29udGFpbmVyKyIgIitBLlBfVGdsX0NudHIpLmVsLG49MDtuPG8ubGVuZ3RoO24rKyl7dmFyIHI9b1tuXS5xdWVyeVNlbGVjdG9yKCIuIitBLlBfVmVuX0N0Z2wrIiBpbnB1dCIpLGk9b1tuXS5xdWVyeVNlbGVjdG9yKCIuIitBLlBfVmVuX0x0Z2wrIiBpbnB1dCIpO3Q/ciYmUC5zZXRDaGVja2VkQXR0cmlidXRlKCIiLHIsITEpOihyJiZQLnNldENoZWNrZWRBdHRyaWJ1dGUoIiIscixlKSxpJiZQLnNldENoZWNrZWRBdHRyaWJ1dGUoIiIsaSxlKSl9dmFyIHM9digiI29uZXRydXN0LXBjLXNkayAjc2VsZWN0LWFsbC12ZW5kb3ItbGVnLWhhbmRsZXIiKS5lbFswXSxzPShzJiYocy5wYXJlbnRFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUodGhpcy5MSU5FX1RIUk9VR0hfQ0xBU1MpLFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiIixzLCEhdHx8ZSkpLHYoIiNvbmV0cnVzdC1wYy1zZGsgI3NlbGVjdC1hbGwtdmVuZG9yLWdyb3Vwcy1oYW5kbGVyIikuZWxbMF0pO3MmJihzLnBhcmVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSh0aGlzLkxJTkVfVEhST1VHSF9DTEFTUyksUC5zZXRDaGVja2VkQXR0cmlidXRlKCIiLHMsIXQmJmUpKSxMLlVzZUdvb2dsZVZlbmRvcnMmJih0P3RoaXMudXBkYXRlR29vZ2xlQ2hlY2tib3goITEpOnRoaXMudXBkYXRlR29vZ2xlQ2hlY2tib3goZSkpLF8uc2hvd0dlbmVyYWxWZW5kb3JzJiZMLkdlblZlbk9wdE91dCYmdGhpcy51cGRhdGVHZW5WZW5DaGVja2JveChlKX0scy5wcm90b3R5cGUudXBkYXRlR2VuVmVuQ2hlY2tib3g9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PXYoQS5QX0d2ZW5fTGlzdCsiIC5vdC12ZW4tZ3ZjdGdsIGlucHV0IikuZWwsbz0wO288dC5sZW5ndGg7bysrKVAuc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiIix0W29dLGUpO3ZhciBuPXYoIiNvbmV0cnVzdC1wYy1zZGsgI290LXNlbGFsbC1nbnZlbi1oYW5kbGVyIikuZWxbMF07biYmKG4ucGFyZW50RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuTElORV9USFJPVUdIX0NMQVNTKSxQLnNldENoZWNrZWRBdHRyaWJ1dGUoIiIsbixlKSl9LHMucHJvdG90eXBlLnVwZGF0ZUdvb2dsZUNoZWNrYm94PWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD12KCIjb3QtYWRkdGwtdmVubHN0IC5vdC10Z2wtY250ciBpbnB1dCIpLmVsLG89MDtvPHQubGVuZ3RoO28rKylQLnNldENoZWNrZWRBdHRyaWJ1dGUoIiIsdFtvXSxlKTt2YXIgbj12KCIjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtYWR0bHZlbi1oYW5kbGVyIikuZWxbMF07biYmKG4ucGFyZW50RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuTElORV9USFJPVUdIX0NMQVNTKSxQLnNldENoZWNrZWRBdHRyaWJ1dGUoIiIsbixlKSl9LHMucHJvdG90eXBlLnVwZGF0ZVZlbmRvckRpc2Nsb3N1cmU9ZnVuY3Rpb24oZSx0KXt2YXIgcixpLGU9dihBLlBfVmVuZG9yX0NvbnRhaW5lcisiICNJQUIiK2UpLmVsWzBdLnBhcmVudEVsZW1lbnQ7dCYmdC5kaXNjbG9zdXJlcyYmKHI9ZS5xdWVyeVNlbGVjdG9yKEEuUF9WZW5fRGV0cyksKGU9KGk9ZS5xdWVyeVNlbGVjdG9yKEEuUF9WZW5fRGlzYykuY2xvbmVOb2RlKCEwKSkuY2xvbmVOb2RlKCEwKSkuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudCh0aGlzLmdldEhlYWRpbmdFbGVtZW50KEwuUENlbnRlclZlbmRvckxpc3REaXNjbG9zdXJlKyI6ICIsIjUiKSksci5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsZSksdC5kaXNjbG9zdXJlcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0LG89aS5jbG9uZU5vZGUoITApLG49IjxwPiIrTC5QQ2VudGVyVmVuZG9yTGlzdFN0b3JhZ2VJZGVudGlmaWVyKyIgPC9wPiA8cD4iKyhlLm5hbWV8fGUuaWRlbnRpZmllcikrIiA8L3A+IjtlLnR5cGUmJihuKz0iPHA+IitMLlBDZW50ZXJWZW5kb3JMaXN0U3RvcmFnZVR5cGUrIiA8L3A+IDxwPiIrZS50eXBlKyIgPC9wPiIpLGUubWF4QWdlU2Vjb25kcyYmKHQ9UC5jYWxjdWxhdGVDb29raWVMaWZlc3BhbihlLm1heEFnZVNlY29uZHMpLG4rPSI8cD4iK0wuUENlbnRlclZlbmRvckxpc3RMaWZlc3BhbisiIDwvcD4gPHA+Iit0KyIgPC9wPiIpLGUuZG9tYWluJiYobis9IjxwPiIrTC5QQ2VudGVyVmVuZG9yTGlzdFN0b3JhZ2VEb21haW4rIiA8L3A+IDxwPiIrZS5kb21haW4rIiA8L3A+IiksZS5wdXJwb3NlcyYmKG4rPSI8cD4iK0wuUENlbnRlclZlbmRvckxpc3RTdG9yYWdlUHVycG9zZXMrJyA8L3A+PGRpdiBjbGFzcz0iZGlzYy1wdXItY29udCI+JyxlLnB1cnBvc2VzLmZvckVhY2goZnVuY3Rpb24oZSl7ZT1udWxsPT0oZT1iLmlhYkdyb3Vwcy5wdXJwb3Nlc1tlXSk/dm9pZCAwOmUubmFtZTtlJiYobis9JyA8cCBjbGFzcz0iZGlzYy1wdXIiPicrZSsiIDwvcD4iKX0pLG4rPSI8L2Rpdj4iKSxvLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobiksci5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsbyl9KSx0aGlzLnVwZGF0ZURvbWFpbnNVc2FnZUluRGlzY2xvc3VyZXModCxpLHIpKX0scy5wcm90b3R5cGUuZ2V0SGVhZGluZ0VsZW1lbnQ9ZnVuY3Rpb24oZSx0LG8pe3ZhciBuO3JldHVybiBudWxsIT0obj1TLm1vZHVsZUluaXRpYWxpemVyKSYmbi5TRU9PcHRpbWl6YXRpb24/JzxwIHJvbGU9ImhlYWRpbmciIGFyaWEtbGV2ZWw9IicrdCsnIiBjbGFzcz0iJytvKyciPicrZSsiPC9wPiI6IjxoIit0KycgY2xhc3M9IicrbysnIj4nK2UrIjwvaCIrdCsiPiJ9LHMucHJvdG90eXBlLnVwZGF0ZURvbWFpbnNVc2FnZUluRGlzY2xvc3VyZXM9ZnVuY3Rpb24oZSxuLHIpe3ZhciB0O2UuZG9tYWlucyYmZS5kb21haW5zLmxlbmd0aCYmKCh0PW4uY2xvbmVOb2RlKCEwKSkuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudCh0aGlzLmdldEhlYWRpbmdFbGVtZW50KEwuUENWTFNEb21haW5zVXNlZCsiOiAiLCI1IikpLHIuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLHQpLGUuZG9tYWlucy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0LG89bi5jbG9uZU5vZGUoITApO2UuZG9tYWluJiYodD0iPHA+IitMLlBDZW50ZXJWZW5kb3JMaXN0U3RvcmFnZURvbWFpbisiIDwvcD4gPHA+IitlLmRvbWFpbisiIDwvcD4iKSxlLnVzZSYmKHQrPSI8cD4iK0wuUENWTFNVc2UrIiA8L3A+IDxwPiIrZS51c2UrIiA8L3A+Iiksby5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KHQpLHIuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLG8pfSkpfSxzLnByb3RvdHlwZS5hZGREZXNjcmlwdGlvbkVsZW1lbnQ9ZnVuY3Rpb24oZSx0KXt2YXIgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7by5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KHR8fCIiKSxlLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKG8sZSl9LHMucHJvdG90eXBlLnNldFZkckNvbnNlbnRUZ2xPckNoYm94PWZ1bmN0aW9uKGUsdCxvLG4scixpKXt2YXIgcyxhLGw9Xy52ZW5kb3JzU2V0dGluZ1tlXSx0PXQuY2xvbmVOb2RlKCEwKTtsLmNvbnNlbnQmJih0LmNsYXNzTGlzdC5hZGQoQS5QX1Zlbl9DdGdsKSxsPS0xIT09bS5pbkFycmF5KGUrIjp0cnVlIixfLnZlbmRvcnMuc2VsZWN0ZWRWZW5kb3JzKSxzPXQucXVlcnlTZWxlY3RvcigiaW5wdXQiKSxTLmlzVjJUZW1wbGF0ZSYmKHMuY2xhc3NMaXN0LmFkZCgidmVuZG9yLWNoZWNrYm94LWhhbmRsZXIiKSxhPXQucXVlcnlTZWxlY3Rvcih0aGlzLkxBQkVMX1NUQVRVUyksTC5QQ1Nob3dDb25zZW50TGFiZWxzP2EuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChsP0wuUENBY3RpdmVUZXh0OkwuUENJbmFjdGl2ZVRleHQpOlAucmVtb3ZlQ2hpbGQoYSkpLFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiIixzLGwpLFAuc2V0SHRtbEF0dHJpYnV0ZXMocyx7aWQ6QS5QX1ZlbmRvcl9DaGVja0J4KyItIitpLHZlbmRvcmlkOmUsImFyaWEtbGFiZWwiOm99KSx0LnF1ZXJ5U2VsZWN0b3IoImxhYmVsIikuc2V0QXR0cmlidXRlKCJmb3IiLEEuUF9WZW5kb3JfQ2hlY2tCeCsiLSIraSksdC5xdWVyeVNlbGVjdG9yKEEuUF9MYWJlbF9UeHQpLnRleHRDb250ZW50PW8sYi5wY05hbWU9PT1zdD9MLlBDVGVtcGxhdGVVcGdyYWRlP24uaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLHQpOnYobikuYXBwZW5kKHQpOm4uaW5zZXJ0QmVmb3JlKHQscikpfSxzLnByb3RvdHlwZS5zZXRWbmRyTGVnSW50VGdsVHh0PWZ1bmN0aW9uKGUsdCl7ZT1lLnF1ZXJ5U2VsZWN0b3IodGhpcy5MQUJFTF9TVEFUVVMpO0wuUENTaG93Q29uc2VudExhYmVscz9lLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQodD9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KTpQLnJlbW92ZUNoaWxkKGUpfSxzLnByb3RvdHlwZS5zZXRWZHJMZWdJbnRUZ2xPckNoYng9ZnVuY3Rpb24odCxlLG8sbixyLGkscyl7dmFyIGEsbD1fLnZlbmRvcnNTZXR0aW5nW3RdLG89by5jbG9uZU5vZGUoITApLGM9bnVsbD09KGM9Xy52ZW5kb3JzLmxpc3QuZmluZChmdW5jdGlvbihlKXtyZXR1cm4gZS52ZW5kb3JJZD09PXR9KS5sZWdJbnRQdXJwb3Nlcyk/dm9pZCAwOmMubGVuZ3RoO2wubGVnSW50JiYhbC5zcGVjaWFsUHVycG9zZXNPbmx5JiZjJiYoYz0tMSE9PW0uaW5BcnJheSh0KyI6dHJ1ZSIsXy52ZW5kb3JzLnNlbGVjdGVkTGVnSW50VmVuZG9ycyksYi5sZWdJbnRTZXR0aW5ncy5QU2hvd0xlZ0ludEJ0bj8oYT1PLmdlbmVyYXRlTGVnSW50QnV0dG9uRWxlbWVudHMoYyx0LCEwLG4pLGUucXVlcnlTZWxlY3RvcihBLlBfQWNjX1R4dCkuaW5zZXJ0QWRqYWNlbnRIVE1MKCJiZWZvcmVlbmQiLGEpLChhPWUucXVlcnlTZWxlY3RvcigiLm90LXJlbW92ZS1vYmplY3Rpb24taGFuZGxlciIpKSYmZChhLGEuZ2V0QXR0cmlidXRlKCJkYXRhLXN0eWxlIikpKTooYT1vLnF1ZXJ5U2VsZWN0b3IoImlucHV0IiksUy5pc1YyVGVtcGxhdGUmJihhLmNsYXNzTGlzdC5hZGQoInZlbmRvci1jaGVja2JveC1oYW5kbGVyIiksdGhpcy5zZXRWbmRyTGVnSW50VGdsVHh0KG8sYykpLG8uY2xhc3NMaXN0LmFkZChBLlBfVmVuX0x0Z2wpLGEuY2xhc3NMaXN0LnJlbW92ZSgidmVuZG9yLWNoZWNrYm94LWhhbmRsZXIiKSxhLmNsYXNzTGlzdC5hZGQoInZlbmRvci1sZWctY2hlY2tib3gtaGFuZGxlciIpLFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiIixhLGMpLFAuc2V0SHRtbEF0dHJpYnV0ZXMoYSx7aWQ6QS5QX1ZlbmRvcl9MZWdDaGVja0J4KyItIityLCJsZWctdmVuZG9yaWQiOnQsImFyaWEtbGFiZWwiOm59KSxvLnF1ZXJ5U2VsZWN0b3IoImxhYmVsIikuc2V0QXR0cmlidXRlKCJmb3IiLEEuUF9WZW5kb3JfTGVnQ2hlY2tCeCsiLSIrciksby5xdWVyeVNlbGVjdG9yKEEuUF9MYWJlbF9UeHQpLnRleHRDb250ZW50PW4sZS5xdWVyeVNlbGVjdG9yKCIuIitBLlBfVmVuX0N0Z2wpJiYoaT1lLnF1ZXJ5U2VsZWN0b3IoIi4iK0EuUF9WZW5fQ3RnbCkpLGIucGNOYW1lIT09c3R8fHMuY2hpbGRyZW4ubGVuZ3RoP3MuaW5zZXJ0QmVmb3JlKG8saSk6dihzKS5hcHBlbmQobyksbC5jb25zZW50fHxiLnBjTmFtZSE9PXN0fHxvLmNsYXNzTGlzdC5hZGQoQS5QX1Zlbl9MdGdsX09ubHkpKSl9LHMucHJvdG90eXBlLnNldFZuZHJTcGxQdXJTZWN0aW9uPWZ1bmN0aW9uKGUsdCl7dmFyIG89dGhpcyxuPWUucXVlcnlTZWxlY3RvcigiLnNwbC1wdXJwb3NlIiksZT1lLnF1ZXJ5U2VsZWN0b3IoIi5zcGwtcHVycG9zZS1ncnAiKSxyPWUuY2xvbmVOb2RlKCEwKTtlLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZSksYi5pc0lhYjJvcnYyVGVtcGxhdGUmJnQuc3BlY2lhbFB1cnBvc2VzLmZvckVhY2goZnVuY3Rpb24oZSl7dihyLnF1ZXJ5U2VsZWN0b3Ioby5DT05TRU5UX0NBVEVHT1JZKSkudGV4dChlLnB1cnBvc2VOYW1lKSxuLmluc2VydEFkamFjZW50SFRNTCgiYWZ0ZXJlbmQiLG0uZ2V0SW5uZXJIdG1sQ29udGVudChyLm91dGVySFRNTCkpfSksMD09PXQuc3BlY2lhbFB1cnBvc2VzLmxlbmd0aD9uLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQobik6dihuLnF1ZXJ5U2VsZWN0b3IoInAiKSkudGV4dChMLlNwZWNpYWxQdXJwb3Nlc1RleHQpfSxzLnByb3RvdHlwZS5zZXRWbmRyRnRTZWN0aW9uPWZ1bmN0aW9uKGUsdCl7dmFyIG89dGhpcyxuPWUucXVlcnlTZWxlY3RvcigiLnZlbmRvci1mZWF0dXJlIiksZT1lLnF1ZXJ5U2VsZWN0b3IoIi52ZW5kb3ItZmVhdHVyZS1ncm91cCIpLHI9ZS5jbG9uZU5vZGUoITApO2UucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChlKSx2KG4ucXVlcnlTZWxlY3RvcigicCIpKS50ZXh0KEwuRmVhdHVyZXNUZXh0KSx0LmZlYXR1cmVzLmZvckVhY2goZnVuY3Rpb24oZSl7dihyLnF1ZXJ5U2VsZWN0b3Ioby5DT05TRU5UX0NBVEVHT1JZKSkudGV4dChlLmZlYXR1cmVOYW1lKSxuLmluc2VydEFkamFjZW50SFRNTCgiYWZ0ZXJlbmQiLG0uZ2V0SW5uZXJIdG1sQ29udGVudChyLm91dGVySFRNTCkpfSksMD09PXQuZmVhdHVyZXMubGVuZ3RoJiZuLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQobil9LHMucHJvdG90eXBlLnNldFZuZHJTcGxGdFNlY3Rpb249ZnVuY3Rpb24oZSx0KXt2YXIgbz10aGlzLG49ZS5xdWVyeVNlbGVjdG9yKCIudmVuZG9yLXNwbC1mZWF0dXJlIiksZT1lLnF1ZXJ5U2VsZWN0b3IoIi52ZW5kb3Itc3BsLWZlYXR1cmUtZ3JwIikscj1lLmNsb25lTm9kZSghMCk7bi5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGUpLGIuaXNJYWIyb3J2MlRlbXBsYXRlJiZ0LnNwZWNpYWxGZWF0dXJlcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3Yoci5xdWVyeVNlbGVjdG9yKG8uQ09OU0VOVF9DQVRFR09SWSkpLnRleHQoZS5mZWF0dXJlTmFtZSksbi5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyZW5kIixtLmdldElubmVySHRtbENvbnRlbnQoci5vdXRlckhUTUwpKX0pLDA9PT10LnNwZWNpYWxGZWF0dXJlcy5sZW5ndGg/bi5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKG4pOnYobi5xdWVyeVNlbGVjdG9yKCJwIikpLnRleHQoTC5TcGVjaWFsRmVhdHVyZXNUZXh0KX0scy5wcm90b3R5cGUuc2V0Vm5kckFjY1R4dD1mdW5jdGlvbihlLHQpe3Q9dC5xdWVyeVNlbGVjdG9yKEEuUF9BY2NfVHh0KTt0JiZQLnNldEh0bWxBdHRyaWJ1dGVzKHQse2lkOiJJQUItQUNDLVRYVCIrZSwiYXJpYS1sYWJlbGxlZGJ5IjoiSUFCLUFDQy1UWFQiK2Uscm9sZToicmVnaW9uIn0pfSxzLnByb3RvdHlwZS5zZXRWbmRyRGlzY2xvc3VyZT1mdW5jdGlvbihlLHQsbyl7dC5kZXZpY2VTdG9yYWdlRGlzY2xvc3VyZVVybCYmKFAuc2V0SHRtbEF0dHJpYnV0ZXMobyx7ImRpc2MtdmlkIjplfSksXy5kaXNjVmVuZG9yc1tlXT17aXNGZXRjaGVkOiExLGRpc2Nsb3N1cmVVcmw6dC5kZXZpY2VTdG9yYWdlRGlzY2xvc3VyZVVybH0pfSxzLnByb3RvdHlwZS5zZXRWbmRyTGlzdFNlbGVjdEFsbENoa0JveHM9ZnVuY3Rpb24oKXt2YXIgZT12KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1NlbF9BbGxfVmVuZG9yX0NvbnNlbnRfSGFuZGxlcikuZWxbMF0sZT0oZSYmZS5zZXRBdHRyaWJ1dGUodGhpcy5BUklBX0xBQkVMX0FUVFJJQlVURSxMLlBDZW50ZXJTZWxlY3RBbGxWZW5kb3JzVGV4dCsiICIrTC5MZWdpdEludGVyZXN0VGV4dCksdigiI29uZXRydXN0LXBjLXNkayAiK0EuUF9TZWxfQWxsX1ZlbmRvcl9MZWdfSGFuZGxlcikuZWxbMF0pO2UmJmUuc2V0QXR0cmlidXRlKHRoaXMuQVJJQV9MQUJFTF9BVFRSSUJVVEUsTC5QQ0lBQlZlbmRvcnNUZXh0KyIsICIrTC5QQ2VudGVyU2VsZWN0QWxsVmVuZG9yc1RleHQpfSxzLnByb3RvdHlwZS5zZXRWbmRyQ29uc2VudFB1cnBvc2VzPWZ1bmN0aW9uKGUsdCxvKXt2YXIgbj10aGlzLHI9ZS5xdWVyeVNlbGVjdG9yKCIudmVuZG9yLWNvbnNlbnQtZ3JvdXAiKSxpPWUucXVlcnlTZWxlY3RvcigiLnZlbmRvci1vcHRpb24tcHVycG9zZSIpLHM9ci5jbG9uZU5vZGUoITApLGE9ZS5xdWVyeVNlbGVjdG9yKCIubGVnaXRpbWF0ZS1pbnRlcmVzdCIpLGw9ITE7cmV0dXJuIHIucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChyKSx0LmNvbnNlbnQmJih2KGkucXVlcnlTZWxlY3RvcigicCIpKS50ZXh0KEwuQ29uc2VudFB1cnBvc2VzVGV4dCksby5wdXJwb3Nlcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3Yocy5xdWVyeVNlbGVjdG9yKG4uQ09OU0VOVF9DQVRFR09SWSkpLnRleHQoZS5wdXJwb3NlTmFtZSk7ZT1zLnF1ZXJ5U2VsZWN0b3IoIi5jb25zZW50LXN0YXR1cyIpO2UmJnMucmVtb3ZlQ2hpbGQoZSksYS5pbnNlcnRBZGphY2VudEhUTUwoImJlZm9yZWJlZ2luIixtLmdldElubmVySHRtbENvbnRlbnQocy5vdXRlckhUTUwpKSxsPSEwfSkpLHQuY29uc2VudHx8aS5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGkpLGx9LHMucHJvdG90eXBlLmdldFZuZHJUZ2xDbnRyPWZ1bmN0aW9uKGUpe3JldHVybiBTLmlzVjJUZW1wbGF0ZT9FLmNoa2JveEVsLmNsb25lTm9kZSghMCk6ZS5xdWVyeVNlbGVjdG9yKCIub3QtY2hlY2tib3giKX0scy5wcm90b3R5cGUuYXR0YWNoVmVuZG9yc1RvRE9NPWZ1bmN0aW9uKCl7Zm9yKHZhciB1LHAsQz10aGlzLGc9Xy52ZW5kb3JzLmxpc3QsaD1fLnZlbmRvcnMudmVuZG9yVGVtcGxhdGUuY2xvbmVOb2RlKCEwKSx5PShfLmRpc2NWZW5kb3JzPXt9LFMuaXNWMlRlbXBsYXRlJiYodT1oLnF1ZXJ5U2VsZWN0b3IoIi5vdC12ZW4tcHVyIikuY2xvbmVOb2RlKCEwKSxwPWgucXVlcnlTZWxlY3RvcihBLlBfVmVuX0Rpc2MpLmNsb25lTm9kZSghMCksdihoLnF1ZXJ5U2VsZWN0b3IoIi5vdC12ZW4tZGV0cyIpKS5odG1sKCIiKSksZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpKSxmPXRoaXMsZT0wO2U8Zy5sZW5ndGg7ZSsrKShlPT57dmFyIHQsbyxuPWguY2xvbmVOb2RlKCEwKSxyPWdbZV0udmVuZG9ySWQsaT1nW2VdLnZlbmRvck5hbWUscz1uLnF1ZXJ5U2VsZWN0b3IoIi4iK0EuUF9WZW5fQngpLGE9Xy52ZW5kb3JzU2V0dGluZ1tyXSxsPShQLnNldEh0bWxBdHRyaWJ1dGVzKHMse2lkOiJJQUIiK3IsbmFtZToiSUFCIityLCJhcmlhLWNvbnRyb2xzIjoiSUFCLUFDQy1UWFQiK3IsImFyaWEtbGFiZWwiOml9KSxzLm5leHRFbGVtZW50U2libGluZy5zZXRBdHRyaWJ1dGUoImZvciIsIklBQiIrciksbi5xdWVyeVNlbGVjdG9yKEEuUF9WZW5fTmFtZSkuaW5uZXJUZXh0PWksZi51cGRhdGVJQUJMaW5rc0RPTShnW2VdLG4pLGYuZ2V0Vm5kclRnbENudHIobikpLGM9bi5xdWVyeVNlbGVjdG9yKEEuUF9UZ2xfQ250ciksZD0oUy5pc1YyVGVtcGxhdGV8fGwucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChsKSxuLnF1ZXJ5U2VsZWN0b3IoQS5QX0FycndfQ250cikpO2Yuc2V0VmRyQ29uc2VudFRnbE9yQ2hib3gocixsLGksYyxkLGUpLGYuc2V0VmRyTGVnSW50VGdsT3JDaGJ4KHIsbixsLGksZSxkLGMpLFMuaXNWMlRlbXBsYXRlJiYoYy5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsRS5hcnJvd0VsLmNsb25lTm9kZSghMCkpLEwuUENBY2NvcmRpb25TdHlsZSE9PWNlLkNhcmV0KSYmbi5xdWVyeVNlbGVjdG9yKCIub3QtdmVuLWhkciIpLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlYmVnaW4iLEUucGx1c01pbnVzRWwuY2xvbmVOb2RlKCEwKSksZi5zZXRWbmRyQWNjVHh0KHIsbiksZi5zZXRWbmRyRGlzY2xvc3VyZShyLGdbZV0scyksUy5pc1YyVGVtcGxhdGU/Zi5wb3B1bGF0ZVZlbmRvckRldGFpbHNIdG1sKG4sdSxnW2VdLHApOih0PW4ucXVlcnlTZWxlY3RvcigiLmxlZ2l0aW1hdGUtaW50ZXJlc3QiKSxsPW4ucXVlcnlTZWxlY3RvcigiLmxlZ2l0aW1hdGUtaW50ZXJlc3QtZ3JvdXAiKSxvPWwuY2xvbmVOb2RlKCEwKSxwPW4ucXVlcnlTZWxlY3RvcihBLlBfVmVuX0Rpc2MpLGk9bi5xdWVyeVNlbGVjdG9yKEEuUF9WZW5fRGV0cyksZD1wLmNsb25lTm9kZSghMCkscC5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKHApLGYuYXR0YWNoVmVuZG9yRGlzY2xvc3VyZShkLGdbZV0pLGkuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJhZnRlcmJlZ2luIixkKSxmLnNldFZuZHJDb25zZW50UHVycG9zZXMobixhLGdbZV0pLGM9by5xdWVyeVNlbGVjdG9yKCIudmVuZG9yLW9wdC1vdXQtaGFuZGxlciIpLGIuaXNJYWIyb3J2MlRlbXBsYXRlJiZjLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoYyksbC5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGwpLGEubGVnSW50JiYodih0LnF1ZXJ5U2VsZWN0b3IoInAiKSkudGV4dChMLkxlZ2l0aW1hdGVJbnRlcmVzdFB1cnBvc2VzVGV4dCksYi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSkmJmIuaXNJYWIyb3J2MlRlbXBsYXRlJiZnW2VdLmxlZ0ludFB1cnBvc2VzLmZvckVhY2goZnVuY3Rpb24oZSl7dihvLnF1ZXJ5U2VsZWN0b3IoQy5DT05TRU5UX0NBVEVHT1JZKSkudGV4dChlLnB1cnBvc2VOYW1lKSx0Lmluc2VydEFkamFjZW50SFRNTCgiYWZ0ZXJlbmQiLG0uZ2V0SW5uZXJIdG1sQ29udGVudChvLm91dGVySFRNTCkpfSksYS5sZWdJbnR8fHQucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZCh0KSxmLnNldFZuZHJTcGxQdXJTZWN0aW9uKG4sZ1tlXSksZi5zZXRWbmRyRnRTZWN0aW9uKG4sZ1tlXSksZi5zZXRWbmRyU3BsRnRTZWN0aW9uKG4sZ1tlXSksKHI9cy5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoIi52ZW5kb3ItcHVycG9zZXMgcCIpKS5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKHIpKSx5LmFwcGVuZENoaWxkKG4pLGYuc2V0Vm5kckxpc3RTZWxlY3RBbGxDaGtCb3hzKCl9KShlKTtkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250YWluZXIpLmFwcGVuZCh5KX0scy5wcm90b3R5cGUudXBkYXRlSUFCTGlua3NET009ZnVuY3Rpb24oZSx0KXt2YXIgbyxuPWUudmVuZG9yTmFtZSxyPXQucXVlcnlTZWxlY3RvcihBLlBfVmVuX0xpbmspLHQ9dC5xdWVyeVNlbGVjdG9yKEEuUF9WZW5fTGVnX0NsYWltKSxpPWIuaXNUY2ZWMlRlbXBsYXRlP2UudmVuZG9yUHJpdmFjeVVybDplLnBvbGljeVVybCxzPSExO0wuQmFubmVyUmVxdWlyZUV4dGVybmFsTGlua3MmJihTLmZwLkNNUEljb25TcHJpdGUmJkwuT1RFeHRlcm5hbExpbmtMb2dvJiYhTC5CYW5uZXJFeHRlcm5hbExpbmtzTG9nbz8ocz0hMCxvPUkudXBkYXRlQ29ycmVjdFVybChMLk9URXh0ZXJuYWxMaW5rTG9nbyksbz1MLkJhbm5lckV4dGVybmFsTGlua3NMb2dvP0kudXBkYXRlQ29ycmVjdFVybChMLkJhbm5lckV4dGVybmFsTGlua3NMb2dvKTpvLG89IjxzdmcgY2xhc3M9J290LWV4dC1sbmsnPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHVzZSBocmVmPScjIituZXcgVVJMKG8sd2luZG93LmxvY2F0aW9uLm9yaWdpbikucGF0aG5hbWUuc3BsaXQoIi8iKS5wb3AoKS5zcGxpdCgiLiIpLnNoaWZ0KCkrIic+PC91c2U+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4iKTpyLmNsYXNzTGlzdC5hZGQodGhpcy5FWFRfTElOS19DTEFTUykpLFAuc2V0SHRtbEF0dHJpYnV0ZXMocix7aHJlZjppLHJlbDoibm9vcGVuZXIiLHRhcmdldDoiX2JsYW5rIn0pLHIuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChMLlBDZW50ZXJWaWV3UHJpdmFjeVBvbGljeVRleHQrIiZuYnNwOzxzcGFuIGNsYXNzPSdvdC1zY3JuLXJkcic+IituKyIgIitMLk5ld1dpblR4dCsiPC9zcGFuPiIpLEwuQmFubmVyUmVxdWlyZUV4dGVybmFsTGlua3MmJnMmJnIuaW5zZXJ0QWRqYWNlbnRIVE1MKCJhZnRlcmVuZCIsbS5nZXRJbm5lckh0bWxDb250ZW50KG8pKSxiLmlzVGNmVjJUZW1wbGF0ZSYmZS5sZWdJbnRDbGFpbSYmMDxMLlBDSUFCVmVuZG9yTGVnSW50Q2xhaW1UZXh0LnRyaW0oKS5sZW5ndGg/KFAuc2V0SHRtbEF0dHJpYnV0ZXModCx7aHJlZjplLmxlZ0ludENsYWltLHJlbDoibm9vcGVuZXIiLHRhcmdldDoiX2JsYW5rIn0pLHQuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChMLlBDSUFCVmVuZG9yTGVnSW50Q2xhaW1UZXh0KyImbmJzcDs8c3BhbiBjbGFzcz0nb3Qtc2Nybi1yZHInPiIrbisiICIrTC5OZXdXaW5UeHQrIjwvc3Bhbj4iKSxMLkJhbm5lclJlcXVpcmVFeHRlcm5hbExpbmtzJiYocz90Lmluc2VydEFkamFjZW50SFRNTCgiYWZ0ZXJlbmQiLG0uZ2V0SW5uZXJIdG1sQ29udGVudChvKSk6dC5jbGFzc0xpc3QuYWRkKHRoaXMuRVhUX0xJTktfQ0xBU1MpKSk6dC5yZW1vdmUoKX0scy5wcm90b3R5cGUucG9wdWxhdGVWZW5kb3JEZXRhaWxzSHRtbD1mdW5jdGlvbihlLG8sdCxuKXtmdW5jdGlvbiByKGUsdCxvLG4scil7aWYodm9pZCAwPT09ciYmKHI9ITEpLHQubGVuZ3RoKXtmb3IodmFyIGk9dS5nZXRIZWFkaW5nRWxlbWVudChTdHJpbmcoTFtlXSksIjUiKSsiPHVsPiIscz0wLGE9dDtzPGEubGVuZ3RoO3MrKyl7dmFyIGwsYz1hW3NdLGQ9byhjKTtyJiZudWxsIT0obD1uKSYmbFtjLnB1cnBvc2VJZF0mJihkKz0iICgiKyhsPW5bYy5wdXJwb3NlSWRdLnJldGVudGlvbikrIiAiKygxPT09bD9MLlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW5EYXk6TC5QQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuRGF5cykrIikiKSxpKz0iPGxpPjxwPiIrZCsiPC9wPjwvbGk+In1wKGkrPSI8L3VsPiIpfX12YXIgaSx1PXRoaXMscz1lLnF1ZXJ5U2VsZWN0b3IoIi5vdC12ZW4tZGV0cyIpLGU9Xy52ZW5kb3JzU2V0dGluZ1t0LnZlbmRvcklkXSxwPWZ1bmN0aW9uKGUpe3ZhciB0PW8uY2xvbmVOb2RlKCEwKTt0LmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoZSkscy5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsdCl9LG49bi5jbG9uZU5vZGUoITApO3RoaXMuYXR0YWNoVmVuZG9yRGlzY2xvc3VyZShuLHQpLHMuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLG4pLGIuaXNUY2ZWMlRlbXBsYXRlJiZudWxsIT0obj10LmRhdGFEZWNsYXJhdGlvbikmJm4ubGVuZ3RoJiZyKCJQQ1ZMaXN0RGF0YURlY2xhcmF0aW9uVGV4dCIsdC5kYXRhRGVjbGFyYXRpb24sZnVuY3Rpb24oZSl7cmV0dXJuIGUuTmFtZX0pLGIuaXNUY2ZWMlRlbXBsYXRlJiZudWxsIT0obnVsbD09KG49dC5kYXRhUmV0ZW50aW9uKT92b2lkIDA6bi5zdGRSZXRlbnRpb24pJiYoaT0xPT09KG49dC5kYXRhUmV0ZW50aW9uLnN0ZFJldGVudGlvbik/TC5QQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuRGF5OkwuUENlbnRlclZlbmRvckxpc3RMaWZlc3BhbkRheXMsbj10aGlzLmdldEhlYWRpbmdFbGVtZW50KEwuUENWTGlzdERhdGFSZXRlbnRpb25UZXh0LCI1IikrKCI8bGk+PHA+IitMLlBDVkxpc3RTdGRSZXRlbnRpb25UZXh0KSsiICgiK24rIiAiK2krIik8L3A+PC9saT4iLHAobikpLGUuY29uc2VudCYmcigiQ29uc2VudFB1cnBvc2VzVGV4dCIsdC5wdXJwb3NlcyxmdW5jdGlvbihlKXtyZXR1cm4gZS5wdXJwb3NlTmFtZX0sbnVsbD09KGk9dC5kYXRhUmV0ZW50aW9uKT92b2lkIDA6aS5wdXJwb3NlcywhMCksZS5sZWdJbnQmJm51bGwhPShuPXQubGVnSW50UHVycG9zZXMpJiZuLmxlbmd0aCYmcigiTGVnaXRpbWF0ZUludGVyZXN0UHVycG9zZXNUZXh0Iix0LmxlZ0ludFB1cnBvc2VzLGZ1bmN0aW9uKGUpe3JldHVybiBlLnB1cnBvc2VOYW1lfSksYi5pc0lhYjJvcnYyVGVtcGxhdGUmJm51bGwhPShpPXQuc3BlY2lhbFB1cnBvc2VzKSYmaS5sZW5ndGgmJnIoIlNwZWNpYWxQdXJwb3Nlc1RleHQiLHQuc3BlY2lhbFB1cnBvc2VzLGZ1bmN0aW9uKGUpe3JldHVybiBlLnB1cnBvc2VOYW1lfSxudWxsPT0oZT10LmRhdGFSZXRlbnRpb24pP3ZvaWQgMDplLnNwZWNpYWxQdXJwb3NlcywhMCksbnVsbCE9KG49dC5mZWF0dXJlcykmJm4ubGVuZ3RoJiZyKCJGZWF0dXJlc1RleHQiLHQuZmVhdHVyZXMsZnVuY3Rpb24oZSl7cmV0dXJuIGUuZmVhdHVyZU5hbWV9KSxiLmlzSWFiMm9ydjJUZW1wbGF0ZSYmbnVsbCE9KGk9dC5zcGVjaWFsRmVhdHVyZXMpJiZpLmxlbmd0aCYmcigiU3BlY2lhbEZlYXR1cmVzVGV4dCIsdC5zcGVjaWFsRmVhdHVyZXMsZnVuY3Rpb24oZSl7cmV0dXJuIGUuZmVhdHVyZU5hbWV9KX0scy5wcm90b3R5cGUuSW5pdGlhbGl6ZVZlbmRvckxpc3Q9ZnVuY3Rpb24oKXt2YXIgZTtfLnZlbmRvcnMubGlzdD1fLmlhYkRhdGE/Xy5pYWJEYXRhLnZlbmRvcnM6bnVsbCxfLnZlbmRvcnMudmVuZG9yVGVtcGxhdGU9dihBLlBfVmVuZG9yX0NvbnRhaW5lcisiIGxpIikuZWxbMF0uY2xvbmVOb2RlKCEwKSx2KCIjb25ldHJ1c3QtcGMtc2RrICIrQS5QX1ZlbmRvcl9Db250YWluZXIpLmh0bWwoIiIpLFMuaXNWMlRlbXBsYXRlfHxiLnBjTmFtZSE9PXN0fHwoZT1fLnZlbmRvcnMudmVuZG9yVGVtcGxhdGUucXVlcnlTZWxlY3RvckFsbChBLlBfQWNjX0hlYWRlciksKGU9Yi5sZWdJbnRTZXR0aW5ncy5QQWxsb3dMSSYmYi5pc0lhYjJvcnYyVGVtcGxhdGU/ZVswXTplWzFdKS5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGUpKX0scy5wcm90b3R5cGUuY2FuY2VsVmVuZG9yRmlsdGVyPWZ1bmN0aW9uKCl7Zm9yKHZhciBlPXYoIiNvbmV0cnVzdC1wYy1zZGsgLmNhdGVnb3J5LWZpbHRlci1oYW5kbGVyIikuZWwsdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgbz1lW3RdLmdldEF0dHJpYnV0ZSgiZGF0YS1wdXJwb3NlaWQiKSxvPTA8PV8uZmlsdGVyQnlJQUJDYXRlZ29yaWVzLmluZGV4T2Yobyk7UC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsZVt0XSxvKX19LHMucHJvdG90eXBlLmF0dGFjaFZlbmRvckRpc2Nsb3N1cmU9ZnVuY3Rpb24oZSx0KXt2YXIgbz0iIjt0LmNvb2tpZU1heEFnZSYmKG8rPXRoaXMuZ2V0SGVhZGluZ0VsZW1lbnQoTC5QQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuKyIgOiIsIjUiKSksbys9IjxzcGFuPiAiK3QuY29va2llTWF4QWdlKyI8L3NwYW4+Iix0LnVzZXNOb25Db29raWVBY2Nlc3MmJihvKz0iPHA+IitMLlBDZW50ZXJWZW5kb3JMaXN0Tm9uQ29va2llVXNhZ2UrIjwvcD4iKSxlLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobyl9LHMucHJvdG90eXBlLnVwZGF0ZVZlbmRvckZpbHRlckxpc3Q9ZnVuY3Rpb24oKXtmb3IodmFyIGU9digiI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktZmlsdGVyLWhhbmRsZXIiKS5lbCx0PTA7dDxlLmxlbmd0aDt0Kyspe3ZhciBvLG49ZVt0XS5nZXRBdHRyaWJ1dGUoImRhdGEtcHVycG9zZWlkIik7ZVt0XS5jaGVja2VkJiZfLmZpbHRlckJ5SUFCQ2F0ZWdvcmllcy5pbmRleE9mKG4pPDA/Xy5maWx0ZXJCeUlBQkNhdGVnb3JpZXMucHVzaChuKTohZVt0XS5jaGVja2VkJiYtMTxfLmZpbHRlckJ5SUFCQ2F0ZWdvcmllcy5pbmRleE9mKG4pJiYobz1fLmZpbHRlckJ5SUFCQ2F0ZWdvcmllcyxfLmZpbHRlckJ5SUFCQ2F0ZWdvcmllcy5zcGxpY2Uoby5pbmRleE9mKG4pLDEpKX1yZXR1cm4gXy5maWx0ZXJCeUlBQkNhdGVnb3JpZXN9LHMucHJvdG90eXBlLnNhdmVWZW5kb3JTdGF0dXM9ZnVuY3Rpb24oZSl7dmFyIHQ9Xy52ZW5kb3JzLG89Xy5vbmVUcnVzdElBQkNvbnNlbnQsZT0oKGU9dm9pZCAwPT09ZT8hMTplKXx8KG8ucHVycG9zZT10LnNlbGVjdGVkUHVycG9zZS5zbGljZSgpLG8uc3BlY2lhbEZlYXR1cmVzPXQuc2VsZWN0ZWRTcGVjaWFsRmVhdHVyZXMuc2xpY2UoKSksby5sZWdpbWF0ZUludGVyZXN0PXQuc2VsZWN0ZWRMZWdJbnQuc2xpY2UoKSxvLnZlbmRvcnM9dC5zZWxlY3RlZFZlbmRvcnMuc2xpY2UoKSxvLmxlZ0ludFZlbmRvcnM9dC5zZWxlY3RlZExlZ0ludFZlbmRvcnMuc2xpY2UoKSxfLmFkZHRsVmVuZG9ycyk7ZS52ZW5kb3JDb25zZW50PU9iamVjdC5rZXlzKGUudmVuZG9yU2VsZWN0ZWQpfSxzLnByb3RvdHlwZS51cGRhdGVJYWJWYXJpYWJsZVJlZmVyZW5jZT1mdW5jdGlvbigpe3ZhciBlPV8ub25lVHJ1c3RJQUJDb25zZW50LHQ9Xy52ZW5kb3JzLG89KHQuc2VsZWN0ZWRQdXJwb3NlPWUucHVycG9zZS5zbGljZSgpLHQuc2VsZWN0ZWRMZWdJbnQ9ZS5sZWdpbWF0ZUludGVyZXN0LnNsaWNlKCksdC5zZWxlY3RlZFZlbmRvcnM9ZS52ZW5kb3JzLnNsaWNlKCksdC5zZWxlY3RlZExlZ0ludFZlbmRvcnM9ZS5sZWdJbnRWZW5kb3JzLnNsaWNlKCksdC5zZWxlY3RlZFNwZWNpYWxGZWF0dXJlcz1lLnNwZWNpYWxGZWF0dXJlcy5zbGljZSgpLF8uYWRkdGxWZW5kb3JzKTtvLnZlbmRvclNlbGVjdGVkPXt9LG8udmVuZG9yQ29uc2VudC5mb3JFYWNoKGZ1bmN0aW9uKGUpe28udmVuZG9yU2VsZWN0ZWRbZV09ITB9KX0scy5wcm90b3R5cGUuYWxsb3dBbGxoYW5kbGVyPWZ1bmN0aW9uKCl7eHMuaW5pdGlhbGl6ZUlBQkRhdGEoITAsITEpfSxzLnByb3RvdHlwZS5yZWplY3RBbGxIYW5kbGVyPWZ1bmN0aW9uKGUpe3hzLmluaXRpYWxpemVJQUJEYXRhKCExLCEwLGU9dm9pZCAwPT09ZT8hMTplKX0scy5wcm90b3R5cGUucG9wdWxhdGVBZGR0bFZlbmRvcnM9ZnVuY3Rpb24oZSl7dmFyIHQsbyxuLHIsaSxzLGEsbD0oTC5QQ0FjY29yZGlvblN0eWxlPT09Y2UuQ2FyZXQ/RS5hcnJvd0VsOkUucGx1c01pbnVzRWwpLmNsb25lTm9kZSghMCksYz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjb25ldHJ1c3QtcGMtc2RrIC5vdC1zZWwtYWxsLWNoa2JveCIpLGQ9Yy5jbG9uZU5vZGUoITApLGM9KFAucmVtb3ZlQ2hpbGQoZC5xdWVyeVNlbGVjdG9yKCIjb3Qtc2VsYWxsLWhvc3RjbnRyIikpLFAucmVtb3ZlQ2hpbGQoYy5xdWVyeVNlbGVjdG9yKCIjb3Qtc2VsYWxsLXZlbmNudHIiKSksUC5yZW1vdmVDaGlsZChjLnF1ZXJ5U2VsZWN0b3IoIiNvdC1zZWxhbGwtbGljbnRyIikpLEUuYWNjb3JkaW9uRWwuY2xvbmVOb2RlKCEwKSksYz0oYy5jbGFzc0xpc3QuYWRkKCJvdC1pYWItYWNjIiksYy5xdWVyeVNlbGVjdG9yKGcuQUNDX0hEUl9DTEFTUykuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVFbmQiLGwuY2xvbmVOb2RlKCEwKSksYy5xdWVyeVNlbGVjdG9yKGcuQUNDX0hEUl9DTEFTUykuaW5zZXJ0QWRqYWNlbnRIVE1MKCJiZWZvcmVFbmQiLG0uZ2V0SW5uZXJIdG1sQ29udGVudCh0aGlzLmdldEhlYWRpbmdFbGVtZW50KEwuUENJQUJWZW5kb3JzVGV4dCwiNCIsdGhpcy5WRU5fVElUTEVfQ0xBU1MpKSksYy5xdWVyeVNlbGVjdG9yKCIub3QtYWNjLWhkciIpLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlRW5kIixkKSxjLnF1ZXJ5U2VsZWN0b3IodGhpcy5BQ0NfVFhUKS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZUVuZCIsdigiI290LXZlbi1sc3QiKS5lbFswXSksdigiI290LWxzdC1jbnQgLm90LXNkay1jb2x1bW4iKS5hcHBlbmQoYyksYy5xdWVyeVNlbGVjdG9yKCJidXR0b24iKS5zZXRBdHRyaWJ1dGUodGhpcy5BUklBX0xBQkVMX0FUVFJJQlVURSxMLlBDSUFCVmVuZG9yc1RleHQpLHRoaXMuaWFiQWNjSW5pdD0hMCxkLmNsb25lTm9kZSghMCkpLHU9KFAucmVtb3ZlQ2hpbGQoYy5xdWVyeVNlbGVjdG9yKCIjb3Qtc2VsYWxsLWxpY250ciIpKSxjLnF1ZXJ5U2VsZWN0b3IoIi5vdC1jaGtib3giKS5pZD0ib3Qtc2VsYWxsLWFkdGx2ZW5jbnRyIixjLnF1ZXJ5U2VsZWN0b3IoImlucHV0IikuaWQ9Im90LXNlbGFsbC1hZHRsdmVuLWhhbmRsZXIiLGMucXVlcnlTZWxlY3RvcigibGFiZWwiKS5zZXRBdHRyaWJ1dGUoImZvciIsIm90LXNlbGFsbC1hZHRsdmVuLWhhbmRsZXIiKSxFLmFjY29yZGlvbkVsLmNsb25lTm9kZSghMCkpLHA9KHUucXVlcnlTZWxlY3RvcihnLkFDQ19IRFJfQ0xBU1MpLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlRW5kIixsLmNsb25lTm9kZSghMCkpLHUucXVlcnlTZWxlY3RvcihnLkFDQ19IRFJfQ0xBU1MpLmluc2VydEFkamFjZW50SFRNTCgiYmVmb3JlRW5kIixtLmdldElubmVySHRtbENvbnRlbnQodGhpcy5nZXRIZWFkaW5nRWxlbWVudChMLlBDR29vZ2xlVmVuZG9yc1RleHQsIjQiLHRoaXMuVkVOX1RJVExFX0NMQVNTKSkpLHUucXVlcnlTZWxlY3RvcihnLkFDQ19IRFJfQ0xBU1MpLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlRW5kIixjKSx1LnF1ZXJ5U2VsZWN0b3IodGhpcy5BQ0NfVFhUKS5pbnNlcnRBZGphY2VudEhUTUwoImJlZm9yZUVuZCIsbS5nZXRJbm5lckh0bWxDb250ZW50KCI8dWwgaWQ9J290LWFkZHRsLXZlbmxzdCc+PC91bD4iKSksdS5jbGFzc0xpc3QuYWRkKCJvdC1hZHRsdi1hY2MiKSx1LnF1ZXJ5U2VsZWN0b3IoImJ1dHRvbiIpLnNldEF0dHJpYnV0ZSh0aGlzLkFSSUFfTEFCRUxfQVRUUklCVVRFLEwuUENHb29nbGVWZW5kb3JzVGV4dCksdS5xdWVyeVNlbGVjdG9yKCIjb3Qtc2VsYWxsLWFkdGx2ZW4taGFuZGxlciIpLnNldEF0dHJpYnV0ZSh0aGlzLkFSSUFfTEFCRUxfQVRUUklCVVRFLEwuUENHb29nbGVWZW5kb3JzVGV4dCsiLCAiK0wuUENlbnRlclNlbGVjdEFsbFZlbmRvcnNUZXh0KSxfLnZlbmRvcnMudmVuZG9yVGVtcGxhdGUuY2xvbmVOb2RlKCEwKSk7Zm9yKHQgaW4gcC5xdWVyeVNlbGVjdG9yKCJidXR0b24iKS5jbGFzc0xpc3QucmVtb3ZlKCJvdC12ZW4tYm94IikscC5xdWVyeVNlbGVjdG9yKCJidXR0b24iKS5jbGFzc0xpc3QuYWRkKCJvdC1hZGR0bC12ZW5ib3giKSxQLnJlbW92ZUNoaWxkKHAucXVlcnlTZWxlY3Rvcih0aGlzLkFDQ19UWFQpKSxlKWVbdF0mJihvPXAuY2xvbmVOb2RlKCEwKSxuPWVbdF0ubmFtZSxvLnF1ZXJ5U2VsZWN0b3IoQS5QX1Zlbl9OYW1lKS5pbm5lclRleHQ9bixyPW8ucXVlcnlTZWxlY3RvcigiYnV0dG9uIiksUC5zZXRIdG1sQXR0cmlidXRlcyhyLHtpZDoiQWR0bC1JQUIiK3R9KSxQLnNldEh0bWxBdHRyaWJ1dGVzKG8ucXVlcnlTZWxlY3RvcihBLlBfVmVuX0xpbmspLHtocmVmOmVbdF0ucG9saWN5VXJsLHJlbDoibm9vcGVuZXIiLHRhcmdldDoiX2JsYW5rIn0pLG8ucXVlcnlTZWxlY3RvcihBLlBfVmVuX0xpbmspLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoTC5QQ2VudGVyVmlld1ByaXZhY3lQb2xpY3lUZXh0KyImbmJzcDs8c3BhbiBjbGFzcz0nb3Qtc2Nybi1yZHInPiIrbisiICIrTC5OZXdXaW5UeHQrIjwvc3Bhbj4iKSxMLkJhbm5lclJlcXVpcmVFeHRlcm5hbExpbmtzJiYoUy5mcC5DTVBJY29uU3ByaXRlJiZMLk9URXh0ZXJuYWxMaW5rTG9nbyYmIUwuQmFubmVyRXh0ZXJuYWxMaW5rc0xvZ28/KHI9SS51cGRhdGVDb3JyZWN0VXJsKEwuT1RFeHRlcm5hbExpbmtMb2dvKSxyPUwuQmFubmVyRXh0ZXJuYWxMaW5rc0xvZ28/SS51cGRhdGVDb3JyZWN0VXJsKEwuQmFubmVyRXh0ZXJuYWxMaW5rc0xvZ28pOnIscj0iPHN2ZyBjbGFzcz0nb3QtZXh0LWxuayc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXNlIGhyZWY9JyMiK25ldyBVUkwocix3aW5kb3cubG9jYXRpb24ub3JpZ2luKS5wYXRobmFtZS5zcGxpdCgiLyIpLnBvcCgpLnNwbGl0KCIuIikuc2hpZnQoKSsiJz48L3VzZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPiIsby5xdWVyeVNlbGVjdG9yKEEuUF9WZW5fTGluaykuaW5zZXJ0QWRqYWNlbnRIVE1MKCJhZnRlcmVuZCIsbS5nZXRJbm5lckh0bWxDb250ZW50KHIpKSk6by5xdWVyeVNlbGVjdG9yKEEuUF9WZW5fTGluaykuY2xhc3NMaXN0LmFkZCh0aGlzLkVYVF9MSU5LX0NMQVNTKSksKHI9RS5jaGtib3hFbC5jbG9uZU5vZGUoITApKS5jbGFzc0xpc3QucmVtb3ZlKCJvdC12ZW4tY3RnbCIpLHIuY2xhc3NMaXN0LmFkZCgib3QtdmVuLWFkdGxjdGdsIiksaT1Cb29sZWFuKF8uYWRkdGxWZW5kb3JzLnZlbmRvclNlbGVjdGVkW3RdKSwocz1yLnF1ZXJ5U2VsZWN0b3IoImlucHV0IikpLmNsYXNzTGlzdC5hZGQoIm90LWFkZHRsdmVuLWNoa2JveC1oYW5kbGVyIiksYT1yLnF1ZXJ5U2VsZWN0b3IodGhpcy5MQUJFTF9TVEFUVVMpLEwuUENTaG93Q29uc2VudExhYmVscz9hLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoaT9MLlBDQWN0aXZlVGV4dDpMLlBDSW5hY3RpdmVUZXh0KTpQLnJlbW92ZUNoaWxkKGEpLFAuc2V0Q2hlY2tlZEF0dHJpYnV0ZSgiIixzLGkpLFAuc2V0SHRtbEF0dHJpYnV0ZXMocyx7aWQ6Im90LWFkZHRsdmVuLWNoa2JveC0iK3QsImFkZHRsLXZpZCI6dCwiYXJpYS1sYWJlbCI6bn0pLHIucXVlcnlTZWxlY3RvcigibGFiZWwiKS5zZXRBdHRyaWJ1dGUoImZvciIsIm90LWFkZHRsdmVuLWNoa2JveC0iK3QpLHIucXVlcnlTZWxlY3RvcihBLlBfTGFiZWxfVHh0KS50ZXh0Q29udGVudD1uLGE9by5xdWVyeVNlbGVjdG9yKEEuUF9UZ2xfQ250ciksdihhKS5hcHBlbmQociksYS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsRS5hcnJvd0VsLmNsb25lTm9kZSghMCkpLEwuUENBY2NvcmRpb25TdHlsZSE9PWNlLkNhcmV0JiZvLnF1ZXJ5U2VsZWN0b3IoIi5vdC12ZW4taGRyIikuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmViZWdpbiIsRS5wbHVzTWludXNFbC5jbG9uZU5vZGUoITApKSx0aGlzLmNoZWNrSWZMZWdMaW5rUmVtb3ZlKG8pLHYodS5xdWVyeVNlbGVjdG9yKCIjb3QtYWRkdGwtdmVubHN0IikpLmFwcGVuZChvKSk7digiI290LWxzdC1jbnQgLm90LXNkay1jb2x1bW4iKS5hcHBlbmQodSksdigiI29uZXRydXN0LXBjLXNkayIpLm9uKCJjbGljayIsIiNvdC1wYy1sc3QgLm90LWFjYy1jbnRyID4gaW5wdXQiLGZ1bmN0aW9uKGUpe1Auc2V0Q2hlY2tlZEF0dHJpYnV0ZShudWxsLGUudGFyZ2V0LGUudGFyZ2V0LmNoZWNrZWQpfSksdGhpcy5zaG93Q29uc2VudEhlYWRlcigpfSxzLnByb3RvdHlwZS5wb3B1bGF0ZUdlbmVyYWxWZW5kb3JzPWZ1bmN0aW9uKCl7dmFyIGUsdCxvLG4scixpPXRoaXMscz1MLkdlbmVyYWxWZW5kb3JzLGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm90LWd2LWFjYyIpLGw9Qm9vbGVhbihhKTtzLmxlbmd0aD8odGhpcy5oYW5kbGVWZW5kb3JzUHJlc2VuY2UoYSksZT10aGlzLmdldEFycm93RWxlbWVudCgpLHRoaXMuaWFiQWNjSW5pdHx8dGhpcy5hZGRJYWJBY2NvcmRpb24oKSx0PXRoaXMuY3JlYXRlU2VsZWN0QWxsQ2hlY2tib3goKSxvPXRoaXMuY3JlYXRlR2VuZXJhbFZlbmRvcnNBY2NvcmRpb24oZSx0KSxuPXRoaXMuY3JlYXRlVmVuZG9yVGVtcGxhdGUoKSxsJiZ2KCIiK0EuUF9HdmVuX0xpc3QpLmh0bWwoIiIpLHI9ITAscy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWkuY3JlYXRlVmVuZG9yRWxlbWVudChlLG4pO3YobD8iIitBLlBfR3Zlbl9MaXN0Om8ucXVlcnlTZWxlY3RvcigiIitBLlBfR3Zlbl9MaXN0KSkuYXBwZW5kKHQpLElvLmlzR2VuVmVuUGFydE9mQWx3YXlzQWN0aXZlR3JvdXAoZS5WZW5kb3JDdXN0b21JZCl8fChyPSExKX0pLGx8fHYoIiNvdC1sc3QtY250IC5vdC1zZGstY29sdW1uIikuYXBwZW5kKG8pLHYoIiNvbmV0cnVzdC1wYy1zZGsiKS5vbigiY2xpY2siLCIjb3QtcGMtbHN0IC5vdC1hY2MtY250ciA+IGlucHV0IixmdW5jdGlvbihlKXtyZXR1cm4gUC5zZXRDaGVja2VkQXR0cmlidXRlKG51bGwsZS50YXJnZXQsZS50YXJnZXQuY2hlY2tlZCl9KSx0aGlzLnNob3dDb25zZW50SGVhZGVyKCksciYmUC5zZXREaXNhYmxlZEF0dHJpYnV0ZSgiI290LXNlbGFsbC1nbnZlbi1oYW5kbGVyIixudWxsLCEwKSk6dGhpcy5oYW5kbGVOb1ZlbmRvcnMoYSl9LHMucHJvdG90eXBlLmhhbmRsZU5vVmVuZG9ycz1mdW5jdGlvbihlKXt0aGlzLmhhc0dlblZlbmRvcnM9ITEsZSYmdihlKS5oaWRlKCl9LHMucHJvdG90eXBlLmhhbmRsZVZlbmRvcnNQcmVzZW5jZT1mdW5jdGlvbihlKXt0aGlzLmhhc0dlblZlbmRvcnM9ITAsZSYmdihlKS5zaG93KCl9LHMucHJvdG90eXBlLmdldEFycm93RWxlbWVudD1mdW5jdGlvbigpe3JldHVybihMLlBDQWNjb3JkaW9uU3R5bGU9PT1jZS5DYXJldD9FLmFycm93RWw6RS5wbHVzTWludXNFbCkuY2xvbmVOb2RlKCEwKX0scy5wcm90b3R5cGUuY3JlYXRlU2VsZWN0QWxsQ2hlY2tib3g9ZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0PShlLnNldEF0dHJpYnV0ZSgiY2xhc3MiLCJvdC1zZWwtYWxsLWNoa2JveCIpLEUuY2hrYm94RWwuY2xvbmVOb2RlKCEwKSk7cmV0dXJuIHQuaWQ9Im90LXNlbGFsbC1nbnZlbmNudHIiLHQucXVlcnlTZWxlY3RvcigiaW5wdXQiKS5pZD0ib3Qtc2VsYWxsLWdudmVuLWhhbmRsZXIiLHQucXVlcnlTZWxlY3RvcigibGFiZWwiKS5zZXRBdHRyaWJ1dGUoImZvciIsIm90LXNlbGFsbC1nbnZlbi1oYW5kbGVyIiksdihlKS5hcHBlbmQodCksZX0scy5wcm90b3R5cGUuY3JlYXRlR2VuZXJhbFZlbmRvcnNBY2NvcmRpb249ZnVuY3Rpb24oZSx0KXt2YXIgbz1FLmFjY29yZGlvbkVsLmNsb25lTm9kZSghMCksbj1vLnF1ZXJ5U2VsZWN0b3IoZy5BQ0NfSERSX0NMQVNTKTtyZXR1cm4gbi5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWVuZCIsZS5jbG9uZU5vZGUoITApKSxuLmluc2VydEFkamFjZW50SFRNTCgiYmVmb3JlZW5kIixtLmdldElubmVySHRtbENvbnRlbnQodGhpcy5nZXRIZWFkaW5nRWxlbWVudChMLlBDZW50ZXJHZW5lcmFsVmVuZG9yc1RleHQsIjQiLHRoaXMuVkVOX1RJVExFX0NMQVNTKSkpLEwuR2VuVmVuT3B0T3V0JiZuLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlZW5kIix0KSxvLnF1ZXJ5U2VsZWN0b3IodGhpcy5BQ0NfVFhUKS5pbnNlcnRBZGphY2VudEhUTUwoImJlZm9yZWVuZCIsbS5nZXRJbm5lckh0bWxDb250ZW50KCI8dWwgaWQ9J290LWduLXZlbmxzdCc+PC91bD4iKSksby5jbGFzc0xpc3QuYWRkKCJvdC1ndi1hY2MiKSxvLnF1ZXJ5U2VsZWN0b3IoImJ1dHRvbiIpLnNldEF0dHJpYnV0ZSh0aGlzLkFSSUFfTEFCRUxfQVRUUklCVVRFLEwuUENlbnRlckdlbmVyYWxWZW5kb3JzVGV4dCksb30scy5wcm90b3R5cGUuY3JlYXRlVmVuZG9yVGVtcGxhdGU9ZnVuY3Rpb24oKXt2YXIgZT1fLnZlbmRvcnMudmVuZG9yVGVtcGxhdGUuY2xvbmVOb2RlKCEwKSx0PWUucXVlcnlTZWxlY3RvcigiYnV0dG9uIik7cmV0dXJuIHQuY2xhc3NMaXN0LnJlbW92ZSgib3QtdmVuLWJveCIpLHQuY2xhc3NMaXN0LmFkZCgib3QtZ3YtdmVuYm94IiksdihlLnF1ZXJ5U2VsZWN0b3IodGhpcy5BQ0NfVFhUKSkuaHRtbCgnPHVsIGNsYXNzPSJvdC1ob3N0LW9wdCI+PC91bD4nKSxlfSxzLnByb3RvdHlwZS5jcmVhdGVWZW5kb3JFbGVtZW50PWZ1bmN0aW9uKGUsdCl7dmFyIG8sbj10aGlzLHI9dGhpcy5tYXBHZW5WZW5kb3JUb0hvc3RGb3JtYXQoZSksaT10LmNsb25lTm9kZSghMCksdD1lLlZlbmRvckN1c3RvbUlkLHM9ZS5OYW1lLGE9KGkucXVlcnlTZWxlY3RvcihBLlBfVmVuX05hbWUpLmlubmVyVGV4dD1zLGkucXVlcnlTZWxlY3RvcigiYnV0dG9uIikpLGE9KFAuc2V0SHRtbEF0dHJpYnV0ZXMoYSx7aWQ6IkduLSIrdH0pLGkucXVlcnlTZWxlY3RvcihBLlBfVmVuX0xpbmspKTtyZXR1cm4gZS5Qcml2YWN5UG9saWN5VXJsPyhQLnNldEh0bWxBdHRyaWJ1dGVzKGEse2hyZWY6ZS5Qcml2YWN5UG9saWN5VXJsLHJlbDoibm9vcGVuZXIiLHRhcmdldDoiX2JsYW5rIn0pLGEuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChMLlBDR1ZlblBvbGljeVR4dCsiJm5ic3A7PHNwYW4gY2xhc3M9J290LXNjcm4tcmRyJz4iK3MrIiAiK0wuTmV3V2luVHh0KyI8L3NwYW4+IiksTC5CYW5uZXJSZXF1aXJlRXh0ZXJuYWxMaW5rcyYmKFMuZnAuQ01QSWNvblNwcml0ZSYmTC5PVEV4dGVybmFsTGlua0xvZ28mJiFMLkJhbm5lckV4dGVybmFsTGlua3NMb2dvPyhvPUkudXBkYXRlQ29ycmVjdFVybChMLk9URXh0ZXJuYWxMaW5rTG9nbyksbz1MLkJhbm5lckV4dGVybmFsTGlua3NMb2dvP0kudXBkYXRlQ29ycmVjdFVybChMLkJhbm5lckV4dGVybmFsTGlua3NMb2dvKTpvLG89bmV3IFVSTChvLHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pLnBhdGhuYW1lLnNwbGl0KCIvIikucG9wKCkuc3BsaXQoIi4iKS5zaGlmdCgpLGEuaW5zZXJ0QWRqYWNlbnRIVE1MKCJhZnRlcmVuZCIsbS5nZXRJbm5lckh0bWxDb250ZW50KCI8c3ZnIGNsYXNzPSdvdC1leHQtbG5rJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVzZSBocmVmPScjIitvKyInPjwvdXNlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4iKSkpOmEuY2xhc3NMaXN0LmFkZCh0aGlzLkVYVF9MSU5LX0NMQVNTKSkpOmEuY2xhc3NMaXN0LmFkZCgib3QtaGlkZSIpLHRoaXMuYWRkRGVzY3JpcHRpb25FbGVtZW50KGEsZS5EZXNjcmlwdGlvbiksTC5HZW5WZW5PcHRPdXQmJnRoaXMuYWRkQ29uc2VudFRvZ2dsZShpLGUsdCxzLHIpLEwuUENBY2NvcmRpb25TdHlsZSE9PWNlLkNhcmV0JiZpLnF1ZXJ5U2VsZWN0b3IoIi5vdC12ZW4taGRyIikuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmViZWdpbiIsRS5wbHVzTWludXNFbC5jbG9uZU5vZGUoITApKSxlLkNvb2tpZXMubGVuZ3RofHx2KGkpLmFkZENsYXNzKCJvdC1oaWRlLWFjYyIpLGUuQ29va2llcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2U9bi5nZXRDb29raWVFbGVtZW50KGUscik7dihpLnF1ZXJ5U2VsZWN0b3IoIi5vdC1ob3N0LW9wdCIpKS5hcHBlbmQoZSl9KSx0aGlzLmNoZWNrSWZMZWdMaW5rUmVtb3ZlKGkpLGl9LHMucHJvdG90eXBlLmFkZENvbnNlbnRUb2dnbGU9ZnVuY3Rpb24oZSx0LG8sbixyKXt2YXIgaT1FLmNoa2JveEVsLmNsb25lTm9kZSghMCkscz0oaS5jbGFzc0xpc3QucmVtb3ZlKCJvdC12ZW4tY3RnbCIpLGkuY2xhc3NMaXN0LmFkZCgib3QtdmVuLWd2Y3RnbCIpLEJvb2xlYW4oXy5nZW5WZW5kb3JzQ29uc2VudFtvXSkpLGE9aS5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLGw9KGEuY2xhc3NMaXN0LmFkZCgib3QtZ252ZW4tY2hrYm94LWhhbmRsZXIiKSxpLnF1ZXJ5U2VsZWN0b3IodGhpcy5MQUJFTF9TVEFUVVMpKSxsPShMLlBDU2hvd0NvbnNlbnRMYWJlbHM/bC5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KHM/TC5QQ0FjdGl2ZVRleHQ6TC5QQ0luYWN0aXZlVGV4dCk6UC5yZW1vdmVDaGlsZChsKSxQLnNldENoZWNrZWRBdHRyaWJ1dGUoIiIsYSxzKSxQLnNldEh0bWxBdHRyaWJ1dGVzKGEse2lkOiJvdC1nbnZlbi1jaGtib3gtIitvLCJnbi12aWQiOm8sImFyaWEtbGFiZWwiOm59KSxJby5pc0dlblZlblBhcnRPZkFsd2F5c0FjdGl2ZUdyb3VwKG8pJiZQLnNldERpc2FibGVkQXR0cmlidXRlKG51bGwsYSwhMCksaS5xdWVyeVNlbGVjdG9yKCJsYWJlbCIpLnNldEF0dHJpYnV0ZSgiZm9yIiwib3QtZ252ZW4tY2hrYm94LSIrbyksaS5xdWVyeVNlbGVjdG9yKEEuUF9MYWJlbF9UeHQpLnRleHRDb250ZW50PW4sZS5xdWVyeVNlbGVjdG9yKEEuUF9UZ2xfQ250cikpO3YobCkuYXBwZW5kKGkpLGwuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCJiZWZvcmVlbmQiLEUuYXJyb3dFbC5jbG9uZU5vZGUoITApKX0scy5wcm90b3R5cGUuYWRkSWFiQWNjb3JkaW9uPWZ1bmN0aW9uKCl7dmFyIGU9KEwuUENBY2NvcmRpb25TdHlsZT09PWNlLkNhcmV0P0UuYXJyb3dFbDpFLnBsdXNNaW51c0VsKS5jbG9uZU5vZGUoITApLHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI29uZXRydXN0LXBjLXNkayAub3Qtc2VsLWFsbC1jaGtib3giKSxvPXQuY2xvbmVOb2RlKCEwKSx0PShQLnJlbW92ZUNoaWxkKG8ucXVlcnlTZWxlY3RvcigiI290LXNlbGFsbC1ob3N0Y250ciIpKSxQLnJlbW92ZUNoaWxkKHQucXVlcnlTZWxlY3RvcigiI290LXNlbGFsbC12ZW5jbnRyIikpLFAucmVtb3ZlQ2hpbGQodC5xdWVyeVNlbGVjdG9yKCIjb3Qtc2VsYWxsLWxpY250ciIpKSxFLmFjY29yZGlvbkVsLmNsb25lTm9kZSghMCkpO3QuY2xhc3NMaXN0LmFkZCgib3QtaWFiLWFjYyIpLHQucXVlcnlTZWxlY3RvcihnLkFDQ19IRFJfQ0xBU1MpLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlRW5kIixlLmNsb25lTm9kZSghMCkpLHQucXVlcnlTZWxlY3RvcihnLkFDQ19IRFJfQ0xBU1MpLmluc2VydEFkamFjZW50SFRNTCgiYmVmb3JlRW5kIixtLmdldElubmVySHRtbENvbnRlbnQodGhpcy5nZXRIZWFkaW5nRWxlbWVudChMLlBDSUFCVmVuZG9yc1RleHQsIjQiLHRoaXMuVkVOX1RJVExFX0NMQVNTKSkpLHQucXVlcnlTZWxlY3RvcihnLkFDQ19IRFJfQ0xBU1MpLmluc2VydEFkamFjZW50RWxlbWVudCgiYmVmb3JlRW5kIixvKSx0LnF1ZXJ5U2VsZWN0b3IodGhpcy5BQ0NfVFhUKS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZUVuZCIsdigiI290LXZlbi1sc3QiKS5lbFswXSksdigiI290LWxzdC1jbnQgLm90LXNkay1jb2x1bW4iKS5hcHBlbmQodCksdC5xdWVyeVNlbGVjdG9yKCJidXR0b24iKS5zZXRBdHRyaWJ1dGUodGhpcy5BUklBX0xBQkVMX0FUVFJJQlVURSxMLlBDSUFCVmVuZG9yc1RleHQpLHRoaXMuaWFiQWNjSW5pdD0hMH0scy5wcm90b3R5cGUuc2hvd0NvbnNlbnRIZWFkZXI9ZnVuY3Rpb24oKXt2YXIgZT1iLmxlZ0ludFNldHRpbmdzO3YoIiNvbmV0cnVzdC1wYy1zZGsgLm90LXNlbC1hbGwtaGRyIikuc2hvdygpLGUuUEFsbG93TEkmJiFlLlBTaG93TGVnSW50QnRufHx2KCIjb25ldHJ1c3QtcGMtc2RrIC5vdC1saS1oZHIiKS5oaWRlKCl9LHMucHJvdG90eXBlLnNldEJhY2tCdG5UeHQ9ZnVuY3Rpb24oKXsoUy5pc1YyVGVtcGxhdGU/KHYoQS5QX1ZlbmRvcl9MaXN0KyIgLmJhY2stYnRuLWhhbmRsZXIiKS5hdHRyKHRoaXMuQVJJQV9MQUJFTF9BVFRSSUJVVEUsTC5QQ2VudGVyQmFja1RleHQpLHYoQS5QX1ZlbmRvcl9MaXN0KyIgLmJhY2stYnRuLWhhbmRsZXIgdGl0bGUiKSk6dihBLlBfVmVuZG9yX0xpc3QrIiAuYmFjay1idG4taGFuZGxlciAucGMtYmFjay1idXR0b24tdGV4dCIpKS5odG1sKEwuUENlbnRlckJhY2tUZXh0KX0scy5wcm90b3R5cGUuZ2V0Q29va2llRWxlbWVudD1mdW5jdGlvbihlLHQpe3ZhciBvPV8uaG9zdHMuaG9zdENvb2tpZVRlbXBsYXRlLmNsb25lTm9kZSghMCksbj1vLnF1ZXJ5U2VsZWN0b3IoImRsIikuY2xvbmVOb2RlKCEwKSxyPShuLmNsYXNzTGlzdC5yZW1vdmUoImNvb2tpZS1uYW1lLWNvbnRhaW5lciIpLHYobykuaHRtbCgiIiksZS5OYW1lKSxpPShMLkFkZExpbmtzVG9Db29raWVwZWRpYSYmdC5pc0ZpcnN0UGFydHkmJihyPUkuZ2V0Q29va2llTGFiZWwoZSxMLkFkZExpbmtzVG9Db29raWVwZWRpYSkpLG4uY2xvbmVOb2RlKCEwKSk7cmV0dXJuIGkuY2xhc3NMaXN0LmFkZChBLlBfY19OYW1lKSxpLnF1ZXJ5U2VsZWN0b3IodGhpcy5OVEhfQ0hJTERfT05FX1NFTEVDVE9SKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KEwucGNDTGlzdE5hbWUpLGkucXVlcnlTZWxlY3Rvcih0aGlzLk5USF9DSElMRF9UV09fU0VMRUNUT1IpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQociksdihvKS5hcHBlbmQoaSksTC5wY1Nob3dDb29raWVIb3N0JiYoKGk9bi5jbG9uZU5vZGUoITApKS5jbGFzc0xpc3QuYWRkKEEuUF9jX0hvc3QpLGkucXVlcnlTZWxlY3Rvcih0aGlzLk5USF9DSElMRF9PTkVfU0VMRUNUT1IpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQoTC5wY0NMaXN0SG9zdCksaS5xdWVyeVNlbGVjdG9yKHRoaXMuTlRIX0NISUxEX1RXT19TRUxFQ1RPUikuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChlLkhvc3QpLHYobykuYXBwZW5kKGkpKSxMLnBjU2hvd0Nvb2tpZUR1cmF0aW9uJiYoKGk9bi5jbG9uZU5vZGUoITApKS5jbGFzc0xpc3QuYWRkKEEuUF9jX0R1cmF0aW9uKSxpLnF1ZXJ5U2VsZWN0b3IodGhpcy5OVEhfQ0hJTERfT05FX1NFTEVDVE9SKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KEwucGNDTGlzdER1cmF0aW9uKSxpLnF1ZXJ5U2VsZWN0b3IodGhpcy5OVEhfQ0hJTERfVFdPX1NFTEVDVE9SKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KGUuSXNTZXNzaW9uP0wuTGlmZXNwYW5UeXBlVGV4dDpJLmdldER1cmF0aW9uKGUpKSx2KG8pLmFwcGVuZChpKSksTC5wY1Nob3dDb29raWVUeXBlJiYocj10LlR5cGU9PT1oZS5HZW5WZW5kb3I/IWUuaXNUaGlyZFBhcnR5OnQuaXNGaXJzdFBhcnR5LChpPW4uY2xvbmVOb2RlKCEwKSkuY2xhc3NMaXN0LmFkZChBLlBfY19UeXBlKSxpLnF1ZXJ5U2VsZWN0b3IodGhpcy5OVEhfQ0hJTERfT05FX1NFTEVDVE9SKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KEwucGNDTGlzdFR5cGUpLGkucXVlcnlTZWxlY3Rvcih0aGlzLk5USF9DSElMRF9UV09fU0VMRUNUT1IpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQocj9MLmZpcnN0UGFydHlUeHQ6TC50aGlyZFBhcnR5VHh0KSx2KG8pLmFwcGVuZChpKSksTC5wY1Nob3dDb29raWVDYXRlZ29yeSYmKHI9dm9pZCAwLHI9dC5UeXBlPT09aGUuR2VuVmVuZG9yP2UuY2F0ZWdvcnk6KHQuaXNGaXJzdFBhcnR5P2U6dCkuZ3JvdXBOYW1lKSYmKChpPW4uY2xvbmVOb2RlKCEwKSkuY2xhc3NMaXN0LmFkZChBLlBfY19DYXRlZ29yeSksaS5xdWVyeVNlbGVjdG9yKHRoaXMuTlRIX0NISUxEX09ORV9TRUxFQ1RPUikuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChMLnBjQ0xpc3RDYXRlZ29yeSksaS5xdWVyeVNlbGVjdG9yKHRoaXMuTlRIX0NISUxEX1RXT19TRUxFQ1RPUikuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudChyKSx2KG8pLmFwcGVuZChpKSksTC5wY1Nob3dDb29raWVEZXNjcmlwdGlvbiYmZS5kZXNjcmlwdGlvbiYmKChpPW4uY2xvbmVOb2RlKCEwKSkuY2xhc3NMaXN0LmFkZChBLlBfY19EZXNjKSxpLnF1ZXJ5U2VsZWN0b3IodGhpcy5OVEhfQ0hJTERfT05FX1NFTEVDVE9SKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KEwucGNDTGlzdERlc2NyaXB0aW9uKSxpLnF1ZXJ5U2VsZWN0b3IodGhpcy5OVEhfQ0hJTERfVFdPX1NFTEVDVE9SKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KGUuZGVzY3JpcHRpb24pLHYobykuYXBwZW5kKGkpKSxvfSxzLnByb3RvdHlwZS5nZXROb1Jlc3VsdHNGb3VuZD1mdW5jdGlvbihlKXtlPV8uc2hvd1RyYWNraW5nVGVjaD9MLlBDVGVjaE5vdEZvdW5kOmU/TC5QQ0hvc3ROb3RGb3VuZDpMLlBDVmVuZG9yTm90Rm91bmQ7cmV0dXJuIiAiK2UrIi4ifSxzLnByb3RvdHlwZS5nZXRBZGRpdGlvbmFsVGVjaG5vbG9naWVzSHRtbD1mdW5jdGlvbihlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksbz1MLkFkZGl0aW9uYWxUZWNobm9sb2dpZXNDb25maWcsbj0wPGUuQ29va2llcy5sZW5ndGg7cmV0dXJuKG49biYmZS5Db29raWVzWzBdLkhvc3RJZD09PXRoaXMuRklSU1RfUEFSVFlfQ09PS0lFU19HUk9VUF9OQU1FPzA8ZS5Db29raWVzWzBdLkNvb2tpZXMubGVuZ3RoOm4pJiYoKG49Zy5nZXRNYWluQWNjb3JkaW9uQ29udGFpbmVyKG8uUENDb29raWVzTGFiZWwsby5QQ0Nvb2tpZXNMYWJlbCwhMSkpLmNsYXNzTGlzdC5hZGQodGhpcy5URUNIX0NPT0tJRVNfU0VMRUNUT1IpLHQuYXBwZW5kQ2hpbGQobikpLDA8ZS5Mb2NhbFN0b3JhZ2VzLmxlbmd0aCYmKChuPWcuZ2V0TWFpbkFjY29yZGlvbkNvbnRhaW5lcihvLlBDTG9jYWxTdG9yYWdlTGFiZWwsby5QQ0xvY2FsU3RvcmFnZUxhYmVsKSkuY2xhc3NMaXN0LmFkZCgidGVjaC1sb2NhbCIpLGcuc2V0U2Vzc2lvbkxvY2FsU3RvcmFnZVRlbXBsYXRlKG4sZS5Mb2NhbFN0b3JhZ2VzLEwuQWRkaXRpb25hbFRlY2hub2xvZ2llc0NvbmZpZy5QQ0xvY2FsU3RvcmFnZUR1cmF0aW9uVGV4dCksdC5hcHBlbmRDaGlsZChuKSksMDxlLlNlc3Npb25TdG9yYWdlcy5sZW5ndGgmJigobj1nLmdldE1haW5BY2NvcmRpb25Db250YWluZXIoby5QQ1Nlc3Npb25TdG9yYWdlTGFiZWwsby5QQ1Nlc3Npb25TdG9yYWdlRHVyYXRpb25UZXh0KSkuY2xhc3NMaXN0LmFkZCgidGVjaC1zZXNzaW9uIiksZy5zZXRTZXNzaW9uTG9jYWxTdG9yYWdlVGVtcGxhdGUobixlLlNlc3Npb25TdG9yYWdlcyxMLkFkZGl0aW9uYWxUZWNobm9sb2dpZXNDb25maWcuUENTZXNzaW9uU3RvcmFnZUR1cmF0aW9uVGV4dCksdC5hcHBlbmRDaGlsZChuKSksdH0scy5wcm90b3R5cGUuZ2V0TWFpbkFjY29yZGlvbkNvbnRhaW5lcj1mdW5jdGlvbihlLHQsbyl7dm9pZCAwPT09byYmKG89ITApO3ZhciBuPWcuZ2V0QWNjb3JkaW9uU3R5bGVFbGVtZW50KCkscj1FLmFjY29yZGlvbkVsLmNsb25lTm9kZSghMCk7cmV0dXJuIHIuY2xhc3NMaXN0LmFkZCgib3QtYWRkLXRlY2giKSxyLnF1ZXJ5U2VsZWN0b3IoZy5BQ0NfSERSX0NMQVNTKS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZUVuZCIsbiksci5xdWVyeVNlbGVjdG9yKGcuQUNDX0hEUl9DTEFTUykuaW5zZXJ0QWRqYWNlbnRIVE1MKCJiZWZvcmVFbmQiLG0uZ2V0SW5uZXJIdG1sQ29udGVudCh0aGlzLmdldEhlYWRpbmdFbGVtZW50KGUsIjQiLHRoaXMuVkVOX1RJVExFX0NMQVNTKSkpLHIucXVlcnlTZWxlY3RvcigiYnV0dG9uIikuc2V0QXR0cmlidXRlKHRoaXMuQVJJQV9MQUJFTF9BVFRSSUJVVEUsdCksbyYmci5xdWVyeVNlbGVjdG9yKHRoaXMuQUNDX1RYVCkuaW5zZXJ0QWRqYWNlbnRIVE1MKCJiZWZvcmVlbmQiLG0uZ2V0SW5uZXJIdG1sQ29udGVudCgnPHVsIGlkPSJvdC1ob3N0LWxzdCIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyI+PC91bD4nKSksci5jbG9uZU5vZGUoITApfSxzLnByb3RvdHlwZS5zZXRTZXNzaW9uTG9jYWxTdG9yYWdlVGVtcGxhdGU9ZnVuY3Rpb24oZSx0LG8pe3ZhciBuPV8uaG9zdHMuaG9zdFRlbXBsYXRlLmNsb25lTm9kZSghMCkscj0oUC5yZW1vdmVDaGlsZChuLnF1ZXJ5U2VsZWN0b3IoIi5vdC1hIHNjYy10eHQiKSksZS5xdWVyeVNlbGVjdG9yKHRoaXMuQUNDX1RYVCsiICIrQS5QX0hvc3RfQ250cikpO3IucmVtb3ZlQXR0cmlidXRlKCJzdHlsZSIpLHIuY2xhc3NMaXN0LmFkZCgib3QtaG9zdC1vcHQiKTtmb3IodmFyIGk9MCxzPXQ7aTxzLmxlbmd0aDtpKyspe3ZhciBhPXNbaV0sYT1nLmdldFNlc3Npb25Mb2NhbFN0b3JhZ2VFbGVtZW50KGEsbyk7ci5hcHBlbmQoYSl9fSxzLnByb3RvdHlwZS5nZXRTZXNzaW9uTG9jYWxTdG9yYWdlRWxlbWVudD1mdW5jdGlvbihlLHQpe3ZhciBvPV8uaG9zdHMuaG9zdENvb2tpZVRlbXBsYXRlLmNsb25lTm9kZSghMCksbj1vLnF1ZXJ5U2VsZWN0b3IoImRsIikuY2xvbmVOb2RlKCEwKSxyPSh2KG8pLmh0bWwoIiIpLGcuY3JlYXRlS2V5VmFsdWVEaXZFbGUobixBLlBfY19OYW1lLEwucGNDTGlzdE5hbWUsZS5OYW1lKSkscj0odihvKS5hcHBlbmQociksZy5jcmVhdGVLZXlWYWx1ZURpdkVsZShuLEEuUF9jX0hvc3QsTC5wY0NMaXN0SG9zdCxlLkhvc3QpKSxyPSh2KG8pLmFwcGVuZChyKSxnLmNyZWF0ZUtleVZhbHVlRGl2RWxlKG4sQS5QX2NfRHVyYXRpb24sTC5wY0NMaXN0RHVyYXRpb24sdCkpLHQ9KHYobykuYXBwZW5kKHIpLGcuY3JlYXRlS2V5VmFsdWVEaXZFbGUobixBLlBfY19EZXNjLEwucGNDTGlzdERlc2NyaXB0aW9uLGUuZGVzY3JpcHRpb24pKTtyZXR1cm4gdihvKS5hcHBlbmQodCksb30scy5wcm90b3R5cGUuY3JlYXRlS2V5VmFsdWVEaXZFbGU9ZnVuY3Rpb24oZSx0LG8sbil7ZT1lLmNsb25lTm9kZSghMCk7cmV0dXJuIGUuY2xhc3NMaXN0LmFkZCh0KSxlLnF1ZXJ5U2VsZWN0b3IodGhpcy5OVEhfQ0hJTERfT05FX1NFTEVDVE9SKS5pbm5lckhUTUw9bS5nZXRJbm5lckh0bWxDb250ZW50KG8pLGUucXVlcnlTZWxlY3Rvcih0aGlzLk5USF9DSElMRF9UV09fU0VMRUNUT1IpLmlubmVySFRNTD1tLmdldElubmVySHRtbENvbnRlbnQobiksZX0scy5wcm90b3R5cGUuZ2V0QWRkaXRpb25hbFRlY2hub2xvZ2llc0RhdGFGcm9tR3JvdXA9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG89W10sbj17U2Vzc2lvblN0b3JhZ2VzOltdLExvY2FsU3RvcmFnZXM6W10sQ29va2llczpbXX0scj0wLGk9Zy5nZXRHcm91cHNGcm9tRmlsdGVyKGUpO3I8aS5sZW5ndGg7cisrKXt2YXIgcz1pW3JdLGE9T24uZ2V0Q29va2llc0Zvckdyb3VwKHMpLG89VShvLG51bGwhPSh0PWEuZmlyc3RQYXJ0eUNvb2tpZXNMaXN0KT90OltdKTtuLkNvb2tpZXM9VShuLkNvb2tpZXMsYS50aGlyZFBhcnR5Q29va2llc0xpc3QpLG4uTG9jYWxTdG9yYWdlcz1VKG4uTG9jYWxTdG9yYWdlcyxudWxsIT0oYT1udWxsPT0odD1zLlRyYWNraW5nVGVjaCk/dm9pZCAwOnQuTG9jYWxTdG9yYWdlcyk/YTpbXSksbi5TZXNzaW9uU3RvcmFnZXM9VShuLlNlc3Npb25TdG9yYWdlcyxudWxsIT0oYT1udWxsPT0odD1zLlRyYWNraW5nVGVjaCk/dm9pZCAwOnQuU2Vzc2lvblN0b3JhZ2VzKT9hOltdKX1yZXR1cm4gby5sZW5ndGgmJm4uQ29va2llcy51bnNoaWZ0KHtIb3N0TmFtZTpMLlBDRmlyc3RQYXJ0eUNvb2tpZUxpc3RUZXh0LERpc3BsYXlOYW1lOkwuUENGaXJzdFBhcnR5Q29va2llTGlzdFRleHQsSG9zdElkOnRoaXMuRklSU1RfUEFSVFlfQ09PS0lFU19HUk9VUF9OQU1FLGlzRmlyc3RQYXJ0eTohMCxDb29raWVzOm8sRGVzY3JpcHRpb246IiJ9KSxufSxzLnByb3RvdHlwZS5nZXRGaXJzdHNBbmRUaGlyZENvb2tpc0Zyb21Hcm91cHM9ZnVuY3Rpb24oZSl7dmFyIHQ9W10sbz1bXTtyZXR1cm4gZy5nZXRHcm91cHNGcm9tRmlsdGVyKGUpLmZvckVhY2goZnVuY3Rpb24oZSl7ZT1Pbi5nZXRDb29raWVzRm9yR3JvdXAoZSk7dD1VKHQsZS5maXJzdFBhcnR5Q29va2llc0xpc3QpLG89VShvLGUudGhpcmRQYXJ0eUNvb2tpZXNMaXN0KX0pLHtmaXJzdFBhcnR5Q29va2llc0xpc3Q6dCx0aGlyZFBhcnR5Q29va2llc0xpc3Q6b319LHMucHJvdG90eXBlLmdldEdyb3Vwc0Zyb21GaWx0ZXI9ZnVuY3Rpb24odCl7dmFyIG89W107cmV0dXJuIEwuR3JvdXBzLmZvckVhY2goZnVuY3Rpb24oZSl7VShlLlN1Ykdyb3VwcyxbZV0pLmZvckVhY2goZnVuY3Rpb24oZSl7KCF0fHwhdC5sZW5ndGh8fC0xIT09dC5pbmRleE9mKGUuQ3VzdG9tR3JvdXBJZCkpJiZvLnB1c2goZSl9KX0pLG99LHMucHJvdG90eXBlLmdldEFjY29yZGlvblN0eWxlRWxlbWVudD1mdW5jdGlvbigpe3JldHVybihMLlBDQWNjb3JkaW9uU3R5bGU9PT1jZS5DYXJldD9FLmFycm93RWw6RS5wbHVzTWludXNFbCkuY2xvbmVOb2RlKCEwKX0scy5wcm90b3R5cGUuZ2V0RmlsdGVyZWRBZGRpdGlvbmFUZWNodERhdGE9ZnVuY3Rpb24oZSx0KXt2YXIgbyxuPXtTZXNzaW9uU3RvcmFnZXM6W10sTG9jYWxTdG9yYWdlczpbXSxDb29raWVzOltdfSxyPXRoaXMuZ2V0U2VhcmNoUXVlcnkoZSksZT1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHQpKTtyZXR1cm4gZS5Db29raWVzWzBdLkhvc3RJZD09PXRoaXMuRklSU1RfUEFSVFlfQ09PS0lFU19HUk9VUF9OQU1FJiYoKG89ZS5Db29raWVzLnNoaWZ0KCkpLkNvb2tpZXM9bnVsbD09KHQ9by5Db29raWVzKT92b2lkIDA6dC5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIHIubGFzdEluZGV4PTAsci50ZXN0KGUuTmFtZXx8ZS5Ib3N0KX0pKSxuLkNvb2tpZXM9bnVsbD09KHQ9ZS5Db29raWVzKT92b2lkIDA6dC5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIHIubGFzdEluZGV4PTAsci50ZXN0KGUuRGlzcGxheU5hbWV8fGUuSG9zdE5hbWUpfSksbyYmMDxvLkNvb2tpZXMubGVuZ3RoJiZuLkNvb2tpZXMudW5zaGlmdChvKSxuLkxvY2FsU3RvcmFnZXM9bnVsbD09KHQ9ZS5Mb2NhbFN0b3JhZ2VzKT92b2lkIDA6dC5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIHIubGFzdEluZGV4PTAsci50ZXN0KGUuTmFtZXx8ZS5Ib3N0KX0pLG4uU2Vzc2lvblN0b3JhZ2VzPW51bGw9PShvPWUuU2Vzc2lvblN0b3JhZ2VzKT92b2lkIDA6by5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIHIubGFzdEluZGV4PTAsci50ZXN0KGUuTmFtZXx8ZS5Ib3N0KX0pLG59LHMucHJvdG90eXBlLmNoZWNrSWZMZWdMaW5rUmVtb3ZlPWZ1bmN0aW9uKGUpe2IuaXNUY2ZWMlRlbXBsYXRlJiZlLnF1ZXJ5U2VsZWN0b3IoQS5QX1Zlbl9MZWdfQ2xhaW0pLnJlbW92ZSgpfTt2YXIgZyxVcz1zO2Z1bmN0aW9uIHMoKXt0aGlzLmhhc0lhYlZlbmRvcnM9ITEsdGhpcy5oYXNHb29nbGVWZW5kb3JzPSExLHRoaXMuaGFzR2VuVmVuZG9ycz0hMSx0aGlzLmlhYkFjY0luaXQ9ITEsdGhpcy5fZGlzcGxheU51bGw9ImRpc3BsYXk6ICcnOyIsdGhpcy5BUklBX0xBQkVMX0FUVFJJQlVURT0iYXJpYS1sYWJlbCIsdGhpcy5URUNIX0NPT0tJRVNfU0VMRUNUT1I9InRlY2gtY29va2llcyIsdGhpcy5GSVJTVF9QQVJUWV9DT09LSUVTX0dST1VQX05BTUU9ImZpcnN0LXBhcnR5LWNvb2tpZXMtZ3JvdXAiLHRoaXMuTEFCRUxfU1RBVFVTPSIub3QtbGFiZWwtc3RhdHVzIix0aGlzLkNPTlNFTlRfQ0FURUdPUlk9Ii5jb25zZW50LWNhdGVnb3J5Iix0aGlzLkFDQ19UWFQ9Ii5vdC1hY2MtdHh0Iix0aGlzLk5USF9DSElMRF9PTkVfU0VMRUNUT1I9ImR0Om50aC1jaGlsZCgxKSIsdGhpcy5OVEhfQ0hJTERfVFdPX1NFTEVDVE9SPSJkZDpudGgtY2hpbGQoMikiLHRoaXMuTElORV9USFJPVUdIX0NMQVNTPSJsaW5lLXRocm91Z2giLHRoaXMuQUNDX0hEUl9DTEFTUz0iLm90LWFjYy1oZHIiLHRoaXMuVkVOX1RJVExFX0NMQVNTPSJvdC12ZW5zZWMtdGl0bGUiLHRoaXMuRVhUX0xJTktfQ0xBU1M9Im90LWV4dC1sbmsiLHRoaXMuZ29vZ2xlU2VhcmNoU2VsZWN0b3JzPXt2ZW5kb3JBY2NCdG46IiNvdC1hZGR0bC12ZW5sc3QgI0FkdGwtSUFCIixuYW1lOiJuYW1lIixhY2NJZDoiLm90LWFkdGx2LWFjYyIsc2VsZWN0QWxsRXZudEhuZGxyOiIjb3Qtc2VsYWxsLWFkdGx2ZW4taGFuZGxlciIsdmVuTGlzdElkOiIjb3QtYWRkdGwtdmVubHN0IixjdGdsOiIub3QtdmVuLWFkdGxjdGdsIn0sdGhpcy5nZW5WZW5kb3JTZWFyY2hTZWxlY3RvcnM9e3ZlbmRvckFjY0J0bjoiI290LWduLXZlbmxzdCAjR24tIixuYW1lOiJOYW1lIixhY2NJZDoiLm90LWd2LWFjYyIsc2VsZWN0QWxsRXZudEhuZGxyOiIjb3Qtc2VsYWxsLWdudmVuLWhhbmRsZXIiLHZlbkxpc3RJZDoiI290LWduLXZlbmxzdCIsY3RnbDoiLm90LXZlbi1ndmN0Z2wifX1Lcy5wcm90b3R5cGUuaW5pdEJhbm5lcj1mdW5jdGlvbigpe3RoaXMuY2FuSW1wbGllZENvbnNlbnRMYW5kaW5nUGFnZSgpLFMubW9kdWxlSW5pdGlhbGl6ZXIuQ29va2llU1BBRW5hYmxlZD92KHdpbmRvdykub24oIm90bG9hZGJhbm5lciIsdGhpcy53aW5kb3dMb2FkQmFubmVyLmJpbmQodGhpcykpOnYod2luZG93KS5vbmUoIm90bG9hZGJhbm5lciIsdGhpcy53aW5kb3dMb2FkQmFubmVyLmJpbmQodGhpcykpfSxLcy5wcm90b3R5cGUuaW5zZXJ0Q1NCdG5IdG1sQW5kQ3NzPWZ1bmN0aW9uKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvbmV0cnVzdC1zdHlsZSIpLHQ9KHQuaW5uZXJIVE1MPW0uZ2V0SW5uZXJIdG1sQ29udGVudCh0LmlubmVySFRNTCt4cy5jc0J0bkdyb3VwLmNzcyksZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLHQ9KHYodCkuaHRtbCh4cy5jc0J0bkdyb3VwLmh0bWwpLHQucXVlcnlTZWxlY3RvcigiI290LXNkay1idG4tZmxvYXRpbmciKSk7ZSYmdCYmdih0KS5yZW1vdmVDbGFzcygib3QtaGlkZSIpLHYoIiNvbmV0cnVzdC1jb25zZW50LXNkayIpLmFwcGVuZCh0KSxMLmNvb2tpZVBlcnNpc3RlbnRMb2dvJiYoTC5jb29raWVQZXJzaXN0ZW50TG9nby5pbmNsdWRlcygib3RfZ3VhcmRfbG9nby5zdmciKT90aGlzLmFwcGx5UGVyc2lzdGVudFN2Z09uRE9NKCk6KHYoIi5vdC1mbG9hdGluZy1idXR0b25fX2Zyb250LCAub3QtZmxvYXRpbmctYnV0dG9uX19iYWNrIikuYWRkQ2xhc3MoImN1c3RvbS1wZXJzaXN0ZW50LWljb24iKSxlPUkudXBkYXRlQ29ycmVjdFVybChMLmNvb2tpZVBlcnNpc3RlbnRMb2dvKSx0PW5ldyBVUkwoZSx3aW5kb3cubG9jYXRpb24ub3JpZ2luKS5wYXRobmFtZSxTLmZwLkNNUEljb25TcHJpdGUmJih0LmluY2x1ZGVzKCIvbG9nb3Mvc3RhdGljLyIpfHx0LmluY2x1ZGVzKCJzcmMvYXNzZXRzL2ltYWdlcy8iKSYmbmV3IFVSTChlLHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pLmhvc3QuaW5jbHVkZXMoImxvY2FsaG9zdCIpKSYmKGU9Ijxzdmc+XG4gICAgICAgICAgICAgICAgICAgIDx1c2UgaHJlZj0nIyIrdC5zcGxpdCgiLyIpLnBvcCgpLnNwbGl0KCIuIikuc2hpZnQoKSsiJz48L3VzZT5cbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+Iix2KCIub3QtZmxvYXRpbmctYnV0dG9uX19mcm9udCA+IGJ1dHRvbiIpLmh0bWwoZSksdigiLm90LWZsb2F0aW5nLWJ1dHRvbl9fZnJvbnQgc3ZnIikuYXR0cigiY2xhc3MiLCJvdC1zb3VyY2Utc3ByaXRlIikpKSl9LEtzLnByb3RvdHlwZS5hcHBseVBlcnNpc3RlbnRTdmdPbkRPTT1mdW5jdGlvbigpe3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciB0O3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm4gUy5mcC5DTVBJY29uU3ByaXRlPyh0PSI8c3ZnPlxuICAgICAgICAgICAgPHVzZSBocmVmPScjb3RfZ3VhcmRfbG9nbyc+PC91c2U+XG4gICAgICAgICAgICA8L3N2Zz4iLFszLDNdKTpbMywxXTtjYXNlIDE6cmV0dXJuWzQsS3QuZ2V0UGVyc2lzdGVudENvb2tpZVN2ZygpXTtjYXNlIDI6dD1lLnNlbnQoKSxlLmxhYmVsPTM7Y2FzZSAzOnJldHVybiB2KHRoaXMuRkxPQVRJTkdfQ09PS0lFX0ZST05UX0JUTikuaHRtbCh0KSx1Lm90R3VhcmRMb2dvUmVzb2x2ZSghMCksWzJdfX0pfSl9LEtzLnByb3RvdHlwZS5jYW5JbXBsaWVkQ29uc2VudExhbmRpbmdQYWdlPWZ1bmN0aW9uKCl7dGhpcy5pc0ltcGxpZWRDb25zZW50KCkmJiFfby5pc0xhbmRpbmdQYWdlKCkmJiJ0cnVlIj09PVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguQVdBSVRJTkdfUkVfQ09OU0VOVCkmJnRoaXMuY2hlY2tGb3JSZWZyZXNoQ2xvc2VJbXBsaWVkKCl9LEtzLnByb3RvdHlwZS5pc0ltcGxpZWRDb25zZW50PWZ1bmN0aW9uKCl7cmV0dXJuIEwuQ29uc2VudE1vZGVsJiYiaW1wbGllZCBjb25zZW50Ij09PUwuQ29uc2VudE1vZGVsLk5hbWUudG9Mb3dlckNhc2UoKXx8MDxiLmNvbnNlbnRhYmxlSW1wbGllZENvbnNlbnRHcm91cC5sZW5ndGh9LEtzLnByb3RvdHlwZS5jaGVja0ZvclJlZnJlc2hDbG9zZUltcGxpZWQ9ZnVuY3Rpb24oKXtDLmJhbm5lckNsb3NlQnV0dG9uSGFuZGxlcighMCl9LEtzLnByb3RvdHlwZS5oaWRlQ3VzdG9tSHRtbD1mdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvbmV0cnVzdC1iYW5uZXItc2RrIik7ZSYmZChlLCJkaXNwbGF5OiBub25lOyIpfSxLcy5wcm90b3R5cGUuc2hvdWxkU2hvd0Jhbm5lcj1mdW5jdGlvbihlKXtyZXR1cm4gTC5TaG93QWxlcnROb3RpY2UmJiFlJiYhTC5Ob0Jhbm5lciYmIV8uaGlkZUJhbm5lcn0sS3MucHJvdG90eXBlLnNob3VsZFNob3dQYz1mdW5jdGlvbihlKXtyZXR1cm4gTC5TaG93QWxlcnROb3RpY2UmJiFlJiZMLk5vQmFubmVyfSxLcy5wcm90b3R5cGUud2luZG93TG9hZEJhbm5lcj1mdW5jdGlvbigpe3JldHVybiBGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciB0LG8sbixyLGkscyxhO3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm4odGhpcy5jb3JlLnN1YnN0aXR1dGVQbGFpblRleHRTY3JpcHRUYWdzKCksdD1TLm1vZHVsZUluaXRpYWxpemVyLHYoIiNvbmV0cnVzdC1jb25zZW50LXNkayIpLmxlbmd0aD9vPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvbmV0cnVzdC1jb25zZW50LXNkayIpOihvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHYobykuYXR0cigiaWQiLCJvbmV0cnVzdC1jb25zZW50LXNkayIpLHYobykuYXR0cigiZGF0YS1ub3NuaXBwZXQiLCJ0cnVlIiksdihkb2N1bWVudC5ib2R5KS5hcHBlbmQobykpLFMuZnAuQ01QSWNvblNwcml0ZSk/KHI9TC5PVFNwcml0ZUxvZ28sKG49Uy5tb2R1bGVJbml0aWFsaXplci5TY3JpcHRUeXBlKSE9PXFlLkxPQ0FMJiZuIT09cWUuTE9DQUxfVEVTVHx8KHI9SS51cGRhdGVDb3JyZWN0VXJsKEwuT1RTcHJpdGVMb2dvKSksWzQsS3QuZ2V0U3ByaXRlU3ZnKHIpXSk6WzMsMl07Y2FzZSAxOm49ZS5zZW50KCkscj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx2KHIpLmF0dHIoImlkIiwib25ldHJ1c3Qtc3ByaXRlLXN2ZyIpLHYocikuaHRtbChuKSx2KG8pLmFwcGVuZChyKSxlLmxhYmVsPTI7Y2FzZSAyOnJldHVybih2KCIub25ldHJ1c3QtcGMtZGFyay1maWx0ZXIiKS5sZW5ndGh8fChpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHYoaSkuYXR0cigiY2xhc3MiLCJvbmV0cnVzdC1wYy1kYXJrLWZpbHRlciIpLHYoaSkuYXR0cigiY2xhc3MiLCJvdC1oaWRlIiksdihpKS5hdHRyKCJjbGFzcyIsIm90LWZhZGUtaW4iKSxvLmZpcnN0Q2hpbGQ/by5pbnNlcnRCZWZvcmUoaSxvLmZpcnN0Q2hpbGQpOnYobykuYXBwZW5kKGkpKSxMLklzSWFiRW5hYmxlZCYmdGhpcy5pYWIudXBkYXRlSWFiVmFyaWFibGVSZWZlcmVuY2UoKSxpPU8uaXNBbGVydEJveENsb3NlZEFuZFZhbGlkKCkscz10aGlzLnNob3VsZFNob3dCYW5uZXIoaSksYT10aGlzLnNob3VsZFNob3dQYyhpKSxfLm50ZnlSZXF1aXJlZD8odGhpcy5oaWRlQ3VzdG9tSHRtbCgpLHduLmluaXQoKSx3bi5jaGFuZ2VTdGF0ZSgpKToocz91LmluaXRpYWxpemVBbGFydEh0bWxBbmRIYW5kbGVyKCk6KEwuSXNHUFBFbmFibGVkJiZEcy5zZXRDbXBEaXNwbGF5U3RhdHVzKCJkaXNhYmxlZCIpLHRoaXMuaGlkZUN1c3RvbUh0bWwoKSksdS5hZGRFdmVudExpc3RuZXJGb3JWZW5kb3JzTGlzdCgpKSx0LklzU3VwcHJlc3NQQ3x8KEIuaW5zZXJ0UGNIdG1sKCksdS5pbml0aWFsaXNlQ29uc2VudE5vdGljZUhhbmRsZXJzKCksTC5Jc0lhYkVuYWJsZWQmJnRoaXMuaWFiLkluaXRpYWxpemVWZW5kb3JMaXN0KCkpLHRoaXMucHJlcG9wdWxhdGVDb29raWVPclZlbmRvclBhZ2VUaXRsZSgpLHRoaXMuaW5pdGlhbGl6ZUhiYlR2U2NyaXB0KCksdGhpcy5pbnNlcnRDU0J0bighcyksYSk/WzQsdS50b2dnbGVJbmZvRGlzcGxheSgpXTpbMyw0XTtjYXNlIDM6ZS5zZW50KCksZS5sYWJlbD00O2Nhc2UgNDpyZXR1cm4gdS5pbnNlcnRDb29raWVTZXR0aW5nVGV4dCgpLHRoaXMuaW5pdGlhbGl6ZUZsb2F0aW5nQnV0dG9uT25CYW5uZXJMb2FkKGEpLHFzLmluc2VydFRyYWNraWdUZWNoT3JDb29raWVQb2xpY3koKSxDLmV4ZWN1dGVPcHRhbm9uV3JhcHBlcigpLHRoaXMuaW5pdGlhbGl6ZUNvb2tpZVBhcmFtc09uQmFubmVyTG9hZChzKSxbMl19fSl9KX0sS3MucHJvdG90eXBlLnByZXBvcHVsYXRlQ29va2llT3JWZW5kb3JQYWdlVGl0bGU9ZnVuY3Rpb24oKXtTLmlzVjJUZW1wbGF0ZSYmKEwuR2VuZXJhbFZlbmRvcnNFbmFibGVkP3RoaXMuaWFiLnNldExpc3RTZWFyY2hWYWx1ZXMoX2UudmVuZG9ycyk6dGhpcy5pYWIuc2V0TGlzdFNlYXJjaFZhbHVlcyhfZS5jb29raWVzKSl9LEtzLnByb3RvdHlwZS5pbml0aWFsaXplRmxvYXRpbmdCdXR0b25PbkJhbm5lckxvYWQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dih0aGlzLkZMT0FUSU5HX0NPT0tJRV9CVE4pLG89dih0aGlzLkZMT0FUSU5HX0NPT0tJRV9GUk9OVF9CVE4pLG49dih0aGlzLkZMT0FUSU5HX0NPT0tJRV9CQUNLX0JUTik7dC5sZW5ndGgmJih0LmF0dHIoImRhdGEtdGl0bGUiLEwuQ29va2llU2V0dGluZ0J1dHRvblRleHQpLG8uZWxbMF0uc2V0QXR0cmlidXRlKG10LEwuQ29va2llU2V0dGluZ0J1dHRvblRleHQpLG4uZWxbMF0uc2V0QXR0cmlidXRlKG10LEwuQXJpYUNsb3NlUHJlZmVyZW5jZXMpLGU/KG8uZWxbMF0uc2V0QXR0cmlidXRlKHZ0LCEwKSxvLmVsWzBdLnN0eWxlLmRpc3BsYXk9Im5vbmUiKToobi5lbFswXS5zZXRBdHRyaWJ1dGUodnQsITApLG4uZWxbMF0uc3R5bGUuZGlzcGxheT0ibm9uZSIpKX0sS3MucHJvdG90eXBlLmluaXRpYWxpemVDb29raWVQYXJhbXNPbkJhbm5lckxvYWQ9ZnVuY3Rpb24oZSl7VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsWXQpfHxQby53cml0ZUdycFBhcmFtKHkuT1BUQU5PTl9DT05TRU5UKSxULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxKdCl8fFBvLndyaXRlSHN0UGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQpLF8uc2hvd0dlbmVyYWxWZW5kb3JzJiYhVC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsWHQpJiZQby53cml0ZUdlblZlbkNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5UKSxfLnZzSXNBY3RpdmVBbmRPcHRPdXQmJiFULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxRdCkmJlBvLndyaXRlVlNDb25zZW50Q29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQpLGUmJkJvLnNldEJhbm5lckZvY3VzKCl9LEtzLnByb3RvdHlwZS5pbml0aWFsaXplSGJiVHZTY3JpcHQ9ZnVuY3Rpb24oKXt2YXIgZTtTLm1vZHVsZUluaXRpYWxpemVyLlJlbW90ZUFjdGlvbnNFbmFibGVkJiYoKGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImhiYnR2IikpJiZlLnJlbW92ZSgpLChlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpKS5pZD0iaGJidHYiLGUuc3JjPV8uc3RvcmFnZUJhc2VVUkwrIi9zY3JpcHR0ZW1wbGF0ZXMvIitTLm1vZHVsZUluaXRpYWxpemVyLlZlcnNpb24rIi9oYmJ0di5qcyIsZS50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHYoZG9jdW1lbnQuYm9keSkuYXBwZW5kKGUpKX0sS3MucHJvdG90eXBlLmluc2VydENTQnRuPWZ1bmN0aW9uKGUpe3hzLmNzQnRuR3JvdXAmJih0aGlzLmluc2VydENTQnRuSHRtbEFuZENzcyhlKSx1LmluaXRGbGd0Q2tTdGdCdG5FdmVudEhhbmRsZXJzKCkpfSxLcy5wcm90b3R5cGUuaW5zZXJ0VHJhY2tpbmdUZWNobm9sb2dpZXM9ZnVuY3Rpb24oKXt2YXIgZSx0O3YoIiNvdC1zZGstY29va2llLXBvbGljeSwgI29wdGFub24tY29va2llLXBvbGljeSIpLmxlbmd0aCYmKHdpbmRvdy5PbmV0cnVzdENvb2tpZVBvbGljeSYmd2luZG93Lk9uZXRydXN0Q29va2llUG9saWN5Lkluc2VydENvb2tpZVBvbGljeUh0bWw/d2luZG93Lk9uZXRydXN0Q29va2llUG9saWN5Lkluc2VydENvb2tpZVBvbGljeUh0bWwoSSxMLHYpOigodD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSkuaWQ9ImNvb2tpZS1wb2xpY3ktc2NyaXB0Iix0Lm9ubG9hZD1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuT25ldHJ1c3RDb29raWVQb2xpY3kuSW5zZXJ0Q29va2llUG9saWN5SHRtbChJLEwsdil9LHQudHlwZT0idGV4dC9qYXZhc2NyaXB0Iix0LnNyYz1fLnN0b3JhZ2VCYXNlVVJMKyIvc2NyaXB0dGVtcGxhdGVzLyIrUy5tb2R1bGVJbml0aWFsaXplci5WZXJzaW9uKyIvdHJhY2tpbmdUZWNobm9sb2dpZXMuanMiLG51bGwhPShlPWIuc3JpSGFzaCkmJmVbInRyYWNraW5nVGVjaG5vbG9naWVzLmpzIl0mJih0LmludGVncml0eT1iLnNyaUhhc2hbInRyYWNraW5nVGVjaG5vbG9naWVzLmpzIl0pLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodCkpKX0sS3MucHJvdG90eXBlLmluc2VydFRyYWNraWdUZWNoT3JDb29raWVQb2xpY3k9ZnVuY3Rpb24oKXtTLmZwLkNvb2tpZVYyVHJhY2tpbmdUZWNobm9sb2dpZXM/cXMuaW5zZXJ0VHJhY2tpbmdUZWNobm9sb2dpZXMoKTpUci5pbnNlcnRDb29raWVQb2xpY3lIdG1sKCl9O3ZhciBxcyxqcz1LcztmdW5jdGlvbiBLcygpe3RoaXMuaWFiPWcsdGhpcy5jb3JlPU9uLHRoaXMuRkxPQVRJTkdfQ09PS0lFX0JUTj0iI290LXNkay1idG4tZmxvYXRpbmciLHRoaXMuRkxPQVRJTkdfQ09PS0lFX0ZST05UX0JUTj0iI290LXNkay1idG4tZmxvYXRpbmcgLm90LWZsb2F0aW5nLWJ1dHRvbl9fZnJvbnQgLm90LWZsb2F0aW5nLWJ1dHRvbl9fb3BlbiIsdGhpcy5GTE9BVElOR19DT09LSUVfQkFDS19CVE49IiNvdC1zZGstYnRuLWZsb2F0aW5nIC5vdC1mbG9hdGluZy1idXR0b25fX2JhY2sgLm90LWZsb2F0aW5nLWJ1dHRvbl9fY2xvc2UifXgoSnMsenM9SXIpLEpzLnByb3RvdHlwZS5DbG9zZT1mdW5jdGlvbihlKXtDLmNsb3NlQmFubmVyKCExKSx3aW5kb3cubG9jYXRpb24uaHJlZj0iaHR0cHM6Ly9vdHNkay8vY29uc2VudENoYW5nZWQifSxKcy5wcm90b3R5cGUuUmVqZWN0QWxsPWZ1bmN0aW9uKGUpe0MucmVqZWN0QWxsRXZlbnQoKSx3aW5kb3cubG9jYXRpb24uaHJlZj0iaHR0cHM6Ly9vdHNkay8vY29uc2VudENoYW5nZWQifSxKcy5wcm90b3R5cGUuQWxsb3dBbGw9ZnVuY3Rpb24oZSl7Qy5BbGxvd0FsbFYyKGUpLHdpbmRvdy5sb2NhdGlvbi5ocmVmPSJodHRwczovL290c2RrLy9jb25zZW50Q2hhbmdlZCJ9LEpzLnByb3RvdHlwZS5Ub2dnbGVJbmZvRGlzcGxheT1mdW5jdGlvbigpe3UudG9nZ2xlSW5mb0Rpc3BsYXkoKX07dmFyIHpzLFdzLFlzPUpzO2Z1bmN0aW9uIEpzKCl7dmFyIGU9bnVsbCE9PXpzJiZ6cy5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXM7cmV0dXJuIGUubW9iaWxlT25saW5lVVJMPWIubW9iaWxlT25saW5lVVJMLGV9WnMucHJvdG90eXBlLnN5bmNDb25zZW50UHJvZmlsZT1mdW5jdGlvbih0LGUsbyl7dm9pZCAwPT09byYmKG89ITEpLHQ/Xy5kc1BhcmFtcy5pZD10LnRyaW0oKTp0PV8uZHNQYXJhbXMuaWQsbyYmKF8uZHNQYXJhbXMuaXNBbm9ueW1vdXM9byksZT1lfHxfLmRzUGFyYW1zLnRva2VuLHQmJmUmJkt0LmdldENvbnNlbnRQcm9maWxlKHQsZSkudGhlbihmdW5jdGlvbihlKXtlPUFycmF5LmlzQXJyYXkoZSk/ZVswXTpudWxsO1hzLmNvbnNlbnRQcm9maWxlQ2FsbGJhY2soZSx0KX0pfSxacy5wcm90b3R5cGUuY2hlY2tDYXJyeU92ZXJBbm9uQ29uc2VudEZvcklBQj1mdW5jdGlvbigpe2lmKG51bGw9PShvPWIuY29uc2VudGFibGVJYWJHcnBzKXx8IW8ubGVuZ3RoKXJldHVybntpYWJTeW5jUmVxdWlyZWQ6ITEsbGF0ZXN0Q29uc2VudERhdGU6bmV3IERhdGUoMCl9O2lmKCFiLmNoZWNrTG9jYWxDb25zZW50Rm9ySWFiUHVycG9zZXMpcmV0dXJue2lhYlN5bmNSZXF1aXJlZDohMSxsYXRlc3RDb25zZW50RGF0ZTpuZXcgRGF0ZSgwKX07dmFyIGUsdCxvPSExLG49Xy5jb25zZW50UHJlZmVyZW5jZXMscj1uJiYwPG4ucHVycG9zZXMubGVuZ3RoO2lmKGIuY2FycnlPdmVyQW5vbnltb3VzQ29uc2VudD8oZT0odD10aGlzLmNoZWNrTGF0ZXN0Q29uc2VudERhdGUoYi5zZXJ2ZXJMYXRlc3REYXRlRm9yQ29va2llcykpLmNvbnNlbnRlZERhdGUsdD10LmlzTG9jYWxDb25zZW50TGF0ZXN0KToodD0hMSxpPXRoaXMuZ2V0TGFzdGVzQ29uc2VudERhdGVGcm9tSWFiQ29uc2VudCgpLGIuc2VydmVyTGF0ZXN0RGF0ZUZvckNvb2tpZXM+KGU9aSkmJihlPWIuc2VydmVyTGF0ZXN0RGF0ZUZvckNvb2tpZXMpKSx0aGlzLmNoZWNrSWZTZXJ2ZXJDb25zZW50KHIsdCkpe1Qud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLlBSRVZfVVNFUl9DT05TRU5ULCIiKTt2YXIgbz0hMCxpPSIiLHM9KEFycmF5LmlzQXJyYXkobi5jb25zZW50U3RyaW5ncykmJm4uY29uc2VudFN0cmluZ3MubGVuZ3RoJiYoaT0obnVsbD09KHM9bi5jb25zZW50U3RyaW5ncy5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiJ0Y2ZldSI9PT1lLnR5cGV9KSk/dm9pZCAwOnMuY29udGVudCl8fCIiKSxuLmdhY1N0cmluZ3x8IiIpO2lmKGkpe18uaXNJYWJTeW5jZWQ9ITAsXy5zeW5jUmVxdWlyZWQ9ITA7Zm9yKHZhciBhPVQuZ2V0Q29va2llc0NodW5rKGkseS5FVV9QVUJfQ09OU0VOVCksbD0wLGM9T2JqZWN0LmtleXMoYSk7bDxjLmxlbmd0aDtsKyspe3ZhciBkPWNbbF07VC5zZXRDb29raWUoZCxhW2RdLEwuUmVjb25zZW50RnJlcXVlbmN5RGF5cywhMSxuZXcgRGF0ZShlKSl9fXMmJihfLmlzR2FjU3luY2VkPSEwLF8uc3luY1JlcXVpcmVkPSEwLFQuc2V0Q29va2llKHkuQURESVRJT05BTF9DT05TRU5UX1NUUklORyxzLEwuUmVjb25zZW50RnJlcXVlbmN5RGF5cywhMSxuZXcgRGF0ZShlKSkpfXJldHVybiB0aGlzLmZvcmNlQ29uc2VudFJlY2VpcHQocix0KSx7aWFiU3luY1JlcXVpcmVkOm8sbGF0ZXN0Q29uc2VudERhdGU6ZX19LFpzLnByb3RvdHlwZS5zeW5jUHJlZmVyZW5jZXM9ZnVuY3Rpb24oZSx0KXt2b2lkIDA9PT10JiYodD0hMSk7dmFyIG8sbj1ULmdldENvb2tpZSh5LkFMRVJUX0JPWF9DTE9TRUQpLHI9bixpPSExLHM9ITAsYT0hMSxsPSExLGM9UC5zdHJUb0FycihULnJlYWRDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCwiZ3JvdXBzIikpO2lmKGUmJm51bGwhPShvPWUucHVycG9zZXMpJiZvLmxlbmd0aCl7dGhpcy5jaGVja0lmQ29uc2VudElzR2l2ZW4oZSk7Zm9yKHZhciBkPXZvaWQgMCx1PTAscD1lLnB1cnBvc2VzO3U8cC5sZW5ndGg7dSsrKXt2YXIgQz1wW3VdLEM9dGhpcy5zeW5jR3JvdXBXaXRoUHJlZmVyZW5jZXMoQyxjLHIsYSx0KSxpPWl8fEMuc3luY1JlcXVpcmVkLGE9YXx8Qy5zeW5jT25seURhdGUsbD1sfHxDLmlzTG9jYWxDb25zZW50TGF0ZXN0OyghZHx8bmV3IERhdGUoQy5sYXRlc3RDb25zZW50RGF0ZSk+bmV3IERhdGUoZCkpJiYoZD1DLmxhdGVzdENvbnNlbnREYXRlKX1uPWR9ZWxzZSBzPSExO3JldHVybiB0aGlzLmZvcmNlQ29uc2VudFJlY2VpcHQocyxsKSx7YWxlcnRCb3hDb29raWVWYWw6bixncm91cHNDb25zZW50OmMscHJvZmlsZUZvdW5kOnMsc3luY1JlcXVpcmVkOmksc3luY09ubHlEYXRlOmE9YSYmIWl9fSxacy5wcm90b3R5cGUuY2hlY2tJZkNvbnNlbnRJc0dpdmVuPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wLG89ZS5wdXJwb3Nlczt0PG8ubGVuZ3RoO3QrKyl7dmFyIG49b1t0XSxyPWIuZG9tYWluR3Jwc1tuLmlkXTtyJiZ0aGlzLmlzQ29va2llR3JvdXAocikmJihiLmNvbnNlbnRHaXZlbj1iLmNvbnNlbnRHaXZlbnx8bi5zdGF0dXMhPT1IW0guTk9fQ09OU0VOVF0mJm4uc3RhdHVzIT09SFtILkFMV0FZU19BQ1RJVkVdKX19LFpzLnByb3RvdHlwZS5zeW5jR3JvdXBXaXRoUHJlZmVyZW5jZXM9ZnVuY3Rpb24oZSx0LG8sbixyKXt2YXIgaSxzPSExLGE9ZS5zdGF0dXM9PT1IW0guTk9fQ09OU0VOVF0sbD1iLmRvbWFpbkdycHNbZS5pZF0sYz0hMTtpZihsJiZ0aGlzLmlzQ29va2llR3JvdXAobCkpe2k9bywtMTxfLmdycHNTeW5jZWQuaW5kZXhPZihsKSYmKF8uc3luY2VkVmFsaWRHcnA9ITApO3ZhciBkPWIuY2FycnlPdmVyQW5vbnltb3VzQ29uc2VudCxvPW5ldyBEYXRlKGUubGFzdEludGVyYWN0aW9uRGF0ZSk+bmV3IERhdGUobykscz0hbztpZighZCYmYi5jb25zZW50R2l2ZW58fGQmJm8paWYoYSl7aWYodC5sZW5ndGgpe2Zvcih2YXIgdT0tMSxwPTA7cDx0Lmxlbmd0aDtwKyspaWYodFtwXS5zcGxpdCgiOiIpWzBdPT09bCl7dT1wO2JyZWFrfS0xPHUmJih0LnNwbGljZSh1LDEpLF8uZ3Jwc1N5bmNlZC5wdXNoKGwpKX19ZWxzZXtkPXRoaXMuZ2V0Q29uc2VudFZhbHVlKGUuc3RhdHVzKTtuPSEwLGk9ZS5sYXN0SW50ZXJhY3Rpb25EYXRlLGM9dGhpcy51cGRhdGVDb29raWVDYXRDb25zZW50KHIsbCxkLHQpfX1yZXR1cm57c3luY1JlcXVpcmVkOmMsc3luY09ubHlEYXRlOm4sbGF0ZXN0Q29uc2VudERhdGU6aSxpc0xvY2FsQ29uc2VudExhdGVzdDpzfX0sWnMucHJvdG90eXBlLnVwZGF0ZUNvb2tpZUNhdENvbnNlbnQ9ZnVuY3Rpb24oZSx0LG8sbil7dmFyIHI9ITE7aWYoIWUpe2Zvcih2YXIgaT10KyI6IitvLHM9LTEsYT0wO2E8bi5sZW5ndGg7YSsrKXt2YXIgbD1uW2FdLnNwbGl0KCI6Iik7aWYobFswXT09PXQpe2xbMV0hPT1vJiYoblthXT1pLHI9ITApLHM9YTticmVha319LTE9PT1zJiYobi5wdXNoKGkpLHI9ITApfXJldHVybiByfSxacy5wcm90b3R5cGUuZ2V0Q29uc2VudFZhbHVlPWZ1bmN0aW9uKGUpe3ZhciB0PW51bGw7c3dpdGNoKGUpe2Nhc2UgSFtILkFDVElWRV06Y2FzZSBIW0guQUxXQVlTX0FDVElWRV06dD1nZS5BY3RpdmU7YnJlYWs7Y2FzZSBIW0guRVhQSVJFRF06Y2FzZSBIW0guT1BUX09VVF06Y2FzZSBIW0guUEVORElOR106Y2FzZSBIW0guV0lUSERSQVdOXTp0PWdlLkluQWN0aXZlfXJldHVybiB0fSxacy5wcm90b3R5cGUuaXNDb29raWVHcm91cD1mdW5jdGlvbihlKXtyZXR1cm4hL0lBQlYyfElTUFYyfElGRVYyfElTRlYyfElBQjJWMnxJRkUyVjJ8SVNQMlYyfElTRjJWMi8udGVzdChlKX0sWnMucHJvdG90eXBlLmhpZGVCYW5uZXJBbmRQYz1mdW5jdGlvbigpe3ZhciBlPUkuaXNCYW5uZXJWaXNpYmxlKCk7ZSYmSS5oaWRlQmFubmVyKCksKGV8fF8uaXNQQ1Zpc2libGUpJiYoZ24ucmVtb3ZlQWRkZWRPVENzc1N0eWxlcygpLGtuLmhpZGVDb25zZW50Tm90aWNlVjIoKSl9LFpzLnByb3RvdHlwZS5zZXRPcHRhbm9uQ29uc2VudENvb2tpZT1mdW5jdGlvbihlLHQpe3ZhciBvO2Uuc3luY1JlcXVpcmVkJiYoVC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULCJncm91cHMiLGUuZ3JvdXBzQ29uc2VudC50b1N0cmluZygpKSxvPVQuZ2V0Q29va2llKHkuT1BUQU5PTl9DT05TRU5UKSxULnNldENvb2tpZSh5Lk9QVEFOT05fQ09OU0VOVCxvLHQsITEsbmV3IERhdGUoZS5hbGVydEJveENvb2tpZVZhbCkpLFQud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLlBSRVZfVVNFUl9DT05TRU5ULCIiKSxULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5JU19BTk9OWU1PVVNfQ09OU0VOVCwiMCIpKX0sWnMucHJvdG90eXBlLnNldElhYkNvb2tpZT1mdW5jdGlvbihlLHQsbyxuKXt2YXIgZT10aGlzLmNoZWNrTGF0ZXN0Q29uc2VudERhdGUobmV3IERhdGUoZSkpLHI9ZS5pc0xvY2FsQ29uc2VudExhdGVzdCxpPWUuY29uc2VudGVkRGF0ZSxlPSIiLG49KG4mJkFycmF5LmlzQXJyYXkobi5jb25zZW50U3RyaW5ncykmJm4uY29uc2VudFN0cmluZ3MubGVuZ3RoJiYoZT0obnVsbD09KHM9bi5jb25zZW50U3RyaW5ncy5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiJ0Y2ZldSI9PT1lLnR5cGV9KSk/dm9pZCAwOnMuY29udGVudCl8fCIiKSwobnVsbD09KHM9bik/dm9pZCAwOnMuZ2FjU3RyaW5nKXx8IiIpLHM9ZXx8bjtpZih0aGlzLmNoZWNrSWZTZXJ2ZXJDb25zZW50KCEhcyxyKSl7aWYodC5zeW5jUmVxdWlyZWQ9ITAsdC5wcm9maWxlRm91bmQ9ITAsdC5hbGVydEJveENvb2tpZVZhbD1pLnRvSVNPU3RyaW5nKCksZSlmb3IodmFyIGE9VC5nZXRDb29raWVzQ2h1bmsoZSx5LkVVX1BVQl9DT05TRU5UKSxsPTAsYz1PYmplY3Qua2V5cyhhKTtsPGMubGVuZ3RoO2wrKyl7dmFyIGQ9Y1tsXTtULnNldENvb2tpZShkLGFbZF0sbywhMSxuZXcgRGF0ZShpKSl9biYmVC5zZXRDb29raWUoeS5BRERJVElPTkFMX0NPTlNFTlRfU1RSSU5HLG4sbywhMSxuZXcgRGF0ZShpKSl9ZWxzZSBzfHwodC5wcm9maWxlRm91bmQ9ITEpO3RoaXMuZm9yY2VDb25zZW50UmVjZWlwdCh0LnByb2ZpbGVGb3VuZCxyKX0sWnMucHJvdG90eXBlLnNldEFkZHRsVmVuZG9yc0Nvb2tpZT1mdW5jdGlvbihlLHQpe0wuVXNlR29vZ2xlVmVuZG9ycyYmIVQuZ2V0Q29va2llKHkuQURESVRJT05BTF9DT05TRU5UX1NUUklORykmJlQuc2V0Q29va2llKHkuQURESVRJT05BTF9DT05TRU5UX1NUUklORyxfLmFkZHRsQ29uc2VudFZlcnNpb24sdCwhMSxuZXcgRGF0ZShlLmFsZXJ0Qm94Q29va2llVmFsKSl9LFpzLnByb3RvdHlwZS51cGRhdGVHcnBzRG9tPWZ1bmN0aW9uKHMpe2Zvcih2YXIgZT0wLHQ9Vi5nZXRBbGxHcm91cEVsZW1lbnRzKCk7ZTx0Lmxlbmd0aDtlKyspKGU9Pnt2YXIgdCxvPWUuZ2V0QXR0cmlidXRlKCJkYXRhLW9wdGFub25ncm91cGlkIiksbj1ELmdldEdyb3VwQnlJZChvKSxyPSEwLGk9UC5maW5kSW5kZXgoXy5ncm91cHNDb25zZW50LGZ1bmN0aW9uKGUpe3JldHVybiBlLnNwbGl0KCI6IilbMF09PT1vfSk7KC0xPGkmJl8uZ3JvdXBzQ29uc2VudFtpXS5zcGxpdCgiOiIpWzFdPT09Z2UuSW5BY3RpdmV8fEwuSXNJYWJFbmFibGVkJiZzJiYiQ09PS0lFIiE9PW4uVHlwZSYmLTE8KHQ9cy5wdXJwb3Nlcy5maW5kSW5kZXgoZnVuY3Rpb24oZSl7cmV0dXJuIGUuaWQ9PT1uLlB1cnBvc2VJZC50b0xvd2VyQ2FzZSgpfSkpJiYtMT09PVsiQUNUSVZFIiwiQUxXQVlTX0FDVElWRSJdLmZpbmRJbmRleChmdW5jdGlvbihlKXtyZXR1cm4gZT09PXMucHVycG9zZXNbdF0uc3RhdHVzfSkpJiYocj0hMSksVi50b2dnbGVHcnBFbGVtZW50cyhlLG4sciksVi50b29nbGVTdWJHcm91cEVsZW1lbnQoZSxyLCExLCEwKSxWLnRvb2dsZVN1Ykdyb3VwRWxlbWVudChlLHIsITAsITApfSkodFtlXSl9LFpzLnByb3RvdHlwZS51cGRhdGVWZW5kb3JzRG9tPWZ1bmN0aW9uKCl7TC5Jc0lhYkVuYWJsZWQmJihnLnVwZGF0ZUlhYlZhcmlhYmxlUmVmZXJlbmNlKCksS24udG9nZ2xlVmVuZG9yQ29uc2VudCgpLGIubGVnSW50U2V0dGluZ3MuUEFsbG93TEkpJiYoYi5sZWdJbnRTZXR0aW5ncy5QU2hvd0xlZ0ludEJ0bj9Lbi51cGRhdGVWZW5kb3JMZWdCdG5zKCk6S24udG9nZ2xlVmVuZG9yTGkoKSl9LFpzLnByb3RvdHlwZS5jb25zZW50UHJvZmlsZUNhbGxiYWNrPWZ1bmN0aW9uKHIsaSl7cmV0dXJuIEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHQsbyxuO3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm4gdGhpcy5jaGVja0lmS25vd25Vc2Vyc0FyZUxvZ2dlZChyLGkpP1syXToodD10aGlzLnN5bmNQcmVmZXJlbmNlcyhyKSxfLmNvbnNlbnRQcmVmZXJlbmNlcz1yLG89TC5SZWNvbnNlbnRGcmVxdWVuY3lEYXlzLG49Ty5pc0lBQkNyb3NzQ29uc2VudEVuYWJsZWQoKSx0aGlzLnNldE9wdGFub25Db25zZW50Q29va2llKHQsbyksTC5Jc0lhYkVuYWJsZWQmJiFuJiZ0aGlzLnNldElhYkNvb2tpZSh0LmFsZXJ0Qm94Q29va2llVmFsLHQsbyxyKSx0LnN5bmNPbmx5RGF0ZSYmKE8uc3luY0FsZXJ0Qm94Q29va2llKHQuYWxlcnRCb3hDb29raWVWYWwpLE8uc3luY0Nvb2tpZUV4cGlyeSgpKSxrci5zZXREYXRhU3ViamVjdElkVjIoaSksdC5zeW5jUmVxdWlyZWQmJnQucHJvZmlsZUZvdW5kPyhULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5QUkVWX1VTRVJfQ09OU0VOVCwiIiksVC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguSVNfQU5PTllNT1VTX0NPTlNFTlQsIjAiKSxfLnN5bmNSZXF1aXJlZD10LnN5bmNSZXF1aXJlZCxPLnN5bmNBbGVydEJveENvb2tpZSh0LmFsZXJ0Qm94Q29va2llVmFsKSx0aGlzLnNldEFkZHRsVmVuZG9yc0Nvb2tpZSh0LG8pLHRoaXMuaGlkZUJhbm5lckFuZFBjKCksQy5jbG9zZU9wdGFub25BbGVydEJveCgpLHhzLmluaXRHcnBzQW5kSG9zdHMoKSwhbiYmTC5OdGZ5Q29uZmlnLlNob3dOdGZ5JiZPLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpP1s0LHduLmdldENvbnRlbnQoKV06WzMsMl0pOlszLDNdKTtjYXNlIDE6ZS5zZW50KCksd24uaW5pdCgpLHduLmNoYW5nZVN0YXRlKCksZS5sYWJlbD0yO2Nhc2UgMjpyZXR1cm4gTC5Jc0lhYkVuYWJsZWQmJihPLnNldElBQkNvb2tpZURhdGEoKSx4cy5pbml0aWFsaXplSWFiUHVycG9zZUNvbnNlbnRPblJlbG9hZCgpLHlvLnBvcHVsYXRlVmVuZG9yQW5kUHVycG9zZUZyb21Db29raWVEYXRhKCkpLHRoaXMudXBkYXRlR3Jwc0RvbShyKSx0aGlzLnVwZGF0ZVZlbmRvcnNEb20oKSxfby5zZXRMYW5kaW5nUGF0aFBhcmFtKGguTk9UX0xBTkRJTkdfUEFHRSksT24uc3Vic3RpdHV0ZVBsYWluVGV4dFNjcmlwdFRhZ3MoKSxMbi51cGRhdGVHdG1NYWNyb3MoITApLEMuZXhlY3V0ZU9wdGFub25XcmFwcGVyKCksWzMsNF07Y2FzZSAzOnQucHJvZmlsZUZvdW5kJiYhYi5mb3JjZUNyZWF0ZVRyeExvY2FsQ29uc2VudElzR3JlYXRlcnx8IXQuYWxlcnRCb3hDb29raWVWYWx8fHRoaXMuY3JlYXRlVHJhbnMoYi5mb3JjZUNyZWF0ZVRyeExvY2FsQ29uc2VudElzR3JlYXRlciksZS5sYWJlbD00O2Nhc2UgNDpyZXR1cm5bMl19fSl9KX0sWnMucHJvdG90eXBlLmNoZWNrSWZLbm93blVzZXJzQXJlTG9nZ2VkPWZ1bmN0aW9uKGUsdCl7dmFyIG89VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5DT05TRU5UX0lEKSxuPVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguUFJFVl9VU0VSX0NPTlNFTlQpLGU9MDwobnVsbD09KGU9bnVsbD09KGU9ZSk/dm9pZCAwOmUucHVycG9zZXMpP3ZvaWQgMDplLmxlbmd0aCk7cmV0dXJuIG8hPT10JiYhbiYmKFQucmVtb3ZlQWxsQ29va2llcygpLCFlKSYmKCFMLlNob3dBbGVydE5vdGljZXx8TC5Ob0Jhbm5lcnx8Xy5oaWRlQmFubmVyfHx1LmluaXRpYWxpemVBbGFydEh0bWxBbmRIYW5kbGVyKCksa3Iuc2V0RGF0YVN1YmplY3RJZFYyKHQpLCEwKX0sWnMucHJvdG90eXBlLmNyZWF0ZVRyYW5zPWZ1bmN0aW9uKGUpe3ZhciB0PVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULCJpVHlwZSIpO0JzLmNyZWF0ZUNvbnNlbnRUeG4oITEsQ2VbdF0sITEsITAsZSl9LFpzLnByb3RvdHlwZS5jaGVja0xhdGVzdENvbnNlbnREYXRlPWZ1bmN0aW9uKGUpe3ZhciB0PVQuZ2V0Q29va2llKHkuQUxFUlRfQk9YX0NMT1NFRCksdD10P25ldyBEYXRlKHQpOm5ldyBEYXRlKDApLG89dGhpcy5nZXRMYXN0ZXNDb25zZW50RGF0ZUZyb21JYWJDb25zZW50KCk7cmV0dXJuIHQ8bz97aXNMb2NhbENvbnNlbnRMYXRlc3Q6ITEsY29uc2VudGVkRGF0ZTpvPGU/ZTpvfTp0PGU/e2lzTG9jYWxDb25zZW50TGF0ZXN0OiExLGNvbnNlbnRlZERhdGU6ZX06e2lzTG9jYWxDb25zZW50TGF0ZXN0OiEwLGNvbnNlbnRlZERhdGU6dH19LFpzLnByb3RvdHlwZS5nZXRMYXN0ZXNDb25zZW50RGF0ZUZyb21JYWJDb25zZW50PWZ1bmN0aW9uKCl7dmFyIGU9Xy5jb25zZW50UHJlZmVyZW5jZXM7aWYoIWUpcmV0dXJuIG5ldyBEYXRlKDApO2Zvcih2YXIgdD1iLmNvbnNlbnRhYmxlSWFiR3Jwcy5yZWR1Y2UoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZVt0LlB1cnBvc2VJZF09dCxlfSx7fSksbz1udWxsLG49MCxyPWUucHVycG9zZXM7bjxyLmxlbmd0aDtuKyspe3ZhciBpPXJbbl07dFtpLmlkLnRvVXBwZXJDYXNlKCldJiYoaT1uZXcgRGF0ZShpLmxhc3RJbnRlcmFjdGlvbkRhdGUpLCFvfHxvPGkpJiYobz1pKX1yZXR1cm4gb30sWnMucHJvdG90eXBlLmNoZWNrSWZTZXJ2ZXJDb25zZW50PWZ1bmN0aW9uKGUsdCl7dmFyIG89Yi5jYXJyeU92ZXJBbm9ueW1vdXNDb25zZW50O3JldHVybiEhKCFvJiZlfHxvJiZlJiYhdCl9LFpzLnByb3RvdHlwZS5mb3JjZUNvbnNlbnRSZWNlaXB0PWZ1bmN0aW9uKGUsdCl7dmFyIG89Yi5jYXJyeU92ZXJBbm9ueW1vdXNDb25zZW50LG49VC5yZWFkQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5QUkVWX1VTRVJfQ09OU0VOVCk7Yi5mb3JjZUNyZWF0ZVRyeExvY2FsQ29uc2VudElzR3JlYXRlcj1iLmZvcmNlQ3JlYXRlVHJ4TG9jYWxDb25zZW50SXNHcmVhdGVyfHwhKCFufHwiIj09PW58fCIwIj09PW4pJiYoIWV8fG8mJnQpfTt2YXIgWHMsUXM9WnM7ZnVuY3Rpb24gWnMoKXt9dGEucHJvdG90eXBlLnJlbW92ZUNvb2tpZXM9ZnVuY3Rpb24oKXtULnJlbW92ZVByZXZpZXcoKSxULnJlbW92ZU9wdGFub24oKSxULnJlbW92ZUFsZXJ0Qm94KCksVC5yZW1vdmVJYWIyKCksVC5yZW1vdmVBZGR0bFN0cigpLFQucmVtb3ZlVmFyaWFudCgpLGwuaXNQcmV2aWV3JiYkcy5zZXRQcmV2aWV3Q29va2llKCksbC51cmxQYXJhbXMuZ2V0KCJvdHJlc2V0IikmJmwudXJsUGFyYW1zLnNldCgib3RyZXNldCIsImZhbHNlIik7dmFyIGU9d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lKyI/IitsLnVybFBhcmFtcy50b1N0cmluZygpK3dpbmRvdy5sb2NhdGlvbi5oYXNoOyRzLnJlcGxhY2VIaXN0b3J5KGUpfSx0YS5wcm90b3R5cGUuc2V0UHJldmlld0Nvb2tpZT1mdW5jdGlvbigpe3ZhciBlPW5ldyBEYXRlLHQ9KGUuc2V0VGltZShlLmdldFRpbWUoKSs4NjRlNSksbC5nZW9Gcm9tVXJsPyImZ2VvPSIrbC5nZW9Gcm9tVXJsOiIiKSxlPSJleHBpcnk9IitlLnRvSVNPU3RyaW5nKCkrdDtULnNldENvb2tpZSh5Lk9UX1BSRVZJRVcsZSwxLCExKX0sdGEucHJvdG90eXBlLmJpbmRTdG9wUHJldmlld0V2ZW50PWZ1bmN0aW9uKCl7KHdpbmRvdy5hdHRhY2hFdmVudHx8d2luZG93LmFkZEV2ZW50TGlzdGVuZXIpKCJtZXNzYWdlIixmdW5jdGlvbihlKXtyZXR1cm4gJHMub25NZXNzYWdlKGUpfSl9LHRhLnByb3RvdHlwZS5yZXBsYWNlSGlzdG9yeT1mdW5jdGlvbihlKXtoaXN0b3J5LnB1c2hTdGF0ZSh7fSwiIixlKSxsb2NhdGlvbi5yZWxvYWQoKX0sdGEucHJvdG90eXBlLm9uTWVzc2FnZT1mdW5jdGlvbihlKXsic3RyaW5nIj09dHlwZW9mIGUuZGF0YSYmZS5kYXRhPT09JHMuQ0xFQVJfQ09PS0lFUyYmKCRzLnJlbW92ZUNvb2tpZXMoKSxlLnNvdXJjZSkmJmUuc291cmNlLnBvc3RNZXNzYWdlJiZlLnNvdXJjZS5wb3N0TWVzc2FnZSgkcy5DTEVBUkVEX0NPT0tJRVMsZS5vcmlnaW4pfTt2YXIgJHMsZWEscCxOPXRhO2Z1bmN0aW9uIHRhKCl7dGhpcy5DTEVBUl9DT09LSUVTPSJDTEVBUl9PVF9DT09LSUVTIix0aGlzLkNMRUFSRURfQ09PS0lFUz0iQ0xFQVJFRF9PVF9DT09LSUVTIn1HZS5pbml0UG9seWZpbGwoKSxUPW5ldyB4dCxJPW5ldyBadCxiPW5ldyBlbyxxdD1uZXcgZSwkcz1uZXcgTiwocD13aW5kb3cub3RTdHViRGF0YSkmJihTLm1vZHVsZUluaXRpYWxpemVyPXAuZG9tYWluRGF0YSxTLmZwPVMubW9kdWxlSW5pdGlhbGl6ZXIuVGVuYW50RmVhdHVyZXMsXy5pc0FNUD1wLmlzQW1wLF8uZGF0YURvbWFpbklkPXAuZG9tYWluSWQsXy5pc1ByZXZpZXc9cC5pc1ByZXZpZXcsXy51cmxQYXJhbXM9cC51cmxQYXJhbXMsXy5pc1YyU3R1Yj1wLmlzVjJTdHVifHwhMSxiLmd0bVVwZGF0ZWRpblN0dWI9cC5ndG1VcGRhdGVkLHAuaXNSZXNldD8kcy5yZW1vdmVDb29raWVzKCk6cC5pc1ByZXZpZXcmJiRzLnNldFByZXZpZXdDb29raWUoKSxwLmlzVjJTdHViJiYoYi5sYW5kaW5nUGF0aD1wLmxhbmRpbmdQYXRoVmFsdWUpLGIuc2V0QmFubmVyU2NyaXB0RWxlbWVudChwLnN0dWJFbGVtZW50KSxiLnNldFJlZ2lvblJ1bGUocC5yZWdpb25SdWxlKSxTLmZwLkNvb2tpZVYyVGFyZ2V0ZWRUZW1wbGF0ZXMmJihiLmNvbmRpdGlvbmFsTG9naWNFbmFibGVkPSEobnVsbD09KGVhPWIuZ2V0UmVnaW9uUnVsZSgpLkNvbmRpdGlvbnMpfHwhZWEubGVuZ3RoKSxiLmNvbmRpdGlvbmFsTG9naWNFbmFibGVkKSYmKCgoKT0+e2Zvcih2YXIgZT1iLmdldFJlZ2lvblJ1bGUoKSx0PTA7dDxlLkNvbmRpdGlvbnMubGVuZ3RoO3QrKyl0cnl7aWYoKGU9PntpZihlKXJldHVybiBlPXdpbmRvdy5hdG9iKGUpLEZ1bmN0aW9uKCcidXNlIHN0cmljdCI7IHJldHVybiAnK2UpKCl9KShlLkNvbmRpdGlvbnNbdF0uRXhwcmVzc2lvbikpcmV0dXJuIGIuQ29uZGl0aW9uPWUuQ29uZGl0aW9uc1t0XX1jYXRjaChlKXtjb25zb2xlLndhcm4oZSk7Y29udGludWV9Yi5hbGxDb25kaXRpb25zRmFpbGVkPSEwfSkoKSxiLmNhblVzZUNvbmRpdGlvbmFsTG9naWM9IWIuYWxsQ29uZGl0aW9uc0ZhaWxlZCksXy51c2VyTG9jYXRpb249cC51c2VyTG9jYXRpb24sXy5jcm9zc09yaWdpbj1wLmNyb3NzT3JpZ2luLGIuYmFubmVyRGF0YVBhcmVudFVSTD1wLmJhbm5lckJhc2VEYXRhVVJMLGIubW9iaWxlT25saW5lVVJMPVUoYi5tb2JpbGVPbmxpbmVVUkwscC5tb2JpbGVPbmxpbmVVUkwpLGVhPWIuZ2V0UmVnaW9uUnVsZSgpLGIubXVsdGlWYXJpYW50VGVzdGluZ0VuYWJsZWQ9Uy5tb2R1bGVJbml0aWFsaXplci5NdWx0aVZhcmlhbnRUZXN0aW5nRW5hYmxlZCYmMDxlYS5WYXJpYW50cy5sZW5ndGgmJkkuaXNEYXRlQ3VycmVudChlYS5UZXN0RW5kVGltZSksYi5vdERhdGFMYXllcj1wLm90RGF0YUxheWVyLF8uZ3Jwc1N5bmNlZD1wLmdycHNTeW5jZWR8fFtdLF8uaXNJYWJTeW5jZWQ9cC5pc0lhYlN5bmNlZCxfLmlzR2FjU3luY2VkPXAuaXNHYWNTeW5jZWQsXy5zeW5jUmVxdWlyZWQ9cC5pc0lhYlN5bmNlZHx8cC5pc0dhY1N5bmNlZHx8cC5ncnBzU3luY2VkJiYwPHAuZ3Jwc1N5bmNlZC5sZW5ndGgsXy5jb25zZW50UHJlZmVyZW5jZXM9cC5wcmVmZXJlbmNlcyxfLnN5bmNHcnBJZD1wLnN5bmNHcnBJZCxfLmNvbnNlbnRBcGk9cC5jb25zZW50QXBpLF8udGVuYW50SWQ9cC50ZW5hbnRJZCxfLmdlb0Zyb21Vcmw9cC5nZW9Gcm9tVXJsLF8ubm9uY2U9cC5ub25jZSxfLnNldEF0dHJpYnV0ZVBvbHlmaWxsSXNBY3RpdmU9cC5zZXRBdHRyaWJ1dGVQb2x5ZmlsbElzQWN0aXZlLF8uc3RvcmFnZUJhc2VVUkw9cC5zdG9yYWdlQmFzZVVSTCxfLmlkZW50aWZpZXJUeXBlPXAuaWRlbnRpZmllclR5cGUsYi5wcmV2aWV3TW9kZT1wLnByZXZpZXdNb2RlLGIucHJldlVzZXJXYXNBbm9uPXAucHJldlVzZXJXYXNBbm9uLGIudXNlckhhc1Byb2ZpbGU9cC51c2VySGFzUHJvZmlsZSxiLmNvbnNlbnRHaXZlbj1wLmNvbnNlbnRHaXZlbixiLnNlcnZlckxhdGVzdERhdGVGb3JDb29raWVzPXAuc2VydmVyTGF0ZXN0RGF0ZUZvckNvb2tpZXMsYi5jYXJyeU92ZXJBbm9ueW1vdXNDb25zZW50PXAuZG9tYWluRGF0YS5BdXRoZW50aWNhdGVkQ29uc2VudCxiLmNoZWNrTG9jYWxDb25zZW50Rm9ySWFiUHVycG9zZXM9cC5jaGVja0xvY2FsQ29uc2VudEZvcklhYlB1cnBvc2VzLGIuZm9yY2VDcmVhdGVUcnhMb2NhbENvbnNlbnRJc0dyZWF0ZXI9cC5mb3JjZUNyZWF0ZVRyeExvY2FsQ29uc2VudElzR3JlYXRlcixiLnN0dWJVcmw9cC5zdHViVXJsLGIuc3JpSGFzaD1wLnNyaUhhc2gscXQucG9wdWxhdGVMYW5nU3dpdGNoZXJQbGhkcigpLHdpbmRvdy5vdFN0dWJEYXRhPXt1c2VyTG9jYXRpb246Xy51c2VyTG9jYXRpb259LHdpbmRvdy5PbmVUcnVzdFN0dWI9bnVsbCksZnVuY3Rpb24oKXtGKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBpLHMsYSxsO3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7c3dpdGNoKGUubGFiZWwpe2Nhc2UgMDpyZXR1cm4oRD1uZXcgYW8sVj1uZXcgdW4sQ289bmV3IGdvLGc9bmV3IFVzLE9uPW5ldyBEbixDPW5ldyBlcix1PW5ldyBmcixCPW5ldyB1cixwcj1uZXcgQ3IscXM9bmV3IGpzLFMuZnAuQ29va2llVjJUcmFja2luZ1RlY2hub2xvZ2llc3x8KFRyPW5ldyBQciksY289bmV3IHVvLElvPW5ldyBibyx4cz1uZXcgRnMsTG49bmV3IF9uLFNyPW5ldyBtcixtbz1uZXcgdm8sRT1uZXcgb28sWHM9bmV3IFFzLEtuPW5ldyB6bixLdD1uZXcgenQsQm89bmV3IGNuLGtuPW5ldyBJbix3PW5ldyBKbixpcj1uZXcgc3IsbHI9bmV3IGNyLGM9bmV3IGhyLFMubW9kdWxlSW5pdGlhbGl6ZXIuTW9iaWxlU0RLP1dzPW5ldyBZczprcj1uZXcgSXIseW89bmV3IGZvLG49VC5nZXRDb29raWUoeS5BTEVSVF9CT1hfQ0xPU0VEKSxyPVQuZ2V0Q29va2llKHkuT1BUQU5PTl9DT05TRU5UKSxuJiYhciYmVC5yZW1vdmVBbGVydEJveCgpLGIuc2V0R0NNY2FsbGJhY2soKSxsPWIuZ2V0UmVnaW9uUnVsZSgpLGw9KGIuY2FuVXNlQ29uZGl0aW9uYWxMb2dpYz9iLkNvbmRpdGlvbjpsKS5Vc2VHb29nbGVWZW5kb3JzLGIuaXNJYWIyb3J2MlRlbXBsYXRlPSJJQUIyIj09PWIuZ2V0UmVnaW9uUnVsZVR5cGUoKXx8IklBQjJWMiI9PT1iLmdldFJlZ2lvblJ1bGVUeXBlKCksYi5pc1RjZlYyVGVtcGxhdGU9IklBQjJWMiI9PT1iLmdldFJlZ2lvblJ1bGVUeXBlKCksYi5pc0lhYjJvcnYyVGVtcGxhdGUpP1s0LFByb21pc2UuYWxsKFtLdC5nZXRMYW5nSnNvbigpLEt0LmZldGNoR3ZsT2JqKCksbD9LdC5mZXRjaEdvb2dsZVZlbmRvcnMoKTpQcm9taXNlLnJlc29sdmUobnVsbCksS3QubG9hZENNUCgpXSldOlszLDJdO2Nhc2UgMTpyZXR1cm4gbD1lLnNlbnQoKSxpPWxbMF0scz1sWzFdLGE9bFsyXSxfLmd2bE9iaj1zLF8uYWRkdGxWZW5kb3JzTGlzdD1hP2EudmVuZG9yczpudWxsLFszLDRdO2Nhc2UgMjpyZXR1cm5bNCxLdC5nZXRMYW5nSnNvbigpXTtjYXNlIDM6aT1lLnNlbnQoKSxlLmxhYmVsPTQ7Y2FzZSA0OnJldHVybiBpLkRvbWFpbkRhdGEuSXNHUFBFbmFibGVkP1s0LEt0LmxvYWRHUFAoKV06WzMsNl07Y2FzZSA1OmUuc2VudCgpLERzPW5ldyBWcyxlLmxhYmVsPTY7Y2FzZSA2OnJldHVybiBpLkRvbWFpbkRhdGEuUENTaG93RG91YmxlT3B0SW5TaWduYWw/WzQsS3QubG9hZENvbmZpcm1EaWFsb2coKV06WzMsOF07Y2FzZSA3OmUuc2VudCgpLHdpbmRvdy5PbmVUcnVzdF9Db25maXJtRGlhbG9nJiZ3aW5kb3cuT25lVHJ1c3RfQ29uZmlybURpYWxvZy5pbml0Q29uZmlybURpYWxvZygpLGUubGFiZWw9ODtjYXNlIDg6dmFyIHQsbztyZXR1cm4gZnVuY3Rpb24oQyl7dmFyIGc7Rih0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgcDtyZXR1cm4gTSh0aGlzLGZ1bmN0aW9uKGUpe3N3aXRjaChlLmxhYmVsKXtjYXNlIDA6d2luZG93Lk9uZVRydXN0PXdpbmRvdy5PcHRhbm9uPU9iamVjdC5hc3NpZ24oe30sd2luZG93Lk9uZVRydXN0LChlPT57dmFyIHQsbz1TLm1vZHVsZUluaXRpYWxpemVyLk1vYmlsZVNESyxuPXtBbGxvd0FsbDoodD1vP1dzOmtyKS5BbGxvd0FsbCxCbG9ja0dvb2dsZUFuYWx5dGljczp0LkJsb2NrR29vZ2xlQW5hbHl0aWNzLENsb3NlOnQuQ2xvc2UsZ2V0Q1NTOnQuZ2V0Q1NTLEdldERvbWFpbkRhdGE6dC5HZXREb21haW5EYXRhLGdldEdlb2xvY2F0aW9uRGF0YTp0LmdldEdlb2xvY2F0aW9uRGF0YSxnZXRIVE1MOnQuZ2V0SFRNTCxJbml0OnQuSW5pdCxJbml0aWFsaXplQmFubmVyOnQuSW5pdGlhbGl6ZUJhbm5lcixpbml0aWFsaXplQ29va2llUG9saWN5SHRtbDp0LmluaXRDb29raWVQb2xpY3lBbmRTZXR0aW5ncyxJbnNlcnRIdG1sOnQuSW5zZXJ0SHRtbCxJbnNlcnRTY3JpcHQ6dC5JbnNlcnRTY3JpcHQsSXNBbGVydEJveENsb3NlZDp0LklzQWxlcnRCb3hDbG9zZWQsSXNBbGVydEJveENsb3NlZEFuZFZhbGlkOnQuSXNBbGVydEJveENsb3NlZEFuZFZhbGlkLExvYWRCYW5uZXI6dC5Mb2FkQmFubmVyLE9uQ29uc2VudENoYW5nZWQ6bW8uT25Db25zZW50Q2hhbmdlZCxSZWNvbnNlbnRHcm91cHM6dC5SZWNvbnNlbnRHcm91cHMsUmVqZWN0QWxsOnQuUmVqZWN0QWxsLFNldEFsZXJ0Qm94Q2xvc2VkOnQuU2V0QWxlcnRCb3hDbG9zZWQsc2V0R2VvTG9jYXRpb246dC5zZXRHZW9Mb2NhdGlvbixUb2dnbGVJbmZvRGlzcGxheTp0LlRvZ2dsZUluZm9EaXNwbGF5LFRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudDp0LlRyaWdnZXJHb29nbGVBbmFseXRpY3NFdmVudCx1c2VHZW9Mb2NhdGlvblNlcnZpY2U6dC51c2VHZW9Mb2NhdGlvblNlcnZpY2UsRmV0Y2hBbmREb3dubG9hZFBDOnQuRmV0Y2hBbmREb3dubG9hZFBDLGNoYW5nZUxhbmd1YWdlOnQuY2hhbmdlTGFuZyx0ZXN0TG9nOnQuZ2V0VGVzdExvZ0RhdGEsVXBkYXRlQ29uc2VudDp0LnVwZGF0ZVNpbmd1bGFyQ29uc2VudCxJc1ZlbmRvclNlcnZpY2VFbmFibGVkOnQudmVuZG9yU2VydmljZUVuYWJsZWQsVXBkYXRlR0NNOnQudXBkYXRlR0NNfTtyZXR1cm4gZS5Jc0NvbnNlbnRMb2dnaW5nRW5hYmxlZCYmKG4uZ2V0RGF0YVN1YmplY3RJZD10LmdldERhdGFTdWJqZWN0SWQsbi5zZXRDb25zZW50UHJvZmlsZT10LnNldENvbnNlbnRQcm9maWxlLG4uc2V0RGF0YVN1YmplY3RJZD10LnNldERhdGFTdWJqZWN0SWRWMixuLmdldERTRGVmYXVsdElkZW50aWZpZXI9dC5nZXREU0RlZmF1bHRJZGVudGlmaWVyLF8uaXNWMlN0dWI/bi5zeW5jQ29uc2VudFByb2ZpbGU9WHMuc3luY0NvbnNlbnRQcm9maWxlOm4uU2VuZFJlY2VpcHQ9dC5zZW5kUmVjZWlwdCksbyYmKG4ubW9iaWxlT25saW5lVVJMPXQubW9iaWxlT25saW5lVVJMLG4ub3RDb29raWVEYXRhPV8ub3RDb29raWVEYXRhKSxlLklzSWFiRW5hYmxlZCYmKG4udXBkYXRlQ29uc2VudEZyb21Db29raWVzPW1vLnVwZGF0ZUNvbnNlbnRGcm9tQ29va2llLG4uZ2V0UGluZ1JlcXVlc3Q9eW8uZ2V0UGluZ1JlcXVlc3RGb3JUY2Ysbi5nZXRWZW5kb3JDb25zZW50c1JlcXVlc3RWMj15by5nZXRWZW5kb3JDb25zZW50c1JlcXVlc3RWMixuLnNob3dWZW5kb3JzTGlzdD10LnNob3dWZW5kb3JzTGlzdCksbn0pKEMuRG9tYWluRGF0YSkpLE8uaW5pdGlhbGl6ZUJhbm5lclZhcmlhYmxlcyhDKSxQbz1uZXcgQW8sRG89bmV3IFZvLEJzPW5ldyBOcyxnbj1uZXcgUG4sX289bmV3IEVvLG9yPW5ldyBucix3bj1uZXcgcW47dmFyIHQ9d2luZG93Lk9URXh0ZXJuYWxDb25zZW50O2lmKHQmJnQuY29uc2VudGVkRGF0ZSYmKHQuZ3JvdXBzfHx0LmRzSWR8fHQudGNTdHJpbmd8fHQuYWRkdGxTdHJpbmcpKXtjb25zb2xlLmluZm8oIkNvbnNlbnQgaXMgYmVpbmcgcGFzc2VkIHRvIFNESyB0aHJvdWdoIE9URXh0ZXJuYWxDb25zZW50IGFuZCBpcyBhY2NlcHRlZC4iLHQpO3ZhciBvPVtdLG49dC5ncm91cHMuc3BsaXQoIiwiKTtpZihuLmZvckVhY2goZnVuY3Rpb24oZSl7ZT1lLnNwbGl0KCI6Iik7by5wdXNoKHtsYXN0SW50ZXJhY3Rpb25EYXRlOnQuY29uc2VudGVkRGF0ZSxzdGF0dXM6IjEiPT09ZVsxXT9IW0guQUNUSVZFXTpIW0guT1BUX09VVF0saWQ6ZVswXX0pLF8uZ3Jwc1N5bmNlZC5wdXNoKGVbMF0pfSksXy5jb25zZW50UHJlZmVyZW5jZXM9e3B1cnBvc2VzOltdLGdhY1N0cmluZzoiIixjb25zZW50U3RyaW5nczpbXX0sXy5zeW5jUmVxdWlyZWQ9ITAsUG8udXBkYXRlR3JvdXBzSW5Db29raWUoeS5PUFRBTk9OX0NPTlNFTlQsbiksVC5zZXRDb29raWUoeS5BTEVSVF9CT1hfQ0xPU0VELHQuY29uc2VudGVkRGF0ZSwzNjUpLHQuZHNJZCYmIVQucmVhZENvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULGguQ09OU0VOVF9JRCwhMCkmJlQud3JpdGVDb29raWVQYXJhbSh5Lk9QVEFOT05fQ09OU0VOVCxoLkNPTlNFTlRfSUQsdC5kc0lkKSx0LnRjU3RyaW5nKXtfLmlzSWFiU3luY2VkPSEwO2Zvcih2YXIgcj1ULmdldENvb2tpZXNDaHVuayh0LnRjU3RyaW5nLHkuRVVfUFVCX0NPTlNFTlQpLGk9MCxzPU9iamVjdC5rZXlzKHIpO2k8cy5sZW5ndGg7aSsrKXt2YXIgYT1zW2ldO1Quc2V0Q29va2llKGEsclthXSwzNjUpfX10LmFkZHRsU3RyaW5nJiYoXy5pc0dhY1N5bmNlZD0hMCxULnNldENvb2tpZSh5LkFERElUSU9OQUxfQ09OU0VOVF9TVFJJTkcsIiIrdC5hZGR0bFN0cmluZywzNjUpKX1fLmlzUHJldmlldyYmKE8uc3luY090UHJldmlld0Nvb2tpZSgpLCRzLmJpbmRTdG9wUHJldmlld0V2ZW50KCkpLF8uaXNWMlN0dWImJihuPVhzLnN5bmNQcmVmZXJlbmNlcyhfLmNvbnNlbnRQcmVmZXJlbmNlcywhMCksZD1Ycy5jaGVja0NhcnJ5T3ZlckFub25Db25zZW50Rm9ySUFCKCksdT1kLmlhYlN5bmNSZXF1aXJlZCxkPWQubGF0ZXN0Q29uc2VudERhdGUsdSYmKG4uYWxlcnRCb3hDb29raWVWYWw9ZC50b0lTT1N0cmluZygpKSxuLnN5bmNSZXF1aXJlZD1uLnN5bmNSZXF1aXJlZHx8dSxfLnN5bmNSZXF1aXJlZHx8bi5zeW5jUmVxdWlyZWQpJiZPLnN5bmNBbGVydEJveENvb2tpZShuLmFsZXJ0Qm94Q29va2llVmFsKSxPLnN5bmNDb29raWVFeHBpcnkoKTt2YXIgbCxjLGQ9Qyx1PXdpbmRvdy5PbmVUcnVzdC5kYXRhU3ViamVjdFBhcmFtc3x8e30sdT0oKF8uZHNQYXJhbXM9dSkuaWQmJihsPXUuaWRlbnRpZmllclR5cGV8fChudWxsPT0obD1kLkNvbW1vbkRhdGEuQ29uc2VudEludGVncmF0aW9uKT92b2lkIDA6bC5EZWZhdWx0SWRlbnRpZmllciksa3Iuc2V0RGF0YVN1YmplY3RJZFYyKHUuaWQsdS5pc0Fub255bW91cyxsKSksbnVsbD09KGw9dS5pZGVudGlmaWVyVHlwZSk/dm9pZCAwOmwudHJpbSgpKTtyZXR1cm4gXy5pc1YyU3R1YiYmKGw9dm9pZCAwLGM9bnVsbD09KGM9Xy5pZGVudGlmaWVyVHlwZSk/dm9pZCAwOmMudHJpbSgpLGw9Y3x8dXx8KG51bGw9PShjPWQuQ29tbW9uRGF0YS5Db25zZW50SW50ZWdyYXRpb24pP3ZvaWQgMDpjLkRlZmF1bHRJZGVudGlmaWVyKSxULndyaXRlQ29va2llUGFyYW0oeS5PUFRBTk9OX0NPTlNFTlQsaC5JREVOVElGSUVSX1RZUEUsbCkpLGIubXVsdGlWYXJpYW50VGVzdGluZ0VuYWJsZWQmJmIuc2VsZWN0ZWRWYXJpYW50JiZULnNldENvb2tpZSh5LlNFTEVDVEVEX1ZBUklBTlQsYi5zZWxlY3RlZFZhcmlhbnQuSWQsTC5SZWNvbnNlbnRGcmVxdWVuY3lEYXlzKSxfLmlzVjJTdHViJiZudWxsIT0oZz1iLmxhbmRpbmdQYXRoKSYmZy5sZW5ndGgmJkwuTmV4dFBhZ2VDbG9zZUJhbm5lciYmVC53cml0ZUNvb2tpZVBhcmFtKHkuT1BUQU5PTl9DT05TRU5ULCJsYW5kaW5nUGF0aCIsYi5sYW5kaW5nUGF0aCksWzQseW8uaW5pdGlhbGl6ZUlBQk1vZHVsZSgpXTtjYXNlIDE6cmV0dXJuIGUuc2VudCgpLFs0LGZ1bmN0aW9uKCl7dmFyIG87cmV0dXJuIEYodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHQ7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtzd2l0Y2goZS5sYWJlbCl7Y2FzZSAwOnJldHVybiBudWxsPT0obz1MKXx8IW8uQUNNRGF0YXx8IUwuQUNNRGF0YS5FbmFibGVkfHxudWxsIT0obz1fLnVzZXJMb2NhdGlvbikmJm8uY291bnRyeT9bMywyXTpbNCxLdC5nZXRHZW9sb2NhdGlvbihTLm1vZHVsZUluaXRpYWxpemVyKV07Y2FzZSAxOnQ9ZS5zZW50KCksXy51c2VyTG9jYXRpb249e2NvdW50cnk6dC5jb3VudHJ5LHN0YXRlOnQuc3RhdGUsc3RhdGVOYW1lOnQuc3RhdGVOYW1lfSxlLmxhYmVsPTI7Y2FzZSAyOnJldHVyblsyXX19KX0pfSgpXTtjYXNlIDI6cmV0dXJuIGUuc2VudCgpLHdpbmRvdy5PbmVUcnVzdC5Jbml0KCEwKSxDLkRvbWFpbkRhdGEuSXNHUFBFbmFibGVkJiZEcy5pbml0R3BwQ29uc2VudCgpLFs0LHhzLmZldGNoQXNzZXRzKCldO2Nhc2UgMzpyZXR1cm4oZS5zZW50KCkscXMuaW5pdEJhbm5lcigpLG1vLmFzc2V0UmVzb2x2ZSghMCksY28uaW5pdGlhbGlzZUNzc1JlZmVyZW5jZXMoKSxwPU8uaXNJQUJDcm9zc0NvbnNlbnRFbmFibGVkKCksKF8uc3luY2VkVmFsaWRHcnB8fF8uaXNJYWJTeW5jZWR8fF8uaXNHYWNTeW5jZWQpJiYhcCYmTC5OdGZ5Q29uZmlnLlNob3dOdGZ5JiZPLmlzQWxlcnRCb3hDbG9zZWRBbmRWYWxpZCgpKT8oXy5udGZ5UmVxdWlyZWQ9ITAsWzQsd24uZ2V0Q29udGVudCgpXSk6WzMsNV07Y2FzZSA0OmUuc2VudCgpLGUubGFiZWw9NTtjYXNlIDU6cmV0dXJuIHB8fHdpbmRvdy5PbmVUcnVzdC5Mb2FkQmFubmVyKCksWzJdfXZhciB1LGR9KX0pfShpKSxTLm1vZHVsZUluaXRpYWxpemVyLldlYkZvcm1JbnRlZ3JhdGlvbkVuYWJsZWQmJlMubW9kdWxlSW5pdGlhbGl6ZXIuV2ViRm9ybVNyY1VybCYmKG49d2luZG93Lm90U3R1YkRhdGEscj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSx0PVMubW9kdWxlSW5pdGlhbGl6ZXIuV2ViRm9ybVNyY1VybCxyLnR5cGU9InRleHQvamF2YXNjcmlwdCIsci5zcmM9dCxvPVMubW9kdWxlSW5pdGlhbGl6ZXIuVGVuYW50R3VpZCxTLm1vZHVsZUluaXRpYWxpemVyLlNjcmlwdFR5cGU9PT1xZS5URVNUJiYobys9Ii10ZXN0Iiksci5zZXRBdHRyaWJ1dGUoImRhdGFJZCIsbyksci5zZXRBdHRyaWJ1dGUoIndvcmtlciIsUy5tb2R1bGVJbml0aWFsaXplci5XZWJGb3JtV29ya2VyVXJsKSxuLmNoYXJzZXQmJnIuc2V0QXR0cmlidXRlKCJjaGFyc2V0IixuLmNoYXJzZXQpLG4uY3Jvc3NPcmlnaW4mJnIuc2V0QXR0cmlidXRlKCJjcm9zc29yaWdpbiIsbi5jcm9zc09yaWdpbiksZG9jdW1lbnQucXVlcnlTZWxlY3Rvcignc2NyaXB0W3NyYz0iJyt0KyciXScpfHxkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKHIpKSxbMl19dmFyIG4scn0pfSl9KCl9KSgpOwo="}},"time_used":12,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":9,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/favicons/apple-touch-icon-1024x1024.png","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.172Z","timestamp":1785161167172,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/favicons/apple-touch-icon-1024x1024.png HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: image/png\r\ncontent-length: 25015\r\nlast-modified: Wed, 01 Feb 2023 11:40:26 GMT\r\netag: \"61b7-5f3a1ea17ae41\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":25015,"size_decoded":25246,"mime_type":"image/png","magic":"PNG image data, 1024 x 1024, 8-bit/color RGBA, non-interlaced","md5":"d29f562ad57f45d9ea9e3c12a714e930","sha1":"15a02219dac2e24ad08c726f0d3a1fe3e8420bf6","sha256":"e3d7e5de8f71a59a9678cc7790b37898fc3ef50cfad4bc4a21dcf76ac063271d","sha512":"451353d3cbde2a4b1e9e2bafcc0d8649024bb07274272edffaa2aa00d8e37b1d443508a49b84b5c837cf46d672e2cf46d462e0b16124dbed44b549bbff8ff997","ssdeep":"384:MIiQnc1SknqAFAFrdJHtT8XtWASIZlxvPK9iuuoYCsrH9AI4Xfpb:DR0BqA8rbHh89lHeZWC0WI4Xxb","tlshash":"5fb2f705bc459dae981f09341c67124ab0f5ae78ce97e24d2ea859ececf1e304f5c49e","first_seen":"2023-05-21T16:39:27Z","last_seen":"2026-07-27T14:06:41.17412Z","times_seen":139,"resource_available":false,"data":"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"}},"time_used":31,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":31,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/logos/static/ot_guard_logo.svg","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.830Z","timestamp":1785161167830,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /logos/static/ot_guard_logo.svg HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/\r\nOrigin: https://dhlexpress.bg\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: image/svg+xml\r\ncontent-md5: tXyZydHjxQshFMbbBT1/8A==\r\nlast-modified: Thu, 23 Jul 2026 17:59:40 GMT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nserver: cloudflare\r\nx-ms-request-id: 30632ddb-d01e-0068-674e-1bcddb000000\r\nx-ms-version: 2009-09-19\r\nx-ms-lease-status: unlocked\r\nx-ms-blob-type: BlockBlob\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding\r\naccess-control-allow-origin: *\r\nx-content-type-options: nosniff\r\ncross-origin-resource-policy: cross-origin\r\nage: 16200\r\ncache-control: max-age=86400\r\ncf-cache-status: HIT\r\ncontent-encoding: gzip\r\ncf-ray: a21c33f2fc08783d-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":"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":497,"size_decoded":1162,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"b57c99c9d1e3c50b2114c6db053d7ff0","sha1":"ada8abfed92ba8a545bbd9d299d74d5972cc4ae8","sha256":"691dcdb24853a0f5ce4e6597e5713dea66799b57ffe2c2a10f28f98e0b569b19","sha512":"0dab6d06f386d922fb28f70f2590d4f9c361e7f4e5d5e581b98e59aac12b266cba596ffccd87203b4330673ee4ec1d459a1abdfc4b066d243a43b2bf7909f0ee","ssdeep":"","tlshash":"2ef0d4d91906a6adb6822e7cdd3c56e04c2c7ce274dc22c894cce094d4489bc9705855","first_seen":"2023-05-07T20:46:54Z","last_seen":"2026-07-27T15:43:07.555179Z","times_seen":175101,"resource_available":true,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGNsYXNzPSJvdC1mbG9hdGluZy1idXR0b25fX3N2Zy1maWxsIiBkPSJNMTQuNTg4IDBsLjQ0NS4zMjhjMS44MDcgMS4zMDMgMy45NjEgMi41MzMgNi40NjEgMy42ODggMi4wMTUuOTMgNC41NzYgMS43NDYgNy42ODIgMi40NDYgMCAxNC4xNzgtNC43MyAyNC4xMzMtMTQuMTkgMjkuODY0bC0uMzk4LjIzNkM0Ljg2MyAzMC44NyAwIDIwLjgzNyAwIDYuNDYyYzMuMTA3LS43IDUuNjY4LTEuNTE2IDcuNjgyLTIuNDQ2IDIuNzA5LTEuMjUxIDUuMDEtMi41OSA2LjkwNi00LjAxNnptNS44NyAxMy44OGEuNzUuNzUgMCAwMC0uOTc0LjE1OWwtNS40NzUgNi42MjUtMy4wMDUtMi45OTctLjA3Ny0uMDY3YS43NS43NSAwIDAwLS45ODMgMS4xM2w0LjE3MiA0LjE2IDYuNTI1LTcuODk1LjA2LS4wODNhLjc1Ljc1IDAgMDAtLjE2LS45NzN6IiBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4="}},"time_used":7,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/styles/vendor.min.css?v1762424770","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.731Z","timestamp":1785161166731,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/styles/vendor.min.css?v1762424770 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: text/css\r\ncontent-length: 26279\r\nlast-modified: Thu, 06 Nov 2025 10:26:10 GMT\r\netag: \"1a64a-642ea7e5f7b2e-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":108106,"size_decoded":26562,"mime_type":"text/css","magic":"ASCII text, with very long lines (65321)","md5":"b4f79f67401c796f7fd085134ce94608","sha1":"63d765628e06d23b87f9d98457e0779365ecd392","sha256":"dac64823b7d4e7e69fa9076b42062a95511bb442564d6c67b4310081e471be54","sha512":"661a9d73a7d6309088299376cacf488ac8fc6e43273e19caf5da22cf0a0a36ee8b79e0187c6d2295633a54fe6de14becf68502aa6cc3eedf7dcb02d02a0b483a","ssdeep":"1536:urMVMWMiMTMKtAX0HEbpNG2eLZy6lkA/erkhIHJDasg:QtAXkEfGc6ZWrk+HJDu","tlshash":"4ab32212ae84016bb01a8d3f78a5bf34a5f6eb199a920695b4709d40fdf18bc314f737","first_seen":"2025-11-15T08:44:41.075948Z","last_seen":"2026-07-27T14:06:41.176422Z","times_seen":90,"resource_available":false,"data":"LyohCiAqIEZvbnQgQXdlc29tZSBGcmVlIDcuMS4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tCiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpCiAqIENvcHlyaWdodCAyMDI1IEZvbnRpY29ucywgSW5jLgogKi8uZmEsLmZhLWJyYW5kcywuZmEtY2xhc3NpYywuZmEtcmVndWxhciwuZmEtc29saWQsLmZhYiwuZmFyLC5mYXN7LS1fZmEtZmFtaWx5OnZhcigtLWZhLWZhbWlseSx2YXIoLS1mYS1zdHlsZS1mYW1pbHksIkZvbnQgQXdlc29tZSA3IEZyZWUiKSk7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7Zm9udC1mZWF0dXJlLXNldHRpbmdzOm5vcm1hbDtkaXNwbGF5OnZhcigtLWZhLWRpc3BsYXksaW5saW5lLWJsb2NrKTtmb250LWZhbWlseTp2YXIoLS1fZmEtZmFtaWx5KTtmb250LXN0eWxlOm5vcm1hbDtmb250LXN5bnRoZXNpczpub25lO2ZvbnQtdmFyaWFudDpub3JtYWw7Zm9udC13ZWlnaHQ6dmFyKC0tZmEtc3R5bGUsOTAwKTtsaW5lLWhlaWdodDoxO3RleHQtYWxpZ246Y2VudGVyO3RleHQtcmVuZGVyaW5nOmF1dG87d2lkdGg6dmFyKC0tZmEtd2lkdGgsMS4yNWVtKX06aXMoLmZhcywuZmFyLC5mYWIsLmZhLXNvbGlkLC5mYS1yZWd1bGFyLC5mYS1icmFuZHMsLmZhLWNsYXNzaWMsLmZhKTpiZWZvcmV7Y29udGVudDp2YXIoLS1mYSkvIiJ9QHN1cHBvcnRzIG5vdCAoY29udGVudDoiIi8iIil7OmlzKC5mYXMsLmZhciwuZmFiLC5mYS1zb2xpZCwuZmEtcmVndWxhciwuZmEtYnJhbmRzLC5mYS1jbGFzc2ljLC5mYSk6YmVmb3Jle2NvbnRlbnQ6dmFyKC0tZmEpfX0uZmEtMXh7Zm9udC1zaXplOjFlbX0uZmEtMnh7Zm9udC1zaXplOjJlbX0uZmEtM3h7Zm9udC1zaXplOjNlbX0uZmEtNHh7Zm9udC1zaXplOjRlbX0uZmEtNXh7Zm9udC1zaXplOjVlbX0uZmEtNnh7Zm9udC1zaXplOjZlbX0uZmEtN3h7Zm9udC1zaXplOjdlbX0uZmEtOHh7Zm9udC1zaXplOjhlbX0uZmEtOXh7Zm9udC1zaXplOjllbX0uZmEtMTB4e2ZvbnQtc2l6ZToxMGVtfS5mYS0yeHN7Zm9udC1zaXplOi42MjVlbTtsaW5lLWhlaWdodDouMWVtO3ZlcnRpY2FsLWFsaWduOi4yMjVlbX0uZmEteHN7Zm9udC1zaXplOi43NWVtO2xpbmUtaGVpZ2h0Oi4wODMzM2VtO3ZlcnRpY2FsLWFsaWduOi4xMjVlbX0uZmEtc217Zm9udC1zaXplOi44NzVlbTtsaW5lLWhlaWdodDouMDcxNDNlbTt2ZXJ0aWNhbC1hbGlnbjouMDUzNTdlbX0uZmEtbGd7Zm9udC1zaXplOjEuMjVlbTtsaW5lLWhlaWdodDouMDVlbTt2ZXJ0aWNhbC1hbGlnbjotLjA3NWVtfS5mYS14bHtmb250LXNpemU6MS41ZW07bGluZS1oZWlnaHQ6LjA0MTY3ZW07dmVydGljYWwtYWxpZ246LS4xMjVlbX0uZmEtMnhse2ZvbnQtc2l6ZToyZW07bGluZS1oZWlnaHQ6LjAzMTI1ZW07dmVydGljYWwtYWxpZ246LS4xODc1ZW19LmZhLXdpZHRoLWF1dG97LS1mYS13aWR0aDphdXRvfS5mYS1mdywuZmEtd2lkdGgtZml4ZWR7LS1mYS13aWR0aDoxLjI1ZW19LmZhLXVse2xpc3Qtc3R5bGUtdHlwZTpub25lO21hcmdpbi1pbmxpbmUtc3RhcnQ6dmFyKC0tZmEtbGktbWFyZ2luLDIuNWVtKTtwYWRkaW5nLWlubGluZS1zdGFydDowfS5mYS11bD5saXtwb3NpdGlvbjpyZWxhdGl2ZX0uZmEtbGl7aW5zZXQtaW5saW5lLXN0YXJ0OmNhbGModmFyKC0tZmEtbGktd2lkdGgsIDJlbSkqLTEpO2xpbmUtaGVpZ2h0OmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6dmFyKC0tZmEtbGktd2lkdGgsMmVtKX0uZmEtYm9yZGVye2JvcmRlcjp2YXIoLS1mYS1ib3JkZXItd2lkdGgsLjA2MjVlbSkgdmFyKC0tZmEtYm9yZGVyLXN0eWxlLHNvbGlkKSB2YXIoLS1mYS1ib3JkZXItY29sb3IsI2VlZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1mYS1ib3JkZXItcmFkaXVzLC4xZW0pO2JveC1zaXppbmc6dmFyKC0tZmEtYm9yZGVyLWJveC1zaXppbmcsY29udGVudC1ib3gpO3BhZGRpbmc6dmFyKC0tZmEtYm9yZGVyLXBhZGRpbmcsLjE4NzVlbSAuMjVlbSl9LmZhLXB1bGwtbGVmdCwuZmEtcHVsbC1zdGFydHtmbG9hdDppbmxpbmUtc3RhcnQ7bWFyZ2luLWlubGluZS1lbmQ6dmFyKC0tZmEtcHVsbC1tYXJnaW4sLjNlbSl9LmZhLXB1bGwtZW5kLC5mYS1wdWxsLXJpZ2h0e2Zsb2F0OmlubGluZS1lbmQ7bWFyZ2luLWlubGluZS1zdGFydDp2YXIoLS1mYS1wdWxsLW1hcmdpbiwuM2VtKX0uZmEtYmVhdHthbmltYXRpb24tZGVsYXk6dmFyKC0tZmEtYW5pbWF0aW9uLWRlbGF5LDBzKTthbmltYXRpb24tZGlyZWN0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi1kaXJlY3Rpb24sbm9ybWFsKTthbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OnZhcigtLWZhLWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsaW5maW5pdGUpO2FuaW1hdGlvbi1uYW1lOmZhLWJlYXQ7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tdGltaW5nLGVhc2UtaW4tb3V0KX0uZmEtYm91bmNle2FuaW1hdGlvbi1kZWxheTp2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksMHMpO2FuaW1hdGlvbi1kaXJlY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLWRpcmVjdGlvbixub3JtYWwpO2FuaW1hdGlvbi1kdXJhdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZHVyYXRpb24sMXMpO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7YW5pbWF0aW9uLW5hbWU6ZmEtYm91bmNlO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxjdWJpYy1iZXppZXIoLjI4LC44NCwuNDIsMSkpfS5mYS1mYWRle2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7YW5pbWF0aW9uLW5hbWU6ZmEtZmFkZTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsY3ViaWMtYmV6aWVyKC40LDAsLjYsMSkpfS5mYS1iZWF0LWZhZGUsLmZhLWZhZGV7YW5pbWF0aW9uLWRlbGF5OnZhcigtLWZhLWFuaW1hdGlvbi1kZWxheSwwcyk7YW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCk7YW5pbWF0aW9uLWR1cmF0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi1kdXJhdGlvbiwxcyl9LmZhLWJlYXQtZmFkZXthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OnZhcigtLWZhLWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsaW5maW5pdGUpO2FuaW1hdGlvbi1uYW1lOmZhLWJlYXQtZmFkZTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsY3ViaWMtYmV6aWVyKC40LDAsLjYsMSkpfS5mYS1mbGlwe2FuaW1hdGlvbi1kZWxheTp2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksMHMpO2FuaW1hdGlvbi1kaXJlY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLWRpcmVjdGlvbixub3JtYWwpO2FuaW1hdGlvbi1kdXJhdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZHVyYXRpb24sMXMpO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7YW5pbWF0aW9uLW5hbWU6ZmEtZmxpcDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsZWFzZS1pbi1vdXQpfS5mYS1zaGFrZXthbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OnZhcigtLWZhLWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsaW5maW5pdGUpO2FuaW1hdGlvbi1uYW1lOmZhLXNoYWtlO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxsaW5lYXIpfS5mYS1zaGFrZSwuZmEtc3BpbnthbmltYXRpb24tZGVsYXk6dmFyKC0tZmEtYW5pbWF0aW9uLWRlbGF5LDBzKTthbmltYXRpb24tZGlyZWN0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi1kaXJlY3Rpb24sbm9ybWFsKX0uZmEtc3BpbnthbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDJzKTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OnZhcigtLWZhLWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsaW5maW5pdGUpO2FuaW1hdGlvbi1uYW1lOmZhLXNwaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tdGltaW5nLGxpbmVhcil9LmZhLXNwaW4tcmV2ZXJzZXstLWZhLWFuaW1hdGlvbi1kaXJlY3Rpb246cmV2ZXJzZX0uZmEtcHVsc2UsLmZhLXNwaW4tcHVsc2V7YW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCk7YW5pbWF0aW9uLWR1cmF0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi1kdXJhdGlvbiwxcyk7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDp2YXIoLS1mYS1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LGluZmluaXRlKTthbmltYXRpb24tbmFtZTpmYS1zcGluO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxzdGVwcyg4KSl9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmZhLWJlYXQsLmZhLWJlYXQtZmFkZSwuZmEtYm91bmNlLC5mYS1mYWRlLC5mYS1mbGlwLC5mYS1wdWxzZSwuZmEtc2hha2UsLmZhLXNwaW4sLmZhLXNwaW4tcHVsc2V7YW5pbWF0aW9uOm5vbmUhaW1wb3J0YW50O3RyYW5zaXRpb246bm9uZSFpbXBvcnRhbnR9fUBrZXlmcmFtZXMgZmEtYmVhdHswJSw5MCV7dHJhbnNmb3JtOnNjYWxlKDEpfTQ1JXt0cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYmVhdC1zY2FsZSwxLjI1KSl9fUBrZXlmcmFtZXMgZmEtYm91bmNlezAle3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKDApfTEwJXt0cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYm91bmNlLXN0YXJ0LXNjYWxlLXgsMS4xKSx2YXIoLS1mYS1ib3VuY2Utc3RhcnQtc2NhbGUteSwuOSkpIHRyYW5zbGF0ZVkoMCl9MzAle3RyYW5zZm9ybTpzY2FsZSh2YXIoLS1mYS1ib3VuY2UtanVtcC1zY2FsZS14LC45KSx2YXIoLS1mYS1ib3VuY2UtanVtcC1zY2FsZS15LDEuMSkpIHRyYW5zbGF0ZVkodmFyKC0tZmEtYm91bmNlLWhlaWdodCwtLjVlbSkpfTUwJXt0cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYm91bmNlLWxhbmQtc2NhbGUteCwxLjA1KSx2YXIoLS1mYS1ib3VuY2UtbGFuZC1zY2FsZS15LC45NSkpIHRyYW5zbGF0ZVkoMCl9NTcle3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKHZhcigtLWZhLWJvdW5jZS1yZWJvdW5kLC0uMTI1ZW0pKX02NCV7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCl9dG97dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCl9fUBrZXlmcmFtZXMgZmEtZmFkZXs1MCV7b3BhY2l0eTp2YXIoLS1mYS1mYWRlLW9wYWNpdHksLjQpfX1Aa2V5ZnJhbWVzIGZhLWJlYXQtZmFkZXswJSx0b3tvcGFjaXR5OnZhcigtLWZhLWJlYXQtZmFkZS1vcGFjaXR5LC40KTt0cmFuc2Zvcm06c2NhbGUoMSl9NTAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYmVhdC1mYWRlLXNjYWxlLDEuMTI1KSl9fUBrZXlmcmFtZXMgZmEtZmxpcHs1MCV7dHJhbnNmb3JtOnJvdGF0ZTNkKHZhcigtLWZhLWZsaXAteCwwKSx2YXIoLS1mYS1mbGlwLXksMSksdmFyKC0tZmEtZmxpcC16LDApLHZhcigtLWZhLWZsaXAtYW5nbGUsLTE4MGRlZykpfX1Aa2V5ZnJhbWVzIGZhLXNoYWtlezAle3RyYW5zZm9ybTpyb3RhdGUoLTE1ZGVnKX00JXt0cmFuc2Zvcm06cm90YXRlKDE1ZGVnKX0yNCUsOCV7dHJhbnNmb3JtOnJvdGF0ZSgtMThkZWcpfTEyJSwyOCV7dHJhbnNmb3JtOnJvdGF0ZSgxOGRlZyl9MTYle3RyYW5zZm9ybTpyb3RhdGUoLTIyZGVnKX0yMCV7dHJhbnNmb3JtOnJvdGF0ZSgyMmRlZyl9MzIle3RyYW5zZm9ybTpyb3RhdGUoLTEyZGVnKX0zNiV7dHJhbnNmb3JtOnJvdGF0ZSgxMmRlZyl9NDAlLHRve3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9fUBrZXlmcmFtZXMgZmEtc3BpbnswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0uZmEtcm90YXRlLTkwe3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpfS5mYS1yb3RhdGUtMTgwe3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0uZmEtcm90YXRlLTI3MHt0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9LmZhLWZsaXAtaG9yaXpvbnRhbHt0cmFuc2Zvcm06c2NhbGVYKC0xKX0uZmEtZmxpcC12ZXJ0aWNhbHt0cmFuc2Zvcm06c2NhbGVZKC0xKX0uZmEtZmxpcC1ib3RoLC5mYS1mbGlwLWhvcml6b250YWwuZmEtZmxpcC12ZXJ0aWNhbHt0cmFuc2Zvcm06c2NhbGUoLTEpfS5mYS1yb3RhdGUtYnl7dHJhbnNmb3JtOnJvdGF0ZSh2YXIoLS1mYS1yb3RhdGUtYW5nbGUsMCkpfS5mYS1zdGFja3tkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MmVtO2xpbmUtaGVpZ2h0OjJlbTtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2lkdGg6Mi41ZW19LmZhLXN0YWNrLTF4LC5mYS1zdGFjay0yeHstLWZhLXdpZHRoOjEwMCU7aW5zZXQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt3aWR0aDp2YXIoLS1mYS13aWR0aCk7ei1pbmRleDp2YXIoLS1mYS1zdGFjay16LWluZGV4LGF1dG8pfS5mYS1zdGFjay0xeHtsaW5lLWhlaWdodDppbmhlcml0fS5mYS1zdGFjay0yeHtmb250LXNpemU6MmVtfS5mYS1pbnZlcnNle2NvbG9yOnZhcigtLWZhLWludmVyc2UsI2ZmZil9LmZhLTB7LS1mYToiXDMwICJ9LmZhLTF7LS1mYToiXDMxICJ9LmZhLTJ7LS1mYToiXDMyICJ9LmZhLTN7LS1mYToiXDMzICJ9LmZhLTR7LS1mYToiXDM0ICJ9LmZhLTV7LS1mYToiXDM1ICJ9LmZhLTZ7LS1mYToiXDM2ICJ9LmZhLTd7LS1mYToiXDM3ICJ9LmZhLTh7LS1mYToiXDM4ICJ9LmZhLTl7LS1mYToiXDM5ICJ9LmZhLWV4Y2xhbWF0aW9uey0tZmE6IlwhIn0uZmEtaGFzaHRhZ3stLWZhOiJcIyJ9LmZhLWRvbGxhciwuZmEtZG9sbGFyLXNpZ24sLmZhLXVzZHstLWZhOiJcJCJ9LmZhLXBlcmNlbnQsLmZhLXBlcmNlbnRhZ2V7LS1mYToiXCUifS5mYS1hc3Rlcmlza3stLWZhOiJcKiJ9LmZhLWFkZCwuZmEtcGx1c3stLWZhOiJcKyJ9LmZhLWxlc3MtdGhhbnstLWZhOiJcPCJ9LmZhLWVxdWFsc3stLWZhOiJcPSJ9LmZhLWdyZWF0ZXItdGhhbnstLWZhOiJcPiJ9LmZhLXF1ZXN0aW9uey0tZmE6Ilw/In0uZmEtYXR7LS1mYToiXEAifS5mYS1hey0tZmE6IkEifS5mYS1iey0tZmE6IkIifS5mYS1jey0tZmE6IkMifS5mYS1key0tZmE6IkQifS5mYS1ley0tZmE6IkUifS5mYS1mey0tZmE6IkYifS5mYS1ney0tZmE6IkcifS5mYS1oey0tZmE6IkgifS5mYS1pey0tZmE6IkkifS5mYS1qey0tZmE6IkoifS5mYS1rey0tZmE6IksifS5mYS1sey0tZmE6IkwifS5mYS1tey0tZmE6Ik0ifS5mYS1uey0tZmE6Ik4ifS5mYS1vey0tZmE6Ik8ifS5mYS1wey0tZmE6IlAifS5mYS1xey0tZmE6IlEifS5mYS1yey0tZmE6IlIifS5mYS1zey0tZmE6IlMifS5mYS10ey0tZmE6IlQifS5mYS11ey0tZmE6IlUifS5mYS12ey0tZmE6IlYifS5mYS13ey0tZmE6IlcifS5mYS14ey0tZmE6IlgifS5mYS15ey0tZmE6IlkifS5mYS16ey0tZmE6IloifS5mYS1mYXVjZXR7LS1mYToiXGUwMDUifS5mYS1mYXVjZXQtZHJpcHstLWZhOiJcZTAwNiJ9LmZhLWhvdXNlLWNoaW1uZXktd2luZG93ey0tZmE6IlxlMDBkIn0uZmEtaG91c2Utc2lnbmFsey0tZmE6IlxlMDEyIn0uZmEtdGVtcGVyYXR1cmUtYXJyb3ctZG93biwuZmEtdGVtcGVyYXR1cmUtZG93bnstLWZhOiJcZTAzZiJ9LmZhLXRlbXBlcmF0dXJlLWFycm93LXVwLC5mYS10ZW1wZXJhdHVyZS11cHstLWZhOiJcZTA0MCJ9LmZhLXRyYWlsZXJ7LS1mYToiXGUwNDEifS5mYS1iYWN0ZXJpYXstLWZhOiJcZTA1OSJ9LmZhLWJhY3Rlcml1bXstLWZhOiJcZTA1YSJ9LmZhLWJveC10aXNzdWV7LS1mYToiXGUwNWIifS5mYS1oYW5kLWhvbGRpbmctbWVkaWNhbHstLWZhOiJcZTA1YyJ9LmZhLWhhbmQtc3BhcmtsZXN7LS1mYToiXGUwNWQifS5mYS1oYW5kcy1idWJibGVzLC5mYS1oYW5kcy13YXNoey0tZmE6IlxlMDVlIn0uZmEtaGFuZHNoYWtlLWFsdC1zbGFzaCwuZmEtaGFuZHNoYWtlLXNpbXBsZS1zbGFzaCwuZmEtaGFuZHNoYWtlLXNsYXNoey0tZmE6IlxlMDYwIn0uZmEtaGVhZC1zaWRlLWNvdWdoey0tZmE6IlxlMDYxIn0uZmEtaGVhZC1zaWRlLWNvdWdoLXNsYXNoey0tZmE6IlxlMDYyIn0uZmEtaGVhZC1zaWRlLW1hc2t7LS1mYToiXGUwNjMifS5mYS1oZWFkLXNpZGUtdmlydXN7LS1mYToiXGUwNjQifS5mYS1ob3VzZS1jaGltbmV5LXVzZXJ7LS1mYToiXGUwNjUifS5mYS1ob3VzZS1sYXB0b3AsLmZhLWxhcHRvcC1ob3VzZXstLWZhOiJcZTA2NiJ9LmZhLWx1bmdzLXZpcnVzey0tZmE6IlxlMDY3In0uZmEtcGVvcGxlLWFycm93cywuZmEtcGVvcGxlLWFycm93cy1sZWZ0LXJpZ2h0ey0tZmE6IlxlMDY4In0uZmEtcGxhbmUtc2xhc2h7LS1mYToiXGUwNjkifS5mYS1wdW1wLW1lZGljYWx7LS1mYToiXGUwNmEifS5mYS1wdW1wLXNvYXB7LS1mYToiXGUwNmIifS5mYS1zaGllbGQtdmlydXN7LS1mYToiXGUwNmMifS5mYS1zaW5rey0tZmE6IlxlMDZkIn0uZmEtc29hcHstLWZhOiJcZTA2ZSJ9LmZhLXN0b3B3YXRjaC0yMHstLWZhOiJcZTA2ZiJ9LmZhLXNob3Atc2xhc2gsLmZhLXN0b3JlLWFsdC1zbGFzaHstLWZhOiJcZTA3MCJ9LmZhLXN0b3JlLXNsYXNoey0tZmE6IlxlMDcxIn0uZmEtdG9pbGV0LXBhcGVyLXNsYXNoey0tZmE6IlxlMDcyIn0uZmEtdXNlcnMtc2xhc2h7LS1mYToiXGUwNzMifS5mYS12aXJ1c3stLWZhOiJcZTA3NCJ9LmZhLXZpcnVzLXNsYXNoey0tZmE6IlxlMDc1In0uZmEtdmlydXNlc3stLWZhOiJcZTA3NiJ9LmZhLXZlc3R7LS1mYToiXGUwODUifS5mYS12ZXN0LXBhdGNoZXN7LS1mYToiXGUwODYifS5mYS1hcnJvdy10cmVuZC1kb3duey0tZmE6IlxlMDk3In0uZmEtYXJyb3ctdHJlbmQtdXB7LS1mYToiXGUwOTgifS5mYS1hcnJvdy11cC1mcm9tLWJyYWNrZXR7LS1mYToiXGUwOWEifS5mYS1hdXN0cmFsLXNpZ257LS1mYToiXGUwYTkifS5mYS1iYWh0LXNpZ257LS1mYToiXGUwYWMifS5mYS1iaXRjb2luLXNpZ257LS1mYToiXGUwYjQifS5mYS1ib2x0LWxpZ2h0bmluZ3stLWZhOiJcZTBiNyJ9LmZhLWJvb2stYm9va21hcmt7LS1mYToiXGUwYmIifS5mYS1jYW1lcmEtcm90YXRley0tZmE6IlxlMGQ4In0uZmEtY2VkaS1zaWduey0tZmE6IlxlMGRmIn0uZmEtY2hhcnQtY29sdW1uey0tZmE6IlxlMGUzIn0uZmEtY2hhcnQtZ2FudHR7LS1mYToiXGUwZTQifS5mYS1jbGFwcGVyYm9hcmR7LS1mYToiXGUxMzEifS5mYS1jbG92ZXJ7LS1mYToiXGUxMzkifS5mYS1jb2RlLWNvbXBhcmV7LS1mYToiXGUxM2EifS5mYS1jb2RlLWZvcmt7LS1mYToiXGUxM2IifS5mYS1jb2RlLXB1bGwtcmVxdWVzdHstLWZhOiJcZTEzYyJ9LmZhLWNvbG9uLXNpZ257LS1mYToiXGUxNDAifS5mYS1jcnV6ZWlyby1zaWduey0tZmE6IlxlMTUyIn0uZmEtZGlzcGxheXstLWZhOiJcZTE2MyJ9LmZhLWRvbmctc2lnbnstLWZhOiJcZTE2OSJ9LmZhLWVsZXZhdG9yey0tZmE6IlxlMTZkIn0uZmEtZmlsdGVyLWNpcmNsZS14bWFya3stLWZhOiJcZTE3YiJ9LmZhLWZsb3Jpbi1zaWduey0tZmE6IlxlMTg0In0uZmEtZm9sZGVyLWNsb3NlZHstLWZhOiJcZTE4NSJ9LmZhLWZyYW5jLXNpZ257LS1mYToiXGUxOGYifS5mYS1ndWFyYW5pLXNpZ257LS1mYToiXGUxOWEifS5mYS1ndW57LS1mYToiXGUxOWIifS5mYS1oYW5kcy1jbGFwcGluZ3stLWZhOiJcZTFhOCJ9LmZhLWhvbWUtdXNlciwuZmEtaG91c2UtdXNlcnstLWZhOiJcZTFiMCJ9LmZhLWluZGlhbi1ydXBlZSwuZmEtaW5kaWFuLXJ1cGVlLXNpZ24sLmZhLWlucnstLWZhOiJcZTFiYyJ9LmZhLWtpcC1zaWduey0tZmE6IlxlMWM0In0uZmEtbGFyaS1zaWduey0tZmE6IlxlMWM4In0uZmEtbGl0ZWNvaW4tc2lnbnstLWZhOiJcZTFkMyJ9LmZhLW1hbmF0LXNpZ257LS1mYToiXGUxZDUifS5mYS1tYXNrLWZhY2V7LS1mYToiXGUxZDcifS5mYS1taWxsLXNpZ257LS1mYToiXGUxZWQifS5mYS1tb25leS1iaWxsc3stLWZhOiJcZTFmMyJ9LmZhLW5haXJhLXNpZ257LS1mYToiXGUxZjYifS5mYS1ub3RkZWZ7LS1mYToiXGUxZmUifS5mYS1wYW5vcmFtYXstLWZhOiJcZTIwOSJ9LmZhLXBlc2V0YS1zaWduey0tZmE6IlxlMjIxIn0uZmEtcGVzby1zaWduey0tZmE6IlxlMjIyIn0uZmEtcGxhbmUtdXB7LS1mYToiXGUyMmQifS5mYS1ydXBpYWgtc2lnbnstLWZhOiJcZTIzZCJ9LmZhLXN0YWlyc3stLWZhOiJcZTI4OSJ9LmZhLXRpbWVsaW5ley0tZmE6IlxlMjljIn0uZmEtdHJ1Y2stZnJvbnR7LS1mYToiXGUyYjcifS5mYS10cnksLmZhLXR1cmtpc2gtbGlyYSwuZmEtdHVya2lzaC1saXJhLXNpZ257LS1mYToiXGUyYmIifS5mYS12YXVsdHstLWZhOiJcZTJjNSJ9LmZhLW1hZ2ljLXdhbmQtc3BhcmtsZXMsLmZhLXdhbmQtbWFnaWMtc3BhcmtsZXN7LS1mYToiXGUyY2EifS5mYS13aGVhdC1hbHQsLmZhLXdoZWF0LWF3bnstLWZhOiJcZTJjZCJ9LmZhLXdoZWVsY2hhaXItYWx0LC5mYS13aGVlbGNoYWlyLW1vdmV7LS1mYToiXGUyY2UifS5mYS1iYW5nbGFkZXNoaS10YWthLXNpZ257LS1mYToiXGUyZTYifS5mYS1ib3dsLXJpY2V7LS1mYToiXGUyZWIifS5mYS1wZXJzb24tcHJlZ25hbnR7LS1mYToiXGUzMWUifS5mYS1ob21lLWxnLC5mYS1ob3VzZS1jaGltbmV5ey0tZmE6IlxlM2FmIn0uZmEtaG91c2UtY3JhY2t7LS1mYToiXGUzYjEifS5mYS1ob3VzZS1tZWRpY2Fsey0tZmE6IlxlM2IyIn0uZmEtY2VudC1zaWduey0tZmE6IlxlM2Y1In0uZmEtcGx1cy1taW51c3stLWZhOiJcZTQzYyJ9LmZhLXNhaWxib2F0ey0tZmE6IlxlNDQ1In0uZmEtc2VjdGlvbnstLWZhOiJcZTQ0NyJ9LmZhLXNocmltcHstLWZhOiJcZTQ0OCJ9LmZhLWJyYXppbGlhbi1yZWFsLXNpZ257LS1mYToiXGU0NmMifS5mYS1jaGFydC1zaW1wbGV7LS1mYToiXGU0NzMifS5mYS1kaWFncmFtLW5leHR7LS1mYToiXGU0NzYifS5mYS1kaWFncmFtLXByZWRlY2Vzc29yey0tZmE6IlxlNDc3In0uZmEtZGlhZ3JhbS1zdWNjZXNzb3J7LS1mYToiXGU0N2EifS5mYS1lYXJ0aC1vY2VhbmlhLC5mYS1nbG9iZS1vY2Vhbmlhey0tZmE6IlxlNDdiIn0uZmEtYnVnLXNsYXNoey0tZmE6IlxlNDkwIn0uZmEtZmlsZS1jaXJjbGUtcGx1c3stLWZhOiJcZTQ5NCJ9LmZhLXNob3AtbG9ja3stLWZhOiJcZTRhNSJ9LmZhLXZpcnVzLWNvdmlkey0tZmE6IlxlNGE4In0uZmEtdmlydXMtY292aWQtc2xhc2h7LS1mYToiXGU0YTkifS5mYS1hbmNob3ItY2lyY2xlLWNoZWNrey0tZmE6IlxlNGFhIn0uZmEtYW5jaG9yLWNpcmNsZS1leGNsYW1hdGlvbnstLWZhOiJcZTRhYiJ9LmZhLWFuY2hvci1jaXJjbGUteG1hcmt7LS1mYToiXGU0YWMifS5mYS1hbmNob3ItbG9ja3stLWZhOiJcZTRhZCJ9LmZhLWFycm93LWRvd24tdXAtYWNyb3NzLWxpbmV7LS1mYToiXGU0YWYifS5mYS1hcnJvdy1kb3duLXVwLWxvY2t7LS1mYToiXGU0YjAifS5mYS1hcnJvdy1yaWdodC10by1jaXR5ey0tZmE6IlxlNGIzIn0uZmEtYXJyb3ctdXAtZnJvbS1ncm91bmQtd2F0ZXJ7LS1mYToiXGU0YjUifS5mYS1hcnJvdy11cC1mcm9tLXdhdGVyLXB1bXB7LS1mYToiXGU0YjYifS5mYS1hcnJvdy11cC1yaWdodC1kb3Rzey0tZmE6IlxlNGI3In0uZmEtYXJyb3dzLWRvd24tdG8tbGluZXstLWZhOiJcZTRiOCJ9LmZhLWFycm93cy1kb3duLXRvLXBlb3BsZXstLWZhOiJcZTRiOSJ9LmZhLWFycm93cy1sZWZ0LXJpZ2h0LXRvLWxpbmV7LS1mYToiXGU0YmEifS5mYS1hcnJvd3Mtc3BpbnstLWZhOiJcZTRiYiJ9LmZhLWFycm93cy1zcGxpdC11cC1hbmQtbGVmdHstLWZhOiJcZTRiYyJ9LmZhLWFycm93cy10by1jaXJjbGV7LS1mYToiXGU0YmQifS5mYS1hcnJvd3MtdG8tZG90ey0tZmE6IlxlNGJlIn0uZmEtYXJyb3dzLXRvLWV5ZXstLWZhOiJcZTRiZiJ9LmZhLWFycm93cy10dXJuLXJpZ2h0ey0tZmE6IlxlNGMwIn0uZmEtYXJyb3dzLXR1cm4tdG8tZG90c3stLWZhOiJcZTRjMSJ9LmZhLWFycm93cy11cC10by1saW5ley0tZmE6IlxlNGMyIn0uZmEtYm9yZS1ob2xley0tZmE6IlxlNGMzIn0uZmEtYm90dGxlLWRyb3BsZXR7LS1mYToiXGU0YzQifS5mYS1ib3R0bGUtd2F0ZXJ7LS1mYToiXGU0YzUifS5mYS1ib3dsLWZvb2R7LS1mYToiXGU0YzYifS5mYS1ib3hlcy1wYWNraW5ney0tZmE6IlxlNGM3In0uZmEtYnJpZGdley0tZmE6IlxlNGM4In0uZmEtYnJpZGdlLWNpcmNsZS1jaGVja3stLWZhOiJcZTRjOSJ9LmZhLWJyaWRnZS1jaXJjbGUtZXhjbGFtYXRpb257LS1mYToiXGU0Y2EifS5mYS1icmlkZ2UtY2lyY2xlLXhtYXJrey0tZmE6IlxlNGNiIn0uZmEtYnJpZGdlLWxvY2t7LS1mYToiXGU0Y2MifS5mYS1icmlkZ2Utd2F0ZXJ7LS1mYToiXGU0Y2UifS5mYS1idWNrZXR7LS1mYToiXGU0Y2YifS5mYS1idWdzey0tZmE6IlxlNGQwIn0uZmEtYnVpbGRpbmctY2lyY2xlLWFycm93LXJpZ2h0ey0tZmE6IlxlNGQxIn0uZmEtYnVpbGRpbmctY2lyY2xlLWNoZWNrey0tZmE6IlxlNGQyIn0uZmEtYnVpbGRpbmctY2lyY2xlLWV4Y2xhbWF0aW9uey0tZmE6IlxlNGQzIn0uZmEtYnVpbGRpbmctY2lyY2xlLXhtYXJrey0tZmE6IlxlNGQ0In0uZmEtYnVpbGRpbmctZmxhZ3stLWZhOiJcZTRkNSJ9LmZhLWJ1aWxkaW5nLWxvY2t7LS1mYToiXGU0ZDYifS5mYS1idWlsZGluZy1uZ297LS1mYToiXGU0ZDcifS5mYS1idWlsZGluZy1zaGllbGR7LS1mYToiXGU0ZDgifS5mYS1idWlsZGluZy11bnstLWZhOiJcZTRkOSJ9LmZhLWJ1aWxkaW5nLXVzZXJ7LS1mYToiXGU0ZGEifS5mYS1idWlsZGluZy13aGVhdHstLWZhOiJcZTRkYiJ9LmZhLWJ1cnN0ey0tZmE6IlxlNGRjIn0uZmEtY2FyLW9uey0tZmE6IlxlNGRkIn0uZmEtY2FyLXR1bm5lbHstLWZhOiJcZTRkZSJ9LmZhLWNoaWxkLWNvbWJhdGFudCwuZmEtY2hpbGQtcmlmbGV7LS1mYToiXGU0ZTAifS5mYS1jaGlsZHJlbnstLWZhOiJcZTRlMSJ9LmZhLWNpcmNsZS1ub2Rlc3stLWZhOiJcZTRlMiJ9LmZhLWNsaXBib2FyZC1xdWVzdGlvbnstLWZhOiJcZTRlMyJ9LmZhLWNsb3VkLXNob3dlcnMtd2F0ZXJ7LS1mYToiXGU0ZTQifS5mYS1jb21wdXRlcnstLWZhOiJcZTRlNSJ9LmZhLWN1YmVzLXN0YWNrZWR7LS1mYToiXGU0ZTYifS5mYS1lbnZlbG9wZS1jaXJjbGUtY2hlY2t7LS1mYToiXGU0ZTgifS5mYS1leHBsb3Npb257LS1mYToiXGU0ZTkifS5mYS1mZXJyeXstLWZhOiJcZTRlYSJ9LmZhLWZpbGUtY2lyY2xlLWV4Y2xhbWF0aW9uey0tZmE6IlxlNGViIn0uZmEtZmlsZS1jaXJjbGUtbWludXN7LS1mYToiXGU0ZWQifS5mYS1maWxlLWNpcmNsZS1xdWVzdGlvbnstLWZhOiJcZTRlZiJ9LmZhLWZpbGUtc2hpZWxkey0tZmE6IlxlNGYwIn0uZmEtZmlyZS1idXJuZXJ7LS1mYToiXGU0ZjEifS5mYS1maXNoLWZpbnN7LS1mYToiXGU0ZjIifS5mYS1mbGFzay12aWFsey0tZmE6IlxlNGYzIn0uZmEtZ2xhc3Mtd2F0ZXJ7LS1mYToiXGU0ZjQifS5mYS1nbGFzcy13YXRlci1kcm9wbGV0ey0tZmE6IlxlNGY1In0uZmEtZ3JvdXAtYXJyb3dzLXJvdGF0ZXstLWZhOiJcZTRmNiJ9LmZhLWhhbmQtaG9sZGluZy1oYW5key0tZmE6IlxlNGY3In0uZmEtaGFuZGN1ZmZzey0tZmE6IlxlNGY4In0uZmEtaGFuZHMtYm91bmR7LS1mYToiXGU0ZjkifS5mYS1oYW5kcy1ob2xkaW5nLWNoaWxkey0tZmE6IlxlNGZhIn0uZmEtaGFuZHMtaG9sZGluZy1jaXJjbGV7LS1mYToiXGU0ZmIifS5mYS1oZWFydC1jaXJjbGUtYm9sdHstLWZhOiJcZTRmYyJ9LmZhLWhlYXJ0LWNpcmNsZS1jaGVja3stLWZhOiJcZTRmZCJ9LmZhLWhlYXJ0LWNpcmNsZS1leGNsYW1hdGlvbnstLWZhOiJcZTRmZSJ9LmZhLWhlYXJ0LWNpcmNsZS1taW51c3stLWZhOiJcZTRmZiJ9LmZhLWhlYXJ0LWNpcmNsZS1wbHVzey0tZmE6IlxlNTAwIn0uZmEtaGVhcnQtY2lyY2xlLXhtYXJrey0tZmE6IlxlNTAxIn0uZmEtaGVsaWNvcHRlci1zeW1ib2x7LS1mYToiXGU1MDIifS5mYS1oZWxtZXQtdW57LS1mYToiXGU1MDMifS5mYS1oaWxsLWF2YWxhbmNoZXstLWZhOiJcZTUwNyJ9LmZhLWhpbGwtcm9ja3NsaWRley0tZmE6IlxlNTA4In0uZmEtaG91c2UtY2lyY2xlLWNoZWNrey0tZmE6IlxlNTA5In0uZmEtaG91c2UtY2lyY2xlLWV4Y2xhbWF0aW9uey0tZmE6IlxlNTBhIn0uZmEtaG91c2UtY2lyY2xlLXhtYXJrey0tZmE6IlxlNTBiIn0uZmEtaG91c2UtZmlyZXstLWZhOiJcZTUwYyJ9LmZhLWhvdXNlLWZsYWd7LS1mYToiXGU1MGQifS5mYS1ob3VzZS1mbG9vZC13YXRlcnstLWZhOiJcZTUwZSJ9LmZhLWhvdXNlLWZsb29kLXdhdGVyLWNpcmNsZS1hcnJvdy1yaWdodHstLWZhOiJcZTUwZiJ9LmZhLWhvdXNlLWxvY2t7LS1mYToiXGU1MTAifS5mYS1ob3VzZS1tZWRpY2FsLWNpcmNsZS1jaGVja3stLWZhOiJcZTUxMSJ9LmZhLWhvdXNlLW1lZGljYWwtY2lyY2xlLWV4Y2xhbWF0aW9uey0tZmE6IlxlNTEyIn0uZmEtaG91c2UtbWVkaWNhbC1jaXJjbGUteG1hcmt7LS1mYToiXGU1MTMifS5mYS1ob3VzZS1tZWRpY2FsLWZsYWd7LS1mYToiXGU1MTQifS5mYS1ob3VzZS10c3VuYW1pey0tZmE6IlxlNTE1In0uZmEtamFyey0tZmE6IlxlNTE2In0uZmEtamFyLXdoZWF0ey0tZmE6IlxlNTE3In0uZmEtamV0LWZpZ2h0ZXItdXB7LS1mYToiXGU1MTgifS5mYS1qdWctZGV0ZXJnZW50ey0tZmE6IlxlNTE5In0uZmEta2l0Y2hlbi1zZXR7LS1mYToiXGU1MWEifS5mYS1sYW5kLW1pbmUtb257LS1mYToiXGU1MWIifS5mYS1sYW5kbWFyay1mbGFney0tZmE6IlxlNTFjIn0uZmEtbGFwdG9wLWZpbGV7LS1mYToiXGU1MWQifS5mYS1saW5lcy1sZWFuaW5ney0tZmE6IlxlNTFlIn0uZmEtbG9jYXRpb24tcGluLWxvY2t7LS1mYToiXGU1MWYifS5mYS1sb2N1c3R7LS1mYToiXGU1MjAifS5mYS1tYWduaWZ5aW5nLWdsYXNzLWFycm93LXJpZ2h0ey0tZmE6IlxlNTIxIn0uZmEtbWFnbmlmeWluZy1nbGFzcy1jaGFydHstLWZhOiJcZTUyMiJ9LmZhLW1hcnMtYW5kLXZlbnVzLWJ1cnN0ey0tZmE6IlxlNTIzIn0uZmEtbWFzay12ZW50aWxhdG9yey0tZmE6IlxlNTI0In0uZmEtbWF0dHJlc3MtcGlsbG93ey0tZmE6IlxlNTI1In0uZmEtbW9iaWxlLXJldHJvey0tZmE6IlxlNTI3In0uZmEtbW9uZXktYmlsbC10cmFuc2ZlcnstLWZhOiJcZTUyOCJ9LmZhLW1vbmV5LWJpbGwtdHJlbmQtdXB7LS1mYToiXGU1MjkifS5mYS1tb25leS1iaWxsLXdoZWF0ey0tZmE6IlxlNTJhIn0uZmEtbW9zcXVpdG97LS1mYToiXGU1MmIifS5mYS1tb3NxdWl0by1uZXR7LS1mYToiXGU1MmMifS5mYS1tb3VuZHstLWZhOiJcZTUyZCJ9LmZhLW1vdW50YWluLWNpdHl7LS1mYToiXGU1MmUifS5mYS1tb3VudGFpbi1zdW57LS1mYToiXGU1MmYifS5mYS1vaWwtd2VsbHstLWZhOiJcZTUzMiJ9LmZhLXBlb3BsZS1ncm91cHstLWZhOiJcZTUzMyJ9LmZhLXBlb3BsZS1saW5ley0tZmE6IlxlNTM0In0uZmEtcGVvcGxlLXB1bGxpbmd7LS1mYToiXGU1MzUifS5mYS1wZW9wbGUtcm9iYmVyeXstLWZhOiJcZTUzNiJ9LmZhLXBlb3BsZS1yb29mey0tZmE6IlxlNTM3In0uZmEtcGVyc29uLWFycm93LWRvd24tdG8tbGluZXstLWZhOiJcZTUzOCJ9LmZhLXBlcnNvbi1hcnJvdy11cC1mcm9tLWxpbmV7LS1mYToiXGU1MzkifS5mYS1wZXJzb24tYnJlYXN0ZmVlZGluZ3stLWZhOiJcZTUzYSJ9LmZhLXBlcnNvbi1idXJzdHstLWZhOiJcZTUzYiJ9LmZhLXBlcnNvbi1jYW5ley0tZmE6IlxlNTNjIn0uZmEtcGVyc29uLWNoYWxrYm9hcmR7LS1mYToiXGU1M2QifS5mYS1wZXJzb24tY2lyY2xlLWNoZWNrey0tZmE6IlxlNTNlIn0uZmEtcGVyc29uLWNpcmNsZS1leGNsYW1hdGlvbnstLWZhOiJcZTUzZiJ9LmZhLXBlcnNvbi1jaXJjbGUtbWludXN7LS1mYToiXGU1NDAifS5mYS1wZXJzb24tY2lyY2xlLXBsdXN7LS1mYToiXGU1NDEifS5mYS1wZXJzb24tY2lyY2xlLXF1ZXN0aW9uey0tZmE6IlxlNTQyIn0uZmEtcGVyc29uLWNpcmNsZS14bWFya3stLWZhOiJcZTU0MyJ9LmZhLXBlcnNvbi1kcmVzcy1idXJzdHstLWZhOiJcZTU0NCJ9LmZhLXBlcnNvbi1kcm93bmluZ3stLWZhOiJcZTU0NSJ9LmZhLXBlcnNvbi1mYWxsaW5ney0tZmE6IlxlNTQ2In0uZmEtcGVyc29uLWZhbGxpbmctYnVyc3R7LS1mYToiXGU1NDcifS5mYS1wZXJzb24taGFsZi1kcmVzc3stLWZhOiJcZTU0OCJ9LmZhLXBlcnNvbi1oYXJhc3Npbmd7LS1mYToiXGU1NDkifS5mYS1wZXJzb24tbWlsaXRhcnktcG9pbnRpbmd7LS1mYToiXGU1NGEifS5mYS1wZXJzb24tbWlsaXRhcnktcmlmbGV7LS1mYToiXGU1NGIifS5mYS1wZXJzb24tbWlsaXRhcnktdG8tcGVyc29uey0tZmE6IlxlNTRjIn0uZmEtcGVyc29uLXJheXN7LS1mYToiXGU1NGQifS5mYS1wZXJzb24tcmlmbGV7LS1mYToiXGU1NGUifS5mYS1wZXJzb24tc2hlbHRlcnstLWZhOiJcZTU0ZiJ9LmZhLXBlcnNvbi13YWxraW5nLWFycm93LWxvb3AtbGVmdHstLWZhOiJcZTU1MSJ9LmZhLXBlcnNvbi13YWxraW5nLWFycm93LXJpZ2h0ey0tZmE6IlxlNTUyIn0uZmEtcGVyc29uLXdhbGtpbmctZGFzaGVkLWxpbmUtYXJyb3ctcmlnaHR7LS1mYToiXGU1NTMifS5mYS1wZXJzb24td2Fsa2luZy1sdWdnYWdley0tZmE6IlxlNTU0In0uZmEtcGxhbmUtY2lyY2xlLWNoZWNrey0tZmE6IlxlNTU1In0uZmEtcGxhbmUtY2lyY2xlLWV4Y2xhbWF0aW9uey0tZmE6IlxlNTU2In0uZmEtcGxhbmUtY2lyY2xlLXhtYXJrey0tZmE6IlxlNTU3In0uZmEtcGxhbmUtbG9ja3stLWZhOiJcZTU1OCJ9LmZhLXBsYXRlLXdoZWF0ey0tZmE6IlxlNTVhIn0uZmEtcGx1Zy1jaXJjbGUtYm9sdHstLWZhOiJcZTU1YiJ9LmZhLXBsdWctY2lyY2xlLWNoZWNrey0tZmE6IlxlNTVjIn0uZmEtcGx1Zy1jaXJjbGUtZXhjbGFtYXRpb257LS1mYToiXGU1NWQifS5mYS1wbHVnLWNpcmNsZS1taW51c3stLWZhOiJcZTU1ZSJ9LmZhLXBsdWctY2lyY2xlLXBsdXN7LS1mYToiXGU1NWYifS5mYS1wbHVnLWNpcmNsZS14bWFya3stLWZhOiJcZTU2MCJ9LmZhLXJhbmtpbmctc3RhcnstLWZhOiJcZTU2MSJ9LmZhLXJvYWQtYmFycmllcnstLWZhOiJcZTU2MiJ9LmZhLXJvYWQtYnJpZGdley0tZmE6IlxlNTYzIn0uZmEtcm9hZC1jaXJjbGUtY2hlY2t7LS1mYToiXGU1NjQifS5mYS1yb2FkLWNpcmNsZS1leGNsYW1hdGlvbnstLWZhOiJcZTU2NSJ9LmZhLXJvYWQtY2lyY2xlLXhtYXJrey0tZmE6IlxlNTY2In0uZmEtcm9hZC1sb2Nrey0tZmE6IlxlNTY3In0uZmEtcm9hZC1zcGlrZXN7LS1mYToiXGU1NjgifS5mYS1ydWd7LS1mYToiXGU1NjkifS5mYS1zYWNrLXhtYXJrey0tZmE6IlxlNTZhIn0uZmEtc2Nob29sLWNpcmNsZS1jaGVja3stLWZhOiJcZTU2YiJ9LmZhLXNjaG9vbC1jaXJjbGUtZXhjbGFtYXRpb257LS1mYToiXGU1NmMifS5mYS1zY2hvb2wtY2lyY2xlLXhtYXJrey0tZmE6IlxlNTZkIn0uZmEtc2Nob29sLWZsYWd7LS1mYToiXGU1NmUifS5mYS1zY2hvb2wtbG9ja3stLWZhOiJcZTU2ZiJ9LmZhLXNoZWV0LXBsYXN0aWN7LS1mYToiXGU1NzEifS5mYS1zaGllbGQtY2F0ey0tZmE6IlxlNTcyIn0uZmEtc2hpZWxkLWRvZ3stLWZhOiJcZTU3MyJ9LmZhLXNoaWVsZC1oZWFydHstLWZhOiJcZTU3NCJ9LmZhLXNxdWFyZS1uZml7LS1mYToiXGU1NzYifS5mYS1zcXVhcmUtcGVyc29uLWNvbmZpbmVkey0tZmE6IlxlNTc3In0uZmEtc3F1YXJlLXZpcnVzey0tZmE6IlxlNTc4In0uZmEtcm9kLWFzY2xlcGl1cywuZmEtcm9kLXNuYWtlLC5mYS1zdGFmZi1hZXNjdWxhcGl1cywuZmEtc3RhZmYtc25ha2V7LS1mYToiXGU1NzkifS5mYS1zdW4tcGxhbnQtd2lsdHstLWZhOiJcZTU3YSJ9LmZhLXRhcnB7LS1mYToiXGU1N2IifS5mYS10YXJwLWRyb3BsZXR7LS1mYToiXGU1N2MifS5mYS10ZW50ey0tZmE6IlxlNTdkIn0uZmEtdGVudC1hcnJvdy1kb3duLXRvLWxpbmV7LS1mYToiXGU1N2UifS5mYS10ZW50LWFycm93LWxlZnQtcmlnaHR7LS1mYToiXGU1N2YifS5mYS10ZW50LWFycm93LXR1cm4tbGVmdHstLWZhOiJcZTU4MCJ9LmZhLXRlbnQtYXJyb3dzLWRvd257LS1mYToiXGU1ODEifS5mYS10ZW50c3stLWZhOiJcZTU4MiJ9LmZhLXRvaWxldC1wb3J0YWJsZXstLWZhOiJcZTU4MyJ9LmZhLXRvaWxldHMtcG9ydGFibGV7LS1mYToiXGU1ODQifS5mYS10b3dlci1jZWxsey0tZmE6IlxlNTg1In0uZmEtdG93ZXItb2JzZXJ2YXRpb257LS1mYToiXGU1ODYifS5mYS10cmVlLWNpdHl7LS1mYToiXGU1ODcifS5mYS10cm93ZWx7LS1mYToiXGU1ODkifS5mYS10cm93ZWwtYnJpY2tzey0tZmE6IlxlNThhIn0uZmEtdHJ1Y2stYXJyb3ctcmlnaHR7LS1mYToiXGU1OGIifS5mYS10cnVjay1kcm9wbGV0ey0tZmE6IlxlNThjIn0uZmEtdHJ1Y2stZmllbGR7LS1mYToiXGU1OGQifS5mYS10cnVjay1maWVsZC11bnstLWZhOiJcZTU4ZSJ9LmZhLXRydWNrLXBsYW5ley0tZmE6IlxlNThmIn0uZmEtdXNlcnMtYmV0d2Vlbi1saW5lc3stLWZhOiJcZTU5MSJ9LmZhLXVzZXJzLWxpbmV7LS1mYToiXGU1OTIifS5mYS11c2Vycy1yYXlzey0tZmE6IlxlNTkzIn0uZmEtdXNlcnMtcmVjdGFuZ2xley0tZmE6IlxlNTk0In0uZmEtdXNlcnMtdmlld2ZpbmRlcnstLWZhOiJcZTU5NSJ9LmZhLXZpYWwtY2lyY2xlLWNoZWNrey0tZmE6IlxlNTk2In0uZmEtdmlhbC12aXJ1c3stLWZhOiJcZTU5NyJ9LmZhLXdoZWF0LWF3bi1jaXJjbGUtZXhjbGFtYXRpb257LS1mYToiXGU1OTgifS5mYS13b3Jtey0tZmE6IlxlNTk5In0uZmEteG1hcmtzLWxpbmVzey0tZmE6IlxlNTlhIn0uZmEtY2hpbGQtZHJlc3N7LS1mYToiXGU1OWMifS5mYS1jaGlsZC1yZWFjaGluZ3stLWZhOiJcZTU5ZCJ9LmZhLWZpbGUtY2lyY2xlLWNoZWNrey0tZmE6IlxlNWEwIn0uZmEtZmlsZS1jaXJjbGUteG1hcmt7LS1mYToiXGU1YTEifS5mYS1wZXJzb24tdGhyb3VnaC13aW5kb3d7LS1mYToiXGU1YTkifS5mYS1wbGFudC13aWx0ey0tZmE6IlxlNWFhIn0uZmEtc3RhcGxlcnstLWZhOiJcZTVhZiJ9LmZhLXRyYWluLXRyYW17LS1mYToiXGU1YjQifS5mYS10YWJsZS1jZWxscy1jb2x1bW4tbG9ja3stLWZhOiJcZTY3OCJ9LmZhLXRhYmxlLWNlbGxzLXJvdy1sb2Nrey0tZmE6IlxlNjdhIn0uZmEtdGh1bWItdGFjay1zbGFzaCwuZmEtdGh1bWJ0YWNrLXNsYXNoey0tZmE6IlxlNjhmIn0uZmEtdGFibGUtY2VsbHMtcm93LXVubG9ja3stLWZhOiJcZTY5MSJ9LmZhLWNoYXJ0LWRpYWdyYW17LS1mYToiXGU2OTUifS5mYS1jb21tZW50LW5vZGVzey0tZmE6IlxlNjk2In0uZmEtZmlsZS1mcmFnbWVudHstLWZhOiJcZTY5NyJ9LmZhLWZpbGUtaGFsZi1kYXNoZWR7LS1mYToiXGU2OTgifS5mYS1oZXhhZ29uLW5vZGVzey0tZmE6IlxlNjk5In0uZmEtaGV4YWdvbi1ub2Rlcy1ib2x0ey0tZmE6IlxlNjlhIn0uZmEtc3F1YXJlLWJpbmFyeXstLWZhOiJcZTY5YiJ9LmZhLXBlbnRhZ29uey0tZmE6IlxlNzkwIn0uZmEtbm9uLWJpbmFyeXstLWZhOiJcZTgwNyJ9LmZhLXNwaXJhbHstLWZhOiJcZTgwYSJ9LmZhLW1vYmlsZS12aWJyYXRley0tZmE6IlxlODE2In0uZmEtc2luZ2xlLXF1b3RlLWxlZnR7LS1mYToiXGU4MWIifS5mYS1zaW5nbGUtcXVvdGUtcmlnaHR7LS1mYToiXGU4MWMifS5mYS1idXMtc2lkZXstLWZhOiJcZTgxZCJ9LmZhLWhlcHRhZ29uLC5mYS1zZXB0YWdvbnstLWZhOiJcZTgyMCJ9LmZhLWdsYXNzLW1hcnRpbmksLmZhLW1hcnRpbmktZ2xhc3MtZW1wdHl7LS1mYToiXGYwMDAifS5mYS1tdXNpY3stLWZhOiJcZjAwMSJ9LmZhLW1hZ25pZnlpbmctZ2xhc3MsLmZhLXNlYXJjaHstLWZhOiJcZjAwMiJ9LmZhLWhlYXJ0ey0tZmE6IlxmMDA0In0uZmEtc3RhcnstLWZhOiJcZjAwNSJ9LmZhLXVzZXIsLmZhLXVzZXItYWx0LC5mYS11c2VyLWxhcmdley0tZmE6IlxmMDA3In0uZmEtZmlsbSwuZmEtZmlsbS1hbHQsLmZhLWZpbG0tc2ltcGxley0tZmE6IlxmMDA4In0uZmEtdGFibGUtY2VsbHMtbGFyZ2UsLmZhLXRoLWxhcmdley0tZmE6IlxmMDA5In0uZmEtdGFibGUtY2VsbHMsLmZhLXRoey0tZmE6IlxmMDBhIn0uZmEtdGFibGUtbGlzdCwuZmEtdGgtbGlzdHstLWZhOiJcZjAwYiJ9LmZhLWNoZWNrey0tZmE6IlxmMDBjIn0uZmEtY2xvc2UsLmZhLW11bHRpcGx5LC5mYS1yZW1vdmUsLmZhLXRpbWVzLC5mYS14bWFya3stLWZhOiJcZjAwZCJ9LmZhLW1hZ25pZnlpbmctZ2xhc3MtcGx1cywuZmEtc2VhcmNoLXBsdXN7LS1mYToiXGYwMGUifS5mYS1tYWduaWZ5aW5nLWdsYXNzLW1pbnVzLC5mYS1zZWFyY2gtbWludXN7LS1mYToiXGYwMTAifS5mYS1wb3dlci1vZmZ7LS1mYToiXGYwMTEifS5mYS1zaWduYWwsLmZhLXNpZ25hbC01LC5mYS1zaWduYWwtcGVyZmVjdHstLWZhOiJcZjAxMiJ9LmZhLWNvZywuZmEtZ2VhcnstLWZhOiJcZjAxMyJ9LmZhLWhvbWUsLmZhLWhvbWUtYWx0LC5mYS1ob21lLWxnLWFsdCwuZmEtaG91c2V7LS1mYToiXGYwMTUifS5mYS1jbG9jaywuZmEtY2xvY2stZm91cnstLWZhOiJcZjAxNyJ9LmZhLXJvYWR7LS1mYToiXGYwMTgifS5mYS1kb3dubG9hZHstLWZhOiJcZjAxOSJ9LmZhLWluYm94ey0tZmE6IlxmMDFjIn0uZmEtYXJyb3ctcmlnaHQtcm90YXRlLC5mYS1hcnJvdy1yb3RhdGUtZm9yd2FyZCwuZmEtYXJyb3ctcm90YXRlLXJpZ2h0LC5mYS1yZWRvey0tZmE6IlxmMDFlIn0uZmEtYXJyb3dzLXJvdGF0ZSwuZmEtcmVmcmVzaCwuZmEtc3luY3stLWZhOiJcZjAyMSJ9LmZhLWxpc3QtYWx0LC5mYS1yZWN0YW5nbGUtbGlzdHstLWZhOiJcZjAyMiJ9LmZhLWxvY2t7LS1mYToiXGYwMjMifS5mYS1mbGFney0tZmE6IlxmMDI0In0uZmEtaGVhZHBob25lcywuZmEtaGVhZHBob25lcy1hbHQsLmZhLWhlYWRwaG9uZXMtc2ltcGxley0tZmE6IlxmMDI1In0uZmEtdm9sdW1lLW9mZnstLWZhOiJcZjAyNiJ9LmZhLXZvbHVtZS1kb3duLC5mYS12b2x1bWUtbG93ey0tZmE6IlxmMDI3In0uZmEtdm9sdW1lLWhpZ2gsLmZhLXZvbHVtZS11cHstLWZhOiJcZjAyOCJ9LmZhLXFyY29kZXstLWZhOiJcZjAyOSJ9LmZhLWJhcmNvZGV7LS1mYToiXGYwMmEifS5mYS10YWd7LS1mYToiXGYwMmIifS5mYS10YWdzey0tZmE6IlxmMDJjIn0uZmEtYm9va3stLWZhOiJcZjAyZCJ9LmZhLWJvb2ttYXJrey0tZmE6IlxmMDJlIn0uZmEtcHJpbnR7LS1mYToiXGYwMmYifS5mYS1jYW1lcmEsLmZhLWNhbWVyYS1hbHR7LS1mYToiXGYwMzAifS5mYS1mb250ey0tZmE6IlxmMDMxIn0uZmEtYm9sZHstLWZhOiJcZjAzMiJ9LmZhLWl0YWxpY3stLWZhOiJcZjAzMyJ9LmZhLXRleHQtaGVpZ2h0ey0tZmE6IlxmMDM0In0uZmEtdGV4dC13aWR0aHstLWZhOiJcZjAzNSJ9LmZhLWFsaWduLWxlZnR7LS1mYToiXGYwMzYifS5mYS1hbGlnbi1jZW50ZXJ7LS1mYToiXGYwMzcifS5mYS1hbGlnbi1yaWdodHstLWZhOiJcZjAzOCJ9LmZhLWFsaWduLWp1c3RpZnl7LS1mYToiXGYwMzkifS5mYS1saXN0LC5mYS1saXN0LXNxdWFyZXN7LS1mYToiXGYwM2EifS5mYS1kZWRlbnQsLmZhLW91dGRlbnR7LS1mYToiXGYwM2IifS5mYS1pbmRlbnR7LS1mYToiXGYwM2MifS5mYS12aWRlbywuZmEtdmlkZW8tY2FtZXJhey0tZmE6IlxmMDNkIn0uZmEtaW1hZ2V7LS1mYToiXGYwM2UifS5mYS1sb2NhdGlvbi1waW4sLmZhLW1hcC1tYXJrZXJ7LS1mYToiXGYwNDEifS5mYS1hZGp1c3QsLmZhLWNpcmNsZS1oYWxmLXN0cm9rZXstLWZhOiJcZjA0MiJ9LmZhLWRyb3BsZXQsLmZhLXRpbnR7LS1mYToiXGYwNDMifS5mYS1lZGl0LC5mYS1wZW4tdG8tc3F1YXJley0tZmE6IlxmMDQ0In0uZmEtYXJyb3dzLC5mYS1hcnJvd3MtdXAtZG93bi1sZWZ0LXJpZ2h0ey0tZmE6IlxmMDQ3In0uZmEtYmFja3dhcmQtc3RlcCwuZmEtc3RlcC1iYWNrd2FyZHstLWZhOiJcZjA0OCJ9LmZhLWJhY2t3YXJkLWZhc3QsLmZhLWZhc3QtYmFja3dhcmR7LS1mYToiXGYwNDkifS5mYS1iYWNrd2FyZHstLWZhOiJcZjA0YSJ9LmZhLXBsYXl7LS1mYToiXGYwNGIifS5mYS1wYXVzZXstLWZhOiJcZjA0YyJ9LmZhLXN0b3B7LS1mYToiXGYwNGQifS5mYS1mb3J3YXJkey0tZmE6IlxmMDRlIn0uZmEtZmFzdC1mb3J3YXJkLC5mYS1mb3J3YXJkLWZhc3R7LS1mYToiXGYwNTAifS5mYS1mb3J3YXJkLXN0ZXAsLmZhLXN0ZXAtZm9yd2FyZHstLWZhOiJcZjA1MSJ9LmZhLWVqZWN0ey0tZmE6IlxmMDUyIn0uZmEtY2hldnJvbi1sZWZ0ey0tZmE6IlxmMDUzIn0uZmEtY2hldnJvbi1yaWdodHstLWZhOiJcZjA1NCJ9LmZhLWNpcmNsZS1wbHVzLC5mYS1wbHVzLWNpcmNsZXstLWZhOiJcZjA1NSJ9LmZhLWNpcmNsZS1taW51cywuZmEtbWludXMtY2lyY2xley0tZmE6IlxmMDU2In0uZmEtY2lyY2xlLXhtYXJrLC5mYS10aW1lcy1jaXJjbGUsLmZhLXhtYXJrLWNpcmNsZXstLWZhOiJcZjA1NyJ9LmZhLWNoZWNrLWNpcmNsZSwuZmEtY2lyY2xlLWNoZWNrey0tZmE6IlxmMDU4In0uZmEtY2lyY2xlLXF1ZXN0aW9uLC5mYS1xdWVzdGlvbi1jaXJjbGV7LS1mYToiXGYwNTkifS5mYS1jaXJjbGUtaW5mbywuZmEtaW5mby1jaXJjbGV7LS1mYToiXGYwNWEifS5mYS1jcm9zc2hhaXJzey0tZmE6IlxmMDViIn0uZmEtYmFuLC5mYS1jYW5jZWx7LS1mYToiXGYwNWUifS5mYS1hcnJvdy1sZWZ0ey0tZmE6IlxmMDYwIn0uZmEtYXJyb3ctcmlnaHR7LS1mYToiXGYwNjEifS5mYS1hcnJvdy11cHstLWZhOiJcZjA2MiJ9LmZhLWFycm93LWRvd257LS1mYToiXGYwNjMifS5mYS1tYWlsLWZvcndhcmQsLmZhLXNoYXJley0tZmE6IlxmMDY0In0uZmEtZXhwYW5key0tZmE6IlxmMDY1In0uZmEtY29tcHJlc3N7LS1mYToiXGYwNjYifS5mYS1taW51cywuZmEtc3VidHJhY3R7LS1mYToiXGYwNjgifS5mYS1jaXJjbGUtZXhjbGFtYXRpb24sLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZXstLWZhOiJcZjA2YSJ9LmZhLWdpZnR7LS1mYToiXGYwNmIifS5mYS1sZWFmey0tZmE6IlxmMDZjIn0uZmEtZmlyZXstLWZhOiJcZjA2ZCJ9LmZhLWV5ZXstLWZhOiJcZjA2ZSJ9LmZhLWV5ZS1zbGFzaHstLWZhOiJcZjA3MCJ9LmZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlLC5mYS10cmlhbmdsZS1leGNsYW1hdGlvbiwuZmEtd2FybmluZ3stLWZhOiJcZjA3MSJ9LmZhLXBsYW5ley0tZmE6IlxmMDcyIn0uZmEtY2FsZW5kYXItYWx0LC5mYS1jYWxlbmRhci1kYXlzey0tZmE6IlxmMDczIn0uZmEtcmFuZG9tLC5mYS1zaHVmZmxley0tZmE6IlxmMDc0In0uZmEtY29tbWVudHstLWZhOiJcZjA3NSJ9LmZhLW1hZ25ldHstLWZhOiJcZjA3NiJ9LmZhLWNoZXZyb24tdXB7LS1mYToiXGYwNzcifS5mYS1jaGV2cm9uLWRvd257LS1mYToiXGYwNzgifS5mYS1yZXR3ZWV0ey0tZmE6IlxmMDc5In0uZmEtY2FydC1zaG9wcGluZywuZmEtc2hvcHBpbmctY2FydHstLWZhOiJcZjA3YSJ9LmZhLWZvbGRlciwuZmEtZm9sZGVyLWJsYW5rey0tZmE6IlxmMDdiIn0uZmEtZm9sZGVyLW9wZW57LS1mYToiXGYwN2MifS5mYS1hcnJvd3MtdXAtZG93biwuZmEtYXJyb3dzLXZ7LS1mYToiXGYwN2QifS5mYS1hcnJvd3MtaCwuZmEtYXJyb3dzLWxlZnQtcmlnaHR7LS1mYToiXGYwN2UifS5mYS1iYXItY2hhcnQsLmZhLWNoYXJ0LWJhcnstLWZhOiJcZjA4MCJ9LmZhLWNhbWVyYS1yZXRyb3stLWZhOiJcZjA4MyJ9LmZhLWtleXstLWZhOiJcZjA4NCJ9LmZhLWNvZ3MsLmZhLWdlYXJzey0tZmE6IlxmMDg1In0uZmEtY29tbWVudHN7LS1mYToiXGYwODYifS5mYS1zdGFyLWhhbGZ7LS1mYToiXGYwODkifS5mYS1hcnJvdy1yaWdodC1mcm9tLWJyYWNrZXQsLmZhLXNpZ24tb3V0ey0tZmE6IlxmMDhiIn0uZmEtdGh1bWItdGFjaywuZmEtdGh1bWJ0YWNrey0tZmE6IlxmMDhkIn0uZmEtYXJyb3ctdXAtcmlnaHQtZnJvbS1zcXVhcmUsLmZhLWV4dGVybmFsLWxpbmt7LS1mYToiXGYwOGUifS5mYS1hcnJvdy1yaWdodC10by1icmFja2V0LC5mYS1zaWduLWluey0tZmE6IlxmMDkwIn0uZmEtdHJvcGh5ey0tZmE6IlxmMDkxIn0uZmEtdXBsb2Fkey0tZmE6IlxmMDkzIn0uZmEtbGVtb257LS1mYToiXGYwOTQifS5mYS1waG9uZXstLWZhOiJcZjA5NSJ9LmZhLXBob25lLXNxdWFyZSwuZmEtc3F1YXJlLXBob25ley0tZmE6IlxmMDk4In0uZmEtdW5sb2Nrey0tZmE6IlxmMDljIn0uZmEtY3JlZGl0LWNhcmQsLmZhLWNyZWRpdC1jYXJkLWFsdHstLWZhOiJcZjA5ZCJ9LmZhLWZlZWQsLmZhLXJzc3stLWZhOiJcZjA5ZSJ9LmZhLWhhcmQtZHJpdmUsLmZhLWhkZHstLWZhOiJcZjBhMCJ9LmZhLWJ1bGxob3Juey0tZmE6IlxmMGExIn0uZmEtY2VydGlmaWNhdGV7LS1mYToiXGYwYTMifS5mYS1oYW5kLXBvaW50LXJpZ2h0ey0tZmE6IlxmMGE0In0uZmEtaGFuZC1wb2ludC1sZWZ0ey0tZmE6IlxmMGE1In0uZmEtaGFuZC1wb2ludC11cHstLWZhOiJcZjBhNiJ9LmZhLWhhbmQtcG9pbnQtZG93bnstLWZhOiJcZjBhNyJ9LmZhLWFycm93LWNpcmNsZS1sZWZ0LC5mYS1jaXJjbGUtYXJyb3ctbGVmdHstLWZhOiJcZjBhOCJ9LmZhLWFycm93LWNpcmNsZS1yaWdodCwuZmEtY2lyY2xlLWFycm93LXJpZ2h0ey0tZmE6IlxmMGE5In0uZmEtYXJyb3ctY2lyY2xlLXVwLC5mYS1jaXJjbGUtYXJyb3ctdXB7LS1mYToiXGYwYWEifS5mYS1hcnJvdy1jaXJjbGUtZG93biwuZmEtY2lyY2xlLWFycm93LWRvd257LS1mYToiXGYwYWIifS5mYS1nbG9iZXstLWZhOiJcZjBhYyJ9LmZhLXdyZW5jaHstLWZhOiJcZjBhZCJ9LmZhLWxpc3QtY2hlY2ssLmZhLXRhc2tzey0tZmE6IlxmMGFlIn0uZmEtZmlsdGVyey0tZmE6IlxmMGIwIn0uZmEtYnJpZWZjYXNley0tZmE6IlxmMGIxIn0uZmEtYXJyb3dzLWFsdCwuZmEtdXAtZG93bi1sZWZ0LXJpZ2h0ey0tZmE6IlxmMGIyIn0uZmEtdXNlcnN7LS1mYToiXGYwYzAifS5mYS1jaGFpbiwuZmEtbGlua3stLWZhOiJcZjBjMSJ9LmZhLWNsb3Vkey0tZmE6IlxmMGMyIn0uZmEtZmxhc2t7LS1mYToiXGYwYzMifS5mYS1jdXQsLmZhLXNjaXNzb3Jzey0tZmE6IlxmMGM0In0uZmEtY29weXstLWZhOiJcZjBjNSJ9LmZhLXBhcGVyY2xpcHstLWZhOiJcZjBjNiJ9LmZhLWZsb3BweS1kaXNrLC5mYS1zYXZley0tZmE6IlxmMGM3In0uZmEtc3F1YXJley0tZmE6IlxmMGM4In0uZmEtYmFycywuZmEtbmF2aWNvbnstLWZhOiJcZjBjOSJ9LmZhLWxpc3QtZG90cywuZmEtbGlzdC11bHstLWZhOiJcZjBjYSJ9LmZhLWxpc3QtMS0yLC5mYS1saXN0LW51bWVyaWMsLmZhLWxpc3Qtb2x7LS1mYToiXGYwY2IifS5mYS1zdHJpa2V0aHJvdWdoey0tZmE6IlxmMGNjIn0uZmEtdW5kZXJsaW5ley0tZmE6IlxmMGNkIn0uZmEtdGFibGV7LS1mYToiXGYwY2UifS5mYS1tYWdpYywuZmEtd2FuZC1tYWdpY3stLWZhOiJcZjBkMCJ9LmZhLXRydWNrey0tZmE6IlxmMGQxIn0uZmEtbW9uZXktYmlsbHstLWZhOiJcZjBkNiJ9LmZhLWNhcmV0LWRvd257LS1mYToiXGYwZDcifS5mYS1jYXJldC11cHstLWZhOiJcZjBkOCJ9LmZhLWNhcmV0LWxlZnR7LS1mYToiXGYwZDkifS5mYS1jYXJldC1yaWdodHstLWZhOiJcZjBkYSJ9LmZhLWNvbHVtbnMsLmZhLXRhYmxlLWNvbHVtbnN7LS1mYToiXGYwZGIifS5mYS1zb3J0LC5mYS11bnNvcnRlZHstLWZhOiJcZjBkYyJ9LmZhLXNvcnQtZGVzYywuZmEtc29ydC1kb3duey0tZmE6IlxmMGRkIn0uZmEtc29ydC1hc2MsLmZhLXNvcnQtdXB7LS1mYToiXGYwZGUifS5mYS1lbnZlbG9wZXstLWZhOiJcZjBlMCJ9LmZhLWFycm93LWxlZnQtcm90YXRlLC5mYS1hcnJvdy1yb3RhdGUtYmFjaywuZmEtYXJyb3ctcm90YXRlLWJhY2t3YXJkLC5mYS1hcnJvdy1yb3RhdGUtbGVmdCwuZmEtdW5kb3stLWZhOiJcZjBlMiJ9LmZhLWdhdmVsLC5mYS1sZWdhbHstLWZhOiJcZjBlMyJ9LmZhLWJvbHQsLmZhLXphcHstLWZhOiJcZjBlNyJ9LmZhLXNpdGVtYXB7LS1mYToiXGYwZTgifS5mYS11bWJyZWxsYXstLWZhOiJcZjBlOSJ9LmZhLWZpbGUtY2xpcGJvYXJkLC5mYS1wYXN0ZXstLWZhOiJcZjBlYSJ9LmZhLWxpZ2h0YnVsYnstLWZhOiJcZjBlYiJ9LmZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQsLmZhLWV4Y2hhbmdley0tZmE6IlxmMGVjIn0uZmEtY2xvdWQtYXJyb3ctZG93biwuZmEtY2xvdWQtZG93bmxvYWQsLmZhLWNsb3VkLWRvd25sb2FkLWFsdHstLWZhOiJcZjBlZCJ9LmZhLWNsb3VkLWFycm93LXVwLC5mYS1jbG91ZC11cGxvYWQsLmZhLWNsb3VkLXVwbG9hZC1hbHR7LS1mYToiXGYwZWUifS5mYS11c2VyLWRvY3RvciwuZmEtdXNlci1tZHstLWZhOiJcZjBmMCJ9LmZhLXN0ZXRob3Njb3Bley0tZmE6IlxmMGYxIn0uZmEtc3VpdGNhc2V7LS1mYToiXGYwZjIifS5mYS1iZWxsey0tZmE6IlxmMGYzIn0uZmEtY29mZmVlLC5mYS1tdWctc2F1Y2Vyey0tZmE6IlxmMGY0In0uZmEtaG9zcGl0YWwsLmZhLWhvc3BpdGFsLWFsdCwuZmEtaG9zcGl0YWwtd2lkZXstLWZhOiJcZjBmOCJ9LmZhLWFtYnVsYW5jZSwuZmEtdHJ1Y2stbWVkaWNhbHstLWZhOiJcZjBmOSJ9LmZhLW1lZGtpdCwuZmEtc3VpdGNhc2UtbWVkaWNhbHstLWZhOiJcZjBmYSJ9LmZhLWZpZ2h0ZXItamV0LC5mYS1qZXQtZmlnaHRlcnstLWZhOiJcZjBmYiJ9LmZhLWJlZXIsLmZhLWJlZXItbXVnLWVtcHR5ey0tZmE6IlxmMGZjIn0uZmEtaC1zcXVhcmUsLmZhLXNxdWFyZS1oey0tZmE6IlxmMGZkIn0uZmEtcGx1cy1zcXVhcmUsLmZhLXNxdWFyZS1wbHVzey0tZmE6IlxmMGZlIn0uZmEtYW5nbGUtZG91YmxlLWxlZnQsLmZhLWFuZ2xlcy1sZWZ0ey0tZmE6IlxmMTAwIn0uZmEtYW5nbGUtZG91YmxlLXJpZ2h0LC5mYS1hbmdsZXMtcmlnaHR7LS1mYToiXGYxMDEifS5mYS1hbmdsZS1kb3VibGUtdXAsLmZhLWFuZ2xlcy11cHstLWZhOiJcZjEwMiJ9LmZhLWFuZ2xlLWRvdWJsZS1kb3duLC5mYS1hbmdsZXMtZG93bnstLWZhOiJcZjEwMyJ9LmZhLWFuZ2xlLWxlZnR7LS1mYToiXGYxMDQifS5mYS1hbmdsZS1yaWdodHstLWZhOiJcZjEwNSJ9LmZhLWFuZ2xlLXVwey0tZmE6IlxmMTA2In0uZmEtYW5nbGUtZG93bnstLWZhOiJcZjEwNyJ9LmZhLWxhcHRvcHstLWZhOiJcZjEwOSJ9LmZhLXRhYmxldC1idXR0b257LS1mYToiXGYxMGEifS5mYS1tb2JpbGUtYnV0dG9uey0tZmE6IlxmMTBiIn0uZmEtcXVvdGUtbGVmdCwuZmEtcXVvdGUtbGVmdC1hbHR7LS1mYToiXGYxMGQifS5mYS1xdW90ZS1yaWdodCwuZmEtcXVvdGUtcmlnaHQtYWx0ey0tZmE6IlxmMTBlIn0uZmEtc3Bpbm5lcnstLWZhOiJcZjExMCJ9LmZhLWNpcmNsZXstLWZhOiJcZjExMSJ9LmZhLWZhY2Utc21pbGUsLmZhLXNtaWxley0tZmE6IlxmMTE4In0uZmEtZmFjZS1mcm93biwuZmEtZnJvd257LS1mYToiXGYxMTkifS5mYS1mYWNlLW1laCwuZmEtbWVoey0tZmE6IlxmMTFhIn0uZmEtZ2FtZXBhZHstLWZhOiJcZjExYiJ9LmZhLWtleWJvYXJkey0tZmE6IlxmMTFjIn0uZmEtZmxhZy1jaGVja2VyZWR7LS1mYToiXGYxMWUifS5mYS10ZXJtaW5hbHstLWZhOiJcZjEyMCJ9LmZhLWNvZGV7LS1mYToiXGYxMjEifS5mYS1tYWlsLXJlcGx5LWFsbCwuZmEtcmVwbHktYWxsey0tZmE6IlxmMTIyIn0uZmEtbG9jYXRpb24tYXJyb3d7LS1mYToiXGYxMjQifS5mYS1jcm9wey0tZmE6IlxmMTI1In0uZmEtY29kZS1icmFuY2h7LS1mYToiXGYxMjYifS5mYS1jaGFpbi1icm9rZW4sLmZhLWNoYWluLXNsYXNoLC5mYS1saW5rLXNsYXNoLC5mYS11bmxpbmt7LS1mYToiXGYxMjcifS5mYS1pbmZvey0tZmE6IlxmMTI5In0uZmEtc3VwZXJzY3JpcHR7LS1mYToiXGYxMmIifS5mYS1zdWJzY3JpcHR7LS1mYToiXGYxMmMifS5mYS1lcmFzZXJ7LS1mYToiXGYxMmQifS5mYS1wdXp6bGUtcGllY2V7LS1mYToiXGYxMmUifS5mYS1taWNyb3Bob25ley0tZmE6IlxmMTMwIn0uZmEtbWljcm9waG9uZS1zbGFzaHstLWZhOiJcZjEzMSJ9LmZhLXNoaWVsZCwuZmEtc2hpZWxkLWJsYW5rey0tZmE6IlxmMTMyIn0uZmEtY2FsZW5kYXJ7LS1mYToiXGYxMzMifS5mYS1maXJlLWV4dGluZ3Vpc2hlcnstLWZhOiJcZjEzNCJ9LmZhLXJvY2tldHstLWZhOiJcZjEzNSJ9LmZhLWNoZXZyb24tY2lyY2xlLWxlZnQsLmZhLWNpcmNsZS1jaGV2cm9uLWxlZnR7LS1mYToiXGYxMzcifS5mYS1jaGV2cm9uLWNpcmNsZS1yaWdodCwuZmEtY2lyY2xlLWNoZXZyb24tcmlnaHR7LS1mYToiXGYxMzgifS5mYS1jaGV2cm9uLWNpcmNsZS11cCwuZmEtY2lyY2xlLWNoZXZyb24tdXB7LS1mYToiXGYxMzkifS5mYS1jaGV2cm9uLWNpcmNsZS1kb3duLC5mYS1jaXJjbGUtY2hldnJvbi1kb3duey0tZmE6IlxmMTNhIn0uZmEtYW5jaG9yey0tZmE6IlxmMTNkIn0uZmEtdW5sb2NrLWFsdCwuZmEtdW5sb2NrLWtleWhvbGV7LS1mYToiXGYxM2UifS5mYS1idWxsc2V5ZXstLWZhOiJcZjE0MCJ9LmZhLWVsbGlwc2lzLC5mYS1lbGxpcHNpcy1oey0tZmE6IlxmMTQxIn0uZmEtZWxsaXBzaXMtdiwuZmEtZWxsaXBzaXMtdmVydGljYWx7LS1mYToiXGYxNDIifS5mYS1yc3Mtc3F1YXJlLC5mYS1zcXVhcmUtcnNzey0tZmE6IlxmMTQzIn0uZmEtY2lyY2xlLXBsYXksLmZhLXBsYXktY2lyY2xley0tZmE6IlxmMTQ0In0uZmEtdGlja2V0ey0tZmE6IlxmMTQ1In0uZmEtbWludXMtc3F1YXJlLC5mYS1zcXVhcmUtbWludXN7LS1mYToiXGYxNDYifS5mYS1hcnJvdy10dXJuLXVwLC5mYS1sZXZlbC11cHstLWZhOiJcZjE0OCJ9LmZhLWFycm93LXR1cm4tZG93biwuZmEtbGV2ZWwtZG93bnstLWZhOiJcZjE0OSJ9LmZhLWNoZWNrLXNxdWFyZSwuZmEtc3F1YXJlLWNoZWNrey0tZmE6IlxmMTRhIn0uZmEtcGVuLXNxdWFyZSwuZmEtcGVuY2lsLXNxdWFyZSwuZmEtc3F1YXJlLXBlbnstLWZhOiJcZjE0YiJ9LmZhLWV4dGVybmFsLWxpbmstc3F1YXJlLC5mYS1zcXVhcmUtYXJyb3ctdXAtcmlnaHR7LS1mYToiXGYxNGMifS5mYS1zaGFyZS1mcm9tLXNxdWFyZSwuZmEtc2hhcmUtc3F1YXJley0tZmE6IlxmMTRkIn0uZmEtY29tcGFzc3stLWZhOiJcZjE0ZSJ9LmZhLWNhcmV0LXNxdWFyZS1kb3duLC5mYS1zcXVhcmUtY2FyZXQtZG93bnstLWZhOiJcZjE1MCJ9LmZhLWNhcmV0LXNxdWFyZS11cCwuZmEtc3F1YXJlLWNhcmV0LXVwey0tZmE6IlxmMTUxIn0uZmEtY2FyZXQtc3F1YXJlLXJpZ2h0LC5mYS1zcXVhcmUtY2FyZXQtcmlnaHR7LS1mYToiXGYxNTIifS5mYS1ldXIsLmZhLWV1cm8sLmZhLWV1cm8tc2lnbnstLWZhOiJcZjE1MyJ9LmZhLWdicCwuZmEtcG91bmQtc2lnbiwuZmEtc3Rlcmxpbmctc2lnbnstLWZhOiJcZjE1NCJ9LmZhLXJ1cGVlLC5mYS1ydXBlZS1zaWduey0tZmE6IlxmMTU2In0uZmEtY255LC5mYS1qcHksLmZhLXJtYiwuZmEteWVuLC5mYS15ZW4tc2lnbnstLWZhOiJcZjE1NyJ9LmZhLXJvdWJsZSwuZmEtcnViLC5mYS1ydWJsZSwuZmEtcnVibGUtc2lnbnstLWZhOiJcZjE1OCJ9LmZhLWtydywuZmEtd29uLC5mYS13b24tc2lnbnstLWZhOiJcZjE1OSJ9LmZhLWZpbGV7LS1mYToiXGYxNWIifS5mYS1maWxlLWFsdCwuZmEtZmlsZS1saW5lcywuZmEtZmlsZS10ZXh0ey0tZmE6IlxmMTVjIn0uZmEtYXJyb3ctZG93bi1hLXosLmZhLXNvcnQtYWxwaGEtYXNjLC5mYS1zb3J0LWFscGhhLWRvd257LS1mYToiXGYxNWQifS5mYS1hcnJvdy11cC1hLXosLmZhLXNvcnQtYWxwaGEtdXB7LS1mYToiXGYxNWUifS5mYS1hcnJvdy1kb3duLXdpZGUtc2hvcnQsLmZhLXNvcnQtYW1vdW50LWFzYywuZmEtc29ydC1hbW91bnQtZG93bnstLWZhOiJcZjE2MCJ9LmZhLWFycm93LXVwLXdpZGUtc2hvcnQsLmZhLXNvcnQtYW1vdW50LXVwey0tZmE6IlxmMTYxIn0uZmEtYXJyb3ctZG93bi0xLTksLmZhLXNvcnQtbnVtZXJpYy1hc2MsLmZhLXNvcnQtbnVtZXJpYy1kb3duey0tZmE6IlxmMTYyIn0uZmEtYXJyb3ctdXAtMS05LC5mYS1zb3J0LW51bWVyaWMtdXB7LS1mYToiXGYxNjMifS5mYS10aHVtYnMtdXB7LS1mYToiXGYxNjQifS5mYS10aHVtYnMtZG93bnstLWZhOiJcZjE2NSJ9LmZhLWFycm93LWRvd24tbG9uZywuZmEtbG9uZy1hcnJvdy1kb3duey0tZmE6IlxmMTc1In0uZmEtYXJyb3ctdXAtbG9uZywuZmEtbG9uZy1hcnJvdy11cHstLWZhOiJcZjE3NiJ9LmZhLWFycm93LWxlZnQtbG9uZywuZmEtbG9uZy1hcnJvdy1sZWZ0ey0tZmE6IlxmMTc3In0uZmEtYXJyb3ctcmlnaHQtbG9uZywuZmEtbG9uZy1hcnJvdy1yaWdodHstLWZhOiJcZjE3OCJ9LmZhLWZlbWFsZSwuZmEtcGVyc29uLWRyZXNzey0tZmE6IlxmMTgyIn0uZmEtbWFsZSwuZmEtcGVyc29uey0tZmE6IlxmMTgzIn0uZmEtc3Vuey0tZmE6IlxmMTg1In0uZmEtbW9vbnstLWZhOiJcZjE4NiJ9LmZhLWFyY2hpdmUsLmZhLWJveC1hcmNoaXZley0tZmE6IlxmMTg3In0uZmEtYnVney0tZmE6IlxmMTg4In0uZmEtY2FyZXQtc3F1YXJlLWxlZnQsLmZhLXNxdWFyZS1jYXJldC1sZWZ0ey0tZmE6IlxmMTkxIn0uZmEtY2lyY2xlLWRvdCwuZmEtZG90LWNpcmNsZXstLWZhOiJcZjE5MiJ9LmZhLXdoZWVsY2hhaXJ7LS1mYToiXGYxOTMifS5mYS1saXJhLXNpZ257LS1mYToiXGYxOTUifS5mYS1zaHV0dGxlLXNwYWNlLC5mYS1zcGFjZS1zaHV0dGxley0tZmE6IlxmMTk3In0uZmEtZW52ZWxvcGUtc3F1YXJlLC5mYS1zcXVhcmUtZW52ZWxvcGV7LS1mYToiXGYxOTkifS5mYS1iYW5rLC5mYS1idWlsZGluZy1jb2x1bW5zLC5mYS1pbnN0aXR1dGlvbiwuZmEtbXVzZXVtLC5mYS11bml2ZXJzaXR5ey0tZmE6IlxmMTljIn0uZmEtZ3JhZHVhdGlvbi1jYXAsLmZhLW1vcnRhci1ib2FyZHstLWZhOiJcZjE5ZCJ9LmZhLWxhbmd1YWdley0tZmE6IlxmMWFiIn0uZmEtZmF4ey0tZmE6IlxmMWFjIn0uZmEtYnVpbGRpbmd7LS1mYToiXGYxYWQifS5mYS1jaGlsZHstLWZhOiJcZjFhZSJ9LmZhLXBhd3stLWZhOiJcZjFiMCJ9LmZhLWN1YmV7LS1mYToiXGYxYjIifS5mYS1jdWJlc3stLWZhOiJcZjFiMyJ9LmZhLXJlY3ljbGV7LS1mYToiXGYxYjgifS5mYS1hdXRvbW9iaWxlLC5mYS1jYXJ7LS1mYToiXGYxYjkifS5mYS1jYWIsLmZhLXRheGl7LS1mYToiXGYxYmEifS5mYS10cmVley0tZmE6IlxmMWJiIn0uZmEtZGF0YWJhc2V7LS1mYToiXGYxYzAifS5mYS1maWxlLXBkZnstLWZhOiJcZjFjMSJ9LmZhLWZpbGUtd29yZHstLWZhOiJcZjFjMiJ9LmZhLWZpbGUtZXhjZWx7LS1mYToiXGYxYzMifS5mYS1maWxlLXBvd2VycG9pbnR7LS1mYToiXGYxYzQifS5mYS1maWxlLWltYWdley0tZmE6IlxmMWM1In0uZmEtZmlsZS1hcmNoaXZlLC5mYS1maWxlLXppcHBlcnstLWZhOiJcZjFjNiJ9LmZhLWZpbGUtYXVkaW97LS1mYToiXGYxYzcifS5mYS1maWxlLXZpZGVvey0tZmE6IlxmMWM4In0uZmEtZmlsZS1jb2Rley0tZmE6IlxmMWM5In0uZmEtbGlmZS1yaW5ney0tZmE6IlxmMWNkIn0uZmEtY2lyY2xlLW5vdGNoey0tZmE6IlxmMWNlIn0uZmEtcGFwZXItcGxhbmV7LS1mYToiXGYxZDgifS5mYS1jbG9jay1yb3RhdGUtbGVmdCwuZmEtaGlzdG9yeXstLWZhOiJcZjFkYSJ9LmZhLWhlYWRlciwuZmEtaGVhZGluZ3stLWZhOiJcZjFkYyJ9LmZhLXBhcmFncmFwaHstLWZhOiJcZjFkZCJ9LmZhLXNsaWRlcnMsLmZhLXNsaWRlcnMtaHstLWZhOiJcZjFkZSJ9LmZhLXNoYXJlLWFsdCwuZmEtc2hhcmUtbm9kZXN7LS1mYToiXGYxZTAifS5mYS1zaGFyZS1hbHQtc3F1YXJlLC5mYS1zcXVhcmUtc2hhcmUtbm9kZXN7LS1mYToiXGYxZTEifS5mYS1ib21iey0tZmE6IlxmMWUyIn0uZmEtZnV0Ym9sLC5mYS1mdXRib2wtYmFsbCwuZmEtc29jY2VyLWJhbGx7LS1mYToiXGYxZTMifS5mYS10ZWxldHlwZSwuZmEtdHR5ey0tZmE6IlxmMWU0In0uZmEtYmlub2N1bGFyc3stLWZhOiJcZjFlNSJ9LmZhLXBsdWd7LS1mYToiXGYxZTYifS5mYS1uZXdzcGFwZXJ7LS1mYToiXGYxZWEifS5mYS13aWZpLC5mYS13aWZpLTMsLmZhLXdpZmktc3Ryb25ney0tZmE6IlxmMWViIn0uZmEtY2FsY3VsYXRvcnstLWZhOiJcZjFlYyJ9LmZhLWJlbGwtc2xhc2h7LS1mYToiXGYxZjYifS5mYS10cmFzaHstLWZhOiJcZjFmOCJ9LmZhLWNvcHlyaWdodHstLWZhOiJcZjFmOSJ9LmZhLWV5ZS1kcm9wcGVyLC5mYS1leWUtZHJvcHBlci1lbXB0eSwuZmEtZXllZHJvcHBlcnstLWZhOiJcZjFmYiJ9LmZhLXBhaW50LWJydXNoLC5mYS1wYWludGJydXNoey0tZmE6IlxmMWZjIn0uZmEtYmlydGhkYXktY2FrZSwuZmEtY2FrZSwuZmEtY2FrZS1jYW5kbGVzey0tZmE6IlxmMWZkIn0uZmEtYXJlYS1jaGFydCwuZmEtY2hhcnQtYXJlYXstLWZhOiJcZjFmZSJ9LmZhLWNoYXJ0LXBpZSwuZmEtcGllLWNoYXJ0ey0tZmE6IlxmMjAwIn0uZmEtY2hhcnQtbGluZSwuZmEtbGluZS1jaGFydHstLWZhOiJcZjIwMSJ9LmZhLXRvZ2dsZS1vZmZ7LS1mYToiXGYyMDQifS5mYS10b2dnbGUtb257LS1mYToiXGYyMDUifS5mYS1iaWN5Y2xley0tZmE6IlxmMjA2In0uZmEtYnVzey0tZmE6IlxmMjA3In0uZmEtY2xvc2VkLWNhcHRpb25pbmd7LS1mYToiXGYyMGEifS5mYS1pbHMsLmZhLXNoZWtlbCwuZmEtc2hla2VsLXNpZ24sLmZhLXNoZXFlbCwuZmEtc2hlcWVsLXNpZ257LS1mYToiXGYyMGIifS5mYS1jYXJ0LXBsdXN7LS1mYToiXGYyMTcifS5mYS1jYXJ0LWFycm93LWRvd257LS1mYToiXGYyMTgifS5mYS1kaWFtb25key0tZmE6IlxmMjE5In0uZmEtc2hpcHstLWZhOiJcZjIxYSJ9LmZhLXVzZXItc2VjcmV0ey0tZmE6IlxmMjFiIn0uZmEtbW90b3JjeWNsZXstLWZhOiJcZjIxYyJ9LmZhLXN0cmVldC12aWV3ey0tZmE6IlxmMjFkIn0uZmEtaGVhcnQtcHVsc2UsLmZhLWhlYXJ0YmVhdHstLWZhOiJcZjIxZSJ9LmZhLXZlbnVzey0tZmE6IlxmMjIxIn0uZmEtbWFyc3stLWZhOiJcZjIyMiJ9LmZhLW1lcmN1cnl7LS1mYToiXGYyMjMifS5mYS1tYXJzLWFuZC12ZW51c3stLWZhOiJcZjIyNCJ9LmZhLXRyYW5zZ2VuZGVyLC5mYS10cmFuc2dlbmRlci1hbHR7LS1mYToiXGYyMjUifS5mYS12ZW51cy1kb3VibGV7LS1mYToiXGYyMjYifS5mYS1tYXJzLWRvdWJsZXstLWZhOiJcZjIyNyJ9LmZhLXZlbnVzLW1hcnN7LS1mYToiXGYyMjgifS5mYS1tYXJzLXN0cm9rZXstLWZhOiJcZjIyOSJ9LmZhLW1hcnMtc3Ryb2tlLXVwLC5mYS1tYXJzLXN0cm9rZS12ey0tZmE6IlxmMjJhIn0uZmEtbWFycy1zdHJva2UtaCwuZmEtbWFycy1zdHJva2UtcmlnaHR7LS1mYToiXGYyMmIifS5mYS1uZXV0ZXJ7LS1mYToiXGYyMmMifS5mYS1nZW5kZXJsZXNzey0tZmE6IlxmMjJkIn0uZmEtc2VydmVyey0tZmE6IlxmMjMzIn0uZmEtdXNlci1wbHVzey0tZmE6IlxmMjM0In0uZmEtdXNlci10aW1lcywuZmEtdXNlci14bWFya3stLWZhOiJcZjIzNSJ9LmZhLWJlZHstLWZhOiJcZjIzNiJ9LmZhLXRyYWluey0tZmE6IlxmMjM4In0uZmEtc3Vid2F5LC5mYS10cmFpbi1zdWJ3YXl7LS1mYToiXGYyMzkifS5mYS1iYXR0ZXJ5LC5mYS1iYXR0ZXJ5LTUsLmZhLWJhdHRlcnktZnVsbHstLWZhOiJcZjI0MCJ9LmZhLWJhdHRlcnktNCwuZmEtYmF0dGVyeS10aHJlZS1xdWFydGVyc3stLWZhOiJcZjI0MSJ9LmZhLWJhdHRlcnktMywuZmEtYmF0dGVyeS1oYWxmey0tZmE6IlxmMjQyIn0uZmEtYmF0dGVyeS0yLC5mYS1iYXR0ZXJ5LXF1YXJ0ZXJ7LS1mYToiXGYyNDMifS5mYS1iYXR0ZXJ5LTAsLmZhLWJhdHRlcnktZW1wdHl7LS1mYToiXGYyNDQifS5mYS1hcnJvdy1wb2ludGVyLC5mYS1tb3VzZS1wb2ludGVyey0tZmE6IlxmMjQ1In0uZmEtaS1jdXJzb3J7LS1mYToiXGYyNDYifS5mYS1vYmplY3QtZ3JvdXB7LS1mYToiXGYyNDcifS5mYS1vYmplY3QtdW5ncm91cHstLWZhOiJcZjI0OCJ9LmZhLW5vdGUtc3RpY2t5LC5mYS1zdGlja3ktbm90ZXstLWZhOiJcZjI0OSJ9LmZhLWNsb25ley0tZmE6IlxmMjRkIn0uZmEtYmFsYW5jZS1zY2FsZSwuZmEtc2NhbGUtYmFsYW5jZWR7LS1mYToiXGYyNGUifS5mYS1ob3VyZ2xhc3MtMSwuZmEtaG91cmdsYXNzLXN0YXJ0ey0tZmE6IlxmMjUxIn0uZmEtaG91cmdsYXNzLTIsLmZhLWhvdXJnbGFzcy1oYWxmey0tZmE6IlxmMjUyIn0uZmEtaG91cmdsYXNzLTMsLmZhLWhvdXJnbGFzcy1lbmR7LS1mYToiXGYyNTMifS5mYS1ob3VyZ2xhc3MsLmZhLWhvdXJnbGFzcy1lbXB0eXstLWZhOiJcZjI1NCJ9LmZhLWhhbmQtYmFjay1maXN0LC5mYS1oYW5kLXJvY2t7LS1mYToiXGYyNTUifS5mYS1oYW5kLC5mYS1oYW5kLXBhcGVyey0tZmE6IlxmMjU2In0uZmEtaGFuZC1zY2lzc29yc3stLWZhOiJcZjI1NyJ9LmZhLWhhbmQtbGl6YXJkey0tZmE6IlxmMjU4In0uZmEtaGFuZC1zcG9ja3stLWZhOiJcZjI1OSJ9LmZhLWhhbmQtcG9pbnRlcnstLWZhOiJcZjI1YSJ9LmZhLWhhbmQtcGVhY2V7LS1mYToiXGYyNWIifS5mYS10cmFkZW1hcmt7LS1mYToiXGYyNWMifS5mYS1yZWdpc3RlcmVkey0tZmE6IlxmMjVkIn0uZmEtdGVsZXZpc2lvbiwuZmEtdHYsLmZhLXR2LWFsdHstLWZhOiJcZjI2YyJ9LmZhLWNhbGVuZGFyLXBsdXN7LS1mYToiXGYyNzEifS5mYS1jYWxlbmRhci1taW51c3stLWZhOiJcZjI3MiJ9LmZhLWNhbGVuZGFyLXRpbWVzLC5mYS1jYWxlbmRhci14bWFya3stLWZhOiJcZjI3MyJ9LmZhLWNhbGVuZGFyLWNoZWNrey0tZmE6IlxmMjc0In0uZmEtaW5kdXN0cnl7LS1mYToiXGYyNzUifS5mYS1tYXAtcGluey0tZmE6IlxmMjc2In0uZmEtbWFwLXNpZ25zLC5mYS1zaWducy1wb3N0ey0tZmE6IlxmMjc3In0uZmEtbWFwey0tZmE6IlxmMjc5In0uZmEtY29tbWVudC1hbHQsLmZhLW1lc3NhZ2V7LS1mYToiXGYyN2EifS5mYS1jaXJjbGUtcGF1c2UsLmZhLXBhdXNlLWNpcmNsZXstLWZhOiJcZjI4YiJ9LmZhLWNpcmNsZS1zdG9wLC5mYS1zdG9wLWNpcmNsZXstLWZhOiJcZjI4ZCJ9LmZhLWJhZy1zaG9wcGluZywuZmEtc2hvcHBpbmctYmFney0tZmE6IlxmMjkwIn0uZmEtYmFza2V0LXNob3BwaW5nLC5mYS1zaG9wcGluZy1iYXNrZXR7LS1mYToiXGYyOTEifS5mYS11bml2ZXJzYWwtYWNjZXNzey0tZmE6IlxmMjlhIn0uZmEtYmxpbmQsLmZhLXBlcnNvbi13YWxraW5nLXdpdGgtY2FuZXstLWZhOiJcZjI5ZCJ9LmZhLWF1ZGlvLWRlc2NyaXB0aW9uey0tZmE6IlxmMjllIn0uZmEtcGhvbmUtdm9sdW1lLC5mYS12b2x1bWUtY29udHJvbC1waG9uZXstLWZhOiJcZjJhMCJ9LmZhLWJyYWlsbGV7LS1mYToiXGYyYTEifS5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXMsLmZhLWVhci1saXN0ZW57LS1mYToiXGYyYTIifS5mYS1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZywuZmEtYXNsLWludGVycHJldGluZywuZmEtaGFuZHMtYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmcsLmZhLWhhbmRzLWFzbC1pbnRlcnByZXRpbmd7LS1mYToiXGYyYTMifS5mYS1kZWFmLC5mYS1kZWFmbmVzcywuZmEtZWFyLWRlYWYsLmZhLWhhcmQtb2YtaGVhcmluZ3stLWZhOiJcZjJhNCJ9LmZhLWhhbmRzLC5mYS1zaWduLWxhbmd1YWdlLC5mYS1zaWduaW5ney0tZmE6IlxmMmE3In0uZmEtZXllLWxvdy12aXNpb24sLmZhLWxvdy12aXNpb257LS1mYToiXGYyYTgifS5mYS1oYW5kc2hha2UsLmZhLWhhbmRzaGFrZS1hbHQsLmZhLWhhbmRzaGFrZS1zaW1wbGV7LS1mYToiXGYyYjUifS5mYS1lbnZlbG9wZS1vcGVuey0tZmE6IlxmMmI2In0uZmEtYWRkcmVzcy1ib29rLC5mYS1jb250YWN0LWJvb2t7LS1mYToiXGYyYjkifS5mYS1hZGRyZXNzLWNhcmQsLmZhLWNvbnRhY3QtY2FyZCwuZmEtdmNhcmR7LS1mYToiXGYyYmIifS5mYS1jaXJjbGUtdXNlciwuZmEtdXNlci1jaXJjbGV7LS1mYToiXGYyYmQifS5mYS1pZC1iYWRnZXstLWZhOiJcZjJjMSJ9LmZhLWRyaXZlcnMtbGljZW5zZSwuZmEtaWQtY2FyZHstLWZhOiJcZjJjMiJ9LmZhLXRlbXBlcmF0dXJlLTQsLmZhLXRlbXBlcmF0dXJlLWZ1bGwsLmZhLXRoZXJtb21ldGVyLTQsLmZhLXRoZXJtb21ldGVyLWZ1bGx7LS1mYToiXGYyYzcifS5mYS10ZW1wZXJhdHVyZS0zLC5mYS10ZW1wZXJhdHVyZS10aHJlZS1xdWFydGVycywuZmEtdGhlcm1vbWV0ZXItMywuZmEtdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnN7LS1mYToiXGYyYzgifS5mYS10ZW1wZXJhdHVyZS0yLC5mYS10ZW1wZXJhdHVyZS1oYWxmLC5mYS10aGVybW9tZXRlci0yLC5mYS10aGVybW9tZXRlci1oYWxmey0tZmE6IlxmMmM5In0uZmEtdGVtcGVyYXR1cmUtMSwuZmEtdGVtcGVyYXR1cmUtcXVhcnRlciwuZmEtdGhlcm1vbWV0ZXItMSwuZmEtdGhlcm1vbWV0ZXItcXVhcnRlcnstLWZhOiJcZjJjYSJ9LmZhLXRlbXBlcmF0dXJlLTAsLmZhLXRlbXBlcmF0dXJlLWVtcHR5LC5mYS10aGVybW9tZXRlci0wLC5mYS10aGVybW9tZXRlci1lbXB0eXstLWZhOiJcZjJjYiJ9LmZhLXNob3dlcnstLWZhOiJcZjJjYyJ9LmZhLWJhdGgsLmZhLWJhdGh0dWJ7LS1mYToiXGYyY2QifS5mYS1wb2RjYXN0ey0tZmE6IlxmMmNlIn0uZmEtd2luZG93LW1heGltaXpley0tZmE6IlxmMmQwIn0uZmEtd2luZG93LW1pbmltaXpley0tZmE6IlxmMmQxIn0uZmEtd2luZG93LXJlc3RvcmV7LS1mYToiXGYyZDIifS5mYS1zcXVhcmUteG1hcmssLmZhLXRpbWVzLXNxdWFyZSwuZmEteG1hcmstc3F1YXJley0tZmE6IlxmMmQzIn0uZmEtbWljcm9jaGlwey0tZmE6IlxmMmRiIn0uZmEtc25vd2ZsYWtley0tZmE6IlxmMmRjIn0uZmEtc3Bvb24sLmZhLXV0ZW5zaWwtc3Bvb257LS1mYToiXGYyZTUifS5mYS1jdXRsZXJ5LC5mYS11dGVuc2lsc3stLWZhOiJcZjJlNyJ9LmZhLXJvdGF0ZS1iYWNrLC5mYS1yb3RhdGUtYmFja3dhcmQsLmZhLXJvdGF0ZS1sZWZ0LC5mYS11bmRvLWFsdHstLWZhOiJcZjJlYSJ9LmZhLXRyYXNoLWFsdCwuZmEtdHJhc2gtY2Fuey0tZmE6IlxmMmVkIn0uZmEtcm90YXRlLC5mYS1zeW5jLWFsdHstLWZhOiJcZjJmMSJ9LmZhLXN0b3B3YXRjaHstLWZhOiJcZjJmMiJ9LmZhLXJpZ2h0LWZyb20tYnJhY2tldCwuZmEtc2lnbi1vdXQtYWx0ey0tZmE6IlxmMmY1In0uZmEtcmlnaHQtdG8tYnJhY2tldCwuZmEtc2lnbi1pbi1hbHR7LS1mYToiXGYyZjYifS5mYS1yZWRvLWFsdCwuZmEtcm90YXRlLWZvcndhcmQsLmZhLXJvdGF0ZS1yaWdodHstLWZhOiJcZjJmOSJ9LmZhLXBvb3stLWZhOiJcZjJmZSJ9LmZhLWltYWdlc3stLWZhOiJcZjMwMiJ9LmZhLXBlbmNpbCwuZmEtcGVuY2lsLWFsdHstLWZhOiJcZjMwMyJ9LmZhLXBlbnstLWZhOiJcZjMwNCJ9LmZhLXBlbi1hbHQsLmZhLXBlbi1jbGlwey0tZmE6IlxmMzA1In0uZmEtb2N0YWdvbnstLWZhOiJcZjMwNiJ9LmZhLWRvd24tbG9uZywuZmEtbG9uZy1hcnJvdy1hbHQtZG93bnstLWZhOiJcZjMwOSJ9LmZhLWxlZnQtbG9uZywuZmEtbG9uZy1hcnJvdy1hbHQtbGVmdHstLWZhOiJcZjMwYSJ9LmZhLWxvbmctYXJyb3ctYWx0LXJpZ2h0LC5mYS1yaWdodC1sb25ney0tZmE6IlxmMzBiIn0uZmEtbG9uZy1hcnJvdy1hbHQtdXAsLmZhLXVwLWxvbmd7LS1mYToiXGYzMGMifS5mYS1oZXhhZ29uey0tZmE6IlxmMzEyIn0uZmEtZmlsZS1lZGl0LC5mYS1maWxlLXBlbnstLWZhOiJcZjMxYyJ9LmZhLWV4cGFuZC1hcnJvd3MtYWx0LC5mYS1tYXhpbWl6ZXstLWZhOiJcZjMxZSJ9LmZhLWNsaXBib2FyZHstLWZhOiJcZjMyOCJ9LmZhLWFycm93cy1hbHQtaCwuZmEtbGVmdC1yaWdodHstLWZhOiJcZjMzNyJ9LmZhLWFycm93cy1hbHQtdiwuZmEtdXAtZG93bnstLWZhOiJcZjMzOCJ9LmZhLWFsYXJtLWNsb2Nrey0tZmE6IlxmMzRlIn0uZmEtYXJyb3ctYWx0LWNpcmNsZS1kb3duLC5mYS1jaXJjbGUtZG93bnstLWZhOiJcZjM1OCJ9LmZhLWFycm93LWFsdC1jaXJjbGUtbGVmdCwuZmEtY2lyY2xlLWxlZnR7LS1mYToiXGYzNTkifS5mYS1hcnJvdy1hbHQtY2lyY2xlLXJpZ2h0LC5mYS1jaXJjbGUtcmlnaHR7LS1mYToiXGYzNWEifS5mYS1hcnJvdy1hbHQtY2lyY2xlLXVwLC5mYS1jaXJjbGUtdXB7LS1mYToiXGYzNWIifS5mYS1leHRlcm5hbC1saW5rLWFsdCwuZmEtdXAtcmlnaHQtZnJvbS1zcXVhcmV7LS1mYToiXGYzNWQifS5mYS1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQsLmZhLXNxdWFyZS11cC1yaWdodHstLWZhOiJcZjM2MCJ9LmZhLWV4Y2hhbmdlLWFsdCwuZmEtcmlnaHQtbGVmdHstLWZhOiJcZjM2MiJ9LmZhLXJlcGVhdHstLWZhOiJcZjM2MyJ9LmZhLWNvZGUtY29tbWl0ey0tZmE6IlxmMzg2In0uZmEtY29kZS1tZXJnZXstLWZhOiJcZjM4NyJ9LmZhLWRlc2t0b3AsLmZhLWRlc2t0b3AtYWx0ey0tZmE6IlxmMzkwIn0uZmEtZ2Vtey0tZmE6IlxmM2E1In0uZmEtbGV2ZWwtZG93bi1hbHQsLmZhLXR1cm4tZG93bnstLWZhOiJcZjNiZSJ9LmZhLWxldmVsLXVwLWFsdCwuZmEtdHVybi11cHstLWZhOiJcZjNiZiJ9LmZhLWxvY2stb3BlbnstLWZhOiJcZjNjMSJ9LmZhLWxvY2F0aW9uLWRvdCwuZmEtbWFwLW1hcmtlci1hbHR7LS1mYToiXGYzYzUifS5mYS1taWNyb3Bob25lLWFsdCwuZmEtbWljcm9waG9uZS1saW5lc3stLWZhOiJcZjNjOSJ9LmZhLW1vYmlsZS1hbHQsLmZhLW1vYmlsZS1zY3JlZW4tYnV0dG9uey0tZmE6IlxmM2NkIn0uZmEtbW9iaWxlLC5mYS1tb2JpbGUtYW5kcm9pZCwuZmEtbW9iaWxlLXBob25ley0tZmE6IlxmM2NlIn0uZmEtbW9iaWxlLWFuZHJvaWQtYWx0LC5mYS1tb2JpbGUtc2NyZWVuey0tZmE6IlxmM2NmIn0uZmEtbW9uZXktYmlsbC0xLC5mYS1tb25leS1iaWxsLWFsdHstLWZhOiJcZjNkMSJ9LmZhLXBob25lLXNsYXNoey0tZmE6IlxmM2RkIn0uZmEtaW1hZ2UtcG9ydHJhaXQsLmZhLXBvcnRyYWl0ey0tZmE6IlxmM2UwIn0uZmEtbWFpbC1yZXBseSwuZmEtcmVwbHl7LS1mYToiXGYzZTUifS5mYS1zaGllbGQtYWx0LC5mYS1zaGllbGQtaGFsdmVkey0tZmE6IlxmM2VkIn0uZmEtdGFibGV0LWFsdCwuZmEtdGFibGV0LXNjcmVlbi1idXR0b257LS1mYToiXGYzZmEifS5mYS10YWJsZXQsLmZhLXRhYmxldC1hbmRyb2lkey0tZmE6IlxmM2ZiIn0uZmEtdGlja2V0LWFsdCwuZmEtdGlja2V0LXNpbXBsZXstLWZhOiJcZjNmZiJ9LmZhLXJlY3RhbmdsZS10aW1lcywuZmEtcmVjdGFuZ2xlLXhtYXJrLC5mYS10aW1lcy1yZWN0YW5nbGUsLmZhLXdpbmRvdy1jbG9zZXstLWZhOiJcZjQxMCJ9LmZhLWNvbXByZXNzLWFsdCwuZmEtZG93bi1sZWZ0LWFuZC11cC1yaWdodC10by1jZW50ZXJ7LS1mYToiXGY0MjIifS5mYS1leHBhbmQtYWx0LC5mYS11cC1yaWdodC1hbmQtZG93bi1sZWZ0LWZyb20tY2VudGVyey0tZmE6IlxmNDI0In0uZmEtYmFzZWJhbGwtYmF0LWJhbGx7LS1mYToiXGY0MzIifS5mYS1iYXNlYmFsbCwuZmEtYmFzZWJhbGwtYmFsbHstLWZhOiJcZjQzMyJ9LmZhLWJhc2tldGJhbGwsLmZhLWJhc2tldGJhbGwtYmFsbHstLWZhOiJcZjQzNCJ9LmZhLWJvd2xpbmctYmFsbHstLWZhOiJcZjQzNiJ9LmZhLWNoZXNzey0tZmE6IlxmNDM5In0uZmEtY2hlc3MtYmlzaG9wey0tZmE6IlxmNDNhIn0uZmEtY2hlc3MtYm9hcmR7LS1mYToiXGY0M2MifS5mYS1jaGVzcy1raW5ney0tZmE6IlxmNDNmIn0uZmEtY2hlc3Mta25pZ2h0ey0tZmE6IlxmNDQxIn0uZmEtY2hlc3MtcGF3bnstLWZhOiJcZjQ0MyJ9LmZhLWNoZXNzLXF1ZWVuey0tZmE6IlxmNDQ1In0uZmEtY2hlc3Mtcm9va3stLWZhOiJcZjQ0NyJ9LmZhLWR1bWJiZWxsey0tZmE6IlxmNDRiIn0uZmEtZm9vdGJhbGwsLmZhLWZvb3RiYWxsLWJhbGx7LS1mYToiXGY0NGUifS5mYS1nb2xmLWJhbGwsLmZhLWdvbGYtYmFsbC10ZWV7LS1mYToiXGY0NTAifS5mYS1ob2NrZXktcHVja3stLWZhOiJcZjQ1MyJ9LmZhLWJyb29tLWJhbGwsLmZhLXF1aWRkaXRjaCwuZmEtcXVpZGRpdGNoLWJyb29tLWJhbGx7LS1mYToiXGY0NTgifS5mYS1zcXVhcmUtZnVsbHstLWZhOiJcZjQ1YyJ9LmZhLXBpbmctcG9uZy1wYWRkbGUtYmFsbCwuZmEtdGFibGUtdGVubmlzLC5mYS10YWJsZS10ZW5uaXMtcGFkZGxlLWJhbGx7LS1mYToiXGY0NWQifS5mYS12b2xsZXliYWxsLC5mYS12b2xsZXliYWxsLWJhbGx7LS1mYToiXGY0NWYifS5mYS1hbGxlcmdpZXMsLmZhLWhhbmQtZG90c3stLWZhOiJcZjQ2MSJ9LmZhLWJhbmQtYWlkLC5mYS1iYW5kYWdley0tZmE6IlxmNDYyIn0uZmEtYm94ey0tZmE6IlxmNDY2In0uZmEtYm94ZXMsLmZhLWJveGVzLWFsdCwuZmEtYm94ZXMtc3RhY2tlZHstLWZhOiJcZjQ2OCJ9LmZhLWJyaWVmY2FzZS1tZWRpY2Fsey0tZmE6IlxmNDY5In0uZmEtYnVybiwuZmEtZmlyZS1mbGFtZS1zaW1wbGV7LS1mYToiXGY0NmEifS5mYS1jYXBzdWxlc3stLWZhOiJcZjQ2YiJ9LmZhLWNsaXBib2FyZC1jaGVja3stLWZhOiJcZjQ2YyJ9LmZhLWNsaXBib2FyZC1saXN0ey0tZmE6IlxmNDZkIn0uZmEtZGlhZ25vc2VzLC5mYS1wZXJzb24tZG90cy1mcm9tLWxpbmV7LS1mYToiXGY0NzAifS5mYS1kbmF7LS1mYToiXGY0NzEifS5mYS1kb2xseSwuZmEtZG9sbHktYm94ey0tZmE6IlxmNDcyIn0uZmEtY2FydC1mbGF0YmVkLC5mYS1kb2xseS1mbGF0YmVkey0tZmE6IlxmNDc0In0uZmEtZmlsZS1tZWRpY2Fsey0tZmE6IlxmNDc3In0uZmEtZmlsZS1tZWRpY2FsLWFsdCwuZmEtZmlsZS13YXZlZm9ybXstLWZhOiJcZjQ3OCJ9LmZhLWZpcnN0LWFpZCwuZmEta2l0LW1lZGljYWx7LS1mYToiXGY0NzkifS5mYS1jaXJjbGUtaCwuZmEtaG9zcGl0YWwtc3ltYm9sey0tZmE6IlxmNDdlIn0uZmEtaWQtY2FyZC1hbHQsLmZhLWlkLWNhcmQtY2xpcHstLWZhOiJcZjQ3ZiJ9LmZhLW5vdGVzLW1lZGljYWx7LS1mYToiXGY0ODEifS5mYS1wYWxsZXR7LS1mYToiXGY0ODIifS5mYS1waWxsc3stLWZhOiJcZjQ4NCJ9LmZhLXByZXNjcmlwdGlvbi1ib3R0bGV7LS1mYToiXGY0ODUifS5mYS1wcmVzY3JpcHRpb24tYm90dGxlLWFsdCwuZmEtcHJlc2NyaXB0aW9uLWJvdHRsZS1tZWRpY2Fsey0tZmE6IlxmNDg2In0uZmEtYmVkLXB1bHNlLC5mYS1wcm9jZWR1cmVzey0tZmE6IlxmNDg3In0uZmEtc2hpcHBpbmctZmFzdCwuZmEtdHJ1Y2stZmFzdHstLWZhOiJcZjQ4YiJ9LmZhLXNtb2tpbmd7LS1mYToiXGY0OGQifS5mYS1zeXJpbmdley0tZmE6IlxmNDhlIn0uZmEtdGFibGV0c3stLWZhOiJcZjQ5MCJ9LmZhLXRoZXJtb21ldGVyey0tZmE6IlxmNDkxIn0uZmEtdmlhbHstLWZhOiJcZjQ5MiJ9LmZhLXZpYWxzey0tZmE6IlxmNDkzIn0uZmEtd2FyZWhvdXNley0tZmE6IlxmNDk0In0uZmEtd2VpZ2h0LC5mYS13ZWlnaHQtc2NhbGV7LS1mYToiXGY0OTYifS5mYS14LXJheXstLWZhOiJcZjQ5NyJ9LmZhLWJveC1vcGVuey0tZmE6IlxmNDllIn0uZmEtY29tbWVudC1kb3RzLC5mYS1jb21tZW50aW5ney0tZmE6IlxmNGFkIn0uZmEtY29tbWVudC1zbGFzaHstLWZhOiJcZjRiMyJ9LmZhLWNvdWNoey0tZmE6IlxmNGI4In0uZmEtY2lyY2xlLWRvbGxhci10by1zbG90LC5mYS1kb25hdGV7LS1mYToiXGY0YjkifS5mYS1kb3Zley0tZmE6IlxmNGJhIn0uZmEtaGFuZC1ob2xkaW5ney0tZmE6IlxmNGJkIn0uZmEtaGFuZC1ob2xkaW5nLWhlYXJ0ey0tZmE6IlxmNGJlIn0uZmEtaGFuZC1ob2xkaW5nLWRvbGxhciwuZmEtaGFuZC1ob2xkaW5nLXVzZHstLWZhOiJcZjRjMCJ9LmZhLWhhbmQtaG9sZGluZy1kcm9wbGV0LC5mYS1oYW5kLWhvbGRpbmctd2F0ZXJ7LS1mYToiXGY0YzEifS5mYS1oYW5kcy1ob2xkaW5ney0tZmE6IlxmNGMyIn0uZmEtaGFuZHMtaGVscGluZywuZmEtaGFuZHNoYWtlLWFuZ2xley0tZmE6IlxmNGM0In0uZmEtcGFyYWNodXRlLWJveHstLWZhOiJcZjRjZCJ9LmZhLXBlb3BsZS1jYXJyeSwuZmEtcGVvcGxlLWNhcnJ5LWJveHstLWZhOiJcZjRjZSJ9LmZhLXBpZ2d5LWJhbmt7LS1mYToiXGY0ZDMifS5mYS1yaWJib257LS1mYToiXGY0ZDYifS5mYS1yb3V0ZXstLWZhOiJcZjRkNyJ9LmZhLXNlZWRsaW5nLC5mYS1zcHJvdXR7LS1mYToiXGY0ZDgifS5mYS1zaWduLC5mYS1zaWduLWhhbmdpbmd7LS1mYToiXGY0ZDkifS5mYS1mYWNlLXNtaWxlLXdpbmssLmZhLXNtaWxlLXdpbmt7LS1mYToiXGY0ZGEifS5mYS10YXBley0tZmE6IlxmNGRiIn0uZmEtdHJ1Y2stbG9hZGluZywuZmEtdHJ1Y2stcmFtcC1ib3h7LS1mYToiXGY0ZGUifS5mYS10cnVjay1tb3Zpbmd7LS1mYToiXGY0ZGYifS5mYS12aWRlby1zbGFzaHstLWZhOiJcZjRlMiJ9LmZhLXdpbmUtZ2xhc3N7LS1mYToiXGY0ZTMifS5mYS11c2VyLWFzdHJvbmF1dHstLWZhOiJcZjRmYiJ9LmZhLXVzZXItY2hlY2t7LS1mYToiXGY0ZmMifS5mYS11c2VyLWNsb2Nrey0tZmE6IlxmNGZkIn0uZmEtdXNlci1jb2csLmZhLXVzZXItZ2VhcnstLWZhOiJcZjRmZSJ9LmZhLXVzZXItZWRpdCwuZmEtdXNlci1wZW57LS1mYToiXGY0ZmYifS5mYS11c2VyLWZyaWVuZHMsLmZhLXVzZXItZ3JvdXB7LS1mYToiXGY1MDAifS5mYS11c2VyLWdyYWR1YXRley0tZmE6IlxmNTAxIn0uZmEtdXNlci1sb2Nrey0tZmE6IlxmNTAyIn0uZmEtdXNlci1taW51c3stLWZhOiJcZjUwMyJ9LmZhLXVzZXItbmluamF7LS1mYToiXGY1MDQifS5mYS11c2VyLXNoaWVsZHstLWZhOiJcZjUwNSJ9LmZhLXVzZXItYWx0LXNsYXNoLC5mYS11c2VyLWxhcmdlLXNsYXNoLC5mYS11c2VyLXNsYXNoey0tZmE6IlxmNTA2In0uZmEtdXNlci10YWd7LS1mYToiXGY1MDcifS5mYS11c2VyLXRpZXstLWZhOiJcZjUwOCJ9LmZhLXVzZXJzLWNvZywuZmEtdXNlcnMtZ2VhcnstLWZhOiJcZjUwOSJ9LmZhLWJhbGFuY2Utc2NhbGUtbGVmdCwuZmEtc2NhbGUtdW5iYWxhbmNlZHstLWZhOiJcZjUxNSJ9LmZhLWJhbGFuY2Utc2NhbGUtcmlnaHQsLmZhLXNjYWxlLXVuYmFsYW5jZWQtZmxpcHstLWZhOiJcZjUxNiJ9LmZhLWJsZW5kZXJ7LS1mYToiXGY1MTcifS5mYS1ib29rLW9wZW57LS1mYToiXGY1MTgifS5mYS1icm9hZGNhc3QtdG93ZXIsLmZhLXRvd2VyLWJyb2FkY2FzdHstLWZhOiJcZjUxOSJ9LmZhLWJyb29tey0tZmE6IlxmNTFhIn0uZmEtYmxhY2tib2FyZCwuZmEtY2hhbGtib2FyZHstLWZhOiJcZjUxYiJ9LmZhLWNoYWxrYm9hcmQtdGVhY2hlciwuZmEtY2hhbGtib2FyZC11c2Vyey0tZmE6IlxmNTFjIn0uZmEtY2h1cmNoey0tZmE6IlxmNTFkIn0uZmEtY29pbnN7LS1mYToiXGY1MWUifS5mYS1jb21wYWN0LWRpc2N7LS1mYToiXGY1MWYifS5mYS1jcm93ey0tZmE6IlxmNTIwIn0uZmEtY3Jvd257LS1mYToiXGY1MjEifS5mYS1kaWNley0tZmE6IlxmNTIyIn0uZmEtZGljZS1maXZley0tZmE6IlxmNTIzIn0uZmEtZGljZS1mb3Vyey0tZmE6IlxmNTI0In0uZmEtZGljZS1vbmV7LS1mYToiXGY1MjUifS5mYS1kaWNlLXNpeHstLWZhOiJcZjUyNiJ9LmZhLWRpY2UtdGhyZWV7LS1mYToiXGY1MjcifS5mYS1kaWNlLXR3b3stLWZhOiJcZjUyOCJ9LmZhLWRpdmlkZXstLWZhOiJcZjUyOSJ9LmZhLWRvb3ItY2xvc2Vkey0tZmE6IlxmNTJhIn0uZmEtZG9vci1vcGVuey0tZmE6IlxmNTJiIn0uZmEtZmVhdGhlcnstLWZhOiJcZjUyZCJ9LmZhLWZyb2d7LS1mYToiXGY1MmUifS5mYS1nYXMtcHVtcHstLWZhOiJcZjUyZiJ9LmZhLWdsYXNzZXN7LS1mYToiXGY1MzAifS5mYS1ncmVhdGVyLXRoYW4tZXF1YWx7LS1mYToiXGY1MzIifS5mYS1oZWxpY29wdGVyey0tZmE6IlxmNTMzIn0uZmEtaW5maW5pdHl7LS1mYToiXGY1MzQifS5mYS1raXdpLWJpcmR7LS1mYToiXGY1MzUifS5mYS1sZXNzLXRoYW4tZXF1YWx7LS1mYToiXGY1MzcifS5mYS1tZW1vcnl7LS1mYToiXGY1MzgifS5mYS1taWNyb3Bob25lLWFsdC1zbGFzaCwuZmEtbWljcm9waG9uZS1saW5lcy1zbGFzaHstLWZhOiJcZjUzOSJ9LmZhLW1vbmV5LWJpbGwtd2F2ZXstLWZhOiJcZjUzYSJ9LmZhLW1vbmV5LWJpbGwtMS13YXZlLC5mYS1tb25leS1iaWxsLXdhdmUtYWx0ey0tZmE6IlxmNTNiIn0uZmEtbW9uZXktY2hlY2t7LS1mYToiXGY1M2MifS5mYS1tb25leS1jaGVjay1hbHQsLmZhLW1vbmV5LWNoZWNrLWRvbGxhcnstLWZhOiJcZjUzZCJ9LmZhLW5vdC1lcXVhbHstLWZhOiJcZjUzZSJ9LmZhLXBhbGV0dGV7LS1mYToiXGY1M2YifS5mYS1wYXJraW5nLC5mYS1zcXVhcmUtcGFya2luZ3stLWZhOiJcZjU0MCJ9LmZhLWRpYWdyYW0tcHJvamVjdCwuZmEtcHJvamVjdC1kaWFncmFtey0tZmE6IlxmNTQyIn0uZmEtcmVjZWlwdHstLWZhOiJcZjU0MyJ9LmZhLXJvYm90ey0tZmE6IlxmNTQ0In0uZmEtcnVsZXJ7LS1mYToiXGY1NDUifS5mYS1ydWxlci1jb21iaW5lZHstLWZhOiJcZjU0NiJ9LmZhLXJ1bGVyLWhvcml6b250YWx7LS1mYToiXGY1NDcifS5mYS1ydWxlci12ZXJ0aWNhbHstLWZhOiJcZjU0OCJ9LmZhLXNjaG9vbHstLWZhOiJcZjU0OSJ9LmZhLXNjcmV3ZHJpdmVyey0tZmE6IlxmNTRhIn0uZmEtc2hvZS1wcmludHN7LS1mYToiXGY1NGIifS5mYS1za3VsbHstLWZhOiJcZjU0YyJ9LmZhLWJhbi1zbW9raW5nLC5mYS1zbW9raW5nLWJhbnstLWZhOiJcZjU0ZCJ9LmZhLXN0b3Jley0tZmE6IlxmNTRlIn0uZmEtc2hvcCwuZmEtc3RvcmUtYWx0ey0tZmE6IlxmNTRmIn0uZmEtYmFycy1zdGFnZ2VyZWQsLmZhLXJlb3JkZXIsLmZhLXN0cmVhbXstLWZhOiJcZjU1MCJ9LmZhLXN0cm9vcHdhZmVsey0tZmE6IlxmNTUxIn0uZmEtdG9vbGJveHstLWZhOiJcZjU1MiJ9LmZhLXNoaXJ0LC5mYS10LXNoaXJ0LC5mYS10c2hpcnR7LS1mYToiXGY1NTMifS5mYS1wZXJzb24td2Fsa2luZywuZmEtd2Fsa2luZ3stLWZhOiJcZjU1NCJ9LmZhLXdhbGxldHstLWZhOiJcZjU1NSJ9LmZhLWFuZ3J5LC5mYS1mYWNlLWFuZ3J5ey0tZmE6IlxmNTU2In0uZmEtYXJjaHdheXstLWZhOiJcZjU1NyJ9LmZhLWF0bGFzLC5mYS1ib29rLWF0bGFzey0tZmE6IlxmNTU4In0uZmEtYXdhcmR7LS1mYToiXGY1NTkifS5mYS1iYWNrc3BhY2UsLmZhLWRlbGV0ZS1sZWZ0ey0tZmE6IlxmNTVhIn0uZmEtYmV6aWVyLWN1cnZley0tZmE6IlxmNTViIn0uZmEtYm9uZ3stLWZhOiJcZjU1YyJ9LmZhLWJydXNoey0tZmE6IlxmNTVkIn0uZmEtYnVzLWFsdCwuZmEtYnVzLXNpbXBsZXstLWZhOiJcZjU1ZSJ9LmZhLWNhbm5hYmlzey0tZmE6IlxmNTVmIn0uZmEtY2hlY2stZG91Ymxley0tZmE6IlxmNTYwIn0uZmEtY29ja3RhaWwsLmZhLW1hcnRpbmktZ2xhc3MtY2l0cnVzey0tZmE6IlxmNTYxIn0uZmEtYmVsbC1jb25jaWVyZ2UsLmZhLWNvbmNpZXJnZS1iZWxsey0tZmE6IlxmNTYyIn0uZmEtY29va2lley0tZmE6IlxmNTYzIn0uZmEtY29va2llLWJpdGV7LS1mYToiXGY1NjQifS5mYS1jcm9wLWFsdCwuZmEtY3JvcC1zaW1wbGV7LS1mYToiXGY1NjUifS5mYS1kaWdpdGFsLXRhY2hvZ3JhcGgsLmZhLXRhY2hvZ3JhcGgtZGlnaXRhbHstLWZhOiJcZjU2NiJ9LmZhLWRpenp5LC5mYS1mYWNlLWRpenp5ey0tZmE6IlxmNTY3In0uZmEtY29tcGFzcy1kcmFmdGluZywuZmEtZHJhZnRpbmctY29tcGFzc3stLWZhOiJcZjU2OCJ9LmZhLWRydW17LS1mYToiXGY1NjkifS5mYS1kcnVtLXN0ZWVscGFuey0tZmE6IlxmNTZhIn0uZmEtZmVhdGhlci1hbHQsLmZhLWZlYXRoZXItcG9pbnRlZHstLWZhOiJcZjU2YiJ9LmZhLWZpbGUtY29udHJhY3R7LS1mYToiXGY1NmMifS5mYS1maWxlLWFycm93LWRvd24sLmZhLWZpbGUtZG93bmxvYWR7LS1mYToiXGY1NmQifS5mYS1hcnJvdy1yaWdodC1mcm9tLWZpbGUsLmZhLWZpbGUtZXhwb3J0ey0tZmE6IlxmNTZlIn0uZmEtYXJyb3ctcmlnaHQtdG8tZmlsZSwuZmEtZmlsZS1pbXBvcnR7LS1mYToiXGY1NmYifS5mYS1maWxlLWludm9pY2V7LS1mYToiXGY1NzAifS5mYS1maWxlLWludm9pY2UtZG9sbGFyey0tZmE6IlxmNTcxIn0uZmEtZmlsZS1wcmVzY3JpcHRpb257LS1mYToiXGY1NzIifS5mYS1maWxlLXNpZ25hdHVyZXstLWZhOiJcZjU3MyJ9LmZhLWZpbGUtYXJyb3ctdXAsLmZhLWZpbGUtdXBsb2Fkey0tZmE6IlxmNTc0In0uZmEtZmlsbHstLWZhOiJcZjU3NSJ9LmZhLWZpbGwtZHJpcHstLWZhOiJcZjU3NiJ9LmZhLWZpbmdlcnByaW50ey0tZmE6IlxmNTc3In0uZmEtZmlzaHstLWZhOiJcZjU3OCJ9LmZhLWZhY2UtZmx1c2hlZCwuZmEtZmx1c2hlZHstLWZhOiJcZjU3OSJ9LmZhLWZhY2UtZnJvd24tb3BlbiwuZmEtZnJvd24tb3BlbnstLWZhOiJcZjU3YSJ9LmZhLWdsYXNzLW1hcnRpbmktYWx0LC5mYS1tYXJ0aW5pLWdsYXNzey0tZmE6IlxmNTdiIn0uZmEtZWFydGgtYWZyaWNhLC5mYS1nbG9iZS1hZnJpY2F7LS1mYToiXGY1N2MifS5mYS1lYXJ0aCwuZmEtZWFydGgtYW1lcmljYSwuZmEtZWFydGgtYW1lcmljYXMsLmZhLWdsb2JlLWFtZXJpY2Fzey0tZmE6IlxmNTdkIn0uZmEtZWFydGgtYXNpYSwuZmEtZ2xvYmUtYXNpYXstLWZhOiJcZjU3ZSJ9LmZhLWZhY2UtZ3JpbWFjZSwuZmEtZ3JpbWFjZXstLWZhOiJcZjU3ZiJ9LmZhLWZhY2UtZ3JpbiwuZmEtZ3JpbnstLWZhOiJcZjU4MCJ9LmZhLWZhY2UtZ3Jpbi13aWRlLC5mYS1ncmluLWFsdHstLWZhOiJcZjU4MSJ9LmZhLWZhY2UtZ3Jpbi1iZWFtLC5mYS1ncmluLWJlYW17LS1mYToiXGY1ODIifS5mYS1mYWNlLWdyaW4tYmVhbS1zd2VhdCwuZmEtZ3Jpbi1iZWFtLXN3ZWF0ey0tZmE6IlxmNTgzIn0uZmEtZmFjZS1ncmluLWhlYXJ0cywuZmEtZ3Jpbi1oZWFydHN7LS1mYToiXGY1ODQifS5mYS1mYWNlLWdyaW4tc3F1aW50LC5mYS1ncmluLXNxdWludHstLWZhOiJcZjU4NSJ9LmZhLWZhY2UtZ3Jpbi1zcXVpbnQtdGVhcnMsLmZhLWdyaW4tc3F1aW50LXRlYXJzey0tZmE6IlxmNTg2In0uZmEtZmFjZS1ncmluLXN0YXJzLC5mYS1ncmluLXN0YXJzey0tZmE6IlxmNTg3In0uZmEtZmFjZS1ncmluLXRlYXJzLC5mYS1ncmluLXRlYXJzey0tZmE6IlxmNTg4In0uZmEtZmFjZS1ncmluLXRvbmd1ZSwuZmEtZ3Jpbi10b25ndWV7LS1mYToiXGY1ODkifS5mYS1mYWNlLWdyaW4tdG9uZ3VlLXNxdWludCwuZmEtZ3Jpbi10b25ndWUtc3F1aW50ey0tZmE6IlxmNThhIn0uZmEtZmFjZS1ncmluLXRvbmd1ZS13aW5rLC5mYS1ncmluLXRvbmd1ZS13aW5rey0tZmE6IlxmNThiIn0uZmEtZmFjZS1ncmluLXdpbmssLmZhLWdyaW4td2lua3stLWZhOiJcZjU4YyJ9LmZhLWdyaWQtaG9yaXpvbnRhbCwuZmEtZ3JpcCwuZmEtZ3JpcC1ob3Jpem9udGFsey0tZmE6IlxmNThkIn0uZmEtZ3JpZC12ZXJ0aWNhbCwuZmEtZ3JpcC12ZXJ0aWNhbHstLWZhOiJcZjU4ZSJ9LmZhLWhlYWRzZXR7LS1mYToiXGY1OTAifS5mYS1oaWdobGlnaHRlcnstLWZhOiJcZjU5MSJ9LmZhLWhvdC10dWIsLmZhLWhvdC10dWItcGVyc29uey0tZmE6IlxmNTkzIn0uZmEtaG90ZWx7LS1mYToiXGY1OTQifS5mYS1qb2ludHstLWZhOiJcZjU5NSJ9LmZhLWZhY2Uta2lzcywuZmEta2lzc3stLWZhOiJcZjU5NiJ9LmZhLWZhY2Uta2lzcy1iZWFtLC5mYS1raXNzLWJlYW17LS1mYToiXGY1OTcifS5mYS1mYWNlLWtpc3Mtd2luay1oZWFydCwuZmEta2lzcy13aW5rLWhlYXJ0ey0tZmE6IlxmNTk4In0uZmEtZmFjZS1sYXVnaCwuZmEtbGF1Z2h7LS1mYToiXGY1OTkifS5mYS1mYWNlLWxhdWdoLWJlYW0sLmZhLWxhdWdoLWJlYW17LS1mYToiXGY1OWEifS5mYS1mYWNlLWxhdWdoLXNxdWludCwuZmEtbGF1Z2gtc3F1aW50ey0tZmE6IlxmNTliIn0uZmEtZmFjZS1sYXVnaC13aW5rLC5mYS1sYXVnaC13aW5rey0tZmE6IlxmNTljIn0uZmEtY2FydC1mbGF0YmVkLXN1aXRjYXNlLC5mYS1sdWdnYWdlLWNhcnR7LS1mYToiXGY1OWQifS5mYS1tYXAtbG9jYXRpb24sLmZhLW1hcC1tYXJrZWR7LS1mYToiXGY1OWYifS5mYS1tYXAtbG9jYXRpb24tZG90LC5mYS1tYXAtbWFya2VkLWFsdHstLWZhOiJcZjVhMCJ9LmZhLW1hcmtlcnstLWZhOiJcZjVhMSJ9LmZhLW1lZGFsey0tZmE6IlxmNWEyIn0uZmEtZmFjZS1tZWgtYmxhbmssLmZhLW1laC1ibGFua3stLWZhOiJcZjVhNCJ9LmZhLWZhY2Utcm9sbGluZy1leWVzLC5mYS1tZWgtcm9sbGluZy1leWVzey0tZmE6IlxmNWE1In0uZmEtbW9udW1lbnR7LS1mYToiXGY1YTYifS5mYS1tb3J0YXItcGVzdGxley0tZmE6IlxmNWE3In0uZmEtcGFpbnQtcm9sbGVyey0tZmE6IlxmNWFhIn0uZmEtcGFzc3BvcnR7LS1mYToiXGY1YWIifS5mYS1wZW4tZmFuY3l7LS1mYToiXGY1YWMifS5mYS1wZW4tbmliey0tZmE6IlxmNWFkIn0uZmEtcGVuLXJ1bGVyLC5mYS1wZW5jaWwtcnVsZXJ7LS1mYToiXGY1YWUifS5mYS1wbGFuZS1hcnJpdmFsey0tZmE6IlxmNWFmIn0uZmEtcGxhbmUtZGVwYXJ0dXJley0tZmE6IlxmNWIwIn0uZmEtcHJlc2NyaXB0aW9uey0tZmE6IlxmNWIxIn0uZmEtZmFjZS1zYWQtY3J5LC5mYS1zYWQtY3J5ey0tZmE6IlxmNWIzIn0uZmEtZmFjZS1zYWQtdGVhciwuZmEtc2FkLXRlYXJ7LS1mYToiXGY1YjQifS5mYS1zaHV0dGxlLXZhbiwuZmEtdmFuLXNodXR0bGV7LS1mYToiXGY1YjYifS5mYS1zaWduYXR1cmV7LS1mYToiXGY1YjcifS5mYS1mYWNlLXNtaWxlLWJlYW0sLmZhLXNtaWxlLWJlYW17LS1mYToiXGY1YjgifS5mYS1zb2xhci1wYW5lbHstLWZhOiJcZjViYSJ9LmZhLXNwYXstLWZhOiJcZjViYiJ9LmZhLXNwbG90Y2h7LS1mYToiXGY1YmMifS5mYS1zcHJheS1jYW57LS1mYToiXGY1YmQifS5mYS1zdGFtcHstLWZhOiJcZjViZiJ9LmZhLXN0YXItaGFsZi1hbHQsLmZhLXN0YXItaGFsZi1zdHJva2V7LS1mYToiXGY1YzAifS5mYS1zdWl0Y2FzZS1yb2xsaW5ney0tZmE6IlxmNWMxIn0uZmEtZmFjZS1zdXJwcmlzZSwuZmEtc3VycHJpc2V7LS1mYToiXGY1YzIifS5mYS1zd2F0Y2hib29rey0tZmE6IlxmNWMzIn0uZmEtcGVyc29uLXN3aW1taW5nLC5mYS1zd2ltbWVyey0tZmE6IlxmNWM0In0uZmEtbGFkZGVyLXdhdGVyLC5mYS1zd2ltbWluZy1wb29sLC5mYS13YXRlci1sYWRkZXJ7LS1mYToiXGY1YzUifS5mYS1kcm9wbGV0LXNsYXNoLC5mYS10aW50LXNsYXNoey0tZmE6IlxmNWM3In0uZmEtZmFjZS10aXJlZCwuZmEtdGlyZWR7LS1mYToiXGY1YzgifS5mYS10b290aHstLWZhOiJcZjVjOSJ9LmZhLXVtYnJlbGxhLWJlYWNoey0tZmE6IlxmNWNhIn0uZmEtd2VpZ2h0LWhhbmdpbmd7LS1mYToiXGY1Y2QifS5mYS13aW5lLWdsYXNzLWFsdCwuZmEtd2luZS1nbGFzcy1lbXB0eXstLWZhOiJcZjVjZSJ9LmZhLWFpci1mcmVzaGVuZXIsLmZhLXNwcmF5LWNhbi1zcGFya2xlc3stLWZhOiJcZjVkMCJ9LmZhLWFwcGxlLWFsdCwuZmEtYXBwbGUtd2hvbGV7LS1mYToiXGY1ZDEifS5mYS1hdG9tey0tZmE6IlxmNWQyIn0uZmEtYm9uZXstLWZhOiJcZjVkNyJ9LmZhLWJvb2stb3Blbi1yZWFkZXIsLmZhLWJvb2stcmVhZGVyey0tZmE6IlxmNWRhIn0uZmEtYnJhaW57LS1mYToiXGY1ZGMifS5mYS1jYXItYWx0LC5mYS1jYXItcmVhcnstLWZhOiJcZjVkZSJ9LmZhLWJhdHRlcnktY2FyLC5mYS1jYXItYmF0dGVyeXstLWZhOiJcZjVkZiJ9LmZhLWNhci1idXJzdCwuZmEtY2FyLWNyYXNoey0tZmE6IlxmNWUxIn0uZmEtY2FyLXNpZGV7LS1mYToiXGY1ZTQifS5mYS1jaGFyZ2luZy1zdGF0aW9uey0tZmE6IlxmNWU3In0uZmEtZGlhbW9uZC10dXJuLXJpZ2h0LC5mYS1kaXJlY3Rpb25zey0tZmE6IlxmNWViIn0uZmEtZHJhdy1wb2x5Z29uLC5mYS12ZWN0b3ItcG9seWdvbnstLWZhOiJcZjVlZSJ9LmZhLWxhcHRvcC1jb2Rley0tZmE6IlxmNWZjIn0uZmEtbGF5ZXItZ3JvdXB7LS1mYToiXGY1ZmQifS5mYS1sb2NhdGlvbiwuZmEtbG9jYXRpb24tY3Jvc3NoYWlyc3stLWZhOiJcZjYwMSJ9LmZhLWx1bmdzey0tZmE6IlxmNjA0In0uZmEtbWljcm9zY29wZXstLWZhOiJcZjYxMCJ9LmZhLW9pbC1jYW57LS1mYToiXGY2MTMifS5mYS1wb29wey0tZmE6IlxmNjE5In0uZmEtc2hhcGVzLC5mYS10cmlhbmdsZS1jaXJjbGUtc3F1YXJley0tZmE6IlxmNjFmIn0uZmEtc3Rhci1vZi1saWZley0tZmE6IlxmNjIxIn0uZmEtZGFzaGJvYXJkLC5mYS1nYXVnZSwuZmEtZ2F1Z2UtbWVkLC5mYS10YWNob21ldGVyLWFsdC1hdmVyYWdley0tZmE6IlxmNjI0In0uZmEtZ2F1Z2UtaGlnaCwuZmEtdGFjaG9tZXRlci1hbHQsLmZhLXRhY2hvbWV0ZXItYWx0LWZhc3R7LS1mYToiXGY2MjUifS5mYS1nYXVnZS1zaW1wbGUsLmZhLWdhdWdlLXNpbXBsZS1tZWQsLmZhLXRhY2hvbWV0ZXItYXZlcmFnZXstLWZhOiJcZjYyOSJ9LmZhLWdhdWdlLXNpbXBsZS1oaWdoLC5mYS10YWNob21ldGVyLC5mYS10YWNob21ldGVyLWZhc3R7LS1mYToiXGY2MmEifS5mYS10ZWV0aHstLWZhOiJcZjYyZSJ9LmZhLXRlZXRoLW9wZW57LS1mYToiXGY2MmYifS5mYS1tYXNrcy10aGVhdGVyLC5mYS10aGVhdGVyLW1hc2tzey0tZmE6IlxmNjMwIn0uZmEtdHJhZmZpYy1saWdodHstLWZhOiJcZjYzNyJ9LmZhLXRydWNrLW1vbnN0ZXJ7LS1mYToiXGY2M2IifS5mYS10cnVjay1waWNrdXB7LS1mYToiXGY2M2MifS5mYS1hZCwuZmEtcmVjdGFuZ2xlLWFkey0tZmE6IlxmNjQxIn0uZmEtYW5raHstLWZhOiJcZjY0NCJ9LmZhLWJpYmxlLC5mYS1ib29rLWJpYmxley0tZmE6IlxmNjQ3In0uZmEtYnJpZWZjYXNlLWNsb2NrLC5mYS1idXNpbmVzcy10aW1ley0tZmE6IlxmNjRhIn0uZmEtY2l0eXstLWZhOiJcZjY0ZiJ9LmZhLWNvbW1lbnQtZG9sbGFyey0tZmE6IlxmNjUxIn0uZmEtY29tbWVudHMtZG9sbGFyey0tZmE6IlxmNjUzIn0uZmEtY3Jvc3N7LS1mYToiXGY2NTQifS5mYS1kaGFybWFjaGFrcmF7LS1mYToiXGY2NTUifS5mYS1lbnZlbG9wZS1vcGVuLXRleHR7LS1mYToiXGY2NTgifS5mYS1mb2xkZXItbWludXN7LS1mYToiXGY2NWQifS5mYS1mb2xkZXItcGx1c3stLWZhOiJcZjY1ZSJ9LmZhLWZpbHRlci1jaXJjbGUtZG9sbGFyLC5mYS1mdW5uZWwtZG9sbGFyey0tZmE6IlxmNjYyIn0uZmEtZ29wdXJhbXstLWZhOiJcZjY2NCJ9LmZhLWhhbXNhey0tZmE6IlxmNjY1In0uZmEtYmFoYWksLmZhLWhheWthbHstLWZhOiJcZjY2NiJ9LmZhLWplZGl7LS1mYToiXGY2NjkifS5mYS1ib29rLWpvdXJuYWwtd2hpbGxzLC5mYS1qb3VybmFsLXdoaWxsc3stLWZhOiJcZjY2YSJ9LmZhLWthYWJhey0tZmE6IlxmNjZiIn0uZmEta2hhbmRhey0tZmE6IlxmNjZkIn0uZmEtbGFuZG1hcmt7LS1mYToiXGY2NmYifS5mYS1lbnZlbG9wZXMtYnVsaywuZmEtbWFpbC1idWxrey0tZmE6IlxmNjc0In0uZmEtbWVub3JhaHstLWZhOiJcZjY3NiJ9LmZhLW1vc3F1ZXstLWZhOiJcZjY3OCJ9LmZhLW9tey0tZmE6IlxmNjc5In0uZmEtcGFzdGFmYXJpYW5pc20sLmZhLXNwYWdoZXR0aS1tb25zdGVyLWZseWluZ3stLWZhOiJcZjY3YiJ9LmZhLXBlYWNley0tZmE6IlxmNjdjIn0uZmEtcGxhY2Utb2Ytd29yc2hpcHstLWZhOiJcZjY3ZiJ9LmZhLXBvbGwsLmZhLXNxdWFyZS1wb2xsLXZlcnRpY2Fsey0tZmE6IlxmNjgxIn0uZmEtcG9sbC1oLC5mYS1zcXVhcmUtcG9sbC1ob3Jpem9udGFsey0tZmE6IlxmNjgyIn0uZmEtcGVyc29uLXByYXlpbmcsLmZhLXByYXl7LS1mYToiXGY2ODMifS5mYS1oYW5kcy1wcmF5aW5nLC5mYS1wcmF5aW5nLWhhbmRzey0tZmE6IlxmNjg0In0uZmEtYm9vay1xdXJhbiwuZmEtcXVyYW57LS1mYToiXGY2ODcifS5mYS1tYWduaWZ5aW5nLWdsYXNzLWRvbGxhciwuZmEtc2VhcmNoLWRvbGxhcnstLWZhOiJcZjY4OCJ9LmZhLW1hZ25pZnlpbmctZ2xhc3MtbG9jYXRpb24sLmZhLXNlYXJjaC1sb2NhdGlvbnstLWZhOiJcZjY4OSJ9LmZhLXNvY2tzey0tZmE6IlxmNjk2In0uZmEtc3F1YXJlLXJvb3QtYWx0LC5mYS1zcXVhcmUtcm9vdC12YXJpYWJsZXstLWZhOiJcZjY5OCJ9LmZhLXN0YXItYW5kLWNyZXNjZW50ey0tZmE6IlxmNjk5In0uZmEtc3Rhci1vZi1kYXZpZHstLWZhOiJcZjY5YSJ9LmZhLXN5bmFnb2d1ZXstLWZhOiJcZjY5YiJ9LmZhLXNjcm9sbC10b3JhaCwuZmEtdG9yYWh7LS1mYToiXGY2YTAifS5mYS10b3JpaS1nYXRley0tZmE6IlxmNmExIn0uZmEtdmloYXJhey0tZmE6IlxmNmE3In0uZmEtdm9sdW1lLW11dGUsLmZhLXZvbHVtZS10aW1lcywuZmEtdm9sdW1lLXhtYXJrey0tZmE6IlxmNmE5In0uZmEteWluLXlhbmd7LS1mYToiXGY2YWQifS5mYS1ibGVuZGVyLXBob25ley0tZmE6IlxmNmI2In0uZmEtYm9vay1kZWFkLC5mYS1ib29rLXNrdWxsey0tZmE6IlxmNmI3In0uZmEtY2FtcGdyb3VuZHstLWZhOiJcZjZiYiJ9LmZhLWNhdHstLWZhOiJcZjZiZSJ9LmZhLWNoYWlyey0tZmE6IlxmNmMwIn0uZmEtY2xvdWQtbW9vbnstLWZhOiJcZjZjMyJ9LmZhLWNsb3VkLXN1bnstLWZhOiJcZjZjNCJ9LmZhLWNvd3stLWZhOiJcZjZjOCJ9LmZhLWRpY2UtZDIwey0tZmE6IlxmNmNmIn0uZmEtZGljZS1kNnstLWZhOiJcZjZkMSJ9LmZhLWRvZ3stLWZhOiJcZjZkMyJ9LmZhLWRyYWdvbnstLWZhOiJcZjZkNSJ9LmZhLWRydW1zdGljay1iaXRley0tZmE6IlxmNmQ3In0uZmEtZHVuZ2VvbnstLWZhOiJcZjZkOSJ9LmZhLWZpbGUtY3N2ey0tZmE6IlxmNmRkIn0uZmEtZmlzdC1yYWlzZWQsLmZhLWhhbmQtZmlzdHstLWZhOiJcZjZkZSJ9LmZhLWdob3N0ey0tZmE6IlxmNmUyIn0uZmEtaGFtbWVyey0tZmE6IlxmNmUzIn0uZmEtaGFudWtpYWh7LS1mYToiXGY2ZTYifS5mYS1oYXQtd2l6YXJkey0tZmE6IlxmNmU4In0uZmEtaGlraW5nLC5mYS1wZXJzb24taGlraW5ney0tZmE6IlxmNmVjIn0uZmEtaGlwcG97LS1mYToiXGY2ZWQifS5mYS1ob3JzZXstLWZhOiJcZjZmMCJ9LmZhLWhvdXNlLWNoaW1uZXktY3JhY2ssLmZhLWhvdXNlLWRhbWFnZXstLWZhOiJcZjZmMSJ9LmZhLWhyeXZuaWEsLmZhLWhyeXZuaWEtc2lnbnstLWZhOiJcZjZmMiJ9LmZhLW1hc2t7LS1mYToiXGY2ZmEifS5mYS1tb3VudGFpbnstLWZhOiJcZjZmYyJ9LmZhLW5ldHdvcmstd2lyZWR7LS1mYToiXGY2ZmYifS5mYS1vdHRlcnstLWZhOiJcZjcwMCJ9LmZhLXJpbmd7LS1mYToiXGY3MGIifS5mYS1wZXJzb24tcnVubmluZywuZmEtcnVubmluZ3stLWZhOiJcZjcwYyJ9LmZhLXNjcm9sbHstLWZhOiJcZjcwZSJ9LmZhLXNrdWxsLWNyb3NzYm9uZXN7LS1mYToiXGY3MTQifS5mYS1zbGFzaHstLWZhOiJcZjcxNSJ9LmZhLXNwaWRlcnstLWZhOiJcZjcxNyJ9LmZhLXRvaWxldC1wYXBlciwuZmEtdG9pbGV0LXBhcGVyLWFsdCwuZmEtdG9pbGV0LXBhcGVyLWJsYW5rey0tZmE6IlxmNzFlIn0uZmEtdHJhY3RvcnstLWZhOiJcZjcyMiJ9LmZhLXVzZXItaW5qdXJlZHstLWZhOiJcZjcyOCJ9LmZhLXZyLWNhcmRib2FyZHstLWZhOiJcZjcyOSJ9LmZhLXdhbmQtc3BhcmtsZXN7LS1mYToiXGY3MmIifS5mYS13aW5key0tZmE6IlxmNzJlIn0uZmEtd2luZS1ib3R0bGV7LS1mYToiXGY3MmYifS5mYS1jbG91ZC1tZWF0YmFsbHstLWZhOiJcZjczYiJ9LmZhLWNsb3VkLW1vb24tcmFpbnstLWZhOiJcZjczYyJ9LmZhLWNsb3VkLXJhaW57LS1mYToiXGY3M2QifS5mYS1jbG91ZC1zaG93ZXJzLWhlYXZ5ey0tZmE6IlxmNzQwIn0uZmEtY2xvdWQtc3VuLXJhaW57LS1mYToiXGY3NDMifS5mYS1kZW1vY3JhdHstLWZhOiJcZjc0NyJ9LmZhLWZsYWctdXNhey0tZmE6IlxmNzRkIn0uZmEtaHVycmljYW5ley0tZmE6IlxmNzUxIn0uZmEtbGFuZG1hcmstYWx0LC5mYS1sYW5kbWFyay1kb21ley0tZmE6IlxmNzUyIn0uZmEtbWV0ZW9yey0tZmE6IlxmNzUzIn0uZmEtcGVyc29uLWJvb3Roey0tZmE6IlxmNzU2In0uZmEtcG9vLWJvbHQsLmZhLXBvby1zdG9ybXstLWZhOiJcZjc1YSJ9LmZhLXJhaW5ib3d7LS1mYToiXGY3NWIifS5mYS1yZXB1YmxpY2Fuey0tZmE6IlxmNzVlIn0uZmEtc21vZ3stLWZhOiJcZjc1ZiJ9LmZhLXRlbXBlcmF0dXJlLWhpZ2h7LS1mYToiXGY3NjkifS5mYS10ZW1wZXJhdHVyZS1sb3d7LS1mYToiXGY3NmIifS5mYS1jbG91ZC1ib2x0LC5mYS10aHVuZGVyc3Rvcm17LS1mYToiXGY3NmMifS5mYS10b3JuYWRvey0tZmE6IlxmNzZmIn0uZmEtdm9sY2Fub3stLWZhOiJcZjc3MCJ9LmZhLWNoZWNrLXRvLXNsb3QsLmZhLXZvdGUteWVhey0tZmE6IlxmNzcyIn0uZmEtd2F0ZXJ7LS1mYToiXGY3NzMifS5mYS1iYWJ5ey0tZmE6IlxmNzdjIn0uZmEtYmFieS1jYXJyaWFnZSwuZmEtY2FycmlhZ2UtYmFieXstLWZhOiJcZjc3ZCJ9LmZhLWJpb2hhemFyZHstLWZhOiJcZjc4MCJ9LmZhLWJsb2d7LS1mYToiXGY3ODEifS5mYS1jYWxlbmRhci1kYXl7LS1mYToiXGY3ODMifS5mYS1jYWxlbmRhci13ZWVrey0tZmE6IlxmNzg0In0uZmEtY2FuZHktY2FuZXstLWZhOiJcZjc4NiJ9LmZhLWNhcnJvdHstLWZhOiJcZjc4NyJ9LmZhLWNhc2gtcmVnaXN0ZXJ7LS1mYToiXGY3ODgifS5mYS1jb21wcmVzcy1hcnJvd3MtYWx0LC5mYS1taW5pbWl6ZXstLWZhOiJcZjc4YyJ9LmZhLWR1bXBzdGVyey0tZmE6IlxmNzkzIn0uZmEtZHVtcHN0ZXItZmlyZXstLWZhOiJcZjc5NCJ9LmZhLWV0aGVybmV0ey0tZmE6IlxmNzk2In0uZmEtZ2lmdHN7LS1mYToiXGY3OWMifS5mYS1jaGFtcGFnbmUtZ2xhc3NlcywuZmEtZ2xhc3MtY2hlZXJzey0tZmE6IlxmNzlmIn0uZmEtZ2xhc3Mtd2hpc2tleSwuZmEtd2hpc2tleS1nbGFzc3stLWZhOiJcZjdhMCJ9LmZhLWVhcnRoLWV1cm9wZSwuZmEtZ2xvYmUtZXVyb3Bley0tZmE6IlxmN2EyIn0uZmEtZ3JpcC1saW5lc3stLWZhOiJcZjdhNCJ9LmZhLWdyaXAtbGluZXMtdmVydGljYWx7LS1mYToiXGY3YTUifS5mYS1ndWl0YXJ7LS1mYToiXGY3YTYifS5mYS1oZWFydC1icm9rZW4sLmZhLWhlYXJ0LWNyYWNrey0tZmE6IlxmN2E5In0uZmEtaG9sbHktYmVycnl7LS1mYToiXGY3YWEifS5mYS1ob3JzZS1oZWFkey0tZmE6IlxmN2FiIn0uZmEtaWNpY2xlc3stLWZhOiJcZjdhZCJ9LmZhLWlnbG9vey0tZmE6IlxmN2FlIn0uZmEtbWl0dGVuey0tZmE6IlxmN2I1In0uZmEtbXVnLWhvdHstLWZhOiJcZjdiNiJ9LmZhLXJhZGlhdGlvbnstLWZhOiJcZjdiOSJ9LmZhLWNpcmNsZS1yYWRpYXRpb24sLmZhLXJhZGlhdGlvbi1hbHR7LS1mYToiXGY3YmEifS5mYS1yZXN0cm9vbXstLWZhOiJcZjdiZCJ9LmZhLXNhdGVsbGl0ZXstLWZhOiJcZjdiZiJ9LmZhLXNhdGVsbGl0ZS1kaXNoey0tZmE6IlxmN2MwIn0uZmEtc2QtY2FyZHstLWZhOiJcZjdjMiJ9LmZhLXNpbS1jYXJkey0tZmE6IlxmN2M0In0uZmEtcGVyc29uLXNrYXRpbmcsLmZhLXNrYXRpbmd7LS1mYToiXGY3YzUifS5mYS1wZXJzb24tc2tpaW5nLC5mYS1za2lpbmd7LS1mYToiXGY3YzkifS5mYS1wZXJzb24tc2tpaW5nLW5vcmRpYywuZmEtc2tpaW5nLW5vcmRpY3stLWZhOiJcZjdjYSJ9LmZhLXNsZWlnaHstLWZhOiJcZjdjYyJ9LmZhLWNvbW1lbnQtc21zLC5mYS1zbXN7LS1mYToiXGY3Y2QifS5mYS1wZXJzb24tc25vd2JvYXJkaW5nLC5mYS1zbm93Ym9hcmRpbmd7LS1mYToiXGY3Y2UifS5mYS1zbm93bWFuey0tZmE6IlxmN2QwIn0uZmEtc25vd3Bsb3d7LS1mYToiXGY3ZDIifS5mYS10ZW5nZSwuZmEtdGVuZ2Utc2lnbnstLWZhOiJcZjdkNyJ9LmZhLXRvaWxldHstLWZhOiJcZjdkOCJ9LmZhLXNjcmV3ZHJpdmVyLXdyZW5jaCwuZmEtdG9vbHN7LS1mYToiXGY3ZDkifS5mYS1jYWJsZS1jYXIsLmZhLXRyYW17LS1mYToiXGY3ZGEifS5mYS1maXJlLWFsdCwuZmEtZmlyZS1mbGFtZS1jdXJ2ZWR7LS1mYToiXGY3ZTQifS5mYS1iYWNvbnstLWZhOiJcZjdlNSJ9LmZhLWJvb2stbWVkaWNhbHstLWZhOiJcZjdlNiJ9LmZhLWJyZWFkLXNsaWNley0tZmE6IlxmN2VjIn0uZmEtY2hlZXNley0tZmE6IlxmN2VmIn0uZmEtY2xpbmljLW1lZGljYWwsLmZhLWhvdXNlLWNoaW1uZXktbWVkaWNhbHstLWZhOiJcZjdmMiJ9LmZhLWNsaXBib2FyZC11c2Vyey0tZmE6IlxmN2YzIn0uZmEtY29tbWVudC1tZWRpY2Fsey0tZmE6IlxmN2Y1In0uZmEtY3J1dGNoey0tZmE6IlxmN2Y3In0uZmEtZGlzZWFzZXstLWZhOiJcZjdmYSJ9LmZhLWVnZ3stLWZhOiJcZjdmYiJ9LmZhLWZvbGRlci10cmVley0tZmE6IlxmODAyIn0uZmEtYnVyZ2VyLC5mYS1oYW1idXJnZXJ7LS1mYToiXGY4MDUifS5mYS1oYW5kLW1pZGRsZS1maW5nZXJ7LS1mYToiXGY4MDYifS5mYS1oYXJkLWhhdCwuZmEtaGF0LWhhcmQsLmZhLWhlbG1ldC1zYWZldHl7LS1mYToiXGY4MDcifS5mYS1ob3NwaXRhbC11c2Vyey0tZmE6IlxmODBkIn0uZmEtaG90ZG9ney0tZmE6IlxmODBmIn0uZmEtaWNlLWNyZWFtey0tZmE6IlxmODEwIn0uZmEtbGFwdG9wLW1lZGljYWx7LS1mYToiXGY4MTIifS5mYS1wYWdlcnstLWZhOiJcZjgxNSJ9LmZhLXBlcHBlci1ob3R7LS1mYToiXGY4MTYifS5mYS1waXp6YS1zbGljZXstLWZhOiJcZjgxOCJ9LmZhLXNhY2stZG9sbGFyey0tZmE6IlxmODFkIn0uZmEtYm9vay10YW5ha2gsLmZhLXRhbmFraHstLWZhOiJcZjgyNyJ9LmZhLWJhcnMtcHJvZ3Jlc3MsLmZhLXRhc2tzLWFsdHstLWZhOiJcZjgyOCJ9LmZhLXRyYXNoLWFycm93LXVwLC5mYS10cmFzaC1yZXN0b3Jley0tZmE6IlxmODI5In0uZmEtdHJhc2gtY2FuLWFycm93LXVwLC5mYS10cmFzaC1yZXN0b3JlLWFsdHstLWZhOiJcZjgyYSJ9LmZhLXVzZXItbnVyc2V7LS1mYToiXGY4MmYifS5mYS13YXZlLXNxdWFyZXstLWZhOiJcZjgzZSJ9LmZhLWJpa2luZywuZmEtcGVyc29uLWJpa2luZ3stLWZhOiJcZjg0YSJ9LmZhLWJvcmRlci1hbGx7LS1mYToiXGY4NGMifS5mYS1ib3JkZXItbm9uZXstLWZhOiJcZjg1MCJ9LmZhLWJvcmRlci1zdHlsZSwuZmEtYm9yZGVyLXRvcC1sZWZ0ey0tZmE6IlxmODUzIn0uZmEtZGlnZ2luZywuZmEtcGVyc29uLWRpZ2dpbmd7LS1mYToiXGY4NWUifS5mYS1mYW57LS1mYToiXGY4NjMifS5mYS1oZWFydC1tdXNpYy1jYW1lcmEtYm9sdCwuZmEtaWNvbnN7LS1mYToiXGY4NmQifS5mYS1waG9uZS1hbHQsLmZhLXBob25lLWZsaXB7LS1mYToiXGY4NzkifS5mYS1waG9uZS1zcXVhcmUtYWx0LC5mYS1zcXVhcmUtcGhvbmUtZmxpcHstLWZhOiJcZjg3YiJ9LmZhLXBob3RvLWZpbG0sLmZhLXBob3RvLXZpZGVvey0tZmE6IlxmODdjIn0uZmEtcmVtb3ZlLWZvcm1hdCwuZmEtdGV4dC1zbGFzaHstLWZhOiJcZjg3ZCJ9LmZhLWFycm93LWRvd24tei1hLC5mYS1zb3J0LWFscGhhLWRlc2MsLmZhLXNvcnQtYWxwaGEtZG93bi1hbHR7LS1mYToiXGY4ODEifS5mYS1hcnJvdy11cC16LWEsLmZhLXNvcnQtYWxwaGEtdXAtYWx0ey0tZmE6IlxmODgyIn0uZmEtYXJyb3ctZG93bi1zaG9ydC13aWRlLC5mYS1zb3J0LWFtb3VudC1kZXNjLC5mYS1zb3J0LWFtb3VudC1kb3duLWFsdHstLWZhOiJcZjg4NCJ9LmZhLWFycm93LXVwLXNob3J0LXdpZGUsLmZhLXNvcnQtYW1vdW50LXVwLWFsdHstLWZhOiJcZjg4NSJ9LmZhLWFycm93LWRvd24tOS0xLC5mYS1zb3J0LW51bWVyaWMtZGVzYywuZmEtc29ydC1udW1lcmljLWRvd24tYWx0ey0tZmE6IlxmODg2In0uZmEtYXJyb3ctdXAtOS0xLC5mYS1zb3J0LW51bWVyaWMtdXAtYWx0ey0tZmE6IlxmODg3In0uZmEtc3BlbGwtY2hlY2t7LS1mYToiXGY4OTEifS5mYS12b2ljZW1haWx7LS1mYToiXGY4OTcifS5mYS1oYXQtY293Ym95ey0tZmE6IlxmOGMwIn0uZmEtaGF0LWNvd2JveS1zaWRley0tZmE6IlxmOGMxIn0uZmEtY29tcHV0ZXItbW91c2UsLmZhLW1vdXNley0tZmE6IlxmOGNjIn0uZmEtcmFkaW97LS1mYToiXGY4ZDcifS5mYS1yZWNvcmQtdmlueWx7LS1mYToiXGY4ZDkifS5mYS13YWxraWUtdGFsa2lley0tZmE6IlxmOGVmIn0uZmEtY2FyYXZhbnstLWZhOiJcZjhmZiJ9Omhvc3QsOnJvb3R7LS1mYS1mYW1pbHktYnJhbmRzOiJGb250IEF3ZXNvbWUgNyBCcmFuZHMiOy0tZmEtZm9udC1icmFuZHM6bm9ybWFsIDQwMCAxZW0vMSB2YXIoLS1mYS1mYW1pbHktYnJhbmRzKX1AZm9udC1mYWNle2ZvbnQtZGlzcGxheTpibG9jaztmb250LWZhbWlseTpGb250IEF3ZXNvbWVcIDcgQnJhbmRzO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtzcmM6dXJsKC4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAud29mZjIpfS5mYS1icmFuZHMsLmZhLWNsYXNzaWMuZmEtYnJhbmRzLC5mYWJ7LS1mYS1mYW1pbHk6dmFyKC0tZmEtZmFtaWx5LWJyYW5kcyk7LS1mYS1zdHlsZTo0MDB9LmZhLWZpcmVmb3gtYnJvd3NlcnstLWZhOiJcZTAwNyJ9LmZhLWlkZWFsey0tZmE6IlxlMDEzIn0uZmEtbWljcm9ibG9ney0tZmE6IlxlMDFhIn0uZmEtcGllZC1waXBlci1zcXVhcmUsLmZhLXNxdWFyZS1waWVkLXBpcGVyey0tZmE6IlxlMDFlIn0uZmEtdW5pdHl7LS1mYToiXGUwNDkifS5mYS1kYWlseW1vdGlvbnstLWZhOiJcZTA1MiJ9LmZhLWluc3RhZ3JhbS1zcXVhcmUsLmZhLXNxdWFyZS1pbnN0YWdyYW17LS1mYToiXGUwNTUifS5mYS1taXhlcnstLWZhOiJcZTA1NiJ9LmZhLXNob3BpZnl7LS1mYToiXGUwNTcifS5mYS1kZWV6ZXJ7LS1mYToiXGUwNzcifS5mYS1lZGdlLWxlZ2FjeXstLWZhOiJcZTA3OCJ9LmZhLWdvb2dsZS1wYXl7LS1mYToiXGUwNzkifS5mYS1ydXN0ey0tZmE6IlxlMDdhIn0uZmEtdGlrdG9rey0tZmE6IlxlMDdiIn0uZmEtdW5zcGxhc2h7LS1mYToiXGUwN2MifS5mYS1jbG91ZGZsYXJley0tZmE6IlxlMDdkIn0uZmEtZ3VpbGRlZHstLWZhOiJcZTA3ZSJ9LmZhLWhpdmV7LS1mYToiXGUwN2YifS5mYS00Mi1ncm91cCwuZmEtaW5ub3NvZnR7LS1mYToiXGUwODAifS5mYS1pbnN0YWxvZHstLWZhOiJcZTA4MSJ9LmZhLW9jdG9wdXMtZGVwbG95ey0tZmE6IlxlMDgyIn0uZmEtcGVyYnl0ZXstLWZhOiJcZTA4MyJ9LmZhLXVuY2hhcnRlZHstLWZhOiJcZTA4NCJ9LmZhLXdhdGNobWFuLW1vbml0b3Jpbmd7LS1mYToiXGUwODcifS5mYS13b2R1ey0tZmE6IlxlMDg4In0uZmEtd2lyc2luZGhhbmR3ZXJrLC5mYS13c2h7LS1mYToiXGUyZDAifS5mYS1ib3Rzey0tZmE6IlxlMzQwIn0uZmEtY21wbGlkey0tZmE6IlxlMzYwIn0uZmEtYmlsaWJpbGl7LS1mYToiXGUzZDkifS5mYS1nb2xhbmd7LS1mYToiXGU0MGYifS5mYS1waXh7LS1mYToiXGU0M2EifS5mYS1zaXRyb3h7LS1mYToiXGU0NGEifS5mYS1oYXNobm9kZXstLWZhOiJcZTQ5OSJ9LmZhLW1ldGF7LS1mYToiXGU0OWIifS5mYS1wYWRsZXR7LS1mYToiXGU0YTAifS5mYS1uZmMtZGlyZWN0aW9uYWx7LS1mYToiXGU1MzAifS5mYS1uZmMtc3ltYm9sey0tZmE6IlxlNTMxIn0uZmEtc2NyZWVucGFsey0tZmE6IlxlNTcwIn0uZmEtc3BhY2UtYXdlc29tZXstLWZhOiJcZTVhYyJ9LmZhLXNxdWFyZS1mb250LWF3ZXNvbWV7LS1mYToiXGU1YWQifS5mYS1naXRsYWItc3F1YXJlLC5mYS1zcXVhcmUtZ2l0bGFiey0tZmE6IlxlNWFlIn0uZmEtb2R5c2Vley0tZmE6IlxlNWM2In0uZmEtc3R1YmJlcnstLWZhOiJcZTVjNyJ9LmZhLWRlYmlhbnstLWZhOiJcZTYwYiJ9LmZhLXNob2VsYWNley0tZmE6IlxlNjBjIn0uZmEtdGhyZWFkc3stLWZhOiJcZTYxOCJ9LmZhLXNxdWFyZS10aHJlYWRzey0tZmE6IlxlNjE5In0uZmEtc3F1YXJlLXgtdHdpdHRlcnstLWZhOiJcZTYxYSJ9LmZhLXgtdHdpdHRlcnstLWZhOiJcZTYxYiJ9LmZhLW9wZW5zdXNley0tZmE6IlxlNjJiIn0uZmEtbGV0dGVyYm94ZHstLWZhOiJcZTYyZCJ9LmZhLXNxdWFyZS1sZXR0ZXJib3hkey0tZmE6IlxlNjJlIn0uZmEtbWludGJpdHstLWZhOiJcZTYyZiJ9LmZhLWdvb2dsZS1zY2hvbGFyey0tZmE6IlxlNjNiIn0uZmEtYnJhdmV7LS1mYToiXGU2M2MifS5mYS1icmF2ZS1yZXZlcnNley0tZmE6IlxlNjNkIn0uZmEtcGl4aXZ7LS1mYToiXGU2NDAifS5mYS11cHdvcmt7LS1mYToiXGU2NDEifS5mYS13ZWJmbG93ey0tZmE6IlxlNjVjIn0uZmEtc2lnbmFsLW1lc3NlbmdlcnstLWZhOiJcZTY2MyJ9LmZhLWJsdWVza3l7LS1mYToiXGU2NzEifS5mYS1qeGx7LS1mYToiXGU2N2IifS5mYS1zcXVhcmUtdXB3b3Jrey0tZmE6IlxlNjdjIn0uZmEtd2ViLWF3ZXNvbWV7LS1mYToiXGU2ODIifS5mYS1zcXVhcmUtd2ViLWF3ZXNvbWV7LS1mYToiXGU2ODMifS5mYS1zcXVhcmUtd2ViLWF3ZXNvbWUtc3Ryb2tley0tZmE6IlxlNjg0In0uZmEtZGFydC1sYW5ney0tZmE6IlxlNjkzIn0uZmEtZmx1dHRlcnstLWZhOiJcZTY5NCJ9LmZhLWZpbGVzLXBpbndoZWVsey0tZmE6IlxlNjlmIn0uZmEtY3Nzey0tZmE6IlxlNmEyIn0uZmEtc3F1YXJlLWJsdWVza3l7LS1mYToiXGU2YTMifS5mYS1vcGVuYWl7LS1mYToiXGU3Y2YifS5mYS1zcXVhcmUtbGlua2VkaW57LS1mYToiXGU3ZDAifS5mYS1jYXNoLWFwcHstLWZhOiJcZTdkNCJ9LmZhLWRpc3F1c3stLWZhOiJcZTdkNSJ9LmZhLTExdHksLmZhLWVsZXZlbnR5ey0tZmE6IlxlN2Q2In0uZmEta2FrYW8tdGFsa3stLWZhOiJcZTdkNyJ9LmZhLWxpbmt0cmVley0tZmE6IlxlN2Q4In0uZmEtbm90aW9uey0tZmE6IlxlN2Q5In0uZmEtcGFuZG9yYXstLWZhOiJcZTdkYSJ9LmZhLXBpeGVsZmVkey0tZmE6IlxlN2RiIn0uZmEtdGlkYWx7LS1mYToiXGU3ZGMifS5mYS12c2Nvey0tZmE6IlxlN2RkIn0uZmEtdzNjey0tZmE6IlxlN2RlIn0uZmEtbHVtb257LS1mYToiXGU3ZTIifS5mYS1sdW1vbi1kcm9wey0tZmE6IlxlN2UzIn0uZmEtc3F1YXJlLWZpZ21hey0tZmE6IlxlN2U0In0uZmEtdGV4ey0tZmE6IlxlN2ZmIn0uZmEtZHVvbGluZ297LS1mYToiXGU4MTIifS5mYS1zcXVhcmUtdHdpdHRlciwuZmEtdHdpdHRlci1zcXVhcmV7LS1mYToiXGYwODEifS5mYS1mYWNlYm9vay1zcXVhcmUsLmZhLXNxdWFyZS1mYWNlYm9va3stLWZhOiJcZjA4MiJ9LmZhLWxpbmtlZGluey0tZmE6IlxmMDhjIn0uZmEtZ2l0aHViLXNxdWFyZSwuZmEtc3F1YXJlLWdpdGh1YnstLWZhOiJcZjA5MiJ9LmZhLXR3aXR0ZXJ7LS1mYToiXGYwOTkifS5mYS1mYWNlYm9va3stLWZhOiJcZjA5YSJ9LmZhLWdpdGh1YnstLWZhOiJcZjA5YiJ9LmZhLXBpbnRlcmVzdHstLWZhOiJcZjBkMiJ9LmZhLXBpbnRlcmVzdC1zcXVhcmUsLmZhLXNxdWFyZS1waW50ZXJlc3R7LS1mYToiXGYwZDMifS5mYS1nb29nbGUtcGx1cy1zcXVhcmUsLmZhLXNxdWFyZS1nb29nbGUtcGx1c3stLWZhOiJcZjBkNCJ9LmZhLWdvb2dsZS1wbHVzLWd7LS1mYToiXGYwZDUifS5mYS1saW5rZWRpbi1pbnstLWZhOiJcZjBlMSJ9LmZhLWdpdGh1Yi1hbHR7LS1mYToiXGYxMTMifS5mYS1tYXhjZG57LS1mYToiXGYxMzYifS5mYS1odG1sNXstLWZhOiJcZjEzYiJ9LmZhLWNzczN7LS1mYToiXGYxM2MifS5mYS1idGN7LS1mYToiXGYxNWEifS5mYS15b3V0dWJley0tZmE6IlxmMTY3In0uZmEteGluZ3stLWZhOiJcZjE2OCJ9LmZhLXNxdWFyZS14aW5nLC5mYS14aW5nLXNxdWFyZXstLWZhOiJcZjE2OSJ9LmZhLWRyb3Bib3h7LS1mYToiXGYxNmIifS5mYS1zdGFjay1vdmVyZmxvd3stLWZhOiJcZjE2YyJ9LmZhLWluc3RhZ3JhbXstLWZhOiJcZjE2ZCJ9LmZhLWZsaWNrcnstLWZhOiJcZjE2ZSJ9LmZhLWFkbnstLWZhOiJcZjE3MCJ9LmZhLWJpdGJ1Y2tldHstLWZhOiJcZjE3MSJ9LmZhLXR1bWJscnstLWZhOiJcZjE3MyJ9LmZhLXNxdWFyZS10dW1ibHIsLmZhLXR1bWJsci1zcXVhcmV7LS1mYToiXGYxNzQifS5mYS1hcHBsZXstLWZhOiJcZjE3OSJ9LmZhLXdpbmRvd3N7LS1mYToiXGYxN2EifS5mYS1hbmRyb2lkey0tZmE6IlxmMTdiIn0uZmEtbGludXh7LS1mYToiXGYxN2MifS5mYS1kcmliYmJsZXstLWZhOiJcZjE3ZCJ9LmZhLXNreXBley0tZmE6IlxmMTdlIn0uZmEtZm91cnNxdWFyZXstLWZhOiJcZjE4MCJ9LmZhLXRyZWxsb3stLWZhOiJcZjE4MSJ9LmZhLWdyYXRpcGF5ey0tZmE6IlxmMTg0In0uZmEtdmt7LS1mYToiXGYxODkifS5mYS13ZWlib3stLWZhOiJcZjE4YSJ9LmZhLXJlbnJlbnstLWZhOiJcZjE4YiJ9LmZhLXBhZ2VsaW5lc3stLWZhOiJcZjE4YyJ9LmZhLXN0YWNrLWV4Y2hhbmdley0tZmE6IlxmMThkIn0uZmEtc3F1YXJlLXZpbWVvLC5mYS12aW1lby1zcXVhcmV7LS1mYToiXGYxOTQifS5mYS1zbGFjaywuZmEtc2xhY2staGFzaHstLWZhOiJcZjE5OCJ9LmZhLXdvcmRwcmVzc3stLWZhOiJcZjE5YSJ9LmZhLW9wZW5pZHstLWZhOiJcZjE5YiJ9LmZhLXlhaG9vey0tZmE6IlxmMTllIn0uZmEtZ29vZ2xley0tZmE6IlxmMWEwIn0uZmEtcmVkZGl0ey0tZmE6IlxmMWExIn0uZmEtcmVkZGl0LXNxdWFyZSwuZmEtc3F1YXJlLXJlZGRpdHstLWZhOiJcZjFhMiJ9LmZhLXN0dW1ibGV1cG9uLWNpcmNsZXstLWZhOiJcZjFhMyJ9LmZhLXN0dW1ibGV1cG9uey0tZmE6IlxmMWE0In0uZmEtZGVsaWNpb3Vzey0tZmE6IlxmMWE1In0uZmEtZGlnZ3stLWZhOiJcZjFhNiJ9LmZhLXBpZWQtcGlwZXItcHB7LS1mYToiXGYxYTcifS5mYS1waWVkLXBpcGVyLWFsdHstLWZhOiJcZjFhOCJ9LmZhLWRydXBhbHstLWZhOiJcZjFhOSJ9LmZhLWpvb21sYXstLWZhOiJcZjFhYSJ9LmZhLWJlaGFuY2V7LS1mYToiXGYxYjQifS5mYS1iZWhhbmNlLXNxdWFyZSwuZmEtc3F1YXJlLWJlaGFuY2V7LS1mYToiXGYxYjUifS5mYS1zdGVhbXstLWZhOiJcZjFiNiJ9LmZhLXNxdWFyZS1zdGVhbSwuZmEtc3RlYW0tc3F1YXJley0tZmE6IlxmMWI3In0uZmEtc3BvdGlmeXstLWZhOiJcZjFiYyJ9LmZhLWRldmlhbnRhcnR7LS1mYToiXGYxYmQifS5mYS1zb3VuZGNsb3Vkey0tZmE6IlxmMWJlIn0uZmEtdmluZXstLWZhOiJcZjFjYSJ9LmZhLWNvZGVwZW57LS1mYToiXGYxY2IifS5mYS1qc2ZpZGRsZXstLWZhOiJcZjFjYyJ9LmZhLXJlYmVsey0tZmE6IlxmMWQwIn0uZmEtZW1waXJley0tZmE6IlxmMWQxIn0uZmEtZ2l0LXNxdWFyZSwuZmEtc3F1YXJlLWdpdHstLWZhOiJcZjFkMiJ9LmZhLWdpdHstLWZhOiJcZjFkMyJ9LmZhLWhhY2tlci1uZXdzey0tZmE6IlxmMWQ0In0uZmEtdGVuY2VudC13ZWlib3stLWZhOiJcZjFkNSJ9LmZhLXFxey0tZmE6IlxmMWQ2In0uZmEtd2VpeGluey0tZmE6IlxmMWQ3In0uZmEtc2xpZGVzaGFyZXstLWZhOiJcZjFlNyJ9LmZhLXR3aXRjaHstLWZhOiJcZjFlOCJ9LmZhLXllbHB7LS1mYToiXGYxZTkifS5mYS1wYXlwYWx7LS1mYToiXGYxZWQifS5mYS1nb29nbGUtd2FsbGV0ey0tZmE6IlxmMWVlIn0uZmEtY2MtdmlzYXstLWZhOiJcZjFmMCJ9LmZhLWNjLW1hc3RlcmNhcmR7LS1mYToiXGYxZjEifS5mYS1jYy1kaXNjb3ZlcnstLWZhOiJcZjFmMiJ9LmZhLWNjLWFtZXh7LS1mYToiXGYxZjMifS5mYS1jYy1wYXlwYWx7LS1mYToiXGYxZjQifS5mYS1jYy1zdHJpcGV7LS1mYToiXGYxZjUifS5mYS1sYXN0Zm17LS1mYToiXGYyMDIifS5mYS1sYXN0Zm0tc3F1YXJlLC5mYS1zcXVhcmUtbGFzdGZtey0tZmE6IlxmMjAzIn0uZmEtaW94aG9zdHstLWZhOiJcZjIwOCJ9LmZhLWFuZ2VsbGlzdHstLWZhOiJcZjIwOSJ9LmZhLWJ1eXNlbGxhZHN7LS1mYToiXGYyMGQifS5mYS1jb25uZWN0ZGV2ZWxvcHstLWZhOiJcZjIwZSJ9LmZhLWRhc2hjdWJley0tZmE6IlxmMjEwIn0uZmEtZm9ydW1iZWV7LS1mYToiXGYyMTEifS5mYS1sZWFucHViey0tZmE6IlxmMjEyIn0uZmEtc2VsbHN5ey0tZmE6IlxmMjEzIn0uZmEtc2hpcnRzaW5idWxrey0tZmE6IlxmMjE0In0uZmEtc2ltcGx5YnVpbHR7LS1mYToiXGYyMTUifS5mYS1za3lhdGxhc3stLWZhOiJcZjIxNiJ9LmZhLXBpbnRlcmVzdC1wey0tZmE6IlxmMjMxIn0uZmEtd2hhdHNhcHB7LS1mYToiXGYyMzIifS5mYS12aWFjb2luey0tZmE6IlxmMjM3In0uZmEtbWVkaXVtLC5mYS1tZWRpdW0tbXstLWZhOiJcZjIzYSJ9LmZhLXktY29tYmluYXRvcnstLWZhOiJcZjIzYiJ9LmZhLW9wdGluLW1vbnN0ZXJ7LS1mYToiXGYyM2MifS5mYS1vcGVuY2FydHstLWZhOiJcZjIzZCJ9LmZhLWV4cGVkaXRlZHNzbHstLWZhOiJcZjIzZSJ9LmZhLWNjLWpjYnstLWZhOiJcZjI0YiJ9LmZhLWNjLWRpbmVycy1jbHViey0tZmE6IlxmMjRjIn0uZmEtY3JlYXRpdmUtY29tbW9uc3stLWZhOiJcZjI1ZSJ9LmZhLWdney0tZmE6IlxmMjYwIn0uZmEtZ2ctY2lyY2xley0tZmE6IlxmMjYxIn0uZmEtb2Rub2tsYXNzbmlraXstLWZhOiJcZjI2MyJ9LmZhLW9kbm9rbGFzc25pa2ktc3F1YXJlLC5mYS1zcXVhcmUtb2Rub2tsYXNzbmlraXstLWZhOiJcZjI2NCJ9LmZhLWdldC1wb2NrZXR7LS1mYToiXGYyNjUifS5mYS13aWtpcGVkaWEtd3stLWZhOiJcZjI2NiJ9LmZhLXNhZmFyaXstLWZhOiJcZjI2NyJ9LmZhLWNocm9tZXstLWZhOiJcZjI2OCJ9LmZhLWZpcmVmb3h7LS1mYToiXGYyNjkifS5mYS1vcGVyYXstLWZhOiJcZjI2YSJ9LmZhLWludGVybmV0LWV4cGxvcmVyey0tZmE6IlxmMjZiIn0uZmEtY29udGFvey0tZmE6IlxmMjZkIn0uZmEtNTAwcHh7LS1mYToiXGYyNmUifS5mYS1hbWF6b257LS1mYToiXGYyNzAifS5mYS1ob3V6enstLWZhOiJcZjI3YyJ9LmZhLXZpbWVvLXZ7LS1mYToiXGYyN2QifS5mYS1ibGFjay10aWV7LS1mYToiXGYyN2UifS5mYS1mb250aWNvbnN7LS1mYToiXGYyODAifS5mYS1yZWRkaXQtYWxpZW57LS1mYToiXGYyODEifS5mYS1lZGdley0tZmE6IlxmMjgyIn0uZmEtY29kaWVwaWV7LS1mYToiXGYyODQifS5mYS1tb2R4ey0tZmE6IlxmMjg1In0uZmEtZm9ydC1hd2Vzb21ley0tZmE6IlxmMjg2In0uZmEtdXNiey0tZmE6IlxmMjg3In0uZmEtcHJvZHVjdC1odW50ey0tZmE6IlxmMjg4In0uZmEtbWl4Y2xvdWR7LS1mYToiXGYyODkifS5mYS1zY3JpYmR7LS1mYToiXGYyOGEifS5mYS1ibHVldG9vdGh7LS1mYToiXGYyOTMifS5mYS1ibHVldG9vdGgtYnstLWZhOiJcZjI5NCJ9LmZhLWdpdGxhYnstLWZhOiJcZjI5NiJ9LmZhLXdwYmVnaW5uZXJ7LS1mYToiXGYyOTcifS5mYS13cGZvcm1zey0tZmE6IlxmMjk4In0uZmEtZW52aXJhey0tZmE6IlxmMjk5In0uZmEtZ2xpZGV7LS1mYToiXGYyYTUifS5mYS1nbGlkZS1ney0tZmE6IlxmMmE2In0uZmEtdmlhZGVvey0tZmE6IlxmMmE5In0uZmEtc3F1YXJlLXZpYWRlbywuZmEtdmlhZGVvLXNxdWFyZXstLWZhOiJcZjJhYSJ9LmZhLXNuYXBjaGF0LC5mYS1zbmFwY2hhdC1naG9zdHstLWZhOiJcZjJhYiJ9LmZhLXNuYXBjaGF0LXNxdWFyZSwuZmEtc3F1YXJlLXNuYXBjaGF0ey0tZmE6IlxmMmFkIn0uZmEtcGllZC1waXBlcnstLWZhOiJcZjJhZSJ9LmZhLWZpcnN0LW9yZGVyey0tZmE6IlxmMmIwIn0uZmEteW9hc3R7LS1mYToiXGYyYjEifS5mYS10aGVtZWlzbGV7LS1mYToiXGYyYjIifS5mYS1nb29nbGUtcGx1c3stLWZhOiJcZjJiMyJ9LmZhLWZvbnQtYXdlc29tZSwuZmEtZm9udC1hd2Vzb21lLWZsYWcsLmZhLWZvbnQtYXdlc29tZS1sb2dvLWZ1bGx7LS1mYToiXGYyYjQifS5mYS1saW5vZGV7LS1mYToiXGYyYjgifS5mYS1xdW9yYXstLWZhOiJcZjJjNCJ9LmZhLWZyZWUtY29kZS1jYW1wey0tZmE6IlxmMmM1In0uZmEtdGVsZWdyYW0sLmZhLXRlbGVncmFtLXBsYW5ley0tZmE6IlxmMmM2In0uZmEtYmFuZGNhbXB7LS1mYToiXGYyZDUifS5mYS1ncmF2ey0tZmE6IlxmMmQ2In0uZmEtZXRzeXstLWZhOiJcZjJkNyJ9LmZhLWltZGJ7LS1mYToiXGYyZDgifS5mYS1yYXZlbHJ5ey0tZmE6IlxmMmQ5In0uZmEtc2VsbGNhc3R7LS1mYToiXGYyZGEifS5mYS1zdXBlcnBvd2Vyc3stLWZhOiJcZjJkZCJ9LmZhLXdwZXhwbG9yZXJ7LS1mYToiXGYyZGUifS5mYS1tZWV0dXB7LS1mYToiXGYyZTAifS5mYS1mb250LWF3ZXNvbWUtYWx0LC5mYS1zcXVhcmUtZm9udC1hd2Vzb21lLXN0cm9rZXstLWZhOiJcZjM1YyJ9LmZhLWFjY2Vzc2libGUtaWNvbnstLWZhOiJcZjM2OCJ9LmZhLWFjY3Vzb2Z0ey0tZmE6IlxmMzY5In0uZmEtYWR2ZXJzYWx7LS1mYToiXGYzNmEifS5mYS1hZmZpbGlhdGV0aGVtZXstLWZhOiJcZjM2YiJ9LmZhLWFsZ29saWF7LS1mYToiXGYzNmMifS5mYS1hbWlsaWF7LS1mYToiXGYzNmQifS5mYS1hbmdyeWNyZWF0aXZley0tZmE6IlxmMzZlIn0uZmEtYXBwLXN0b3Jley0tZmE6IlxmMzZmIn0uZmEtYXBwLXN0b3JlLWlvc3stLWZhOiJcZjM3MCJ9LmZhLWFwcGVyey0tZmE6IlxmMzcxIn0uZmEtYXN5bW1ldHJpa3stLWZhOiJcZjM3MiJ9LmZhLWF1ZGlibGV7LS1mYToiXGYzNzMifS5mYS1hdmlhbmV4ey0tZmE6IlxmMzc0In0uZmEtYXdzey0tZmE6IlxmMzc1In0uZmEtYmltb2JqZWN0ey0tZmE6IlxmMzc4In0uZmEtYml0Y29pbnstLWZhOiJcZjM3OSJ9LmZhLWJpdHl7LS1mYToiXGYzN2EifS5mYS1ibGFja2JlcnJ5ey0tZmE6IlxmMzdiIn0uZmEtYmxvZ2dlcnstLWZhOiJcZjM3YyJ9LmZhLWJsb2dnZXItYnstLWZhOiJcZjM3ZCJ9LmZhLWJ1cm9tb2JlbGV4cGVydGV7LS1mYToiXGYzN2YifS5mYS1jZW50ZXJjb2Rley0tZmE6IlxmMzgwIn0uZmEtY2xvdWRzY2FsZXstLWZhOiJcZjM4MyJ9LmZhLWNsb3Vkc21pdGh7LS1mYToiXGYzODQifS5mYS1jbG91ZHZlcnNpZnl7LS1mYToiXGYzODUifS5mYS1jcGFuZWx7LS1mYToiXGYzODgifS5mYS1jc3MzLWFsdHstLWZhOiJcZjM4YiJ9LmZhLWN1dHRsZWZpc2h7LS1mYToiXGYzOGMifS5mYS1kLWFuZC1key0tZmE6IlxmMzhkIn0uZmEtZGVwbG95ZG9ney0tZmE6IlxmMzhlIn0uZmEtZGVza3Byb3stLWZhOiJcZjM4ZiJ9LmZhLWRpZ2l0YWwtb2NlYW57LS1mYToiXGYzOTEifS5mYS1kaXNjb3Jkey0tZmE6IlxmMzkyIn0uZmEtZGlzY291cnNley0tZmE6IlxmMzkzIn0uZmEtZG9jaHViey0tZmE6IlxmMzk0In0uZmEtZG9ja2Vyey0tZmE6IlxmMzk1In0uZmEtZHJhZnQyZGlnaXRhbHstLWZhOiJcZjM5NiJ9LmZhLWRyaWJiYmxlLXNxdWFyZSwuZmEtc3F1YXJlLWRyaWJiYmxley0tZmE6IlxmMzk3In0uZmEtZHlhbG9ney0tZmE6IlxmMzk5In0uZmEtZWFybHliaXJkc3stLWZhOiJcZjM5YSJ9LmZhLWVybGFuZ3stLWZhOiJcZjM5ZCJ9LmZhLWZhY2Vib29rLWZ7LS1mYToiXGYzOWUifS5mYS1mYWNlYm9vay1tZXNzZW5nZXJ7LS1mYToiXGYzOWYifS5mYS1maXJzdGRyYWZ0ey0tZmE6IlxmM2ExIn0uZmEtZm9udGljb25zLWZpey0tZmE6IlxmM2EyIn0uZmEtZm9ydC1hd2Vzb21lLWFsdHstLWZhOiJcZjNhMyJ9LmZhLWZyZWVic2R7LS1mYToiXGYzYTQifS5mYS1naXRrcmFrZW57LS1mYToiXGYzYTYifS5mYS1nb2ZvcmV7LS1mYToiXGYzYTcifS5mYS1nb29kcmVhZHN7LS1mYToiXGYzYTgifS5mYS1nb29kcmVhZHMtZ3stLWZhOiJcZjNhOSJ9LmZhLWdvb2dsZS1kcml2ZXstLWZhOiJcZjNhYSJ9LmZhLWdvb2dsZS1wbGF5ey0tZmE6IlxmM2FiIn0uZmEtZ3JpcGZpcmV7LS1mYToiXGYzYWMifS5mYS1ncnVudHstLWZhOiJcZjNhZCJ9LmZhLWd1bHB7LS1mYToiXGYzYWUifS5mYS1oYWNrZXItbmV3cy1zcXVhcmUsLmZhLXNxdWFyZS1oYWNrZXItbmV3c3stLWZhOiJcZjNhZiJ9LmZhLWhpcmUtYS1oZWxwZXJ7LS1mYToiXGYzYjAifS5mYS1ob3RqYXJ7LS1mYToiXGYzYjEifS5mYS1odWJzcG90ey0tZmE6IlxmM2IyIn0uZmEtaXR1bmVzey0tZmE6IlxmM2I0In0uZmEtaXR1bmVzLW5vdGV7LS1mYToiXGYzYjUifS5mYS1qZW5raW5zey0tZmE6IlxmM2I2In0uZmEtam9nZXR7LS1mYToiXGYzYjcifS5mYS1qc3stLWZhOiJcZjNiOCJ9LmZhLWpzLXNxdWFyZSwuZmEtc3F1YXJlLWpzey0tZmE6IlxmM2I5In0uZmEta2V5Y2Ruey0tZmE6IlxmM2JhIn0uZmEta2lja3N0YXJ0ZXIsLmZhLXNxdWFyZS1raWNrc3RhcnRlcnstLWZhOiJcZjNiYiJ9LmZhLWtpY2tzdGFydGVyLWt7LS1mYToiXGYzYmMifS5mYS1sYXJhdmVsey0tZmE6IlxmM2JkIn0uZmEtbGluZXstLWZhOiJcZjNjMCJ9LmZhLWx5ZnR7LS1mYToiXGYzYzMifS5mYS1tYWdlbnRvey0tZmE6IlxmM2M0In0uZmEtbWVkYXBwc3stLWZhOiJcZjNjNiJ9LmZhLW1lZHJ0ey0tZmE6IlxmM2M4In0uZmEtbWljcm9zb2Z0ey0tZmE6IlxmM2NhIn0uZmEtbWl4ey0tZmE6IlxmM2NiIn0uZmEtbWl6dW5pey0tZmE6IlxmM2NjIn0uZmEtbW9uZXJvey0tZmE6IlxmM2QwIn0uZmEtbmFwc3RlcnstLWZhOiJcZjNkMiJ9LmZhLW5vZGUtanN7LS1mYToiXGYzZDMifS5mYS1ucG17LS1mYToiXGYzZDQifS5mYS1uczh7LS1mYToiXGYzZDUifS5mYS1udXRyaXRpb25peHstLWZhOiJcZjNkNiJ9LmZhLXBhZ2U0ey0tZmE6IlxmM2Q3In0uZmEtcGFsZmVkey0tZmE6IlxmM2Q4In0uZmEtcGF0cmVvbnstLWZhOiJcZjNkOSJ9LmZhLXBlcmlzY29wZXstLWZhOiJcZjNkYSJ9LmZhLXBoYWJyaWNhdG9yey0tZmE6IlxmM2RiIn0uZmEtcGhvZW5peC1mcmFtZXdvcmt7LS1mYToiXGYzZGMifS5mYS1wbGF5c3RhdGlvbnstLWZhOiJcZjNkZiJ9LmZhLXB1c2hlZHstLWZhOiJcZjNlMSJ9LmZhLXB5dGhvbnstLWZhOiJcZjNlMiJ9LmZhLXJlZC1yaXZlcnstLWZhOiJcZjNlMyJ9LmZhLXJlbmRhY3QsLmZhLXdwcmVzc3J7LS1mYToiXGYzZTQifS5mYS1yZXBseWR7LS1mYToiXGYzZTYifS5mYS1yZXNvbHZpbmd7LS1mYToiXGYzZTcifS5mYS1yb2NrZXRjaGF0ey0tZmE6IlxmM2U4In0uZmEtcm9ja3Jtc3stLWZhOiJcZjNlOSJ9LmZhLXNjaGxpeHstLWZhOiJcZjNlYSJ9LmZhLXNlYXJjaGVuZ2luey0tZmE6IlxmM2ViIn0uZmEtc2VydmljZXN0YWNrey0tZmE6IlxmM2VjIn0uZmEtc2lzdHJpeHstLWZhOiJcZjNlZSJ9LmZhLXNwZWFrYXB7LS1mYToiXGYzZjMifS5mYS1zdGF5bGlua2Vkey0tZmE6IlxmM2Y1In0uZmEtc3RlYW0tc3ltYm9sey0tZmE6IlxmM2Y2In0uZmEtc3RpY2tlci1tdWxley0tZmE6IlxmM2Y3In0uZmEtc3R1ZGlvdmluYXJpey0tZmE6IlxmM2Y4In0uZmEtc3VwcGxley0tZmE6IlxmM2Y5In0uZmEtdWJlcnstLWZhOiJcZjQwMiJ9LmZhLXVpa2l0ey0tZmE6IlxmNDAzIn0uZmEtdW5pcmVnaXN0cnl7LS1mYToiXGY0MDQifS5mYS11bnRhcHBkey0tZmE6IlxmNDA1In0uZmEtdXNzdW5uYWh7LS1mYToiXGY0MDcifS5mYS12YWFkaW57LS1mYToiXGY0MDgifS5mYS12aWJlcnstLWZhOiJcZjQwOSJ9LmZhLXZpbWVvey0tZmE6IlxmNDBhIn0uZmEtdm52ey0tZmE6IlxmNDBiIn0uZmEtc3F1YXJlLXdoYXRzYXBwLC5mYS13aGF0c2FwcC1zcXVhcmV7LS1mYToiXGY0MGMifS5mYS13aG1jc3stLWZhOiJcZjQwZCJ9LmZhLXdvcmRwcmVzcy1zaW1wbGV7LS1mYToiXGY0MTEifS5mYS14Ym94ey0tZmE6IlxmNDEyIn0uZmEteWFuZGV4ey0tZmE6IlxmNDEzIn0uZmEteWFuZGV4LWludGVybmF0aW9uYWx7LS1mYToiXGY0MTQifS5mYS1hcHBsZS1wYXl7LS1mYToiXGY0MTUifS5mYS1jYy1hcHBsZS1wYXl7LS1mYToiXGY0MTYifS5mYS1mbHl7LS1mYToiXGY0MTcifS5mYS1ub2Rley0tZmE6IlxmNDE5In0uZmEtb3Npey0tZmE6IlxmNDFhIn0uZmEtcmVhY3R7LS1mYToiXGY0MWIifS5mYS1hdXRvcHJlZml4ZXJ7LS1mYToiXGY0MWMifS5mYS1sZXNzey0tZmE6IlxmNDFkIn0uZmEtc2Fzc3stLWZhOiJcZjQxZSJ9LmZhLXZ1ZWpzey0tZmE6IlxmNDFmIn0uZmEtYW5ndWxhcnstLWZhOiJcZjQyMCJ9LmZhLWF2aWF0b3stLWZhOiJcZjQyMSJ9LmZhLWVtYmVyey0tZmE6IlxmNDIzIn0uZmEtZ2l0dGVyey0tZmE6IlxmNDI2In0uZmEtaG9vbGl7LS1mYToiXGY0MjcifS5mYS1zdHJhdmF7LS1mYToiXGY0MjgifS5mYS1zdHJpcGV7LS1mYToiXGY0MjkifS5mYS1zdHJpcGUtc3stLWZhOiJcZjQyYSJ9LmZhLXR5cG8zey0tZmE6IlxmNDJiIn0uZmEtYW1hem9uLXBheXstLWZhOiJcZjQyYyJ9LmZhLWNjLWFtYXpvbi1wYXl7LS1mYToiXGY0MmQifS5mYS1ldGhlcmV1bXstLWZhOiJcZjQyZSJ9LmZhLWtvcnZ1ZXstLWZhOiJcZjQyZiJ9LmZhLWVsZW1lbnRvcnstLWZhOiJcZjQzMCJ9LmZhLXNxdWFyZS15b3V0dWJlLC5mYS15b3V0dWJlLXNxdWFyZXstLWZhOiJcZjQzMSJ9LmZhLWZsaXBib2FyZHstLWZhOiJcZjQ0ZCJ9LmZhLWhpcHN7LS1mYToiXGY0NTIifS5mYS1waHB7LS1mYToiXGY0NTcifS5mYS1xdWluc2NhcGV7LS1mYToiXGY0NTkifS5mYS1yZWFkbWV7LS1mYToiXGY0ZDUifS5mYS1qYXZhey0tZmE6IlxmNGU0In0uZmEtcGllZC1waXBlci1oYXR7LS1mYToiXGY0ZTUifS5mYS1jcmVhdGl2ZS1jb21tb25zLWJ5ey0tZmE6IlxmNGU3In0uZmEtY3JlYXRpdmUtY29tbW9ucy1uY3stLWZhOiJcZjRlOCJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXV7LS1mYToiXGY0ZTkifS5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWpwey0tZmE6IlxmNGVhIn0uZmEtY3JlYXRpdmUtY29tbW9ucy1uZHstLWZhOiJcZjRlYiJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtcGR7LS1mYToiXGY0ZWMifS5mYS1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdHstLWZhOiJcZjRlZCJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtcmVtaXh7LS1mYToiXGY0ZWUifS5mYS1jcmVhdGl2ZS1jb21tb25zLXNhey0tZmE6IlxmNGVmIn0uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZ3stLWZhOiJcZjRmMCJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1c3stLWZhOiJcZjRmMSJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmV7LS1mYToiXGY0ZjIifS5mYS1jcmVhdGl2ZS1jb21tb25zLXplcm97LS1mYToiXGY0ZjMifS5mYS1lYmF5ey0tZmE6IlxmNGY0In0uZmEta2V5YmFzZXstLWZhOiJcZjRmNSJ9LmZhLW1hc3RvZG9uey0tZmE6IlxmNGY2In0uZmEtci1wcm9qZWN0ey0tZmE6IlxmNGY3In0uZmEtcmVzZWFyY2hnYXRley0tZmE6IlxmNGY4In0uZmEtdGVhbXNwZWFrey0tZmE6IlxmNGY5In0uZmEtZmlyc3Qtb3JkZXItYWx0ey0tZmE6IlxmNTBhIn0uZmEtZnVsY3J1bXstLWZhOiJcZjUwYiJ9LmZhLWdhbGFjdGljLXJlcHVibGljey0tZmE6IlxmNTBjIn0uZmEtZ2FsYWN0aWMtc2VuYXRley0tZmE6IlxmNTBkIn0uZmEtamVkaS1vcmRlcnstLWZhOiJcZjUwZSJ9LmZhLW1hbmRhbG9yaWFuey0tZmE6IlxmNTBmIn0uZmEtb2xkLXJlcHVibGljey0tZmE6IlxmNTEwIn0uZmEtcGhvZW5peC1zcXVhZHJvbnstLWZhOiJcZjUxMSJ9LmZhLXNpdGh7LS1mYToiXGY1MTIifS5mYS10cmFkZS1mZWRlcmF0aW9uey0tZmE6IlxmNTEzIn0uZmEtd29sZi1wYWNrLWJhdHRhbGlvbnstLWZhOiJcZjUxNCJ9LmZhLWhvcm5iaWxsey0tZmE6IlxmNTkyIn0uZmEtbWFpbGNoaW1wey0tZmE6IlxmNTllIn0uZmEtbWVnYXBvcnR7LS1mYToiXGY1YTMifS5mYS1uaW1ibHJ7LS1mYToiXGY1YTgifS5mYS1yZXZ7LS1mYToiXGY1YjIifS5mYS1zaG9wd2FyZXstLWZhOiJcZjViNSJ9LmZhLXNxdWFyZXNwYWNley0tZmE6IlxmNWJlIn0uZmEtdGhlbWVjb3stLWZhOiJcZjVjNiJ9LmZhLXdlZWJseXstLWZhOiJcZjVjYyJ9LmZhLXdpeHstLWZhOiJcZjVjZiJ9LmZhLWVsbG97LS1mYToiXGY1ZjEifS5mYS1oYWNrZXJyYW5rey0tZmE6IlxmNWY3In0uZmEta2FnZ2xley0tZmE6IlxmNWZhIn0uZmEtbWFya2Rvd257LS1mYToiXGY2MGYifS5mYS1uZW9zey0tZmE6IlxmNjEyIn0uZmEtemhpaHV7LS1mYToiXGY2M2YifS5mYS1hbGlwYXl7LS1mYToiXGY2NDIifS5mYS10aGUtcmVkLXlldGl7LS1mYToiXGY2OWQifS5mYS1jcml0aWNhbC1yb2xley0tZmE6IlxmNmM5In0uZmEtZC1hbmQtZC1iZXlvbmR7LS1mYToiXGY2Y2EifS5mYS1kZXZ7LS1mYToiXGY2Y2MifS5mYS1mYW50YXN5LWZsaWdodC1nYW1lc3stLWZhOiJcZjZkYyJ9LmZhLXdpemFyZHMtb2YtdGhlLWNvYXN0ey0tZmE6IlxmNzMwIn0uZmEtdGhpbmstcGVha3N7LS1mYToiXGY3MzEifS5mYS1yZWFjdGV1cm9wZXstLWZhOiJcZjc1ZCJ9LmZhLWFydHN0YXRpb257LS1mYToiXGY3N2EifS5mYS1hdGxhc3NpYW57LS1mYToiXGY3N2IifS5mYS1jYW5hZGlhbi1tYXBsZS1sZWFmey0tZmE6IlxmNzg1In0uZmEtY2VudG9zey0tZmE6IlxmNzg5In0uZmEtY29uZmx1ZW5jZXstLWZhOiJcZjc4ZCJ9LmZhLWRobHstLWZhOiJcZjc5MCJ9LmZhLWRpYXNwb3Jhey0tZmE6IlxmNzkxIn0uZmEtZmVkZXh7LS1mYToiXGY3OTcifS5mYS1mZWRvcmF7LS1mYToiXGY3OTgifS5mYS1maWdtYXstLWZhOiJcZjc5OSJ9LmZhLWludGVyY29tey0tZmE6IlxmN2FmIn0uZmEtaW52aXNpb257LS1mYToiXGY3YjAifS5mYS1qaXJhey0tZmE6IlxmN2IxIn0uZmEtbWVuZGVsZXl7LS1mYToiXGY3YjMifS5mYS1yYXNwYmVycnktcGl7LS1mYToiXGY3YmIifS5mYS1yZWRoYXR7LS1mYToiXGY3YmMifS5mYS1za2V0Y2h7LS1mYToiXGY3YzYifS5mYS1zb3VyY2V0cmVley0tZmE6IlxmN2QzIn0uZmEtc3VzZXstLWZhOiJcZjdkNiJ9LmZhLXVidW50dXstLWZhOiJcZjdkZiJ9LmZhLXVwc3stLWZhOiJcZjdlMCJ9LmZhLXVzcHN7LS1mYToiXGY3ZTEifS5mYS15YXJuey0tZmE6IlxmN2UzIn0uZmEtYWlyYm5iey0tZmE6IlxmODM0In0uZmEtYmF0dGxlLW5ldHstLWZhOiJcZjgzNSJ9LmZhLWJvb3RzdHJhcHstLWZhOiJcZjgzNiJ9LmZhLWJ1ZmZlcnstLWZhOiJcZjgzNyJ9LmZhLWNocm9tZWNhc3R7LS1mYToiXGY4MzgifS5mYS1ldmVybm90ZXstLWZhOiJcZjgzOSJ9LmZhLWl0Y2gtaW97LS1mYToiXGY4M2EifS5mYS1zYWxlc2ZvcmNley0tZmE6IlxmODNiIn0uZmEtc3BlYWtlci1kZWNrey0tZmE6IlxmODNjIn0uZmEtc3ltZm9ueXstLWZhOiJcZjgzZCJ9LmZhLXdhemV7LS1mYToiXGY4M2YifS5mYS15YW1tZXJ7LS1mYToiXGY4NDAifS5mYS1naXQtYWx0ey0tZmE6IlxmODQxIn0uZmEtc3RhY2twYXRoey0tZmE6IlxmODQyIn0uZmEtY290dG9uLWJ1cmVhdXstLWZhOiJcZjg5ZSJ9LmZhLWJ1eS1uLWxhcmdley0tZmE6IlxmOGE2In0uZmEtbWRiey0tZmE6IlxmOGNhIn0uZmEtb3JjaWR7LS1mYToiXGY4ZDIifS5mYS1zd2lmdHstLWZhOiJcZjhlMSJ9LmZhLXVtYnJhY297LS1mYToiXGY4ZTgifTpob3N0LDpyb290ey0tZmEtZm9udC1yZWd1bGFyOm5vcm1hbCA0MDAgMWVtLzEgdmFyKC0tZmEtZmFtaWx5LWNsYXNzaWMpfUBmb250LWZhY2V7Zm9udC1kaXNwbGF5OmJsb2NrO2ZvbnQtZmFtaWx5OkZvbnQgQXdlc29tZVwgNyBGcmVlO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtzcmM6dXJsKC4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmYyKX0uZmFyey0tZmEtZmFtaWx5OnZhcigtLWZhLWZhbWlseS1jbGFzc2ljKX0uZmEtcmVndWxhciwuZmFyey0tZmEtc3R5bGU6NDAwfTpob3N0LDpyb290ey0tZmEtZmFtaWx5LWNsYXNzaWM6IkZvbnQgQXdlc29tZSA3IEZyZWUiOy0tZmEtZm9udC1zb2xpZDpub3JtYWwgOTAwIDFlbS8xIHZhcigtLWZhLWZhbWlseS1jbGFzc2ljKTstLWZhLXN0eWxlLWZhbWlseS1jbGFzc2ljOnZhcigtLWZhLWZhbWlseS1jbGFzc2ljKX1AZm9udC1mYWNle2ZvbnQtZGlzcGxheTpibG9jaztmb250LWZhbWlseTpGb250IEF3ZXNvbWVcIDcgRnJlZTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo5MDA7c3JjOnVybCguLi93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjIpfS5mYXN7LS1mYS1zdHlsZTo5MDB9LmZhLWNsYXNzaWMsLmZhc3stLWZhLWZhbWlseTp2YXIoLS1mYS1mYW1pbHktY2xhc3NpYyl9LmZhLXNvbGlkey0tZmEtc3R5bGU6OTAwfUBmb250LWZhY2V7Zm9udC1kaXNwbGF5OmJsb2NrO2ZvbnQtZmFtaWx5OkZvbnQgQXdlc29tZVwgNSBCcmFuZHM7Zm9udC13ZWlnaHQ6NDAwO3NyYzp1cmwoLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpfUBmb250LWZhY2V7Zm9udC1kaXNwbGF5OmJsb2NrO2ZvbnQtZmFtaWx5OkZvbnQgQXdlc29tZVwgNSBGcmVlO2ZvbnQtd2VpZ2h0OjkwMDtzcmM6dXJsKC4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpfUBmb250LWZhY2V7Zm9udC1kaXNwbGF5OmJsb2NrO2ZvbnQtZmFtaWx5OkZvbnQgQXdlc29tZVwgNSBGcmVlO2ZvbnQtd2VpZ2h0OjQwMDtzcmM6dXJsKC4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmYyKSBmb3JtYXQoIndvZmYyIil9QGZvbnQtZmFjZXtmb250LWRpc3BsYXk6YmxvY2s7Zm9udC1mYW1pbHk6Rm9udEF3ZXNvbWU7c3JjOnVybCguLi93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjIpIGZvcm1hdCgid29mZjIiKX1AZm9udC1mYWNle2ZvbnQtZGlzcGxheTpibG9jaztmb250LWZhbWlseTpGb250QXdlc29tZTtzcmM6dXJsKC4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAud29mZjIpIGZvcm1hdCgid29mZjIiKX1AZm9udC1mYWNle2ZvbnQtZGlzcGxheTpibG9jaztmb250LWZhbWlseTpGb250QXdlc29tZTtzcmM6dXJsKC4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmYyKSBmb3JtYXQoIndvZmYyIik7dW5pY29kZS1yYW5nZTp1K2YwMDMsdStmMDA2LHUrZjAxNCx1K2YwMTYtZjAxNyx1K2YwMWEtZjAxYix1K2YwMWQsdStmMDIyLHUrZjAzZSx1K2YwNDQsdStmMDQ2LHUrZjA1Yy1mMDVkLHUrZjA2ZSx1K2YwNzAsdStmMDg3LWYwODgsdStmMDhhLHUrZjA5NCx1K2YwOTYtZjA5Nyx1K2YwOWQsdStmMGEwLHUrZjBhMix1K2YwYTQtZjBhNyx1K2YwYzUsdStmMGM3LHUrZjBlNS1mMGU2LHUrZjBlYix1K2YwZjYtZjBmOCx1K2YxMGMsdStmMTE0LWYxMTUsdStmMTE4LWYxMWEsdStmMTFjLWYxMWQsdStmMTMzLHUrZjE0Nyx1K2YxNGUsdStmMTUwLWYxNTIsdStmMTg1LWYxODYsdStmMThlLHUrZjE5MC1mMTkyLHUrZjE5Nix1K2YxYzEtZjFjOSx1K2YxZDksdStmMWRiLHUrZjFlMyx1K2YxZWEsdStmMWY3LHUrZjFmOSx1K2YyMGEsdStmMjQ3LWYyNDgsdStmMjRhLHUrZjI0ZCx1K2YyNTUtZjI1Yix1K2YyNWQsdStmMjcxLWYyNzQsdStmMjc4LHUrZjI3Yix1K2YyOGMsdStmMjhlLHUrZjI5Yyx1K2YyYjUsdStmMmI3LHUrZjJiYSx1K2YyYmMsdStmMmJlLHUrZjJjMC1mMmMxLHUrZjJjMyx1K2YyZDAsdStmMmQyLHUrZjJkNCx1K2YyZGN9QGZvbnQtZmFjZXtmb250LWRpc3BsYXk6YmxvY2s7Zm9udC1mYW1pbHk6Rm9udEF3ZXNvbWU7c3JjOnVybCguLi93ZWJmb250cy9mYS12NGNvbXBhdGliaWxpdHkud29mZjIpIGZvcm1hdCgid29mZjIiKTt1bmljb2RlLXJhbmdlOnUrZjA0MSx1K2YwNDcsdStmMDY1LWYwNjYsdStmMDdkLWYwN2UsdStmMDgwLHUrZjA4Yix1K2YwOGUsdStmMDkwLHUrZjA5YSx1K2YwYWMsdStmMGFlLHUrZjBiMix1K2YwZDAsdStmMGQ2LHUrZjBlNCx1K2YwZWMsdStmMTBhLWYxMGIsdStmMTIzLHUrZjEzZSx1K2YxNDgtZjE0OSx1K2YxNGMsdStmMTU2LHUrZjE1ZSx1K2YxNjAtZjE2MSx1K2YxNjMsdStmMTc1LWYxNzgsdStmMTk1LHUrZjFmOCx1K2YyMTksdStmMjdhfTpyb290ey0tc3dpcGVyLXRoZW1lLWNvbG9yOiMwMDdhZmZ9Omhvc3R7ZGlzcGxheTpibG9jazttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX0uc3dpcGVye2Rpc3BsYXk6YmxvY2s7bGlzdC1zdHlsZTpub25lO21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG87b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9LnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXdyYXBwZXJ7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5zd2lwZXItd3JhcHBlcntib3gtc2l6aW5nOmluaXRpYWw7ZGlzcGxheTpmbGV4O2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXN3aXBlci13cmFwcGVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLGluaXRpYWwpO3dpZHRoOjEwMCU7ei1pbmRleDoxfS5zd2lwZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLC5zd2lwZXItaW9zIC5zd2lwZXItc2xpZGUsLnN3aXBlci13cmFwcGVye3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5zd2lwZXItaG9yaXpvbnRhbHt0b3VjaC1hY3Rpb246cGFuLXl9LnN3aXBlci12ZXJ0aWNhbHt0b3VjaC1hY3Rpb246cGFuLXh9LnN3aXBlci1zbGlkZXtkaXNwbGF5OmJsb2NrO2ZsZXgtc2hyaW5rOjA7aGVpZ2h0OjEwMCU7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm07d2lkdGg6MTAwJX0uc3dpcGVyLXNsaWRlLWludmlzaWJsZS1ibGFua3t2aXNpYmlsaXR5OmhpZGRlbn0uc3dpcGVyLWF1dG9oZWlnaHQsLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGV7aGVpZ2h0OmF1dG99LnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlcnthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLGhlaWdodH0uc3dpcGVyLWJhY2tmYWNlLWhpZGRlbiAuc3dpcGVyLXNsaWRle2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5zd2lwZXItM2Quc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlcntwZXJzcGVjdGl2ZToxMjAwcHh9LnN3aXBlci0zZCAuc3dpcGVyLXdyYXBwZXJ7dHJhbnNmb3JtLXN0eWxlOnByZXNlcnZlLTNkfS5zd2lwZXItM2R7cGVyc3BlY3RpdmU6MTIwMHB4Oy5zd2lwZXItY3ViZS1zaGFkb3csLnN3aXBlci1zbGlkZXt0cmFuc2Zvcm0tc3R5bGU6cHJlc2VydmUtM2R9fS5zd2lwZXItY3NzLW1vZGV7Pi5zd2lwZXItd3JhcHBlcnstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtvdmVyZmxvdzphdXRvO3Njcm9sbGJhci13aWR0aDpub25lOyY6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX19Pi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRle3Njcm9sbC1zbmFwLWFsaWduOnN0YXJ0IHN0YXJ0fSYuc3dpcGVyLWhvcml6b250YWx7Pi5zd2lwZXItd3JhcHBlcntzY3JvbGwtc25hcC10eXBlOnggbWFuZGF0b3J5fX0mLnN3aXBlci12ZXJ0aWNhbHs+LnN3aXBlci13cmFwcGVye3Njcm9sbC1zbmFwLXR5cGU6eSBtYW5kYXRvcnl9fSYuc3dpcGVyLWZyZWUtbW9kZXs+LnN3aXBlci13cmFwcGVye3Njcm9sbC1zbmFwLXR5cGU6bm9uZX0+LnN3aXBlci13cmFwcGVyPi5zd2lwZXItc2xpZGV7c2Nyb2xsLXNuYXAtYWxpZ246bm9uZX19Ji5zd2lwZXItY2VudGVyZWR7Pi5zd2lwZXItd3JhcHBlcjpiZWZvcmV7Y29udGVudDoiIjtmbGV4LXNocmluazowO29yZGVyOjk5OTl9Pi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRle3Njcm9sbC1zbmFwLWFsaWduOmNlbnRlciBjZW50ZXI7c2Nyb2xsLXNuYXAtc3RvcDphbHdheXN9fSYuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci1ob3Jpem9udGFsez4uc3dpcGVyLXdyYXBwZXI+LnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0OnZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKX0+LnN3aXBlci13cmFwcGVyOmJlZm9yZXtoZWlnaHQ6MTAwJTttaW4taGVpZ2h0OjFweDt3aWR0aDp2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKX19Ji5zd2lwZXItY2VudGVyZWQuc3dpcGVyLXZlcnRpY2Fsez4uc3dpcGVyLXdyYXBwZXI+LnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZHttYXJnaW4tYmxvY2stc3RhcnQ6dmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpfT4uc3dpcGVyLXdyYXBwZXI6YmVmb3Jle2hlaWdodDp2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTttaW4td2lkdGg6MXB4O3dpZHRoOjEwMCV9fX0uc3dpcGVyLTNkey5zd2lwZXItc2xpZGUtc2hhZG93LC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcHtoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlO3otaW5kZXg6MTB9LnN3aXBlci1zbGlkZS1zaGFkb3d7YmFja2dyb3VuZDojMDAwMDAwMjZ9LnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdHtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgyNzBkZWcsIzAwMDAwMDgwLCMwMDAwKX0uc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodHtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjMDAwMDAwODAsIzAwMDApfS5zd2lwZXItc2xpZGUtc2hhZG93LXRvcHtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgwZGVnLCMwMDAwMDA4MCwjMDAwMCl9LnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9te2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjMDAwMDAwODAsIzAwMDApfX0uc3dpcGVyLWxhenktcHJlbG9hZGVye2JvcmRlcjo0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtib3JkZXItcmFkaXVzOjUwJTtib3JkZXItdG9wOjRweCBzb2xpZCAjMDAwMDtib3gtc2l6aW5nOmJvcmRlci1ib3g7aGVpZ2h0OjQycHg7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTIxcHg7bWFyZ2luLXRvcDotMjFweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybS1vcmlnaW46NTAlO3dpZHRoOjQycHg7ei1pbmRleDoxMH0uc3dpcGVyLXdhdGNoLXByb2dyZXNzIC5zd2lwZXItc2xpZGUtdmlzaWJsZSwuc3dpcGVyOm5vdCguc3dpcGVyLXdhdGNoLXByb2dyZXNzKXsuc3dpcGVyLWxhenktcHJlbG9hZGVye2FuaW1hdGlvbjpzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgbGluZWFyIGluZmluaXRlfX0uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRley0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjojZmZmfS5zd2lwZXItbGF6eS1wcmVsb2FkZXItYmxhY2t7LS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiMwMDB9QGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW57MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19LnN3aXBlci12aXJ0dWFsIC5zd2lwZXItc2xpZGV7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2Rley5zd2lwZXItd3JhcHBlcjphZnRlcntjb250ZW50OiIiO2xlZnQ6MDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfX0uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1ob3Jpem9udGFsey5zd2lwZXItd3JhcHBlcjphZnRlcntoZWlnaHQ6MXB4O3dpZHRoOnZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpfX0uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci12ZXJ0aWNhbHsuc3dpcGVyLXdyYXBwZXI6YWZ0ZXJ7aGVpZ2h0OnZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpO3dpZHRoOjFweH19OnJvb3R7LS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOjQ0cHh9LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLWJ1dHRvbi1wcmV2e2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmZsZXg7aGVpZ2h0OnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6dmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7ei1pbmRleDoxMDsmLnN3aXBlci1idXR0b24tZGlzYWJsZWR7Y3Vyc29yOmF1dG87b3BhY2l0eTouMzU7cG9pbnRlci1ldmVudHM6bm9uZX0mLnN3aXBlci1idXR0b24taGlkZGVue2N1cnNvcjphdXRvO29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lfS5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAme2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9c3Zne2ZpbGw6Y3VycmVudENvbG9yO2hlaWdodDoxMDAlOy1vLW9iamVjdC1maXQ6Y29udGFpbjtvYmplY3QtZml0OmNvbnRhaW47cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjt3aWR0aDoxMDAlfX0uc3dpcGVyLWJ1dHRvbi1sb2Nre2Rpc3BsYXk6bm9uZX0uc3dpcGVyLWJ1dHRvbi1uZXh0LC5zd2lwZXItYnV0dG9uLXByZXZ7bWFyZ2luLXRvcDpjYWxjKDBweCAtIHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpLzIpO3RvcDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0LDUwJSl9LnN3aXBlci1idXR0b24tcHJldntsZWZ0OnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCw0cHgpO3JpZ2h0OmF1dG87LnN3aXBlci1uYXZpZ2F0aW9uLWljb257dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfX0uc3dpcGVyLWJ1dHRvbi1uZXh0e2xlZnQ6YXV0bztyaWdodDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsNHB4KX0uc3dpcGVyLWhvcml6b250YWx7LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLWJ1dHRvbi1wcmV2LH4uc3dpcGVyLWJ1dHRvbi1uZXh0LH4uc3dpcGVyLWJ1dHRvbi1wcmV2e21hcmdpbi1sZWZ0OjA7bWFyZ2luLXRvcDpjYWxjKDBweCAtIHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpLzIpO3RvcDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0LDUwJSl9Ji5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQsJi5zd2lwZXItcnRsfi5zd2lwZXItYnV0dG9uLW5leHQsJn4uc3dpcGVyLWJ1dHRvbi1wcmV2LC5zd2lwZXItYnV0dG9uLXByZXZ7bGVmdDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsNHB4KTtyaWdodDphdXRvfSYuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LCYuc3dpcGVyLXJ0bH4uc3dpcGVyLWJ1dHRvbi1wcmV2LCZ+LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLWJ1dHRvbi1uZXh0e2xlZnQ6YXV0bztyaWdodDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsNHB4KX0mLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCwmLnN3aXBlci1ydGx+LnN3aXBlci1idXR0b24tbmV4dCwmfi5zd2lwZXItYnV0dG9uLXByZXYsLnN3aXBlci1idXR0b24tcHJldnsuc3dpcGVyLW5hdmlnYXRpb24taWNvbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9fSYuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LCYuc3dpcGVyLXJ0bH4uc3dpcGVyLWJ1dHRvbi1wcmV2ey5zd2lwZXItbmF2aWdhdGlvbi1pY29ue3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9fX0uc3dpcGVyLXZlcnRpY2Fsey5zd2lwZXItYnV0dG9uLW5leHQsLnN3aXBlci1idXR0b24tcHJldix+LnN3aXBlci1idXR0b24tbmV4dCx+LnN3aXBlci1idXR0b24tcHJldntsZWZ0OnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXRvcC1vZmZzZXQsNTAlKTttYXJnaW4tbGVmdDpjYWxjKDBweCAtIHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpLzIpO21hcmdpbi10b3A6MDtyaWdodDphdXRvfS5zd2lwZXItYnV0dG9uLXByZXYsfi5zd2lwZXItYnV0dG9uLXByZXZ7Ym90dG9tOmF1dG87dG9wOnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCw0cHgpOy5zd2lwZXItbmF2aWdhdGlvbi1pY29ue3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKX19LnN3aXBlci1idXR0b24tbmV4dCx+LnN3aXBlci1idXR0b24tbmV4dHtib3R0b206dmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LDRweCk7dG9wOmF1dG87LnN3aXBlci1uYXZpZ2F0aW9uLWljb257dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9fX0uc3dpcGVyLXBhZ2luYXRpb257cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zczt6LWluZGV4OjEwOyYuc3dpcGVyLXBhZ2luYXRpb24taGlkZGVue29wYWNpdHk6MH0mLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkLC5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZD4me2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLC5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9ue2JvdHRvbTp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b20sOHB4KTtsZWZ0OjA7dG9wOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXRvcCxhdXRvKTt3aWR0aDoxMDAlfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWN7Zm9udC1zaXplOjA7b3ZlcmZsb3c6aGlkZGVuOy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNmb3JtOnNjYWxlKC4zMyl9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbnt0cmFuc2Zvcm06c2NhbGUoMSl9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldnt0cmFuc2Zvcm06c2NhbGUoLjY2KX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2LXByZXZ7dHJhbnNmb3JtOnNjYWxlKC4zMyl9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dHt0cmFuc2Zvcm06c2NhbGUoLjY2KX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHR7dHJhbnNmb3JtOnNjYWxlKC4zMyl9fS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7YmFja2dyb3VuZDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3IsIzAwMCk7Ym9yZGVyLXJhZGl1czp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1cyw1MCUpO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0LHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLDhweCkpO29wYWNpdHk6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHksLjIpO3dpZHRoOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCx2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSw4cHgpKTtidXR0b24mey13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtib3JkZXI6bm9uZTtib3gtc2hhZG93Om5vbmU7bWFyZ2luOjA7cGFkZGluZzowfS5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgJntjdXJzb3I6cG9pbnRlcn0mOm9ubHktY2hpbGR7ZGlzcGxheTpub25lIWltcG9ydGFudH19LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtvcGFjaXR5OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1vcGFjaXR5LDEpfS5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHN7bGVmdDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1sZWZ0LGF1dG8pO3JpZ2h0OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXJpZ2h0LDhweCk7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNTAlLDApOy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7ZGlzcGxheTpibG9jazttYXJnaW46dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcCw2cHgpIDB9Ji5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWN7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt3aWR0aDo4cHg7LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHtkaXNwbGF5OmlubGluZS1ibG9jazt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMsdG9wIC4yc319fS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzey5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7bWFyZ2luOjAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwLDRweCl9Ji5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWN7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7d2hpdGUtc3BhY2U6bm93cmFwOy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzLGxlZnQgLjJzfX19LnN3aXBlci1ob3Jpem9udGFsLnN3aXBlci1ydGw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyxyaWdodCAuMnN9LnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9ue2NvbG9yOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLWNvbG9yLGluaGVyaXQpfS5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhcntiYWNrZ3JvdW5kOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWJnLWNvbG9yLCMwMDAwMDA0MCk7cG9zaXRpb246YWJzb2x1dGU7LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGx7YmFja2dyb3VuZDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7dHJhbnNmb3JtOnNjYWxlKDApO3RyYW5zZm9ybS1vcmlnaW46bGVmdCB0b3A7d2lkdGg6MTAwJX0uc3dpcGVyLXJ0bCAmIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxse3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgdG9wfSYuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwmLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLC5zd2lwZXItaG9yaXpvbnRhbD4mLC5zd2lwZXItdmVydGljYWw+Ji5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZXtoZWlnaHQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSw0cHgpO2xlZnQ6MDt0b3A6MDt3aWR0aDoxMDAlfSYuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSwmLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLC5zd2lwZXItaG9yaXpvbnRhbD4mLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLC5zd2lwZXItdmVydGljYWw+JntoZWlnaHQ6MTAwJTtsZWZ0OjA7dG9wOjA7d2lkdGg6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSw0cHgpfX0uc3dpcGVyLXBhZ2luYXRpb24tbG9ja3tkaXNwbGF5Om5vbmV9LnN3aXBlci1zY3JvbGxiYXJ7YmFja2dyb3VuZDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJnLWNvbG9yLCMwMDAwMDAxYSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvcmRlci1yYWRpdXMsMTBweCk7cG9zaXRpb246cmVsYXRpdmU7dG91Y2gtYWN0aW9uOm5vbmU7Ji5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVkLC5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVkPiZ7ZGlzcGxheTpub25lIWltcG9ydGFudH0mLnN3aXBlci1zY3JvbGxiYXItaG9yaXpvbnRhbCwuc3dpcGVyLWhvcml6b250YWw+Jntib3R0b206dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3R0b20sNHB4KTtoZWlnaHQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaXplLDRweCk7bGVmdDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwxJSk7cG9zaXRpb246YWJzb2x1dGU7dG9wOnZhcigtLXN3aXBlci1zY3JvbGxiYXItdG9wLGF1dG8pO3dpZHRoOmNhbGMoMTAwJSAtIHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2lkZXMtb2Zmc2V0LCAxJSkqMik7ei1pbmRleDo1MH0mLnN3aXBlci1zY3JvbGxiYXItdmVydGljYWwsLnN3aXBlci12ZXJ0aWNhbD4me2hlaWdodDpjYWxjKDEwMCUgLSB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpKjIpO2xlZnQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1sZWZ0LGF1dG8pO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OnZhcigtLXN3aXBlci1zY3JvbGxiYXItcmlnaHQsNHB4KTt0b3A6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsMSUpO3dpZHRoOnZhcigtLXN3aXBlci1zY3JvbGxiYXItc2l6ZSw0cHgpO3otaW5kZXg6NTB9fS5zd2lwZXItc2Nyb2xsYmFyLWRyYWd7YmFja2dyb3VuZDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWRyYWctYmctY29sb3IsIzAwMDAwMDgwKTtib3JkZXItcmFkaXVzOnZhcigtLXN3aXBlci1zY3JvbGxiYXItYm9yZGVyLXJhZGl1cywxMHB4KTtoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246cmVsYXRpdmU7dG9wOjA7d2lkdGg6MTAwJX0uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZ3tjdXJzb3I6bW92ZX0uc3dpcGVyLXNjcm9sbGJhci1sb2Nre2Rpc3BsYXk6bm9uZX0uc3dpcGVyLXpvb20tY29udGFpbmVye2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCU7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjt3aWR0aDoxMDAlOz5jYW52YXMsPmltZyw+c3Zne21heC1oZWlnaHQ6MTAwJTttYXgtd2lkdGg6MTAwJTstby1vYmplY3QtZml0OmNvbnRhaW47b2JqZWN0LWZpdDpjb250YWlufX0uc3dpcGVyLXNsaWRlLXpvb21lZHtjdXJzb3I6bW92ZTt0b3VjaC1hY3Rpb246bm9uZX0uc3dpcGVyIC5zd2lwZXItbm90aWZpY2F0aW9ue2xlZnQ6MDtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt6LWluZGV4Oi0xMDAwfS5zd2lwZXItZnJlZS1tb2RlPi5zd2lwZXItd3JhcHBlcnttYXJnaW46MCBhdXRvO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0fS5zd2lwZXItZ3JpZD4uc3dpcGVyLXdyYXBwZXJ7ZmxleC13cmFwOndyYXB9LnN3aXBlci1ncmlkLWNvbHVtbj4uc3dpcGVyLXdyYXBwZXJ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtd3JhcDp3cmFwfS5zd2lwZXItZmFkZXsmLnN3aXBlci1mcmVlLW1vZGV7LnN3aXBlci1zbGlkZXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dH19LnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTsuc3dpcGVyLXNsaWRle3BvaW50ZXItZXZlbnRzOm5vbmV9fS5zd2lwZXItc2xpZGUtYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG87JiAuc3dpcGVyLXNsaWRlLWFjdGl2ZXtwb2ludGVyLWV2ZW50czphdXRvfX19LnN3aXBlci5zd2lwZXItY3ViZXtvdmVyZmxvdzp2aXNpYmxlfS5zd2lwZXItY3ViZXsuc3dpcGVyLXNsaWRle2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2hlaWdodDoxMDAlO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtLW9yaWdpbjowIDA7dmlzaWJpbGl0eTpoaWRkZW47d2lkdGg6MTAwJTt6LWluZGV4OjE7LnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lfX0mLnN3aXBlci1ydGwgLnN3aXBlci1zbGlkZXt0cmFuc2Zvcm0tb3JpZ2luOjEwMCUgMH0uc3dpcGVyLXNsaWRlLWFjdGl2ZXsmLCYgLnN3aXBlci1zbGlkZS1hY3RpdmV7cG9pbnRlci1ldmVudHM6YXV0b319LnN3aXBlci1zbGlkZS1hY3RpdmUsLnN3aXBlci1zbGlkZS1uZXh0LC5zd2lwZXItc2xpZGUtcHJldntwb2ludGVyLWV2ZW50czphdXRvO3Zpc2liaWxpdHk6dmlzaWJsZX0uc3dpcGVyLWN1YmUtc2hhZG93e2JvdHRvbTowO2hlaWdodDoxMDAlO2xlZnQ6MDtvcGFjaXR5Oi42O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7ei1pbmRleDowOyY6YmVmb3Jle2JhY2tncm91bmQ6IzAwMDtib3R0b206MDtjb250ZW50OiIiO2ZpbHRlcjpibHVyKDUwcHgpO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowfX19LnN3aXBlci1jdWJley5zd2lwZXItc2xpZGUtbmV4dCsuc3dpcGVyLXNsaWRle3BvaW50ZXItZXZlbnRzOmF1dG87dmlzaWJpbGl0eTp2aXNpYmxlfX0uc3dpcGVyLWN1YmV7LnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LXRvcHtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjt6LWluZGV4OjB9fS5zd2lwZXIuc3dpcGVyLWZsaXB7b3ZlcmZsb3c6dmlzaWJsZX0uc3dpcGVyLWZsaXB7LnN3aXBlci1zbGlkZXtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6MTsuc3dpcGVyLXNsaWRle3BvaW50ZXItZXZlbnRzOm5vbmV9fS5zd2lwZXItc2xpZGUtYWN0aXZleyYsJiAuc3dpcGVyLXNsaWRlLWFjdGl2ZXtwb2ludGVyLWV2ZW50czphdXRvfX19LnN3aXBlci1mbGlwey5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sLnN3aXBlci1zbGlkZS1zaGFkb3ctZmxpcC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsLnN3aXBlci1zbGlkZS1zaGFkb3ctZmxpcC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3B7YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47ei1pbmRleDowfX0uc3dpcGVyLWNyZWF0aXZley5zd2lwZXItc2xpZGV7YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHksaGVpZ2h0fX0uc3dpcGVyLnN3aXBlci1jYXJkc3tvdmVyZmxvdzp2aXNpYmxlfS5zd2lwZXItY2FyZHN7LnN3aXBlci1zbGlkZXtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtvdmVyZmxvdzpoaWRkZW47dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tfX0KLyohIFBob3RvU3dpcGUgbWFpbiBDU1MgYnkgRG15dHJvIFNlbWVub3YgfCBwaG90b3N3aXBlLmNvbSAqLy5wc3dwey0tcHN3cC1iZzojMDAwOy0tcHN3cC1wbGFjZWhvbGRlci1iZzojMjIyOy0tcHN3cC1yb290LXotaW5kZXg6MTAwMDAwOy0tcHN3cC1wcmVsb2FkZXItY29sb3I6cmdiYSg3OSw3OSw3OSwuNCk7LS1wc3dwLXByZWxvYWRlci1jb2xvci1zZWNvbmRhcnk6aHNsYSgwLDAlLDEwMCUsLjkpOy0tcHN3cC1pY29uLWNvbG9yOiNmZmY7LS1wc3dwLWljb24tY29sb3Itc2Vjb25kYXJ5OiM0ZjRmNGY7LS1wc3dwLWljb24tc3Ryb2tlLWNvbG9yOiM0ZjRmNGY7LS1wc3dwLWljb24tc3Ryb2tlLXdpZHRoOjJweDstLXBzd3AtZXJyb3ItdGV4dC1jb2xvcjp2YXIoLS1wc3dwLWljb24tY29sb3IpOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApO2NvbnRhaW46bGF5b3V0IHN0eWxlIHNpemU7ZGlzcGxheTpub25lO2hlaWdodDoxMDAlO2xlZnQ6MDtvcGFjaXR5Oi4wMDM7cG9zaXRpb246Zml4ZWQ7dG9wOjA7dG91Y2gtYWN0aW9uOm5vbmU7d2lkdGg6MTAwJTt6LWluZGV4OnZhcigtLXBzd3Atcm9vdC16LWluZGV4KX0ucHN3cCwucHN3cDpmb2N1c3tvdXRsaW5lOjB9LnBzd3AgKntib3gtc2l6aW5nOmJvcmRlci1ib3h9LnBzd3AgaW1ne21heC13aWR0aDpub25lfS5wc3dwLS1vcGVue2Rpc3BsYXk6YmxvY2t9LnBzd3AsLnBzd3BfX2Jne3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3dpbGwtY2hhbmdlOm9wYWNpdHl9LnBzd3BfX2Jne2JhY2tncm91bmQ6dmFyKC0tcHN3cC1iZyk7b3BhY2l0eTouMDA1fS5wc3dwLC5wc3dwX19zY3JvbGwtd3JhcHtvdmVyZmxvdzpoaWRkZW59LnBzd3BfX2JnLC5wc3dwX19jb250YWluZXIsLnBzd3BfX2NvbnRlbnQsLnBzd3BfX2ltZywucHN3cF9faXRlbSwucHN3cF9fc2Nyb2xsLXdyYXAsLnBzd3BfX3pvb20td3JhcHtoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0ucHN3cF9faW1nLC5wc3dwX196b29tLXdyYXB7aGVpZ2h0OmF1dG87d2lkdGg6YXV0b30ucHN3cC0tY2xpY2stdG8tem9vbS5wc3dwLS16b29tLWFsbG93ZWQgLnBzd3BfX2ltZ3tjdXJzb3I6em9vbS1pbn0ucHN3cC0tY2xpY2stdG8tem9vbS5wc3dwLS16b29tZWQtaW4gLnBzd3BfX2ltZ3tjdXJzb3I6bW92ZTtjdXJzb3I6Z3JhYn0ucHN3cC0tY2xpY2stdG8tem9vbS5wc3dwLS16b29tZWQtaW4gLnBzd3BfX2ltZzphY3RpdmV7Y3Vyc29yOmdyYWJiaW5nfS5wc3dwLS1uby1tb3VzZS1kcmFnLnBzd3AtLXpvb21lZC1pbiAucHN3cF9faW1nLC5wc3dwLS1uby1tb3VzZS1kcmFnLnBzd3AtLXpvb21lZC1pbiAucHN3cF9faW1nOmFjdGl2ZSwucHN3cF9faW1ne2N1cnNvcjp6b29tLW91dH0ucHN3cF9fYnV0dG9uLC5wc3dwX19jb250YWluZXIsLnBzd3BfX2NvdW50ZXIsLnBzd3BfX2ltZ3std2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LnBzd3BfX2l0ZW17b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6MX0ucHN3cF9faGlkZGVue2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LnBzd3BfX2NvbnRlbnR7cG9pbnRlci1ldmVudHM6bm9uZX0ucHN3cF9fY29udGVudD4qe3BvaW50ZXItZXZlbnRzOmF1dG99LnBzd3BfX2Vycm9yLW1zZy1jb250YWluZXJ7ZGlzcGxheTpncmlkfS5wc3dwX19lcnJvci1tc2d7Y29sb3I6dmFyKC0tcHN3cC1lcnJvci10ZXh0LWNvbG9yKTtmb250LXNpemU6MWVtO2xpbmUtaGVpZ2h0OjE7bWFyZ2luOmF1dG99LnBzd3AgLnBzd3BfX2hpZGUtb24tY2xvc2V7b3BhY2l0eTouMDA1O3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXBzd3AtdHJhbnNpdGlvbi1kdXJhdGlvbikgY3ViaWMtYmV6aWVyKC40LDAsLjIyLDEpO3dpbGwtY2hhbmdlOm9wYWNpdHk7ei1pbmRleDoxMH0ucHN3cC0tdWktdmlzaWJsZSAucHN3cF9faGlkZS1vbi1jbG9zZXtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30ucHN3cF9fYnV0dG9uey13ZWJraXQtdG91Y2gtY2FsbG91dDpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6bm9uZTtib3JkZXI6MDtib3gtc2hhZG93Om5vbmU7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztoZWlnaHQ6NjBweDttYXJnaW46MDtvcGFjaXR5Oi44NTtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjUwcHh9LnBzd3BfX2J1dHRvbjphY3RpdmUsLnBzd3BfX2J1dHRvbjpmb2N1cywucHN3cF9fYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6bm9uZTtib3JkZXI6MDtib3gtc2hhZG93Om5vbmU7b3BhY2l0eToxO3BhZGRpbmc6MDt0cmFuc2l0aW9uOm5vbmV9LnBzd3BfX2J1dHRvbjpkaXNhYmxlZHtjdXJzb3I6YXV0bztvcGFjaXR5Oi4zfS5wc3dwX19pY257ZmlsbDp2YXIoLS1wc3dwLWljb24tY29sb3IpO2NvbG9yOnZhcigtLXBzd3AtaWNvbi1jb2xvci1zZWNvbmRhcnkpO2hlaWdodDozMnB4O2xlZnQ6OXB4O292ZXJmbG93OmhpZGRlbjtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxNHB4O3dpZHRoOjMycHh9LnBzd3BfX2ljbi1zaGFkb3d7c3Ryb2tlOnZhcigtLXBzd3AtaWNvbi1zdHJva2UtY29sb3IpO3N0cm9rZS13aWR0aDp2YXIoLS1wc3dwLWljb24tc3Ryb2tlLXdpZHRoKTtmaWxsOm5vbmV9LnBzd3BfX2ljbjpmb2N1c3tvdXRsaW5lOjB9LnBzd3BfX2ltZy0td2l0aC1iZyxkaXYucHN3cF9faW1nLS1wbGFjZWhvbGRlcntiYWNrZ3JvdW5kOnZhcigtLXBzd3AtcGxhY2Vob2xkZXItYmcpfS5wc3dwX190b3AtYmFye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpyb3c7aGVpZ2h0OjYwcHg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2xlZnQ6MDtwb2ludGVyLWV2ZW50czpub25lIWltcG9ydGFudDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlO3otaW5kZXg6MTB9LnBzd3BfX3RvcC1iYXI+Kntwb2ludGVyLWV2ZW50czphdXRvO3dpbGwtY2hhbmdlOm9wYWNpdHl9LnBzd3BfX2J1dHRvbi0tY2xvc2V7bWFyZ2luLXJpZ2h0OjZweH0ucHN3cF9fYnV0dG9uLS1hcnJvd3toZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotNTBweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt0b3A6NTAlO3dpZHRoOjc1cHh9LnBzd3BfX2J1dHRvbi0tYXJyb3c6ZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHQ7ZGlzcGxheTpub25lfS5wc3dwX19idXR0b24tLWFycm93IC5wc3dwX19pY257YmFja2dyb3VuZDpub25lO2JvcmRlci1yYWRpdXM6MDtoZWlnaHQ6NjBweDttYXJnaW4tdG9wOi0zMHB4O3RvcDo1MCU7d2lkdGg6NjBweH0ucHN3cC0tb25lLXNsaWRlIC5wc3dwX19idXR0b24tLWFycm93e2Rpc3BsYXk6bm9uZX0ucHN3cC0tdG91Y2ggLnBzd3BfX2J1dHRvbi0tYXJyb3d7dmlzaWJpbGl0eTpoaWRkZW59LnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvd3t2aXNpYmlsaXR5OnZpc2libGV9LnBzd3BfX2J1dHRvbi0tYXJyb3ctLXByZXZ7bGVmdDowO3JpZ2h0OmF1dG99LnBzd3BfX2J1dHRvbi0tYXJyb3ctLW5leHR7cmlnaHQ6MH0ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbmV4dCAucHN3cF9faWNue2xlZnQ6YXV0bztyaWdodDoxNHB4O3RyYW5zZm9ybTpzY2FsZVgoLTEpfS5wc3dwX19idXR0b24tLXpvb217ZGlzcGxheTpub25lfS5wc3dwLS16b29tLWFsbG93ZWQgLnBzd3BfX2J1dHRvbi0tem9vbXtkaXNwbGF5OmJsb2NrfS5wc3dwLS16b29tZWQtaW4gLnBzd3BfX3pvb20taWNuLWJhci12e2Rpc3BsYXk6bm9uZX0ucHN3cF9fcHJlbG9hZGVye2hlaWdodDo2MHB4O21hcmdpbi1yaWdodDphdXRvO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo1MHB4fS5wc3dwX19wcmVsb2FkZXIgLnBzd3BfX2ljbnthbmltYXRpb246cHN3cC1jbG9ja3dpc2UgLjZzIGxpbmVhciBpbmZpbml0ZTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBsaW5lYXJ9LnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIC5wc3dwX19pY257b3BhY2l0eTouODV9QGtleWZyYW1lcyBwc3dwLWNsb2Nrd2lzZXswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0ucHN3cF9fY291bnRlcntjb2xvcjp2YXIoLS1wc3dwLWljb24tY29sb3IpO2ZvbnQtc2l6ZToxNHB4O2hlaWdodDozMHB4O2xpbmUtaGVpZ2h0OjMwcHg7bWFyZ2luLXRvcDoxNXB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6MjBweDtvcGFjaXR5Oi44NTt0ZXh0LXNoYWRvdzoxcHggMXB4IDNweCB2YXIoLS1wc3dwLWljb24tY29sb3Itc2Vjb25kYXJ5KX0ucHN3cC0tb25lLXNsaWRlIC5wc3dwX19jb3VudGVye2Rpc3BsYXk6bm9uZX0uc2VsZWN0Mi1jb250YWluZXJ7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbjowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym94LXNpemluZzpib3JkZXItYm94O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjI4cHg7LW1vei11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctbGVmdDo4cHg7cGFkZGluZy1yaWdodDoyMHB4O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjFlbX0uc2VsZWN0Mi1jb250YWluZXJbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZHtwYWRkaW5nLWxlZnQ6MjBweDtwYWRkaW5nLXJpZ2h0OjhweH0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jazttaW4taGVpZ2h0OjMycHg7LW1vei11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7ZGlzcGxheTppbmxpbmU7bGlzdC1zdHlsZTpub25lO3BhZGRpbmc6MH0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjFlbX0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZHtib3JkZXI6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjtmb250LXNpemU6MTAwJTtoZWlnaHQ6MThweDttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLXRvcDo1cHg7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MDtyZXNpemU6bm9uZTt2ZXJ0aWNhbC1hbGlnbjpib3R0b207d29yZC1icmVhazprZWVwLWFsbH0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX0uc2VsZWN0Mi1kcm9wZG93bntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmJsb2NrO2xlZnQ6LTEwMDAwMHB4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7ei1pbmRleDoxMDUxfS5zZWxlY3QyLXJlc3VsdHN7ZGlzcGxheTpibG9ja30uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25ze2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9LnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue3BhZGRpbmc6NnB4Oy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX0uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGV7Y3Vyc29yOnBvaW50ZXJ9LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3due2xlZnQ6MH0uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24tLWFib3Zle2JvcmRlci1ib3R0b206bm9uZTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24tLWJlbG93e2JvcmRlci10b3A6bm9uZTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3due2Rpc3BsYXk6YmxvY2s7cGFkZGluZzo0cHh9LnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjRweDt3aWR0aDoxMDAlfS5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX0uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duLnNlbGVjdDItc2VhcmNoLS1oaWRle2Rpc3BsYXk6bm9uZX0uc2VsZWN0Mi1jbG9zZS1tYXNre2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MDtkaXNwbGF5OmJsb2NrO2ZpbHRlcjphbHBoYShvcGFjaXR5PTApO2hlaWdodDphdXRvO2xlZnQ6MDttYXJnaW46MDttaW4taGVpZ2h0OjEwMCU7bWluLXdpZHRoOjEwMCU7b3BhY2l0eTowO3BhZGRpbmc6MDtwb3NpdGlvbjpmaXhlZDt0b3A6MDt3aWR0aDphdXRvO3otaW5kZXg6OTl9LnNlbGVjdDItaGlkZGVuLWFjY2Vzc2libGV7Y2xpcDpyZWN0KDAgMCAwIDApIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Y2xpcC1wYXRoOmluc2V0KDUwJSkhaW1wb3J0YW50O2hlaWdodDoxcHghaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnQ7cGFkZGluZzowIWltcG9ydGFudDtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnQ7d2hpdGUtc3BhY2U6bm93cmFwIWltcG9ydGFudDt3aWR0aDoxcHghaW1wb3J0YW50fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2NvbG9yOiM0NDQ7bGluZS1oZWlnaHQ6MjhweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntjdXJzb3I6cG9pbnRlcjtmbG9hdDpyaWdodDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjI2cHg7bWFyZ2luLXJpZ2h0OjIwcHg7cGFkZGluZy1yaWdodDowfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVye2NvbG9yOiM5OTl9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7aGVpZ2h0OjI2cHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MXB4O3RvcDoxcHg7d2lkdGg6MjBweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBie2JvcmRlci1jb2xvcjojODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6NXB4IDRweCAwO2hlaWdodDowO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi00cHg7bWFyZ2luLXRvcDotMnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntmbG9hdDpsZWZ0fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93e2xlZnQ6MXB4O3JpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7Y3Vyc29yOmRlZmF1bHR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2Rpc3BsYXk6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBie2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODg4O2JvcmRlci13aWR0aDowIDRweCA1cHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2FhYTtib3JkZXItcmFkaXVzOjRweDtjdXJzb3I6dGV4dDtwYWRkaW5nLWJvdHRvbTo1cHg7cGFkZGluZy1yaWdodDo1cHg7cG9zaXRpb246cmVsYXRpdmV9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUuc2VsZWN0Mi1zZWxlY3Rpb24tLWNsZWFyYWJsZXtwYWRkaW5nLXJpZ2h0OjI1cHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntjdXJzb3I6cG9pbnRlcjtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjIwcHg7bWFyZ2luLXJpZ2h0OjEwcHg7bWFyZ2luLXRvcDo1cHg7cGFkZGluZzoxcHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXtiYWNrZ3JvdW5kLWNvbG9yOiNlNGU0ZTQ7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLXRvcDo1cHg7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MCAwIDAgMjBweDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3ZlcnRpY2FsLWFsaWduOmJvdHRvbTt3aGl0ZS1zcGFjZTpub3dyYXB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX2Rpc3BsYXl7Y3Vyc29yOmRlZmF1bHQ7cGFkZGluZy1sZWZ0OjJweDtwYWRkaW5nLXJpZ2h0OjVweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3Zle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjYWFhO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6NHB4O2NvbG9yOiM5OTk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjFlbTtmb250LXdlaWdodDo3MDA7bGVmdDowO3BhZGRpbmc6MCA0cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpmb2N1cywuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2YxZjFmMTtjb2xvcjojMzMzO291dGxpbmU6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLXJpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX2Rpc3BsYXl7cGFkZGluZy1sZWZ0OjVweDtwYWRkaW5nLXJpZ2h0OjJweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3Zle2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJpZ2h0Om5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2Zsb2F0OmxlZnQ7bWFyZ2luLWxlZnQ6MTBweDttYXJnaW4tcmlnaHQ6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyOjFweCBzb2xpZCAjMDAwO291dGxpbmU6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7YmFja2dyb3VuZC1jb2xvcjojZWVlO2N1cnNvcjpkZWZhdWx0fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZXtkaXNwbGF5Om5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlLC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlLC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZHtib3JkZXI6MXB4IHNvbGlkICNhYWF9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGR7LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2JveC1zaGFkb3c6bm9uZTtvdXRsaW5lOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHM+LnNlbGVjdDItcmVzdWx0c19fb3B0aW9uc3ttYXgtaGVpZ2h0OjIwMHB4O292ZXJmbG93LXk6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbntwYWRkaW5nLWxlZnQ6MWVtfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3Vwe3BhZGRpbmctbGVmdDowfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotMWVtO3BhZGRpbmctbGVmdDoyZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotMmVtO3BhZGRpbmctbGVmdDozZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb257bWFyZ2luLWxlZnQ6LTNlbTtwYWRkaW5nLWxlZnQ6NGVtfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotNGVtO3BhZGRpbmctbGVmdDo1ZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotNWVtO3BhZGRpbmctbGVmdDo2ZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZ3JvdXB7cGFkZGluZzowfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWRpc2FibGVke2NvbG9yOiM5OTl9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWR7YmFja2dyb3VuZC1jb2xvcjojZGRkfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxle2JhY2tncm91bmQtY29sb3I6IzU4OTdmYjtjb2xvcjojZmZmfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cHtjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6NnB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y3Zjc7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmYgNTAlLCNlZWUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2JvcmRlcjoxcHggc29saWQgI2FhYTtib3JkZXItcmFkaXVzOjRweDtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9IiNGRkZGRkZGRiIsZW5kQ29sb3JzdHI9IiNGRkVFRUVFRSIsR3JhZGllbnRUeXBlPTApO291dGxpbmU6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGU6Zm9jdXN7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2NvbG9yOiM0NDQ7bGluZS1oZWlnaHQ6MjhweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntjdXJzb3I6cG9pbnRlcjtmbG9hdDpyaWdodDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjI2cHg7bWFyZ2luLXJpZ2h0OjIwcHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvd3tiYWNrZ3JvdW5kLWNvbG9yOiNkZGQ7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNlZWUgNTAlLCNjY2MpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2JvcmRlcjpub25lO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjRweDtib3JkZXItbGVmdDoxcHggc29saWQgI2FhYTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo0cHg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSIjRkZFRUVFRUUiLGVuZENvbG9yc3RyPSIjRkZDQ0NDQ0MiLEdyYWRpZW50VHlwZT0wKTtoZWlnaHQ6MjZweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxcHg7dG9wOjFweDt3aWR0aDoyMHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGJ7Ym9yZGVyLWNvbG9yOiM4ODggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDo1cHggNHB4IDA7aGVpZ2h0OjA7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTRweDttYXJnaW4tdG9wOi0ycHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDowfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2Zsb2F0OmxlZnR9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NHB4O2JvcmRlci1yaWdodDoxcHggc29saWQgI2FhYTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDtsZWZ0OjFweDtyaWdodDphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtib3JkZXI6MXB4IHNvbGlkICM1ODk3ZmJ9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBie2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODg4O2JvcmRlci13aWR0aDowIDRweCA1cHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZiAwLCNlZWUgNTAlKTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteDtib3JkZXItdG9wOm5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjA7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSIjRkZGRkZGRkYiLGVuZENvbG9yc3RyPSIjRkZFRUVFRUUiLEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZWVlIDUwJSwjZmZmKTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteDtib3JkZXItYm90dG9tOm5vbmU7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSIjRkZFRUVFRUUiLGVuZENvbG9yc3RyPSIjRkZGRkZGRkYiLEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2N1cnNvcjp0ZXh0O291dGxpbmU6MDtwYWRkaW5nLWJvdHRvbTo1cHg7cGFkZGluZy1yaWdodDo1cHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGU6Zm9jdXN7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7ZGlzcGxheTpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNle2JhY2tncm91bmQtY29sb3I6I2U0ZTRlNDtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NXB4O21hcmdpbi10b3A6NXB4O3BhZGRpbmc6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheXtjdXJzb3I6ZGVmYXVsdDtwYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6NXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDtjb2xvcjojODg4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxZW07Zm9udC13ZWlnaHQ6NzAwO3BhZGRpbmc6MCA0cHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpob3Zlcntjb2xvcjojNTU1O291dGxpbmU6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLXJpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX2Rpc3BsYXl7cGFkZGluZy1sZWZ0OjVweDtwYWRkaW5nLXJpZ2h0OjJweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3Zle2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3JkZXI6MXB4IHNvbGlkICM1ODk3ZmJ9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JvcmRlci10b3A6bm9uZTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyLWJvdHRvbTpub25lO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGR7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO291dGxpbmU6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZHtib3gtc2hhZG93Om5vbmU7b3V0bGluZTowfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1kcm9wZG93bntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWFib3Zle2JvcmRlci1ib3R0b206bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWJlbG93e2JvcmRlci10b3A6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0cz4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25ze21heC1oZWlnaHQ6MjAwcHg7b3ZlcmZsb3cteTphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWdyb3Vwe3BhZGRpbmc6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1kaXNhYmxlZHtjb2xvcjpncmV5fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxle2JhY2tncm91bmQtY29sb3I6IzM4NzVkNztjb2xvcjojZmZmfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cHtjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6NnB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bntib3JkZXItY29sb3I6IzU4OTdmYn0KLyojIHNvdXJjZU1hcHBpbmdVUkw9dmVuZG9yLm1pbi5jc3MubWFwICovCg=="}},"time_used":66,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":66,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/i/77/77/08b/3408b/1276x1189/9sxpoc_1276x1188_304d76c46db1959f.webp","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"imageset","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.932Z","timestamp":1785161166932,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /i/77/77/08b/3408b/1276x1189/9sxpoc_1276x1188_304d76c46db1959f.webp HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-length: 22118\r\nlast-modified: Wed, 21 Aug 2024 08:35:34 GMT\r\netag: \"5666-6202d6cf6e180\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":22118,"size_decoded":22324,"mime_type":"image/webp","magic":"RIFF (little-endian) data, Web/P image, VP8 encoding, 1276x1188, Scaling: [none]x[none], YUV color, decoders should clamp","md5":"5016251194e07bee0a495a6cf3ad2b6c","sha1":"8b5efe91ddef0ef34099b7a155d04bd11a5b2a3f","sha256":"a99a3f08e099f677a24a756235413e3ad25371eb441509e28e0b73829a5f2ff2","sha512":"e06e7db50b41df1feabe9d46a12266ef3fee3bc3f3245e8bbcc2b6e75fcd92b5efbee950ac66cf0590c99d3a0a18dac8877c65c0953c4a240ce508e1a2b6d71a","ssdeep":"384:10hvM8EQU+8sCd2jHPU6zVmlyd4OMO4Edt64MBNvwV1NlrDDs+xHAZv+ofJn:98/CGU8mlOKEKNvwVHJDZZs+oh","tlshash":"cda2b02b9a23021cf1ad60b12b45361bd1353530aaad17d436f6b4724e1e6cd70f8eee","first_seen":"2026-07-27T14:06:41.177189Z","last_seen":"2026-07-27T14:06:41.177189Z","times_seen":1,"resource_available":false,"data":"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FlA1AEHrAsoGoAg9YFlA1AEHrD7QagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWUDUAQesCygagCD1gWRgAP78ZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjBpriP4sUrN1kgAAAAHHSDJrh1EGPyAAACxXiEpr0xcOak0qB/gAADUBk9WCRanPUAAAPJAAqVcyMp1hw48aTaEryk4y4/5LAfKF/24pkAsNbyYIv0IXtSYqdISL8TOB492p5jO6EPQJdNryLqNBPs69ym6ZBy1hmojAAAK1APYmwbdBUOiydHZBmXRdCJPOwPFBFLxqlxm+9fX6Tw7NJmyVnRkEcZZcQggUsRE7s5AzLgyinsc5WB3EH8lUgGPjdProuNQQllE1U83yO4qKgiEf79gKdAiVcy/kWz6pMESSiAAGt244DBPyGZSkxU46wR9Hk+iXPKSLimAglGBFzWqdozde7y1bCpPyCFHic+5BVbFXRVp27xtsfQbDCWyOBjYJYbYRuHkj/1bDhYoaY38O3ulwiqAlM37jS84Ur5Md83OnvJv2APFQABt4BIA3KGH+iRZDzI7mXobX4jybK1PGL4DD3uB5oTk2xI0+mCXWU7YdkZ7jPx2GMXsj7lq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"}},"time_used":51,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":51,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/i/77/77/08f/3408f/1276x1189/o7OcDS_1276x1188_531069ee00eb62b8.webp","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"imageset","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.934Z","timestamp":1785161166934,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /i/77/77/08f/3408f/1276x1189/o7OcDS_1276x1188_531069ee00eb62b8.webp HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-length: 27182\r\nlast-modified: Wed, 21 Aug 2024 09:14:36 GMT\r\netag: \"6a2e-6202df88ef700\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":27182,"size_decoded":27388,"mime_type":"image/webp","magic":"RIFF (little-endian) data, Web/P image, VP8 encoding, 1276x1188, Scaling: [none]x[none], YUV color, decoders should clamp","md5":"0f35bda8eae89d5472c2ac5d289c97c1","sha1":"b68ed298aae543b5172d4989fc0023e1ac1bad57","sha256":"954545128bd18800a22123e5e93aa96a0220f44e30a5ee03f6e105a7f50427da","sha512":"8f0611489be7896984b14a1425296260216ebdd3d2d9d7b674c1cd414b84982dd0eb37a211ab168f3733dda0afa39b9071c2083face599722abbcfb4ee18f8b5","ssdeep":"768:Y/5NzlD3h02fA30eSzob2+0WrH+DkPLzIH6:g5LWyAEeSzG0WrH+ALz5","tlshash":"2ec2d02f30663e96f365b1bde8db515c46edf31760eeb8fd2f091659289f83114010a4","first_seen":"2026-07-27T14:06:41.178541Z","last_seen":"2026-07-27T14:06:41.178541Z","times_seen":1,"resource_available":false,"data":"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"}},"time_used":36,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":36,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtm.js?id=GTM-PQP4X5Q","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.987Z","timestamp":1785161166987,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google-analytics.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:33 GMT","end":"Mon, 21 Sep 2026 08:37:32 GMT"},"fingerprint":{"sha1":"85:82:80:E9:F0:BC:08:B5:D8:5D:91:B4:E5:D3:DB:B1:A7:2F:E3:F3","sha256":"E3:94:E9:DA:2C:F1:36:09:33:63:D3:69:08:E7:E6:91:8D:F3:61:7F:0F:D0:5F:8E:B6:E9:D7:F3:DD:10:3C:DC"}}},"request":{"raw":"GET /gtm.js?id=GTM-PQP4X5Q HTTP/1.1\r\nHost: www.googletagmanager.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncontent-type: application/javascript; charset=UTF-8\r\naccess-control-allow-origin: *\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: Cache-Control\r\ncontent-encoding: zstd\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\nexpires: Mon, 27 Jul 2026 14:06:07 GMT\r\ncache-control: private, max-age=900\r\nlast-modified: Mon, 27 Jul 2026 12:00:00 GMT\r\nstrict-transport-security: max-age=31536000; includeSubDomains\r\ncross-origin-resource-policy: cross-origin\r\nserver: Google Tag Manager\r\ncontent-length: 178308\r\nx-xss-protection: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":541699,"size_decoded":178958,"mime_type":"application/javascript; charset=UTF-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (20003)","md5":"8bb0a4eeb62a5d8b7eaff1b8a429b199","sha1":"4fadbbc208e5d437548cebb09d346ce4cf3adbba","sha256":"ded141ecc4a818e0da0d257b9852d40e3c0cc2517133b930f3b7add198cb88c5","sha512":"f69a286e1f2bc44ead6e2e421f919199cf6ccfdd6632b88cac75d5210319de6c1a09194e44846bc73cd3bf929b7e380dbee9f88b7e3258b2dffee03e9dbc73c4","ssdeep":"6144:HLXxFU0jUecP69FMxmRkqn0hdBScPmfxNf3Ej18Ga8oXMJiU7:HLXxm3XP69V3KBM8OMJ/7","tlshash":"78b419ceb3c674269396f478903f018ba57a28e2b44cd895f089cce42e7465a5273f7d","first_seen":"2026-07-27T14:06:41.179788Z","last_seen":"2026-07-27T14:06:41.179788Z","times_seen":1,"resource_available":true,"data":"Ci8vIENvcHlyaWdodCAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKIChmdW5jdGlvbih3LGcpe3dbZ109d1tnXXx8e307CiB3W2ddLmU9ZnVuY3Rpb24ocyl7cmV0dXJuIGV2YWwocyk7fTt9KSh3aW5kb3csJ2dvb2dsZV90YWdfbWFuYWdlcicpOwogCihmdW5jdGlvbigpewoKdmFyIGRhdGEgPSB7CiJyZXNvdXJjZSI6IHsKICAidmVyc2lvbiI6IjU1IiwKICAKICAibWFjcm9zIjpbeyJmdW5jdGlvbiI6Il9fZSJ9LHsiZnVuY3Rpb24iOiJfX2RiZyJ9LHsiZnVuY3Rpb24iOiJfX2MiLCJ2dHBfdmFsdWUiOiJHLUNUQk5FWks1MTEifSx7ImZ1bmN0aW9uIjoiX19jIiwidnRwX3ZhbHVlIjoiRy1XVkM5WUc5WVRCIn0seyJmdW5jdGlvbiI6Il9fc21tIiwidnRwX3NldERlZmF1bHRWYWx1ZSI6dHJ1ZSwidnRwX2lucHV0IjpbIm1hY3JvIiwxXSwidnRwX2RlZmF1bHRWYWx1ZSI6WyJtYWNybyIsMl0sInZ0cF9tYXAiOlsibGlzdCIsWyJtYXAiLCJrZXkiLCJ0cnVlIiwidmFsdWUiLFsibWFjcm8iLDNdXV19LHsiZnVuY3Rpb24iOiJfX3UiLCJ2dHBfY29tcG9uZW50IjoiUVVFUlkiLCJ2dHBfcXVlcnlLZXkiOiJnY2xpZCIsInZ0cF9lbmFibGVNdWx0aVF1ZXJ5S2V5cyI6ZmFsc2UsInZ0cF9lbmFibGVJZ25vcmVFbXB0eVF1ZXJ5UGFyYW0iOmZhbHNlfSx7ImZ1bmN0aW9uIjoiX191IiwidnRwX2NvbXBvbmVudCI6IlFVRVJZIiwidnRwX3F1ZXJ5S2V5IjoiZmJjbGlkIiwidnRwX2VuYWJsZU11bHRpUXVlcnlLZXlzIjpmYWxzZSwidnRwX2VuYWJsZUlnbm9yZUVtcHR5UXVlcnlQYXJhbSI6ZmFsc2V9LHsiZnVuY3Rpb24iOiJfX2MiLCJ2dHBfdmFsdWUiOiJCR04ifSx7ImZ1bmN0aW9uIjoiX192IiwidnRwX25hbWUiOiJndG0uZWxlbWVudCIsInZ0cF9kYXRhTGF5ZXJWZXJzaW9uIjoxfSx7ImZ1bmN0aW9uIjoiX19qc20iLCJ2dHBfamF2YXNjcmlwdCI6WyJ0ZW1wbGF0ZSIsIihmdW5jdGlvbigpe2Zvcih0YXJnZXQ9IixbImVzY2FwZSIsWyJtYWNybyIsOF0sOCwxNl0sIjshdGFyZ2V0Lm1hdGNoZXMoXCJsaS5saXN0LWl0ZW1cIilcdTAwMjZcdTAwMjYhdGFyZ2V0Lm1hdGNoZXMoXCJib2R5XCIpOyl0YXJnZXQ9dGFyZ2V0LnBhcmVudEVsZW1lbnQ7cmV0dXJuIHRhcmdldC5tYXRjaGVzKFwibGkubGlzdC1pdGVtXCIpP3RhcmdldDp2b2lkIDB9KSgpOyJdfSx7ImZ1bmN0aW9uIjoiX19qc20iLCJ2dHBfamF2YXNjcmlwdCI6WyJ0ZW1wbGF0ZSIsIihmdW5jdGlvbigpe3ZhciBhPSIsWyJlc2NhcGUiLFsibWFjcm8iLDldLDgsMTZdLCI7cmV0dXJuIGE9XCJ1bmRlZmluZWRcIiE9PXR5cGVvZiBhP2EuaWQ6bnVsbH0pKCk7Il19LHsiZnVuY3Rpb24iOiJfX2pzbSIsInZ0cF9qYXZhc2NyaXB0IjpbInRlbXBsYXRlIiwiKGZ1bmN0aW9uKCl7dmFyIGE9IixbImVzY2FwZSIsWyJtYWNybyIsOV0sOCwxNl0sIjtyZXR1cm4gYT1cInVuZGVmaW5lZFwiIT09dHlwZW9mIGE/YS5nZXRBdHRyaWJ1dGUoXCJkYXRhLWRldGFpbF91cmxcIik6bnVsbH0pKCk7Il19LHsiZnVuY3Rpb24iOiJfX2pzbSIsInZ0cF9qYXZhc2NyaXB0IjpbInRlbXBsYXRlIiwiKGZ1bmN0aW9uKCl7dmFyIGE9IixbImVzY2FwZSIsWyJtYWNybyIsOV0sOCwxNl0sIjtyZXR1cm4gYT1cInVuZGVmaW5lZFwiIT09dHlwZW9mIGE/YS5jaGlsZHJlbi5pdGVtKFwiaDQuaXRlbV9fdGl0bGVcIikuaW5uZXJUZXh0Om51bGx9KSgpOyJdfSx7ImZ1bmN0aW9uIjoiX192IiwidnRwX25hbWUiOiJndG0uZWxlbWVudElkIiwidnRwX2RhdGFMYXllclZlcnNpb24iOjF9LHsiZnVuY3Rpb24iOiJfX3YiLCJ2dHBfbmFtZSI6Imd0bS50cmlnZ2VycyIsInZ0cF9kYXRhTGF5ZXJWZXJzaW9uIjoyLCJ2dHBfc2V0RGVmYXVsdFZhbHVlIjp0cnVlLCJ2dHBfZGVmYXVsdFZhbHVlIjoiIn0seyJmdW5jdGlvbiI6Il9fanNtIiwidnRwX2phdmFzY3JpcHQiOlsidGVtcGxhdGUiLCIoZnVuY3Rpb24oKXtyZXR1cm4gIixbImVzY2FwZSIsWyJtYWNybyIsOF0sOCwxNl0sIi5nZXRBdHRyaWJ1dGUoXCJocmVmXCIpfSkoKTsiXX0seyJmdW5jdGlvbiI6Il9fanNtIiwidnRwX2phdmFzY3JpcHQiOlsidGVtcGxhdGUiLCIoZnVuY3Rpb24oKXtyZXR1cm4gIixbImVzY2FwZSIsWyJtYWNybyIsOF0sOCwxNl0sIi5nZXRBdHRyaWJ1dGUoXCJkYXRhLXByaWNlXCIpfSkoKTsiXX0seyJmdW5jdGlvbiI6Il9fanNtIiwidnRwX2phdmFzY3JpcHQiOlsidGVtcGxhdGUiLCIoZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInByaWNpbmdfZm9ybV9fcGFja2FnZVwiKTthPVwiYS5kcm9wZG93bi1pdGVtW2RhdGEtdmFsdWVcXHgzZCdcIithLnZhbHVlK1wiJ11cIjthPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYSk7cmV0dXJuIGEubGVuZ3RoP2FbMF0uZ2V0QXR0cmlidXRlKFwiZGF0YS10aXRsZVwiKS50cmltKCk6XCJcIn0pKCk7Il19LHsiZnVuY3Rpb24iOiJfX2pzbSIsInZ0cF9qYXZhc2NyaXB0IjpbInRlbXBsYXRlIiwiKGZ1bmN0aW9uKCl7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJwcmljaW5nX2Zvcm1fX2NvdW50cnlfZGVzdGluYXRpb25cIik7cmV0dXJuIGEubGVuZ3RoP2Euc2VsZWN0ZWRPcHRpb25zWzBdLnRleHQudHJpbSgpOlwiXCJ9KSgpOyJdfSx7ImZ1bmN0aW9uIjoiX192IiwidnRwX25hbWUiOiJndG0uZWxlbWVudFVybCIsInZ0cF9kYXRhTGF5ZXJWZXJzaW9uIjoxfSx7ImZ1bmN0aW9uIjoiX19qc20iLCJ2dHBfamF2YXNjcmlwdCI6WyJ0ZW1wbGF0ZSIsIihmdW5jdGlvbigpe3ZhciBhPW5ldyBVUkwoIixbImVzY2FwZSIsWyJtYWNybyIsMTldLDgsMTZdLCIpO3JldHVybiBhLnNlYXJjaFBhcmFtcy5nZXQoXCJjaWRcIil9KSgpOyJdfSx7ImZ1bmN0aW9uIjoiX19qc20iLCJ2dHBfamF2YXNjcmlwdCI6WyJ0ZW1wbGF0ZSIsIihmdW5jdGlvbigpe3JldHVyblwiXCI9PT0iLFsiZXNjYXBlIixbIm1hY3JvIiwxOF0sOCwxNl0sInx8XCJcIj09PSIsWyJlc2NhcGUiLFsibWFjcm8iLDE3XSw4LDE2XSwiPyExOiEwfSkoKTsiXX0seyJmdW5jdGlvbiI6Il9fanNtIiwidnRwX2phdmFzY3JpcHQiOlsidGVtcGxhdGUiLCIoZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImlkX3NpemVfd2VpZ2h0XCIpO2lmKCFhKXJldHVybiBudWxsO3ZhciBiPWEucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50LnBhcmVudEVsZW1lbnQ7Yj1iLnN0eWxlLmRpc3BsYXk7cmV0dXJuXCJub25lXCI9PT1iP251bGw6TWF0aC5jZWlsKHBhcnNlRmxvYXQoYS52YWx1ZS5yZXBsYWNlKFwiLFwiLFwiLlwiKSkpfSkoKTsiXX0seyJmdW5jdGlvbiI6Il9fZCIsInZ0cF9lbGVtZW50U2VsZWN0b3IiOiIjcHJpY2luZ19mb3JtX19yZXN1bHRzIGRpdi5jYXJkLmNhcmQtLXByaWNpbmcuY2FyZC0tb25saW5lIFx1MDAzRSBkaXYuY2FyZC1ib2R5IFx1MDAzRSBkaXYuY2FyZC0tcHJpY2luZ19fcHJpY2UgXHUwMDNFIHNwYW4uY3VycmVuY3ktbWFpbjpudGgtY2hpbGQoMSkiLCJ2dHBfYXR0cmlidXRlTmFtZSI6ImRhdGEtcHJpY2UiLCJ2dHBfc2VsZWN0b3JUeXBlIjoiQ1NTIn0seyJmdW5jdGlvbiI6Il9fdiIsInZ0cF9uYW1lIjoiZ3RtLnZpZGVvVGl0bGUiLCJ2dHBfZGF0YUxheWVyVmVyc2lvbiI6MX0seyJmdW5jdGlvbiI6Il9fdiIsInZ0cF9uYW1lIjoiZ3RtLnZpZGVvVXJsIiwidnRwX2RhdGFMYXllclZlcnNpb24iOjF9LHsiZnVuY3Rpb24iOiJfX3YiLCJ2dHBfbmFtZSI6Imd0bS52aWRlb1BlcmNlbnQiLCJ2dHBfZGF0YUxheWVyVmVyc2lvbiI6MX0seyJmdW5jdGlvbiI6Il9fdiIsInZ0cF9uYW1lIjoiZ3RtLnZpZGVvU3RhdHVzIiwidnRwX2RhdGFMYXllclZlcnNpb24iOjF9LHsiZnVuY3Rpb24iOiJfX2MiLCJ2dHBfdmFsdWUiOiIyMzI2MzEzODg5Mzc5NDEifSx7ImZ1bmN0aW9uIjoiX192IiwidnRwX2RhdGFMYXllclZlcnNpb24iOjIsInZ0cF9zZXREZWZhdWx0VmFsdWUiOmZhbHNlLCJ2dHBfbmFtZSI6ImdyYW50ZWRDb25zZW50cy5hbmFseXRpY3Nfc3RvcmFnZSJ9LHsiZnVuY3Rpb24iOiJfX3NtbSIsInZ0cF9zZXREZWZhdWx0VmFsdWUiOnRydWUsInZ0cF9pbnB1dCI6WyJtYWNybyIsMjldLCJ2dHBfZGVmYXVsdFZhbHVlIjoiZmFsc2UiLCJ2dHBfbWFwIjpbImxpc3QiLFsibWFwIiwia2V5IiwiZ3JhbnRlZCIsInZhbHVlIiwidHJ1ZSJdXX0seyJmdW5jdGlvbiI6Il9fciJ9LHsiZnVuY3Rpb24iOiJfX3UiLCJ2dHBfZW5hYmxlTXVsdGlRdWVyeUtleXMiOmZhbHNlLCJ2dHBfZW5hYmxlSWdub3JlRW1wdHlRdWVyeVBhcmFtIjpmYWxzZX0seyJmdW5jdGlvbiI6Il9fdSIsInZ0cF9jb21wb25lbnQiOiJVUkwiLCJ2dHBfZW5hYmxlTXVsdGlRdWVyeUtleXMiOmZhbHNlLCJ2dHBfZW5hYmxlSWdub3JlRW1wdHlRdWVyeVBhcmFtIjpmYWxzZX0seyJmdW5jdGlvbiI6Il9fayIsInZ0cF9kZWNvZGVDb29raWUiOmZhbHNlLCJ2dHBfbmFtZSI6Ik9wdGFub25BbGVydEJveENsb3NlZCJ9LHsiZnVuY3Rpb24iOiJfX3YiLCJ2dHBfZGF0YUxheWVyVmVyc2lvbiI6MiwidnRwX3NldERlZmF1bHRWYWx1ZSI6ZmFsc2UsInZ0cF9uYW1lIjoiT25ldHJ1c3RBY3RpdmVHcm91cHMifSx7ImZ1bmN0aW9uIjoiX19qc20iLCJ2dHBfamF2YXNjcmlwdCI6WyJ0ZW1wbGF0ZSIsIihmdW5jdGlvbigpe3ZhciBhPSIsWyJlc2NhcGUiLFsibWFjcm8iLDM0XSw4LDE2XSwiLGI9IixbImVzY2FwZSIsWyJtYWNybyIsMzVdLDgsMTZdLCI7cmV0dXJuIGEhPW51bGxcdTAwMjZcdTAwMjZiLmluY2x1ZGVzKFwiQzAwMDRcIik/XCJncmFudGVkXCI6XCJkZW5pZWRcIn0pKCk7Il19LHsiZnVuY3Rpb24iOiJfX2MiLCJ2dHBfdmFsdWUiOiI1YWZiOGJlNS0zNmRiLTQwNjYtOGQ0Mi1mZDUxYWQyOTEwMmIifSx7ImZ1bmN0aW9uIjoiX19jIiwidnRwX3ZhbHVlIjoiIn0seyJmdW5jdGlvbiI6Il9fc21tIiwidnRwX3NldERlZmF1bHRWYWx1ZSI6ZmFsc2UsInZ0cF9pbnB1dCI6WyJtYWNybyIsMzhdLCJ2dHBfbWFwIjpbImxpc3QiLFsibWFwIiwia2V5IiwiUHJldmlldyIsInZhbHVlIiwiLXRlc3QiXV19LHsiZnVuY3Rpb24iOiJfX2FldiIsInZ0cF92YXJUeXBlIjoiVEVYVCJ9LHsiZnVuY3Rpb24iOiJfX2N2dF82MDc2MTAwNl8xNjIiLCJ2dHBfaW5kaXZpZHVhbENvbnNlbnRPdXRwdXQiOiJjb25zZW50X21vZGUiLCJ2dHBfc2VsZWN0ZWRHcm91cCI6IllPVTAxIiwidnRwX3JldHVyblR5cGUiOiJzZWxlY3RlZCJ9LHsiZnVuY3Rpb24iOiJfX2N2dF82MDc2MTAwNl8xNjIiLCJ2dHBfaW5kaXZpZHVhbENvbnNlbnRPdXRwdXQiOiJjb25zZW50X21vZGUiLCJ2dHBfc2VsZWN0ZWRHcm91cCI6Ik1BUDAxIiwidnRwX3JldHVyblR5cGUiOiJzZWxlY3RlZCJ9LHsiZnVuY3Rpb24iOiJfX3YiLCJ2dHBfZGF0YUxheWVyVmVyc2lvbiI6MiwidnRwX3NldERlZmF1bHRWYWx1ZSI6ZmFsc2UsInZ0cF9uYW1lIjoiZ3JhbnRlZENvbnNlbnRzLmFkX3N0b3JhZ2UifSx7ImZ1bmN0aW9uIjoiX192IiwidnRwX2RhdGFMYXllclZlcnNpb24iOjIsInZ0cF9zZXREZWZhdWx0VmFsdWUiOmZhbHNlLCJ2dHBfbmFtZSI6ImdyYW50ZWRDb25zZW50cy5wZXJzb25hbGl6YXRpb25fc3RvcmFnZSJ9LHsiZnVuY3Rpb24iOiJfX2pzbSIsInZ0cF9qYXZhc2NyaXB0IjpbInRlbXBsYXRlIiwiKGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKGEsYil7Yj1cImxpLmxpc3QtaXRlbVwiO2Zvcih2YXIgYz1cL15zZXJ2aWNlcG9pbnRfaXRlbV9cLzshKGEubWF0Y2hlcyhiKVx1MDAyNlx1MDAyNmEuaWQubWF0Y2goYyl8fGEubWF0Y2hlcyhcImJvZHlcIikpOylhPWEucGFyZW50RWxlbWVudDtyZXR1cm4gYS5tYXRjaGVzKGIpP2E6dm9pZCAwfX0pKCk7Il19LHsiZnVuY3Rpb24iOiJfX2MiLCJ2dHBfdmFsdWUiOiJVQS0yMDc5ODg3NDUtMSJ9LHsiZnVuY3Rpb24iOiJfX2dhcyIsInZ0cF9jb29raWVEb21haW4iOiJhdXRvIiwidnRwX2RvdWJsZUNsaWNrIjpmYWxzZSwidnRwX3NldFRyYWNrZXJOYW1lIjpmYWxzZSwidnRwX3VzZURlYnVnVmVyc2lvbiI6ZmFsc2UsInZ0cF91c2VIYXNoQXV0b0xpbmsiOmZhbHNlLCJ2dHBfZGVjb3JhdGVGb3Jtc0F1dG9MaW5rIjpmYWxzZSwidnRwX2VuYWJsZUxpbmtJZCI6ZmFsc2UsInZ0cF9kaW1lbnNpb24iOlsibGlzdCIsWyJtYXAiLCJpbmRleCIsIjIiLCJkaW1lbnNpb24iLFsibWFjcm8iLDVdXSxbIm1hcCIsImluZGV4IiwiMyIsImRpbWVuc2lvbiIsWyJtYWNybyIsNl1dXSwidnRwX2VuYWJsZUVjb21tZXJjZSI6ZmFsc2UsInZ0cF90cmFja2luZ0lkIjpbIm1hY3JvIiw0Nl0sInZ0cF9lbmFibGVSZWNhcHRjaGFPcHRpb24iOmZhbHNlLCJ2dHBfZW5hYmxlVWFSbHNhIjpmYWxzZSwidnRwX2VuYWJsZVVzZUludGVybmFsVmVyc2lvbiI6ZmFsc2V9LHsiZnVuY3Rpb24iOiJfX3YiLCJ2dHBfZGF0YUxheWVyVmVyc2lvbiI6MiwidnRwX3NldERlZmF1bHRWYWx1ZSI6ZmFsc2UsInZ0cF9uYW1lIjoiT25ldHJ1c3RBY3RpdmVHcm91cHMifSx7ImZ1bmN0aW9uIjoiX19kIiwidnRwX2VsZW1lbnRTZWxlY3RvciI6ImJvZHkiLCJ2dHBfYXR0cmlidXRlTmFtZSI6ImRhdGEtY29uc2VudF9tYW5hZ2VtZW50X3BsYXRmb3JtIiwidnRwX3NlbGVjdG9yVHlwZSI6IkNTUyJ9LHsiZnVuY3Rpb24iOiJfX2QiLCJ2dHBfZWxlbWVudFNlbGVjdG9yIjoiYm9keSIsInZ0cF9hdHRyaWJ1dGVOYW1lIjoiZGF0YS1jb25zZW50X21hbmFnZW1lbnQiLCJ2dHBfc2VsZWN0b3JUeXBlIjoiQ1NTIn0seyJmdW5jdGlvbiI6Il9fdiIsInZ0cF9kYXRhTGF5ZXJWZXJzaW9uIjoyLCJ2dHBfc2V0RGVmYXVsdFZhbHVlIjpmYWxzZSwidnRwX25hbWUiOiJncmFudGVkQ29uc2VudHMuZnVuY3Rpb25hbGl0eV9zdG9yYWdlIn0seyJmdW5jdGlvbiI6Il9fY3Z0XzYwNzYxMDA2XzE2MiIsInZ0cF9pbmRpdmlkdWFsQ29uc2VudE91dHB1dCI6ImNvbnNlbnRfbW9kZSIsInZ0cF9zZWxlY3RlZEdyb3VwIjoiQzAwMDQiLCJ2dHBfcmV0dXJuVHlwZSI6InNlbGVjdGVkIn0seyJmdW5jdGlvbiI6Il9fY3Z0XzYwNzYxMDA2XzE2MiIsInZ0cF9pbmRpdmlkdWFsQ29uc2VudE91dHB1dCI6ImNvbnNlbnRfbW9kZSIsInZ0cF9zZWxlY3RlZEdyb3VwIjoiQzAwMDUiLCJ2dHBfcmV0dXJuVHlwZSI6InNlbGVjdGVkIn0seyJmdW5jdGlvbiI6Il9fY3Z0XzYwNzYxMDA2XzE2MiIsInZ0cF9pbmRpdmlkdWFsQ29uc2VudE91dHB1dCI6ImNvbnNlbnRfbW9kZSIsInZ0cF9zZWxlY3RlZEdyb3VwIjoiQzAwMDMiLCJ2dHBfcmV0dXJuVHlwZSI6InNlbGVjdGVkIn0seyJmdW5jdGlvbiI6Il9fY3Z0XzYwNzYxMDA2XzE2MiIsInZ0cF9pbmRpdmlkdWFsQ29uc2VudE91dHB1dCI6ImNvbnNlbnRfbW9kZSIsInZ0cF9zZWxlY3RlZEdyb3VwIjoiQzAwMDIiLCJ2dHBfcmV0dXJuVHlwZSI6InNlbGVjdGVkIn0seyJmdW5jdGlvbiI6Il9fdSIsInZ0cF9jb21wb25lbnQiOiJIT1NUIiwidnRwX2VuYWJsZU11bHRpUXVlcnlLZXlzIjpmYWxzZSwidnRwX2VuYWJsZUlnbm9yZUVtcHR5UXVlcnlQYXJhbSI6ZmFsc2V9LHsiZnVuY3Rpb24iOiJfX3UiLCJ2dHBfY29tcG9uZW50IjoiUEFUSCIsInZ0cF9lbmFibGVNdWx0aVF1ZXJ5S2V5cyI6ZmFsc2UsInZ0cF9lbmFibGVJZ25vcmVFbXB0eVF1ZXJ5UGFyYW0iOmZhbHNlfSx7ImZ1bmN0aW9uIjoiX19mIiwidnRwX2NvbXBvbmVudCI6IlVSTCJ9LHsiZnVuY3Rpb24iOiJfX2UifSx7ImZ1bmN0aW9uIjoiX192IiwidnRwX25hbWUiOiJndG0udmlkZW9Qcm92aWRlciIsInZ0cF9kYXRhTGF5ZXJWZXJzaW9uIjoxfSx7ImZ1bmN0aW9uIjoiX192IiwidnRwX25hbWUiOiJndG0udmlkZW9EdXJhdGlvbiIsInZ0cF9kYXRhTGF5ZXJWZXJzaW9uIjoxfSx7ImZ1bmN0aW9uIjoiX192IiwidnRwX25hbWUiOiJndG0udmlkZW9WaXNpYmxlIiwidnRwX2RhdGFMYXllclZlcnNpb24iOjF9LHsiZnVuY3Rpb24iOiJfX3YiLCJ2dHBfbmFtZSI6Imd0bS52aWRlb0N1cnJlbnRUaW1lIiwidnRwX2RhdGFMYXllclZlcnNpb24iOjF9LHsiZnVuY3Rpb24iOiJfX3YiLCJ2dHBfbmFtZSI6Imd0bS52aXNpYmxlUmF0aW8iLCJ2dHBfZGF0YUxheWVyVmVyc2lvbiI6MX1dLAogICJ0YWdzIjpbeyJmdW5jdGlvbiI6Il9fZ29vZ3RhZyIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX3RhZ0lkIjpbIm1hY3JvIiw0XSwidnRwX3VzZXJQcm9wZXJ0aWVzIjpbImxpc3QiLFsibWFwIiwibmFtZSIsImdvb2dsZSIsInZhbHVlIixbIm1hY3JvIiw1XV0sWyJtYXAiLCJuYW1lIiwiZmFjZWJvb2siLCJ2YWx1ZSIsWyJtYWNybyIsNl1dXSwidnRwX2NvbmZpZ1NldHRpbmdzVGFibGUiOlsibGlzdCIsWyJtYXAiLCJwYXJhbWV0ZXIiLCJjdXJyZW5jeSIsInBhcmFtZXRlclZhbHVlIixbIm1hY3JvIiw3XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJzZW5kX3BhZ2VfdmlldyIsInBhcmFtZXRlclZhbHVlIiwidHJ1ZSJdXSwidGFnX2lkIjoxNX0seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9ldmVudFNldHRpbmdzVGFibGUiOlsibGlzdCIsWyJtYXAiLCJwYXJhbWV0ZXIiLCJwYWdlX2xvY2F0aW9uIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDExXV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJwYWdlX3RpdGxlIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDEyXV1dLCJ2dHBfZXZlbnROYW1lIjoicGFnZV92aWV3IiwidnRwX21lYXN1cmVtZW50SWRPdmVycmlkZSI6WyJtYWNybyIsNF0sInZ0cF9lbmFibGVVc2VyUHJvcGVydGllcyI6dHJ1ZSwidnRwX2VuYWJsZUV1aWQiOnRydWUsInZ0cF9taWdyYXRlZFRvVjIiOnRydWUsInZ0cF9kZW1vVjIiOmZhbHNlLCJ0YWdfaWQiOjE2fSx7ImZ1bmN0aW9uIjoiX19nYWF3ZSIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX3NlbmRFY29tbWVyY2VEYXRhIjpmYWxzZSwidnRwX2V2ZW50U2V0dGluZ3NUYWJsZSI6WyJsaXN0IixbIm1hcCIsInBhcmFtZXRlciIsImxpbmtfdXJsIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE1XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJzZXJ2aWNlX25hbWUiLCJwYXJhbWV0ZXJWYWx1ZSIsIlByaWNlMiJdXSwidnRwX2V2ZW50TmFtZSI6InBhZ2VfdmlldyIsInZ0cF9tZWFzdXJlbWVudElkT3ZlcnJpZGUiOlsibWFjcm8iLDRdLCJ2dHBfZW5hYmxlVXNlclByb3BlcnRpZXMiOnRydWUsInZ0cF9lbmFibGVFdWlkIjp0cnVlLCJ2dHBfbWlncmF0ZWRUb1YyIjp0cnVlLCJ2dHBfZGVtb1YyIjpmYWxzZSwidGFnX2lkIjo0M30seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9zZW5kRWNvbW1lcmNlRGF0YSI6ZmFsc2UsInZ0cF9ldmVudFNldHRpbmdzVGFibGUiOlsibGlzdCIsWyJtYXAiLCJwYXJhbWV0ZXIiLCJsaW5rX3VybCIsInBhcmFtZXRlclZhbHVlIixbIm1hY3JvIiwxNV1dLFsibWFwIiwicGFyYW1ldGVyIiwic2VydmljZV9uYW1lIiwicGFyYW1ldGVyVmFsdWUiLCJQcmljZTEiXV0sInZ0cF9ldmVudE5hbWUiOiJwYWdlX3ZpZXciLCJ2dHBfbWVhc3VyZW1lbnRJZE92ZXJyaWRlIjpbIm1hY3JvIiw0XSwidnRwX2VuYWJsZVVzZXJQcm9wZXJ0aWVzIjp0cnVlLCJ2dHBfZW5hYmxlRXVpZCI6dHJ1ZSwidnRwX21pZ3JhdGVkVG9WMiI6dHJ1ZSwidnRwX2RlbW9WMiI6ZmFsc2UsInRhZ19pZCI6NTB9LHsiZnVuY3Rpb24iOiJfX2dhYXdlIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfc2VuZEVjb21tZXJjZURhdGEiOmZhbHNlLCJ2dHBfZXZlbnRTZXR0aW5nc1RhYmxlIjpbImxpc3QiLFsibWFwIiwicGFyYW1ldGVyIiwibGlua191cmwiLCJwYXJhbWV0ZXJWYWx1ZSIsWyJtYWNybyIsMTVdXSxbIm1hcCIsInBhcmFtZXRlciIsInNlcnZpY2VfbmFtZSIsInBhcmFtZXRlclZhbHVlIiwiUHJpY2UyIl0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJzZXJ2aWNlX3ByaWNlIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE2XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJwYWNrYWdlIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE3XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJkZXN0aW5hdGlvbl9jb3VudHJ5IiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE4XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJjbGlja2lkIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDIwXV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJyZWRpcmVjdF90eXBlIiwicGFyYW1ldGVyVmFsdWUiLCJjdGFfb25saW5lIl1dLCJ2dHBfdXNlclByb3BlcnRpZXMiOlsibGlzdCIsWyJtYXAiLCJuYW1lIiwid2ViIiwidmFsdWUiLFsibWFjcm8iLDIwXV1dLCJ2dHBfZXZlbnROYW1lIjoicmVkaXJlY3QiLCJ2dHBfbWVhc3VyZW1lbnRJZE92ZXJyaWRlIjpbIm1hY3JvIiw0XSwidnRwX2VuYWJsZVVzZXJQcm9wZXJ0aWVzIjp0cnVlLCJ2dHBfZW5hYmxlRXVpZCI6dHJ1ZSwidnRwX21pZ3JhdGVkVG9WMiI6dHJ1ZSwidnRwX2RlbW9WMiI6ZmFsc2UsInRhZ19pZCI6NTl9LHsiZnVuY3Rpb24iOiJfX2dhYXdlIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfc2VuZEVjb21tZXJjZURhdGEiOmZhbHNlLCJ2dHBfZXZlbnRTZXR0aW5nc1RhYmxlIjpbImxpc3QiLFsibWFwIiwicGFyYW1ldGVyIiwibGlua191cmwiLCJwYXJhbWV0ZXJWYWx1ZSIsWyJtYWNybyIsMTVdXSxbIm1hcCIsInBhcmFtZXRlciIsInNlcnZpY2VfbmFtZSIsInBhcmFtZXRlclZhbHVlIiwiUHJpY2UzIl1dLCJ2dHBfZXZlbnROYW1lIjoiY3RhX3Bob25lIiwidnRwX21lYXN1cmVtZW50SWRPdmVycmlkZSI6WyJtYWNybyIsNF0sInZ0cF9lbmFibGVVc2VyUHJvcGVydGllcyI6dHJ1ZSwidnRwX2VuYWJsZUV1aWQiOnRydWUsInZ0cF9taWdyYXRlZFRvVjIiOnRydWUsInZ0cF9kZW1vVjIiOmZhbHNlLCJ0YWdfaWQiOjYxfSx7ImZ1bmN0aW9uIjoiX19nYWF3ZSIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX3NlbmRFY29tbWVyY2VEYXRhIjpmYWxzZSwidnRwX2V2ZW50U2V0dGluZ3NUYWJsZSI6WyJsaXN0IixbIm1hcCIsInBhcmFtZXRlciIsImxpbmtfdXJsIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE1XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJzZXJ2aWNlX25hbWUiLCJwYXJhbWV0ZXJWYWx1ZSIsIlByaWNlMiJdXSwidnRwX2V2ZW50TmFtZSI6InBhZ2VfdmlldyIsInZ0cF9tZWFzdXJlbWVudElkT3ZlcnJpZGUiOlsibWFjcm8iLDRdLCJ2dHBfZW5hYmxlVXNlclByb3BlcnRpZXMiOnRydWUsInZ0cF9lbmFibGVFdWlkIjp0cnVlLCJ2dHBfbWlncmF0ZWRUb1YyIjp0cnVlLCJ2dHBfZGVtb1YyIjpmYWxzZSwidGFnX2lkIjo2Mn0seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9ldmVudFNldHRpbmdzVGFibGUiOlsibGlzdCIsWyJtYXAiLCJwYXJhbWV0ZXIiLCJsZWFkX3R5cGUiLCJwYXJhbWV0ZXJWYWx1ZSIsIlpqaXN0aXQgY2VudSJdLFsibWFwIiwicGFyYW1ldGVyIiwiZGVzdGluYXRpb25fY291bnRyeSIsInBhcmFtZXRlclZhbHVlIixbIm1hY3JvIiwxOF1dLFsibWFwIiwicGFyYW1ldGVyIiwicGFja2FnZSIsInBhcmFtZXRlclZhbHVlIixbIm1hY3JvIiwxN11dLFsibWFwIiwicGFyYW1ldGVyIiwicGFja2FnZV93ZWlnaHQiLCJwYXJhbWV0ZXJWYWx1ZSIsWyJtYWNybyIsMjJdXSxbIm1hcCIsInBhcmFtZXRlciIsInNlcnZpY2VfcHJpY2Vfb25saW5lIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDIzXV1dLCJ2dHBfZXZlbnROYW1lIjoiZ2VuZXJhdGVfbGVhZCIsInZ0cF9tZWFzdXJlbWVudElkT3ZlcnJpZGUiOlsibWFjcm8iLDRdLCJ2dHBfZW5hYmxlVXNlclByb3BlcnRpZXMiOnRydWUsInZ0cF9lbmFibGVFdWlkIjp0cnVlLCJ2dHBfbWlncmF0ZWRUb1YyIjp0cnVlLCJ2dHBfZGVtb1YyIjpmYWxzZSwidGFnX2lkIjo3MH0seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9zZW5kRWNvbW1lcmNlRGF0YSI6ZmFsc2UsInZ0cF9ldmVudFNldHRpbmdzVGFibGUiOlsibGlzdCIsWyJtYXAiLCJwYXJhbWV0ZXIiLCJsaW5rX3VybCIsInBhcmFtZXRlclZhbHVlIixbIm1hY3JvIiwxNV1dLFsibWFwIiwicGFyYW1ldGVyIiwic2VydmljZV9uYW1lIiwicGFyYW1ldGVyVmFsdWUiLCJQcmljZTEiXV0sInZ0cF9ldmVudE5hbWUiOiJwYWdlX3ZpZXciLCJ2dHBfbWVhc3VyZW1lbnRJZE92ZXJyaWRlIjpbIm1hY3JvIiw0XSwidnRwX2VuYWJsZVVzZXJQcm9wZXJ0aWVzIjp0cnVlLCJ2dHBfZW5hYmxlRXVpZCI6dHJ1ZSwidnRwX21pZ3JhdGVkVG9WMiI6dHJ1ZSwidnRwX2RlbW9WMiI6ZmFsc2UsInRhZ19pZCI6NzR9LHsiZnVuY3Rpb24iOiJfX2dhYXdlIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfZXZlbnRTZXR0aW5nc1RhYmxlIjpbImxpc3QiLFsibWFwIiwicGFyYW1ldGVyIiwidmlkZW9fdGl0bGUiLCJwYXJhbWV0ZXJWYWx1ZSIsWyJtYWNybyIsMjRdXSxbIm1hcCIsInBhcmFtZXRlciIsInZpZGVvX3VybCIsInBhcmFtZXRlclZhbHVlIixbIm1hY3JvIiwyNV1dLFsibWFwIiwicGFyYW1ldGVyIiwidmlkZW9fcGVyY2VudCIsInBhcmFtZXRlclZhbHVlIixbIm1hY3JvIiwyNl1dXSwidnRwX2V2ZW50TmFtZSI6WyJ0ZW1wbGF0ZSIsInZpZGVvXyIsWyJtYWNybyIsMjddXSwidnRwX21lYXN1cmVtZW50SWRPdmVycmlkZSI6WyJtYWNybyIsNF0sInZ0cF9lbmFibGVVc2VyUHJvcGVydGllcyI6dHJ1ZSwidnRwX2VuYWJsZUV1aWQiOnRydWUsInZ0cF9taWdyYXRlZFRvVjIiOnRydWUsInZ0cF9kZW1vVjIiOmZhbHNlLCJ0YWdfaWQiOjc1fSx7ImZ1bmN0aW9uIjoiX19jdnRfNjA3NjEwMDZfOTYiLCJtZXRhZGF0YSI6WyJtYXAiXSwiY29uc2VudCI6WyJsaXN0IiwiYWRfc3RvcmFnZSJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX2Rpc2FibGVQdXNoU3RhdGUiOmZhbHNlLCJ2dHBfcGl4ZWxJZCI6WyJtYWNybyIsMjhdLCJ2dHBfc3RhbmRhcmRFdmVudE5hbWUiOiJQYWdlVmlldyIsInZ0cF9kaXNhYmxlQXV0b0NvbmZpZyI6ZmFsc2UsInZ0cF9lbmhhbmNlZEVjb21tZXJjZSI6ZmFsc2UsInZ0cF9kcG9MRFUiOmZhbHNlLCJ2dHBfZXZlbnROYW1lIjoic3RhbmRhcmQiLCJ2dHBfb2JqZWN0UHJvcGVydGllc0Zyb21WYXJpYWJsZSI6ZmFsc2UsInZ0cF9jb25zZW50IjpbIm1hY3JvIiwzMF0sInZ0cF9hZHZhbmNlZE1hdGNoaW5nIjpmYWxzZSwidGFnX2lkIjo5N30seyJmdW5jdGlvbiI6Il9fZmxjIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfZW5hYmxlQ29udmVyc2lvbkxpbmtlciI6ZmFsc2UsInZ0cF9lbmhhbmNlZFVzZXJEYXRhIjpmYWxzZSwidnRwX2dyb3VwVGFnIjoiaW52bWVkaWEiLCJ2dHBfdXNlSW1hZ2VUYWciOmZhbHNlLCJ2dHBfYWN0aXZpdHlUYWciOiJhbGxwYTAiLCJ2dHBfb3JkaW5hbFR5cGUiOiJTVEFOREFSRCIsInZ0cF9jb252ZXJzaW9uQ29va2llUHJlZml4IjoiX2djbCIsInZ0cF9hZHZlcnRpc2VySWQiOiIxMTQxODY4OSIsInZ0cF9vcmRpbmFsU3RhbmRhcmQiOlsibWFjcm8iLDMxXSwidnRwX3VybCI6WyJtYWNybyIsMzJdLCJ2dHBfZW5hYmxlR29vZ2xlQXR0cmlidXRpb25PcHRpb25zIjpmYWxzZSwidnRwX3Nob3dDb252ZXJzaW9uTGlua2luZ0NvbnRyb2xzIjp0cnVlLCJ2dHBfZW5hYmxlTWF0Y2hJZFZhcmlhYmxlIjp0cnVlLCJ2dHBfZW5hYmxlU21hcnREZXN0aW5hdGlvbklkIjp0cnVlLCJ2dHBfZW5hYmxlRXZlbnRQYXJhbWV0ZXJzIjpmYWxzZSwidGFnX2lkIjo5OX0seyJmdW5jdGlvbiI6Il9fZmxjIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfZW5hYmxlQ29udmVyc2lvbkxpbmtlciI6ZmFsc2UsInZ0cF9lbmhhbmNlZFVzZXJEYXRhIjpmYWxzZSwidnRwX2dyb3VwVGFnIjoiaW52bWVkaWEiLCJ2dHBfdXNlSW1hZ2VUYWciOmZhbHNlLCJ2dHBfYWN0aXZpdHlUYWciOiJkaGxleDAiLCJ2dHBfb3JkaW5hbFR5cGUiOiJTVEFOREFSRCIsInZ0cF9jb252ZXJzaW9uQ29va2llUHJlZml4IjoiX2djbCIsInZ0cF9hZHZlcnRpc2VySWQiOiIxMTQxODY4OSIsInZ0cF9vcmRpbmFsU3RhbmRhcmQiOlsibWFjcm8iLDMxXSwidnRwX3VybCI6WyJtYWNybyIsMzJdLCJ2dHBfZW5hYmxlR29vZ2xlQXR0cmlidXRpb25PcHRpb25zIjpmYWxzZSwidnRwX3Nob3dDb252ZXJzaW9uTGlua2luZ0NvbnRyb2xzIjp0cnVlLCJ2dHBfZW5hYmxlTWF0Y2hJZFZhcmlhYmxlIjp0cnVlLCJ2dHBfZW5hYmxlU21hcnREZXN0aW5hdGlvbklkIjp0cnVlLCJ2dHBfZW5hYmxlRXZlbnRQYXJhbWV0ZXJzIjpmYWxzZSwidGFnX2lkIjoxMDB9LHsiZnVuY3Rpb24iOiJfX2ZsYyIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX2VuYWJsZUNvbnZlcnNpb25MaW5rZXIiOmZhbHNlLCJ2dHBfZW5oYW5jZWRVc2VyRGF0YSI6ZmFsc2UsInZ0cF9ncm91cFRhZyI6Imludm1lZGlhIiwidnRwX3VzZUltYWdlVGFnIjpmYWxzZSwidnRwX2FjdGl2aXR5VGFnIjoiZGhsZXgwMDEiLCJ2dHBfb3JkaW5hbFR5cGUiOiJTVEFOREFSRCIsInZ0cF9jb252ZXJzaW9uQ29va2llUHJlZml4IjoiX2djbCIsInZ0cF9hZHZlcnRpc2VySWQiOiIxMTQxODY4OSIsInZ0cF9vcmRpbmFsU3RhbmRhcmQiOlsibWFjcm8iLDMxXSwidnRwX3VybCI6WyJtYWNybyIsMzJdLCJ2dHBfZW5hYmxlR29vZ2xlQXR0cmlidXRpb25PcHRpb25zIjpmYWxzZSwidnRwX3Nob3dDb252ZXJzaW9uTGlua2luZ0NvbnRyb2xzIjp0cnVlLCJ2dHBfZW5hYmxlTWF0Y2hJZFZhcmlhYmxlIjp0cnVlLCJ2dHBfZW5hYmxlU21hcnREZXN0aW5hdGlvbklkIjp0cnVlLCJ2dHBfZW5hYmxlRXZlbnRQYXJhbWV0ZXJzIjpmYWxzZSwidGFnX2lkIjoxMDF9LHsiZnVuY3Rpb24iOiJfX2ZsYyIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX2VuYWJsZUNvbnZlcnNpb25MaW5rZXIiOmZhbHNlLCJ2dHBfZW5oYW5jZWRVc2VyRGF0YSI6ZmFsc2UsInZ0cF9ncm91cFRhZyI6Imludm1lZGlhIiwidnRwX3VzZUltYWdlVGFnIjpmYWxzZSwidnRwX2FjdGl2aXR5VGFnIjoiZGhsZXgwMCIsInZ0cF9vcmRpbmFsVHlwZSI6IlNUQU5EQVJEIiwidnRwX2NvbnZlcnNpb25Db29raWVQcmVmaXgiOiJfZ2NsIiwidnRwX2FkdmVydGlzZXJJZCI6IjExNDE4Njg5IiwidnRwX29yZGluYWxTdGFuZGFyZCI6WyJtYWNybyIsMzFdLCJ2dHBfdXJsIjpbIm1hY3JvIiwzMl0sInZ0cF9lbmFibGVHb29nbGVBdHRyaWJ1dGlvbk9wdGlvbnMiOmZhbHNlLCJ2dHBfc2hvd0NvbnZlcnNpb25MaW5raW5nQ29udHJvbHMiOnRydWUsInZ0cF9lbmFibGVNYXRjaElkVmFyaWFibGUiOnRydWUsInZ0cF9lbmFibGVTbWFydERlc3RpbmF0aW9uSWQiOnRydWUsInZ0cF9lbmFibGVFdmVudFBhcmFtZXRlcnMiOmZhbHNlLCJ0YWdfaWQiOjEwM30seyJmdW5jdGlvbiI6Il9fZmxjIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfZW5hYmxlQ29udmVyc2lvbkxpbmtlciI6ZmFsc2UsInZ0cF9lbmhhbmNlZFVzZXJEYXRhIjpmYWxzZSwidnRwX2dyb3VwVGFnIjoiaW52bWVkaWEiLCJ2dHBfdXNlSW1hZ2VUYWciOmZhbHNlLCJ2dHBfYWN0aXZpdHlUYWciOiJkaGxleDAwMCIsInZ0cF9vcmRpbmFsVHlwZSI6IlNUQU5EQVJEIiwidnRwX2NvbnZlcnNpb25Db29raWVQcmVmaXgiOiJfZ2NsIiwidnRwX2FkdmVydGlzZXJJZCI6IjExNDE4Njg5IiwidnRwX29yZGluYWxTdGFuZGFyZCI6WyJtYWNybyIsMzFdLCJ2dHBfdXJsIjpbIm1hY3JvIiwzMl0sInZ0cF9lbmFibGVHb29nbGVBdHRyaWJ1dGlvbk9wdGlvbnMiOmZhbHNlLCJ2dHBfc2hvd0NvbnZlcnNpb25MaW5raW5nQ29udHJvbHMiOnRydWUsInZ0cF9lbmFibGVNYXRjaElkVmFyaWFibGUiOnRydWUsInZ0cF9lbmFibGVTbWFydERlc3RpbmF0aW9uSWQiOnRydWUsInZ0cF9lbmFibGVFdmVudFBhcmFtZXRlcnMiOmZhbHNlLCJ0YWdfaWQiOjEwNH0seyJmdW5jdGlvbiI6Il9fZmxjIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfZW5hYmxlQ29udmVyc2lvbkxpbmtlciI6ZmFsc2UsInZ0cF9lbmhhbmNlZFVzZXJEYXRhIjpmYWxzZSwidnRwX2dyb3VwVGFnIjoiaW52bWVkaWEiLCJ2dHBfdXNlSW1hZ2VUYWciOmZhbHNlLCJ2dHBfYWN0aXZpdHlUYWciOiJkaGxleDAwMiIsInZ0cF9vcmRpbmFsVHlwZSI6IlNUQU5EQVJEIiwidnRwX2NvbnZlcnNpb25Db29raWVQcmVmaXgiOiJfZ2NsIiwidnRwX2FkdmVydGlzZXJJZCI6IjExNDE4Njg5IiwidnRwX29yZGluYWxTdGFuZGFyZCI6WyJtYWNybyIsMzFdLCJ2dHBfdXJsIjpbIm1hY3JvIiwzMl0sInZ0cF9lbmFibGVHb29nbGVBdHRyaWJ1dGlvbk9wdGlvbnMiOmZhbHNlLCJ2dHBfc2hvd0NvbnZlcnNpb25MaW5raW5nQ29udHJvbHMiOnRydWUsInZ0cF9lbmFibGVNYXRjaElkVmFyaWFibGUiOnRydWUsInZ0cF9lbmFibGVTbWFydERlc3RpbmF0aW9uSWQiOnRydWUsInZ0cF9lbmFibGVFdmVudFBhcmFtZXRlcnMiOmZhbHNlLCJ0YWdfaWQiOjEwN30seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9zZW5kRWNvbW1lcmNlRGF0YSI6ZmFsc2UsInZ0cF9ldmVudFNldHRpbmdzVGFibGUiOlsibGlzdCIsWyJtYXAiLCJwYXJhbWV0ZXIiLCJwYWdlX2xvY2F0aW9uIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE1XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJzZXJ2aWNlX25hbWUiLCJwYXJhbWV0ZXJWYWx1ZSIsIlByaWNlMkNvdXJpZXIiXSxbIm1hcCIsInBhcmFtZXRlciIsInNlcnZpY2VfcHJpY2UiLCJwYXJhbWV0ZXJWYWx1ZSIsWyJtYWNybyIsMTZdXSxbIm1hcCIsInBhcmFtZXRlciIsInBhY2thZ2UiLCJwYXJhbWV0ZXJWYWx1ZSIsWyJtYWNybyIsMTddXSxbIm1hcCIsInBhcmFtZXRlciIsImRlc3RpbmF0aW9uX2NvdW50cnkiLCJwYXJhbWV0ZXJWYWx1ZSIsWyJtYWNybyIsMThdXSxbIm1hcCIsInBhcmFtZXRlciIsImNsaWNraWQiLCJwYXJhbWV0ZXJWYWx1ZSIsWyJtYWNybyIsMjBdXSxbIm1hcCIsInBhcmFtZXRlciIsInJlZGlyZWN0X3R5cGUiLCJwYXJhbWV0ZXJWYWx1ZSIsIm9ubGluZV9jb3VyaWVyIl1dLCJ2dHBfdXNlclByb3BlcnRpZXMiOlsibGlzdCIsWyJtYXAiLCJuYW1lIiwid2ViIiwidmFsdWUiLFsibWFjcm8iLDIwXV1dLCJ2dHBfZXZlbnROYW1lIjoicmVkaXJlY3QiLCJ2dHBfbWVhc3VyZW1lbnRJZE92ZXJyaWRlIjpbIm1hY3JvIiw0XSwidnRwX2VuYWJsZVVzZXJQcm9wZXJ0aWVzIjp0cnVlLCJ2dHBfZW5hYmxlRXVpZCI6dHJ1ZSwidnRwX21pZ3JhdGVkVG9WMiI6dHJ1ZSwidnRwX2RlbW9WMiI6ZmFsc2UsInRhZ19pZCI6MTUwfSx7ImZ1bmN0aW9uIjoiX19nYWF3ZSIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX3NlbmRFY29tbWVyY2VEYXRhIjpmYWxzZSwidnRwX2V2ZW50U2V0dGluZ3NUYWJsZSI6WyJsaXN0IixbIm1hcCIsInBhcmFtZXRlciIsInBhZ2VfbG9jYXRpb24iLCJwYXJhbWV0ZXJWYWx1ZSIsWyJtYWNybyIsMTVdXSxbIm1hcCIsInBhcmFtZXRlciIsInNlcnZpY2VfbmFtZSIsInBhcmFtZXRlclZhbHVlIiwiUHJpY2U1Il0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJzZXJ2aWNlX3ByaWNlIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE2XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJwYWNrYWdlIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE3XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJkZXN0aW5hdGlvbl9jb3VudHJ5IiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE4XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJjbGlja2lkIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDIwXV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJyZWRpcmVjdF90eXBlIiwicGFyYW1ldGVyVmFsdWUiLCJjdGFfbG9ja2VyIl1dLCJ2dHBfdXNlclByb3BlcnRpZXMiOlsibGlzdCIsWyJtYXAiLCJuYW1lIiwid2ViIiwidmFsdWUiLFsibWFjcm8iLDIwXV1dLCJ2dHBfZXZlbnROYW1lIjoicmVkaXJlY3QiLCJ2dHBfbWVhc3VyZW1lbnRJZE92ZXJyaWRlIjpbIm1hY3JvIiw0XSwidnRwX2VuYWJsZVVzZXJQcm9wZXJ0aWVzIjp0cnVlLCJ2dHBfZW5hYmxlRXVpZCI6dHJ1ZSwidnRwX21pZ3JhdGVkVG9WMiI6dHJ1ZSwidnRwX2RlbW9WMiI6ZmFsc2UsInRhZ19pZCI6MTUxfSx7ImZ1bmN0aW9uIjoiX19nYWF3ZSIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX3NlbmRFY29tbWVyY2VEYXRhIjpmYWxzZSwidnRwX2V2ZW50U2V0dGluZ3NUYWJsZSI6WyJsaXN0IixbIm1hcCIsInBhcmFtZXRlciIsImxpbmtfdXJsIiwicGFyYW1ldGVyVmFsdWUiLFsibWFjcm8iLDE1XV0sWyJtYXAiLCJwYXJhbWV0ZXIiLCJzZXJ2aWNlX25hbWUiLCJwYXJhbWV0ZXJWYWx1ZSIsIlByaWNlNiJdLFsibWFwIiwicGFyYW1ldGVyIiwic2VydmljZV9wcmljZSIsInBhcmFtZXRlclZhbHVlIixbIm1hY3JvIiwxNl1dXSwidnRwX2V2ZW50TmFtZSI6ImN0YV9kZGkiLCJ2dHBfbWVhc3VyZW1lbnRJZE92ZXJyaWRlIjpbIm1hY3JvIiw0XSwidnRwX2VuYWJsZVVzZXJQcm9wZXJ0aWVzIjp0cnVlLCJ2dHBfZW5hYmxlRXVpZCI6dHJ1ZSwidnRwX21pZ3JhdGVkVG9WMiI6dHJ1ZSwidnRwX2RlbW9WMiI6ZmFsc2UsInRhZ19pZCI6MTUzfSx7ImZ1bmN0aW9uIjoiX19nY2xpZHciLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9lbmFibGVDcm9zc0RvbWFpbiI6ZmFsc2UsInZ0cF9lbmFibGVVcmxQYXNzdGhyb3VnaCI6ZmFsc2UsInZ0cF9lbmFibGVDb29raWVPdmVycmlkZXMiOmZhbHNlLCJ0YWdfaWQiOjE1NH0seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9zZW5kRWNvbW1lcmNlRGF0YSI6ZmFsc2UsInZ0cF9lbmhhbmNlZFVzZXJJZCI6ZmFsc2UsInZ0cF9ldmVudE5hbWUiOiJtYXJrZXRvX2Zvcm1fc2VudCIsInZ0cF9tZWFzdXJlbWVudElkT3ZlcnJpZGUiOlsibWFjcm8iLDRdLCJ2dHBfZW5hYmxlVXNlclByb3BlcnRpZXMiOnRydWUsInZ0cF9lbmFibGVFdWlkIjp0cnVlLCJ2dHBfbWlncmF0ZWRUb1YyIjp0cnVlLCJ2dHBfZGVtb1YyIjpmYWxzZSwidGFnX2lkIjoxNTd9LHsiZnVuY3Rpb24iOiJfX2N2dF82MDc2MTAwNl8xNjAiLCJtZXRhZGF0YSI6WyJtYXAiXSwiY29uc2VudCI6WyJsaXN0IiwiYW5hbHl0aWNzX3N0b3JhZ2UiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9hdXRvdHJhY2siOnRydWUsInZ0cF9sZl90cmFja2VyX2lkIjoiM1AxdzI0ZDI2cms4bVk1biIsInZ0cF9lbmFibGVfZGVidWciOmZhbHNlLCJ2dHBfdHJhY2tpbmdfY29va2llX2R1cmF0aW9uX2RheXMiOiI3MzAiLCJ0YWdfaWQiOjE2MX0seyJmdW5jdGlvbiI6Il9fY3Z0XzYwNzYxMDA2XzUxIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfYWRfc3RvcmFnZSI6WyJtYWNybyIsMzZdLCJ2dHBfYWRzX2RhdGFfcmVkYWN0aW9uIjpmYWxzZSwidnRwX3NlbmREYXRhTGF5ZXIiOnRydWUsInZ0cF9wbGF0Zm9ybV9taWNyb3NvZnQiOmZhbHNlLCJ2dHBfYWRfdXNlcl9kYXRhIjpbIm1hY3JvIiwzNl0sInZ0cF9zZWN1cml0eV9zdG9yYWdlIjoibm90c2V0IiwidnRwX2NvbW1hbmQiOiJ1cGRhdGUiLCJ2dHBfZnVuY3Rpb25hbGl0eV9zdG9yYWdlIjoiZ3JhbnRlZCIsInZ0cF9wZXJzb25hbGl6YXRpb25fc3RvcmFnZSI6Im5vdHNldCIsInZ0cF91cmxfcGFzc3Rocm91Z2giOmZhbHNlLCJ2dHBfYW5hbHl0aWNzX3N0b3JhZ2UiOlsibWFjcm8iLDM2XSwidnRwX2FkX3BlcnNvbmFsaXphdGlvbiI6WyJtYWNybyIsMzZdLCJ0YWdfaWQiOjE4M30seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwiY29uc2VudCI6WyJsaXN0IiwiYW5hbHl0aWNzX3N0b3JhZ2UiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9zZW5kRWNvbW1lcmNlRGF0YSI6ZmFsc2UsInZ0cF9lbmhhbmNlZFVzZXJJZCI6ZmFsc2UsInZ0cF9ldmVudE5hbWUiOiJjb25zZW50X3VwZGF0ZSIsInZ0cF9tZWFzdXJlbWVudElkT3ZlcnJpZGUiOlsibWFjcm8iLDRdLCJ2dHBfZW5hYmxlVXNlclByb3BlcnRpZXMiOnRydWUsInZ0cF9lbmFibGVFdWlkIjp0cnVlLCJ2dHBfbWlncmF0ZWRUb1YyIjp0cnVlLCJ2dHBfZGVtb1YyIjpmYWxzZSwidGFnX2lkIjoxODV9LHsiZnVuY3Rpb24iOiJfX2N2dF9XUDREOCIsIm1ldGFkYXRhIjpbIm1hcCJdLCJzZXR1cF90YWdzIjpbImxpc3QiLFsidGFnIiw2NCwwXV0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfdXNlQ29uc2VudE1vZGUiOmZhbHNlLCJ2dHBfRGF0YURvY3VtZW50TGFuZ3VhZ2UiOnRydWUsInZ0cF9Eb21haW4iOlsidGVtcGxhdGUiLFsibWFjcm8iLDM3XSxbIm1hY3JvIiwzOV1dLCJ2dHBfVVJMIjoiY2RuLmNvb2tpZWxhdy5vcmciLCJ0YWdfaWQiOjE4Nn0seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9zZW5kRWNvbW1lcmNlRGF0YSI6ZmFsc2UsInZ0cF9ldmVudE5hbWUiOiJzbWVfbGVhZF9nZW5lcmF0aW9uXzIiLCJ2dHBfbWVhc3VyZW1lbnRJZE92ZXJyaWRlIjoiRy1DVEJORVpLNTExIiwidnRwX2VuYWJsZVVzZXJQcm9wZXJ0aWVzIjp0cnVlLCJ2dHBfZW5hYmxlRXVpZCI6dHJ1ZSwidnRwX21pZ3JhdGVkVG9WMiI6dHJ1ZSwidnRwX2RlbW9WMiI6ZmFsc2UsInRhZ19pZCI6MTg4fSx7ImZ1bmN0aW9uIjoiX19nYWF3ZSIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX3NlbmRFY29tbWVyY2VEYXRhIjpmYWxzZSwidnRwX2V2ZW50TmFtZSI6InNlbmRfb25saW5lIiwidnRwX21lYXN1cmVtZW50SWRPdmVycmlkZSI6IkctQ1RCTkVaSzUxMSIsInZ0cF9lbmFibGVVc2VyUHJvcGVydGllcyI6dHJ1ZSwidnRwX2VuYWJsZUV1aWQiOnRydWUsInZ0cF9taWdyYXRlZFRvVjIiOnRydWUsInZ0cF9kZW1vVjIiOmZhbHNlLCJ0YWdfaWQiOjE5MH0seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfbG9hZCI6dHJ1ZSwidnRwX3NlbmRFY29tbWVyY2VEYXRhIjpmYWxzZSwidnRwX2V2ZW50TmFtZSI6InNtZV9sZWFkX2dlbmVyYXRpb25fMSIsInZ0cF9tZWFzdXJlbWVudElkT3ZlcnJpZGUiOiJHLUNUQk5FWks1MTEiLCJ2dHBfZW5hYmxlVXNlclByb3BlcnRpZXMiOnRydWUsInZ0cF9lbmFibGVFdWlkIjp0cnVlLCJ2dHBfbWlncmF0ZWRUb1YyIjp0cnVlLCJ2dHBfZGVtb1YyIjpmYWxzZSwidGFnX2lkIjoxOTJ9LHsiZnVuY3Rpb24iOiJfX2dhYXdlIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfc2VuZEVjb21tZXJjZURhdGEiOmZhbHNlLCJ2dHBfZXZlbnROYW1lIjoiU1NfbGVhZF9nZW5lcmF0aW9uX2NhbGwiLCJ2dHBfbWVhc3VyZW1lbnRJZE92ZXJyaWRlIjoiRy1DVEJORVpLNTExIiwidnRwX2VuYWJsZVVzZXJQcm9wZXJ0aWVzIjp0cnVlLCJ2dHBfZW5hYmxlRXVpZCI6dHJ1ZSwidnRwX21pZ3JhdGVkVG9WMiI6dHJ1ZSwidnRwX2RlbW9WMiI6ZmFsc2UsInRhZ19pZCI6MTk0fSx7ImZ1bmN0aW9uIjoiX19nYWF3ZSIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9ldmVudCI6dHJ1ZSwidnRwX3NlbmRFY29tbWVyY2VEYXRhIjpmYWxzZSwidnRwX2V2ZW50TmFtZSI6IlNTX2xlYWRfZ2VuZXJhdGlvbl9jb250YWN0IiwidnRwX21lYXN1cmVtZW50SWRPdmVycmlkZSI6IkctQ1RCTkVaSzUxMSIsInZ0cF9lbmFibGVVc2VyUHJvcGVydGllcyI6dHJ1ZSwidnRwX2VuYWJsZUV1aWQiOnRydWUsInZ0cF9taWdyYXRlZFRvVjIiOnRydWUsInZ0cF9kZW1vVjIiOmZhbHNlLCJ0YWdfaWQiOjE5Nn0seyJmdW5jdGlvbiI6Il9fZ2Fhd2UiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9zZW5kRWNvbW1lcmNlRGF0YSI6ZmFsc2UsInZ0cF9ldmVudE5hbWUiOiJlY29ub215IHNlbGVjdF9sZWFkIiwidnRwX21lYXN1cmVtZW50SWRPdmVycmlkZSI6IkctQ1RCTkVaSzUxMSIsInZ0cF9lbmFibGVVc2VyUHJvcGVydGllcyI6dHJ1ZSwidnRwX2VuYWJsZUV1aWQiOnRydWUsInZ0cF9taWdyYXRlZFRvVjIiOnRydWUsInZ0cF9kZW1vVjIiOmZhbHNlLCJ0YWdfaWQiOjIwMn0seyJmdW5jdGlvbiI6Il9fY2wiLCJ0YWdfaWQiOjIwM30seyJmdW5jdGlvbiI6Il9fbGNsIiwidnRwX3dhaXRGb3JUYWdzIjpmYWxzZSwidnRwX2NoZWNrVmFsaWRhdGlvbiI6ZmFsc2UsInZ0cF91bmlxdWVUcmlnZ2VySWQiOiI2MDc2MTAwNl8zMSIsInRhZ19pZCI6MjA0fSx7ImZ1bmN0aW9uIjoiX19jbCIsInRhZ19pZCI6MjA1fSx7ImZ1bmN0aW9uIjoiX19sY2wiLCJ2dHBfd2FpdEZvclRhZ3MiOmZhbHNlLCJ2dHBfY2hlY2tWYWxpZGF0aW9uIjpmYWxzZSwidnRwX3VuaXF1ZVRyaWdnZXJJZCI6IjYwNzYxMDA2XzM3IiwidGFnX2lkIjoyMDZ9LHsiZnVuY3Rpb24iOiJfX2xjbCIsInZ0cF93YWl0Rm9yVGFncyI6ZmFsc2UsInZ0cF9jaGVja1ZhbGlkYXRpb24iOmZhbHNlLCJ2dHBfdW5pcXVlVHJpZ2dlcklkIjoiNjA3NjEwMDZfNDQiLCJ0YWdfaWQiOjIwN30seyJmdW5jdGlvbiI6Il9fbGNsIiwidnRwX3dhaXRGb3JUYWdzIjpmYWxzZSwidnRwX2NoZWNrVmFsaWRhdGlvbiI6ZmFsc2UsInZ0cF91bmlxdWVUcmlnZ2VySWQiOiI2MDc2MTAwNl80OSIsInRhZ19pZCI6MjA4fSx7ImZ1bmN0aW9uIjoiX19sY2wiLCJ2dHBfd2FpdEZvclRhZ3MiOmZhbHNlLCJ2dHBfY2hlY2tWYWxpZGF0aW9uIjpmYWxzZSwidnRwX3VuaXF1ZVRyaWdnZXJJZCI6IjYwNzYxMDA2XzYwIiwidGFnX2lkIjoyMDl9LHsiZnVuY3Rpb24iOiJfX2xjbCIsInZ0cF93YWl0Rm9yVGFncyI6ZmFsc2UsInZ0cF9jaGVja1ZhbGlkYXRpb24iOmZhbHNlLCJ2dHBfdW5pcXVlVHJpZ2dlcklkIjoiNjA3NjEwMDZfNjMiLCJ0YWdfaWQiOjIxMH0seyJmdW5jdGlvbiI6Il9feXRsIiwidnRwX3Byb2dyZXNzVGhyZXNob2xkc1BlcmNlbnQiOiIxMCwyNSw1MCw3NSwxMDAiLCJ2dHBfY2FwdHVyZUNvbXBsZXRlIjp0cnVlLCJ2dHBfY2FwdHVyZVN0YXJ0Ijp0cnVlLCJ2dHBfZml4TWlzc2luZ0FwaSI6dHJ1ZSwidnRwX3RyaWdnZXJTdGFydE9wdGlvbiI6IkRPTV9SRUFEWSIsInZ0cF9yYWRpb0J1dHRvbkdyb3VwMSI6IlBFUkNFTlRBR0UiLCJ2dHBfY2FwdHVyZVBhdXNlIjp0cnVlLCJ2dHBfY2FwdHVyZVByb2dyZXNzIjp0cnVlLCJ2dHBfdW5pcXVlVHJpZ2dlcklkIjoiNjA3NjEwMDZfNjYiLCJ2dHBfZW5hYmxlVHJpZ2dlclN0YXJ0T3B0aW9uIjp0cnVlLCJ0YWdfaWQiOjIxMX0seyJmdW5jdGlvbiI6Il9fdGciLCJ2dHBfdHJpZ2dlcklkcyI6WyJsaXN0IiwiNjA3NjEwMDZfMTM5XzEzOCIsIjYwNzYxMDA2XzEzOV85OCJdLCJ2dHBfdW5pcXVlVHJpZ2dlcklkIjoiNjA3NjEwMDZfMTM5IiwidGFnX2lkIjoyMTJ9LHsiZnVuY3Rpb24iOiJfX3RnIiwidnRwX2lzTGlzdGVuaW5nVGFnIjp0cnVlLCJ2dHBfZmlyaW5nSWQiOiI2MDc2MTAwNl8xMzlfMTM4IiwidGFnX2lkIjoyMTN9LHsiZnVuY3Rpb24iOiJfX3RnIiwidnRwX2lzTGlzdGVuaW5nVGFnIjp0cnVlLCJ2dHBfZmlyaW5nSWQiOiI2MDc2MTAwNl8xMzlfOTgiLCJ0YWdfaWQiOjIxNX0seyJmdW5jdGlvbiI6Il9fbGNsIiwidnRwX3dhaXRGb3JUYWdzIjpmYWxzZSwidnRwX2NoZWNrVmFsaWRhdGlvbiI6ZmFsc2UsInZ0cF91bmlxdWVUcmlnZ2VySWQiOiI2MDc2MTAwNl8xNDgiLCJ0YWdfaWQiOjIxNn0seyJmdW5jdGlvbiI6Il9fbGNsIiwidnRwX3dhaXRGb3JUYWdzIjpmYWxzZSwidnRwX2NoZWNrVmFsaWRhdGlvbiI6ZmFsc2UsInZ0cF91bmlxdWVUcmlnZ2VySWQiOiI2MDc2MTAwNl8xNDkiLCJ0YWdfaWQiOjIxN30seyJmdW5jdGlvbiI6Il9fbGNsIiwidnRwX3dhaXRGb3JUYWdzIjpmYWxzZSwidnRwX2NoZWNrVmFsaWRhdGlvbiI6ZmFsc2UsInZ0cF91bmlxdWVUcmlnZ2VySWQiOiI2MDc2MTAwNl8xNTIiLCJ0YWdfaWQiOjIxOH0seyJmdW5jdGlvbiI6Il9fZXZsIiwidnRwX3VzZU9uU2NyZWVuRHVyYXRpb24iOmZhbHNlLCJ2dHBfdXNlRG9tQ2hhbmdlTGlzdGVuZXIiOnRydWUsInZ0cF9lbGVtZW50U2VsZWN0b3IiOiJidXR0b24ubWt0b0J1dHRvbjpkaXNhYmxlZCIsInZ0cF9maXJpbmdGcmVxdWVuY3kiOiJPTkNFIiwidnRwX3NlbGVjdG9yVHlwZSI6IkNTUyIsInZ0cF9vblNjcmVlblJhdGlvIjoiMSIsInZ0cF91bmlxdWVUcmlnZ2VySWQiOiI2MDc2MTAwNl8xNTYiLCJ0YWdfaWQiOjIxOX0seyJmdW5jdGlvbiI6Il9fdGciLCJ2dHBfdHJpZ2dlcklkcyI6WyJsaXN0IiwiNjA3NjEwMDZfMTY1XzEwOCIsIjYwNzYxMDA2XzE2NV8xNjQiXSwidnRwX3VuaXF1ZVRyaWdnZXJJZCI6IjYwNzYxMDA2XzE2NSIsInRhZ19pZCI6MjIwfSx7ImZ1bmN0aW9uIjoiX190ZyIsInZ0cF9pc0xpc3RlbmluZ1RhZyI6dHJ1ZSwidnRwX2ZpcmluZ0lkIjoiNjA3NjEwMDZfMTY1XzEwOCIsInRhZ19pZCI6MjIxfSx7ImZ1bmN0aW9uIjoiX190ZyIsInZ0cF9pc0xpc3RlbmluZ1RhZyI6dHJ1ZSwidnRwX2ZpcmluZ0lkIjoiNjA3NjEwMDZfMTY1XzE2NCIsInRhZ19pZCI6MjIzfSx7ImZ1bmN0aW9uIjoiX190ZyIsInZ0cF90cmlnZ2VySWRzIjpbImxpc3QiLCI2MDc2MTAwNl8xNjhfMTA4IiwiNjA3NjEwMDZfMTY4XzE2NyJdLCJ2dHBfdW5pcXVlVHJpZ2dlcklkIjoiNjA3NjEwMDZfMTY4IiwidGFnX2lkIjoyMjR9LHsiZnVuY3Rpb24iOiJfX3RnIiwidnRwX2lzTGlzdGVuaW5nVGFnIjp0cnVlLCJ2dHBfZmlyaW5nSWQiOiI2MDc2MTAwNl8xNjhfMTA4IiwidGFnX2lkIjoyMjV9LHsiZnVuY3Rpb24iOiJfX3RnIiwidnRwX2lzTGlzdGVuaW5nVGFnIjp0cnVlLCJ2dHBfZmlyaW5nSWQiOiI2MDc2MTAwNl8xNjhfMTY3IiwidGFnX2lkIjoyMjd9LHsiZnVuY3Rpb24iOiJfX2V2bCIsInZ0cF91c2VPblNjcmVlbkR1cmF0aW9uIjpmYWxzZSwidnRwX3VzZURvbUNoYW5nZUxpc3RlbmVyIjp0cnVlLCJ2dHBfZWxlbWVudFNlbGVjdG9yIjoiLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MiLCJ2dHBfZmlyaW5nRnJlcXVlbmN5IjoiT05DRSIsInZ0cF9zZWxlY3RvclR5cGUiOiJDU1MiLCJ2dHBfb25TY3JlZW5SYXRpbyI6IjEiLCJ2dHBfdW5pcXVlVHJpZ2dlcklkIjoiNjA3NjEwMDZfMTg3IiwidGFnX2lkIjoyMjh9LHsiZnVuY3Rpb24iOiJfX2NsIiwidGFnX2lkIjoyMjl9LHsiZnVuY3Rpb24iOiJfX2NsIiwidGFnX2lkIjoyMzB9LHsiZnVuY3Rpb24iOiJfX2NsIiwidGFnX2lkIjoyMzF9LHsiZnVuY3Rpb24iOiJfX2NsIiwidGFnX2lkIjoyMzJ9LHsiZnVuY3Rpb24iOiJfX2V2bCIsInZ0cF91c2VPblNjcmVlbkR1cmF0aW9uIjpmYWxzZSwidnRwX3VzZURvbUNoYW5nZUxpc3RlbmVyIjp0cnVlLCJ2dHBfZWxlbWVudFNlbGVjdG9yIjoiZGl2LmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MiLCJ2dHBfZmlyaW5nRnJlcXVlbmN5IjoiT05DRSIsInZ0cF9zZWxlY3RvclR5cGUiOiJDU1MiLCJ2dHBfb25TY3JlZW5SYXRpbyI6IjEiLCJ2dHBfdW5pcXVlVHJpZ2dlcklkIjoiNjA3NjEwMDZfMjAxIiwidGFnX2lkIjoyMzN9LHsiZnVuY3Rpb24iOiJfX2h0bWwiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfZXZlbnQiOnRydWUsInZ0cF9odG1sIjoiXHUwMDNDc2NyaXB0IHR5cGU9XCJ0ZXh0XC9ndG1zY3JpcHRcIlx1MDAzRShmdW5jdGlvbihhKXthKGRvY3VtZW50KS5hamF4U3RvcChmdW5jdGlvbihiKXtkYXRhTGF5ZXIucHVzaCh7ZXZlbnQ6XCJhamF4U3RvcFwifSl9KX0pKGpRdWVyeSk7XHUwMDNDXC9zY3JpcHRcdTAwM0UiLCJ2dHBfc3VwcG9ydERvY3VtZW50V3JpdGUiOmZhbHNlLCJ2dHBfZW5hYmxlSWZyYW1lTW9kZSI6ZmFsc2UsInZ0cF9lbmFibGVFZGl0SnNNYWNyb0JlaGF2aW9yIjpmYWxzZSwidGFnX2lkIjo3M30seyJmdW5jdGlvbiI6Il9faHRtbCIsIm1ldGFkYXRhIjpbIm1hcCJdLCJvbmNlX3Blcl9sb2FkIjp0cnVlLCJ2dHBfaHRtbCI6Ilx1MDAzQ3NjcmlwdCB0eXBlPVwidGV4dFwvZ3Rtc2NyaXB0XCJcdTAwM0UkKFwiLmVtYmVkLWFjdGl2YXRvci5vcHRhbm9uLVlPVTAxIFxceDNlIGJ1dHRvblwiKS5vbihcImNsaWNrXCIsZnVuY3Rpb24oYSl7T25lVHJ1c3QuVXBkYXRlQ29uc2VudChcIkNhdGVnb3J5XCIsXCJZT1UwMToxXCIpfSk7XHUwMDNDXC9zY3JpcHRcdTAwM0UiLCJ2dHBfc3VwcG9ydERvY3VtZW50V3JpdGUiOmZhbHNlLCJ2dHBfZW5hYmxlSWZyYW1lTW9kZSI6ZmFsc2UsInZ0cF9lbmFibGVFZGl0SnNNYWNyb0JlaGF2aW9yIjpmYWxzZSwidGFnX2lkIjoxNzB9LHsiZnVuY3Rpb24iOiJfX2h0bWwiLCJtZXRhZGF0YSI6WyJtYXAiXSwib25jZV9wZXJfbG9hZCI6dHJ1ZSwidnRwX2h0bWwiOiJcdTAwM0NzY3JpcHQgdHlwZT1cInRleHRcL2d0bXNjcmlwdFwiXHUwMDNFJChcIi5lbWJlZC1hY3RpdmF0b3Iub3B0YW5vbi1NQVAwMSBcXHgzZSBidXR0b25cIikub24oXCJjbGlja1wiLGZ1bmN0aW9uKGEpe09uZVRydXN0LlVwZGF0ZUNvbnNlbnQoXCJDYXRlZ29yeVwiLFwiTUFQMDE6MVwiKX0pO1x1MDAzQ1wvc2NyaXB0XHUwMDNFIiwidnRwX3N1cHBvcnREb2N1bWVudFdyaXRlIjpmYWxzZSwidnRwX2VuYWJsZUlmcmFtZU1vZGUiOmZhbHNlLCJ2dHBfZW5hYmxlRWRpdEpzTWFjcm9CZWhhdmlvciI6ZmFsc2UsInRhZ19pZCI6MTc2fSx7ImZ1bmN0aW9uIjoiX19odG1sIiwibWV0YWRhdGEiOlsibWFwIl0sInZ0cF9odG1sIjoiXG5cdTAwM0NzY3JpcHQgdHlwZT1cInRleHRcL2d0bXNjcmlwdFwiXHUwMDNFdmFyIF9wYXE9d2luZG93Ll9wYXE9d2luZG93Ll9wYXF8fFtdO19wYXEucHVzaChbXCJ0cmFja1BhZ2VWaWV3XCJdKTtfcGFxLnB1c2goW1wiZW5hYmxlTGlua1RyYWNraW5nXCJdKTsoZnVuY3Rpb24oKXt2YXIgYT1cImh0dHBzOlwvXC9kaGxleHByZXNzYmcubWF0b21vLmNsb3VkXC9cIjtfcGFxLnB1c2goW1wic2V0VHJhY2tlclVybFwiLGErXCJtYXRvbW8ucGhwXCJdKTtfcGFxLnB1c2goW1wic2V0U2l0ZUlkXCIsXCIxXCJdKTt2YXIgYj1kb2N1bWVudDthPWIuY3JlYXRlRWxlbWVudChcInNjcmlwdFwiKTtiPWIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoXCJzY3JpcHRcIilbMF07YS5hc3luYz0hMDthLnNyYz1cImh0dHBzOlwvXC9jZG4ubWF0b21vLmNsb3VkXC9kaGxleHByZXNzYmcubWF0b21vLmNsb3VkXC9tYXRvbW8uanNcIjtiLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGEsYil9KSgpO1x1MDAzQ1wvc2NyaXB0XHUwMDNFXG5cbiIsInZ0cF9zdXBwb3J0RG9jdW1lbnRXcml0ZSI6ZmFsc2UsInZ0cF9lbmFibGVJZnJhbWVNb2RlIjpmYWxzZSwidnRwX2VuYWJsZUVkaXRKc01hY3JvQmVoYXZpb3IiOmZhbHNlLCJ0YWdfaWQiOjE3OX0seyJmdW5jdGlvbiI6Il9fY3Z0XzYwNzYxMDA2XzUxIiwibWV0YWRhdGEiOlsibWFwIl0sIm9uY2VfcGVyX2V2ZW50Ijp0cnVlLCJ2dHBfZWVhIjpmYWxzZSwidnRwX3dhaXRfZm9yX3VwZGF0ZSI6IjIwMDAiLCJ2dHBfcmVnaW9ucyI6ImFsbCIsInZ0cF9zZW5kRGF0YUxheWVyIjpmYWxzZSwidnRwX2NvbW1hbmQiOiJkZWZhdWx0IiwidnRwX2Z1bmN0aW9uYWxpdHlfc3RvcmFnZSI6ImdyYW50ZWQiLCJ2dHBfdXJsX3Bhc3N0aHJvdWdoIjpmYWxzZSwidnRwX2FkX3N0b3JhZ2UiOiJkZW5pZWQiLCJ2dHBfYWRzX2RhdGFfcmVkYWN0aW9uIjpmYWxzZSwidnRwX3BsYXRmb3JtX21pY3Jvc29mdCI6ZmFsc2UsInZ0cF9hZF91c2VyX2RhdGEiOiJkZW5pZWQiLCJ2dHBfc2VjdXJpdHlfc3RvcmFnZSI6Im5vdHNldCIsInZ0cF9wZXJzb25hbGl6YXRpb25fc3RvcmFnZSI6ImRlbmllZCIsInZ0cF9hbmFseXRpY3Nfc3RvcmFnZSI6ImRlbmllZCIsInZ0cF9hZF9wZXJzb25hbGl6YXRpb24iOiJkZW5pZWQiLCJ0YWdfaWQiOjE4NH1dLAogICJwcmVkaWNhdGVzIjpbeyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmpzIn0seyJmdW5jdGlvbiI6Il9yZSIsImFyZzAiOlsibWFjcm8iLDEwXSwiYXJnMSI6Il5zZXJ2aWNlcG9pbnRfaXRlbV8ifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG0uY2xpY2sifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMTNdLCJhcmcxIjoicHJpY2luZ19yZXN1bHRzX19zZXJ2aWNlMl9ob3d0b3NlbmQifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG0ubGlua0NsaWNrIn0seyJmdW5jdGlvbiI6Il9yZSIsImFyZzAiOlsibWFjcm8iLDE0XSwiYXJnMSI6IiheJHwoKF58LCk2MDc2MTAwNl8zNygkfCwpKSkifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMTNdLCJhcmcxIjoicHJpY2luZ19yZXN1bHRzX19zZXJ2aWNlMV9jdGEifSx7ImZ1bmN0aW9uIjoiX3JlIiwiYXJnMCI6WyJtYWNybyIsMTRdLCJhcmcxIjoiKF4kfCgoXnwsKTYwNzYxMDA2XzQ5KCR8LCkpKSJ9LHsiZnVuY3Rpb24iOiJfZXEiLCJhcmcwIjpbIm1hY3JvIiwxM10sImFyZzEiOiJwcmljaW5nX3Jlc3VsdHNfX3NlcnZpY2UyX2N0YSJ9LHsiZnVuY3Rpb24iOiJfcmUiLCJhcmcwIjpbIm1hY3JvIiwxNF0sImFyZzEiOiIoXiR8KChefCwpNjA3NjEwMDZfMzEoJHwsKSkpIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDEzXSwiYXJnMSI6InByaWNpbmdfcmVzdWx0c19fc2VydmljZTNfY3RhIn0seyJmdW5jdGlvbiI6Il9yZSIsImFyZzAiOlsibWFjcm8iLDE0XSwiYXJnMSI6IiheJHwoKF58LCk2MDc2MTAwNl82MCgkfCwpKSkifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMTNdLCJhcmcxIjoicHJpY2luZ19yZXN1bHRzX19zZXJ2aWNlMl9zZWFyY2hwb2ludCJ9LHsiZnVuY3Rpb24iOiJfcmUiLCJhcmcwIjpbIm1hY3JvIiwxNF0sImFyZzEiOiIoXiR8KChefCwpNjA3NjEwMDZfNDQoJHwsKSkpIn0seyJmdW5jdGlvbiI6Il9jbiIsImFyZzAiOlsibWFjcm8iLDEzXSwiYXJnMSI6InByaWNpbmdfZm9ybV9fc3VibWl0In0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDIxXSwiYXJnMSI6InRydWUifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJhamF4U3RvcCJ9LHsiZnVuY3Rpb24iOiJfZXEiLCJhcmcwIjpbIm1hY3JvIiwxM10sImFyZzEiOiJwcmljaW5nX3Jlc3VsdHNfX3NlcnZpY2UxX2hvd3Rvc2VuZCJ9LHsiZnVuY3Rpb24iOiJfcmUiLCJhcmcwIjpbIm1hY3JvIiwxNF0sImFyZzEiOiIoXiR8KChefCwpNjA3NjEwMDZfNjMoJHwsKSkpIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLnZpZGVvIn0seyJmdW5jdGlvbiI6Il9yZSIsImFyZzAiOlsibWFjcm8iLDE0XSwiYXJnMSI6IiheJHwoKF58LCk2MDc2MTAwNl82NigkfCwpKSkifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG1fY29uc2VudF91cGRhdGUifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG0uZG9tIn0seyJmdW5jdGlvbiI6Il9jbiIsImFyZzAiOlsibWFjcm8iLDMzXSwiYXJnMSI6InpkcmF2bmEtcHJvdmVya2FcLz9jZmRfdG9rZW4ifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMTNdLCJhcmcxIjoicHJpY2luZ19yZXN1bHRzX19zZXJ2aWNlNF9jdGEifSx7ImZ1bmN0aW9uIjoiX3JlIiwiYXJnMCI6WyJtYWNybyIsMTRdLCJhcmcxIjoiKF4kfCgoXnwsKTYwNzYxMDA2XzE0OSgkfCwpKSkifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMTNdLCJhcmcxIjoicHJpY2luZ19yZXN1bHRzX19zZXJ2aWNlNV9jdGEifSx7ImZ1bmN0aW9uIjoiX3JlIiwiYXJnMCI6WyJtYWNybyIsMTRdLCJhcmcxIjoiKF4kfCgoXnwsKTYwNzYxMDA2XzE0OCgkfCwpKSkifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMTNdLCJhcmcxIjoicHJpY2luZ19yZXN1bHRzX19zZXJ2aWNlNl9jdGEifSx7ImZ1bmN0aW9uIjoiX3JlIiwiYXJnMCI6WyJtYWNybyIsMTRdLCJhcmcxIjoiKF4kfCgoXnwsKTYwNzYxMDA2XzE1MigkfCwpKSkifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG0udHJpZ2dlckdyb3VwIn0seyJmdW5jdGlvbiI6Il9yZSIsImFyZzAiOlsibWFjcm8iLDE0XSwiYXJnMSI6IiheJHwoKF58LCk2MDc2MTAwNl8xMzkoJHwsKSkpIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmVsZW1lbnRWaXNpYmlsaXR5In0seyJmdW5jdGlvbiI6Il9yZSIsImFyZzAiOlsibWFjcm8iLDE0XSwiYXJnMSI6IiheJHwoKF58LCk2MDc2MTAwNl8xNTYoJHwsKSkpIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiT25lVHJ1c3RHcm91cHNVcGRhdGVkIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmluaXRfY29uc2VudCJ9LHsiZnVuY3Rpb24iOiJfY24iLCJhcmcwIjpbIm1hY3JvIiwzM10sImFyZzEiOiJlLWNvbW1lcmNlXC9iZy1lLWNvbW1lcmNlLWl6bGV6LW5hLW1lemR5bmFyb2RueWphLXBhemFyIn0seyJmdW5jdGlvbiI6Il9yZSIsImFyZzAiOlsibWFjcm8iLDE0XSwiYXJnMSI6IiheJHwoKF58LCk2MDc2MTAwNl8xODcoJHwsKSkpIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDQwXSwiYXJnMSI6ItCY0JfQn9Cg0JDQotCYINCf0KDQkNCi0JrQkCDQntCd0JvQkNCZ0J0ifSx7ImZ1bmN0aW9uIjoiX2NuIiwiYXJnMCI6WyJtYWNybyIsMzNdLCJhcmcxIjoiZS1jb21tZXJjZVwvZm9ybWEtcG9wbHZhbmUtbmEtYnl6bmVzLWFrYXVudCJ9LHsiZnVuY3Rpb24iOiJfY24iLCJhcmcwIjpbIm1hY3JvIiw0MF0sImFyZzEiOiLQn9C+0LTQsNCy0LDQvdC1In0seyJmdW5jdGlvbiI6Il9jbiIsImFyZzAiOlsibWFjcm8iLDMzXSwiYXJnMSI6ImRvcGxueXRlbG55LXVzbHVneS15LXByb21vY3l5XC9kb3Bsbnl0ZWxueS11c2x1Z3lcLyJ9LHsiZnVuY3Rpb24iOiJfY24iLCJhcmcwIjpbIm1hY3JvIiw0MF0sImFyZzEiOiLQodCy0YrRgNC20LXRgtC1INGB0LUg0YEg0L3QsNGBIn0seyJmdW5jdGlvbiI6Il9jbiIsImFyZzAiOlsibWFjcm8iLDQwXSwiYXJnMSI6ItCY0LfQv9GA0LDRgtC10YLQtSDQt9Cw0L/QuNGC0LLQsNC90LUifSx7ImZ1bmN0aW9uIjoiX2NuIiwiYXJnMCI6WyJtYWNybyIsMzNdLCJhcmcxIjoiZG9wbG55dGVsbnktdXNsdWd5LXktcHJvbW9jeXlcL2RobC1lY29ub215LXNlbGVjdCJ9LHsiZnVuY3Rpb24iOiJfcmUiLCJhcmcwIjpbIm1hY3JvIiwxNF0sImFyZzEiOiIoXiR8KChefCwpNjA3NjEwMDZfMjAxKCR8LCkpKSJ9LHsiZnVuY3Rpb24iOiJfZXEiLCJhcmcwIjpbIm1hY3JvIiwwXSwiYXJnMSI6Imd0bS5sb2FkIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDQxXSwiYXJnMSI6ImRlbmllZCJ9LHsiZnVuY3Rpb24iOiJfcmUiLCJhcmcwIjpbIm1hY3JvIiwwXSwiYXJnMSI6Ii4qIn0seyJmdW5jdGlvbiI6Il9jbiIsImFyZzAiOlsibWFjcm8iLDQyXSwiYXJnMSI6ImRlbmllZCJ9LHsiZnVuY3Rpb24iOiJfcmUiLCJhcmcwIjpbIm1hY3JvIiwxNF0sImFyZzEiOiIoXiR8KChefCwpNjA3NjEwMDZfMTY1KCR8LCkpKSJ9LHsiZnVuY3Rpb24iOiJfcmUiLCJhcmcwIjpbIm1hY3JvIiwxNF0sImFyZzEiOiIoXiR8KChefCwpNjA3NjEwMDZfMTY4KCR8LCkpKSJ9XSwKICAicnVsZXMiOltbWyJpZiIsMF0sWyJhZGQiLDAsMzIsMzMsMzQsMzUsMzYsMzcsMzgsMzksNDEsNDQsNDUsNDYsNDcsNDgsNTEsNTQsNTUsNTYsNTcsNTgsNTksNjNdXSxbWyJpZiIsMSwyXSxbImFkZCIsMSwxNF1dLFtbImlmIiwzLDQsNV0sWyJhZGQiLDJdXSxbWyJpZiIsNCw2LDddLFsiYWRkIiwzLDE0XV0sW1siaWYiLDQsOCw5XSxbImFkZCIsNCwxNV1dLFtbImlmIiw0LDEwLDExXSxbImFkZCIsNSwxM11dLFtbImlmIiw0LDEyLDEzXSxbImFkZCIsNl1dLFtbImlmIiwxNCwxNSwxNl0sWyJhZGQiLDddXSxbWyJpZiIsNCwxNywxOF0sWyJhZGQiLDhdXSxbWyJpZiIsMTksMjBdLFsiYWRkIiw5XV0sW1siaWYiLDIxXSxbImFkZCIsMTAsMjIsMjQsNDJdXSxbWyJpZiIsMjJdLFsiYWRkIiwxMSw0Myw0MF1dLFtbImlmIiwyLDE0LDE1XSxbImFkZCIsMTJdXSxbWyJpZiIsMCwyM10sWyJhZGQiLDE2XV0sW1siaWYiLDQsMjQsMjVdLFsiYWRkIiwxN11dLFtbImlmIiw0LDI2LDI3XSxbImFkZCIsMThdXSxbWyJpZiIsNCwyOCwyOV0sWyJhZGQiLDE5XV0sW1siaWYiLDMwLDMxXSxbImFkZCIsMjBdXSxbWyJpZiIsMzIsMzNdLFsiYWRkIiwyMV1dLFtbImlmIiwzNF0sWyJhZGQiLDIzXV0sW1siaWYiLDM1XSxbImFkZCIsMjVdXSxbWyJpZiIsMzIsMzYsMzddLFsiYWRkIiwyNl1dLFtbImlmIiwyLDM4XSxbImFkZCIsMjddXSxbWyJpZiIsMiwzOSw0MF0sWyJhZGQiLDI4XV0sW1siaWYiLDIsNDEsNDJdLFsiYWRkIiwyOV1dLFtbImlmIiwyLDQxLDQzXSxbImFkZCIsMzBdXSxbWyJpZiIsMzIsNDQsNDVdLFsiYWRkIiwzMV1dLFtbImlmIiw0Nl0sWyJhZGQiLDQ5LDUyLDYwXV0sW1siaWYiLDQ3LDQ4XSxbImFkZCIsNTBdXSxbWyJpZiIsNDgsNDldLFsiYWRkIiw1M11dLFtbImlmIiwzMCw1MF0sWyJhZGQiLDYxXV0sW1siaWYiLDMwLDUxXSxbImFkZCIsNjJdXV0KfSwKInJ1bnRpbWUiOlsgWzUwLCJfX2N2dF82MDc2MTAwNl8xNjAiLFs0NiwiYSJdLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW5qZWN0U2NyaXB0Il1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiY3JlYXRlQXJndW1lbnRzUXVldWUiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJlbmNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJlIiwidjFfIl0sWzUyLCJmIixbMzksWzEyLFsyLFsxNyxbMTUsImEiXSwibGZfdHJhY2tlcl9pZCJdLCJpbmRleE9mIixbNyxbMTUsImUiXV1dLDBdLFsxNyxbMTUsImUiXSwibGVuZ3RoIl0sMF1dLFs1MiwiZyIsWzIsWzIsWzE3LFsxNSwiYSJdLCJsZl90cmFja2VyX2lkIl0sInN1YnN0cmluZyIsWzcsWzE1LCJmIl1dXSwicmVwbGFjZSIsWzcsIl9kZWJ1ZyIsIiJdXV0sWzUyLCJoIixbImMiLCJsZGZkciIsImxkZmRyLl9xIl1dLFsiaCIsImNmZyIsImVuYWJsZUF1dG9UcmFja2luZyIsWzE3LFsxNSwiYSJdLCJhdXRvdHJhY2siXSxbMTUsImciXV0sWyJoIiwiY2ZnIiwidHJhY2tpbmdDb29raWVEdXJhdGlvbkRheXMiLFsxNyxbMTUsImEiXSwidHJhY2tpbmdfY29va2llX2R1cmF0aW9uX2RheXMiXSxbMTUsImciXV0sWzUyLCJpIixbMzAsWzE3LFsxNSwiYSJdLCJlbmFibGVfZGVidWciXSxbMTksWzIsWzE3LFsxNSwiYSJdLCJsZl90cmFja2VyX2lkIl0sImluZGV4T2YiLFs3LCJfZGVidWciXV0sMF1dXSxbNTIsImoiLFswLFswLFswLCJodHRwczovL3NjLmxmZWVkZXIuY29tL2xmdHJhY2tlcl92MV8iLFsiZCIsWzE1LCJnIl1dXSxbMzksWzE1LCJpIl0sIl9kZWJ1ZyIsIiJdXSwiLmpzIl1dLFsiYiIsWzE1LCJqIl0sWzE3LFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiXSxbMTcsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSJdXV0KICxbNTAsIl9fY3Z0XzYwNzYxMDA2XzE2MiIsWzQ2LCJhIl0sWzUwLCJmIixbNDYsImoiXSxbNTIsImsiLFs4LCJ0cnVlIixbMzksWzIwLFsxNyxbMTUsImEiXSwiaW5kaXZpZHVhbENvbnNlbnRPdXRwdXQiXSwiY29uc2VudF9tb2RlIl0sImdyYW50ZWQiLCJ0cnVlIl0sImZhbHNlIixbMzksWzIwLFsxNyxbMTUsImEiXSwiaW5kaXZpZHVhbENvbnNlbnRPdXRwdXQiXSwiY29uc2VudF9tb2RlIl0sImRlbmllZCIsImZhbHNlIl1dXSxbMjIsWzIwLFsxNyxbMTUsImEiXSwicmV0dXJuVHlwZSJdLCJzZWxlY3RlZCJdLFs0NixbMzYsWzM5LFsxOCxbMTcsWzIsWzE1LCJqIl0sImZpbHRlciIsWzcsWzUxLCIiLFs3LCJsIl0sWzM2LFsyMCxbMTYsWzIsWzE1LCJsIl0sInNwbGl0IixbNywiOiJdXSwwXSxbMTcsWzE1LCJhIl0sInNlbGVjdGVkR3JvdXAiXV1dXV1dLCJsZW5ndGgiXSwwXSxbMTYsWzE1LCJrIl0sInRydWUiXSxbMTYsWzE1LCJrIl0sImZhbHNlIl1dXV1dLFsyMixbMjAsWzE3LFsxNSwiYSJdLCJvdXRwdXRUeXBlIl0sInN0cmluZyJdLFs0NixbMzYsWzIsWzE1LCJqIl0sImpvaW4iLFs3LCIsIl1dXV1dLFszNixbMTUsImoiXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwibG9nVG9Db25zb2xlIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiZ2V0Q29va2llVmFsdWVzIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiY29weUZyb21EYXRhTGF5ZXIiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJjb3B5RnJvbVdpbmRvdyJdXSxbNTIsImciLFszMCxbMzAsWzMwLFsiZSIsIk9uZXRydXN0QWN0aXZlR3JvdXBzIl0sWyJlIiwiT3B0YW5vbkFjdGl2ZUdyb3VwcyJdXSxbImQiLCJPbmV0cnVzdEFjdGl2ZUdyb3VwcyJdXSxbImQiLCJPcHRhbm9uQWN0aXZlR3JvdXBzIl1dXSxbMjIsWzEsWzIwLFs0MCxbMTUsImciXV0sInN0cmluZyJdLFsxOCxbMTcsWzE1LCJnIl0sImxlbmd0aCJdLDBdXSxbNDYsWzUzLFs1MiwiaiIsWzIsWzIsWzIsWzE1LCJnIl0sInNwbGl0IixbNywiLCJdXSwiZmlsdGVyIixbNyxbNTEsIiIsWzcsImsiXSxbMzYsWzE4LFsxNyxbMTUsImsiXSwibGVuZ3RoIl0sMF1dXV1dLCJtYXAiLFs3LFs1MSwiIixbNywiayJdLFszNixbMCxbMTUsImsiXSwiOjEiXV1dXV1dLFsyMixbMTgsWzE3LFsxNSwiaiJdLCJsZW5ndGgiXSwwXSxbNDYsWzM2LFsiZiIsWzE1LCJqIl1dXV1dXV1dLFs1MiwiaCIsWzE2LFsiYyIsIk9wdGFub25Db25zZW50Iix0cnVlXSwwXV0sWzIyLFsxLFsyMCxbNDAsWzE1LCJoIl1dLCJzdHJpbmciXSxbMTgsWzIsWzE1LCJoIl0sImluZGV4T2YiLFs3LCJncm91cHM9Il1dLFsyNywxXV1dLFs0NixbNTMsWzUyLCJqIixbMixbMixbMTUsImgiXSwic3BsaXQiLFs3LCImIl1dLCJmaWx0ZXIiLFs3LFs1MSwiIixbNywiayJdLFszNixbMzAsWzMwLFsyMCxbMixbMTUsImsiXSwiaW5kZXhPZiIsWzcsImdyb3Vwcz0iXV0sMF0sWzIwLFsyLFsxNSwiayJdLCJpbmRleE9mIixbNywiZ2VuVmVuZG9ycz0iXV0sMF1dLFsyMCxbMixbMTUsImsiXSwiaW5kZXhPZiIsWzcsImhvc3RzPSJdXSwwXV1dXV1dXSxbMjIsWzE4LFsxNyxbMTUsImoiXSwibGVuZ3RoIl0sMF0sWzQ2LFs1MyxbNTIsImsiLFsyLFsyLFsxNSwiaiJdLCJtYXAiLFs3LFs1MSwiIixbNywibSJdLFs1MiwibiIsWzIsWzE1LCJtIl0sInNwbGl0IixbNywiPSJdXV0sWzM2LFszOSxbMTYsWzE1LCJuIl0sMV0sWzE2LFsxNSwibiJdLDFdLCIiXV1dXV0sImpvaW4iLFs3LCIsIl1dXSxbNTIsImwiLFszOSxbMTUsImsiXSxbMixbMTUsImsiXSwic3BsaXQiLFs3LCIsIl1dLFs0NV1dXSxbMjIsWzE1LCJsIl0sWzQ2LFs1MyxbNTIsIm0iLFsyLFsxNSwibCJdLCJmaWx0ZXIiLFs3LFs1MSwiIixbNywibiJdLFszNixbMjAsWzE2LFsyLFsxNSwibiJdLCJzcGxpdCIsWzcsIjoiXV0sMV0sIjEiXV1dXV1dLFsyMixbMTgsWzE3LFsxNSwibSJdLCJsZW5ndGgiXSwwXSxbNDYsWzM2LFsiZiIsWzE1LCJtIl1dXV1dXV1dXV1dXV1dLFs1MiwiaSIsWzE3LFsxNSwiYSJdLCJkZWZhdWx0R3JvdXBzIl1dLFsyMixbMSxbMTUsImkiXSxbMTgsWzE3LFsxNSwiaSJdLCJsZW5ndGgiXSwwXV0sWzQ2LFs1MyxbNTIsImoiLFsyLFsxNSwiaSJdLCJtYXAiLFs3LFs1MSwiIixbNywiayJdLFszNixbMCxbMTYsWzIsWzE3LFsxNSwiayJdLCJncm91cCJdLCJzcGxpdCIsWzcsIjoiXV0sMF0sIjoxIl1dXV1dXSxbMzYsWyJmIixbMTUsImoiXV1dXV1dLFszNixbImYiLFs3XV1dXQogLFs1MCwiX19jdnRfNjA3NjEwMDZfNTEiLFs0NiwiYSJdLFs1MiwiYiIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFsicmVxdWlyZSIsImNyZWF0ZVF1ZXVlIl1dLFsiJDAiLCJkYXRhTGF5ZXIiXV1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiZ3RhZ1NldCJdXSxbNTIsImQiLFsicmVxdWlyZSIsImxvZ1RvQ29uc29sZSJdXSxbNTIsImUiLFsicmVxdWlyZSIsIm1ha2VOdW1iZXIiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJtYWtlVGFibGVNYXAiXV0sWzUyLCJnIixbInJlcXVpcmUiLCJzZXREZWZhdWx0Q29uc2VudFN0YXRlIl1dLFs1MiwiaCIsWyJyZXF1aXJlIiwidXBkYXRlQ29uc2VudFN0YXRlIl1dLFs1MiwiaSIsWzcsIkFUIiwiQkUiLCJCRyIsIkhSIiwiQ1kiLCJDWiIsIkRLIiwiRUUiLCJGSSIsIkZSIiwiREUiLCJHUiIsIkhVIiwiSUUiLCJJVCIsIkxWIiwiTFQiLCJMVSIsIk1UIiwiTkwiLCJQTCIsIlBUIiwiUk8iLCJTSyIsIlNJIiwiRVMiLCJTRSIsIk5PIiwiSVMiLCJMSSJdXSxbNTIsImoiLFszMCxbMTcsWzE1LCJhIl0sInJlZ2lvbnMiXSxbMTcsWzE1LCJhIl0sInJlZ2lvbnNFRUEiXV1dLFs1MiwiayIsWzM5LFsyMCxbMTcsWzE1LCJhIl0sImNvbW1hbmQiXSwiZGVmYXVsdCJdLFsxNSwiZyJdLFsxNSwiaCJdXV0sWzUyLCJsIixbOF1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJhZF9zdG9yYWdlIl0sIm5vdHNldCJdLFs0NixbNDMsWzE1LCJsIl0sImFkX3N0b3JhZ2UiLFsxNyxbMTUsImEiXSwiYWRfc3RvcmFnZSJdXV1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJhbmFseXRpY3Nfc3RvcmFnZSJdLCJub3RzZXQiXSxbNDYsWzQzLFsxNSwibCJdLCJhbmFseXRpY3Nfc3RvcmFnZSIsWzE3LFsxNSwiYSJdLCJhbmFseXRpY3Nfc3RvcmFnZSJdXV1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJhZF91c2VyX2RhdGEiXSwibm90c2V0Il0sWzQ2LFs0MyxbMTUsImwiXSwiYWRfdXNlcl9kYXRhIixbMTcsWzE1LCJhIl0sImFkX3VzZXJfZGF0YSJdXV1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJhZF9wZXJzb25hbGl6YXRpb24iXSwibm90c2V0Il0sWzQ2LFs0MyxbMTUsImwiXSwiYWRfcGVyc29uYWxpemF0aW9uIixbMTcsWzE1LCJhIl0sImFkX3BlcnNvbmFsaXphdGlvbiJdXV1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJwZXJzb25hbGl6YXRpb25fc3RvcmFnZSJdLCJub3RzZXQiXSxbNDYsWzQzLFsxNSwibCJdLCJwZXJzb25hbGl6YXRpb25fc3RvcmFnZSIsWzE3LFsxNSwiYSJdLCJwZXJzb25hbGl6YXRpb25fc3RvcmFnZSJdXV1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJmdW5jdGlvbmFsaXR5X3N0b3JhZ2UiXSwibm90c2V0Il0sWzQ2LFs0MyxbMTUsImwiXSwiZnVuY3Rpb25hbGl0eV9zdG9yYWdlIixbMTcsWzE1LCJhIl0sImZ1bmN0aW9uYWxpdHlfc3RvcmFnZSJdXV1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJzZWN1cml0eV9zdG9yYWdlIl0sIm5vdHNldCJdLFs0NixbNDMsWzE1LCJsIl0sInNlY3VyaXR5X3N0b3JhZ2UiLFsxNyxbMTUsImEiXSwic2VjdXJpdHlfc3RvcmFnZSJdXV1dLFsyMixbMSxbMjAsWzE3LFsxNSwiYSJdLCJjb21tYW5kIl0sImRlZmF1bHQiXSxbMTgsWyJlIixbMTcsWzE1LCJhIl0sIndhaXRfZm9yX3VwZGF0ZSJdXSwwXV0sWzQ2LFs0MyxbMTUsImwiXSwid2FpdF9mb3JfdXBkYXRlIixbImUiLFsxNyxbMTUsImEiXSwid2FpdF9mb3JfdXBkYXRlIl1dXV1dLFsyMixbMSxbMjAsWzE3LFsxNSwiYSJdLCJjb21tYW5kIl0sImRlZmF1bHQiXSxbMjEsWzE1LCJqIl0sImFsbCJdXSxbNDYsWzUzLFs0MSwibSJdLFszLCJtIixbMixbMixbMTUsImoiXSwic3BsaXQiLFs3LCIsIl1dLCJtYXAiLFs3LFs1MSwiIixbNywibiJdLFszNixbMixbMTUsIm4iXSwidHJpbSIsWzddXV1dXV1dLFsyMixbMTgsWzIsWzE1LCJtIl0sImluZGV4T2YiLFs3LCJlZWEiXV0sWzI3LDFdXSxbNDYsWzMsIm0iLFsyLFsxNSwibSJdLCJjb25jYXQiLFs3LFsxNSwiaSJdXV1dLFszLCJtIixbMixbMTUsIm0iXSwiZmlsdGVyIixbNyxbNTEsIiIsWzcsIm4iLCJvIl0sWzM2LFsxLFsyMCxbMixbMTUsIm0iXSwiaW5kZXhPZiIsWzcsWzE1LCJuIl1dXSxbMTUsIm8iXV0sWzIxLFsxNSwibiJdLCJlZWEiXV1dXV1dXV1dLFs0MyxbMTUsImwiXSwicmVnaW9uIixbMTUsIm0iXV1dXV0sWyJjIixbOCwidXJsX3Bhc3N0aHJvdWdoIixbMzAsWzE3LFsxNSwiYSJdLCJ1cmxfcGFzc3Rocm91Z2giXSxmYWxzZV0sImFkc19kYXRhX3JlZGFjdGlvbiIsWzMwLFsxNyxbMTUsImEiXSwiYWRzX2RhdGFfcmVkYWN0aW9uIl0sZmFsc2VdXV0sWyJrIixbMTUsImwiXV0sWzIyLFsxNyxbMTUsImEiXSwicGxhdGZvcm1fbWljcm9zb2Z0Il0sWzQ2LFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWyJyZXF1aXJlIiwiY3JlYXRlUXVldWUiXV0sWyIkMCIsInVldHEiXV1dLFsiJDAiLCJjb25zZW50IixbMTcsWzE1LCJhIl0sImNvbW1hbmQiXSxbOCwiYWRfc3RvcmFnZSIsWzE3LFsxNSwiYSJdLCJhZF9zdG9yYWdlIl1dXV1dXSxbMjIsWzE3LFsxNSwiYSJdLCJzZW5kRGF0YUxheWVyIl0sWzQ2LFs0MyxbMTUsImwiXSwiZXZlbnQiLFswLCJndG1fY29uc2VudF8iLFsxNyxbMTUsImEiXSwiY29tbWFuZCJdXV0sWyJiIixbMTUsImwiXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jdnRfNjA3NjEwMDZfOTYiLFs0NiwiYSJdLFs1MiwiYiIsWyJyZXF1aXJlIiwiY3JlYXRlUXVldWUiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJjYWxsSW5XaW5kb3ciXV0sWzUyLCJkIixbInJlcXVpcmUiLCJhbGlhc0luV2luZG93Il1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiY29weUZyb21XaW5kb3ciXV0sWzUyLCJmIixbInJlcXVpcmUiLCJzZXRJbldpbmRvdyJdXSxbNTIsImciLFsicmVxdWlyZSIsImluamVjdFNjcmlwdCJdXSxbNTIsImgiLFsicmVxdWlyZSIsIm1ha2VUYWJsZU1hcCJdXSxbNTIsImkiLFsicmVxdWlyZSIsIm1ha2VOdW1iZXIiXV0sWzUyLCJqIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiayIsWyJyZXF1aXJlIiwiY29weUZyb21EYXRhTGF5ZXIiXV0sWzUyLCJsIixbInJlcXVpcmUiLCJNYXRoIl1dLFs1MiwibSIsWyJyZXF1aXJlIiwibG9nVG9Db25zb2xlIl1dLFs1MiwibiIsWzMwLFsiZSIsIl9mYnFfZ3RtX2lkcyJdLFs3XV1dLFs1MiwibyIsWzE3LFsxNSwiYSJdLCJwaXhlbElkIl1dLFs1MiwicCIsWzcsIkFkZFBheW1lbnRJbmZvIiwiQWRkVG9DYXJ0IiwiQWRkVG9XaXNobGlzdCIsIkNvbXBsZXRlUmVnaXN0cmF0aW9uIiwiQ29udGFjdCIsIkN1c3RvbWl6ZVByb2R1Y3QiLCJEb25hdGUiLCJGaW5kTG9jYXRpb24iLCJJbml0aWF0ZUNoZWNrb3V0IiwiTGVhZCIsIlBhZ2VWaWV3IiwiUHVyY2hhc2UiLCJTY2hlZHVsZSIsIlNlYXJjaCIsIlN0YXJ0VHJpYWwiLCJTdWJtaXRBcHBsaWNhdGlvbiIsIlN1YnNjcmliZSIsIlZpZXdDb250ZW50Il1dLFs1MiwicSIsWyJrIiwiZWNvbW1lcmNlIiwxXV0sWzUyLCJyIixbNTEsIiIsWzcsImFHIl0sWyJtIixbMTUsImFHIl1dLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV1dXSxbNTIsInMiLFs1MSwiIixbNywiYUciLCJhSCJdLFs1NSwiYUkiLFsxNSwiYUgiXSxbNDYsWzIyLFsyLFsxNSwiYUgiXSwiaGFzT3duUHJvcGVydHkiLFs3LFsxNSwiYUkiXV1dLFs0NixbNDMsWzE1LCJhRyJdLFsxNSwiYUkiXSxbMTYsWzE1LCJhSCJdLFsxNSwiYUkiXV1dXV1dXSxbMzYsWzE1LCJhRyJdXV1dLFs1MiwidCIsWzUxLCIiLFs3LCJhRyJdLFszNixbOCwiaWQiLFsxNyxbMTUsImFHIl0sImlkIl0sInF1YW50aXR5IixbMTcsWzE1LCJhRyJdLCJxdWFudGl0eSJdXV1dXSxbNDEsInUiLCJ2IiwidyJdLFsyMixbMTcsWzE1LCJhIl0sImVuaGFuY2VkRWNvbW1lcmNlIl0sWzQ2LFsyMixbMjgsWzE1LCJxIl1dLFs0NixbMzYsWyJyIiwiRmFjZWJvb2sgUGl4ZWw6IE5vIHZhbGlkIFwiZWNvbW1lcmNlXCIgb2JqZWN0IGZvdW5kIGluIGRhdGFMYXllciJdXV1dLFsyMixbMTcsWzE1LCJxIl0sImRldGFpbCJdLFs0NixbMywidSIsIlZpZXdDb250ZW50Il0sWzMsInYiLCJkZXRhaWwiXV0sWzQ2LFsyMixbMTcsWzE1LCJxIl0sImFkZCJdLFs0NixbMywidSIsIkFkZFRvQ2FydCJdLFszLCJ2IiwiYWRkIl1dLFs0NixbMjIsWzE3LFsxNSwicSJdLCJjaGVja291dCJdLFs0NixbMywidSIsIkluaXRpYXRlQ2hlY2tvdXQiXSxbMywidiIsImNoZWNrb3V0Il1dLFs0NixbMjIsWzE3LFsxNSwicSJdLCJwdXJjaGFzZSJdLFs0NixbMywidSIsIlB1cmNoYXNlIl0sWzMsInYiLCJwdXJjaGFzZSJdXSxbNDYsWzM2LFsiciIsIkZhY2Vib29rIFBpeGVsOiBNb3N0IHJlY2VudGx5IHB1c2hlZCBcImVjb21tZXJjZVwiIG9iamVjdCBtdXN0IGJlIG9uZSBvZiB0eXBlcyBcImRldGFpbFwiLCBcImFkZFwiLCBcImNoZWNrb3V0XCIgb3IgXCJwdXJjaGFzZVwiLiJdXV1dXV1dXV1dLFsyMixbMzAsWzI4LFsxNyxbMTYsWzE1LCJxIl0sWzE1LCJ2Il1dLCJwcm9kdWN0cyJdXSxbMjEsWyJqIixbMTcsWzE2LFsxNSwicSJdLFsxNSwidiJdXSwicHJvZHVjdHMiXV0sImFycmF5Il1dLFs0NixbMzYsWyJyIiwiRmFjZWJvb2sgcGl4ZWw6IE1vc3QgcmVjZW50bHkgcHVzaGVkIFwiZWNvbW1lcmNlXCIgb2JqZWN0IGRpZCBub3QgaGF2ZSBhIHZhbGlkIFwicHJvZHVjdHNcIiBhcnJheS4iXV1dXSxbMywidyIsWzgsImNvbnRlbnRfdHlwZSIsInByb2R1Y3QiLCJjb250ZW50cyIsWzIsWzE3LFsxNixbMTUsInEiXSxbMTUsInYiXV0sInByb2R1Y3RzIl0sIm1hcCIsWzcsWzE1LCJ0Il1dXSwidmFsdWUiLFsyLFsxNyxbMTYsWzE1LCJxIl0sWzE1LCJ2Il1dLCJwcm9kdWN0cyJdLCJyZWR1Y2UiLFs3LFs1MSwiIixbNywiYUciLCJhSCJdLFs1MiwiYUkiLFsxMCxbMixbMTUsImwiXSwicm91bmQiLFs3LFsyNixbMjYsWyJpIixbMzAsWzE3LFsxNSwiYUgiXSwicHJpY2UiXSwwXV0sWzMwLFsxNyxbMTUsImFIIl0sInF1YW50aXR5Il0sMV1dLDEwMF1dXSwxMDBdXSxbMzYsWzAsWzE1LCJhRyJdLFsxNSwiYUkiXV1dXSwwXV0sImN1cnJlbmN5IixbMzAsWzE3LFsxNSwicSJdLCJjdXJyZW5jeUNvZGUiXSwiVVNEIl1dXSxbMjIsWzE4LFsyLFs3LCJJbml0aWF0ZUNoZWNrb3V0IiwiUHVyY2hhc2UiXSwiaW5kZXhPZiIsWzcsWzE1LCJ1Il1dXSxbMjcsMV1dLFs0NixbNDMsWzE1LCJ3Il0sIm51bV9pdGVtcyIsWzIsWzE3LFsxNixbMTUsInEiXSxbMTUsInYiXV0sInByb2R1Y3RzIl0sInJlZHVjZSIsWzcsWzUxLCIiLFs3LCJhRyIsImFIIl0sWzM2LFswLFsxNSwiYUciXSxbImkiLFszMCxbMTcsWzE1LCJhSCJdLCJxdWFudGl0eSJdLDFdXV1dXSwwXV1dXV1dXSxbNTIsIngiLFszOSxbMSxbMTcsWzE1LCJhIl0sImFkdmFuY2VkTWF0Y2hpbmdMaXN0Il0sWzE3LFsxNyxbMTUsImEiXSwiYWR2YW5jZWRNYXRjaGluZ0xpc3QiXSwibGVuZ3RoIl1dLFsiaCIsWzE3LFsxNSwiYSJdLCJhZHZhbmNlZE1hdGNoaW5nTGlzdCJdLCJuYW1lIiwidmFsdWUiXSxbOF1dXSxbNTIsInkiLFszOSxbMSxbMTcsWzE1LCJhIl0sIm9iamVjdFByb3BlcnR5TGlzdCJdLFsxNyxbMTcsWzE1LCJhIl0sIm9iamVjdFByb3BlcnR5TGlzdCJdLCJsZW5ndGgiXV0sWyJoIixbMTcsWzE1LCJhIl0sIm9iamVjdFByb3BlcnR5TGlzdCJdLCJuYW1lIiwidmFsdWUiXSxbOF1dXSxbNTIsInoiLFszOSxbMjAsWyJqIixbMTcsWzE1LCJhIl0sIm9iamVjdFByb3BlcnRpZXNGcm9tVmFyaWFibGUiXV0sIm9iamVjdCJdLFsxNyxbMTUsImEiXSwib2JqZWN0UHJvcGVydGllc0Zyb21WYXJpYWJsZSJdLFs4XV1dLFs1MiwiYUEiLFsicyIsWzE1LCJ6Il0sWzE1LCJ5Il1dXSxbNTIsImFCIixbInMiLFszMCxbMTUsInciXSxbOF1dLFsxNSwiYUEiXV1dLFszLCJ1IixbMzAsWzE1LCJ1Il0sWzM5LFsyMCxbMTcsWzE1LCJhIl0sImV2ZW50TmFtZSJdLCJjdXN0b20iXSxbMTcsWzE1LCJhIl0sImN1c3RvbUV2ZW50TmFtZSJdLFszOSxbMjAsWzE3LFsxNSwiYSJdLCJldmVudE5hbWUiXSwidmFyaWFibGUiXSxbMTcsWzE1LCJhIl0sInZhcmlhYmxlRXZlbnROYW1lIl0sWzE3LFsxNSwiYSJdLCJzdGFuZGFyZEV2ZW50TmFtZSJdXV1dXSxbNTIsImFDIixbMzksWzIwLFsyLFsxNSwicCJdLCJpbmRleE9mIixbNyxbMTUsInUiXV1dLFsyNywxXV0sInRyYWNrU2luZ2xlQ3VzdG9tIiwidHJhY2tTaW5nbGUiXV0sWzUyLCJhRCIsWzM5LFsyMCxbMTcsWzE1LCJhIl0sImNvbnNlbnQiXSxmYWxzZV0sInJldm9rZSIsImdyYW50Il1dLFs1MiwiYUUiLFs1MSwiIixbN10sWzQxLCJhRyJdLFszLCJhRyIsWyJlIiwiZmJxIl1dLFsyMixbMTUsImFHIl0sWzQ2LFszNixbMTUsImFHIl1dXV0sWyJmIiwiZmJxIixbNTEsIiIsWzddLFs1MiwiYUgiLFsiZSIsImZicS5jYWxsTWV0aG9kLmFwcGx5Il1dLFsyMixbMTUsImFIIl0sWzQ2LFsiYyIsImZicS5jYWxsTWV0aG9kLmFwcGx5IixbNDVdLFsxNSwiYXJndW1lbnRzIl1dXSxbNDYsWyJjIiwiZmJxLnF1ZXVlLnB1c2giLFsxNSwiYXJndW1lbnRzIl1dXV1dXSxbImQiLCJfZmJxIiwiZmJxIl0sWyJiIiwiZmJxLnF1ZXVlIl0sWzM2LFsiZSIsImZicSJdXV1dLFs1MiwiYUYiLFsiYUUiXV0sWyJhRiIsImNvbnNlbnQiLFsxNSwiYUQiXV0sWzIyLFsxNyxbMTUsImEiXSwiZHBvTERVIl0sWzQ2LFsiYUYiLCJkYXRhUHJvY2Vzc2luZ09wdGlvbnMiLFs3LCJMRFUiXSxbImkiLFsxNyxbMTUsImEiXSwiZHBvQ291bnRyeSJdXSxbImkiLFsxNyxbMTUsImEiXSwiZHBvU3RhdGUiXV1dXV0sWzIsWzIsWzE1LCJvIl0sInNwbGl0IixbNywiLCJdXSwiZm9yRWFjaCIsWzcsWzUxLCIiLFs3LCJhRyJdLFsyMixbMjAsWzIsWzE1LCJuIl0sImluZGV4T2YiLFs3LFsxNSwiYUciXV1dLFsyNywxXV0sWzQ2LFsyMixbMTcsWzE1LCJhIl0sImRpc2FibGVBdXRvQ29uZmlnIl0sWzQ2LFsiYUYiLCJzZXQiLCJhdXRvQ29uZmlnIixmYWxzZSxbMTUsImFHIl1dXV0sWzIyLFsxNyxbMTUsImEiXSwiZGlzYWJsZVB1c2hTdGF0ZSJdLFs0NixbImYiLCJmYnEuZGlzYWJsZVB1c2hTdGF0ZSIsdHJ1ZV1dXSxbImFGIiwiaW5pdCIsWzE1LCJhRyJdLFsxNSwieCJdXSxbImFGIiwic2V0IiwiYWdlbnQiLCJ0bVNpbW8tR1RNLVdlYlRlbXBsYXRlIixbMTUsImFHIl1dLFsyLFsxNSwibiJdLCJwdXNoIixbNyxbMTUsImFHIl1dXSxbImYiLCJfZmJxX2d0bV9pZHMiLFsxNSwibiJdLHRydWVdXV0sWzIyLFsxNyxbMTUsImEiXSwiZXZlbnRJZCJdLFs0NixbImFGIixbMTUsImFDIl0sWzE1LCJhRyJdLFsxNSwidSJdLFsxNSwiYUIiXSxbOCwiZXZlbnRJRCIsWzE3LFsxNSwiYSJdLCJldmVudElkIl1dXV0sWzQ2LFsiYUYiLFsxNSwiYUMiXSxbMTUsImFHIl0sWzE1LCJ1Il0sWzE1LCJhQiJdXV1dXV1dLFsiZyIsImh0dHBzOi8vY29ubmVjdC5mYWNlYm9vay5uZXQvZW5fVVMvZmJldmVudHMuanMiLFsxNyxbMTUsImEiXSwiZ3RtT25TdWNjZXNzIl0sWzE3LFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiXSwiZmJQaXhlbCJdXQogLFs1MCwiX19jdnRfV1A0RDgiLFs0NiwiYSJdLFs1MCwidSIsWzQ2XSxbNTIsInkiLFsiZyIsIk9uZVRydXN0LkdldERvbWFpbkRhdGEiXV0sWzUyLCJ6IixbMTcsWzE3LFsxNSwieSJdLCJHb29nbGVDb25zZW50Il0sIkdDRW5hYmxlIl1dLFsyMixbMTUsInoiXSxbNDYsWyJiIixbMTUsIm4iXSwiTk9USUNFOiBVc2luZyBjYXRlZ29yeSBtYXBwaW5ncyBpbnNpZGUgb2YgT25lVHJ1c3QgaW5zdGVhZCBvZiBpbiBHVE0uIE1hcHBpbmcgaW4gR1RNIHdpbGwgYmUgaWdub3JlZC4iXSxbImciLCJPbmVUcnVzdC5VcGRhdGVHQ00iLFs1MSwiIixbN11dXSxbMzZdXV0sWzUyLCJhQSIsWyJoIiwiT25ldHJ1c3RBY3RpdmVHcm91cHMiXV0sWzUyLCJhQiIsWzIsWzE1LCJhQSJdLCJzcGxpdCIsWzcsIiwiXV1dLFs0MSwiYUMiXSxbMywiYUMiLFs4XV0sWzIsWzE3LFsxNSwiYSJdLCJnY21NYXBwaW5nIl0sImZvckVhY2giLFs3LFs1MSwiIixbNywiYUQiXSxbMjIsWzI4LFsxNyxbMTUsImFEIl0sIm9uZVRydXN0Q2F0SWQiXV0sWzQ2LFsiYiIsWzE1LCJuIl0sWzAsWzAsIlNraXBwaW5nIHVwZGF0ZSBmb3IiLFsxNyxbMTUsImFEIl0sImdjbUNhdGVnb3J5Il1dLCJiZWNhdXNlIGEgdmFsaWQgT25lVHJ1c3QgSUQgd2FzIG5vdCBwcm92aWRlZCBpbiBHVE0uIl1dLFszNl1dXSxbNDMsWzE1LCJhQyJdLFsxNyxbMTUsImFEIl0sImdjbUNhdGVnb3J5Il0sWyJ2IixbMTgsWzIsWzE1LCJhQiJdLCJpbmRleE9mIixbNyxbMTcsWzE1LCJhRCJdLCJvbmVUcnVzdENhdElkIl1dXSxbMjcsMV1dXV1dXV0sWyJiIixbMTUsIm4iXSwiVXBkYXRpbmcgR29vZ2xlIENvbnNlbnQgTW9kZSIsWzE1LCJhQyJdXSxbImYiLFsxNSwiYUMiXV1dLFs1MCwidiIsWzQ2LCJ5Il0sWzM2LFszOSxbMTUsInkiXSxbMTcsWzE1LCJzIl0sImdyYW50ZWQiXSxbMTcsWzE1LCJzIl0sImRlbmllZCJdXV1dLFs1MCwidyIsWzQ2LCJ5IiwieiJdLFszNixbInYiLFsxOCxbMixbMTUsInkiXSwiaW5kZXhPZiIsWzcsWzAsWzE1LCJ6Il0sIjoxIl1dXSxbMjcsMV1dXV1dLFs1MCwieCIsWzQ2LCJ5Il0sWzM2LFsyLFsyLFsyLFsxNSwieSJdLCJzcGxpdCIsWzcsIiwiXV0sIm1hcCIsWzcsWzUxLCIiLFs3LCJ6Il0sWzM2LFsyLFsyLFsxNSwieiJdLCJ0cmltIixbN11dLCJ0b1VwcGVyQ2FzZSIsWzddXV1dXV0sImZpbHRlciIsWzcsWzUxLCIiLFs3LCJ6Il0sWzM2LFsyOSxbMTUsInoiXSwiIl1dXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJsb2dUb0NvbnNvbGUiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJzZXREZWZhdWx0Q29uc2VudFN0YXRlIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW5qZWN0U2NyaXB0Il1dLFs1MiwiZSIsWyJyZXF1aXJlIiwicXVlcnlQZXJtaXNzaW9uIl1dLFs1MiwiZiIsWyJyZXF1aXJlIiwidXBkYXRlQ29uc2VudFN0YXRlIl1dLFs1MiwiZyIsWyJyZXF1aXJlIiwiY2FsbEluV2luZG93Il1dLFs1MiwiaCIsWyJyZXF1aXJlIiwiY29weUZyb21XaW5kb3ciXV0sWzUyLCJpIixbInJlcXVpcmUiLCJjYWxsTGF0ZXIiXV0sWzUyLCJqIixbInJlcXVpcmUiLCJzZXRJbldpbmRvdyJdXSxbNTIsImsiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImwiLFsicmVxdWlyZSIsImdldENvb2tpZVZhbHVlcyJdXSxbNTIsIm0iLFsicmVxdWlyZSIsImd0YWdTZXQiXV0sWzUyLCJuIiwiT1QuQ01QID4iXSxbNDEsIm8iXSxbMywibyIsWzE3LFsxNSwiYSJdLCJEb21haW4iXV0sWzQxLCJwIl0sWzMsInAiLFswLFswLFswLCJodHRwczovLyIsWzE3LFsxNSwiYSJdLCJVUkwiXV0sIi9zY3JpcHR0ZW1wbGF0ZXMvb3RTREtTdHViLmpzP2RpZD0iXSxbMTcsWzE1LCJhIl0sIkRvbWFpbiJdXV0sWzIyLFsxNyxbMTUsImEiXSwiRGF0YURvY3VtZW50TGFuZ3VhZ2UiXSxbNDYsWzMsInAiLFswLFsxNSwicCJdLCImZGF0YS1kb2N1bWVudC1sYW5ndWFnZT10cnVlIl1dXV0sWzQxLCJxIl0sWzMsInEiLFswLFswLFswLFswLCJodHRwczovLyIsWzE3LFsxNSwiYSJdLCJVUkwiXV0sIi9jb25zZW50LyJdLFsxNyxbMTUsImEiXSwiRG9tYWluIl1dLCIvT3RBdXRvQmxvY2suanMiXV0sWzUyLCJyIixbOCwiZG9tYWluSWQiLFsxNSwibyJdLCJzdHViVVJMIixbMTUsInAiXV1dLFsibSIsImRldmVsb3Blcl9pZC5kWVdKaE1qIix0cnVlXSxbImIiLFsxNSwibiJdLCJTY3JpcHQgRGF0YSB0byBsb2FkIixbMTUsInIiXV0sWzUyLCJzIixbOCwiZGVuaWVkIiwiZGVuaWVkIiwiZ3JhbnRlZCIsImdyYW50ZWQiXV0sWzUyLCJ0IixbOCwiZGVuaWVkIiwiT2ZmIGJ5IGRlZmF1bHQiLCJncmFudGVkIiwiT24gYnkgZGVmYXVsdCIsImdsb2JhbCIsIlVzZSBnbG9iYWwgZGVmYXVsdCJdXSxbMjIsWzE3LFsxNSwiYSJdLCJ1c2VDb25zZW50TW9kZSJdLFs0NixbNTMsWyJiIixbMTUsIm4iXSwiU2V0dGluZyB1cCBHb29nbGUgQ29uc2VudCBNb2RlIGRlZmF1bHRzLiJdLFs0MSwieSJdLFszLCJ5IixbOCwid2FpdF9mb3JfdXBkYXRlIiw1MDBdXSxbMSxbMTcsWzE1LCJhIl0sImdjbU1hcHBpbmciXSxbMixbMTcsWzE1LCJhIl0sImdjbU1hcHBpbmciXSwiZm9yRWFjaCIsWzcsWzUxLCIiLFs3LCJhQSJdLFs0MyxbMTUsInkiXSxbMTcsWzE1LCJhQSJdLCJnY21DYXRlZ29yeSJdLFsidiIsWzEyLFsxNyxbMTUsImFBIl0sImRlZmF1bHRDb25zZW50Il0sWzE3LFsxNSwidCJdLCJncmFudGVkIl1dXV1dXV1dLFsiYyIsWzE1LCJ5Il1dLFsxLFsxNyxbMTUsImEiXSwicmVnaW9uU3BlY2lmaWNCZWhhdmlvciJdLFsyLFsxNyxbMTUsImEiXSwicmVnaW9uU3BlY2lmaWNCZWhhdmlvciJdLCJmb3JFYWNoIixbNyxbNTEsIiIsWzcsImFBIl0sWzQxLCJhQiJdLFszLCJhQiIsWyJ4IixbMTcsWzE1LCJhQSJdLCJyZWdpb24iXV1dLFs0MSwiYUMiXSxbMywiYUMiLFs4LCJ3YWl0X2Zvcl91cGRhdGUiLDUwMCwicmVnaW9uIixbMTUsImFCIl1dXSxbMixbMixbMTUsImsiXSwiZW50cmllcyIsWzcsWzE1LCJhQSJdXV0sImZvckVhY2giLFs3LFs1MSwiIixbNywiYUQiXSxbNTIsImFFIixbMTYsWzE1LCJhRCJdLDBdXSxbNTIsImFGIixbMTYsWzE1LCJhRCJdLDFdXSxbMjIsWzEsWzI5LFsxNSwiYUYiXSxbMTcsWzE1LCJ0Il0sImdsb2JhbCJdXSxbMjksWzE1LCJhRSJdLCJyZWdpb24iXV0sWzQ2LFs0MyxbMTUsImFDIl0sWzE1LCJhRSJdLFsidiIsWzEyLFsxNSwiYUYiXSxbMTcsWzE1LCJ0Il0sImdyYW50ZWQiXV1dXV1dXV1dLFsiYyIsWzE1LCJhQyJdXV1dXV0sWzQxLCJ6Il0sWzMsInoiLFsxLFsibCIsIk9wdGFub25Db25zZW50Il0sWzE2LFsibCIsIk9wdGFub25Db25zZW50Il0sMF1dXSxbMjIsWzE1LCJ6Il0sWzQ2LFs1MyxbNDEsImFBIl0sWzMsImFBIixbOF1dLFsyLFsxNyxbMTUsImEiXSwiZ2NtTWFwcGluZyJdLCJmb3JFYWNoIixbNyxbNTEsIiIsWzcsImFCIl0sWzQzLFsxNSwiYUEiXSxbMTcsWzE1LCJhQiJdLCJnY21DYXRlZ29yeSJdLFsidyIsWzE1LCJ6Il0sWzE3LFsxNSwiYUIiXSwib25lVHJ1c3RDYXRJZCJdXV1dXV0sWyJmIixbMTUsImFBIl1dXV1dLFsiaiIsIm90RXZlbnRMaXN0ZW5lcnMiLFs3LFs4LCJldmVudCIsImNvbnNlbnQuY2hhbmdlZCIsImxpc3RlbmVyIixbMTUsInUiXV1dLGZhbHNlXV1dLFs0NixbImIiLFsxNSwibiJdLCJHb29nbGUgQ29uc2VudCBNb2RlIG5vdCBiZWluZyB1c2VkIC0gc2V0dXAgc2tpcHBlZCEiXV1dLFsyMixbMTcsWzE1LCJhIl0sInVzZUF1dG9CbG9jayJdLFs0NixbMjIsWyJlIiwiaW5qZWN0X3NjcmlwdCIsWzE1LCJxIl1dLFs0NixbImQiLFsxNSwicSJdLFsxNyxbMTUsImEiXSwiZ3RtT25TdWNjZXNzIl0sWzE3LFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiXV1dLFs0NixbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFsiYiIsWzE1LCJuIl0sIk9uZVRydXN0IEF1dG8tQmxvY2sgU2NyaXB0IGRvZXMgbm90IGhhdmUgcGVybWlzc2lvbiB0byBiZSBpbmplY3RlZC4iXV1dXV0sWzIyLFsiZSIsImluamVjdF9zY3JpcHQiLFsxNSwicCJdXSxbNDYsWyJkIixbMTUsInAiXSxbMTcsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyJdLFsxNyxbMTUsImEiXSwiZ3RtT25GYWlsdXJlIl1dXSxbNDYsWzIsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSIsWzddXSxbImIiLFsxNSwibiJdLCJPbmVUcnVzdCBTY3JpcHQgZG9lcyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGJlIGluamVjdGVkLiJdXV1dCiAsWzUwLCJfX2FldiIsWzQ2LCJhIl0sWzUwLCJhQyIsWzQ2LCJhSiJdLFsyMixbMixbMTUsInYiXSwiaGFzT3duUHJvcGVydHkiLFs3LFsxNSwiYUoiXV1dLFs0NixbNTMsWzM2LFsxNixbMTUsInYiXSxbMTUsImFKIl1dXV1dXSxbNTIsImFLIixbMTYsWzE1LCJ6Il0sImVsZW1lbnQiXV0sWzIyLFsyOCxbMTUsImFLIl1dLFs0NixbMzYsWzQ0XV1dXSxbNTIsImFMIixbImciLFsxNSwiYUsiXV1dLFsiYUQiLFsxNSwiYUoiXSxbMTUsImFMIl1dLFszNixbMTUsImFMIl1dXSxbNTAsImFEIixbNDYsImFKIiwiYUsiXSxbNDMsWzE1LCJ2Il0sWzE1LCJhSiJdLFsxNSwiYUsiXV0sWzIsWzE1LCJ3Il0sInB1c2giLFs3LFsxNSwiYUoiXV1dLFsyMixbMTgsWzE3LFsxNSwidyJdLCJsZW5ndGgiXSxbMTUsInMiXV0sWzQ2LFs1MyxbNTIsImFMIixbMixbMTUsInciXSwic2hpZnQiLFs3XV1dLFsyLFsxNSwiYiJdLCJkZWxldGUiLFs3LFsxNSwidiJdLFsxNSwiYUwiXV1dXV1dXSxbNTAsImFFIixbNDYsImFKIiwiYUsiXSxbNTIsImFMIixbIm4iLFszMCxbMzAsWzE2LFsxNSwieiJdLCJlbGVtZW50VXJsIl0sWzE1LCJhSiJdXSwiIl1dXSxbNTIsImFNIixbIm4iLFszMCxbMTcsWzE1LCJhSyJdLCJjb21wb25lbnQiXSwiVVJMIl1dXSxbMzgsWzE1LCJhTSJdLFs0NiwiVVJMIiwiSVNfT1VUQk9VTkQiLCJQUk9UT0NPTCIsIkhPU1QiLCJQT1JUIiwiUEFUSCIsIkVYVEVOU0lPTiIsIlFVRVJZIiwiRlJBR01FTlQiXSxbNDYsWzUsWzQ2LFszNixbMTUsImFMIl1dXV0sWzUsWzQ2LFszNixbImFHIixbMTUsImFMIl0sWzE3LFsxNSwiYUsiXSwiYWZmaWxpYXRlZERvbWFpbnMiXV1dXV0sWzUsWzQ2LFszNixbMixbMTUsImwiXSwiQiIsWzcsWzE1LCJhTCJdXV1dXV0sWzUsWzQ2LFszNixbMixbMTUsImwiXSwiQyIsWzcsWzE1LCJhTCJdLFsxNyxbMTUsImFLIl0sInN0cmlwV3d3Il1dXV1dXSxbNSxbNDYsWzM2LFsyLFsxNSwibCJdLCJEIixbNyxbMTUsImFMIl1dXV1dXSxbNSxbNDYsWzM2LFsyLFsxNSwibCJdLCJFIixbNyxbMTUsImFMIl0sWzE3LFsxNSwiYUsiXSwiZGVmYXVsdFBhZ2VzIl1dXV1dXSxbNSxbNDYsWzM2LFsyLFsxNSwibCJdLCJGIixbNyxbMTUsImFMIl1dXV1dXSxbNSxbNDYsWzIyLFsxNyxbMTUsImFLIl0sInF1ZXJ5S2V5Il0sWzQ2LFs1MyxbMzYsWzIsWzE1LCJsIl0sIkgiLFs3LFsxNSwiYUwiXSxbMTcsWzE1LCJhSyJdLCJxdWVyeUtleSJdXV1dXV0sWzQ2LFs1MyxbMzYsWzIsWzE3LFsibSIsWzE1LCJhTCJdXSwic2VhcmNoIl0sInJlcGxhY2UiLFs3LCI/IiwiIl1dXV1dXV1dLFs1LFs0NixbMzYsWzIsWzE1LCJsIl0sIkciLFs3LFsxNSwiYUwiXV1dXV1dLFs5LFs0NixbMzYsWzE3LFsibSIsWzE1LCJhTCJdXSwiaHJlZiJdXV1dXV1dLFs1MCwiYUYiLFs0NiwiYUoiLCJhSyJdLFs1MiwiYUwiLFs4LCJBVFRSSUJVVEUiLCJlbGVtZW50QXR0cmlidXRlIiwiQ0xBU1NFUyIsImVsZW1lbnRDbGFzc2VzIiwiRUxFTUVOVCIsImVsZW1lbnQiLCJJRCIsImVsZW1lbnRJZCIsIkhJU1RPUllfQ0hBTkdFX1NPVVJDRSIsImhpc3RvcnlDaGFuZ2VTb3VyY2UiLCJISVNUT1JZX05FV19TVEFURSIsIm5ld0hpc3RvcnlTdGF0ZSIsIkhJU1RPUllfTkVXX1VSTF9GUkFHTUVOVCIsIm5ld1VybEZyYWdtZW50IiwiSElTVE9SWV9PTERfU1RBVEUiLCJvbGRIaXN0b3J5U3RhdGUiLCJISVNUT1JZX09MRF9VUkxfRlJBR01FTlQiLCJvbGRVcmxGcmFnbWVudCIsIlRBUkdFVCIsImVsZW1lbnRUYXJnZXQiXV0sWzUyLCJhTSIsWzE2LFsxNSwieiJdLFsxNixbMTUsImFMIl0sWzE1LCJhSiJdXV1dLFszNixbMzksWzIxLFsxNSwiYU0iXSxbNDRdXSxbMTUsImFNIl0sWzE1LCJhSyJdXV1dLFs1MCwiYUciLFs0NiwiYUoiLCJhSyJdLFsyMixbMjgsWzE1LCJhSiJdXSxbNDYsWzUzLFszNixmYWxzZV1dXV0sWzUyLCJhTCIsWyJhSSIsWzE1LCJhSiJdXV0sWzIyLFsiYUgiLFsxNSwiYUwiXSxbImsiXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dLFsyMixbMjgsWyJxIixbMTUsImFLIl1dXSxbNDYsWzUzLFszLCJhSyIsWzIsWzIsWyJuIixbMzAsWzE1LCJhSyJdLCIiXV0sInJlcGxhY2UiLFs3LFsiYyIsIlxccysiLCJnIl0sIiJdXSwic3BsaXQiLFs3LCIsIl1dXV1dXSxbNjUsImFNIixbMTUsImFLIl0sWzQ2LFs1MyxbMjIsWzIwLFsiaiIsWzE1LCJhTSJdXSwib2JqZWN0Il0sWzQ2LFs1MyxbMjIsWzE2LFsxNSwiYU0iXSwiaXNfcmVnZXgiXSxbNDYsWzUzLFs1MiwiYU4iLFsiYyIsWzE2LFsxNSwiYU0iXSwiZG9tYWluIl1dXSxbMjIsWzIwLFsxNSwiYU4iXSxbNDVdXSxbNDYsWzZdXV0sWzIyLFsicCIsWzE1LCJhTiJdLFsxNSwiYUwiXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dXV0sWzQ2LFs1MyxbMjIsWyJhSCIsWzE1LCJhTCJdLFsxNixbMTUsImFNIl0sImRvbWFpbiJdXSxbNDYsWzUzLFszNixmYWxzZV1dXV1dXV1dXSxbNDYsWzIyLFsyMCxbImoiLFsxNSwiYU0iXV0sIlJlZ0V4cCJdLFs0NixbNTMsWzIyLFsicCIsWzE1LCJhTSJdLFsxNSwiYUwiXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dXV0sWzQ2LFs1MyxbMjIsWyJhSCIsWzE1LCJhTCJdLFsxNSwiYU0iXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dXV1dXV1dXV0sWzM2LHRydWVdXSxbNTAsImFIIixbNDYsImFKIiwiYUsiXSxbMjIsWzI4LFsxNSwiYUsiXV0sWzQ2LFszNixmYWxzZV1dXSxbMjIsWzE5LFsyLFsxNSwiYUoiXSwiaW5kZXhPZiIsWzcsWzE1LCJhSyJdXV0sMF0sWzQ2LFszNix0cnVlXV1dLFszLCJhSyIsWyJhSSIsWzE1LCJhSyJdXV0sWzIyLFsyOCxbMTUsImFLIl1dLFs0NixbMzYsZmFsc2VdXV0sWzMsImFLIixbMixbMTUsImFLIl0sInRvTG93ZXJDYXNlIixbN11dXSxbNDEsImFMIl0sWzMsImFMIixbMzcsWzE3LFsxNSwiYUoiXSwibGVuZ3RoIl0sWzE3LFsxNSwiYUsiXSwibGVuZ3RoIl1dXSxbMjIsWzEsWzE4LFsxNSwiYUwiXSwwXSxbMjksWzIsWzE1LCJhSyJdLCJjaGFyQXQiLFs3LDBdXSwiLiJdXSxbNDYsWzUzLFszNCxbMywiYUwiLFszNyxbMTUsImFMIl0sMV1dXSxbMywiYUsiLFswLCIuIixbMTUsImFLIl1dXV1dXSxbMzYsWzEsWzE5LFsxNSwiYUwiXSwwXSxbMTIsWzIsWzE1LCJhSiJdLCJpbmRleE9mIixbNyxbMTUsImFLIl0sWzE1LCJhTCJdXV0sWzE1LCJhTCJdXV1dXSxbNTAsImFJIixbNDYsImFKIl0sWzIyLFsyOCxbInAiLFsxNSwiciJdLFsxNSwiYUoiXV1dLFs0NixbNTMsWzMsImFKIixbMCwiaHR0cDovLyIsWzE1LCJhSiJdXV1dXV0sWzM2LFsyLFsxNSwibCJdLCJDIixbNyxbMTUsImFKIl0sdHJ1ZV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJPYmplY3QiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jcmVhdGVSZWdleCJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmdldEVsZW1lbnRBdHRyaWJ1dGUiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRFbGVtZW50VmFsdWUiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRFdmVudERhdGEiXV0sWzUyLCJnIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRFbGVtZW50SW5uZXJUZXh0Il1dLFs1MiwiaCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0RWxlbWVudFByb3BlcnR5Il1dLFs1MiwiaSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY29weUZyb21EYXRhTGF5ZXJDYWNoZSJdXSxbNTIsImoiLFsicmVxdWlyZSIsImdldFR5cGUiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJnZXRVcmwiXV0sWzUyLCJsIixbMTUsIl9fbW9kdWxlX2xlZ2FjeVVybHMiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJpbnRlcm5hbC5sZWdhY3lQYXJzZVVybCJdXSxbNTIsIm4iLFsicmVxdWlyZSIsIm1ha2VTdHJpbmciXV0sWzUyLCJvIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJwIixbInJlcXVpcmUiLCJpbnRlcm5hbC50ZXN0UmVnZXgiXV0sWzUyLCJxIixbNTEsIiIsWzcsImFKIl0sWzM2LFsyMCxbImoiLFsxNSwiYUoiXV0sImFycmF5Il1dXV0sWzUyLCJyIixbImMiLCJeaHR0cHM/OlxcL1xcLyIsImkiXV0sWzUyLCJzIiwzNV0sWzUyLCJ0IiwiZXEiXSxbNTIsInUiLCJldmMiXSxbNTIsInYiLFszMCxbMixbMTUsIm8iXSwiZ2V0SXRlbSIsWzcsWzE1LCJ1Il1dXSxbOF1dXSxbMixbMTUsIm8iXSwic2V0SXRlbSIsWzcsWzE1LCJ1Il0sWzE1LCJ2Il1dXSxbNTIsInciLFszMCxbMixbMTUsIm8iXSwiZ2V0SXRlbSIsWzcsWzE1LCJ0Il1dXSxbN11dXSxbMixbMTUsIm8iXSwic2V0SXRlbSIsWzcsWzE1LCJ0Il0sWzE1LCJ3Il1dXSxbNTIsIngiLFsxNyxbMTUsImEiXSwiZGVmYXVsdFZhbHVlIl1dLFs1MiwieSIsWzE3LFsxNSwiYSJdLCJ2YXJUeXBlIl1dLFs1MiwieiIsWyJpIiwiZ3RtIl1dLFszOCxbMTUsInkiXSxbNDYsIlRBR19OQU1FIiwiVEVYVCIsIlVSTCIsIkFUVFJJQlVURSJdLFs0NixbNSxbNDYsWzUyLCJhQSIsWzE2LFsxNSwieiJdLCJlbGVtZW50Il1dLFs1MiwiYUIiLFsxLFsxNSwiYUEiXSxbImgiLFsxNSwiYUEiXSwidGFnTmFtZSJdXV0sWzM2LFszMCxbMTUsImFCIl0sWzE1LCJ4Il1dXV1dLFs1LFs0NixbMzYsWzMwLFsiYUMiLFsiZiIsImd0bVxcLnVuaXF1ZUV2ZW50SWQiXV0sWzE1LCJ4Il1dXV1dLFs1LFs0NixbMzYsWyJhRSIsWzE1LCJ4Il0sWzE1LCJhIl1dXV1dLFs1LFs0NixbMjIsWzIwLFsxNyxbMTUsImEiXSwiYXR0cmlidXRlIl0sWzQ0XV0sWzQ2LFs1MyxbMzYsWyJhRiIsWzE1LCJ5Il0sWzE1LCJ4Il1dXV1dLFs0NixbNTMsWzUyLCJhSiIsWzE2LFsxNSwieiJdLCJlbGVtZW50Il1dLFs1MiwiYUsiLFsxLFsxNSwiYUoiXSxbMzksWzIwLFsxNyxbMTUsImEiXSwiYXR0cmlidXRlIl0sInZhbHVlIl0sWyJlIixbMTUsImFKIl1dLFsiZCIsWzE1LCJhSiJdLFsxNyxbMTUsImEiXSwiYXR0cmlidXRlIl1dXV1dLFszNixbMzAsWzMwLFsxNSwiYUsiXSxbMTUsIngiXV0sIiJdXV1dXV1dLFs5LFs0NixbMzYsWyJhRiIsWzE1LCJ5Il0sWzE1LCJ4Il1dXV1dXV1dCiAsWzUwLCJfX2MiLFs0NiwiYSJdLFszNixbMTcsWzE1LCJhIl0sInZhbHVlIl1dXQogLFs1MCwiX19jbCIsWzQ2LCJhIl0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkNsaWNrIl1dLFsiYiJdLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2QiLFs0NiwiYSJdLFs1MCwiaiIsWzQ2LCJsIiwibSJdLFsyMixbMjgsWzE1LCJsIl1dLFs0NixbNTMsWzM2LFs0NV1dXV1dLFsyMixbMjgsWzE1LCJtIl1dLFs0NixbNTMsWzM2LFsiYyIsWzE1LCJsIl1dXV1dXSxbMjIsWzIwLFsxNSwibSJdLCJ2YWx1ZSJdLFs0NixbNTMsWzM2LFsiZyIsWzE1LCJsIl1dXV1dXSxbMjIsWzEsWzIwLFsxNSwibSJdLCJjaGVja2VkIl0sWzIwLFsiZiIsWzE1LCJsIl1dLCJIVE1MSW5wdXRFbGVtZW50Il1dLFs0NixbNTMsWzUyLCJuIixbImgiLFsxNSwibCJdLCJ0eXBlIl1dLFsyMixbMzAsWzIwLFsxNSwibiJdLCJyYWRpbyJdLFsyMCxbMTUsIm4iXSwiY2hlY2tib3giXV0sWzQ2LFs1MyxbMzYsWyJpIixbMTUsImwiXSwiY2hlY2tlZCJdXV1dXV1dXSxbMzYsWyJoIixbMTUsImwiXSxbMTUsIm0iXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldEVsZW1lbnRCeUlkIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0RWxlbWVudElubmVyVGV4dCJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmdldEVsZW1lbnRzQnlDc3NTZWxlY3RvciJdXSxbNTIsImUiLFsicmVxdWlyZSIsIm1ha2VTdHJpbmciXV0sWzUyLCJmIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiZyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0RWxlbWVudFZhbHVlIl1dLFs1MiwiaCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0RWxlbWVudEF0dHJpYnV0ZSJdXSxbNTIsImkiLFsicmVxdWlyZSIsImludGVybmFsLmdldEVsZW1lbnRQcm9wZXJ0eSJdXSxbNDEsImsiXSxbMywiayIsWzQ0XV0sWzIyLFsxMixbMTcsWzE1LCJhIl0sInNlbGVjdG9yVHlwZSJdLCJDU1MiXSxbNDYsWzUzLFs1MiwibCIsWyJkIixbMTcsWzE1LCJhIl0sImVsZW1lbnRTZWxlY3RvciJdXV0sWzIyLFsxLFsxNSwibCJdLFsxOCxbMTcsWzE1LCJsIl0sImxlbmd0aCJdLDBdXSxbNDYsWzUzLFszLCJrIixbMTYsWzE1LCJsIl0sMF1dXV1dXV0sWzQ2LFs1MyxbMywiayIsWyJiIixbMTcsWzE1LCJhIl0sImVsZW1lbnRJZCJdXV1dXV0sWzM2LFsyLFsiZSIsWyJqIixbMTUsImsiXSxbMTcsWzE1LCJhIl0sImF0dHJpYnV0ZU5hbWUiXV1dLCJ0cmltIixbN11dXV0KICxbNTAsIl9fZGJnIixbNDYsImEiXSxbMzYsWzE3LFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbInJlcXVpcmUiLCJnZXRDb250YWluZXJWZXJzaW9uIl1dLFsiJDAiXV0sImRlYnVnTW9kZSJdXV0KICxbNTAsIl9fZSIsWzQ2LCJhIl0sWzM2LFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRFdmVudERhdGEiXV0sWyIkMCIsImV2ZW50Il1dXV0KICxbNTAsIl9fZXZsIixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uRWxlbWVudFZpc2liaWxpdHkiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJtYWtlTnVtYmVyIl1dLFs1MiwiZCIsWzgsInNlbGVjdG9yVHlwZSIsWzE3LFsxNSwiYSJdLCJzZWxlY3RvclR5cGUiXSwiaWQiLFsxNyxbMTUsImEiXSwiZWxlbWVudElkIl0sInNlbGVjdG9yIixbMTcsWzE1LCJhIl0sImVsZW1lbnRTZWxlY3RvciJdLCJ1c2VEb21DaGFuZ2VMaXN0ZW5lciIsWzI4LFsyOCxbMTcsWzE1LCJhIl0sInVzZURvbUNoYW5nZUxpc3RlbmVyIl1dXSwib25TY3JlZW5SYXRpbyIsWyJjIixbMTcsWzE1LCJhIl0sIm9uU2NyZWVuUmF0aW8iXV0sImZpcmluZ0ZyZXF1ZW5jeSIsWzE3LFsxNSwiYSJdLCJmaXJpbmdGcmVxdWVuY3kiXV1dLFsyMixbMTcsWzE1LCJhIl0sInVzZU9uU2NyZWVuRHVyYXRpb24iXSxbNDYsWzUzLFs0MyxbMTUsImQiXSwib25TY3JlZW5EdXJhdGlvbiIsWyJjIixbMTcsWzE1LCJhIl0sIm9uU2NyZWVuRHVyYXRpb24iXV1dXV1dLFsiYiIsWzE1LCJkIl0sWzE3LFsxNSwiYSJdLCJ1bmlxdWVUcmlnZ2VySWQiXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fZiIsWzQ2LCJhIl0sWzUyLCJiIixbInJlcXVpcmUiLCJjb3B5RnJvbURhdGFMYXllciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImdldFJlZmVycmVyVXJsIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwibWFrZVN0cmluZyJdXSxbNTIsImUiLFsicmVxdWlyZSIsInBhcnNlVXJsIl1dLFs1MiwiZiIsWzE1LCJfX21vZHVsZV9sZWdhY3lVcmxzIl1dLFs1MiwiZyIsWzMwLFsiYiIsImd0bS5yZWZlcnJlciIsMV0sWyJjIl1dXSxbMjIsWzI4LFsxNSwiZyJdXSxbNDYsWzM2LFsiZCIsWzE1LCJnIl1dXV1dLFszOCxbMTcsWzE1LCJhIl0sImNvbXBvbmVudCJdLFs0NiwiUFJPVE9DT0wiLCJIT1NUIiwiUE9SVCIsIlBBVEgiLCJRVUVSWSIsIkZSQUdNRU5UIiwiVVJMIl0sWzQ2LFs1LFs0NixbMzYsWzIsWzE1LCJmIl0sIkIiLFs3LFsxNSwiZyJdXV1dXV0sWzUsWzQ2LFszNixbMixbMTUsImYiXSwiQyIsWzcsWzE1LCJnIl0sWzE3LFsxNSwiYSJdLCJzdHJpcFd3dyJdXV1dXV0sWzUsWzQ2LFszNixbMixbMTUsImYiXSwiRCIsWzcsWzE1LCJnIl1dXV1dXSxbNSxbNDYsWzM2LFsyLFsxNSwiZiJdLCJFIixbNyxbMTUsImciXSxbMTcsWzE1LCJhIl0sImRlZmF1bHRQYWdlcyJdXV1dXV0sWzUsWzQ2LFsyMixbMTcsWzE1LCJhIl0sInF1ZXJ5S2V5Il0sWzQ2LFs1MyxbMzYsWzIsWzE1LCJmIl0sIkgiLFs3LFsxNSwiZyJdLFsxNyxbMTUsImEiXSwicXVlcnlLZXkiXV1dXV1dXSxbNTIsImgiLFsiZSIsWzE1LCJnIl1dXSxbMzYsWzIsWzE3LFsxNSwiaCJdLCJzZWFyY2giXSwicmVwbGFjZSIsWzcsIj8iLCIiXV1dXV0sWzUsWzQ2LFszNixbMixbMTUsImYiXSwiRyIsWzcsWzE1LCJnIl1dXV1dXSxbNSxbNDZdXSxbOSxbNDYsWzM2LFsyLFsxNSwiZiJdLCJBIixbNyxbImQiLFsxNSwiZyJdXV1dXV1dXV1dCiAsWzUwLCJfX2ZsYyIsWzQ2LCJhIl0sWzUyLCJiIixbInJlcXVpcmUiLCJjb3B5RnJvbURhdGFMYXllciJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfZGF0YVBhcmFtcyJdXSxbNTIsImQiLFsicmVxdWlyZSIsImVuY29kZVVyaUNvbXBvbmVudCJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZUZsYWdzIl1dLFs1MiwiZiIsWzE1LCJfX21vZHVsZV9mZWF0dXJlcyJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImgiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJpIixbInJlcXVpcmUiLCJpbnRlcm5hbC5sb2FkR29vZ2xlVGFnIl1dLFs1MiwiaiIsWyJyZXF1aXJlIiwibWFrZU51bWJlciJdXSxbNTIsImsiLFsicmVxdWlyZSIsIm1ha2VUYWJsZU1hcCJdXSxbNTIsImwiLFsicmVxdWlyZSIsImludGVybmFsLnNlbmRHdGFnRXZlbnQiXV0sWzUyLCJtIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwibiIsWzE1LCJfX21vZHVsZV9hZHdvcmRzSGl0VHlwZSJdXSxbNTIsIm8iLFsicmVxdWlyZSIsImdldENvbnRhaW5lclZlcnNpb24iXV0sWzUyLCJwIixbMTUsIl9fbW9kdWxlX2d0YWciXV0sWzQxLCJxIl0sWzMsInEiLFs3XV0sWzQxLCJyIiwicyIsInQiXSxbMjIsWzE3LFsxNSwiYSJdLCJlbmFibGVQcm9kdWN0UmVwb3J0aW5nIl0sWzQ2LFs1MyxbMzgsWzE3LFsxNSwiYSJdLCJkYXRhU291cmNlIl0sWzQ2LCJEQVRBX0xBWUVSIiwiSlNPTiIsIlNUUklORyJdLFs0NixbNSxbNDYsWzMsInEiLFsiYiIsImVjb21tZXJjZS5wdXJjaGFzZS5wcm9kdWN0cyJdXSxbNF1dXSxbNSxbNDYsWzMsInEiLFsxNyxbMTUsImEiXSwicHJvZHVjdERhdGEiXV0sWzRdXV0sWzUsWzQ2LFs1MiwiYUciLFszMCxbMTcsWzE1LCJhIl0sInByb2R1Y3REYXRhIl0sIiJdXSxbNTIsImFIIixbMixbMTUsImFHIl0sInNwbGl0IixbNywifCJdXV0sWzUzLFs0MSwiYUkiXSxbMywiYUkiLDBdLFs2MyxbNywiYUkiXSxbMjMsWzE1LCJhSSJdLFsxNyxbMTUsImFIIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJhSSJdLFszLCJhSSIsWzAsWzE1LCJhSSJdLDFdXV0sWzQ2LFs1MyxbNTIsImFKIixbMixbMTYsWzE1LCJhSCJdLFsxNSwiYUkiXV0sInNwbGl0IixbNywiOiJdXV0sWzQzLFsxNSwiYUoiXSwxLFszMCxbMSxbMTYsWzE1LCJhSiJdLDFdLFsiZCIsWzE2LFsxNSwiYUoiXSwxXV1dLCIiXV0sWzQzLFsxNSwiYUgiXSxbMTUsImFJIl0sWzIsWzE1LCJhSiJdLCJqb2luIixbNywiOiJdXV0sWzUyLCJhSyIsWzUxLCIiLFs3LCJhTCJdLFs1MiwiYU0iLFs4LCJpIiwiaWQiLCJwIiwicHJpY2UiLCJxIiwicXVhbnRpdHkiLCJjIiwiY291bnRyeSIsImwiLCJsYW5ndWFnZSIsImEiLCJhY2NvdW50SWQiXV0sWzUyLCJhTiIsWzE2LFsxNixbMTUsImFMIl0sMF0sMF1dLFs1MiwiYU8iLFszNyxbImoiLFsyLFsxNixbMTUsImFMIl0sMF0sInNsaWNlIixbNywxXV1dLDFdXSxbNTIsImFQIixbMzAsWzE2LFsxNSwicSJdLFsxNSwiYU8iXV0sWzhdXV0sWzIyLFsyLFsxNSwiYU0iXSwiaGFzT3duUHJvcGVydHkiLFs3LFsxNSwiYU4iXV1dLFs0NixbNTMsWzQzLFsxNSwiYVAiXSxbMTYsWzE1LCJhTSJdLFsxNSwiYU4iXV0sWzE2LFsxNSwiYUwiXSwxXV1dXV0sWzQzLFsxNSwicSJdLFsxNSwiYU8iXSxbMTUsImFQIl1dXV0sWyJhSyIsWzE1LCJhSiJdXV1dXV0sWzRdXV0sWzksWzQ2XV1dXSxbMjIsWzE3LFsxNSwiYSJdLCJlbmFibGVNZXJjaGFudEZlZWRWYXJpYWJsZXMiXSxbNDYsWzUzLFszOCxbMTcsWzE1LCJhIl0sImRhdGFTb3VyY2UiXSxbNDYsIkRBVEFfTEFZRVIiLCJKU09OIiwiU1RSSU5HIl0sWzQ2LFs1LFs0NixbMywiciIsWyJiIiwibWVyY2hhbnRfaWQiXV0sWzMsInMiLFsiYiIsIm1lcmNoYW50X2ZlZWRfbGFiZWwiXV0sWzMsInQiLFsiYiIsIm1lcmNoYW50X2ZlZWRfbGFuZ3VhZ2UiXV0sWzRdXV0sWzUsWzQ2XV0sWzUsWzQ2LFszLCJyIixbMTcsWzE1LCJhIl0sIm1lcmNoYW50SWQiXV0sWzMsInMiLFsxNyxbMTUsImEiXSwiZmVlZExhYmVsIl1dLFszLCJ0IixbMTcsWzE1LCJhIl0sImZlZWRMYW5ndWFnZSJdXSxbNF1dXSxbOSxbNDZdXV1dXV1dXV1dLFs1MiwidSIsWzMwLFsyOCxbMixbMTUsImEiXSwiaGFzT3duUHJvcGVydHkiLFs3LCJlbmFibGVDb252ZXJzaW9uTGlua2VyIl1dXSxbMjgsWzI4LFsxNyxbMTUsImEiXSwiZW5hYmxlQ29udmVyc2lvbkxpbmtlciJdXV1dXSxbNTIsInYiLFszMCxbImsiLFszMCxbMTcsWzE1LCJhIl0sImN1c3RvbVZhcmlhYmxlIl0sWzddXSwia2V5IiwidmFsdWUiXSxbOF1dXSxbNTIsInciLFszOSxbMTcsWzE1LCJhIl0sImVuYWJsZUV2ZW50UGFyYW1ldGVycyJdLFsyLFsxNSwiYyJdLCJBIixbNyxbMTcsWzE1LCJhIl0sImV2ZW50U2V0dGluZ3NWYXJpYWJsZSJdLFsxNyxbMTUsImEiXSwiZXZlbnRTZXR0aW5nc1RhYmxlIl0sInBhcmFtZXRlciIsInBhcmFtZXRlclZhbHVlIl1dLFs4XV1dLFsyLFsxNSwicCJdLCJGIixbNyxbMTUsInciXSxbMTcsWzE1LCJwIl0sIkEiXV1dLFsyLFsxNSwicCJdLCJHIixbNyxbMTUsInciXSxbMTcsWzE1LCJwIl0sIkMiXV1dLFs0MSwieCJdLFszLCJ4IixbMixbMTUsImMiXSwiQiIsWzcsWzE3LFsxNSwiYSJdLCJjb252ZXJzaW9uQ29va2llUHJlZml4Il0sWzE2LFsxNSwidyJdLFsxNyxbMTUsImciXSwiQ1EiXV0sIiJdXV0sWzIyLFsyMCxbMTUsIngiXSwiX2djbCJdLFs0NixbNTMsWzMsIngiLFs0NF1dXV1dLFs1MiwieSIsWzhdXSxbNTQsImFHIixbMTUsInciXSxbNDYsWzUzLFs0MyxbMTUsInkiXSxbMTUsImFHIl0sWzE2LFsxNSwidyJdLFsxNSwiYUciXV1dXV1dLFs1MiwieiIsWzMwLFsyOCxbMjgsWzE3LFsxNSwiYSJdLCJ1c2VJbWFnZVRhZyJdXV0sWzE2LFsibyJdLCJpc0dvb2dsZU9ubHlNb2RlIl1dXSxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJCQyJdLFsiYiIsWzE3LFsxNSwiZyJdLCJCQyJdXV0sWzQzLFsxNSwieSJdLFsxNyxbMTUsImciXSwiQksiXSxbMjgsWzE1LCJ6Il1dXSxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJDQiJdLFsxNSwicSJdXSxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJDUSJdLFsxNSwieCJdXSxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJDUyJdLFsxNSwidSJdXSxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJJSSJdLFsyLFsxNSwiYyJdLCJCIixbNyxbMTcsWzE1LCJhIl0sInNlc3Npb25JZCJdLFsxNixbMTUsInciXSxbMTcsWzE1LCJnIl0sIklJIl1dLCIiXV1dLFs0MyxbMTUsInkiXSxbMTcsWzE1LCJnIl0sIkhQIl0sWzIsWzE1LCJjIl0sIkIiLFs3LFsxNyxbMTUsImEiXSwicXVhbnRpdHkiXSxbMTYsWzE1LCJ3Il0sWzE3LFsxNSwiZyJdLCJIUCJdXSwiIl1dXSxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJJVSJdLFsyLFsxNSwiYyJdLCJCIixbNyxbMTcsWzE1LCJhIl0sIm9yZGVySWQiXSxbMTYsWzE1LCJ3Il0sWzE3LFsxNSwiZyJdLCJJVSJdXSwiIl1dXSxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJKViJdLFsyLFsxNSwiYyJdLCJCIixbNyxbMTcsWzE1LCJhIl0sInJldmVudWUiXSxbMTYsWzE1LCJ3Il0sWzE3LFsxNSwiZyJdLCJKViJdXSwiIl1dXSxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJGRSJdLFsxNyxbMTUsImEiXSwibWF0Y2hJZFZhcmlhYmxlIl1dLFs0MyxbMTUsInkiXSwib3JlZiIsWzM5LFsxNSwieiJdLFs0NF0sWzE3LFsxNSwiYSJdLCJ1cmwiXV1dLFs0MyxbMTUsInkiXSwidHJhbiIsWzE3LFsxNSwiYSJdLCJ0cmFuc2FjdGlvblZhcmlhYmxlIl1dLFs0MyxbMTUsInkiXSwidSIsWzE3LFsxNSwiYSJdLCJ1c2VyVmFyaWFibGUiXV0sWzQzLFsxNSwieSJdLFsxNyxbMTUsImciXSwiR1YiXSxbMTUsInIiXV0sWzQzLFsxNSwieSJdLFsxNyxbMTUsImciXSwiR1QiXSxbMTUsInMiXV0sWzQzLFsxNSwieSJdLFsxNyxbMTUsImciXSwiR1UiXSxbMTUsInQiXV0sWzIyLFszMCxbMTcsWzE1LCJhIl0sInVzZXJEYXRhVmFyaWFibGUiXSxbImgiLFsxNyxbMTUsImUiXSwiQUQiXV1dLFs0NixbNTMsWzQzLFsxNSwieSJdLFsxNyxbMTUsImciXSwiSkoiXSxbMTcsWzE1LCJhIl0sInVzZXJEYXRhVmFyaWFibGUiXV1dXV0sWzU0LCJhRyIsWzE1LCJ2Il0sWzQ2LFs1MyxbNDMsWzE1LCJ5Il0sWzE1LCJhRyJdLFsxNixbMTUsInYiXSxbMTUsImFHIl1dXV1dXSxbNTIsImFBIixbOCwiVU5JUVVFIiwidW5pcXVlIiwiU0VTU0lPTiIsInBlcl9zZXNzaW9uIiwiSVRFTV9TT0xEIiwiaXRlbXNfc29sZCIsIlRSQU5TQUNUSU9OUyIsInRyYW5zYWN0aW9ucyIsIlNUQU5EQVJEIiwic3RhbmRhcmQiXV0sWzUyLCJhQiIsWzMwLFsxNyxbMTUsImEiXSwiY291bnRpbmdNZXRob2QiXSxbMTcsWzE1LCJhIl0sIm9yZGluYWxUeXBlIl1dXSxbNTIsImFDIixbMzAsWzE2LFsxNSwiYUEiXSxbMTUsImFCIl1dLCJzdGFuZGFyZCJdXSxbNDEsImFEIl0sWzMsImFEIixbMCwiREMtIixbMTcsWzE1LCJhIl0sImFkdmVydGlzZXJJZCJdXV0sWzMsImFEIixbImkiLFsxNSwiYUQiXSxbOCwiZmlyc3RQYXJ0eVVybCIsWzE3LFsxNSwiYSJdLCJ0cmFuc3BvcnRVcmwiXSwibG9hZEJ5RGVzdGluYXRpb24iLHRydWUsImlzR3RtRXZlbnQiLHRydWVdXV0sWzUyLCJhRSIsWzAsWzAsWzAsWzAsWzAsWzAsWzE1LCJhRCJdLCIvIl0sWzE3LFsxNSwiYSJdLCJncm91cFRhZyJdXSwiLyJdLFsxNyxbMTUsImEiXSwiYWN0aXZpdHlUYWciXV0sIisiXSxbMTUsImFDIl1dXSxbNTIsImFGIixbOCwibm9HdG1FdmVudCIsdHJ1ZSwiaXNHdG1FdmVudCIsdHJ1ZSwib25TdWNjZXNzIixbMTcsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyJdLCJvbkZhaWx1cmUiLFsxNyxbMTUsImEiXSwiZ3RtT25GYWlsdXJlIl0sImV2ZW50TWV0YWRhdGEiLFs4XV1dLFs0MyxbMTcsWzE1LCJhRiJdLCJldmVudE1ldGFkYXRhIl0sWzE3LFsxNSwibSJdLCJBUiJdLFs3LFsxNyxbMTUsIm4iXSwiRSJdXV0sWzIsWzE1LCJwIl0sIkgiLFs3LFsxNyxbMTUsImFGIl0sImV2ZW50TWV0YWRhdGEiXSxbMTUsImFEIl1dXSxbImwiLFsxNSwiYUUiXSwiIixbMTUsInkiXSxbMTUsImFGIl1dXQogLFs1MCwiX19nYWF3ZSIsWzQ2LCJhIl0sWzUwLCJyIixbNDYsImFFIl0sWzIsWzE1LCJxIl0sInB1c2giLFs3LFsxNSwiYUUiXV1dXSxbNTAsInYiLFs0NiwiYUUiLCJhRiIsImFHIl0sWzUyLCJhSCIsWzhdXSxbNTIsImFJIixbNTEsIiIsWzcsImFNIiwiYU4iXSxbNDMsWzE1LCJhSCJdLFsxNSwiYU0iXSxbMzAsWzE2LFsxNSwiYUgiXSxbMTUsImFNIl1dLFsxNSwiYU4iXV1dXV0sWzUyLCJhSiIsWzUxLCIiLFs3LCJhTSIsImFOIiwiYU8iXSxbInIiLFsxNyxbMTUsImsiXSwiRiJdXSxbMjIsWzE1LCJhTSJdLFs0NixbNTMsWzQzLFsxNSwiYUgiXSwiaXRlbXMiLFszMCxbMTYsWzE1LCJhSCJdLCJpdGVtcyJdLFs3XV1dLFs2NSwiYVAiLFsxNSwiYU0iXSxbNDYsWzUzLFs1MiwiYVEiLFs4XV0sWzU0LCJhUiIsWzE1LCJhUCJdLFs0NixbNTMsWzUyLCJhUyIsWzE2LFsxNSwiYVAiXSxbMTUsImFSIl1dXSxbMjIsWzEsWzE1LCJhTyJdLFsyMCxbMTUsImFSIl0sImlkIl1dLFs0NixbNTMsWzQzLFsxNSwiYVEiXSwicHJvbW90aW9uX2lkIixbMTUsImFTIl1dXV0sWzQ2LFsyMixbMSxbMTUsImFPIl0sWzIwLFsxNSwiYVIiXSwibmFtZSJdXSxbNDYsWzUzLFs0MyxbMTUsImFRIl0sInByb21vdGlvbl9uYW1lIixbMTUsImFTIl1dXV0sWzQ2LFs1MyxbNDMsWzE1LCJhUSJdLFsxNSwiYVIiXSxbMTUsImFTIl1dXV1dXV1dXV0sWzIsWzE2LFsxNSwiYUgiXSwiaXRlbXMiXSwicHVzaCIsWzcsWzE1LCJhUSJdXV1dXV1dXV0sWzIyLFsxNSwiYU4iXSxbNDYsWzUzLFs1NSwiYVAiLFsxNSwiYU4iXSxbNDYsWzUzLFsyMixbMixbMTUsInMiXSwiaGFzT3duUHJvcGVydHkiLFs3LFsxNSwiYVAiXV1dLFs0NixbNTMsWyJhSSIsWzE2LFsxNSwicyJdLFsxNSwiYVAiXV0sWzE2LFsxNSwiYU4iXSxbMTUsImFQIl1dXV1dLFs0NixbNTMsWyJhSSIsWzE1LCJhUCJdLFsxNixbMTUsImFOIl0sWzE1LCJhUCJdXV1dXV1dXV1dXV1dXSxbNDEsImFLIl0sWzIyLFsyMCxbMTcsWzE1LCJhRSJdLCJnZXRFY29tbWVyY2VEYXRhRnJvbSJdLCJkYXRhTGF5ZXIiXSxbNDYsWzUzLFszLCJhSyIsWyJjIiwiZXZlbnRNb2RlbCJdXSxbMjIsWzI4LFsxNSwiYUsiXV0sWzQ2LFs1MyxbMywiYUsiLFsiYiIsImVjb21tZXJjZSJdXV1dXV1dLFs0NixbNTMsWzMsImFLIixbMTcsWzE1LCJhRSJdLCJlY29tbWVyY2VNYWNyb0RhdGEiXV0sWzIyLFsxLFsxLFsyMCxbImQiLFsxNSwiYUsiXV0sIm9iamVjdCJdLFsxNixbMTUsImFLIl0sImVjb21tZXJjZSJdXSxbMjgsWzE2LFsxNSwiYUsiXSwiaXRlbXMiXV1dLFs0NixbNTMsWzMsImFLIixbMTYsWzE1LCJhSyJdLCJlY29tbWVyY2UiXV1dXV1dXV0sWzIyLFsyMSxbImQiLFsxNSwiYUsiXV0sIm9iamVjdCJdLFs0NixbMzZdXV0sWzQxLCJhTCJdLFszLCJhTCIsZmFsc2VdLFs1NSwiYU0iLFsxNSwiYUsiXSxbNDYsWzUzLFsyMixbMjgsWzE1LCJhTCJdXSxbNDYsWzUzLFsiciIsWzE3LFsxNSwiayJdLCJFIl1dLFszLCJhTCIsdHJ1ZV1dXV0sWzIyLFsyMCxbMTUsImFNIl0sImN1cnJlbmN5Q29kZSJdLFs0NixbNTMsWyJhSSIsImN1cnJlbmN5IixbMTYsWzE1LCJhSyJdLCJjdXJyZW5jeUNvZGUiXV1dXSxbNDYsWzIyLFsxLFsyMCxbMTUsImFNIl0sImltcHJlc3Npb25zIl0sWzIwLFsxNSwiYUYiXSwidmlld19pdGVtX2xpc3QiXV0sWzQ2LFs1MyxbImFKIixbMTYsWzE1LCJhSyJdLCJpbXByZXNzaW9ucyJdLFs0NV1dXV0sWzQ2LFsyMixbMSxbMjAsWzE1LCJhTSJdLCJwcm9tb0NsaWNrIl0sWzIwLFsxNSwiYUYiXSwic2VsZWN0X3Byb21vdGlvbiJdXSxbNDYsWzUzLFsiYUoiLFsxNixbMTYsWzE1LCJhSyJdLCJwcm9tb0NsaWNrIl0sInByb21vdGlvbnMiXSxbMTYsWzE2LFsxNSwiYUsiXSwicHJvbW9DbGljayJdLCJhY3Rpb25GaWVsZCJdLHRydWVdXV0sWzQ2LFsyMixbMSxbMjAsWzE1LCJhTSJdLCJwcm9tb1ZpZXciXSxbMjAsWzE1LCJhRiJdLCJ2aWV3X3Byb21vdGlvbiJdXSxbNDYsWzUzLFsiYUoiLFsxNixbMTYsWzE1LCJhSyJdLCJwcm9tb1ZpZXciXSwicHJvbW90aW9ucyJdLFsxNixbMTYsWzE1LCJhSyJdLCJwcm9tb1ZpZXciXSwiYWN0aW9uRmllbGQiXSx0cnVlXV1dLFs0NixbMjIsWzIsWzE1LCJ0Il0sImhhc093blByb3BlcnR5IixbNyxbMTUsImFNIl1dXSxbNDYsWzUzLFsyMixbMjAsWzE1LCJhRiJdLFsxNixbMTUsInQiXSxbMTUsImFNIl1dXSxbNDYsWzUzLFsiYUoiLFsxNixbMTYsWzE1LCJhSyJdLFsxNSwiYU0iXV0sInByb2R1Y3RzIl0sWzE2LFsxNixbMTUsImFLIl0sWzE1LCJhTSJdXSwiYWN0aW9uRmllbGQiXV1dXSxbNDYsWzUzXV1dXV0sWzQ2LFs1MyxbNDMsWzE1LCJhSCJdLFsxNSwiYU0iXSxbMTYsWzE1LCJhSyJdLFsxNSwiYU0iXV1dXV1dXV1dXV1dXV1dXV0sWzIsWzE1LCJwIl0sIkEiLFs3LFsxNSwiYUgiXSxbMTUsImFHIl1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jb3B5RnJvbURhdGFMYXllckNhY2hlIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0RXZlbnREYXRhIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImUiLFsicmVxdWlyZSIsImxvZ1RvQ29uc29sZSJdXSxbNTIsImYiLFsicmVxdWlyZSIsIm1ha2VTdHJpbmciXV0sWzUyLCJnIixbInJlcXVpcmUiLCJtYWtlVGFibGVNYXAiXV0sWzUyLCJoIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwiaSIsWyJyZXF1aXJlIiwibWFrZU51bWJlciJdXSxbNTIsImoiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImsiLFsxNSwiX19tb2R1bGVfZ29sZEV2ZW50VXNhZ2VJZCJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsIm0iLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJuIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwibyIsWzE1LCJfX21vZHVsZV9ndGFnIl1dLFs1MiwicCIsWzE1LCJfX21vZHVsZV9vYmplY3QiXV0sWzUyLCJxIixbN11dLFs1MiwicyIsWzgsImlkIiwidHJhbnNhY3Rpb25faWQiLCJyZXZlbnVlIiwidmFsdWUiLCJsaXN0IiwiaXRlbV9saXN0X25hbWUiXV0sWzUyLCJ0IixbOCwiY2xpY2siLCJzZWxlY3RfaXRlbSIsImRldGFpbCIsInZpZXdfaXRlbSIsImFkZCIsImFkZF90b19jYXJ0IiwicmVtb3ZlIiwicmVtb3ZlX2Zyb21fY2FydCIsImNoZWNrb3V0IiwiYmVnaW5fY2hlY2tvdXQiLCJjaGVja291dF9vcHRpb24iLCJjaGVja291dF9vcHRpb24iLCJwdXJjaGFzZSIsInB1cmNoYXNlIiwicmVmdW5kIiwicmVmdW5kIl1dLFs1MiwidSIsWzgsImFkZF9wYXltZW50X2luZm8iLDEsImFkZF9zaGlwcGluZ19pbmZvIiwxLCJhZGRfdG9fY2FydCIsMSwicmVtb3ZlX2Zyb21fY2FydCIsMSwidmlld19jYXJ0IiwxLCJiZWdpbl9jaGVja291dCIsMSwic2VsZWN0X2l0ZW0iLDEsInZpZXdfaXRlbV9saXN0IiwxLCJzZWxlY3RfcHJvbW90aW9uIiwxLCJ2aWV3X3Byb21vdGlvbiIsMSwicHVyY2hhc2UiLDEsInJlZnVuZCIsMSwidmlld19pdGVtIiwxLCJhZGRfdG9fd2lzaGxpc3QiLDFdXSxbNDEsInciXSxbMjIsWzE3LFsxNSwiYSJdLCJtaWdyYXRlZFRvVjIiXSxbNDYsWzUzLFszLCJ3IixbImYiLFsxNyxbMTUsImEiXSwibWVhc3VyZW1lbnRJZE92ZXJyaWRlIl1dXV1dLFs0NixbNTMsWzMsInciLFsiZiIsWzMwLFsxNyxbMTUsImEiXSwibWVhc3VyZW1lbnRJZE92ZXJyaWRlIl0sWzE3LFsxNSwiYSJdLCJtZWFzdXJlbWVudElkIl1dXV1dXV0sWzIyLFsyMSxbMixbMTUsInciXSwiaW5kZXhPZiIsWzcsIkctIl1dLDBdLFs0NixbNTMsWyJlIixbMCwiSW52YWxpZCBNZWFzdXJlbWVudCBJRCBmb3IgdGhlIEdBNCBldmVudCB0YWc6ICIsWzE1LCJ3Il1dXSxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWzUyLCJ4IixbImYiLFsxNyxbMTUsImEiXSwiZXZlbnROYW1lIl1dXSxbNTIsInkiLFs4XV0sWzIyLFsxNyxbMTUsImEiXSwic2VuZEVjb21tZXJjZURhdGEiXSxbNDYsWzUzLFsyMixbMSxbMjgsWzE2LFsxNSwidSJdLFsxNSwieCJdXV0sWzIxLFsxNSwieCJdLCJjaGVja291dF9vcHRpb24iXV0sWzQ2LFs1MyxbImUiLFswLFswLCJJbnZhbGlkIEVjb21tZXJjZSBldmVudCBuYW1lIFwiIixbMTUsIngiXV0sIlwiIl1dXV0sWzQ2LFs1MyxbInYiLFsxNSwiYSJdLFsxNSwieCJdLFsxNSwieSJdXV1dXV1dXSxbNTIsInoiLFsxNyxbMTUsImEiXSwiZXZlbnRTZXR0aW5nc1ZhcmlhYmxlIl1dLFsyMixbMTUsInoiXSxbNDYsWzUzLFs1NSwiYUUiLFsxNSwieiJdLFs0NixbNTMsWzIyLFsyLFsxNSwieiJdLCJoYXNPd25Qcm9wZXJ0eSIsWzcsWzE1LCJhRSJdXV0sWzQ2LFs1MyxbNDMsWzE1LCJ5Il0sWzE1LCJhRSJdLFsxNixbMTUsInoiXSxbMTUsImFFIl1dXV1dXV1dXV1dXSxbMjIsWzE3LFsxNSwiYSJdLCJldmVudFNldHRpbmdzVGFibGUiXSxbNDYsWzUzLFs1MiwiYUUiLFszMCxbImciLFszMCxbMTcsWzE1LCJhIl0sImV2ZW50U2V0dGluZ3NUYWJsZSJdLFs3XV0sInBhcmFtZXRlciIsInBhcmFtZXRlclZhbHVlIl0sWzhdXV0sWzU1LCJhRiIsWzE1LCJhRSJdLFs0NixbNTMsWzQzLFsxNSwieSJdLFsxNSwiYUYiXSxbMTYsWzE1LCJhRSJdLFsxNSwiYUYiXV1dXV1dXV1dLFs1MiwiYUEiLFszMCxbImciLFszMCxbMTcsWzE1LCJhIl0sImV2ZW50UGFyYW1ldGVycyJdLFs3XV0sIm5hbWUiLCJ2YWx1ZSJdLFs4XV1dLFs1NSwiYUUiLFsxNSwiYUEiXSxbNDYsWzUzLFs0MyxbMTUsInkiXSxbMTUsImFFIl0sWzE2LFsxNSwiYUEiXSxbMTUsImFFIl1dXV1dXSxbNTIsImFCIixbMTcsWzE1LCJhIl0sInVzZXJEYXRhVmFyaWFibGUiXV0sWzIyLFsxNSwiYUIiXSxbNDYsWzUzLFs0MyxbMTUsInkiXSwidXNlcl9kYXRhIixbMTUsImFCIl1dXV1dLFsyMixbMzAsWzIsWzE1LCJ5Il0sImhhc093blByb3BlcnR5IixbNywidXNlcl9wcm9wZXJ0aWVzIl1dLFsxNyxbMTUsImEiXSwidXNlclByb3BlcnRpZXMiXV0sWzQ2LFs1MyxbNTIsImFFIixbMzAsWzE2LFsxNSwieSJdLCJ1c2VyX3Byb3BlcnRpZXMiXSxbOF1dXSxbMixbMTUsInAiXSwiQSIsWzcsWzMwLFsiZyIsWzMwLFsxNyxbMTUsImEiXSwidXNlclByb3BlcnRpZXMiXSxbN11dLCJuYW1lIiwidmFsdWUiXSxbOF1dLFsxNSwiYUUiXV1dLFs0MyxbMTUsInkiXSwidXNlcl9wcm9wZXJ0aWVzIixbMTUsImFFIl1dXV1dLFs1MiwiYUMiLFs4LCJub0d0bUV2ZW50Iix0cnVlXV0sWzIyLFsxOCxbMTcsWzE1LCJxIl0sImxlbmd0aCJdLDBdLFs0NixbNTMsWzQzLFsxNSwiYUMiXSwiZXZlbnRNZXRhZGF0YSIsWzgsImV2ZW50X3VzYWdlIixbMTUsInEiXV1dXV1dLFs1MiwiYUQiLFszMCxbMTcsWzE1LCJhQyJdLCJldmVudE1ldGFkYXRhIl0sWzhdXV0sWzIsWzE1LCJvIl0sIkgiLFs3LFsxNSwiYUQiXSxbMTUsInciXV1dLFsyMixbMTgsWzE3LFsyLFsxNSwiaiJdLCJrZXlzIixbNyxbMTUsImFEIl1dXSwibGVuZ3RoIl0sMF0sWzQ2LFs1MyxbNDMsWzE1LCJhQyJdLCJldmVudE1ldGFkYXRhIixbMTUsImFEIl1dXV1dLFsyLFsxNSwibyJdLCJFIixbNyxbMTUsInkiXSxbMTcsWzE1LCJvIl0sIkIiXSxbNTEsIiIsWzcsImFFIl0sWzM2LFszOSxbMjAsImZhbHNlIixbMixbImYiLFsxNSwiYUUiXV0sInRvTG93ZXJDYXNlIixbN11dXSxmYWxzZSxbMjgsWzI4LFsxNSwiYUUiXV1dXV1dXV0sWzIsWzE1LCJvIl0sIkUiLFs3LFsxNSwieSJdLFsxNyxbMTUsIm8iXSwiRCJdLFs1MSwiIixbNywiYUUiXSxbMzYsWyJpIixbMTUsImFFIl1dXV1dXSxbImgiLFsxNSwidyJdLFsxNSwieCJdLFsxNSwieSJdLFsxNSwiYUMiXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fZ2FzIixbNDYsImEiXSxbNTAsImQiLFs0NiwiZSIsImYiLCJnIl0sWzQzLFsxNSwiZSJdLCJmaWVsZHNUb1NldCIsWzMwLFsxNyxbMTUsImUiXSwiZmllbGRzVG9TZXQiXSxbN11dXSxbNTIsImgiLFsxNixbMTUsImUiXSxbMTUsImYiXV1dLFsyMixbMjEsWzE1LCJoIl0sWzQ0XV0sWzQ2LFs1MyxbMixbMTcsWzE1LCJlIl0sImZpZWxkc1RvU2V0Il0sInB1c2giLFs3LFs4LCJmaWVsZE5hbWUiLFsxNSwiZyJdLCJ2YWx1ZSIsWzE1LCJoIl1dXV0sWzIsWzE1LCJiIl0sImRlbGV0ZSIsWzcsWzE1LCJlIl0sWzE1LCJmIl1dXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJPYmplY3QiXV0sWzUyLCJjIixbOF1dLFs2NSwiZSIsWzIsWzE1LCJiIl0sImVudHJpZXMiLFs3LFsxNSwiYSJdXV0sWzQ2LFs1MyxbNTIsImYiLFsxNixbMTUsImUiXSwwXV0sWzIyLFszMCxbMjAsWzE1LCJmIl0sImZ1bmN0aW9uIl0sWzIwLFsxNSwiZiJdLCJpbnN0YW5jZV9uYW1lIl1dLFs0NixbNTMsWzQzLFsxNSwiYyJdLFsxNSwiZiJdLFs0NV1dXV0sWzQ2LFs1MyxbNDMsWzE1LCJjIl0sWzE1LCJmIl0sWzE2LFsxNSwiZSJdLDFdXV1dXV1dXSxbImQiLFsxNSwiYyJdLCJjb29raWVEb21haW4iLCJjb29raWVEb21haW4iXSxbNjUsImUiLFsyLFsxNSwiYiJdLCJrZXlzIixbNyxbMTUsImMiXV1dLFs0NixbNTMsWzQzLFsxNSwiYyJdLFswLCJ2dHBfIixbMTUsImUiXV0sWzE2LFsxNSwiYyJdLFsxNSwiZSJdXV1dXV0sWzM2LFsxNSwiYyJdXV0KICxbNTAsIl9fZ29vZ3RhZyIsWzQ2LCJhIl0sWzUwLCJtIixbNDYsInYiLCJ3Il0sWzY2LCJ4IixbMixbMTUsImIiXSwia2V5cyIsWzcsWzE1LCJ3Il1dXSxbNDYsWzUzLFs0MyxbMTUsInYiXSxbMTUsIngiXSxbMTYsWzE1LCJ3Il0sWzE1LCJ4Il1dXV1dXV0sWzUwLCJuIixbNDZdLFszNixbNyxbMTcsWzE1LCJmIl0sIklEIl0sWzE3LFsxNSwiZiJdLCJJVyJdXV1dLFs1MCwibyIsWzQ2LCJ2Il0sWzUyLCJ3IixbIm4iXV0sWzY1LCJ4IixbMTUsInciXSxbNDYsWzUzLFs1MiwieSIsWzE2LFsxNSwidiJdLFsxNSwieCJdXV0sWzIyLFsxNSwieSJdLFs0NixbMzYsWzE1LCJ5Il1dXV1dXV0sWzM2LFs0NF1dXSxbNTIsImIiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImNyZWF0ZUFyZ3VtZW50c1F1ZXVlIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9ndGFnIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ3RhZ0NvbmZpZyJdXSxbNTIsImYiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImciLFsicmVxdWlyZSIsImdldFR5cGUiXV0sWzUyLCJoIixbInJlcXVpcmUiLCJpbnRlcm5hbC5sb2FkR29vZ2xlVGFnIl1dLFs1MiwiaSIsWyJyZXF1aXJlIiwibG9nVG9Db25zb2xlIl1dLFs1MiwiaiIsWyJyZXF1aXJlIiwibWFrZU51bWJlciJdXSxbNTIsImsiLFsicmVxdWlyZSIsIm1ha2VTdHJpbmciXV0sWzUyLCJsIixbInJlcXVpcmUiLCJtYWtlVGFibGVNYXAiXV0sWzUyLCJwIixbMzAsWzE3LFsxNSwiYSJdLCJ0YWdJZCJdLCIiXV0sWzIyLFszMCxbMjEsWyJnIixbMTUsInAiXV0sInN0cmluZyJdLFsyNCxbMixbMTUsInAiXSwiaW5kZXhPZiIsWzcsIi0iXV0sMF1dLFs0NixbNTMsWyJpIixbMCwiSW52YWxpZCBNZWFzdXJlbWVudCBJRCBmb3IgdGhlIEdBNCBDb25maWd1cmF0aW9uIHRhZzogIixbMTUsInAiXV1dLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbNTIsInEiLFszMCxbMTcsWzE1LCJhIl0sImNvbmZpZ1NldHRpbmdzVmFyaWFibGUiXSxbOF1dXSxbNTIsInIiLFszMCxbImwiLFszMCxbMTcsWzE1LCJhIl0sImNvbmZpZ1NldHRpbmdzVGFibGUiXSxbN11dLCJwYXJhbWV0ZXIiLCJwYXJhbWV0ZXJWYWx1ZSJdLFs4XV1dLFsibSIsWzE1LCJxIl0sWzE1LCJyIl1dLFs1MiwicyIsWzMwLFsxNyxbMTUsImEiXSwiZXZlbnRTZXR0aW5nc1ZhcmlhYmxlIl0sWzhdXV0sWzUyLCJ0IixbMzAsWyJsIixbMzAsWzE3LFsxNSwiYSJdLCJldmVudFNldHRpbmdzVGFibGUiXSxbN11dLCJwYXJhbWV0ZXIiLCJwYXJhbWV0ZXJWYWx1ZSJdLFs4XV1dLFsibSIsWzE1LCJzIl0sWzE1LCJ0Il1dLFs1MiwidSIsWzE1LCJxIl1dLFsibSIsWzE1LCJ1Il0sWzE1LCJzIl1dLFsyMixbMzAsWzIsWzE1LCJ1Il0sImhhc093blByb3BlcnR5IixbNyxbMTcsWzE1LCJmIl0sIkpTIl1dXSxbMTcsWzE1LCJhIl0sInVzZXJQcm9wZXJ0aWVzIl1dLFs0NixbNTMsWzUyLCJ2IixbMzAsWzE2LFsxNSwidSJdLFsxNyxbMTUsImYiXSwiSlMiXV0sWzhdXV0sWyJtIixbMTUsInYiXSxbMzAsWyJsIixbMzAsWzE3LFsxNSwiYSJdLCJ1c2VyUHJvcGVydGllcyJdLFs3XV0sIm5hbWUiLCJ2YWx1ZSJdLFs4XV1dLFs0MyxbMTUsInUiXSxbMTcsWzE1LCJmIl0sIkpTIl0sWzE1LCJ2Il1dXV1dLFsyLFsxNSwiZCJdLCJFIixbNyxbMTUsInUiXSxbMTcsWzE1LCJkIl0sIkIiXSxbNTEsIiIsWzcsInYiXSxbMzYsWzM5LFsyMCwiZmFsc2UiLFsyLFsiayIsWzE1LCJ2Il1dLCJ0b0xvd2VyQ2FzZSIsWzddXV0sZmFsc2UsWzI4LFsyOCxbMTUsInYiXV1dXV1dXV0sWzIsWzE1LCJkIl0sIkUiLFs3LFsxNSwidSJdLFsxNyxbMTUsImQiXSwiRCJdLFs1MSwiIixbNywidiJdLFszNixbImoiLFsxNSwidiJdXV1dXV0sWyJoIixbMTUsInAiXSxbOCwiZmlyc3RQYXJ0eVVybCIsWyJvIixbMTUsInUiXV1dXSxbImUiLFsxNSwicCJdLFsxNSwidSJdLFs4LCJub1RhcmdldEdyb3VwIix0cnVlXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9faHRtbCIsWzQ2LCJhIl0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pbmplY3RIdG1sIl1dLFsiYiIsWzE3LFsxNSwiYSJdLCJodG1sIl0sWzE3LFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiXSxbMTcsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSJdLFsxNyxbMTUsImEiXSwidXNlSWZyYW1lIl0sWzE3LFsxNSwiYSJdLCJzdXBwb3J0RG9jdW1lbnRXcml0ZSJdXV0KICxbNTAsIl9fanNtIixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmV4ZWN1dGVKYXZhc2NyaXB0U3RyaW5nIl1dLFsyMixbMjAsWzE3LFsxNSwiYSJdLCJqYXZhc2NyaXB0Il0sWzQ0XV0sWzQ2LFszNl1dXSxbMzYsWyJiIixbMTcsWzE1LCJhIl0sImphdmFzY3JpcHQiXV1dXQogLFs1MCwiX19rIixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImNvcHlGcm9tRGF0YUxheWVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiZ2V0Q29va2llVmFsdWVzIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucGFyc2VDb29raWVWYWx1ZXNGcm9tU3RyaW5nIl1dLFs1MiwiZSIsWyJiIiwiZ3RtLmNvb2tpZSIsMV1dLFsyMixbMTUsImUiXSxbNDYsWzUzLFszNixbMTYsWyJkIixbMTUsImUiXSxbMTcsWzE1LCJhIl0sIm5hbWUiXSxbMjgsWzI4LFsxNyxbMTUsImEiXSwiZGVjb2RlQ29va2llIl1dXV0sMF1dXV1dLFszNixbMTYsWyJjIixbMTcsWzE1LCJhIl0sIm5hbWUiXSxbMjgsWzI4LFsxNyxbMTUsImEiXSwiZGVjb2RlQ29va2llIl1dXV0sMF1dXQogLFs1MCwiX19sY2wiLFs0NiwiYSJdLFs1MiwiYiIsWyJyZXF1aXJlIiwibWFrZUludGVnZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJtYWtlU3RyaW5nIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25MaW5rQ2xpY2siXV0sWzUyLCJlIixbOF1dLFsyMixbMTcsWzE1LCJhIl0sIndhaXRGb3JUYWdzIl0sWzQ2LFs1MyxbNDMsWzE1LCJlIl0sIndhaXRGb3JUYWdzIix0cnVlXSxbNDMsWzE1LCJlIl0sIndhaXRGb3JUYWdzVGltZW91dCIsWyJiIixbMTcsWzE1LCJhIl0sIndhaXRGb3JUYWdzVGltZW91dCJdXV1dXV0sWzIyLFsxNyxbMTUsImEiXSwiY2hlY2tWYWxpZGF0aW9uIl0sWzQ2LFs1MyxbNDMsWzE1LCJlIl0sImNoZWNrVmFsaWRhdGlvbiIsdHJ1ZV1dXV0sWzUyLCJmIixbMzAsWzE3LFsxNSwiYSJdLCJ1bmlxdWVUcmlnZ2VySWQiXSwiMCJdXSxbImQiLFsxNSwiZSJdLFsxNSwiZiJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19yIixbNDYsImEiXSxbMzYsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFsicmVxdWlyZSIsImdlbmVyYXRlUmFuZG9tIl1dLFsiJDAiLFszMCxbMTcsWzE1LCJhIl0sIm1pbiJdLDBdLFszMCxbMTcsWzE1LCJhIl0sIm1heCJdLDIuMTQ3NDgzNjQ3RTldXV1dXQogLFs1MCwiX19zbW0iLFs0NiwiYSJdLFs1MiwiYiIsWzE3LFsxNSwiYSJdLCJpbnB1dCJdXSxbNTIsImMiLFszMCxbMTMsWzQxLCIkMCJdLFszLCIkMCIsWyJyZXF1aXJlIiwibWFrZVRhYmxlTWFwIl1dLFsiJDAiLFszMCxbMTcsWzE1LCJhIl0sIm1hcCJdLFs3XV0sImtleSIsInZhbHVlIl1dLFs4XV1dLFszNixbMzksWzIsWzE1LCJjIl0sImhhc093blByb3BlcnR5IixbNyxbMTUsImIiXV1dLFsxNixbMTUsImMiXSxbMTUsImIiXV0sWzE3LFsxNSwiYSJdLCJkZWZhdWx0VmFsdWUiXV1dXQogLFs1MCwiX190ZyIsWzQ2LCJhIl0sWzUwLCJtIixbNDYsIm8iXSxbMixbMTUsImgiXSwicHVzaCIsWzcsWzE1LCJvIl1dXSxbMjIsWzE4LFsxNyxbMTUsImgiXSwibGVuZ3RoIl0sMV0sWzQ2LFszNl1dXSxbImIiLFs1MSwiIixbN10sWzUyLCJwIixbMixbMTUsImgiXSwiam9pbiIsWzcsIiwiXV1dLFs0MyxbMTUsImgiXSwibGVuZ3RoIiwwXSxbImMiLFs4LCJldmVudCIsImd0bS50cmlnZ2VyR3JvdXAiLCJndG0udHJpZ2dlcnMiLFsxNSwicCJdXV1dXV0sWzUwLCJuIixbNDYsIm8iLCJwIl0sWzUyLCJxIixbMTYsWzE1LCJlIl0sWzE1LCJwIl1dXSxbNTIsInIiLFsyLFsxNSwicSJdLCJpbmRleE9mIixbNyxbMTUsIm8iXV1dXSxbMjIsWzIwLFsxNSwiciJdLFsyNywxXV0sWzQ2LFszNl1dXSxbMixbMTUsInEiXSwic3BsaWNlIixbNyxbMTUsInIiXSwxXV0sWzIyLFsxNyxbMTUsInEiXSwibGVuZ3RoIl0sWzQ2LFszNl1dXSxbIm0iLFsxNSwicCJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJjYWxsTGF0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5wdXNoVG9EYXRhTGF5ZXIiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJlIixbMzAsWzIsWzE1LCJkIl0sImdldEl0ZW0iLFs3LCJncm91cHMiXV0sWzhdXV0sWzIsWzE1LCJkIl0sInNldEl0ZW0iLFs3LCJncm91cHMiLFsxNSwiZSJdXV0sWzUyLCJmIixbMzAsWzIsWzE1LCJkIl0sImdldEl0ZW0iLFs3LCJmaXJpbmdJZE1hcCJdXSxbOF1dXSxbMixbMTUsImQiXSwic2V0SXRlbSIsWzcsImZpcmluZ0lkTWFwIixbMTUsImYiXV1dLFs1MiwiZyIsWzMwLFsyLFsxNSwiZCJdLCJnZXRJdGVtIixbNywidHJpZ2dlcnNGaXJlZEVhcmx5Il1dLFs3XV1dLFsyLFsxNSwiZCJdLCJzZXRJdGVtIixbNywidHJpZ2dlcnNGaXJlZEVhcmx5IixbMTUsImciXV1dLFs1MiwiaCIsWzMwLFsyLFsxNSwiZCJdLCJnZXRJdGVtIixbNywidHJpZ2dlcklkcyJdXSxbN11dXSxbMixbMTUsImQiXSwic2V0SXRlbSIsWzcsInRyaWdnZXJJZHMiLFsxNSwiaCJdXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbNTIsImkiLFsxNyxbMTUsImEiXSwidW5pcXVlVHJpZ2dlcklkIl1dLFs1MiwiaiIsWzE3LFsxNSwiYSJdLCJ0cmlnZ2VySWRzIl1dLFs1MiwiayIsWzE3LFsxNSwiYSJdLCJmaXJpbmdJZCJdXSxbNTIsImwiLFsxNyxbMTUsImEiXSwiaXNMaXN0ZW5pbmdUYWciXV0sWzIyLFsxNSwibCJdLFs0NixbNTMsWzUyLCJvIixbMTYsWzE1LCJmIl0sWzE1LCJrIl1dXSxbMjIsWzI4LFsxNSwibyJdXSxbNDYsWzUzLFsyLFsxNSwiZyJdLCJwdXNoIixbNyxbMTUsImsiXV1dLFszNl1dXV0sWyJuIixbMTUsImsiXSxbMTUsIm8iXV0sWzM2XV1dXSxbNDMsWzE1LCJlIl0sWzE1LCJpIl0sWzE1LCJqIl1dLFs2NSwibyIsWzE1LCJqIl0sWzQ2LFs1MyxbNDMsWzE1LCJmIl0sWzE1LCJvIl0sWzE1LCJpIl1dXV1dLFs2NSwibyIsWzE1LCJnIl0sWzQ2LFs1MyxbIm4iLFsxNSwibyJdLFsxNSwiaSJdXV1dXV0KICxbNTAsIl9fdSIsWzQ2LCJhIl0sWzUwLCJrIixbNDYsImwiLCJtIl0sWzUyLCJuIixbMTcsWzE1LCJtIl0sIm11bHRpUXVlcnlLZXlzIl1dLFs1MiwibyIsWzMwLFsxNyxbMTUsIm0iXSwicXVlcnlLZXkiXSwiIl1dLFs1MiwicCIsWzE3LFsxNSwibSJdLCJpZ25vcmVFbXB0eVF1ZXJ5UGFyYW0iXV0sWzIyLFsyMCxbMTUsIm8iXSwiIl0sWzQ2LFs1MyxbNTIsInIiLFsyLFsxNyxbImkiLFsxNSwibCJdXSwic2VhcmNoIl0sInJlcGxhY2UiLFs3LCI/IiwiIl1dXSxbMzYsWzM5LFsxLFsyOCxbMTUsInIiXV0sWzE1LCJwIl1dLFs0NF0sWzE1LCJyIl1dXV1dXSxbNDEsInEiXSxbMjIsWzE1LCJuIl0sWzQ2LFs1MyxbMjIsWzIwLFsiZSIsWzE1LCJvIl1dLCJhcnJheSJdLFs0NixbNTMsWzMsInEiLFsxNSwibyJdXV1dLFs0NixbNTMsWzUyLCJyIixbImMiLCJcXHMrIiwiZyJdXSxbMywicSIsWzIsWzIsWyJmIixbMTUsIm8iXV0sInJlcGxhY2UiLFs3LFsxNSwiciJdLCIiXV0sInNwbGl0IixbNywiLCJdXV1dXV1dXSxbNDYsWzUzLFszLCJxIixbNyxbImYiLFsxNSwibyJdXV1dXV1dLFs2NSwiciIsWzE1LCJxIl0sWzQ2LFs1MyxbNTIsInMiLFsyLFsxNSwiaCJdLCJIIixbNyxbMTUsImwiXSxbMTUsInIiXV1dXSxbMjIsWzI5LFsxNSwicyJdLFs0NF1dLFs0NixbNTMsWzIyLFsxLFsxNSwicCJdLFsyMCxbMTUsInMiXSwiIl1dLFs0NixbNTMsWzZdXV1dLFszNixbMTUsInMiXV1dXV1dXV0sWzM2LFs0NF1dXSxbNTIsImIiLFsicmVxdWlyZSIsImNvcHlGcm9tRGF0YUxheWVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY3JlYXRlUmVnZXgiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJnZXRVcmwiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiZiIsWyJyZXF1aXJlIiwibWFrZVN0cmluZyJdXSxbNTIsImciLFsicmVxdWlyZSIsInBhcnNlVXJsIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV9sZWdhY3lVcmxzIl1dLFs1MiwiaSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwubGVnYWN5UGFyc2VVcmwiXV0sWzQxLCJqIl0sWzIyLFsxNyxbMTUsImEiXSwiY3VzdG9tVXJsU291cmNlIl0sWzQ2LFs1MyxbMywiaiIsWzE3LFsxNSwiYSJdLCJjdXN0b21VcmxTb3VyY2UiXV1dXSxbNDYsWzUzLFszLCJqIixbImIiLCJndG0udXJsIiwxXV1dXV0sWzMsImoiLFszMCxbMTUsImoiXSxbImQiXV1dLFszOCxbMTcsWzE1LCJhIl0sImNvbXBvbmVudCJdLFs0NiwiUFJPVE9DT0wiLCJIT1NUIiwiUE9SVCIsIlBBVEgiLCJFWFRFTlNJT04iLCJRVUVSWSIsIkZSQUdNRU5UIiwiVVJMIl0sWzQ2LFs1LFs0NixbMzYsWzIsWzE1LCJoIl0sIkIiLFs3LFsxNSwiaiJdXV1dXV0sWzUsWzQ2LFszNixbMixbMTUsImgiXSwiQyIsWzcsWzE1LCJqIl0sWzE3LFsxNSwiYSJdLCJzdHJpcFd3dyJdXV1dXV0sWzUsWzQ2LFszNixbMixbMTUsImgiXSwiRCIsWzcsWzE1LCJqIl1dXV1dXSxbNSxbNDYsWzM2LFsyLFsxNSwiaCJdLCJFIixbNyxbMTUsImoiXSxbMTcsWzE1LCJhIl0sImRlZmF1bHRQYWdlcyJdXV1dXV0sWzUsWzQ2LFszNixbMixbMTUsImgiXSwiRiIsWzcsWzE1LCJqIl1dXV1dXSxbNSxbNDYsWzM2LFsiayIsWzE1LCJqIl0sWzE1LCJhIl1dXV1dLFs1LFs0NixbMzYsWzIsWzE1LCJoIl0sIkciLFs3LFsxNSwiaiJdXV1dXV0sWzUsWzQ2XV0sWzksWzQ2LFszNixbMixbMTUsImgiXSwiQSIsWzcsWyJmIixbMTUsImoiXV1dXV1dXV1dXQogLFs1MCwiX192IixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImNvcHlGcm9tRGF0YUxheWVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY3JlYXRlUmVnZXgiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiZSIsWzE3LFsxNSwiYSJdLCJuYW1lIl1dLFsyMixbMzAsWzI4LFsxNSwiZSJdXSxbMjEsWyJkIixbMTUsImUiXV0sInN0cmluZyJdXSxbNDYsWzM2LGZhbHNlXV1dLFs1MiwiZiIsWzIsWzE1LCJlIl0sInJlcGxhY2UiLFs3LFsiYyIsIlxcXFwuIiwiZyJdLCIuIl1dXSxbNTIsImciLFsiYiIsWzE1LCJmIl0sWzMwLFsxNyxbMTUsImEiXSwiZGF0YUxheWVyVmVyc2lvbiJdLDFdXV0sWzM2LFszOSxbMjEsWzE1LCJnIl0sWzQ0XV0sWzE1LCJnIl0sWzE3LFsxNSwiYSJdLCJkZWZhdWx0VmFsdWUiXV1dXQogLFs1MCwiX195dGwiLFs0NiwiYSJdLFs1MCwiZiIsWzQ2LCJoIl0sWzUyLCJpIixbMzksWzIwLFsxNyxbMTUsImgiXSwidW5pcXVlVHJpZ2dlcklkIl0sWzQ0XV0sIiIsWzE3LFsxNSwiaCJdLCJ1bmlxdWVUcmlnZ2VySWQiXV1dLFs1MiwiaiIsWzgsImNhcHR1cmVTdGFydCIsWzE3LFsxNSwiaCJdLCJjYXB0dXJlU3RhcnQiXSwiY2FwdHVyZUNvbXBsZXRlIixbMTcsWzE1LCJoIl0sImNhcHR1cmVDb21wbGV0ZSJdLCJjYXB0dXJlUGF1c2UiLFsxNyxbMTUsImgiXSwiY2FwdHVyZVBhdXNlIl0sImZpeE1pc3NpbmdBcGkiLFsxNyxbMTUsImgiXSwiZml4TWlzc2luZ0FwaSJdLCJwcm9ncmVzc1RocmVzaG9sZHNQZXJjZW50IixbImciLFsxNyxbMTUsImgiXSwicHJvZ3Jlc3NUaHJlc2hvbGRzUGVyY2VudCJdXSwicHJvZ3Jlc3NUaHJlc2hvbGRzVGltZUluU2Vjb25kcyIsWyJnIixbMTcsWzE1LCJoIl0sInByb2dyZXNzVGhyZXNob2xkc1RpbWVJblNlY29uZHMiXV1dXSxbImMiLFsxNSwiaiJdLFsxNSwiaSJdXSxbMixbMTUsImgiXSwiZ3RtT25TdWNjZXNzIixbN11dXSxbNTAsImciLFs0NiwiaCJdLFs1MiwiaSIsWzIsWyJlIixbMTUsImgiXV0sInNwbGl0IixbNywiLCJdXV0sWzUyLCJqIixbN11dLFs2NiwiayIsWzE1LCJpIl0sWzQ2LFs1MyxbMjIsWzEyLFsxNyxbMixbMTUsImsiXSwidHJpbSIsWzddXSwibGVuZ3RoIl0sMF0sWzQ2LFs1MyxbNl1dXV0sWzUyLCJsIixbImQiLFsxNSwiayJdXV0sWzIyLFsyMSxbMTUsImwiXSxbMTUsImwiXV0sWzQ2LFs1MyxbNl1dXV0sWzIsWzE1LCJqIl0sInB1c2giLFs3LFsxNSwibCJdXV1dXV0sWzM2LFsxNSwiaiJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJjYWxsT25Eb21SZWFkeSJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uWW91VHViZUFjdGl2aXR5Il1dLFs1MiwiZCIsWyJyZXF1aXJlIiwibWFrZU51bWJlciJdXSxbNTIsImUiLFsicmVxdWlyZSIsIm1ha2VTdHJpbmciXV0sWzIyLFsxNyxbMTUsImEiXSwidHJpZ2dlclN0YXJ0T3B0aW9uIl0sWzQ2LFs1MyxbImYiLFsxNSwiYSJdXV1dLFs0NixbNTMsWyJiIixbNTEsIiIsWzddLFszNixbImYiLFsxNSwiYSJdXV1dXV1dXV0KICxbNTIsIl9fbW9kdWxlX2Fkd29yZHNIaXRUeXBlIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiY29udmVyc2lvbiJdLFs1MiwiYyIsImZsb29kbGlnaHQiXSxbNTIsImQiLCJnYV9jb252ZXJzaW9uIl0sWzUyLCJlIiwicGFnZV92aWV3Il0sWzUyLCJmIiwicmVtYXJrZXRpbmciXSxbNTIsImciLCJ1c2VyX2RhdGFfbGVhZCJdLFs1MiwiaCIsInVzZXJfZGF0YV93ZWIiXSxbMzYsWzgsIkQiLFsxNSwiYiJdLCJFIixbMTUsImMiXSwiRiIsWzE1LCJkIl0sIkgiLFsxNSwiZSJdLCJJIixbMTUsImYiXSwiSiIsWzE1LCJnIl0sIksiLFsxNSwiaCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZ3RhZ1NjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImFkX3BlcnNvbmFsaXphdGlvbiJdLFs1MiwiYyIsImFkX3N0b3JhZ2UiXSxbNTIsImQiLCJhZF91c2VyX2RhdGEiXSxbNTIsImUiLCJjb25zZW50X3VwZGF0ZWQiXSxbNTIsImYiLCJhcHBfcmVtb3ZlIl0sWzUyLCJnIiwiYXBwX3N0b3JlX3JlZnVuZCJdLFs1MiwiaCIsImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY2FuY2VsIl0sWzUyLCJpIiwiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9jb252ZXJ0Il0sWzUyLCJqIiwiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9yZW5ldyJdLFs1MiwiayIsImNvbnZlcnNpb24iXSxbNTIsImwiLCJwdXJjaGFzZSJdLFs1MiwibSIsImZpcnN0X29wZW4iXSxbNTIsIm4iLCJmaXJzdF92aXNpdCJdLFs1MiwibyIsImd0YWcuY29uZmlnIl0sWzUyLCJwIiwiaW5fYXBwX3B1cmNoYXNlIl0sWzUyLCJxIiwicGFnZV92aWV3Il0sWzUyLCJyIiwic2Vzc2lvbl9zdGFydCJdLFs1MiwicyIsInVzZXJfZW5nYWdlbWVudCJdLFs1MiwidCIsImFkc19kYXRhX3JlZGFjdGlvbiJdLFs1MiwidSIsImFsbG93X2FkX3BlcnNvbmFsaXphdGlvbl9zaWduYWxzIl0sWzUyLCJ2IiwiYWxsb3dfY3VzdG9tX3NjcmlwdHMiXSxbNTIsInciLCJhbGxvd19lbmhhbmNlZF9jb252ZXJzaW9ucyJdLFs1MiwieCIsImFsbG93X2dvb2dsZV9zaWduYWxzIl0sWzUyLCJ5IiwiYXVpZCJdLFs1MiwieiIsImF3X3JlbWFya2V0aW5nX29ubHkiXSxbNTIsImFBIiwiZGlzY291bnQiXSxbNTIsImFCIiwiYXdfZmVlZF9jb3VudHJ5Il0sWzUyLCJhQyIsImF3X2ZlZWRfbGFuZ3VhZ2UiXSxbNTIsImFEIiwiaXRlbXMiXSxbNTIsImFFIiwiYXdfbWVyY2hhbnRfaWQiXSxbNTIsImFGIiwiYXdfYmFza2V0X3R5cGUiXSxbNTIsImFHIiwiY2xpZW50X2lkIl0sWzUyLCJhSCIsImNvbnZlcnNpb25fY29va2llX3ByZWZpeCJdLFs1MiwiYUkiLCJjb252ZXJzaW9uX2lkIl0sWzUyLCJhSiIsImNvbnZlcnNpb25fbGlua2VyIl0sWzUyLCJhSyIsImNvbnZlcnNpb25fYXBpIl0sWzUyLCJhTCIsImNvb2tpZV9kZXByZWNhdGlvbiJdLFs1MiwiYU0iLCJjb29raWVfZXhwaXJlcyJdLFs1MiwiYU4iLCJjb29raWVfcHJlZml4Il0sWzUyLCJhTyIsImNvb2tpZV91cGRhdGUiXSxbNTIsImFQIiwiY291bnRyeSJdLFs1MiwiYVEiLCJjdXJyZW5jeSJdLFs1MiwiYVIiLCJjdXN0b21lcl9saWZldGltZV92YWx1ZSJdLFs1MiwiYVMiLCJjdXN0b21lcl90eXBlIl0sWzUyLCJhVCIsImRlYnVnX21vZGUiXSxbNTIsImFVIiwic2hpcHBpbmciXSxbNTIsImFWIiwiZW5nYWdlbWVudF90aW1lX21zZWMiXSxbNTIsImFXIiwiZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGUiXSxbNTIsImFYIiwiZXZlbnRfZGV2ZWxvcGVyX2lkX3N0cmluZyJdLFs1MiwiYVkiLCJldmVudF9pZCJdLFs1MiwiYVoiLCJldmVudCJdLFs1MiwiYkEiLCJfJmFlIl0sWzUyLCJiQiIsImV2ZW50X3RpbWVvdXQiXSxbNTIsImJDIiwiZXh0X2NsaWVudF9pZCJdLFs1MiwiYkQiLCJmaXJzdF9wYXJ0eV9jb2xsZWN0aW9uIl0sWzUyLCJiRSIsIm1hdGNoX2lkIl0sWzUyLCJiRiIsImdkcHJfYXBwbGllcyJdLFs1MiwiYkciLCJfZ3RfbWV0YWRhdGEiXSxbNTIsImJIIiwiZ29vZ2xlX2FuYWx5c2lzX3BhcmFtcyJdLFs1MiwiYkkiLCJfZ29vZ2xlX25nIl0sWzUyLCJiSiIsIl9vbm8iXSxbNTIsImJLIiwiZ3BwX3NpZCJdLFs1MiwiYkwiLCJncHBfc3RyaW5nIl0sWzUyLCJiTSIsImdzYV9leHBlcmltZW50X2lkIl0sWzUyLCJiTiIsImd0YWdfZXZlbnRfZmVhdHVyZV91c2FnZSJdLFs1MiwiYk8iLCJpZnJhbWVfc3RhdGUiXSxbNTIsImJQIiwiaWdub3JlX3JlZmVycmVyIl0sWzUyLCJiUSIsImlzX3Bhc3N0aHJvdWdoIl0sWzUyLCJiUiIsImxhbmd1YWdlIl0sWzUyLCJiUyIsIm1lcmNoYW50X2ZlZWRfbGFiZWwiXSxbNTIsImJUIiwibWVyY2hhbnRfZmVlZF9sYW5ndWFnZSJdLFs1MiwiYlUiLCJtZXJjaGFudF9pZCJdLFs1MiwiYlYiLCJuZXdfY3VzdG9tZXIiXSxbNTIsImJXIiwicGFnZV9ob3N0bmFtZSJdLFs1MiwiYlgiLCJwYWdlX3BhdGgiXSxbNTIsImJZIiwicGFnZV9yZWZlcnJlciJdLFs1MiwiYloiLCJwYWdlX3RpdGxlIl0sWzUyLCJjQSIsIl9wbGF0aW51bV9yZXF1ZXN0X3N0YXR1cyJdLFs1MiwiY0IiLCJxdWFudGl0eSJdLFs1MiwiY0MiLCJyZXN0cmljdGVkX2RhdGFfcHJvY2Vzc2luZyJdLFs1MiwiY0QiLCJzY3JlZW5fcmVzb2x1dGlvbiJdLFs1MiwiY0UiLCJzZW5kX3BhZ2VfdmlldyJdLFs1MiwiY0YiLCJzZXJ2ZXJfY29udGFpbmVyXzNwX2VucmljaG1lbnQiXSxbNTIsImNHIiwic2VydmVyX2NvbnRhaW5lcl91cmwiXSxbNTIsImNIIiwic2Vzc2lvbl9kdXJhdGlvbiJdLFs1MiwiY0kiLCJzZXNzaW9uX2VuZ2FnZWRfdGltZSJdLFs1MiwiY0oiLCJzZXNzaW9uX2lkIl0sWzUyLCJjSyIsIl9zaGFyZWRfdXNlcl9pZCJdLFs1MiwiY0wiLCJkZWxpdmVyeV9wb3N0YWxfY29kZSJdLFs1MiwiY00iLCJ0ZXN0b25seSJdLFs1MiwiY04iLCJ0b3Btb3N0X3VybCJdLFs1MiwiY08iLCJ0cmFuc2FjdGlvbl9pZCJdLFs1MiwiY1AiLCJ0cmFuc2FjdGlvbl9pZF9zb3VyY2UiXSxbNTIsImNRIiwidHJhbnNwb3J0X3VybCJdLFs1MiwiY1IiLCJ1cGRhdGUiXSxbNTIsImNTIiwiX3VzZXJfYWdlbnRfYXJjaGl0ZWN0dXJlIl0sWzUyLCJjVCIsIl91c2VyX2FnZW50X2JpdG5lc3MiXSxbNTIsImNVIiwiX3VzZXJfYWdlbnRfZnVsbF92ZXJzaW9uX2xpc3QiXSxbNTIsImNWIiwiX3VzZXJfYWdlbnRfbW9iaWxlIl0sWzUyLCJjVyIsIl91c2VyX2FnZW50X21vZGVsIl0sWzUyLCJjWCIsIl91c2VyX2FnZW50X3BsYXRmb3JtIl0sWzUyLCJjWSIsIl91c2VyX2FnZW50X3BsYXRmb3JtX3ZlcnNpb24iXSxbNTIsImNaIiwiX3VzZXJfYWdlbnRfd293NjQiXSxbNTIsImRBIiwidXNlcl9kYXRhIl0sWzUyLCJkQiIsInVzZXJfZGF0YV9hdXRvX2xhdGVuY3kiXSxbNTIsImRDIiwidXNlcl9kYXRhX2F1dG9fbWV0YSJdLFs1MiwiZEQiLCJ1c2VyX2RhdGFfYXV0b19tdWx0aSJdLFs1MiwiZEUiLCJ1c2VyX2RhdGFfYXV0b19zZWxlY3RvcnMiXSxbNTIsImRGIiwidXNlcl9kYXRhX2F1dG9fc3RhdHVzIl0sWzUyLCJkRyIsInVzZXJfZGF0YV9tb2RlIl0sWzUyLCJkSCIsInVzZXJfaWQiXSxbNTIsImRJIiwidXNlcl9wcm9wZXJ0aWVzIl0sWzUyLCJkSiIsInVzX3ByaXZhY3lfc3RyaW5nIl0sWzUyLCJkSyIsInZhbHVlIl0sWzUyLCJkTCIsIl9mcG1fcGFyYW1ldGVycyJdLFs1MiwiZE0iLCJfaG9zdF9uYW1lIl0sWzUyLCJkTiIsIl9pbl9wYWdlX2NvbW1hbmQiXSxbNTIsImRPIiwiX21lYXN1cmVtZW50X3R5cGUiXSxbNTIsImRQIiwibm9uX3BlcnNvbmFsaXplZF9hZHMiXSxbNTIsImRRIiwiY29udmVyc2lvbl9sYWJlbCJdLFs1MiwiZFIiLCJwYWdlX2xvY2F0aW9uIl0sWzUyLCJkUyIsIl9leHRyYWN0ZWRfZGF0YSJdLFs1MiwiZFQiLCJnbG9iYWxfZGV2ZWxvcGVyX2lkX3N0cmluZyJdLFs1MiwiZFUiLCJ0Y19wcml2YWN5X3N0cmluZyJdLFszNixbOCwiQSIsWzE1LCJiIl0sIkIiLFsxNSwiYyJdLCJDIixbMTUsImQiXSwiRiIsWzE1LCJlIl0sIkkiLFsxNSwiZiJdLCJKIixbMTUsImciXSwiSyIsWzE1LCJoIl0sIkwiLFsxNSwiaSJdLCJNIixbMTUsImoiXSwiTyIsWzE1LCJrIl0sIkFBIixbMTUsImwiXSwiQUYiLFsxNSwibSJdLCJBRyIsWzE1LCJuIl0sIkFIIixbMTUsIm8iXSwiQUoiLFsxNSwicCJdLCJBSyIsWzE1LCJxIl0sIkFNIixbMTUsInIiXSwiQVEiLFsxNSwicyJdLCJCQyIsWzE1LCJ0Il0sIkJKIixbMTUsInUiXSwiQksiLFsxNSwidiJdLCJCTSIsWzE1LCJ3Il0sIkJOIixbMTUsIngiXSwiQlQiLFsxNSwieSJdLCJCWCIsWzE1LCJ6Il0sIkJZIixbMTUsImFBIl0sIkJaIixbMTUsImFCIl0sIkNBIixbMTUsImFDIl0sIkNCIixbMTUsImFEIl0sIkNDIixbMTUsImFFIl0sIkNEIixbMTUsImFGIl0sIkNMIixbMTUsImFHIl0sIkNRIixbMTUsImFIIl0sIkNSIixbMTUsImFJIl0sIktHIixbMTUsImRRIl0sIkNTIixbMTUsImFKIl0sIkNVIixbMTUsImFLIl0sIkNXIixbMTUsImFMIl0sIkNZIixbMTUsImFNIl0sIkRDIixbMTUsImFOIl0sIkREIixbMTUsImFPIl0sIkRFIixbMTUsImFQIl0sIkRGIixbMTUsImFRIl0sIkRHIixbMTUsImFSIl0sIkRIIixbMTUsImFTIl0sIkROIixbMTUsImFUIl0sIkVBIixbMTUsImFVIl0sIkVDIixbMTUsImFWIl0sIkVHIixbMTUsImFXIl0sIkVKIixbMTUsImFYIl0sIkVLIixbMTUsImFZIl0sIkVOIixbMTUsImFaIl0sIkVPIixbMTUsImJBIl0sIkVRIixbMTUsImJCIl0sIktJIixbMTUsImRTIl0sIkVVIixbMTUsImJDIl0sIkVXIixbMTUsImJEIl0sIkZFIixbMTUsImJFIl0sIkZPIixbMTUsImJGIl0sIkZQIixbMTUsImJHIl0sIktKIixbMTUsImRUIl0sIkZUIixbMTUsImJIIl0sIkZVIixbMTUsImJJIl0sIkZWIixbMTUsImJKIl0sIkZZIixbMTUsImJLIl0sIkZaIixbMTUsImJMIl0sIkdCIixbMTUsImJNIl0sIkdDIixbMTUsImJOIl0sIkdFIixbMTUsImJPIl0sIkdGIixbMTUsImJQIl0sIkdLIixbMTUsImJRIl0sIkdNIixbMTUsImJSIl0sIkdUIixbMTUsImJTIl0sIkdVIixbMTUsImJUIl0sIkdWIixbMTUsImJVIl0sIkdaIixbMTUsImJWIl0sIkhDIixbMTUsImJXIl0sIktIIixbMTUsImRSIl0sIkhEIixbMTUsImJYIl0sIkhFIixbMTUsImJZIl0sIkhGIixbMTUsImJaIl0sIkhOIixbMTUsImNBIl0sIkhQIixbMTUsImNCIl0sIkhUIixbMTUsImNDIl0sIkhYIixbMTUsImNEIl0sIklBIixbMTUsImNFIl0sIklDIixbMTUsImNGIl0sIklEIixbMTUsImNHIl0sIklGIixbMTUsImNIIl0sIklIIixbMTUsImNJIl0sIklJIixbMTUsImNKIl0sIklLIixbMTUsImNLIl0sIklMIixbMTUsImNMIl0sIktLIixbMTUsImRVIl0sIklQIixbMTUsImNNIl0sIklSIixbMTUsImNOIl0sIklVIixbMTUsImNPIl0sIklWIixbMTUsImNQIl0sIklXIixbMTUsImNRIl0sIklZIixbMTUsImNSIl0sIkpCIixbMTUsImNTIl0sIkpDIixbMTUsImNUIl0sIkpEIixbMTUsImNVIl0sIkpFIixbMTUsImNWIl0sIkpGIixbMTUsImNXIl0sIkpHIixbMTUsImNYIl0sIkpIIixbMTUsImNZIl0sIkpJIixbMTUsImNaIl0sIkpKIixbMTUsImRBIl0sIkpLIixbMTUsImRCIl0sIkpMIixbMTUsImRDIl0sIkpNIixbMTUsImREIl0sIkpOIixbMTUsImRFIl0sIkpPIixbMTUsImRGIl0sIkpQIixbMTUsImRHIl0sIkpSIixbMTUsImRIIl0sIkpTIixbMTUsImRJIl0sIkpVIixbMTUsImRKIl0sIkpWIixbMTUsImRLIl0sIkpYIixbMTUsImRMIl0sIkpZIixbMTUsImRNIl0sIkpaIixbMTUsImROIl0sIktDIixbMTUsImRPIl0sIktEIixbMTUsImRQIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImFib3J0X3dpdGhvdXRfZmFpbCJdLFs1MiwiYyIsImFjY2VwdF9ieV9kZWZhdWx0Il0sWzUyLCJkIiwiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uIl0sWzUyLCJlIiwiY29uc2VudF9zdGF0ZSJdLFs1MiwiZiIsImNvbnNlbnRfdXBkYXRlZCJdLFs1MiwiZyIsImNvbnZlcnNpb25fbGlua2VyX2VuYWJsZWQiXSxbNTIsImgiLCJjb252ZXJzaW9uX21hcmtpbmdfY2FsbGVkIl0sWzUyLCJpIiwiY29va2llX29wdGlvbnMiXSxbNTIsImoiLCJkZWR1cGVfaWQiXSxbNTIsImsiLCJlbV9ldmVudCJdLFs1MiwibCIsImV2ZW50X3Byb3ZlbmFuY2UiXSxbNTIsIm0iLCJldmVudF9zb3VyY2UiXSxbNTIsIm4iLCJldmVudF9zdGFydF90aW1lc3RhbXBfbXMiXSxbNTIsIm8iLCJldmVudF91c2FnZSJdLFs1MiwicCIsImV4dHJhX3RhZ19leHBlcmltZW50X2lkcyJdLFs1MiwicSIsImZvcm1fZXZlbnRfY2FuY2VsZWQiXSxbNTIsInIiLCJnYTRfY29sbGVjdGlvbl9zdWJkb21haW4iXSxbNTIsInMiLCJndG1fZXh0cmFjdGVkX2RhdGEiXSxbNTIsInQiLCJoYW5kbGVfaW50ZXJuYWxseSJdLFs1MiwidSIsImhhc19nYV9jb252ZXJzaW9uX2NvbnNlbnRzIl0sWzUyLCJ2IiwiaGl0X3R5cGUiXSxbNTIsInciLCJoaXRfdHlwZV9vdmVycmlkZSJdLFs1MiwieCIsImlnbm9yZV9kdXBlX2NvbmZpZyJdLFs1MiwieSIsImlzX2NvbnZlcnNpb24iXSxbNTIsInoiLCJpc19leHRlcm5hbF9ldmVudCJdLFs1MiwiYUEiLCJpc19maXJzdF92aXNpdCJdLFs1MiwiYUIiLCJpc19maXJzdF92aXNpdF9jb252ZXJzaW9uIl0sWzUyLCJhQyIsImlzX2ZwbV9lbmNyeXB0aW9uIl0sWzUyLCJhRCIsImlzX2ZwbV9zcGxpdCJdLFs1MiwiYUUiLCJpc19nY3BfYnJvd3NlciJdLFs1MiwiYUYiLCJpc19nb29nbGVfbWVhc3VyZW1lbnRfYWxsb3dlZCJdLFs1MiwiYUciLCJpc19zZXJ2ZXJfc2lkZV9kZXN0aW5hdGlvbiJdLFs1MiwiYUgiLCJpc19zZXNzaW9uX3N0YXJ0Il0sWzUyLCJhSSIsImlzX3Nlc3Npb25fc3RhcnRfY29udmVyc2lvbiJdLFs1MiwiYUoiLCJpc19zZ3RtX2dhX2Fkc19jb252ZXJzaW9uX3N0dWR5X2NvbnRyb2xfZ3JvdXAiXSxbNTIsImFLIiwiaXNfc2d0bV9wcmVoaXQiXSxbNTIsImFMIiwiaXNfc3BsaXRfY29udmVyc2lvbiJdLFs1MiwiYU0iLCJpc19zeW4iXSxbNTIsImFOIiwiaXNfdGVzdF9ldmVudCJdLFs1MiwiYU8iLCJwcmVoaXRfZm9yX3JldHJ5Il0sWzUyLCJhUCIsInJlZGFjdF9hZHNfZGF0YSJdLFs1MiwiYVEiLCJyZWRhY3RfY2xpY2tfaWRzIl0sWzUyLCJhUiIsInNlbmRfY2NtX3BhcmFsbGVsX3BpbmciXSxbNTIsImFTIiwic2VuZF91c2VyX2RhdGFfaGl0Il0sWzUyLCJhVCIsInNwZWN1bGF0aXZlIl0sWzUyLCJhVSIsInN5bl9vcl9tb2QiXSxbNTIsImFWIiwidHJhbnNpZW50X2Vjc2lkIl0sWzUyLCJhVyIsInVzZXJfZGF0YSJdLFs1MiwiYVgiLCJ1c2VyX2RhdGFfZnJvbV9hdXRvbWF0aWMiXSxbNTIsImFZIiwidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljX2dldHRlciJdLFs1MiwiYVoiLCJ1c2VyX2RhdGFfZnJvbV9jb2RlIl0sWzUyLCJiQSIsInVzZXJfZGF0YV9mcm9tX21hbnVhbCJdLFszNixbOCwiQSIsWzE1LCJiIl0sIkIiLFsxNSwiYyJdLCJGIixbMTUsImQiXSwiTSIsWzE1LCJlIl0sIk4iLFsxNSwiZiJdLCJPIixbMTUsImciXSwiUCIsWzE1LCJoIl0sIlEiLFsxNSwiaSJdLCJTIixbMTUsImoiXSwiVCIsWzE1LCJrIl0sIloiLFsxNSwibCJdLCJBQSIsWzE1LCJtIl0sIkFCIixbMTUsIm4iXSwiQUMiLFsxNSwibyJdLCJBRCIsWzE1LCJwIl0sIkFKIixbMTUsInEiXSwiQUsiLFsxNSwiciJdLCJBTiIsWzE1LCJzIl0sIkFPIixbMTUsInQiXSwiQVAiLFsxNSwidSJdLCJBUSIsWzE1LCJ2Il0sIkFSIixbMTUsInciXSwiQVMiLFsxNSwieCJdLCJBViIsWzE1LCJ5Il0sIkFZIixbMTUsInoiXSwiQVoiLFsxNSwiYUEiXSwiQkEiLFsxNSwiYUIiXSwiQkMiLFsxNSwiYUMiXSwiQkQiLFsxNSwiYUQiXSwiQkUiLFsxNSwiYUUiXSwiQkYiLFsxNSwiYUYiXSwiQksiLFsxNSwiYUciXSwiQkwiLFsxNSwiYUgiXSwiQk0iLFsxNSwiYUkiXSwiQk4iLFsxNSwiYUoiXSwiQk8iLFsxNSwiYUsiXSwiQlEiLFsxNSwiYUwiXSwiQlIiLFsxNSwiYU0iXSwiQlMiLFsxNSwiYU4iXSwiQlkiLFsxNSwiYU8iXSwiQ0IiLFsxNSwiYVAiXSwiQ0MiLFsxNSwiYVEiXSwiQ0UiLFsxNSwiYVIiXSwiQ04iLFsxNSwiYVMiXSwiQ1EiLFsxNSwiYVQiXSwiQ1QiLFsxNSwiYVUiXSwiQ1UiLFsxNSwiYVYiXSwiQ1ciLFsxNSwiYVciXSwiQ1giLFsxNSwiYVgiXSwiQ1kiLFsxNSwiYVkiXSwiQ1oiLFsxNSwiYVoiXSwiREEiLFsxNSwiYkEiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2RhdGFQYXJhbXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImQiLFs0NiwiZiIsImciLCJoIiwiaSJdLFs1MiwiaiIsWzhdXSxbMjIsWzE1LCJmIl0sWzQ2LFs1MyxbNTQsImsiLFsxNSwiZiJdLFs0NixbNTMsWzQzLFsxNSwiaiJdLFsxNSwiayJdLFsxNixbMTUsImYiXSxbMTUsImsiXV1dXV1dXV1dLFsyMixbMSxbMSxbMTUsImciXSxbMTUsImgiXV0sWzE1LCJpIl1dLFs0NixbNTMsWzUyLCJrIixbImIiLFsxNSwiZyJdLFsxNSwiaCJdLFsxNSwiaSJdXV0sWzIyLFsxNSwiayJdLFs0NixbNTMsWzY2LCJsIixbMixbMTUsImMiXSwia2V5cyIsWzcsWzE1LCJrIl1dXSxbNDYsWzUzLFs0MyxbMTUsImoiXSxbMTUsImwiXSxbMTYsWzE1LCJrIl0sWzE1LCJsIl1dXV1dXV1dXV1dXSxbMzYsWzE1LCJqIl1dXSxbNTAsImUiLFs0NiwiZiIsImciLCJoIl0sWzM2LFszOSxbMzAsWzIwLFsxNSwiZiJdLFs0NF1dLFsyMCxbMTUsImYiXSxbMTUsImgiXV1dLFsxNSwiZyJdLFsxNSwiZiJdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwibWFrZVRhYmxlTWFwIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiT2JqZWN0Il1dLFszNixbOCwiQSIsWzE1LCJkIl0sIkIiLFsxNSwiZSJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZmVhdHVyZUZsYWdzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiw0NV0sWzUyLCJjIiw0Nl0sWzUyLCJkIiw0N10sWzUyLCJlIiwxNzRdLFs1MiwiZiIsMjc2XSxbMzYsWzgsIkYiLFsxNSwiYiJdLCJHIixbMTUsImMiXSwiSCIsWzE1LCJkIl0sIlYiLFsxNSwiZSJdLCJBRCIsWzE1LCJmIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9mZWF0dXJlcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsNDI1XSxbNTIsImMiLDQzNV0sWzUyLCJkIiw0ODhdLFs1MiwiZSIsNDg5XSxbNTIsImYiLDQ5OF0sWzUyLCJnIiw1MDNdLFs1MiwiaCIsNTA0XSxbNTIsImkiLDUwNl0sWzUyLCJqIiw1MjNdLFs1MiwiayIsNTMyXSxbNTIsImwiLDU1M10sWzUyLCJtIiw1NjhdLFs1MiwibiIsNTc3XSxbNTIsIm8iLDU4MV0sWzUyLCJwIiw1ODNdLFs1MiwicSIsNTkyXSxbNTIsInIiLDU5NF0sWzUyLCJzIiw1OTldLFszNixbOCwiQVYiLFsxNSwiayJdLCJBRCIsWzE1LCJkIl0sIkNJIixbMTUsInEiXSwiQlYiLFsxNSwibiJdLCJCTyIsWzE1LCJtIl0sIkNLIixbMTUsInIiXSwiQ1AiLFsxNSwicyJdLCJBTSIsWzE1LCJnIl0sIkJaIixbMTUsIm8iXSwiQVQiLFsxNSwiaiJdLCJBRSIsWzE1LCJlIl0sIkFOIixbMTUsImgiXSwiTCIsWzE1LCJjIl0sIkJDIixbMTUsImwiXSwiQU8iLFsxNSwiaSJdLCJDQiIsWzE1LCJwIl0sIkFJIixbMTUsImYiXSwiSSIsWzE1LCJiIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9vYmplY3QiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImUiLFs0NiwiZiIsImciXSxbNTIsImgiLFszMCxbMTUsImciXSxbMzksWyJjIixbMTUsImYiXV0sWzddLFs4XV1dXSxbNTUsImkiLFsxNSwiZiJdLFs0NixbNTMsWzUyLCJqIixbMTYsWzE1LCJmIl0sWzE1LCJpIl1dXSxbMjIsWyJjIixbMTUsImoiXV0sWzQ2LFs1MyxbMjIsWzI4LFsiYyIsWzE2LFsxNSwiaCJdLFsxNSwiaSJdXV1dLFs0NixbNTMsWzQzLFsxNSwiaCJdLFsxNSwiaSJdLFs3XV1dXV0sWzQzLFsxNSwiaCJdLFsxNSwiaSJdLFsiZSIsWzE1LCJqIl0sWzE2LFsxNSwiaCJdLFsxNSwiaSJdXV1dXV0sWzQ2LFsyMixbImQiLFsxNSwiaiJdXSxbNDYsWzUzLFsyMixbMjgsWyJkIixbMTYsWzE1LCJoIl0sWzE1LCJpIl1dXV0sWzQ2LFs1MyxbNDMsWzE1LCJoIl0sWzE1LCJpIl0sWzhdXV1dXSxbNDMsWzE1LCJoIl0sWzE1LCJpIl0sWyJlIixbMTUsImoiXSxbMTYsWzE1LCJoIl0sWzE1LCJpIl1dXV1dXSxbNDYsWzUzLFs0MyxbMTUsImgiXSxbMTUsImkiXSxbMTUsImoiXV1dXV1dXV1dXSxbMzYsWzE1LCJoIl1dXSxbNTIsImIiLFsicmVxdWlyZSIsImdldFR5cGUiXV0sWzUyLCJjIixbNTEsIiIsWzcsImYiXSxbMzYsWzEyLFsiYiIsWzE1LCJmIl1dLCJhcnJheSJdXV1dLFs1MiwiZCIsWzUxLCIiLFs3LCJmIl0sWzM2LFsxMixbImIiLFsxNSwiZiJdXSwib2JqZWN0Il1dXV0sWzM2LFs4LCJBIixbMTUsImUiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2dvbGRFdmVudFVzYWdlSWQiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLDFdLFs1MiwiYyIsMl0sWzUyLCJkIiw1XSxbNTIsImUiLDZdLFs1MiwiZiIsN10sWzUyLCJnIiw4XSxbNTIsImgiLDldLFs1MiwiaSIsMTFdLFs1MiwiaiIsMTVdLFs1MiwiayIsMTZdLFs1MiwibCIsMjBdLFs1MiwibSIsMjFdLFs1MiwibiIsMjNdLFs1MiwibyIsMjRdLFs1MiwicCIsMjddLFs1MiwicSIsNDBdLFs1MiwiciIsNDFdLFszNixbOCwiTyIsWzE1LCJqIl0sIlciLFsxNSwibiJdLCJQIixbMTUsImsiXSwiWCIsWzE1LCJvIl0sIksiLFsxNSwiaSJdLCJBIixbMTUsImIiXSwiVCIsWzE1LCJsIl0sIkUiLFsxNSwiZCJdLCJGIixbMTUsImUiXSwiQiIsWzE1LCJjIl0sIkgiLFsxNSwiZyJdLCJBTiIsWzE1LCJxIl0sIkkiLFsxNSwiaCJdLCJHIixbMTUsImYiXSwiVSIsWzE1LCJtIl0sIkFPIixbMTUsInIiXSwiQUEiLFsxNSwicCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfbGVnYWN5VXJscyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiaCIsWzQ2LCJwIl0sWzUyLCJxIixbMixbMTUsInAiXSwiaW5kZXhPZiIsWzcsIiMiXV1dLFszNixbMzksWzIzLFsxNSwicSJdLDBdLFsxNSwicCJdLFsyLFsxNSwicCJdLCJzdWJzdHJpbmciLFs3LDAsWzE1LCJxIl1dXV1dXSxbNTAsImkiLFs0NiwicCJdLFs1MiwicSIsWzE3LFsiZSIsWzE1LCJwIl1dLCJwcm90b2NvbCJdXSxbMzYsWzM5LFsxNSwicSJdLFsyLFsxNSwicSJdLCJyZXBsYWNlIixbNywiOiIsIiJdXSwiIl1dXSxbNTAsImoiLFs0NiwicCIsInEiXSxbNDEsInIiXSxbMywiciIsWzE3LFsiZSIsWzE1LCJwIl1dLCJob3N0bmFtZSJdXSxbMjIsWzI4LFsxNSwiciJdXSxbNDYsWzM2LCIiXV1dLFs1MiwicyIsWyJiIiwiOlswLTldKyJdXSxbMywiciIsWzIsWzE1LCJyIl0sInJlcGxhY2UiLFs3LFsxNSwicyJdLCIiXV1dLFsyMixbMTUsInEiXSxbNDYsWzUzLFs1MiwidCIsWyJiIiwiXnd3d1xcZCpcXC4iXV0sWzUyLCJ1IixbMixbMTUsInIiXSwibWF0Y2giLFs3LFsxNSwidCJdXV1dLFsyMixbMSxbMTUsInUiXSxbMTYsWzE1LCJ1Il0sMF1dLFs0NixbMywiciIsWzIsWzE1LCJyIl0sInN1YnN0cmluZyIsWzcsWzE3LFsxNixbMTUsInUiXSwwXSwibGVuZ3RoIl1dXV1dXV1dXSxbMzYsWzE1LCJyIl1dXSxbNTAsImsiLFs0NiwicCJdLFs1MiwicSIsWyJlIixbMTUsInAiXV1dLFs0MSwiciJdLFszLCJyIixbImYiLFsxNyxbMTUsInEiXSwicG9ydCJdXV0sWzIyLFsyOCxbMTUsInIiXV0sWzQ2LFs1MyxbMjIsWzIwLFsxNyxbMTUsInEiXSwicHJvdG9jb2wiXSwiaHR0cDoiXSxbNDYsWzUzLFszLCJyIiw4MF1dXSxbNDYsWzIyLFsyMCxbMTcsWzE1LCJxIl0sInByb3RvY29sIl0sImh0dHBzOiJdLFs0NixbNTMsWzMsInIiLDQ0M11dXSxbNDYsWzUzLFszLCJyIiwiIl1dXV1dXV1dXSxbMzYsWyJnIixbMTUsInIiXV1dXSxbNTAsImwiLFs0NiwicCIsInEiXSxbNTIsInIiLFsiZSIsWzE1LCJwIl1dXSxbNDEsInMiXSxbMywicyIsWzM5LFsyMCxbMixbMTcsWzE1LCJyIl0sInBhdGhuYW1lIl0sImluZGV4T2YiLFs3LCIvIl1dLDBdLFsxNyxbMTUsInIiXSwicGF0aG5hbWUiXSxbMCwiLyIsWzE3LFsxNSwiciJdLCJwYXRoTmFtZSJdXV1dLFsyMixbMjAsWyJkIixbMTUsInEiXV0sImFycmF5Il0sWzQ2LFs1MyxbNTIsInQiLFsyLFsxNSwicyJdLCJzcGxpdCIsWzcsIi8iXV1dLFsyMixbMTksWzIsWzE1LCJxIl0sImluZGV4T2YiLFs3LFsxNixbMTUsInQiXSxbMzcsWzE3LFsxNSwidCJdLCJsZW5ndGgiXSwxXV1dXSwwXSxbNDYsWzUzLFs0MyxbMTUsInQiXSxbMzcsWzE3LFsxNSwidCJdLCJsZW5ndGgiXSwxXSwiIl0sWzMsInMiLFsyLFsxNSwidCJdLCJqb2luIixbNywiLyJdXV1dXV1dXV0sWzM2LFsxNSwicyJdXV0sWzUwLCJtIixbNDYsInAiXSxbNTIsInEiLFsxNyxbImUiLFsxNSwicCJdXSwicGF0aG5hbWUiXV0sWzUyLCJyIixbMixbMTUsInEiXSwic3BsaXQiLFs3LCIuIl1dXSxbNDEsInMiXSxbMywicyIsWzM5LFsxOCxbMTcsWzE1LCJyIl0sImxlbmd0aCJdLDFdLFsxNixbMTUsInIiXSxbMzcsWzE3LFsxNSwiciJdLCJsZW5ndGgiXSwxXV0sIiJdXSxbMzYsWzE2LFsyLFsxNSwicyJdLCJzcGxpdCIsWzcsIi8iXV0sMF1dXSxbNTAsIm4iLFs0NiwicCJdLFs1MiwicSIsWzE3LFsiZSIsWzE1LCJwIl1dLCJoYXNoIl1dLFszNixbMixbMTUsInEiXSwicmVwbGFjZSIsWzcsIiMiLCIiXV1dXSxbNTAsIm8iLFs0NiwicCIsInEiXSxbNTAsInMiLFs0NiwidCJdLFszNixbImMiLFsyLFsxNSwidCJdLCJyZXBsYWNlIixbNyxbImIiLCJcXCsiLCJnIl0sIiAiXV1dXV0sWzUyLCJyIixbMixbMTcsWyJlIixbMTUsInAiXV0sInNlYXJjaCJdLCJyZXBsYWNlIixbNywiPyIsIiJdXV0sWzY1LCJ0IixbMixbMTUsInIiXSwic3BsaXQiLFs3LCImIl1dLFs0NixbNTMsWzUyLCJ1IixbMixbMTUsInQiXSwic3BsaXQiLFs3LCI9Il1dXSxbMjIsWzIxLFsicyIsWzE2LFsxNSwidSJdLDBdXSxbMTUsInEiXV0sWzQ2LFs2XV1dLFszNixbInMiLFsyLFsyLFsxNSwidSJdLCJzbGljZSIsWzcsMV1dLCJqb2luIixbNywiPSJdXV1dXV1dLFszNl1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY3JlYXRlUmVnZXgiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJkZWNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwubGVnYWN5UGFyc2VVcmwiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJtYWtlTnVtYmVyIl1dLFs1MiwiZyIsWyJyZXF1aXJlIiwibWFrZVN0cmluZyJdXSxbMzYsWzgsIkYiLFsxNSwibSJdLCJIIixbMTUsIm8iXSwiRyIsWzE1LCJuIl0sIkMiLFsxNSwiaiJdLCJFIixbMTUsImwiXSwiRCIsWzE1LCJrIl0sIkIiLFsxNSwiaSJdLCJBIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2d0YWciLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm4iLFs0NiwiciIsInMiLCJ0Il0sWzY1LCJ1IixbMTUsInMiXSxbNDYsWzUzLFsyMixbMixbMTUsInIiXSwiaGFzT3duUHJvcGVydHkiLFs3LFsxNSwidSJdXV0sWzQ2LFs1MyxbNDMsWzE1LCJyIl0sWzE1LCJ1Il0sWyJ0IixbMTYsWzE1LCJyIl0sWzE1LCJ1Il1dXV1dXV1dXV1dLFs1MCwibyIsWzQ2LCJyIiwicyJdLFsibiIsWzE1LCJyIl0sWzE1LCJzIl0sWzUxLCIiLFs3LCJ0Il0sWzM2LFszOSxbMjAsImZhbHNlIixbMixbImUiLFsxNSwidCJdXSwidG9Mb3dlckNhc2UiLFs3XV1dLGZhbHNlLFsyOCxbMjgsWzE1LCJ0Il1dXV1dXV1dLFs1MCwicCIsWzQ2LCJyIiwicyJdLFsibiIsWzE1LCJyIl0sWzE1LCJzIl0sWzE1LCJkIl1dXSxbNTAsInEiLFs0NiwiciIsInMiXSxbNTIsInQiLFsiaCJdXSxbMjIsWzEsWzE1LCJ0Il0sWzE4LFsyLFsxNSwidCJdLCJpbmRleE9mIixbNyxbMTUsInMiXV1dLFsyNywxXV1dLFs0NixbNTMsWzQzLFsxNSwiciJdLFsxNyxbMTUsImkiXSwiQU8iXSx0cnVlXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJPYmplY3QiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJtYWtlTnVtYmVyIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwibWFrZVN0cmluZyJdXSxbNTIsImYiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyJdXSxbNTIsImgiLFsicmVxdWlyZSIsImludGVybmFsLmdldERlc3RpbmF0aW9uSWRzIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImoiLFsyLFsxNSwiYiJdLCJmcmVlemUiLFs3LFs3LFsxNyxbMTUsImMiXSwiQkoiXSxbMTcsWzE1LCJjIl0sIkJOIl0sWzE3LFsxNSwiYyJdLCJERCJdLFsxNyxbMTUsImMiXSwiR0YiXSxbMTcsWzE1LCJjIl0sIklZIl0sWzE3LFsxNSwiYyJdLCJFVyJdLFsxNyxbMTUsImMiXSwiSUEiXSxbMTcsWzE1LCJjIl0sIklDIl1dXV1dLFs1MiwiayIsWzIsWzE1LCJiIl0sImZyZWV6ZSIsWzcsWzcsWzE3LFsxNSwiYyJdLCJCSiJdLFsxNyxbMTUsImMiXSwiQk4iXSxbMTcsWzE1LCJjIl0sIkREIl0sWzE3LFsxNSwiYyJdLCJHRiJdLFsxNyxbMTUsImMiXSwiSVkiXSxbMTcsWzE1LCJjIl0sIkVXIl0sWzE3LFsxNSwiYyJdLCJJQSJdLFsxNyxbMTUsImMiXSwiSUMiXV1dXV0sWzUyLCJsIixbMixbMTUsImIiXSwiZnJlZXplIixbNyxbNyxbMTcsWzE1LCJjIl0sIkNZIl0sWzE3LFsxNSwiYyJdLCJFUSJdLFsxNyxbMTUsImMiXSwiSUYiXSxbMTcsWzE1LCJjIl0sIklIIl0sWzE3LFsxNSwiYyJdLCJFQyJdXV1dXSxbNTIsIm0iLFsyLFsxNSwiYiJdLCJmcmVlemUiLFs3LFs3LFsxNyxbMTUsImMiXSwiQ1kiXSxbMTcsWzE1LCJjIl0sIkVRIl0sWzE3LFsxNSwiYyJdLCJJRiJdLFsxNyxbMTUsImMiXSwiSUgiXSxbMTcsWzE1LCJjIl0sIkVDIl1dXV1dLFszNixbOCwiQiIsWzE1LCJrIl0sIkQiLFsxNSwibSJdLCJBIixbMTUsImoiXSwiQyIsWzE1LCJsIl0sIkYiLFsxNSwibyJdLCJHIixbMTUsInAiXSwiRSIsWzE1LCJuIl0sIkgiLFsxNSwicSJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogCl0KLCJlbnRpdGllcyI6ewoiX19hZXYiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fZCI6eyIyIjp0cnVlfQosCiJfX2RiZyI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2UiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19mIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fZmxjIjp7IjUiOnRydWUsIjYiOnRydWV9CiwKIl9fZ2Fhd2UiOnsiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19nYXMiOnsiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19nb29ndGFnIjp7IjEiOjEwLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2siOnsiMiI6dHJ1ZX0KLAoiX19sY2wiOnsiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19yIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fc21tIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fdGciOnsiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX191Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fdiI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX3l0bCI6eyI1Ijp0cnVlLCI2Ijp0cnVlfQoKCn0KLCJibG9iIjp7IjEiOiI1NSIsIjEwIjoiR1RNLVBRUDRYNVEiLCIxNCI6IjY3bTAiLCIxNSI6IjAiLCIxNiI6IkNoRUk4SU9jMHdZUWdPbXNrdnVseEtxUkFSSWNBTDJQWVpiOHltL25WUnNqUzA0dW9zVUszTGFJeTM4VzI5Q2FsQm9DWXJRPSIsIjE5IjoiZGF0YUxheWVyIiwiMjAiOiIiLCIyMSI6Ind3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbSIsIjIyIjoiZXlJd0lqb2lUazhpTENJeElqb2lUazh0TURNaUxDSXlJanBtWVd4elpTd2lNeUk2SW1kdmIyZHNaUzV1YnlJc0lqUWlPaUp5WldkcGIyNHhJaXdpTlNJNlptRnNjMlVzSWpZaU9uUnlkV1VzSWpjaU9pSmhaRjl6ZEc5eVlXZGxmR0Z1WVd4NWRHbGpjMTl6ZEc5eVlXZGxmR0ZrWDNWelpYSmZaR0YwWVh4aFpGOXdaWEp6YjI1aGJHbDZZWFJwYjI0aUxDSTVJanAwY25WbGZRIiwiMjMiOiJnb29nbGUudGFnbWFuYWdlci5kZWJ1Z3VpMi5xdWV1ZSIsIjI0IjoidGFnYXNzaXN0YW50Lmdvb2dsZS5jb20iLCIyNyI6MC4wMDUsIjMiOiJ3d3cuZ29vZ2xldGFnbWFuYWdlci5jb20iLCIzMCI6Ik5PIiwiMzEiOiJOTy0wMyIsIjMyIjpmYWxzZSwiMzMiOiJyZWdpb24xIiwiMzYiOiJodHRwczovL2Fkc2VydmljZS5nb29nbGUuY29tL3BhZ2VhZC9yZWdjbGsiLCIzNyI6Il9fVEFHR1lfSU5TVEFMTEVEIiwiMzgiOiJjY3QuZ29vZ2xlIiwiMzkiOiJnb29nVGFnZ3lSZWZlcnJlciIsIjQwIjoiaHR0cHM6Ly9jY3QuZ29vZ2xlL3RhZ2d5L2FnZW50LmpzIiwiNDEiOiJnb29nbGUudGFnbWFuYWdlci50YS5wcm9kcXVldWUiLCI0MiI6MC4wMSwiNDMiOiJ7XCJrZXlzXCI6W3tcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCS2x5VFgyanlvYnBRQ21mVXlCYmhCeVFIazlaMkhkTjVsSHhwQkF0SUtHTWNtencwZ0UrZWJsWUNtbTFHYTdiWWVUZHlkb0ptZTZJcGFTb0NVMElVVW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiZGVlNGIzNTEtYjBmNS00YzI3LWE4YzgtZWQ2NjA0NzdhNDRjXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRHRZQlJuUEJTMWc2bWVYTzFyUTVhNTJCNUZibmg3REM1anF2MDJpeEpzc24wazFKOXJjSENhVmMvenpSc25zSEJ6U29GS3M2SjhwSDdDY25RUDNFanc9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiYWQxOTNiMmEtNGE5MC00YzFhLWI3OWUtZGUzN2FjMzkxYmQyXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCTVowVU11ZEFlNFBvYWZTVHBVeFB0SWtmQmVDTWJGQlh2dHlSWXZITENTUS9FVXZFSnNtc1Y0dDZOQi9CRVZwcUwzSHY4Z05TUWg3SytTVW9vZjI1YW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDhjNGVmZTEtZmRkMC00MzZhLWFjOGYtOTIzZjExOTE4Nzg3XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRmZsdlVsK3hwSGFGVkNJWU8xS1BMeGt2K0FqZGw0ZDhydnJYaEk2emZwbmJCRHFJNTFERGt0SEhiM1pXSVM1N29EaDBLaXI5QXVDT29uMk1PeE5WOVk9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDMyYmMyNzAtOTllYS00MjIwLWI1NjItZTJjNWFlNzdkNGQ5XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCQVE4VGt5NERMV09KYkhPSGJWWURiUVpFZkVlbGI0RlRCOEVZTVFlUlFpTDFtMUx0QWQwcjN6ZXlMamdaMy9XMjRSOFZmYjIyelkyaXg2Vy9UZkNqakE9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiMDUwYTZlMTEtMzhhYi00ZjgwLTg5Y2ItN2IzMTliOTcwNGMwXCJ9XX0iLCI0NCI6IjExODg5NzkyMH4xMTg4OTc5MzAiLCI0NiI6eyIxIjoiMTAwMCIsIjEwIjoiNjZ1MCIsIjExIjoiNjZnMCIsIjE0IjoiMTAwMCIsIjE2IjoiVVMtQ09+VVMtQ1R+VVMtTVR+VVMtTkV+VVMtTkh+VVMtVFh+VVMtTU5+VVMtTkp+VVMtTUR+VVMtT1J+VVMtREUiLCIxNyI6IlVTLUNPflVTLUNUflVTLU1UflVTLU5FflVTLU5IflVTLVRYflVTLU1OflVTLU5KflVTLU1EflVTLU9SflVTLURFIiwiMiI6IjkiLCIyMCI6IjUwMDAiLCIyMSI6IjUwMDAiLCIyMiI6IjQuNC4wIiwiMjMiOiIwLjAuMCIsIjI1IjoiMSIsIjI2IjoiNDAwMCIsIjI3IjoiMTAwIiwiMyI6IjUiLCI0IjoiYWRfc3RvcmFnZXxhbmFseXRpY3Nfc3RvcmFnZXxhZF91c2VyX2RhdGF8YWRfcGVyc29uYWxpemF0aW9uIiwiNDQiOiIxNTAwMCIsIjQ4IjoiMzAwMDAiLCI1IjoiYWRfc3RvcmFnZXxhbmFseXRpY3Nfc3RvcmFnZXxhZF91c2VyX2RhdGEiLCI2IjoiMSIsIjYxIjoiMTAwMCIsIjYyIjoiQTZPTkhSWTcvYnZCcm8rSU1aZC9hNkxOam43U1N2OTk5U2tOL2hGQUU5TDZ2TXIzNGROZ2ZkU1ZkWW12NFUrTkhaZzFzeGQzOFJ0Y2lScFJVdElSUGdRQUFBQ0NleUp2Y21sbmFXNGlPaUpvZEhSd2N6b3ZMM2QzZHk1bmIyOW5iR1YwWVdkdFlXNWhaMlZ5TG1OdmJUbzBORE1pTENKbVpXRjBkWEpsSWpvaVUyaGhjbVZrVjI5eWEyVnlSWGgwWlc1a1pXUk1hV1psZEdsdFpTSXNJbVY0Y0dseWVTSTZNVGMzTmpjeU9UWXdNQ3dpYVhOVWFHbHlaRkJoY25SNUlqcDBjblZsZlE9PSIsIjYzIjoiMTAwMCIsIjY2IjoiMTAwIiwiNyI6IjEwIn0sIjQ4Ijp0cnVlLCI1IjoiR1RNLVBRUDRYNVEiLCI1NSI6WyJHVE0tUFFQNFg1USJdLCI1NiI6W3siMSI6NDAzLCIzIjowLjUsIjQiOjExNTkzODQ2NSwiNSI6MTE1OTM4NDY2LCI2IjowLCI3IjoyfSx7IjEiOjQwNCwiMyI6MC41LCI0IjoxMTU5Mzg0NjgsIjUiOjExNTkzODQ2OSwiNiI6MCwiNyI6MX0seyIxIjo2MDIsIjMiOjAuMDEsIjQiOjEyMDEyNDQ1NSwiNSI6MTIwMTI0NDUzLCI2IjoxMjAxMjQ0NTQsIjciOjN9LHsiMSI6NTY5LCIyIjp0cnVlfSx7IjEiOjQ3NSwiMiI6dHJ1ZX0seyIxIjo1MDIsIjIiOnRydWV9LHsiMSI6NTc3LCIyIjp0cnVlfSx7IjEiOjU2OCwiMyI6MC4wMSwiNCI6MTE5NzkxNzQ5LCI1IjoxMTk3OTE3NDgsIjYiOjAsIjciOjF9LHsiMSI6NDkwLCIyIjp0cnVlfSx7IjEiOjQ5MSwiMyI6MC4wMSwiNCI6MTE4MDEyMDA3LCI1IjoxMTgwMTIwMDgsIjYiOjExODAxMjAwOSwiNyI6MX0seyIxIjo0ODAsIjIiOnRydWV9LHsiMSI6NTk0LCIzIjowLjAxLCI0IjoxMTk3OTM5NzQsIjUiOjExOTc5Mzk3MiwiNiI6MTE5NzkzOTczLCI3IjoxfSx7IjEiOjU5OSwiMiI6dHJ1ZX0seyIxIjo1ODAsIjMiOjAuMSwiNCI6MTE5NTI3MDIwLCI1IjoxMTk1MjcwMTksIjYiOjAsIjciOjF9LHsiMSI6NTIzLCIyIjp0cnVlfSx7IjEiOjU4MSwiMyI6MC4wMSwiNCI6MTE5OTQ4ODU0LCI1IjoxMTk5NDg4NTIsIjYiOjExOTk0ODg1MywiNyI6M30seyIxIjo1NTUsIjMiOjAuMDEsIjQiOjExOTI1OTYwNiwiNSI6MTE5MjU5NjA1LCI2IjowLCI3IjoyfSx7IjEiOjUwNCwiMiI6dHJ1ZX0seyIxIjo0NjIsIjMiOjAuMDUsIjQiOjExODgwNjUyNCwiNSI6MTE4ODA2NTI1LCI2IjoxMTg4MDY1MjYsIjciOjF9LHsiMSI6NDEzLCIyIjp0cnVlfSx7IjEiOjU5MywiMiI6dHJ1ZX0seyIxIjo1MDYsIjIiOnRydWV9LHsiMSI6NTAwLCIyIjp0cnVlfSx7IjEiOjU2MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMywiNSI6MTE5NDA0NzAyLCI2IjowLCI3IjoxfSx7IjEiOjQ4MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMSwiNSI6MTE5NDA0NzAwLCI2IjowLCI3IjoxfSx7IjEiOjQ1MCwiMyI6MC4wMSwiNCI6MTE3MjI3NzE0LCI1IjoxMTcyMjc3MTUsIjYiOjExNzIyNzcxNiwiNyI6M30seyIxIjo1ODMsIjMiOjAuNSwiNCI6MTE5ODk2ODAzLCI1IjoxMTk4OTY4MDIsIjYiOjAsIjciOjF9LHsiMSI6NDU4LCIyIjp0cnVlfSx7IjEiOjU4MiwiMyI6MC4wMSwiNCI6MTE5MzgxNjY0LCI1IjoxMTkzODE2NjIsIjYiOjExOTM4MTY2MywiNyI6MX0seyIxIjo1NzAsIjIiOnRydWV9LHsiMSI6NDk4LCIzIjowLjIsIjQiOjExNTYxNjk4NSwiNSI6MTE1NjE2OTg2LCI2IjowLCI3IjoxfSx7IjEiOjU5NSwiMiI6dHJ1ZX0seyIxIjo1ODksIjMiOjAuMDEsIjQiOjEyMDA4NDIxNSwiNSI6MTIwMDg0MjE0LCI2IjowLCI3IjoxfSx7IjEiOjQ5NSwiMyI6MC4wNSwiNCI6MTE4MTMxODEwLCI1IjoxMTgxMzE4MDgsIjYiOjExODEzMTgwOSwiNyI6M30seyIxIjo1ODcsIjMiOjAuMSwiNCI6MTE5NzMyMTcxLCI1IjoxMTk3MzIxNzAsIjYiOjAsIjciOjN9LHsiMSI6NTg0LCIyIjp0cnVlfSx7IjEiOjU2NCwiMyI6MC4wMDAxLCI0IjoxMTkyMDUzMTcsIjUiOjExOTIwNTMxNSwiNiI6MTE5MjA1MzE2LCI3IjoxfSx7IjEiOjU1NywiMiI6dHJ1ZX0seyIxIjo0MjcsIjMiOjAuMSwiNCI6MTE5NzI0MzIyLCI1IjoxMTk3MjQzMjAsIjYiOjExOTcyNDMyMSwiNyI6Mn0seyIxIjo1NzYsIjMiOjAuMDEsIjQiOjExOTMxNzgxMCwiNSI6MTE5MzE3ODExLCI2IjoxMTkzMTgxNzcsIjciOjN9LHsiMSI6NTczLCIyIjp0cnVlfSx7IjEiOjQ5OSwiMiI6dHJ1ZX0seyIxIjo1MTYsIjMiOjAuMSwiNCI6MTE4Mzk1MzM1LCI1IjoxMTgzOTUzMzMsIjYiOjExODM5NTMzNCwiNyI6MX0seyIxIjo1MjQsIjIiOnRydWV9XSwiNTkiOlsiR1RNLVBRUDRYNVEiXSwiNiI6IjYwNzYxMDA2IiwiNjIiOmZhbHNlLCI2MyI6MC4wMDV9CiwicGVybWlzc2lvbnMiOnsKIl9fY3Z0XzYwNzYxMDA2XzE2MCI6eyJpbmplY3Rfc2NyaXB0Ijp7InVybHMiOlsiaHR0cHM6XC9cL3NjLmxmZWVkZXIuY29tXC8qIl19LCJhY2Nlc3NfZ2xvYmFscyI6eyJrZXlzIjpbeyJrZXkiOiJsZGZkciIsInJlYWQiOnRydWUsIndyaXRlIjp0cnVlLCJleGVjdXRlIjp0cnVlfSx7ImtleSI6ImxkZmRyLl9xIiwicmVhZCI6dHJ1ZSwid3JpdGUiOnRydWUsImV4ZWN1dGUiOmZhbHNlfV19fQosCiJfX2N2dF82MDc2MTAwNl8xNjIiOnsibG9nZ2luZyI6eyJlbnZpcm9ubWVudHMiOiJkZWJ1ZyJ9LCJnZXRfY29va2llcyI6eyJjb29raWVBY2Nlc3MiOiJzcGVjaWZpYyIsImNvb2tpZU5hbWVzIjpbIk9wdGFub25Db25zZW50Il19LCJyZWFkX2RhdGFfbGF5ZXIiOnsiYWxsb3dlZEtleXMiOiJzcGVjaWZpYyIsImtleVBhdHRlcm5zIjpbIk9wdGFub25BY3RpdmVHcm91cHMiLCJPbmV0cnVzdEFjdGl2ZUdyb3VwcyJdfSwiYWNjZXNzX2dsb2JhbHMiOnsia2V5cyI6W3sia2V5IjoiT3B0YW5vbkFjdGl2ZUdyb3VwcyIsInJlYWQiOnRydWUsIndyaXRlIjpmYWxzZSwiZXhlY3V0ZSI6ZmFsc2V9LHsia2V5IjoiT25ldHJ1c3RBY3RpdmVHcm91cHMiLCJyZWFkIjp0cnVlLCJ3cml0ZSI6ZmFsc2UsImV4ZWN1dGUiOmZhbHNlfV19fQosCiJfX2N2dF82MDc2MTAwNl81MSI6eyJsb2dnaW5nIjp7ImVudmlyb25tZW50cyI6ImRlYnVnIn0sImFjY2Vzc19nbG9iYWxzIjp7ImtleXMiOlt7ImtleSI6ImRhdGFMYXllciIsInJlYWQiOnRydWUsIndyaXRlIjp0cnVlLCJleGVjdXRlIjpmYWxzZX0seyJrZXkiOiJ1ZXRxIiwicmVhZCI6dHJ1ZSwid3JpdGUiOnRydWUsImV4ZWN1dGUiOmZhbHNlfV19LCJhY2Nlc3NfY29uc2VudCI6eyJjb25zZW50VHlwZXMiOlt7ImNvbnNlbnRUeXBlIjoiYWRfc3RvcmFnZSIsInJlYWQiOnRydWUsIndyaXRlIjp0cnVlfSx7ImNvbnNlbnRUeXBlIjoiYW5hbHl0aWNzX3N0b3JhZ2UiLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZX0seyJjb25zZW50VHlwZSI6InBlcnNvbmFsaXphdGlvbl9zdG9yYWdlIiwicmVhZCI6dHJ1ZSwid3JpdGUiOnRydWV9LHsiY29uc2VudFR5cGUiOiJmdW5jdGlvbmFsaXR5X3N0b3JhZ2UiLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZX0seyJjb25zZW50VHlwZSI6InNlY3VyaXR5X3N0b3JhZ2UiLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZX0seyJjb25zZW50VHlwZSI6ImFkX3VzZXJfZGF0YSIsInJlYWQiOnRydWUsIndyaXRlIjp0cnVlfSx7ImNvbnNlbnRUeXBlIjoiYWRfcGVyc29uYWxpemF0aW9uIiwicmVhZCI6dHJ1ZSwid3JpdGUiOnRydWV9XX0sIndyaXRlX2RhdGFfbGF5ZXIiOnsia2V5UGF0dGVybnMiOlsidXJsX3Bhc3N0aHJvdWdoIiwiYWRzX2RhdGFfcmVkYWN0aW9uIl19fQosCiJfX2N2dF82MDc2MTAwNl85NiI6eyJhY2Nlc3NfZ2xvYmFscyI6eyJrZXlzIjpbeyJrZXkiOiJmYnEiLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZSwiZXhlY3V0ZSI6ZmFsc2V9LHsia2V5IjoiX2ZicV9ndG0iLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZSwiZXhlY3V0ZSI6ZmFsc2V9LHsia2V5IjoiX2ZicSIsInJlYWQiOmZhbHNlLCJ3cml0ZSI6dHJ1ZSwiZXhlY3V0ZSI6ZmFsc2V9LHsia2V5IjoiX2ZicV9ndG1faWRzIiwicmVhZCI6dHJ1ZSwid3JpdGUiOnRydWUsImV4ZWN1dGUiOmZhbHNlfSx7ImtleSI6ImZicS5jYWxsTWV0aG9kLmFwcGx5IiwicmVhZCI6dHJ1ZSwid3JpdGUiOmZhbHNlLCJleGVjdXRlIjp0cnVlfSx7ImtleSI6ImZicS5xdWV1ZS5wdXNoIiwicmVhZCI6ZmFsc2UsIndyaXRlIjpmYWxzZSwiZXhlY3V0ZSI6dHJ1ZX0seyJrZXkiOiJmYnEucXVldWUiLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZSwiZXhlY3V0ZSI6ZmFsc2V9LHsia2V5IjoiZmJxLmRpc2FibGVQdXNoU3RhdGUiLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZSwiZXhlY3V0ZSI6ZmFsc2V9XX0sImluamVjdF9zY3JpcHQiOnsidXJscyI6WyJodHRwczpcL1wvY29ubmVjdC5mYWNlYm9vay5uZXRcL2VuX1VTXC9mYmV2ZW50cy5qcyJdfSwibG9nZ2luZyI6eyJlbnZpcm9ubWVudHMiOiJkZWJ1ZyJ9LCJyZWFkX2RhdGFfbGF5ZXIiOnsia2V5UGF0dGVybnMiOlsiZWNvbW1lcmNlIl19fQosCiJfX2N2dF9XUDREOCI6eyJsb2dnaW5nIjp7ImVudmlyb25tZW50cyI6ImRlYnVnIn0sImFjY2Vzc19jb25zZW50Ijp7ImNvbnNlbnRUeXBlcyI6W3siY29uc2VudFR5cGUiOiJhZF9zdG9yYWdlIiwicmVhZCI6dHJ1ZSwid3JpdGUiOnRydWV9LHsiY29uc2VudFR5cGUiOiJhbmFseXRpY3Nfc3RvcmFnZSIsInJlYWQiOnRydWUsIndyaXRlIjp0cnVlfSx7ImNvbnNlbnRUeXBlIjoiZnVuY3Rpb25hbGl0eV9zdG9yYWdlIiwicmVhZCI6dHJ1ZSwid3JpdGUiOnRydWV9LHsiY29uc2VudFR5cGUiOiJwZXJzb25hbGl6YXRpb25fc3RvcmFnZSIsInJlYWQiOnRydWUsIndyaXRlIjp0cnVlfSx7ImNvbnNlbnRUeXBlIjoic2VjdXJpdHlfc3RvcmFnZSIsInJlYWQiOnRydWUsIndyaXRlIjp0cnVlfSx7ImNvbnNlbnRUeXBlIjoid2FpdF9mb3JfdXBkYXRlIiwicmVhZCI6dHJ1ZSwid3JpdGUiOnRydWV9LHsiY29uc2VudFR5cGUiOiJhZF91c2VyX2RhdGEiLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZX0seyJjb25zZW50VHlwZSI6ImFkX3BlcnNvbmFsaXphdGlvbiIsInJlYWQiOnRydWUsIndyaXRlIjp0cnVlfV19LCJhY2Nlc3NfZ2xvYmFscyI6eyJrZXlzIjpbeyJrZXkiOiJPbmV0cnVzdEFjdGl2ZUdyb3VwcyIsInJlYWQiOnRydWUsIndyaXRlIjpmYWxzZSwiZXhlY3V0ZSI6dHJ1ZX0seyJrZXkiOiJPbmVUcnVzdC5HZXREb21haW5EYXRhIiwicmVhZCI6dHJ1ZSwid3JpdGUiOmZhbHNlLCJleGVjdXRlIjp0cnVlfSx7ImtleSI6Ik9uZVRydXN0LlVwZGF0ZUdDTSIsInJlYWQiOnRydWUsIndyaXRlIjpmYWxzZSwiZXhlY3V0ZSI6dHJ1ZX0seyJrZXkiOiJPbmVUcnVzdCIsInJlYWQiOnRydWUsIndyaXRlIjpmYWxzZSwiZXhlY3V0ZSI6ZmFsc2V9LHsia2V5Ijoib3RFdmVudExpc3RlbmVycyIsInJlYWQiOnRydWUsIndyaXRlIjp0cnVlLCJleGVjdXRlIjpmYWxzZX0seyJrZXkiOiJndGFnIiwicmVhZCI6ZmFsc2UsIndyaXRlIjpmYWxzZSwiZXhlY3V0ZSI6dHJ1ZX1dfSwiaW5qZWN0X3NjcmlwdCI6eyJ1cmxzIjpbImh0dHBzOlwvXC9jb29raWUtY2RuLjF0cnVzdC5hcHBcLyoiLCJodHRwczpcL1wvY2RuLmNvb2tpZWxhdy5vcmdcLyoiLCJodHRwczpcL1wvY2RuLXVrd2VzdC5vbmV0cnVzdC5jb21cLyoiLCJodHRwczpcL1wvY29va2llLWNkbi5jb29raWVwcm8uY29tXC8qIiwiaHR0cHM6XC9cL2Nkbi1hdS5vbmV0cnVzdC5jb21cLyoiLCJodHRwczpcL1wvY2RuLWFwYWMub25ldHJ1c3QuY29tXC8qIl19LCJnZXRfY29va2llcyI6eyJjb29raWVBY2Nlc3MiOiJzcGVjaWZpYyIsImNvb2tpZU5hbWVzIjpbIk9wdGFub25Db25zZW50Il19LCJ3cml0ZV9kYXRhX2xheWVyIjp7ImtleVBhdHRlcm5zIjpbImRldmVsb3Blcl9pZC5kWVdKaE1qIl19fQosCiJfX2FldiI6eyJyZWFkX2RhdGFfbGF5ZXIiOnsiYWxsb3dlZEtleXMiOiJzcGVjaWZpYyIsImtleVBhdHRlcm5zIjpbImd0bSJdfSwicmVhZF9ldmVudF9kYXRhIjp7ImV2ZW50RGF0YUFjY2VzcyI6ImFueSJ9LCJyZWFkX2RvbV9lbGVtZW50X3RleHQiOnt9LCJnZXRfZWxlbWVudF9hdHRyaWJ1dGVzIjp7ImFsbG93ZWRBdHRyaWJ1dGVzIjoiYW55In0sImdldF91cmwiOnsidXJsUGFydHMiOiJhbnkifSwiYWNjZXNzX2RvbV9lbGVtZW50X3Byb3BlcnRpZXMiOnsicHJvcGVydGllcyI6W3sicHJvcGVydHkiOiJ0YWdOYW1lIiwicmVhZCI6dHJ1ZX1dfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJhY2Nlc3NfZWxlbWVudF92YWx1ZXMiOnsiYWxsb3dSZWFkIjpbdHJ1ZV0sImFsbG93V3JpdGUiOltmYWxzZV19fQosCiJfX2MiOnt9CiwKIl9fY2wiOnsiZGV0ZWN0X2NsaWNrX2V2ZW50cyI6e319CiwKIl9fZCI6eyJyZWFkX2RvbV9lbGVtZW50cyI6eyJhbGxvd2VkRWxlbWVudElkcyI6ImFueSIsImFsbG93ZWRDc3NTZWxlY3RvcnMiOiJhbnkifSwicmVhZF9kb21fZWxlbWVudF90ZXh0Ijp7fSwiYWNjZXNzX2VsZW1lbnRfdmFsdWVzIjp7ImFsbG93UmVhZCI6W3RydWVdLCJhbGxvd1dyaXRlIjpbZmFsc2VdfSwiZ2V0X2VsZW1lbnRfYXR0cmlidXRlcyI6eyJhbGxvd2VkQXR0cmlidXRlcyI6ImFueSJ9LCJhY2Nlc3NfZG9tX2VsZW1lbnRfcHJvcGVydGllcyI6eyJwcm9wZXJ0aWVzIjpbeyJwcm9wZXJ0eSI6ImNoZWNrZWQiLCJyZWFkIjp0cnVlfV19fQosCiJfX2RiZyI6eyJyZWFkX2NvbnRhaW5lcl9kYXRhIjp7fX0KLAoiX19lIjp7InJlYWRfZXZlbnRfZGF0YSI6eyJldmVudERhdGFBY2Nlc3MiOiJzcGVjaWZpYyIsImtleVBhdHRlcm5zIjpbImV2ZW50Il19fQosCiJfX2V2bCI6eyJkZXRlY3RfZWxlbWVudF92aXNpYmlsaXR5X2V2ZW50cyI6e319CiwKIl9fZiI6eyJyZWFkX2RhdGFfbGF5ZXIiOnsia2V5UGF0dGVybnMiOlsiZ3RtLnJlZmVycmVyIl19LCJnZXRfcmVmZXJyZXIiOnsidXJsUGFydHMiOiJhbnkifX0KLAoiX19mbGMiOnsicmVhZF9kYXRhX2xheWVyIjp7ImtleVBhdHRlcm5zIjpbImFkc19kYXRhX3JlZGFjdGlvbiIsImFsbG93X2ludGVyZXN0X2dyb3VwcyIsImFsbG93X2FkX3BlcnNvbmFsaXphdGlvbl9zaWduYWxzIiwiZWNvbW1lcmNlLnB1cmNoYXNlLnByb2R1Y3RzIiwibWVyY2hhbnRfaWQiLCJtZXJjaGFudF9mZWVkX2xhbmd1YWdlIiwibWVyY2hhbnRfZmVlZF9sYWJlbCJdfSwibG9hZF9nb29nbGVfdGFncyI6eyJhbGxvd2VkVGFnSWRzIjoiYW55IiwiYWxsb3dGaXJzdFBhcnR5VXJscyI6ImFueSJ9LCJyZWFkX2NvbnRhaW5lcl9kYXRhIjp7fX0KLAoiX19nYWF3ZSI6eyJyZWFkX2V2ZW50X2RhdGEiOnsiZXZlbnREYXRhQWNjZXNzIjoic3BlY2lmaWMiLCJrZXlQYXR0ZXJucyI6WyJldmVudE1vZGVsIl19LCJyZWFkX2RhdGFfbGF5ZXIiOnsiYWxsb3dlZEtleXMiOiJzcGVjaWZpYyIsImtleVBhdHRlcm5zIjpbImV2ZW50TW9kZWwiLCJlY29tbWVyY2UiXX0sImxvZ2dpbmciOnsiZW52aXJvbm1lbnRzIjoiZGVidWcifX0KLAoiX19nYXMiOnt9CiwKIl9fZ29vZ3RhZyI6eyJsb2dnaW5nIjp7ImVudmlyb25tZW50cyI6ImRlYnVnIn0sImFjY2Vzc19nbG9iYWxzIjp7ImtleXMiOlt7ImtleSI6Imd0YWciLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZSwiZXhlY3V0ZSI6dHJ1ZX0seyJrZXkiOiJkYXRhTGF5ZXIiLCJyZWFkIjp0cnVlLCJ3cml0ZSI6dHJ1ZSwiZXhlY3V0ZSI6ZmFsc2V9XX0sImNvbmZpZ3VyZV9nb29nbGVfdGFncyI6eyJhbGxvd2VkVGFnSWRzIjoiYW55In0sImxvYWRfZ29vZ2xlX3RhZ3MiOnsiYWxsb3dlZFRhZ0lkcyI6ImFueSIsImFsbG93Rmlyc3RQYXJ0eVVybHMiOnRydWUsImFsbG93ZWRGaXJzdFBhcnR5VXJscyI6ImFueSJ9fQosCiJfX2h0bWwiOnsidW5zYWZlX2luamVjdF9hcmJpdHJhcnlfaHRtbCI6e319CiwKIl9fanNtIjp7InVuc2FmZV9ydW5fYXJiaXRyYXJ5X2phdmFzY3JpcHQiOnt9fQosCiJfX2siOnsiZ2V0X2Nvb2tpZXMiOnsiY29va2llQWNjZXNzIjoiYW55In0sInJlYWRfZGF0YV9sYXllciI6eyJrZXlQYXR0ZXJucyI6WyJndG0uY29va2llIl19fQosCiJfX2xjbCI6eyJkZXRlY3RfbGlua19jbGlja19ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6dHJ1ZX19CiwKIl9fciI6e30KLAoiX19zbW0iOnt9CiwKIl9fdGciOnsiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJ1cGRhdGVfZGF0YV9sYXllciI6e319CiwKIl9fdSI6eyJyZWFkX2RhdGFfbGF5ZXIiOnsia2V5UGF0dGVybnMiOlsiZ3RtLnVybCJdfSwiZ2V0X3VybCI6eyJ1cmxQYXJ0cyI6ImFueSJ9fQosCiJfX3YiOnsicmVhZF9kYXRhX2xheWVyIjp7ImFsbG93ZWRLZXlzIjoiYW55In19CiwKIl9feXRsIjp7InByb2Nlc3NfZG9tX2V2ZW50cyI6eyJ0YXJnZXRzIjpbeyJ0YXJnZXRUeXBlIjoiZG9jdW1lbnQiLCJldmVudE5hbWUiOiJET01Db250ZW50TG9hZGVkIn0seyJ0YXJnZXRUeXBlIjoiZG9jdW1lbnQiLCJldmVudE5hbWUiOiJyZWFkeXN0YXRlY2hhbmdlIn0seyJ0YXJnZXRUeXBlIjoid2luZG93IiwiZXZlbnROYW1lIjoibG9hZCJ9XX0sImRldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cyI6eyJhbGxvd0ZpeE1pc3NpbmdKYXZhU2NyaXB0QXBpIjp0cnVlfX0KCgp9CgosInNhbmRib3hlZF9zY3JpcHRzIjpbCiJfX2N2dF82MDc2MTAwNl8xNjAiCiwiX19jdnRfNjA3NjEwMDZfMTYyIgosIl9fY3Z0XzYwNzYxMDA2XzUxIgosIl9fY3Z0XzYwNzYxMDA2Xzk2IgosIl9fY3Z0X1dQNEQ4IgoKXQoKLCJzZWN1cml0eV9ncm91cHMiOnsKImN1c3RvbVNjcmlwdHMiOlsKIl9faHRtbCIKLAoiX19qc20iCgpdCiwKImdvb2dsZSI6WwoiX19hZXYiCiwKIl9fYyIKLAoiX19jbCIKLAoiX19kIgosCiJfX2RiZyIKLAoiX19lIgosCiJfX2V2bCIKLAoiX19mIgosCiJfX2dhYXdlIgosCiJfX2dhcyIKLAoiX19nb29ndGFnIgosCiJfX2siCiwKIl9fciIKLAoiX19zbW0iCiwKIl9fdGciCiwKIl9fdSIKLAoiX192IgosCiJfX3l0bCIKCl0KCgp9CgoKCgoKfTsKCgoKCnZhciBrLGFhPXR5cGVvZiBPYmplY3QuY3JlYXRlPT0iZnVuY3Rpb24iP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O2IucHJvdG90eXBlPWE7cmV0dXJuIG5ldyBifSxiYT10eXBlb2YgT2JqZWN0LmRlZmluZVByb3BlcnRpZXM9PSJmdW5jdGlvbiI/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGEsYixjKXtpZihhPT1BcnJheS5wcm90b3R5cGV8fGE9PU9iamVjdC5wcm90b3R5cGUpcmV0dXJuIGE7YVtiXT1jLnZhbHVlO3JldHVybiBhfSxjYT1mdW5jdGlvbihhKXtmb3IodmFyIGI9WyJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyxhLCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csIm9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmLCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsJiZnbG9iYWxdLGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkJiZkLk1hdGg9PU1hdGgpcmV0dXJuIGR9dGhyb3cgRXJyb3IoIkNhbm5vdCBmaW5kIGdsb2JhbCBvYmplY3QiKTsKfSxoYT1jYSh0aGlzKSxpYT10eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmdHlwZW9mIFN5bWJvbCgieCIpPT09InN5bWJvbCIsa2E9e30sbGE9e30sbmE9ZnVuY3Rpb24oYSxiLGMpe2lmKCFjfHxhIT1udWxsKXt2YXIgZD1sYVtiXTtpZihkPT1udWxsKXJldHVybiBhW2JdO3ZhciBlPWFbZF07cmV0dXJuIGUhPT12b2lkIDA/ZTphW2JdfX0sb2E9ZnVuY3Rpb24oYSxiLGMpe2lmKGIpYTp7dmFyIGQ9YS5zcGxpdCgiLiIpLGU9ZC5sZW5ndGg9PT0xLGY9ZFswXSxnOyFlJiZmIGluIGthP2c9a2E6Zz1oYTtmb3IodmFyIGg9MDtoPGQubGVuZ3RoLTE7aCsrKXt2YXIgbD1kW2hdO2lmKCEobCBpbiBnKSlicmVhayBhO2c9Z1tsXX12YXIgbj1kW2QubGVuZ3RoLTFdLHA9aWEmJmM9PT0iZXM2Ij9nW25dOm51bGwscT1iKHApO2lmKHEhPW51bGwpaWYoZSliYShrYSxuLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cX0pO2Vsc2UgaWYocSE9PXApe2lmKGxhW25dPT09dm9pZCAwKXt2YXIgcj0KTWF0aC5yYW5kb20oKSoxRTk+Pj4wO2xhW25dPWlhP2hhLlN5bWJvbChuKToiJGpzY3AkIityKyIkIitufWJhKGcsbGFbbl0se2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpxfSl9fX0scGE7aWYoaWEmJnR5cGVvZiBPYmplY3Quc2V0UHJvdG90eXBlT2Y9PSJmdW5jdGlvbiIpcGE9T2JqZWN0LnNldFByb3RvdHlwZU9mO2Vsc2V7dmFyIHJhO2E6e3ZhciB0YT17YTohMH0sdWE9e307dHJ5e3VhLl9fcHJvdG9fXz10YTtyYT11YS5hO2JyZWFrIGF9Y2F0Y2goYSl7fXJhPSExfXBhPXJhP2Z1bmN0aW9uKGEsYil7YS5fX3Byb3RvX189YjtpZihhLl9fcHJvdG9fXyE9PWIpdGhyb3cgbmV3IFR5cGVFcnJvcihhKyIgaXMgbm90IGV4dGVuc2libGUiKTtyZXR1cm4gYX06bnVsbH0KdmFyIHZhPXBhLHdhPWZ1bmN0aW9uKGEsYil7YS5wcm90b3R5cGU9YWEoYi5wcm90b3R5cGUpO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7aWYodmEpdmEoYSxiKTtlbHNlIGZvcih2YXIgYyBpbiBiKWlmKGMhPSJwcm90b3R5cGUiKWlmKE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKXt2YXIgZD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk7ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsYyxkKX1lbHNlIGFbY109YltjXTthLkZ0PWIucHJvdG90eXBlfSx4YT1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX0sbT1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yJiZhW1N5bWJvbC5pdGVyYXRvcl07aWYoYilyZXR1cm4gYi5jYWxsKGEpO2lmKHR5cGVvZiBhLmxlbmd0aD09Im51bWJlciIpcmV0dXJue25leHQ6eGEoYSl9Owp0aHJvdyBFcnJvcihTdHJpbmcoYSkrIiBpcyBub3QgYW4gaXRlcmFibGUgb3IgQXJyYXlMaWtlIik7fSx5YT1mdW5jdGlvbihhKXtmb3IodmFyIGIsYz1bXTshKGI9YS5uZXh0KCkpLmRvbmU7KWMucHVzaChiLnZhbHVlKTtyZXR1cm4gY30sdz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEFycmF5P2E6eWEobShhKSl9LEFhPWZ1bmN0aW9uKGEpe3JldHVybiB6YShhLGEpfSx6YT1mdW5jdGlvbihhLGIpe2EucmF3PWI7T2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoYSksT2JqZWN0LmZyZWV6ZShiKSk7cmV0dXJuIGF9LEJhPWlhJiZ0eXBlb2YgbmEoT2JqZWN0LCJhc3NpZ24iKT09ImZ1bmN0aW9uIj9uYShPYmplY3QsImFzc2lnbiIpOmZ1bmN0aW9uKGEsYil7aWYoYT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJObyBudWxsaXNoIGFyZyIpO2E9T2JqZWN0KGEpO2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTsKaWYoZClmb3IodmFyIGUgaW4gZClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZCxlKSYmKGFbZV09ZFtlXSl9cmV0dXJuIGF9O29hKCJPYmplY3QuYXNzaWduIixmdW5jdGlvbihhKXtyZXR1cm4gYXx8QmF9LCJlczYiKTt2YXIgQ2E9ZnVuY3Rpb24oYSl7aWYoIShhIGluc3RhbmNlb2YgT2JqZWN0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJdGVyYXRvciByZXN1bHQgIithKyIgaXMgbm90IGFuIG9iamVjdCIpO30sRGE9ZnVuY3Rpb24oKXt0aGlzLmZhPSExO3RoaXMuUj1udWxsO3RoaXMuamE9dm9pZCAwO3RoaXMuSD0xO3RoaXMuTj10aGlzLlo9MDt0aGlzLkxhPXRoaXMuSz1udWxsfSxFYT1mdW5jdGlvbihhKXtpZihhLmZhKXRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IHJ1bm5pbmciKTthLmZhPSEwfTtEYS5wcm90b3R5cGUueWE9ZnVuY3Rpb24oYSl7dGhpcy5qYT1hfTsKdmFyIEdhPWZ1bmN0aW9uKGEsYil7YS5LPXthbzpiLGlzRXhjZXB0aW9uOiEwfTthLkg9YS5afHxhLk59O0RhLnByb3RvdHlwZS5nZXROZXh0QWRkcmVzc0pzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O0RhLnByb3RvdHlwZS5nZXRZaWVsZFJlc3VsdEpzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmphfTtEYS5wcm90b3R5cGUucmV0dXJuPWZ1bmN0aW9uKGEpe3RoaXMuSz17cmV0dXJuOmF9O3RoaXMuSD10aGlzLk59O0RhLnByb3RvdHlwZVsicmV0dXJuIl09RGEucHJvdG90eXBlLnJldHVybjtEYS5wcm90b3R5cGUuQWo9ZnVuY3Rpb24oYSl7dGhpcy5LPXtuZDphfTt0aGlzLkg9dGhpcy5OfTtEYS5wcm90b3R5cGUuanVtcFRocm91Z2hGaW5hbGx5QmxvY2tzPURhLnByb3RvdHlwZS5BajtEYS5wcm90b3R5cGUuYWM9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9YjtyZXR1cm57dmFsdWU6YX19O0RhLnByb3RvdHlwZS55aWVsZD1EYS5wcm90b3R5cGUuYWM7CkRhLnByb3RvdHlwZS54cz1mdW5jdGlvbihhLGIpe3ZhciBjPW0oYSksZD1jLm5leHQoKTtDYShkKTtpZihkLmRvbmUpdGhpcy5qYT1kLnZhbHVlLHRoaXMuSD1iO2Vsc2UgcmV0dXJuIHRoaXMuUj1jLHRoaXMuYWMoZC52YWx1ZSxiKX07RGEucHJvdG90eXBlLnlpZWxkQWxsPURhLnByb3RvdHlwZS54cztEYS5wcm90b3R5cGUubmQ9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O0RhLnByb3RvdHlwZS5qdW1wVG89RGEucHJvdG90eXBlLm5kO0RhLnByb3RvdHlwZS5Eaj1mdW5jdGlvbigpe3RoaXMuSD0wfTtEYS5wcm90b3R5cGUuanVtcFRvRW5kPURhLnByb3RvdHlwZS5EajtEYS5wcm90b3R5cGUuTmo9ZnVuY3Rpb24oYSxiKXt0aGlzLlo9YTtiIT12b2lkIDAmJih0aGlzLk49Yil9O0RhLnByb3RvdHlwZS5zZXRDYXRjaEZpbmFsbHlCbG9ja3M9RGEucHJvdG90eXBlLk5qO0RhLnByb3RvdHlwZS52Zz1mdW5jdGlvbihhKXt0aGlzLlo9MDt0aGlzLk49YXx8MH07CkRhLnByb3RvdHlwZS5zZXRGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLnZnO0RhLnByb3RvdHlwZS5Jaj1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuWj1ifHwwfTtEYS5wcm90b3R5cGUubGVhdmVUcnlCbG9jaz1EYS5wcm90b3R5cGUuSWo7RGEucHJvdG90eXBlLlBoPWZ1bmN0aW9uKGEpe3RoaXMuWj1hfHwwO3ZhciBiPXRoaXMuSy5hbzt0aGlzLks9bnVsbDtyZXR1cm4gYn07RGEucHJvdG90eXBlLmVudGVyQ2F0Y2hCbG9jaz1EYS5wcm90b3R5cGUuUGg7RGEucHJvdG90eXBlLmtkPWZ1bmN0aW9uKGEsYixjKXtjP3RoaXMuTGFbY109dGhpcy5LOnRoaXMuTGE9W3RoaXMuS107dGhpcy5aPWF8fDA7dGhpcy5OPWJ8fDB9O0RhLnByb3RvdHlwZS5lbnRlckZpbmFsbHlCbG9jaz1EYS5wcm90b3R5cGUua2Q7CkRhLnByb3RvdHlwZS5oZT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTGEuc3BsaWNlKGJ8fDApWzBdLGQ9dGhpcy5LPXRoaXMuS3x8YztkP2QuaXNFeGNlcHRpb24/dGhpcy5IPXRoaXMuWnx8dGhpcy5OOmQubmQhPXZvaWQgMCYmdGhpcy5OPGQubmQ/KHRoaXMuSD1kLm5kLHRoaXMuSz1udWxsKTp0aGlzLkg9dGhpcy5OOnRoaXMuSD1hfTtEYS5wcm90b3R5cGUubGVhdmVGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLmhlO0RhLnByb3RvdHlwZS5mZT1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IEhhKGEpfTtEYS5wcm90b3R5cGUuZm9ySW49RGEucHJvdG90eXBlLmZlO3ZhciBIYT1mdW5jdGlvbihhKXt0aGlzLks9YTt0aGlzLkg9W107Zm9yKHZhciBiIGluIGEpdGhpcy5ILnB1c2goYik7dGhpcy5ILnJldmVyc2UoKX07SGEucHJvdG90eXBlLmhvPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLkgubGVuZ3RoPjA7KXt2YXIgYT10aGlzLkgucG9wKCk7aWYoYSBpbiB0aGlzLkspcmV0dXJuIGF9cmV0dXJuIG51bGx9OwpIYS5wcm90b3R5cGUuZ2V0TmV4dD1IYS5wcm90b3R5cGUuaG87CnZhciBJYT1mdW5jdGlvbihhKXt0aGlzLkg9bmV3IERhO3RoaXMuSz1hfSxMYT1mdW5jdGlvbihhLGIpe0VhKGEuSCk7dmFyIGM9YS5ILlI7aWYoYylyZXR1cm4gSmEoYSwicmV0dXJuImluIGM/Y1sicmV0dXJuIl06ZnVuY3Rpb24oZCl7cmV0dXJue3ZhbHVlOmQsZG9uZTohMH19LGIsYS5ILnJldHVybik7YS5ILnJldHVybihiKTtyZXR1cm4gS2EoYSl9LEphPWZ1bmN0aW9uKGEsYixjLGQpe3RyeXt2YXIgZT1iLmNhbGwoYS5ILlIsYyk7Q2EoZSk7aWYoIWUuZG9uZSlyZXR1cm4gYS5ILmZhPSExLGU7dmFyIGY9ZS52YWx1ZX1jYXRjaChnKXtyZXR1cm4gYS5ILlI9bnVsbCxHYShhLkgsZyksS2EoYSl9YS5ILlI9bnVsbDtkLmNhbGwoYS5ILGYpO3JldHVybiBLYShhKX0sS2E9ZnVuY3Rpb24oYSl7Zm9yKDthLkguSDspdHJ5e3ZhciBiPWEuSyhhLkgpO2lmKGIpcmV0dXJuIGEuSC5mYT0hMSx7dmFsdWU6Yi52YWx1ZSxkb25lOiExfX1jYXRjaChkKXthLkguamE9dm9pZCAwLEdhKGEuSCwKZCl9YS5ILmZhPSExO2lmKGEuSC5LKXt2YXIgYz1hLkguSzthLkguSz1udWxsO2lmKGMuaXNFeGNlcHRpb24pdGhyb3cgYy5hbztyZXR1cm57dmFsdWU6Yy5yZXR1cm4sZG9uZTohMH19cmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfX0sTWE9ZnVuY3Rpb24oYSl7dGhpcy5uZXh0PWZ1bmN0aW9uKGIpe3ZhciBjO0VhKGEuSCk7YS5ILlI/Yz1KYShhLGEuSC5SLm5leHQsYixhLkgueWEpOihhLkgueWEoYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMudGhyb3c9ZnVuY3Rpb24oYil7dmFyIGM7RWEoYS5IKTthLkguUj9jPUphKGEsYS5ILlJbInRocm93Il0sYixhLkgueWEpOihHYShhLkgsYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMucmV0dXJuPWZ1bmN0aW9uKGIpe3JldHVybiBMYShhLGIpfTt0aGlzW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319LE5hPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IE1hKG5ldyBJYShiKSk7dmEmJmEucHJvdG90eXBlJiZ2YShjLAphLnByb3RvdHlwZSk7cmV0dXJuIGN9LE9hPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPU51bWJlcih0aGlzKSxiPVtdLGM9YTtjPGFyZ3VtZW50cy5sZW5ndGg7YysrKWJbYy1hXT1hcmd1bWVudHNbY107cmV0dXJuIGJ9LFFhPWZ1bmN0aW9uKGEpe3JldHVybiBhfTsvKgoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgUmE9dGhpc3x8c2VsZixTYT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXt9Yy5wcm90b3R5cGU9Yi5wcm90b3R5cGU7YS5GdD1iLnByb3RvdHlwZTthLnByb3RvdHlwZT1uZXcgYzthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2EubnY9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgZz1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGg9MjtoPGFyZ3VtZW50cy5sZW5ndGg7aCsrKWdbaC0yXT1hcmd1bWVudHNbaF07cmV0dXJuIGIucHJvdG90eXBlW2VdLmFwcGx5KGQsZyl9fTt2YXIgVGE9ZnVuY3Rpb24oYSxiKXt0aGlzLnR5cGU9YTt0aGlzLmRhdGE9Yn07dmFyIFVhPWZ1bmN0aW9uKCl7dGhpcy5tYXA9e307dGhpcy5IPXt9fTtVYS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcFsiZHVzdC4iK2FdfTtVYS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9ImR1c3QuIithO3RoaXMuSC5oYXNPd25Qcm9wZXJ0eShjKXx8KHRoaXMubWFwW2NdPWIpfTtVYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eSgiZHVzdC4iK2EpfTtVYS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe3ZhciBiPSJkdXN0LiIrYTt0aGlzLkguaGFzT3duUHJvcGVydHkoYil8fGRlbGV0ZSB0aGlzLm1hcFtiXX07CnZhciBWYT1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYS5tYXApaWYoYS5tYXAuaGFzT3duUHJvcGVydHkoZCkpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO3N3aXRjaChiKXtjYXNlIDE6Yy5wdXNoKGUpO2JyZWFrO2Nhc2UgMjpjLnB1c2goYS5tYXBbZF0pO2JyZWFrO2Nhc2UgMzpjLnB1c2goW2UsYS5tYXBbZF1dKX19cmV0dXJuIGN9O1VhLnByb3RvdHlwZS5GYT1mdW5jdGlvbigpe3JldHVybiBWYSh0aGlzLDEpfTtVYS5wcm90b3R5cGUuaGM9ZnVuY3Rpb24oKXtyZXR1cm4gVmEodGhpcywyKX07VWEucHJvdG90eXBlLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIFZhKHRoaXMsMyl9O3ZhciBXYT1mdW5jdGlvbigpe307V2EucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7fTt2YXIgWGE9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9O3RoaXMucHJlZml4PSJndG0uIn07az1YYS5wcm90b3R5cGU7ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLnZhbHVlW3RoaXMucHJlZml4K1N0cmluZyhhKV09Yn07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVbdGhpcy5wcmVmaXgrU3RyaW5nKGEpXX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWUuaGFzT3duUHJvcGVydHkodGhpcy5wcmVmaXgrU3RyaW5nKGEpKX07ay5kZWxldGU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5wcmVmaXgrU3RyaW5nKGEpO3JldHVybiB0aGlzLnZhbHVlLmhhc093blByb3BlcnR5KGIpPyhkZWxldGUgdGhpcy52YWx1ZVtiXSwhMCk6ITF9O2suY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9fTsKay52YWx1ZXM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3JldHVybiBmdW5jdGlvbiBjKCl7dmFyIGQsZSxmO3JldHVybiBOYShjLGZ1bmN0aW9uKGcpe3N3aXRjaChnLkgpe2Nhc2UgMTpnLnZnKDIpLGU9Zy5mZShhLnZhbHVlKTtjYXNlIDQ6aWYoKGQ9ZS5obygpKT09bnVsbCl7Zy5uZCgyKTticmVha31pZighYS52YWx1ZS5oYXNPd25Qcm9wZXJ0eShkKSl7Zy5uZCg0KTticmVha31mPVFhO3JldHVybiBnLmFjKGEudmFsdWVbZF0sOCk7Y2FzZSA4OmYoZy5qYSk7Zy5uZCg0KTticmVhaztjYXNlIDI6Zy5rZCgpLGcuaGUoMCl9fSl9KCl9O2hhLk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFhhLnByb3RvdHlwZSx7c2l6ZTp7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMudmFsdWUpLmxlbmd0aH19fSk7CmZ1bmN0aW9uIFlhKCl7dHJ5e2lmKE1hcClyZXR1cm4gbmV3IE1hcH1jYXRjaChhKXt9cmV0dXJuIG5ldyBYYX07dmFyIFphPWZ1bmN0aW9uKCl7dGhpcy52YWx1ZXM9W119O1phLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7dGhpcy52YWx1ZXMuaW5kZXhPZihhKT09PS0xJiZ0aGlzLnZhbHVlcy5wdXNoKGEpfTtaYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnZhbHVlcy5pbmRleE9mKGEpPi0xfTt2YXIgJGE9ZnVuY3Rpb24oYSxiKXt0aGlzLmZhPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLlI9dGhpcy5LPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuTj1mdW5jdGlvbihkLGUsZil7cmV0dXJuIGQuYXBwbHkoZSxmKX07dGhpcy5IPVlhKCk7dmFyIGM7YTp7dHJ5e2lmKFNldCl7Yz1uZXcgU2V0O2JyZWFrIGF9fWNhdGNoKGQpe31jPW5ldyBaYX10aGlzLlo9Y307JGEucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhLGIpe2FiKHRoaXMsYSxiLCExKX07JGEucHJvdG90eXBlLlFoPWZ1bmN0aW9uKGEsYil7YWIodGhpcyxhLGIsITApfTt2YXIgYWI9ZnVuY3Rpb24oYSxiLGMsZCl7YS5IYnx8YS5aLmhhcyhiKXx8KGQmJmEuWi5hZGQoYiksYS5ILnNldChiLGMpKX07az0kYS5wcm90b3R5cGU7Cmsuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLkguaGFzKGEpJiZ0aGlzLnBhcmVudCYmdGhpcy5wYXJlbnQuaGFzKGEpP3RoaXMucGFyZW50LnNldChhLGIpOnRoaXMuWi5oYXMoYSl8fHRoaXMuSC5zZXQoYSxiKSl9O2suZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLkguaGFzKGEpP3RoaXMuSC5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLkguaGFzKGEpfHwhKCF0aGlzLnBhcmVudHx8IXRoaXMucGFyZW50LmhhcyhhKSl9O2sud2I9ZnVuY3Rpb24oKXt2YXIgYT1uZXcgJGEodGhpcy5mYSx0aGlzKTt0aGlzLksmJmEuUWIodGhpcy5LKTthLnNkKHRoaXMuTik7YS51ZSh0aGlzLlIpO3JldHVybiBhfTtrLmplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmF9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5LPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTsKay5zZD1mdW5jdGlvbihhKXt0aGlzLk49YX07ay5Qaj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk59O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkhiPSEwfTtrLnVlPWZ1bmN0aW9uKGEpe3RoaXMuUj1hfTtrLnhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUn07dmFyIGJiPWZ1bmN0aW9uKGEsYixjKXt2YXIgZDtkPUVycm9yLmNhbGwodGhpcyxhLm1lc3NhZ2UpO3RoaXMubWVzc2FnZT1kLm1lc3NhZ2U7InN0YWNrImluIGQmJih0aGlzLnN0YWNrPWQuc3RhY2spO3RoaXMudm89YTt0aGlzLlNuPWM9PT12b2lkIDA/ITE6Yzt0aGlzLks9W107dGhpcy5IPWJ9O3dhKGJiLEVycm9yKTt2YXIgY2I9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBiYj9hOm5ldyBiYihhLHZvaWQgMCwhMCl9O3ZhciBkYj1ZYSgpO2Z1bmN0aW9uIGViKGEsYil7Zm9yKHZhciBjLGQ9bShiKSxlPWQubmV4dCgpOyFlLmRvbmUmJiEoYz1mYihhLGUudmFsdWUpLGMgaW5zdGFuY2VvZiBUYSk7ZT1kLm5leHQoKSk7cmV0dXJuIGN9ZnVuY3Rpb24gZmIoYSxiKXt0cnl7dmFyIGM9YlswXSxkPWIuc2xpY2UoMSksZT1TdHJpbmcoYyksZj1kYi5oYXMoZSk/ZGIuZ2V0KGUpOmEuZ2V0KGUpO2lmKCFmfHx0eXBlb2YgZi5pbnZva2UhPT0iZnVuY3Rpb24iKXRocm93IGNiKEVycm9yKCJBdHRlbXB0aW5nIHRvIGV4ZWN1dGUgbm9uLWZ1bmN0aW9uICIrYlswXSsiLiIpKTtyZXR1cm4gZi5hcHBseShhLGQpfWNhdGNoKGgpe3ZhciBnPWEuZm8oKTtnJiZnKGgsYi5jb250ZXh0P3tpZDpiWzBdLGxpbmU6Yi5jb250ZXh0LmxpbmV9Om51bGwpO3Rocm93IGg7fX07dmFyIGdiPWZ1bmN0aW9uKCl7dGhpcy5LPW5ldyBXYTt0aGlzLkg9bmV3ICRhKHRoaXMuSyl9O2s9Z2IucHJvdG90eXBlO2suamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTtrLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07ay5zZD1mdW5jdGlvbihhKXt0aGlzLkguc2QoYSl9O2suZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5yayhbYV0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpfTtrLnJrPWZ1bmN0aW9uKCl7Zm9yKHZhciBhLGI9bShPYS5hcHBseSgwLGFyZ3VtZW50cykpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWE9ZmIodGhpcy5ILGMudmFsdWUpO3JldHVybiBhfTtrLkpxPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKSxjPXRoaXMuSC53YigpO2MudWUoYSk7Zm9yKHZhciBkLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlkPWZiKGMsZi52YWx1ZSk7cmV0dXJuIGR9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07dmFyIGhiPWZ1bmN0aW9uKGEsYil7dGhpcy5SPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLk49dGhpcy5IPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuSz1mdW5jdGlvbihjLGQsZSl7cmV0dXJuIGMuYXBwbHkoZCxlKX07dGhpcy52YWx1ZXM9bmV3IFVhfTtoYi5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7amIodGhpcyxhLGIsITEpfTtoYi5wcm90b3R5cGUuUWg9ZnVuY3Rpb24oYSxiKXtqYih0aGlzLGEsYiwhMCl9O3ZhciBqYj1mdW5jdGlvbihhLGIsYyxkKXtpZighYS5IYilpZihkKXt2YXIgZT1hLnZhbHVlcztlLnNldChiLGMpO2UuSFsiZHVzdC4iK2JdPSEwfWVsc2UgYS52YWx1ZXMuc2V0KGIsYyl9O2s9aGIucHJvdG90eXBlO2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLnZhbHVlcy5oYXMoYSkmJnRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5oYXMoYSk/dGhpcy5wYXJlbnQuc2V0KGEsYik6dGhpcy52YWx1ZXMuc2V0KGEsYikpfTsKay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVzLmhhcyhhKT90aGlzLnZhbHVlcy5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLnZhbHVlcy5oYXMoYSl8fCEoIXRoaXMucGFyZW50fHwhdGhpcy5wYXJlbnQuaGFzKGEpKX07ay53Yj1mdW5jdGlvbigpe3ZhciBhPW5ldyBoYih0aGlzLlIsdGhpcyk7dGhpcy5IJiZhLlFiKHRoaXMuSCk7YS5zZCh0aGlzLkspO2EudWUodGhpcy5OKTtyZXR1cm4gYX07ay5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlJ9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IfTtrLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSz1hfTtrLlBqPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuS307ay5aYT1mdW5jdGlvbigpe3RoaXMuSGI9ITB9O2sudWU9ZnVuY3Rpb24oYSl7dGhpcy5OPWF9O2sueGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OfTt2YXIga2I9ZnVuY3Rpb24oKXt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhfTtrPWtiLnByb3RvdHlwZTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5nZXQoYSl9O2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OYXx8dGhpcy5sYS5zZXQoYSxiKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuaGFzKGEpfTtrLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5GYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLkZhKCl9O2suaGM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5oYygpfTtrLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuZmMoKX07ay5aYT1mdW5jdGlvbigpe3RoaXMuTmE9ITB9O2suSGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OYX07ZnVuY3Rpb24gbGIoKXtmb3IodmFyIGE9bWIsYj17fSxjPTA7YzxhLmxlbmd0aDsrK2MpYlthW2NdXT1jO3JldHVybiBifWZ1bmN0aW9uIG5iKCl7dmFyIGE9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIjthKz1hLnRvTG93ZXJDYXNlKCkrIjAxMjM0NTY3ODktXyI7cmV0dXJuIGErIi4ifXZhciBtYixvYjtmdW5jdGlvbiBwYihhKXttYj1tYnx8bmIoKTtvYj1vYnx8bGIoKTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7Yys9Myl7dmFyIGQ9YysxPGEubGVuZ3RoLGU9YysyPGEubGVuZ3RoLGY9YS5jaGFyQ29kZUF0KGMpLGc9ZD9hLmNoYXJDb2RlQXQoYysxKTowLGg9ZT9hLmNoYXJDb2RlQXQoYysyKTowLGw9Zj4+MixuPShmJjMpPDw0fGc+PjQscD0oZyYxNSk8PDJ8aD4+NixxPWgmNjM7ZXx8KHE9NjQsZHx8KHA9NjQpKTtiLnB1c2gobWJbbF0sbWJbbl0sbWJbcF0sbWJbcV0pfXJldHVybiBiLmpvaW4oIiIpfQpmdW5jdGlvbiBxYihhKXtmdW5jdGlvbiBiKGwpe2Zvcig7ZDxhLmxlbmd0aDspe3ZhciBuPWEuY2hhckF0KGQrKykscD1vYltuXTtpZihwIT1udWxsKXJldHVybiBwO2lmKCEvXltcc1x4YTBdKiQvLnRlc3QobikpdGhyb3cgRXJyb3IoIlVua25vd24gYmFzZTY0IGVuY29kaW5nIGF0IGNoYXI6ICIrbik7fXJldHVybiBsfW1iPW1ifHxuYigpO29iPW9ifHxsYigpO2Zvcih2YXIgYz0iIixkPTA7Oyl7dmFyIGU9YigtMSksZj1iKDApLGc9Yig2NCksaD1iKDY0KTtpZihoPT09NjQmJmU9PT0tMSlyZXR1cm4gYztjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGU8PDJ8Zj4+NCk7ZyE9PTY0JiYoYys9U3RyaW5nLmZyb21DaGFyQ29kZShmPDw0JjI0MHxnPj4yKSxoIT09NjQmJihjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGc8PDYmMTkyfGgpKSl9fTt2YXIgcmI9e307ZnVuY3Rpb24gc2IoYSxiKXt2YXIgYz1yYlthXTtjfHwoYz1yYlthXT1bXSk7Y1tiXT0hMH1mdW5jdGlvbiB0Yigpe2RlbGV0ZSByYi5HQTRfRVZFTlR9ZnVuY3Rpb24gdWIoKXt2YXIgYT12Yi5ILnNsaWNlKCk7cmIuR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUw9YX1mdW5jdGlvbiB3YihhKXtmb3IodmFyIGI9W10sYz0wLGQ9MDtkPGEubGVuZ3RoO2QrKylkJTg9PT0wJiZkPjAmJihiLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShjKSksYz0wKSxhW2RdJiYoY3w9MTw8ZCU4KTtjPjAmJmIucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGMpKTtyZXR1cm4gcGIoYi5qb2luKCIiKSkucmVwbGFjZSgvXC4rJC8sIiIpfTtmdW5jdGlvbiB4Yigpe31mdW5jdGlvbiB5YihhKXtyZXR1cm4gdHlwZW9mIGE9PT0iZnVuY3Rpb24ifWZ1bmN0aW9uIHpiKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifWZ1bmN0aW9uIEFiKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIiJiYhaXNOYU4oYSl9ZnVuY3Rpb24gQmIoYSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YTpbYV19ZnVuY3Rpb24gQ2IoYSxiKXtpZihhJiZBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10mJmIoYVtjXSkpcmV0dXJuIGFbY119ZnVuY3Rpb24gRGIoYSxiKXtpZighQWIoYSl8fCFBYihiKXx8YT5iKWE9MCxiPTIxNDc0ODM2NDc7cmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSooYi1hKzEpK2EpfQpmdW5jdGlvbiBFYihhLGIpe2Zvcih2YXIgYz1uZXcgRmIsZD0wO2Q8YS5sZW5ndGg7ZCsrKWMuc2V0KGFbZF0sITApO2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7ZSsrKWlmKGMuZ2V0KGJbZV0pKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEdiKGEsYil7Zm9yKHZhciBjIGluIGEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYykmJmIoYyxhW2NdKX1mdW5jdGlvbiBIYihhKXtyZXR1cm4hIWEmJihPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoYSk9PT0iW29iamVjdCBBcmd1bWVudHNdInx8T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsImNhbGxlZSIpKX1mdW5jdGlvbiBJYihhKXtyZXR1cm4gTWF0aC5yb3VuZChOdW1iZXIoYSkpfHwwfWZ1bmN0aW9uIEpiKGEpe3JldHVybiJmYWxzZSI9PT1TdHJpbmcoYSkudG9Mb3dlckNhc2UoKT8hMTohIWF9CmZ1bmN0aW9uIEtiKGEpe3ZhciBiPVtdO2lmKEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspYi5wdXNoKFN0cmluZyhhW2NdKSk7cmV0dXJuIGJ9ZnVuY3Rpb24gTGIoYSl7cmV0dXJuIGE/YS5yZXBsYWNlKC9eXHMrfFxzKyQvZywiIik6IiJ9ZnVuY3Rpb24gTWIoKXtyZXR1cm4gbmV3IERhdGUoRGF0ZS5ub3coKSl9ZnVuY3Rpb24gTmIoKXtyZXR1cm4gTWIoKS5nZXRUaW1lKCl9dmFyIEZiPWZ1bmN0aW9uKCl7dGhpcy5wcmVmaXg9Imd0bS4iO3RoaXMudmFsdWVzPXt9fTtGYi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV09Yn07RmIucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV19O0ZiLnByb3RvdHlwZS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5nZXQoYSkhPT12b2lkIDB9OwpmdW5jdGlvbiBPYihhLGIsYyl7cmV0dXJuIGEmJmEuaGFzT3duUHJvcGVydHkoYik/YVtiXTpjfWZ1bmN0aW9uIFBiKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPXZvaWQgMDt0cnl7YygpfWNhdGNoKGQpe319fX1mdW5jdGlvbiBRYihhLGIpe2Zvcih2YXIgYyBpbiBiKWIuaGFzT3duUHJvcGVydHkoYykmJihhW2NdPWJbY10pfWZ1bmN0aW9uIFJiKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyljLnB1c2goYVtkXSksYy5wdXNoLmFwcGx5KGMsYlthW2RdXXx8W10pO3JldHVybiBjfWZ1bmN0aW9uIFNiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoMCxiLmxlbmd0aCk9PT1ifWZ1bmN0aW9uIFRiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoYS5sZW5ndGgtYi5sZW5ndGgsYS5sZW5ndGgpPT09Yn0KZnVuY3Rpb24gVWIoYSxiLGMpe2M9Y3x8W107Zm9yKHZhciBkPWEsZT0wO2U8Yi5sZW5ndGgtMTtlKyspe2lmKCFkLmhhc093blByb3BlcnR5KGJbZV0pKXJldHVybjtkPWRbYltlXV07aWYoYy5pbmRleE9mKGQpPj0wKXJldHVybn1yZXR1cm4gZH1mdW5jdGlvbiBWYihhLGIpe2Zvcih2YXIgYz17fSxkPWMsZT1hLnNwbGl0KCIuIiksZj0wO2Y8ZS5sZW5ndGgtMTtmKyspZD1kW2VbZl1dPXt9O2RbZVtlLmxlbmd0aC0xXV09YjtyZXR1cm4gY312YXIgV2I9L15cd3sxLDl9JC87ZnVuY3Rpb24gWWIoYSxiKXthPWF8fHt9O2I9Ynx8IiwiO3ZhciBjPVtdO0diKGEsZnVuY3Rpb24oZCxlKXtXYi50ZXN0KGQpJiZlJiZjLnB1c2goZCl9KTtyZXR1cm4gYy5qb2luKGIpfQpmdW5jdGlvbiBaYihhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hLmNoYXJDb2RlQXQoYyk7ZDwxMjg/Yi5wdXNoKGQpOmQ8MjA0OD9iLnB1c2goMTkyfGQ+PjYsMTI4fGQmNjMpOmQ8NTUyOTZ8fGQ+PTU3MzQ0P2IucHVzaCgyMjR8ZD4+MTIsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpOihkPTY1NTM2KygoZCYxMDIzKTw8MTB8YS5jaGFyQ29kZUF0KCsrYykmMTAyMyksYi5wdXNoKDI0MHxkPj4xOCwxMjh8ZD4+MTImNjMsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpKX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYil9ZnVuY3Rpb24gJGIoYSl7aWYoIWEpcmV0dXJuIGE7dmFyIGI9YTt0cnl7Yj1kZWNvZGVVUklDb21wb25lbnQoYSl9Y2F0Y2goZCl7fXZhciBjPWIuc3BsaXQoIiwiKTtyZXR1cm4gYy5sZW5ndGg9PT0yJiZjWzBdPT09Y1sxXT9jWzBdOmF9CmZ1bmN0aW9uIGFjKGEsYixjKXtmdW5jdGlvbiBkKG4pe3ZhciBwPW4uc3BsaXQoIj0iKVswXTtpZihhLmluZGV4T2YocCk8MClyZXR1cm4gbjtpZihjIT09dm9pZCAwKXJldHVybiBwKyI9IitjfWZ1bmN0aW9uIGUobil7cmV0dXJuIG4uc3BsaXQoIiYiKS5tYXAoZCkuZmlsdGVyKGZ1bmN0aW9uKHApe3JldHVybiBwIT09dm9pZCAwfSkuam9pbigiJiIpfXZhciBmPWIuaHJlZi5zcGxpdCgvWz8jXS8pWzBdLGc9Yi5zZWFyY2gsaD1iLmhhc2g7Z1swXT09PSI/IiYmKGc9Zy5zdWJzdHJpbmcoMSkpO2hbMF09PT0iIyImJihoPWguc3Vic3RyaW5nKDEpKTtnPWUoZyk7aD1lKGgpO2chPT0iIiYmKGc9Ij8iK2cpO2ghPT0iIiYmKGg9IiMiK2gpO3ZhciBsPSIiK2YrZytoO2xbbC5sZW5ndGgtMV09PT0iLyImJihsPWwuc3Vic3RyaW5nKDAsbC5sZW5ndGgtMSkpO3JldHVybiBsfQpmdW5jdGlvbiBiYyhhKXtmb3IodmFyIGI9MDtiPDM7KytiKXRyeXt2YXIgYz1kZWNvZGVVUklDb21wb25lbnQoYSkucmVwbGFjZSgvXCsvZywiICIpO2lmKGM9PT1hKWJyZWFrO2E9Y31jYXRjaChkKXtyZXR1cm4iIn1yZXR1cm4gYX1mdW5jdGlvbiBjYygpe3ZhciBhPUEsYjthOnt2YXIgYz1hLmNyeXB0b3x8YS5tc0NyeXB0bztpZihjJiZjLmdldFJhbmRvbVZhbHVlcyl0cnl7dmFyIGQ9bmV3IFVpbnQ4QXJyYXkoMjUpO2MuZ2V0UmFuZG9tVmFsdWVzKGQpO2I9YnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyx3KGQpKSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csIl8iKS5yZXBsYWNlKC89KyQvLCIiKTticmVhayBhfWNhdGNoKGUpe31iPXZvaWQgMH1yZXR1cm4gYn07LyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KdmFyIGRjPWdsb2JhbFRoaXMudHJ1c3RlZFR5cGVzLGVjO2Z1bmN0aW9uIGZjKCl7dmFyIGE9bnVsbDtpZighZGMpcmV0dXJuIGE7dHJ5e3ZhciBiPWZ1bmN0aW9uKGMpe3JldHVybiBjfTthPWRjLmNyZWF0ZVBvbGljeSgiZ29vZyNodG1sIix7Y3JlYXRlSFRNTDpiLGNyZWF0ZVNjcmlwdDpiLGNyZWF0ZVNjcmlwdFVSTDpifSl9Y2F0Y2goYyl7fXJldHVybiBhfWZ1bmN0aW9uIGhjKCl7ZWM9PT12b2lkIDAmJihlYz1mYygpKTtyZXR1cm4gZWN9O3ZhciBpYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07aWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07ZnVuY3Rpb24gamMoYSl7dmFyIGI9YSxjPWhjKCksZD1jP2MuY3JlYXRlU2NyaXB0VVJMKGIpOmI7cmV0dXJuIG5ldyBpYyhkKX1mdW5jdGlvbiBrYyhhKXtpZihhIGluc3RhbmNlb2YgaWMpcmV0dXJuIGEuSDt0aHJvdyBFcnJvcigiIik7fTt2YXIgbGM9QWEoWyIiXSksbWM9emEoWyJceDAwIl0sWyJcXDAiXSksbmM9emEoWyJcbiJdLFsiXFxuIl0pLG9jPXphKFsiXHgwMCJdLFsiXFx1MDAwMCJdKTtmdW5jdGlvbiBwYyhhKXtyZXR1cm4gYS50b1N0cmluZygpLmluZGV4T2YoImAiKT09PS0xfXBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKGxjKX0pfHxwYyhmdW5jdGlvbihhKXtyZXR1cm4gYShtYyl9KXx8cGMoZnVuY3Rpb24oYSl7cmV0dXJuIGEobmMpfSl8fHBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKG9jKX0pO3ZhciBxYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07cWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH07dmFyIHJjPWZ1bmN0aW9uKGEpe3RoaXMuSnM9YX07ZnVuY3Rpb24gc2MoYSl7cmV0dXJuIG5ldyByYyhmdW5jdGlvbihiKXtyZXR1cm4gYi5zdWJzdHIoMCxhLmxlbmd0aCsxKS50b0xvd2VyQ2FzZSgpPT09YSsiOiJ9KX12YXIgdGM9W3NjKCJkYXRhIiksc2MoImh0dHAiKSxzYygiaHR0cHMiKSxzYygibWFpbHRvIiksc2MoImZ0cCIpLG5ldyByYyhmdW5jdGlvbihhKXtyZXR1cm4vXlteOl0qKFsvPyNdfCQpLy50ZXN0KGEpfSldO2Z1bmN0aW9uIHVjKGEpe3ZhciBiO2I9Yj09PXZvaWQgMD90YzpiO2lmKGEgaW5zdGFuY2VvZiBxYylyZXR1cm4gYTtmb3IodmFyIGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkIGluc3RhbmNlb2YgcmMmJmQuSnMoYSkpcmV0dXJuIG5ldyBxYyhhKX19dmFyIHZjPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8/I10qKD86Wy8/I118JCkpL2k7CmZ1bmN0aW9uIHdjKGEpe3ZhciBiO2lmKGEgaW5zdGFuY2VvZiBxYylpZihhIGluc3RhbmNlb2YgcWMpYj1hLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7ZWxzZSBiPXZjLnRlc3QoYSk/YTp2b2lkIDA7cmV0dXJuIGJ9O2Z1bmN0aW9uIHhjKGEsYil7dmFyIGM9d2MoYik7YyE9PXZvaWQgMCYmKGEuYWN0aW9uPWMpfTtmdW5jdGlvbiB5YyhhLGIpe3Rocm93IEVycm9yKGI9PT12b2lkIDA/InVuZXhwZWN0ZWQgdmFsdWUgIithKyIhIjpiKTt9O3ZhciB6Yz1mdW5jdGlvbihhKXt0aGlzLkg9YX07emMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07dmFyIEJjPWZ1bmN0aW9uKCl7dGhpcy5IPUFjWzBdLnRvTG93ZXJDYXNlKCl9O0JjLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O2Z1bmN0aW9uIENjKGEsYil7dmFyIGM9W25ldyBCY107aWYoYy5sZW5ndGg9PT0wKXRocm93IEVycm9yKCIiKTt2YXIgZD1jLm1hcChmdW5jdGlvbihmKXt2YXIgZztpZihmIGluc3RhbmNlb2YgQmMpZz1mLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7cmV0dXJuIGd9KSxlPWIudG9Mb3dlckNhc2UoKTtpZihkLmV2ZXJ5KGZ1bmN0aW9uKGYpe3JldHVybiBlLmluZGV4T2YoZikhPT0wfSkpdGhyb3cgRXJyb3IoJ0F0dHJpYnV0ZSAiJytiKyciIGRvZXMgbm90IG1hdGNoIGFueSBvZiB0aGUgYWxsb3dlZCBwcmVmaXhlcy4nKTthLnNldEF0dHJpYnV0ZShiLCJ0cnVlIil9O3ZhciBEYz1BcnJheS5wcm90b3R5cGUuaW5kZXhPZj9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKGEsYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJuIHR5cGVvZiBiIT09InN0cmluZyJ8fGIubGVuZ3RoIT0xPy0xOmEuaW5kZXhPZihiLDApO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGMgaW4gYSYmYVtjXT09PWIpcmV0dXJuIGM7cmV0dXJuLTF9OyJBUlRJQ0xFIFNFQ1RJT04gTkFWIEFTSURFIEgxIEgyIEgzIEg0IEg1IEg2IEhFQURFUiBGT09URVIgQUREUkVTUyBQIEhSIFBSRSBCTE9DS1FVT1RFIE9MIFVMIExIIExJIERMIERUIEREIEZJR1VSRSBGSUdDQVBUSU9OIE1BSU4gRElWIEVNIFNUUk9ORyBTTUFMTCBTIENJVEUgUSBERk4gQUJCUiBSVUJZIFJCIFJUIFJUQyBSUCBEQVRBIFRJTUUgQ09ERSBWQVIgU0FNUCBLQkQgU1VCIFNVUCBJIEIgVSBNQVJLIEJESSBCRE8gU1BBTiBCUiBXQlIgTk9CUiBJTlMgREVMIFBJQ1RVUkUgUEFSQU0gVFJBQ0sgTUFQIFRBQkxFIENBUFRJT04gQ09MR1JPVVAgQ09MIFRCT0RZIFRIRUFEIFRGT09UIFRSIFREIFRIIFNFTEVDVCBEQVRBTElTVCBPUFRHUk9VUCBPUFRJT04gT1VUUFVUIFBST0dSRVNTIE1FVEVSIEZJRUxEU0VUIExFR0VORCBERVRBSUxTIFNVTU1BUlkgTUVOVSBESUFMT0cgU0xPVCBDQU5WQVMgRk9OVCBDRU5URVIgQUNST05ZTSBCQVNFRk9OVCBCSUcgRElSIEhHUk9VUCBTVFJJS0UgVFQiLnNwbGl0KCIgIikuY29uY2F0KFsiQlVUVE9OIiwKIklOUFVUIl0pO2Z1bmN0aW9uIEVjKGEpe3JldHVybiBhPT09bnVsbD8ibnVsbCI6YT09PXZvaWQgMD8idW5kZWZpbmVkIjphfTt2YXIgQT13aW5kb3csRmM9W10sR2M9d2luZG93Lmhpc3RvcnksQj1kb2N1bWVudCxIYz1uYXZpZ2F0b3I7ZnVuY3Rpb24gSWMoKXt2YXIgYTt0cnl7YT1IYy5zZXJ2aWNlV29ya2VyfWNhdGNoKGIpe3JldHVybn1yZXR1cm4gYX12YXIgSmM9Qi5jdXJyZW50U2NyaXB0LEtjPUpjJiZKYy5zcmM7ZnVuY3Rpb24gTWMoYSxiKXt2YXIgYz1BLGQ9Y1thXTtjW2FdPWQ9PT12b2lkIDA/YjpkO3JldHVybiBjW2FdfWZ1bmN0aW9uIE5jKGEpe3JldHVybihIYy51c2VyQWdlbnR8fCIiKS5pbmRleE9mKGEpIT09LTF9ZnVuY3Rpb24gT2MoKXtyZXR1cm4gTmMoIkZpcmVmb3giKXx8TmMoIkZ4aU9TIil9ZnVuY3Rpb24gUGMoKXtyZXR1cm4oTmMoIkdTQSIpfHxOYygiR29vZ2xlQXBwIikpJiYoTmMoImlQaG9uZSIpfHxOYygiaVBhZCIpKX1mdW5jdGlvbiBRYygpe3JldHVybiBOYygiRWRnLyIpfHxOYygiRWRnQS8iKXx8TmMoIkVkZ2lPUy8iKX0KdmFyIFJjPXthc3luYzoxLG5vbmNlOjEsb25lcnJvcjoxLG9ubG9hZDoxLHNyYzoxLHR5cGU6MX0sU2M9e2hlaWdodDoxLG9ubG9hZDoxLHNyYzoxLHN0eWxlOjEsd2lkdGg6MX07ZnVuY3Rpb24gVGMoYSxiLGMpe2ImJkdiKGIsZnVuY3Rpb24oZCxlKXtkPWQudG9Mb3dlckNhc2UoKTtjLmhhc093blByb3BlcnR5KGQpfHxhLnNldEF0dHJpYnV0ZShkLGUpfSl9CmZ1bmN0aW9uIFVjKGEsYixjLGQsZSl7dmFyIGY9Qi5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtUYyhmLGQsUmMpO2YudHlwZT0idGV4dC9qYXZhc2NyaXB0IjtmLmFzeW5jPWQmJmQuYXN5bmM9PT0hMT8hMTohMDt2YXIgZztnPWpjKEVjKGEpKTtmLnNyYz1rYyhnKTt2YXIgaCxsPWYub3duZXJEb2N1bWVudDtsPWw9PT12b2lkIDA/ZG9jdW1lbnQ6bDt2YXIgbixwLHE9KHA9KG49bCkucXVlcnlTZWxlY3Rvcik9PW51bGw/dm9pZCAwOnAuY2FsbChuLCJzY3JpcHRbbm9uY2VdIik7KGg9cT09bnVsbD8iIjpxLm5vbmNlfHxxLmdldEF0dHJpYnV0ZSgibm9uY2UiKXx8IiIpJiZmLnNldEF0dHJpYnV0ZSgibm9uY2UiLGgpO2ImJihmLm9ubG9hZD1iKTtjJiYoZi5vbmVycm9yPWMpO2U/ZS5hcHBlbmRDaGlsZChmKTpWYy5CcyhmKTtyZXR1cm4gZn0KZnVuY3Rpb24gV2MoKXtpZihLYyl7dmFyIGE9S2MudG9Mb3dlckNhc2UoKTtpZihhLmluZGV4T2YoImh0dHBzOi8vIik9PT0wKXJldHVybiAyO2lmKGEuaW5kZXhPZigiaHR0cDovLyIpPT09MClyZXR1cm4gM31yZXR1cm4gMX1mdW5jdGlvbiBYYyhhLGIsYyxkLGUsZil7Zj1mPT09dm9pZCAwPyEwOmY7dmFyIGc9ZSxoPSExO2d8fChnPUIuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksaD0hMCk7VGMoZyxjLFNjKTtkJiZHYihkLGZ1bmN0aW9uKG4scCl7Zy5kYXRhc2V0W25dPXB9KTtmJiYoZy5oZWlnaHQ9IjAiLGcud2lkdGg9IjAiLGcuc3R5bGUuZGlzcGxheT0ibm9uZSIsZy5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iKTthIT09dm9pZCAwJiYoZy5zcmM9YSk7aWYoaCl7dmFyIGw9Qi5ib2R5JiZCLmJvZHkubGFzdENoaWxkfHxCLmJvZHl8fEIuaGVhZDtsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGcsbCl9YiYmKGcub25sb2FkPWIpO3JldHVybiBnfQpmdW5jdGlvbiBaYygpe3JldHVybiBWYy5Fci5hcHBseShWYyx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfWZ1bmN0aW9uICRjKGEsYixjLGQpe2EuYWRkRXZlbnRMaXN0ZW5lciYmYS5hZGRFdmVudExpc3RlbmVyKGIsYywhIWQpfWZ1bmN0aW9uIGFkKGEsYixjKXthLnJlbW92ZUV2ZW50TGlzdGVuZXImJmEucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMsITEpfWZ1bmN0aW9uIGJkKGEpe0Euc2V0VGltZW91dChhLDApfWZ1bmN0aW9uIGNkKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpLGQsZT0oZD1BKS5zZXRJbnRlcnZhbC5hcHBseShkLFthLGJdLmNvbmNhdCh3KGMpKSk7RmMucHVzaChlKTtyZXR1cm4gZX0KZnVuY3Rpb24gZGQoYSl7dmFyIGI9QTt5YihiLnF1ZXVlTWljcm90YXNrKT9iLnF1ZXVlTWljcm90YXNrKGEpOnliKGIuUHJvbWlzZSkmJmIuUHJvbWlzZS5yZXNvbHZlP2IuUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe2EoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk6YmQoYSl9ZnVuY3Rpb24gZWQoYSxiKXtyZXR1cm4gYSYmYiYmYS5hdHRyaWJ1dGVzJiZhLmF0dHJpYnV0ZXNbYl0/YS5hdHRyaWJ1dGVzW2JdLnZhbHVlOm51bGx9ZnVuY3Rpb24gZmQoYSl7dmFyIGI9YS5pbm5lclRleHR8fGEudGV4dENvbnRlbnR8fCIiO2ImJmIhPT0iICImJihiPWIucmVwbGFjZSgvXltcc1x4YTBdKy9nLCIiKSxiPWIucmVwbGFjZSgvW1xzXHhhMF0rJC9nLCIiKSk7YiYmKGI9Yi5yZXBsYWNlKC8oXHhhMCt8XHN7Mix9fFxufFxyXHQpL2csIiAiKSk7cmV0dXJuIGJ9CmZ1bmN0aW9uIGdkKGEpe3ZhciBiPUIuY3JlYXRlRWxlbWVudCgiZGl2IiksYz1iLGQsZT1FYygiQTxkaXY+IithKyI8L2Rpdj4iKSxmPWhjKCksZz1mP2YuY3JlYXRlSFRNTChlKTplO2Q9bmV3IHpjKGcpO2lmKGMubm9kZVR5cGU9PT0xJiYvXihzY3JpcHR8c3R5bGUpJC9pLnRlc3QoYy50YWdOYW1lKSl0aHJvdyBFcnJvcigiIik7dmFyIGg7aWYoZCBpbnN0YW5jZW9mIHpjKWg9ZC5IO2Vsc2UgdGhyb3cgRXJyb3IoIiIpO2MuaW5uZXJIVE1MPWg7Yj1iLmxhc3RDaGlsZDtmb3IodmFyIGw9W107YiYmYi5maXJzdENoaWxkOylsLnB1c2goYi5yZW1vdmVDaGlsZChiLmZpcnN0Q2hpbGQpKTtyZXR1cm4gbH0KZnVuY3Rpb24gaGQoYSxiLGMpe2M9Y3x8MTAwO2Zvcih2YXIgZD17fSxlPTA7ZTxiLmxlbmd0aDtlKyspZFtiW2VdXT0hMDtmb3IodmFyIGY9YSxnPTA7ZiYmZzw9YztnKyspe2lmKGRbU3RyaW5nKGYudGFnTmFtZSkudG9Mb3dlckNhc2UoKV0pcmV0dXJuIGY7Zj1mLnBhcmVudEVsZW1lbnR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gaWQoYSxiLGMpe3ZhciBkO3RyeXtkPUhjLnNlbmRCZWFjb24mJkhjLnNlbmRCZWFjb24oYSl9Y2F0Y2goZSl7c2IoIlRBR0dJTkciLDE1KX1kP2I9PW51bGx8fGIoKTpaYyhhLGIsYyl9ZnVuY3Rpb24gamQoYSxiKXt0cnl7aWYoSGMuc2VuZEJlYWNvbiE9PXZvaWQgMClyZXR1cm4gSGMuc2VuZEJlYWNvbihhLGIpfWNhdGNoKGMpe3NiKCJUQUdHSU5HIiwxNSl9cmV0dXJuITF9ZnVuY3Rpb24ga2QoKXtyZXR1cm4gSGMuc2VuZEJlYWNvbiE9PXZvaWQgMH0KdmFyIGxkPXtjYWNoZToibm8tc3RvcmUiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixrZWVwYWxpdmU6ITAsbWV0aG9kOiJQT1NUIixtb2RlOiJuby1jb3JzIixyZWRpcmVjdDoiZm9sbG93In07CmZ1bmN0aW9uIG1kKGEsYixjLGQsZSl7aWYobmQoKSl7dmFyIGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxsZCk7YiYmKGYuYm9keT1iKTtjJiYoYy5hdHRyaWJ1dGlvblJlcG9ydGluZyYmKGYuYXR0cmlidXRpb25SZXBvcnRpbmc9Yy5hdHRyaWJ1dGlvblJlcG9ydGluZyksYy5icm93c2luZ1RvcGljcyE9PXZvaWQgMCYmKGYuYnJvd3NpbmdUb3BpY3M9Yy5icm93c2luZ1RvcGljcyksYy5jcmVkZW50aWFscyYmKGYuY3JlZGVudGlhbHM9Yy5jcmVkZW50aWFscyksYy5rZWVwYWxpdmUhPT12b2lkIDAmJihmLmtlZXBhbGl2ZT1jLmtlZXBhbGl2ZSksYy5tZXRob2QmJihmLm1ldGhvZD1jLm1ldGhvZCksYy5tb2RlJiYoZi5tb2RlPWMubW9kZSkpO3RyeXt2YXIgZz1BLmZldGNoKGEsZik7aWYoZylyZXR1cm4gZy50aGVuKGZ1bmN0aW9uKGwpe2wmJihsLm9rfHxsLnN0YXR1cz09PTApP2Q9PW51bGx8fGQoKTplPT1udWxsfHxlKCl9KS5jYXRjaChmdW5jdGlvbigpe2U9PQpudWxsfHxlKCl9KSwhMH1jYXRjaChsKXt9fWlmKChjPT1udWxsPzA6Yy5RZyl8fChjPT1udWxsPzA6Yy5jcmVkZW50aWFscykmJmMuY3JlZGVudGlhbHMhPT0iaW5jbHVkZSIpcmV0dXJuIGU9PW51bGx8fGUoKSwhMTtpZihiKXt2YXIgaD1qZChhLGIpO2g/ZD09bnVsbHx8ZCgpOmU9PW51bGx8fGUoKTtyZXR1cm4gaH1WYy53dChhLGQsZSk7cmV0dXJuITB9ZnVuY3Rpb24gbmQoKXtyZXR1cm4geWIoQS5mZXRjaCl9ZnVuY3Rpb24gb2QoYSxiKXt2YXIgYz1hW2JdO2MmJnR5cGVvZiBjLmFuaW1WYWw9PT0ic3RyaW5nIiYmKGM9Yy5hbmltVmFsKTtyZXR1cm4gY31mdW5jdGlvbiBwZCgpe3ZhciBhPUEucGVyZm9ybWFuY2U7aWYoYSYmeWIoYS5ub3cpKXJldHVybiBhLm5vdygpfQpmdW5jdGlvbiBxZCgpe3ZhciBhLGI9QS5wZXJmb3JtYW5jZTtpZihiJiZiLmdldEVudHJpZXNCeVR5cGUpdHJ5e3ZhciBjPWIuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpO2MmJmMubGVuZ3RoPjAmJihhPWNbMF0udHlwZSl9Y2F0Y2goZCl7cmV0dXJuImUifWlmKCFhKXJldHVybiJ1Ijtzd2l0Y2goYSl7Y2FzZSAibmF2aWdhdGUiOnJldHVybiJuIjtjYXNlICJiYWNrX2ZvcndhcmQiOnJldHVybiJoIjtjYXNlICJyZWxvYWQiOnJldHVybiJyIjtjYXNlICJwcmVyZW5kZXIiOnJldHVybiJwIjtkZWZhdWx0OnJldHVybiJ4In19ZnVuY3Rpb24gcmQoKXtyZXR1cm4gQS5wZXJmb3JtYW5jZXx8dm9pZCAwfWZ1bmN0aW9uIHNkKCl7dmFyIGE9QS53ZWJQaXhlbHNNYW5hZ2VyO3JldHVybiBhP2EuY3JlYXRlU2hvcGlmeUV4dGVuZCE9PXZvaWQgMDohMX0KdmFyIFZjPXtFcjpmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1uZXcgSW1hZ2UoMSwxKTtUYyhlLGQse30pO2Uub25sb2FkPWZ1bmN0aW9uKCl7ZS5vbmxvYWQ9bnVsbDtiJiZiKCl9O2Uub25lcnJvcj1mdW5jdGlvbigpe2Uub25lcnJvcj1udWxsO2MmJmMoKX07ZS5zcmM9YTtyZXR1cm4gZX0sQnM6ZnVuY3Rpb24oYSl7dmFyIGI9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF18fEIuYm9keXx8Qi5oZWFkO2IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSxiKX0sd3Q6aWR9O2Z1bmN0aW9uIHRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdWQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKT09PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiB3ZChhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO3JldHVybiBTdHJpbmcoYykuaW5kZXhPZihTdHJpbmcoZCkpPi0xfWZ1bmN0aW9uIHhkKGEsYil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYSkpLGQ9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYikpO3JldHVybiBjLnN1YnN0cmluZygwLGQubGVuZ3RoKT09PWR9CmZ1bmN0aW9uIHlkKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYik7c3dpdGNoKGMpe2Nhc2UgInBhZ2VMb2NhdGlvbiI6dmFyIGU9QS5sb2NhdGlvbi5ocmVmO2QgaW5zdGFuY2VvZiBrYiYmZC5nZXQoInN0cmlwUHJvdG9jb2wiKSYmKGU9ZS5yZXBsYWNlKC9eaHR0cHM/OlwvXC8vLCIiKSk7cmV0dXJuIGV9fTsvKgogalF1ZXJ5IChjKSAyMDA1LCAyMDEyIGpRdWVyeSBGb3VuZGF0aW9uLCBJbmMuIGpxdWVyeS5vcmcvbGljZW5zZS4KKi8KdmFyIHpkPS9cW29iamVjdCAoQm9vbGVhbnxOdW1iZXJ8U3RyaW5nfEZ1bmN0aW9ufEFycmF5fERhdGV8UmVnRXhwKVxdLyxBZD1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBTdHJpbmcoYSk7dmFyIGI9emQuZXhlYyhPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoT2JqZWN0KGEpKSk7cmV0dXJuIGI/YlsxXS50b0xvd2VyQ2FzZSgpOiJvYmplY3QifSxCZD1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoT2JqZWN0KGEpLGIpfSxDZD1mdW5jdGlvbihhKXtpZighYXx8QWQoYSkhPSJvYmplY3QifHxhLm5vZGVUeXBlfHxhPT1hLndpbmRvdylyZXR1cm4hMTt0cnl7aWYoYS5jb25zdHJ1Y3RvciYmIUJkKGEsImNvbnN0cnVjdG9yIikmJiFCZChhLmNvbnN0cnVjdG9yLnByb3RvdHlwZSwiaXNQcm90b3R5cGVPZiIpKXJldHVybiExfWNhdGNoKGMpe3JldHVybiExfWZvcih2YXIgYiBpbiBhKTtyZXR1cm4gYj09PXZvaWQgMHx8CkJkKGEsYil9LEVkPWZ1bmN0aW9uKGEsYil7dmFyIGM9Ynx8KEFkKGEpPT0iYXJyYXkiP1tdOnt9KSxkO2ZvcihkIGluIGEpaWYoQmQoYSxkKSl7dmFyIGU9YVtkXTtBZChlKT09ImFycmF5Ij8oQWQoY1tkXSkhPSJhcnJheSImJihjW2RdPVtdKSxjW2RdPUVkKGUsY1tkXSkpOkNkKGUpPyhDZChjW2RdKXx8KGNbZF09e30pLGNbZF09RWQoZSxjW2RdKSk6Y1tkXT1lfXJldHVybiBjfTtmdW5jdGlvbiBGZChhKXtyZXR1cm4gdHlwZW9mIGE9PT0ibnVtYmVyIiYmYT49MCYmaXNGaW5pdGUoYSkmJmElMT09PTB8fHR5cGVvZiBhPT09InN0cmluZyImJmFbMF0hPT0iLSImJmE9PT0iIitwYXJzZUludChhKX07dmFyIEdkPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphO3RoaXMubGE9bmV3IFVhO3RoaXMudmFsdWVzPVtdO3RoaXMuTmE9ITE7Zm9yKHZhciBiIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShiKSYmKEZkKGIpP3RoaXMudmFsdWVzW051bWJlcihiKV09YVtOdW1iZXIoYildOnRoaXMubGEuc2V0KGIsYVtiXSkpfTtrPUdkLnByb3RvdHlwZTtrLnRvU3RyaW5nPWZ1bmN0aW9uKGEpe2lmKGEmJmEuaW5kZXhPZih0aGlzKT49MClyZXR1cm4iIjtmb3IodmFyIGI9W10sYz0wO2M8dGhpcy52YWx1ZXMubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy52YWx1ZXNbY107ZD09PW51bGx8fGQ9PT12b2lkIDA/Yi5wdXNoKCIiKTpkIGluc3RhbmNlb2YgR2Q/KGE9YXx8W10sYS5wdXNoKHRoaXMpLGIucHVzaChkLnRvU3RyaW5nKGEpKSxhLnBvcCgpKTpiLnB1c2goU3RyaW5nKGQpKX1yZXR1cm4gYi5qb2luKCIsIil9OwprLnNldD1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLk5hKWlmKGE9PT0ibGVuZ3RoIil7aWYoIUZkKGIpKXRocm93IGNiKEVycm9yKCJSYW5nZUVycm9yOiBMZW5ndGggcHJvcGVydHkgbXVzdCBiZSBhIHZhbGlkIGludGVnZXIuIikpO3RoaXMudmFsdWVzLmxlbmd0aD1OdW1iZXIoYil9ZWxzZSBGZChhKT90aGlzLnZhbHVlc1tOdW1iZXIoYSldPWI6dGhpcy5sYS5zZXQoYSxiKX07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0ibGVuZ3RoIj90aGlzLmxlbmd0aCgpOkZkKGEpP3RoaXMudmFsdWVzW051bWJlcihhKV06dGhpcy5sYS5nZXQoYSl9O2subGVuZ3RoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLmxlbmd0aH07ay5GYT1mdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLmxhLkZhKCksYj0wO2I8dGhpcy52YWx1ZXMubGVuZ3RoO2IrKyl0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShiKSYmYS5wdXNoKFN0cmluZyhiKSk7cmV0dXJuIGF9OwprLmhjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuaGMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2godGhpcy52YWx1ZXNbYl0pO3JldHVybiBhfTtrLmZjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuZmMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2goW1N0cmluZyhiKSx0aGlzLnZhbHVlc1tiXV0pO3JldHVybiBhfTtrLnJlbW92ZT1mdW5jdGlvbihhKXtGZChhKT9kZWxldGUgdGhpcy52YWx1ZXNbTnVtYmVyKGEpXTp0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5wb3A9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMucG9wKCl9O2sucHVzaD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlcy5wdXNoLmFwcGx5KHRoaXMudmFsdWVzLHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSl9O2suc2hpZnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMuc2hpZnQoKX07Cmsuc3BsaWNlPWZ1bmN0aW9uKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpO3JldHVybiBiPT09dm9pZCAwJiZjLmxlbmd0aD09PTA/bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZShhKSk6bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZS5hcHBseSh0aGlzLnZhbHVlcyxbYSxifHwwXS5jb25jYXQodyhjKSkpKX07ay51bnNoaWZ0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLnVuc2hpZnQuYXBwbHkodGhpcy52YWx1ZXMsdyhPYS5hcHBseSgwLGFyZ3VtZW50cykpKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIEZkKGEpJiZ0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShhKXx8dGhpcy5sYS5oYXMoYSl9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLk5hPSEwO09iamVjdC5mcmVlemUodGhpcy52YWx1ZXMpfTtrLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9OwpmdW5jdGlvbiBIZChhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGgoKTtjKyspYS5oYXMoYykmJihiW2NdPWEuZ2V0KGMpKTtyZXR1cm4gYn07dmFyIElkPWZ1bmN0aW9uKGEsYil7dGhpcy5mdW5jdGlvbk5hbWU9YTt0aGlzLmllPWI7dGhpcy5sYT1uZXcgVWE7dGhpcy5OYT0hMX07az1JZC5wcm90b3R5cGU7ay50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmZ1bmN0aW9uTmFtZX07ay5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZnVuY3Rpb25OYW1lfTtrLmdldEtleXM9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEdkKHRoaXMuRmEoKSl9O2suaW52b2tlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmllLmNhbGwuYXBwbHkodGhpcy5pZSxbbmV3IEpkKHRoaXMsYSldLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKX07ay5hcHBseT1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmllLmFwcGx5KG5ldyBKZCh0aGlzLGEpLGIpfTtrLk5jPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTt0cnl7cmV0dXJuIHRoaXMuaW52b2tlLmFwcGx5KHRoaXMsW2FdLmNvbmNhdCh3KGIpKSl9Y2F0Y2goYyl7fX07CmsuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmdldChhKX07ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLk5hfHx0aGlzLmxhLnNldChhLGIpfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5oYXMoYSl9O2sucmVtb3ZlPWZ1bmN0aW9uKGEpe3RoaXMuTmF8fHRoaXMubGEucmVtb3ZlKGEpfTtrLkZhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuRmEoKX07ay5oYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmhjKCl9O2suZmM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5mYygpfTtrLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07ay5IYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk5hfTt2YXIgS2Q9ZnVuY3Rpb24oYSxiKXtJZC5jYWxsKHRoaXMsYSxiKX07d2EoS2QsSWQpO3ZhciBMZD1mdW5jdGlvbihhLGIpe0lkLmNhbGwodGhpcyxhLGIpfTt3YShMZCxJZCk7dmFyIEpkPWZ1bmN0aW9uKGEsYil7dGhpcy5pZT1hO3RoaXMuVD1ifTsKSmQucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuVDtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9mYihiLGEpOmF9O0pkLnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWUuZ2V0TmFtZSgpfTtKZC5wcm90b3R5cGUuamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ULmplKCl9O3ZhciBNZD1mdW5jdGlvbigpe3RoaXMubWFwPW5ldyBNYXB9O01kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLm1hcC5zZXQoYSxiKX07TWQucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5tYXAuZ2V0KGEpfTt2YXIgTmQ9ZnVuY3Rpb24oKXt0aGlzLmtleXM9W107dGhpcy52YWx1ZXM9W119O05kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmtleXMucHVzaChhKTt0aGlzLnZhbHVlcy5wdXNoKGIpfTtOZC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMua2V5cy5pbmRleE9mKGEpO2lmKGI+LTEpcmV0dXJuIHRoaXMudmFsdWVzW2JdfTtmdW5jdGlvbiBPZCgpe3RyeXtyZXR1cm4gTWFwP25ldyBNZDpuZXcgTmR9Y2F0Y2goYSl7cmV0dXJuIG5ldyBOZH19O3ZhciBQZD1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgUGQpcmV0dXJuIGE7dmFyIGI7YTppZihhPT12b2lkIDB8fEFycmF5LmlzQXJyYXkoYSl8fENkKGEpKWI9ITA7ZWxzZXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJvb2xlYW4iOmNhc2UgIm51bWJlciI6Y2FzZSAic3RyaW5nIjpjYXNlICJmdW5jdGlvbiI6Yj0hMDticmVhayBhfWI9ITF9aWYoYil0aHJvdyBFcnJvcigiVHlwZSBvZiBnaXZlbiB2YWx1ZSBoYXMgYW4gZXF1aXZhbGVudCBQaXhpZSB0eXBlLiIpO3RoaXMudmFsdWU9YX07UGQucHJvdG90eXBlLmdldFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O1BkLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcodGhpcy52YWx1ZSl9O3ZhciBTZD1mdW5jdGlvbihhKXt0aGlzLnByb21pc2U9YTt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhO3RoaXMubGEuc2V0KCJ0aGVuIixSZCh0aGlzKSk7dGhpcy5sYS5zZXQoImNhdGNoIixSZCh0aGlzLCEwKSk7dGhpcy5sYS5zZXQoImZpbmFsbHkiLFJkKHRoaXMsITEsITApKX07az1TZC5wcm90b3R5cGU7ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuZ2V0KGEpfTtrLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTmF8fHRoaXMubGEuc2V0KGEsYil9O2suaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmhhcyhhKX07ay5yZW1vdmU9ZnVuY3Rpb24oYSl7dGhpcy5OYXx8dGhpcy5sYS5yZW1vdmUoYSl9O2suRmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5GYSgpfTtrLmhjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuaGMoKX07ay5mYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmZjKCl9Owp2YXIgUmQ9ZnVuY3Rpb24oYSxiLGMpe2I9Yj09PXZvaWQgMD8hMTpiO2M9Yz09PXZvaWQgMD8hMTpjO3JldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oZCxlKXtiJiYoZT1kLGQ9dm9pZCAwKTtjJiYoZT1kKTtkIGluc3RhbmNlb2YgS2R8fChkPXZvaWQgMCk7ZSBpbnN0YW5jZW9mIEtkfHwoZT12b2lkIDApO3ZhciBmPXRoaXMuVC53YigpLGc9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe3RyeXtyZXR1cm4gYz8obC5pbnZva2UoZiksYS5wcm9taXNlKTpsLmludm9rZShmLG4pfWNhdGNoKHApe3JldHVybiBQcm9taXNlLnJlamVjdChwIGluc3RhbmNlb2YgRXJyb3I/bmV3IFBkKHApOlN0cmluZyhwKSl9fX0saD1hLnByb21pc2UudGhlbihkJiZnKGQpLGUmJmcoZSkpO3JldHVybiBuZXcgU2QoaCl9KX07U2QucHJvdG90eXBlLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07U2QucHJvdG90eXBlLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9O2Z1bmN0aW9uIFRkKGEsYixjKXt2YXIgZD1PZCgpLGU9ZnVuY3Rpb24oZyxoKXtmb3IodmFyIGw9Zy5GYSgpLG49MDtuPGwubGVuZ3RoO24rKyloW2xbbl1dPWYoZy5nZXQobFtuXSkpfSxmPWZ1bmN0aW9uKGcpe2lmKGc9PT1udWxsfHxnPT09dm9pZCAwKXJldHVybiBnO3ZhciBoPWQuZ2V0KGcpO2lmKGgpcmV0dXJuIGg7aWYoZyBpbnN0YW5jZW9mIEdkKXt2YXIgbD1bXTtkLnNldChnLGwpO2Zvcih2YXIgbj1nLkZhKCkscD0wO3A8bi5sZW5ndGg7cCsrKWxbbltwXV09ZihnLmdldChuW3BdKSk7cmV0dXJuIGx9aWYoZyBpbnN0YW5jZW9mIFNkKXJldHVybiBnLnByb21pc2UudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gVGQodSxiLDEpfSxmdW5jdGlvbih1KXtyZXR1cm4gUHJvbWlzZS5yZWplY3QoVGQodSxiLDEpKX0pO2lmKGcgaW5zdGFuY2VvZiBrYil7dmFyIHE9e307ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9aWYoZyBpbnN0YW5jZW9mIEtkKXt2YXIgcj1mdW5jdGlvbigpe2Zvcih2YXIgdT0KW10sdj0wO3Y8YXJndW1lbnRzLmxlbmd0aDt2KyspdVt2XT1VZChhcmd1bWVudHNbdl0sYixjKTt2YXIgeD1uZXcgaGIoYj9iLmplKCk6bmV3IFdhKTtiJiZ4LnVlKGIueGIoKSk7cmV0dXJuIGYoZy5hcHBseSh4LHUpKX07ZC5zZXQoZyxyKTtlKGcscik7cmV0dXJuIHJ9dmFyIHQ9ITE7c3dpdGNoKGMpe2Nhc2UgMTp0PSEwO2JyZWFrO2Nhc2UgMjp0PSExO2JyZWFrO2Nhc2UgMzp0PSExO2JyZWFrO2RlZmF1bHQ6fWlmKGcgaW5zdGFuY2VvZiBQZCYmdClyZXR1cm4gZy5nZXRWYWx1ZSgpO3N3aXRjaCh0eXBlb2YgZyl7Y2FzZSAiYm9vbGVhbiI6Y2FzZSAibnVtYmVyIjpjYXNlICJzdHJpbmciOmNhc2UgInVuZGVmaW5lZCI6cmV0dXJuIGc7Y2FzZSAib2JqZWN0IjppZihnPT09Cm51bGwpcmV0dXJuIG51bGx9fTtyZXR1cm4gZihhKX0KZnVuY3Rpb24gVWQoYSxiLGMpe3ZhciBkPU9kKCksZT1mdW5jdGlvbihnLGgpe2Zvcih2YXIgbCBpbiBnKWcuaGFzT3duUHJvcGVydHkobCkmJmguc2V0KGwsZihnW2xdKSl9LGY9ZnVuY3Rpb24oZyl7dmFyIGg9ZC5nZXQoZyk7aWYoaClyZXR1cm4gaDtpZihBcnJheS5pc0FycmF5KGcpfHxIYihnKSl7dmFyIGw9bmV3IEdkO2Quc2V0KGcsbCk7Zm9yKHZhciBuIGluIGcpZy5oYXNPd25Qcm9wZXJ0eShuKSYmbC5zZXQobixmKGdbbl0pKTtyZXR1cm4gbH1pZihDZChnKSl7dmFyIHA9bmV3IGtiO2Quc2V0KGcscCk7ZShnLHApO3JldHVybiBwfWlmKHR5cGVvZiBnPT09ImZ1bmN0aW9uIil7dmFyIHE9bmV3IEtkKCIiLGZ1bmN0aW9uKCl7Zm9yKHZhciB1PU9hLmFwcGx5KDAsYXJndW1lbnRzKSx2PVtdLHg9MDt4PHUubGVuZ3RoO3grKyl2W3hdPVRkKHRoaXMuZXZhbHVhdGUodVt4XSksYixjKTtyZXR1cm4gZih0aGlzLlQuUGooKShnLGcsdikpfSk7ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9dmFyIHI9dHlwZW9mIGc7aWYoZz09PW51bGx8fHI9PT0ic3RyaW5nInx8cj09PSJudW1iZXIifHxyPT09ImJvb2xlYW4iKXJldHVybiBnO3ZhciB0PSExO3N3aXRjaChjKXtjYXNlIDE6dD0hMDticmVhaztjYXNlIDI6dD0hMTticmVhaztkZWZhdWx0On1pZihnIT09dm9pZCAwJiZ0KXJldHVybiBuZXcgUGQoZyl9O3JldHVybiBmKGEpfTt2YXIgVmQ9e3N1cHBvcnRlZE1ldGhvZHM6ImNvbmNhdCBldmVyeSBmaWx0ZXIgZm9yRWFjaCBoYXNPd25Qcm9wZXJ0eSBpbmRleE9mIGpvaW4gbGFzdEluZGV4T2YgbWFwIHBvcCBwdXNoIHJlZHVjZSByZWR1Y2VSaWdodCByZXZlcnNlIHNoaWZ0IHNsaWNlIHNvbWUgc29ydCBzcGxpY2UgdW5zaGlmdCB0b1N0cmluZyIuc3BsaXQoIiAiKSxjb25jYXQ6ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPVtdLGM9MDtjPHRoaXMubGVuZ3RoKCk7YysrKWIucHVzaCh0aGlzLmdldChjKSk7Zm9yKHZhciBkPTE7ZDxhcmd1bWVudHMubGVuZ3RoO2QrKylpZihhcmd1bWVudHNbZF1pbnN0YW5jZW9mIEdkKWZvcih2YXIgZT1hcmd1bWVudHNbZF0sZj0wO2Y8ZS5sZW5ndGgoKTtmKyspYi5wdXNoKGUuZ2V0KGYpKTtlbHNlIGIucHVzaChhcmd1bWVudHNbZF0pO3JldHVybiBuZXcgR2QoYil9LGV2ZXJ5OmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD0wO2Q8dGhpcy5sZW5ndGgoKSYmCmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJiFiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcykpcmV0dXJuITE7cmV0dXJuITB9LGZpbHRlcjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9W10sZT0wO2U8dGhpcy5sZW5ndGgoKSYmZTxjO2UrKyl0aGlzLmhhcyhlKSYmYi5pbnZva2UoYSx0aGlzLmdldChlKSxlLHRoaXMpJiZkLnB1c2godGhpcy5nZXQoZSkpO3JldHVybiBuZXcgR2QoZCl9LGZvckVhY2g6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dGhpcy5sZW5ndGgoKSxkPTA7ZDx0aGlzLmxlbmd0aCgpJiZkPGM7ZCsrKXRoaXMuaGFzKGQpJiZiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcyl9LGhhc093blByb3BlcnR5OmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaGFzKGIpfSxpbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9Yz09PXZvaWQgMD8wOk51bWJlcihjKTtlPDAmJihlPU1hdGgubWF4KGQrZSwwKSk7Zm9yKHZhciBmPQplO2Y8ZDtmKyspaWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sam9pbjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDx0aGlzLmxlbmd0aCgpO2QrKyljLnB1c2godGhpcy5nZXQoZCkpO3JldHVybiBjLmpvaW4oYil9LGxhc3RJbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9ZC0xO2MhPT12b2lkIDAmJihlPWM8MD9kK2M6TWF0aC5taW4oYyxlKSk7Zm9yKHZhciBmPWU7Zj49MDtmLS0paWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sbWFwOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD1bXSxlPTA7ZTx0aGlzLmxlbmd0aCgpJiZlPGM7ZSsrKXRoaXMuaGFzKGUpJiYoZFtlXT1iLmludm9rZShhLHRoaXMuZ2V0KGUpLGUsdGhpcykpO3JldHVybiBuZXcgR2QoZCl9LHBvcDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnBvcCgpfSxwdXNoOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnB1c2guYXBwbHkodGhpcywKdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX0scmVkdWNlOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGUsZj0wO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlIG9uIExpc3Qgd2l0aCBubyBlbGVtZW50cy4iKSk7Zm9yKHZhciBnPTA7ZzxkO2crKylpZih0aGlzLmhhcyhnKSl7ZT10aGlzLmdldChnKTtmPWcrMTticmVha31pZihnPT09ZCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2Ugb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aDxkO2grKyl0aGlzLmhhcyhoKSYmKGU9Yi5pbnZva2UoYSxlLHRoaXMuZ2V0KGgpLGgsdGhpcykpO3JldHVybiBlfSxyZWR1Y2VSaWdodDpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5sZW5ndGgoKSxlLGY9ZC0xO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTsKZm9yKHZhciBnPTE7Zzw9ZDtnKyspaWYodGhpcy5oYXMoZC1nKSl7ZT10aGlzLmdldChkLWcpO2Y9ZC0oZysxKTticmVha31pZihnPmQpdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aD49MDtoLS0pdGhpcy5oYXMoaCkmJihlPWIuaW52b2tlKGEsZSx0aGlzLmdldChoKSxoLHRoaXMpKTtyZXR1cm4gZX0scmV2ZXJzZTpmdW5jdGlvbigpe2Zvcih2YXIgYT1IZCh0aGlzKSxiPWEubGVuZ3RoLTEsYz0wO2I+PTA7Yi0tLGMrKylhLmhhc093blByb3BlcnR5KGIpP3RoaXMuc2V0KGMsYVtiXSk6dGhpcy5yZW1vdmUoYyk7cmV0dXJuIHRoaXN9LHNoaWZ0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2hpZnQoKX0sc2xpY2U6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCk7Yj09PXZvaWQgMCYmKGI9MCk7Yj1iPDA/TWF0aC5tYXgoZCtiLDApOk1hdGgubWluKGIsZCk7Yz1jPT09CnZvaWQgMD9kOmM8MD9NYXRoLm1heChkK2MsMCk6TWF0aC5taW4oYyxkKTtjPU1hdGgubWF4KGIsYyk7Zm9yKHZhciBlPVtdLGY9YjtmPGM7ZisrKWUucHVzaCh0aGlzLmdldChmKSk7cmV0dXJuIG5ldyBHZChlKX0sc29tZTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9MDtkPHRoaXMubGVuZ3RoKCkmJmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJmIuaW52b2tlKGEsdGhpcy5nZXQoZCksZCx0aGlzKSlyZXR1cm4hMDtyZXR1cm4hMX0sc29ydDpmdW5jdGlvbihhLGIpe3ZhciBjPUhkKHRoaXMpO2I9PT12b2lkIDA/Yy5zb3J0KCk6Yy5zb3J0KGZ1bmN0aW9uKGUsZil7cmV0dXJuIE51bWJlcihiLmludm9rZShhLGUsZikpfSk7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspYy5oYXNPd25Qcm9wZXJ0eShkKT90aGlzLnNldChkLGNbZF0pOnRoaXMucmVtb3ZlKGQpO3JldHVybiB0aGlzfSxzcGxpY2U6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiB0aGlzLnNwbGljZS5hcHBseSh0aGlzLApbYixjXS5jb25jYXQodyhPYS5hcHBseSgzLGFyZ3VtZW50cykpKSl9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudG9TdHJpbmcoKX0sdW5zaGlmdDpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy51bnNoaWZ0LmFwcGx5KHRoaXMsdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX19O3ZhciBXZD17Y2hhckF0OjEsY29uY2F0OjEsaW5kZXhPZjoxLGxhc3RJbmRleE9mOjEsbWF0Y2g6MSxyZXBsYWNlOjEsc2VhcmNoOjEsc2xpY2U6MSxzcGxpdDoxLHN1YnN0cmluZzoxLHRvTG93ZXJDYXNlOjEsdG9Mb2NhbGVMb3dlckNhc2U6MSx0b1N0cmluZzoxLHRvVXBwZXJDYXNlOjEsdG9Mb2NhbGVVcHBlckNhc2U6MSx0cmltOjF9LFhkPW5ldyBUYSgiYnJlYWsiKSxZZD1uZXcgVGEoImNvbnRpbnVlIik7ZnVuY3Rpb24gWmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSt0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uICRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyk7aWYoIShmIGluc3RhbmNlb2YgR2QpKXRocm93IEVycm9yKCJFcnJvcjogTm9uLUxpc3QgYXJndW1lbnQgZ2l2ZW4gdG8gQXBwbHkgaW5zdHJ1Y3Rpb24uIik7aWYoZD09PW51bGx8fGQ9PT12b2lkIDApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogQ2FuJ3QgcmVhZCBwcm9wZXJ0eSAiK2UrIiBvZiAiK2QrIi4iKSk7dmFyIGc9dHlwZW9mIGQ9PT0ibnVtYmVyIjtpZih0eXBlb2YgZD09PSJib29sZWFuInx8Zyl7aWYoZT09PSJ0b1N0cmluZyIpe2lmKGcmJmYubGVuZ3RoKCkpe3ZhciBoPVRkKGYuZ2V0KDApKTt0cnl7cmV0dXJuIGQudG9TdHJpbmcoaCl9Y2F0Y2godSl7fX1yZXR1cm4gZC50b1N0cmluZygpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZCsiLiIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uLiIpKTt9aWYodHlwZW9mIGQ9PT0KInN0cmluZyIpe2lmKFdkLmhhc093blByb3BlcnR5KGUpKXt2YXIgbD1UZChmLHZvaWQgMCwxKTtyZXR1cm4gVWQoZFtlXS5hcHBseShkLGwpLHRoaXMuVCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKGQgaW5zdGFuY2VvZiBHZCl7aWYoZC5oYXMoZSkpe3ZhciBuPWQuZ2V0KFN0cmluZyhlKSk7aWYobiBpbnN0YW5jZW9mIEtkKXt2YXIgcD1IZChmKTtyZXR1cm4gbi5hcHBseSh0aGlzLlQscCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKFZkLnN1cHBvcnRlZE1ldGhvZHMuaW5kZXhPZihlKT49MCl7dmFyIHE9SGQoZik7cmV0dXJuIFZkW2VdLmNhbGwuYXBwbHkoVmRbZV0sW2QsdGhpcy5UXS5jb25jYXQodyhxKSkpfX1pZihkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkKXtpZihkLmhhcyhlKSl7dmFyIHI9ZC5nZXQoZSk7CmlmKHIgaW5zdGFuY2VvZiBLZCl7dmFyIHQ9SGQoZik7cmV0dXJuIHIuYXBwbHkodGhpcy5ULHQpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uIikpO31pZihlPT09InRvU3RyaW5nIilyZXR1cm4gZCBpbnN0YW5jZW9mIEtkP2QuZ2V0TmFtZSgpOmQudG9TdHJpbmcoKTtpZihlPT09Imhhc093blByb3BlcnR5IilyZXR1cm4gZC5oYXMoZi5nZXQoMCkpfWlmKGQgaW5zdGFuY2VvZiBQZCYmZT09PSJ0b1N0cmluZyIpcmV0dXJuIGQudG9TdHJpbmcoKTt0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBPYmplY3QgaGFzIG5vICciK2UrIicgcHJvcGVydHkuIikpO30KZnVuY3Rpb24gYmUoYSxiKXthPXRoaXMuZXZhbHVhdGUoYSk7aWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBFcnJvcigiSW52YWxpZCBrZXkgbmFtZSBnaXZlbiBmb3IgYXNzaWdubWVudC4iKTt2YXIgYz10aGlzLlQ7aWYoIWMuaGFzKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFzc2lnbiB0byB1bmRlZmluZWQgdmFsdWUgIitiKTt2YXIgZD10aGlzLmV2YWx1YXRlKGIpO2Muc2V0KGEsZCk7cmV0dXJuIGR9ZnVuY3Rpb24gY2UoKXt2YXIgYT1PYS5hcHBseSgwLGFyZ3VtZW50cyksYj10aGlzLlQud2IoKSxjPWViKGIsYSk7aWYoYyBpbnN0YW5jZW9mIFRhKXJldHVybiBjfWZ1bmN0aW9uIGRlKCl7cmV0dXJuIFhkfWZ1bmN0aW9uIGVlKGEpe2Zvcih2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShiW2NdKTtpZihkIGluc3RhbmNlb2YgVGEpcmV0dXJuIGR9fQpmdW5jdGlvbiBmZSgpe2Zvcih2YXIgYT10aGlzLlQsYj0wO2I8YXJndW1lbnRzLmxlbmd0aC0xO2IrPTIpe3ZhciBjPWFyZ3VtZW50c1tiXTtpZih0eXBlb2YgYz09PSJzdHJpbmciKXt2YXIgZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLlFoKGMsZCl9fX1mdW5jdGlvbiBnZSgpe3JldHVybiBZZH1mdW5jdGlvbiBoZShhLGIpe3JldHVybiBuZXcgVGEoYSx0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBpZShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2Q9bmV3IEdkO2Zvcih2YXIgZT10aGlzLmV2YWx1YXRlKGIpLGY9MDtmPGUubGVuZ3RoO2YrKylkLnB1c2goZVtmXSk7dmFyIGc9WzUxLGEsZF0uY29uY2F0KHcoYykpO3RoaXMuVC5hZGQoYSx0aGlzLmV2YWx1YXRlKGcpKX1mdW5jdGlvbiBqZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpL3RoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGtlKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYiksZT1jIGluc3RhbmNlb2YgUGQsZj1kIGluc3RhbmNlb2YgUGQ7cmV0dXJuIGV8fGY/ZSYmZj9jLmdldFZhbHVlKCk9PT1kLmdldFZhbHVlKCk6ITE6Yz09ZH1mdW5jdGlvbiBsZSgpe2Zvcih2YXIgYSxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKylhPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKTtyZXR1cm4gYX1mdW5jdGlvbiBtZShhLGIsYyxkKXtmb3IodmFyIGU9MDtlPGIoKTtlKyspe3ZhciBmPWEoYyhlKSksZz1lYihmLGQpO2lmKGcgaW5zdGFuY2VvZiBUYSl7aWYoZy50eXBlPT09ImJyZWFrIilicmVhaztpZihnLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gZ319fQpmdW5jdGlvbiBuZShhLGIsYyl7aWYodHlwZW9mIGI9PT0ic3RyaW5nIilyZXR1cm4gbWUoYSxmdW5jdGlvbigpe3JldHVybiBiLmxlbmd0aH0sZnVuY3Rpb24oZil7cmV0dXJuIGZ9LGMpO2lmKGIgaW5zdGFuY2VvZiBrYnx8YiBpbnN0YW5jZW9mIFNkfHxiIGluc3RhbmNlb2YgR2R8fGIgaW5zdGFuY2VvZiBLZCl7dmFyIGQ9Yi5GYSgpLGU9ZC5sZW5ndGg7cmV0dXJuIG1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gZX0sZnVuY3Rpb24oZil7cmV0dXJuIGRbZl19LGMpfX1mdW5jdGlvbiBvZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXtnLnNldChkLGgpO3JldHVybiBnfSxlLGYpfQpmdW5jdGlvbiBwZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXt2YXIgbD1nLndiKCk7bC5RaChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIG5lKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLmFkZChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHJlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe2cuc2V0KGQsaCk7cmV0dXJuIGd9LGUsZil9CmZ1bmN0aW9uIHRlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLlFoKGQsaCk7cmV0dXJuIGx9LGUsZil9ZnVuY3Rpb24gdWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gc2UoZnVuY3Rpb24oaCl7dmFyIGw9Zy53YigpO2wuYWRkKGQsaCk7cmV0dXJuIGx9LGUsZil9CmZ1bmN0aW9uIHNlKGEsYixjKXtpZih0eXBlb2YgYj09PSJzdHJpbmciKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RofSxmdW5jdGlvbihkKXtyZXR1cm4gYltkXX0sYyk7aWYoYiBpbnN0YW5jZW9mIEdkKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RoKCl9LGZ1bmN0aW9uKGQpe3JldHVybiBiLmdldChkKX0sYyk7dGhyb3cgY2IoRXJyb3IoIlRoZSB2YWx1ZSBpcyBub3QgaXRlcmFibGUuIikpO30KZnVuY3Rpb24gdmUoYSxiLGMsZCl7ZnVuY3Rpb24gZShxLHIpe2Zvcih2YXIgdD0wO3Q8Zi5sZW5ndGgoKTt0Kyspe3ZhciB1PWYuZ2V0KHQpO3IuYWRkKHUscS5nZXQodSkpfX12YXIgZj10aGlzLmV2YWx1YXRlKGEpO2lmKCEoZiBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiVHlwZUVycm9yOiBOb24tTGlzdCBhcmd1bWVudCBnaXZlbiB0byBGb3JMZXQgaW5zdHJ1Y3Rpb24uIik7dmFyIGc9dGhpcy5ULGg9dGhpcy5ldmFsdWF0ZShkKSxsPWcud2IoKTtmb3IoZShnLGwpO2ZiKGwsYik7KXt2YXIgbj1lYihsLGgpO2lmKG4gaW5zdGFuY2VvZiBUYSl7aWYobi50eXBlPT09ImJyZWFrIilicmVhaztpZihuLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gbn12YXIgcD1nLndiKCk7ZShsLHApO2ZiKHAsYyk7bD1wfX0KZnVuY3Rpb24gd2UoYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyksZD10aGlzLlQsZT10aGlzLmV2YWx1YXRlKGIpO2lmKCEoZSBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiRXJyb3I6IG5vbi1MaXN0IHZhbHVlIGdpdmVuIGZvciBGbiBhcmd1bWVudCBuYW1lcy4iKTtyZXR1cm4gbmV3IEtkKGEsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZj1PYS5hcHBseSgwLGFyZ3VtZW50cyksZz1kLndiKCk7Zy54YigpPT09dm9pZCAwJiZnLnVlKHRoaXMuVC54YigpKTtmb3IodmFyIGg9W10sbD0wO2w8Zi5sZW5ndGg7bCsrKXt2YXIgbj10aGlzLmV2YWx1YXRlKGZbbF0pO2hbbF09bn1mb3IodmFyIHA9ZS5nZXQoImxlbmd0aCIpLHE9MDtxPHA7cSsrKXE8aC5sZW5ndGg/Zy5hZGQoZS5nZXQocSksaFtxXSk6Zy5hZGQoZS5nZXQocSksdm9pZCAwKTtnLmFkZCgiYXJndW1lbnRzIixuZXcgR2QoaCkpO3ZhciByPWViKGcsYyk7aWYociBpbnN0YW5jZW9mIFRhKXJldHVybiByLnR5cGU9PT0KInJldHVybiI/ci5kYXRhOnJ9fSgpKX1mdW5jdGlvbiB4ZShhKXt2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9dGhpcy5UO2lmKHllJiYhYy5oYXMoYikpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKGIrIiBpcyBub3QgZGVmaW5lZC4iKTtyZXR1cm4gYy5nZXQoYil9CmZ1bmN0aW9uIHplKGEsYil7dmFyIGMsZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKTtpZihkPT09dm9pZCAwfHxkPT09bnVsbCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW5ub3QgcmVhZCBwcm9wZXJ0aWVzIG9mICIrZCsiIChyZWFkaW5nICciK2UrIicpIikpO2lmKGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkfHxkIGluc3RhbmNlb2YgR2R8fGQgaW5zdGFuY2VvZiBLZCljPWQuZ2V0KGUpO2Vsc2UgaWYodHlwZW9mIGQ9PT0ic3RyaW5nIillPT09Imxlbmd0aCI/Yz1kLmxlbmd0aDpGZChlKSYmKGM9ZFtlXSk7ZWxzZSBpZihkIGluc3RhbmNlb2YgUGQpcmV0dXJuO3JldHVybiBjfWZ1bmN0aW9uIEFlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk+dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBCZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpPj10aGlzLmV2YWx1YXRlKGIpfQpmdW5jdGlvbiBDZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO2MgaW5zdGFuY2VvZiBQZCYmKGM9Yy5nZXRWYWx1ZSgpKTtkIGluc3RhbmNlb2YgUGQmJihkPWQuZ2V0VmFsdWUoKSk7cmV0dXJuIGM9PT1kfWZ1bmN0aW9uIERlKGEsYil7cmV0dXJuIUNlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIEVlKGEsYixjKXt2YXIgZD1bXTt0aGlzLmV2YWx1YXRlKGEpP2Q9dGhpcy5ldmFsdWF0ZShiKTpjJiYoZD10aGlzLmV2YWx1YXRlKGMpKTt2YXIgZT1lYih0aGlzLlQsZCk7aWYoZSBpbnN0YW5jZW9mIFRhKXJldHVybiBlfXZhciB5ZT0hMTsKZnVuY3Rpb24gRmUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKTx0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIEdlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk8PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gSGUoKXtmb3IodmFyIGE9bmV3IEdkLGI9MDtiPGFyZ3VtZW50cy5sZW5ndGg7YisrKXt2YXIgYz10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiXSk7YS5wdXNoKGMpfXJldHVybiBhfWZ1bmN0aW9uIEllKCl7Zm9yKHZhciBhPW5ldyBrYixiPTA7Yjxhcmd1bWVudHMubGVuZ3RoLTE7Yis9Mil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKSksZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLnNldChjLGQpfXJldHVybiBhfWZ1bmN0aW9uIEplKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkldGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gS2UoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSp0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIExlKGEpe3JldHVybi10aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE1lKGEpe3JldHVybiF0aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE5lKGEsYil7cmV0dXJuIWtlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIE9lKCl7cmV0dXJuIG51bGx9ZnVuY3Rpb24gUGUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBRZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSk7dGhpcy5ldmFsdWF0ZShiKTtyZXR1cm4gY31mdW5jdGlvbiBSZShhKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKX1mdW5jdGlvbiBTZSgpe3JldHVybiBPYS5hcHBseSgwLGFyZ3VtZW50cyl9ZnVuY3Rpb24gVGUoYSl7cmV0dXJuIG5ldyBUYSgicmV0dXJuIix0aGlzLmV2YWx1YXRlKGEpKX0KZnVuY3Rpb24gVWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZihkPT09bnVsbHx8ZD09PXZvaWQgMCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW4ndCBzZXQgcHJvcGVydHkgIitlKyIgb2YgIitkKyIuIikpOyhkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBHZHx8ZCBpbnN0YW5jZW9mIGtiKSYmZC5zZXQoU3RyaW5nKGUpLGYpO3JldHVybiBmfWZ1bmN0aW9uIFZlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSktdGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gV2UoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZighQXJyYXkuaXNBcnJheShlKXx8IUFycmF5LmlzQXJyYXkoZikpdGhyb3cgRXJyb3IoIkVycm9yOiBNYWxmb3JtZWQgc3dpdGNoIGluc3RydWN0aW9uLiIpO2Zvcih2YXIgZyxoPSExLGw9MDtsPGUubGVuZ3RoO2wrKylpZihofHxkPT09dGhpcy5ldmFsdWF0ZShlW2xdKSlpZihnPXRoaXMuZXZhbHVhdGUoZltsXSksZyBpbnN0YW5jZW9mIFRhKXt2YXIgbj1nLnR5cGU7aWYobj09PSJicmVhayIpcmV0dXJuO2lmKG49PT0icmV0dXJuInx8bj09PSJjb250aW51ZSIpcmV0dXJuIGd9ZWxzZSBoPSEwO2lmKGYubGVuZ3RoPT09ZS5sZW5ndGgrMSYmKGc9dGhpcy5ldmFsdWF0ZShmW2YubGVuZ3RoLTFdKSxnIGluc3RhbmNlb2YgVGEmJihnLnR5cGU9PT0icmV0dXJuInx8Zy50eXBlPT09ImNvbnRpbnVlIikpKXJldHVybiBnfQpmdW5jdGlvbiBYZShhLGIsYyl7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk/dGhpcy5ldmFsdWF0ZShiKTp0aGlzLmV2YWx1YXRlKGMpfWZ1bmN0aW9uIFllKGEpe3ZhciBiPXRoaXMuZXZhbHVhdGUoYSk7cmV0dXJuIGIgaW5zdGFuY2VvZiBLZD8iZnVuY3Rpb24iOnR5cGVvZiBifWZ1bmN0aW9uIFplKCl7Zm9yKHZhciBhPXRoaXMuVCxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKyl7dmFyIGM9YXJndW1lbnRzW2JdO3R5cGVvZiBjIT09InN0cmluZyJ8fGEuYWRkKGMsdm9pZCAwKX19CmZ1bmN0aW9uICRlKGEsYixjLGQpe3ZhciBlPXRoaXMuZXZhbHVhdGUoZCk7aWYodGhpcy5ldmFsdWF0ZShjKSl7dmFyIGY9ZWIodGhpcy5ULGUpO2lmKGYgaW5zdGFuY2VvZiBUYSl7aWYoZi50eXBlPT09ImJyZWFrIilyZXR1cm47aWYoZi50eXBlPT09InJldHVybiIpcmV0dXJuIGZ9fWZvcig7dGhpcy5ldmFsdWF0ZShhKTspe3ZhciBnPWViKHRoaXMuVCxlKTtpZihnIGluc3RhbmNlb2YgVGEpe2lmKGcudHlwZT09PSJicmVhayIpYnJlYWs7aWYoZy50eXBlPT09InJldHVybiIpcmV0dXJuIGd9dGhpcy5ldmFsdWF0ZShiKX19ZnVuY3Rpb24gYWYoYSl7cmV0dXJufk51bWJlcih0aGlzLmV2YWx1YXRlKGEpKX1mdW5jdGlvbiBiZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk8PE51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBjZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk+Pk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX0KZnVuY3Rpb24gZGYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpPj4+TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGVmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKSZOdW1iZXIodGhpcy5ldmFsdWF0ZShiKSl9ZnVuY3Rpb24gZmYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpXk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBnZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSl8TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGhmKCl7fQpmdW5jdGlvbiBrZihhLGIsYyl7dHJ5e3ZhciBkPXRoaXMuZXZhbHVhdGUoYik7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfWNhdGNoKGgpe2lmKCEoaCBpbnN0YW5jZW9mIGJiJiZoLlNuKSl0aHJvdyBoO3ZhciBlPXRoaXMuVC53YigpO2EhPT0iIiYmKGggaW5zdGFuY2VvZiBiYiYmKGg9aC52byksZS5hZGQoYSxuZXcgUGQoaCkpKTt2YXIgZj10aGlzLmV2YWx1YXRlKGMpLGc9ZWIoZSxmKTtpZihnIGluc3RhbmNlb2YgVGEpcmV0dXJuIGd9fWZ1bmN0aW9uIGxmKGEsYil7dmFyIGMsZDt0cnl7ZD10aGlzLmV2YWx1YXRlKGEpfWNhdGNoKGYpe2lmKCEoZiBpbnN0YW5jZW9mIGJiJiZmLlNuKSl0aHJvdyBmO2M9Zn12YXIgZT10aGlzLmV2YWx1YXRlKGIpO2lmKGUgaW5zdGFuY2VvZiBUYSlyZXR1cm4gZTtpZihjKXRocm93IGM7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfTt2YXIgbmY9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IGdiO21mKHRoaXMpfTtuZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5ILnJrKGEpfTt2YXIgbWY9ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oYyxkKXt2YXIgZT1uZXcgTGQoU3RyaW5nKGMpLGQpO2UuWmEoKTt2YXIgZj1TdHJpbmcoYyk7YS5ILkguc2V0KGYsZSk7ZGIuc2V0KGYsZSl9O2IoIm1hcCIsSWUpO2IoImFuZCIsdGQpO2IoImNvbnRhaW5zIix3ZCk7YigiZXF1YWxzIix1ZCk7Yigib3IiLHZkKTtiKCJzdGFydHNXaXRoIix4ZCk7YigidmFyaWFibGUiLHlkKX07bmYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07dmFyIHBmPWZ1bmN0aW9uKCl7dGhpcy5LPSExO3RoaXMuSD1uZXcgZ2I7b2YodGhpcyk7dGhpcy5LPSEwfTtwZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gcWYodGhpcy5ILnJrKGEpKX07dmFyIHJmPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gcWYoYS5ILkpxKGIsYykpfTtwZi5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07CnZhciBvZj1mdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihjLGQpe3ZhciBlPVN0cmluZyhjKSxmPW5ldyBMZChlLGQpO2YuWmEoKTthLkguSC5zZXQoZSxmKTtkYi5zZXQoZSxmKX07YigwLFpkKTtiKDEsJGQpO2IoMixhZSk7YigzLGJlKTtiKDU2LGVmKTtiKDU3LGJmKTtiKDU4LGFmKTtiKDU5LGdmKTtiKDYwLGNmKTtiKDYxLGRmKTtiKDYyLGZmKTtiKDUzLGNlKTtiKDQsZGUpO2IoNSxlZSk7Yig2OCxrZik7Yig1MixmZSk7Yig2LGdlKTtiKDQ5LGhlKTtiKDcsSGUpO2IoOCxJZSk7Yig5LGVlKTtiKDUwLGllKTtiKDEwLGplKTtiKDEyLGtlKTtiKDEzLGxlKTtiKDY3LGxmKTtiKDUxLHdlKTtiKDQ3LG9lKTtiKDU0LHBlKTtiKDU1LHFlKTtiKDYzLHZlKTtiKDY0LHJlKTtiKDY1LHRlKTtiKDY2LHVlKTtiKDE1LHhlKTtiKDE2LHplKTtiKDE3LHplKTtiKDE4LEFlKTtiKDE5LEJlKTtiKDIwLENlKTtiKDIxLERlKTtiKDIyLEVlKTtiKDIzLEZlKTtiKDI0LEdlKTtiKDI1LEplKTtiKDI2LApLZSk7YigyNyxMZSk7YigyOCxNZSk7YigyOSxOZSk7Yig0NSxPZSk7YigzMCxQZSk7YigzMixRZSk7YigzMyxRZSk7YigzNCxSZSk7YigzNSxSZSk7Yig0NixTZSk7YigzNixUZSk7Yig0MyxVZSk7YigzNyxWZSk7YigzOCxXZSk7YigzOSxYZSk7Yig0MCxZZSk7Yig0NCxoZik7Yig0MSxaZSk7Yig0MiwkZSl9O3BmLnByb3RvdHlwZS5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkguamUoKX07cGYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07cGYucHJvdG90eXBlLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSC5zZChhKX07CmZ1bmN0aW9uIHFmKGEpe2lmKGEgaW5zdGFuY2VvZiBUYXx8YSBpbnN0YW5jZW9mIEtkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgUGR8fGE9PT1udWxsfHxhPT09dm9pZCAwfHx0eXBlb2YgYT09PSJzdHJpbmcifHx0eXBlb2YgYT09PSJudW1iZXIifHx0eXBlb2YgYT09PSJib29sZWFuIilyZXR1cm4gYX07dmFyIHNmPWZ1bmN0aW9uKGEpe3RoaXMubWVzc2FnZT1hfTtmdW5jdGlvbiB0ZihhKXthLnF2PSEwO3JldHVybiBhfTt2YXIgdWY9dGYoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9KSx2Zj10ZihmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIn0pLHdmPXRmKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn0pO2Z1bmN0aW9uIHhmKGEpe3ZhciBiPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIlthXTtyZXR1cm4gYj09PXZvaWQgMD9uZXcgc2YoIlZhbHVlICIrYSsiIGNhbiBub3QgYmUgZW5jb2RlZCBpbiB3ZWItc2FmZSBiYXNlNjQgZGljdGlvbmFyeS4iKTpifTtmdW5jdGlvbiB5ZihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiIxIjtjYXNlIDI6Y2FzZSA0OnJldHVybiIwIjtkZWZhdWx0OnJldHVybiItIn19O3ZhciB6Zj0vXlsxLTlhLXpBLVpfLV1bMS05YS1jXVsxLTlhLXZdXGQkLztmdW5jdGlvbiBBZihhLGIpe2Zvcih2YXIgYz0iIixkPSEwO2E+Nzspe3ZhciBlPWEmMzE7YT4+PTU7ZD9kPSExOmV8PTMyO2M9IiIreGYoZSkrY31hPDw9MjtkfHwoYXw9MzIpO3JldHVybiBjPSIiK3hmKGF8YikrY31mdW5jdGlvbiBCZihhLGIpe3JldHVybiBiPT09dm9pZCAwfHxiPT09MD8iIjoiIitBZihhLDEpK3hmKGIpfQpmdW5jdGlvbiBDZihhLGIpe3ZhciBjO3ZhciBkPWEuaGksZT1hLmJrO2Q9PT12b2lkIDA/Yz0iIjooZXx8KGU9MCksYz0iIitBZigxLDEpK3hmKGQ8PDJ8ZSkpO3ZhciBmPSI0IitjK0JmKDIsYS5xciksZyxoPWEuSW87Zz1oJiZ6Zi50ZXN0KGgpPyIiK0FmKDMsMikraDoiIjt2YXIgbDt2YXIgbj1hLmN0aWQ7aWYobiYmYil7dmFyIHA9QWYoNSwzKSxxPW4uc3BsaXQoIi0iKSxyPXFbMF0udG9VcHBlckNhc2UoKTtpZihyIT09IkdUTSImJnIhPT0iT1BUIilsPSIiO2Vsc2V7dmFyIHQ9cVsxXTtsPSIiK3AreGYoMSt0Lmxlbmd0aCkrKGEuTHN8fDApK3R9fWVsc2UgbD0iIjt2YXIgdT1hLmNhbm9uaWNhbElkLHY9YS5tYyx4PWEuenYseT1mK2crQmYoNCxhLkRvKStsK0JmKDYsYS5EdCkrKHU/IiIrQWYoNywzKSt4Zih1Lmxlbmd0aCkrdToiIikrKHY/IiIrQWYoOCwzKSt4Zih2Lmxlbmd0aCkrdjoiIikrKHg/IiIrQWYoOSwzKSt4Zih4Lmxlbmd0aCkreDoiIiksejt2YXIgQz1hLnpyO0M9CkM9PT12b2lkIDA/e306Qztmb3IodmFyIEQ9W10sST1tKE9iamVjdC5rZXlzKEMpKSxHPUkubmV4dCgpOyFHLmRvbmU7Rz1JLm5leHQoKSl7dmFyIE49Ry52YWx1ZTtEW051bWJlcihOKV09Q1tOXX1pZihELmxlbmd0aCl7dmFyIFM9QWYoMTAsMyksVztpZihELmxlbmd0aD09PTApVz14ZigwKTtlbHNle2Zvcih2YXIgZWE9W10samE9MCxmYT0hMSxzYT0wO3NhPEQubGVuZ3RoO3NhKyspe2ZhPSEwO3ZhciBkYT1zYSU2O0Rbc2FdJiYoamF8PTE8PGRhKTtkYT09PTUmJihlYS5wdXNoKHhmKGphKSksamE9MCxmYT0hMSl9ZmEmJmVhLnB1c2goeGYoamEpKTtXPWVhLmpvaW4oIiIpfXZhciBtYT1XO3o9IiIrUyt4ZihtYS5sZW5ndGgpK21hfWVsc2Ugej0iIjt2YXIgUGE9YS5VcyxGYT1hLm50O3JldHVybiB5K3orKFBhPyIiK0FmKDExLDMpK3hmKFBhLmxlbmd0aCkrUGE6IiIpKyhGYT8iIitBZigxMywzKSt4ZihGYS5sZW5ndGgpK0ZhOiIiKStCZigxNCxhLkV0KStCZigxNSxhLnJ2KStCZigxNiwKYS5Bdil9O2Z1bmN0aW9uIERmKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZTwxMjg/YltjKytdPWU6KGU8MjA0OD9iW2MrK109ZT4+NnwxOTI6KChlJjY0NTEyKT09NTUyOTYmJmQrMTxhLmxlbmd0aCYmKGEuY2hhckNvZGVBdChkKzEpJjY0NTEyKT09NTYzMjA/KGU9NjU1MzYrKChlJjEwMjMpPDwxMCkrKGEuY2hhckNvZGVBdCgrK2QpJjEwMjMpLGJbYysrXT1lPj4xOHwyNDAsYltjKytdPWU+PjEyJjYzfDEyOCk6YltjKytdPWU+PjEyfDIyNCxiW2MrK109ZT4+NiY2M3wxMjgpLGJbYysrXT1lJjYzfDEyOCl9cmV0dXJuIGJ9O2Z1bmN0aW9uIEVmKGEsYil7Zm9yKHZhciBjPXFiKGIpLGQ9bmV3IFVpbnQ4QXJyYXkoYy5sZW5ndGgpLGU9MDtlPGMubGVuZ3RoO2UrKylkW2VdPWMuY2hhckNvZGVBdChlKTtpZihkLmxlbmd0aCE9PTMyKXRocm93IEVycm9yKCJLZXkgaXMgbm90IDMyIGJ5dGVzLiIpO3JldHVybiBGZihhLGQpfWZ1bmN0aW9uIEZmKGEsYil7aWYoYT09PSIiKXJldHVybiIiO3ZhciBjPVpiKGEpLGQ9Yi5zbGljZSgtMiksZT1bXS5jb25jYXQodyhkKSx3KGMpKS5tYXAoZnVuY3Rpb24oZyxoKXtyZXR1cm4gZ15iW2glYi5sZW5ndGhdfSksZj1uZXcgVWludDhBcnJheShbXS5jb25jYXQodyhlKSx3KGQpKSk7cmV0dXJuIHBiKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoU3RyaW5nLHcoZikpKS5yZXBsYWNlKC9cLiskLywiIil9O3ZhciBHZj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYil7cmV0dXJue3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9fX1yZXR1cm57Y3A6YSgiY29uc2VudCIpLFprOmEoImNvbnZlcnRfY2FzZV90byIpLGFsOmEoImNvbnZlcnRfZmFsc2VfdG8iKSxibDphKCJjb252ZXJ0X251bGxfdG8iKSxlcDphKCJjb252ZXJ0X3RvX2Jvb2xlYW4iKSxhaDphKCJjb252ZXJ0X3RvX251bWJlciIpLGZsOmEoImNvbnZlcnRfdHJ1ZV90byIpLGlsOmEoImNvbnZlcnRfdW5kZWZpbmVkX3RvIiksWXQ6YSgiZGVidWdfbW9kZV9tZXRhZGF0YSIpLFliOmEoImZ1bmN0aW9uIiksUm06YSgiaW5zdGFuY2VfbmFtZSIpLE5xOmEoImxpdmVfb25seSIpLE9xOmEoIm1hbHdhcmVfZGlzYWJsZWQiKSxNRVRBREFUQTphKCJtZXRhZGF0YSIpLFJxOmEoIm9yaWdpbmFsX2FjdGl2aXR5X2lkIiksVHU6YSgib3JpZ2luYWxfdmVuZG9yX3RlbXBsYXRlX2lkIiksU3U6YSgib25jZV9vbl9sb2FkIiksUXE6YSgib25jZV9wZXJfZXZlbnQiKSwKa246YSgib25jZV9wZXJfbG9hZCIpLFZ1OmEoInByaW9yaXR5X292ZXJyaWRlIiksWXU6YSgicmVzcGVjdGVkX2NvbnNlbnRfdHlwZXMiKSx0bjphKCJzZXR1cF90YWdzIikseWo6YSgidGFnX2lkIiksRG46YSgidGVhcmRvd25fdGFncyIpLHBsOmEoImRpc2FibGVkX2luX2dvb2dsZV9tb2RlIiksRnE6YSgiZ2VuZXJhdGVkX3RhZ2dpbmdfbWV0YWRhdGEiKX19KCk7ZnVuY3Rpb24gSGYoYSxiKXt2YXIgYz17fTtjW0dmLlliXT0iX18iK2E7Zm9yKHZhciBkIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbInZ0cF8iK2RdPWJbZF0pO3JldHVybiBjfTtmdW5jdGlvbiBJZihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjLGQ7cmV0dXJuKChjPWRhdGEpPT1udWxsPzA6KGQ9Yy5ibG9iKT09bnVsbD8wOmQuaGFzT3duUHJvcGVydHkoYSkpPyEhZGF0YS5ibG9iW2FdOmJ9ZnVuY3Rpb24gRShhKXt2YXIgYjtiPWI9PT12b2lkIDA/IiI6Yjt2YXIgYyxkO3JldHVybigoYz1kYXRhKT09bnVsbD8wOihkPWMuYmxvYik9PW51bGw/MDpkLmhhc093blByb3BlcnR5KGEpKT9TdHJpbmcoZGF0YS5ibG9iW2FdKTpifWZ1bmN0aW9uIEpmKGEpe3ZhciBiLGM7cmV0dXJuKChiPWRhdGEpPT1udWxsPzA6KGM9Yi5ibG9iKT09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihkYXRhLmJsb2JbYV0pOjB9ZnVuY3Rpb24gS2YoYSl7dmFyIGI7Yj1iPT09dm9pZCAwP1tdOmI7dmFyIGMsZCxlPShjPWRhdGEpPT1udWxsP3ZvaWQgMDooZD1jLmJsb2IpPT1udWxsP3ZvaWQgMDpkW2FdO3JldHVybiBBcnJheS5pc0FycmF5KGUpP2U6Yn0KZnVuY3Rpb24gTGYoYSl7dmFyIGI7Yj1iPT09dm9pZCAwPyIiOmI7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP1N0cmluZyhjW2FdKTpifWZ1bmN0aW9uIE5mKGEsYil7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihjW2FdKTpifWZ1bmN0aW9uIE1mKGEpe3ZhciBiLGM7cmV0dXJuKGI9ZGF0YSk9PW51bGw/dm9pZCAwOihjPWIuYmxvYik9PW51bGw/dm9pZCAwOmNbYV19O3ZhciBPZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7ZD1FcnJvci5jYWxsKHRoaXMsYyk7dGhpcy5tZXNzYWdlPWQubWVzc2FnZTsic3RhY2siaW4gZCYmKHRoaXMuc3RhY2s9ZC5zdGFjayk7dGhpcy5wZXJtaXNzaW9uSWQ9YTt0aGlzLnBhcmFtZXRlcnM9Yjt0aGlzLm5hbWU9IlBlcm1pc3Npb25FcnJvciJ9O3dhKE9mLEVycm9yKTtPZi5wcm90b3R5cGUuZ2V0TWVzc2FnZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1lc3NhZ2V9O2Z1bmN0aW9uIFBmKGEsYil7aWYoQXJyYXkuaXNBcnJheShhKSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsImNvbnRleHQiLHt2YWx1ZTp7bGluZTpiWzBdfX0pO2Zvcih2YXIgYz0xO2M8YS5sZW5ndGg7YysrKVBmKGFbY10sYltjXSl9fTtmdW5jdGlvbiBRZigpe3JldHVybiBmdW5jdGlvbihhLGIpe3ZhciBjO3ZhciBkPVJmO2EgaW5zdGFuY2VvZiBiYj8oYS5IPWQsYz1hKTpjPW5ldyBiYihhLGQpO3ZhciBlPWM7YiYmZS5LLnB1c2goYik7dGhyb3cgZTt9fWZ1bmN0aW9uIFJmKGEpe2lmKCFhLmxlbmd0aClyZXR1cm4gYTthLnB1c2goe2lkOiJtYWluIixsaW5lOjB9KTtmb3IodmFyIGI9YS5sZW5ndGgtMTtiPjA7Yi0tKUFiKGFbYl0uaWQpJiZhLnNwbGljZShiKyssMSk7Zm9yKHZhciBjPWEubGVuZ3RoLTE7Yz4wO2MtLSlhW2NdLmxpbmU9YVtjLTFdLmxpbmU7YS5zcGxpY2UoMCwxKTtyZXR1cm4gYX07dmFyIFNmPVJlZ0V4cCgiW14wLTlcXC4rLV0iLCJnIiksVGY9UmVnRXhwKCJbXjAtOVxcLCstXSIsImciKSxVZj1SZWdFeHAoIlteMC05Ky1dIiwiZyIpOwpmdW5jdGlvbiBWZihhLGIpe2lmKHR5cGVvZiBhPT09Im51bWJlciIpcmV0dXJuIGE7dmFyIGM9U3RyaW5nKGEpLGQ7aWYoYj09PSJBVVRPTUFUSUMiKXt2YXIgZT0oYy5tYXRjaCgvXC4vZyl8fFtdKS5sZW5ndGgsZj0oYy5tYXRjaCgvLC9nKXx8W10pLmxlbmd0aCxnPSJOT05FIjtpZihlPjAmJmY+MCl7dmFyIGg9Yy5sYXN0SW5kZXhPZigiLiIpPmMubGFzdEluZGV4T2YoIiwiKTtoJiZlPT09MT9nPSJQRVJJT0QiOmh8fGYhPT0xfHwoZz0iQ09NTUEiKX1lbHNlIGU9PT0xP2c9KGMuc3BsaXQoIi4iKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJQRVJJT0QiOiJOT05FIjpmPT09MSYmKGc9KGMuc3BsaXQoIiwiKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJDT01NQSI6Ik5PTkUiKTtkPWd9ZWxzZSBkPWI9PT0iQ09NTUEiPyJDT01NQSI6IlBFUklPRCI7dmFyIGwsbjtkPT09IlBFUklPRCI/KGw9Ii4iLG49U2YpOmQ9PT0iQ09NTUEiPyhsPSIsIiwKbj1UZik6KGw9IiIsbj1VZik7dmFyIHA9Yy5yZXBsYWNlKG4sIiIpO2lmKGwhPT0iIiYmcC5zcGxpdChsKS5sZW5ndGg+MilyZXR1cm4gYTt2YXIgcT1wLnJlcGxhY2UoLywvZywiLiIpO2lmKHE9PT0iIilyZXR1cm4gYTt2YXIgcj1OdW1iZXIocSk7cmV0dXJuIGlzTmFOKHIpP2E6cn07dmFyIFdmPVtdLFhmPXt9O2Z1bmN0aW9uIFlmKGEpe3JldHVybiBXZlthXT09PXZvaWQgMD8hMTpXZlthXX07dmFyIFpmPWZ1bmN0aW9uKCl7dGhpcy5IPXt9fSwkZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7KGQ9YS5IKVtiXSE9bnVsbHx8KGRbYl09W10pO2EuSFtiXS5wdXNoKGZ1bmN0aW9uKCl7cmV0dXJuIGMuYXBwbHkobnVsbCx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfSl9O2Z1bmN0aW9uIGFnKGEsYixjLGQpe2lmKGEpZm9yKHZhciBlPTA7ZTxhLmxlbmd0aDtlKyspe3ZhciBmPXZvaWQgMCxnPSJBIHBvbGljeSBmdW5jdGlvbiBkZW5pZWQgdGhlIHBlcm1pc3Npb24gcmVxdWVzdCI7dHJ5e2Y9YVtlXShiLGMsZCksZys9Ii4ifWNhdGNoKGgpe2c9dHlwZW9mIGg9PT0ic3RyaW5nIj9nKygiOiAiK2gpOmggaW5zdGFuY2VvZiBFcnJvcj9nKygiOiAiK2gubWVzc2FnZSk6ZysiLiJ9aWYoIWYpdGhyb3cgbmV3IE9mKGMsZCxnKTt9fQpmdW5jdGlvbiBiZyhhLGIpe3ZhciBjPWNnKGRnLkgsYixmdW5jdGlvbigpe3JldHVybnt9fSk7dHJ5e3JldHVybiBjKGEpLCEwfWNhdGNoKGQpe3JldHVybiExfX1mdW5jdGlvbiBjZyhhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQpe2lmKGQpe3ZhciBlPWEuSFtkXSxmPWEuSC5hbGw7aWYoZXx8Zil7dmFyIGc9Yy5hcHBseSh2b2lkIDAsW2RdLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKTthZyhlLGIsZCxnKTthZyhmLGIsZCxnKX19fX07dmFyIGdnPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSz17fTt0aGlzLkg9bmV3IFpmO3ZhciBlPXt9LGY9e30sZz1jZyh0aGlzLkgsYSxmdW5jdGlvbihoKXtyZXR1cm4gaCYmZVtoXT9lW2hdLmFwcGx5KHZvaWQgMCxbaF0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpOnt9fSk7R2IoYixmdW5jdGlvbihoLGwpe2Z1bmN0aW9uIG4ocSl7dmFyIHI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKCFwW3FdKXRocm93IGVnKHEse30sIlRoZSByZXF1ZXN0ZWQgYWRkaXRpb25hbCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO2cuYXBwbHkobnVsbCxbcV0uY29uY2F0KHcocikpKX12YXIgcD17fTtHYihsLGZ1bmN0aW9uKHEscil7dmFyIHQ9ZmcocSxyLGMpO3BbcV09dC5hc3NlcnQ7ZVtxXXx8KGVbcV09dC5hYSk7dC5PbiYmIWZbcV0mJihmW3FdPXQuT24pfSk7ZC5LW2hdPWZ1bmN0aW9uKHEscil7dmFyIHQ9cFtxXTtpZighdCl0aHJvdyBlZyhxLAp7fSwiVGhlIHJlcXVlc3RlZCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO3ZhciB1PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKTt0LmFwcGx5KHZvaWQgMCx1KTtnLmFwcGx5KHZvaWQgMCx1KTt2YXIgdj1mW3FdO3YmJnYuYXBwbHkobnVsbCxbbl0uY29uY2F0KHcodS5zbGljZSgxKSkpKX19KX0saGc9ZnVuY3Rpb24oYSl7cmV0dXJuIGRnLktbYV18fGZ1bmN0aW9uKCl7fX07CmZ1bmN0aW9uIGZnKGEsYixjKXt0cnl7dmFyIGQ9Y1siX18iK2FdO2lmKCFkKXRocm93IEVycm9yKCJObyBmdW5jdGlvbiBmb3VuZCBmb3IgcGVybWlzc2lvbjogIithKyIuIik7dmFyIGU9SGYoYSxiKTtlLnZ0cF9wZXJtaXNzaW9uTmFtZT1hO2UudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcj1lZztkZWxldGUgZVtHZi5ZYl07cmV0dXJuIGQoZSl9Y2F0Y2goZil7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihnKXt0aHJvdyBuZXcgT2YoZyx7fSwiUGVybWlzc2lvbiAiK2crIiBpcyB1bmtub3duLiIpO30sYWE6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgT2YoYSx7fSwiUGVybWlzc2lvbiAiK2ErIiBpcyB1bmtub3duLiIpO319fX1mdW5jdGlvbiBlZyhhLGIsYyl7cmV0dXJuIG5ldyBPZihhLGIsYyl9O3ZhciBpZz1FKDUpLGpnPUUoMjApLGtnPUUoMSksbGc9ITE7dmFyIG1nPXt9O21nLlBvPUlmKDI5KTttZy5Lcj1JZigyOCk7ZnVuY3Rpb24gbmcoYSl7dmFyIGI9MSxjLGQsZTtpZihhKWZvcihiPTAsZD1hLmxlbmd0aC0xO2Q+PTA7ZC0tKWU9YS5jaGFyQ29kZUF0KGQpLGI9KGI8PDYmMjY4NDM1NDU1KStlKyhlPDwxNCksYz1iJjI2NjMzODMwNCxiPWMhPT0wP2JeYz4+MjE6YjtyZXR1cm4gYn07dmFyIG9nPWZ1bmN0aW9uKGEpe3RoaXMuY2FjaGU9YX07b2cucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXt2YXIgYj1uZyhhKSxjPXRoaXMuY2FjaGUuZ2V0KGIpO2lmKCFjKXJldHVybntwcm9taXNlOnZvaWQgMCxLajowfTtpZihEYXRlLm5vdygpPj1jLnRpbWVzdGFtcCs5RTUpcmV0dXJuIHRoaXMuY2FjaGUuZGVsZXRlKGIpLHtwcm9taXNlOnZvaWQgMCxLajozfTt2YXIgZD1jLnJlc29sdmVkVmFsdWU/MjoxO3JldHVybntwcm9taXNlOmMucmVzb2x2ZWRWYWx1ZT9Qcm9taXNlLnJlc29sdmUoYy5yZXNvbHZlZFZhbHVlKTpjLnByb21pc2UsS2o6ZH19O29nLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz17cHJvbWlzZTpiLHJlc29sdmVkVmFsdWU6dm9pZCAwLHRpbWVzdGFtcDpEYXRlLm5vdygpfTt0aGlzLmNhY2hlLnNldChuZyhhKSxjKTtiLnRoZW4oZnVuY3Rpb24oZCl7Yy5yZXNvbHZlZFZhbHVlPWR9KX07ZnVuY3Rpb24gcGcoYSl7c3dpdGNoKGEpe2Nhc2UgMDpicmVhaztjYXNlIDk6cmV0dXJuImU0IjtjYXNlIDY6cmV0dXJuImU1IjtjYXNlIDE0OnJldHVybiJlNiI7ZGVmYXVsdDpyZXR1cm4iZTcifX07dmFyIEY9e0Q6e1hhOiJhZF9wZXJzb25hbGl6YXRpb24iLGthOiJhZF9zdG9yYWdlIixtYToiYWRfdXNlcl9kYXRhIixyYToiYW5hbHl0aWNzX3N0b3JhZ2UiLG5jOiJyZWdpb24iLHNhOiJjb25zZW50X3VwZGF0ZWQiLFlnOiJ3YWl0X2Zvcl91cGRhdGUiLGVoOiJlbmRwb2ludF90eXBlIixxcDoiYXBwX3JlbW92ZSIscnA6ImFwcF9zdG9yZV9yZWZ1bmQiLHRwOiJhcHBfc3RvcmVfc3Vic2NyaXB0aW9uX2NhbmNlbCIsdXA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY29udmVydCIsdnA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fcmVuZXciLHdwOiJjb25zZW50X3VwZGF0ZSIseHA6ImNvbnZlcnNpb24iLHZsOiJhZGRfcGF5bWVudF9pbmZvIix3bDoiYWRkX3NoaXBwaW5nX2luZm8iLHhlOiJhZGRfdG9fY2FydCIseWU6InJlbW92ZV9mcm9tX2NhcnQiLHhsOiJ2aWV3X2NhcnQiLEFkOiJiZWdpbl9jaGVja291dCIsZXU6ImdlbmVyYXRlX2xlYWQiLHplOiJzZWxlY3RfaXRlbSIsb2M6InZpZXdfaXRlbV9saXN0IiwKUWM6InNlbGVjdF9wcm9tb3Rpb24iLHFjOiJ2aWV3X3Byb21vdGlvbiIsSWI6InB1cmNoYXNlIixBZToicmVmdW5kIixyYzoidmlld19pdGVtIix5bDoiYWRkX3RvX3dpc2hsaXN0Iix5cDoiZXhjZXB0aW9uIix6cDoiZmlyc3Rfb3BlbiIsQXA6ImZpcnN0X3Zpc2l0Iix3YToiZ3RhZy5jb25maWciLEpiOiJndGFnLmdldCIsQnA6ImluX2FwcF9wdXJjaGFzZSIsc2M6InBhZ2VfdmlldyIsQ3A6InNjcmVlbl92aWV3IixEcDoic2Vzc2lvbl9zdGFydCIsRXA6InNvdXJjZV91cGRhdGUiLEZwOiJ0aW1pbmdfY29tcGxldGUiLEdwOiJ0cmFja19zb2NpYWwiLHlmOiJ1c2VyX2VuZ2FnZW1lbnQiLEhwOiJ1c2VyX2lkX3VwZGF0ZSIsZmg6ImJyYWlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLGdoOiJicmFpZF9zdG9yYWdlX3NvdXJjZSIsQmQ6ImdjbGlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLENkOiJnY2xpZF9zdG9yYWdlX3NvdXJjZSIsU2I6ImdjbGdiIixsYjoiZ2NsaWQiLHpsOiJnY2xpZF9sZW4iLApCZToiZ2NsZ3MiLENlOiJnY2xscCIsRGU6ImdjbHN0IixtYjoiYWRzX2RhdGFfcmVkYWN0aW9uIix6ZjoiZ2FkX3NvdXJjZSIsQWY6ImdhZF9zb3VyY2Vfc3JjIixEZDoiZ2NsaWRfdXJsIixBbDoiZ2Nsc3JjIixCZjoiZ2JyYWlkIixFZToid2JyYWlkIixSYzoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uX3NpZ25hbHMiLHJpOiJhbGxvd19jdXN0b21fc2NyaXB0cyIsaGg6ImFsbG93X2Rpc3BsYXlfZmVhdHVyZXMiLHNpOiJhbGxvd19lbmhhbmNlZF9jb252ZXJzaW9ucyIsU2M6ImFsbG93X2dvb2dsZV9zaWduYWxzIix1aToiYWxsb3dfaW50ZXJlc3RfZ3JvdXBzIixJcDoiYXBwX2lkIixKcDoiYXBwX2luc3RhbGxlcl9pZCIsS3A6ImFwcF9uYW1lIixMcDoiYXBwX3ZlcnNpb24iLEVkOiJhdWlkIixmdToiYXV0b19kZXRlY3Rpb25fZW5hYmxlZCIsQmw6ImF1dG9fZXZlbnQiLENsOiJhd19yZW1hcmtldGluZyIsaWg6ImF3X3JlbWFya2V0aW5nX29ubHkiLENmOiJkaXNjb3VudCIsRGY6ImF3X2ZlZWRfY291bnRyeSIsCkVmOiJhd19mZWVkX2xhbmd1YWdlIixIYToiaXRlbXMiLEZmOiJhd19tZXJjaGFudF9pZCIsd2k6ImF3X2Jhc2tldF90eXBlIixHZjoiY2FtcGFpZ25fY29udGVudCIsSGY6ImNhbXBhaWduX2lkIixJZjoiY2FtcGFpZ25fbWVkaXVtIixKZjoiY2FtcGFpZ25fbmFtZSIsS2Y6ImNhbXBhaWduIixMZjoiY2FtcGFpZ25fc291cmNlIixNZjoiY2FtcGFpZ25fdGVybSIsS2I6ImNsaWVudF9pZCIsRGw6InJuZCIseGk6ImNvbnNlbnRfdXBkYXRlX3R5cGUiLE1wOiJjb250ZW50X2dyb3VwIixOcDoiY29udGVudF90eXBlIixGZDoiY29udmVyc2lvbl9jb29raWVfcHJlZml4Iix5aToiY29udmVyc2lvbl9pZCIsdWM6ImNvbnZlcnNpb25fbGlua2VyIixIZDoiY29udmVyc2lvbl9saW5rZXJfZGlzYWJsZWQiLEZlOiJjb252ZXJzaW9uX2FwaSIsemk6Il8mcmNiIixqaDoiY29va2llX2RlcHJlY2F0aW9uIixMYjoiY29va2llX2RvbWFpbiIsQ2I6ImNvb2tpZV9leHBpcmVzIixUYjoiY29va2llX2ZsYWdzIiwKSWQ6ImNvb2tpZV9uYW1lIix2YzoiY29va2llX3BhdGgiLG5iOiJjb29raWVfcHJlZml4IixKZDoiY29va2llX3VwZGF0ZSIsVGM6ImNvdW50cnkiLGViOiJjdXJyZW5jeSIsR2U6ImN1c3RvbWVyX2xpZmV0aW1lX3ZhbHVlIixraDoiY3VzdG9tZXJfdHlwZSIsSGU6ImN1c3RvbV9tYXAiLEFpOiJnY2xkY19saW5rX2RlY29yYXRpb25fc291cmNlIixCaToiZ2NsZGNfc3RvcmFnZV9zb3VyY2UiLE5mOiJnY2xkYyIsS2Q6ImRjbGlkIixFbDoiZGVidWdfbW9kZSIsT2E6ImRldmVsb3Blcl9pZCIsT3A6ImRpc2FibGVfbWVyY2hhbnRfcmVwb3J0ZWRfcHVyY2hhc2VzIixVYzoiZGNfY3VzdG9tX3BhcmFtcyIsUHA6ImRjX25hdHVyYWxfc2VhcmNoIixRcDoiZHluYW1pY19ldmVudF9zZXR0aW5ncyIsRmw6ImFmZmlsaWF0aW9uIixtaDoiY2hlY2tvdXRfb3B0aW9uIixDaToiY2hlY2tvdXRfc3RlcCIsR2w6ImNvdXBvbiIsT2Y6Iml0ZW1fbGlzdF9uYW1lIixEaToibGlzdF9uYW1lIixScDoicHJvbW90aW9ucyIsCkxkOiJzaGlwcGluZyIsSGw6InRheCIsbmg6ImVuZ2FnZW1lbnRfdGltZV9tc2VjIixvaDoiZW5oYW5jZWRfY2xpZW50X2lkIixTcDoiZW5oYW5jZWRfY29udmVyc2lvbnMiLGd1OiJlbmhhbmNlZF9jb252ZXJzaW9uc19hdXRvbWF0aWNfc2V0dGluZ3MiLEllOiJlc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZSIsUGY6ImV2ZW50X2NhbGxiYWNrIixUcDoiZXZlbnRfY2F0ZWdvcnkiLFZjOiJldmVudF9kZXZlbG9wZXJfaWRfc3RyaW5nIixNZDoiZXZlbnRfaWQiLEVpOiJfZXZlbnRfam9pbl9pZCIsVXA6ImV2ZW50X2xhYmVsIixVYjoiZXZlbnQiLElsOiJfJmFlIixGaToiZXZlbnRfc2V0dGluZ3MiLHBoOiJldmVudF90aW1lb3V0IixWcDoiZGVzY3JpcHRpb24iLFdwOiJmYXRhbCIsWHA6ImV4cGVyaW1lbnRzIixOZDoiZXh0X2NsaWVudF9pZCIsR2k6ImZpcmViYXNlX2lkIixRZjoiZmlyc3RfcGFydHlfY29sbGVjdGlvbiIsUmY6Il94XzIwIixWYjoiX3hfMTkiLFlwOiJmbGlnaHRfZXJyb3JfY29kZSIsClpwOiJmbGlnaHRfZXJyb3JfbWVzc2FnZSIsSGk6ImZsX2FjdGl2aXR5X2NhdGVnb3J5IixJaToiZmxfYWN0aXZpdHlfZ3JvdXAiLHFoOiJmbF9hZHZlcnRpc2VyX2lkIixKaToibWF0Y2hfaWQiLEpsOiJmbF9yYW5kb21fbnVtYmVyIixLbDoidHJhbiIsTGw6InUiLHJoOiJnYWNfZ2NsaWQiLEplOiJnYWNfd2JyYWlkIixNbDoiZ2FjX3dicmFpZF9tdWx0aXBsZV9jb252ZXJzaW9ucyIsYXE6ImdhX3Jlc3RyaWN0X2RvbWFpbiIsTmw6ImdhX3RlbXBfY2xpZW50X2lkIixicToiZ2FfdGVtcF9lY2lkIixLZToiZ2Rwcl9hcHBsaWVzIixzaDoiX2d0X21ldGFkYXRhIixPbDoiZ2VvX2dyYW51bGFyaXR5IixTZjoidmFsdWVfY2FsbGJhY2siLFRmOiJ2YWx1ZV9rZXkiLFRhOiJnb29nbGVfYW5hbHlzaXNfcGFyYW1zIixMZToiX2dvb2dsZV9uZyIsY3E6Il9vbm8iLFVmOiJnb29nbGVfc2lnbmFscyIsZnE6Imdvb2dsZV90bGQiLHRoOiJncHBfc2lkIix1aDoiZ3BwX3N0cmluZyIsT2Q6Imdyb3VwcyIsClBsOiJnc2FfZXhwZXJpbWVudF9pZCIsVmY6Imd0YWdfZXZlbnRfZmVhdHVyZV91c2FnZSIsUWw6Imd0bV91cCIsTWU6ImlmcmFtZV9zdGF0ZSIsV2Y6Imlnbm9yZV9yZWZlcnJlciIsUmw6ImludGVybmFsX3RyYWZmaWNfcmVzdWx0cyIsU2w6Il9pc19mcG0iLFljOiJpc19sZWdhY3lfY29udmVydGVkIixaYzoiaXNfbGVnYWN5X2xvYWRlZCIsS2k6ImlzX3Bhc3N0aHJvdWdoIixQZDoiX2xwcyIsdGI6Imxhbmd1YWdlIixMaToibGVnYWN5X2RldmVsb3Blcl9pZF9zdHJpbmciLERiOiJsaW5rZXIiLFhmOiJhY2NlcHRfaW5jb21pbmciLHdjOiJkZWNvcmF0ZV9mb3JtcyIsQWE6ImRvbWFpbnMiLGFkOiJ1cmxfcG9zaXRpb24iLFFkOiJtZXJjaGFudF9mZWVkX2xhYmVsIixSZDoibWVyY2hhbnRfZmVlZF9sYW5ndWFnZSIsU2Q6Im1lcmNoYW50X2lkIixUbDoibWV0aG9kIixncToibmFtZSIsVWw6Im5hdmlnYXRpb25fdHlwZSIsTmU6Im5ld19jdXN0b21lciIsTWk6Im5vbl9pbnRlcmFjdGlvbiIsCmhxOiJvcHRpbWl6ZV9pZCIsVmw6InBhZ2VfaG9zdG5hbWUiLFlmOiJwYWdlX3BhdGgiLFVhOiJwYWdlX3JlZmVycmVyIixNYjoicGFnZV90aXRsZSIsaXE6InBhc3NlbmdlcnMiLFdsOiJwaG9uZV9jb252ZXJzaW9uX2NhbGxiYWNrIixqcToicGhvbmVfY29udmVyc2lvbl9jb3VudHJ5X2NvZGUiLFhsOiJwaG9uZV9jb252ZXJzaW9uX2Nzc19jbGFzcyIsa3E6InBob25lX2NvbnZlcnNpb25faWRzIixZbDoicGhvbmVfY29udmVyc2lvbl9udW1iZXIiLFpsOiJwaG9uZV9jb252ZXJzaW9uX29wdGlvbnMiLGxxOiJfcGxhdGludW1fcmVxdWVzdF9zdGF0dXMiLG1xOiJfcHJvdGVjdGVkX2F1ZGllbmNlX2VuYWJsZWQiLHdoOiJxdWFudGl0eSIseGg6InJlZGFjdF9kZXZpY2VfaW5mbyIsYW06InJlZmVycmFsX2V4Y2x1c2lvbl9kZWZpbml0aW9uIixodToiX3JlcXVlc3Rfc3RhcnRfdGltZSIsV2I6InJlc3RyaWN0ZWRfZGF0YV9wcm9jZXNzaW5nIixucToicmV0b2tlbiIsb3E6InNhbXBsZV9yYXRlIiwKTmk6InNjcmVlbl9uYW1lIixiZDoic2NyZWVuX3Jlc29sdXRpb24iLGJtOiJfc2NyaXB0X3NvdXJjZSIscHE6InNlYXJjaF90ZXJtIixUZDoic2VuZF9wYWdlX3ZpZXciLFhiOiJzZW5kX3RvIixPaToic2VydmVyX2NvbnRhaW5lcl8zcF9lbnJpY2htZW50IixkZDoic2VydmVyX2NvbnRhaW5lcl91cmwiLHFxOiJzZXNzaW9uX2F0dHJpYnV0ZXNfZW5jb2RlZCIseWg6InNlc3Npb25fZHVyYXRpb24iLHpoOiJzZXNzaW9uX2VuZ2FnZWQiLFBpOiJzZXNzaW9uX2VuZ2FnZWRfdGltZSIseGM6InNlc3Npb25faWQiLEFoOiJzZXNzaW9uX251bWJlciIsWmY6Il9zaGFyZWRfdXNlcl9pZCIsVWQ6ImRlbGl2ZXJ5X3Bvc3RhbF9jb2RlIixpdToiX3RhZ19maXJpbmdfZGVsYXkiLGp1OiJfdGFnX2ZpcmluZ190aW1lIixrdToidGVtcG9yYXJ5X2NsaWVudF9pZCIsUWk6InRlc3Rvbmx5IixycToiX3RpbWV6b25lIixQZToidG9wbW9zdF91cmwiLFFlOiJ0cmFja2luZ19pZCIsUmk6InRyYWZmaWNfdHlwZSIsClBhOiJ0cmFuc2FjdGlvbl9pZCIsZG06InRyYW5zYWN0aW9uX2lkX3NvdXJjZSIseWM6InRyYW5zcG9ydF91cmwiLHNxOiJ0cmlwX3R5cGUiLFZkOiJ1cGRhdGUiLHpjOiJ1cmxfcGFzc3Rocm91Z2giLGZtOiJ1cHRncyIsY2c6Il91c2VyX2FnZW50X2FyY2hpdGVjdHVyZSIsZGc6Il91c2VyX2FnZW50X2JpdG5lc3MiLGVnOiJfdXNlcl9hZ2VudF9mdWxsX3ZlcnNpb25fbGlzdCIsZmc6Il91c2VyX2FnZW50X21vYmlsZSIsZ2c6Il91c2VyX2FnZW50X21vZGVsIixoZzoiX3VzZXJfYWdlbnRfcGxhdGZvcm0iLGlnOiJfdXNlcl9hZ2VudF9wbGF0Zm9ybV92ZXJzaW9uIixqZzoiX3VzZXJfYWdlbnRfd293NjQiLEFjOiJ1c2VyX2RhdGEiLGdtOiJ1c2VyX2RhdGFfYXV0b19sYXRlbmN5IixobToidXNlcl9kYXRhX2F1dG9fbWV0YSIsaW06InVzZXJfZGF0YV9hdXRvX211bHRpIixqbToidXNlcl9kYXRhX2F1dG9fc2VsZWN0b3JzIixrbToidXNlcl9kYXRhX2F1dG9fc3RhdHVzIixCYzoidXNlcl9kYXRhX21vZGUiLApsbToidXNlcl9kYXRhX3NldHRpbmdzIixmYjoidXNlcl9pZCIsV2Q6InVzZXJfcHJvcGVydGllcyIsb206Il91c2VyX3JlZ2lvbiIsa2c6InVzX3ByaXZhY3lfc3RyaW5nIixRYToidmFsdWUiLHFtOiJ3YnJhaWRfbXVsdGlwbGVfY29udmVyc2lvbnMiLGVkOiJfZnBtX3BhcmFtZXRlcnMiLFdpOiJfaG9zdF9uYW1lIixWbToiX2luX3BhZ2VfY29tbWFuZCIsWWk6Il9pcF9vdmVycmlkZSIsWm06Il9pc19wYXNzdGhyb3VnaF9jaWQiLEpoOiJfbWVhc3VyZW1lbnRfdHlwZSIsZGU6Im5vbl9wZXJzb25hbGl6ZWRfYWRzIixvajoiX3NzdF9wYXJhbWV0ZXJzIixZcToic2d0bV9nZW9fdXNlcl9jb3VudHJ5IixHZDoiY29udmVyc2lvbl9sYWJlbCIsemE6InBhZ2VfbG9jYXRpb24iLFdjOiJfZXh0cmFjdGVkX2RhdGEiLFhjOiJnbG9iYWxfZGV2ZWxvcGVyX2lkX3N0cmluZyIsT2U6InRjX3ByaXZhY3lfc3RyaW5nIn19O3ZhciBIPXtKOntTbzoiYWJvcnRfd2l0aG91dF9mYWlsIixraToiYWNjZXB0X2J5X2RlZmF1bHQiLEJrOiJhZGRfdGFnX3RpbWluZyIsRGs6ImFkc19jb25zZW50X2dyYW50ZWQiLHZkOiJhZHNfZXZlbnRfcGFnZV92aWV3Iix3ZDoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uIixRdDoiYXV0b19ldmVudCIsS2s6ImJhdGNoX29uX25hdmlnYXRpb24iLFhnOiJiaXNjb3R0aV9qb2luX2lkIixQazoiY2xpZW50X2lkX3NvdXJjZSIsdWY6ImNvbnNlbnRfZXZlbnRfaWQiLHZmOiJjb25zZW50X3ByaW9yaXR5X2lkIixTdDoiY29uc2VudF9zdGF0ZSIsc2E6ImNvbnNlbnRfdXBkYXRlZCIsd2Y6ImNvbnZlcnNpb25fbGlua2VyX2VuYWJsZWQiLFR0OiJjb252ZXJzaW9uX21hcmtpbmdfY2FsbGVkIixHYToiY29va2llX29wdGlvbnMiLG9sOiJkY19yYW5kb20iLFp0OiJkZWR1cGVfaWQiLFBjOiJlbV9ldmVudCIsYnU6ImVuZHBvaW50X2Zvcl9kZWJ1ZyIsdGw6ImVuaGFuY2VkX2NsaWVudF9pZF9zb3VyY2UiLApwcDoiZW5oYW5jZWRfbWF0Y2hfcmVzdWx0IixybToiZXVpZF9sb2dnZWRfaW5fc3RhdGUiLGxnOiJldWlkX21vZGVfZW5hYmxlZCIsdHE6ImV2ZW50X3Byb3ZlbmFuY2UiLG11OiJldmVudF9zb3VyY2UiLEViOiJldmVudF9zdGFydF90aW1lc3RhbXBfbXMiLHdtOiJldmVudF91c2FnZSIsQ2g6ImV4dHJhX3RhZ19leHBlcmltZW50X2lkcyIscHU6ImFkZF9wYXJhbWV0ZXIiLFVpOiJjb3VudGluZ19tZXRob2QiLERoOiJzZW5kX2FzX2lmcmFtZSIscXU6InBhcmFtZXRlcl9vcmRlciIsRWg6InBhcnNlZF90YXJnZXQiLHN1OiJmb3JtX2V2ZW50X2NhbmNlbGVkIixBcToiZ2E0X2NvbGxlY3Rpb25fc3ViZG9tYWluIixWaToiZ2E0X3JlcXVlc3RfZmxhZ3MiLE5tOiJnYnJhaWRfY29va2llX21hcmtlZCIsUW06Imd0bV9leHRyYWN0ZWRfZGF0YSIsQ2M6ImhhbmRsZV9pbnRlcm5hbGx5Iix1dToiaGFzX2dhX2NvbnZlcnNpb25fY29uc2VudHMiLGRhOiJoaXRfdHlwZSIsRGM6ImhpdF90eXBlX292ZXJyaWRlIiwKSHE6Imlnbm9yZV9kdXBlX2NvbmZpZyIsT3U6ImlzX2NvbmZpZ19jb21tYW5kIixHaDoiaXNfY29uc2VudF91cGRhdGUiLG1nOiJpc19jb252ZXJzaW9uIixXbToiaXNfZWNvbW1lcmNlIixYbToiaXNfZWNfY21fc3BsaXQiLGFlOiJpc19leHRlcm5hbF9ldmVudCIsbmc6ImlzX2ZpcnN0X3Zpc2l0IixZbToiaXNfZmlyc3RfdmlzaXRfY29udmVyc2lvbiIsWmk6ImlzX2ZsX2ZhbGxiYWNrX2NvbnZlcnNpb25fZmxvd19hbGxvd2VkIixmZDoiaXNfZnBtX2VuY3J5cHRpb24iLGFqOiJpc19mcG1fc3BsaXQiLG9iOiJpc19nY3BfYnJvd3NlciIsYmo6ImlzX2dvb2dsZV9tZWFzdXJlbWVudF9hbGxvd2VkIixjajoiaXNfZ29vZ2xlX3NpZ25hbHNfZW5hYmxlZCIsYmU6ImlzX21lcmNoYW50X2NlbnRlciIsSGg6ImlzX25ld190b19zaXRlIixFYzoiaXNfcGVyc29uYWxpemF0aW9uIixkajoiaXNfc2VydmVyX3NpZGVfZGVzdGluYXRpb24iLFRlOiJpc19zZXNzaW9uX3N0YXJ0IixibjoiaXNfc2Vzc2lvbl9zdGFydF9jb252ZXJzaW9uIiwKUHU6ImlzX3NndG1fZ2FfYWRzX2NvbnZlcnNpb25fc3R1ZHlfY29udHJvbF9ncm91cCIsUXU6ImlzX3NndG1fcHJlaGl0IixkbjoiaXNfc2d0bV9zZXJ2aWNlX3dvcmtlciIsSWg6ImlzX3NwbGl0X2NvbnZlcnNpb24iLElxOiJpc19zeW4iLEZjOiJpc190ZXN0X2V2ZW50IixvZzoiam9pbl9pZCIsZWo6ImpvaW5fZWxhcHNlZCIscGc6ImpvaW5fdGltZXJfc2VjIixnbjoibG9jYWxfc3RvcmFnZV9hd19jb252ZXJzaW9uX2NvdW50ZXJzIixXZToidHVubmVsX3VwZGF0ZWQiLFV1OiJwcmVoaXRfZm9yX3JldHJ5IixXdToicHJvbWlzZXMiLFh1OiJyZWNvcmRfYXdfbGF0ZW5jeSIsWGU6InJlZGFjdF9hZHNfZGF0YSIsWWU6InJlZGFjdF9jbGlja19pZHMiLHBuOiJyZW1hcmtldGluZ19vbmx5Iixsajoic2VuZF9jY21fcGFyYWxsZWxfcGluZyIsaGQ6InNlbmRfZG91YmxlY2xpY2tfam9pbiIsTWg6InNlbmRfZnBtX2dlb19qb2luIixOaDoic2VuZF9mcG1fZ29vZ2xlX2pvaW4iLFp1OiJzZW5kX2NjbV9wYXJhbGxlbF90ZXN0X3BpbmciLApybjoic2VuZF9nb29nbGVfbWVhc3VyZW1lbnQiLHJnOiJzZW5kX3RsZF9qb2luIixzZzoic2VuZF90b19kZXN0aW5hdGlvbnMiLG1qOiJzZW5kX3RvX3RhcmdldHMiLHNuOiJzZW5kX3VzZXJfZGF0YV9oaXQiLHBqOiJzZXJ2aWNlX3dvcmtlcl9jb250ZXh0IixOYjoic291cmNlX2Nhbm9uaWNhbF9pZCIsSmE6InNwZWN1bGF0aXZlIix5bjoic3BlY3VsYXRpdmVfaW5fbWVzc2FnZSIsQW46InN1cHByZXNzX3NjcmlwdF9sb2FkIixCbjoic3luX29yX21vZCIsemo6InRyYW5zaWVudF9lY3NpZCIsdGc6InRyYW5zbWlzc2lvbl90eXBlIixZYToidXNlcl9kYXRhIixndjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljIixodjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljX2dldHRlciIsR246InVzZXJfZGF0YV9mcm9tX2NvZGUiLGlyOiJ1c2VyX2RhdGFfZnJvbV9tYW51YWwiLGp2OiJ1c2VyX2RhdGFfbW9kZSIsdWc6InVzZXJfaWRfdXBkYXRlZCJ9fTt2YXIgSj17VTp7a3A6MSxtcDoyLEVuOjMsbm46NCxxbDo1LHJsOjYsRXE6NyxucDo4LERxOjksanA6MTAsaHA6MTEseG46MTIsdm46MTMsTms6MTQsVW86MTUsV286MTYsaG46MTcsc2w6MTgsZm46MTksbHA6MjAsUHE6MjEsYXA6MjIsVm86MjMsWG86MjQsbmw6MjUsTGs6MjYsZXI6MjcsSm06MjgsVW06MjksVG06MzAsU206MzEsTW06MzIsS206MzMsTG06MzQsR206MzUsRm06MzYsSG06MzcsSW06MzgsQnE6MzksQ3E6NDAsVXE6NDF9fTtKLlVbSi5VLmtwXT0iQ1JFQVRFX0VWRU5UX1NPVVJDRSI7Si5VW0ouVS5tcF09IkVESVRfRVZFTlQiO0ouVVtKLlUuRW5dPSJUUkFGRklDX1RZUEUiO0ouVVtKLlUubm5dPSJSRUZFUlJBTF9FWENMVVNJT04iO0ouVVtKLlUucWxdPSJFQ09NTUVSQ0VfRlJPTV9HVE1fVEFHIjtKLlVbSi5VLnJsXT0iRUNPTU1FUkNFX0ZST01fR1RNX1VBX1NDSEVNQSI7Si5VW0ouVS5FcV09IkdBX1NFTkQiO0ouVVtKLlUubnBdPSJFTV9GT1JNIjsKSi5VW0ouVS5EcV09IkdBX0dBTV9MSU5LIjtKLlVbSi5VLmpwXT0iQ1JFQVRFX0VWRU5UX0FVVE9fUEFHRV9QQVRIIjtKLlVbSi5VLmhwXT0iQ1JFQVRFRF9FVkVOVCI7Si5VW0ouVS54bl09IlNJREVMT0FERUQiO0ouVVtKLlUudm5dPSJTR1RNX0xFR0FDWV9DT05GSUdVUkFUSU9OIjtKLlVbSi5VLk5rXT0iQ0NEX0VNX0VWRU5UIjtKLlVbSi5VLlVvXT0iQVVUT19SRURBQ1RfRU1BSUwiO0ouVVtKLlUuV29dPSJBVVRPX1JFREFDVF9RVUVSWV9QQVJBTSI7Si5VW0ouVS5obl09Ik1VTFRJUExFX1BBR0VWSUVXX0ZST01fQ09ORklHIjtKLlVbSi5VLnNsXT0iRU1fRVZFTlRfU0VOVF9CRUZPUkVfQ09ORklHIjtKLlVbSi5VLmZuXT0iTE9BREVEX1ZJQV9DU1RfT1JfU0lERUxPQURJTkciO0ouVVtKLlUubHBdPSJERUNPREVEX1BBUkFNX01BVENIIjtKLlVbSi5VLlBxXT0iTk9OX0RFQ09ERURfUEFSQU1fTUFUQ0giO0ouVVtKLlUuYXBdPSJDQ0RfRVZFTlRfU0dUTSI7CkouVVtKLlUuVm9dPSJBVVRPX1JFREFDVF9FTUFJTF9TR1RNIjtKLlVbSi5VLlhvXT0iQVVUT19SRURBQ1RfUVVFUllfUEFSQU1fU0dUTSI7Si5VW0ouVS5ubF09IkRBSUxZX0xJTUlUX1JFQUNIRUQiO0ouVVtKLlUuTGtdPSJCVVJTVF9MSU1JVF9SRUFDSEVEIjtKLlVbSi5VLmVyXT0iU0hBUkVEX1VTRVJfSURfU0VUX0FGVEVSX1JFUVVFU1QiO0ouVVtKLlUuSm1dPSJHQTRfTVVMVElQTEVfU0VTU0lPTl9DT09LSUVTIjtKLlVbSi5VLlVtXT0iSU5WQUxJRF9HQTRfU0VTU0lPTl9DT1VOVCI7Si5VW0ouVS5UbV09IklOVkFMSURfR0E0X0xBU1RfRVZFTlRfVElNRVNUQU1QIjtKLlVbSi5VLlNtXT0iSU5WQUxJRF9HQTRfSk9JTl9USU1FUiI7Si5VW0ouVS5NbV09IkdBNF9TVEFMRV9TRVNTSU9OX0NPT0tJRV9TRUxFQ1RFRCI7Si5VW0ouVS5LbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzFfUkVBRCI7Si5VW0ouVS5MbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzJfUkVBRCI7CkouVVtKLlUuR21dPSJHQTRfRExfUEFSQU1fUkVDT1ZFUllfQVZBSUxBQkxFIjtKLlVbSi5VLkZtXT0iR0E0X0RMX1BBUkFNX1JFQ09WRVJZX0FQUExJRUQiO0ouVVtKLlUuSG1dPSJHQTRfR09PR0xFX01FQVNVUkVNRU5UX0FMTE9XRUQiO0ouVVtKLlUuSW1dPSJHQTRfR09PR0xFX1NJR05BTFNfRU5BQkxFRCI7Si5VW0ouVS5CcV09IkdBNF9GQUxMQkFDS19SRVFVRVNUIjtKLlVbSi5VLkNxXT0iR0FfQURTX0xJTktfQkVGT1JFX0NPTlZFUlNJT05fTUFSS0lORyI7Si5VW0ouVS5VcV09IlBMQVRJTlVNX0VMSUdJQkxFIjt2YXIgeGc9e30seWc9KHhnLnVhYT0hMCx4Zy51YWI9ITAseGcudWFmdmw9ITAseGcudWFtYj0hMCx4Zy51YW09ITAseGcudWFwPSEwLHhnLnVhcHY9ITAseGcudWF3PSEwLHhnKTsKdmFyIEVnPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWEsZT1iW2NdO2lmKCFDZy5leGVjKGUpKXRocm93IEVycm9yKCJJbnZhbGlkIGtleSB3aWxkY2FyZCIpO3ZhciBmPWUuaW5kZXhPZigiLioiKSxnPWYhPT0tMSYmZj09PWUubGVuZ3RoLTIsaD1nP2Uuc2xpY2UoMCxlLmxlbmd0aC0yKTplLGw7YTppZihkLmxlbmd0aD09PTApbD0hMTtlbHNle2Zvcih2YXIgbj1kLnNwbGl0KCIuIikscD0wO3A8bi5sZW5ndGg7cCsrKWlmKCFEZy5leGVjKG5bcF0pKXtsPSExO2JyZWFrIGF9bD0hMH1pZighbHx8aC5sZW5ndGg+ZC5sZW5ndGh8fCFnJiZkLmxlbmd0aCE9PWUubGVuZ3RoPzA6Zz9TYihkLGgpJiYoZD09PWh8fGQuY2hhckF0KGgubGVuZ3RoKT09PSIuIik6ZD09PWgpcmV0dXJuITB9cmV0dXJuITF9LERnPS9eW2EteiRfXVtcdy0kXSokL2ksQ2c9L14oPzpbYS16XyRdW2Etei1fJDAtOV0qXC4pKlthLXpfJF1bYS16LV8kMC05XSooPzpcLlwqKT8kL2k7CnZhciBGZz1bIm1hdGNoZXMiLCJ3ZWJraXRNYXRjaGVzU2VsZWN0b3IiLCJtb3pNYXRjaGVzU2VsZWN0b3IiLCJtc01hdGNoZXNTZWxlY3RvciIsIm9NYXRjaGVzU2VsZWN0b3IiXTtmdW5jdGlvbiBHZyhhLGIpe2lmKCFhKXJldHVybiExO3RyeXtmb3IodmFyIGM9MDtjPEZnLmxlbmd0aDtjKyspe3ZhciBkPUZnW2NdO2lmKGFbZF0hPW51bGwpcmV0dXJuIGFbZF0oYil9fWNhdGNoKGUpe31yZXR1cm4hMX1mdW5jdGlvbiBIZyhhLGIpe3ZhciBjPVN0cmluZyhhKSxkPVN0cmluZyhiKSxlPWMubGVuZ3RoLWQubGVuZ3RoO3JldHVybiBlPj0wJiZjLmluZGV4T2YoZCxlKT09PWV9ZnVuY3Rpb24gSWcoYSxiKXtyZXR1cm4gU3RyaW5nKGEpLnNwbGl0KCIsIikuaW5kZXhPZihTdHJpbmcoYikpPj0wfQpmdW5jdGlvbiBKZyhhLGIsYyxkKXt2YXIgZT1jPyJpIjp2b2lkIDA7dHJ5e3ZhciBmPVN0cmluZyhiKStTdHJpbmcoZSksZz1kPT1udWxsP3ZvaWQgMDpkLmdldChmKTtnfHwoZz1uZXcgUmVnRXhwKGIsZSksZD09bnVsbHx8ZC5zZXQoZixnKSk7cmV0dXJuIGcudGVzdChhKX1jYXRjaChoKXtyZXR1cm4hMX19ZnVuY3Rpb24gS2coYSxiKXtyZXR1cm4gU3RyaW5nKGEpLmluZGV4T2YoU3RyaW5nKGIpKT49MH1mdW5jdGlvbiBMZyhhLGIpe3JldHVybiBTdHJpbmcoYSk9PT1TdHJpbmcoYil9ZnVuY3Rpb24gTWcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPj1OdW1iZXIoYil9ZnVuY3Rpb24gTmcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPD1OdW1iZXIoYil9ZnVuY3Rpb24gT2coYSxiKXtyZXR1cm4gTnVtYmVyKGEpPk51bWJlcihiKX1mdW5jdGlvbiBQZyhhLGIpe3JldHVybiBOdW1iZXIoYSk8TnVtYmVyKGIpfQpmdW5jdGlvbiBRZyhhLGIpe3JldHVybiBTYihTdHJpbmcoYSksU3RyaW5nKGIpKX07CnZhciBSZz1mdW5jdGlvbihhLGIpe3JldHVybiBhLmxlbmd0aCYmYi5sZW5ndGgmJmEubGFzdEluZGV4T2YoYik9PT1hLmxlbmd0aC1iLmxlbmd0aH0sU2c9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmNoYXJBdChiLmxlbmd0aC0xKT09PSIqInx8Yj09PSIvInx8Yj09PSIvKiI7UmcoYiwiLyoiKSYmKGI9Yi5zbGljZSgwLC0yKSk7UmcoYiwiPyIpJiYoYj1iLnNsaWNlKDAsLTEpKTt2YXIgZD1iLnNwbGl0KCIqIik7aWYoIWMmJmQubGVuZ3RoPT09MSlyZXR1cm4gYT09PWRbMF07Zm9yKHZhciBlPS0xLGY9MDtmPGQubGVuZ3RoO2YrKyl7dmFyIGc9ZFtmXTtpZihnKXtlPWEuaW5kZXhPZihnLGUpO2lmKGU9PT0tMXx8Zj09PTAmJmUhPT0wKXJldHVybiExO2UrPWcubGVuZ3RofX1pZihjfHxlPT09YS5sZW5ndGgpcmV0dXJuITA7dmFyIGg9ZFtkLmxlbmd0aC0xXTtyZXR1cm4gYS5sYXN0SW5kZXhPZihoKT09PWEubGVuZ3RoLWgubGVuZ3RofSxUZz1mdW5jdGlvbihhKXtyZXR1cm4gYS5wcm90b2NvbD09PQoiaHR0cHM6IiYmKCFhLnBvcnR8fGEucG9ydD09PSI0NDMiKX0sV2c9ZnVuY3Rpb24oYSxiKXt2YXIgYztpZighKGM9IVRnKGEpKSl7dmFyIGQ7YTp7dmFyIGU9YS5ob3N0bmFtZS5zcGxpdCgiLiIpO2lmKGUubGVuZ3RoPDIpZD0hMTtlbHNle2Zvcih2YXIgZj0wO2Y8ZS5sZW5ndGg7ZisrKWlmKCFVZy5leGVjKGVbZl0pKXtkPSExO2JyZWFrIGF9ZD0hMH19Yz0hZH1pZihjKXJldHVybiExO2Zvcih2YXIgZz0wO2c8Yi5sZW5ndGg7ZysrKXt2YXIgaDt2YXIgbD1hLG49YltnXTtpZighVmcuZXhlYyhuKSl0aHJvdyBFcnJvcigiSW52YWxpZCBXaWxkY2FyZCIpO3ZhciBwPW4uc2xpY2UoOCkscT1wLnNsaWNlKDAscC5pbmRleE9mKCIvIikpLHI7dmFyIHQ9bC5ob3N0bmFtZSx1PXE7aWYoU2IodSwiKi4iKSl7dT11LnNsaWNlKDIpO3ZhciB2PXQudG9Mb3dlckNhc2UoKS5pbmRleE9mKHUudG9Mb3dlckNhc2UoKSk7cj12PT09LTE/ITE6dC5sZW5ndGg9PT11Lmxlbmd0aD8hMDp0Lmxlbmd0aCE9PQp1Lmxlbmd0aCt2PyExOnRbdi0xXT09PSIuIn1lbHNlIHI9dC50b0xvd2VyQ2FzZSgpPT09dS50b0xvd2VyQ2FzZSgpO2lmKHIpe3ZhciB4PXAuc2xpY2UocC5pbmRleE9mKCIvIikpO2g9U2cobC5wYXRobmFtZStsLnNlYXJjaCx4KT8hMDohMX1lbHNlIGg9ITE7aWYoaClyZXR1cm4hMH1yZXR1cm4hMX0sVWc9L15bYS16MC05LV0rJC9pLFZnPS9eaHR0cHM6XC9cLyhcKlwufCkoKD86W2EtejAtOS1dK1wuKStbYS16MC05LV0rKVwvKC4qKSQvaTtmdW5jdGlvbiBYZyhhKXt2YXIgYj1hLnNlYXJjaDtyZXR1cm4gYS5wcm90b2NvbCsiLy8iK2EuaG9zdG5hbWUrYS5wYXRobmFtZSsoYj9iKyImcmljaHNzdHNzZSI6Ij9yaWNoc3N0c3NlIil9O3ZhciBZZz1mdW5jdGlvbigpe3RoaXMuUj0iIn0sJGc9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgYz1iLmZhbGxiYWNrX3VybCxkPWIuZmFsbGJhY2tfdXJsX21ldGhvZDtpZihjJiZkKXt2YXIgZT17fTtaZyhhLChlW2RdPVtjXSxlLm9wdGlvbnM9e30sZSkpfX19LGFoPWZ1bmN0aW9uKGEsYixjKXtpZihBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgZD1tKGEpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO3R5cGVvZiBmPT09InN0cmluZyImJmMoZixiKX19LFpnPWZ1bmN0aW9uKGEsYil7aWYoYilmb3IodmFyIGM9Q2QoYi5vcHRpb25zKT9iLm9wdGlvbnM6e30sZD1tKE9iamVjdC5rZXlzKGIpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZSxnPWJbZl07c3dpdGNoKGYpe2Nhc2UgInNlbmRfcGl4ZWwiOmFoKGcsYyxmdW5jdGlvbihoLGwpe3JldHVybiB2b2lkIGEuSyhoLGwpfSk7YnJlYWs7Y2FzZSAiZmV0Y2giOmFoKGcsCmMsZnVuY3Rpb24oaCxsKXtyZXR1cm4gdm9pZCBhLkgoaCxsKX0pfX19O3ZhciBiaD0vXihbYS16XVthLXowLTldKik6KCF8XD8pKFwqfHN0cmluZ3xib29sZWFufG51bWJlcnxGbnxQaXhpZU1hcHxMaXN0fE9wYXF1ZVZhbHVlKSQvaSxjaD17Rm46ImZ1bmN0aW9uIixQaXhpZU1hcDoiT2JqZWN0IixMaXN0OiJBcnJheSJ9OwpmdW5jdGlvbiBkaChhLGIpe2Zvcih2YXIgYz1bImlucHV0OiEqIl0sZD0wO2Q8Yy5sZW5ndGg7ZCsrKXt2YXIgZT1iaC5leGVjKGNbZF0pO2lmKCFlKXRocm93IEVycm9yKCJJbnRlcm5hbCBFcnJvciBpbiAiK2EpO3ZhciBmPWVbMV0sZz1lWzJdPT09IiEiLGg9ZVszXSxsPWJbZF07aWYobD09bnVsbCl7aWYoZyl0aHJvdyBFcnJvcigiRXJyb3IgaW4gIithKyIuIFJlcXVpcmVkIGFyZ3VtZW50ICIrZisiIG5vdCBzdXBwbGllZC4iKTt9ZWxzZSBpZihoIT09IioiKXt2YXIgbj10eXBlb2YgbDtsIGluc3RhbmNlb2YgS2Q/bj0iRm4iOmwgaW5zdGFuY2VvZiBHZD9uPSJMaXN0IjpsIGluc3RhbmNlb2Yga2I/bj0iUGl4aWVNYXAiOmwgaW5zdGFuY2VvZiBTZD9uPSJQaXhpZVByb21pc2UiOmwgaW5zdGFuY2VvZiBQZCYmKG49Ik9wYXF1ZVZhbHVlIik7aWYobiE9PWgpdGhyb3cgRXJyb3IoIkVycm9yIGluICIrYSsiLiBBcmd1bWVudCAiK2YrIiBoYXMgdHlwZSAiKygoY2hbbl18fG4pKyIsIHdoaWNoIGRvZXMgbm90IG1hdGNoIHJlcXVpcmVkIHR5cGUgIikrCigoY2hbaF18fGgpKyIuIikpO319fWZ1bmN0aW9uIEsoYSxiLGMpe2Zvcih2YXIgZD1bXSxlPW0oYyksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7ZyBpbnN0YW5jZW9mIEtkP2QucHVzaCgiZnVuY3Rpb24iKTpnIGluc3RhbmNlb2YgR2Q/ZC5wdXNoKCJBcnJheSIpOmcgaW5zdGFuY2VvZiBrYj9kLnB1c2goIk9iamVjdCIpOmcgaW5zdGFuY2VvZiBTZD9kLnB1c2goIlByb21pc2UiKTpnIGluc3RhbmNlb2YgUGQ/ZC5wdXNoKCJPcGFxdWVWYWx1ZSIpOmQucHVzaCh0eXBlb2YgZyl9cmV0dXJuIEVycm9yKCJBcmd1bWVudCBlcnJvciBpbiAiK2ErIi4gRXhwZWN0ZWQgYXJndW1lbnQgdHlwZXMgWyIrKGIuam9pbigiLCIpKyJdLCBidXQgcmVjZWl2ZWQgWyIpKyhkLmpvaW4oIiwiKSsiXS4iKSl9ZnVuY3Rpb24gZWgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBrYn1mdW5jdGlvbiBmaChhKXtyZXR1cm4gZWgoYSl8fGE9PT1udWxsfHxnaChhKX0KZnVuY3Rpb24gaGgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBLZH1mdW5jdGlvbiBpaChhKXtyZXR1cm4gaGgoYSl8fGE9PT1udWxsfHxnaChhKX1mdW5jdGlvbiBqaChhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEdkfWZ1bmN0aW9uIGtoKGEpe3JldHVybiBhIGluc3RhbmNlb2YgUGR9ZnVuY3Rpb24gbGgoYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyJ9ZnVuY3Rpb24gbWgoYSl7cmV0dXJuIGxoKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gbmgoYSl7cmV0dXJuIHR5cGVvZiBhPT09ImJvb2xlYW4ifWZ1bmN0aW9uIG9oKGEpe3JldHVybiBuaChhKXx8Z2goYSl9ZnVuY3Rpb24gcGgoYSl7cmV0dXJuIG5oKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gcWgoYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9ZnVuY3Rpb24gZ2goYSl7cmV0dXJuIGE9PT12b2lkIDB9O2Z1bmN0aW9uIHJoKGEpe3JldHVybiIiK2F9CmZ1bmN0aW9uIHNoKGEsYil7dmFyIGM9W107cmV0dXJuIGN9O2Z1bmN0aW9uIHRoKGEsYil7dmFyIGM9bmV3IEtkKGEsZnVuY3Rpb24oKXtmb3IodmFyIGQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApLGU9MDtlPGQubGVuZ3RoO2UrKylkW2VdPXRoaXMuZXZhbHVhdGUoZFtlXSk7dHJ5e3JldHVybiBiLmFwcGx5KHRoaXMsZCl9Y2F0Y2goZyl7dGhyb3cgY2IoZyk7fX0pO2MuWmEoKTtyZXR1cm4gY30KZnVuY3Rpb24gdWgoYSxiKXt2YXIgYz1uZXcga2IsZDtmb3IoZCBpbiBiKWlmKGIuaGFzT3duUHJvcGVydHkoZCkpe3ZhciBlPWJbZF07eWIoZSk/Yy5zZXQoZCx0aChhKyJfIitkLGUpKTpDZChlKT9jLnNldChkLHVoKGErIl8iK2QsZSkpOihBYihlKXx8emIoZSl8fHR5cGVvZiBlPT09ImJvb2xlYW4iKSYmYy5zZXQoZCxlKX1jLlphKCk7cmV0dXJuIGN9O2Z1bmN0aW9uIHdoKGEsYil7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO2lmKCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwidW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgYz17fSxkPW5ldyBrYjtyZXR1cm4gZD11aCgiQXNzZXJ0QXBpU3ViamVjdCIsCmMpfTtmdW5jdGlvbiB4aChhLGIpe2lmKCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwidW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgU2QpdGhyb3cgRXJyb3IoIkFyZ3VtZW50IGFjdHVhbCBjYW5ub3QgaGF2ZSB0eXBlIFByb21pc2UuIEFzc2VydGlvbnMgb24gYXN5bmNocm9ub3VzIGNvZGUgYXJlbid0IHN1cHBvcnRlZC4iKTt2YXIgYz17fSxkPW5ldyBrYjtyZXR1cm4gZD11aCgiQXNzZXJ0VGhhdFN1YmplY3QiLGMpfTtmdW5jdGlvbiB5aChhKXtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIGI9T2EuYXBwbHkoMCxhcmd1bWVudHMpLGM9W10sZD10aGlzLlQsZT0wO2U8Yi5sZW5ndGg7KytlKWMucHVzaChUZChiW2VdLGQpKTtyZXR1cm4gVWQoYS5hcHBseShudWxsLGMpKX19ZnVuY3Rpb24gemgoKXtmb3IodmFyIGE9TWF0aCxiPUFoLGM9e30sZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1iW2RdO2EuaGFzT3duUHJvcGVydHkoZSkmJihjW2VdPXloKGFbZV0uYmluZChhKSkpfXJldHVybiBjfTtmdW5jdGlvbiBCaChhKXtyZXR1cm4gYSE9bnVsbCYmU2IoYSwiX19jdnRfIil9O2Z1bmN0aW9uIENoKGEpe3ZhciBiO3JldHVybiBifTtmdW5jdGlvbiBEaChhKXt2YXIgYjtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7dHJ5e2I9ZGVjb2RlVVJJQ29tcG9uZW50KGEpfWNhdGNoKGMpe31yZXR1cm4gYn07ZnVuY3Rpb24gRWgoYSl7dHJ5e3JldHVybiBlbmNvZGVVUkkoYSl9Y2F0Y2goYil7fX07ZnVuY3Rpb24gRmgoYSl7dHJ5e3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGEpKX1jYXRjaChiKXt9fTtmdW5jdGlvbiBHaChhLGIpe3ZhciBjPSExO3JldHVybiBjfWZ1bmN0aW9uIExoKGEpe2lmKCFtaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7fTtmdW5jdGlvbiBNaChhKXt2YXIgYj1UZChhKTtyZXR1cm4gbmcoYj8iIitiOiIiKX07ZnVuY3Rpb24gTmgoYSxiKXtpZighcWgoYSl8fCFxaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsibnVtYmVyIiwibnVtYmVyIl0sYXJndW1lbnRzKTtyZXR1cm4gRGIoYSxiKX07ZnVuY3Rpb24gT2goKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX07ZnVuY3Rpb24gUGgoYSl7aWYoYT09PW51bGwpcmV0dXJuIm51bGwiO2lmKGEgaW5zdGFuY2VvZiBHZClyZXR1cm4iYXJyYXkiO2lmKGEgaW5zdGFuY2VvZiBLZClyZXR1cm4iZnVuY3Rpb24iO2lmKGEgaW5zdGFuY2VvZiBQZCl7dmFyIGI9YS5nZXRWYWx1ZSgpO2lmKChiPT1udWxsP3ZvaWQgMDpiLmNvbnN0cnVjdG9yKT09PXZvaWQgMHx8Yi5jb25zdHJ1Y3Rvci5uYW1lPT09dm9pZCAwKXt2YXIgYz1TdHJpbmcoYik7cmV0dXJuIGMuc3Vic3RyaW5nKDgsYy5sZW5ndGgtMSl9cmV0dXJuIFN0cmluZyhiLmNvbnN0cnVjdG9yLm5hbWUpfXJldHVybiB0eXBlb2YgYX07ZnVuY3Rpb24gUWgoYSl7ZnVuY3Rpb24gYihjKXtyZXR1cm4gZnVuY3Rpb24oZCl7dHJ5e3JldHVybiBjKGQpfWNhdGNoKGUpeyhsZ3x8bWcuUG8pJiZhLmNhbGwodGhpcyxlLm1lc3NhZ2UpfX19cmV0dXJue3BhcnNlOmIoZnVuY3Rpb24oYyl7cmV0dXJuIFVkKEpTT04ucGFyc2UoYykpfSksc3RyaW5naWZ5OmIoZnVuY3Rpb24oYyl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KFRkKGMpKX0pLHB1YmxpY05hbWU6IkpTT04ifX07ZnVuY3Rpb24gUmgoYSl7cmV0dXJuIEliKFRkKGEsdGhpcy5UKSl9O2Z1bmN0aW9uIFNoKGEpe3JldHVybiBOdW1iZXIoVGQoYSx0aGlzLlQpKX07ZnVuY3Rpb24gVGgoYSl7cmV0dXJuIGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEudG9TdHJpbmcoKX07ZnVuY3Rpb24gVWgoYSxiLGMpe3ZhciBkPW51bGwsZT0hMTtpZighamgoYSl8fCFsaChiKXx8IWxoKGMpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJBcnJheSIsInN0cmluZyIsInN0cmluZyJdLGFyZ3VtZW50cyk7ZD1uZXcga2I7Zm9yKHZhciBmPTA7ZjxhLmxlbmd0aCgpO2YrKyl7dmFyIGc9YS5nZXQoZik7ZyBpbnN0YW5jZW9mIGtiJiZnLmhhcyhiKSYmZy5oYXMoYykmJihkLnNldChnLmdldChiKSxnLmdldChjKSksZT0hMCl9cmV0dXJuIGU/ZDpudWxsfTt2YXIgQWg9ImZsb29yIGNlaWwgcm91bmQgbWF4IG1pbiBhYnMgcG93IHNxcnQiLnNwbGl0KCIgIik7ZnVuY3Rpb24gVmgoKXt2YXIgYT17fTtyZXR1cm57V3I6ZnVuY3Rpb24oYil7cmV0dXJuIGEuaGFzT3duUHJvcGVydHkoYik/YVtiXTp2b2lkIDB9LEtvOmZ1bmN0aW9uKGIsYyl7YVtiXT1jfSxyZXNldDpmdW5jdGlvbigpe2E9e319fX1mdW5jdGlvbiBXaChhLGIpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBLZC5wcm90b3R5cGUuaW52b2tlLmFwcGx5KGEsW2JdLmNvbmNhdCh3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpKX19CmZ1bmN0aW9uIFhoKGEsYil7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJhbnkiXSxhcmd1bWVudHMpO30KZnVuY3Rpb24gWWgoYSxiKXtpZighbGgoYSl8fCFlaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiUGl4aWVNYXAiXSxhcmd1bWVudHMpO307dmFyIFpoPXt9O3ZhciAkaD1mdW5jdGlvbihhKXt2YXIgYj1uZXcga2I7aWYoYSBpbnN0YW5jZW9mIEdkKWZvcih2YXIgYz1hLkZhKCksZD0wO2Q8Yy5sZW5ndGg7ZCsrKXt2YXIgZT1jW2RdO2EuaGFzKGUpJiZiLnNldChlLGEuZ2V0KGUpKX1lbHNlIGlmKGEgaW5zdGFuY2VvZiBLZClmb3IodmFyIGY9YS5GYSgpLGc9MDtnPGYubGVuZ3RoO2crKyl7dmFyIGg9ZltnXTtiLnNldChoLGEuZ2V0KGgpKX1lbHNlIGZvcih2YXIgbD0wO2w8YS5sZW5ndGg7bCsrKWIuc2V0KGwsYVtsXSk7cmV0dXJuIGJ9OwpaaC5rZXlzPWZ1bmN0aW9uKGEpe2RoKHRoaXMuZ2V0TmFtZSgpLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIEdkfHxhIGluc3RhbmNlb2YgS2R8fHR5cGVvZiBhPT09InN0cmluZyIpYT0kaChhKTtpZihhIGluc3RhbmNlb2Yga2J8fGEgaW5zdGFuY2VvZiBTZClyZXR1cm4gbmV3IEdkKGEuRmEoKSk7cmV0dXJuIG5ldyBHZH07ClpoLnZhbHVlcz1mdW5jdGlvbihhKXtkaCh0aGlzLmdldE5hbWUoKSxhcmd1bWVudHMpO2lmKGEgaW5zdGFuY2VvZiBHZHx8YSBpbnN0YW5jZW9mIEtkfHx0eXBlb2YgYT09PSJzdHJpbmciKWE9JGgoYSk7aWYoYSBpbnN0YW5jZW9mIGtifHxhIGluc3RhbmNlb2YgU2QpcmV0dXJuIG5ldyBHZChhLmhjKCkpO3JldHVybiBuZXcgR2R9OwpaaC5lbnRyaWVzPWZ1bmN0aW9uKGEpe2RoKHRoaXMuZ2V0TmFtZSgpLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIEdkfHxhIGluc3RhbmNlb2YgS2R8fHR5cGVvZiBhPT09InN0cmluZyIpYT0kaChhKTtpZihhIGluc3RhbmNlb2Yga2J8fGEgaW5zdGFuY2VvZiBTZClyZXR1cm4gbmV3IEdkKGEuZmMoKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIG5ldyBHZChiKX0pKTtyZXR1cm4gbmV3IEdkfTsKWmguZnJlZXplPWZ1bmN0aW9uKGEpeyhhIGluc3RhbmNlb2Yga2J8fGEgaW5zdGFuY2VvZiBTZHx8YSBpbnN0YW5jZW9mIEdkfHxhIGluc3RhbmNlb2YgS2QpJiZhLlphKCk7cmV0dXJuIGF9O1poLmRlbGV0ZT1mdW5jdGlvbihhLGIpe2lmKGEgaW5zdGFuY2VvZiBrYiYmIWEuSGIoKSlyZXR1cm4gYS5yZW1vdmUoYiksITA7cmV0dXJuITF9O2Z1bmN0aW9uIEwoYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyksZD1hLlQueGIoKTtpZighZCl0aHJvdyBFcnJvcigiTWlzc2luZyBwcm9ncmFtIHN0YXRlLiIpO2lmKGQuaXQpe3RyeXtkLlJuLmFwcGx5KG51bGwsW2JdLmNvbmNhdCh3KGMpKSl9Y2F0Y2goZSl7dGhyb3cgc2IoIlRBR0dJTkciLDIxKSxlO31yZXR1cm59ZC5Sbi5hcHBseShudWxsLFtiXS5jb25jYXQodyhjKSkpfTt2YXIgYWk9ZnVuY3Rpb24oKXt0aGlzLks9e307dGhpcy5IPXt9O3RoaXMuTj0hMDt9O2FpLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmNvbnRhaW5zKGEpP3RoaXMuS1thXTp2b2lkIDA7cmV0dXJuIGN9O2FpLnByb3RvdHlwZS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5LLmhhc093blByb3BlcnR5KGEpfTsKYWkucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhLGIsYyl7aWYodGhpcy5jb250YWlucyhhKSl0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBhZGQgYSBmdW5jdGlvbiB3aGljaCBhbHJlYWR5IGV4aXN0czogIithKyIuIik7aWYodGhpcy5ILmhhc093blByb3BlcnR5KGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhbiBBUEkgd2l0aCBhbiBleGlzdGluZyBwcml2YXRlIEFQSSBuYW1lOiAiK2ErIi4iKTt0aGlzLktbYV09Yz92b2lkIDA6eWIoYik/dGgoYSxiKTp1aChhLGIpfTtmdW5jdGlvbiBiaShhLGIpe3ZhciBjPXZvaWQgMDtyZXR1cm4gY307ZnVuY3Rpb24gY2koKXt2YXIgYT17fTsKcmV0dXJuIGF9O3ZhciBkaT17fSxlaT0oZGlbRi5ELnNhXT0iZ2N1IixkaVtGLkQuZWhdPSJlcHQiLGRpW0YuRC5TYl09ImdjbGdiIixkaVtGLkQubGJdPSJnY2xhdyIsZGlbRi5ELnpsXT0iZ2NsaWRfbGVuIixkaVtGLkQuQmVdPSJnY2xncyIsZGlbRi5ELkNlXT0iZ2NsbHAiLGRpW0YuRC5EZV09ImdjbHN0IixkaVtGLkQuRWRdPSJhdWlkIixkaVtGLkQuQmxdPSJhZSIsZGlbRi5ELkNmXT0iZHNjbnQiLGRpW0YuRC5EZl09ImZjbnRyIixkaVtGLkQuRWZdPSJmbG5nIixkaVtGLkQuRmZdPSJtaWQiLGRpW0YuRC53aV09ImJ0dHlwZSIsZGlbRi5ELktiXT0iZ2FjaWQiLGRpW0YuRC5HZF09ImxhYmVsIixkaVtGLkQuRmVdPSJjYXBpIixkaVtGLkQuamhdPSJwc2NkbCIsZGlbRi5ELmViXT0iY3VycmVuY3lfY29kZSIsZGlbRi5ELkdlXT0idmRsdHYiLGRpW0YuRC5raF09ImNsb2N0IixkaVtGLkQuRWxdPSJfZGJnIixkaVtGLkQuSWVdPSJvZWRlbGQiLGRpW0YuRC5WY109ImVkaWQiLGRpW0YuRC5NZF09ImV2bmlkIiwKZGlbRi5ELkVpXT0iZXZqaWQiLGRpW0YuRC5OZF09ImV4Y2lkIixkaVtGLkQucmhdPSJnYWMiLGRpW0YuRC5KZV09ImdhY2diIixkaVtGLkQuTWxdPSJnYWNtY292IixkaVtGLkQuS2VdPSJnZHByIixkaVtGLkQuWGNdPSJnZGlkIixkaVtGLkQuTGVdPSJfbmciLGRpW0YuRC5jcV09Il9vbm8iLGRpW0YuRC50aF09ImdwcF9zaWQiLGRpW0YuRC51aF09ImdwcCIsZGlbRi5ELlBsXT0iZ3NhZXhwIixkaVtGLkQuVmZdPSJfdHUiLGRpW0YuRC5NZV09ImZybSIsZGlbRi5ELktpXT0iZ3RtX3VwIixkaVtGLkQuUGRdPSJscHMiLGRpW0YuRC5MaV09ImRpZCIsZGlbRi5ELlFkXT0iZmNudHIiLGRpW0YuRC5SZF09ImZsbmciLGRpW0YuRC5TZF09Im1pZCIsZGlbRi5ELk5lXT12b2lkIDAsZGlbRi5ELk1iXT0idGliYSIsZGlbRi5ELldiXT0icmRwIixkaVtGLkQueGNdPSJlY3NpZCIsZGlbRi5ELlpmXT0iZ2FfdWlkIixkaVtGLkQuVWRdPSJkZWxvcGMiLGRpW0YuRC5PZV09ImdkcHJfY29uc2VudCIsCmRpW0YuRC5QYV09Im9pZCIsZGlbRi5ELmRtXT0ib2lkc3JjIixkaVtGLkQuZm1dPSJ1cHRncyIsZGlbRi5ELmNnXT0idWFhIixkaVtGLkQuZGddPSJ1YWIiLGRpW0YuRC5lZ109InVhZnZsIixkaVtGLkQuZmddPSJ1YW1iIixkaVtGLkQuZ2ddPSJ1YW0iLGRpW0YuRC5oZ109InVhcCIsZGlbRi5ELmlnXT0idWFwdiIsZGlbRi5ELmpnXT0idWF3IixkaVtGLkQuZ21dPSJlY19sYXQiLGRpW0YuRC5obV09ImVjX21ldGEiLGRpW0YuRC5pbV09ImVjX20iLGRpW0YuRC5qbV09ImVjX3NlbCIsZGlbRi5ELmttXT0iZWNfcyIsZGlbRi5ELkJjXT0iZWNfbW9kZSIsZGlbRi5ELmZiXT0idXNlcklkIixkaVtGLkQua2ddPSJ1c19wcml2YWN5IixkaVtGLkQuUWFdPSJ2YWx1ZSIsZGlbRi5ELnFtXT0ibWNvdiIsZGlbRi5ELldpXT0iaG4iLGRpW0YuRC5WbV09Imd0bV9lZSIsZGlbRi5ELllpXT0idWlwIixkaVtGLkQuSmhdPSJtdCIsZGlbRi5ELmRlXT0ibnBhIixkaVtGLkQuWXFdPSJzZ191YyIsZGlbRi5ELnlpXT0KbnVsbCxkaVtGLkQuYmRdPW51bGwsZGlbRi5ELnRiXT1udWxsLGRpW0YuRC5IYV09bnVsbCxkaVtGLkQuemFdPW51bGwsZGlbRi5ELlVhXT1udWxsLGRpW0YuRC5QZV09bnVsbCxkaVtGLkQuZWRdPW51bGwsZGlbRi5ELnNoXT1udWxsLGRpW0YuRC5CZF09bnVsbCxkaVtGLkQuQ2RdPW51bGwsZGlbRi5ELmZoXT1udWxsLGRpW0YuRC5naF09bnVsbCxkaVtGLkQuVGFdPW51bGwsZGlbRi5ELldjXT1udWxsLGRpKTtmdW5jdGlvbiBmaShhLGIpe2lmKGEpe3ZhciBjPWEuc3BsaXQoIngiKTtjLmxlbmd0aD09PTImJihnaShiLCJ1X3ciLGNbMF0pLGdpKGIsInVfaCIsY1sxXSkpfX1mdW5jdGlvbiBoaShhKXt2YXIgYj1paTtiPWI9PT12b2lkIDA/amk6YjtyZXR1cm4ga2kobGkoYSxiKSl9ZnVuY3Rpb24ga2koYSl7cmV0dXJuKGF8fFtdKS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuISFifSkubWFwKGZ1bmN0aW9uKGIpe3JldHVybiIoIitbbWkoYi52YWx1ZSksbWkoYi5xdWFudGl0eSksbWkoYi5pdGVtX2lkKSxtaShiLnN0YXJ0X2RhdGUpLG1pKGIuZW5kX2RhdGUpXS5qb2luKCIqIikrIikifSkuam9pbigiIil9CmZ1bmN0aW9uIGxpKGEsYil7cmV0dXJuKGF8fFtdKS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuISFjfSkubWFwKGZ1bmN0aW9uKGMpe3JldHVybntpdGVtX2lkOmIoYykscXVhbnRpdHk6Yy5xdWFudGl0eSx2YWx1ZTpjLnByaWNlLHN0YXJ0X2RhdGU6Yy5zdGFydF9kYXRlLGVuZF9kYXRlOmMuZW5kX2RhdGV9fSl9ZnVuY3Rpb24gamkoYSl7cmV0dXJuW2EuaXRlbV9pZCxhLmlkLGEuaXRlbV9uYW1lXS5maW5kKGZ1bmN0aW9uKGIpe3JldHVybiBiIT1udWxsfSl9ZnVuY3Rpb24gbmkoYSl7aWYoYSYmYS5sZW5ndGgpcmV0dXJuIGEubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiJiZiLmVzdGltYXRlZF9kZWxpdmVyeV9kYXRlP2IuZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGU6IiJ9KS5qb2luKCIsIil9ZnVuY3Rpb24gZ2koYSxiLGMpe2M9PT12b2lkIDB8fGM9PT1udWxsfHxjPT09IiImJiF5Z1tiXXx8KGFbYl09Yyl9CmZ1bmN0aW9uIG1pKGEpe3JldHVybiB0eXBlb2YgYSE9PSJudW1iZXIiJiZ0eXBlb2YgYSE9PSJzdHJpbmciPyIiOmEudG9TdHJpbmcoKX07ZnVuY3Rpb24gb2koKXt0aGlzLmJsb2NrU2l6ZT0tMX07ZnVuY3Rpb24gcGkoYSxiKXt0aGlzLmJsb2NrU2l6ZT0tMTt0aGlzLmJsb2NrU2l6ZT02NDt0aGlzLk49UmEuVWludDhBcnJheT9uZXcgVWludDhBcnJheSh0aGlzLmJsb2NrU2l6ZSk6QXJyYXkodGhpcy5ibG9ja1NpemUpO3RoaXMuUj10aGlzLks9MDt0aGlzLkg9W107dGhpcy5mYT1hO3RoaXMuWj1iO3RoaXMuamE9UmEuSW50MzJBcnJheT9uZXcgSW50MzJBcnJheSg2NCk6QXJyYXkoNjQpO3FpPT09dm9pZCAwJiYoUmEuSW50MzJBcnJheT9xaT1uZXcgSW50MzJBcnJheShyaSk6cWk9cmkpO3RoaXMucmVzZXQoKX1TYShwaSxvaSk7Zm9yKHZhciBzaT1bXSx0aT0wO3RpPDYzO3RpKyspc2lbdGldPTA7dmFyIHVpPVtdLmNvbmNhdCgxMjgsc2kpOwpwaS5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLlI9dGhpcy5LPTA7dmFyIGE7aWYoUmEuSW50MzJBcnJheSlhPW5ldyBJbnQzMkFycmF5KHRoaXMuWik7ZWxzZXt2YXIgYj10aGlzLlosYz1iLmxlbmd0aDtpZihjPjApe2Zvcih2YXIgZD1BcnJheShjKSxlPTA7ZTxjO2UrKylkW2VdPWJbZV07YT1kfWVsc2UgYT1bXX10aGlzLkg9YX07CnZhciB2aT1mdW5jdGlvbihhKXtmb3IodmFyIGI9YS5OLGM9YS5qYSxkPTAsZT0wO2U8Yi5sZW5ndGg7KWNbZCsrXT1iW2VdPDwyNHxiW2UrMV08PDE2fGJbZSsyXTw8OHxiW2UrM10sZT1kKjQ7Zm9yKHZhciBmPTE2O2Y8NjQ7ZisrKXt2YXIgZz1jW2YtMTVdfDAsaD1jW2YtMl18MDtjW2ZdPSgoY1tmLTE2XXwwKSsoKGc+Pj43fGc8PDI1KV4oZz4+PjE4fGc8PDE0KV5nPj4+Myl8MCkrKChjW2YtN118MCkrKChoPj4+MTd8aDw8MTUpXihoPj4+MTl8aDw8MTMpXmg+Pj4xMCl8MCl8MH1mb3IodmFyIGw9YS5IWzBdfDAsbj1hLkhbMV18MCxwPWEuSFsyXXwwLHE9YS5IWzNdfDAscj1hLkhbNF18MCx0PWEuSFs1XXwwLHU9YS5IWzZdfDAsdj1hLkhbN118MCx4PTA7eDw2NDt4Kyspe3ZhciB5PSgobD4+PjJ8bDw8MzApXihsPj4+MTN8bDw8MTkpXihsPj4+MjJ8bDw8MTApKSsobCZuXmwmcF5uJnApfDAsej0odisoKHI+Pj42fHI8PDI2KV4ocj4+PjExfHI8PDIxKV4ocj4+PjI1fHI8PDcpKXwKMCkrKCgociZ0Xn5yJnUpKyhxaVt4XXwwKXwwKSsoY1t4XXwwKXwwKXwwO3Y9dTt1PXQ7dD1yO3I9cSt6fDA7cT1wO3A9bjtuPWw7bD16K3l8MH1hLkhbMF09YS5IWzBdK2x8MDthLkhbMV09YS5IWzFdK258MDthLkhbMl09YS5IWzJdK3B8MDthLkhbM109YS5IWzNdK3F8MDthLkhbNF09YS5IWzRdK3J8MDthLkhbNV09YS5IWzVdK3R8MDthLkhbNl09YS5IWzZdK3V8MDthLkhbN109YS5IWzddK3Z8MH07CnBpLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oYSxiKXtiPT09dm9pZCAwJiYoYj1hLmxlbmd0aCk7dmFyIGM9MCxkPXRoaXMuSztpZih0eXBlb2YgYT09PSJzdHJpbmciKWZvcig7YzxiOyl0aGlzLk5bZCsrXT1hLmNoYXJDb2RlQXQoYysrKSxkPT10aGlzLmJsb2NrU2l6ZSYmKHZpKHRoaXMpLGQ9MCk7ZWxzZXt2YXIgZSxmPXR5cGVvZiBhO2U9ZiE9Im9iamVjdCI/ZjphP0FycmF5LmlzQXJyYXkoYSk/ImFycmF5IjpmOiJudWxsIjtpZihlPT0iYXJyYXkifHxlPT0ib2JqZWN0IiYmdHlwZW9mIGEubGVuZ3RoPT0ibnVtYmVyIilmb3IoO2M8Yjspe3ZhciBnPWFbYysrXTtpZighKCJudW1iZXIiPT10eXBlb2YgZyYmMDw9ZyYmMjU1Pj1nJiZnPT0oZ3wwKSkpdGhyb3cgRXJyb3IoIm1lc3NhZ2UgbXVzdCBiZSBhIGJ5dGUgYXJyYXkiKTt0aGlzLk5bZCsrXT1nO2Q9PXRoaXMuYmxvY2tTaXplJiYodmkodGhpcyksZD0wKX1lbHNlIHRocm93IEVycm9yKCJtZXNzYWdlIG11c3QgYmUgc3RyaW5nIG9yIGFycmF5Iik7Cn10aGlzLks9ZDt0aGlzLlIrPWJ9O3BpLnByb3RvdHlwZS5kaWdlc3Q9ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPXRoaXMuUio4O3RoaXMuSzw1Nj90aGlzLnVwZGF0ZSh1aSw1Ni10aGlzLkspOnRoaXMudXBkYXRlKHVpLHRoaXMuYmxvY2tTaXplLSh0aGlzLkstNTYpKTtmb3IodmFyIGM9NjM7Yz49NTY7Yy0tKXRoaXMuTltjXT1iJjI1NSxiLz0yNTY7dmkodGhpcyk7Zm9yKHZhciBkPTAsZT0wO2U8dGhpcy5mYTtlKyspZm9yKHZhciBmPTI0O2Y+PTA7Zi09OClhW2QrK109dGhpcy5IW2VdPj5mJjI1NTtyZXR1cm4gYX07CnZhciByaT1bMTExNjM1MjQwOCwxODk5NDQ3NDQxLDMwNDkzMjM0NzEsMzkyMTAwOTU3Myw5NjE5ODcxNjMsMTUwODk3MDk5MywyNDUzNjM1NzQ4LDI4NzA3NjMyMjEsMzYyNDM4MTA4MCwzMTA1OTg0MDEsNjA3MjI1Mjc4LDE0MjY4ODE5ODcsMTkyNTA3ODM4OCwyMTYyMDc4MjA2LDI2MTQ4ODgxMDMsMzI0ODIyMjU4MCwzODM1MzkwNDAxLDQwMjIyMjQ3NzQsMjY0MzQ3MDc4LDYwNDgwNzYyOCw3NzAyNTU5ODMsMTI0OTE1MDEyMiwxNTU1MDgxNjkyLDE5OTYwNjQ5ODYsMjU1NDIyMDg4MiwyODIxODM0MzQ5LDI5NTI5OTY4MDgsMzIxMDMxMzY3MSwzMzM2NTcxODkxLDM1ODQ1Mjg3MTEsMTEzOTI2OTkzLDMzODI0MTg5NSw2NjYzMDcyMDUsNzczNTI5OTEyLDEyOTQ3NTczNzIsMTM5NjE4MjI5MSwxNjk1MTgzNzAwLDE5ODY2NjEwNTEsMjE3NzAyNjM1MCwyNDU2OTU2MDM3LDI3MzA0ODU5MjEsMjgyMDMwMjQxMSwzMjU5NzMwODAwLDMzNDU3NjQ3NzEsMzUxNjA2NTgxNywzNjAwMzUyODA0LAo0MDk0NTcxOTA5LDI3NTQyMzM0NCw0MzAyMjc3MzQsNTA2OTQ4NjE2LDY1OTA2MDU1Niw4ODM5OTc4NzcsOTU4MTM5NTcxLDEzMjI4MjIyMTgsMTUzNzAwMjA2MywxNzQ3ODczNzc5LDE5NTU1NjIyMjIsMjAyNDEwNDgxNSwyMjI3NzMwNDUyLDIzNjE4NTI0MjQsMjQyODQzNjQ3NCwyNzU2NzM0MTg3LDMyMDQwMzE0NzksMzMyOTMyNTI5OF0scWk7ZnVuY3Rpb24gd2koKXtwaS5jYWxsKHRoaXMsOCx4aSl9U2Eod2kscGkpO3ZhciB4aT1bMTc3OTAzMzcwMywzMTQ0MTM0Mjc3LDEwMTM5MDQyNDIsMjc3MzQ4MDc2MiwxMzU5ODkzMTE5LDI2MDA4MjI5MjQsNTI4NzM0NjM1LDE1NDE0NTkyMjVdO3ZhciB5aT0vXlswLTlBLUZhLWZdezY0fSQvO2Z1bmN0aW9uIHppKGEpe3RyeXtyZXR1cm4obmV3IFRleHRFbmNvZGVyKS5lbmNvZGUoYSl9Y2F0Y2goYil7cmV0dXJuIFpiKGEpfX1mdW5jdGlvbiBBaShhKXt2YXIgYj1BO2lmKGE9PT0iInx8YT09PSJlMCIpcmV0dXJuIFByb21pc2UucmVzb2x2ZShhKTt2YXIgYztpZigoYz1iLmNyeXB0byk9PW51bGw/MDpjLnN1YnRsZSl7aWYoeWkudGVzdChhKSlyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEpO3RyeXt2YXIgZD16aShhKTtyZXR1cm4gYi5jcnlwdG8uc3VidGxlLmRpZ2VzdCgiU0hBLTI1NiIsZCkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gQmkoZSxiKX0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJuImUyIn0pfWNhdGNoKGUpe3JldHVybiBQcm9taXNlLnJlc29sdmUoImUyIil9fWVsc2UgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgiZTEiKX0KZnVuY3Rpb24gQ2koYSl7dHJ5e3ZhciBiPW5ldyB3aTtiLnVwZGF0ZSh6aShhKSk7cmV0dXJuIGIuZGlnZXN0KCl9Y2F0Y2goYyl7cmV0dXJuImUyIn19ZnVuY3Rpb24gRGkoYSl7dmFyIGI9QTtpZihhPT09IiJ8fGE9PT0iZTAifHx5aS50ZXN0KGEpKXJldHVybiBhO3ZhciBjPUNpKGEpO2lmKGM9PT0iZTIiKXJldHVybiJlMiI7dHJ5e3JldHVybiBCaShjLGIpfWNhdGNoKGQpe3JldHVybiJlMiJ9fWZ1bmN0aW9uIEJpKGEsYil7dmFyIGM9QXJyYXkuZnJvbShuZXcgVWludDhBcnJheShhKSkubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGQpfSkuam9pbigiIik7cmV0dXJuIGIuYnRvYShjKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0rJC8sIiIpfTtmdW5jdGlvbiBFaSgpe2Zvcih2YXIgYT0hMSxiPSExLGM9MDthPT09YjspaWYoYT1EYigwLDEpPT09MCxiPURiKDAsMSk9PT0wLGMrKyxjPjMwKXJldHVybjtyZXR1cm4gYX12YXIgR2k9e3NrOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gRmkuc2soYSxiLGMpfX0sSGk9ZnVuY3Rpb24oKXt0aGlzLnN0dWRpZXM9e307dGhpcy5IPUVpfTsKSGkucHJvdG90eXBlLnNrPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLnN0dWRpZXNbYl07aWYoISgoYz09PXZvaWQgMD9EYigwLDk5OTkpOmMlMUU0KTxkLnByb2JhYmlsaXR5KihkLmNvbnRyb2xJZDI/NDoyKSoxRTQpKXJldHVybiBhO2E6e3ZhciBlPWQuc3R1ZHlJZCxmPWQuZXhwZXJpbWVudElkLGc9ZC5jb250cm9sSWQsaD1kLmNvbnRyb2xJZDI7aWYoISgoYS5leHB8fHt9KVtmXXx8KGEuZXhwfHx7fSlbZ118fGgmJihhLmV4cHx8e30pW2hdKSl7dmFyIGw9YyE9PXZvaWQgMD9jJTI9PT0wOnRoaXMuSCgpO2lmKGwhPT12b2lkIDApe3ZhciBuPWw/MDoxO2lmKGgpe3ZhciBwPWMhPT12b2lkIDA/KGM+PjEpJTI9PT0wOnRoaXMuSCgpO2lmKHA9PT12b2lkIDApYnJlYWsgYTtufD0ocD8wOjEpPDwxfW49PT0wP0lpKGEsZixlKTpuPT09MT9JaShhLGcsZSk6bj09PTImJklpKGEsaCxlKX19fXJldHVybiBhfTsKdmFyIEtpPWZ1bmN0aW9uKGEsYil7dmFyIGM9Rmk7cmV0dXJuIGMuc3R1ZGllc1tiXT9KaShjLGIpfHwhIShhLmV4cHx8e30pW2Muc3R1ZGllc1tiXS5leHBlcmltZW50SWRdOiExfSxMaT1mdW5jdGlvbihhLGIpe3ZhciBjPUZpO3JldHVybiBjLnN0dWRpZXNbYl0mJmMuc3R1ZGllc1tiXS5jb250cm9sSWQmJiFKaShjLGIpPyEhKGEuZXhwfHx7fSlbYy5zdHVkaWVzW2JdLmNvbnRyb2xJZF06ITF9LE1pPWZ1bmN0aW9uKGEsYil7dmFyIGM9Rmk7cmV0dXJuIGMuc3R1ZGllc1tiXSYmYy5zdHVkaWVzW2JdLmNvbnRyb2xJZDImJiFKaShjLGIpPyEhKGEuZXhwfHx7fSlbYy5zdHVkaWVzW2JdLmNvbnRyb2xJZDJdOiExfSxOaT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1hLmV4cHx8e30sZD1tKE9iamVjdC5rZXlzKGMpLm1hcChOdW1iZXIpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtpZihjW2ZdPT09YilyZXR1cm4gZn19LEppPWZ1bmN0aW9uKGEsCmIpe3JldHVybiEhYS5zdHVkaWVzW2JdLmFjdGl2ZXx8YS5zdHVkaWVzW2JdLnByb2JhYmlsaXR5Pi41fSxJaT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5leHB8fHt9O2RbYl09YzthLmV4cD1kfSxGaT1uZXcgSGk7CnZhciBQaT1mdW5jdGlvbihhKXtyZXR1cm4gT2lbYV19LFJpPWZ1bmN0aW9uKGEpe3JldHVybiBRaVthXX0sVGk9ZnVuY3Rpb24oYSl7cmV0dXJuIFNpW2FdfSxVaT1bXSxTaT17Ilx4MDAiOiImIzA7IiwnIic6IiZxdW90OyIsIiYiOiImYW1wOyIsIiciOiImIzM5OyIsIjwiOiImbHQ7IiwiPiI6IiZndDsiLCJcdCI6IiYjOTsiLCJcbiI6IiYjMTA7IiwiXHYiOiImIzExOyIsIlxmIjoiJiMxMjsiLCJcciI6IiYjMTM7IiwiICI6IiYjMzI7IiwiLSI6IiYjNDU7IiwiLyI6IiYjNDc7IiwiPSI6IiYjNjE7IiwiYCI6IiYjOTY7IiwiXHUwMDg1IjoiJiMxMzM7IiwiXHUwMGEwIjoiJiMxNjA7IiwiXHUyMDI4IjoiJiM4MjMyOyIsIlx1MjAyOSI6IiYjODIzMzsifSxWaT0vW1x4MDBceDIyXHgyNlx4MjdceDNjXHgzZV0vZzsKdmFyIFppPS9bXHgwMFx4MDgtXHgwZFx4MjJceDI2XHgyN1wvXHgzYy1ceDNlXFxceDg1XHUyMDI4XHUyMDI5XS9nLFFpPXsiXHgwMCI6IlxceDAwIiwKIlxiIjoiXFx4MDgiLCJcdCI6IlxcdCIsIlxuIjoiXFxuIiwiXHYiOiJcXHgwYiIsIlxmIjoiXFxmIiwiXHIiOiJcXHIiLCciJzoiXFx4MjIiLCImIjoiXFx4MjYiLCInIjoiXFx4MjciLCIvIjoiXFwvIiwiPCI6IlxceDNjIiwiPSI6IlxceDNkIiwiPiI6IlxceDNlIiwiXFwiOiJcXFxcIiwiXHUwMDg1IjoiXFx4ODUiLCJcdTIwMjgiOiJcXHUyMDI4IiwiXHUyMDI5IjoiXFx1MjAyOSIsJDoiXFx4MjQiLCIoIjoiXFx4MjgiLCIpIjoiXFx4MjkiLCIqIjoiXFx4MmEiLCIrIjoiXFx4MmIiLCIsIjoiXFx4MmMiLCItIjoiXFx4MmQiLCIuIjoiXFx4MmUiLCI6IjoiXFx4M2EiLCI/IjoiXFx4M2YiLCJbIjoiXFx4NWIiLCJdIjoiXFx4NWQiLCJeIjoiXFx4NWUiLCJ7IjoiXFx4N2IiLCJ8IjoiXFx4N2MiLCJ9IjoiXFx4N2QifTsKVWlbOF09ZnVuY3Rpb24oYSl7aWYoYT09bnVsbClyZXR1cm4iIG51bGwgIjtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJvb2xlYW4iOmNhc2UgIm51bWJlciI6cmV0dXJuIiAiK2ErIiAiO2RlZmF1bHQ6cmV0dXJuIiciK1N0cmluZyhTdHJpbmcoYSkpLnJlcGxhY2UoWmksUmkpKyInIn19O3ZhciBnaj0vW1x4MDAtIFx4MjJceDI3LVx4MjlceDNjXHgzZVxcXHg3Ylx4N2RceDdmXHg4NVx4YTBcdTIwMjhcdTIwMjlcdWZmMDFcdWZmMDNcdWZmMDRcdWZmMDYtXHVmZjBjXHVmZjBmXHVmZjFhXHVmZjFiXHVmZjFkXHVmZjFmXHVmZjIwXHVmZjNiXHVmZjNkXS9nLE9pPXsiXHgwMCI6IiUwMCIsIlx1MDAwMSI6IiUwMSIsIlx1MDAwMiI6IiUwMiIsIlx1MDAwMyI6IiUwMyIsIlx1MDAwNCI6IiUwNCIsIlx1MDAwNSI6IiUwNSIsIlx1MDAwNiI6IiUwNiIsIlx1MDAwNyI6IiUwNyIsIlxiIjoiJTA4IiwiXHQiOiIlMDkiLCJcbiI6IiUwQSIsIlx2IjoiJTBCIiwiXGYiOiIlMEMiLCJcciI6IiUwRCIsIlx1MDAwZSI6IiUwRSIsIlx1MDAwZiI6IiUwRiIsIlx1MDAxMCI6IiUxMCIsCiJcdTAwMTEiOiIlMTEiLCJcdTAwMTIiOiIlMTIiLCJcdTAwMTMiOiIlMTMiLCJcdTAwMTQiOiIlMTQiLCJcdTAwMTUiOiIlMTUiLCJcdTAwMTYiOiIlMTYiLCJcdTAwMTciOiIlMTciLCJcdTAwMTgiOiIlMTgiLCJcdTAwMTkiOiIlMTkiLCJcdTAwMWEiOiIlMUEiLCJcdTAwMWIiOiIlMUIiLCJcdTAwMWMiOiIlMUMiLCJcdTAwMWQiOiIlMUQiLCJcdTAwMWUiOiIlMUUiLCJcdTAwMWYiOiIlMUYiLCIgIjoiJTIwIiwnIic6IiUyMiIsIiciOiIlMjciLCIoIjoiJTI4IiwiKSI6IiUyOSIsIjwiOiIlM0MiLCI+IjoiJTNFIiwiXFwiOiIlNUMiLCJ7IjoiJTdCIiwifSI6IiU3RCIsIlx1MDA3ZiI6IiU3RiIsIlx1MDA4NSI6IiVDMiU4NSIsIlx1MDBhMCI6IiVDMiVBMCIsIlx1MjAyOCI6IiVFMiU4MCVBOCIsIlx1MjAyOSI6IiVFMiU4MCVBOSIsIlx1ZmYwMSI6IiVFRiVCQyU4MSIsIlx1ZmYwMyI6IiVFRiVCQyU4MyIsIlx1ZmYwNCI6IiVFRiVCQyU4NCIsIlx1ZmYwNiI6IiVFRiVCQyU4NiIsCiJcdWZmMDciOiIlRUYlQkMlODciLCJcdWZmMDgiOiIlRUYlQkMlODgiLCJcdWZmMDkiOiIlRUYlQkMlODkiLCJcdWZmMGEiOiIlRUYlQkMlOEEiLCJcdWZmMGIiOiIlRUYlQkMlOEIiLCJcdWZmMGMiOiIlRUYlQkMlOEMiLCJcdWZmMGYiOiIlRUYlQkMlOEYiLCJcdWZmMWEiOiIlRUYlQkMlOUEiLCJcdWZmMWIiOiIlRUYlQkMlOUIiLCJcdWZmMWQiOiIlRUYlQkMlOUQiLCJcdWZmMWYiOiIlRUYlQkMlOUYiLCJcdWZmMjAiOiIlRUYlQkMlQTAiLCJcdWZmM2IiOiIlRUYlQkMlQkIiLCJcdWZmM2QiOiIlRUYlQkMlQkQifTtVaVsxNl09ZnVuY3Rpb24oYSl7cmV0dXJuIGF9O3ZhciBpaj1mdW5jdGlvbigpe3RoaXMuSD1BLmdvb2dsZV90YWdfbWFuYWdlcj1BLmdvb2dsZV90YWdfbWFuYWdlcnx8e319LGpqO2Z1bmN0aW9uIGtqKGEsYil7bGooKTt2YXIgYz1qajtyZXR1cm4gYy5IW2FdPWMuSFthXXx8YigpfWZ1bmN0aW9uIG1qKGEpe2xqKCk7cmV0dXJuIGpqLkhbYV19ZnVuY3Rpb24gbmooYSxiKXtsaigpO2pqLkhbYV09Yn1mdW5jdGlvbiBvaihhKXt2YXIgYj1FKDUpO2xqKCk7dmFyIGM9amo7Yy5IW2JdPWMuSFtiXXx8YX1mdW5jdGlvbiBwaigpe3ZhciBhPUUoMTkpO2xqKCk7dmFyIGI9amo7cmV0dXJuIGIuSFthXT1iLkhbYV18fHt9fWZ1bmN0aW9uIHFqKCl7dmFyIGE9RSgxOSk7bGooKTtyZXR1cm4gamouSFthXX1mdW5jdGlvbiByaigpe2xqKCk7dmFyIGE9amosYj1hLkguc2VxdWVuY2V8fDE7YS5ILnNlcXVlbmNlPWIrMTtyZXR1cm4gYn1mdW5jdGlvbiBsaigpe2pqfHwoamo9bmV3IGlqKX07dmFyIHNqPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDE6cmV0dXJuIDA7Y2FzZSA0OTE6cmV0dXJuIDEyO2Nhc2UgNDgwOnJldHVybiAxMTtjYXNlIDQ5OTpyZXR1cm4gMTA7Y2FzZSA1MDA6cmV0dXJuIDY7Y2FzZSA0MjE6cmV0dXJuIDk7Y2FzZSA1NjE6cmV0dXJuIDE3O2Nhc2UgNDgyOnJldHVybiAxNTtjYXNlIDU3MDpyZXR1cm4gMTk7Y2FzZSA0OTU6cmV0dXJuIDEzO2Nhc2UgNTE0OnJldHVybiAxNjtjYXNlIDU3MzpyZXR1cm4gMTg7Y2FzZSAyMzU6cmV0dXJuIDg7Y2FzZSA1MzpyZXR1cm4gMTtjYXNlIDU0OnJldHVybiAyO2Nhc2UgNTI6cmV0dXJuIDQ7Y2FzZSA3NTpyZXR1cm4gM319LHRqPWZ1bmN0aW9uKGEsYil7YS5OW2JdPSEwO3ZhciBjPXNqKGIpO2MhPT12b2lkIDAmJihXZltjXT0hMCl9LE09ZnVuY3Rpb24oYSl7cmV0dXJuISF1ai5OW2FdfSx1aj1uZXcgZnVuY3Rpb24oKXt0aGlzLk49W107dGhpcy5LPVtdO3RoaXMuSD1bXTsKdGoodGhpcywxMzIpO3ZhciBhPU5mKDYsNkU0KTtYZlsxXT1hO3ZhciBiPU5mKDcsMSk7WGZbM109Yjt2YXIgYz1OZigzNSw1MCk7WGZbMl09Yzt2YXIgZD1OZig2OSwxNzc2NDQ4OTIwKTtYZls0XT1kOwp0aih0aGlzLDQzNSk7dGoodGhpcywxNDEpOwp9O3ZhciB2aj1mdW5jdGlvbigpe3RoaXMuSD1uZXcgU2V0O3RoaXMuSz1uZXcgU2V0fSx4aj1mdW5jdGlvbihhKXt2YXIgYj13ai5IO2E9YT09PXZvaWQgMD9bXTphO3ZhciBjPVtdLmNvbmNhdCh3KGIuSCkpLmNvbmNhdChbXS5jb25jYXQodyhiLkspKSkuY29uY2F0KGEpO2Muc29ydChmdW5jdGlvbihkLGUpe3JldHVybiBkLWV9KTtyZXR1cm4gY30seWo9ZnVuY3Rpb24oKXt2YXIgYT1bXS5jb25jYXQodyh3ai5ILkgpKTthLnNvcnQoZnVuY3Rpb24oYixjKXtyZXR1cm4gYi1jfSk7cmV0dXJuIGF9LHpqPWZ1bmN0aW9uKCl7dmFyIGE9d2ouSCxiPUUoNDQpO2EuSD1uZXcgU2V0O2lmKGIhPT0iIilmb3IodmFyIGM9bShiLnNwbGl0KCJ+IikpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1OdW1iZXIoZC52YWx1ZSk7aXNOYU4oZSl8fGEuSC5hZGQoZSl9fTt2YXIgQWo9e30sQmo9e19fY2w6MSxfX2VjbDoxLF9fZWhsOjEsX19ldmw6MSxfX2ZhbDoxLF9fZmlsOjEsX19mc2w6MSxfX2hsOjEsX19qZWw6MSxfX2xjbDoxLF9fc2RsOjEsX190bDoxLF9feXRsOjF9LENqPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30se19fcGF1c2VkOjEsX190ZzoxfSxCaiksRGosRWo9ITE7RGo9RWo7dmFyIEZqPSIiO0FqLnFqPUZqO3ZhciB3aj1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9bmV3IHZqfTt2YXIgR2o9LzpbMC05XSskLyxIaj0vXlxkK1wuZmxzXC5kb3VibGVjbGlja1wubmV0JC87ZnVuY3Rpb24gSWooYSxiLGMsZCl7dmFyIGU9SmooYSwhIWQsYiksZixnO3JldHVybiBjPyhnPWVbYl0pIT1udWxsP2c6W106KGY9ZVtiXSk9PW51bGw/dm9pZCAwOmZbMF19ZnVuY3Rpb24gSmooYSxiLGMpe2Zvcih2YXIgZD17fSxlPW0oYS5zcGxpdCgiJiIpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9bShmLnZhbHVlLnNwbGl0KCI9IikpLGg9Zy5uZXh0KCkudmFsdWUsbD15YShnKSxuPWRlY29kZVVSSUNvbXBvbmVudChoLnJlcGxhY2UoL1wrL2csIiAiKSk7aWYoYz09PXZvaWQgMHx8bj09PWMpe3ZhciBwPWwuam9pbigiPSIpO2Rbbl18fChkW25dPVtdKTtkW25dLnB1c2goYj9wOmRlY29kZVVSSUNvbXBvbmVudChwLnJlcGxhY2UoL1wrL2csIiAiKSkpfX1yZXR1cm4gZH0KZnVuY3Rpb24gS2ooYSl7dHJ5e3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoYSl9Y2F0Y2goYil7fX1mdW5jdGlvbiBMaihhLGIsYyxkLGUpe2ImJihiPVN0cmluZyhiKS50b0xvd2VyQ2FzZSgpKTtpZihiPT09InByb3RvY29sInx8Yj09PSJwb3J0IilhLnByb3RvY29sPU1qKGEucHJvdG9jb2wpfHxNaihBLmxvY2F0aW9uLnByb3RvY29sKTtiPT09InBvcnQiP2EucG9ydD1TdHJpbmcoTnVtYmVyKGEuaG9zdG5hbWU/YS5wb3J0OkEubG9jYXRpb24ucG9ydCl8fChhLnByb3RvY29sPT09Imh0dHAiPzgwOmEucHJvdG9jb2w9PT0iaHR0cHMiPzQ0MzoiIikpOmI9PT0iaG9zdCImJihhLmhvc3RuYW1lPShhLmhvc3RuYW1lfHxBLmxvY2F0aW9uLmhvc3RuYW1lKS5yZXBsYWNlKEdqLCIiKS50b0xvd2VyQ2FzZSgpKTtyZXR1cm4gTmooYSxiLGMsZCxlKX0KZnVuY3Rpb24gTmooYSxiLGMsZCxlKXt2YXIgZixnPU1qKGEucHJvdG9jb2wpO2ImJihiPVN0cmluZyhiKS50b0xvd2VyQ2FzZSgpKTtzd2l0Y2goYil7Y2FzZSAidXJsX25vX2ZyYWdtZW50IjpmPU9qKGEpO2JyZWFrO2Nhc2UgInByb3RvY29sIjpmPWc7YnJlYWs7Y2FzZSAiaG9zdCI6Zj1hLmhvc3RuYW1lLnJlcGxhY2UoR2osIiIpLnRvTG93ZXJDYXNlKCk7aWYoYyl7dmFyIGg9L153d3dcZCpcLi8uZXhlYyhmKTtoJiZoWzBdJiYoZj1mLnN1YnN0cmluZyhoWzBdLmxlbmd0aCkpfWJyZWFrO2Nhc2UgInBvcnQiOmY9U3RyaW5nKE51bWJlcihhLnBvcnQpfHwoZz09PSJodHRwIj84MDpnPT09Imh0dHBzIj80NDM6IiIpKTticmVhaztjYXNlICJwYXRoIjphLnBhdGhuYW1lfHxhLmhvc3RuYW1lfHxzYigiVEFHR0lORyIsMSk7Zj1hLnBhdGhuYW1lLnN1YnN0cmluZygwLDEpPT09Ii8iP2EucGF0aG5hbWU6Ii8iK2EucGF0aG5hbWU7dmFyIGw9Zi5zcGxpdCgiLyIpOyhkfHxbXSkuaW5kZXhPZihsW2wubGVuZ3RoLQoxXSk+PTAmJihsW2wubGVuZ3RoLTFdPSIiKTtmPWwuam9pbigiLyIpO2JyZWFrO2Nhc2UgInF1ZXJ5IjpmPWEuc2VhcmNoLnJlcGxhY2UoIj8iLCIiKTtlJiYoZj1JaihmLGUsITEpKTticmVhaztjYXNlICJleHRlbnNpb24iOnZhciBuPWEucGF0aG5hbWUuc3BsaXQoIi4iKTtmPW4ubGVuZ3RoPjE/bltuLmxlbmd0aC0xXToiIjtmPWYuc3BsaXQoIi8iKVswXTticmVhaztjYXNlICJmcmFnbWVudCI6Zj1hLmhhc2gucmVwbGFjZSgiIyIsIiIpO2JyZWFrO2RlZmF1bHQ6Zj1hJiZhLmhyZWZ9cmV0dXJuIGZ9ZnVuY3Rpb24gTWooYSl7cmV0dXJuIGE/YS5yZXBsYWNlKCI6IiwiIikudG9Mb3dlckNhc2UoKToiIn1mdW5jdGlvbiBPaihhKXt2YXIgYj0iIjtpZihhJiZhLmhyZWYpe3ZhciBjPWEuaHJlZi5pbmRleE9mKCIjIik7Yj1jPDA/YS5ocmVmOmEuaHJlZi5zdWJzdHJpbmcoMCxjKX1yZXR1cm4gYn12YXIgUGo9e30sUWo9MDsKZnVuY3Rpb24gUmooYSl7dmFyIGI9UGpbYV07aWYoIWIpe3ZhciBjPUIuY3JlYXRlRWxlbWVudCgiYSIpO2EmJihjLmhyZWY9YSk7dmFyIGQ9Yy5wYXRobmFtZTtkWzBdIT09Ii8iJiYoYXx8c2IoIlRBR0dJTkciLDEpLGQ9Ii8iK2QpO3ZhciBlPWMuaG9zdG5hbWUucmVwbGFjZShHaiwiIik7Yj17aHJlZjpjLmhyZWYscHJvdG9jb2w6Yy5wcm90b2NvbCxob3N0OmMuaG9zdCxob3N0bmFtZTplLHBhdGhuYW1lOmQsc2VhcmNoOmMuc2VhcmNoLGhhc2g6Yy5oYXNoLHBvcnQ6Yy5wb3J0fTtRajw1JiYoUGpbYV09YixRaisrKX1yZXR1cm4gYn1mdW5jdGlvbiBTaihhLGIsYyl7dmFyIGQ9UmooYSk7cmV0dXJuIGFjKGIsZCxjKX0KZnVuY3Rpb24gVGooYSl7dmFyIGI9UmooQS5sb2NhdGlvbi5ocmVmKSxjPUxqKGIsImhvc3QiLCExKTtpZihjJiZjLm1hdGNoKEhqKSl7dmFyIGQ9TGooYiwicGF0aCIpO2lmKGQpe3ZhciBlPWQuc3BsaXQoYSsiPSIpO2lmKGUubGVuZ3RoPjEpcmV0dXJuIGVbMV0uc3BsaXQoIjsiKVswXS5zcGxpdCgiPyIpWzBdfX19O3ZhciBVaj17Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20iOiIvZyIsImh0dHBzOi8vd3d3Lmdvb2dsZWFkc2VydmljZXMuY29tIjoiL2FzIiwiaHR0cHM6Ly9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSI6Ii9ncyJ9LFZqPVsiL2FzL2QvY2NtL2NvbnZlcnNpb24iLCIvZy9kL2NjbS9jb252ZXJzaW9uIiwiL2dzL2NjbS9jb252ZXJzaW9uIiwiL2QvY2NtL2Zvcm0tZGF0YSJdO2Z1bmN0aW9uIFdqKCl7cmV0dXJuIElmKDQ3KT9KZig1NCkhPT0xOiExfWZ1bmN0aW9uIFhqKCl7dmFyIGE9RSgxOCksYj1hLmxlbmd0aDtyZXR1cm4gYVtiLTFdPT09Ii8iP2Euc3Vic3RyaW5nKDAsYi0xKTphfQpmdW5jdGlvbiBZaihhLGIpe2lmKGEpe3ZhciBjPSIiK2E7Yy5pbmRleE9mKCJodHRwOi8vIikhPT0wJiZjLmluZGV4T2YoImh0dHBzOi8vIikhPT0wJiYoYz0iaHR0cHM6Ly8iK2MpO2NbYy5sZW5ndGgtMV09PT0iLyImJihjPWMuc3Vic3RyaW5nKDAsYy5sZW5ndGgtMSkpO3JldHVybiBSaigiIitjK2IpLmhyZWZ9fWZ1bmN0aW9uIFpqKGEpe2lmKGFrKCkpcmV0dXJuIFlqKGEsIi9hbmFseXRpY3MuanMiKX1mdW5jdGlvbiBiayhhKXtyZXR1cm4gYT09PTJ8fGE9PT0zfWZ1bmN0aW9uIGNrKGEpe3JldHVybiBNKDU4OCkmJmE9PT0zfWZ1bmN0aW9uIGFrKCl7cmV0dXJuIFdqKCl8fElmKDUwKX1mdW5jdGlvbiBkaygpe3JldHVybiEhQWoucWomJkFqLnFqLnNwbGl0KCJAQCIpLmpvaW4oIiIpIT09IlNHVE1fVE9LRU4ifQpmdW5jdGlvbiBlayhhKXtmb3IodmFyIGI9bShbRi5ELmRkLEYuRC55Y10pLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKXt2YXIgZD1PKGEsYy52YWx1ZSk7aWYoZClyZXR1cm4gZH19ZnVuY3Rpb24gZmsoYSxiLGMpe2M9Yz09PXZvaWQgMD8iIjpjO2lmKCFXaigpKXJldHVybiBhO3ZhciBkPWI/VWpbYV18fCIiOiIiO2Q9PT0iL2dzIiYmKGM9IiIpO3JldHVybiIiK1hqKCkrZCtjfWZ1bmN0aW9uIGdrKGEpe2lmKFdqKCkpZm9yKHZhciBiPW0oVmopLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKXt2YXIgZD1jLnZhbHVlO2lmKFNiKGEsIiIrWGooKStkKSlyZXR1cm4iOjoifX0KZnVuY3Rpb24gaGsoKXt2YXIgYT1BO2lmKCFhKXJldHVybiExO3RyeXtpZihhPT09YS50b3ApcmV0dXJuITE7dmFyIGI9YS5sb2NhdGlvbi5wYXRobmFtZTtyZXR1cm4gYi5pbmRleE9mKCIvXy9zZXJ2aWNlX3dvcmtlci8iKSE9PS0xJiZUYihiLCIvc3dfaWZyYW1lLmh0bWwiKX1jYXRjaChjKXtyZXR1cm4hMX19O3ZhciBpaz0vZ3RhZ1suXC9danMvLGprPS9ndG1bLlwvXWpzLyxsaz1mdW5jdGlvbihhKXt2YXIgYj1raztpZigoYS5zY3JpcHRDb250YWluZXJJZHx8IiIpLmluZGV4T2YoIkdUTS0iKT49MCl7dmFyIGM7YTp7dmFyIGQsZT0oZD1hLnNjcmlwdEVsZW1lbnQpPT1udWxsP3ZvaWQgMDpkLnNyYztpZihlKXtmb3IodmFyIGY9SWYoNDcpLGc9UmooZSksaD1mP2cucGF0aG5hbWU6IiIrZy5ob3N0bmFtZStnLnBhdGhuYW1lLGw9Qi5zY3JpcHRzLG49IiIscD0wO3A8bC5sZW5ndGg7KytwKXt2YXIgcT1sW3BdO2lmKCEocS5pbm5lckhUTUwubGVuZ3RoPT09MHx8IWYmJnEuaW5uZXJIVE1MLmluZGV4T2YoYS5zY3JpcHRDb250YWluZXJJZHx8IlNIT1VMRF9OT1RfQkVfU0VUIik8MHx8cS5pbm5lckhUTUwuaW5kZXhPZihoKTwwKSl7aWYocS5pbm5lckhUTUwuaW5kZXhPZigiKGZ1bmN0aW9uKHcsZCxzLGwsaSkiKT49MCl7Yz1TdHJpbmcocCk7YnJlYWsgYX1uPVN0cmluZyhwKX19aWYobil7Yz0KbjticmVhayBhfX1jPXZvaWQgMH12YXIgcj1jO2lmKHIpcmV0dXJuIGIuSD0hMCxyfXZhciB0PVtdLnNsaWNlLmNhbGwoQi5zY3JpcHRzKTtyZXR1cm4gYS5zY3JpcHRFbGVtZW50P1N0cmluZyh0LmluZGV4T2YoYS5zY3JpcHRFbGVtZW50KSk6Ii0xIn0sbWs9ZnVuY3Rpb24oYSl7aWYoa2suSClyZXR1cm4iMSI7dmFyIGIsYz0oYj1hLnNjcmlwdEVsZW1lbnQpPT1udWxsP3ZvaWQgMDpiLnNyYztpZihjKXtpZihpay50ZXN0KGMpKXJldHVybiIzIjtpZihqay50ZXN0KGMpKXJldHVybiIyIn1yZXR1cm4iMCJ9LGtrPW5ldyBmdW5jdGlvbigpe3RoaXMuSD0hMX07ZnVuY3Rpb24gUChhKXtzYigiR1RNIixhKX07ZnVuY3Rpb24gbmsoYSl7dmFyIGI9b2soKS5kZXN0aW5hdGlvbkFycmF5W2FdLGM9b2soKS5kZXN0aW5hdGlvblthXTtyZXR1cm4gYiYmYi5sZW5ndGg+MD9iWzBdOmN9ZnVuY3Rpb24gcGsoYSxiKXt2YXIgYz1vaygpO2MucGVuZGluZ3x8KGMucGVuZGluZz1bXSk7Q2IoYy5wZW5kaW5nLGZ1bmN0aW9uKGQpe3JldHVybiBkLnRhcmdldC5jdGlkPT09YS5jdGlkJiZkLnRhcmdldC5pc0Rlc3RpbmF0aW9uPT09YS5pc0Rlc3RpbmF0aW9ufSl8fGMucGVuZGluZy5wdXNoKHt0YXJnZXQ6YSxvbkxvYWQ6Yn0pfWZ1bmN0aW9uIHFrKCl7dmFyIGE9QS5nb29nbGVfdGFnc19maXJzdF9wYXJ0eTtBcnJheS5pc0FycmF5KGEpfHwoYT1bXSk7Zm9yKHZhciBiPXt9LGM9bShhKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSliW2QudmFsdWVdPSEwO3JldHVybiBPYmplY3QuZnJlZXplKGIpfQp2YXIgcms9ZnVuY3Rpb24oKXt0aGlzLmNvbnRhaW5lcj17fTt0aGlzLmRlc3RpbmF0aW9uPXt9O3RoaXMuZGVzdGluYXRpb25BcnJheT17fTt0aGlzLmNhbm9uaWNhbD17fTt0aGlzLnBlbmRpbmc9W107dGhpcy5pbmplY3RlZEZpcnN0UGFydHlDb250YWluZXJzPXt9O3RoaXMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz1xaygpfTsKZnVuY3Rpb24gb2soKXt2YXIgYT1NYygiZ29vZ2xlX3RhZ19kYXRhIix7fSksYj1hLnRpZHI7YiYmdHlwZW9mIGI9PT0ib2JqZWN0Inx8KGI9bmV3IHJrLGEudGlkcj1iKTt2YXIgYz1iO2MuY29udGFpbmVyfHwoYy5jb250YWluZXI9e30pO2MuZGVzdGluYXRpb258fChjLmRlc3RpbmF0aW9uPXt9KTtjLmRlc3RpbmF0aW9uQXJyYXl8fChjLmRlc3RpbmF0aW9uQXJyYXk9e30pO2MuY2Fub25pY2FsfHwoYy5jYW5vbmljYWw9e30pO2MucGVuZGluZ3x8KGMucGVuZGluZz1bXSk7Yy5pbmplY3RlZEZpcnN0UGFydHlDb250YWluZXJzfHwoYy5pbmplY3RlZEZpcnN0UGFydHlDb250YWluZXJzPXFrKCkpO3JldHVybiBjfTtmdW5jdGlvbiBzaygpe3JldHVybiBJZig3KSYmdGsoKS5zb21lKGZ1bmN0aW9uKGEpe3JldHVybiBhPT09RSg1KX0pfWZ1bmN0aW9uIHVrKCl7dmFyIGE7cmV0dXJuKGE9S2YoNTUpKSE9bnVsbD9hOltdfWZ1bmN0aW9uIHZrKCl7cmV0dXJuIEUoNil8fCJfIitFKDUpfWZ1bmN0aW9uIHdrKCl7dmFyIGE9RSgxMCk7cmV0dXJuIGE/YS5zcGxpdCgifCIpOltFKDUpXX1mdW5jdGlvbiB0aygpe3ZhciBhPUtmKDU5KTtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGI9PT0ic3RyaW5nIn0pLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gYi5pbmRleE9mKCJHVE0tIikhPT0wfSk6W119ZnVuY3Rpb24geGsoKXt2YXIgYT15ayh6aygpKSxiPWEmJmEucGFyZW50O2lmKGIpcmV0dXJuIHlrKGIpfQpmdW5jdGlvbiBBaygpe3ZhciBhPXlrKHprKCkpO2lmKGEpe2Zvcig7YS5wYXJlbnQ7KXt2YXIgYj15ayhhLnBhcmVudCk7aWYoIWIpYnJlYWs7YT1ifXJldHVybiBhfX1mdW5jdGlvbiB5ayhhKXt2YXIgYj1vaygpO3JldHVybiBhLmlzRGVzdGluYXRpb24/bmsoYS5jdGlkKTpiLmNvbnRhaW5lclthLmN0aWRdfWZ1bmN0aW9uIEJrKCl7dmFyIGE9b2soKTtpZihhLnBlbmRpbmcpe2Zvcih2YXIgYixjPVtdLGQ9ITEsZT13aygpLGY9dGsoKSxnPXt9LGg9MDtoPGEucGVuZGluZy5sZW5ndGg7Zz17Umc6dm9pZCAwfSxoKyspZy5SZz1hLnBlbmRpbmdbaF0sQ2IoZy5SZy50YXJnZXQuaXNEZXN0aW5hdGlvbj9mOmUsZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBuPT09bC5SZy50YXJnZXQuY3RpZH19KGcpKT9kfHwoYj1nLlJnLm9uTG9hZCxkPSEwKTpjLnB1c2goZy5SZyk7YS5wZW5kaW5nPWM7aWYoYil0cnl7Yih2aygpKX1jYXRjaChsKXt9fX0KZnVuY3Rpb24gQ2soKXtmb3IodmFyIGE9RSg1KSxiPXdrKCksYz10aygpLGQ9dWsoKSxlPWZ1bmN0aW9uKHEscil7dmFyIHQ9e2Nhbm9uaWNhbENvbnRhaW5lcklkOkUoNiksc2NyaXB0Q29udGFpbmVySWQ6YSxzdGF0ZToyLGNvbnRhaW5lcnM6Yi5zbGljZSgpLGRlc3RpbmF0aW9uczpjLnNsaWNlKCl9O0pjJiYodC5zY3JpcHRFbGVtZW50PUpjKTtLYyYmKHQuc2NyaXB0U291cmNlPUtjKTt4aygpPT09dm9pZCAwJiYodC5odG1sTG9hZE9yZGVyPWxrKHQpLHQubG9hZFNjcmlwdFR5cGU9bWsodCkpO3ZhciB1LHY7c3dpdGNoKHIpe2Nhc2UgMDp1PWZ1bmN0aW9uKHope2YuY29udGFpbmVyW3FdPXp9O3Y9Zi5jb250YWluZXJbcV07YnJlYWs7Y2FzZSAxOnU9ZnVuY3Rpb24oeil7Zi5kZXN0aW5hdGlvbkFycmF5W3FdPWYuZGVzdGluYXRpb25BcnJheVtxXXx8W107Zi5kZXN0aW5hdGlvbkFycmF5W3FdLnVuc2hpZnQoeil9O3ZhciB4LHk9KCh4PWYuZGVzdGluYXRpb25BcnJheVtxXSk9PQpudWxsP3ZvaWQgMDp4WzBdKXx8Zi5kZXN0aW5hdGlvbltxXTsheXx8eS5zdGF0ZSE9PTAmJnkuc3RhdGUhPT0xfHwodj15KTticmVhaztjYXNlIDI6dT1mdW5jdGlvbih6KXtmLmRlc3RpbmF0aW9uQXJyYXlbcV09Zi5kZXN0aW5hdGlvbkFycmF5W3FdfHxbXTtmLmRlc3RpbmF0aW9uQXJyYXlbcV0ucHVzaCh6KX0sdj12b2lkIDB9dSYmKHY/KHYuc3RhdGU9PT0wJiZQKDkzKSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHYsdCkpOnUodCkpfSxmPW9rKCksZz1tKGIpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKWUoaC52YWx1ZSwwKTtmb3IodmFyIGw9bShjKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtkLmluY2x1ZGVzKHApP2UocCwxKTplKHAsMil9Zi5jYW5vbmljYWxbdmsoKV09e307QmsoKX1mdW5jdGlvbiBEaygpe3ZhciBhPXZrKCk7cmV0dXJuISFvaygpLmNhbm9uaWNhbFthXX0KZnVuY3Rpb24gRWsoYSl7cmV0dXJuISFvaygpLmNvbnRhaW5lclthXX1mdW5jdGlvbiBGaygpe3ZhciBhPXprKCksYj15ayhhKTtyZXR1cm4gYiYmYi5jb250ZXh0fWZ1bmN0aW9uIEdrKGEpe3ZhciBiPW5rKGEpO3JldHVybiBiP2Iuc3RhdGUhPT0wOiExfWZ1bmN0aW9uIHprKCl7cmV0dXJue2N0aWQ6RSg1KSxpc0Rlc3RpbmF0aW9uOklmKDcpfX1mdW5jdGlvbiBIayhhLGIsYyl7dmFyIGQ9emsoKSxlPW9rKCkuY29udGFpbmVyW2FdO2UmJmUuc3RhdGUhPT0zfHwob2soKS5jb250YWluZXJbYV09e3N0YXRlOjEsY29udGV4dDpiLHBhcmVudDpkfSxwayh7Y3RpZDphLGlzRGVzdGluYXRpb246ITF9LGMpKX1mdW5jdGlvbiBJayhhLGIsYyl7dmFyIGQ9b2soKSxlPW5rKGEpO2U/ZS5zdGF0ZT0xOihlPXtjb250ZXh0OmIsc3RhdGU6MSxwYXJlbnQ6emsoKX0sZC5kZXN0aW5hdGlvbkFycmF5W2FdPVtlXSk7cGsoe2N0aWQ6YSxpc0Rlc3RpbmF0aW9uOiEwfSxjKX0KZnVuY3Rpb24gSmsoYSxiLGMsZCl7dmFyIGU9b2soKSxmPW5rKGEpO2Y/Zi5zdGF0ZT0wOihmPXtzdGF0ZTowLHRyYW5zcG9ydFVybDpiLGNvbnRleHQ6YyxwYXJlbnQ6emsoKX0sZS5kZXN0aW5hdGlvbkFycmF5W2FdPVtmXSk7cGsoe2N0aWQ6YSxpc0Rlc3RpbmF0aW9uOiEwfSxkKTtQKDkxKX1mdW5jdGlvbiBLaygpe3ZhciBhPW9rKCkuY29udGFpbmVyLGI7Zm9yKGIgaW4gYSlpZihhLmhhc093blByb3BlcnR5KGIpJiZhW2JdLnN0YXRlPT09MSlyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiBMaygpe3ZhciBhPXt9O0diKG9rKCkuZGVzdGluYXRpb24sZnVuY3Rpb24oYixjKXsoYz09bnVsbD92b2lkIDA6Yy5zdGF0ZSk9PT0wJiYoYVtiXT1jKX0pO0diKG9rKCkuZGVzdGluYXRpb25BcnJheSxmdW5jdGlvbihiLGMpe3ZhciBkPWNbMF07KGQ9PW51bGw/dm9pZCAwOmQuc3RhdGUpPT09MCYmKGFbYl09ZCl9KTtyZXR1cm4gYX0KZnVuY3Rpb24gTWsoYSl7cmV0dXJuISEoYSYmYS5wYXJlbnQmJmEuY29udGV4dCYmYS5jb250ZXh0LnNvdXJjZT09PTEmJmEucGFyZW50LmN0aWQuaW5kZXhPZigiR1RNLSIpIT09MCl9ZnVuY3Rpb24gTmsoKXtmb3IodmFyIGE9b2soKSxiPW0od2soKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpaWYoYS5pbmplY3RlZEZpcnN0UGFydHlDb250YWluZXJzW2MudmFsdWVdKXJldHVybiEwO3JldHVybiExfTt2YXIgT2s9ZnVuY3Rpb24oKXt9O09rLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJ1bmRlZmluZWQifTt2YXIgUGs9bmV3IE9rOwp2YXIgU2s9ZnVuY3Rpb24oYSxiLGMpe2EgaW5zdGFuY2VvZiBRayYmKGE9YS5yZXNvbHZlKFJrLk4oYixjKSksYj14Yik7cmV0dXJue3dzOmEsb25TdWNjZXNzOmJ9fSxVaz1mdW5jdGlvbihhKXtSa3x8KFJrPW5ldyBUayk7cmV0dXJuIFJrLksoYSl9LFZrPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9e307a2ooInJtIixmdW5jdGlvbigpe3JldHVybnt9fSlbdmsoKV09ZnVuY3Rpb24oYil7aWYoYS5ILmhhc093blByb3BlcnR5KGIpKXJldHVybiBhLkhbYl19fTtWay5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXtpZihhPT09UGspcmV0dXJuIGE7dmFyIGI9cmooKTt0aGlzLkhbYl09YTtyZXR1cm4nZ29vZ2xlX3RhZ19tYW5hZ2VyWyJybSJdWyInK3ZrKCkrJyJdKCcrYisiKSJ9O3ZhciBXayxRaz1mdW5jdGlvbihhKXt0aGlzLnZhbHVlT2Y9dGhpcy50b1N0cmluZzt0aGlzLnJlc29sdmU9ZnVuY3Rpb24oYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyljLnB1c2goYVtkXT09PQpQaz9iOmFbZF0pO3JldHVybiBjLmpvaW4oIiIpfX07UWsucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmVzb2x2ZSgidW5kZWZpbmVkIil9O3ZhciBUaz1mdW5jdGlvbigpe3RoaXMuSD17fX07VGsucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1TdHJpbmcocmooKSk7dGhpcy5IW2NdPVthLGJdO3JldHVybiBjfTtUay5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9YT8wOjE7cmV0dXJuIGZ1bmN0aW9uKGQpe1AoYT8xMzQ6MTM1KTt2YXIgZT1iLkhbZF07aWYoZSYmdHlwZW9mIGVbY109PT0iZnVuY3Rpb24iKWVbY10oKTtiLkhbZF09dm9pZCAwfX07dmFyIFJrO3ZhciBYaz1mdW5jdGlvbigpe3RoaXMuc3RvcmFnZT1ZYSgpfTtYay5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5zdG9yYWdlLnNldChTdHJpbmcoYSksYil9O1hrLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuc3RvcmFnZS5nZXQoU3RyaW5nKGEpKX07dmFyIFlrO2Z1bmN0aW9uIFprKGEsYil7WWt8fChZaz1uZXcgWGspO1lrLnNldChhLGIpfWZ1bmN0aW9uICRrKGEpe1lrfHwoWWs9bmV3IFhrKTtyZXR1cm4gWWsuZ2V0KGEpfWZ1bmN0aW9uIGFsKGEsYil7WWt8fChZaz1uZXcgWGspO3ZhciBjPVlrO2Muc3RvcmFnZS5oYXMoU3RyaW5nKGEpKXx8Yy5zdG9yYWdlLnNldChTdHJpbmcoYSksYigpKTtyZXR1cm4gYy5zdG9yYWdlLmdldChTdHJpbmcoYSkpfTtmdW5jdGlvbiBibChhLGIpe2Z1bmN0aW9uIGMoZyl7dmFyIGg9UmooZyksbD1MaihoLCJwcm90b2NvbCIpLG49TGooaCwiaG9zdCIsITApLHA9TGooaCwicG9ydCIpLHE9TGooaCwicGF0aCIpLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvXC8kLywiIik7aWYobD09PXZvaWQgMHx8bD09PSJodHRwIiYmcD09PSI4MCJ8fGw9PT0iaHR0cHMiJiZwPT09IjQ0MyIpbD0id2ViIixwPSJkZWZhdWx0IjtyZXR1cm5bbCxuLHAscV19Zm9yKHZhciBkPWMoU3RyaW5nKGEpKSxlPWMoU3RyaW5nKGIpKSxmPTA7ZjxkLmxlbmd0aDtmKyspaWYoZFtmXSE9PWVbZl0pcmV0dXJuITE7cmV0dXJuITB9ZnVuY3Rpb24gY2woYSl7cmV0dXJuIGRsKGEpPzE6MH0KZnVuY3Rpb24gZGwoYSl7dmFyIGI9YS5hcmcwLGM9YS5hcmcxO2lmKGEuYW55X29mJiZBcnJheS5pc0FycmF5KGMpKXtmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9RWQoYSx7fSk7RWQoe2FyZzE6Y1tkXSxhbnlfb2Y6dm9pZCAwfSxlKTtpZihjbChlKSlyZXR1cm4hMH1yZXR1cm4hMX1zd2l0Y2goYVsiZnVuY3Rpb24iXSl7Y2FzZSAiX2NuIjpyZXR1cm4gS2coYixjKTtjYXNlICJfY3NzIjpyZXR1cm4gR2coYixjKTtjYXNlICJfZXciOnJldHVybiBIZyhiLGMpO2Nhc2UgIl9lcSI6cmV0dXJuIExnKGIsYyk7Y2FzZSAiX2dlIjpyZXR1cm4gTWcoYixjKTtjYXNlICJfZ3QiOnJldHVybiBPZyhiLGMpO2Nhc2UgIl9sYyI6cmV0dXJuIElnKGIsYyk7Y2FzZSAiX2xlIjpyZXR1cm4gTmcoYixjKTtjYXNlICJfbHQiOnJldHVybiBQZyhiLGMpO2Nhc2UgIl9yZSI6cmV0dXJuIEpnKGIsYyxhLmlnbm9yZV9jYXNlLGFsKDMsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE1hcH0pKTtjYXNlICJfc3ciOnJldHVybiBRZyhiLApjKTtjYXNlICJfdW0iOnJldHVybiBibChiLGMpfXJldHVybiExfTtmdW5jdGlvbiBlbChhLGIsYyxkLGUpe2lmKEFycmF5LmlzQXJyYXkoYSkpe3ZhciBmO3N3aXRjaChhWzBdKXtjYXNlICJmdW5jdGlvbl9pZCI6cmV0dXJuIGFbMV07Y2FzZSAibGlzdCI6Zj1bXTtmb3IodmFyIGc9MTtnPGEubGVuZ3RoO2crKylmLnB1c2goZWwoYVtnXSxiLGMsZCxlKSk7cmV0dXJuIGY7Y2FzZSAibWFjcm8iOnZhciBoPWRbYVsxXV07cmV0dXJuIGg/aC5ldmFsdWF0ZShiLGUpOnZvaWQgMDtjYXNlICJtYXAiOmY9e307Zm9yKHZhciBsPTE7bDxhLmxlbmd0aDtsKz0yKWZbZWwoYVtsXSxiLGMsZCxlKV09ZWwoYVtsKzFdLGIsYyxkLGUpO3JldHVybiBmO2Nhc2UgInRlbXBsYXRlIjpmPVtdO2Zvcih2YXIgbj0hMSxwPTE7cDxhLmxlbmd0aDtwKyspe3ZhciBxPWVsKGFbcF0sYixjLGQsZSk7bj1ufHxxPT09UGs7Zi5wdXNoKHEpfQppZihuKXJldHVybiBuZXcgUWsoZik7cmV0dXJuIGYuam9pbigiIik7Y2FzZSAiZXNjYXBlIjpmPWVsKGFbMV0sYixjLGQsZSk7dmFyIHI7aWYocj1BcnJheS5pc0FycmF5KGFbMV0pJiZhWzFdWzBdPT09Im1hY3JvIil7Zm9yKHZhciB0PSExLHU9ITEsdj0yO3Y8YS5sZW5ndGg7disrKXQ9dHx8YVt2XT09PTgsdT11fHxhW3ZdPT09MTY7cj10JiZ1fWlmKHIpe3ZhciB4PWY7V2t8fChXaz1uZXcgVmspO3JldHVybiBXay5LKHgpfWY9U3RyaW5nKGYpO2Zvcih2YXIgeT0yO3k8YS5sZW5ndGg7eSsrKVVpW2FbeV1dJiYoZj1VaVthW3ldXShmKSk7cmV0dXJuIGY7Y2FzZSAidGFnIjp2YXIgej1hWzFdO2lmKCFjW3pdKXRocm93IEVycm9yKCJVbmFibGUgdG8gcmVzb2x2ZSB0YWcgcmVmZXJlbmNlICIrCnorIi4iKTtyZXR1cm57Ym86YVsyXSxpbmRleDp6fTtjYXNlICJ6YiI6dmFyIEM9e30sRD0oQ1tHZi5ZYl09YVsxXSxDLmFyZzA9ZWwoYVsyXSxiLGMsZCxlKSxDLmFyZzE9ZWwoYVszXSxiLGMsZCxlKSxDLmlnbm9yZV9jYXNlPWVsKGFbNV0sYixjLGQsZSksQyksST1jbChEKSxHPSEhYVs0XTtyZXR1cm4gR3x8SSE9PTI/RyE9PShJPT09MSk6bnVsbDtkZWZhdWx0OnRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGV4cGFuZCB1bmtub3duIFZhbHVlIHR5cGU6ICIrYVswXSsiLiIpO319cmV0dXJuIGF9O2Z1bmN0aW9uIGZsKGEpe3JldHVybiBhJiZhLmluZGV4T2YoInBlbmRpbmc6Iik9PT0wP2dsKGEuc3Vic3RyKDgpKTohMX1mdW5jdGlvbiBnbChhKXtpZihhPT1udWxsfHxhLmxlbmd0aD09PTApcmV0dXJuITE7dmFyIGI9TnVtYmVyKGEpLGM9TmIoKTtyZXR1cm4gYjxjKzNFNSYmYj5jLTlFNX07dmFyIGhsPSExLGlsPSExLGpsPSExLGtsPTAsbGw9ITEsbWw9dm9pZCAwLG5sPVtdO2Z1bmN0aW9uIG9sKGEpe2lmKGtsPT09MClsbCYmbmwmJihubC5sZW5ndGg+PTEwMCYmbmwuc2hpZnQoKSxubC5wdXNoKGEpKTtlbHNlIGlmKHBsKCkpe3ZhciBiPUUoNDEpLGM9TWMoYixbXSk7Yy5sZW5ndGg+PTUwJiZjLnNoaWZ0KCk7Yy5wdXNoKGEpfX1mdW5jdGlvbiBxbCgpe2lsfHwocmwoKSxzbChrbCkpfWZ1bmN0aW9uIHNsKGEpe2lmKCFpbHx8a2w9PT0yJiZhPT09MSlpZihpbD0hMCxqbCYmKGFkKEIsIlRBUHJvZERlYnVnU2lnbmFsIixxbCksamw9ITEpLG1sIT09dm9pZCAwJiYoQS5jbGVhclRpbWVvdXQobWwpLG1sPXZvaWQgMCksa2w9YSxhPT09MSl7dmFyIGI9bmw7bmw9dm9pZCAwO2I9PW51bGx8fGIuZm9yRWFjaChmdW5jdGlvbihjKXtvbChjKX0pfX0KZnVuY3Rpb24gcmwoKXt2YXIgYT1CLmRvY3VtZW50RWxlbWVudC5nZXRBdHRyaWJ1dGUoImRhdGEtdGFnLWFzc2lzdGFudC1wcm9kLXByZXNlbnQiKTtnbChhKT9rbD0xOiFmbChhKXx8aGx8fGpsP2tsPTI6KGpsPSEwLCRjKEIsIlRBUHJvZERlYnVnU2lnbmFsIixxbCwhMSksbWw9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aWx8fChybCgpLHNsKGtsKSk7aGw9ITB9LDIwMCkpfWZ1bmN0aW9uIHBsKCl7aWYoIWxsKXJldHVybiExO3N3aXRjaChrbCl7Y2FzZSAxOmNhc2UgMDpyZXR1cm4hMDtjYXNlIDI6cmV0dXJuITE7ZGVmYXVsdDpyZXR1cm4hMX19O2Z1bmN0aW9uIHRsKCl7dmFyIGE9TWMoImdvb2dsZV90YWdfZGF0YSIse30pO3JldHVybiBhLmljcz1hLmljc3x8bmV3IHVsfXZhciB1bD1mdW5jdGlvbigpe3RoaXMuZW50cmllcz17fTt0aGlzLndhaXRQZXJpb2RUaW1lZE91dD10aGlzLndhc1NldExhdGU9dGhpcy5hY2Nlc3NlZEFueT10aGlzLmFjY2Vzc2VkRGVmYXVsdD10aGlzLnVzZWRJbXBsaWNpdD10aGlzLnVzZWRVcGRhdGU9dGhpcy51c2VkRGVmYXVsdD10aGlzLnVzZWREZWNsYXJlPXRoaXMuYWN0aXZlPSExO3RoaXMuSD1bXX07CnVsLnByb3RvdHlwZS5kZWZhdWx0PWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcpe3RoaXMudXNlZERlZmF1bHR8fHRoaXMudXNlZERlY2xhcmV8fCF0aGlzLmFjY2Vzc2VkRGVmYXVsdCYmIXRoaXMuYWNjZXNzZWRBbnl8fCh0aGlzLndhc1NldExhdGU9ITApO3RoaXMudXNlZERlZmF1bHQ9dGhpcy5hY3RpdmU9ITA7c2IoIlRBR0dJTkciLDE5KTtiPT1udWxsP3NiKCJUQUdHSU5HIiwxOCk6dmwodGhpcyxhLGI9PT0iZ3JhbnRlZCIsYyxkLGUsZixnKX07dWwucHJvdG90eXBlLndhaXRGb3JVcGRhdGU9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD0wO2Q8YS5sZW5ndGg7ZCsrKXZsKHRoaXMsYVtkXSx2b2lkIDAsdm9pZCAwLCIiLCIiLGIsYyl9Owp2YXIgdmw9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoKXt2YXIgbD1hLmVudHJpZXMsbj1sW2JdfHx7fSxwPW4ucmVnaW9uLHE9ZCYmemIoZCk/ZC50b1VwcGVyQ2FzZSgpOnZvaWQgMDtlPWUudG9VcHBlckNhc2UoKTtmPWYudG9VcHBlckNhc2UoKTtpZihlPT09IiJ8fHE9PT1mfHwocT09PWU/cCE9PWY6IXEmJiFwKSl7dmFyIHI9ISEoZyYmZz4wJiZuLnVwZGF0ZT09PXZvaWQgMCksdD17cmVnaW9uOnEsZGVjbGFyZV9yZWdpb246bi5kZWNsYXJlX3JlZ2lvbixpbXBsaWNpdDpuLmltcGxpY2l0LGRlZmF1bHQ6YyE9PXZvaWQgMD9jOm4uZGVmYXVsdCxkZWNsYXJlOm4uZGVjbGFyZSx1cGRhdGU6bi51cGRhdGUscXVpZXQ6cn07aWYoZSE9PSIifHxuLmRlZmF1bHQhPT0hMSlsW2JdPXQ7ciYmQS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bFtiXT09PXQmJnQucXVpZXQmJihzYigiVEFHR0lORyIsMiksYS53YWl0UGVyaW9kVGltZWRPdXQ9ITAsYS5jbGVhclRpbWVvdXQoYix2b2lkIDAsaCksCmEubm90aWZ5TGlzdGVuZXJzKCkpfSxnKX19O2s9dWwucHJvdG90eXBlO2suY2xlYXJUaW1lb3V0PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1bYV0sZT1jLmRlbGVnYXRlZENvbnNlbnRUeXBlcyxmO2ZvcihmIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShmKSYmZVtmXT09PWEmJmQucHVzaChmKTt2YXIgZz10aGlzLmVudHJpZXNbYV18fHt9LGg9dGhpcy5nZXRDb25zZW50U3RhdGUoYSxjKTtpZihnLnF1aWV0KXtnLnF1aWV0PSExO2Zvcih2YXIgbD1tKGQpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXdsKHRoaXMsbi52YWx1ZSl9ZWxzZSBpZihiIT09dm9pZCAwJiZoIT09Yilmb3IodmFyIHA9bShkKSxxPXAubmV4dCgpOyFxLmRvbmU7cT1wLm5leHQoKSl3bCh0aGlzLHEudmFsdWUpfTsKay51cGRhdGU9ZnVuY3Rpb24oYSxiLGMpe3RoaXMudXNlZERlZmF1bHR8fHRoaXMudXNlZERlY2xhcmV8fHRoaXMudXNlZFVwZGF0ZXx8IXRoaXMuYWNjZXNzZWRBbnl8fCh0aGlzLndhc1NldExhdGU9ITApO3RoaXMudXNlZFVwZGF0ZT10aGlzLmFjdGl2ZT0hMDtpZihiIT1udWxsKXt2YXIgZD10aGlzLmdldENvbnNlbnRTdGF0ZShhLGMpLGU9dGhpcy5lbnRyaWVzOyhlW2FdPWVbYV18fHt9KS51cGRhdGU9Yj09PSJncmFudGVkIjt0aGlzLmNsZWFyVGltZW91dChhLGQsYyl9fTsKay5kZWNsYXJlPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy51c2VkRGVjbGFyZT10aGlzLmFjdGl2ZT0hMDt2YXIgZj10aGlzLmVudHJpZXMsZz1mW2FdfHx7fSxoPWcuZGVjbGFyZV9yZWdpb24sbD1jJiZ6YihjKT9jLnRvVXBwZXJDYXNlKCk6dm9pZCAwO2Q9ZC50b1VwcGVyQ2FzZSgpO2U9ZS50b1VwcGVyQ2FzZSgpO2lmKGQ9PT0iInx8bD09PWV8fChsPT09ZD9oIT09ZTohbCYmIWgpKXt2YXIgbj17cmVnaW9uOmcucmVnaW9uLGRlY2xhcmVfcmVnaW9uOmwsZGVjbGFyZTpiPT09ImdyYW50ZWQiLGltcGxpY2l0OmcuaW1wbGljaXQsZGVmYXVsdDpnLmRlZmF1bHQsdXBkYXRlOmcudXBkYXRlLHF1aWV0OmcucXVpZXR9O2lmKGQhPT0iInx8Zy5kZWNsYXJlIT09ITEpZlthXT1ufX07CmsuaW1wbGljaXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLnVzZWRJbXBsaWNpdD0hMDt2YXIgYz10aGlzLmVudHJpZXMsZD1jW2FdPWNbYV18fHt9O2QuaW1wbGljaXQhPT0hMSYmKGQuaW1wbGljaXQ9Yj09PSJncmFudGVkIil9OwprLmdldENvbnNlbnRTdGF0ZT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuZW50cmllcyxkPWNbYV18fHt9LGU9ZC51cGRhdGU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYi51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHMpe3ZhciBmPWIuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbYV07aWYoZj09PTMpcmV0dXJuIDE7aWYoZj09PTIpcmV0dXJuIDJ9ZWxzZSBpZihlPWQuZGVmYXVsdCxlIT09dm9pZCAwKXJldHVybiBlPzE6MjtpZihiPT1udWxsPzA6Yi5kZWxlZ2F0ZWRDb25zZW50VHlwZXMuaGFzT3duUHJvcGVydHkoYSkpe3ZhciBnPWIuZGVsZWdhdGVkQ29uc2VudFR5cGVzW2FdLGg9Y1tnXXx8e307ZT1oLnVwZGF0ZTtpZihlIT09dm9pZCAwKXJldHVybiBlPzE6MjtpZihiLnVzZWRDb250YWluZXJTY29wZWREZWZhdWx0cyl7dmFyIGw9Yi5jb250YWluZXJTY29wZWREZWZhdWx0c1tnXTtpZihsPT09MylyZXR1cm4gMTtpZihsPT09MilyZXR1cm4gMn1lbHNlIGlmKGU9CmguZGVmYXVsdCxlIT09dm9pZCAwKXJldHVybiBlPzE6Mn1lPWQuZGVjbGFyZTtpZihlIT09dm9pZCAwKXJldHVybiBlPzE6MjtlPWQuaW1wbGljaXQ7cmV0dXJuIGUhPT12b2lkIDA/ZT8zOjQ6MH07ay5hZGRMaXN0ZW5lcj1mdW5jdGlvbihhLGIpe3RoaXMuSC5wdXNoKHtjb25zZW50VHlwZXM6YSxpZTpifSl9O3ZhciB3bD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2M8YS5ILmxlbmd0aDsrK2Mpe3ZhciBkPWEuSFtjXTtBcnJheS5pc0FycmF5KGQuY29uc2VudFR5cGVzKSYmZC5jb25zZW50VHlwZXMuaW5kZXhPZihiKSE9PS0xJiYoZC54bz0hMCl9fTt1bC5wcm90b3R5cGUubm90aWZ5TGlzdGVuZXJzPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7Yzx0aGlzLkgubGVuZ3RoOysrYyl7dmFyIGQ9dGhpcy5IW2NdO2lmKGQueG8pe2QueG89ITE7dHJ5e2QuaWUoe2NvbnNlbnRFdmVudElkOmEsY29uc2VudFByaW9yaXR5SWQ6Yn0pfWNhdGNoKGUpe319fX07dmFyIHhsPSExLHlsPSExLHpsPXt9LEFsPXtkZWxlZ2F0ZWRDb25zZW50VHlwZXM6e30sY29yZVBsYXRmb3JtU2VydmljZXM6e30sdXNlZENvcmVQbGF0Zm9ybVNlcnZpY2VzOiExLHNlbGVjdGVkQWxsQ29yZVBsYXRmb3JtU2VydmljZXM6ITEsY29udGFpbmVyU2NvcGVkRGVmYXVsdHM6KHpsLmFkX3N0b3JhZ2U9MSx6bC5hbmFseXRpY3Nfc3RvcmFnZT0xLHpsLmFkX3VzZXJfZGF0YT0xLHpsLmFkX3BlcnNvbmFsaXphdGlvbj0xLHpsKSx1c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM6ITF9O2Z1bmN0aW9uIEJsKGEpe3ZhciBiPXRsKCk7Yi5hY2Nlc3NlZEFueT0hMDtyZXR1cm4oemIoYSk/W2FdOmEpLmV2ZXJ5KGZ1bmN0aW9uKGMpe3N3aXRjaChiLmdldENvbnNlbnRTdGF0ZShjLEFsKSl7Y2FzZSAxOmNhc2UgMzpyZXR1cm4hMDtjYXNlIDI6Y2FzZSA0OnJldHVybiExO2RlZmF1bHQ6cmV0dXJuITB9fSl9CmZ1bmN0aW9uIENsKGEpe3ZhciBiPXRsKCk7Yi5hY2Nlc3NlZEFueT0hMDtyZXR1cm4gYi5nZXRDb25zZW50U3RhdGUoYSxBbCl9ZnVuY3Rpb24gRGwoYSl7dmFyIGI9dGwoKTtiLmFjY2Vzc2VkQW55PSEwO3JldHVybiEoYi5lbnRyaWVzW2FdfHx7fSkucXVpZXR9ZnVuY3Rpb24gRWwoKXtpZighWWYoNSkpcmV0dXJuITE7dmFyIGE9dGwoKTthLmFjY2Vzc2VkQW55PSEwO2lmKGEuYWN0aXZlKXJldHVybiEwO2lmKCFBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHMpcmV0dXJuITE7Zm9yKHZhciBiPW0oT2JqZWN0LmtleXMoQWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHMpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSlpZihBbC5jb250YWluZXJTY29wZWREZWZhdWx0c1tjLnZhbHVlXSE9PTEpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gRmwoYSxiKXt0bCgpLmFkZExpc3RlbmVyKGEsYil9CmZ1bmN0aW9uIEdsKGEsYil7dGwoKS5ub3RpZnlMaXN0ZW5lcnMoYSxiKX1mdW5jdGlvbiBIbChhLGIpe2lmKGIuZXZlcnkoRGwpKWEoe30pO2Vsc2V7dmFyIGM9ITE7RmwoYixmdW5jdGlvbihkKXshYyYmYi5ldmVyeShEbCkmJihjPSEwLGEoZCkpfSl9fQpmdW5jdGlvbiBJbChhLGIpe3ZhciBjPXpiKGIpP1tiXTpiLGQ9e30sZT1mdW5jdGlvbigpe3JldHVybiBjLmZpbHRlcihmdW5jdGlvbihoKXtyZXR1cm4gQmwoaCkmJiFkW2hdfSl9LGY9ZSgpO2lmKGYubGVuZ3RoIT09Yy5sZW5ndGgpe3ZhciBnPWZ1bmN0aW9uKGgpe2Zvcih2YXIgbD1tKGgpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKWRbbi52YWx1ZV09ITB9O2coZik7RmwoYyxmdW5jdGlvbihoKXtmdW5jdGlvbiBsKHEpe3EubGVuZ3RoIT09MCYmKGcocSksaC5jb25zZW50VHlwZXM9cSxhKGgpKX12YXIgbj1lKCk7aWYobi5sZW5ndGghPT0wKXt2YXIgcD1PYmplY3Qua2V5cyhkKS5sZW5ndGg7bi5sZW5ndGgrcD49Yy5sZW5ndGg/bChuKTpBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtsKGUoKSl9LDUwMCl9fSl9fTt2YXIgSmw9ITE7ZnVuY3Rpb24gS2woYSxiKXt2YXIgYz13aygpLGQ9dGsoKTtFKDI2KTt2YXIgZT1JZig0Nyk/MDpJZig1MCk/MTozLGY9WGooKTtpZihwbCgpKXt2YXIgZz1MbCgiSU5JVCIpO2cuY29udGFpbmVyTG9hZFNvdXJjZT1hIT1udWxsP2E6MDtiJiYoZy5wYXJlbnRUYXJnZXRSZWZlcmVuY2U9Yik7Zy5hbGlhc2VzPWM7Zy5kZXN0aW5hdGlvbnM9ZDtlIT09dm9pZCAwJiYoZy5ndGc9e3NvdXJjZTplLG1QYXRoOmYhPW51bGw/ZjoiIn0pO29sKGcpfX0KZnVuY3Rpb24gTWwoYSl7dmFyIGIsYyxkLGU7Yj1hLnRhcmdldElkO2M9YS5yZXF1ZXN0O2Q9YS5xYjtlPWEuaXNCYXRjaGVkO3ZhciBmO2lmKGY9cGwoKSl7dmFyIGc7YTpzd2l0Y2goYy5lbmRwb2ludCl7Y2FzZSA2ODpjYXNlIDY5OmNhc2UgMTk6Y2FzZSA2MjpjYXNlIDQ3Omc9ITA7YnJlYWsgYTtkZWZhdWx0Omc9ITF9Zj0hZ31pZihmKXt2YXIgaD1MbCgiR1RBR19ISVQiLHtldmVudElkOmQuZXZlbnRJZCxwcmlvcml0eUlkOmQucHJpb3JpdHlJZH0pO2gudGFyZ2V0PWI7aC51cmw9Yy51cmw7Yy5wb3N0Qm9keSYmKGgucG9zdEJvZHk9Yy5wb3N0Qm9keSk7aC5wYXJhbWV0ZXJFbmNvZGluZz1jLnBhcmFtZXRlckVuY29kaW5nO2guZW5kcG9pbnQ9Yy5lbmRwb2ludDtlIT09dm9pZCAwJiYoaC5pc0JhdGNoZWQ9ZSk7b2woaCl9fWZ1bmN0aW9uIE5sKGEpe3BsKCkmJk1sKGEoKSl9CmZ1bmN0aW9uIExsKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7Yi5ncm91cElkPU9sO3ZhciBjLGQ9YixlPVBsLGY9e3B1YmxpY0lkOlFsfTtkLmV2ZW50SWQhPW51bGwmJihmLmV2ZW50SWQ9ZC5ldmVudElkKTtkLnByaW9yaXR5SWQhPW51bGwmJihmLnByaW9yaXR5SWQ9ZC5wcmlvcml0eUlkKTtkLmV2ZW50TmFtZSYmKGYuZXZlbnROYW1lPWQuZXZlbnROYW1lKTtkLmdyb3VwSWQmJihmLmdyb3VwSWQ9ZC5ncm91cElkKTtkLnRhZ05hbWUmJihmLnRhZ05hbWU9ZC50YWdOYW1lKTtjPXtjb250YWluZXJQcm9kdWN0OiJHVE0iLGtleTpmLHZlcnNpb246ZSxtZXNzYWdlVHlwZTphfTtjLmNvbnRhaW5lclByb2R1Y3Q9Smw/Ik9HVCI6IkdUTSI7Yy5rZXkudGFyZ2V0UmVmPVJsO3JldHVybiBjfXZhciBRbD0iIixQbD0iIixSbD17Y3RpZDoiIixpc0Rlc3RpbmF0aW9uOiExfSxPbDsKZnVuY3Rpb24gU2woYSl7dmFyIGI9RSg1KSxjPUlmKDQ1KSxkPXNrKCksZT1FKDYpLGY9RSgxKTtFKDIzKTtrbD0wO2xsPSEwO3JsKCk7T2w9YTtRbD1iO1BsPWY7Smw9YztSbD17Y3RpZDpiLGlzRGVzdGluYXRpb246ZCxjYW5vbmljYWxJZDplfX07ZnVuY3Rpb24gVGwoYSxiLGMsZCl7aWYocGwoKSl7dmFyIGU9Yi5NO01sKHt0YXJnZXRJZDpkfHxbYi50YXJnZXQuZGVzdGluYXRpb25JZF0scmVxdWVzdDp7dXJsOmEscGFyYW1ldGVyRW5jb2Rpbmc6MixlbmRwb2ludDpjfSxxYjp7ZXZlbnRJZDplLmV2ZW50SWQscHJpb3JpdHlJZDplLnByaW9yaXR5SWR9LEZqOntldmVudElkOlEoYixILkoudWYpLHByaW9yaXR5SWQ6UShiLEguSi52Zil9fSl9fTtmdW5jdGlvbiBVbChhLGIsYyl7dmFyIGQ9Imh0dHBzOi8vIithK2I7cmV0dXJuIGM/ZnVuY3Rpb24oKXtyZXR1cm4gV2ooKT9YaigpK2MrYjpkfTpmdW5jdGlvbigpe3JldHVybiBkfX07dmFyIFZsPXt9LFdsPShWbFsyMl09VWwoInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIsIi9jY20vY29udmVyc2lvbiIsIi9hcy9kIiksVmxbNjBdPVVsKCJwYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIsIi9jY20vY29udmVyc2lvbiIsIi9ncyIpLFZsWzIzXT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvZy9kIiksVmwpO3ZhciBYbD17fSxZbD0oWGxbNV09VWwoInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIsIi9wYWdlYWQvY29udmVyc2lvbiIpLFhsWzZdPVVsKCJwYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIsIi9wYWdlYWQvY29udmVyc2lvbiIsIi9ncyIpLFhsWzhdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvMXAtY29udmVyc2lvbiIpLFhsWzY2XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkL3Vjb252ZXJzaW9uIiksWGxbNjNdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iKSxYbFs2NF09VWwoInBhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tIiwiL3BhZ2VhZC9jb252ZXJzaW9uIiwiL2dzIiksWGxbNjVdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvMXAtY29udmVyc2lvbiIpLFhsWzc0XT1mdW5jdGlvbigpe3JldHVybiBYaigpKyIvYXMvcC9jIn0sWGwpO3ZhciBabD17fSwkbD0oWmxbNDVdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9jY20vY29sbGVjdCIpLFpsWzQ2XT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvY2NtL2NvbGxlY3QiLCIvZ3MiKSxabFs2OV09VWwoImFkLmRvdWJsZWNsaWNrLm5ldCIsIi9jY20vcy9jb2xsZWN0IiksWmxbNThdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvc2V0X3BhcnRpdGlvbmVkX2Nvb2tpZSIpLFpsWzU3XT1VbCgid3d3Lmdvb2dsZWFkc2VydmljZXMuY29tIiwiL3BhZ2VhZC9zZXRfcGFydGl0aW9uZWRfY29va2llIiksWmwpO3ZhciBhbT17fSxibT0oYW1bOV09VWwoImdvb2dsZWFkcy5nLmRvdWJsZWNsaWNrLm5ldCIsIi9wYWdlYWQvdmlld3Rocm91Z2hjb252ZXJzaW9uIiksYW1bNjhdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9ybWt0L2NvbGxlY3QiKSxhbSk7dmFyIGNtPXt9LGRtPShjbVsxMV09VWwoInd3dy5nb29nbGUuY29tIiwiL3BhZ2VhZC9mb3JtLWRhdGEiLCIvZCIpLGNtWzIxXT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvY2NtL2Zvcm0tZGF0YSIsIi9kIiksY21bNzJdPVVsKCJnb29nbGUuY29tIiwiL3BhZ2VhZC9mb3JtLWRhdGEiLCIvZCIpLGNtWzczXT1VbCgiZ29vZ2xlLmNvbSIsIi9jY20vZm9ybS1kYXRhIiwiL2QiKSxjbSk7dmFyIGVtPXt9LGZtPShlbVs1MV09VWwoInd3dy5nb29nbGUuY29tIiwiL3RyYXZlbC9mbGlnaHRzL2NsaWNrL2NvbnZlcnNpb24iKSxlbSk7dmFyIGdtPXt9LGhtPShnbVsxXT1mdW5jdGlvbigpe3JldHVybiJodHRwczovL2FkLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eTsifSxnbVsyXT1mdW5jdGlvbigpe3JldHVybihXaigpP1hqKCk6Imh0dHBzOi8vYWRlLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIpKyIvZGRtL2FjdGl2aXR5IisoTSg0NjcpPyI7IjoiLyIpfSxnbVszXT1mdW5jdGlvbihhKXtyZXR1cm4iaHR0cHM6Ly8iK2EubHIrIi5mbHMuZG91YmxlY2xpY2submV0L2FjdGl2aXR5aTsifSxnbSk7ZnVuY3Rpb24gaW0oYSl7c2IoIkhFQUxUSCIsYSl9O3ZhciBqbT17YmE6e1B0OiJhd191c2VyX2RhdGFfY2FjaGUiLG9pOiJjb29raWVfZGVwcmVjYXRpb25fbGFiZWwiLGJoOiJkaWFnbm9zdGljc19wYWdlX2lkIixvcDoiZW1lbW8iLGR1OiJlbV9yZWdpc3RyeSIsU2k6ImVhYiIscnU6ImZsX3VzZXJfZGF0YV9jYWNoZSIsdHU6ImdhNF91c2VyX2RhdGFfY2FjaGUiLEx1OiJpZGNfcHZfY2xhaW0iLFNlOiJpcF9nZW9fZGF0YV9jYWNoZSIsWGk6ImlwX2dlb19mZXRjaF9pbl9wcm9ncmVzcyIsam46Im5iX2RhdGEiLFRxOiJwYWdlX2V4cGVyaW1lbnRfaWRzIixsbjoicGxkIixWZToicHRfZGF0YSIsbW46InB0X2xpc3RlbmVyX3NldCIsa2o6InJldHJ5X2NvbnRhaW5lcnMiLE9oOiJzZXJ2aWNlX3dvcmtlcl9lbmRwb2ludCIsWnE6InNoYXJlZF91c2VyX2lkIixhcjoic2hhcmVkX3VzZXJfaWRfcmVxdWVzdGVkIixzajoic2hhcmVkX3VzZXJfaWRfc291cmNlIixidjoiYXdoIixocjoidW5pdmVyc2FsX2NsYWltX3JlZ2lzdHJ5In19O3ZhciBrbT1mdW5jdGlvbihhKXtyZXR1cm4gdGYoZnVuY3Rpb24oYil7Zm9yKHZhciBjIGluIGEpaWYoYj09PWFbY10mJiEvXlswLTldKyQvLnRlc3QoYykpcmV0dXJuITA7cmV0dXJuITF9KX0oam0uYmEpOwpmdW5jdGlvbiBsbShhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO2lmKGttKGEpKXt2YXIgYyxkLGU9KGQ9KGM9TWMoImdvb2dsZV90YWdfZGF0YSIse30pKS54Y2QpIT1udWxsP2Q6Yy54Y2Q9e307aWYoZVthXSlyZXR1cm4gZVthXTtpZihiKXt2YXIgZj12b2lkIDAsZz0xLGg9e30sbD17c2V0OmZ1bmN0aW9uKG4pe2Y9bjtsLm5vdGlmeSgpfSxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sc3Vic2NyaWJlOmZ1bmN0aW9uKG4pe2hbU3RyaW5nKGcpXT1uO3JldHVybiBnKyt9LHVuc3Vic2NyaWJlOmZ1bmN0aW9uKG4pe3ZhciBwPVN0cmluZyhuKTtyZXR1cm4gaC5oYXNPd25Qcm9wZXJ0eShwKT8oZGVsZXRlIGhbcF0sITApOiExfSxub3RpZnk6ZnVuY3Rpb24oKXtmb3IodmFyIG49bShPYmplY3Qua2V5cyhoKSkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpe3ZhciBxPXAudmFsdWU7dHJ5e2hbcV0oYSxmKX1jYXRjaChyKXt9fX19O3JldHVybiBlW2FdPWx9fX0KZnVuY3Rpb24gbW0oYSxiKXt2YXIgYz1sbShhLCEwKTtjJiZjLnNldChiKX1mdW5jdGlvbiBubShhKXt2YXIgYjtyZXR1cm4oYj1sbShhKSk9PW51bGw/dm9pZCAwOmIuZ2V0KCl9ZnVuY3Rpb24gb20oYSxiKXt2YXIgYz1sbShhKTtpZighYyl7Yz1sbShhLCEwKTtpZighYylyZXR1cm47Yy5zZXQoYil9cmV0dXJuIGMuZ2V0KCl9ZnVuY3Rpb24gcG0oYSxiKXtpZih0eXBlb2YgYj09PSJmdW5jdGlvbiIpe3ZhciBjO3JldHVybihjPWxtKGEsITApKT09bnVsbD92b2lkIDA6Yy5zdWJzY3JpYmUoYil9fWZ1bmN0aW9uIHFtKGEsYil7dmFyIGM9bG0oYSk7cmV0dXJuIGM/Yy51bnN1YnNjcmliZShiKTohMX07dmFyIHNtPWZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuSz0hMX07c20ucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt0aGlzLkt8fCh0aGlzLkg9dG0oKSx0aGlzLkhbIjAiXSYmb20oam0uYmEuU2UsSlNPTi5zdHJpbmdpZnkodGhpcy5IKSkpfTsKdmFyIHhtPWZ1bmN0aW9uKCl7dmFyIGE9dW0sYj12bSxjPXZvaWQgMCxkPWZ1bmN0aW9uKCl7YyE9PXZvaWQgMCYmcW0oam0uYmEuU2UsYyk7dHJ5e3ZhciBmPW5tKGptLmJhLlNlKTtiLkg9SlNPTi5wYXJzZShmKX1jYXRjaChnKXtQKDEyMyksaW0oMiksYi5IPXt9fWIuSz0hMDthKCl9LGU9bm0oam0uYmEuU2UpO2U/ZChlKTooYz1wbShqbS5iYS5TZSxkKSx3bSgpKX0sd209ZnVuY3Rpb24oKXtpZighbm0oam0uYmEuWGkpKXttbShqbS5iYS5YaSwhMCk7dmFyIGE9ZnVuY3Rpb24oYil7bW0oam0uYmEuU2UsYnx8Int9Iik7bW0oam0uYmEuWGksITEpfTt0cnl7QS5mZXRjaCgiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9jY20vZ2VvIix7bWV0aG9kOiJHRVQiLGNhY2hlOiJuby1zdG9yZSIsbW9kZToiY29ycyIsY3JlZGVudGlhbHM6Im9taXQifSkudGhlbihmdW5jdGlvbihiKXtiLm9rP2IudGV4dCgpLnRoZW4oZnVuY3Rpb24oYyl7YShjKX0sZnVuY3Rpb24oKXthKCl9KTphKCl9LGZ1bmN0aW9uKCl7YSgpfSl9Y2F0Y2goYil7YSgpfX19LAp0bT1mdW5jdGlvbigpe3ZhciBhPUUoMjIpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShxYihhKSl9Y2F0Y2goYil7cmV0dXJuIFAoMTIzKSxpbSgyKSx7fX19LHltPWZ1bmN0aW9uKCl7cmV0dXJuIHZtLkhbIjAiXXx8IiJ9LHptPWZ1bmN0aW9uKCl7cmV0dXJuIHZtLkhbIjEiXXx8IiJ9LEFtPWZ1bmN0aW9uKCl7dmFyIGE9dm0sYj0hMTtyZXR1cm4gYn0sQm09ZnVuY3Rpb24oKXtyZXR1cm4gdm0uSFsiNiJdIT09ITF9LENtPWZ1bmN0aW9uKCl7dmFyIGE9dm0sYj0hMTtyZXR1cm4gYn0sRG09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiOwpyZXR1cm4gYn0sRW09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO3JldHVybiBifSx2bT1uZXcgc207ZnVuY3Rpb24gRm0oYSl7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuImh0dHBzOi8vIisoRG0oKXx8Ind3dyIpKyIuZ29vZ2xlLWFuYWx5dGljcy5jb20vIithfWZ1bmN0aW9uIEdtKGEpe2E9YT09PXZvaWQgMD8iZy9jb2xsZWN0IjphO3ZhciBiPURtKCk7cmV0dXJuImh0dHBzOi8vIisoYj9iKyIuIjoiIikrImFuYWx5dGljcy5nb29nbGUuY29tLyIrYX12YXIgSG09e30sSW09KEhtWzE3XT1mdW5jdGlvbigpe3JldHVybiBXaigpJiYhRG0oKT9YaigpKyIvYWcvZy9jIjpHbSgpfSxIbVsxNl09ZnVuY3Rpb24oKXtyZXR1cm4gV2ooKSYmIURtKCk/WGooKSsiL2dhL2cvYyI6Rm0oKX0sSG1bNjddPWZ1bmN0aW9uKCl7dmFyIGE7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuIERtKCk/IiI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vIithfSxIbSk7ZnVuY3Rpb24gSm0oYSxiLGMpe3ZhciBkPVVsKGIsIi9tZWFzdXJlbWVudC9jb252ZXJzaW9uIixjKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gRG0oKT9hKCJtZWFzdXJlbWVudC9jb252ZXJzaW9uIik6ZCgpfX12YXIgS209e30sTG09KEttWzU1XT1KbShGbSwicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvZ3MiKSxLbVs1NF09Sm0oR20sInd3dy5nb29nbGUuY29tIiwiL2ciKSxLbSk7dmFyIE1tPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sV2wsWWwsJGwsYm0sZG0sZm0saG0sTG0sSW0pO2Z1bmN0aW9uIE5tKGEsYil7dmFyIGM9T2JqZWN0LmtleXMoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBiW2RdIT1udWxsfSkubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkKyI9IitiW2RdfSkuam9pbigiJiIpO3JldHVybiBNbVthXSh2b2lkIDApKyI/IitjfTt2YXIgT209e30sUG09KE9tLnRkcD0xLE9tLmV4cD0xLE9tLmd0bT0xLE9tLnBpZD0xLE9tLmRsPTEsT20uc2VxPTEsT20udD0xLE9tLnY9MSxPbSksUm09ZnVuY3Rpb24oKXt2YXIgYT1RbTtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGEuSFtiXX0pfSxTbT1mdW5jdGlvbihhLGIsYyl7aWYoYS5IW2JdPT09dm9pZCAwfHwoYz09PXZvaWQgMD8wOmMpKWEuSFtiXT0hMH0sVG09ZnVuY3Rpb24oYSl7YS5mb3JFYWNoKGZ1bmN0aW9uKGIpe1BtW2JdfHwoUW0uSFtiXT0hMSl9KX0sUW09bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuSz17fX07ZnVuY3Rpb24gVW0oYSxiLGMpe3ZhciBkPWM9PT12b2lkIDA/ITA6YyxlPVFtO2UuS1thXT1iOyhkPT09dm9pZCAwfHxkKSYmU20oZSxhKX1mdW5jdGlvbiBWbShhLGIpe1NtKFFtLGEsYj09PXZvaWQgMD8hMTpiKX07ZnVuY3Rpb24gV20oYSl7dmFyIGI9MDthLkdjLmZvckVhY2goZnVuY3Rpb24oYyl7Ynw9MTw8Y30pO3JldHVybiBifWZ1bmN0aW9uIFhtKCl7cmV0dXJue3RvdGFsOjAsamI6MCxHYzpuZXcgU2V0LGxmOnt9fX1mdW5jdGlvbiBZbShhLGIsYyxkKXt2YXIgZT1PYmplY3Qua2V5cyhhLm5mKS5zb3J0KGZ1bmN0aW9uKGYsZyl7cmV0dXJuIE51bWJlcihmKS1OdW1iZXIoZyl9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuW2YsYihhLm5mW2ZdKV19KS5maWx0ZXIoZnVuY3Rpb24oZil7cmV0dXJuIGZbMV0hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuam9pbihjKX0pLmpvaW4oZCk7cmV0dXJuIGU/ZTp2b2lkIDB9CmZ1bmN0aW9uIFptKGEsYil7dmFyIGMsZCxlO2M9Yz09PXZvaWQgMD8iXyI6YztkPWQ9PT12b2lkIDA/IjsiOmQ7ZT1lPT09dm9pZCAwPyJ+IjplO2Zvcih2YXIgZj1bXSxnPW0oT2JqZWN0LmtleXMoYS5sZikuc29ydCgpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPVltKGEubGZbbF0sYixjLGQpO2lmKG4pe3ZhciBwPXZvaWQgMDtmLnB1c2goIiIrKChwPWwpIT1udWxsP3A6IiIpK2Qrbil9fXJldHVybiBmLmxlbmd0aD9mLmpvaW4oZSk6dm9pZCAwfQpmdW5jdGlvbiAkbShhKXthLmpiPTA7YS5HYy5jbGVhcigpO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKGEubGYpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9YS5sZltjLnZhbHVlXTtkLmpiPTA7ZC5HYy5jbGVhcigpO2Zvcih2YXIgZT1tKE9iamVjdC5rZXlzKGQubmYpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9ZC5uZltmLnZhbHVlXTtnLmpiPTA7Zy5HYy5jbGVhcigpfX19CmZ1bmN0aW9uIGFuKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPzE6ZDthLnRvdGFsKz1kO2EuamIrPWQ7dmFyIGYsZz1iPT09dm9pZCAwPyIiOmI7Zj1hLmxmW2ddfHwoYS5sZltnXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXQsbmY6e319KTtmLnRvdGFsKz1kO2YuamIrPWQ7dmFyIGgsbD1TdHJpbmcoYyk7aD1mLm5mW2xdfHwoZi5uZltsXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXR9KTtoLnRvdGFsKz1kO2guamIrPWQ7ZSE9PXZvaWQgMCYmKGEuR2MuYWRkKGUpLGYuR2MuYWRkKGUpLGguR2MuYWRkKGUpKX07dmFyIGJuPWZ1bmN0aW9uKCl7dGhpcy5IPVhtKCl9O2JuLnByb3RvdHlwZS5pbmNyZW1lbnQ9ZnVuY3Rpb24oYSxiKXthbih0aGlzLkgsYSxiKX07dmFyIGNuPW5ldyBibjtmdW5jdGlvbiBkbihhKXt2YXIgYj1TdHJpbmcoYVtHZi5ZYl18fCIiKS5yZXBsYWNlKC9fL2csIiIpO3JldHVybiBTYihiLCJjdnQiKT8iY3Z0IjpifXZhciBlbj1BLmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCI/Z3RtX2xhdGVuY3k9Iik+PTB8fEEubG9jYXRpb24uc2VhcmNoLmluZGV4T2YoIiZndG1fbGF0ZW5jeT0iKT49MDt2YXIgZ249ZnVuY3Rpb24oKXt2YXIgYT1mbjtyZXR1cm4gTSg2MDMpJiZJZig2NSwhMSkmJiFhLlp9LGZuPW5ldyBmdW5jdGlvbihhKXt0aGlzLlI9YSgpO3ZhciBiPUpmKDI3KTt0aGlzLk49ZW58fHRoaXMuUjxiO3ZhciBjPUpmKDQyKTt0aGlzLlo9ZW58fHRoaXMuUj49MS1jO3ZhciBkPU0oNjAzKSYmSWYoNjUsITEpO3RoaXMuSz10aGlzLlp8fGQ7dmFyIGU9SmYoMjcpLGY9SmYoNjMpO3RoaXMuSD1lbnx8Zj09PTF8fHRoaXMuUj49ZSYmdGhpcy5SPGUrZn0oZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb20oKX0pO3ZhciBobj1mdW5jdGlvbigpe3RoaXMuSD17fX07aG4ucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjKXtpZihmbi5LKXt2YXIgZD1qbihiLGMpO2lmKGQpe3ZhciBlLGY9YjtmPT09NCYmKGY9NSk7dmFyIGc9dGhpcy5IW2ZdO2d8fChnPXRoaXMuSFtmXT17fSk7ZT1nO3ZhciBoPWVbZF07aHx8KGg9ZVtkXT1bXSk7aC5wdXNoKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYSkpO2NuLmluY3JlbWVudChhLmRlc3RpbmF0aW9uSWQsYS5lbmRwb2ludCk7YS5lbmRwb2ludCE9PTU2JiZhLmVuZHBvaW50IT09NjEmJlZtKCJtZGUiLCEwKX19fTsKdmFyIG1uPWZ1bmN0aW9uKGEsYil7dmFyIGM9a24sZD1qbihhLGIpO2lmKGQpe3ZhciBlPWxuKGMsYSk7aWYoZSl7dmFyIGY9ZVtkXTtmJiYoZVtkXT1mLmZpbHRlcihmdW5jdGlvbihnKXtyZXR1cm4hZy5Fb30pKX19fSxsbj1mdW5jdGlvbihhLGIpe2I9PT00JiYoYj01KTtyZXR1cm4gYS5IW2JdfSxqbj1mdW5jdGlvbihhLGIpe3ZhciBjPWI7aWYoYlswXT09PSIvIil7dmFyIGQ7Yz0oKGQ9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmQub3JpZ2luKStifXRyeXt2YXIgZT1uZXcgVVJMKGMpO3JldHVybiBhPT09Mj9lLm9yaWdpbjplLm9yaWdpbitlLnBhdGhuYW1lfWNhdGNoKGYpe319LGtuPW5ldyBobjsKZnVuY3Rpb24gbm4oYSl7c3dpdGNoKGEpe2Nhc2UgInNjcmlwdC1zcmMiOnJldHVybiA0O2Nhc2UgInNjcmlwdC1zcmMtZWxlbSI6cmV0dXJuIDU7Y2FzZSAiZnJhbWUtc3JjIjpyZXR1cm4gMjtjYXNlICJjb25uZWN0LXNyYyI6cmV0dXJuIDE7Y2FzZSAiaW1nLXNyYyI6cmV0dXJuIDN9fTtmdW5jdGlvbiBvbihhLGIsYyl7dmFyIGQsZT1hLkdvb2dsZWJRaENzTztlfHwoZT17fSxhLkdvb2dsZWJRaENzTz1lKTtkPWU7aWYoZFtiXSlyZXR1cm4hMTtkW2JdPVtdO2RbYl1bMF09YztyZXR1cm4hMH07dmFyIHBuLHFuO2E6e2Zvcih2YXIgcm49WyJDTE9TVVJFX0ZMQUdTIl0sc249UmEsdG49MDt0bjxybi5sZW5ndGg7dG4rKylpZihzbj1zbltyblt0bl1dLHNuPT1udWxsKXtxbj1udWxsO2JyZWFrIGF9cW49c259dmFyIHVuPXFuJiZxbls2MTA0MDEzMDFdO3BuPXVuIT1udWxsP3VuOiExO2Z1bmN0aW9uIHZuKCl7dmFyIGE9UmEubmF2aWdhdG9yO2lmKGEpe3ZhciBiPWEudXNlckFnZW50O2lmKGIpcmV0dXJuIGJ9cmV0dXJuIiJ9dmFyIHduLHhuPVJhLm5hdmlnYXRvcjt3bj14bj94bi51c2VyQWdlbnREYXRhfHxudWxsOm51bGw7ZnVuY3Rpb24geW4oYSl7aWYoIXBufHwhd24pcmV0dXJuITE7Zm9yKHZhciBiPTA7Yjx3bi5icmFuZHMubGVuZ3RoO2IrKyl7dmFyIGM9d24uYnJhbmRzW2JdLmJyYW5kO2lmKGMmJmMuaW5kZXhPZihhKSE9LTEpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gem4oYSl7cmV0dXJuIHZuKCkuaW5kZXhPZihhKSE9LTF9O2Z1bmN0aW9uIEFuKCl7cmV0dXJuIHBuPyEhd24mJnduLmJyYW5kcy5sZW5ndGg+MDohMX1mdW5jdGlvbiBCbigpe3JldHVybiBBbigpPyExOnpuKCJPcGVyYSIpfWZ1bmN0aW9uIENuKCl7cmV0dXJuIHpuKCJGaXJlZm94Iil8fHpuKCJGeGlPUyIpfWZ1bmN0aW9uIERuKCl7cmV0dXJuIEFuKCk/eW4oIkNocm9taXVtIik6KHpuKCJDaHJvbWUiKXx8em4oIkNyaU9TIikpJiYhKEFuKCk/MDp6bigiRWRnZSIpKXx8em4oIlNpbGsiKX07ZnVuY3Rpb24gRW4oKXtyZXR1cm4gcG4/ISF3biYmISF3bi5wbGF0Zm9ybTohMX1mdW5jdGlvbiBGbigpe3JldHVybiB6bigiaVBob25lIikmJiF6bigiaVBvZCIpJiYhem4oImlQYWQiKX1mdW5jdGlvbiBHbigpe0ZuKCl8fHpuKCJpUGFkIil8fHpuKCJpUG9kIil9O3ZhciBIbj1mdW5jdGlvbihhKXtIblsiICJdKGEpO3JldHVybiBhfTtIblsiICJdPWZ1bmN0aW9uKCl7fTtCbigpO0FuKCl8fHpuKCJUcmlkZW50Iil8fHpuKCJNU0lFIik7em4oIkVkZ2UiKTshem4oIkdlY2tvIil8fHZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpfHx6bigiVHJpZGVudCIpfHx6bigiTVNJRSIpfHx6bigiRWRnZSIpO3ZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpJiZ6bigiTW9iaWxlIik7RW4oKXx8em4oIk1hY2ludG9zaCIpO0VuKCl8fHpuKCJXaW5kb3dzIik7KEVuKCk/d24ucGxhdGZvcm09PT0iTGludXgiOnpuKCJMaW51eCIpKXx8RW4oKXx8em4oIkNyT1MiKTtFbigpfHx6bigiQW5kcm9pZCIpO0ZuKCk7em4oImlQYWQiKTt6bigiaVBvZCIpO0duKCk7dm4oKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImthaW9zIik7Q24oKTtGbigpfHx6bigiaVBvZCIpO3puKCJpUGFkIik7IXpuKCJBbmRyb2lkIil8fERuKCl8fENuKCl8fEJuKCl8fHpuKCJTaWxrIik7RG4oKTshem4oIlNhZmFyaSIpfHxEbigpfHwoQW4oKT8wOnpuKCJDb2FzdCIpKXx8Qm4oKXx8KEFuKCk/MDp6bigiRWRnZSIpKXx8KEFuKCk/eW4oIk1pY3Jvc29mdCBFZGdlIik6em4oIkVkZy8iKSl8fChBbigpP3luKCJPcGVyYSIpOnpuKCJPUFIiKSl8fENuKCl8fHpuKCJTaWxrIil8fHpuKCJBbmRyb2lkIil8fEduKCk7dmFyIEluPXt9LEpuPW51bGw7CmZ1bmN0aW9uIEtuKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZT4yNTUmJihiW2MrK109ZSYyNTUsZT4+PTgpO2JbYysrXT1lfXZhciBmPTQ7Zj09PXZvaWQgMCYmKGY9MCk7aWYoIUpuKXtKbj17fTtmb3IodmFyIGc9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ii5zcGxpdCgiIiksaD1bIisvPSIsIisvIiwiLV89IiwiLV8uIiwiLV8iXSxsPTA7bDw1O2wrKyl7dmFyIG49Zy5jb25jYXQoaFtsXS5zcGxpdCgiIikpO0luW2xdPW47Zm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07Sm5bcV09PT12b2lkIDAmJihKbltxXT1wKX19fWZvcih2YXIgcj1JbltmXSx0PUFycmF5KE1hdGguZmxvb3IoYi5sZW5ndGgvMykpLHU9cls2NF18fCIiLHY9MCx4PTA7djxiLmxlbmd0aC0yO3YrPTMpe3ZhciB5PWJbdl0sej1iW3YrMV0sQz1iW3YrMl0sCkQ9clt5Pj4yXSxJPXJbKHkmMyk8PDR8ej4+NF0sRz1yWyh6JjE1KTw8MnxDPj42XSxOPXJbQyY2M107dFt4KytdPSIiK0QrSStHK059dmFyIFM9MCxXPXU7c3dpdGNoKGIubGVuZ3RoLXYpe2Nhc2UgMjpTPWJbdisxXSxXPXJbKFMmMTUpPDwyXXx8dTtjYXNlIDE6dmFyIGVhPWJbdl07dFt4XT0iIityW2VhPj4yXStyWyhlYSYzKTw8NHxTPj40XStXK3V9cmV0dXJuIHQuam9pbigiIil9O3ZhciBMbj1mdW5jdGlvbihhKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEucmVwbGFjZSgvXCsvZywiICIpKX07dmFyIE1uPVJlZ0V4cCgiXig/OihbXjovPyMuXSspOik/KD86Ly8oPzooW15cXFxcLz8jXSopQCk/KFteXFxcXC8/I10qPykoPzo6KFswLTldKykpPyg/PVtcXFxcLz8jXXwkKSk/KFtePyNdKyk/KD86XFw/KFteI10qKSk/KD86IyhbXFxzXFxTXSopKT8kIik7ZnVuY3Rpb24gTm4oYSxiLGMsZCl7Zm9yKHZhciBlPWIsZj1jLmxlbmd0aDsoZT1hLmluZGV4T2YoYyxlKSk+PTAmJmU8ZDspe3ZhciBnPWEuY2hhckNvZGVBdChlLTEpO2lmKGc9PTM4fHxnPT02Myl7dmFyIGg9YS5jaGFyQ29kZUF0KGUrZik7aWYoIWh8fGg9PTYxfHxoPT0zOHx8aD09MzUpcmV0dXJuIGV9ZSs9ZisxfXJldHVybi0xfXZhciBPbj0vI3wkLzsKZnVuY3Rpb24gUG4oYSxiKXt2YXIgYz1hLnNlYXJjaChPbiksZD1ObihhLDAsYixjKTtpZihkPDApcmV0dXJuIG51bGw7dmFyIGU9YS5pbmRleE9mKCImIixkKTtpZihlPDB8fGU+YyllPWM7ZCs9Yi5sZW5ndGgrMTtyZXR1cm4gTG4oYS5zbGljZShkLGUhPT0tMT9lOjApKX12YXIgUW49L1s/Jl0oJHwjKS87CmZ1bmN0aW9uIFJuKGEsYixjKXtmb3IodmFyIGQsZT1hLnNlYXJjaChPbiksZj0wLGcsaD1bXTsoZz1ObihhLGYsYixlKSk+PTA7KWgucHVzaChhLnN1YnN0cmluZyhmLGcpKSxmPU1hdGgubWluKGEuaW5kZXhPZigiJiIsZykrMXx8ZSxlKTtoLnB1c2goYS5zbGljZShmKSk7ZD1oLmpvaW4oIiIpLnJlcGxhY2UoUW4sIiQxIik7dmFyIGwsbj1jIT1udWxsPyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGMpKToiIjt2YXIgcD1iK247aWYocCl7dmFyIHEscj1kLmluZGV4T2YoIiMiKTtyPDAmJihyPWQubGVuZ3RoKTt2YXIgdD1kLmluZGV4T2YoIj8iKSx1O3Q8MHx8dD5yPyh0PXIsdT0iIik6dT1kLnN1YnN0cmluZyh0KzEscik7cT1bZC5zbGljZSgwLHQpLHUsZC5zbGljZShyKV07dmFyIHY9cVsxXTtxWzFdPXA/dj92KyImIitwOnA6djtsPXFbMF0rKHFbMV0/Ij8iK3FbMV06IiIpK3FbMl19ZWxzZSBsPWQ7cmV0dXJuIGx9O2Z1bmN0aW9uIFNuKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9UG4oYywiZm10Iik7aWYoZCl7dmFyIG49UG4oYywicmFuZG9tIikscD1QbihjLCJsYWJlbCIpfHwiIjtpZighbilyZXR1cm47dmFyIHE9S24oTG4ocCkrIjoiK0xuKG4pKTtpZighb24oYSxxLGQpKXJldHVybn1sJiZOdW1iZXIobCkhPT00PyhjPVJuKGMsInJmbXQiLGwpLGM9Um4oYywiZm10Iiw0KSk6bHx8KGM9Um4oYywiZm10Iiw0KSk7VWMoYyxmdW5jdGlvbigpe2c9PW51bGx8fFRuKGcpO2g9PW51bGx8fFVuKGgsYyk7YS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzJiZkJiYoYS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzPW51bGwsZCgpKX0sZnVuY3Rpb24oKXtnPT1udWxsfHxUbihnKTtoPT1udWxsfHxVbihoLGMpO2U9PW51bGx8fGUoKX0sZixiLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXS5wYXJlbnRFbGVtZW50fHx2b2lkIDApO3JldHVybiBjfTtmdW5jdGlvbiBWbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwxLGJbMF0pO2lkLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gV24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gamQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBYbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwzLGJbMF0pO1pjLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gWW4oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gbWQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBabihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSw1LGJbMF0pO1VjLmFwcGx5KG51bGwsdyhiKSl9CmZ1bmN0aW9uICRuKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTtiWzBdJiZrbi5yZWdpc3RlcihhLDIsYlswXSk7WGMuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBhbyhhKXt2YXIgYj1Tbi5hcHBseShudWxsLHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSk7YiYma24ucmVnaXN0ZXIoYSw0LGIpO3JldHVybiBifTt2YXIgYm89e01hOntSZTowLFVlOjEsTGg6Mn19O2JvLk1hW2JvLk1hLlJlXT0iRlVMTF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLlVlXT0iTElNSVRFRF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLkxoXT0iTk9fVFJBTlNNSVNTSU9OIjt2YXIgY289e2lhOntnZDowLGNiOjEseGQ6MixaYjozfX07Y28uaWFbY28uaWEuZ2RdPSJOT19RVUVVRSI7Y28uaWFbY28uaWEuY2JdPSJBRFMiO2NvLmlhW2NvLmlhLnhkXT0iQU5BTFlUSUNTIjtjby5pYVtjby5pYS5aYl09Ik1PTklUT1JJTkciO3ZhciBlbz1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuY29uc2VudFR5cGVzPWJ9O2VvLnByb3RvdHlwZS5pc0NvbnNlbnRHcmFudGVkPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMuSCl7Y2FzZSAwOnJldHVybiB0aGlzLmNvbnNlbnRUeXBlcy5ldmVyeShmdW5jdGlvbihhKXtyZXR1cm4gQmwoYSl9KTtjYXNlIDE6cmV0dXJuIHRoaXMuY29uc2VudFR5cGVzLnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIEJsKGEpfSk7ZGVmYXVsdDp5Yyh0aGlzLkgsImNvbnNlbnRzUmVxdWlyZWQgaGFkIGFuIHVua25vd24gdHlwZSIpfX07CnZhciBmbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT17fTt0aGlzLkg9KGFbY28uaWEuZ2RdPWJvLk1hLlJlLGFbY28uaWEuY2JdPWJvLk1hLlJlLGFbY28uaWEueGRdPWJvLk1hLlJlLGFbY28uaWEuWmJdPWJvLk1hLlJlLGEpO3ZhciBiPXt9O3RoaXMuSz0oYltjby5pYS5nZF09bmV3IGVvKDAsW10pLGJbY28uaWEuY2JdPW5ldyBlbygwLFsiYWRfc3RvcmFnZSJdKSxiW2NvLmlhLnhkXT1uZXcgZW8oMCxbImFuYWx5dGljc19zdG9yYWdlIl0pLGJbY28uaWEuWmJdPW5ldyBlbygxLFsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIl0pLGIpfTt2YXIgaG89ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczt0aGlzLnR5cGU9YTt0aGlzLkg9W107RmwoZm8uS1thXS5jb25zZW50VHlwZXMsZnVuY3Rpb24oKXtnbyhiKXx8Yi5mbHVzaCgpfSl9O2hvLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe2Zvcih2YXIgYT1tKHRoaXMuSCksYj1hLm5leHQoKTshYi5kb25lO2I9YS5uZXh0KCkpe3ZhciBjPWIudmFsdWU7YygpfXRoaXMuSD1bXX07dmFyIGdvPWZ1bmN0aW9uKGEpe3JldHVybiBmby5IW2EudHlwZV09PT1iby5NYS5MaCYmIWZvLktbYS50eXBlXS5pc0NvbnNlbnRHcmFudGVkKCl9LGlvPWZ1bmN0aW9uKGEsYil7Z28oYSk/YS5ILnB1c2goYik6YigpfSxqbz1mdW5jdGlvbigpe3RoaXMuSD1uZXcgTWFwfSxsbz1mdW5jdGlvbihhKXt2YXIgYj1rbztiLkguaGFzKGEpfHxiLkguc2V0KGEsbmV3IGhvKGEpKTtyZXR1cm4gYi5ILmdldChhKX07am8ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5ILmNsZWFyKCl9Owp2YXIga289bmV3IGpvO3ZhciBtbz1bImZpbiIsImZzIiwibWNjIiwibmNjIl0sbm89ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwPyExOmE7dmFyIGI9Um0oKSxjPVFtLkssZD1iLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gY1tlXSE9PXZvaWQgMCYmKGF8fCFtby5pbmNsdWRlcyhlKSl9KTtUbShkKTtyZXR1cm4gZC5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9Y1tlXTt0eXBlb2YgZj09PSJmdW5jdGlvbiImJihmPWYoKSk7cmV0dXJuIGY/IiYiK2UrIj0iK2Y6IiJ9KS5qb2luKCIiKSsiJno9MCJ9LG9vPWZ1bmN0aW9uKGEpe3ZhciBiPSJodHRwczovLyIrRSgyMSksYz0iL3RkP2lkPSIrRSg1KTtyZXR1cm4iIitmayhiKStjK2F9LHBvPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/ITE6YjtjPWM9PT12b2lkIDA/ITE6YztpZigkaygyNikmJmZuLksmJkUoNSkmJihjfHwhZ24oKSkpe3ZhciBkPWxvKGNvLmlhLlpiKTtpZihnbyhkKSlhLkh8fChhLkg9ITAsaW8oZCxmdW5jdGlvbigpe3JldHVybiBwbyhhKX0pKTsKZWxzZXtiJiZVbSgiZmluIiwiMSIpO3ZhciBlPW5vKGIpLGY9b28oZSksZz17ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjYxfTtiP1luKGcsZix2b2lkIDAse1FnOiEwfSx2b2lkIDAsZnVuY3Rpb24oKXtaYyhmKyImaW1nPTEiKX0pOlhuKGcsZik7YS5IPSExO3FvKGUpfX19LHFvPWZ1bmN0aW9uKGEpe2lmKEtjJiYoU2IoS2MsImh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tLyIpfHxJZig0NykpJiYhKGEuaW5kZXhPZigiJmNzcD0iKTwwJiZhLmluZGV4T2YoIiZtZGU9Iik8MCkpe3ZhciBiO2E6e3RyeXtpZihLYyl7Yj1uZXcgVVJMKEtjKTticmVhayBhfX1jYXRjaChjKXt9Yj12b2lkIDB9YiYmVWMoIiIrS2MrKEtjLmluZGV4T2YoIj8iKT49MD8iJiI6Ij8iKSsiaXNfdGQ9MSIrYSl9fSxybz1mdW5jdGlvbihhKXtSbSgpLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIVBtW2JdfSkmJnBvKGEsITApfSxzbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0hMTsKJGMoQSwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7cm8oYSl9KX07ZnVuY3Rpb24gdG8oYSxiKXtwbyhzbyxhPT09dm9pZCAwPyExOmEsYj09PXZvaWQgMD8hMTpiKX07dmFyIHVvPVsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIiwiYWRfcGVyc29uYWxpemF0aW9uIl0sdm89W0YuRC5kZCxGLkQueWMsRi5ELlFmLEYuRC5LYixGLkQueGMsRi5ELmZiLEYuRC5EYixGLkQubmIsRi5ELkxiLEYuRC52Y10seW89ZnVuY3Rpb24oKXt2YXIgYT13bzshYS5SJiZhLkgmJih1by5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBBbC5jb250YWluZXJTY29wZWREZWZhdWx0c1tiXSE9PTF9KXx8eG8oIm1iYyIpKTthLlI9ITB9LHhvPWZ1bmN0aW9uKGEpe2ZuLksmJihVbShhLCIxIiksdG8oKSl9LHpvPWZ1bmN0aW9uKGEsYil7dmFyIGM9d287aWYoIWMuTltiXSYmKGMuTltiXT0hMCxjLktbYl0pKWZvcih2YXIgZD1tKHZvKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlpZihPKGEsZS52YWx1ZSkpe3hvKCJlcmMiKTticmVha319LHdvPW5ldyBmdW5jdGlvbigpe3RoaXMuUj10aGlzLkg9ITE7dGhpcy5OPXt9O3RoaXMuSz17fX07dmFyIEFvPXt9LEJvPU9iamVjdC5mcmVlemUoKEFvW0YuRC5SY109MSxBb1tGLkQuaGhdPTEsQW9bRi5ELnNpXT0xLEFvW0YuRC5TY109MSxBb1tGLkQuSGFdPTEsQW9bRi5ELkxiXT0xLEFvW0YuRC5DYl09MSxBb1tGLkQuVGJdPTEsQW9bRi5ELklkXT0xLEFvW0YuRC52Y109MSxBb1tGLkQubmJdPTEsQW9bRi5ELkpkXT0xLEFvW0YuRC5IZV09MSxBb1tGLkQuT2FdPTEsQW9bRi5ELlFwXT0xLEFvW0YuRC5QZl09MSxBb1tGLkQuRmldPTEsQW9bRi5ELnBoXT0xLEFvW0YuRC5XY109MSxBb1tGLkQuUWZdPTEsQW9bRi5ELmFxXT0xLEFvW0YuRC5UYV09MSxBb1tGLkQuVWZdPTEsQW9bRi5ELmZxXT0xLEFvW0YuRC5PZF09MSxBb1tGLkQuUmxdPTEsQW9bRi5ELlljXT0xLEFvW0YuRC5aY109MSxBb1tGLkQuRGJdPTEsQW9bRi5ELmFtXT0xLEFvW0YuRC5XYl09MSxBb1tGLkQuVGRdPTEsQW9bRi5ELlhiXT0xLEFvW0YuRC5PaV09MSxBb1tGLkQuZGRdPTEsQW9bRi5ELnloXT0xLEFvW0YuRC5QaV09CjEsQW9bRi5ELlVkXT0xLEFvW0YuRC55Y109MSxBb1tGLkQuVmRdPTEsQW9bRi5ELmxtXT0xLEFvW0YuRC5XZF09MSxBb1tGLkQuZWRdPTEsQW9bRi5ELm9qXT0xLEFvKSk7T2JqZWN0LmZyZWV6ZShbRi5ELnphLEYuRC5VYSxGLkQuTWIsRi5ELnRiLEYuRC5OaSxGLkQuZmIsRi5ELkdpLEYuRC5NcF0pOwp2YXIgQ289e30sRG89T2JqZWN0LmZyZWV6ZSgoQ29bRi5ELnFwXT0xLENvW0YuRC5ycF09MSxDb1tGLkQudHBdPTEsQ29bRi5ELnVwXT0xLENvW0YuRC52cF09MSxDb1tGLkQuenBdPTEsQ29bRi5ELkFwXT0xLENvW0YuRC5CcF09MSxDb1tGLkQuRHBdPTEsQ29bRi5ELnlmXT0xLENvKSksRW89e30sRm89T2JqZWN0LmZyZWV6ZSgoRW9bRi5ELnZsXT0xLEVvW0YuRC53bF09MSxFb1tGLkQueGVdPTEsRW9bRi5ELnllXT0xLEVvW0YuRC54bF09MSxFb1tGLkQuQWRdPTEsRW9bRi5ELnplXT0xLEVvW0YuRC5vY109MSxFb1tGLkQuUWNdPTEsRW9bRi5ELnFjXT0xLEVvW0YuRC5JYl09MSxFb1tGLkQuQWVdPTEsRW9bRi5ELnJjXT0xLEVvW0YuRC55bF09MSxFbykpLEdvPU9iamVjdC5mcmVlemUoW0YuRC5SYyxGLkQuU2MsRi5ELkpkLEYuRC5RZixGLkQuV2YsRi5ELlRkLEYuRC5PaSxGLkQuVmRdKSxIbz1PYmplY3QuZnJlZXplKFtdLmNvbmNhdCh3KEdvKSkpLElvPU9iamVjdC5mcmVlemUoW0YuRC5DYiwKRi5ELnBoLEYuRC55aCxGLkQuUGksRi5ELm5oXSksSm89T2JqZWN0LmZyZWV6ZShbXS5jb25jYXQodyhJbykpKSxLbz17fSxMbz0oS29bRi5ELmthXT0iMSIsS29bRi5ELnJhXT0iMiIsS29bRi5ELm1hXT0iMyIsS29bRi5ELlhhXT0iNCIsS28pLE1vPXt9LE5vPU9iamVjdC5mcmVlemUoKE1vLnNlYXJjaD0icyIsTW8ueW91dHViZT0ieSIsTW8ucGxheXN0b3JlPSJwIixNby5zaG9wcGluZz0iaCIsTW8uYWRzPSJhIixNby5tYXBzPSJtIixNbykpO2Z1bmN0aW9uIE9vKGEpe3JldHVybiB0eXBlb2YgYSE9PSJvYmplY3QifHxhPT09bnVsbD97fTphfWZ1bmN0aW9uIFBvKGEpe3JldHVybiBhPT09dm9pZCAwfHxhPT09bnVsbD8iIjp0eXBlb2YgYT09PSJvYmplY3QiP2EudG9TdHJpbmcoKTpTdHJpbmcoYSl9ZnVuY3Rpb24gUW8oYSl7aWYoYSE9PXZvaWQgMCYmYSE9PW51bGwpcmV0dXJuIFBvKGEpfTt2YXIgUm89W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV07ZnVuY3Rpb24gU28oYSl7Zm9yKHZhciBiPW0oYVtGLkQubmNdfHxbIiJdKSxjPWIubmV4dCgpLGQ9e307IWMuZG9uZTtkPXtyZWdpb246dm9pZCAwfSxjPWIubmV4dCgpKWQucmVnaW9uPWMudmFsdWUsR2IoYSxmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oZixnKXtpZihmIT09Ri5ELm5jKXt2YXIgaD1QbyhnKSxsPWUucmVnaW9uLG49eW0oKSxwPXptKCk7eWw9ITA7eGwmJnNiKCJUQUdHSU5HIiwyMCk7dGwoKS5kZWNsYXJlKGYsaCxsLG4scCl9fX0oZCkpfQpmdW5jdGlvbiBUbyhhKXt5bygpO3ZhciBiPWFsKDE3LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSxjPWFsKDE2LGZ1bmN0aW9uKCl7cmV0dXJuITF9KTshYiYmYyYmeG8oImNyYyIpO1prKDE3LCEwKTt2YXIgZD1hW0YuRC5ZZ107ZCYmUCg0MSk7dmFyIGU9YVtGLkQubmNdO2U/UCg0MCk6ZT1bIiJdO2Zvcih2YXIgZj1tKGUpLGc9Zi5uZXh0KCksaD17fTshZy5kb25lO2g9e0JvOnZvaWQgMH0sZz1mLm5leHQoKSloLkJvPWcudmFsdWUsR2IoYSxmdW5jdGlvbihsKXtyZXR1cm4gZnVuY3Rpb24obixwKXtpZihuIT09Ri5ELm5jJiZuIT09Ri5ELllnKXt2YXIgcT1RbyhwKSxyPWwuQm8sdD1OdW1iZXIoZCksdT15bSgpLHY9em0oKTt0PXQ9PT12b2lkIDA/MDp0O3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkuZGVmYXVsdChuLHEscix1LHYsdCxBbCl9fX0oaCkpfQpmdW5jdGlvbiBVbyhhKXtBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM9ITA7dmFyIGI9YVtGLkQubmNdO2lmKGIpe3ZhciBjPUFycmF5LmlzQXJyYXkoYik/YjpbYl07aWYoIWMuaW5jbHVkZXMoem0oKSkmJiFjLmluY2x1ZGVzKHltKCkpKXJldHVybn1HYihhLGZ1bmN0aW9uKGQsZSl7c3dpdGNoKGQpe2Nhc2UgImFkX3N0b3JhZ2UiOmNhc2UgImFuYWx5dGljc19zdG9yYWdlIjpjYXNlICJhZF91c2VyX2RhdGEiOmNhc2UgImFkX3BlcnNvbmFsaXphdGlvbiI6YnJlYWs7ZGVmYXVsdDpyZXR1cm59QWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzPSEwO0FsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2RdPWU9PT0iZ3JhbnRlZCI/MzoyfSl9CmZ1bmN0aW9uIFZvKGEsYil7eW8oKTtaaygxNiwhMCk7R2IoYSxmdW5jdGlvbihjLGQpe3ZhciBlPVBvKGQpO3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkudXBkYXRlKGMsZSxBbCl9KTtHbChiLmV2ZW50SWQsYi5wcmlvcml0eUlkKX1mdW5jdGlvbiBXbyhhKXthLmhhc093blByb3BlcnR5KCJhbGwiKSYmKEFsLnNlbGVjdGVkQWxsQ29yZVBsYXRmb3JtU2VydmljZXM9ITAsR2IoTm8sZnVuY3Rpb24oYil7QWwuY29yZVBsYXRmb3JtU2VydmljZXNbYl09YS5hbGw9PT0iZ3JhbnRlZCI7QWwudXNlZENvcmVQbGF0Zm9ybVNlcnZpY2VzPSEwfSkpO0diKGEsZnVuY3Rpb24oYixjKXtiIT09ImFsbCImJihBbC5jb3JlUGxhdGZvcm1TZXJ2aWNlc1tiXT1jPT09ImdyYW50ZWQiLEFsLnVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlcz0hMCl9KX0KZnVuY3Rpb24gWG8oYSl7QXJyYXkuaXNBcnJheShhKXx8KGE9W2FdKTtyZXR1cm4gYS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiBZbygpe3ZhciBhPVpvO0FycmF5LmlzQXJyYXkoYSl8fChhPVthXSk7cmV0dXJuIGEuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiAkbyhhLGIpe0ZsKGEsYil9ZnVuY3Rpb24gYXAoYSxiKXtJbChhLGIpfWZ1bmN0aW9uIGJwKGEsYil7SGwoYSxiKX1mdW5jdGlvbiBjcCgpe3ZhciBhPVtGLkQua2EsRi5ELlhhLEYuRC5tYV07dGwoKS53YWl0Rm9yVXBkYXRlKGEsNTAwLEFsKX1mdW5jdGlvbiBkcChhKXtmb3IodmFyIGI9bShhKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTt0bCgpLmNsZWFyVGltZW91dChkLHZvaWQgMCxBbCl9R2woKX0KZnVuY3Rpb24gZXAoYSl7Zm9yKHZhciBiPXt9LGM9bShhLnNwbGl0KCJ8IikpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKWJbZC52YWx1ZV09ITA7cmV0dXJuIGJ9O3ZhciBmcD1PYmplY3QuZnJlZXplKFtGLkQua2EsRi5ELm1hXSk7CnZhciBocD1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz1tKE9iamVjdC5rZXlzKGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtiW2dwW2VdfHxlXT1hW2VdfXJldHVybiBifSxpcD1mdW5jdGlvbihhKXtyZXR1cm4hIVEoYSxILkoudmQpJiZSKGEsRi5ELlBkKT09PSIxIiYmUihhLEYuRC5IZCkhPT0iMSImJlhvKGZwKX0sanA9ZnVuY3Rpb24oYSxiKXtpZighaXAoYSkpcmV0dXJuITE7dmFyIGM9UWMoKXx8T2MoKT81ODo1NyxkPU5tKGMsaHAoYikpO1RsKGQsYSxjKTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxkKyImZm10PTgiLHZvaWQgMCx7UWc6ITAsbWV0aG9kOiJHRVQifSxmdW5jdGlvbigpe30sZnVuY3Rpb24oKXtaYyhkKyImZm10PTMiKX0pO3JldHVybiEwfSxrcD17fSxncD0oa3AuZGw9InVybCIsa3AuZHI9CiJyZWYiLGtwLnVpZD0idXNlcklkIixrcCk7dmFyIGxwPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZD1mdW5jdGlvbihlKXtiW2VdIT1udWxsJiZiW2VdIT09IiImJihjW2VdPWJbZV0pfTtNKDQ3NCkmJmQoIl9nc2lkIik7UihhLEYuRC5IZCkhPT0iMSImJihkKCJnY2xpZCIpLGQoImdjbHNyYyIpLGQoImF1aWQiKSxkKCJkY2xpZCIpKTtpZihPYmplY3Qua2V5cyhjKS5sZW5ndGgpcmV0dXJuIGQoImd0bSIpLGN9Owp2YXIgbXA9e30sbnA9KG1wW0YuRC5zYV09ImdjdSIsbXBbRi5ELlNiXT0iZ2NsZ2IiLG1wW0YuRC5sYl09ImdjbGF3IixtcFtGLkQuemZdPSJnYWRfc291cmNlIixtcFtGLkQuQWZdPSJnYWRfc291cmNlX3NyYyIsbXBbRi5ELkRkXT0iZ2NsaWQiLG1wW0YuRC5BbF09ImdjbHNyYyIsbXBbRi5ELkJmXT0iZ2JyYWlkIixtcFtGLkQuRWVdPSJ3YnJhaWQiLG1wW0YuRC5FZF09ImF1aWQiLG1wW0YuRC5CbF09ImFlIixtcFtGLkQuSGFdPW51bGwsbXBbRi5ELkRsXT0icm5kIixtcFtGLkQuSGRdPSJuY2wiLG1wW0YuRC5OZl09ImdjbGRjIixtcFtGLkQuS2RdPSJkY2xpZCIsbXBbRi5ELlZjXT0iZWRpZCIsbXBbRi5ELlViXT0iZW4iLG1wW0YuRC5LZV09ImdkcHIiLG1wW0YuRC5YY109ImdkaWQiLG1wW0YuRC5UYV09bnVsbCxtcFtGLkQuTGVdPSJfbmciLG1wW0YuRC50aF09ImdwcF9zaWQiLG1wW0YuRC51aF09ImdwcCIsbXBbRi5ELlZmXT0iX3R1IixtcFtGLkQuUWxdPSJndG1fdXAiLG1wW0YuRC5NZV09CiJmcm0iLG1wW0YuRC5QZF09ImxwcyIsbXBbRi5ELkxpXT0iZGlkIixtcFtGLkQuVWxdPSJuYXZ0IixtcFtGLkQuemFdPSJkbCIsbXBbRi5ELlVhXT0iZHIiLG1wW0YuRC5NYl09ImR0IixtcFtGLkQuYm1dPSJzY3JzcmMiLG1wW0YuRC5aZl09ImdhX3VpZCIsbXBbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IixtcFtGLkQuUWldPSJ0ZXN0b25seSIsbXBbRi5ELnJxXT0idV90eiIsbXBbRi5ELlBlXT0idG9wIixtcFtGLkQuUWVdPSJ0aWQiLG1wW0YuRC5mYl09InVpZCIsbXBbRi5ELmtnXT0idXNfcHJpdmFjeSIsbXBbRi5ELmVkXT1udWxsLG1wW0YuRC5kZV09Im5wYSIsbXApO2Z1bmN0aW9uIG9wKGEsYil7aWYoYiE9bnVsbCYmYiE9PSIiKXt2YXIgYz1iPT09ITA/IjEiOmI9PT0hMT8iMCI6ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiKSk7aWYoU2IoYSwiXyYiKSlyZXR1cm57a2V5OmEuc3Vic3RyaW5nKDIpLHZhbHVlOmN9O3ZhciBkPW5wW2FdO2lmKGQhPT1udWxsKXJldHVybiBkP3trZXk6ZCx2YWx1ZTpjfTp7a2V5OkFiKGIpPyJlcG4uIithOiJlcC4iK2EsdmFsdWU6Y319fTtmdW5jdGlvbiBwcChhKXthPWE9PT12b2lkIDA/W106YTtyZXR1cm4geGooYSkuam9pbigifiIpfTtmdW5jdGlvbiBxcCgpe3ZhciBhPVtdLGI9TnVtYmVyKCcnKXx8MCxjPU51bWJlcignJyl8fDA7Y3x8KGM9Yi8xMDApO3ZhciBkPWZ1bmN0aW9uKCl7dmFyIHQ9ITE7cmV0dXJuIHR9KCk7YS5wdXNoKHt1azoyMjgsc3R1ZHlJZDoyMjgsZXhwZXJpbWVudElkOjEwNTE3NzE1NCxjb250cm9sSWQ6MTA1MTc3MTU1LGNvbnRyb2xJZDI6MTA1MjU1MjQ1LHByb2JhYmlsaXR5OmMsYWN0aXZlOmQsWmU6MH0pO3ZhciBlPU51bWJlcignJyl8fAowLGY9TnVtYmVyKCcnKXx8MDtmfHwoZj1lLzEwMCk7dmFyIGc9ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjIzNSxzdHVkeUlkOjIzNSxleHBlcmltZW50SWQ6MTA1MzU3MTUwLGNvbnRyb2xJZDoxMDUzNTcxNTEsY29udHJvbElkMjowLHByb2JhYmlsaXR5OmYsYWN0aXZlOmcsWmU6MX0pO3ZhciBoPU51bWJlcignJyl8fDAsbD1OdW1iZXIoJycpfHwKMDtsfHwobD1oLzEwMCk7dmFyIG49ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjI2NixzdHVkeUlkOjI2NixleHBlcmltZW50SWQ6MTE1NzE4NTI5LGNvbnRyb2xJZDoxMTU3MTg1MzAsY29udHJvbElkMjoxMTU3MTg1MzEscHJvYmFiaWxpdHk6bCxhY3RpdmU6bixaZTowfSk7dmFyIHA9TnVtYmVyKCcnKXx8MCxxPU51bWJlcignJyl8fAowO3F8fChxPXAvMTAwKTt2YXIgcj1mdW5jdGlvbigpe3ZhciB0PSExO3JldHVybiB0fSgpO2EucHVzaCh7dWs6MjY3LHN0dWR5SWQ6MjY3LGV4cGVyaW1lbnRJZDoxMTU3MTg1MjYsY29udHJvbElkOjExNTcxODUyNyxjb250cm9sSWQyOjExNTcxODUyOCxwcm9iYWJpbGl0eTpxLGFjdGl2ZTpyLFplOjB9KTtyZXR1cm4gYX07dmFyIHJwPWZ1bmN0aW9uKCl7dGhpcy5LPXt9O3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5SPW5ldyBTZXR9LHhwPWZ1bmN0aW9uKGEsYil7dmFyIGM9YixkPWI9YS5OW2Muc3R1ZHlJZF0/bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHthY3RpdmU6ITB9KTpjLGU9Rmk7ZC5jb250cm9sSWQyJiZkLnByb2JhYmlsaXR5PD0uMjV8fChkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZCx7Y29udHJvbElkMjowfSkpO2Uuc3R1ZGllc1tkLnN0dWR5SWRdPWQ7Yi5mb2N1c2VkJiYoYS5LW2Iuc3R1ZHlJZF09ITApO2lmKGIuWmU9PT0xKXt2YXIgZj1iLnN0dWR5SWQ7c3AoYSx0cCgpLGYpO3VwKGEsZik/dGoodWosZik6dnAoYSxmKT91ai5LW2ZdPSEwOndwKGEsZikmJih1ai5IW2ZdPSEwKX1lbHNlIGlmKGIuWmU9PT0wKXt2YXIgZz1iLnN0dWR5SWQ7c3AoYSxhLkgsZyk7dXAoYSxnKT90aih1aixnKTp2cChhLGcpP3VqLktbZ109ITA6d3AoYSxnKSYmCih1ai5IW2ddPSEwKX19LHNwPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPUZpO2lmKGUuc3R1ZGllc1tjXSl7dmFyIGY9ZS5zdHVkaWVzW2NdLGc9Zi5leHBlcmltZW50SWQsaD1mLnByb2JhYmlsaXR5O2lmKCEoYi5zdHVkaWVzfHx7fSlbY10pe3ZhciBsPWIuc3R1ZGllc3x8e307bFtjXT0hMDtiLnN0dWRpZXM9bDtpZighZS5zdHVkaWVzW2NdLmFjdGl2ZSlpZihlLnN0dWRpZXNbY10ucHJvYmFiaWxpdHk+LjUpSWkoYixnLGMpO2Vsc2UgaWYoIShoPD0wfHxoPjEpKXt2YXIgbj12b2lkIDA7aWYoZCl7dmFyIHA9Q2koZCsifiIrYyk7aWYocD09PSJlMiIpbj0tMTtlbHNle2Zvcih2YXIgcT1uZXcgVWludDhBcnJheShwKSxyPUJpZ0ludCgwKSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpcj1yPDxCaWdJbnQoOCl8QmlnSW50KHUudmFsdWUpO249TnVtYmVyKHIlQmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSl9fUdpLnNrKGIsYyxuKX19fWlmKCFhLktbY10pe3ZhciB2PQpOaShiLGMpO3YmJndqLkguSy5hZGQodil9fSx0cD1mdW5jdGlvbigpe3JldHVybiBvbShqbS5iYS5UcSx7fSl9LHVwPWZ1bmN0aW9uKGEsYil7dmFyIGM9dHAoKTtyZXR1cm4gS2koYyxiKXx8S2koYS5ILGIpfSx2cD1mdW5jdGlvbihhLGIpe3ZhciBjPXRwKCk7cmV0dXJuIExpKGMsYil8fExpKGEuSCxiKX0sd3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz10cCgpO3JldHVybiBNaShjLGIpfHxNaShhLkgsYil9LHlwOwpmdW5jdGlvbiB6cCgpe2lmKCF5cCl7dmFyIGE9eXA9bmV3IHJwLGIsYyxkPSgoYj1BKT09bnVsbD92b2lkIDA6KGM9Yi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmMuaGFzaCl8fCIiO2lmKGRbMF09PT0iIyImJmRbMV09PT0iXyImJmRbMl09PT0idCImJmRbM109PT0iZSImJmRbNF09PT0iPSIpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO2lmKGUpZm9yKHZhciBmPW0oZS5zcGxpdCgifiIpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9TnVtYmVyKGcudmFsdWUpO2gmJihhLk5baF09ITAsdGoodWosaCkpfX1mb3IodmFyIGw9bShxcCgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl4cChhLG4udmFsdWUpO2Zvcih2YXIgcD1bXSxxPW0oTWYoNTYpfHxbXSkscj1xLm5leHQoKTshci5kb25lO3I9cS5uZXh0KCkpe3ZhciB0PXIudmFsdWUsdT17c3R1ZHlJZDp0WzFdLGFjdGl2ZTohIXRbMl0scHJvYmFiaWxpdHk6dFszXXx8MCxleHBlcmltZW50SWQ6dFs0XXx8CjAsY29udHJvbElkOnRbNV18fDAsY29udHJvbElkMjp0WzZdfHwwfSx2PTA7c3dpdGNoKHRbN10pe2Nhc2UgMjp2PTE7YnJlYWs7Y2FzZSAzOnY9MjticmVhaztjYXNlIDE6Y2FzZSA0OmNhc2UgNTpjYXNlIDA6dj0wfXZhciB4O2E6c3dpdGNoKHUuc3R1ZHlJZCl7Y2FzZSA1Njc6Y2FzZSA0NjI6eD0hMDticmVhayBhO2RlZmF1bHQ6eD0hMX12YXIgeT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHUse1plOnYsZm9jdXNlZDp4fSk7KHkuYWN0aXZlfHx5LnByb2JhYmlsaXR5Pi41JiZ5LmV4cGVyaW1lbnRJZHx8eS5leHBlcmltZW50SWQmJnkuY29udHJvbElkKSYmcC5wdXNoKHkpfWZvcih2YXIgej1tKHApLEM9ei5uZXh0KCk7IUMuZG9uZTtDPXoubmV4dCgpKXhwKGEsQy52YWx1ZSl9fQpmdW5jdGlvbiBBcChhLGIpe3pwKCk7dmFyIGM9eXA7c3AoYyx0cCgpLGEsYik7dXAoYyxhKT90aih1aixhKTp2cChjLGEpP3VqLktbYV09ITA6d3AoYyxhKSYmKHVqLkhbYV09ITApfWZ1bmN0aW9uIEJwKCl7enAoKTt2YXIgYT15cCxiPXVwKGEsNTY3KTtpZihhLktbNTY3XSl7dmFyIGMsZD10cCgpOyhjPU5pKGQsNTY3KXx8TmkoYS5ILDU2NykpJiZhLlIuYWRkKGMpfXJldHVybiBifWZ1bmN0aW9uIENwKGEpe3pwKCk7dmFyIGI9bmV3IFNldCh5cC5SKTtpZihhKWZvcih2YXIgYz1RKGEsSC5KLkNoKXx8W10sZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWIuYWRkKGUudmFsdWUpO3JldHVybiBwcChbXS5jb25jYXQodyhiKSkpfTtmdW5jdGlvbiBEcChhKXt2YXIgYj1hLmxvY2F0aW9uLmhyZWY7aWYoYT09PWEudG9wKXJldHVybnt1cmw6YixJczohMH07dmFyIGM9ITEsZD1hLmRvY3VtZW50O2QmJmQucmVmZXJyZXImJihiPWQucmVmZXJyZXIsYS5wYXJlbnQ9PT1hLnRvcCYmKGM9ITApKTt2YXIgZT1hLmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucztpZihlKXt2YXIgZj1lW2UubGVuZ3RoLTFdLGc7ZiYmKChnPWIpPT1udWxsP3ZvaWQgMDpnLmluZGV4T2YoZikpPT09LTEmJihjPSExLGI9Zil9cmV0dXJue3VybDpiLElzOmN9fWZ1bmN0aW9uIEVwKGEpe3RyeXt2YXIgYjtpZihiPSEhYSYmYS5sb2NhdGlvbi5ocmVmIT1udWxsKWE6e3RyeXtIbihhLmZvbyk7Yj0hMDticmVhayBhfWNhdGNoKGMpe31iPSExfXJldHVybiBifWNhdGNoKGMpe3JldHVybiExfX1mdW5jdGlvbiBGcCgpe2Zvcih2YXIgYT1BLGI9YTthJiZhIT09YS5wYXJlbnQ7KWE9YS5wYXJlbnQsRXAoYSkmJihiPWEpO3JldHVybiBifTt2YXIgR3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdW5jdGlvbigpe307Yy5wcm90b3R5cGU9YS5wcm90b3R5cGU7dmFyIGQ9bmV3IGM7YS5hcHBseShkLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSk7cmV0dXJuIGR9LEhwPWZ1bmN0aW9uKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPW51bGw7YygpfX19O2Z1bmN0aW9uIElwKGEsYil7aWYoYSlmb3IodmFyIGMgaW4gYSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxjKSYmYihhW2NdLGMsYSl9O2Z1bmN0aW9uIEpwKGEpe3ZhciBiPWEuc3BsaXQoL1s/I10vKSxjPS9bP10vLnRlc3QoYSk/Ij8iK2JbMV06IiI7cmV0dXJue3prOmJbMF0scGFyYW1zOmMsZnJhZ21lbnQ6L1sjXS8udGVzdChhKT8iIyIrKGM/YlsyXTpiWzFdKToiIn19ZnVuY3Rpb24gS3AoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKGIubGVuZ3RoPT09MClyZXR1cm4gamMoYVswXSk7Zm9yKHZhciBjPWFbMF0sZD0wO2Q8Yi5sZW5ndGg7ZCsrKWMrPWVuY29kZVVSSUNvbXBvbmVudChiW2RdKSthW2QrMV07cmV0dXJuIGpjKGMpfQpmdW5jdGlvbiBMcChhLGIsYyxkKXtmdW5jdGlvbiBlKGcsaCl7ZyE9bnVsbCYmKEFycmF5LmlzQXJyYXkoZyk/Zy5mb3JFYWNoKGZ1bmN0aW9uKGwpe3JldHVybiBlKGwsaCl9KTooYis9ZitlbmNvZGVVUklDb21wb25lbnQoaCkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChnKSxmPSImIikpfXZhciBmPWIubGVuZ3RoPyImIjoiPyI7ZC5jb25zdHJ1Y3Rvcj09PU9iamVjdCYmKGQ9T2JqZWN0LmVudHJpZXMoZCkpO0FycmF5LmlzQXJyYXkoZCk/ZC5mb3JFYWNoKGZ1bmN0aW9uKGcpe3JldHVybiBlKGdbMV0sZ1swXSl9KTpkLmZvckVhY2goZSk7cmV0dXJuIGpjKGErYitjKX1mdW5jdGlvbiBNcChhLGIpe3ZhciBjPUpwKGtjKGEpLnRvU3RyaW5nKCkpLGQ9Yy56ay5zbGljZSgtMSk9PT0iLyI/IiI6Ii8iLGU9Yy56aytkK2VuY29kZVVSSUNvbXBvbmVudChiKTtyZXR1cm4gamMoZStjLnBhcmFtcytjLmZyYWdtZW50KX07dmFyIE5wPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEsZD0wO2Q8NTA7KytkKXt2YXIgZTt0cnl7ZT0hKCFjLmZyYW1lc3x8IWMuZnJhbWVzW2JdKX1jYXRjaChoKXtlPSExfWlmKGUpcmV0dXJuIGM7dmFyIGY7YTp7dHJ5e3ZhciBnPWMucGFyZW50O2lmKGcmJmchPT1jKXtmPWc7YnJlYWsgYX19Y2F0Y2goaCl7fWY9bnVsbH1pZighKGM9ZikpYnJlYWt9cmV0dXJuIG51bGx9LE9wPWZ1bmN0aW9uKGEpe3ZhciBiPUE7aWYoYi50b3A9PWIpcmV0dXJuIDA7aWYoYT09PXZvaWQgMD8wOmEpe3ZhciBjPWIubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zO2lmKGMpcmV0dXJuIGNbYy5sZW5ndGgtMV09PWIubG9jYXRpb24ub3JpZ2luPzE6Mn1yZXR1cm4gRXAoYi50b3ApPzE6Mn0sUHA9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2RvY3VtZW50OmE7cmV0dXJuIGEuY3JlYXRlRWxlbWVudCgiaW1nIil9O2Z1bmN0aW9uIFFwKGEpe2Zvcih2YXIgYj1bXSxjPUIuY29va2llLnNwbGl0KCI7IiksZD1uZXcgUmVnRXhwKCJeXFxzKiIrKGF8fCJfZ2FjIikrIl8oVUEtXFxkKy1cXGQrKT1cXHMqKC4rPylcXHMqJCIpLGU9MDtlPGMubGVuZ3RoO2UrKyl7dmFyIGY9Y1tlXS5tYXRjaChkKTtmJiZiLnB1c2goe3VkOmZbMV0sdmFsdWU6ZlsyXSx0aW1lc3RhbXA6TnVtYmVyKGZbMl0uc3BsaXQoIi4iKVsxXSl8fDB9KX1iLnNvcnQoZnVuY3Rpb24oZyxoKXtyZXR1cm4gaC50aW1lc3RhbXAtZy50aW1lc3RhbXB9KTtyZXR1cm4gYn0KZnVuY3Rpb24gUnAoYSxiKXt2YXIgYz1RcChhKSxkPXt9O2lmKCFjfHwhYy5sZW5ndGgpcmV0dXJuIGQ7Zm9yKHZhciBlPTA7ZTxjLmxlbmd0aDtlKyspe3ZhciBmPWNbZV0udmFsdWUuc3BsaXQoIi4iKTtpZighKGZbMF0hPT0iMSJ8fGImJmYubGVuZ3RoPDN8fCFiJiZmLmxlbmd0aCE9PTMpJiZOdW1iZXIoZlsxXSkpe2RbY1tlXS51ZF18fChkW2NbZV0udWRdPVtdKTt2YXIgZz17dmVyc2lvbjpmWzBdLHRpbWVzdGFtcDpOdW1iZXIoZlsxXSkqMUUzLGdjbGlkOmZbMl19O2ImJmYubGVuZ3RoPjMmJihnLmxhYmVscz1mLnNsaWNlKDMpKTtkW2NbZV0udWRdLnB1c2goZyl9fXJldHVybiBkfTtmdW5jdGlvbiBTcChhKXtyZXR1cm4gYS5vcmlnaW4hPT0ibnVsbCJ9O3ZhciBUcD17fSxVcD0oVHAuaz17bmE6L15bXHctXSskL30sVHAuYj17bmE6L15bXHctXSskLyxuazohMH0sVHAuaT17bmE6L15bMS05XVxkKiQvfSxUcC5oPXtuYTovXlxkKyQvfSxUcC50PXtuYTovXlsxLTldXGQqJC99LFRwLmQ9e25hOi9eW0EtWmEtejAtOV8tXSskL30sVHAuaj17bmE6L15cZCskL30sVHAudT17bmE6L15bMS05XVxkKiQvfSxUcC5sPXtuYTovXlswMV0kL30sVHAubz17bmE6L15bMS05XVxkKiQvfSxUcC5nPXtuYTovXlswMV0kL30sVHAucz17bmE6L14uKyQvfSxUcC5tPXtuYTovXlswMV0kL30sVHApO3ZhciBWcD17fSxacD0oVnBbNV09e2ppOnsyOldwfSxaajoiMiIsUmg6WyJrIiwiaSIsImIiLCJ1Il19LFZwWzRdPXtqaTp7MjpXcCxHQ0w6WHB9LFpqOiIyIixSaDpbImsiLCJpIiwiYiIsIm0iXX0sVnBbMl09e2ppOntHUzI6V3AsR1MxOllwfSxaajoiR1MyIixSaDoic29ndGpsaGQiLnNwbGl0KCIiKX0sVnApO2Z1bmN0aW9uICRwKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXt2YXIgZT1hLnNwbGl0KCIuIilbMF07Yz09bnVsbHx8YyhlKTtpZihlKXt2YXIgZj1kLmppW2VdO2lmKGYpcmV0dXJuIGYoYSxiKX19fQpmdW5jdGlvbiBXcChhLGIpe3ZhciBjPWEuc3BsaXQoIi4iKTtpZihjLmxlbmd0aD09PTMpe3ZhciBkPWNbMl07aWYoZC5pbmRleE9mKCIkIik9PT0tMSYmZC5pbmRleE9mKCIlMjQiKSE9PS0xKXRyeXtkPWRlY29kZVVSSUNvbXBvbmVudChkKX1jYXRjaCh0KXt9dmFyIGU9e30sZj1acFtiXTtpZihmKXtmb3IodmFyIGc9Zi5SaCxoPW0oZC5zcGxpdCgiJCIpKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSl7dmFyIG49bC52YWx1ZSxwPW5bMF07aWYoZy5pbmRleE9mKHApIT09LTEpdHJ5e3ZhciBxPWRlY29kZVVSSUNvbXBvbmVudChuLnN1YnN0cmluZygxKSkscj1VcFtwXTtyJiYoci5uaz8oZVtwXT1lW3BdfHxbXSxlW3BdLnB1c2gocSkpOmVbcF09cSl9Y2F0Y2godCl7fX1yZXR1cm4gZX19fWZ1bmN0aW9uIGFxKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXJldHVybltkLlpqLGN8fCIxIixicShhLGIpXS5qb2luKCIuIil9CmZ1bmN0aW9uIGJxKGEsYil7dmFyIGM9WnBbYl07aWYoYyl7Zm9yKHZhciBkPVtdLGU9bShjLlJoKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPVVwW2ddO2lmKGgpe3ZhciBsPWFbZ107aWYobCE9PXZvaWQgMClpZihoLm5rJiZBcnJheS5pc0FycmF5KGwpKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKWQucHVzaChlbmNvZGVVUklDb21wb25lbnQoIiIrZytwLnZhbHVlKSk7ZWxzZSBkLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCIiK2crbCkpfX1yZXR1cm4gZC5qb2luKCIkIil9fWZ1bmN0aW9uIFhwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKTtiLnNoaWZ0KCk7dmFyIGM9Yi5zaGlmdCgpLGQ9Yi5zaGlmdCgpLGU9e307cmV0dXJuIGUuaz1kLGUuaT1jLGUuYj1iLGV9CmZ1bmN0aW9uIFlwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKS5zbGljZSgyKTtpZighKGIubGVuZ3RoPDV8fGIubGVuZ3RoPjcpKXt2YXIgYz17fTtyZXR1cm4gYy5zPWJbMF0sYy5vPWJbMV0sYy5nPWJbMl0sYy50PWJbM10sYy5qPWJbNF0sYy5sPWJbNV0sYy5oPWJbNl0sY319O2Z1bmN0aW9uIGNxKGEsYixjLGQpe3ZhciBlO3JldHVybihlPWRxKGZ1bmN0aW9uKGYpe3JldHVybiBmPT09YX0sYixjLGQpW2FdKSE9bnVsbD9lOltdfWZ1bmN0aW9uIGRxKGEsYixjLGQpe3ZhciBlO2lmKGVxKGQpKXtmb3IodmFyIGY9e30sZz1TdHJpbmcoYnx8ZnEoKSkuc3BsaXQoIjsiKSxoPTA7aDxnLmxlbmd0aDtoKyspe3ZhciBsPWdbaF0uc3BsaXQoIj0iKSxuPWxbMF0udHJpbSgpO2lmKG4mJmEobikpe3ZhciBwPWwuc2xpY2UoMSkuam9pbigiPSIpLnRyaW0oKTtwJiZjJiYocD1kZWNvZGVVUklDb21wb25lbnQocCkpO3ZhciBxPXZvaWQgMCxyPXZvaWQgMDsoKHE9Zilbcj1uXXx8KHFbcl09W10pKS5wdXNoKHApfX1lPWZ9ZWxzZSBlPXt9O3JldHVybiBlfQpmdW5jdGlvbiBncShhLGIsYyxkLGUpe2lmKGVxKGUpKXt2YXIgZj1ocShhLGQsZSk7aWYoZi5sZW5ndGg9PT0xKXJldHVybiBmWzBdO2lmKGYubGVuZ3RoIT09MCl7Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLkpyfSxiKTtpZihmLmxlbmd0aD09PTEpcmV0dXJuIGZbMF07Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLldzfSxjKTtyZXR1cm4gZlswXX19fWZ1bmN0aW9uIGpxKGEsYixjLGQpe3ZhciBlPWZxKCksZj1BO1NwKGYpJiYoZi5kb2N1bWVudC5jb29raWU9YSk7dmFyIGc9ZnEoKTtyZXR1cm4gZSE9PWd8fGMhPT12b2lkIDAmJmNxKGIsZywhMSxkKS5pbmRleE9mKGMpPj0wfQpmdW5jdGlvbiBrcShhLGIsYyxkKXtmdW5jdGlvbiBlKHgseSx6KXtpZih6PT1udWxsKXJldHVybiBkZWxldGUgaFt5XSx4O2hbeV09ejtyZXR1cm4geCsiOyAiK3krIj0iK3p9ZnVuY3Rpb24gZih4LHkpe2lmKHk9PW51bGwpcmV0dXJuIHg7aFt5XT0hMDtyZXR1cm4geCsiOyAiK3l9aWYoIWVxKGMuTWMpKXJldHVybiAyO3ZhciBnO2I9PW51bGw/Zz1hKyI9ZGVsZXRlZDsgZXhwaXJlcz0iKyhuZXcgRGF0ZSgwKSkudG9VVENTdHJpbmcoKTooYy5lbmNvZGUmJihiPWVuY29kZVVSSUNvbXBvbmVudChiKSksYj1scShiKSxnPWErIj0iK2IpO3ZhciBoPXt9O2c9ZShnLCJwYXRoIixjLnBhdGgpO3ZhciBsO2MuZXhwaXJlcyBpbnN0YW5jZW9mIERhdGU/bD1jLmV4cGlyZXMudG9VVENTdHJpbmcoKTpjLmV4cGlyZXMhPW51bGwmJihsPSIiK2MuZXhwaXJlcyk7Zz1lKGcsImV4cGlyZXMiLGwpO2c9ZShnLCJtYXgtYWdlIixjLk9zKTtnPWUoZywic2FtZXNpdGUiLGMucnQpO2Muc2VjdXJlJiYKKGc9ZihnLCJzZWN1cmUiKSk7dmFyIG49Yy5kb21haW47aWYobiYmbi50b0xvd2VyQ2FzZSgpPT09ImF1dG8iKXtmb3IodmFyIHA9bXEoKSxxPXZvaWQgMCxyPSExLHQ9MDt0PHAubGVuZ3RoOysrdCl7dmFyIHU9cFt0XSE9PSJub25lIj9wW3RdOnZvaWQgMCx2PWUoZywiZG9tYWluIix1KTt2PWYodixjLmZsYWdzKTt0cnl7ZCYmZChhLGgpfWNhdGNoKHgpe3E9eDtjb250aW51ZX1yPSEwO2lmKCFucSh1LGMucGF0aCkmJmpxKHYsYSxiLGMuTWMpKXJldHVybiAwfWlmKHEmJiFyKXRocm93IHE7cmV0dXJuIDF9biYmbi50b0xvd2VyQ2FzZSgpIT09Im5vbmUiJiYoZz1lKGcsImRvbWFpbiIsbikpO2c9ZihnLGMuZmxhZ3MpO2QmJmQoYSxoKTtyZXR1cm4gbnEobixjLnBhdGgpPzE6anEoZyxhLGIsYy5NYyk/MDoxfWZ1bmN0aW9uIG9xKGEsYixjKXtjLnBhdGg9PW51bGwmJihjLnBhdGg9Ii8iKTtjLmRvbWFpbnx8KGMuZG9tYWluPSJhdXRvIik7cmV0dXJuIGtxKGEsYixjKX0KZnVuY3Rpb24gaXEoYSxiLGMpe2Zvcih2YXIgZD1bXSxlPVtdLGYsZz0wO2c8YS5sZW5ndGg7ZysrKXt2YXIgaD1hW2ddLGw9YihoKTtsPT09Yz9kLnB1c2goaCk6Zj09PXZvaWQgMHx8bDxmPyhlPVtoXSxmPWwpOmw9PT1mJiZlLnB1c2goaCl9cmV0dXJuIGQubGVuZ3RoPjA/ZDplfWZ1bmN0aW9uIGhxKGEsYixjKXtmb3IodmFyIGQ9W10sZT1jcShhLHZvaWQgMCx2b2lkIDAsYyksZj0wO2Y8ZS5sZW5ndGg7ZisrKXt2YXIgZz1lW2ZdLnNwbGl0KCIuIiksaD1nLnNoaWZ0KCk7aWYoIWJ8fCFofHxiLmluZGV4T2YoaCkhPT0tMSl7dmFyIGw9Zy5zaGlmdCgpO2lmKGwpe3ZhciBuPWwuc3BsaXQoIi0iKTtkLnB1c2goe0JyOmVbZl0sQ3I6Zy5qb2luKCIuIiksSnI6TnVtYmVyKG5bMF0pfHwxLFdzOk51bWJlcihuWzFdKXx8MX0pfX19cmV0dXJuIGR9ZnVuY3Rpb24gbHEoYSl7YSYmYS5sZW5ndGg+MTIwMCYmKGE9YS5zdWJzdHJpbmcoMCwxMjAwKSk7cmV0dXJuIGF9CnZhciBwcT0vXih3d3dcLik/Z29vZ2xlKFwuY29tPyk/KFwuW2Etel17Mn0pPyQvLHFxPS8oXnxcLilkb3VibGVjbGlja1wubmV0JC9pO2Z1bmN0aW9uIG5xKGEsYil7cmV0dXJuIGEhPT12b2lkIDAmJihxcS50ZXN0KEEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWUpfHxiPT09Ii8iJiZwcS50ZXN0KGEpKX1mdW5jdGlvbiBycShhKXtpZighYSlyZXR1cm4gMTt2YXIgYj1hO1lmKDQpJiZhPT09Im5vbmUiJiYoYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTtiPWIuaW5kZXhPZigiLiIpPT09MD9iLnN1YnN0cmluZygxKTpiO3JldHVybiBiLnNwbGl0KCIuIikubGVuZ3RofWZ1bmN0aW9uIHNxKGEpe2lmKCFhfHxhPT09Ii8iKXJldHVybiAxO2FbMF0hPT0iLyImJihhPSIvIithKTthW2EubGVuZ3RoLTFdIT09Ii8iJiYoYSs9Ii8iKTtyZXR1cm4gYS5zcGxpdCgiLyIpLmxlbmd0aC0xfQpmdW5jdGlvbiB0cShhLGIpe3ZhciBjPSIiK3JxKGEpLGQ9c3EoYik7ZD4xJiYoYys9Ii0iK2QpO3JldHVybiBjfQp2YXIgZnE9ZnVuY3Rpb24oKXt2YXIgYT1BO3JldHVybiBTcChhKT9hLmRvY3VtZW50LmNvb2tpZToiIn0sZXE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJllmKDUpPyhBcnJheS5pc0FycmF5KGEpP2E6W2FdKS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gRGwoYikmJkJsKGIpfSk6ITB9LG1xPWZ1bmN0aW9uKCl7dmFyIGE9W10sYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIik7aWYoYi5sZW5ndGg9PT00KXt2YXIgYz1iW2IubGVuZ3RoLTFdO2lmKE51bWJlcihjKS50b1N0cmluZygpPT09YylyZXR1cm5bIm5vbmUiXX1mb3IodmFyIGQ9Yi5sZW5ndGgtMjtkPj0wO2QtLSlhLnB1c2goYi5zbGljZShkKS5qb2luKCIuIikpO3ZhciBlPUEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWU7cXEudGVzdChlKXx8cHEudGVzdChlKXx8YS5wdXNoKCJub25lIik7cmV0dXJuIGF9O2Z1bmN0aW9uIHVxKGEsYixjLGQpe3ZhciBlLGY9TnVtYmVyKGEucGQhPW51bGw/YS5wZDp2b2lkIDApO2YhPT0wJiYoZT1uZXcgRGF0ZSgoYnx8TmIoKSkrMUUzKihmfHw3Nzc2RTMpKSk7cmV0dXJue3BhdGg6YS5wYXRoLGRvbWFpbjphLmRvbWFpbixmbGFnczphLmZsYWdzLGVuY29kZTohIWMsZXhwaXJlczplLE1jOmR9fTt2YXIgdnE9bmV3IE1hcChbWzUsImFkX3N0b3JhZ2UiXSxbNCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXV0sWzIsImFuYWx5dGljc19zdG9yYWdlIl1dKTtmdW5jdGlvbiB3cShhLGIsYyl7aWYoWnBbYl0pe2Zvcih2YXIgZD1bXSxlPWNxKGEsdm9pZCAwLHZvaWQgMCx2cS5nZXQoYikpLGY9bShlKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9JHAoZy52YWx1ZSxiLGMpO2gmJmQucHVzaCh4cShoKSl9cmV0dXJuIGR9fQpmdW5jdGlvbiB5cShhKXt2YXIgYj16cTtpZihacFsyXSl7Zm9yKHZhciBjPXt9LGQ9ZHEoYSx2b2lkIDAsdm9pZCAwLHZxLmdldCgyKSksZT1PYmplY3Qua2V5cyhkKS5zb3J0KCksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWZvcih2YXIgaD1nLnZhbHVlLGw9bShkW2hdKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9JHAobi52YWx1ZSwyLGIpO3AmJihjW2hdfHwoY1toXT1bXSksY1toXS5wdXNoKHhxKHApKSl9cmV0dXJuIGN9fWZ1bmN0aW9uIEFxKGEsYixjLGQsZSl7ZD1kfHx7fTt2YXIgZj10cShkLmRvbWFpbixkLnBhdGgpLGc9YXEoYixjLGYpO2lmKCFnKXJldHVybiAxO3ZhciBoPXVxKGQsZSx2b2lkIDAsdnEuZ2V0KGMpKTtyZXR1cm4gb3EoYSxnLGgpfWZ1bmN0aW9uIEJxKGEsYil7dmFyIGM9Yi5uYTtyZXR1cm4gdHlwZW9mIGM9PT0iZnVuY3Rpb24iP2MoYSk6Yy50ZXN0KGEpfQpmdW5jdGlvbiB4cShhKXtmb3IodmFyIGI9bShPYmplY3Qua2V5cyhhKSksYz1iLm5leHQoKSxkPXt9OyFjLmRvbmU7ZD17QWc6dm9pZCAwfSxjPWIubmV4dCgpKXt2YXIgZT1jLnZhbHVlLGY9YVtlXTtkLkFnPVVwW2VdO2QuQWc/ZC5BZy5uaz9hW2VdPUFycmF5LmlzQXJyYXkoZik/Zi5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIGZ1bmN0aW9uKGgpe3JldHVybiBCcShoLGcuQWcpfX0oZCkpOnZvaWQgMDp0eXBlb2YgZj09PSJzdHJpbmciJiZCcShmLGQuQWcpfHwoYVtlXT12b2lkIDApOmFbZV09dm9pZCAwfXJldHVybiBhfTt2YXIgQ3E7ZnVuY3Rpb24gRHEoKXtmdW5jdGlvbiBhKGcpe2MoZy50YXJnZXR8fGcuc3JjRWxlbWVudHx8e30pfWZ1bmN0aW9uIGIoZyl7ZChnLnRhcmdldHx8Zy5zcmNFbGVtZW50fHx7fSl9dmFyIGM9RXEsZD1GcSxlPUdxKCk7aWYoIWUuaW5pdCl7JGMoQiwibW91c2Vkb3duIixhKTskYyhCLCJrZXl1cCIsYSk7JGMoQiwic3VibWl0IixiKTt2YXIgZj1IVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdDtIVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdD1mdW5jdGlvbigpe2QodGhpcyk7Zi5jYWxsKHRoaXMpfTtlLmluaXQ9ITB9fWZ1bmN0aW9uIEhxKGEsYixjLGQsZSl7dmFyIGY9e2NhbGxiYWNrOmEsZG9tYWluczpiLGZyYWdtZW50OmM9PT0yLHBsYWNlbWVudDpjLGZvcm1zOmQsc2FtZUhvc3Q6ZX07R3EoKS5kZWNvcmF0b3JzLnB1c2goZil9CmZ1bmN0aW9uIElxKGEsYixjKXtmb3IodmFyIGQ9R3EoKS5kZWNvcmF0b3JzLGU9e30sZj0wO2Y8ZC5sZW5ndGg7KytmKXt2YXIgZz1kW2ZdLGg7aWYoaD0hY3x8Zy5mb3JtcylhOnt2YXIgbD1nLmRvbWFpbnMsbj1hLHA9ISFnLnNhbWVIb3N0O2lmKGwmJihwfHxuIT09Qi5sb2NhdGlvbi5ob3N0bmFtZSkpZm9yKHZhciBxPTA7cTxsLmxlbmd0aDtxKyspaWYobFtxXWluc3RhbmNlb2YgUmVnRXhwKXtpZihsW3FdLnRlc3Qobikpe2g9ITA7YnJlYWsgYX19ZWxzZSBpZihuLmluZGV4T2YobFtxXSk+PTB8fHAmJmxbcV0uaW5kZXhPZihuKT49MCl7aD0hMDticmVhayBhfWg9ITF9aWYoaCl7dmFyIHI9Zy5wbGFjZW1lbnQ7cj09PXZvaWQgMCYmKHI9Zy5mcmFnbWVudD8yOjEpO3I9PT1iJiZRYihlLGcuY2FsbGJhY2soKSl9fXJldHVybiBlfQpmdW5jdGlvbiBHcSgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSxiPWEuZ2w7YiYmYi5kZWNvcmF0b3JzfHwoYj17ZGVjb3JhdG9yczpbXX0sYS5nbD1iKTtyZXR1cm4gYn07dmFyIEpxPS8oLio/KVwqKC4qPylcKiguKikvLEtxPS9eaHR0cHM/OlwvXC8oW15cL10qPylcLj9jZG5cLmFtcHByb2plY3RcLm9yZ1wvPyguKikvLExxPS9eKD86d3d3XC58bVwufGFtcFwuKSsvLE1xPS8oW14/I10rKShcP1teI10qKT8oIy4qKT8vO2Z1bmN0aW9uIE5xKGEpe3ZhciBiPU1xLmV4ZWMoYSk7aWYoYilyZXR1cm57aGs6YlsxXSxxdWVyeTpiWzJdLGZyYWdtZW50OmJbM119fWZ1bmN0aW9uIE9xKGEpe3JldHVybiBuZXcgUmVnRXhwKCIoLio/KShefCYpIithKyI9KFteJl0qKSY/KC4qKSIpfQpmdW5jdGlvbiBQcShhLGIpe3ZhciBjPVtIYy51c2VyQWdlbnQsKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpLEhjLnVzZXJMYW5ndWFnZXx8SGMubGFuZ3VhZ2UsTWF0aC5mbG9vcihOYigpLzYwLzFFMyktKGI9PT12b2lkIDA/MDpiKSxhXS5qb2luKCIqIiksZDtpZighKGQ9Q3EpKXtmb3IodmFyIGU9QXJyYXkoMjU2KSxmPTA7ZjwyNTY7ZisrKXtmb3IodmFyIGc9ZixoPTA7aDw4O2grKylnPWcmMT9nPj4+MV4zOTg4MjkyMzg0Omc+Pj4xO2VbZl09Z31kPWV9Q3E9ZDtmb3IodmFyIGw9NDI5NDk2NzI5NSxuPTA7bjxjLmxlbmd0aDtuKyspbD1sPj4+OF5DcVsobF5jLmNoYXJDb2RlQXQobikpJjI1NV07cmV0dXJuKChsXi0xKT4+PjApLnRvU3RyaW5nKDM2KX0KZnVuY3Rpb24gUXEoYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBjPVJqKEEubG9jYXRpb24uaHJlZiksZD1jLnNlYXJjaC5yZXBsYWNlKCI/IiwiIiksZT1JaihkLCJfZ2wiLCExLCEwKXx8IiI7Yi5xdWVyeT1ScShlKXx8e307dmFyIGY9TGooYywiZnJhZ21lbnQiKSxnO3ZhciBoPS0xO2lmKFNiKGYsIl9nbD0iKSloPTQ7ZWxzZXt2YXIgbD1mLmluZGV4T2YoIiZfZ2w9Iik7bD4wJiYoaD1sKzMrMil9aWYoaDwwKWc9dm9pZCAwO2Vsc2V7dmFyIG49Zi5pbmRleE9mKCImIixoKTtnPW48MD9mLnN1YnN0cmluZyhoKTpmLnN1YnN0cmluZyhoLG4pfWIuZnJhZ21lbnQ9UnEoZ3x8IiIpfHx7fTthJiZTcShjLGQsZil9fWZ1bmN0aW9uIFRxKGEsYil7dmFyIGM9T3EoYSkuZXhlYyhiKSxkPWI7aWYoYyl7dmFyIGU9Y1syXSxmPWNbNF07ZD1jWzFdO2YmJihkPWQrZStmKX1yZXR1cm4gZH0KZnVuY3Rpb24gU3EoYSxiLGMpe2Z1bmN0aW9uIGQoZyxoKXt2YXIgbD1UcSgiX2dsIixnKTtsLmxlbmd0aCYmKGw9aCtsKTtyZXR1cm4gbH1pZihHYyYmR2MucmVwbGFjZVN0YXRlKXt2YXIgZT1PcSgiX2dsIik7aWYoZS50ZXN0KGIpfHxlLnRlc3QoYykpe3ZhciBmPUxqKGEsInBhdGgiKTtiPWQoYiwiPyIpO2M9ZChjLCIjIik7R2MucmVwbGFjZVN0YXRlKHt9LCIiLCIiK2YrYitjKX19fWZ1bmN0aW9uIFVxKGEsYil7dmFyIGM9UXEoISFiKSxkPUdxKCk7ZC5kYXRhfHwoZC5kYXRhPXtxdWVyeTp7fSxmcmFnbWVudDp7fX0sYyhkLmRhdGEpKTt2YXIgZT17fSxmPWQuZGF0YTtmJiYoUWIoZSxmLnF1ZXJ5KSxhJiZRYihlLGYuZnJhZ21lbnQpKTtyZXR1cm4gZX0KdmFyIFJxPWZ1bmN0aW9uKGEpe3RyeXt2YXIgYj1WcShhLDMpO2lmKGIhPT12b2lkIDApe2Zvcih2YXIgYz17fSxkPWI/Yi5zcGxpdCgiKiIpOltdLGU9MDtlKzE8ZC5sZW5ndGg7ZSs9Mil7dmFyIGY9ZFtlXSxnPXFiKGRbZSsxXSk7Y1tmXT1nfXNiKCJUQUdHSU5HIiw2KTtyZXR1cm4gY319Y2F0Y2goaCl7c2IoIlRBR0dJTkciLDgpfX07ZnVuY3Rpb24gVnEoYSxiKXtpZihhKXt2YXIgYzthOntmb3IodmFyIGQ9YSxlPTA7ZTwzOysrZSl7dmFyIGY9SnEuZXhlYyhkKTtpZihmKXtjPWY7YnJlYWsgYX1kPUtqKGQpfHwiIn1jPXZvaWQgMH12YXIgZz1jO2lmKGcmJmdbMV09PT0iMSIpe3ZhciBoPWdbM10sbDthOntmb3IodmFyIG49Z1syXSxwPTA7cDxiOysrcClpZihuPT09UHEoaCxwKSl7bD0hMDticmVhayBhfWw9ITF9aWYobClyZXR1cm4gaDtzYigiVEFHR0lORyIsNyl9fX0KZnVuY3Rpb24gV3EoYSxiLGMsZCxlKXtmdW5jdGlvbiBmKHApe3A9VHEoYSxwKTt2YXIgcT1wLmNoYXJBdChwLmxlbmd0aC0xKTtwJiZxIT09IiYiJiYocCs9IiYiKTtyZXR1cm4gcCtufWQ9ZD09PXZvaWQgMD8hMTpkO2U9ZT09PXZvaWQgMD8hMTplO3ZhciBnPU5xKGMpO2lmKCFnKXJldHVybiIiO3ZhciBoPWcucXVlcnl8fCIiLGw9Zy5mcmFnbWVudHx8IiIsbj1hKyI9IitiO2Q/bC5zdWJzdHJpbmcoMSkubGVuZ3RoIT09MCYmZXx8KGw9IiMiK2YobC5zdWJzdHJpbmcoMSkpKTpoPSI/IitmKGguc3Vic3RyaW5nKDEpKTtyZXR1cm4iIitnLmhrK2grbH0KZnVuY3Rpb24gWHEoYSxiKXtmdW5jdGlvbiBjKG4scCxxKXt2YXIgcjthOntmb3IodmFyIHQgaW4gbilpZihuLmhhc093blByb3BlcnR5KHQpKXtyPSEwO2JyZWFrIGF9cj0hMX1pZihyKXt2YXIgdSx2PVtdLHg7Zm9yKHggaW4gbilpZihuLmhhc093blByb3BlcnR5KHgpKXt2YXIgeT1uW3hdO3khPT12b2lkIDAmJnk9PT15JiZ5IT09bnVsbCYmeS50b1N0cmluZygpIT09IltvYmplY3QgT2JqZWN0XSImJih2LnB1c2goeCksdi5wdXNoKHBiKFN0cmluZyh5KSkpKX12YXIgej12LmpvaW4oIioiKTt1PVsiMSIsUHEoeiksel0uam9pbigiKiIpO2Q/KFlmKDMpfHxZZigxKXx8IXApJiZZcSgiX2dsIix1LGEscCxxKTpacSgiX2dsIix1LGEscCxxKX19dmFyIGQ9KGEudGFnTmFtZXx8IiIpLnRvVXBwZXJDYXNlKCk9PT0iRk9STSIsZT1JcShiLDEsZCksZj1JcShiLDIsZCksZz1JcShiLDQsZCksaD1JcShiLDMsZCk7YyhlLCExLCExKTtjKGYsITAsITEpO1lmKDEpJiZjKGcsITAsITApO2Zvcih2YXIgbCBpbiBoKWguaGFzT3duUHJvcGVydHkobCkmJgokcShsLGhbbF0sYSl9ZnVuY3Rpb24gJHEoYSxiLGMpe2MudGFnTmFtZS50b0xvd2VyQ2FzZSgpPT09ImEiP1pxKGEsYixjKTpjLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09PSJmb3JtIiYmWXEoYSxiLGMpfWZ1bmN0aW9uIFpxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7dmFyIGY7aWYoZj1jLmhyZWYpe3ZhciBnO2lmKCEoZz1kKSl7dmFyIGg9QS5sb2NhdGlvbi5ocmVmLGw9TnEoYy5ocmVmKSxuPU5xKGgpO2c9IShsJiZuJiZsLmhrPT09bi5oayYmbC5xdWVyeT09PW4ucXVlcnkmJmwuZnJhZ21lbnQpfWY9Z31pZihmKXt2YXIgcD1XcShhLGIsYy5ocmVmLGQsZSk7dmMudGVzdChwKSYmKGMuaHJlZj1wKX19CmZ1bmN0aW9uIFlxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7aWYoYyl7dmFyIGY9Yy5nZXRBdHRyaWJ1dGUoImFjdGlvbiIpfHwiIjtpZihmKXt2YXIgZz0oYy5tZXRob2R8fCIiKS50b0xvd2VyQ2FzZSgpO2lmKGchPT0iZ2V0Inx8ZCl7aWYoZz09PSJnZXQifHxnPT09InBvc3QiKXt2YXIgaD1XcShhLGIsZixkLGUpO3ZjLnRlc3QoaCkmJihjLmFjdGlvbj1oKX19ZWxzZXtmb3IodmFyIGw9Yy5jaGlsZE5vZGVzfHxbXSxuPSExLHA9MDtwPGwubGVuZ3RoO3ArKyl7dmFyIHE9bFtwXTtpZihxLm5hbWU9PT1hKXtxLnNldEF0dHJpYnV0ZSgidmFsdWUiLGIpO249ITA7YnJlYWt9fWlmKCFuKXt2YXIgcj1CLmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7ci5zZXRBdHRyaWJ1dGUoInR5cGUiLCJoaWRkZW4iKTtyLnNldEF0dHJpYnV0ZSgibmFtZSIsYSk7ci5zZXRBdHRyaWJ1dGUoInZhbHVlIixiKTtjLmFwcGVuZENoaWxkKHIpfX19fX0KZnVuY3Rpb24gRXEoYSl7dHJ5e3ZhciBiO2E6e2Zvcih2YXIgYz1hLGQ9MTAwO2MmJmQ+MDspe2lmKGMuaHJlZiYmYy5ub2RlTmFtZS5tYXRjaCgvXmEoPzpyZWEpPyQvaSkpe2I9YzticmVhayBhfWM9Yy5wYXJlbnROb2RlO2QtLX1iPW51bGx9dmFyIGU9YjtpZihlKXt2YXIgZj1lLnByb3RvY29sO2YhPT0iaHR0cDoiJiZmIT09Imh0dHBzOiJ8fFhxKGUsZS5ob3N0bmFtZSl9fWNhdGNoKGcpe319ZnVuY3Rpb24gRnEoYSl7dHJ5e3ZhciBiPWEuZ2V0QXR0cmlidXRlKCJhY3Rpb24iKTtpZihiKXt2YXIgYz1MaihSaihiKSwiaG9zdCIpO1hxKGEsYyl9fWNhdGNoKGQpe319ZnVuY3Rpb24gYXIoYSxiLGMsZCl7RHEoKTt2YXIgZT1jPT09ImZyYWdtZW50Ij8yOjE7ZD0hIWQ7SHEoYSxiLGUsZCwhMSk7ZT09PTImJnNiKCJUQUdHSU5HIiwyMyk7ZCYmc2IoIlRBR0dJTkciLDI0KX0KZnVuY3Rpb24gYnIoYSxiKXtEcSgpO0hxKGEsW05qKEEubG9jYXRpb24sImhvc3QiLCEwKV0sYiwhMCwhMCl9ZnVuY3Rpb24gY3IoKXt2YXIgYT1CLmxvY2F0aW9uLmhvc3RuYW1lLGI9S3EuZXhlYyhCLnJlZmVycmVyKTtpZighYilyZXR1cm4hMTt2YXIgYz1iWzJdLGQ9YlsxXSxlPSIiO2lmKGMpe3ZhciBmPWMuc3BsaXQoIi8iKSxnPWZbMV07ZT1nPT09InMiP0tqKGZbMl0pfHwiIjpLaihnKXx8IiJ9ZWxzZSBpZihkKXtpZihkLmluZGV4T2YoInhuLS0iKT09PTApcmV0dXJuITE7ZT1kLnJlcGxhY2UoLy0vZywiLiIpLnJlcGxhY2UoL1wuXC4vZywiLSIpfXZhciBoPWEucmVwbGFjZShMcSwiIiksbD1lLnJlcGxhY2UoTHEsIiIpO3JldHVybiBoPT09bHx8VGIoaCwiLiIrbCl9ZnVuY3Rpb24gZHIoYSxiKXtyZXR1cm4gYT09PSExPyExOmF8fGJ8fGNyKCl9O3ZhciBlcj1mdW5jdGlvbihhKXt0aGlzLnZhbHVlPTA7dGhpcy52YWx1ZT1hPT09dm9pZCAwPzA6YX07ZXIucHJvdG90eXBlLnNldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXw9MTw8YX07dmFyIGZyPWZ1bmN0aW9uKGEsYil7Yjw9MHx8KGEudmFsdWV8PTE8PGItMSl9O2VyLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07ZXIucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKGEpe3RoaXMudmFsdWUmPX4oMTw8YSl9O2VyLnByb3RvdHlwZS5jbGVhckFsbD1mdW5jdGlvbigpe3RoaXMudmFsdWU9MH07ZXIucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZT09PWEudmFsdWV9O2Z1bmN0aW9uIGdyKGEpe2lmKGEpdHJ5e3JldHVybiBuZXcgVWludDhBcnJheShhdG9iKGEucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIikpLnNwbGl0KCIiKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuY2hhckNvZGVBdCgwKX0pKX1jYXRjaChiKXt9fWZ1bmN0aW9uIGhyKGEsYil7dmFyIGM9MCxkPTAsZSxmPWI7ZG97aWYoZj49YS5sZW5ndGgpcmV0dXJuO2U9YVtmKytdO2N8PShlJjEyNyk8PGQ7ZCs9N313aGlsZShlJjEyOCk7cmV0dXJuW2MsZl19O2Z1bmN0aW9uIGlyKCl7dmFyIGE9U3RyaW5nLGI9QS5sb2NhdGlvbi5ob3N0bmFtZSxjPUEubG9jYXRpb24ucGF0aG5hbWUsZD1iPWJjKGIpO2Quc3BsaXQoIi4iKS5sZW5ndGg+MiYmKGQ9ZC5yZXBsYWNlKC9eKHd3d1swLTldKnx3ZWJ8ZnRwfHdhcHxob21lfG18d3xhbXB8bW9iaWxlKVwuLywiIikpO2I9ZDtjPWJjKGMpO3ZhciBlPWMuc3BsaXQoIjsiKVswXTtlPWUucmVwbGFjZSgvXC8oYXJ8c2xwfHdlYnxpbmRleCk/XC8/JC8sIiIpO3JldHVybiBhKG5nKCgiIitiK2UpLnRvTG93ZXJDYXNlKCkpKX07dmFyIGpyPVsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdO2Z1bmN0aW9uIGtyKGEsYil7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMiksMTA7aWYoYj09PW51bGx8fGI9PT12b2lkIDB8fGI9PT0iIilyZXR1cm4gc2IoIlRBR0dJTkciLDMzKSwxMTt2YXIgYz1scighMSk7aWYoYy5lcnJvciE9PTApcmV0dXJuIHNiKCJUQUdHSU5HIiwzNCksYy5lcnJvcjtpZighYy52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDM1KSwyO2MudmFsdWVbYV09Yjt2YXIgZD1tcihjKTtkIT09MCYmc2IoIlRBR0dJTkciLDM2KTtyZXR1cm4gZH0KZnVuY3Rpb24gbnIoYSl7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwyNykse2Vycm9yOjEwfTt2YXIgYj1scigpO2lmKGIuZXJyb3IhPT0wKXJldHVybiBzYigiVEFHR0lORyIsMjkpLGI7aWYoIWIudmFsdWUpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMCkse2Vycm9yOjJ9O2lmKCEoYSBpbiBiLnZhbHVlKSlyZXR1cm4gc2IoIlRBR0dJTkciLDMxKSx7dmFsdWU6dm9pZCAwLGVycm9yOjE1fTt2YXIgYz1iLnZhbHVlW2FdO3JldHVybiBjPT09bnVsbHx8Yz09PXZvaWQgMHx8Yz09PSIiPyhzYigiVEFHR0lORyIsMjgpLHt2YWx1ZTp2b2lkIDAsZXJyb3I6MTF9KTp7dmFsdWU6YyxlcnJvcjowfX0KZnVuY3Rpb24gb3IoYSl7aWYoYSl7dmFyIGI9bHIoITEpO2IuZXJyb3IhPT0wP3NiKCJUQUdHSU5HIiwzOCk6Yi52YWx1ZT9hIGluIGIudmFsdWU/KGRlbGV0ZSBiLnZhbHVlW2FdLG1yKGIpIT09MCYmc2IoIlRBR0dJTkciLDQxKSk6c2IoIlRBR0dJTkciLDQwKTpzYigiVEFHR0lORyIsMzkpfWVsc2Ugc2IoIlRBR0dJTkciLDM3KX0KZnVuY3Rpb24gbHIoYSl7YT1hPT09dm9pZCAwPyEwOmE7aWYoIUJsKGpyKSlyZXR1cm4gc2IoIlRBR0dJTkciLDQzKSx7ZXJyb3I6M307dHJ5e2lmKCFBLmxvY2FsU3RvcmFnZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQ0KSx7ZXJyb3I6MX19Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0NSkse2Vycm9yOjE0fX12YXIgYj17c2NoZW1hOiJnY2wiLHZlcnNpb246MX0sYz12b2lkIDA7dHJ5e2M9QS5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgiX2djbF9scyIpfWNhdGNoKGYpe3JldHVybiBzYigiVEFHR0lORyIsNDYpLHtlcnJvcjoxM319dHJ5e2lmKGMpe3ZhciBkPUpTT04ucGFyc2UoYyk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0IiliPWQ7ZWxzZSByZXR1cm4gc2IoIlRBR0dJTkciLDQ3KSx7ZXJyb3I6MTJ9fX1jYXRjaChmKXtyZXR1cm4gc2IoIlRBR0dJTkciLDQ4KSx7ZXJyb3I6OH19aWYoYi5zY2hlbWEhPT0iZ2NsIilyZXR1cm4gc2IoIlRBR0dJTkciLDQ5KSx7ZXJyb3I6NH07CmlmKGIudmVyc2lvbiE9PTEpcmV0dXJuIHNiKCJUQUdHSU5HIiw1MCkse2Vycm9yOjV9O3RyeXt2YXIgZT1wcihiKTthJiZlJiZtcih7dmFsdWU6YixlcnJvcjowfSl9Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0OCkse2Vycm9yOjh9fXJldHVybnt2YWx1ZTpiLGVycm9yOjB9fQpmdW5jdGlvbiBwcihhKXtpZighYXx8dHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4hMTtpZigiZXhwaXJlcyJpbiBhJiYidmFsdWUiaW4gYSl7dmFyIGI7dHlwZW9mIGEuZXhwaXJlcz09PSJudW1iZXIiP2I9YS5leHBpcmVzOmI9dHlwZW9mIGEuZXhwaXJlcz09PSJzdHJpbmciP051bWJlcihhLmV4cGlyZXMpOk5hTjtpZihpc05hTihiKXx8IShEYXRlLm5vdygpPD1iKSlyZXR1cm4gYS52YWx1ZT1udWxsLGEuZXJyb3I9OSxzYigiVEFHR0lORyIsNTQpLCEwfWVsc2V7Zm9yKHZhciBjPSExLGQ9bShPYmplY3Qua2V5cyhhKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpYz1wcihhW2UudmFsdWVdKXx8YztyZXR1cm4gY31yZXR1cm4hMX0KZnVuY3Rpb24gbXIoYSl7aWYoYS5lcnJvcilyZXR1cm4gYS5lcnJvcjtpZighYS52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQyKSwyO3ZhciBiPWEudmFsdWUsYzt0cnl7Yz1KU09OLnN0cmluZ2lmeShiKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUyKSw2fXRyeXtBLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJfZ2NsX2xzIixjKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUzKSw3fXJldHVybiAwfTt2YXIgcXI9e30scnI9KHFyLmdjbGlkPSEwLHFyLmRjbGlkPSEwLHFyLmdicmFpZD0hMCxxci53YnJhaWQ9ITAscXIpLHNyPS9eXHcrJC8sdHI9L15bXHctXSskLyx1cj17fSx2cj0odXIuYXc9IkZQR0NMQVciLHVyKSx3cj17fSx4cj0od3IuYWc9Il9hZyIsd3IuZ2I9Il9nYiIsd3IuYXc9Il9hdyIsd3IuZGM9Il9kYyIsd3IuZ2Y9Il9nZiIsd3IuaGE9Il9oYSIsd3IuZ3A9Il9ncCIsd3IuZ3M9Il9ncyIsd3IpLHlyPS9eKD86d3d3XC4pP2dvb2dsZSg/OlwuY29tPyk/KD86XC5bYS16XXsyfXQ/KT8kLyx6cj0vXnd3d1wuZ29vZ2xlYWRzZXJ2aWNlc1wuY29tJC87ZnVuY3Rpb24gQXIoKXtyZXR1cm5bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXX1mdW5jdGlvbiBCcihhKXtyZXR1cm4hWWYoNSl8fEJsKGEpfWZ1bmN0aW9uIENyKGEsYil7ZnVuY3Rpb24gYygpe3ZhciBkPUJyKGIpO2QmJmEoKTtyZXR1cm4gZH1IbChmdW5jdGlvbigpe2MoKXx8SWwoYyxiKX0sYil9CmZ1bmN0aW9uIERyKGEpe3JldHVybiBFcihhKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuZ2NsaWR9KX1mdW5jdGlvbiBGcihhKXtyZXR1cm4gR3IoYSkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSkubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSl9ZnVuY3Rpb24gR3IoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1IcihhLnByZWZpeCksZD1JcigiZ2IiLGMpLGU9SXIoImFnIixjKTtpZighZXx8IWQpcmV0dXJuW107dmFyIGY9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe24uemc9bDtyZXR1cm4gbn19LGc9RXIoZCxiKS5tYXAoZigiZ2IiKSksaD1KcihlKS5tYXAoZigiYWciKSk7cmV0dXJuIGcuY29uY2F0KGgpLnNvcnQoZnVuY3Rpb24obCxuKXtyZXR1cm4gbi50aW1lc3RhbXAtbC50aW1lc3RhbXB9KX0KZnVuY3Rpb24gS3IoYSxiLGMsZCxlKXt2YXIgZj1DYihhLGZ1bmN0aW9uKGcpe3JldHVybiBnLmdjbGlkPT09Yn0pO2Y/KGYudGltZXN0YW1wPGMmJihmLnRpbWVzdGFtcD1jLGYub2Q9ZSksZi5sYWJlbHM9THIoZi5sYWJlbHN8fFtdLGR8fFtdKSk6YS5wdXNoKHt2ZXJzaW9uOiIyIixnY2xpZDpiLHRpbWVzdGFtcDpjLGxhYmVsczpkLG9kOmV9KX1mdW5jdGlvbiBNcihhKXtmb3IodmFyIGI9d3EoYSw1KXx8W10sYz1bXSxkPW0oYiksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1mLGg9TnIoZik7aCYmS3IoYyxnLmssaCxnLmJ8fFtdLGYudSl9cmV0dXJuIGMuc29ydChmdW5jdGlvbihsLG4pe3JldHVybiBuLnRpbWVzdGFtcC1sLnRpbWVzdGFtcH0pfQpmdW5jdGlvbiBFcihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVtdO09yKGMsYSwxKTtpZihiKWlmKFRiKGEsIl9hdyIpKXt2YXIgZD1QcigpO2QmJihkLm9kPXZvaWQgMCxkLm9hPWQub2F8fFsyXSxRcihjLGQpKTtPcihjLCJnY2xfYXciLDIpfWVsc2UgVGIoYSwiX2diIikmJllmKDYpJiZPcihjLCJnY2xfZ2IiLDIpO2Muc29ydChmdW5jdGlvbihlLGYpe3JldHVybiBmLnRpbWVzdGFtcC1lLnRpbWVzdGFtcH0pO3JldHVybiBScihjKX1mdW5jdGlvbiBTcihhLGIpe2Zvcih2YXIgYz1bXSxkPW0oYSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Yy5pbmNsdWRlcyhmKXx8Yy5wdXNoKGYpfWZvcih2YXIgZz1tKGIpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD1oLnZhbHVlO2MuaW5jbHVkZXMobCl8fGMucHVzaChsKX1yZXR1cm4gY30KZnVuY3Rpb24gUXIoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2Zvcih2YXIgZCxlLGY9bShhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtpZihoLmdjbGlkPT09Yi5nY2xpZCl7ZD1oO2JyZWFrfWgucWEmJmIucWEmJmgucWEuZXF1YWxzKGIucWEpJiYoZT1oKX1pZihkKXt2YXIgbCxuLHA9KGw9ZC5xYSkhPW51bGw/bDpuZXcgZXIscT0obj1iLnFhKSE9bnVsbD9uOm5ldyBlcjtwLnZhbHVlfD1xLnZhbHVlO2QucWE9cDtkLnRpbWVzdGFtcDxiLnRpbWVzdGFtcCYmKGQudGltZXN0YW1wPWIudGltZXN0YW1wLGQub2Q9Yi5vZCk7ZC5sYWJlbHM9U3IoZC5sYWJlbHN8fFtdLGIubGFiZWxzfHxbXSk7ZC5vYT1TcihkLm9hfHxbXSxiLm9hfHxbXSl9ZWxzZSBjJiZlP25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZSxiKTphLnB1c2goYil9CmZ1bmN0aW9uIFRyKGEpe2lmKCFhKXJldHVybiBuZXcgZXI7dmFyIGI9bmV3IGVyO2lmKGE9PT0xKXJldHVybiBmcihiLDIpLGZyKGIsMyksYjtmcihiLGEpO3JldHVybiBifQpmdW5jdGlvbiBQcigpe3ZhciBhPW5yKCJnY2xpZCIpO2lmKCFhfHxhLmVycm9yfHwhYS52YWx1ZXx8dHlwZW9mIGEudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYj1hLnZhbHVlO3RyeXtpZighKCJ2YWx1ZSJpbiBiJiZiLnZhbHVlKXx8dHlwZW9mIGIudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYz1iLnZhbHVlLGQ9Yy52YWx1ZTtpZighZHx8IWQubWF0Y2godHIpKXJldHVybiBudWxsO3ZhciBlPWMubGlua0RlY29yYXRpb25Tb3VyY2UsZj1jLmxpbmtEZWNvcmF0aW9uU291cmNlcyxnPW5ldyBlcjt0eXBlb2YgZT09PSJudW1iZXIiP2c9VHIoZSk6dHlwZW9mIGY9PT0ibnVtYmVyIiYmKGcudmFsdWU9Zik7cmV0dXJue3ZlcnNpb246IiIsZ2NsaWQ6ZCx0aW1lc3RhbXA6TnVtYmVyKGMuY3JlYXRpb25UaW1lTXMpfHwwLGxhYmVsczpbXSxxYTpnLG9hOlsyXX19Y2F0Y2goaCl7cmV0dXJuIG51bGx9fQpmdW5jdGlvbiBVcihhKXt2YXIgYj1ucihhKTtpZihiLmVycm9yIT09MClyZXR1cm4gbnVsbDt0cnl7cmV0dXJuIGIudmFsdWUucmVkdWNlKGZ1bmN0aW9uKGMsZCl7aWYoIWQudmFsdWV8fHR5cGVvZiBkLnZhbHVlIT09Im9iamVjdCIpcmV0dXJuIGM7dmFyIGU9ZC52YWx1ZSxmPWUudmFsdWU7aWYoIWZ8fCFmLm1hdGNoKHRyKSlyZXR1cm4gYzt2YXIgZz1uZXcgZXIsaD1lLmxpbmtEZWNvcmF0aW9uU291cmNlczt0eXBlb2YgaD09PSJudW1iZXIiJiYoZy52YWx1ZT1oKTt2YXIgbDtjLnB1c2goe3ZlcnNpb246IiIsZ2NsaWQ6Zix0aW1lc3RhbXA6TnVtYmVyKGUuY3JlYXRpb25UaW1lTXMpfHwwLGV4cGlyZXM6TnVtYmVyKGQuZXhwaXJlcyl8fDAsbGFiZWxzOihsPWUubGFiZWxzKSE9bnVsbD9sOltdLHFhOmcsb2E6WzJdfSk7cmV0dXJuIGN9LFtdKX1jYXRjaChjKXtyZXR1cm4gbnVsbH19CmZ1bmN0aW9uIE9yKGEsYixjKXtpZihjPT09MSlmb3IodmFyIGQ9Y3EoYixCLmNvb2tpZSx2b2lkIDAsQXIoKSksZT1tKGQpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1WcihmLnZhbHVlLnNwbGl0KCIuIikpLGg9Zy5sZW5ndGg9PT0wP251bGw6e3ZlcnNpb246Z1swXSxnY2xpZDpnWzJdLHRpbWVzdGFtcDooTnVtYmVyKGdbMV0pfHwwKSoxRTMsbGFiZWxzOmcuc2xpY2UoMyl9O2ghPW51bGwmJihoLm9kPXZvaWQgMCxoLnFhPW5ldyBlcixoLm9hPVtjXSxRcihhLGgpKX1lbHNlIGlmKGM9PT0yKXt2YXIgbD1VcihiKTtpZihsKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3Eub2Q9dm9pZCAwO3Eub2E9cS5vYTtRcihhLHEpfX19CmZ1bmN0aW9uIFpyKGEpe3ZhciBiPUVyKGEpLGM9VXIoImdjbF9kYyIpO2lmKGMpZm9yKHZhciBkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Zi5vZD12b2lkIDA7Zi5vYT1mLm9hfHxbMl07UXIoYixmKX1iLnNvcnQoZnVuY3Rpb24oZyxoKXt2YXIgbD1nLm9hJiZnLm9hLmluY2x1ZGVzKDEpLG49aC5vYSYmaC5vYS5pbmNsdWRlcygxKTtyZXR1cm4gbCYmIW4/LTE6IWwmJm4/MTpoLnRpbWVzdGFtcC1nLnRpbWVzdGFtcH0pO3JldHVybiBScihiKX1mdW5jdGlvbiBKcihhKXtyZXR1cm4gTXIoYSkubWFwKGZ1bmN0aW9uKGIpe2IucWE9bmV3IGVyO2Iub2E9WzFdO3JldHVybiBifSl9CmZ1bmN0aW9uIExyKGEsYil7aWYoIWEubGVuZ3RoKXJldHVybiBiO2lmKCFiLmxlbmd0aClyZXR1cm4gYTt2YXIgYz17fTtyZXR1cm4gYS5jb25jYXQoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBjLmhhc093blByb3BlcnR5KGQpPyExOmNbZF09ITB9KX1mdW5jdGlvbiBIcihhKXtyZXR1cm4gYSYmdHlwZW9mIGE9PT0ic3RyaW5nIiYmYS5tYXRjaChzcik/YToiX2djbCJ9ZnVuY3Rpb24gJHIoYSxiKXtpZihhKXt2YXIgYz17dmFsdWU6YSxxYTpuZXcgZXJ9O2ZyKGMucWEsYik7cmV0dXJuIGN9fQpmdW5jdGlvbiBhcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpO2lmKGImJighZnx8IWUpKXt2YXIgZz1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Z8fChmPSRyKElqKGcsImdjbGlkIiwhMSksMykpO2V8fChlPUlqKGcsImdjbHNyYyIsITEpKX1yZXR1cm4gZiYmKGU9PT12b2lkIDB8fGU9PT0iYXcifHxlPT09ImF3LmRzInx8WWYoOCkmJmU9PT0iYXcuZHYiKT9bZl06W119CmZ1bmN0aW9uIGJzKGEsYil7dmFyIGM9UmooYSksZD1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpLGU9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2Nsc3JjIiksZj1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJ3YnJhaWQiKTtmPSRiKGYpO3ZhciBnPUxqKGMsInF1ZXJ5IiwhMSx2b2lkIDAsImdicmFpZCIpLGg9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpLGw9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKTtpZihiJiYhKGQmJmUmJmYmJmcpKXt2YXIgbj1jLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Q9ZHx8SWoobiwiZ2NsaWQiLCExKTtlPWV8fElqKG4sImdjbHNyYyIsITEpO2Y9Znx8SWoobiwid2JyYWlkIiwhMSk7Zz1nfHxJaihuLCJnYnJhaWQiLCExKTtoPWh8fElqKG4sImdhZF9zb3VyY2UiLCExKX1yZXR1cm4gY3MoZCxlLGwsZixnLGgpfQpmdW5jdGlvbiBkcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpLGc9JHIoTGooZCwicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKSxjPzQ6Mik7aWYoYiYmKCFlfHwhZikpe3ZhciBoPWQuaGFzaC5yZXBsYWNlKCIjIiwiIik7Znx8KGY9JHIoSWooaCwiZ2NsaWQiLCExKSwzKSk7ZXx8KGU9SWooaCwiZ2Nsc3JjIiwhMSkpfXJldHVybiBmJiZlJiYoZT09PSJhdy5kcyJ8fGU9PT0iYXcuZHYifHxlPT09IjNwLmRzInx8ZT09PSJkcyIpP1tmXTpnP1tnXTpbXX1mdW5jdGlvbiBlcygpe3JldHVybiBicyhBLmxvY2F0aW9uLmhyZWYsITApfQpmdW5jdGlvbiBjcyhhLGIsYyxkLGUsZil7dmFyIGc9e30saD1mdW5jdGlvbihsLG4pe2dbbl18fChnW25dPVtdKTtnW25dLnB1c2gobCl9O2cuZ2NsaWQ9YTtnLmdjbHNyYz1iO2cuZGNsaWQ9YztpZihhIT09dm9pZCAwJiZhLm1hdGNoKHRyKSlzd2l0Y2goYil7Y2FzZSB2b2lkIDA6aChhLCJhdyIpO2JyZWFrO2Nhc2UgImF3LmRzIjpoKGEsImF3Iik7aChhLCJkYyIpO2JyZWFrO2Nhc2UgImF3LmR2IjpZZig4KSYmKGgoYSwiYXciKSxoKGEsImRjIikpO2JyZWFrO2Nhc2UgImRzIjpoKGEsImRjIik7YnJlYWs7Y2FzZSAiM3AuZHMiOmgoYSwiZGMiKTticmVhaztjYXNlICJnZiI6aChhLCJnZiIpO2JyZWFrO2Nhc2UgImhhIjpoKGEsImhhIil9YyYmaChjLCJkYyIpO2QhPT12b2lkIDAmJnRyLnRlc3QoZCkmJihnLndicmFpZD1kLGgoZCwiZ2IiKSk7ZSE9PXZvaWQgMCYmdHIudGVzdChlKSYmKGcuZ2JyYWlkPWUsaChlLCJhZyIpKTtmIT09dm9pZCAwJiZ0ci50ZXN0KGYpJiYoZy5nYWRfc291cmNlPQpmLGgoZiwiZ3MiKSk7cmV0dXJuIGd9ZnVuY3Rpb24gZnMoKXtmb3IodmFyIGE9ZXMoKSxiPSEwLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpaWYoYVtkLnZhbHVlXSE9PXZvaWQgMCl7Yj0hMTticmVha31iJiYoYT1icyhBLmRvY3VtZW50LnJlZmVycmVyLCExKSxhLmdhZF9zb3VyY2U9dm9pZCAwKTtyZXR1cm4gYX1mdW5jdGlvbiBncyhhKXt2YXIgYj1mcygpO2hzKGIsITEsYSl9CmZ1bmN0aW9uIGlzKGEpe3ZhciBiPWFzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk7Yi5sZW5ndGh8fChiPWFzKEEuZG9jdW1lbnQucmVmZXJyZXIsITEsITApKTthPWF8fHt9O2pzKGEpO2lmKGIubGVuZ3RoKXt2YXIgYz1iWzBdLGQ9TmIoKSxlPXVxKGEsZCwhMCksZj1BcigpLGc9ZnVuY3Rpb24oKXtCcihmKSYmZS5leHBpcmVzIT09dm9pZCAwJiZrcigiZ2NsaWQiLHt2YWx1ZTp7dmFsdWU6Yy52YWx1ZSxjcmVhdGlvblRpbWVNczpkLGxpbmtEZWNvcmF0aW9uU291cmNlczpjLnFhLmdldCgpfSxleHBpcmVzOk51bWJlcihlLmV4cGlyZXMpfSl9O0hsKGZ1bmN0aW9uKCl7ZygpO0JyKGYpfHxJbChnLGYpfSxmKX19CmZ1bmN0aW9uIGpzKGEpe3ZhciBiPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjtpZih5ci50ZXN0KGIpfHx6ci50ZXN0KGIpfHxrcygpKXt2YXIgYzthOntmb3IodmFyIGQ9UmooQS5sb2NhdGlvbi5ocmVmKSxlPUpqKExqKGQsInF1ZXJ5IikpLGY9bShPYmplY3Qua2V5cyhlKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7aWYoIXJyW2hdKXt2YXIgbD1lW2hdWzBdfHwiIixuO2lmKCFsfHxsLmxlbmd0aDw1MHx8bC5sZW5ndGg+MjAwKW49ITE7ZWxzZXt2YXIgcD1ncihsKSxxO2lmKHApYzp7dmFyIHI9cDtpZihyJiZyLmxlbmd0aCE9PTApe3ZhciB0PTA7dHJ5e2Zvcih2YXIgdT0xMDt0PHIubGVuZ3RoJiYhKHUtLTw9MCk7KXt2YXIgdj1ocihyLHQpO2lmKHY9PT12b2lkIDApYnJlYWs7dmFyIHg9bSh2KSx5PXgubmV4dCgpLnZhbHVlLHo9eC5uZXh0KCkudmFsdWUsQz15LEQ9eixJPUMmNztpZihDPj4zPT09MTYzODIpe2lmKEkhPT0KMClicmVhazt2YXIgRz1ocihyLEQpO2lmKEc9PT12b2lkIDApYnJlYWs7cT1tKEcpLm5leHQoKS52YWx1ZT09PTE7YnJlYWsgY312YXIgTjtkOnt2YXIgUz12b2lkIDAsVz1yLGVhPUQ7c3dpdGNoKEkpe2Nhc2UgMDpOPShTPWhyKFcsZWEpKT09bnVsbD92b2lkIDA6U1sxXTticmVhayBkO2Nhc2UgMTpOPWVhKzg7YnJlYWsgZDtjYXNlIDI6dmFyIGphPWhyKFcsZWEpO2lmKGphPT09dm9pZCAwKWJyZWFrO3ZhciBmYT1tKGphKSxzYT1mYS5uZXh0KCkudmFsdWU7Tj1mYS5uZXh0KCkudmFsdWUrc2E7YnJlYWsgZDtjYXNlIDU6Tj1lYSs0O2JyZWFrIGR9Tj12b2lkIDB9aWYoTj09PXZvaWQgMHx8Tj5yLmxlbmd0aHx8Tjw9dClicmVhazt0PU59fWNhdGNoKG1hKXt9fXE9ITF9ZWxzZSBxPSExO249cX1pZihuKXtjPWw7YnJlYWsgYX19fWM9dm9pZCAwfXZhciBkYT1jO2RhJiZscygiZ2NsX2F3IixkYSw3LGEpfX0KZnVuY3Rpb24gbHMoYSxiLGMsZCl7bXMoYSxbe3ZlcnNpb246IiIsZ2NsaWQ6Yix0aW1lc3RhbXA6TmIoKSxxYTpUcihjKX1dLGQpfQpmdW5jdGlvbiBtcyhhLGIsYyl7Yz1jfHx7fTt2YXIgZD1BcigpLGU9ZnVuY3Rpb24oKXtpZihCcihkKSYmYi5sZW5ndGg+MCl7dmFyIGY9VXIoYSl8fFtdO2IuZm9yRWFjaChmdW5jdGlvbihnKXt2YXIgaD11cShjLGcudGltZXN0YW1wLCEwKTtoLmV4cGlyZXMhPT12b2lkIDAmJlFyKGYse3ZlcnNpb246IiIsZ2NsaWQ6Zy5nY2xpZCx0aW1lc3RhbXA6Zy50aW1lc3RhbXAsZXhwaXJlczpOdW1iZXIoaC5leHBpcmVzKSxxYTpnLnFhLGxhYmVsczpnLmxhYmVsc30sITApfSk7Zi5sZW5ndGgmJmtyKGEsZi5tYXAoZnVuY3Rpb24oZyl7dmFyIGg9e3ZhbHVlOmcuZ2NsaWQsY3JlYXRpb25UaW1lTXM6Zy50aW1lc3RhbXAsbGlua0RlY29yYXRpb25Tb3VyY2VzOmcucWE/Zy5xYS5nZXQoKTowfSxsO2lmKChsPWcubGFiZWxzKT09bnVsbD8wOmwubGVuZ3RoKWgubGFiZWxzPWcubGFiZWxzO3JldHVybnt2YWx1ZTpoLGV4cGlyZXM6TnVtYmVyKGcuZXhwaXJlcyl9fSkpfX07SGwoZnVuY3Rpb24oKXtCcihkKT8KZSgpOklsKGUsZCl9LGQpfQpmdW5jdGlvbiBocyhhLGIsYyxkLGUpe2M9Y3x8e307ZT1lfHxbXTt2YXIgZj1IcihjLnByZWZpeCksZz1kfHxOYigpLGg9TWF0aC5yb3VuZChnLzFFMyksbD1BcigpLG49ITEscD0hMSxxPVlmKDkpLHI9ZnVuY3Rpb24oKXtpZihCcihsKSl7dmFyIHQ9dXEoYyxnLCEwKTt0Lk1jPWw7Zm9yKHZhciB1PWZ1bmN0aW9uKFcsZWEpe3ZhciBqYT1JcihXLGYpO2phJiYob3EoamEsZWEsdCksVyE9PSJnYiImJihuPSEwKSl9LHY9ZnVuY3Rpb24oVyl7dmFyIGVhPVsiR0NMIixoLFddO2UubGVuZ3RoPjAmJmVhLnB1c2goZS5qb2luKCIuIikpO3JldHVybiBlYS5qb2luKCIuIil9LHg9bShbImF3IiwiZGMiLCJnZiIsImhhIiwiZ3AiXSkseT14Lm5leHQoKTsheS5kb25lO3k9eC5uZXh0KCkpe3ZhciB6PXkudmFsdWU7YVt6XSYmdSh6LHYoYVt6XVswXSkpfWlmKCghbnx8cSkmJmEuZ2Ipe3ZhciBDPWEuZ2JbMF0sRD1JcigiZ2IiLGYpOyFiJiZFcihEKS5zb21lKGZ1bmN0aW9uKFcpe3JldHVybiBXLmdjbGlkPT09QyYmClcubGFiZWxzJiZXLmxhYmVscy5sZW5ndGg+MH0pfHx1KCJnYiIsdihDKSl9fWlmKCFwJiZhLmdicmFpZCYmQnIoImFkX3N0b3JhZ2UiKSYmKHA9ITAsIW58fHEpKXt2YXIgST1hLmdicmFpZCxHPUlyKCJhZyIsZik7aWYoYnx8IUpyKEcpLnNvbWUoZnVuY3Rpb24oVyl7cmV0dXJuIFcuZ2NsaWQ9PT1JJiZXLmxhYmVscyYmVy5sYWJlbHMubGVuZ3RoPjB9KSl7dmFyIE49e30sUz0oTi5rPUksTi5pPSIiK2gsTi5iPWUsTik7QXEoRyxTLDUsYyxnKX19bnMoYSxmLGcsYyl9O0hsKGZ1bmN0aW9uKCl7cigpO0JyKGwpfHxJbChyLGwpfSxsKX0KZnVuY3Rpb24gbnMoYSxiLGMsZCl7aWYoYS5nYWRfc291cmNlIT09dm9pZCAwJiZCcigiYWRfc3RvcmFnZSIpKXt2YXIgZT1xZCgpO2lmKGUhPT0iciImJmUhPT0iaCIpe3ZhciBmPWEuZ2FkX3NvdXJjZSxnPUlyKCJncyIsYik7aWYoZyl7dmFyIGg9TWF0aC5mbG9vcigoTmIoKS0ocGQoKXx8MCkpLzFFMyksbCxuPWlyKCkscD17fTtsPShwLms9ZixwLmk9IiIraCxwLnU9bixwKTtBcShnLGwsNSxkLGMpfX19fWZ1bmN0aW9uIG9zKGEsYixjKXtmb3IodmFyIGQ9d3EoYixjKSxlPTA7ZTxkLmxlbmd0aDsrK2UpaWYoTnIoZFtlXSk+YSlyZXR1cm4hMDtyZXR1cm4hMX0KZnVuY3Rpb24gcHMoYSl7dmFyIGI9cXMsYz1ycyhhLnByZWZpeCk7Q3IoZnVuY3Rpb24oKXtmb3IodmFyIGQ9SHIoYS5wcmVmaXgpLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWNbZ107aWYoaCl7dmFyIGw9TWF0aC5taW4oc3MoaCksTmIoKSksbj11cShhLGwsITApO24uTWM9QXIoKTt2YXIgcD1JcihnLGQpO3AmJm9xKHAsaCxuKX19dmFyIHE9VXEoITApO2hzKGNzKHEuZ2NsaWQscS5nY2xzcmMpLCExLGEpfSxBcigpKX0KZnVuY3Rpb24gcnMoYSl7dmFyIGI9VXEoITApLGM9SHIoYSksZD17fSxlO2ZvcihlIGluIHhyKWlmKHhyLmhhc093blByb3BlcnR5KGUpKXt2YXIgZj1lLGc9SXIoZixjKTtpZihnIT09dm9pZCAwKXt2YXIgaD1iW2ddO2lmKGgpe3ZhciBsPXNzKGgpLG47YTp7Zm9yKHZhciBwPU1hdGgubWluKGwsTmIoKSl8fE5iKCkscT1jcShnLEIuY29va2llLHZvaWQgMCxBcigpKSxyPTA7cjxxLmxlbmd0aDsrK3IpaWYoc3MocVtyXSk+cCl7bj0hMDticmVhayBhfW49ITF9bnx8KGRbZl09aCl9fX1yZXR1cm4gZH0KZnVuY3Rpb24gdHMoYSl7dmFyIGI9WyJhZyJdLGM9VXEoITApLGQ9SHIoYS5wcmVmaXgpO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoZil7dmFyIGc9Y1tmXTtpZihnKXt2YXIgaD0kcChnLDUpO2lmKGgpe3ZhciBsPU5yKGgpO2x8fChsPU5iKCkpO2lmKG9zKGwsZiw1KSlicmVhaztoLmk9IiIrTWF0aC5yb3VuZChsLzFFMyk7QXEoZixoLDUsYSxsKX19fX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiBJcihhLGIpe3ZhciBjPXhyW2FdO2lmKGMhPT12b2lkIDApcmV0dXJuIGIrY31mdW5jdGlvbiBzcyhhKXtyZXR1cm4gVnIoYS5zcGxpdCgiLiIpKS5sZW5ndGghPT0wPyhOdW1iZXIoYS5zcGxpdCgiLiIpWzFdKXx8MCkqMUUzOjB9ZnVuY3Rpb24gTnIoYSl7cmV0dXJuIGE/KE51bWJlcihhLmkpfHwwKSoxRTM6MH0KZnVuY3Rpb24gVnIoYSl7cmV0dXJuIGEubGVuZ3RoPDN8fGFbMF0hPT0iR0NMIiYmYVswXSE9PSIxInx8IS9eXGQrJC8udGVzdChhWzFdKXx8IXRyLnRlc3QoYVsyXSk/W106YX1mdW5jdGlvbiB1cyhhLGIsYyxkKXt2YXIgZT1xcztpZihBcnJheS5pc0FycmF5KGEpJiZTcChBKSl7dmFyIGY9SHIoZCksZz1mdW5jdGlvbigpe2Zvcih2YXIgaD17fSxsPTA7bDxlLmxlbmd0aDsrK2wpe3ZhciBuPUlyKGVbbF0sZik7aWYobil7dmFyIHA9Y3EobixCLmNvb2tpZSx2b2lkIDAsQXIoKSk7cC5sZW5ndGgmJihoW25dPXAuc29ydCgpW3AubGVuZ3RoLTFdKX19cmV0dXJuIGh9O0NyKGZ1bmN0aW9uKCl7YXIoZyxhLGIsYyl9LEFyKCkpfX0KZnVuY3Rpb24gdnMoYSxiLGMpe3ZhciBkPXFzO2lmKFlmKDEzKSYmQXJyYXkuaXNBcnJheShhKSYmU3AoQSkpe3ZhciBlPWZ1bmN0aW9uKCl7Zm9yKHZhciBmPXt9LGc9MDtnPGQubGVuZ3RoOysrZyl7dmFyIGg9dnJbZFtnXV07aWYoaCl7dmFyIGw9Y3EoaCxCLmNvb2tpZSx2b2lkIDAsQXIoKSk7aWYobC5sZW5ndGgpe2Zvcih2YXIgbj12b2lkIDAscD0wLHE9bShsKSxyPXEubmV4dCgpOyFyLmRvbmU7cj1xLm5leHQoKSl7dmFyIHQ9ci52YWx1ZSx1PSRwKHQsNCk7aWYodSYmKHUubT09PSIxInx8WWYoMTYpKSl7dmFyIHY9TnIodSk7dj49cCYmKHA9dixuPXQpfX1uJiYoZltoXT1uKX19fXJldHVybiBmfTtDcihmdW5jdGlvbigpe2FyKGUsYSxiLGMpfSxBcigpKX19CmZ1bmN0aW9uIHdzKGEsYixjLGQpe2lmKEFycmF5LmlzQXJyYXkoYSkmJlNwKEEpKXt2YXIgZT1bImFnIl0sZj1IcihkKSxnPWZ1bmN0aW9uKCl7Zm9yKHZhciBoPXt9LGw9MDtsPGUubGVuZ3RoOysrbCl7dmFyIG49SXIoZVtsXSxmKTtpZighbilyZXR1cm57fTt2YXIgcD13cShuLDUpO2lmKHAubGVuZ3RoKXt2YXIgcT1wLnNvcnQoZnVuY3Rpb24ocix0KXtyZXR1cm4gTnIodCktTnIocil9KVswXTtoW25dPWFxKHEsNSl9fXJldHVybiBofTtDcihmdW5jdGlvbigpe2FyKGcsYSxiLGMpfSxbImFkX3N0b3JhZ2UiXSl9fWZ1bmN0aW9uIFJyKGEpe3JldHVybiBhLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gdHIudGVzdChiLmdjbGlkKX0pfQpmdW5jdGlvbiB4cyhhLGIpe2lmKFNwKEEpKXtmb3IodmFyIGM9SHIoYi5wcmVmaXgpLGQ9e30sZT0wO2U8YS5sZW5ndGg7ZSsrKXhyW2FbZV1dJiYoZFthW2VdXT14clthW2VdXSk7Q3IoZnVuY3Rpb24oKXtHYihkLGZ1bmN0aW9uKGYsZyl7dmFyIGg9Y3EoYytnLEIuY29va2llLHZvaWQgMCxBcigpKTtoLnNvcnQoZnVuY3Rpb24odCx1KXtyZXR1cm4gc3ModSktc3ModCl9KTtpZihoLmxlbmd0aCl7dmFyIGw9aFswXSxuPXNzKGwpLHA9VnIobC5zcGxpdCgiLiIpKS5sZW5ndGghPT0wP2wuc3BsaXQoIi4iKS5zbGljZSgzKTpbXSxxPXt9LHI7cj1WcihsLnNwbGl0KCIuIikpLmxlbmd0aCE9PTA/bC5zcGxpdCgiLiIpWzJdOnZvaWQgMDtxW2ZdPVtyXTtocyhxLCEwLGIsbixwKX19KX0sQXIoKSl9fQpmdW5jdGlvbiB5cyhhKXt2YXIgYj1bImFnIl0sYz1bImdicmFpZCJdO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUhyKGEucHJlZml4KSxlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoIWYpYnJlYWs7dmFyIGc9d3EoZiw1KTtpZihnLmxlbmd0aCl7dmFyIGg9Zy5zb3J0KGZ1bmN0aW9uKHEscil7cmV0dXJuIE5yKHIpLU5yKHEpfSlbMF0sbD1OcihoKSxuPWguYixwPXt9O3BbY1tlXV09aC5rO2hzKHAsITAsYSxsLG4pfX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiB6cyhhLGIpe2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7KytjKWlmKGFbYltjXV0pcmV0dXJuITA7cmV0dXJuITF9CmZ1bmN0aW9uIEFzKGEpe2Z1bmN0aW9uIGIoaCxsLG4pe24mJihoW2xdPW4pfWlmKEVsKCkpe3ZhciBjPWVzKCksZDthLmluY2x1ZGVzKCJnYWRfc291cmNlIikmJihkPWMuZ2FkX3NvdXJjZSE9PXZvaWQgMD9jLmdhZF9zb3VyY2U6VXEoITEpLl9ncyk7aWYoenMoYyxhKXx8ZCl7dmFyIGU9e307YihlLCJnY2xpZCIsYy5nY2xpZCk7YihlLCJkY2xpZCIsYy5kY2xpZCk7YihlLCJnY2xzcmMiLGMuZ2Nsc3JjKTtiKGUsIndicmFpZCIsYy53YnJhaWQpO2IoZSwiZ2JyYWlkIixjLmdicmFpZCk7YnIoZnVuY3Rpb24oKXtyZXR1cm4gZX0sMyk7dmFyIGY9e30sZz0oZi5fdXA9IjEiLGYpO2IoZywiX2dzIixkKTticihmdW5jdGlvbigpe3JldHVybiBnfSwxKX19fWZ1bmN0aW9uIGtzKCl7dmFyIGE9UmooQS5sb2NhdGlvbi5ocmVmKTtyZXR1cm4gTGooYSwicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpfQpmdW5jdGlvbiBCcyhhKXtpZighWWYoMSkpcmV0dXJuIG51bGw7dmFyIGI9VXEoITApLmdhZF9zb3VyY2U7aWYoYiE9bnVsbClyZXR1cm4gQS5sb2NhdGlvbi5oYXNoPSIiLGI7aWYoWWYoMikpe2I9a3MoKTtpZihiIT1udWxsKXJldHVybiBiO3ZhciBjPWVzKCk7aWYoenMoYyxhKSlyZXR1cm4iMCJ9cmV0dXJuIG51bGx9ZnVuY3Rpb24gQ3MoYSl7dmFyIGI9QnMoYSk7YiE9bnVsbCYmYnIoZnVuY3Rpb24oKXt2YXIgYz17fTtyZXR1cm4gYy5nYWRfc291cmNlPWIsY30sNCl9CmZ1bmN0aW9uIERzKGEsYixjKXt2YXIgZD1bXTtpZihiLmxlbmd0aD09PTApcmV0dXJuIGQ7Zm9yKHZhciBlPXt9LGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXSxoPWcuemc/Zy56ZzoiZ2NsIjtpZigoZy5sYWJlbHN8fFtdKS5pbmRleE9mKGMpPT09LTEpe2EucHVzaCgwKTt2YXIgbD0hMSxuPXZvaWQgMDtpZigobj1nLm9hKT09bnVsbD8wOm4uaW5jbHVkZXMoMikpbD0hMDt2YXIgcD12b2lkIDA7KChwPWcub2EpPT1udWxsPzA6cC5pbmNsdWRlcygxKSkmJiFlW2hdJiYobD0hMCxlW2hdPSEwKTtsJiZkLnB1c2goZyl9ZWxzZXthLnB1c2goMSk7dmFyIHE9dm9pZCAwO2lmKChxPWcub2EpPT1udWxsPzA6cS5pbmNsdWRlcygxKSllW2hdPSEwfX1yZXR1cm4gZH0KZnVuY3Rpb24gRXMoYSxiLGMsZCxlKXtlPWU9PT12b2lkIDA/ITE6ZTt2YXIgZj1bXTtjPWN8fHt9O2lmKCFCcihBcigpKSlyZXR1cm4gZjt2YXIgZz1FcihhLGUpLGg9RHMoZixnLGIpO2lmKGgubGVuZ3RoJiYhZCl7Zm9yKHZhciBsPVtdLG49ITEscD1tKGgpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlLHQ9cix1PXQudmVyc2lvbix2PXQuZ2NsaWQseD10LnRpbWVzdGFtcCx5PXQub2Esej0odC5sYWJlbHN8fFtdKS5jb25jYXQoW2JdKSxDPXZvaWQgMDtpZigoKEM9eSk9PW51bGw/MDpDLmluY2x1ZGVzKDEpKSYmIW4pe3ZhciBEPVt1LE1hdGgucm91bmQoeC8xRTMpLHZdLmNvbmNhdCh6KS5qb2luKCIuIiksST11cShjLHgsITApO0kuTWM9QXIoKTtvcShhLEQsSSk7bj0hMH12YXIgRz12b2lkIDA7ZSYmKChHPXkpPT1udWxsPzA6Ry5pbmNsdWRlcygyKSkmJmwucHVzaChuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHIse2xhYmVsczp6fSkpfWwubGVuZ3RoJiYKbXMoImdjbF9nYiIsbCxjKX1yZXR1cm4gZn0KZnVuY3Rpb24gRnMoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3ZhciBkPVtdO2I9Ynx8e307dmFyIGU9R3IoYixjKSxmPURzKGQsZSxhKTtpZihmLmxlbmd0aCl7Zm9yKHZhciBnPVtdLGg9e30sbD1tKGYpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlLHE9SHIoYi5wcmVmaXgpLHI9SXIocC56ZyxxKTtpZighcilyZXR1cm4gZDt2YXIgdD1wLHU9dC52ZXJzaW9uLHY9dC5nY2xpZCx4PXQudGltZXN0YW1wLHk9dC5vYSx6PU1hdGgucm91bmQoeC8xRTMpLEM9THIodC5sYWJlbHN8fFtdLFthXSksRD12b2lkIDA7aWYoKEQ9eSk9PW51bGw/MDpELmluY2x1ZGVzKDEpKWlmKHAuemc9PT0iYWciJiYhaC5hZyl7dmFyIEk9e30sRz0oSS5rPXYsSS5pPSIiK3osSS5iPUMsSSk7QXEocixHLDUsYix4KTtoLmFnPSEwfWVsc2UgaWYocC56Zz09PSJnYiImJiFoLmdiKXt2YXIgTj1bdSx6LHZdLmNvbmNhdChDKS5qb2luKCIuIiksUz11cShiLHgsITApO1MuTWM9CkFyKCk7b3EocixOLFMpO2guZ2I9ITB9dmFyIFc9dm9pZCAwO2MmJigoVz15KT09bnVsbD8wOlcuaW5jbHVkZXMoMikpJiZnLnB1c2gobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxwLHtsYWJlbHM6Q30pKX1nLmxlbmd0aCYmbXMoImdjbF9nYiIsZyxiKX1yZXR1cm4gZH1mdW5jdGlvbiBHcyhhLGIpe3ZhciBjPUhyKGIpLGQ9SXIoYSxjKTtpZighZClyZXR1cm4gMDt2YXIgZTtlPWE9PT0iYWciP0pyKGQpOkVyKGQpO2Zvcih2YXIgZj0wLGc9MDtnPGUubGVuZ3RoO2crKylmPU1hdGgubWF4KGYsZVtnXS50aW1lc3RhbXApO3JldHVybiBmfWZ1bmN0aW9uIEhzKGEpe2Zvcih2YXIgYj0wLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpZm9yKHZhciBlPWFbZC52YWx1ZV0sZj0wO2Y8ZS5sZW5ndGg7ZisrKWI9TWF0aC5tYXgoYixOdW1iZXIoZVtmXS50aW1lc3RhbXApKTtyZXR1cm4gYn0KZnVuY3Rpb24gSXMoYSl7dmFyIGI9TWF0aC5tYXgoR3MoImF3IixhKSxIcyhCcihBcigpKT9ScCgpOnt9KSksYz1NYXRoLm1heChHcygiZ2IiLGEpLEhzKEJyKEFyKCkpP1JwKCJfZ2FjX2diIiwhMCk6e30pKTtjPU1hdGgubWF4KGMsR3MoImFnIixhKSk7cmV0dXJuIGM+Yn07dmFyIEpzPVJlZ0V4cCgiXlVBLVxcZCstXFxkKyUzQVtcXHctXSsoPzolMkNbXFx3LV0rKSooPzolM0JVQS1cXGQrLVxcZCslM0FbXFx3LV0rKD86JTJDW1xcdy1dKykqKSokIiksS3M9L15+P1tcdy1dKyg/Olwufj9bXHctXSspKiQvLExzPS9eXGQrXC5mbHNcLmRvdWJsZWNsaWNrXC5uZXQkLyxNcz0vO2dhYz0oW147P10rKS8sTnM9LztnYWNnYj0oW147P10rKS87CmZ1bmN0aW9uIE9zKGEsYil7aWYoTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpKXt2YXIgYz1CLmxvY2F0aW9uLmhyZWYubWF0Y2goYik7cmV0dXJuIGMmJmMubGVuZ3RoPT09MiYmY1sxXS5tYXRjaChKcyk/S2ooY1sxXSl8fCIiOiIifWZvcih2YXIgZD1bXSxlPW0oT2JqZWN0LmtleXMoYSkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXtmb3IodmFyIGc9Zi52YWx1ZSxoPVtdLGw9YVtnXSxuPTA7bjxsLmxlbmd0aDtuKyspaC5wdXNoKGxbbl0uZ2NsaWQpO2QucHVzaChnKyI6IitoLmpvaW4oIiwiKSl9cmV0dXJuIGQubGVuZ3RoPjA/ZC5qb2luKCI7Iik6IiJ9CmZ1bmN0aW9uIFBzKGEsYixjKXtmb3IodmFyIGQ9QnIoQXIoKSk/UnAoIl9nYWNfZ2IiLCEwKTp7fSxlPVtdLGY9ITEsZz1tKE9iamVjdC5rZXlzKGQpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPUVzKCJfZ2FjX2diXyIrbCxhLGIsYyk7Zj1mfHxuLmxlbmd0aCE9PTAmJm4uc29tZShmdW5jdGlvbihwKXtyZXR1cm4gcD09PTF9KTtlLnB1c2gobCsiOiIrbi5qb2luKCIsIikpfXJldHVybntScjpmP2Uuam9pbigiOyIpOiIiLFFyOk9zKGQsTnMpfX1mdW5jdGlvbiBRcyhhKXt2YXIgYj1CLmxvY2F0aW9uLmhyZWYubWF0Y2gobmV3IFJlZ0V4cCgiOyIrYSsiPShbXjs/XSspIikpO3JldHVybiBiJiZiLmxlbmd0aD09PTImJmJbMV0ubWF0Y2goS3MpP2JbMV06dm9pZCAwfQpmdW5jdGlvbiBScyhhKXt2YXIgYj17fSxjLGQsZTtMcy50ZXN0KEIubG9jYXRpb24uaG9zdCkmJihjPVFzKCJnY2xncyIpLGQ9UXMoImdjbHN0IiksZT1RcygiZ2NsbHAiKSk7aWYoYyYmZCYmZSliLkVnPWMsYi5XaD1kLGIuVWg9ZTtlbHNle3ZhciBmPU5iKCksZz1NcigoYXx8Il9nY2wiKSsiX2dzIiksaD1nLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gcC5nY2xpZH0pLGw9Zy5tYXAoZnVuY3Rpb24ocCl7cmV0dXJuIGYtcC50aW1lc3RhbXB9KSxuPWcubWFwKGZ1bmN0aW9uKHApe3JldHVybiBwLm9kfSk7aC5sZW5ndGg+MCYmbC5sZW5ndGg+MCYmbi5sZW5ndGg+MCYmKGIuRWc9aC5qb2luKCIuIiksYi5XaD1sLmpvaW4oIi4iKSxiLlVoPW4uam9pbigiLiIpKX1yZXR1cm4gYn0KZnVuY3Rpb24gU3MoYSxiKXt2YXIgYz1hLnNwbGl0KCIuIiksZD1iP2Iuc3BsaXQoIi4iKTpbXSxlPWQubGVuZ3RoPT09Yy5sZW5ndGg/ZDp2b2lkIDA7cmV0dXJuIGMubWFwKGZ1bmN0aW9uKGYsZyl7dmFyIGg9e2djbGlkOmZ9O2lmKGUpe3ZhciBsPWVbZ10uc3BsaXQoIl8iKTtpZihsLmxlbmd0aD09PTIpe2gucWE9bmV3IGVyKE51bWJlcihsWzBdKSk7dmFyIG47dmFyIHA9TnVtYmVyKGxbMV0pO2lmKHA9PT0wKW49WzBdO2Vsc2V7dmFyIHE9W107cCYxJiZxLnB1c2goMSk7cCYyJiZxLnB1c2goMik7cCY0JiZxLnB1c2goMyk7cCY4JiZxLnB1c2goNCk7cCYxNiYmcS5wdXNoKDUpO249cX1oLm9hPW59fXJldHVybiBofSl9CmZ1bmN0aW9uIFRzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2lmKExzLnRlc3QoQi5sb2NhdGlvbi5ob3N0KSl7dmFyIGU9UXMoYyk7aWYoZSl7aWYoWWYoMTcpKXt2YXIgZj1RcyhjKyJfc3JjIik7cmV0dXJuIFNzKGUsZil9aWYoZCl7dmFyIGc9bmV3IGVyO2ZyKGcsMik7ZnIoZywzKTtyZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpnLG9hOlsxXX19KX1yZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpuZXcgZXIsb2E6WzFdfX0pfX1lbHNle2lmKGI9PT0iZ2NsaWQiKXtmb3IodmFyIGg9RXIoKGF8fCJfZ2NsIikrIl9hdyIsZCksbD1OdW1iZXIoWGZbNF09PT12b2lkIDA/MDpYZls0XSksbj1tKFVzKCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3EudGltZXN0YW1wPmwmJlFyKGgscSl9cmV0dXJuIGh9aWYoYj09PSJ3YnJhaWQiKXJldHVybiBFcigoYXx8CiJfZ2NsIikrIl9nYiIsZCk7aWYoYj09PSJicmFpZHMiKXJldHVybiBHcih7cHJlZml4OmF9LGQpfXJldHVybltdfWZ1bmN0aW9uIFVzKCl7cmV0dXJuKHdxKHZyLmF3LDQpfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLm09PT0iMSJ9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJue2djbGlkOmEuayx0aW1lc3RhbXA6TnVtYmVyKGEuaSksdmVyc2lvbjoiIixvYTpbNV19fSl9ZnVuY3Rpb24gVnMoYSl7Zm9yKHZhciBiPTAsYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2U+MCYmKGJ8PTE8PGUtMSl9cmV0dXJuIGIudG9TdHJpbmcoKX1mdW5jdGlvbiBXcyhhKXtyZXR1cm4gTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpPyEoUXMoImdjbGF3Iil8fFFzKCJnYWMiKSk6SXMoYSl9CmZ1bmN0aW9uIFhzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlO2U9Yz9GcyhhLGIsZCk6RXMoKGImJmIucHJlZml4fHwiX2djbCIpKyJfZ2IiLGEsYix2b2lkIDAsZCk7cmV0dXJuIGUubGVuZ3RoPT09MHx8ZS5ldmVyeShmdW5jdGlvbihmKXtyZXR1cm4gZj09PTB9KT8iIjplLmpvaW4oIi4iKX07CnZhciBZcz1mdW5jdGlvbihhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1raigiYWRzX3BhZ2V2aWV3IixmdW5jdGlvbigpe3JldHVybnt9fSk7aWYoY1thXSlyZXR1cm4hMTtifHwoY1thXT0hMCk7cmV0dXJuITB9LFpzPWZ1bmN0aW9uKGEpe3JldHVybiBTaihhLCJnY2xpZCBkY2xpZCBnYnJhaWQgd2JyYWlkIGdjbGF3IGdjbGRjIGdjbGhhIGdjbGdmIGdjbGdiIF9nbCIuc3BsaXQoIiAiKSwiMCIpfSxhdD1mdW5jdGlvbigpe3ZhciBhPVJqKEEubG9jYXRpb24uaHJlZiksYj12b2lkIDAsYz12b2lkIDAsZD1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfc291cmNlIiksZT1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfY2FtcGFpZ25pZCIpLGYsZz1hLmhhc2gucmVwbGFjZSgiIyIsIiIpLm1hdGNoKCRzKTtmPWc/Z1sxXTp2b2lkIDA7ZCYmZj8oYj1kLGM9MSk6ZD8oYj1kLGM9Mik6ZiYmKGI9ZixjPTMpO3JldHVybntEZzpiLFNyOmMsVGg6ZX19LGJ0PWZ1bmN0aW9uKGEpe3ZhciBiPQpPcCghMSk9PT0xP0EudG9wLmxvY2F0aW9uLmhyZWY6QS5sb2NhdGlvbi5ocmVmO3JldHVybiBhKGIpfSxjdD1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZD1ScihkKTtmb3IodmFyIGU9W10sZj0wO2Y8ZC5sZW5ndGg7ZisrKWUucHVzaChkW2ZdLmdjbGlkKTtlLmxlbmd0aCYmYi5wdXNoKGMrIjoiK2Uuam9pbigiLCIpKX0pO3JldHVybiBiLmpvaW4oIjsiKX0sZXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWR0KGEpO2lmKGQpcmV0dXJuIGQ7dmFyIGU9SHIoYik7aWYoZT09PSJfZ2NsIil7dmFyIGY9IVhvKGZwKSYmYyxnPVtdO2E9PT0iYXciP2c9YXMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKTphPT09ImRjIiYmKGc9ZHMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKSk7aWYoZy5sZW5ndGg+MClyZXR1cm4gZj9be3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsZ2NsaWQ6IjAifV06Zy5tYXAoZnVuY3Rpb24obCl7cmV0dXJue3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsCmdjbGlkOmwudmFsdWUscWE6bC5xYSxvYTpbMV19fSl9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9hPT09ImF3Ij9FcihoLE0oNTYyKSk6WnIoaCk6W119LGR0PWZ1bmN0aW9uKGEpe3ZhciBiPVRqKCJnY2wiK2EpLGM9YT09PSJkYyJ8fGE9PT0iYXciP1RqKCJnY2wiK2ErIl9zcmMiKTp2b2lkIDA7aWYoYilyZXR1cm4gU3MoYixjKX0sZnQ9ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PT0iYXcifHxhPT09ImRjInx8YT09PSJnYiIpe3ZhciBkPVRqKCJnY2wiK2EpO2lmKGQpcmV0dXJuIGQuc3BsaXQoIi4iKX12YXIgZT1IcihiKTtpZihlPT09Il9nY2wiKXt2YXIgZj0hWG8oZnApJiZjLGc7Zz1lcygpW2FdfHxbXTtpZihnLmxlbmd0aD4wKXJldHVybiBmP1siMCJdOmd9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9EcihoKTpbXX0sZ3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKCFSKGEsYil8fCFSKGEsYykpcmV0dXJuIiI7dmFyIGQ9UihhLGIpLnNwbGl0KCIuIiksZT1SKGEsYykuc3BsaXQoIi4iKTtyZXR1cm4gZC5sZW5ndGgmJgplLmxlbmd0aCYmZC5sZW5ndGg9PT1lLmxlbmd0aCYmZFswXSYmZVswXT9kLm1hcChmdW5jdGlvbihmLGcpe3JldHVybiBmKyJfIitlW2ddfSkuam9pbigiLiIpOiIifSwkcz0vXmdhZF9zb3VyY2VbXz1dKFxkKykkLztmdW5jdGlvbiBodChhLGIsYyl7dmFyIGQ9UihhLEYuRC5UYSk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0Iilmb3IodmFyIGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1kW2ddO2lmKGghPT12b2lkIDApe2g9PT1udWxsJiYoaD0iIik7dmFyIGw9ImdhcC4iK2csbj1TdHJpbmcoaCk7Yz9jKGwsbik6YltsXT1ufX19O3ZhciBpdD0hMSxqdD1bXTtmdW5jdGlvbiBrdCgpe2lmKCFpdCl7aXQ9ITA7Zm9yKHZhciBhPWp0Lmxlbmd0aC0xO2E+PTA7YS0tKWp0W2FdKCk7anQ9W119fTtmdW5jdGlvbiBsdChhKXt2YXIgYj1bXSxjPTAsZDtmb3IoZCBpbiBhKWJbYysrXT1hW2RdO3JldHVybiBifTtmdW5jdGlvbiBtdChhLGIsYyl7cmV0dXJuIHR5cGVvZiBhLmFkZEV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iPyhhLmFkZEV2ZW50TGlzdGVuZXIoYixjLCExKSwhMCk6ITF9ZnVuY3Rpb24gbnQoYSxiLGMpe3R5cGVvZiBhLnJlbW92ZUV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iJiZhLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixjLCExKX07ZnVuY3Rpb24gb3QoYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHN8fChhLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cz1bXSk7dmFyIGU9UHAoYS5kb2N1bWVudCk7aWYoYyl7dmFyIGY9ZnVuY3Rpb24oKXtpZihjKXt2YXIgZz1hLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cyxoPURjKGcsZSk7aD49MCYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGcsaCwxKX1udChlLCJsb2FkIixmKTtudChlLCJlcnJvciIsZil9O210KGUsImxvYWQiLGYpO210KGUsImVycm9yIixmKX1kJiYoZS5hdHRyaWJ1dGlvblNyYz0iIik7ZS5zcmM9YjthLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cy5wdXNoKGUpfQpmdW5jdGlvbiBwdChhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz0iaHR0cHM6Ly9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvZ2VuXzIwND9pZD10Y2ZlIjtJcChhLGZ1bmN0aW9uKGQsZSl7aWYoZHx8ZD09PTApYys9IiYiK2UrIj0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoZCkpfSk7cXQoYyxiKX0KZnVuY3Rpb24gcXQoYSxiKXt2YXIgYz13aW5kb3csZDtiPWI9PT12b2lkIDA/ITE6YjtkPWQ9PT12b2lkIDA/ITE6ZDtpZihjLmZldGNoKXt2YXIgZT17a2VlcGFsaXZlOiEwLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixyZWRpcmVjdDoiZm9sbG93IixtZXRob2Q6ImdldCIsbW9kZToibm8tY29ycyJ9O2QmJihlLm1vZGU9ImNvcnMiLCJzZXRBdHRyaWJ1dGlvblJlcG9ydGluZyJpbiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU/ZS5hdHRyaWJ1dGlvblJlcG9ydGluZz17ZXZlbnRTb3VyY2VFbGlnaWJsZToidHJ1ZSIsdHJpZ2dlckVsaWdpYmxlOiJmYWxzZSJ9OmUuaGVhZGVycz17IkF0dHJpYnV0aW9uLVJlcG9ydGluZy1FbGlnaWJsZSI6ImV2ZW50LXNvdXJjZSJ9KTtjLmZldGNoKGEsZSl9ZWxzZSBvdChjLGEsYj09PXZvaWQgMD8hMTpiLGQ9PT12b2lkIDA/ITE6ZCl9O2Z1bmN0aW9uIHJ0KCl7dGhpcy5mYT10aGlzLmZhO3RoaXMuUj10aGlzLlJ9cnQucHJvdG90eXBlLmZhPSExO3J0LnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5mYXx8KHRoaXMuZmE9ITAsdGhpcy5OKCkpfTtydC5wcm90b3R5cGVbU3ltYm9sLmRpc3Bvc2VdPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCl9O3J0LnByb3RvdHlwZS5hZGRPbkRpc3Bvc2VDYWxsYmFjaz1mdW5jdGlvbihhLGIpe3RoaXMuZmE/YiE9PXZvaWQgMD9hLmNhbGwoYik6YSgpOih0aGlzLlJ8fCh0aGlzLlI9W10pLGImJihhPWEuYmluZChiKSksdGhpcy5SLnB1c2goYSkpfTtydC5wcm90b3R5cGUuTj1mdW5jdGlvbigpe2lmKHRoaXMuUilmb3IoO3RoaXMuUi5sZW5ndGg7KXRoaXMuUi5zaGlmdCgpKCl9O2Z1bmN0aW9uIHN0KGEpe2EuYWRkdGxDb25zZW50PT09dm9pZCAwfHx2ZihhLmFkZHRsQ29uc2VudCl8fChhLmFkZHRsQ29uc2VudD12b2lkIDApO2EuZ2RwckFwcGxpZXM9PT12b2lkIDB8fHdmKGEuZ2RwckFwcGxpZXMpfHwoYS5nZHByQXBwbGllcz12b2lkIDApO3JldHVybiBhLnRjU3RyaW5nIT09dm9pZCAwJiYhdmYoYS50Y1N0cmluZyl8fGEubGlzdGVuZXJJZCE9PXZvaWQgMCYmIXVmKGEubGlzdGVuZXJJZCk/MjphLmNtcFN0YXR1cyYmYS5jbXBTdGF0dXMhPT0iZXJyb3IiPzA6M312YXIgdHQ9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306YjtydC5jYWxsKHRoaXMpO3RoaXMuSD1udWxsO3RoaXMuamE9e307dGhpcy55YT0wO3RoaXMuWj1udWxsO3RoaXMuSz1hO3ZhciBjO3RoaXMudGltZW91dE1zPShjPWIudGltZW91dE1zKSE9bnVsbD9jOjUwMDt2YXIgZDt0aGlzLkVqPShkPWIuRWopIT1udWxsP2Q6ITF9O3dhKHR0LHJ0KTsKdHQucHJvdG90eXBlLk49ZnVuY3Rpb24oKXt0aGlzLmphPXt9O3RoaXMuWiYmKG50KHRoaXMuSywibWVzc2FnZSIsdGhpcy5aKSxkZWxldGUgdGhpcy5aKTtkZWxldGUgdGhpcy5qYTtkZWxldGUgdGhpcy5LO2RlbGV0ZSB0aGlzLkg7cnQucHJvdG90eXBlLk4uY2FsbCh0aGlzKX07dmFyIHZ0PWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYS5LLl9fdGNmYXBpPT09ImZ1bmN0aW9uInx8dXQoYSkhPW51bGx9Owp0dC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9e2ludGVybmFsQmxvY2tPbkVycm9yczp0aGlzLkVqfSxkPUhwKGZ1bmN0aW9uKCl7YShjKX0pLGU9MDt0aGlzLnRpbWVvdXRNcyE9PS0xJiYoZT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSI7Yy5pbnRlcm5hbEVycm9yU3RhdGU9MTtkKCl9LHRoaXMudGltZW91dE1zKSk7dmFyIGY9ZnVuY3Rpb24oZyxoKXtjbGVhclRpbWVvdXQoZSk7Zz8oYz1nLGMuaW50ZXJuYWxFcnJvclN0YXRlPXN0KGMpLGMuaW50ZXJuYWxCbG9ja09uRXJyb3JzPWIuRWosaCYmYy5pbnRlcm5hbEVycm9yU3RhdGU9PT0wfHwoYy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsaHx8KGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpKSk6KGMudGNTdHJpbmc9InRjdW5hdmFpbGFibGUiLGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpO2EoYyl9O3RyeXt3dCh0aGlzLCJhZGRFdmVudExpc3RlbmVyIiwKZil9Y2F0Y2goZyl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsYy5pbnRlcm5hbEVycm9yU3RhdGU9MyxlJiYoY2xlYXJUaW1lb3V0KGUpLGU9MCksZCgpfX07dHQucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7YSYmYS5saXN0ZW5lcklkJiZ3dCh0aGlzLCJyZW1vdmVFdmVudExpc3RlbmVyIixudWxsLGEubGlzdGVuZXJJZCl9Owp2YXIgenQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2Q9ZD09PXZvaWQgMD8iNzU1IjpkO3ZhciBlO2E6e2lmKGEucHVibGlzaGVyJiZhLnB1Ymxpc2hlci5yZXN0cmljdGlvbnMpe3ZhciBmPWEucHVibGlzaGVyLnJlc3RyaWN0aW9uc1tiXTtpZihmIT09dm9pZCAwKXtlPWZbZD09PXZvaWQgMD8iNzU1IjpkXTticmVhayBhfX1lPXZvaWQgMH12YXIgZz1lO2lmKGc9PT0wKXJldHVybiExO3ZhciBoPWM7Yz09PTI/KGg9MCxnPT09MiYmKGg9MSkpOmM9PT0zJiYoaD0xLGc9PT0xJiYoaD0wKSk7dmFyIGw7aWYoaD09PTApaWYoYS5wdXJwb3NlJiZhLnZlbmRvcil7dmFyIG49eHQoYS52ZW5kb3IuY29uc2VudHMsZD09PXZvaWQgMD8iNzU1IjpkKTtsPW4mJmI9PT0iMSImJmEucHVycG9zZU9uZVRyZWF0bWVudCYmYS5wdWJsaXNoZXJDQz09PSJDSCI/ITA6biYmeHQoYS5wdXJwb3NlLmNvbnNlbnRzLGIpfWVsc2UgbD0hMDtlbHNlIGw9aD09PTE/YS5wdXJwb3NlJiZhLnZlbmRvcj94dChhLnB1cnBvc2UubGVnaXRpbWF0ZUludGVyZXN0cywKYikmJnh0KGEudmVuZG9yLmxlZ2l0aW1hdGVJbnRlcmVzdHMsZD09PXZvaWQgMD8iNzU1IjpkKTohMDohMDtyZXR1cm4gbH0seHQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4hKCFhfHwhYVtiXSl9LHd0PWZ1bmN0aW9uKGEsYixjLGQpe2N8fChjPWZ1bmN0aW9uKCl7fSk7dmFyIGU9YS5LO2lmKHR5cGVvZiBlLl9fdGNmYXBpPT09ImZ1bmN0aW9uIil7dmFyIGY9ZS5fX3RjZmFwaTtmKGIsMixjLGQpfWVsc2UgaWYodXQoYSkpe0F0KGEpO3ZhciBnPSsrYS55YTthLmphW2ddPWM7aWYoYS5IKXt2YXIgaD17fTthLkgucG9zdE1lc3NhZ2UoKGguX190Y2ZhcGlDYWxsPXtjb21tYW5kOmIsdmVyc2lvbjoyLGNhbGxJZDpnLHBhcmFtZXRlcjpkfSxoKSwiKiIpfX1lbHNlIGMoe30sITEpfSx1dD1mdW5jdGlvbihhKXtpZihhLkgpcmV0dXJuIGEuSDthLkg9TnAoYS5LLCJfX3RjZmFwaUxvY2F0b3IiKTtyZXR1cm4gYS5IfSxBdD1mdW5jdGlvbihhKXtpZighYS5aKXt2YXIgYj1mdW5jdGlvbihjKXtpZihjLnNvdXJjZT09PQphLkgpdHJ5e3ZhciBkO2Q9KHZmKGMuZGF0YSk/SlNPTi5wYXJzZShjLmRhdGEpOmMuZGF0YSkuX190Y2ZhcGlSZXR1cm47YS5qYVtkLmNhbGxJZF0oZC5yZXR1cm5WYWx1ZSxkLnN1Y2Nlc3MpfWNhdGNoKGUpe319O2EuWj1iO210KGEuSywibWVzc2FnZSIsYil9fSxCdD1mdW5jdGlvbihhKXtpZihhLmdkcHJBcHBsaWVzPT09ITEpcmV0dXJuITA7YS5pbnRlcm5hbEVycm9yU3RhdGU9PT12b2lkIDAmJihhLmludGVybmFsRXJyb3JTdGF0ZT1zdChhKSk7cmV0dXJuIGEuY21wU3RhdHVzPT09ImVycm9yInx8YS5pbnRlcm5hbEVycm9yU3RhdGUhPT0wP2EuaW50ZXJuYWxCbG9ja09uRXJyb3JzPyhwdCh7ZTpTdHJpbmcoYS5pbnRlcm5hbEVycm9yU3RhdGUpfSksITEpOiEwOmEuY21wU3RhdHVzIT09ImxvYWRlZCJ8fGEuZXZlbnRTdGF0dXMhPT0idGNsb2FkZWQiJiZhLmV2ZW50U3RhdHVzIT09InVzZXJhY3Rpb25jb21wbGV0ZSI/ITE6ITB9O3ZhciBDdD17MTowLDM6MCw0OjAsNzozLDk6MywxMDozfTtmdW5jdGlvbiBEdCgpe3JldHVybiBraigidGNmIixmdW5jdGlvbigpe3JldHVybnt9fSl9dmFyIEV0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0dChBLHt0aW1lb3V0TXM6LTF9KX07CmZ1bmN0aW9uIEZ0KCl7dmFyIGE9RHQoKSxiPUV0KCk7dnQoYikmJiFHdCgpJiYhSHQoKSYmUCgxMjQpO2lmKCFhLmFjdGl2ZSYmdnQoYikpe0d0KCkmJihhLmFjdGl2ZT0hMCxhLnB1cnBvc2VzPXt9LGEuY21wSWQ9MCxhLnRjZlBvbGljeVZlcnNpb249MCx0bCgpLmFjdGl2ZT0hMCxhLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIik7Y3AoKTt0cnl7Yi5hZGRFdmVudExpc3RlbmVyKGZ1bmN0aW9uKGMpe2lmKGMuaW50ZXJuYWxFcnJvclN0YXRlIT09MClJdChhKSxkcChbRi5ELmthLEYuRC5YYSxGLkQubWFdKSx0bCgpLmFjdGl2ZT0hMDtlbHNlIGlmKGEuZ2RwckFwcGxpZXM9Yy5nZHByQXBwbGllcyxhLmNtcElkPWMuY21wSWQsYS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9Yy5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGUsSHQoKSYmKGEuYWN0aXZlPSEwKSwhSnQoYyl8fEd0KCl8fEh0KCkpe2EudGNmUG9saWN5VmVyc2lvbj1jLnRjZlBvbGljeVZlcnNpb247dmFyIGQ7aWYoYy5nZHByQXBwbGllcz09PQohMSl7dmFyIGU9e30sZjtmb3IoZiBpbiBDdClDdC5oYXNPd25Qcm9wZXJ0eShmKSYmKGVbZl09ITApO2Q9ZTtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoYyl9ZWxzZSBpZihKdChjKSl7dmFyIGc9e30saDtmb3IoaCBpbiBDdClpZihDdC5oYXNPd25Qcm9wZXJ0eShoKSlpZihoPT09IjEiKXt2YXIgbCxuPWMscD17VXI6ITB9O3A9cD09PXZvaWQgMD97fTpwO2w9QnQobik/bi5nZHByQXBwbGllcz09PSExPyEwOm4udGNTdHJpbmc9PT0idGN1bmF2YWlsYWJsZSI/IXAuaWRwY0FwcGxpZXM6KHAuaWRwY0FwcGxpZXN8fG4uZ2RwckFwcGxpZXMhPT12b2lkIDB8fHAuVXIpJiYocC5pZHBjQXBwbGllc3x8dmYobi50Y1N0cmluZykmJm4udGNTdHJpbmcubGVuZ3RoKT96dChuLCIxIiwwKTohMDohMTtnWyIxIl09bH1lbHNlIGdbaF09enQoYyxoLEN0W2hdKTtkPWd9aWYoZCl7YS50Y1N0cmluZz1jLnRjU3RyaW5nfHwidGNlbXB0eSI7YS5wdXJwb3Nlcz1kO3ZhciBxPXt9LHI9KHFbRi5ELmthXT0KYS5wdXJwb3Nlc1siMSJdPyJncmFudGVkIjoiZGVuaWVkIixxKTthLmdkcHJBcHBsaWVzIT09ITA/KGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pLHRsKCkuYWN0aXZlPSEwKToocltGLkQuWGFdPWEucHVycG9zZXNbIjMiXSYmYS5wdXJwb3Nlc1siNCJdPyJncmFudGVkIjoiZGVuaWVkIix0eXBlb2YgYS50Y2ZQb2xpY3lWZXJzaW9uPT09Im51bWJlciImJmEudGNmUG9saWN5VmVyc2lvbj49ND9yW0YuRC5tYV09YS5wdXJwb3Nlc1siMSJdJiZhLnB1cnBvc2VzWyI3Il0/ImdyYW50ZWQiOiJkZW5pZWQiOmRwKFtGLkQubWFdKSxWbyhyLHtldmVudElkOjB9LHtnZHByQXBwbGllczphP2EuZ2RwckFwcGxpZXM6dm9pZCAwLHRjU3RyaW5nOkt0KCl8fCIifSkpfX1lbHNlIGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pfSl9Y2F0Y2goYyl7SXQoYSksZHAoW0YuRC5rYSxGLkQuWGEsRi5ELm1hXSksdGwoKS5hY3RpdmU9ITB9fX0KZnVuY3Rpb24gSXQoYSl7YS50eXBlPSJlIjthLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIn1mdW5jdGlvbiBKdChhKXtyZXR1cm4gYS5ldmVudFN0YXR1cz09PSJ0Y2xvYWRlZCJ8fGEuZXZlbnRTdGF0dXM9PT0idXNlcmFjdGlvbmNvbXBsZXRlInx8YS5ldmVudFN0YXR1cz09PSJjbXB1aXNob3duIn1mdW5jdGlvbiBHdCgpe3JldHVybiBBLmd0YWdfZW5hYmxlX3RjZl9zdXBwb3J0PT09ITB9ZnVuY3Rpb24gSHQoKXtyZXR1cm4gRHQoKS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9PT0hMH1mdW5jdGlvbiBLdCgpe3ZhciBhPUR0KCk7aWYoYS5hY3RpdmUpcmV0dXJuIGEudGNTdHJpbmd9ZnVuY3Rpb24gTHQoKXt2YXIgYT1EdCgpO2lmKGEuYWN0aXZlJiZhLmdkcHJBcHBsaWVzIT09dm9pZCAwKXJldHVybiBhLmdkcHJBcHBsaWVzPyIxIjoiMCJ9CmZ1bmN0aW9uIE10KGEpe2lmKCFDdC5oYXNPd25Qcm9wZXJ0eShTdHJpbmcoYSkpKXJldHVybiEwO3ZhciBiPUR0KCk7cmV0dXJuIGIuYWN0aXZlJiZiLnB1cnBvc2VzPyEhYi5wdXJwb3Nlc1tTdHJpbmcoYSldOiEwfTt2YXIgTnQ9W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV0sT3Q9e30sUHQ9KE90W0YuRC5rYV09MSxPdFtGLkQucmFdPTIsT3QpO2Z1bmN0aW9uIFF0KGEpe2lmKGE9PT12b2lkIDApcmV0dXJuIDA7c3dpdGNoKE8oYSxGLkQuUmMpKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICExOnJldHVybiAzO2RlZmF1bHQ6cmV0dXJuIDJ9fWZ1bmN0aW9uIFJ0KCl7cmV0dXJuKE0oMTgzKT9MZigxNikuc3BsaXQoIn4iKTpMZigxNykuc3BsaXQoIn4iKSkuaW5kZXhPZih6bSgpKSE9PS0xJiZIYy5nbG9iYWxQcml2YWN5Q29udHJvbD09PSEwfWZ1bmN0aW9uIFN0KGEpe2lmKFJ0KCkpcmV0dXJuITE7dmFyIGI9UXQoYSk7aWYoYj09PTMpcmV0dXJuITE7c3dpdGNoKENsKEYuRC5YYSkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2Nhc2UgNDpyZXR1cm4gYj09PTI7Y2FzZSAwOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fQpmdW5jdGlvbiBUdCgpe3JldHVybiBFbCgpfHwhQmwoRi5ELmthKXx8IUJsKEYuRC5yYSl9ZnVuY3Rpb24gVXQoKXt2YXIgYT17fSxiO2ZvcihiIGluIFB0KVB0Lmhhc093blByb3BlcnR5KGIpJiYoYVtQdFtiXV09Q2woYikpO3JldHVybiJHMSIreWYoYVsxXXx8MCkreWYoYVsyXXx8MCl9dmFyIFZ0PXt9LFd0PShWdFtGLkQua2FdPTAsVnRbRi5ELnJhXT0xLFZ0W0YuRC5tYV09MixWdFtGLkQuWGFdPTMsVnQpO2Z1bmN0aW9uIFh0KGEpe3N3aXRjaChhKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICEwOnJldHVybiAzO2Nhc2UgITE6cmV0dXJuIDI7ZGVmYXVsdDpyZXR1cm4gMH19CmZ1bmN0aW9uIFl0KGEpe2Zvcih2YXIgYj0iMSIsYz0wO2M8TnQubGVuZ3RoO2MrKyl7dmFyIGQ9YixlLGY9TnRbY10sZz1BbC5kZWxlZ2F0ZWRDb25zZW50VHlwZXNbZl07ZT1nPT09dm9pZCAwPzA6V3QuaGFzT3duUHJvcGVydHkoZyk/MTJ8V3RbZ106ODt2YXIgaD10bCgpO2guYWNjZXNzZWRBbnk9ITA7dmFyIGw9aC5lbnRyaWVzW2ZdfHx7fTtlPWU8PDJ8WHQobC5pbXBsaWNpdCk7Yj1kKygiIisiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbZV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW1h0KGwuZGVjbGFyZSk8PDR8WHQobC5kZWZhdWx0KTw8MnxYdChsLnVwZGF0ZSldKX12YXIgbj1iLHA9KFJ0KCk/MTowKTw8MyxxPShFbCgpPzE6MCk8PDIscj1RdChhKTtiPW4rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW3B8CnF8cl07cmV0dXJuIGIrPSIiKyIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9zdG9yYWdlPDw0fEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFuYWx5dGljc19zdG9yYWdlPDwyfEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFkX3VzZXJfZGF0YV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iWyhBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM/MTowKTw8MnxBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9wZXJzb25hbGl6YXRpb25dfWZ1bmN0aW9uIFp0KCl7cmV0dXJuIEJsKEYuRC5tYSk/ImEiOiItIn1mdW5jdGlvbiAkdCgpe3JldHVybiBCbSgpfHwoR3QoKXx8SHQoKSkmJkx0KCk9PT0iMSI/IjEiOiIwIn0KZnVuY3Rpb24gYXUoKXtyZXR1cm4oQm0oKT8hMDohKCFHdCgpJiYhSHQoKSkmJkx0KCk9PT0iMSIpfHwhQmwoRi5ELm1hKX0KZnVuY3Rpb24gYnUoKXt2YXIgYT0iMCIsYj0iMCIsYzt2YXIgZD1EdCgpO2M9ZC5hY3RpdmU/ZC5jbXBJZDp2b2lkIDA7dHlwZW9mIGM9PT0ibnVtYmVyIiYmYz49MCYmYzw9NDA5NSYmKGE9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2M+PjYmNjNdLGI9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2MmNjNdKTt2YXIgZT0iMCIsZjt2YXIgZz1EdCgpO2Y9Zy5hY3RpdmU/Zy50Y2ZQb2xpY3lWZXJzaW9uOnZvaWQgMDt0eXBlb2YgZj09PSJudW1iZXIiJiZmPj0wJiZmPD02MyYmKGU9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2ZdKTt2YXIgaD0wO0JtKCkmJihofD0xKTtMdCgpPT09IjEiJiYoaHw9Mik7R3QoKSYmKGh8PTQpO3ZhciBsO3ZhciBuPUR0KCk7bD1uLmVuYWJsZUFkdmVydGlzZXJDb25zZW50TW9kZSE9PQp2b2lkIDA/bi5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU/IjEiOiIwIjp2b2lkIDA7bD09PSIxIiYmKGh8PTgpO3RsKCkud2FpdFBlcmlvZFRpbWVkT3V0JiYoaHw9MTYpO3JldHVybiIxIithK2IrZSsiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbaF19O3ZhciBjdT17VUE6MSxBVzoyLERDOjMsRzo0LEdGOjUsR1Q6MTIsR1RNOjE0LEhBOjYsTUM6N307CmZ1bmN0aW9uIGR1KGEpe2E9YT09PXZvaWQgMD97fTphO3ZhciBiPUUoNSkuc3BsaXQoIi0iKVswXS50b1VwcGVyQ2FzZSgpLGMsZD17Y3RpZDpFKDUpLERvOkpmKDE1KSxJbzpFKDE0KSxMczpJZig3KT8yOjEsRHQ6YS5wZixjYW5vbmljYWxJZDpFKDYpLG50OihjPUFrKCkpPT1udWxsP3ZvaWQgMDpjLmNhbm9uaWNhbENvbnRhaW5lcklkLEV0OmEuVGc9PT12b2lkIDA/dm9pZCAwOmEuVGc/MTA6MTJ9O2QuY2Fub25pY2FsSWQhPT1hLm1jJiYoZC5tYz1hLm1jKTt2YXIgZT14aygpO2QuVXM9ZT9lLmNhbm9uaWNhbENvbnRhaW5lcklkOnZvaWQgMDtJZig0NSk/KGQuaGk9Y3VbYl0sZC5oaXx8KGQuaGk9MCkpOmQuaGk9RGo/MTM6MTA7SWYoNDcpPyhkLmJrPTAsZC5xcj0yKTpJZig1MCk/ZC5iaz0xOmQuYms9Mzt2YXIgZj1hLGc9ezY6ITF9O0pmKDU0KT09PTI/Z1s3XT0hMDpKZig1NCk9PT0xJiYoZ1syXT0hMCk7aWYoS2Mpe3ZhciBoPUxqKFJqKEtjKSwiaG9zdCIpO2gmJihnWzhdPQpoLm1hdGNoKC9eKHd3d1wuKT9nb29nbGV0YWdtYW5hZ2VyXC5jb20kLyk9PT1udWxsKX12YXIgbDtnWzldPShsPWYuZWYpIT1udWxsP2w6ITE7dmFyIG49RmsoKSxwO2dbMTBdPShwPW49PW51bGw/dm9pZCAwOm4uZnJvbUNvbnRhaW5lckV4ZWN1dGlvbikhPW51bGw/cDohMTtkLnpyPWc7cmV0dXJuIENmKGQsYS5Qbil9Owp2YXIgZnU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9bShldShhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWUsZj1SKGEsZSksZz1RKGEsSC5KLlllKTtNKDU4OSkmJmcmJihlPT09Ri5ELnphfHxlPT09Ri5ELlVhfHxlPT09Ri5ELlBlKSYmdHlwZW9mIGY9PT0ic3RyaW5nIiYmKGY9WnMoZikpO3ZhciBoPW9wKGUsZik7aCYmKCFnfHxlIT09Ri5ELkRkJiZlIT09Ri5ELktkJiZlIT09Ri5ELkVlJiZlIT09Ri5ELkJmfHwoaC52YWx1ZT0iMCIpLE0oNTA0KSYmKGU9PT1GLkQuTWQ/aC5rZXk9ImV2bmlkIjplPT09Ri5ELk5kJiYoaC5rZXk9ImV4Y2lkIikpLGJbaC5rZXldPWgudmFsdWUpfWIuZ3RtPWR1KHttYzpRKGEsSC5KLk5iKSxUZzphLk0uaXNHdG1FdmVudCxlZjpRKGEsSC5KLkNjKX0pO1R0KCkmJihiLmdjcz1iLmdjc3x8VXQoKSk7Yi5nY2Q9Yi5nY2R8fFl0KGEuTSk7YXUoKSYmKGIuZG1hX2Nwcz1adCgpKTtiLmRtYT0kdCgpO3Z0KEV0KCkpJiYKKGIudGNmZD1idSgpKTt2YXIgbD1DcChhKTtsJiYoYi50YWdfZXhwPWwpO2lmKFEoYSxILkouQmspKXtiLnRmdD1TdHJpbmcoTmIoKSk7dmFyIG49cGQoKTtuIT09dm9pZCAwJiYoYi50ZmQ9U3RyaW5nKE1hdGgucm91bmQobikpKX1iLmFwdmU9IjEiO2IuYXB2Zj1uZCgpPyJmIjoibmYiO2ZvLkhbY28uaWEuY2JdIT09Ym8uTWEuVWV8fGZvLktbY28uaWEuY2JdLmlzQ29uc2VudEdyYW50ZWQoKXx8KGIubGltaXRlZF9hZHM9IjEiKTt2YXIgcD1RKGEsSC5KLlhnKTtNKDQ3NCkmJnAhPW51bGwmJnAhPT0iIiYmKGIuX2dzaWQ9cCk7aHQoYSxiLGZ1bmN0aW9uKHEscil7YltxXT1lbmNvZGVVUklDb21wb25lbnQocil9KTtyZXR1cm4gYn07dmFyIGd1PWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5lbmRwb2ludD1hO3RoaXMuZmE9Yzt0aGlzLmphPWQ7dGhpcy5wYXJhbWV0ZXJFbmNvZGluZz1lO3RoaXMuWj1iLnNsaWNlKCl9O2d1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIFhvKHRoaXMuWil9O2d1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtndS5wcm90b3R5cGUuUj1mdW5jdGlvbigpe3ZhciBhPU1tW3RoaXMuZW5kcG9pbnRdKHZvaWQgMCk7cmV0dXJuIFNiKGEsImh0dHBzOi8vIik/YS5zdWJzdHJpbmcoOCk6U2IoYSwiaHR0cDovLyIpP2Euc3Vic3RyaW5nKDcpOmF9O3ZhciBodT1mdW5jdGlvbihhLGIpe3RoaXMubWV0aG9kTmFtZT1hO3RoaXMuUj1ifTtodS5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKHRoaXMuaXNTdXBwb3J0ZWQoKSlpZigoYz09bnVsbD92b2lkIDA6Yy5ib2R5KT09PXZvaWQgMHx8dGhpcy5IKCkpdHJ5e3RoaXMuSyhhLGIsYyl9Y2F0Y2goZCl7YS5yZChkKX1lbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgZG9lcyBub3Qgc3VwcG9ydCBhIHJlcXVlc3QgYm9keS4iKTtlbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgaXMgbm90IHN1cHBvcnRlZC4iKX07dmFyIGl1PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJJbWFnZVBpeGVsIiwzKX07d2EoaXUsaHUpO2l1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtpdS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTsKaXUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe1pjKGIsZnVuY3Rpb24oKXthLmpmKCl9LGZ1bmN0aW9uKCl7YS5vbkZhaWx1cmUodm9pZCAwKX0sYz09bnVsbD92b2lkIDA6Yy5hZil9O3ZhciBqdT1mdW5jdGlvbigpe2h1LmNhbGwodGhpcywiU2VuZEJlYWNvbiIsMSl9O3dhKGp1LGh1KTtqdS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4ga2QoKX07anUucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07anUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe2pkKGIsYz09bnVsbD92b2lkIDA6Yy5ib2R5KT9hLmpmKCk6YS5yZCh2b2lkIDApfTt2YXIga3U9ZnVuY3Rpb24oKXtodS5jYWxsKHRoaXMsIkZldGNoIiwxKX07d2Eoa3UsaHUpO2t1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiB5YihBLmZldGNoKX07a3UucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07Cmt1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtBLmZldGNoKGIsYz09bnVsbD92b2lkIDA6Yy5HYikudGhlbihmdW5jdGlvbihkKXtpZihkLm9rKWEucGUoZCk7ZWxzZSBpZihkLnN0YXR1cz09PTApYS5qZigpO2Vsc2UgYS5vbkZhaWx1cmUoIkZldGNoIGZhaWxlZCB3aXRoIHN0YXR1cyBjb2RlICIrZC5zdGF0dXMrIi4iKX0pLmNhdGNoKGZ1bmN0aW9uKGQpe2EucmQoZCl9KX07dmFyIGx1PW5ldyBpdSxtdT1uZXcganUsbnU9bmV3IGt1O3ZhciBvdT1mdW5jdGlvbigpe307b3UucHJvdG90eXBlLks9ZnVuY3Rpb24oKXtyZXR1cm5bXX07CnZhciBwdT1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXTpiO2d1LmNhbGwodGhpcyxhLGIsMSwhMCwyKX07d2EocHUsZ3UpO3B1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe2lmKHRoaXMuWi5sZW5ndGgpe3ZhciBiPVEoYSxILkouRGspO2lmKGIhPT12b2lkIDApcmV0dXJuIGJ9cmV0dXJuIGd1LnByb3RvdHlwZS5LLmNhbGwodGhpcyxhKX07cHUucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdShhKTthLnRhcmdldC5kZXN0aW5hdGlvbklkJiYoYy50aWQ9YS50YXJnZXQuZGVzdGluYXRpb25JZCk7Yi5tZXRob2QgaW5zdGFuY2VvZiBrdT9jLmZtdD0iOCI6Yi5tZXRob2QgaW5zdGFuY2VvZiBqdT9jLmZtdD0iNSI6Yi5tZXRob2QgaW5zdGFuY2VvZiBpdSYmKGMuZm10PSIzIik7cmV0dXJuIGN9O3B1LnByb3RvdHlwZS55YT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTihhLGIpO3JldHVybiI/IitPYmplY3Qua2V5cyhjKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQrCiI9IitjW2RdfSkuam9pbigiJiIpfTtwdS5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy55YShhLGIpLGU9e307aWYoYi5tZXRob2QgaW5zdGFuY2VvZiBrdSl7ZS5HYj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGxkKTtpZih0aGlzLmVuZHBvaW50PT09NTh8fHRoaXMuZW5kcG9pbnQ9PT01NyllLkdiLm1ldGhvZD0iR0VUIjt0aGlzLmVuZHBvaW50IT09NDV8fHF1LksoYSl8fChlLkdiLmNyZWRlbnRpYWxzPSJvbWl0IixkKz0iJmdhcC51Y2ZiPTEiKX1jKGQsZSl9O3ZhciBxdT1uZXcgcHUoNDUpLHJ1PW5ldyBwdSg0NSxbXSksc3U9bmV3IHB1KDQ2LFtdKSx0dT1mdW5jdGlvbigpe3B1LmNhbGwodGhpcyw2OSl9O3dhKHR1LHB1KTt0dS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oYSl7dmFyIGI9TSg0NzQpJiYoISFSKGEsIl9nc2lkIil8fCEhUShhLEguSi5YZykpLGM9UihhLEYuRC5IZCkhPT0iMSImJighIVIoYSwiZ2NsaWQiKXx8CiEhUihhLCJkY2xpZCIpfHwhIVIoYSwiZ2Nsc3JjIil8fCEhUihhLCJhdWlkIikpO3JldHVybiBifHxjfTt0dS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1KGEpLGQ9bHAoYSxjKXx8e307T2JqZWN0LmtleXMoZCkubGVuZ3RoPjAmJihiLm1ldGhvZCBpbnN0YW5jZW9mIGt1P2QuZm10PSI4IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGp1P2QuZm10PSI1IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGl1JiYoZC5mbXQ9IjMiKSk7cmV0dXJuIGR9O3ZhciB1dT1uZXcgdHUsdnU9ZnVuY3Rpb24oKXtwdS5jYWxsKHRoaXMsNDUpfTt3YSh2dSxwdSk7dnUucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2cvZC9jY20vY29sbGVjdCJ9O3Z1LnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9cHUucHJvdG90eXBlLk4uY2FsbCh0aGlzLGEsYik7Y1siZ2FwLjFwZmIiXT0iMSI7cmV0dXJuIGN9O3ZhciB3dT1mdW5jdGlvbihhKXtwdS5jYWxsKHRoaXMsYSxbImFkX3N0b3JhZ2UiLAoiYWRfdXNlcl9kYXRhIl0pfTt3YSh3dSxwdSk7d3UucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1wdS5wcm90b3R5cGUuTi5jYWxsKHRoaXMsYSxiKTtyZXR1cm4gaHAoYyl9O3ZhciB4dT1uZXcgd3UoNTgpLHl1PW5ldyB3dSg1NyksenU9ZnVuY3Rpb24oKXt9O3dhKHp1LG91KTt6dS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj1xdS5LKGEpLGM9Yj9xdTpzdSxkPVt7ZW5kcG9pbnQ6YyxtZXRob2Q6bmQoKT9udTptdX0se2VuZHBvaW50OmMsbWV0aG9kOmx1fV07Yj9NKDUxNykmJklmKDQ3KSYmZC5wdXNoKHtlbmRwb2ludDpuZXcgdnUsbWV0aG9kOm51fSk6TSg2MDApJiZkLnB1c2goe2VuZHBvaW50OnJ1LG1ldGhvZDpudX0pO3JldHVybiBkfTt6dS5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPSEhUShhLEguSi52ZCksZD1SKGEsRi5ELlBkKT09PSIxIixlPVIoYSxGLkQuSGQpPT09IjEiLGY9cXUuSyhhKSxnPWMmJmQmJiFlJiZmO2lmKGcpe3ZhciBoPQpRYygpfHxPYygpP3h1Onl1O2IucHVzaChbe2VuZHBvaW50OmgsbWV0aG9kOm51fSx7ZW5kcG9pbnQ6aCxtZXRob2Q6bHV9XSl9ZiYmKGd8fFEoYSxILkouaGQpKSYmYi5wdXNoKFt7ZW5kcG9pbnQ6dXUsbWV0aG9kOm5kKCk/bnU6bHV9XSk7cmV0dXJuIGJ9O3ZhciBBdT1uZXcgenU7dmFyIFQ9e1c6e0prOjEsbmo6MixGazozLG1sOjQsR2s6NSx5ZDo2LGtsOjcsTXE6OCxxbjo5LEhrOjEwLElrOjExLEZoOjEyLERtOjEzLEFtOjE0LENtOjE1LHptOjE2LEJtOjE3LHltOjE4LFRvOjE5LHhxOjIwLHlxOjIxLGZqOjIyLHVuOjI0LE9tOjI1LFNrOjI2LFRrOjI3LFJrOjI4LFVrOjI5LHJqOjMwLE9rOjMxLFpvOjMyfX07VC5XW1QuVy5Ka109IkFMTE9XX0lOVEVSRVNUX0dST1VQUyI7VC5XW1QuVy5ual09IlNFUlZFUl9DT05UQUlORVJfVVJMIjtULldbVC5XLkZrXT0iQURTX0RBVEFfUkVEQUNUSU9OIjtULldbVC5XLm1sXT0iQ1VTVE9NRVJfTElGRVRJTUVfVkFMVUUiO1QuV1tULlcuR2tdPSJBTExPV19DVVNUT01fU0NSSVBUUyI7VC5XW1QuVy55ZF09IkFOWV9DT09LSUVfUEFSQU1TIjtULldbVC5XLmtsXT0iQ09PS0lFX0VYUElSRVMiO1QuV1tULlcuTXFdPSJMRUdBQ1lfRU5IQU5DRURfQ09OVkVSU0lPTl9KU19WQVJJQUJMRSI7VC5XW1QuVy5xbl09IlJFU1RSSUNURURfREFUQV9QUk9DRVNTSU5HIjsKVC5XW1QuVy5Ia109IkFMTE9XX0RJU1BMQVlfRkVBVFVSRVMiO1QuV1tULlcuSWtdPSJBTExPV19HT09HTEVfU0lHTkFMUyI7VC5XW1QuVy5GaF09IkdFTkVSQVRFRF9UUkFOU0FDVElPTl9JRCI7VC5XW1QuVy5EbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOS05PV04iO1QuV1tULlcuQW1dPSJGTE9PRExJR0hUX0NPVU5USU5HX01FVEhPRF9TVEFOREFSRCI7VC5XW1QuVy5DbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOSVFVRSI7VC5XW1QuVy56bV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1BFUl9TRVNTSU9OIjtULldbVC5XLkJtXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfVFJBTlNBQ1RJT05TIjtULldbVC5XLnltXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfSVRFTVNfU09MRCI7VC5XW1QuVy5Ub109IkFEU19PR1RfVjFfVVNBR0UiO1QuV1tULlcueHFdPSJGT1JNX0lOVEVSQUNUSU9OX1BFUk1JU1NJT05fREVOSUVEIjsKVC5XW1QuVy55cV09IkZPUk1fU1VCTUlUX1BFUk1JU1NJT05fREVOSUVEIjtULldbVC5XLmZqXT0iTUlDUk9UQVNLX05PVF9TVVBQT1JURUQiO1QuV1tULlcudW5dPSJTRVRfRU5DUllQVEVEX0RBVEFfVE9fQ0FDSEUiO1QuV1tULlcuT21dPSJHRVRfRU5DUllQVEVEX0RBVEFfRlJPTV9DQUNIRSI7VC5XW1QuVy5Ta109IkNPTkZJR19ERVRFQ1RFRF9XSVRIX05PX1BBUkFNIjtULldbVC5XLlRrXT0iQ09ORklHX0RFVEVDVEVEX1dJVEhfUEFSQU0iO1QuV1tULlcuUmtdPSJDT05GSUdfQ09OU0VOVF9TRVRfQkVGT1JFIjtULldbVC5XLlVrXT0iQ09ORklHX1NFVF9VU0VEX0JFRk9SRSI7VC5XW1QuVy5yal09IlNIQURPV19ET01fQVVUT19QSUkiO1QuV1tULlcuT2tdPSJDQ0RfVVNFUl9EQVRBX1dFQl9PTl9DT05GSUciO1QuV1tULlcuWm9dPSJCTEVOREVEX1VTRVJfREFUQSI7dmFyIEJ1PXt9LEN1PShCdVtGLkQudWldPVQuVy5KayxCdVtGLkQuZGRdPVQuVy5uaixCdVtGLkQueWNdPVQuVy5uaixCdVtGLkQubWJdPVQuVy5GayxCdVtGLkQuR2VdPVQuVy5tbCxCdVtGLkQucmldPVQuVy5HayxCdVtGLkQuSmRdPVQuVy55ZCxCdVtGLkQubmJdPVQuVy55ZCxCdVtGLkQuTGJdPVQuVy55ZCxCdVtGLkQuSWRdPVQuVy55ZCxCdVtGLkQudmNdPVQuVy55ZCxCdVtGLkQuVGJdPVQuVy55ZCxCdVtGLkQuQ2JdPVQuVy5rbCxCdVtGLkQuV2JdPVQuVy5xbixCdVtGLkQuaGhdPVQuVy5IayxCdVtGLkQuU2NdPVQuVy5JayxCdSksRHU9e30sRXU9KER1LnVua25vd249VC5XLkRtLER1LnN0YW5kYXJkPVQuVy5BbSxEdS51bmlxdWU9VC5XLkNtLER1LnBlcl9zZXNzaW9uPVQuVy56bSxEdS50cmFuc2FjdGlvbnM9VC5XLkJtLER1Lml0ZW1zX3NvbGQ9VC5XLnltLER1KTt2YXIgRnU9ZnVuY3Rpb24oYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3NiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsYik7YyYmKGEuSFtiXT0hMCl9LHZiPW5ldyBmdW5jdGlvbigpe3RoaXMuSD1bXX07ZnVuY3Rpb24gR3UoYSl7RnUodmIsYSwhMSl9ZnVuY3Rpb24gSHUoYSxiKXt2YXIgYz1iPT09dm9pZCAwPyExOmIsZD12YjtjPWM9PT12b2lkIDA/ITE6Yztmb3IodmFyIGU9T2JqZWN0LmtleXMoYSksZj1tKE9iamVjdC5rZXlzKEN1KSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7ZS5pbmNsdWRlcyhoKSYmRnUoZCxDdVtoXSxjKX19O2Z1bmN0aW9uIEl1KGEsYil7YT9hLnRoZW4oYik6Yih2b2lkIDApfWZ1bmN0aW9uIEp1KGEpe3JldHVybiBQcm9taXNlLmFsbFNldHRsZWQoYSkudGhlbihmdW5jdGlvbihiKXtyZXR1cm4gYi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGMuc3RhdHVzPT09ImZ1bGZpbGxlZCJ9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGMudmFsdWV9KX0pfWZ1bmN0aW9uIEt1KCl7dmFyIGEsYjtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZShmdW5jdGlvbihjLGQpe2E9YztiPWR9KSxyZXNvbHZlOmEscmVqZWN0OmJ9fTtmdW5jdGlvbiBMdShhLGIsYyxkLGUsZil7dmFyIGc9Yy5zbGljZSgpLGg7ZD09bnVsbHx8KGg9ZC51dik9PW51bGx8fGguY2FsbChkLGEsYixjLGUpO3ZhciBsPUt1KCksbj1sLnByb21pc2UscD1sLnJlc29sdmUscT1bXSxyPWZ1bmN0aW9uKCl7cChxKTt2YXIgdTtkPT1udWxsfHwodT1kLlJzKT09bnVsbHx8dS5jYWxsKGQsYSxiLGMsZSxxKX0sdD1mdW5jdGlvbigpe3ZhciB1PWcuc2hpZnQoKTt1P3UubWV0aG9kLmlzU3VwcG9ydGVkKCk/TXUoYSxiLHUuZW5kcG9pbnQsZCxxLHUubWV0aG9kLGUsZix0LHIpOnQoKTpyKCl9O3QoKTtyZXR1cm4gbn0KZnVuY3Rpb24gTXUoYSxiLGMsZCxlLGYsZyxoLGwsbil7dmFyIHA9Yy5SKGEpLHE9e3RrOmIsZW5kcG9pbnQ6Yyxpc1ByaW1hcnk6ZyxzYjp2b2lkIDAscGs6ZixqdDp7fX0scj0hMSx0PWZ1bmN0aW9uKHosQyl7aWYocilQKDE4Nyk7ZWxzZSBpZihyPSEwLCF1KXt2YXIgRD1DfHx7fSxJPUQuYm9keSxHPUQuR2IsTj1ELmFmO0M9T2JqZWN0LmZyZWV6ZShuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LEk/e2JvZHk6SX06e30sRz97R2I6R306e30sTj97YWY6Tn06e30pKTtpZihJJiYhZi5IKCkpeCgpLGwoKTtlbHNle3ZhciBTPU51KHopLFc9cFswXT09PSIvIj8iIitwK1M6Imh0dHBzOi8vIitwK1M7cS5zYj1XO3EuanQ9Qzt2YXIgZWE7ZD09bnVsbHx8KGVhPWQuU3MpPT1udWxsfHxlYS5jYWxsKGQsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHEpKTt2YXIgamE9e2Rlc3RpbmF0aW9uSWQ6YS50YXJnZXQuZGVzdGluYXRpb25JZCxlbmRwb2ludDpjLmVuZHBvaW50LApldmVudElkOmEuTS5ldmVudElkLHByaW9yaXR5SWQ6YS5NLnByaW9yaXR5SWR9O2YuUj09PXZvaWQgMHx8Yy5mYSE9PTImJihjLmZhIT09MXx8ZS5sZW5ndGgpfHxrbi5yZWdpc3RlcihqYSxmLlIsVyk7dmFyIGZhPWZ1bmN0aW9uKGRhLG1hKXt4KCk7aWYocS5zdGF0dXMhPT12b2lkIDApcmV0dXJuIFAoMTkyKSwhMTtxLnN0YXR1cz1kYTtlLnB1c2gocSk7dmFyIFBhO2Q9PW51bGx8fChQYT1kLnVvKT09bnVsbHx8UGEuY2FsbChkLGEsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxxKSxtYSk7cmV0dXJuITB9LHNhPXtGbzpqYSxyZDpmdW5jdGlvbigpe2ZhKDIpJiZsKCl9LG9uRmFpbHVyZTpmdW5jdGlvbigpe2ZhKDMpJiZsKCl9LHBlOmZ1bmN0aW9uKGRhKXtmYShkYS5zdGF0dXM9PT0wPzE6ZGEub2s/MDozLGRhKSYmbigpfSxqZjpmdW5jdGlvbigpe2ZhKDEpJiZuKCl9fTtPdShjLGEsVyxTLEkpO2Yuc2VuZFJlcXVlc3Qoc2EsVyxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LAp7fSxJJiZ7Ym9keTpJfSxHJiZ7R2I6R30sTiYme2FmOk59KSl9fX0sdT0hMSx2LHg9ZnVuY3Rpb24oKXt2IT09dm9pZCAwJiYoQS5jbGVhclRpbWVvdXQodiksdj12b2lkIDApfTtNKDU3NCkmJih2PUEuc2V0VGltZW91dChmdW5jdGlvbigpe3Y9dm9pZCAwO3U9ITA7aWYocS5zdGF0dXM9PT12b2lkIDApe3Euc3RhdHVzPTQ7cS5zYj09PXZvaWQgMCYmKHEuc2I9IltmYWlsZWQgdG8gYnVpbGRdICIrcCk7ZS5wdXNoKHEpO3ZhciB6O2Q9PW51bGx8fCh6PWQudW8pPT1udWxsfHx6LmNhbGwoZCxhLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scSksdm9pZCAwKTtsKCl9fSw1RTMpKTt2YXIgeT17SWM6cCxtZXRob2Q6Zix5djplLGlzUHJpbWFyeTpnLEN0Omh9O3RyeXtjLkgoYSx5LHQpfWNhdGNoKHope3goKSxQKDE4OCksbCgpfX0KZnVuY3Rpb24gT3UoYSxiLGMsZCxlKXtpZihhLmphKXt2YXIgZj1iLnRhcmdldC5kZXN0aW5hdGlvbklkLGc9YS5lbmRwb2ludDtpZihnPT09NDV8fGc9PT00Nnx8Zz09PTY5fHxnPT09NTh8fGc9PT01Nyl7dmFyIGg9L1s/Jl10aWRzPShbXiZdKykvLmV4ZWMoZCk7Zj1oP2RlY29kZVVSSUNvbXBvbmVudChoWzFdKS5zcGxpdCgifiIpOltmXX1NbCh7dGFyZ2V0SWQ6ZixyZXF1ZXN0Om5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30se3VybDpjLHBhcmFtZXRlckVuY29kaW5nOmEucGFyYW1ldGVyRW5jb2RpbmcsZW5kcG9pbnQ6YS5lbmRwb2ludH0sZT97cG9zdEJvZHk6ZX06e30pLHFiOntldmVudElkOmIuTS5ldmVudElkLHByaW9yaXR5SWQ6Yi5NLnByaW9yaXR5SWR9LEZqOntldmVudElkOlEoYixILkoudWYpLHByaW9yaXR5SWQ6UShiLEguSi52Zil9fSl9fQpmdW5jdGlvbiBOdShhKXtyZXR1cm4gYSYmYSE9PSI/Ij9hWzBdIT09Ij8iPyI/Ii5jb25jYXQoYSk6YToiIn07ZnVuY3Rpb24gUHUoYSxiLGMsZCxlKXt2YXIgZjtlPT1udWxsfHwoZj1lLnZ2KT09bnVsbHx8Zi5jYWxsKGUsYSxiKTtpZighYy5sZW5ndGgpe3ZhciBnO2U9PW51bGx8fChnPWUuVHMpPT1udWxsfHxnLmNhbGwoZSxhLGIsW10pO3JldHVybiBQcm9taXNlLnJlc29sdmUoW10pfXZhciBoPVtdLGw9e3RrOmIsbWs6YyxqazpkfTtoLnB1c2goTHUoYSxiLGMsZSwhMCxsKSk7Zm9yKHZhciBuPW0oZCkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpaC5wdXNoKEx1KGEsYixwLnZhbHVlLGUsITEsbCkpO3JldHVybiBKdShoKS50aGVuKGZ1bmN0aW9uKHEpe2Zvcih2YXIgcj1bXSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpci5wdXNoLmFwcGx5KHIsdyh1LnZhbHVlKSk7dmFyIHY7ZT09bnVsbHx8KHY9ZS5Ucyk9PW51bGx8fHYuY2FsbChlLGEsYixyKTtyZXR1cm4gcn0pfTtmdW5jdGlvbiBRdShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2I9PW51bGx8fChkPWIud3YpPT1udWxsfHxkLmNhbGwoYixhLGMpO2Zvcih2YXIgZT1bXSxmPW0oYyksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpZS5wdXNoKFJ1KGEsZy52YWx1ZSkpO2Zvcih2YXIgaD1bXSxsPW0oZSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7aC5wdXNoKFB1KGEscC50ayxwLm1rLHAuamssYikpfUp1KGgpLnRoZW4oZnVuY3Rpb24ocSl7Zm9yKHZhciByPVtdLHQ9bShxKSx1PXQubmV4dCgpOyF1LmRvbmU7dT10Lm5leHQoKSlyLnB1c2guYXBwbHkocix3KHUudmFsdWUpKTt2YXIgdjtiPT1udWxsfHwodj1iLlFzKT09bnVsbHx8di5jYWxsKGIsYSxjLHIpfSl9CmZ1bmN0aW9uIFJ1KGEsYil7dmFyIGM9ZnVuY3Rpb24oZil7cmV0dXJuIGYubWV0aG9kLmlzU3VwcG9ydGVkKCkmJmYuZW5kcG9pbnQuaXNTdXBwb3J0ZWQoYSkmJmYuZW5kcG9pbnQuSyhhKX0sZD0oYi5IKGEpfHxbXSkuZmlsdGVyKGMpLGU9W107ZC5sZW5ndGgmJihlPShiLksoYSl8fFtdKS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuZmlsdGVyKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmLmxlbmd0aD4wfSkpO3JldHVybnt0azpiLG1rOmQsams6ZX19Owp2YXIgU3U9ZnVuY3Rpb24oYSxiKXtpZihNKDUxNykmJklmKDQ3KSYmYT09PTQ1KXJldHVybiBYaigpKyIvZy9kL2NjbS9jb2xsZWN0PyIrYi5zcGxpdCgiPyIpWzFdKyImZ2FwLjFwZmI9MSJ9LFd1PWZ1bmN0aW9uKCl7dmFyIGE9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGEubGVuZ3RoKXtmb3IodmFyIGI9e30sYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9VHUoZS5rZSwiYXB2YyIpLGc9VHUoZS5rZSwidGZ0IiksaD1UdShlLmtlLCJ0ZmQiKSxsPVR1KGUua2UsInRpZCIpLG49Tm0oZS5lbmRwb2ludCxlLmtlKSxwPWJbbl09YltuXXx8e3hrOltdLFpoOltdfTtwLlpoLnB1c2goZSk7bD8ocC54ay5wdXNoKGwpLHAudWR8fChwLnVkPWwpKTpwLnhrLnB1c2goIiIpO2Y9PT0iMSImJihwLlFuPSEwKTtpZihnfHxoKXAuTm49ITB9YS5sZW5ndGg9MDtmb3IodmFyIHE9bShPYmplY3Qua2V5cyhiKSkscj1xLm5leHQoKSx0PXt9OyFyLmRvbmU7dD0Ke3lrOnZvaWQgMH0scj1xLm5leHQoKSl7dmFyIHU9ci52YWx1ZSx2PWJbdV07dC55az12LnhrO3ZhciB4PXQueWsuZmlsdGVyKGZ1bmN0aW9uKEQpe3JldHVybiBmdW5jdGlvbihJLEcpe3JldHVybiBELnlrLmluZGV4T2YoSSk9PT1HfX0odCkpLmZpbHRlcihmdW5jdGlvbihEKXtyZXR1cm4hIUR9KTtpZihNKDQyNykpe3ZhciB5PVV1KHYseCk7UXUoeSx2b2lkIDAsQXUpfWVsc2V7dmFyIHo9dSsiJmFwdmM9Iisodi5Rbj8iMSI6IjAiKTt4Lmxlbmd0aCYmKHorPSImdGlkcz0iK3guam9pbigifiIpKTt2LnVkJiYoeis9IiZ0aWQ9Iit2LnVkKTtpZih2Lk5uKXt6Kz0iJnRmdD0iK1N0cmluZyhOYigpKTt2YXIgQz1wZCgpO0MhPT12b2lkIDAmJih6Kz0iJnRmZD0iK1N0cmluZyhNYXRoLnJvdW5kKEMpKSl9VnUodi5aaFswXS5ldmVudCx6LHYuWmhbMF0uZW5kcG9pbnQseC5sZW5ndGg/eDpbIiJdKX19fX0sVHU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hW2JdO2lmKGMhPT12b2lkIDApcmV0dXJuIGRlbGV0ZSBhW2JdLApjfSxWdT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT17ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxmPWZ1bmN0aW9uKGwsbil7dmFyIHA9YitYdShsKTtUbChwLGEsYyxkKTtyZXR1cm4gbihwKX07aWYobmQoKSl7dmFyIGc9ZnVuY3Rpb24oKXt9LGg9U3UoYyxiKTtoIT09dm9pZCAwJiYoZz1mdW5jdGlvbigpe1luKGUsaCtYdSg4KSx2b2lkIDAse1FnOiEwfSl9KTtmKDgsZnVuY3Rpb24obCl7WW4oZSxsLHZvaWQgMCx7UWc6ITB9LGZ1bmN0aW9uKCl7fSxmdW5jdGlvbigpe1pjKGIrWHUoMyksZnVuY3Rpb24oKXt9LGcpfSl9KX1lbHNlIGYoNSxmdW5jdGlvbihsKXtyZXR1cm4gV24oZSxsKX0pfHxaYyhiK1h1KDMpKX0sVXU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLlpoWzBdLGQ9eyJfJmFwdmMiOmEuUW4/IjEiOiIwIn07Yi5sZW5ndGg+MCYmKGRbIl8mdGlkcyJdPQpiLmpvaW4oIn4iKSk7aWYoYS5Obil7ZFsiXyZ0ZnQiXT1TdHJpbmcoTmIoKSk7dmFyIGU9cGQoKTtlIT09dm9pZCAwJiYoZFsiXyZ0ZmQiXT1TdHJpbmcoTWF0aC5yb3VuZChlKSkpfXJldHVybiBZdShjLmV2ZW50LGEudWR8fCIiLGQpfSxZdT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxhLnRhcmdldCx7ZGVzdGluYXRpb25JZDpifSksZT1adShhLHt0YXJnZXQ6ZH0pO2J8fFUoZSxGLkQuUWUpO2Zvcih2YXIgZj1tKE9iamVjdC5rZXlzKGMpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtVKGUsaCxjW2hdKX1yZXR1cm4gZX0sWHU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgODpjYXNlIDM6Y2FzZSA1OnJldHVybiImZm10PSIrYTtkZWZhdWx0OnJldHVybiIifX0sJHU9ZnVuY3Rpb24oYSxiKXthPVp1KGEpO1YoYSxILkouRGssWG8oZnApKTtUdCgpJiZVKGEsIl8mZ2NzIixVdCgpKTsKVShhLCJfJmdjZCIsWXQoYS5NKSk7dmFyIGM9WG8oZnApPzQ1OjQ2LGQ9ZnVuY3Rpb24oKXt2YXIgZj1iLnRpZDtpZihNKDQyNykpe3ZhciBnPVl1KGEsZixiKTtRdShnLHZvaWQgMCxBdSl9ZWxzZXt2YXIgaD1ObShjLGIpO1Z1KGEsaCxjLFtmXSl9fTtpZih5YihBLnF1ZXVlTWljcm90YXNrKSl7dmFyIGU9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGUubGVuZ3RoPT09MCl0cnl7QS5xdWV1ZU1pY3JvdGFzayhXdSl9Y2F0Y2goZil7R3UoVC5XLmZqKTtkKCk7cmV0dXJufWI9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxiKTtlLnB1c2goe2V2ZW50OmEsa2U6YixlbmRwb2ludDpjfSl9ZWxzZSBHdShULlcuZmopLGQoKX07dmFyIGF2PWZ1bmN0aW9uKGEsYixjLGQpe2d1LmNhbGwodGhpcyxhLGIsYz09PXZvaWQgMD8xOmMsZD09PXZvaWQgMD8hMTpkLDMsdm9pZCAwKX07d2EoYXYsZ3UpO2F2LnByb3RvdHlwZS55YT1mdW5jdGlvbihhLGIpe3ZhciBjPVIoYSxGLkQueWkpO3JldHVybiBiKyIvIitjKyIvIn07YXYucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMueWEoYSxndS5wcm90b3R5cGUuUi5jYWxsKHRoaXMsYSkpfTt2YXIgWD17Vjp7TWs6ImNhbGxfY29udmVyc2lvbiIsemQ6ImNjbV9jb252ZXJzaW9uIixRazoiY29tbW9uX2F3Iix4YToiY29udmVyc2lvbiIsd3E6ImZsb29kbGlnaHQiLFlkOiJnYV9jb252ZXJzaW9uIixaZDoiZ2NwX3JlbWFya2V0aW5nIixLYToicGFnZV92aWV3Iix1YjoicmVtYXJrZXRpbmciLE9iOiJ1c2VyX2RhdGFfbGVhZCIsRmI6InVzZXJfZGF0YV93ZWIifX07ZnVuY3Rpb24gYnYoYSxiKXtiJiZHYihiLGZ1bmN0aW9uKGMsZCl7dHlwZW9mIGQhPT0ib2JqZWN0IiYmZCE9PXZvaWQgMCYmKGFbIjFwLiIrY109U3RyaW5nKGQpKX0pfTsKdmFyIGN2PWZ1bmN0aW9uKGEsYil7dmFyIGM9UihhLEYuRC5zaCk7aWYoYylmb3IodmFyIGQ9bShPYmplY3Qua2V5cyhjKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1jW2ZdO2chPW51bGwmJihiWyJndG1kLiIrZl09U3RyaW5nKGcpKX19LGd2PWZ1bmN0aW9uKGEpe3ZhciBiPWR2KGEpO2lmKGIubGVuZ3RoKXt2YXIgYz1ldihhKS5WbixkPWZ2KGMpfHwiIjtyZXR1cm4gYi5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9ZnYoZSk7cmV0dXJuIiIrZCsoZCYmZj8iOyI6IiIpK2Z9KX19LGR2PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1odihhKSxjPXt9LGQ9bShiKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZSxnPXZvaWQgMDtpZihmLmhhc093blByb3BlcnR5KCJnb29nbGVfYnVzaW5lc3NfdmVydGljYWwiKSl7Zz1mLmdvb2dsZV9idXNpbmVzc192ZXJ0aWNhbDt2YXIgaD17fTtjW2ddPWNbZ118fChoLmdvb2dsZV9idXNpbmVzc192ZXJ0aWNhbD0KZyxoKX1lbHNlIGc9IiIsYy5oYXNPd25Qcm9wZXJ0eShnKXx8KGNbZ109e30pO3ZhciBsPWNbZ10sbjtmb3IobiBpbiBmKW4hPT0iZ29vZ2xlX2J1c2luZXNzX3ZlcnRpY2FsIiYmKG4gaW4gbHx8KGxbbl09W10pLGxbbl0ucHVzaChmW25dKSl9cmV0dXJuIE9iamVjdC5rZXlzKGMpLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gY1twXX0pfSxodj1mdW5jdGlvbihhKXt2YXIgYj1SKGEsRi5ELkhhKTtyZXR1cm4gYiYmYi5sZW5ndGg/Yi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuISFjfSkubWFwKGZ1bmN0aW9uKGMpe3ZhciBkPXt9O3JldHVybiBkLmlkPWlpKGMpLGQub3JpZ2luPWMub3JpZ2luLGQuZGVzdGluYXRpb249Yy5kZXN0aW5hdGlvbixkLnN0YXJ0X2RhdGU9Yy5zdGFydF9kYXRlLGQuZW5kX2RhdGU9Yy5lbmRfZGF0ZSxkLmxvY2F0aW9uX2lkPWMubG9jYXRpb25faWQsZC5nb29nbGVfYnVzaW5lc3NfdmVydGljYWw9Yy5nb29nbGVfYnVzaW5lc3NfdmVydGljYWwsZH0pOltdfSwKaWk9ZnVuY3Rpb24oYSl7YS5pdGVtX2lkIT1udWxsJiYoYS5pZCE9bnVsbD8oUCgxMzgpLGEuaWQhPT1hLml0ZW1faWQmJlAoMTQ4KSk6UCgxNTMpKTtyZXR1cm4gamkoYSl9LGZ2PWZ1bmN0aW9uKGEpe2lmKGEmJnR5cGVvZiBhPT09Im9iamVjdCImJiFBcnJheS5pc0FycmF5KGEpKXJldHVybiBPYmplY3Qua2V5cyhhKS5tYXAoZnVuY3Rpb24oYil7dmFyIGM9aXYoYik7aWYoYyl7dmFyIGQ9YVtiXSxlPUFycmF5LmlzQXJyYXkoZCk/anYoZCk6aXYoZCk7aWYoZSE9PXZvaWQgMClyZXR1cm4gYysiPSIrZX19KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIhPT12b2lkIDB9KS5qb2luKCI7Iil9LGp2PWZ1bmN0aW9uKGEpe3ZhciBiPWEubWFwKGl2KS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGMhPT12b2lkIDB9KTtyZXR1cm4gYi5sZW5ndGg/Yi5qb2luKCIsIik6dm9pZCAwfSxpdj1mdW5jdGlvbihhKXtpZihhIT1udWxsKXt2YXIgYj10eXBlb2YgYTtpZihiIT09Im9iamVjdCImJgpiIT09ImZ1bmN0aW9uIilyZXR1cm4gU3RyaW5nKGEpLnJlcGxhY2UoLywvZywiXFwsIikucmVwbGFjZSgvOy9nLCJcXDsiKS5yZXBsYWNlKC89L2csIlxcPSIpfX0sa3Y9ZnVuY3Rpb24oYSl7cmV0dXJuIE9iamVjdC5rZXlzKGEpLm1hcChmdW5jdGlvbihiKXt2YXIgYz1hW2JdO2lmKGMhPW51bGwmJihjIT09IiJ8fHlnW2JdKSlyZXR1cm4gYz09PSEwfHxjPT09ITE/YisiPSIrKGM/MTowKTpiKyI9IitlbmNvZGVVUklDb21wb25lbnQoYyl9KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuISFifSkuam9pbigiJiIpfSxsdj1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLmRhKSxjPXt9LGQ9UShhLEguSi5FYik7aWYoYj09PVguVi54YXx8Yj09PVguVi51Ynx8Yj09PVguVi5ZZHx8Yj09PVguVi56ZHx8Yj09PVguVi5aZCljLnJhbmRvbT0iIitkO2I9PT1YLlYueGF8fGI9PT1YLlYudWJ8fGI9PT1YLlYuemR8fGI9PT1YLlYuWmQ/KGMuY3Y9IjExIixjLmZzdD0iIitkLGMuZm10PSIzIiwKYy5iZz0iZmZmZmZmIixjLmd1aWQ9Ik9OIixjLmFzeW5jPSIxIixjLmVuPWEuZXZlbnROYW1lKTpiPT09WC5WLllkJiYoYy5jdj0iMTEiLGMudGlkPWEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsYy5mc3Q9IiIrZCxjLmZtdD0iOCIsYy5lbj1hLmV2ZW50TmFtZSk7dmFyIGU9QnMoWyJhdyIsImRjIl0pO2UhPW51bGwmJihjLmdhZF9zb3VyY2U9ZSk7Yy5ndG09ZHUoe21jOlEoYSxILkouTmIpLFRnOmEuTS5pc0d0bUV2ZW50LGVmOlEoYSxILkouQ2MpfSk7YiE9PVguVi51YiYmVHQoKSYmKGMuZ2NzPVV0KCkpO2MuZ2NkPVl0KGEuTSk7YXUoKSYmKGMuZG1hX2Nwcz1adCgpKTtjLmRtYT0kdCgpO3Z0KEV0KCkpJiYoYy50Y2ZkPWJ1KCkpO3ZhciBmPUNwKGEpO2YmJihjLnRhZ19leHA9Zik7Zm8uSFtjby5pYS5jYl0hPT1iby5NYS5VZXx8Zm8uS1tjby5pYS5jYl0uaXNDb25zZW50R3JhbnRlZCgpfHwoYy5saW1pdGVkX2Fkcz0iMSIpO1IoYSxGLkQuYmQpJiZmaShSKGEsRi5ELmJkKSxjKTtpZihSKGEsCkYuRC50Yikpe3ZhciBnPVIoYSxGLkQudGIpO2cmJihnLmxlbmd0aD09PTI/Z2koYywiaGwiLGcpOmcubGVuZ3RoPT09NSYmKGdpKGMsImhsIixnLnN1YnN0cmluZygwLDIpKSxnaShjLCJnbCIsZy5zdWJzdHJpbmcoMyw1KSkpKX12YXIgaD1RKGEsSC5KLlllKSxsPWZ1bmN0aW9uKEksRyl7dmFyIE49UihhLEcpO04mJihjW0ldPWg/WnMoTik6Til9O2woInVybCIsRi5ELnphKTtsKCJyZWYiLEYuRC5VYSk7bCgidG9wIixGLkQuUGUpO3ZhciBuPWd0KGEsRi5ELkJkLEYuRC5DZCk7biYmKGMuZ2NsYXdfc3JjPW4pO3ZhciBwPWd0KGEsRi5ELmZoLEYuRC5naCk7cCYmKGMuZ2NsZ2Jfc3JjPXApO3ZhciBxPWZ1bmN0aW9uKEksRyl7Zm9yKHZhciBOPW0oT2JqZWN0LmtleXMoSSkpLFM9Ti5uZXh0KCk7IVMuZG9uZTtTPU4ubmV4dCgpKXt2YXIgVz1TLnZhbHVlO2VpW1ddJiZ0eXBlb2YgSVtXXT09PSJzdHJpbmciJiYoR1siZXh0LiIrZWlbV11dPUlbV10pfX0scj1SKGEsRi5ELldjKTtyJiYKcShyLGMpO3ZhciB0PWV2KGEpLHU9dC5WbjtuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGMsdC5rZSk7YnYoYyxSKGEsRi5ELmVkKSk7dmFyIHY9UihhLEYuRC5OZSk7diE9PXZvaWQgMCYmdiE9PSIiJiYoYy52ZG5jPVN0cmluZyh2KSk7dmFyIHg9UihhLEYuRC5MZCk7eCE9PXZvaWQgMCYmKGMuc2hmPXgpO3ZhciB5PVIoYSxGLkQuVGMpO3khPT12b2lkIDAmJihjLmRlbGM9eSk7aWYoYiE9PVguVi5ZZCl7dmFyIHo9ZnYodSk7eiYmKGMuZGF0YT16KX12YXIgQz1SKGEsRi5ELkhhKTtpZihDJiYoYj09PVguVi54YXx8Yj09PVguVi5ZZHx8Yj09PVguVi5aZHx8Yj09PVguVi56ZCkpe3ZhciBEPW5pKEMpO0QhPT12b2lkIDAmJihjLmllZGVsZD1EKTtjLml0ZW09aGkoQyl9aHQoYSxjKTtjdihhLGMpO1EoYSxILkouSWgpJiYoYy5hZWNzPSIxIik7YiE9PVguVi54YXx8UShhLEguSi5FYyl8fFEoYSxILkoub2IpfHwoYy5jYXRlZ29yeT0iYWNyY3BfdjFfNTEyIik7cmV0dXJuIGN9LApldj1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz17fSxkPVEoYSxILkouZGEpLGU9bShldShhKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1SKGEsZyk7aWYoaCE9PXZvaWQgMClpZihTYihnLCJfJiIpKWJbZy5zdWJzdHJpbmcoMildPWg7ZWxzZSBpZihlaS5oYXNPd25Qcm9wZXJ0eShnKSl7aWYoZyE9PUYuRC5FaXx8ZD09PVguVi54YSYmIVEoYSxILkouRWMpKXt2YXIgbD1laVtnXTtsJiYoZyE9PUYuRC5OZCYmZyE9PUYuRC5NZHx8TSg1MDQpP2JbbF09aDpjW2ddPWgpfX1lbHNlIGNbZ109aH1yZXR1cm57a2U6YixWbjpjfX07dmFyIG12PXtOZzoidmFsdWUiLHBiOiJjb252ZXJzaW9uQ291bnQiLE9nOjF9LG52PXtOZzoidGltZW91dHMiLHBiOiJ0aW1lb3V0cyIsT2c6MH0sb3Y9e05nOiJlb3BDb3VudCIscGI6ImVuZE9mUGFnZUNvdW50IixPZzowfSxwdj17Tmc6ImVycm9ycyIscGI6ImVycm9ycyIsT2c6MH0scXY9W212LG52LHB2LG92XTtmdW5jdGlvbiBydihhLGIpe2I9Yj09PXZvaWQgMD8xOmI7aWYoIXN2KGEpKXJldHVybnt9O3ZhciBjPXR2KHF2KSxkPWNbYS5wYl07aWYoZD09PXZvaWQgMHx8ZD09PS0xKXJldHVybiBjO3ZhciBlPXt9LGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLChlW2EucGJdPWQrYixlKSk7cmV0dXJuIHV2KGYpP2Y6Y30KZnVuY3Rpb24gdHYoYSl7dmFyIGI7YTp7dmFyIGM9bnIoImdjbF9jdHIiKTtpZihjLmVycm9yPT09MCYmYy52YWx1ZSYmdHlwZW9mIGMudmFsdWU9PT0ib2JqZWN0Iil7dmFyIGQ9Yy52YWx1ZTt0cnl7Yj0idmFsdWUiaW4gZCYmdHlwZW9mIGQudmFsdWU9PT0ib2JqZWN0Ij9kLnZhbHVlOnZvaWQgMDticmVhayBhfWNhdGNoKHApe319Yj12b2lkIDB9Zm9yKHZhciBlPWIsZj17fSxnPW0oYSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWU7aWYoZSYmc3YobCkpe3ZhciBuPWVbbC5OZ107bj09PXZvaWQgMHx8TnVtYmVyLmlzTmFOKG4pP2ZbbC5wYl09LTE6ZltsLnBiXT1OdW1iZXIobil9ZWxzZSBmW2wucGJdPS0xfXJldHVybiBmfQpmdW5jdGlvbiB1dihhLGIpe2I9Ynx8e307Zm9yKHZhciBjPU5iKCksZD11cShiLGMsITApLGU9e30sZj1tKHF2KSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZSxsPWFbaC5wYl07bCE9PXZvaWQgMCYmbCE9PS0xJiYoZVtoLk5nXT1sKX1lLmNyZWF0aW9uVGltZU1zPWM7cmV0dXJuIGtyKCJnY2xfY3RyIix7dmFsdWU6ZSxleHBpcmVzOk51bWJlcihkLmV4cGlyZXMpfSk9PT0wPyEwOiExfWZ1bmN0aW9uIHN2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuZnR8fFlmKGEuZnQpOiExfWZ1bmN0aW9uIHZ2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuQXN8fFlmKGEuQXMpOiExfTtmdW5jdGlvbiB3digpe2lmKHh2KCkpe3ZhciBhPW5yKCJsYXN0X2NvbnZzIik7aWYoYS5lcnJvcj09PTAmJmEudmFsdWUmJnR5cGVvZiBhLnZhbHVlPT09Im9iamVjdCIpe3ZhciBiPWEudmFsdWU7aWYoYi52YWx1ZSYmQXJyYXkuaXNBcnJheShiLnZhbHVlKSl7dmFyIGM9Yi52YWx1ZTtpZighKGMubGVuZ3RoPjEpKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2lmKHR5cGVvZiBnIT09Im9iamVjdCJ8fGc9PT1udWxsfHx0eXBlb2YgZy5yYW5kb20hPT0ibnVtYmVyInx8dHlwZW9mIGcubGFiZWwhPT0ic3RyaW5nInx8Zy5sYWJlbC5sZW5ndGg+MjAwKXJldHVybjtkLnB1c2goe3JhbmRvbTpnLnJhbmRvbSxsYWJlbDpnLmxhYmVsfSl9cmV0dXJuIGR9fX19fQpmdW5jdGlvbiB5dihhLGIpeyF4digpfHxhLmxlbmd0aD4xfHxhLmxlbmd0aD09PTEmJmFbMF0ubGFiZWwubGVuZ3RoPjIwMHx8KGI9Ynx8e30sa3IoImxhc3RfY29udnMiLHt2YWx1ZTphLGV4cGlyZXM6TnVtYmVyKHVxKGIpLmV4cGlyZXMpfSkpfWZ1bmN0aW9uIHh2KCl7cmV0dXJuIEJsKFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSYmWWYoMTEpfTtmdW5jdGlvbiB6dihhKXt2YXIgYj1NYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqMjE0NzQ4MzY0Nyk7cmV0dXJuIGE/U3RyaW5nKGJebmcoYSkmMjE0NzQ4MzY0Nyk6U3RyaW5nKGIpfWZ1bmN0aW9uIEF2KGEpe3JldHVyblt6dihhKSxNYXRoLnJvdW5kKE5iKCkvMUUzKV0uam9pbigiLiIpfWZ1bmN0aW9uIEJ2KGEsYixjLGQsZSl7dmFyIGY9cnEoYiksZztyZXR1cm4oZz1ncShhLGYsc3EoYyksZCxlKSk9PW51bGw/dm9pZCAwOmcuQ3J9O3ZhciBDdj1bIjEiXSxEdj17fSxFdj17fTtmdW5jdGlvbiBGdihhKXtyZXR1cm4gRXZbR3YoYSldfWZ1bmN0aW9uIEh2KGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM9R3YoYS5wcmVmaXgpO2lmKER2W2NdKUl2KGEpLEp2KGEpO2Vsc2UgaWYoS3YoYyxhLnBhdGgsYS5kb21haW4pKXt2YXIgZD1GdihhLnByZWZpeCl8fHtpZDp2b2lkIDAsa2M6dm9pZCAwfTtiJiZMdihhLGQpO0l2KGEpO0p2KGEpfWVsc2V7dmFyIGU9VGooImF1aWRkYyIpO2lmKGUpc2IoIlRBR0dJTkciLDE3KSxEdltjXT1lO2Vsc2UgaWYoYil7dmFyIGY9R3YoYS5wcmVmaXgpLGc9QXYoKTtNdihmLGcsYSk7S3YoYyxhLnBhdGgsYS5kb21haW4pO0l2KGEsITApO0p2KGEsITApfX19CmZ1bmN0aW9uIEl2KGEsYil7KGI9PT12b2lkIDA/MDpiKSYmc3YobXYpJiZvcigiZ2NsX2N0ciIpO2lmKHZ2KG12KSYmdHYoW212XSlbbXYucGJdPT09LTEpe2Zvcih2YXIgYz17fSxkPShjW212LnBiXT0wLGMpLGU9bShxdiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7ZyE9PW12JiZ2dihnKSYmKGRbZy5wYl09MCl9dXYoZCxhKX19ZnVuY3Rpb24gSnYoYSxiKXsoYj09PXZvaWQgMD8wOmIpJiZ4digpJiZvcigibGFzdF9jb252cyIpOyFCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSl8fCFZZigxMil8fHd2KCl8fHl2KFtdLGEpfQpmdW5jdGlvbiBMdihhLGIpe3ZhciBjPUd2KGEucHJlZml4KSxkPUR2W2NdO2lmKGQpe3ZhciBlPWQuc3BsaXQoIi4iKTtpZihlLmxlbmd0aD09PTIpe3ZhciBmPU51bWJlcihlWzFdKXx8MDtpZihmKXt2YXIgZz1kO1lmKDE5KSYmYi5maT9nPWQrIi4iKyhiLnNlc3Npb25JZHx8Ii0uLSIpKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSsiLiIrYi5maSsiLiIrKGIuTGM/Yi5MYzpNYXRoLmZsb29yKE5iKCkvMUUzKSk6Yi5zZXNzaW9uSWQmJihnPWQrIi4iK2Iuc2Vzc2lvbklkKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSk7TXYoYyxnLGEsZioxRTMpfX19fWZ1bmN0aW9uIE12KGEsYixjLGQpe3ZhciBlO2U9WyIxIix0cShjLmRvbWFpbixjLnBhdGgpLGJdLmpvaW4oIi4iKTt2YXIgZj11cShjLGQpO2YuTWM9TnYoKTtvcShhLGUsZil9CmZ1bmN0aW9uIEt2KGEsYixjKXt2YXIgZD1CdihhLGIsYyxDdixOdigpKTtpZighZClyZXR1cm4hMTtPdihhLGQpO3JldHVybiEwfWZ1bmN0aW9uIE92KGEsYil7dmFyIGM9Yi5zcGxpdCgiLiIpO2lmKGMubGVuZ3RoPT09MylFdlthXT17c2Vzc2lvbklkOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2Vsc2UgaWYoYy5sZW5ndGg+PTImJihEdlthXT1jWzBdKyIuIitjWzFdLGMuc2hpZnQoKSxjLnNoaWZ0KCksYy5sZW5ndGg+PTMpKXt2YXIgZD17c2Vzc2lvbklkOmNbMF09PT0iLSI/dm9pZCAwOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2lmKFlmKDE5KSYmYy5sZW5ndGg+PTYpe3ZhciBlPWNbM10rIi4iK2NbNF0sZj1OdW1iZXIoY1s1XSl8fDA7ZSYmZiE9PTAmJihkLmZpPWUsZC5MYz1mKX1FdlthXT1kfX1mdW5jdGlvbiBHdihhKXtyZXR1cm4oYXx8Il9nY2wiKSsiX2F1In0KZnVuY3Rpb24gUHYoYSl7ZnVuY3Rpb24gYigpe0JsKGMpJiZhKCl9dmFyIGM9TnYoKTtIbChmdW5jdGlvbigpe2IoKTtCbChjKXx8SWwoYixjKX0sYyl9ZnVuY3Rpb24gUXYoYSl7dmFyIGI9VXEoITApLGM9R3YoYS5wcmVmaXgpO1B2KGZ1bmN0aW9uKCl7dmFyIGQ9YltjXTtpZihkKXtPdihjLGQpO3ZhciBlPU51bWJlcihEdltjXS5zcGxpdCgiLiIpWzFdKSoxRTM7aWYoZSl7c2IoIlRBR0dJTkciLDE2KTt2YXIgZj11cShhLGUpO2YuTWM9TnYoKTt2YXIgZz1bIjEiLHRxKGEuZG9tYWluLGEucGF0aCksZF0uam9pbigiLiIpO29xKGMsZyxmKX19fSl9ZnVuY3Rpb24gUnYoYSxiLGMsZCxlKXtlPWV8fHt9O3ZhciBmPWZ1bmN0aW9uKCl7dmFyIGc9e30saD1CdihhLGUucGF0aCxlLmRvbWFpbixDdixOdigpKTtoJiYoZ1thXT1oKTtyZXR1cm4gZ307UHYoZnVuY3Rpb24oKXthcihmLGIsYyxkKX0pfQpmdW5jdGlvbiBOdigpe3JldHVyblsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdfTsKdmFyIFR2PWZ1bmN0aW9uKGEpe3JldHVybiBTdihhLHtPajohMH0pLlNofSxTdj1mdW5jdGlvbihhLGIpe2E9YXx8e307aWYoIVhvKEYuRC5rYSkpcmV0dXJue307dmFyIGM9VXYoYSksZD1jLlNoLGU9Yy5paztiLk9qJiYhZCYmKGQ9QXYoKSk7Yi5YaCYmIWUmJihlPUF2KCkpO3ZhciBmPXt9O2QmJihmLnNlc3Npb25JZD1kKTtlJiYoZi5maT1lKTt2YXIgZz1GdihIcihhLnByZWZpeCkpO2cmJihiLk9qJiYhYi5YaD9nLkxjJiYoZi5MYz1nLkxjKTpiLlhoJiYhYi5PaiYmZy5rYyYmKGYua2M9Zy5rYykpO2lmKGR8fGUpe3ZhciBoPWEsbD1HdihoLnByZWZpeCk7THYoaCxmKTtkZWxldGUgRHZbbF07ZGVsZXRlIEV2W2xdO0t2KGwsaC5wYXRoLGguZG9tYWluKX1yZXR1cm4gVXYoYSl9LFV2PWZ1bmN0aW9uKGEpe2lmKCFYbyhGLkQua2EpKXJldHVybnt9O2E9YXx8e307SHYoYSwhMSk7dmFyIGI9RnYoSHIoYS5wcmVmaXgpKTtpZighYilyZXR1cm57fTt2YXIgYz1OYigpLGQ9e307aWYoYy0KYi5rYyoxRTM8PShNKDQ1MCl8fE0oNDQzKT84NjRFNToxOEU1KSl7dmFyIGU9Yi5zZXNzaW9uSWQ7aWYoZSl7dmFyIGY9ZS5zcGxpdCgiLiIpO2YubGVuZ3RoPT09MiYmYy0oTnVtYmVyKGZbMV0pfHwwKSoxRTM8PTg2NEU1JiYoZC5TaD1lKX19aWYoYi5MYyYmYy1iLkxjKjFFMzw9ODY0RTUpe3ZhciBnPWIuZmk7aWYoZyl7dmFyIGg9Zy5zcGxpdCgiLiIpO2gubGVuZ3RoPT09MiYmYy0oTnVtYmVyKGhbMV0pfHwwKSoxRTM8PTg2NEU1JiYoZC5paz1nKX19cmV0dXJuIGR9O3ZhciBWdj0iZW1haWwgZW1haWxfYWRkcmVzcyBzaGEyNTZfZW1haWxfYWRkcmVzcyBwaG9uZV9udW1iZXIgc2hhMjU2X3Bob25lX251bWJlciBmaXJzdF9uYW1lIGxhc3RfbmFtZSIuc3BsaXQoIiAiKSxXdj0iZmlyc3RfbmFtZSBzaGEyNTZfZmlyc3RfbmFtZSBsYXN0X25hbWUgc2hhMjU2X2xhc3RfbmFtZSBzdHJlZXQgc2hhMjU2X3N0cmVldCBjaXR5IHJlZ2lvbiBjb3VudHJ5IHBvc3RhbF9jb2RlIi5zcGxpdCgiICIpO2Z1bmN0aW9uIFh2KGEsYil7aWYoIWIuX3RhZ19tZXRhZGF0YSl7Zm9yKHZhciBjPXt9LGQ9MCxlPTA7ZTxhLmxlbmd0aDtlKyspZCs9WXYoYVtlXSxiLGMpPzE6MDtkPjAmJihiLl90YWdfbWV0YWRhdGE9Yyl9fQpmdW5jdGlvbiBZdihhLGIsYyl7dmFyIGQ9YlthXTtpZihkPT09dm9pZCAwfHxkPT09bnVsbClyZXR1cm4hMTtjW2FdPUFycmF5LmlzQXJyYXkoZCk/ZC5tYXAoZnVuY3Rpb24oKXtyZXR1cm57bW9kZToiYyJ9fSk6e21vZGU6ImMifTtyZXR1cm4hMH1mdW5jdGlvbiBadihhKXtpZihNKDUyMykmJmEpe1h2KFZ2LGEpO2Zvcih2YXIgYj1CYihhLmFkZHJlc3MpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YltjXTtkJiZYdihXdixkKX12YXIgZT1hLmhvbWVfYWRkcmVzcztlJiZYdihXdixlKX19CmZ1bmN0aW9uICR2KGEsYixjKXtmdW5jdGlvbiBkKGYsZyl7Zz1TdHJpbmcoZykuc3Vic3RyaW5nKDAsMTAwKTtlLnB1c2goIiIrZitlbmNvZGVVUklDb21wb25lbnQoZykpfWlmKCFjKXJldHVybiIiO3ZhciBlPVtdO2QoImkiLFN0cmluZyhhKSk7ZCgiZiIsYik7Yy5tb2RlJiZkKCJtIixjLm1vZGUpO2MuaXNQcmVIYXNoZWQmJmQoInAiLCIxIik7Yy5yYXdMZW5ndGgmJmQoInIiLFN0cmluZyhjLnJhd0xlbmd0aCkpO2Mubm9ybWFsaXplZExlbmd0aCYmZCgibiIsU3RyaW5nKGMubm9ybWFsaXplZExlbmd0aCkpO2MubG9jYXRpb24mJmQoImwiLGMubG9jYXRpb24pO2Muc2VsZWN0b3ImJmQoInMiLGMuc2VsZWN0b3IpO3JldHVybiBlLmpvaW4oIi4iKX07dmFyIGF3PXZvaWQgMDtmdW5jdGlvbiBidygpe2lmKCFhdyl7dmFyIGE9b20oam0uYmEub3AsbmV3IE1hcCk7YXc9bmV3IG9nKGEpfXJldHVybiBhd307CnZhciBjdz1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4gYTtmb3IodmFyIGI9e30sYz1tKE9iamVjdC5rZXlzKGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtlIT09ImFkZHJlc3MiJiZlIT09InBob25lX251bWJlciImJmUhPT0ic2hhMjU2X3Bob25lX251bWJlciImJihiW2VdPWFbZV0pfXJldHVybiBifSxmdz1mdW5jdGlvbihhKXt2YXIgYj1NKDUyMyksYz1bInR2LjEiXSxkPVsidHZkLjEiXSxlPWR3KGEpO2lmKGUpcmV0dXJuIGMucHVzaChlKSx7aGFzVXBkOiExLE9vOmMuam9pbigifiIpLFluOmMuam9pbigifiIpLGVuY3J5cHRpb25LZXlTdHJpbmc6dm9pZCAwLGlpOnt9LG1ldGFkYXRhUGFyYW06Yj9kLmpvaW4oIn4iKTp2b2lkIDB9O3ZhciBmPXt9LGc9MDt2YXIgaD0wLGw9ZXcoYSxmdW5jdGlvbihxLHIsdCl7aCsrO3ZhciB1PXEudmFsdWUsdjsKaWYodCl7dmFyIHg9cisiX18iK2crKzt2PSIke3VzZXJEYXRhLiIreCsifHNoYTI1Nn0iO2ZbeF09dX1lbHNlIHY9ZW5jb2RlVVJJQ29tcG9uZW50KGVuY29kZVVSSUNvbXBvbmVudCh1KSk7cS5pbmRleCE9PXZvaWQgMCYmKHIrPXEuaW5kZXgpO2MucHVzaChyKyIuIit2KTtpZihiKXt2YXIgeT0kdihoLHIscS5tZXRhZGF0YSk7eSYmZC5wdXNoKHkpfX0pLmhhc1VwZCxuPWQuam9pbigifiIpO3ZhciBwPWMuam9pbigifiIpO3JldHVybntoYXNVcGQ6bCxPbzpwLGlpOnt1c2VyRGF0YTpmfSxZbjoidHYuMX4keyIrKHArInwiKyhNKDU1NSk/ImVuY3J5cHRfd2l0aF9tZW1vIjoiZW5jcnlwdCIpKyJ9IiksZW5jcnlwdGlvbktleVN0cmluZzpFKDQzKSxtZXRhZGF0YVBhcmFtOmI/bjp2b2lkIDB9fSxodz1mdW5jdGlvbihhKXtpZighKGEhPW51bGwmJk9iamVjdC5rZXlzKGEpLmxlbmd0aD4wKSlyZXR1cm4hMTsKdmFyIGI9Z3coYSk7cmV0dXJuIGV3KGIsZnVuY3Rpb24oKXt9KS5oYXNVcGR9LGV3PWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP2Z1bmN0aW9uKCl7fTpiO2Zvcih2YXIgYz0hMSxkPSExLGU9bShhKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtpZihnLnZhbHVlKXt2YXIgaD1pd1tnLm5hbWVdO2lmKGgpe3ZhciBsPWp3KGcpO2wmJihjPSEwKTtkPSEwO2IoZyxoLGwpfX19cmV0dXJue2hhc1VwZDpkLGhhc1VwZFRvSGFzaDpjfX0sanc9ZnVuY3Rpb24oYSl7dmFyIGI9a3coYS5uYW1lKSxjPS9eZVxkKyQvLnRlc3QoYS52YWx1ZSksZDtpZihkPWImJiFjKXt2YXIgZT1hLnZhbHVlO2Q9IShsdy50ZXN0KGUpfHx5aS50ZXN0KGUpKX1yZXR1cm4gZH0sa3c9ZnVuY3Rpb24oYSl7cmV0dXJuIG13LmluZGV4T2YoYSkhPT0tMX0sc3c9ZnVuY3Rpb24oYSxiLGMpe2lmKHliKEEuUHJvbWlzZSkpdHJ5e3ZhciBkPSExO3ZhciBlPWd3KGEsZCksZj1udyhlKS50aGVuKGZ1bmN0aW9uKGgpe3ZhciBsPWgueWIsbj1sLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4hU2IocS5uYW1lLCJyYXciKX0pLHA9b3coe3liOm59KTtyZXR1cm57cmVzdWx0OntwYXJhbTpwLnBhcmFtLGhhc1VwZFRvSGFzaDpwLmhhc1VwZFRvSGFzaCxoYXNVcGQ6cC5oYXNVcGQsaGFkRXJyb3I6cC5oYWRFcnJvcixtZXRhZGF0YVBhcmFtOnAubWV0YWRhdGFQYXJhbX0seWI6bH19KTtyZXR1cm4gZi50aGVuKGZ1bmN0aW9uKGgpe3JldHVybiBoLnJlc3VsdH0pfWNhdGNoKGgpe319LHF3PWZ1bmN0aW9uKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gYn0sb3c9ZnVuY3Rpb24oYSl7dmFyIGI9TSg1MjMpLGM9YS55YixkPVsidHYuMSJdLGU9WyJ0dmQuMSJdLGY9ZHcoYyk7aWYoZilyZXR1cm4gZC5wdXNoKGYpLHtwYXJhbTpkLmpvaW4oIn4iKSxoYXNVcGRUb0hhc2g6ITEsaGFzVXBkOiExLGhhZEVycm9yOiEwLG1ldGFkYXRhUGFyYW06Yj9lLmpvaW4oIn4iKTp2b2lkIDB9O3ZhciBnPWMuZmlsdGVyKGZ1bmN0aW9uKHEpe3JldHVybiFqdyhxKX0pLGg9MCxsPWV3KGcsZnVuY3Rpb24ocSxyKXtoKys7dmFyIHQ9cS52YWx1ZSx1PXEuaW5kZXg7dSE9PXZvaWQgMCYmKHIrPXUpO2QucHVzaChyKyIuIit0KTtpZihiKXt2YXIgdj0kdihoLHIscS5tZXRhZGF0YSk7diYmZS5wdXNoKHYpfX0pLG49bC5oYXNVcGRUb0hhc2gscD1sLmhhc1VwZDtyZXR1cm57cGFyYW06ZW5jb2RlVVJJQ29tcG9uZW50KGQuam9pbigifiIpKSwKaGFzVXBkVG9IYXNoOm4saGFzVXBkOnAsaGFkRXJyb3I6ITEsbWV0YWRhdGFQYXJhbTpiP2Uuam9pbigifiIpOnZvaWQgMH19LGR3PWZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoPT09MSYmYVswXS5uYW1lPT09ImVycm9yX2NvZGUiKXJldHVybiBpdy5lcnJvcl9jb2RlKyIuIithWzBdLnZhbHVlfSxwdz1mdW5jdGlvbihhKXtpZihhLmxlbmd0aD09PTEmJmFbMF0ubmFtZT09PSJlcnJvcl9jb2RlIilyZXR1cm4hMTtmb3IodmFyIGI9bShhKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtpZihpd1tkLm5hbWVdJiZkLnZhbHVlKXJldHVybiEwfXJldHVybiExfSxndz1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVtdO2lmKEEubG9jYXRpb24ucHJvdG9jb2whPT0iaHR0cHM6IilyZXR1cm4gYy5wdXNoKHtuYW1lOiJlcnJvcl9jb2RlIix2YWx1ZToiZTMiLGluZGV4OnZvaWQgMH0pLGM7dmFyIGQ9Yy5wdXNoLGU9ZC5hcHBseSxmPVtdLApnPWYuY29uY2F0LGgsbD1hLl90YWdfbWV0YWRhdGF8fHt9O2g9W10uY29uY2F0KHcodHcoe25hbWU6ImVtYWlsIixyYXc6YS5lbWFpbCxTYTphLnNoYTI1Nl9lbWFpbF9hZGRyZXNzLGFiOmwuZW1haWwsbWQ6bC5zaGEyNTZfZW1haWxfYWRkcmVzc30sdXcpKSx3KHR3KHtuYW1lOiJwaG9uZV9udW1iZXIiLHJhdzphLnBob25lX251bWJlcixTYTphLnNoYTI1Nl9waG9uZV9udW1iZXIsYWI6bC5waG9uZV9udW1iZXIsbWQ6bC5zaGEyNTZfcGhvbmVfbnVtYmVyfSx2dykpKTt2YXIgbj13KGgpLHAscT1hLl90YWdfbWV0YWRhdGF8fHt9LHI9YS5ob21lX2FkZHJlc3N8fHt9LHQ9ci5fdGFnX21ldGFkYXRhfHx7fTtwPVtdLmNvbmNhdCh3KHR3KHtuYW1lOiJmaXJzdF9uYW1lIixyYXc6YS5maXJzdF9uYW1lLFNhOmEuc2hhMjU2X2ZpcnN0X25hbWUsYWI6cS5maXJzdF9uYW1lLG1kOnEuc2hhMjU2X2ZpcnN0X25hbWV9LHd3KHh3KSkpLHcodHcoe25hbWU6Imxhc3RfbmFtZSIscmF3OmEubGFzdF9uYW1lLApTYTphLnNoYTI1Nl9sYXN0X25hbWUsYWI6cS5sYXN0X25hbWUsbWQ6cS5zaGEyNTZfbGFzdF9uYW1lfSx3dyh4dykpKSx3KHR3KHtuYW1lOiJzdHJlZXQiLHJhdzpyLnN0cmVldCxTYTpyLnNoYTI1Nl9zdHJlZXQsYWI6dC5zdHJlZXQsbWQ6dC5zaGEyNTZfc3RyZWV0fSx3dyh5dykpKSx3KHR3KHtuYW1lOiJjaXR5IixyYXc6ci5jaXR5LGFiOnQuY2l0eX0sd3coeXcpKSksdyh0dyh7bmFtZToicG9zdGFsX2NvZGUiLHJhdzpyLnBvc3RhbF9jb2RlLGFiOnQucG9zdGFsX2NvZGV9LHd3KHp3KSkpLHcodHcoe25hbWU6InJlZ2lvbiIscmF3OnIucmVnaW9uLGFiOnQucmVnaW9ufSx3dyh5dykpKSx3KHR3KHtuYW1lOiJjb3VudHJ5IixyYXc6ci5jb3VudHJ5LGFiOnQuY291bnRyeX0sd3coencpKSkpO2Zvcih2YXIgdT13KHApLHY9W10seD1CYihhLmFkZHJlc3N8fHt9KSx5PTA7eTx4Lmxlbmd0aDt5Kyspe2Zvcih2YXIgej14W3ldLEM9ei5fdGFnX21ldGFkYXRhfHx7fSxEPVtdLmNvbmNhdCh3KHR3KHtuYW1lOiJmaXJzdF9uYW1lIiwKcmF3OnouZmlyc3RfbmFtZSxTYTp6LnNoYTI1Nl9maXJzdF9uYW1lLGFiOkMuZmlyc3RfbmFtZSxtZDpDLnNoYTI1Nl9maXJzdF9uYW1lfSx4dykpLHcodHcoe25hbWU6Imxhc3RfbmFtZSIscmF3OnoubGFzdF9uYW1lLFNhOnouc2hhMjU2X2xhc3RfbmFtZSxhYjpDLmxhc3RfbmFtZSxtZDpDLnNoYTI1Nl9sYXN0X25hbWV9LHh3KSksdyh0dyh7bmFtZToic3RyZWV0IixyYXc6ei5zdHJlZXQsU2E6ei5zaGEyNTZfc3RyZWV0LGFiOkMuc3RyZWV0LG1kOkMuc2hhMjU2X3N0cmVldH0seXcpKSx3KHR3KHtuYW1lOiJjaXR5IixyYXc6ei5jaXR5LGFiOkMuY2l0eX0seXcpKSx3KHR3KHtuYW1lOiJwb3N0YWxfY29kZSIscmF3OnoucG9zdGFsX2NvZGUsYWI6Qy5wb3N0YWxfY29kZX0sencpKSx3KHR3KHtuYW1lOiJyZWdpb24iLHJhdzp6LnJlZ2lvbixhYjpDLnJlZ2lvbn0seXcpKSx3KHR3KHtuYW1lOiJjb3VudHJ5IixyYXc6ei5jb3VudHJ5LGFiOkMuY291bnRyeX0sencpKSksST0wO0k8CkQubGVuZ3RoO0krKylEW0ldLmluZGV4PXk7di5wdXNoLmFwcGx5KHYsdyhEKSl9ZS5jYWxsKGQsYyxnLmNhbGwoZixuLHUsdyh2KSkpO2lmKGImJkJwKCkpe3ZhciBHPWMucHVzaCxOPUcuYXBwbHksUz1bXTtTLnB1c2guYXBwbHkoUyxbXS5jb25jYXQodyhBdyh7bmFtZToicmF3X2VtYWlsIixyYXc6YS5lbWFpbCxTYTphLnNoYTI1Nl9lbWFpbF9hZGRyZXNzfSkpLHcoQXcoe25hbWU6InJhd19waG9uZV9udW1iZXIiLHJhdzphLnBob25lX251bWJlcixTYTphLnNoYTI1Nl9waG9uZV9udW1iZXJ9KSkpKTtmb3IodmFyIFc9QmIoYS5hZGRyZXNzfHx7fSksZWE9MDtlYTxXLmxlbmd0aDtlYSsrKXt2YXIgamE9V1tlYV07Uy5wdXNoLmFwcGx5KFMsW10uY29uY2F0KHcoQXcoe25hbWU6InJhd19maXJzdF9uYW1lIixyYXc6amEuZmlyc3RfbmFtZSxTYTpqYS5zaGEyNTZfZmlyc3RfbmFtZX0sZWEpKSx3KEF3KHtuYW1lOiJyYXdfbGFzdF9uYW1lIixyYXc6amEubGFzdF9uYW1lLFNhOmphLnNoYTI1Nl9sYXN0X25hbWV9LAplYSkpLHcoQXcoe25hbWU6InJhd19zdHJlZXQiLHJhdzpqYS5zdHJlZXQsU2E6amEuc2hhMjU2X3N0cmVldH0sZWEpKSkpfWlmKGEuZmlyc3RfbmFtZXx8YS5ob21lX2FkZHJlc3Mpe1MucHVzaC5hcHBseShTLFtdLmNvbmNhdCh3KEF3KHtuYW1lOiJyYXdfZmlyc3RfbmFtZSIscmF3OmEuZmlyc3RfbmFtZSxTYTphLnNoYTI1Nl9maXJzdF9uYW1lfSkpLHcoQXcoe25hbWU6InJhd19sYXN0X25hbWUiLHJhdzphLmxhc3RfbmFtZSxTYTphLnNoYTI1Nl9sYXN0X25hbWV9KSkpKTt2YXIgZmE9YS5ob21lX2FkZHJlc3N8fHt9O1MucHVzaC5hcHBseShTLHcoQXcoe25hbWU6InJhd19zdHJlZXQiLHJhdzpmYS5zdHJlZXQsU2E6ZmEuc2hhMjU2X3N0cmVldH0pKSl9Ti5jYWxsKEcsYyx3KFMpKX1yZXR1cm4gY30sd3c9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe1AoNjQpO3JldHVybiBhKGIpfX0sQXc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtpZihhLlNhKXJldHVybiBjO2Zvcih2YXIgZD0KQmIoYS5yYXcpLGU9MDtlPGQubGVuZ3RoOysrZSl7dmFyIGY9QncoZFtlXSk7aWYoZiYmIXlpLnRlc3QoZikpaWYoL15lXGQrJC8udGVzdChmKSljLnB1c2goe25hbWU6YS5uYW1lLHZhbHVlOmYsaW5kZXg6Yn0pO2Vsc2V7dmFyIGc9YyxoPWcucHVzaCxsPWEubmFtZSxuO3ZhciBwPUE7dHJ5e249QmkoQXJyYXkuZnJvbShaYihmKSkscCl9Y2F0Y2gocSl7bj0iZTAifWguY2FsbChnLHtuYW1lOmwsdmFsdWU6bixpbmRleDpifSl9fXJldHVybiBjfSx0dz1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ9TSg1MjMpLGU9YS5yYXcsZj1kP2EuYWI6dm9pZCAwO0N3KGUsITEpO2EuU2EmJihlJiZQKDkwKSxlPWEuU2EsZj1kP2EubWQ6dm9pZCAwLEN3KGUsITApKTtmb3IodmFyIGc9QmIoZSksaD1CYihmKSxsPTA7bDxnLmxlbmd0aDsrK2wpe3ZhciBuO3ZhciBwPWEubmFtZSxxPWIscj1oW2xdLHQ9QncoZ1tsXSk7aWYodCE9PSIiKWlmKHlpLnRlc3QodCkpe3ImJihyLmlzUHJlSGFzaGVkPSEwKTsKdmFyIHU9e25hbWU6cCx2YWx1ZTp0LGluZGV4OnZvaWQgMH07ciYmKHUubWV0YWRhdGE9cik7bj11fWVsc2V7dmFyIHY9cSh0KSx4PXtuYW1lOnAsdmFsdWU6dixpbmRleDp2b2lkIDB9O3ImJih4Lm1ldGFkYXRhPXIsdiYmKHIucmF3TGVuZ3RoPVN0cmluZyh0KS5sZW5ndGgsci5ub3JtYWxpemVkTGVuZ3RoPXYubGVuZ3RoKSk7bj14fWVsc2Ugbj12b2lkIDA7dmFyIHk9bjt5JiZjLnB1c2goeSl9cmV0dXJuIGN9LEN3PWZ1bmN0aW9uKGEsYil7aWYoemIoYSl8fEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPUJiKGEpLGQ9MDtkPGMubGVuZ3RoOysrZCl7dmFyIGU9QncoY1tkXSksZj15aS50ZXN0KGUpO2ImJiFmJiZQKDg5KTshYiYmZiYmUCg4OCl9fSxEdz1mdW5jdGlvbihhKXt2YXIgYj1hP2d3KGEpOltdO3JldHVybiBvdyh7eWI6Yn0pfSxFdz1mdW5jdGlvbihhKXtyZXR1cm4gYSYmYSE9bnVsbCYmT2JqZWN0LmtleXMoYSkubGVuZ3RoPjAmJnliKEEuUHJvbWlzZSk/Z3coYSkuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gYi52YWx1ZSYmCmt3KGIubmFtZSkmJiF5aS50ZXN0KGIudmFsdWUpfSk6ITF9LEJ3PWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsPyIiOnpiKGEpP0xiKFN0cmluZyhhKSk6ImUwIn0senc9ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZShGdywiIil9LHh3PWZ1bmN0aW9uKGEpe3JldHVybiB5dyhhLnJlcGxhY2UoL1xzL2csIiIpKX0seXc9ZnVuY3Rpb24oYSl7cmV0dXJuIExiKGEucmVwbGFjZShHdywiIikudG9Mb3dlckNhc2UoKSl9LHZ3PWZ1bmN0aW9uKGEpe2E9YS5yZXBsYWNlKC9bXHMtKCkvLl0vZywiIik7YS5jaGFyQXQoMCkhPT0iKyImJihhPSIrIithKTtyZXR1cm4oTSg1OTcpP0h3Okl3KS50ZXN0KGEpP2E6ImUwIn0sdXc9ZnVuY3Rpb24oYSl7dmFyIGI9YS50b0xvd2VyQ2FzZSgpLnNwbGl0KCJAIik7aWYoYi5sZW5ndGg9PT0yKXt2YXIgYz1iWzBdOy9eKGdtYWlsfGdvb2dsZW1haWwpXC4vLnRlc3QoYlsxXSkmJihjPWMucmVwbGFjZSgvXC4vZywiIikpO2M9YysiQCIrYlsxXTtpZihKdy50ZXN0KGMpKXJldHVybiBjfXJldHVybiJlMCJ9LApLdz1mdW5jdGlvbihhKXt0cnl7cmV0dXJuIGEuZm9yRWFjaChmdW5jdGlvbihiKXtiLnZhbHVlJiZrdyhiLm5hbWUpJiYoYi52YWx1ZT1EaShiLnZhbHVlKSl9KSx7eWI6YX19Y2F0Y2goYil7cmV0dXJue3liOltdfX19LG53PWZ1bmN0aW9uKGEpe3JldHVybiBhLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIudmFsdWUmJmt3KGIubmFtZSl9KT95YihBLlByb21pc2UpP1Byb21pc2UuYWxsKGEubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLnZhbHVlJiZrdyhiLm5hbWUpP0FpKGIudmFsdWUpLnRoZW4oZnVuY3Rpb24oYyl7Yi52YWx1ZT1jfSk6UHJvbWlzZS5yZXNvbHZlKCl9KSkudGhlbihmdW5jdGlvbigpe3JldHVybnt5YjphfX0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue3liOltdfX0pOnt0aGVuOmZ1bmN0aW9uKGIpe2Ioe3liOltdfSl9fTpQcm9taXNlLnJlc29sdmUoe3liOmF9KX0sR3c9L1swLTlgfiFAIyQlXiYqKClfXC0rPTo7PD4sLj98L1xcW1xdXS9nLEp3PS9eXFMrQFxTK1wuXFMrJC8sCkl3PS9eXCtcZHsxMCwxNX0kLyxIdz0vXlwrXGR7NywxNX0kLyxGdz0vWy5+XS9nLGx3PS9eWzAtOUEtWmEtel8tXXs0M30kLyxMdz1bInJlbSIsInJwbiIsInJmbiIsInJsbiIsInJzYSJdLE13PXt9LGl3PShNdy5lbWFpbD0iZW0iLE13LnBob25lX251bWJlcj0icG4iLE13LmZpcnN0X25hbWU9ImZuIixNdy5sYXN0X25hbWU9ImxuIixNdy5zdHJlZXQ9InNhIixNdy5jaXR5PSJjdCIsTXcucmVnaW9uPSJyZyIsTXcuY291bnRyeT0iY28iLE13LnBvc3RhbF9jb2RlPSJwYyIsTXcuZXJyb3JfY29kZT0iZWMiLE13LnJhd19lbWFpbD0icmVtIixNdy5yYXdfcGhvbmVfbnVtYmVyPSJycG4iLE13LnJhd19maXJzdF9uYW1lPSJyZm4iLE13LnJhd19sYXN0X25hbWU9InJsbiIsTXcucmF3X3N0cmVldD0icnNhIixNdyk7dmFyIG13PU9iamVjdC5mcmVlemUoWyJlbWFpbCIsCiJwaG9uZV9udW1iZXIiLCJmaXJzdF9uYW1lIiwibGFzdF9uYW1lIiwic3RyZWV0Il0pOwp2YXIgUXc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1sdihhKSxkPWZ1bmN0aW9uKHApe3ZhciBxPUNwKGEpO3EmJihjLnRhZ19leHA9cSk7YihwKX0sZT1RKGEsSC5KLmRhKSxmPVEoYSxILkouWWEpLGc9WG8oW0YuRC5tYSxGLkQua2FdKSxoO2E6c3dpdGNoKGUpe2Nhc2UgWC5WLnhhOmNhc2UgWC5WLnpkOmNhc2UgWC5WLlpkOmNhc2UgWC5WLk9iOmNhc2UgWC5WLkZiOmg9ITA7YnJlYWsgYTtkZWZhdWx0Omg9ITF9aWYoaCYmZiYmZylpZihRKGEsSC5KLmZkKSlpZihOdyhhKSlkKGMpO2Vsc2V7dmFyIGw9c3coZiwhMCk7T3cobCxhLGMsZCl9ZWxzZXt2YXIgbjthOnt0cnl7bj1vdyhLdyhndyhmKSkpO2JyZWFrIGF9Y2F0Y2gocCl7fW49dm9pZCAwfWlmKG4pdHJ5e1B3KGMsYSkobil9Y2F0Y2gocCl7fWQoYyl9ZWxzZSBkZWxldGUgYy5lY19tb2RlLGQoYyl9LE53PWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouZGEpO3JldHVybiBiPT09WC5WLkZifHxiPT09WC5WLk9ifSxSdz1mdW5jdGlvbihhLApiKXtyZXR1cm4gYSE9PTF8fFEoYixILkouZGEpPT09WC5WLk9iJiYhTSg0NDUpPyExOiEhUShiLEguSi5mZCl9LFB3PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKGMpe1J3KGMuZW5jcnlwdGlvblJlc3VsdD8xOjAsYil8fChhLmVtPWMucGFyYW0pO2lmKGMuaGFzVXBkKXt2YXIgZD1TdyhiKTtkJiYoYS5lY3NpZD1kKX1NKDUyMykmJmMubWV0YWRhdGFQYXJhbSYmKGEuZW1kPWMubWV0YWRhdGFQYXJhbSk7fX0sU3c9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5kYSk9PT1YLlYuRmImJgohTSg0NDMpKXt2YXIgYj1RKGEsSC5KLkdhKTtyZXR1cm4gUShhLEguSi56ail8fFR2KGIpfX0sT3c9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYSl0cnl7YS50aGVuKFB3KGMsYikpLnRoZW4oZnVuY3Rpb24oKXtkKGMpfSk7cmV0dXJufWNhdGNoKGUpe31kKGMpfTt2YXIgVHc9T2JqZWN0LmZyZWV6ZSh7Z2NwOiIxIixzc2N0ZToiMSIsY3RfY29va2llX3ByZXNlbnQ6IjEifSk7CnZhciBVdz1mdW5jdGlvbihhLGIpe2F2LmNhbGwodGhpcyxhLGIsMSwhMSl9O3dhKFV3LGF2KTtVdy5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7UXcoYSxmdW5jdGlvbihkKXtRKGEsSC5KLmFqKSYmZGVsZXRlIGQuaXRlbTtRKGEsSC5KLm9iKSYmbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCxkLFR3KTt2YXIgZT1nayhiLkljKTtlJiYoZC5fdWlwPWUpO3ZhciBmPSI/IitrdihkKTtjKGYpfSl9O3ZhciBWdz1uZXcgVXcoMjIsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pLFd3PW5ldyBVdygyMyxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSksWHc9bmV3IFV3KDYwLFtdKSxZdz1mdW5jdGlvbigpe307d2EoWXcsb3UpO1l3LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEpe3JldHVybiBRKGEsSC5KLmRhKT09PVguVi56ZCYmUShhLEguSi5saik/W3tlbmRwb2ludDpYbyhmcCk/UShhLEguSi5vYik/V3c6Vnc6WHcsbWV0aG9kOmx1fV06W119O3ZhciBadz1uZXcgWXc7Cgp2YXIgJHc9ZnVuY3Rpb24oYSl7aWYoT3AoKT09PTIpcmV0dXJuITE7dmFyIGI9UShhLEguSi5kYSksYz1bWC5WLnhhLFguVi51Yl07TSg1OTMpJiZjLnB1c2goWC5WLllkKTtyZXR1cm4gYy5pbmNsdWRlcyhiKT8hMDohMX0sYXg9ZnVuY3Rpb24oYSl7cmV0dXJuIE0oNTAwKSYmT3AoKSE9PTImJlEoYSxILkouZGEpPT09WC5WLnhhfSxieD1mdW5jdGlvbihhKXt2YXIgYj1IcihhLnByZWZpeCk7Yj09PSJfZ2NsIiYmKGI9IiIpO3JldHVybiBifSxjeD1mdW5jdGlvbihhKXtpZihSKGEsRi5ELlNiKXx8UihhLEYuRC5KZSkpe3ZhciBiPVIoYSxGLkQuR2QpLGM9RWQoUShhLEguSi5HYSksbnVsbCksZD1IcihjLnByZWZpeCk7Yy5wcmVmaXg9ZD09PSJfZ2NsIj8iIjpkO2lmKFIoYSxGLkQuU2IpKXt2YXIgZT1YcyhiLGMsIVEoYSxILkouTm0pLGF4KGEpKTtWKGEsSC5KLk5tLCEwKTtlJiZVKGEsRi5ELnFtLGUpfWlmKFIoYSxGLkQuSmUpKXt2YXIgZj1QcyhiLGMpLlJyO2YmJlUoYSxGLkQuTWwsCmYpfX19LGl4PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBkeDtzd2l0Y2goUShhLEguSi5kYSkpe2Nhc2UgWC5WLnhhOlUoYSxGLkQuZm0sVXEoITEpLl9ncyk7ZXgoYSk7ZngoYSxiKTtneChhLGIpO2lmKCFiLmpvKCl8fE0oNDIxKSl7dmFyIGM9bm0oam0uYmEuVmUpLGQ9WG8oRi5ELmthKSYmWG8oRi5ELm1hKTtpZihjJiZjLmdjbGlkJiYhZCYmIVEoYSxILkouWGUpKXt2YXIgZT1TdHJpbmcoYy5nY2xpZCksZj1uZXcgZXI7ZnIoZiw2KTtiLkNqKHt2ZXJzaW9uOiJHQ0wiLHRpbWVzdGFtcDowLGdjbGlkOmUscWE6ZixvYTpbNF19KX19YnJlYWs7Y2FzZSBYLlYuT2I6Y2FzZSBYLlYuRmI6ZXgoYSk7ZngoYSxiKTticmVhaztjYXNlIFguVi51YjppZihNKDQ1OCkmJlhvKEYuRC5rYSkmJlEoYSxILkoud2YpKXt2YXIgZz1RKGEsSC5KLkdhKTtoeChhLGIsYngoZykpfWJyZWFrO2Nhc2UgWC5WLllkOmV4KGEpLGZ4KGEsYiksZ3goYSxiKX1iLk90KGEpfSxmeD1mdW5jdGlvbihhLGIpe2lmKFhvKEYuRC5rYSkmJgpRKGEsSC5KLndmKSl7dmFyIGM9UShhLEguSi5HYSksZD1ieChjKSxlPVJzKGQpO1UoYSxGLkQuQmUsZS5FZyk7VShhLEYuRC5EZSxlLldoKTtVKGEsRi5ELkNlLGUuVWgpO00oNDIxKT8oangoYSxiLGMsZCksaHgoYSxiLGQpKTpXcyhkKT9qeChhLGIsYyxkKTpoeChhLGIsZCl9fSxoeD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9JHcoYSk7VHMoYywiZ2NsaWQiLCJnY2xhdyIsZCkuZm9yRWFjaChmdW5jdGlvbihmKXtiLkNqKGYpfSk7Yi5MbygpO2lmKCFjKXt2YXIgZT1PcyhCcihBcigpKT9ScCgpOnt9LE1zKTtlJiZVKGEsRi5ELnJoLGUpfX0sang9ZnVuY3Rpb24oYSxiLGMsZCl7VHMoZCwiYnJhaWRzIiwiZ2NsZ2IiLGF4KGEpKS5mb3JFYWNoKGZ1bmN0aW9uKGcpe2IuanIoZyl9KTtpZighZCl7dmFyIGU9UihhLEYuRC5HZCk7Yz1FZChjLG51bGwpO2MucHJlZml4PWQ7dmFyIGY9UHMoZSxjLCEwKS5RcjtmJiZVKGEsRi5ELkplLGYpfX0sZXg9ZnVuY3Rpb24oYSl7aWYoTSgxNikpe3ZhciBiPQpPKGEuTSxGLkQuemEpO2J8fChiPU9wKCExKT09PTE/QS50b3AubG9jYXRpb24uaHJlZjpBLmxvY2F0aW9uLmhyZWYpO3ZhciBjLGQ9UmooYiksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpO2lmKCFlKXt2YXIgZj1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2U9ZXx8SWooZiwiZ2NsaWQiLCExKX0oYz1lP2UubGVuZ3RoOnZvaWQgMCkmJlUoYSxGLkQuemwsYyl9fSxneD1mdW5jdGlvbihhLGIpe3ZhciBjPVhvKEYuRC5rYSkmJlhvKEYuRC5tYSk7aWYoIWIuam8oKXx8TSg0MjEpKXt2YXIgZDt2YXIgZTtiOnt2YXIgZixnPUEsaD1bXTt0cnl7Zy5uYXZpZ2F0aW9uJiZnLm5hdmlnYXRpb24uZW50cmllcyYmKGg9Zy5uYXZpZ2F0aW9uLmVudHJpZXMoKSl9Y2F0Y2goQyl7fWY9aDt2YXIgbD17fTt0cnl7Zm9yKHZhciBuPWYubGVuZ3RoLTE7bj49MDtuLS0pe3ZhciBwPWZbbl0mJmZbbl0udXJsO2lmKHApe3ZhciBxPShuZXcgVVJMKHApKS5zZWFyY2hQYXJhbXMscj1xLmdldCgiZ2NsaWQiKXx8CnZvaWQgMCx0PXEuZ2V0KCJnY2xzcmMiKXx8dm9pZCAwO2lmKHIpe2wuZ2NsaWQ9cjt0JiYobC5WaD10KTtlPWw7YnJlYWsgYn19fX1jYXRjaChDKXt9ZT1sfXZhciB1PWUsdj11LmdjbGlkLHg9dS5WaCx5O2lmKHYmJih4PT09dm9pZCAwfHx4PT09ImF3Inx8eD09PSJhdy5kcyJ8fFlmKDgpJiZ4PT09ImF3LmR2IikpaWYodiE9PXZvaWQgMCl7dmFyIHo9bmV3IGVyO2ZyKHosMik7ZnIoeiwzKTt5PXt2ZXJzaW9uOiJHQ0wiLHRpbWVzdGFtcDowLGdjbGlkOnYscWE6eixvYTpbM119fWVsc2UgeT12b2lkIDA7ZWxzZSB5PXZvaWQgMDtkPXk7ZCYmKCFjJiZRKGEsSC5KLlhlKSYmKGQuZ2NsaWQ9IjAiKSxiLkNqKGQpLGIuTG8oKSl9fSxkeD1mdW5jdGlvbigpe3RoaXMuSD1bXTt0aGlzLks9W107dGhpcy5OPXZvaWQgMH07az1keC5wcm90b3R5cGU7ay5Daj1mdW5jdGlvbihhKXtRcih0aGlzLkgsYSl9O2suanI9ZnVuY3Rpb24oYSl7UXIodGhpcy5LLGEpfTtrLmpvPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSy5sZW5ndGg+CjB9O2suTG89ZnVuY3Rpb24oKXt0aGlzLk4hPT0hMSYmKHRoaXMuTj0hMSl9O2sueW89ZnVuY3Rpb24oYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7aWYoYS5sZW5ndGgpe3ZhciBlPVtdLGY9W10sZz1bXTthLmZvckVhY2goZnVuY3Rpb24oaCl7ZS5wdXNoKGguZ2NsaWQpO3ZhciBsLG47Zi5wdXNoKChuPShsPWgucWEpPT1udWxsP3ZvaWQgMDpsLmdldCgpKSE9bnVsbD9uOjApO2cucHVzaChWcyhoLm9hfHxbMF0pKX0pO2UubGVuZ3RoJiZVKGIsYy5pZCxlLmpvaW4oIi4iKSk7ZHx8KGYubGVuZ3RoJiZVKGIsYy5xYSxmLmpvaW4oIi4iKSksZy5sZW5ndGgmJlUoYixjLm9hLGcuam9pbigiLiIpKSl9fTtrLk90PWZ1bmN0aW9uKGEpe3RoaXMuSC5sZW5ndGg+MCYmdGhpcy55byh0aGlzLkgsYSx7aWQ6Ri5ELmxiLHFhOkYuRC5CZCxvYTpGLkQuQ2R9LHRoaXMuTik7KHRoaXMuSC5sZW5ndGg9PT0wfHxNKDQyMSkpJiZ0aGlzLnlvKHRoaXMuSyxhLHtpZDpGLkQuU2IscWE6Ri5ELmZoLApvYTpGLkQuZ2h9KX07dmFyIGt4PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJJbmplY3RBZHNTY3JpcHQiKX07d2Eoa3gsaHUpO2t4LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtreC5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTtreC5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIsYyl7YW8oYS5GbyxBLEIsYixmdW5jdGlvbigpe3JldHVybiB2b2lkIGEuamYoKX0sZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBhLnJkKHZvaWQgMCl9LGM9PW51bGw/dm9pZCAwOmMuYWYpfHxYbihhLkZvLGIucmVwbGFjZSgiJmZtdD00JiIsIiZmbXQ9MyYiKSxmdW5jdGlvbigpe3JldHVybiB2b2lkIGEuamYoKX0sZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBhLnJkKHZvaWQgMCl9LGM9PW51bGw/dm9pZCAwOmMuYWYpfTt2YXIgbHg9bmV3IGt4O3ZhciBteD1PYmplY3QuZnJlZXplKHthdHRyaWJ1dGlvbnNyYzoiIn0pLG54PU9iamVjdC5mcmVlemUoe2V2ZW50U291cmNlRWxpZ2libGU6ITEsdHJpZ2dlckVsaWdpYmxlOiEwfSk7ZnVuY3Rpb24gb3goKXt2YXIgYT1YTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU7cmV0dXJuIGEmJnliKGEuc2V0QXR0cmlidXRpb25SZXBvcnRpbmcpfTt2YXIgcHg9T2JqZWN0LmZyZWV6ZSh7Y2FjaGU6Im5vLXN0b3JlIixjcmVkZW50aWFsczoiaW5jbHVkZSIsbWV0aG9kOiJHRVQiLGtlZXBhbGl2ZTohMCxyZWRpcmVjdDoiZm9sbG93In0pOwpmdW5jdGlvbiBxeChhLGIsYyxkLGUsZil7aWYoIXliKEEuZmV0Y2gpKXJldHVybiBmPT1udWxsfHxmKHZvaWQgMCx2b2lkIDApLCExO3ZhciBnPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scHgpO2ImJihnLmJvZHk9YixnLm1ldGhvZD0iUE9TVCIpO25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZyxkKTtBLmZldGNoKGEsZykudGhlbihmdW5jdGlvbihoKXtpZihoLm9rKXtpZihoLmJvZHkpe3ZhciBsPWguYm9keS5nZXRSZWFkZXIoKSxuPW5ldyBUZXh0RGVjb2RlcjtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocCl7ZnVuY3Rpb24gcSgpe2wucmVhZCgpLnRoZW4oZnVuY3Rpb24ocil7dmFyIHQ7dD1yLmRvbmU7dmFyIHU9bi5kZWNvZGUoci52YWx1ZSx7c3RyZWFtOiF0fSk7dT1jLlIrdTtmb3IodmFyIHY9dS5pbmRleE9mKCJcblxuIik7diE9PS0xOyl7dmFyIHg9WmcseTthOnt2YXIgej1tKHUuc3Vic3RyaW5nKDAsdikuc3BsaXQoIlxuIikpLEM9CnoubmV4dCgpLnZhbHVlLEQ9ei5uZXh0KCkudmFsdWU7aWYoU2IoQywiZXZlbnQ6IG1lc3NhZ2UiKSYmU2IoRCwiZGF0YTogIikpe3ZhciBJPUQuc3Vic3RyaW5nKDYpO3RyeXt5PUpTT04ucGFyc2UoSSk7YnJlYWsgYX1jYXRjaChHKXt9fXk9dm9pZCAwfXgoYyx5KTt1PXUuc3Vic3RyaW5nKHYrMik7dj11LmluZGV4T2YoIlxuXG4iKX1jLlI9dTt0PyhlPT1udWxsfHxlKGgpLHAoKSk6cSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtlPT1udWxsfHxlKGgpO3AoKX0pfXEoKX0pfWU9PW51bGx8fGUoaCl9ZWxzZSBmPT1udWxsfHxmKGgsdm9pZCAwKX0pLmNhdGNoKGZ1bmN0aW9uKGgpe2Y9PW51bGx8fGYodm9pZCAwLGgpfSk7cmV0dXJuITB9O3ZhciByeD1mdW5jdGlvbihhKXtodS5jYWxsKHRoaXMsIkZldGNoUmljaFJlc3BvbnNlIiwxKTt0aGlzLk49YX07d2EocngsaHUpO3J4LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiB5YihBLmZldGNoKX07cngucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07cngucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe3F4KGIsYz09bnVsbD92b2lkIDA6Yy5ib2R5LHRoaXMuTixjPT1udWxsP3ZvaWQgMDpjLkdiLGEucGUsZnVuY3Rpb24oZCxlKXthLm9uRmFpbHVyZShlKX0pfTsKdmFyIHN4PWZ1bmN0aW9uKGEsYil7dmFyIGM9dm9pZCAwO2EgaW5zdGFuY2VvZiBrdT9jPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sbGQpOmEgaW5zdGFuY2VvZiByeCYmKGM9e30sb3goKSYmKGMuYXR0cmlidXRpb25SZXBvcnRpbmc9bngpKTshYiYmYyYmKGMuY3JlZGVudGlhbHM9Im9taXQiLGMubW9kZT0iY29ycyIpO3JldHVybiBjfSx0eD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1iLm1ldGhvZDtRdyhhLGZ1bmN0aW9uKGYpe3ZhciBnPVEoYSxILkoub2IpLGg9WG8oZnApLGw9ZSBpbnN0YW5jZW9mIGl1PzM6ZSBpbnN0YW5jZW9mIGt4P2M9PT01fHxjPT09OD8zOjQ6ZSBpbnN0YW5jZW9mIGt1PyFnJiZoPzM6ODplIGluc3RhbmNlb2Ygcng/NzotMTtlIGluc3RhbmNlb2Yga3gmJmw9PT0zPyhmLmZtdD00LGYucmZtdD0zKTpmLmZtdD1sO25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZixjPT09NjY/e2djcDoiNCJ9Omd8fGM9PT04fHxjPT09NjU/ClR3Ont9KTt2YXIgbj1laVtGLkQuZWhdO24mJihmW25dPWMpO2lmKE0oNTY5KSl7dmFyIHA9Yi5DdCxxPXAuamsuZmlsdGVyKGZ1bmN0aW9uKHYpe3JldHVybiB2WzBdIT09dm9pZCAwfSkubWFwKGZ1bmN0aW9uKHYpe3JldHVybiB2WzBdLmVuZHBvaW50LmVuZHBvaW50fSk7cS5sZW5ndGg+MCYmKHEucHVzaChwLm1rWzBdLmVuZHBvaW50LmVuZHBvaW50KSxmLmVwcD1xLnNvcnQoZnVuY3Rpb24odix4KXtyZXR1cm4gdi14fSkuam9pbigifiIpKX12YXIgcj0iPyIra3YoZiksdD1zeChlLGgpLHU7dT0oZSBpbnN0YW5jZW9mIGl1fHxlIGluc3RhbmNlb2Yga3gpJiZYbygiYWRfdXNlcl9kYXRhIik/bXg6dm9pZCAwO2Qocix7R2I6dCxhZjp1fSl9KX07dmFyIHV4PWZ1bmN0aW9uKGEsYil7YXYuY2FsbCh0aGlzLGEsYiwyKX07d2EodXgsYXYpO3V4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYixjKXt0eChhLGIsdGhpcy5lbmRwb2ludCxjKX07dmFyIHZ4PW5ldyB1eCg1LFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSx3eD1uZXcgdXgoNixbXSkseHg9bmV3IHV4KDYzLFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSx5eD1uZXcgdXgoNjUsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pLHp4PW5ldyB1eCg4LFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSxBeD1uZXcgdXgoNjYsW10pLEJ4PW5ldyB1eCg3NCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk7dmFyIEN4PWZ1bmN0aW9uKCl7WWcuYXBwbHkodGhpcyxhcmd1bWVudHMpfTt3YShDeCxZZyk7Q3gucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiKXtaYyhhLHZvaWQgMCwkZyh0aGlzLGIpLGIuYXR0cmlidXRpb25fcmVwb3J0aW5nJiZveCgpP214Ont9KX07Q3gucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmF0dHJpYnV0aW9uX3JlcG9ydGluZyYmb3goKT97YXR0cmlidXRpb25SZXBvcnRpbmc6bnh9Ont9LGQ9JGcodGhpcyxiKTtiLnByb2Nlc3NfcmVzcG9uc2U/cXgoYSx2b2lkIDAsdGhpcyxjLHZvaWQgMCxkKTptZChhLHZvaWQgMCxjLHZvaWQgMCxkKX07dmFyIER4PWZ1bmN0aW9uKCl7Q3guYXBwbHkodGhpcyxhcmd1bWVudHMpfTt3YShEeCxDeCk7RHgucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXtDeC5wcm90b3R5cGUuSC5jYWxsKHRoaXMsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGIse3Byb2Nlc3NfcmVzcG9uc2U6ITF9KSl9O3ZhciBFeD1mdW5jdGlvbigpe307d2EoRXgsb3UpO0V4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouZGEpIT09WC5WLnhhKXJldHVybltdO3ZhciBiPVhvKGZwKSxjPSEhUShhLEguSi5vYiksZD0hIVEoYSxILkouRWMpLGU9W3tlbmRwb2ludDpiP2Q/Yz95eDp4eDpjP3p4OnZ4Ond4LG1ldGhvZDpuZCgpP2I/TSg0OTApP2M/bnU6bmV3IHJ4KG5ldyBEeCk6bHg6bnU6bHV9XSxmPWI/Yz92b2lkIDA6eng6QXg7ZiYmZS5wdXNoKHtlbmRwb2ludDpmLG1ldGhvZDpudX0pO3JldHVybiBlfTtFeC5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXtyZXR1cm4gUShhLEguSi5kYSk9PT1YLlYueGEmJldqKCkmJiFRKGEsSC5KLkVjKSYmTSg1NjkpJiZYbyhmcCk/W1t7ZW5kcG9pbnQ6QngsbWV0aG9kOm51fV1dOltdfTt2YXIgRng9bmV3IEV4O3ZhciBHeD1mdW5jdGlvbihhLGIpe2d1LmNhbGwodGhpcyxhLGIsMSwhMSwzKX07d2EoR3gsZ3UpO0d4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1sdihhKSxlPSI/IitrdihkKTtjKGUse0diOmxkfSl9O3ZhciBIeD1uZXcgR3goNTQsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pLEl4PW5ldyBHeCg1NSxbXSksSng9ZnVuY3Rpb24oKXt9O3dhKEp4LG91KTtKeC5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXtyZXR1cm5be2VuZHBvaW50Okh4LksoYSk/SHg6SXgsbWV0aG9kOm51fV19O3ZhciBLeD1uZXcgSng7CnZhciBMeD1mdW5jdGlvbigpe2F2LmNhbGwodGhpcyw5LFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdLDEpfTt3YShMeCxhdik7THgucHJvdG90eXBlLmlzU3VwcG9ydGVkPWZ1bmN0aW9uKGEpe3JldHVybiBRKGEsSC5KLmRhKT09PVguVi5aZH07THgucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXM7UXcoYSxmdW5jdGlvbihlKXt2YXIgZj1laVtGLkQuZWhdO2YmJihlW2ZdPWQuZW5kcG9pbnQpO2UuZ2NwPTE7ZS5jdF9jb29raWVfcHJlc2VudD0xO2UuZm10PWIubWV0aG9kIGluc3RhbmNlb2Yga3U/ODozO3ZhciBnPSI/IitrdihlKTtjKGcse0diOmxkfSl9KX07dmFyIE14PW5ldyBMeCxOeD1mdW5jdGlvbigpe307d2EoTngsb3UpO054LnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuW3tlbmRwb2ludDpNeCxtZXRob2Q6bnV9LHtlbmRwb2ludDpNeCxtZXRob2Q6bHV9XX07dmFyIE94PW5ldyBOeDt2YXIgUHg9WzY4XTt2YXIgUXg9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9YTt0aGlzLnRpbWVvdXRNcz1iO3RoaXMuUmI9dm9pZCAwfSxSeD1mdW5jdGlvbihhKXthLlJifHwoYS5SYj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS5IKCk7YS5SYj12b2lkIDB9LGEudGltZW91dE1zKSl9LFRuPWZ1bmN0aW9uKGEpe2EuUmImJihjbGVhclRpbWVvdXQoYS5SYiksYS5SYj12b2lkIDApfTt2YXIgU3g9ZnVuY3Rpb24oKXt2YXIgYT1OZig2NiwwKTt0aGlzLks9W107dGhpcy5SPWE7dGhpcy5IPVlhKCl9LFV4PWZ1bmN0aW9uKGEpe3ZhciBiPVR4O2IuSy5wdXNoKGEpO2IuTnx8KGIuTj1mdW5jdGlvbigpe2Zvcih2YXIgYz1tKGIuSyksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7dHJ5e2UoKX1jYXRjaChsKXt9fWZvcih2YXIgZj1tKGIuSC52YWx1ZXMoKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPXZvaWQgMDsoaD1nLnZhbHVlLndlKT09bnVsbHx8VG4oaCl9Yi5ILmNsZWFyKCl9LCRjKEEsInBhZ2VoaWRlIixiLk4pKX0sVng9ZnVuY3Rpb24oYSl7dmFyIGI9YS5tYXRjaChNbilbM118fG51bGwsYz0oYj9kZWNvZGVVUkkoYik6Yil8fCIiLGQ9UG4oYSwibGFiZWwiKXx8IiIsZT1QbihhLCJyYW5kb20iKXx8IiI7cmV0dXJuIGMrIjoiK0xuKGQpKyI6IitMbihlKX0sV3g9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVR4LAplPVZ4KGEpO2lmKCEoZC5ILmhhcyhlKXx8ZC5ILnNpemU+PWQuUikpe3ZhciBmPXt9O2ImJmI+MCYmYyYmKGYud2U9bmV3IFF4KGMsYikpO2QuSC5zZXQoZSxmKTt2YXIgZzsoZz1mLndlKT09bnVsbHx8UngoZyl9fSxVbj1mdW5jdGlvbihhLGIpe3ZhciBjPVZ4KGIpLGQsZTsoZD1hLkguZ2V0KGMpKT09bnVsbHx8KGU9ZC53ZSk9PW51bGx8fFRuKGUpO2EuSC5kZWxldGUoYyl9O1N4LnByb3RvdHlwZS5nZXRTaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSC5zaXplfTsKdmFyIFh4PWZ1bmN0aW9uKGEsYil7dmFyIGMsZD0oYz1RKGEsSC5KLmduKSk9PW51bGw/dm9pZCAwOmNbYi5wYl07cmV0dXJuIGQhPT12b2lkIDAmJmQ+PWIuT2d9LFl4PWZ1bmN0aW9uKGEsYil7aWYoUShhLEguSi5kYSk9PT1YLlYueGEmJiFRKGEsSC5KLkVjKSYmWHgoYSxudikmJiEoYjw9MCkpcmV0dXJuIG5ldyBReChmdW5jdGlvbigpe3J2KG52KX0sYil9LFp4PWZ1bmN0aW9uKGEsYixjKXtRKGIsSC5KLmRhKSE9PVguVi54YXx8UShiLEguSi5FYyl8fChUeHx8KFR4PW5ldyBTeCxYeChiLG92KSYmVXgoZnVuY3Rpb24oKXt2YXIgZDtydihvdiwoZD1UeCk9PW51bGw/dm9pZCAwOmQuZ2V0U2l6ZSgpKX0pKSxYeChiLG52KT9XeChhLGMsZnVuY3Rpb24oKXtydihudik7dmFyIGQ7KGQ9VHgpPT1udWxsfHxVbihkLGEpfSk6V3goYSkpfSxUeDsKdmFyICR4PWZ1bmN0aW9uKGEsYixjLGQsZSl7ZT1lPT09dm9pZCAwPzA6ZTtpZihkKXt2YXIgZj1RKGEsSC5KLkViKTtiPWIuTGEoe3JhbmRvbTpmK2UsZGF0YTpkfSl9cmV0dXJuW3tlbmRwb2ludDpiLG1ldGhvZDpjfSx7ZW5kcG9pbnQ6YixtZXRob2Q6bHV9XX0sYXk9ZnVuY3Rpb24oYSxiLGMsZCl7YXYuY2FsbCh0aGlzLGEsYiwxLGMpO3RoaXMuTj1kfTt3YShheSxhdik7YXkucHJvdG90eXBlLmlzU3VwcG9ydGVkPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmVuZHBvaW50PT09NjgmJlEoYSxILkoub2IpPyExOiEwfTtheS5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bHYoYSk7dGhpcy5OJiZuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGQsdGhpcy5OKTt2YXIgZT1laVtGLkQuZWhdO2UmJihkW2VdPXRoaXMuZW5kcG9pbnQpO3RoaXMuZW5kcG9pbnQhPT02OCYmKGRlbGV0ZSBkLmdjbGF3LGRlbGV0ZSBkLmdjbGF3X3NyYyk7dmFyIGY9dm9pZCAwO1EoYSwKSC5KLm9iKT8oZC5nY3A9MSxkLmN0X2Nvb2tpZV9wcmVzZW50PTEpOnRoaXMuZW5kcG9pbnQ9PT02OCYmKGQuZ2NwPTUsYi5tZXRob2QgaW5zdGFuY2VvZiBrdSYmKGQuZm10PTgsZj1sZCkpO3ZhciBnPSI/IitrdihkKTtjKGcsZj97R2I6Zn06e30pfTtheS5wcm90b3R5cGUuTGE9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBheSh0aGlzLmVuZHBvaW50LHRoaXMuWix0aGlzLmphLGEpfTt2YXIgYnk9bmV3IGF5KDksWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0sITApLGN5PW5ldyBheSg2OCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSwhMSksZHk9ZnVuY3Rpb24oKXt9O3dhKGR5LG91KTtkeS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj1ndihhKTtyZXR1cm4gJHgoYSxieSxRKGEsSC5KLm9iKT9udTpseCxiPT1udWxsP3ZvaWQgMDpiWzBdKX07ZHkucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9Z3YoYSksYz1bXTtNKDQ1OCkmJiFRKGEsSC5KLm9iKSYmCmMucHVzaCgkeChhLGN5LG51LGI9PW51bGw/dm9pZCAwOmJbMF0pKTtpZihiJiZiLmxlbmd0aD4xKWZvcih2YXIgZD1RKGEsSC5KLm9iKT9udTpseCxlPTE7ZTxiLmxlbmd0aDsrK2UpYy5wdXNoKCR4KGEsYnksZCxiW2VdLGUpKTtyZXR1cm4gY307dmFyIGV5PW5ldyBkeTsKdmFyIGd5PWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIodil7cmV0dXJuIHYuc3BsaXQoIn4iKS5maWx0ZXIoZnVuY3Rpb24oeCl7dmFyIHk9eC5zcGxpdCgiLiIpWzBdO3JldHVybiFMdy5zb21lKGZ1bmN0aW9uKHope3JldHVybiBTYih5LHopfSl9KS5qb2luKCJ+Iil9aWYoTncoYSkmJlEoYSxILkouZmQpKXt2YXIgYz1RKGEsSC5KLllhKSxkPUJwKCksZT1ndyhjLGQpLGY9ZS5zb21lKGZ1bmN0aW9uKHYpe3JldHVybiBTYih2Lm5hbWUsInJhdyIpfSksZz1mdyhlKSxoPWcuT28sbD1nLmlpLG49Zy5oYXNVcGQscD1nLlluLHE9Zy5lbmNyeXB0aW9uS2V5U3RyaW5nLHI9Zy5tZXRhZGF0YVBhcmFtLHQ9W107UncoMSxhKXx8dC5wdXNoKCImZW09IitiKGgpKTt0LnB1c2goIiZlbWU9IitwKTt2YXIgdTtyZXR1cm4gdT17aWk6bCxJdDp0LHN2OmUsWG46cixlbmNyeXB0aW9uS2V5U3RyaW5nOnEsVnI6ZnVuY3Rpb24odil7dmFyIHg9ZnkoYSx1KSx5PXN3KFEoYSxILkouWWEpLCEwLCEwKTtJdSh5LApmdW5jdGlvbih6KXtpZighUncoMSxhKSl7dmFyIEM9KHo9PW51bGw/dm9pZCAwOnoucGFyYW0pfHxvdyh7eWI6W119KS5wYXJhbTt4LmVtPUN9dih4KX0pfSxoYXNVcGQ6bixwZjp2b2lkIDAscmF3UGlpQWRkZWQ6Zn19fSxmeT1mdW5jdGlvbihhLGIpe3ZhciBjLGQ9KGM9Yi5wZikhPW51bGw/YzozLGU9e2d0bTpkdSh7bWM6UShhLEguSi5OYiksVGc6YS5NLmlzR3RtRXZlbnQsZWY6UShhLEguSi5DYykscGY6ZH0pfTtiLlhuJiYoZS5lbWQ9Yi5Ybik7aWYoYi5oYXNVcGQpe3ZhciBmPQpTdyhhKTtmJiYoZS5lY3NpZD1mKX1iLnJhd1BpaUFkZGVkJiYoZVsiZ2FwLnJwIl09IjEiKTtyZXR1cm4gZX07dmFyIGRnO2Z1bmN0aW9uIGh5KGEsYil7dmFyIGM7KGM9ZGcpPT1udWxsfHwkZihjLkgsYSxiKX07dmFyIGl5PUFhKFsiLyJdKSxqeT1mdW5jdGlvbihhKXt0aGlzLkg9YTt0aGlzLmZhaWx1cmVUeXBlPXZvaWQgMH07ankucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXt0cnl7dmFyIGQ9dGhpcy5ILmFjdGl2ZTtkPyhkLnBvc3RNZXNzYWdlKHt0eXBlOjEsY29tbWFuZDphfSksYih7ZGF0YToiIn0pKTpjKHtmYWlsdXJlVHlwZToxMyxkYXRhOiIifSl9Y2F0Y2goZSl7Yyh7ZmFpbHVyZVR5cGU6MTEsZGF0YTplLm1lc3NhZ2V9KX19O3ZhciBreT1mdW5jdGlvbihhLGIpe3RoaXMuZmFpbHVyZVR5cGU9YTt0aGlzLkg9Yn07a3kucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXtjKHtmYWlsdXJlVHlwZTp0aGlzLmZhaWx1cmVUeXBlLGRhdGE6ImYiK3RoaXMuZmFpbHVyZVR5cGUrKCJ0IisoKG5ldyBEYXRlKS5nZXRUaW1lKCktdGhpcy5IKSl9KX07CnZhciBueT1mdW5jdGlvbihhKXt2YXIgYj10aGlzO3RoaXMuaW5pdFRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dGhpcy5IPW5ldyBreSgxNSx0aGlzLmluaXRUaW1lKTt2YXIgYz1uZXcgUHJvbWlzZShmdW5jdGlvbihlKXtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlKCl9LDIwKX0pLGQ9bHkoYSkudGhlbihmdW5jdGlvbihlKXtiLkg9bmV3IGp5KGUpO215KGIsZSl9KS5jYXRjaChmdW5jdGlvbigpe2IuSD1uZXcga3koNCxiLmluaXRUaW1lKX0pO3RoaXMuSz1Qcm9taXNlLnJhY2UoW2MsZF0pfSxteT1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1bmN0aW9uKGQpe2QmJmQuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKCl7aWYoZC5zdGF0ZT09PSJyZWR1bmRhbnQiKXt2YXIgZT1iLmFjdGl2ZTtlJiZlLnN0YXRlIT09InJlZHVuZGFudCJ8fChhLkg9bmV3IGt5KDEwLGEuaW5pdFRpbWUpKX19KX07YyhiLmFjdGl2ZSk7YyhiLndhaXRpbmcpO2MoYi5pbnN0YWxsaW5nKTsKYi5hZGRFdmVudExpc3RlbmVyKCJ1cGRhdGVmb3VuZCIsZnVuY3Rpb24oKXtjKGIuaW5zdGFsbGluZyl9KX07bnkucHJvdG90eXBlLmRlbGVnYXRlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSy50aGVuKGZ1bmN0aW9uKCl7ZC5ILmlvKGEsYixjKX0pfTtueS5wcm90b3R5cGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gMn07CnZhciBseT1mdW5jdGlvbihhKXt2YXIgYixjPUxmKDExKTtjPUxmKDEwKTtiPWM7dmFyIGQ9e3Njb3BlOihUYihhLmhyZWYsIi8iKT9hLmhyZWYuc2xpY2UoMCwtMSk6YS5ocmVmKSsiL18vc2VydmljZV93b3JrZXIifTtiJiYoZC51cGRhdGVWaWFDYWNoZT0iYWxsIik7dmFyIGUsZj1veShhLGIpLGc9bmV3IE1hcChbWyJwYXRoIixhLnBhdGhuYW1lXV0pLGg9SnAoa2MoZikudG9TdHJpbmcoKSk7ZT1McChoLnprLGgucGFyYW1zLGguZnJhZ21lbnQsZyk7dmFyIGw9SWMoKSxuPWtjKGUpO3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLGQpfWNhdGNoKHApe3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLnRvU3RyaW5nKCksZCl9Y2F0Y2gocSl7cmV0dXJuIFByb21pc2UucmVqZWN0KHEpfX19OwpmdW5jdGlvbiBveShhLGIpe2Zvcih2YXIgYz1LcChpeSksZD1hLnBhdGhuYW1lLnNwbGl0KCIvIikuZmlsdGVyKGZ1bmN0aW9uKGgpe3JldHVybiBoLmxlbmd0aD4wfSksZT1bXS5jb25jYXQodyhkKSxbIl8iLCJzZXJ2aWNlX3dvcmtlciIsYiwic3cuanMiXSksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWM9TXAoYyxnLnZhbHVlKTtyZXR1cm4gY307ZnVuY3Rpb24gcHkoYSl7dmFyIGI9bm0oam0uYmEuT2gpLGM9Yj09bnVsbD92b2lkIDA6YlthXTtjfHxhIT09ImxpdGUifHwoYz1iPT1udWxsP3ZvaWQgMDpiLmZ1bGwpO3JldHVybiBjfXZhciBxeT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cHkoImZ1bGwiKTtkP2QuZGVsZWdhdGUoYSxiLGMpOmMoe2ZhaWx1cmVUeXBlOjE2fSl9O2Z1bmN0aW9uIHJ5KGEsYixjLGQsZSl7cXkoe2NvbW1hbmRUeXBlOjAscGFyYW1zOnt1cmw6YSxtZXRob2Q6MSx0ZW1wbGF0ZXM6Yixib2R5OiIiLHByb2Nlc3NSZXNwb25zZTohMSxlbmNyeXB0aW9uS2V5U3RyaW5nOmUsc29SZWZlcnJlcjpBLmxvY2F0aW9uLmhyZWZ9fSxjLGZ1bmN0aW9uKGYpe2QoZi5mYWlsdXJlVHlwZSxmLmRhdGEpfSl9O3ZhciBzeT1mdW5jdGlvbihhKXtodS5jYWxsKHRoaXMsIlNlcnZpY2VXb3JrZXJGcmFtZWxlc3MiKTt0aGlzLk49YX07d2Eoc3ksaHUpO3N5LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtzeS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTtzeS5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXM7cnkoYix0aGlzLk4uaWksZnVuY3Rpb24oKXthLmpmKCl9LGZ1bmN0aW9uKGQpe2MuTi5wZj1kO2EucmQodm9pZCAwKX0sdGhpcy5OLmVuY3J5cHRpb25LZXlTdHJpbmcpfTsKdmFyIHR5PWZ1bmN0aW9uKGEpe2F2LmNhbGwodGhpcyxhLFsiYWRfdXNlcl9kYXRhIiwiYWRfc3RvcmFnZSJdLDEsITEpfTt3YSh0eSxhdik7dHkucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXM7UXcoYSxmdW5jdGlvbihlKXt2YXIgZj1RKGEsSC5KLnBqKSxnPWZ1bmN0aW9uKCl7dmFyIG49a3YoZSk7ZiYmYi5tZXRob2QgaW5zdGFuY2VvZiBzeSYmKG4rPWYuSXQuam9pbigiIikpO2Mobix7R2I6bGR9KX07aWYoZC5lbmRwb2ludD09PTIxfHxkLmVuZHBvaW50PT09NzMpe3ZhciBoPWdrKGIuSWMpO2gmJihlLl91aXA9aCl9aWYoZiYmKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZSxmeShhLGYpKSwhKGIubWV0aG9kIGluc3RhbmNlb2Ygc3kpKSl7dmFyIGw7Zi5wZj0obD1mLnBmKSE9bnVsbD9sOjE3O2YuVnIoZnVuY3Rpb24obil7bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCxlLG4pO2coKX0pO3JldHVybn1nKCl9KX07dHkucHJvdG90eXBlLlI9CmZ1bmN0aW9uKGEpe3JldHVybiBhdi5wcm90b3R5cGUuUi5jYWxsKHRoaXMsYSkuc2xpY2UoMCwtMSl9O3ZhciB1eT1uZXcgdHkoMTEpLHZ5PW5ldyB0eSg3Miksd3k9ZnVuY3Rpb24oYSxiKXt0aGlzLlo9YTt0aGlzLlI9Yn07d2Eod3ksb3UpO3d5LnByb3RvdHlwZS5mYT1mdW5jdGlvbigpe3JldHVybiBNKDU2Myk/W3RoaXMuWix0aGlzLlJdOk0oMTQxKT9bdGhpcy5aXTpbdGhpcy5SXX07d3kucHJvdG90eXBlLmphPWZ1bmN0aW9uKCl7cmV0dXJuIG51LmlzU3VwcG9ydGVkKCk/W251XTpbbXUsbHVdfTt3eS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9dGhpcy5mYSgpLGQ9Yy5mbGF0TWFwKGZ1bmN0aW9uKGYpe3JldHVybiBiLmphKCkubWFwKGZ1bmN0aW9uKGcpe3JldHVybntlbmRwb2ludDpmLG1ldGhvZDpnfX0pfSk7aWYodGhpcy5OKCkpe3ZhciBlPVEoYSxILkoucGopO2UmJmUuaGFzVXBkJiZkLnVuc2hpZnQoe2VuZHBvaW50OmNbMF0sbWV0aG9kOm5ldyBzeShlKX0pfXJldHVybiBkfTsKdmFyIHh5PWZ1bmN0aW9uKCl7d3kuY2FsbCh0aGlzLHV5LHZ5KX07d2EoeHksd3kpO3h5LnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7cmV0dXJuITB9O3ZhciB5eT1uZXcgeHksenk9bmV3IHR5KDIxKSxBeT1uZXcgdHkoNzMpLEJ5PWZ1bmN0aW9uKCl7d3kuY2FsbCh0aGlzLHp5LEF5KX07d2EoQnksd3kpO0J5LnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7cmV0dXJuIE0oNTg3KX07dmFyIEN5PW5ldyBCeTt2YXIgRHk9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0wO3RoaXMuSz0hMTtNKDQ2MikmJlVtKCJmcyIsZnVuY3Rpb24oKXtyZXR1cm4gYS5IPjAmJmEuSDw1P1N0cmluZyhhLkgpOnZvaWQgMH0sITEpfSxFeTtmdW5jdGlvbiBGeShhLGIpe0V5fHwoRXk9bmV3IER5KTt2YXIgYz1FeTtNKDQ2MikmJmZuLksmJihiPT09Imd0bS5mb3JtU3VibWl0Inx8Yj09PSJmb3JtX3N1Ym1pdCImJklmKDQ1KSkmJihhPT09MXx8Yy5LKSYmKGMuSz0hMCxjLkg9YSxhIT09NT9WbSgiZnMiKTpRbS5ILmZzPSExKX07dmFyIEd5PWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouZGEpPT09WC5WLkthKXt2YXIgYj1mdShhKTtpZighTSg0MjcpJiYoanAoYSxiKXx8UShhLEguSi5oZCkpJiZYbyhmcCkpe3ZhciBjPWxwKGEsYik7aWYoYyl7dmFyIGQ9Tm0oNjksYyk7VGwoZCxhLDY5KTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OjY5LGV2ZW50SWQ6YS5NLmV2ZW50SWQscHJpb3JpdHlJZDphLk0ucHJpb3JpdHlJZH0sZCl9fXZhciBlPXliKGEuTS5vblN1Y2Nlc3MpP2EuTS5vblN1Y2Nlc3M6eGI7JHUoYSxiKTtlKCl9fTt2YXIgSHk9e1g6e1dxOjAsRWs6MSxaZzoyLFhrOjMsbWk6NCxWazo1LFdrOjYsWWs6NyxuaTo4LHRtOjksc206MTAsVGk6MTEsdm06MTIsQmg6MTMsRW06MTQsaWo6MTUsU3E6MTYsamQ6MTcsdWo6MTgsdmo6MTksd2o6MjAsQ246MjEseGo6MjJ9fTtIeS5YW0h5LlguV3FdPSJSRVNFUlZFRF9aRVJPIjtIeS5YW0h5LlguRWtdPSJBRFNfQ09OVkVSU0lPTl9ISVQiO0h5LlhbSHkuWC5aZ109IkNPTlRBSU5FUl9FWEVDVVRFX1NUQVJUIjtIeS5YW0h5LlguWGtdPSJDT05UQUlORVJfU0VUVVBfRU5EIjtIeS5YW0h5LlgubWldPSJDT05UQUlORVJfU0VUVVBfU1RBUlQiO0h5LlhbSHkuWC5Wa109IkNPTlRBSU5FUl9CTE9DS0lOR19FTkQiO0h5LlhbSHkuWC5Xa109IkNPTlRBSU5FUl9FWEVDVVRFX0VORCI7SHkuWFtIeS5YLllrXT0iQ09OVEFJTkVSX1lJRUxEX0VORCI7SHkuWFtIeS5YLm5pXT0iQ09OVEFJTkVSX1lJRUxEX1NUQVJUIjtIeS5YW0h5LlgudG1dPSJFVkVOVF9FWEVDVVRFX0VORCI7Ckh5LlhbSHkuWC5zbV09IkVWRU5UX0VWQUxVQVRJT05fRU5EIjtIeS5YW0h5LlguVGldPSJFVkVOVF9FVkFMVUFUSU9OX1NUQVJUIjtIeS5YW0h5Llgudm1dPSJFVkVOVF9TRVRVUF9FTkQiO0h5LlhbSHkuWC5CaF09IkVWRU5UX1NFVFVQX1NUQVJUIjtIeS5YW0h5LlguRW1dPSJHQTRfQ09OVkVSU0lPTl9ISVQiO0h5LlhbSHkuWC5pal09IlBBR0VfTE9BRCI7SHkuWFtIeS5YLlNxXT0iUEFHRVZJRVciO0h5LlhbSHkuWC5qZF09IlNOSVBQRVRfTE9BRCI7SHkuWFtIeS5YLnVqXT0iVEFHX0NBTExCQUNLX0VSUk9SIjtIeS5YW0h5LlgudmpdPSJUQUdfQ0FMTEJBQ0tfRkFJTFVSRSI7SHkuWFtIeS5YLndqXT0iVEFHX0NBTExCQUNLX1NVQ0NFU1MiO0h5LlhbSHkuWC5Dbl09IlRBR19FWEVDVVRFX0VORCI7SHkuWFtIeS5YLnhqXT0iVEFHX0VYRUNVVEVfU1RBUlQiO3ZhciBJeT17fTtJeS5YPUh5Llg7dmFyIEp5PXtSdToiTCIsWHE6IlMiLGt2OiJZIixSdDoiQiIsbnU6IkUiLE51OiJJIixmdjoiVEMiLHZ1OiJIVEMiLG91OiJGIixNdToiQyJ9LEt5PXtYcToiUyIsbHU6IlYiLGF1OiJFIixkdjoidGFnIn0sTHk9e30sTXk9KEx5W0l5LlgudmpdPSI2IixMeVtJeS5YLndqXT0iNSIsTHlbSXkuWC51al09IjciLEx5KTtmdW5jdGlvbiBOeShhKXt2YXIgYj1FKDUpLGM9TnVtYmVyKGEuZXZlbnRJZCksZD1OdW1iZXIoYS50YWdJZCk7cmV0dXJuKFNiKGIsIkdUTS0iKT9iOiJHVE0tIitiKSsiOiIrKEFiKGMpP2MrIjoiOiIiKSsoQWIoZCk/ZCsiOiI6IiIpK2Euc3RhZ2V9O2Z1bmN0aW9uIE95KCl7dmFyIGE9cmQoKTtyZXR1cm4hIShhJiZhLm1hcmsgaW5zdGFuY2VvZiBGdW5jdGlvbiYmYS5tZWFzdXJlIGluc3RhbmNlb2YgRnVuY3Rpb24mJmEuY2xlYXJNZWFzdXJlcyBpbnN0YW5jZW9mIEZ1bmN0aW9uJiZhLmNsZWFyTWFya3MgaW5zdGFuY2VvZiBGdW5jdGlvbil9O3ZhciBQeT1mdW5jdGlvbigpe3RoaXMuSD17fX0sUXk7ZnVuY3Rpb24gUnkoKXtReXx8KFF5PW5ldyBQeSk7cmV0dXJuIFF5fWZ1bmN0aW9uIFN5KGEpe3ZhciBiPVJ5KCksYz1OeShhKTtyZXR1cm4gYi5IW2NdfWZ1bmN0aW9uIFR5KGEsYil7dmFyIGM7YTp7dmFyIGQ9UnkoKTtpZihPeSgpKXt2YXIgZT1OeShhKSxmLGc7aWYoZj0oZz1yZCgpKT09bnVsbD92b2lkIDA6Zy5tYXJrKGUsYikpe2M9ZC5IW2VdPWY7YnJlYWsgYX19Yz12b2lkIDB9cmV0dXJuIGN9O2Z1bmN0aW9uIFV5KGEsYil7aWYoT3koKSl7YS5lbnRyeT1OeShhKTt2YXIgYz1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGEpO2Muc3RhZ2U9YjtkZWxldGUgYy5zZW50O3ZhciBkPVN5KGI9PT1JeS5YLmpkP3tzdGFnZTpJeS5YLmpkfTpjKSxlPVN5KGEpO2lmKGQmJmUmJiEoZC5zdGFydFRpbWU+ZS5zdGFydFRpbWUpKXtjLnN0YWdlPWIrIjoiK2Euc3RhZ2U7dmFyIGY9TnkoYyksZz17c3RhcnQ6ZC5uYW1lLGVuZDplLm5hbWV9LGgsbDtyZXR1cm4obD0oaD1yZCgpKT09bnVsbD92b2lkIDA6aC5tZWFzdXJlKGYsZykpPT1udWxsP3ZvaWQgMDpsLmR1cmF0aW9ufX19O3ZhciBXeT1mdW5jdGlvbigpe3ZhciBhPTU7VnkuUm8+MCYmKGE9VnkuUm8pO3RoaXMuSz1hO3RoaXMuSD0wO3RoaXMuTj1bXX0sWHk9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuSDxhLks/ITE6TmIoKS1hLk5bYS5IJWEuS108MUUzfSxZeT1mdW5jdGlvbihhKXt2YXIgYj1hLkgrKyVhLks7YS5OW2JdPU5iKCl9O3ZhciBWeT17Um86TmYoMywwKX0sJHk9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMueWE9W107dGhpcy5IPXZvaWQgMDt0aGlzLlo9e307dGhpcy5LPXZvaWQgMDt0aGlzLmphPW5ldyBXeTt0aGlzLkxhPTFFMzt0aGlzLlI9dGhpcy5OPSExO3RoaXMuZmE9RGIoKTtaeSh0aGlzLGZ1bmN0aW9uKCl7dmFyIGI9W1sidiIsIjMiXSxbInQiLCJ0Il0sWyJwaWQiLFN0cmluZyhhLmZhKV1dLGM9ZHUoKTtjJiZiLnB1c2goWyJndG0iLGNdKTtyZXR1cm4gYn0pO2NkKGZ1bmN0aW9uKCl7YS5mYT1EYigpfSw4NjRFNSl9LFp5PWZ1bmN0aW9uKGEsYil7YS55YS5wdXNoKGIpfSxhej1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5IO2lmKGQ9PT12b2lkIDApaWYoYylkPXJqKCk7ZWxzZSByZXR1cm4iIjtmb3IodmFyIGU9W2ZrKCJodHRwczovLyIrRSgyMSkpLCIvYSIsIj9pZD0iK0UoNSldLGY9bShhLnlhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSlmb3IodmFyIGg9Zy52YWx1ZSxsPQpoKHtldmVudElkOmQsdGY6ISFifSksbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1tKHAudmFsdWUpLHI9cS5uZXh0KCkudmFsdWUsdD1xLm5leHQoKS52YWx1ZTtlLnB1c2goIiYiK3IrIj0iK3QpfWUucHVzaCgiJno9MCIpO3JldHVybiBlLmpvaW4oIiIpfSxiej1mdW5jdGlvbihhKXtpZigkaygyNikmJihhLksmJihBLmNsZWFyVGltZW91dChhLkspLGEuSz12b2lkIDApLGEuSCE9PXZvaWQgMCYmYS5SKSl7dmFyIGI9bG8oY28uaWEuWmIpO2lmKGdvKGIpKWEuTnx8KGEuTj0hMCxpbyhiLGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYnooYSl9KSk7ZWxzZSBpZihhLlpbYS5IXXx8WHkoYS5qYSl8fGEuTGEtLTw9MClQKDEpLGEuWlthLkhdPSEwO2Vsc2V7WXkoYS5qYSk7dmFyIGM9YXooYSwhMCk7WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmEuSH0sYyk7YS5SPSExO2EuTj0hMX19fSxjej1mdW5jdGlvbihhKXthLkt8fChhLks9CkEuc2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiB2b2lkIGJ6KGEpfSw1MDApKX0sZXo9ZnVuY3Rpb24oYSl7dmFyIGI9ZHo7Yi5aW2FdfHwoYSE9PWIuSCYmKGJ6KGIpLGIuSD1hKSxiLlI9ITAsY3ooYiksYXooYikubGVuZ3RoPj0yMDIyJiZieihiKSl9LGR6O2Z1bmN0aW9uIGZ6KGEpe2d6KCk7WnkoZHosYSl9ZnVuY3Rpb24gaHooKXt2YXIgYTthPWE9PT12b2lkIDA/ITE6YTtneigpO3ZhciBiPWEsYz1kejtiPWI9PT12b2lkIDA/ITE6YjtpZihmbi5OJiYkaygyNikpe3ZhciBkPWF6KGMsITAsITApO2I/Vm4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmMuSH0sZCk6WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmMuSH0sZCl9fWZ1bmN0aW9uIGd6KCl7ZHp8fChkej1uZXcgJHkpfTtmdW5jdGlvbiBpeigpe2Z1bmN0aW9uIGEoYyxkKXt2YXIgZT13YihyYltkXXx8W10pO2UmJmIucHVzaChbYyxlXSl9dmFyIGI9W107YSgidSIsIkdUTSIpO2EoInV0IiwiVEFHR0lORyIpO2EoImgiLCJIRUFMVEgiKTtyZXR1cm4gYn07dmFyIGp6PSJodHRwczovLyIrRSgyMSksa3o9ZnVuY3Rpb24oKXt0aGlzLk49ITE7dGhpcy5SPVtdO3RoaXMuWj1bXTt0aGlzLkg9e1RDOjAsSFRDOjB9O3RoaXMuSz17fX0sbHo9ZnVuY3Rpb24oYSxiLGMsZCl7YS5LW2JdfHwoYS5LW2JdPXt9KTthLktbYl1bY109ZH0sb3o9ZnVuY3Rpb24oYSl7dmFyIGI9IiIsYz0iIixkPW16KCk7QWIoZCkmJihhLkguST1NYXRoLmZsb29yKGQpKTtjPW56KGEuSCxKeSkudG9TdHJpbmcoKTtmb3IodmFyIGU9bShPYmplY3Qua2V5cyhhLkspKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWEuS1tnXS5uYW1lLGw9IiIsbj1ueihhLktbZ10sS3kpO24mJihsPWgrIi4iK24udG9TdHJpbmcoKSxiKz0ifiIrbCl9dmFyIHA9In5BV0NUIithLlIuam9pbigiLiIpLHE9In5HQSIrYS5aLmpvaW4oIi4iKSxyPSImY2NpZD0iK3ZrKCkudG9TdHJpbmcoKSsiJmNpZD0iK0UoNSkudG9TdHJpbmcoKSsiJmw9IitjK2IrKGEuUi5sZW5ndGg/CnA6IiIpKyhhLloubGVuZ3RoP3E6IiIpO2lmKE0oMjE0KSl7dmFyIHQsdT0odD1yZCgpKT09bnVsbD92b2lkIDA6dC5nZXRFbnRyaWVzQnlOYW1lKEtjKS5tYXAoZnVuY3Rpb24odil7cmV0dXJuIFN0cmluZyh2LmR1cmF0aW9uKX0pLmpvaW4oIi4iKTt1JiYocis9In5TUyIrdSl9cmV0dXJuIHJ9LHB6PWZ1bmN0aW9uKGEsYil7aWYoIWIuc3RhZ2V8fGEuTnx8IU95KCl8fFN5KGIpKXJldHVybiExO3ZhciBjLGQ9KGM9cmQoKSk9PW51bGw/dm9pZCAwOmMudGltZU9yaWdpbjtpZighQWIoZCkpYS5OPSEwO2Vsc2UgaWYoQWIoJGsoMjUpKSYmIVN5KHtzdGFnZTpJeS5YLmpkfSkmJiFhLk4mJk95KCkpdHJ5e3ZhciBlPU51bWJlcigkaygyNSkpO1R5KHtzdGFnZTpJeS5YLmpkfSx7c3RhcnRUaW1lOk1hdGgubWF4KGUtZCwwKX0pO1R5KHtzdGFnZTpJeS5YLmlqfSx7c3RhcnRUaW1lOjB9KTt2YXIgZj1VeSh7c3RhZ2U6SXkuWC5qZH0sSXkuWC5paik7ZiYmKGEuSC5MPU1hdGguZmxvb3IoZikpfWNhdGNoKGcpe2EuTj0KITB9aWYoYS5OKXJldHVybiExO3RyeXtpZighVHkoYikpcmV0dXJuITF9Y2F0Y2goZyl7cmV0dXJuIGEuTj0hMCwhMX1yZXR1cm4hMH0scXo9ZnVuY3Rpb24oYSxiLGMpe2lmKHB6KGEsYikpdHJ5e3ZhciBkPVV5KGIsYyk7aWYoZClyZXR1cm4gTWF0aC5mbG9vcihkKX1jYXRjaChlKXthLk49ITB9fSxzej1mdW5jdGlvbigpe3ZhciBhPXJ6KCk7cHooYSx7c3RhZ2U6SXkuWC5taX0pfSx0ej1mdW5jdGlvbigpe3ZhciBhPXJ6KCksYj1xeihhLHtzdGFnZTpJeS5YLlhrfSxJeS5YLm1pKTtiIT09dm9pZCAwJiYoYS5ILlM9Yil9LHV6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKTtweihhLHtzdGFnZTpJeS5YLm5pfSl9LHZ6PWZ1bmN0aW9uKGEsYil7dmFyIGM9cnooKTtweihjLHtzdGFnZTpJeS5YLkJoLGV2ZW50SWQ6YX0pO2MuS1thXSYmYy5LW2FdLm5hbWV8fGx6KGMsYSwibmFtZSIsU2IoYiwiZ3RtLiIpP2I6IioiKX0sd3o9ZnVuY3Rpb24oYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5Llgudm0sCmV2ZW50SWQ6YX0sSXkuWC5CaCk7YyE9PXZvaWQgMCYmbHooYixhLCJTIixjKX0seXo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1yeigpLGQ9cXooYyx7c3RhZ2U6SXkuWC50bSxldmVudElkOmF9LEl5LlguQmgpO2QhPT12b2lkIDAmJmx6KGMsYSwiRSIsZCk7aWYoYj09PSJndG0ubG9hZCIpe3ZhciBlPXF6KGMse3N0YWdlOkl5LlguV2t9LEl5LlguWmcpO2UhPT12b2lkIDAmJihjLkguRT1lKTtpbyhsbyhjby5pYS5aYiksZnVuY3Rpb24oKXtpZighYy5OJiZPeSgpJiZFKDUpKXt2YXIgZj14eigpO2YhPT12b2lkIDAmJihjLkguRj1NYXRoLmZsb29yKGYpKTt0cnl7Zm9yKHZhciBnPWl6KHtldmVudElkOjAsdGY6ITF9KSxoPVtdLGw9bShnKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bShuLnZhbHVlKSxxPXAubmV4dCgpLnZhbHVlLHI9cC5uZXh0KCkudmFsdWU7aC5wdXNoKCImIitxKyI9IityKX12YXIgdD1DcCgpLHU9W1tmayhqeiksIi9hP3Y9MyZ0PWwiLCImcGlkPSIrCkRiKCkudG9TdHJpbmcoKSwiJnJ2PSIrRSgxNCksdD8iJnRhZ19leHA9Iit0OiIiLGguam9pbigiIildLmpvaW4oIiIpLCImZ3RtPSIsZHUoKSxveihjKV0uam9pbigiIik7aWYodS5sZW5ndGg+MjAyMil7dmFyIHY9TWF0aC5tYXgodS5sYXN0SW5kZXhPZigiLlRTIiwyMDIyKSx1Lmxhc3RJbmRleE9mKCJ+IiwyMDIyKSk7dT11LnNsaWNlKDAsdil9WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1Nn0sdSl9Y2F0Y2goeCl7fX19KX19LHp6O2Z1bmN0aW9uIHJ6KCl7enp8fCh6ej1uZXcga3opO3JldHVybiB6en1mdW5jdGlvbiBteigpe3RyeXt2YXIgYTtyZXR1cm4oKGE9cmQoKSk9PW51bGw/dm9pZCAwOmEuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdKS5kb21JbnRlcmFjdGl2ZX1jYXRjaChiKXt9fQpmdW5jdGlvbiBueihhLGIpe3JldHVybiBPYmplY3Qua2V5cyhiKS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGJbY119KS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGFbY10hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuKCIiKyhjPT09InRhZyI/IiI6YykpLmNvbmNhdChhW2NdLnRvU3RyaW5nKCkpfSkuam9pbigiLiIpfWZ1bmN0aW9uIEF6KGEpe3ZhciBiPXJ6KCksYz1xeihiLHtzdGFnZTpJeS5YLkVtLGV2ZW50SWQ6YX0sSXkuWC5qZCk7YyE9PXZvaWQgMCYmYi5aLnB1c2goYyl9ZnVuY3Rpb24gQnooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5LlguRWssZXZlbnRJZDphfSxJeS5YLmpkKTtjIT09dm9pZCAwJiZiLlIucHVzaChjKX1mdW5jdGlvbiBDeihhKXt2YXIgYj1yeigpO3B6KGIse3N0YWdlOkl5LlguVGksZXZlbnRJZDphfSl9CmZ1bmN0aW9uIER6KGEpe3ZhciBiPXJ6KCksYz1xeihiLHtzdGFnZTpJeS5YLnNtLGV2ZW50SWQ6YX0sSXkuWC5UaSk7YyE9PXZvaWQgMCYmbHooYixhLCJWIixjKX1mdW5jdGlvbiB4eigpe3RyeXt2YXIgYSxiO3JldHVybihiPShhPXJkKCkpPT1udWxsP3ZvaWQgMDphLmdldEVudHJpZXNCeVR5cGUoInBhaW50IikuZmluZChmdW5jdGlvbihjKXtyZXR1cm4gYy5uYW1lPT09ImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQifSkpPT1udWxsP3ZvaWQgMDpiLnN0YXJ0VGltZX1jYXRjaChjKXt9fWZ1bmN0aW9uIEV6KGEsYil7dmFyIGM9cnooKTtweihjLHtzdGFnZTpJeS5YLnhqLGV2ZW50SWQ6YS5pZCx0YWdJZDpOdW1iZXIoYltHZi55al0pfSl9CmZ1bmN0aW9uIEZ6KGEsYixjKXt2YXIgZD1yeigpLGU9ZG4oYiksZj1OdW1iZXIoYltHZi55al0pLGc9cXooZCx7c3RhZ2U6YyxldmVudElkOmEuaWQsdGFnSWQ6Zn0sSXkuWC54aik7aWYoZyE9PXZvaWQgMCYmZC5LW2EuaWRdKXt2YXIgaD1kLktbYS5pZF0udGFnfHwiIixsLG49KGw9TXlbY10pIT1udWxsP2w6IjEiLHA9bmV3IFJlZ0V4cCgiVFNcXGQiK2UrIi5USSIrZikscT0iVFMiK24rZSsiLlRJIitmKyIuVEUiK2c7aC5zZWFyY2gocCk+PTA/biE9PSIxIiYmbHooZCxhLmlkLCJ0YWciLGgucmVwbGFjZShwLHEucmVwbGFjZSgiLlRFIitnLCIiKSkpOihseihkLGEuaWQsInRhZyIsKGg/aCsiLiI6IiIpK3EpLGU9PT0iaHRtbCImJihkLkguSFRDKz0xKSxkLkguVEMrPTEpfX07CnZhciBHej1mdW5jdGlvbihhKXtRKGEsSC5KLmRhKT09PVguVi54YSYmIVEoYSxILkouRWMpJiZYeChhLHB2KSYmcnYocHYpfSxJej1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLmRhKTtpZihiPT09WC5WLkthKUd5KGEpO2Vsc2V7dmFyIGM9SHpbYl07aWYoYylmbi5IJiZiPT09WC5WLnhhJiZCeihhLk0uZXZlbnRJZCksUXcoYSxmdW5jdGlvbihkKXt2YXIgZT1neShhKTtWKGEsSC5KLnBqLGUpO2UmJm5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZCxmeShhLGUpKTtGeSgzLGEuZXZlbnROYW1lKTt2YXIgZj17fSxnPXt9O1F1KGEse1FzOmZ1bmN0aW9uKGgsbCxuKXtpZihuLmZpbmQoZnVuY3Rpb24ocCl7cmV0dXJuIHAuaXNQcmltYXJ5JiYocC5zdGF0dXM9PT0wfHxwLnN0YXR1cz09PTEpfSkpaC5NLm9uU3VjY2VzcygpO2Vsc2UgR3ooaCksaC5NLm9uRmFpbHVyZSgpfSxTczpmdW5jdGlvbihoLGwpe3ZhciBuO3ZhciBwPWwuc2IscT1sLmVuZHBvaW50LmVuZHBvaW50LApyO3N3aXRjaChsLnBrIGluc3RhbmNlb2Yga3g/MjpsLnBrIGluc3RhbmNlb2Ygcng/NDpsLnBrIGluc3RhbmNlb2Yga3U/MzoxKXtjYXNlIDI6cj0yMTticmVhaztjYXNlIDM6UShoLEguSi5kYSk9PT1YLlYueGEmJlEoaCxILkoub2IpJiZxIT09OSYmKHI9MjApO2JyZWFrO2Nhc2UgNDpyPTIwfWlmKHIpe3ZhciB0O3ZhciB1PU5mKHIsLTEpO1h4KGgsb3YpPyhaeChwLGgsdSksdD17TXQ6VHh9KTp0PXt3ZTpZeChoLHUpfTt2YXIgdj10LHg9di53ZSx5PXYuTXQ7eD09bnVsbHx8UngoeCk7bj17d2U6eCxrdDp5fX1lbHNlIG49e307dmFyIHo9bixDPXoud2UsRD16Lmt0O0MmJihmW2wuc2JdPUMpO0QmJihnW2wuc2JdPUQpfSx1bzpmdW5jdGlvbihoLGwpe2ZbbC5zYl0mJihUbihmW2wuc2JdKSxkZWxldGUgZltsLnNiXSk7Z1tsLnNiXSYmKFVuKGdbbC5zYl0sbC5zYiksZGVsZXRlIGdbbC5zYl0pfSxSczpmdW5jdGlvbihoLGwsbixwLHEpe2lmKHEubGVuZ3RoJiZiIT09WC5WLnViKXt2YXIgcj0KcVtxLmxlbmd0aC0xXSx0PXIuc2IsdT1yLmVuZHBvaW50LmVuZHBvaW50O2lmKCFQeC5pbmNsdWRlcyh1KSl7dmFyIHY9aC5NO01sKHt0YXJnZXRJZDpoLnRhcmdldC5kZXN0aW5hdGlvbklkLHJlcXVlc3Q6e3VybDp0LHBhcmFtZXRlckVuY29kaW5nOjMsZW5kcG9pbnQ6dX0scWI6e2V2ZW50SWQ6di5ldmVudElkLHByaW9yaXR5SWQ6di5wcmlvcml0eUlkfSxGajp7ZXZlbnRJZDpRKGgsSC5KLnVmKSxwcmlvcml0eUlkOlEoaCxILkoudmYpfX0pO1EoaCxILkouZGEpfX19fSxjKX0pO2Vsc2UgYS5NLm9uRmFpbHVyZSgpfX0sSno9e30sSHo9KEp6W1guVi56ZF09WncsSnpbWC5WLnhhXT1GeCxKeltYLlYuWWRdPUt4LEp6W1guVi5aZF09T3gsSnpbWC5WLnViXT1leSxKeltYLlYuT2JdPXl5LEp6W1guVi5GYl09Q3ksSnopO3ZhciBLej17Z2o6e2JwOiIxIix1cToiMiIsVnE6IjMifX07CnZhciBMej17fSxNej1PYmplY3QuZnJlZXplKChMeltGLkQuZmhdPTEsTHpbRi5ELmdoXT0xLEx6W0YuRC5CZF09MSxMeltGLkQuQ2RdPTEsTHpbRi5ELlJjXT0xLEx6W0YuRC5zaV09MSxMeltGLkQudWldPTEsTHpbRi5ELkNsXT0xLEx6W0YuRC5paF09MSxMeltGLkQuQ2ZdPTEsTHpbRi5ELkRmXT0xLEx6W0YuRC5FZl09MSxMeltGLkQuSGFdPTEsTHpbRi5ELkZmXT0xLEx6W0YuRC5GZF09MSxMeltGLkQudWNdPTEsTHpbRi5ELkhkXT0xLEx6W0YuRC5MYl09MSxMeltGLkQuQ2JdPTEsTHpbRi5ELlRiXT0xLEx6W0YuRC5uYl09MSxMeltGLkQuZWJdPTEsTHpbRi5ELkdlXT0xLEx6W0YuRC5raF09MSxMeltGLkQuT2FdPTEsTHpbRi5ELk9wXT0xLEx6W0YuRC5TcF09MSxMeltGLkQuSWVdPTEsTHpbRi5ELkdpXT0xLEx6W0YuRC5RZl09MSxMeltGLkQuVGFdPTEsTHpbRi5ELlljXT0xLEx6W0YuRC5aY109MSxMeltGLkQudGJdPTEsTHpbRi5ELlFkXT0xLEx6W0YuRC5SZF09MSxMeltGLkQuU2RdPQoxLEx6W0YuRC5OZV09MSxMeltGLkQuemFdPTEsTHpbRi5ELlVhXT0xLEx6W0YuRC5XbF09MSxMeltGLkQuWGxdPTEsTHpbRi5ELllsXT0xLEx6W0YuRC5abF09MSxMeltGLkQuV2JdPTEsTHpbRi5ELlRkXT0xLEx6W0YuRC5YYl09MSxMeltGLkQuZGRdPTEsTHpbRi5ELlVkXT0xLEx6W0YuRC5RZV09MSxMeltGLkQuUGFdPTEsTHpbRi5ELnljXT0xLEx6W0YuRC5WZF09MSxMeltGLkQuemNdPTEsTHpbRi5ELkFjXT0xLEx6W0YuRC5mYl09MSxMeltGLkQuUWFdPTEsTHopKSxOej17fSxPej0oTnpbRi5ELlVjXT0xLE56W0YuRC5QcF09MSxOeltGLkQuSGVdPTEsTnpbRi5ELnJpXT0xLE56Lm9yZWY9MSxOeik7dmFyIFB6LFF6OwpmdW5jdGlvbiBSeihhLGIpe3ZhciBjPWFbR2YuWWJdLGQ9YiYmYi5ldmVudDtpZighYyl0aHJvdyBFcnJvcigiRXJyb3I6IE5vIGZ1bmN0aW9uIG5hbWUgZ2l2ZW4gZm9yIGZ1bmN0aW9uIGNhbGwuIik7dmFyIGU9UXpbY10sZj17fSxnO2ZvcihnIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShnKSYmKFNiKGcsInZ0cF8iKT9mW2UhPT12b2lkIDA/ZzpnLnN1YnN0cmluZyg0KV09YVtnXTpnPT09R2YuRnEudG9TdHJpbmcoKSYmKGZbZSE9PXZvaWQgMD8idnRwX2d0bUdlbmVyYXRlZFRhZ2dpbmdNZXRhZGF0YSI6Z109YVtnXSkpO0lmKDYxKSYmZSYmKGYudnRwX2V4dHJhRXhwZXJpbWVudElkcz0hMCk7ZSYmZCYmZC5jYWNoZWRNb2RlbFZhbHVlcyYmKGYudnRwX2d0bUNhY2hlZFZhbHVlcz1kLmNhY2hlZE1vZGVsVmFsdWVzKTtiJiZlJiYoZi52dHBfZ3RtRW50aXR5SW5kZXg9Yi5pbmRleCxmLnZ0cF9ndG1FbnRpdHlOYW1lPWIubmFtZSk7cmV0dXJuIGUhPT12b2lkIDA/ZShmKTpQeihjLGYsCmIpfXZhciBUej1mdW5jdGlvbigpe3ZhciBhPVN6O2lmKE0oNTg1KSYmZm4uSyl7dmFyIGI9RSg1KS5pbmRleE9mKCJHVE0tIik9PT0wJiZJZig2MiksYyxkPSgoYz1GaygpKT09bnVsbD92b2lkIDA6Yy5zb3VyY2UpPT09MTtiJiYhZHx8YS5IfHwoYS5IPSEwLFVtKCJhYmwiLCIxIiksdG8oKSl9fSxTej1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O3ZhciBVej1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLkg9YTt0aGlzLmluZGV4PWI7dGhpcy50YWdzPWM7dGhpcy5tYWNyb3M9ZDt0aGlzLm5hbWU9U3RyaW5nKHRoaXMuSFtHZi5SbV18fCIiKX07ClV6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIpe2lmKCFiW3RoaXMuaW5kZXhdJiYhYS5pc0Jsb2NrZWQodGhpcy5IKSl7Ylt0aGlzLmluZGV4XT0hMDt0aGlzLkhbR2YucGwudG9TdHJpbmcoKV0mJlR6KCk7dmFyIGM9dGhpcy5uYW1lLGQ7dHJ5e3ZhciBlPXt9LGY7Zm9yKGYgaW4gdGhpcy5IKXRoaXMuSC5oYXNPd25Qcm9wZXJ0eShmKSYmKGVbZl09ZWwodGhpcy5IW2ZdLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLGIpKTtlLnZ0cF9ndG1FdmVudElkPWEuaWQ7YS5wcmlvcml0eUlkJiYoZS52dHBfZ3RtUHJpb3JpdHlJZD1hLnByaW9yaXR5SWQpO3ZhciBnPWQ9UnooZSx7ZXZlbnQ6YSxpbmRleDp0aGlzLmluZGV4LHR5cGU6MixuYW1lOmN9KTtlW0dmLlprXSYmdHlwZW9mIGc9PT0ic3RyaW5nIiYmKGc9ZVtHZi5aa109PT0xP2cudG9Mb3dlckNhc2UoKTpnLnRvVXBwZXJDYXNlKCkpO2UuaGFzT3duUHJvcGVydHkoR2YuYWgpJiYoZz1ZZigxOCk/ZVtHZi5haF09PT0xPwpWZihnLCJQRVJJT0QiKTplW0dmLmFoXT09PTI/VmYoZywiQ09NTUEiKTpWZihnLCJBVVRPTUFUSUMiKTplW0dmLmFoXT09PTE/VmYoZywiUEVSSU9EIik6VmYoZywiQ09NTUEiKSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5ibCkmJmc9PT1udWxsJiYoZz1lW0dmLmJsXSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5pbCkmJmc9PT12b2lkIDAmJihnPWVbR2YuaWxdKTtlLmhhc093blByb3BlcnR5KEdmLmVwKSYmKGc9SmIoZykpO2UuaGFzT3duUHJvcGVydHkoR2YuZmwpJiZnPT09ITAmJihnPWVbR2YuZmxdKTtlLmhhc093blByb3BlcnR5KEdmLmFsKSYmZz09PSExJiYoZz1lW0dmLmFsXSk7ZD1nfWNhdGNoKGgpe2EubG9nTWFjcm9FcnJvciYmYS5sb2dNYWNyb0Vycm9yKGgsTnVtYmVyKHRoaXMuaW5kZXgpLGMpLGQ9ITF9Ylt0aGlzLmluZGV4XT0hMTtyZXR1cm4gZH19O1V6LnByb3RvdHlwZS5GZz1mdW5jdGlvbigpe3JldHVybiBuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHRoaXMuSCl9O3ZhciBWej1mdW5jdGlvbihhLGIsYyl7dGhpcy5IPWE7dGhpcy50YWdzPWI7dGhpcy5tYWNyb3M9Y307VnoucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEsYil7dHJ5e2Zvcih2YXIgYz17fSxkPW0oT2JqZWN0LmtleXModGhpcy5IKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Y1tmXT1mPT09ImZ1bmN0aW9uIj90aGlzLkhbZl06ZWwodGhpcy5IW2ZdLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLGIpfXJldHVybiBjbChjKX1jYXRjaChnKXtKU09OLnN0cmluZ2lmeSh0aGlzLkgpfXJldHVybiAyfTtWei5wcm90b3R5cGUuRmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx0aGlzLkgpfTt2YXIgV3o9ZnVuY3Rpb24oYSxiKXt0aGlzLmluZGV4PWI7dGhpcy5OPVtdO3RoaXMuUj1bXTt0aGlzLks9W107dGhpcy5IPVtdO3RoaXMubmFtZT0iIjtmb3IodmFyIGM9bShhKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9bShkLnZhbHVlKSxmPWUubmV4dCgpLnZhbHVlLGc9eWEoZSksaD1mLGw9ZztoPT09ImlmIj90aGlzLk49bDpoPT09InVubGVzcyI/dGhpcy5SPWw6aD09PSJhZGQiP3RoaXMuSz1sOmg9PT0iYmxvY2siP3RoaXMuSD1sOmg9PT0icnVsZU5hbWUiJiYodGhpcy5uYW1lPWxbMF0pfX07Cld6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIpe3ZhciBjPVh6KHRoaXMsYiksZD1bXSxlPVtdO2M/KGQucHVzaC5hcHBseShkLHcodGhpcy5LKSksZS5wdXNoLmFwcGx5KGUsdyh0aGlzLkgpKSk6Yz09PW51bGwmJmUucHVzaC5hcHBseShlLHcodGhpcy5IKSk7cmV0dXJue2ZpcmluZ1RhZ3M6ZCxibG9ja2luZ1RhZ3M6ZX19Owp2YXIgWHo9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9bShhLk4pLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1iKGQudmFsdWUpO2lmKGU9PT0wKXJldHVybiExO2lmKGU9PT0yKXJldHVybiBudWxsfWZvcih2YXIgZj1tKGEuUiksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWIoZy52YWx1ZSk7aWYoaD09PTIpcmV0dXJuIG51bGw7aWYoaD09PTEpcmV0dXJuITF9cmV0dXJuITB9O1d6LnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZX07dmFyIFl6PWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSWE9YTt0aGlzLmluZGV4PWI7dGhpcy50YWdzPWM7dGhpcy5tYWNyb3M9ZDt0aGlzLk89U3RyaW5nKHRoaXMuSWFbR2YuWWJdKTt0aGlzLm5hbWU9U3RyaW5nKHRoaXMuSWFbR2YuUm1dfHwiIik7dGhpcy50YWdJZD1OdW1iZXIodGhpcy5JYVtHZi55al0pfTsKWXoucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/e306Yzt2YXIgZCxlPWM7ZT1lPT09dm9pZCAwP3t9OmU7dmFyIGY9e30sZztmb3IoZyBpbiB0aGlzLklhKXRoaXMuSWEuaGFzT3duUHJvcGVydHkoZykmJihmW2ddPWVsKHRoaXMuSWFbZ10sYSx0aGlzLnRhZ3MsdGhpcy5tYWNyb3MsW10pKTtkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZixlKTtkLnZ0cF9ndG1UYWdJZD10aGlzLnRhZ0lkO3RoaXMuSWFbR2YucGwudG9TdHJpbmcoKV0mJlR6KCk7UnooZCx7ZXZlbnQ6YSxpbmRleDp0aGlzLmluZGV4LHR5cGU6MSxuYW1lOnRoaXMubmFtZX0pfTtZei5wcm90b3R5cGUuRmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx0aGlzLklhKX07CnZhciBaej1mdW5jdGlvbihhLGIpe2lmKGEuSWFbR2YudG5dKXJldHVybiBlbChhLklhW0dmLnRuXSxiLGEudGFncyxhLm1hY3JvcyxbXSl9LCR6PWZ1bmN0aW9uKGEsYil7aWYoYS5JYVtHZi5Ebl0pcmV0dXJuIGVsKGEuSWFbR2YuRG5dLGIsYS50YWdzLGEubWFjcm9zLFtdKX0sYUE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLklhW0dmLmNwXTtpZihjKXJldHVybiBlbChjLGIsYS50YWdzLGEubWFjcm9zLFtdKX07WXoucHJvdG90eXBlLmdldE1ldGFkYXRhPWZ1bmN0aW9uKGEpe3JldHVybiBlbCh0aGlzLklhW0dmLk1FVEFEQVRBXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxbXSl9O1l6LnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZX07dmFyIGJBPWZ1bmN0aW9uKCl7dGhpcy5tYWNyb3M9W107dGhpcy5ydWxlcz1bXTt0aGlzLnByZWRpY2F0ZXM9W107dGhpcy50YWdzPVtdO3RoaXMudms9W119O2JBLnByb3RvdHlwZS5nZXRSdWxlcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJ1bGVzfTt2YXIgY0E9bmV3IGJBO2Z1bmN0aW9uIGRBKGEsYixjLGQpe3ZhciBlPVdjKCksZjtpZihlPT09MSlhOnt2YXIgZz1FKDMpO2c9Zy50b0xvd2VyQ2FzZSgpO2Zvcih2YXIgaD0iaHR0cHM6Ly8iK2csbD0iaHR0cDovLyIrZyxuPTEscD1CLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSxxPTA7cTxwLmxlbmd0aCYmcTwxMDA7cSsrKXt2YXIgcj1wW3FdLnNyYztpZihyKXtyPXIudG9Mb3dlckNhc2UoKTtpZihyLmluZGV4T2YobCk9PT0wKXtmPTM7YnJlYWsgYX1uPT09MSYmci5pbmRleE9mKGgpPT09MCYmKG49Mil9fWY9bn1lbHNlIGY9ZTtyZXR1cm4oZj09PTJ8fGR8fCJodHRwOiIhPT1BLmxvY2F0aW9uLnByb3RvY29sP2E6YikrY307dmFyIGVBPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLks9e307dGhpcy5IPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYS5LKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLkssZCkmJmMucHVzaChkKyJ+IithLktbZF0pO3ZhciBlPVtdLGY7Zm9yKGYgaW4gYS5IKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLkgsZikmJmUucHVzaChmKyJ+IithLkhbZl0pO2IudGYmJihhLks9e30sYS5IPXt9KTt2YXIgZz1bXTtjLmxlbmd0aD4wJiZnLnB1c2goWyJiY3MiLGMuam9pbigiLiIpXSk7ZS5sZW5ndGg+MCYmZy5wdXNoKFsiYmV0IixlLmpvaW4oIi4iKV0pO3JldHVybiBnfSl9LGZBO2Z1bmN0aW9uIGdBKCl7ZkF8fChmQT1uZXcgZUEpfTtmdW5jdGlvbiBoQShhLGIsYyxkLGUpe2lmKCFFayhhKSl7ZC5sb2FkRXhwZXJpbWVudHM9eWooKTtIayhhLGQsZSk7dmFyIGY9aUEoYSksZz1mdW5jdGlvbigpe29rKCkuY29udGFpbmVyW2FdJiYob2soKS5jb250YWluZXJbYV0uc3RhdGU9Myk7akEoKX0saD17ZGVzdGluYXRpb25JZDphLGVuZHBvaW50OjB9O2lmKFdqKCkpe3ZhciBsPVhqKCksbj1sKyIvIitrQShmLGEpO1puKGgsbix2b2lkIDAsZnVuY3Rpb24oKXtsQShhLG4sbCsiLyIrZixoLGcpfSl9ZWxzZXt2YXIgcD1TYihhLCJHVE0tIikscT1kaygpLHI9Yz8iL2d0YWcvanMiOiIvZ3RtLmpzIix0PW1BKGIscitmLGEpO2lmKCF0KXt2YXIgdT1FKDMpK3I7cSYmS2MmJnAmJih1PUtjLnJlcGxhY2UoL14oPzpodHRwcz86XC9cLyk/L2ksIiIpLnNwbGl0KC9bPyNdLylbMF0pO3Q9ZEEoImh0dHBzOi8vIiwiaHR0cDovLyIsdStmKX1abihoLHQsdm9pZCAwLGcpfX19CmZ1bmN0aW9uIGpBKCl7S2soKXx8R2IoTGsoKSxmdW5jdGlvbihhLGIpe25BKGEsYi50cmFuc3BvcnRVcmwsYi5jb250ZXh0KTtQKDkyKX0pfWZ1bmN0aW9uIG5BKGEsYixjLGQpe2lmKCFHayhhKSlpZihjLmxvYWRFeHBlcmltZW50c3x8KGMubG9hZEV4cGVyaW1lbnRzPXlqKCkpLEtrKCkpSmsoYSxiLGMsZCk7ZWxzZXtJayhhLGMsZCk7dmFyIGU9e2Rlc3RpbmF0aW9uSWQ6YSxlbmRwb2ludDowfTtpZihXaigpKXt2YXIgZj1YaigpLGc9Imd0ZCIraUEoYSwhMCksaD1mKyIvIitrQShnLGEpO1puKGUsaCx2b2lkIDAsZnVuY3Rpb24oKXtsQShhLGgsZisiLyIrZyxlKX0pfWVsc2V7dmFyIGw9Ii9ndGFnL2Rlc3RpbmF0aW9uIitpQShhLCEwKSxuPW1BKGIsbCxhKTtufHwobj1kQSgiaHR0cHM6Ly8iLCJodHRwOi8vIixFKDMpK2wpKTtabihlLG4pfX19CmZ1bmN0aW9uIGxBKGEsYixjLGQsZSl7aWYoTSg0MTMpKXtnQSgpO3ZhciBmPWZBO2lmKGZuLk4pe3ZhciBnPUEucGVyZm9ybWFuY2UsaD0tMTtpZihnJiZnLmdldEVudHJpZXNCeVR5cGUpe3ZhciBsPVJqKGIpLmhyZWYsbj1nLmdldEVudHJpZXNCeU5hbWUobCkucG9wKCk7aWYoIW4pZm9yKHZhciBwPWcuZ2V0RW50cmllc0J5VHlwZSgicmVzb3VyY2UiKSxxPTA7cTxwLmxlbmd0aDtxKyspe3ZhciByPXBbcV07aWYoci5uYW1lJiZyLm5hbWUuaW5kZXhPZihiKSE9PS0xKXtuPXI7YnJlYWt9fW4mJm4ucmVzcG9uc2VTdGF0dXMhPT12b2lkIDAmJihoPW4ucmVzcG9uc2VTdGF0dXMpfWYuS1thXT1ofVAoMTkwKTt2YXIgdD1ubShqbS5iYS5rail8fHt9O3RbYV09ITA7bW0oam0uYmEua2osdCk7dmFyIHU9YysoYy5pbmRleE9mKCI/Iik9PT0tMT8iP2Y9MSI6IiZmPTEiKTtlP1puKGQsdSx2b2lkIDAsZSk6Wm4oZCx1KX1lbHNlIGUmJmUoKX0KZnVuY3Rpb24gaUEoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz0iP2lkPSIrZW5jb2RlVVJJQ29tcG9uZW50KGEpLGQ9RSgxOSk7ZCE9PSJkYXRhTGF5ZXIiJiYoYys9IiZsPSIrZCk7dmFyIGU9U2IoYSwiR1RNLSIpO2lmKCFlfHxiKWMrPSImY3g9YyI7ZSYmSWYoNjIpJiYoYys9IiZnb29nbGVfb25seT10cnVlIik7dmFyIGY9YyxnLGg9e0RvOkpmKDE1KSxJbzpFKDE0KX07Zz1DZihoKTtjPWYrKCImZ3RtPSIrZyk7ZGsoKSYmKGMrPSImc2lnbj0iK0FqLnFqKTt2YXIgbD1jLG49SmYoNTQpO2lmKG49PT0xKXtsKz0iJmZwcz1mYyI7dmFyIHA9RSg2MCk7cCYmKGwrPSImZ2Rldj0iK3ApfWVsc2Ugbj09PTImJihsKz0iJmZwcz1mZSIpO3JldHVybiBsfQpmdW5jdGlvbiBrQShhLGIpe2lmKCFNKDQxMyl8fCFYaigpKXJldHVybiBhO3ZhciBjPUUoNTgpO2lmKCFjKXJldHVybiBQKDE4MiksYTt0cnl7dmFyIGQ9TmIoKSxlPUVmKGEsYyksZj1OYigpLWQ7Z0EoKTt2YXIgZz1mQTtmbi5OJiYoZy5IW2JdPWYpO3JldHVybiBlfWNhdGNoKGgpe3JldHVybiBQKDE4MyksYX19ZnVuY3Rpb24gbUEoYSxiLGMpe2lmKGFrKCkmJmEpe3ZhciBkPUUoNTgpLGU9WGooKTtpZihkJiZlKXRyeXt2YXIgZj1OYigpO2I9ZSsiLyIrRWYoYixkKTt2YXIgZz1OYigpLWY7Z0EoKTt2YXIgaD1mQTtmbi5OJiYoaC5IW2NdPWcpfWNhdGNoKGwpe1AoMTgzKX1yZXR1cm4gWWooYSxiKX19O3ZhciBwQT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5LPW5ldyBGYjt0aGlzLkg9e307dGhpcy5OPXt9O3RoaXMuUj17bmFtZTpFKDE5KSxzZXQ6ZnVuY3Rpb24oYixjKXtFZChWYihiLGMpLGEuSCk7b0EoYSl9LGdldDpmdW5jdGlvbihiKXtyZXR1cm4gYS5nZXQoYiwyKX0scmVzZXQ6ZnVuY3Rpb24oKXthLks9bmV3IEZiO2EuSD17fTtvQShhKX19fTtwQS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGIhPTI/dGhpcy5LLmdldChhKTpxQSh0aGlzLGEpfTt2YXIgcUE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWIuc3BsaXQoIi4iKTtjPWN8fFtdO2Zvcih2YXIgZT1hLkgsZj0wO2Y8ZC5sZW5ndGg7ZisrKXtpZihlPT09bnVsbClyZXR1cm4hMTtpZihlPT09dm9pZCAwKWJyZWFrO2U9ZVtkW2ZdXTtpZihjLmluZGV4T2YoZSkhPT0tMSlyZXR1cm59cmV0dXJuIGV9OwpwQS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OLmhhc093blByb3BlcnR5KGEpfHwodGhpcy5LLnNldChhLGIpLEVkKFZiKGEsYiksdGhpcy5IKSxvQSh0aGlzKSl9O3ZhciBzQT1mdW5jdGlvbigpe2Zvcih2YXIgYT1bImd0bS5hbGxvd2xpc3QiLCJndG0uYmxvY2tsaXN0IiwiZ3RtLndoaXRlbGlzdCIsImd0bS5ibGFja2xpc3QiLCJ0YWdUeXBlQmxhY2tsaXN0Il0sYj1yQSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1iLmdldChkLDEpO2lmKEFycmF5LmlzQXJyYXkoZSl8fENkKGUpKWU9RWQoZSxudWxsKTtiLk5bZF09ZX19LG9BPWZ1bmN0aW9uKGEsYil7R2IoYS5OLGZ1bmN0aW9uKGMsZCl7YS5LLnNldChjLGQpO0VkKFZiKGMpLGEuSCk7RWQoVmIoYyxkKSxhLkgpO2ImJmRlbGV0ZSBhLk5bY119KX0sckE9bmV3IHBBLHRBPXJBLlI7ZnVuY3Rpb24gdUEoYSxiKXtyZXR1cm4gckEuZ2V0KGEsYil9CmZ1bmN0aW9uIHZBKGEsYil7dmFyIGM9Yj09PXZvaWQgMD8yOmIsZD1yQSxlLGY9KGM9PT12b2lkIDA/MjpjKSE9PTE/cUEoZCxhKTpkLksuZ2V0KGEpO0FkKGYpPT09ImFycmF5Inx8QWQoZik9PT0ib2JqZWN0Ij9lPUVkKGYsbnVsbCk6ZT1mO3JldHVybiBlfTt2YXIgd0E9bmV3IFJlZ0V4cCgvXiguKlwuKT8oZ29vZ2xlfHlvdXR1YmV8YmxvZ2dlcnx3aXRoZ29vZ2xlKShcLmNvbT8pPyhcLlthLXpdezJ9KT9cLj8kLykseEE9e2NsOlsiZWNsIl0sY3VzdG9tUGl4ZWxzOlsibm9uR29vZ2xlUGl4ZWxzIl0sZWNsOlsiY2wiXSxlaGw6WyJobCJdLGdhYXdjOlsiZ29vZ3RhZyJdLGhsOlsiZWhsIl0saHRtbDpbImN1c3RvbVNjcmlwdHMiLCJjdXN0b21QaXhlbHMiLCJub25Hb29nbGVQaXhlbHMiLCJub25Hb29nbGVTY3JpcHRzIiwibm9uR29vZ2xlSWZyYW1lcyJdLGN1c3RvbVNjcmlwdHM6WyJodG1sIiwiY3VzdG9tUGl4ZWxzIiwibm9uR29vZ2xlUGl4ZWxzIiwibm9uR29vZ2xlU2NyaXB0cyIsIm5vbkdvb2dsZUlmcmFtZXMiXSxub25Hb29nbGVQaXhlbHM6W10sbm9uR29vZ2xlU2NyaXB0czpbIm5vbkdvb2dsZVBpeGVscyJdLG5vbkdvb2dsZUlmcmFtZXM6WyJub25Hb29nbGVQaXhlbHMiXX0seUE9e2NsOlsiZWNsIl0sY3VzdG9tUGl4ZWxzOlsiY3VzdG9tU2NyaXB0cyIsCiJodG1sIl0sZWNsOlsiY2wiXSxlaGw6WyJobCJdLGdhYXdjOlsiZ29vZ3RhZyJdLGhsOlsiZWhsIl0saHRtbDpbImN1c3RvbVNjcmlwdHMiXSxjdXN0b21TY3JpcHRzOlsiaHRtbCJdLG5vbkdvb2dsZVBpeGVsczpbImN1c3RvbVBpeGVscyIsImN1c3RvbVNjcmlwdHMiLCJodG1sIiwibm9uR29vZ2xlU2NyaXB0cyIsIm5vbkdvb2dsZUlmcmFtZXMiXSxub25Hb29nbGVTY3JpcHRzOlsiY3VzdG9tU2NyaXB0cyIsImh0bWwiXSxub25Hb29nbGVJZnJhbWVzOlsiY3VzdG9tU2NyaXB0cyIsImh0bWwiLCJub25Hb29nbGVTY3JpcHRzIl19LHpBPSJnb29nbGUgY3VzdG9tUGl4ZWxzIGN1c3RvbVNjcmlwdHMgaHRtbCBub25Hb29nbGVQaXhlbHMgbm9uR29vZ2xlU2NyaXB0cyBub25Hb29nbGVJZnJhbWVzIi5zcGxpdCgiICIpOwpmdW5jdGlvbiBBQSgpe3ZhciBhPXVBKCJndG0uYWxsb3dsaXN0Iil8fHVBKCJndG0ud2hpdGVsaXN0Iik7YSYmUCg5KTtJZig2MikmJihhPXZvaWQgMCk7QkEoKSYmKElmKDYyKT9QKDExNik6KFAoMTE3KSxJZig0OCkmJihhPVtdLHdpbmRvdy5jb25zb2xlJiZ3aW5kb3cuY29uc29sZS5sb2cmJndpbmRvdy5jb25zb2xlLmxvZygiR1RNIGJsb2NrZWQuIFNlZSBnby8xMzY4NzcyOC4iKSkpKTt2YXIgYj1hJiZSYihLYihhKSx4QSksYz11QSgiZ3RtLmJsb2NrbGlzdCIpfHx1QSgiZ3RtLmJsYWNrbGlzdCIpO2N8fChjPXVBKCJ0YWdUeXBlQmxhY2tsaXN0IikpJiZQKDMpO2M/UCg4KTpjPVtdO0JBKCkmJihjPUtiKGMpLGMucHVzaCgibm9uR29vZ2xlUGl4ZWxzIiwibm9uR29vZ2xlU2NyaXB0cyIsInNhbmRib3hlZFNjcmlwdHMiKSk7S2IoYykuaW5kZXhPZigiZ29vZ2xlIik+PTAmJlAoMik7dmFyIGQ9YyYmUmIoS2IoYykseUEpLGU9e307cmV0dXJuIGZ1bmN0aW9uKGYpe3ZhciBnPWYmJgpmW0dmLlliXTtpZighZ3x8dHlwZW9mIGchPT0ic3RyaW5nIilyZXR1cm4hMDtnPWcucmVwbGFjZSgvXl8qLywiIik7aWYoZVtnXSE9PXZvaWQgMClyZXR1cm4gZVtnXTt2YXIgaD1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSlbZ118fFtdLGw9ITA7YSYmKGw9bCYmQ0EoZyxoLGIpKTt2YXIgbj0hMTtjJiYobj1EQShnLGgsZCkpO3ZhciBwPSFsfHxuOyFwJiYoaC5pbmRleE9mKCJzYW5kYm94ZWRTY3JpcHRzIik9PT0tMXx8YiYmYi5pbmRleE9mKCJzYW5kYm94ZWRTY3JpcHRzIikhPT0tMT8wOkViKGQsekEpKSYmKHA9ITApO3JldHVybiBlW2ddPXB9fWZ1bmN0aW9uIENBKGEsYixjKXtpZihjLmluZGV4T2YoYSk8MClpZihiJiZiLmxlbmd0aD4wKWZvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7ZCsrKXtpZihjLmluZGV4T2YoYltkXSk8MClyZXR1cm4gUCgxMSksITF9ZWxzZSByZXR1cm4hMTtyZXR1cm4hMH0KZnVuY3Rpb24gREEoYSxiLGMpe3ZhciBkPWMuaW5kZXhPZihhKT49MDtpZihkKXJldHVybiBkO3ZhciBlPUViKGMsYnx8W10pO2UmJlAoMTApO3JldHVybiBlfWZ1bmN0aW9uIEJBKCl7cmV0dXJuIHdBLnRlc3QoQS5sb2NhdGlvbiYmQS5sb2NhdGlvbi5ob3N0bmFtZSl9O2Z1bmN0aW9uIEVBKGEpe2Zvcih2YXIgYj1bXSxjPVtdLGQ9RkEoYSksZT1tKGNBLmdldFJ1bGVzKCkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXtmb3IodmFyIGc9Zi52YWx1ZS5ldmFsdWF0ZShhLGQpLGg9Zy5maXJpbmdUYWdzLGw9Zy5ibG9ja2luZ1RhZ3Msbj0wO248aC5sZW5ndGg7bisrKWJbaFtuXV09ITA7Zm9yKHZhciBwPTA7cDxsLmxlbmd0aDtwKyspY1tsW3BdXT0hMH1mb3IodmFyIHE9W10scj0wO3I8Y0EudGFncy5sZW5ndGg7cisrKWJbcl0mJiFjW3JdJiYocVtyXT0hMCk7cmV0dXJuIHF9ZnVuY3Rpb24gRkEoYSl7dmFyIGI9W107cmV0dXJuIGZ1bmN0aW9uKGMpe2JbY109PT12b2lkIDAmJihiW2NdPWNBLnByZWRpY2F0ZXNbY10uZXZhbHVhdGUoYSxbXSkpO3JldHVybiBiW2NdfX07dmFyIEdBPWZ1bmN0aW9uKCl7dGhpcy5LPTA7dGhpcy5IPXt9fTtHQS5wcm90b3R5cGUuYWRkTGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSsrdGhpcy5LO3RoaXMuSFthXT10aGlzLkhbYV18fHt9O3RoaXMuSFthXVtTdHJpbmcoZCldPXtsaXN0ZW5lcjpiLHJmOmN9O3JldHVybiBkfTtHQS5wcm90b3R5cGUucmVtb3ZlTGlzdGVuZXI9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLkhbYV0sZD1TdHJpbmcoYik7aWYoIWN8fCFjW2RdKXJldHVybiExO2RlbGV0ZSBjW2RdO3JldHVybiEwfTt2YXIgSUE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtHYihIQS5IW2FdLGZ1bmN0aW9uKGQsZSl7Yy5pbmRleE9mKGUubGlzdGVuZXIpPDAmJihlLnJmPT09dm9pZCAwfHxiLmluZGV4T2YoZS5yZik+PTApJiZjLnB1c2goZS5saXN0ZW5lcil9KTtyZXR1cm4gY307ZnVuY3Rpb24gSkEoYSxiLGMpe3JldHVybntlbnRpdHlUeXBlOmEsaW5kZXhJbk9yaWdpbkNvbnRhaW5lcjpiLG5hbWVJbk9yaWdpbkNvbnRhaW5lcjpjLG9yaWdpbkNvbnRhaW5lcklkOkUoNSksb3JpZ2luQ0lkOnZrKCl9fTtmdW5jdGlvbiBLQShhLGIpe2lmKGRhdGEuZW50aXRpZXMpe3ZhciBjPWRhdGEuZW50aXRpZXNbYV07aWYoYylyZXR1cm4gY1tiXX19O3ZhciBNQT1mdW5jdGlvbihhLGIpe3RoaXMuSD0hMTt0aGlzLlI9W107dGhpcy5ldmVudERhdGE9e3RhZ3M6W119O3RoaXMuWj0hMTt0aGlzLks9dGhpcy5OPTA7TEEodGhpcyxhLGIpfSxOQT1mdW5jdGlvbihhLGIsYyxkKXtpZihDai5oYXNPd25Qcm9wZXJ0eShiKXx8Yj09PSJfX3pvbmUiKXJldHVybi0xO3ZhciBlPXt9O0NkKGQpJiYoZT1FZChkLGUpKTtlLmlkPWM7ZS5zdGF0dXM9InRpbWVvdXQiO3JldHVybiBhLmV2ZW50RGF0YS50YWdzLnB1c2goZSktMX0sT0E9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5ldmVudERhdGEudGFnc1tiXTtlJiYoZS5zdGF0dXM9YyxlLmV4ZWN1dGlvblRpbWU9ZCl9LFBBPWZ1bmN0aW9uKGEpe2lmKCFhLkgpe2Zvcih2YXIgYj1hLlIsYz0wO2M8Yi5sZW5ndGg7YysrKWJbY10oKTthLkg9ITA7YS5SLmxlbmd0aD0wfX0sTEE9ZnVuY3Rpb24oYSxiLGMpe2IhPT12b2lkIDAmJmEud2coYik7YyYmQS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7UEEoYSl9LApOdW1iZXIoYykpfTtNQS5wcm90b3R5cGUud2c9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPVBiKGZ1bmN0aW9uKCl7YmQoZnVuY3Rpb24oKXthKEUoNSksYi5ldmVudERhdGEpfSl9KTt0aGlzLkg/YygpOnRoaXMuUi5wdXNoKGMpfTt2YXIgUUE9ZnVuY3Rpb24oYSl7YS5OKys7cmV0dXJuIFBiKGZ1bmN0aW9uKCl7YS5LKys7YS5aJiZhLks+PWEuTiYmUEEoYSl9KX0sUkE9ZnVuY3Rpb24oYSl7YS5aPSEwO2EuSz49YS5OJiZQQShhKX07ZnVuY3Rpb24gU0EoKXtyZXR1cm4gQVtUQSgpXX0KZnVuY3Rpb24gVEEoKXtyZXR1cm4gQS5Hb29nbGVBbmFseXRpY3NPYmplY3R8fCJnYSJ9dmFyIFdBPW5ldyBmdW5jdGlvbigpe3RoaXMuSD17fX07ZnVuY3Rpb24gWEEoKXthOnt2YXIgYT1FKDUpO319CmZ1bmN0aW9uIFlBKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGM9U0EoKSxkPWMmJmMuZ2V0QnlOYW1lJiZjLmdldEJ5TmFtZShhKTtpZihkKXt2YXIgZT1kLmdldCgic2VuZEhpdFRhc2siKTtkLnNldCgic2VuZEhpdFRhc2siLGZ1bmN0aW9uKGYpe3ZhciBnPWYuZ2V0KCJoaXRQYXlsb2FkIiksaD1mLmdldCgiaGl0Q2FsbGJhY2siKSxsPWcuaW5kZXhPZigiJnRpZD0iK2IpPDA7bCYmKGYuc2V0KCJoaXRQYXlsb2FkIixnLnJlcGxhY2UoLyZ0aWQ9VUEtWzAtOV0rLVswLTldKy8sIiZ0aWQ9IitiKSwhMCksZi5zZXQoImhpdENhbGxiYWNrIix2b2lkIDAsITApKTtlKGYpO2wmJihmLnNldCgiaGl0UGF5bG9hZCIsZywhMCksZi5zZXQoImhpdENhbGxiYWNrIixoLCEwKSxmLnNldCgiX3hfMTkiLHZvaWQgMCwhMCksZShmKSl9KX19fTt2YXIgYUI9WyJlcyIsIjEiXSxiQj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5ldmVudERhdGE9e307dGhpcy5IPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjO3ZhciBkPWIuZXZlbnRJZCxlPWIudGY7aWYoYS5ldmVudERhdGFbZF0pe3ZhciBmPVtdO2EuSFtkXXx8Zi5wdXNoKGFCKTtmLnB1c2guYXBwbHkoZix3KGEuZXZlbnREYXRhW2RdKSk7ZSYmKGEuSFtkXT0hMCk7Yz1mfWVsc2UgYz1bXTtyZXR1cm4gY30pfSxjQjtmdW5jdGlvbiBkQihhLGIpe3ZhciBjO2lmKChjPWNCKSE9bnVsbCYmZm4uTil7dmFyIGQ9Yy5ldmVudERhdGEsZTtlPWIubWF0Y2goL14oZ3RtfGd0YWcpXC4vKT9lbmNvZGVVUklDb21wb25lbnQoYik6IioiO2RbYV09W1siZSIsZV0sWyJlaWQiLFN0cmluZyhhKV1dO2d6KCk7ZXooYSl9fTt2YXIgZUI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD17fTt0aGlzLks9e307ZnooZnVuY3Rpb24oYil7dmFyIGM9Yi5ldmVudElkLGQ9Yi50ZixlPVtdLGY9YS5IW2NdfHxbXTtmLmxlbmd0aCYmZS5wdXNoKFsidHIiLGYuam9pbigiLiIpXSk7dmFyIGc9YS5LW2NdfHxbXTtnLmxlbmd0aCYmZS5wdXNoKFsidGkiLGcuam9pbigiLiIpXSk7ZCYmKGRlbGV0ZSBhLkhbY10sZGVsZXRlIGEuS1tjXSk7cmV0dXJuIGV9KX0sZkI7CmZ1bmN0aW9uIGdCKGEsYixjKXtmQnx8KGZCPW5ldyBlQik7dmFyIGQ9ZkI7aWYoZm4uTiYmYil7dmFyIGU9ZG4oYik7ZC5IW2FdPWQuSFthXXx8W107ZC5IW2FdLnB1c2goYytlKTt2YXIgZj1iW0dmLlliXTtpZighZil0aHJvdyBFcnJvcigiRXJyb3I6IE5vIGZ1bmN0aW9uIG5hbWUgZ2l2ZW4gZm9yIGZ1bmN0aW9uIGNhbGwuIik7dmFyIGc9KFF6W2ZdPyIxIjoiMiIpK2U7ZC5LW2FdPWQuS1thXXx8W107ZC5LW2FdLnB1c2goZyk7Z3ooKTtleihhKX19O2Z1bmN0aW9uIGhCKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6YztpQigpLmFkZFJlc3RyaWN0aW9uKDAsYSxiLGMpfWZ1bmN0aW9uIGpCKCl7dmFyIGE9dmsoKTtyZXR1cm4gaUIoKS5nZXRSZXN0cmljdGlvbnMoMCxhKX1mdW5jdGlvbiBrQihhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aUIoKS5hZGRSZXN0cmljdGlvbigxLGEsYixjKX1mdW5jdGlvbiBsQigpe3ZhciBhPXZrKCk7cmV0dXJuIGlCKCkuZ2V0UmVzdHJpY3Rpb25zKDEsYSl9dmFyIG1CPWZ1bmN0aW9uKCl7dGhpcy5jb250YWluZXI9e307dGhpcy5IPXt9fSxuQj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuY29udGFpbmVyW2JdO2N8fChjPXtfZW50aXR5OntpbnRlcm5hbDpbXSxleHRlcm5hbDpbXX0sX2V2ZW50OntpbnRlcm5hbDpbXSxleHRlcm5hbDpbXX19LGEuY29udGFpbmVyW2JdPWMpO3JldHVybiBjfTsKbUIucHJvdG90eXBlLmFkZFJlc3RyaWN0aW9uPWZ1bmN0aW9uKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2lmKCFkfHwhdGhpcy5IW2JdKXt2YXIgZT1uQih0aGlzLGIpO2E9PT0wP2Q/ZS5fZW50aXR5LmV4dGVybmFsLnB1c2goYyk6ZS5fZW50aXR5LmludGVybmFsLnB1c2goYyk6YT09PTEmJihkP2UuX2V2ZW50LmV4dGVybmFsLnB1c2goYyk6ZS5fZXZlbnQuaW50ZXJuYWwucHVzaChjKSl9fTsKbUIucHJvdG90eXBlLmdldFJlc3RyaWN0aW9ucz1mdW5jdGlvbihhLGIpe3ZhciBjPW5CKHRoaXMsYik7aWYoYT09PTApe3ZhciBkLGU7cmV0dXJuW10uY29uY2F0KHcoKGM9PW51bGw/dm9pZCAwOihkPWMuX2VudGl0eSk9PW51bGw/dm9pZCAwOmQuaW50ZXJuYWwpfHxbXSksdygoYz09bnVsbD92b2lkIDA6KGU9Yy5fZW50aXR5KT09bnVsbD92b2lkIDA6ZS5leHRlcm5hbCl8fFtdKSl9aWYoYT09PTEpe3ZhciBmLGc7cmV0dXJuW10uY29uY2F0KHcoKGM9PW51bGw/dm9pZCAwOihmPWMuX2V2ZW50KT09bnVsbD92b2lkIDA6Zi5pbnRlcm5hbCl8fFtdKSx3KChjPT1udWxsP3ZvaWQgMDooZz1jLl9ldmVudCk9PW51bGw/dm9pZCAwOmcuZXh0ZXJuYWwpfHxbXSkpfXJldHVybltdfTsKbUIucHJvdG90eXBlLmdldEV4dGVybmFsUmVzdHJpY3Rpb25zPWZ1bmN0aW9uKGEsYil7dmFyIGM9bkIodGhpcyxiKSxkLGU7cmV0dXJuIGE9PT0wPyhjPT1udWxsP3ZvaWQgMDooZD1jLl9lbnRpdHkpPT1udWxsP3ZvaWQgMDpkLmV4dGVybmFsKXx8W106KGM9PW51bGw/dm9pZCAwOihlPWMuX2V2ZW50KT09bnVsbD92b2lkIDA6ZS5leHRlcm5hbCl8fFtdfTttQi5wcm90b3R5cGUucmVtb3ZlRXh0ZXJuYWxSZXN0cmljdGlvbnM9ZnVuY3Rpb24oYSl7dmFyIGI9bkIodGhpcyxhKTtiLl9ldmVudCYmKGIuX2V2ZW50LmV4dGVybmFsPVtdKTtiLl9lbnRpdHkmJihiLl9lbnRpdHkuZXh0ZXJuYWw9W10pO3RoaXMuSFthXT0hMH07ZnVuY3Rpb24gaUIoKXtyZXR1cm4ga2ooInIiLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBtQn0pfTtmdW5jdGlvbiBvQihhLGIsYyxkKXt2YXIgZT1jQS50YWdzW2FdLGY9cEIoYSxiLGMsZCk7aWYoIWYpcmV0dXJuIG51bGw7dmFyIGc9WnooZSxjKTtpZihnJiZnLmxlbmd0aCl7dmFyIGg9Z1swXTtmPW9CKGguaW5kZXgse29uU3VjY2VzczpmLG9uRmFpbHVyZTpoLmJvPT09MT9iLnRlcm1pbmF0ZTpmLHRlcm1pbmF0ZTpiLnRlcm1pbmF0ZX0sYyxkKX1yZXR1cm4gZn0KZnVuY3Rpb24gcEIoYSxiLGMsZCl7ZnVuY3Rpb24gZSgpe2Z1bmN0aW9uIHkoKXtpbSgzKTt2YXIgUz1OYigpLU47SkEoMSxhLGYuZ2V0TmFtZSgpKTtnQihjLmlkLGcsIjciKTtPQShjLmxkLEQsImV4Y2VwdGlvbiIsUyk7Zm4uSCYmRnooYyxnLEl5LlgudWopO0l8fChJPSEwLGwoKSl9aWYoZi5JYVtHZi5PcV0pbCgpO2Vsc2V7dmFyIHo9YUEoZixjKTtpZih6IT1udWxsKWZvcih2YXIgQz0wO0M8ei5sZW5ndGg7QysrKWlmKCFYbyh6W0NdKSl7bCgpO3JldHVybn12YXIgRD1OQShjLmxkLGYuTyxmLnRhZ0lkLGYuZ2V0TWV0YWRhdGEoYykpLEk9ITEsRz17dnRwX2d0bU9uU3VjY2VzczpmdW5jdGlvbigpe2lmKCFJKXtJPSEwO3ZhciBTPU5iKCktTjtnQihjLmlkLGcsIjUiKTtPQShjLmxkLEQsInN1Y2Nlc3MiLFMpO2ZuLkgmJkZ6KGMsZyxJeS5YLndqKTtoKCl9fSx2dHBfZ3RtT25GYWlsdXJlOmZ1bmN0aW9uKCl7aWYoIUkpe0k9ITA7dmFyIFM9TmIoKS1OO2dCKGMuaWQsZywiNiIpOwpPQShjLmxkLEQsImZhaWx1cmUiLFMpO2ZuLkgmJkZ6KGMsZyxJeS5YLnZqKTtsKCl9fX07Ry52dHBfZ3RtRXZlbnRJZD1jLmlkO2MucHJpb3JpdHlJZCYmKEcudnRwX2d0bVByaW9yaXR5SWQ9Yy5wcmlvcml0eUlkKTtnQihjLmlkLGcsIjEiKTtmbi5IJiZFeihjLGcpO3ZhciBOPU5iKCk7dHJ5e2YuZXZhbHVhdGUoYyxkLEcpfWNhdGNoKFMpe3koUyl9Zm4uSCYmRnooYyxnLEl5LlguQ24pfX12YXIgZj1jQS50YWdzW2FdLGc9Zi5GZygpLGg9Yi5vblN1Y2Nlc3MsbD1iLm9uRmFpbHVyZSxuPWIudGVybWluYXRlO2lmKGMuaXNCbG9ja2VkKGcpKXJldHVybiBudWxsO3ZhciBwPSR6KGYsYyk7aWYocCYmcC5sZW5ndGgpe3ZhciBxPXBbMF0scj1vQihxLmluZGV4LHtvblN1Y2Nlc3M6aCxvbkZhaWx1cmU6bCx0ZXJtaW5hdGU6bn0sYyxkKTtpZighcilyZXR1cm4gbnVsbDtoPXI7bD1xLmJvPT09Mj9uOnJ9aWYoZi5JYVtHZi5rbl18fGYuSWFbR2YuUXFdKXt2YXIgdD1mLklhW0dmLmtuXT8KY0Eudms6Yy52ayx1PWgsdj1sO2lmKCF0W2FdKXt2YXIgeD1xQihhLHQsUGIoZSkpO2g9eC5vblN1Y2Nlc3M7bD14Lm9uRmFpbHVyZX1yZXR1cm4gZnVuY3Rpb24oKXt0W2FdKHUsdil9fXJldHVybiBlfWZ1bmN0aW9uIHFCKGEsYixjKXt2YXIgZD1bXSxlPVtdO2JbYV09ckIoZCxlLGMpO3JldHVybntvblN1Y2Nlc3M6ZnVuY3Rpb24oKXtiW2FdPXNCO2Zvcih2YXIgZj0wO2Y8ZC5sZW5ndGg7ZisrKWRbZl0oKX0sb25GYWlsdXJlOmZ1bmN0aW9uKCl7YlthXT10Qjtmb3IodmFyIGY9MDtmPGUubGVuZ3RoO2YrKyllW2ZdKCl9fX1mdW5jdGlvbiByQihhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQsZSl7YS5wdXNoKGQpO2IucHVzaChlKTtjKCl9fWZ1bmN0aW9uIHNCKGEpe2EoKX1mdW5jdGlvbiB0QihhLGIpe2IoKX07dmFyIHdCPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGNBLnRhZ3MubGVuZ3RoO2QrKylpZihhW2RdKXt2YXIgZT1jQS50YWdzW2RdO3ZhciBmPVFBKGIubGQpO3RyeXt2YXIgZz1vQihkLHtvblN1Y2Nlc3M6ZixvbkZhaWx1cmU6Zix0ZXJtaW5hdGU6Zn0sYixkKTtpZihnKXt2YXIgaD1ReltlLk9dO2MucHVzaCh7Tm86ZCxwcmlvcml0eU92ZXJyaWRlOihoP2gucHJpb3JpdHlPdmVycmlkZXx8MDowKXx8S0EoZS5PLDEpfHwwLGV4ZWN1dGU6Z30pfWVsc2UgdUIoZCxiKSxmKCl9Y2F0Y2gobil7ZigpfX1jLnNvcnQodkIpO2Zvcih2YXIgbD0wO2w8Yy5sZW5ndGg7bCsrKWNbbF0uZXhlY3V0ZSgpO3JldHVybiBjLmxlbmd0aD4wfTsKZnVuY3Rpb24geEIoYSxiKXtpZighSEEpcmV0dXJuITE7dmFyIGM9YVsiZ3RtLnRyaWdnZXJzIl0mJlN0cmluZyhhWyJndG0udHJpZ2dlcnMiXSksZD1JQShhLmV2ZW50LGM/U3RyaW5nKGMpLnNwbGl0KCIsIik6W10pO2lmKCFkLmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIGU9MDtlPGQubGVuZ3RoOysrZSl7dmFyIGY9UUEoYik7dHJ5e2RbZV0oYSxmKX1jYXRjaChnKXtmKCl9fXJldHVybiEwfWZ1bmN0aW9uIHZCKGEsYil7dmFyIGMsZD1iLnByaW9yaXR5T3ZlcnJpZGUsZT1hLnByaW9yaXR5T3ZlcnJpZGU7Yz1kPmU/MTpkPGU/LTE6MDt2YXIgZjtpZihjIT09MClmPWM7ZWxzZXt2YXIgZz1hLk5vLGg9Yi5ObztmPWc+aD8xOmc8aD8tMTowfXJldHVybiBmfQpmdW5jdGlvbiB1QihhLGIpe2lmKGZuLk4pe3ZhciBjPWZ1bmN0aW9uKGQpe3ZhciBlPWIuaXNCbG9ja2VkKGNBLnRhZ3NbZF0uRmcoKSk/IjMiOiI0IixmPVp6KGNBLnRhZ3NbZF0sYik7ZiYmZi5sZW5ndGgmJmMoZlswXS5pbmRleCk7Z0IoYi5pZCxjQS50YWdzW2RdLkZnKCksZSk7dmFyIGc9JHooY0EudGFnc1tkXSxiKTtnJiZnLmxlbmd0aCYmYyhnWzBdLmluZGV4KX07YyhhKX19dmFyIEhBO2Z1bmN0aW9uIHlCKCl7SEF8fChIQT1uZXcgR0EpO3JldHVybiBIQX0KZnVuY3Rpb24gekIoYSl7dmFyIGI9YVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXSxjPWFbImd0bS5wcmlvcml0eUlkIl0sZD1hWyJndG0ucHJpb3JpdHlRdWV1ZSJdLGU9YS5ldmVudDtmbi5IJiZ2eihiLGUpO2lmKGU9PT0iZ3RtLmpzIil7aWYoJGsoMTMpKXJldHVybiExO1prKDEzLCEwKX12YXIgZj0hMSxnPWxCKCksaD1FZChhLG51bGwpO2lmKCFnLmV2ZXJ5KGZ1bmN0aW9uKHUpe3JldHVybiB1KHtvcmlnaW5hbEV2ZW50RGF0YTpofSl9KSl7aWYoZSE9PSJndG0uanMiJiZlIT09Imd0bS5pbml0IiYmZSE9PSJndG0uaW5pdF9jb25zZW50IilyZXR1cm4hMTtmPSEwfWRCKGIsZSk7dmFyIGw9YS5ldmVudENhbGxiYWNrLG49YS5ldmVudFRpbWVvdXQscD17aWQ6Yixwcmlvcml0eUlkOmMscHJpb3JpdHlRdWV1ZTpkLG5hbWU6ZSxpc0Jsb2NrZWQ6QUIoaCxmKSx2azpbXSxsb2dNYWNyb0Vycm9yOmZ1bmN0aW9uKHUsdix4KXtQKDYpO2ltKDQpO0pBKDIsdix4KX0sY2FjaGVkTW9kZWxWYWx1ZXM6QkIoKSwKbGQ6bmV3IE1BKGZ1bmN0aW9uKCl7Zm4uSCYmeXooYixlKTtGeSg1LGUpO2wmJmwuYXBwbHkobCxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpfSxuKSxvcmlnaW5hbEV2ZW50RGF0YTpofTtmbi5IJiZDeihwLmlkKTt2YXIgcT1FQShwKTtmbi5IJiZEeihwLmlkKTtGeSgyLGUpO2NBLmdldFJ1bGVzKCk7ZiYmKHE9Q0IocSkpO2ZuLkgmJnd6KGIpO3ZhciByPXdCKHEscCk7ciYmRnkoNCxlKTt2YXIgdD14QihhLHAubGQpO1JBKHAubGQpO2UhPT0iZ3RtLmpzIiYmZSE9PSJndG0uc3luYyJ8fFhBKCk7cmV0dXJuIERCKHEscil8fHR9CmZ1bmN0aW9uIEJCKCl7dmFyIGE9e307YS5ldmVudD12QSgiZXZlbnQiLDEpO2EuZWNvbW1lcmNlPXZBKCJlY29tbWVyY2UiLDEpO2EuZ3RtPXZBKCJndG0iKTthLmV2ZW50TW9kZWw9dkEoImV2ZW50TW9kZWwiKTtyZXR1cm4gYX0KZnVuY3Rpb24gQUIoYSxiKXt2YXIgYz1BQSgpO3JldHVybiBmdW5jdGlvbihkKXt2YXIgZT1jKGQpO2lmKGUpcmV0dXJuITA7dmFyIGY9ZCYmZFtHZi5ZYl07aWYoIWZ8fHR5cGVvZiBmIT09InN0cmluZyIpcmV0dXJuITA7Zj1mLnJlcGxhY2UoL15fKi8sIiIpO3ZhciBnPWpCKCksaD1hO2ImJihoPUVkKGEsbnVsbCksaFsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUik7Zm9yKHZhciBsPSExLG49YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pW2ZdfHxbXSxwPW0oZykscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpe3ZhciByPXEudmFsdWU7dHJ5e3Ioe2VudGl0eUlkOmYsc2VjdXJpdHlHcm91cHM6bixvcmlnaW5hbEV2ZW50RGF0YTpofSl8fChsPSEwKX1jYXRjaCh0KXtsPSEwfX1yZXR1cm4gbHx8ZX19CmZ1bmN0aW9uIENCKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspaWYoYVtjXSl7dmFyIGQ9Y0EudGFnc1tjXS5PO2lmKEJqW2RdfHxjQS50YWdzW2NdLklhW0dmLlJxXSE9PXZvaWQgMHx8S0EoZCwyKSliW2NdPSEwfXJldHVybiBifWZ1bmN0aW9uIERCKGEsYil7aWYoIWIpcmV0dXJuIGI7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoYVtjXSYmY0EudGFnc1tjXSYmIUNqW2NBLnRhZ3NbY10uT10pcmV0dXJuITA7cmV0dXJuITF9O3ZhciBFQj1OZig2MSwxRTMpLEZCPU5mKDY4LDJFMyksWm89WyJhZF9zdG9yYWdlIiwiYW5hbHl0aWNzX3N0b3JhZ2UiXTtmdW5jdGlvbiBHQihhLGIpe2lmKGEpe3ZhciBjPWtqKCJndGgiLGZ1bmN0aW9uKCl7cmV0dXJue319KSxkO2EhPT0yfHwoKGQ9SEIoKSk9PW51bGw/dm9pZCAwOmQuc3RhdHVzKSE9PTN8fGIhPT12b2lkIDAmJmI8PUZCfHwoYT0zLGMuZGw9Yj9NYXRoLmZsb29yKGIvMUUzKTp2b2lkIDApO2Mucz1hO0lCKGMpfX1mdW5jdGlvbiBJQihhKXtpZihhLnMpe3ZhciBiPWZ1bmN0aW9uKCl7dmFyIGM9e3N0YXR1czphLnMsZXhwaXJlczpEYXRlLm5vdygpKzg2NEU1fTthLmRsIT09dm9pZCAwJiYoYy5kZWxheT1hLmRsKTtrcigiZ3RnX2xvYWRfc3RhdHVzIixjKX07YnAoZnVuY3Rpb24oKXtpZihZbygpKWIoKTtlbHNlIGZvcih2YXIgYz1QYihiKSxkPW0oWm8pLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKUlsKGMsZS52YWx1ZSl9LFpvKX19CmZ1bmN0aW9uIEpCKCl7dmFyIGE9S0IoITApO3JldHVybiBhPyhMQihhLnN0YXR1cyxhLmRlbGF5KSwhMSk6ITB9ZnVuY3Rpb24gS0IoYSl7YT1hPT09dm9pZCAwPyExOmE7aWYoYWsoKSl7dmFyIGI9bnIoImd0Z19sb2FkX3N0YXR1cyIpLGM9Yi52YWx1ZSxkPWEmJkFiKGM9PW51bGw/dm9pZCAwOmMuZXhwaXJlcykmJihjPT1udWxsP3ZvaWQgMDpjLmV4cGlyZXMpPERhdGUubm93KCkrMzZFNTtpZihiLmVycm9yPT09MCYmQWIoYz09bnVsbD92b2lkIDA6Yy5zdGF0dXMpJiYhZCl7dmFyIGU9e3N0YXR1czpjLnN0YXR1c307KGM9PW51bGw/dm9pZCAwOmMuZGVsYXkpIT09dm9pZCAwJiYoZS5kZWxheT1jLmRlbGF5KTtyZXR1cm4gZX1yZXR1cm4gSEIoKX19ZnVuY3Rpb24gTEIoYSxiKXt2YXIgYz1raigiZ3RoIixmdW5jdGlvbigpe3JldHVybnt9fSk7Yy5zPWE7YiE9PXZvaWQgMCYmKGMuZGw9Yil9CmZ1bmN0aW9uIEhCKCl7dmFyIGE9bWooImd0aCIpO2lmKGEhPW51bGwmJmEucyl7dmFyIGI9e3N0YXR1czphLnN9O2EuZGwhPT12b2lkIDAmJihiLmRlbGF5PWEuZGwpO3JldHVybiBifX1mdW5jdGlvbiBNQigpe3ZhciBhOygoYT1IQigpKT09bnVsbD92b2lkIDA6YS5zdGF0dXMpPT09MSYmR0IoMyl9ZnVuY3Rpb24gTkIoKXtpZihKQigpKXt2YXIgYT1EYXRlLm5vdygpO25qKCJndGgiLHtsOmZ1bmN0aW9uKCl7R0IoMixEYXRlLm5vdygpLWEpfSxzOjF9KTt2YXIgYj1FKDUpLGM9U2IoYiwiR1RNLSIpPyIvZ3RtLmpzIjoiL2d0YWcvanMiLGQ9Imh0dHBzOi8vIitFKDMpK2MrIj9pZD0iK2IrIiZndGdfaGVhbHRoPTEiO1VjKGQsTUIsTUIpO0Euc2V0VGltZW91dChNQixFQil9fTtmdW5jdGlvbiBPQigpe3lCKCkuYWRkTGlzdGVuZXIoImd0bS5pbml0IixmdW5jdGlvbihhLGIpe1prKDI2LCEwKTtNKDU1NikmJmFrKCkmJiFJZig0NSkmJihmby5IW2NvLmlhLlpiXT1iby5NYS5MaCk7aWYoYWsoKSl7dmFyIGM7Yz1sbyhjby5pYS5aYik7Z28oYyk/aW8oYyxOQik6TkIoKX10byghMSwhMCk7YigpfSl9O2Z1bmN0aW9uIFBCKCl7aWYobWooInBzY2RsIikhPT12b2lkIDApbm0oam0uYmEub2kpPT09dm9pZCAwJiZtbShqbS5iYS5vaSxtaigicHNjZGwiKSk7ZWxzZXt2YXIgYT1mdW5jdGlvbihjKXtuaigicHNjZGwiLGMpO21tKGptLmJhLm9pLGMpfSxiPWZ1bmN0aW9uKCl7YSgiZXJyb3IiKX07dHJ5e0hjLmNvb2tpZURlcHJlY2F0aW9uTGFiZWw/KGEoInBlbmRpbmciKSxIYy5jb29raWVEZXByZWNhdGlvbkxhYmVsLmdldFZhbHVlKCkudGhlbihhKS5jYXRjaChiKSk6YSgibm9hcGkiKX1jYXRjaChjKXtiKGMpfX19O3ZhciBSQj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5yZWFkeT0hMTt0aGlzLks9MDt0aGlzLkg9W107dmFyIGI9QTtpZihCLnJlYWR5U3RhdGU9PT0iaW50ZXJhY3RpdmUiJiYhQi5jcmVhdGVFdmVudE9iamVjdHx8Qi5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIil0aGlzLm9uUmVhZHkoKTtlbHNleyRjKEIsIkRPTUNvbnRlbnRMb2FkZWQiLGZ1bmN0aW9uKGQpe3JldHVybiB2b2lkIGEub25SZWFkeShkKX0pOyRjKEIsInJlYWR5c3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKGQpe3JldHVybiB2b2lkIGEub25SZWFkeShkKX0pO2lmKEIuY3JlYXRlRXZlbnRPYmplY3QmJkIuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsKXt2YXIgYz0hMDt0cnl7Yz0hYi5mcmFtZUVsZW1lbnR9Y2F0Y2goZCl7fWMmJlFCKHRoaXMpfSRjKGIsImxvYWQiLGZ1bmN0aW9uKGQpe3JldHVybiB2b2lkIGEub25SZWFkeShkKX0pfX07UkIucHJvdG90eXBlLmlzUmVhZHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5yZWFkeX07ClJCLnByb3RvdHlwZS5vblJlYWR5PWZ1bmN0aW9uKGEpe2lmKCF0aGlzLnJlYWR5KXt2YXIgYj1CLmNyZWF0ZUV2ZW50T2JqZWN0LGM9Qi5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIixkPUIucmVhZHlTdGF0ZT09PSJpbnRlcmFjdGl2ZSI7aWYoIWF8fGEudHlwZSE9PSJyZWFkeXN0YXRlY2hhbmdlInx8Y3x8IWImJmQpe3RoaXMucmVhZHk9ITA7Zm9yKHZhciBlPTA7ZTx0aGlzLkgubGVuZ3RoO2UrKyliZCh0aGlzLkhbZV0pfXRoaXMuSC5wdXNoPWZ1bmN0aW9uKCl7Zm9yKHZhciBmPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxnPTA7ZzxmLmxlbmd0aDtnKyspYmQoZltnXSk7cmV0dXJuIDB9fX07CnZhciBRQj1mdW5jdGlvbihhKXtpZighYS5yZWFkeSYmYS5LPDE0MCl7YS5LKys7dHJ5e3ZhciBiLGM7KGM9KGI9Qi5kb2N1bWVudEVsZW1lbnQpLmRvU2Nyb2xsKT09bnVsbHx8Yy5jYWxsKGIsImxlZnQiKTthLm9uUmVhZHkoKX1jYXRjaChkKXtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBRQihhKX0sNTApfX19LFNCO2Z1bmN0aW9uIFRCKCl7U0J8fChTQj1uZXcgUkIpfWZ1bmN0aW9uIFVCKCl7VEIoKTt2YXIgYTtyZXR1cm4oYT1TQik9PW51bGw/dm9pZCAwOmEuaXNSZWFkeSgpfWZ1bmN0aW9uIFZCKGEpe1RCKCk7dmFyIGI7KGI9U0IpIT1udWxsJiYoYi5yZWFkeT9iZChhKTpiLkgucHVzaChhKSl9O3ZhciBYQj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9V0IsZTtpZigoZT1kLkgpPT1udWxsfHwhZS5Pcil7dmFyIGY9T2JqZWN0LmtleXMoYikubGVuZ3RoPjA/MjoxLGcsaCxsPShjPT1udWxsP3ZvaWQgMDooaD1jLm9yaWdpbmF0aW5nRW50aXR5KT09bnVsbD92b2lkIDA6aC5vcmlnaW5Db250YWluZXJJZCl8fCIiO2c9bD9TYihsLCJHVE0tIik/MzoyOjE7aWYoIWEpZC5IPXt0eXBlOmYsc291cmNlOmcscGFyYW1zOmJ9O2Vsc2UgaWYoZC5IKXtQKDE4NCk7dmFyIG49ITE7ZC5ILnNvdXJjZT09PWd8fGQuSC5zb3VyY2UhPT0zJiZnIT09M3x8KFVtKCJpZGNzIiwiMSIpLG49ITApO2QuSC50eXBlIT09MiYmZiE9PTJ8fFAoMTg2KTt2YXIgcDtpZihwPWQuSC50eXBlPT09MiYmZj09PTIpYTp7dmFyIHE9ZC5ILnBhcmFtcyxyPU9iamVjdC5rZXlzKHEpLHQ9T2JqZWN0LmtleXMoYik7aWYoci5sZW5ndGghPT10Lmxlbmd0aClwPSEwO2Vsc2V7Zm9yKHZhciB1PW0ociksdj11Lm5leHQoKTshdi5kb25lO3Y9CnUubmV4dCgpKXt2YXIgeD12LnZhbHVlO2lmKCFiLmhhc093blByb3BlcnR5KHgpfHxxW3hdIT09Ylt4XSl7cD0hMDticmVhayBhfX1wPSExfX1wJiYoVW0oImlkY2MiLCIxIiksbj0hMCk7biYmKHRvKCksZC5ILk9yPSEwKX19fSxXQj1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9dm9pZCAwfTt2YXIgWkI9ZnVuY3Rpb24oYSl7dmFyIGI9WUI7KCFmbi5LfHxTYihFKDUpLCJHVE0tIik/MDphPT09dm9pZCAwKSYmYi5IPT09MCYmKFVtKCJtY2MiLCIxIiksYi5IPTEpfSxZQj1uZXcgZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0wO1VtKCJuY2MiLGZ1bmN0aW9uKCl7aWYoSWYoNDUpJiZhLkghPT0yKXJldHVybiIxIn0pfTt2YXIgJEI9L14oPzpBV3xEQ3xHfEdGfEdUfEhBfE1DfFVBKSQvLGFDPS9ccy87CmZ1bmN0aW9uIGJDKGEsYil7aWYoemIoYSkpe2E9TGIoYSk7dmFyIGM9YS5pbmRleE9mKCItIik7aWYoIShjPDApKXt2YXIgZD1hLnN1YnN0cmluZygwLGMpO2lmKCRCLnRlc3QoZCkpe3ZhciBlPWEuc3Vic3RyaW5nKGMrMSksZjtpZihiKXt2YXIgZz1mdW5jdGlvbihuKXt2YXIgcD1uLmluZGV4T2YoIi8iKTtyZXR1cm4gcDwwP1tuXTpbbi5zdWJzdHJpbmcoMCxwKSxuLnN1YnN0cmluZyhwKzEpXX07Zj1nKGUpO2lmKGQ9PT0iREMiJiZmLmxlbmd0aD09PTIpe3ZhciBoPWcoZlsxXSk7aC5sZW5ndGg9PT0yJiYoZlsxXT1oWzBdLGYucHVzaChoWzFdKSl9fWVsc2V7Zj1lLnNwbGl0KCIvIik7Zm9yKHZhciBsPTA7bDxmLmxlbmd0aDtsKyspaWYoIWZbbF18fGFDLnRlc3QoZltsXSkmJihkIT09IkFXInx8bCE9PTEpKXJldHVybn1yZXR1cm57aWQ6YSxwcmVmaXg6ZCxkZXN0aW5hdGlvbklkOmQrIi0iK2ZbMF0saWRzOmYsSmM6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pZCE9PXRoaXMuZGVzdGluYXRpb25JZH19fX19fQpmdW5jdGlvbiBjQyhhLGIpe2Zvcih2YXIgYz17fSxkPTA7ZDxhLmxlbmd0aDsrK2Qpe3ZhciBlPWJDKGFbZF0sYik7ZSYmKGNbZS5pZF09ZSl9dmFyIGY9W10sZztmb3IoZyBpbiBjKWlmKGMuaGFzT3duUHJvcGVydHkoZykpe3ZhciBoPWNbZ107aC5wcmVmaXg9PT0iQVciJiZoLmlkc1tkQ1sxXV0mJmYucHVzaChoLmRlc3RpbmF0aW9uSWQpfWZvcih2YXIgbD0wO2w8Zi5sZW5ndGg7KytsKWRlbGV0ZSBjW2ZbbF1dO2Zvcih2YXIgbj1bXSxwPW0oT2JqZWN0LmtleXMoYykpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKW4ucHVzaChjW3EudmFsdWVdKTtyZXR1cm4gbn12YXIgZUM9e30sZEM9KGVDWzBdPTAsZUNbMV09MSxlQ1syXT0yLGVDWzNdPTAsZUNbNF09MSxlQ1s1XT0wLGVDWzZdPTAsZUNbN109MCxlQyk7dmFyIGZDPXtpbml0aWFsaXplZDoxMSxjb21wbGV0ZToxMixpbnRlcmFjdGl2ZToxM30sZ0M9e30saEM9T2JqZWN0LmZyZWV6ZSgoZ0NbRi5ELlRkXT0hMCxnQykpLGlDPWZ1bmN0aW9uKCl7dGhpcy5SPU5mKDM0LDUwMCk7dGhpcy5IPXt9O3RoaXMuTj17fTt0aGlzLks9dm9pZCAwfSxqQz1mdW5jdGlvbihhLGIsYyl7aWYoYy5sZW5ndGgmJmZuLkspe3ZhciBkOyhkPWEuSClbYl0hPW51bGx8fChkW2JdPVtdKTt2YXIgZTsoZT1hLk4pW2JdIT1udWxsfHwoZVtiXT1bXSk7dmFyIGY9Yy5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIWEuTltiXS5pbmNsdWRlcyhnKX0pO2EuSFtiXS5wdXNoLmFwcGx5KGEuSFtiXSx3KGYpKTthLk5bYl0ucHVzaC5hcHBseShhLk5bYl0sdyhmKSk7IWEuSyYmZi5sZW5ndGg+MCYmKFZtKCJ0ZGMiLCEwKSxhLks9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dG8oKTthLkg9e307YS5LPXZvaWQgMH0sYS5SKSl9fTsKaUMucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO1VtKCJ0ZGMiLGZ1bmN0aW9uKCl7YS5LJiYoQS5jbGVhclRpbWVvdXQoYS5LKSxhLks9dm9pZCAwKTt2YXIgYj1bXSxjO2ZvcihjIGluIGEuSClhLkguaGFzT3duUHJvcGVydHkoYykmJmIucHVzaChjKyIqIithLkhbY10uam9pbigiLiIpKTtyZXR1cm4gYi5sZW5ndGg/Yi5qb2luKCIhIik6dm9pZCAwfSwhMSl9Owp2YXIga0M9ZnVuY3Rpb24oYSxiKXt2YXIgYz17fSxkO2ZvcihkIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbZF09ITApO2Zvcih2YXIgZSBpbiBhKWEuaGFzT3duUHJvcGVydHkoZSkmJihjW2VdPSEwKTtyZXR1cm4gY30sbEM9ZnVuY3Rpb24oYSxiLGMsZCxlKXtkPWQ9PT12b2lkIDA/e306ZDtlPWU9PT12b2lkIDA/IiI6ZTtpZihiPT09YylyZXR1cm5bXTt2YXIgZj1mdW5jdGlvbih0LHUpe3ZhciB2O0FkKHUpPT09Im9iamVjdCI/dj11W3RdOkFkKHUpPT09ImFycmF5IiYmKHY9dVt0XSk7cmV0dXJuIHY9PT12b2lkIDA/aENbdF06dn0sZz1rQyhiLGMpLGg7Zm9yKGggaW4gZylpZihnLmhhc093blByb3BlcnR5KGgpJiZoIT09Ri5ELlhiKXt2YXIgbD0oZT9lKyIuIjoiIikraCxuPWYoaCxiKSxwPWYoaCxjKSxxPUFkKG4pPT09Im9iamVjdCJ8fEFkKG4pPT09ImFycmF5IixyPUFkKHApPT09Im9iamVjdCJ8fEFkKHApPT09ImFycmF5IjtpZihxJiZyKWxDKGEsbixwLGQsbCk7CmVsc2UgaWYocXx8cnx8biE9PXApZFtsXT0hMH1yZXR1cm4gT2JqZWN0LmtleXMoZCl9LG1DPW5ldyBpQzt2YXIgbkM9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5LPU5iKCk7dGhpcy5IPWI7dGhpcy5hcmdzPWM7dGhpcy5tZXNzYWdlQ29udGV4dD1kO3RoaXMudHlwZT1hfSxvQz1mdW5jdGlvbigpe3RoaXMuV2E9e307dGhpcy5pYj17fTt0aGlzLks9e307dGhpcy5OPW51bGw7dGhpcy5oYj17fTt0aGlzLkg9ITE7dGhpcy5zdGF0dXM9MX07ZnVuY3Rpb24gcEMoYSxiKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD09PTE/cUMoInNldCIsYSk6cUMoInNldCIsYSxiKX1mdW5jdGlvbiByQyhhLGIpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPT09MT9xQygiY29uZmlnIixhKTpxQygiY29uZmlnIixhLGIpfWZ1bmN0aW9uIHNDKGEsYixjKXtjPWN8fHt9O2NbRi5ELlhiXT1hO3JldHVybiBxQygiZXZlbnQiLGIsYyl9ZnVuY3Rpb24gcUMoKXtyZXR1cm4gYXJndW1lbnRzfTt2YXIgdEM9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoLGwsbixwLHEscil7dGhpcy5ldmVudElkPWE7dGhpcy5wcmlvcml0eUlkPWI7dGhpcy5wcmlvcml0eVF1ZXVlPWM7dGhpcy5FYT1kO3RoaXMuV2E9ZTt0aGlzLmhiPWY7dGhpcy5IYz1nO3RoaXMuQmc9aDt0aGlzLmliPWw7dGhpcy5ldmVudE1ldGFkYXRhPW47dGhpcy5vblN1Y2Nlc3M9cDt0aGlzLm9uRmFpbHVyZT1xO3RoaXMuaXNHdG1FdmVudD1yfSx1Qz1mdW5jdGlvbihhKXt2YXIgYj17b25TdWNjZXNzOnhiLG9uRmFpbHVyZTp4Yn07Yj1iPT09dm9pZCAwP3t9OmI7dmFyIGMsZCxlLGYsZyxoLGwsbixwLHEscix0LHUsdix4LHkseixDLEQsSSxHLE4sUyxXLGVhLGphO3JldHVybiBuZXcgdEMoKHY9KGM9Yik9PW51bGw/dm9pZCAwOmMuZXZlbnRJZCkhPW51bGw/djphLmV2ZW50SWQsKHg9KGQ9Yik9PW51bGw/dm9pZCAwOmQucHJpb3JpdHlJZCkhPW51bGw/eDphLnByaW9yaXR5SWQsKHk9KGU9Yik9PW51bGw/dm9pZCAwOmUucHJpb3JpdHlRdWV1ZSkhPQpudWxsP3k6YS5wcmlvcml0eVF1ZXVlLCh6PShmPWIpPT1udWxsP3ZvaWQgMDpmLkVhKSE9bnVsbD96OmEuRWEsKEM9KGc9Yik9PW51bGw/dm9pZCAwOmcuV2EpIT1udWxsP0M6YS5XYSwoRD0oaD1iKT09bnVsbD92b2lkIDA6aC5oYikhPW51bGw/RDphLmhiLChJPShsPWIpPT1udWxsP3ZvaWQgMDpsLkhjKSE9bnVsbD9JOmEuSGMsKEc9KG49Yik9PW51bGw/dm9pZCAwOm4uQmcpIT1udWxsP0c6YS5CZywoTj0ocD1iKT09bnVsbD92b2lkIDA6cC5pYikhPW51bGw/TjphLmliLChTPShxPWIpPT1udWxsP3ZvaWQgMDpxLmV2ZW50TWV0YWRhdGEpIT1udWxsP1M6YS5ldmVudE1ldGFkYXRhLChXPShyPWIpPT1udWxsP3ZvaWQgMDpyLm9uU3VjY2VzcykhPW51bGw/VzphLm9uU3VjY2VzcywoZWE9KHQ9Yik9PW51bGw/dm9pZCAwOnQub25GYWlsdXJlKSE9bnVsbD9lYTphLm9uRmFpbHVyZSwoamE9KHU9Yik9PW51bGw/dm9pZCAwOnUuaXNHdG1FdmVudCkhPW51bGw/amE6YS5pc0d0bUV2ZW50KX0sCnZDPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107c3dpdGNoKGIpe2Nhc2UgMzpjLnB1c2goYS5FYSk7Yy5wdXNoKGEuV2EpO2MucHVzaChhLmhiKTtjLnB1c2goYS5IYyk7Yy5wdXNoKGEuaWIpO2JyZWFrO2Nhc2UgMjpjLnB1c2goYS5FYSk7YnJlYWs7Y2FzZSAxOmMucHVzaChhLldhKTtjLnB1c2goYS5oYik7Yy5wdXNoKGEuSGMpO2MucHVzaChhLmliKTticmVhaztjYXNlIDQ6Yy5wdXNoKGEuRWEpLGMucHVzaChhLldhKSxjLnB1c2goYS5oYiksYy5wdXNoKGEuSGMpfXJldHVybiBjfSxPPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1tKHZDKGEsZD09PXZvaWQgMD8zOmQpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtpZihnW2JdIT09dm9pZCAwKXJldHVybiBnW2JdfXJldHVybiBjfSx3Qz1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz12QyhhLDQpLGQ9bShjKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlmb3IodmFyIGY9T2JqZWN0LmtleXMoZS52YWx1ZSksCmc9bShmKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSliW2gudmFsdWVdPTE7cmV0dXJuIE9iamVjdC5rZXlzKGIpfTt0Qy5wcm90b3R5cGUuZ2V0TWVyZ2VkVmFsdWVzPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/MzpiO3ZhciBkPXt9LGU9ITEsZj1mdW5jdGlvbihuKXtDZChuKSYmR2IobixmdW5jdGlvbihwLHEpe2U9ITA7ZFtwXT1xfSl9O2MmJmYoYyk7dmFyIGc9dkModGhpcyxiKTtnLnJldmVyc2UoKTtmb3IodmFyIGg9bShnKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSlmKGwudmFsdWVbYV0pO3JldHVybiBlP2Q6dm9pZCAwfTsKdmFyIHhDPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bRi5ELktmLEYuRC5HZixGLkQuSGYsRi5ELklmLEYuRC5KZixGLkQuTGYsRi5ELk1mXSxjPXZDKGEsMyksZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXtmb3IodmFyIGY9ZS52YWx1ZSxnPXt9LGg9ITEsbD1tKGIpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO2ZbcF0hPT12b2lkIDAmJihnW3BdPWZbcF0saD0hMCl9dmFyIHE9aD9nOnZvaWQgMDtpZihxKXJldHVybiBxfXJldHVybnt9fSx5Qz1mdW5jdGlvbihhLGIsYyl7dGhpcy5ldmVudElkPWE7dGhpcy5wcmlvcml0eUlkPWI7dGhpcy5wcmlvcml0eVF1ZXVlPWM7dGhpcy5FYT17fTt0aGlzLldhPXt9O3RoaXMuaGI9e307dGhpcy5IYz17fTt0aGlzLkJnPXt9O3RoaXMuaWI9e307dGhpcy5ldmVudE1ldGFkYXRhPXt9O3RoaXMuaXNHdG1FdmVudD0hMTt0aGlzLm9uU3VjY2Vzcz1mdW5jdGlvbigpe307dGhpcy5vbkZhaWx1cmU9CmZ1bmN0aW9uKCl7fX0sekM9ZnVuY3Rpb24oYSxiKXthLkVhPWI7cmV0dXJuIGF9LEFDPWZ1bmN0aW9uKGEsYil7YS5XYT1iO3JldHVybiBhfSxCQz1mdW5jdGlvbihhLGIpe2EuaGI9YjtyZXR1cm4gYX0sQ0M9ZnVuY3Rpb24oYSxiKXthLkhjPWI7cmV0dXJuIGF9LERDPWZ1bmN0aW9uKGEsYil7YS5CZz1iO3JldHVybiBhfSxFQz1mdW5jdGlvbihhLGIpe2EuaWI9YjtyZXR1cm4gYX0sRkM9ZnVuY3Rpb24oYSxiKXthLmV2ZW50TWV0YWRhdGE9Ynx8e307cmV0dXJuIGF9LEdDPWZ1bmN0aW9uKGEsYil7YS5vblN1Y2Nlc3M9YjtyZXR1cm4gYX0sSEM9ZnVuY3Rpb24oYSxiKXthLm9uRmFpbHVyZT1iO3JldHVybiBhfSxJQz1mdW5jdGlvbihhLGIpe2EuaXNHdG1FdmVudD1iO3JldHVybiBhfSxKQz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IHRDKGEuZXZlbnRJZCxhLnByaW9yaXR5SWQsYS5wcmlvcml0eVF1ZXVlLGEuRWEsYS5XYSxhLmhiLGEuSGMsYS5CZyxhLmliLGEuZXZlbnRNZXRhZGF0YSwKYS5vblN1Y2Nlc3MsYS5vbkZhaWx1cmUsYS5pc0d0bUV2ZW50KX07ZnVuY3Rpb24gS0MoYSxiKXtHYihhLGZ1bmN0aW9uKGMpe3ZhciBkO2lmKGQ9Yy5jaGFyQXQoMCk9PT0iXyIpe3ZhciBlO2E6c3dpdGNoKGMpe2Nhc2UgRi5ELlZiOmNhc2UgRi5ELlJmOmNhc2UgRi5ELnNoOmU9ITA7YnJlYWsgYTtkZWZhdWx0OmU9ITF9ZD0hZX1kJiYoYiYmYihjKSxkZWxldGUgYVtjXSl9KX07dmFyIExDPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9e307ZnooZnVuY3Rpb24oYil7dmFyIGM9Yi5ldmVudElkLGQ9Yi50ZixlPVtdLGY9YS5IW2NdfHxbXTtmLmxlbmd0aCYmZS5wdXNoKFsiZXByIixmLmpvaW4oIi4iKV0pO2QmJmRlbGV0ZSBhLkhbY107cmV0dXJuIGV9KX0sTkM9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPU1DO2ZuLk4mJmEhPT12b2lkIDAmJihkLkhbYV09ZC5IW2FdfHxbXSxkLkhbYV0ucHVzaChjK2IpLGd6KCksZXooYSkpfSxNQztmdW5jdGlvbiBPQygpe01DfHwoTUM9bmV3IExDKX07dmFyIFBDPWZ1bmN0aW9uKCl7dGhpcy5kZXN0aW5hdGlvbnM9e307dGhpcy5IPXt9O3RoaXMuY29tbWFuZHM9W119LFFDPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuZGVzdGluYXRpb25zW2IuZGVzdGluYXRpb25JZF09YS5kZXN0aW5hdGlvbnNbYi5kZXN0aW5hdGlvbklkXXx8bmV3IG9DfSxSQz1mdW5jdGlvbihhLGIsYyxkKXtpZihkLkgpe3ZhciBlPVFDKGEsZC5IKSxmPWUuTjtpZihmKXt2YXIgZz1FZChjLG51bGwpLGg9RWQoZS5XYVtkLkguZGVzdGluYXRpb25JZF0sbnVsbCksbD1FZChlLmhiLG51bGwpLG49RWQoZS5pYixudWxsKSxwPUVkKGEuSCxudWxsKSxxPXt9O2lmKGZuLk4pdHJ5e3E9RWQockEuSCxudWxsKX1jYXRjaCh4KXtQKDcyKX12YXIgcj1kLkgucHJlZml4LHQ9ZnVuY3Rpb24oeCl7dmFyIHk9ZC5tZXNzYWdlQ29udGV4dC5ldmVudElkO09DKCk7TkMoeSxyLHgpfSx1PUpDKElDKEhDKEdDKEZDKERDKENDKEVDKEJDKEFDKHpDKG5ldyB5QyhkLm1lc3NhZ2VDb250ZXh0LmV2ZW50SWQsCmQubWVzc2FnZUNvbnRleHQucHJpb3JpdHlJZCxkLm1lc3NhZ2VDb250ZXh0LnByaW9yaXR5UXVldWUpLGcpLGgpLGwpLG4pLHApLHEpLGQubWVzc2FnZUNvbnRleHQuZXZlbnRNZXRhZGF0YSksZnVuY3Rpb24oKXtpZih0KXt2YXIgeD10O3Q9dm9pZCAwO3goIjIiKTtpZihkLm1lc3NhZ2VDb250ZXh0Lm9uU3VjY2VzcylkLm1lc3NhZ2VDb250ZXh0Lm9uU3VjY2VzcygpfX0pLGZ1bmN0aW9uKCl7aWYodCl7dmFyIHg9dDt0PXZvaWQgMDt4KCIzIik7aWYoZC5tZXNzYWdlQ29udGV4dC5vbkZhaWx1cmUpZC5tZXNzYWdlQ29udGV4dC5vbkZhaWx1cmUoKX19KSwhIWQubWVzc2FnZUNvbnRleHQuaXNHdG1FdmVudCkpLHY9ZnVuY3Rpb24oKXt0cnl7dmFyIHg9ZC5tZXNzYWdlQ29udGV4dC5ldmVudElkO09DKCk7TkMoeCxyLCIxIik7dmFyIHk9ZC5ILmlkLHo9bUM7aWYoZm4uSyYmYj09PUYuRC53YSl7dmFyIEMsRD0oQz1iQyh5KSk9PW51bGw/dm9pZCAwOkMuaWRzO2lmKCEoRCYmRC5sZW5ndGg+CjEpKXt2YXIgST11LkVhW0YuRC5YYl07aWYoIUl8fEk9PT15KXt2YXIgRyxOPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KTtOLnRkfHwoTi50ZD17fSk7Rz1OLnRkO3ZhciBTPUVkKHUuSGMsbnVsbCk7RWQodS5FYSxTKTt2YXIgVz1bXSxlYTtmb3IoZWEgaW4gRylHLmhhc093blByb3BlcnR5KGVhKSYmbEMoeixHW2VhXSxTKS5sZW5ndGgmJlcucHVzaChlYSk7Vy5sZW5ndGgmJihqQyh6LHksVyksc2IoIlRBR0dJTkciLGZDW0IucmVhZHlTdGF0ZV18fDE0KSk7R1t5XT1TfX19ZihkLkguaWQsYixkLkssdSl9Y2F0Y2goZmEpe3ZhciBqYT1kLm1lc3NhZ2VDb250ZXh0LmV2ZW50SWQ7T0MoKTtOQyhqYSxyLCI0Iil9fTtiPT09Imd0YWcuZ2V0Ij92KCk6aW8oZS5SLHYpfX19LFNDPWZ1bmN0aW9uKGEsYil7aWYoYi50eXBlIT09InJlcXVpcmUiKXt2YXIgYz12b2lkIDA7Yi50eXBlPT09ImV2ZW50IiYmKGM9Yi5hcmdzWzFdKTtpZihiLkgpZm9yKHZhciBkPVFDKGEsYi5IKS5LW2IudHlwZV18fApbXSxlPTA7ZTxkLmxlbmd0aDtlKyspZFtlXShjKTtlbHNlIGZvcih2YXIgZiBpbiBhLmRlc3RpbmF0aW9ucylpZihhLmRlc3RpbmF0aW9ucy5oYXNPd25Qcm9wZXJ0eShmKSl7dmFyIGc9YS5kZXN0aW5hdGlvbnNbZl07aWYoZyYmZy5LKWZvcih2YXIgaD1nLktbYi50eXBlXXx8W10sbD0wO2w8aC5sZW5ndGg7bCsrKWhbbF0oYyl9fX07UEMucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPVFDKHRoaXMsYSk7ZS5zdGF0dXMhPT0zJiYoZS5OPWIsZS5zdGF0dXM9MyxlLlI9bG8oYyksVEModGhpcyxhLGR8fHt9KSx0aGlzLmZsdXNoKCkpfTsKUEMucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24oYSxiLGMsZCl7YyE9PXZvaWQgMCYmKFFDKHRoaXMsYykuc3RhdHVzPT09MSYmKFFDKHRoaXMsYykuc3RhdHVzPTIsdGhpcy5wdXNoKCJyZXF1aXJlIixbe31dLGMse30pKSxRQyh0aGlzLGMpLkgmJihkLmRlZmVycmFibGU9ITEpLGQuZXZlbnRNZXRhZGF0YXx8KGQuZXZlbnRNZXRhZGF0YT17fSksZC5ldmVudE1ldGFkYXRhW0guSi5zZ118fChkLmV2ZW50TWV0YWRhdGFbSC5KLnNnXT1bYy5kZXN0aW5hdGlvbklkXSksZC5ldmVudE1ldGFkYXRhW0guSi5tal18fChkLmV2ZW50TWV0YWRhdGFbSC5KLm1qXT1bYy5pZF0pKTt0aGlzLmNvbW1hbmRzLnB1c2gobmV3IG5DKGEsYyxiLGQpKTtkLmRlZmVycmFibGV8fHRoaXMuZmx1c2goKX07ClBDLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbihhKXtmb3IodmFyIGI9dGhpcyxjPVtdLGQ9ITEsZT17fTt0aGlzLmNvbW1hbmRzLmxlbmd0aDtlPXtabjp2b2lkIDB9KXt2YXIgZj10aGlzLmNvbW1hbmRzWzBdLGc9Zi5IO2lmKGYubWVzc2FnZUNvbnRleHQuZGVmZXJyYWJsZSkhZ3x8UUModGhpcyxnKS5IPyhmLm1lc3NhZ2VDb250ZXh0LmRlZmVycmFibGU9ITEsdGhpcy5jb21tYW5kcy5wdXNoKGYpKTpjLnB1c2goZiksdGhpcy5jb21tYW5kcy5zaGlmdCgpO2Vsc2V7c3dpdGNoKGYudHlwZSl7Y2FzZSAicmVxdWlyZSI6aWYoUUModGhpcyxnKS5zdGF0dXMhPT0zJiYhYSl7dGhpcy5jb21tYW5kcy5wdXNoLmFwcGx5KHRoaXMuY29tbWFuZHMsYyk7cmV0dXJufWJyZWFrO2Nhc2UgInNldCI6dmFyIGg9Zi5hcmdzWzBdO0tDKGgpO1VDKGgpO0diKGgsZnVuY3Rpb24oeCx5KXtFZChWYih4LHkpLGIuSCl9KTtIdShoLCEwKTticmVhaztjYXNlICJldmVudCI6ZS5abj1mLmFyZ3NbMV07dmFyIGw9ClZDKGYuYXJnc1swXSxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbigpe319KGUpKSxuPWxbRi5ELlhiXTtuJiZuIT09Zy5pZHx8SHUobCk7UkModGhpcyxlLlpuLGwsZik7YnJlYWs7Y2FzZSAiZ2V0Ijp2YXIgcD17fSxxPShwW0YuRC5UZl09Zi5hcmdzWzBdLHBbRi5ELlNmXT1mLmFyZ3NbMV0scCk7UkModGhpcyxGLkQuSmIscSxmKTticmVhaztjYXNlICJjb250YWluZXJfY29uZmlnIjp2YXIgcj1RQyh0aGlzLGcpLHQ9VkMoZi5hcmdzWzBdLGZ1bmN0aW9uKCl7fSk7SHUodCwhMCk7ci5IPSEwO0VkKHQsci5oYik7ZD0hMDticmVhaztjYXNlICJkZXN0aW5hdGlvbl9jb25maWciOnZhciB1PVFDKHRoaXMsZyksdj1WQyhmLmFyZ3NbMF0sZnVuY3Rpb24oKXt9KTtIdSh2LCEwKTt1LldhW2cuaWRdfHwodS5XYVtnLmlkXT17fSk7dS5IPSEwO0VkKHYsdS5XYVtnLmlkXSk7ZD0hMDticmVhaztjYXNlICJyZXNldF9jb250YWluZXJfY29uZmlnIjpRQyh0aGlzLGcpLmhiPXt9O2JyZWFrOwpjYXNlICJyZXNldF90YXJnZXRfY29uZmlnIjpRQyh0aGlzLGcpLldhW2cuaWRdPXt9fXRoaXMuY29tbWFuZHMuc2hpZnQoKTtTQyh0aGlzLGYpfX10aGlzLmNvbW1hbmRzLnB1c2guYXBwbHkodGhpcy5jb21tYW5kcyxjKTtkJiZ0aGlzLmZsdXNoKCl9O3ZhciBUQz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9RWQoYyxudWxsKTtFZChRQyhhLGIpLmliLGQpO1FDKGEsYikuaWI9ZH07ZnVuY3Rpb24gVkMoYSxiKXt2YXIgYz17fTtHYihhLGZ1bmN0aW9uKGQsZSl7RWQoVmIoZCxlKSxjKX0pO0tDKGMsYik7VUMoYyk7cmV0dXJuIGN9CmZ1bmN0aW9uIFVDKGEpe2lmKE0oNjAxKSYmQkEoKSl7Zm9yKHZhciBiPSExLGM9bShuZXcgU2V0KFtGLkQueWMsRi5ELmRkXSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2FbZV0hPT12b2lkIDAmJihiPSEwLGRlbGV0ZSBhW2VdKX1iJiYhYWwoMzUsZnVuY3Rpb24oKXtyZXR1cm4hMX0pJiYoWmsoMzUsITApLHdpbmRvdy5jb25zb2xlJiZ3aW5kb3cuY29uc29sZS5sb2cmJndpbmRvdy5jb25zb2xlLmxvZygiR29vZ2xlIFRhZyBNYW5hZ2VyOiBTZXJ2ZXItc2lkZSBHVE0gcGFyYW1ldGVycyAodHJhbnNwb3J0X3VybC9zZXJ2ZXJfY29udGFpbmVyX3VybCkgYXJlIG5vdCBwZXJtaXR0ZWQgb24gdGhpcyBkb21haW4gYW5kIGhhdmUgYmVlbiBpZ25vcmVkLiIpLFAoMTk3KSl9fTt2YXIgV0M9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IFBDO3RoaXMuSz0hMX07V0MucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7dGhpcy5ILmZsdXNoKCl9O3ZhciBYQztmdW5jdGlvbiBZQygpe1hDfHwoWEM9bmV3IFdDKTtyZXR1cm4gWEN9ZnVuY3Rpb24gWkMoYSxiLGMsZCl7dmFyIGU9WUMoKSxmPWJDKGMsZC5pc0d0bUV2ZW50KTtmJiYoZS5LJiYoZC5kZWZlcnJhYmxlPSEwKSxlLkgucHVzaCgiZXZlbnQiLFtiLGFdLGYsZCkpfWZ1bmN0aW9uICRDKGEsYixjLGQpe3ZhciBlPVlDKCksZj1iQyhjLGQuaXNHdG1FdmVudCk7ZiYmZS5ILnB1c2goImdldCIsW2EsYl0sZixkKX1mdW5jdGlvbiBhRChhLGIsYyl7dmFyIGQ9WUMoKSxlPWJDKGEsYy5pc0d0bUV2ZW50KTtlJiZkLkgucHVzaCgiY29udGFpbmVyX2NvbmZpZyIsW2JdLGUsYyl9CmZ1bmN0aW9uIGJEKGEsYixjKXt2YXIgZD1ZQygpLGU9YkMoYSxjLmlzR3RtRXZlbnQpO2UmJmQuSC5wdXNoKCJkZXN0aW5hdGlvbl9jb25maWciLFtiXSxlLGMpfWZ1bmN0aW9uIGNEKGEpe3ZhciBiPVlDKCksYz1iQyhhLCEwKTtjJiZiLkgucHVzaCgicmVzZXRfY29udGFpbmVyX2NvbmZpZyIsW10sYyx7fSl9ZnVuY3Rpb24gZEQoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO2MmJmIuSC5wdXNoKCJyZXNldF90YXJnZXRfY29uZmlnIixbXSxjLHt9KX1mdW5jdGlvbiBlRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7cmV0dXJuIGM/UUMoYi5ILGMpLmliOnt9fWZ1bmN0aW9uIGZEKGEpe3JldHVybiBZQygpLkguSFthXX1mdW5jdGlvbiBnRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7cmV0dXJuIGM/UUMoYi5ILGMpLkg6ITF9O2Z1bmN0aW9uIGhEKGEsYil7YS5oYXNPd25Qcm9wZXJ0eSgiZ3RtLnVuaXF1ZUV2ZW50SWQiKXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsImd0bS51bmlxdWVFdmVudElkIix7dmFsdWU6cmooKX0pO2IuZXZlbnRJZD1hWyJndG0udW5pcXVlRXZlbnRJZCJdO2IucHJpb3JpdHlJZD1hWyJndG0ucHJpb3JpdHlJZCJdO3JldHVybntldmVudElkOmIuZXZlbnRJZCxwcmlvcml0eUlkOmIucHJpb3JpdHlJZH19ZnVuY3Rpb24gaUQoYSl7Zm9yKHZhciBiPW0oW0YuRC5kZCxGLkQueWNdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZSxlPWEmJmFbZF18fGZEKGQpO2lmKGUpcmV0dXJuIGV9fWZ1bmN0aW9uIGpEKGEpe3JldHVybiFhLmlzR3RtRXZlbnR8fGEuZXZlbnRNZXRhZGF0YSYmYS5ldmVudE1ldGFkYXRhW0guSi5DY10mJmEuZXZlbnRNZXRhZGF0YVtILkouTmJdIT09dmsoKT8hMTohMH07dmFyIGtEPW5ldyBmdW5jdGlvbigpe3RoaXMuSD0hMX07dmFyIGxEPWZ1bmN0aW9uKCl7dGhpcy5tZXNzYWdlcz1bXTt0aGlzLkg9W119O2xELnByb3RvdHlwZS5lbnF1ZXVlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLm1lc3NhZ2VzLmxlbmd0aCsxO2FbImd0bS51bmlxdWVFdmVudElkIl09YjthWyJndG0ucHJpb3JpdHlJZCJdPWQ7dmFyIGU9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHtldmVudElkOmIscHJpb3JpdHlJZDpkLGZyb21Db250YWluZXJFeGVjdXRpb246ITB9KTtpZihNKDU5NSkpe3ZhciBmPWMucHJpb3JpdHlRdWV1ZT9bXS5jb25jYXQodyhjLnByaW9yaXR5UXVldWUpLFtkXSk6W2RdO2FbImd0bS5wcmlvcml0eVF1ZXVlIl09ZjtlLnByaW9yaXR5UXVldWU9Zn12YXIgZz17bWVzc2FnZTphLG5vdEJlZm9yZUV2ZW50SWQ6Yixwcmlvcml0eUlkOmQsbWVzc2FnZUNvbnRleHQ6ZX07dGhpcy5tZXNzYWdlcy5wdXNoKGcpO2Zvcih2YXIgaD0wO2g8dGhpcy5ILmxlbmd0aDtoKyspdHJ5e3RoaXMuSFtoXShnKX1jYXRjaChsKXt9fTsKbEQucHJvdG90eXBlLmxpc3Rlbj1mdW5jdGlvbihhKXt0aGlzLkgucHVzaChhKX07bEQucHJvdG90eXBlLmdldD1mdW5jdGlvbigpe2Zvcih2YXIgYT17fSxiPTA7Yjx0aGlzLm1lc3NhZ2VzLmxlbmd0aDtiKyspe3ZhciBjPXRoaXMubWVzc2FnZXNbYl0sZD1hW2Mubm90QmVmb3JlRXZlbnRJZF07ZHx8KGQ9W10sYVtjLm5vdEJlZm9yZUV2ZW50SWRdPWQpO2QucHVzaChjKX1yZXR1cm4gYX07bEQucHJvdG90eXBlLnBydW5lPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPVtdLGQ9MDtkPHRoaXMubWVzc2FnZXMubGVuZ3RoO2QrKyl7dmFyIGU9dGhpcy5tZXNzYWdlc1tkXTtlLm5vdEJlZm9yZUV2ZW50SWQ9PT1hP2IucHVzaChlKTpjLnB1c2goZSl9dGhpcy5tZXNzYWdlcz1jO3JldHVybiBifTsKZnVuY3Rpb24gbUQoYSxiLGMpe2MuZXZlbnRNZXRhZGF0YT1jLmV2ZW50TWV0YWRhdGF8fHt9O2MuZXZlbnRNZXRhZGF0YVtILkouTmJdPU0oNTUwKT92aygpOkUoNik7bkQoKS5lbnF1ZXVlKGEsYixjKX1mdW5jdGlvbiBuRCgpe3JldHVybiBraigibWIiLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBsRH0pfTt2YXIgcEQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1vRDtiPVN0cmluZyhiKS5zcGxpdCgiLCIpO2Zvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1jLk5bYltkXV18fFtdO2MuTltiW2RdXT1lO2UuaW5kZXhPZihhKTwwJiZlLnB1c2goYSl9fSxxRD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1vRCxkPVtdLGU9W10sZj17fSxnPTA7ZzxhLmxlbmd0aDtmPXtsazp2b2lkIDAsUWo6dm9pZCAwLFJqOnZvaWQgMH0sZysrKXt2YXIgaD1hW2ddO2lmKGguaW5kZXhPZigiLSIpPj0wKXtpZihmLmxrPWJDKGgsYiksZi5sayl7dmFyIGw9dGsoKTtDYihsLGZ1bmN0aW9uKHgpe3JldHVybiBmdW5jdGlvbih5KXtyZXR1cm4geC5say5kZXN0aW5hdGlvbklkPT09eX19KGYpKT9kLnB1c2goaCk6ZS5wdXNoKGgpfX1lbHNle2lmKE0oNTUwKSl7dmFyIG49Yy5LW2hdfHxbXTtmLlJqPXt9O24uZm9yRWFjaChmdW5jdGlvbih4KXtyZXR1cm4gZnVuY3Rpb24oeSl7eC5Salt5XT0hMH19KGYpKTtmb3IodmFyIHA9CnRrKCkscT0wO3E8cC5sZW5ndGg7cSsrKWYuUmpbcFtxXV0mJmQucHVzaChwW3FdKX1lbHNle3ZhciByPWMuSFtoXXx8W107Zi5Raj17fTtyLmZvckVhY2goZnVuY3Rpb24oeCl7cmV0dXJuIGZ1bmN0aW9uKHkpe3guUWpbeV09ITB9fShmKSk7Zm9yKHZhciB0PXdrKCksdT0wO3U8dC5sZW5ndGg7dSsrKWlmKGYuUWpbdFt1XV0pe2Q9ZC5jb25jYXQodGsoKSk7YnJlYWt9fXZhciB2PWMuTltoXXx8W107di5sZW5ndGgmJihkPWQuY29uY2F0KHYpKX19cmV0dXJue2VrOmQsUHM6ZX19LHJEPWZ1bmN0aW9uKGEpe0diKG9ELkgsZnVuY3Rpb24oYixjKXt2YXIgZD1jLmluZGV4T2YoYSk7ZD49MCYmYy5zcGxpY2UoZCwxKX0pfSxzRD1mdW5jdGlvbihhKXtHYihvRC5LLGZ1bmN0aW9uKGIsYyl7dmFyIGQ9Yy5pbmRleE9mKGEpO2Q+PTAmJmMuc3BsaWNlKGQsMSl9KX0sdEQ9ZnVuY3Rpb24oYSl7R2Iob0QuTixmdW5jdGlvbihiLGMpe3ZhciBkPWMuaW5kZXhPZihhKTtkPj0wJiZjLnNwbGljZShkLAoxKX0pfSxvRD1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9e307dGhpcy5OPXt9O3RoaXMuSz17fX07ZnVuY3Rpb24gdUQoYSxiLGMpe3ZhciBkPUVkKGEsbnVsbCk7ZC5ldmVudElkPXZvaWQgMDtkLmluaGVyaXRQYXJlbnRDb25maWc9dm9pZCAwO09iamVjdC5rZXlzKGIpLnNvbWUoZnVuY3Rpb24oZil7cmV0dXJuIGJbZl0hPT12b2lkIDB9KSYmUCgxMzYpO3ZhciBlPUVkKGIsbnVsbCk7RWQoYyxlKTttRChyQyh3aygpWzBdLGUpLGEuZXZlbnRJZCxkKX0KZnVuY3Rpb24gdkQoYSxiLGMsZCl7dmFyIGU9e30sZj0oZVtGLkQuVWJdPUYuRC53YSxlWyJndG0uY29uZmlnQ29udGFpbmVySWQiXT1hLmlkLGVbImd0bS5jb25maWdQYXJhbWV0ZXJzIl09YixlWyJndG0udW5pcXVlRXZlbnRJZCJdPWQuZXZlbnRJZCxlKTtjLnByaW9yaXR5UXVldWUmJihmWyJndG0ucHJpb3JpdHlRdWV1ZSJdPWMucHJpb3JpdHlRdWV1ZSk7Yy5ldmVudE1ldGFkYXRhJiYoZlsiZ3RtLmV2ZW50TWV0YWRhdGEiXT1jLmV2ZW50TWV0YWRhdGEpO2EuSmMoKSYmKGZbImd0bS5jb25maWdDb250YWluZXJJZCJdPXdrKClbMF0sZlsiZ3RtLm9yaWdpbmFsQ29uZmlnVGFyZ2V0SWQiXT1hLmlkKTtyZXR1cm4gZn1mdW5jdGlvbiB3RChhLGIsYyl7aWYoSWYoMTEpJiYhYyYmIWFbRi5ELlZkXSl7dmFyIGQ9YWwoMTAsZnVuY3Rpb24oKXtyZXR1cm4hMX0pO1prKDEwLCEwKTtYQihkLGEsYik7aWYoZClyZXR1cm4hMH1yZXR1cm4hMX07ZnVuY3Rpb24geEQoYSxiKXt2YXIgYz17fSxkPShjLmV2ZW50PWEsYyk7YiYmKGQuZXZlbnRNb2RlbD1FZChiLG51bGwpLGJbRi5ELlBmXSYmKGQuZXZlbnRDYWxsYmFjaz1iW0YuRC5QZl0pLGJbRi5ELnBoXSYmKGQuZXZlbnRUaW1lb3V0PWJbRi5ELnBoXSkpO3JldHVybiBkfQpmdW5jdGlvbiB5RChhLGIpe3ZhciBjPWEmJmFbRi5ELlhiXTtjPT09dm9pZCAwJiYoYz11QShGLkQuWGIsMiksYz09PXZvaWQgMCYmKGM9ImRlZmF1bHQiKSk7aWYoemIoYyl8fEFycmF5LmlzQXJyYXkoYykpe3ZhciBkO2Q9Yi5pc0d0bUV2ZW50P3piKGMpP1tjXTpjOmMudG9TdHJpbmcoKS5yZXBsYWNlKC9ccysvZywiIikuc3BsaXQoIiwiKTt2YXIgZT1xRChkLGIuaXNHdG1FdmVudCksZj1lLmVrLGc9ZS5QcztpZihnLmxlbmd0aClmb3IodmFyIGg9aUQoYSksbD0wO2w8Zy5sZW5ndGg7bCsrKXt2YXIgbj1iQyhnW2xdLGIuaXNHdG1FdmVudCk7aWYobil7dmFyIHA9bi5kZXN0aW5hdGlvbklkLHE9dm9pZCAwOygocT1uayhuLmRlc3RpbmF0aW9uSWQpKT09bnVsbD92b2lkIDA6cS5zdGF0ZSk9PT0wfHxuQShwLGgse3NvdXJjZTozLGZyb21Db250YWluZXJFeGVjdXRpb246Yi5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufSl9fXZhciByPWYuY29uY2F0KGcpO3JldHVybntlazpjQyhmLGIuaXNHdG1FdmVudCksCm1yOmNDKHIsYi5pc0d0bUV2ZW50KX19fTt2YXIgekQ9e30sQUQ9KHpELmNvbmZpZz1mdW5jdGlvbihhLGIpe3ZhciBjPWhEKGEsYiksZDthOntpZighKGEubGVuZ3RoPDIpJiZ6YihhWzFdKSl7dmFyIGU9e307aWYoYS5sZW5ndGg+Mil7aWYoYVsyXSE9PXZvaWQgMCYmIUNkKGFbMl0pfHxhLmxlbmd0aD4zKXtkPXZvaWQgMDticmVhayBhfWU9YVsyXX12YXIgZj1iQyhhWzFdLGIuaXNHdG1FdmVudCk7aWYoZil7ZD17dGFyZ2V0OmYscGFyYW1zOmV9O2JyZWFrIGF9fWQ9dm9pZCAwfXZhciBnPWQ7aWYoZyl7dmFyIGg9Zy50YXJnZXQsbD1nLnBhcmFtcyxuO2E6e2lmKCFJZig3KSl7dmFyIHA9eWsoemsoKSk7aWYoTWsocCkpe3ZhciBxPXAucGFyZW50LHI9cS5pc0Rlc3RpbmF0aW9uO249e1ZzOnlrKHEpLE1zOnJ9O2JyZWFrIGF9fW49dm9pZCAwfXZhciB0PW4sdT10PT1udWxsP3ZvaWQgMDp0LlZzLHY9dD09bnVsbD92b2lkIDA6dC5NcztkQihjLmV2ZW50SWQsImd0YWcuY29uZmlnIik7dmFyIHgseT1oLmRlc3RpbmF0aW9uSWQ7CmlmKGguSmMoKT90aygpLmluZGV4T2YoeSkhPT0tMTp3aygpLmluZGV4T2YoeSkhPT0tMSlhOntpZih1JiYoUCgxMjgpLHYmJlAoMTMwKSxiLmluaGVyaXRQYXJlbnRDb25maWcpKXt2YXIgejt2YXIgQz0kaygxMik7aWYoQyl1RChiLEMsbCksej0hMTtlbHNle3ZhciBEPSRrKDExKTshbFtGLkQuVmRdJiYoTSg1NTApfHxJZigxMSkpJiZEfHxaaygxMSxFZChsLG51bGwpKTt6PSEwfXomJnUuY29udGFpbmVycyYmdS5jb250YWluZXJzLmpvaW4oIiwiKTt4PXZvaWQgMDticmVhayBhfXZhciBJPSFJZig0NSksRz0hU2IoaC5pZCwiR1RNLSIpO0kmJkcmJihPYmplY3Qua2V5cyhsKS5sZW5ndGg9PT0wP0d1KFQuVy5Tayk6R3UoVC5XLlRrKSxFbCgpJiZHdShULlcuUmspLCRrKDMxKSYmR3UoVC5XLlVrKSk7dmFyIE49WUI7Zm4uSyYmKE4uSD09PTEmJihRbS5ILm1jYz0hMSksTi5IPTIpO2lmKE0oNTUwKXx8IXdEKGwsYixoLkpjKCkpKXtrRC5IfHxQKDQzKTtpZighTSg1NTApKXtpZighYi5ub1RhcmdldEdyb3VwKXt2YXIgUz0KaC5pZDtpZihoLkpjKCkpdEQoUykscEQoUyxsW0YuRC5PZF18fCJkZWZhdWx0Iik7ZWxzZXtyRChTKTt2YXIgVz1sW0YuRC5PZF18fCJkZWZhdWx0IixlYT1vRDtXPVcudG9TdHJpbmcoKS5zcGxpdCgiLCIpO2Zvcih2YXIgamE9MDtqYTxXLmxlbmd0aDtqYSsrKXt2YXIgZmE9ZWEuSFtXW2phXV18fFtdO2VhLkhbV1tqYV1dPWZhO2ZhLmluZGV4T2YoUyk8MCYmZmEucHVzaChTKX19fWRlbGV0ZSBsW0YuRC5PZF19dmFyIHNhPWIuZXZlbnRNZXRhZGF0YXx8e307c2EuaGFzT3duUHJvcGVydHkoSC5KLmFlKXx8KHNhW0guSi5hZV09IWIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbik7Yi5ldmVudE1ldGFkYXRhPXNhO2RlbGV0ZSBsW0YuRC5QZl07aWYoTSg1NTApKXt4PXZEKGgsbCxiLGMpO2JyZWFrIGF9dmFyIGRhPSEhbFtGLkQuVmRdO2RlbGV0ZSBsW0YuRC5WZF07dmFyIG1hPXRrKCksUGE9Y0QsRmE9YUQ7aC5KYygpJiYobWE9W2guaWRdLFBhPWRELEZhPWJEKTtmb3IodmFyIHFhPTA7cWE8Cm1hLmxlbmd0aDtxYSsrKXtkYXx8UGEobWFbcWFdKTt2YXIgaWI9Z0QobWFbcWFdKTtGYShtYVtxYV0sRWQobCxudWxsKSxFZChiLG51bGwpKTtpYiYmZGF8fFpDKEYuRC53YSxFZChsLG51bGwpLG1hW3FhXSxFZChiLG51bGwpKX19eD12b2lkIDB9ZWxzZSBhOntpZighYi5pbmhlcml0UGFyZW50Q29uZmlnJiYhbFtGLkQuWmNdKXt2YXIgWGI9aUQobCksTGM9aC5kZXN0aW5hdGlvbklkO2lmKGguSmMoKSluQShMYyxYYix7c291cmNlOjIsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KTtlbHNlIGlmKHUhPT12b2lkIDAmJnUuY29udGFpbmVycy5pbmRleE9mKExjKSE9PS0xKXt2YXIgUWQ9JGsoMTEpLFljPSRrKDEyKTtRZD91RChiLGwsUWQpOlljfHxaaygxMixFZChsLG51bGwpKX1lbHNlIGlmKGhBKExjLFhiLCEwLHtzb3VyY2U6Mixmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pLE0oNTUwKSl7eD12RChoLApsLGIsYyk7YnJlYWsgYX19eD12b2lkIDB9cmV0dXJuIHh9fSx6RC5jb25zZW50PWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg9PT0zKXtQKDM5KTt2YXIgYz1oRChhLGIpLGQ9YVsxXSxlPXt9LGY9T28oYVsyXSksZztmb3IoZyBpbiBmKWlmKGYuaGFzT3duUHJvcGVydHkoZykpe3ZhciBoPWZbZ107ZVtnXT1nPT09Ri5ELllnP0FycmF5LmlzQXJyYXkoaCk/TmFOOk51bWJlcihoKTpnPT09Ri5ELm5jPyhBcnJheS5pc0FycmF5KGgpP2g6W2hdKS5tYXAoUG8pOlFvKGgpfWIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbnx8KGVbRi5ELm1hXSYmUCgxMzkpLGVbRi5ELlhhXSYmUCgxNDApKTtkPT09ImRlZmF1bHQiP1RvKGUpOmQ9PT0idXBkYXRlIj9WbyhlLGMpOmQ9PT0iZGVjbGFyZSImJmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbiYmU28oZSl9fSx6RC5jb250YWluZXJfY29uZmlnPWZ1bmN0aW9uKGEsYil7aWYoakQoYikmJmEubGVuZ3RoPT09MyYmemIoYVsxXSkmJkNkKGFbMl0pKXt2YXIgYz0KYVsyXSxkPWJDKGFbMV0sITApO2QmJmFEKGQuZGVzdGluYXRpb25JZCxjLEVkKGIsbnVsbCkpfX0sekQuZGVzdGluYXRpb25fY29uZmlnPWZ1bmN0aW9uKGEsYil7aWYoakQoYikmJmEubGVuZ3RoPT09MyYmemIoYVsxXSkmJkNkKGFbMl0pKXt2YXIgYz1hWzJdLGQ9YkMoYVsxXSwhMCk7aWYoZCl7aWYoTSg1NTApKXtpZighYi5ub1RhcmdldEdyb3VwKXt2YXIgZT1kLmlkO2lmKGQuSmMoKSl0RChlKSxwRChlLGNbRi5ELk9kXXx8ImRlZmF1bHQiKTtlbHNle3NEKGUpO3ZhciBmPWNbRi5ELk9kXXx8ImRlZmF1bHQiLGc9b0Q7Zj1TdHJpbmcoZikuc3BsaXQoIiwiKTtmb3IodmFyIGg9MDtoPGYubGVuZ3RoO2grKyl7dmFyIGw9Zy5LW2ZbaF1dfHxbXTtnLktbZltoXV09bDtsLmluZGV4T2YoZSk8MCYmbC5wdXNoKGUpfX19ZGVsZXRlIGNbRi5ELk9kXX1iRChkLmlkLGMsRWQoYixudWxsKSl9fX0sekQuZXZlbnQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hWzFdO2lmKCEoYS5sZW5ndGg8MikmJgp6YihjKSl7dmFyIGQ9dm9pZCAwO2lmKGEubGVuZ3RoPjIpe2lmKCFDZChhWzJdKSYmYVsyXSE9PXZvaWQgMHx8YS5sZW5ndGg+MylyZXR1cm47ZD1hWzJdfXZhciBlPXhEKGMsZCksZj1oRChhLGIpLGc9Zi5ldmVudElkLGg9Zi5wcmlvcml0eUlkO2VbImd0bS51bmlxdWVFdmVudElkIl09ZztoJiYoZVsiZ3RtLnByaW9yaXR5SWQiXT1oKTtiLnByaW9yaXR5UXVldWUmJihlWyJndG0ucHJpb3JpdHlRdWV1ZSJdPWIucHJpb3JpdHlRdWV1ZSk7aWYoYz09PSJvcHRpbWl6ZS5jYWxsYmFjayIpcmV0dXJuIGUuZXZlbnRNb2RlbD1lLmV2ZW50TW9kZWx8fHt9LGU7dmFyIGw9eUQoZCxiKTtpZihsKXtmb3IodmFyIG49bC5layxwPWwubXIscT1wLm1hcChmdW5jdGlvbihOKXtyZXR1cm4gTi5pZH0pLHI9cC5tYXAoZnVuY3Rpb24oTil7cmV0dXJuIE4uZGVzdGluYXRpb25JZH0pLHQ9bi5tYXAoZnVuY3Rpb24oTil7cmV0dXJuIE4uaWR9KSx1PW0odGsoKSksdj11Lm5leHQoKTshdi5kb25lO3Y9CnUubmV4dCgpKXt2YXIgeD12LnZhbHVlO3IuaW5kZXhPZih4KTwwJiZ0LnB1c2goeCl9ZEIoZyxjKTtmb3IodmFyIHk9bSh0KSx6PXkubmV4dCgpOyF6LmRvbmU7ej15Lm5leHQoKSl7dmFyIEM9ei52YWx1ZSxEPUVkKGIsbnVsbCksST1FZChkLG51bGwpO2RlbGV0ZSBJW0YuRC5QZl07dmFyIEc9RC5ldmVudE1ldGFkYXRhfHx7fTtHLmhhc093blByb3BlcnR5KEguSi5hZSl8fChHW0guSi5hZV09IUQuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbik7R1tILkoubWpdPXEuc2xpY2UoKTtHW0guSi5zZ109ci5zbGljZSgpO0QuZXZlbnRNZXRhZGF0YT1HO1pDKGMsSSxDLEQpfWUuZXZlbnRNb2RlbD1lLmV2ZW50TW9kZWx8fHt9O3EubGVuZ3RoPjA/ZS5ldmVudE1vZGVsW0YuRC5YYl09cS5qb2luKCIsIik6ZGVsZXRlIGUuZXZlbnRNb2RlbFtGLkQuWGJdO2tELkh8fFAoNDMpO2Iubm9HdG1FdmVudD09PXZvaWQgMCYmYi5ldmVudE1ldGFkYXRhJiZiLmV2ZW50TWV0YWRhdGFbSC5KLkJuXSYmKGIubm9HdG1FdmVudD0KITApO2UuZXZlbnRNb2RlbFtGLkQuWWNdJiYoYi5ub0d0bUV2ZW50PSEwKTtyZXR1cm4gYi5ub0d0bUV2ZW50P3ZvaWQgMDplfX19LHpELmdldD1mdW5jdGlvbihhLGIpe1AoNTMpO2lmKGEubGVuZ3RoPT09NCYmemIoYVsxXSkmJnpiKGFbMl0pJiZ5YihhWzNdKSl7dmFyIGM9YkMoYVsxXSxiLmlzR3RtRXZlbnQpLGQ9U3RyaW5nKGFbMl0pLGU9YVszXTtpZihjKXtrRC5IfHxQKDQzKTt2YXIgZj1pRCgpO2lmKENiKHRrKCksZnVuY3Rpb24oaCl7cmV0dXJuIGMuZGVzdGluYXRpb25JZD09PWh9KSl7aEQoYSxiKTt2YXIgZz17fTtFZCgoZ1tGLkQuVGZdPWQsZ1tGLkQuU2ZdPWUsZyksbnVsbCk7JEMoZCxmdW5jdGlvbihoKXtiZChmdW5jdGlvbigpe2UoaCl9KX0sYy5pZCxiKX1lbHNlIG5BKGMuZGVzdGluYXRpb25JZCxmLHtzb3VyY2U6NCxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pfX19LHpELmpzPWZ1bmN0aW9uKGEsYil7dmFyIGM7aWYoYS5sZW5ndGg9PT0KMiYmYVsxXS5nZXRUaW1lKXtrRC5IPSEwO3ZhciBkPWhEKGEsYiksZT1kLmV2ZW50SWQsZj1kLnByaW9yaXR5SWQsZz17fTtjPShnLmV2ZW50PSJndG0uanMiLGdbImd0bS5zdGFydCJdPWFbMV0uZ2V0VGltZSgpLGdbImd0bS51bmlxdWVFdmVudElkIl09ZSxnWyJndG0ucHJpb3JpdHlJZCJdPWYsZyl9ZWxzZSBjPXZvaWQgMDtyZXR1cm4gY30sekQucG9saWN5PWZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoPT09MyYmemIoYVsxXSkmJnliKGFbMl0pKXtpZihoeShhWzFdLGFbMl0pLFAoNzQpLGFbMV09PT0iYWxsIil7UCg3NSk7dmFyIGI9ITE7dHJ5e2I9YVsyXShFKDUpLCJ1bmtub3duIix7fSl9Y2F0Y2goYyl7fWJ8fFAoNzYpfX1lbHNlIFAoNzMpfSx6RC5yZXNldF90YXJnZXRfY29uZmlnPWZ1bmN0aW9uKGEsYil7aWYoakQoYikmJmEubGVuZ3RoPT09MiYmemIoYVsxXSkpe3ZhciBjPWJDKGFbMV0sITApO2MmJmREKGMuaWQpfX0sekQuc2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9dm9pZCAwOwphLmxlbmd0aD09PTImJkNkKGFbMV0pP2M9RWQoYVsxXSxudWxsKTphLmxlbmd0aD09PTMmJnpiKGFbMV0pJiYoYz17fSxDZChhWzJdKXx8QXJyYXkuaXNBcnJheShhWzJdKT9jW2FbMV1dPUVkKGFbMl0sbnVsbCk6Y1thWzFdXT1hWzJdKTtpZihjKXtaaygzMSwhMCk7dmFyIGQ9aEQoYSxiKSxlPWQuZXZlbnRJZCxmPWQucHJpb3JpdHlJZDtFZChjLG51bGwpO0UoNSk7dmFyIGc9RWQoYyxudWxsKTtZQygpLkgucHVzaCgic2V0IixbZ10sdm9pZCAwLGIpO2NbImd0bS51bmlxdWVFdmVudElkIl09ZTtmJiYoY1siZ3RtLnByaW9yaXR5SWQiXT1mKTtkZWxldGUgYy5ldmVudDtiLm92ZXJ3cml0ZU1vZGVsRmllbGRzPSEwO3JldHVybiBjfX0sekQpLEJEPXt9LENEPShCRC5wb2xpY3k9ITAsQkQpO3ZhciBFRD1mdW5jdGlvbihhKXtpZihERChhKSlyZXR1cm4gYTt0aGlzLnZhbHVlPWF9O0VELnByb3RvdHlwZS5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07dmFyIEREPWZ1bmN0aW9uKGEpe3JldHVybiFhfHxBZChhKSE9PSJvYmplY3QifHxDZChhKT8hMToiZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlImluIGF9O0VELnByb3RvdHlwZS5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWU9RUQucHJvdG90eXBlLmdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZTt2YXIgRkQ9e0JiOiIxIixlZToiMiIsWGQ6IjMiLGNlOiI0Iix4ZjoiNSIscWc6IjYiLEtoOiI3Iix0ajoiOCIsbGk6IjkiLGpqOiIxMCJ9Owp2YXIgR0Q9ZnVuY3Rpb24oYSxiKXtpZihhKXt2YXIgYz1hLnRyaW0oKS5yZXBsYWNlQWxsKC9ccysvZywiIikucmVwbGFjZUFsbCgvKFxkezIsfSlcLi9nLCIkMSIpLnJlcGxhY2VBbGwoLy0vZywiIikucmVwbGFjZUFsbCgvXCgoXGQrKVwpL2csIiQxIik7aWYoYiYmYy5tYXRjaCgvXlwrP1xkezMsNH0kLykpcmV0dXJuIGM7Yy5jaGFyQXQoMCkhPT0iKyImJihjPSIrIitjKTtpZihjLm1hdGNoKG5ldyBSZWdFeHAoIl5cXCtcXGR7IisoTSg1OTcpPzc6MTApKyIsMTV9JCIpKSlyZXR1cm4gY319LElEPWZ1bmN0aW9uKGEpe2lmKGEpe3ZhciBiPWEudHJpbSgpO2lmKEhELnRlc3QoYikpcmV0dXJuIGIudG9Mb3dlckNhc2UoKS5yZXBsYWNlQWxsKC9bLSBdKy9nLCIiKX19LE1EPWZ1bmN0aW9uKGEpe3ZhciBiPUpEKEtEKShhKTtpZihiJiYhTEQoYikpcmV0dXJuIGJ9LExEPWZ1bmN0aW9uKGEpe2lmKCFBLmxvY2F0aW9uKXJldHVybiExO3ZhciBiPU5qKEEubG9jYXRpb24sImhvc3QiLCEwKSwKYztpZihNKDYwMikpYTp7Zm9yKHZhciBkPWIuc3BsaXQoIi4iKSxlPWEudG9Mb3dlckNhc2UoKSxmPTA7ZjxkLmxlbmd0aC0xO2YrKyl7dmFyIGc9ZC5zbGljZShmKS5qb2luKCIuIik7aWYoZS5tYXRjaCgiQCIrZysiJCIpKXtjPSEwO2JyZWFrIGF9fWM9ITF9ZWxzZSBjPWEudG9Mb3dlckNhc2UoKS5pbmRleE9mKGIpPj0wO3JldHVybiBjfSxKRD1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYil7dmFyIGM9Yi5tYXRjaChhKTtyZXR1cm4gYz9jWzBdLnRyaW0oKS50b0xvd2VyQ2FzZSgpOnZvaWQgMH19LEtEPS9bQS1aMC05Ll8lKy1dK0BbQS1aMC05Li1dK1wuW0EtWl17Mix9L2ksTkQ9SkQoL14oW15ceDAwLVx4NDBceDViLVx4NjBceDdiLVx4ZmZdfFsuLV18XHMpKyQvKSxIRD1SZWdFeHAoIl4oPzpbQS1aXXsxLDJ9XFxkW0EtWlxcZF0/WyAtXT9cXGRbQS1aXXsyfXxbQS1aXVxcZFtBLVpdWyAtXT9cXGRbQS1aXVxcZHxcXGR7NH0gP1tBLVpdezJ9fFtBLVpdXFxkezR9W0EtWl17M318XFxkezV9KD86LVxcZHs0fSk/fFxcZHs1fS1cXGR7M318XFxkezR9LVxcZHszfXxcXGR7M30tXFxkezR9fFxcZHsyfS1cXGR7M318XFxkezN9ID9cXGR7Mn18XFxkezQsN30pJCIsCiJpIiksT0Q9SkQoL14oW15ceDAwLVx4NDBceDViLVx4NjBceDdiLVx4ZmZdfFsuLV18XHN8XGQpKyQvKTsKdmFyIFBEPWZ1bmN0aW9uKCl7dmFyIGE9U3RyaW5nKGFsKDMzLGZ1bmN0aW9uKCl7cmV0dXJuIDB9KSk7YS5pbmRleE9mKCIuIikhPT0tMSYmKGE9YS5zdWJzdHJpbmcoMCxhLmluZGV4T2YoIi4iKSszKSk7dmFyIGI9YWwoMzQsZnVuY3Rpb24oKXtyZXR1cm4gMH0pO3JldHVybnt2dDpOdW1iZXIoYSksc3Q6Yn19LFFEPWZ1bmN0aW9uKCl7cmV0dXJuIGFsKDMyLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KX0sU0Q9ZnVuY3Rpb24oYSl7dmFyIGI9cGQoKXx8MCxjPVtGRC5CYl07TSg1NjgpJiZjLnB1c2goRkQuZWUsRkQuWGQsRkQuY2UsRkQueGYsRkQucWcsRkQudGosRkQubGksRkQuamopO2Zvcih2YXIgZD1SRChhLG5ldyBTZXQoYykpLGU9YWwoMzIsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE1hcH0pLGY9bShkKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtlLnNldChoLkRhLGgpfXZhciBsPShwZCgpfHwwKS1iLG49YWwoMzMsZnVuY3Rpb24oKXtyZXR1cm4gMH0pOwpaaygzMyxuK2wpO3ZhciBwPWFsKDM0LGZ1bmN0aW9uKCl7cmV0dXJuIDB9KTtaaygzNCxwKzEpfSxSRD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1OZigzNiwyKSxkPVtdLGU9W3tvbzphLGRlcHRoOjB9XTtlLmxlbmd0aD4wOylmb3IodmFyIGY9ZS5zaGlmdCgpLGc9Zi5vbyxoPWYuZGVwdGgsbD1tKE9iamVjdC5rZXlzKGcpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtpZighVEQuaGFzKHApKXt2YXIgcT1nW3BdO2lmKHEpaWYoQ2QocSkpaCsxPD1jJiZlLnB1c2goe29vOnEsZGVwdGg6aCsxfSk7ZWxzZXtmb3IodmFyIHI9bShiKSx0PXIubmV4dCgpOyF0LmRvbmU7dD1yLm5leHQoKSl7dmFyIHU9dC52YWx1ZSx2PVVEW3VdO2lmKHYmJnYuS2MudGVzdChwKSl7dmFyIHg9di5uYShTdHJpbmcocSkpO2lmKHgpe2QucHVzaCh7Q2E6eCxEYTp1fSk7Yi5kZWxldGUodSk7YnJlYWt9fX1pZihiLnNpemU9PT0wKXJldHVybiBkfX19cmV0dXJuIGR9LFREPQpuZXcgU2V0KFsiaXRlbXMiLCJlY29tbWVyY2UiXSksVkQ9UmVnRXhwKCJwaG9uZSIsImkiKSxXRD1SZWdFeHAoImZpcnN0Xz9uYW1lIiwiaSIpLFhEPVJlZ0V4cCgibGFzdF8/bmFtZSIsImkiKSxZRD1SZWdFeHAoImNvdW50cnkiLCJpIiksWkQ9UmVnRXhwKCJwb3N0fHppcCIsImkiKSwkRD1SZWdFeHAoImFkZHJlc3N8c3RyZWV0IiwiaSIpLGFFPVJlZ0V4cCgiY2l0eSIsImkiKSxiRT1SZWdFeHAoInJlZ2lvbnxzdGF0ZXxwcm92aW5jZSIsImkiKSxjRT17fSxVRD0oY0VbRkQuQmJdPXtLYzpSZWdFeHAoImVtYWlsIiwiaSIpLG5hOk1EfSxjRVtGRC5lZV09e0tjOlZELG5hOmZ1bmN0aW9uKGEpe3JldHVybiBHRChhLCExKX19LGNFW0ZELlhkXT17S2M6V0QsbmE6TkR9LGNFW0ZELmNlXT17S2M6WEQsbmE6TkR9LGNFW0ZELnRqXT17S2M6JEQsbmE6T0R9LGNFW0ZELmxpXT17S2M6YUUsbmE6TkR9LGNFW0ZELmpqXT17S2M6YkUsbmE6TkR9LGNFW0ZELnFnXT17S2M6WkQsbmE6SUR9LGNFW0ZELnhmXT0Ke0tjOllELG5hOk5EfSxjRSk7dmFyIGRFPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLmxvYWRlZD0hMTt0aGlzLkg9W107aWYoQi5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIil0aGlzLm9uTG9hZCgpO2Vsc2UgJGMoQSwibG9hZCIsZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBhLm9uTG9hZCgpfSl9O2RFLnByb3RvdHlwZS5vbkxvYWQ9ZnVuY3Rpb24oKXtpZighdGhpcy5sb2FkZWQpe3RoaXMubG9hZGVkPSEwO2Zvcih2YXIgYT0wO2E8dGhpcy5ILmxlbmd0aDthKyspYmQodGhpcy5IW2FdKX19O3ZhciBmRT1mdW5jdGlvbihhKXt2YXIgYj1lRTtiLmxvYWRlZD9iZChhKTpiLkgucHVzaChhKX0sZUU9bmV3IGRFO3ZhciBnRT1mdW5jdGlvbigpe3RoaXMuWj0wO3RoaXMuSz17fTt0aGlzLkg9W107dGhpcy5OPVtdO3RoaXMuZmE9dGhpcy5SPXRoaXMuamE9ITF9LGlFPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1oRTthLmV2ZW50Q2FsbGJhY2s9YjtjJiYoYS5ldmVudFRpbWVvdXQ9Yyk7cmV0dXJuIGQucHVzaChhKX0sakU9ZnVuY3Rpb24oYSxiKXtpZighQWIoYil8fGI8MCliPTA7dmFyIGM9cWooKSxkPTAsZT0hMSxmPXZvaWQgMDtmPUEuc2V0VGltZW91dChmdW5jdGlvbigpe2V8fChlPSEwLGEoKSk7Zj12b2lkIDB9LGIpO3JldHVybiBmdW5jdGlvbigpe3ZhciBnPWM/Yy5zdWJzY3JpYmVyczoxOysrZD09PWcmJihmJiYoQS5jbGVhclRpbWVvdXQoZiksZj12b2lkIDApLGV8fChhKCksZT0hMCkpfX0sbEU9ZnVuY3Rpb24oYSl7dmFyIGI7aWYoYS5OLmxlbmd0aCliPWEuTi5zaGlmdCgpO2Vsc2UgaWYoYS5ILmxlbmd0aCliPWEuSC5zaGlmdCgpO2Vsc2UgcmV0dXJuO3ZhciBjO3ZhciBkPWI7aWYoYS5qYXx8CiFrRShkLm1lc3NhZ2UpKWM9ZDtlbHNle2EuamE9ITA7dmFyIGU9ZC5tZXNzYWdlWyJndG0udW5pcXVlRXZlbnRJZCJdLGYsZzt0eXBlb2YgZT09PSJudW1iZXIiPyhmPWUtMixnPWUtMSk6KGY9cmooKSxnPXJqKCksZC5tZXNzYWdlWyJndG0udW5pcXVlRXZlbnRJZCJdPXJqKCkpO3ZhciBoPXt9LGw9e21lc3NhZ2U6KGguZXZlbnQ9Imd0bS5pbml0X2NvbnNlbnQiLGhbImd0bS51bmlxdWVFdmVudElkIl09ZixoKSxtZXNzYWdlQ29udGV4dDp7ZXZlbnRJZDpmfX0sbj17fSxwPXttZXNzYWdlOihuLmV2ZW50PSJndG0uaW5pdCIsblsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1nLG4pLG1lc3NhZ2VDb250ZXh0OntldmVudElkOmd9fTthLkgudW5zaGlmdChwLGQpO2M9bH1yZXR1cm4gY30sb0U9ZnVuY3Rpb24oYSl7YS5mYXx8UCgxOTYpO2Zvcih2YXIgYj0hMSxjOyFhLlImJihjPWxFKGEpKTspe2EuUj0hMDt2YXIgZD1yQTtkZWxldGUgZC5ILmV2ZW50TW9kZWw7b0EoZCk7dmFyIGU9YyxmPQplLm1lc3NhZ2UsZz1lLm1lc3NhZ2VDb250ZXh0O2lmKGY9PW51bGwpYS5SPSExO2Vsc2V7Zy5mcm9tQ29udGFpbmVyRXhlY3V0aW9uJiZzQSgpO3RyeXtpZih5YihmKSl0cnl7Zi5jYWxsKHRBKX1jYXRjaChTKXt9ZWxzZSBpZihBcnJheS5pc0FycmF5KGYpKXtpZih6YihmWzBdKSl7dmFyIGg9ZlswXS5zcGxpdCgiLiIpLGw9aC5wb3AoKSxuPWYuc2xpY2UoMSkscD11QShoLmpvaW4oIi4iKSwyKTtpZihwIT1udWxsKXRyeXtwW2xdLmFwcGx5KHAsbil9Y2F0Y2goUyl7fX19ZWxzZXt2YXIgcT12b2lkIDA7aWYoSGIoZikpYTp7aWYoZi5sZW5ndGgmJnpiKGZbMF0pKXt2YXIgcj1BRFtmWzBdXTtpZihyJiYoIWcuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbnx8IUNEW2ZbMF1dKSl7cT1yKGYsZyk7YnJlYWsgYX19cT12b2lkIDB9ZWxzZSBxPWY7aWYocSl7dmFyIHQ7Zm9yKHZhciB1PXEsdj11Ll9jbGVhcnx8Zy5vdmVyd3JpdGVNb2RlbEZpZWxkcyx4PW0oT2JqZWN0LmtleXModSkpLHk9eC5uZXh0KCk7IXkuZG9uZTt5PQp4Lm5leHQoKSl7dmFyIHo9eS52YWx1ZTt6IT09Il9jbGVhciImJih2JiZyQS5zZXQoeix2b2lkIDApLHJBLnNldCh6LHVbel0pKX1NKDU5MikmJlNEKHUpOyRrKDI1KXx8WmsoMjUsdVsiZ3RtLnN0YXJ0Il0pO3ZhciBDPXVbImd0bS51bmlxdWVFdmVudElkIl07dS5ldmVudD8odHlwZW9mIEMhPT0ibnVtYmVyIiYmKEM9cmooKSx1WyJndG0udW5pcXVlRXZlbnRJZCJdPUMsckEuc2V0KCJndG0udW5pcXVlRXZlbnRJZCIsQykpLHQ9ekIodSkpOnQ9ITE7Yj10fHxifX19ZmluYWxseXtnLmZyb21Db250YWluZXJFeGVjdXRpb24mJm9BKHJBLCEwKTt2YXIgRD1mWyJndG0udW5pcXVlRXZlbnRJZCJdO2lmKHR5cGVvZiBEPT09Im51bWJlciIpe2Zvcih2YXIgST1hLEc9SS5LW1N0cmluZyhEKV18fFtdLE49MDtOPEcubGVuZ3RoO04rKylJLk4ucHVzaChtRShHW05dKSk7Ry5sZW5ndGgmJkkuTi5zb3J0KG5FKTtkZWxldGUgSS5LW1N0cmluZyhEKV07RD5hLlomJihhLlo9RCl9YS5SPSExfX19cmV0dXJuIWJ9LApwRT1mdW5jdGlvbigpe3ZhciBhPWhFO2EuZmEmJlAoMTk1KTthLmZhPSEwO2lmKGZuLkgpe3ZhciBiPSFJZig1MSksYz1yeigpO3B6KGMse3N0YWdlOkl5LlguWmd9KTtpZihiKXt2YXIgZD1xeihjLHtzdGFnZTpJeS5YLllrfSxJeS5YLm5pKTtkIT09dm9pZCAwJiYoYy5ILlk9ZCl9dmFyIGU9YS5ILmxlbmd0aDtyeigpLkguQz1lfW9FKGEpO2lmKGZuLkgpe3ZhciBmPXJ6KCksZz1xeihmLHtzdGFnZTpJeS5YLlZrfSxJeS5YLlpnKTtnIT09dm9pZCAwJiYoZi5ILkI9Zyl9dHJ5e3ZhciBoPUFbRSgxOSldLGw9RSg1KSxuPWguaGlkZTtpZihuJiZuW2xdIT09dm9pZCAwJiZuLmVuZCl7bltsXT0hMTt2YXIgcD0hMCxxO2ZvcihxIGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eShxKSYmbltxXT09PSEwKXtwPSExO2JyZWFrfXAmJihuLmVuZCgpLG4uZW5kPW51bGwpfX1jYXRjaChyKXtFKDUpfX0scUU9ZnVuY3Rpb24oYSxiKXtpZihhLlo8Yi5ub3RCZWZvcmVFdmVudElkKXt2YXIgYz1TdHJpbmcoYi5ub3RCZWZvcmVFdmVudElkKTsKYS5LW2NdPWEuS1tjXXx8W107YS5LW2NdLnB1c2goYil9ZWxzZXthLk4ucHVzaChtRShiKSk7YS5OLnNvcnQobkUpO3ZhciBkPWZ1bmN0aW9uKCl7YS5SfHxvRShhKX07TSg1ODApP2RkKGQpOmJkKGQpfX07CmdFLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShoKXt2YXIgbD17fTtpZihERChoKSl7dmFyIG49aDtoPUREKG4pP24uZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlKCk6dm9pZCAwO2wuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbj0hMH1yZXR1cm57bWVzc2FnZTpoLG1lc3NhZ2VDb250ZXh0Omx9fXZhciBiPXRoaXMsYz1NYyhFKDE5KSxbXSksZD1waigpO2QucHJ1bmVkPT09ITAmJlAoODMpO3RoaXMuSz1uRCgpLmdldCgpO25EKCkubGlzdGVuKGZ1bmN0aW9uKGgpe3FFKGIsaCl9KTtkLnN1YnNjcmliZXJzPShkLnN1YnNjcmliZXJzfHwwKSsxO3ZhciBlPWMucHVzaCxmPXRoaXM7Yy5wdXNoPWZ1bmN0aW9uKCl7dmFyIGg7bGooKTtpZihqai5ILlNBTkRCT1hFRF9KU19TRU1BUEhPUkU+MCl7aD1bXTtmb3IodmFyIGw9MDtsPGFyZ3VtZW50cy5sZW5ndGg7bCsrKWhbbF09bmV3IEVEKGFyZ3VtZW50c1tsXSl9ZWxzZSBoPVtdLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApOwp2YXIgbj1oLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gYSh0KX0pO2YuSC5wdXNoLmFwcGx5KGYuSCxuKTt2YXIgcD1lLmFwcGx5KGMsaCkscT1NYXRoLm1heCgxMDAsTmYoMSwzMDApKTtpZih0aGlzLmxlbmd0aD5xKWZvcihQKDQpLGQucHJ1bmVkPSEwO3RoaXMubGVuZ3RoPnE7KXRoaXMuc2hpZnQoKTt2YXIgcj10eXBlb2YgcCE9PSJib29sZWFuInx8cDtyZXR1cm4gb0UoZikmJnJ9O3ZhciBnPWMuc2xpY2UoMCkubWFwKGZ1bmN0aW9uKGgpe3JldHVybiBhKGgpfSk7dGhpcy5ILnB1c2guYXBwbHkodGhpcy5ILGcpO0lmKDUxKXx8KGZuLkgmJnV6KCksYmQockUpKTtWQihmdW5jdGlvbigpe2lmKCFkLmd0bURvbSl7ZC5ndG1Eb209ITA7dmFyIGg9e307Yy5wdXNoKChoLmV2ZW50PSJndG0uZG9tIixoKSl9fSk7ZkUoZnVuY3Rpb24oKXtpZighZC5ndG1Mb2FkKXtkLmd0bUxvYWQ9ITA7dmFyIGg9e307Yy5wdXNoKChoLmV2ZW50PSJndG0ubG9hZCIsaCkpfX0pfTsKZ0UucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24oYSl7cmV0dXJuIEFbRSgxOSldLnB1c2goYSl9O3ZhciBoRT1uZXcgZ0U7ZnVuY3Rpb24gbkUoYSxiKXt2YXIgYz1hLm1lc3NhZ2VDb250ZXh0LGQ9Yi5tZXNzYWdlQ29udGV4dDtpZihjLmV2ZW50SWQhPT1kLmV2ZW50SWQpcmV0dXJuIGMuZXZlbnRJZC1kLmV2ZW50SWQ7aWYoIU0oNTk1KSlyZXR1cm4gYy5wcmlvcml0eUlkLWQucHJpb3JpdHlJZDt2YXIgZSxmLGc7YTp7Zm9yKHZhciBoPShlPWMucHJpb3JpdHlRdWV1ZSkhPW51bGw/ZTpbYy5wcmlvcml0eUlkXSxsPShmPWQucHJpb3JpdHlRdWV1ZSkhPW51bGw/ZjpbZC5wcmlvcml0eUlkXSxuPU1hdGgubWluKGgubGVuZ3RoLGwubGVuZ3RoKSxwPTA7cDxuO3ArKylpZihoW3BdIT09bFtwXSl7Zz1oW3BdLWxbcF07YnJlYWsgYX1nPWgubGVuZ3RoLWwubGVuZ3RofXJldHVybiBnfQpmdW5jdGlvbiBrRShhKXtpZihhPT1udWxsfHx0eXBlb2YgYSE9PSJvYmplY3QiKXJldHVybiExO2lmKGEuZXZlbnQpcmV0dXJuITA7aWYoSGIoYSkpe3ZhciBiPWFbMF07aWYoYj09PSJjb25maWcifHxiPT09ImV2ZW50Inx8Yj09PSJqcyJ8fGI9PT0iZ2V0IilyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBtRShhKXtyZXR1cm57bWVzc2FnZTphLm1lc3NhZ2UsbWVzc2FnZUNvbnRleHQ6YS5tZXNzYWdlQ29udGV4dH19ZnVuY3Rpb24gc0UoYSxiLGMpe3JldHVybiBpRShhLGIsYyl9ZnVuY3Rpb24gdEUoYSxiKXtyZXR1cm4gakUoYSxiKX1mdW5jdGlvbiByRSgpe3BFKCl9ZnVuY3Rpb24gdUUoYSl7cmV0dXJuIGhFLnB1c2goYSl9O3ZhciB2RT1mdW5jdGlvbigpe307dkUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYSxiPVJqKEEubG9jYXRpb24uaHJlZik7KGE9Yi5ob3N0bmFtZStiLnBhdGhuYW1lKSYmVW0oImRsIixlbmNvZGVVUklDb21wb25lbnQoYSkpO3ZhciBjO3ZhciBkPUUoNSk7aWYoZCl7dmFyIGU9SWYoNyk/MTowLGY9RmsoKSxnPWYmJmYuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbj8xOjAsaD1mJiZmLnNvdXJjZXx8MCxsPUUoNik7Yz1kKyI7IitsKyI7IitnKyI7IitoKyI7IitlfWVsc2UgYz12b2lkIDA7dmFyIG49YztuJiZVbSgidGRwIixuKTt2YXIgcD1PcCghMCk7cCE9PXZvaWQgMCYmVW0oImZybSIsU3RyaW5nKHApKX07dmFyIHdFPW5ldyB2RTt2YXIgeEU9ZnVuY3Rpb24oKXt0aGlzLkg9WG0oKTt0aGlzLks9dm9pZCAwfSx5RT1mdW5jdGlvbihhLGIpe3JldHVybiBabShhLGZ1bmN0aW9uKGMpe3JldHVybiBjLmpiPjA/Yj9jLmpiKyJfIitXbShjKTpTdHJpbmcoYy5qYik6dm9pZCAwfSl9Owp4RS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe3ZhciBhPXRoaXM7aWYocGwoKXx8Zm4uSylVbSgiY3NwIixmdW5jdGlvbigpe3ZhciBiPXlFKGEuSCwhMCk7JG0oYS5IKTtyZXR1cm4gYn0sITEpLFVtKCJtZGUiLGZ1bmN0aW9uKCl7dmFyIGI9Y24uSCxjPXlFKGIsITEpOyRtKGIpO3JldHVybiBjfSwhMSksQS5hZGRFdmVudExpc3RlbmVyKCJzZWN1cml0eXBvbGljeXZpb2xhdGlvbiIsZnVuY3Rpb24oYil7aWYoYi5kaXNwb3NpdGlvbj09PSJlbmZvcmNlIil7UCgxNzkpO3ZhciBjPW5uKGIuZWZmZWN0aXZlRGlyZWN0aXZlKTtpZihjKXt2YXIgZDthOnt2YXIgZT1iLmJsb2NrZWRVUkksZj1rbjtpZihmbi5LJiZlKXt2YXIgZz1qbihjLGUpO2lmKGcpe3ZhciBoO2Q9KGg9bG4oZixjKSk9PW51bGw/dm9pZCAwOmhbZ107YnJlYWsgYX19ZD12b2lkIDB9dmFyIGw9ZDtpZihsKXt2YXIgbjthOnt0cnl7dmFyIHA9bmV3IFVSTChiLmJsb2NrZWRVUkkpLHE9cC5wYXRobmFtZS5pbmRleE9mKCI7Iik7Cm49cT49MD9wLm9yaWdpbitwLnBhdGhuYW1lLnN1YnN0cmluZygwLHEpOnAub3JpZ2luK3AucGF0aG5hbWU7YnJlYWsgYX1jYXRjaChEKXt9bj12b2lkIDB9dmFyIHI9bjtpZihyKXtmb3IodmFyIHQ9bShsKSx1PXQubmV4dCgpOyF1LmRvbmU7dT10Lm5leHQoKSl7dmFyIHY9dS52YWx1ZTtpZighdi5Fbyl7di5Fbz0hMDt2YXIgeD17ZXZlbnRJZDp2LmV2ZW50SWQscHJpb3JpdHlJZDp2LnByaW9yaXR5SWR9O2lmKHBsKCkpe3ZhciB5PXgsej17dHlwZToxLGJsb2NrZWRVcmw6cixlbmRwb2ludDp2LmVuZHBvaW50LHZpb2xhdGlvbjpiLmVmZmVjdGl2ZURpcmVjdGl2ZX07aWYocGwoKSl7dmFyIEM9TGwoIlRBR19ESUFHTk9TVElDUyIse2V2ZW50SWQ6eT09bnVsbD92b2lkIDA6eS5ldmVudElkLHByaW9yaXR5SWQ6eT09bnVsbD92b2lkIDA6eS5wcmlvcml0eUlkfSk7Qy50YWdEaWFnbm9zdGljcz16O29sKEMpfX16RShhLHYuZGVzdGluYXRpb25JZCx2LmVuZHBvaW50LGMpfX1tbihjLApiLmJsb2NrZWRVUkkpfX19fX0pfTt2YXIgekU9ZnVuY3Rpb24oYSxiLGMsZCl7YW4oYS5ILGIsYywxLGQpO1ZtKCJjc3AiLCEwKTtWbSgibWRlIiwhMCk7YyE9PTYxJiZjIT09NTYmJmEuSz09PXZvaWQgMCYmKGEuSz1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXthLkguamI+MCYmdG8oITEpO2EuSz12b2lkIDB9LDUwMCkpfSxBRT1uZXcgeEU7dmFyIEJFPWZ1bmN0aW9uKCl7dGhpcy5zZXF1ZW5jZU51bWJlcj0wfTtCRS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe3ZhciBhPXRoaXM7Q0UodGhpcyk7SWYoNjUpJiZVbSgibXRibCIsIjEiKTtVbSgidiIsIjMiKTtVbSgidCIsInQiKTtVbSgicGlkIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcobm0oam0uYmEuYmgpKX0pO1VtKCJndG0iLGZ1bmN0aW9uKCl7cmV0dXJuIGR1KCl9KTtVbSgic2VxIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcoKythLnNlcXVlbmNlTnVtYmVyKX0pO1VtKCJleHAiLGZ1bmN0aW9uKCl7cmV0dXJuIENwKCl9KX07dmFyIENFPWZ1bmN0aW9uKGEpe2lmKG5tKGptLmJhLmJoKT09PXZvaWQgMCl7dmFyIGI9ZnVuY3Rpb24oKXttbShqbS5iYS5iaCxEYigpKTthLnNlcXVlbmNlTnVtYmVyPTB9O2IoKTtjZChiLDg2NEU1KX1lbHNlIHBtKGptLmJhLmJoLGZ1bmN0aW9uKCl7YS5zZXF1ZW5jZU51bWJlcj0wfSk7YS5zZXF1ZW5jZU51bWJlcj0wfSxERT1uZXcgQkU7ZnVuY3Rpb24gRUUoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEFbYV19fQp2YXIgRkU9e30sR0U9KEZFWzE0XT1mdW5jdGlvbigpe3ZhciBhO3JldHVybihhPUEuY3J5cHRvKT09bnVsbD92b2lkIDA6YS5nZXRSYW5kb21WYWx1ZXN9LEZFWzE1XT1mdW5jdGlvbigpe3ZhciBhLGI7cmV0dXJuKGE9QS5jcnlwdG8pPT1udWxsP3ZvaWQgMDooYj1hLnN1YnRsZSk9PW51bGw/dm9pZCAwOmIuZGlnZXN0fSxGRVsxXT1FRSgiZmV0Y2giKSxGRVs2XT1FRSgiTWFwIiksRkVbMl09ZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb219LEZFWzhdPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIil9LEZFWzldPWZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5lbnRyaWVzfSxGRVsxMF09ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzfSxGRVs1XT1FRSgiUHJvbWlzZSIpLEZFWzEzXT1FRSgiUmVnRXhwIiksRkVbM109ZnVuY3Rpb24oKXtyZXR1cm4gSGMuc2VuZEJlYWNvbn0sRkVbN109RUUoIlNldCIpLEZFWzEyXT1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcucHJvdG90eXBlLmVuZHNXaXRofSwKRkVbMTFdPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aH0sRkVbNF09RUUoIlhNTEh0dHBSZXF1ZXN0IiksRkUpLEhFPXt9LElFPShIRVsxNV09ITAsSEUpO3ZhciBORT0vXihodHRwcz86KT9cL1wvLzsKZnVuY3Rpb24gaEYoKXt9O2Z1bmN0aW9uIGlGKCl7SWYoNjIpJiYoaHkoImRldGVjdF9saW5rX2NsaWNrX2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLndhaXRGb3JUYWdzKSE9PSEwfSksaHkoImRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHMiLGZ1bmN0aW9uKGEsYixjKXt2YXIgZDtyZXR1cm4oKGQ9Yy5vcHRpb25zKT09bnVsbD92b2lkIDA6ZC53YWl0Rm9yVGFncykhPT0hMH0pLGh5KCJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiLGZ1bmN0aW9uKGEsYixjKXt2YXIgZDtyZXR1cm4oKGQ9Yy5vcHRpb25zKT09bnVsbD92b2lkIDA6ZC5maXhNaXNzaW5nQXBpKSE9PSEwfSkpfTt2YXIgakY9ZnVuY3Rpb24oKXt0aGlzLkg9dGhpcy5ncHBTdHJpbmc9dm9pZCAwfTtqRi5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLkg9dGhpcy5ncHBTdHJpbmc9dm9pZCAwfTt2YXIga0Y9bmV3IGpGO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7bHQoe0d1OjAsRnU6MSxDdToyLHh1OjMsRHU6NCx5dTo1LEV1OjYsQXU6NyxCdTo4LHd1OjksenU6MTAsSHU6MTF9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJuIE51bWJlcihhKX0pO2x0KHtKdTowLEt1OjEsSXU6Mn0pLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gTnVtYmVyKGEpfSk7dmFyIGxGPWZ1bmN0aW9uKGEsYixjLGQpe3J0LmNhbGwodGhpcyk7dGhpcy5mZT1iO3RoaXMua2Q9Yzt0aGlzLmFjPWQ7dGhpcy5MYT1uZXcgTWFwO3RoaXMuaGU9MDt0aGlzLmphPW5ldyBNYXA7dGhpcy55YT1uZXcgTWFwO3RoaXMuWj12b2lkIDA7dGhpcy5LPWF9O3dhKGxGLHJ0KTtsRi5wcm90b3R5cGUuTj1mdW5jdGlvbigpe2RlbGV0ZSB0aGlzLkg7dGhpcy5MYS5jbGVhcigpO3RoaXMuamEuY2xlYXIoKTt0aGlzLnlhLmNsZWFyKCk7dGhpcy5aJiYobnQodGhpcy5LLCJtZXNzYWdlIix0aGlzLlopLGRlbGV0ZSB0aGlzLlopO2RlbGV0ZSB0aGlzLks7ZGVsZXRlIHRoaXMuYWM7cnQucHJvdG90eXBlLk4uY2FsbCh0aGlzKX07CnZhciBtRj1mdW5jdGlvbihhKXtpZihhLkgpcmV0dXJuIGEuSDthLmtkJiZhLmtkKGEuSyk/YS5IPWEuSzphLkg9TnAoYS5LLGEuZmUpO3ZhciBiO3JldHVybihiPWEuSCkhPW51bGw/YjpudWxsfSxvRj1mdW5jdGlvbihhLGIsYyl7aWYobUYoYSkpaWYoYS5IPT09YS5LKXt2YXIgZD1hLkxhLmdldChiKTtkJiZkKGEuSCxjKX1lbHNle3ZhciBlPWEuamEuZ2V0KGIpO2lmKGUmJmUuZGspe25GKGEpO3ZhciBmPSsrYS5oZTthLnlhLnNldChmLHtwZTplLnBlLElyOmUubm8oYykscGVyc2lzdGVudDpiPT09ImFkZEV2ZW50TGlzdGVuZXIifSk7YS5ILnBvc3RNZXNzYWdlKGUuZGsoYyxmKSwiKiIpfX19LG5GPWZ1bmN0aW9uKGEpe2EuWnx8KGEuWj1mdW5jdGlvbihiKXtpZihiLnNvdXJjZT09PWEuSCl0cnl7dmFyIGM7Yz1hLmFjP2EuYWMoYik6dm9pZCAwO2lmKGMpe3ZhciBkPWMuWXMsZT1hLnlhLmdldChkKTtpZihlKXtlLnBlcnNpc3RlbnR8fGEueWEuZGVsZXRlKGQpO3ZhciBmOyhmPQplLnBlKT09bnVsbHx8Zi5jYWxsKGUsZS5JcixjLnBheWxvYWQpfX19Y2F0Y2goZyl7fX0sbXQoYS5LLCJtZXNzYWdlIixhLlopKX07dmFyIHBGPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5saXN0ZW5lcixkPSgwLGEuX19ncHApKCJhZGRFdmVudExpc3RlbmVyIixjKTtkJiZjKGQsITApfSxxRj1mdW5jdGlvbihhLGIpeygwLGEuX19ncHApKCJyZW1vdmVFdmVudExpc3RlbmVyIixiLmxpc3RlbmVyLGIubGlzdGVuZXJJZCl9LHJGPXtubzpmdW5jdGlvbihhKXtyZXR1cm4gYS5saXN0ZW5lcn0sZGs6ZnVuY3Rpb24oYSxiKXt2YXIgYz17fTtyZXR1cm4gYy5fX2dwcENhbGw9e2NhbGxJZDpiLGNvbW1hbmQ6ImFkZEV2ZW50TGlzdGVuZXIiLHZlcnNpb246IjEuMSJ9LGN9LHBlOmZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5fX2dwcFJldHVybjthKGMucmV0dXJuVmFsdWUsYy5zdWNjZXNzKX19LHNGPXtubzpmdW5jdGlvbihhKXtyZXR1cm4gYS5saXN0ZW5lcn0sZGs6ZnVuY3Rpb24oYSxiKXt2YXIgYz17fTtyZXR1cm4gYy5fX2dwcENhbGw9e2NhbGxJZDpiLGNvbW1hbmQ6InJlbW92ZUV2ZW50TGlzdGVuZXIiLHZlcnNpb246IjEuMSIsCnBhcmFtZXRlcjphLmxpc3RlbmVySWR9LGN9LHBlOmZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5fX2dwcFJldHVybixkPWMucmV0dXJuVmFsdWUuZGF0YTthPT1udWxsfHxhKGQsYy5zdWNjZXNzKX19O2Z1bmN0aW9uIHRGKGEpe3ZhciBiPXt9O3ZmKGEuZGF0YSk/Yj1KU09OLnBhcnNlKGEuZGF0YSk6Yj1hLmRhdGE7cmV0dXJue3BheWxvYWQ6YixZczpiLl9fZ3BwUmV0dXJuLmNhbGxJZH19CnZhciB1Rj1mdW5jdGlvbihhLGIpe3ZhciBjO2M9KGI9PT12b2lkIDA/e306YikudGltZW91dE1zO3J0LmNhbGwodGhpcyk7dGhpcy5jYWxsZXI9bmV3IGxGKGEsIl9fZ3BwTG9jYXRvciIsZnVuY3Rpb24oZCl7cmV0dXJuIHR5cGVvZiBkLl9fZ3BwPT09ImZ1bmN0aW9uIn0sdEYpO3RoaXMuY2FsbGVyLkxhLnNldCgiYWRkRXZlbnRMaXN0ZW5lciIscEYpO3RoaXMuY2FsbGVyLmphLnNldCgiYWRkRXZlbnRMaXN0ZW5lciIsckYpO3RoaXMuY2FsbGVyLkxhLnNldCgicmVtb3ZlRXZlbnRMaXN0ZW5lciIscUYpO3RoaXMuY2FsbGVyLmphLnNldCgicmVtb3ZlRXZlbnRMaXN0ZW5lciIsc0YpO3RoaXMudGltZW91dE1zPWMhPW51bGw/Yzo1MDB9O3dhKHVGLHJ0KTt1Ri5wcm90b3R5cGUuTj1mdW5jdGlvbigpe3RoaXMuY2FsbGVyLmRpc3Bvc2UoKTtydC5wcm90b3R5cGUuTi5jYWxsKHRoaXMpfTsKdUYucHJvdG90eXBlLmFkZEV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPUhwKGZ1bmN0aW9uKCl7YSh2RiwhMCl9KSxkPXRoaXMudGltZW91dE1zPT09LTE/dm9pZCAwOnNldFRpbWVvdXQoZnVuY3Rpb24oKXtjKCl9LHRoaXMudGltZW91dE1zKTtvRih0aGlzLmNhbGxlciwiYWRkRXZlbnRMaXN0ZW5lciIse2xpc3RlbmVyOmZ1bmN0aW9uKGUsZil7Y2xlYXJUaW1lb3V0KGQpO3RyeXt2YXIgZzt2YXIgaDsoKGg9ZS5waW5nRGF0YSk9PW51bGw/dm9pZCAwOmguZ3BwVmVyc2lvbik9PT12b2lkIDB8fGUucGluZ0RhdGEuZ3BwVmVyc2lvbj09PSIxInx8ZS5waW5nRGF0YS5ncHBWZXJzaW9uPT09IjEuMCI/KGIucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLmxpc3RlbmVySWQpLGc9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToxLGdwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19JU19ERVBSRUNBVEVEX1NQRUMiLAphcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX19KTpBcnJheS5pc0FycmF5KGUucGluZ0RhdGEuYXBwbGljYWJsZVNlY3Rpb25zKT9nPWU6KGIucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLmxpc3RlbmVySWQpLGc9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToyLGdwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19FWFBFQ1RFRF9BUFBMSUNBVElPTl9TRUNUSU9OX0FSUkFZIixhcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX19KTthKGcsZil9Y2F0Y2gobCl7aWYoZT09bnVsbD8wOmUubGlzdGVuZXJJZCl0cnl7Yi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCl9Y2F0Y2gobil7YSh3RiwhMCk7cmV0dXJufWEoeEYsITApfX19KX07CnVGLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEpe29GKHRoaXMuY2FsbGVyLCJyZW1vdmVFdmVudExpc3RlbmVyIix7bGlzdGVuZXI6ZnVuY3Rpb24oKXt9LGxpc3RlbmVySWQ6YX0pfTsKdmFyIHhGPXtldmVudE5hbWU6InNpZ25hbFN0YXR1cyIsZGF0YToicmVhZHkiLHBpbmdEYXRhOntpbnRlcm5hbEVycm9yU3RhdGU6MixncHBTdHJpbmc6IkdQUF9FUlJPUl9TVFJJTkdfVU5BVkFJTEFCTEUiLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfSxsaXN0ZW5lcklkOi0xfSx2Rj17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7Z3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0xJU1RFTkVSX1JFR0lTVFJBVElPTl9USU1FT1VUIixpbnRlcm5hbEVycm9yU3RhdGU6MixhcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX0sbGlzdGVuZXJJZDotMX0sd0Y9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2dwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19SRU1PVkVfRVZFTlRfTElTVEVORVJfRVJST1IiLGludGVybmFsRXJyb3JTdGF0ZToyLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfSxsaXN0ZW5lcklkOi0xfTtmdW5jdGlvbiB5RihhKXt2YXIgYjtpZighKGI9YS5waW5nRGF0YS5zaWduYWxTdGF0dXM9PT0icmVhZHkiKSl7dmFyIGM9YS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnM7Yj0hY3x8Yy5sZW5ndGg9PT0xJiZjWzBdPT09LTF9aWYoYil7a0YuZ3BwU3RyaW5nPWEucGluZ0RhdGEuZ3BwU3RyaW5nO3ZhciBkPWEucGluZ0RhdGEuYXBwbGljYWJsZVNlY3Rpb25zLmpvaW4oIiwiKTtrRi5IPWR9fWZ1bmN0aW9uIHpGKCl7dHJ5e3ZhciBhPW5ldyB1RihBLHt0aW1lb3V0TXM6LTF9KTttRihhLmNhbGxlcikmJmEuYWRkRXZlbnRMaXN0ZW5lcih5Ril9Y2F0Y2goYil7fX07ZnVuY3Rpb24gQUYoKXt2YXIgYT1bWyJjdiIsRSgxKV0sWyJydiIsRSgxNCldLFsidGMiLGNBLnRhZ3MuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBkfSkubGVuZ3RoXV0sYj1KZigxNSk7YiYmYS5wdXNoKFsieCIsYl0pO3ZhciBjPUNwKCk7YyYmYS5wdXNoKFsidGFnX2V4cCIsY10pO3JldHVybiBhfTt2YXIgQkY9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD17fTt0aGlzLks9e307ZnooZnVuY3Rpb24oYil7dmFyIGM9Yi5ldmVudElkLGQ9Yi50ZixlPVtdLGY9YS5IW2NdfHxbXTtmLmxlbmd0aCYmZS5wdXNoKFsiaGYiLGYuam9pbigiLiIpXSk7dmFyIGc9YS5LW2NdfHxbXTtnLmxlbmd0aCYmZS5wdXNoKFsiaHQiLGcuam9pbigiLiIpXSk7ZCYmKGRlbGV0ZSBhLkhbY10sZGVsZXRlIGEuS1tjXSk7cmV0dXJuIGV9KX0sQ0Y9ZnVuY3Rpb24oKXt2YXIgYT0wO3JldHVybiBmdW5jdGlvbihiKXtzd2l0Y2goYil7Y2FzZSAxOmF8PTE7YnJlYWs7Y2FzZSAyOmF8PTI7YnJlYWs7Y2FzZSAzOmF8PTR9cmV0dXJuIGF9fSxERjt2YXIgRUY9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0iIjtmbi5OJiZNKDUxNikmJmZ6KGZ1bmN0aW9uKCl7dmFyIGI9W107YS5IJiZiLnB1c2goWyJwc2QiLGEuSF0pO3JldHVybiBifSl9LEZGO2Z1bmN0aW9uIEdGKCl7cmV0dXJuITF9CmZ1bmN0aW9uIEhGKCl7dmFyIGE9e307cmV0dXJuIGZ1bmN0aW9uKGIsYyxkKXt9fTtmdW5jdGlvbiBJRigpe3ZhciBhPUpGO3JldHVybiBmdW5jdGlvbihiLGMsZCl7dmFyIGU9ZCYmZC5ldmVudDtLRihjKTt2YXIgZj1CaChiKT92b2lkIDA6MSxnPW5ldyBrYjtHYihjLGZ1bmN0aW9uKHIsdCl7dmFyIHU9VWQodCx2b2lkIDAsZik7dT09PXZvaWQgMCYmdCE9PXZvaWQgMCYmUCg0NCk7Zy5zZXQocix1KX0pO2EuUWIoUWYoKSk7dmFyIGg9e1JuOmhnKGIpLGV2ZW50SWQ6ZT09bnVsbD92b2lkIDA6ZS5pZCxwcmlvcml0eUlkOmUhPT12b2lkIDA/ZS5wcmlvcml0eUlkOnZvaWQgMCxwcmlvcml0eVF1ZXVlOmUhPT12b2lkIDA/ZS5wcmlvcml0eVF1ZXVlOnZvaWQgMCx3ZzplIT09dm9pZCAwP2Z1bmN0aW9uKHIpe2UubGQud2cocil9OnZvaWQgMCxQYjpmdW5jdGlvbigpe3JldHVybiBifSxsb2c6ZnVuY3Rpb24oKXt9LE5yOntpbmRleDpkPT1udWxsP3ZvaWQgMDpkLmluZGV4LHR5cGU6ZD09bnVsbD92b2lkIDA6ZC50eXBlLG5hbWU6ZD09bnVsbD92b2lkIDA6ZC5uYW1lfSwKaXQ6ISFLQShiLDMpLG9yaWdpbmFsRXZlbnREYXRhOmU9PW51bGw/dm9pZCAwOmUub3JpZ2luYWxFdmVudERhdGF9O2UmJmUuY2FjaGVkTW9kZWxWYWx1ZXMmJihoLmNhY2hlZE1vZGVsVmFsdWVzPXtndG06ZS5jYWNoZWRNb2RlbFZhbHVlcy5ndG0sZWNvbW1lcmNlOmUuY2FjaGVkTW9kZWxWYWx1ZXMuZWNvbW1lcmNlfSk7aWYoR0YoKSl7dmFyIGw9SEYoKSxuLHA7aC5BYj17d2s6W10seWc6e30samM6ZnVuY3Rpb24ocix0LHUpe3Q9PT0xJiYobj1yKTt0PT09NyYmKHA9dSk7bChyLHQsdSl9LGVpOlZoKCl9O2gubG9nPWZ1bmN0aW9uKHIpe3ZhciB0PU9hLmFwcGx5KDEsYXJndW1lbnRzKTtuJiZsKG4sNCx7bGV2ZWw6cixzb3VyY2U6cCxtZXNzYWdlOnR9KX19CnZhciBxPXJmKGEsaCxbYixnXSk7YS5RYigpO3EgaW5zdGFuY2VvZiBUYSYmKHEudHlwZT09PSJyZXR1cm4iP3E9cS5kYXRhOnE9dm9pZCAwKTtyZXR1cm4gVGQocSx2b2lkIDAsZil9fWZ1bmN0aW9uIEtGKGEpe3ZhciBiPWEuZ3RtT25TdWNjZXNzLGM9YS5ndG1PbkZhaWx1cmU7eWIoYikmJihhLmd0bU9uU3VjY2Vzcz1mdW5jdGlvbigpe2JkKGIpfSk7eWIoYykmJihhLmd0bU9uRmFpbHVyZT1mdW5jdGlvbigpe2JkKGMpfSl9O3ZhciBMRj1mdW5jdGlvbihhKXtpeChhKX07dmFyIE1GPWZ1bmN0aW9uKGEpe1YoYSxILkoudGcsY28uaWEuY2IpfTtmdW5jdGlvbiBORigpe3JldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjApfTt2YXIgT0Y9W0YuRC56aV0ubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLnNsaWNlKDIpfSk7dmFyIFBGPWZ1bmN0aW9uKGEpe1UoYSxGLkQuemksYWwoOCxORikpfTtmdW5jdGlvbiBRRihhKXt9UUYuUD0iaW50ZXJuYWwuYWRkQWRzQ2xpY2tJZHMiO2Z1bmN0aW9uIFJGKGEsYil7dmFyIGM9dGhpczt9UkYucHVibGljTmFtZT0iYWRkQ29uc2VudExpc3RlbmVyIjt2YXIgU0Y9ITE7ZnVuY3Rpb24gVEYoYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2IpaWYoU0YpdHJ5e2FbYl0oKX1jYXRjaChjKXtQKDc3KX1lbHNlIGFbYl0oKX1mdW5jdGlvbiBVRihhLGIsYyl7dmFyIGQ9dGhpcyxlO3JldHVybiBlfVVGLlA9ImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFZGKGEsYixjKXt9VkYucHVibGljTmFtZT0iYWRkRG9jdW1lbnRFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBXRihhLGIsYyxkKXt9V0YucHVibGljTmFtZT0iYWRkRWxlbWVudEV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFhGKGEpe3JldHVybiBhLlQueGIoKX07ZnVuY3Rpb24gWUYoYSl7fVlGLnB1YmxpY05hbWU9ImFkZEV2ZW50Q2FsbGJhY2siOwp2YXIgWkY9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/YTpTdHJpbmcocmooKSl9LGJHPWZ1bmN0aW9uKGEsYil7JEYoYSwiaW5pdCIsITEpfHwoYUcoYSwiaW5pdCIsITApLGIoKSl9LCRGPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jRyhhKTtyZXR1cm4gT2IoZCxiLGMpfSxkRz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1jRyhhKSxmPU9iKGUsYixkKSxnPWMoZik7cmV0dXJuIGVbYl09Z30sYUc9ZnVuY3Rpb24oYSxiLGMpe2NHKGEpW2JdPWN9LGNHPWZ1bmN0aW9uKGEpe3ZhciBiPWtqKCJhdXRvRXZlbnRzU2V0dGluZ3MiLGZ1bmN0aW9uKCl7cmV0dXJue319KTtiLmhhc093blByb3BlcnR5KGEpfHwoYlthXT17fSk7cmV0dXJuIGJbYV19LGVHPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD17ZXZlbnQ6YiwiZ3RtLmVsZW1lbnQiOmEsImd0bS5lbGVtZW50Q2xhc3NlcyI6b2QoYSwiY2xhc3NOYW1lIiksImd0bS5lbGVtZW50SWQiOmEuZm9yfHxlZChhLCJpZCIpfHwKIiIsImd0bS5lbGVtZW50VGFyZ2V0IjphLmZvcm1UYXJnZXR8fG9kKGEsInRhcmdldCIpfHwiIn07YyYmKGRbImd0bS50cmlnZ2VycyJdPWMuam9pbigiLCIpKTtkWyJndG0uZWxlbWVudFVybCJdPShhLmF0dHJpYnV0ZXMmJmEuYXR0cmlidXRlcy5mb3JtYWN0aW9uP2EuZm9ybUFjdGlvbjoiIil8fGEuYWN0aW9ufHxvZChhLCJocmVmIil8fGEuc3JjfHxhLmNvZGV8fGEuY29kZWJhc2V8fCIiO3JldHVybiBkfTsKZnVuY3Rpb24gaUcoYSl7aWYoYS5mb3JtKXt2YXIgYjtyZXR1cm4oKGI9YS5mb3JtKT09bnVsbD8wOmIudGFnTmFtZSk/YS5mb3JtOkIuZ2V0RWxlbWVudEJ5SWQoYS5mb3JtKX1yZXR1cm4gaGQoYSxbImZvcm0iXSwxMDApfTsKZnVuY3Rpb24gbUcoYSl7fW1HLlA9ImludGVybmFsLmFkZEZvcm1BYmFuZG9ubWVudExpc3RlbmVyIjtmdW5jdGlvbiBuRyhhLGIsYyxkKXt9Cm5HLlA9ImludGVybmFsLmFkZEZvcm1EYXRhIjsKZnVuY3Rpb24gc0coYSl7fXNHLlA9ImludGVybmFsLmFkZEdhU2VuZExpc3RlbmVyIjtmdW5jdGlvbiB0RyhhKXtpZighYSlyZXR1cm57fTt2YXIgYj1hLk5yO3JldHVybiBKQShiLnR5cGUsYi5pbmRleCxiLm5hbWUpfWZ1bmN0aW9uIHVHKGEpe2lmKCFhKXJldHVybnt9O3ZhciBiPXtvcmlnaW5hdGluZ0VudGl0eTp0RyhhKX07YS5wcmlvcml0eVF1ZXVlJiYoYi5wcmlvcml0eVF1ZXVlPWEucHJpb3JpdHlRdWV1ZSk7cmV0dXJuIGJ9Owp2YXIgd0c9ZnVuY3Rpb24oYSxiLGMpe3ZHKCkudXBkYXRlWm9uZShhLGIsYyl9LHlHPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9e30sZz12RygpO2M9YyYmUmIoYyx4Ryk7Zm9yKHZhciBoPWcuY3JlYXRlWm9uZShhLGMpLGw9MDtsPGIubGVuZ3RoO2wrKyl7dmFyIG49U3RyaW5nKGJbbF0pO2lmKGcucmVnaXN0ZXJDaGlsZChuLEUoNSksaCkpe3ZhciBwPW4scT1hLHI9Zix0PWQsdT1lO2lmKFNiKHAsIkdUTS0iKSloQShwLHZvaWQgMCwhMSx7c291cmNlOjEsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjohMH0pO2Vsc2V7dmFyIHY9cUMoImpzIixNYigpKTtoQShwLHZvaWQgMCwhMCx7c291cmNlOjEsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjohMH0pO3ZhciB4PXtvcmlnaW5hdGluZ0VudGl0eTp0LGluaGVyaXRQYXJlbnRDb25maWc6dX07bUQodixxLHgpO21EKHJDKHAscikscSx4KX19fXJldHVybiBofSx2Rz1mdW5jdGlvbigpe3JldHVybiBraigiem9uZXMiLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB6R30pfSwKQUc9e3pvbmU6MSxjbjoxLGNzczoxLGV3OjEsZXE6MSxnZToxLGd0OjEsbGM6MSxsZToxLGx0OjEscmU6MSxzdzoxLHVtOjF9LHhHPXtjbDpbImVjbCJdLGVjbDpbImNsIl0sZWhsOlsiaGwiXSxnYWF3YzpbImdvb2d0YWciXSxobDpbImVobCJdfSx6Rz1mdW5jdGlvbigpe3RoaXMuSD17fTt0aGlzLks9e307dGhpcy5OPTB9O2s9ekcucHJvdG90eXBlO2suaXNBY3RpdmU9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGMsZD0wO2Q8YS5sZW5ndGgmJiEoYz10aGlzLkhbYVtkXV0pO2QrKyk7aWYoIWMpcmV0dXJuITA7aWYoIXRoaXMuaXNBY3RpdmUoW2Mua2tdLGIpKXJldHVybiExO2Zvcih2YXIgZT0wO2U8Yy5XZy5sZW5ndGg7ZSsrKWlmKHRoaXMuS1tjLldnW2VdXS5jZihiKSlyZXR1cm4hMDtyZXR1cm4hMX07ay5nZXRJc0FsbG93ZWRGbj1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLmlzQWN0aXZlKGEsYikpcmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuITF9O2Zvcih2YXIgYyxkPTA7ZDxhLmxlbmd0aCYmCiEoYz10aGlzLkhbYVtkXV0pO2QrKyk7aWYoIWMpcmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuITB9O2Zvcih2YXIgZT1bXSxmPTA7ZjxjLldnLmxlbmd0aDtmKyspe3ZhciBnPXRoaXMuS1tjLldnW2ZdXTtnLmNmKGIpJiZlLnB1c2goZyl9aWYoIWUubGVuZ3RoKXJldHVybiBmdW5jdGlvbigpe3JldHVybiExfTt2YXIgaD10aGlzLmdldElzQWxsb3dlZEZuKFtjLmtrXSxiKTtyZXR1cm4gZnVuY3Rpb24obCxuKXtuPW58fFtdO2lmKCFoKGwsbikpcmV0dXJuITE7Zm9yKHZhciBwPTA7cDxlLmxlbmd0aDsrK3ApaWYoZVtwXS5OKGwsbikpcmV0dXJuITA7cmV0dXJuITF9fTtrLnVucmVnaXN0ZXJDaGlsZD1mdW5jdGlvbihhKXtmb3IodmFyIGI9MDtiPGEubGVuZ3RoO2IrKylkZWxldGUgdGhpcy5IW2FbYl1dfTtrLmNyZWF0ZVpvbmU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1TdHJpbmcoKyt0aGlzLk4pO3RoaXMuS1tjXT1uZXcgQkcoYSxiKTtyZXR1cm4gY307ay51cGRhdGVab25lPWZ1bmN0aW9uKGEsCmIsYyl7dmFyIGQ9dGhpcy5LW2FdO2QmJmQuUihiLGMpfTtrLnJlZ2lzdGVyQ2hpbGQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMuSFthXSxlO2lmKGU9IWQpbGooKSxlPWpqLkhbYV07aWYoZXx8IWQmJkVrKGEpfHxkJiZkLmtrIT09YilyZXR1cm4hMTtpZihkKXJldHVybiBkLldnLnB1c2goYyksITE7dGhpcy5IW2FdPXtrazpiLFdnOltjXX07cmV0dXJuITB9O3ZhciBCRz1mdW5jdGlvbihhLGIpe3RoaXMuSz1udWxsO3RoaXMuSD1be2V2ZW50SWQ6YSxjZjohMH1dO2lmKGIpe3RoaXMuSz17fTtmb3IodmFyIGM9MDtjPGIubGVuZ3RoO2MrKyl0aGlzLktbYltjXV09ITB9fTtCRy5wcm90b3R5cGUuUj1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuSFt0aGlzLkgubGVuZ3RoLTFdO2E8PWMuZXZlbnRJZHx8Yy5jZiE9PWImJnRoaXMuSC5wdXNoKHtldmVudElkOmEsY2Y6Yn0pfTtCRy5wcm90b3R5cGUuY2Y9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXRoaXMuSC5sZW5ndGgtMTtiPj0wO2ItLSlpZih0aGlzLkhbYl0uZXZlbnRJZDw9CmEpcmV0dXJuIHRoaXMuSFtiXS5jZjtyZXR1cm4hMX07QkcucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXtiPWJ8fFtdO2lmKCF0aGlzLkt8fEFHW2FdfHx0aGlzLktbYV0pcmV0dXJuITA7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDsrK2MpaWYodGhpcy5LW2JbY11dKXJldHVybiEwO3JldHVybiExfTtmdW5jdGlvbiBDRyhhKXt2YXIgYj1taigiem9uZXMiKTtyZXR1cm4gYj9iLmdldElzQWxsb3dlZEZuKHdrKCksYSk6ZnVuY3Rpb24oKXtyZXR1cm4hMH19ZnVuY3Rpb24gREcoKXt2YXIgYT1taigiem9uZXMiKTthJiZhLnVucmVnaXN0ZXJDaGlsZCh3aygpKX0KZnVuY3Rpb24gRUcoKXtrQih2aygpLGZ1bmN0aW9uKGEpe3ZhciBiPWEub3JpZ2luYWxFdmVudERhdGFbImd0bS51bmlxdWVFdmVudElkIl0sYz1taigiem9uZXMiKTtyZXR1cm4gYz9jLmlzQWN0aXZlKHdrKCksYik6ITB9KTtoQih2aygpLGZ1bmN0aW9uKGEpe3ZhciBiLGM7Yj1hLmVudGl0eUlkO2M9YS5zZWN1cml0eUdyb3VwcztyZXR1cm4gQ0coTnVtYmVyKGEub3JpZ2luYWxFdmVudERhdGFbImd0bS51bmlxdWVFdmVudElkIl0pKShiLGMpfSl9O3ZhciBGRz1mdW5jdGlvbihhLGIpe3RoaXMudGFnSWQ9YTt0aGlzLmNhbm9uaWNhbElkPWJ9OwpmdW5jdGlvbiBHRyhhLGIpe3ZhciBjPXRoaXM7aWYoIWxoKGEpfHwhZWgoYikmJiFnaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGQ9VGQoYix0aGlzLlQsMSl8fHt9LGU9ZC5maXJzdFBhcnR5VXJsLGY9ZC5vbkxvYWQsZz1kLmxvYWRCeURlc3RpbmF0aW9uPT09ITAsaD1kLmlzR3RtRXZlbnQ9PT0hMDtURihbZnVuY3Rpb24oKXtMKGMsImxvYWRfZ29vZ2xlX3RhZ3MiLGEsZSl9XSk7aWYoZyl7aWYoR2soYSkpcmV0dXJuIGF9ZWxzZSBpZihFayhhKSlyZXR1cm4gYTt2YXIgbD02LG49WEYodGhpcyk7aCYmKGw9Nyk7bi5QYigpPT09Il9fem9uZSImJihsPTEpO3ZhciBwPXtzb3VyY2U6bCxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOiEwfSxxPWZ1bmN0aW9uKHIpe2hCKHIsZnVuY3Rpb24odCl7Zm9yKHZhciB1PQppQigpLmdldEV4dGVybmFsUmVzdHJpY3Rpb25zKDAsdmsoKSksdj1tKHUpLHg9di5uZXh0KCk7IXguZG9uZTt4PXYubmV4dCgpKXt2YXIgeT14LnZhbHVlO2lmKCF5KHQpKXJldHVybiExfXJldHVybiEwfSwhMCk7a0IocixmdW5jdGlvbih0KXtmb3IodmFyIHU9aUIoKS5nZXRFeHRlcm5hbFJlc3RyaWN0aW9ucygxLHZrKCkpLHY9bSh1KSx4PXYubmV4dCgpOyF4LmRvbmU7eD12Lm5leHQoKSl7dmFyIHk9eC52YWx1ZTtpZigheSh0KSlyZXR1cm4hMX1yZXR1cm4hMH0sITApO2YmJmYobmV3IEZHKGEscikpfTtnP25BKGEsZSxwLHEpOmhBKGEsZSwhU2IoYSwiR1RNLSIpLHAscSk7ZiYmbi5QYigpPT09Il9fem9uZSImJnlHKE51bWJlci5NSU5fU0FGRV9JTlRFR0VSLFthXSxudWxsLHRHKFhGKHRoaXMpKSk7cmV0dXJuIGF9R0cuUD0iaW50ZXJuYWwubG9hZEdvb2dsZVRhZyI7ZnVuY3Rpb24gSEcoYSl7cmV0dXJuIG5ldyBLZCgiIixmdW5jdGlvbihiKXt2YXIgYz10aGlzLmV2YWx1YXRlKGIpO2lmKGMgaW5zdGFuY2VvZiBLZClyZXR1cm4gbmV3IEtkKCIiLGZ1bmN0aW9uKCl7dmFyIGQ9T2EuYXBwbHkoMCxhcmd1bWVudHMpLGU9dGhpcyxmPUVkKFhGKHRoaXMpLG51bGwpO2YuZXZlbnRJZD1hLmV2ZW50SWQ7Zi5wcmlvcml0eUlkPWEucHJpb3JpdHlJZDtmLm9yaWdpbmFsRXZlbnREYXRhPWEub3JpZ2luYWxFdmVudERhdGE7dmFyIGc9ZC5tYXAoZnVuY3Rpb24obCl7cmV0dXJuIGUuZXZhbHVhdGUobCl9KSxoPXRoaXMuVC53YigpO2gudWUoZik7cmV0dXJuIGMuTmMuYXBwbHkoYyxbaF0uY29uY2F0KHcoZykpKX0pfSl9O2Z1bmN0aW9uIElHKGEsYixjKXt2YXIgZD10aGlzO31JRy5QPSJpbnRlcm5hbC5hZGRHb29nbGVUYWdSZXN0cmljdGlvbiI7CmZ1bmN0aW9uIFBHKGEsYil7fVBHLlA9ImludGVybmFsLmFkZEhpc3RvcnlDaGFuZ2VMaXN0ZW5lciI7ZnVuY3Rpb24gUUcoYSxiLGMpe31RRy5wdWJsaWNOYW1lPSJhZGRXaW5kb3dFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBSRyhhLGIpe2lmKCFsaChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciXSxhcmd1bWVudHMpO0wodGhpcywiYWNjZXNzX2dsb2JhbHMiLCJ3cml0ZSIsYSk7TCh0aGlzLCJhY2Nlc3NfZ2xvYmFscyIsInJlYWQiLGIpO3ZhciBjPWEuc3BsaXQoIi4iKSxkPWIuc3BsaXQoIi4iKSxlPUEsZj1bZSxCXSxnPVViKGUsYyxmKSxoPVViKGUsZCxmKTtpZihnPT09dm9pZCAwfHxoPT09dm9pZCAwKXJldHVybiExO2dbY1tjLmxlbmd0aC0xXV09aFtkW2QubGVuZ3RoLTFdXTtyZXR1cm4hMH1SRy5wdWJsaWNOYW1lPSJhbGlhc0luV2luZG93IjtmdW5jdGlvbiBTRyhhLGIsYyl7fVNHLlA9ImludGVybmFsLmFwcGVuZFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gVEcoYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCIuLi5hbnkiXSxhcmd1bWVudHMpO0wodGhpcywiYWNjZXNzX2dsb2JhbHMiLCJleGVjdXRlIixhKTtmb3IodmFyIGM9YS5zcGxpdCgiLiIpLGQ9QSxlPWRbY1swXV0sZj0xO2UmJmY8Yy5sZW5ndGg7ZisrKWlmKGQ9ZSxlPWVbY1tmXV0sZD09PUF8fGQ9PT1CKXJldHVybjtpZihBZChlKSE9PSJmdW5jdGlvbiIpcmV0dXJuO2Zvcih2YXIgZz1bXSxoPTE7aDxhcmd1bWVudHMubGVuZ3RoO2grKylnLnB1c2goVGQoYXJndW1lbnRzW2hdLHRoaXMuVCwyKSk7dmFyIGw9dGhpcy5ULlBqKCkoZSxkLGcpO2I9VWQobCx0aGlzLlQsMik7Yj09PXZvaWQgMCYmbCE9PXZvaWQgMCYmUCg0NSk7cmV0dXJuIGJ9ClRHLnB1YmxpY05hbWU9ImNhbGxJbldpbmRvdyI7ZnVuY3Rpb24gVUcoYSl7aWYoIWhoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJmdW5jdGlvbiJdLGFyZ3VtZW50cyk7dmFyIGI9dGhpcy5UO2JkKGZ1bmN0aW9uKCl7YSBpbnN0YW5jZW9mIEtkJiZhLk5jKGIpfSk7fVVHLnB1YmxpY05hbWU9ImNhbGxMYXRlciI7ZnVuY3Rpb24gVkcoYSl7aWYoIWhoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJmdW5jdGlvbiJdLGFyZ3VtZW50cyk7TCh0aGlzLCJwcm9jZXNzX2RvbV9ldmVudHMiLCJkb2N1bWVudCIsIkRPTUNvbnRlbnRMb2FkZWQiKTtMKHRoaXMsInByb2Nlc3NfZG9tX2V2ZW50cyIsImRvY3VtZW50IiwicmVhZHlzdGF0ZWNoYW5nZSIpO0wodGhpcywicHJvY2Vzc19kb21fZXZlbnRzIiwid2luZG93IiwibG9hZCIpO1ZCKFRkKGEpKTt9VkcuUD0iY2FsbE9uRG9tUmVhZHkiO2Z1bmN0aW9uIFdHKGEpe31XRy5QPSJjYWxsT25XaW5kb3dMb2FkIjt2YXIgWUc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1ubShYRyl8fHt9LGQ9Y1thXXx8e307aWYoZFtiXSlyZXR1cm4hMTt2YXIgZT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGQpO2VbYl09ITA7dmFyIGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjKTtmW2FdPWU7bW0oWEcsZik7cmV0dXJuITB9LFhHPWptLmJhLmhyO2Z1bmN0aW9uIFpHKGEsYil7cmV0dXJuIGN9WkcuUD0iaW50ZXJuYWwuY2xhaW1EZXN0aW5hdGlvbiI7ZnVuY3Rpb24gJEcoYSxiKXt2YXIgYztyZXR1cm4gY30kRy5QPSJpbnRlcm5hbC5jb21wdXRlR3RtUGFyYW1ldGVyIjtmdW5jdGlvbiBhSChhLGIpe3ZhciBjPXRoaXM7fWFILlA9ImludGVybmFsLmNvbnNlbnRTY2hlZHVsZUZpcnN0VHJ5IjtmdW5jdGlvbiBiSChhLGIpe3ZhciBjPXRoaXM7fWJILlA9ImludGVybmFsLmNvbnNlbnRTY2hlZHVsZVJldHJ5IjtmdW5jdGlvbiBjSChhKXt2YXIgYjtyZXR1cm4gYn1jSC5QPSJpbnRlcm5hbC5jb3B5RnJvbUNyb3NzQ29udGFpbmVyRGF0YSI7ZnVuY3Rpb24gZEgoYSxiKXt2YXIgYztpZighbGgoYSl8fCFxaChiKSYmYiE9PW51bGwmJiFnaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwibnVtYmVyfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7TCh0aGlzLCJyZWFkX2RhdGFfbGF5ZXIiLGEpO3ZhciBkOyhifHwyKSE9PTI/ZD11QShhLDEpOmQ9cUEockEsYSxbQSxCXSk7Yz1kO3ZhciBlPVVkKGMsdGhpcy5ULEJoKFhGKHRoaXMpLlBiKCkpPzI6MSk7ZT09PXZvaWQgMCYmYyE9PXZvaWQgMCYmUCg0NSk7cmV0dXJuIGV9ZEgucHVibGljTmFtZT0iY29weUZyb21EYXRhTGF5ZXIiOwpmdW5jdGlvbiBlSChhKXt2YXIgYj12b2lkIDA7TCh0aGlzLCJyZWFkX2RhdGFfbGF5ZXIiLGEpO2E9U3RyaW5nKGEpO3ZhciBjO2E6e2Zvcih2YXIgZD1YRih0aGlzKS5jYWNoZWRNb2RlbFZhbHVlcyxlPW0oYS5zcGxpdCgiLiIpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7aWYoZD09bnVsbCl7Yz12b2lkIDA7YnJlYWsgYX1kPWRbZi52YWx1ZV19Yz1kfWI9VWQoYyx0aGlzLlQsMSk7cmV0dXJuIGJ9ZUguUD0iaW50ZXJuYWwuY29weUZyb21EYXRhTGF5ZXJDYWNoZSI7ZnVuY3Rpb24gZkgoYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO0wodGhpcywiYWNjZXNzX2dsb2JhbHMiLCJyZWFkIixhKTt2YXIgYz1hLnNwbGl0KCIuIiksZD1VYihBLGMsW0EsQl0pO2lmKCFkKXJldHVybjt2YXIgZT1kW2NbYy5sZW5ndGgtMV1dO2I9VWQoZSx0aGlzLlQsMik7Yj09PXZvaWQgMCYmZSE9PXZvaWQgMCYmUCg0NSk7cmV0dXJuIGJ9ZkgucHVibGljTmFtZT0iY29weUZyb21XaW5kb3ciO2Z1bmN0aW9uIGdIKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gVWQoYix0aGlzLlQsMSl9Z0guUD0iaW50ZXJuYWwuY29weUtleUZyb21XaW5kb3ciO3ZhciBoSD1mdW5jdGlvbihhKXtyZXR1cm4gYT09PWNvLmlhLmNiJiZmby5IW2FdPT09Ym8uTWEuVWUmJiFYbyhGLkQua2EpfTt2YXIgaUg9ZnVuY3Rpb24oKXtyZXR1cm4iMCJ9LGpIPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09InN0cmluZyIpcmV0dXJuIiI7dmFyIGI9WyJnY2xpZCIsImRjbGlkIiwid2JyYWlkIiwiX2dsIl07TSgxMDIpJiZiLnB1c2goImdicmFpZCIpO3JldHVybiBTaihhLGIsIjAiKX07dmFyIGtIPXt9LGxIPXt9LG1IPXt9LG5IPXt9LG9IPXt9LHBIPXt9LHFIPXt9LHJIPXt9LHNIPXt9LHRIPXt9LHVIPXt9LHZIPXt9LHdIPXt9LHhIPXt9LHlIPXt9LHpIPXt9LEFIPXt9LEJIPXt9LENIPXt9LERIPXt9LEVIPXt9LEZIPXt9LEdIPXt9LEhIPXt9LElIPXt9LEpIPXt9LEtIPShKSFtGLkQuZmJdPShrSFsyXT1baEhdLGtIKSxKSFtGLkQuWmZdPShsSFsyXT1baEhdLGxIKSxKSFtGLkQuSmldPShtSFsyXT1baEhdLG1IKSxKSFtGLkQuZ21dPShuSFsyXT1baEhdLG5IKSxKSFtGLkQuaG1dPShvSFsyXT1baEhdLG9IKSxKSFtGLkQuaW1dPShwSFsyXT1baEhdLHBIKSxKSFtGLkQuam1dPShxSFsyXT1baEhdLHFIKSxKSFtGLkQua21dPShySFsyXT1baEhdLHJIKSxKSFtGLkQuQmNdPShzSFsyXT1baEhdLHNIKSxKSFtGLkQuY2ddPSh0SFsyXT1baEhdLHRIKSxKSFtGLkQuZGddPSh1SFsyXT1baEhdLHVIKSxKSFtGLkQuZWddPSh2SFsyXT1baEhdLHZIKSxKSFtGLkQuZmddPSh3SFsyXT0KW2hIXSx3SCksSkhbRi5ELmdnXT0oeEhbMl09W2hIXSx4SCksSkhbRi5ELmhnXT0oeUhbMl09W2hIXSx5SCksSkhbRi5ELmlnXT0oekhbMl09W2hIXSx6SCksSkhbRi5ELmpnXT0oQUhbMl09W2hIXSxBSCksSkhbRi5ELmxiXT0oQkhbMV09W2hIXSxCSCksSkhbRi5ELkRkXT0oQ0hbMV09W2hIXSxDSCksSkhbRi5ELktkXT0oREhbMV09W2hIXSxESCksSkhbRi5ELkVlXT0oRUhbMV09W2hIXSxFSCksSkhbRi5ELkJmXT0oRkhbMV09W2Z1bmN0aW9uKGEpe3JldHVybiBNKDEwMikmJmhIKGEpfV0sRkgpLEpIW0YuRC5VY109KEdIWzFdPVtoSF0sR0gpLEpIW0YuRC56YV09KEhIWzFdPVtoSF0sSEgpLEpIW0YuRC5VYV09KElIWzFdPVtoSF0sSUgpLEpIKSxMSD17fSxNSD0oTEhbRi5ELmxiXT1pSCxMSFtGLkQuRGRdPWlILExIW0YuRC5LZF09aUgsTEhbRi5ELkVlXT1pSCxMSFtGLkQuQmZdPWlILExIW0YuRC5VY109ZnVuY3Rpb24oYSl7aWYoIUNkKGEpKXJldHVybnt9O3ZhciBiPUVkKGEsCm51bGwpO2RlbGV0ZSBiLm1hdGNoX2lkO3JldHVybiBifSxMSFtGLkQuemFdPWpILExIW0YuRC5VYV09akgsTEgpLE5IPXt9LE9IPXt9LFBIPShPSFtILkouWWFdPShOSFsyXT1baEhdLE5IKSxPSCksUUg9e307dmFyIFJIPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSD1hO3RoaXMuTj1iO3RoaXMuUj1jO3RoaXMuWj1kfTtSSC5wcm90b3R5cGUuZ2V0VmFsdWU9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2NvLmlhLmdkOmE7aWYoIXRoaXMuTi5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiKGEpfSkpcmV0dXJuIHRoaXMuUi5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiKGEpfSk/dGhpcy5aKHRoaXMuSCk6dGhpcy5IfTtSSC5wcm90b3R5cGUuSz1mdW5jdGlvbigpe3JldHVybiBBZCh0aGlzLkgpPT09ImFycmF5Inx8Q2QodGhpcy5IKT9FZCh0aGlzLkgsbnVsbCk6dGhpcy5IfTsKdmFyIFNIPWZ1bmN0aW9uKCl7fSxUSD1mdW5jdGlvbihhLGIpe3RoaXMuY29uZGl0aW9ucz1hO3RoaXMuSD1ifSxVSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT0oKGQ9YS5jb25kaXRpb25zW2JdKT09bnVsbD92b2lkIDA6ZFsyXSl8fFtdLGYsZz0oKGY9YS5jb25kaXRpb25zW2JdKT09bnVsbD92b2lkIDA6ZlsxXSl8fFtdO3JldHVybiBuZXcgUkgoYyxlLGcsYS5IW2JdfHxTSCl9LFZILFdIO3ZhciBZSD1mdW5jdGlvbihhKXthLks9ITA7YS5IPSExO2lmKElmKDUyKSl7aWYoTSg1MTYpJiZYSCgpKXt2YXIgYjthLnNldHRpbmdzPShiPWRhdGEucHJvZHVjdFNldHRpbmdzKSE9bnVsbD9iOnt9O2EuSD0hMH1lbHNle3ZhciBjO2Euc2V0dGluZ3M9KGM9cHJvZHVjdFNldHRpbmdzKSE9bnVsbD9jOnt9fXByb2R1Y3RTZXR0aW5ncz12b2lkIDA7ZGF0YS5wcm9kdWN0U2V0dGluZ3M9dm9pZCAwO3ZhciBkOyhkPUZGKSE9bnVsbCYmZm4uTiYmTSg1MTYpJiYoZC5IPWEuSD8iMSI6IjAiKX19LCRIPWZ1bmN0aW9uKGEpe3ZhciBiPVpIO2IuS3x8WUgoYik7cmV0dXJuIGIuc2V0dGluZ3NbYV19LFpIPW5ldyBmdW5jdGlvbigpe3RoaXMuc2V0dGluZ3M9e307dGhpcy5LPXRoaXMuSD0hMX07CmZ1bmN0aW9uIFhIKCl7aWYoIWRhdGEucHJvZHVjdFNldHRpbmdzJiYhcHJvZHVjdFNldHRpbmdzKXJldHVybiEwO2lmKCFkYXRhLnByb2R1Y3RTZXR0aW5nc3x8IXByb2R1Y3RTZXR0aW5nc3x8T2JqZWN0LmtleXMoZGF0YS5wcm9kdWN0U2V0dGluZ3MpLmxlbmd0aCE9PU9iamVjdC5rZXlzKHByb2R1Y3RTZXR0aW5ncykubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgYSBpbiBwcm9kdWN0U2V0dGluZ3MpaWYoIWRhdGEucHJvZHVjdFNldHRpbmdzLmhhc093blByb3BlcnR5KGEpfHxkYXRhLnByb2R1Y3RTZXR0aW5nc1thXS5wcmVBdXRvUGlpIT09cHJvZHVjdFNldHRpbmdzW2FdLnByZUF1dG9QaWkpcmV0dXJuITE7cmV0dXJuITB9O3ZhciBhST1mdW5jdGlvbihhLGIsYyl7dGhpcy5ldmVudE5hbWU9Yjt0aGlzLk09Yzt0aGlzLkg9e307dGhpcy5pc0Fib3J0ZWQ9ITE7dGhpcy50YXJnZXQ9YTt0aGlzLm1ldGFkYXRhPXt9O2Zvcih2YXIgZD1jLmV2ZW50TWV0YWRhdGF8fHt9LGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7Vih0aGlzLGcsZFtnXSl9fSxSPWZ1bmN0aW9uKGEsYil7dmFyIGMsZDtyZXR1cm4oYz1hLkhbYl0pPT1udWxsP3ZvaWQgMDooZD1jLmdldFZhbHVlKT09bnVsbD92b2lkIDA6ZC5jYWxsKGMsUShhLEguSi50ZykpfSxldT1mdW5jdGlvbihhKXtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKX0sVT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5ILGU7Yz09PXZvaWQgMD9lPXZvaWQgMDooVkghPW51bGx8fChWSD1uZXcgVEgoS0gsTUgpKSxlPVVIKFZILGIsYykpO2RbYl09ZX07CmFJLnByb3RvdHlwZS5tZXJnZUhpdERhdGFGb3JLZXk9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGU7Yz0oZD10aGlzLkhbYV0pPT1udWxsP3ZvaWQgMDooZT1kLkspPT1udWxsP3ZvaWQgMDplLmNhbGwoZCk7aWYoIWMpcmV0dXJuIFUodGhpcyxhLGIpLCEwO2lmKCFDZChjKSlyZXR1cm4hMTtVKHRoaXMsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGMsYikpO3JldHVybiEwfTt2YXIgYkk9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306Yjtmb3IodmFyIGM9bShPYmplY3Qua2V5cyhhLkgpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZSxmPXZvaWQgMCxnPXZvaWQgMCxoPXZvaWQgMDtiW2VdPShmPWEuSFtlXSk9PW51bGw/dm9pZCAwOihoPShnPWYpLkspPT1udWxsP3ZvaWQgMDpoLmNhbGwoZyl9cmV0dXJuIGJ9OwphSS5wcm90b3R5cGUuY29weVRvSGl0RGF0YT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Tyh0aGlzLk0sYSk7ZD09PXZvaWQgMCYmKGQ9Yik7aWYoemIoZCkmJmMhPT12b2lkIDApdHJ5e2Q9YyhkKX1jYXRjaChlKXt9ZCE9PXZvaWQgMCYmVSh0aGlzLGEsZCl9Owp2YXIgUT1mdW5jdGlvbihhLGIpe3ZhciBjPWEubWV0YWRhdGFbYl07aWYoYj09PUguSi50Zyl7dmFyIGQ7cmV0dXJuIGM9PW51bGw/dm9pZCAwOihkPWMuSyk9PW51bGw/dm9pZCAwOmQuY2FsbChjKX12YXIgZTtyZXR1cm4gYz09bnVsbD92b2lkIDA6KGU9Yy5nZXRWYWx1ZSk9PW51bGw/dm9pZCAwOmUuY2FsbChjLFEoYSxILkoudGcpKX0sVj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5tZXRhZGF0YSxlO2M9PT12b2lkIDA/ZT1jOihXSCE9bnVsbHx8KFdIPW5ldyBUSChQSCxRSCkpLGU9VUgoV0gsYixjKSk7ZFtiXT1lfSxjST1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2Zvcih2YXIgYz1tKE9iamVjdC5rZXlzKGEubWV0YWRhdGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZSxmPXZvaWQgMCxnPXZvaWQgMCxoPXZvaWQgMDtiW2VdPShmPWEubWV0YWRhdGFbZV0pPT1udWxsP3ZvaWQgMDooaD0oZz1mKS5LKT09bnVsbD92b2lkIDA6CmguY2FsbChnKX1yZXR1cm4gYn0sZEk9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSRIKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpO3JldHVybiBkJiZkW2JdIT09dm9pZCAwP2RbYl06Y30sWnU9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9bmV3IGFJKChiPT1udWxsP3ZvaWQgMDpiLnRhcmdldCl8fGEudGFyZ2V0LChiPT1udWxsP3ZvaWQgMDpiLmV2ZW50TmFtZSl8fGEuZXZlbnROYW1lLChiPT1udWxsP3ZvaWQgMDpiLk0pfHxhLk0pLGQ9YkkoYSksZT1tKE9iamVjdC5rZXlzKGQpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtVKGMsZyxkW2ddKX1mb3IodmFyIGg9Y0koYSksbD1tKE9iamVjdC5rZXlzKGgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtWKGMscCxoW3BdKX1jLmlzQWJvcnRlZD1hLmlzQWJvcnRlZDtyZXR1cm4gY30sZUk9ZnVuY3Rpb24oYSl7dmFyIGI9YS5NLGM9Yi5ldmVudElkLGQ9Yi5wcmlvcml0eUlkOwpyZXR1cm4gZD9jKyJfIitkOlN0cmluZyhjKX07YUkucHJvdG90eXBlLmFjY2VwdD1mdW5jdGlvbigpe3ZhciBhPW9tKGptLmJhLlNpLHt9KSxiPWVJKHRoaXMpLGM9dGhpcy50YXJnZXQuZGVzdGluYXRpb25JZDthW2JdfHwoYVtiXT17fSk7YVtiXVtjXT12aygpO3ZhciBkPWptLmJhLlNpO2lmKGttKGQpKXt2YXIgZTsoZT1sbShkKSk9PW51bGx8fGUubm90aWZ5KCl9fTthSS5wcm90b3R5cGUuY2FuQmVBY2NlcHRlZD1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5TaSk7aWYoIWIpcmV0dXJuITA7dmFyIGM9YltlSSh0aGlzKV07aWYoIWMpcmV0dXJuITA7dmFyIGQ9Y1thIT1udWxsP2E6dGhpcy50YXJnZXQuZGVzdGluYXRpb25JZF07cmV0dXJuIGQ9PT12b2lkIDB8fGQ9PT12aygpfTtmdW5jdGlvbiBmSShhKXtyZXR1cm57Z2V0RGVzdGluYXRpb25JZDpmdW5jdGlvbigpe3JldHVybiBhLnRhcmdldC5kZXN0aW5hdGlvbklkfSxnZXRFdmVudE5hbWU6ZnVuY3Rpb24oKXtyZXR1cm4gYS5ldmVudE5hbWV9LHNldEV2ZW50TmFtZTpmdW5jdGlvbihiKXthLmV2ZW50TmFtZT1ifSxnZXRIaXREYXRhOmZ1bmN0aW9uKGIpe3JldHVybiBSKGEsYil9LHNldEhpdERhdGE6ZnVuY3Rpb24oYixjKXtVKGEsYixjKX0sc2V0SGl0RGF0YUlmTm90RGVmaW5lZDpmdW5jdGlvbihiLGMpe1IoYSxiKT09PXZvaWQgMCYmVShhLGIsYyl9LGNvcHlUb0hpdERhdGE6ZnVuY3Rpb24oYixjKXthLmNvcHlUb0hpdERhdGEoYixjKX0sZ2V0TWV0YWRhdGE6ZnVuY3Rpb24oYil7cmV0dXJuIFEoYSxiKX0sc2V0TWV0YWRhdGE6ZnVuY3Rpb24oYixjKXtWKGEsYixjKX0saXNBYm9ydGVkOmZ1bmN0aW9uKCl7cmV0dXJuIGEuaXNBYm9ydGVkfSxhYm9ydDpmdW5jdGlvbigpe2EuaXNBYm9ydGVkPSEwfSwKZ2V0RnJvbUV2ZW50Q29udGV4dDpmdW5jdGlvbihiKXtyZXR1cm4gTyhhLk0sYil9LHJiOmZ1bmN0aW9uKCl7cmV0dXJuIGF9LGdldEhpdEtleXM6ZnVuY3Rpb24oKXtyZXR1cm4gZXUoYSl9LGdldE1lcmdlZFZhbHVlczpmdW5jdGlvbihiKXtyZXR1cm4gYS5NLmdldE1lcmdlZFZhbHVlcyhiLDMpfSxtZXJnZUhpdERhdGFGb3JLZXk6ZnVuY3Rpb24oYixjKXtyZXR1cm4gQ2QoYyk/YS5tZXJnZUhpdERhdGFGb3JLZXkoYixjKTohMX0sYWNjZXB0OmZ1bmN0aW9uKCl7YS5hY2NlcHQoKX0sY2FuQmVBY2NlcHRlZDpmdW5jdGlvbihiKXtyZXR1cm4gYS5jYW5CZUFjY2VwdGVkKGIpfX19O2Z1bmN0aW9uIGdJKGEsYil7dmFyIGM7cmV0dXJuIGN9Z0kuUD0iaW50ZXJuYWwuY29weVByZUhpdCI7ZnVuY3Rpb24gaEkoYSxiKXt2YXIgYz1udWxsO2lmKCFsaChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciXSxhcmd1bWVudHMpO0wodGhpcywiYWNjZXNzX2dsb2JhbHMiLCJyZWFkd3JpdGUiLGEpO0wodGhpcywiYWNjZXNzX2dsb2JhbHMiLCJyZWFkd3JpdGUiLGIpO3ZhciBkPVtBLEJdLGU9YS5zcGxpdCgiLiIpLGY9VWIoQSxlLGQpLGc9ZVtlLmxlbmd0aC0xXTtpZihmPT09dm9pZCAwKXRocm93IEVycm9yKCJQYXRoICIrYSsiIGRvZXMgbm90IGV4aXN0LiIpO3ZhciBoPWZbZ107aWYoaClyZXR1cm4geWIoaCk/VWQoaCx0aGlzLlQsMik6bnVsbDt2YXIgbDtoPWZ1bmN0aW9uKCl7aWYoIXliKGwucHVzaCkpdGhyb3cgRXJyb3IoIk9iamVjdCBhdCAiK2IrIiBpbiB3aW5kb3cgaXMgbm90IGFuIGFycmF5LiIpO2wucHVzaC5jYWxsKGwsCmFyZ3VtZW50cyl9O2ZbZ109aDt2YXIgbj1iLnNwbGl0KCIuIikscD1VYihBLG4sZCkscT1uW24ubGVuZ3RoLTFdO2lmKHA9PT12b2lkIDApdGhyb3cgRXJyb3IoIlBhdGggIituKyIgZG9lcyBub3QgZXhpc3QuIik7bD1wW3FdO2w9PT12b2lkIDAmJihsPVtdLHBbcV09bCk7Yz1mdW5jdGlvbigpe2guYXBwbHkoaCxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpfTtyZXR1cm4gVWQoYyx0aGlzLlQsMil9aEkucHVibGljTmFtZT0iY3JlYXRlQXJndW1lbnRzUXVldWUiO2Z1bmN0aW9uIGlJKGEpe3JldHVybiBVZChmdW5jdGlvbihjKXt2YXIgZD1TQSgpO2lmKHR5cGVvZiBjPT09ImZ1bmN0aW9uIilkKGZ1bmN0aW9uKCl7YyhmdW5jdGlvbihmLGcsaCl7dmFyIGw9ClNBKCksbj1sJiZsLmdldEJ5TmFtZSYmbC5nZXRCeU5hbWUoZik7cmV0dXJuKG5ldyBBLmdhcGx1Z2lucy5MaW5rZXIobikpLmRlY29yYXRlKGcsaCl9KX0pO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShjKSl7dmFyIGU9U3RyaW5nKGNbMF0pLnNwbGl0KCIuIik7YltlLmxlbmd0aD09PTE/ZVswXTplWzFdXSYmZC5hcHBseShudWxsLGMpfWVsc2UgaWYoYz09PSJpc0xvYWRlZCIpcmV0dXJuISFkLmxvYWRlZH0sdGhpcy5ULDEpfWlJLlA9ImludGVybmFsLmNyZWF0ZUdhQ29tbWFuZFF1ZXVlIjtmdW5jdGlvbiBqSShhKXtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7TCh0aGlzLCJhY2Nlc3NfZ2xvYmFscyIsInJlYWR3cml0ZSIsYSk7dmFyIGI9YS5zcGxpdCgiLiIpLGM9VWIoQSxiLFtBLEJdKSxkPWJbYi5sZW5ndGgtMV07aWYoIWMpdGhyb3cgRXJyb3IoIlBhdGggIithKyIgZG9lcyBub3QgZXhpc3QuIik7dmFyIGU9Y1tkXTtlPT09dm9pZCAwJiYoZT1bXSxjW2RdPWUpO3JldHVybiBVZChmdW5jdGlvbigpe2lmKCF5YihlLnB1c2gpKXRocm93IEVycm9yKCJPYmplY3QgYXQgIithKyIgaW4gd2luZG93IGlzIG5vdCBhbiBhcnJheS4iKTtlLnB1c2guYXBwbHkoZSxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpfSx0aGlzLlQsCkJoKFhGKHRoaXMpLlBiKCkpPzI6MSl9akkucHVibGljTmFtZT0iY3JlYXRlUXVldWUiO2Z1bmN0aW9uIGtJKGEsYil7dmFyIGM9bnVsbDtpZighbGgoYSl8fCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dHJ5e3ZhciBkPShifHwiIikuc3BsaXQoIiIpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4iaWciLmluZGV4T2YoZSk+PTB9KS5qb2luKCIiKTtjPW5ldyBQZChuZXcgUmVnRXhwKGEsZCkpfWNhdGNoKGUpe31yZXR1cm4gY31rSS5QPSJpbnRlcm5hbC5jcmVhdGVSZWdleCI7ZnVuY3Rpb24gbEkoYSl7fWxJLlA9ImludGVybmFsLmRlY2xhcmVDb25zZW50U3RhdGUiO2Z1bmN0aW9uIG1JKGEpe3ZhciBiPSIiO3JldHVybiBifW1JLlA9ImludGVybmFsLmRlY29kZVVybEh0bWxFbnRpdGllcyI7ZnVuY3Rpb24gbkkoYSxiLGMpe3ZhciBkO3JldHVybiBkfW5JLlA9ImludGVybmFsLmRlY29yYXRlVXJsV2l0aEdhQ29va2llcyI7ZnVuY3Rpb24gb0koKXt9b0kuUD0iaW50ZXJuYWwuZGVmZXJDdXN0b21FdmVudHMiO2Z1bmN0aW9uIHBJKGEsYil7dHJ5e3JldHVybiBhLmNsb3Nlc3QoYil9Y2F0Y2goYyl7cmV0dXJuIG51bGx9fTtmdW5jdGlvbiBxSSgpe3ZhciBhPUEuc2NyZWVuO3JldHVybnt3aWR0aDphP2Eud2lkdGg6MCxoZWlnaHQ6YT9hLmhlaWdodDowfX0KZnVuY3Rpb24gckkoYSl7aWYoQi5oaWRkZW4pcmV0dXJuITA7dmFyIGI9YS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihiLnRvcD09PWIuYm90dG9tfHxiLmxlZnQ9PT1iLnJpZ2h0fHwhQS5nZXRDb21wdXRlZFN0eWxlKXJldHVybiEwO3ZhciBjPUEuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpO2lmKGMudmlzaWJpbGl0eT09PSJoaWRkZW4iKXJldHVybiEwO2Zvcih2YXIgZD1hLGU9YztkOyl7aWYoZS5kaXNwbGF5PT09Im5vbmUiKXJldHVybiEwO3ZhciBmPWUub3BhY2l0eSxnPWUuZmlsdGVyO2lmKGcpe3ZhciBoPWcuaW5kZXhPZigib3BhY2l0eSgiKTtoPj0wJiYoZz1nLnN1YnN0cmluZyhoKzgsZy5pbmRleE9mKCIpIixoKSksZy5jaGFyQXQoZy5sZW5ndGgtMSk9PT0iJSImJihnPWcuc3Vic3RyaW5nKDAsZy5sZW5ndGgtMSkpLGY9U3RyaW5nKE1hdGgubWluKE51bWJlcihnKSxOdW1iZXIoZikpKSl9aWYoZiE9PXZvaWQgMCYmTnVtYmVyKGYpPD0wKXJldHVybiEwOyhkPWQucGFyZW50RWxlbWVudCkmJgooZT1BLmdldENvbXB1dGVkU3R5bGUoZCxudWxsKSl9cmV0dXJuITF9CnZhciB0ST1mdW5jdGlvbihhKXt2YXIgYj1zSSgpLGM9Yi5oZWlnaHQsZD1iLndpZHRoLGU9YS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxmPWUuYm90dG9tLWUudG9wLGc9ZS5yaWdodC1lLmxlZnQ7cmV0dXJuIGYmJmc/KDEtTWF0aC5taW4oKE1hdGgubWF4KDAtZS5sZWZ0LDApK01hdGgubWF4KGUucmlnaHQtZCwwKSkvZywxKSkqKDEtTWF0aC5taW4oKE1hdGgubWF4KDAtZS50b3AsMCkrTWF0aC5tYXgoZS5ib3R0b20tYywwKSkvZiwxKSk6MH0sc0k9ZnVuY3Rpb24oKXt2YXIgYT1CLmJvZHksYj1CLmRvY3VtZW50RWxlbWVudHx8YSYmYS5wYXJlbnRFbGVtZW50LGMsZDtpZihCLmNvbXBhdE1vZGUmJkIuY29tcGF0TW9kZSE9PSJCYWNrQ29tcGF0IiljPWI/Yi5jbGllbnRIZWlnaHQ6MCxkPWI/Yi5jbGllbnRXaWR0aDowO2Vsc2V7dmFyIGU9ZnVuY3Rpb24oZixnKXtyZXR1cm4gZiYmZz9NYXRoLm1pbihmLGcpOk1hdGgubWF4KGYsZyl9O2M9ZShiP2IuY2xpZW50SGVpZ2h0OjAsYT8KYS5jbGllbnRIZWlnaHQ6MCk7ZD1lKGI/Yi5jbGllbnRXaWR0aDowLGE/YS5jbGllbnRXaWR0aDowKX1yZXR1cm57d2lkdGg6ZCxoZWlnaHQ6Y319O3ZhciB2ST1mdW5jdGlvbihhKXtpZih1SSl7dmFyIGI9YWwoMjQsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGE+PTAmJmE8Yi5sZW5ndGgmJmJbYV0pe3ZhciBjOyhjPWJbYV0pPT1udWxsfHxjLmRpc2Nvbm5lY3QoKTtiW2FdPXZvaWQgMH19ZWxzZSBBLmNsZWFySW50ZXJ2YWwoYSl9LHlJPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKyljW2RdPjE/Y1tkXT0xOmNbZF08MCYmKGNbZF09MCk7aWYodUkpe3ZhciBlPSExO2JkKGZ1bmN0aW9uKCl7ZXx8d0koYSxiLGMpKCl9KTtyZXR1cm4geEkoZnVuY3Rpb24oZil7ZT0hMDtmb3IodmFyIGc9e0hnOjB9O2cuSGc8Zi5sZW5ndGg7Zz17SGc6Zy5IZ30sZy5IZysrKWJkKGZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbigpe2EoZltoLkhnXSl9fShnKSl9LApiLGMpfXJldHVybiBjZCh3SShhLGIsYyksMUUzKX0sd0k9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoaCxsKXt2YXIgbj17dG9wOjAsYm90dG9tOjAscmlnaHQ6MCxsZWZ0OjAsd2lkdGg6MCxoZWlnaHQ6MH0scD17Ym91bmRpbmdDbGllbnRSZWN0OmguZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksaW50ZXJzZWN0aW9uUmF0aW86bCxpbnRlcnNlY3Rpb25SZWN0Om4saXNJbnRlcnNlY3Rpbmc6bD4wLHJvb3RCb3VuZHM6bix0YXJnZXQ6aCx0aW1lOk5iKCl9O2JkKGZ1bmN0aW9uKCl7YShwKX0pfWZvcih2YXIgZT1bXSxmPVtdLGc9MDtnPGIubGVuZ3RoO2crKyllLnB1c2goMCksZi5wdXNoKC0xKTtjLnNvcnQoZnVuY3Rpb24oaCxsKXtyZXR1cm4gaC1sfSk7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciBoPTA7aDxiLmxlbmd0aDtoKyspe3ZhciBsPXRJKGJbaF0pO2lmKGw+ZVtoXSlmb3IoO2ZbaF08Yy5sZW5ndGgtMSYmbD49Y1tmW2hdKzFdOylkKGJbaF0sbCksZltoXSsrO2Vsc2UgaWYobDwKZVtoXSlmb3IoO2ZbaF0+PTAmJmw8PWNbZltoXV07KWQoYltoXSxsKSxmW2hdLS07ZVtoXT1sfX19LHhJPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9bmV3IEEuSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoYSx7dGhyZXNob2xkOmN9KSxlPTA7ZTxiLmxlbmd0aDtlKyspZC5vYnNlcnZlKGJbZV0pO2Zvcih2YXIgZj1hbCgyNCxmdW5jdGlvbigpe3JldHVybltdfSksZz0wO2c8Zi5sZW5ndGg7ZysrKWlmKCFmW2ddKXJldHVybiBmW2ddPWQsZztyZXR1cm4gZi5wdXNoKGQpLTF9LHVJPSEoIUEuSW50ZXJzZWN0aW9uT2JzZXJ2ZXJ8fCFBLkludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpOwp2YXIgSkk9ZnVuY3Rpb24oYSl7dmFyIGIsYz0oYj1hPT1udWxsP3ZvaWQgMDphLmluY2x1ZGVTZWxlY3RvcikhPW51bGw/YjohMCxkLGU9KGQ9YT09bnVsbD92b2lkIDA6YS5pbmNsdWRlVmlzaWJpbGl0eSkhPW51bGw/ZDohMCxmLGc9KGY9YT09bnVsbD92b2lkIDA6YS5zZWxlY3RNdWx0aXBsZUVsZW1lbnRzKSE9bnVsbD9mOiExLGg9KGE9PW51bGw/dm9pZCAwOmEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMpfHxbXSxsPShhPT1udWxsP3ZvaWQgMDphLmZpZWxkRmlsdGVycyl8fHtlbWFpbDohMCxwaG9uZTohMSxhZGRyZXNzOiExfSxuPWFsKDYsZnVuY3Rpb24oKXtyZXR1cm57fX0pLHA9ekkoe2luY2x1ZGVTZWxlY3RvcjpjLGluY2x1ZGVWaXNpYmlsaXR5OmUsZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM6aCxmaWVsZEZpbHRlcnM6bH0pLHE9bltwXTtpZihxJiZOYigpLXEudGltZXN0YW1wPDIwMCl7dmFyIHI9cS5yZXN1bHQsdDsoci5lbGVtZW50cy5zb21lKGZ1bmN0aW9uKHFhKXtyZXR1cm4gcWEuZGl9KXx8CigodD1yLmdpKT09bnVsbD8wOnQuZGkpKSYmR3UoVC5XLnJqKTtyZXR1cm4gcn12YXIgdT1BSSgpLHY9dS5zdGF0dXMseD1bXSx5LHosQz1bXTtpZihNKDU2OCkpe3ZhciBEPUJJKGwpLEk9Q0kodS5lbGVtZW50cyxEKSxHPURJKEkpLE49RUkoRyxoKSxTPUZJKE4pO3k9Uy5maWx0ZXIoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5EYT09PUZELkJifSlbMF07Zm9yKHZhciBXPVtdLGVhPXtJZzowfTtlYS5JZzxELmxlbmd0aDtlYT17SWc6ZWEuSWd9LGVhLklnKyspe3ZhciBqYT1OLmZpbHRlcihmdW5jdGlvbihxYSl7cmV0dXJuIGZ1bmN0aW9uKGliKXtyZXR1cm4gaWIuRGE9PT1EW3FhLklnXX19KGVhKSk7amEubGVuZ3RoPjEwJiYodj0iMyIsamE9amEuc2xpY2UoMCwxMCkpO1c9Vy5jb25jYXQoamEpfU49VzshZyYmUyYmKE49Uyk7Zm9yKHZhciBmYT0wO2ZhPE4ubGVuZ3RoO2ZhKyspe3ZhciBzYT1OW2ZhXTtzYS5EYSE9PUZELktoJiZDLnB1c2goR0koc2EsYyxlKSl9fWVsc2V7aWYobC5lbWFpbCl7dmFyIGRhPQpISSh1LmVsZW1lbnRzKTt4PUVJKGRhLGgpO3k9SUkoeCk7ZGEubGVuZ3RoPjEwJiYodj0iMyIpfSFnJiZ5JiYoeD1beV0pO2Zvcih2YXIgbWE9MDttYTx4Lmxlbmd0aDttYSsrKUMucHVzaChHSSh4W21hXSxjLGUpKTtDPUMuc2xpY2UoMCwxMCl9eSYmKHo9R0koeSxjLGUpKTt2YXIgUGE9e2VsZW1lbnRzOkMsZ2k6eixzdGF0dXM6dn07bltwXT17dGltZXN0YW1wOk5iKCkscmVzdWx0OlBhfTt2YXIgRmE7KFBhLmVsZW1lbnRzLnNvbWUoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5kaX0pfHwoKEZhPVBhLmdpKT09bnVsbD8wOkZhLmRpKSkmJkd1KFQuVy5yaik7cmV0dXJuIFBhfSxEST1mdW5jdGlvbihhKXt2YXIgYj1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELktofSksYz1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELlhkfSk7aWYoYS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5jZX0pLmxlbmd0aD09PTAmJmMubGVuZ3RoPT09CjApZm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF0sZj1lLkNhLnNwbGl0KCIgIik7Zi5sZW5ndGg+MSYmYS5wdXNoKHtDYTpmWzBdLERhOkZELlhkLGVsZW1lbnQ6ZS5lbGVtZW50LE9jOmUuT2N9LHtDYTpmLnNsaWNlKDEpLmpvaW4oIiAiKSxEYTpGRC5jZSxlbGVtZW50OmUuZWxlbWVudCxPYzplLk9jfSl9Zm9yKHZhciBnLGg9MCxsLG49ZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5lZSYmdS5DYS5sZW5ndGg+PTMmJnUuQ2EubGVuZ3RoPD00fSxwPTA7cDxhLmxlbmd0aDtwKyspe3ZhciBxPWFbcF07aWYobihxKSYmZyYmcS5lbGVtZW50LnBhcmVudEVsZW1lbnQ9PT1nJiZoPDMpe2lmKGgrPTEsbCs9cS5DYSxoPT09Myl7dmFyIHI9cC1oKzE7aWYobD1LSVtGRC5lZV0ubmEobCkpYVtyXS5DYT1sfX1lbHNlIGlmKGg9MCxsPSIiLGc9dm9pZCAwLG4ocSkpe2grKztsPXEuQ2E7dmFyIHQ9dm9pZCAwO2c9KHQ9cS5lbGVtZW50LnBhcmVudEVsZW1lbnQpIT1udWxsPwp0OnZvaWQgMH19cmV0dXJuIGEuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiFuKHUpfSl9LE9JPWZ1bmN0aW9uKGEsYil7aWYoYS52YWx1ZSYmTEkuaW5kZXhPZigoYS50eXBlfHwidGV4dCIpLnRvTG93ZXJDYXNlKCkpIT09LTEpe3ZhciBjPWEuYXV0b2NvbXBsZXRlO2lmKGMpZm9yKHZhciBkPWMuc3BsaXQoIiAiKSxlPTA7ZTxkLmxlbmd0aDtlKyspe3ZhciBmPU1JKGEudmFsdWUsYixkW2VdKTtpZihmKXJldHVybiBmfXZhciBnLGg9W2EubmFtZSxhLmlkLChnPWEuYXJpYUxhYmVsKSE9bnVsbD9nOnZvaWQgMCxhLnBsYWNlaG9sZGVyXSxsPWEucGFyZW50RWxlbWVudDtsJiZsLnRhZ05hbWU9PT0iTEFCRUwiJiZoLnB1c2gobC5pbm5lclRleHQpO3ZhciBuPWEucHJldmlvdXNFbGVtZW50U2libGluZztuJiZuLnRhZ05hbWU9PT0iTEFCRUwiJiYhbi5odG1sRm9yJiZoLnB1c2gobi5pbm5lclRleHQpO2lmKGEuaWQpe3ZhciBwPVtdO3RyeXtwPWRvY3VtZW50LmJvZHkucXVlcnlTZWxlY3RvckFsbCgnbGFiZWxbZm9yPSInKwphLmlkKyciXScpfWNhdGNoKEQpe31mb3IodmFyIHE9MDtxPHAubGVuZ3RoO3ErKyloLnB1c2gocFtxXS5pbm5lclRleHQpfWg9aC5maWx0ZXIoZnVuY3Rpb24oRCl7cmV0dXJuIEQmJkQudHJpbSgpfSk7Zm9yKHZhciByLHQ9MCx1PTA7dTxoLmxlbmd0aDt1Kyspe3ZhciB2PU5JKGEsYixoW3VdKTtpZih2KXt2YXIgeD12LHk9eC5DYSx6PXguRGEsQz14LlhzO0M+dCYmKHQ9QyxyPXtDYTp5LERhOnp9KX19cmV0dXJuIHJ9fSxOST1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF07aWYoS0lbZV0ubmUpe3ZhciBmPUtJW2VdLm5lLmV4ZWMoYy50cmltKCkpO2lmKGYpe3ZhciBnPWEsaD1bXSxsPWcudmFsdWUudHJpbSgpO2wmJmgucHVzaChsKTtpZihnLnRhZ05hbWU9PT0iU0VMRUNUIil0cnl7dmFyIG49Zy5xdWVyeVNlbGVjdG9yKCdbdmFsdWU9IicrZy52YWx1ZSsnIl0nKSxwPW4mJm4uaW5uZXJUZXh0LnRyaW0oKTtwJiZoLnB1c2gocCl9Y2F0Y2godSl7fWZvcih2YXIgcT0KaCxyPXZvaWQgMCx0PTA7dDxxLmxlbmd0aCYmIXI7dCsrKXI9S0lbZV0ubmEocVt0XSk7aWYocilyZXR1cm57RGE6ZSxDYTpyLFhzOmZbMF0ubGVuZ3RoL2MudHJpbSgpLmxlbmd0aH19fX19LE1JPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTtpZihLSVtlXS5hdXRvY29tcGxldGUmJktJW2VdLmF1dG9jb21wbGV0ZS5pbmRleE9mKGMpPj0wKXt2YXIgZj1LSVtlXS5uYShhLnRyaW0oKSk7aWYoZilyZXR1cm57RGE6ZSxDYTpmfX19fSxCST1mdW5jdGlvbihhKXt2YXIgYj1bXTthLmVtYWlsJiZiLnB1c2goRkQuQmIpO2EucGhvbmUmJmIucHVzaChGRC5lZSk7YS5hZGRyZXNzJiZiLnB1c2goRkQuWGQsRkQuY2UsRkQueGYsRkQucWcsRkQuS2gpO3JldHVybiBifSxDST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWFbZF0sZj1lLmVsZW1lbnQsZz1lLk9jLGg7YTp7dmFyIGw9ZixuPWIsCnA9bC5pbm5lckhUTUw7UEkuaW5kZXhPZihsLnRhZ05hbWUpPj0wJiYocD1sLnZhbHVlfHxwKTtpZihwKXt2YXIgcTtiOntmb3IodmFyIHI9cCx0PW4sdT0wO3U8dC5sZW5ndGg7dSsrKXt2YXIgdj10W3VdO2lmKCFLSVt2XS5tZSl7dmFyIHg9S0lbdl0ubmEoci50cmltKCkpO2lmKHgpe3E9e0RhOnYsQ2E6eH07YnJlYWsgYn19fXE9dm9pZCAwfWlmKHEpe2g9cTticmVhayBhfWlmKFBJLmluZGV4T2YobC50YWdOYW1lKSE9PS0xKXtoPU9JKGwsbik7YnJlYWsgYX19aD12b2lkIDB9dmFyIHk9aDtpZih5KXt2YXIgej15O2MucHVzaCh7Q2E6ei5DYSxEYTp6LkRhLGVsZW1lbnQ6ZixPYzpnfSl9fXJldHVybiBjfSxGST1mdW5jdGlvbihhKXt2YXIgYj1bXTtpZihhLmxlbmd0aD09PTApcmV0dXJuIGI7dmFyIGM9e30sZDtmb3IoZCBpbiBGRClpZihjPXtWZzpjLlZnfSxjLlZnPWQsRkQuaGFzT3duUHJvcGVydHkoYy5WZykpe3ZhciBlPWEuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmdW5jdGlvbihnKXtyZXR1cm4gZy5EYT09PQpGRFtmLlZnXX19KGMpKTtlLmxlbmd0aCE9PTAmJihGRFtjLlZnXT09PUZELkJiJiYoZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiFSSS50ZXN0KGYuQ2EpfSksZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiBmLmVsZW1lbnQudGFnTmFtZS50b1VwcGVyQ2FzZSgpPT09IklOUFVUIn0pLGU9UUkoZSxmdW5jdGlvbihmKXtyZXR1cm4hckkoZi5lbGVtZW50KX0pKSxiLnB1c2goZVswXSkpfXJldHVybiBifSxHST1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5lbGVtZW50LGU9YS5PYyxmPXtDYTphLkNhLHR5cGU6YS5EYSx0YWdOYW1lOmQudGFnTmFtZX07aWYoYil7dmFyIGcsaD1TSShkKTtpZihnPShlP2UrInwiK2g6aCkuc2xpY2UoMCxUSSkpZi5xdWVyeVNlbGVjdG9yPWd9YyYmKGYuaXNWaXNpYmxlPSFySShkKSk7ZSYmKGYuZGk9ITApO3JldHVybiBmfSx6ST1mdW5jdGlvbihhKXt2YXIgYixjLGQsZTtiPWEuaW5jbHVkZVNlbGVjdG9yO2M9YS5pbmNsdWRlVmlzaWJpbGl0eTtkPWEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM7CmU9YS5maWVsZEZpbHRlcnM7dmFyIGY9ISFiKyIuIishIWM7ZC5sZW5ndGgmJihmKz0iLiIrZC5qb2luKCIuIikpO3JldHVybiBmKz0iLiIrZS5lbWFpbCsiLiIrZS5waG9uZSsiLiIrZS5hZGRyZXNzfSxJST1mdW5jdGlvbihhKXtpZihhLmxlbmd0aCE9PTApe3ZhciBiO2I9UUkoYSxmdW5jdGlvbihjKXtyZXR1cm4hUkkudGVzdChjLkNhKX0pO2I9UUkoYixmdW5jdGlvbihjKXtyZXR1cm4gYy5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCJ9KTtiPVFJKGIsZnVuY3Rpb24oYyl7cmV0dXJuIXJJKGMuZWxlbWVudCl9KTtyZXR1cm4gYlswXX19LEVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyl7Zm9yKHZhciBlPSEwLGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXTtpZihnJiZwSShhW2RdLmVsZW1lbnQsZykpe2U9ITE7YnJlYWt9fWFbZF0uRGE9PT1GRC5CYiYmTSg2MDIpJiYoUkkudGVzdChhW2RdLkNhKXx8YVtkXS5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PQoiQSImJmFbZF0uZWxlbWVudC5oYXNBdHRyaWJ1dGUoImhyZWYiKSYmYVtkXS5lbGVtZW50LmdldEF0dHJpYnV0ZSgiaHJlZiIpLmluZGV4T2YoIm1haWx0bzoiKSE9PS0xP2U9ITE6YVtkXS5lbGVtZW50LmNsb3Nlc3QoImZvb3RlciIpIT09bnVsbCYmKGU9ITEpKTtlJiZjLnB1c2goYVtkXSl9cmV0dXJuIGN9LFFJPWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg8PTEpcmV0dXJuIGE7dmFyIGM9YS5maWx0ZXIoYik7cmV0dXJuIGMubGVuZ3RoPT09MD9hOmN9LFNJPWZ1bmN0aW9uKGEpe2lmKGE9PT1CLmJvZHkpcmV0dXJuImJvZHkiO2lmKGEuaWQpcmV0dXJuIiMiK2EuaWQ7dmFyIGI9YS5wYXJlbnRFbGVtZW50O2lmKGIpe3ZhciBjPVNJKGIpLGQ9VUkoYSxiKSxlPVZJKGEpKyI6bnRoLWNoaWxkKCIrZCsiKSI7cmV0dXJuIGM/YysiPiIrZTplfXZhciBmPWEucGFyZW50Tm9kZTtpZihmIGluc3RhbmNlb2YgU2hhZG93Um9vdCl7dmFyIGc9VUkoYSxmKTtyZXR1cm4gVkkoYSkrIjpudGgtY2hpbGQoIisKZysiKSJ9cmV0dXJuIGEudGFnTmFtZT9hLnRhZ05hbWUudG9Mb3dlckNhc2UoKToiIn0sVkk9ZnVuY3Rpb24oYSl7aWYoYS5jbGFzc0xpc3QmJmEuY2xhc3NMaXN0Lmxlbmd0aD4wKXt2YXIgYj1BcnJheS5mcm9tKGEuY2xhc3NMaXN0LGZ1bmN0aW9uKGMpe3JldHVybiBDU1MuZXNjYXBlKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiBjLmxlbmd0aD4wfSk7aWYoYi5sZW5ndGg+MClyZXR1cm4iLiIrYi5qb2luKCIuIil9cmV0dXJuIiJ9LFVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWIuY2hpbGRyZW4sZD0wO2Q8Yy5sZW5ndGg7ZCsrKWlmKGNbZF09PT1hKXJldHVybiBkKzE7cmV0dXJuIDF9LEhJPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1kLmVsZW1lbnQsZj1kLk9jLGc9ZS50ZXh0Q29udGVudDtlLnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCImJmUudmFsdWUmJihnPWUudmFsdWUpO2lmKGcpe3ZhciBoPQpnLm1hdGNoKEtEKTtpZihoKXt2YXIgbD1oWzBdO0xEKGwpfHxiLnB1c2goe2VsZW1lbnQ6ZSxDYTpsLERhOkZELkJiLE9jOmZ9KX19fXJldHVybiBifSxBST1mdW5jdGlvbigpe3ZhciBhPVtdLGI9Qi5ib2R5O2lmKCFiKXJldHVybntlbGVtZW50czphLHN0YXR1czoiNCJ9O3ZhciBjPVdJKGIsMCwiIixhKTtyZXR1cm57ZWxlbWVudHM6YSxzdGF0dXM6Y319LFdJPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1hLnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSxmPWUubGVuZ3RoPjFFND8iMiI6IjEiLGc9MDtnPE1hdGgubWluKGUubGVuZ3RoLDFFNCk7ZysrKXt2YXIgaD1lW2ddO2lmKCEoWEkuaW5kZXhPZihoLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApJiZoLmNoaWxkcmVuIGluc3RhbmNlb2YgSFRNTENvbGxlY3Rpb24pe3ZhciBsPSExO2lmKE0oNTgyKSYmaC5zaGFkb3dSb290JiZiPDEpe3ZhciBuPVNJKGgpO1dJKGguc2hhZG93Um9vdCxiKzEsYz9jKyJ8IituOm4sZCk9PT0iMiImJgooZj0iMiIpO2w9ITB9dmFyIHA9ITE7aWYoIWwpZm9yKHZhciBxPTA7cTxNYXRoLm1pbihoLmNoaWxkRWxlbWVudENvdW50LDFFNCk7cSsrKWlmKCEoWUkuaW5kZXhPZihoLmNoaWxkcmVuW3FdLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApKXtwPSEwO2JyZWFrfSghcCYmIWx8fE0oNTY4KSYmUEkuaW5kZXhPZihoLnRhZ05hbWUpIT09LTEpJiZkLnB1c2goe2VsZW1lbnQ6aCxPYzpiPjA/Yzp2b2lkIDB9KX19cmV0dXJuIGZ9LFJJPS9zdXBwb3J0fG5vcmVwbHkvaSxYST0iU0NSSVBUIFNUWUxFIElNRyBTVkcgUEFUSCBCUiBOT1NDUklQVCBURVhUQVJFQSIuc3BsaXQoIiAiKSxZST1bIkJSIl0sVEk9TmYoNzAsNTApLFBJPVsiSU5QVVQiLCJTRUxFQ1QiXSxMST0idGV4dCB0ZWwgc2VhcmNoIG51bWJlciBoaWRkZW4gZW1haWwgc2VsZWN0LW9uZSIuc3BsaXQoIiAiKSxaST1SZWdFeHAoInBob25lfG1vYmlsZXxjb250YWN0Lj9udW1iZXJ8dGVsZWZvbm51bW1lcnx0ZWxlZm9ub3x0ZWxcdTAwZTlmb25vfHRlbGZpeGV8XHU5NmZiXHU4YTcxfHRlbGVmb25lfHRlbGVtb3ZlbHxcdTA0NDJcdTA0MzVcdTA0M2JcdTA0MzVcdTA0NDRcdTA0M2VcdTA0M2R8XHUwOTJlXHUwOTRiXHUwOTJjXHUwOTNlXHUwOTA3XHUwOTMyfFx1NzUzNVx1OGJkZHxcdTYyNGJcdTY3M2FcdTUzZjd8XHUwZDJlXHUwZDRhXHUwZDJjXHUwZDQ4XHUwZDMyXHUwZDRkXHUyMDBkfChefFstX10pdGVsWy1fXT8oXFxkKykqKFxcWy4qXFxdKSokfCg/Olx1YzgwNFx1ZDY1NHxcdWQ1NzhcdWI0ZGNcdWQzZjB8XHVkNzM0XHViMzAwXHVkM2YwfFx1ZDczNFx1YjMwMFx1YzgwNFx1ZDY1NCkoPzouP1x1YmM4OFx1ZDYzOCk/fChcXGJ8X3xcXCopdGVsZWZvbihcXGJ8X3xcXCopfHRlbGVwb258cG9uc2VsfChub21vcnxub1xcLj8pLj8oaHB8aGFuZHBob25lKSIsCiJpIiksJEk9UmVnRXhwKCJebmFtZXxmdWxsLj9uYW1lfHlvdXIuP25hbWV8Y3VzdG9tZXIuP25hbWV8YmlsbC4/bmFtZXxzaGlwLj9uYW1lfG5hbWUuKmZpcnN0LipsYXN0fGZpcnN0YW5kbGFzdG5hbWV8Y29udGFjdC4/KG5hbWV8cGVyc29uKXxub21icmUuKnkuKmFwZWxsaWRvc3xebm9tKD8hW2EtekEtWl0pfFx1MzA0YVx1NTQwZFx1NTI0ZHxcdTZjMGZcdTU0MGR8Xm5vbWV8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2NDZcdTA2MjdcdTA2NDUuKlx1MDYyZVx1MDYyN1x1MDY0Nlx1MDY0OFx1MDYyN1x1MDYyZlx1MDZhZlx1MDZjY3xcdTU5ZDNcXHMqXHU1NDBkfFx1MDQzYVx1MDQzZVx1MDQzZFx1MDQ0Mlx1MDQzMFx1MDQzYVx1MDQ0Mlx1MDQzZFx1MDQzZVx1MDQzNS4/XHUwNDNiXHUwNDM4XHUwNDQ2XHUwNDNlfChcXGJ8X3xcXCopYWRbXHUwMTMxXT8gc295YWRbXHUwMTMxXT8oXFxifF98XFwqKXxcdWMxMzFcdWJhODV8bmFtYS4/KGxlbmdrYXB8cGVuZXJpbWF8a2FtdSkiLAoiaSIpLGFKPVJlZ0V4cCgiZmlyc3QuKm5hbWV8aW5pdGlhbHN8Zm5hbWV8Zmlyc3QkfGdpdmVuLipuYW1lfHZvcm5hbWV8bm9tYnJlfGZvcmVuYW1lfHByXHUwMGU5bm9tfHByZW5vbXxcdTU0MGR8bm9tZXxcdTA0MThcdTA0M2NcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1fFx1Yzc3NFx1Yjk4NHxcdTBkMmFcdTBkNDdcdTBkMzBcdTBkNGR8KFxcYnxffFxcKikoaXNpbXxhZHxhZChpfFx1MDEzMXxpbml6fFx1MDEzMW5cdTAxMzF6KT8pKFxcYnxffFxcKil8XHUwOTI4XHUwOTNlXHUwOTJlfG5hbWEgZGVwYW4iLCJpIiksYko9UmVnRXhwKCJsYXN0LipuYW1lfGxuYW1lfHN1cm5hbWUoPyFcXGQpfGxhc3QkfHNlY29uZG5hbWV8ZmFtaWx5LipuYW1lfG5hY2huYW1lfGFwZWxsaWRvcz98ZmFtaWxsZXxebm9tKD8hW2EtekEtWl0pfGNvZ25vbWV8XHU1OWQzfGFwZWxpZG9zfHN1cmVuYW1lfHNvYnJlbm9tZXxcdTA0MjRcdTA0MzBcdTA0M2NcdTA0MzhcdTA0M2JcdTA0MzhcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2MmVcdTA2MjdcdTA2NDZcdTA2NDhcdTA2MjdcdTA2MmZcdTA2YWZcdTA2Y2N8XHUwOTA5XHUwOTJhXHUwOTI4XHUwOTNlXHUwOTJlfFx1MGQyZVx1MGQzMVx1MGQ0MVx1MGQyYVx1MGQ0N1x1MGQzMFx1MGQ0ZHwoXFxifF98XFwqKShzb3lpc2ltfHNveWFkKGl8XHUwMTMxfGluaXp8XHUwMTMxblx1MDEzMXopPykoXFxifF98XFwqKXxcXGJcdWMxMzEoPzpbXlx1YmE4NV18XFxiKXxuYW1hIGJlbGFrYW5nIiwKImkiKSxjSj1SZWdFeHAoImNvdW50cnl8Y291bnRyaWVzfHBhXHUwMGVkc3xwYWlzfChcXGJ8XylsYW5kKFxcYnxfKSg/IS4qKG1hcmsuKikpfChefFteKFx1NTE2NXxcdTUxZmEpXSlcdTU2ZmR8XHU1NmZkXHU1YmI2fFx1YWQ2ZFx1YWMwMHxcdWIwOThcdWI3N2N8KFxcYnxfKShcdTAwZmNsa2V8dWxjZXx1bGtlKShcXGJ8Xyl8XHUwNmE5XHUwNjM0XHUwNjQ4XHUwNjMxfG5lZ2FyYSIsImkiKSxkSj1SZWdFeHAoIihefFteLl0pemlwfHBvc3RhbHxwb3N0Lipjb2RlfHBjb2RlfHBpbi4/Y29kZXxwb3N0bGVpdHphaGx8XFxiY3BcXGJ8XFxiY2RwXFxifFxcYmNhcFxcYnxcdTkwZjVcdTRmYmZcdTc1NmFcdTUzZjd8Y29kaWdvfGNvZHBvc3xcXGJjZXBcXGJ8XHUwNDFmXHUwNDNlXHUwNDQ3XHUwNDQyXHUwNDNlXHUwNDMyXHUwNDRiXHUwNDM5Lj9cdTA0MThcdTA0M2RcdTA0MzRcdTA0MzVcdTA0M2FcdTA0NDF8XHUwOTJhXHUwOTNmXHUwOTI4Lj9cdTA5MTVcdTA5NGJcdTA5MjF8XHUwZDJhXHUwZDNmXHUwZDI4XHUwZDRkXHUyMDBkXHUwZDE1XHUwZDRiXHUwZDIxXHUwZDRkfFx1OTBhZVx1NjUzZlx1N2YxNlx1NzgwMXxcdTkwYWVcdTdmMTZ8XHU5MGY1XHU5MDVlXHU1MzQwXHU4NjVmfChcXGJ8Xylwb3N0YSBrb2R1KFxcYnxfKXxcdWM2YjBcdWQzYjguP1x1YmM4OFx1ZDYzOHxrb2RlLj9wb3MiLAoiaSIpLGVKPXt9LEtJPShlSltGRC5CYl09e21lOiExLG5hOk1EfSxlSltGRC5lZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbInRlbCIsInRlbC1uYXRpb25hbCIsInRlbC1sb2NhbCJdLG5lOlpJLG5hOmZ1bmN0aW9uKGEpe3JldHVybiBHRChhLCEwKX19LGVKW0ZELktoXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsibmFtZSIsImNjLW5hbWUiXSxuZTokSSxuYTpORH0sZUpbRkQuWGRdPXttZTohMCxhdXRvY29tcGxldGU6WyJnaXZlbi1uYW1lIiwiY2MtZ2l2ZW4tbmFtZSJdLG5lOmFKLG5hOk5EfSxlSltGRC5jZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbImZhbWlseS1uYW1lIiwiY2MtZmFtaWx5LW5hbWUiXSxuZTpiSixuYTpORH0sZUpbRkQueGZdPXttZTohMCxhdXRvY29tcGxldGU6WyJjb3VudHJ5IiwiY291bnRyeS1uYW1lIl0sbmU6Y0osbmE6TkR9LGVKW0ZELnFnXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsicG9zdGFsLWNvZGUiXSxuZTpkSixuYTpJRH0sZUopO2Z1bmN0aW9uIGZKKGEpe3ZhciBiO3JldHVybiBifWZKLlA9ImludGVybmFsLmRldGVjdFVzZXJQcm92aWRlZERhdGEiOwp2YXIga0o9ZnVuY3Rpb24oYSl7dmFyIGI9aGQoYSxbImJ1dHRvbiIsImlucHV0Il0sNTApO2lmKCFiKXJldHVybiBudWxsO3ZhciBjPVN0cmluZyhiLnRhZ05hbWUpLnRvTG93ZXJDYXNlKCk7aWYoYz09PSJidXR0b24iKXJldHVybiBiO2lmKGM9PT0iaW5wdXQiKXt2YXIgZD1lZChiLCJ0eXBlIik7aWYoZD09PSJidXR0b24ifHxkPT09InN1Ym1pdCJ8fGQ9PT0iaW1hZ2UifHxkPT09ImZpbGUifHxkPT09InJlc2V0IilyZXR1cm4gYn1yZXR1cm4gbnVsbH0sbEo9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWMudGFyZ2V0O2lmKGQpe3ZhciBlPSRGKGEsImluZGl2aWR1YWxFbGVtZW50SWRzIixbXSk7aWYoZS5sZW5ndGg+MCl7dmFyIGY9ZUcoZCxiLGUpO3VFKGYpfXZhciBnPSExLGg9JEYoYSwiY29tbW9uQnV0dG9uSWRzIixbXSk7aWYoaC5sZW5ndGg+MCl7dmFyIGw9a0ooZCk7aWYobCl7dmFyIG49ZUcobCxiLGgpO3VFKG4pO2c9ITB9fXZhciBwPSRGKGEsInNlbGVjdG9yVG9UcmlnZ2VySWRzIiwKe30pLHE7Zm9yKHEgaW4gcClpZihwLmhhc093blByb3BlcnR5KHEpKXt2YXIgcj1nP3BbcV0uZmlsdGVyKGZ1bmN0aW9uKHYpe3JldHVybiBoLmluZGV4T2Yodik9PT0tMX0pOnBbcV07aWYoci5sZW5ndGghPT0wKXt2YXIgdD1wSShkLHEpO2lmKHQpe3ZhciB1PWVHKHQsYixyKTt1RSh1KX19fX19OwpmdW5jdGlvbiBtSihhLGIpe2lmKCFmaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0fHVuZGVmaW5lZCIsImFueSJdLGFyZ3VtZW50cyk7dmFyIGM9YT9UZChhKTp7fSxkPUpiKGMubWF0Y2hDb21tb25CdXR0b25zKSxlPSEhYy5jc3NTZWxlY3RvcixmPVpGKGIpO0wodGhpcywiZGV0ZWN0X2NsaWNrX2V2ZW50cyIsYy5tYXRjaENvbW1vbkJ1dHRvbnMsYy5jc3NTZWxlY3Rvcik7dmFyIGc9Yy51c2VWMkV2ZW50TmFtZT8iZ3RtLmNsaWNrLXYyIjoiZ3RtLmNsaWNrIixoPWMudXNlVjJFdmVudE5hbWU/ImVjbCI6ImNsIixsPWZ1bmN0aW9uKHApe3AucHVzaChmKTtyZXR1cm4gcH07aWYoZXx8ZCl7aWYoZCYmZEcoaCwiY29tbW9uQnV0dG9uSWRzIixsLFtdKSxlKXt2YXIgbj1MYihTdHJpbmcoYy5jc3NTZWxlY3RvcikpO2RHKGgsInNlbGVjdG9yVG9UcmlnZ2VySWRzIiwKZnVuY3Rpb24ocCl7cC5oYXNPd25Qcm9wZXJ0eShuKXx8KHBbbl09W10pO2wocFtuXSk7cmV0dXJuIHB9LHt9KX19ZWxzZSBkRyhoLCJpbmRpdmlkdWFsRWxlbWVudElkcyIsbCxbXSk7YkcoaCxmdW5jdGlvbigpeyRjKEIsImNsaWNrIixmdW5jdGlvbihwKXtsSihoLGcscCl9LCEwKX0pO3JldHVybiBmfW1KLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uQ2xpY2siOwp2YXIgbko9ZnVuY3Rpb24oKXt0aGlzLkg9W107dGhpcy5OPSEhQS5NdXRhdGlvbk9ic2VydmVyfTtuSi5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj10aGlzO2lmKHRoaXMuSC5sZW5ndGg9PT0wKXt2YXIgYz1mdW5jdGlvbigpe3ZhciBkPUIuYm9keTtpZihkKWlmKGIuTikobmV3IE11dGF0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24oKXtmb3IodmFyIGY9MDtmPGIuSC5sZW5ndGg7ZisrKWJkKGIuSFtmXSl9KSkub2JzZXJ2ZShkLHtjaGlsZExpc3Q6ITAsc3VidHJlZTohMH0pO2Vsc2V7dmFyIGU9ITE7JGMoZCwiRE9NTm9kZUluc2VydGVkIixmdW5jdGlvbigpe2V8fChlPSEwLGJkKGZ1bmN0aW9uKCl7ZT0hMTtmb3IodmFyIGY9MDtmPGIuSC5sZW5ndGg7ZisrKWJkKGIuSFtmXSl9KSl9KX19O0IuYm9keT9jKCk6YmQoYyl9dGhpcy5ILnB1c2goYSl9O25KLnByb3RvdHlwZS5SPWZ1bmN0aW9uKGEpe2lmKHRoaXMuSClmb3IodmFyIGI9MDtiPHRoaXMuSC5sZW5ndGg7YisrKXRoaXMuSFtiXT09PQphJiZ0aGlzLkguc3BsaWNlKGIsMSl9O3ZhciBvSj1uZXcgbko7CnZhciBwSj1mdW5jdGlvbihhKXthLmhhcygiUG9sbGluZ0lkIikmJihBLmNsZWFySW50ZXJ2YWwoTnVtYmVyKGEuZ2V0KCJQb2xsaW5nSWQiKSkpLGEucmVtb3ZlKCJQb2xsaW5nSWQiKSl9LHJKPWZ1bmN0aW9uKGEsYixjLGQpe2Z1bmN0aW9uIGUoKXtpZighckkoYS50YXJnZXQpKXtiLmhhcygiUmVjZW50T25TY3JlZW4iKXx8Yi5zZXQoIlJlY2VudE9uU2NyZWVuIiwiIitxSigpLnRvU3RyaW5nKCkpO2IuaGFzKCJGaXJzdE9uU2NyZWVuIil8fGIuc2V0KCJGaXJzdE9uU2NyZWVuIiwiIitxSigpLnRvU3RyaW5nKCkpO3ZhciBnPTA7Yi5oYXMoIlRvdGFsVmlzaWJsZVRpbWUiKSYmKGc9TnVtYmVyKGIuZ2V0KCJUb3RhbFZpc2libGVUaW1lIikpKTtnKz0xMDA7Yi5zZXQoIlRvdGFsVmlzaWJsZVRpbWUiLCIiK2cudG9TdHJpbmcoKSk7aWYoZz49Yyl7dmFyIGg9ZUcoYS50YXJnZXQsImd0bS5lbGVtZW50VmlzaWJpbGl0eSIsW2IudWlkXSksbD10SShhLnRhcmdldCk7aFsiZ3RtLnZpc2libGVSYXRpbyJdPQpNYXRoLnJvdW5kKGwqMUUzKS8xMDtoWyJndG0udmlzaWJsZVRpbWUiXT1jO2hbImd0bS52aXNpYmxlRmlyc3RUaW1lIl09TnVtYmVyKGIuZ2V0KCJGaXJzdE9uU2NyZWVuIikpO2hbImd0bS52aXNpYmxlTGFzdFRpbWUiXT1OdW1iZXIoYi5nZXQoIlJlY2VudE9uU2NyZWVuIikpO3VFKGgpO2QoKX19fWlmKCFiLmhhcygiUG9sbGluZ0lkIikmJihjPT09MCYmZSgpLCFiLmhhcygiSGFzRmlyZWQiKSkpe3ZhciBmPWNkKGUsMTAwKTtiLnNldCgiUG9sbGluZ0lkIixTdHJpbmcoZikpfX0scUo9ZnVuY3Rpb24oKXt2YXIgYT1OdW1iZXIodUEoImd0bS5zdGFydCIsMikpfHwwO3JldHVybiBOYigpLWF9LHNKPWZ1bmN0aW9uKGEsYil7dGhpcy5lbGVtZW50PWE7dGhpcy51aWQ9Yn07c0oucHJvdG90eXBlLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4hIXRoaXMuZWxlbWVudC5kYXRhc2V0WyJndG1WaXMiK2ErdGhpcy51aWRdfTtzSi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmVsZW1lbnQuZGF0YXNldFsiZ3RtVmlzIisKYSt0aGlzLnVpZF19O3NKLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmVsZW1lbnQuZGF0YXNldFsiZ3RtVmlzIithK3RoaXMudWlkXT1ifTtzSi5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe2RlbGV0ZSB0aGlzLmVsZW1lbnQuZGF0YXNldFsiZ3RtVmlzIithK3RoaXMudWlkXX07CmZ1bmN0aW9uIHRKKGEsYil7dmFyIGM9ZnVuY3Rpb24odSl7dmFyIHY9bmV3IHNKKHUudGFyZ2V0LHApO3UuaW50ZXJzZWN0aW9uUmF0aW8+PW4/di5oYXMoIkhhc0ZpcmVkIil8fHJKKHUsdixsLHE9PT0iT05DRSI/ZnVuY3Rpb24oKXtmb3IodmFyIHg9MDt4PHIubGVuZ3RoO3grKyl7dmFyIHk9bmV3IHNKKHJbeF0scCk7eS5zZXQoIkhhc0ZpcmVkIiwiMSIpO3BKKHkpfXZJKHQpO2gmJm9KLlIoZCl9OmZ1bmN0aW9uKCl7di5zZXQoIkhhc0ZpcmVkIiwiMSIpO3BKKHYpfSk6KHBKKHYpLHE9PT0iTUFOWV9QRVJfRUxFTUVOVCImJnYuaGFzKCJIYXNGaXJlZCIpJiYodi5yZW1vdmUoIkhhc0ZpcmVkIiksdi5yZW1vdmUoIlRvdGFsVmlzaWJsZVRpbWUiKSksdi5yZW1vdmUoIlJlY2VudE9uU2NyZWVuIikpfSxkPWZ1bmN0aW9uKCl7dmFyIHU9CiExLHY9bnVsbDtpZihmPT09IkNTUyIpe3RyeXt2PUIucXVlcnlTZWxlY3RvckFsbChnKX1jYXRjaChDKXt9dT0hIXYmJnIubGVuZ3RoIT09di5sZW5ndGh9ZWxzZSBpZihmPT09IklEIil7dmFyIHg9Qi5nZXRFbGVtZW50QnlJZChnKTt4JiYodj1beF0sdT1yLmxlbmd0aCE9PTF8fHJbMF0hPT14KX12fHwodj1bXSx1PXIubGVuZ3RoPjApO2lmKHUpe2Zvcih2YXIgeT0wO3k8ci5sZW5ndGg7eSsrKXBKKG5ldyBzSihyW3ldLHApKTtyPVtdO2Zvcih2YXIgej0wO3o8di5sZW5ndGg7eisrKXIucHVzaCh2W3pdKTt0Pj0wJiZ2SSh0KTtyLmxlbmd0aD4wJiYodD15SShjLHIsW25dKSl9fTtpZighZmgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdHx1bmRlZmluZWQiLCJhbnkiXSxhcmd1bWVudHMpO0wodGhpcywiZGV0ZWN0X2VsZW1lbnRfdmlzaWJpbGl0eV9ldmVudHMiKTt2YXIgZT1hP1RkKGEpOnt9LGY9ZS5zZWxlY3RvclR5cGUsZztzd2l0Y2goZil7Y2FzZSAiSUQiOmc9ClN0cmluZyhlLmlkKTticmVhaztjYXNlICJDU1MiOmc9U3RyaW5nKGUuc2VsZWN0b3IpO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIlVucmVjb2duaXplZCBlbGVtZW50IHNlbGVjdG9yIHR5cGUgIitmKyIuIE11c3QgYmUgb25lIG9mICdJRCcgb3IgJ0NTUycuIik7fXZhciBoPSEhZS51c2VEb21DaGFuZ2VMaXN0ZW5lcixsPU51bWJlcihlLm9uU2NyZWVuRHVyYXRpb24pfHwwLG49KE51bWJlcihlLm9uU2NyZWVuUmF0aW8pfHw1MCkvMTAwLHA9WkYoYikscT1lLmZpcmluZ0ZyZXF1ZW5jeSxyPVtdLHQ9LTE7ZCgpO2gmJm9KLksoZCk7cmV0dXJuIHB9dEouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25FbGVtZW50VmlzaWJpbGl0eSI7ZnVuY3Rpb24gdUooKXt9dUouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25FcnJvciI7CmZ1bmN0aW9uIEFKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZH1BSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1JbnRlcmFjdGlvbiI7CmZ1bmN0aW9uIEZKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZn1GSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1TdWJtaXQiOwpmdW5jdGlvbiBLSigpe3ZhciBhPXRoaXM7fUtKLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uR2FTZW5kIjsKZnVuY3Rpb24gUkooYSxiKXt2YXIgYz10aGlzO3JldHVybiBmfVJKLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uSGlzdG9yeUNoYW5nZSI7dmFyIFNKPVsiaHR0cDovLyIsImh0dHBzOi8vIiwiamF2YXNjcmlwdDoiLCJmaWxlOi8vIl07CnZhciBUSj1mdW5jdGlvbihhLGIpe2lmKGEud2hpY2g9PT0yfHxhLmN0cmxLZXl8fGEuc2hpZnRLZXl8fGEuYWx0S2V5fHxhLm1ldGFLZXkpcmV0dXJuITE7dmFyIGM9b2QoYiwiaHJlZiIpO2lmKGMuaW5kZXhPZigiOiIpIT09LTEmJiFTSi5zb21lKGZ1bmN0aW9uKGgpe3JldHVybiBTYihjLGgpfSkpcmV0dXJuITE7dmFyIGQ9Yy5pbmRleE9mKCIjIiksZT1vZChiLCJ0YXJnZXQiKTtpZihlJiZlIT09Il9zZWxmIiYmZSE9PSJfcGFyZW50IiYmZSE9PSJfdG9wInx8ZD09PTApcmV0dXJuITE7aWYoZD4wKXt2YXIgZj1PaihSaihjKSksZz1PaihSaihBLmxvY2F0aW9uLmhyZWYpKTtyZXR1cm4gZiE9PWd9cmV0dXJuITB9LFVKPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPUxqKFJqKChiLmF0dHJpYnV0ZXMmJmIuYXR0cmlidXRlcy5mb3JtYWN0aW9uP2IuZm9ybUFjdGlvbjoiIil8fGIuYWN0aW9ufHxvZChiLCJocmVmIil8fGIuc3JjfHxiLmNvZGV8fGIuY29kZWJhc2V8fCIiKSwiaG9zdCIpLApkPTA7ZDxhLmxlbmd0aDtkKyspdHJ5e2lmKChuZXcgUmVnRXhwKGFbZF0pKS50ZXN0KGMpKXJldHVybiExfWNhdGNoKGUpe31yZXR1cm4hMH0sVko9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGMpe3ZhciBkPWMudGFyZ2V0O2lmKGQmJmMud2hpY2ghPT0zJiYhKGMuSHx8Yy50aW1lU3RhbXAmJmMudGltZVN0YW1wPT09Yikpe2I9Yy50aW1lU3RhbXA7ZD1oZChkLFsiYSIsImFyZWEiXSwxMDApO2lmKCFkKXJldHVybiBjLnJldHVyblZhbHVlO3ZhciBlPWMuZGVmYXVsdFByZXZlbnRlZHx8Yy5yZXR1cm5WYWx1ZT09PSExLGY9JEYoImxjbCIsZT8ibnYubXd0IjoibXd0IiwwKSxnO2c9ZT8kRigibGNsIiwibnYuaWRzIixbXSk6JEYoImxjbCIsImlkcyIsW10pO2Zvcih2YXIgaD1bXSxsPTA7bDxnLmxlbmd0aDtsKyspe3ZhciBuPWdbbF0scD0kRigibGNsIiwiYWZmLm1hcCIse30pW25dO3AmJiFVSihwLGQpfHxoLnB1c2gobil9aWYoaC5sZW5ndGgpe3ZhciBxPVRKKGMsZCkscj1lRyhkLCJndG0ubGlua0NsaWNrIiwKaCk7clsiZ3RtLmVsZW1lbnRUZXh0Il09ZmQoZCk7clsiZ3RtLndpbGxPcGVuSW5OZXdXaW5kb3ciXT0hcTtpZihxJiYhZSYmZiYmZC5ocmVmKXt2YXIgdD0hIUNiKFN0cmluZyhvZChkLCJyZWwiKXx8IiIpLnNwbGl0KCIgIiksZnVuY3Rpb24oeSl7cmV0dXJuIHkudG9Mb3dlckNhc2UoKT09PSJub3JlZmVycmVyIn0pLHU9QVsob2QoZCwidGFyZ2V0Iil8fCJfc2VsZiIpLnN1YnN0cmluZygxKV0sdj0hMCx4PXRFKGZ1bmN0aW9uKCl7dmFyIHk7aWYoeT12JiZ1KXt2YXIgejthOmlmKHQpe3ZhciBDO3RyeXtDPW5ldyBNb3VzZUV2ZW50KGMudHlwZSx7YnViYmxlczohMH0pfWNhdGNoKEQpe2lmKCFCLmNyZWF0ZUV2ZW50KXt6PSExO2JyZWFrIGF9Qz1CLmNyZWF0ZUV2ZW50KCJNb3VzZUV2ZW50cyIpO0MuaW5pdEV2ZW50KGMudHlwZSwhMCwhMCl9Qy5IPSEwO2MudGFyZ2V0LmRpc3BhdGNoRXZlbnQoQyk7ej0hMH1lbHNlIHo9ITE7eT0hen15JiYodS5sb2NhdGlvbi5ocmVmPW9kKGQsCiJocmVmIikpfSxmKTtpZihpRShyLHgsZikpdj0hMTtlbHNlIHJldHVybiBjLnByZXZlbnREZWZhdWx0JiZjLnByZXZlbnREZWZhdWx0KCksYy5yZXR1cm5WYWx1ZT0hMX1lbHNlIHNFKHIsZnVuY3Rpb24oKXt9LGZ8fDJFMyk7cmV0dXJuITB9fX12YXIgYj0wOyRjKEIsImNsaWNrIixhLCExKTskYyhCLCJhdXhjbGljayIsYSwhMSl9OwpmdW5jdGlvbiBXSihhLGIpe3ZhciBjPXRoaXM7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTt2YXIgZD1UZChhKTtURihbZnVuY3Rpb24oKXtMKGMsImRldGVjdF9saW5rX2NsaWNrX2V2ZW50cyIsZCl9XSk7dmFyIGU9ZCYmISFkLndhaXRGb3JUYWdzLGY9ZCYmISFkLmNoZWNrVmFsaWRhdGlvbixnPWQ/ZC5hZmZpbGlhdGVEb21haW5zOnZvaWQgMCxoPVpGKGIpO2lmKGUpe3ZhciBsPU51bWJlcihkLndhaXRGb3JUYWdzVGltZW91dCk7bD4wJiZpc0Zpbml0ZShsKXx8KGw9MkUzKTt2YXIgbj1mdW5jdGlvbihxKXtyZXR1cm4gTWF0aC5tYXgobCxxKX07ZEcoImxjbCIsIm13dCIsbiwwKTtmfHxkRygibGNsIiwibnYubXd0IixuLDApfXZhciBwPWZ1bmN0aW9uKHEpe3EucHVzaChoKTsKcmV0dXJuIHF9O2RHKCJsY2wiLCJpZHMiLHAsW10pO2Z8fGRHKCJsY2wiLCJudi5pZHMiLHAsW10pO2cmJmRHKCJsY2wiLCJhZmYubWFwIixmdW5jdGlvbihxKXtxW2hdPWc7cmV0dXJuIHF9LHt9KTskRigibGNsIiwiaW5pdCIsITEpfHwoVkooKSxhRygibGNsIiwiaW5pdCIsITApKTtyZXR1cm4gaH1XSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayI7CmZ1bmN0aW9uIGdLKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZ31nSy5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPblNjcm9sbCI7ZnVuY3Rpb24gaEsoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYS5saW1pdCYmYS5naz49YS5saW1pdClhLmFpJiZBLmNsZWFySW50ZXJ2YWwoYS5haSk7ZWxzZXthLmdrKys7dmFyIGI9TmIoKTt1RSh7ZXZlbnQ6YS5ldmVudE5hbWUsImd0bS50aW1lcklkIjphLmFpLCJndG0udGltZXJFdmVudE51bWJlciI6YS5naywiZ3RtLnRpbWVySW50ZXJ2YWwiOmEuaW50ZXJ2YWwsImd0bS50aW1lckxpbWl0IjphLmxpbWl0LCJndG0udGltZXJTdGFydFRpbWUiOmEuTW8sImd0bS50aW1lckN1cnJlbnRUaW1lIjpiLCJndG0udGltZXJFbGFwc2VkVGltZSI6Yi1hLk1vLCJndG0udHJpZ2dlcnMiOmEuTHR9KX19fQpmdW5jdGlvbiBpSyhhLGIpewpyZXR1cm4gZn1pSy5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPblRpbWVyIjsKdmFyIGpLPWZ1bmN0aW9uKGEsYixjKXtmdW5jdGlvbiBkKCl7dmFyIGc9YSgpO2YrPWU/KE5iKCktZSkqZy5wbGF5YmFja1JhdGUvMUUzOjA7ZT1OYigpfXZhciBlPTAsZj0wO3JldHVybntjcmVhdGVFdmVudDpmdW5jdGlvbihnLGgsbCl7dmFyIG49YSgpLHA9bi5XbixxPWw/TWF0aC5yb3VuZChsKTpoP01hdGgucm91bmQobi5XbipoKTpNYXRoLnJvdW5kKG4uR3IpLHI9aCE9PXZvaWQgMD9NYXRoLnJvdW5kKGgqMTAwKTpwPD0wPzA6TWF0aC5yb3VuZChxL3AqMTAwKSx0PUIuaGlkZGVuPyExOnRJKGMpPj0uNTtkKCk7dmFyIHU9dm9pZCAwO2IhPT12b2lkIDAmJih1PVtiXSk7dmFyIHY9ZUcoYywiZ3RtLnZpZGVvIix1KTt2WyJndG0udmlkZW9Qcm92aWRlciJdPSJ5b3V0dWJlIjt2WyJndG0udmlkZW9TdGF0dXMiXT1nO3ZbImd0bS52aWRlb1VybCJdPW4udXJsO3ZbImd0bS52aWRlb1RpdGxlIl09bi50aXRsZTt2WyJndG0udmlkZW9EdXJhdGlvbiJdPU1hdGgucm91bmQocCk7dlsiZ3RtLnZpZGVvQ3VycmVudFRpbWUiXT0KTWF0aC5yb3VuZChxKTt2WyJndG0udmlkZW9FbGFwc2VkVGltZSJdPU1hdGgucm91bmQoZik7dlsiZ3RtLnZpZGVvUGVyY2VudCJdPXI7dlsiZ3RtLnZpZGVvVmlzaWJsZSJdPXQ7cmV0dXJuIHZ9LG10OmZ1bmN0aW9uKCl7ZT1OYigpfSxCajpmdW5jdGlvbigpe2QoKX19fTt2YXIgQWM9QWEoWyJkYXRhLWd0bS15dC1pbnNwZWN0ZWQtIl0pLGtLPVsid3d3LnlvdXR1YmUuY29tIiwid3d3LnlvdXR1YmUtbm9jb29raWUuY29tIl0sbEs7CnZhciBtSz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5tYXAoZnVuY3Rpb24oZyl7cmV0dXJue3RlOmcsSm86Zyx3bzp2b2lkIDB9fSk7aWYoIWIubGVuZ3RoKXJldHVybiBkO3ZhciBlPWIubWFwKGZ1bmN0aW9uKGcpe3JldHVybnt0ZTpnKmMsSm86dm9pZCAwLHdvOmd9fSk7aWYoIWQubGVuZ3RoKXJldHVybiBlO3ZhciBmPWQuY29uY2F0KGUpO2Yuc29ydChmdW5jdGlvbihnLGgpe3JldHVybiBnLnRlLWgudGV9KTtyZXR1cm4gZn0sbks9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP1tdOmE7Zm9yKHZhciBiPVtdLGM9MDtjPGEubGVuZ3RoO2MrKylhW2NdPDB8fGIucHVzaChhW2NdKTtiLnNvcnQoZnVuY3Rpb24oZCxlKXtyZXR1cm4gZC1lfSk7cmV0dXJuIGJ9LG9LPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphO2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspYVtjXT4xMDB8fGFbY108MHx8KGJbY109YVtjXS8xMDApO2Iuc29ydChmdW5jdGlvbihkLGUpe3JldHVybiBkLQplfSk7cmV0dXJuIGJ9LHBLPWZ1bmN0aW9uKGEsYil7dmFyIGMsZDtmdW5jdGlvbiBlKCl7dD1qSyhmdW5jdGlvbigpe3JldHVybnt1cmw6eCx0aXRsZTp5LFduOnYsR3I6YS5nZXRDdXJyZW50VGltZSgpLHBsYXliYWNrUmF0ZTp6fX0sYi5yZixhLmdldElmcmFtZSgpKTt2PTA7eT14PSIiO3o9MTtyZXR1cm4gZn1mdW5jdGlvbiBmKEcpe3N3aXRjaChHKXtjYXNlIDE6dj1NYXRoLnJvdW5kKGEuZ2V0RHVyYXRpb24oKSk7eD1hLmdldFZpZGVvVXJsKCk7aWYoYS5nZXRWaWRlb0RhdGEpe3ZhciBOPWEuZ2V0VmlkZW9EYXRhKCk7eT1OP04udGl0bGU6IiJ9ej1hLmdldFBsYXliYWNrUmF0ZSgpO2IueXI/dUUodC5jcmVhdGVFdmVudCgic3RhcnQiKSk6dC5CaigpO3U9bUsoYi5ldCxiLmN0LGEuZ2V0RHVyYXRpb24oKSk7cmV0dXJuIGcoRyk7ZGVmYXVsdDpyZXR1cm4gZn19ZnVuY3Rpb24gZygpe0M9YS5nZXRDdXJyZW50VGltZSgpO0Q9TWIoKS5nZXRUaW1lKCk7dC5tdCgpO3IoKTtyZXR1cm4gaH0KZnVuY3Rpb24gaChHKXt2YXIgTjtzd2l0Y2goRyl7Y2FzZSAwOnJldHVybiBuKEcpO2Nhc2UgMjpOPSJwYXVzZSI7Y2FzZSAzOnZhciBTPWEuZ2V0Q3VycmVudFRpbWUoKS1DO049TWF0aC5hYnMoKE1iKCkuZ2V0VGltZSgpLUQpLzFFMyp6LVMpPjE/InNlZWsiOk58fCJidWZmZXJpbmciO2EuZ2V0Q3VycmVudFRpbWUoKSYmKGIueHI/dUUodC5jcmVhdGVFdmVudChOKSk6dC5CaigpKTtxKCk7cmV0dXJuIGw7Y2FzZSAtMTpyZXR1cm4gZShHKTtkZWZhdWx0OnJldHVybiBofX1mdW5jdGlvbiBsKEcpe3N3aXRjaChHKXtjYXNlIDA6cmV0dXJuIG4oRyk7Y2FzZSAxOnJldHVybiBnKEcpO2Nhc2UgLTE6cmV0dXJuIGUoRyk7ZGVmYXVsdDpyZXR1cm4gbH19ZnVuY3Rpb24gbigpe2Zvcig7ZDspe3ZhciBHPWM7QS5jbGVhclRpbWVvdXQoZCk7RygpfWIud3ImJnVFKHQuY3JlYXRlRXZlbnQoImNvbXBsZXRlIiwxKSk7cmV0dXJuIGUoLTEpfWZ1bmN0aW9uIHAoKXt9ZnVuY3Rpb24gcSgpe2QmJgooQS5jbGVhclRpbWVvdXQoZCksZD0wLGM9cCl9ZnVuY3Rpb24gcigpe2lmKHUubGVuZ3RoJiZ6IT09MCl7dmFyIEc9LTEsTjtkb3tOPXVbMF07aWYoTi50ZT5hLmdldER1cmF0aW9uKCkpcmV0dXJuO0c9KE4udGUtYS5nZXRDdXJyZW50VGltZSgpKS96O2lmKEc8MCYmKHUuc2hpZnQoKSx1Lmxlbmd0aD09PTApKXJldHVybn13aGlsZShHPDApO2M9ZnVuY3Rpb24oKXtkPTA7Yz1wO3UubGVuZ3RoPjAmJnVbMF0udGU9PT1OLnRlJiYodS5zaGlmdCgpLHVFKHQuY3JlYXRlRXZlbnQoInByb2dyZXNzIixOLndvLE4uSm8pKSk7cigpfTtkPUEuc2V0VGltZW91dChjLEcqMUUzKX19dmFyIHQsdT1bXSx2LHgseSx6LEMsRCxJPWUoLTEpO2Q9MDtjPXA7cmV0dXJue29uU3RhdGVDaGFuZ2U6ZnVuY3Rpb24oRyl7ST1JKEcpfSxvblBsYXliYWNrUmF0ZUNoYW5nZTpmdW5jdGlvbihHKXtDPWEuZ2V0Q3VycmVudFRpbWUoKTtEPU1iKCkuZ2V0VGltZSgpO3QuQmooKTt6PUc7cSgpO3IoKX19fSxySz0KZnVuY3Rpb24oYSl7YmQoZnVuY3Rpb24oKXtmdW5jdGlvbiBiKCl7Zm9yKHZhciBkPWMuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImlmcmFtZSIpLGU9ZC5sZW5ndGgsZj0wO2Y8ZTtmKyspcUsoZFtmXSxhKX12YXIgYz1CO2IoKTtvSi5LKGIpfSl9LHFLPWZ1bmN0aW9uKGEsYil7aWYoIWEuZ2V0QXR0cmlidXRlKCJkYXRhLWd0bS15dC1pbnNwZWN0ZWQtIitiLnJmKSYmKENjKGEsImRhdGEtZ3RtLXl0LWluc3BlY3RlZC0iK2IucmYpLHNLKGEsYi5jbykpKXthLmlkfHwoYS5pZD10SygpKTt2YXIgYz1BLllULGQ9Yy5nZXQoYS5pZCk7ZHx8KGQ9bmV3IGMuUGxheWVyKGEuaWQpKTt2YXIgZT1wSyhkLGIpLGY9e30sZztmb3IoZyBpbiBlKWY9e01nOmYuTWd9LGYuTWc9ZyxlLmhhc093blByb3BlcnR5KGYuTWcpJiZkLmFkZEV2ZW50TGlzdGVuZXIoZi5NZyxmdW5jdGlvbihoKXtyZXR1cm4gZnVuY3Rpb24obCl7cmV0dXJuIGVbaC5NZ10obC5kYXRhKX19KGYpKX19LHNLPWZ1bmN0aW9uKGEsCmIpe3ZhciBjPWEuZ2V0QXR0cmlidXRlKCJzcmMiKTtpZih1SyhjLCJlbWJlZC8iKSl7aWYoYy5pbmRleE9mKCJlbmFibGVqc2FwaT0xIik+MClyZXR1cm4hMDtpZihiKXt2YXIgZDt2YXIgZT1jLmluZGV4T2YoIj8iKSE9PS0xPyImIjoiPyI7Yy5pbmRleE9mKCJvcmlnaW49Iik+LTE/ZD1jK2UrImVuYWJsZWpzYXBpPTEiOihsS3x8KGxLPUIubG9jYXRpb24ucHJvdG9jb2wrIi8vIitCLmxvY2F0aW9uLmhvc3RuYW1lLEIubG9jYXRpb24ucG9ydCYmKGxLKz0iOiIrQi5sb2NhdGlvbi5wb3J0KSksZD1jK2UrImVuYWJsZWpzYXBpPTEmb3JpZ2luPSIrZW5jb2RlVVJJQ29tcG9uZW50KGxLKSk7dmFyIGY7Zj1qYyhkKTthLnNyYz1rYyhmKS50b1N0cmluZygpO3JldHVybiEwfX1yZXR1cm4hMX0sdUs9ZnVuY3Rpb24oYSxiKXtpZighYSlyZXR1cm4hMTtmb3IodmFyIGM9MDtjPGtLLmxlbmd0aDtjKyspaWYoYS5pbmRleE9mKCIvLyIra0tbY10rIi8iK2IpPj0wKXJldHVybiEwO3JldHVybiExfSwKdEs9ZnVuY3Rpb24oKXt2YXIgYT0iIitNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqMUU5KTtyZXR1cm4gQi5nZXRFbGVtZW50QnlJZChhKT90SygpOmF9OwpmdW5jdGlvbiB2SyhhLGIpe3ZhciBjPXRoaXM7dmFyIGQ9ZnVuY3Rpb24oKXtySyhxKX07aWYoIWVoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3QiLCJhbnkiXSxhcmd1bWVudHMpO1RGKFtmdW5jdGlvbigpe0woYywiZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzIix7Zml4TWlzc2luZ0FwaTohIWEuZ2V0KCJmaXhNaXNzaW5nQXBpIil9KX1dKTt2YXIgZT1aRihiKSxmPSEhYS5nZXQoImNhcHR1cmVTdGFydCIpLGc9ISFhLmdldCgiY2FwdHVyZUNvbXBsZXRlIiksaD0hIWEuZ2V0KCJjYXB0dXJlUGF1c2UiKSxsPW9LKFRkKGEuZ2V0KCJwcm9ncmVzc1RocmVzaG9sZHNQZXJjZW50IikpKSxuPW5LKFRkKGEuZ2V0KCJwcm9ncmVzc1RocmVzaG9sZHNUaW1lSW5TZWNvbmRzIikpKSxwPSEhYS5nZXQoImZpeE1pc3NpbmdBcGkiKTsKaWYoIShmfHxnfHxofHxsLmxlbmd0aHx8bi5sZW5ndGgpKXJldHVybjt2YXIgcT17eXI6Zix3cjpnLHhyOmgsY3Q6bCxldDpuLGNvOnAscmY6ZX0scj1BLllUO2lmKHIpcmV0dXJuIHIucmVhZHkmJnIucmVhZHkoZCksZTt2YXIgdD1BLHU9dC5vbllvdVR1YmVJZnJhbWVBUElSZWFkeTt0Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5PWZ1bmN0aW9uKCl7dSYmdSgpO2QoKX07YmQoZnVuY3Rpb24oKXtmb3IodmFyIHY9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IikseD12Lmxlbmd0aCx5PTA7eTx4O3krKyl7dmFyIHo9dlt5XS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKHVLKHosImlmcmFtZV9hcGkiKXx8dUsoeiwicGxheWVyX2FwaSIpKXJldHVybiBlfWZvcih2YXIgQz1CLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJpZnJhbWUiKSxEPUMubGVuZ3RoLEk9YWwoNSxmdW5jdGlvbigpe3JldHVybiExfSksRz0wO0c8RDtHKyspaWYoIUkmJnNLKENbR10scS5jbykpcmV0dXJuIFVjKCJodHRwczovL3d3dy55b3V0dWJlLmNvbS9pZnJhbWVfYXBpIiksClprKDUsITApLGV9KTtyZXR1cm4gZX12Sy5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbllvdVR1YmVBY3Rpdml0eSI7ZnVuY3Rpb24gd0soYSxiKXtpZighbGgoYSl8fCFmaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGM9Yj9UZChiKTp7fTtjLnJlZ2V4Q2FjaGU9YWwoMyxmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwfSk7cmV0dXJuIEdoKGEsYyl9d0suUD0iaW50ZXJuYWwuZXZhbHVhdGVCb29sZWFuRXhwcmVzc2lvbiI7ZnVuY3Rpb24geEsoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9eEsuUD0iaW50ZXJuYWwuZXZhbHVhdGVNYXRjaGluZ1J1bGVzIjt2YXIgeUs9bmV3IE1hcChbWyJhdyIsNF1dKTtmdW5jdGlvbiB6SyhhKXt2YXIgYj12clthXSxjPXlLLmdldChhKTtyZXR1cm4gYz8od3EoYixjKXx8W10pLnNvbWUoZnVuY3Rpb24oZCl7cmV0dXJuIGQubT09PSIwInx8ZC5tPT09dm9pZCAwfSk6ITF9CmZ1bmN0aW9uIEFLKGEsYil7aWYoTSg0OTUpKXtmb3IodmFyIGM9bmV3IE1hcCxkPW0oeUspLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1tKGUudmFsdWUpLGc9Zi5uZXh0KCkudmFsdWUsaD1mLm5leHQoKS52YWx1ZSxsPWcsbj1hW2xdLHA9QXJyYXkuaXNBcnJheShuKT9uWzBdOm47aWYocCE9PXZvaWQgMCl7dmFyIHE9e30scj0ocS5rPXAscS5pPVN0cmluZyhNYXRoLmZsb29yKERhdGUubm93KCkvMUUzKSkscS5iPVtdLHEubT0iMSIscSksdD1hcShyLGgpO3QmJih6SyhsKXx8Yy5zZXQobCx0KSl9fWlmKGMuc2l6ZSl7dmFyIHUsdj1bXSx4PWIucGF0aHx8Ii8iO3YucHVzaChlbmNvZGVVUklDb21wb25lbnQoInAiKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KHgpKTtiLkFyJiZ2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCJjZSIpKyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGIuQXIpKSk7dmFyIHk9Yi5kb21haW4mJmIuZG9tYWluIT09ImF1dG8iPwpiLmRvbWFpbjoiYXV0bzoiK0EubG9jYXRpb24uaG9zdG5hbWU7di5wdXNoKGVuY29kZVVSSUNvbXBvbmVudCgiZCIpKyI9IitlbmNvZGVVUklDb21wb25lbnQoeSkpO2Zvcih2YXIgej1tKGMpLEM9ei5uZXh0KCk7IUMuZG9uZTtDPXoubmV4dCgpKXt2YXIgRD1tKEMudmFsdWUpLEk9RC5uZXh0KCkudmFsdWUsRz1ELm5leHQoKS52YWx1ZTt2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KEkpKyI9IitlbmNvZGVVUklDb21wb25lbnQoRykpfXU9Il8vc2V0X2Nvb2tpZT8iK3Yuam9pbigiJiIpO3ZhciBOLFM9RSg1OCk7Tj1FZih1LFMpO3ZhciBXPVhqKCkrIi8iK047bWQoVyl9fX07ZnVuY3Rpb24gQksoYSl7cmV0dXJuIkNXVldlYlZpZXdNZXNzYWdlImluIGF9ZnVuY3Rpb24gQ0soYSl7dmFyIGI9QSxjPWIud2Via2l0O2RlbGV0ZSBiLndlYmtpdDthKGIud2Via2l0KTtiLndlYmtpdD1jfWZ1bmN0aW9uIERLKGEsYil7dmFyIGM9e2FjdGlvbjoiZ2NsX3NldHVwIn07aWYoQksoYS5tZXNzYWdlSGFuZGxlcnMpKXJldHVybiBhLm1lc3NhZ2VIYW5kbGVycy5DV1ZXZWJWaWV3TWVzc2FnZS5wb3N0TWVzc2FnZSh7Y29tbWFuZDpiLHBheWxvYWQ6Y30pLCEwO3ZhciBkPWEubWVzc2FnZUhhbmRsZXJzW2JdO3JldHVybiBkPyhkLnBvc3RNZXNzYWdlKGMpLCEwKTohMX07dmFyIEVLPXt9LEZLPShFSy5hd2I9e25vdEZvdW5kOjE3OH0sRUsueXRiPXtub3RGb3VuZDoxOTR9LEVLKTtmdW5jdGlvbiBHSyhhKXt2YXIgYixjPShiPUZLW2FdKT09bnVsbD92b2lkIDA6Yi5ub3RGb3VuZDtjJiZQKGMpfQpmdW5jdGlvbiBISyhhKXtpZighbm0oam0uYmEuam4pJiYid2Via2l0ImluIEEmJkEud2Via2l0Lm1lc3NhZ2VIYW5kbGVycyl7dmFyIGI9ZnVuY3Rpb24oKXt0cnl7Q0soZnVuY3Rpb24oYyl7aWYoYyl7dmFyIGQ7ZD1CSyhjLm1lc3NhZ2VIYW5kbGVycyl8fCJhd2IiaW4gYy5tZXNzYWdlSGFuZGxlcnM/e2NvbW1hbmQ6ImF3YiIsc291cmNlOjV9OihCSyhjLm1lc3NhZ2VIYW5kbGVycyl8fCJ5dGIiaW4gYy5tZXNzYWdlSGFuZGxlcnMpJiZNKDQ5OSk/e2NvbW1hbmQ6Inl0YiIsc291cmNlOjh9OnZvaWQgMDtkJiYobW0oam0uYmEuam4sZnVuY3Rpb24oZSl7dmFyIGY9ZC5zb3VyY2U7ZS5nY2xpZCYmbHMoImdjbF9hdyIsZS5nY2xpZCxmLGEpO2Uud2JyYWlkJiZscygiZ2NsX2diIixlLndicmFpZCxmLGEpfSksREsoYyxkLmNvbW1hbmQpfHxHSyhkLmNvbW1hbmQpKX19KX1jYXRjaChjKXtQKDE5Myl9fTtIbChmdW5jdGlvbigpe0JyKGZwKT9iKCk6SWwoYixmcCl9LGZwKX19O3ZhciBJSz1bImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20iLCJodHRwczovL3d3dy55b3V0dWJlLmNvbSIsImh0dHBzOi8vbS55b3V0dWJlLmNvbSJdO2Z1bmN0aW9uIEpLKGEpe3JldHVybiBhLmRhdGEuYWN0aW9uIT09ImdjbF90cmFuc2ZlciI/KFAoMTczKSwhMCk6YS5kYXRhLmdhZFNvdXJjZT9hLmRhdGEuZ2NsaWQ/ITE6KFAoMTgxKSwhMCk6KFAoMTgwKSwhMCl9CmZ1bmN0aW9uIEtLKGEsYil7aWYoIWF8fE0oYSkpe2lmKG5tKGptLmJhLlZlKSlyZXR1cm4gUCgxNzYpLGptLmJhLlZlO2lmKG5tKGptLmJhLm1uKSlyZXR1cm4gUCgxNzApLGptLmJhLlZlO3ZhciBjPUZwKCk7aWYoIWMpUCgxNzEpO2Vsc2UgaWYoYy5vcGVuZXIpe3ZhciBkPWZ1bmN0aW9uKGcpe2lmKCFJSy5pbmNsdWRlcyhnLm9yaWdpbikpUCgxNzIpO2Vsc2UgaWYoIUpLKGcpKXt2YXIgaD17Z2FkU291cmNlOmcuZGF0YS5nYWRTb3VyY2V9O2guZ2NsaWQ9Zy5kYXRhLmdjbGlkO21tKGptLmJhLlZlLGgpO2ImJmcuZGF0YS5nY2xpZCYmbHMoImdjbF9hdyIsU3RyaW5nKGcuZGF0YS5nY2xpZCksNixiKTt2YXIgbDsobD1nLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbik9PW51bGx8fGwuY2FsbChnKTtudChjLCJtZXNzYWdlIixkKX19O2lmKG10KGMsIm1lc3NhZ2UiLGQpKXttbShqbS5iYS5tbiwhMCk7Zm9yKHZhciBlPW0oSUspLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKWMub3BlbmVyLnBvc3RNZXNzYWdlKHthY3Rpb246ImdjbF9zZXR1cCJ9LApmLnZhbHVlKTtQKDE3NCk7cmV0dXJuIGptLmJhLlZlfVAoMTc1KX19fTsKdmFyIExLPWZ1bmN0aW9uKGEpe3ZhciBiPXtwcmVmaXg6TyhhLk0sRi5ELkZkKXx8TyhhLk0sRi5ELm5iKSxkb21haW46TyhhLk0sRi5ELkxiKSxwZDpPKGEuTSxGLkQuQ2IpLGZsYWdzOk8oYS5NLEYuRC5UYil9O2EuTS5pc0d0bUV2ZW50JiYoYi5wYXRoPU8oYS5NLEYuRC52YykpO3JldHVybiBifSxNSz1mdW5jdGlvbihhLGIpe2lmKCFRKGEsSC5KLldlKSl7dmFyIGM9S0soMTE5KTtpZihjKXt2YXIgZD1ubShjKSxlPWZ1bmN0aW9uKGcpe1YoYSxILkouV2UsITApO3ZhciBoPVIoYSxGLkQuemYpLGw9UihhLEYuRC5BZik7VShhLEYuRC56ZixTdHJpbmcoZy5nYWRTb3VyY2UpKTtVKGEsRi5ELkFmLDYpO1YoYSxILkouc2EpO1YoYSxILkoudWcpO1UoYSxGLkQuc2EpO2IoKTtVKGEsRi5ELnpmLGgpO1UoYSxGLkQuQWYsbCk7VihhLEguSi5XZSwhMSl9O2lmKGQpZShkKTtlbHNle3ZhciBmPXZvaWQgMDtmPXBtKGMsZnVuY3Rpb24oZyxoKXtlKGgpO3FtKGMsZil9KX19fX0sUEs9ZnVuY3Rpb24oYSl7dmFyIGIsCmMsZCxlO2I9YS5UbjtjPWEubW87ZD1hLlFvO2U9YS5VbjtpZihiKXtpZihkcihjW0YuRC5YZl0sISFjW0YuRC5BYV0pKXtpZihXaigpJiZCcihBcigpKSl7Zm9yKHZhciBmPVVxKCEwKSxnPXt9LGg9bShPYmplY3Qua2V5cyh2cikpLGw9aC5uZXh0KCk7IWwuZG9uZTtsPWgubmV4dCgpKXt2YXIgbj1sLnZhbHVlLHA9dnJbbl0scT1mW3BdO2lmKHEpe3ZhciByPSRwKHEsNCk7ciYmKG9zKE1hdGgubWluKE5yKHIpLE5iKCkpfHxOYigpLHAsNCl8fChnW25dPXEpKX19Zm9yKHZhciB0PXt9LHU9bShPYmplY3Qua2V5cyhnKSksdj11Lm5leHQoKTshdi5kb25lO3Y9dS5uZXh0KCkpe3ZhciB4PXYudmFsdWUseT1nW3hdO2lmKHkhPT12b2lkIDApe3ZhciB6PSRwKHksNCk7eiYmei5tPT09IjEiJiYodFt4XT16LmspfX1BSyh0LGUpfXBzKGUpO3RzKGUpO1F2KGUpfWlmKE9wKCkhPT0yKXtncyhlKTtpcyhlKTtpZihZZigxNSkpe3ZhciBDPWUsRD1kcyhBLmxvY2F0aW9uLmhyZWYsITAsITEpOwpELmxlbmd0aHx8KEQ9ZHMoQS5kb2N1bWVudC5yZWZlcnJlciwhMSwhMCkpO2lmKEQubGVuZ3RoKXtDPUN8fHt9O3ZhciBJPURbMF07SS52YWx1ZSYmbXMoImdjbF9kYyIsW3t2ZXJzaW9uOiIiLGdjbGlkOkkudmFsdWUsdGltZXN0YW1wOk5iKCkscWE6SS5xYX1dLEMpfX1ISyhlKTtLSyh2b2lkIDAsZSl9ZWxzZSBncyhlKTtpZihXaigpJiZCcihBcigpKSl7dmFyIEc9ZnMoKTtBSyhHLGUpfXhzKHFzLGUpO3lzKGUpfWNbRi5ELkFhXSYmKHZzKGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10pLHVzKGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZS5wcmVmaXgpLHdzKGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZS5wcmVmaXgpLFJ2KEd2KGUucHJlZml4KSxjW0YuRC5BYV0sY1tGLkQuYWRdLCEhY1tGLkQud2NdLGUpLFJ2KCJGUEFVIixjW0YuRC5BYV0sY1tGLkQuYWRdLCEhY1tGLkQud2NdLGUpKTtkJiZBcyhOSyk7Q3MoT0spfSxxcz1bImF3IiwiZGMiLAoiZ2IiXSxPSz1bImF3IiwiZGMiLCJnYiIsImFnIl0sTks9WyJhdyIsImRjIiwiZ2IiLCJhZyIsImdhZF9zb3VyY2UiXTsKdmFyIFFLPWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouR2EpLGM9UShhLEguSi5zbiksZD1NKDQ0MykmJmM/VHYoYik6VXYoYikuU2gsZT12b2lkIDA7TSg1NzApJiZjJiYoZT1TdihiLHtYaDohMH0pLmlrKTt2YXIgZjthOntpZihJZig0NykmJlhvKGZwKSl7dmFyIGc9ZEkoYSwiY2NkX2VuYWJsZV9jbSIsITEpLGg9UShhLEguSi5ZYSk7VihhLEguSi5haiwhMCk7VihhLEguSi5mZCwhMCk7aWYoaHcoaCkpe1YoYSxILkouSWgsITApO3ZhciBsPWR8fEF2KCksbj17fSxwPXtldmVudE1ldGFkYXRhOihuW0guSi5EY109WC5WLkZiLG5bSC5KLllhXT1oLG5bSC5KLnpqXT1sLG5bSC5KLmZkXT0hMCxuW0guSi5hal09ITAsbltILkouSWhdPSEwLG5bSC5KLlhtXT1nJiZJZig0Nyksbiksbm9HdG1FdmVudDohMH0scT1zQyhhLnRhcmdldC5kZXN0aW5hdGlvbklkLGEuZXZlbnROYW1lLGEuTS5FYSk7bUQocSxhLk0uZXZlbnRJZCxwKTtnJiZRKGEsSC5KLndkKXx8VihhLEguSi5ZYSk7Zj1sOwpicmVhayBhfX1mPXZvaWQgMH12YXIgcj1kfHxmO2lmKHJ8fGUpe3ZhciB0LHU7dD1SKGEsRi5ELlBhKTt1PUt6LmdqLmJwO3ZhciB2PVIoYSxGLkQuV2MpOyF0JiZ2JiYodD12W0YuRC5QYV0sdT1Lei5nai51cSk7dHx8KHQ9QXYoUihhLEYuRC5HZCkpLHNiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsVC5XLkZoKSx1PUt6LmdqLlZxKTtVKGEsRi5ELlBhLHQpO1UoYSxGLkQuZG0sdSk7ciYmVShhLEYuRC54YyxyKTtlJiZVKGEsIl8mZWNzaWQyIixlKTtWKGEsSC5KLmxqLCEwKX19Owp2YXIgUks9ZnVuY3Rpb24oYSl7UShhLEguSi55bil8fFYoYSxILkouSmEsITEpfSxTSz1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLmRhKSxjPVhvKGZwKSxkPVEoYSxILkouc2EpLGU9UihhLEYuRC5HZCksZj1RKGEsSC5KLnBuKTtzd2l0Y2goYil7Y2FzZSBYLlYueGE6IWYmJmUmJlJLKGEpO2EuZXZlbnROYW1lPT09Ri5ELndhJiZWKGEsSC5KLkphLCEwKTticmVhaztjYXNlIFguVi5PYjpjYXNlIFguVi5GYjppZighY3x8ZHx8IWYmJmUpYS5pc0Fib3J0ZWQ9ITA7YnJlYWs7Y2FzZSBYLlYudWI6Y3x8KGEuaXNBYm9ydGVkPSEwKTshZiYmZXx8UksoYSk7UShhLEguSi53ZCl8fChhLmlzQWJvcnRlZD0hMCk7YS5ldmVudE5hbWUhPT1GLkQud2F8fE8oYS5NLEYuRC5DbCkhPT0hMSYmTyhhLk0sRi5ELlRkKSE9PSExfHxWKGEsSC5KLkphLCEwKTticmVhaztjYXNlIFguVi5LYTphLmV2ZW50TmFtZSE9PUYuRC5zYyYmUShhLEguSi5QYykmJihhLmlzQWJvcnRlZD0hMCksYS50YXJnZXQuaWRzW2RDWzFdXSYmCk8oYS5NLEYuRC5paCkhPT0hMCYmKGEuaXNBYm9ydGVkPSEwKX19O3ZhciBUSz1mdW5jdGlvbihhKXt2YXIgYixjPU0oNTc2KTtpZihRKGEsSC5KLnNuKSlzd2l0Y2goUShhLEguSi5kYSkpe2Nhc2UgWC5WLkZiOmlmKCEoYS5ldmVudE5hbWUhPT1GLkQud2F8fGMmJmh3KFEoYSxILkouWWEpKSkpYnJlYWs7Yj05NzthLmV2ZW50TmFtZT09PUYuRC53YSYmR3UoVC5XLk9rKTtNKDQ4OCk/VihhLEguSi5KYSwhMSk6UksoYSk7YnJlYWs7Y2FzZSBYLlYuT2I6aWYoYS5ldmVudE5hbWU9PT1GLkQud2EpYnJlYWs7Yj05ODtNKDQ4OCk/VihhLEguSi5KYSwhMSk6UksoYSk7YnJlYWs7Y2FzZSBYLlYueGE6Yj05OX0hUShhLEguSi5KYSkmJmImJlAoYik7UShhLEguSi5KYSk9PT0hMCYmKGEuaXNBYm9ydGVkPSEwKX07CnZhciBVSz1mdW5jdGlvbihhKXtpZihNKDU2OSkmJldqKCkmJlEoYSxILkouZGEpPT09WC5WLnhhJiYhUShhLEguSi5FYykpe3ZhciBiPU1hdGguZmxvb3IoRGF0ZS5ub3coKS8xRTMpLGM9bmV3IFVpbnQ4QXJyYXkoW2ImMjU1LGI+PjgmMjU1XSksZCxlPXltKCl8fCJYWCIsZj16bSgpfHwiMDAiO2Q9bmV3IFVpbnQ4QXJyYXkoW2UuY2hhckNvZGVBdCgwKSxlLmNoYXJDb2RlQXQoMSksZi5jaGFyQ29kZUF0KDApLGYuY2hhckNvZGVBdCgxKV0pO3ZhciBnPW5ldyBVaW50OEFycmF5KDcpLGg7aWYoKGg9QS5jcnlwdG8pPT1udWxsfHwhaC5nZXRSYW5kb21WYWx1ZXMoZykpZm9yKHZhciBsPTA7bDw3O2wrKylnW2xdPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyNTYpO3ZhciBuPW5ldyBVaW50OEFycmF5KFtdLmNvbmNhdCh3KGMpLHcoZCksdyhnKSkpLHA7dHJ5e3A9YnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyx3KG4pKSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csCiJfIikucmVwbGFjZSgvPSskLywiIil9Y2F0Y2gocSl7cD0iIn1VKGEsRi5ELkVpLHApfX07ZnVuY3Rpb24gVksoKXtyZXR1cm4gTXQoNykmJk10KDkpJiZNdCgxMCl9Owp2YXIgYUw9ZnVuY3Rpb24oYSxiKXthJiYoJEsoInNpZCIsYS50YXJnZXRJZCxiKSwkSygiY2MiLGEuY2xpZW50Q291bnQsYiksJEsoInRsIixhLnRvdGFsTGlmZU1zLGIpLCRLKCJoYyIsYS5oZWFydGJlYXRDb3VudCxiKSwkSygiY2wiLGEuY2xpZW50TGlmZU1zLGIpKX0sJEs9ZnVuY3Rpb24oYSxiLGMpe2IhPW51bGwmJmMucHVzaChhKyI9IitiKX0sYkw9ZnVuY3Rpb24oKXt2YXIgYT1CLnJlZmVycmVyO2lmKGEpe3ZhciBiO3JldHVybiBMaihSaihhKSwiaG9zdCIpPT09KChiPUEubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpiLmhvc3QpPzE6Mn1yZXR1cm4gMH0sZEw9ZnVuY3Rpb24oKXt0aGlzLmphPWNMO3RoaXMuTj0wO3RoaXMueWE9TmYoNTcsNSk7dGhpcy5SPU5mKDU4LDUwKTt0aGlzLmZhPURiKCk7dGhpcy5MYT0iaHR0cHM6Ly8iK0UoMjEpKyIvYT8ifTtkTC5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIsYyxkKXsKdmFyIGU9YkwoKSxmLGc9W107Zj1BPT09QS50b3AmJmUhPT0wJiZiPyhiPT1udWxsP3ZvaWQgMDpiLmNsaWVudENvdW50KT4xP2U9PT0yPzE6MjplPT09Mj8wOjM6NDthJiYkSygic2kiLGEuSmcsZyk7JEsoIm0iLDAsZyk7JEsoImlzcyIsZixnKTskSygiaWYiLGMsZyk7YUwoYixnKTtkJiYkSygiZm0iLGVuY29kZVVSSUNvbXBvbmVudChkLnN1YnN0cmluZygwLHRoaXMuUikpLGcpO3RoaXMuWihnKTt9O2RMLnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9W107JEsoIm0iLDEsZik7JEsoInMiLGEsZik7JEsoInBvIixiTCgpLGYpO2ImJigkSygic3QiLGIuc3RhdGUsZiksJEsoInNpIixiLkpnLGYpLCRLKCJzbSIsYi5VZyxmKSk7YUwoYyxmKTskSygiYyIsZCxmKTtlJiYkSygiZm0iLGVuY29kZVVSSUNvbXBvbmVudChlLnN1YnN0cmluZygwLAp0aGlzLlIpKSxmKTt0aGlzLlooZik7fTtkTC5wcm90b3R5cGUuWj1mdW5jdGlvbihhKXthPWE9PT12b2lkIDA/W106YTshZm4uTnx8dGhpcy5OPj10aGlzLnlhfHwoJEsoInBpZCIsdGhpcy5mYSxhKSwkSygiYmMiLCsrdGhpcy5OLGEpLGEudW5zaGlmdCgiY3RpZD0iK0UoNSkrIiZ0PXMiKSx0aGlzLmphKCIiK3RoaXMuTGErYS5qb2luKCImIikpKX07ZnVuY3Rpb24gZUwoYSl7cmV0dXJuIGEucGVyZm9ybWFuY2UmJmEucGVyZm9ybWFuY2Uubm93KCl8fERhdGUubm93KCl9CnZhciBmTD1mdW5jdGlvbihhLGIpe3ZhciBjPUEsZD1OZig1Myw1MDApLGU9TmYoNTQsNUUzKSxmPU5mKDgsMjApLGc9TmYoNTUsNUUzKSxoO3ZhciBsPWZ1bmN0aW9uKG4scCxxKXtxPXE9PT12b2lkIDA/e3FvOmZ1bmN0aW9uKCl7fSxzbzpmdW5jdGlvbigpe30scG86ZnVuY3Rpb24oKXt9LG9uRmFpbHVyZTpmdW5jdGlvbigpe319OnE7dGhpcy5Jaj1uO3RoaXMuSD1wO3RoaXMuTj1xO3RoaXMuZmE9dGhpcy5qYT10aGlzLmhlYXJ0YmVhdENvdW50PXRoaXMuRGo9MDt0aGlzLmZlPSExO3RoaXMuSz17fTt0aGlzLmlkPVN0cmluZyhNYXRoLmZsb29yKE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKk1hdGgucmFuZG9tKCkpKTt0aGlzLnN0YXRlPTA7dGhpcy5KZz1lTCh0aGlzLkgpO3RoaXMuVWc9ZUwodGhpcy5IKTt0aGlzLlo9MTB9O2wucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oKXt0aGlzLlIoMSk7CnRoaXMuTGEoKX07bC5wcm90b3R5cGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm57c3RhdGU6dGhpcy5zdGF0ZSxKZzpNYXRoLnJvdW5kKGVMKHRoaXMuSCktdGhpcy5KZyksVWc6TWF0aC5yb3VuZChlTCh0aGlzLkgpLXRoaXMuVWcpfX07bC5wcm90b3R5cGUuUj1mdW5jdGlvbihuKXt0aGlzLnN0YXRlIT09biYmKHRoaXMuc3RhdGU9bix0aGlzLlVnPWVMKHRoaXMuSCkpfTtsLnByb3RvdHlwZS52Zz1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcodGhpcy5EaisrKX07bC5wcm90b3R5cGUuTGE9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuaGVhcnRiZWF0Q291bnQrKzt0aGlzLnlhKHt0eXBlOjAsY2xpZW50SWQ6dGhpcy5pZCxyZXF1ZXN0SWQ6dGhpcy52ZygpLG1heERlbGF5OnRoaXMuaGUoKX0sZnVuY3Rpb24ocCl7aWYocC50eXBlPT09MCl7dmFyIHE7aWYoKChxPXAuZmFpbHVyZSk9PW51bGw/dm9pZCAwOnEuZmFpbHVyZVR5cGUpIT1udWxsKWlmKHAuc3RhdHMmJihuLnN0YXRzPQpwLnN0YXRzKSxuLmZhKysscC5pc0RlYWR8fG4uZmE+Zil7dmFyIHI9cC5pc0RlYWQmJnAuZmFpbHVyZS5mYWlsdXJlVHlwZTtuLlo9cnx8MTA7bi5SKDQpO24uQWooKTt2YXIgdCx1Oyh1PSh0PW4uTikucG8pPT1udWxsfHx1LmNhbGwodCx7ZmFpbHVyZVR5cGU6cnx8MTAsZGF0YTpwLmZhaWx1cmUuZGF0YX0pfWVsc2Ugbi5SKDMpLG4uUGgoKTtlbHNle2lmKG4uaGVhcnRiZWF0Q291bnQ+cC5zdGF0cy5oZWFydGJlYXRDb3VudCtmKXtuLmhlYXJ0YmVhdENvdW50PXAuc3RhdHMuaGVhcnRiZWF0Q291bnQ7dmFyIHYseDsoeD0odj1uLk4pLm9uRmFpbHVyZSk9PW51bGx8fHguY2FsbCh2LHtmYWlsdXJlVHlwZToxM30pfW4uc3RhdHM9cC5zdGF0czt2YXIgeT1uLnN0YXRlO24uUigyKTtpZih5IT09MilpZihuLmZlKXt2YXIgeixDOyhDPSh6PW4uTikuc28pPT1udWxsfHxDLmNhbGwoeil9ZWxzZXtuLmZlPSEwO3ZhciBELEk7KEk9KEQ9bi5OKS5xbyk9PW51bGx8fEkuY2FsbChEKX1uLmZhPQowO24uTmooKTtuLlBoKCl9fX0pfTtsLnByb3RvdHlwZS5oZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnN0YXRlPT09Mj9lOmR9O2wucHJvdG90eXBlLlBoPWZ1bmN0aW9uKCl7dmFyIG49dGhpczt0aGlzLkguc2V0VGltZW91dChmdW5jdGlvbigpe24uTGEoKX0sTWF0aC5tYXgoMCx0aGlzLmhlKCktKGVMKHRoaXMuSCktdGhpcy5qYSkpKX07bC5wcm90b3R5cGUua3I9ZnVuY3Rpb24obixwLHEpe3ZhciByPXRoaXM7dGhpcy55YSh7dHlwZToxLGNsaWVudElkOnRoaXMuaWQscmVxdWVzdElkOnRoaXMudmcoKSxjb21tYW5kOm59LGZ1bmN0aW9uKHQpe2lmKHQudHlwZT09PTEpaWYodC5yZXN1bHQpcCh0LnJlc3VsdCk7ZWxzZXt2YXIgdSx2LHgseT17ZmFpbHVyZVR5cGU6KHg9KHU9dC5mYWlsdXJlKT09bnVsbD92b2lkIDA6dS5mYWlsdXJlVHlwZSkhPW51bGw/eDoxMixkYXRhOih2PXQuZmFpbHVyZSk9PW51bGw/dm9pZCAwOnYuZGF0YX0seixDOyhDPSh6PXIuTikub25GYWlsdXJlKT09Cm51bGx8fEMuY2FsbCh6LHkpO3EoeSl9fSl9O2wucHJvdG90eXBlLnlhPWZ1bmN0aW9uKG4scCl7dmFyIHE9dGhpcztpZih0aGlzLnN0YXRlPT09NCluLmZhaWx1cmU9e2ZhaWx1cmVUeXBlOnRoaXMuWn0scChuKTtlbHNle3ZhciByPXRoaXMuc3RhdGUhPT0yJiZuLnR5cGUhPT0wLHQ9bi5yZXF1ZXN0SWQsdSx2PXRoaXMuSC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIHk9cS5LW3RdO3kmJihpbSg2KSxxLmtkKHksNykpfSwodT1uLm1heERlbGF5KSE9bnVsbD91OmcpLHg9e3JlcXVlc3Q6bixIbzpwLHpvOnIsTnM6dn07dGhpcy5LW3RdPXg7cnx8dGhpcy5zZW5kUmVxdWVzdCh4KX19O2wucHJvdG90eXBlLnNlbmRSZXF1ZXN0PWZ1bmN0aW9uKG4pe3RoaXMuamE9ZUwodGhpcy5IKTtuLnpvPSExO3RoaXMuSWoobi5yZXF1ZXN0KX07bC5wcm90b3R5cGUuTmo9ZnVuY3Rpb24oKXtmb3IodmFyIG49bShPYmplY3Qua2V5cyh0aGlzLkspKSxwPW4ubmV4dCgpOyFwLmRvbmU7cD1uLm5leHQoKSl7dmFyIHE9CnRoaXMuS1twLnZhbHVlXTtxLnpvJiZ0aGlzLnNlbmRSZXF1ZXN0KHEpfX07bC5wcm90b3R5cGUuQWo9ZnVuY3Rpb24oKXtmb3IodmFyIG49bShPYmplY3Qua2V5cyh0aGlzLkspKSxwPW4ubmV4dCgpOyFwLmRvbmU7cD1uLm5leHQoKSl0aGlzLmtkKHRoaXMuS1twLnZhbHVlXSx0aGlzLlopfTtsLnByb3RvdHlwZS5rZD1mdW5jdGlvbihuLHApe3RoaXMuYWMobik7dmFyIHE9bi5yZXF1ZXN0O3EuZmFpbHVyZT17ZmFpbHVyZVR5cGU6cH07bi5IbyhxKX07bC5wcm90b3R5cGUuYWM9ZnVuY3Rpb24obil7ZGVsZXRlIHRoaXMuS1tuLnJlcXVlc3QucmVxdWVzdElkXTt0aGlzLkguY2xlYXJUaW1lb3V0KG4uTnMpfTtsLnByb3RvdHlwZS5rcz1mdW5jdGlvbihuKXt0aGlzLmphPWVMKHRoaXMuSCk7dmFyIHA9dGhpcy5LW24ucmVxdWVzdElkXTtpZihwKXRoaXMuYWMocCkscC5IbyhuKTtlbHNle3ZhciBxLHI7KHI9KHE9dGhpcy5OKS5vbkZhaWx1cmUpPT1udWxsfHxyLmNhbGwocSx7ZmFpbHVyZVR5cGU6MTR9KX19OwpoPW5ldyBsKGEsYyxiKTtyZXR1cm4gaH07CnZhciBnTD1mdW5jdGlvbigpe3JldHVybiBhbCgxOCxmdW5jdGlvbigpe3JldHVybiBuZXcgZEx9KX0sY0w9ZnVuY3Rpb24oYSl7aW8obG8oY28uaWEuWmIpLGZ1bmN0aW9uKCl7WmMoYSl9KX0saEw9ZnVuY3Rpb24oYSl7dmFyIGI9YS5zdWJzdHJpbmcoMCxhLmluZGV4T2YoIi9fL3NlcnZpY2Vfd29ya2VyIikpO3JldHVybiImMXA9MSIrKGI/IiZwYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpOiIiKX0saUw9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5vcmlnaW47aWYoIWIpcmV0dXJuIG51bGw7KE0oNDMyKT9XaigpOldqKCkmJiFhKSYmKGE9IiIrYitYaigpKyIvXy9zZXJ2aWNlX3dvcmtlciIpO3ZhciBjPWEsZCxlPUxmKDExKTtlPUxmKDEwKTtkPWU7Yz8oYy5jaGFyQXQoYy5sZW5ndGgtMSkhPT0iLyImJgooYys9Ii8iKSxhPWMrZCk6YT0iaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vc3RhdGljL3NlcnZpY2Vfd29ya2VyLyIrZCsiLyI7dmFyIGY7dHJ5e2Y9bmV3IFVSTChhKX1jYXRjaChnKXtyZXR1cm4gbnVsbH1yZXR1cm4gZi5wcm90b2NvbCE9PSJodHRwczoiP251bGw6Zn0sakw9ZnVuY3Rpb24oYSl7dmFyIGI9bm0oam0uYmEuT2gpO3JldHVybiBiJiZiW2FdfSxrTD1mdW5jdGlvbihhKXt2YXIgYj10aGlzO3RoaXMuSz1nTCgpO3RoaXMuWj10aGlzLlI9ITE7dGhpcy5mYT1udWxsO3RoaXMuaW5pdFRpbWU9TWF0aC5yb3VuZChOYigpKTt0aGlzLkg9MTU7dGhpcy5OPXRoaXMuRnIoYSk7QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yi5pbml0aWFsaXplKCl9LDFFMyk7YmQoZnVuY3Rpb24oKXtiLnpzKGEpfSl9O2s9a0wucHJvdG90eXBlO2suZGVsZWdhdGU9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZ2V0U3RhdGUoKSE9PTI/KHRoaXMuSy5IKHRoaXMuSCx7c3RhdGU6dGhpcy5nZXRTdGF0ZSgpLApKZzp0aGlzLmluaXRUaW1lLFVnOk1hdGgucm91bmQoTmIoKSktdGhpcy5pbml0VGltZX0sdm9pZCAwLGEuY29tbWFuZFR5cGUpLGMoe2ZhaWx1cmVUeXBlOnRoaXMuSH0pKTp0aGlzLk4ua3IoYSxiLGMpfTtrLmdldFN0YXRlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTi5nZXRTdGF0ZSgpLnN0YXRlfTtrLnpzPWZ1bmN0aW9uKGEpe3ZhciBiPUEubG9jYXRpb24ub3JpZ2luLGM9dGhpcyxkPVhjKCk7dHJ5e3ZhciBlPWQuY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpLGY9YS5wYXRobmFtZSxnPWZbZi5sZW5ndGgtMV09PT0iLyI/YS50b1N0cmluZygpOmEudG9TdHJpbmcoKSsiLyIsaD1hLm9yaWdpbiE9PSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbSI/aEwoZik6IiIsbDtNKDEzMykmJihsPXtzYW5kYm94OiJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIn0pO1hjKGcrInN3X2lmcmFtZS5odG1sP29yaWdpbj0iK2VuY29kZVVSSUNvbXBvbmVudChiKSsKaCx2b2lkIDAsbCx2b2lkIDAsZSk7dmFyIG49ZnVuY3Rpb24oKXtkLmNvbnRlbnREb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpO2UuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXtjLmZhPWUuY29udGVudFdpbmRvdztkLmNvbnRlbnRXaW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZnVuY3Rpb24ocCl7cC5vcmlnaW49PT1hLm9yaWdpbiYmYy5OLmtzKHAuZGF0YSl9KTtjLmluaXRpYWxpemUoKX0pfTtkLmNvbnRlbnREb2N1bWVudC5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIj9uKCk6ZC5jb250ZW50V2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGZ1bmN0aW9uKCl7bigpfSl9Y2F0Y2gocCl7ZC5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGQpLHRoaXMuSD0xMSx0aGlzLksuSyh2b2lkIDAsdm9pZCAwLHRoaXMuSCxwLnRvU3RyaW5nKCkpfX07ay5Gcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9ZkwoZnVuY3Rpb24oZCl7dmFyIGU7KGU9Yi5mYSk9PQpudWxsfHxlLnBvc3RNZXNzYWdlKGQsYS5vcmlnaW4pfSx7cW86ZnVuY3Rpb24oKXtiLlI9ITA7Yi5LLksoYy5nZXRTdGF0ZSgpLGMuc3RhdHMpfSxzbzpmdW5jdGlvbigpe30scG86ZnVuY3Rpb24oZCl7Yi5SPyhiLkg9KGQ9PW51bGw/dm9pZCAwOmQuZmFpbHVyZVR5cGUpfHwxMCxiLksuSChiLkgsYy5nZXRTdGF0ZSgpLGMuc3RhdHMsdm9pZCAwLGQ9PW51bGw/dm9pZCAwOmQuZGF0YSkpOihiLkg9KGQ9PW51bGw/dm9pZCAwOmQuZmFpbHVyZVR5cGUpfHw0LGIuSy5LKGMuZ2V0U3RhdGUoKSxjLnN0YXRzLGIuSCxkPT1udWxsP3ZvaWQgMDpkLmRhdGEpKX0sb25GYWlsdXJlOmZ1bmN0aW9uKGQpe2IuSD1kLmZhaWx1cmVUeXBlO2IuSy5IKGIuSCxjLmdldFN0YXRlKCksYy5zdGF0cyxkLmNvbW1hbmQsZC5kYXRhKX19KTtyZXR1cm4gY307ay5pbml0aWFsaXplPWZ1bmN0aW9uKCl7dGhpcy5afHx0aGlzLk4uaW5pdCgpO3RoaXMuWj0hMH07CnZhciBsTD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZTtpZigoZT1qTChhKSk9PW51bGx8fCFlLmRlbGVnYXRlKXt2YXIgZj1JYygpPzE2OjY7Z0woKS5IKGYsdm9pZCAwLHZvaWQgMCxiLmNvbW1hbmRUeXBlKTtkKHtmYWlsdXJlVHlwZTpmfSk7cmV0dXJufWpMKGEpLmRlbGVnYXRlKGIsYyxkKTt9OwpmdW5jdGlvbiBtTChhLGIsYyxkKXt2YXIgZT1pTChhKTtpZihlPT09bnVsbCl7ZCgiX2lzX3N3PWYiKyhJYygpPzE2OjYpKyJ0ZSIpO3JldHVybn12YXIgZj1iPzE6MCxnPU1hdGgucm91bmQoTmIoKSksaCxsPShoPWpMKGUub3JpZ2luKSk9PW51bGw/dm9pZCAwOmguaW5pdFRpbWUsbj1sP2ctbDp2b2lkIDAscDtNKDQzMik/cD1XaigpP3ZvaWQgMDpBLmxvY2F0aW9uLmhyZWY6cD1BLmxvY2F0aW9uLmhyZWY7bEwoZS5vcmlnaW4se2NvbW1hbmRUeXBlOjAscGFyYW1zOnt1cmw6YSxtZXRob2Q6Zix0ZW1wbGF0ZXM6Yyxib2R5OmJ8fCIiLHByb2Nlc3NSZXNwb25zZTohMCxzaW5jZUluaXQ6bixhdHRyaWJ1dGlvblJlcG9ydGluZzohMCxyZWZlcmVyOnAsc3RyaWN0Ok0oNTg0KX19LGZ1bmN0aW9uKCl7fSxmdW5jdGlvbihxKXt2YXIgcj0iX2lzX3N3PWYiK3EuZmFpbHVyZVR5cGUsdCx1PSh0PWpMKGUub3JpZ2luKSk9PQpudWxsP3ZvaWQgMDp0LmdldFN0YXRlKCk7dSE9PXZvaWQgMCYmKHIrPSJzIit1KTtkKG4/cisoInQiK24pOnIrInRlIil9KTt9O2Z1bmN0aW9uIG5MKGEpe2lmKElmKDQ3KSYmZEkoYSwiY2NkX2FkZF8xcF9kYXRhIiwhMSkmJldqKCkpe3ZhciBiPWEuTTtpZihJYygpJiZiZygiaW50ZXJuYWxfc3dfYWxsb3dlZCIsIiIpKXt2YXIgYz1layhiKSxkPVdqKCk/WGooKTp2b2lkIDAsZTtlPWQ/e3BhdGg6ZCxlbzoiZnVsbCJ9OmM/e3BhdGg6YyxlbzoibGl0ZSJ9OnZvaWQgMDtpZihlKXt2YXIgZj1lLmVvLGc9bmV3IFVSTChlLnBhdGgsQS5sb2NhdGlvbi5vcmlnaW4pO2lmKGcub3JpZ2luPT09QS5sb2NhdGlvbi5vcmlnaW4mJnB5KGYpPT09dm9pZCAwKXt2YXIgaD1vbShqbS5iYS5PaCx7fSk7aFtmXXx8KGhbZl09bmV3IG55KGcpKX19fX19O3ZhciBvTD1mdW5jdGlvbihhKXtuTChhKX07CnZhciBwTD1mdW5jdGlvbihhKXtpZighUShhLEguSi5KYSkmJiFhLmlzQWJvcnRlZClpZihRKGEsSC5KLmRhKSE9PVguVi54YSlRKGEsSC5KLlhtKSYmVShhLEYuRC5KaCwiMSIpLEl6KGEpO2Vsc2V7dmFyIGI9UShhLEguSi5ZYSksYz1SKGEsRi5ELkJjKSxkPVEoYSxILkouZmQpLGU9SWYoNDcpJiZkSShhLCJjY2RfZW5hYmxlX2NtIiwhMSksZj1YbyhmcCkmJlEoYSxILkoud2QpJiZlO2YmJihVKGEsRi5ELkpoLCIxIiksUShhLEguSi5JaCkmJihWKGEsSC5KLllhKSxVKGEsRi5ELkJjKSxWKGEsSC5KLmZkLCExKSkpO3ZhciBnPXJ2KG12KTtWKGEsSC5KLmduLGcpO2Zvcih2YXIgaCxsPVtdLG49bShxdikscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpe3ZhciBxPXAudmFsdWUscj1nW3EucGJdO2lmKHI9PT12b2lkIDB8fHI8cS5PZylicmVhaztsLnB1c2goci50b1N0cmluZygpKX0oaD1sLmpvaW4oIn4iKSkmJlUoYSwiXyZnY2xfY3RyIixoKTt2YXIgdDt2YXIgdT17cmFuZG9tOlEoYSwKSC5KLkViKSxsYWJlbDpSKGEsRi5ELkdkKX0sdj1RKGEsSC5KLkdhKSx4PXd2KCk7eD8oeXYoW3VdLHYpLHQ9eC5sZW5ndGg9PT0wP3tyYW5kb206MCxsYWJlbDoiMCJ9OnhbMF0pOnQ9dm9pZCAwO3ZhciB5PXQ7eSYmYS5tZXJnZUhpdERhdGFGb3JLZXkoRi5ELlRhLHtsYXN0X3JhbmRvbTp5LnJhbmRvbSxsYXN0X2xhYmVsOnkubGFiZWx9KTtJeihhKTtpZihRKGEsSC5KLm9iKSYmWG8oZnApKXt2YXIgej1adShhLHtNOnVDKGEuTSl9KTtWKHosSC5KLmRhLFguVi5aZCk7SXooeil9aWYoUShhLEguSi5saikpe3ZhciBDPVp1KGEse006dUMoYS5NKX0pO1YoQyxILkouZGEsWC5WLnpkKTtJeihDKX1pZihmKXt2YXIgRD1adShhLHtNOnVDKGEuTSl9KTtVKEQsRi5ELkpoLCIyIik7VihELEguSi5FYywhMCk7VihELEguSi5mZCxkKTtWKEQsSC5KLllhLGIpO1UoRCxGLkQuQmMsYyk7SXooRCl9fX07dmFyIHFMPWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouZGEpPT09WC5WLnhhO2lmKCFifHxhLmV2ZW50TmFtZT09PUYuRC5JYnx8YS5NLmlzR3RtRXZlbnQpYS5jb3B5VG9IaXREYXRhKEYuRC5IYSksYiYmKGEuY29weVRvSGl0RGF0YShGLkQuRmYpLGEuY29weVRvSGl0RGF0YShGLkQuRGYpLGEuY29weVRvSGl0RGF0YShGLkQuRWYpLGEuY29weVRvSGl0RGF0YShGLkQuQ2YpLFUoYSxGLkQud2ksRi5ELkliKSxhLmNvcHlUb0hpdERhdGEoRi5ELlNkKSxhLmNvcHlUb0hpdERhdGEoRi5ELlFkKSxhLmNvcHlUb0hpdERhdGEoRi5ELlJkKSl9O3ZhciByTD1mdW5jdGlvbigpe3ZhciBhPUhjJiZIYy51c2VyQWdlbnR8fCIiO2lmKGEuaW5kZXhPZigiU2FmYXJpIik8MHx8L0Nocm9tZXxDb2FzdHxPcGVyYXxFZGd8U2lsa3xBbmRyb2lkLy50ZXN0KGEpKXJldHVybiExO3ZhciBiPSgvVmVyc2lvblwvKFtcZFwuXSspLy5leGVjKGEpfHxbXSlbMV18fCIiO2lmKGI9PT0iIilyZXR1cm4hMTtmb3IodmFyIGM9WyIxNCIsIjEiLCIxIl0sZD1iLnNwbGl0KCIuIiksZT0wO2U8ZC5sZW5ndGg7ZSsrKXtpZihjW2VdPT09dm9pZCAwKXJldHVybiEwO2lmKGRbZV0hPT1jW2VdKXJldHVybiBOdW1iZXIoZFtlXSk+TnVtYmVyKGNbZV0pfXJldHVybiBkLmxlbmd0aD49Yy5sZW5ndGh9O2Z1bmN0aW9uIHNMKCl7dmFyIGE7YT1hPT09dm9pZCAwP2RvY3VtZW50OmE7dmFyIGI7cmV0dXJuISgoYj1hLmZlYXR1cmVQb2xpY3kpPT1udWxsfHwhYi5hbGxvd2VkRmVhdHVyZXMoKS5pbmNsdWRlcygiYXR0cmlidXRpb24tcmVwb3J0aW5nIikpfTt2YXIgdEw9ZnVuY3Rpb24oYSl7WG8oRi5ELm1hKSYmKEEuX2d0bXBjbT09PSEwfHxyTCgpP1UoYSxGLkQuRmUsIjIiKTpzTCgpJiZVKGEsRi5ELkZlLCIxIikpOyhPYygpfHxRYygpKSYmVihhLEguSi5vYiwhMCk7VihhLEguSi5ZZSxRKGEsSC5KLlhlKSYmIVhvKGZwKSk7UShhLEguSi5zYSkmJlUoYSxGLkQuc2EsITApO2EuTS5ldmVudE1ldGFkYXRhW0guSi5hZV0mJlUoYSxGLkQuVm0sITApfTt2YXIgdUw9ZnVuY3Rpb24oYSl7YS5jb3B5VG9IaXREYXRhKEYuRC5QYSk7YS5jb3B5VG9IaXREYXRhKEYuRC5RYSk7YS5jb3B5VG9IaXREYXRhKEYuRC5lYik7UShhLEguSi5vYik/VShhLEYuRC5XaSwid3d3Lmdvb2dsZS5jb20iKTpVKGEsRi5ELldpLCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iKTt2YXIgYj1PKGEuTSxGLkQuV2IpO2IhPT0hMCYmYiE9PSExfHxVKGEsRi5ELldiLGIpfTt2YXIgdkw9ZnVuY3Rpb24oYSl7dmFyIGI9YS50YXJnZXQuaWRzW2RDWzBdXTtpZihiKXtVKGEsRi5ELnlpLGIpO3ZhciBjPWEudGFyZ2V0Lmlkc1tkQ1sxXV07YyYmVShhLEYuRC5HZCxjKTtPKGEuTSxGLkQuaWgpPT09ITAmJlYoYSxILkoucG4sITApfWVsc2UgYS5pc0Fib3J0ZWQ9ITB9O2Z1bmN0aW9uIHdMKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlPUZwKCksZj1EcChlKTtpZihmLnVybClpZihkKXt2YXIgZz1jKGYudXJsKTtiIT09ZyYmVShhLEYuRC5QZSxnKX1lbHNle3ZhciBoPWYudXJsO2IhPT1oJiZVKGEsRi5ELlBlLGMoaCkpfX07dmFyIHpMPWZ1bmN0aW9uKGEpe2lmKCFRKGEsSC5KLnNhKSl7dmFyIGI9UihhLEYuRC5NZSksYz1PKGEuTSxGLkQuemEpLGQ9YztkfHwoZD1iPT09MT9BLnRvcC5sb2NhdGlvbi5ocmVmOkEubG9jYXRpb24uaHJlZik7VShhLEYuRC56YSx4TChkKSk7YS5jb3B5VG9IaXREYXRhKEYuRC5VYSxCLnJlZmVycmVyKTtVKGEsRi5ELk1iLHlMKCkpO2EuY29weVRvSGl0RGF0YShGLkQudGIpO3ZhciBlPXFJKCk7VShhLEYuRC5iZCxlLndpZHRoKyJ4IitlLmhlaWdodCk7dmFyIGY9TSg1ODMpJiYhIWM7d0woYSxkLGZ1bmN0aW9uKGcpe3ZhciBoPXhMKGcpO2YmJihoPWguc3BsaXQoIj8iKVswXSk7cmV0dXJuIGh9KX19Owp2YXIgeEw9ZnVuY3Rpb24oYSl7aWYoYSE9bnVsbCl7dmFyIGI9U3RyaW5nKGEpLnN1YnN0cmluZygwLDUxMiksYz1iLmluZGV4T2YoIiMiKTtyZXR1cm4gYz09PS0xP2I6Yi5zdWJzdHJpbmcoMCxjKX1yZXR1cm4iIn0seUw9ZnVuY3Rpb24oKXt2YXIgYT1CLnRpdGxlO2lmKGE9PT12b2lkIDB8fGE9PT0iIilyZXR1cm4iIjthPWVuY29kZVVSSUNvbXBvbmVudChhKTtmb3IodmFyIGI9MjU2O2I+MCYmS2ooYS5zdWJzdHJpbmcoMCxiKSk9PT12b2lkIDA7KWItLTtyZXR1cm4gS2ooYS5zdWJzdHJpbmcoMCxiKSl8fCIifTtmdW5jdGlvbiBBTChhKXtWKGEsSC5KLkphLCEwKTtWKGEsSC5KLkViLE5iKCkpO1YoYSxILkoueW4sYS5NLmV2ZW50TWV0YWRhdGFbSC5KLkphXSl9O3ZhciBCTD1mdW5jdGlvbihhKXtNKDQ3KSYmYS5jb3B5VG9IaXREYXRhKEYuRC5raCl9O3ZhciBDTD1mdW5jdGlvbihhKXt2YXIgYj1NKDQ0MyksYz1NKDU3MCk7aWYoKGJ8fGMpJiZYbyhmcCkpe3ZhciBkPVEoYSxILkouWWEpO2lmKGh3KGQpKXt2YXIgZT1RKGEsSC5KLkdhKTtpZihiKXt2YXIgZj1RKGEsSC5KLnpqKXx8VHYoZSk7VShhLEYuRC54YyxmKX1pZihjKXt2YXIgZz1TdihlLHtYaDohMH0pLmlrO2cmJlUoYSwiXyZlY3NpZDIiLGcpfX19fTt2YXIgREw9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5RbSk7YiYmVShhLEYuRC5XYyxiKX07dmFyIEVMPWZ1bmN0aW9uKGEpe3ZhciBiPUE7aWYoYi5fX2dzYUV4cCYmYi5fX2dzYUV4cC5pZCl7dmFyIGM9Yi5fX2dzYUV4cC5pZDtpZih5YihjKSl0cnl7dmFyIGQ9TnVtYmVyKGMoKSk7aXNOYU4oZCl8fFUoYSxGLkQuUGwsZCl9Y2F0Y2goZSl7fX19O3ZhciBGTD1mdW5jdGlvbihhKXthLmNvcHlUb0hpdERhdGEoRi5ELk5lKTthLmNvcHlUb0hpdERhdGEoRi5ELkdlKTthLmNvcHlUb0hpdERhdGEoRi5ELlVkKTthLmNvcHlUb0hpdERhdGEoRi5ELkllKTthLmNvcHlUb0hpdERhdGEoRi5ELlRjKTthLmNvcHlUb0hpdERhdGEoRi5ELkxkKX07dmFyIEdMPWZ1bmN0aW9uKGEpe2lmKFhvKEYuRC5tYSkpe2EuY29weVRvSGl0RGF0YShGLkQuZmIpO3ZhciBiPW5tKGptLmJhLlpxKTtpZihiPT09dm9pZCAwKW1tKGptLmJhLmFyLCEwKTtlbHNle3ZhciBjPW5tKGptLmJhLnNqKTtVKGEsRi5ELlpmLGMrIi4iK2IpfX19Owp2YXIgTUw9ZnVuY3Rpb24oYSxiKXtpZihhJiYoemIoYSkmJihhPWJDKGEpKSxhKSl7dmFyIGM9dm9pZCAwLGQ9ITEsZT1PKGIsRi5ELmtxKTtpZihlJiZBcnJheS5pc0FycmF5KGUpKXtjPVtdO2Zvcih2YXIgZj0wO2Y8ZS5sZW5ndGg7ZisrKXt2YXIgZz1iQyhlW2ZdKTtnJiYoYy5wdXNoKGcpLChhLmlkPT09Zy5pZHx8YS5pZD09PWEuZGVzdGluYXRpb25JZCYmYS5kZXN0aW5hdGlvbklkPT09Zy5kZXN0aW5hdGlvbklkKSYmKGQ9ITApKX19aWYoIWN8fGQpe3ZhciBoPU8oYixGLkQuWWwpLGw7aWYoaCl7bD1BcnJheS5pc0FycmF5KGgpP2g6W2hdO3ZhciBuPU8oYixGLkQuV2wpLHA9TyhiLEYuRC5YbCkscT1PKGIsRi5ELlpsKSxyPVFvKE8oYixGLkQuanEpKSx0PW58fHAsdT0xO2EucHJlZml4IT09IlVBInx8Y3x8KHU9NSk7Zm9yKHZhciB2PTA7djxsLmxlbmd0aDt2KyspaWYodjx1KWlmKGMpSEwoYyxsW3ZdLHIsYix7b2U6dCxvcHRpb25zOnF9KTtlbHNlIGlmKGEucHJlZml4PT09CiJBVyImJmEuaWRzW2RDWzFdXSl7dmFyIHg9YS5pZHNbZENbMF1dLHk9YS5pZHNbZENbMV1dLHo9bFt2XSxDPWIsRD17b2U6dCxvcHRpb25zOnF9O1AoMjIpO2lmKHope0Q9RHx8e307dmFyIEk9SUwoSkwsRCx4LEMpLEc9e2FrOngsY2w6eX07RC5vZT09PXZvaWQgMCYmKEcuYXV0b3JlcGxhY2U9eik7S0woRyxDKTtJKDIsRC5vZSxHLHosMCxNYigpLEQub3B0aW9ucyl9fWVsc2UgaWYoYS5wcmVmaXg9PT0iVUEiKXt2YXIgTj1hLmRlc3RpbmF0aW9uSWQsUz1sW3ZdLFc9e29lOnR9O1AoMjMpO2lmKFMpe1c9V3x8e307dmFyIGVhPUlMKExMLFcsTiksamE9e307Vy5vZSE9PXZvaWQgMD9qYS5yZWNlaXZlcj1XLm9lOmphLnJlcGxhY2U9UztqYS5nYV93cGlkPU47amEuZGVzdGluYXRpb249UztlYSgyLE1iKCksamEpfX19fX19LEhMPWZ1bmN0aW9uKGEsYixjLGQsZSl7UCgyMSk7aWYoYiYmYyl7ZT1lfHx7fTtmb3IodmFyIGY9e2NvdW50cnlOYW1lQ29kZTpjLGRlc3RpbmF0aW9uTnVtYmVyOmIsCnJldHJpZXZhbFRpbWU6TWIoKX0sZz1hbCg0LGZ1bmN0aW9uKCl7cmV0dXJue319KSxoPTA7aDxhLmxlbmd0aDtoKyspe3ZhciBsPWFbaF07Z1tsLmlkXXx8KGwmJmwucHJlZml4PT09IkFXIiYmIWYuYWREYXRhJiZsLmlkcy5sZW5ndGg+PTI/KGYuYWREYXRhPXthazpsLmlkc1tkQ1swXV0sY2w6bC5pZHNbZENbMV1dfSxLTChmLmFkRGF0YSxkKSxnW2wuaWRdPSEwKTpsJiZsLnByZWZpeD09PSJVQSImJiFmLmdhRGF0YSYmKGYuZ2FEYXRhPXtnYVdwaWQ6bC5kZXN0aW5hdGlvbklkfSxnW2wuaWRdPSEwKSl9KGYuZ2FEYXRhfHxmLmFkRGF0YSkmJklMKE5MLGUsdm9pZCAwLGQpKGUub2UsZixlLm9wdGlvbnMpfX0sS0w9ZnVuY3Rpb24oYSxiKXthLmRtYT0kdCgpO2F1KCkmJihhLmRtYUNwcz1adCgpKTtTdChiKT9hLm5wYT0iMCI6YS5ucGE9IjEifSxJTD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1BO2lmKGVbYS5mdW5jdGlvbk5hbWVdKXJldHVybiBiLnJvJiZiZChiLnJvKSxlW2EuZnVuY3Rpb25OYW1lXTsKdmFyIGY9T0woKTtlW2EuZnVuY3Rpb25OYW1lXT1mO2lmKGEuYWRkaXRpb25hbFF1ZXVlcylmb3IodmFyIGc9MDtnPGEuYWRkaXRpb25hbFF1ZXVlcy5sZW5ndGg7ZysrKWVbYS5hZGRpdGlvbmFsUXVldWVzW2ddXT1lW2EuYWRkaXRpb25hbFF1ZXVlc1tnXV18fE9MKCk7YS5pZEtleSYmZVthLmlkS2V5XT09PXZvaWQgMCYmKGVbYS5pZEtleV09Yyk7Wm4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDowLGV2ZW50SWQ6ZD09bnVsbD92b2lkIDA6ZC5ldmVudElkLHByaW9yaXR5SWQ6ZD09bnVsbD92b2lkIDA6ZC5wcmlvcml0eUlkfSxkQSgiaHR0cHM6Ly8iLCJodHRwOi8vIixhLnNjcmlwdFVybCksYi5ybyxiLnR2KTtyZXR1cm4gZn0sT0w9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7YS5xPWEucXx8W107YS5xLnB1c2goYXJndW1lbnRzKX1yZXR1cm4gYX0sSkw9e2Z1bmN0aW9uTmFtZToiX2dvb2dXY21JbXBsIixpZEtleToiX2dvb2dXY21BayIsc2NyaXB0VXJsOiJ3d3cuZ3N0YXRpYy5jb20vd2NtL2xvYWRlci5qcyJ9LApMTD17ZnVuY3Rpb25OYW1lOiJfZ2FQaG9uZUltcGwiLGlkS2V5OiJnYV93cGlkIixzY3JpcHRVcmw6Ind3dy5nc3RhdGljLmNvbS9nYXBob25lL2xvYWRlci5qcyJ9LFBMPXtZbzpMZigyKSxncjoiNSJ9LE5MPXtmdW5jdGlvbk5hbWU6Il9nb29nQ2FsbFRyYWNraW5nSW1wbCIsYWRkaXRpb25hbFF1ZXVlczpbTEwuZnVuY3Rpb25OYW1lLEpMLmZ1bmN0aW9uTmFtZV0sc2NyaXB0VXJsOiJ3d3cuZ3N0YXRpYy5jb20vY2FsbC10cmFja2luZy9jYWxsLXRyYWNraW5nXyIrKFBMLllvfHxQTC5ncikrIi5qcyJ9O3ZhciBRTD1mdW5jdGlvbihhKXtRKGEsSC5KLnNhKXx8TUwoYS50YXJnZXQsYS5NKTthLmlzQWJvcnRlZD0hMH07dmFyIFJMPWZ1bmN0aW9uKGEpe1hvKEYuRC5rYSkmJmN4KGEpfTt2YXIgU0w9ZnVuY3Rpb24oYSl7dmFyIGI9WG8oRi5ELmthKT9taigicHNjZGwiKToiZGVuaWVkIjtiIT1udWxsJiZVKGEsRi5ELmpoLGIpfTt2YXIgVEw9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9fTt2YXIgVUw9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLk07aWYoYj09PXZvaWQgMD8wOmIpe3ZhciBkPWMuZ2V0TWVyZ2VkVmFsdWVzKEYuRC5PYSk7WWIoZCkmJlUoYSxGLkQuTGksWWIoZCkpfXZhciBlPU9vKGZEKEYuRC5PYSkpLGY9Yy5nZXRNZXJnZWRWYWx1ZXMoRi5ELk9hLDEsZSksZz1jLmdldE1lcmdlZFZhbHVlcyhGLkQuT2EsMiksaD1ZYihuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGYsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxUTC5IKSksIi4iKSxsPVliKGcsIi4iKTtoJiZVKGEsRi5ELlhjLGgpO2wmJlUoYSxGLkQuVmMsbCl9O3ZhciBWTD1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLnRxKTtiJiZVKGEsRi5ELklsLGIpfTtmdW5jdGlvbiBXTChhKXt2YXIgYj1LQighMSk7aWYoYiE9bnVsbCYmYi5zdGF0dXMpe3ZhciBjPXtndGI6Yi5zdGF0dXN9O2IuZGVsYXkmJihjLmd0YmQ9Yi5kZWxheSk7YS5tZXJnZUhpdERhdGFGb3JLZXkoRi5ELlRhLGMpfX07dmFyIFhMPWZ1bmN0aW9uKGEpe3ptKCk9PT0iVVMtQ08iJiZVKGEsRi5ELkxlLDEpfTt2YXIgWUw9e1JhOntDazoxLHpuOjIsSG46MyxJbjo0LEpuOjUsd246Nn19O1lMLlJhW1lMLlJhLkNrXT0iQURPQkVfQ09NTUVSQ0UiO1lMLlJhW1lMLlJhLnpuXT0iU1FVQVJFU1BBQ0UiO1lMLlJhW1lMLlJhLkhuXT0iV09PX0NPTU1FUkNFIjtZTC5SYVtZTC5SYS5Jbl09IldPT19DT01NRVJDRV9MRUdBQ1kiO1lMLlJhW1lMLlJhLkpuXT0iV09SRF9QUkVTUyI7WUwuUmFbWUwuUmEud25dPSJTSE9QSUZZIjtmdW5jdGlvbiBaTChhKXt2YXIgYj1BO3JldHVybiBLaihiLmVzY2FwZShiLmF0b2IoYSkpKX0KZnVuY3Rpb24gJEwoKXt0cnl7aWYoIU0oNDk4KSYmIU0oNDI1KSlyZXR1cm5bXTt2YXIgYT1ubShqbS5iYS5sbik7aWYoQXJyYXkuaXNBcnJheShhKSlyZXR1cm4gYTt2YXIgYj1bXSxjO2E6e3RyeXtjPSEhQi5xdWVyeVNlbGVjdG9yKCdzY3JpcHRbZGF0YS1yZXF1aXJlbW9kdWxlXj0ibWFnZS8iXScpO2JyZWFrIGF9Y2F0Y2goeSl7fWM9ITF9YyYmYi5wdXNoKFlMLlJhLkNrKTt2YXIgZDthOnt0cnl7dmFyIGU9WkwoIllYTnpaWFJ6TG5OeGRXRnlaWE53WVdObExtTnZiUzg9Iik7ZD1lPyEhQi5xdWVyeVNlbGVjdG9yKCdzY3JpcHRbc3JjXj0iLy8nK2UrJyJdJyk6ITE7YnJlYWsgYX1jYXRjaCh5KXt9ZD0hMX1kJiZiLnB1c2goWUwuUmEuem4pO3ZhciBmO2E6e2lmKE0oNDI1KSl0cnl7dmFyIGc9WkwoImMyaHZjR2xtZVM1amIyMD0iKSxoPVpMKCJjMmh2Y0dsbWVXTmtiaTVqYjIwPSIpO2Y9ZyYmaD8hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W3NyYyo9ImNkbi4nK2crJyJdLG1ldGFbcHJvcGVydHk9Im9nOmltYWdlIl1bY29udGVudCo9ImNkbi4nKwooZysnIl0sbGlua1tyZWw9InByZWNvbm5lY3QiXVtocmVmKj0iY2RuLicpKyhnKyciXSxsaW5rW3JlbD0icHJlY29ubmVjdCJdW2hyZWYqPSJmb250cy4nKSsoaCsnIl0sbGlua1tyZWw9InByZWNvbm5lY3QiXVtocmVmKj0iaXRlcmFibGUtc2hvcGlmeSJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9InYuJykrKGcrJyJdJykpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fWY9ITF9ZiYmYi5wdXNoKFlMLlJhLnduKTt2YXIgbDthOnt0cnl7bD0hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W3NyYyo9Indvb2NvbW1lcmNlIl0sbGlua1tocmVmKj0id29vY29tbWVyY2UiXSxbY2xhc3N8PSJ3b29jb21tZXJjZSJdJyk7YnJlYWsgYX1jYXRjaCh5KXt9bD0hMX1sJiZiLnB1c2goWUwuUmEuSW4pO3ZhciBuO2E6e3RyeXt2YXIgcCxxPSgocD1CLmxvY2F0aW9uKT09bnVsbD92b2lkIDA6cC5ob3N0bmFtZSl8fCIiLHIsdD0oKHI9Qi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOnIub3JpZ2luKXx8CiIiLHU9WkwoIkxuZHZjbVJ3Y21WemN5NWpiMjA9Iiksdj1aTCgiTHk5ekxuY3ViM0puIik7bj11JiZ2P1RiKHEsdSl8fCEhQi5xdWVyeVNlbGVjdG9yKCdbc3JjXj0iJyt0Kycvd3AtY29udGVudCJdLG1ldGFbbmFtZT0iZ2VuZXJhdG9yIl1bY29udGVudF49IldvcmRQcmVzcyAiXSxsaW5rW3JlbD0iZG5zLXByZWZldGNoIl1baHJlZj0iJysodisnIl0nKSk6ITE7YnJlYWsgYX1jYXRjaCh5KXt9bj0hMX1uJiZiLnB1c2goWUwuUmEuSm4pO3ZhciB4O2E6e3RyeXt4PSEhQi5xdWVyeVNlbGVjdG9yKCdbY2xhc3MqPSJ3b29jb21tZXJjZSJdLG1ldGFbbmFtZT0iZ2VuZXJhdG9yIl1bY29udGVudF49Ildvb0NvbW1lcmNlICJdJyk7YnJlYWsgYX1jYXRjaCh5KXt9eD0hMX14JiZiLnB1c2goWUwuUmEuSG4pO1VCKCkmJm1tKGptLmJhLmxuLGIpO3JldHVybiBifWNhdGNoKHkpe31yZXR1cm5bXX07ZnVuY3Rpb24gd00oYSl7aWYoTSg0MjUpJiZRKGEsSC5KLkZjKSl7dmFyIGI9TmYoNjcsMTUwMCksYz1hLm1lcmdlSGl0RGF0YUZvcktleSxkPUYuRC5UYSxlPXt9O2MuY2FsbChhLGQsZSl9fTt2YXIgeE09InBsYXRmb3JtIHBsYXRmb3JtVmVyc2lvbiBhcmNoaXRlY3R1cmUgbW9kZWwgdWFGdWxsVmVyc2lvbiBiaXRuZXNzIGZ1bGxWZXJzaW9uTGlzdCB3b3c2NCIuc3BsaXQoIiAiKTtmdW5jdGlvbiB5TShhKXt2YXIgYjtyZXR1cm4oYj1hLmdvb2dsZV90YWdfZGF0YSkhPW51bGw/YjphLmdvb2dsZV90YWdfZGF0YT17fX1mdW5jdGlvbiB6TShhKXt2YXIgYixjO3JldHVybihjPShiPWEuZ29vZ2xlX3RhZ19kYXRhKT09bnVsbD92b2lkIDA6Yi51YWNoX3Byb21pc2UpIT1udWxsP2M6bnVsbH1mdW5jdGlvbiBBTShhKXt2YXIgYixjO3JldHVybiB0eXBlb2YoKGI9YS5uYXZpZ2F0b3IpPT1udWxsP3ZvaWQgMDooYz1iLnVzZXJBZ2VudERhdGEpPT1udWxsP3ZvaWQgMDpjLmdldEhpZ2hFbnRyb3B5VmFsdWVzKT09PSJmdW5jdGlvbiJ9CmZ1bmN0aW9uIEJNKGEpe2lmKCFBTShhKSlyZXR1cm4gbnVsbDt2YXIgYj15TShhKTtpZihiLnVhY2hfcHJvbWlzZSlyZXR1cm4gYi51YWNoX3Byb21pc2U7dmFyIGM9YS5uYXZpZ2F0b3IudXNlckFnZW50RGF0YS5nZXRIaWdoRW50cm9weVZhbHVlcyh4TSkudGhlbihmdW5jdGlvbihkKXtiLnVhY2ghPW51bGx8fChiLnVhY2g9ZCk7cmV0dXJuIGR9KTtyZXR1cm4gYi51YWNoX3Byb21pc2U9Y307CnZhciBDTT1mdW5jdGlvbigpe3RoaXMud2luZG93PUE7dGhpcy5OPU5ifTtDTS5wcm90b3R5cGUuUj1mdW5jdGlvbigpe2lmKEFNKHRoaXMud2luZG93KSYmKHRoaXMuWj10aGlzLk4oKSwhek0odGhpcy53aW5kb3cpKSl7dmFyIGE9Qk0odGhpcy53aW5kb3cpO2EmJmEudGhlbihmdW5jdGlvbigpe1AoOTUpfSkuY2F0Y2goZnVuY3Rpb24oKXtQKDk2KX0pfX07Q00ucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLndpbmRvdy5nb29nbGVfdGFnX2RhdGEsYjtpZihhIT1udWxsJiZhLnVhY2gpe3ZhciBjPWEudWFjaCxkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyk7Yy5mdWxsVmVyc2lvbkxpc3QmJihkLmZ1bGxWZXJzaW9uTGlzdD1jLmZ1bGxWZXJzaW9uTGlzdC5zbGljZSgwKSk7Yj1kfWVsc2UgYj1udWxsO3JldHVybiBifTtDTS5wcm90b3R5cGUuZmE9ZnVuY3Rpb24oYSl7dmFyIGI9MCxjPXRoaXMsZD1mdW5jdGlvbihoLGwpe3RyeXthKGgsbCl9Y2F0Y2gobil7fX0sCmU9dGhpcy5IKCk7aWYoZSlkKGUpO2Vsc2V7dmFyIGY9ek0odGhpcy53aW5kb3cpO2lmKGYpe2I9TWF0aC5taW4oTWF0aC5tYXgoaXNGaW5pdGUoYik/YjowLDApLDFFMyk7dmFyIGc9dGhpcy53aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpe2QuS2d8fChkLktnPSEwLFAoMTA2KSxkKG51bGwsRXJyb3IoIlRpbWVvdXQiKSkpfSxiKTtmLnRoZW4oZnVuY3Rpb24oaCl7ZC5LZ3x8KGQuS2c9ITAsUCgxMDQpLGMud2luZG93LmNsZWFyVGltZW91dChnKSxkKGgpKX0pLmNhdGNoKGZ1bmN0aW9uKGgpe2QuS2d8fChkLktnPSEwLFAoMTA1KSxjLndpbmRvdy5jbGVhclRpbWVvdXQoZyksZChudWxsLGgpKX0pfWVsc2UgZChudWxsKX19O0NNLnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuWiE9PXZvaWQgMH07dmFyIERNPWZ1bmN0aW9uKCl7dmFyIGE7YT1hPT09dm9pZCAwP0E6YTtyZXR1cm4gQU0oYSl9LEVNPWZ1bmN0aW9uKGEpe3ZhciBiPXt9O2JbRi5ELmNnXT1hLmFyY2hpdGVjdHVyZTsKYltGLkQuZGddPWEuYml0bmVzczthLmZ1bGxWZXJzaW9uTGlzdCYmKGJbRi5ELmVnXT1hLmZ1bGxWZXJzaW9uTGlzdC5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChjLmJyYW5kfHwiIikrIjsiK2VuY29kZVVSSUNvbXBvbmVudChjLnZlcnNpb258fCIiKX0pLmpvaW4oInwiKSk7YltGLkQuZmddPWEubW9iaWxlPyIxIjoiMCI7YltGLkQuZ2ddPWEubW9kZWw7YltGLkQuaGddPWEucGxhdGZvcm07YltGLkQuaWddPWEucGxhdGZvcm1WZXJzaW9uO2JbRi5ELmpnXT1hLndvdzY0PyIxIjoiMCI7cmV0dXJuIGJ9LEZNPW5ldyBDTTt2YXIgR009ZnVuY3Rpb24oYSl7aWYoIURNKCkpUCg4Nyk7ZWxzZSBpZihGTS5LKCkpe1AoODUpO3ZhciBiPUZNLkgoKTtpZihiKXtpZihiKWZvcih2YXIgYz1FTShiKSxkPW0oT2JqZWN0LmtleXMoYykpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO1UoYSxmLGNbZl0pfX1lbHNlIFAoODYpfX07ZnVuY3Rpb24gSE0oYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1RKGEsSC5KLnNnKSxkPWRJKGEsImN1c3RvbV9ldmVudF9hY2NlcHRfcnVsZXMiLCExKSYmIWI7aWYoYyl7dmFyIGU9Yy5pbmRleE9mKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpPj0wLGY9ITA7UShhLEguSi5DYykmJihmPVEoYSxILkouTmIpPT09dmsoKSk7ZSYmZj9WKGEsSC5KLmtpLCEwKTooVihhLEguSi5raSwhMSksZHx8KGEuaXNBYm9ydGVkPSEwKSk7aWYoYS5jYW5CZUFjY2VwdGVkKCkpe3ZhciBnPXVrKCkuaW5kZXhPZihhLnRhcmdldC5kZXN0aW5hdGlvbklkKT49MCxoPSExO2lmKCFnKXt2YXIgbCxuPShsPW5rKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpKT09bnVsbD92b2lkIDA6bC5jYW5vbmljYWxDb250YWluZXJJZDtuJiYoaD12aygpPT09bil9Z3x8aD9RKGEsSC5KLmtpKSYmYS5hY2NlcHQoKTphLmlzQWJvcnRlZD0hMH1lbHNlIGEuaXNBYm9ydGVkPSEwfX07dmFyIElNPWZ1bmN0aW9uKGEpe3ZhciBiPU8oYS5NLEYuRC5aYyksYz1PKGEuTSxGLkQuWWMpO2ImJiFjPyhhLmV2ZW50TmFtZSE9PUYuRC53YSYmYS5ldmVudE5hbWUhPT1GLkQueWYmJlAoMTMxKSxhLmlzQWJvcnRlZD0hMCk6IWImJmMmJihQKDEzMiksYS5pc0Fib3J0ZWQ9ITApfTt2YXIgSk09ZnVuY3Rpb24oYSl7aWYoYS5ldmVudE5hbWU9PT1GLkQud2Epe3ZhciBiPUlmKDExKSxjPVEoYSxILkouSHEpOyEoIU0oNTUwKSYmYnx8Yyl8fGEudGFyZ2V0LkpjKCl8fFlHKCJpZGNfY29uZmlnX3B2IixhLnRhcmdldC5kZXN0aW5hdGlvbklkKXx8KGEuaXNBYm9ydGVkPSEwKX19O3ZhciBMTT1mdW5jdGlvbihhLGIpe0tNLk4oYSxiKX0sTU09ZnVuY3Rpb24oKXt0aGlzLkg9e319O01NLnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5IW2FdO2N8fChjPXRoaXMuSFthXT1bXSk7Yy5wdXNoKGIpfTtNTS5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj10aGlzLkhbYS50YXJnZXQuZGVzdGluYXRpb25JZF07aWYoIWEuaXNBYm9ydGVkJiZiKWZvcih2YXIgYz1mSShhKSxkPTA7ZDxiLmxlbmd0aDsrK2Qpe3RyeXtiW2RdKGMpfWNhdGNoKGUpe2EuaXNBYm9ydGVkPSEwfWlmKGEuaXNBYm9ydGVkKWJyZWFrfX07dmFyIEtNPW5ldyBNTTt2YXIgTk09ZnVuY3Rpb24oYSl7S00uSyhhKTt9O3ZhciBPTT1mdW5jdGlvbihhKXthJiYoQXAoNDk1LGEpLEFwKDU2NyxhKSxBcCg0NTAsYSksQXAoNDQzLGEpLEFwKDU4NyxhKSxBcCg1NzYsYSksQXAoNTcwLGEpLEFwKDU4MSxhKSxBcCg2MDIsYSkpfSxQTT1mdW5jdGlvbihhKXtpZihRKGEsSC5KLndmKSYmWG8oZnApKXt2YXIgYj1RKGEsSC5KLkdhKSxjPVEoYSxILkouZGEpIT09WC5WLnViJiZRKGEsSC5KLmRhKSE9PVguVi5PYiYmUShhLEguSi5kYSkhPT1YLlYuRmImJmEuZXZlbnROYW1lIT09Ri5ELkpiO0h2KGIsYyk7dmFyIGQ9RHZbR3YoYi5wcmVmaXgpXTtPTShkKTtVKGEsRi5ELkVkLGQpfX07ZnVuY3Rpb24gUU0oKXtyZXR1cm4ga2ooImRlZHVwZV9nY2xpZCIsZnVuY3Rpb24oKXtyZXR1cm4gQXYoKX0pfTt2YXIgUk09L14od3d3XC4pP2dvb2dsZShcLmNvbT8pPyhcLlthLXpdezJ9dD8pPyQvLFNNPS9ed3d3Lmdvb2dsZWFkc2VydmljZXMuY29tJC87ZnVuY3Rpb24gVE0oYSl7YXx8KGE9VU0oKSk7cmV0dXJuIGEuTnQ/ITE6YS5uc3x8YS5xc3x8YS52c3x8YS5yc3x8YS5EZ3x8YS5UaHx8YS5Ucnx8YS5WaD09PSJhdy5kcyJ8fE0oMjM1KSYmYS5WaD09PSJhdy5kdiJ8fGEuWXI/ITA6ITF9CmZ1bmN0aW9uIFVNKCl7dmFyIGE9e30sYj1VcSghMCk7YS5OdD0hIWIuX3VwO3ZhciBjPWVzKCksZD1hdCgpO2EubnM9Yy5hdyE9PXZvaWQgMDthLnFzPWMuZGMhPT12b2lkIDA7YS52cz1jLndicmFpZCE9PXZvaWQgMDthLnJzPWMuZ2JyYWlkIT09dm9pZCAwO2EuVmg9dHlwZW9mIGMuZ2Nsc3JjPT09InN0cmluZyI/Yy5nY2xzcmM6dm9pZCAwO2EuRGc9ZC5EZzthLlRoPWQuVGg7dmFyIGU9Qi5yZWZlcnJlcj9MaihSaihCLnJlZmVycmVyKSwiaG9zdCIpOiIiO2EuWXI9Uk0udGVzdChlKTthLlRyPVNNLnRlc3QoZSk7cmV0dXJuIGF9O2Z1bmN0aW9uIFZNKCl7dmFyIGE9QS5fX3VzcGFwaTtpZih5YihhKSl7dmFyIGI9IiI7dHJ5e2EoImdldFVTUERhdGEiLDEsZnVuY3Rpb24oYyxkKXtpZihkJiZjKXt2YXIgZT1jLnVzcFN0cmluZztlJiZSZWdFeHAoIl5bXFxkYS16QS1aLV17MSwyMH0kIikudGVzdChlKSYmKGI9ZSl9fSl9Y2F0Y2goYyl7fXJldHVybiBifX07CnZhciBXTT1mdW5jdGlvbihhKXt2YXIgYj1YbyhmcCk7VihhLEguSi5ZZSxPKGEuTSxGLkQubWIpIT1udWxsJiZPKGEuTSxGLkQubWIpIT09ITEmJiFiKTt2YXIgYz1RKGEsSC5KLmRqKSxkPU8oYS5NLEYuRC51YykhPT0hMSxlPUxLKGEpO2R8fFUoYSxGLkQuSGQsIjEiKTt2YXIgZj1IcihlLnByZWZpeCksZz1RKGEsSC5KLnNhKXx8UShhLEguSi51Zyl8fFEoYSxILkouV2UpO2N8fGd8fFUoYSwiXyZhcHZjIiwiMCIpO2EuTS5pc0d0bUV2ZW50JiZVKGEsRi5ELklsLCJnIik7VShhLEYuRC5FZCk7VShhLEYuRC5NYik7aWYoYiYmKFUoYSxGLkQuTWIseUwoKSksZCkpe0h2KGUpO3ZhciBoPUR2W0d2KGUucHJlZml4KV07VShhLEYuRC5FZCxoKTtPTShoKX1pZihhLmV2ZW50TmFtZT09PUYuRC53YSYmIWcpe3ZhciBsPU8oYS5NLEYuRC56Yyksbj1PKGEuTSxGLkQuRGIpfHx7fTtQSyh7VG46ZCxtbzpuLFFvOmwsVW46ZX0pOyFjJiZZcyhmKSYmKFYoYSxILkoudmQsITApLFUoYSwiXyZhcHZjIiwKIjEiKSl9aWYoYylhLmlzQWJvcnRlZD0hMDtlbHNle2EudGFyZ2V0LmRlc3RpbmF0aW9uSWQmJlUoYSxGLkQuUWUsYS50YXJnZXQuZGVzdGluYXRpb25JZCk7VShhLEYuRC5VYixhLmV2ZW50TmFtZSk7YS5ldmVudE5hbWU9PT1GLkQud2EmJlUoYSxGLkQuVWIsRi5ELnNjKTtpZihRKGEsSC5KLnNhKSlVKGEsRi5ELlViLEYuRC53cCksVShhLEYuRC5zYSwiMSIpO2Vsc2UgaWYoUShhLEguSi51ZykpVShhLEYuRC5VYixGLkQuSHApO2Vsc2UgaWYoUShhLEguSi5XZSkpVShhLEYuRC5VYixGLkQuRXApO2Vsc2V7dmFyIHA9ZXMoKTtVKGEsRi5ELkRkLHAuZ2NsaWQpO1UoYSxGLkQuS2QscC5kY2xpZCk7VShhLEYuRC5BbCxwLmdjbHNyYyk7aWYoIVIoYSxGLkQuRGQpJiYhUihhLEYuRC5LZCl8fE0oNDIxKSlVKGEsRi5ELkVlLHAud2JyYWlkKSxVKGEsRi5ELkJmLHAuZ2JyYWlkKTt2YXIgcT1NKDU4OSkscj1mdW5jdGlvbihmYSl7cmV0dXJuIGZhLnJlcGxhY2UoL1tcPyNdLiokLywiIil9LAp0PSEhTyhhLk0sRi5ELnphKSx1PXE/dD9mdW5jdGlvbihmYSl7cmV0dXJuIHhMKHIoZmEpKX06ZnVuY3Rpb24oZmEpe3JldHVybiB4TChmYS5yZXBsYWNlKC8jLiokLywiIikpfTpyLHY9YnQodSk7VShhLEYuRC56YSx2KTt2YXIgeD0hIU8oYS5NLEYuRC5VYSkseT1CLnJlZmVycmVyO1UoYSxGLkQuVWEscT94P3IoeSk6eS5yZXBsYWNlKC8jLiokLywiIik6Qi5yZWZlcnJlcj9MaihSaihCLnJlZmVycmVyKSwiaG9zdCIpOiIiKTt3TChhLHYsdSwhMCk7aWYoS2Mpe3ZhciB6PUxqKFJqKEtjKSwiaG9zdCIpO3omJlUoYSxGLkQuYm0seil9aWYoIVEoYSxILkouV2UpKXt2YXIgQz1hdCgpO1UoYSxGLkQuemYsQy5EZyk7VShhLEYuRC5BZixDLlNyKX12YXIgRD1VTSgpO1RNKEQpJiZVKGEsRi5ELlBkLCIxIik7VShhLEYuRC5EbCxRTSgpKTtVcSghMSkuX3VwPT09IjEiJiZVKGEsRi5ELlFsLCIxIil9d28uSD0hMDtVKGEsRi5ELlNiKTtVKGEsRi5ELmxiKTtpZihNKDQyMSkpe3ZhciBJPUZyKGUpOwpJLmxlbmd0aD4wJiZVKGEsRi5ELlNiLEkuam9pbigiLiIpKTt2YXIgRz1EcihmKyJfYXciKTtHLmxlbmd0aD4wJiZVKGEsRi5ELmxiLEcuam9pbigiLiIpKX1lbHNlIGlmKCFSKGEsRi5ELkRkKSYmIVIoYSxGLkQuS2QpJiZXcyhmKSl7dmFyIE49RnIoZSk7Ti5sZW5ndGg+MCYmVShhLEYuRC5TYixOLmpvaW4oIi4iKSl9ZWxzZSBpZighUihhLEYuRC5FZSkmJmIpe3ZhciBTPURyKGYrIl9hdyIpO1MubGVuZ3RoPjAmJlUoYSxGLkQubGIsUy5qb2luKCIuIikpfVUoYSxGLkQuVWwscWQoKSk7YS5NLmlzR3RtRXZlbnQmJihhLk0uRWFbRi5ELlJjXT1mRChGLkQuUmMpKTtTdChhLk0pP1UoYSxGLkQuZGUsITEpOlUoYSxGLkQuZGUsITApO1YoYSxILkouQmssITApO3ZhciBXPVZNKCk7VyE9PXZvaWQgMCYmVShhLEYuRC5rZyxXfHwiZXJyb3IiKTt2YXIgZWE9THQoKTtlYSYmVShhLEYuRC5LZSxlYSk7dmFyIGphPUt0KCk7amEmJlUoYSxGLkQuT2UsamEpO1EoYSxILkouUGMpfHxWKGEsSC5KLkphLAohMSl9fTsKdmFyIFhNPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/ITA6YjtjPWM9PT12b2lkIDA/e306YztpZihhLmV2ZW50TmFtZT09PUYuRC5KYiYmIWEuTS5pc0d0bUV2ZW50KXt2YXIgZD1PKGEuTSxGLkQuU2YpO2lmKHR5cGVvZiBkPT09ImZ1bmN0aW9uIiYmIVEoYSxILkouc2EpKXt2YXIgZT1TdHJpbmcoTyhhLk0sRi5ELlRmKSksZj1lO2NbZV0mJihmPWNbZV0pO3ZhciBnPVIoYSxmKXx8TyhhLk0sZSk7aWYoYil7aWYodHlwZW9mIGQ9PT0iZnVuY3Rpb24iKWlmKGU9PT1GLkQubGImJmchPT12b2lkIDApe3ZhciBoPWcuc3BsaXQoIi4iKTtoLmxlbmd0aD09PTA/ZCh2b2lkIDApOmgubGVuZ3RoPT09MT9kKGhbMF0pOmQoaCl9ZWxzZSBpZihlPT09Ri5ELnFxJiZNKDI1OCkpe3ZhciBsLG49e307WG8oZnApJiYobi5hdWlkPVIoYSxGLkQuRWQpKTt2YXIgcD1VTSgpO2lmKFRNKHApKW4uZ2FkX3NvdXJjZT1wLkRnLG4uZ2FkX2NhbXBhaWduaWQ9cC5UaCxuLnNlc3Npb25fc3RhcnRfdGltZV91c2VjPQooRGF0ZS5ub3coKSoxRTMpLnRvU3RyaW5nKCksbi5sYW5kaW5nX3BhZ2VfdXJsPUEubG9jYXRpb24uaHJlZixuLmxhbmRpbmdfcGFnZV9yZWZlcnJlcj1CLnJlZmVycmVyLG4ubGFuZGluZ19wYWdlX3VzZXJfYWdlbnQ9SGMudXNlckFnZW50O2Vsc2V7dmFyIHE9UShhLEguSi5HYSk7bi5nYWRfc291cmNlPVJzKHEucHJlZml4KS5FZ31sPWJ0b2EoSlNPTi5zdHJpbmdpZnkobikpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIikucmVwbGFjZSgvPSskLywiIik7ZChsKX1lbHNlIGQoZyl9ZWxzZSBkKGcpfWEuaXNBYm9ydGVkPSEwfX07dmFyIFlNPWZ1bmN0aW9uKGEpe2lmKE0oNDI1KSYmUShhLEguSi5GYykpe2Zvcih2YXIgYj1bIl8mYXB2YyIsInRpZHMiLEYuRC5UYSxGLkQuUWksRi5ELlViLEYuRC5RZSxGLkQuVmMsRi5ELlhjXSxjPW0oZXUoYSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2lmKGU9PT1GLkQuemEpe3ZhciBmPVIoYSxlKTtmJiYoZj1mLnJlcGxhY2UoL1tcPyNdLiokLywiIikpO1UoYSxlLGYpfWVsc2UgYi5pbmNsdWRlcyhlKXx8VShhLGUpfVYoYSxILkouWGcpO1YoYSxILkouaGQpfX07ZnVuY3Rpb24gWk0oYSl7aWYoZm4uSylpZih3by5IPSEwLGEuZXZlbnROYW1lPT09Ri5ELndhKXpvKGEuTSxhLnRhcmdldC5pZCk7ZWxzZXtRKGEsSC5KLlBjKXx8KHdvLktbYS50YXJnZXQuaWRdPSEwKTt2YXIgYj1RKGEsSC5KLk5iKTtaQihiKX19O3ZhciAkTT1mdW5jdGlvbihhLGIpe3ZhciBjLGQsZSxmPWI9PT12b2lkIDA/e306YjtjPWYuU2o9PT12b2lkIDA/ITE6Zi5TajtkPWYuTWo9PT12b2lkIDA/ITE6Zi5NajtlPWYua289PT12b2lkIDA/ITE6Zi5rbztkfHwoYS5NLmlzR3RtRXZlbnQ/UShhLEguSi5kYSkhPT1YLlYueGEmJmEuZXZlbnROYW1lJiZVKGEsRi5ELlViLGEuZXZlbnROYW1lKTpVKGEsRi5ELlViLGEuZXZlbnROYW1lKSk7R2IoYS5NLkVhLGZ1bmN0aW9uKGcsaCl7TXpbZ118fGMmJkJvW2ddfHxlJiZPeltnXXx8VShhLGcsaCl9KX07dmFyIGFOPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1tKFtGLkQuUGEsRi5ELlFhLEYuRC5lYixGLkQuTmUsRi5ELkdlLEYuRC5VZCxGLkQuSWUsRi5ELlRjLEYuRC5MZCxGLkQua2gsRi5ELkZmLEYuRC5EZixGLkQuRWYsRi5ELkNmLEYuRC53aSxGLkQuU2QsRi5ELlFkLEYuRC5SZCxGLkQudGJdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSlhLmNvcHlUb0hpdERhdGEoYy52YWx1ZSl9O2Z1bmN0aW9uIGJOKGEsYil7cmV0dXJuIGtyKCJnc2lkX2RjIix7dmFsdWU6e2pvaW5JZDphLGxhc3RKb2luZWRUaW1lTXM6Yn0sZXhwaXJlczpiKzNFNX0pPT09MD8hMDohMX07CnZhciBjTj1mdW5jdGlvbihhKXtpZihYbyhmcCkpe3ZhciBiO2E6e3ZhciBjPW5yKCJnc2lkX2RjIik7aWYoYy5lcnJvcj09PTAmJmMudmFsdWUmJnR5cGVvZiBjLnZhbHVlPT09Im9iamVjdCIpe3ZhciBkPWMudmFsdWU7aWYoZC52YWx1ZSYmdHlwZW9mIGQudmFsdWU9PT0ib2JqZWN0Iil7dmFyIGU9ZC52YWx1ZTtpZihlLmpvaW5JZCYmZS5sYXN0Sm9pbmVkVGltZU1zJiZ0eXBlb2YgZS5qb2luSWQ9PT0ic3RyaW5nIiYmdHlwZW9mIGUubGFzdEpvaW5lZFRpbWVNcz09PSJudW1iZXIiKXtiPWU7YnJlYWsgYX19fWI9dm9pZCAwfXZhciBmPWIsZz1mPT1udWxsP3ZvaWQgMDpmLmpvaW5JZCxoPU5iKCk7aWYoIWZ8fCFnfHxmLmxhc3RKb2luZWRUaW1lTXM8aC0zRTUpe3ZhciBsPWNjKCk7Zz1sJiZiTihsLE5iKCkpP2w6dm9pZCAwO2cmJlYoYSxILkouaGQsITApfWVsc2UgZyYmZi5sYXN0Sm9pbmVkVGltZU1zPGgtNkU0JiZiTihmLmpvaW5JZCxoKSYmVihhLEguSi5oZCwhMCk7ZyYmTSg0NzQpJiYKVihhLEguSi5YZyxnKX19O3ZhciBkTj1mdW5jdGlvbihhKXtWKGEsSC5KLndmLE8oYS5NLEYuRC51YykhPT0hMSk7VihhLEguSi5HYSxMSyhhKSk7VihhLEguSi5YZSxPKGEuTSxGLkQubWIpIT1udWxsJiZPKGEuTSxGLkQubWIpIT09ITEpO1YoYSxILkoud2QsU3QoYS5NKSl9O3ZhciBlTj17enE6e1V0OiJjZCIsZnA6ImNlIixWdDoiY2YiLFd0OiJjcGYiLFh0OiJjdSJ9fTt2YXIgZk49ZnVuY3Rpb24oYSl7dmFyIGI9ZU4uenEuZnAsYz1PKGEuTSxGLkQuQ2IpO1IoYSxGLkQuZWQpfHxVKGEsRi5ELmVkLHt9KTtSKGEsRi5ELmVkKVtiXT1jfTtmdW5jdGlvbiBnTihhLGIpe2I9Yj09PXZvaWQgMD8hMDpiO3ZhciBjPXdiKHJiLkdUQUdfRVZFTlRfRkVBVFVSRV9DSEFOTkVMfHxbXSk7YyYmKFUoYSxGLkQuVmYsYyksYiYmdWIoKSl9O3ZhciBoTj1mdW5jdGlvbihhKXt2YXIgYj1hLk0uZ2V0TWVyZ2VkVmFsdWVzKEYuRC5UYSk7YiYmYS5tZXJnZUhpdERhdGFGb3JLZXkoRi5ELlRhLGIpfTt2YXIgaU49ZnVuY3Rpb24oYSl7dmFyIGI9T3AoITEpO1UoYSxGLkQuTWUsYil9O3ZhciBqTj1mdW5jdGlvbihhKXtRKGEsSC5KLndkKT9VKGEsRi5ELmRlLCIwIik6VShhLEYuRC5kZSwiMSIpfTt2YXIga049ZnVuY3Rpb24oYSxiKXtpZihiPT09dm9pZCAwfHxiKXt2YXIgYz1WTSgpO2MhPT12b2lkIDAmJlUoYSxGLkQua2csY3x8ImVycm9yIil9dmFyIGQ9THQoKTtkJiZVKGEsRi5ELktlLGQpO3ZhciBlPUt0KCk7ZSYmVShhLEYuRC5PZSxlKX07dmFyIGxOPWZ1bmN0aW9uKGEpe3ZhciBiPW5tKGptLmJhLmtqKSxjPUUoNSk7YiYmYltjXSYmYS5tZXJnZUhpdERhdGFGb3JLZXkoRi5ELlRhLHtyZXRyeToiMSJ9KX07dmFyIG1OPWZ1bmN0aW9uKGEpe1VxKCExKS5fdXA9PT0iMSImJlUoYSxGLkQuS2ksIjEiKX07CnZhciBuTj1mdW5jdGlvbihhLGIsYyl7aWYoYSE9PXZvaWQgMClyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hLm1hcChmdW5jdGlvbigpe3JldHVybnttb2RlOiJtIixsb2NhdGlvbjpiLHNlbGVjdG9yOmN9fSk6e21vZGU6Im0iLGxvY2F0aW9uOmIsc2VsZWN0b3I6Y319LG9OPWZ1bmN0aW9uKGEsYixjLGQpe2lmKCFjKXJldHVybiExO2Zvcih2YXIgZT1TdHJpbmcoYy52YWx1ZSksZixnPXZvaWQgMCxoPWUucmVwbGFjZSgvXFsiPyc/L2csIi4iKS5yZXBsYWNlKC8iPyc/XF0vZywiIikuc3BsaXQoIiwiKS5tYXAoZnVuY3Rpb24odSl7cmV0dXJuIHUudHJpbSgpfSkuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiB1JiYhU2IodSwiIyIpJiYhU2IodSwiLiIpfSksbD0wO2w8aC5sZW5ndGg7bCsrKXt2YXIgbj1oW2xdO2lmKFNiKG4sImRhdGFMYXllci4iKSlmPXVBKG4uc3Vic3RyaW5nKDEwKSksZz1uTihmLCJkIixuKTtlbHNle3ZhciBwPW4uc3BsaXQoIi4iKTtmPUFbcC5zaGlmdCgpXTsKZm9yKHZhciBxPTA7cTxwLmxlbmd0aDtxKyspZj1mJiZmW3BbcV1dO2c9bk4oZiwiaiIsbil9aWYoZiE9PXZvaWQgMClicmVha31pZihmPT09dm9pZCAwKXRyeXt2YXIgcj1CLnF1ZXJ5U2VsZWN0b3JBbGwoZSk7aWYociYmci5sZW5ndGg+MCl7Zj1bXTtmb3IodmFyIHQ9MDt0PHIubGVuZ3RoJiZ0PChiPT09ImVtYWlsInx8Yj09PSJwaG9uZV9udW1iZXIiPzU6MSk7dCsrKWYucHVzaChmZChyW3RdKXx8TGIoclt0XS52YWx1ZSkpO2Y9Zi5sZW5ndGg9PT0xP2ZbMF06ZjtnPW5OKGYsImMiLGUpfX1jYXRjaCh1KXtQKDE0OSl9cmV0dXJuIGY/KGFbYl09ZixkJiZnJiYoZFtiXT1nKSwhMCk6ITF9Owp2YXIgcE49ZnVuY3Rpb24oYSl7aWYoZEkoYSwiY2NkX2FkZF8xcF9kYXRhIiwhMSkmJlhvKGZwKSl7dmFyIGI9YS5NLmliW0YuRC5sbV07aWYoQ2QoYikmJmIuZW5hYmxlX2NvZGUpe3ZhciBjPU8oYS5NLEYuRC5BYyk7aWYoYz09PW51bGwpVihhLEguSi5HbixudWxsKTtlbHNlIGlmKGIuZW5hYmxlX2NvZGUmJkNkKGMpJiYoWnYoYyksVihhLEguSi5HbixjKSksQ2QoYi5zZWxlY3RvcnMpKXt2YXIgZD1ILkouaXIsZTt2YXIgZj1iLnNlbGVjdG9ycyxnPU0oNTIzKTtnPWc9PT12b2lkIDA/ITE6ZztpZihmKXt2YXIgaD17fSxsPSExLG49e307bD1vTihoLCJlbWFpbCIsZi5lbWFpbCxuKXx8bDtsPW9OKGgsInBob25lX251bWJlciIsZi5waG9uZSxuKXx8bDtoLmFkZHJlc3M9W107Zm9yKHZhciBwPWYubmFtZV9hbmRfYWRkcmVzc3x8W10scT0wO3E8cC5sZW5ndGg7cSsrKXt2YXIgcj17fSx0PXt9O2w9b04ociwiZmlyc3RfbmFtZSIscFtxXS5maXJzdF9uYW1lLHQpfHxsO2w9b04ociwKImxhc3RfbmFtZSIscFtxXS5sYXN0X25hbWUsdCl8fGw7bD1vTihyLCJzdHJlZXQiLHBbcV0uc3RyZWV0LHQpfHxsO2w9b04ociwiY2l0eSIscFtxXS5jaXR5LHQpfHxsO2w9b04ociwicmVnaW9uIixwW3FdLnJlZ2lvbix0KXx8bDtsPW9OKHIsImNvdW50cnkiLHBbcV0uY291bnRyeSx0KXx8bDtsPW9OKHIsInBvc3RhbF9jb2RlIixwW3FdLnBvc3RhbF9jb2RlLHQpfHxsO2guYWRkcmVzcy5wdXNoKHIpO2cmJihyLl90YWdfbWV0YWRhdGE9dCl9ZyYmKGguX3RhZ19tZXRhZGF0YT1uKTtlPWw/aDp2b2lkIDB9ZWxzZSBlPXZvaWQgMDtWKGEsZCxlKX19fX07CnZhciBxTj1mdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihlKXtVTChlLCEwKX0sYz1mdW5jdGlvbihlKXtwTihlKX0sZD1mdW5jdGlvbihlKXskTShlLHtTajohMCxNajohMH0pfTtzd2l0Y2goYSl7Y2FzZSBYLlYuUWs6cmV0dXJuW1BGLEFMLE1GLEhNLEpNLElNXTtjYXNlIFguVi5LYTpyZXR1cm5bZk4sWEwsWk0saU4sY04sV00sZCxTSyxhTixHTCxiLHdNLGxOLGhOLFZMLG9MLE5NLGZ1bmN0aW9uKGUpe2dOKGUsITEpfSxXTCxZTSxwTF07Y2FzZSBYLlYuTWs6cmV0dXJuW1pNLFFMXTtjYXNlIFguVi54YTpyZXR1cm5bVUssWEwsWk0sZE4sdkwsdEwsJE0sU0ssaU4sVkwsekwsR0wsYixxTCxGTCxCTCxFTCx1TCxqTixvTCxrTixtTixMRixjLGZOLFNMLGxOLGhOLFBNLFhNLEdNLE5NLFRLLERMLFFLLFJMLGdOLFdMLHBMXTtjYXNlIFguVi51YjpyZXR1cm5bWEwsWk0sZE4sdkwsJE0sU0ssaU4sekwsR0wsYixWTCxxTCxFTCx1TCxqTixvTCxrTixMRixTTCxmTixsTixoTixQTSxHTSwKTk0sVEssZ04sV0wscExdO2Nhc2UgWC5WLk9iOnJldHVybltYTCxaTSxkTix2TCxTSyxHTCxiLGpOLG9MLGlOLExGLGMsU0wsZk4sbE4saE4sVkwsUE0sR00sTk0sVEssZ04sV0wscExdO2Nhc2UgWC5WLkZiOnJldHVybltYTCxaTSxkTix2TCxTSyxHTCxiLGpOLG9MLGlOLFZMLExGLGMsU0wsZk4sbE4saE4sUE0sR00sTk0sVEssQ0wsZ04sV0wscExdO2RlZmF1bHQ6cmV0dXJuW119fSxyTj1mdW5jdGlvbihhKXtmb3IodmFyIGI9cU4oUShhLEguSi5kYSkpLGM9MDtjPGIubGVuZ3RoJiYoYltjXShhKSwhYS5pc0Fib3J0ZWQpO2MrKyk7fSxzTj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1uZXcgYUkoYi50YXJnZXQsYi5ldmVudE5hbWUsYi5NKSxkPW0oZXUoYikpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO1UoYyxmLFIoYixmKSl9Zm9yKHZhciBnPW0oT2JqZWN0LmtleXMoYi5tZXRhZGF0YSkpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD0KaC52YWx1ZTtWKGMsbCxRKGIsbCkpfVYoYyxILkouZGEsYSk7cmV0dXJuIGN9LHROPWZ1bmN0aW9uKGEsYixjLGQpe2Z1bmN0aW9uIGUodSx2KXtmb3IodmFyIHg9bShsKSx5PXgubmV4dCgpOyF5LmRvbmU7eT14Lm5leHQoKSl7dmFyIHo9eS52YWx1ZTt6LmlzQWJvcnRlZD0hMTtWKHosSC5KLkphLCEwKTtWKHosSC5KLnNhLCEwKTtWKHosSC5KLkViLE5iKCkpO1YoeixILkoudWYsdSk7Vih6LEguSi52Zix2KX19ZnVuY3Rpb24gZih1KXtmb3IodmFyIHY9e30seD0wO3g8bC5sZW5ndGg7dj17VmE6dm9pZCAwfSx4KyspaWYodi5WYT1sW3hdLCF1fHx1KFEodi5WYSxILkouZGEpKSlpZighUSh2LlZhLEguSi5zYSl8fFEodi5WYSxILkouZGEpIT09WC5WLkthfHxRKHYuVmEsSC5KLnZkKSlpZighUSh2LlZhLEguSi5zYSl8fFEodi5WYSxILkouZGEpPT09WC5WLkthfHxYbyhyKSlyTihsW3hdKSxRKHYuVmEsSC5KLkphKXx8di5WYS5pc0Fib3J0ZWR8fFEodi5WYSxILkouZGEpIT09WC5WLkthfHwKIVEodi5WYSxILkoudmQpfHwoTUsodi5WYSxmdW5jdGlvbigpe2YoZnVuY3Rpb24oeSl7cmV0dXJuIHk9PT1YLlYuS2F9KX0pLFIodi5WYSxGLkQuWmYpPT09dm9pZCAwJiZ0PT09dm9pZCAwJiYodD1wbShqbS5iYS5zaixmdW5jdGlvbih5KXtyZXR1cm4gZnVuY3Rpb24oKXtxbShqbS5iYS5zaix0KTt0PXZvaWQgMDtYbyhGLkQubWEpJiYoVih5LlZhLEguSi51ZywhMCksVih5LlZhLEguSi5zYSwhMSksVSh5LlZhLEYuRC5zYSksZihmdW5jdGlvbih6KXtyZXR1cm4gej09PVguVi5LYX0pLFYoeS5WYSxILkoudWcsITEpKX19KHYpKSkpfXZhciBnPWQuaXNHdG1FdmVudCYmYT09PSIiP3tpZDoiIixwcmVmaXg6IiIsZGVzdGluYXRpb25JZDoiIixpZHM6W10sSmM6ZnVuY3Rpb24oKXtyZXR1cm4hMX19OmJDKGEsZC5pc0d0bUV2ZW50KTtpZihnKXt2YXIgaD1uZXcgYUkoZyxiLGQpO1YoaCxILkouZGEsWC5WLlFrKTtyTihoKTtpZighaC5pc0Fib3J0ZWQpe3ZhciBsPVtdO2lmKGQuZXZlbnRNZXRhZGF0YVtILkouRGNdKXt2YXIgbj0KZC5ldmVudE1ldGFkYXRhW0guSi5EY107QXJyYXkuaXNBcnJheShuKXx8KG49W25dKTtmb3IodmFyIHA9MDtwPG4ubGVuZ3RoO3ArKyl7dmFyIHE9c04obltwXSxoKTtNKDQ4OCl8fFYocSxILkouSmEsITEpO2wucHVzaChxKX19ZWxzZSBiPT09Ri5ELndhJiZsLnB1c2goc04oWC5WLk1rLGgpKSxiIT09Ri5ELkpiJiZsLnB1c2goc04oWC5WLkthLGgpKSxsLnB1c2goc04oWC5WLnhhLGgpKSxiIT09Ri5ELkpiJiYobC5wdXNoKHNOKFguVi5PYixoKSksbC5wdXNoKHNOKFguVi5GYixoKSksbC5wdXNoKHNOKFguVi51YixoKSkpO3ZhciByPVtGLkQua2EsRi5ELm1hXSx0PXZvaWQgMDticChmdW5jdGlvbigpe2YoKTt2YXIgdT0hWG8oW0YuRC5YYV0pO2lmKCFYbyhyKXx8dSl7dmFyIHY9cjt1JiYodj1bXS5jb25jYXQodyh2KSxbRi5ELlhhXSkpO2FwKGZ1bmN0aW9uKHgpe3ZhciB5LHosQzt5PXguY29uc2VudEV2ZW50SWQ7ej14LmNvbnNlbnRQcmlvcml0eUlkO0M9eC5jb25zZW50VHlwZXM7CmUoeSx6KTtDJiZDLmxlbmd0aD09PTEmJkNbMF09PT1GLkQuWGE/ZihmdW5jdGlvbihEKXtyZXR1cm4gRD09PVguVi51Yn0pOmYoKX0sdil9fSxyKX19fTsKdmFyIHVOPWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouRGgpO3JldHVybiBYbyhmcCk/Yj9RKGEsSC5KLlppKT97ZW5kcG9pbnQ6MyxxZTozLGJmOlsxMSw0XX06e2VuZHBvaW50OjMscWU6MX06UShhLEguSi5aaSk/e2VuZHBvaW50OjEscWU6NixiZjpbNSw3XX06e2VuZHBvaW50OjEscWU6NX06e2VuZHBvaW50OjIscWU6OH19LHhOPWZ1bmN0aW9uKGEsYixjKXtpZihRKGEsSC5KLmRhKT09PVguVi5LYSlHeShhKTtlbHNle3ZhciBkPXVOKGEpO3ZOKGEsZC5xZSxmdW5jdGlvbihlKXt2YXIgZj1RKGEsSC5KLkVoKSxnPU9iamVjdC5rZXlzKGUpLm1hcChmdW5jdGlvbih2KXtyZXR1cm4gdisiPSIrZVt2XX0pLGg9Zi50YXJnZXQuZGVzdGluYXRpb25JZCxsPWZ1bmN0aW9uKHYpe01sKHt0YXJnZXRJZDpoLHJlcXVlc3Q6e3VybDp2LHBhcmFtZXRlckVuY29kaW5nOjQsZW5kcG9pbnQ6ZC5lbmRwb2ludH0scWI6e2V2ZW50SWQ6YS5NLmV2ZW50SWQscHJpb3JpdHlJZDphLk0ucHJpb3JpdHlJZH0sCkZqOmI9PT12b2lkIDA/dm9pZCAwOntldmVudElkOmIscHJpb3JpdHlJZDpjfX0pO3ZhciB4PXYuc2xpY2UoMCwtMSkuc3BsaXQoIjsiKTt4WzBdLmluZGV4T2YoIj0iKTwwJiZ4LnNoaWZ0KCk7eFswXT14WzBdLnNwbGl0KCIvIikucG9wKCl9LG49e2Rlc3RpbmF0aW9uSWQ6aCxlbmRwb2ludDpkLmVuZHBvaW50LGV2ZW50SWQ6YS5NLmV2ZW50SWQscHJpb3JpdHlJZDphLk0ucHJpb3JpdHlJZH0scD1mdW5jdGlvbih2LHgseSl7cmV0dXJuIHYubWFwKGZ1bmN0aW9uKHope3JldHVybiBTYih6LHgrIj0iKT94KyI9Iit5Onp9KX07aWYoZC5iZil7Zy5zcGxpY2UoLTEsMCwiZGNfcmFuZG9tPSIrUShhLEguSi5vbCkpO3ZhciBxPSIiK3dOKGQucWUsYSkrZy5qb2luKCI7IikrIj8iLHI9Zy5zbGljZSgpLHQ9ZnVuY3Rpb24odil7dmFyIHg7aWYoISh2Pj0oKCh4PWQuYmYpPT1udWxsP3ZvaWQgMDp4Lmxlbmd0aCl8fDApKSl7dmFyIHk9ZC5iZlt2XSx6PXAociwiZGNfZm10Iix5KSxDPSIiKwp3Tih5LGEpK3ouam9pbigiOyIpKyI/IixEO2E6c3dpdGNoKHkpe2Nhc2UgMTpjYXNlIDI6RD0yO2JyZWFrIGE7Y2FzZSAzOmNhc2UgNDpjYXNlIDY6Y2FzZSA3OkQ9MTticmVhayBhO2RlZmF1bHQ6RD0zfXZhciBJPUQ7ST09PTE/WW4obixDLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtsKEMpO2EuTS5vblN1Y2Nlc3MoKX0sZnVuY3Rpb24oKXt0KHYrMSl9KTpJPT09MyYmWG4obixDLGZ1bmN0aW9uKCl7bChDKTthLk0ub25TdWNjZXNzKCl9LGZ1bmN0aW9uKCl7dCh2KzEpfSl9fTtZbihuLHEsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe2wocSk7YS5NLm9uU3VjY2VzcygpfSxmdW5jdGlvbigpe3QoMCl9KTtnLnNwbGljZSgtMSwwLCJfZGNfdGVzdD0xIik7Zz1wKGcsImRjX2ZtdCIsMil9dmFyIHU9d04oZC5xZSxhKStnLmpvaW4oIjsiKSsiPyI7ZC5iZnx8bCh1KTtRKGEsSC5KLkRoKT8kbihuLHdOKDIsYSkrZy5qb2luKCI7IikrIj8iLGEuTS5vblN1Y2Nlc3MpOmQuYmZ8fFhuKG4sCnUsYS5NLm9uU3VjY2VzcyxhLk0ub25GYWlsdXJlKX0pfX0sdk49ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVtdLGU9e30sZj1mdW5jdGlvbihTLFcsZWEpe3ZhciBqYT1lYT9TdHJpbmcoVyk6ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhXKSk7ZVtTXT1qYX0sZz1DZChSKGEsRi5ELlVjKSk/UihhLEYuRC5VYyk6e30saD1SKGEsRi5ELnFoKTtoIT09dm9pZCAwJiZoIT09IiImJmYoInNyYyIsaCk7dmFyIGw9UihhLEYuRC5JaSk7bCE9PXZvaWQgMCYmbCE9PSIiJiZmKCJ0eXBlIixsKTt2YXIgbj1SKGEsRi5ELkhpKTtuIT09dm9pZCAwJiZuIT09IiImJmYoImNhdCIsbik7Zm9yKHZhciBwPW0oZXUoYSkpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlLHQ9UihhLHIpLHU9eU5bcl07aWYodSl7dmFyIHY9eWdbdV09PT0hMDt0PT09dm9pZCAwfHwhdiYmdD09PSIifHxmKHUsdCl9ZWxzZSB1PT09dm9pZCAwJiYoU2IociwiXyYiKT9mKHIuc3Vic3RyaW5nKDIpLAp0KTpmKHIsdCkpfWYoImd0bSIsZHUoe21jOlEoYSxILkouTmIpLFRnOmEuTS5pc0d0bUV2ZW50LGVmOlEoYSxILkouQ2MpfSkpO1R0KCkmJmYoImdjcyIsVXQoKSk7ZigiZ2NkIixZdChhLk0pKTthdSgpJiZmKCJkbWFfY3BzIixadCgpKTt2YXIgeD1ndChhLEYuRC5BaSxGLkQuQmkpO3gmJmYoImdjbGRjX3NyYyIseCk7aWYoTSg1NjIpKXt2YXIgeT1ndChhLEYuRC5CZCxGLkQuQ2QpO3kmJmYoImdjbGF3X3NyYyIseSl9ZigiZG1hIiwkdCgpKTtmKCJkY19mbXQiLGIpO3Z0KEV0KCkpJiZmKCJ0Y2ZkIixidSgpKTt2YXIgej1DcChhKTt6JiZmKCJ0YWdfZXhwIix6KTt2YXIgQz16TihhKTtDJiZmKCJwcmQiLEMsITApO2YoImVwdmVyIiwiMiIpO2ZvLkhbY28uaWEuY2JdIT09Ym8uTWEuVWV8fGZvLktbY28uaWEuY2JdLmlzQ29uc2VudEdyYW50ZWQoKXx8ZigibGltaXRlZF9hZHMiLCIxIik7dmFyIEQ9UihhLEYuRC56YSk7RCYmUShhLEguSi5ZZSkmJihEPVpzKFN0cmluZyhEKSkpO0diKGcsCmZ1bmN0aW9uKFMsVyl7aWYoVyE9bnVsbClpZihTPT09In5vcmVmIilEPVc7ZWxzZXt2YXIgZWE9ZW5jb2RlVVJJQ29tcG9uZW50KFMpO2VbZWFdIT1udWxsJiZQKDE0MSk7ZihlYSxXKX19KTt2YXIgST1RKGEsSC5KLllhKTtpZihJJiZYbyhGLkQubWEpKXtNKDU2OCkmJiFNKDU4NikmJlIoYSxGLkQuQmMpPT09ImEiJiYoST1jdyhJKSk7dmFyIEc9c3coSSk7RyYmZC5wdXNoKEcudGhlbihmdW5jdGlvbihTKXtmKCJlbSIsUy5wYXJhbSl9KSl9aHQoYSxlLGYpO3ZhciBOPWZ1bmN0aW9uKCl7RCYmZigifm9yZWYiLEQpO2MoZSl9O2lmKGQubGVuZ3RoKXRyeXtQcm9taXNlLmFsbChkKS50aGVuKGZ1bmN0aW9uKCl7TigpfSk7cmV0dXJufWNhdGNoKFMpe31OKCk7RnkoMyxhLmV2ZW50TmFtZSl9LHdOPWZ1bmN0aW9uKGEsYil7c3dpdGNoKGEpe2Nhc2UgMTpjYXNlIDI6dmFyIGM9e2xyOlN0cmluZyhSKGIsRi5ELnFoKSl9O3JldHVybiBNbVszXShjKTtjYXNlIDQ6Y2FzZSA3OnJldHVybiJodHRwczovL3d3dy5nb29nbGUuY29tL2dtcC9jb252ZXJzaW9uOyI7CmNhc2UgODpyZXR1cm4gTW1bMl0odm9pZCAwKTtkZWZhdWx0OnJldHVybiIiK01tWzFdKHZvaWQgMCl9fSx6Tj1mdW5jdGlvbihhKXt2YXIgYj1SKGEsRi5ELkhhKTtpZighQXJyYXkuaXNBcnJheShiKSlyZXR1cm4iIjtmb3IodmFyIGM9W10sZD1mdW5jdGlvbihsLG4scCl7cCE9PXZvaWQgMCYmcCE9PSIiJiZjLnB1c2goIiIrbCtuKyI6IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKHApKSl9LGU9MDtlPGIubGVuZ3RoO2UrKyl7dmFyIGY9YltlXSxnPWYuaWQ7Zi5pdGVtX2lkIT09dm9pZCAwJiYoZz1mLml0ZW1faWQsZi5pZCE9PXZvaWQgMD8oUCgxNTApLGYuaWQhPT1mLml0ZW1faWQmJlAoMTUxKSk6UCgxNTIpKTtnPT09dm9pZCAwJiYoZz1mLml0ZW1fbmFtZSk7dmFyIGg9ZSsxO2QoImkiLGgsZyk7ZCgicCIsaCxmLnByaWNlKTtkKCJxIixoLGZbRi5ELndoXSk7ZCgiYyIsaCxmW0YuRC5UY10pO2QoImwiLGgsZltGLkQudGJdKTtkKCJhIixoLGYuYWNjb3VudElkKX1yZXR1cm4gYy5qb2luKCJ8Iil9LApBTj17fSx5Tj0oQU5bRi5ELnNhXT0iZ2N1IixBTltGLkQuU2JdPSJnY2xnYiIsQU5bRi5ELmxiXT0iZ2NsYXciLEFOW0YuRC5CZV09ImdjbGdzIixBTltGLkQuQ2VdPSJnY2xscCIsQU5bRi5ELkRlXT0iZ2Nsc3QiLEFOW0YuRC5FZF09ImF1aWRkYyIsQU5bRi5ELkZlXT0icHMiLEFOW0YuRC5qaF09InBzY2RsIixBTltGLkQuTmZdPSJnY2xkYyIsQU5bRi5ELlZjXT0iZWRpZCIsQU5bRi5ELk1kXT0iZXZuaWQiLEFOW0YuRC5OZF09ImV4Y2lkIixBTltGLkQuSmldPSJtYXRjaF9pZCIsQU5bRi5ELkpsXT0ibnVtIixBTltGLkQuS2xdPSJ0cmFuIixBTltGLkQuTGxdPSJ1IixBTltGLkQucmhdPSJnYWMiLEFOW0YuRC5KZV09ImdhY2diIixBTltGLkQuS2VdPSJnZHByIixBTltGLkQuWGNdPSJnZGlkIixBTltGLkQuTGVdPSJfbmciLEFOW0YuRC50aF09ImdwcF9zaWQiLEFOW0YuRC51aF09ImdwcCIsQU5bRi5ELlZmXT0iX3R1IixBTltGLkQuTWVdPSJmcm0iLEFOW0YuRC5LaV09Imd0bV91cCIsCkFOW0YuRC5RZF09ImZjbnRyIixBTltGLkQuUmRdPSJmbG5nIixBTltGLkQuU2RdPSJtaWQiLEFOW0YuRC53aF09InF0eSIsQU5bRi5ELk9lXT0iZ2Rwcl9jb25zZW50IixBTltGLkQuUGFdPSJvcmQiLEFOW0YuRC5jZ109InVhYSIsQU5bRi5ELmRnXT0idWFiIixBTltGLkQuZWddPSJ1YWZ2bCIsQU5bRi5ELmZnXT0idWFtYiIsQU5bRi5ELmdnXT0idWFtIixBTltGLkQuaGddPSJ1YXAiLEFOW0YuRC5pZ109InVhcHYiLEFOW0YuRC5qZ109InVhdyIsQU5bRi5ELlFhXT0iY29zdCIsQU5bRi5ELmRlXT0ibnBhIixBTltGLkQucWhdPW51bGwsQU5bRi5ELklpXT1udWxsLEFOW0YuRC5IaV09bnVsbCxBTltGLkQuemFdPW51bGwsQU5bRi5ELkJkXT1udWxsLEFOW0YuRC5DZF09bnVsbCxBTltGLkQuQWldPW51bGwsQU5bRi5ELkJpXT1udWxsLEFOW0YuRC5VY109bnVsbCxBTltGLkQuSGFdPW51bGwsQU5bRi5ELlRhXT1udWxsLEFOKTt2YXIgQ049ZnVuY3Rpb24oYSl7dmFyIGI9YkMoYSk7aWYoYiYmKGIuaWRzLmxlbmd0aD09PTF8fGIuaWRzLmxlbmd0aD09PTMpKXt2YXIgYz1iLmlkc1tkQ1s0XV18fCIiLGQ9Yi5pZHNbZENbMl1dLGU9IiIsZj0idW5rbm93biI7aWYoZCl7dmFyIGc9ZC5zcGxpdCgiKyIpO2lmKGcubGVuZ3RoIT09MilyZXR1cm47ZT1nWzBdO2Y9Qk5bZ1sxXS50b0xvd2VyQ2FzZSgpXX1pZihmKXJldHVybnt0YXJnZXQ6YixLbjpjLExuOmUsRHI6Zn19fSxCTj17IiI6InVua25vd24iLHN0YW5kYXJkOiJzdGFuZGFyZCIsdW5pcXVlOiJ1bmlxdWUiLHBlcl9zZXNzaW9uOiJwZXJfc2Vzc2lvbiIsdHJhbnNhY3Rpb25zOiJ0cmFuc2FjdGlvbnMiLGl0ZW1zX3NvbGQ6Iml0ZW1zX3NvbGQifTsKdmFyIEROPWZ1bmN0aW9uKGEpe3ZhciBiPWNjKCk7VihhLEguSi5vbCxNYXRoLmZsb29yKE5iKCkvMUUzKSsiXyIrYil9LEVOPWZ1bmN0aW9uKGEsYixjLGQsZSl7aWYoYiYmYi5sZW5ndGgpe2Zvcih2YXIgZj1bXSxnPVtdLGg9W10sbD1tKGIpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO2YucHVzaChwLmdjbGlkKTt2YXIgcT12b2lkIDAscj12b2lkIDA7Zy5wdXNoKChyPShxPXAucWEpPT1udWxsP3ZvaWQgMDpxLmdldCgpKSE9bnVsbD9yOjApO2gucHVzaChWcyhwLm9hfHxbMF0pKX1pZihmLmxlbmd0aClyZXR1cm4gVShhLGMsZi5qb2luKCIuIikpLFUoYSxkLGcuam9pbigiLiIpKSxVKGEsZSxoLmpvaW4oIi4iKSksITB9cmV0dXJuITF9LElOPWZ1bmN0aW9uKGEsYixjLGQpe2Z1bmN0aW9uIGUoeixDKXtmb3IodmFyIEQ9bShwKSxJPUQubmV4dCgpOyFJLmRvbmU7ST1ELm5leHQoKSl7dmFyIEc9SS52YWx1ZTtpZighUShHLEguSi5zYSl8fFEoRywKSC5KLmRhKT09PVguVi5LYXx8WG8oZnApKWlmKCFRKEcsSC5KLnNhKXx8UShHLEguSi5kYSkhPT1YLlYuS2F8fFEoRyxILkoudmQpKXtmb3IodmFyIE49UShHLEguSi5kYSk9PT1YLlYuS2E/Rk46R04sUz1tKE4pLFc9Uy5uZXh0KCk7IVcuZG9uZTtXPVMubmV4dCgpKXt2YXIgZWE9Vy52YWx1ZTtlYShHKTtpZihHLmlzQWJvcnRlZClicmVha31RKEcsSC5KLkphKXx8Ry5pc0Fib3J0ZWR8fCh4TihHLHosQyksUShHLEguSi5kYSk9PT1YLlYuS2EmJlEoRyxILkoudmQpJiZNSyhHLGZ1bmN0aW9uKCl7ZSh6LEMpfSkpfX19dmFyIGY9Q04oYSk7aWYoZil7dmFyIGc9bmV3IGFJKGYudGFyZ2V0LGIsZCk7VihnLEguSi5FaCxmKTtWKGcsSC5KLkViLE5iKCkpO2Zvcih2YXIgaD1tKEhOKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSl7dmFyIG49bC52YWx1ZTtuKGcpO2lmKGcuaXNBYm9ydGVkKXJldHVybn12YXIgcD1bXSxxPWQuZXZlbnRNZXRhZGF0YVtILkouRGNdO2lmKHEpe0FycmF5LmlzQXJyYXkocSl8fAoocT1bcV0pO2Zvcih2YXIgcj1tKHEpLHQ9ci5uZXh0KCk7IXQuZG9uZTt0PXIubmV4dCgpKXt2YXIgdT10LnZhbHVlLHY9WnUoZyk7Vih2LEguSi5kYSx1KTtwLnB1c2godil9fWlmKHAubGVuZ3RoPT09MCl7dmFyIHg9WnUoZyk7Vih4LEguSi5kYSxYLlYud3EpO3AucHVzaCh4KTtpZihiIT09Ri5ELkpiKXt2YXIgeT1adShnKTtWKHksSC5KLmRhLFguVi5LYSk7Vih5LEguSi5KYSwhMCk7cC5wdXNoKHkpfX1icChmdW5jdGlvbigpe2UoKTtYbyhmcCl8fGFwKGZ1bmN0aW9uKHope3ZhciBDLEQ7Qz16LmNvbnNlbnRFdmVudElkO0Q9ei5jb25zZW50UHJpb3JpdHlJZDtmb3IodmFyIEk9bShwKSxHPUkubmV4dCgpOyFHLmRvbmU7Rz1JLm5leHQoKSl7dmFyIE49Ry52YWx1ZTtWKE4sSC5KLnNhLCEwKTtWKE4sSC5KLkViLE5iKCkpO1YoTixILkoudWYsQyk7VihOLEguSi52ZixEKX1lKEMsRCl9LGZwKX0sZnApfWVsc2UgYmQoZC5vbkZhaWx1cmUpfSxITj1bSE0sSk0sSU0sTUYsUEZdLEdOPQpbWk0sZE4sZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5FaCk7VihhLEguSi5VaSxiLkRyKTtVKGEsRi5ELnFoLGIudGFyZ2V0Lmlkc1tkQ1szXV0pO1UoYSxGLkQuSWksYi5Lbik7VShhLEYuRC5IaSxiLkxuKTtWKGEsSC5KLkViLE5iKCkpO3ZhciBjPU8oYS5NLEYuRC5yaSkhPT0hMD8hMTpNKDU0MCk/YmcoImFsbG93X2N1c3RvbV9zY3JpcHRzIixFKDUpKTohMCxkPVhvKGZwKTtWKGEsSC5KLkRoLGMmJmQpO1YoYSxILkouWWUsUShhLEguSi5YZSkmJiFkKTsoTSgxNTgpfHxNKDUyNCkpJiZWKGEsSC5KLlppLCEwKTtNKDUwNCkmJihhLmNvcHlUb0hpdERhdGEoRi5ELk5kKSxhLmNvcHlUb0hpdERhdGEoRi5ELk1kKSl9LGZ1bmN0aW9uKGEpe2lmKCFRKGEsSC5KLnNhKSl7dmFyIGI9YS5NLmlzR3RtRXZlbnQ/TyhhLk0sIm9yZWYiKTpPaihSaihBLmxvY2F0aW9uLmhyZWYpKTtVKGEsRi5ELnphLGIpfX0sZnVuY3Rpb24oYSl7YS5ldmVudE5hbWUhPT1GLkQud2F8fGEuTS5pc0d0bUV2ZW50fHwKKGEuaXNBYm9ydGVkPSEwKX0sZnVuY3Rpb24oYSl7dmFyIGI9e30sYz1PKGEuTSxGLkQuVWMpO0NkKGMpJiZHYihjLGZ1bmN0aW9uKGQsZSl7ZSE9bnVsbCYmKGJbZF09ZSl9KTtVKGEsRi5ELlVjLGIpfSxmdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLlVpKTtzYigiR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUwiLEV1W2JdKTtzd2l0Y2goYil7Y2FzZSAic3RhbmRhcmQiOlUoYSxGLkQuUGEsRGIoMUUxMSwxRTEzKSk7c2IoIkdUQUdfRVZFTlRfRkVBVFVSRV9DSEFOTkVMIixULlcuRmgpO3JldHVybjtjYXNlICJ1bmlxdWUiOlUoYSxGLkQuUGEsIjEiKTtVKGEsRi5ELkpsLERiKDFFMTEsMUUxMykpO3NiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsVC5XLkZoKTtyZXR1cm47Y2FzZSAicGVyX3Nlc3Npb24iOnZhciBjPU8oYS5NLEYuRC54Yyk7VShhLEYuRC5QYSxjKTtyZXR1cm59dmFyIGQ9Yj09PSJ0cmFuc2FjdGlvbnMiPyIxIjpPKGEuTSxGLkQud2gpO1UoYSxGLkQud2gsCmQpO2EuY29weVRvSGl0RGF0YShGLkQuUWEpO2EuY29weVRvSGl0RGF0YShGLkQuUGEpfSxmdW5jdGlvbihhKXthLk0uaXNHdG1FdmVudCYmKGEuY29weVRvSGl0RGF0YShGLkQuTGwpLGEuY29weVRvSGl0RGF0YShGLkQuS2wpLGEuY29weVRvSGl0RGF0YShGLkQuSmkpKX0sZnVuY3Rpb24oYSl7UShhLEguSi5zYSkmJlUoYSxGLkQuc2EsIjEiKX0sZnVuY3Rpb24oYSl7a04oYSwhMSl9LG1OLGpOLFBNLGZ1bmN0aW9uKGEpe2lmKFEoYSxILkoud2YpKXt2YXIgYj1RKGEsSC5KLkdhKSxjPVEoYSxILkouWGUpLGQ9ITE7aWYoTSg0ODEpKXt2YXIgZT1ldCgiZGMiLGIucHJlZml4LGMpO2Q9RU4oYSxlLEYuRC5OZixGLkQuQWksRi5ELkJpKX1lbHNle3ZhciBmPWZ0KCJkYyIsYi5wcmVmaXgsYyk7ZiYmZi5sZW5ndGgmJihVKGEsRi5ELk5mLGYuam9pbigiLiIpKSxkPSEwKX1pZihYbyhGLkQua2EpKXt2YXIgZz1IcihiLnByZWZpeCksaD1ScyhnKTtVKGEsRi5ELkJlLGguRWcpO1UoYSxGLkQuRGUsCmguV2gpO1UoYSxGLkQuQ2UsaC5VaCl9aWYoUShhLEguSi5EaCkpe3ZhciBsPUhyKGIucHJlZml4KSE9PSJfZ2NsIixuO2lmKCEobj1kKSl7dmFyIHA9Yi5wcmVmaXg7bj0hKFRqKCJnY2xhdyIpfHxUaigiZ2FjIil8fChlcygpLmF3fHxbXSkubGVuZ3RoPjA/MDooZXMoKS5nYnx8W10pLmxlbmd0aD4wfHxlcygpLmdicmFpZCE9PXZvaWQgMHx8SXMocCkpfWlmKG4pe2lmKE0oNTYxKSl7dmFyIHE9ZXQoImF3IixiLnByZWZpeCxjKTtFTihhLHEsRi5ELmxiLEYuRC5CZCxGLkQuQ2QpJiZQKDU5KX1lbHNle3ZhciByPWZ0KCJhdyIsYi5wcmVmaXgsYyk7ciYmci5sZW5ndGgmJihVKGEsRi5ELmxiLHIuam9pbigiLiIpKSxQKDU5KSl9dmFyIHQsdT1UaigiZ2FjIik7KHQ9dT8hWG8oZnApJiZjPyIwIjpLaih1KXx8IiI6Y3QoQnIoQXIoKSk/UnAoKTp7fSkpJiYobHx8VShhLEYuRC5yaCx0KSl9ZWxzZXt2YXIgdjthOnt2YXIgeD1iLnByZWZpeCx5PVRqKCJnY2xnYiIpO2lmKHkpdj15LnNwbGl0KCIuIik7CmVsc2V7dmFyIHo9SHIoeCk7aWYoej09PSJfZ2NsIil7dmFyIEM9IVhvKGZwKSYmYyxEPWVzKCksST1bXTtELndicmFpZCYmSS5wdXNoKEQud2JyYWlkKTtELmdicmFpZCYmSS5wdXNoKEQuZ2JyYWlkKTtpZihJLmxlbmd0aD4wKXt2PUM/WyIwIl06STticmVhayBhfX12PUZyKHtwcmVmaXg6en0pfX12YXIgRz12O0cubGVuZ3RoJiZVKGEsRi5ELlNiLEcuam9pbigiLiIpKTtpZighbCl7dmFyIE4sUz1UaigiZ2FjZ2IiKTsoTj1TPyFYbyhmcCkmJmM/IjAiOktqKFMpfHwiIjpjdChCcihBcigpKT9ScCgiX2dhY19nYiIsITApOnt9KSkmJlUoYSxGLkQuSmUsTil9fX19fSxmdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLlVpKTtpZihiPT09InRyYW5zYWN0aW9ucyJ8fGI9PT0iaXRlbXNfc29sZCIpe3ZhciBjPU8oYS5NLEYuRC5IYSk7aWYoQXJyYXkuaXNBcnJheShjKSl7aWYoIWEuTS5pc0d0bUV2ZW50KWZvcih2YXIgZD1PKGEuTSxGLkQuVGMpLGU9TyhhLk0sRi5ELnRiKSxmPW0oYyksZz0KZi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD1nLnZhbHVlO0NkKGgpJiYoaFtGLkQuVGNdPWQsaFtGLkQudGJdPWUsaC5hY2NvdW50SWQ9dm9pZCAwKX1VKGEsRi5ELkhhLGMpfX19LGZ1bmN0aW9uKGEpe2EuY29weVRvSGl0RGF0YShGLkQuU2QpO2EuY29weVRvSGl0RGF0YShGLkQuUWQpO2EuY29weVRvSGl0RGF0YShGLkQuUmQpfSxmdW5jdGlvbihhKXt2YXIgYj1PKGEuTSxGLkQuSGUpLGM9e307Q2QoYikmJkdiKGIsZnVuY3Rpb24oZyxoKXt6YihoKSYmSk4udGVzdChnKSYmKGNbZ109aCl9KTtmb3IodmFyIGQ9d0MoYS5NKSxlPTA7ZTxkLmxlbmd0aDtlKyspe3ZhciBmPWRbZV07Sk4udGVzdChmKSYmKGNbZl09Zil9R2IoYyxmdW5jdGlvbihnLGgpe1UoYSxnLE8oYS5NLGgpKX0pfSxVTCxmdW5jdGlvbihhKXt2YXIgYj17fTtYTShhLCEwLChiW0YuRC5sYl09Ri5ELk5mLGIpKX0sR00scE4sU0wsbE4saU4sWEwsRE4sTk0sZ04sV0xdLEZOPVtmdW5jdGlvbihhKXthLmV2ZW50TmFtZSE9PQpGLkQuc2MmJlEoYSxILkouUGMpJiYoYS5pc0Fib3J0ZWQ9ITApO3ZhciBiPVEoYSxILkouRWgpO2ImJmIuTG4mJmIuS24mJihhLmlzQWJvcnRlZD0hMCl9LGlOLGNOLFdNLGZ1bmN0aW9uKGEpeyRNKGEse1NqOiEwLE1qOiEwLGtvOiEwfSl9LGFOLFVMLFhMLGxOLFpNLEROLE5NLGZ1bmN0aW9uKGEpe2dOKGEsITEpfSxXTF0sSk49L151KFsxLTldXGQ/fDEwMCkkLztmdW5jdGlvbiBGTyhhLGIsYyxkKXt9Rk8uUD0iaW50ZXJuYWwuZXhlY3V0ZUV2ZW50UHJvY2Vzc29yIjtmdW5jdGlvbiBHTyhhKXt2YXIgYjtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7TCh0aGlzLCJ1bnNhZmVfcnVuX2FyYml0cmFyeV9qYXZhc2NyaXB0Iik7dHJ5e3ZhciBjPUEuZ29vZ2xlX3RhZ19tYW5hZ2VyO2MmJnR5cGVvZiBjLmU9PT0iZnVuY3Rpb24iJiYoYj1jLmUoYSkpfWNhdGNoKGQpe31yZXR1cm4gVWQoYix0aGlzLlQsMSl9R08uUD0iaW50ZXJuYWwuZXhlY3V0ZUphdmFzY3JpcHRTdHJpbmciO2Z1bmN0aW9uIEhPKGEpe3ZhciBiO3JldHVybiBifTtmdW5jdGlvbiBJTyhhKXt2YXIgYj0iIjtyZXR1cm4gYn1JTy5QPSJpbnRlcm5hbC5nZW5lcmF0ZUNsaWVudElkIjtmdW5jdGlvbiBKTyhhKXt2YXIgYj17fTtyZXR1cm4gVWQoYil9Sk8uUD0iaW50ZXJuYWwuZ2V0QWRzQ29va2llV3JpdGluZ09wdGlvbnMiO2Z1bmN0aW9uIEtPKGEsYil7dmFyIGM9ITE7cmV0dXJuIGN9S08uUD0iaW50ZXJuYWwuZ2V0QWxsb3dBZFBlcnNvbmFsaXphdGlvbiI7ZnVuY3Rpb24gTE8oKXt2YXIgYTtyZXR1cm4gYX1MTy5QPSJpbnRlcm5hbC5nZXRBbmRSZXNldEV2ZW50VXNhZ2UiO2Z1bmN0aW9uIE1PKGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM7cmV0dXJuIGN9TU8uUD0iaW50ZXJuYWwuZ2V0QXVpZCI7ZnVuY3Rpb24gTk8oKXt2YXIgYT1bXTtyZXR1cm4gVWQoYSl9Tk8uUD0iaW50ZXJuYWwuZ2V0Q29udGFpbmVySWRzIjtmdW5jdGlvbiBPTygpe3ZhciBhPW5ldyBrYjtMKHRoaXMsInJlYWRfY29udGFpbmVyX2RhdGEiKSxhLnNldCgiY29udGFpbmVySWQiLGlnKSxhLnNldCgidmVyc2lvbiIsa2cpLGEuc2V0KCJlbnZpcm9ubWVudE5hbWUiLGpnKSxhLnNldCgiZGVidWdNb2RlIixsZyksYS5zZXQoInByZXZpZXdNb2RlIixtZy5QbyksYS5zZXQoImVudmlyb25tZW50TW9kZSIsbWcuS3IpLGEuc2V0KCJmaXJzdFBhcnR5U2VydmluZyIsYWsoKSksYS5zZXQoImNvbnRhaW5lclVybCIsS2MpLGEuc2V0KCJpc0dvb2dsZU9ubHlNb2RlIixJZig2MikpLGEuWmEoKTtyZXR1cm4gYX1PTy5wdWJsaWNOYW1lPSJnZXRDb250YWluZXJWZXJzaW9uIjtmdW5jdGlvbiBQTyhhLGIpe2I9Yj09PXZvaWQgMD8hMDpiO3ZhciBjO2lmKCFsaChhKXx8IXBoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJib29sZWFufHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7TCh0aGlzLCJnZXRfY29va2llcyIsYSk7Yz1VZChjcShhLHZvaWQgMCwhIWIpLHRoaXMuVCk7cmV0dXJuIGN9UE8ucHVibGljTmFtZT0iZ2V0Q29va2llVmFsdWVzIjtmdW5jdGlvbiBRTygpe3ZhciBhPSIiO3JldHVybiBhfVFPLlA9ImludGVybmFsLmdldENvcmVQbGF0Zm9ybVNlcnZpY2VzUGFyYW0iO2Z1bmN0aW9uIFJPKCl7cmV0dXJuIHltKCl9Uk8uUD0iaW50ZXJuYWwuZ2V0Q291bnRyeUNvZGUiO2Z1bmN0aW9uIFNPKCl7dmFyIGE9W107YT10aygpO3JldHVybiBVZChhKX1TTy5QPSJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyI7ZnVuY3Rpb24gVE8oYSl7dmFyIGI9bmV3IGtiO3JldHVybiBifVRPLlA9ImludGVybmFsLmdldERldmVsb3BlcklkcyI7ZnVuY3Rpb24gVU8oYSl7dmFyIGI7cmV0dXJuIGJ9VU8uUD0iaW50ZXJuYWwuZ2V0RWNzaWRDb29raWVWYWx1ZSI7ZnVuY3Rpb24gVk8oYSxiKXt2YXIgYz1udWxsO2lmKCFraChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPcGFxdWVWYWx1ZSIsInN0cmluZyJdLGFyZ3VtZW50cyk7dmFyIGQ9YS5nZXRWYWx1ZSgpO2lmKCEoZCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSl0aHJvdyBFcnJvcigiZ2V0RWxlbWVudEF0dHJpYnV0ZSByZXF1aXJlcyBhbiBIVE1MIEVsZW1lbnQuIik7TCh0aGlzLCJnZXRfZWxlbWVudF9hdHRyaWJ1dGVzIixkLGIpO2M9ZWQoZCxiKTtyZXR1cm4gY31WTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50QXR0cmlidXRlIjtmdW5jdGlvbiBXTyhhKXt2YXIgYj1udWxsO0wodGhpcywicmVhZF9kb21fZWxlbWVudHMiLCJpZCIsYSk7dmFyIGM9Qi5nZXRFbGVtZW50QnlJZChhKTtpZihjPT09bnVsbClyZXR1cm4gYztiPW5ldyBQZChjKTtyZXR1cm4gYn1XTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50QnlJZCI7ZnVuY3Rpb24gWE8oYSl7dmFyIGI9IiI7aWYoIWtoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPcGFxdWVWYWx1ZSJdLGFyZ3VtZW50cyk7dmFyIGM9YS5nZXRWYWx1ZSgpO2lmKCEoYyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSl0aHJvdyBFcnJvcigiZ2V0RWxlbWVudElubmVyVGV4dCByZXF1aXJlcyBhbiBIVE1MIEVsZW1lbnQuIik7TCh0aGlzLCJyZWFkX2RvbV9lbGVtZW50X3RleHQiLGMpO2I9ZmQoYyk7cmV0dXJuIGJ9WE8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudElubmVyVGV4dCI7ZnVuY3Rpb24gWU8oYSl7dmFyIGI9bnVsbDtyZXR1cm4gYn1ZTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50UGFyZW50IjtmdW5jdGlvbiBaTyhhKXt2YXIgYj1udWxsO3JldHVybiBifVpPLlA9ImludGVybmFsLmdldEVsZW1lbnRQcmV2aW91c1NpYmxpbmciO2Z1bmN0aW9uICRPKGEsYil7dmFyIGM9bnVsbDtpZigha2goYSl8fCFsaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT3BhcXVlVmFsdWUiLCJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBkPWEuZ2V0VmFsdWUoKTtpZighKGQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkpdGhyb3cgRXJyb3IoImdldEVsZW1lbnRQcm9wZXJ0eSByZXF1aXJlcyBhbiBIVE1MIGVsZW1lbnQuIik7TCh0aGlzLCJhY2Nlc3NfZG9tX2VsZW1lbnRfcHJvcGVydGllcyIsZCwicmVhZCIsYik7Yz1kW2JdO3JldHVybiBVZChjKX0kTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50UHJvcGVydHkiO2Z1bmN0aW9uIGFQKGEpe3ZhciBiO2lmKCFraChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT3BhcXVlVmFsdWUiXSxhcmd1bWVudHMpO3ZhciBjPWEuZ2V0VmFsdWUoKTtpZighKGMgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkpdGhyb3cgRXJyb3IoImdldEVsZW1lbnRWYWx1ZSByZXF1aXJlcyBhbiBIVE1MIEVsZW1lbnQuIik7TCh0aGlzLCJhY2Nlc3NfZWxlbWVudF92YWx1ZXMiLGMsInJlYWQiKTtiPWMgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50P2MudmFsdWU6ZWQoYywidmFsdWUiKXx8IiI7cmV0dXJuIGJ9YVAuUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFZhbHVlIjtmdW5jdGlvbiBiUChhKXt2YXIgYj0wO3JldHVybiBifWJQLlA9ImludGVybmFsLmdldEVsZW1lbnRWaXNpYmlsaXR5UmF0aW8iO2Z1bmN0aW9uIGNQKGEpe3ZhciBiPW51bGw7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO0wodGhpcywicmVhZF9kb21fZWxlbWVudHMiLCJjc3MiLGEpO2I9bmV3IEdkO3ZhciBjO3RyeXtjPUIucXVlcnlTZWxlY3RvckFsbChhKX1jYXRjaChlKXtyZXR1cm4gbnVsbH1pZihjPT09bnVsbClyZXR1cm4gYjtmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKyliLnNldChkLG5ldyBQZChjW2RdKSk7cmV0dXJuIGJ9Y1AuUD0iaW50ZXJuYWwuZ2V0RWxlbWVudHNCeUNzc1NlbGVjdG9yIjsKZnVuY3Rpb24gZFAoYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO0wodGhpcywicmVhZF9ldmVudF9kYXRhIixhKTt2YXIgYzthOnt2YXIgZD1hLGU9WEYodGhpcykub3JpZ2luYWxFdmVudERhdGE7aWYoZSl7Zm9yKHZhciBmPWUsZz17fSxoPXt9LGw9e30sbj1bXSxwPWQuc3BsaXQoIlxcXFwiKSxxPTA7cTxwLmxlbmd0aDtxKyspe2Zvcih2YXIgcj1wW3FdLnNwbGl0KCJcXC4iKSx0PTA7dDxyLmxlbmd0aDt0Kyspe2Zvcih2YXIgdT1yW3RdLnNwbGl0KCIuIiksdj0wO3Y8dS5sZW5ndGg7disrKW4ucHVzaCh1W3ZdKSx2IT09dS5sZW5ndGgtMSYmbi5wdXNoKGwpO3QhPT1yLmxlbmd0aC0xJiZuLnB1c2goaCl9cSE9PXAubGVuZ3RoLTEmJm4ucHVzaChnKX1mb3IodmFyIHg9W10seT0iIix6PW0obiksQz16Lm5leHQoKTshQy5kb25lO0M9CnoubmV4dCgpKXt2YXIgRD1DLnZhbHVlO0Q9PT1sPyh4LnB1c2goeSkseT0iIik6eT1EPT09Zz95KyJcXCI6RD09PWg/eSsiLiI6eStEfXkmJngucHVzaCh5KTtmb3IodmFyIEk9bSh4KSxHPUkubmV4dCgpOyFHLmRvbmU7Rz1JLm5leHQoKSl7aWYoZj09bnVsbCl7Yz12b2lkIDA7YnJlYWsgYX1mPWZbRy52YWx1ZV19Yz1mfWVsc2UgYz12b2lkIDB9Yj1VZChjLHRoaXMuVCwxKTtyZXR1cm4gYn1kUC5QPSJpbnRlcm5hbC5nZXRFdmVudERhdGEiO2Z1bmN0aW9uIGVQKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9ZVAuUD0iaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciI7ZnVuY3Rpb24gZlAoKXt2YXIgYTtyZXR1cm4gYX1mUC5QPSJpbnRlcm5hbC5nZXRHc2FFeHBlcmltZW50SWQiO2Z1bmN0aW9uIGdQKCl7cmV0dXJuIG5ldyBQZChQayl9Z1AuUD0iaW50ZXJuYWwuZ2V0SHRtbElkIjtmdW5jdGlvbiBoUCgpe3ZhciBhO3JldHVybiBhfWhQLlA9ImludGVybmFsLmdldElmcmFtaW5nU3RhdGUiO2Z1bmN0aW9uIGlQKGEsYil7dmFyIGM9e307cmV0dXJuIFVkKGMpfWlQLlA9ImludGVybmFsLmdldExpbmtlclZhbHVlRnJvbUxvY2F0aW9uIjtmdW5jdGlvbiBqUCgpe3ZhciBhPW5ldyBrYjtyZXR1cm4gYX1qUC5QPSJpbnRlcm5hbC5nZXRQcml2YWN5U3RyaW5ncyI7ZnVuY3Rpb24ga1AoYSxiKXt2YXIgYztyZXR1cm4gY31rUC5QPSJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiO2Z1bmN0aW9uIGxQKGEsYil7dmFyIGM7cmV0dXJuIGN9bFAucHVibGljTmFtZT0iZ2V0UXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBtUChhLGIpe3ZhciBjO3JldHVybiBjfW1QLnB1YmxpY05hbWU9ImdldFJlZmVycmVyUXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBuUChhKXt2YXIgYj0iIjtpZighbWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZ3x1bmRlZmluZWQiXSxhcmd1bWVudHMpO0wodGhpcywiZ2V0X3JlZmVycmVyIixhKTtiPU5qKFJqKEIucmVmZXJyZXIpLGEpO3JldHVybiBifW5QLnB1YmxpY05hbWU9ImdldFJlZmVycmVyVXJsIjtmdW5jdGlvbiBvUCgpe3JldHVybiB6bSgpfW9QLlA9ImludGVybmFsLmdldFJlZ2lvbkNvZGUiO2Z1bmN0aW9uIHBQKGEsYil7dmFyIGM7cmV0dXJuIGN9cFAuUD0iaW50ZXJuYWwuZ2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIjtmdW5jdGlvbiBxUChhLGIpe3ZhciBjPW51bGw7CnJldHVybiBjfXFQLlA9ImludGVybmFsLmdldFNjb3BlZEVsZW1lbnRzQnlDc3NTZWxlY3RvciI7ZnVuY3Rpb24gclAoKXt2YXIgYT1uZXcga2I7YS5zZXQoIndpZHRoIiwwKTthLnNldCgiaGVpZ2h0IiwwKTtyZXR1cm4gYX1yUC5QPSJpbnRlcm5hbC5nZXRTY3JlZW5EaW1lbnNpb25zIjtmdW5jdGlvbiBzUCgpe3ZhciBhPSIiO3JldHVybiBhfXNQLlA9ImludGVybmFsLmdldFRvcFNhbWVEb21haW5VcmwiO2Z1bmN0aW9uIHRQKCl7dmFyIGE9IiI7cmV0dXJuIGF9dFAuUD0iaW50ZXJuYWwuZ2V0VG9wV2luZG93VXJsIjtmdW5jdGlvbiB1UChhKXt2YXIgYj0iIjtpZighbWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZ3x1bmRlZmluZWQiXSxhcmd1bWVudHMpO0wodGhpcywiZ2V0X3VybCIsYSk7Yj1MaihSaihBLmxvY2F0aW9uLmhyZWYpLGEpO3JldHVybiBifXVQLnB1YmxpY05hbWU9ImdldFVybCI7ZnVuY3Rpb24gdlAoKXtMKHRoaXMsImdldF91c2VyX2FnZW50Iik7cmV0dXJuIEhjLnVzZXJBZ2VudH12UC5wdWJsaWNOYW1lPSJnZXRVc2VyQWdlbnQiO3ZQLlA9ImludGVybmFsLmdldFVzZXJBZ2VudCI7ZnVuY3Rpb24gd1AoKXt2YXIgYTtyZXR1cm4gYT9VZChFTShhKSk6YX13UC5QPSJpbnRlcm5hbC5nZXRVc2VyQWdlbnRDbGllbnRIaW50cyI7ZnVuY3Rpb24gelAoKXt2YXIgYT1BO3JldHVybiBhLmdhR2xvYmFsPWEuZ2FHbG9iYWx8fHt9fWZ1bmN0aW9uIEFQKGEsYil7dmFyIGM9elAoKTtpZihjLnZpZD09PXZvaWQgMHx8YiYmIWMuZnJvbV9jb29raWUpYy52aWQ9YSxjLmZyb21fY29va2llPWJ9O2Z1bmN0aW9uIGJRKGEpeyhiayhaSyhhKSl8fFdqKCkpJiZVKGEsRi5ELm9tLHptKCl8fHltKCkpOyFiayhaSyhhKSkmJldqKCkmJlUoYSxGLkQuWWksIjo6Iil9ZnVuY3Rpb24gY1EoYSl7V2ooKSYmKGJrKFpLKGEpKXx8RG0oKXx8VShhLEYuRC5TbCwhMCkpfTtmdW5jdGlvbiBoUShhLGIsYyxkKXt2YXIgZTtpZigobmQoKXx8a2QoKSkmJlhqKCkmJlhqKCkhPT0iLyIpe3ZhciBmPVJqKGEpO2U9SWYoNTApJiZkJiZUYihmLnBhdGhuYW1lLCIvZy9jb2xsZWN0Iik/MjooZHx8IVdqKCl8fERtKCk/MDpUYihmLnBhdGhuYW1lLCIvZ2EvZy9jIil8fFRiKGYucGF0aG5hbWUsIi9hZy9nL2MiKSk/MTowfWVsc2UgZT0wO3N3aXRjaChlKXtjYXNlIDI6dmFyIGc7aWYoTSg1NDYpKXt2YXIgaD1UYihhLCIvZy9jb2xsZWN0Iik/YS5zdWJzdHJpbmcoMCxhLmxlbmd0aC0xMCk6YSxsPWlRKCksbj1oK2wscD1qUSgiL2cvY29sbGVjdCIsYixjKTtnPXtJYzpuLGtmOiIiLGJvZHk6cH19ZWxzZSBnPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gZztjYXNlIDE6dmFyIHE7aWYoTSg1NDcpKXt2YXIgcj1pUSgpLHQ9YS5pbmRleE9mKHIpLHU9YS5zdWJzdHJpbmcoMCx0KStyLHY9alEoYS5zdWJzdHJpbmcodCtyLmxlbmd0aC0xKSxiLGMpO3E9e0ljOnUsa2Y6IiIsCmJvZHk6dn19ZWxzZSBxPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gcTtkZWZhdWx0OnJldHVybntJYzphLGtmOmIsYm9keTpjfX19ZnVuY3Rpb24gaVEoKXt2YXIgYT1YaigpO2lmKCFhKXJldHVybiIiO1NiKGEsIi8iKXx8KGE9Ii8iK2EpO1RiKGEsIi8iKXx8KGErPSIvIik7cmV0dXJuIGF9ZnVuY3Rpb24galEoYSxiLGMpe3ZhciBkPVthXTtiJiZkLnB1c2goIj8iLGIpO2MmJmQucHVzaCgiXHJcbiIsYyk7cmV0dXJuIGQuam9pbigiIil9O2Z1bmN0aW9uIHNSKGEpe2EuY29weVRvSGl0RGF0YShGLkQuZmIpO3ZhciBiPU8oYS5NLEYuRC5XZCk7YiYmKEtDKGIsZnVuY3Rpb24oKXt9KSxVKGEsRi5ELldkLGIpKX07ZnVuY3Rpb24gdlIoYSl7dmFyIGI9ZnVuY3Rpb24oYyl7cmV0dXJuISFjJiZjLmNvbnZlcnNpb259O1YoYSxILkoubWcsYihYSyhhKSkpO1EoYSxILkoubmcpJiZWKGEsSC5KLlltLGIoWEsoYSwiZmlyc3RfdmlzaXQiKSkpO1EoYSxILkouVGUpJiZWKGEsSC5KLmJuLGIoWEsoYSwic2Vzc2lvbl9zdGFydCIpKSl9O3ZhciBBUj1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz1TdHJpbmcoelIuY29va2llKS5zcGxpdCgiOyIpLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9Y1tkXS5zcGxpdCgiPSIpLGY9ZVswXS50cmltKCk7aWYoZiYmYShmKSl7dmFyIGc9ZS5zbGljZSgxKS5qb2luKCI9IikudHJpbSgpO2cmJihnPWRlY29kZVVSSUNvbXBvbmVudChnKSk7dmFyIGg9dm9pZCAwLGw9dm9pZCAwOygoaD1iKVtsPWZdfHwoaFtsXT1bXSkpLnB1c2goZyl9fXJldHVybiBifTt2YXIgQlI9d2luZG93LHpSPWRvY3VtZW50LENSPWZ1bmN0aW9uKGEpe3ZhciBiPUJSLl9nYVVzZXJQcmVmcztpZihiJiZiLmlvbyYmYi5pb28oKXx8elIuZG9jdW1lbnRFbGVtZW50Lmhhc0F0dHJpYnV0ZSgiZGF0YS1nb29nbGUtYW5hbHl0aWNzLW9wdC1vdXQiKXx8YSYmQlJbImdhLWRpc2FibGUtIithXT09PSEwKXJldHVybiEwO3RyeXt2YXIgYz1CUi5leHRlcm5hbDtpZihjJiZjLl9nYVVzZXJQcmVmcyYmYy5fZ2FVc2VyUHJlZnM9PSJvbyIpcmV0dXJuITB9Y2F0Y2goZil7fWZvcih2YXIgZD1BUihmdW5jdGlvbihmKXtyZXR1cm4gZj09PSJBTVBfVE9LRU4ifSkuQU1QX1RPS0VOfHxbXSxlPTA7ZTxkLmxlbmd0aDtlKyspaWYoZFtlXT09IiRPUFRfT1VUIilyZXR1cm4hMDtyZXR1cm4gelIuZ2V0RWxlbWVudEJ5SWQoIl9fZ2FPcHRPdXRFeHRlbnNpb24iKT8hMDohMX07dmFyIE1SPSJnY2xpZCBkY2xpZCBnY2xzcmMgd2JyYWlkIGdicmFpZCBnYWRfc291cmNlIGdhZF9jYW1wYWlnbmlkIHV0bV9zb3VyY2UgdXRtX21lZGl1bSB1dG1fY2FtcGFpZ24gdXRtX3Rlcm0gdXRtX2NvbnRlbnQgdXRtX2lkIi5zcGxpdCgiICIpO2Z1bmN0aW9uIE5SKCl7dmFyIGE9Qi5sb2NhdGlvbixiLGM9YT09bnVsbD92b2lkIDA6KGI9YS5zZWFyY2gpPT1udWxsP3ZvaWQgMDpiLnJlcGxhY2UoIj8iLCIiKSxkO2lmKGMpe2Zvcih2YXIgZT1bXSxmPUpqKGMsITApLGc9bShNUiksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWUsbj1mW2xdO2lmKG4pZm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07cSE9PXZvaWQgMCYmZS5wdXNoKHtuYW1lOmwsdmFsdWU6cX0pfX1kPWV9ZWxzZSBkPVtdO3JldHVybiBkfTt2YXIgUFI9W0YuRC5yYSxGLkQua2FdLFFSPVtGLkQucmEsRi5ELmthLEYuRC5tYV07CmZ1bmN0aW9uIFJSKGEpe3ZhciBiLGM9TSg1MDYpJiYhZEkoYSwiY2NkX2dhX2Fkc19pZHNfb3B0X291dCIsITEpLGQ9ISFkSShhLCJnb29nbGVfbmciLCExKSxlPVhvKGM/ZD9RUjpmcDpQUiksZjtmPWRJKGEsRi5ELlVmLE8oYS5NLEYuRC5VZikpfHwhIWRJKGEsImdvb2dsZV9uZyIsITEpO2I9e2hmOmMsRXM6ZCxHbzplLGZmOmYsTGc6ISFkSShhLCJnYTRfYWRzX2xpbmtlZCIsITEpLGJpOkFtKCksR2o6IVZLKCksRnM6YmsoWksoYSkpLERzOiEhUShhLEguSi5iZSksR3M6ISFRKGEsSC5KLlRlKSx1czohIU8oYS5NLEYuRC5ObCksS3M6ISFRKGEsSC5KLmVqKSx4ZzpPKGEuTSxGLkQuU2MpLG5yOk8oYS5NLEYuRC5TYyx2b2lkIDAsNCksSHM6ISFRKGEsSC5KLkZjKX07VihhLEguSi5jaixiLmZmKTtWKGEsSC5KLmJqLFNSKGIpKTtiLmhmJiYhYi5mZiYmYi5MZyYmU1IoYikmJlUoYSwiXyZpYnQiLCIxIik7U1IoYikmJmIuR28mJihiLmhmP2IueGchPT0hMXx8Yi5MZzoxKSYmVihhLApILkoucm4sITApO2IuRXMmJiFiLmJpJiZVKGEsRi5ELkxlLDEpOyhiLmhmP2IueGc6Yi5ucik9PT0hMSYmVShhLCJfJm5ncyIsIjEiKTtWKGEsSC5KLmhkLFRSKGIpJiYoYi5Hc3x8Yi51cykpO1YoYSxILkoucmcsVFIoYikmJmIuS3MmJiFiLmJpKX1mdW5jdGlvbiBTUihhKXtyZXR1cm4gYS5oZj8oYS5MZ3x8YS5mZikmJiFhLmJpJiYhYS5HajphLmZmJiZhLnhnIT09ITEmJiFhLkdqJiYhYS5iaX1mdW5jdGlvbiBUUihhKXtpZihhLkhzKXJldHVybiExO2lmKGEuaGYpe2lmKCFhLmZmJiYhYS5MZylyZXR1cm4hMX1lbHNlIGlmKCFhLmZmKXJldHVybiExO3JldHVybiBhLkZzfHxhLkRzfHxhLkdqfHwoYS5oZj9hLnhnPT09ITEmJiFhLkxnOmEueGc9PT0hMSl8fCFhLkdvPyExOiEwfTt2YXIgYlM9ZnVuY3Rpb24oYSl7dmFyIGI9ITA7Yj1iPT09dm9pZCAwPyExOmI7aWYoTSg0MjUpJiYhKHBsKCl8fGImJlEoYSxILkouZGopfHxhLmV2ZW50TmFtZSE9PUYuRC53YXx8UShhLEguSi5GYykpKXt2YXIgYz17fSxkPXt9LGU9e2V2ZW50TWV0YWRhdGE6bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxhLk0uZXZlbnRNZXRhZGF0YSwoY1tILkouRmNdPSEwLGMpLGI/e306KGRbSC5KLkRjXT1YLlYuS2EsZCkpLG5vR3RtRXZlbnQ6ITB9LGY9c0MoYS50YXJnZXQuZGVzdGluYXRpb25JZCwic3RydWN0dXJlZF9kYXRhIixhLk0uRWEpO21EKGYsYS5NLmV2ZW50SWQsZSl9fTtmdW5jdGlvbiBoUyhhKXt9ZnVuY3Rpb24gaVMoYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O3JldHVybiBifQpmdW5jdGlvbiBqUyhhLGIpe312YXIga1M9Si5VLnFsLGxTPUouVS5ybDtmdW5jdGlvbiBtUyhhLGIpe3ZhciBjPXRrKCk7YyYmYy5pbmRleE9mKGIpPi0xJiYoYVtILkouQ2NdPSEwKX12YXIgblM9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7ZCsrKWEuaGFzT3duUHJvcGVydHkoYltkXSkmJihhW1N0cmluZyhiW2RdKV09YyhhW1N0cmluZyhiW2RdKV0pKX07ZnVuY3Rpb24gb1MoYSxiLGMpe3ZhciBkPXRoaXM7aWYoIWxoKGEpfHwhZmgoYil8fCFmaChjKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiT2JqZWN0fHVuZGVmaW5lZCIsIk9iamVjdHx1bmRlZmluZWQiXSxhcmd1bWVudHMpO3ZhciBlPWI/VGQoYix0aGlzLlQsMSk6e307VEYoW2Z1bmN0aW9uKCl7cmV0dXJuIEwoZCwiY29uZmlndXJlX2dvb2dsZV90YWdzIixhLGUpfV0pO3ZhciBmPWM/VGQoYyk6e30sZz1YRih0aGlzKTtmLm9yaWdpbmF0aW5nRW50aXR5PXRHKGcpO2cucHJpb3JpdHlRdWV1ZSYmKGYucHJpb3JpdHlRdWV1ZT1nLnByaW9yaXR5UXVldWUpO21EKHJDKGEsZSksZy5ldmVudElkLGYpO31vUy5QPSJpbnRlcm5hbC5ndGFnQ29uZmlnIjtmdW5jdGlvbiBwUyhhLGIsYyxkKXt2YXIgZT10aGlzO31wUy5QPSJpbnRlcm5hbC5ndGFnRGVzdGluYXRpb25Db25maWciO3ZhciBxUz1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoZixnKXtmb3IodmFyIGggaW4gZilpZihmLmhhc093blByb3BlcnR5KGgpKXt2YXIgbD1nP2crIi4iK2g6aDtDZChmW2hdKSYmZS5pbmRleE9mKGZbaF0pPT09LTE/KGUucHVzaChmW2hdKSxjKGZbaF0sbCkpOmQucHVzaChsKX1lLnBvcCgpfXZhciBkPVtdLGU9W2FdO2MoYSxiKTtyZXR1cm4gZH07CmZ1bmN0aW9uIHJTKGEsYil7aWYoYXJndW1lbnRzLmxlbmd0aCE9PTEmJmFyZ3VtZW50cy5sZW5ndGghPT0yKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJhbnkiLCJhbnl8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgYz1udWxsLGQ9VGQoYSk7aWYoQ2QoZCkpe2Zvcih2YXIgZT1xUyhkLCIiKSxmPTA7ZjxlLmxlbmd0aDtmKyspTCh0aGlzLCJ3cml0ZV9kYXRhX2xheWVyIixlW2ZdKTtjPXBDKGQpfWVsc2UgaWYodHlwZW9mIGQ9PT0ic3RyaW5nIil7dmFyIGc9VGQoYik7aWYoQ2QoZykpZm9yKHZhciBoPXFTKGcsZCksbD0wO2w8aC5sZW5ndGg7bCsrKUwodGhpcywid3JpdGVfZGF0YV9sYXllciIsaFtsXSk7ZWxzZSBMKHRoaXMsIndyaXRlX2RhdGFfbGF5ZXIiLGQpO2M9cEMoZCxnKX1pZihjKXt2YXIgbj1YRih0aGlzKSxwPXVHKG4pO21EKGMsbi5ldmVudElkLHApO3JldHVybiBVZChjKX19CnJTLnB1YmxpY05hbWU9Imd0YWdTZXQiO2Z1bmN0aW9uIHNTKCl7dmFyIGE9e307cmV0dXJuIGF9O2Z1bmN0aW9uIHRTKGEpe310Uy5QPSJpbnRlcm5hbC5pbml0aWFsaXplU2VydmljZVdvcmtlciI7ZnVuY3Rpb24gdVMoYSxiKXt9dVMucHVibGljTmFtZT0iaW5qZWN0SGlkZGVuSWZyYW1lIjtmdW5jdGlvbiB2UyhhLGIsYyxkLGUpe2lmKCEoKGxoKGEpfHxraChhKSkmJmhoKGIpJiZoaChjKSYmcGgoZCkmJnBoKGUpKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nfE9wYXF1ZVZhbHVlIiwiZnVuY3Rpb24iLCJmdW5jdGlvbiIsImJvb2xlYW58dW5kZWZpbmVkIiwiYm9vbGVhbnx1bmRlZmluZWQiXSxhcmd1bWVudHMpO3ZhciBmPVhGKHRoaXMpLGc9Q0YoKTtkJiZnKDMpO2UmJihnKDEpLGcoMikpO3ZhciBoPWYuZXZlbnRJZCxsPWYuUGIoKSxuPWcodm9pZCAwKTtERnx8KERGPW5ldyBCRik7dmFyIHA9REY7aWYoZm4uTil7dmFyIHE9U3RyaW5nKG4pK2w7cC5IW2hdPXAuSFtoXXx8W107cC5IW2hdLnB1c2gocSk7cC5LW2hdPXAuS1toXXx8W107cC5LW2hdLnB1c2goInAiK2wpfWlmKGQmJmUpdGhyb3cgRXJyb3IoInVzZUlmcmFtZSBhbmQgc3VwcG9ydERvY3VtZW50V3JpdGUgY2Fubm90IGJvdGggYmUgdHJ1ZS4iKTsKTCh0aGlzLCJ1bnNhZmVfaW5qZWN0X2FyYml0cmFyeV9odG1sIixkLGUpO3ZhciByPVRkKGIsdGhpcy5UKSx0PVRkKGMsdGhpcy5UKSx1PVRkKGEsdGhpcy5ULDEpO3dTKHUscix0LCEhZCwhIWUsZik7fQp2YXIgeFM9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIGZ1bmN0aW9uKCl7dHJ5e2lmKGIubGVuZ3RoPjApe3ZhciBlPWIuc2hpZnQoKSxmPXhTKGEsYixjLGQpLGc9ZTtpZihTdHJpbmcoZy5ub2RlTmFtZSkudG9VcHBlckNhc2UoKT09PSJTQ1JJUFQiJiZnLnR5cGU9PT0idGV4dC9ndG1zY3JpcHQiKXt2YXIgaD1nLnRleHR8fGcudGV4dENvbnRlbnR8fGcuaW5uZXJIVE1MfHwiIixsPWcuZ2V0QXR0cmlidXRlKCJkYXRhLWd0bXNyYyIpLG49Zy5jaGFyc2V0fHwiIjtsP1VjKGwsZixkLHthc3luYzohMSxpZDplLmlkLHRleHQ6aCxjaGFyc2V0Om59LGEpOihnPUIuY3JlYXRlRWxlbWVudCgic2NyaXB0IiksZy5hc3luYz0hMSxnLnR5cGU9InRleHQvamF2YXNjcmlwdCIsZy5pZD1lLmlkLGcudGV4dD1oLGcuY2hhcnNldD1uLGYmJihnLm9ubG9hZD1mKSxhLmluc2VydEJlZm9yZShnLG51bGwpKTtsfHxmKCl9ZWxzZSBpZihlLmlubmVySFRNTCYmZS5pbm5lckhUTUwudG9Mb3dlckNhc2UoKS5pbmRleE9mKCI8c2NyaXB0Iik+PQowKXtmb3IodmFyIHA9W107ZS5maXJzdENoaWxkOylwLnB1c2goZS5yZW1vdmVDaGlsZChlLmZpcnN0Q2hpbGQpKTthLmluc2VydEJlZm9yZShlLG51bGwpO3hTKGUscCxmLGQpKCl9ZWxzZSBhLmluc2VydEJlZm9yZShlLG51bGwpLGYoKX1lbHNlIGMoKX1jYXRjaChxKXtkKCl9fX0sd1M9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2lmKEIuYm9keSl7dmFyIGc9U2soYSxiLGMpO2E9Zy53cztiPWcub25TdWNjZXNzO2lmKGQpe31lbHNlIGU/CnlTKGEsYixjKTp4UyhCLmJvZHksZ2QoYSksYixjKSgpfWVsc2UgQS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7d1MoYSxiLGMsZCxlLGYpfSl9O3ZTLlA9ImludGVybmFsLmluamVjdEh0bWwiO3ZhciB6Uz1mdW5jdGlvbihhLGIsYyxkLGUsZil7Zj9lW2ZdPyhlW2ZdWzBdLnB1c2goYyksZVtmXVsxXS5wdXNoKGQpKTooZVtmXT1bW2NdLFtkXV0sVWMoYSxmdW5jdGlvbigpe2Zvcih2YXIgZz1lW2ZdWzBdLGg9MDtoPGcubGVuZ3RoO2grKyliZChnW2hdKTtnLnB1c2g9ZnVuY3Rpb24obCl7YmQobCk7cmV0dXJuIDB9fSxmdW5jdGlvbigpe2Zvcih2YXIgZz1lW2ZdWzFdLGg9MDtoPGcubGVuZ3RoO2grKyliZChnW2hdKTtlW2ZdPW51bGx9LGIpKTpVYyhhLGMsZCxiKX07dmFyIEFTPXtkbDoxLGlkOjF9OwpmdW5jdGlvbiBCUyhhLGIsYyxkKXt2YXIgZT12b2lkIDAsZj12b2lkIDA7aWYoIWxoKGEpJiYhZWgoYSl8fCFpaChiKXx8IWloKGMpfHwhbWgoZCkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZ3xPYmplY3QiLCJmdW5jdGlvbnx1bmRlZmluZWQiLCJmdW5jdGlvbnx1bmRlZmluZWQiLCJzdHJpbmd8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZih6YihhKSlmPWE7ZWxzZXtlPVRkKGEpO3ZhciBnPXt9LGg7Zm9yKGggaW4gZSlpZihlLmhhc093blByb3BlcnR5KGgpKXt2YXIgbD1lW2hdO2g9aC50b0xvd2VyQ2FzZSgpO2lmKGg9PT0ic3JjIilmPVN0cmluZyhsKTtlbHNlIGlmKFNiKGgsImRhdGEtIil8fEFTLmhhc093blByb3BlcnR5KGgpKWdbaF09bH1lPWc7ZS5hc3luYz0hMH1pZighZil0aHJvdyBFcnJvcih0aGlzLmdldE5hbWUoKSsiOiBzY3JpcHQgc3JjIGF0dHJpYnV0ZSBpcyByZXF1aXJlZC4iKTsKTCh0aGlzLCJpbmplY3Rfc2NyaXB0IixmKTt2YXIgbj10aGlzLlQ7elMoZixlLGZ1bmN0aW9uKCl7YiYmYi5OYyhuKX0sZnVuY3Rpb24oKXtjJiZjLk5jKG4pfSxhbCgxNSxmdW5jdGlvbigpe3JldHVybnt9fSksZCk7fUJTLnB1YmxpY05hbWU9ImluamVjdFNjcmlwdCI7ZnVuY3Rpb24gQ1MoKXt2YXIgYT12bSxiPSExO2I9ISFhLkhbIjUiXTtyZXR1cm4gYn1DUy5QPSJpbnRlcm5hbC5pc0F1dG9QaWlFbGlnaWJsZSI7ZnVuY3Rpb24gRFMoYSl7dmFyIGI9ITA7cmV0dXJuIGJ9RFMucHVibGljTmFtZT0iaXNDb25zZW50R3JhbnRlZCI7ZnVuY3Rpb24gRVMoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9RVMuUD0iaW50ZXJuYWwuaXNEZWJ1Z01vZGUiO2Z1bmN0aW9uIEZTKGEpe3ZhciBiPSExO3JldHVybiBifUZTLlA9ImludGVybmFsLmlzRGVzdGluYXRpb25Jbml0aWFsaXplZCI7ZnVuY3Rpb24gR1MoKXtyZXR1cm4gQm0oKX1HUy5QPSJpbnRlcm5hbC5pc0RtYVJlZ2lvbiI7ZnVuY3Rpb24gSFMoKXtyZXR1cm4gVUIoKX1IUy5QPSJpbnRlcm5hbC5pc0RvbVJlYWR5IjtmdW5jdGlvbiBJUyhhKXt2YXIgYj0hMTtyZXR1cm4gYn1JUy5QPSJpbnRlcm5hbC5pc0VudGl0eUluZnJhc3RydWN0dXJlIjtmdW5jdGlvbiBKUyhhKXt2YXIgYj0hMTtpZighcWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIm51bWJlciJdLFthXSk7Yj1NKGEpO3JldHVybiBifUpTLlA9ImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiO2Z1bmN0aW9uIEtTKCl7dmFyIGE9ITE7cmV0dXJuIGF9S1MuUD0iaW50ZXJuYWwuaXNGcGZlIjtmdW5jdGlvbiBMUygpe3ZhciBhPSExO3JldHVybiBhfUxTLlA9ImludGVybmFsLmlzR2NwQnJvd3NlciI7ZnVuY3Rpb24gTVMoKXt2YXIgYT0hMTtyZXR1cm4gYX1NUy5QPSJpbnRlcm5hbC5pc0xhbmRpbmdQYWdlIjtmdW5jdGlvbiBOUygpe3ZhciBhPSExO3JldHVybiBhfU5TLlA9ImludGVybmFsLmlzT2d0IjtmdW5jdGlvbiBPUygpe3ZhciBhO3JldHVybiBhfU9TLlA9ImludGVybmFsLmlzU2FmYXJpUGNtRWxpZ2libGVCcm93c2VyIjtmdW5jdGlvbiBQUygpe3ZhciBhPVFoKGZ1bmN0aW9uKGIpe1hGKHRoaXMpLmxvZygiZXJyb3IiLGIpfSk7YS5wdWJsaWNOYW1lPSJKU09OIjtyZXR1cm4gYX07ZnVuY3Rpb24gUVMoYSl7dmFyIGI9dm9pZCAwO2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtiPVJqKGEpO3JldHVybiBVZChiKX1RUy5QPSJpbnRlcm5hbC5sZWdhY3lQYXJzZVVybCI7ZnVuY3Rpb24gUlMoKXtyZXR1cm4hMX0KdmFyIFNTPXtnZXRJdGVtOmZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9LHNldEl0ZW06ZnVuY3Rpb24oYSxiKXtyZXR1cm4hMX0scmVtb3ZlSXRlbTpmdW5jdGlvbihhKXt9fTtmdW5jdGlvbiBUUygpe3RyeXtMKHRoaXMsImxvZ2dpbmciKX1jYXRjaChkKXtyZXR1cm59aWYoIWNvbnNvbGUpcmV0dXJuO2Zvcih2YXIgYT1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCksYj0wO2I8YS5sZW5ndGg7YisrKWFbYl09VGQoYVtiXSx0aGlzLlQpO3ZhciBjPVhGKHRoaXMpO2NvbnNvbGUubG9nLmFwcGx5KGNvbnNvbGUsYSk7dEcoYyk7fVRTLnB1YmxpY05hbWU9ImxvZ1RvQ29uc29sZSI7ZnVuY3Rpb24gVVMoYSxiKXt9VVMuUD0iaW50ZXJuYWwubWVyZ2VSZW1vdGVDb25maWciO2Z1bmN0aW9uIFZTKGEsYixjKXtjPWM9PT12b2lkIDA/ITA6Yzt2YXIgZD1bXTtpZighbGgoYSl8fCFsaChiKXx8IW9oKGMpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciLCJib29sZWFufHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7ZD1jcShiLGEsISFjKTtyZXR1cm4gVWQoZCl9VlMuUD0iaW50ZXJuYWwucGFyc2VDb29raWVWYWx1ZXNGcm9tU3RyaW5nIjtmdW5jdGlvbiBXUyhhKXt2YXIgYj12b2lkIDA7aWYodHlwZW9mIGEhPT0ic3RyaW5nIilyZXR1cm47YSYmU2IoYSwiLy8iKSYmKGE9Qi5sb2NhdGlvbi5wcm90b2NvbCthKTtpZih0eXBlb2YgVVJMPT09ImZ1bmN0aW9uIil7dmFyIGM7YTp7dmFyIGQ7dHJ5e2Q9bmV3IFVSTChhKX1jYXRjaCh4KXtjPXZvaWQgMDticmVhayBhfWZvcih2YXIgZT17fSxmPUFycmF5LmZyb20oZC5zZWFyY2hQYXJhbXMpLGc9MDtnPGYubGVuZ3RoO2crKyl7dmFyIGg9ZltnXVswXSxsPWZbZ11bMV07ZS5oYXNPd25Qcm9wZXJ0eShoKT90eXBlb2YgZVtoXT09PSJzdHJpbmciP2VbaF09W2VbaF0sbF06ZVtoXS5wdXNoKGwpOmVbaF09bH1jPXtocmVmOmQuaHJlZixvcmlnaW46ZC5vcmlnaW4scHJvdG9jb2w6ZC5wcm90b2NvbCx1c2VybmFtZTpkLnVzZXJuYW1lLHBhc3N3b3JkOmQucGFzc3dvcmQsaG9zdDpkLmhvc3QsaG9zdG5hbWU6ZC5ob3N0bmFtZSwKcG9ydDpkLnBvcnQscGF0aG5hbWU6ZC5wYXRobmFtZSxzZWFyY2g6ZC5zZWFyY2gsc2VhcmNoUGFyYW1zOmUsaGFzaDpkLmhhc2h9fXJldHVybiBVZChjKX12YXIgbjt0cnl7bj1SaihhKX1jYXRjaCh4KXtyZXR1cm59aWYoIW4ucHJvdG9jb2x8fCFuLmhvc3QpcmV0dXJuO3ZhciBwPXt9O2lmKG4uc2VhcmNoKWZvcih2YXIgcT1uLnNlYXJjaC5yZXBsYWNlKCI/IiwiIikuc3BsaXQoIiYiKSxyPTA7cjxxLmxlbmd0aDtyKyspe3ZhciB0PXFbcl0uc3BsaXQoIj0iKSx1PXRbMF0sdj1Laih0LnNwbGljZSgxKS5qb2luKCI9IikpfHwiIjt2PXYucmVwbGFjZSgvXCsvZywiICIpO3AuaGFzT3duUHJvcGVydHkodSk/dHlwZW9mIHBbdV09PT0ic3RyaW5nIj9wW3VdPVtwW3VdLHZdOnBbdV0ucHVzaCh2KTpwW3VdPXZ9bi5zZWFyY2hQYXJhbXM9cDtuLm9yaWdpbj1uLnByb3RvY29sKyIvLyIrbi5ob3N0O24udXNlcm5hbWU9IiI7bi5wYXNzd29yZD0iIjtiPVVkKG4pOwpyZXR1cm4gYn1XUy5wdWJsaWNOYW1lPSJwYXJzZVVybCI7ZnVuY3Rpb24gWFMoYSl7fVhTLlA9ImludGVybmFsLnByb2Nlc3NBc05ld0V2ZW50IjtmdW5jdGlvbiBZUyhhLGIsYyl7dmFyIGQ7aWYoIWVoKGEpfHwhaGgoYikmJiFnaChiKXx8IXFoKGMpJiYhZ2goYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsImZ1bmN0aW9ufHVuZGVmaW5lZCIsIm51bWJlcnx1bmRlZmluZWQiXSxhcmd1bWVudHMpO3ZhciBlPVRkKGEsdGhpcy5ULDEpLGY9VGQoYix0aGlzLlQsMSk7TCh0aGlzLCJ1cGRhdGVfZGF0YV9sYXllciIsZSxmLGMpO2Q9Zj9pRShlLGYsYyk6dUUoZSk7cmV0dXJuIGR9WVMuUD0iaW50ZXJuYWwucHVzaFRvRGF0YUxheWVyIjtmdW5jdGlvbiBaUyhhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyksYz0hMTtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7Zm9yKHZhciBkPVt0aGlzLGFdLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlkLnB1c2goVGQoZi52YWx1ZSx0aGlzLlQsMSkpO3RyeXtMLmFwcGx5KG51bGwsZCksYz0hMH1jYXRjaChnKXtyZXR1cm4hMX1yZXR1cm4gY31aUy5wdWJsaWNOYW1lPSJxdWVyeVBlcm1pc3Npb24iO2Z1bmN0aW9uICRTKGEpe3ZhciBiPXRoaXM7fSRTLlA9ImludGVybmFsLnF1ZXVlQWRzVHJhbnNtaXNzaW9uIjtmdW5jdGlvbiBhVChhKXt2YXIgYj12b2lkIDA7cmV0dXJuIGJ9YVQucHVibGljTmFtZT0icmVhZEFuYWx5dGljc1N0b3JhZ2UiO2Z1bmN0aW9uIGJUKCl7dmFyIGE9IiI7cmV0dXJuIGF9YlQucHVibGljTmFtZT0icmVhZENoYXJhY3RlclNldCI7ZnVuY3Rpb24gY1QoKXtyZXR1cm4gRSgxOSl9Y1QuUD0iaW50ZXJuYWwucmVhZERhdGFMYXllck5hbWUiO2Z1bmN0aW9uIGRUKCl7dmFyIGE9IiI7cmV0dXJuIGF9ZFQucHVibGljTmFtZT0icmVhZFRpdGxlIjtmdW5jdGlvbiBlVChhLGIpe3ZhciBjPXRoaXM7fWVULlA9ImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siO2Z1bmN0aW9uIGZUKGEsYil7cmV0dXJuITB9ZlQuUD0iaW50ZXJuYWwucmVnaXN0ZXJEZXN0aW5hdGlvbiI7dmFyIGdUPVsiZXZlbnQiXTtmdW5jdGlvbiBoVChhLGIsYyl7fWhULlA9ImludGVybmFsLnJlZ2lzdGVyR3RhZ0NvbW1hbmRMaXN0ZW5lciI7ZnVuY3Rpb24gaVQoYSxiKXt2YXIgYz0hMTtyZXR1cm4gY31pVC5QPSJpbnRlcm5hbC5yZW1vdmVEYXRhTGF5ZXJFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBqVChhLGIpe30KalQuUD0iaW50ZXJuYWwucmVtb3ZlRm9ybURhdGEiO2Z1bmN0aW9uIGtUKCl7fWtULnB1YmxpY05hbWU9InJlc2V0RGF0YUxheWVyIjtmdW5jdGlvbiBsVChhLGIsYyl7dmFyIGQ9dm9pZCAwO3JldHVybiBkfWxULlA9ImludGVybmFsLnNjcnViVXJsUGFyYW1zIjtmdW5jdGlvbiBtVChhKXt9bVQuUD0iaW50ZXJuYWwuc2VuZEFkc0hpdCI7ZnVuY3Rpb24gblQoYSxiLGMsZCl7aWYoYXJndW1lbnRzLmxlbmd0aDwyfHwhZmgoZCl8fCFmaChjKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiYW55IiwiYW55IiwiT2JqZWN0fHVuZGVmaW5lZCIsIk9iamVjdHx1bmRlZmluZWQiXSxhcmd1bWVudHMpO3ZhciBlPWM/VGQoYyx0aGlzLlQsMSk6e30sZj1UZChhKSxnPUFycmF5LmlzQXJyYXkoZik/ZjpbZl07Yj1TdHJpbmcoYik7dmFyIGg9ZD9UZChkKTp7fSxsPVhGKHRoaXMpO2gub3JpZ2luYXRpbmdFbnRpdHk9dEcobCk7bC5wcmlvcml0eVF1ZXVlJiYoaC5wcmlvcml0eVF1ZXVlPWwucHJpb3JpdHlRdWV1ZSk7Zm9yKHZhciBuPTA7bjxnLmxlbmd0aDtuKyspe3ZhciBwPWdbbl07aWYodHlwZW9mIHA9PT0ic3RyaW5nIil7dmFyIHE9e307RWQoZSxxKTt2YXIgcj17fTtFZChoLHIpO3ZhciB0PXNDKHAsYixxKTttRCh0LApoLmV2ZW50SWR8fGwuZXZlbnRJZCxyKX19fW5ULlA9ImludGVybmFsLnNlbmRHdGFnRXZlbnQiO2Z1bmN0aW9uIG9UKGEsYixjKXt9b1QucHVibGljTmFtZT0ic2VuZFBpeGVsIjtmdW5jdGlvbiBwVChhLGIpe31wVC5QPSJpbnRlcm5hbC5zZXRBbmNob3JIcmVmIjtmdW5jdGlvbiBxVChhKXt9cVQuUD0iaW50ZXJuYWwuc2V0Q29udGFpbmVyQ29uc2VudERlZmF1bHRzIjtmdW5jdGlvbiByVChhLGIsYyxkKXt2YXIgZT10aGlzO2Q9ZD09PXZvaWQgMD8hMDpkO3ZhciBmPSExOwpyZXR1cm4gZn1yVC5wdWJsaWNOYW1lPSJzZXRDb29raWUiO2Z1bmN0aW9uIHNUKGEpe31zVC5QPSJpbnRlcm5hbC5zZXRDb3JlUGxhdGZvcm1TZXJ2aWNlcyI7ZnVuY3Rpb24gdFQoYSxiKXt9dFQuUD0iaW50ZXJuYWwuc2V0RGF0YUxheWVyVmFsdWUiO2Z1bmN0aW9uIHVUKGEpe2lmKCFlaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTtmb3IodmFyIGI9YS5GYSgpLGM9bShiKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtlIT09Ri5ELm5jJiZlIT09Ri5ELllnJiZMKHRoaXMsImFjY2Vzc19jb25zZW50IixlLCJ3cml0ZSIpfXZhciBmPVhGKHRoaXMpLGc9Zi5ldmVudElkLGg9dUcoZiksbD1UZChhKTttRChxQygiY29uc2VudCIsImRlZmF1bHQiLGwpLGcsaCk7fXVULnB1YmxpY05hbWU9InNldERlZmF1bHRDb25zZW50U3RhdGUiO2Z1bmN0aW9uIHZUKGEsYil7fXZULlA9ImludGVybmFsLnNldERlbGVnYXRlZENvbnNlbnRUeXBlIjtmdW5jdGlvbiB3VChhLGIpe313VC5QPSJpbnRlcm5hbC5zZXRGb3JtQWN0aW9uIjtmdW5jdGlvbiB4VChhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7fXhULlA9ImludGVybmFsLnNldEluQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiB5VChhLGIsYyl7aWYoIWxoKGEpfHwhcGgoYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSIsImJvb2xlYW58dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtMKHRoaXMsImFjY2Vzc19nbG9iYWxzIiwicmVhZHdyaXRlIixhKTt2YXIgZD1hLnNwbGl0KCIuIiksZT1VYihBLGQsW0EsQl0pLGY9ZC5wb3AoKTtpZihlJiYoZVtTdHJpbmcoZildPT09dm9pZCAwfHxjKSlyZXR1cm4gZVtTdHJpbmcoZildPVRkKGIsdGhpcy5ULDIpLCEwO3JldHVybiExfXlULnB1YmxpY05hbWU9InNldEluV2luZG93IjtmdW5jdGlvbiB6VChhLGIsYyl7fXpULlA9ImludGVybmFsLnNldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciI7ZnVuY3Rpb24gQVQoYSxiLGMpe31BVC5QPSJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiO2Z1bmN0aW9uIEJUKGEsYil7fQpCVC5QPSJpbnRlcm5hbC5zZXRUcmFuc21pc3Npb25Nb2RlIjtmdW5jdGlvbiBDVChhLGIsYyxkKXt2YXIgZT10aGlzO31DVC5wdWJsaWNOYW1lPSJzaGEyNTYiO2Z1bmN0aW9uIERUKGEsYixjKXt9CkRULlA9ImludGVybmFsLnNvcnRSZW1vdGVDb25maWdQYXJhbWV0ZXJzIjtmdW5jdGlvbiBFVChhKXt9RVQuUD0iaW50ZXJuYWwuc3RvcmVBZHNCcmFpZExhYmVscyI7ZnVuY3Rpb24gRlQoYSxiKXt2YXIgYz12b2lkIDA7cmV0dXJuIGN9RlQuUD0iaW50ZXJuYWwuc3Vic2NyaWJlVG9Dcm9zc0NvbnRhaW5lckRhdGEiO2Z1bmN0aW9uIEdUKGEpe31HVC5QPSJpbnRlcm5hbC50YXNrU2VuZEFkc0hpdHMiO3ZhciBIVD17Z2V0SXRlbTpmdW5jdGlvbihhKXt2YXIgYj1udWxsO0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYz1YRih0aGlzKS5QYigpLGQ9YWwoNyxmdW5jdGlvbigpe3JldHVybnt9fSk7ZFtjXSYmKGI9ZFtjXS5oYXNPd25Qcm9wZXJ0eSgiZ3RtLiIrYSk/ZFtjXVsiZ3RtLiIrYV06bnVsbCk7cmV0dXJuIGJ9LHNldEl0ZW06ZnVuY3Rpb24oYSxiKXtMKHRoaXMsImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIik7dmFyIGM9WEYodGhpcykuUGIoKSxkPWFsKDcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO2RbY109ZFtjXXx8e307ZFtjXVsiZ3RtLiIrYV09Yjt9LApyZW1vdmVJdGVtOmZ1bmN0aW9uKGEpe0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYj1YRih0aGlzKS5QYigpLGM9YWwoNyxmdW5jdGlvbigpe3JldHVybnt9fSk7aWYoIWNbYl18fCFjW2JdLmhhc093blByb3BlcnR5KCJndG0uIithKSlyZXR1cm47ZGVsZXRlIGNbYl1bImd0bS4iK2FdO30sY2xlYXI6ZnVuY3Rpb24oKXtMKHRoaXMsImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIik7dmFyIGE9WEYodGhpcykuUGIoKTtkZWxldGUgYWwoNyxmdW5jdGlvbigpe3JldHVybnt9fSlbYV07fSwKcHVibGljTmFtZToidGVtcGxhdGVTdG9yYWdlIn07ZnVuY3Rpb24gSVQoYSxiKXt2YXIgYz0hMTtpZigha2goYSl8fCFsaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT3BhcXVlVmFsdWUiLCJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBkPWEuZ2V0VmFsdWUoKTtpZighKGQgaW5zdGFuY2VvZiBSZWdFeHApKXJldHVybiExO2M9ZC50ZXN0KGIpO3JldHVybiBjfUlULlA9ImludGVybmFsLnRlc3RSZWdleCI7ZnVuY3Rpb24gSlQoYSl7dmFyIGI7cmV0dXJuIGJ9O2Z1bmN0aW9uIEtUKGEsYil7fUtULlA9ImludGVybmFsLnRyYWNrVXNhZ2UiO2Z1bmN0aW9uIExUKGEsYil7dmFyIGM7cmV0dXJuIGN9TFQuUD0iaW50ZXJuYWwudW5zdWJzY3JpYmVGcm9tQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBNVChhKXtpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCJdLGFyZ3VtZW50cyk7dmFyIGI9VGQoYSksYztmb3IoYyBpbiBiKWIuaGFzT3duUHJvcGVydHkoYykmJkwodGhpcywiYWNjZXNzX2NvbnNlbnQiLGMsIndyaXRlIik7dmFyIGQ9WEYodGhpcyksZT1kLmV2ZW50SWQsZj11RyhkKTttRChxQygiY29uc2VudCIsInVwZGF0ZSIsYiksZSxmKTt9TVQucHVibGljTmFtZT0idXBkYXRlQ29uc2VudFN0YXRlIjtmdW5jdGlvbiBOVChhKXt2YXIgYj0hMTtyZXR1cm4gYn1OVC5QPSJpbnRlcm5hbC51c2VyRGF0YU5lZWRzRW5jcnlwdGlvbiI7dmFyIE9UPWZ1bmN0aW9uKCl7dGhpcy5IPW5ldyBhaX0sUVQ9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oYSl7dmFyIGI7dmFyIGM9UFQuSDtpZihjLmNvbnRhaW5zKGEpKWI9Yy5nZXQoYSx0aGlzKTtlbHNle3ZhciBkO2lmKGQ9Yy5ILmhhc093blByb3BlcnR5KGEpKXt2YXIgZT10aGlzLlQueGIoKTtpZihlKXt2YXIgZj0hMSxnPWUuUGIoKTtpZihnKXtCaChnKXx8KGY9ITApO31kPWZ9ZWxzZSBkPSEwfWlmKGQpe3ZhciBoPWMuSC5oYXNPd25Qcm9wZXJ0eShhKT9jLkhbYV06dm9pZCAwO2I9aH1lbHNlIHRocm93IEVycm9yKGErIiBpcyBub3QgYSB2YWxpZCBBUEkgbmFtZS4iKTt9cmV0dXJuIGJ9fSxQVDtmdW5jdGlvbiBSVChhLGIsYyl7UFR8fChQVD1uZXcgT1QpO1BULkguYWRkKGEsYixjKX1mdW5jdGlvbiBTVChhLGIpe1BUfHwoUFQ9bmV3IE9UKTt2YXIgYz1QVC5IO2lmKGMuSC5oYXNPd25Qcm9wZXJ0eShhKSl0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBhZGQgYSBwcml2YXRlIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZihjLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIHByaXZhdGUgZnVuY3Rpb24gd2l0aCBhbiBleGlzdGluZyBBUEkgbmFtZTogIithKyIuIik7Yy5IW2FdPXliKGIpP3RoKGEsYik6dWgoYSxiKX07ZnVuY3Rpb24gVFQoYSxiKXtmdW5jdGlvbiBjKGQpe2lmKCFlaChkKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgZT1UZChkLHRoaXMuVCwxKS5yYigpO2EoZSl9Yy5QPSJpbnRlcm5hbC4iK2I7cmV0dXJuIGN9O2Z1bmN0aW9uIFVUKCl7dmFyIGE9ZnVuY3Rpb24oYyl7cmV0dXJuIHZvaWQgU1QoYy5QLGMpfSxiPWZ1bmN0aW9uKGMpe3JldHVybiB2b2lkIFJUKGMucHVibGljTmFtZSxjKX07YihSRik7YihZRik7YihSRyk7YihURyk7YihVRyk7YihkSCk7YihmSCk7YihoSSk7YihQUygpKTtiKGpJKTtiKE9PKTtiKFBPKTtiKGxQKTtiKG1QKTtiKG5QKTtiKHVQKTtiKHZQKTtiKHJTKTtiKHVTKTtiKEJTKTtiKERTKTtiKFRTKTtiKFdTKTtiKFpTKTtiKGFUKTtiKGJUKTtiKGRUKTtiKG9UKTtiKHJUKTtiKHVUKTtiKHlUKTtiKENUKTtiKEhUKTtiKE1UKTtSVCgiTWF0aCIsemgoKSk7UlQoIk9iamVjdCIsWmgpO1JUKCJUZXN0SGVscGVyIixjaSgpKTtSVCgiYXNzZXJ0QXBpIix3aCk7UlQoImFzc2VydFRoYXQiLHhoKTtSVCgiZGVjb2RlVXJpIixDaCk7UlQoImRlY29kZVVyaUNvbXBvbmVudCIsRGgpO1JUKCJlbmNvZGVVcmkiLEVoKTtSVCgiZW5jb2RlVXJpQ29tcG9uZW50IixGaCk7UlQoImZhaWwiLApMaCk7UlQoImdlbmVyYXRlUmFuZG9tIixOaCk7UlQoImdldFRpbWVzdGFtcCIsT2gpO1JUKCJnZXRUaW1lc3RhbXBNaWxsaXMiLE9oKTtSVCgiZ2V0VHlwZSIsUGgpO1JUKCJtYWtlSW50ZWdlciIsUmgpO1JUKCJtYWtlTnVtYmVyIixTaCk7UlQoIm1ha2VTdHJpbmciLFRoKTtSVCgibWFrZVRhYmxlTWFwIixVaCk7UlQoIm1vY2siLFhoKTtSVCgibW9ja09iamVjdCIsWWgpO1JUKCJmcm9tQmFzZTY0IixITywhKCJhdG9iImluIEEpKTtSVCgibG9jYWxTdG9yYWdlIixTUywhUlMoKSk7UlQoInRvQmFzZTY0IixKVCwhKCJidG9hImluIEEpKTthKFFGKTthKFVGKTthKG5HKTthKHNHKTthKElHKTthKFBHKTthKFNHKTthKFZHKTthKFdHKTthKFpHKTthKCRHKTthKGFIKTthKGJIKTthKGNIKTthKGVIKTthKGdIKTthKGdJKTthKGlJKTthKGtJKTthKGxJKTthKG1JKTthKG5JKTthKG9JKTthKGZKKTthKG1KKTthKHRKKTthKHVKKTthKEFKKTthKEZKKTthKEtKKTthKFJKKTthKFdKKTthKGdLKTsKYShpSyk7YSh2Syk7YSh3Syk7YSh4Syk7YShGTyk7YShHTyk7YShJTyk7YShKTyk7YShLTyk7YShMTyk7YShNTyk7YShOTyk7YShRTyk7YShSTyk7YShTTyk7YShUTyk7YShVTyk7YShWTyk7YShXTyk7YShYTyk7YShZTyk7YShaTyk7YSgkTyk7YShhUCk7YShiUCk7YShjUCk7YShkUCk7YShlUCk7YShmUCk7YShnUCk7YShoUCk7YShpUCk7YShqUCk7YShrUCk7YShvUCk7YShwUCk7YShxUCk7YShyUCk7YShzUCk7YSh0UCk7YSh3UCk7YShvUyk7YShwUyk7YSh0Uyk7YSh2Uyk7YShDUyk7YShFUyk7YShGUyk7YShHUyk7YShIUyk7YShJUyk7YShKUyk7YShLUyk7YShMUyk7YShNUyk7YShOUyk7YShPUyk7YShRUyk7YShHRyk7YShVUyk7YShWUyk7YShYUyk7YShZUyk7YSgkUyk7YShjVCk7YShlVCk7YShmVCk7YShoVCk7YShpVCk7YShqVCk7YShsVCk7YShtVCk7YShuVCk7YShwVCk7YShxVCk7YShzVCk7YSh0VCk7YSh2VCk7YSh3VCk7YSh4VCk7YSh6VCk7YShBVCk7YShCVCk7YShEVCk7CmEoRVQpO2EoRlQpO2EoR1QpO2EoSVQpO2EoS1QpO2EoTFQpO2EoTlQpO1NUKCJpbnRlcm5hbC5JZnJhbWluZ1N0YXRlU2NoZW1hIixzUygpKTtTVCgiaW50ZXJuYWwucXVpY2tIYXNoIixNaCk7YShUVChNRiwidGFza1NldEFkc1RyYW5zbWlzc2lvblR5cGUiKSksYShUVChQRiwidGFza1NldFVuaXZlcnNhbFBhcmFtcyIpKTthKFRUKExGLCJ0YXNrQWRkQWRzQ2xpY2tJZHMiKSk7UFR8fChQVD1uZXcgT1QpO3JldHVybiBRVCgpfTt2YXIgSkY7ZnVuY3Rpb24gVlQoKXtKRi5zZChmdW5jdGlvbihhLGIsYyl7bGooKTt2YXIgZD1qajtkLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRT1kLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRXx8MDtkLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRSsrO3RyeXtyZXR1cm4gYS5hcHBseShiLGMpfWZpbmFsbHl7bGooKSxqai5ILlNBTkRCT1hFRF9KU19TRU1BUEhPUkUtLX19KX1mdW5jdGlvbiBXVChhKXtpZihhJiZhLmxlbmd0aClmb3IodmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pLGM9MDtjPGEubGVuZ3RoO2MrKyl7dmFyIGQ9YVtjXS5yZXBsYWNlKC9eXyovLCIiKTtiW2RdPVsic2FuZGJveGVkU2NyaXB0cyJdfX0KZnVuY3Rpb24gWFQoYSl7aWYoYSl7dmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO0diKGEsZnVuY3Rpb24oYyxkKXtmb3IodmFyIGU9MDtlPGQubGVuZ3RoO2UrKyl7dmFyIGY9ZFtlXS5yZXBsYWNlKC9eXyovLCIiKTtiW2ZdPWJbZl18fFtdO2JbZl0ucHVzaChjKX19KX19O2Z1bmN0aW9uIFpUKGEpe21EKHBDKCJkZXZlbG9wZXJfaWQuIithLCEwKSwwLHt9KX07ZnVuY3Rpb24gJFQoYSxiKXtyZXR1cm4gRWQoYSxifHxudWxsKX1mdW5jdGlvbiBZKGEpe3JldHVybiB3aW5kb3cuZW5jb2RlVVJJQ29tcG9uZW50KGEpfWZ1bmN0aW9uIGFVKGEpe1pjKGEsdm9pZCAwLHZvaWQgMCl9ZnVuY3Rpb24gYlUoYSl7dmFyIGI9WyJ2ZWludGVyYWN0aXZlLmNvbSIsInZlLWludGVyYWN0aXZlLmNuIl07aWYoIWEpcmV0dXJuITE7dmFyIGM9TGooUmooYSksImhvc3QiKTtpZighYylyZXR1cm4hMTtmb3IodmFyIGQ9MDtiJiZkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXSYmYltkXS50b0xvd2VyQ2FzZSgpO2lmKGUpe3ZhciBmPWMubGVuZ3RoLWUubGVuZ3RoO2Y+MCYmZS5jaGFyQXQoMCkhPT0iLiImJihmLS0sZT0iLiIrZSk7aWYoZj49MCYmYy5pbmRleE9mKGUsZik9PT1mKXJldHVybiEwfX1yZXR1cm4hMX0KZnVuY3Rpb24gY1UoYSxiLGMpe2Zvcih2YXIgZD17fSxlPSExLGY9MDthJiZmPGEubGVuZ3RoO2YrKylhW2ZdJiZhW2ZdLmhhc093blByb3BlcnR5KGIpJiZhW2ZdLmhhc093blByb3BlcnR5KGMpJiYoZFthW2ZdW2JdXT1hW2ZdW2NdLGU9ITApO3JldHVybiBlP2Q6bnVsbH1mdW5jdGlvbiBkVShhLGIpe3ZhciBjPXt9O2lmKGEpZm9yKHZhciBkIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbZF09YVtkXSk7aWYoYil7dmFyIGU9Y1UoYiwicGFyYW1ldGVyIiwicGFyYW1ldGVyVmFsdWUiKTtlJiYoYz0kVChlLGMpKX1yZXR1cm4gY31mdW5jdGlvbiBlVShhLGIsYyl7cmV0dXJuIGE9PT12b2lkIDB8fGE9PT1jP2I6YX0KZnVuY3Rpb24gZlUoYSxiLGMpe3JldHVybiBVYyhhLGIsYyx2b2lkIDApfWZ1bmN0aW9uIGdVKGEsYil7QVthXT1ifWZ1bmN0aW9uIGhVKGEsYixjKXt2YXIgZD1BO2ImJihkW2FdPT09dm9pZCAwfHxjJiYhZFthXSkmJihkW2FdPWIpO3JldHVybiBkW2FdfXZhciBpVT17fSxqVT1YLlY7dmFyIFo9e3NlY3VyaXR5R3JvdXBzOnt9fTsKClouc2VjdXJpdHlHcm91cHMudXBkYXRlX2RhdGFfbGF5ZXI9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQsZSl7cmV0dXJue21lc3NhZ2U6YyxldmVudENhbGxiYWNrOmQsZXZlbnRUaW1lb3V0OmV9fShmdW5jdGlvbihiKXtaLl9fdXBkYXRlX2RhdGFfbGF5ZXI9YjtaLl9fdXBkYXRlX2RhdGFfbGF5ZXIuTz0idXBkYXRlX2RhdGFfbGF5ZXIiO1ouX191cGRhdGVfZGF0YV9sYXllci5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX191cGRhdGVfZGF0YV9sYXllci5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3VwZGF0ZV9kYXRhX2xheWVyLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX3VwZGF0ZV9kYXRhX2xheWVyWyI1Il09ITE7Wi5fX3VwZGF0ZV9kYXRhX2xheWVyWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihkLGUsZixnKXtpZihmIT09dm9pZCAwJiZ0eXBlb2YgZiE9PSJmdW5jdGlvbiIpdGhyb3cgYyhkLAp7fSwiZXZlbnRDYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24uIik7aWYoZyE9PXZvaWQgMCYmdHlwZW9mIGchPT0ibnVtYmVyIil0aHJvdyBjKGQse30sImV2ZW50VGltZW91dCBtdXN0IGJlIGEgbnVtYmVyLiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZT1bImdvb2dsZSJdLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZT1mdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LGFhOmZ1bmN0aW9uKCl7cmV0dXJue319fX0sWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlLk89ImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIixaLl9fYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UuaXNWZW5kb3JUZW1wbGF0ZT0hMCxaLl9fYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UucHJpb3JpdHlPdmVycmlkZT0wLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZS5pc0luZnJhc3RydWN0dXJlPSExLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZVsiNSJdPSExLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZVsiNiJdPSExOwpaLnNlY3VyaXR5R3JvdXBzLmFjY2Vzc19lbGVtZW50X3ZhbHVlcz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMsZCxlKXtyZXR1cm57ZWxlbWVudDpjLG9wZXJhdGlvbjpkLG5ld1ZhbHVlOmV9fShmdW5jdGlvbihiKXtaLl9fYWNjZXNzX2VsZW1lbnRfdmFsdWVzPWI7Wi5fX2FjY2Vzc19lbGVtZW50X3ZhbHVlcy5PPSJhY2Nlc3NfZWxlbWVudF92YWx1ZXMiO1ouX19hY2Nlc3NfZWxlbWVudF92YWx1ZXMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fYWNjZXNzX2VsZW1lbnRfdmFsdWVzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fYWNjZXNzX2VsZW1lbnRfdmFsdWVzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2FjY2Vzc19lbGVtZW50X3ZhbHVlc1siNSJdPSExO1ouX19hY2Nlc3NfZWxlbWVudF92YWx1ZXNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FsbG93UmVhZCxkPWIudnRwX2FsbG93V3JpdGUsZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7CnJldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnLGgsbCl7aWYoIShnIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpKXRocm93IGUoZix7fSwiRWxlbWVudCBtdXN0IGJlIGEgSFRNTEVsZW1lbnQuIik7aWYoaCE9PSJyZWFkIiYmaCE9PSJ3cml0ZSIpdGhyb3cgZShmLHt9LCJVbmtub3duIG9wZXJhdGlvbjogIitoKyIuIik7aWYoaD09InJlYWQiJiYhYyl0aHJvdyBlKGYse30sIkF0dGVtcHRpbmcgdG8gcGVyZm9ybSBkaXNhbGxvd2VkIG9wZXJhdGlvbjogcmVhZC4iKTtpZihoPT0id3JpdGUiKXtpZighZCl0aHJvdyBlKGYse30sIkF0dGVtcHRpbmcgdG8gcGVyZm9ybSBkaXNhbGxvd2VkIG9wZXJhdGlvbjogd3JpdGUuIik7aWYoIXpiKGwpKXRocm93IGUoZix7fSwiQXR0ZW1wdGluZyB0byB3cml0ZSB2YWx1ZSB3aXRob3V0IHZhbGlkIG5ldyB2YWx1ZS4iKTt9fSxhYTphfX0pfSgpOwoKWi5zZWN1cml0eUdyb3Vwcy5hY2Nlc3NfZ2xvYmFscz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMsZCl7dmFyIGU9e2tleTpkLHJlYWQ6ITEsd3JpdGU6ITEsZXhlY3V0ZTohMX07c3dpdGNoKGMpe2Nhc2UgInJlYWQiOmUucmVhZD0hMDticmVhaztjYXNlICJ3cml0ZSI6ZS53cml0ZT0hMDticmVhaztjYXNlICJyZWFkd3JpdGUiOmUucmVhZD1lLndyaXRlPSEwO2JyZWFrO2Nhc2UgImV4ZWN1dGUiOmUuZXhlY3V0ZT0hMDticmVhaztkZWZhdWx0OnRocm93IEVycm9yKCJJbnZhbGlkICIrYisiIHJlcXVlc3QgIitjKTt9cmV0dXJuIGV9KGZ1bmN0aW9uKGIpe1ouX19hY2Nlc3NfZ2xvYmFscz1iO1ouX19hY2Nlc3NfZ2xvYmFscy5PPSJhY2Nlc3NfZ2xvYmFscyI7Wi5fX2FjY2Vzc19nbG9iYWxzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2FjY2Vzc19nbG9iYWxzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fYWNjZXNzX2dsb2JhbHMuaXNJbmZyYXN0cnVjdHVyZT0hMTsKWi5fX2FjY2Vzc19nbG9iYWxzWyI1Il09ITE7Wi5fX2FjY2Vzc19nbG9iYWxzWyI2Il09ITF9KShmdW5jdGlvbihiKXtmb3IodmFyIGM9Yi52dHBfa2V5c3x8W10sZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3IsZT1bXSxmPVtdLGc9W10saD0wO2g8Yy5sZW5ndGg7aCsrKXt2YXIgbD1jW2hdLG49bC5rZXk7bC5yZWFkJiZlLnB1c2gobik7bC53cml0ZSYmZi5wdXNoKG4pO2wuZXhlY3V0ZSYmZy5wdXNoKG4pfXJldHVybnthc3NlcnQ6ZnVuY3Rpb24ocCxxLHIpe2lmKCF6YihyKSl0aHJvdyBkKHAse30sIktleSBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKHE9PT0icmVhZCIpe2lmKGUuaW5kZXhPZihyKT4tMSlyZXR1cm59ZWxzZSBpZihxPT09IndyaXRlIil7aWYoZi5pbmRleE9mKHIpPi0xKXJldHVybn1lbHNlIGlmKHE9PT0icmVhZHdyaXRlIil7aWYoZi5pbmRleE9mKHIpPi0xJiZlLmluZGV4T2Yocik+LTEpcmV0dXJufWVsc2UgaWYocT09PSJleGVjdXRlIil7aWYoZy5pbmRleE9mKHIpPgotMSlyZXR1cm59ZWxzZSB0aHJvdyBkKHAse30sIk9wZXJhdGlvbiBtdXN0IGJlIGVpdGhlciAncmVhZCcsICd3cml0ZScsIG9yICdleGVjdXRlJywgd2FzICIrcSk7dGhyb3cgZChwLHt9LCJQcm9oaWJpdGVkICIrcSsiIG9uIGdsb2JhbCB2YXJpYWJsZTogIityKyIuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmFjY2Vzc19kb21fZWxlbWVudF9wcm9wZXJ0aWVzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkLGUpe3ZhciBmPXtwcm9wZXJ0eTplLHJlYWQ6ITEsd3JpdGU6ITF9O3N3aXRjaChkKXtjYXNlICJyZWFkIjpmLnJlYWQ9ITA7YnJlYWs7Y2FzZSAid3JpdGUiOmYud3JpdGU9ITA7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcigiSW52YWxpZCAiK2IrIiBvcGVyYXRpb24gIitkKTt9cmV0dXJuIGZ9KGZ1bmN0aW9uKGIpe1ouX19hY2Nlc3NfZG9tX2VsZW1lbnRfcHJvcGVydGllcz1iO1ouX19hY2Nlc3NfZG9tX2VsZW1lbnRfcHJvcGVydGllcy5PPSJhY2Nlc3NfZG9tX2VsZW1lbnRfcHJvcGVydGllcyI7Wi5fX2FjY2Vzc19kb21fZWxlbWVudF9wcm9wZXJ0aWVzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2FjY2Vzc19kb21fZWxlbWVudF9wcm9wZXJ0aWVzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fYWNjZXNzX2RvbV9lbGVtZW50X3Byb3BlcnRpZXMuaXNJbmZyYXN0cnVjdHVyZT0KITE7Wi5fX2FjY2Vzc19kb21fZWxlbWVudF9wcm9wZXJ0aWVzWyI1Il09ITE7Wi5fX2FjY2Vzc19kb21fZWxlbWVudF9wcm9wZXJ0aWVzWyI2Il09ITF9KShmdW5jdGlvbihiKXtmb3IodmFyIGM9Yi52dHBfcHJvcGVydGllc3x8W10sZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3IsZT1bXSxmPVtdLGc9MDtnPGMubGVuZ3RoO2crKyl7dmFyIGg9Y1tnXSxsPWgucHJvcGVydHk7aC5yZWFkJiZlLnB1c2gobCk7aC53cml0ZSYmZi5wdXNoKGwpfXJldHVybnthc3NlcnQ6ZnVuY3Rpb24obixwLHEscil7aWYoIXpiKHIpKXRocm93IGQobix7fSwiUHJvcGVydHkgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihxPT09InJlYWQiKXtpZihlLmluZGV4T2Yocik+LTEpcmV0dXJufWVsc2UgaWYocT09PSJ3cml0ZSIpe2lmKGYuaW5kZXhPZihyKT4tMSlyZXR1cm59ZWxzZSB0aHJvdyBkKG4se30sJ09wZXJhdGlvbiBtdXN0IGJlIGVpdGhlciAicmVhZCIgb3IgIndyaXRlIicpO3Rocm93IGQobix7fSwKJyInK3ErJyIgb3BlcmF0aW9uIGlzIG5vdCBhbGxvd2VkLicpO30sYWE6YX19KX0oKTsKClouc2VjdXJpdHlHcm91cHMucmVhZF9kb21fZWxlbWVudF90ZXh0PVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2VsZW1lbnQ6Y319KGZ1bmN0aW9uKGIpe1ouX19yZWFkX2RvbV9lbGVtZW50X3RleHQ9YjtaLl9fcmVhZF9kb21fZWxlbWVudF90ZXh0Lk89InJlYWRfZG9tX2VsZW1lbnRfdGV4dCI7Wi5fX3JlYWRfZG9tX2VsZW1lbnRfdGV4dC5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19yZWFkX2RvbV9lbGVtZW50X3RleHQucHJpb3JpdHlPdmVycmlkZT0wO1ouX19yZWFkX2RvbV9lbGVtZW50X3RleHQuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fcmVhZF9kb21fZWxlbWVudF90ZXh0WyI1Il09ITE7Wi5fX3JlYWRfZG9tX2VsZW1lbnRfdGV4dFsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZCxlKXtpZighKGUgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkpdGhyb3cgYyhkLAp7fSwiV3JvbmcgZWxlbWVudCB0eXBlLiBNdXN0IGJlIEhUTUxFbGVtZW50LiIpO30sYWE6YX19KX0oKTsKClouc2VjdXJpdHlHcm91cHMuZ2V0X3JlZmVycmVyPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57Y29tcG9uZW50OmMscXVlcnlLZXk6ZH19KGZ1bmN0aW9uKGIpe1ouX19nZXRfcmVmZXJyZXI9YjtaLl9fZ2V0X3JlZmVycmVyLk89ImdldF9yZWZlcnJlciI7Wi5fX2dldF9yZWZlcnJlci5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19nZXRfcmVmZXJyZXIucHJpb3JpdHlPdmVycmlkZT0wO1ouX19nZXRfcmVmZXJyZXIuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZ2V0X3JlZmVycmVyWyI1Il09ITE7Wi5fX2dldF9yZWZlcnJlclsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfdXJsUGFydHM9PT0iYW55Ij9udWxsOltdO2MmJihiLnZ0cF9wcm90b2NvbCYmYy5wdXNoKCJwcm90b2NvbCIpLGIudnRwX2hvc3QmJmMucHVzaCgiaG9zdCIpLGIudnRwX3BvcnQmJmMucHVzaCgicG9ydCIpLGIudnRwX3BhdGgmJmMucHVzaCgicGF0aCIpLGIudnRwX2V4dGVuc2lvbiYmCmMucHVzaCgiZXh0ZW5zaW9uIiksYi52dHBfcXVlcnkmJmMucHVzaCgicXVlcnkiKSk7dmFyIGQ9YyYmYi52dHBfcXVlcmllc0FsbG93ZWQhPT0iYW55Ij9iLnZ0cF9xdWVyeUtleXN8fFtdOm51bGwsZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihmLGcsaCl7aWYoZyl7aWYoIXpiKGcpKXRocm93IGUoZix7fSwiVVJMIGNvbXBvbmVudCBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKGMmJmMuaW5kZXhPZihnKTwwKXRocm93IGUoZix7fSwiUHJvaGliaXRlZCBVUkwgY29tcG9uZW50OiAiK2cpO2lmKGc9PT0icXVlcnkiJiZkKXtpZighaCl0aHJvdyBlKGYse30sIlByb2hpYml0ZWQgZnJvbSBnZXR0aW5nIGVudGlyZSBVUkwgcXVlcnkgd2hlbiBxdWVyeSBrZXlzIGFyZSBzcGVjaWZpZWQuIik7aWYoIXpiKGgpKXRocm93IGUoZix7fSwiUXVlcnkga2V5IG11c3QgYmUgYSBzdHJpbmcuIik7aWYoZC5pbmRleE9mKGgpPDApdGhyb3cgZShmLHt9LAoiUHJvaGliaXRlZCBxdWVyeSBrZXk6ICIraCk7fX1lbHNlIGlmKGMpdGhyb3cgZShmLHt9LCJQcm9oaWJpdGVkIGZyb20gZ2V0dGluZyBlbnRpcmUgVVJMIHdoZW4gY29tcG9uZW50cyBhcmUgc3BlY2lmaWVkLiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5yZWFkX2V2ZW50X2RhdGE9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57a2V5OmN9fShmdW5jdGlvbihiKXtaLl9fcmVhZF9ldmVudF9kYXRhPWI7Wi5fX3JlYWRfZXZlbnRfZGF0YS5PPSJyZWFkX2V2ZW50X2RhdGEiO1ouX19yZWFkX2V2ZW50X2RhdGEuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fcmVhZF9ldmVudF9kYXRhLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fcmVhZF9ldmVudF9kYXRhLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX3JlYWRfZXZlbnRfZGF0YVsiNSJdPSExO1ouX19yZWFkX2V2ZW50X2RhdGFbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2V2ZW50RGF0YUFjY2VzcyxkPWIudnRwX2tleVBhdHRlcm5zfHxbXSxlPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGYsZyl7aWYoZyE9bnVsbCYmIXpiKGcpKXRocm93IGUoZix7a2V5Omd9LCJLZXkgbXVzdCBiZSBhIHN0cmluZy4iKTsKaWYoYyE9PSJhbnkiKXt0cnl7aWYoYz09PSJzcGVjaWZpYyImJmchPW51bGwmJkVnKGcsZCkpcmV0dXJufWNhdGNoKGgpe3Rocm93IGUoZix7a2V5Omd9LCJJbnZhbGlkIGtleSBmaWx0ZXIuIik7fXRocm93IGUoZix7a2V5Omd9LCJQcm9oaWJpdGVkIHJlYWQgZnJvbSBldmVudCBkYXRhLiIpO319LGFhOmF9fSl9KCk7CgpaLnNlY3VyaXR5R3JvdXBzLmdjbGlkdz1bImdvb2dsZSJdLFouX19nY2xpZHc9ZnVuY3Rpb24oYSl7YmQoYS52dHBfZ3RtT25TdWNjZXNzKTt2YXIgYixjLGQsZTthLnZ0cF9lbmFibGVDb29raWVPdmVycmlkZXMmJihkPWEudnRwX2Nvb2tpZVByZWZpeCxiPWEudnRwX3BhdGgsYz1hLnZ0cF9kb21haW4sZT1hLnZ0cF9jb29raWVGbGFncyk7dmFyIGY9dUEoRi5ELm1iLDIpLGc9e30saD0oZ1tGLkQubmJdPWQsZ1tGLkQudmNdPWIsZ1tGLkQuTGJdPWMsZ1tGLkQuVGJdPWUsZ1tGLkQubWJdPWYhPXZvaWQgMCYmZiE9PSExLGcpO2EudnRwX2VuYWJsZVVybFBhc3N0aHJvdWdoJiYoaFtGLkQuemNdPSEwKTtpZihhLnZ0cF9lbmFibGVDcm9zc0RvbWFpbiYmYS52dHBfbGlua2VyRG9tYWlucyl7dmFyIGw9e307aFtGLkQuRGJdPShsW0YuRC5YZl09YS52dHBfYWNjZXB0SW5jb21pbmcsbFtGLkQuQWFdPWEudnRwX2xpbmtlckRvbWFpbnMudG9TdHJpbmcoKS5yZXBsYWNlKC9ccysvZywiIikuc3BsaXQoIiwiKSwKbFtGLkQuYWRdPWEudnRwX3VybFBvc2l0aW9uLGxbRi5ELndjXT1hLnZ0cF9mb3JtRGVjb3JhdGlvbixsKX1pZihNKDQ5OCkpe3ZhciBuPSRMKCk7biYmbi5sZW5ndGg+MCYmKGhbRi5ELlRhXT17cGxmOm4uam9pbigiLiIpfSl9dmFyIHA9SkMoSUMoSEMoR0MoekMobmV3IHlDKGEudnRwX2d0bUV2ZW50SWQsYS52dHBfZ3RtUHJpb3JpdHlJZCksaCkseGIpLHhiKSwhMCkpO3AuZXZlbnRNZXRhZGF0YVtILkouRGNdPWpVLkthO3ROKCIiLEYuRC53YSxEYXRlLm5vdygpLHApfSxaLl9fZ2NsaWR3Lk89ImdjbGlkdyIsWi5fX2djbGlkdy5pc1ZlbmRvclRlbXBsYXRlPSEwLFouX19nY2xpZHcucHJpb3JpdHlPdmVycmlkZT0xMDAsWi5fX2djbGlkdy5pc0luZnJhc3RydWN0dXJlPSExLFouX19nY2xpZHdbIjUiXT0hMCxaLl9fZ2NsaWR3WyI2Il09ITA7Clouc2VjdXJpdHlHcm91cHMucHJvY2Vzc19kb21fZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57dGFyZ2V0VHlwZTpjLGV2ZW50TmFtZTpkfX0oZnVuY3Rpb24oYil7Wi5fX3Byb2Nlc3NfZG9tX2V2ZW50cz1iO1ouX19wcm9jZXNzX2RvbV9ldmVudHMuTz0icHJvY2Vzc19kb21fZXZlbnRzIjtaLl9fcHJvY2Vzc19kb21fZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3Byb2Nlc3NfZG9tX2V2ZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3Byb2Nlc3NfZG9tX2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19wcm9jZXNzX2RvbV9ldmVudHNbIjUiXT0hMTtaLl9fcHJvY2Vzc19kb21fZXZlbnRzWyI2Il09ITF9KShmdW5jdGlvbihiKXtmb3IodmFyIGM9Yi52dHBfdGFyZ2V0c3x8W10sZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3IsZT17fSxmPTA7ZjxjLmxlbmd0aDtmKyspe3ZhciBnPWNbZl07ZVtnLnRhcmdldFR5cGVdPQplW2cudGFyZ2V0VHlwZV18fFtdO2VbZy50YXJnZXRUeXBlXS5wdXNoKGcuZXZlbnROYW1lKX1yZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGgsbCxuKXtpZighZVtsXSl0aHJvdyBkKGgse30sIlByb2hpYml0ZWQgZXZlbnQgdGFyZ2V0ICIrbCsiLiIpO2lmKGVbbF0uaW5kZXhPZihuKT09PS0xKXRocm93IGQoaCx7fSwiUHJvaGliaXRlZCBsaXN0ZW5lciByZWdpc3RyYXRpb24gZm9yIERPTSBldmVudCAiK24rIi4iKTt9LGFhOmF9fSl9KCk7Clouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue29wdGlvbnM6e2ZpeE1pc3NpbmdBcGk6ISFjLmZpeE1pc3NpbmdBcGl9fX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cz1iO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMuTz0iZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzIjtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzWyI2Il09CiExfSkoZnVuY3Rpb24oYil7dmFyIGM9ISFiLnZ0cF9hbGxvd0ZpeE1pc3NpbmdKYXZhU2NyaXB0QXBpLGQ9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZSxmKXtpZighYyYmZiYmZi5maXhNaXNzaW5nQXBpKXRocm93IGQoZSx7fSwiUHJvaGliaXRlZCBvcHRpb246IGZpeE1pc3NpbmdBcGkuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLnJlYWRfZGF0YV9sYXllcj1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMpe3JldHVybntrZXk6Y319KGZ1bmN0aW9uKGIpe1ouX19yZWFkX2RhdGFfbGF5ZXI9YjtaLl9fcmVhZF9kYXRhX2xheWVyLk89InJlYWRfZGF0YV9sYXllciI7Wi5fX3JlYWRfZGF0YV9sYXllci5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19yZWFkX2RhdGFfbGF5ZXIucHJpb3JpdHlPdmVycmlkZT0wO1ouX19yZWFkX2RhdGFfbGF5ZXIuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fcmVhZF9kYXRhX2xheWVyWyI1Il09ITE7Wi5fX3JlYWRfZGF0YV9sYXllclsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWxsb3dlZEtleXN8fCJzcGVjaWZpYyIsZD1iLnZ0cF9rZXlQYXR0ZXJuc3x8W10sZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihmLGcpe2lmKCF6YihnKSl0aHJvdyBlKGYse30sIktleXMgbXVzdCBiZSBzdHJpbmdzLiIpOwppZihjIT09ImFueSIpe3RyeXtpZihFZyhnLGQpKXJldHVybn1jYXRjaChoKXt0aHJvdyBlKGYse30sIkludmFsaWQga2V5IGZpbHRlci4iKTt9dGhyb3cgZShmLHt9LCJQcm9oaWJpdGVkIHJlYWQgZnJvbSBkYXRhIGxheWVyIHZhcmlhYmxlOiAiK2crIi4iKTt9fSxhYTphfX0pfSgpOwoKCgoKClouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X2VsZW1lbnRfdmlzaWJpbGl0eV9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXtyZXR1cm57fX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9lbGVtZW50X3Zpc2liaWxpdHlfZXZlbnRzPWI7Wi5fX2RldGVjdF9lbGVtZW50X3Zpc2liaWxpdHlfZXZlbnRzLk89ImRldGVjdF9lbGVtZW50X3Zpc2liaWxpdHlfZXZlbnRzIjtaLl9fZGV0ZWN0X2VsZW1lbnRfdmlzaWJpbGl0eV9ldmVudHMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZGV0ZWN0X2VsZW1lbnRfdmlzaWJpbGl0eV9ldmVudHMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19kZXRlY3RfZWxlbWVudF92aXNpYmlsaXR5X2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfZWxlbWVudF92aXNpYmlsaXR5X2V2ZW50c1siNSJdPSExO1ouX19kZXRlY3RfZWxlbWVudF92aXNpYmlsaXR5X2V2ZW50c1siNiJdPSExfSkoZnVuY3Rpb24oKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKCl7fSwKYWE6YX19KX0oKTsKCgoKWi5zZWN1cml0eUdyb3Vwcy5nZXRfZWxlbWVudF9hdHRyaWJ1dGVzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57ZWxlbWVudDpjLGF0dHJpYnV0ZTpkfX0oZnVuY3Rpb24oYil7Wi5fX2dldF9lbGVtZW50X2F0dHJpYnV0ZXM9YjtaLl9fZ2V0X2VsZW1lbnRfYXR0cmlidXRlcy5PPSJnZXRfZWxlbWVudF9hdHRyaWJ1dGVzIjtaLl9fZ2V0X2VsZW1lbnRfYXR0cmlidXRlcy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19nZXRfZWxlbWVudF9hdHRyaWJ1dGVzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZ2V0X2VsZW1lbnRfYXR0cmlidXRlcy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19nZXRfZWxlbWVudF9hdHRyaWJ1dGVzWyI1Il09ITE7Wi5fX2dldF9lbGVtZW50X2F0dHJpYnV0ZXNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FsbG93ZWRBdHRyaWJ1dGVzfHwic3BlY2lmaWMiLGQ9Yi52dHBfYXR0cmlidXRlc3x8W10sZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7CnJldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnLGgpe2lmKCF6YihoKSl0aHJvdyBlKGYse30sIkF0dHJpYnV0ZSBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKCEoZyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSl0aHJvdyBlKGYse30sIldyb25nIGVsZW1lbnQgdHlwZS4gTXVzdCBiZSBIVE1MRWxlbWVudC4iKTtpZihoPT09InZhbHVlInx8YyE9PSJhbnkiJiYoYyE9PSJzcGVjaWZpYyJ8fGQuaW5kZXhPZihoKT09PS0xKSl0aHJvdyBlKGYse30sJ1JlYWRpbmcgYXR0cmlidXRlICInK2grJyIgaXMgbm90IGFsbG93ZWQuJyk7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9saW5rX2NsaWNrX2V2ZW50cz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMpe3JldHVybntvcHRpb25zOmN9fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzPWI7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50cy5PPSJkZXRlY3RfbGlua19jbGlja19ldmVudHMiO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50c1siNSJdPSExO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FsbG93V2FpdEZvclRhZ3MsZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihlLApmKXtpZighYyYmZiYmZi53YWl0Rm9yVGFncyl0aHJvdyBkKGUse30sIlByb2hpYml0ZWQgb3B0aW9uIHdhaXRGb3JUYWdzLiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5sb2FkX2dvb2dsZV90YWdzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57dGFnSWQ6YyxmaXJzdFBhcnR5VXJsOmR9fShmdW5jdGlvbihiKXtaLl9fbG9hZF9nb29nbGVfdGFncz1iO1ouX19sb2FkX2dvb2dsZV90YWdzLk89ImxvYWRfZ29vZ2xlX3RhZ3MiO1ouX19sb2FkX2dvb2dsZV90YWdzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2xvYWRfZ29vZ2xlX3RhZ3MucHJpb3JpdHlPdmVycmlkZT0wO1ouX19sb2FkX2dvb2dsZV90YWdzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2xvYWRfZ29vZ2xlX3RhZ3NbIjUiXT0hMTtaLl9fbG9hZF9nb29nbGVfdGFnc1siNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWxsb3dlZFRhZ0lkc3x8InNwZWNpZmljIixkPWIudnRwX2FsbG93Rmlyc3RQYXJ0eVVybHN8fCExLGU9Yi52dHBfYWxsb3dlZEZpcnN0UGFydHlVcmxzfHwic3BlY2lmaWMiLGY9Yi52dHBfdXJsc3x8CltdLGc9Yi52dHBfdGFnSWRzfHxbXSxoPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGwsbixwKXsoZnVuY3Rpb24ocSl7aWYoIXpiKHEpKXRocm93IGgobCx7fSwiVGFnIElEIG11c3QgYmUgYSBzdHJpbmcuIik7aWYoYyE9PSJhbnkiJiYoYyE9PSJzcGVjaWZpYyJ8fGcuaW5kZXhPZihxKT09PS0xKSl0aHJvdyBoKGwse30sIlByb2hpYml0ZWQgVGFnIElEOiAiK3ErIi4iKTt9KShuKTsoZnVuY3Rpb24ocSl7aWYocSE9PXZvaWQgMCl7aWYoIXpiKHEpKXRocm93IGgobCx7fSwiRmlyc3QgcGFydHkgVVJMIG11c3QgYmUgYSBzdHJpbmcuIik7aWYoZCl7aWYoZT09PSJhbnkiKXJldHVybjtpZihlPT09InNwZWNpZmljIil0cnl7aWYoV2coUmoocSksZikpcmV0dXJufWNhdGNoKHIpe3Rocm93IGgobCx7fSwiSW52YWxpZCBmaXJzdCBwYXJ0eSBVUkwgZmlsdGVyLiIpO319dGhyb3cgaChsLHt9LCJQcm9oaWJpdGVkIGZpcnN0IHBhcnR5IFVSTDogIisKcSk7fX0pKHApfSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLnJlYWRfY29udGFpbmVyX2RhdGE9WyJnb29nbGUiXSxaLl9fcmVhZF9jb250YWluZXJfZGF0YT1mdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LGFhOmZ1bmN0aW9uKCl7cmV0dXJue319fX0sWi5fX3JlYWRfY29udGFpbmVyX2RhdGEuTz0icmVhZF9jb250YWluZXJfZGF0YSIsWi5fX3JlYWRfY29udGFpbmVyX2RhdGEuaXNWZW5kb3JUZW1wbGF0ZT0hMCxaLl9fcmVhZF9jb250YWluZXJfZGF0YS5wcmlvcml0eU92ZXJyaWRlPTAsWi5fX3JlYWRfY29udGFpbmVyX2RhdGEuaXNJbmZyYXN0cnVjdHVyZT0hMSxaLl9fcmVhZF9jb250YWluZXJfZGF0YVsiNSJdPSExLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhWyI2Il09ITE7Clouc2VjdXJpdHlHcm91cHMuZ2V0X3VybD1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMsZCl7cmV0dXJue2NvbXBvbmVudDpjLHF1ZXJ5S2V5OmR9fShmdW5jdGlvbihiKXtaLl9fZ2V0X3VybD1iO1ouX19nZXRfdXJsLk89ImdldF91cmwiO1ouX19nZXRfdXJsLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2dldF91cmwucHJpb3JpdHlPdmVycmlkZT0wO1ouX19nZXRfdXJsLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2dldF91cmxbIjUiXT0hMTtaLl9fZ2V0X3VybFsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfdXJsUGFydHM9PT0iYW55Ij9udWxsOltdO2MmJihiLnZ0cF9wcm90b2NvbCYmYy5wdXNoKCJwcm90b2NvbCIpLGIudnRwX2hvc3QmJmMucHVzaCgiaG9zdCIpLGIudnRwX3BvcnQmJmMucHVzaCgicG9ydCIpLGIudnRwX3BhdGgmJmMucHVzaCgicGF0aCIpLGIudnRwX2V4dGVuc2lvbiYmYy5wdXNoKCJleHRlbnNpb24iKSxiLnZ0cF9xdWVyeSYmCmMucHVzaCgicXVlcnkiKSxiLnZ0cF9mcmFnbWVudCYmYy5wdXNoKCJmcmFnbWVudCIpKTt2YXIgZD1jJiZiLnZ0cF9xdWVyaWVzQWxsb3dlZCE9PSJhbnkiP2IudnRwX3F1ZXJ5S2V5c3x8W106bnVsbCxlPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGYsZyxoKXtpZihnKXtpZighemIoZykpdGhyb3cgZShmLHt9LCJVUkwgY29tcG9uZW50IG11c3QgYmUgYSBzdHJpbmcuIik7aWYoYyYmYy5pbmRleE9mKGcpPDApdGhyb3cgZShmLHt9LCJQcm9oaWJpdGVkIFVSTCBjb21wb25lbnQ6ICIrZyk7aWYoZz09PSJxdWVyeSImJmQpe2lmKCFoKXRocm93IGUoZix7fSwiUHJvaGliaXRlZCBmcm9tIGdldHRpbmcgZW50aXJlIFVSTCBxdWVyeSB3aGVuIHF1ZXJ5IGtleXMgYXJlIHNwZWNpZmllZC4iKTtpZighemIoaCkpdGhyb3cgZShmLHt9LCJRdWVyeSBrZXkgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihkLmluZGV4T2YoaCk8MCl0aHJvdyBlKGYse30sCiJQcm9oaWJpdGVkIHF1ZXJ5IGtleTogIitoKTt9fWVsc2UgaWYoYyl0aHJvdyBlKGYse30sIlByb2hpYml0ZWQgZnJvbSBnZXR0aW5nIGVudGlyZSBVUkwgd2hlbiBjb21wb25lbnRzIGFyZSBzcGVjaWZpZWQuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmFjY2Vzc19jb25zZW50PVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXt2YXIgZT17Y29uc2VudFR5cGU6YyxyZWFkOiExLHdyaXRlOiExfTtzd2l0Y2goZCl7Y2FzZSAicmVhZCI6ZS5yZWFkPSEwO2JyZWFrO2Nhc2UgIndyaXRlIjplLndyaXRlPSEwO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIkludmFsaWQgIitiKyIgcmVxdWVzdCAiK2QpO31yZXR1cm4gZX0oZnVuY3Rpb24oYil7Wi5fX2FjY2Vzc19jb25zZW50PWI7Wi5fX2FjY2Vzc19jb25zZW50Lk89ImFjY2Vzc19jb25zZW50IjtaLl9fYWNjZXNzX2NvbnNlbnQuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fYWNjZXNzX2NvbnNlbnQucHJpb3JpdHlPdmVycmlkZT0wO1ouX19hY2Nlc3NfY29uc2VudC5pc0luZnJhc3RydWN0dXJlPSExO1ouX19hY2Nlc3NfY29uc2VudFsiNSJdPSExO1ouX19hY2Nlc3NfY29uc2VudFsiNiJdPSExfSkoZnVuY3Rpb24oYil7Zm9yKHZhciBjPQpiLnZ0cF9jb25zZW50VHlwZXN8fFtdLGQ9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yLGU9W10sZj1bXSxnPTA7ZzxjLmxlbmd0aDtnKyspe3ZhciBoPWNbZ10sbD1oLmNvbnNlbnRUeXBlO2gucmVhZCYmZS5wdXNoKGwpO2gud3JpdGUmJmYucHVzaChsKX1yZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKG4scCxxKXtpZighemIocCkpdGhyb3cgZChuLHt9LCJDb25zZW50IHR5cGUgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihxPT09InJlYWQiKXtpZihlLmluZGV4T2YocCk+LTEpcmV0dXJufWVsc2UgaWYocT09PSJ3cml0ZSIpe2lmKGYuaW5kZXhPZihwKT4tMSlyZXR1cm59ZWxzZSB0aHJvdyBkKG4se30sIkFjY2VzcyB0eXBlIG11c3QgYmUgZWl0aGVyICdyZWFkJywgb3IgJ3dyaXRlJywgd2FzICIrcSk7dGhyb3cgZChuLHt9LCJQcm9oaWJpdGVkICIrcSsiIG9uIGNvbnNlbnQgdHlwZTogIitwKyIuIik7fSxhYTphfX0pfSgpOwoKWi5zZWN1cml0eUdyb3Vwcy5pbmplY3Rfc2NyaXB0PVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue3VybDpjfX0oZnVuY3Rpb24oYil7Wi5fX2luamVjdF9zY3JpcHQ9YjtaLl9faW5qZWN0X3NjcmlwdC5PPSJpbmplY3Rfc2NyaXB0IjtaLl9faW5qZWN0X3NjcmlwdC5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19pbmplY3Rfc2NyaXB0LnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9faW5qZWN0X3NjcmlwdC5pc0luZnJhc3RydWN0dXJlPSExO1ouX19pbmplY3Rfc2NyaXB0WyI1Il09ITE7Wi5fX2luamVjdF9zY3JpcHRbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX3VybHN8fFtdLGQ9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZSxmKXtpZighemIoZikpdGhyb3cgZChlLHt9LCJTY3JpcHQgVVJMIG11c3QgYmUgYSBzdHJpbmcuIik7dHJ5e2lmKFdnKFJqKGYpLGMpKXJldHVybn1jYXRjaChnKXt0aHJvdyBkKGUsCnt9LCJJbnZhbGlkIHNjcmlwdCBVUkwgZmlsdGVyLiIpO310aHJvdyBkKGUse30sIlByb2hpYml0ZWQgc2NyaXB0IFVSTDogIitmKTt9LGFhOmF9fSl9KCk7Clouc2VjdXJpdHlHcm91cHMudW5zYWZlX3J1bl9hcmJpdHJhcnlfamF2YXNjcmlwdD1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe3JldHVybnt9fShmdW5jdGlvbihiKXtaLl9fdW5zYWZlX3J1bl9hcmJpdHJhcnlfamF2YXNjcmlwdD1iO1ouX191bnNhZmVfcnVuX2FyYml0cmFyeV9qYXZhc2NyaXB0Lk89InVuc2FmZV9ydW5fYXJiaXRyYXJ5X2phdmFzY3JpcHQiO1ouX191bnNhZmVfcnVuX2FyYml0cmFyeV9qYXZhc2NyaXB0LmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3Vuc2FmZV9ydW5fYXJiaXRyYXJ5X2phdmFzY3JpcHQucHJpb3JpdHlPdmVycmlkZT0wO1ouX191bnNhZmVfcnVuX2FyYml0cmFyeV9qYXZhc2NyaXB0LmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX3Vuc2FmZV9ydW5fYXJiaXRyYXJ5X2phdmFzY3JpcHRbIjUiXT0hMTtaLl9fdW5zYWZlX3J1bl9hcmJpdHJhcnlfamF2YXNjcmlwdFsiNiJdPSExfSkoZnVuY3Rpb24oKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKCl7fSwKYWE6YX19KX0oKTsKCgpaLnNlY3VyaXR5R3JvdXBzLnJlYWRfZG9tX2VsZW1lbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57dHlwZTpjLHZhbHVlOmR9fShmdW5jdGlvbihiKXtaLl9fcmVhZF9kb21fZWxlbWVudHM9YjtaLl9fcmVhZF9kb21fZWxlbWVudHMuTz0icmVhZF9kb21fZWxlbWVudHMiO1ouX19yZWFkX2RvbV9lbGVtZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19yZWFkX2RvbV9lbGVtZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzWyI1Il09ITE7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9hbGxvd2VkRWxlbWVudElkc3x8Im5vbmUiLGQ9Yi52dHBfYWxsb3dlZENzc1NlbGVjdG9yc3x8Im5vbmUiLGU9Yi52dHBfZWxlbWVudElkc3x8W10sZj1iLnZ0cF9jc3NTZWxlY3RvcnN8fFtdLGc9CmIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGgsbCxuKXtzd2l0Y2gobCl7Y2FzZSAiaWQiOmlmKGM9PT0ibm9uZSIpYnJlYWs7aWYoYz09PSJhbnkifHxlLmluZGV4T2Yobik+LTEpcmV0dXJuO2JyZWFrO2Nhc2UgImNzcyI6aWYoZD09PSJub25lIilicmVhaztpZihkPT09ImFueSJ8fGYuaW5kZXhPZihuKT4tMSlyZXR1cm47YnJlYWs7ZGVmYXVsdDp0aHJvdyBnKGgse30sIlVua25vd24gc2VsZWN0b3IgdHlwZSAiK2wrIi4iKTt9dGhyb3cgZyhoLHt9LCJQcm9oaWJpdGVkIHNlbGVjdG9yIHZhbHVlICIrbisiIGZvciBzZWxlY3RvciB0eXBlICIrbCsiLiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy51bnNhZmVfaW5qZWN0X2FyYml0cmFyeV9odG1sPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57dXNlSWZyYW1lOmMsc3VwcG9ydERvY3VtZW50V3JpdGU6ZH19KGZ1bmN0aW9uKGIpe1ouX191bnNhZmVfaW5qZWN0X2FyYml0cmFyeV9odG1sPWI7Wi5fX3Vuc2FmZV9pbmplY3RfYXJiaXRyYXJ5X2h0bWwuTz0idW5zYWZlX2luamVjdF9hcmJpdHJhcnlfaHRtbCI7Wi5fX3Vuc2FmZV9pbmplY3RfYXJiaXRyYXJ5X2h0bWwuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fdW5zYWZlX2luamVjdF9hcmJpdHJhcnlfaHRtbC5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3Vuc2FmZV9pbmplY3RfYXJiaXRyYXJ5X2h0bWwuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fdW5zYWZlX2luamVjdF9hcmJpdHJhcnlfaHRtbFsiNSJdPSExO1ouX191bnNhZmVfaW5qZWN0X2FyYml0cmFyeV9odG1sWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz0KYi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZCxlLGYpe2lmKGUmJmYpdGhyb3cgYyhkLHt9LCJPbmx5IG9uZSBvZiB1c2VJZnJhbWUgYW5kIHN1cHBvcnREb2N1bWVudFdyaXRlIGNhbiBiZSB0cnVlLiIpO2lmKGUhPT12b2lkIDAmJnR5cGVvZiBlIT09ImJvb2xlYW4iKXRocm93IGMoZCx7fSwidXNlSWZyYW1lIG11c3QgYmUgYSBib29sZWFuLiIpO2lmKGYhPT12b2lkIDAmJnR5cGVvZiBmIT09ImJvb2xlYW4iKXRocm93IGMoZCx7fSwic3VwcG9ydERvY3VtZW50V3JpdGUgbXVzdCBiZSBhIGJvb2xlYW4uIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLndyaXRlX2RhdGFfbGF5ZXI9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57a2V5OmN9fShmdW5jdGlvbihiKXtaLl9fd3JpdGVfZGF0YV9sYXllcj1iO1ouX193cml0ZV9kYXRhX2xheWVyLk89IndyaXRlX2RhdGFfbGF5ZXIiO1ouX193cml0ZV9kYXRhX2xheWVyLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3dyaXRlX2RhdGFfbGF5ZXIucHJpb3JpdHlPdmVycmlkZT0wO1ouX193cml0ZV9kYXRhX2xheWVyLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX3dyaXRlX2RhdGFfbGF5ZXJbIjUiXT0hMTtaLl9fd3JpdGVfZGF0YV9sYXllclsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfa2V5UGF0dGVybnN8fFtdLGQ9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZSxmKXtpZighemIoZikpdGhyb3cgZChlLHt9LCJLZXlzIG11c3QgYmUgc3RyaW5ncy4iKTt0cnl7aWYoRWcoZiwKYykpcmV0dXJufWNhdGNoKGcpe3Rocm93IGQoZSx7fSwiSW52YWxpZCBrZXkgZmlsdGVyLiIpO310aHJvdyBkKGUse30sIlByb2hpYml0ZWQgd3JpdGUgdG8gZGF0YSBsYXllciB2YXJpYWJsZTogIitmKyIuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9jbGlja19ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQpe3JldHVybnttYXRjaENvbW1vbkJ1dHRvbnM6Yyxjc3NTZWxlY3RvcjpkfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9jbGlja19ldmVudHM9YjtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5PPSJkZXRlY3RfY2xpY2tfZXZlbnRzIjtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfY2xpY2tfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfY2xpY2tfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9jbGlja19ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGQsZSxmKXtpZihlIT09dm9pZCAwJiZ0eXBlb2YgZSE9PQoiYm9vbGVhbiIpdGhyb3cgYyhkLHt9LCJtYXRjaENvbW1vbkJ1dHRvbnMgbXVzdCBiZSBhIGJvb2xlYW4uIik7aWYoZiE9PXZvaWQgMCYmdHlwZW9mIGYhPT0ic3RyaW5nIil0aHJvdyBjKGQse30sImNzc1NlbGVjdG9yIG11c3QgYmUgYSBzdHJpbmcuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmxvZ2dpbmc9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXtyZXR1cm57fX0oZnVuY3Rpb24oYil7Wi5fX2xvZ2dpbmc9YjtaLl9fbG9nZ2luZy5PPSJsb2dnaW5nIjtaLl9fbG9nZ2luZy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19sb2dnaW5nLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fbG9nZ2luZy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19sb2dnaW5nWyI1Il09ITE7Wi5fX2xvZ2dpbmdbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2Vudmlyb25tZW50c3x8ImRlYnVnIixkPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGUpe3ZhciBmO2lmKGY9YyE9PSJhbGwiJiYhMCl7dmFyIGc9ITE7Zj0hZ31pZihmKXRocm93IGQoZSx7fSwiTG9nZ2luZyBpcyBub3QgZW5hYmxlZCBpbiBhbGwgZW52aXJvbm1lbnRzIik7Cn0sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5jb25maWd1cmVfZ29vZ2xlX3RhZ3M9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQpe3JldHVybnt0YWdJZDpjLGNvbmZpZ3VyYXRpb246ZH19KGZ1bmN0aW9uKGIpe1ouX19jb25maWd1cmVfZ29vZ2xlX3RhZ3M9YjtaLl9fY29uZmlndXJlX2dvb2dsZV90YWdzLk89ImNvbmZpZ3VyZV9nb29nbGVfdGFncyI7Wi5fX2NvbmZpZ3VyZV9nb29nbGVfdGFncy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19jb25maWd1cmVfZ29vZ2xlX3RhZ3MucHJpb3JpdHlPdmVycmlkZT0wO1ouX19jb25maWd1cmVfZ29vZ2xlX3RhZ3MuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fY29uZmlndXJlX2dvb2dsZV90YWdzWyI1Il09ITE7Wi5fX2NvbmZpZ3VyZV9nb29nbGVfdGFnc1siNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWxsb3dlZFRhZ0lkc3x8InNwZWNpZmljIixkPWIudnRwX3RhZ0lkc3x8W10sZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7CnJldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnKXtpZighemIoZykpdGhyb3cgZShmLHt9LCJUYWcgSUQgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihjIT09ImFueSImJihjIT09InNwZWNpZmljInx8ZC5pbmRleE9mKGcpPT09LTEpKXRocm93IGUoZix7fSwiUHJvaGliaXRlZCBjb25maWd1cmF0aW9uIGZvciBUYWcgSUQ6ICIrZysiLiIpO30sYWE6YX19KX0oKTsKCgoKClouc2VjdXJpdHlHcm91cHMuZ2V0X2Nvb2tpZXM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57bmFtZTpjfX0oZnVuY3Rpb24oYil7Wi5fX2dldF9jb29raWVzPWI7Wi5fX2dldF9jb29raWVzLk89ImdldF9jb29raWVzIjtaLl9fZ2V0X2Nvb2tpZXMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZ2V0X2Nvb2tpZXMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19nZXRfY29va2llcy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19nZXRfY29va2llc1siNSJdPSExO1ouX19nZXRfY29va2llc1siNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfY29va2llQWNjZXNzfHwic3BlY2lmaWMiLGQ9Yi52dHBfY29va2llTmFtZXN8fFtdLGU9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnKXtpZighemIoZykpdGhyb3cgZShmLHt9LCJDb29raWUgbmFtZSBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKGMhPT0iYW55IiYmCiEoYz09PSJzcGVjaWZpYyImJmQuaW5kZXhPZihnKT49MCkpdGhyb3cgZShmLHt9LCdBY2Nlc3MgdG8gY29va2llICInK2crJyIgaXMgcHJvaGliaXRlZC4nKTt9LGFhOmF9fSl9KCk7ZnVuY3Rpb24ga1UoKXt2YXIgYT17fSxiPXtkYXRhTGF5ZXI6dEEsY2FsbGJhY2s6ZnVuY3Rpb24oYyl7YS5oYXNPd25Qcm9wZXJ0eShjKSYmeWIoYVtjXSkmJmFbY10oKTtkZWxldGUgYVtjXX0sYm9vdHN0cmFwOjB9O2Iub25IdG1sU3VjY2Vzcz1VayghMCksYi5vbkh0bWxGYWlsdXJlPVVrKCExKTtyZXR1cm4gYn0KZnVuY3Rpb24gbFUoKXt2YXIgYT1rVSgpO29qKGEpO0NrKCk7akEoKTt2YXIgYj1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSk7UWIoYixaLnNlY3VyaXR5R3JvdXBzKTt2YXIgYz15ayh6aygpKSxkLGU9Yz09bnVsbD92b2lkIDA6KGQ9Yy5jb250ZXh0KT09bnVsbD92b2lkIDA6ZC5zb3VyY2U7S2woZSxjPT1udWxsP3ZvaWQgMDpjLnBhcmVudCk7ZSE9PTImJmUhPT00JiZlIT09M3x8UCgxNDIpO1drfHwoV2s9bmV3IFZrKSxSa3x8KFJrPW5ldyBUayk7cmV0dXJuIGF9ZnVuY3Rpb24gbVUoKXt2YXIgYT1FKDYwKTtpZihhKWZvcih2YXIgYj1hLnNwbGl0KCIuIiksYz0wO2M8Yi5sZW5ndGg7YysrKXt2YXIgZD1iW2NdLGU9VEw7ZCYmKGUuSFtkXT0hMCl9fQpmdW5jdGlvbiBuVSgpe3pwKCk7bGooKTtmb3IodmFyIGE9ZGF0YS5yZXNvdXJjZXx8e30sYj1jQSxjPWEubWFjcm9zfHxbXSxkPTA7ZDxjLmxlbmd0aDtkKyspYi5tYWNyb3MucHVzaChuZXcgVXooY1tkXSxkLGIudGFncyxiLm1hY3JvcykpO2Zvcih2YXIgZT1hLnRhZ3N8fFtdLGY9MDtmPGUubGVuZ3RoO2YrKyliLnRhZ3MucHVzaChuZXcgWXooZVtmXSxmLGIudGFncyxiLm1hY3JvcykpO2Zvcih2YXIgZz1hLnByZWRpY2F0ZXN8fFtdLGg9MDtoPGcubGVuZ3RoO2grKyliLnByZWRpY2F0ZXMucHVzaChuZXcgVnooZ1toXSxiLnRhZ3MsYi5tYWNyb3MpKTtmb3IodmFyIGw9YS5ydWxlc3x8W10sbj0wO248bC5sZW5ndGg7bisrKWIucnVsZXMucHVzaChuZXcgV3oobFtuXSxuKSk7UXo9Wjt2YXIgcD1kYXRhLnBlcm1pc3Npb25zfHx7fSxxPVo7ZGc9bmV3IGdnKEUoNSkscCxxKTt2YXIgcj1kYXRhLnNhbmRib3hlZF9zY3JpcHRzLHQ9ZGF0YS5zZWN1cml0eV9ncm91cHMsdT1kYXRhLnJ1bnRpbWV8fApbXSx2PWRhdGEucnVudGltZV9saW5lcztKRj1uZXcgcGY7VlQoKTtQej1JRigpO3ZhciB4PUpGLHk9VVQoKSx6PW5ldyBMZCgicmVxdWlyZSIseSk7ei5aYSgpO3guSC5ILnNldCgicmVxdWlyZSIseik7ZGIuc2V0KCJyZXF1aXJlIix6KTtmb3IodmFyIEM9MDtDPHUubGVuZ3RoO0MrKyl7dmFyIEQ9dVtDXTtpZighQXJyYXkuaXNBcnJheShEKXx8RC5sZW5ndGg8Myl7aWYoRC5sZW5ndGg9PT0wKWNvbnRpbnVlO2JyZWFrfXYmJnZbQ10mJnZbQ10ubGVuZ3RoJiZQZihELHZbQ10pO3RyeXtKRi5leGVjdXRlKEQpfWNhdGNoKG9VKXt9fVdUKHIpO1hUKHQpO3ZhciBJPWxVKCk7aUYoKTt2bS5iaW5kKCk7aWYoIURqKWZvcih2YXIgRz1CbSgpP2VwKExmKDUpKTplcChMZig0KSksTj1tKFJvKSxTPU4ubmV4dCgpOyFTLmRvbmU7Uz1OLm5leHQoKSl7dmFyIFc9Uy52YWx1ZSxlYT1XLGphPUdbV10/ImdyYW50ZWQiOiJkZW5pZWQiO3RsKCkuaW1wbGljaXQoZWEsamEpfWhFLmJpbmQoKTtUQigpOwpPQigpO2ZuLk4mJihneigpLGZ6KEFGKSxnQSgpLGNCPW5ldyBiQixmeihpeiksT0MoKSxERnx8KERGPW5ldyBCRiksZkJ8fChmQj1uZXcgZUIpLEZGPW5ldyBFRik7aWYoZm4uSyl7REUuYmluZCgpO21DLmJpbmQoKTt3RS5iaW5kKCk7dmFyIGZhPUFrKCk7aWYoZmEpe3ZhciBzYTthOnt2YXIgZGEsbWE9KGRhPWZhLnNjcmlwdEVsZW1lbnQpPT1udWxsP3ZvaWQgMDpkYS5zcmM7aWYobWEpe3ZhciBQYTt0cnl7dmFyIEZhO1BhPShGYT1yZCgpKT09bnVsbD92b2lkIDA6RmEuZ2V0RW50cmllc0J5VHlwZSgicmVzb3VyY2UiKX1jYXRjaChvVSl7fWlmKFBhKXtmb3IodmFyIHFhPS0xLGliPW0oUGEpLFhiPWliLm5leHQoKTshWGIuZG9uZTtYYj1pYi5uZXh0KCkpe3ZhciBMYz1YYi52YWx1ZTtpZihMYy5pbml0aWF0b3JUeXBlPT09CiJzY3JpcHQiJiYocWErPTEsTGMubmFtZS5yZXBsYWNlKE5FLCIiKT09PW1hLnJlcGxhY2UoTkUsIiIpKSl7c2E9cWE7YnJlYWsgYX19UCgxNDYpfWVsc2UgUCgxNDUpfXNhPXZvaWQgMH12YXIgUWQ9c2E7UWQhPT12b2lkIDAmJihmYS5jYW5vbmljYWxDb250YWluZXJJZCYmVW0oInJ0ZyIsU3RyaW5nKGZhLmNhbm9uaWNhbENvbnRhaW5lcklkKSksVW0oInNsbyIsU3RyaW5nKFFkKSksVW0oImhsbyIsZmEuaHRtbExvYWRPcmRlcnx8Ii0xIiksVW0oImxzdCIsU3RyaW5nKGZhLmxvYWRTY3JpcHRUeXBlfHwiMCIpKSl9ZWxzZSBQKDE0NCk7dmFyIFljO3ZhciBEZD14aygpO2lmKERkKWlmKERkLmNhbm9uaWNhbENvbnRhaW5lcklkKVljPURkLmNhbm9uaWNhbENvbnRhaW5lcklkO2Vsc2V7dmFyIGpmLHZoPURkLnNjcmlwdENvbnRhaW5lcklkfHwoKGpmPURkLmRlc3RpbmF0aW9ucyk9PW51bGw/dm9pZCAwOmpmWzBdKTtZYz12aD8iXyIrdmg6dm9pZCAwfWVsc2UgWWM9dm9pZCAwO3ZhciBKRT0KWWM7SkUmJlVtKCJwY2lkIixKRSk7VW0oImJ0IixTdHJpbmcoSWYoNDcpPzI6SWYoNTApPzE6MCkpO1VtKCJjdCIsU3RyaW5nKElmKDQ3KT8wOklmKDUwKT8xOjMpKTtBRS5iaW5kKCk7Zm9yKHZhciBXcj1bXSxYcj1bXSxLRT1tKE9iamVjdC5rZXlzKEdFKSksWXI9S0UubmV4dCgpOyFZci5kb25lO1lyPUtFLm5leHQoKSl7dmFyIHJtPVlyLnZhbHVlO2lmKHdpbmRvdy5pc1NlY3VyZUNvbnRleHR8fCFJRVtybV0pe3ZhciBMRT1HRVtybV0oKTtpZih5YihMRSkpe3ZhciBNRT1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChMRSk7VGIoTUUsInsgW25hdGl2ZSBjb2RlXSB9Iil8fFRiKE1FLCJ7XG4gICAgW25hdGl2ZSBjb2RlXVxufSIpfHxYci5wdXNoKHJtKX1lbHNlIFdyLnB1c2gocm0pfX1Xci5sZW5ndGg+MCYmVW0oImpzbSIsV3Iuam9pbigifiIpKTtYci5sZW5ndGg+MCYmVW0oImpzcCIsWHIuam9pbigifiIpKTtFeXx8KEV5PW5ldyBEeSl9aEYoKTtpbSgxKTtFRygpO3JldHVybiBJfQpmdW5jdGlvbiB1bSgpe3RyeXtpZighaGsoKSYmKElmKDQ3KXx8IU5rKCkpKXtJZig2NCkmJndqLkguSy5hZGQoMTE4NTE3OTE3KTt6aigpO2ZuLkgmJnN6KCk7V2ZbNV09ITA7dmFyIGE9a2ooImRlYnVnR3JvdXBJZCIsZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nKE1hdGguZmxvb3IoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIqTWF0aC5yYW5kb20oKSkpfSk7U2woYSk7a3QoKTt6RigpO0Z0KCk7UEIoKTtpZihEaygpKXtFKDUpO0RHKCk7aUIoKS5yZW1vdmVFeHRlcm5hbFJlc3RyaWN0aW9ucyh2aygpKTt9ZWxzZXtGTS5SKCk7blUoKS5ib290c3RyYXA9TmIoKTtJZig1MSkmJnBFKCk7CmZuLkgmJnR6KCk7dHlwZW9mIEEubmFtZT09PSJzdHJpbmciJiZTYihBLm5hbWUsIndlYi1waXhlbC1zYW5kYm94LUNVU1RPTSIpJiZzZCgpP1pUKCJkTURnMFl6Iik6QS5TaG9waWZ5JiYoWlQoImROMlprTWoiKSxzZCgpJiZaVCgiZE5UVTBZeiIpKTttVSgpfX19Y2F0Y2goYil7aW0oNSksaHooKX19CihmdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7bj1CLmRvY3VtZW50RWxlbWVudC5nZXRBdHRyaWJ1dGUoImRhdGEtdGFnLWFzc2lzdGFudC1wcmVzZW50Iik7Z2wobikmJihsPWgueG0pfWZ1bmN0aW9uIGMoKXtsJiZLYz9nKGwpOmEoKX1pZighQVtFKDM3KV0pe3ZhciBkPSExO2lmKEIucmVmZXJyZXIpe3ZhciBlPVJqKEIucmVmZXJyZXIpO2Q9TmooZSwiaG9zdCIpPT09RSgzOCl9aWYoIWQpe3ZhciBmPWNxKEUoMzkpKTtkPSEoIWYubGVuZ3RofHwhZlswXS5sZW5ndGgpfWQmJihBW0UoMzcpXT0hMCxVYyhFKDQwKSkpfXZhciBnPWZ1bmN0aW9uKHUpe3ZhciB2PSJHVE0iLHg9IkdUTSI7SWYoNDUpJiYodj0iT0dUIix4PSJHVEFHIik7dmFyIHk9RSgyMyksej1BW3ldO3p8fCh6PVtdLEFbeV09eixVYygiaHR0cHM6Ly8iK0UoMykrIi9kZWJ1Zy9ib290c3RyYXA/aWQ9IitFKDUpKyImc3JjPSIreCsiJmNvbmQ9IitTdHJpbmcodSkrIiZndG09IitkdSgpKSk7dmFyIEM9e21lc3NhZ2VUeXBlOiJDT05UQUlORVJfU1RBUlRJTkciLApkYXRhOntzY3JpcHRTb3VyY2U6S2MsY29udGFpbmVyUHJvZHVjdDp2LGRlYnVnOiExLGlkOkUoNSksdGFyZ2V0UmVmOntjdGlkOkUoNSksaXNEZXN0aW5hdGlvbjpzaygpLGNhbm9uaWNhbElkOkUoNil9LGFsaWFzZXM6d2soKSxkZXN0aW5hdGlvbnM6dGsoKX19LEQ9Qy5kYXRhO0QucmVzdW1lPWZ1bmN0aW9uKCl7YSgpfTtELnJlc3VtZVdpdGhNZW1vcz1mdW5jdGlvbigpe3NsKDEpO2EoKX07SWYoMikmJihDLmRhdGEuaW5pdGlhbFB1Ymxpc2g9ITApO3oucHVzaChDKX0saD17R3E6MSxQbToyLG9uOjMsamw6NCx4bTo1fTtoW2guR3FdPSJHVE1fREVCVUdfTEVHQUNZX1BBUkFNIjtoW2guUG1dPSJHVE1fREVCVUdfUEFSQU0iO2hbaC5vbl09IlJFRkVSUkVSIjtoW2guamxdPSJDT09LSUUiO2hbaC54bV09IkVYVEVOU0lPTl9QQVJBTSI7dmFyIGw9dm9pZCAwLG49dm9pZCAwLHA9TGooQS5sb2NhdGlvbiwicXVlcnkiLCExLHZvaWQgMCwiZ3RtX2RlYnVnIik7Z2wocCkmJihsPWguUG0pOwppZighbCYmQi5yZWZlcnJlcil7dmFyIHE9UmooQi5yZWZlcnJlcik7TmoocSwiaG9zdCIpPT09RSgyNCkmJihsPWgub24pfWlmKCFsKXt2YXIgcj1jcSgiX19UQUdfQVNTSVNUQU5UIik7ci5sZW5ndGgmJnJbMF0ubGVuZ3RoJiYobD1oLmpsKX1sfHxiKCk7aWYoIWwmJmZsKG4pKXt2YXIgdD0hMTskYyhCLCJUQURlYnVnU2lnbmFsIixmdW5jdGlvbigpe3R8fCh0PSEwLGIoKSxjKCkpfSwhMSk7QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dHx8KHQ9ITAsYigpLGMoKSl9LDIwMCl9ZWxzZSBjKCl9KShmdW5jdGlvbigpeyFJZig0Nyl8fHRtKClbIjAiXT91bSgpOnhtKCl9KTsKCn0pKCkKCg=="}},"time_used":130,"timings":{"blocked":-1,"dns":0,"connect":15,"send":0,"wait":38,"receive":46,"ssl":31},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/fonts/Delivery_W_Rg.woff2","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.060Z","timestamp":1785161167060,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/fonts/Delivery_W_Rg.woff2 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://dhlexpress.bg/public/dist/styles/application.min.css?v1773055958\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: font/woff2\r\ncontent-length: 33604\r\nlast-modified: Wed, 01 Feb 2023 11:40:26 GMT\r\netag: \"8344-5f3a1ea1a0016\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":33604,"size_decoded":33859,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 33604, version 1.66","md5":"0f529c4324291f642ef9918cc460e232","sha1":"c7b1c31b51d5df4a08fba5f2ae6b7ec2c6301eb0","sha256":"aad2e62bcbb49d968f8c6d59a0fa6d6bbf239bd508b5749997c9f89e2f67aaa4","sha512":"b93af2dfc2178adfb843410e636b8c1249076239fd9610a5694ca87cbf0b263e8da58e5eca3ab0bbb125d88f7876fda7e5a1d171a924ab79aa09ae2c0d634b33","ssdeep":"768:EDoxVVP6j4IstpRfP6Pl88NMb3yludj/4UA56MWH412xE:USzyj/stPU43y0drf7nH22+","tlshash":"78e2f161d6861e62be43f23dabf0c65ed1c12219cd2bcb81c0ec261e67863971f8751e","first_seen":"2023-05-03T03:15:09Z","last_seen":"2026-07-27T14:06:41.18112Z","times_seen":451,"resource_available":false,"data":"d09GMgABAAAAAINEABEAAAABpbgAAILgAAEAQgAAAAAAAAAAAAAAAAAAAAAAAAAAGoEmG4LbGBynFgZgAIpsCJdyCY1XERAKgukggrVwATYCJAOVaAuKdgAEIAWEVAcgDIQpW2eFcYG5qYMW/VDeoOrVR9ucpadATjae9GbVGrILOlMwjlmA7kBRof41kv3/f0pyMoZsFjAtn389MCMoRld37DIdPFysg90o+iAqWONUlQwyOEiZOhznngV9HLi7K0zG1a5mbnDm398M9xdKn1K62FzMCjSzDuLfm0b7fy/Em5LbFUMHo5mvbECxb/AspRcTxs8Rudl7tU08Ngnzz+BF4nCiGxqJAhOCBpM10ZNbhF/cvfDEITF5+RDnb8I4mJxNjIvAxmWMpD0vSRI9z899VZ8HATJmohnxFVP+igm5R6Tb/+xeSiWUEFIgOTBgKIYYI0IoYkBKC0JXLFTBArwQfIA+xIYdG1gqduw8Hg9BwYqtgaUiKk3EJ1+xfEUYoLmlCNJjsLEiN2DUGMu63W275d3ilsQGjEhpAxAw0EaY2bzyfqof8N++fpX2Vxnvw7fxv+pb770XIAACJECC8YUo5ae0m2cdNM48cpAcaFY+U71VORuD9kd12jC7/2fpx1ayc/emaBxS7S0aF/UQFWPo3n2SAkpF44HHIytHQtboSgco+/z/84fPv2OufX8BiXWxYGkYoQ8U+oUiUs2DFn3naG2d9rlDNDR8NuEpbQmkTCziGhnw9/2/n6rv/+8peciSh+S1M+VYWUIS/Pe7kPKQynKG2awLhuWKYIbsK1tKUV0U2OQKiAD0mapuGdZsQZapjp6mpA9bxtY3ZXLvcmmE6PoQVR9WxcPEU8qbzFPUh+8TpbdoAiaqcM3ET2SnmNz+QCQAC4IsNdNx4NEaHLV3wlgEFdb/inRICp3hplPT1VMA/w1EO2v7lWo1jAQYWLxCys5p+qvq9E35hzZ3Ab/UDVPPJcV9pMvINMLG6Jby/zenqe29yQKrAWtC2XaIys0DYS5DvOCAwv9yizkryU4WpHjh8doDwmW0rTSZaQa4d/zj5Js+F5EKl7pSsp/Zn0SeHV8ASAb5kaSgfDS+7qoAd7nRT6p+HXS6K5oUPZb5MvX9vS21/Ss8BRWHTmGFqZY04+kD02fSpmje/jvp/u7qWPDXuGs8ybQ6GdZS4CTTnUK6oAG4Da14JdMZiM8OVkDUAZaZNFUmTe2qCHCbSVlRXbiL//+2amndevNbprYPU2te68Niks7icnIOSVL1u2p7Xr/5reuFWa8bjLCnmcU1hIhQbJZGRCKT2DSDkJMTRIQZYU4eQJARpfzfVP+jUfx8nF8L29IJS5Sy23+p+BEUX93xjTWe6JWeLb14NJoZaSxZqfYrFW7tsGK4hy/BC7iVECfIybKPFvIFkO3/70/L9j3Z8n6vPOgFTVAOYzsY5DIn1bbp3rv3vv/0/9OXeEdglLwge1AeD2hIX16QHfRUVpCqZKuEB9DrWSBuCuAumzJdqi7QP01T+vdGz23PdW0n1IhlYSC7sr4m/fSKghpAJyalQxdGwgP/nv98f9YOjcecj6orRl5VVNyv2ev9//+VDO3PWqytqrYaNUaMiMiNGDWq57y/7vtu9P9/a+8HzqH3+R7HWitJkmSMkZGRsXqfY7/VOwwDYtxS1pqUvr/K+f3S/ouRNOks6bmZTtqbuMcoCiICAipG4uTtv+8PjwDTA1BEGnyE9PsFGQxABSMTQOGXjohVFEQkZSOiTY7I+DSIpJSKiLF5iBRUhEh5FYhsaQsi29qBSH1nEGmsCZEHtSDysEeIvKsDkd55QJW6NETN3k6o9m4fog7sAAIC+tSSUDb/S1gMiO8XGuaA+LEhfTaIXyQbs0GMAmjDCgh83HeGbDD5g3AD/1AdYAKCEQMvDiMkFsGXgEPqYffDVVUuVeeOXj/+3omawQhPo/sG2YoCbBWnj0RBsiC/kM85PDL0xLn3bdUHaP9STjzLbMT77htboUr2PejZIwGOnB78zq35jTsyvXeAl1XXzENPdR9fSNQWd0mXclXXdTVXfzcL2n7PF7v/EHZBAlmwZM3FKEoqHnT8+Aug1+CcZjfc9lKXAf/3k8oIznSZIYsqUKRYOSERLQO3egM2WG+vgw6rUee8q256qcsvLr5TyqJBm6UGDBoybKllSq2wxnrHnEzUsF8tjAssqJwfeeyH3txL0hXxjVnFLMGldWv7hU+rdSsebdFjJR1P8Axv8K7vzq3qwtW3vSidVKipMKcIG7jhpjJqmShfNa4GFWsSY9mth3EcFYjmGJCIKd7097UZPLdGNnJ5RWIlVmOdt540E3wMPm58Av77u13X4Oaf16sW/3p1zHIRN3AL9/i++BVow2tu71o920QQ4RuFzm+1NmODRQoZSNhhBHrw3vqQzlRMgwF5WIsy3LHubgJ7SeGXw2TmshBvzivj1HmXF47g/e72au5uzoM98f8sZycovIh3MXOwmA/u1pUKbF3b2gQKF/gwj6g/yUsQoyDZl45L+Jbn/DCaUatosLhh8UuEIGwGqtV1fhW39BW3tRafmTHbNnYg2Apdqxa+T7Xkde4BWI4NKEcFtmIHTqEa/1j/luHmsqTqOUCftZ1RjNocP61XKxC1Fk/o9HcLV6C+FqBajk6UAC3/YGD4jt8CBdz5YUcXlFvk/Zc24GDskY9OZoWNVp+C8wrzTXqU+4aeGakUiXY6NHuTy703tSUWkyPoHO3jVkYwNOpdgEW7vEVWnmN6CxuDx7Paqywb7mmeXMbSiar5W9i0lkG8rdm8c71VS42Snin8EesbShk0Z9iEe1BWnFvyAHuCVHLyHHNrc73V8sZdNRFw1AoGb/HUFapZadRkmRckeINJAJy6hkvSnjqbhfbyhgaA+inwnLnifW7sg2GqddpBieZpuPoUMOp4vsNQYWGLNXQM2TwpcKgfIrIlst6oxvJKOJrr1gZQxYY2anCxzzeolS8n+NES3DH+Z0V095k2FdqXczMUu2gnZsHh4SlKaKeNszZ+XfVc65FbBSATSm7Kjsa9cQewbAZiqITJOUHzqHdCNdMz6AuID7sU4A4EFIVmFdnMYsiBRE61c2t94IkjcHN/zvabBBfw6RJcRPoHfrt9QL/RdEi5P71pbsoAl4SXpS0+kY+71awhxS6T/cbFvI+fpPUQ/nQooLAP6MoxK8oTVsg431NGdb8BQ4Za8OkFn130+t4g8J12yV8ajq98LQbli6I3QhBZSwRwaq3OViblRXmMIk2tRCnQm3BWm0GmeD8xMREqQbfrGCGggMK+oIMdEqxl85g5Rxj7UbPJ0fE3V2fuMRxqoP7NBe7z6dJg7usbWGrRae+ORx2sQgnxF9Qy1C+Le4aBQf9uwH+aWCueQjbc3QOwpE55rRm+IPgcMegR1kN1STx8oopSL7hCijcowBva4kgRh8+/wohgK5PFhJtJLDbr27th5Ufu0m7U/HdODBYsPl+YQ7Fw6rFwBp562M2M+UF0UZ0BOyh+c3sI6IdGgtLpuyku71FcEnDkZbhC7qyZOcNdoQjqRJRWjRnnT0GcIq1+8Tpl2KwOmLaCS1gmZhWn+qBHv4/VGSDsH0BPedJ3mtQpakTwldRFUUr7oviAIWP0XgQNPcNiWeIlXlYcdeRsP+SDxilbctqcv4geWmHP+ILfeSTzg/l9ksfhRsM75ZWOp8o7twAoVCLl2Fze+he86cfTpi/szK/PIVemPlbdxQbP4qHU7q20aQshuC83LRLqziBicmly6k555hlbf5suvdMT25HJK+W5hQV0UJWcWWm3jCaQIQu7gm1YyRaqODlfXiIEnZuL3ua5H2xK/CuEiJhsQEd8Cf1nE+x92VnbqLJHP3ryZ18388rnKjd4q44swwu+G2KYEUOL8aRvC4wX5RDehwXkaTzZgRy4CX/08lR1+sLtlUbVz0igZ0fu2QepsfgjCM9gulQND6Hkw26nXVKQlB6UHPqw7e9S1BRgHGnZ8LCu6oRweCQol2RiKRzm+1BLoZhAW35hgjKNF6zctdvjN/pQBp9GfsLT1OEgOQ+72i2Epxn9uqdDxuS+8AauayLl1+tyL8Bag0zVPVSI3Bnwgg6dKcoB7x5KCcLW3sa9Pd3hFhVfhSrNZgk1RMma9eHQK8Emz413Ylwe/OTAYBdOq62mKHa/e3WRjZhdNuyfV3yTuhooGlrRzk36sWJrIYdwcEiCx8ygp3FKl8fUPD5HOku3cPE7B68C22sAbOoYBM17RhsN5Ep/hhfPjJNcKRJoLlOyri3J52xihJWxkG/79sedJe/pkdNezYsnzl5DnPp2uAaQXsQQSqIxobQoTN8QlzrbbkOo5nG4FSQMeHWhtCwW6O0RmzFyrmj2wi8Mx0cHy+motLr55lXZxbP1ecQxeTO1lGcZtWtEW5IsSxdPkpCr3L6xa9u+39yF3DJJgu8O+X+uz6VpS/wk8/3e2tS2rmeBdaVIipbM8WDTYwFy3TOWJzt0UnVDaQj8GzwskpIEz+1zfYxDSnjf3GIe7hKTZrkMe8QFIhVyZa46MtZNE18vQToYWcMySIWzJ9irpH7HqHNFOgGqcVT2Vqe8vVnGYpjhKVMAOw0R5x7ne83yOn7mjN6/MXfKSHF5pYV9j0VsNkXSPhB42n6u4qE6K+C0FvOjW3tz1fWpEnE49LhWBl17lErxMJnuAzNlTqw9oEO7xP/g3n2f/ov2IpaxiSU+opBXbG3v9FA9KNQuZxfv3GviWDc4Yx0zOfDJfnTAilmjnnQ86rpyT9WB13a7eX4zsyPbH6IIrnen+Axg/abPhhr8AikD0DV6PCtI2t5+x8gML/mHpbJPOal1ecEnQDPXUGI4QXsgaQXHq7jKgW/msVHdA02I6d33H/0I3mERnI8rIeVgg1abBBeflhEkkyyjHdyLUrK1ZOs53HmdgpZW+ljYBvFWRmZLTIbfeAV+1HbJ0mJPduENzFKlMDO3PRNuaDgWJoZrqQikcqu5qqJGT/MlYkVDBsfSqREikEj9IujChk9nwxa0pzzORKh9zTlmWoFt5FjO5FtkIMvESOgxJ8Y5osExWj8k15tFkUUVWicRMeFYcDZkX3CQdMA6quqFE1/iNJoeVR4kKnDZqeLW9PyoT1LhOSz3lXRLcTrBLoeK9qOBIUvN2lcg0UjpSbv0XLvlZe+ftBKJpF4slJd1JkJPp7w7jIXbndWUhf8Jj+9pX5XZBMyBpu3wTS//vSZIgx5LCDLQxhRy/dawBlboiE5QL8dGNyeO3TxkMSYYGukR20j4mpNSiaZNaTiB9Imd5r1WoeKbNaYRJMuek3vgjg2Mz8SF4MmoTKVuguSGSICfeTf/Ft1aMhnx6Da/ScrIcOgNVrFwkZg+9BCf+7bVJLvI+TSr0FEKuzTQnTac0TNWhGrTL4AX/ZBDerGQVd2IFtL7RS3i6uYHY28IHBsj5KfvP3n4Yqghh9iI1d3GXvLC+gcimmCRagWeRooZQNWAqFt7jEpLopIPf9MBgw1D2UabnIWOtoRoj7DukQfc3jAJgIsa6y/sZLAPubMpNq9jWJzkbqqb/gOvgrPgZfK4RGndfOHSPcnEWOSTxZkKdWRAqtwoOmXcHdjKfu9HAdCCxa8mEU09hpBzb0BcsRNvG1vB2AdvGaeURZ8xeDOu2sicSnHeUQB52L0qmZ9YTZcztexiKmZuXDxptSIwK0qlnpRNqESfxF3Z5eyZIppHQI3CT95oLIsvIpwiVPza0Z6PTANKTZPO7saIJ6CM99O1kIb4KK2KLq52JfD51+Z21NYFPeKHTWfuOtJyDlWdhBDfGKgRMcn18s/9QZs/zVAP3NHw38ugDSxo/J/G9YWPSN9KGiXLGM6GKTnoSn8d1ZjTmDf25ZJtOhImrKhV11vFPeIEp+4DO7A/LVCCL1anSVu1nSaTsB4T7slVKn7vs6ZVh/z9RYfk2WbWjzykGX5pVINkSw52BqJU191LSDKrQJOPEDPiN5e1/Qnq9l0hO/W7rsIwQmCoIhFUf1p6mAen7lBFxYB9oAoNyXs5QfEpBgZpa1UJeLs3chPk0I5sHwDY620HcPAj8/RdLkcC/b56wu5UdcL9jrZCeG6ha/T7/2ia+jZXnp5d5PXx0WKIshTmB/sEO3SrysLPSs2qqBw8zJRar0Qd64Z7zOAsL9yW3nqv2lY8t2uPO+pZ1lD6po5uXssb0R97CNevWvsjojJXrGI5t3piVp7gWvr6qgkzVAVeVVT+gejewU2cbXNEOCcRxtHemN40c1cSSY90q5cHrGhnZg3NI0xaevZn02QesaFaCKZKzLH9BEBYN5LH9qX6UCPAP9in5KViND7j/OgVfxQVLl5jW7p27UjmjwfN7Jn/SXzg4LfKNRBBZ1J/L6zFHWxynouNc8yDftE7eZkDjX1ZdnveMW6JF/kV0uMu+Bta9VoMNV2AV/ZWpNUgJCm9gZz8+iubOFu3BYyGYybmROtiWtzAh0OqYJ9qI7lY9YLOvhwJOadM22E1SWlLWphS/IpOO9ZkmndIofUf+HDLqvORQ9JQw4ae3cereWWotavFGKPUrft6vdzMlOhkf8KCy7RJXgONHp08l5TWVlXVVRy18ygFb9Q8tDZUJd2+8fJDpIe8uL+52hfM9r3VXCv5TIyl2hO06K+/dychXvfep2n1ULRQJAScZXpWrpmRWaXOmUjTEdp+3PQ6kIOG4mZbJlebop73uX8kqlSjOL5VtRYcyBXrdHxRrvUjYqoGtDMKd/Iu/0peUldkGGbrqOrwfEzpg4nfdOLL8j6B69s9ps/WoZF8iFVufHrt4+ujXTTNM9Kg/PsVD7jeytn1YoqFVnz6ApQM0rTNP6xo24rMsmRr9qGle9zo7+ousdjO3im/5C82umAufVw6CCiI+/tT8mOiAL3jegcmSmBKxtvb4WSkNUfQUkkdA1uWmzOqLWt/X2wGYzj3LexCOtkHkXRwOrtk1y7k5bWHYxa0/JAQ8CwJ9ltQwpmuKfa2Ay8MmZs6KfLZ/5tmVyjX2UCsiYcTebUYl5tRMcB3qcQYSpkqec1VgwC+1ocUYC5+R3gPwV3Vt/Rxjwk/3Wbv5aNcoOY9Qh5dvO/M1bdUAPfkzc9JLW39PETlQkKy/v8pg7RSWby/Zme9kc55XHlRLYena2kAf/a3uX4vhievzeufr2xvRdmPOHspfc9uUAb57WCbW26uCkrCBxeG4+UeQz3bmBKvCDRkGu4Ste+2eufArbQak7Ks7J/PHax/rlgsfq6rGN5smqKZukeNsnMpQaHlv7AYhgu8yU18XJETNT/nZFukv7zSvetkzSloMSGEE9eiUS4fx4brq8gEwhidA4mXOKkzq5cPnORLTqJazS+t65qgTDhAgn7vRbifdSWmt0TxrlV8z57ajMwjZTP7aVEv+ZIfL8PjuLDFEh31qfu5F3h4vGcowAzLIgvlGlwRTxY6zdxKkoEaJxFXpKbzrxPwKdOIsbE9/OS8eefNV2yxbDxcRdiWDsiNIopKNPpgWUf/1k+IiIJ57uT2M58ou6rkqt/1sgZsXSbWXxWe7p60Jd2iANrjocwkAieLxzUn2eSPxsJ5uf3SYBi5nISer7GRr/qhf30A/ryF5Qbc8okQ6jj271s+JqEWBRbXPqDUqSPhzgH8gnFbSYnkiIbUK68wtb78hP4ylTr89gOQ8eXbASM8GQCIqZXmyt3/kVhgDvNgwQqYhwiVhBKNiorYGONIePBHChDARbBwo+hFU8tiMM4Cf5mgwXl+LmkW4prnwr3yn2T9BuT5ZlCBIUMWBhC4OARiwKKwEA+Wx6xUa2MRgeZlSAWtM1JJFVyI28aDtIN0oOYEMLQomKtl8ULtydDQqSztIbm6y1lgMGyh0c6VKqtqvU1Ru+3tr/2qchx1urbzLhS65H6Rx55g5Xue4+SH3jLJL1Wb0vnUNCbdkrYx6Go/o94OKLCsQ+bb2z677Oqydbhm53hXvYbwTDcgFj3JRUBYWP52CnAmcDYX5pPQrhEBf8mbFw+BRoL0OpZk/7sdBKxnAs3Q+19pV2kSJJor21Qz/CEdHjrErMrB/1Omt4kthGE1BDAiggVALIWoyUhRLGBjPmsKbDQSRnQqoA+wAhMsLDQ0YDlCVsAsLMUxYwfAiGIMDCuBQFaQsoCogBmBGQF66OjmYMkB+qxkoBlFUANfRKdA6mFf42BICoka1Ajpetjobghb+vssgPU1ChvTb4lQsEk8ABZOs/kQmONKO7QnTCJtKCR6JAL1631ABg2z5XxxMfWbBfg+CxBWWmH74kT0JViRCDtODQVX40DSWTbRbAPG2b6wApgNnQRYFIsJk9b+SsHONgoxlhuNYCGowlE/mPTGa+gtFGqtYG4F/wN+zEfWnroQ0ziuxJRMjYMBjjHmVPMzhXvEpsQF38CLeZi1Z14nEokp3mx5TEW3erlGGGHEVD011qMqVYaP7y9xGTuvv5yf8cYzULItMeZKrmXRgAaHx66plGK4Mv2uYYBCFQpzhznZYBUnjoqA1YArOAEsYwxwCUclRltivcXCiHD54PI3ic5kIplmEvERiysV1zTTJRHgyp88cBZoS0sR1EYLA3gi/nTCpbMvegrHaWxPA+tGmGImcMxmzJ4G1uIoPJYrJRdjgYXnAQuRitv5urTVtNz7eDjYvxY2EilQkESThQozzSTgcI/U9JxOtBXPRNMtr2xeInQ5hLJZscXCgyZm4vKAj2uJYhA8HZ8FNlPmJjJlXY6+xvIuRijkpWzvBURGIjAFmDwWJGHDJEgcC1F8nQndJ+l0RlayO3HiMUiNQRo1av6bAtO5YQh6EazHdELT4wl0rCWAOWzGbOYG6xEXTW+6tlDIhJSD7l+5LNuQtPEZYIPSA9vXB6Z6W4gR9AzRWHNeEraC3gnp3pHYgI5tyC/W3kZMWnsg5Y0L4rW477I+0ny7no8drSLj6KLw8tWkZz7BLBkwLBnDCI5JxqyKEcs5lWMsNYkcNbT2s4A3SRwgvr6qLxMOpjaJyYfIj+tLgDPM5yUdzY2PJ/EnBgcxpgsOcObMOu8t9nIpTlBk4MqXdUdpbEIBel1yHLBelvR+nyKXhzzFDIxo0qnQ0PgQCMYlEE1AxR+NXnh5bggukpJ8XaNMb1mngQR6ikfjLkIJDoz/fzkEUFRCIET4kfscItTqkSeee6VNuzc6dOrS7b0+H8vEJlgw6rjjTTDrNhCKlCQu5TKpE2EUIpu7FD78hYgUxyhJisyUy2aE7AGiBUhKgXgLRBEQg0AiABI6gIQPJKZAdAKJ2VM2RkhT4FlG6Yuvnr0GZzVqct4FF13W7KprbrrltjvueaAlvX3qS9/63s9+zWeazV7OcvfH8mbcnyvcXytGADPi54sAlpCrXJh5oiy2QrlKZcolmGW7adJUWiDXPOUWK1duuxVmHcwCspQVGlVC8QCSmJW8KIrOkj2NopFkZk+rKk00Q2KBJJB3cgh8dx/VAhxJWcfzt3rihTe6g/XH05u3AYcYyYWaA5c9mpZVQ3mH9aFMu63qAGJ6l1ID1HSuddmNuBo0ueiaO67H3+fjdaO8FcJAH3ABGnHZUVDSsP5kjU8/zEOpoVQqcm3OkMArS508zF2tgBVR7YOYT3IB6EHx25z/Yz5zxVuc8j04Mx9nbtl3PRv3/YZqLgX26YEZo/ZrpTl6htNOauDmbta7vkWoyVJX8/cx1VMw5m1v59+/NBiP/aB3S93eHYAoz2Tx2XnUk/kAzPHYDJG0U/nnkYEhT74CTIXKsHEJyMgpmFi5VKqyynIrrbbBFjsoPxag++pSseO2ZeGdIZB/UCpz3wI1zoUG0zxWL01Z7xfK5qDk+69pnj+LQ44bUKPeOc0B+Lz7HnvprR7/GfAzgHqIg8whrzIApXR1dFCR3euESTLhluiHndKssOrBgUbZQ04shQ8kodWks+mOj+65Ns5j4ipJvVZiDY73ItopzzZzYoGMTl0AJ3e7x3/U3HimSFNq+RVW0Y4aaqqljqVB3IaYHtb3kN4+9qnPw+wVNDgCUzAV0zAdM7B6yvF2/wIXv4TN3twxB+6lu+byxUagbufmeSiQHVNGfT774bOhUKDIpbCgRGlMdWm0xnPtMTXkh75QEAWxYKOtdjvgqGp1GkOBzy657q6HRNPFF4wzEAuZDsz0IjJ5JS+Kss9WFQYkql2qSrRZloGNnETYjlVFVLKXZ+COPHa+dK3GFclaxGBPa1bqxJ9mUCxJMLLLcThASuFuaVtjwmNtumBg24WJXt5kqpZPF9Fv8AoWO9TqCcnjsrV3pHlk4ZYZU6BEdwsC+glYxN/JNunmyM0f9HY7EZv+NYoEwZVQfxLcb0XpSJgM2rAZwd/F9qnj4DLBY8qMebX+GCmxF4sE5kfZ7PcxJHhd0YeRUHI1zJ+EaTf14WlqTjZDj7HfOHqqP1ZKTG+L+8lzjGD82/suNZTeT52bC2seZOfMhd2PDMmpcOBF1sxkqH6RkzoH6tZIUyNdout0d+2nr86Ya4C216d+ORc63vx3r9D7/pjsDOj/vwErwTdZueXB06szEQb4PtYzq43lTsubDgg9NJayNYI9Fi7eQ0KfU5uzYEkgkSCSlYRkDaZ0T6KRjYQAhVE4BVMQBX66ESY54HGvr+cYhOLgm3ebr+7uf0o/dZ+efSsmP8YUMx5zIub5OBV+KG55whn8poRbifmJvER94tPzhd9K/CMJl1SSBCVVJS1NWps8/kgeaP1s8q3k27giV4TreexR3DTu/ZQFKTdFk7LnMeg1vNatwS/5+UP4Tfg9+Bn85/jbqdFn5JVsgSQYiwBCSQDCpWh3xNHLTxNnYrFowMwc+EtRYLs6jw1GmS1jpe2uuks9R8Ajs/TDedlJhBk7T+chzyrDdGhx26oa0pYTzs9FskdLZYaq9luDQAG73VUlnXyTIJwY6V6lt4oF7oqiJt494BPI/TLEfYUlRe2e0/LNIMIaPYSv62Iof+YO51tgYZJHz2IXQ4uD/mW4IDmkcQE5k+gs3ZYmsqV5DA8dgvGJafRG2mvEt3ZrwQioUa4luUqAvFZmBvQROMDc3SnDB9AYOYcASho3GARqkIGX6gaVMJeRNvWyuKJEo7n7WLTAJEZe9EULBtx9zb6oo+9Bq5NYiusWaaIEAGiLCou1ukGaUy4zdhikO6Xb+jhTAQsdarT99GdrSRTT0EqvxTZG7MrRgA6H1PYwPBQOwCAw3alI7qEvjKdBC8hvJ8JInHtGksy5WN84XGxmiawqGdlWY2TXFqMRbXOR37Fd7G8bDgoHM3LqMjfne4fgogp/JUoy3CIbXWyd/qLknnsRKwyy8hpS79Iw8MQOPJGH+FKRk8X3oOQTCogYtGv3F3vhJYTN5I+cJiUMncZHIWjFeng5mCmqjz5mXkWdgVB5Q0JOQe8KNpoZT24OiqRCdy5q7YLBX9dR8i08aGuVUjRgLhr+YmQosEalOrd1GIwgTpYyK+1AzXWMhhWzLBcBpCLh/ttFAh3cb5kvVL6AmkeF6F+a7qlelOhX45z0TSrN5QClvxvYXxF0G78K5X5AbqF0lA7U/jxkUwTdnj4D5e5CbqFh57L6IYndRNAdNjXKHYLchzraCvS+GNldBN3pByijEyH3oY8RgzHRhewhgq4IuIly7pD7tIzFGnPiJLKnCLqqhPUoG4Lc0jaV2rEmDOjW/oKyxCiUXYDcp3UcldgTanSrfPWDPWEKTsVv0uJxJuGM/wduSS+4XO9NbM8d4kGnaPwQhL8lglkgf5cRNbcuMBYSRmPiNEKNVHUgJI9Ya/1xbhFshhQ0YDYufETJVHJBr7+HBkLGS19Sxso62vV6xgICyLgc0gsBsz9Fc3gFPE3S2BAC1gObC7QHRXgKdrJE76PKjME2F2kdmtIw2IIy3Y4uHww2o0IXYKgIBtPVaBKmisFMdlUOebs6p9XTxlRBMWkUpfAKHDxSFhCwHtBTkHoDKMJTsJYSfYkqMwY7U6SX0JSGwSrL9BC6fDDY0gpdgaEiGCyjRjMxVQwGC6jSACwVi9nknrRDatB6LXV8plqmx9/WXDDCKpsAXg2WuiJ7HJMcfJOwxWCeV7GtCB8SF+dVP3rdEGvuTDfku0HOOH0q4v7eGFMTtGjFKxlLqonLx5FWme+bCieaeJJJxZtXGt4siCB3G+j32JiDuZiHTYWf35sw8mjLXPZyRx9j+WOuZpmJbdsrKxbvsDICqqdmoR186OpNLAyb+10n4Mqr/hgnUXyBujPYyatmNHWLEsDMyg2KKXWAo1ywVamuN1O+9Yt3swEONb6+PjG1ECmKbHTUJc99bnImnNWXhKB8PMoYoKWSn9RLWjr5WTXTMskv6jgtmxxU5fZy2xVHLaDlkyYqjVZImqkwWjFprjS00kUlMJu2yj58pWmEf0bfXawCocuAFwy9iQuZyU4yEWO1POW3YILBx7QYl3QK4f72wOpRhrTTJpwy+rEmUbnK7ePD0lK/ut92rRvWUpUifPQYa2uto3uyuuKiu2fETuqpvkv+PUhLrtYbFMRcG7tJVAfiNVeePg89OaNiOgna+iNM2NEIMjpMrwsqUzYsadFjSMy72QiPoiMW2m423uvOkOpb/SZ0cmN8dDH7/BiqQzsOUo+XczfNncVXFsNwAQI2uyNmwRxIxIfanBPCaGfzNbAFPEGsCkaZQR5GPRCegoDsnk1+59lbDOAJ6CrPC55df4bgp6NGGX9Uf2OHuHHeEDNBMUXSl1+KUDS4ptWbpHmWmhOaLlO1qaNjyGJwCFx72uSIuP1YRMXBn1FsOAydp14EjNdmEJbfA8XcIfhwEfTslBI1jgrqva0CDrfWe6q8SR3Ct9GYRyUwpti/+ZXwn34HtgPA5pfDJ8AF0H7fgS850D2eG7AQIH9fObAwLlBAB8yOgIDZUUYTgKeVoFEAM3DlwddkMxQpdlBt6MiijPIqjZ8quNBim9LsiifZO3t1FIJBcAjzS7+8Kzro8q/4Vt2aW39778hV3427e08+PIrwQ/1IPtIP8pn+Sf3kfzb80l46TrpMulv6hZwu92ekmJSSdqQDqSK1pD+ZSxaSK8njZC15hmyyFdja2Zn/ogy9eOrFYAYkFa0Jpkg2X6XD6pzFypyyMbGJAExQXlXaR9mFPSXyA6JHsIgEE0Ys3VbZbbj9d/T+vpuVC5SZQXsq2Qf9pHwMn/W/lEvdpCVVo88k8jwpJK1J8oU8BhjJkmSDAsnz+1jJOxs4VWLP8VbFcGzoH182QJvxnN990KRg+P3hMzD8Ohh+CkztpiZczIeuU0+9PD+9C6YdOf7YaxmT/9qvmPzZfuI0Sbe2pa9vv74BMPl1Mn1S0pbd4yELdAjgceAj4PPA1z311qCLa32dqbm7Pa2nb/0YxgxsN+2CFrKYJW0GgDrwhPZvUUeCTZd1MqgzvbvrWnNeWfVqVrs6UB8cx059kocziwN/pnaEpFbIU0vChhNnIgtZsmfBBZ/AEossZWUcpVFcFRMnTCXOaMtQaRnlm+dPMTlrqinGKjXJtOySaKWjjsVHLPeQHJHEzWl16pmEx+ppDVjlvK46SA0gg16TSWfI6ynLZDFaaa1LfS8yi8WwyyICtJzAYZ11rutByQrauax3Qw7MBjcxcotcPhttdKtPuDlFhU1um2ZRvuywWlfd40gE5HRZm92O2eN415h52r8ee8WJ2CEnXHPfM6+NwOkHVi633hF1nElc6X9XcBbHhctWPArwHHayG5xszYuJ74hT9dCzs2ABarbld1S1UAF0bMf8zU6542oKsXOVTY46rdt7k4SwSI1Ya7EyV+hVu6bdIf8YSaCIUL8dzmnVSWYFQA2ZHkvtcauQejkXxovQwSpiGY466JBdVgE94pi8H6h3wkmnVPtbjQZ1TvtHrX9N4QHxUdJQ8VIDaIH8KjTQCalkV73+yZnF2rCwQaCCajRxMHCBYYzc9Jx5vxe9eTJ4bczOUHhTa+5Oc8rjYKQoCo6ixUugVrTGxFEEzzu2zADOk+r8wMnwBox7DL6x3sWtxSKXKBMBOwTtyLPvkYfx6k5wFbcXIEKTbameFlvO2m4BAMfIih+o2zHbNSbA+sdYzGZ1b0RZ2S6tdT2L2/blMQrkf1Hwnr7/ZfHevD+87ynZ2kQv9Wp/DXflv/nWDvfKbJPemC+Dw5/htqDbE9V/ymaPiJkadMvfyPJNUF/GaP3NDu+2gGB1VWVFwO/FXE6HHUVsVovZZIQNeh0EagGNWqVUyGVSiVgkLGeXsRw4Hw/73XbVxdyTzpjw/96DuqwkAbFmWNDYVoD5+dNBJySUNIEIx/oS4mw4C/pQAtszPKVqFI/lCjrEbpFbE2EpCDp+RD4np/c25Io+EDUIByByxd1WgEy/03WLgehUGkkH1bMK4yepEToKqGnGPSGElZ4+gWQ9vVwvL4zHoJ7RY3foRrKOiRu+AenSKlVoeyIp47rIJyLHdVXUTUI0J+CoEDtdrEbubJN9lp1qmk35ECnqk31lKCcPJNrJDW1jC2Pe4/BJPA6Roy/+diCJCp7aHCfwJETZS5ulvygUQ28ImPkPqYaDf5HoBI2CevrwNzRPt5FM2edhgp1hAdCWdl0yqvs5J8XNKL7bkHvGDuN8JPzsSYWWTuxqnjm+0/VO31rU4HZTTui/tnySTuG7IjuXsK0AuCdTdQztgi6W0tM2ScVAFLGsui2RR22OJ3SOiOzc2dJUohu31gbRjWTtWajjGAQ+hlzG/lJtS16vbpmMYyESXfIFS4uIpAoTRn+KF6CJAs33nVxs7TIBcz5dJJeIIiGPE6G4rXZBGFmu4hHtlJHpKpOOi1whTRTIiuJQEoZk9GcA3mOqANDVLKftA9X5Tq/rsmw5tuKUPKRY7PMQ3EK57ewAboqTyDmHOkTc9X5mwpcPBRzKthfOx7v2beI96rjKfb+k+HgOZO1ndPG2M9pVHZcIL8oJQKifZaIS7f0leu2AEF0SEl2LDQrKYrerK+Pz8UwLIc/LlRcSB6NTcBCyziRUQEG6Fvm6pAvYjLyduLQFSxv3JKeVhLRsB3RW4lqy+sqjFcoCxidl42vHnPb5vA/wBQS1zHTB0pZB6gGMkvNOC0g2JHJYBq6NXFLd4RhibaMJXpchFpskb70rmoxzUxc6vYEiDwtlV9mStxzcxjbla+eFv+UIWaJL28Gyc2aRIAPaWPbgOtDGinsyHyLIGtsys2igJL88lcKSpisKVm6ZmlcqNVqJdZVMoOXZnSgi3CFoyXkyanX0IUElwF4IkgJ3O+8GRrFOwZ/CuQnalB/eknmrCRNQmODKaeLLPXKBIbtaKVOkIcEvyVvNLVkZ4n6cNEa2zRlQ0SaA/6bnAiAEOhYnvBbrA+odwOjpIL8AC/wCWPoKwEz3gunWBqveA/wfGGgHoQ1Lu4aHBJGHWRHPCCQBrHSqvX/tLYu+D8EflxMoRw95aH5ME8M0ZX8CI2BWN5fV3hsFUaqO5Y97YXWJVvqkciKmcy1mo5xFp9KTIkQUdQBYpXmQkAfHSuoFmK2+NVXEqrbCj2ClnZkNZkCjohqMEjD2DLYMIG0zCLn/WU91dWd3jRhaU5JGnDvdHACRYY7pVtIddw4TFg2Gf6+6V0e7fB5JTRfMIYIqVWiSBx1x6if73ufQRg211iKpFZAEKyFI6ehwdyrE/d4RvxIsl+FpENcMEfQlmYV3NB8JjbmfZjDWWk4itQajBk+jj+11qqt7jqOJwcAfFAAUeRCnQqYeQrTou+zjmrCyg2GNA8KceWIW3gnMtXDJJlyZ8xEzujGvOWwI68t2YYFzXk27yBamed50ka0DkDIYOwRve1NKcBuI7qD1KGVb2Hu1tgmd6/ZC0iqSZqrD3gwI0QDeHBDEO9RMVrtz4dg8pUUORAnxxKCsvOzMubeEVKSyOYk2LojrR2xarTQDmtGq2eqSQMe8tFpk09wwYE10u1OWpI0t1xzcrQWDc1nmaUEVTUfBioBkVoDngaTF1O64tqibjWw2YUTWNev60brtcqraquVxedvg7viO2SL/CwT+L48I+wa6WdoGKzws6388+MfrOuSdb7iJ0yMSNHjIMZUiK6RLRDp/o8lPq/YIly1B+a+pKOaB4uWXjBB1gNC+uYdQCcdBx+Li15yK82zFWbfQAxroLj1WMHXlw1wcgovfVtzQ3W6pvwQrudLx9I8VDpZWPKe83uPvXS92fFqmN+v6MVWyG++DJl8li1sEQR+liVyrZwmj8wDklHrO2Ht5kptJIHaOucZDhkbYjWaggMEhh4Q8iiggp4qrq64V5njKu3wDyDuhEEf2nAszkqsH80WKGAgKYGQFoJS/t+DQ3oTh52Zu5GflUZZZcLJc0K9w0FsHpltRgaxyMptIwyw1YYsb7JjW2JmbgPNg5DjUPHIIJDt4vLI0DDI5falNvYXdFw0NV1BWtixXWEwR8CptwRXSOB5c2T3j+SuPyYru2XceNNLaWrjQlqlG0Wz9Q941q5mEXG4+r0AOC6sDVyvZrwleCubUeBT95awas1wazaMc40DywMjWS5B14DjFQCCkeJlFRZR17cuLmSTmymIRb3LoaXYsrAjJkicojXAIv4DTgslHtxAHvsIQrFrEMnmtt16OYorLTIUmKEidYeKVg6yHQbOtmXFMktNJ2FnamOU2VbRBww8HsGEJ1mbFPx5vtrrJN99U0qTvkBg0PEMDPt8RSoVgz77i61xjuIQ+3IFoZIYXvA/Tq6rzWPly6fS07Q8XO1eQb1eQ8V2EEqEB+/oVZoxwkJn4kWrM+rrG+We1gQi25/Q69z9mG+UvMUdRwQo/3LkJ1UptD2UB3DB2pomn6+/nFQs7oDI9f/4qLu2qZ3gTKT1P5LCz9Qpt2usy9e97uUS4gO3Pf22q1cueAui4joOXQVBv+mrCO/+tM57rWhMb/XXfpZDhNG2ZWsZH9AZHC/ERweArLStXL5kq/EIeUGn9lU3joR4YDzLodN1DyBv2K2zUYS9KybvlZ6DVa1Kj3EBvWWnb5Qh7Xct9h7uI6hXSZg9zeYlr9ee6yZ8HhYyEnHCFU44ZCPomToIWH8wVRC7lRG3IOY6bTMbItewSzCcZLcrxBAYBCx31cZ6gJsHFi0UJeQsHcwzQ/ZyHYza0qPwtGE88EfIwhxzQCAV/qiwnHqSSaNMmDyiNyMYpgZlk0x1fZG2EZqNYW31fqjDMQOegmSFaxwkm7zCumRWxdIArlFAsaJh4GC/wkemig6XQeJ/yOoacx8DfBpdoswd7oQu6BXuxB7uht3wpnbx0jOUVED2e55IfZ4+Qv2yBedwFwghlufgVTpZZt9SzEB7XbYhtCMgiceTSRwy3MzkVil9Ccw4cJbIHN4bqtG/y8M3skatii26Va6ccoGEc+s9SQk6dtjkwMiaoo0lOANki+hDFmzNAisOrKuvCa0882cgSsgrGDl3rUJrXxFcNS0V7Lgbjfi+f5e8mV/rsh8bzW3DZGFvFJxz9nym3peZOvBTcCKzxEGfcST6yWcwJh3Rnm2+PeW4Vw0kuw8KJd/0cpO6RcahraavnbGZdy2R98wUYksotzqMGIjjqc1wh0DKvf7iMI/IHD0qqV0ZzQDpS8hp1+eVSwT/pA5rVFnoTiBZmQumoXtWAQooDPNCyrqvTom0kcbpejfkQQSbrBzruKfBDhOuBCM0wFg2HjeulNykDy4Az6Ifh3ITVR50DYP1kxgNuSFOCNm4vXuVOzrjjhOdhqlIHU0YEVSrHOlBWjIM61vRJsR7DL4Di6QyGV7ywa2L3IZD1HrQ1XJ19iaN0QX/N10L6sbQcDmsKNK+XTH2R7pgmtbpd3IpOyuExnZ+tQm42a+901EyJlE17g4WkMBxVCtskfOSGPRkZJi6+Uss1yMr6ynfPeAw/yIeHkGvSR0GRHty/X2XGo31Jc7AmUebh6qWeNRpykIvPUmGb8cQwSIhhJlWQZih3ek7pzNKfKt0PhJovlYgxmg0nmf35lSpr0nQQ/uYUCyjARq2t5MKa412jVUljH3Aq1rInc66pY5DRRto3nRMT8DOw6pBErtutcojpUQpPdEYxK4tn11bcCZ8Vykp0CB1g5arjDK6NzXq/5dS7g90bWoRboL91pGgsltTGFyMkvbRem+8NyQO/sGZndL33WvUCKFkSJQTcAPEvgf1SwZQWkD9GGi8XDQKKX1zjkEi2Di72ZNozE2owQqPaYJSEfRaB2I9aFD0ikz01x7aLbuuXNsvnyk6eGOSdqfxsT/ZR4c+uWYY62HFMtVZIudFifimEhvo8CFr0uzWn0tO850EP77+md/tfdOvcX7UlqQlQbElupr6BHyPfJ8yi3/xQKEf3LDM4XFDakKJwMM3238a6scf4OPGDdeGoznwlLWlRDhilfLlGOGsqlRL0siLqNz8teCf0rchI6Izm6upIUKsFHrVqcDRoFSB/A8o2Dhe2TJcTP15fsqLBHndR0CvjERFJQ4YUo5ZQrI2MYwEmLTANkOfhJuT//Bcce3A12Bz/6Gpqj9maCS6LK6UwJ1/+YSqe4cUgXxl695Sl54FsdHeGL/ebp/67c+zwvcJkVfSpFV0YS+SVyZJ20Q2ZaRdknJT5JQ6cMxyMFbkfvP+Um5XHhe8JfMFVHxWoflTwLitGaCPIeWKy5ailaw37KQ7Jj3bTsF/4GFFNMBD9NUSVgUYGfzz31CRleunl8npCY5OCvA0CvnmKnFMES7bNmeCVtjqnc92VZLapfPRCH5rA8golED7IDJWagIEwAsoaWi42mqRlZGKyJFr1NCpes2Xi941MrHvWm7jr3ZyB5c+Wn8pKIQ1RyAHXODPBLmUb2qAsswmRNCpuYxSQoeFC5rmAHmZjXbRznFPSDQ0G8lK1BVpzQiC5JaNPzSVKyNCjk0U65GQqFh4T4850rTuupzvmi9Hcd605hZsy/tvgcYlDhsLsl1OYIZsW5cM3jeNyKUhS/Y+muD3eR88AmazMlOw9TPR2B51YCYpKHOMq4iQTNKriyfJ0BZeQVX8aBkr0hUiL4uRI5C46chz6Fgt+thjF0lQ586VIFkbtVtQ/0ZQlbpBBs0ozMLUdkLeq14vOmLEmyZjFumjZKNLdbF0/k89eM6y71lUFQIwEloDRtZQFyi2cxwtP29VYHTU57SmjMjF46B/vv/J6hSUgZo8yPGBgCcdLF+Fi2K9n2OIUgxopVjTUma+iSswuNmIWHWPjzjqv2BvkMbbiuO4vDJzhmM1LTATSzUBMlCUaD3EZHafSq5wx1YCZHojB97dOH5XZuszDGy6ZNMR23W0ZuaNlc451p1E2PnVdpRabREUQKqhEpNRfeD0kb7CoxT4DE21SIfeBLgch2vbWlRw3zCuakLLUIvPZc72O0+4KXupbfMmLwhMcCYZ75OwruUYzldvYtTMYnAVo6UL2aqBK5vfJeqflGZ/5MI4zO8N272J+CKU1gzAjQv9kVfETRnpf0rSyT0hh+G3WplNxfQ0Ih+pKpZRuN8+ceo5iNw2SW8TFlfsu5/qXGLJqfu+8SRiImq+tqwZrSj2a+NkkqblxXCkPTExb/8yAH/0RnOVvjOoeyFdZgi7QggbGrddhSuNyEuufMMgQBVYTFfGZxinudWIrVqW7ZCTF0Tu7ryu/hTr8s9gDp+27SSOcXPhjcFFMz5xCt8Q3ex/pFH0VGBZM5uYltvGaA8K20u/PunSYzzu6AYdkKsYJUkbbO5EW0YTFXW1TUN+50BkPHpZ4Xzz0CWDpw5I3KyKvRbmQAowEpOcQx4w7YSQ2yV2kJRFMBbgD3OzeSx1HGFOvNkYOrHF1phkUyGXVgXMaBOtmeILYHVeAae3DzxC40rIub03xtrhp54sIIPmsyfRc77mJPi4ekbqXVKigBuhvIKxyZS3sCElez+WbF7raaiQyXbQekrYvPeqPQk5G3rw/7Sf9RdPTfNMZlWwZkizD8BukaM91v3GHFS+Nby0Fm/ed2rCGULIH3kQ09czdbxIrC2AwFu/V3GijjAcjg/mwazDsd/uxPQxDGIwQYyl/9qrotsvj2kcQD9xO3ZZy4QsWz92qwpQbJtBursnZ9FsKnLAjue0hs2buf8Z2+6MNWD/04FERPKDjQI3N2NQcGFX5eF0y3u8PKqepoRmjp3dEl0auudy4IE4obSGEmsiQK6+l05x5bERXs6aLdg2wGm3W1/IEJ9Ft0husPy/94fW8jXWXRq0fCur8BgHLRRcuiab1GqfDQOzWt7M5RAJMBGfK+qBdCbLMFtqBMXfOVYUyr0gZbJUfOJS7DThYup68jIG5rDmyqYrbt72DGKSouwYvmesnn4O6lZ9PVnN29up8+VNbYnMmtVkYVFzT0avkgNbGM0OcGCuIV+oFGqdOX/WBIy0mu8RXBFdR/rL+x3wngbAz7aOzBZ1sGpe229oJeP0IM2Ox40MylZ6RScgqklbh8M+fi9n1khYPQFyJSSYv0WVv4P5czQJrekN+IxaqJsW20d+gAjQaQAUK+vC55BtBKBqjlzI82ehsGmEQtYPlMWsggBHesIXjo67RuCRrk35en5iAC/dWoDI4YGN8WIgWl5cbHcUCa9AF9uxVnzjARqN7bVHmgqGF1YH+gHuqvWQNPrdj6jV2cTFYwqrVDgmNUrBKI3/zpYO3mOXXY79yxH6V2HSVtjCTKfK9Gf1ztHaWRF6A01z10mnxZeLi81LsPHsCwTZv8+jnc1+elTUJLjcrmmFWucSd5V808ZoAoPcE7mzA35XDk5BLfdljxYQ1nqnihOHZyHfIlr+2IPiU2ZdV8V0EHz/rMNncE2J7aZIrqdQunnCbbA7QLGYtLx9vMhckwVPUNF6+nCU2Z/NmE64PLFhV9o8fM7YU5OcXbGFsFHE3GM8/C6NxwfgBXCOil/GNW3AR9sT7Zvaq7lpGbWUPyjGz/QhcXHyAyRNUeOlN/t3HnEu6j/s8J/uye1zH9/naRl3iwjpw++rZpvCb6xgbmt6+0LR+zYVw6/kVeT2hNU6BiXNluYW97ZpOZRXbCo1PFhkR1OA6OWWM26VzRcJxvZD09J5z5PG3BnFvQCLjINj06kuY87QZdevWYIKz+RJr6qMhQC/IX19gLnRBISvGw7JW+j4ycsE8aVj0xWlpF2gR8FpK9M0oOU+jeZoL2FN1KSjwDEfrSC1Z+7JeoY9dpGAr9HsqYzqa3OlKibeBk147G8EiCb/Ous+j5+9idwfqpqi5lXJp+VKVfzWu06MSibPqToUgYVEnnd5ZtA01eQKNCapiVMGYCbBR80o88EodqP05johmsysl/Mzv8xcvKHoCfIl0MaAsuYY7qV0xEM6ixGjk6GsJkoOLfMWjZdysvyzzy874tSYUJEMmRAsaEYgMGlGtkhEoTS/1M+h+0A6QxnGmQX5FBX/QZHIwwVqSKag2AshyvW7Q4UBAf2SzarxtIOoyZOhRF6g/vOmj4oJxNok9XlD80eZxIf22qkYiqVWpGDAQYq1EioCAqq84xtISC48HADkcDlxavAIDtkpIxks2+gc5i9Nli9k2Yb4hB849SpfQ6bQYqoyJWzFwPKKK1LYV37yXIwfviu4eBI8YfAe6dX4T+gM0iRLk5sdRp/m6QrFOIOBApW9NJNYB1kBntUsurjv11ptmlLwQZ+pgLU3GexgSwC1XqjC5BQXe/pCObrC88wG+bkmzxzfcxmg7bIXKzvSdChvDh0Oqe67/sVzcLdSmxN3HGGKVl/88aB1K+IhnEGW91NDU21Klklc08xksXMfw0kZQthnwte+oW/timWbzEy6ZX8irUkHSugbxza91qE0P2BBIbTVpvUJgJGNjijrgetmapE9h4gxtZQpMDuockx+qzHKxBKktBYDaUgkilqvMH07qHKBcgbWV6dfJrWKJxCqWn1QyFehSKRQungoyC96od3+5r/dGsR6vrMnX67YysVFTtbje/n1b5Fu8rffTuwedvMW/NQl+u+HVyJovRpHr+ZsQgtx8//46OpAn1HA47H/2Hf0vqDR5WgNOsbC6/9zzYoQch9M3F7uT7zhzBCpEKJUiEr1N88JrKchS80uvJlc3h53uFQ2Mrh0yA3V7/7ZqS/WOEPWG+GdJJh5naCj2JH8YltvFcqVFDO02tiAZ08HaJbUBpcRbz2UU45qXddaqhGuUWONE3fC5PX4PKnHxyv0yjbi6VvDB52qjAVDCsEoJ6zTmqLMZyx7nGJwnrA8KUvg4XX2p1C4FtGbHfrleIhRYq4rVqupigVUokev3O7RmQCK1N7DAfrGBJ+Ab+GKJXgDT0PPELCUiFYttUpXK5hekvzF8TnHvLGSr9jifHBBVFQCbl3fWKkVrsXJtmq7ay/rH2RK1CZe98Ebqg4ku0Jen2GzBsrgqI5eV+9RXniw92WZVQlWYIcFtcx7FcsyDBoFbZCgtLaB+5MwCyTYzAIf8SBxWTg7pcJ5WJ9fubtcnh2012MeNX/ILc0R6WFMKmGAhXQJ9sUHD6KkSI+a75W5xUkmW2wbDQbJK4A2UK/T1SpyGux0qLOWDclV6O/yk7WAZNakk2/OlES1iblU8DIIxg+GxUvl4yIDB8ENFRCnX8dSQUOisvFNOubbN9kKnvf6UvO5AGW5/WeW0fCNiEB7t3nZV0RWLKkYTs0hl0REaR1fUqGsFVT1/6ehFKqclxXDV8u3iWFFMzLeWaymwy6ayy+HVVbUCde3oQFpzYOyTykIrCehecdX7/GHQCgIKPvZPmKcvOVeviKyCLfdxqhoJxK36AfqhFeAIG6Cj0ImO/WGoLs7a53Qv/DO+StgZMHyVCFIDkZHSwqQi7Fvw1C5DqNn1HEADmHntFofe4b4iDVehOo7ILSVKRVgdGxrWP295vsPXceWL4X9WAga5OE2slyskl83BOBfT+cDsmUjnasQSGFKWAif8+ZLqjhp3uoOZpivQSVWYDSgFK21dDf31Xq5ocxKPDVVYo30gO6lwyuPjc89anj1n28enWvMSLPHW9c5nPuEKHPNDygMRY4Qy9UH/qWPpK5f8EASPD585vuSZE2jTuqSm9URri20gSStB2ZwsIW75JfOzyA+cU8mZGp7Zpw7Idwb16VAQvtmv9qd9t3/OdtJpSZwYFk5o4zbhxKRBuE13Qjg5wbDmPYnp6/JOe/T1C7EoYeKj2DDlzW2sK5gAH3/Bn7GcmbJ5+v+PW05ZyAfjII3dmG3UOCAV4fir0Q5K6bcEtDq1uo4muIW3xyoUo2ByhqS3E/8bnrCTmP7Nt2uktkLep2XZnz7UazfJsjbFGY/nJHIyfyKxNaWldnSl7COx3foMWMyBxEUndXuFqy56L7AkLJ1hkXdtcCxzSxz0Fu5fjozNViPnLsg2gCWCyXIeJM0+FCcHZIJsGjAldpqh+h+GT98lMj3lfI2qozPjNpX6KoV6nZq8a7eGKhqK2a/8XrY0LuVYnBTkl9ILnxD+ZV30jUDwTVHmX2OfKKSXgnzJRfLb6cS3yeS3ielvk7ZRfyKRfqRSfySRfqJXgHV/T5z+Pb1QX87XqKVSrVyYRQHPi+3QNepNWvK63UBqxg0q7VXqty9OGl+YTIiPj42NTb4+ufH6ZKXkFE1y6hWg1fRzq0nui/wdavdYCRyu7vUOuVlCQHoqa5P0Bz4+IP3DFVf2x+N/TytAIQfH1YqVp4tdOM+gBdpcI6mBNg9aPJvRcDOI1PrDK5dwloRX+rmewsLmzh4+1Rf5euu+A9sE2/Yd2AqNzY81tHQvYS1p6cb7IntR7Qf51vxrFrTIF9mJqr7JRXKJeU6cb9AGbA5KguDmlTa/sUPY0fyns1gYaCq3FtRXixQddvw3YFL2dGnvyb5sTzbKTA+TSYsRSXgKJ7HlXC8CuncWSvRq5yu+V52i2mpWaqS23PbPc+rva/9D2y7ntxWUnSRIgSYzaevLF3H2XBsjGAs3czE4JI6V4+u/LrILpwgteJgDfBfUiwSQdnI60RbYEPxD5Z3GFQ0+oo/pNEYeTUKRfyKQXi7FSasQcvSVanclpe3Qclm1dsug1efjMIVULavHJn30vcwYdyA81MnrDA8GKGJwFQyRfZE7UJgtdkmIGn3g0yPEhu2xO+MmocjdiFYvFeFEGPYlyThte0FjKfh6IEcI26WCQtMZV/qRknXuoZo2VTiPXArYlV4NKuIVqPY7iSjBVWWsHG3MuwtdQ5PRa1AKglu2dnxypW+g2xtCbb5Q94Bn5eS6cfz3X05WvgjgBPEzndzpycnAMhFuJWN4iIGriHcrrRnOwTENTuqPtmtQ88mFydW5666BPyLNzyUka9L+pv6wpe4UG/cEu4p1HUNhmsP/2NFXhnBpQtOfjwedKGBscgU68Sv7GACl7wUIaHr93TeEJdHDQTiK4o8NnHaW02B3udPeJHnkmBfPRmawrP12Dl+KydktRqaRA9ORilyiieC6Z4ohluGCAU5drNJ7kVykq5yERCCkELaWAABqA2HI+OMiSAP7bbk2eLwa46IfQSP1XrzMhUaPb+fsz8JmkOCES3RgDhGBqjLDNSc9EQ4rha0w08Bvq1aCYKWyvNXAwaKMZpehGMh84olUf4HhDZkWWaSPWgQCjpLuaQzGsqrdHhQXGjE6cIJeGW0EHpnOvLdQ5pKxmwxMuLx5xg1Y1skQcqu9v7O7BVIObEF3TpoPOHj77lr1HlUxVAa/Uv9H3WNlITNYbqNVIjN7QyE5xgHEGj5Hw8dXUpaC1EdW5Ici6kMr8iMdOI/N48MPHJoTR6iB0adjaetylBgo42uIyAy2xTb+ds2ZX8/HhXd+bf2G+VY8yNfIzJguZx0t9mkUrklG5pFgBaJQiiyiP+cgao3JXefkBBpe+RzwL94+19BbEKWKKC98or5WIeACeJgD9BcOnRklrz3XjjbNpjneNvss820iHlv40g/CaAcowj+YBZks3CXkWYyw387Z6z0qkHmk99WT2rzy1DT7ktx4tU0uNKR/kdhu1DVecAqm8qTaFCNegwONYnWdzV5rVZk0XH15OJdvwBvxI9l9UDOS94jpAh1VMW7Y3eEirBqGh6PUG9jxwGHj69/m/BJv9NBOuZw5no61iRbl3BNzFetOJo2d9M1aKfvWzwUaTyQ17eu2JAmIdxu/rGnHMu7ISDj9/9G/Q/0zSUtnKo7+depBaOj1pOHXaTtmwdmCm9H6Mu4/Q8zRpdcmmLuGAlnmdGQem0/wB19xiejoXsRbhVqcvDrnejHYbaIWFwLUrZJXfa85VLVNrKL3Lvsu030R34pI44pGL9ELYzRGVk1e0lOrIDl9MgsFPyiwFlyzoidevY2+Mq8ZFbwnlLh8gyZgrU/lA5izfbhsLbK9+/fuQF1vg6iBbWB2L44LE/rphvtPM1Q6ubA8eshD0o68ta9z/cvel5vqO4KPLGsvbtjO3F7R21yobeu8IeMZQJLWiD4dm7EuBy6LkbJ8BahW5Xy9bc/hLYIt2GEbMb/ri3Gkloaxj7p4vv/1Rj3qQz2OXcj/xRV7Cno9az3AXcpu4+7vdBz3HVNS6D68rhi1pxL4Hp1pRN86fynQPD9O21AqdjjzKirphqCqGtg0aPWF66Io5XcAPQ+s8ocHOl6lf6SLIkJxL4/PDHrUyfZt5uAficLV5Hc5hKJQDx2Gh0te6PTl6TKpzDa7HMtqtAplAk5kjGsE3GccF/D+1By50eXMdX5c5JyLN9nscqjOW9VNVsoAeenLzpOPHAyxwlmmEVT1aAPK8jaYbYQehxQOK4+zwzzta8ZoTsaX55mZN47GN8veL86PdeMSdTU9scLC9p5VDcOiemH9CrCccxVjC21mzFBqPLkz1zcnQJXg0HilIO/1ZbGRqCid1ra3V1UR3eHRzBGe3cor0SXmXG0i6cQkAscg0pDUZqk4F84oa5LiRaBQKNIqgYdYVHV7fXVlR7WbKFPASZddiJWm4Dv9JUxkHq1usSlUFk8otIr/hnRH/GuLac2WAh0CZnxdrshISgRqJKJ6sAjgBX1CaQmYu4+m15r3cLTNdCzrYvPogmmRdrBQa5Xt8qzu3fL795DJKQfhqgaGssxkBRGrXnw7vrVVu7bpt6kxtV4LYiWd4ok5p9ElZ7/IQ8QxNoPNu969hncyHPwdrXtAG3QYGNYOQxqBT9UVmgbWhXiQp5G9pisy21NpsGSfwDzDOznraItfQ2FHXumnOnCN3jyOlYfkfHAnVIB4Pm/gpxsWgOnu9ZdMpckbsxiZxy6Y8NBzki/lQqIobhI3ly6gZnRxUw2OeF3xelwoT2rnG+I/JhCTa+jmvWWccYbi3ThG7CfnvuFuJJJ/I1Nu0fJ49pSIc6Gkb8HgOUa8t3/SbVzJJdEzLAGqOxXXlJrF18TeRxWfdqbtrhw4ktSScwXN0aTWbC5Bo2RwrMJnhGd5j9gLtroyxTdG4sVUMTz3PokG7AdO1pUdK/2hb29bStzFoYmxn8Y6Wreu/nKBVSx9vnePKTHin5/muGgZX/tW/JCThtcuMgGYviLIiGwJvrBY6dBkW9/elLiLu4d+mhhLIWwU/dLGwXVaqdXY2ZaUNnjROtwOVdTa79soWqRrujdqwbkmHHx+Rg3h+tC3/5Ji8Vdx0n4s9X+PZpouyurWzf1CisP/kiJb7gGGX3EviKjVpL5nO3L1r1jcEzhJP/KSnYkn14r/bv6dkQviAoo0zrlp9E+HO76DIlZ27TTGI8kMWjST6C9ten76DjRvR+Lq7QmahIS42uIkICmhd/ttze0EPIGQUJqlDvOlKmSi3CSTblKGwUnkmzfOEq7mU6qEiVIpd3DfO7cESkTE+UyISKAISbneI5/3IVP0cDLYYBbJlWMs1phSLqrUuA9MsEWsUJ1k0kmVQgzNcGQa+T0Djz/pkwl4gHaXSrlDo92hUO8mfLLZh0I1UCnSSdo9SsPRjn1S7iV6JvIzEhI+zigr+57N/r6Me+8RLoq99ikX2X8rd8e8oj0Ufy/ziEQy0Rc5jTpfPKytZYmdMqJM7KplaRWH7xxW6SVinFgvpvkiYygbSk5BNNfpUHLrAozIOQG5f3Ht/mm367v4hWhiCw1uVv35K+NwQc07+Q0/2W8CdW/lVOV6c4Nv5dTcBH6yN72THyzg0o5oQiViq4DAk5m4w1q7hKBSIc1M8KCzzvdZdbG8ECI+XYQTuYR21GKFXQJ+EsciloeMlqKtvYLCBg8zqbxgRaQNG07BcvKpyVMRH/Qw6vuFLakbixBdrih+JIgGU2OL7xKXLlgi9E7+E/FBesiH51Tr9tK//zs0czzl+eMV6f5pj3JjzL7tI0kjAvreQQ8Y0PissK69uSHqTEMUlq57fOa1M66GGshHc6iky6QSH463vLGp5yXfeUQLYCxX8v/sOKV6J7n7T+jYIPInKcD8gcGqwn5x7r6f8R30IVr4X1l4oCFAVErcdWzIvOXBFg2skOHksJy2LHKHhaz/xlLPH2aD5rEHY4CBGuRZAkTAjoKH7XiwY0uRFxxxDVihTVWaKt2mlVa3rl1w0G+wVXla+qNaGCgjuqGh2+XXI/7hVgGDj3MttWg2LKzouvMsP7sryg+s7Tc53cttmtkheJibYYgn5AGzebzvelbKZMSbuOZ4Qt3pVB0Oq4AJcomjlgXID985rIGkwhQhJGUobrsblvVmt/cN1jd1j/YPN3NGesF63Pq0BNvmNCTBw2L4FlomqmWtD1y6gFYNY5YMFHJqWIayJopt7pbTqZcXr00cfIUN+Izur248uX7Deqcut6f4gw27N5Sfz89/odQ2J7Z8O4Ulx5jlU6TAAi1xzz1luY5u7dmKzm5foDH3cm5VPpcBX7duvBacWnTgXs3oe6b3Xe9bxAMgeODe1KKajdfM1yV/DCOa9b9rUUv7pntsY6vJq67Nr732riWbK95VZF7i0JvazcaaUlPGzRdcNUzdPefWhI+2dM+/bCIyMo+9bx1/r/bM7+ejwjuvWa+Xjs5VzGNTL0QdW4DyGkveYeOesaDx0TmKFPtCGwWZXzlsTLDnGpy370wYgWz6CTuzbHPYB7c/wOax67evY8wd2bJ8LE19P4XhX5o6YTlsOTGVUv2yM5H+QGWtXNZftLRymZXzwDbKGRV5va8cZwRU1nKmKPFeoohZrrJGDzAqVBa/UKltDpv6ZgpjDx0jyXZztkn2yDur6Z9vsXns4lUwgVHlxKoycqAX8bHBfCfJY85jgItoN2UQTlruPtEZCgSMJqgzdGGqbCGrXNj5YqcwN/v94+Gc1+exJ1pT1B6NLRXiFra+2CrgsFhq+uffmUtMT5uZtJ4Xe2LDJeNCosTN/OandS8xNYh1kekT+ONo2AIrDXl/vfEWCqE6mbjNVGSRtISlopuJtd1DUQ3B69g89kFocaizL6irUfBb4SLYw6wFmVWwx85AYa+qWsdelGGHPcyZuXnXC/1d5ysGLiB8swDwBQKL5padXsbLLCzOyoxHgNfAja+BgAnzqK4du++1ehl434xH6V+02gSvqUiqQEDY9A30gBHNEq6GFa5SmhZ+aVo4wvuWNI+De02E+MSG/t5OvM3WgxKvNJZKPRJn9Ex8lPXlWHonhRDZ0tNc5Fnqp7b2D/7+i8No1gCw00IGNG44AyAaPDA1L7GxZ1nf7f6upTVVLbUIUcgzHnoEoFqqv786vFIF2J26Me4NQQr353K+yCxUp2tMYsGGSgxCcn5n+5sRqGck24h/sZqaqysz/NBqg+qQkE3TtiXXiNemyBnHBY7nNxh1OepxyYgrshvw7j5O2oN2Alti+TSodssI/oGGxlEb/DDJksUFzGoJTmZUGowWQGXWcHH87wVsc8Gr+Y6KQsVc1VzFhpO4jTNGLfzAyzM9catXtuS1eJh7f87+XEA9c+IjC+ZDF/dbGEtbDp67cTdqFkLebOe2zPwhXj+bn7xQwyn7JCX49XKeRyoDVplCYBZFV6Aq+nVmZEWu5QtFfLVfqtUXlnHNnBJM4m1u8QUaW6p+5d13lwE8U0eZWqoX8hRAPjyHXeKYq/hWTmnOcW0tgYqWOXZFqxV6kVAFiCUKQFDwIYd+M7G2a2iR1F5sBtseigl19ccYk3tvg5fpoFR4wj3R9Yxk+6jm+qVeJ2WzklOTE0OFZTTor6+hH8bD9tbpYw/GRgplvi/iS5AmOPbmuqrxEj0DteGvZVIZRTZ2ewwwiMU4iUFE/xx6FaWiC9+mYcnlfXUjXXlqAC1Bkn9j5xLB5PVwocWfXNS9tLI+1be8qSEbydbqldJE0Mx3FWDJGWwflDdqxkc+2k3II+KH+gsbSpletBPd2eRr+hD9cGRHeCDkTnOLl3GYv+P7HYBBLEwQGUSshUtlyFPXE90w2gGq3Kne8NKollEAmF524xGcY9iuxeVvO3IqcaMDcNw7PiscoCypVSyHrTHaj+FPFumNduWyWj724ILoP4w6TDCas1ubOm7Ms15GNJuSZZvDXrv6mmOLKQZBALAiP1/9Gbv7a+uRVoGMyZSVToqH9cNqTP2k/snj86/DuBiztJOTuvaOec1iidDKK1neFmxnrrFod6dbhXhKvdfvyvDzCtjfLhDq21u2Hpg35Z+25/dvJdnmfhpHb3w7haWknYaHL2IXn4SfbO0LBTwGQ8AXem/63ef6nuoTqIqLlfSlLOUbChMSDVMsjCr5MqXZEWWmAMD0aL8tQPo2S1o89fLe0ZVDizgVNltz6vNoZDyeQCB/1CJDLeZFOgstyGIFaZZFy4z7ADWboiBrSdmRlpVYAXbpBEvbk2H6zLjRnspEB577s+8mTF+cvmbK944rDmbyl5NcBbZp8GKN87JzBc1Jd44WOH9wZjPN/y44/ZnPo+AbX8pufNuAZiEvbYwe2zz8ju+dABaqi9ng2yBh5gJ7MnylvTH6pWwpuvuhbgzJqUBp0OR2c5hoRQ7CdB/uRv/VAaWmTWhma/2A389oaya6g9P/Z7qM+0x301A308Rt8UilAit7fVMEe4zfoK4pPJQb/XHQeCStNgVdYyrZP+cwYnJ4pkUTqy2DrAqjy84EZidblwyFvPUhl4Bvf/aOvtIQaGz1tvHdiZMQy1ah0oEqpU6nytWTy6SgULCeL9M4Ci/M7nqJWrF6P6GkgVmZ016SjboCeZSOTIb7jOPVXUR8YlPvssaAu8WYtqOaL68wBdkBMiEbWmCyoIuysrLH8Q3HvCpODdzZN3D/tlXvBEG902JUOowZWgLsLb/PrmyxguU84L2N77OAoMHdgRr2XPbWwOYlmMHfa7b3V558EYG5Ky5A2RcvpWdvnqoLpdur/Fj/zLK+R7HmVh1s6OyoP62TxT+sQ/AgIM4hgqRl1Uv8i929dmvXxNZ1413bWj81/pwiEAlLtPUGg3Ouf5/kJaXE0v3rUPJFvBmwWuqwCr6ggJRmPJq6ZPDHpmVf3Fv46Kc5xi5C8fY74V3Wb1hJp3/LpdO3F+APHzbMpaVpTeoM25ucinUHk8YOZttmn8XKdYO8Mg2PUYENZi3LiH1aY6whyHi5JljCzRXEfct45thcxaoTSfyuAkdOFzuFznbRS9MYOFN+Pd0ERPAjF6Dsg0VZtiu1zWneGqcOrJgdltvE3paqAM+fh9vzGiTdLRRCMo3aqN42Il2rT66zpOgAibqwedoO42FfOWNPVszTQSODouODKsHMdCY8++GS3pX1dZ2jXQXtjSMePsLZl/Zu77JvvNLgKYjq/GqlzktaVW34FWe3vpDXTMJ6aphmUWtIBkicJR/+6HmZobBizlyjxAAm5yF4LSBWU1ITdXVyYYspu3P1UN+v8HiCOCijtPYNNpgB2I+my5jIM/kmx+IgodsMgswt/GXfCUfgqSjVCna8/bDxeTI8h2WaZDaJQu1zcsWU5mN+duUybm/baG11Y28rnj/7XH/M+tG2nNZ1I0sX99h7AiE9d+ZN1B9wRi93RAf86JkF6JSAg8c7o/2rL/uzS6xel+sibiO54rXm6qs3nibGPY0at3ETS0bDpieTBv8LPGNt+fODj68YzS5VpJx9ri9ucG19vHOx2VFhWyxwCLFF3rCLIaE0HvOyK5cWmGRdXaBz0bO0K4mIZ3mDwKtd/Q9Db2d5jGwjy8Kq3t/n6NsfLC2z7GmZB7gm/0Rn4hU0uJejYoPyu89hRZ5ErdInf9GF9rBtRRmQHzUTV+en6KM+Syy+nJ923IqZmpBvmLGZU/Jfuxt+Tcxb4Ynh/SFNYJhEJyucJxPzPla+UeF5I5GDyPYi6N4N0dRpUvo0lTKdTpq+BxtnkcmOhwppNDo9PIWZLEDGPrjb6+mWxFJQjrOU3AEUCbkIBBss28ZOUGNAgqkX+StE9lJmXx2yJrFZCupeo/hmNLAH05TEmBF1W4ZmoKlLw0NfSt+zTChwPHSixvnQBTCqVh5qV0DFaNSHY3iZZiovL7zkNakuxzWLG2croPNYPryvtNvcRO2o9NMqkF2k1VqjtSrTOq3XBm1k04jDVXbWq5+sYS1lrGM9G9gYNhUdGmiggQYaaKCBBhow+BYspSa+qZi0rlmVktLQyElt2AvR95erWbdcWJNxecEp1ctKx2vBbjyawu77z97BUVsM34AlPT1efJHITG02uEz9dxdAaCsMlvjIwQt4+dKX+H55kC+36WP4JWzJys9/SgqDWtJZEEuWYbpFgW6TwfkkzKXLYGomX1e7QcyFEtKQrIc2TRB7VF2MargzlMajxC+26ow61UULz5KodF4lq/BVW7Snav+7DMitZMWTZFMjL5LEgaYbtrp1s+shrXmp9WO7ON5bwxc9K3dfnt6UKKwuRqXWHy1V6jzOm4vv8uxf49XNLhCJPP1OhkP3eLn/QI+3QJfGLl+/A0SF1qnxpy2Oy7RT1BPiw0frrX6Y7L8dS05rtNF26Pm9wtubyPA3idSqI3qlTj569xOi3rO2/0Gl90G3g93Gz6OdZIE4gpSLKblHqlRvwlaISi2ObaYWbPmepyqVVk/R2DzBNf8MKUWvpRTTJbVhM2XOthBnxoRgUDA3k+fn+Xl+np/nb+bPGebsofAu4guFd1Efh0JQyYjVHaJofW3042xOIcYsfdWd54kZ94EZ94EZI5izzbmtYL1T/yr6YWD0CzpRBSVZwdRXlWs7Z73CLW/M8FATI2n+vLXo98SRULF2njcrCrbGrCq8Bbpiz8OOgL0JGFldjEqrO7EoHq3Kh66xx+b1lnliKQ+YQ23Rb7UXHU1HFr1SJx/pStvieR/SQWt/e+/fst3CTu9+FtdV32vs6NtRQ96QN+QNeUPekDeEpgB+PutO1m/1+8Dq9wHenvkB+sjqIyjY6tO8Pq/3RqiePczSvB7Q5C1K/Sx2Y1EtzXk41+0tgJgL6VHT1NyVW9IDfwTQ9QzLqu88XJ77wx5p2vChPcr776JTh9/B1nWjd003bMdfiZbxhzM0cZkrXOAa1znLbe7TyhPe8JZHfLDej10P5+/1M6CbV7Tzmotc4pa9MPVL+KXOznzcnUuYTL+c3YRbgS6emf0Bl2BGvzlLOkOrFzSlXb7khqaUmUsFS9bpcrmAUAqnZVE9qFO1ZHBqxwe4nB8MDk7tHJQ2mYurvgV7vxhgm6sO+tH2uv3AQb8T94u+luz8leV8eu31v0qrOpAQ/KqGCwC92vdXgKU0aZJNe2Hai0e9Zu9RHuga1VHLOgW7lWXDpHmrzsR7s8amMcf7pvVOImy0eubv4yNbJDOzE8lC7a3LaEih+ukUB9VH6SD4gJ8avjX0+/PRHnrxVwGYqcVt8mKAhN7e59+0eOp/F7Xh9pUGv2rxX78ZjttsL77t8d9YGUDXh3QviJKfo8d86sVZF4PvkdWLP6LZruoCLL7vVBfyt7ECcyhyI8FmkPvDQbO45lpxjyA6AkvpAlvkwc8uGXauMCK3e7CsxkXV8bihoPd5MAGydPPp+3mXmWvM5eJAnfZt1yTILWvExxW8CKTBtOMLpAvHGOT+1qwQKL2vFKbHBHMfbfveWvxm3s39pAlddbbxWKh1ldKBnzzTrdQgs93PPLUkcPbbzzJ2W1pO+PDw7okCx7U45fiwFPBYjhFTeBBWwHZdkYJvTybZP9nrYbkjtnhNAA/vLKqYi8Upx4elgMdyjJjCg0DBdl2Roh9PJsl09rcQLHPWlv4ggId3FlXMxeKU48NSwGM5RkzhQaCYb3cLQQpBbF+y19ln8XZwu1Su0/pQUGtmAdtBZN3wNO9J9LfbNkxQR3gQ0FL4+tBVG6/zft2KqZtdeulumm5q33Xr+E7h9AvTUnaNPpqRGv73M+Y9fN3OayLiGa0m2VEOiAH/PPoiPDvlihcnitMI6Jf/0jUTDllqgAbmfgMXJwpRlmVanRWZnt1St+qlASyIvZglVqy/tOD7Y4Keu6VRRNkn6Xxsd0OkIdUnB3yNXY+1B2p6SnDf3zbwsqX1ZwddjHQdKH7q5/cTF9TOV8JzYe6PlwgyRKw9V1CZ9djxx9rMOopqchBbwgFUjgSTPCHo9oVZfs10Lsj/W8xflPxf3j9G7/aLerud2fB8nB/wF209gIM6e2YRVfQgv0K/znEspNjBwXAbnjmof3qcNlD7EhnI4y3yE9u74m7fz2mN8yT0IudB6vVmeVNzT61FFnLaQRRfkeqhpmULq+38+gITzDnppgyf9HtnLROBylAZKsPUt7ihr6N9aUURqVATiiZUo+rbc99zQGbCH1Sf6lN9pg+WbnouyPREEagm04TP3aSw/p3eN5sa165t7im7c0YdsfXLMDwrKRDVsGXYQz7M37FI2DPmD2vGudUPAKYPLRnn3sG3BWpL15jjuRWRKiDUGlDzATk/wl5xvzHj6bewN8w3i6ai1Q+PAvw5tObzXCUNrXq1llbb9Jo0KW/X+4n2hYk8V97GOyrlrZQSReF4CyWban2meB5IP/JW1ZraSFTtrrOrlkaEtMmvO6FJO6XFG++90MZw4MOcx5On9eMlbuJSVo4YBUmbU8jPEKd3yhuBo++43SMotImTj1fb6gMrXrlVrxy8Yc2xYVRRx1bfejJcVIcH/8MPRe8y258Hl+XunM8XAQ/P330SHmj2wKu9AXZa3RAashAD2KkBLJBvBGrhW6I10SGNsjL6nlS9IgSb1c0v/8Iy8Cpjp1s22kMLJV8wYhmBiXpqZuiFaiLINEOrGvQobR45SJeu3ODG/0g1yvmfUKuEWs1UL5ydgmqx21aFiCKY2vuWaRFQLzSisjp1NKs7iu+iIvKDWdPbTbxe7ERUGttXz7q74a5fbmjJ+yI5qvfWZ4T4jQCd7/Z0C52Zk95i4Ux3FEDV+ube0dduXeiMwSjoc9wcR6ch+vSrqxs8cXiQFsiFYm/B2o7MM2tebalQ+1I622m3r2Hf6+L4B8m0ADCX6XY4ci/eBAPH0e91dA2CzUmdYRCdLha7AUL4Jitn2jhHVFoRc6Zy96aboCuKfDm6qoxRJ5FjcGxFmF51jKip2pOdOdNvcoMEx6f46VtRes14GCimDdkQZBQjgDkNMc+pUN09e404JC8EXNtyriaeyoxJPVWWsC1i1h9sCwgpWUHXb0bNq9/yggCc6vKQAbwZSgHgWM+0yyMwKcFdYVy8R8B+4t7ePZ3ANYViWcNrYedVsqrzaqYRegH1rougkZ43lDwQUu4/iDVBQg34eV3XH6RPlPLz8zWvnfs8iG8xikYzXmqo+ieDASTnaUJeA/+SvlXckAX1IQUCOWeydZKmJSAaFozkxwZ4uycJvnC/g5fgD7qM1HIqESTIzRoP1zq4vpnvinAoMqNbm376jBKSz0QjHK/pZCgKr7UzPxYZvCkkHK868IcpF8Wi3yqwPxJvwsWs6NxC19UttycdVgbpCxKDfh17JWNBR8SIB1DPBqNiF1RcJyqFJAJovTEzNKMmA3s9JYd1jcZzybkwXkRkrBCKUuia9GI6T7IMOw/Fgwy/FnImTFal3CAaUn+j5Bm49jAPEfgEg+PnFcNu6TAmX8qlzvOkpipRknghv5aKFHjJCI578az4aliqR6gVdsFyrmsd6Us3kxJi9/0qv+6Pr4cAbaAm6lN+REzK3PQS2LGfGxWX8vv2MpV4fQ2G9w5u1l/qb09uFvsbJwtcX5jdi/UbzfIriLs2brS9FSGVc9tni+2dzbXNSefL3qd7N3vsYK/T2dxmSX2hWPL6NSBquI07BKWSf5X5JZS6yYvsXAb2HCmwuJ4tAy5pCRF1Sn2PUi7ryKjzyAW9EeubN3XxsiggV44953LJiptpCsiew5L5RDCqhiZIUKcDXl69Y5u+vxcK7JgX5e3y3y1yloE/dpzL89sl7/b//1jxdDwzcQyS1+TJoGtVvctcRAEuGT+7yPSFsyIph+ePg/LBAcxnNtjOq8opRpMmNieO6nMWBHEeTc7j4EAMWN0PPzXxg7X44Vr8IBjLOviDBl8EdwZPvIf02N6dQXirnq3ND7p+0JHQbpUfan/X3jkXwhbRNKoBKOCpN/S4OscFtzgcz+qBToxTgmtKGflZ2/otc2/jeGjgdESmznfGKvNgivfNmaGpmZqQQKehcEoiqOANKfR4KU9nOJtBoc/yNI5brHXLjARaqb9ev9IXJDPvsiQT2roXY8OuX8XNgdTpaKPdHQvwS+Y+XOuULqs8K5YJC9krOf5HvrMqjj1R5SxnqowMVxyOFX3OWeHe/hq5v1lCiOGy91B8LOixkK/F7cTgQRFjWs5u9vFq/3qf3P7D/dv91T7f389srs+2drNJNnNRTyDM0/6rr8kN13Jyebn3105kpFraWJwGD4KHAQsSx/jSpxQRoSJYYQWaZ/THI8KilrZWmH7J0CkUNO6JPU4zL1v2cg97WfrlUv5Hb+dSoKcYbYOFTk4kHX8q8VReyWvJbuVKEshETiXryZ60PU5RnT9/7xv3HAA/DTT+duaprhipUi0ud/rXMLuWGSUEx86TWNGGGIYtHMmWvbJ+Es/ul/9h39lvdn6foTwUlqxkso4GSwldUau/3aIpbw/H1KVnC3Ze5yM9tRwEf36EN0fojh4e3R6tjvhxgO1zB+k2WAV0FBwF2c5Gdsfdc1Q7DB26+DzJ2lpA1H9RDalXz619cOD6EEdPBQK5RIL/DmgrHEQGfKkB4XAZF1Z81NzREsAcz/vlMjjj5OBgOvmwjMSHYJfRka0M7C+LIXOeRW1PZHGiAcyQVvTW3QdL5HD4p4SFUikCUoYD46HGIz2MAhxVe/x5P20OtdjL/ZJMfPxlZ9QtrpAQ8UYhKlR6EFWR5fq1kbUSYqUPIB0bGUfgrD9T0OwflF/KT+wlfGP3AL/DPoKP4Vib5S05Ofydov5C7LLzE89W7/oy0pfH/p0ns/Qks99xH7HgkuAbZi1xBp/qd9DwMOQfwYWXpNNPfs+B/Y65kYwRGKLdR5fGWpAfVdgpADqNXQCJNtjZJ0R9ubsL4y73yXo+v7e0umQjUXYxiWpAllYnLxMaPl3Tn+k7NAei6wEWcA+em+lGgMA79VgpoBI1VUz9y5OcXFFzJYRCqbhCAh7UfThc+K/6ekLJza7CMGs+7uPV+mqd1tfBc6RBA2r4cV+FAE4T2RMTsroQPQjh2MaR4JjijojAtahFc5bCjxVeqZUipYBHp4flued5WMEeFq7VLWesiKF6he/oYzk3bMxh+N3b8+682nAIcXIShaya/Nq6Cxtwct6cSvhAX+mVZlqTUdoKqBuOCUCb9iqiiQtDXJ6wH8Snl2sgJW9O5Y8NPTBXZmWYMRSpsATNhAsCIkYJyskVs8xGEbnqYFIl+ajhGgnpQuh1Y72TkHkaFLvqvGtOpSt9TTjDlrgV0E+bft4jQiZSVHD8SG0scPBexvVd/DhWHsZ437J4o1ORSm9EcgUZS41PNNWSMVSGKDPWbGWlSg7GplZgwwjU3Qko38aYAgqJC6S3DIjdL2ruLWVEEcEa++PhYkPPmtCX7N+ZvI1aSlsiYiCkIE/sN9Xmo9hhq5zGcoURZ7HSShDbo5aKmkuGiXDrqe24mxbUcELJdtuCuQ29XgkHJtZdsn50K1AIsImcdiMwjRMcmedAIdl0p6xr6J2pcmRCIoBU2cMgiTfr3l1WBdZgoMhOiRTDoIlR5Gv7FabIlhvdGx3dupUj56CHoZRFVaKFxzJPC0fxlLDelhqLlntRS0kh3F4KRWlf2CodPKmvMPd5K9a3ajrPtSn2QcMgAkTWZNpo75rAiHYg1Ps4HQvxIbzLscm6FL6LXJik9QbmkZaStXfmsVGMCUIdCAKQWBTvlO7Id+IQdmCuLJ9LPZ3qusAwkrMx49YL2MlnTcj5WBTQHp5HMzN1wLkCrGLzl5iz4s/oVCfxCZPoQbSPNCzENeRlzNLkPdgMBkD6aXjcqqPwfkih1CIlpVJq8+k4/+eiRMciEFFYG+yi82M/IzEthErmtVYyRk5HOhQBCRBqElktzOettRaCiXotBRdBS7qZ0CkkyEtbLs5uQaPJh/IwbZIVuuMuRB3wpNNCVSGnEW1xVF/DOw0kexeXNMY13JgMxWaORtyMEhn5Pz9zyjdWNMowJ60yspsYqYw3RNPZONkncAuaxZ2KAs9sc6Y0LDl6skooSaRMlVGjcyt9HoU3iMmLHCi8P8w1zkGfFgpL9L3Int7CsYpqlbowOdFOZ+oJ23/JtB9r3CGeIp3ix0gP8ApXyBChxwNKRhGapv3vbBfcG8nbyuKpxwf+yq88e4w93KHq0aPIVKJCEmSHBM9QOx5CB400vLWA2pOGTWTIKE01F0qVZLzRISFCQAYDZLrQyta9AflOoyV8qilZtjvsiYCLZqemoRIkSuAE3/699ULa1sMJDmqyibvtGs9E5EwBEKSFfefpvcSL+ukP9969se5btnj9s0yP4MU9vLcn16T7UluS5dRTGxeVdu+9WPWIWMO1Ka5vyftdJa3p/Mg+OnJiIm7F/4mr0A/Fsfj394k0IcB5+cKzuNsjsdMkR52MxgzgXZ1WOqkLHG4c3Xn0PtMbyvMukoedVnK7m2hzoRpfochNyLbHiucc1DjDkeayY5XoiRYo5qSsi92or2+CGk3RHRnZvuulFUUvKfndLkpDhBDDEApYMxA0iAq+y6YNEyNqLx1I73y1zhKvjOPQwyZGoa21t6TiJpSTrkeo4yNy5mDvjQ6KT6H7FVrJW40ojJXOubHLdbKQth5w/U7UMbXJpJXOu4FhUSuP1H1FSoQCTBY2LhaK5vGNFrKNo4BzUKDbmoAbt1vvIUKPlmZn1EIbuyiUIJI+MOak5O3kx+hxIS4AbesfBGgbw+Gzm0ns3ijBOIuLjTUfhAkkL7D55S5ShB/CF44Rxqk6njr6LAEh9aix/iFFNOa4O9lkvbPFs8sJ4519Nj/BmZp4olw/YOMqvgE+eWY1qP1ZRGUKPN9fWoG4uoPZeorNszMoQ+FF/2s9wL7i8DtW/TPfLpEBxbUp8g613gmT4RqrT6jWJnSU+FJ/FDfTcQ25/aeZPSO1OF14JVxwOtb7NDqynoBqzOd75Ryy1euVP61L2FtIs/HX+Ube/kHPJEqUEi79qNu3DLAdzamYm6yCM9OTbX5CG35UrpGfGzC6wG5yTavQfJnCI0vG5FwTcJAiZqqesYQQJqb0qDAdxQ7YGaFrHfZV4B+PJqx3hmr4wi1Sh+szzDkKJBBEct2E0VHVULNnLOqfUlResGRiV94skiHwIqsohGuxCSS4VuOsxyLLz6lpMDIbNMDksA8ix1trbL7Ib0aeykrU5rgH5adTjRAVTCLPmJhkjjRg9yxQnBORkRdnIxZZaj2kpvLqiIQvZQa1Z8TLU7QSgJBItdii9SK3G3lq0GB1j+ofgNYIPyBOWRKZ5lVwFlYhzOCaYZ14eucc5C5cVEDlgrzM1U7DWQnCuGhw5Gjep6PvS2ZFsUWC+ermbG4x1cVWO1+LF3pfKGq87sx/N0C6YJLIcCUG4tvWl5YkcezFJ61z9RlCDh+b4CbW0zQrwAY+XquwPijARvqg0LCZ7ja1aT2WrcAqOwJsr1tSgWmH2nTY157bLOhK8kDZ0k+45GNH+KPPDXF9xhfzua56osWX8olVfqkTR0Pi/xb9UmHVwI4/gsWgS5P3DxiCOGE4/5ue9NnPhUD9viGY9WWsHbOyZ30+pfnnMWN/nqDq64w2cEPUDqb8Pf0HwOKwriWjXewM9jVrcaBss4jhd2nx74VCX5uckc0zXd2S5353agpmTzYV0w8oq6G6iQsRILGrYVX+dYUfKhJ8hA8IO7Dp310Uxiv2vVjkB7+yo5Ncg4NR1zQrCtgiXPSBz8K861fy1Tn+rlBJwlcGO4Qqyh6zB1Ot+/luay8CoSW+iKm5oUnMx7ghiGI5aLV1h6I4bg8/ywOgcaAdfcan9nTQNqyfz2abbVBUO+HnETJdJ56dzEdI6xu+XffjxiNMfRwP7S7iexWFprNvZ+71Ql4KlLsHwn8A0TtwbO1RYNUvdXJFc/mZJCQ2XvARGN0I9IvALKx7MNrllvBfnvzR4DJ9Rhy1Oa6CzwB98CTIAUXmYGy8V7PXi9M+H7d4r0zjmqDlw5WSCKs9lRaVIdLI1ZCr4lEXrdjcZuPA2vy3jP7lyRd98WlanzH3/KkKaYJWYZcL+b0wr/PpuuWMLKY4CzLV2aH954K7c/TB89O+8XvxAbyjWPDV+eUVgQ9EDMkLVGIdsnkwah+M+5OldhCR+RhINzbYpRTn3MjDxjmCza3dPlAWOEhjaL4dnA6kw27fUNgv2n+GwEyE7lVlHVQ5rdDoa9x/LqLPBdFakbrseCRbHndY3PFnxblCiLn4wA49xe0Q7+FOXQfVEYjn0UrSBMGC88oeVhASgXMZQN7e5FjXxMrcVI3Yg9PTlNyY1z2JBxiFTX6KiGgK5ZUlQ5LYC7yrB36e6cS/WZlS02YygawsfJLe3RYLYM6nhhnokzKKuCZJXKFaCM67kRO7WRMyFTRAglpU/36hwhLyWpEcZCxYmMAmLFRUbRGF9URktAr/PfxVT//yJLe1HU4z0qXpvL6QQjJrohdubPivrjzh8rQlmzfoG0GECceJUkriE+Q8rAruHODabsG+XlFAuL+VTDdWxTexCAGmY8eLb4ANo3QB16WNlFxQ1nCFVciE8pMmLt7IAMntlf+S0oJnGcTuJArDfi0GrUyZdYOJcMw0p4/lnKt6CxYEUpH1ake2cuPjiLZwFqi0kff5Y65wDqR8W2M6ewZZcKSEDDtp1roSxL2UlOCo/c+VMm3v6sdO5bZe1VTX0POsTloQqyaVgGsWRyL3EuKfeYltpPXPijYQLxumXrJC7Ca3+RVeI62m1WshBdOgAchPqoHRZeLgCykH7cPqx3266l/7pbf91YL9PqRFTGJzb41sr5HeUk0W5HKh0PrBb/xcLlNayG2l4Bo17GJOE9+CtVfm2vwSszLkENDgWG5k0y42humAUkCvVkcCLKkVNN6EbtGXq2LtVXgd0m24CikMUWupuUDEoAStGiGuU7y+ZQI0utKuM06GyfXOF3Jq73UuMk93FEgAqF8q9RuaOJmJVuvwZ+jVzTvHKujiJCFRkLb6OQUQ9ZrWaCWCWD/Y3Fod/wxocIgk8YAhY+ifDEUtyoLg+NRInTbCtSBR6jeLtOX6IY9Jy0bCpKwSS3iqs231UKU+wTLujgshKyddXnpxTbvGDlOOMJa6veUr+d4/UCLQZQdGCcivsYF2rZR/kl8C5L8Eq29ijk2o5E3UkJF0F2uKnjCnAK+PHw2FscMtQRVU/x03B6v0z4dtbHNb2Spu9bfHiyu5zcB1FmePCGjR/Mk6a3vtzg4UKOO1Lr0aV4KNOuFSOR7ihHJ7Fdgd9KXzNbyqn3oLfqMPgGVj43Y4HCjN32Dd9gbugNThdQveShFoKoEeZhw9tNUUjTL1BD2KHCz3qSW/pc61af+zRwusQApyLH3boXxfxZHp6VLY2CpTWq1KluN+95mp26Ee/Ky6YjXr9HpzigLZhbgRd4IJgYMuNqnUoR4DyuavkS74Db/jjHP0nTGZjX6ilBAX5GVIgZASdQ2Ao9eePyhe5auc5TmsB39tvxIDO9fNyuqaqPL0tCGCOY+UbYC6T2mG46eSN4VXaabKJnl4SoJnHgXjqEmpCak1q5RTjydl3aiaN8APDREohSOVNonikwYzWwhmIja26bVZYnvNXCrRsJzmr4RX6twzi7K1Z+bOkEFbajOUHugnQ2iL3D52yVcjHI3Ai5D1xhRiDtRViMnKC7k4YSMTIl9w4L2r/Dqn23yVU57DSuPX9irs63Xvul5pYJHJI0NybnKzxyQZZ/NEDHyknmBtfpTHr91tBXINTHXRWhPaEUHNyq4XoNsEhyqCB91vSHWVX59dnbdg3jzqatdkof0zKelrHTmFQDD66dLMC0Mq2lQzUL5dR8uqSs4umBeXf83aO2Aoe0qvReq57yz+zKK1JhZGc9ExBY1Wu/16C89k7mzwUIbzrmph79yuLsaupHwvnAqAxBabeej60jixMAHT2O6XjoCdgZ7ZDb6EL/LhZdWB+0f8cDeupXCpwVTFI6DGSFzwMLU2mpF/IW8uVC1UO2jREPFVeUH0Z8sX82RKvrZs1T6dwtMOyupoOniAUjFxDI6cY9goBbEa5B2T3V4UMuCEuiZ4wEo2xsFjfVIiikqlFBHZgAaYK7Pr1Gyo0vNCjU40g+r5ASuvoz16ylZs76JRcmMNRyvOpF4HzbKc1pN2PI4VFatJ5M2OI4KGYQGfgYhoI3geY2vapjKBujOjRMN/7uNX/V/36e0+vtzHvthl4CJcl2v4cyrH11jLPgMhivahjpPKjS7tbDS++U2EbbcdSmeulYMUEFzKOE8t01r8GuwJ3UHiwVCp05vh3VM1v5ujxErFqGMmBcKEXVQhmkdHigXvisc2pShopa3pXGomgogaDra/sMtbxLjQXoei0zFC5aoHv2g/yY3rRDcw3nVZIevipYix53Pk8SLWgp5WnK4yMIvjaSu2Z52yRhrqWn9mg4w3CsVHsaWOdWcTU0wQ0Uqx5y1HczbvrDGDjstuw4T9shLF2OclMmLdDmHPtKF4agHC+5mQt0Ik8R8I0HMym4IuM5Gmxefa0RbokJ9jwPLQ9S2r1CDgoidc1CVZUtj5BNfAoSLqyfI5QlyISIhYd8PiFG/MdriqEjfMaJz0HpSU224yAEZYeJrVAJeersmETnVWoneug8ivvcNCwvHeAmAnuXeuQHPoj9IFeydGZ1HbHuoDfv8hQbyAJNYmw5HM8Or6eHMtd6kWeCLFwYTWi+RBZDzr0UnOzIID63nZ7aY0H7uEbUImy+3h52lz2nVVRNYrA2wOqmBkc7FFp0YCHBNYNTwsqbF4P8QtJbL/8MYEVgATC0b0gFW2hrhh2Sx8h+GjSP92K2gOUKWy27CNK5hYMNICyWKwegIBAaG7fYt4ajrP6/8MNtED+M63C/0AfPfz9xyG73350fVcFTABAwT8bzgnR5ZJWO9uO+T9beudBqjFvlY1i7y7ok1UsDci2+Hm+i/wFKgdgZ8DnwU29Janp1kC8nslv7OJXno2s848qCepOk1jH0VUFB5yfQLkivRx7SDPXU5uSxcOlEmfOseRffz0WNRrmuH3HZMPZcWNoqfE8kGWeC2V3OCh4f+Kc6Xfs7VxzVtj4F2J0cmSVmeahe0l5zUx42JMLGxSxW4Y3KsT1GdXkANPIsMjvOGLse+OR8fE5bnxLeZZKXWruFfJq2YB5YG6TSKSdYYQFLIf8IKtcVxqkw8cJQI5e4CY/RJh/NsxHdb/nYyKL4kXLFNCGClR2DjRkkZCHhphTBSRkFJivksr9TVLHSxo1RDLhp/6JFErccsgsbE8eyhYAwRctlsvl8Nml4+wyyix3NREpXuBj96MdUPTS/fkUCF+D4tsNG5nIGyYWQ16MiaH/ENaPn1aqdGihEVXgpLu15VD7wtfXxD5TR8WREw6fSlTO6qrp1hZcZ/nGmkwZi0TnF6cjgHmuYmVPpxcJvOFPl30oGm3QqK+CVOC2+3TaGJ0lyoxl9JZFnqd5CicQ+8WpAWN+bung62tY7fpdPGVz4xDaUBdnS7uUOByTZeppy547LJD1T81TwFa0/rgxqlcA+38N7ueAQ2gpcq7uR6H8hSjUP6Dfl2C6IwmItfSd/BW+wN+KS9Bq12CGMD7si/oHqr/Nil+z72/ryiVi3wnX2GK+UEHSRRiO39x7gwXogdpjFzFDWU4ghRoUnIFv3StARYERasjBR0YpYoRykobX+nmbKCrwW5muMevJf22PKJV80mc5MWnbpw9lcKcTwtkN3Ku9hLKsvJsu4gNMp+wOQCy8lx7iLa0kvVeLbyXz+dFzipr3XQOddS+8wW+NkbeBbmGz5RXGPXQfD5xz32TLAUpPJNnOLnwEj6HZ7Uu9WGNAnqx0foaPei9MmjXFkni9R7TjJpyEiGcA614L9sE7Wo8YPwxTu9KeLmzcTfHpZX3IIepmC5xhKXyNYpnmEJqtlPSsPOOG0sniUdX8Cw/FQvXgZ5ODDKbZFCPLGdWu640cQ5LnPrceI/llFLHo9jMSByeo/zhJ9SUPtvoOxpN/yH6PV7esa2q4r+rSoKeCE/TCw4LNQrLuYTvV7mzoB5jqfKud7XkOSmgH1lGovD7ppXv8rZM1NsTOTCiR7HGbIkNo/n25gjMNS7lSxe/MvcGz//yzzg4Up0jVgUEz5TFclKNpvSPYE6KhMb9e3tymEvE83F1gGV/XN4xf0uVLP0r7sfVj6ObD7z3NdIhE0xW1ciiy5ZX7EvJh4XGQSpOXyGPZ+xzfkH1ElBBM+TgXxm06WcHrAAFYoISeGbHr6NfnkWie8octYMJvNLXV3ug0T3gSaHVAM7ft/z7PE65T2TQ5T+ccVX9gmNmpc62FXq5BOivI9AEFHkzjlZLRqIInBvpSHrOzN3hd52GvZoEvGpOdmeX/EOvk2b1yfWz8eTjoe9lqdx1gmPL5O4wovdlzVIrF7vHzMuYvZzE4bZ2AekDbaALNXhEiSL9mbuMQEpwKwjUOx8eRRQ6zJSrZJB3vn6CAgEz2IeARpgANgQwEaHwmYhhuokEsHk9pX4qlbhUT6NOpLtq2kQGafLrmekcNk2gngPvtgmv9PGTI1chgywzZTIiqamM5o7kL10+ozypNdI5UpJHWHaCQEoLJ8fBhuFlyZHNoytRtfewVVyYa0HCkNc4W1pejDw+UyCDHPlykZIZ2tiIn0iTufDgzpaHlCNDZUzK0mWMlXiiWNZQ1OSU2ICkTpItxFnMzePPyXMYjT1duGTJZiKFMUrzK7BaLi3XSX9eXymNbuZOouT1t0vfNWlrPOesEt4n1qqpvQsbL/PDn5xkr9f9aV3N/0EtMxrSZCU7lWkBvJ3xdsTw/W+WDH7XPnKz02TZOolsRem/1LKlvFSlmelRykiva7xwnt/dU6nJSC7Fx6qPuFhPWayflSx6EqVJOlIhQRxEKsCfJ+4lf13W/CYIZLpVSLOwQC3L2XKzBbv+U784wUT+Z0+Bunozkn21ZDO+AGS6Iq8VKVFa1RXtFSX7EtdXXEDEC+1exWRFq7iF5afKMfkI+x9xfZQh4ukzeZuQx2rl601t08m+mDKp4Icx301KbkBugaYA8wrQvYJPCbywYE8B9p0rK1AXvFrwOkFZoh52i9UrsUXqIUxWXF4ctVu5321X7nZcZURUJSee0hJbqYmuFISUQNMmlSb99ng09ImWe7TwaEgGLFQqIpREPCyjLjrFC/EefArfw5N4gkE0IAi8UlA9Wl8d4xz6AtETFVrNiJxSjVZU2zu3Ht9Jk6tpFDq0C1MS/kaoLHHZ2rUwCszVNk5vDVFZicRHEWlxQD0tz9k5r9tozJ+CRe/6mw5x/tCeH5Np5/BXuPHFMGdUBrwADTNQ5peFP8JfwTYL22GoCKcBAA=="}},"time_used":43,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":43,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/favicons/favicon-16x16.png","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.173Z","timestamp":1785161167173,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/favicons/favicon-16x16.png HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: image/png\r\ncontent-length: 215\r\nlast-modified: Wed, 01 Feb 2023 11:40:26 GMT\r\netag: \"d7-5f3a1ea17cd82\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":215,"size_decoded":442,"mime_type":"image/png","magic":"PNG image data, 16 x 16, 8-bit/color RGBA, non-interlaced","md5":"077346fd1d70b3d028423a82b6d46b52","sha1":"76ab7fa95f5bdf543a4ed85019cc335d09194013","sha256":"368bbca9b449e27f8fc75866e5e69bd7de4ebf31378ecd7e83958602a8902ded","sha512":"bbb38e4b5c46a816890ed324a5dd3b4a066fa9c72c3f9114492f95d6d954e4198575413369e815c77f280ea9f4afd0afeecf6518afeb6f6b3294cd39919d9ff2","ssdeep":"","tlshash":"6ad023d5a2145433cd6314a3ce052c148c53417859d51c59049be4eb9f55ad6b1661de","first_seen":"2023-05-21T16:39:27Z","last_seen":"2026-07-27T14:06:41.181717Z","times_seen":139,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAnklEQVR4AaXBuw2CYBiG0ed/RYwmJpjYGns2cAYLF3AYV3AYHMLY2TiBtwYKr4D8QmMs6L5znN/hMRBGwkgYCSNhJIwC/hQncVoPcF0PFfSmFflFFGfRj0uKq5is7uD4EbUyc2RJyG3b5bHvgId+/CE/CifPcFbwPATwgXQTkiUhZepoBNSCyBPNcxqjxZs24+WLNsJIGAkjYSSMhNEX4fYspEM6qmMAAAAASUVORK5CYII="}},"time_used":32,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":32,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/scripttemplates/otSDKStub.js?did=5afb8be5-36db-4066-8d42-fd51ad29102b\u0026data-document-language=true","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.396Z","timestamp":1785161167396,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /scripttemplates/otSDKStub.js?did=5afb8be5-36db-4066-8d42-fd51ad29102b\u0026data-document-language=true HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: application/javascript\r\ncontent-length: 8777\r\ncontent-encoding: gzip\r\ncontent-md5: rmm7ALOw8YFIpDf6yuHEWQ==\r\nlast-modified: Thu, 23 Jul 2026 17:59:34 GMT\r\netag: 0x8DEE8E42753B203\r\nserver: cloudflare\r\nx-ms-request-id: e14d2d3d-201e-0076-231c-1b1736000000\r\nx-ms-version: 2009-09-19\r\nx-ms-lease-status: unlocked\r\nx-ms-blob-type: BlockBlob\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding\r\naccess-control-allow-origin: *\r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\nvary: accept-encoding\r\nage: 35583\r\ncache-control: max-age=86400\r\ncf-cache-status: HIT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\ncf-ray: a21c33f04f48b1b8-OSL\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"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":26819,"size_decoded":9721,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (26818)","md5":"5710f6fcf69b6478e90dc962740985c5","sha1":"1069efeefe35b805ac537fea6cc52f1372ef1769","sha256":"76187e1cf3a80945d8bd89f371e839f638fb991a2dbc6abaa332ba801c4e2f84","sha512":"7367514f89d6a16c493784ff7e39e8613bb5460a6c5c336a09a2f4059bbcde9de86a9826b9cc4c6ea06a72982195f368c724e0032d4334254c291949f87065d8","ssdeep":"384:r8k7hI3RzMABwXeU9LH6rlIgknE8eEaRgCyu8LcSLKvTJ9x4AaHKJx686S:rzIBAABwXb9wvknECPCJ8GJ9ugwS","tlshash":"45c2f989b040ee3447d261dc5a3be25a723a746d3485c168f868dce0647dc4b6633bb6","first_seen":"2026-07-20T05:14:25.577853Z","last_seen":"2026-07-27T15:49:37.810894Z","times_seen":1268,"resource_available":true,"data":"dmFyIE9uZVRydXN0U3R1Yj0odD0+e2Z1bmN0aW9uIGUodCxzLHIsdSl7cmV0dXJuIG5ldyhyPXJ8fFByb21pc2UpKGZ1bmN0aW9uKGksZSl7ZnVuY3Rpb24gbih0KXt0cnl7byh1Lm5leHQodCkpfWNhdGNoKHQpe2UodCl9fWZ1bmN0aW9uIGEodCl7dHJ5e28odS50aHJvdyh0KSl9Y2F0Y2godCl7ZSh0KX19ZnVuY3Rpb24gbyh0KXt2YXIgZTt0LmRvbmU/aSh0LnZhbHVlKTooKGU9dC52YWx1ZSlpbnN0YW5jZW9mIHI/ZTpuZXcgcihmdW5jdGlvbih0KXt0KGUpfSkpLnRoZW4obixhKX1vKCh1PXUuYXBwbHkodCxzfHxbXSkpLm5leHQoKSl9KX1mdW5jdGlvbiB1KG4sYSl7dmFyIG8scyxyLHU9e2xhYmVsOjAsc2VudDpmdW5jdGlvbigpe2lmKDEmclswXSl0aHJvdyByWzFdO3JldHVybiByWzFdfSx0cnlzOltdLG9wczpbXX0sbD1PYmplY3QuY3JlYXRlKCgiZnVuY3Rpb24iPT10eXBlb2YgSXRlcmF0b3I/SXRlcmF0b3I6T2JqZWN0KS5wcm90b3R5cGUpO3JldHVybiBsLm5leHQ9dCgwKSxsLnRocm93PXQoMSksbC5yZXR1cm49dCgyKSwiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYobFtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSxsO2Z1bmN0aW9uIHQoaSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3ZhciBlPVtpLHRdO2lmKG8pdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpO2Zvcig7dT1sJiZlW2w9MF0/MDp1Oyl0cnl7aWYobz0xLHMmJihyPTImZVswXT9zLnJldHVybjplWzBdP3MudGhyb3d8fCgocj1zLnJldHVybikmJnIuY2FsbChzKSwwKTpzLm5leHQpJiYhKHI9ci5jYWxsKHMsZVsxXSkpLmRvbmUpcmV0dXJuIHI7c3dpdGNoKHM9MCwoZT1yP1syJmVbMF0sci52YWx1ZV06ZSlbMF0pe2Nhc2UgMDpjYXNlIDE6cj1lO2JyZWFrO2Nhc2UgNDpyZXR1cm4gdS5sYWJlbCsrLHt2YWx1ZTplWzFdLGRvbmU6ITF9O2Nhc2UgNTp1LmxhYmVsKysscz1lWzFdLGU9WzBdO2NvbnRpbnVlO2Nhc2UgNzplPXUub3BzLnBvcCgpLHUudHJ5cy5wb3AoKTtjb250aW51ZTtkZWZhdWx0OmlmKCEocj0wPChyPXUudHJ5cykubGVuZ3RoJiZyW3IubGVuZ3RoLTFdKSYmKDY9PT1lWzBdfHwyPT09ZVswXSkpe3U9MDtjb250aW51ZX1pZigzPT09ZVswXSYmKCFyfHxlWzFdPnJbMF0mJmVbMV08clszXSkpdS5sYWJlbD1lWzFdO2Vsc2UgaWYoNj09PWVbMF0mJnUubGFiZWw8clsxXSl1LmxhYmVsPXJbMV0scj1lO2Vsc2V7aWYoIShyJiZ1LmxhYmVsPHJbMl0pKXtyWzJdJiZ1Lm9wcy5wb3AoKSx1LnRyeXMucG9wKCk7Y29udGludWV9dS5sYWJlbD1yWzJdLHUub3BzLnB1c2goZSl9fWU9YS5jYWxsKG4sdSl9Y2F0Y2godCl7ZT1bNix0XSxzPTB9ZmluYWxseXtvPXI9MH1pZig1JmVbMF0pdGhyb3cgZVsxXTtyZXR1cm57dmFsdWU6ZVswXT9lWzFdOnZvaWQgMCxkb25lOiEwfX19fXZhciBpLGEsbyxyLG4scD1uZXcgZnVuY3Rpb24oKXt0aGlzLm9wdGFub25Db29raWVOYW1lPSJPcHRhbm9uQ29uc2VudCIsdGhpcy5vcHRhbm9uSHRtbEdyb3VwRGF0YT1bXSx0aGlzLm9wdGFub25Ib3N0RGF0YT1bXSx0aGlzLmdlblZlbmRvcnNEYXRhPVtdLHRoaXMudmVuZG9yc1NlcnZpY2VEYXRhPVtdLHRoaXMuSUFCQ29va2llVmFsdWU9IiIsdGhpcy5vbmVUcnVzdElBQkNvb2tpZU5hbWU9ImV1cHViY29uc2VudCIsdGhpcy5vbmVUcnVzdElzSUFCQ3Jvc3NDb25zZW50RW5hYmxlUGFyYW09ImlzSUFCR2xvYmFsIix0aGlzLmlzU3R1YlJlYWR5PSEwLHRoaXMuZ2VvbG9jYXRpb25Db29raWVzUGFyYW09Imdlb2xvY2F0aW9uIix0aGlzLkVVQ09VTlRSSUVTPVsiQkUiLCJCRyIsIkNaIiwiREsiLCJERSIsIkVFIiwiSUUiLCJHUiIsIkVTIiwiRlIiLCJJVCIsIkNZIiwiTFYiLCJMVCIsIkxVIiwiSFUiLCJNVCIsIk5MIiwiQVQiLCJQTCIsIlBUIiwiUk8iLCJTSSIsIlNLIiwiRkkiLCJTRSIsIkdCIiwiSFIiLCJMSSIsIk5PIiwiSVMiXSx0aGlzLnN0dWJGaWxlTmFtZT0ib3RTREtTdHViIix0aGlzLkRBVEFGSUxFQVRUUklCVVRFPSJkYXRhLWRvbWFpbi1zY3JpcHQiLHRoaXMuYmFubmVyU2NyaXB0TmFtZT0ib3RCYW5uZXJTZGsuanMiLHRoaXMuZG9tUHVyaWZ5U2NyaXB0TmFtZT0ib3REb21QdXJpZnkuanMiLHRoaXMubW9iaWxlT25saW5lVVJMPVtdLHRoaXMuaXNNaWdyYXRlZFVSTD0hMSx0aGlzLm1pZ3JhdGVkQ0NUSUQ9IltbT2xkQ0NUSURdXSIsdGhpcy5taWdyYXRlZERvbWFpbklkPSJbW05ld0RvbWFpbklkXV0iLHRoaXMudXNlckxvY2F0aW9uPXtjb3VudHJ5OiIiLHN0YXRlOiIiLHN0YXRlTmFtZToiIn19LHM9KChiPWk9aXx8e30pW2IuRGF5cz0xXT0iRGF5cyIsYltiLldlZWtzPTddPSJXZWVrcyIsYltiLk1vbnRocz0zMF09Ik1vbnRocyIsYltiLlllYXJzPTM2NV09IlllYXJzIiwoYj1uPW58fHt9KS5HRFBSPSJHRFBSIixiLkNDUEE9IkNDUEEiLGIuSUFCMj0iSUFCMiIsYi5JQUIyVjI9IklBQjJWMiIsYi5HRU5FUklDPSJHRU5FUklDIixiLkxHUEQ9IkxHUEQiLGIuR0VORVJJQ19QUk9NUFQ9IkdFTkVSSUNfUFJPTVBUIixiLkNQUkE9IkNQUkEiLGIuQ0RQQT0iQ0RQQSIsYi5ERUxBV0FSRT0iREVMQVdBUkUiLGIuSU9XQT0iSU9XQSIsYi5ORUJSQVNLQT0iTkVCUkFTS0EiLGIuVVNOQVRJT05BTD0iVVNOQVRJT05BTCIsYi5DVVNUT009IkNVU1RPTSIsYi5GTE9SSURBPSJGTE9SSURBIixiLkNPTE9SQURPPSJDT0xPUkFETyIsYi5DT05ORUNUSUNVVD0iQ1REUEEiLGIuTU9OVEFOQT0iTU9OVEFOQSIsYi5URVhBUz0iVEVYQVMiLGIuT1JFR09OPSJPUkVHT04iLGIuVEVOTkVTU0VFPSJURU5ORVNTRUUiLGIuTkVXSkVSU0VZPSJORVdKRVJTRVkiLGIuTkVXSEFNUFNISVJFPSJORVdIQU1QU0hJUkUiLGIuVUNQQT0iVUNQQSIsYi5WSVJHSU5JQT0iVklSR0lOSUEiLG4uQ1BSQSxuLkNEUEEsbi5DT0xPUkFETyxuLk9SRUdPTixuLkNPTk5FQ1RJQ1VULG4uRkxPUklEQSxuLk1PTlRBTkEsbi5URVhBUyxuLkRFTEFXQVJFLG4uSU9XQSxuLk5FQlJBU0tBLG4uVEVOTkVTU0VFLG4uTkVXSkVSU0VZLG4uTkVXSEFNUFNISVJFLG4uVUNQQSwoYj12PXZ8fHt9KS5OYW1lPSJPVEdQUENvbnNlbnQiLGJbYi5DaHVua1NpemU9NGUzXT0iQ2h1bmtTaXplIixiLkNodW5rQ291bnRQYXJhbT0iR1BQQ29va2llc0NvdW50IixiLmdwcFNpZD0iZ3BwU2lkIiwobj1hPWF8fHt9KS5DUFJBPSJ1c2NhIixuLkNDUEE9InVzY2EiLG4uQ0RQQT0idXN2YSIsbi5PUkVHT049InVzb3IiLG4uVVNOQVRJT05BTD0idXNuYXQiLG4uQ09MT1JBRE89InVzY28iLG4uRkxPUklEQT0idXNmbCIsbi5DVERQQT0idXNjdCIsbi5NT05UQU5BPSJ1c210IixuLlRFWEFTPSJ1c3R4IixuLkRFTEFXQVJFPSJ1c2RlIixuLklPV0E9InVzaWEiLG4uTkVCUkFTS0E9InVzbmUiLG4uVEVOTkVTU0VFPSJ1c3RuIixuLk5FV0pFUlNFWT0idXNuaiIsbi5ORVdIQU1QU0hJUkU9InVzbmgiLG4uVUNQQT0idXN1dCIsbi5WSVJHSU5JQT0idXN2YSIsbi5JQUIyVjI9InRjZmV1djIiLChiPW89b3x8e30pW2IuQ1BSQT04XT0iQ1BSQSIsYltiLkNDUEE9OF09IkNDUEEiLGJbYi5DRFBBPTldPSJDRFBBIixiW2IuT1JFR09OPTE1XT0iT1JFR09OIixiW2IuVVNOQVRJT05BTD03XT0iVVNOQVRJT05BTCIsYltiLkNPTE9SQURPPTEwXT0iQ09MT1JBRE8iLGJbYi5GTE9SSURBPTEzXT0iRkxPUklEQSIsYltiLk1PTlRBTkE9MTRdPSJNT05UQU5BIixiW2IuVEVYQVM9MTZdPSJURVhBUyIsYltiLkRFTEFXQVJFPTE3XT0iREVMQVdBUkUiLGJbYi5JT1dBPTE4XT0iSU9XQSIsYltiLk5FQlJBU0tBPTE5XT0iTkVCUkFTS0EiLGJbYi5ORVdIQU1QU0hJUkU9MjBdPSJORVdIQU1QU0hJUkUiLGJbYi5ORVdKRVJTRVk9MjFdPSJORVdKRVJTRVkiLGJbYi5URU5ORVNTRUU9MjJdPSJURU5ORVNTRUUiLGJbYi5VQ1BBPTExXT0iVUNQQSIsYltiLlZJUkdJTklBPTldPSJWSVJHSU5JQSIsYltiLkNURFBBPTEyXT0iQ1REUEEiLGJbYi5JQUIyVjI9Ml09IklBQjJWMiIsImdlbyIpLGw9Im90cHJldmlldyIsYz0odi5OYW1lLCJMT0NBTCIpLGQ9IlBST0RVQ1RJT04iLGg9KDAsaS5EYXlzLGkuV2Vla3MsaS5Nb250aHMsaS5ZZWFycyxtLnByb3RvdHlwZS5jYW1lbGl6ZT1mdW5jdGlvbih0KXtyZXR1cm4odD10LnJlcGxhY2UoIi0tIiwiIikpLnNwbGl0KCItIikubWFwKGZ1bmN0aW9uKHQsZSl7dmFyIGk9dD90WzBdLnRvVXBwZXJDYXNlKCkrdC5zbGljZSgxKToiIjtyZXR1cm4gMD09PWU/dDppfSkuam9pbigiIil9LG0ucHJvdG90eXBlLnN0clRvT2JqPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT17fSxpPXQuc3BsaXQoIjsiKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIHQudHJpbSgpfSksbj0wLGE9dm9pZCAwO248aS5sZW5ndGg7KytuKWlmKC86Ly50ZXN0KGlbbl0pKXtpZighKGE9aVtuXS5zcGxpdCgvOiguKykvKSlbMV0pcmV0dXJuIG51bGw7ZVt0aGlzLmNhbWVsaXplKGFbMF0pXT1hWzFdLnRyaW0oKX1yZXR1cm4gZX0sbSk7ZnVuY3Rpb24gbSgpe3ZhciB0PXRoaXM7dGhpcy5pbXBsZW1lbnRUaGVQb2x5ZmlsbD1mdW5jdGlvbigpe3ZhciBvPXQscz1FbGVtZW50LnByb3RvdHlwZS5zZXRBdHRyaWJ1dGU7cmV0dXJuIEVsZW1lbnQucHJvdG90eXBlLnNldEF0dHJpYnV0ZT1mdW5jdGlvbih0LGUpe3ZhciBpPSJzdHJpbmciPT10eXBlb2YgdD90LnRvTG93ZXJDYXNlKCk6IiI7aWYoInN0eWxlIiE9PWkmJnMuYXBwbHkodGhpcyxbdCxlXSksInN0eWxlIiE9PWl8fGV8fHRoaXMucmVtb3ZlQXR0cmlidXRlKCJzdHlsZSIpLCJzdHlsZSI9PT1pJiZlKXt0aGlzLnJlbW92ZUF0dHJpYnV0ZSgic3R5bGUiKTt2YXIgbixhPW8uc3RyVG9PYmooZSk7Zm9yKG4gaW4gYSl0aGlzLnN0eWxlW25dPWFbbl19fSwhMH19ZnVuY3Rpb24gZyh0LGUsaSl7dm9pZCAwPT09aSYmKGk9ITEpO2Z1bmN0aW9uIG4odCl7cmV0dXJuIHQ/KCI7IiE9PSh0PXQudHJpbSgpKS5jaGFyQXQodC5sZW5ndGgtMSkmJih0Kz0iOyIpLHQudHJpbSgpKTpudWxsfXZhciBvPW4odC5nZXRBdHRyaWJ1dGUoInN0eWxlIikpLHM9bihlKSxlPSIiLGU9aSYmbz8oKCk9Pntmb3IodmFyIHQ9by5zcGxpdCgiOyIpLmNvbmNhdChzLnNwbGl0KCI7IikpLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gMCE9PXQubGVuZ3RofSksZT0iIixpPSIiLG49dC5sZW5ndGgtMTswPD1uO24tLSl7dmFyIGE9dFtuXS5zdWJzdHJpbmcoMCx0W25dLmluZGV4T2YoIjoiKSsxKS50cmltKCk7ZS5pbmRleE9mKGEpPDAmJihlKz1hLGkrPXRbbl0rIjsiKX1yZXR1cm4gaX0pKCk6czt0LnNldEF0dHJpYnV0ZSgic3R5bGUiLGUpfShuPXI9cnx8e30pLnBpbmc9InBpbmciLG4uYWRkRXZlbnRMaXN0ZW5lcj0iYWRkRXZlbnRMaXN0ZW5lciIsbi5yZW1vdmVFdmVudExpc3RlbmVyPSJyZW1vdmVFdmVudExpc3RlbmVyIixuLmhhc1NlY3Rpb249Imhhc1NlY3Rpb24iLG4uZ2V0U2VjdGlvbj0iZ2V0U2VjdGlvbiIsbi5nZXRGaWVsZD0iZ2V0RmllbGQiLG4uZ2V0R1BQRGF0YT0iZ2V0R1BQRGF0YSI7dmFyIGY9bmV3IGZ1bmN0aW9uKCl7dmFyIHM9dGhpczt0aGlzLkxPQ0FUT1JfTkFNRT0iX19ncHBMb2NhdG9yIix0aGlzLndpbj13aW5kb3csdGhpcy5jdXN0b21Jbml0PSJDVVNUT01JTklUIix0aGlzLmluaXQ9ZnVuY3Rpb24oKXtzLndpbi5fX2dwcCYmImZ1bmN0aW9uIj09dHlwZW9mIHMud2luLl9fZ3BwfHwocy53aW4uX19ncHA9cy5leGVjdXRlR3BwQXBpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixzLm1lc3NhZ2VIYW5kbGVyLCExKSxzLmFkZEZyYW1lKHMuTE9DQVRPUl9OQU1FKSl9LHRoaXMucmVtb3ZlR3BwQXBpPWZ1bmN0aW9uKCl7ZGVsZXRlIHMud2luLl9fZ3BwO3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImlmcmFtZVtuYW1lPSIrcy5MT0NBVE9SX05BTUUrIl0iKVswXTt0JiZ0LnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQodCl9LHRoaXMuZXhlY3V0ZUdwcEFwaT1mdW5jdGlvbigpe2Zvcih2YXIgdD1bXSxlPTA7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl0W2VdPWFyZ3VtZW50c1tlXTt2YXIgaT1udWxsPT0oaT1zLndpbik/dm9pZCAwOmkuX19ncHA7aWYoaS5xdWV1ZT1pLnF1ZXVlfHxbXSxpLmV2ZW50cz1pLmV2ZW50c3x8W10sIXQubGVuZ3RofHwxPT09dC5sZW5ndGgmJiJxdWV1ZSI9PT10WzBdKXJldHVybiBpLnF1ZXVlO2lmKDE9PT10Lmxlbmd0aCYmImV2ZW50cyI9PT10WzBdKXJldHVybiBpLmV2ZW50czt2YXIgbj10WzBdLGE9MTx0Lmxlbmd0aD90WzFdOm51bGwsbz0yPHQubGVuZ3RoP3RbMl06bnVsbDtzd2l0Y2gobil7Y2FzZSByLnBpbmc6cmV0dXJuIHMuZ2V0UGluZ1JlcXVlc3QoYSk7Y2FzZSByLmFkZEV2ZW50TGlzdGVuZXI6cmV0dXJuIHMuYWRkRXZlbnRMaXN0ZW5lcihhLG8pO2Nhc2Ugci5yZW1vdmVFdmVudExpc3RlbmVyOnJldHVybiBzLnJlbW92ZUV2ZW50TGlzdGVuZXIobyk7ZGVmYXVsdDpyZXR1cm4gdm9pZCBzLmFkZFRvUXVldWUobixhLG8pfX0sdGhpcy5nZXRQaW5nUmVxdWVzdD1mdW5jdGlvbih0KXt2YXIgaSxuLGU9e2dwcFZlcnNpb246MS4xLGNtcFN0YXR1czoic3R1YiIsY21wRGlzcGxheVN0YXR1czoiaGlkZGVuIixzaWduYWxTdGF0dXM6Im5vdCByZWFkeSIsc3VwcG9ydGVkQVBJczooaT1bXSxuPXt9LE9iamVjdC5rZXlzKG8pLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU9e30sdD0oZVt0XT1vW3RdLE9iamVjdC5hc3NpZ24oZSxuKSk7bj10fSksT2JqZWN0LmtleXMoYSkubWFwKGZ1bmN0aW9uKHQpe3JldHVybntuYW1lOnQsdmFsdWU6YVt0XX19KS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3Q9blt0Lm5hbWVdKyI6Iit0LnZhbHVlO2kucHVzaCh0KX0pLGkuZmlsdGVyKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIGkuaW5kZXhPZih0KT09PWV9KSksY3VycmVudEFQSToiIixjbXBJZDpOdW1iZXIucGFyc2VJbnQoIjI4Iiksc2VjdGlvbkxpc3Q6W10sYXBwbGljYWJsZVNlY3Rpb25zOlswXSxncHBTdHJpbmc6IiIscGFyc2VkU2VjdGlvbnM6e319O3JldHVybiB0JiZ0KGUsITApLGV9LHRoaXMuYWRkRnJhbWU9ZnVuY3Rpb24odCl7dmFyIGUsaT1zLndpbi5kb2N1bWVudCxuPUJvb2xlYW4ocy53aW4uZnJhbWVzW3RdKTtyZXR1cm4gbnx8KGkuYm9keT8oKGU9aS5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKSkuc3R5bGUuY3NzVGV4dD0iZGlzcGxheTpub25lIixlLm5hbWU9dCxlLnNldEF0dHJpYnV0ZSgidGl0bGUiLCJHUFAgTG9jYXRvciIpLGkuYm9keS5hcHBlbmRDaGlsZChlKSk6c2V0VGltZW91dChmdW5jdGlvbigpe3MuYWRkRnJhbWUodCl9LDUpKSwhbn0sdGhpcy5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKHQsZSl7dmFyIGksbj1zLndpbi5fX2dwcDtyZXR1cm4gbi5ldmVudHM9bi5ldmVudHN8fFtdLG51bGwhPShpPW4pJiZpLmxhc3RJZHx8KG4ubGFzdElkPTApLG4ubGFzdElkKyssbi5ldmVudHMucHVzaCh7aWQ6bi5sYXN0SWQsY2FsbGJhY2s6dCxwYXJhbWV0ZXI6ZX0pLHtldmVudE5hbWU6Imxpc3RlbmVyUmVnaXN0ZXJlZCIsbGlzdGVuZXJJZDpuLmxhc3RJZCxkYXRhOiEwLHBpbmdEYXRhOnMuZ2V0UGluZ1JlcXVlc3QoKX19LHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihlKXt2YXIgaT0hMSx0PXMud2luLl9fZ3BwO3JldHVybiB0LmV2ZW50cz10LmV2ZW50c3x8W10sdC5ldmVudHM9dC5ldmVudHMuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlkLnRvU3RyaW5nKCkhPT1lLnRvU3RyaW5nKCl8fCEoaT0hMCl9KSx7ZXZlbnROYW1lOiJsaXN0ZW5lclJlbW92ZWQiLGxpc3RlbmVySWQ6ZSxkYXRhOmkscGluZ0RhdGE6cy5nZXRQaW5nUmVxdWVzdCgpfX0sdGhpcy5hZGRUb1F1ZXVlPWZ1bmN0aW9uKHQsZSxpKXt2YXIgbj1zLndpbi5fX2dwcDtuLnF1ZXVlPW4ucXVldWV8fFtdLG4ucXVldWUucHVzaChbdCxlLGldKX0sdGhpcy5tZXNzYWdlSGFuZGxlcj1mdW5jdGlvbihpKXt2YXIgZSxuLGE9InN0cmluZyI9PXR5cGVvZiBpLmRhdGE7dHJ5e2U9YT9KU09OLnBhcnNlKGkuZGF0YSk6aS5kYXRhfWNhdGNoKHQpe2U9bnVsbH1lJiZlLl9fZ3BwQ2FsbCYmKG49ZS5fX2dwcENhbGwsKDAscy53aW4uX19ncHApKG4uY29tbWFuZCxmdW5jdGlvbih0LGUpe3Q9e19fZ3BwUmV0dXJuOntyZXR1cm5WYWx1ZTp0LHN1Y2Nlc3M6ZSxjYWxsSWQ6bi5jYWxsSWR9fTtpJiZpLnNvdXJjZSYmaS5zb3VyY2UucG9zdE1lc3NhZ2UmJmkuc291cmNlLnBvc3RNZXNzYWdlKGE/SlNPTi5zdHJpbmdpZnkodCk6dCxpLm9yaWdpbnx8IioiKX0sbi5wYXJhbWV0ZXIpKX0sdGhpcy5jdXN0b21Jbml0fHx0aGlzLmluaXQoKX0sQT0oeS5pbml0Q1NQVHJ1c3RlZFR5cGU9ZnVuY3Rpb24odCl7dmFyIG49bmV3IFVSTCh0LGxvY2F0aW9uLm9yaWdpbik7d2luZG93LkRPTVB1cmlmeSYmd2luZG93LnRydXN0ZWRUeXBlcyYmd2luZG93LnRydXN0ZWRUeXBlcy5jcmVhdGVQb2xpY3kmJih3aW5kb3cuT3RUcnVzdGVkVHlwZS5UcnVzdGVkVHlwZVBvbGljeT13aW5kb3cudHJ1c3RlZFR5cGVzLmNyZWF0ZVBvbGljeSgib3QtdHJ1c3RlZC10eXBlLXBvbGljeSIse2NyZWF0ZUhUTUw6ZnVuY3Rpb24odCl7cmV0dXJuIHdpbmRvdy5ET01QdXJpZnkuc2FuaXRpemUodCl9LGNyZWF0ZVNjcmlwdDpmdW5jdGlvbih0KXtyZXR1cm4gd2luZG93LkRPTVB1cmlmeS5zYW5pdGl6ZSh0KX0sY3JlYXRlU2NyaXB0VVJMOmZ1bmN0aW9uKHQpe3ZhciBlLGk9W2RvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLG4uaG9zdG5hbWVdO3RyeXtlPW5ldyBVUkwodCxsb2NhdGlvbi5vcmlnaW4pfWNhdGNoKHQpe3JldHVybiJhYm91dDpibGFuayNlcnJvciJ9cmV0dXJuIGUuaG9zdG5hbWUmJiFpLmluY2x1ZGVzKGUuaG9zdG5hbWUpPyJhYm91dDpibGFuayNibG9ja2VkIjplLmhyZWZ9fSkpfSx5LmlzQ3NwVHJ1c3RlZFR5cGU9ZnVuY3Rpb24oKXt2YXIgdDtyZXR1cm4obnVsbD09KHQ9d2luZG93Lk90VHJ1c3RlZFR5cGUpP3ZvaWQgMDp0LmlzQ3NwVHJ1c3RlZFR5cGVFbmFibGVkKSYmKG51bGw9PSh0PXdpbmRvdy5PdFRydXN0ZWRUeXBlKT92b2lkIDA6dC5UcnVzdGVkVHlwZVBvbGljeSl9LHkuY3JlYXRlU2NyaXB0VVJMPWZ1bmN0aW9uKHQpe3JldHVybiB5LmlzQ3NwVHJ1c3RlZFR5cGUoKT93aW5kb3cuT3RUcnVzdGVkVHlwZS5UcnVzdGVkVHlwZVBvbGljeS5jcmVhdGVTY3JpcHRVUkwodCk6dH0seS5jaGVja0FuZEFzc2lnbkNzcFRydXN0ZWRUeXBlRW5hYmxlZD1mdW5jdGlvbih0KXt0PW51bGw9PSh0PXQuVGVuYW50RmVhdHVyZXMpP3ZvaWQgMDp0LkNvb2tpZVYyQ1NQVHJ1c3RlZFR5cGU7cmV0dXJuIHdpbmRvdy5PdFRydXN0ZWRUeXBlPXtpc0NzcFRydXN0ZWRUeXBlRW5hYmxlZDp0fSx0fSx5KTtmdW5jdGlvbiB5KCl7fVMucHJvdG90eXBlLmluaXRDb25zZW50U0RLPWZ1bmN0aW9uKCl7dGhpcy5pbml0Q3VzdG9tRXZlbnRQb2x5ZmlsbCgpLHRoaXMuc2V0U3R1YlNjcmlwdEVsZW1lbnQoKSx0aGlzLnNldE9URGF0YUxheWVyKCksdGhpcy5nZXRQYXJhbSgpLHRoaXMuZmV0Y2hCYW5uZXJTREtEZXBlbmRlbmN5KCksdGhpcy5jYXB0dXJlTm9uY2UoKSx0aGlzLmNhcHR1cmVTaG9waWZ5KCl9LFMucHJvdG90eXBlLmNhcHR1cmVOb25jZT1mdW5jdGlvbigpe3RoaXMubm9uY2U9cC5zdHViU2NyaXB0RWxlbWVudC5ub25jZXx8cC5zdHViU2NyaXB0RWxlbWVudC5nZXRBdHRyaWJ1dGUoIm5vbmNlIil8fG51bGx9LFMucHJvdG90eXBlLmNhcHR1cmVTaG9waWZ5PWZ1bmN0aW9uKCl7dGhpcy5pc1Nob3BpZnk9cC5zdHViU2NyaXB0RWxlbWVudC5oYXNBdHRyaWJ1dGUoImRhdGEtc2hvcGlmeS1jb25zZW50LW1hcHBpbmciKX0sUy5wcm90b3R5cGUuZmV0Y2hCYW5uZXJTREtEZXBlbmRlbmN5PWZ1bmN0aW9uKCl7dGhpcy5zZXREb21haW5EYXRhRmlsZVVSTCgpLHRoaXMuY3Jvc3NPcmlnaW49cC5zdHViU2NyaXB0RWxlbWVudC5nZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIil8fG51bGwsdGhpcy5wcmV2aWV3TW9kZT0idHJ1ZSI9PT1wLnN0dWJTY3JpcHRFbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1wcmV2aWV3LW1vZGUiKSx0aGlzLm90RmV0Y2gocC5iYW5uZXJEYXRhUGFyZW50VVJMLHRoaXMuZ2V0TG9jYXRpb24uYmluZCh0aGlzKSwhMSxudWxsLG51bGwsITApfSxTLnByb3RvdHlwZS5zZXREb21haW5JZkJ1bGtEb21haW5FbmFibGVkPWZ1bmN0aW9uKHQpe3ZhciBlPXQmJnQuVGVuYW50RmVhdHVyZXMsaT13aW5kb3cubG9jYXRpb24uaG9zdG5hbWUsbj10LkRvbWFpbixhPXQuQnVsa0RvbWFpbkNoZWNrVXJsO2UmJmUuQ29va2llVjJCdWxrRG9tYWluTWFuYWdlbWVudCYmaSE9PW4mJnQuU2NyaXB0VHlwZT09PWQmJigoZT13aW5kb3cuc2Vzc2lvblN0b3JhZ2UpJiZlLmdldEl0ZW0oImJ1bGtEb21haW5NZ210RW5hYmxlZCIpP3RoaXMuaGFuZGxlQnVsa0RvbWFpbk1nbXQoe2lzVmFsaWQ6InRydWUiPT09d2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0oImJ1bGtEb21haW5NZ210RW5hYmxlZCIpfSx0KToobj17bG9jYXRpb246cC5zdG9yYWdlQmFzZVVSTC5yZXBsYWNlKC9eaHR0cHM/OlwvXC8vLCIiKSxkb21haW5JZDp0aGlzLmRvbWFpbklkLHVybDppfSx0aGlzLm90RmV0Y2goYSx0aGlzLmhhbmRsZUJ1bGtEb21haW5NZ210LCExLG4sdCkpKX0sUy5wcm90b3R5cGUuZ2V0TG9jYXRpb249ZnVuY3Rpb24odCl7aWYodGhpcy5zZXREb21haW5JZkJ1bGtEb21haW5FbmFibGVkKHQpLHRoaXMudXBkYXRlVmVyc2lvbih0KSx0aGlzLnN1YkRvbWFpbkVuYWJsZWQ9dC5TdWJEb21haW5FbmFibGVkfHwhMSx0aGlzLmRvbWFpbkhhc2hWYWx1ZT10LkRvbWFpbkhhc2hWYWx1ZXx8IiIsdGhpcy5zY3JpcHRUeXBlPXQuU2NyaXB0VHlwZXx8IiIsdGhpcy5lbnN1cmVIdG1sR3JvdXBEYXRhSW5pdGlhbGlzZWQoKSwodC5UZW5hbnRGZWF0dXJlcyYmdC5UZW5hbnRGZWF0dXJlcy5Db29raWVWMkNTUHx8dC5Db29raWVWMkNTUEVuYWJsZWQpJiZ0aGlzLm5vbmNlJiYodGhpcy5zZXRBdHRyaWJ1dGVQb2x5ZmlsbElzQWN0aXZlPSEwLChuZXcgaCkuaW1wbGVtZW50VGhlUG9seWZpbGwoKSksQS5jaGVja0FuZEFzc2lnbkNzcFRydXN0ZWRUeXBlRW5hYmxlZCh0KSYmQS5pbml0Q1NQVHJ1c3RlZFR5cGUocC5zdG9yYWdlQmFzZVVSTCksIXQuUnVsZVNldFswXS5UeXBlKXJldHVybiB0aGlzLmlhYlR5cGVBZGRlZD0hMSx3aW5kb3cuX190Y2ZhcGk9dGhpcy5leGVjdXRlVGNmQXBpLHRoaXMuaW50aWFsaXplSWFiU3R1YigpLHRoaXMuYWRkQmFubmVyU0RLU2NyaXB0KHQpO3ZhciBlLGk9d2luZG93O2kuT25lVHJ1c3QmJmkuT25lVHJ1c3QuZ2VvbG9jYXRpb25SZXNwb25zZT8oaT1pLk9uZVRydXN0Lmdlb2xvY2F0aW9uUmVzcG9uc2UsdGhpcy5zZXRHZW9Mb2NhdGlvbihpLmNvdW50cnlDb2RlLGkuc3RhdGVDb2RlLGkuc3RhdGVOYW1lKSx0aGlzLmFkZEJhbm5lclNES1NjcmlwdCh0KSk6KGk9dGhpcy5yZWFkQ29va2llUGFyYW0ocC5vcHRhbm9uQ29va2llTmFtZSxwLmdlb2xvY2F0aW9uQ29va2llc1BhcmFtKSl8fHQuU2tpcEdlb2xvY2F0aW9uPyhlPWkuc3BsaXQoIjsiKVswXSxpPWkuc3BsaXQoIjsiKVsxXSx0aGlzLnNldEdlb0xvY2F0aW9uKGUsaSksdGhpcy5hZGRCYW5uZXJTREtTY3JpcHQodCkpOnRoaXMuZ2V0R2VvTG9jYXRpb24odCl9LFMucHJvdG90eXBlLmhhbmRsZUJ1bGtEb21haW5NZ210PWZ1bmN0aW9uKHQsZSl7d2luZG93LnNlc3Npb25TdG9yYWdlJiZ3aW5kb3cuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgiYnVsa0RvbWFpbk1nbXRFbmFibGVkIixKU09OLnN0cmluZ2lmeSh0LmlzVmFsaWQpKSx0LmlzVmFsaWQmJihlLkRvbWFpbj13aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpfSxTLnByb3RvdHlwZS5nZXRHZW9sb2NhdGlvblVSTD1mdW5jdGlvbih0KXt0LlRlbmFudEZlYXR1cmVzO3ZhciBlPSIiK3Auc3R1YlNjcmlwdEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJzcmMiKS5zcGxpdChwLnN0dWJGaWxlTmFtZSlbMF0rdC5WZXJzaW9uO3JldHVybiBuZXcgUmVnRXhwKCJeZmlsZTovLyIsImkiKS50ZXN0KGUpJiZ0Lk1vYmlsZVNESz8oZT0iLyIrdC5HZW9sb2NhdGlvblVybC5yZXBsYWNlKC9eKGh0dHB8aHR0cHMpOlwvXC8vLCIiKS5zcGxpdCgiLyIpLnNsaWNlKDEpLmpvaW4oIi8iKSsiLmpzIixwLnN0b3JhZ2VCYXNlVVJMK2UpOnQuR2VvbG9jYXRpb25Vcmx9LFMucHJvdG90eXBlLmdlb0xvY2F0aW9uSnNvbkNhbGxiYWNrPWZ1bmN0aW9uKHQsZSl7ZSYmdGhpcy5zZXRHZW9Mb2NhdGlvbihlLmNvdW50cnksZS5zdGF0ZSxlLnN0YXRlTmFtZSksdGhpcy5hZGRCYW5uZXJTREtTY3JpcHQodCl9LFMucHJvdG90eXBlLmdldEdlb0xvY2F0aW9uPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuZ2V0R2VvbG9jYXRpb25VUkwodCk7dGhpcy5vdEZldGNoKGUsdGhpcy5nZW9Mb2NhdGlvbkpzb25DYWxsYmFjay5iaW5kKHRoaXMsdCksITApfSxTLnByb3RvdHlwZS5zZXRPVERhdGFMYXllcj1mdW5jdGlvbigpe3ZhciB0PSJkYXRhLWRMYXllci1pZ25vcmUiLGU9cC5zdHViU2NyaXB0RWxlbWVudC5oYXNBdHRyaWJ1dGUodCksdD1wLnN0dWJTY3JpcHRFbGVtZW50LmdldEF0dHJpYnV0ZSh0KTt0aGlzLm90RGF0YUxheWVyPXtpZ25vcmU6ZSYmInRydWUiPT09dHx8ZSYmIiI9PT10LG5hbWU6dGhpcy5nZXRTdHViQXR0ck9yUXVlcnlQYXJhbSgiZGF0YS1kTGF5ZXItbmFtZSIpfHwiZGF0YUxheWVyIn19LFMucHJvdG90eXBlLnNldEdlb0xvY2F0aW9uPWZ1bmN0aW9uKHQsZSxpKXtwLnVzZXJMb2NhdGlvbj17Y291bnRyeTp0LHN0YXRlOmU9dm9pZCAwPT09ZT8iIjplLHN0YXRlTmFtZTppPXZvaWQgMD09PWk/IiI6aX19LFMucHJvdG90eXBlLm90RmV0Y2g9ZnVuY3Rpb24odCxpLGUsbixhLG8pe3ZvaWQgMD09PWUmJihlPSExKSx2b2lkIDA9PT1uJiYobj1udWxsKSx2b2lkIDA9PT1vJiYobz0hMSk7dmFyIHM9d2luZG93LnNlc3Npb25TdG9yYWdlJiZ3aW5kb3cuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgib3RQcmV2aWV3RGF0YSIpO2lmKG5ldyBSZWdFeHAoIl5maWxlOi8vIiwiaSIpLnRlc3QodCkpdGhpcy5vdEZldGNoT2ZmbGluZUZpbGUodCxpKTtlbHNlIGlmKDA8PXQuaW5kZXhPZigiL2NvbnNlbnQvIikmJnRoaXMucHJldmlld01vZGUmJnMpe3M9SlNPTi5wYXJzZShzKS5kb21haW5Kc29uO2kocyl9ZWxzZXtwLm1vYmlsZU9ubGluZVVSTC5wdXNoKHQpO3ZhciByPW5ldyBYTUxIdHRwUmVxdWVzdCx1PXRoaXM7aWYoci5vbmxvYWQ9ZnVuY3Rpb24odCl7dmFyIGU7dGhpcyYmdGhpcy5yZXNwb25zZVRleHQ/ZT10aGlzLnJlc3BvbnNlVGV4dDp0JiZ0LnRhcmdldCYmKGU9dC50YXJnZXQucmVzcG9uc2VUZXh0KSxvJiZ0aGlzJiZ0aGlzLmdldFJlc3BvbnNlSGVhZGVyJiYodD10aGlzLmdldFJlc3BvbnNlSGVhZGVyKCJYLU9uZVRydXN0LUlzQm90IiksdS5pc0JvdEhlYWRlckRvbWFpbj0hIXQmJiJ0cnVlIj09PXQudG9Mb3dlckNhc2UoKSksYT9pKEpTT04ucGFyc2UoZSksYSk6aShKU09OLnBhcnNlKGUpKX0sci5vbmVycm9yPWZ1bmN0aW9uKCl7aSgpfSxyLm9wZW4oIkdFVCIsdCksci53aXRoQ3JlZGVudGlhbHM9ITEsZSYmci5zZXRSZXF1ZXN0SGVhZGVyKCJhY2NlcHQiLCJhcHBsaWNhdGlvbi9qc29uIiksbilmb3IodmFyIGwgaW4gbilyLnNldFJlcXVlc3RIZWFkZXIobCxuW2xdKTtyLnNlbmQoKX19LFMucHJvdG90eXBlLm90RmV0Y2hPZmZsaW5lRmlsZT1mdW5jdGlvbih0LGUpe3ZhciBpPSh0PXQucmVwbGFjZSgiLmpzb24iLCIuanMiKSkuc3BsaXQoIi8iKSxuPWlbaS5sZW5ndGgtMV0uc3BsaXQoIi5qcyIpWzBdO3RoaXMuanNvbnAodCxmdW5jdGlvbigpe2Uod2luZG93W25dKX0pfSxTLnByb3RvdHlwZS5qc29ucD1mdW5jdGlvbih0LGUsaSxuKXt2b2lkIDA9PT1pJiYoaT0hMSksdm9pZCAwPT09biYmKG49IiIpO3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpLG89QS5jcmVhdGVTY3JpcHRVUkwodCk7YS5zZXRBdHRyaWJ1dGUoInNyYyIsbyksdGhpcy5ub25jZSYmYS5zZXRBdHRyaWJ1dGUoIm5vbmNlIix0aGlzLm5vbmNlKSxhLmFzeW5jPSEwLGEudHlwZT0idGV4dC9qYXZhc2NyaXB0IixpJiZuJiYoYS5pbnRlZ3JpdHk9biksdGhpcy5jcm9zc09yaWdpbiYmYS5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIix0aGlzLmNyb3NzT3JpZ2luKSxkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGEpLG5ldyBSZWdFeHAoIl5maWxlOi8vIiwiaSIpLnRlc3QodCl8fHAubW9iaWxlT25saW5lVVJMLnB1c2godCksZSYmKGEub25sb2FkPWEub25lcnJvcj1mdW5jdGlvbigpe2UoKX0pfSxTLnByb3RvdHlwZS5nZXRSZWdpb25TZXQ9ZnVuY3Rpb24odCl7dmFyIGUsaSxuLGE9cC51c2VyTG9jYXRpb24sbz10LlJ1bGVTZXQuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiEwPT09dC5EZWZhdWx0fSk7aWYoIWEuY291bnRyeSYmIWEuc3RhdGUpcmV0dXJuIG8mJjA8by5sZW5ndGg/b1swXTpudWxsO2Zvcih2YXIgcz1hLnN0YXRlLnRvTG93ZXJDYXNlKCkscj1hLmNvdW50cnkudG9Mb3dlckNhc2UoKSx1PTA7dTx0LlJ1bGVTZXQubGVuZ3RoO3UrKylpZighMD09PXQuUnVsZVNldFt1XS5HbG9iYWwpbj10LlJ1bGVTZXRbdV07ZWxzZXt2YXIgbD10LlJ1bGVTZXRbdV0uU3RhdGVzO2lmKGxbcl0mJjA8PWxbcl0uaW5kZXhPZihzKSl7aT10LlJ1bGVTZXRbdV07YnJlYWt9MDw9dC5SdWxlU2V0W3VdLkNvdW50cmllcy5pbmRleE9mKHIpJiYoZT10LlJ1bGVTZXRbdV0pfXJldHVybiBpfHxlfHxufSxTLnByb3RvdHlwZS5lbnN1cmVIdG1sR3JvdXBEYXRhSW5pdGlhbGlzZWQ9ZnVuY3Rpb24oKXt0aGlzLmluaXRpYWxpemVJQUJEYXRhKCksdGhpcy5pbml0aWFsaXplR3JvdXBEYXRhKCksdGhpcy5pbml0aWFsaXplSG9zdERhdGEoKSx0aGlzLmluaXRpYWxpemVHZW5WZW5EYXRhKCl9LFMucHJvdG90eXBlLmluaXRpYWxpemVHcm91cERhdGE9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnJlYWRDb29raWVQYXJhbShwLm9wdGFub25Db29raWVOYW1lLCJncm91cHMiKTt0JiYocC5vcHRhbm9uSHRtbEdyb3VwRGF0YT10aGlzLmRlc2VyaWFsaXNlU3RyaW5nVG9BcnJheSh0KSl9LFMucHJvdG90eXBlLmluaXRpYWxpemVIb3N0RGF0YT1mdW5jdGlvbigpe3ZhciB0PXRoaXMucmVhZENvb2tpZVBhcmFtKHAub3B0YW5vbkNvb2tpZU5hbWUsImhvc3RzIik7dCYmKHAub3B0YW5vbkhvc3REYXRhPXRoaXMuZGVzZXJpYWxpc2VTdHJpbmdUb0FycmF5KHQpKX0sUy5wcm90b3R5cGUuaW5pdGlhbGl6ZUdlblZlbkRhdGE9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnJlYWRDb29raWVQYXJhbShwLm9wdGFub25Db29raWVOYW1lLCJnZW5WZW5kb3JzIik7dCYmKHAuZ2VuVmVuZG9yc0RhdGE9dGhpcy5kZXNlcmlhbGlzZVN0cmluZ1RvQXJyYXkodCkpfSxTLnByb3RvdHlwZS5pbml0aWFsaXplSUFCRGF0YT1mdW5jdGlvbigpe3RoaXMudmFsaWRhdGVJQUJHRFBSQXBwbGllZCgpLHRoaXMudmFsaWRhdGVJQUJHbG9iYWxTY29wZSgpfSxTLnByb3RvdHlwZS52YWxpZGF0ZUlBQkdsb2JhbFNjb3BlPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5yZWFkQ29va2llUGFyYW0ocC5vcHRhbm9uQ29va2llTmFtZSxwLm9uZVRydXN0SXNJQUJDcm9zc0NvbnNlbnRFbmFibGVQYXJhbSk7dD8idHJ1ZSI9PT10PyhwLmhhc0lBQkdsb2JhbFNjb3BlPSEwLHAuaXNTdHViUmVhZHk9ITEpOihwLmhhc0lBQkdsb2JhbFNjb3BlPSExLHAuSUFCQ29va2llVmFsdWU9dGhpcy5nZXRDb29raWUocC5vbmVUcnVzdElBQkNvb2tpZU5hbWUpKTpwLmlzU3R1YlJlYWR5PSExfSxTLnByb3RvdHlwZS52YWxpZGF0ZUlBQkdEUFJBcHBsaWVkPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5yZWFkQ29va2llUGFyYW0ocC5vcHRhbm9uQ29va2llTmFtZSxwLmdlb2xvY2F0aW9uQ29va2llc1BhcmFtKS5zcGxpdCgiOyIpWzBdO3Q/dGhpcy5pc0Jvb2xlYW4odCk/cC5vbmVUcnVzdElBQmdkcHJBcHBsaWVzR2xvYmFsbHk9InRydWUiPT09dDpwLm9uZVRydXN0SUFCZ2RwckFwcGxpZXNHbG9iYWxseT0wPD1wLkVVQ09VTlRSSUVTLmluZGV4T2YodCk6cC5pc1N0dWJSZWFkeT0hMX0sUy5wcm90b3R5cGUuaXNCb29sZWFuPWZ1bmN0aW9uKHQpe3JldHVybiJ0cnVlIj09PXR8fCJmYWxzZSI9PT10fSxTLnByb3RvdHlwZS5yZWFkQ29va2llUGFyYW09ZnVuY3Rpb24odCxlKXt2YXIgaSxuLGEsbyx0PXRoaXMuZ2V0Q29va2llKHQpO2lmKHQpe2ZvcihuPXt9LGE9dC5zcGxpdCgiJiIpLGk9MDtpPGEubGVuZ3RoO2krPTEpbz1hW2ldLnNwbGl0KCI9IiksbltkZWNvZGVVUklDb21wb25lbnQob1swXSldPWRlY29kZVVSSUNvbXBvbmVudChvWzFdKS5yZXBsYWNlKC9cKy9nLCIgIik7cmV0dXJuIGUmJm5bZV0/bltlXTplJiYhbltlXT8iIjpufXJldHVybiIifSxTLnByb3RvdHlwZS5nZXRDb29raWVOYW1lU3VmZml4PWZ1bmN0aW9uKCl7cmV0dXJuKHRoaXMuc2NyaXB0VHlwZT09PWR8fHRoaXMuc2NyaXB0VHlwZT09PWMpJiZ0aGlzLnN1YkRvbWFpbkVuYWJsZWQmJnRoaXMuZG9tYWluSGFzaFZhbHVlPyJfIit0aGlzLmRvbWFpbkhhc2hWYWx1ZToiIn0sUy5wcm90b3R5cGUuZ2V0Q29va2llPWZ1bmN0aW9uKHQpe2lmKHRoaXMuaXNBbXApe3ZhciBlPUpTT04ucGFyc2Uod2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuZG9tYWluSWQpKXx8e307aWYoZSlyZXR1cm4gZVt0XXx8bnVsbH1mb3IodmFyIGk9IiIrdCt0aGlzLmdldENvb2tpZU5hbWVTdWZmaXgoKSsiPSIsbj0wLGE9ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7bjxhLmxlbmd0aDtuKyspe3ZhciBvPWFbbl0udHJpbSgpO2lmKDA9PT1vLmluZGV4T2YoaSkpcmV0dXJuIG8uc3Vic3RyaW5nKGkubGVuZ3RoKX1yZXR1cm4gbnVsbH0sUy5wcm90b3R5cGUudXBkYXRlR3RtTWFjcm9zPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9cC5vcHRhbm9uSHRtbEdyb3VwRGF0YS5sZW5ndGgsaT0wO2k8ZTtpKyspdGhpcy5lbmRzV2l0aChwLm9wdGFub25IdG1sR3JvdXBEYXRhW2ldLCI6MSIpJiZ0LnB1c2gocC5vcHRhbm9uSHRtbEdyb3VwRGF0YVtpXS5yZXBsYWNlKCI6MSIsIiIpKTtmb3IoZT1wLm9wdGFub25Ib3N0RGF0YS5sZW5ndGgsaT0wO2k8ZTtpKyspdGhpcy5lbmRzV2l0aChwLm9wdGFub25Ib3N0RGF0YVtpXSwiOjEiKSYmdC5wdXNoKHAub3B0YW5vbkhvc3REYXRhW2ldLnJlcGxhY2UoIjoxIiwiIikpO2ZvcihlPXAuZ2VuVmVuZG9yc0RhdGEubGVuZ3RoLGk9MDtpPGU7aSsrKXRoaXMuZW5kc1dpdGgocC5nZW5WZW5kb3JzRGF0YVtpXSwiOjEiKSYmdC5wdXNoKHAuZ2VuVmVuZG9yc0RhdGFbaV0ucmVwbGFjZSgiOjEiLCIiKSk7Zm9yKGU9cC52ZW5kb3JzU2VydmljZURhdGEubGVuZ3RoLGk9MDtpPGU7aSsrKXRoaXMuZW5kc1dpdGgocC52ZW5kb3JzU2VydmljZURhdGFbaV0sIjoxIikmJnQucHVzaChwLnZlbmRvcnNTZXJ2aWNlRGF0YVtpXS5yZXBsYWNlKCI6MSIsIiIpKTt2YXIgbixhPSIsIit0aGlzLnNlcmlhbGlzZUFycmF5VG9TdHJpbmcodCkrIiwiLG89KHdpbmRvdy5PbmV0cnVzdEFjdGl2ZUdyb3Vwcz1hLHdpbmRvdy5PcHRhbm9uQWN0aXZlR3JvdXBzPWEsd2luZG93KSxzPSh0aGlzLm90RGF0YUxheWVyLmlnbm9yZXx8dm9pZCAwPT09b1t0aGlzLm90RGF0YUxheWVyLm5hbWVdP3RoaXMub3REYXRhTGF5ZXIuaWdub3JlfHwob1t0aGlzLm90RGF0YUxheWVyLm5hbWVdPVt7ZXZlbnQ6Ik9uZVRydXN0TG9hZGVkIixPbmV0cnVzdEFjdGl2ZUdyb3VwczphfSx7ZXZlbnQ6Ik9wdGFub25Mb2FkZWQiLE9wdGFub25BY3RpdmVHcm91cHM6YX1dKTpvW3RoaXMub3REYXRhTGF5ZXIubmFtZV0uY29uc3RydWN0b3I9PT1BcnJheSYmKG9bdGhpcy5vdERhdGFMYXllci5uYW1lXS5wdXNoKHtldmVudDoiT25lVHJ1c3RMb2FkZWQiLE9uZXRydXN0QWN0aXZlR3JvdXBzOmF9KSxvW3RoaXMub3REYXRhTGF5ZXIubmFtZV0ucHVzaCh7ZXZlbnQ6Ik9wdGFub25Mb2FkZWQiLE9wdGFub25BY3RpdmVHcm91cHM6YX0pKSxuZXcgQ3VzdG9tRXZlbnQoImNvbnNlbnQub25ldHJ1c3QiLHtkZXRhaWw6dH0pKTshdGhpcy5vdERhdGFMYXllci5pZ25vcmUmJnQubGVuZ3RoJiYob1t0aGlzLm90RGF0YUxheWVyLm5hbWVdLmNvbnN0cnVjdG9yPT09QXJyYXkmJm9bdGhpcy5vdERhdGFMYXllci5uYW1lXS5wdXNoKHtldmVudDoiT25lVHJ1c3RHcm91cHNVcGRhdGVkIixPbmV0cnVzdEFjdGl2ZUdyb3VwczphfSksbj1uZXcgQ3VzdG9tRXZlbnQoIk9uZVRydXN0R3JvdXBzVXBkYXRlZCIse2RldGFpbDp0fSkpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0Lmxlbmd0aCYmd2luZG93LmRpc3BhdGNoRXZlbnQocyksbiYmd2luZG93LmRpc3BhdGNoRXZlbnQobil9KX0sUy5wcm90b3R5cGUuZGVzZXJpYWxpc2VTdHJpbmdUb0FycmF5PWZ1bmN0aW9uKHQpe3JldHVybiB0P3Quc3BsaXQoIiwiKTpbXX0sUy5wcm90b3R5cGUuZW5kc1dpdGg9ZnVuY3Rpb24odCxlKXtyZXR1cm4tMSE9PXQuaW5kZXhPZihlLHQubGVuZ3RoLWUubGVuZ3RoKX0sUy5wcm90b3R5cGUuc2VyaWFsaXNlQXJyYXlUb1N0cmluZz1mdW5jdGlvbih0KXtyZXR1cm4gdC50b1N0cmluZygpfSxTLnByb3RvdHlwZS5nZXRTdHViQXR0ck9yUXVlcnlQYXJhbT1mdW5jdGlvbih0KXt2YXIgZT1wLnN0dWJTY3JpcHRFbGVtZW50LGk9ZSYmZS5nZXRBdHRyaWJ1dGUodCk7cmV0dXJuIGl8fChpPWUmJmUuZ2V0QXR0cmlidXRlKCJzcmMiKSx0aGlzLmdldFN0dWJRdWVyeVBhcmFtKGksdCkpfSxTLnByb3RvdHlwZS5nZXRTdHViUXVlcnlQYXJhbT1mdW5jdGlvbih0LGUpe3JldHVybiF0fHwodD10LnNwbGl0KCI/IikpLmxlbmd0aDwyP251bGw6bmV3IFVSTFNlYXJjaFBhcmFtcyh0WzFdKS5nZXQoZSl9LFMucHJvdG90eXBlLnNldFN0dWJTY3JpcHRFbGVtZW50PWZ1bmN0aW9uKCl7cC5zdHViU2NyaXB0RWxlbWVudD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJzY3JpcHRbc3JjKj0nIitwLnN0dWJGaWxlTmFtZSsiJ10iKTt2YXIgdD1wLnN0dWJTY3JpcHRFbGVtZW50JiZwLnN0dWJTY3JpcHRFbGVtZW50LmdldEF0dHJpYnV0ZSgic3JjIiksdD10JiZ0aGlzLmdldFN0dWJRdWVyeVBhcmFtKHQsImRpZCIpO3Auc3R1YlNjcmlwdEVsZW1lbnQmJnAuc3R1YlNjcmlwdEVsZW1lbnQuaGFzQXR0cmlidXRlKHAuREFUQUZJTEVBVFRSSUJVVEUpP3RoaXMuZG9tYWluSWQ9cC5zdHViU2NyaXB0RWxlbWVudC5nZXRBdHRyaWJ1dGUocC5EQVRBRklMRUFUVFJJQlVURSkudHJpbSgpOnQ/dGhpcy5kb21haW5JZD10OnAuc3R1YlNjcmlwdEVsZW1lbnR8fChwLnN0dWJTY3JpcHRFbGVtZW50PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInNjcmlwdFtzcmMqPSciK3AubWlncmF0ZWRDQ1RJRCsiJ10iKSxwLnN0dWJTY3JpcHRFbGVtZW50JiYocC5pc01pZ3JhdGVkVVJMPSEwLHRoaXMuZG9tYWluSWQ9cC5taWdyYXRlZERvbWFpbklkLnRyaW0oKSkpfSxTLnByb3RvdHlwZS5zZXREb21haW5EYXRhRmlsZVVSTD1mdW5jdGlvbigpe3ZhciB0PXAuc3R1YlNjcmlwdEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJzcmMiKSxlPS0xPHQuaW5kZXhPZigiL2NvbnNlbnQiKTt0JiYocC5pc01pZ3JhdGVkVVJMP3Auc3RvcmFnZUJhc2VVUkw9dC5zcGxpdCgiL2NvbnNlbnQvIitwLm1pZ3JhdGVkQ0NUSUQpWzBdOnAuc3RvcmFnZUJhc2VVUkw9KGU/dC5zcGxpdCgiL2NvbnNlbnQiKTp0LnNwbGl0KCIvc2NyaXB0dGVtcGxhdGVzLyIrcC5zdHViRmlsZU5hbWUpKVswXSksdGhpcy5zdG9yYWdlQmFzZVVSTD1wLnN0b3JhZ2VCYXNlVVJMLHRoaXMuaXNQcmV2aWV3JiYtMT09PXRoaXMuZG9tYWluSWQuaW5kZXhPZigidGVzdCIpP3RoaXMuZG9tYWluSWQ9dGhpcy5kb21haW5JZCsiLXRlc3QiOnRoaXMuaXNQcmV2aWV3PSExLHAuYmFubmVyQmFzZURhdGFVUkw9cC5zdG9yYWdlQmFzZVVSTCYmcC5zdG9yYWdlQmFzZVVSTCsiL2NvbnNlbnQvIit0aGlzLmRvbWFpbklkLHAuYmFubmVyRGF0YVBhcmVudFVSTD1wLmJhbm5lckJhc2VEYXRhVVJMKyIvIit0aGlzLmRvbWFpbklkKyIuanNvbiJ9LFMucHJvdG90eXBlLmluaXRDdXN0b21FdmVudFBvbHlmaWxsPWZ1bmN0aW9uKCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5DdXN0b21FdmVudClyZXR1cm4hMTtmdW5jdGlvbiB0KHQsZSl7ZT1lfHx7YnViYmxlczohMSxjYW5jZWxhYmxlOiExLGRldGFpbDp2b2lkIDB9O3ZhciBpPWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJDdXN0b21FdmVudCIpO3JldHVybiBpLmluaXRDdXN0b21FdmVudCh0LGUuYnViYmxlcyxlLmNhbmNlbGFibGUsZS5kZXRhaWwpLGl9dC5wcm90b3R5cGU9d2luZG93LkV2ZW50LnByb3RvdHlwZSx3aW5kb3cuQ3VzdG9tRXZlbnQ9dH0sUy5wcm90b3R5cGUucmVtb3ZlVGNmPWZ1bmN0aW9uKCl7ZGVsZXRlIHdpbmRvdy5fX3RjZmFwaTt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJpZnJhbWVbbmFtZT0nX190Y2ZhcGlMb2NhdG9yJ10iKVswXTt0JiZ0LnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQodCl9LFMucHJvdG90eXBlLmdldFBhcmFtRm9ySUU9ZnVuY3Rpb24oKXtyZXR1cm57Z2V0OmZ1bmN0aW9uKHQpe3Q9bmV3IFJlZ0V4cCgiWz8mXSIrdCsiPShbXiYjXSopIikuZXhlYyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtyZXR1cm4gbnVsbD09PXQ/bnVsbDpkZWNvZGVVUkkodFsxXSl8fCIifX19LFMucHJvdG90eXBlLmdldFBhcmFtPWZ1bmN0aW9uKCl7d2luZG93LmRvY3VtZW50LmRvY3VtZW50TW9kZXx8IXdpbmRvdy5VUkxTZWFyY2hQYXJhbXM/dGhpcy51cmxQYXJhbXM9dGhpcy5nZXRQYXJhbUZvcklFKCk6dGhpcy51cmxQYXJhbXM9bmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTt2YXIgdD0idHJ1ZSI9PT10aGlzLnVybFBhcmFtcy5nZXQoIm90cmVzZXQiKSxlPSJ0cnVlIj09PXRoaXMudXJsUGFyYW1zLmdldCgib3RwcmV2aWV3IiksaT0odGhpcy5nZW9Gcm9tVXJsPSh0aGlzLnVybFBhcmFtcy5nZXQoIm90Z2VvIil8fCIiKS50b0xvd2VyQ2FzZSgpLHRoaXMucmVhZENvb2tpZVBhcmFtKGwsImV4cGlyeSIpKSxuPXRoaXMucmVhZENvb2tpZVBhcmFtKGwscyk7dGhpcy5pc1Jlc2V0PXR8fGkmJm5ldyBEYXRlKGkpPG5ldyBEYXRlLHRoaXMuaXNQcmV2aWV3PSF0aGlzLmlzUmVzZXQmJihlfHxpJiZuZXcgRGF0ZShpKT5uZXcgRGF0ZSksdGhpcy5zZXRHZW9QYXJhbSh0aGlzLmdlb0Zyb21Vcmx8fG4pfSxTLnByb3RvdHlwZS5zZXRHZW9QYXJhbT1mdW5jdGlvbih0KXt2YXIgZTt0JiYoKGU9d2luZG93KS5PbmVUcnVzdHx8KGUuT25lVHJ1c3Q9e30pLHQ9dC5zcGxpdCgiLCIpLGUuT25lVHJ1c3QuZ2VvbG9jYXRpb25SZXNwb25zZT17Y291bnRyeUNvZGU6dFswXSxzdGF0ZUNvZGU6dFsxXX0pfSxTLnByb3RvdHlwZS51cGRhdGVWZXJzaW9uPWZ1bmN0aW9uKHQpeyJkZWJ1ZyIhPT10aGlzLmJ1aWxkVHlwZSYmImN5YnVpbGQiIT09dGhpcy5idWlsZFR5cGV8fCh0LlZlcnNpb249IjIwMjYwNy4xLjAiKX07dmFyIGI9UztmdW5jdGlvbiBTKCl7dmFyIHI9dGhpczt0aGlzLmlhYlR5cGU9bnVsbCx0aGlzLmlhYlR5cGVBZGRlZD0hMCx0aGlzLmNyb3NzT3JpZ2luPW51bGwsdGhpcy5pc0FtcD0hMSx0aGlzLmRvbWFpbklkPSIiLHRoaXMuaXNSZXNldD0hMSx0aGlzLmlzUHJldmlldz0hMSx0aGlzLmdlb0Zyb21Vcmw9IiIsdGhpcy5ub25jZT0iIix0aGlzLnNldEF0dHJpYnV0ZVBvbHlmaWxsSXNBY3RpdmU9ITEsdGhpcy5zdG9yYWdlQmFzZVVSTD0iIix0aGlzLmNoYXJzZXQ9bnVsbCx0aGlzLmlzU2hvcGlmeT0hMSx0aGlzLmlzQm90SGVhZGVyRG9tYWluPSExLHRoaXMuc3ViRG9tYWluRW5hYmxlZD0hMSx0aGlzLmRvbWFpbkhhc2hWYWx1ZT0iIix0aGlzLnNjcmlwdFR5cGU9IiIsdGhpcy5idWlsZFR5cGU9InVuZGVmaW5lZCIsdGhpcy5hZGRCYW5uZXJTREtTY3JpcHQ9ZnVuY3Rpb24ocyl7cmV0dXJuIGUocix2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsaSxuLGEsbztyZXR1cm4gdSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuKChlPXRoaXMuZ2V0UmVnaW9uU2V0KHMpKS5HQ0VuYWJsZXx8KHRoaXMudXBkYXRlR3RtTWFjcm9zKCksdGhpcy5ndG1VcGRhdGVkPSEwKSx0aGlzLmlhYlR5cGVBZGRlZCYmKCJJQUIyIiE9PWUuVHlwZSYmIklBQjJWMiIhPT1lLlR5cGV8fCh0aGlzLmlhYlR5cGU9ZS5UeXBlLHRoaXMuaW50aWFsaXplSWFiU3R1YigpKSwiSUFCMiIhPT1lLlR5cGUpJiYiSUFCMlYyIiE9PWUuVHlwZSYmdGhpcy5yZW1vdmVUY2YoKSxlLklzR1BQRW5hYmxlZD9mLmluaXQoKTpmLnJlbW92ZUdwcEFwaSgpLGk9cC5zdHViU2NyaXB0RWxlbWVudC5jbG9uZU5vZGUoITApLG49IiIsbj1zLlVzZVNES1JlZmFjdG9yPyhwLmlzTWlncmF0ZWRVUkwmJihpLnNyYz1wLnN0b3JhZ2VCYXNlVVJMKyIvc2NyaXB0dGVtcGxhdGVzL25ldy9zY3JpcHR0ZW1wbGF0ZXMvIitwLnN0dWJGaWxlTmFtZSsiLmpzIikscC5zdG9yYWdlQmFzZVVSTCsiL3NjcmlwdHRlbXBsYXRlcy9uZXcvc2NyaXB0dGVtcGxhdGVzLyIrcy5WZXJzaW9uKyIvIitwLmJhbm5lclNjcmlwdE5hbWUpOiI1LjExLjAiPT09cy5WZXJzaW9uPyhwLmlzTWlncmF0ZWRVUkwmJihpLnNyYz1wLnN0b3JhZ2VCYXNlVVJMKyIvc2NyaXB0dGVtcGxhdGVzL29sZC9zY3JpcHR0ZW1wbGF0ZXMvIitwLnN0dWJGaWxlTmFtZSsiLmpzIikscC5zdG9yYWdlQmFzZVVSTCsiL3NjcmlwdHRlbXBsYXRlcy9vbGQvc2NyaXB0dGVtcGxhdGVzLzUuMTEuMC8iK3AuYmFubmVyU2NyaXB0TmFtZSk6KHAuaXNNaWdyYXRlZFVSTCYmKGkuc3JjPXAuc3RvcmFnZUJhc2VVUkwrIi9zY3JpcHR0ZW1wbGF0ZXMvIitwLnN0dWJGaWxlTmFtZSsiLmpzIikscC5zdG9yYWdlQmFzZVVSTCsiL3NjcmlwdHRlbXBsYXRlcy8iK3MuVmVyc2lvbisiLyIrcC5iYW5uZXJTY3JpcHROYW1lKSxbImNoYXJzZXQiLCJkYXRhLWxhbmd1YWdlIiwiZGF0YS1kb2N1bWVudC1sYW5ndWFnZSIsImRhdGEtZG9tYWluLXNjcmlwdCIsImNyb3Nzb3JpZ2luIiwiZGF0YS1pZ25vcmUtZ2EiXS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3Auc3R1YlNjcmlwdEVsZW1lbnQuZ2V0QXR0cmlidXRlKHQpJiZpLnNldEF0dHJpYnV0ZSh0LHAuc3R1YlNjcmlwdEVsZW1lbnQuZ2V0QXR0cmlidXRlKHQpKX0pLHRoaXMuY2hhcnNldD1wLnN0dWJTY3JpcHRFbGVtZW50LmdldEF0dHJpYnV0ZSgiY2hhcnNldCIpLHRoaXMuaXNBbXA9ISFwLnN0dWJTY3JpcHRFbGVtZW50LmdldEF0dHJpYnV0ZSgiYW1wIikscC5zdHViU2NyaXB0RWxlbWVudC5nZXRBdHRyaWJ1dGUoImludGVncml0eSIpKT8obz1zLkNETkxvY2F0aW9uKyIvc2NyaXB0dGVtcGxhdGVzLyIrcy5WZXJzaW9uKyIvc3JpLWhhc2hlcy5qc29uIixbNCx0aGlzLmZldGNoU3JpSGFzaChvKV0pOlszLDJdO2Nhc2UgMTpyZXR1cm4gYT10LnNlbnQoKSxbMywzXTtjYXNlIDI6YT1udWxsLHQubGFiZWw9MztjYXNlIDM6cmV0dXJuIHdpbmRvdy5vdFN0dWJEYXRhPXtiYW5uZXJCYXNlRGF0YVVSTDpwLmJhbm5lckJhc2VEYXRhVVJMLGNyb3NzT3JpZ2luOnRoaXMuY3Jvc3NPcmlnaW4sZG9tYWluRGF0YTpzLGRvbWFpbklkOnRoaXMuZG9tYWluSWQsZ2VvRnJvbVVybDp0aGlzLmdlb0Zyb21VcmwsaXNBbXA6dGhpcy5pc0FtcCxpc1ByZXZpZXc6dGhpcy5pc1ByZXZpZXcsaXNSZXNldDp0aGlzLmlzUmVzZXQsbW9iaWxlT25saW5lVVJMOnAubW9iaWxlT25saW5lVVJMLG5vbmNlOnRoaXMubm9uY2Usb3REYXRhTGF5ZXI6dGhpcy5vdERhdGFMYXllcixyZWdpb25SdWxlOmUsc2V0QXR0cmlidXRlUG9seWZpbGxJc0FjdGl2ZTp0aGlzLnNldEF0dHJpYnV0ZVBvbHlmaWxsSXNBY3RpdmUsc3RvcmFnZUJhc2VVUkw6dGhpcy5zdG9yYWdlQmFzZVVSTCxzdHViRWxlbWVudDppLHVybFBhcmFtczp0aGlzLnVybFBhcmFtcyx1c2VyTG9jYXRpb246cC51c2VyTG9jYXRpb24sZ3RtVXBkYXRlZDp0aGlzLmd0bVVwZGF0ZWQscHJldmlld01vZGU6dGhpcy5wcmV2aWV3TW9kZSxjaGFyc2V0OnRoaXMuY2hhcnNldCxzdHViVXJsOnAuc3R1YlNjcmlwdEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJzcmMiKSxzcmlIYXNoOmEsaXNTaG9waWZ5OnRoaXMuaXNTaG9waWZ5LGlzQm90SGVhZGVyRG9tYWluOnRoaXMuaXNCb3RIZWFkZXJEb21haW59LHRoaXMuanNvbnAobixudWxsLCEwLG51bGw9PShvPWEpP3ZvaWQgMDpvWyJvdEJhbm5lclNkay5qcyJdKSxbMl19fSl9KX0sdGhpcy5mZXRjaFNyaUhhc2g9ZnVuY3Rpb24oaSl7cmV0dXJuIGUocix2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIHUodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0LnRyeXMucHVzaChbMCw0LCw1XSksWzQsZmV0Y2goaSldO2Nhc2UgMTpyZXR1cm4oZT10LnNlbnQoKSkub2s/WzQsZS5qc29uKCldOlszLDNdO2Nhc2UgMjpyZXR1cm5bMix0LnNlbnQoKV07Y2FzZSAzOnJldHVyblszLDVdO2Nhc2UgNDpyZXR1cm4gZT10LnNlbnQoKSxjb25zb2xlLmVycm9yKCJFcnJvciBmZXRjaGluZyBTUkkgaGFzaDoiLGUpLFszLDVdO2Nhc2UgNTpyZXR1cm5bMixudWxsXX19KX0pfSx0aGlzLmludGlhbGl6ZUlhYlN0dWI9ZnVuY3Rpb24oKXt2YXIgdD13aW5kb3c7ci5pYWJUeXBlQWRkZWQ/KHZvaWQgMD09PXQuX190Y2ZhcGkmJih3aW5kb3cuX190Y2ZhcGk9ci5leGVjdXRlVGNmQXBpKSxyLmFkZElhYkZyYW1lKCkpOnIuYWRkQmFja3dhcmRJYWJGcmFtZSgpLHQucmVjZWl2ZU9UTWVzc2FnZT1yLnJlY2VpdmVJYWJNZXNzYWdlLCh0LmF0dGFjaEV2ZW50fHx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcikoIm1lc3NhZ2UiLHQucmVjZWl2ZU9UTWVzc2FnZSwhMSl9LHRoaXMuYWRkSWFiRnJhbWU9ZnVuY3Rpb24oKXt2YXIgdD13aW5kb3csZT0iX190Y2ZhcGlMb2NhdG9yIjshdC5mcmFtZXNbZV0mJih0LmRvY3VtZW50LmJvZHk/ci5hZGRMb2NhdG9yKGUsIkNNUCIpOnNldFRpbWVvdXQoci5hZGRJYWJGcmFtZSw1KSl9LHRoaXMuYWRkQmFja3dhcmRJYWJGcmFtZT1mdW5jdGlvbigpe3ZhciB0PXdpbmRvdyxlPSJfX3RjZmFwaUxvY2F0b3IiOyF0LmZyYW1lc1tlXSYmKHQuZG9jdW1lbnQuYm9keT9yLmFkZExvY2F0b3IoZSwiVENGIik6c2V0VGltZW91dChyLmFkZElhYkZyYW1lLDUpKX0sdGhpcy5hZGRMb2NhdG9yPWZ1bmN0aW9uKHQsZSl7dmFyIGk9d2luZG93LG49aS5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTtnKG4sImRpc3BsYXk6IG5vbmU7IiwhMCksbi5uYW1lPXQsbi5zZXRBdHRyaWJ1dGUoInRpdGxlIixlKyIgTG9jYXRvciIpLGkuZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChuKX0sdGhpcy5yZWNlaXZlSWFiTWVzc2FnZT1mdW5jdGlvbihpKXt2YXIgbixhLHQsbz0ic3RyaW5nIj09dHlwZW9mIGkuZGF0YSxlPXt9O3RyeXtlPW8/SlNPTi5wYXJzZShpLmRhdGEpOmkuZGF0YX1jYXRjaCh0KXt9ZS5fX2NtcENhbGwmJiJJQUIyIj09PXIuaWFiVHlwZSYmY29uc29sZS5sb2coIkV4cGVjdGluZyBJQUIgVENGIHYyLjAgdmVuZG9yIGlGcmFtZSBjYWxsOyBSZWNlaXZlZCBJQUIgVENGIHYxLjEiKSxlLl9fdGNmYXBpQ2FsbCYmIklBQjIiPT09ci5pYWJUeXBlJiYobj1lLl9fdGNmYXBpQ2FsbC5jYWxsSWQsYT1lLl9fdGNmYXBpQ2FsbC5jb21tYW5kLHQ9ZS5fX3RjZmFwaUNhbGwucGFyYW1ldGVyLGU9ZS5fX3RjZmFwaUNhbGwudmVyc2lvbixyLmV4ZWN1dGVUY2ZBcGkoYSx0LGZ1bmN0aW9uKHQsZSl7dD17X190Y2ZhcGlSZXR1cm46e3JldHVyblZhbHVlOnQsc3VjY2VzczplLGNhbGxJZDpuLGNvbW1hbmQ6YX19O2kmJmkuc291cmNlJiZpLnNvdXJjZS5wb3N0TWVzc2FnZSYmaS5zb3VyY2UucG9zdE1lc3NhZ2Uobz9KU09OLnN0cmluZ2lmeSh0KTp0LCIqIil9LGUpKX0sdGhpcy5leGVjdXRlVGNmQXBpPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO2lmKHIuaWFiVHlwZT0iSUFCMiIsIXQubGVuZ3RoKXJldHVybiB3aW5kb3cuX190Y2ZhcGkuYXx8W107dmFyIGk9dFswXSxuPXRbMV0sYT10WzJdLG89dFszXTsiZnVuY3Rpb24iPT10eXBlb2YgYSYmaSYmKCJwaW5nIj09PWk/ci5nZXRQaW5nUmVxdWVzdChhKTpyLmFkZFRvUXVldWUoaSxuLGEsbykpfSx0aGlzLmFkZFRvUXVldWU9ZnVuY3Rpb24odCxlLGksbil7dmFyIGE9d2luZG93LG89Il9fdGNmYXBpIjthW29dLmE9YVtvXS5hfHxbXSxhW29dLmEucHVzaChbdCxlLGksbl0pfSx0aGlzLmdldFBpbmdSZXF1ZXN0PWZ1bmN0aW9uKHQsZSl7dmFyIGksbjt0JiYobj0hKGk9e30pLCJJQUIyIiE9PXIuaWFiVHlwZSYmIklBQjJWMiIhPT1yLmlhYlR5cGV8fChpPXtnZHByQXBwbGllczpwLm9uZVRydXN0SUFCZ2RwckFwcGxpZXNHbG9iYWxseSxjbXBMb2FkZWQ6ITEsY21wU3RhdHVzOiJzdHViIixkaXNwbGF5U3RhdHVzOiJzdHViIixhcGlWZXJzaW9uOiIyLjAiLGNtcFZlcnNpb246dm9pZCAwLGNtcElkOnZvaWQgMCxndmxWZXJzaW9uOnZvaWQgMCx0Y2ZQb2xpY3lWZXJzaW9uOnZvaWQgMH0sbj0hMCksdChpLG4pKX0sdGhpcy5nZXRDb25zZW50RGF0YVJlcXVlc3Q9ZnVuY3Rpb24odCl7dCYmcC5JQUJDb29raWVWYWx1ZSYmdCh7Z2RwckFwcGxpZXM6cC5vbmVUcnVzdElBQmdkcHJBcHBsaWVzR2xvYmFsbHksaGFzR2xvYmFsU2NvcGU6cC5oYXNJQUJHbG9iYWxTY29wZSxjb25zZW50RGF0YTpwLklBQkNvb2tpZVZhbHVlfSwhMCl9LHRoaXMuaW5pdENvbnNlbnRTREsoKX12YXIgdj1uZXcgYjtyZXR1cm4gdC5PdFNES1N0dWI9Yix0Lm90U2RrU3R1Yj12LE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSx0fSkoe30pOwo="}},"time_used":21,"timings":{"blocked":0,"dns":0,"connect":1,"send":0,"wait":10,"receive":0,"ssl":10},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/scripts/modules/application_es6.min.js?v1741105408","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.741Z","timestamp":1785161166741,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/scripts/modules/application_es6.min.js?v1741105408 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: application/javascript\r\ncontent-length: 750\r\nlast-modified: Tue, 04 Mar 2025 16:23:28 GMT\r\netag: \"641-62f86b15c4893-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":1601,"size_decoded":1043,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (1556)","md5":"01ae31799923f81dfdae2216fbc57c9d","sha1":"3d0460b55fae47b253bb973bd28378b2dea3575d","sha256":"66f8e53411a8e9205e5cc3788486c517fdb30b11f1e9e20ab9205d828b3880fa","sha512":"e2a20c178e424ba3a250bc729a35e9384fb0956a0447e4dc7e92a1d7f79f66d477b3051751c49559f25addf6265261accd36d5a9ced14cf2b163522ef39e2f3e","ssdeep":"","tlshash":"6b3144b8f93c987305fd43aea14b65fa81a936ed6d06c018e15d4cc954a8086297593b","first_seen":"2025-04-04T11:12:55.685143Z","last_seen":"2026-07-27T14:06:41.182997Z","times_seen":131,"resource_available":true,"data":"Y2xhc3MgUGhvdG9zd2lwZUxvYWRlcntzdGF0aWMgaXNMb2FkZWQ9ITE7Y29uc3RydWN0b3IoKXt9c3RhdGljIGFzeW5jIGxvYWQoKXtpZih0aGlzLmlzTG9hZGVkKWNvbnNvbGUuaW5mbygiUGhvdG9zd2lwZSBhbHJlYWR5IGxvYWRlZCIpO2Vsc2UgdHJ5e2NvbnN0IG89bmV3KGF3YWl0IGltcG9ydCgiL3B1YmxpYy9kaXN0L3NjcmlwdHMvbW9kdWxlcy9waG90b3N3aXBlLWxpZ2h0Ym94LmVzbS5taW4uanMiKSkuZGVmYXVsdCh7Z2FsbGVyeToiLmdhbGxlcnlfX2ltYWdlcywgLmlvYmplY3QtLXBpY3R1cmUiLGNoaWxkcmVuOiJmaWd1cmUgYVtkYXRhLXBzd3Atd2lkdGhdIixwc3dwTW9kdWxlOigpPT5pbXBvcnQoIi9wdWJsaWMvZGlzdC9zY3JpcHRzL21vZHVsZXMvcGhvdG9zd2lwZS5lc20ubWluLmpzIil9KTtvLm9uKCJ1aVJlZ2lzdGVyIixmdW5jdGlvbigpe28ucHN3cC51aS5yZWdpc3RlckVsZW1lbnQoe25hbWU6ImN1c3RvbS1jYXB0aW9uIixvcmRlcjo5LGlzQnV0dG9uOiExLGFwcGVuZFRvOiJyb290IixodG1sOiIiLG9uSW5pdDooaSxlKT0+e28ucHN3cC5vbigiY2hhbmdlIiwoKT0+e3ZhciBlPW8ucHN3cC5jdXJyU2xpZGUuZGF0YS5lbGVtZW50LHQ9ZS5jbG9zZXN0KCJmaWd1cmUiKS5xdWVyeVNlbGVjdG9yKCJmaWdjYXB0aW9uIik7bGV0IHI9IiI7ZSYmdCYmKHI9dC5pbm5lckhUTUwpLGkuaW5uZXJIVE1MPXJ8fCIifSl9fSl9KSxvLmluaXQoKSx0aGlzLmlzTG9hZGVkPSEwLHRoaXMuc2V0R2FsbGVyeUhhbmRsZXIoKX1jYXRjaChlKXtjb25zb2xlLmVycm9yKCJFcnJvciBsb2FkaW5nIFBob3Rvc3dpcGUiLGUpfX1zdGF0aWMgc2V0R2FsbGVyeUhhbmRsZXIoKXtkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuanNfZ2FsbGVyeV90cmlnZ2VyIikuZm9yRWFjaChmdW5jdGlvbihlKXtlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihlKXt2YXIgdD1lLmN1cnJlbnRUYXJnZXQscj10LnF1ZXJ5U2VsZWN0b3IoImFbZGF0YS1wcmV2aWV3X2Zvcl0iKS5kYXRhc2V0LnByZXZpZXdfZm9yOyh0PXQuY2xvc2VzdCgiLnByb2R1Y3QtZ2FsbGVyeSIpP3QuY2xvc2VzdCgiLnByb2R1Y3QtZ2FsbGVyeSIpLnF1ZXJ5U2VsZWN0b3IoJy5nYWxsZXJ5X19pdGVtW2RhdGEtaWQ9IicrcisnIl0gYScpOnQuY2xvc2VzdCgiLmdhbGxlcnlfX2ltYWdlcyIpLnF1ZXJ5U2VsZWN0b3IoJ2ZpZ3VyZVtkYXRhLWdhbGxlcnlfaXRlbV9pZD0iJytyKyciXSBhJykpJiZ0LmNsaWNrKCksZS5wcmV2ZW50RGVmYXVsdCgpfSl9KSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuanNfcGljdHVyZV90cmlnZ2VyIikuZm9yRWFjaChmdW5jdGlvbihlKXtlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihlKXt2YXIgdD1lLmN1cnJlbnRUYXJnZXQuY2xvc2VzdCgiZmlndXJlIikucXVlcnlTZWxlY3RvcigiYSIpO3QmJnQuY2xpY2soKSxlLnByZXZlbnREZWZhdWx0KCl9KX0pfX1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuZ2FsbGVyeV9faW1hZ2VzLCAuaW9iamVjdC0tcGljdHVyZSIpJiZQaG90b3N3aXBlTG9hZGVyLmxvYWQoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9YXBwbGljYXRpb25fZXM2LmpzLm1hcAo="}},"time_used":83,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":83,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/destination?id=DC-11418689\u0026cx=c\u0026gtm=4e67m0","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.498Z","timestamp":1785161167498,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google-analytics.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:33 GMT","end":"Mon, 21 Sep 2026 08:37:32 GMT"},"fingerprint":{"sha1":"85:82:80:E9:F0:BC:08:B5:D8:5D:91:B4:E5:D3:DB:B1:A7:2F:E3:F3","sha256":"E3:94:E9:DA:2C:F1:36:09:33:63:D3:69:08:E7:E6:91:8D:F3:61:7F:0F:D0:5F:8E:B6:E9:D7:F3:DD:10:3C:DC"}}},"request":{"raw":"GET /gtag/destination?id=DC-11418689\u0026cx=c\u0026gtm=4e67m0 HTTP/1.1\r\nHost: www.googletagmanager.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-type: application/javascript; charset=UTF-8\r\naccess-control-allow-origin: *\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: Cache-Control\r\ncontent-encoding: zstd\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\nexpires: Mon, 27 Jul 2026 14:06:07 GMT\r\ncache-control: private, max-age=900\r\nlast-modified: Mon, 27 Jul 2026 12:00:00 GMT\r\nstrict-transport-security: max-age=31536000; includeSubDomains\r\ncross-origin-resource-policy: cross-origin\r\ncontent-security-policy-report-only: script-src 'none'; form-action 'none'; frame-src 'none'; report-uri https://csp.withgoogle.com/csp/scaffolding/ascgsrsghrgc:71:0\r\ncross-origin-opener-policy-report-only: same-origin; report-to=ascgsrsghrgc:71:0\r\nreport-to: {\"group\":\"ascgsrsghrgc:71:0\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/scaffolding/ascgsrsghrgc:71:0\"}],}\r\nserver: Google Tag Manager\r\ncontent-length: 137058\r\nx-xss-protection: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"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":383772,"size_decoded":138093,"mime_type":"application/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (5422)","md5":"8166c4558722fc1ac0c29d42be719313","sha1":"25edcc61be23213b8d1e29e3847ab37adba6b048","sha256":"0403e687052b08cd86105f7387ce6a97401448461d70f56afcd999ac847fd6da","sha512":"ca80c089278264137caa4aea1f9647119f5662f2ef3023066a98ee71fe410b51e81ac6bc7b1899f00680d4f98996032ab792c1876e633de62c7eaa87b59a84d5","ssdeep":"6144:HhyU0jNY7P69FMxmRknhqsScPmfxNf3Ej1oGanoX+:HhrYaP69Vwz4nO+","tlshash":"ee84f8ccb3d6746693a3b478503f018bb27a69d2f448c898f186d8d42e746998277f7c","first_seen":"2026-07-27T14:06:41.183579Z","last_seen":"2026-07-27T14:06:41.183579Z","times_seen":1,"resource_available":true,"data":"Ci8vIENvcHlyaWdodCAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKKGZ1bmN0aW9uKCl7Cgp2YXIgZGF0YSA9IHsKInJlc291cmNlIjogewogICJ2ZXJzaW9uIjoiMiIsCiAgCiAgIm1hY3JvcyI6W3siZnVuY3Rpb24iOiJfX2UifV0sCiAgInRhZ3MiOlt7ImZ1bmN0aW9uIjoiX19vZ3RfZG1hIiwicHJpb3JpdHkiOjIsInZ0cF9kZWxlZ2F0aW9uTW9kZSI6Ik9OIiwidnRwX2RtYURlZmF1bHQiOiJERU5JRUQiLCJ0YWdfaWQiOjh9LHsiZnVuY3Rpb24iOiJfX29ndF8xcF9kYXRhX3YyIiwicHJpb3JpdHkiOjIsInZ0cF9pc0F1dG9FbmFibGVkIjp0cnVlLCJ2dHBfYXV0b1Bob25lRW5hYmxlZCI6dHJ1ZSwidnRwX2F1dG9Db2xsZWN0RXhjbHVzaW9uU2VsZWN0b3JzIjpbImxpc3QiLFsibWFwIiwiZXhjbHVzaW9uU2VsZWN0b3IiLCIiXV0sInZ0cF9pc0VuYWJsZWQiOnRydWUsInZ0cF9hdXRvQWRkcmVzc0VuYWJsZWQiOnRydWUsInZ0cF9hdXRvRW1haWxFbmFibGVkIjp0cnVlLCJ2dHBfbWFudWFsRW1haWxFbmFibGVkIjpmYWxzZSwidnRwX2NpdHlWYWx1ZSI6IiIsInZ0cF9wb3N0YWxDb2RlVmFsdWUiOiIiLCJ2dHBfbGFzdE5hbWVWYWx1ZSI6IiIsInZ0cF9waG9uZVZhbHVlIjoiIiwidnRwX2VtYWlsVmFsdWUiOiIiLCJ2dHBfZmlyc3ROYW1lVmFsdWUiOiIiLCJ2dHBfc3RyZWV0VmFsdWUiOiIiLCJ2dHBfcmVnaW9uVmFsdWUiOiIiLCJ2dHBfY291bnRyeVZhbHVlIjoiIiwidnRwX2lzQXV0b0NvbGxlY3RQaWlFbmFibGVkRmxhZyI6dHJ1ZSwidGFnX2lkIjoxMH0seyJmdW5jdGlvbiI6Il9fY2NkX2ZsX2ZpcnN0IiwicHJpb3JpdHkiOjEsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJEQy0xMTQxODY4OSIsInRhZ19pZCI6MTN9LHsiZnVuY3Rpb24iOiJfX3JlcCIsInZ0cF9jb250YWluZXJJZCI6IkRDLTExNDE4Njg5IiwidnRwX3JlbW90ZUNvbmZpZyI6WyJtYXAiXSwidGFnX2lkIjo1fSx7ImZ1bmN0aW9uIjoiX19jY2RfZmxfbGFzdCIsInByaW9yaXR5IjowLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiREMtMTE0MTg2ODkiLCJ0YWdfaWQiOjEyfV0sCiAgInByZWRpY2F0ZXMiOlt7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG0uanMifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG0uaW5pdF9jb25zZW50In0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmluaXQifV0sCiAgInJ1bGVzIjpbW1siaWYiLDBdLFsiYWRkIiwzXV0sW1siaWYiLDFdLFsiYWRkIiwwXV0sW1siaWYiLDJdLFsiYWRkIiwxLDQsMl1dXQp9LAoicnVudGltZSI6WyBbNTAsIl9fY2NkX2ZsX2ZpcnN0IixbNDYsImEiXSxbNTAsImQiLFs0NiwiZSJdLFsyLFsxNSwiYyJdLCJBIixbNyxbMTUsImUiXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRHcHBQYXJhbXMiXV0sWyJiIixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdLFs1MSwiIixbNywiZSJdLFsiZCIsWzE1LCJlIl1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2ZsX2xhc3QiLFs0NiwiYSJdLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2UiLFs0NiwiYSJdLFszNixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0RXZlbnREYXRhIl1dLFsiJDAiLCJldmVudCJdXV1dCiAsWzUwLCJfX29ndF8xcF9kYXRhX3YyIixbNDYsImEiXSxbNTAsInAiLFs0NiwiciIsInMiLCJ0IiwidSJdLFsyMixbMjAsWzE2LFsxNSwicyJdLCJ0eXBlIl0sWzE1LCJ0Il1dLFs0NixbNTMsWzIyLFsyOCxbMTUsInIiXV0sWzQ2LFs1MyxbMywiciIsWzhdXV1dXSxbMjIsWzI4LFsxNixbMTUsInIiXSxbMTUsInQiXV1dLFs0NixbNTMsWzQzLFsxNSwiciJdLFsxNSwidCJdLFsxNixbMTUsInMiXSwidXNlckRhdGEiXV0sWzUyLCJ2IixbOCwibW9kZSIsImEiXV0sWzIyLFsxNixbMTUsInMiXSwidGFnTmFtZSJdLFs0NixbNTMsWzQzLFsxNSwidiJdLCJsb2NhdGlvbiIsWzE2LFsxNSwicyJdLCJ0YWdOYW1lIl1dXV1dLFsyMixbMTYsWzE1LCJzIl0sInF1ZXJ5U2VsZWN0b3IiXSxbNDYsWzUzLFs0MyxbMTUsInYiXSwic2VsZWN0b3IiLFsxNixbMTUsInMiXSwicXVlcnlTZWxlY3RvciJdXV1dXSxbNDMsWzE1LCJ1Il0sWzE1LCJ0Il0sWzE1LCJ2Il1dXV1dXV1dLFszNixbMTUsInIiXV1dLFs1MCwicSIsWzQ2LCJyIiwicyIsInQiXSxbMjIsWzI4LFsxNixbMTUsImEiXSxbMTUsInQiXV1dLFs0NixbMzZdXV0sWzQzLFsxNSwiciJdLFsxNSwicyJdLFs4LCJ2YWx1ZSIsWzE2LFsxNSwiYSJdLFsxNSwidCJdXV1dXSxbMjIsWzI4LFsxNyxbMTUsImEiXSwiaXNFbmFibGVkIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiT2JqZWN0Il1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfZmVhdHVyZUZsYWdzIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9mZWF0dXJlcyJdXSxbNTIsImYiLFsicmVxdWlyZSIsImludGVybmFsLmdldERlc3RpbmF0aW9uSWRzIl1dLFs1MiwiZyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZGV0ZWN0VXNlclByb3ZpZGVkRGF0YSJdXSxbNTIsImgiLFsicmVxdWlyZSIsInF1ZXJ5UGVybWlzc2lvbiJdXSxbNTIsImkiLFsicmVxdWlyZSIsImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbNTIsImoiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJrIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwibCIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwibSIsWyJjIixbMTcsWzE1LCJlIl0sIkFUIl1dXSxbNTIsIm4iLFszMCxbImYiXSxbN11dXSxbNTIsIm8iLFs4LCJlbmFibGVfY29kZSIsdHJ1ZV1dLFsyMixbMTcsWzE1LCJhIl0sImlzQXV0b0VuYWJsZWQiXSxbNDYsWzUzLFs1MiwiciIsWzddXSxbMjIsWzEsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLFsxNyxbMTcsWzE1LCJhIl0sImF1dG9Db2xsZWN0RXhjbHVzaW9uU2VsZWN0b3JzIl0sImxlbmd0aCJdXSxbNDYsWzUzLFs1MyxbNDEsInUiXSxbMywidSIsMF0sWzYzLFs3LCJ1Il0sWzIzLFsxNSwidSJdLFsxNyxbMTcsWzE1LCJhIl0sImF1dG9Db2xsZWN0RXhjbHVzaW9uU2VsZWN0b3JzIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJ1Il0sWzMsInUiLFswLFsxNSwidSJdLDFdXV0sWzQ2LFs1MyxbNTIsInYiLFsxNyxbMTYsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLFsxNSwidSJdXSwiZXhjbHVzaW9uU2VsZWN0b3IiXV0sWzIyLFsxNSwidiJdLFs0NixbNTMsWzIsWzE1LCJyIl0sInB1c2giLFs3LFsxNSwidiJdXV1dXV1dXV1dXV1dLFs1MiwicyIsWzE3LFsxNSwiYSJdLCJpc0F1dG9Db2xsZWN0UGlpRW5hYmxlZEZsYWciXV0sWzUyLCJ0IixbMzksWzE3LFsxNSwiYSJdLCJpc0F1dG9Db2xsZWN0UGlpRW5hYmxlZEZsYWciXSxbMTcsWzE1LCJhIl0sImF1dG9FbWFpbEVuYWJsZWQiXSx0cnVlXV0sWzQzLFsxNSwibyJdLCJhdXRvX2RldGVjdCIsWzgsImVtYWlsIixbMTUsInQiXSwicGhvbmUiLFsxLFsxNSwicyJdLFsxNyxbMTUsImEiXSwiYXV0b1Bob25lRW5hYmxlZCJdXSwiYWRkcmVzcyIsWzEsWzE1LCJzIl0sWzE3LFsxNSwiYSJdLCJhdXRvQWRkcmVzc0VuYWJsZWQiXV0sImV4Y2x1ZGVfZWxlbWVudF9zZWxlY3RvcnMiLFsxNSwiciJdXV1dXV0sWzIyLFsxNyxbMTUsImEiXSwiaXNNYW51YWxFbmFibGVkIl0sWzQ2LFs1MyxbNTIsInIiLFs4XV0sWzIyLFsxNyxbMTUsImEiXSwibWFudWFsRW1haWxFbmFibGVkIl0sWzQ2LFs1MyxbInEiLFsxNSwiciJdLCJlbWFpbCIsImVtYWlsVmFsdWUiXV1dXSxbMjIsWzE3LFsxNSwiYSJdLCJtYW51YWxQaG9uZUVuYWJsZWQiXSxbNDYsWzUzLFsicSIsWzE1LCJyIl0sInBob25lIiwicGhvbmVWYWx1ZSJdXV1dLFsyMixbMTcsWzE1LCJhIl0sIm1hbnVhbEFkZHJlc3NFbmFibGVkIl0sWzQ2LFs1MyxbNTIsInMiLFs4XV0sWyJxIixbMTUsInMiXSwiZmlyc3RfbmFtZSIsImZpcnN0TmFtZVZhbHVlIl0sWyJxIixbMTUsInMiXSwibGFzdF9uYW1lIiwibGFzdE5hbWVWYWx1ZSJdLFsicSIsWzE1LCJzIl0sInN0cmVldCIsInN0cmVldFZhbHVlIl0sWyJxIixbMTUsInMiXSwiY2l0eSIsImNpdHlWYWx1ZSJdLFsicSIsWzE1LCJzIl0sInJlZ2lvbiIsInJlZ2lvblZhbHVlIl0sWyJxIixbMTUsInMiXSwiY291bnRyeSIsImNvdW50cnlWYWx1ZSJdLFsicSIsWzE1LCJzIl0sInBvc3RhbF9jb2RlIiwicG9zdGFsQ29kZVZhbHVlIl0sWzQzLFsxNSwiciJdLCJuYW1lX2FuZF9hZGRyZXNzIixbNyxbMTUsInMiXV1dXV1dLFs0MyxbMTUsIm8iXSwic2VsZWN0b3JzIixbMTUsInIiXV1dXV0sWzY1LCJyIixbMTUsIm4iXSxbNDYsWzUzLFsiaSIsWzE1LCJyIl0sInVzZXJfZGF0YV9zZXR0aW5ncyIsWzE1LCJvIl1dLFs1MiwicyIsWzE2LFsxNSwibyJdLCJhdXRvX2RldGVjdCJdXSxbMjIsWzI4LFsxNSwicyJdXSxbNDYsWzUzLFs2XV1dXSxbNTIsInQiLFs1MSwiIixbNywidSJdLFs1MiwidiIsWzIsWzE1LCJ1Il0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJrIl0sIkNYIl1dXV0sWzIyLFsxNSwidiJdLFs0NixbNTMsWzM2LFsxNSwidiJdXV1dXSxbNTIsInciLFsiYyIsWzE3LFsxNSwiZSJdLCJCViJdXV0sWzUyLCJ4IixbImMiLFsxNyxbMTUsImUiXSwiQ0kiXV1dLFs0MSwieSJdLFsyMixbImgiLCJkZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhIiwiYXV0byJdLFs0NixbNTMsWzMsInkiLFsiZyIsWzgsImV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzIixbMTYsWzE1LCJzIl0sImV4Y2x1ZGVfZWxlbWVudF9zZWxlY3RvcnMiXSwiZmllbGRGaWx0ZXJzIixbOCwiZW1haWwiLFsxNixbMTUsInMiXSwiZW1haWwiXSwicGhvbmUiLFsxNixbMTUsInMiXSwicGhvbmUiXSwiYWRkcmVzcyIsWzE2LFsxNSwicyJdLCJhZGRyZXNzIl1dLCJpbmNsdWRlU2VsZWN0b3IiLFsxNSwidyJdLCJyZWFkRnJvbURhdGFMYXllciIsWzE1LCJ4Il1dXV1dXV0sWzUyLCJ6IixbMSxbMTUsInkiXSxbMTYsWzE1LCJ5Il0sImVsZW1lbnRzIl1dXSxbNTIsImFBIixbOF1dLFs1MiwiYUIiLFs4XV0sWzIyLFsxLFsxNSwieiJdLFsxOCxbMTcsWzE1LCJ6Il0sImxlbmd0aCJdLDBdXSxbNDYsWzUzLFs0MSwiYUMiXSxbNDEsImFEIl0sWzMsImFEIixbOF1dLFs1MyxbNDEsImFFIl0sWzMsImFFIiwwXSxbNjMsWzcsImFFIl0sWzIzLFsxNSwiYUUiXSxbMTcsWzE1LCJ6Il0sImxlbmd0aCJdXSxbMzMsWzE1LCJhRSJdLFszLCJhRSIsWzAsWzE1LCJhRSJdLDFdXV0sWzQ2LFs1MyxbNTIsImFGIixbMTYsWzE1LCJ6Il0sWzE1LCJhRSJdXV0sWyJwIixbMTUsImFBIl0sWzE1LCJhRiJdLCJlbWFpbCIsWzE1LCJhQiJdXSxbMjIsWyJjIixbMTcsWzE1LCJlIl0sIkJPIl1dLFs0NixbNTMsWyJwIixbMTUsImFBIl0sWzE1LCJhRiJdLCJwaG9uZV9udW1iZXIiLFsxNSwiYUIiXV0sWzMsImFDIixbInAiLFsxNSwiYUMiXSxbMTUsImFGIl0sImZpcnN0X25hbWUiLFsxNSwiYUQiXV1dLFszLCJhQyIsWyJwIixbMTUsImFDIl0sWzE1LCJhRiJdLCJsYXN0X25hbWUiLFsxNSwiYUQiXV1dLFszLCJhQyIsWyJwIixbMTUsImFDIl0sWzE1LCJhRiJdLCJjb3VudHJ5IixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwicG9zdGFsX2NvZGUiLFsxNSwiYUQiXV1dXV1dXV1dXSxbMjIsWzEsWzE1LCJhQyJdLFsyOCxbMTYsWzE1LCJhQSJdLCJhZGRyZXNzIl1dXSxbNDYsWzUzLFs0MyxbMTUsImFBIl0sImFkZHJlc3MiLFsxNSwiYUMiXV0sWzIyLFsxNSwibSJdLFs0NixbNTMsWzQzLFsxNixbMTUsImFBIl0sImFkZHJlc3MiXSwiX3RhZ19tZXRhZGF0YSIsWzE1LCJhRCJdXV1dXV1dXV1dXSxbMjIsWzEsWzE1LCJ5Il0sWzE1LCJ4Il1dLFs0NixbNTMsWzUyLCJhQyIsWzE2LFsxNSwieSJdLCJkYXRhTGF5ZXJTZWFyY2hUaW1lIl1dLFs1MiwiYUQiLFsxNixbMTUsInkiXSwiZGF0YUxheWVyU2VhcmNoQ291bnQiXV0sWzIsWzE1LCJ1Il0sIm1lcmdlSGl0RGF0YUZvcktleSIsWzcsWzE3LFsxNSwibCJdLCJGVCJdLFs4LCJkbHN0IixbMTUsImFDIl0sImRsc2MiLFsxNSwiYUQiXV1dXV1dXSxbMjIsWzE1LCJtIl0sWzQ2LFs1MyxbMjIsWzMwLFsxNixbMTUsImFBIl0sImVtYWlsIl0sWzE2LFsxNSwiYUEiXSwicGhvbmVfbnVtYmVyIl1dLFs0NixbNTMsWzQzLFsxNSwiYUEiXSwiX3RhZ19tZXRhZGF0YSIsWzE1LCJhQiJdXV1dXV1dXSxbMixbMTUsInUiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImsiXSwiQ1giXSxbMTUsImFBIl1dXSxbMzYsWzE1LCJhQSJdXV1dLFsiaiIsWzE1LCJyIl0sWzUxLCIiLFs3LCJ1Il0sWzIsWzE1LCJ1Il0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJrIl0sIkNZIl0sWzE1LCJ0Il1dXV1dXV1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX29ndF9kbWEiLFs0NiwiYSJdLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZGVjbGFyZUNvbnNlbnRTdGF0ZSJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmlzRG1hUmVnaW9uIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2V0RGVsZWdhdGVkQ29uc2VudFR5cGUiXV0sWzIyLFsxLFsyMCxbMTcsWzE1LCJhIl0sImRlbGVnYXRpb25Nb2RlIl0sIk9OIl0sWyJjIl1dLFs0NixbNTMsWyJkIiwiYWRfdXNlcl9kYXRhIiwiYWRfc3RvcmFnZSJdXV1dLFsyMixbMjAsWzE3LFsxNSwiYSJdLCJkbWFEZWZhdWx0Il0sIkdSQU5URUQiXSxbNDYsWzUzLFsiYiIsWzgsImFkX3VzZXJfZGF0YSIsImdyYW50ZWQiXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fcmVwIixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyRGVzdGluYXRpb24iXV0sWzIyLFsyOCxbImIiLFsxNyxbMTUsImEiXSwiY29udGFpbmVySWQiXSxbMTcsWzE1LCJhIl0sInJlbW90ZUNvbmZpZyJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTIsIl9fbW9kdWxlX2d0YWdTY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCJhZF9wZXJzb25hbGl6YXRpb24iXSxbNTIsImMiLCJhZF9zdG9yYWdlIl0sWzUyLCJkIiwiYWRfdXNlcl9kYXRhIl0sWzUyLCJlIiwiY29uc2VudF91cGRhdGVkIl0sWzUyLCJmIiwiYXBwX3JlbW92ZSJdLFs1MiwiZyIsImFwcF9zdG9yZV9yZWZ1bmQiXSxbNTIsImgiLCJhcHBfc3RvcmVfc3Vic2NyaXB0aW9uX2NhbmNlbCJdLFs1MiwiaSIsImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY29udmVydCJdLFs1MiwiaiIsImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fcmVuZXciXSxbNTIsImsiLCJjb252ZXJzaW9uIl0sWzUyLCJsIiwicHVyY2hhc2UiXSxbNTIsIm0iLCJmaXJzdF9vcGVuIl0sWzUyLCJuIiwiZmlyc3RfdmlzaXQiXSxbNTIsIm8iLCJndGFnLmNvbmZpZyJdLFs1MiwicCIsImluX2FwcF9wdXJjaGFzZSJdLFs1MiwicSIsInBhZ2VfdmlldyJdLFs1MiwiciIsInNlc3Npb25fc3RhcnQiXSxbNTIsInMiLCJ1c2VyX2VuZ2FnZW1lbnQiXSxbNTIsInQiLCJhZHNfZGF0YV9yZWRhY3Rpb24iXSxbNTIsInUiLCJhbGxvd19hZF9wZXJzb25hbGl6YXRpb25fc2lnbmFscyJdLFs1MiwidiIsImFsbG93X2N1c3RvbV9zY3JpcHRzIl0sWzUyLCJ3IiwiYWxsb3dfZW5oYW5jZWRfY29udmVyc2lvbnMiXSxbNTIsIngiLCJhbGxvd19nb29nbGVfc2lnbmFscyJdLFs1MiwieSIsImF1aWQiXSxbNTIsInoiLCJhd19yZW1hcmtldGluZ19vbmx5Il0sWzUyLCJhQSIsImRpc2NvdW50Il0sWzUyLCJhQiIsImF3X2ZlZWRfY291bnRyeSJdLFs1MiwiYUMiLCJhd19mZWVkX2xhbmd1YWdlIl0sWzUyLCJhRCIsIml0ZW1zIl0sWzUyLCJhRSIsImF3X21lcmNoYW50X2lkIl0sWzUyLCJhRiIsImF3X2Jhc2tldF90eXBlIl0sWzUyLCJhRyIsImNsaWVudF9pZCJdLFs1MiwiYUgiLCJjb252ZXJzaW9uX2Nvb2tpZV9wcmVmaXgiXSxbNTIsImFJIiwiY29udmVyc2lvbl9pZCJdLFs1MiwiYUoiLCJjb252ZXJzaW9uX2xpbmtlciJdLFs1MiwiYUsiLCJjb252ZXJzaW9uX2FwaSJdLFs1MiwiYUwiLCJjb29raWVfZGVwcmVjYXRpb24iXSxbNTIsImFNIiwiY29va2llX2V4cGlyZXMiXSxbNTIsImFOIiwiY29va2llX3ByZWZpeCJdLFs1MiwiYU8iLCJjb29raWVfdXBkYXRlIl0sWzUyLCJhUCIsImNvdW50cnkiXSxbNTIsImFRIiwiY3VycmVuY3kiXSxbNTIsImFSIiwiY3VzdG9tZXJfbGlmZXRpbWVfdmFsdWUiXSxbNTIsImFTIiwiY3VzdG9tZXJfdHlwZSJdLFs1MiwiYVQiLCJkZWJ1Z19tb2RlIl0sWzUyLCJhVSIsInNoaXBwaW5nIl0sWzUyLCJhViIsImVuZ2FnZW1lbnRfdGltZV9tc2VjIl0sWzUyLCJhVyIsImVzdGltYXRlZF9kZWxpdmVyeV9kYXRlIl0sWzUyLCJhWCIsImV2ZW50X2RldmVsb3Blcl9pZF9zdHJpbmciXSxbNTIsImFZIiwiZXZlbnRfaWQiXSxbNTIsImFaIiwiZXZlbnQiXSxbNTIsImJBIiwiXyZhZSJdLFs1MiwiYkIiLCJldmVudF90aW1lb3V0Il0sWzUyLCJiQyIsImV4dF9jbGllbnRfaWQiXSxbNTIsImJEIiwiZmlyc3RfcGFydHlfY29sbGVjdGlvbiJdLFs1MiwiYkUiLCJtYXRjaF9pZCJdLFs1MiwiYkYiLCJnZHByX2FwcGxpZXMiXSxbNTIsImJHIiwiX2d0X21ldGFkYXRhIl0sWzUyLCJiSCIsImdvb2dsZV9hbmFseXNpc19wYXJhbXMiXSxbNTIsImJJIiwiX2dvb2dsZV9uZyJdLFs1MiwiYkoiLCJfb25vIl0sWzUyLCJiSyIsImdwcF9zaWQiXSxbNTIsImJMIiwiZ3BwX3N0cmluZyJdLFs1MiwiYk0iLCJnc2FfZXhwZXJpbWVudF9pZCJdLFs1MiwiYk4iLCJndGFnX2V2ZW50X2ZlYXR1cmVfdXNhZ2UiXSxbNTIsImJPIiwiaWZyYW1lX3N0YXRlIl0sWzUyLCJiUCIsImlnbm9yZV9yZWZlcnJlciJdLFs1MiwiYlEiLCJpc19wYXNzdGhyb3VnaCJdLFs1MiwiYlIiLCJsYW5ndWFnZSJdLFs1MiwiYlMiLCJtZXJjaGFudF9mZWVkX2xhYmVsIl0sWzUyLCJiVCIsIm1lcmNoYW50X2ZlZWRfbGFuZ3VhZ2UiXSxbNTIsImJVIiwibWVyY2hhbnRfaWQiXSxbNTIsImJWIiwibmV3X2N1c3RvbWVyIl0sWzUyLCJiVyIsInBhZ2VfaG9zdG5hbWUiXSxbNTIsImJYIiwicGFnZV9wYXRoIl0sWzUyLCJiWSIsInBhZ2VfcmVmZXJyZXIiXSxbNTIsImJaIiwicGFnZV90aXRsZSJdLFs1MiwiY0EiLCJfcGxhdGludW1fcmVxdWVzdF9zdGF0dXMiXSxbNTIsImNCIiwicXVhbnRpdHkiXSxbNTIsImNDIiwicmVzdHJpY3RlZF9kYXRhX3Byb2Nlc3NpbmciXSxbNTIsImNEIiwic2NyZWVuX3Jlc29sdXRpb24iXSxbNTIsImNFIiwic2VuZF9wYWdlX3ZpZXciXSxbNTIsImNGIiwic2VydmVyX2NvbnRhaW5lcl8zcF9lbnJpY2htZW50Il0sWzUyLCJjRyIsInNlcnZlcl9jb250YWluZXJfdXJsIl0sWzUyLCJjSCIsInNlc3Npb25fZHVyYXRpb24iXSxbNTIsImNJIiwic2Vzc2lvbl9lbmdhZ2VkX3RpbWUiXSxbNTIsImNKIiwic2Vzc2lvbl9pZCJdLFs1MiwiY0siLCJfc2hhcmVkX3VzZXJfaWQiXSxbNTIsImNMIiwiZGVsaXZlcnlfcG9zdGFsX2NvZGUiXSxbNTIsImNNIiwidGVzdG9ubHkiXSxbNTIsImNOIiwidG9wbW9zdF91cmwiXSxbNTIsImNPIiwidHJhbnNhY3Rpb25faWQiXSxbNTIsImNQIiwidHJhbnNhY3Rpb25faWRfc291cmNlIl0sWzUyLCJjUSIsInRyYW5zcG9ydF91cmwiXSxbNTIsImNSIiwidXBkYXRlIl0sWzUyLCJjUyIsIl91c2VyX2FnZW50X2FyY2hpdGVjdHVyZSJdLFs1MiwiY1QiLCJfdXNlcl9hZ2VudF9iaXRuZXNzIl0sWzUyLCJjVSIsIl91c2VyX2FnZW50X2Z1bGxfdmVyc2lvbl9saXN0Il0sWzUyLCJjViIsIl91c2VyX2FnZW50X21vYmlsZSJdLFs1MiwiY1ciLCJfdXNlcl9hZ2VudF9tb2RlbCJdLFs1MiwiY1giLCJfdXNlcl9hZ2VudF9wbGF0Zm9ybSJdLFs1MiwiY1kiLCJfdXNlcl9hZ2VudF9wbGF0Zm9ybV92ZXJzaW9uIl0sWzUyLCJjWiIsIl91c2VyX2FnZW50X3dvdzY0Il0sWzUyLCJkQSIsInVzZXJfZGF0YSJdLFs1MiwiZEIiLCJ1c2VyX2RhdGFfYXV0b19sYXRlbmN5Il0sWzUyLCJkQyIsInVzZXJfZGF0YV9hdXRvX21ldGEiXSxbNTIsImREIiwidXNlcl9kYXRhX2F1dG9fbXVsdGkiXSxbNTIsImRFIiwidXNlcl9kYXRhX2F1dG9fc2VsZWN0b3JzIl0sWzUyLCJkRiIsInVzZXJfZGF0YV9hdXRvX3N0YXR1cyJdLFs1MiwiZEciLCJ1c2VyX2RhdGFfbW9kZSJdLFs1MiwiZEgiLCJ1c2VyX2lkIl0sWzUyLCJkSSIsInVzZXJfcHJvcGVydGllcyJdLFs1MiwiZEoiLCJ1c19wcml2YWN5X3N0cmluZyJdLFs1MiwiZEsiLCJ2YWx1ZSJdLFs1MiwiZEwiLCJfZnBtX3BhcmFtZXRlcnMiXSxbNTIsImRNIiwiX2hvc3RfbmFtZSJdLFs1MiwiZE4iLCJfaW5fcGFnZV9jb21tYW5kIl0sWzUyLCJkTyIsIl9tZWFzdXJlbWVudF90eXBlIl0sWzUyLCJkUCIsIm5vbl9wZXJzb25hbGl6ZWRfYWRzIl0sWzUyLCJkUSIsImNvbnZlcnNpb25fbGFiZWwiXSxbNTIsImRSIiwicGFnZV9sb2NhdGlvbiJdLFs1MiwiZFMiLCJfZXh0cmFjdGVkX2RhdGEiXSxbNTIsImRUIiwiZ2xvYmFsX2RldmVsb3Blcl9pZF9zdHJpbmciXSxbNTIsImRVIiwidGNfcHJpdmFjeV9zdHJpbmciXSxbMzYsWzgsIkEiLFsxNSwiYiJdLCJCIixbMTUsImMiXSwiQyIsWzE1LCJkIl0sIkYiLFsxNSwiZSJdLCJJIixbMTUsImYiXSwiSiIsWzE1LCJnIl0sIksiLFsxNSwiaCJdLCJMIixbMTUsImkiXSwiTSIsWzE1LCJqIl0sIk8iLFsxNSwiayJdLCJBQSIsWzE1LCJsIl0sIkFGIixbMTUsIm0iXSwiQUciLFsxNSwibiJdLCJBSCIsWzE1LCJvIl0sIkFKIixbMTUsInAiXSwiQUsiLFsxNSwicSJdLCJBTSIsWzE1LCJyIl0sIkFRIixbMTUsInMiXSwiQkMiLFsxNSwidCJdLCJCSiIsWzE1LCJ1Il0sIkJLIixbMTUsInYiXSwiQk0iLFsxNSwidyJdLCJCTiIsWzE1LCJ4Il0sIkJUIixbMTUsInkiXSwiQlgiLFsxNSwieiJdLCJCWSIsWzE1LCJhQSJdLCJCWiIsWzE1LCJhQiJdLCJDQSIsWzE1LCJhQyJdLCJDQiIsWzE1LCJhRCJdLCJDQyIsWzE1LCJhRSJdLCJDRCIsWzE1LCJhRiJdLCJDTCIsWzE1LCJhRyJdLCJDUSIsWzE1LCJhSCJdLCJDUiIsWzE1LCJhSSJdLCJLRyIsWzE1LCJkUSJdLCJDUyIsWzE1LCJhSiJdLCJDVSIsWzE1LCJhSyJdLCJDVyIsWzE1LCJhTCJdLCJDWSIsWzE1LCJhTSJdLCJEQyIsWzE1LCJhTiJdLCJERCIsWzE1LCJhTyJdLCJERSIsWzE1LCJhUCJdLCJERiIsWzE1LCJhUSJdLCJERyIsWzE1LCJhUiJdLCJESCIsWzE1LCJhUyJdLCJETiIsWzE1LCJhVCJdLCJFQSIsWzE1LCJhVSJdLCJFQyIsWzE1LCJhViJdLCJFRyIsWzE1LCJhVyJdLCJFSiIsWzE1LCJhWCJdLCJFSyIsWzE1LCJhWSJdLCJFTiIsWzE1LCJhWiJdLCJFTyIsWzE1LCJiQSJdLCJFUSIsWzE1LCJiQiJdLCJLSSIsWzE1LCJkUyJdLCJFVSIsWzE1LCJiQyJdLCJFVyIsWzE1LCJiRCJdLCJGRSIsWzE1LCJiRSJdLCJGTyIsWzE1LCJiRiJdLCJGUCIsWzE1LCJiRyJdLCJLSiIsWzE1LCJkVCJdLCJGVCIsWzE1LCJiSCJdLCJGVSIsWzE1LCJiSSJdLCJGViIsWzE1LCJiSiJdLCJGWSIsWzE1LCJiSyJdLCJGWiIsWzE1LCJiTCJdLCJHQiIsWzE1LCJiTSJdLCJHQyIsWzE1LCJiTiJdLCJHRSIsWzE1LCJiTyJdLCJHRiIsWzE1LCJiUCJdLCJHSyIsWzE1LCJiUSJdLCJHTSIsWzE1LCJiUiJdLCJHVCIsWzE1LCJiUyJdLCJHVSIsWzE1LCJiVCJdLCJHViIsWzE1LCJiVSJdLCJHWiIsWzE1LCJiViJdLCJIQyIsWzE1LCJiVyJdLCJLSCIsWzE1LCJkUiJdLCJIRCIsWzE1LCJiWCJdLCJIRSIsWzE1LCJiWSJdLCJIRiIsWzE1LCJiWiJdLCJITiIsWzE1LCJjQSJdLCJIUCIsWzE1LCJjQiJdLCJIVCIsWzE1LCJjQyJdLCJIWCIsWzE1LCJjRCJdLCJJQSIsWzE1LCJjRSJdLCJJQyIsWzE1LCJjRiJdLCJJRCIsWzE1LCJjRyJdLCJJRiIsWzE1LCJjSCJdLCJJSCIsWzE1LCJjSSJdLCJJSSIsWzE1LCJjSiJdLCJJSyIsWzE1LCJjSyJdLCJJTCIsWzE1LCJjTCJdLCJLSyIsWzE1LCJkVSJdLCJJUCIsWzE1LCJjTSJdLCJJUiIsWzE1LCJjTiJdLCJJVSIsWzE1LCJjTyJdLCJJViIsWzE1LCJjUCJdLCJJVyIsWzE1LCJjUSJdLCJJWSIsWzE1LCJjUiJdLCJKQiIsWzE1LCJjUyJdLCJKQyIsWzE1LCJjVCJdLCJKRCIsWzE1LCJjVSJdLCJKRSIsWzE1LCJjViJdLCJKRiIsWzE1LCJjVyJdLCJKRyIsWzE1LCJjWCJdLCJKSCIsWzE1LCJjWSJdLCJKSSIsWzE1LCJjWiJdLCJKSiIsWzE1LCJkQSJdLCJKSyIsWzE1LCJkQiJdLCJKTCIsWzE1LCJkQyJdLCJKTSIsWzE1LCJkRCJdLCJKTiIsWzE1LCJkRSJdLCJKTyIsWzE1LCJkRiJdLCJKUCIsWzE1LCJkRyJdLCJKUiIsWzE1LCJkSCJdLCJKUyIsWzE1LCJkSSJdLCJKVSIsWzE1LCJkSiJdLCJKViIsWzE1LCJkSyJdLCJKWCIsWzE1LCJkTCJdLCJKWSIsWzE1LCJkTSJdLCJKWiIsWzE1LCJkTiJdLCJLQyIsWzE1LCJkTyJdLCJLRCIsWzE1LCJkUCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCJhYm9ydF93aXRob3V0X2ZhaWwiXSxbNTIsImMiLCJhY2NlcHRfYnlfZGVmYXVsdCJdLFs1MiwiZCIsImFsbG93X2FkX3BlcnNvbmFsaXphdGlvbiJdLFs1MiwiZSIsImNvbnNlbnRfc3RhdGUiXSxbNTIsImYiLCJjb25zZW50X3VwZGF0ZWQiXSxbNTIsImciLCJjb252ZXJzaW9uX2xpbmtlcl9lbmFibGVkIl0sWzUyLCJoIiwiY29udmVyc2lvbl9tYXJraW5nX2NhbGxlZCJdLFs1MiwiaSIsImNvb2tpZV9vcHRpb25zIl0sWzUyLCJqIiwiZGVkdXBlX2lkIl0sWzUyLCJrIiwiZW1fZXZlbnQiXSxbNTIsImwiLCJldmVudF9wcm92ZW5hbmNlIl0sWzUyLCJtIiwiZXZlbnRfc291cmNlIl0sWzUyLCJuIiwiZXZlbnRfc3RhcnRfdGltZXN0YW1wX21zIl0sWzUyLCJvIiwiZXZlbnRfdXNhZ2UiXSxbNTIsInAiLCJleHRyYV90YWdfZXhwZXJpbWVudF9pZHMiXSxbNTIsInEiLCJmb3JtX2V2ZW50X2NhbmNlbGVkIl0sWzUyLCJyIiwiZ2E0X2NvbGxlY3Rpb25fc3ViZG9tYWluIl0sWzUyLCJzIiwiZ3RtX2V4dHJhY3RlZF9kYXRhIl0sWzUyLCJ0IiwiaGFuZGxlX2ludGVybmFsbHkiXSxbNTIsInUiLCJoYXNfZ2FfY29udmVyc2lvbl9jb25zZW50cyJdLFs1MiwidiIsImhpdF90eXBlIl0sWzUyLCJ3IiwiaGl0X3R5cGVfb3ZlcnJpZGUiXSxbNTIsIngiLCJpZ25vcmVfZHVwZV9jb25maWciXSxbNTIsInkiLCJpc19jb252ZXJzaW9uIl0sWzUyLCJ6IiwiaXNfZXh0ZXJuYWxfZXZlbnQiXSxbNTIsImFBIiwiaXNfZmlyc3RfdmlzaXQiXSxbNTIsImFCIiwiaXNfZmlyc3RfdmlzaXRfY29udmVyc2lvbiJdLFs1MiwiYUMiLCJpc19mcG1fZW5jcnlwdGlvbiJdLFs1MiwiYUQiLCJpc19mcG1fc3BsaXQiXSxbNTIsImFFIiwiaXNfZ2NwX2Jyb3dzZXIiXSxbNTIsImFGIiwiaXNfZ29vZ2xlX21lYXN1cmVtZW50X2FsbG93ZWQiXSxbNTIsImFHIiwiaXNfc2VydmVyX3NpZGVfZGVzdGluYXRpb24iXSxbNTIsImFIIiwiaXNfc2Vzc2lvbl9zdGFydCJdLFs1MiwiYUkiLCJpc19zZXNzaW9uX3N0YXJ0X2NvbnZlcnNpb24iXSxbNTIsImFKIiwiaXNfc2d0bV9nYV9hZHNfY29udmVyc2lvbl9zdHVkeV9jb250cm9sX2dyb3VwIl0sWzUyLCJhSyIsImlzX3NndG1fcHJlaGl0Il0sWzUyLCJhTCIsImlzX3NwbGl0X2NvbnZlcnNpb24iXSxbNTIsImFNIiwiaXNfc3luIl0sWzUyLCJhTiIsImlzX3Rlc3RfZXZlbnQiXSxbNTIsImFPIiwicHJlaGl0X2Zvcl9yZXRyeSJdLFs1MiwiYVAiLCJyZWRhY3RfYWRzX2RhdGEiXSxbNTIsImFRIiwicmVkYWN0X2NsaWNrX2lkcyJdLFs1MiwiYVIiLCJzZW5kX2NjbV9wYXJhbGxlbF9waW5nIl0sWzUyLCJhUyIsInNlbmRfdXNlcl9kYXRhX2hpdCJdLFs1MiwiYVQiLCJzcGVjdWxhdGl2ZSJdLFs1MiwiYVUiLCJzeW5fb3JfbW9kIl0sWzUyLCJhViIsInRyYW5zaWVudF9lY3NpZCJdLFs1MiwiYVciLCJ1c2VyX2RhdGEiXSxbNTIsImFYIiwidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljIl0sWzUyLCJhWSIsInVzZXJfZGF0YV9mcm9tX2F1dG9tYXRpY19nZXR0ZXIiXSxbNTIsImFaIiwidXNlcl9kYXRhX2Zyb21fY29kZSJdLFs1MiwiYkEiLCJ1c2VyX2RhdGFfZnJvbV9tYW51YWwiXSxbMzYsWzgsIkEiLFsxNSwiYiJdLCJCIixbMTUsImMiXSwiRiIsWzE1LCJkIl0sIk0iLFsxNSwiZSJdLCJOIixbMTUsImYiXSwiTyIsWzE1LCJnIl0sIlAiLFsxNSwiaCJdLCJRIixbMTUsImkiXSwiUyIsWzE1LCJqIl0sIlQiLFsxNSwiayJdLCJaIixbMTUsImwiXSwiQUEiLFsxNSwibSJdLCJBQiIsWzE1LCJuIl0sIkFDIixbMTUsIm8iXSwiQUQiLFsxNSwicCJdLCJBSiIsWzE1LCJxIl0sIkFLIixbMTUsInIiXSwiQU4iLFsxNSwicyJdLCJBTyIsWzE1LCJ0Il0sIkFQIixbMTUsInUiXSwiQVEiLFsxNSwidiJdLCJBUiIsWzE1LCJ3Il0sIkFTIixbMTUsIngiXSwiQVYiLFsxNSwieSJdLCJBWSIsWzE1LCJ6Il0sIkFaIixbMTUsImFBIl0sIkJBIixbMTUsImFCIl0sIkJDIixbMTUsImFDIl0sIkJEIixbMTUsImFEIl0sIkJFIixbMTUsImFFIl0sIkJGIixbMTUsImFGIl0sIkJLIixbMTUsImFHIl0sIkJMIixbMTUsImFIIl0sIkJNIixbMTUsImFJIl0sIkJOIixbMTUsImFKIl0sIkJPIixbMTUsImFLIl0sIkJRIixbMTUsImFMIl0sIkJSIixbMTUsImFNIl0sIkJTIixbMTUsImFOIl0sIkJZIixbMTUsImFPIl0sIkNCIixbMTUsImFQIl0sIkNDIixbMTUsImFRIl0sIkNFIixbMTUsImFSIl0sIkNOIixbMTUsImFTIl0sIkNRIixbMTUsImFUIl0sIkNUIixbMTUsImFVIl0sIkNVIixbMTUsImFWIl0sIkNXIixbMTUsImFXIl0sIkNYIixbMTUsImFYIl0sIkNZIixbMTUsImFZIl0sIkNaIixbMTUsImFaIl0sIkRBIixbMTUsImJBIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9mZWF0dXJlRmxhZ3MiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLDQ1XSxbNTIsImMiLDQ2XSxbNTIsImQiLDQ3XSxbNTIsImUiLDE3NF0sWzUyLCJmIiwyNzZdLFszNixbOCwiRiIsWzE1LCJiIl0sIkciLFsxNSwiYyJdLCJIIixbMTUsImQiXSwiViIsWzE1LCJlIl0sIkFEIixbMTUsImYiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2ZlYXR1cmVzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiw0MjVdLFs1MiwiYyIsNDM1XSxbNTIsImQiLDQ4OF0sWzUyLCJlIiw0ODldLFs1MiwiZiIsNDk4XSxbNTIsImciLDUwM10sWzUyLCJoIiw1MDRdLFs1MiwiaSIsNTA2XSxbNTIsImoiLDUyM10sWzUyLCJrIiw1MzJdLFs1MiwibCIsNTUzXSxbNTIsIm0iLDU2OF0sWzUyLCJuIiw1NzddLFs1MiwibyIsNTgxXSxbNTIsInAiLDU4M10sWzUyLCJxIiw1OTJdLFs1MiwiciIsNTk0XSxbNTIsInMiLDU5OV0sWzM2LFs4LCJBViIsWzE1LCJrIl0sIkFEIixbMTUsImQiXSwiQ0kiLFsxNSwicSJdLCJCViIsWzE1LCJuIl0sIkJPIixbMTUsIm0iXSwiQ0siLFsxNSwiciJdLCJDUCIsWzE1LCJzIl0sIkFNIixbMTUsImciXSwiQloiLFsxNSwibyJdLCJBVCIsWzE1LCJqIl0sIkFFIixbMTUsImUiXSwiQU4iLFsxNSwiaCJdLCJMIixbMTUsImMiXSwiQkMiLFsxNSwibCJdLCJBTyIsWzE1LCJpIl0sIkNCIixbMTUsInAiXSwiQUkiLFsxNSwiZiJdLCJJIixbMTUsImIiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tTZXRHcHBQYXJhbXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImQiLFs0NiwiZSJdLFs1MiwiZiIsWyJiIl1dLFsyMixbMTYsWzE1LCJmIl0sWzE3LFsxNSwiYyJdLCJGWiJdXSxbNDYsWzUzLFsyLFsxNSwiZSJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJjIl0sIkZaIl0sWzE2LFsxNSwiZiJdLFsxNyxbMTUsImMiXSwiRloiXV1dXV1dXSxbMjIsWzE2LFsxNSwiZiJdLFsxNyxbMTUsImMiXSwiRlkiXV0sWzQ2LFs1MyxbMixbMTUsImUiXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiYyJdLCJGWSJdLFsxNixbMTUsImYiXSxbMTcsWzE1LCJjIl0sIkZZIl1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJpdmFjeVN0cmluZ3MiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzM2LFs4LCJBIixbMTUsImQiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KIApdCiwiZW50aXRpZXMiOnsKIl9fY2NkX2ZsX2ZpcnN0Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2ZsX2xhc3QiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19lIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fb2d0XzFwX2RhdGFfdjIiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19vZ3RfZG1hIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fcmVwIjp7IjUiOnRydWUsIjYiOnRydWV9CgoKfQosImJsb2IiOnsiMSI6IjIiLCIxMCI6IkRDLTExNDE4Njg5fEdULVBIUFhKUDk0IiwiMTEiOnRydWUsIjE0IjoiNjdtMCIsIjE1IjoiMCIsIjE2IjoiQ2hFSThJT2Mwd1lRZ09tc2t2dWx4S3FSQVJJY0FMMlBZWlk3cGJ6T3ZLVUZBNnEyWUozOWhKOVFxdmZ5K2JTbkxSb0N4SVk9IiwiMTciOiJjIiwiMTkiOiJkYXRhTGF5ZXIiLCIyMCI6IiIsIjIxIjoid3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIiwiMjIiOiJleUl3SWpvaVRrOGlMQ0l4SWpvaVRrOHRNRE1pTENJeUlqcG1ZV3h6WlN3aU15STZJbWR2YjJkc1pTNXVieUlzSWpRaU9pSnlaV2RwYjI0eElpd2lOU0k2Wm1Gc2MyVXNJallpT25SeWRXVXNJamNpT2lKaFpGOXpkRzl5WVdkbGZHRnVZV3g1ZEdsamMxOXpkRzl5WVdkbGZHRmtYM1Z6WlhKZlpHRjBZWHhoWkY5d1pYSnpiMjVoYkdsNllYUnBiMjRpTENJNUlqcDBjblZsZlEiLCIyMyI6Imdvb2dsZS50YWdtYW5hZ2VyLmRlYnVndWkyLnF1ZXVlIiwiMjQiOiJ0YWdhc3Npc3RhbnQuZ29vZ2xlLmNvbSIsIjI3IjowLjAwNSwiMyI6Ind3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbSIsIjMwIjoiTk8iLCIzMSI6Ik5PLTAzIiwiMzIiOmZhbHNlLCIzMyI6InJlZ2lvbjEiLCIzNCI6IkRDLTExNDE4Njg5IiwiMzUiOiJEQyIsIjM2IjoiaHR0cHM6Ly9hZHNlcnZpY2UuZ29vZ2xlLmNvbS9wYWdlYWQvcmVnY2xrIiwiMzciOiJfX1RBR0dZX0lOU1RBTExFRCIsIjM4IjoiY2N0Lmdvb2dsZSIsIjM5IjoiZ29vZ1RhZ2d5UmVmZXJyZXIiLCI0MCI6Imh0dHBzOi8vY2N0Lmdvb2dsZS90YWdneS9hZ2VudC5qcyIsIjQxIjoiZ29vZ2xlLnRhZ21hbmFnZXIudGEucHJvZHF1ZXVlIiwiNDIiOjAuMDEsIjQzIjoie1wia2V5c1wiOlt7XCJocGtlUHVibGljS2V5XCI6e1wicGFyYW1zXCI6e1wiYWVhZFwiOlwiQUVTXzEyOF9HQ01cIixcImtkZlwiOlwiSEtERl9TSEEyNTZcIixcImtlbVwiOlwiREhLRU1fUDI1Nl9IS0RGX1NIQTI1NlwifSxcInB1YmxpY0tleVwiOlwiQktseVRYMmp5b2JwUUNtZlV5QmJoQnlRSGs5WjJIZE41bEh4cEJBdElLR01jbXp3MGdFK2VibFlDbW0xR2E3YlllVGR5ZG9KbWU2SXBhU29DVTBJVVVvPVwiLFwidmVyc2lvblwiOjB9LFwiaWRcIjpcImRlZTRiMzUxLWIwZjUtNGMyNy1hOGM4LWVkNjYwNDc3YTQ0Y1wifSx7XCJocGtlUHVibGljS2V5XCI6e1wicGFyYW1zXCI6e1wiYWVhZFwiOlwiQUVTXzEyOF9HQ01cIixcImtkZlwiOlwiSEtERl9TSEEyNTZcIixcImtlbVwiOlwiREhLRU1fUDI1Nl9IS0RGX1NIQTI1NlwifSxcInB1YmxpY0tleVwiOlwiQkR0WUJSblBCUzFnNm1lWE8xclE1YTUyQjVGYm5oN0RDNWpxdjAyaXhKc3NuMGsxSjlyY0hDYVZjL3p6UnNuc0hCelNvRktzNko4cEg3Q2NuUVAzRWp3PVwiLFwidmVyc2lvblwiOjB9LFwiaWRcIjpcImFkMTkzYjJhLTRhOTAtNGMxYS1iNzllLWRlMzdhYzM5MWJkMlwifSx7XCJocGtlUHVibGljS2V5XCI6e1wicGFyYW1zXCI6e1wiYWVhZFwiOlwiQUVTXzEyOF9HQ01cIixcImtkZlwiOlwiSEtERl9TSEEyNTZcIixcImtlbVwiOlwiREhLRU1fUDI1Nl9IS0RGX1NIQTI1NlwifSxcInB1YmxpY0tleVwiOlwiQk1aMFVNdWRBZTRQb2FmU1RwVXhQdElrZkJlQ01iRkJYdnR5Ull2SExDU1EvRVV2RUpzbXNWNHQ2TkIvQkVWcHFMM0h2OGdOU1FoN0srU1Vvb2YyNWFvPVwiLFwidmVyc2lvblwiOjB9LFwiaWRcIjpcIjQ4YzRlZmUxLWZkZDAtNDM2YS1hYzhmLTkyM2YxMTkxODc4N1wifSx7XCJocGtlUHVibGljS2V5XCI6e1wicGFyYW1zXCI6e1wiYWVhZFwiOlwiQUVTXzEyOF9HQ01cIixcImtkZlwiOlwiSEtERl9TSEEyNTZcIixcImtlbVwiOlwiREhLRU1fUDI1Nl9IS0RGX1NIQTI1NlwifSxcInB1YmxpY0tleVwiOlwiQkZmbHZVbCt4cEhhRlZDSVlPMUtQTHhrditBamRsNGQ4cnZyWGhJNnpmcG5iQkRxSTUxRERrdEhIYjNaV0lTNTdvRGgwS2lyOUF1Q09vbjJNT3hOVjlZPVwiLFwidmVyc2lvblwiOjB9LFwiaWRcIjpcIjQzMmJjMjcwLTk5ZWEtNDIyMC1iNTYyLWUyYzVhZTc3ZDRkOVwifSx7XCJocGtlUHVibGljS2V5XCI6e1wicGFyYW1zXCI6e1wiYWVhZFwiOlwiQUVTXzEyOF9HQ01cIixcImtkZlwiOlwiSEtERl9TSEEyNTZcIixcImtlbVwiOlwiREhLRU1fUDI1Nl9IS0RGX1NIQTI1NlwifSxcInB1YmxpY0tleVwiOlwiQkFROFRreTRETFdPSmJIT0hiVllEYlFaRWZFZWxiNEZUQjhFWU1RZVJRaUwxbTFMdEFkMHIzemV5TGpnWjMvVzI0UjhWZmIyMnpZMml4NlcvVGZDampBPVwiLFwidmVyc2lvblwiOjB9LFwiaWRcIjpcIjA1MGE2ZTExLTM4YWItNGY4MC04OWNiLTdiMzE5Yjk3MDRjMFwifV19IiwiNDQiOiIxMTg4OTc5MjB+MTE4ODk3OTMwIiwiNDUiOnRydWUsIjQ2Ijp7IjEiOiIxMDAwIiwiMTAiOiI2NnUwIiwiMTEiOiI2NmcwIiwiMTQiOiIxMDAwIiwiMTYiOiJVUy1DT35VUy1DVH5VUy1NVH5VUy1ORX5VUy1OSH5VUy1UWH5VUy1NTn5VUy1OSn5VUy1NRH5VUy1PUn5VUy1ERSIsIjE3IjoiVVMtQ09+VVMtQ1R+VVMtTVR+VVMtTkV+VVMtTkh+VVMtVFh+VVMtTU5+VVMtTkp+VVMtTUR+VVMtT1J+VVMtREUiLCIyIjoiOSIsIjIwIjoiNTAwMCIsIjIxIjoiNTAwMCIsIjIyIjoiNC40LjAiLCIyMyI6IjAuMC4wIiwiMjUiOiIxIiwiMjYiOiI0MDAwIiwiMjciOiIxMDAiLCIzIjoiNSIsIjQiOiJhZF9zdG9yYWdlfGFuYWx5dGljc19zdG9yYWdlfGFkX3VzZXJfZGF0YXxhZF9wZXJzb25hbGl6YXRpb24iLCI0NCI6IjE1MDAwIiwiNDgiOiIzMDAwMCIsIjUiOiJhZF9zdG9yYWdlfGFuYWx5dGljc19zdG9yYWdlfGFkX3VzZXJfZGF0YSIsIjYiOiIxIiwiNjEiOiIxMDAwIiwiNjIiOiJBNk9OSFJZNy9idkJybytJTVpkL2E2TE5qbjdTU3Y5OTlTa04vaEZBRTlMNnZNcjM0ZE5nZmRTVmRZbXY0VStOSFpnMXN4ZDM4UnRjaVJwUlV0SVJQZ1FBQUFDQ2V5SnZjbWxuYVc0aU9pSm9kSFJ3Y3pvdkwzZDNkeTVuYjI5bmJHVjBZV2R0WVc1aFoyVnlMbU52YlRvME5ETWlMQ0ptWldGMGRYSmxJam9pVTJoaGNtVmtWMjl5YTJWeVJYaDBaVzVrWldSTWFXWmxkR2x0WlNJc0ltVjRjR2x5ZVNJNk1UYzNOamN5T1RZd01Dd2lhWE5VYUdseVpGQmhjblI1SWpwMGNuVmxmUT09IiwiNjMiOiIxMDAwIiwiNjYiOiIxMDAiLCI3IjoiMTAifSwiNDgiOnRydWUsIjUiOiJEQy0xMTQxODY4OSIsIjUxIjp0cnVlLCI1NSI6WyJEQy0xMTQxODY4OSJdLCI1NiI6W3siMSI6NDAzLCIzIjowLjUsIjQiOjExNTkzODQ2NSwiNSI6MTE1OTM4NDY2LCI2IjowLCI3IjoyfSx7IjEiOjQwNCwiMyI6MC41LCI0IjoxMTU5Mzg0NjgsIjUiOjExNTkzODQ2OSwiNiI6MCwiNyI6MX0seyIxIjo2MDIsIjMiOjAuMDEsIjQiOjEyMDEyNDQ1NSwiNSI6MTIwMTI0NDUzLCI2IjoxMjAxMjQ0NTQsIjciOjN9LHsiMSI6NTY5LCIyIjp0cnVlfSx7IjEiOjQ3NSwiMiI6dHJ1ZX0seyIxIjo1MDIsIjIiOnRydWV9LHsiMSI6NTc3LCIyIjp0cnVlfSx7IjEiOjU2OCwiMyI6MC4wMSwiNCI6MTE5NzkxNzQ5LCI1IjoxMTk3OTE3NDgsIjYiOjAsIjciOjF9LHsiMSI6NDkwLCIyIjp0cnVlfSx7IjEiOjQ5MSwiMyI6MC4wMSwiNCI6MTE4MDEyMDA3LCI1IjoxMTgwMTIwMDgsIjYiOjExODAxMjAwOSwiNyI6MX0seyIxIjo0ODAsIjIiOnRydWV9LHsiMSI6NTk0LCIzIjowLjAxLCI0IjoxMTk3OTM5NzQsIjUiOjExOTc5Mzk3MiwiNiI6MTE5NzkzOTczLCI3IjoxfSx7IjEiOjU5OSwiMiI6dHJ1ZX0seyIxIjo1ODAsIjMiOjAuMSwiNCI6MTE5NTI3MDIwLCI1IjoxMTk1MjcwMTksIjYiOjAsIjciOjF9LHsiMSI6NTIzLCIyIjp0cnVlfSx7IjEiOjU4MSwiMyI6MC4wMSwiNCI6MTE5OTQ4ODU0LCI1IjoxMTk5NDg4NTIsIjYiOjExOTk0ODg1MywiNyI6M30seyIxIjo1NTUsIjMiOjAuMDEsIjQiOjExOTI1OTYwNiwiNSI6MTE5MjU5NjA1LCI2IjowLCI3IjoyfSx7IjEiOjUwNCwiMiI6dHJ1ZX0seyIxIjo0NjIsIjMiOjAuMDUsIjQiOjExODgwNjUyNCwiNSI6MTE4ODA2NTI1LCI2IjoxMTg4MDY1MjYsIjciOjF9LHsiMSI6NDEzLCIyIjp0cnVlfSx7IjEiOjU5MywiMiI6dHJ1ZX0seyIxIjo1MDYsIjIiOnRydWV9LHsiMSI6NTAwLCIyIjp0cnVlfSx7IjEiOjU2MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMywiNSI6MTE5NDA0NzAyLCI2IjowLCI3IjoxfSx7IjEiOjQ4MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMSwiNSI6MTE5NDA0NzAwLCI2IjowLCI3IjoxfSx7IjEiOjQ1MCwiMyI6MC4wMSwiNCI6MTE3MjI3NzE0LCI1IjoxMTcyMjc3MTUsIjYiOjExNzIyNzcxNiwiNyI6M30seyIxIjo1ODMsIjMiOjAuNSwiNCI6MTE5ODk2ODAzLCI1IjoxMTk4OTY4MDIsIjYiOjAsIjciOjF9LHsiMSI6NDU4LCIyIjp0cnVlfSx7IjEiOjU4MiwiMyI6MC4wMSwiNCI6MTE5MzgxNjY0LCI1IjoxMTkzODE2NjIsIjYiOjExOTM4MTY2MywiNyI6MX0seyIxIjo1NzAsIjIiOnRydWV9LHsiMSI6NDk4LCIzIjowLjIsIjQiOjExNTYxNjk4NSwiNSI6MTE1NjE2OTg2LCI2IjowLCI3IjoxfSx7IjEiOjU5NSwiMiI6dHJ1ZX0seyIxIjo1ODksIjMiOjAuMDEsIjQiOjEyMDA4NDIxNSwiNSI6MTIwMDg0MjE0LCI2IjowLCI3IjoxfSx7IjEiOjQ5NSwiMyI6MC4wNSwiNCI6MTE4MTMxODEwLCI1IjoxMTgxMzE4MDgsIjYiOjExODEzMTgwOSwiNyI6M30seyIxIjo1ODcsIjMiOjAuMSwiNCI6MTE5NzMyMTcxLCI1IjoxMTk3MzIxNzAsIjYiOjAsIjciOjN9LHsiMSI6NTg0LCIyIjp0cnVlfSx7IjEiOjU2NCwiMyI6MC4wMDAxLCI0IjoxMTkyMDUzMTcsIjUiOjExOTIwNTMxNSwiNiI6MTE5MjA1MzE2LCI3IjoxfSx7IjEiOjU1NywiMiI6dHJ1ZX0seyIxIjo0MjcsIjMiOjAuMSwiNCI6MTE5NzI0MzIyLCI1IjoxMTk3MjQzMjAsIjYiOjExOTcyNDMyMSwiNyI6Mn0seyIxIjo1NzYsIjMiOjAuMDEsIjQiOjExOTMxNzgxMCwiNSI6MTE5MzE3ODExLCI2IjoxMTkzMTgxNzcsIjciOjN9LHsiMSI6NTczLCIyIjp0cnVlfSx7IjEiOjQ5OSwiMiI6dHJ1ZX0seyIxIjo1MTYsIjMiOjAuMSwiNCI6MTE4Mzk1MzM1LCI1IjoxMTgzOTUzMzMsIjYiOjExODM5NTMzNCwiNyI6MX0seyIxIjo1MjQsIjIiOnRydWV9XSwiNTkiOlsiREMtMTE0MTg2ODkiXSwiNiI6IjE4MTgwNjQ5NCIsIjYyIjp0cnVlLCI2MyI6MC4wMDUsIjciOnRydWV9CiwicGVybWlzc2lvbnMiOnsKIl9fY2NkX2ZsX2ZpcnN0Ijp7fQosCiJfX2NjZF9mbF9sYXN0Ijp7fQosCiJfX2UiOnsicmVhZF9ldmVudF9kYXRhIjp7ImV2ZW50RGF0YUFjY2VzcyI6InNwZWNpZmljIiwia2V5UGF0dGVybnMiOlsiZXZlbnQiXX19CiwKIl9fb2d0XzFwX2RhdGFfdjIiOnsiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSI6eyJsaW1pdERhdGFTb3VyY2VzIjp0cnVlLCJhbGxvd0F1dG9EYXRhU291cmNlcyI6dHJ1ZSwiYWxsb3dNYW51YWxEYXRhU291cmNlcyI6ZmFsc2UsImFsbG93Q29kZURhdGFTb3VyY2VzIjpmYWxzZX19CiwKIl9fb2d0X2RtYSI6eyJhY2Nlc3NfY29uc2VudCI6eyJjb25zZW50VHlwZXMiOlt7ImNvbnNlbnRUeXBlIjoiYWRfdXNlcl9kYXRhIiwicmVhZCI6ZmFsc2UsIndyaXRlIjp0cnVlfSx7ImNvbnNlbnRUeXBlIjoiYWRfc3RvcmFnZSIsInJlYWQiOnRydWUsIndyaXRlIjpmYWxzZX1dfX0KLAoiX19yZXAiOnt9CgoKfQoKCgosInNlY3VyaXR5X2dyb3VwcyI6ewoiZ29vZ2xlIjpbCiJfX2NjZF9mbF9maXJzdCIKLAoiX19jY2RfZmxfbGFzdCIKLAoiX19lIgosCiJfX29ndF8xcF9kYXRhX3YyIgosCiJfX29ndF9kbWEiCiwKIl9fcmVwIgoKXQoKCn0KCgoKCgp9OwoKCgoKdmFyIGssYWE9dHlwZW9mIE9iamVjdC5jcmVhdGU9PSJmdW5jdGlvbiI/T2JqZWN0LmNyZWF0ZTpmdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbigpe307Yi5wcm90b3R5cGU9YTtyZXR1cm4gbmV3IGJ9LGJhPXR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllcz09ImZ1bmN0aW9uIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PUFycmF5LnByb3RvdHlwZXx8YT09T2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gYTthW2JdPWMudmFsdWU7cmV0dXJuIGF9LGNhPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bIm9iamVjdCI9PXR5cGVvZiBnbG9iYWxUaGlzJiZnbG9iYWxUaGlzLGEsIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJndpbmRvdywib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGYsIm9iamVjdCI9PXR5cGVvZiBnbG9iYWwmJmdsb2JhbF0sYz0wO2M8Yi5sZW5ndGg7KytjKXt2YXIgZD1iW2NdO2lmKGQmJmQuTWF0aD09TWF0aClyZXR1cm4gZH10aHJvdyBFcnJvcigiQ2Fubm90IGZpbmQgZ2xvYmFsIG9iamVjdCIpOwp9LGhhPWNhKHRoaXMpLGlhPXR5cGVvZiBTeW1ib2w9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgU3ltYm9sKCJ4Iik9PT0ic3ltYm9sIixrYT17fSxsYT17fSxuYT1mdW5jdGlvbihhLGIsYyl7aWYoIWN8fGEhPW51bGwpe3ZhciBkPWxhW2JdO2lmKGQ9PW51bGwpcmV0dXJuIGFbYl07dmFyIGU9YVtkXTtyZXR1cm4gZSE9PXZvaWQgMD9lOmFbYl19fSxvYT1mdW5jdGlvbihhLGIsYyl7aWYoYilhOnt2YXIgZD1hLnNwbGl0KCIuIiksZT1kLmxlbmd0aD09PTEsZj1kWzBdLGc7IWUmJmYgaW4ga2E/Zz1rYTpnPWhhO2Zvcih2YXIgaD0wO2g8ZC5sZW5ndGgtMTtoKyspe3ZhciBsPWRbaF07aWYoIShsIGluIGcpKWJyZWFrIGE7Zz1nW2xdfXZhciBuPWRbZC5sZW5ndGgtMV0scD1pYSYmYz09PSJlczYiP2dbbl06bnVsbCxxPWIocCk7aWYocSE9bnVsbClpZihlKWJhKGthLG4se2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpxfSk7ZWxzZSBpZihxIT09cCl7aWYobGFbbl09PT12b2lkIDApe3ZhciByPQpNYXRoLnJhbmRvbSgpKjFFOT4+PjA7bGFbbl09aWE/aGEuU3ltYm9sKG4pOiIkanNjcCQiK3IrIiQiK259YmEoZyxsYVtuXSx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnF9KX19fSxwYTtpZihpYSYmdHlwZW9mIE9iamVjdC5zZXRQcm90b3R5cGVPZj09ImZ1bmN0aW9uIilwYT1PYmplY3Quc2V0UHJvdG90eXBlT2Y7ZWxzZXt2YXIgcmE7YTp7dmFyIHRhPXthOiEwfSx1YT17fTt0cnl7dWEuX19wcm90b19fPXRhO3JhPXVhLmE7YnJlYWsgYX1jYXRjaChhKXt9cmE9ITF9cGE9cmE/ZnVuY3Rpb24oYSxiKXthLl9fcHJvdG9fXz1iO2lmKGEuX19wcm90b19fIT09Yil0aHJvdyBuZXcgVHlwZUVycm9yKGErIiBpcyBub3QgZXh0ZW5zaWJsZSIpO3JldHVybiBhfTpudWxsfQp2YXIgdmE9cGEsd2E9ZnVuY3Rpb24oYSxiKXthLnByb3RvdHlwZT1hYShiLnByb3RvdHlwZSk7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTtpZih2YSl2YShhLGIpO2Vsc2UgZm9yKHZhciBjIGluIGIpaWYoYyE9InByb3RvdHlwZSIpaWYoT2JqZWN0LmRlZmluZVByb3BlcnRpZXMpe3ZhciBkPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYixjKTtkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxjLGQpfWVsc2UgYVtjXT1iW2NdO2EuRnQ9Yi5wcm90b3R5cGV9LHhhPWZ1bmN0aW9uKGEpe3ZhciBiPTA7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGI8YS5sZW5ndGg/e2RvbmU6ITEsdmFsdWU6YVtiKytdfTp7ZG9uZTohMH19fSxtPWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBTeW1ib2whPSJ1bmRlZmluZWQiJiZTeW1ib2wuaXRlcmF0b3ImJmFbU3ltYm9sLml0ZXJhdG9yXTtpZihiKXJldHVybiBiLmNhbGwoYSk7aWYodHlwZW9mIGEubGVuZ3RoPT0ibnVtYmVyIilyZXR1cm57bmV4dDp4YShhKX07CnRocm93IEVycm9yKFN0cmluZyhhKSsiIGlzIG5vdCBhbiBpdGVyYWJsZSBvciBBcnJheUxpa2UiKTt9LHlhPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYixjPVtdOyEoYj1hLm5leHQoKSkuZG9uZTspYy5wdXNoKGIudmFsdWUpO3JldHVybiBjfSx3PWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgQXJyYXk/YTp5YShtKGEpKX0sQWE9ZnVuY3Rpb24oYSl7cmV0dXJuIHphKGEsYSl9LHphPWZ1bmN0aW9uKGEsYil7YS5yYXc9YjtPYmplY3QuZnJlZXplJiYoT2JqZWN0LmZyZWV6ZShhKSxPYmplY3QuZnJlZXplKGIpKTtyZXR1cm4gYX0sQmE9aWEmJnR5cGVvZiBuYShPYmplY3QsImFzc2lnbiIpPT0iZnVuY3Rpb24iP25hKE9iamVjdCwiYXNzaWduIik6ZnVuY3Rpb24oYSxiKXtpZihhPT1udWxsKXRocm93IG5ldyBUeXBlRXJyb3IoIk5vIG51bGxpc2ggYXJnIik7YT1PYmplY3QoYSk7Zm9yKHZhciBjPTE7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dmFyIGQ9YXJndW1lbnRzW2NdOwppZihkKWZvcih2YXIgZSBpbiBkKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkLGUpJiYoYVtlXT1kW2VdKX1yZXR1cm4gYX07b2EoIk9iamVjdC5hc3NpZ24iLGZ1bmN0aW9uKGEpe3JldHVybiBhfHxCYX0sImVzNiIpO3ZhciBDYT1mdW5jdGlvbihhKXtpZighKGEgaW5zdGFuY2VvZiBPYmplY3QpKXRocm93IG5ldyBUeXBlRXJyb3IoIkl0ZXJhdG9yIHJlc3VsdCAiK2ErIiBpcyBub3QgYW4gb2JqZWN0Iik7fSxEYT1mdW5jdGlvbigpe3RoaXMuZmE9ITE7dGhpcy5SPW51bGw7dGhpcy5qYT12b2lkIDA7dGhpcy5IPTE7dGhpcy5OPXRoaXMuWj0wO3RoaXMuTGE9dGhpcy5LPW51bGx9LEVhPWZ1bmN0aW9uKGEpe2lmKGEuZmEpdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgcnVubmluZyIpO2EuZmE9ITB9O0RhLnByb3RvdHlwZS55YT1mdW5jdGlvbihhKXt0aGlzLmphPWF9Owp2YXIgR2E9ZnVuY3Rpb24oYSxiKXthLks9e2FvOmIsaXNFeGNlcHRpb246ITB9O2EuSD1hLlp8fGEuTn07RGEucHJvdG90eXBlLmdldE5leHRBZGRyZXNzSnNjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH07RGEucHJvdG90eXBlLmdldFlpZWxkUmVzdWx0SnNjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuamF9O0RhLnByb3RvdHlwZS5yZXR1cm49ZnVuY3Rpb24oYSl7dGhpcy5LPXtyZXR1cm46YX07dGhpcy5IPXRoaXMuTn07RGEucHJvdG90eXBlWyJyZXR1cm4iXT1EYS5wcm90b3R5cGUucmV0dXJuO0RhLnByb3RvdHlwZS5Baj1mdW5jdGlvbihhKXt0aGlzLks9e25kOmF9O3RoaXMuSD10aGlzLk59O0RhLnByb3RvdHlwZS5qdW1wVGhyb3VnaEZpbmFsbHlCbG9ja3M9RGEucHJvdG90eXBlLkFqO0RhLnByb3RvdHlwZS5hYz1mdW5jdGlvbihhLGIpe3RoaXMuSD1iO3JldHVybnt2YWx1ZTphfX07RGEucHJvdG90eXBlLnlpZWxkPURhLnByb3RvdHlwZS5hYzsKRGEucHJvdG90eXBlLnhzPWZ1bmN0aW9uKGEsYil7dmFyIGM9bShhKSxkPWMubmV4dCgpO0NhKGQpO2lmKGQuZG9uZSl0aGlzLmphPWQudmFsdWUsdGhpcy5IPWI7ZWxzZSByZXR1cm4gdGhpcy5SPWMsdGhpcy5hYyhkLnZhbHVlLGIpfTtEYS5wcm90b3R5cGUueWllbGRBbGw9RGEucHJvdG90eXBlLnhzO0RhLnByb3RvdHlwZS5uZD1mdW5jdGlvbihhKXt0aGlzLkg9YX07RGEucHJvdG90eXBlLmp1bXBUbz1EYS5wcm90b3R5cGUubmQ7RGEucHJvdG90eXBlLkRqPWZ1bmN0aW9uKCl7dGhpcy5IPTB9O0RhLnByb3RvdHlwZS5qdW1wVG9FbmQ9RGEucHJvdG90eXBlLkRqO0RhLnByb3RvdHlwZS5Oaj1mdW5jdGlvbihhLGIpe3RoaXMuWj1hO2IhPXZvaWQgMCYmKHRoaXMuTj1iKX07RGEucHJvdG90eXBlLnNldENhdGNoRmluYWxseUJsb2Nrcz1EYS5wcm90b3R5cGUuTmo7RGEucHJvdG90eXBlLnZnPWZ1bmN0aW9uKGEpe3RoaXMuWj0wO3RoaXMuTj1hfHwwfTsKRGEucHJvdG90eXBlLnNldEZpbmFsbHlCbG9jaz1EYS5wcm90b3R5cGUudmc7RGEucHJvdG90eXBlLklqPWZ1bmN0aW9uKGEsYil7dGhpcy5IPWE7dGhpcy5aPWJ8fDB9O0RhLnByb3RvdHlwZS5sZWF2ZVRyeUJsb2NrPURhLnByb3RvdHlwZS5JajtEYS5wcm90b3R5cGUuUGg9ZnVuY3Rpb24oYSl7dGhpcy5aPWF8fDA7dmFyIGI9dGhpcy5LLmFvO3RoaXMuSz1udWxsO3JldHVybiBifTtEYS5wcm90b3R5cGUuZW50ZXJDYXRjaEJsb2NrPURhLnByb3RvdHlwZS5QaDtEYS5wcm90b3R5cGUua2Q9ZnVuY3Rpb24oYSxiLGMpe2M/dGhpcy5MYVtjXT10aGlzLks6dGhpcy5MYT1bdGhpcy5LXTt0aGlzLlo9YXx8MDt0aGlzLk49Ynx8MH07RGEucHJvdG90eXBlLmVudGVyRmluYWxseUJsb2NrPURhLnByb3RvdHlwZS5rZDsKRGEucHJvdG90eXBlLmhlPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5MYS5zcGxpY2UoYnx8MClbMF0sZD10aGlzLks9dGhpcy5LfHxjO2Q/ZC5pc0V4Y2VwdGlvbj90aGlzLkg9dGhpcy5afHx0aGlzLk46ZC5uZCE9dm9pZCAwJiZ0aGlzLk48ZC5uZD8odGhpcy5IPWQubmQsdGhpcy5LPW51bGwpOnRoaXMuSD10aGlzLk46dGhpcy5IPWF9O0RhLnByb3RvdHlwZS5sZWF2ZUZpbmFsbHlCbG9jaz1EYS5wcm90b3R5cGUuaGU7RGEucHJvdG90eXBlLmZlPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgSGEoYSl9O0RhLnByb3RvdHlwZS5mb3JJbj1EYS5wcm90b3R5cGUuZmU7dmFyIEhhPWZ1bmN0aW9uKGEpe3RoaXMuSz1hO3RoaXMuSD1bXTtmb3IodmFyIGIgaW4gYSl0aGlzLkgucHVzaChiKTt0aGlzLkgucmV2ZXJzZSgpfTtIYS5wcm90b3R5cGUuaG89ZnVuY3Rpb24oKXtmb3IoO3RoaXMuSC5sZW5ndGg+MDspe3ZhciBhPXRoaXMuSC5wb3AoKTtpZihhIGluIHRoaXMuSylyZXR1cm4gYX1yZXR1cm4gbnVsbH07CkhhLnByb3RvdHlwZS5nZXROZXh0PUhhLnByb3RvdHlwZS5obzsKdmFyIElhPWZ1bmN0aW9uKGEpe3RoaXMuSD1uZXcgRGE7dGhpcy5LPWF9LExhPWZ1bmN0aW9uKGEsYil7RWEoYS5IKTt2YXIgYz1hLkguUjtpZihjKXJldHVybiBKYShhLCJyZXR1cm4iaW4gYz9jWyJyZXR1cm4iXTpmdW5jdGlvbihkKXtyZXR1cm57dmFsdWU6ZCxkb25lOiEwfX0sYixhLkgucmV0dXJuKTthLkgucmV0dXJuKGIpO3JldHVybiBLYShhKX0sSmE9ZnVuY3Rpb24oYSxiLGMsZCl7dHJ5e3ZhciBlPWIuY2FsbChhLkguUixjKTtDYShlKTtpZighZS5kb25lKXJldHVybiBhLkguZmE9ITEsZTt2YXIgZj1lLnZhbHVlfWNhdGNoKGcpe3JldHVybiBhLkguUj1udWxsLEdhKGEuSCxnKSxLYShhKX1hLkguUj1udWxsO2QuY2FsbChhLkgsZik7cmV0dXJuIEthKGEpfSxLYT1mdW5jdGlvbihhKXtmb3IoO2EuSC5IOyl0cnl7dmFyIGI9YS5LKGEuSCk7aWYoYilyZXR1cm4gYS5ILmZhPSExLHt2YWx1ZTpiLnZhbHVlLGRvbmU6ITF9fWNhdGNoKGQpe2EuSC5qYT12b2lkIDAsR2EoYS5ILApkKX1hLkguZmE9ITE7aWYoYS5ILkspe3ZhciBjPWEuSC5LO2EuSC5LPW51bGw7aWYoYy5pc0V4Y2VwdGlvbil0aHJvdyBjLmFvO3JldHVybnt2YWx1ZTpjLnJldHVybixkb25lOiEwfX1yZXR1cm57dmFsdWU6dm9pZCAwLGRvbmU6ITB9fSxNYT1mdW5jdGlvbihhKXt0aGlzLm5leHQ9ZnVuY3Rpb24oYil7dmFyIGM7RWEoYS5IKTthLkguUj9jPUphKGEsYS5ILlIubmV4dCxiLGEuSC55YSk6KGEuSC55YShiKSxjPUthKGEpKTtyZXR1cm4gY307dGhpcy50aHJvdz1mdW5jdGlvbihiKXt2YXIgYztFYShhLkgpO2EuSC5SP2M9SmEoYSxhLkguUlsidGhyb3ciXSxiLGEuSC55YSk6KEdhKGEuSCxiKSxjPUthKGEpKTtyZXR1cm4gY307dGhpcy5yZXR1cm49ZnVuY3Rpb24oYil7cmV0dXJuIExhKGEsYil9O3RoaXNbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfX0sTmE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uZXcgTWEobmV3IElhKGIpKTt2YSYmYS5wcm90b3R5cGUmJnZhKGMsCmEucHJvdG90eXBlKTtyZXR1cm4gY30sT2E9ZnVuY3Rpb24oKXtmb3IodmFyIGE9TnVtYmVyKHRoaXMpLGI9W10sYz1hO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspYltjLWFdPWFyZ3VtZW50c1tjXTtyZXR1cm4gYn0sUWE9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9Oy8qCgogQ29weXJpZ2h0IFRoZSBDbG9zdXJlIExpYnJhcnkgQXV0aG9ycy4KIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wCiovCnZhciBSYT10aGlzfHxzZWxmLFNhPWZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gYygpe31jLnByb3RvdHlwZT1iLnByb3RvdHlwZTthLkZ0PWIucHJvdG90eXBlO2EucHJvdG90eXBlPW5ldyBjO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7YS5udj1mdW5jdGlvbihkLGUsZil7Zm9yKHZhciBnPUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMiksaD0yO2g8YXJndW1lbnRzLmxlbmd0aDtoKyspZ1toLTJdPWFyZ3VtZW50c1toXTtyZXR1cm4gYi5wcm90b3R5cGVbZV0uYXBwbHkoZCxnKX19O3ZhciBUYT1mdW5jdGlvbihhLGIpe3RoaXMudHlwZT1hO3RoaXMuZGF0YT1ifTt2YXIgVWE9ZnVuY3Rpb24oKXt0aGlzLm1hcD17fTt0aGlzLkg9e319O1VhLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubWFwWyJkdXN0LiIrYV19O1VhLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz0iZHVzdC4iK2E7dGhpcy5ILmhhc093blByb3BlcnR5KGMpfHwodGhpcy5tYXBbY109Yil9O1VhLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubWFwLmhhc093blByb3BlcnR5KCJkdXN0LiIrYSl9O1VhLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oYSl7dmFyIGI9ImR1c3QuIithO3RoaXMuSC5oYXNPd25Qcm9wZXJ0eShiKXx8ZGVsZXRlIHRoaXMubWFwW2JdfTsKdmFyIFZhPWZ1bmN0aW9uKGEsYil7dmFyIGM9W10sZDtmb3IoZCBpbiBhLm1hcClpZihhLm1hcC5oYXNPd25Qcm9wZXJ0eShkKSl7dmFyIGU9ZC5zdWJzdHJpbmcoNSk7c3dpdGNoKGIpe2Nhc2UgMTpjLnB1c2goZSk7YnJlYWs7Y2FzZSAyOmMucHVzaChhLm1hcFtkXSk7YnJlYWs7Y2FzZSAzOmMucHVzaChbZSxhLm1hcFtkXV0pfX1yZXR1cm4gY307VWEucHJvdG90eXBlLkZhPWZ1bmN0aW9uKCl7cmV0dXJuIFZhKHRoaXMsMSl9O1VhLnByb3RvdHlwZS5oYz1mdW5jdGlvbigpe3JldHVybiBWYSh0aGlzLDIpfTtVYS5wcm90b3R5cGUuZmM9ZnVuY3Rpb24oKXtyZXR1cm4gVmEodGhpcywzKX07dmFyIFdhPWZ1bmN0aW9uKCl7fTtXYS5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt9O3ZhciBYYT1mdW5jdGlvbigpe3RoaXMudmFsdWU9e307dGhpcy5wcmVmaXg9Imd0bS4ifTtrPVhhLnByb3RvdHlwZTtrLnNldD1mdW5jdGlvbihhLGIpe3RoaXMudmFsdWVbdGhpcy5wcmVmaXgrU3RyaW5nKGEpXT1ifTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZVt0aGlzLnByZWZpeCtTdHJpbmcoYSldfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZS5oYXNPd25Qcm9wZXJ0eSh0aGlzLnByZWZpeCtTdHJpbmcoYSkpfTtrLmRlbGV0ZT1mdW5jdGlvbihhKXt2YXIgYj10aGlzLnByZWZpeCtTdHJpbmcoYSk7cmV0dXJuIHRoaXMudmFsdWUuaGFzT3duUHJvcGVydHkoYik/KGRlbGV0ZSB0aGlzLnZhbHVlW2JdLCEwKTohMX07ay5jbGVhcj1mdW5jdGlvbigpe3RoaXMudmFsdWU9e319OwprLnZhbHVlcz1mdW5jdGlvbigpe3ZhciBhPXRoaXM7cmV0dXJuIGZ1bmN0aW9uIGMoKXt2YXIgZCxlLGY7cmV0dXJuIE5hKGMsZnVuY3Rpb24oZyl7c3dpdGNoKGcuSCl7Y2FzZSAxOmcudmcoMiksZT1nLmZlKGEudmFsdWUpO2Nhc2UgNDppZigoZD1lLmhvKCkpPT1udWxsKXtnLm5kKDIpO2JyZWFrfWlmKCFhLnZhbHVlLmhhc093blByb3BlcnR5KGQpKXtnLm5kKDQpO2JyZWFrfWY9UWE7cmV0dXJuIGcuYWMoYS52YWx1ZVtkXSw4KTtjYXNlIDg6ZihnLmphKTtnLm5kKDQpO2JyZWFrO2Nhc2UgMjpnLmtkKCksZy5oZSgwKX19KX0oKX07aGEuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoWGEucHJvdG90eXBlLHtzaXplOntjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmtleXModGhpcy52YWx1ZSkubGVuZ3RofX19KTsKZnVuY3Rpb24gWWEoKXt0cnl7aWYoTWFwKXJldHVybiBuZXcgTWFwfWNhdGNoKGEpe31yZXR1cm4gbmV3IFhhfTt2YXIgWmE9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlcz1bXX07WmEucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhKXt0aGlzLnZhbHVlcy5pbmRleE9mKGEpPT09LTEmJnRoaXMudmFsdWVzLnB1c2goYSl9O1phLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVzLmluZGV4T2YoYSk+LTF9O3ZhciAkYT1mdW5jdGlvbihhLGIpe3RoaXMuZmE9YTt0aGlzLnBhcmVudD1iO3RoaXMuUj10aGlzLks9dm9pZCAwO3RoaXMuSGI9ITE7dGhpcy5OPWZ1bmN0aW9uKGQsZSxmKXtyZXR1cm4gZC5hcHBseShlLGYpfTt0aGlzLkg9WWEoKTt2YXIgYzthOnt0cnl7aWYoU2V0KXtjPW5ldyBTZXQ7YnJlYWsgYX19Y2F0Y2goZCl7fWM9bmV3IFphfXRoaXMuWj1jfTskYS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7YWIodGhpcyxhLGIsITEpfTskYS5wcm90b3R5cGUuUWg9ZnVuY3Rpb24oYSxiKXthYih0aGlzLGEsYiwhMCl9O3ZhciBhYj1mdW5jdGlvbihhLGIsYyxkKXthLkhifHxhLlouaGFzKGIpfHwoZCYmYS5aLmFkZChiKSxhLkguc2V0KGIsYykpfTtrPSRhLnByb3RvdHlwZTsKay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLkhifHwoIXRoaXMuSC5oYXMoYSkmJnRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5oYXMoYSk/dGhpcy5wYXJlbnQuc2V0KGEsYik6dGhpcy5aLmhhcyhhKXx8dGhpcy5ILnNldChhLGIpKX07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuSC5oYXMoYSk/dGhpcy5ILmdldChhKTp0aGlzLnBhcmVudD90aGlzLnBhcmVudC5nZXQoYSk6dm9pZCAwfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4hIXRoaXMuSC5oYXMoYSl8fCEoIXRoaXMucGFyZW50fHwhdGhpcy5wYXJlbnQuaGFzKGEpKX07ay53Yj1mdW5jdGlvbigpe3ZhciBhPW5ldyAkYSh0aGlzLmZhLHRoaXMpO3RoaXMuSyYmYS5RYih0aGlzLkspO2Euc2QodGhpcy5OKTthLnVlKHRoaXMuUik7cmV0dXJuIGF9O2suamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5mYX07ay5RYj1mdW5jdGlvbihhKXt0aGlzLks9YX07ay5mbz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkt9OwprLnNkPWZ1bmN0aW9uKGEpe3RoaXMuTj1hfTtrLlBqPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTn07ay5aYT1mdW5jdGlvbigpe3RoaXMuSGI9ITB9O2sudWU9ZnVuY3Rpb24oYSl7dGhpcy5SPWF9O2sueGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5SfTt2YXIgYmI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2Q9RXJyb3IuY2FsbCh0aGlzLGEubWVzc2FnZSk7dGhpcy5tZXNzYWdlPWQubWVzc2FnZTsic3RhY2siaW4gZCYmKHRoaXMuc3RhY2s9ZC5zdGFjayk7dGhpcy52bz1hO3RoaXMuU249Yz09PXZvaWQgMD8hMTpjO3RoaXMuSz1bXTt0aGlzLkg9Yn07d2EoYmIsRXJyb3IpO3ZhciBjYj1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIGJiP2E6bmV3IGJiKGEsdm9pZCAwLCEwKX07dmFyIGRiPVlhKCk7ZnVuY3Rpb24gZWIoYSxiKXtmb3IodmFyIGMsZD1tKGIpLGU9ZC5uZXh0KCk7IWUuZG9uZSYmIShjPWZiKGEsZS52YWx1ZSksYyBpbnN0YW5jZW9mIFRhKTtlPWQubmV4dCgpKTtyZXR1cm4gY31mdW5jdGlvbiBmYihhLGIpe3RyeXt2YXIgYz1iWzBdLGQ9Yi5zbGljZSgxKSxlPVN0cmluZyhjKSxmPWRiLmhhcyhlKT9kYi5nZXQoZSk6YS5nZXQoZSk7aWYoIWZ8fHR5cGVvZiBmLmludm9rZSE9PSJmdW5jdGlvbiIpdGhyb3cgY2IoRXJyb3IoIkF0dGVtcHRpbmcgdG8gZXhlY3V0ZSBub24tZnVuY3Rpb24gIitiWzBdKyIuIikpO3JldHVybiBmLmFwcGx5KGEsZCl9Y2F0Y2goaCl7dmFyIGc9YS5mbygpO2cmJmcoaCxiLmNvbnRleHQ/e2lkOmJbMF0sbGluZTpiLmNvbnRleHQubGluZX06bnVsbCk7dGhyb3cgaDt9fTt2YXIgZ2I9ZnVuY3Rpb24oKXt0aGlzLks9bmV3IFdhO3RoaXMuSD1uZXcgJGEodGhpcy5LKX07az1nYi5wcm90b3R5cGU7ay5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkt9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5ILlFiKGEpfTtrLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSC5zZChhKX07ay5leGVjdXRlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnJrKFthXS5jb25jYXQodyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKSl9O2sucms9ZnVuY3Rpb24oKXtmb3IodmFyIGEsYj1tKE9hLmFwcGx5KDAsYXJndW1lbnRzKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYT1mYih0aGlzLkgsYy52YWx1ZSk7cmV0dXJuIGF9O2suSnE9ZnVuY3Rpb24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpLGM9dGhpcy5ILndiKCk7Yy51ZShhKTtmb3IodmFyIGQsZT1tKGIpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKWQ9ZmIoYyxmLnZhbHVlKTtyZXR1cm4gZH07ay5aYT1mdW5jdGlvbigpe3RoaXMuSC5aYSgpfTt2YXIgaGI9ZnVuY3Rpb24oYSxiKXt0aGlzLlI9YTt0aGlzLnBhcmVudD1iO3RoaXMuTj10aGlzLkg9dm9pZCAwO3RoaXMuSGI9ITE7dGhpcy5LPWZ1bmN0aW9uKGMsZCxlKXtyZXR1cm4gYy5hcHBseShkLGUpfTt0aGlzLnZhbHVlcz1uZXcgVWF9O2hiLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSxiKXtqYih0aGlzLGEsYiwhMSl9O2hiLnByb3RvdHlwZS5RaD1mdW5jdGlvbihhLGIpe2piKHRoaXMsYSxiLCEwKX07dmFyIGpiPWZ1bmN0aW9uKGEsYixjLGQpe2lmKCFhLkhiKWlmKGQpe3ZhciBlPWEudmFsdWVzO2Uuc2V0KGIsYyk7ZS5IWyJkdXN0LiIrYl09ITB9ZWxzZSBhLnZhbHVlcy5zZXQoYixjKX07az1oYi5wcm90b3R5cGU7ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLkhifHwoIXRoaXMudmFsdWVzLmhhcyhhKSYmdGhpcy5wYXJlbnQmJnRoaXMucGFyZW50LmhhcyhhKT90aGlzLnBhcmVudC5zZXQoYSxiKTp0aGlzLnZhbHVlcy5zZXQoYSxiKSl9OwprLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXMuaGFzKGEpP3RoaXMudmFsdWVzLmdldChhKTp0aGlzLnBhcmVudD90aGlzLnBhcmVudC5nZXQoYSk6dm9pZCAwfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4hIXRoaXMudmFsdWVzLmhhcyhhKXx8ISghdGhpcy5wYXJlbnR8fCF0aGlzLnBhcmVudC5oYXMoYSkpfTtrLndiPWZ1bmN0aW9uKCl7dmFyIGE9bmV3IGhiKHRoaXMuUix0aGlzKTt0aGlzLkgmJmEuUWIodGhpcy5IKTthLnNkKHRoaXMuSyk7YS51ZSh0aGlzLk4pO3JldHVybiBhfTtrLmplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUn07ay5RYj1mdW5jdGlvbihhKXt0aGlzLkg9YX07ay5mbz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O2suc2Q9ZnVuY3Rpb24oYSl7dGhpcy5LPWF9O2suUGo9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTtrLlphPWZ1bmN0aW9uKCl7dGhpcy5IYj0hMH07ay51ZT1mdW5jdGlvbihhKXt0aGlzLk49YX07ay54Yj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk59O3ZhciBrYj1mdW5jdGlvbigpe3RoaXMuTmE9ITE7dGhpcy5sYT1uZXcgVWF9O2s9a2IucHJvdG90eXBlO2suZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmdldChhKX07ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLk5hfHx0aGlzLmxhLnNldChhLGIpfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5oYXMoYSl9O2sucmVtb3ZlPWZ1bmN0aW9uKGEpe3RoaXMuTmF8fHRoaXMubGEucmVtb3ZlKGEpfTtrLkZhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuRmEoKX07ay5oYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmhjKCl9O2suZmM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5mYygpfTtrLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07ay5IYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk5hfTtmdW5jdGlvbiBsYigpe2Zvcih2YXIgYT1tYixiPXt9LGM9MDtjPGEubGVuZ3RoOysrYyliW2FbY11dPWM7cmV0dXJuIGJ9ZnVuY3Rpb24gbmIoKXt2YXIgYT0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiO2ErPWEudG9Mb3dlckNhc2UoKSsiMDEyMzQ1Njc4OS1fIjtyZXR1cm4gYSsiLiJ9dmFyIG1iLG9iO2Z1bmN0aW9uIHBiKGEpe21iPW1ifHxuYigpO29iPW9ifHxsYigpO2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKz0zKXt2YXIgZD1jKzE8YS5sZW5ndGgsZT1jKzI8YS5sZW5ndGgsZj1hLmNoYXJDb2RlQXQoYyksZz1kP2EuY2hhckNvZGVBdChjKzEpOjAsaD1lP2EuY2hhckNvZGVBdChjKzIpOjAsbD1mPj4yLG49KGYmMyk8PDR8Zz4+NCxwPShnJjE1KTw8MnxoPj42LHE9aCY2MztlfHwocT02NCxkfHwocD02NCkpO2IucHVzaChtYltsXSxtYltuXSxtYltwXSxtYltxXSl9cmV0dXJuIGIuam9pbigiIil9CmZ1bmN0aW9uIHFiKGEpe2Z1bmN0aW9uIGIobCl7Zm9yKDtkPGEubGVuZ3RoOyl7dmFyIG49YS5jaGFyQXQoZCsrKSxwPW9iW25dO2lmKHAhPW51bGwpcmV0dXJuIHA7aWYoIS9eW1xzXHhhMF0qJC8udGVzdChuKSl0aHJvdyBFcnJvcigiVW5rbm93biBiYXNlNjQgZW5jb2RpbmcgYXQgY2hhcjogIituKTt9cmV0dXJuIGx9bWI9bWJ8fG5iKCk7b2I9b2J8fGxiKCk7Zm9yKHZhciBjPSIiLGQ9MDs7KXt2YXIgZT1iKC0xKSxmPWIoMCksZz1iKDY0KSxoPWIoNjQpO2lmKGg9PT02NCYmZT09PS0xKXJldHVybiBjO2MrPVN0cmluZy5mcm9tQ2hhckNvZGUoZTw8MnxmPj40KTtnIT09NjQmJihjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGY8PDQmMjQwfGc+PjIpLGghPT02NCYmKGMrPVN0cmluZy5mcm9tQ2hhckNvZGUoZzw8NiYxOTJ8aCkpKX19O3ZhciByYj17fTtmdW5jdGlvbiBzYihhLGIpe3ZhciBjPXJiW2FdO2N8fChjPXJiW2FdPVtdKTtjW2JdPSEwfWZ1bmN0aW9uIHRiKCl7ZGVsZXRlIHJiLkdBNF9FVkVOVH1mdW5jdGlvbiB1Yigpe3ZhciBhPXZiLkguc2xpY2UoKTtyYi5HVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTD1hfWZ1bmN0aW9uIHdiKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKWQlOD09PTAmJmQ+MCYmKGIucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGMpKSxjPTApLGFbZF0mJihjfD0xPDxkJTgpO2M+MCYmYi5wdXNoKFN0cmluZy5mcm9tQ2hhckNvZGUoYykpO3JldHVybiBwYihiLmpvaW4oIiIpKS5yZXBsYWNlKC9cLiskLywiIil9O2Z1bmN0aW9uIHhiKCl7fWZ1bmN0aW9uIHliKGEpe3JldHVybiB0eXBlb2YgYT09PSJmdW5jdGlvbiJ9ZnVuY3Rpb24gemIoYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyJ9ZnVuY3Rpb24gQWIoYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciImJiFpc05hTihhKX1mdW5jdGlvbiBCYihhKXtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hOlthXX1mdW5jdGlvbiBDYihhLGIpe2lmKGEmJkFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoYVtjXSYmYihhW2NdKSlyZXR1cm4gYVtjXX1mdW5jdGlvbiBEYihhLGIpe2lmKCFBYihhKXx8IUFiKGIpfHxhPmIpYT0wLGI9MjE0NzQ4MzY0NztyZXR1cm4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKihiLWErMSkrYSl9CmZ1bmN0aW9uIEViKGEsYil7Zm9yKHZhciBjPW5ldyBGYixkPTA7ZDxhLmxlbmd0aDtkKyspYy5zZXQoYVtkXSwhMCk7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDtlKyspaWYoYy5nZXQoYltlXSkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gR2IoYSxiKXtmb3IodmFyIGMgaW4gYSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxjKSYmYihjLGFbY10pfWZ1bmN0aW9uIEhiKGEpe3JldHVybiEhYSYmKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChhKT09PSJbb2JqZWN0IEFyZ3VtZW50c10ifHxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSwiY2FsbGVlIikpfWZ1bmN0aW9uIEliKGEpe3JldHVybiBNYXRoLnJvdW5kKE51bWJlcihhKSl8fDB9ZnVuY3Rpb24gSmIoYSl7cmV0dXJuImZhbHNlIj09PVN0cmluZyhhKS50b0xvd2VyQ2FzZSgpPyExOiEhYX0KZnVuY3Rpb24gS2IoYSl7dmFyIGI9W107aWYoQXJyYXkuaXNBcnJheShhKSlmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKyliLnB1c2goU3RyaW5nKGFbY10pKTtyZXR1cm4gYn1mdW5jdGlvbiBMYihhKXtyZXR1cm4gYT9hLnJlcGxhY2UoL15ccyt8XHMrJC9nLCIiKToiIn1mdW5jdGlvbiBNYigpe3JldHVybiBuZXcgRGF0ZShEYXRlLm5vdygpKX1mdW5jdGlvbiBOYigpe3JldHVybiBNYigpLmdldFRpbWUoKX12YXIgRmI9ZnVuY3Rpb24oKXt0aGlzLnByZWZpeD0iZ3RtLiI7dGhpcy52YWx1ZXM9e319O0ZiLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLnZhbHVlc1t0aGlzLnByZWZpeCthXT1ifTtGYi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnZhbHVlc1t0aGlzLnByZWZpeCthXX07RmIucHJvdG90eXBlLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmdldChhKSE9PXZvaWQgMH07CmZ1bmN0aW9uIE9iKGEsYixjKXtyZXR1cm4gYSYmYS5oYXNPd25Qcm9wZXJ0eShiKT9hW2JdOmN9ZnVuY3Rpb24gUGIoYSl7dmFyIGI9YTtyZXR1cm4gZnVuY3Rpb24oKXtpZihiKXt2YXIgYz1iO2I9dm9pZCAwO3RyeXtjKCl9Y2F0Y2goZCl7fX19fWZ1bmN0aW9uIFFiKGEsYil7Zm9yKHZhciBjIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShjKSYmKGFbY109YltjXSl9ZnVuY3Rpb24gUmIoYSxiKXtmb3IodmFyIGM9W10sZD0wO2Q8YS5sZW5ndGg7ZCsrKWMucHVzaChhW2RdKSxjLnB1c2guYXBwbHkoYyxiW2FbZF1dfHxbXSk7cmV0dXJuIGN9ZnVuY3Rpb24gU2IoYSxiKXtyZXR1cm4gYS5sZW5ndGg+PWIubGVuZ3RoJiZhLnN1YnN0cmluZygwLGIubGVuZ3RoKT09PWJ9ZnVuY3Rpb24gVGIoYSxiKXtyZXR1cm4gYS5sZW5ndGg+PWIubGVuZ3RoJiZhLnN1YnN0cmluZyhhLmxlbmd0aC1iLmxlbmd0aCxhLmxlbmd0aCk9PT1ifQpmdW5jdGlvbiBVYihhLGIsYyl7Yz1jfHxbXTtmb3IodmFyIGQ9YSxlPTA7ZTxiLmxlbmd0aC0xO2UrKyl7aWYoIWQuaGFzT3duUHJvcGVydHkoYltlXSkpcmV0dXJuO2Q9ZFtiW2VdXTtpZihjLmluZGV4T2YoZCk+PTApcmV0dXJufXJldHVybiBkfWZ1bmN0aW9uIFZiKGEsYil7Zm9yKHZhciBjPXt9LGQ9YyxlPWEuc3BsaXQoIi4iKSxmPTA7ZjxlLmxlbmd0aC0xO2YrKylkPWRbZVtmXV09e307ZFtlW2UubGVuZ3RoLTFdXT1iO3JldHVybiBjfXZhciBXYj0vXlx3ezEsOX0kLztmdW5jdGlvbiBZYihhLGIpe2E9YXx8e307Yj1ifHwiLCI7dmFyIGM9W107R2IoYSxmdW5jdGlvbihkLGUpe1diLnRlc3QoZCkmJmUmJmMucHVzaChkKX0pO3JldHVybiBjLmpvaW4oYil9CmZ1bmN0aW9uIFpiKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWEuY2hhckNvZGVBdChjKTtkPDEyOD9iLnB1c2goZCk6ZDwyMDQ4P2IucHVzaCgxOTJ8ZD4+NiwxMjh8ZCY2Myk6ZDw1NTI5Nnx8ZD49NTczNDQ/Yi5wdXNoKDIyNHxkPj4xMiwxMjh8ZD4+NiY2MywxMjh8ZCY2Myk6KGQ9NjU1MzYrKChkJjEwMjMpPDwxMHxhLmNoYXJDb2RlQXQoKytjKSYxMDIzKSxiLnB1c2goMjQwfGQ+PjE4LDEyOHxkPj4xMiY2MywxMjh8ZD4+NiY2MywxMjh8ZCY2MykpfXJldHVybiBuZXcgVWludDhBcnJheShiKX1mdW5jdGlvbiAkYihhKXtpZighYSlyZXR1cm4gYTt2YXIgYj1hO3RyeXtiPWRlY29kZVVSSUNvbXBvbmVudChhKX1jYXRjaChkKXt9dmFyIGM9Yi5zcGxpdCgiLCIpO3JldHVybiBjLmxlbmd0aD09PTImJmNbMF09PT1jWzFdP2NbMF06YX0KZnVuY3Rpb24gYWMoYSxiLGMpe2Z1bmN0aW9uIGQobil7dmFyIHA9bi5zcGxpdCgiPSIpWzBdO2lmKGEuaW5kZXhPZihwKTwwKXJldHVybiBuO2lmKGMhPT12b2lkIDApcmV0dXJuIHArIj0iK2N9ZnVuY3Rpb24gZShuKXtyZXR1cm4gbi5zcGxpdCgiJiIpLm1hcChkKS5maWx0ZXIoZnVuY3Rpb24ocCl7cmV0dXJuIHAhPT12b2lkIDB9KS5qb2luKCImIil9dmFyIGY9Yi5ocmVmLnNwbGl0KC9bPyNdLylbMF0sZz1iLnNlYXJjaCxoPWIuaGFzaDtnWzBdPT09Ij8iJiYoZz1nLnN1YnN0cmluZygxKSk7aFswXT09PSIjIiYmKGg9aC5zdWJzdHJpbmcoMSkpO2c9ZShnKTtoPWUoaCk7ZyE9PSIiJiYoZz0iPyIrZyk7aCE9PSIiJiYoaD0iIyIraCk7dmFyIGw9IiIrZitnK2g7bFtsLmxlbmd0aC0xXT09PSIvIiYmKGw9bC5zdWJzdHJpbmcoMCxsLmxlbmd0aC0xKSk7cmV0dXJuIGx9CmZ1bmN0aW9uIGJjKGEpe2Zvcih2YXIgYj0wO2I8MzsrK2IpdHJ5e3ZhciBjPWRlY29kZVVSSUNvbXBvbmVudChhKS5yZXBsYWNlKC9cKy9nLCIgIik7aWYoYz09PWEpYnJlYWs7YT1jfWNhdGNoKGQpe3JldHVybiIifXJldHVybiBhfWZ1bmN0aW9uIGNjKCl7dmFyIGE9QSxiO2E6e3ZhciBjPWEuY3J5cHRvfHxhLm1zQ3J5cHRvO2lmKGMmJmMuZ2V0UmFuZG9tVmFsdWVzKXRyeXt2YXIgZD1uZXcgVWludDhBcnJheSgyNSk7Yy5nZXRSYW5kb21WYWx1ZXMoZCk7Yj1idG9hKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoU3RyaW5nLHcoZCkpKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0rJC8sIiIpO2JyZWFrIGF9Y2F0Y2goZSl7fWI9dm9pZCAwfXJldHVybiBifTsvKgoKIENvcHlyaWdodCBHb29nbGUgTExDCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgZGM9Z2xvYmFsVGhpcy50cnVzdGVkVHlwZXMsZWM7ZnVuY3Rpb24gZmMoKXt2YXIgYT1udWxsO2lmKCFkYylyZXR1cm4gYTt0cnl7dmFyIGI9ZnVuY3Rpb24oYyl7cmV0dXJuIGN9O2E9ZGMuY3JlYXRlUG9saWN5KCJnb29nI2h0bWwiLHtjcmVhdGVIVE1MOmIsY3JlYXRlU2NyaXB0OmIsY3JlYXRlU2NyaXB0VVJMOmJ9KX1jYXRjaChjKXt9cmV0dXJuIGF9ZnVuY3Rpb24gaGMoKXtlYz09PXZvaWQgMCYmKGVjPWZjKCkpO3JldHVybiBlY307dmFyIGljPWZ1bmN0aW9uKGEpe3RoaXMuSD1hfTtpYy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IKyIifTtmdW5jdGlvbiBqYyhhKXt2YXIgYj1hLGM9aGMoKSxkPWM/Yy5jcmVhdGVTY3JpcHRVUkwoYik6YjtyZXR1cm4gbmV3IGljKGQpfWZ1bmN0aW9uIGtjKGEpe2lmKGEgaW5zdGFuY2VvZiBpYylyZXR1cm4gYS5IO3Rocm93IEVycm9yKCIiKTt9O3ZhciBsYz1BYShbIiJdKSxtYz16YShbIlx4MDAiXSxbIlxcMCJdKSxuYz16YShbIlxuIl0sWyJcXG4iXSksb2M9emEoWyJceDAwIl0sWyJcXHUwMDAwIl0pO2Z1bmN0aW9uIHBjKGEpe3JldHVybiBhLnRvU3RyaW5nKCkuaW5kZXhPZigiYCIpPT09LTF9cGMoZnVuY3Rpb24oYSl7cmV0dXJuIGEobGMpfSl8fHBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKG1jKX0pfHxwYyhmdW5jdGlvbihhKXtyZXR1cm4gYShuYyl9KXx8cGMoZnVuY3Rpb24oYSl7cmV0dXJuIGEob2MpfSk7dmFyIHFjPWZ1bmN0aW9uKGEpe3RoaXMuSD1hfTtxYy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IfTt2YXIgcmM9ZnVuY3Rpb24oYSl7dGhpcy5Kcz1hfTtmdW5jdGlvbiBzYyhhKXtyZXR1cm4gbmV3IHJjKGZ1bmN0aW9uKGIpe3JldHVybiBiLnN1YnN0cigwLGEubGVuZ3RoKzEpLnRvTG93ZXJDYXNlKCk9PT1hKyI6In0pfXZhciB0Yz1bc2MoImRhdGEiKSxzYygiaHR0cCIpLHNjKCJodHRwcyIpLHNjKCJtYWlsdG8iKSxzYygiZnRwIiksbmV3IHJjKGZ1bmN0aW9uKGEpe3JldHVybi9eW146XSooWy8/I118JCkvLnRlc3QoYSl9KV07ZnVuY3Rpb24gdWMoYSl7dmFyIGI7Yj1iPT09dm9pZCAwP3RjOmI7aWYoYSBpbnN0YW5jZW9mIHFjKXJldHVybiBhO2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7KytjKXt2YXIgZD1iW2NdO2lmKGQgaW5zdGFuY2VvZiByYyYmZC5KcyhhKSlyZXR1cm4gbmV3IHFjKGEpfX12YXIgdmM9L15ccyooPyFqYXZhc2NyaXB0OikoPzpbXHcrLi1dKzp8W146Lz8jXSooPzpbLz8jXXwkKSkvaTsKZnVuY3Rpb24gd2MoYSl7dmFyIGI7aWYoYSBpbnN0YW5jZW9mIHFjKWlmKGEgaW5zdGFuY2VvZiBxYyliPWEuSDtlbHNlIHRocm93IEVycm9yKCIiKTtlbHNlIGI9dmMudGVzdChhKT9hOnZvaWQgMDtyZXR1cm4gYn07ZnVuY3Rpb24geGMoYSxiKXt2YXIgYz13YyhiKTtjIT09dm9pZCAwJiYoYS5hY3Rpb249Yyl9O2Z1bmN0aW9uIHljKGEsYil7dGhyb3cgRXJyb3IoYj09PXZvaWQgMD8idW5leHBlY3RlZCB2YWx1ZSAiK2ErIiEiOmIpO307dmFyIHpjPWZ1bmN0aW9uKGEpe3RoaXMuSD1hfTt6Yy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IKyIifTt2YXIgQmM9ZnVuY3Rpb24oKXt0aGlzLkg9QWNbMF0udG9Mb3dlckNhc2UoKX07QmMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH07ZnVuY3Rpb24gQ2MoYSxiKXt2YXIgYz1bbmV3IEJjXTtpZihjLmxlbmd0aD09PTApdGhyb3cgRXJyb3IoIiIpO3ZhciBkPWMubWFwKGZ1bmN0aW9uKGYpe3ZhciBnO2lmKGYgaW5zdGFuY2VvZiBCYylnPWYuSDtlbHNlIHRocm93IEVycm9yKCIiKTtyZXR1cm4gZ30pLGU9Yi50b0xvd2VyQ2FzZSgpO2lmKGQuZXZlcnkoZnVuY3Rpb24oZil7cmV0dXJuIGUuaW5kZXhPZihmKSE9PTB9KSl0aHJvdyBFcnJvcignQXR0cmlidXRlICInK2IrJyIgZG9lcyBub3QgbWF0Y2ggYW55IG9mIHRoZSBhbGxvd2VkIHByZWZpeGVzLicpO2Euc2V0QXR0cmlidXRlKGIsInRydWUiKX07dmFyIERjPUFycmF5LnByb3RvdHlwZS5pbmRleE9mP2Z1bmN0aW9uKGEsYil7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwoYSxiLHZvaWQgMCl9OmZ1bmN0aW9uKGEsYil7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilyZXR1cm4gdHlwZW9mIGIhPT0ic3RyaW5nInx8Yi5sZW5ndGghPTE/LTE6YS5pbmRleE9mKGIsMCk7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoYyBpbiBhJiZhW2NdPT09YilyZXR1cm4gYztyZXR1cm4tMX07IkFSVElDTEUgU0VDVElPTiBOQVYgQVNJREUgSDEgSDIgSDMgSDQgSDUgSDYgSEVBREVSIEZPT1RFUiBBRERSRVNTIFAgSFIgUFJFIEJMT0NLUVVPVEUgT0wgVUwgTEggTEkgREwgRFQgREQgRklHVVJFIEZJR0NBUFRJT04gTUFJTiBESVYgRU0gU1RST05HIFNNQUxMIFMgQ0lURSBRIERGTiBBQkJSIFJVQlkgUkIgUlQgUlRDIFJQIERBVEEgVElNRSBDT0RFIFZBUiBTQU1QIEtCRCBTVUIgU1VQIEkgQiBVIE1BUksgQkRJIEJETyBTUEFOIEJSIFdCUiBOT0JSIElOUyBERUwgUElDVFVSRSBQQVJBTSBUUkFDSyBNQVAgVEFCTEUgQ0FQVElPTiBDT0xHUk9VUCBDT0wgVEJPRFkgVEhFQUQgVEZPT1QgVFIgVEQgVEggU0VMRUNUIERBVEFMSVNUIE9QVEdST1VQIE9QVElPTiBPVVRQVVQgUFJPR1JFU1MgTUVURVIgRklFTERTRVQgTEVHRU5EIERFVEFJTFMgU1VNTUFSWSBNRU5VIERJQUxPRyBTTE9UIENBTlZBUyBGT05UIENFTlRFUiBBQ1JPTllNIEJBU0VGT05UIEJJRyBESVIgSEdST1VQIFNUUklLRSBUVCIuc3BsaXQoIiAiKS5jb25jYXQoWyJCVVRUT04iLAoiSU5QVVQiXSk7ZnVuY3Rpb24gRWMoYSl7cmV0dXJuIGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmF9O3ZhciBBPXdpbmRvdyxGYz1bXSxHYz13aW5kb3cuaGlzdG9yeSxCPWRvY3VtZW50LEhjPW5hdmlnYXRvcjtmdW5jdGlvbiBJYygpe3ZhciBhO3RyeXthPUhjLnNlcnZpY2VXb3JrZXJ9Y2F0Y2goYil7cmV0dXJufXJldHVybiBhfXZhciBKYz1CLmN1cnJlbnRTY3JpcHQsS2M9SmMmJkpjLnNyYztmdW5jdGlvbiBNYyhhLGIpe3ZhciBjPUEsZD1jW2FdO2NbYV09ZD09PXZvaWQgMD9iOmQ7cmV0dXJuIGNbYV19ZnVuY3Rpb24gTmMoYSl7cmV0dXJuKEhjLnVzZXJBZ2VudHx8IiIpLmluZGV4T2YoYSkhPT0tMX1mdW5jdGlvbiBPYygpe3JldHVybiBOYygiRmlyZWZveCIpfHxOYygiRnhpT1MiKX1mdW5jdGlvbiBQYygpe3JldHVybihOYygiR1NBIil8fE5jKCJHb29nbGVBcHAiKSkmJihOYygiaVBob25lIil8fE5jKCJpUGFkIikpfWZ1bmN0aW9uIFFjKCl7cmV0dXJuIE5jKCJFZGcvIil8fE5jKCJFZGdBLyIpfHxOYygiRWRnaU9TLyIpfQp2YXIgUmM9e2FzeW5jOjEsbm9uY2U6MSxvbmVycm9yOjEsb25sb2FkOjEsc3JjOjEsdHlwZToxfSxTYz17aGVpZ2h0OjEsb25sb2FkOjEsc3JjOjEsc3R5bGU6MSx3aWR0aDoxfTtmdW5jdGlvbiBUYyhhLGIsYyl7YiYmR2IoYixmdW5jdGlvbihkLGUpe2Q9ZC50b0xvd2VyQ2FzZSgpO2MuaGFzT3duUHJvcGVydHkoZCl8fGEuc2V0QXR0cmlidXRlKGQsZSl9KX0KZnVuY3Rpb24gVWMoYSxiLGMsZCxlKXt2YXIgZj1CLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO1RjKGYsZCxSYyk7Zi50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiO2YuYXN5bmM9ZCYmZC5hc3luYz09PSExPyExOiEwO3ZhciBnO2c9amMoRWMoYSkpO2Yuc3JjPWtjKGcpO3ZhciBoLGw9Zi5vd25lckRvY3VtZW50O2w9bD09PXZvaWQgMD9kb2N1bWVudDpsO3ZhciBuLHAscT0ocD0obj1sKS5xdWVyeVNlbGVjdG9yKT09bnVsbD92b2lkIDA6cC5jYWxsKG4sInNjcmlwdFtub25jZV0iKTsoaD1xPT1udWxsPyIiOnEubm9uY2V8fHEuZ2V0QXR0cmlidXRlKCJub25jZSIpfHwiIikmJmYuc2V0QXR0cmlidXRlKCJub25jZSIsaCk7YiYmKGYub25sb2FkPWIpO2MmJihmLm9uZXJyb3I9Yyk7ZT9lLmFwcGVuZENoaWxkKGYpOlZjLkJzKGYpO3JldHVybiBmfQpmdW5jdGlvbiBXYygpe2lmKEtjKXt2YXIgYT1LYy50b0xvd2VyQ2FzZSgpO2lmKGEuaW5kZXhPZigiaHR0cHM6Ly8iKT09PTApcmV0dXJuIDI7aWYoYS5pbmRleE9mKCJodHRwOi8vIik9PT0wKXJldHVybiAzfXJldHVybiAxfWZ1bmN0aW9uIFhjKGEsYixjLGQsZSxmKXtmPWY9PT12b2lkIDA/ITA6Zjt2YXIgZz1lLGg9ITE7Z3x8KGc9Qi5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKSxoPSEwKTtUYyhnLGMsU2MpO2QmJkdiKGQsZnVuY3Rpb24obixwKXtnLmRhdGFzZXRbbl09cH0pO2YmJihnLmhlaWdodD0iMCIsZy53aWR0aD0iMCIsZy5zdHlsZS5kaXNwbGF5PSJub25lIixnLnN0eWxlLnZpc2liaWxpdHk9ImhpZGRlbiIpO2EhPT12b2lkIDAmJihnLnNyYz1hKTtpZihoKXt2YXIgbD1CLmJvZHkmJkIuYm9keS5sYXN0Q2hpbGR8fEIuYm9keXx8Qi5oZWFkO2wucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZyxsKX1iJiYoZy5vbmxvYWQ9Yik7cmV0dXJuIGd9CmZ1bmN0aW9uIFpjKCl7cmV0dXJuIFZjLkVyLmFwcGx5KFZjLHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSl9ZnVuY3Rpb24gJGMoYSxiLGMsZCl7YS5hZGRFdmVudExpc3RlbmVyJiZhLmFkZEV2ZW50TGlzdGVuZXIoYixjLCEhZCl9ZnVuY3Rpb24gYWQoYSxiLGMpe2EucmVtb3ZlRXZlbnRMaXN0ZW5lciYmYS5yZW1vdmVFdmVudExpc3RlbmVyKGIsYywhMSl9ZnVuY3Rpb24gYmQoYSl7QS5zZXRUaW1lb3V0KGEsMCl9ZnVuY3Rpb24gY2QoYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyksZCxlPShkPUEpLnNldEludGVydmFsLmFwcGx5KGQsW2EsYl0uY29uY2F0KHcoYykpKTtGYy5wdXNoKGUpO3JldHVybiBlfQpmdW5jdGlvbiBkZChhKXt2YXIgYj1BO3liKGIucXVldWVNaWNyb3Rhc2spP2IucXVldWVNaWNyb3Rhc2soYSk6eWIoYi5Qcm9taXNlKSYmYi5Qcm9taXNlLnJlc29sdmU/Yi5Qcm9taXNlLnJlc29sdmUoKS50aGVuKGZ1bmN0aW9uKCl7YSgpfSkuY2F0Y2goZnVuY3Rpb24oKXt9KTpiZChhKX1mdW5jdGlvbiBlZChhLGIpe3JldHVybiBhJiZiJiZhLmF0dHJpYnV0ZXMmJmEuYXR0cmlidXRlc1tiXT9hLmF0dHJpYnV0ZXNbYl0udmFsdWU6bnVsbH1mdW5jdGlvbiBmZChhKXt2YXIgYj1hLmlubmVyVGV4dHx8YS50ZXh0Q29udGVudHx8IiI7YiYmYiE9PSIgIiYmKGI9Yi5yZXBsYWNlKC9eW1xzXHhhMF0rL2csIiIpLGI9Yi5yZXBsYWNlKC9bXHNceGEwXSskL2csIiIpKTtiJiYoYj1iLnJlcGxhY2UoLyhceGEwK3xcc3syLH18XG58XHJcdCkvZywiICIpKTtyZXR1cm4gYn0KZnVuY3Rpb24gZ2QoYSl7dmFyIGI9Qi5jcmVhdGVFbGVtZW50KCJkaXYiKSxjPWIsZCxlPUVjKCJBPGRpdj4iK2ErIjwvZGl2PiIpLGY9aGMoKSxnPWY/Zi5jcmVhdGVIVE1MKGUpOmU7ZD1uZXcgemMoZyk7aWYoYy5ub2RlVHlwZT09PTEmJi9eKHNjcmlwdHxzdHlsZSkkL2kudGVzdChjLnRhZ05hbWUpKXRocm93IEVycm9yKCIiKTt2YXIgaDtpZihkIGluc3RhbmNlb2YgemMpaD1kLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7Yy5pbm5lckhUTUw9aDtiPWIubGFzdENoaWxkO2Zvcih2YXIgbD1bXTtiJiZiLmZpcnN0Q2hpbGQ7KWwucHVzaChiLnJlbW92ZUNoaWxkKGIuZmlyc3RDaGlsZCkpO3JldHVybiBsfQpmdW5jdGlvbiBoZChhLGIsYyl7Yz1jfHwxMDA7Zm9yKHZhciBkPXt9LGU9MDtlPGIubGVuZ3RoO2UrKylkW2JbZV1dPSEwO2Zvcih2YXIgZj1hLGc9MDtmJiZnPD1jO2crKyl7aWYoZFtTdHJpbmcoZi50YWdOYW1lKS50b0xvd2VyQ2FzZSgpXSlyZXR1cm4gZjtmPWYucGFyZW50RWxlbWVudH1yZXR1cm4gbnVsbH1mdW5jdGlvbiBpZChhLGIsYyl7dmFyIGQ7dHJ5e2Q9SGMuc2VuZEJlYWNvbiYmSGMuc2VuZEJlYWNvbihhKX1jYXRjaChlKXtzYigiVEFHR0lORyIsMTUpfWQ/Yj09bnVsbHx8YigpOlpjKGEsYixjKX1mdW5jdGlvbiBqZChhLGIpe3RyeXtpZihIYy5zZW5kQmVhY29uIT09dm9pZCAwKXJldHVybiBIYy5zZW5kQmVhY29uKGEsYil9Y2F0Y2goYyl7c2IoIlRBR0dJTkciLDE1KX1yZXR1cm4hMX1mdW5jdGlvbiBrZCgpe3JldHVybiBIYy5zZW5kQmVhY29uIT09dm9pZCAwfQp2YXIgbGQ9e2NhY2hlOiJuby1zdG9yZSIsY3JlZGVudGlhbHM6ImluY2x1ZGUiLGtlZXBhbGl2ZTohMCxtZXRob2Q6IlBPU1QiLG1vZGU6Im5vLWNvcnMiLHJlZGlyZWN0OiJmb2xsb3cifTsKZnVuY3Rpb24gbWQoYSxiLGMsZCxlKXtpZihuZCgpKXt2YXIgZj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGxkKTtiJiYoZi5ib2R5PWIpO2MmJihjLmF0dHJpYnV0aW9uUmVwb3J0aW5nJiYoZi5hdHRyaWJ1dGlvblJlcG9ydGluZz1jLmF0dHJpYnV0aW9uUmVwb3J0aW5nKSxjLmJyb3dzaW5nVG9waWNzIT09dm9pZCAwJiYoZi5icm93c2luZ1RvcGljcz1jLmJyb3dzaW5nVG9waWNzKSxjLmNyZWRlbnRpYWxzJiYoZi5jcmVkZW50aWFscz1jLmNyZWRlbnRpYWxzKSxjLmtlZXBhbGl2ZSE9PXZvaWQgMCYmKGYua2VlcGFsaXZlPWMua2VlcGFsaXZlKSxjLm1ldGhvZCYmKGYubWV0aG9kPWMubWV0aG9kKSxjLm1vZGUmJihmLm1vZGU9Yy5tb2RlKSk7dHJ5e3ZhciBnPUEuZmV0Y2goYSxmKTtpZihnKXJldHVybiBnLnRoZW4oZnVuY3Rpb24obCl7bCYmKGwub2t8fGwuc3RhdHVzPT09MCk/ZD09bnVsbHx8ZCgpOmU9PW51bGx8fGUoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZT09Cm51bGx8fGUoKX0pLCEwfWNhdGNoKGwpe319aWYoKGM9PW51bGw/MDpjLlFnKXx8KGM9PW51bGw/MDpjLmNyZWRlbnRpYWxzKSYmYy5jcmVkZW50aWFscyE9PSJpbmNsdWRlIilyZXR1cm4gZT09bnVsbHx8ZSgpLCExO2lmKGIpe3ZhciBoPWpkKGEsYik7aD9kPT1udWxsfHxkKCk6ZT09bnVsbHx8ZSgpO3JldHVybiBofVZjLnd0KGEsZCxlKTtyZXR1cm4hMH1mdW5jdGlvbiBuZCgpe3JldHVybiB5YihBLmZldGNoKX1mdW5jdGlvbiBvZChhLGIpe3ZhciBjPWFbYl07YyYmdHlwZW9mIGMuYW5pbVZhbD09PSJzdHJpbmciJiYoYz1jLmFuaW1WYWwpO3JldHVybiBjfWZ1bmN0aW9uIHBkKCl7dmFyIGE9QS5wZXJmb3JtYW5jZTtpZihhJiZ5YihhLm5vdykpcmV0dXJuIGEubm93KCl9CmZ1bmN0aW9uIHFkKCl7dmFyIGEsYj1BLnBlcmZvcm1hbmNlO2lmKGImJmIuZ2V0RW50cmllc0J5VHlwZSl0cnl7dmFyIGM9Yi5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIik7YyYmYy5sZW5ndGg+MCYmKGE9Y1swXS50eXBlKX1jYXRjaChkKXtyZXR1cm4iZSJ9aWYoIWEpcmV0dXJuInUiO3N3aXRjaChhKXtjYXNlICJuYXZpZ2F0ZSI6cmV0dXJuIm4iO2Nhc2UgImJhY2tfZm9yd2FyZCI6cmV0dXJuImgiO2Nhc2UgInJlbG9hZCI6cmV0dXJuInIiO2Nhc2UgInByZXJlbmRlciI6cmV0dXJuInAiO2RlZmF1bHQ6cmV0dXJuIngifX1mdW5jdGlvbiByZCgpe3JldHVybiBBLnBlcmZvcm1hbmNlfHx2b2lkIDB9ZnVuY3Rpb24gc2QoKXt2YXIgYT1BLndlYlBpeGVsc01hbmFnZXI7cmV0dXJuIGE/YS5jcmVhdGVTaG9waWZ5RXh0ZW5kIT09dm9pZCAwOiExfQp2YXIgVmM9e0VyOmZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPW5ldyBJbWFnZSgxLDEpO1RjKGUsZCx7fSk7ZS5vbmxvYWQ9ZnVuY3Rpb24oKXtlLm9ubG9hZD1udWxsO2ImJmIoKX07ZS5vbmVycm9yPWZ1bmN0aW9uKCl7ZS5vbmVycm9yPW51bGw7YyYmYygpfTtlLnNyYz1hO3JldHVybiBlfSxCczpmdW5jdGlvbihhKXt2YXIgYj1CLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXXx8Qi5ib2R5fHxCLmhlYWQ7Yi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLGIpfSx3dDppZH07ZnVuY3Rpb24gdGQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSYmdGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiB1ZChhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpPT09dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiB2ZChhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpfHx0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIHdkKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYik7cmV0dXJuIFN0cmluZyhjKS5pbmRleE9mKFN0cmluZyhkKSk+LTF9ZnVuY3Rpb24geGQoYSxiKXt2YXIgYz1TdHJpbmcodGhpcy5ldmFsdWF0ZShhKSksZD1TdHJpbmcodGhpcy5ldmFsdWF0ZShiKSk7cmV0dXJuIGMuc3Vic3RyaW5nKDAsZC5sZW5ndGgpPT09ZH0KZnVuY3Rpb24geWQoYSxiKXt2YXIgYz10aGlzLmV2YWx1YXRlKGEpLGQ9dGhpcy5ldmFsdWF0ZShiKTtzd2l0Y2goYyl7Y2FzZSAicGFnZUxvY2F0aW9uIjp2YXIgZT1BLmxvY2F0aW9uLmhyZWY7ZCBpbnN0YW5jZW9mIGtiJiZkLmdldCgic3RyaXBQcm90b2NvbCIpJiYoZT1lLnJlcGxhY2UoL15odHRwcz86XC9cLy8sIiIpKTtyZXR1cm4gZX19Oy8qCiBqUXVlcnkgKGMpIDIwMDUsIDIwMTIgalF1ZXJ5IEZvdW5kYXRpb24sIEluYy4ganF1ZXJ5Lm9yZy9saWNlbnNlLgoqLwp2YXIgemQ9L1xbb2JqZWN0IChCb29sZWFufE51bWJlcnxTdHJpbmd8RnVuY3Rpb258QXJyYXl8RGF0ZXxSZWdFeHApXF0vLEFkPWZ1bmN0aW9uKGEpe2lmKGE9PW51bGwpcmV0dXJuIFN0cmluZyhhKTt2YXIgYj16ZC5leGVjKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChPYmplY3QoYSkpKTtyZXR1cm4gYj9iWzFdLnRvTG93ZXJDYXNlKCk6Im9iamVjdCJ9LEJkPWZ1bmN0aW9uKGEsYil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChPYmplY3QoYSksYil9LENkPWZ1bmN0aW9uKGEpe2lmKCFhfHxBZChhKSE9Im9iamVjdCJ8fGEubm9kZVR5cGV8fGE9PWEud2luZG93KXJldHVybiExO3RyeXtpZihhLmNvbnN0cnVjdG9yJiYhQmQoYSwiY29uc3RydWN0b3IiKSYmIUJkKGEuY29uc3RydWN0b3IucHJvdG90eXBlLCJpc1Byb3RvdHlwZU9mIikpcmV0dXJuITF9Y2F0Y2goYyl7cmV0dXJuITF9Zm9yKHZhciBiIGluIGEpO3JldHVybiBiPT09dm9pZCAwfHwKQmQoYSxiKX0sRWQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1ifHwoQWQoYSk9PSJhcnJheSI/W106e30pLGQ7Zm9yKGQgaW4gYSlpZihCZChhLGQpKXt2YXIgZT1hW2RdO0FkKGUpPT0iYXJyYXkiPyhBZChjW2RdKSE9ImFycmF5IiYmKGNbZF09W10pLGNbZF09RWQoZSxjW2RdKSk6Q2QoZSk/KENkKGNbZF0pfHwoY1tkXT17fSksY1tkXT1FZChlLGNbZF0pKTpjW2RdPWV9cmV0dXJuIGN9O2Z1bmN0aW9uIEZkKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIiJiZhPj0wJiZpc0Zpbml0ZShhKSYmYSUxPT09MHx8dHlwZW9mIGE9PT0ic3RyaW5nIiYmYVswXSE9PSItIiYmYT09PSIiK3BhcnNlSW50KGEpfTt2YXIgR2Q9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP1tdOmE7dGhpcy5sYT1uZXcgVWE7dGhpcy52YWx1ZXM9W107dGhpcy5OYT0hMTtmb3IodmFyIGIgaW4gYSlhLmhhc093blByb3BlcnR5KGIpJiYoRmQoYik/dGhpcy52YWx1ZXNbTnVtYmVyKGIpXT1hW051bWJlcihiKV06dGhpcy5sYS5zZXQoYixhW2JdKSl9O2s9R2QucHJvdG90eXBlO2sudG9TdHJpbmc9ZnVuY3Rpb24oYSl7aWYoYSYmYS5pbmRleE9mKHRoaXMpPj0wKXJldHVybiIiO2Zvcih2YXIgYj1bXSxjPTA7Yzx0aGlzLnZhbHVlcy5sZW5ndGg7YysrKXt2YXIgZD10aGlzLnZhbHVlc1tjXTtkPT09bnVsbHx8ZD09PXZvaWQgMD9iLnB1c2goIiIpOmQgaW5zdGFuY2VvZiBHZD8oYT1hfHxbXSxhLnB1c2godGhpcyksYi5wdXNoKGQudG9TdHJpbmcoYSkpLGEucG9wKCkpOmIucHVzaChTdHJpbmcoZCkpfXJldHVybiBiLmpvaW4oIiwiKX07Cmsuc2V0PWZ1bmN0aW9uKGEsYil7aWYoIXRoaXMuTmEpaWYoYT09PSJsZW5ndGgiKXtpZighRmQoYikpdGhyb3cgY2IoRXJyb3IoIlJhbmdlRXJyb3I6IExlbmd0aCBwcm9wZXJ0eSBtdXN0IGJlIGEgdmFsaWQgaW50ZWdlci4iKSk7dGhpcy52YWx1ZXMubGVuZ3RoPU51bWJlcihiKX1lbHNlIEZkKGEpP3RoaXMudmFsdWVzW051bWJlcihhKV09Yjp0aGlzLmxhLnNldChhLGIpfTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gYT09PSJsZW5ndGgiP3RoaXMubGVuZ3RoKCk6RmQoYSk/dGhpcy52YWx1ZXNbTnVtYmVyKGEpXTp0aGlzLmxhLmdldChhKX07ay5sZW5ndGg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMubGVuZ3RofTtrLkZhPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuRmEoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2goU3RyaW5nKGIpKTtyZXR1cm4gYX07CmsuaGM9ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5sYS5oYygpLGI9MDtiPHRoaXMudmFsdWVzLmxlbmd0aDtiKyspdGhpcy52YWx1ZXMuaGFzT3duUHJvcGVydHkoYikmJmEucHVzaCh0aGlzLnZhbHVlc1tiXSk7cmV0dXJuIGF9O2suZmM9ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5sYS5mYygpLGI9MDtiPHRoaXMudmFsdWVzLmxlbmd0aDtiKyspdGhpcy52YWx1ZXMuaGFzT3duUHJvcGVydHkoYikmJmEucHVzaChbU3RyaW5nKGIpLHRoaXMudmFsdWVzW2JdXSk7cmV0dXJuIGF9O2sucmVtb3ZlPWZ1bmN0aW9uKGEpe0ZkKGEpP2RlbGV0ZSB0aGlzLnZhbHVlc1tOdW1iZXIoYSldOnRoaXMuTmF8fHRoaXMubGEucmVtb3ZlKGEpfTtrLnBvcD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlcy5wb3AoKX07ay5wdXNoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLnB1c2guYXBwbHkodGhpcy52YWx1ZXMsdyhPYS5hcHBseSgwLGFyZ3VtZW50cykpKX07ay5zaGlmdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlcy5zaGlmdCgpfTsKay5zcGxpY2U9ZnVuY3Rpb24oYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyk7cmV0dXJuIGI9PT12b2lkIDAmJmMubGVuZ3RoPT09MD9uZXcgR2QodGhpcy52YWx1ZXMuc3BsaWNlKGEpKTpuZXcgR2QodGhpcy52YWx1ZXMuc3BsaWNlLmFwcGx5KHRoaXMudmFsdWVzLFthLGJ8fDBdLmNvbmNhdCh3KGMpKSkpfTtrLnVuc2hpZnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMudW5zaGlmdC5hcHBseSh0aGlzLnZhbHVlcyx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gRmQoYSkmJnRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGEpfHx0aGlzLmxhLmhhcyhhKX07ay5aYT1mdW5jdGlvbigpe3RoaXMuTmE9ITA7T2JqZWN0LmZyZWV6ZSh0aGlzLnZhbHVlcyl9O2suSGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OYX07CmZ1bmN0aW9uIEhkKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aCgpO2MrKylhLmhhcyhjKSYmKGJbY109YS5nZXQoYykpO3JldHVybiBifTt2YXIgSWQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmZ1bmN0aW9uTmFtZT1hO3RoaXMuaWU9Yjt0aGlzLmxhPW5ldyBVYTt0aGlzLk5hPSExfTtrPUlkLnByb3RvdHlwZTtrLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZnVuY3Rpb25OYW1lfTtrLmdldE5hbWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5mdW5jdGlvbk5hbWV9O2suZ2V0S2V5cz1mdW5jdGlvbigpe3JldHVybiBuZXcgR2QodGhpcy5GYSgpKX07ay5pbnZva2U9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuaWUuY2FsbC5hcHBseSh0aGlzLmllLFtuZXcgSmQodGhpcyxhKV0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpfTtrLmFwcGx5PWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaWUuYXBwbHkobmV3IEpkKHRoaXMsYSksYil9O2suTmM9ZnVuY3Rpb24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO3RyeXtyZXR1cm4gdGhpcy5pbnZva2UuYXBwbHkodGhpcyxbYV0uY29uY2F0KHcoYikpKX1jYXRjaChjKXt9fTsKay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuZ2V0KGEpfTtrLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTmF8fHRoaXMubGEuc2V0KGEsYil9O2suaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmhhcyhhKX07ay5yZW1vdmU9ZnVuY3Rpb24oYSl7dGhpcy5OYXx8dGhpcy5sYS5yZW1vdmUoYSl9O2suRmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5GYSgpfTtrLmhjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuaGMoKX07ay5mYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmZjKCl9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLk5hPSEwfTtrLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9O3ZhciBLZD1mdW5jdGlvbihhLGIpe0lkLmNhbGwodGhpcyxhLGIpfTt3YShLZCxJZCk7dmFyIExkPWZ1bmN0aW9uKGEsYil7SWQuY2FsbCh0aGlzLGEsYil9O3dhKExkLElkKTt2YXIgSmQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmllPWE7dGhpcy5UPWJ9OwpKZC5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5UO3JldHVybiBBcnJheS5pc0FycmF5KGEpP2ZiKGIsYSk6YX07SmQucHJvdG90eXBlLmdldE5hbWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pZS5nZXROYW1lKCl9O0pkLnByb3RvdHlwZS5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlQuamUoKX07dmFyIE1kPWZ1bmN0aW9uKCl7dGhpcy5tYXA9bmV3IE1hcH07TWQucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMubWFwLnNldChhLGIpfTtNZC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcC5nZXQoYSl9O3ZhciBOZD1mdW5jdGlvbigpe3RoaXMua2V5cz1bXTt0aGlzLnZhbHVlcz1bXX07TmQucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMua2V5cy5wdXNoKGEpO3RoaXMudmFsdWVzLnB1c2goYil9O05kLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5rZXlzLmluZGV4T2YoYSk7aWYoYj4tMSlyZXR1cm4gdGhpcy52YWx1ZXNbYl19O2Z1bmN0aW9uIE9kKCl7dHJ5e3JldHVybiBNYXA/bmV3IE1kOm5ldyBOZH1jYXRjaChhKXtyZXR1cm4gbmV3IE5kfX07dmFyIFBkPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBQZClyZXR1cm4gYTt2YXIgYjthOmlmKGE9PXZvaWQgMHx8QXJyYXkuaXNBcnJheShhKXx8Q2QoYSkpYj0hMDtlbHNle3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAiYm9vbGVhbiI6Y2FzZSAibnVtYmVyIjpjYXNlICJzdHJpbmciOmNhc2UgImZ1bmN0aW9uIjpiPSEwO2JyZWFrIGF9Yj0hMX1pZihiKXRocm93IEVycm9yKCJUeXBlIG9mIGdpdmVuIHZhbHVlIGhhcyBhbiBlcXVpdmFsZW50IFBpeGllIHR5cGUuIik7dGhpcy52YWx1ZT1hfTtQZC5wcm90b3R5cGUuZ2V0VmFsdWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07UGQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyh0aGlzLnZhbHVlKX07dmFyIFNkPWZ1bmN0aW9uKGEpe3RoaXMucHJvbWlzZT1hO3RoaXMuTmE9ITE7dGhpcy5sYT1uZXcgVWE7dGhpcy5sYS5zZXQoInRoZW4iLFJkKHRoaXMpKTt0aGlzLmxhLnNldCgiY2F0Y2giLFJkKHRoaXMsITApKTt0aGlzLmxhLnNldCgiZmluYWxseSIsUmQodGhpcywhMSwhMCkpfTtrPVNkLnByb3RvdHlwZTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5nZXQoYSl9O2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OYXx8dGhpcy5sYS5zZXQoYSxiKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuaGFzKGEpfTtrLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5GYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLkZhKCl9O2suaGM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5oYygpfTtrLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuZmMoKX07CnZhciBSZD1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPyExOmI7Yz1jPT09dm9pZCAwPyExOmM7cmV0dXJuIG5ldyBLZCgiIixmdW5jdGlvbihkLGUpe2ImJihlPWQsZD12b2lkIDApO2MmJihlPWQpO2QgaW5zdGFuY2VvZiBLZHx8KGQ9dm9pZCAwKTtlIGluc3RhbmNlb2YgS2R8fChlPXZvaWQgMCk7dmFyIGY9dGhpcy5ULndiKCksZz1mdW5jdGlvbihsKXtyZXR1cm4gZnVuY3Rpb24obil7dHJ5e3JldHVybiBjPyhsLmludm9rZShmKSxhLnByb21pc2UpOmwuaW52b2tlKGYsbil9Y2F0Y2gocCl7cmV0dXJuIFByb21pc2UucmVqZWN0KHAgaW5zdGFuY2VvZiBFcnJvcj9uZXcgUGQocCk6U3RyaW5nKHApKX19fSxoPWEucHJvbWlzZS50aGVuKGQmJmcoZCksZSYmZyhlKSk7cmV0dXJuIG5ldyBTZChoKX0pfTtTZC5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXt0aGlzLk5hPSEwfTtTZC5wcm90b3R5cGUuSGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OYX07ZnVuY3Rpb24gVGQoYSxiLGMpe3ZhciBkPU9kKCksZT1mdW5jdGlvbihnLGgpe2Zvcih2YXIgbD1nLkZhKCksbj0wO248bC5sZW5ndGg7bisrKWhbbFtuXV09ZihnLmdldChsW25dKSl9LGY9ZnVuY3Rpb24oZyl7aWYoZz09PW51bGx8fGc9PT12b2lkIDApcmV0dXJuIGc7dmFyIGg9ZC5nZXQoZyk7aWYoaClyZXR1cm4gaDtpZihnIGluc3RhbmNlb2YgR2Qpe3ZhciBsPVtdO2Quc2V0KGcsbCk7Zm9yKHZhciBuPWcuRmEoKSxwPTA7cDxuLmxlbmd0aDtwKyspbFtuW3BdXT1mKGcuZ2V0KG5bcF0pKTtyZXR1cm4gbH1pZihnIGluc3RhbmNlb2YgU2QpcmV0dXJuIGcucHJvbWlzZS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiBUZCh1LGIsMSl9LGZ1bmN0aW9uKHUpe3JldHVybiBQcm9taXNlLnJlamVjdChUZCh1LGIsMSkpfSk7aWYoZyBpbnN0YW5jZW9mIGtiKXt2YXIgcT17fTtkLnNldChnLHEpO2UoZyxxKTtyZXR1cm4gcX1pZihnIGluc3RhbmNlb2YgS2Qpe3ZhciByPWZ1bmN0aW9uKCl7Zm9yKHZhciB1PQpbXSx2PTA7djxhcmd1bWVudHMubGVuZ3RoO3YrKyl1W3ZdPVVkKGFyZ3VtZW50c1t2XSxiLGMpO3ZhciB4PW5ldyBoYihiP2IuamUoKTpuZXcgV2EpO2ImJngudWUoYi54YigpKTtyZXR1cm4gZihnLmFwcGx5KHgsdSkpfTtkLnNldChnLHIpO2UoZyxyKTtyZXR1cm4gcn12YXIgdD0hMTtzd2l0Y2goYyl7Y2FzZSAxOnQ9ITA7YnJlYWs7Y2FzZSAyOnQ9ITE7YnJlYWs7Y2FzZSAzOnQ9ITE7YnJlYWs7ZGVmYXVsdDp9aWYoZyBpbnN0YW5jZW9mIFBkJiZ0KXJldHVybiBnLmdldFZhbHVlKCk7c3dpdGNoKHR5cGVvZiBnKXtjYXNlICJib29sZWFuIjpjYXNlICJudW1iZXIiOmNhc2UgInN0cmluZyI6Y2FzZSAidW5kZWZpbmVkIjpyZXR1cm4gZztjYXNlICJvYmplY3QiOmlmKGc9PT0KbnVsbClyZXR1cm4gbnVsbH19O3JldHVybiBmKGEpfQpmdW5jdGlvbiBVZChhLGIsYyl7dmFyIGQ9T2QoKSxlPWZ1bmN0aW9uKGcsaCl7Zm9yKHZhciBsIGluIGcpZy5oYXNPd25Qcm9wZXJ0eShsKSYmaC5zZXQobCxmKGdbbF0pKX0sZj1mdW5jdGlvbihnKXt2YXIgaD1kLmdldChnKTtpZihoKXJldHVybiBoO2lmKEFycmF5LmlzQXJyYXkoZyl8fEhiKGcpKXt2YXIgbD1uZXcgR2Q7ZC5zZXQoZyxsKTtmb3IodmFyIG4gaW4gZylnLmhhc093blByb3BlcnR5KG4pJiZsLnNldChuLGYoZ1tuXSkpO3JldHVybiBsfWlmKENkKGcpKXt2YXIgcD1uZXcga2I7ZC5zZXQoZyxwKTtlKGcscCk7cmV0dXJuIHB9aWYodHlwZW9mIGc9PT0iZnVuY3Rpb24iKXt2YXIgcT1uZXcgS2QoIiIsZnVuY3Rpb24oKXtmb3IodmFyIHU9T2EuYXBwbHkoMCxhcmd1bWVudHMpLHY9W10seD0wO3g8dS5sZW5ndGg7eCsrKXZbeF09VGQodGhpcy5ldmFsdWF0ZSh1W3hdKSxiLGMpO3JldHVybiBmKHRoaXMuVC5QaigpKGcsZyx2KSl9KTtkLnNldChnLHEpO2UoZyxxKTtyZXR1cm4gcX12YXIgcj10eXBlb2YgZztpZihnPT09bnVsbHx8cj09PSJzdHJpbmcifHxyPT09Im51bWJlciJ8fHI9PT0iYm9vbGVhbiIpcmV0dXJuIGc7dmFyIHQ9ITE7c3dpdGNoKGMpe2Nhc2UgMTp0PSEwO2JyZWFrO2Nhc2UgMjp0PSExO2JyZWFrO2RlZmF1bHQ6fWlmKGchPT12b2lkIDAmJnQpcmV0dXJuIG5ldyBQZChnKX07cmV0dXJuIGYoYSl9O3ZhciBWZD17c3VwcG9ydGVkTWV0aG9kczoiY29uY2F0IGV2ZXJ5IGZpbHRlciBmb3JFYWNoIGhhc093blByb3BlcnR5IGluZGV4T2Ygam9pbiBsYXN0SW5kZXhPZiBtYXAgcG9wIHB1c2ggcmVkdWNlIHJlZHVjZVJpZ2h0IHJldmVyc2Ugc2hpZnQgc2xpY2Ugc29tZSBzb3J0IHNwbGljZSB1bnNoaWZ0IHRvU3RyaW5nIi5zcGxpdCgiICIpLGNvbmNhdDpmdW5jdGlvbihhKXtmb3IodmFyIGI9W10sYz0wO2M8dGhpcy5sZW5ndGgoKTtjKyspYi5wdXNoKHRoaXMuZ2V0KGMpKTtmb3IodmFyIGQ9MTtkPGFyZ3VtZW50cy5sZW5ndGg7ZCsrKWlmKGFyZ3VtZW50c1tkXWluc3RhbmNlb2YgR2QpZm9yKHZhciBlPWFyZ3VtZW50c1tkXSxmPTA7ZjxlLmxlbmd0aCgpO2YrKyliLnB1c2goZS5nZXQoZikpO2Vsc2UgYi5wdXNoKGFyZ3VtZW50c1tkXSk7cmV0dXJuIG5ldyBHZChiKX0sZXZlcnk6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dGhpcy5sZW5ndGgoKSxkPTA7ZDx0aGlzLmxlbmd0aCgpJiYKZDxjO2QrKylpZih0aGlzLmhhcyhkKSYmIWIuaW52b2tlKGEsdGhpcy5nZXQoZCksZCx0aGlzKSlyZXR1cm4hMTtyZXR1cm4hMH0sZmlsdGVyOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD1bXSxlPTA7ZTx0aGlzLmxlbmd0aCgpJiZlPGM7ZSsrKXRoaXMuaGFzKGUpJiZiLmludm9rZShhLHRoaXMuZ2V0KGUpLGUsdGhpcykmJmQucHVzaCh0aGlzLmdldChlKSk7cmV0dXJuIG5ldyBHZChkKX0sZm9yRWFjaDpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9MDtkPHRoaXMubGVuZ3RoKCkmJmQ8YztkKyspdGhpcy5oYXMoZCkmJmIuaW52b2tlKGEsdGhpcy5nZXQoZCksZCx0aGlzKX0saGFzT3duUHJvcGVydHk6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy5oYXMoYil9LGluZGV4T2Y6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCksZT1jPT09dm9pZCAwPzA6TnVtYmVyKGMpO2U8MCYmKGU9TWF0aC5tYXgoZCtlLDApKTtmb3IodmFyIGY9CmU7ZjxkO2YrKylpZih0aGlzLmhhcyhmKSYmdGhpcy5nZXQoZik9PT1iKXJldHVybiBmO3JldHVybi0xfSxqb2luOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPHRoaXMubGVuZ3RoKCk7ZCsrKWMucHVzaCh0aGlzLmdldChkKSk7cmV0dXJuIGMuam9pbihiKX0sbGFzdEluZGV4T2Y6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCksZT1kLTE7YyE9PXZvaWQgMCYmKGU9YzwwP2QrYzpNYXRoLm1pbihjLGUpKTtmb3IodmFyIGY9ZTtmPj0wO2YtLSlpZih0aGlzLmhhcyhmKSYmdGhpcy5nZXQoZik9PT1iKXJldHVybiBmO3JldHVybi0xfSxtYXA6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dGhpcy5sZW5ndGgoKSxkPVtdLGU9MDtlPHRoaXMubGVuZ3RoKCkmJmU8YztlKyspdGhpcy5oYXMoZSkmJihkW2VdPWIuaW52b2tlKGEsdGhpcy5nZXQoZSksZSx0aGlzKSk7cmV0dXJuIG5ldyBHZChkKX0scG9wOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucG9wKCl9LHB1c2g6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMucHVzaC5hcHBseSh0aGlzLAp3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpfSxyZWR1Y2U6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCksZSxmPTA7aWYoYyE9PXZvaWQgMCllPWM7ZWxzZXtpZihkPT09MCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2Ugb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTtmb3IodmFyIGc9MDtnPGQ7ZysrKWlmKHRoaXMuaGFzKGcpKXtlPXRoaXMuZ2V0KGcpO2Y9ZysxO2JyZWFrfWlmKGc9PT1kKXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6IFJlZHVjZSBvbiBMaXN0IHdpdGggbm8gZWxlbWVudHMuIikpO31mb3IodmFyIGg9ZjtoPGQ7aCsrKXRoaXMuaGFzKGgpJiYoZT1iLmludm9rZShhLGUsdGhpcy5nZXQoaCksaCx0aGlzKSk7cmV0dXJuIGV9LHJlZHVjZVJpZ2h0OmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGUsZj1kLTE7aWYoYyE9PXZvaWQgMCllPWM7ZWxzZXtpZihkPT09MCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2VSaWdodCBvbiBMaXN0IHdpdGggbm8gZWxlbWVudHMuIikpOwpmb3IodmFyIGc9MTtnPD1kO2crKylpZih0aGlzLmhhcyhkLWcpKXtlPXRoaXMuZ2V0KGQtZyk7Zj1kLShnKzEpO2JyZWFrfWlmKGc+ZCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2VSaWdodCBvbiBMaXN0IHdpdGggbm8gZWxlbWVudHMuIikpO31mb3IodmFyIGg9ZjtoPj0wO2gtLSl0aGlzLmhhcyhoKSYmKGU9Yi5pbnZva2UoYSxlLHRoaXMuZ2V0KGgpLGgsdGhpcykpO3JldHVybiBlfSxyZXZlcnNlOmZ1bmN0aW9uKCl7Zm9yKHZhciBhPUhkKHRoaXMpLGI9YS5sZW5ndGgtMSxjPTA7Yj49MDtiLS0sYysrKWEuaGFzT3duUHJvcGVydHkoYik/dGhpcy5zZXQoYyxhW2JdKTp0aGlzLnJlbW92ZShjKTtyZXR1cm4gdGhpc30sc2hpZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zaGlmdCgpfSxzbGljZTpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5sZW5ndGgoKTtiPT09dm9pZCAwJiYoYj0wKTtiPWI8MD9NYXRoLm1heChkK2IsMCk6TWF0aC5taW4oYixkKTtjPWM9PT0Kdm9pZCAwP2Q6YzwwP01hdGgubWF4KGQrYywwKTpNYXRoLm1pbihjLGQpO2M9TWF0aC5tYXgoYixjKTtmb3IodmFyIGU9W10sZj1iO2Y8YztmKyspZS5wdXNoKHRoaXMuZ2V0KGYpKTtyZXR1cm4gbmV3IEdkKGUpfSxzb21lOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD0wO2Q8dGhpcy5sZW5ndGgoKSYmZDxjO2QrKylpZih0aGlzLmhhcyhkKSYmYi5pbnZva2UoYSx0aGlzLmdldChkKSxkLHRoaXMpKXJldHVybiEwO3JldHVybiExfSxzb3J0OmZ1bmN0aW9uKGEsYil7dmFyIGM9SGQodGhpcyk7Yj09PXZvaWQgMD9jLnNvcnQoKTpjLnNvcnQoZnVuY3Rpb24oZSxmKXtyZXR1cm4gTnVtYmVyKGIuaW52b2tlKGEsZSxmKSl9KTtmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKyljLmhhc093blByb3BlcnR5KGQpP3RoaXMuc2V0KGQsY1tkXSk6dGhpcy5yZW1vdmUoZCk7cmV0dXJuIHRoaXN9LHNwbGljZTpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIHRoaXMuc3BsaWNlLmFwcGx5KHRoaXMsCltiLGNdLmNvbmNhdCh3KE9hLmFwcGx5KDMsYXJndW1lbnRzKSkpKX0sdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b1N0cmluZygpfSx1bnNoaWZ0OmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnVuc2hpZnQuYXBwbHkodGhpcyx3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpfX07dmFyIFdkPXtjaGFyQXQ6MSxjb25jYXQ6MSxpbmRleE9mOjEsbGFzdEluZGV4T2Y6MSxtYXRjaDoxLHJlcGxhY2U6MSxzZWFyY2g6MSxzbGljZToxLHNwbGl0OjEsc3Vic3RyaW5nOjEsdG9Mb3dlckNhc2U6MSx0b0xvY2FsZUxvd2VyQ2FzZToxLHRvU3RyaW5nOjEsdG9VcHBlckNhc2U6MSx0b0xvY2FsZVVwcGVyQ2FzZToxLHRyaW06MX0sWGQ9bmV3IFRhKCJicmVhayIpLFlkPW5ldyBUYSgiY29udGludWUiKTtmdW5jdGlvbiBaZChhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpK3RoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gJGQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSYmdGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gYWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZighKGYgaW5zdGFuY2VvZiBHZCkpdGhyb3cgRXJyb3IoIkVycm9yOiBOb24tTGlzdCBhcmd1bWVudCBnaXZlbiB0byBBcHBseSBpbnN0cnVjdGlvbi4iKTtpZihkPT09bnVsbHx8ZD09PXZvaWQgMCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW4ndCByZWFkIHByb3BlcnR5ICIrZSsiIG9mICIrZCsiLiIpKTt2YXIgZz10eXBlb2YgZD09PSJudW1iZXIiO2lmKHR5cGVvZiBkPT09ImJvb2xlYW4ifHxnKXtpZihlPT09InRvU3RyaW5nIil7aWYoZyYmZi5sZW5ndGgoKSl7dmFyIGg9VGQoZi5nZXQoMCkpO3RyeXtyZXR1cm4gZC50b1N0cmluZyhoKX1jYXRjaCh1KXt9fXJldHVybiBkLnRvU3RyaW5nKCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitkKyIuIitlKyIgaXMgbm90IGEgZnVuY3Rpb24uIikpO31pZih0eXBlb2YgZD09PQoic3RyaW5nIil7aWYoV2QuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBsPVRkKGYsdm9pZCAwLDEpO3JldHVybiBVZChkW2VdLmFwcGx5KGQsbCksdGhpcy5UKX10aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiAiK2UrIiBpcyBub3QgYSBmdW5jdGlvbiIpKTt9aWYoZCBpbnN0YW5jZW9mIEdkKXtpZihkLmhhcyhlKSl7dmFyIG49ZC5nZXQoU3RyaW5nKGUpKTtpZihuIGluc3RhbmNlb2YgS2Qpe3ZhciBwPUhkKGYpO3JldHVybiBuLmFwcGx5KHRoaXMuVCxwKX10aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiAiK2UrIiBpcyBub3QgYSBmdW5jdGlvbiIpKTt9aWYoVmQuc3VwcG9ydGVkTWV0aG9kcy5pbmRleE9mKGUpPj0wKXt2YXIgcT1IZChmKTtyZXR1cm4gVmRbZV0uY2FsbC5hcHBseShWZFtlXSxbZCx0aGlzLlRdLmNvbmNhdCh3KHEpKSl9fWlmKGQgaW5zdGFuY2VvZiBLZHx8ZCBpbnN0YW5jZW9mIGtifHxkIGluc3RhbmNlb2YgU2Qpe2lmKGQuaGFzKGUpKXt2YXIgcj1kLmdldChlKTsKaWYociBpbnN0YW5jZW9mIEtkKXt2YXIgdD1IZChmKTtyZXR1cm4gci5hcHBseSh0aGlzLlQsdCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKGU9PT0idG9TdHJpbmciKXJldHVybiBkIGluc3RhbmNlb2YgS2Q/ZC5nZXROYW1lKCk6ZC50b1N0cmluZygpO2lmKGU9PT0iaGFzT3duUHJvcGVydHkiKXJldHVybiBkLmhhcyhmLmdldCgwKSl9aWYoZCBpbnN0YW5jZW9mIFBkJiZlPT09InRvU3RyaW5nIilyZXR1cm4gZC50b1N0cmluZygpO3Rocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6IE9iamVjdCBoYXMgbm8gJyIrZSsiJyBwcm9wZXJ0eS4iKSk7fQpmdW5jdGlvbiBiZShhLGIpe2E9dGhpcy5ldmFsdWF0ZShhKTtpZih0eXBlb2YgYSE9PSJzdHJpbmciKXRocm93IEVycm9yKCJJbnZhbGlkIGtleSBuYW1lIGdpdmVuIGZvciBhc3NpZ25tZW50LiIpO3ZhciBjPXRoaXMuVDtpZighYy5oYXMoYSkpdGhyb3cgRXJyb3IoIkF0dGVtcHRpbmcgdG8gYXNzaWduIHRvIHVuZGVmaW5lZCB2YWx1ZSAiK2IpO3ZhciBkPXRoaXMuZXZhbHVhdGUoYik7Yy5zZXQoYSxkKTtyZXR1cm4gZH1mdW5jdGlvbiBjZSgpe3ZhciBhPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxiPXRoaXMuVC53YigpLGM9ZWIoYixhKTtpZihjIGluc3RhbmNlb2YgVGEpcmV0dXJuIGN9ZnVuY3Rpb24gZGUoKXtyZXR1cm4gWGR9ZnVuY3Rpb24gZWUoYSl7Zm9yKHZhciBiPXRoaXMuZXZhbHVhdGUoYSksYz0wO2M8Yi5sZW5ndGg7YysrKXt2YXIgZD10aGlzLmV2YWx1YXRlKGJbY10pO2lmKGQgaW5zdGFuY2VvZiBUYSlyZXR1cm4gZH19CmZ1bmN0aW9uIGZlKCl7Zm9yKHZhciBhPXRoaXMuVCxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoLTE7Yis9Mil7dmFyIGM9YXJndW1lbnRzW2JdO2lmKHR5cGVvZiBjPT09InN0cmluZyIpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2IrMV0pO2EuUWgoYyxkKX19fWZ1bmN0aW9uIGdlKCl7cmV0dXJuIFlkfWZ1bmN0aW9uIGhlKGEsYil7cmV0dXJuIG5ldyBUYShhLHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGllKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpLGQ7ZD1uZXcgR2Q7Zm9yKHZhciBlPXRoaXMuZXZhbHVhdGUoYiksZj0wO2Y8ZS5sZW5ndGg7ZisrKWQucHVzaChlW2ZdKTt2YXIgZz1bNTEsYSxkXS5jb25jYXQodyhjKSk7dGhpcy5ULmFkZChhLHRoaXMuZXZhbHVhdGUoZykpfWZ1bmN0aW9uIGplKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkvdGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24ga2UoYSxiKXt2YXIgYz10aGlzLmV2YWx1YXRlKGEpLGQ9dGhpcy5ldmFsdWF0ZShiKSxlPWMgaW5zdGFuY2VvZiBQZCxmPWQgaW5zdGFuY2VvZiBQZDtyZXR1cm4gZXx8Zj9lJiZmP2MuZ2V0VmFsdWUoKT09PWQuZ2V0VmFsdWUoKTohMTpjPT1kfWZ1bmN0aW9uIGxlKCl7Zm9yKHZhciBhLGI9MDtiPGFyZ3VtZW50cy5sZW5ndGg7YisrKWE9dGhpcy5ldmFsdWF0ZShhcmd1bWVudHNbYl0pO3JldHVybiBhfWZ1bmN0aW9uIG1lKGEsYixjLGQpe2Zvcih2YXIgZT0wO2U8YigpO2UrKyl7dmFyIGY9YShjKGUpKSxnPWViKGYsZCk7aWYoZyBpbnN0YW5jZW9mIFRhKXtpZihnLnR5cGU9PT0iYnJlYWsiKWJyZWFrO2lmKGcudHlwZT09PSJyZXR1cm4iKXJldHVybiBnfX19CmZ1bmN0aW9uIG5lKGEsYixjKXtpZih0eXBlb2YgYj09PSJzdHJpbmciKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RofSxmdW5jdGlvbihmKXtyZXR1cm4gZn0sYyk7aWYoYiBpbnN0YW5jZW9mIGtifHxiIGluc3RhbmNlb2YgU2R8fGIgaW5zdGFuY2VvZiBHZHx8YiBpbnN0YW5jZW9mIEtkKXt2YXIgZD1iLkZhKCksZT1kLmxlbmd0aDtyZXR1cm4gbWUoYSxmdW5jdGlvbigpe3JldHVybiBlfSxmdW5jdGlvbihmKXtyZXR1cm4gZFtmXX0sYyl9fWZ1bmN0aW9uIG9lKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIG5lKGZ1bmN0aW9uKGgpe2cuc2V0KGQsaCk7cmV0dXJuIGd9LGUsZil9CmZ1bmN0aW9uIHBlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIG5lKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLlFoKGQsaCk7cmV0dXJuIGx9LGUsZil9ZnVuY3Rpb24gcWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gbmUoZnVuY3Rpb24oaCl7dmFyIGw9Zy53YigpO2wuYWRkKGQsaCk7cmV0dXJuIGx9LGUsZil9ZnVuY3Rpb24gcmUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gc2UoZnVuY3Rpb24oaCl7Zy5zZXQoZCxoKTtyZXR1cm4gZ30sZSxmKX0KZnVuY3Rpb24gdGUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gc2UoZnVuY3Rpb24oaCl7dmFyIGw9Zy53YigpO2wuUWgoZCxoKTtyZXR1cm4gbH0sZSxmKX1mdW5jdGlvbiB1ZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBzZShmdW5jdGlvbihoKXt2YXIgbD1nLndiKCk7bC5hZGQoZCxoKTtyZXR1cm4gbH0sZSxmKX0KZnVuY3Rpb24gc2UoYSxiLGMpe2lmKHR5cGVvZiBiPT09InN0cmluZyIpcmV0dXJuIG1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gYi5sZW5ndGh9LGZ1bmN0aW9uKGQpe3JldHVybiBiW2RdfSxjKTtpZihiIGluc3RhbmNlb2YgR2QpcmV0dXJuIG1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gYi5sZW5ndGgoKX0sZnVuY3Rpb24oZCl7cmV0dXJuIGIuZ2V0KGQpfSxjKTt0aHJvdyBjYihFcnJvcigiVGhlIHZhbHVlIGlzIG5vdCBpdGVyYWJsZS4iKSk7fQpmdW5jdGlvbiB2ZShhLGIsYyxkKXtmdW5jdGlvbiBlKHEscil7Zm9yKHZhciB0PTA7dDxmLmxlbmd0aCgpO3QrKyl7dmFyIHU9Zi5nZXQodCk7ci5hZGQodSxxLmdldCh1KSl9fXZhciBmPXRoaXMuZXZhbHVhdGUoYSk7aWYoIShmIGluc3RhbmNlb2YgR2QpKXRocm93IEVycm9yKCJUeXBlRXJyb3I6IE5vbi1MaXN0IGFyZ3VtZW50IGdpdmVuIHRvIEZvckxldCBpbnN0cnVjdGlvbi4iKTt2YXIgZz10aGlzLlQsaD10aGlzLmV2YWx1YXRlKGQpLGw9Zy53YigpO2ZvcihlKGcsbCk7ZmIobCxiKTspe3ZhciBuPWViKGwsaCk7aWYobiBpbnN0YW5jZW9mIFRhKXtpZihuLnR5cGU9PT0iYnJlYWsiKWJyZWFrO2lmKG4udHlwZT09PSJyZXR1cm4iKXJldHVybiBufXZhciBwPWcud2IoKTtlKGwscCk7ZmIocCxjKTtsPXB9fQpmdW5jdGlvbiB3ZShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkPXRoaXMuVCxlPXRoaXMuZXZhbHVhdGUoYik7aWYoIShlIGluc3RhbmNlb2YgR2QpKXRocm93IEVycm9yKCJFcnJvcjogbm9uLUxpc3QgdmFsdWUgZ2l2ZW4gZm9yIEZuIGFyZ3VtZW50IG5hbWVzLiIpO3JldHVybiBuZXcgS2QoYSxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbigpe3ZhciBmPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxnPWQud2IoKTtnLnhiKCk9PT12b2lkIDAmJmcudWUodGhpcy5ULnhiKCkpO2Zvcih2YXIgaD1bXSxsPTA7bDxmLmxlbmd0aDtsKyspe3ZhciBuPXRoaXMuZXZhbHVhdGUoZltsXSk7aFtsXT1ufWZvcih2YXIgcD1lLmdldCgibGVuZ3RoIikscT0wO3E8cDtxKyspcTxoLmxlbmd0aD9nLmFkZChlLmdldChxKSxoW3FdKTpnLmFkZChlLmdldChxKSx2b2lkIDApO2cuYWRkKCJhcmd1bWVudHMiLG5ldyBHZChoKSk7dmFyIHI9ZWIoZyxjKTtpZihyIGluc3RhbmNlb2YgVGEpcmV0dXJuIHIudHlwZT09PQoicmV0dXJuIj9yLmRhdGE6cn19KCkpfWZ1bmN0aW9uIHhlKGEpe3ZhciBiPXRoaXMuZXZhbHVhdGUoYSksYz10aGlzLlQ7aWYoeWUmJiFjLmhhcyhiKSl0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoYisiIGlzIG5vdCBkZWZpbmVkLiIpO3JldHVybiBjLmdldChiKX0KZnVuY3Rpb24gemUoYSxiKXt2YXIgYyxkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpO2lmKGQ9PT12b2lkIDB8fGQ9PT1udWxsKXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6IENhbm5vdCByZWFkIHByb3BlcnRpZXMgb2YgIitkKyIgKHJlYWRpbmcgJyIrZSsiJykiKSk7aWYoZCBpbnN0YW5jZW9mIGtifHxkIGluc3RhbmNlb2YgU2R8fGQgaW5zdGFuY2VvZiBHZHx8ZCBpbnN0YW5jZW9mIEtkKWM9ZC5nZXQoZSk7ZWxzZSBpZih0eXBlb2YgZD09PSJzdHJpbmciKWU9PT0ibGVuZ3RoIj9jPWQubGVuZ3RoOkZkKGUpJiYoYz1kW2VdKTtlbHNlIGlmKGQgaW5zdGFuY2VvZiBQZClyZXR1cm47cmV0dXJuIGN9ZnVuY3Rpb24gQWUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKT50aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIEJlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk+PXRoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIENlKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYik7YyBpbnN0YW5jZW9mIFBkJiYoYz1jLmdldFZhbHVlKCkpO2QgaW5zdGFuY2VvZiBQZCYmKGQ9ZC5nZXRWYWx1ZSgpKTtyZXR1cm4gYz09PWR9ZnVuY3Rpb24gRGUoYSxiKXtyZXR1cm4hQ2UuY2FsbCh0aGlzLGEsYil9ZnVuY3Rpb24gRWUoYSxiLGMpe3ZhciBkPVtdO3RoaXMuZXZhbHVhdGUoYSk/ZD10aGlzLmV2YWx1YXRlKGIpOmMmJihkPXRoaXMuZXZhbHVhdGUoYykpO3ZhciBlPWViKHRoaXMuVCxkKTtpZihlIGluc3RhbmNlb2YgVGEpcmV0dXJuIGV9dmFyIHllPSExOwpmdW5jdGlvbiBGZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpPHRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gR2UoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKTw9dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBIZSgpe2Zvcih2YXIgYT1uZXcgR2QsYj0wO2I8YXJndW1lbnRzLmxlbmd0aDtiKyspe3ZhciBjPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKTthLnB1c2goYyl9cmV0dXJuIGF9ZnVuY3Rpb24gSWUoKXtmb3IodmFyIGE9bmV3IGtiLGI9MDtiPGFyZ3VtZW50cy5sZW5ndGgtMTtiKz0yKXt2YXIgYz1TdHJpbmcodGhpcy5ldmFsdWF0ZShhcmd1bWVudHNbYl0pKSxkPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2IrMV0pO2Euc2V0KGMsZCl9cmV0dXJuIGF9ZnVuY3Rpb24gSmUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSV0aGlzLmV2YWx1YXRlKGIpfQpmdW5jdGlvbiBLZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpKnRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gTGUoYSl7cmV0dXJuLXRoaXMuZXZhbHVhdGUoYSl9ZnVuY3Rpb24gTWUoYSl7cmV0dXJuIXRoaXMuZXZhbHVhdGUoYSl9ZnVuY3Rpb24gTmUoYSxiKXtyZXR1cm4ha2UuY2FsbCh0aGlzLGEsYil9ZnVuY3Rpb24gT2UoKXtyZXR1cm4gbnVsbH1mdW5jdGlvbiBQZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpfHx0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIFFlKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKTt0aGlzLmV2YWx1YXRlKGIpO3JldHVybiBjfWZ1bmN0aW9uIFJlKGEpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIFNlKCl7cmV0dXJuIE9hLmFwcGx5KDAsYXJndW1lbnRzKX1mdW5jdGlvbiBUZShhKXtyZXR1cm4gbmV3IFRhKCJyZXR1cm4iLHRoaXMuZXZhbHVhdGUoYSkpfQpmdW5jdGlvbiBVZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpO2lmKGQ9PT1udWxsfHxkPT09dm9pZCAwKXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6IENhbid0IHNldCBwcm9wZXJ0eSAiK2UrIiBvZiAiK2QrIi4iKSk7KGQgaW5zdGFuY2VvZiBLZHx8ZCBpbnN0YW5jZW9mIEdkfHxkIGluc3RhbmNlb2Yga2IpJiZkLnNldChTdHJpbmcoZSksZik7cmV0dXJuIGZ9ZnVuY3Rpb24gVmUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKS10aGlzLmV2YWx1YXRlKGIpfQpmdW5jdGlvbiBXZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpO2lmKCFBcnJheS5pc0FycmF5KGUpfHwhQXJyYXkuaXNBcnJheShmKSl0aHJvdyBFcnJvcigiRXJyb3I6IE1hbGZvcm1lZCBzd2l0Y2ggaW5zdHJ1Y3Rpb24uIik7Zm9yKHZhciBnLGg9ITEsbD0wO2w8ZS5sZW5ndGg7bCsrKWlmKGh8fGQ9PT10aGlzLmV2YWx1YXRlKGVbbF0pKWlmKGc9dGhpcy5ldmFsdWF0ZShmW2xdKSxnIGluc3RhbmNlb2YgVGEpe3ZhciBuPWcudHlwZTtpZihuPT09ImJyZWFrIilyZXR1cm47aWYobj09PSJyZXR1cm4ifHxuPT09ImNvbnRpbnVlIilyZXR1cm4gZ31lbHNlIGg9ITA7aWYoZi5sZW5ndGg9PT1lLmxlbmd0aCsxJiYoZz10aGlzLmV2YWx1YXRlKGZbZi5sZW5ndGgtMV0pLGcgaW5zdGFuY2VvZiBUYSYmKGcudHlwZT09PSJyZXR1cm4ifHxnLnR5cGU9PT0iY29udGludWUiKSkpcmV0dXJuIGd9CmZ1bmN0aW9uIFhlKGEsYixjKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKT90aGlzLmV2YWx1YXRlKGIpOnRoaXMuZXZhbHVhdGUoYyl9ZnVuY3Rpb24gWWUoYSl7dmFyIGI9dGhpcy5ldmFsdWF0ZShhKTtyZXR1cm4gYiBpbnN0YW5jZW9mIEtkPyJmdW5jdGlvbiI6dHlwZW9mIGJ9ZnVuY3Rpb24gWmUoKXtmb3IodmFyIGE9dGhpcy5ULGI9MDtiPGFyZ3VtZW50cy5sZW5ndGg7YisrKXt2YXIgYz1hcmd1bWVudHNbYl07dHlwZW9mIGMhPT0ic3RyaW5nInx8YS5hZGQoYyx2b2lkIDApfX0KZnVuY3Rpb24gJGUoYSxiLGMsZCl7dmFyIGU9dGhpcy5ldmFsdWF0ZShkKTtpZih0aGlzLmV2YWx1YXRlKGMpKXt2YXIgZj1lYih0aGlzLlQsZSk7aWYoZiBpbnN0YW5jZW9mIFRhKXtpZihmLnR5cGU9PT0iYnJlYWsiKXJldHVybjtpZihmLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gZn19Zm9yKDt0aGlzLmV2YWx1YXRlKGEpOyl7dmFyIGc9ZWIodGhpcy5ULGUpO2lmKGcgaW5zdGFuY2VvZiBUYSl7aWYoZy50eXBlPT09ImJyZWFrIilicmVhaztpZihnLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gZ310aGlzLmV2YWx1YXRlKGIpfX1mdW5jdGlvbiBhZihhKXtyZXR1cm5+TnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpfWZ1bmN0aW9uIGJmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKTw8TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGNmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKT4+TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfQpmdW5jdGlvbiBkZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk+Pj5OdW1iZXIodGhpcy5ldmFsdWF0ZShiKSl9ZnVuY3Rpb24gZWYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpJk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBmZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSleTnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGdmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKXxOdW1iZXIodGhpcy5ldmFsdWF0ZShiKSl9ZnVuY3Rpb24gaGYoKXt9CmZ1bmN0aW9uIGtmKGEsYixjKXt0cnl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShiKTtpZihkIGluc3RhbmNlb2YgVGEpcmV0dXJuIGR9Y2F0Y2goaCl7aWYoIShoIGluc3RhbmNlb2YgYmImJmguU24pKXRocm93IGg7dmFyIGU9dGhpcy5ULndiKCk7YSE9PSIiJiYoaCBpbnN0YW5jZW9mIGJiJiYoaD1oLnZvKSxlLmFkZChhLG5ldyBQZChoKSkpO3ZhciBmPXRoaXMuZXZhbHVhdGUoYyksZz1lYihlLGYpO2lmKGcgaW5zdGFuY2VvZiBUYSlyZXR1cm4gZ319ZnVuY3Rpb24gbGYoYSxiKXt2YXIgYyxkO3RyeXtkPXRoaXMuZXZhbHVhdGUoYSl9Y2F0Y2goZil7aWYoIShmIGluc3RhbmNlb2YgYmImJmYuU24pKXRocm93IGY7Yz1mfXZhciBlPXRoaXMuZXZhbHVhdGUoYik7aWYoZSBpbnN0YW5jZW9mIFRhKXJldHVybiBlO2lmKGMpdGhyb3cgYztpZihkIGluc3RhbmNlb2YgVGEpcmV0dXJuIGR9O3ZhciBuZj1mdW5jdGlvbigpe3RoaXMuSD1uZXcgZ2I7bWYodGhpcyl9O25mLnByb3RvdHlwZS5leGVjdXRlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLkgucmsoYSl9O3ZhciBtZj1mdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihjLGQpe3ZhciBlPW5ldyBMZChTdHJpbmcoYyksZCk7ZS5aYSgpO3ZhciBmPVN0cmluZyhjKTthLkguSC5zZXQoZixlKTtkYi5zZXQoZixlKX07YigibWFwIixJZSk7YigiYW5kIix0ZCk7YigiY29udGFpbnMiLHdkKTtiKCJlcXVhbHMiLHVkKTtiKCJvciIsdmQpO2IoInN0YXJ0c1dpdGgiLHhkKTtiKCJ2YXJpYWJsZSIseWQpfTtuZi5wcm90b3R5cGUuUWI9ZnVuY3Rpb24oYSl7dGhpcy5ILlFiKGEpfTt2YXIgcGY9ZnVuY3Rpb24oKXt0aGlzLks9ITE7dGhpcy5IPW5ldyBnYjtvZih0aGlzKTt0aGlzLks9ITB9O3BmLnByb3RvdHlwZS5leGVjdXRlPWZ1bmN0aW9uKGEpe3JldHVybiBxZih0aGlzLkgucmsoYSkpfTt2YXIgcmY9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBxZihhLkguSnEoYixjKSl9O3BmLnByb3RvdHlwZS5aYT1mdW5jdGlvbigpe3RoaXMuSC5aYSgpfTsKdmFyIG9mPWZ1bmN0aW9uKGEpe3ZhciBiPWZ1bmN0aW9uKGMsZCl7dmFyIGU9U3RyaW5nKGMpLGY9bmV3IExkKGUsZCk7Zi5aYSgpO2EuSC5ILnNldChlLGYpO2RiLnNldChlLGYpfTtiKDAsWmQpO2IoMSwkZCk7YigyLGFlKTtiKDMsYmUpO2IoNTYsZWYpO2IoNTcsYmYpO2IoNTgsYWYpO2IoNTksZ2YpO2IoNjAsY2YpO2IoNjEsZGYpO2IoNjIsZmYpO2IoNTMsY2UpO2IoNCxkZSk7Yig1LGVlKTtiKDY4LGtmKTtiKDUyLGZlKTtiKDYsZ2UpO2IoNDksaGUpO2IoNyxIZSk7Yig4LEllKTtiKDksZWUpO2IoNTAsaWUpO2IoMTAsamUpO2IoMTIsa2UpO2IoMTMsbGUpO2IoNjcsbGYpO2IoNTEsd2UpO2IoNDcsb2UpO2IoNTQscGUpO2IoNTUscWUpO2IoNjMsdmUpO2IoNjQscmUpO2IoNjUsdGUpO2IoNjYsdWUpO2IoMTUseGUpO2IoMTYsemUpO2IoMTcsemUpO2IoMTgsQWUpO2IoMTksQmUpO2IoMjAsQ2UpO2IoMjEsRGUpO2IoMjIsRWUpO2IoMjMsRmUpO2IoMjQsR2UpO2IoMjUsSmUpO2IoMjYsCktlKTtiKDI3LExlKTtiKDI4LE1lKTtiKDI5LE5lKTtiKDQ1LE9lKTtiKDMwLFBlKTtiKDMyLFFlKTtiKDMzLFFlKTtiKDM0LFJlKTtiKDM1LFJlKTtiKDQ2LFNlKTtiKDM2LFRlKTtiKDQzLFVlKTtiKDM3LFZlKTtiKDM4LFdlKTtiKDM5LFhlKTtiKDQwLFllKTtiKDQ0LGhmKTtiKDQxLFplKTtiKDQyLCRlKX07cGYucHJvdG90eXBlLmplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSC5qZSgpfTtwZi5wcm90b3R5cGUuUWI9ZnVuY3Rpb24oYSl7dGhpcy5ILlFiKGEpfTtwZi5wcm90b3R5cGUuc2Q9ZnVuY3Rpb24oYSl7dGhpcy5ILnNkKGEpfTsKZnVuY3Rpb24gcWYoYSl7aWYoYSBpbnN0YW5jZW9mIFRhfHxhIGluc3RhbmNlb2YgS2R8fGEgaW5zdGFuY2VvZiBHZHx8YSBpbnN0YW5jZW9mIGtifHxhIGluc3RhbmNlb2YgU2R8fGEgaW5zdGFuY2VvZiBQZHx8YT09PW51bGx8fGE9PT12b2lkIDB8fHR5cGVvZiBhPT09InN0cmluZyJ8fHR5cGVvZiBhPT09Im51bWJlciJ8fHR5cGVvZiBhPT09ImJvb2xlYW4iKXJldHVybiBhfTt2YXIgc2Y9ZnVuY3Rpb24oYSl7dGhpcy5tZXNzYWdlPWF9O2Z1bmN0aW9uIHRmKGEpe2EucXY9ITA7cmV0dXJuIGF9O3ZhciB1Zj10ZihmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ibnVtYmVyIn0pLHZmPXRmKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifSksd2Y9dGYoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09ImJvb2xlYW4ifSk7ZnVuY3Rpb24geGYoYSl7dmFyIGI9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2FdO3JldHVybiBiPT09dm9pZCAwP25ldyBzZigiVmFsdWUgIithKyIgY2FuIG5vdCBiZSBlbmNvZGVkIGluIHdlYi1zYWZlIGJhc2U2NCBkaWN0aW9uYXJ5LiIpOmJ9O2Z1bmN0aW9uIHlmKGEpe3N3aXRjaChhKXtjYXNlIDE6cmV0dXJuIjEiO2Nhc2UgMjpjYXNlIDQ6cmV0dXJuIjAiO2RlZmF1bHQ6cmV0dXJuIi0ifX07dmFyIHpmPS9eWzEtOWEtekEtWl8tXVsxLTlhLWNdWzEtOWEtdl1cZCQvO2Z1bmN0aW9uIEFmKGEsYil7Zm9yKHZhciBjPSIiLGQ9ITA7YT43Oyl7dmFyIGU9YSYzMTthPj49NTtkP2Q9ITE6ZXw9MzI7Yz0iIit4ZihlKStjfWE8PD0yO2R8fChhfD0zMik7cmV0dXJuIGM9IiIreGYoYXxiKStjfWZ1bmN0aW9uIEJmKGEsYil7cmV0dXJuIGI9PT12b2lkIDB8fGI9PT0wPyIiOiIiK0FmKGEsMSkreGYoYil9CmZ1bmN0aW9uIENmKGEsYil7dmFyIGM7dmFyIGQ9YS5oaSxlPWEuYms7ZD09PXZvaWQgMD9jPSIiOihlfHwoZT0wKSxjPSIiK0FmKDEsMSkreGYoZDw8MnxlKSk7dmFyIGY9IjQiK2MrQmYoMixhLnFyKSxnLGg9YS5JbztnPWgmJnpmLnRlc3QoaCk/IiIrQWYoMywyKStoOiIiO3ZhciBsO3ZhciBuPWEuY3RpZDtpZihuJiZiKXt2YXIgcD1BZig1LDMpLHE9bi5zcGxpdCgiLSIpLHI9cVswXS50b1VwcGVyQ2FzZSgpO2lmKHIhPT0iR1RNIiYmciE9PSJPUFQiKWw9IiI7ZWxzZXt2YXIgdD1xWzFdO2w9IiIrcCt4ZigxK3QubGVuZ3RoKSsoYS5Mc3x8MCkrdH19ZWxzZSBsPSIiO3ZhciB1PWEuY2Fub25pY2FsSWQsdj1hLm1jLHg9YS56dix5PWYrZytCZig0LGEuRG8pK2wrQmYoNixhLkR0KSsodT8iIitBZig3LDMpK3hmKHUubGVuZ3RoKSt1OiIiKSsodj8iIitBZig4LDMpK3hmKHYubGVuZ3RoKSt2OiIiKSsoeD8iIitBZig5LDMpK3hmKHgubGVuZ3RoKSt4OiIiKSx6O3ZhciBDPWEuenI7Qz0KQz09PXZvaWQgMD97fTpDO2Zvcih2YXIgRD1bXSxJPW0oT2JqZWN0LmtleXMoQykpLEc9SS5uZXh0KCk7IUcuZG9uZTtHPUkubmV4dCgpKXt2YXIgTj1HLnZhbHVlO0RbTnVtYmVyKE4pXT1DW05dfWlmKEQubGVuZ3RoKXt2YXIgUz1BZigxMCwzKSxXO2lmKEQubGVuZ3RoPT09MClXPXhmKDApO2Vsc2V7Zm9yKHZhciBlYT1bXSxqYT0wLGZhPSExLHNhPTA7c2E8RC5sZW5ndGg7c2ErKyl7ZmE9ITA7dmFyIGRhPXNhJTY7RFtzYV0mJihqYXw9MTw8ZGEpO2RhPT09NSYmKGVhLnB1c2goeGYoamEpKSxqYT0wLGZhPSExKX1mYSYmZWEucHVzaCh4ZihqYSkpO1c9ZWEuam9pbigiIil9dmFyIG1hPVc7ej0iIitTK3hmKG1hLmxlbmd0aCkrbWF9ZWxzZSB6PSIiO3ZhciBQYT1hLlVzLEZhPWEubnQ7cmV0dXJuIHkreisoUGE/IiIrQWYoMTEsMykreGYoUGEubGVuZ3RoKStQYToiIikrKEZhPyIiK0FmKDEzLDMpK3hmKEZhLmxlbmd0aCkrRmE6IiIpK0JmKDE0LGEuRXQpK0JmKDE1LGEucnYpK0JmKDE2LAphLkF2KX07ZnVuY3Rpb24gRGYoYSl7Zm9yKHZhciBiPVtdLGM9MCxkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWEuY2hhckNvZGVBdChkKTtlPDEyOD9iW2MrK109ZTooZTwyMDQ4P2JbYysrXT1lPj42fDE5MjooKGUmNjQ1MTIpPT01NTI5NiYmZCsxPGEubGVuZ3RoJiYoYS5jaGFyQ29kZUF0KGQrMSkmNjQ1MTIpPT01NjMyMD8oZT02NTUzNisoKGUmMTAyMyk8PDEwKSsoYS5jaGFyQ29kZUF0KCsrZCkmMTAyMyksYltjKytdPWU+PjE4fDI0MCxiW2MrK109ZT4+MTImNjN8MTI4KTpiW2MrK109ZT4+MTJ8MjI0LGJbYysrXT1lPj42JjYzfDEyOCksYltjKytdPWUmNjN8MTI4KX1yZXR1cm4gYn07ZnVuY3Rpb24gRWYoYSxiKXtmb3IodmFyIGM9cWIoYiksZD1uZXcgVWludDhBcnJheShjLmxlbmd0aCksZT0wO2U8Yy5sZW5ndGg7ZSsrKWRbZV09Yy5jaGFyQ29kZUF0KGUpO2lmKGQubGVuZ3RoIT09MzIpdGhyb3cgRXJyb3IoIktleSBpcyBub3QgMzIgYnl0ZXMuIik7cmV0dXJuIEZmKGEsZCl9ZnVuY3Rpb24gRmYoYSxiKXtpZihhPT09IiIpcmV0dXJuIiI7dmFyIGM9WmIoYSksZD1iLnNsaWNlKC0yKSxlPVtdLmNvbmNhdCh3KGQpLHcoYykpLm1hcChmdW5jdGlvbihnLGgpe3JldHVybiBnXmJbaCViLmxlbmd0aF19KSxmPW5ldyBVaW50OEFycmF5KFtdLmNvbmNhdCh3KGUpLHcoZCkpKTtyZXR1cm4gcGIoU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShTdHJpbmcsdyhmKSkpLnJlcGxhY2UoL1wuKyQvLCIiKX07dmFyIEdmPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiKXtyZXR1cm57dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gYn19fXJldHVybntjcDphKCJjb25zZW50IiksWms6YSgiY29udmVydF9jYXNlX3RvIiksYWw6YSgiY29udmVydF9mYWxzZV90byIpLGJsOmEoImNvbnZlcnRfbnVsbF90byIpLGVwOmEoImNvbnZlcnRfdG9fYm9vbGVhbiIpLGFoOmEoImNvbnZlcnRfdG9fbnVtYmVyIiksZmw6YSgiY29udmVydF90cnVlX3RvIiksaWw6YSgiY29udmVydF91bmRlZmluZWRfdG8iKSxZdDphKCJkZWJ1Z19tb2RlX21ldGFkYXRhIiksWWI6YSgiZnVuY3Rpb24iKSxSbTphKCJpbnN0YW5jZV9uYW1lIiksTnE6YSgibGl2ZV9vbmx5IiksT3E6YSgibWFsd2FyZV9kaXNhYmxlZCIpLE1FVEFEQVRBOmEoIm1ldGFkYXRhIiksUnE6YSgib3JpZ2luYWxfYWN0aXZpdHlfaWQiKSxUdTphKCJvcmlnaW5hbF92ZW5kb3JfdGVtcGxhdGVfaWQiKSxTdTphKCJvbmNlX29uX2xvYWQiKSxRcTphKCJvbmNlX3Blcl9ldmVudCIpLAprbjphKCJvbmNlX3Blcl9sb2FkIiksVnU6YSgicHJpb3JpdHlfb3ZlcnJpZGUiKSxZdTphKCJyZXNwZWN0ZWRfY29uc2VudF90eXBlcyIpLHRuOmEoInNldHVwX3RhZ3MiKSx5ajphKCJ0YWdfaWQiKSxEbjphKCJ0ZWFyZG93bl90YWdzIikscGw6YSgiZGlzYWJsZWRfaW5fZ29vZ2xlX21vZGUiKSxGcTphKCJnZW5lcmF0ZWRfdGFnZ2luZ19tZXRhZGF0YSIpfX0oKTtmdW5jdGlvbiBIZihhLGIpe3ZhciBjPXt9O2NbR2YuWWJdPSJfXyIrYTtmb3IodmFyIGQgaW4gYiliLmhhc093blByb3BlcnR5KGQpJiYoY1sidnRwXyIrZF09YltkXSk7cmV0dXJuIGN9O2Z1bmN0aW9uIElmKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGMsZDtyZXR1cm4oKGM9ZGF0YSk9PW51bGw/MDooZD1jLmJsb2IpPT1udWxsPzA6ZC5oYXNPd25Qcm9wZXJ0eShhKSk/ISFkYXRhLmJsb2JbYV06Yn1mdW5jdGlvbiBFKGEpe3ZhciBiO2I9Yj09PXZvaWQgMD8iIjpiO3ZhciBjLGQ7cmV0dXJuKChjPWRhdGEpPT1udWxsPzA6KGQ9Yy5ibG9iKT09bnVsbD8wOmQuaGFzT3duUHJvcGVydHkoYSkpP1N0cmluZyhkYXRhLmJsb2JbYV0pOmJ9ZnVuY3Rpb24gSmYoYSl7dmFyIGIsYztyZXR1cm4oKGI9ZGF0YSk9PW51bGw/MDooYz1iLmJsb2IpPT1udWxsPzA6Yy5oYXNPd25Qcm9wZXJ0eShhKSk/TnVtYmVyKGRhdGEuYmxvYlthXSk6MH1mdW5jdGlvbiBLZihhKXt2YXIgYjtiPWI9PT12b2lkIDA/W106Yjt2YXIgYyxkLGU9KGM9ZGF0YSk9PW51bGw/dm9pZCAwOihkPWMuYmxvYik9PW51bGw/dm9pZCAwOmRbYV07cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZTpifQpmdW5jdGlvbiBMZihhKXt2YXIgYjtiPWI9PT12b2lkIDA/IiI6Yjt2YXIgYz1NZig0Nik7cmV0dXJuIGMmJihjPT1udWxsPzA6Yy5oYXNPd25Qcm9wZXJ0eShhKSk/U3RyaW5nKGNbYV0pOmJ9ZnVuY3Rpb24gTmYoYSxiKXt2YXIgYz1NZig0Nik7cmV0dXJuIGMmJihjPT1udWxsPzA6Yy5oYXNPd25Qcm9wZXJ0eShhKSk/TnVtYmVyKGNbYV0pOmJ9ZnVuY3Rpb24gTWYoYSl7dmFyIGIsYztyZXR1cm4oYj1kYXRhKT09bnVsbD92b2lkIDA6KGM9Yi5ibG9iKT09bnVsbD92b2lkIDA6Y1thXX07dmFyIE9mPWZ1bmN0aW9uKGEsYixjKXt2YXIgZDtkPUVycm9yLmNhbGwodGhpcyxjKTt0aGlzLm1lc3NhZ2U9ZC5tZXNzYWdlOyJzdGFjayJpbiBkJiYodGhpcy5zdGFjaz1kLnN0YWNrKTt0aGlzLnBlcm1pc3Npb25JZD1hO3RoaXMucGFyYW1ldGVycz1iO3RoaXMubmFtZT0iUGVybWlzc2lvbkVycm9yIn07d2EoT2YsRXJyb3IpO09mLnByb3RvdHlwZS5nZXRNZXNzYWdlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWVzc2FnZX07ZnVuY3Rpb24gUGYoYSxiKXtpZihBcnJheS5pc0FycmF5KGEpKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoYSwiY29udGV4dCIse3ZhbHVlOntsaW5lOmJbMF19fSk7Zm9yKHZhciBjPTE7YzxhLmxlbmd0aDtjKyspUGYoYVtjXSxiW2NdKX19O2Z1bmN0aW9uIFFmKCl7cmV0dXJuIGZ1bmN0aW9uKGEsYil7dmFyIGM7dmFyIGQ9UmY7YSBpbnN0YW5jZW9mIGJiPyhhLkg9ZCxjPWEpOmM9bmV3IGJiKGEsZCk7dmFyIGU9YztiJiZlLksucHVzaChiKTt0aHJvdyBlO319ZnVuY3Rpb24gUmYoYSl7aWYoIWEubGVuZ3RoKXJldHVybiBhO2EucHVzaCh7aWQ6Im1haW4iLGxpbmU6MH0pO2Zvcih2YXIgYj1hLmxlbmd0aC0xO2I+MDtiLS0pQWIoYVtiXS5pZCkmJmEuc3BsaWNlKGIrKywxKTtmb3IodmFyIGM9YS5sZW5ndGgtMTtjPjA7Yy0tKWFbY10ubGluZT1hW2MtMV0ubGluZTthLnNwbGljZSgwLDEpO3JldHVybiBhfTt2YXIgU2Y9UmVnRXhwKCJbXjAtOVxcListXSIsImciKSxUZj1SZWdFeHAoIlteMC05XFwsKy1dIiwiZyIpLFVmPVJlZ0V4cCgiW14wLTkrLV0iLCJnIik7CmZ1bmN0aW9uIFZmKGEsYil7aWYodHlwZW9mIGE9PT0ibnVtYmVyIilyZXR1cm4gYTt2YXIgYz1TdHJpbmcoYSksZDtpZihiPT09IkFVVE9NQVRJQyIpe3ZhciBlPShjLm1hdGNoKC9cLi9nKXx8W10pLmxlbmd0aCxmPShjLm1hdGNoKC8sL2cpfHxbXSkubGVuZ3RoLGc9Ik5PTkUiO2lmKGU+MCYmZj4wKXt2YXIgaD1jLmxhc3RJbmRleE9mKCIuIik+Yy5sYXN0SW5kZXhPZigiLCIpO2gmJmU9PT0xP2c9IlBFUklPRCI6aHx8ZiE9PTF8fChnPSJDT01NQSIpfWVsc2UgZT09PTE/Zz0oYy5zcGxpdCgiLiIpWzFdLm1hdGNoKC9bMC05XS9nKXx8W10pLmxlbmd0aCE9PTM/IlBFUklPRCI6Ik5PTkUiOmY9PT0xJiYoZz0oYy5zcGxpdCgiLCIpWzFdLm1hdGNoKC9bMC05XS9nKXx8W10pLmxlbmd0aCE9PTM/IkNPTU1BIjoiTk9ORSIpO2Q9Z31lbHNlIGQ9Yj09PSJDT01NQSI/IkNPTU1BIjoiUEVSSU9EIjt2YXIgbCxuO2Q9PT0iUEVSSU9EIj8obD0iLiIsbj1TZik6ZD09PSJDT01NQSI/KGw9IiwiLApuPVRmKToobD0iIixuPVVmKTt2YXIgcD1jLnJlcGxhY2UobiwiIik7aWYobCE9PSIiJiZwLnNwbGl0KGwpLmxlbmd0aD4yKXJldHVybiBhO3ZhciBxPXAucmVwbGFjZSgvLC9nLCIuIik7aWYocT09PSIiKXJldHVybiBhO3ZhciByPU51bWJlcihxKTtyZXR1cm4gaXNOYU4ocik/YTpyfTt2YXIgV2Y9W10sWGY9e307ZnVuY3Rpb24gWWYoYSl7cmV0dXJuIFdmW2FdPT09dm9pZCAwPyExOldmW2FdfTt2YXIgWmY9ZnVuY3Rpb24oKXt0aGlzLkg9e319LCRmPWZ1bmN0aW9uKGEsYixjKXt2YXIgZDsoZD1hLkgpW2JdIT1udWxsfHwoZFtiXT1bXSk7YS5IW2JdLnB1c2goZnVuY3Rpb24oKXtyZXR1cm4gYy5hcHBseShudWxsLHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSl9KX07ZnVuY3Rpb24gYWcoYSxiLGMsZCl7aWYoYSlmb3IodmFyIGU9MDtlPGEubGVuZ3RoO2UrKyl7dmFyIGY9dm9pZCAwLGc9IkEgcG9saWN5IGZ1bmN0aW9uIGRlbmllZCB0aGUgcGVybWlzc2lvbiByZXF1ZXN0Ijt0cnl7Zj1hW2VdKGIsYyxkKSxnKz0iLiJ9Y2F0Y2goaCl7Zz10eXBlb2YgaD09PSJzdHJpbmciP2crKCI6ICIraCk6aCBpbnN0YW5jZW9mIEVycm9yP2crKCI6ICIraC5tZXNzYWdlKTpnKyIuIn1pZighZil0aHJvdyBuZXcgT2YoYyxkLGcpO319CmZ1bmN0aW9uIGJnKGEsYil7dmFyIGM9Y2coZGcuSCxiLGZ1bmN0aW9uKCl7cmV0dXJue319KTt0cnl7cmV0dXJuIGMoYSksITB9Y2F0Y2goZCl7cmV0dXJuITF9fWZ1bmN0aW9uIGNnKGEsYixjKXtyZXR1cm4gZnVuY3Rpb24oZCl7aWYoZCl7dmFyIGU9YS5IW2RdLGY9YS5ILmFsbDtpZihlfHxmKXt2YXIgZz1jLmFwcGx5KHZvaWQgMCxbZF0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpO2FnKGUsYixkLGcpO2FnKGYsYixkLGcpfX19fTt2YXIgZ2c9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXM7dGhpcy5LPXt9O3RoaXMuSD1uZXcgWmY7dmFyIGU9e30sZj17fSxnPWNnKHRoaXMuSCxhLGZ1bmN0aW9uKGgpe3JldHVybiBoJiZlW2hdP2VbaF0uYXBwbHkodm9pZCAwLFtoXS5jb25jYXQodyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKSk6e319KTtHYihiLGZ1bmN0aW9uKGgsbCl7ZnVuY3Rpb24gbihxKXt2YXIgcj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7aWYoIXBbcV0pdGhyb3cgZWcocSx7fSwiVGhlIHJlcXVlc3RlZCBhZGRpdGlvbmFsIHBlcm1pc3Npb24gIitxKyIgaXMgbm90IGNvbmZpZ3VyZWQuIik7Zy5hcHBseShudWxsLFtxXS5jb25jYXQodyhyKSkpfXZhciBwPXt9O0diKGwsZnVuY3Rpb24ocSxyKXt2YXIgdD1mZyhxLHIsYyk7cFtxXT10LmFzc2VydDtlW3FdfHwoZVtxXT10LmFhKTt0Lk9uJiYhZltxXSYmKGZbcV09dC5Pbil9KTtkLktbaF09ZnVuY3Rpb24ocSxyKXt2YXIgdD1wW3FdO2lmKCF0KXRocm93IGVnKHEsCnt9LCJUaGUgcmVxdWVzdGVkIHBlcm1pc3Npb24gIitxKyIgaXMgbm90IGNvbmZpZ3VyZWQuIik7dmFyIHU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApO3QuYXBwbHkodm9pZCAwLHUpO2cuYXBwbHkodm9pZCAwLHUpO3ZhciB2PWZbcV07diYmdi5hcHBseShudWxsLFtuXS5jb25jYXQodyh1LnNsaWNlKDEpKSkpfX0pfSxoZz1mdW5jdGlvbihhKXtyZXR1cm4gZGcuS1thXXx8ZnVuY3Rpb24oKXt9fTsKZnVuY3Rpb24gZmcoYSxiLGMpe3RyeXt2YXIgZD1jWyJfXyIrYV07aWYoIWQpdGhyb3cgRXJyb3IoIk5vIGZ1bmN0aW9uIGZvdW5kIGZvciBwZXJtaXNzaW9uOiAiK2ErIi4iKTt2YXIgZT1IZihhLGIpO2UudnRwX3Blcm1pc3Npb25OYW1lPWE7ZS52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yPWVnO2RlbGV0ZSBlW0dmLlliXTtyZXR1cm4gZChlKX1jYXRjaChmKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGcpe3Rocm93IG5ldyBPZihnLHt9LCJQZXJtaXNzaW9uICIrZysiIGlzIHVua25vd24uIik7fSxhYTpmdW5jdGlvbigpe3Rocm93IG5ldyBPZihhLHt9LCJQZXJtaXNzaW9uICIrYSsiIGlzIHVua25vd24uIik7fX19fWZ1bmN0aW9uIGVnKGEsYixjKXtyZXR1cm4gbmV3IE9mKGEsYixjKX07dmFyIGlnPUUoNSksamc9RSgyMCksa2c9RSgxKSxsZz0hMTt2YXIgbWc9e307bWcuUG89SWYoMjkpO21nLktyPUlmKDI4KTtmdW5jdGlvbiBuZyhhKXt2YXIgYj0xLGMsZCxlO2lmKGEpZm9yKGI9MCxkPWEubGVuZ3RoLTE7ZD49MDtkLS0pZT1hLmNoYXJDb2RlQXQoZCksYj0oYjw8NiYyNjg0MzU0NTUpK2UrKGU8PDE0KSxjPWImMjY2MzM4MzA0LGI9YyE9PTA/Yl5jPj4yMTpiO3JldHVybiBifTt2YXIgb2c9ZnVuY3Rpb24oYSl7dGhpcy5jYWNoZT1hfTtvZy5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3ZhciBiPW5nKGEpLGM9dGhpcy5jYWNoZS5nZXQoYik7aWYoIWMpcmV0dXJue3Byb21pc2U6dm9pZCAwLEtqOjB9O2lmKERhdGUubm93KCk+PWMudGltZXN0YW1wKzlFNSlyZXR1cm4gdGhpcy5jYWNoZS5kZWxldGUoYikse3Byb21pc2U6dm9pZCAwLEtqOjN9O3ZhciBkPWMucmVzb2x2ZWRWYWx1ZT8yOjE7cmV0dXJue3Byb21pc2U6Yy5yZXNvbHZlZFZhbHVlP1Byb21pc2UucmVzb2x2ZShjLnJlc29sdmVkVmFsdWUpOmMucHJvbWlzZSxLajpkfX07b2cucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3ZhciBjPXtwcm9taXNlOmIscmVzb2x2ZWRWYWx1ZTp2b2lkIDAsdGltZXN0YW1wOkRhdGUubm93KCl9O3RoaXMuY2FjaGUuc2V0KG5nKGEpLGMpO2IudGhlbihmdW5jdGlvbihkKXtjLnJlc29sdmVkVmFsdWU9ZH0pfTtmdW5jdGlvbiBwZyhhKXtzd2l0Y2goYSl7Y2FzZSAwOmJyZWFrO2Nhc2UgOTpyZXR1cm4iZTQiO2Nhc2UgNjpyZXR1cm4iZTUiO2Nhc2UgMTQ6cmV0dXJuImU2IjtkZWZhdWx0OnJldHVybiJlNyJ9fTt2YXIgRj17RDp7WGE6ImFkX3BlcnNvbmFsaXphdGlvbiIsa2E6ImFkX3N0b3JhZ2UiLG1hOiJhZF91c2VyX2RhdGEiLHJhOiJhbmFseXRpY3Nfc3RvcmFnZSIsbmM6InJlZ2lvbiIsc2E6ImNvbnNlbnRfdXBkYXRlZCIsWWc6IndhaXRfZm9yX3VwZGF0ZSIsZWg6ImVuZHBvaW50X3R5cGUiLHFwOiJhcHBfcmVtb3ZlIixycDoiYXBwX3N0b3JlX3JlZnVuZCIsdHA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY2FuY2VsIix1cDoiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9jb252ZXJ0Iix2cDoiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9yZW5ldyIsd3A6ImNvbnNlbnRfdXBkYXRlIix4cDoiY29udmVyc2lvbiIsdmw6ImFkZF9wYXltZW50X2luZm8iLHdsOiJhZGRfc2hpcHBpbmdfaW5mbyIseGU6ImFkZF90b19jYXJ0Iix5ZToicmVtb3ZlX2Zyb21fY2FydCIseGw6InZpZXdfY2FydCIsQWQ6ImJlZ2luX2NoZWNrb3V0IixldToiZ2VuZXJhdGVfbGVhZCIsemU6InNlbGVjdF9pdGVtIixvYzoidmlld19pdGVtX2xpc3QiLApRYzoic2VsZWN0X3Byb21vdGlvbiIscWM6InZpZXdfcHJvbW90aW9uIixJYjoicHVyY2hhc2UiLEFlOiJyZWZ1bmQiLHJjOiJ2aWV3X2l0ZW0iLHlsOiJhZGRfdG9fd2lzaGxpc3QiLHlwOiJleGNlcHRpb24iLHpwOiJmaXJzdF9vcGVuIixBcDoiZmlyc3RfdmlzaXQiLHdhOiJndGFnLmNvbmZpZyIsSmI6Imd0YWcuZ2V0IixCcDoiaW5fYXBwX3B1cmNoYXNlIixzYzoicGFnZV92aWV3IixDcDoic2NyZWVuX3ZpZXciLERwOiJzZXNzaW9uX3N0YXJ0IixFcDoic291cmNlX3VwZGF0ZSIsRnA6InRpbWluZ19jb21wbGV0ZSIsR3A6InRyYWNrX3NvY2lhbCIseWY6InVzZXJfZW5nYWdlbWVudCIsSHA6InVzZXJfaWRfdXBkYXRlIixmaDoiYnJhaWRfbGlua19kZWNvcmF0aW9uX3NvdXJjZSIsZ2g6ImJyYWlkX3N0b3JhZ2Vfc291cmNlIixCZDoiZ2NsaWRfbGlua19kZWNvcmF0aW9uX3NvdXJjZSIsQ2Q6ImdjbGlkX3N0b3JhZ2Vfc291cmNlIixTYjoiZ2NsZ2IiLGxiOiJnY2xpZCIsemw6ImdjbGlkX2xlbiIsCkJlOiJnY2xncyIsQ2U6ImdjbGxwIixEZToiZ2Nsc3QiLG1iOiJhZHNfZGF0YV9yZWRhY3Rpb24iLHpmOiJnYWRfc291cmNlIixBZjoiZ2FkX3NvdXJjZV9zcmMiLERkOiJnY2xpZF91cmwiLEFsOiJnY2xzcmMiLEJmOiJnYnJhaWQiLEVlOiJ3YnJhaWQiLFJjOiJhbGxvd19hZF9wZXJzb25hbGl6YXRpb25fc2lnbmFscyIscmk6ImFsbG93X2N1c3RvbV9zY3JpcHRzIixoaDoiYWxsb3dfZGlzcGxheV9mZWF0dXJlcyIsc2k6ImFsbG93X2VuaGFuY2VkX2NvbnZlcnNpb25zIixTYzoiYWxsb3dfZ29vZ2xlX3NpZ25hbHMiLHVpOiJhbGxvd19pbnRlcmVzdF9ncm91cHMiLElwOiJhcHBfaWQiLEpwOiJhcHBfaW5zdGFsbGVyX2lkIixLcDoiYXBwX25hbWUiLExwOiJhcHBfdmVyc2lvbiIsRWQ6ImF1aWQiLGZ1OiJhdXRvX2RldGVjdGlvbl9lbmFibGVkIixCbDoiYXV0b19ldmVudCIsQ2w6ImF3X3JlbWFya2V0aW5nIixpaDoiYXdfcmVtYXJrZXRpbmdfb25seSIsQ2Y6ImRpc2NvdW50IixEZjoiYXdfZmVlZF9jb3VudHJ5IiwKRWY6ImF3X2ZlZWRfbGFuZ3VhZ2UiLEhhOiJpdGVtcyIsRmY6ImF3X21lcmNoYW50X2lkIix3aToiYXdfYmFza2V0X3R5cGUiLEdmOiJjYW1wYWlnbl9jb250ZW50IixIZjoiY2FtcGFpZ25faWQiLElmOiJjYW1wYWlnbl9tZWRpdW0iLEpmOiJjYW1wYWlnbl9uYW1lIixLZjoiY2FtcGFpZ24iLExmOiJjYW1wYWlnbl9zb3VyY2UiLE1mOiJjYW1wYWlnbl90ZXJtIixLYjoiY2xpZW50X2lkIixEbDoicm5kIix4aToiY29uc2VudF91cGRhdGVfdHlwZSIsTXA6ImNvbnRlbnRfZ3JvdXAiLE5wOiJjb250ZW50X3R5cGUiLEZkOiJjb252ZXJzaW9uX2Nvb2tpZV9wcmVmaXgiLHlpOiJjb252ZXJzaW9uX2lkIix1YzoiY29udmVyc2lvbl9saW5rZXIiLEhkOiJjb252ZXJzaW9uX2xpbmtlcl9kaXNhYmxlZCIsRmU6ImNvbnZlcnNpb25fYXBpIix6aToiXyZyY2IiLGpoOiJjb29raWVfZGVwcmVjYXRpb24iLExiOiJjb29raWVfZG9tYWluIixDYjoiY29va2llX2V4cGlyZXMiLFRiOiJjb29raWVfZmxhZ3MiLApJZDoiY29va2llX25hbWUiLHZjOiJjb29raWVfcGF0aCIsbmI6ImNvb2tpZV9wcmVmaXgiLEpkOiJjb29raWVfdXBkYXRlIixUYzoiY291bnRyeSIsZWI6ImN1cnJlbmN5IixHZToiY3VzdG9tZXJfbGlmZXRpbWVfdmFsdWUiLGtoOiJjdXN0b21lcl90eXBlIixIZToiY3VzdG9tX21hcCIsQWk6ImdjbGRjX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLEJpOiJnY2xkY19zdG9yYWdlX3NvdXJjZSIsTmY6ImdjbGRjIixLZDoiZGNsaWQiLEVsOiJkZWJ1Z19tb2RlIixPYToiZGV2ZWxvcGVyX2lkIixPcDoiZGlzYWJsZV9tZXJjaGFudF9yZXBvcnRlZF9wdXJjaGFzZXMiLFVjOiJkY19jdXN0b21fcGFyYW1zIixQcDoiZGNfbmF0dXJhbF9zZWFyY2giLFFwOiJkeW5hbWljX2V2ZW50X3NldHRpbmdzIixGbDoiYWZmaWxpYXRpb24iLG1oOiJjaGVja291dF9vcHRpb24iLENpOiJjaGVja291dF9zdGVwIixHbDoiY291cG9uIixPZjoiaXRlbV9saXN0X25hbWUiLERpOiJsaXN0X25hbWUiLFJwOiJwcm9tb3Rpb25zIiwKTGQ6InNoaXBwaW5nIixIbDoidGF4IixuaDoiZW5nYWdlbWVudF90aW1lX21zZWMiLG9oOiJlbmhhbmNlZF9jbGllbnRfaWQiLFNwOiJlbmhhbmNlZF9jb252ZXJzaW9ucyIsZ3U6ImVuaGFuY2VkX2NvbnZlcnNpb25zX2F1dG9tYXRpY19zZXR0aW5ncyIsSWU6ImVzdGltYXRlZF9kZWxpdmVyeV9kYXRlIixQZjoiZXZlbnRfY2FsbGJhY2siLFRwOiJldmVudF9jYXRlZ29yeSIsVmM6ImV2ZW50X2RldmVsb3Blcl9pZF9zdHJpbmciLE1kOiJldmVudF9pZCIsRWk6Il9ldmVudF9qb2luX2lkIixVcDoiZXZlbnRfbGFiZWwiLFViOiJldmVudCIsSWw6Il8mYWUiLEZpOiJldmVudF9zZXR0aW5ncyIscGg6ImV2ZW50X3RpbWVvdXQiLFZwOiJkZXNjcmlwdGlvbiIsV3A6ImZhdGFsIixYcDoiZXhwZXJpbWVudHMiLE5kOiJleHRfY2xpZW50X2lkIixHaToiZmlyZWJhc2VfaWQiLFFmOiJmaXJzdF9wYXJ0eV9jb2xsZWN0aW9uIixSZjoiX3hfMjAiLFZiOiJfeF8xOSIsWXA6ImZsaWdodF9lcnJvcl9jb2RlIiwKWnA6ImZsaWdodF9lcnJvcl9tZXNzYWdlIixIaToiZmxfYWN0aXZpdHlfY2F0ZWdvcnkiLElpOiJmbF9hY3Rpdml0eV9ncm91cCIscWg6ImZsX2FkdmVydGlzZXJfaWQiLEppOiJtYXRjaF9pZCIsSmw6ImZsX3JhbmRvbV9udW1iZXIiLEtsOiJ0cmFuIixMbDoidSIscmg6ImdhY19nY2xpZCIsSmU6ImdhY193YnJhaWQiLE1sOiJnYWNfd2JyYWlkX211bHRpcGxlX2NvbnZlcnNpb25zIixhcToiZ2FfcmVzdHJpY3RfZG9tYWluIixObDoiZ2FfdGVtcF9jbGllbnRfaWQiLGJxOiJnYV90ZW1wX2VjaWQiLEtlOiJnZHByX2FwcGxpZXMiLHNoOiJfZ3RfbWV0YWRhdGEiLE9sOiJnZW9fZ3JhbnVsYXJpdHkiLFNmOiJ2YWx1ZV9jYWxsYmFjayIsVGY6InZhbHVlX2tleSIsVGE6Imdvb2dsZV9hbmFseXNpc19wYXJhbXMiLExlOiJfZ29vZ2xlX25nIixjcToiX29ubyIsVWY6Imdvb2dsZV9zaWduYWxzIixmcToiZ29vZ2xlX3RsZCIsdGg6ImdwcF9zaWQiLHVoOiJncHBfc3RyaW5nIixPZDoiZ3JvdXBzIiwKUGw6ImdzYV9leHBlcmltZW50X2lkIixWZjoiZ3RhZ19ldmVudF9mZWF0dXJlX3VzYWdlIixRbDoiZ3RtX3VwIixNZToiaWZyYW1lX3N0YXRlIixXZjoiaWdub3JlX3JlZmVycmVyIixSbDoiaW50ZXJuYWxfdHJhZmZpY19yZXN1bHRzIixTbDoiX2lzX2ZwbSIsWWM6ImlzX2xlZ2FjeV9jb252ZXJ0ZWQiLFpjOiJpc19sZWdhY3lfbG9hZGVkIixLaToiaXNfcGFzc3Rocm91Z2giLFBkOiJfbHBzIix0YjoibGFuZ3VhZ2UiLExpOiJsZWdhY3lfZGV2ZWxvcGVyX2lkX3N0cmluZyIsRGI6ImxpbmtlciIsWGY6ImFjY2VwdF9pbmNvbWluZyIsd2M6ImRlY29yYXRlX2Zvcm1zIixBYToiZG9tYWlucyIsYWQ6InVybF9wb3NpdGlvbiIsUWQ6Im1lcmNoYW50X2ZlZWRfbGFiZWwiLFJkOiJtZXJjaGFudF9mZWVkX2xhbmd1YWdlIixTZDoibWVyY2hhbnRfaWQiLFRsOiJtZXRob2QiLGdxOiJuYW1lIixVbDoibmF2aWdhdGlvbl90eXBlIixOZToibmV3X2N1c3RvbWVyIixNaToibm9uX2ludGVyYWN0aW9uIiwKaHE6Im9wdGltaXplX2lkIixWbDoicGFnZV9ob3N0bmFtZSIsWWY6InBhZ2VfcGF0aCIsVWE6InBhZ2VfcmVmZXJyZXIiLE1iOiJwYWdlX3RpdGxlIixpcToicGFzc2VuZ2VycyIsV2w6InBob25lX2NvbnZlcnNpb25fY2FsbGJhY2siLGpxOiJwaG9uZV9jb252ZXJzaW9uX2NvdW50cnlfY29kZSIsWGw6InBob25lX2NvbnZlcnNpb25fY3NzX2NsYXNzIixrcToicGhvbmVfY29udmVyc2lvbl9pZHMiLFlsOiJwaG9uZV9jb252ZXJzaW9uX251bWJlciIsWmw6InBob25lX2NvbnZlcnNpb25fb3B0aW9ucyIsbHE6Il9wbGF0aW51bV9yZXF1ZXN0X3N0YXR1cyIsbXE6Il9wcm90ZWN0ZWRfYXVkaWVuY2VfZW5hYmxlZCIsd2g6InF1YW50aXR5Iix4aDoicmVkYWN0X2RldmljZV9pbmZvIixhbToicmVmZXJyYWxfZXhjbHVzaW9uX2RlZmluaXRpb24iLGh1OiJfcmVxdWVzdF9zdGFydF90aW1lIixXYjoicmVzdHJpY3RlZF9kYXRhX3Byb2Nlc3NpbmciLG5xOiJyZXRva2VuIixvcToic2FtcGxlX3JhdGUiLApOaToic2NyZWVuX25hbWUiLGJkOiJzY3JlZW5fcmVzb2x1dGlvbiIsYm06Il9zY3JpcHRfc291cmNlIixwcToic2VhcmNoX3Rlcm0iLFRkOiJzZW5kX3BhZ2VfdmlldyIsWGI6InNlbmRfdG8iLE9pOiJzZXJ2ZXJfY29udGFpbmVyXzNwX2VucmljaG1lbnQiLGRkOiJzZXJ2ZXJfY29udGFpbmVyX3VybCIscXE6InNlc3Npb25fYXR0cmlidXRlc19lbmNvZGVkIix5aDoic2Vzc2lvbl9kdXJhdGlvbiIsemg6InNlc3Npb25fZW5nYWdlZCIsUGk6InNlc3Npb25fZW5nYWdlZF90aW1lIix4Yzoic2Vzc2lvbl9pZCIsQWg6InNlc3Npb25fbnVtYmVyIixaZjoiX3NoYXJlZF91c2VyX2lkIixVZDoiZGVsaXZlcnlfcG9zdGFsX2NvZGUiLGl1OiJfdGFnX2ZpcmluZ19kZWxheSIsanU6Il90YWdfZmlyaW5nX3RpbWUiLGt1OiJ0ZW1wb3JhcnlfY2xpZW50X2lkIixRaToidGVzdG9ubHkiLHJxOiJfdGltZXpvbmUiLFBlOiJ0b3Btb3N0X3VybCIsUWU6InRyYWNraW5nX2lkIixSaToidHJhZmZpY190eXBlIiwKUGE6InRyYW5zYWN0aW9uX2lkIixkbToidHJhbnNhY3Rpb25faWRfc291cmNlIix5YzoidHJhbnNwb3J0X3VybCIsc3E6InRyaXBfdHlwZSIsVmQ6InVwZGF0ZSIsemM6InVybF9wYXNzdGhyb3VnaCIsZm06InVwdGdzIixjZzoiX3VzZXJfYWdlbnRfYXJjaGl0ZWN0dXJlIixkZzoiX3VzZXJfYWdlbnRfYml0bmVzcyIsZWc6Il91c2VyX2FnZW50X2Z1bGxfdmVyc2lvbl9saXN0IixmZzoiX3VzZXJfYWdlbnRfbW9iaWxlIixnZzoiX3VzZXJfYWdlbnRfbW9kZWwiLGhnOiJfdXNlcl9hZ2VudF9wbGF0Zm9ybSIsaWc6Il91c2VyX2FnZW50X3BsYXRmb3JtX3ZlcnNpb24iLGpnOiJfdXNlcl9hZ2VudF93b3c2NCIsQWM6InVzZXJfZGF0YSIsZ206InVzZXJfZGF0YV9hdXRvX2xhdGVuY3kiLGhtOiJ1c2VyX2RhdGFfYXV0b19tZXRhIixpbToidXNlcl9kYXRhX2F1dG9fbXVsdGkiLGptOiJ1c2VyX2RhdGFfYXV0b19zZWxlY3RvcnMiLGttOiJ1c2VyX2RhdGFfYXV0b19zdGF0dXMiLEJjOiJ1c2VyX2RhdGFfbW9kZSIsCmxtOiJ1c2VyX2RhdGFfc2V0dGluZ3MiLGZiOiJ1c2VyX2lkIixXZDoidXNlcl9wcm9wZXJ0aWVzIixvbToiX3VzZXJfcmVnaW9uIixrZzoidXNfcHJpdmFjeV9zdHJpbmciLFFhOiJ2YWx1ZSIscW06IndicmFpZF9tdWx0aXBsZV9jb252ZXJzaW9ucyIsZWQ6Il9mcG1fcGFyYW1ldGVycyIsV2k6Il9ob3N0X25hbWUiLFZtOiJfaW5fcGFnZV9jb21tYW5kIixZaToiX2lwX292ZXJyaWRlIixabToiX2lzX3Bhc3N0aHJvdWdoX2NpZCIsSmg6Il9tZWFzdXJlbWVudF90eXBlIixkZToibm9uX3BlcnNvbmFsaXplZF9hZHMiLG9qOiJfc3N0X3BhcmFtZXRlcnMiLFlxOiJzZ3RtX2dlb191c2VyX2NvdW50cnkiLEdkOiJjb252ZXJzaW9uX2xhYmVsIix6YToicGFnZV9sb2NhdGlvbiIsV2M6Il9leHRyYWN0ZWRfZGF0YSIsWGM6Imdsb2JhbF9kZXZlbG9wZXJfaWRfc3RyaW5nIixPZToidGNfcHJpdmFjeV9zdHJpbmcifX07dmFyIEg9e0o6e1NvOiJhYm9ydF93aXRob3V0X2ZhaWwiLGtpOiJhY2NlcHRfYnlfZGVmYXVsdCIsQms6ImFkZF90YWdfdGltaW5nIixEazoiYWRzX2NvbnNlbnRfZ3JhbnRlZCIsdmQ6ImFkc19ldmVudF9wYWdlX3ZpZXciLHdkOiJhbGxvd19hZF9wZXJzb25hbGl6YXRpb24iLFF0OiJhdXRvX2V2ZW50IixLazoiYmF0Y2hfb25fbmF2aWdhdGlvbiIsWGc6ImJpc2NvdHRpX2pvaW5faWQiLFBrOiJjbGllbnRfaWRfc291cmNlIix1ZjoiY29uc2VudF9ldmVudF9pZCIsdmY6ImNvbnNlbnRfcHJpb3JpdHlfaWQiLFN0OiJjb25zZW50X3N0YXRlIixzYToiY29uc2VudF91cGRhdGVkIix3ZjoiY29udmVyc2lvbl9saW5rZXJfZW5hYmxlZCIsVHQ6ImNvbnZlcnNpb25fbWFya2luZ19jYWxsZWQiLEdhOiJjb29raWVfb3B0aW9ucyIsb2w6ImRjX3JhbmRvbSIsWnQ6ImRlZHVwZV9pZCIsUGM6ImVtX2V2ZW50IixidToiZW5kcG9pbnRfZm9yX2RlYnVnIix0bDoiZW5oYW5jZWRfY2xpZW50X2lkX3NvdXJjZSIsCnBwOiJlbmhhbmNlZF9tYXRjaF9yZXN1bHQiLHJtOiJldWlkX2xvZ2dlZF9pbl9zdGF0ZSIsbGc6ImV1aWRfbW9kZV9lbmFibGVkIix0cToiZXZlbnRfcHJvdmVuYW5jZSIsbXU6ImV2ZW50X3NvdXJjZSIsRWI6ImV2ZW50X3N0YXJ0X3RpbWVzdGFtcF9tcyIsd206ImV2ZW50X3VzYWdlIixDaDoiZXh0cmFfdGFnX2V4cGVyaW1lbnRfaWRzIixwdToiYWRkX3BhcmFtZXRlciIsVWk6ImNvdW50aW5nX21ldGhvZCIsRGg6InNlbmRfYXNfaWZyYW1lIixxdToicGFyYW1ldGVyX29yZGVyIixFaDoicGFyc2VkX3RhcmdldCIsc3U6ImZvcm1fZXZlbnRfY2FuY2VsZWQiLEFxOiJnYTRfY29sbGVjdGlvbl9zdWJkb21haW4iLFZpOiJnYTRfcmVxdWVzdF9mbGFncyIsTm06ImdicmFpZF9jb29raWVfbWFya2VkIixRbToiZ3RtX2V4dHJhY3RlZF9kYXRhIixDYzoiaGFuZGxlX2ludGVybmFsbHkiLHV1OiJoYXNfZ2FfY29udmVyc2lvbl9jb25zZW50cyIsZGE6ImhpdF90eXBlIixEYzoiaGl0X3R5cGVfb3ZlcnJpZGUiLApIcToiaWdub3JlX2R1cGVfY29uZmlnIixPdToiaXNfY29uZmlnX2NvbW1hbmQiLEdoOiJpc19jb25zZW50X3VwZGF0ZSIsbWc6ImlzX2NvbnZlcnNpb24iLFdtOiJpc19lY29tbWVyY2UiLFhtOiJpc19lY19jbV9zcGxpdCIsYWU6ImlzX2V4dGVybmFsX2V2ZW50IixuZzoiaXNfZmlyc3RfdmlzaXQiLFltOiJpc19maXJzdF92aXNpdF9jb252ZXJzaW9uIixaaToiaXNfZmxfZmFsbGJhY2tfY29udmVyc2lvbl9mbG93X2FsbG93ZWQiLGZkOiJpc19mcG1fZW5jcnlwdGlvbiIsYWo6ImlzX2ZwbV9zcGxpdCIsb2I6ImlzX2djcF9icm93c2VyIixiajoiaXNfZ29vZ2xlX21lYXN1cmVtZW50X2FsbG93ZWQiLGNqOiJpc19nb29nbGVfc2lnbmFsc19lbmFibGVkIixiZToiaXNfbWVyY2hhbnRfY2VudGVyIixIaDoiaXNfbmV3X3RvX3NpdGUiLEVjOiJpc19wZXJzb25hbGl6YXRpb24iLGRqOiJpc19zZXJ2ZXJfc2lkZV9kZXN0aW5hdGlvbiIsVGU6ImlzX3Nlc3Npb25fc3RhcnQiLGJuOiJpc19zZXNzaW9uX3N0YXJ0X2NvbnZlcnNpb24iLApQdToiaXNfc2d0bV9nYV9hZHNfY29udmVyc2lvbl9zdHVkeV9jb250cm9sX2dyb3VwIixRdToiaXNfc2d0bV9wcmVoaXQiLGRuOiJpc19zZ3RtX3NlcnZpY2Vfd29ya2VyIixJaDoiaXNfc3BsaXRfY29udmVyc2lvbiIsSXE6ImlzX3N5biIsRmM6ImlzX3Rlc3RfZXZlbnQiLG9nOiJqb2luX2lkIixlajoiam9pbl9lbGFwc2VkIixwZzoiam9pbl90aW1lcl9zZWMiLGduOiJsb2NhbF9zdG9yYWdlX2F3X2NvbnZlcnNpb25fY291bnRlcnMiLFdlOiJ0dW5uZWxfdXBkYXRlZCIsVXU6InByZWhpdF9mb3JfcmV0cnkiLFd1OiJwcm9taXNlcyIsWHU6InJlY29yZF9hd19sYXRlbmN5IixYZToicmVkYWN0X2Fkc19kYXRhIixZZToicmVkYWN0X2NsaWNrX2lkcyIscG46InJlbWFya2V0aW5nX29ubHkiLGxqOiJzZW5kX2NjbV9wYXJhbGxlbF9waW5nIixoZDoic2VuZF9kb3VibGVjbGlja19qb2luIixNaDoic2VuZF9mcG1fZ2VvX2pvaW4iLE5oOiJzZW5kX2ZwbV9nb29nbGVfam9pbiIsWnU6InNlbmRfY2NtX3BhcmFsbGVsX3Rlc3RfcGluZyIsCnJuOiJzZW5kX2dvb2dsZV9tZWFzdXJlbWVudCIscmc6InNlbmRfdGxkX2pvaW4iLHNnOiJzZW5kX3RvX2Rlc3RpbmF0aW9ucyIsbWo6InNlbmRfdG9fdGFyZ2V0cyIsc246InNlbmRfdXNlcl9kYXRhX2hpdCIscGo6InNlcnZpY2Vfd29ya2VyX2NvbnRleHQiLE5iOiJzb3VyY2VfY2Fub25pY2FsX2lkIixKYToic3BlY3VsYXRpdmUiLHluOiJzcGVjdWxhdGl2ZV9pbl9tZXNzYWdlIixBbjoic3VwcHJlc3Nfc2NyaXB0X2xvYWQiLEJuOiJzeW5fb3JfbW9kIix6ajoidHJhbnNpZW50X2Vjc2lkIix0ZzoidHJhbnNtaXNzaW9uX3R5cGUiLFlhOiJ1c2VyX2RhdGEiLGd2OiJ1c2VyX2RhdGFfZnJvbV9hdXRvbWF0aWMiLGh2OiJ1c2VyX2RhdGFfZnJvbV9hdXRvbWF0aWNfZ2V0dGVyIixHbjoidXNlcl9kYXRhX2Zyb21fY29kZSIsaXI6InVzZXJfZGF0YV9mcm9tX21hbnVhbCIsanY6InVzZXJfZGF0YV9tb2RlIix1ZzoidXNlcl9pZF91cGRhdGVkIn19O3ZhciBKPXtVOntrcDoxLG1wOjIsRW46Myxubjo0LHFsOjUscmw6NixFcTo3LG5wOjgsRHE6OSxqcDoxMCxocDoxMSx4bjoxMix2bjoxMyxOazoxNCxVbzoxNSxXbzoxNixobjoxNyxzbDoxOCxmbjoxOSxscDoyMCxQcToyMSxhcDoyMixWbzoyMyxYbzoyNCxubDoyNSxMazoyNixlcjoyNyxKbToyOCxVbToyOSxUbTozMCxTbTozMSxNbTozMixLbTozMyxMbTozNCxHbTozNSxGbTozNixIbTozNyxJbTozOCxCcTozOSxDcTo0MCxVcTo0MX19O0ouVVtKLlUua3BdPSJDUkVBVEVfRVZFTlRfU09VUkNFIjtKLlVbSi5VLm1wXT0iRURJVF9FVkVOVCI7Si5VW0ouVS5Fbl09IlRSQUZGSUNfVFlQRSI7Si5VW0ouVS5ubl09IlJFRkVSUkFMX0VYQ0xVU0lPTiI7Si5VW0ouVS5xbF09IkVDT01NRVJDRV9GUk9NX0dUTV9UQUciO0ouVVtKLlUucmxdPSJFQ09NTUVSQ0VfRlJPTV9HVE1fVUFfU0NIRU1BIjtKLlVbSi5VLkVxXT0iR0FfU0VORCI7Si5VW0ouVS5ucF09IkVNX0ZPUk0iOwpKLlVbSi5VLkRxXT0iR0FfR0FNX0xJTksiO0ouVVtKLlUuanBdPSJDUkVBVEVfRVZFTlRfQVVUT19QQUdFX1BBVEgiO0ouVVtKLlUuaHBdPSJDUkVBVEVEX0VWRU5UIjtKLlVbSi5VLnhuXT0iU0lERUxPQURFRCI7Si5VW0ouVS52bl09IlNHVE1fTEVHQUNZX0NPTkZJR1VSQVRJT04iO0ouVVtKLlUuTmtdPSJDQ0RfRU1fRVZFTlQiO0ouVVtKLlUuVW9dPSJBVVRPX1JFREFDVF9FTUFJTCI7Si5VW0ouVS5Xb109IkFVVE9fUkVEQUNUX1FVRVJZX1BBUkFNIjtKLlVbSi5VLmhuXT0iTVVMVElQTEVfUEFHRVZJRVdfRlJPTV9DT05GSUciO0ouVVtKLlUuc2xdPSJFTV9FVkVOVF9TRU5UX0JFRk9SRV9DT05GSUciO0ouVVtKLlUuZm5dPSJMT0FERURfVklBX0NTVF9PUl9TSURFTE9BRElORyI7Si5VW0ouVS5scF09IkRFQ09ERURfUEFSQU1fTUFUQ0giO0ouVVtKLlUuUHFdPSJOT05fREVDT0RFRF9QQVJBTV9NQVRDSCI7Si5VW0ouVS5hcF09IkNDRF9FVkVOVF9TR1RNIjsKSi5VW0ouVS5Wb109IkFVVE9fUkVEQUNUX0VNQUlMX1NHVE0iO0ouVVtKLlUuWG9dPSJBVVRPX1JFREFDVF9RVUVSWV9QQVJBTV9TR1RNIjtKLlVbSi5VLm5sXT0iREFJTFlfTElNSVRfUkVBQ0hFRCI7Si5VW0ouVS5Ma109IkJVUlNUX0xJTUlUX1JFQUNIRUQiO0ouVVtKLlUuZXJdPSJTSEFSRURfVVNFUl9JRF9TRVRfQUZURVJfUkVRVUVTVCI7Si5VW0ouVS5KbV09IkdBNF9NVUxUSVBMRV9TRVNTSU9OX0NPT0tJRVMiO0ouVVtKLlUuVW1dPSJJTlZBTElEX0dBNF9TRVNTSU9OX0NPVU5UIjtKLlVbSi5VLlRtXT0iSU5WQUxJRF9HQTRfTEFTVF9FVkVOVF9USU1FU1RBTVAiO0ouVVtKLlUuU21dPSJJTlZBTElEX0dBNF9KT0lOX1RJTUVSIjtKLlVbSi5VLk1tXT0iR0E0X1NUQUxFX1NFU1NJT05fQ09PS0lFX1NFTEVDVEVEIjtKLlVbSi5VLkttXT0iR0E0X1NFU1NJT05fQ09PS0lFX0dTMV9SRUFEIjtKLlVbSi5VLkxtXT0iR0E0X1NFU1NJT05fQ09PS0lFX0dTMl9SRUFEIjsKSi5VW0ouVS5HbV09IkdBNF9ETF9QQVJBTV9SRUNPVkVSWV9BVkFJTEFCTEUiO0ouVVtKLlUuRm1dPSJHQTRfRExfUEFSQU1fUkVDT1ZFUllfQVBQTElFRCI7Si5VW0ouVS5IbV09IkdBNF9HT09HTEVfTUVBU1VSRU1FTlRfQUxMT1dFRCI7Si5VW0ouVS5JbV09IkdBNF9HT09HTEVfU0lHTkFMU19FTkFCTEVEIjtKLlVbSi5VLkJxXT0iR0E0X0ZBTExCQUNLX1JFUVVFU1QiO0ouVVtKLlUuQ3FdPSJHQV9BRFNfTElOS19CRUZPUkVfQ09OVkVSU0lPTl9NQVJLSU5HIjtKLlVbSi5VLlVxXT0iUExBVElOVU1fRUxJR0lCTEUiO3ZhciB4Zz17fSx5Zz0oeGcudWFhPSEwLHhnLnVhYj0hMCx4Zy51YWZ2bD0hMCx4Zy51YW1iPSEwLHhnLnVhbT0hMCx4Zy51YXA9ITAseGcudWFwdj0hMCx4Zy51YXc9ITAseGcpOwp2YXIgRWc9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YSxlPWJbY107aWYoIUNnLmV4ZWMoZSkpdGhyb3cgRXJyb3IoIkludmFsaWQga2V5IHdpbGRjYXJkIik7dmFyIGY9ZS5pbmRleE9mKCIuKiIpLGc9ZiE9PS0xJiZmPT09ZS5sZW5ndGgtMixoPWc/ZS5zbGljZSgwLGUubGVuZ3RoLTIpOmUsbDthOmlmKGQubGVuZ3RoPT09MClsPSExO2Vsc2V7Zm9yKHZhciBuPWQuc3BsaXQoIi4iKSxwPTA7cDxuLmxlbmd0aDtwKyspaWYoIURnLmV4ZWMobltwXSkpe2w9ITE7YnJlYWsgYX1sPSEwfWlmKCFsfHxoLmxlbmd0aD5kLmxlbmd0aHx8IWcmJmQubGVuZ3RoIT09ZS5sZW5ndGg/MDpnP1NiKGQsaCkmJihkPT09aHx8ZC5jaGFyQXQoaC5sZW5ndGgpPT09Ii4iKTpkPT09aClyZXR1cm4hMH1yZXR1cm4hMX0sRGc9L15bYS16JF9dW1x3LSRdKiQvaSxDZz0vXig/OlthLXpfJF1bYS16LV8kMC05XSpcLikqW2Etel8kXVthLXotXyQwLTldKig/OlwuXCopPyQvaTsKdmFyIEZnPVsibWF0Y2hlcyIsIndlYmtpdE1hdGNoZXNTZWxlY3RvciIsIm1vek1hdGNoZXNTZWxlY3RvciIsIm1zTWF0Y2hlc1NlbGVjdG9yIiwib01hdGNoZXNTZWxlY3RvciJdO2Z1bmN0aW9uIEdnKGEsYil7aWYoIWEpcmV0dXJuITE7dHJ5e2Zvcih2YXIgYz0wO2M8RmcubGVuZ3RoO2MrKyl7dmFyIGQ9RmdbY107aWYoYVtkXSE9bnVsbClyZXR1cm4gYVtkXShiKX19Y2F0Y2goZSl7fXJldHVybiExfWZ1bmN0aW9uIEhnKGEsYil7dmFyIGM9U3RyaW5nKGEpLGQ9U3RyaW5nKGIpLGU9Yy5sZW5ndGgtZC5sZW5ndGg7cmV0dXJuIGU+PTAmJmMuaW5kZXhPZihkLGUpPT09ZX1mdW5jdGlvbiBJZyhhLGIpe3JldHVybiBTdHJpbmcoYSkuc3BsaXQoIiwiKS5pbmRleE9mKFN0cmluZyhiKSk+PTB9CmZ1bmN0aW9uIEpnKGEsYixjLGQpe3ZhciBlPWM/ImkiOnZvaWQgMDt0cnl7dmFyIGY9U3RyaW5nKGIpK1N0cmluZyhlKSxnPWQ9PW51bGw/dm9pZCAwOmQuZ2V0KGYpO2d8fChnPW5ldyBSZWdFeHAoYixlKSxkPT1udWxsfHxkLnNldChmLGcpKTtyZXR1cm4gZy50ZXN0KGEpfWNhdGNoKGgpe3JldHVybiExfX1mdW5jdGlvbiBLZyhhLGIpe3JldHVybiBTdHJpbmcoYSkuaW5kZXhPZihTdHJpbmcoYikpPj0wfWZ1bmN0aW9uIExnKGEsYil7cmV0dXJuIFN0cmluZyhhKT09PVN0cmluZyhiKX1mdW5jdGlvbiBNZyhhLGIpe3JldHVybiBOdW1iZXIoYSk+PU51bWJlcihiKX1mdW5jdGlvbiBOZyhhLGIpe3JldHVybiBOdW1iZXIoYSk8PU51bWJlcihiKX1mdW5jdGlvbiBPZyhhLGIpe3JldHVybiBOdW1iZXIoYSk+TnVtYmVyKGIpfWZ1bmN0aW9uIFBnKGEsYil7cmV0dXJuIE51bWJlcihhKTxOdW1iZXIoYil9CmZ1bmN0aW9uIFFnKGEsYil7cmV0dXJuIFNiKFN0cmluZyhhKSxTdHJpbmcoYikpfTtmdW5jdGlvbiBYZyhhKXt2YXIgYj1hLnNlYXJjaDtyZXR1cm4gYS5wcm90b2NvbCsiLy8iK2EuaG9zdG5hbWUrYS5wYXRobmFtZSsoYj9iKyImcmljaHNzdHNzZSI6Ij9yaWNoc3N0c3NlIil9O3ZhciBZZz1mdW5jdGlvbigpe3RoaXMuUj0iIn0sJGc9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgYz1iLmZhbGxiYWNrX3VybCxkPWIuZmFsbGJhY2tfdXJsX21ldGhvZDtpZihjJiZkKXt2YXIgZT17fTtaZyhhLChlW2RdPVtjXSxlLm9wdGlvbnM9e30sZSkpfX19LGFoPWZ1bmN0aW9uKGEsYixjKXtpZihBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgZD1tKGEpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO3R5cGVvZiBmPT09InN0cmluZyImJmMoZixiKX19LFpnPWZ1bmN0aW9uKGEsYil7aWYoYilmb3IodmFyIGM9Q2QoYi5vcHRpb25zKT9iLm9wdGlvbnM6e30sZD1tKE9iamVjdC5rZXlzKGIpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZSxnPWJbZl07c3dpdGNoKGYpe2Nhc2UgInNlbmRfcGl4ZWwiOmFoKGcsYyxmdW5jdGlvbihoLGwpe3JldHVybiB2b2lkIGEuSyhoLGwpfSk7YnJlYWs7Y2FzZSAiZmV0Y2giOmFoKGcsCmMsZnVuY3Rpb24oaCxsKXtyZXR1cm4gdm9pZCBhLkgoaCxsKX0pfX19O3ZhciBiaD0vXihbYS16XVthLXowLTldKik6KCF8XD8pKFwqfHN0cmluZ3xib29sZWFufG51bWJlcnxGbnxQaXhpZU1hcHxMaXN0fE9wYXF1ZVZhbHVlKSQvaSxjaD17Rm46ImZ1bmN0aW9uIixQaXhpZU1hcDoiT2JqZWN0IixMaXN0OiJBcnJheSJ9OwpmdW5jdGlvbiBkaChhLGIpe2Zvcih2YXIgYz1bImlucHV0OiEqIl0sZD0wO2Q8Yy5sZW5ndGg7ZCsrKXt2YXIgZT1iaC5leGVjKGNbZF0pO2lmKCFlKXRocm93IEVycm9yKCJJbnRlcm5hbCBFcnJvciBpbiAiK2EpO3ZhciBmPWVbMV0sZz1lWzJdPT09IiEiLGg9ZVszXSxsPWJbZF07aWYobD09bnVsbCl7aWYoZyl0aHJvdyBFcnJvcigiRXJyb3IgaW4gIithKyIuIFJlcXVpcmVkIGFyZ3VtZW50ICIrZisiIG5vdCBzdXBwbGllZC4iKTt9ZWxzZSBpZihoIT09IioiKXt2YXIgbj10eXBlb2YgbDtsIGluc3RhbmNlb2YgS2Q/bj0iRm4iOmwgaW5zdGFuY2VvZiBHZD9uPSJMaXN0IjpsIGluc3RhbmNlb2Yga2I/bj0iUGl4aWVNYXAiOmwgaW5zdGFuY2VvZiBTZD9uPSJQaXhpZVByb21pc2UiOmwgaW5zdGFuY2VvZiBQZCYmKG49Ik9wYXF1ZVZhbHVlIik7aWYobiE9PWgpdGhyb3cgRXJyb3IoIkVycm9yIGluICIrYSsiLiBBcmd1bWVudCAiK2YrIiBoYXMgdHlwZSAiKygoY2hbbl18fG4pKyIsIHdoaWNoIGRvZXMgbm90IG1hdGNoIHJlcXVpcmVkIHR5cGUgIikrCigoY2hbaF18fGgpKyIuIikpO319fWZ1bmN0aW9uIEsoYSxiLGMpe2Zvcih2YXIgZD1bXSxlPW0oYyksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7ZyBpbnN0YW5jZW9mIEtkP2QucHVzaCgiZnVuY3Rpb24iKTpnIGluc3RhbmNlb2YgR2Q/ZC5wdXNoKCJBcnJheSIpOmcgaW5zdGFuY2VvZiBrYj9kLnB1c2goIk9iamVjdCIpOmcgaW5zdGFuY2VvZiBTZD9kLnB1c2goIlByb21pc2UiKTpnIGluc3RhbmNlb2YgUGQ/ZC5wdXNoKCJPcGFxdWVWYWx1ZSIpOmQucHVzaCh0eXBlb2YgZyl9cmV0dXJuIEVycm9yKCJBcmd1bWVudCBlcnJvciBpbiAiK2ErIi4gRXhwZWN0ZWQgYXJndW1lbnQgdHlwZXMgWyIrKGIuam9pbigiLCIpKyJdLCBidXQgcmVjZWl2ZWQgWyIpKyhkLmpvaW4oIiwiKSsiXS4iKSl9ZnVuY3Rpb24gZWgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBrYn1mdW5jdGlvbiBmaChhKXtyZXR1cm4gZWgoYSl8fGE9PT1udWxsfHxnaChhKX0KZnVuY3Rpb24gaGgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBLZH1mdW5jdGlvbiBpaChhKXtyZXR1cm4gaGgoYSl8fGE9PT1udWxsfHxnaChhKX1mdW5jdGlvbiBqaChhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEdkfWZ1bmN0aW9uIGtoKGEpe3JldHVybiBhIGluc3RhbmNlb2YgUGR9ZnVuY3Rpb24gbGgoYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyJ9ZnVuY3Rpb24gbWgoYSl7cmV0dXJuIGxoKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gbmgoYSl7cmV0dXJuIHR5cGVvZiBhPT09ImJvb2xlYW4ifWZ1bmN0aW9uIG9oKGEpe3JldHVybiBuaChhKXx8Z2goYSl9ZnVuY3Rpb24gcGgoYSl7cmV0dXJuIG5oKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gcWgoYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9ZnVuY3Rpb24gZ2goYSl7cmV0dXJuIGE9PT12b2lkIDB9O2Z1bmN0aW9uIHJoKGEpe3JldHVybiIiK2F9CmZ1bmN0aW9uIHNoKGEsYil7dmFyIGM9W107cmV0dXJuIGN9O2Z1bmN0aW9uIHRoKGEsYil7dmFyIGM9bmV3IEtkKGEsZnVuY3Rpb24oKXtmb3IodmFyIGQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApLGU9MDtlPGQubGVuZ3RoO2UrKylkW2VdPXRoaXMuZXZhbHVhdGUoZFtlXSk7dHJ5e3JldHVybiBiLmFwcGx5KHRoaXMsZCl9Y2F0Y2goZyl7dGhyb3cgY2IoZyk7fX0pO2MuWmEoKTtyZXR1cm4gY30KZnVuY3Rpb24gdWgoYSxiKXt2YXIgYz1uZXcga2IsZDtmb3IoZCBpbiBiKWlmKGIuaGFzT3duUHJvcGVydHkoZCkpe3ZhciBlPWJbZF07eWIoZSk/Yy5zZXQoZCx0aChhKyJfIitkLGUpKTpDZChlKT9jLnNldChkLHVoKGErIl8iK2QsZSkpOihBYihlKXx8emIoZSl8fHR5cGVvZiBlPT09ImJvb2xlYW4iKSYmYy5zZXQoZCxlKX1jLlphKCk7cmV0dXJuIGN9O2Z1bmN0aW9uIHdoKGEsYil7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO2lmKCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwidW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgYz17fSxkPW5ldyBrYjtyZXR1cm4gZD11aCgiQXNzZXJ0QXBpU3ViamVjdCIsCmMpfTtmdW5jdGlvbiB4aChhLGIpe2lmKCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwidW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgU2QpdGhyb3cgRXJyb3IoIkFyZ3VtZW50IGFjdHVhbCBjYW5ub3QgaGF2ZSB0eXBlIFByb21pc2UuIEFzc2VydGlvbnMgb24gYXN5bmNocm9ub3VzIGNvZGUgYXJlbid0IHN1cHBvcnRlZC4iKTt2YXIgYz17fSxkPW5ldyBrYjtyZXR1cm4gZD11aCgiQXNzZXJ0VGhhdFN1YmplY3QiLGMpfTtmdW5jdGlvbiB5aChhKXtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIGI9T2EuYXBwbHkoMCxhcmd1bWVudHMpLGM9W10sZD10aGlzLlQsZT0wO2U8Yi5sZW5ndGg7KytlKWMucHVzaChUZChiW2VdLGQpKTtyZXR1cm4gVWQoYS5hcHBseShudWxsLGMpKX19ZnVuY3Rpb24gemgoKXtmb3IodmFyIGE9TWF0aCxiPUFoLGM9e30sZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1iW2RdO2EuaGFzT3duUHJvcGVydHkoZSkmJihjW2VdPXloKGFbZV0uYmluZChhKSkpfXJldHVybiBjfTtmdW5jdGlvbiBCaChhKXtyZXR1cm4gYSE9bnVsbCYmU2IoYSwiX19jdnRfIil9O2Z1bmN0aW9uIENoKGEpe3ZhciBiO3JldHVybiBifTtmdW5jdGlvbiBEaChhKXt2YXIgYjtyZXR1cm4gYn07ZnVuY3Rpb24gRWgoYSl7dHJ5e3JldHVybiBlbmNvZGVVUkkoYSl9Y2F0Y2goYil7fX07ZnVuY3Rpb24gRmgoYSl7dHJ5e3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGEpKX1jYXRjaChiKXt9fTtmdW5jdGlvbiBHaChhLGIpe3ZhciBjPSExO3JldHVybiBjfWZ1bmN0aW9uIExoKGEpe2lmKCFtaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7fTtmdW5jdGlvbiBNaChhKXt2YXIgYj1UZChhKTtyZXR1cm4gbmcoYj8iIitiOiIiKX07ZnVuY3Rpb24gTmgoYSxiKXtpZighcWgoYSl8fCFxaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsibnVtYmVyIiwibnVtYmVyIl0sYXJndW1lbnRzKTtyZXR1cm4gRGIoYSxiKX07ZnVuY3Rpb24gT2goKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX07ZnVuY3Rpb24gUGgoYSl7aWYoYT09PW51bGwpcmV0dXJuIm51bGwiO2lmKGEgaW5zdGFuY2VvZiBHZClyZXR1cm4iYXJyYXkiO2lmKGEgaW5zdGFuY2VvZiBLZClyZXR1cm4iZnVuY3Rpb24iO2lmKGEgaW5zdGFuY2VvZiBQZCl7dmFyIGI9YS5nZXRWYWx1ZSgpO2lmKChiPT1udWxsP3ZvaWQgMDpiLmNvbnN0cnVjdG9yKT09PXZvaWQgMHx8Yi5jb25zdHJ1Y3Rvci5uYW1lPT09dm9pZCAwKXt2YXIgYz1TdHJpbmcoYik7cmV0dXJuIGMuc3Vic3RyaW5nKDgsYy5sZW5ndGgtMSl9cmV0dXJuIFN0cmluZyhiLmNvbnN0cnVjdG9yLm5hbWUpfXJldHVybiB0eXBlb2YgYX07ZnVuY3Rpb24gUWgoYSl7ZnVuY3Rpb24gYihjKXtyZXR1cm4gZnVuY3Rpb24oZCl7dHJ5e3JldHVybiBjKGQpfWNhdGNoKGUpeyhsZ3x8bWcuUG8pJiZhLmNhbGwodGhpcyxlLm1lc3NhZ2UpfX19cmV0dXJue3BhcnNlOmIoZnVuY3Rpb24oYyl7cmV0dXJuIFVkKEpTT04ucGFyc2UoYykpfSksc3RyaW5naWZ5OmIoZnVuY3Rpb24oYyl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KFRkKGMpKX0pLHB1YmxpY05hbWU6IkpTT04ifX07ZnVuY3Rpb24gUmgoYSl7cmV0dXJuIEliKFRkKGEsdGhpcy5UKSl9O2Z1bmN0aW9uIFNoKGEpe3JldHVybiBOdW1iZXIoVGQoYSx0aGlzLlQpKX07ZnVuY3Rpb24gVGgoYSl7cmV0dXJuIGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEudG9TdHJpbmcoKX07ZnVuY3Rpb24gVWgoYSxiLGMpe3ZhciBkPW51bGwsZT0hMTtyZXR1cm4gZT9kOm51bGx9O3ZhciBBaD0iZmxvb3IgY2VpbCByb3VuZCBtYXggbWluIGFicyBwb3cgc3FydCIuc3BsaXQoIiAiKTtmdW5jdGlvbiBWaCgpe3ZhciBhPXt9O3JldHVybntXcjpmdW5jdGlvbihiKXtyZXR1cm4gYS5oYXNPd25Qcm9wZXJ0eShiKT9hW2JdOnZvaWQgMH0sS286ZnVuY3Rpb24oYixjKXthW2JdPWN9LHJlc2V0OmZ1bmN0aW9uKCl7YT17fX19fWZ1bmN0aW9uIFdoKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEtkLnByb3RvdHlwZS5pbnZva2UuYXBwbHkoYSxbYl0uY29uY2F0KHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSkpfX0KZnVuY3Rpb24gWGgoYSxiKXtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSJdLGFyZ3VtZW50cyk7fQpmdW5jdGlvbiBZaChhLGIpe2lmKCFsaChhKXx8IWVoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJQaXhpZU1hcCJdLGFyZ3VtZW50cyk7fTt2YXIgWmg9e307dmFyICRoPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYjtpZihhIGluc3RhbmNlb2YgR2QpZm9yKHZhciBjPWEuRmEoKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPWNbZF07YS5oYXMoZSkmJmIuc2V0KGUsYS5nZXQoZSkpfWVsc2UgaWYoYSBpbnN0YW5jZW9mIEtkKWZvcih2YXIgZj1hLkZhKCksZz0wO2c8Zi5sZW5ndGg7ZysrKXt2YXIgaD1mW2ddO2Iuc2V0KGgsYS5nZXQoaCkpfWVsc2UgZm9yKHZhciBsPTA7bDxhLmxlbmd0aDtsKyspYi5zZXQobCxhW2xdKTtyZXR1cm4gYn07ClpoLmtleXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5GYSgpKTtyZXR1cm4gbmV3IEdkfTsKWmgudmFsdWVzPWZ1bmN0aW9uKGEpe2RoKHRoaXMuZ2V0TmFtZSgpLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIEdkfHxhIGluc3RhbmNlb2YgS2R8fHR5cGVvZiBhPT09InN0cmluZyIpYT0kaChhKTtpZihhIGluc3RhbmNlb2Yga2J8fGEgaW5zdGFuY2VvZiBTZClyZXR1cm4gbmV3IEdkKGEuaGMoKSk7cmV0dXJuIG5ldyBHZH07ClpoLmVudHJpZXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5mYygpLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gbmV3IEdkKGIpfSkpO3JldHVybiBuZXcgR2R9OwpaaC5mcmVlemU9ZnVuY3Rpb24oYSl7KGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZCkmJmEuWmEoKTtyZXR1cm4gYX07WmguZGVsZXRlPWZ1bmN0aW9uKGEsYil7aWYoYSBpbnN0YW5jZW9mIGtiJiYhYS5IYigpKXJldHVybiBhLnJlbW92ZShiKSwhMDtyZXR1cm4hMX07ZnVuY3Rpb24gTChhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkPWEuVC54YigpO2lmKCFkKXRocm93IEVycm9yKCJNaXNzaW5nIHByb2dyYW0gc3RhdGUuIik7aWYoZC5pdCl7dHJ5e2QuUm4uYXBwbHkobnVsbCxbYl0uY29uY2F0KHcoYykpKX1jYXRjaChlKXt0aHJvdyBzYigiVEFHR0lORyIsMjEpLGU7fXJldHVybn1kLlJuLmFwcGx5KG51bGwsW2JdLmNvbmNhdCh3KGMpKSl9O3ZhciBhaT1mdW5jdGlvbigpe3RoaXMuSz17fTt0aGlzLkg9e307dGhpcy5OPSEwO307YWkucHJvdG90eXBlLmdldD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuY29udGFpbnMoYSk/dGhpcy5LW2FdOnZvaWQgMDtyZXR1cm4gY307YWkucHJvdG90eXBlLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLksuaGFzT3duUHJvcGVydHkoYSl9OwphaS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjKXtpZih0aGlzLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZih0aGlzLkguaGFzT3duUHJvcGVydHkoYSkpdGhyb3cgRXJyb3IoIkF0dGVtcHRpbmcgdG8gYWRkIGFuIEFQSSB3aXRoIGFuIGV4aXN0aW5nIHByaXZhdGUgQVBJIG5hbWU6ICIrYSsiLiIpO3RoaXMuS1thXT1jP3ZvaWQgMDp5YihiKT90aChhLGIpOnVoKGEsYil9O2Z1bmN0aW9uIGJpKGEsYil7dmFyIGM9dm9pZCAwO3JldHVybiBjfTtmdW5jdGlvbiBjaSgpe3ZhciBhPXt9OwpyZXR1cm4gYX07dmFyIGRpPXt9LGVpPShkaVtGLkQuc2FdPSJnY3UiLGRpW0YuRC5laF09ImVwdCIsZGlbRi5ELlNiXT0iZ2NsZ2IiLGRpW0YuRC5sYl09ImdjbGF3IixkaVtGLkQuemxdPSJnY2xpZF9sZW4iLGRpW0YuRC5CZV09ImdjbGdzIixkaVtGLkQuQ2VdPSJnY2xscCIsZGlbRi5ELkRlXT0iZ2Nsc3QiLGRpW0YuRC5FZF09ImF1aWQiLGRpW0YuRC5CbF09ImFlIixkaVtGLkQuQ2ZdPSJkc2NudCIsZGlbRi5ELkRmXT0iZmNudHIiLGRpW0YuRC5FZl09ImZsbmciLGRpW0YuRC5GZl09Im1pZCIsZGlbRi5ELndpXT0iYnR0eXBlIixkaVtGLkQuS2JdPSJnYWNpZCIsZGlbRi5ELkdkXT0ibGFiZWwiLGRpW0YuRC5GZV09ImNhcGkiLGRpW0YuRC5qaF09InBzY2RsIixkaVtGLkQuZWJdPSJjdXJyZW5jeV9jb2RlIixkaVtGLkQuR2VdPSJ2ZGx0diIsZGlbRi5ELmtoXT0iY2xvY3QiLGRpW0YuRC5FbF09Il9kYmciLGRpW0YuRC5JZV09Im9lZGVsZCIsZGlbRi5ELlZjXT0iZWRpZCIsZGlbRi5ELk1kXT0iZXZuaWQiLApkaVtGLkQuRWldPSJldmppZCIsZGlbRi5ELk5kXT0iZXhjaWQiLGRpW0YuRC5yaF09ImdhYyIsZGlbRi5ELkplXT0iZ2FjZ2IiLGRpW0YuRC5NbF09ImdhY21jb3YiLGRpW0YuRC5LZV09ImdkcHIiLGRpW0YuRC5YY109ImdkaWQiLGRpW0YuRC5MZV09Il9uZyIsZGlbRi5ELmNxXT0iX29ubyIsZGlbRi5ELnRoXT0iZ3BwX3NpZCIsZGlbRi5ELnVoXT0iZ3BwIixkaVtGLkQuUGxdPSJnc2FleHAiLGRpW0YuRC5WZl09Il90dSIsZGlbRi5ELk1lXT0iZnJtIixkaVtGLkQuS2ldPSJndG1fdXAiLGRpW0YuRC5QZF09ImxwcyIsZGlbRi5ELkxpXT0iZGlkIixkaVtGLkQuUWRdPSJmY250ciIsZGlbRi5ELlJkXT0iZmxuZyIsZGlbRi5ELlNkXT0ibWlkIixkaVtGLkQuTmVdPXZvaWQgMCxkaVtGLkQuTWJdPSJ0aWJhIixkaVtGLkQuV2JdPSJyZHAiLGRpW0YuRC54Y109ImVjc2lkIixkaVtGLkQuWmZdPSJnYV91aWQiLGRpW0YuRC5VZF09ImRlbG9wYyIsZGlbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IiwKZGlbRi5ELlBhXT0ib2lkIixkaVtGLkQuZG1dPSJvaWRzcmMiLGRpW0YuRC5mbV09InVwdGdzIixkaVtGLkQuY2ddPSJ1YWEiLGRpW0YuRC5kZ109InVhYiIsZGlbRi5ELmVnXT0idWFmdmwiLGRpW0YuRC5mZ109InVhbWIiLGRpW0YuRC5nZ109InVhbSIsZGlbRi5ELmhnXT0idWFwIixkaVtGLkQuaWddPSJ1YXB2IixkaVtGLkQuamddPSJ1YXciLGRpW0YuRC5nbV09ImVjX2xhdCIsZGlbRi5ELmhtXT0iZWNfbWV0YSIsZGlbRi5ELmltXT0iZWNfbSIsZGlbRi5ELmptXT0iZWNfc2VsIixkaVtGLkQua21dPSJlY19zIixkaVtGLkQuQmNdPSJlY19tb2RlIixkaVtGLkQuZmJdPSJ1c2VySWQiLGRpW0YuRC5rZ109InVzX3ByaXZhY3kiLGRpW0YuRC5RYV09InZhbHVlIixkaVtGLkQucW1dPSJtY292IixkaVtGLkQuV2ldPSJobiIsZGlbRi5ELlZtXT0iZ3RtX2VlIixkaVtGLkQuWWldPSJ1aXAiLGRpW0YuRC5KaF09Im10IixkaVtGLkQuZGVdPSJucGEiLGRpW0YuRC5ZcV09InNnX3VjIixkaVtGLkQueWldPQpudWxsLGRpW0YuRC5iZF09bnVsbCxkaVtGLkQudGJdPW51bGwsZGlbRi5ELkhhXT1udWxsLGRpW0YuRC56YV09bnVsbCxkaVtGLkQuVWFdPW51bGwsZGlbRi5ELlBlXT1udWxsLGRpW0YuRC5lZF09bnVsbCxkaVtGLkQuc2hdPW51bGwsZGlbRi5ELkJkXT1udWxsLGRpW0YuRC5DZF09bnVsbCxkaVtGLkQuZmhdPW51bGwsZGlbRi5ELmdoXT1udWxsLGRpW0YuRC5UYV09bnVsbCxkaVtGLkQuV2NdPW51bGwsZGkpO2Z1bmN0aW9uIGZpKGEsYil7aWYoYSl7dmFyIGM9YS5zcGxpdCgieCIpO2MubGVuZ3RoPT09MiYmKGdpKGIsInVfdyIsY1swXSksZ2koYiwidV9oIixjWzFdKSl9fWZ1bmN0aW9uIGhpKGEpe3ZhciBiPWlpO2I9Yj09PXZvaWQgMD9qaTpiO3JldHVybiBraShsaShhLGIpKX1mdW5jdGlvbiBraShhKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4hIWJ9KS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIigiK1ttaShiLnZhbHVlKSxtaShiLnF1YW50aXR5KSxtaShiLml0ZW1faWQpLG1pKGIuc3RhcnRfZGF0ZSksbWkoYi5lbmRfZGF0ZSldLmpvaW4oIioiKSsiKSJ9KS5qb2luKCIiKX0KZnVuY3Rpb24gbGkoYSxiKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4hIWN9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJue2l0ZW1faWQ6YihjKSxxdWFudGl0eTpjLnF1YW50aXR5LHZhbHVlOmMucHJpY2Usc3RhcnRfZGF0ZTpjLnN0YXJ0X2RhdGUsZW5kX2RhdGU6Yy5lbmRfZGF0ZX19KX1mdW5jdGlvbiBqaShhKXtyZXR1cm5bYS5pdGVtX2lkLGEuaWQsYS5pdGVtX25hbWVdLmZpbmQoZnVuY3Rpb24oYil7cmV0dXJuIGIhPW51bGx9KX1mdW5jdGlvbiBuaShhKXtpZihhJiZhLmxlbmd0aClyZXR1cm4gYS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGU/Yi5lc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZToiIn0pLmpvaW4oIiwiKX1mdW5jdGlvbiBnaShhLGIsYyl7Yz09PXZvaWQgMHx8Yz09PW51bGx8fGM9PT0iIiYmIXlnW2JdfHwoYVtiXT1jKX0KZnVuY3Rpb24gbWkoYSl7cmV0dXJuIHR5cGVvZiBhIT09Im51bWJlciImJnR5cGVvZiBhIT09InN0cmluZyI/IiI6YS50b1N0cmluZygpfTtmdW5jdGlvbiBvaSgpe3RoaXMuYmxvY2tTaXplPS0xfTtmdW5jdGlvbiBwaShhLGIpe3RoaXMuYmxvY2tTaXplPS0xO3RoaXMuYmxvY2tTaXplPTY0O3RoaXMuTj1SYS5VaW50OEFycmF5P25ldyBVaW50OEFycmF5KHRoaXMuYmxvY2tTaXplKTpBcnJheSh0aGlzLmJsb2NrU2l6ZSk7dGhpcy5SPXRoaXMuSz0wO3RoaXMuSD1bXTt0aGlzLmZhPWE7dGhpcy5aPWI7dGhpcy5qYT1SYS5JbnQzMkFycmF5P25ldyBJbnQzMkFycmF5KDY0KTpBcnJheSg2NCk7cWk9PT12b2lkIDAmJihSYS5JbnQzMkFycmF5P3FpPW5ldyBJbnQzMkFycmF5KHJpKTpxaT1yaSk7dGhpcy5yZXNldCgpfVNhKHBpLG9pKTtmb3IodmFyIHNpPVtdLHRpPTA7dGk8NjM7dGkrKylzaVt0aV09MDt2YXIgdWk9W10uY29uY2F0KDEyOCxzaSk7CnBpLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuUj10aGlzLks9MDt2YXIgYTtpZihSYS5JbnQzMkFycmF5KWE9bmV3IEludDMyQXJyYXkodGhpcy5aKTtlbHNle3ZhciBiPXRoaXMuWixjPWIubGVuZ3RoO2lmKGM+MCl7Zm9yKHZhciBkPUFycmF5KGMpLGU9MDtlPGM7ZSsrKWRbZV09YltlXTthPWR9ZWxzZSBhPVtdfXRoaXMuSD1hfTsKdmFyIHZpPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1hLk4sYz1hLmphLGQ9MCxlPTA7ZTxiLmxlbmd0aDspY1tkKytdPWJbZV08PDI0fGJbZSsxXTw8MTZ8YltlKzJdPDw4fGJbZSszXSxlPWQqNDtmb3IodmFyIGY9MTY7Zjw2NDtmKyspe3ZhciBnPWNbZi0xNV18MCxoPWNbZi0yXXwwO2NbZl09KChjW2YtMTZdfDApKygoZz4+Pjd8Zzw8MjUpXihnPj4+MTh8Zzw8MTQpXmc+Pj4zKXwwKSsoKGNbZi03XXwwKSsoKGg+Pj4xN3xoPDwxNSleKGg+Pj4xOXxoPDwxMyleaD4+PjEwKXwwKXwwfWZvcih2YXIgbD1hLkhbMF18MCxuPWEuSFsxXXwwLHA9YS5IWzJdfDAscT1hLkhbM118MCxyPWEuSFs0XXwwLHQ9YS5IWzVdfDAsdT1hLkhbNl18MCx2PWEuSFs3XXwwLHg9MDt4PDY0O3grKyl7dmFyIHk9KChsPj4+MnxsPDwzMCleKGw+Pj4xM3xsPDwxOSleKGw+Pj4yMnxsPDwxMCkpKyhsJm5ebCZwXm4mcCl8MCx6PSh2Kygocj4+PjZ8cjw8MjYpXihyPj4+MTF8cjw8MjEpXihyPj4+MjV8cjw8NykpfAowKSsoKChyJnRefnImdSkrKHFpW3hdfDApfDApKyhjW3hdfDApfDApfDA7dj11O3U9dDt0PXI7cj1xK3p8MDtxPXA7cD1uO249bDtsPXoreXwwfWEuSFswXT1hLkhbMF0rbHwwO2EuSFsxXT1hLkhbMV0rbnwwO2EuSFsyXT1hLkhbMl0rcHwwO2EuSFszXT1hLkhbM10rcXwwO2EuSFs0XT1hLkhbNF0rcnwwO2EuSFs1XT1hLkhbNV0rdHwwO2EuSFs2XT1hLkhbNl0rdXwwO2EuSFs3XT1hLkhbN10rdnwwfTsKcGkucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDAmJihiPWEubGVuZ3RoKTt2YXIgYz0wLGQ9dGhpcy5LO2lmKHR5cGVvZiBhPT09InN0cmluZyIpZm9yKDtjPGI7KXRoaXMuTltkKytdPWEuY2hhckNvZGVBdChjKyspLGQ9PXRoaXMuYmxvY2tTaXplJiYodmkodGhpcyksZD0wKTtlbHNle3ZhciBlLGY9dHlwZW9mIGE7ZT1mIT0ib2JqZWN0Ij9mOmE/QXJyYXkuaXNBcnJheShhKT8iYXJyYXkiOmY6Im51bGwiO2lmKGU9PSJhcnJheSJ8fGU9PSJvYmplY3QiJiZ0eXBlb2YgYS5sZW5ndGg9PSJudW1iZXIiKWZvcig7YzxiOyl7dmFyIGc9YVtjKytdO2lmKCEoIm51bWJlciI9PXR5cGVvZiBnJiYwPD1nJiYyNTU+PWcmJmc9PShnfDApKSl0aHJvdyBFcnJvcigibWVzc2FnZSBtdXN0IGJlIGEgYnl0ZSBhcnJheSIpO3RoaXMuTltkKytdPWc7ZD09dGhpcy5ibG9ja1NpemUmJih2aSh0aGlzKSxkPTApfWVsc2UgdGhyb3cgRXJyb3IoIm1lc3NhZ2UgbXVzdCBiZSBzdHJpbmcgb3IgYXJyYXkiKTsKfXRoaXMuSz1kO3RoaXMuUis9Yn07cGkucHJvdG90eXBlLmRpZ2VzdD1mdW5jdGlvbigpe3ZhciBhPVtdLGI9dGhpcy5SKjg7dGhpcy5LPDU2P3RoaXMudXBkYXRlKHVpLDU2LXRoaXMuSyk6dGhpcy51cGRhdGUodWksdGhpcy5ibG9ja1NpemUtKHRoaXMuSy01NikpO2Zvcih2YXIgYz02MztjPj01NjtjLS0pdGhpcy5OW2NdPWImMjU1LGIvPTI1Njt2aSh0aGlzKTtmb3IodmFyIGQ9MCxlPTA7ZTx0aGlzLmZhO2UrKylmb3IodmFyIGY9MjQ7Zj49MDtmLT04KWFbZCsrXT10aGlzLkhbZV0+PmYmMjU1O3JldHVybiBhfTsKdmFyIHJpPVsxMTE2MzUyNDA4LDE4OTk0NDc0NDEsMzA0OTMyMzQ3MSwzOTIxMDA5NTczLDk2MTk4NzE2MywxNTA4OTcwOTkzLDI0NTM2MzU3NDgsMjg3MDc2MzIyMSwzNjI0MzgxMDgwLDMxMDU5ODQwMSw2MDcyMjUyNzgsMTQyNjg4MTk4NywxOTI1MDc4Mzg4LDIxNjIwNzgyMDYsMjYxNDg4ODEwMywzMjQ4MjIyNTgwLDM4MzUzOTA0MDEsNDAyMjIyNDc3NCwyNjQzNDcwNzgsNjA0ODA3NjI4LDc3MDI1NTk4MywxMjQ5MTUwMTIyLDE1NTUwODE2OTIsMTk5NjA2NDk4NiwyNTU0MjIwODgyLDI4MjE4MzQzNDksMjk1Mjk5NjgwOCwzMjEwMzEzNjcxLDMzMzY1NzE4OTEsMzU4NDUyODcxMSwxMTM5MjY5OTMsMzM4MjQxODk1LDY2NjMwNzIwNSw3NzM1Mjk5MTIsMTI5NDc1NzM3MiwxMzk2MTgyMjkxLDE2OTUxODM3MDAsMTk4NjY2MTA1MSwyMTc3MDI2MzUwLDI0NTY5NTYwMzcsMjczMDQ4NTkyMSwyODIwMzAyNDExLDMyNTk3MzA4MDAsMzM0NTc2NDc3MSwzNTE2MDY1ODE3LDM2MDAzNTI4MDQsCjQwOTQ1NzE5MDksMjc1NDIzMzQ0LDQzMDIyNzczNCw1MDY5NDg2MTYsNjU5MDYwNTU2LDg4Mzk5Nzg3Nyw5NTgxMzk1NzEsMTMyMjgyMjIxOCwxNTM3MDAyMDYzLDE3NDc4NzM3NzksMTk1NTU2MjIyMiwyMDI0MTA0ODE1LDIyMjc3MzA0NTIsMjM2MTg1MjQyNCwyNDI4NDM2NDc0LDI3NTY3MzQxODcsMzIwNDAzMTQ3OSwzMzI5MzI1Mjk4XSxxaTtmdW5jdGlvbiB3aSgpe3BpLmNhbGwodGhpcyw4LHhpKX1TYSh3aSxwaSk7dmFyIHhpPVsxNzc5MDMzNzAzLDMxNDQxMzQyNzcsMTAxMzkwNDI0MiwyNzczNDgwNzYyLDEzNTk4OTMxMTksMjYwMDgyMjkyNCw1Mjg3MzQ2MzUsMTU0MTQ1OTIyNV07dmFyIHlpPS9eWzAtOUEtRmEtZl17NjR9JC87ZnVuY3Rpb24gemkoYSl7dHJ5e3JldHVybihuZXcgVGV4dEVuY29kZXIpLmVuY29kZShhKX1jYXRjaChiKXtyZXR1cm4gWmIoYSl9fWZ1bmN0aW9uIEFpKGEpe3ZhciBiPUE7aWYoYT09PSIifHxhPT09ImUwIilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEpO3ZhciBjO2lmKChjPWIuY3J5cHRvKT09bnVsbD8wOmMuc3VidGxlKXtpZih5aS50ZXN0KGEpKXJldHVybiBQcm9taXNlLnJlc29sdmUoYSk7dHJ5e3ZhciBkPXppKGEpO3JldHVybiBiLmNyeXB0by5zdWJ0bGUuZGlnZXN0KCJTSEEtMjU2IixkKS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBCaShlLGIpfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4iZTIifSl9Y2F0Y2goZSl7cmV0dXJuIFByb21pc2UucmVzb2x2ZSgiZTIiKX19ZWxzZSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJlMSIpfQpmdW5jdGlvbiBDaShhKXt0cnl7dmFyIGI9bmV3IHdpO2IudXBkYXRlKHppKGEpKTtyZXR1cm4gYi5kaWdlc3QoKX1jYXRjaChjKXtyZXR1cm4iZTIifX1mdW5jdGlvbiBEaShhKXt2YXIgYj1BO2lmKGE9PT0iInx8YT09PSJlMCJ8fHlpLnRlc3QoYSkpcmV0dXJuIGE7dmFyIGM9Q2koYSk7aWYoYz09PSJlMiIpcmV0dXJuImUyIjt0cnl7cmV0dXJuIEJpKGMsYil9Y2F0Y2goZCl7cmV0dXJuImUyIn19ZnVuY3Rpb24gQmkoYSxiKXt2YXIgYz1BcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KGEpKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoZCl9KS5qb2luKCIiKTtyZXR1cm4gYi5idG9hKGMpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIikucmVwbGFjZSgvPSskLywiIil9O2Z1bmN0aW9uIEVpKCl7Zm9yKHZhciBhPSExLGI9ITEsYz0wO2E9PT1iOylpZihhPURiKDAsMSk9PT0wLGI9RGIoMCwxKT09PTAsYysrLGM+MzApcmV0dXJuO3JldHVybiBhfXZhciBHaT17c2s6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBGaS5zayhhLGIsYyl9fSxIaT1mdW5jdGlvbigpe3RoaXMuc3R1ZGllcz17fTt0aGlzLkg9RWl9OwpIaS5wcm90b3R5cGUuc2s9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMuc3R1ZGllc1tiXTtpZighKChjPT09dm9pZCAwP0RiKDAsOTk5OSk6YyUxRTQpPGQucHJvYmFiaWxpdHkqKGQuY29udHJvbElkMj80OjIpKjFFNCkpcmV0dXJuIGE7YTp7dmFyIGU9ZC5zdHVkeUlkLGY9ZC5leHBlcmltZW50SWQsZz1kLmNvbnRyb2xJZCxoPWQuY29udHJvbElkMjtpZighKChhLmV4cHx8e30pW2ZdfHwoYS5leHB8fHt9KVtnXXx8aCYmKGEuZXhwfHx7fSlbaF0pKXt2YXIgbD1jIT09dm9pZCAwP2MlMj09PTA6dGhpcy5IKCk7aWYobCE9PXZvaWQgMCl7dmFyIG49bD8wOjE7aWYoaCl7dmFyIHA9YyE9PXZvaWQgMD8oYz4+MSklMj09PTA6dGhpcy5IKCk7aWYocD09PXZvaWQgMClicmVhayBhO258PShwPzA6MSk8PDF9bj09PTA/SWkoYSxmLGUpOm49PT0xP0lpKGEsZyxlKTpuPT09MiYmSWkoYSxoLGUpfX19cmV0dXJuIGF9Owp2YXIgS2k9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdP0ppKGMsYil8fCEhKGEuZXhwfHx7fSlbYy5zdHVkaWVzW2JdLmV4cGVyaW1lbnRJZF06ITF9LExpPWZ1bmN0aW9uKGEsYil7dmFyIGM9Rmk7cmV0dXJuIGMuc3R1ZGllc1tiXSYmYy5zdHVkaWVzW2JdLmNvbnRyb2xJZCYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkXTohMX0sTWk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdJiZjLnN0dWRpZXNbYl0uY29udHJvbElkMiYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkMl06ITF9LE5pPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEuZXhwfHx7fSxkPW0oT2JqZWN0LmtleXMoYykubWFwKE51bWJlcikpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2lmKGNbZl09PT1iKXJldHVybiBmfX0sSmk9ZnVuY3Rpb24oYSwKYil7cmV0dXJuISFhLnN0dWRpZXNbYl0uYWN0aXZlfHxhLnN0dWRpZXNbYl0ucHJvYmFiaWxpdHk+LjV9LElpPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLmV4cHx8e307ZFtiXT1jO2EuZXhwPWR9LEZpPW5ldyBIaTt2YXIgaWo9ZnVuY3Rpb24oKXt0aGlzLkg9QS5nb29nbGVfdGFnX21hbmFnZXI9QS5nb29nbGVfdGFnX21hbmFnZXJ8fHt9fSxqajtmdW5jdGlvbiBraihhLGIpe2xqKCk7dmFyIGM9amo7cmV0dXJuIGMuSFthXT1jLkhbYV18fGIoKX1mdW5jdGlvbiBtaihhKXtsaigpO3JldHVybiBqai5IW2FdfWZ1bmN0aW9uIG5qKGEsYil7bGooKTtqai5IW2FdPWJ9ZnVuY3Rpb24gb2ooYSl7dmFyIGI9RSg1KTtsaigpO3ZhciBjPWpqO2MuSFtiXT1jLkhbYl18fGF9ZnVuY3Rpb24gcGooKXt2YXIgYT1FKDE5KTtsaigpO3ZhciBiPWpqO3JldHVybiBiLkhbYV09Yi5IW2FdfHx7fX1mdW5jdGlvbiBxaigpe3ZhciBhPUUoMTkpO2xqKCk7cmV0dXJuIGpqLkhbYV19ZnVuY3Rpb24gcmooKXtsaigpO3ZhciBhPWpqLGI9YS5ILnNlcXVlbmNlfHwxO2EuSC5zZXF1ZW5jZT1iKzE7cmV0dXJuIGJ9ZnVuY3Rpb24gbGooKXtqanx8KGpqPW5ldyBpail9O3ZhciBzaj1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiAwO2Nhc2UgNDkxOnJldHVybiAxMjtjYXNlIDQ4MDpyZXR1cm4gMTE7Y2FzZSA0OTk6cmV0dXJuIDEwO2Nhc2UgNTAwOnJldHVybiA2O2Nhc2UgNDIxOnJldHVybiA5O2Nhc2UgNTYxOnJldHVybiAxNztjYXNlIDQ4MjpyZXR1cm4gMTU7Y2FzZSA1NzA6cmV0dXJuIDE5O2Nhc2UgNDk1OnJldHVybiAxMztjYXNlIDUxNDpyZXR1cm4gMTY7Y2FzZSA1NzM6cmV0dXJuIDE4O2Nhc2UgMjM1OnJldHVybiA4O2Nhc2UgNTM6cmV0dXJuIDE7Y2FzZSA1NDpyZXR1cm4gMjtjYXNlIDUyOnJldHVybiA0O2Nhc2UgNzU6cmV0dXJuIDN9fSx0aj1mdW5jdGlvbihhLGIpe2EuTltiXT0hMDt2YXIgYz1zaihiKTtjIT09dm9pZCAwJiYoV2ZbY109ITApfSxNPWZ1bmN0aW9uKGEpe3JldHVybiEhdWouTlthXX0sdWo9bmV3IGZ1bmN0aW9uKCl7dGhpcy5OPVtdO3RoaXMuSz1bXTt0aGlzLkg9W107CnRqKHRoaXMsMTMyKTt2YXIgYT1OZig2LDZFNCk7WGZbMV09YTt2YXIgYj1OZig3LDEpO1hmWzNdPWI7dmFyIGM9TmYoMzUsNTApO1hmWzJdPWM7dmFyIGQ9TmYoNjksMTc3NjQ0ODkyMCk7WGZbNF09ZDsKdGoodGhpcyw0MzUpO3RqKHRoaXMsMTQxKTsKfTt2YXIgdmo9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IFNldDt0aGlzLks9bmV3IFNldH0seGo9ZnVuY3Rpb24oYSl7dmFyIGI9d2ouSDthPWE9PT12b2lkIDA/W106YTt2YXIgYz1bXS5jb25jYXQodyhiLkgpKS5jb25jYXQoW10uY29uY2F0KHcoYi5LKSkpLmNvbmNhdChhKTtjLnNvcnQoZnVuY3Rpb24oZCxlKXtyZXR1cm4gZC1lfSk7cmV0dXJuIGN9LHlqPWZ1bmN0aW9uKCl7dmFyIGE9W10uY29uY2F0KHcod2ouSC5IKSk7YS5zb3J0KGZ1bmN0aW9uKGIsYyl7cmV0dXJuIGItY30pO3JldHVybiBhfSx6aj1mdW5jdGlvbigpe3ZhciBhPXdqLkgsYj1FKDQ0KTthLkg9bmV3IFNldDtpZihiIT09IiIpZm9yKHZhciBjPW0oYi5zcGxpdCgifiIpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9TnVtYmVyKGQudmFsdWUpO2lzTmFOKGUpfHxhLkguYWRkKGUpfX07dmFyIEFqPXt9LEJqPXtfX2NsOjEsX19lY2w6MSxfX2VobDoxLF9fZXZsOjEsX19mYWw6MSxfX2ZpbDoxLF9fZnNsOjEsX19obDoxLF9famVsOjEsX19sY2w6MSxfX3NkbDoxLF9fdGw6MSxfX3l0bDoxfSxDaj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHtfX3BhdXNlZDoxLF9fdGc6MX0sQmopLERqLEVqPSExO0RqPUVqO3ZhciBGaj0iIjtBai5xaj1Gajt2YXIgd2o9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPW5ldyB2an07dmFyIEdqPS86WzAtOV0rJC8sSGo9L15cZCtcLmZsc1wuZG91YmxlY2xpY2tcLm5ldCQvO2Z1bmN0aW9uIElqKGEsYixjLGQpe3ZhciBlPUpqKGEsISFkLGIpLGYsZztyZXR1cm4gYz8oZz1lW2JdKSE9bnVsbD9nOltdOihmPWVbYl0pPT1udWxsP3ZvaWQgMDpmWzBdfWZ1bmN0aW9uIEpqKGEsYixjKXtmb3IodmFyIGQ9e30sZT1tKGEuc3BsaXQoIiYiKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPW0oZi52YWx1ZS5zcGxpdCgiPSIpKSxoPWcubmV4dCgpLnZhbHVlLGw9eWEoZyksbj1kZWNvZGVVUklDb21wb25lbnQoaC5yZXBsYWNlKC9cKy9nLCIgIikpO2lmKGM9PT12b2lkIDB8fG49PT1jKXt2YXIgcD1sLmpvaW4oIj0iKTtkW25dfHwoZFtuXT1bXSk7ZFtuXS5wdXNoKGI/cDpkZWNvZGVVUklDb21wb25lbnQocC5yZXBsYWNlKC9cKy9nLCIgIikpKX19cmV0dXJuIGR9CmZ1bmN0aW9uIEtqKGEpe3RyeXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEpfWNhdGNoKGIpe319ZnVuY3Rpb24gTGooYSxiLGMsZCxlKXtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7aWYoYj09PSJwcm90b2NvbCJ8fGI9PT0icG9ydCIpYS5wcm90b2NvbD1NaihhLnByb3RvY29sKXx8TWooQS5sb2NhdGlvbi5wcm90b2NvbCk7Yj09PSJwb3J0Ij9hLnBvcnQ9U3RyaW5nKE51bWJlcihhLmhvc3RuYW1lP2EucG9ydDpBLmxvY2F0aW9uLnBvcnQpfHwoYS5wcm90b2NvbD09PSJodHRwIj84MDphLnByb3RvY29sPT09Imh0dHBzIj80NDM6IiIpKTpiPT09Imhvc3QiJiYoYS5ob3N0bmFtZT0oYS5ob3N0bmFtZXx8QS5sb2NhdGlvbi5ob3N0bmFtZSkucmVwbGFjZShHaiwiIikudG9Mb3dlckNhc2UoKSk7cmV0dXJuIE5qKGEsYixjLGQsZSl9CmZ1bmN0aW9uIE5qKGEsYixjLGQsZSl7dmFyIGYsZz1NaihhLnByb3RvY29sKTtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7c3dpdGNoKGIpe2Nhc2UgInVybF9ub19mcmFnbWVudCI6Zj1PaihhKTticmVhaztjYXNlICJwcm90b2NvbCI6Zj1nO2JyZWFrO2Nhc2UgImhvc3QiOmY9YS5ob3N0bmFtZS5yZXBsYWNlKEdqLCIiKS50b0xvd2VyQ2FzZSgpO2lmKGMpe3ZhciBoPS9ed3d3XGQqXC4vLmV4ZWMoZik7aCYmaFswXSYmKGY9Zi5zdWJzdHJpbmcoaFswXS5sZW5ndGgpKX1icmVhaztjYXNlICJwb3J0IjpmPVN0cmluZyhOdW1iZXIoYS5wb3J0KXx8KGc9PT0iaHR0cCI/ODA6Zz09PSJodHRwcyI/NDQzOiIiKSk7YnJlYWs7Y2FzZSAicGF0aCI6YS5wYXRobmFtZXx8YS5ob3N0bmFtZXx8c2IoIlRBR0dJTkciLDEpO2Y9YS5wYXRobmFtZS5zdWJzdHJpbmcoMCwxKT09PSIvIj9hLnBhdGhuYW1lOiIvIithLnBhdGhuYW1lO3ZhciBsPWYuc3BsaXQoIi8iKTsoZHx8W10pLmluZGV4T2YobFtsLmxlbmd0aC0KMV0pPj0wJiYobFtsLmxlbmd0aC0xXT0iIik7Zj1sLmpvaW4oIi8iKTticmVhaztjYXNlICJxdWVyeSI6Zj1hLnNlYXJjaC5yZXBsYWNlKCI/IiwiIik7ZSYmKGY9SWooZixlLCExKSk7YnJlYWs7Y2FzZSAiZXh0ZW5zaW9uIjp2YXIgbj1hLnBhdGhuYW1lLnNwbGl0KCIuIik7Zj1uLmxlbmd0aD4xP25bbi5sZW5ndGgtMV06IiI7Zj1mLnNwbGl0KCIvIilbMF07YnJlYWs7Y2FzZSAiZnJhZ21lbnQiOmY9YS5oYXNoLnJlcGxhY2UoIiMiLCIiKTticmVhaztkZWZhdWx0OmY9YSYmYS5ocmVmfXJldHVybiBmfWZ1bmN0aW9uIE1qKGEpe3JldHVybiBhP2EucmVwbGFjZSgiOiIsIiIpLnRvTG93ZXJDYXNlKCk6IiJ9ZnVuY3Rpb24gT2ooYSl7dmFyIGI9IiI7aWYoYSYmYS5ocmVmKXt2YXIgYz1hLmhyZWYuaW5kZXhPZigiIyIpO2I9YzwwP2EuaHJlZjphLmhyZWYuc3Vic3RyaW5nKDAsYyl9cmV0dXJuIGJ9dmFyIFBqPXt9LFFqPTA7CmZ1bmN0aW9uIFJqKGEpe3ZhciBiPVBqW2FdO2lmKCFiKXt2YXIgYz1CLmNyZWF0ZUVsZW1lbnQoImEiKTthJiYoYy5ocmVmPWEpO3ZhciBkPWMucGF0aG5hbWU7ZFswXSE9PSIvIiYmKGF8fHNiKCJUQUdHSU5HIiwxKSxkPSIvIitkKTt2YXIgZT1jLmhvc3RuYW1lLnJlcGxhY2UoR2osIiIpO2I9e2hyZWY6Yy5ocmVmLHByb3RvY29sOmMucHJvdG9jb2wsaG9zdDpjLmhvc3QsaG9zdG5hbWU6ZSxwYXRobmFtZTpkLHNlYXJjaDpjLnNlYXJjaCxoYXNoOmMuaGFzaCxwb3J0OmMucG9ydH07UWo8NSYmKFBqW2FdPWIsUWorKyl9cmV0dXJuIGJ9ZnVuY3Rpb24gU2ooYSxiLGMpe3ZhciBkPVJqKGEpO3JldHVybiBhYyhiLGQsYyl9CmZ1bmN0aW9uIFRqKGEpe3ZhciBiPVJqKEEubG9jYXRpb24uaHJlZiksYz1MaihiLCJob3N0IiwhMSk7aWYoYyYmYy5tYXRjaChIaikpe3ZhciBkPUxqKGIsInBhdGgiKTtpZihkKXt2YXIgZT1kLnNwbGl0KGErIj0iKTtpZihlLmxlbmd0aD4xKXJldHVybiBlWzFdLnNwbGl0KCI7IilbMF0uc3BsaXQoIj8iKVswXX19fTt2YXIgVWo9eyJodHRwczovL3d3dy5nb29nbGUuY29tIjoiL2ciLCJodHRwczovL3d3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSI6Ii9hcyIsImh0dHBzOi8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iOiIvZ3MifSxWaj1bIi9hcy9kL2NjbS9jb252ZXJzaW9uIiwiL2cvZC9jY20vY29udmVyc2lvbiIsIi9ncy9jY20vY29udmVyc2lvbiIsIi9kL2NjbS9mb3JtLWRhdGEiXTtmdW5jdGlvbiBXaigpe3JldHVybiBJZig0Nyk/SmYoNTQpIT09MTohMX1mdW5jdGlvbiBYaigpe3ZhciBhPUUoMTgpLGI9YS5sZW5ndGg7cmV0dXJuIGFbYi0xXT09PSIvIj9hLnN1YnN0cmluZygwLGItMSk6YX0KZnVuY3Rpb24gWWooYSxiKXtpZihhKXt2YXIgYz0iIithO2MuaW5kZXhPZigiaHR0cDovLyIpIT09MCYmYy5pbmRleE9mKCJodHRwczovLyIpIT09MCYmKGM9Imh0dHBzOi8vIitjKTtjW2MubGVuZ3RoLTFdPT09Ii8iJiYoYz1jLnN1YnN0cmluZygwLGMubGVuZ3RoLTEpKTtyZXR1cm4gUmooIiIrYytiKS5ocmVmfX1mdW5jdGlvbiBaaihhKXtpZihhaygpKXJldHVybiBZaihhLCIvYW5hbHl0aWNzLmpzIil9ZnVuY3Rpb24gYmsoYSl7cmV0dXJuIGE9PT0yfHxhPT09M31mdW5jdGlvbiBjayhhKXtyZXR1cm4gTSg1ODgpJiZhPT09M31mdW5jdGlvbiBhaygpe3JldHVybiBXaigpfHxJZig1MCl9ZnVuY3Rpb24gZGsoKXtyZXR1cm4hIUFqLnFqJiZBai5xai5zcGxpdCgiQEAiKS5qb2luKCIiKSE9PSJTR1RNX1RPS0VOIn0KZnVuY3Rpb24gZWsoYSl7Zm9yKHZhciBiPW0oW0YuRC5kZCxGLkQueWNdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9TyhhLGMudmFsdWUpO2lmKGQpcmV0dXJuIGR9fWZ1bmN0aW9uIGZrKGEsYixjKXtjPWM9PT12b2lkIDA/IiI6YztpZighV2ooKSlyZXR1cm4gYTt2YXIgZD1iP1VqW2FdfHwiIjoiIjtkPT09Ii9ncyImJihjPSIiKTtyZXR1cm4iIitYaigpK2QrY31mdW5jdGlvbiBnayhhKXtpZihXaigpKWZvcih2YXIgYj1tKFZqKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtpZihTYihhLCIiK1hqKCkrZCkpcmV0dXJuIjo6In19CmZ1bmN0aW9uIGhrKCl7dmFyIGE9QTtpZighYSlyZXR1cm4hMTt0cnl7aWYoYT09PWEudG9wKXJldHVybiExO3ZhciBiPWEubG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIGIuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIvIikhPT0tMSYmVGIoYiwiL3N3X2lmcmFtZS5odG1sIil9Y2F0Y2goYyl7cmV0dXJuITF9fTt2YXIgaWs9L2d0YWdbLlwvXWpzLyxqaz0vZ3RtWy5cL11qcy8sbGs9ZnVuY3Rpb24oYSl7dmFyIGI9a2s7aWYoKGEuc2NyaXB0Q29udGFpbmVySWR8fCIiKS5pbmRleE9mKCJHVE0tIik+PTApe3ZhciBjO2E6e3ZhciBkLGU9KGQ9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6ZC5zcmM7aWYoZSl7Zm9yKHZhciBmPUlmKDQ3KSxnPVJqKGUpLGg9Zj9nLnBhdGhuYW1lOiIiK2cuaG9zdG5hbWUrZy5wYXRobmFtZSxsPUIuc2NyaXB0cyxuPSIiLHA9MDtwPGwubGVuZ3RoOysrcCl7dmFyIHE9bFtwXTtpZighKHEuaW5uZXJIVE1MLmxlbmd0aD09PTB8fCFmJiZxLmlubmVySFRNTC5pbmRleE9mKGEuc2NyaXB0Q29udGFpbmVySWR8fCJTSE9VTERfTk9UX0JFX1NFVCIpPDB8fHEuaW5uZXJIVE1MLmluZGV4T2YoaCk8MCkpe2lmKHEuaW5uZXJIVE1MLmluZGV4T2YoIihmdW5jdGlvbih3LGQscyxsLGkpIik+PTApe2M9U3RyaW5nKHApO2JyZWFrIGF9bj1TdHJpbmcocCl9fWlmKG4pe2M9Cm47YnJlYWsgYX19Yz12b2lkIDB9dmFyIHI9YztpZihyKXJldHVybiBiLkg9ITAscn12YXIgdD1bXS5zbGljZS5jYWxsKEIuc2NyaXB0cyk7cmV0dXJuIGEuc2NyaXB0RWxlbWVudD9TdHJpbmcodC5pbmRleE9mKGEuc2NyaXB0RWxlbWVudCkpOiItMSJ9LG1rPWZ1bmN0aW9uKGEpe2lmKGtrLkgpcmV0dXJuIjEiO3ZhciBiLGM9KGI9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6Yi5zcmM7aWYoYyl7aWYoaWsudGVzdChjKSlyZXR1cm4iMyI7aWYoamsudGVzdChjKSlyZXR1cm4iMiJ9cmV0dXJuIjAifSxraz1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O2Z1bmN0aW9uIFAoYSl7c2IoIkdUTSIsYSl9O2Z1bmN0aW9uIG5rKGEpe3ZhciBiPW9rKCkuZGVzdGluYXRpb25BcnJheVthXSxjPW9rKCkuZGVzdGluYXRpb25bYV07cmV0dXJuIGImJmIubGVuZ3RoPjA/YlswXTpjfWZ1bmN0aW9uIHBrKGEsYil7dmFyIGM9b2soKTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO0NiKGMucGVuZGluZyxmdW5jdGlvbihkKXtyZXR1cm4gZC50YXJnZXQuY3RpZD09PWEuY3RpZCYmZC50YXJnZXQuaXNEZXN0aW5hdGlvbj09PWEuaXNEZXN0aW5hdGlvbn0pfHxjLnBlbmRpbmcucHVzaCh7dGFyZ2V0OmEsb25Mb2FkOmJ9KX1mdW5jdGlvbiBxaygpe3ZhciBhPUEuZ29vZ2xlX3RhZ3NfZmlyc3RfcGFydHk7QXJyYXkuaXNBcnJheShhKXx8KGE9W10pO2Zvcih2YXIgYj17fSxjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpYltkLnZhbHVlXT0hMDtyZXR1cm4gT2JqZWN0LmZyZWV6ZShiKX0KdmFyIHJrPWZ1bmN0aW9uKCl7dGhpcy5jb250YWluZXI9e307dGhpcy5kZXN0aW5hdGlvbj17fTt0aGlzLmRlc3RpbmF0aW9uQXJyYXk9e307dGhpcy5jYW5vbmljYWw9e307dGhpcy5wZW5kaW5nPVtdO3RoaXMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz17fTt0aGlzLmluamVjdGVkRmlyc3RQYXJ0eUNvbnRhaW5lcnM9cWsoKX07CmZ1bmN0aW9uIG9rKCl7dmFyIGE9TWMoImdvb2dsZV90YWdfZGF0YSIse30pLGI9YS50aWRyO2ImJnR5cGVvZiBiPT09Im9iamVjdCJ8fChiPW5ldyByayxhLnRpZHI9Yik7dmFyIGM9YjtjLmNvbnRhaW5lcnx8KGMuY29udGFpbmVyPXt9KTtjLmRlc3RpbmF0aW9ufHwoYy5kZXN0aW5hdGlvbj17fSk7Yy5kZXN0aW5hdGlvbkFycmF5fHwoYy5kZXN0aW5hdGlvbkFycmF5PXt9KTtjLmNhbm9uaWNhbHx8KGMuY2Fub25pY2FsPXt9KTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO2MuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc3x8KGMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz1xaygpKTtyZXR1cm4gY307ZnVuY3Rpb24gc2soKXtyZXR1cm4gSWYoNykmJnRrKCkuc29tZShmdW5jdGlvbihhKXtyZXR1cm4gYT09PUUoNSl9KX1mdW5jdGlvbiB1aygpe3ZhciBhO3JldHVybihhPUtmKDU1KSkhPW51bGw/YTpbXX1mdW5jdGlvbiB2aygpe3JldHVybiBFKDYpfHwiXyIrRSg1KX1mdW5jdGlvbiB3aygpe3ZhciBhPUUoMTApO3JldHVybiBhP2Euc3BsaXQoInwiKTpbRSg1KV19ZnVuY3Rpb24gdGsoKXt2YXIgYT1LZig1OSk7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIHR5cGVvZiBiPT09InN0cmluZyJ9KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIuaW5kZXhPZigiR1RNLSIpIT09MH0pOltdfWZ1bmN0aW9uIHhrKCl7dmFyIGE9eWsoemsoKSksYj1hJiZhLnBhcmVudDtpZihiKXJldHVybiB5ayhiKX0KZnVuY3Rpb24gQWsoKXt2YXIgYT15ayh6aygpKTtpZihhKXtmb3IoO2EucGFyZW50Oyl7dmFyIGI9eWsoYS5wYXJlbnQpO2lmKCFiKWJyZWFrO2E9Yn1yZXR1cm4gYX19ZnVuY3Rpb24geWsoYSl7dmFyIGI9b2soKTtyZXR1cm4gYS5pc0Rlc3RpbmF0aW9uP25rKGEuY3RpZCk6Yi5jb250YWluZXJbYS5jdGlkXX1mdW5jdGlvbiBCaygpe3ZhciBhPW9rKCk7aWYoYS5wZW5kaW5nKXtmb3IodmFyIGIsYz1bXSxkPSExLGU9d2soKSxmPXRrKCksZz17fSxoPTA7aDxhLnBlbmRpbmcubGVuZ3RoO2c9e1JnOnZvaWQgMH0saCsrKWcuUmc9YS5wZW5kaW5nW2hdLENiKGcuUmcudGFyZ2V0LmlzRGVzdGluYXRpb24/ZjplLGZ1bmN0aW9uKGwpe3JldHVybiBmdW5jdGlvbihuKXtyZXR1cm4gbj09PWwuUmcudGFyZ2V0LmN0aWR9fShnKSk/ZHx8KGI9Zy5SZy5vbkxvYWQsZD0hMCk6Yy5wdXNoKGcuUmcpO2EucGVuZGluZz1jO2lmKGIpdHJ5e2IodmsoKSl9Y2F0Y2gobCl7fX19CmZ1bmN0aW9uIENrKCl7Zm9yKHZhciBhPUUoNSksYj13aygpLGM9dGsoKSxkPXVrKCksZT1mdW5jdGlvbihxLHIpe3ZhciB0PXtjYW5vbmljYWxDb250YWluZXJJZDpFKDYpLHNjcmlwdENvbnRhaW5lcklkOmEsc3RhdGU6Mixjb250YWluZXJzOmIuc2xpY2UoKSxkZXN0aW5hdGlvbnM6Yy5zbGljZSgpfTtKYyYmKHQuc2NyaXB0RWxlbWVudD1KYyk7S2MmJih0LnNjcmlwdFNvdXJjZT1LYyk7eGsoKT09PXZvaWQgMCYmKHQuaHRtbExvYWRPcmRlcj1sayh0KSx0LmxvYWRTY3JpcHRUeXBlPW1rKHQpKTt2YXIgdSx2O3N3aXRjaChyKXtjYXNlIDA6dT1mdW5jdGlvbih6KXtmLmNvbnRhaW5lcltxXT16fTt2PWYuY29udGFpbmVyW3FdO2JyZWFrO2Nhc2UgMTp1PWZ1bmN0aW9uKHope2YuZGVzdGluYXRpb25BcnJheVtxXT1mLmRlc3RpbmF0aW9uQXJyYXlbcV18fFtdO2YuZGVzdGluYXRpb25BcnJheVtxXS51bnNoaWZ0KHopfTt2YXIgeCx5PSgoeD1mLmRlc3RpbmF0aW9uQXJyYXlbcV0pPT0KbnVsbD92b2lkIDA6eFswXSl8fGYuZGVzdGluYXRpb25bcV07IXl8fHkuc3RhdGUhPT0wJiZ5LnN0YXRlIT09MXx8KHY9eSk7YnJlYWs7Y2FzZSAyOnU9ZnVuY3Rpb24oeil7Zi5kZXN0aW5hdGlvbkFycmF5W3FdPWYuZGVzdGluYXRpb25BcnJheVtxXXx8W107Zi5kZXN0aW5hdGlvbkFycmF5W3FdLnB1c2goeil9LHY9dm9pZCAwfXUmJih2Pyh2LnN0YXRlPT09MCYmUCg5MyksbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx2LHQpKTp1KHQpKX0sZj1vaygpLGc9bShiKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSllKGgudmFsdWUsMCk7Zm9yKHZhciBsPW0oYyksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7ZC5pbmNsdWRlcyhwKT9lKHAsMSk6ZShwLDIpfWYuY2Fub25pY2FsW3ZrKCldPXt9O0JrKCl9ZnVuY3Rpb24gRGsoKXt2YXIgYT12aygpO3JldHVybiEhb2soKS5jYW5vbmljYWxbYV19CmZ1bmN0aW9uIEVrKGEpe3JldHVybiEhb2soKS5jb250YWluZXJbYV19ZnVuY3Rpb24gRmsoKXt2YXIgYT16aygpLGI9eWsoYSk7cmV0dXJuIGImJmIuY29udGV4dH1mdW5jdGlvbiBHayhhKXt2YXIgYj1uayhhKTtyZXR1cm4gYj9iLnN0YXRlIT09MDohMX1mdW5jdGlvbiB6aygpe3JldHVybntjdGlkOkUoNSksaXNEZXN0aW5hdGlvbjpJZig3KX19ZnVuY3Rpb24gSGsoYSxiLGMpe3ZhciBkPXprKCksZT1vaygpLmNvbnRhaW5lclthXTtlJiZlLnN0YXRlIT09M3x8KG9rKCkuY29udGFpbmVyW2FdPXtzdGF0ZToxLGNvbnRleHQ6YixwYXJlbnQ6ZH0scGsoe2N0aWQ6YSxpc0Rlc3RpbmF0aW9uOiExfSxjKSl9ZnVuY3Rpb24gSWsoYSxiLGMpe3ZhciBkPW9rKCksZT1uayhhKTtlP2Uuc3RhdGU9MTooZT17Y29udGV4dDpiLHN0YXRlOjEscGFyZW50OnprKCl9LGQuZGVzdGluYXRpb25BcnJheVthXT1bZV0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sYyl9CmZ1bmN0aW9uIEprKGEsYixjLGQpe3ZhciBlPW9rKCksZj1uayhhKTtmP2Yuc3RhdGU9MDooZj17c3RhdGU6MCx0cmFuc3BvcnRVcmw6Yixjb250ZXh0OmMscGFyZW50OnprKCl9LGUuZGVzdGluYXRpb25BcnJheVthXT1bZl0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sZCk7UCg5MSl9ZnVuY3Rpb24gS2soKXt2YXIgYT1vaygpLmNvbnRhaW5lcixiO2ZvcihiIGluIGEpaWYoYS5oYXNPd25Qcm9wZXJ0eShiKSYmYVtiXS5zdGF0ZT09PTEpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gTGsoKXt2YXIgYT17fTtHYihvaygpLmRlc3RpbmF0aW9uLGZ1bmN0aW9uKGIsYyl7KGM9PW51bGw/dm9pZCAwOmMuc3RhdGUpPT09MCYmKGFbYl09Yyl9KTtHYihvaygpLmRlc3RpbmF0aW9uQXJyYXksZnVuY3Rpb24oYixjKXt2YXIgZD1jWzBdOyhkPT1udWxsP3ZvaWQgMDpkLnN0YXRlKT09PTAmJihhW2JdPWQpfSk7cmV0dXJuIGF9CmZ1bmN0aW9uIE1rKGEpe3JldHVybiEhKGEmJmEucGFyZW50JiZhLmNvbnRleHQmJmEuY29udGV4dC5zb3VyY2U9PT0xJiZhLnBhcmVudC5jdGlkLmluZGV4T2YoIkdUTS0iKSE9PTApfWZ1bmN0aW9uIE5rKCl7Zm9yKHZhciBhPW9rKCksYj1tKHdrKCkpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWlmKGEuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc1tjLnZhbHVlXSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIE9rPWZ1bmN0aW9uKCl7fTtPay5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4idW5kZWZpbmVkIn07dmFyIFBrPW5ldyBPazt2YXIgWGs9ZnVuY3Rpb24oKXt0aGlzLnN0b3JhZ2U9WWEoKX07WGsucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIpfTtYay5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnN0b3JhZ2UuZ2V0KFN0cmluZyhhKSl9O3ZhciBZaztmdW5jdGlvbiBaayhhLGIpe1lrfHwoWWs9bmV3IFhrKTtZay5zZXQoYSxiKX1mdW5jdGlvbiAkayhhKXtZa3x8KFlrPW5ldyBYayk7cmV0dXJuIFlrLmdldChhKX1mdW5jdGlvbiBhbChhLGIpe1lrfHwoWWs9bmV3IFhrKTt2YXIgYz1ZaztjLnN0b3JhZ2UuaGFzKFN0cmluZyhhKSl8fGMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIoKSk7cmV0dXJuIGMuc3RvcmFnZS5nZXQoU3RyaW5nKGEpKX07ZnVuY3Rpb24gYmwoYSxiKXtmdW5jdGlvbiBjKGcpe3ZhciBoPVJqKGcpLGw9TGooaCwicHJvdG9jb2wiKSxuPUxqKGgsImhvc3QiLCEwKSxwPUxqKGgsInBvcnQiKSxxPUxqKGgsInBhdGgiKS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1wvJC8sIiIpO2lmKGw9PT12b2lkIDB8fGw9PT0iaHR0cCImJnA9PT0iODAifHxsPT09Imh0dHBzIiYmcD09PSI0NDMiKWw9IndlYiIscD0iZGVmYXVsdCI7cmV0dXJuW2wsbixwLHFdfWZvcih2YXIgZD1jKFN0cmluZyhhKSksZT1jKFN0cmluZyhiKSksZj0wO2Y8ZC5sZW5ndGg7ZisrKWlmKGRbZl0hPT1lW2ZdKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIGNsKGEpe3JldHVybiBkbChhKT8xOjB9CmZ1bmN0aW9uIGRsKGEpe3ZhciBiPWEuYXJnMCxjPWEuYXJnMTtpZihhLmFueV9vZiYmQXJyYXkuaXNBcnJheShjKSl7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPUVkKGEse30pO0VkKHthcmcxOmNbZF0sYW55X29mOnZvaWQgMH0sZSk7aWYoY2woZSkpcmV0dXJuITB9cmV0dXJuITF9c3dpdGNoKGFbImZ1bmN0aW9uIl0pe2Nhc2UgIl9jbiI6cmV0dXJuIEtnKGIsYyk7Y2FzZSAiX2NzcyI6cmV0dXJuIEdnKGIsYyk7Y2FzZSAiX2V3IjpyZXR1cm4gSGcoYixjKTtjYXNlICJfZXEiOnJldHVybiBMZyhiLGMpO2Nhc2UgIl9nZSI6cmV0dXJuIE1nKGIsYyk7Y2FzZSAiX2d0IjpyZXR1cm4gT2coYixjKTtjYXNlICJfbGMiOnJldHVybiBJZyhiLGMpO2Nhc2UgIl9sZSI6cmV0dXJuIE5nKGIsYyk7Y2FzZSAiX2x0IjpyZXR1cm4gUGcoYixjKTtjYXNlICJfcmUiOnJldHVybiBKZyhiLGMsYS5pZ25vcmVfY2FzZSxhbCgzLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KSk7Y2FzZSAiX3N3IjpyZXR1cm4gUWcoYiwKYyk7Y2FzZSAiX3VtIjpyZXR1cm4gYmwoYixjKX1yZXR1cm4hMX07ZnVuY3Rpb24gZWwoYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGEpKXt2YXIgZjtzd2l0Y2goYVswXSl7Y2FzZSAiZnVuY3Rpb25faWQiOnJldHVybiBhWzFdO2Nhc2UgImxpc3QiOmY9W107Zm9yKHZhciBnPTE7ZzxhLmxlbmd0aDtnKyspZi5wdXNoKGVsKGFbZ10sYixjLGQsZSkpO3JldHVybiBmO2Nhc2UgIm1hY3JvIjp2YXIgaD1kW2FbMV1dO3JldHVybiBoP2guZXZhbHVhdGUoYixlKTp2b2lkIDA7Y2FzZSAibWFwIjpmPXt9O2Zvcih2YXIgbD0xO2w8YS5sZW5ndGg7bCs9MilmW2VsKGFbbF0sYixjLGQsZSldPWVsKGFbbCsxXSxiLGMsZCxlKTtyZXR1cm4gZjtjYXNlICJ0ZW1wbGF0ZSI6Zj1bXTtmb3IodmFyIG49ITEscD0xO3A8YS5sZW5ndGg7cCsrKXt2YXIgcT1lbChhW3BdLGIsYyxkLGUpO2YucHVzaChxKX1yZXR1cm4gZi5qb2luKCIiKTtjYXNlICJlc2NhcGUiOmY9ZWwoYVsxXSxiLGMsZCxlKTtmPVN0cmluZyhmKTtmb3IodmFyIHk9Mjt5PGEubGVuZ3RoO3krKylVaVthW3ldXSYmKGY9VWlbYVt5XV0oZikpO3JldHVybiBmO2Nhc2UgInRhZyI6dmFyIHo9YVsxXTtpZighY1t6XSl0aHJvdyBFcnJvcigiVW5hYmxlIHRvIHJlc29sdmUgdGFnIHJlZmVyZW5jZSAiKwp6KyIuIik7cmV0dXJue2JvOmFbMl0saW5kZXg6en07Y2FzZSAiemIiOnZhciBDPXt9LEQ9KENbR2YuWWJdPWFbMV0sQy5hcmcwPWVsKGFbMl0sYixjLGQsZSksQy5hcmcxPWVsKGFbM10sYixjLGQsZSksQy5pZ25vcmVfY2FzZT1lbChhWzVdLGIsYyxkLGUpLEMpLEk9Y2woRCksRz0hIWFbNF07cmV0dXJuIEd8fEkhPT0yP0chPT0oST09PTEpOm51bGw7ZGVmYXVsdDp0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBleHBhbmQgdW5rbm93biBWYWx1ZSB0eXBlOiAiK2FbMF0rIi4iKTt9fXJldHVybiBhfTtmdW5jdGlvbiBmbChhKXtyZXR1cm4gYSYmYS5pbmRleE9mKCJwZW5kaW5nOiIpPT09MD9nbChhLnN1YnN0cig4KSk6ITF9ZnVuY3Rpb24gZ2woYSl7aWYoYT09bnVsbHx8YS5sZW5ndGg9PT0wKXJldHVybiExO3ZhciBiPU51bWJlcihhKSxjPU5iKCk7cmV0dXJuIGI8YyszRTUmJmI+Yy05RTV9O3ZhciBobD0hMSxpbD0hMSxqbD0hMSxrbD0wLGxsPSExLG1sPXZvaWQgMCxubD1bXTtmdW5jdGlvbiBvbChhKXtpZihrbD09PTApbGwmJm5sJiYobmwubGVuZ3RoPj0xMDAmJm5sLnNoaWZ0KCksbmwucHVzaChhKSk7ZWxzZSBpZihwbCgpKXt2YXIgYj1FKDQxKSxjPU1jKGIsW10pO2MubGVuZ3RoPj01MCYmYy5zaGlmdCgpO2MucHVzaChhKX19ZnVuY3Rpb24gcWwoKXtpbHx8KHJsKCksc2woa2wpKX1mdW5jdGlvbiBzbChhKXtpZighaWx8fGtsPT09MiYmYT09PTEpaWYoaWw9ITAsamwmJihhZChCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwpLGpsPSExKSxtbCE9PXZvaWQgMCYmKEEuY2xlYXJUaW1lb3V0KG1sKSxtbD12b2lkIDApLGtsPWEsYT09PTEpe3ZhciBiPW5sO25sPXZvaWQgMDtiPT1udWxsfHxiLmZvckVhY2goZnVuY3Rpb24oYyl7b2woYyl9KX19CmZ1bmN0aW9uIHJsKCl7dmFyIGE9Qi5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLXRhZy1hc3Npc3RhbnQtcHJvZC1wcmVzZW50Iik7Z2woYSk/a2w9MTohZmwoYSl8fGhsfHxqbD9rbD0yOihqbD0hMCwkYyhCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwsITEpLG1sPUEuc2V0VGltZW91dChmdW5jdGlvbigpe2lsfHwocmwoKSxzbChrbCkpO2hsPSEwfSwyMDApKX1mdW5jdGlvbiBwbCgpe2lmKCFsbClyZXR1cm4hMTtzd2l0Y2goa2wpe2Nhc2UgMTpjYXNlIDA6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2RlZmF1bHQ6cmV0dXJuITF9fTtmdW5jdGlvbiB0bCgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KTtyZXR1cm4gYS5pY3M9YS5pY3N8fG5ldyB1bH12YXIgdWw9ZnVuY3Rpb24oKXt0aGlzLmVudHJpZXM9e307dGhpcy53YWl0UGVyaW9kVGltZWRPdXQ9dGhpcy53YXNTZXRMYXRlPXRoaXMuYWNjZXNzZWRBbnk9dGhpcy5hY2Nlc3NlZERlZmF1bHQ9dGhpcy51c2VkSW1wbGljaXQ9dGhpcy51c2VkVXBkYXRlPXRoaXMudXNlZERlZmF1bHQ9dGhpcy51c2VkRGVjbGFyZT10aGlzLmFjdGl2ZT0hMTt0aGlzLkg9W119Owp1bC5wcm90b3R5cGUuZGVmYXVsdD1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHwhdGhpcy5hY2Nlc3NlZERlZmF1bHQmJiF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWREZWZhdWx0PXRoaXMuYWN0aXZlPSEwO3NiKCJUQUdHSU5HIiwxOSk7Yj09bnVsbD9zYigiVEFHR0lORyIsMTgpOnZsKHRoaXMsYSxiPT09ImdyYW50ZWQiLGMsZCxlLGYsZyl9O3VsLnByb3RvdHlwZS53YWl0Rm9yVXBkYXRlPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGEubGVuZ3RoO2QrKyl2bCh0aGlzLGFbZF0sdm9pZCAwLHZvaWQgMCwiIiwiIixiLGMpfTsKdmFyIHZsPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9YS5lbnRyaWVzLG49bFtiXXx8e30scD1uLnJlZ2lvbixxPWQmJnpiKGQpP2QudG9VcHBlckNhc2UoKTp2b2lkIDA7ZT1lLnRvVXBwZXJDYXNlKCk7Zj1mLnRvVXBwZXJDYXNlKCk7aWYoZT09PSIifHxxPT09Znx8KHE9PT1lP3AhPT1mOiFxJiYhcCkpe3ZhciByPSEhKGcmJmc+MCYmbi51cGRhdGU9PT12b2lkIDApLHQ9e3JlZ2lvbjpxLGRlY2xhcmVfcmVnaW9uOm4uZGVjbGFyZV9yZWdpb24saW1wbGljaXQ6bi5pbXBsaWNpdCxkZWZhdWx0OmMhPT12b2lkIDA/YzpuLmRlZmF1bHQsZGVjbGFyZTpuLmRlY2xhcmUsdXBkYXRlOm4udXBkYXRlLHF1aWV0OnJ9O2lmKGUhPT0iInx8bi5kZWZhdWx0IT09ITEpbFtiXT10O3ImJkEuc2V0VGltZW91dChmdW5jdGlvbigpe2xbYl09PT10JiZ0LnF1aWV0JiYoc2IoIlRBR0dJTkciLDIpLGEud2FpdFBlcmlvZFRpbWVkT3V0PSEwLGEuY2xlYXJUaW1lb3V0KGIsdm9pZCAwLGgpLAphLm5vdGlmeUxpc3RlbmVycygpKX0sZyl9fTtrPXVsLnByb3RvdHlwZTtrLmNsZWFyVGltZW91dD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W2FdLGU9Yy5kZWxlZ2F0ZWRDb25zZW50VHlwZXMsZjtmb3IoZiBpbiBlKWUuaGFzT3duUHJvcGVydHkoZikmJmVbZl09PT1hJiZkLnB1c2goZik7dmFyIGc9dGhpcy5lbnRyaWVzW2FdfHx7fSxoPXRoaXMuZ2V0Q29uc2VudFN0YXRlKGEsYyk7aWYoZy5xdWlldCl7Zy5xdWlldD0hMTtmb3IodmFyIGw9bShkKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl3bCh0aGlzLG4udmFsdWUpfWVsc2UgaWYoYiE9PXZvaWQgMCYmaCE9PWIpZm9yKHZhciBwPW0oZCkscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpd2wodGhpcyxxLnZhbHVlKX07CmsudXBkYXRlPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHx0aGlzLnVzZWRVcGRhdGV8fCF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWRVcGRhdGU9dGhpcy5hY3RpdmU9ITA7aWYoYiE9bnVsbCl7dmFyIGQ9dGhpcy5nZXRDb25zZW50U3RhdGUoYSxjKSxlPXRoaXMuZW50cmllczsoZVthXT1lW2FdfHx7fSkudXBkYXRlPWI9PT0iZ3JhbnRlZCI7dGhpcy5jbGVhclRpbWVvdXQoYSxkLGMpfX07CmsuZGVjbGFyZT1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMudXNlZERlY2xhcmU9dGhpcy5hY3RpdmU9ITA7dmFyIGY9dGhpcy5lbnRyaWVzLGc9ZlthXXx8e30saD1nLmRlY2xhcmVfcmVnaW9uLGw9YyYmemIoYyk/Yy50b1VwcGVyQ2FzZSgpOnZvaWQgMDtkPWQudG9VcHBlckNhc2UoKTtlPWUudG9VcHBlckNhc2UoKTtpZihkPT09IiJ8fGw9PT1lfHwobD09PWQ/aCE9PWU6IWwmJiFoKSl7dmFyIG49e3JlZ2lvbjpnLnJlZ2lvbixkZWNsYXJlX3JlZ2lvbjpsLGRlY2xhcmU6Yj09PSJncmFudGVkIixpbXBsaWNpdDpnLmltcGxpY2l0LGRlZmF1bHQ6Zy5kZWZhdWx0LHVwZGF0ZTpnLnVwZGF0ZSxxdWlldDpnLnF1aWV0fTtpZihkIT09IiJ8fGcuZGVjbGFyZSE9PSExKWZbYV09bn19OwprLmltcGxpY2l0PWZ1bmN0aW9uKGEsYil7dGhpcy51c2VkSW1wbGljaXQ9ITA7dmFyIGM9dGhpcy5lbnRyaWVzLGQ9Y1thXT1jW2FdfHx7fTtkLmltcGxpY2l0IT09ITEmJihkLmltcGxpY2l0PWI9PT0iZ3JhbnRlZCIpfTsKay5nZXRDb25zZW50U3RhdGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmVudHJpZXMsZD1jW2FdfHx7fSxlPWQudXBkYXRlO2lmKGUhPT12b2lkIDApcmV0dXJuIGU/MToyO2lmKGIudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXt2YXIgZj1iLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2FdO2lmKGY9PT0zKXJldHVybiAxO2lmKGY9PT0yKXJldHVybiAyfWVsc2UgaWYoZT1kLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYj09bnVsbD8wOmIuZGVsZWdhdGVkQ29uc2VudFR5cGVzLmhhc093blByb3BlcnR5KGEpKXt2YXIgZz1iLmRlbGVnYXRlZENvbnNlbnRUeXBlc1thXSxoPWNbZ118fHt9O2U9aC51cGRhdGU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYi51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHMpe3ZhciBsPWIuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbZ107aWYobD09PTMpcmV0dXJuIDE7aWYobD09PTIpcmV0dXJuIDJ9ZWxzZSBpZihlPQpoLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjJ9ZT1kLmRlY2xhcmU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7ZT1kLmltcGxpY2l0O3JldHVybiBlIT09dm9pZCAwP2U/Mzo0OjB9O2suYWRkTGlzdGVuZXI9ZnVuY3Rpb24oYSxiKXt0aGlzLkgucHVzaCh7Y29uc2VudFR5cGVzOmEsaWU6Yn0pfTt2YXIgd2w9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGEuSC5sZW5ndGg7KytjKXt2YXIgZD1hLkhbY107QXJyYXkuaXNBcnJheShkLmNvbnNlbnRUeXBlcykmJmQuY29uc2VudFR5cGVzLmluZGV4T2YoYikhPT0tMSYmKGQueG89ITApfX07dWwucHJvdG90eXBlLm5vdGlmeUxpc3RlbmVycz1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2M8dGhpcy5ILmxlbmd0aDsrK2Mpe3ZhciBkPXRoaXMuSFtjXTtpZihkLnhvKXtkLnhvPSExO3RyeXtkLmllKHtjb25zZW50RXZlbnRJZDphLGNvbnNlbnRQcmlvcml0eUlkOmJ9KX1jYXRjaChlKXt9fX19O3ZhciB4bD0hMSx5bD0hMSx6bD17fSxBbD17ZGVsZWdhdGVkQ29uc2VudFR5cGVzOnt9LGNvcmVQbGF0Zm9ybVNlcnZpY2VzOnt9LHVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlczohMSxzZWxlY3RlZEFsbENvcmVQbGF0Zm9ybVNlcnZpY2VzOiExLGNvbnRhaW5lclNjb3BlZERlZmF1bHRzOih6bC5hZF9zdG9yYWdlPTEsemwuYW5hbHl0aWNzX3N0b3JhZ2U9MSx6bC5hZF91c2VyX2RhdGE9MSx6bC5hZF9wZXJzb25hbGl6YXRpb249MSx6bCksdXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzOiExfTtmdW5jdGlvbiBCbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuKHpiKGEpP1thXTphKS5ldmVyeShmdW5jdGlvbihjKXtzd2l0Y2goYi5nZXRDb25zZW50U3RhdGUoYyxBbCkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOmNhc2UgNDpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX0pfQpmdW5jdGlvbiBDbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuIGIuZ2V0Q29uc2VudFN0YXRlKGEsQWwpfWZ1bmN0aW9uIERsKGEpe3ZhciBiPXRsKCk7Yi5hY2Nlc3NlZEFueT0hMDtyZXR1cm4hKGIuZW50cmllc1thXXx8e30pLnF1aWV0fWZ1bmN0aW9uIEVsKCl7aWYoIVlmKDUpKXJldHVybiExO3ZhciBhPXRsKCk7YS5hY2Nlc3NlZEFueT0hMDtpZihhLmFjdGl2ZSlyZXR1cm4hMDtpZighQWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXJldHVybiExO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpaWYoQWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbYy52YWx1ZV0hPT0xKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEZsKGEsYil7dGwoKS5hZGRMaXN0ZW5lcihhLGIpfQpmdW5jdGlvbiBHbChhLGIpe3RsKCkubm90aWZ5TGlzdGVuZXJzKGEsYil9ZnVuY3Rpb24gSGwoYSxiKXtpZihiLmV2ZXJ5KERsKSlhKHt9KTtlbHNle3ZhciBjPSExO0ZsKGIsZnVuY3Rpb24oZCl7IWMmJmIuZXZlcnkoRGwpJiYoYz0hMCxhKGQpKX0pfX0KZnVuY3Rpb24gSWwoYSxiKXt2YXIgYz16YihiKT9bYl06YixkPXt9LGU9ZnVuY3Rpb24oKXtyZXR1cm4gYy5maWx0ZXIoZnVuY3Rpb24oaCl7cmV0dXJuIEJsKGgpJiYhZFtoXX0pfSxmPWUoKTtpZihmLmxlbmd0aCE9PWMubGVuZ3RoKXt2YXIgZz1mdW5jdGlvbihoKXtmb3IodmFyIGw9bShoKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSlkW24udmFsdWVdPSEwfTtnKGYpO0ZsKGMsZnVuY3Rpb24oaCl7ZnVuY3Rpb24gbChxKXtxLmxlbmd0aCE9PTAmJihnKHEpLGguY29uc2VudFR5cGVzPXEsYShoKSl9dmFyIG49ZSgpO2lmKG4ubGVuZ3RoIT09MCl7dmFyIHA9T2JqZWN0LmtleXMoZCkubGVuZ3RoO24ubGVuZ3RoK3A+PWMubGVuZ3RoP2wobik6QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bChlKCkpfSw1MDApfX0pfX07dmFyIEpsPSExO2Z1bmN0aW9uIEtsKGEsYil7dmFyIGM9d2soKSxkPXRrKCk7RSgyNik7dmFyIGU9SWYoNDcpPzA6SWYoNTApPzE6MyxmPVhqKCk7aWYocGwoKSl7dmFyIGc9TGwoIklOSVQiKTtnLmNvbnRhaW5lckxvYWRTb3VyY2U9YSE9bnVsbD9hOjA7YiYmKGcucGFyZW50VGFyZ2V0UmVmZXJlbmNlPWIpO2cuYWxpYXNlcz1jO2cuZGVzdGluYXRpb25zPWQ7ZSE9PXZvaWQgMCYmKGcuZ3RnPXtzb3VyY2U6ZSxtUGF0aDpmIT1udWxsP2Y6IiJ9KTtvbChnKX19CmZ1bmN0aW9uIE1sKGEpe3ZhciBiLGMsZCxlO2I9YS50YXJnZXRJZDtjPWEucmVxdWVzdDtkPWEucWI7ZT1hLmlzQmF0Y2hlZDt2YXIgZjtpZihmPXBsKCkpe3ZhciBnO2E6c3dpdGNoKGMuZW5kcG9pbnQpe2Nhc2UgNjg6Y2FzZSA2OTpjYXNlIDE5OmNhc2UgNjI6Y2FzZSA0NzpnPSEwO2JyZWFrIGE7ZGVmYXVsdDpnPSExfWY9IWd9aWYoZil7dmFyIGg9TGwoIkdUQUdfSElUIix7ZXZlbnRJZDpkLmV2ZW50SWQscHJpb3JpdHlJZDpkLnByaW9yaXR5SWR9KTtoLnRhcmdldD1iO2gudXJsPWMudXJsO2MucG9zdEJvZHkmJihoLnBvc3RCb2R5PWMucG9zdEJvZHkpO2gucGFyYW1ldGVyRW5jb2Rpbmc9Yy5wYXJhbWV0ZXJFbmNvZGluZztoLmVuZHBvaW50PWMuZW5kcG9pbnQ7ZSE9PXZvaWQgMCYmKGguaXNCYXRjaGVkPWUpO29sKGgpfX1mdW5jdGlvbiBObChhKXtwbCgpJiZNbChhKCkpfQpmdW5jdGlvbiBMbChhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2IuZ3JvdXBJZD1PbDt2YXIgYyxkPWIsZT1QbCxmPXtwdWJsaWNJZDpRbH07ZC5ldmVudElkIT1udWxsJiYoZi5ldmVudElkPWQuZXZlbnRJZCk7ZC5wcmlvcml0eUlkIT1udWxsJiYoZi5wcmlvcml0eUlkPWQucHJpb3JpdHlJZCk7ZC5ldmVudE5hbWUmJihmLmV2ZW50TmFtZT1kLmV2ZW50TmFtZSk7ZC5ncm91cElkJiYoZi5ncm91cElkPWQuZ3JvdXBJZCk7ZC50YWdOYW1lJiYoZi50YWdOYW1lPWQudGFnTmFtZSk7Yz17Y29udGFpbmVyUHJvZHVjdDoiR1RNIixrZXk6Zix2ZXJzaW9uOmUsbWVzc2FnZVR5cGU6YX07Yy5jb250YWluZXJQcm9kdWN0PUpsPyJPR1QiOiJHVE0iO2Mua2V5LnRhcmdldFJlZj1SbDtyZXR1cm4gY312YXIgUWw9IiIsUGw9IiIsUmw9e2N0aWQ6IiIsaXNEZXN0aW5hdGlvbjohMX0sT2w7CmZ1bmN0aW9uIFNsKGEpe3ZhciBiPUUoNSksYz1JZig0NSksZD1zaygpLGU9RSg2KSxmPUUoMSk7RSgyMyk7a2w9MDtsbD0hMDtybCgpO09sPWE7UWw9YjtQbD1mO0psPWM7Umw9e2N0aWQ6Yixpc0Rlc3RpbmF0aW9uOmQsY2Fub25pY2FsSWQ6ZX19O2Z1bmN0aW9uIFRsKGEsYixjLGQpe2lmKHBsKCkpe3ZhciBlPWIuTTtNbCh7dGFyZ2V0SWQ6ZHx8W2IudGFyZ2V0LmRlc3RpbmF0aW9uSWRdLHJlcXVlc3Q6e3VybDphLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6Y30scWI6e2V2ZW50SWQ6ZS5ldmVudElkLHByaW9yaXR5SWQ6ZS5wcmlvcml0eUlkfSxGajp7ZXZlbnRJZDpRKGIsSC5KLnVmKSxwcmlvcml0eUlkOlEoYixILkoudmYpfX0pfX07ZnVuY3Rpb24gVWwoYSxiLGMpe3ZhciBkPSJodHRwczovLyIrYStiO3JldHVybiBjP2Z1bmN0aW9uKCl7cmV0dXJuIFdqKCk/WGooKStjK2I6ZH06ZnVuY3Rpb24oKXtyZXR1cm4gZH19O3ZhciBWbD17fSxXbD0oVmxbMjJdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvYXMvZCIpLFZsWzYwXT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvZ3MiKSxWbFsyM109VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9jb252ZXJzaW9uIiwiL2cvZCIpLFZsKTt2YXIgWGw9e30sWWw9KFhsWzVdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iKSxYbFs2XT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iLCIvZ3MiKSxYbFs4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs2Nl09VWwoInd3dy5nb29nbGUuY29tIiwiL3BhZ2VhZC91Y29udmVyc2lvbiIpLFhsWzYzXT1VbCgid3d3Lmdvb2dsZWFkc2VydmljZXMuY29tIiwiL3BhZ2VhZC9jb252ZXJzaW9uIiksWGxbNjRdPVVsKCJwYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIsIi9wYWdlYWQvY29udmVyc2lvbiIsIi9ncyIpLFhsWzY1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs3NF09ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2FzL3AvYyJ9LFhsKTt2YXIgWmw9e30sJGw9KFpsWzQ1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvY2NtL2NvbGxlY3QiKSxabFs0Nl09VWwoInBhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tIiwiL2NjbS9jb2xsZWN0IiwiL2dzIiksWmxbNjldPVVsKCJhZC5kb3VibGVjbGljay5uZXQiLCIvY2NtL3MvY29sbGVjdCIpLFpsWzU4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkL3NldF9wYXJ0aXRpb25lZF9jb29raWUiKSxabFs1N109VWwoInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIsIi9wYWdlYWQvc2V0X3BhcnRpdGlvbmVkX2Nvb2tpZSIpLFpsKTt2YXIgYW09e30sYm09KGFtWzldPVVsKCJnb29nbGVhZHMuZy5kb3VibGVjbGljay5uZXQiLCIvcGFnZWFkL3ZpZXd0aHJvdWdoY29udmVyc2lvbiIpLGFtWzY4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcm1rdC9jb2xsZWN0IiksYW0pO3ZhciBjbT17fSxkbT0oY21bMTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVsyMV09VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9mb3JtLWRhdGEiLCIvZCIpLGNtWzcyXT1VbCgiZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVs3M109VWwoImdvb2dsZS5jb20iLCIvY2NtL2Zvcm0tZGF0YSIsIi9kIiksY20pO3ZhciBlbT17fSxmbT0oZW1bNTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi90cmF2ZWwvZmxpZ2h0cy9jbGljay9jb252ZXJzaW9uIiksZW0pO3ZhciBnbT17fSxobT0oZ21bMV09ZnVuY3Rpb24oKXtyZXR1cm4iaHR0cHM6Ly9hZC5kb3VibGVjbGljay5uZXQvYWN0aXZpdHk7In0sZ21bMl09ZnVuY3Rpb24oKXtyZXR1cm4oV2ooKT9YaigpOiJodHRwczovL2FkZS5nb29nbGVzeW5kaWNhdGlvbi5jb20iKSsiL2RkbS9hY3Rpdml0eSIrKE0oNDY3KT8iOyI6Ii8iKX0sZ21bM109ZnVuY3Rpb24oYSl7cmV0dXJuImh0dHBzOi8vIithLmxyKyIuZmxzLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eWk7In0sZ20pO2Z1bmN0aW9uIGltKGEpe3NiKCJIRUFMVEgiLGEpfTt2YXIgam09e2JhOntQdDoiYXdfdXNlcl9kYXRhX2NhY2hlIixvaToiY29va2llX2RlcHJlY2F0aW9uX2xhYmVsIixiaDoiZGlhZ25vc3RpY3NfcGFnZV9pZCIsb3A6ImVtZW1vIixkdToiZW1fcmVnaXN0cnkiLFNpOiJlYWIiLHJ1OiJmbF91c2VyX2RhdGFfY2FjaGUiLHR1OiJnYTRfdXNlcl9kYXRhX2NhY2hlIixMdToiaWRjX3B2X2NsYWltIixTZToiaXBfZ2VvX2RhdGFfY2FjaGUiLFhpOiJpcF9nZW9fZmV0Y2hfaW5fcHJvZ3Jlc3MiLGpuOiJuYl9kYXRhIixUcToicGFnZV9leHBlcmltZW50X2lkcyIsbG46InBsZCIsVmU6InB0X2RhdGEiLG1uOiJwdF9saXN0ZW5lcl9zZXQiLGtqOiJyZXRyeV9jb250YWluZXJzIixPaDoic2VydmljZV93b3JrZXJfZW5kcG9pbnQiLFpxOiJzaGFyZWRfdXNlcl9pZCIsYXI6InNoYXJlZF91c2VyX2lkX3JlcXVlc3RlZCIsc2o6InNoYXJlZF91c2VyX2lkX3NvdXJjZSIsYnY6ImF3aCIsaHI6InVuaXZlcnNhbF9jbGFpbV9yZWdpc3RyeSJ9fTt2YXIga209ZnVuY3Rpb24oYSl7cmV0dXJuIHRmKGZ1bmN0aW9uKGIpe2Zvcih2YXIgYyBpbiBhKWlmKGI9PT1hW2NdJiYhL15bMC05XSskLy50ZXN0KGMpKXJldHVybiEwO3JldHVybiExfSl9KGptLmJhKTsKZnVuY3Rpb24gbG0oYSxiKXtiPWI9PT12b2lkIDA/ITE6YjtpZihrbShhKSl7dmFyIGMsZCxlPShkPShjPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSkueGNkKSE9bnVsbD9kOmMueGNkPXt9O2lmKGVbYV0pcmV0dXJuIGVbYV07aWYoYil7dmFyIGY9dm9pZCAwLGc9MSxoPXt9LGw9e3NldDpmdW5jdGlvbihuKXtmPW47bC5ub3RpZnkoKX0sZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGZ9LHN1YnNjcmliZTpmdW5jdGlvbihuKXtoW1N0cmluZyhnKV09bjtyZXR1cm4gZysrfSx1bnN1YnNjcmliZTpmdW5jdGlvbihuKXt2YXIgcD1TdHJpbmcobik7cmV0dXJuIGguaGFzT3duUHJvcGVydHkocCk/KGRlbGV0ZSBoW3BdLCEwKTohMX0sbm90aWZ5OmZ1bmN0aW9uKCl7Zm9yKHZhciBuPW0oT2JqZWN0LmtleXMoaCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3RyeXtoW3FdKGEsZil9Y2F0Y2gocil7fX19fTtyZXR1cm4gZVthXT1sfX19CmZ1bmN0aW9uIG1tKGEsYil7dmFyIGM9bG0oYSwhMCk7YyYmYy5zZXQoYil9ZnVuY3Rpb24gbm0oYSl7dmFyIGI7cmV0dXJuKGI9bG0oYSkpPT1udWxsP3ZvaWQgMDpiLmdldCgpfWZ1bmN0aW9uIG9tKGEsYil7dmFyIGM9bG0oYSk7aWYoIWMpe2M9bG0oYSwhMCk7aWYoIWMpcmV0dXJuO2Muc2V0KGIpfXJldHVybiBjLmdldCgpfWZ1bmN0aW9uIHBtKGEsYil7aWYodHlwZW9mIGI9PT0iZnVuY3Rpb24iKXt2YXIgYztyZXR1cm4oYz1sbShhLCEwKSk9PW51bGw/dm9pZCAwOmMuc3Vic2NyaWJlKGIpfX1mdW5jdGlvbiBxbShhLGIpe3ZhciBjPWxtKGEpO3JldHVybiBjP2MudW5zdWJzY3JpYmUoYik6ITF9O3ZhciBzbT1mdW5jdGlvbigpe3RoaXMuSD17fTt0aGlzLks9ITF9O3NtLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dGhpcy5LfHwodGhpcy5IPXRtKCksdGhpcy5IWyIwIl0mJm9tKGptLmJhLlNlLEpTT04uc3RyaW5naWZ5KHRoaXMuSCkpKX07CnZhciB4bT1mdW5jdGlvbigpe3ZhciBhPXVtLGI9dm0sYz12b2lkIDAsZD1mdW5jdGlvbigpe2MhPT12b2lkIDAmJnFtKGptLmJhLlNlLGMpO3RyeXt2YXIgZj1ubShqbS5iYS5TZSk7Yi5IPUpTT04ucGFyc2UoZil9Y2F0Y2goZyl7UCgxMjMpLGltKDIpLGIuSD17fX1iLks9ITA7YSgpfSxlPW5tKGptLmJhLlNlKTtlP2QoZSk6KGM9cG0oam0uYmEuU2UsZCksd20oKSl9LHdtPWZ1bmN0aW9uKCl7aWYoIW5tKGptLmJhLlhpKSl7bW0oam0uYmEuWGksITApO3ZhciBhPWZ1bmN0aW9uKGIpe21tKGptLmJhLlNlLGJ8fCJ7fSIpO21tKGptLmJhLlhpLCExKX07dHJ5e0EuZmV0Y2goImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vY2NtL2dlbyIse21ldGhvZDoiR0VUIixjYWNoZToibm8tc3RvcmUiLG1vZGU6ImNvcnMiLGNyZWRlbnRpYWxzOiJvbWl0In0pLnRoZW4oZnVuY3Rpb24oYil7Yi5vaz9iLnRleHQoKS50aGVuKGZ1bmN0aW9uKGMpe2EoYyl9LGZ1bmN0aW9uKCl7YSgpfSk6YSgpfSxmdW5jdGlvbigpe2EoKX0pfWNhdGNoKGIpe2EoKX19fSwKdG09ZnVuY3Rpb24oKXt2YXIgYT1FKDIyKTt0cnl7cmV0dXJuIEpTT04ucGFyc2UocWIoYSkpfWNhdGNoKGIpe3JldHVybiBQKDEyMyksaW0oMikse319fSx5bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIwIl18fCIifSx6bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIxIl18fCIifSxBbT1mdW5jdGlvbigpe3ZhciBhPXZtLGI9ITE7cmV0dXJuIGJ9LEJtPWZ1bmN0aW9uKCl7cmV0dXJuIHZtLkhbIjYiXSE9PSExfSxDbT1mdW5jdGlvbigpe3ZhciBhPXZtLGI9ITE7cmV0dXJuIGJ9LERtPWZ1bmN0aW9uKCl7dmFyIGE9dm0sYj0iIjsKcmV0dXJuIGJ9LEVtPWZ1bmN0aW9uKCl7dmFyIGE9dm0sYj0iIjtyZXR1cm4gYn0sdm09bmV3IHNtO2Z1bmN0aW9uIEZtKGEpe2E9YT09PXZvaWQgMD8iZy9jb2xsZWN0IjphO3JldHVybiJodHRwczovLyIrKERtKCl8fCJ3d3ciKSsiLmdvb2dsZS1hbmFseXRpY3MuY29tLyIrYX1mdW5jdGlvbiBHbShhKXthPWE9PT12b2lkIDA/ImcvY29sbGVjdCI6YTt2YXIgYj1EbSgpO3JldHVybiJodHRwczovLyIrKGI/YisiLiI6IiIpKyJhbmFseXRpY3MuZ29vZ2xlLmNvbS8iK2F9dmFyIEhtPXt9LEltPShIbVsxN109ZnVuY3Rpb24oKXtyZXR1cm4gV2ooKSYmIURtKCk/WGooKSsiL2FnL2cvYyI6R20oKX0sSG1bMTZdPWZ1bmN0aW9uKCl7cmV0dXJuIFdqKCkmJiFEbSgpP1hqKCkrIi9nYS9nL2MiOkZtKCl9LEhtWzY3XT1mdW5jdGlvbigpe3ZhciBhO2E9YT09PXZvaWQgMD8iZy9jb2xsZWN0IjphO3JldHVybiBEbSgpPyIiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyIrYX0sSG0pO2Z1bmN0aW9uIEptKGEsYixjKXt2YXIgZD1VbChiLCIvbWVhc3VyZW1lbnQvY29udmVyc2lvbiIsYyk7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIERtKCk/YSgibWVhc3VyZW1lbnQvY29udmVyc2lvbiIpOmQoKX19dmFyIEttPXt9LExtPShLbVs1NV09Sm0oRm0sInBhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tIiwiL2dzIiksS21bNTRdPUptKEdtLCJ3d3cuZ29vZ2xlLmNvbSIsIi9nIiksS20pO3ZhciBNbT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LFdsLFlsLCRsLGJtLGRtLGZtLGhtLExtLEltKTtmdW5jdGlvbiBObShhLGIpe3ZhciBjPU9iamVjdC5rZXlzKGIpLmZpbHRlcihmdW5jdGlvbihkKXtyZXR1cm4gYltkXSE9bnVsbH0pLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gZCsiPSIrYltkXX0pLmpvaW4oIiYiKTtyZXR1cm4gTW1bYV0odm9pZCAwKSsiPyIrY307dmFyIE9tPXt9LFBtPShPbS50ZHA9MSxPbS5leHA9MSxPbS5ndG09MSxPbS5waWQ9MSxPbS5kbD0xLE9tLnNlcT0xLE9tLnQ9MSxPbS52PTEsT20pLFJtPWZ1bmN0aW9uKCl7dmFyIGE9UW07cmV0dXJuIE9iamVjdC5rZXlzKGEuSCkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiBhLkhbYl19KX0sU209ZnVuY3Rpb24oYSxiLGMpe2lmKGEuSFtiXT09PXZvaWQgMHx8KGM9PT12b2lkIDA/MDpjKSlhLkhbYl09ITB9LFRtPWZ1bmN0aW9uKGEpe2EuZm9yRWFjaChmdW5jdGlvbihiKXtQbVtiXXx8KFFtLkhbYl09ITEpfSl9LFFtPW5ldyBmdW5jdGlvbigpe3RoaXMuSD17fTt0aGlzLks9e319O2Z1bmN0aW9uIFVtKGEsYixjKXt2YXIgZD1jPT09dm9pZCAwPyEwOmMsZT1RbTtlLktbYV09YjsoZD09PXZvaWQgMHx8ZCkmJlNtKGUsYSl9ZnVuY3Rpb24gVm0oYSxiKXtTbShRbSxhLGI9PT12b2lkIDA/ITE6Yil9O2Z1bmN0aW9uIFdtKGEpe3ZhciBiPTA7YS5HYy5mb3JFYWNoKGZ1bmN0aW9uKGMpe2J8PTE8PGN9KTtyZXR1cm4gYn1mdW5jdGlvbiBYbSgpe3JldHVybnt0b3RhbDowLGpiOjAsR2M6bmV3IFNldCxsZjp7fX19ZnVuY3Rpb24gWW0oYSxiLGMsZCl7dmFyIGU9T2JqZWN0LmtleXMoYS5uZikuc29ydChmdW5jdGlvbihmLGcpe3JldHVybiBOdW1iZXIoZiktTnVtYmVyKGcpfSkubWFwKGZ1bmN0aW9uKGYpe3JldHVybltmLGIoYS5uZltmXSldfSkuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmWzFdIT09dm9pZCAwfSkubWFwKGZ1bmN0aW9uKGYpe3JldHVybiBmLmpvaW4oYyl9KS5qb2luKGQpO3JldHVybiBlP2U6dm9pZCAwfQpmdW5jdGlvbiBabShhLGIpe3ZhciBjLGQsZTtjPWM9PT12b2lkIDA/Il8iOmM7ZD1kPT09dm9pZCAwPyI7IjpkO2U9ZT09PXZvaWQgMD8ifiI6ZTtmb3IodmFyIGY9W10sZz1tKE9iamVjdC5rZXlzKGEubGYpLnNvcnQoKSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWUsbj1ZbShhLmxmW2xdLGIsYyxkKTtpZihuKXt2YXIgcD12b2lkIDA7Zi5wdXNoKCIiKygocD1sKSE9bnVsbD9wOiIiKStkK24pfX1yZXR1cm4gZi5sZW5ndGg/Zi5qb2luKGUpOnZvaWQgMH0KZnVuY3Rpb24gJG0oYSl7YS5qYj0wO2EuR2MuY2xlYXIoKTtmb3IodmFyIGI9bShPYmplY3Qua2V5cyhhLmxmKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe3ZhciBkPWEubGZbYy52YWx1ZV07ZC5qYj0wO2QuR2MuY2xlYXIoKTtmb3IodmFyIGU9bShPYmplY3Qua2V5cyhkLm5mKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWQubmZbZi52YWx1ZV07Zy5qYj0wO2cuR2MuY2xlYXIoKX19fQpmdW5jdGlvbiBhbihhLGIsYyxkLGUpe2Q9ZD09PXZvaWQgMD8xOmQ7YS50b3RhbCs9ZDthLmpiKz1kO3ZhciBmLGc9Yj09PXZvaWQgMD8iIjpiO2Y9YS5sZltnXXx8KGEubGZbZ109e3RvdGFsOjAsamI6MCxHYzpuZXcgU2V0LG5mOnt9fSk7Zi50b3RhbCs9ZDtmLmpiKz1kO3ZhciBoLGw9U3RyaW5nKGMpO2g9Zi5uZltsXXx8KGYubmZbbF09e3RvdGFsOjAsamI6MCxHYzpuZXcgU2V0fSk7aC50b3RhbCs9ZDtoLmpiKz1kO2UhPT12b2lkIDAmJihhLkdjLmFkZChlKSxmLkdjLmFkZChlKSxoLkdjLmFkZChlKSl9O3ZhciBibj1mdW5jdGlvbigpe3RoaXMuSD1YbSgpfTtibi5wcm90b3R5cGUuaW5jcmVtZW50PWZ1bmN0aW9uKGEsYil7YW4odGhpcy5ILGEsYil9O3ZhciBjbj1uZXcgYm47ZnVuY3Rpb24gZG4oYSl7dmFyIGI9U3RyaW5nKGFbR2YuWWJdfHwiIikucmVwbGFjZSgvXy9nLCIiKTtyZXR1cm4gU2IoYiwiY3Z0Iik/ImN2dCI6Yn12YXIgZW49QS5sb2NhdGlvbi5zZWFyY2guaW5kZXhPZigiP2d0bV9sYXRlbmN5PSIpPj0wfHxBLmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCImZ3RtX2xhdGVuY3k9Iik+PTA7dmFyIGduPWZ1bmN0aW9uKCl7dmFyIGE9Zm47cmV0dXJuIE0oNjAzKSYmSWYoNjUsITEpJiYhYS5afSxmbj1uZXcgZnVuY3Rpb24oYSl7dGhpcy5SPWEoKTt2YXIgYj1KZigyNyk7dGhpcy5OPWVufHx0aGlzLlI8Yjt2YXIgYz1KZig0Mik7dGhpcy5aPWVufHx0aGlzLlI+PTEtYzt2YXIgZD1NKDYwMykmJklmKDY1LCExKTt0aGlzLks9dGhpcy5afHxkO3ZhciBlPUpmKDI3KSxmPUpmKDYzKTt0aGlzLkg9ZW58fGY9PT0xfHx0aGlzLlI+PWUmJnRoaXMuUjxlK2Z9KGZ1bmN0aW9uKCl7cmV0dXJuIE1hdGgucmFuZG9tKCl9KTt2YXIgaG49ZnVuY3Rpb24oKXt0aGlzLkg9e319O2huLnByb3RvdHlwZS5yZWdpc3Rlcj1mdW5jdGlvbihhLGIsYyl7aWYoZm4uSyl7dmFyIGQ9am4oYixjKTtpZihkKXt2YXIgZSxmPWI7Zj09PTQmJihmPTUpO3ZhciBnPXRoaXMuSFtmXTtnfHwoZz10aGlzLkhbZl09e30pO2U9Zzt2YXIgaD1lW2RdO2h8fChoPWVbZF09W10pO2gucHVzaChuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGEpKTtjbi5pbmNyZW1lbnQoYS5kZXN0aW5hdGlvbklkLGEuZW5kcG9pbnQpO2EuZW5kcG9pbnQhPT01NiYmYS5lbmRwb2ludCE9PTYxJiZWbSgibWRlIiwhMCl9fX07CnZhciBtbj1mdW5jdGlvbihhLGIpe3ZhciBjPWtuLGQ9am4oYSxiKTtpZihkKXt2YXIgZT1sbihjLGEpO2lmKGUpe3ZhciBmPWVbZF07ZiYmKGVbZF09Zi5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIWcuRW99KSl9fX0sbG49ZnVuY3Rpb24oYSxiKXtiPT09NCYmKGI9NSk7cmV0dXJuIGEuSFtiXX0sam49ZnVuY3Rpb24oYSxiKXt2YXIgYz1iO2lmKGJbMF09PT0iLyIpe3ZhciBkO2M9KChkPUEubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpkLm9yaWdpbikrYn10cnl7dmFyIGU9bmV3IFVSTChjKTtyZXR1cm4gYT09PTI/ZS5vcmlnaW46ZS5vcmlnaW4rZS5wYXRobmFtZX1jYXRjaChmKXt9fSxrbj1uZXcgaG47CmZ1bmN0aW9uIG5uKGEpe3N3aXRjaChhKXtjYXNlICJzY3JpcHQtc3JjIjpyZXR1cm4gNDtjYXNlICJzY3JpcHQtc3JjLWVsZW0iOnJldHVybiA1O2Nhc2UgImZyYW1lLXNyYyI6cmV0dXJuIDI7Y2FzZSAiY29ubmVjdC1zcmMiOnJldHVybiAxO2Nhc2UgImltZy1zcmMiOnJldHVybiAzfX07ZnVuY3Rpb24gb24oYSxiLGMpe3ZhciBkLGU9YS5Hb29nbGViUWhDc087ZXx8KGU9e30sYS5Hb29nbGViUWhDc089ZSk7ZD1lO2lmKGRbYl0pcmV0dXJuITE7ZFtiXT1bXTtkW2JdWzBdPWM7cmV0dXJuITB9O3ZhciBwbixxbjthOntmb3IodmFyIHJuPVsiQ0xPU1VSRV9GTEFHUyJdLHNuPVJhLHRuPTA7dG48cm4ubGVuZ3RoO3RuKyspaWYoc249c25bcm5bdG5dXSxzbj09bnVsbCl7cW49bnVsbDticmVhayBhfXFuPXNufXZhciB1bj1xbiYmcW5bNjEwNDAxMzAxXTtwbj11biE9bnVsbD91bjohMTtmdW5jdGlvbiB2bigpe3ZhciBhPVJhLm5hdmlnYXRvcjtpZihhKXt2YXIgYj1hLnVzZXJBZ2VudDtpZihiKXJldHVybiBifXJldHVybiIifXZhciB3bix4bj1SYS5uYXZpZ2F0b3I7d249eG4/eG4udXNlckFnZW50RGF0YXx8bnVsbDpudWxsO2Z1bmN0aW9uIHluKGEpe2lmKCFwbnx8IXduKXJldHVybiExO2Zvcih2YXIgYj0wO2I8d24uYnJhbmRzLmxlbmd0aDtiKyspe3ZhciBjPXduLmJyYW5kc1tiXS5icmFuZDtpZihjJiZjLmluZGV4T2YoYSkhPS0xKXJldHVybiEwfXJldHVybiExfWZ1bmN0aW9uIHpuKGEpe3JldHVybiB2bigpLmluZGV4T2YoYSkhPS0xfTtmdW5jdGlvbiBBbigpe3JldHVybiBwbj8hIXduJiZ3bi5icmFuZHMubGVuZ3RoPjA6ITF9ZnVuY3Rpb24gQm4oKXtyZXR1cm4gQW4oKT8hMTp6bigiT3BlcmEiKX1mdW5jdGlvbiBDbigpe3JldHVybiB6bigiRmlyZWZveCIpfHx6bigiRnhpT1MiKX1mdW5jdGlvbiBEbigpe3JldHVybiBBbigpP3luKCJDaHJvbWl1bSIpOih6bigiQ2hyb21lIil8fHpuKCJDcmlPUyIpKSYmIShBbigpPzA6em4oIkVkZ2UiKSl8fHpuKCJTaWxrIil9O2Z1bmN0aW9uIEVuKCl7cmV0dXJuIHBuPyEhd24mJiEhd24ucGxhdGZvcm06ITF9ZnVuY3Rpb24gRm4oKXtyZXR1cm4gem4oImlQaG9uZSIpJiYhem4oImlQb2QiKSYmIXpuKCJpUGFkIil9ZnVuY3Rpb24gR24oKXtGbigpfHx6bigiaVBhZCIpfHx6bigiaVBvZCIpfTt2YXIgSG49ZnVuY3Rpb24oYSl7SG5bIiAiXShhKTtyZXR1cm4gYX07SG5bIiAiXT1mdW5jdGlvbigpe307Qm4oKTtBbigpfHx6bigiVHJpZGVudCIpfHx6bigiTVNJRSIpO3puKCJFZGdlIik7IXpuKCJHZWNrbyIpfHx2bigpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigid2Via2l0IikhPS0xJiYhem4oIkVkZ2UiKXx8em4oIlRyaWRlbnQiKXx8em4oIk1TSUUiKXx8em4oIkVkZ2UiKTt2bigpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigid2Via2l0IikhPS0xJiYhem4oIkVkZ2UiKSYmem4oIk1vYmlsZSIpO0VuKCl8fHpuKCJNYWNpbnRvc2giKTtFbigpfHx6bigiV2luZG93cyIpOyhFbigpP3duLnBsYXRmb3JtPT09IkxpbnV4Ijp6bigiTGludXgiKSl8fEVuKCl8fHpuKCJDck9TIik7RW4oKXx8em4oIkFuZHJvaWQiKTtGbigpO3puKCJpUGFkIik7em4oImlQb2QiKTtHbigpO3ZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJrYWlvcyIpO0NuKCk7Rm4oKXx8em4oImlQb2QiKTt6bigiaVBhZCIpOyF6bigiQW5kcm9pZCIpfHxEbigpfHxDbigpfHxCbigpfHx6bigiU2lsayIpO0RuKCk7IXpuKCJTYWZhcmkiKXx8RG4oKXx8KEFuKCk/MDp6bigiQ29hc3QiKSl8fEJuKCl8fChBbigpPzA6em4oIkVkZ2UiKSl8fChBbigpP3luKCJNaWNyb3NvZnQgRWRnZSIpOnpuKCJFZGcvIikpfHwoQW4oKT95bigiT3BlcmEiKTp6bigiT1BSIikpfHxDbigpfHx6bigiU2lsayIpfHx6bigiQW5kcm9pZCIpfHxHbigpO3ZhciBJbj17fSxKbj1udWxsOwpmdW5jdGlvbiBLbihhKXtmb3IodmFyIGI9W10sYz0wLGQ9MDtkPGEubGVuZ3RoO2QrKyl7dmFyIGU9YS5jaGFyQ29kZUF0KGQpO2U+MjU1JiYoYltjKytdPWUmMjU1LGU+Pj04KTtiW2MrK109ZX12YXIgZj00O2Y9PT12b2lkIDAmJihmPTApO2lmKCFKbil7Sm49e307Zm9yKHZhciBnPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIuc3BsaXQoIiIpLGg9WyIrLz0iLCIrLyIsIi1fPSIsIi1fLiIsIi1fIl0sbD0wO2w8NTtsKyspe3ZhciBuPWcuY29uY2F0KGhbbF0uc3BsaXQoIiIpKTtJbltsXT1uO2Zvcih2YXIgcD0wO3A8bi5sZW5ndGg7cCsrKXt2YXIgcT1uW3BdO0puW3FdPT09dm9pZCAwJiYoSm5bcV09cCl9fX1mb3IodmFyIHI9SW5bZl0sdD1BcnJheShNYXRoLmZsb29yKGIubGVuZ3RoLzMpKSx1PXJbNjRdfHwiIix2PTAseD0wO3Y8Yi5sZW5ndGgtMjt2Kz0zKXt2YXIgeT1iW3ZdLHo9Ylt2KzFdLEM9Ylt2KzJdLApEPXJbeT4+Ml0sST1yWyh5JjMpPDw0fHo+PjRdLEc9clsoeiYxNSk8PDJ8Qz4+Nl0sTj1yW0MmNjNdO3RbeCsrXT0iIitEK0krRytOfXZhciBTPTAsVz11O3N3aXRjaChiLmxlbmd0aC12KXtjYXNlIDI6Uz1iW3YrMV0sVz1yWyhTJjE1KTw8Ml18fHU7Y2FzZSAxOnZhciBlYT1iW3ZdO3RbeF09IiIrcltlYT4+Ml0rclsoZWEmMyk8PDR8Uz4+NF0rVyt1fXJldHVybiB0LmpvaW4oIiIpfTt2YXIgTG49ZnVuY3Rpb24oYSl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChhLnJlcGxhY2UoL1wrL2csIiAiKSl9O3ZhciBNbj1SZWdFeHAoIl4oPzooW146Lz8jLl0rKTopPyg/Oi8vKD86KFteXFxcXC8/I10qKUApPyhbXlxcXFwvPyNdKj8pKD86OihbMC05XSspKT8oPz1bXFxcXC8/I118JCkpPyhbXj8jXSspPyg/OlxcPyhbXiNdKikpPyg/OiMoW1xcc1xcU10qKSk/JCIpO2Z1bmN0aW9uIE5uKGEsYixjLGQpe2Zvcih2YXIgZT1iLGY9Yy5sZW5ndGg7KGU9YS5pbmRleE9mKGMsZSkpPj0wJiZlPGQ7KXt2YXIgZz1hLmNoYXJDb2RlQXQoZS0xKTtpZihnPT0zOHx8Zz09NjMpe3ZhciBoPWEuY2hhckNvZGVBdChlK2YpO2lmKCFofHxoPT02MXx8aD09Mzh8fGg9PTM1KXJldHVybiBlfWUrPWYrMX1yZXR1cm4tMX12YXIgT249LyN8JC87CmZ1bmN0aW9uIFBuKGEsYil7dmFyIGM9YS5zZWFyY2goT24pLGQ9Tm4oYSwwLGIsYyk7aWYoZDwwKXJldHVybiBudWxsO3ZhciBlPWEuaW5kZXhPZigiJiIsZCk7aWYoZTwwfHxlPmMpZT1jO2QrPWIubGVuZ3RoKzE7cmV0dXJuIExuKGEuc2xpY2UoZCxlIT09LTE/ZTowKSl9dmFyIFFuPS9bPyZdKCR8IykvOwpmdW5jdGlvbiBSbihhLGIsYyl7Zm9yKHZhciBkLGU9YS5zZWFyY2goT24pLGY9MCxnLGg9W107KGc9Tm4oYSxmLGIsZSkpPj0wOyloLnB1c2goYS5zdWJzdHJpbmcoZixnKSksZj1NYXRoLm1pbihhLmluZGV4T2YoIiYiLGcpKzF8fGUsZSk7aC5wdXNoKGEuc2xpY2UoZikpO2Q9aC5qb2luKCIiKS5yZXBsYWNlKFFuLCIkMSIpO3ZhciBsLG49YyE9bnVsbD8iPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhjKSk6IiI7dmFyIHA9YituO2lmKHApe3ZhciBxLHI9ZC5pbmRleE9mKCIjIik7cjwwJiYocj1kLmxlbmd0aCk7dmFyIHQ9ZC5pbmRleE9mKCI/IiksdTt0PDB8fHQ+cj8odD1yLHU9IiIpOnU9ZC5zdWJzdHJpbmcodCsxLHIpO3E9W2Quc2xpY2UoMCx0KSx1LGQuc2xpY2UocildO3ZhciB2PXFbMV07cVsxXT1wP3Y/disiJiIrcDpwOnY7bD1xWzBdKyhxWzFdPyI/IitxWzFdOiIiKStxWzJdfWVsc2UgbD1kO3JldHVybiBsfTtmdW5jdGlvbiBTbihhLGIsYyxkLGUsZixnLGgpe3ZhciBsPVBuKGMsImZtdCIpO2lmKGQpe3ZhciBuPVBuKGMsInJhbmRvbSIpLHA9UG4oYywibGFiZWwiKXx8IiI7aWYoIW4pcmV0dXJuO3ZhciBxPUtuKExuKHApKyI6IitMbihuKSk7aWYoIW9uKGEscSxkKSlyZXR1cm59bCYmTnVtYmVyKGwpIT09ND8oYz1SbihjLCJyZm10IixsKSxjPVJuKGMsImZtdCIsNCkpOmx8fChjPVJuKGMsImZtdCIsNCkpO1VjKGMsZnVuY3Rpb24oKXtnPT1udWxsfHxUbihnKTtoPT1udWxsfHxVbihoLGMpO2EuZ29vZ2xlX25vRnVydGhlclJlZGlyZWN0cyYmZCYmKGEuZ29vZ2xlX25vRnVydGhlclJlZGlyZWN0cz1udWxsLGQoKSl9LGZ1bmN0aW9uKCl7Zz09bnVsbHx8VG4oZyk7aD09bnVsbHx8VW4oaCxjKTtlPT1udWxsfHxlKCl9LGYsYi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF0ucGFyZW50RWxlbWVudHx8dm9pZCAwKTtyZXR1cm4gY307ZnVuY3Rpb24gVm4oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtpZC5hcHBseShudWxsLHcoYikpfWZ1bmN0aW9uIFduKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTtrbi5yZWdpc3RlcihhLDEsYlswXSk7cmV0dXJuIGpkLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gWG4oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMyxiWzBdKTtaYy5hcHBseShudWxsLHcoYikpfWZ1bmN0aW9uIFluKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTtrbi5yZWdpc3RlcihhLDEsYlswXSk7cmV0dXJuIG1kLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gWm4oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsNSxiWzBdKTtVYy5hcHBseShudWxsLHcoYikpfQpmdW5jdGlvbiAkbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7YlswXSYma24ucmVnaXN0ZXIoYSwyLGJbMF0pO1hjLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gYW8oYSl7dmFyIGI9U24uYXBwbHkobnVsbCx3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpO2ImJmtuLnJlZ2lzdGVyKGEsNCxiKTtyZXR1cm4gYn07dmFyIGJvPXtNYTp7UmU6MCxVZToxLExoOjJ9fTtiby5NYVtiby5NYS5SZV09IkZVTExfVFJBTlNNSVNTSU9OIjtiby5NYVtiby5NYS5VZV09IkxJTUlURURfVFJBTlNNSVNTSU9OIjtiby5NYVtiby5NYS5MaF09Ik5PX1RSQU5TTUlTU0lPTiI7dmFyIGNvPXtpYTp7Z2Q6MCxjYjoxLHhkOjIsWmI6M319O2NvLmlhW2NvLmlhLmdkXT0iTk9fUVVFVUUiO2NvLmlhW2NvLmlhLmNiXT0iQURTIjtjby5pYVtjby5pYS54ZF09IkFOQUxZVElDUyI7Y28uaWFbY28uaWEuWmJdPSJNT05JVE9SSU5HIjt2YXIgZW89ZnVuY3Rpb24oYSxiKXt0aGlzLkg9YTt0aGlzLmNvbnNlbnRUeXBlcz1ifTtlby5wcm90b3R5cGUuaXNDb25zZW50R3JhbnRlZD1mdW5jdGlvbigpe3N3aXRjaCh0aGlzLkgpe2Nhc2UgMDpyZXR1cm4gdGhpcy5jb25zZW50VHlwZXMuZXZlcnkoZnVuY3Rpb24oYSl7cmV0dXJuIEJsKGEpfSk7Y2FzZSAxOnJldHVybiB0aGlzLmNvbnNlbnRUeXBlcy5zb21lKGZ1bmN0aW9uKGEpe3JldHVybiBCbChhKX0pO2RlZmF1bHQ6eWModGhpcy5ILCJjb25zZW50c1JlcXVpcmVkIGhhZCBhbiB1bmtub3duIHR5cGUiKX19Owp2YXIgZm89bmV3IGZ1bmN0aW9uKCl7dmFyIGE9e307dGhpcy5IPShhW2NvLmlhLmdkXT1iby5NYS5SZSxhW2NvLmlhLmNiXT1iby5NYS5SZSxhW2NvLmlhLnhkXT1iby5NYS5SZSxhW2NvLmlhLlpiXT1iby5NYS5SZSxhKTt2YXIgYj17fTt0aGlzLks9KGJbY28uaWEuZ2RdPW5ldyBlbygwLFtdKSxiW2NvLmlhLmNiXT1uZXcgZW8oMCxbImFkX3N0b3JhZ2UiXSksYltjby5pYS54ZF09bmV3IGVvKDAsWyJhbmFseXRpY3Nfc3RvcmFnZSJdKSxiW2NvLmlhLlpiXT1uZXcgZW8oMSxbImFkX3N0b3JhZ2UiLCJhbmFseXRpY3Nfc3RvcmFnZSJdKSxiKX07dmFyIGhvPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dGhpcy50eXBlPWE7dGhpcy5IPVtdO0ZsKGZvLktbYV0uY29uc2VudFR5cGVzLGZ1bmN0aW9uKCl7Z28oYil8fGIuZmx1c2goKX0pfTtoby5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oKXtmb3IodmFyIGE9bSh0aGlzLkgpLGI9YS5uZXh0KCk7IWIuZG9uZTtiPWEubmV4dCgpKXt2YXIgYz1iLnZhbHVlO2MoKX10aGlzLkg9W119O3ZhciBnbz1mdW5jdGlvbihhKXtyZXR1cm4gZm8uSFthLnR5cGVdPT09Ym8uTWEuTGgmJiFmby5LW2EudHlwZV0uaXNDb25zZW50R3JhbnRlZCgpfSxpbz1mdW5jdGlvbihhLGIpe2dvKGEpP2EuSC5wdXNoKGIpOmIoKX0sam89ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IE1hcH0sbG89ZnVuY3Rpb24oYSl7dmFyIGI9a287Yi5ILmhhcyhhKXx8Yi5ILnNldChhLG5ldyBobyhhKSk7cmV0dXJuIGIuSC5nZXQoYSl9O2pvLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuSC5jbGVhcigpfTsKdmFyIGtvPW5ldyBqbzt2YXIgbW89WyJmaW4iLCJmcyIsIm1jYyIsIm5jYyJdLG5vPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD8hMTphO3ZhciBiPVJtKCksYz1RbS5LLGQ9Yi5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIGNbZV0hPT12b2lkIDAmJihhfHwhbW8uaW5jbHVkZXMoZSkpfSk7VG0oZCk7cmV0dXJuIGQubWFwKGZ1bmN0aW9uKGUpe3ZhciBmPWNbZV07dHlwZW9mIGY9PT0iZnVuY3Rpb24iJiYoZj1mKCkpO3JldHVybiBmPyImIitlKyI9IitmOiIifSkuam9pbigiIikrIiZ6PTAifSxvbz1mdW5jdGlvbihhKXt2YXIgYj0iaHR0cHM6Ly8iK0UoMjEpLGM9Ii90ZD9pZD0iK0UoNSk7cmV0dXJuIiIrZmsoYikrYythfSxwbz1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPyExOmI7Yz1jPT09dm9pZCAwPyExOmM7aWYoJGsoMjYpJiZmbi5LJiZFKDUpJiYoY3x8IWduKCkpKXt2YXIgZD1sbyhjby5pYS5aYik7aWYoZ28oZCkpYS5IfHwoYS5IPSEwLGlvKGQsZnVuY3Rpb24oKXtyZXR1cm4gcG8oYSl9KSk7CmVsc2V7YiYmVW0oImZpbiIsIjEiKTt2YXIgZT1ubyhiKSxmPW9vKGUpLGc9e2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo2MX07Yj9ZbihnLGYsdm9pZCAwLHtRZzohMH0sdm9pZCAwLGZ1bmN0aW9uKCl7WmMoZisiJmltZz0xIil9KTpYbihnLGYpO2EuSD0hMTtxbyhlKX19fSxxbz1mdW5jdGlvbihhKXtpZihLYyYmKFNiKEtjLCJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS8iKXx8SWYoNDcpKSYmIShhLmluZGV4T2YoIiZjc3A9Iik8MCYmYS5pbmRleE9mKCImbWRlPSIpPDApKXt2YXIgYjthOnt0cnl7aWYoS2Mpe2I9bmV3IFVSTChLYyk7YnJlYWsgYX19Y2F0Y2goYyl7fWI9dm9pZCAwfWImJlVjKCIiK0tjKyhLYy5pbmRleE9mKCI/Iik+PTA/IiYiOiI/IikrImlzX3RkPTEiK2EpfX0scm89ZnVuY3Rpb24oYSl7Um0oKS5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiFQbVtiXX0pJiZwbyhhLCEwKX0sc289bmV3IGZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9ITE7CiRjKEEsInBhZ2VoaWRlIixmdW5jdGlvbigpe3JvKGEpfSl9O2Z1bmN0aW9uIHRvKGEsYil7cG8oc28sYT09PXZvaWQgMD8hMTphLGI9PT12b2lkIDA/ITE6Yil9O3ZhciB1bz1bImFkX3N0b3JhZ2UiLCJhbmFseXRpY3Nfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSIsImFkX3BlcnNvbmFsaXphdGlvbiJdLHZvPVtGLkQuZGQsRi5ELnljLEYuRC5RZixGLkQuS2IsRi5ELnhjLEYuRC5mYixGLkQuRGIsRi5ELm5iLEYuRC5MYixGLkQudmNdLHlvPWZ1bmN0aW9uKCl7dmFyIGE9d287IWEuUiYmYS5IJiYodW8uc29tZShmdW5jdGlvbihiKXtyZXR1cm4gQWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbYl0hPT0xfSl8fHhvKCJtYmMiKSk7YS5SPSEwfSx4bz1mdW5jdGlvbihhKXtmbi5LJiYoVW0oYSwiMSIpLHRvKCkpfSx6bz1mdW5jdGlvbihhLGIpe3ZhciBjPXdvO2lmKCFjLk5bYl0mJihjLk5bYl09ITAsYy5LW2JdKSlmb3IodmFyIGQ9bSh2byksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpaWYoTyhhLGUudmFsdWUpKXt4bygiZXJjIik7YnJlYWt9fSx3bz1uZXcgZnVuY3Rpb24oKXt0aGlzLlI9dGhpcy5IPSExO3RoaXMuTj17fTt0aGlzLks9e319O3ZhciBBbz17fSxCbz1PYmplY3QuZnJlZXplKChBb1tGLkQuUmNdPTEsQW9bRi5ELmhoXT0xLEFvW0YuRC5zaV09MSxBb1tGLkQuU2NdPTEsQW9bRi5ELkhhXT0xLEFvW0YuRC5MYl09MSxBb1tGLkQuQ2JdPTEsQW9bRi5ELlRiXT0xLEFvW0YuRC5JZF09MSxBb1tGLkQudmNdPTEsQW9bRi5ELm5iXT0xLEFvW0YuRC5KZF09MSxBb1tGLkQuSGVdPTEsQW9bRi5ELk9hXT0xLEFvW0YuRC5RcF09MSxBb1tGLkQuUGZdPTEsQW9bRi5ELkZpXT0xLEFvW0YuRC5waF09MSxBb1tGLkQuV2NdPTEsQW9bRi5ELlFmXT0xLEFvW0YuRC5hcV09MSxBb1tGLkQuVGFdPTEsQW9bRi5ELlVmXT0xLEFvW0YuRC5mcV09MSxBb1tGLkQuT2RdPTEsQW9bRi5ELlJsXT0xLEFvW0YuRC5ZY109MSxBb1tGLkQuWmNdPTEsQW9bRi5ELkRiXT0xLEFvW0YuRC5hbV09MSxBb1tGLkQuV2JdPTEsQW9bRi5ELlRkXT0xLEFvW0YuRC5YYl09MSxBb1tGLkQuT2ldPTEsQW9bRi5ELmRkXT0xLEFvW0YuRC55aF09MSxBb1tGLkQuUGldPQoxLEFvW0YuRC5VZF09MSxBb1tGLkQueWNdPTEsQW9bRi5ELlZkXT0xLEFvW0YuRC5sbV09MSxBb1tGLkQuV2RdPTEsQW9bRi5ELmVkXT0xLEFvW0YuRC5val09MSxBbykpO09iamVjdC5mcmVlemUoW0YuRC56YSxGLkQuVWEsRi5ELk1iLEYuRC50YixGLkQuTmksRi5ELmZiLEYuRC5HaSxGLkQuTXBdKTsKdmFyIENvPXt9LERvPU9iamVjdC5mcmVlemUoKENvW0YuRC5xcF09MSxDb1tGLkQucnBdPTEsQ29bRi5ELnRwXT0xLENvW0YuRC51cF09MSxDb1tGLkQudnBdPTEsQ29bRi5ELnpwXT0xLENvW0YuRC5BcF09MSxDb1tGLkQuQnBdPTEsQ29bRi5ELkRwXT0xLENvW0YuRC55Zl09MSxDbykpLEVvPXt9LEZvPU9iamVjdC5mcmVlemUoKEVvW0YuRC52bF09MSxFb1tGLkQud2xdPTEsRW9bRi5ELnhlXT0xLEVvW0YuRC55ZV09MSxFb1tGLkQueGxdPTEsRW9bRi5ELkFkXT0xLEVvW0YuRC56ZV09MSxFb1tGLkQub2NdPTEsRW9bRi5ELlFjXT0xLEVvW0YuRC5xY109MSxFb1tGLkQuSWJdPTEsRW9bRi5ELkFlXT0xLEVvW0YuRC5yY109MSxFb1tGLkQueWxdPTEsRW8pKSxHbz1PYmplY3QuZnJlZXplKFtGLkQuUmMsRi5ELlNjLEYuRC5KZCxGLkQuUWYsRi5ELldmLEYuRC5UZCxGLkQuT2ksRi5ELlZkXSksSG89T2JqZWN0LmZyZWV6ZShbXS5jb25jYXQodyhHbykpKSxJbz1PYmplY3QuZnJlZXplKFtGLkQuQ2IsCkYuRC5waCxGLkQueWgsRi5ELlBpLEYuRC5uaF0pLEpvPU9iamVjdC5mcmVlemUoW10uY29uY2F0KHcoSW8pKSksS289e30sTG89KEtvW0YuRC5rYV09IjEiLEtvW0YuRC5yYV09IjIiLEtvW0YuRC5tYV09IjMiLEtvW0YuRC5YYV09IjQiLEtvKSxNbz17fSxObz1PYmplY3QuZnJlZXplKChNby5zZWFyY2g9InMiLE1vLnlvdXR1YmU9InkiLE1vLnBsYXlzdG9yZT0icCIsTW8uc2hvcHBpbmc9ImgiLE1vLmFkcz0iYSIsTW8ubWFwcz0ibSIsTW8pKTtmdW5jdGlvbiBPbyhhKXtyZXR1cm4gdHlwZW9mIGEhPT0ib2JqZWN0Inx8YT09PW51bGw/e306YX1mdW5jdGlvbiBQbyhhKXtyZXR1cm4gYT09PXZvaWQgMHx8YT09PW51bGw/IiI6dHlwZW9mIGE9PT0ib2JqZWN0Ij9hLnRvU3RyaW5nKCk6U3RyaW5nKGEpfWZ1bmN0aW9uIFFvKGEpe2lmKGEhPT12b2lkIDAmJmEhPT1udWxsKXJldHVybiBQbyhhKX07dmFyIFJvPVtGLkQua2EsRi5ELnJhLEYuRC5tYSxGLkQuWGFdO2Z1bmN0aW9uIFNvKGEpe2Zvcih2YXIgYj1tKGFbRi5ELm5jXXx8WyIiXSksYz1iLm5leHQoKSxkPXt9OyFjLmRvbmU7ZD17cmVnaW9uOnZvaWQgMH0sYz1iLm5leHQoKSlkLnJlZ2lvbj1jLnZhbHVlLEdiKGEsZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKGYsZyl7aWYoZiE9PUYuRC5uYyl7dmFyIGg9UG8oZyksbD1lLnJlZ2lvbixuPXltKCkscD16bSgpO3lsPSEwO3hsJiZzYigiVEFHR0lORyIsMjApO3RsKCkuZGVjbGFyZShmLGgsbCxuLHApfX19KGQpKX0KZnVuY3Rpb24gVG8oYSl7eW8oKTt2YXIgYj1hbCgxNyxmdW5jdGlvbigpe3JldHVybiExfSksYz1hbCgxNixmdW5jdGlvbigpe3JldHVybiExfSk7IWImJmMmJnhvKCJjcmMiKTtaaygxNywhMCk7dmFyIGQ9YVtGLkQuWWddO2QmJlAoNDEpO3ZhciBlPWFbRi5ELm5jXTtlP1AoNDApOmU9WyIiXTtmb3IodmFyIGY9bShlKSxnPWYubmV4dCgpLGg9e307IWcuZG9uZTtoPXtCbzp2b2lkIDB9LGc9Zi5uZXh0KCkpaC5Cbz1nLnZhbHVlLEdiKGEsZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4scCl7aWYobiE9PUYuRC5uYyYmbiE9PUYuRC5ZZyl7dmFyIHE9UW8ocCkscj1sLkJvLHQ9TnVtYmVyKGQpLHU9eW0oKSx2PXptKCk7dD10PT09dm9pZCAwPzA6dDt4bD0hMDt5bCYmc2IoIlRBR0dJTkciLDIwKTt0bCgpLmRlZmF1bHQobixxLHIsdSx2LHQsQWwpfX19KGgpKX0KZnVuY3Rpb24gVW8oYSl7QWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzPSEwO3ZhciBiPWFbRi5ELm5jXTtpZihiKXt2YXIgYz1BcnJheS5pc0FycmF5KGIpP2I6W2JdO2lmKCFjLmluY2x1ZGVzKHptKCkpJiYhYy5pbmNsdWRlcyh5bSgpKSlyZXR1cm59R2IoYSxmdW5jdGlvbihkLGUpe3N3aXRjaChkKXtjYXNlICJhZF9zdG9yYWdlIjpjYXNlICJhbmFseXRpY3Nfc3RvcmFnZSI6Y2FzZSAiYWRfdXNlcl9kYXRhIjpjYXNlICJhZF9wZXJzb25hbGl6YXRpb24iOmJyZWFrO2RlZmF1bHQ6cmV0dXJufUFsLnVzZWRDb250YWluZXJTY29wZWREZWZhdWx0cz0hMDtBbC5jb250YWluZXJTY29wZWREZWZhdWx0c1tkXT1lPT09ImdyYW50ZWQiPzM6Mn0pfQpmdW5jdGlvbiBWbyhhLGIpe3lvKCk7WmsoMTYsITApO0diKGEsZnVuY3Rpb24oYyxkKXt2YXIgZT1QbyhkKTt4bD0hMDt5bCYmc2IoIlRBR0dJTkciLDIwKTt0bCgpLnVwZGF0ZShjLGUsQWwpfSk7R2woYi5ldmVudElkLGIucHJpb3JpdHlJZCl9ZnVuY3Rpb24gV28oYSl7YS5oYXNPd25Qcm9wZXJ0eSgiYWxsIikmJihBbC5zZWxlY3RlZEFsbENvcmVQbGF0Zm9ybVNlcnZpY2VzPSEwLEdiKE5vLGZ1bmN0aW9uKGIpe0FsLmNvcmVQbGF0Zm9ybVNlcnZpY2VzW2JdPWEuYWxsPT09ImdyYW50ZWQiO0FsLnVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlcz0hMH0pKTtHYihhLGZ1bmN0aW9uKGIsYyl7YiE9PSJhbGwiJiYoQWwuY29yZVBsYXRmb3JtU2VydmljZXNbYl09Yz09PSJncmFudGVkIixBbC51c2VkQ29yZVBsYXRmb3JtU2VydmljZXM9ITApfSl9CmZ1bmN0aW9uIFhvKGEpe0FycmF5LmlzQXJyYXkoYSl8fChhPVthXSk7cmV0dXJuIGEuZXZlcnkoZnVuY3Rpb24oYil7cmV0dXJuIEJsKGIpfSl9ZnVuY3Rpb24gWW8oKXt2YXIgYT1abztBcnJheS5pc0FycmF5KGEpfHwoYT1bYV0pO3JldHVybiBhLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIEJsKGIpfSl9ZnVuY3Rpb24gJG8oYSxiKXtGbChhLGIpfWZ1bmN0aW9uIGFwKGEsYil7SWwoYSxiKX1mdW5jdGlvbiBicChhLGIpe0hsKGEsYil9ZnVuY3Rpb24gY3AoKXt2YXIgYT1bRi5ELmthLEYuRC5YYSxGLkQubWFdO3RsKCkud2FpdEZvclVwZGF0ZShhLDUwMCxBbCl9ZnVuY3Rpb24gZHAoYSl7Zm9yKHZhciBiPW0oYSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe3ZhciBkPWMudmFsdWU7dGwoKS5jbGVhclRpbWVvdXQoZCx2b2lkIDAsQWwpfUdsKCl9CmZ1bmN0aW9uIGVwKGEpe2Zvcih2YXIgYj17fSxjPW0oYS5zcGxpdCgifCIpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSliW2QudmFsdWVdPSEwO3JldHVybiBifTt2YXIgZnA9T2JqZWN0LmZyZWV6ZShbRi5ELmthLEYuRC5tYV0pOwp2YXIgaHA9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7YltncFtlXXx8ZV09YVtlXX1yZXR1cm4gYn0saXA9ZnVuY3Rpb24oYSl7cmV0dXJuISFRKGEsSC5KLnZkKSYmUihhLEYuRC5QZCk9PT0iMSImJlIoYSxGLkQuSGQpIT09IjEiJiZYbyhmcCl9LGpwPWZ1bmN0aW9uKGEsYil7aWYoIWlwKGEpKXJldHVybiExO3ZhciBjPVFjKCl8fE9jKCk/NTg6NTcsZD1ObShjLGhwKGIpKTtUbChkLGEsYyk7WW4oe2Rlc3RpbmF0aW9uSWQ6YS50YXJnZXQuZGVzdGluYXRpb25JZCxlbmRwb2ludDpjLGV2ZW50SWQ6YS5NLmV2ZW50SWQscHJpb3JpdHlJZDphLk0ucHJpb3JpdHlJZH0sZCsiJmZtdD04Iix2b2lkIDAse1FnOiEwLG1ldGhvZDoiR0VUIn0sZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKCl7WmMoZCsiJmZtdD0zIil9KTtyZXR1cm4hMH0sa3A9e30sZ3A9KGtwLmRsPSJ1cmwiLGtwLmRyPQoicmVmIixrcC51aWQ9InVzZXJJZCIsa3ApO3ZhciBscD1mdW5jdGlvbihhLGIpe3ZhciBjPXt9LGQ9ZnVuY3Rpb24oZSl7YltlXSE9bnVsbCYmYltlXSE9PSIiJiYoY1tlXT1iW2VdKX07TSg0NzQpJiZkKCJfZ3NpZCIpO1IoYSxGLkQuSGQpIT09IjEiJiYoZCgiZ2NsaWQiKSxkKCJnY2xzcmMiKSxkKCJhdWlkIiksZCgiZGNsaWQiKSk7aWYoT2JqZWN0LmtleXMoYykubGVuZ3RoKXJldHVybiBkKCJndG0iKSxjfTsKdmFyIG1wPXt9LG5wPShtcFtGLkQuc2FdPSJnY3UiLG1wW0YuRC5TYl09ImdjbGdiIixtcFtGLkQubGJdPSJnY2xhdyIsbXBbRi5ELnpmXT0iZ2FkX3NvdXJjZSIsbXBbRi5ELkFmXT0iZ2FkX3NvdXJjZV9zcmMiLG1wW0YuRC5EZF09ImdjbGlkIixtcFtGLkQuQWxdPSJnY2xzcmMiLG1wW0YuRC5CZl09ImdicmFpZCIsbXBbRi5ELkVlXT0id2JyYWlkIixtcFtGLkQuRWRdPSJhdWlkIixtcFtGLkQuQmxdPSJhZSIsbXBbRi5ELkhhXT1udWxsLG1wW0YuRC5EbF09InJuZCIsbXBbRi5ELkhkXT0ibmNsIixtcFtGLkQuTmZdPSJnY2xkYyIsbXBbRi5ELktkXT0iZGNsaWQiLG1wW0YuRC5WY109ImVkaWQiLG1wW0YuRC5VYl09ImVuIixtcFtGLkQuS2VdPSJnZHByIixtcFtGLkQuWGNdPSJnZGlkIixtcFtGLkQuVGFdPW51bGwsbXBbRi5ELkxlXT0iX25nIixtcFtGLkQudGhdPSJncHBfc2lkIixtcFtGLkQudWhdPSJncHAiLG1wW0YuRC5WZl09Il90dSIsbXBbRi5ELlFsXT0iZ3RtX3VwIixtcFtGLkQuTWVdPQoiZnJtIixtcFtGLkQuUGRdPSJscHMiLG1wW0YuRC5MaV09ImRpZCIsbXBbRi5ELlVsXT0ibmF2dCIsbXBbRi5ELnphXT0iZGwiLG1wW0YuRC5VYV09ImRyIixtcFtGLkQuTWJdPSJkdCIsbXBbRi5ELmJtXT0ic2Nyc3JjIixtcFtGLkQuWmZdPSJnYV91aWQiLG1wW0YuRC5PZV09ImdkcHJfY29uc2VudCIsbXBbRi5ELlFpXT0idGVzdG9ubHkiLG1wW0YuRC5ycV09InVfdHoiLG1wW0YuRC5QZV09InRvcCIsbXBbRi5ELlFlXT0idGlkIixtcFtGLkQuZmJdPSJ1aWQiLG1wW0YuRC5rZ109InVzX3ByaXZhY3kiLG1wW0YuRC5lZF09bnVsbCxtcFtGLkQuZGVdPSJucGEiLG1wKTtmdW5jdGlvbiBvcChhLGIpe2lmKGIhPW51bGwmJmIhPT0iIil7dmFyIGM9Yj09PSEwPyIxIjpiPT09ITE/IjAiOmVuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoYikpO2lmKFNiKGEsIl8mIikpcmV0dXJue2tleTphLnN1YnN0cmluZygyKSx2YWx1ZTpjfTt2YXIgZD1ucFthXTtpZihkIT09bnVsbClyZXR1cm4gZD97a2V5OmQsdmFsdWU6Y306e2tleTpBYihiKT8iZXBuLiIrYToiZXAuIithLHZhbHVlOmN9fX07ZnVuY3Rpb24gcHAoYSl7YT1hPT09dm9pZCAwP1tdOmE7cmV0dXJuIHhqKGEpLmpvaW4oIn4iKX07ZnVuY3Rpb24gcXAoKXt2YXIgYT1bXSxiPU51bWJlcignJyl8fDAsYz1OdW1iZXIoJycpfHwwO2N8fChjPWIvMTAwKTt2YXIgZD1mdW5jdGlvbigpe3ZhciB0PSExO3JldHVybiB0fSgpO2EucHVzaCh7dWs6MjI4LHN0dWR5SWQ6MjI4LGV4cGVyaW1lbnRJZDoxMDUxNzcxNTQsY29udHJvbElkOjEwNTE3NzE1NSxjb250cm9sSWQyOjEwNTI1NTI0NSxwcm9iYWJpbGl0eTpjLGFjdGl2ZTpkLFplOjB9KTt2YXIgZT1OdW1iZXIoJycpfHwKMCxmPU51bWJlcignJyl8fDA7Znx8KGY9ZS8xMDApO3ZhciBnPWZ1bmN0aW9uKCl7dmFyIHQ9ITE7cmV0dXJuIHR9KCk7YS5wdXNoKHt1azoyMzUsc3R1ZHlJZDoyMzUsZXhwZXJpbWVudElkOjEwNTM1NzE1MCxjb250cm9sSWQ6MTA1MzU3MTUxLGNvbnRyb2xJZDI6MCxwcm9iYWJpbGl0eTpmLGFjdGl2ZTpnLFplOjF9KTt2YXIgaD1OdW1iZXIoJycpfHwwLGw9TnVtYmVyKCcnKXx8CjA7bHx8KGw9aC8xMDApO3ZhciBuPWZ1bmN0aW9uKCl7dmFyIHQ9ITE7cmV0dXJuIHR9KCk7YS5wdXNoKHt1azoyNjYsc3R1ZHlJZDoyNjYsZXhwZXJpbWVudElkOjExNTcxODUyOSxjb250cm9sSWQ6MTE1NzE4NTMwLGNvbnRyb2xJZDI6MTE1NzE4NTMxLHByb2JhYmlsaXR5OmwsYWN0aXZlOm4sWmU6MH0pO3ZhciBwPU51bWJlcignJyl8fDAscT1OdW1iZXIoJycpfHwKMDtxfHwocT1wLzEwMCk7dmFyIHI9ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjI2NyxzdHVkeUlkOjI2NyxleHBlcmltZW50SWQ6MTE1NzE4NTI2LGNvbnRyb2xJZDoxMTU3MTg1MjcsY29udHJvbElkMjoxMTU3MTg1MjgscHJvYmFiaWxpdHk6cSxhY3RpdmU6cixaZTowfSk7cmV0dXJuIGF9O3ZhciBycD1mdW5jdGlvbigpe3RoaXMuSz17fTt0aGlzLkg9e307dGhpcy5OPXt9O3RoaXMuUj1uZXcgU2V0fSx4cD1mdW5jdGlvbihhLGIpe3ZhciBjPWIsZD1iPWEuTltjLnN0dWR5SWRdP25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyx7YWN0aXZlOiEwfSk6YyxlPUZpO2QuY29udHJvbElkMiYmZC5wcm9iYWJpbGl0eTw9LjI1fHwoZD1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGQse2NvbnRyb2xJZDI6MH0pKTtlLnN0dWRpZXNbZC5zdHVkeUlkXT1kO2IuZm9jdXNlZCYmKGEuS1tiLnN0dWR5SWRdPSEwKTtpZihiLlplPT09MSl7dmFyIGY9Yi5zdHVkeUlkO3NwKGEsdHAoKSxmKTt1cChhLGYpP3RqKHVqLGYpOnZwKGEsZik/dWouS1tmXT0hMDp3cChhLGYpJiYodWouSFtmXT0hMCl9ZWxzZSBpZihiLlplPT09MCl7dmFyIGc9Yi5zdHVkeUlkO3NwKGEsYS5ILGcpO3VwKGEsZyk/dGoodWosZyk6dnAoYSxnKT91ai5LW2ddPSEwOndwKGEsZykmJgoodWouSFtnXT0hMCl9fSxzcD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1GaTtpZihlLnN0dWRpZXNbY10pe3ZhciBmPWUuc3R1ZGllc1tjXSxnPWYuZXhwZXJpbWVudElkLGg9Zi5wcm9iYWJpbGl0eTtpZighKGIuc3R1ZGllc3x8e30pW2NdKXt2YXIgbD1iLnN0dWRpZXN8fHt9O2xbY109ITA7Yi5zdHVkaWVzPWw7aWYoIWUuc3R1ZGllc1tjXS5hY3RpdmUpaWYoZS5zdHVkaWVzW2NdLnByb2JhYmlsaXR5Pi41KUlpKGIsZyxjKTtlbHNlIGlmKCEoaDw9MHx8aD4xKSl7dmFyIG49dm9pZCAwO2lmKGQpe3ZhciBwPUNpKGQrIn4iK2MpO2lmKHA9PT0iZTIiKW49LTE7ZWxzZXtmb3IodmFyIHE9bmV3IFVpbnQ4QXJyYXkocCkscj1CaWdJbnQoMCksdD1tKHEpLHU9dC5uZXh0KCk7IXUuZG9uZTt1PXQubmV4dCgpKXI9cjw8QmlnSW50KDgpfEJpZ0ludCh1LnZhbHVlKTtuPU51bWJlcihyJUJpZ0ludChOdW1iZXIuTUFYX1NBRkVfSU5URUdFUikpfX1HaS5zayhiLGMsbil9fX1pZighYS5LW2NdKXt2YXIgdj0KTmkoYixjKTt2JiZ3ai5ILksuYWRkKHYpfX0sdHA9ZnVuY3Rpb24oKXtyZXR1cm4gb20oam0uYmEuVHEse30pfSx1cD1mdW5jdGlvbihhLGIpe3ZhciBjPXRwKCk7cmV0dXJuIEtpKGMsYil8fEtpKGEuSCxiKX0sdnA9ZnVuY3Rpb24oYSxiKXt2YXIgYz10cCgpO3JldHVybiBMaShjLGIpfHxMaShhLkgsYil9LHdwPWZ1bmN0aW9uKGEsYil7dmFyIGM9dHAoKTtyZXR1cm4gTWkoYyxiKXx8TWkoYS5ILGIpfSx5cDsKZnVuY3Rpb24genAoKXtpZigheXApe3ZhciBhPXlwPW5ldyBycCxiLGMsZD0oKGI9QSk9PW51bGw/dm9pZCAwOihjPWIubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpjLmhhc2gpfHwiIjtpZihkWzBdPT09IiMiJiZkWzFdPT09Il8iJiZkWzJdPT09InQiJiZkWzNdPT09ImUiJiZkWzRdPT09Ij0iKXt2YXIgZT1kLnN1YnN0cmluZyg1KTtpZihlKWZvcih2YXIgZj1tKGUuc3BsaXQoIn4iKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPU51bWJlcihnLnZhbHVlKTtoJiYoYS5OW2hdPSEwLHRqKHVqLGgpKX19Zm9yKHZhciBsPW0ocXAoKSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpeHAoYSxuLnZhbHVlKTtmb3IodmFyIHA9W10scT1tKE1mKDU2KXx8W10pLHI9cS5uZXh0KCk7IXIuZG9uZTtyPXEubmV4dCgpKXt2YXIgdD1yLnZhbHVlLHU9e3N0dWR5SWQ6dFsxXSxhY3RpdmU6ISF0WzJdLHByb2JhYmlsaXR5OnRbM118fDAsZXhwZXJpbWVudElkOnRbNF18fAowLGNvbnRyb2xJZDp0WzVdfHwwLGNvbnRyb2xJZDI6dFs2XXx8MH0sdj0wO3N3aXRjaCh0WzddKXtjYXNlIDI6dj0xO2JyZWFrO2Nhc2UgMzp2PTI7YnJlYWs7Y2FzZSAxOmNhc2UgNDpjYXNlIDU6Y2FzZSAwOnY9MH12YXIgeDthOnN3aXRjaCh1LnN0dWR5SWQpe2Nhc2UgNTY3OmNhc2UgNDYyOng9ITA7YnJlYWsgYTtkZWZhdWx0Ong9ITF9dmFyIHk9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx1LHtaZTp2LGZvY3VzZWQ6eH0pOyh5LmFjdGl2ZXx8eS5wcm9iYWJpbGl0eT4uNSYmeS5leHBlcmltZW50SWR8fHkuZXhwZXJpbWVudElkJiZ5LmNvbnRyb2xJZCkmJnAucHVzaCh5KX1mb3IodmFyIHo9bShwKSxDPXoubmV4dCgpOyFDLmRvbmU7Qz16Lm5leHQoKSl4cChhLEMudmFsdWUpfX0KZnVuY3Rpb24gQXAoYSxiKXt6cCgpO3ZhciBjPXlwO3NwKGMsdHAoKSxhLGIpO3VwKGMsYSk/dGoodWosYSk6dnAoYyxhKT91ai5LW2FdPSEwOndwKGMsYSkmJih1ai5IW2FdPSEwKX1mdW5jdGlvbiBCcCgpe3pwKCk7dmFyIGE9eXAsYj11cChhLDU2Nyk7aWYoYS5LWzU2N10pe3ZhciBjLGQ9dHAoKTsoYz1OaShkLDU2Nyl8fE5pKGEuSCw1NjcpKSYmYS5SLmFkZChjKX1yZXR1cm4gYn1mdW5jdGlvbiBDcChhKXt6cCgpO3ZhciBiPW5ldyBTZXQoeXAuUik7aWYoYSlmb3IodmFyIGM9UShhLEguSi5DaCl8fFtdLGQ9bShjKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSliLmFkZChlLnZhbHVlKTtyZXR1cm4gcHAoW10uY29uY2F0KHcoYikpKX07ZnVuY3Rpb24gRHAoYSl7dmFyIGI9YS5sb2NhdGlvbi5ocmVmO2lmKGE9PT1hLnRvcClyZXR1cm57dXJsOmIsSXM6ITB9O3ZhciBjPSExLGQ9YS5kb2N1bWVudDtkJiZkLnJlZmVycmVyJiYoYj1kLnJlZmVycmVyLGEucGFyZW50PT09YS50b3AmJihjPSEwKSk7dmFyIGU9YS5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnM7aWYoZSl7dmFyIGY9ZVtlLmxlbmd0aC0xXSxnO2YmJigoZz1iKT09bnVsbD92b2lkIDA6Zy5pbmRleE9mKGYpKT09PS0xJiYoYz0hMSxiPWYpfXJldHVybnt1cmw6YixJczpjfX1mdW5jdGlvbiBFcChhKXt0cnl7dmFyIGI7aWYoYj0hIWEmJmEubG9jYXRpb24uaHJlZiE9bnVsbClhOnt0cnl7SG4oYS5mb28pO2I9ITA7YnJlYWsgYX1jYXRjaChjKXt9Yj0hMX1yZXR1cm4gYn1jYXRjaChjKXtyZXR1cm4hMX19ZnVuY3Rpb24gRnAoKXtmb3IodmFyIGE9QSxiPWE7YSYmYSE9PWEucGFyZW50OylhPWEucGFyZW50LEVwKGEpJiYoYj1hKTtyZXR1cm4gYn07dmFyIEdwPWZ1bmN0aW9uKGEsYil7dmFyIGM9ZnVuY3Rpb24oKXt9O2MucHJvdG90eXBlPWEucHJvdG90eXBlO3ZhciBkPW5ldyBjO2EuYXBwbHkoZCxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSkpO3JldHVybiBkfSxIcD1mdW5jdGlvbihhKXt2YXIgYj1hO3JldHVybiBmdW5jdGlvbigpe2lmKGIpe3ZhciBjPWI7Yj1udWxsO2MoKX19fTtmdW5jdGlvbiBJcChhLGIpe2lmKGEpZm9yKHZhciBjIGluIGEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYykmJmIoYVtjXSxjLGEpfTtmdW5jdGlvbiBKcChhKXt2YXIgYj1hLnNwbGl0KC9bPyNdLyksYz0vWz9dLy50ZXN0KGEpPyI/IitiWzFdOiIiO3JldHVybnt6azpiWzBdLHBhcmFtczpjLGZyYWdtZW50Oi9bI10vLnRlc3QoYSk/IiMiKyhjP2JbMl06YlsxXSk6IiJ9fWZ1bmN0aW9uIEtwKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTtpZihiLmxlbmd0aD09PTApcmV0dXJuIGpjKGFbMF0pO2Zvcih2YXIgYz1hWzBdLGQ9MDtkPGIubGVuZ3RoO2QrKyljKz1lbmNvZGVVUklDb21wb25lbnQoYltkXSkrYVtkKzFdO3JldHVybiBqYyhjKX0KZnVuY3Rpb24gTHAoYSxiLGMsZCl7ZnVuY3Rpb24gZShnLGgpe2chPW51bGwmJihBcnJheS5pc0FycmF5KGcpP2cuZm9yRWFjaChmdW5jdGlvbihsKXtyZXR1cm4gZShsLGgpfSk6KGIrPWYrZW5jb2RlVVJJQ29tcG9uZW50KGgpKyI9IitlbmNvZGVVUklDb21wb25lbnQoZyksZj0iJiIpKX12YXIgZj1iLmxlbmd0aD8iJiI6Ij8iO2QuY29uc3RydWN0b3I9PT1PYmplY3QmJihkPU9iamVjdC5lbnRyaWVzKGQpKTtBcnJheS5pc0FycmF5KGQpP2QuZm9yRWFjaChmdW5jdGlvbihnKXtyZXR1cm4gZShnWzFdLGdbMF0pfSk6ZC5mb3JFYWNoKGUpO3JldHVybiBqYyhhK2IrYyl9ZnVuY3Rpb24gTXAoYSxiKXt2YXIgYz1KcChrYyhhKS50b1N0cmluZygpKSxkPWMuemsuc2xpY2UoLTEpPT09Ii8iPyIiOiIvIixlPWMuemsrZCtlbmNvZGVVUklDb21wb25lbnQoYik7cmV0dXJuIGpjKGUrYy5wYXJhbXMrYy5mcmFnbWVudCl9O3ZhciBOcD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1hLGQ9MDtkPDUwOysrZCl7dmFyIGU7dHJ5e2U9ISghYy5mcmFtZXN8fCFjLmZyYW1lc1tiXSl9Y2F0Y2goaCl7ZT0hMX1pZihlKXJldHVybiBjO3ZhciBmO2E6e3RyeXt2YXIgZz1jLnBhcmVudDtpZihnJiZnIT09Yyl7Zj1nO2JyZWFrIGF9fWNhdGNoKGgpe31mPW51bGx9aWYoIShjPWYpKWJyZWFrfXJldHVybiBudWxsfSxPcD1mdW5jdGlvbihhKXt2YXIgYj1BO2lmKGIudG9wPT1iKXJldHVybiAwO2lmKGE9PT12b2lkIDA/MDphKXt2YXIgYz1iLmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucztpZihjKXJldHVybiBjW2MubGVuZ3RoLTFdPT1iLmxvY2F0aW9uLm9yaWdpbj8xOjJ9cmV0dXJuIEVwKGIudG9wKT8xOjJ9LFBwPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9kb2N1bWVudDphO3JldHVybiBhLmNyZWF0ZUVsZW1lbnQoImltZyIpfTtmdW5jdGlvbiBRcChhKXtmb3IodmFyIGI9W10sYz1CLmNvb2tpZS5zcGxpdCgiOyIpLGQ9bmV3IFJlZ0V4cCgiXlxccyoiKyhhfHwiX2dhYyIpKyJfKFVBLVxcZCstXFxkKyk9XFxzKiguKz8pXFxzKiQiKSxlPTA7ZTxjLmxlbmd0aDtlKyspe3ZhciBmPWNbZV0ubWF0Y2goZCk7ZiYmYi5wdXNoKHt1ZDpmWzFdLHZhbHVlOmZbMl0sdGltZXN0YW1wOk51bWJlcihmWzJdLnNwbGl0KCIuIilbMV0pfHwwfSl9Yi5zb3J0KGZ1bmN0aW9uKGcsaCl7cmV0dXJuIGgudGltZXN0YW1wLWcudGltZXN0YW1wfSk7cmV0dXJuIGJ9CmZ1bmN0aW9uIFJwKGEsYil7dmFyIGM9UXAoYSksZD17fTtpZighY3x8IWMubGVuZ3RoKXJldHVybiBkO2Zvcih2YXIgZT0wO2U8Yy5sZW5ndGg7ZSsrKXt2YXIgZj1jW2VdLnZhbHVlLnNwbGl0KCIuIik7aWYoIShmWzBdIT09IjEifHxiJiZmLmxlbmd0aDwzfHwhYiYmZi5sZW5ndGghPT0zKSYmTnVtYmVyKGZbMV0pKXtkW2NbZV0udWRdfHwoZFtjW2VdLnVkXT1bXSk7dmFyIGc9e3ZlcnNpb246ZlswXSx0aW1lc3RhbXA6TnVtYmVyKGZbMV0pKjFFMyxnY2xpZDpmWzJdfTtiJiZmLmxlbmd0aD4zJiYoZy5sYWJlbHM9Zi5zbGljZSgzKSk7ZFtjW2VdLnVkXS5wdXNoKGcpfX1yZXR1cm4gZH07ZnVuY3Rpb24gU3AoYSl7cmV0dXJuIGEub3JpZ2luIT09Im51bGwifTt2YXIgVHA9e30sVXA9KFRwLms9e25hOi9eW1x3LV0rJC99LFRwLmI9e25hOi9eW1x3LV0rJC8sbms6ITB9LFRwLmk9e25hOi9eWzEtOV1cZCokL30sVHAuaD17bmE6L15cZCskL30sVHAudD17bmE6L15bMS05XVxkKiQvfSxUcC5kPXtuYTovXltBLVphLXowLTlfLV0rJC99LFRwLmo9e25hOi9eXGQrJC99LFRwLnU9e25hOi9eWzEtOV1cZCokL30sVHAubD17bmE6L15bMDFdJC99LFRwLm89e25hOi9eWzEtOV1cZCokL30sVHAuZz17bmE6L15bMDFdJC99LFRwLnM9e25hOi9eLiskL30sVHAubT17bmE6L15bMDFdJC99LFRwKTt2YXIgVnA9e30sWnA9KFZwWzVdPXtqaTp7MjpXcH0sWmo6IjIiLFJoOlsiayIsImkiLCJiIiwidSJdfSxWcFs0XT17amk6ezI6V3AsR0NMOlhwfSxaajoiMiIsUmg6WyJrIiwiaSIsImIiLCJtIl19LFZwWzJdPXtqaTp7R1MyOldwLEdTMTpZcH0sWmo6IkdTMiIsUmg6InNvZ3RqbGhkIi5zcGxpdCgiIil9LFZwKTtmdW5jdGlvbiAkcChhLGIsYyl7dmFyIGQ9WnBbYl07aWYoZCl7dmFyIGU9YS5zcGxpdCgiLiIpWzBdO2M9PW51bGx8fGMoZSk7aWYoZSl7dmFyIGY9ZC5qaVtlXTtpZihmKXJldHVybiBmKGEsYil9fX0KZnVuY3Rpb24gV3AoYSxiKXt2YXIgYz1hLnNwbGl0KCIuIik7aWYoYy5sZW5ndGg9PT0zKXt2YXIgZD1jWzJdO2lmKGQuaW5kZXhPZigiJCIpPT09LTEmJmQuaW5kZXhPZigiJTI0IikhPT0tMSl0cnl7ZD1kZWNvZGVVUklDb21wb25lbnQoZCl9Y2F0Y2godCl7fXZhciBlPXt9LGY9WnBbYl07aWYoZil7Zm9yKHZhciBnPWYuUmgsaD1tKGQuc3BsaXQoIiQiKSksbD1oLm5leHQoKTshbC5kb25lO2w9aC5uZXh0KCkpe3ZhciBuPWwudmFsdWUscD1uWzBdO2lmKGcuaW5kZXhPZihwKSE9PS0xKXRyeXt2YXIgcT1kZWNvZGVVUklDb21wb25lbnQobi5zdWJzdHJpbmcoMSkpLHI9VXBbcF07ciYmKHIubms/KGVbcF09ZVtwXXx8W10sZVtwXS5wdXNoKHEpKTplW3BdPXEpfWNhdGNoKHQpe319cmV0dXJuIGV9fX1mdW5jdGlvbiBhcShhLGIsYyl7dmFyIGQ9WnBbYl07aWYoZClyZXR1cm5bZC5aaixjfHwiMSIsYnEoYSxiKV0uam9pbigiLiIpfQpmdW5jdGlvbiBicShhLGIpe3ZhciBjPVpwW2JdO2lmKGMpe2Zvcih2YXIgZD1bXSxlPW0oYy5SaCksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1VcFtnXTtpZihoKXt2YXIgbD1hW2ddO2lmKGwhPT12b2lkIDApaWYoaC5uayYmQXJyYXkuaXNBcnJheShsKSlmb3IodmFyIG49bShsKSxwPW4ubmV4dCgpOyFwLmRvbmU7cD1uLm5leHQoKSlkLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCIiK2crcC52YWx1ZSkpO2Vsc2UgZC5wdXNoKGVuY29kZVVSSUNvbXBvbmVudCgiIitnK2wpKX19cmV0dXJuIGQuam9pbigiJCIpfX1mdW5jdGlvbiBYcChhKXt2YXIgYj1hLnNwbGl0KCIuIik7Yi5zaGlmdCgpO3ZhciBjPWIuc2hpZnQoKSxkPWIuc2hpZnQoKSxlPXt9O3JldHVybiBlLms9ZCxlLmk9YyxlLmI9YixlfQpmdW5jdGlvbiBZcChhKXt2YXIgYj1hLnNwbGl0KCIuIikuc2xpY2UoMik7aWYoIShiLmxlbmd0aDw1fHxiLmxlbmd0aD43KSl7dmFyIGM9e307cmV0dXJuIGMucz1iWzBdLGMubz1iWzFdLGMuZz1iWzJdLGMudD1iWzNdLGMuaj1iWzRdLGMubD1iWzVdLGMuaD1iWzZdLGN9fTtmdW5jdGlvbiBjcShhLGIsYyxkKXt2YXIgZTtyZXR1cm4oZT1kcShmdW5jdGlvbihmKXtyZXR1cm4gZj09PWF9LGIsYyxkKVthXSkhPW51bGw/ZTpbXX1mdW5jdGlvbiBkcShhLGIsYyxkKXt2YXIgZTtpZihlcShkKSl7Zm9yKHZhciBmPXt9LGc9U3RyaW5nKGJ8fGZxKCkpLnNwbGl0KCI7IiksaD0wO2g8Zy5sZW5ndGg7aCsrKXt2YXIgbD1nW2hdLnNwbGl0KCI9Iiksbj1sWzBdLnRyaW0oKTtpZihuJiZhKG4pKXt2YXIgcD1sLnNsaWNlKDEpLmpvaW4oIj0iKS50cmltKCk7cCYmYyYmKHA9ZGVjb2RlVVJJQ29tcG9uZW50KHApKTt2YXIgcT12b2lkIDAscj12b2lkIDA7KChxPWYpW3I9bl18fChxW3JdPVtdKSkucHVzaChwKX19ZT1mfWVsc2UgZT17fTtyZXR1cm4gZX0KZnVuY3Rpb24gZ3EoYSxiLGMsZCxlKXtpZihlcShlKSl7dmFyIGY9aHEoYSxkLGUpO2lmKGYubGVuZ3RoPT09MSlyZXR1cm4gZlswXTtpZihmLmxlbmd0aCE9PTApe2Y9aXEoZixmdW5jdGlvbihnKXtyZXR1cm4gZy5Kcn0sYik7aWYoZi5sZW5ndGg9PT0xKXJldHVybiBmWzBdO2Y9aXEoZixmdW5jdGlvbihnKXtyZXR1cm4gZy5Xc30sYyk7cmV0dXJuIGZbMF19fX1mdW5jdGlvbiBqcShhLGIsYyxkKXt2YXIgZT1mcSgpLGY9QTtTcChmKSYmKGYuZG9jdW1lbnQuY29va2llPWEpO3ZhciBnPWZxKCk7cmV0dXJuIGUhPT1nfHxjIT09dm9pZCAwJiZjcShiLGcsITEsZCkuaW5kZXhPZihjKT49MH0KZnVuY3Rpb24ga3EoYSxiLGMsZCl7ZnVuY3Rpb24gZSh4LHkseil7aWYoej09bnVsbClyZXR1cm4gZGVsZXRlIGhbeV0seDtoW3ldPXo7cmV0dXJuIHgrIjsgIit5KyI9Iit6fWZ1bmN0aW9uIGYoeCx5KXtpZih5PT1udWxsKXJldHVybiB4O2hbeV09ITA7cmV0dXJuIHgrIjsgIit5fWlmKCFlcShjLk1jKSlyZXR1cm4gMjt2YXIgZztiPT1udWxsP2c9YSsiPWRlbGV0ZWQ7IGV4cGlyZXM9IisobmV3IERhdGUoMCkpLnRvVVRDU3RyaW5nKCk6KGMuZW5jb2RlJiYoYj1lbmNvZGVVUklDb21wb25lbnQoYikpLGI9bHEoYiksZz1hKyI9IitiKTt2YXIgaD17fTtnPWUoZywicGF0aCIsYy5wYXRoKTt2YXIgbDtjLmV4cGlyZXMgaW5zdGFuY2VvZiBEYXRlP2w9Yy5leHBpcmVzLnRvVVRDU3RyaW5nKCk6Yy5leHBpcmVzIT1udWxsJiYobD0iIitjLmV4cGlyZXMpO2c9ZShnLCJleHBpcmVzIixsKTtnPWUoZywibWF4LWFnZSIsYy5Pcyk7Zz1lKGcsInNhbWVzaXRlIixjLnJ0KTtjLnNlY3VyZSYmCihnPWYoZywic2VjdXJlIikpO3ZhciBuPWMuZG9tYWluO2lmKG4mJm4udG9Mb3dlckNhc2UoKT09PSJhdXRvIil7Zm9yKHZhciBwPW1xKCkscT12b2lkIDAscj0hMSx0PTA7dDxwLmxlbmd0aDsrK3Qpe3ZhciB1PXBbdF0hPT0ibm9uZSI/cFt0XTp2b2lkIDAsdj1lKGcsImRvbWFpbiIsdSk7dj1mKHYsYy5mbGFncyk7dHJ5e2QmJmQoYSxoKX1jYXRjaCh4KXtxPXg7Y29udGludWV9cj0hMDtpZighbnEodSxjLnBhdGgpJiZqcSh2LGEsYixjLk1jKSlyZXR1cm4gMH1pZihxJiYhcil0aHJvdyBxO3JldHVybiAxfW4mJm4udG9Mb3dlckNhc2UoKSE9PSJub25lIiYmKGc9ZShnLCJkb21haW4iLG4pKTtnPWYoZyxjLmZsYWdzKTtkJiZkKGEsaCk7cmV0dXJuIG5xKG4sYy5wYXRoKT8xOmpxKGcsYSxiLGMuTWMpPzA6MX1mdW5jdGlvbiBvcShhLGIsYyl7Yy5wYXRoPT1udWxsJiYoYy5wYXRoPSIvIik7Yy5kb21haW58fChjLmRvbWFpbj0iYXV0byIpO3JldHVybiBrcShhLGIsYyl9CmZ1bmN0aW9uIGlxKGEsYixjKXtmb3IodmFyIGQ9W10sZT1bXSxmLGc9MDtnPGEubGVuZ3RoO2crKyl7dmFyIGg9YVtnXSxsPWIoaCk7bD09PWM/ZC5wdXNoKGgpOmY9PT12b2lkIDB8fGw8Zj8oZT1baF0sZj1sKTpsPT09ZiYmZS5wdXNoKGgpfXJldHVybiBkLmxlbmd0aD4wP2Q6ZX1mdW5jdGlvbiBocShhLGIsYyl7Zm9yKHZhciBkPVtdLGU9Y3EoYSx2b2lkIDAsdm9pZCAwLGMpLGY9MDtmPGUubGVuZ3RoO2YrKyl7dmFyIGc9ZVtmXS5zcGxpdCgiLiIpLGg9Zy5zaGlmdCgpO2lmKCFifHwhaHx8Yi5pbmRleE9mKGgpIT09LTEpe3ZhciBsPWcuc2hpZnQoKTtpZihsKXt2YXIgbj1sLnNwbGl0KCItIik7ZC5wdXNoKHtCcjplW2ZdLENyOmcuam9pbigiLiIpLEpyOk51bWJlcihuWzBdKXx8MSxXczpOdW1iZXIoblsxXSl8fDF9KX19fXJldHVybiBkfWZ1bmN0aW9uIGxxKGEpe2EmJmEubGVuZ3RoPjEyMDAmJihhPWEuc3Vic3RyaW5nKDAsMTIwMCkpO3JldHVybiBhfQp2YXIgcHE9L14od3d3XC4pP2dvb2dsZShcLmNvbT8pPyhcLlthLXpdezJ9KT8kLyxxcT0vKF58XC4pZG91YmxlY2xpY2tcLm5ldCQvaTtmdW5jdGlvbiBucShhLGIpe3JldHVybiBhIT09dm9pZCAwJiYocXEudGVzdChBLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKXx8Yj09PSIvIiYmcHEudGVzdChhKSl9ZnVuY3Rpb24gcnEoYSl7aWYoIWEpcmV0dXJuIDE7dmFyIGI9YTtZZig0KSYmYT09PSJub25lIiYmKGI9QS5kb2N1bWVudC5sb2NhdGlvbi5ob3N0bmFtZSk7Yj1iLmluZGV4T2YoIi4iKT09PTA/Yi5zdWJzdHJpbmcoMSk6YjtyZXR1cm4gYi5zcGxpdCgiLiIpLmxlbmd0aH1mdW5jdGlvbiBzcShhKXtpZighYXx8YT09PSIvIilyZXR1cm4gMTthWzBdIT09Ii8iJiYoYT0iLyIrYSk7YVthLmxlbmd0aC0xXSE9PSIvIiYmKGErPSIvIik7cmV0dXJuIGEuc3BsaXQoIi8iKS5sZW5ndGgtMX0KZnVuY3Rpb24gdHEoYSxiKXt2YXIgYz0iIitycShhKSxkPXNxKGIpO2Q+MSYmKGMrPSItIitkKTtyZXR1cm4gY30KdmFyIGZxPWZ1bmN0aW9uKCl7dmFyIGE9QTtyZXR1cm4gU3AoYSk/YS5kb2N1bWVudC5jb29raWU6IiJ9LGVxPWZ1bmN0aW9uKGEpe3JldHVybiBhJiZZZig1KT8oQXJyYXkuaXNBcnJheShhKT9hOlthXSkuZXZlcnkoZnVuY3Rpb24oYil7cmV0dXJuIERsKGIpJiZCbChiKX0pOiEwfSxtcT1mdW5jdGlvbigpe3ZhciBhPVtdLGI9QS5kb2N1bWVudC5sb2NhdGlvbi5ob3N0bmFtZS5zcGxpdCgiLiIpO2lmKGIubGVuZ3RoPT09NCl7dmFyIGM9YltiLmxlbmd0aC0xXTtpZihOdW1iZXIoYykudG9TdHJpbmcoKT09PWMpcmV0dXJuWyJub25lIl19Zm9yKHZhciBkPWIubGVuZ3RoLTI7ZD49MDtkLS0pYS5wdXNoKGIuc2xpY2UoZCkuam9pbigiLiIpKTt2YXIgZT1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lO3FxLnRlc3QoZSl8fHBxLnRlc3QoZSl8fGEucHVzaCgibm9uZSIpO3JldHVybiBhfTtmdW5jdGlvbiB1cShhLGIsYyxkKXt2YXIgZSxmPU51bWJlcihhLnBkIT1udWxsP2EucGQ6dm9pZCAwKTtmIT09MCYmKGU9bmV3IERhdGUoKGJ8fE5iKCkpKzFFMyooZnx8Nzc3NkUzKSkpO3JldHVybntwYXRoOmEucGF0aCxkb21haW46YS5kb21haW4sZmxhZ3M6YS5mbGFncyxlbmNvZGU6ISFjLGV4cGlyZXM6ZSxNYzpkfX07dmFyIHZxPW5ldyBNYXAoW1s1LCJhZF9zdG9yYWdlIl0sWzQsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl1dLFsyLCJhbmFseXRpY3Nfc3RvcmFnZSJdXSk7ZnVuY3Rpb24gd3EoYSxiLGMpe2lmKFpwW2JdKXtmb3IodmFyIGQ9W10sZT1jcShhLHZvaWQgMCx2b2lkIDAsdnEuZ2V0KGIpKSxmPW0oZSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPSRwKGcudmFsdWUsYixjKTtoJiZkLnB1c2goeHEoaCkpfXJldHVybiBkfX0KZnVuY3Rpb24geXEoYSl7dmFyIGI9enE7aWYoWnBbMl0pe2Zvcih2YXIgYz17fSxkPWRxKGEsdm9pZCAwLHZvaWQgMCx2cS5nZXQoMikpLGU9T2JqZWN0LmtleXMoZCkuc29ydCgpLGY9bShlKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSlmb3IodmFyIGg9Zy52YWx1ZSxsPW0oZFtoXSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPSRwKG4udmFsdWUsMixiKTtwJiYoY1toXXx8KGNbaF09W10pLGNbaF0ucHVzaCh4cShwKSkpfXJldHVybiBjfX1mdW5jdGlvbiBBcShhLGIsYyxkLGUpe2Q9ZHx8e307dmFyIGY9dHEoZC5kb21haW4sZC5wYXRoKSxnPWFxKGIsYyxmKTtpZighZylyZXR1cm4gMTt2YXIgaD11cShkLGUsdm9pZCAwLHZxLmdldChjKSk7cmV0dXJuIG9xKGEsZyxoKX1mdW5jdGlvbiBCcShhLGIpe3ZhciBjPWIubmE7cmV0dXJuIHR5cGVvZiBjPT09ImZ1bmN0aW9uIj9jKGEpOmMudGVzdChhKX0KZnVuY3Rpb24geHEoYSl7Zm9yKHZhciBiPW0oT2JqZWN0LmtleXMoYSkpLGM9Yi5uZXh0KCksZD17fTshYy5kb25lO2Q9e0FnOnZvaWQgMH0sYz1iLm5leHQoKSl7dmFyIGU9Yy52YWx1ZSxmPWFbZV07ZC5BZz1VcFtlXTtkLkFnP2QuQWcubms/YVtlXT1BcnJheS5pc0FycmF5KGYpP2YuZmlsdGVyKGZ1bmN0aW9uKGcpe3JldHVybiBmdW5jdGlvbihoKXtyZXR1cm4gQnEoaCxnLkFnKX19KGQpKTp2b2lkIDA6dHlwZW9mIGY9PT0ic3RyaW5nIiYmQnEoZixkLkFnKXx8KGFbZV09dm9pZCAwKTphW2VdPXZvaWQgMH1yZXR1cm4gYX07dmFyIENxO2Z1bmN0aW9uIERxKCl7ZnVuY3Rpb24gYShnKXtjKGcudGFyZ2V0fHxnLnNyY0VsZW1lbnR8fHt9KX1mdW5jdGlvbiBiKGcpe2QoZy50YXJnZXR8fGcuc3JjRWxlbWVudHx8e30pfXZhciBjPUVxLGQ9RnEsZT1HcSgpO2lmKCFlLmluaXQpeyRjKEIsIm1vdXNlZG93biIsYSk7JGMoQiwia2V5dXAiLGEpOyRjKEIsInN1Ym1pdCIsYik7dmFyIGY9SFRNTEZvcm1FbGVtZW50LnByb3RvdHlwZS5zdWJtaXQ7SFRNTEZvcm1FbGVtZW50LnByb3RvdHlwZS5zdWJtaXQ9ZnVuY3Rpb24oKXtkKHRoaXMpO2YuY2FsbCh0aGlzKX07ZS5pbml0PSEwfX1mdW5jdGlvbiBIcShhLGIsYyxkLGUpe3ZhciBmPXtjYWxsYmFjazphLGRvbWFpbnM6YixmcmFnbWVudDpjPT09MixwbGFjZW1lbnQ6Yyxmb3JtczpkLHNhbWVIb3N0OmV9O0dxKCkuZGVjb3JhdG9ycy5wdXNoKGYpfQpmdW5jdGlvbiBJcShhLGIsYyl7Zm9yKHZhciBkPUdxKCkuZGVjb3JhdG9ycyxlPXt9LGY9MDtmPGQubGVuZ3RoOysrZil7dmFyIGc9ZFtmXSxoO2lmKGg9IWN8fGcuZm9ybXMpYTp7dmFyIGw9Zy5kb21haW5zLG49YSxwPSEhZy5zYW1lSG9zdDtpZihsJiYocHx8biE9PUIubG9jYXRpb24uaG9zdG5hbWUpKWZvcih2YXIgcT0wO3E8bC5sZW5ndGg7cSsrKWlmKGxbcV1pbnN0YW5jZW9mIFJlZ0V4cCl7aWYobFtxXS50ZXN0KG4pKXtoPSEwO2JyZWFrIGF9fWVsc2UgaWYobi5pbmRleE9mKGxbcV0pPj0wfHxwJiZsW3FdLmluZGV4T2Yobik+PTApe2g9ITA7YnJlYWsgYX1oPSExfWlmKGgpe3ZhciByPWcucGxhY2VtZW50O3I9PT12b2lkIDAmJihyPWcuZnJhZ21lbnQ/MjoxKTtyPT09YiYmUWIoZSxnLmNhbGxiYWNrKCkpfX1yZXR1cm4gZX0KZnVuY3Rpb24gR3EoKXt2YXIgYT1NYygiZ29vZ2xlX3RhZ19kYXRhIix7fSksYj1hLmdsO2ImJmIuZGVjb3JhdG9yc3x8KGI9e2RlY29yYXRvcnM6W119LGEuZ2w9Yik7cmV0dXJuIGJ9O3ZhciBKcT0vKC4qPylcKiguKj8pXCooLiopLyxLcT0vXmh0dHBzPzpcL1wvKFteXC9dKj8pXC4/Y2RuXC5hbXBwcm9qZWN0XC5vcmdcLz8oLiopLyxMcT0vXig/Ond3d1wufG1cLnxhbXBcLikrLyxNcT0vKFtePyNdKykoXD9bXiNdKik/KCMuKik/LztmdW5jdGlvbiBOcShhKXt2YXIgYj1NcS5leGVjKGEpO2lmKGIpcmV0dXJue2hrOmJbMV0scXVlcnk6YlsyXSxmcmFnbWVudDpiWzNdfX1mdW5jdGlvbiBPcShhKXtyZXR1cm4gbmV3IFJlZ0V4cCgiKC4qPykoXnwmKSIrYSsiPShbXiZdKikmPyguKikiKX0KZnVuY3Rpb24gUHEoYSxiKXt2YXIgYz1bSGMudXNlckFnZW50LChuZXcgRGF0ZSkuZ2V0VGltZXpvbmVPZmZzZXQoKSxIYy51c2VyTGFuZ3VhZ2V8fEhjLmxhbmd1YWdlLE1hdGguZmxvb3IoTmIoKS82MC8xRTMpLShiPT09dm9pZCAwPzA6YiksYV0uam9pbigiKiIpLGQ7aWYoIShkPUNxKSl7Zm9yKHZhciBlPUFycmF5KDI1NiksZj0wO2Y8MjU2O2YrKyl7Zm9yKHZhciBnPWYsaD0wO2g8ODtoKyspZz1nJjE/Zz4+PjFeMzk4ODI5MjM4NDpnPj4+MTtlW2ZdPWd9ZD1lfUNxPWQ7Zm9yKHZhciBsPTQyOTQ5NjcyOTUsbj0wO248Yy5sZW5ndGg7bisrKWw9bD4+PjheQ3FbKGxeYy5jaGFyQ29kZUF0KG4pKSYyNTVdO3JldHVybigobF4tMSk+Pj4wKS50b1N0cmluZygzNil9CmZ1bmN0aW9uIFFxKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYz1SaihBLmxvY2F0aW9uLmhyZWYpLGQ9Yy5zZWFyY2gucmVwbGFjZSgiPyIsIiIpLGU9SWooZCwiX2dsIiwhMSwhMCl8fCIiO2IucXVlcnk9UnEoZSl8fHt9O3ZhciBmPUxqKGMsImZyYWdtZW50IiksZzt2YXIgaD0tMTtpZihTYihmLCJfZ2w9IikpaD00O2Vsc2V7dmFyIGw9Zi5pbmRleE9mKCImX2dsPSIpO2w+MCYmKGg9bCszKzIpfWlmKGg8MClnPXZvaWQgMDtlbHNle3ZhciBuPWYuaW5kZXhPZigiJiIsaCk7Zz1uPDA/Zi5zdWJzdHJpbmcoaCk6Zi5zdWJzdHJpbmcoaCxuKX1iLmZyYWdtZW50PVJxKGd8fCIiKXx8e307YSYmU3EoYyxkLGYpfX1mdW5jdGlvbiBUcShhLGIpe3ZhciBjPU9xKGEpLmV4ZWMoYiksZD1iO2lmKGMpe3ZhciBlPWNbMl0sZj1jWzRdO2Q9Y1sxXTtmJiYoZD1kK2UrZil9cmV0dXJuIGR9CmZ1bmN0aW9uIFNxKGEsYixjKXtmdW5jdGlvbiBkKGcsaCl7dmFyIGw9VHEoIl9nbCIsZyk7bC5sZW5ndGgmJihsPWgrbCk7cmV0dXJuIGx9aWYoR2MmJkdjLnJlcGxhY2VTdGF0ZSl7dmFyIGU9T3EoIl9nbCIpO2lmKGUudGVzdChiKXx8ZS50ZXN0KGMpKXt2YXIgZj1MaihhLCJwYXRoIik7Yj1kKGIsIj8iKTtjPWQoYywiIyIpO0djLnJlcGxhY2VTdGF0ZSh7fSwiIiwiIitmK2IrYyl9fX1mdW5jdGlvbiBVcShhLGIpe3ZhciBjPVFxKCEhYiksZD1HcSgpO2QuZGF0YXx8KGQuZGF0YT17cXVlcnk6e30sZnJhZ21lbnQ6e319LGMoZC5kYXRhKSk7dmFyIGU9e30sZj1kLmRhdGE7ZiYmKFFiKGUsZi5xdWVyeSksYSYmUWIoZSxmLmZyYWdtZW50KSk7cmV0dXJuIGV9CnZhciBScT1mdW5jdGlvbihhKXt0cnl7dmFyIGI9VnEoYSwzKTtpZihiIT09dm9pZCAwKXtmb3IodmFyIGM9e30sZD1iP2Iuc3BsaXQoIioiKTpbXSxlPTA7ZSsxPGQubGVuZ3RoO2UrPTIpe3ZhciBmPWRbZV0sZz1xYihkW2UrMV0pO2NbZl09Z31zYigiVEFHR0lORyIsNik7cmV0dXJuIGN9fWNhdGNoKGgpe3NiKCJUQUdHSU5HIiw4KX19O2Z1bmN0aW9uIFZxKGEsYil7aWYoYSl7dmFyIGM7YTp7Zm9yKHZhciBkPWEsZT0wO2U8MzsrK2Upe3ZhciBmPUpxLmV4ZWMoZCk7aWYoZil7Yz1mO2JyZWFrIGF9ZD1LaihkKXx8IiJ9Yz12b2lkIDB9dmFyIGc9YztpZihnJiZnWzFdPT09IjEiKXt2YXIgaD1nWzNdLGw7YTp7Zm9yKHZhciBuPWdbMl0scD0wO3A8YjsrK3ApaWYobj09PVBxKGgscCkpe2w9ITA7YnJlYWsgYX1sPSExfWlmKGwpcmV0dXJuIGg7c2IoIlRBR0dJTkciLDcpfX19CmZ1bmN0aW9uIFdxKGEsYixjLGQsZSl7ZnVuY3Rpb24gZihwKXtwPVRxKGEscCk7dmFyIHE9cC5jaGFyQXQocC5sZW5ndGgtMSk7cCYmcSE9PSImIiYmKHArPSImIik7cmV0dXJuIHArbn1kPWQ9PT12b2lkIDA/ITE6ZDtlPWU9PT12b2lkIDA/ITE6ZTt2YXIgZz1OcShjKTtpZighZylyZXR1cm4iIjt2YXIgaD1nLnF1ZXJ5fHwiIixsPWcuZnJhZ21lbnR8fCIiLG49YSsiPSIrYjtkP2wuc3Vic3RyaW5nKDEpLmxlbmd0aCE9PTAmJmV8fChsPSIjIitmKGwuc3Vic3RyaW5nKDEpKSk6aD0iPyIrZihoLnN1YnN0cmluZygxKSk7cmV0dXJuIiIrZy5oaytoK2x9CmZ1bmN0aW9uIFhxKGEsYil7ZnVuY3Rpb24gYyhuLHAscSl7dmFyIHI7YTp7Zm9yKHZhciB0IGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eSh0KSl7cj0hMDticmVhayBhfXI9ITF9aWYocil7dmFyIHUsdj1bXSx4O2Zvcih4IGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eSh4KSl7dmFyIHk9blt4XTt5IT09dm9pZCAwJiZ5PT09eSYmeSE9PW51bGwmJnkudG9TdHJpbmcoKSE9PSJbb2JqZWN0IE9iamVjdF0iJiYodi5wdXNoKHgpLHYucHVzaChwYihTdHJpbmcoeSkpKSl9dmFyIHo9di5qb2luKCIqIik7dT1bIjEiLFBxKHopLHpdLmpvaW4oIioiKTtkPyhZZigzKXx8WWYoMSl8fCFwKSYmWXEoIl9nbCIsdSxhLHAscSk6WnEoIl9nbCIsdSxhLHAscSl9fXZhciBkPShhLnRhZ05hbWV8fCIiKS50b1VwcGVyQ2FzZSgpPT09IkZPUk0iLGU9SXEoYiwxLGQpLGY9SXEoYiwyLGQpLGc9SXEoYiw0LGQpLGg9SXEoYiwzLGQpO2MoZSwhMSwhMSk7YyhmLCEwLCExKTtZZigxKSYmYyhnLCEwLCEwKTtmb3IodmFyIGwgaW4gaCloLmhhc093blByb3BlcnR5KGwpJiYKJHEobCxoW2xdLGEpfWZ1bmN0aW9uICRxKGEsYixjKXtjLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09PSJhIj9acShhLGIsYyk6Yy50YWdOYW1lLnRvTG93ZXJDYXNlKCk9PT0iZm9ybSImJllxKGEsYixjKX1mdW5jdGlvbiBacShhLGIsYyxkLGUpe2Q9ZD09PXZvaWQgMD8hMTpkO2U9ZT09PXZvaWQgMD8hMTplO3ZhciBmO2lmKGY9Yy5ocmVmKXt2YXIgZztpZighKGc9ZCkpe3ZhciBoPUEubG9jYXRpb24uaHJlZixsPU5xKGMuaHJlZiksbj1OcShoKTtnPSEobCYmbiYmbC5oaz09PW4uaGsmJmwucXVlcnk9PT1uLnF1ZXJ5JiZsLmZyYWdtZW50KX1mPWd9aWYoZil7dmFyIHA9V3EoYSxiLGMuaHJlZixkLGUpO3ZjLnRlc3QocCkmJihjLmhyZWY9cCl9fQpmdW5jdGlvbiBZcShhLGIsYyxkLGUpe2Q9ZD09PXZvaWQgMD8hMTpkO2U9ZT09PXZvaWQgMD8hMTplO2lmKGMpe3ZhciBmPWMuZ2V0QXR0cmlidXRlKCJhY3Rpb24iKXx8IiI7aWYoZil7dmFyIGc9KGMubWV0aG9kfHwiIikudG9Mb3dlckNhc2UoKTtpZihnIT09ImdldCJ8fGQpe2lmKGc9PT0iZ2V0Inx8Zz09PSJwb3N0Iil7dmFyIGg9V3EoYSxiLGYsZCxlKTt2Yy50ZXN0KGgpJiYoYy5hY3Rpb249aCl9fWVsc2V7Zm9yKHZhciBsPWMuY2hpbGROb2Rlc3x8W10sbj0hMSxwPTA7cDxsLmxlbmd0aDtwKyspe3ZhciBxPWxbcF07aWYocS5uYW1lPT09YSl7cS5zZXRBdHRyaWJ1dGUoInZhbHVlIixiKTtuPSEwO2JyZWFrfX1pZighbil7dmFyIHI9Qi5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO3Iuc2V0QXR0cmlidXRlKCJ0eXBlIiwiaGlkZGVuIik7ci5zZXRBdHRyaWJ1dGUoIm5hbWUiLGEpO3Iuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsYik7Yy5hcHBlbmRDaGlsZChyKX19fX19CmZ1bmN0aW9uIEVxKGEpe3RyeXt2YXIgYjthOntmb3IodmFyIGM9YSxkPTEwMDtjJiZkPjA7KXtpZihjLmhyZWYmJmMubm9kZU5hbWUubWF0Y2goL15hKD86cmVhKT8kL2kpKXtiPWM7YnJlYWsgYX1jPWMucGFyZW50Tm9kZTtkLS19Yj1udWxsfXZhciBlPWI7aWYoZSl7dmFyIGY9ZS5wcm90b2NvbDtmIT09Imh0dHA6IiYmZiE9PSJodHRwczoifHxYcShlLGUuaG9zdG5hbWUpfX1jYXRjaChnKXt9fWZ1bmN0aW9uIEZxKGEpe3RyeXt2YXIgYj1hLmdldEF0dHJpYnV0ZSgiYWN0aW9uIik7aWYoYil7dmFyIGM9TGooUmooYiksImhvc3QiKTtYcShhLGMpfX1jYXRjaChkKXt9fWZ1bmN0aW9uIGFyKGEsYixjLGQpe0RxKCk7dmFyIGU9Yz09PSJmcmFnbWVudCI/MjoxO2Q9ISFkO0hxKGEsYixlLGQsITEpO2U9PT0yJiZzYigiVEFHR0lORyIsMjMpO2QmJnNiKCJUQUdHSU5HIiwyNCl9CmZ1bmN0aW9uIGJyKGEsYil7RHEoKTtIcShhLFtOaihBLmxvY2F0aW9uLCJob3N0IiwhMCldLGIsITAsITApfWZ1bmN0aW9uIGNyKCl7dmFyIGE9Qi5sb2NhdGlvbi5ob3N0bmFtZSxiPUtxLmV4ZWMoQi5yZWZlcnJlcik7aWYoIWIpcmV0dXJuITE7dmFyIGM9YlsyXSxkPWJbMV0sZT0iIjtpZihjKXt2YXIgZj1jLnNwbGl0KCIvIiksZz1mWzFdO2U9Zz09PSJzIj9LaihmWzJdKXx8IiI6S2ooZyl8fCIifWVsc2UgaWYoZCl7aWYoZC5pbmRleE9mKCJ4bi0tIik9PT0wKXJldHVybiExO2U9ZC5yZXBsYWNlKC8tL2csIi4iKS5yZXBsYWNlKC9cLlwuL2csIi0iKX12YXIgaD1hLnJlcGxhY2UoTHEsIiIpLGw9ZS5yZXBsYWNlKExxLCIiKTtyZXR1cm4gaD09PWx8fFRiKGgsIi4iK2wpfWZ1bmN0aW9uIGRyKGEsYil7cmV0dXJuIGE9PT0hMT8hMTphfHxifHxjcigpfTt2YXIgZXI9ZnVuY3Rpb24oYSl7dGhpcy52YWx1ZT0wO3RoaXMudmFsdWU9YT09PXZvaWQgMD8wOmF9O2VyLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWV8PTE8PGF9O3ZhciBmcj1mdW5jdGlvbihhLGIpe2I8PTB8fChhLnZhbHVlfD0xPDxiLTEpfTtlci5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O2VyLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbihhKXt0aGlzLnZhbHVlJj1+KDE8PGEpfTtlci5wcm90b3R5cGUuY2xlYXJBbGw9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPTB9O2VyLnByb3RvdHlwZS5lcXVhbHM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWU9PT1hLnZhbHVlfTtmdW5jdGlvbiBncihhKXtpZihhKXRyeXtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYXRvYihhLnJlcGxhY2UoLy0vZywiKyIpLnJlcGxhY2UoL18vZywiLyIpKS5zcGxpdCgiIikubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLmNoYXJDb2RlQXQoMCl9KSl9Y2F0Y2goYil7fX1mdW5jdGlvbiBocihhLGIpe3ZhciBjPTAsZD0wLGUsZj1iO2Rve2lmKGY+PWEubGVuZ3RoKXJldHVybjtlPWFbZisrXTtjfD0oZSYxMjcpPDxkO2QrPTd9d2hpbGUoZSYxMjgpO3JldHVybltjLGZdfTtmdW5jdGlvbiBpcigpe3ZhciBhPVN0cmluZyxiPUEubG9jYXRpb24uaG9zdG5hbWUsYz1BLmxvY2F0aW9uLnBhdGhuYW1lLGQ9Yj1iYyhiKTtkLnNwbGl0KCIuIikubGVuZ3RoPjImJihkPWQucmVwbGFjZSgvXih3d3dbMC05XSp8d2VifGZ0cHx3YXB8aG9tZXxtfHd8YW1wfG1vYmlsZSlcLi8sIiIpKTtiPWQ7Yz1iYyhjKTt2YXIgZT1jLnNwbGl0KCI7IilbMF07ZT1lLnJlcGxhY2UoL1wvKGFyfHNscHx3ZWJ8aW5kZXgpP1wvPyQvLCIiKTtyZXR1cm4gYShuZygoIiIrYitlKS50b0xvd2VyQ2FzZSgpKSl9O3ZhciBqcj1bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXTtmdW5jdGlvbiBrcihhLGIpe2lmKCFhKXJldHVybiBzYigiVEFHR0lORyIsMzIpLDEwO2lmKGI9PT1udWxsfHxiPT09dm9pZCAwfHxiPT09IiIpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMyksMTE7dmFyIGM9bHIoITEpO2lmKGMuZXJyb3IhPT0wKXJldHVybiBzYigiVEFHR0lORyIsMzQpLGMuZXJyb3I7aWYoIWMudmFsdWUpcmV0dXJuIHNiKCJUQUdHSU5HIiwzNSksMjtjLnZhbHVlW2FdPWI7dmFyIGQ9bXIoYyk7ZCE9PTAmJnNiKCJUQUdHSU5HIiwzNik7cmV0dXJuIGR9CmZ1bmN0aW9uIG5yKGEpe2lmKCFhKXJldHVybiBzYigiVEFHR0lORyIsMjcpLHtlcnJvcjoxMH07dmFyIGI9bHIoKTtpZihiLmVycm9yIT09MClyZXR1cm4gc2IoIlRBR0dJTkciLDI5KSxiO2lmKCFiLnZhbHVlKXJldHVybiBzYigiVEFHR0lORyIsMzApLHtlcnJvcjoyfTtpZighKGEgaW4gYi52YWx1ZSkpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMSkse3ZhbHVlOnZvaWQgMCxlcnJvcjoxNX07dmFyIGM9Yi52YWx1ZVthXTtyZXR1cm4gYz09PW51bGx8fGM9PT12b2lkIDB8fGM9PT0iIj8oc2IoIlRBR0dJTkciLDI4KSx7dmFsdWU6dm9pZCAwLGVycm9yOjExfSk6e3ZhbHVlOmMsZXJyb3I6MH19CmZ1bmN0aW9uIG9yKGEpe2lmKGEpe3ZhciBiPWxyKCExKTtiLmVycm9yIT09MD9zYigiVEFHR0lORyIsMzgpOmIudmFsdWU/YSBpbiBiLnZhbHVlPyhkZWxldGUgYi52YWx1ZVthXSxtcihiKSE9PTAmJnNiKCJUQUdHSU5HIiw0MSkpOnNiKCJUQUdHSU5HIiw0MCk6c2IoIlRBR0dJTkciLDM5KX1lbHNlIHNiKCJUQUdHSU5HIiwzNyl9CmZ1bmN0aW9uIGxyKGEpe2E9YT09PXZvaWQgMD8hMDphO2lmKCFCbChqcikpcmV0dXJuIHNiKCJUQUdHSU5HIiw0Mykse2Vycm9yOjN9O3RyeXtpZighQS5sb2NhbFN0b3JhZ2UpcmV0dXJuIHNiKCJUQUdHSU5HIiw0NCkse2Vycm9yOjF9fWNhdGNoKGYpe3JldHVybiBzYigiVEFHR0lORyIsNDUpLHtlcnJvcjoxNH19dmFyIGI9e3NjaGVtYToiZ2NsIix2ZXJzaW9uOjF9LGM9dm9pZCAwO3RyeXtjPUEubG9jYWxTdG9yYWdlLmdldEl0ZW0oIl9nY2xfbHMiKX1jYXRjaChmKXtyZXR1cm4gc2IoIlRBR0dJTkciLDQ2KSx7ZXJyb3I6MTN9fXRyeXtpZihjKXt2YXIgZD1KU09OLnBhcnNlKGMpO2lmKGQmJnR5cGVvZiBkPT09Im9iamVjdCIpYj1kO2Vsc2UgcmV0dXJuIHNiKCJUQUdHSU5HIiw0Nykse2Vycm9yOjEyfX19Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0OCkse2Vycm9yOjh9fWlmKGIuc2NoZW1hIT09ImdjbCIpcmV0dXJuIHNiKCJUQUdHSU5HIiw0OSkse2Vycm9yOjR9OwppZihiLnZlcnNpb24hPT0xKXJldHVybiBzYigiVEFHR0lORyIsNTApLHtlcnJvcjo1fTt0cnl7dmFyIGU9cHIoYik7YSYmZSYmbXIoe3ZhbHVlOmIsZXJyb3I6MH0pfWNhdGNoKGYpe3JldHVybiBzYigiVEFHR0lORyIsNDgpLHtlcnJvcjo4fX1yZXR1cm57dmFsdWU6YixlcnJvcjowfX0KZnVuY3Rpb24gcHIoYSl7aWYoIWF8fHR5cGVvZiBhIT09Im9iamVjdCIpcmV0dXJuITE7aWYoImV4cGlyZXMiaW4gYSYmInZhbHVlImluIGEpe3ZhciBiO3R5cGVvZiBhLmV4cGlyZXM9PT0ibnVtYmVyIj9iPWEuZXhwaXJlczpiPXR5cGVvZiBhLmV4cGlyZXM9PT0ic3RyaW5nIj9OdW1iZXIoYS5leHBpcmVzKTpOYU47aWYoaXNOYU4oYil8fCEoRGF0ZS5ub3coKTw9YikpcmV0dXJuIGEudmFsdWU9bnVsbCxhLmVycm9yPTksc2IoIlRBR0dJTkciLDU0KSwhMH1lbHNle2Zvcih2YXIgYz0hMSxkPW0oT2JqZWN0LmtleXMoYSkpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWM9cHIoYVtlLnZhbHVlXSl8fGM7cmV0dXJuIGN9cmV0dXJuITF9CmZ1bmN0aW9uIG1yKGEpe2lmKGEuZXJyb3IpcmV0dXJuIGEuZXJyb3I7aWYoIWEudmFsdWUpcmV0dXJuIHNiKCJUQUdHSU5HIiw0MiksMjt2YXIgYj1hLnZhbHVlLGM7dHJ5e2M9SlNPTi5zdHJpbmdpZnkoYil9Y2F0Y2goZCl7cmV0dXJuIHNiKCJUQUdHSU5HIiw1MiksNn10cnl7QS5sb2NhbFN0b3JhZ2Uuc2V0SXRlbSgiX2djbF9scyIsYyl9Y2F0Y2goZCl7cmV0dXJuIHNiKCJUQUdHSU5HIiw1MyksN31yZXR1cm4gMH07dmFyIHFyPXt9LHJyPShxci5nY2xpZD0hMCxxci5kY2xpZD0hMCxxci5nYnJhaWQ9ITAscXIud2JyYWlkPSEwLHFyKSxzcj0vXlx3KyQvLHRyPS9eW1x3LV0rJC8sdXI9e30sdnI9KHVyLmF3PSJGUEdDTEFXIix1ciksd3I9e30seHI9KHdyLmFnPSJfYWciLHdyLmdiPSJfZ2IiLHdyLmF3PSJfYXciLHdyLmRjPSJfZGMiLHdyLmdmPSJfZ2YiLHdyLmhhPSJfaGEiLHdyLmdwPSJfZ3AiLHdyLmdzPSJfZ3MiLHdyKSx5cj0vXig/Ond3d1wuKT9nb29nbGUoPzpcLmNvbT8pPyg/OlwuW2Etel17Mn10Pyk/JC8senI9L153d3dcLmdvb2dsZWFkc2VydmljZXNcLmNvbSQvO2Z1bmN0aW9uIEFyKCl7cmV0dXJuWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl19ZnVuY3Rpb24gQnIoYSl7cmV0dXJuIVlmKDUpfHxCbChhKX1mdW5jdGlvbiBDcihhLGIpe2Z1bmN0aW9uIGMoKXt2YXIgZD1CcihiKTtkJiZhKCk7cmV0dXJuIGR9SGwoZnVuY3Rpb24oKXtjKCl8fElsKGMsYil9LGIpfQpmdW5jdGlvbiBEcihhKXtyZXR1cm4gRXIoYSkubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSl9ZnVuY3Rpb24gRnIoYSl7cmV0dXJuIEdyKGEpLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gYi5nY2xpZH0pLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gYi5nY2xpZH0pfWZ1bmN0aW9uIEdyKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9SHIoYS5wcmVmaXgpLGQ9SXIoImdiIixjKSxlPUlyKCJhZyIsYyk7aWYoIWV8fCFkKXJldHVybltdO3ZhciBmPWZ1bmN0aW9uKGwpe3JldHVybiBmdW5jdGlvbihuKXtuLnpnPWw7cmV0dXJuIG59fSxnPUVyKGQsYikubWFwKGYoImdiIikpLGg9SnIoZSkubWFwKGYoImFnIikpO3JldHVybiBnLmNvbmNhdChoKS5zb3J0KGZ1bmN0aW9uKGwsbil7cmV0dXJuIG4udGltZXN0YW1wLWwudGltZXN0YW1wfSl9CmZ1bmN0aW9uIEtyKGEsYixjLGQsZSl7dmFyIGY9Q2IoYSxmdW5jdGlvbihnKXtyZXR1cm4gZy5nY2xpZD09PWJ9KTtmPyhmLnRpbWVzdGFtcDxjJiYoZi50aW1lc3RhbXA9YyxmLm9kPWUpLGYubGFiZWxzPUxyKGYubGFiZWxzfHxbXSxkfHxbXSkpOmEucHVzaCh7dmVyc2lvbjoiMiIsZ2NsaWQ6Yix0aW1lc3RhbXA6YyxsYWJlbHM6ZCxvZDplfSl9ZnVuY3Rpb24gTXIoYSl7Zm9yKHZhciBiPXdxKGEsNSl8fFtdLGM9W10sZD1tKGIpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlLGc9ZixoPU5yKGYpO2gmJktyKGMsZy5rLGgsZy5ifHxbXSxmLnUpfXJldHVybiBjLnNvcnQoZnVuY3Rpb24obCxuKXtyZXR1cm4gbi50aW1lc3RhbXAtbC50aW1lc3RhbXB9KX0KZnVuY3Rpb24gRXIoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1bXTtPcihjLGEsMSk7aWYoYilpZihUYihhLCJfYXciKSl7dmFyIGQ9UHIoKTtkJiYoZC5vZD12b2lkIDAsZC5vYT1kLm9hfHxbMl0sUXIoYyxkKSk7T3IoYywiZ2NsX2F3IiwyKX1lbHNlIFRiKGEsIl9nYiIpJiZZZig2KSYmT3IoYywiZ2NsX2diIiwyKTtjLnNvcnQoZnVuY3Rpb24oZSxmKXtyZXR1cm4gZi50aW1lc3RhbXAtZS50aW1lc3RhbXB9KTtyZXR1cm4gUnIoYyl9ZnVuY3Rpb24gU3IoYSxiKXtmb3IodmFyIGM9W10sZD1tKGEpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2MuaW5jbHVkZXMoZil8fGMucHVzaChmKX1mb3IodmFyIGc9bShiKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZTtjLmluY2x1ZGVzKGwpfHxjLnB1c2gobCl9cmV0dXJuIGN9CmZ1bmN0aW9uIFFyKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6Yztmb3IodmFyIGQsZSxmPW0oYSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7aWYoaC5nY2xpZD09PWIuZ2NsaWQpe2Q9aDticmVha31oLnFhJiZiLnFhJiZoLnFhLmVxdWFscyhiLnFhKSYmKGU9aCl9aWYoZCl7dmFyIGwsbixwPShsPWQucWEpIT1udWxsP2w6bmV3IGVyLHE9KG49Yi5xYSkhPW51bGw/bjpuZXcgZXI7cC52YWx1ZXw9cS52YWx1ZTtkLnFhPXA7ZC50aW1lc3RhbXA8Yi50aW1lc3RhbXAmJihkLnRpbWVzdGFtcD1iLnRpbWVzdGFtcCxkLm9kPWIub2QpO2QubGFiZWxzPVNyKGQubGFiZWxzfHxbXSxiLmxhYmVsc3x8W10pO2Qub2E9U3IoZC5vYXx8W10sYi5vYXx8W10pfWVsc2UgYyYmZT9uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGUsYik6YS5wdXNoKGIpfQpmdW5jdGlvbiBUcihhKXtpZighYSlyZXR1cm4gbmV3IGVyO3ZhciBiPW5ldyBlcjtpZihhPT09MSlyZXR1cm4gZnIoYiwyKSxmcihiLDMpLGI7ZnIoYixhKTtyZXR1cm4gYn0KZnVuY3Rpb24gUHIoKXt2YXIgYT1ucigiZ2NsaWQiKTtpZighYXx8YS5lcnJvcnx8IWEudmFsdWV8fHR5cGVvZiBhLnZhbHVlIT09Im9iamVjdCIpcmV0dXJuIG51bGw7dmFyIGI9YS52YWx1ZTt0cnl7aWYoISgidmFsdWUiaW4gYiYmYi52YWx1ZSl8fHR5cGVvZiBiLnZhbHVlIT09Im9iamVjdCIpcmV0dXJuIG51bGw7dmFyIGM9Yi52YWx1ZSxkPWMudmFsdWU7aWYoIWR8fCFkLm1hdGNoKHRyKSlyZXR1cm4gbnVsbDt2YXIgZT1jLmxpbmtEZWNvcmF0aW9uU291cmNlLGY9Yy5saW5rRGVjb3JhdGlvblNvdXJjZXMsZz1uZXcgZXI7dHlwZW9mIGU9PT0ibnVtYmVyIj9nPVRyKGUpOnR5cGVvZiBmPT09Im51bWJlciImJihnLnZhbHVlPWYpO3JldHVybnt2ZXJzaW9uOiIiLGdjbGlkOmQsdGltZXN0YW1wOk51bWJlcihjLmNyZWF0aW9uVGltZU1zKXx8MCxsYWJlbHM6W10scWE6ZyxvYTpbMl19fWNhdGNoKGgpe3JldHVybiBudWxsfX0KZnVuY3Rpb24gVXIoYSl7dmFyIGI9bnIoYSk7aWYoYi5lcnJvciE9PTApcmV0dXJuIG51bGw7dHJ5e3JldHVybiBiLnZhbHVlLnJlZHVjZShmdW5jdGlvbihjLGQpe2lmKCFkLnZhbHVlfHx0eXBlb2YgZC52YWx1ZSE9PSJvYmplY3QiKXJldHVybiBjO3ZhciBlPWQudmFsdWUsZj1lLnZhbHVlO2lmKCFmfHwhZi5tYXRjaCh0cikpcmV0dXJuIGM7dmFyIGc9bmV3IGVyLGg9ZS5saW5rRGVjb3JhdGlvblNvdXJjZXM7dHlwZW9mIGg9PT0ibnVtYmVyIiYmKGcudmFsdWU9aCk7dmFyIGw7Yy5wdXNoKHt2ZXJzaW9uOiIiLGdjbGlkOmYsdGltZXN0YW1wOk51bWJlcihlLmNyZWF0aW9uVGltZU1zKXx8MCxleHBpcmVzOk51bWJlcihkLmV4cGlyZXMpfHwwLGxhYmVsczoobD1lLmxhYmVscykhPW51bGw/bDpbXSxxYTpnLG9hOlsyXX0pO3JldHVybiBjfSxbXSl9Y2F0Y2goYyl7cmV0dXJuIG51bGx9fQpmdW5jdGlvbiBPcihhLGIsYyl7aWYoYz09PTEpZm9yKHZhciBkPWNxKGIsQi5jb29raWUsdm9pZCAwLEFyKCkpLGU9bShkKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9VnIoZi52YWx1ZS5zcGxpdCgiLiIpKSxoPWcubGVuZ3RoPT09MD9udWxsOnt2ZXJzaW9uOmdbMF0sZ2NsaWQ6Z1syXSx0aW1lc3RhbXA6KE51bWJlcihnWzFdKXx8MCkqMUUzLGxhYmVsczpnLnNsaWNlKDMpfTtoIT1udWxsJiYoaC5vZD12b2lkIDAsaC5xYT1uZXcgZXIsaC5vYT1bY10sUXIoYSxoKSl9ZWxzZSBpZihjPT09Mil7dmFyIGw9VXIoYik7aWYobClmb3IodmFyIG49bShsKSxwPW4ubmV4dCgpOyFwLmRvbmU7cD1uLm5leHQoKSl7dmFyIHE9cC52YWx1ZTtxLm9kPXZvaWQgMDtxLm9hPXEub2E7UXIoYSxxKX19fQpmdW5jdGlvbiBacihhKXt2YXIgYj1FcihhKSxjPVVyKCJnY2xfZGMiKTtpZihjKWZvcih2YXIgZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2Yub2Q9dm9pZCAwO2Yub2E9Zi5vYXx8WzJdO1FyKGIsZil9Yi5zb3J0KGZ1bmN0aW9uKGcsaCl7dmFyIGw9Zy5vYSYmZy5vYS5pbmNsdWRlcygxKSxuPWgub2EmJmgub2EuaW5jbHVkZXMoMSk7cmV0dXJuIGwmJiFuPy0xOiFsJiZuPzE6aC50aW1lc3RhbXAtZy50aW1lc3RhbXB9KTtyZXR1cm4gUnIoYil9ZnVuY3Rpb24gSnIoYSl7cmV0dXJuIE1yKGEpLm1hcChmdW5jdGlvbihiKXtiLnFhPW5ldyBlcjtiLm9hPVsxXTtyZXR1cm4gYn0pfQpmdW5jdGlvbiBMcihhLGIpe2lmKCFhLmxlbmd0aClyZXR1cm4gYjtpZighYi5sZW5ndGgpcmV0dXJuIGE7dmFyIGM9e307cmV0dXJuIGEuY29uY2F0KGIpLmZpbHRlcihmdW5jdGlvbihkKXtyZXR1cm4gYy5oYXNPd25Qcm9wZXJ0eShkKT8hMTpjW2RdPSEwfSl9ZnVuY3Rpb24gSHIoYSl7cmV0dXJuIGEmJnR5cGVvZiBhPT09InN0cmluZyImJmEubWF0Y2goc3IpP2E6Il9nY2wifWZ1bmN0aW9uICRyKGEsYil7aWYoYSl7dmFyIGM9e3ZhbHVlOmEscWE6bmV3IGVyfTtmcihjLnFhLGIpO3JldHVybiBjfX0KZnVuY3Rpb24gYXMoYSxiLGMpe3ZhciBkPVJqKGEpLGU9TGooZCwicXVlcnkiLCExLHZvaWQgMCwiZ2Nsc3JjIiksZj0kcihMaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpLGM/NDoyKTtpZihiJiYoIWZ8fCFlKSl7dmFyIGc9ZC5oYXNoLnJlcGxhY2UoIiMiLCIiKTtmfHwoZj0kcihJaihnLCJnY2xpZCIsITEpLDMpKTtlfHwoZT1JaihnLCJnY2xzcmMiLCExKSl9cmV0dXJuIGYmJihlPT09dm9pZCAwfHxlPT09ImF3Inx8ZT09PSJhdy5kcyJ8fFlmKDgpJiZlPT09ImF3LmR2Iik/W2ZdOltdfQpmdW5jdGlvbiBicyhhLGIpe3ZhciBjPVJqKGEpLGQ9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2NsaWQiKSxlPUxqKGMsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbHNyYyIpLGY9TGooYywicXVlcnkiLCExLHZvaWQgMCwid2JyYWlkIik7Zj0kYihmKTt2YXIgZz1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJnYnJhaWQiKSxoPUxqKGMsInF1ZXJ5IiwhMSx2b2lkIDAsImdhZF9zb3VyY2UiKSxsPUxqKGMsInF1ZXJ5IiwhMSx2b2lkIDAsImRjbGlkIik7aWYoYiYmIShkJiZlJiZmJiZnKSl7dmFyIG49Yy5oYXNoLnJlcGxhY2UoIiMiLCIiKTtkPWR8fElqKG4sImdjbGlkIiwhMSk7ZT1lfHxJaihuLCJnY2xzcmMiLCExKTtmPWZ8fElqKG4sIndicmFpZCIsITEpO2c9Z3x8SWoobiwiZ2JyYWlkIiwhMSk7aD1ofHxJaihuLCJnYWRfc291cmNlIiwhMSl9cmV0dXJuIGNzKGQsZSxsLGYsZyxoKX0KZnVuY3Rpb24gZHMoYSxiLGMpe3ZhciBkPVJqKGEpLGU9TGooZCwicXVlcnkiLCExLHZvaWQgMCwiZ2Nsc3JjIiksZj0kcihMaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpLGM/NDoyKSxnPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImRjbGlkIiksYz80OjIpO2lmKGImJighZXx8IWYpKXt2YXIgaD1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Z8fChmPSRyKElqKGgsImdjbGlkIiwhMSksMykpO2V8fChlPUlqKGgsImdjbHNyYyIsITEpKX1yZXR1cm4gZiYmZSYmKGU9PT0iYXcuZHMifHxlPT09ImF3LmR2Inx8ZT09PSIzcC5kcyJ8fGU9PT0iZHMiKT9bZl06Zz9bZ106W119ZnVuY3Rpb24gZXMoKXtyZXR1cm4gYnMoQS5sb2NhdGlvbi5ocmVmLCEwKX0KZnVuY3Rpb24gY3MoYSxiLGMsZCxlLGYpe3ZhciBnPXt9LGg9ZnVuY3Rpb24obCxuKXtnW25dfHwoZ1tuXT1bXSk7Z1tuXS5wdXNoKGwpfTtnLmdjbGlkPWE7Zy5nY2xzcmM9YjtnLmRjbGlkPWM7aWYoYSE9PXZvaWQgMCYmYS5tYXRjaCh0cikpc3dpdGNoKGIpe2Nhc2Ugdm9pZCAwOmgoYSwiYXciKTticmVhaztjYXNlICJhdy5kcyI6aChhLCJhdyIpO2goYSwiZGMiKTticmVhaztjYXNlICJhdy5kdiI6WWYoOCkmJihoKGEsImF3IiksaChhLCJkYyIpKTticmVhaztjYXNlICJkcyI6aChhLCJkYyIpO2JyZWFrO2Nhc2UgIjNwLmRzIjpoKGEsImRjIik7YnJlYWs7Y2FzZSAiZ2YiOmgoYSwiZ2YiKTticmVhaztjYXNlICJoYSI6aChhLCJoYSIpfWMmJmgoYywiZGMiKTtkIT09dm9pZCAwJiZ0ci50ZXN0KGQpJiYoZy53YnJhaWQ9ZCxoKGQsImdiIikpO2UhPT12b2lkIDAmJnRyLnRlc3QoZSkmJihnLmdicmFpZD1lLGgoZSwiYWciKSk7ZiE9PXZvaWQgMCYmdHIudGVzdChmKSYmKGcuZ2FkX3NvdXJjZT0KZixoKGYsImdzIikpO3JldHVybiBnfWZ1bmN0aW9uIGZzKCl7Zm9yKHZhciBhPWVzKCksYj0hMCxjPW0oT2JqZWN0LmtleXMoYSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKWlmKGFbZC52YWx1ZV0hPT12b2lkIDApe2I9ITE7YnJlYWt9YiYmKGE9YnMoQS5kb2N1bWVudC5yZWZlcnJlciwhMSksYS5nYWRfc291cmNlPXZvaWQgMCk7cmV0dXJuIGF9ZnVuY3Rpb24gZ3MoYSl7dmFyIGI9ZnMoKTtocyhiLCExLGEpfQpmdW5jdGlvbiBpcyhhKXt2YXIgYj1hcyhBLmxvY2F0aW9uLmhyZWYsITAsITEpO2IubGVuZ3RofHwoYj1hcyhBLmRvY3VtZW50LnJlZmVycmVyLCExLCEwKSk7YT1hfHx7fTtqcyhhKTtpZihiLmxlbmd0aCl7dmFyIGM9YlswXSxkPU5iKCksZT11cShhLGQsITApLGY9QXIoKSxnPWZ1bmN0aW9uKCl7QnIoZikmJmUuZXhwaXJlcyE9PXZvaWQgMCYma3IoImdjbGlkIix7dmFsdWU6e3ZhbHVlOmMudmFsdWUsY3JlYXRpb25UaW1lTXM6ZCxsaW5rRGVjb3JhdGlvblNvdXJjZXM6Yy5xYS5nZXQoKX0sZXhwaXJlczpOdW1iZXIoZS5leHBpcmVzKX0pfTtIbChmdW5jdGlvbigpe2coKTtCcihmKXx8SWwoZyxmKX0sZil9fQpmdW5jdGlvbiBqcyhhKXt2YXIgYj1CLnJlZmVycmVyP0xqKFJqKEIucmVmZXJyZXIpLCJob3N0Iik6IiI7aWYoeXIudGVzdChiKXx8enIudGVzdChiKXx8a3MoKSl7dmFyIGM7YTp7Zm9yKHZhciBkPVJqKEEubG9jYXRpb24uaHJlZiksZT1KaihMaihkLCJxdWVyeSIpKSxmPW0oT2JqZWN0LmtleXMoZSkpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD1nLnZhbHVlO2lmKCFycltoXSl7dmFyIGw9ZVtoXVswXXx8IiIsbjtpZighbHx8bC5sZW5ndGg8NTB8fGwubGVuZ3RoPjIwMCluPSExO2Vsc2V7dmFyIHA9Z3IobCkscTtpZihwKWM6e3ZhciByPXA7aWYociYmci5sZW5ndGghPT0wKXt2YXIgdD0wO3RyeXtmb3IodmFyIHU9MTA7dDxyLmxlbmd0aCYmISh1LS08PTApOyl7dmFyIHY9aHIocix0KTtpZih2PT09dm9pZCAwKWJyZWFrO3ZhciB4PW0odikseT14Lm5leHQoKS52YWx1ZSx6PXgubmV4dCgpLnZhbHVlLEM9eSxEPXosST1DJjc7aWYoQz4+Mz09PTE2MzgyKXtpZihJIT09CjApYnJlYWs7dmFyIEc9aHIocixEKTtpZihHPT09dm9pZCAwKWJyZWFrO3E9bShHKS5uZXh0KCkudmFsdWU9PT0xO2JyZWFrIGN9dmFyIE47ZDp7dmFyIFM9dm9pZCAwLFc9cixlYT1EO3N3aXRjaChJKXtjYXNlIDA6Tj0oUz1ocihXLGVhKSk9PW51bGw/dm9pZCAwOlNbMV07YnJlYWsgZDtjYXNlIDE6Tj1lYSs4O2JyZWFrIGQ7Y2FzZSAyOnZhciBqYT1ocihXLGVhKTtpZihqYT09PXZvaWQgMClicmVhazt2YXIgZmE9bShqYSksc2E9ZmEubmV4dCgpLnZhbHVlO049ZmEubmV4dCgpLnZhbHVlK3NhO2JyZWFrIGQ7Y2FzZSA1Ok49ZWErNDticmVhayBkfU49dm9pZCAwfWlmKE49PT12b2lkIDB8fE4+ci5sZW5ndGh8fE48PXQpYnJlYWs7dD1OfX1jYXRjaChtYSl7fX1xPSExfWVsc2UgcT0hMTtuPXF9aWYobil7Yz1sO2JyZWFrIGF9fX1jPXZvaWQgMH12YXIgZGE9YztkYSYmbHMoImdjbF9hdyIsZGEsNyxhKX19CmZ1bmN0aW9uIGxzKGEsYixjLGQpe21zKGEsW3t2ZXJzaW9uOiIiLGdjbGlkOmIsdGltZXN0YW1wOk5iKCkscWE6VHIoYyl9XSxkKX0KZnVuY3Rpb24gbXMoYSxiLGMpe2M9Y3x8e307dmFyIGQ9QXIoKSxlPWZ1bmN0aW9uKCl7aWYoQnIoZCkmJmIubGVuZ3RoPjApe3ZhciBmPVVyKGEpfHxbXTtiLmZvckVhY2goZnVuY3Rpb24oZyl7dmFyIGg9dXEoYyxnLnRpbWVzdGFtcCwhMCk7aC5leHBpcmVzIT09dm9pZCAwJiZRcihmLHt2ZXJzaW9uOiIiLGdjbGlkOmcuZ2NsaWQsdGltZXN0YW1wOmcudGltZXN0YW1wLGV4cGlyZXM6TnVtYmVyKGguZXhwaXJlcykscWE6Zy5xYSxsYWJlbHM6Zy5sYWJlbHN9LCEwKX0pO2YubGVuZ3RoJiZrcihhLGYubWFwKGZ1bmN0aW9uKGcpe3ZhciBoPXt2YWx1ZTpnLmdjbGlkLGNyZWF0aW9uVGltZU1zOmcudGltZXN0YW1wLGxpbmtEZWNvcmF0aW9uU291cmNlczpnLnFhP2cucWEuZ2V0KCk6MH0sbDtpZigobD1nLmxhYmVscyk9PW51bGw/MDpsLmxlbmd0aCloLmxhYmVscz1nLmxhYmVscztyZXR1cm57dmFsdWU6aCxleHBpcmVzOk51bWJlcihnLmV4cGlyZXMpfX0pKX19O0hsKGZ1bmN0aW9uKCl7QnIoZCk/CmUoKTpJbChlLGQpfSxkKX0KZnVuY3Rpb24gaHMoYSxiLGMsZCxlKXtjPWN8fHt9O2U9ZXx8W107dmFyIGY9SHIoYy5wcmVmaXgpLGc9ZHx8TmIoKSxoPU1hdGgucm91bmQoZy8xRTMpLGw9QXIoKSxuPSExLHA9ITEscT1ZZig5KSxyPWZ1bmN0aW9uKCl7aWYoQnIobCkpe3ZhciB0PXVxKGMsZywhMCk7dC5NYz1sO2Zvcih2YXIgdT1mdW5jdGlvbihXLGVhKXt2YXIgamE9SXIoVyxmKTtqYSYmKG9xKGphLGVhLHQpLFchPT0iZ2IiJiYobj0hMCkpfSx2PWZ1bmN0aW9uKFcpe3ZhciBlYT1bIkdDTCIsaCxXXTtlLmxlbmd0aD4wJiZlYS5wdXNoKGUuam9pbigiLiIpKTtyZXR1cm4gZWEuam9pbigiLiIpfSx4PW0oWyJhdyIsImRjIiwiZ2YiLCJoYSIsImdwIl0pLHk9eC5uZXh0KCk7IXkuZG9uZTt5PXgubmV4dCgpKXt2YXIgej15LnZhbHVlO2Fbel0mJnUoeix2KGFbel1bMF0pKX1pZigoIW58fHEpJiZhLmdiKXt2YXIgQz1hLmdiWzBdLEQ9SXIoImdiIixmKTshYiYmRXIoRCkuc29tZShmdW5jdGlvbihXKXtyZXR1cm4gVy5nY2xpZD09PUMmJgpXLmxhYmVscyYmVy5sYWJlbHMubGVuZ3RoPjB9KXx8dSgiZ2IiLHYoQykpfX1pZighcCYmYS5nYnJhaWQmJkJyKCJhZF9zdG9yYWdlIikmJihwPSEwLCFufHxxKSl7dmFyIEk9YS5nYnJhaWQsRz1JcigiYWciLGYpO2lmKGJ8fCFKcihHKS5zb21lKGZ1bmN0aW9uKFcpe3JldHVybiBXLmdjbGlkPT09SSYmVy5sYWJlbHMmJlcubGFiZWxzLmxlbmd0aD4wfSkpe3ZhciBOPXt9LFM9KE4uaz1JLE4uaT0iIitoLE4uYj1lLE4pO0FxKEcsUyw1LGMsZyl9fW5zKGEsZixnLGMpfTtIbChmdW5jdGlvbigpe3IoKTtCcihsKXx8SWwocixsKX0sbCl9CmZ1bmN0aW9uIG5zKGEsYixjLGQpe2lmKGEuZ2FkX3NvdXJjZSE9PXZvaWQgMCYmQnIoImFkX3N0b3JhZ2UiKSl7dmFyIGU9cWQoKTtpZihlIT09InIiJiZlIT09ImgiKXt2YXIgZj1hLmdhZF9zb3VyY2UsZz1JcigiZ3MiLGIpO2lmKGcpe3ZhciBoPU1hdGguZmxvb3IoKE5iKCktKHBkKCl8fDApKS8xRTMpLGwsbj1pcigpLHA9e307bD0ocC5rPWYscC5pPSIiK2gscC51PW4scCk7QXEoZyxsLDUsZCxjKX19fX1mdW5jdGlvbiBvcyhhLGIsYyl7Zm9yKHZhciBkPXdxKGIsYyksZT0wO2U8ZC5sZW5ndGg7KytlKWlmKE5yKGRbZV0pPmEpcmV0dXJuITA7cmV0dXJuITF9CmZ1bmN0aW9uIHBzKGEpe3ZhciBiPXFzLGM9cnMoYS5wcmVmaXgpO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUhyKGEucHJlZml4KSxlPW0oYiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1jW2ddO2lmKGgpe3ZhciBsPU1hdGgubWluKHNzKGgpLE5iKCkpLG49dXEoYSxsLCEwKTtuLk1jPUFyKCk7dmFyIHA9SXIoZyxkKTtwJiZvcShwLGgsbil9fXZhciBxPVVxKCEwKTtocyhjcyhxLmdjbGlkLHEuZ2Nsc3JjKSwhMSxhKX0sQXIoKSl9CmZ1bmN0aW9uIHJzKGEpe3ZhciBiPVVxKCEwKSxjPUhyKGEpLGQ9e30sZTtmb3IoZSBpbiB4cilpZih4ci5oYXNPd25Qcm9wZXJ0eShlKSl7dmFyIGY9ZSxnPUlyKGYsYyk7aWYoZyE9PXZvaWQgMCl7dmFyIGg9YltnXTtpZihoKXt2YXIgbD1zcyhoKSxuO2E6e2Zvcih2YXIgcD1NYXRoLm1pbihsLE5iKCkpfHxOYigpLHE9Y3EoZyxCLmNvb2tpZSx2b2lkIDAsQXIoKSkscj0wO3I8cS5sZW5ndGg7KytyKWlmKHNzKHFbcl0pPnApe249ITA7YnJlYWsgYX1uPSExfW58fChkW2ZdPWgpfX19cmV0dXJuIGR9CmZ1bmN0aW9uIHRzKGEpe3ZhciBiPVsiYWciXSxjPVVxKCEwKSxkPUhyKGEucHJlZml4KTtDcihmdW5jdGlvbigpe2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7KytlKXt2YXIgZj1JcihiW2VdLGQpO2lmKGYpe3ZhciBnPWNbZl07aWYoZyl7dmFyIGg9JHAoZyw1KTtpZihoKXt2YXIgbD1OcihoKTtsfHwobD1OYigpKTtpZihvcyhsLGYsNSkpYnJlYWs7aC5pPSIiK01hdGgucm91bmQobC8xRTMpO0FxKGYsaCw1LGEsbCl9fX19fSxbImFkX3N0b3JhZ2UiXSl9ZnVuY3Rpb24gSXIoYSxiKXt2YXIgYz14clthXTtpZihjIT09dm9pZCAwKXJldHVybiBiK2N9ZnVuY3Rpb24gc3MoYSl7cmV0dXJuIFZyKGEuc3BsaXQoIi4iKSkubGVuZ3RoIT09MD8oTnVtYmVyKGEuc3BsaXQoIi4iKVsxXSl8fDApKjFFMzowfWZ1bmN0aW9uIE5yKGEpe3JldHVybiBhPyhOdW1iZXIoYS5pKXx8MCkqMUUzOjB9CmZ1bmN0aW9uIFZyKGEpe3JldHVybiBhLmxlbmd0aDwzfHxhWzBdIT09IkdDTCImJmFbMF0hPT0iMSJ8fCEvXlxkKyQvLnRlc3QoYVsxXSl8fCF0ci50ZXN0KGFbMl0pP1tdOmF9ZnVuY3Rpb24gdXMoYSxiLGMsZCl7dmFyIGU9cXM7aWYoQXJyYXkuaXNBcnJheShhKSYmU3AoQSkpe3ZhciBmPUhyKGQpLGc9ZnVuY3Rpb24oKXtmb3IodmFyIGg9e30sbD0wO2w8ZS5sZW5ndGg7KytsKXt2YXIgbj1JcihlW2xdLGYpO2lmKG4pe3ZhciBwPWNxKG4sQi5jb29raWUsdm9pZCAwLEFyKCkpO3AubGVuZ3RoJiYoaFtuXT1wLnNvcnQoKVtwLmxlbmd0aC0xXSl9fXJldHVybiBofTtDcihmdW5jdGlvbigpe2FyKGcsYSxiLGMpfSxBcigpKX19CmZ1bmN0aW9uIHZzKGEsYixjKXt2YXIgZD1xcztpZihZZigxMykmJkFycmF5LmlzQXJyYXkoYSkmJlNwKEEpKXt2YXIgZT1mdW5jdGlvbigpe2Zvcih2YXIgZj17fSxnPTA7ZzxkLmxlbmd0aDsrK2cpe3ZhciBoPXZyW2RbZ11dO2lmKGgpe3ZhciBsPWNxKGgsQi5jb29raWUsdm9pZCAwLEFyKCkpO2lmKGwubGVuZ3RoKXtmb3IodmFyIG49dm9pZCAwLHA9MCxxPW0obCkscj1xLm5leHQoKTshci5kb25lO3I9cS5uZXh0KCkpe3ZhciB0PXIudmFsdWUsdT0kcCh0LDQpO2lmKHUmJih1Lm09PT0iMSJ8fFlmKDE2KSkpe3ZhciB2PU5yKHUpO3Y+PXAmJihwPXYsbj10KX19biYmKGZbaF09bil9fX1yZXR1cm4gZn07Q3IoZnVuY3Rpb24oKXthcihlLGEsYixjKX0sQXIoKSl9fQpmdW5jdGlvbiB3cyhhLGIsYyxkKXtpZihBcnJheS5pc0FycmF5KGEpJiZTcChBKSl7dmFyIGU9WyJhZyJdLGY9SHIoZCksZz1mdW5jdGlvbigpe2Zvcih2YXIgaD17fSxsPTA7bDxlLmxlbmd0aDsrK2wpe3ZhciBuPUlyKGVbbF0sZik7aWYoIW4pcmV0dXJue307dmFyIHA9d3Eobiw1KTtpZihwLmxlbmd0aCl7dmFyIHE9cC5zb3J0KGZ1bmN0aW9uKHIsdCl7cmV0dXJuIE5yKHQpLU5yKHIpfSlbMF07aFtuXT1hcShxLDUpfX1yZXR1cm4gaH07Q3IoZnVuY3Rpb24oKXthcihnLGEsYixjKX0sWyJhZF9zdG9yYWdlIl0pfX1mdW5jdGlvbiBScihhKXtyZXR1cm4gYS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIHRyLnRlc3QoYi5nY2xpZCl9KX0KZnVuY3Rpb24geHMoYSxiKXtpZihTcChBKSl7Zm9yKHZhciBjPUhyKGIucHJlZml4KSxkPXt9LGU9MDtlPGEubGVuZ3RoO2UrKyl4clthW2VdXSYmKGRbYVtlXV09eHJbYVtlXV0pO0NyKGZ1bmN0aW9uKCl7R2IoZCxmdW5jdGlvbihmLGcpe3ZhciBoPWNxKGMrZyxCLmNvb2tpZSx2b2lkIDAsQXIoKSk7aC5zb3J0KGZ1bmN0aW9uKHQsdSl7cmV0dXJuIHNzKHUpLXNzKHQpfSk7aWYoaC5sZW5ndGgpe3ZhciBsPWhbMF0sbj1zcyhsKSxwPVZyKGwuc3BsaXQoIi4iKSkubGVuZ3RoIT09MD9sLnNwbGl0KCIuIikuc2xpY2UoMyk6W10scT17fSxyO3I9VnIobC5zcGxpdCgiLiIpKS5sZW5ndGghPT0wP2wuc3BsaXQoIi4iKVsyXTp2b2lkIDA7cVtmXT1bcl07aHMocSwhMCxiLG4scCl9fSl9LEFyKCkpfX0KZnVuY3Rpb24geXMoYSl7dmFyIGI9WyJhZyJdLGM9WyJnYnJhaWQiXTtDcihmdW5jdGlvbigpe2Zvcih2YXIgZD1IcihhLnByZWZpeCksZT0wO2U8Yi5sZW5ndGg7KytlKXt2YXIgZj1JcihiW2VdLGQpO2lmKCFmKWJyZWFrO3ZhciBnPXdxKGYsNSk7aWYoZy5sZW5ndGgpe3ZhciBoPWcuc29ydChmdW5jdGlvbihxLHIpe3JldHVybiBOcihyKS1OcihxKX0pWzBdLGw9TnIoaCksbj1oLmIscD17fTtwW2NbZV1dPWguaztocyhwLCEwLGEsbCxuKX19fSxbImFkX3N0b3JhZ2UiXSl9ZnVuY3Rpb24genMoYSxiKXtmb3IodmFyIGM9MDtjPGIubGVuZ3RoOysrYylpZihhW2JbY11dKXJldHVybiEwO3JldHVybiExfQpmdW5jdGlvbiBBcyhhKXtmdW5jdGlvbiBiKGgsbCxuKXtuJiYoaFtsXT1uKX1pZihFbCgpKXt2YXIgYz1lcygpLGQ7YS5pbmNsdWRlcygiZ2FkX3NvdXJjZSIpJiYoZD1jLmdhZF9zb3VyY2UhPT12b2lkIDA/Yy5nYWRfc291cmNlOlVxKCExKS5fZ3MpO2lmKHpzKGMsYSl8fGQpe3ZhciBlPXt9O2IoZSwiZ2NsaWQiLGMuZ2NsaWQpO2IoZSwiZGNsaWQiLGMuZGNsaWQpO2IoZSwiZ2Nsc3JjIixjLmdjbHNyYyk7YihlLCJ3YnJhaWQiLGMud2JyYWlkKTtiKGUsImdicmFpZCIsYy5nYnJhaWQpO2JyKGZ1bmN0aW9uKCl7cmV0dXJuIGV9LDMpO3ZhciBmPXt9LGc9KGYuX3VwPSIxIixmKTtiKGcsIl9ncyIsZCk7YnIoZnVuY3Rpb24oKXtyZXR1cm4gZ30sMSl9fX1mdW5jdGlvbiBrcygpe3ZhciBhPVJqKEEubG9jYXRpb24uaHJlZik7cmV0dXJuIExqKGEsInF1ZXJ5IiwhMSx2b2lkIDAsImdhZF9zb3VyY2UiKX0KZnVuY3Rpb24gQnMoYSl7aWYoIVlmKDEpKXJldHVybiBudWxsO3ZhciBiPVVxKCEwKS5nYWRfc291cmNlO2lmKGIhPW51bGwpcmV0dXJuIEEubG9jYXRpb24uaGFzaD0iIixiO2lmKFlmKDIpKXtiPWtzKCk7aWYoYiE9bnVsbClyZXR1cm4gYjt2YXIgYz1lcygpO2lmKHpzKGMsYSkpcmV0dXJuIjAifXJldHVybiBudWxsfWZ1bmN0aW9uIENzKGEpe3ZhciBiPUJzKGEpO2IhPW51bGwmJmJyKGZ1bmN0aW9uKCl7dmFyIGM9e307cmV0dXJuIGMuZ2FkX3NvdXJjZT1iLGN9LDQpfQpmdW5jdGlvbiBEcyhhLGIsYyl7dmFyIGQ9W107aWYoYi5sZW5ndGg9PT0wKXJldHVybiBkO2Zvcih2YXIgZT17fSxmPTA7ZjxiLmxlbmd0aDtmKyspe3ZhciBnPWJbZl0saD1nLnpnP2cuemc6ImdjbCI7aWYoKGcubGFiZWxzfHxbXSkuaW5kZXhPZihjKT09PS0xKXthLnB1c2goMCk7dmFyIGw9ITEsbj12b2lkIDA7aWYoKG49Zy5vYSk9PW51bGw/MDpuLmluY2x1ZGVzKDIpKWw9ITA7dmFyIHA9dm9pZCAwOygocD1nLm9hKT09bnVsbD8wOnAuaW5jbHVkZXMoMSkpJiYhZVtoXSYmKGw9ITAsZVtoXT0hMCk7bCYmZC5wdXNoKGcpfWVsc2V7YS5wdXNoKDEpO3ZhciBxPXZvaWQgMDtpZigocT1nLm9hKT09bnVsbD8wOnEuaW5jbHVkZXMoMSkpZVtoXT0hMH19cmV0dXJuIGR9CmZ1bmN0aW9uIEVzKGEsYixjLGQsZSl7ZT1lPT09dm9pZCAwPyExOmU7dmFyIGY9W107Yz1jfHx7fTtpZighQnIoQXIoKSkpcmV0dXJuIGY7dmFyIGc9RXIoYSxlKSxoPURzKGYsZyxiKTtpZihoLmxlbmd0aCYmIWQpe2Zvcih2YXIgbD1bXSxuPSExLHA9bShoKSxxPXAubmV4dCgpOyFxLmRvbmU7cT1wLm5leHQoKSl7dmFyIHI9cS52YWx1ZSx0PXIsdT10LnZlcnNpb24sdj10LmdjbGlkLHg9dC50aW1lc3RhbXAseT10Lm9hLHo9KHQubGFiZWxzfHxbXSkuY29uY2F0KFtiXSksQz12b2lkIDA7aWYoKChDPXkpPT1udWxsPzA6Qy5pbmNsdWRlcygxKSkmJiFuKXt2YXIgRD1bdSxNYXRoLnJvdW5kKHgvMUUzKSx2XS5jb25jYXQoeikuam9pbigiLiIpLEk9dXEoYyx4LCEwKTtJLk1jPUFyKCk7b3EoYSxELEkpO249ITB9dmFyIEc9dm9pZCAwO2UmJigoRz15KT09bnVsbD8wOkcuaW5jbHVkZXMoMikpJiZsLnB1c2gobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxyLHtsYWJlbHM6en0pKX1sLmxlbmd0aCYmCm1zKCJnY2xfZ2IiLGwsYyl9cmV0dXJuIGZ9CmZ1bmN0aW9uIEZzKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6Yzt2YXIgZD1bXTtiPWJ8fHt9O3ZhciBlPUdyKGIsYyksZj1EcyhkLGUsYSk7aWYoZi5sZW5ndGgpe2Zvcih2YXIgZz1bXSxoPXt9LGw9bShmKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZSxxPUhyKGIucHJlZml4KSxyPUlyKHAuemcscSk7aWYoIXIpcmV0dXJuIGQ7dmFyIHQ9cCx1PXQudmVyc2lvbix2PXQuZ2NsaWQseD10LnRpbWVzdGFtcCx5PXQub2Esej1NYXRoLnJvdW5kKHgvMUUzKSxDPUxyKHQubGFiZWxzfHxbXSxbYV0pLEQ9dm9pZCAwO2lmKChEPXkpPT1udWxsPzA6RC5pbmNsdWRlcygxKSlpZihwLnpnPT09ImFnIiYmIWguYWcpe3ZhciBJPXt9LEc9KEkuaz12LEkuaT0iIit6LEkuYj1DLEkpO0FxKHIsRyw1LGIseCk7aC5hZz0hMH1lbHNlIGlmKHAuemc9PT0iZ2IiJiYhaC5nYil7dmFyIE49W3Useix2XS5jb25jYXQoQykuam9pbigiLiIpLFM9dXEoYix4LCEwKTtTLk1jPQpBcigpO29xKHIsTixTKTtoLmdiPSEwfXZhciBXPXZvaWQgMDtjJiYoKFc9eSk9PW51bGw/MDpXLmluY2x1ZGVzKDIpKSYmZy5wdXNoKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scCx7bGFiZWxzOkN9KSl9Zy5sZW5ndGgmJm1zKCJnY2xfZ2IiLGcsYil9cmV0dXJuIGR9ZnVuY3Rpb24gR3MoYSxiKXt2YXIgYz1IcihiKSxkPUlyKGEsYyk7aWYoIWQpcmV0dXJuIDA7dmFyIGU7ZT1hPT09ImFnIj9KcihkKTpFcihkKTtmb3IodmFyIGY9MCxnPTA7ZzxlLmxlbmd0aDtnKyspZj1NYXRoLm1heChmLGVbZ10udGltZXN0YW1wKTtyZXR1cm4gZn1mdW5jdGlvbiBIcyhhKXtmb3IodmFyIGI9MCxjPW0oT2JqZWN0LmtleXMoYSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKWZvcih2YXIgZT1hW2QudmFsdWVdLGY9MDtmPGUubGVuZ3RoO2YrKyliPU1hdGgubWF4KGIsTnVtYmVyKGVbZl0udGltZXN0YW1wKSk7cmV0dXJuIGJ9CmZ1bmN0aW9uIElzKGEpe3ZhciBiPU1hdGgubWF4KEdzKCJhdyIsYSksSHMoQnIoQXIoKSk/UnAoKTp7fSkpLGM9TWF0aC5tYXgoR3MoImdiIixhKSxIcyhCcihBcigpKT9ScCgiX2dhY19nYiIsITApOnt9KSk7Yz1NYXRoLm1heChjLEdzKCJhZyIsYSkpO3JldHVybiBjPmJ9O3ZhciBKcz1SZWdFeHAoIl5VQS1cXGQrLVxcZCslM0FbXFx3LV0rKD86JTJDW1xcdy1dKykqKD86JTNCVUEtXFxkKy1cXGQrJTNBW1xcdy1dKyg/OiUyQ1tcXHctXSspKikqJCIpLEtzPS9efj9bXHctXSsoPzpcLn4/W1x3LV0rKSokLyxMcz0vXlxkK1wuZmxzXC5kb3VibGVjbGlja1wubmV0JC8sTXM9LztnYWM9KFteOz9dKykvLE5zPS87Z2FjZ2I9KFteOz9dKykvOwpmdW5jdGlvbiBPcyhhLGIpe2lmKExzLnRlc3QoQi5sb2NhdGlvbi5ob3N0KSl7dmFyIGM9Qi5sb2NhdGlvbi5ocmVmLm1hdGNoKGIpO3JldHVybiBjJiZjLmxlbmd0aD09PTImJmNbMV0ubWF0Y2goSnMpP0tqKGNbMV0pfHwiIjoiIn1mb3IodmFyIGQ9W10sZT1tKE9iamVjdC5rZXlzKGEpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7Zm9yKHZhciBnPWYudmFsdWUsaD1bXSxsPWFbZ10sbj0wO248bC5sZW5ndGg7bisrKWgucHVzaChsW25dLmdjbGlkKTtkLnB1c2goZysiOiIraC5qb2luKCIsIikpfXJldHVybiBkLmxlbmd0aD4wP2Quam9pbigiOyIpOiIifQpmdW5jdGlvbiBQcyhhLGIsYyl7Zm9yKHZhciBkPUJyKEFyKCkpP1JwKCJfZ2FjX2diIiwhMCk6e30sZT1bXSxmPSExLGc9bShPYmplY3Qua2V5cyhkKSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWUsbj1FcygiX2dhY19nYl8iK2wsYSxiLGMpO2Y9Znx8bi5sZW5ndGghPT0wJiZuLnNvbWUoZnVuY3Rpb24ocCl7cmV0dXJuIHA9PT0xfSk7ZS5wdXNoKGwrIjoiK24uam9pbigiLCIpKX1yZXR1cm57UnI6Zj9lLmpvaW4oIjsiKToiIixRcjpPcyhkLE5zKX19ZnVuY3Rpb24gUXMoYSl7dmFyIGI9Qi5sb2NhdGlvbi5ocmVmLm1hdGNoKG5ldyBSZWdFeHAoIjsiK2ErIj0oW147P10rKSIpKTtyZXR1cm4gYiYmYi5sZW5ndGg9PT0yJiZiWzFdLm1hdGNoKEtzKT9iWzFdOnZvaWQgMH0KZnVuY3Rpb24gUnMoYSl7dmFyIGI9e30sYyxkLGU7THMudGVzdChCLmxvY2F0aW9uLmhvc3QpJiYoYz1RcygiZ2NsZ3MiKSxkPVFzKCJnY2xzdCIpLGU9UXMoImdjbGxwIikpO2lmKGMmJmQmJmUpYi5FZz1jLGIuV2g9ZCxiLlVoPWU7ZWxzZXt2YXIgZj1OYigpLGc9TXIoKGF8fCJfZ2NsIikrIl9ncyIpLGg9Zy5tYXAoZnVuY3Rpb24ocCl7cmV0dXJuIHAuZ2NsaWR9KSxsPWcubWFwKGZ1bmN0aW9uKHApe3JldHVybiBmLXAudGltZXN0YW1wfSksbj1nLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gcC5vZH0pO2gubGVuZ3RoPjAmJmwubGVuZ3RoPjAmJm4ubGVuZ3RoPjAmJihiLkVnPWguam9pbigiLiIpLGIuV2g9bC5qb2luKCIuIiksYi5VaD1uLmpvaW4oIi4iKSl9cmV0dXJuIGJ9CmZ1bmN0aW9uIFNzKGEsYil7dmFyIGM9YS5zcGxpdCgiLiIpLGQ9Yj9iLnNwbGl0KCIuIik6W10sZT1kLmxlbmd0aD09PWMubGVuZ3RoP2Q6dm9pZCAwO3JldHVybiBjLm1hcChmdW5jdGlvbihmLGcpe3ZhciBoPXtnY2xpZDpmfTtpZihlKXt2YXIgbD1lW2ddLnNwbGl0KCJfIik7aWYobC5sZW5ndGg9PT0yKXtoLnFhPW5ldyBlcihOdW1iZXIobFswXSkpO3ZhciBuO3ZhciBwPU51bWJlcihsWzFdKTtpZihwPT09MCluPVswXTtlbHNle3ZhciBxPVtdO3AmMSYmcS5wdXNoKDEpO3AmMiYmcS5wdXNoKDIpO3AmNCYmcS5wdXNoKDMpO3AmOCYmcS5wdXNoKDQpO3AmMTYmJnEucHVzaCg1KTtuPXF9aC5vYT1ufX1yZXR1cm4gaH0pfQpmdW5jdGlvbiBUcyhhLGIsYyxkKXtkPWQ9PT12b2lkIDA/ITE6ZDtpZihMcy50ZXN0KEIubG9jYXRpb24uaG9zdCkpe3ZhciBlPVFzKGMpO2lmKGUpe2lmKFlmKDE3KSl7dmFyIGY9UXMoYysiX3NyYyIpO3JldHVybiBTcyhlLGYpfWlmKGQpe3ZhciBnPW5ldyBlcjtmcihnLDIpO2ZyKGcsMyk7cmV0dXJuIGUuc3BsaXQoIi4iKS5tYXAoZnVuY3Rpb24ocil7cmV0dXJue2djbGlkOnIscWE6ZyxvYTpbMV19fSl9cmV0dXJuIGUuc3BsaXQoIi4iKS5tYXAoZnVuY3Rpb24ocil7cmV0dXJue2djbGlkOnIscWE6bmV3IGVyLG9hOlsxXX19KX19ZWxzZXtpZihiPT09ImdjbGlkIil7Zm9yKHZhciBoPUVyKChhfHwiX2djbCIpKyJfYXciLGQpLGw9TnVtYmVyKFhmWzRdPT09dm9pZCAwPzA6WGZbNF0pLG49bShVcygpKSxwPW4ubmV4dCgpOyFwLmRvbmU7cD1uLm5leHQoKSl7dmFyIHE9cC52YWx1ZTtxLnRpbWVzdGFtcD5sJiZRcihoLHEpfXJldHVybiBofWlmKGI9PT0id2JyYWlkIilyZXR1cm4gRXIoKGF8fAoiX2djbCIpKyJfZ2IiLGQpO2lmKGI9PT0iYnJhaWRzIilyZXR1cm4gR3Ioe3ByZWZpeDphfSxkKX1yZXR1cm5bXX1mdW5jdGlvbiBVcygpe3JldHVybih3cSh2ci5hdyw0KXx8W10pLmZpbHRlcihmdW5jdGlvbihhKXtyZXR1cm4gYS5tPT09IjEifSkubWFwKGZ1bmN0aW9uKGEpe3JldHVybntnY2xpZDphLmssdGltZXN0YW1wOk51bWJlcihhLmkpLHZlcnNpb246IiIsb2E6WzVdfX0pfWZ1bmN0aW9uIFZzKGEpe2Zvcih2YXIgYj0wLGM9bShhKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtlPjAmJihifD0xPDxlLTEpfXJldHVybiBiLnRvU3RyaW5nKCl9ZnVuY3Rpb24gV3MoYSl7cmV0dXJuIExzLnRlc3QoQi5sb2NhdGlvbi5ob3N0KT8hKFFzKCJnY2xhdyIpfHxRcygiZ2FjIikpOklzKGEpfQpmdW5jdGlvbiBYcyhhLGIsYyxkKXtkPWQ9PT12b2lkIDA/ITE6ZDt2YXIgZTtlPWM/RnMoYSxiLGQpOkVzKChiJiZiLnByZWZpeHx8Il9nY2wiKSsiX2diIixhLGIsdm9pZCAwLGQpO3JldHVybiBlLmxlbmd0aD09PTB8fGUuZXZlcnkoZnVuY3Rpb24oZil7cmV0dXJuIGY9PT0wfSk/IiI6ZS5qb2luKCIuIil9Owp2YXIgWXM9ZnVuY3Rpb24oYSl7dmFyIGI7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9a2ooImFkc19wYWdldmlldyIsZnVuY3Rpb24oKXtyZXR1cm57fX0pO2lmKGNbYV0pcmV0dXJuITE7Ynx8KGNbYV09ITApO3JldHVybiEwfSxacz1mdW5jdGlvbihhKXtyZXR1cm4gU2ooYSwiZ2NsaWQgZGNsaWQgZ2JyYWlkIHdicmFpZCBnY2xhdyBnY2xkYyBnY2xoYSBnY2xnZiBnY2xnYiBfZ2wiLnNwbGl0KCIgIiksIjAiKX0sYXQ9ZnVuY3Rpb24oKXt2YXIgYT1SaihBLmxvY2F0aW9uLmhyZWYpLGI9dm9pZCAwLGM9dm9pZCAwLGQ9TGooYSwicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpLGU9TGooYSwicXVlcnkiLCExLHZvaWQgMCwiZ2FkX2NhbXBhaWduaWQiKSxmLGc9YS5oYXNoLnJlcGxhY2UoIiMiLCIiKS5tYXRjaCgkcyk7Zj1nP2dbMV06dm9pZCAwO2QmJmY/KGI9ZCxjPTEpOmQ/KGI9ZCxjPTIpOmYmJihiPWYsYz0zKTtyZXR1cm57RGc6YixTcjpjLFRoOmV9fSxidD1mdW5jdGlvbihhKXt2YXIgYj0KT3AoITEpPT09MT9BLnRvcC5sb2NhdGlvbi5ocmVmOkEubG9jYXRpb24uaHJlZjtyZXR1cm4gYShiKX0sY3Q9ZnVuY3Rpb24oYSl7dmFyIGI9W107R2IoYSxmdW5jdGlvbihjLGQpe2Q9UnIoZCk7Zm9yKHZhciBlPVtdLGY9MDtmPGQubGVuZ3RoO2YrKyllLnB1c2goZFtmXS5nY2xpZCk7ZS5sZW5ndGgmJmIucHVzaChjKyI6IitlLmpvaW4oIiwiKSl9KTtyZXR1cm4gYi5qb2luKCI7Iil9LGV0PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1kdChhKTtpZihkKXJldHVybiBkO3ZhciBlPUhyKGIpO2lmKGU9PT0iX2djbCIpe3ZhciBmPSFYbyhmcCkmJmMsZz1bXTthPT09ImF3Ij9nPWFzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk6YT09PSJkYyImJihnPWRzKEEubG9jYXRpb24uaHJlZiwhMCwhMSkpO2lmKGcubGVuZ3RoPjApcmV0dXJuIGY/W3t2ZXJzaW9uOiJHQ0wiLHRpbWVzdGFtcDowLGdjbGlkOiIwIn1dOmcubWFwKGZ1bmN0aW9uKGwpe3JldHVybnt2ZXJzaW9uOiJHQ0wiLHRpbWVzdGFtcDowLApnY2xpZDpsLnZhbHVlLHFhOmwucWEsb2E6WzFdfX0pfXZhciBoPUlyKGEsZSk7cmV0dXJuIGg/YT09PSJhdyI/RXIoaCxNKDU2MikpOlpyKGgpOltdfSxkdD1mdW5jdGlvbihhKXt2YXIgYj1UaigiZ2NsIithKSxjPWE9PT0iZGMifHxhPT09ImF3Ij9UaigiZ2NsIithKyJfc3JjIik6dm9pZCAwO2lmKGIpcmV0dXJuIFNzKGIsYyl9LGZ0PWZ1bmN0aW9uKGEsYixjKXtpZihhPT09ImF3Inx8YT09PSJkYyJ8fGE9PT0iZ2IiKXt2YXIgZD1UaigiZ2NsIithKTtpZihkKXJldHVybiBkLnNwbGl0KCIuIil9dmFyIGU9SHIoYik7aWYoZT09PSJfZ2NsIil7dmFyIGY9IVhvKGZwKSYmYyxnO2c9ZXMoKVthXXx8W107aWYoZy5sZW5ndGg+MClyZXR1cm4gZj9bIjAiXTpnfXZhciBoPUlyKGEsZSk7cmV0dXJuIGg/RHIoaCk6W119LGd0PWZ1bmN0aW9uKGEsYixjKXtpZighUihhLGIpfHwhUihhLGMpKXJldHVybiIiO3ZhciBkPVIoYSxiKS5zcGxpdCgiLiIpLGU9UihhLGMpLnNwbGl0KCIuIik7cmV0dXJuIGQubGVuZ3RoJiYKZS5sZW5ndGgmJmQubGVuZ3RoPT09ZS5sZW5ndGgmJmRbMF0mJmVbMF0/ZC5tYXAoZnVuY3Rpb24oZixnKXtyZXR1cm4gZisiXyIrZVtnXX0pLmpvaW4oIi4iKToiIn0sJHM9L15nYWRfc291cmNlW189XShcZCspJC87ZnVuY3Rpb24gaHQoYSxiLGMpe3ZhciBkPVIoYSxGLkQuVGEpO2lmKGQmJnR5cGVvZiBkPT09Im9iamVjdCIpZm9yKHZhciBlPW0oT2JqZWN0LmtleXMoZCkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlLGg9ZFtnXTtpZihoIT09dm9pZCAwKXtoPT09bnVsbCYmKGg9IiIpO3ZhciBsPSJnYXAuIitnLG49U3RyaW5nKGgpO2M/YyhsLG4pOmJbbF09bn19fTt2YXIgaXQ9ITEsanQ9W107ZnVuY3Rpb24ga3QoKXtpZighaXQpe2l0PSEwO2Zvcih2YXIgYT1qdC5sZW5ndGgtMTthPj0wO2EtLSlqdFthXSgpO2p0PVtdfX07ZnVuY3Rpb24gbHQoYSl7dmFyIGI9W10sYz0wLGQ7Zm9yKGQgaW4gYSliW2MrK109YVtkXTtyZXR1cm4gYn07ZnVuY3Rpb24gbXQoYSxiLGMpe3JldHVybiB0eXBlb2YgYS5hZGRFdmVudExpc3RlbmVyPT09ImZ1bmN0aW9uIj8oYS5hZGRFdmVudExpc3RlbmVyKGIsYywhMSksITApOiExfWZ1bmN0aW9uIG50KGEsYixjKXt0eXBlb2YgYS5yZW1vdmVFdmVudExpc3RlbmVyPT09ImZ1bmN0aW9uIiYmYS5yZW1vdmVFdmVudExpc3RlbmVyKGIsYywhMSl9O2Z1bmN0aW9uIG90KGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2EuZ29vZ2xlX2ltYWdlX3JlcXVlc3RzfHwoYS5nb29nbGVfaW1hZ2VfcmVxdWVzdHM9W10pO3ZhciBlPVBwKGEuZG9jdW1lbnQpO2lmKGMpe3ZhciBmPWZ1bmN0aW9uKCl7aWYoYyl7dmFyIGc9YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHMsaD1EYyhnLGUpO2g+PTAmJkFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChnLGgsMSl9bnQoZSwibG9hZCIsZik7bnQoZSwiZXJyb3IiLGYpfTttdChlLCJsb2FkIixmKTttdChlLCJlcnJvciIsZil9ZCYmKGUuYXR0cmlidXRpb25TcmM9IiIpO2Uuc3JjPWI7YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHMucHVzaChlKX0KZnVuY3Rpb24gcHQoYSl7dmFyIGI7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9Imh0dHBzOi8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2dlbl8yMDQ/aWQ9dGNmZSI7SXAoYSxmdW5jdGlvbihkLGUpe2lmKGR8fGQ9PT0wKWMrPSImIitlKyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGQpKX0pO3F0KGMsYil9CmZ1bmN0aW9uIHF0KGEsYil7dmFyIGM9d2luZG93LGQ7Yj1iPT09dm9pZCAwPyExOmI7ZD1kPT09dm9pZCAwPyExOmQ7aWYoYy5mZXRjaCl7dmFyIGU9e2tlZXBhbGl2ZTohMCxjcmVkZW50aWFsczoiaW5jbHVkZSIscmVkaXJlY3Q6ImZvbGxvdyIsbWV0aG9kOiJnZXQiLG1vZGU6Im5vLWNvcnMifTtkJiYoZS5tb2RlPSJjb3JzIiwic2V0QXR0cmlidXRpb25SZXBvcnRpbmciaW4gWE1MSHR0cFJlcXVlc3QucHJvdG90eXBlP2UuYXR0cmlidXRpb25SZXBvcnRpbmc9e2V2ZW50U291cmNlRWxpZ2libGU6InRydWUiLHRyaWdnZXJFbGlnaWJsZToiZmFsc2UifTplLmhlYWRlcnM9eyJBdHRyaWJ1dGlvbi1SZXBvcnRpbmctRWxpZ2libGUiOiJldmVudC1zb3VyY2UifSk7Yy5mZXRjaChhLGUpfWVsc2Ugb3QoYyxhLGI9PT12b2lkIDA/ITE6YixkPT09dm9pZCAwPyExOmQpfTtmdW5jdGlvbiBydCgpe3RoaXMuZmE9dGhpcy5mYTt0aGlzLlI9dGhpcy5SfXJ0LnByb3RvdHlwZS5mYT0hMTtydC5wcm90b3R5cGUuZGlzcG9zZT1mdW5jdGlvbigpe3RoaXMuZmF8fCh0aGlzLmZhPSEwLHRoaXMuTigpKX07cnQucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfTtydC5wcm90b3R5cGUuYWRkT25EaXNwb3NlQ2FsbGJhY2s9ZnVuY3Rpb24oYSxiKXt0aGlzLmZhP2IhPT12b2lkIDA/YS5jYWxsKGIpOmEoKToodGhpcy5SfHwodGhpcy5SPVtdKSxiJiYoYT1hLmJpbmQoYikpLHRoaXMuUi5wdXNoKGEpKX07cnQucHJvdG90eXBlLk49ZnVuY3Rpb24oKXtpZih0aGlzLlIpZm9yKDt0aGlzLlIubGVuZ3RoOyl0aGlzLlIuc2hpZnQoKSgpfTtmdW5jdGlvbiBzdChhKXthLmFkZHRsQ29uc2VudD09PXZvaWQgMHx8dmYoYS5hZGR0bENvbnNlbnQpfHwoYS5hZGR0bENvbnNlbnQ9dm9pZCAwKTthLmdkcHJBcHBsaWVzPT09dm9pZCAwfHx3ZihhLmdkcHJBcHBsaWVzKXx8KGEuZ2RwckFwcGxpZXM9dm9pZCAwKTtyZXR1cm4gYS50Y1N0cmluZyE9PXZvaWQgMCYmIXZmKGEudGNTdHJpbmcpfHxhLmxpc3RlbmVySWQhPT12b2lkIDAmJiF1ZihhLmxpc3RlbmVySWQpPzI6YS5jbXBTdGF0dXMmJmEuY21wU3RhdHVzIT09ImVycm9yIj8wOjN9dmFyIHR0PWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7cnQuY2FsbCh0aGlzKTt0aGlzLkg9bnVsbDt0aGlzLmphPXt9O3RoaXMueWE9MDt0aGlzLlo9bnVsbDt0aGlzLks9YTt2YXIgYzt0aGlzLnRpbWVvdXRNcz0oYz1iLnRpbWVvdXRNcykhPW51bGw/Yzo1MDA7dmFyIGQ7dGhpcy5Faj0oZD1iLkVqKSE9bnVsbD9kOiExfTt3YSh0dCxydCk7CnR0LnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7dGhpcy5qYT17fTt0aGlzLlomJihudCh0aGlzLkssIm1lc3NhZ2UiLHRoaXMuWiksZGVsZXRlIHRoaXMuWik7ZGVsZXRlIHRoaXMuamE7ZGVsZXRlIHRoaXMuSztkZWxldGUgdGhpcy5IO3J0LnByb3RvdHlwZS5OLmNhbGwodGhpcyl9O3ZhciB2dD1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGEuSy5fX3RjZmFwaT09PSJmdW5jdGlvbiJ8fHV0KGEpIT1udWxsfTsKdHQucHJvdG90eXBlLmFkZEV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPXtpbnRlcm5hbEJsb2NrT25FcnJvcnM6dGhpcy5Fan0sZD1IcChmdW5jdGlvbigpe2EoYyl9KSxlPTA7dGhpcy50aW1lb3V0TXMhPT0tMSYmKGU9c2V0VGltZW91dChmdW5jdGlvbigpe2MudGNTdHJpbmc9InRjdW5hdmFpbGFibGUiO2MuaW50ZXJuYWxFcnJvclN0YXRlPTE7ZCgpfSx0aGlzLnRpbWVvdXRNcykpO3ZhciBmPWZ1bmN0aW9uKGcsaCl7Y2xlYXJUaW1lb3V0KGUpO2c/KGM9ZyxjLmludGVybmFsRXJyb3JTdGF0ZT1zdChjKSxjLmludGVybmFsQmxvY2tPbkVycm9ycz1iLkVqLGgmJmMuaW50ZXJuYWxFcnJvclN0YXRlPT09MHx8KGMudGNTdHJpbmc9InRjdW5hdmFpbGFibGUiLGh8fChjLmludGVybmFsRXJyb3JTdGF0ZT0zKSkpOihjLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIixjLmludGVybmFsRXJyb3JTdGF0ZT0zKTthKGMpfTt0cnl7d3QodGhpcywiYWRkRXZlbnRMaXN0ZW5lciIsCmYpfWNhdGNoKGcpe2MudGNTdHJpbmc9InRjdW5hdmFpbGFibGUiLGMuaW50ZXJuYWxFcnJvclN0YXRlPTMsZSYmKGNsZWFyVGltZW91dChlKSxlPTApLGQoKX19O3R0LnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEpe2EmJmEubGlzdGVuZXJJZCYmd3QodGhpcywicmVtb3ZlRXZlbnRMaXN0ZW5lciIsbnVsbCxhLmxpc3RlbmVySWQpfTsKdmFyIHp0PWZ1bmN0aW9uKGEsYixjKXt2YXIgZDtkPWQ9PT12b2lkIDA/Ijc1NSI6ZDt2YXIgZTthOntpZihhLnB1Ymxpc2hlciYmYS5wdWJsaXNoZXIucmVzdHJpY3Rpb25zKXt2YXIgZj1hLnB1Ymxpc2hlci5yZXN0cmljdGlvbnNbYl07aWYoZiE9PXZvaWQgMCl7ZT1mW2Q9PT12b2lkIDA/Ijc1NSI6ZF07YnJlYWsgYX19ZT12b2lkIDB9dmFyIGc9ZTtpZihnPT09MClyZXR1cm4hMTt2YXIgaD1jO2M9PT0yPyhoPTAsZz09PTImJihoPTEpKTpjPT09MyYmKGg9MSxnPT09MSYmKGg9MCkpO3ZhciBsO2lmKGg9PT0wKWlmKGEucHVycG9zZSYmYS52ZW5kb3Ipe3ZhciBuPXh0KGEudmVuZG9yLmNvbnNlbnRzLGQ9PT12b2lkIDA/Ijc1NSI6ZCk7bD1uJiZiPT09IjEiJiZhLnB1cnBvc2VPbmVUcmVhdG1lbnQmJmEucHVibGlzaGVyQ0M9PT0iQ0giPyEwOm4mJnh0KGEucHVycG9zZS5jb25zZW50cyxiKX1lbHNlIGw9ITA7ZWxzZSBsPWg9PT0xP2EucHVycG9zZSYmYS52ZW5kb3I/eHQoYS5wdXJwb3NlLmxlZ2l0aW1hdGVJbnRlcmVzdHMsCmIpJiZ4dChhLnZlbmRvci5sZWdpdGltYXRlSW50ZXJlc3RzLGQ9PT12b2lkIDA/Ijc1NSI6ZCk6ITA6ITA7cmV0dXJuIGx9LHh0PWZ1bmN0aW9uKGEsYil7cmV0dXJuISghYXx8IWFbYl0pfSx3dD1mdW5jdGlvbihhLGIsYyxkKXtjfHwoYz1mdW5jdGlvbigpe30pO3ZhciBlPWEuSztpZih0eXBlb2YgZS5fX3RjZmFwaT09PSJmdW5jdGlvbiIpe3ZhciBmPWUuX190Y2ZhcGk7ZihiLDIsYyxkKX1lbHNlIGlmKHV0KGEpKXtBdChhKTt2YXIgZz0rK2EueWE7YS5qYVtnXT1jO2lmKGEuSCl7dmFyIGg9e307YS5ILnBvc3RNZXNzYWdlKChoLl9fdGNmYXBpQ2FsbD17Y29tbWFuZDpiLHZlcnNpb246MixjYWxsSWQ6ZyxwYXJhbWV0ZXI6ZH0saCksIioiKX19ZWxzZSBjKHt9LCExKX0sdXQ9ZnVuY3Rpb24oYSl7aWYoYS5IKXJldHVybiBhLkg7YS5IPU5wKGEuSywiX190Y2ZhcGlMb2NhdG9yIik7cmV0dXJuIGEuSH0sQXQ9ZnVuY3Rpb24oYSl7aWYoIWEuWil7dmFyIGI9ZnVuY3Rpb24oYyl7aWYoYy5zb3VyY2U9PT0KYS5IKXRyeXt2YXIgZDtkPSh2ZihjLmRhdGEpP0pTT04ucGFyc2UoYy5kYXRhKTpjLmRhdGEpLl9fdGNmYXBpUmV0dXJuO2EuamFbZC5jYWxsSWRdKGQucmV0dXJuVmFsdWUsZC5zdWNjZXNzKX1jYXRjaChlKXt9fTthLlo9YjttdChhLkssIm1lc3NhZ2UiLGIpfX0sQnQ9ZnVuY3Rpb24oYSl7aWYoYS5nZHByQXBwbGllcz09PSExKXJldHVybiEwO2EuaW50ZXJuYWxFcnJvclN0YXRlPT09dm9pZCAwJiYoYS5pbnRlcm5hbEVycm9yU3RhdGU9c3QoYSkpO3JldHVybiBhLmNtcFN0YXR1cz09PSJlcnJvciJ8fGEuaW50ZXJuYWxFcnJvclN0YXRlIT09MD9hLmludGVybmFsQmxvY2tPbkVycm9ycz8ocHQoe2U6U3RyaW5nKGEuaW50ZXJuYWxFcnJvclN0YXRlKX0pLCExKTohMDphLmNtcFN0YXR1cyE9PSJsb2FkZWQifHxhLmV2ZW50U3RhdHVzIT09InRjbG9hZGVkIiYmYS5ldmVudFN0YXR1cyE9PSJ1c2VyYWN0aW9uY29tcGxldGUiPyExOiEwfTt2YXIgQ3Q9ezE6MCwzOjAsNDowLDc6Myw5OjMsMTA6M307ZnVuY3Rpb24gRHQoKXtyZXR1cm4ga2ooInRjZiIsZnVuY3Rpb24oKXtyZXR1cm57fX0pfXZhciBFdD1mdW5jdGlvbigpe3JldHVybiBuZXcgdHQoQSx7dGltZW91dE1zOi0xfSl9OwpmdW5jdGlvbiBGdCgpe3ZhciBhPUR0KCksYj1FdCgpO3Z0KGIpJiYhR3QoKSYmIUh0KCkmJlAoMTI0KTtpZighYS5hY3RpdmUmJnZ0KGIpKXtHdCgpJiYoYS5hY3RpdmU9ITAsYS5wdXJwb3Nlcz17fSxhLmNtcElkPTAsYS50Y2ZQb2xpY3lWZXJzaW9uPTAsdGwoKS5hY3RpdmU9ITAsYS50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIpO2NwKCk7dHJ5e2IuYWRkRXZlbnRMaXN0ZW5lcihmdW5jdGlvbihjKXtpZihjLmludGVybmFsRXJyb3JTdGF0ZSE9PTApSXQoYSksZHAoW0YuRC5rYSxGLkQuWGEsRi5ELm1hXSksdGwoKS5hY3RpdmU9ITA7ZWxzZSBpZihhLmdkcHJBcHBsaWVzPWMuZ2RwckFwcGxpZXMsYS5jbXBJZD1jLmNtcElkLGEuZW5hYmxlQWR2ZXJ0aXNlckNvbnNlbnRNb2RlPWMuZW5hYmxlQWR2ZXJ0aXNlckNvbnNlbnRNb2RlLEh0KCkmJihhLmFjdGl2ZT0hMCksIUp0KGMpfHxHdCgpfHxIdCgpKXthLnRjZlBvbGljeVZlcnNpb249Yy50Y2ZQb2xpY3lWZXJzaW9uO3ZhciBkO2lmKGMuZ2RwckFwcGxpZXM9PT0KITEpe3ZhciBlPXt9LGY7Zm9yKGYgaW4gQ3QpQ3QuaGFzT3duUHJvcGVydHkoZikmJihlW2ZdPSEwKTtkPWU7Yi5yZW1vdmVFdmVudExpc3RlbmVyKGMpfWVsc2UgaWYoSnQoYykpe3ZhciBnPXt9LGg7Zm9yKGggaW4gQ3QpaWYoQ3QuaGFzT3duUHJvcGVydHkoaCkpaWYoaD09PSIxIil7dmFyIGwsbj1jLHA9e1VyOiEwfTtwPXA9PT12b2lkIDA/e306cDtsPUJ0KG4pP24uZ2RwckFwcGxpZXM9PT0hMT8hMDpuLnRjU3RyaW5nPT09InRjdW5hdmFpbGFibGUiPyFwLmlkcGNBcHBsaWVzOihwLmlkcGNBcHBsaWVzfHxuLmdkcHJBcHBsaWVzIT09dm9pZCAwfHxwLlVyKSYmKHAuaWRwY0FwcGxpZXN8fHZmKG4udGNTdHJpbmcpJiZuLnRjU3RyaW5nLmxlbmd0aCk/enQobiwiMSIsMCk6ITA6ITE7Z1siMSJdPWx9ZWxzZSBnW2hdPXp0KGMsaCxDdFtoXSk7ZD1nfWlmKGQpe2EudGNTdHJpbmc9Yy50Y1N0cmluZ3x8InRjZW1wdHkiO2EucHVycG9zZXM9ZDt2YXIgcT17fSxyPShxW0YuRC5rYV09CmEucHVycG9zZXNbIjEiXT8iZ3JhbnRlZCI6ImRlbmllZCIscSk7YS5nZHByQXBwbGllcyE9PSEwPyhkcChbRi5ELmthLEYuRC5YYSxGLkQubWFdKSx0bCgpLmFjdGl2ZT0hMCk6KHJbRi5ELlhhXT1hLnB1cnBvc2VzWyIzIl0mJmEucHVycG9zZXNbIjQiXT8iZ3JhbnRlZCI6ImRlbmllZCIsdHlwZW9mIGEudGNmUG9saWN5VmVyc2lvbj09PSJudW1iZXIiJiZhLnRjZlBvbGljeVZlcnNpb24+PTQ/cltGLkQubWFdPWEucHVycG9zZXNbIjEiXSYmYS5wdXJwb3Nlc1siNyJdPyJncmFudGVkIjoiZGVuaWVkIjpkcChbRi5ELm1hXSksVm8ocix7ZXZlbnRJZDowfSx7Z2RwckFwcGxpZXM6YT9hLmdkcHJBcHBsaWVzOnZvaWQgMCx0Y1N0cmluZzpLdCgpfHwiIn0pKX19ZWxzZSBkcChbRi5ELmthLEYuRC5YYSxGLkQubWFdKX0pfWNhdGNoKGMpe0l0KGEpLGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pLHRsKCkuYWN0aXZlPSEwfX19CmZ1bmN0aW9uIEl0KGEpe2EudHlwZT0iZSI7YS50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSJ9ZnVuY3Rpb24gSnQoYSl7cmV0dXJuIGEuZXZlbnRTdGF0dXM9PT0idGNsb2FkZWQifHxhLmV2ZW50U3RhdHVzPT09InVzZXJhY3Rpb25jb21wbGV0ZSJ8fGEuZXZlbnRTdGF0dXM9PT0iY21wdWlzaG93biJ9ZnVuY3Rpb24gR3QoKXtyZXR1cm4gQS5ndGFnX2VuYWJsZV90Y2Zfc3VwcG9ydD09PSEwfWZ1bmN0aW9uIEh0KCl7cmV0dXJuIER0KCkuZW5hYmxlQWR2ZXJ0aXNlckNvbnNlbnRNb2RlPT09ITB9ZnVuY3Rpb24gS3QoKXt2YXIgYT1EdCgpO2lmKGEuYWN0aXZlKXJldHVybiBhLnRjU3RyaW5nfWZ1bmN0aW9uIEx0KCl7dmFyIGE9RHQoKTtpZihhLmFjdGl2ZSYmYS5nZHByQXBwbGllcyE9PXZvaWQgMClyZXR1cm4gYS5nZHByQXBwbGllcz8iMSI6IjAifQpmdW5jdGlvbiBNdChhKXtpZighQ3QuaGFzT3duUHJvcGVydHkoU3RyaW5nKGEpKSlyZXR1cm4hMDt2YXIgYj1EdCgpO3JldHVybiBiLmFjdGl2ZSYmYi5wdXJwb3Nlcz8hIWIucHVycG9zZXNbU3RyaW5nKGEpXTohMH07dmFyIE50PVtGLkQua2EsRi5ELnJhLEYuRC5tYSxGLkQuWGFdLE90PXt9LFB0PShPdFtGLkQua2FdPTEsT3RbRi5ELnJhXT0yLE90KTtmdW5jdGlvbiBRdChhKXtpZihhPT09dm9pZCAwKXJldHVybiAwO3N3aXRjaChPKGEsRi5ELlJjKSl7Y2FzZSB2b2lkIDA6cmV0dXJuIDE7Y2FzZSAhMTpyZXR1cm4gMztkZWZhdWx0OnJldHVybiAyfX1mdW5jdGlvbiBSdCgpe3JldHVybihNKDE4Myk/TGYoMTYpLnNwbGl0KCJ+Iik6TGYoMTcpLnNwbGl0KCJ+IikpLmluZGV4T2Yoem0oKSkhPT0tMSYmSGMuZ2xvYmFsUHJpdmFjeUNvbnRyb2w9PT0hMH1mdW5jdGlvbiBTdChhKXtpZihSdCgpKXJldHVybiExO3ZhciBiPVF0KGEpO2lmKGI9PT0zKXJldHVybiExO3N3aXRjaChDbChGLkQuWGEpKXtjYXNlIDE6Y2FzZSAzOnJldHVybiEwO2Nhc2UgMjpyZXR1cm4hMTtjYXNlIDQ6cmV0dXJuIGI9PT0yO2Nhc2UgMDpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX0KZnVuY3Rpb24gVHQoKXtyZXR1cm4gRWwoKXx8IUJsKEYuRC5rYSl8fCFCbChGLkQucmEpfWZ1bmN0aW9uIFV0KCl7dmFyIGE9e30sYjtmb3IoYiBpbiBQdClQdC5oYXNPd25Qcm9wZXJ0eShiKSYmKGFbUHRbYl1dPUNsKGIpKTtyZXR1cm4iRzEiK3lmKGFbMV18fDApK3lmKGFbMl18fDApfXZhciBWdD17fSxXdD0oVnRbRi5ELmthXT0wLFZ0W0YuRC5yYV09MSxWdFtGLkQubWFdPTIsVnRbRi5ELlhhXT0zLFZ0KTtmdW5jdGlvbiBYdChhKXtzd2l0Y2goYSl7Y2FzZSB2b2lkIDA6cmV0dXJuIDE7Y2FzZSAhMDpyZXR1cm4gMztjYXNlICExOnJldHVybiAyO2RlZmF1bHQ6cmV0dXJuIDB9fQpmdW5jdGlvbiBZdChhKXtmb3IodmFyIGI9IjEiLGM9MDtjPE50Lmxlbmd0aDtjKyspe3ZhciBkPWIsZSxmPU50W2NdLGc9QWwuZGVsZWdhdGVkQ29uc2VudFR5cGVzW2ZdO2U9Zz09PXZvaWQgMD8wOld0Lmhhc093blByb3BlcnR5KGcpPzEyfFd0W2ddOjg7dmFyIGg9dGwoKTtoLmFjY2Vzc2VkQW55PSEwO3ZhciBsPWguZW50cmllc1tmXXx8e307ZT1lPDwyfFh0KGwuaW1wbGljaXQpO2I9ZCsoIiIrIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2VdKyIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltYdChsLmRlY2xhcmUpPDw0fFh0KGwuZGVmYXVsdCk8PDJ8WHQobC51cGRhdGUpXSl9dmFyIG49YixwPShSdCgpPzE6MCk8PDMscT0oRWwoKT8xOjApPDwyLHI9UXQoYSk7Yj1uKyIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltwfApxfHJdO3JldHVybiBiKz0iIisiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbQWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHMuYWRfc3RvcmFnZTw8NHxBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hbmFseXRpY3Nfc3RvcmFnZTw8MnxBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF91c2VyX2RhdGFdKyIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIlsoQWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzPzE6MCk8PDJ8QWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHMuYWRfcGVyc29uYWxpemF0aW9uXX1mdW5jdGlvbiBadCgpe3JldHVybiBCbChGLkQubWEpPyJhIjoiLSJ9ZnVuY3Rpb24gJHQoKXtyZXR1cm4gQm0oKXx8KEd0KCl8fEh0KCkpJiZMdCgpPT09IjEiPyIxIjoiMCJ9CmZ1bmN0aW9uIGF1KCl7cmV0dXJuKEJtKCk/ITA6ISghR3QoKSYmIUh0KCkpJiZMdCgpPT09IjEiKXx8IUJsKEYuRC5tYSl9CmZ1bmN0aW9uIGJ1KCl7dmFyIGE9IjAiLGI9IjAiLGM7dmFyIGQ9RHQoKTtjPWQuYWN0aXZlP2QuY21wSWQ6dm9pZCAwO3R5cGVvZiBjPT09Im51bWJlciImJmM+PTAmJmM8PTQwOTUmJihhPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltjPj42JjYzXSxiPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltjJjYzXSk7dmFyIGU9IjAiLGY7dmFyIGc9RHQoKTtmPWcuYWN0aXZlP2cudGNmUG9saWN5VmVyc2lvbjp2b2lkIDA7dHlwZW9mIGY9PT0ibnVtYmVyIiYmZj49MCYmZjw9NjMmJihlPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltmXSk7dmFyIGg9MDtCbSgpJiYoaHw9MSk7THQoKT09PSIxIiYmKGh8PTIpO0d0KCkmJihofD00KTt2YXIgbDt2YXIgbj1EdCgpO2w9bi5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGUhPT0Kdm9pZCAwP24uZW5hYmxlQWR2ZXJ0aXNlckNvbnNlbnRNb2RlPyIxIjoiMCI6dm9pZCAwO2w9PT0iMSImJihofD04KTt0bCgpLndhaXRQZXJpb2RUaW1lZE91dCYmKGh8PTE2KTtyZXR1cm4iMSIrYStiK2UrIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2hdfTt2YXIgY3U9e1VBOjEsQVc6MixEQzozLEc6NCxHRjo1LEdUOjEyLEdUTToxNCxIQTo2LE1DOjd9OwpmdW5jdGlvbiBkdShhKXthPWE9PT12b2lkIDA/e306YTt2YXIgYj1FKDUpLnNwbGl0KCItIilbMF0udG9VcHBlckNhc2UoKSxjLGQ9e2N0aWQ6RSg1KSxEbzpKZigxNSksSW86RSgxNCksTHM6SWYoNyk/MjoxLER0OmEucGYsY2Fub25pY2FsSWQ6RSg2KSxudDooYz1BaygpKT09bnVsbD92b2lkIDA6Yy5jYW5vbmljYWxDb250YWluZXJJZCxFdDphLlRnPT09dm9pZCAwP3ZvaWQgMDphLlRnPzEwOjEyfTtkLmNhbm9uaWNhbElkIT09YS5tYyYmKGQubWM9YS5tYyk7dmFyIGU9eGsoKTtkLlVzPWU/ZS5jYW5vbmljYWxDb250YWluZXJJZDp2b2lkIDA7SWYoNDUpPyhkLmhpPWN1W2JdLGQuaGl8fChkLmhpPTApKTpkLmhpPURqPzEzOjEwO0lmKDQ3KT8oZC5iaz0wLGQucXI9Mik6SWYoNTApP2QuYms9MTpkLmJrPTM7dmFyIGY9YSxnPXs2OiExfTtKZig1NCk9PT0yP2dbN109ITA6SmYoNTQpPT09MSYmKGdbMl09ITApO2lmKEtjKXt2YXIgaD1MaihSaihLYyksImhvc3QiKTtoJiYoZ1s4XT0KaC5tYXRjaCgvXih3d3dcLik/Z29vZ2xldGFnbWFuYWdlclwuY29tJC8pPT09bnVsbCl9dmFyIGw7Z1s5XT0obD1mLmVmKSE9bnVsbD9sOiExO3ZhciBuPUZrKCkscDtnWzEwXT0ocD1uPT1udWxsP3ZvaWQgMDpuLmZyb21Db250YWluZXJFeGVjdXRpb24pIT1udWxsP3A6ITE7ZC56cj1nO3JldHVybiBDZihkLGEuUG4pfTsKdmFyIGZ1PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj17fSxjPW0oZXUoYSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9UihhLGUpLGc9UShhLEguSi5ZZSk7TSg1ODkpJiZnJiYoZT09PUYuRC56YXx8ZT09PUYuRC5VYXx8ZT09PUYuRC5QZSkmJnR5cGVvZiBmPT09InN0cmluZyImJihmPVpzKGYpKTt2YXIgaD1vcChlLGYpO2gmJighZ3x8ZSE9PUYuRC5EZCYmZSE9PUYuRC5LZCYmZSE9PUYuRC5FZSYmZSE9PUYuRC5CZnx8KGgudmFsdWU9IjAiKSxNKDUwNCkmJihlPT09Ri5ELk1kP2gua2V5PSJldm5pZCI6ZT09PUYuRC5OZCYmKGgua2V5PSJleGNpZCIpKSxiW2gua2V5XT1oLnZhbHVlKX1iLmd0bT1kdSh7bWM6UShhLEguSi5OYiksVGc6YS5NLmlzR3RtRXZlbnQsZWY6UShhLEguSi5DYyl9KTtUdCgpJiYoYi5nY3M9Yi5nY3N8fFV0KCkpO2IuZ2NkPWIuZ2NkfHxZdChhLk0pO2F1KCkmJihiLmRtYV9jcHM9WnQoKSk7Yi5kbWE9JHQoKTt2dChFdCgpKSYmCihiLnRjZmQ9YnUoKSk7dmFyIGw9Q3AoYSk7bCYmKGIudGFnX2V4cD1sKTtpZihRKGEsSC5KLkJrKSl7Yi50ZnQ9U3RyaW5nKE5iKCkpO3ZhciBuPXBkKCk7biE9PXZvaWQgMCYmKGIudGZkPVN0cmluZyhNYXRoLnJvdW5kKG4pKSl9Yi5hcHZlPSIxIjtiLmFwdmY9bmQoKT8iZiI6Im5mIjtmby5IW2NvLmlhLmNiXSE9PWJvLk1hLlVlfHxmby5LW2NvLmlhLmNiXS5pc0NvbnNlbnRHcmFudGVkKCl8fChiLmxpbWl0ZWRfYWRzPSIxIik7dmFyIHA9UShhLEguSi5YZyk7TSg0NzQpJiZwIT1udWxsJiZwIT09IiImJihiLl9nc2lkPXApO2h0KGEsYixmdW5jdGlvbihxLHIpe2JbcV09ZW5jb2RlVVJJQ29tcG9uZW50KHIpfSk7cmV0dXJuIGJ9O3ZhciBndT1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMuZW5kcG9pbnQ9YTt0aGlzLmZhPWM7dGhpcy5qYT1kO3RoaXMucGFyYW1ldGVyRW5jb2Rpbmc9ZTt0aGlzLlo9Yi5zbGljZSgpfTtndS5wcm90b3R5cGUuSz1mdW5jdGlvbigpe3JldHVybiBYbyh0aGlzLlopfTtndS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4hMH07Z3UucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXt2YXIgYT1NbVt0aGlzLmVuZHBvaW50XSh2b2lkIDApO3JldHVybiBTYihhLCJodHRwczovLyIpP2Euc3Vic3RyaW5nKDgpOlNiKGEsImh0dHA6Ly8iKT9hLnN1YnN0cmluZyg3KTphfTt2YXIgaHU9ZnVuY3Rpb24oYSxiKXt0aGlzLm1ldGhvZE5hbWU9YTt0aGlzLlI9Yn07aHUucHJvdG90eXBlLnNlbmRSZXF1ZXN0PWZ1bmN0aW9uKGEsYixjKXtpZih0aGlzLmlzU3VwcG9ydGVkKCkpaWYoKGM9PW51bGw/dm9pZCAwOmMuYm9keSk9PT12b2lkIDB8fHRoaXMuSCgpKXRyeXt0aGlzLksoYSxiLGMpfWNhdGNoKGQpe2EucmQoZCl9ZWxzZSBhLnJkKCJSZXF1ZXN0IG1ldGhvZCAiK3RoaXMubWV0aG9kTmFtZSsiIGRvZXMgbm90IHN1cHBvcnQgYSByZXF1ZXN0IGJvZHkuIik7ZWxzZSBhLnJkKCJSZXF1ZXN0IG1ldGhvZCAiK3RoaXMubWV0aG9kTmFtZSsiIGlzIG5vdCBzdXBwb3J0ZWQuIil9O3ZhciBpdT1mdW5jdGlvbigpe2h1LmNhbGwodGhpcywiSW1hZ2VQaXhlbCIsMyl9O3dhKGl1LGh1KTtpdS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4hMH07aXUucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMX07Cml1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtaYyhiLGZ1bmN0aW9uKCl7YS5qZigpfSxmdW5jdGlvbigpe2Eub25GYWlsdXJlKHZvaWQgMCl9LGM9PW51bGw/dm9pZCAwOmMuYWYpfTt2YXIganU9ZnVuY3Rpb24oKXtodS5jYWxsKHRoaXMsIlNlbmRCZWFjb24iLDEpfTt3YShqdSxodSk7anUucHJvdG90eXBlLmlzU3VwcG9ydGVkPWZ1bmN0aW9uKCl7cmV0dXJuIGtkKCl9O2p1LnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuITB9O2p1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtqZChiLGM9PW51bGw/dm9pZCAwOmMuYm9keSk/YS5qZigpOmEucmQodm9pZCAwKX07dmFyIGt1PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJGZXRjaCIsMSl9O3dhKGt1LGh1KTtrdS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4geWIoQS5mZXRjaCl9O2t1LnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuITB9OwprdS5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIsYyl7QS5mZXRjaChiLGM9PW51bGw/dm9pZCAwOmMuR2IpLnRoZW4oZnVuY3Rpb24oZCl7aWYoZC5vaylhLnBlKGQpO2Vsc2UgaWYoZC5zdGF0dXM9PT0wKWEuamYoKTtlbHNlIGEub25GYWlsdXJlKCJGZXRjaCBmYWlsZWQgd2l0aCBzdGF0dXMgY29kZSAiK2Quc3RhdHVzKyIuIil9KS5jYXRjaChmdW5jdGlvbihkKXthLnJkKGQpfSl9O3ZhciBsdT1uZXcgaXUsbXU9bmV3IGp1LG51PW5ldyBrdTt2YXIgb3U9ZnVuY3Rpb24oKXt9O291LnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuW119Owp2YXIgcHU9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/WyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl06YjtndS5jYWxsKHRoaXMsYSxiLDEsITAsMil9O3dhKHB1LGd1KTtwdS5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXtpZih0aGlzLloubGVuZ3RoKXt2YXIgYj1RKGEsSC5KLkRrKTtpZihiIT09dm9pZCAwKXJldHVybiBifXJldHVybiBndS5wcm90b3R5cGUuSy5jYWxsKHRoaXMsYSl9O3B1LnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9ZnUoYSk7YS50YXJnZXQuZGVzdGluYXRpb25JZCYmKGMudGlkPWEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpO2IubWV0aG9kIGluc3RhbmNlb2Yga3U/Yy5mbXQ9IjgiOmIubWV0aG9kIGluc3RhbmNlb2YganU/Yy5mbXQ9IjUiOmIubWV0aG9kIGluc3RhbmNlb2YgaXUmJihjLmZtdD0iMyIpO3JldHVybiBjfTtwdS5wcm90b3R5cGUueWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLk4oYSxiKTtyZXR1cm4iPyIrT2JqZWN0LmtleXMoYykubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkKwoiPSIrY1tkXX0pLmpvaW4oIiYiKX07cHUucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMueWEoYSxiKSxlPXt9O2lmKGIubWV0aG9kIGluc3RhbmNlb2Yga3Upe2UuR2I9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxsZCk7aWYodGhpcy5lbmRwb2ludD09PTU4fHx0aGlzLmVuZHBvaW50PT09NTcpZS5HYi5tZXRob2Q9IkdFVCI7dGhpcy5lbmRwb2ludCE9PTQ1fHxxdS5LKGEpfHwoZS5HYi5jcmVkZW50aWFscz0ib21pdCIsZCs9IiZnYXAudWNmYj0xIil9YyhkLGUpfTt2YXIgcXU9bmV3IHB1KDQ1KSxydT1uZXcgcHUoNDUsW10pLHN1PW5ldyBwdSg0NixbXSksdHU9ZnVuY3Rpb24oKXtwdS5jYWxsKHRoaXMsNjkpfTt3YSh0dSxwdSk7dHUucHJvdG90eXBlLmlzU3VwcG9ydGVkPWZ1bmN0aW9uKGEpe3ZhciBiPU0oNDc0KSYmKCEhUihhLCJfZ3NpZCIpfHwhIVEoYSxILkouWGcpKSxjPVIoYSxGLkQuSGQpIT09IjEiJiYoISFSKGEsImdjbGlkIil8fAohIVIoYSwiZGNsaWQiKXx8ISFSKGEsImdjbHNyYyIpfHwhIVIoYSwiYXVpZCIpKTtyZXR1cm4gYnx8Y307dHUucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdShhKSxkPWxwKGEsYyl8fHt9O09iamVjdC5rZXlzKGQpLmxlbmd0aD4wJiYoYi5tZXRob2QgaW5zdGFuY2VvZiBrdT9kLmZtdD0iOCI6Yi5tZXRob2QgaW5zdGFuY2VvZiBqdT9kLmZtdD0iNSI6Yi5tZXRob2QgaW5zdGFuY2VvZiBpdSYmKGQuZm10PSIzIikpO3JldHVybiBkfTt2YXIgdXU9bmV3IHR1LHZ1PWZ1bmN0aW9uKCl7cHUuY2FsbCh0aGlzLDQ1KX07d2EodnUscHUpO3Z1LnByb3RvdHlwZS5SPWZ1bmN0aW9uKCl7cmV0dXJuIFhqKCkrIi9nL2QvY2NtL2NvbGxlY3QifTt2dS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPXB1LnByb3RvdHlwZS5OLmNhbGwodGhpcyxhLGIpO2NbImdhcC4xcGZiIl09IjEiO3JldHVybiBjfTt2YXIgd3U9ZnVuY3Rpb24oYSl7cHUuY2FsbCh0aGlzLGEsWyJhZF9zdG9yYWdlIiwKImFkX3VzZXJfZGF0YSJdKX07d2Eod3UscHUpO3d1LnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9cHUucHJvdG90eXBlLk4uY2FsbCh0aGlzLGEsYik7cmV0dXJuIGhwKGMpfTt2YXIgeHU9bmV3IHd1KDU4KSx5dT1uZXcgd3UoNTcpLHp1PWZ1bmN0aW9uKCl7fTt3YSh6dSxvdSk7enUucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSl7dmFyIGI9cXUuSyhhKSxjPWI/cXU6c3UsZD1be2VuZHBvaW50OmMsbWV0aG9kOm5kKCk/bnU6bXV9LHtlbmRwb2ludDpjLG1ldGhvZDpsdX1dO2I/TSg1MTcpJiZJZig0NykmJmQucHVzaCh7ZW5kcG9pbnQ6bmV3IHZ1LG1ldGhvZDpudX0pOk0oNjAwKSYmZC5wdXNoKHtlbmRwb2ludDpydSxtZXRob2Q6bnV9KTtyZXR1cm4gZH07enUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9W10sYz0hIVEoYSxILkoudmQpLGQ9UihhLEYuRC5QZCk9PT0iMSIsZT1SKGEsRi5ELkhkKT09PSIxIixmPXF1LksoYSksZz1jJiZkJiYhZSYmZjtpZihnKXt2YXIgaD0KUWMoKXx8T2MoKT94dTp5dTtiLnB1c2goW3tlbmRwb2ludDpoLG1ldGhvZDpudX0se2VuZHBvaW50OmgsbWV0aG9kOmx1fV0pfWYmJihnfHxRKGEsSC5KLmhkKSkmJmIucHVzaChbe2VuZHBvaW50OnV1LG1ldGhvZDpuZCgpP251Omx1fV0pO3JldHVybiBifTt2YXIgQXU9bmV3IHp1O3ZhciBUPXtXOntKazoxLG5qOjIsRms6MyxtbDo0LEdrOjUseWQ6NixrbDo3LE1xOjgscW46OSxIazoxMCxJazoxMSxGaDoxMixEbToxMyxBbToxNCxDbToxNSx6bToxNixCbToxNyx5bToxOCxUbzoxOSx4cToyMCx5cToyMSxmajoyMix1bjoyNCxPbToyNSxTazoyNixUazoyNyxSazoyOCxVazoyOSxyajozMCxPazozMSxabzozMn19O1QuV1tULlcuSmtdPSJBTExPV19JTlRFUkVTVF9HUk9VUFMiO1QuV1tULlcubmpdPSJTRVJWRVJfQ09OVEFJTkVSX1VSTCI7VC5XW1QuVy5Ga109IkFEU19EQVRBX1JFREFDVElPTiI7VC5XW1QuVy5tbF09IkNVU1RPTUVSX0xJRkVUSU1FX1ZBTFVFIjtULldbVC5XLkdrXT0iQUxMT1dfQ1VTVE9NX1NDUklQVFMiO1QuV1tULlcueWRdPSJBTllfQ09PS0lFX1BBUkFNUyI7VC5XW1QuVy5rbF09IkNPT0tJRV9FWFBJUkVTIjtULldbVC5XLk1xXT0iTEVHQUNZX0VOSEFOQ0VEX0NPTlZFUlNJT05fSlNfVkFSSUFCTEUiO1QuV1tULlcucW5dPSJSRVNUUklDVEVEX0RBVEFfUFJPQ0VTU0lORyI7ClQuV1tULlcuSGtdPSJBTExPV19ESVNQTEFZX0ZFQVRVUkVTIjtULldbVC5XLklrXT0iQUxMT1dfR09PR0xFX1NJR05BTFMiO1QuV1tULlcuRmhdPSJHRU5FUkFURURfVFJBTlNBQ1RJT05fSUQiO1QuV1tULlcuRG1dPSJGTE9PRExJR0hUX0NPVU5USU5HX01FVEhPRF9VTktOT1dOIjtULldbVC5XLkFtXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfU1RBTkRBUkQiO1QuV1tULlcuQ21dPSJGTE9PRExJR0hUX0NPVU5USU5HX01FVEhPRF9VTklRVUUiO1QuV1tULlcuem1dPSJGTE9PRExJR0hUX0NPVU5USU5HX01FVEhPRF9QRVJfU0VTU0lPTiI7VC5XW1QuVy5CbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1RSQU5TQUNUSU9OUyI7VC5XW1QuVy55bV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX0lURU1TX1NPTEQiO1QuV1tULlcuVG9dPSJBRFNfT0dUX1YxX1VTQUdFIjtULldbVC5XLnhxXT0iRk9STV9JTlRFUkFDVElPTl9QRVJNSVNTSU9OX0RFTklFRCI7ClQuV1tULlcueXFdPSJGT1JNX1NVQk1JVF9QRVJNSVNTSU9OX0RFTklFRCI7VC5XW1QuVy5mal09Ik1JQ1JPVEFTS19OT1RfU1VQUE9SVEVEIjtULldbVC5XLnVuXT0iU0VUX0VOQ1JZUFRFRF9EQVRBX1RPX0NBQ0hFIjtULldbVC5XLk9tXT0iR0VUX0VOQ1JZUFRFRF9EQVRBX0ZST01fQ0FDSEUiO1QuV1tULlcuU2tdPSJDT05GSUdfREVURUNURURfV0lUSF9OT19QQVJBTSI7VC5XW1QuVy5Ua109IkNPTkZJR19ERVRFQ1RFRF9XSVRIX1BBUkFNIjtULldbVC5XLlJrXT0iQ09ORklHX0NPTlNFTlRfU0VUX0JFRk9SRSI7VC5XW1QuVy5Va109IkNPTkZJR19TRVRfVVNFRF9CRUZPUkUiO1QuV1tULlcucmpdPSJTSEFET1dfRE9NX0FVVE9fUElJIjtULldbVC5XLk9rXT0iQ0NEX1VTRVJfREFUQV9XRUJfT05fQ09ORklHIjtULldbVC5XLlpvXT0iQkxFTkRFRF9VU0VSX0RBVEEiO3ZhciBCdT17fSxDdT0oQnVbRi5ELnVpXT1ULlcuSmssQnVbRi5ELmRkXT1ULlcubmosQnVbRi5ELnljXT1ULlcubmosQnVbRi5ELm1iXT1ULlcuRmssQnVbRi5ELkdlXT1ULlcubWwsQnVbRi5ELnJpXT1ULlcuR2ssQnVbRi5ELkpkXT1ULlcueWQsQnVbRi5ELm5iXT1ULlcueWQsQnVbRi5ELkxiXT1ULlcueWQsQnVbRi5ELklkXT1ULlcueWQsQnVbRi5ELnZjXT1ULlcueWQsQnVbRi5ELlRiXT1ULlcueWQsQnVbRi5ELkNiXT1ULlcua2wsQnVbRi5ELldiXT1ULlcucW4sQnVbRi5ELmhoXT1ULlcuSGssQnVbRi5ELlNjXT1ULlcuSWssQnUpLER1PXt9LEV1PShEdS51bmtub3duPVQuVy5EbSxEdS5zdGFuZGFyZD1ULlcuQW0sRHUudW5pcXVlPVQuVy5DbSxEdS5wZXJfc2Vzc2lvbj1ULlcuem0sRHUudHJhbnNhY3Rpb25zPVQuVy5CbSxEdS5pdGVtc19zb2xkPVQuVy55bSxEdSk7dmFyIEZ1PWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6YztzYigiR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUwiLGIpO2MmJihhLkhbYl09ITApfSx2Yj1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9W119O2Z1bmN0aW9uIEd1KGEpe0Z1KHZiLGEsITEpfWZ1bmN0aW9uIEh1KGEsYil7dmFyIGM9Yj09PXZvaWQgMD8hMTpiLGQ9dmI7Yz1jPT09dm9pZCAwPyExOmM7Zm9yKHZhciBlPU9iamVjdC5rZXlzKGEpLGY9bShPYmplY3Qua2V5cyhDdSkpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD1nLnZhbHVlO2UuaW5jbHVkZXMoaCkmJkZ1KGQsQ3VbaF0sYyl9fTtmdW5jdGlvbiBJdShhLGIpe2E/YS50aGVuKGIpOmIodm9pZCAwKX1mdW5jdGlvbiBKdShhKXtyZXR1cm4gUHJvbWlzZS5hbGxTZXR0bGVkKGEpLnRoZW4oZnVuY3Rpb24oYil7cmV0dXJuIGIuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiBjLnN0YXR1cz09PSJmdWxmaWxsZWQifSkubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBjLnZhbHVlfSl9KX1mdW5jdGlvbiBLdSgpe3ZhciBhLGI7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoZnVuY3Rpb24oYyxkKXthPWM7Yj1kfSkscmVzb2x2ZTphLHJlamVjdDpifX07ZnVuY3Rpb24gTHUoYSxiLGMsZCxlLGYpe3ZhciBnPWMuc2xpY2UoKSxoO2Q9PW51bGx8fChoPWQudXYpPT1udWxsfHxoLmNhbGwoZCxhLGIsYyxlKTt2YXIgbD1LdSgpLG49bC5wcm9taXNlLHA9bC5yZXNvbHZlLHE9W10scj1mdW5jdGlvbigpe3AocSk7dmFyIHU7ZD09bnVsbHx8KHU9ZC5Scyk9PW51bGx8fHUuY2FsbChkLGEsYixjLGUscSl9LHQ9ZnVuY3Rpb24oKXt2YXIgdT1nLnNoaWZ0KCk7dT91Lm1ldGhvZC5pc1N1cHBvcnRlZCgpP011KGEsYix1LmVuZHBvaW50LGQscSx1Lm1ldGhvZCxlLGYsdCxyKTp0KCk6cigpfTt0KCk7cmV0dXJuIG59CmZ1bmN0aW9uIE11KGEsYixjLGQsZSxmLGcsaCxsLG4pe3ZhciBwPWMuUihhKSxxPXt0azpiLGVuZHBvaW50OmMsaXNQcmltYXJ5Omcsc2I6dm9pZCAwLHBrOmYsanQ6e319LHI9ITEsdD1mdW5jdGlvbih6LEMpe2lmKHIpUCgxODcpO2Vsc2UgaWYocj0hMCwhdSl7dmFyIEQ9Q3x8e30sST1ELmJvZHksRz1ELkdiLE49RC5hZjtDPU9iamVjdC5mcmVlemUobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxJP3tib2R5Okl9Ont9LEc/e0diOkd9Ont9LE4/e2FmOk59Ont9KSk7aWYoSSYmIWYuSCgpKXgoKSxsKCk7ZWxzZXt2YXIgUz1OdSh6KSxXPXBbMF09PT0iLyI/IiIrcCtTOiJodHRwczovLyIrcCtTO3Euc2I9VztxLmp0PUM7dmFyIGVhO2Q9PW51bGx8fChlYT1kLlNzKT09bnVsbHx8ZWEuY2FsbChkLGEsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxxKSk7dmFyIGphPXtkZXN0aW5hdGlvbklkOmEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsZW5kcG9pbnQ6Yy5lbmRwb2ludCwKZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfTtmLlI9PT12b2lkIDB8fGMuZmEhPT0yJiYoYy5mYSE9PTF8fGUubGVuZ3RoKXx8a24ucmVnaXN0ZXIoamEsZi5SLFcpO3ZhciBmYT1mdW5jdGlvbihkYSxtYSl7eCgpO2lmKHEuc3RhdHVzIT09dm9pZCAwKXJldHVybiBQKDE5MiksITE7cS5zdGF0dXM9ZGE7ZS5wdXNoKHEpO3ZhciBQYTtkPT1udWxsfHwoUGE9ZC51byk9PW51bGx8fFBhLmNhbGwoZCxhLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scSksbWEpO3JldHVybiEwfSxzYT17Rm86amEscmQ6ZnVuY3Rpb24oKXtmYSgyKSYmbCgpfSxvbkZhaWx1cmU6ZnVuY3Rpb24oKXtmYSgzKSYmbCgpfSxwZTpmdW5jdGlvbihkYSl7ZmEoZGEuc3RhdHVzPT09MD8xOmRhLm9rPzA6MyxkYSkmJm4oKX0samY6ZnVuY3Rpb24oKXtmYSgxKSYmbigpfX07T3UoYyxhLFcsUyxJKTtmLnNlbmRSZXF1ZXN0KHNhLFcsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCwKe30sSSYme2JvZHk6SX0sRyYme0diOkd9LE4mJnthZjpOfSkpfX19LHU9ITEsdix4PWZ1bmN0aW9uKCl7diE9PXZvaWQgMCYmKEEuY2xlYXJUaW1lb3V0KHYpLHY9dm9pZCAwKX07TSg1NzQpJiYodj1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2PXZvaWQgMDt1PSEwO2lmKHEuc3RhdHVzPT09dm9pZCAwKXtxLnN0YXR1cz00O3Euc2I9PT12b2lkIDAmJihxLnNiPSJbZmFpbGVkIHRvIGJ1aWxkXSAiK3ApO2UucHVzaChxKTt2YXIgejtkPT1udWxsfHwoej1kLnVvKT09bnVsbHx8ei5jYWxsKGQsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHEpLHZvaWQgMCk7bCgpfX0sNUUzKSk7dmFyIHk9e0ljOnAsbWV0aG9kOmYseXY6ZSxpc1ByaW1hcnk6ZyxDdDpofTt0cnl7Yy5IKGEseSx0KX1jYXRjaCh6KXt4KCksUCgxODgpLGwoKX19CmZ1bmN0aW9uIE91KGEsYixjLGQsZSl7aWYoYS5qYSl7dmFyIGY9Yi50YXJnZXQuZGVzdGluYXRpb25JZCxnPWEuZW5kcG9pbnQ7aWYoZz09PTQ1fHxnPT09NDZ8fGc9PT02OXx8Zz09PTU4fHxnPT09NTcpe3ZhciBoPS9bPyZddGlkcz0oW14mXSspLy5leGVjKGQpO2Y9aD9kZWNvZGVVUklDb21wb25lbnQoaFsxXSkuc3BsaXQoIn4iKTpbZl19TWwoe3RhcmdldElkOmYscmVxdWVzdDpuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHt1cmw6YyxwYXJhbWV0ZXJFbmNvZGluZzphLnBhcmFtZXRlckVuY29kaW5nLGVuZHBvaW50OmEuZW5kcG9pbnR9LGU/e3Bvc3RCb2R5OmV9Ont9KSxxYjp7ZXZlbnRJZDpiLk0uZXZlbnRJZCxwcmlvcml0eUlkOmIuTS5wcmlvcml0eUlkfSxGajp7ZXZlbnRJZDpRKGIsSC5KLnVmKSxwcmlvcml0eUlkOlEoYixILkoudmYpfX0pfX0KZnVuY3Rpb24gTnUoYSl7cmV0dXJuIGEmJmEhPT0iPyI/YVswXSE9PSI/Ij8iPyIuY29uY2F0KGEpOmE6IiJ9O2Z1bmN0aW9uIFB1KGEsYixjLGQsZSl7dmFyIGY7ZT09bnVsbHx8KGY9ZS52dik9PW51bGx8fGYuY2FsbChlLGEsYik7aWYoIWMubGVuZ3RoKXt2YXIgZztlPT1udWxsfHwoZz1lLlRzKT09bnVsbHx8Zy5jYWxsKGUsYSxiLFtdKTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFtdKX12YXIgaD1bXSxsPXt0azpiLG1rOmMsams6ZH07aC5wdXNoKEx1KGEsYixjLGUsITAsbCkpO2Zvcih2YXIgbj1tKGQpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKWgucHVzaChMdShhLGIscC52YWx1ZSxlLCExLGwpKTtyZXR1cm4gSnUoaCkudGhlbihmdW5jdGlvbihxKXtmb3IodmFyIHI9W10sdD1tKHEpLHU9dC5uZXh0KCk7IXUuZG9uZTt1PXQubmV4dCgpKXIucHVzaC5hcHBseShyLHcodS52YWx1ZSkpO3ZhciB2O2U9PW51bGx8fCh2PWUuVHMpPT1udWxsfHx2LmNhbGwoZSxhLGIscik7cmV0dXJuIHJ9KX07ZnVuY3Rpb24gUXUoYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyksZDtiPT1udWxsfHwoZD1iLnd2KT09bnVsbHx8ZC5jYWxsKGIsYSxjKTtmb3IodmFyIGU9W10sZj1tKGMpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWUucHVzaChSdShhLGcudmFsdWUpKTtmb3IodmFyIGg9W10sbD1tKGUpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO2gucHVzaChQdShhLHAudGsscC5tayxwLmprLGIpKX1KdShoKS50aGVuKGZ1bmN0aW9uKHEpe2Zvcih2YXIgcj1bXSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpci5wdXNoLmFwcGx5KHIsdyh1LnZhbHVlKSk7dmFyIHY7Yj09bnVsbHx8KHY9Yi5Rcyk9PW51bGx8fHYuY2FsbChiLGEsYyxyKX0pfQpmdW5jdGlvbiBSdShhLGIpe3ZhciBjPWZ1bmN0aW9uKGYpe3JldHVybiBmLm1ldGhvZC5pc1N1cHBvcnRlZCgpJiZmLmVuZHBvaW50LmlzU3VwcG9ydGVkKGEpJiZmLmVuZHBvaW50LksoYSl9LGQ9KGIuSChhKXx8W10pLmZpbHRlcihjKSxlPVtdO2QubGVuZ3RoJiYoZT0oYi5LKGEpfHxbXSkubWFwKGZ1bmN0aW9uKGYpe3JldHVybiBmLmZpbHRlcihjKX0pLmZpbHRlcihmdW5jdGlvbihmKXtyZXR1cm4gZi5sZW5ndGg+MH0pKTtyZXR1cm57dGs6YixtazpkLGprOmV9fTsKdmFyIFN1PWZ1bmN0aW9uKGEsYil7aWYoTSg1MTcpJiZJZig0NykmJmE9PT00NSlyZXR1cm4gWGooKSsiL2cvZC9jY20vY29sbGVjdD8iK2Iuc3BsaXQoIj8iKVsxXSsiJmdhcC4xcGZiPTEifSxXdT1mdW5jdGlvbigpe3ZhciBhPWFsKDMwLGZ1bmN0aW9uKCl7cmV0dXJuW119KTtpZihhLmxlbmd0aCl7Zm9yKHZhciBiPXt9LGM9bShhKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZSxmPVR1KGUua2UsImFwdmMiKSxnPVR1KGUua2UsInRmdCIpLGg9VHUoZS5rZSwidGZkIiksbD1UdShlLmtlLCJ0aWQiKSxuPU5tKGUuZW5kcG9pbnQsZS5rZSkscD1iW25dPWJbbl18fHt4azpbXSxaaDpbXX07cC5aaC5wdXNoKGUpO2w/KHAueGsucHVzaChsKSxwLnVkfHwocC51ZD1sKSk6cC54ay5wdXNoKCIiKTtmPT09IjEiJiYocC5Rbj0hMCk7aWYoZ3x8aClwLk5uPSEwfWEubGVuZ3RoPTA7Zm9yKHZhciBxPW0oT2JqZWN0LmtleXMoYikpLHI9cS5uZXh0KCksdD17fTshci5kb25lO3Q9Cnt5azp2b2lkIDB9LHI9cS5uZXh0KCkpe3ZhciB1PXIudmFsdWUsdj1iW3VdO3QueWs9di54azt2YXIgeD10LnlrLmZpbHRlcihmdW5jdGlvbihEKXtyZXR1cm4gZnVuY3Rpb24oSSxHKXtyZXR1cm4gRC55ay5pbmRleE9mKEkpPT09R319KHQpKS5maWx0ZXIoZnVuY3Rpb24oRCl7cmV0dXJuISFEfSk7aWYoTSg0MjcpKXt2YXIgeT1VdSh2LHgpO1F1KHksdm9pZCAwLEF1KX1lbHNle3ZhciB6PXUrIiZhcHZjPSIrKHYuUW4/IjEiOiIwIik7eC5sZW5ndGgmJih6Kz0iJnRpZHM9Iit4LmpvaW4oIn4iKSk7di51ZCYmKHorPSImdGlkPSIrdi51ZCk7aWYodi5Obil7eis9IiZ0ZnQ9IitTdHJpbmcoTmIoKSk7dmFyIEM9cGQoKTtDIT09dm9pZCAwJiYoeis9IiZ0ZmQ9IitTdHJpbmcoTWF0aC5yb3VuZChDKSkpfVZ1KHYuWmhbMF0uZXZlbnQseix2LlpoWzBdLmVuZHBvaW50LHgubGVuZ3RoP3g6WyIiXSl9fX19LFR1PWZ1bmN0aW9uKGEsYil7dmFyIGM9YVtiXTtpZihjIT09dm9pZCAwKXJldHVybiBkZWxldGUgYVtiXSwKY30sVnU9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9e2Rlc3RpbmF0aW9uSWQ6YS50YXJnZXQuZGVzdGluYXRpb25JZCxlbmRwb2ludDpjLGV2ZW50SWQ6YS5NLmV2ZW50SWQscHJpb3JpdHlJZDphLk0ucHJpb3JpdHlJZH0sZj1mdW5jdGlvbihsLG4pe3ZhciBwPWIrWHUobCk7VGwocCxhLGMsZCk7cmV0dXJuIG4ocCl9O2lmKG5kKCkpe3ZhciBnPWZ1bmN0aW9uKCl7fSxoPVN1KGMsYik7aCE9PXZvaWQgMCYmKGc9ZnVuY3Rpb24oKXtZbihlLGgrWHUoOCksdm9pZCAwLHtRZzohMH0pfSk7Zig4LGZ1bmN0aW9uKGwpe1luKGUsbCx2b2lkIDAse1FnOiEwfSxmdW5jdGlvbigpe30sZnVuY3Rpb24oKXtaYyhiK1h1KDMpLGZ1bmN0aW9uKCl7fSxnKX0pfSl9ZWxzZSBmKDUsZnVuY3Rpb24obCl7cmV0dXJuIFduKGUsbCl9KXx8WmMoYitYdSgzKSl9LFV1PWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5aaFswXSxkPXsiXyZhcHZjIjphLlFuPyIxIjoiMCJ9O2IubGVuZ3RoPjAmJihkWyJfJnRpZHMiXT0KYi5qb2luKCJ+IikpO2lmKGEuTm4pe2RbIl8mdGZ0Il09U3RyaW5nKE5iKCkpO3ZhciBlPXBkKCk7ZSE9PXZvaWQgMCYmKGRbIl8mdGZkIl09U3RyaW5nKE1hdGgucm91bmQoZSkpKX1yZXR1cm4gWXUoYy5ldmVudCxhLnVkfHwiIixkKX0sWXU9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYS50YXJnZXQse2Rlc3RpbmF0aW9uSWQ6Yn0pLGU9WnUoYSx7dGFyZ2V0OmR9KTtifHxVKGUsRi5ELlFlKTtmb3IodmFyIGY9bShPYmplY3Qua2V5cyhjKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7VShlLGgsY1toXSl9cmV0dXJuIGV9LFh1PWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDg6Y2FzZSAzOmNhc2UgNTpyZXR1cm4iJmZtdD0iK2E7ZGVmYXVsdDpyZXR1cm4iIn19LCR1PWZ1bmN0aW9uKGEsYil7YT1adShhKTtWKGEsSC5KLkRrLFhvKGZwKSk7VHQoKSYmVShhLCJfJmdjcyIsVXQoKSk7ClUoYSwiXyZnY2QiLFl0KGEuTSkpO3ZhciBjPVhvKGZwKT80NTo0NixkPWZ1bmN0aW9uKCl7dmFyIGY9Yi50aWQ7aWYoTSg0MjcpKXt2YXIgZz1ZdShhLGYsYik7UXUoZyx2b2lkIDAsQXUpfWVsc2V7dmFyIGg9Tm0oYyxiKTtWdShhLGgsYyxbZl0pfX07aWYoeWIoQS5xdWV1ZU1pY3JvdGFzaykpe3ZhciBlPWFsKDMwLGZ1bmN0aW9uKCl7cmV0dXJuW119KTtpZihlLmxlbmd0aD09PTApdHJ5e0EucXVldWVNaWNyb3Rhc2soV3UpfWNhdGNoKGYpe0d1KFQuVy5maik7ZCgpO3JldHVybn1iPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYik7ZS5wdXNoKHtldmVudDphLGtlOmIsZW5kcG9pbnQ6Y30pfWVsc2UgR3UoVC5XLmZqKSxkKCl9O3ZhciBYPXtWOntNazoiY2FsbF9jb252ZXJzaW9uIix6ZDoiY2NtX2NvbnZlcnNpb24iLFFrOiJjb21tb25fYXciLHhhOiJjb252ZXJzaW9uIix3cToiZmxvb2RsaWdodCIsWWQ6ImdhX2NvbnZlcnNpb24iLFpkOiJnY3BfcmVtYXJrZXRpbmciLEthOiJwYWdlX3ZpZXciLHViOiJyZW1hcmtldGluZyIsT2I6InVzZXJfZGF0YV9sZWFkIixGYjoidXNlcl9kYXRhX3dlYiJ9fTtmdW5jdGlvbiBidihhLGIpe2ImJkdiKGIsZnVuY3Rpb24oYyxkKXt0eXBlb2YgZCE9PSJvYmplY3QiJiZkIT09dm9pZCAwJiYoYVsiMXAuIitjXT1TdHJpbmcoZCkpfSl9O3ZhciBtdj17Tmc6InZhbHVlIixwYjoiY29udmVyc2lvbkNvdW50IixPZzoxfSxudj17Tmc6InRpbWVvdXRzIixwYjoidGltZW91dHMiLE9nOjB9LG92PXtOZzoiZW9wQ291bnQiLHBiOiJlbmRPZlBhZ2VDb3VudCIsT2c6MH0scHY9e05nOiJlcnJvcnMiLHBiOiJlcnJvcnMiLE9nOjB9LHF2PVttdixudixwdixvdl07ZnVuY3Rpb24gcnYoYSxiKXtiPWI9PT12b2lkIDA/MTpiO2lmKCFzdihhKSlyZXR1cm57fTt2YXIgYz10dihxdiksZD1jW2EucGJdO2lmKGQ9PT12b2lkIDB8fGQ9PT0tMSlyZXR1cm4gYzt2YXIgZT17fSxmPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYywoZVthLnBiXT1kK2IsZSkpO3JldHVybiB1dihmKT9mOmN9CmZ1bmN0aW9uIHR2KGEpe3ZhciBiO2E6e3ZhciBjPW5yKCJnY2xfY3RyIik7aWYoYy5lcnJvcj09PTAmJmMudmFsdWUmJnR5cGVvZiBjLnZhbHVlPT09Im9iamVjdCIpe3ZhciBkPWMudmFsdWU7dHJ5e2I9InZhbHVlImluIGQmJnR5cGVvZiBkLnZhbHVlPT09Im9iamVjdCI/ZC52YWx1ZTp2b2lkIDA7YnJlYWsgYX1jYXRjaChwKXt9fWI9dm9pZCAwfWZvcih2YXIgZT1iLGY9e30sZz1tKGEpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD1oLnZhbHVlO2lmKGUmJnN2KGwpKXt2YXIgbj1lW2wuTmddO249PT12b2lkIDB8fE51bWJlci5pc05hTihuKT9mW2wucGJdPS0xOmZbbC5wYl09TnVtYmVyKG4pfWVsc2UgZltsLnBiXT0tMX1yZXR1cm4gZn0KZnVuY3Rpb24gdXYoYSxiKXtiPWJ8fHt9O2Zvcih2YXIgYz1OYigpLGQ9dXEoYixjLCEwKSxlPXt9LGY9bShxdiksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWUsbD1hW2gucGJdO2whPT12b2lkIDAmJmwhPT0tMSYmKGVbaC5OZ109bCl9ZS5jcmVhdGlvblRpbWVNcz1jO3JldHVybiBrcigiZ2NsX2N0ciIse3ZhbHVlOmUsZXhwaXJlczpOdW1iZXIoZC5leHBpcmVzKX0pPT09MD8hMDohMX1mdW5jdGlvbiBzdihhKXtyZXR1cm4gQmwoWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pPyFhLmZ0fHxZZihhLmZ0KTohMX1mdW5jdGlvbiB2dihhKXtyZXR1cm4gQmwoWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pPyFhLkFzfHxZZihhLkFzKTohMX07ZnVuY3Rpb24gd3YoKXtpZih4digpKXt2YXIgYT1ucigibGFzdF9jb252cyIpO2lmKGEuZXJyb3I9PT0wJiZhLnZhbHVlJiZ0eXBlb2YgYS52YWx1ZT09PSJvYmplY3QiKXt2YXIgYj1hLnZhbHVlO2lmKGIudmFsdWUmJkFycmF5LmlzQXJyYXkoYi52YWx1ZSkpe3ZhciBjPWIudmFsdWU7aWYoIShjLmxlbmd0aD4xKSl7Zm9yKHZhciBkPVtdLGU9bShjKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtpZih0eXBlb2YgZyE9PSJvYmplY3QifHxnPT09bnVsbHx8dHlwZW9mIGcucmFuZG9tIT09Im51bWJlciJ8fHR5cGVvZiBnLmxhYmVsIT09InN0cmluZyJ8fGcubGFiZWwubGVuZ3RoPjIwMClyZXR1cm47ZC5wdXNoKHtyYW5kb206Zy5yYW5kb20sbGFiZWw6Zy5sYWJlbH0pfXJldHVybiBkfX19fX0KZnVuY3Rpb24geXYoYSxiKXsheHYoKXx8YS5sZW5ndGg+MXx8YS5sZW5ndGg9PT0xJiZhWzBdLmxhYmVsLmxlbmd0aD4yMDB8fChiPWJ8fHt9LGtyKCJsYXN0X2NvbnZzIix7dmFsdWU6YSxleHBpcmVzOk51bWJlcih1cShiKS5leHBpcmVzKX0pKX1mdW5jdGlvbiB4digpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSkmJllmKDExKX07ZnVuY3Rpb24genYoYSl7dmFyIGI9TWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpKjIxNDc0ODM2NDcpO3JldHVybiBhP1N0cmluZyhiXm5nKGEpJjIxNDc0ODM2NDcpOlN0cmluZyhiKX1mdW5jdGlvbiBBdihhKXtyZXR1cm5benYoYSksTWF0aC5yb3VuZChOYigpLzFFMyldLmpvaW4oIi4iKX1mdW5jdGlvbiBCdihhLGIsYyxkLGUpe3ZhciBmPXJxKGIpLGc7cmV0dXJuKGc9Z3EoYSxmLHNxKGMpLGQsZSkpPT1udWxsP3ZvaWQgMDpnLkNyfTt2YXIgQ3Y9WyIxIl0sRHY9e30sRXY9e307ZnVuY3Rpb24gRnYoYSl7cmV0dXJuIEV2W0d2KGEpXX1mdW5jdGlvbiBIdihhLGIpe2I9Yj09PXZvaWQgMD8hMDpiO3ZhciBjPUd2KGEucHJlZml4KTtpZihEdltjXSlJdihhKSxKdihhKTtlbHNlIGlmKEt2KGMsYS5wYXRoLGEuZG9tYWluKSl7dmFyIGQ9RnYoYS5wcmVmaXgpfHx7aWQ6dm9pZCAwLGtjOnZvaWQgMH07YiYmTHYoYSxkKTtJdihhKTtKdihhKX1lbHNle3ZhciBlPVRqKCJhdWlkZGMiKTtpZihlKXNiKCJUQUdHSU5HIiwxNyksRHZbY109ZTtlbHNlIGlmKGIpe3ZhciBmPUd2KGEucHJlZml4KSxnPUF2KCk7TXYoZixnLGEpO0t2KGMsYS5wYXRoLGEuZG9tYWluKTtJdihhLCEwKTtKdihhLCEwKX19fQpmdW5jdGlvbiBJdihhLGIpeyhiPT09dm9pZCAwPzA6YikmJnN2KG12KSYmb3IoImdjbF9jdHIiKTtpZih2dihtdikmJnR2KFttdl0pW212LnBiXT09PS0xKXtmb3IodmFyIGM9e30sZD0oY1ttdi5wYl09MCxjKSxlPW0ocXYpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2chPT1tdiYmdnYoZykmJihkW2cucGJdPTApfXV2KGQsYSl9fWZ1bmN0aW9uIEp2KGEsYil7KGI9PT12b2lkIDA/MDpiKSYmeHYoKSYmb3IoImxhc3RfY29udnMiKTshQmwoWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pfHwhWWYoMTIpfHx3digpfHx5dihbXSxhKX0KZnVuY3Rpb24gTHYoYSxiKXt2YXIgYz1HdihhLnByZWZpeCksZD1EdltjXTtpZihkKXt2YXIgZT1kLnNwbGl0KCIuIik7aWYoZS5sZW5ndGg9PT0yKXt2YXIgZj1OdW1iZXIoZVsxXSl8fDA7aWYoZil7dmFyIGc9ZDtZZigxOSkmJmIuZmk/Zz1kKyIuIisoYi5zZXNzaW9uSWR8fCItLi0iKSsiLiIrKGIua2M/Yi5rYzpNYXRoLmZsb29yKE5iKCkvMUUzKSkrIi4iK2IuZmkrIi4iKyhiLkxjP2IuTGM6TWF0aC5mbG9vcihOYigpLzFFMykpOmIuc2Vzc2lvbklkJiYoZz1kKyIuIitiLnNlc3Npb25JZCsiLiIrKGIua2M/Yi5rYzpNYXRoLmZsb29yKE5iKCkvMUUzKSkpO012KGMsZyxhLGYqMUUzKX19fX1mdW5jdGlvbiBNdihhLGIsYyxkKXt2YXIgZTtlPVsiMSIsdHEoYy5kb21haW4sYy5wYXRoKSxiXS5qb2luKCIuIik7dmFyIGY9dXEoYyxkKTtmLk1jPU52KCk7b3EoYSxlLGYpfQpmdW5jdGlvbiBLdihhLGIsYyl7dmFyIGQ9QnYoYSxiLGMsQ3YsTnYoKSk7aWYoIWQpcmV0dXJuITE7T3YoYSxkKTtyZXR1cm4hMH1mdW5jdGlvbiBPdihhLGIpe3ZhciBjPWIuc3BsaXQoIi4iKTtpZihjLmxlbmd0aD09PTMpRXZbYV09e3Nlc3Npb25JZDpjWzBdKyIuIitjWzFdLGtjOk51bWJlcihjWzJdKXx8MCxMYzowfTtlbHNlIGlmKGMubGVuZ3RoPj0yJiYoRHZbYV09Y1swXSsiLiIrY1sxXSxjLnNoaWZ0KCksYy5zaGlmdCgpLGMubGVuZ3RoPj0zKSl7dmFyIGQ9e3Nlc3Npb25JZDpjWzBdPT09Ii0iP3ZvaWQgMDpjWzBdKyIuIitjWzFdLGtjOk51bWJlcihjWzJdKXx8MCxMYzowfTtpZihZZigxOSkmJmMubGVuZ3RoPj02KXt2YXIgZT1jWzNdKyIuIitjWzRdLGY9TnVtYmVyKGNbNV0pfHwwO2UmJmYhPT0wJiYoZC5maT1lLGQuTGM9Zil9RXZbYV09ZH19ZnVuY3Rpb24gR3YoYSl7cmV0dXJuKGF8fCJfZ2NsIikrIl9hdSJ9CmZ1bmN0aW9uIFB2KGEpe2Z1bmN0aW9uIGIoKXtCbChjKSYmYSgpfXZhciBjPU52KCk7SGwoZnVuY3Rpb24oKXtiKCk7QmwoYyl8fElsKGIsYyl9LGMpfWZ1bmN0aW9uIFF2KGEpe3ZhciBiPVVxKCEwKSxjPUd2KGEucHJlZml4KTtQdihmdW5jdGlvbigpe3ZhciBkPWJbY107aWYoZCl7T3YoYyxkKTt2YXIgZT1OdW1iZXIoRHZbY10uc3BsaXQoIi4iKVsxXSkqMUUzO2lmKGUpe3NiKCJUQUdHSU5HIiwxNik7dmFyIGY9dXEoYSxlKTtmLk1jPU52KCk7dmFyIGc9WyIxIix0cShhLmRvbWFpbixhLnBhdGgpLGRdLmpvaW4oIi4iKTtvcShjLGcsZil9fX0pfWZ1bmN0aW9uIFJ2KGEsYixjLGQsZSl7ZT1lfHx7fTt2YXIgZj1mdW5jdGlvbigpe3ZhciBnPXt9LGg9QnYoYSxlLnBhdGgsZS5kb21haW4sQ3YsTnYoKSk7aCYmKGdbYV09aCk7cmV0dXJuIGd9O1B2KGZ1bmN0aW9uKCl7YXIoZixiLGMsZCl9KX0KZnVuY3Rpb24gTnYoKXtyZXR1cm5bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXX07dmFyIFZ2PSJlbWFpbCBlbWFpbF9hZGRyZXNzIHNoYTI1Nl9lbWFpbF9hZGRyZXNzIHBob25lX251bWJlciBzaGEyNTZfcGhvbmVfbnVtYmVyIGZpcnN0X25hbWUgbGFzdF9uYW1lIi5zcGxpdCgiICIpLFd2PSJmaXJzdF9uYW1lIHNoYTI1Nl9maXJzdF9uYW1lIGxhc3RfbmFtZSBzaGEyNTZfbGFzdF9uYW1lIHN0cmVldCBzaGEyNTZfc3RyZWV0IGNpdHkgcmVnaW9uIGNvdW50cnkgcG9zdGFsX2NvZGUiLnNwbGl0KCIgIik7ZnVuY3Rpb24gWHYoYSxiKXtpZighYi5fdGFnX21ldGFkYXRhKXtmb3IodmFyIGM9e30sZD0wLGU9MDtlPGEubGVuZ3RoO2UrKylkKz1ZdihhW2VdLGIsYyk/MTowO2Q+MCYmKGIuX3RhZ19tZXRhZGF0YT1jKX19CmZ1bmN0aW9uIFl2KGEsYixjKXt2YXIgZD1iW2FdO2lmKGQ9PT12b2lkIDB8fGQ9PT1udWxsKXJldHVybiExO2NbYV09QXJyYXkuaXNBcnJheShkKT9kLm1hcChmdW5jdGlvbigpe3JldHVybnttb2RlOiJjIn19KTp7bW9kZToiYyJ9O3JldHVybiEwfWZ1bmN0aW9uIFp2KGEpe2lmKE0oNTIzKSYmYSl7WHYoVnYsYSk7Zm9yKHZhciBiPUJiKGEuYWRkcmVzcyksYz0wO2M8Yi5sZW5ndGg7YysrKXt2YXIgZD1iW2NdO2QmJlh2KFd2LGQpfXZhciBlPWEuaG9tZV9hZGRyZXNzO2UmJlh2KFd2LGUpfX0KZnVuY3Rpb24gJHYoYSxiLGMpe2Z1bmN0aW9uIGQoZixnKXtnPVN0cmluZyhnKS5zdWJzdHJpbmcoMCwxMDApO2UucHVzaCgiIitmK2VuY29kZVVSSUNvbXBvbmVudChnKSl9aWYoIWMpcmV0dXJuIiI7dmFyIGU9W107ZCgiaSIsU3RyaW5nKGEpKTtkKCJmIixiKTtjLm1vZGUmJmQoIm0iLGMubW9kZSk7Yy5pc1ByZUhhc2hlZCYmZCgicCIsIjEiKTtjLnJhd0xlbmd0aCYmZCgiciIsU3RyaW5nKGMucmF3TGVuZ3RoKSk7Yy5ub3JtYWxpemVkTGVuZ3RoJiZkKCJuIixTdHJpbmcoYy5ub3JtYWxpemVkTGVuZ3RoKSk7Yy5sb2NhdGlvbiYmZCgibCIsYy5sb2NhdGlvbik7Yy5zZWxlY3RvciYmZCgicyIsYy5zZWxlY3Rvcik7cmV0dXJuIGUuam9pbigiLiIpfTt2YXIgYXc9dm9pZCAwO2Z1bmN0aW9uIGJ3KCl7aWYoIWF3KXt2YXIgYT1vbShqbS5iYS5vcCxuZXcgTWFwKTthdz1uZXcgb2coYSl9cmV0dXJuIGF3fTsKdmFyIGN3PWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiBhO2Zvcih2YXIgYj17fSxjPW0oT2JqZWN0LmtleXMoYSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2UhPT0iYWRkcmVzcyImJmUhPT0icGhvbmVfbnVtYmVyIiYmZSE9PSJzaGEyNTZfcGhvbmVfbnVtYmVyIiYmKGJbZV09YVtlXSl9cmV0dXJuIGJ9LGZ3PWZ1bmN0aW9uKGEpe3ZhciBiPU0oNTIzKSxjPVsidHYuMSJdLGQ9WyJ0dmQuMSJdLGU9ZHcoYSk7aWYoZSlyZXR1cm4gYy5wdXNoKGUpLHtoYXNVcGQ6ITEsT286Yy5qb2luKCJ+IiksWW46Yy5qb2luKCJ+IiksZW5jcnlwdGlvbktleVN0cmluZzp2b2lkIDAsaWk6e30sbWV0YWRhdGFQYXJhbTpiP2Quam9pbigifiIpOnZvaWQgMH07dmFyIGY9e30sZz0wO3ZhciBoPTAsbD1ldyhhLGZ1bmN0aW9uKHEscix0KXtoKys7dmFyIHU9cS52YWx1ZSx2OwppZih0KXt2YXIgeD1yKyJfXyIrZysrO3Y9IiR7dXNlckRhdGEuIit4KyJ8c2hhMjU2fSI7Zlt4XT11fWVsc2Ugdj1lbmNvZGVVUklDb21wb25lbnQoZW5jb2RlVVJJQ29tcG9uZW50KHUpKTtxLmluZGV4IT09dm9pZCAwJiYocis9cS5pbmRleCk7Yy5wdXNoKHIrIi4iK3YpO2lmKGIpe3ZhciB5PSR2KGgscixxLm1ldGFkYXRhKTt5JiZkLnB1c2goeSl9fSkuaGFzVXBkLG49ZC5qb2luKCJ+Iik7dmFyIHA9Yy5qb2luKCJ+Iik7cmV0dXJue2hhc1VwZDpsLE9vOnAsaWk6e3VzZXJEYXRhOmZ9LFluOiJ0di4xfiR7IisocCsifCIrKE0oNTU1KT8iZW5jcnlwdF93aXRoX21lbW8iOiJlbmNyeXB0IikrIn0iKSxlbmNyeXB0aW9uS2V5U3RyaW5nOkUoNDMpLG1ldGFkYXRhUGFyYW06Yj9uOnZvaWQgMH19LGh3PWZ1bmN0aW9uKGEpe2lmKCEoYSE9bnVsbCYmT2JqZWN0LmtleXMoYSkubGVuZ3RoPjApKXJldHVybiExOwp2YXIgYj1ndyhhKTtyZXR1cm4gZXcoYixmdW5jdGlvbigpe30pLmhhc1VwZH0sZXc9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/ZnVuY3Rpb24oKXt9OmI7Zm9yKHZhciBjPSExLGQ9ITEsZT1tKGEpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2lmKGcudmFsdWUpe3ZhciBoPWl3W2cubmFtZV07aWYoaCl7dmFyIGw9ancoZyk7bCYmKGM9ITApO2Q9ITA7YihnLGgsbCl9fX1yZXR1cm57aGFzVXBkOmQsaGFzVXBkVG9IYXNoOmN9fSxqdz1mdW5jdGlvbihhKXt2YXIgYj1rdyhhLm5hbWUpLGM9L15lXGQrJC8udGVzdChhLnZhbHVlKSxkO2lmKGQ9YiYmIWMpe3ZhciBlPWEudmFsdWU7ZD0hKGx3LnRlc3QoZSl8fHlpLnRlc3QoZSkpfXJldHVybiBkfSxrdz1mdW5jdGlvbihhKXtyZXR1cm4gbXcuaW5kZXhPZihhKSE9PS0xfSxzdz1mdW5jdGlvbihhLGIsYyl7aWYoeWIoQS5Qcm9taXNlKSl0cnl7dmFyIGQ9ITE7dmFyIGU9Z3coYSxkKSxmPW53KGUpLnRoZW4oZnVuY3Rpb24oaCl7dmFyIGw9aC55YixuPWwuZmlsdGVyKGZ1bmN0aW9uKHEpe3JldHVybiFTYihxLm5hbWUsInJhdyIpfSkscD1vdyh7eWI6bn0pO3JldHVybntyZXN1bHQ6e3BhcmFtOnAucGFyYW0saGFzVXBkVG9IYXNoOnAuaGFzVXBkVG9IYXNoLGhhc1VwZDpwLmhhc1VwZCxoYWRFcnJvcjpwLmhhZEVycm9yLG1ldGFkYXRhUGFyYW06cC5tZXRhZGF0YVBhcmFtfSx5YjpsfX0pO3JldHVybiBmLnRoZW4oZnVuY3Rpb24oaCl7cmV0dXJuIGgucmVzdWx0fSl9Y2F0Y2goaCl7fX0scXc9ZnVuY3Rpb24oYSl7dmFyIGI9dm9pZCAwO3JldHVybiBifSxvdz1mdW5jdGlvbihhKXt2YXIgYj1NKDUyMyksYz1hLnliLGQ9WyJ0di4xIl0sZT1bInR2ZC4xIl0sZj1kdyhjKTtpZihmKXJldHVybiBkLnB1c2goZikse3BhcmFtOmQuam9pbigifiIpLGhhc1VwZFRvSGFzaDohMSxoYXNVcGQ6ITEsaGFkRXJyb3I6ITAsbWV0YWRhdGFQYXJhbTpiP2Uuam9pbigifiIpOnZvaWQgMH07dmFyIGc9Yy5maWx0ZXIoZnVuY3Rpb24ocSl7cmV0dXJuIWp3KHEpfSksaD0wLGw9ZXcoZyxmdW5jdGlvbihxLHIpe2grKzt2YXIgdD1xLnZhbHVlLHU9cS5pbmRleDt1IT09dm9pZCAwJiYocis9dSk7ZC5wdXNoKHIrIi4iK3QpO2lmKGIpe3ZhciB2PSR2KGgscixxLm1ldGFkYXRhKTt2JiZlLnB1c2godil9fSksbj1sLmhhc1VwZFRvSGFzaCxwPWwuaGFzVXBkO3JldHVybntwYXJhbTplbmNvZGVVUklDb21wb25lbnQoZC5qb2luKCJ+IikpLApoYXNVcGRUb0hhc2g6bixoYXNVcGQ6cCxoYWRFcnJvcjohMSxtZXRhZGF0YVBhcmFtOmI/ZS5qb2luKCJ+Iik6dm9pZCAwfX0sZHc9ZnVuY3Rpb24oYSl7aWYoYS5sZW5ndGg9PT0xJiZhWzBdLm5hbWU9PT0iZXJyb3JfY29kZSIpcmV0dXJuIGl3LmVycm9yX2NvZGUrIi4iK2FbMF0udmFsdWV9LHB3PWZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoPT09MSYmYVswXS5uYW1lPT09ImVycm9yX2NvZGUiKXJldHVybiExO2Zvcih2YXIgYj1tKGEpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKXt2YXIgZD1jLnZhbHVlO2lmKGl3W2QubmFtZV0mJmQudmFsdWUpcmV0dXJuITB9cmV0dXJuITF9LGd3PWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9W107aWYoQS5sb2NhdGlvbi5wcm90b2NvbCE9PSJodHRwczoiKXJldHVybiBjLnB1c2goe25hbWU6ImVycm9yX2NvZGUiLHZhbHVlOiJlMyIsaW5kZXg6dm9pZCAwfSksYzt2YXIgZD1jLnB1c2gsZT1kLmFwcGx5LGY9W10sCmc9Zi5jb25jYXQsaCxsPWEuX3RhZ19tZXRhZGF0YXx8e307aD1bXS5jb25jYXQodyh0dyh7bmFtZToiZW1haWwiLHJhdzphLmVtYWlsLFNhOmEuc2hhMjU2X2VtYWlsX2FkZHJlc3MsYWI6bC5lbWFpbCxtZDpsLnNoYTI1Nl9lbWFpbF9hZGRyZXNzfSx1dykpLHcodHcoe25hbWU6InBob25lX251bWJlciIscmF3OmEucGhvbmVfbnVtYmVyLFNhOmEuc2hhMjU2X3Bob25lX251bWJlcixhYjpsLnBob25lX251bWJlcixtZDpsLnNoYTI1Nl9waG9uZV9udW1iZXJ9LHZ3KSkpO3ZhciBuPXcoaCkscCxxPWEuX3RhZ19tZXRhZGF0YXx8e30scj1hLmhvbWVfYWRkcmVzc3x8e30sdD1yLl90YWdfbWV0YWRhdGF8fHt9O3A9W10uY29uY2F0KHcodHcoe25hbWU6ImZpcnN0X25hbWUiLHJhdzphLmZpcnN0X25hbWUsU2E6YS5zaGEyNTZfZmlyc3RfbmFtZSxhYjpxLmZpcnN0X25hbWUsbWQ6cS5zaGEyNTZfZmlyc3RfbmFtZX0sd3coeHcpKSksdyh0dyh7bmFtZToibGFzdF9uYW1lIixyYXc6YS5sYXN0X25hbWUsClNhOmEuc2hhMjU2X2xhc3RfbmFtZSxhYjpxLmxhc3RfbmFtZSxtZDpxLnNoYTI1Nl9sYXN0X25hbWV9LHd3KHh3KSkpLHcodHcoe25hbWU6InN0cmVldCIscmF3OnIuc3RyZWV0LFNhOnIuc2hhMjU2X3N0cmVldCxhYjp0LnN0cmVldCxtZDp0LnNoYTI1Nl9zdHJlZXR9LHd3KHl3KSkpLHcodHcoe25hbWU6ImNpdHkiLHJhdzpyLmNpdHksYWI6dC5jaXR5fSx3dyh5dykpKSx3KHR3KHtuYW1lOiJwb3N0YWxfY29kZSIscmF3OnIucG9zdGFsX2NvZGUsYWI6dC5wb3N0YWxfY29kZX0sd3coencpKSksdyh0dyh7bmFtZToicmVnaW9uIixyYXc6ci5yZWdpb24sYWI6dC5yZWdpb259LHd3KHl3KSkpLHcodHcoe25hbWU6ImNvdW50cnkiLHJhdzpyLmNvdW50cnksYWI6dC5jb3VudHJ5fSx3dyh6dykpKSk7Zm9yKHZhciB1PXcocCksdj1bXSx4PUJiKGEuYWRkcmVzc3x8e30pLHk9MDt5PHgubGVuZ3RoO3krKyl7Zm9yKHZhciB6PXhbeV0sQz16Ll90YWdfbWV0YWRhdGF8fHt9LEQ9W10uY29uY2F0KHcodHcoe25hbWU6ImZpcnN0X25hbWUiLApyYXc6ei5maXJzdF9uYW1lLFNhOnouc2hhMjU2X2ZpcnN0X25hbWUsYWI6Qy5maXJzdF9uYW1lLG1kOkMuc2hhMjU2X2ZpcnN0X25hbWV9LHh3KSksdyh0dyh7bmFtZToibGFzdF9uYW1lIixyYXc6ei5sYXN0X25hbWUsU2E6ei5zaGEyNTZfbGFzdF9uYW1lLGFiOkMubGFzdF9uYW1lLG1kOkMuc2hhMjU2X2xhc3RfbmFtZX0seHcpKSx3KHR3KHtuYW1lOiJzdHJlZXQiLHJhdzp6LnN0cmVldCxTYTp6LnNoYTI1Nl9zdHJlZXQsYWI6Qy5zdHJlZXQsbWQ6Qy5zaGEyNTZfc3RyZWV0fSx5dykpLHcodHcoe25hbWU6ImNpdHkiLHJhdzp6LmNpdHksYWI6Qy5jaXR5fSx5dykpLHcodHcoe25hbWU6InBvc3RhbF9jb2RlIixyYXc6ei5wb3N0YWxfY29kZSxhYjpDLnBvc3RhbF9jb2RlfSx6dykpLHcodHcoe25hbWU6InJlZ2lvbiIscmF3OnoucmVnaW9uLGFiOkMucmVnaW9ufSx5dykpLHcodHcoe25hbWU6ImNvdW50cnkiLHJhdzp6LmNvdW50cnksYWI6Qy5jb3VudHJ5fSx6dykpKSxJPTA7STwKRC5sZW5ndGg7SSsrKURbSV0uaW5kZXg9eTt2LnB1c2guYXBwbHkodix3KEQpKX1lLmNhbGwoZCxjLGcuY2FsbChmLG4sdSx3KHYpKSk7aWYoYiYmQnAoKSl7dmFyIEc9Yy5wdXNoLE49Ry5hcHBseSxTPVtdO1MucHVzaC5hcHBseShTLFtdLmNvbmNhdCh3KEF3KHtuYW1lOiJyYXdfZW1haWwiLHJhdzphLmVtYWlsLFNhOmEuc2hhMjU2X2VtYWlsX2FkZHJlc3N9KSksdyhBdyh7bmFtZToicmF3X3Bob25lX251bWJlciIscmF3OmEucGhvbmVfbnVtYmVyLFNhOmEuc2hhMjU2X3Bob25lX251bWJlcn0pKSkpO2Zvcih2YXIgVz1CYihhLmFkZHJlc3N8fHt9KSxlYT0wO2VhPFcubGVuZ3RoO2VhKyspe3ZhciBqYT1XW2VhXTtTLnB1c2guYXBwbHkoUyxbXS5jb25jYXQodyhBdyh7bmFtZToicmF3X2ZpcnN0X25hbWUiLHJhdzpqYS5maXJzdF9uYW1lLFNhOmphLnNoYTI1Nl9maXJzdF9uYW1lfSxlYSkpLHcoQXcoe25hbWU6InJhd19sYXN0X25hbWUiLHJhdzpqYS5sYXN0X25hbWUsU2E6amEuc2hhMjU2X2xhc3RfbmFtZX0sCmVhKSksdyhBdyh7bmFtZToicmF3X3N0cmVldCIscmF3OmphLnN0cmVldCxTYTpqYS5zaGEyNTZfc3RyZWV0fSxlYSkpKSl9aWYoYS5maXJzdF9uYW1lfHxhLmhvbWVfYWRkcmVzcyl7Uy5wdXNoLmFwcGx5KFMsW10uY29uY2F0KHcoQXcoe25hbWU6InJhd19maXJzdF9uYW1lIixyYXc6YS5maXJzdF9uYW1lLFNhOmEuc2hhMjU2X2ZpcnN0X25hbWV9KSksdyhBdyh7bmFtZToicmF3X2xhc3RfbmFtZSIscmF3OmEubGFzdF9uYW1lLFNhOmEuc2hhMjU2X2xhc3RfbmFtZX0pKSkpO3ZhciBmYT1hLmhvbWVfYWRkcmVzc3x8e307Uy5wdXNoLmFwcGx5KFMsdyhBdyh7bmFtZToicmF3X3N0cmVldCIscmF3OmZhLnN0cmVldCxTYTpmYS5zaGEyNTZfc3RyZWV0fSkpKX1OLmNhbGwoRyxjLHcoUykpfXJldHVybiBjfSx3dz1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYil7UCg2NCk7cmV0dXJuIGEoYil9fSxBdz1mdW5jdGlvbihhLGIpe3ZhciBjPVtdO2lmKGEuU2EpcmV0dXJuIGM7Zm9yKHZhciBkPQpCYihhLnJhdyksZT0wO2U8ZC5sZW5ndGg7KytlKXt2YXIgZj1CdyhkW2VdKTtpZihmJiYheWkudGVzdChmKSlpZigvXmVcZCskLy50ZXN0KGYpKWMucHVzaCh7bmFtZTphLm5hbWUsdmFsdWU6ZixpbmRleDpifSk7ZWxzZXt2YXIgZz1jLGg9Zy5wdXNoLGw9YS5uYW1lLG47dmFyIHA9QTt0cnl7bj1CaShBcnJheS5mcm9tKFpiKGYpKSxwKX1jYXRjaChxKXtuPSJlMCJ9aC5jYWxsKGcse25hbWU6bCx2YWx1ZTpuLGluZGV4OmJ9KX19cmV0dXJuIGN9LHR3PWZ1bmN0aW9uKGEsYil7dmFyIGM9W10sZD1NKDUyMyksZT1hLnJhdyxmPWQ/YS5hYjp2b2lkIDA7Q3coZSwhMSk7YS5TYSYmKGUmJlAoOTApLGU9YS5TYSxmPWQ/YS5tZDp2b2lkIDAsQ3coZSwhMCkpO2Zvcih2YXIgZz1CYihlKSxoPUJiKGYpLGw9MDtsPGcubGVuZ3RoOysrbCl7dmFyIG47dmFyIHA9YS5uYW1lLHE9YixyPWhbbF0sdD1CdyhnW2xdKTtpZih0IT09IiIpaWYoeWkudGVzdCh0KSl7ciYmKHIuaXNQcmVIYXNoZWQ9ITApOwp2YXIgdT17bmFtZTpwLHZhbHVlOnQsaW5kZXg6dm9pZCAwfTtyJiYodS5tZXRhZGF0YT1yKTtuPXV9ZWxzZXt2YXIgdj1xKHQpLHg9e25hbWU6cCx2YWx1ZTp2LGluZGV4OnZvaWQgMH07ciYmKHgubWV0YWRhdGE9cix2JiYoci5yYXdMZW5ndGg9U3RyaW5nKHQpLmxlbmd0aCxyLm5vcm1hbGl6ZWRMZW5ndGg9di5sZW5ndGgpKTtuPXh9ZWxzZSBuPXZvaWQgMDt2YXIgeT1uO3kmJmMucHVzaCh5KX1yZXR1cm4gY30sQ3c9ZnVuY3Rpb24oYSxiKXtpZih6YihhKXx8QXJyYXkuaXNBcnJheShhKSlmb3IodmFyIGM9QmIoYSksZD0wO2Q8Yy5sZW5ndGg7KytkKXt2YXIgZT1CdyhjW2RdKSxmPXlpLnRlc3QoZSk7YiYmIWYmJlAoODkpOyFiJiZmJiZQKDg4KX19LER3PWZ1bmN0aW9uKGEpe3ZhciBiPWE/Z3coYSk6W107cmV0dXJuIG93KHt5YjpifSl9LEV3PWZ1bmN0aW9uKGEpe3JldHVybiBhJiZhIT1udWxsJiZPYmplY3Qua2V5cyhhKS5sZW5ndGg+MCYmeWIoQS5Qcm9taXNlKT9ndyhhKS5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiLnZhbHVlJiYKa3coYi5uYW1lKSYmIXlpLnRlc3QoYi52YWx1ZSl9KTohMX0sQnc9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PW51bGw/IiI6emIoYSk/TGIoU3RyaW5nKGEpKToiZTAifSx6dz1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKEZ3LCIiKX0seHc9ZnVuY3Rpb24oYSl7cmV0dXJuIHl3KGEucmVwbGFjZSgvXHMvZywiIikpfSx5dz1mdW5jdGlvbihhKXtyZXR1cm4gTGIoYS5yZXBsYWNlKEd3LCIiKS50b0xvd2VyQ2FzZSgpKX0sdnc9ZnVuY3Rpb24oYSl7YT1hLnJlcGxhY2UoL1tccy0oKS8uXS9nLCIiKTthLmNoYXJBdCgwKSE9PSIrIiYmKGE9IisiK2EpO3JldHVybihNKDU5Nyk/SHc6SXcpLnRlc3QoYSk/YToiZTAifSx1dz1mdW5jdGlvbihhKXt2YXIgYj1hLnRvTG93ZXJDYXNlKCkuc3BsaXQoIkAiKTtpZihiLmxlbmd0aD09PTIpe3ZhciBjPWJbMF07L14oZ21haWx8Z29vZ2xlbWFpbClcLi8udGVzdChiWzFdKSYmKGM9Yy5yZXBsYWNlKC9cLi9nLCIiKSk7Yz1jKyJAIitiWzFdO2lmKEp3LnRlc3QoYykpcmV0dXJuIGN9cmV0dXJuImUwIn0sCkt3PWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4gYS5mb3JFYWNoKGZ1bmN0aW9uKGIpe2IudmFsdWUmJmt3KGIubmFtZSkmJihiLnZhbHVlPURpKGIudmFsdWUpKX0pLHt5YjphfX1jYXRjaChiKXtyZXR1cm57eWI6W119fX0sbnc9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gYi52YWx1ZSYma3coYi5uYW1lKX0pP3liKEEuUHJvbWlzZSk/UHJvbWlzZS5hbGwoYS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIudmFsdWUmJmt3KGIubmFtZSk/QWkoYi52YWx1ZSkudGhlbihmdW5jdGlvbihjKXtiLnZhbHVlPWN9KTpQcm9taXNlLnJlc29sdmUoKX0pKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJue3liOmF9fSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57eWI6W119fSk6e3RoZW46ZnVuY3Rpb24oYil7Yih7eWI6W119KX19OlByb21pc2UucmVzb2x2ZSh7eWI6YX0pfSxHdz0vWzAtOWB+IUAjJCVeJiooKV9cLSs9Ojs8PiwuP3wvXFxbXF1dL2csSnc9L15cUytAXFMrXC5cUyskLywKSXc9L15cK1xkezEwLDE1fSQvLEh3PS9eXCtcZHs3LDE1fSQvLEZ3PS9bLn5dL2csbHc9L15bMC05QS1aYS16Xy1dezQzfSQvLEx3PVsicmVtIiwicnBuIiwicmZuIiwicmxuIiwicnNhIl0sTXc9e30saXc9KE13LmVtYWlsPSJlbSIsTXcucGhvbmVfbnVtYmVyPSJwbiIsTXcuZmlyc3RfbmFtZT0iZm4iLE13Lmxhc3RfbmFtZT0ibG4iLE13LnN0cmVldD0ic2EiLE13LmNpdHk9ImN0IixNdy5yZWdpb249InJnIixNdy5jb3VudHJ5PSJjbyIsTXcucG9zdGFsX2NvZGU9InBjIixNdy5lcnJvcl9jb2RlPSJlYyIsTXcucmF3X2VtYWlsPSJyZW0iLE13LnJhd19waG9uZV9udW1iZXI9InJwbiIsTXcucmF3X2ZpcnN0X25hbWU9InJmbiIsTXcucmF3X2xhc3RfbmFtZT0icmxuIixNdy5yYXdfc3RyZWV0PSJyc2EiLE13KTt2YXIgbXc9T2JqZWN0LmZyZWV6ZShbImVtYWlsIiwKInBob25lX251bWJlciIsImZpcnN0X25hbWUiLCJsYXN0X25hbWUiLCJzdHJlZXQiXSk7dmFyIG14PU9iamVjdC5mcmVlemUoe2F0dHJpYnV0aW9uc3JjOiIifSksbng9T2JqZWN0LmZyZWV6ZSh7ZXZlbnRTb3VyY2VFbGlnaWJsZTohMSx0cmlnZ2VyRWxpZ2libGU6ITB9KTtmdW5jdGlvbiBveCgpe3ZhciBhPVhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZTtyZXR1cm4gYSYmeWIoYS5zZXRBdHRyaWJ1dGlvblJlcG9ydGluZyl9O3ZhciBweD1PYmplY3QuZnJlZXplKHtjYWNoZToibm8tc3RvcmUiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixtZXRob2Q6IkdFVCIsa2VlcGFsaXZlOiEwLHJlZGlyZWN0OiJmb2xsb3cifSk7CmZ1bmN0aW9uIHF4KGEsYixjLGQsZSxmKXtpZigheWIoQS5mZXRjaCkpcmV0dXJuIGY9PW51bGx8fGYodm9pZCAwLHZvaWQgMCksITE7dmFyIGc9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxweCk7YiYmKGcuYm9keT1iLGcubWV0aG9kPSJQT1NUIik7bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCxnLGQpO0EuZmV0Y2goYSxnKS50aGVuKGZ1bmN0aW9uKGgpe2lmKGgub2spe2lmKGguYm9keSl7dmFyIGw9aC5ib2R5LmdldFJlYWRlcigpLG49bmV3IFRleHREZWNvZGVyO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihwKXtmdW5jdGlvbiBxKCl7bC5yZWFkKCkudGhlbihmdW5jdGlvbihyKXt2YXIgdDt0PXIuZG9uZTt2YXIgdT1uLmRlY29kZShyLnZhbHVlLHtzdHJlYW06IXR9KTt1PWMuUit1O2Zvcih2YXIgdj11LmluZGV4T2YoIlxuXG4iKTt2IT09LTE7KXt2YXIgeD1aZyx5O2E6e3ZhciB6PW0odS5zdWJzdHJpbmcoMCx2KS5zcGxpdCgiXG4iKSksQz0Kei5uZXh0KCkudmFsdWUsRD16Lm5leHQoKS52YWx1ZTtpZihTYihDLCJldmVudDogbWVzc2FnZSIpJiZTYihELCJkYXRhOiAiKSl7dmFyIEk9RC5zdWJzdHJpbmcoNik7dHJ5e3k9SlNPTi5wYXJzZShJKTticmVhayBhfWNhdGNoKEcpe319eT12b2lkIDB9eChjLHkpO3U9dS5zdWJzdHJpbmcodisyKTt2PXUuaW5kZXhPZigiXG5cbiIpfWMuUj11O3Q/KGU9PW51bGx8fGUoaCkscCgpKTpxKCl9KS5jYXRjaChmdW5jdGlvbigpe2U9PW51bGx8fGUoaCk7cCgpfSl9cSgpfSl9ZT09bnVsbHx8ZShoKX1lbHNlIGY9PW51bGx8fGYoaCx2b2lkIDApfSkuY2F0Y2goZnVuY3Rpb24oaCl7Zj09bnVsbHx8Zih2b2lkIDAsaCl9KTtyZXR1cm4hMH07dmFyIHJ4PWZ1bmN0aW9uKGEpe2h1LmNhbGwodGhpcywiRmV0Y2hSaWNoUmVzcG9uc2UiLDEpO3RoaXMuTj1hfTt3YShyeCxodSk7cngucHJvdG90eXBlLmlzU3VwcG9ydGVkPWZ1bmN0aW9uKCl7cmV0dXJuIHliKEEuZmV0Y2gpfTtyeC5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiEwfTtyeC5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIsYyl7cXgoYixjPT1udWxsP3ZvaWQgMDpjLmJvZHksdGhpcy5OLGM9PW51bGw/dm9pZCAwOmMuR2IsYS5wZSxmdW5jdGlvbihkLGUpe2Eub25GYWlsdXJlKGUpfSl9O3ZhciBDeD1mdW5jdGlvbigpe1lnLmFwcGx5KHRoaXMsYXJndW1lbnRzKX07d2EoQ3gsWWcpO0N4LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYil7WmMoYSx2b2lkIDAsJGcodGhpcyxiKSxiLmF0dHJpYnV0aW9uX3JlcG9ydGluZyYmb3goKT9teDp7fSl9O0N4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5hdHRyaWJ1dGlvbl9yZXBvcnRpbmcmJm94KCk/e2F0dHJpYnV0aW9uUmVwb3J0aW5nOm54fTp7fSxkPSRnKHRoaXMsYik7Yi5wcm9jZXNzX3Jlc3BvbnNlP3F4KGEsdm9pZCAwLHRoaXMsYyx2b2lkIDAsZCk6bWQoYSx2b2lkIDAsYyx2b2lkIDAsZCl9O3ZhciBReD1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMudGltZW91dE1zPWI7dGhpcy5SYj12b2lkIDB9LFJ4PWZ1bmN0aW9uKGEpe2EuUmJ8fChhLlJiPXNldFRpbWVvdXQoZnVuY3Rpb24oKXthLkgoKTthLlJiPXZvaWQgMH0sYS50aW1lb3V0TXMpKX0sVG49ZnVuY3Rpb24oYSl7YS5SYiYmKGNsZWFyVGltZW91dChhLlJiKSxhLlJiPXZvaWQgMCl9O3ZhciBTeD1mdW5jdGlvbigpe3ZhciBhPU5mKDY2LDApO3RoaXMuSz1bXTt0aGlzLlI9YTt0aGlzLkg9WWEoKX0sVXg9ZnVuY3Rpb24oYSl7dmFyIGI9VHg7Yi5LLnB1c2goYSk7Yi5OfHwoYi5OPWZ1bmN0aW9uKCl7Zm9yKHZhciBjPW0oYi5LKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTt0cnl7ZSgpfWNhdGNoKGwpe319Zm9yKHZhciBmPW0oYi5ILnZhbHVlcygpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9dm9pZCAwOyhoPWcudmFsdWUud2UpPT1udWxsfHxUbihoKX1iLkguY2xlYXIoKX0sJGMoQSwicGFnZWhpZGUiLGIuTikpfSxWeD1mdW5jdGlvbihhKXt2YXIgYj1hLm1hdGNoKE1uKVszXXx8bnVsbCxjPShiP2RlY29kZVVSSShiKTpiKXx8IiIsZD1QbihhLCJsYWJlbCIpfHwiIixlPVBuKGEsInJhbmRvbSIpfHwiIjtyZXR1cm4gYysiOiIrTG4oZCkrIjoiK0xuKGUpfSxXeD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9VHgsCmU9VngoYSk7aWYoIShkLkguaGFzKGUpfHxkLkguc2l6ZT49ZC5SKSl7dmFyIGY9e307YiYmYj4wJiZjJiYoZi53ZT1uZXcgUXgoYyxiKSk7ZC5ILnNldChlLGYpO3ZhciBnOyhnPWYud2UpPT1udWxsfHxSeChnKX19LFVuPWZ1bmN0aW9uKGEsYil7dmFyIGM9VngoYiksZCxlOyhkPWEuSC5nZXQoYykpPT1udWxsfHwoZT1kLndlKT09bnVsbHx8VG4oZSk7YS5ILmRlbGV0ZShjKX07U3gucHJvdG90eXBlLmdldFNpemU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ILnNpemV9O3ZhciBkZztmdW5jdGlvbiBoeShhLGIpe3ZhciBjOyhjPWRnKT09bnVsbHx8JGYoYy5ILGEsYil9O3ZhciBpeT1BYShbIi8iXSksank9ZnVuY3Rpb24oYSl7dGhpcy5IPWE7dGhpcy5mYWlsdXJlVHlwZT12b2lkIDB9O2p5LnByb3RvdHlwZS5pbz1mdW5jdGlvbihhLGIsYyl7dHJ5e3ZhciBkPXRoaXMuSC5hY3RpdmU7ZD8oZC5wb3N0TWVzc2FnZSh7dHlwZToxLGNvbW1hbmQ6YX0pLGIoe2RhdGE6IiJ9KSk6Yyh7ZmFpbHVyZVR5cGU6MTMsZGF0YToiIn0pfWNhdGNoKGUpe2Moe2ZhaWx1cmVUeXBlOjExLGRhdGE6ZS5tZXNzYWdlfSl9fTt2YXIga3k9ZnVuY3Rpb24oYSxiKXt0aGlzLmZhaWx1cmVUeXBlPWE7dGhpcy5IPWJ9O2t5LnByb3RvdHlwZS5pbz1mdW5jdGlvbihhLGIsYyl7Yyh7ZmFpbHVyZVR5cGU6dGhpcy5mYWlsdXJlVHlwZSxkYXRhOiJmIit0aGlzLmZhaWx1cmVUeXBlKygidCIrKChuZXcgRGF0ZSkuZ2V0VGltZSgpLXRoaXMuSCkpfSl9Owp2YXIgbnk9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczt0aGlzLmluaXRUaW1lPShuZXcgRGF0ZSkuZ2V0VGltZSgpO3RoaXMuSD1uZXcga3koMTUsdGhpcy5pbml0VGltZSk7dmFyIGM9bmV3IFByb21pc2UoZnVuY3Rpb24oZSl7QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZSgpfSwyMCl9KSxkPWx5KGEpLnRoZW4oZnVuY3Rpb24oZSl7Yi5IPW5ldyBqeShlKTtteShiLGUpfSkuY2F0Y2goZnVuY3Rpb24oKXtiLkg9bmV3IGt5KDQsYi5pbml0VGltZSl9KTt0aGlzLks9UHJvbWlzZS5yYWNlKFtjLGRdKX0sbXk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdW5jdGlvbihkKXtkJiZkLmFkZEV2ZW50TGlzdGVuZXIoInN0YXRlY2hhbmdlIixmdW5jdGlvbigpe2lmKGQuc3RhdGU9PT0icmVkdW5kYW50Iil7dmFyIGU9Yi5hY3RpdmU7ZSYmZS5zdGF0ZSE9PSJyZWR1bmRhbnQifHwoYS5IPW5ldyBreSgxMCxhLmluaXRUaW1lKSl9fSl9O2MoYi5hY3RpdmUpO2MoYi53YWl0aW5nKTtjKGIuaW5zdGFsbGluZyk7CmIuYWRkRXZlbnRMaXN0ZW5lcigidXBkYXRlZm91bmQiLGZ1bmN0aW9uKCl7YyhiLmluc3RhbGxpbmcpfSl9O255LnByb3RvdHlwZS5kZWxlZ2F0ZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpczt0aGlzLksudGhlbihmdW5jdGlvbigpe2QuSC5pbyhhLGIsYyl9KX07bnkucHJvdG90eXBlLmdldFN0YXRlPWZ1bmN0aW9uKCl7cmV0dXJuIDJ9Owp2YXIgbHk9ZnVuY3Rpb24oYSl7dmFyIGIsYz1MZigxMSk7Yz1MZigxMCk7Yj1jO3ZhciBkPXtzY29wZTooVGIoYS5ocmVmLCIvIik/YS5ocmVmLnNsaWNlKDAsLTEpOmEuaHJlZikrIi9fL3NlcnZpY2Vfd29ya2VyIn07YiYmKGQudXBkYXRlVmlhQ2FjaGU9ImFsbCIpO3ZhciBlLGY9b3koYSxiKSxnPW5ldyBNYXAoW1sicGF0aCIsYS5wYXRobmFtZV1dKSxoPUpwKGtjKGYpLnRvU3RyaW5nKCkpO2U9THAoaC56ayxoLnBhcmFtcyxoLmZyYWdtZW50LGcpO3ZhciBsPUljKCksbj1rYyhlKTt0cnl7cmV0dXJuIGwucmVnaXN0ZXIobixkKX1jYXRjaChwKXt0cnl7cmV0dXJuIGwucmVnaXN0ZXIobi50b1N0cmluZygpLGQpfWNhdGNoKHEpe3JldHVybiBQcm9taXNlLnJlamVjdChxKX19fTsKZnVuY3Rpb24gb3koYSxiKXtmb3IodmFyIGM9S3AoaXkpLGQ9YS5wYXRobmFtZS5zcGxpdCgiLyIpLmZpbHRlcihmdW5jdGlvbihoKXtyZXR1cm4gaC5sZW5ndGg+MH0pLGU9W10uY29uY2F0KHcoZCksWyJfIiwic2VydmljZV93b3JrZXIiLGIsInN3LmpzIl0pLGY9bShlKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSljPU1wKGMsZy52YWx1ZSk7cmV0dXJuIGN9O2Z1bmN0aW9uIHB5KGEpe3ZhciBiPW5tKGptLmJhLk9oKSxjPWI9PW51bGw/dm9pZCAwOmJbYV07Y3x8YSE9PSJsaXRlInx8KGM9Yj09bnVsbD92b2lkIDA6Yi5mdWxsKTtyZXR1cm4gY312YXIgcXk9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXB5KCJmdWxsIik7ZD9kLmRlbGVnYXRlKGEsYixjKTpjKHtmYWlsdXJlVHlwZToxNn0pfTtmdW5jdGlvbiByeShhLGIsYyxkLGUpe3F5KHtjb21tYW5kVHlwZTowLHBhcmFtczp7dXJsOmEsbWV0aG9kOjEsdGVtcGxhdGVzOmIsYm9keToiIixwcm9jZXNzUmVzcG9uc2U6ITEsZW5jcnlwdGlvbktleVN0cmluZzplLHNvUmVmZXJyZXI6QS5sb2NhdGlvbi5ocmVmfX0sYyxmdW5jdGlvbihmKXtkKGYuZmFpbHVyZVR5cGUsZi5kYXRhKX0pfTt2YXIgRHk9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0wO3RoaXMuSz0hMTtNKDQ2MikmJlVtKCJmcyIsZnVuY3Rpb24oKXtyZXR1cm4gYS5IPjAmJmEuSDw1P1N0cmluZyhhLkgpOnZvaWQgMH0sITEpfSxFeTtmdW5jdGlvbiBGeShhLGIpe0V5fHwoRXk9bmV3IER5KTt2YXIgYz1FeTtNKDQ2MikmJmZuLksmJihiPT09Imd0bS5mb3JtU3VibWl0Inx8Yj09PSJmb3JtX3N1Ym1pdCImJklmKDQ1KSkmJihhPT09MXx8Yy5LKSYmKGMuSz0hMCxjLkg9YSxhIT09NT9WbSgiZnMiKTpRbS5ILmZzPSExKX07dmFyIEd5PWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouZGEpPT09WC5WLkthKXt2YXIgYj1mdShhKTtpZighTSg0MjcpJiYoanAoYSxiKXx8UShhLEguSi5oZCkpJiZYbyhmcCkpe3ZhciBjPWxwKGEsYik7aWYoYyl7dmFyIGQ9Tm0oNjksYyk7VGwoZCxhLDY5KTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OjY5LGV2ZW50SWQ6YS5NLmV2ZW50SWQscHJpb3JpdHlJZDphLk0ucHJpb3JpdHlJZH0sZCl9fXZhciBlPXliKGEuTS5vblN1Y2Nlc3MpP2EuTS5vblN1Y2Nlc3M6eGI7JHUoYSxiKTtlKCl9fTt2YXIgSHk9e1g6e1dxOjAsRWs6MSxaZzoyLFhrOjMsbWk6NCxWazo1LFdrOjYsWWs6NyxuaTo4LHRtOjksc206MTAsVGk6MTEsdm06MTIsQmg6MTMsRW06MTQsaWo6MTUsU3E6MTYsamQ6MTcsdWo6MTgsdmo6MTksd2o6MjAsQ246MjEseGo6MjJ9fTtIeS5YW0h5LlguV3FdPSJSRVNFUlZFRF9aRVJPIjtIeS5YW0h5LlguRWtdPSJBRFNfQ09OVkVSU0lPTl9ISVQiO0h5LlhbSHkuWC5aZ109IkNPTlRBSU5FUl9FWEVDVVRFX1NUQVJUIjtIeS5YW0h5LlguWGtdPSJDT05UQUlORVJfU0VUVVBfRU5EIjtIeS5YW0h5LlgubWldPSJDT05UQUlORVJfU0VUVVBfU1RBUlQiO0h5LlhbSHkuWC5Wa109IkNPTlRBSU5FUl9CTE9DS0lOR19FTkQiO0h5LlhbSHkuWC5Xa109IkNPTlRBSU5FUl9FWEVDVVRFX0VORCI7SHkuWFtIeS5YLllrXT0iQ09OVEFJTkVSX1lJRUxEX0VORCI7SHkuWFtIeS5YLm5pXT0iQ09OVEFJTkVSX1lJRUxEX1NUQVJUIjtIeS5YW0h5LlgudG1dPSJFVkVOVF9FWEVDVVRFX0VORCI7Ckh5LlhbSHkuWC5zbV09IkVWRU5UX0VWQUxVQVRJT05fRU5EIjtIeS5YW0h5LlguVGldPSJFVkVOVF9FVkFMVUFUSU9OX1NUQVJUIjtIeS5YW0h5Llgudm1dPSJFVkVOVF9TRVRVUF9FTkQiO0h5LlhbSHkuWC5CaF09IkVWRU5UX1NFVFVQX1NUQVJUIjtIeS5YW0h5LlguRW1dPSJHQTRfQ09OVkVSU0lPTl9ISVQiO0h5LlhbSHkuWC5pal09IlBBR0VfTE9BRCI7SHkuWFtIeS5YLlNxXT0iUEFHRVZJRVciO0h5LlhbSHkuWC5qZF09IlNOSVBQRVRfTE9BRCI7SHkuWFtIeS5YLnVqXT0iVEFHX0NBTExCQUNLX0VSUk9SIjtIeS5YW0h5LlgudmpdPSJUQUdfQ0FMTEJBQ0tfRkFJTFVSRSI7SHkuWFtIeS5YLndqXT0iVEFHX0NBTExCQUNLX1NVQ0NFU1MiO0h5LlhbSHkuWC5Dbl09IlRBR19FWEVDVVRFX0VORCI7SHkuWFtIeS5YLnhqXT0iVEFHX0VYRUNVVEVfU1RBUlQiO3ZhciBJeT17fTtJeS5YPUh5Llg7dmFyIEp5PXtSdToiTCIsWHE6IlMiLGt2OiJZIixSdDoiQiIsbnU6IkUiLE51OiJJIixmdjoiVEMiLHZ1OiJIVEMiLG91OiJGIixNdToiQyJ9LEt5PXtYcToiUyIsbHU6IlYiLGF1OiJFIixkdjoidGFnIn0sTHk9e30sTXk9KEx5W0l5LlgudmpdPSI2IixMeVtJeS5YLndqXT0iNSIsTHlbSXkuWC51al09IjciLEx5KTtmdW5jdGlvbiBOeShhKXt2YXIgYj1FKDUpLGM9TnVtYmVyKGEuZXZlbnRJZCksZD1OdW1iZXIoYS50YWdJZCk7cmV0dXJuKFNiKGIsIkdUTS0iKT9iOiJHVE0tIitiKSsiOiIrKEFiKGMpP2MrIjoiOiIiKSsoQWIoZCk/ZCsiOiI6IiIpK2Euc3RhZ2V9O2Z1bmN0aW9uIE95KCl7dmFyIGE9cmQoKTtyZXR1cm4hIShhJiZhLm1hcmsgaW5zdGFuY2VvZiBGdW5jdGlvbiYmYS5tZWFzdXJlIGluc3RhbmNlb2YgRnVuY3Rpb24mJmEuY2xlYXJNZWFzdXJlcyBpbnN0YW5jZW9mIEZ1bmN0aW9uJiZhLmNsZWFyTWFya3MgaW5zdGFuY2VvZiBGdW5jdGlvbil9O3ZhciBQeT1mdW5jdGlvbigpe3RoaXMuSD17fX0sUXk7ZnVuY3Rpb24gUnkoKXtReXx8KFF5PW5ldyBQeSk7cmV0dXJuIFF5fWZ1bmN0aW9uIFN5KGEpe3ZhciBiPVJ5KCksYz1OeShhKTtyZXR1cm4gYi5IW2NdfWZ1bmN0aW9uIFR5KGEsYil7dmFyIGM7YTp7dmFyIGQ9UnkoKTtpZihPeSgpKXt2YXIgZT1OeShhKSxmLGc7aWYoZj0oZz1yZCgpKT09bnVsbD92b2lkIDA6Zy5tYXJrKGUsYikpe2M9ZC5IW2VdPWY7YnJlYWsgYX19Yz12b2lkIDB9cmV0dXJuIGN9O2Z1bmN0aW9uIFV5KGEsYil7aWYoT3koKSl7YS5lbnRyeT1OeShhKTt2YXIgYz1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGEpO2Muc3RhZ2U9YjtkZWxldGUgYy5zZW50O3ZhciBkPVN5KGI9PT1JeS5YLmpkP3tzdGFnZTpJeS5YLmpkfTpjKSxlPVN5KGEpO2lmKGQmJmUmJiEoZC5zdGFydFRpbWU+ZS5zdGFydFRpbWUpKXtjLnN0YWdlPWIrIjoiK2Euc3RhZ2U7dmFyIGY9TnkoYyksZz17c3RhcnQ6ZC5uYW1lLGVuZDplLm5hbWV9LGgsbDtyZXR1cm4obD0oaD1yZCgpKT09bnVsbD92b2lkIDA6aC5tZWFzdXJlKGYsZykpPT1udWxsP3ZvaWQgMDpsLmR1cmF0aW9ufX19O3ZhciBXeT1mdW5jdGlvbigpe3ZhciBhPTU7VnkuUm8+MCYmKGE9VnkuUm8pO3RoaXMuSz1hO3RoaXMuSD0wO3RoaXMuTj1bXX0sWHk9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuSDxhLks/ITE6TmIoKS1hLk5bYS5IJWEuS108MUUzfSxZeT1mdW5jdGlvbihhKXt2YXIgYj1hLkgrKyVhLks7YS5OW2JdPU5iKCl9O3ZhciBWeT17Um86TmYoMywwKX0sJHk9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMueWE9W107dGhpcy5IPXZvaWQgMDt0aGlzLlo9e307dGhpcy5LPXZvaWQgMDt0aGlzLmphPW5ldyBXeTt0aGlzLkxhPTFFMzt0aGlzLlI9dGhpcy5OPSExO3RoaXMuZmE9RGIoKTtaeSh0aGlzLGZ1bmN0aW9uKCl7dmFyIGI9W1sidiIsIjMiXSxbInQiLCJ0Il0sWyJwaWQiLFN0cmluZyhhLmZhKV1dLGM9ZHUoKTtjJiZiLnB1c2goWyJndG0iLGNdKTtyZXR1cm4gYn0pO2NkKGZ1bmN0aW9uKCl7YS5mYT1EYigpfSw4NjRFNSl9LFp5PWZ1bmN0aW9uKGEsYil7YS55YS5wdXNoKGIpfSxhej1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5IO2lmKGQ9PT12b2lkIDApaWYoYylkPXJqKCk7ZWxzZSByZXR1cm4iIjtmb3IodmFyIGU9W2ZrKCJodHRwczovLyIrRSgyMSkpLCIvYSIsIj9pZD0iK0UoNSldLGY9bShhLnlhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSlmb3IodmFyIGg9Zy52YWx1ZSxsPQpoKHtldmVudElkOmQsdGY6ISFifSksbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1tKHAudmFsdWUpLHI9cS5uZXh0KCkudmFsdWUsdD1xLm5leHQoKS52YWx1ZTtlLnB1c2goIiYiK3IrIj0iK3QpfWUucHVzaCgiJno9MCIpO3JldHVybiBlLmpvaW4oIiIpfSxiej1mdW5jdGlvbihhKXtpZigkaygyNikmJihhLksmJihBLmNsZWFyVGltZW91dChhLkspLGEuSz12b2lkIDApLGEuSCE9PXZvaWQgMCYmYS5SKSl7dmFyIGI9bG8oY28uaWEuWmIpO2lmKGdvKGIpKWEuTnx8KGEuTj0hMCxpbyhiLGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYnooYSl9KSk7ZWxzZSBpZihhLlpbYS5IXXx8WHkoYS5qYSl8fGEuTGEtLTw9MClQKDEpLGEuWlthLkhdPSEwO2Vsc2V7WXkoYS5qYSk7dmFyIGM9YXooYSwhMCk7WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmEuSH0sYyk7YS5SPSExO2EuTj0hMX19fSxjej1mdW5jdGlvbihhKXthLkt8fChhLks9CkEuc2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiB2b2lkIGJ6KGEpfSw1MDApKX0sZXo9ZnVuY3Rpb24oYSl7dmFyIGI9ZHo7Yi5aW2FdfHwoYSE9PWIuSCYmKGJ6KGIpLGIuSD1hKSxiLlI9ITAsY3ooYiksYXooYikubGVuZ3RoPj0yMDIyJiZieihiKSl9LGR6O2Z1bmN0aW9uIGZ6KGEpe2d6KCk7WnkoZHosYSl9ZnVuY3Rpb24gaHooKXt2YXIgYTthPWE9PT12b2lkIDA/ITE6YTtneigpO3ZhciBiPWEsYz1kejtiPWI9PT12b2lkIDA/ITE6YjtpZihmbi5OJiYkaygyNikpe3ZhciBkPWF6KGMsITAsITApO2I/Vm4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmMuSH0sZCk6WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmMuSH0sZCl9fWZ1bmN0aW9uIGd6KCl7ZHp8fChkej1uZXcgJHkpfTtmdW5jdGlvbiBpeigpe2Z1bmN0aW9uIGEoYyxkKXt2YXIgZT13YihyYltkXXx8W10pO2UmJmIucHVzaChbYyxlXSl9dmFyIGI9W107YSgidSIsIkdUTSIpO2EoInV0IiwiVEFHR0lORyIpO2EoImgiLCJIRUFMVEgiKTtyZXR1cm4gYn07dmFyIGp6PSJodHRwczovLyIrRSgyMSksa3o9ZnVuY3Rpb24oKXt0aGlzLk49ITE7dGhpcy5SPVtdO3RoaXMuWj1bXTt0aGlzLkg9e1RDOjAsSFRDOjB9O3RoaXMuSz17fX0sbHo9ZnVuY3Rpb24oYSxiLGMsZCl7YS5LW2JdfHwoYS5LW2JdPXt9KTthLktbYl1bY109ZH0sb3o9ZnVuY3Rpb24oYSl7dmFyIGI9IiIsYz0iIixkPW16KCk7QWIoZCkmJihhLkguST1NYXRoLmZsb29yKGQpKTtjPW56KGEuSCxKeSkudG9TdHJpbmcoKTtmb3IodmFyIGU9bShPYmplY3Qua2V5cyhhLkspKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWEuS1tnXS5uYW1lLGw9IiIsbj1ueihhLktbZ10sS3kpO24mJihsPWgrIi4iK24udG9TdHJpbmcoKSxiKz0ifiIrbCl9dmFyIHA9In5BV0NUIithLlIuam9pbigiLiIpLHE9In5HQSIrYS5aLmpvaW4oIi4iKSxyPSImY2NpZD0iK3ZrKCkudG9TdHJpbmcoKSsiJmNpZD0iK0UoNSkudG9TdHJpbmcoKSsiJmw9IitjK2IrKGEuUi5sZW5ndGg/CnA6IiIpKyhhLloubGVuZ3RoP3E6IiIpO2lmKE0oMjE0KSl7dmFyIHQsdT0odD1yZCgpKT09bnVsbD92b2lkIDA6dC5nZXRFbnRyaWVzQnlOYW1lKEtjKS5tYXAoZnVuY3Rpb24odil7cmV0dXJuIFN0cmluZyh2LmR1cmF0aW9uKX0pLmpvaW4oIi4iKTt1JiYocis9In5TUyIrdSl9cmV0dXJuIHJ9LHB6PWZ1bmN0aW9uKGEsYil7aWYoIWIuc3RhZ2V8fGEuTnx8IU95KCl8fFN5KGIpKXJldHVybiExO3ZhciBjLGQ9KGM9cmQoKSk9PW51bGw/dm9pZCAwOmMudGltZU9yaWdpbjtpZighQWIoZCkpYS5OPSEwO2Vsc2UgaWYoQWIoJGsoMjUpKSYmIVN5KHtzdGFnZTpJeS5YLmpkfSkmJiFhLk4mJk95KCkpdHJ5e3ZhciBlPU51bWJlcigkaygyNSkpO1R5KHtzdGFnZTpJeS5YLmpkfSx7c3RhcnRUaW1lOk1hdGgubWF4KGUtZCwwKX0pO1R5KHtzdGFnZTpJeS5YLmlqfSx7c3RhcnRUaW1lOjB9KTt2YXIgZj1VeSh7c3RhZ2U6SXkuWC5qZH0sSXkuWC5paik7ZiYmKGEuSC5MPU1hdGguZmxvb3IoZikpfWNhdGNoKGcpe2EuTj0KITB9aWYoYS5OKXJldHVybiExO3RyeXtpZighVHkoYikpcmV0dXJuITF9Y2F0Y2goZyl7cmV0dXJuIGEuTj0hMCwhMX1yZXR1cm4hMH0scXo9ZnVuY3Rpb24oYSxiLGMpe2lmKHB6KGEsYikpdHJ5e3ZhciBkPVV5KGIsYyk7aWYoZClyZXR1cm4gTWF0aC5mbG9vcihkKX1jYXRjaChlKXthLk49ITB9fSxzej1mdW5jdGlvbigpe3ZhciBhPXJ6KCk7cHooYSx7c3RhZ2U6SXkuWC5taX0pfSx0ej1mdW5jdGlvbigpe3ZhciBhPXJ6KCksYj1xeihhLHtzdGFnZTpJeS5YLlhrfSxJeS5YLm1pKTtiIT09dm9pZCAwJiYoYS5ILlM9Yil9LHV6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKTtweihhLHtzdGFnZTpJeS5YLm5pfSl9LHZ6PWZ1bmN0aW9uKGEsYil7dmFyIGM9cnooKTtweihjLHtzdGFnZTpJeS5YLkJoLGV2ZW50SWQ6YX0pO2MuS1thXSYmYy5LW2FdLm5hbWV8fGx6KGMsYSwibmFtZSIsU2IoYiwiZ3RtLiIpP2I6IioiKX0sd3o9ZnVuY3Rpb24oYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5Llgudm0sCmV2ZW50SWQ6YX0sSXkuWC5CaCk7YyE9PXZvaWQgMCYmbHooYixhLCJTIixjKX0seXo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1yeigpLGQ9cXooYyx7c3RhZ2U6SXkuWC50bSxldmVudElkOmF9LEl5LlguQmgpO2QhPT12b2lkIDAmJmx6KGMsYSwiRSIsZCk7aWYoYj09PSJndG0ubG9hZCIpe3ZhciBlPXF6KGMse3N0YWdlOkl5LlguV2t9LEl5LlguWmcpO2UhPT12b2lkIDAmJihjLkguRT1lKTtpbyhsbyhjby5pYS5aYiksZnVuY3Rpb24oKXtpZighYy5OJiZPeSgpJiZFKDUpKXt2YXIgZj14eigpO2YhPT12b2lkIDAmJihjLkguRj1NYXRoLmZsb29yKGYpKTt0cnl7Zm9yKHZhciBnPWl6KHtldmVudElkOjAsdGY6ITF9KSxoPVtdLGw9bShnKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bShuLnZhbHVlKSxxPXAubmV4dCgpLnZhbHVlLHI9cC5uZXh0KCkudmFsdWU7aC5wdXNoKCImIitxKyI9IityKX12YXIgdD1DcCgpLHU9W1tmayhqeiksIi9hP3Y9MyZ0PWwiLCImcGlkPSIrCkRiKCkudG9TdHJpbmcoKSwiJnJ2PSIrRSgxNCksdD8iJnRhZ19leHA9Iit0OiIiLGguam9pbigiIildLmpvaW4oIiIpLCImZ3RtPSIsZHUoKSxveihjKV0uam9pbigiIik7aWYodS5sZW5ndGg+MjAyMil7dmFyIHY9TWF0aC5tYXgodS5sYXN0SW5kZXhPZigiLlRTIiwyMDIyKSx1Lmxhc3RJbmRleE9mKCJ+IiwyMDIyKSk7dT11LnNsaWNlKDAsdil9WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1Nn0sdSl9Y2F0Y2goeCl7fX19KX19LHp6O2Z1bmN0aW9uIHJ6KCl7enp8fCh6ej1uZXcga3opO3JldHVybiB6en1mdW5jdGlvbiBteigpe3RyeXt2YXIgYTtyZXR1cm4oKGE9cmQoKSk9PW51bGw/dm9pZCAwOmEuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdKS5kb21JbnRlcmFjdGl2ZX1jYXRjaChiKXt9fQpmdW5jdGlvbiBueihhLGIpe3JldHVybiBPYmplY3Qua2V5cyhiKS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGJbY119KS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGFbY10hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuKCIiKyhjPT09InRhZyI/IiI6YykpLmNvbmNhdChhW2NdLnRvU3RyaW5nKCkpfSkuam9pbigiLiIpfWZ1bmN0aW9uIEF6KGEpe3ZhciBiPXJ6KCksYz1xeihiLHtzdGFnZTpJeS5YLkVtLGV2ZW50SWQ6YX0sSXkuWC5qZCk7YyE9PXZvaWQgMCYmYi5aLnB1c2goYyl9ZnVuY3Rpb24gQnooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5LlguRWssZXZlbnRJZDphfSxJeS5YLmpkKTtjIT09dm9pZCAwJiZiLlIucHVzaChjKX1mdW5jdGlvbiBDeihhKXt2YXIgYj1yeigpO3B6KGIse3N0YWdlOkl5LlguVGksZXZlbnRJZDphfSl9CmZ1bmN0aW9uIER6KGEpe3ZhciBiPXJ6KCksYz1xeihiLHtzdGFnZTpJeS5YLnNtLGV2ZW50SWQ6YX0sSXkuWC5UaSk7YyE9PXZvaWQgMCYmbHooYixhLCJWIixjKX1mdW5jdGlvbiB4eigpe3RyeXt2YXIgYSxiO3JldHVybihiPShhPXJkKCkpPT1udWxsP3ZvaWQgMDphLmdldEVudHJpZXNCeVR5cGUoInBhaW50IikuZmluZChmdW5jdGlvbihjKXtyZXR1cm4gYy5uYW1lPT09ImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQifSkpPT1udWxsP3ZvaWQgMDpiLnN0YXJ0VGltZX1jYXRjaChjKXt9fWZ1bmN0aW9uIEV6KGEsYil7dmFyIGM9cnooKTtweihjLHtzdGFnZTpJeS5YLnhqLGV2ZW50SWQ6YS5pZCx0YWdJZDpOdW1iZXIoYltHZi55al0pfSl9CmZ1bmN0aW9uIEZ6KGEsYixjKXt2YXIgZD1yeigpLGU9ZG4oYiksZj1OdW1iZXIoYltHZi55al0pLGc9cXooZCx7c3RhZ2U6YyxldmVudElkOmEuaWQsdGFnSWQ6Zn0sSXkuWC54aik7aWYoZyE9PXZvaWQgMCYmZC5LW2EuaWRdKXt2YXIgaD1kLktbYS5pZF0udGFnfHwiIixsLG49KGw9TXlbY10pIT1udWxsP2w6IjEiLHA9bmV3IFJlZ0V4cCgiVFNcXGQiK2UrIi5USSIrZikscT0iVFMiK24rZSsiLlRJIitmKyIuVEUiK2c7aC5zZWFyY2gocCk+PTA/biE9PSIxIiYmbHooZCxhLmlkLCJ0YWciLGgucmVwbGFjZShwLHEucmVwbGFjZSgiLlRFIitnLCIiKSkpOihseihkLGEuaWQsInRhZyIsKGg/aCsiLiI6IiIpK3EpLGU9PT0iaHRtbCImJihkLkguSFRDKz0xKSxkLkguVEMrPTEpfX07dmFyIEt6PXtnajp7YnA6IjEiLHVxOiIyIixWcToiMyJ9fTsKdmFyIEx6PXt9LE16PU9iamVjdC5mcmVlemUoKEx6W0YuRC5maF09MSxMeltGLkQuZ2hdPTEsTHpbRi5ELkJkXT0xLEx6W0YuRC5DZF09MSxMeltGLkQuUmNdPTEsTHpbRi5ELnNpXT0xLEx6W0YuRC51aV09MSxMeltGLkQuQ2xdPTEsTHpbRi5ELmloXT0xLEx6W0YuRC5DZl09MSxMeltGLkQuRGZdPTEsTHpbRi5ELkVmXT0xLEx6W0YuRC5IYV09MSxMeltGLkQuRmZdPTEsTHpbRi5ELkZkXT0xLEx6W0YuRC51Y109MSxMeltGLkQuSGRdPTEsTHpbRi5ELkxiXT0xLEx6W0YuRC5DYl09MSxMeltGLkQuVGJdPTEsTHpbRi5ELm5iXT0xLEx6W0YuRC5lYl09MSxMeltGLkQuR2VdPTEsTHpbRi5ELmtoXT0xLEx6W0YuRC5PYV09MSxMeltGLkQuT3BdPTEsTHpbRi5ELlNwXT0xLEx6W0YuRC5JZV09MSxMeltGLkQuR2ldPTEsTHpbRi5ELlFmXT0xLEx6W0YuRC5UYV09MSxMeltGLkQuWWNdPTEsTHpbRi5ELlpjXT0xLEx6W0YuRC50Yl09MSxMeltGLkQuUWRdPTEsTHpbRi5ELlJkXT0xLEx6W0YuRC5TZF09CjEsTHpbRi5ELk5lXT0xLEx6W0YuRC56YV09MSxMeltGLkQuVWFdPTEsTHpbRi5ELldsXT0xLEx6W0YuRC5YbF09MSxMeltGLkQuWWxdPTEsTHpbRi5ELlpsXT0xLEx6W0YuRC5XYl09MSxMeltGLkQuVGRdPTEsTHpbRi5ELlhiXT0xLEx6W0YuRC5kZF09MSxMeltGLkQuVWRdPTEsTHpbRi5ELlFlXT0xLEx6W0YuRC5QYV09MSxMeltGLkQueWNdPTEsTHpbRi5ELlZkXT0xLEx6W0YuRC56Y109MSxMeltGLkQuQWNdPTEsTHpbRi5ELmZiXT0xLEx6W0YuRC5RYV09MSxMeikpLE56PXt9LE96PShOeltGLkQuVWNdPTEsTnpbRi5ELlBwXT0xLE56W0YuRC5IZV09MSxOeltGLkQucmldPTEsTnoub3JlZj0xLE56KTt2YXIgUHosUXo7CmZ1bmN0aW9uIFJ6KGEsYil7dmFyIGM9YVtHZi5ZYl0sZD1iJiZiLmV2ZW50O2lmKCFjKXRocm93IEVycm9yKCJFcnJvcjogTm8gZnVuY3Rpb24gbmFtZSBnaXZlbiBmb3IgZnVuY3Rpb24gY2FsbC4iKTt2YXIgZT1ReltjXSxmPXt9LGc7Zm9yKGcgaW4gYSlhLmhhc093blByb3BlcnR5KGcpJiYoU2IoZywidnRwXyIpP2ZbZSE9PXZvaWQgMD9nOmcuc3Vic3RyaW5nKDQpXT1hW2ddOmc9PT1HZi5GcS50b1N0cmluZygpJiYoZltlIT09dm9pZCAwPyJ2dHBfZ3RtR2VuZXJhdGVkVGFnZ2luZ01ldGFkYXRhIjpnXT1hW2ddKSk7SWYoNjEpJiZlJiYoZi52dHBfZXh0cmFFeHBlcmltZW50SWRzPSEwKTtlJiZkJiZkLmNhY2hlZE1vZGVsVmFsdWVzJiYoZi52dHBfZ3RtQ2FjaGVkVmFsdWVzPWQuY2FjaGVkTW9kZWxWYWx1ZXMpO2ImJmUmJihmLnZ0cF9ndG1FbnRpdHlJbmRleD1iLmluZGV4LGYudnRwX2d0bUVudGl0eU5hbWU9Yi5uYW1lKTtyZXR1cm4gZSE9PXZvaWQgMD9lKGYpOlB6KGMsZiwKYil9dmFyIFR6PWZ1bmN0aW9uKCl7dmFyIGE9U3o7aWYoTSg1ODUpJiZmbi5LKXt2YXIgYj1FKDUpLmluZGV4T2YoIkdUTS0iKT09PTAmJklmKDYyKSxjLGQ9KChjPUZrKCkpPT1udWxsP3ZvaWQgMDpjLnNvdXJjZSk9PT0xO2ImJiFkfHxhLkh8fChhLkg9ITAsVW0oImFibCIsIjEiKSx0bygpKX19LFN6PW5ldyBmdW5jdGlvbigpe3RoaXMuSD0hMX07dmFyIFV6PWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSD1hO3RoaXMuaW5kZXg9Yjt0aGlzLnRhZ3M9Yzt0aGlzLm1hY3Jvcz1kO3RoaXMubmFtZT1TdHJpbmcodGhpcy5IW0dmLlJtXXx8IiIpfTsKVXoucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEsYil7aWYoIWJbdGhpcy5pbmRleF0mJiFhLmlzQmxvY2tlZCh0aGlzLkgpKXtiW3RoaXMuaW5kZXhdPSEwO3RoaXMuSFtHZi5wbC50b1N0cmluZygpXSYmVHooKTt2YXIgYz10aGlzLm5hbWUsZDt0cnl7dmFyIGU9e30sZjtmb3IoZiBpbiB0aGlzLkgpdGhpcy5ILmhhc093blByb3BlcnR5KGYpJiYoZVtmXT1lbCh0aGlzLkhbZl0sYSx0aGlzLnRhZ3MsdGhpcy5tYWNyb3MsYikpO2UudnRwX2d0bUV2ZW50SWQ9YS5pZDthLnByaW9yaXR5SWQmJihlLnZ0cF9ndG1Qcmlvcml0eUlkPWEucHJpb3JpdHlJZCk7dmFyIGc9ZD1SeihlLHtldmVudDphLGluZGV4OnRoaXMuaW5kZXgsdHlwZToyLG5hbWU6Y30pO2VbR2YuWmtdJiZ0eXBlb2YgZz09PSJzdHJpbmciJiYoZz1lW0dmLlprXT09PTE/Zy50b0xvd2VyQ2FzZSgpOmcudG9VcHBlckNhc2UoKSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5haCkmJihnPVlmKDE4KT9lW0dmLmFoXT09PTE/ClZmKGcsIlBFUklPRCIpOmVbR2YuYWhdPT09Mj9WZihnLCJDT01NQSIpOlZmKGcsIkFVVE9NQVRJQyIpOmVbR2YuYWhdPT09MT9WZihnLCJQRVJJT0QiKTpWZihnLCJDT01NQSIpKTtlLmhhc093blByb3BlcnR5KEdmLmJsKSYmZz09PW51bGwmJihnPWVbR2YuYmxdKTtlLmhhc093blByb3BlcnR5KEdmLmlsKSYmZz09PXZvaWQgMCYmKGc9ZVtHZi5pbF0pO2UuaGFzT3duUHJvcGVydHkoR2YuZXApJiYoZz1KYihnKSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5mbCkmJmc9PT0hMCYmKGc9ZVtHZi5mbF0pO2UuaGFzT3duUHJvcGVydHkoR2YuYWwpJiZnPT09ITEmJihnPWVbR2YuYWxdKTtkPWd9Y2F0Y2goaCl7YS5sb2dNYWNyb0Vycm9yJiZhLmxvZ01hY3JvRXJyb3IoaCxOdW1iZXIodGhpcy5pbmRleCksYyksZD0hMX1iW3RoaXMuaW5kZXhdPSExO3JldHVybiBkfX07VXoucHJvdG90eXBlLkZnPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sdGhpcy5IKX07dmFyIFZ6PWZ1bmN0aW9uKGEsYixjKXt0aGlzLkg9YTt0aGlzLnRhZ3M9Yjt0aGlzLm1hY3Jvcz1jfTtWei5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSxiKXt0cnl7Zm9yKHZhciBjPXt9LGQ9bShPYmplY3Qua2V5cyh0aGlzLkgpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtjW2ZdPWY9PT0iZnVuY3Rpb24iP3RoaXMuSFtmXTplbCh0aGlzLkhbZl0sYSx0aGlzLnRhZ3MsdGhpcy5tYWNyb3MsYil9cmV0dXJuIGNsKGMpfWNhdGNoKGcpe0pTT04uc3RyaW5naWZ5KHRoaXMuSCl9cmV0dXJuIDJ9O1Z6LnByb3RvdHlwZS5GZz1mdW5jdGlvbigpe3JldHVybiBuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHRoaXMuSCl9O3ZhciBXej1mdW5jdGlvbihhLGIpe3RoaXMuaW5kZXg9Yjt0aGlzLk49W107dGhpcy5SPVtdO3RoaXMuSz1bXTt0aGlzLkg9W107dGhpcy5uYW1lPSIiO2Zvcih2YXIgYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1tKGQudmFsdWUpLGY9ZS5uZXh0KCkudmFsdWUsZz15YShlKSxoPWYsbD1nO2g9PT0iaWYiP3RoaXMuTj1sOmg9PT0idW5sZXNzIj90aGlzLlI9bDpoPT09ImFkZCI/dGhpcy5LPWw6aD09PSJibG9jayI/dGhpcy5IPWw6aD09PSJydWxlTmFtZSImJih0aGlzLm5hbWU9bFswXSl9fTsKV3oucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEsYil7dmFyIGM9WHoodGhpcyxiKSxkPVtdLGU9W107Yz8oZC5wdXNoLmFwcGx5KGQsdyh0aGlzLkspKSxlLnB1c2guYXBwbHkoZSx3KHRoaXMuSCkpKTpjPT09bnVsbCYmZS5wdXNoLmFwcGx5KGUsdyh0aGlzLkgpKTtyZXR1cm57ZmlyaW5nVGFnczpkLGJsb2NraW5nVGFnczplfX07CnZhciBYej1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1tKGEuTiksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWIoZC52YWx1ZSk7aWYoZT09PTApcmV0dXJuITE7aWYoZT09PTIpcmV0dXJuIG51bGx9Zm9yKHZhciBmPW0oYS5SKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9YihnLnZhbHVlKTtpZihoPT09MilyZXR1cm4gbnVsbDtpZihoPT09MSlyZXR1cm4hMX1yZXR1cm4hMH07V3oucHJvdG90eXBlLmdldE5hbWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5uYW1lfTt2YXIgWXo9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5JYT1hO3RoaXMuaW5kZXg9Yjt0aGlzLnRhZ3M9Yzt0aGlzLm1hY3Jvcz1kO3RoaXMuTz1TdHJpbmcodGhpcy5JYVtHZi5ZYl0pO3RoaXMubmFtZT1TdHJpbmcodGhpcy5JYVtHZi5SbV18fCIiKTt0aGlzLnRhZ0lkPU51bWJlcih0aGlzLklhW0dmLnlqXSl9OwpZei5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSxiLGMpe2M9Yz09PXZvaWQgMD97fTpjO3ZhciBkLGU9YztlPWU9PT12b2lkIDA/e306ZTt2YXIgZj17fSxnO2ZvcihnIGluIHRoaXMuSWEpdGhpcy5JYS5oYXNPd25Qcm9wZXJ0eShnKSYmKGZbZ109ZWwodGhpcy5JYVtnXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxbXSkpO2Q9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxmLGUpO2QudnRwX2d0bVRhZ0lkPXRoaXMudGFnSWQ7dGhpcy5JYVtHZi5wbC50b1N0cmluZygpXSYmVHooKTtSeihkLHtldmVudDphLGluZGV4OnRoaXMuaW5kZXgsdHlwZToxLG5hbWU6dGhpcy5uYW1lfSl9O1l6LnByb3RvdHlwZS5GZz1mdW5jdGlvbigpe3JldHVybiBuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHRoaXMuSWEpfTsKdmFyIFp6PWZ1bmN0aW9uKGEsYil7aWYoYS5JYVtHZi50bl0pcmV0dXJuIGVsKGEuSWFbR2YudG5dLGIsYS50YWdzLGEubWFjcm9zLFtdKX0sJHo9ZnVuY3Rpb24oYSxiKXtpZihhLklhW0dmLkRuXSlyZXR1cm4gZWwoYS5JYVtHZi5Ebl0sYixhLnRhZ3MsYS5tYWNyb3MsW10pfSxhQT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuSWFbR2YuY3BdO2lmKGMpcmV0dXJuIGVsKGMsYixhLnRhZ3MsYS5tYWNyb3MsW10pfTtZei5wcm90b3R5cGUuZ2V0TWV0YWRhdGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGVsKHRoaXMuSWFbR2YuTUVUQURBVEFdLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLFtdKX07WXoucHJvdG90eXBlLmdldE5hbWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5uYW1lfTt2YXIgYkE9ZnVuY3Rpb24oKXt0aGlzLm1hY3Jvcz1bXTt0aGlzLnJ1bGVzPVtdO3RoaXMucHJlZGljYXRlcz1bXTt0aGlzLnRhZ3M9W107dGhpcy52az1bXX07YkEucHJvdG90eXBlLmdldFJ1bGVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucnVsZXN9O3ZhciBjQT1uZXcgYkE7ZnVuY3Rpb24gZEEoYSxiLGMsZCl7dmFyIGU9V2MoKSxmO2lmKGU9PT0xKWE6e3ZhciBnPUUoMyk7Zz1nLnRvTG93ZXJDYXNlKCk7Zm9yKHZhciBoPSJodHRwczovLyIrZyxsPSJodHRwOi8vIitnLG49MSxwPUIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpLHE9MDtxPHAubGVuZ3RoJiZxPDEwMDtxKyspe3ZhciByPXBbcV0uc3JjO2lmKHIpe3I9ci50b0xvd2VyQ2FzZSgpO2lmKHIuaW5kZXhPZihsKT09PTApe2Y9MzticmVhayBhfW49PT0xJiZyLmluZGV4T2YoaCk9PT0wJiYobj0yKX19Zj1ufWVsc2UgZj1lO3JldHVybihmPT09Mnx8ZHx8Imh0dHA6IiE9PUEubG9jYXRpb24ucHJvdG9jb2w/YTpiKStjfTt2YXIgZUE9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSz17fTt0aGlzLkg9e307ZnooZnVuY3Rpb24oYil7dmFyIGM9W10sZDtmb3IoZCBpbiBhLkspT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEuSyxkKSYmYy5wdXNoKGQrIn4iK2EuS1tkXSk7dmFyIGU9W10sZjtmb3IoZiBpbiBhLkgpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEuSCxmKSYmZS5wdXNoKGYrIn4iK2EuSFtmXSk7Yi50ZiYmKGEuSz17fSxhLkg9e30pO3ZhciBnPVtdO2MubGVuZ3RoPjAmJmcucHVzaChbImJjcyIsYy5qb2luKCIuIildKTtlLmxlbmd0aD4wJiZnLnB1c2goWyJiZXQiLGUuam9pbigiLiIpXSk7cmV0dXJuIGd9KX0sZkE7ZnVuY3Rpb24gZ0EoKXtmQXx8KGZBPW5ldyBlQSl9O2Z1bmN0aW9uIGhBKGEsYixjLGQsZSl7aWYoIUVrKGEpKXtkLmxvYWRFeHBlcmltZW50cz15aigpO0hrKGEsZCxlKTt2YXIgZj1pQShhKSxnPWZ1bmN0aW9uKCl7b2soKS5jb250YWluZXJbYV0mJihvaygpLmNvbnRhaW5lclthXS5zdGF0ZT0zKTtqQSgpfSxoPXtkZXN0aW5hdGlvbklkOmEsZW5kcG9pbnQ6MH07aWYoV2ooKSl7dmFyIGw9WGooKSxuPWwrIi8iK2tBKGYsYSk7Wm4oaCxuLHZvaWQgMCxmdW5jdGlvbigpe2xBKGEsbixsKyIvIitmLGgsZyl9KX1lbHNle3ZhciBwPVNiKGEsIkdUTS0iKSxxPWRrKCkscj1jPyIvZ3RhZy9qcyI6Ii9ndG0uanMiLHQ9bUEoYixyK2YsYSk7aWYoIXQpe3ZhciB1PUUoMykrcjtxJiZLYyYmcCYmKHU9S2MucmVwbGFjZSgvXig/Omh0dHBzPzpcL1wvKT8vaSwiIikuc3BsaXQoL1s/I10vKVswXSk7dD1kQSgiaHR0cHM6Ly8iLCJodHRwOi8vIix1K2YpfVpuKGgsdCx2b2lkIDAsZyl9fX0KZnVuY3Rpb24gakEoKXtLaygpfHxHYihMaygpLGZ1bmN0aW9uKGEsYil7bkEoYSxiLnRyYW5zcG9ydFVybCxiLmNvbnRleHQpO1AoOTIpfSl9ZnVuY3Rpb24gbkEoYSxiLGMsZCl7aWYoIUdrKGEpKWlmKGMubG9hZEV4cGVyaW1lbnRzfHwoYy5sb2FkRXhwZXJpbWVudHM9eWooKSksS2soKSlKayhhLGIsYyxkKTtlbHNle0lrKGEsYyxkKTt2YXIgZT17ZGVzdGluYXRpb25JZDphLGVuZHBvaW50OjB9O2lmKFdqKCkpe3ZhciBmPVhqKCksZz0iZ3RkIitpQShhLCEwKSxoPWYrIi8iK2tBKGcsYSk7Wm4oZSxoLHZvaWQgMCxmdW5jdGlvbigpe2xBKGEsaCxmKyIvIitnLGUpfSl9ZWxzZXt2YXIgbD0iL2d0YWcvZGVzdGluYXRpb24iK2lBKGEsITApLG49bUEoYixsLGEpO258fChuPWRBKCJodHRwczovLyIsImh0dHA6Ly8iLEUoMykrbCkpO1puKGUsbil9fX0KZnVuY3Rpb24gbEEoYSxiLGMsZCxlKXtpZihNKDQxMykpe2dBKCk7dmFyIGY9ZkE7aWYoZm4uTil7dmFyIGc9QS5wZXJmb3JtYW5jZSxoPS0xO2lmKGcmJmcuZ2V0RW50cmllc0J5VHlwZSl7dmFyIGw9UmooYikuaHJlZixuPWcuZ2V0RW50cmllc0J5TmFtZShsKS5wb3AoKTtpZighbilmb3IodmFyIHA9Zy5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpLHE9MDtxPHAubGVuZ3RoO3ErKyl7dmFyIHI9cFtxXTtpZihyLm5hbWUmJnIubmFtZS5pbmRleE9mKGIpIT09LTEpe249cjticmVha319biYmbi5yZXNwb25zZVN0YXR1cyE9PXZvaWQgMCYmKGg9bi5yZXNwb25zZVN0YXR1cyl9Zi5LW2FdPWh9UCgxOTApO3ZhciB0PW5tKGptLmJhLmtqKXx8e307dFthXT0hMDttbShqbS5iYS5raix0KTt2YXIgdT1jKyhjLmluZGV4T2YoIj8iKT09PS0xPyI/Zj0xIjoiJmY9MSIpO2U/Wm4oZCx1LHZvaWQgMCxlKTpabihkLHUpfWVsc2UgZSYmZSgpfQpmdW5jdGlvbiBpQShhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPSI/aWQ9IitlbmNvZGVVUklDb21wb25lbnQoYSksZD1FKDE5KTtkIT09ImRhdGFMYXllciImJihjKz0iJmw9IitkKTt2YXIgZT1TYihhLCJHVE0tIik7aWYoIWV8fGIpYys9IiZjeD1jIjtlJiZJZig2MikmJihjKz0iJmdvb2dsZV9vbmx5PXRydWUiKTt2YXIgZj1jLGcsaD17RG86SmYoMTUpLElvOkUoMTQpfTtnPUNmKGgpO2M9ZisoIiZndG09IitnKTtkaygpJiYoYys9IiZzaWduPSIrQWoucWopO3ZhciBsPWMsbj1KZig1NCk7aWYobj09PTEpe2wrPSImZnBzPWZjIjt2YXIgcD1FKDYwKTtwJiYobCs9IiZnZGV2PSIrcCl9ZWxzZSBuPT09MiYmKGwrPSImZnBzPWZlIik7cmV0dXJuIGx9CmZ1bmN0aW9uIGtBKGEsYil7aWYoIU0oNDEzKXx8IVhqKCkpcmV0dXJuIGE7dmFyIGM9RSg1OCk7aWYoIWMpcmV0dXJuIFAoMTgyKSxhO3RyeXt2YXIgZD1OYigpLGU9RWYoYSxjKSxmPU5iKCktZDtnQSgpO3ZhciBnPWZBO2ZuLk4mJihnLkhbYl09Zik7cmV0dXJuIGV9Y2F0Y2goaCl7cmV0dXJuIFAoMTgzKSxhfX1mdW5jdGlvbiBtQShhLGIsYyl7aWYoYWsoKSYmYSl7dmFyIGQ9RSg1OCksZT1YaigpO2lmKGQmJmUpdHJ5e3ZhciBmPU5iKCk7Yj1lKyIvIitFZihiLGQpO3ZhciBnPU5iKCktZjtnQSgpO3ZhciBoPWZBO2ZuLk4mJihoLkhbY109Zyl9Y2F0Y2gobCl7UCgxODMpfXJldHVybiBZaihhLGIpfX07dmFyIHBBPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLks9bmV3IEZiO3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5SPXtuYW1lOkUoMTkpLHNldDpmdW5jdGlvbihiLGMpe0VkKFZiKGIsYyksYS5IKTtvQShhKX0sZ2V0OmZ1bmN0aW9uKGIpe3JldHVybiBhLmdldChiLDIpfSxyZXNldDpmdW5jdGlvbigpe2EuSz1uZXcgRmI7YS5IPXt9O29BKGEpfX19O3BBLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYiE9Mj90aGlzLksuZ2V0KGEpOnFBKHRoaXMsYSl9O3ZhciBxQT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Yi5zcGxpdCgiLiIpO2M9Y3x8W107Zm9yKHZhciBlPWEuSCxmPTA7ZjxkLmxlbmd0aDtmKyspe2lmKGU9PT1udWxsKXJldHVybiExO2lmKGU9PT12b2lkIDApYnJlYWs7ZT1lW2RbZl1dO2lmKGMuaW5kZXhPZihlKSE9PS0xKXJldHVybn1yZXR1cm4gZX07CnBBLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLk4uaGFzT3duUHJvcGVydHkoYSl8fCh0aGlzLksuc2V0KGEsYiksRWQoVmIoYSxiKSx0aGlzLkgpLG9BKHRoaXMpKX07dmFyIHNBPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPVsiZ3RtLmFsbG93bGlzdCIsImd0bS5ibG9ja2xpc3QiLCJndG0ud2hpdGVsaXN0IiwiZ3RtLmJsYWNrbGlzdCIsInRhZ1R5cGVCbGFja2xpc3QiXSxiPXJBLGM9MDtjPGEubGVuZ3RoO2MrKyl7dmFyIGQ9YVtjXSxlPWIuZ2V0KGQsMSk7aWYoQXJyYXkuaXNBcnJheShlKXx8Q2QoZSkpZT1FZChlLG51bGwpO2IuTltkXT1lfX0sb0E9ZnVuY3Rpb24oYSxiKXtHYihhLk4sZnVuY3Rpb24oYyxkKXthLksuc2V0KGMsZCk7RWQoVmIoYyksYS5IKTtFZChWYihjLGQpLGEuSCk7YiYmZGVsZXRlIGEuTltjXX0pfSxyQT1uZXcgcEEsdEE9ckEuUjtmdW5jdGlvbiB1QShhLGIpe3JldHVybiByQS5nZXQoYSxiKX0KZnVuY3Rpb24gdkEoYSxiKXt2YXIgYz1iPT09dm9pZCAwPzI6YixkPXJBLGUsZj0oYz09PXZvaWQgMD8yOmMpIT09MT9xQShkLGEpOmQuSy5nZXQoYSk7QWQoZik9PT0iYXJyYXkifHxBZChmKT09PSJvYmplY3QiP2U9RWQoZixudWxsKTplPWY7cmV0dXJuIGV9O3ZhciB3QT1uZXcgUmVnRXhwKC9eKC4qXC4pPyhnb29nbGV8eW91dHViZXxibG9nZ2VyfHdpdGhnb29nbGUpKFwuY29tPyk/KFwuW2Etel17Mn0pP1wuPyQvKSx4QT17Y2w6WyJlY2wiXSxjdXN0b21QaXhlbHM6WyJub25Hb29nbGVQaXhlbHMiXSxlY2w6WyJjbCJdLGVobDpbImhsIl0sZ2Fhd2M6WyJnb29ndGFnIl0saGw6WyJlaGwiXSxodG1sOlsiY3VzdG9tU2NyaXB0cyIsImN1c3RvbVBpeGVscyIsIm5vbkdvb2dsZVBpeGVscyIsIm5vbkdvb2dsZVNjcmlwdHMiLCJub25Hb29nbGVJZnJhbWVzIl0sY3VzdG9tU2NyaXB0czpbImh0bWwiLCJjdXN0b21QaXhlbHMiLCJub25Hb29nbGVQaXhlbHMiLCJub25Hb29nbGVTY3JpcHRzIiwibm9uR29vZ2xlSWZyYW1lcyJdLG5vbkdvb2dsZVBpeGVsczpbXSxub25Hb29nbGVTY3JpcHRzOlsibm9uR29vZ2xlUGl4ZWxzIl0sbm9uR29vZ2xlSWZyYW1lczpbIm5vbkdvb2dsZVBpeGVscyJdfSx5QT17Y2w6WyJlY2wiXSxjdXN0b21QaXhlbHM6WyJjdXN0b21TY3JpcHRzIiwKImh0bWwiXSxlY2w6WyJjbCJdLGVobDpbImhsIl0sZ2Fhd2M6WyJnb29ndGFnIl0saGw6WyJlaGwiXSxodG1sOlsiY3VzdG9tU2NyaXB0cyJdLGN1c3RvbVNjcmlwdHM6WyJodG1sIl0sbm9uR29vZ2xlUGl4ZWxzOlsiY3VzdG9tUGl4ZWxzIiwiY3VzdG9tU2NyaXB0cyIsImh0bWwiLCJub25Hb29nbGVTY3JpcHRzIiwibm9uR29vZ2xlSWZyYW1lcyJdLG5vbkdvb2dsZVNjcmlwdHM6WyJjdXN0b21TY3JpcHRzIiwiaHRtbCJdLG5vbkdvb2dsZUlmcmFtZXM6WyJjdXN0b21TY3JpcHRzIiwiaHRtbCIsIm5vbkdvb2dsZVNjcmlwdHMiXX0sekE9Imdvb2dsZSBjdXN0b21QaXhlbHMgY3VzdG9tU2NyaXB0cyBodG1sIG5vbkdvb2dsZVBpeGVscyBub25Hb29nbGVTY3JpcHRzIG5vbkdvb2dsZUlmcmFtZXMiLnNwbGl0KCIgIik7CmZ1bmN0aW9uIEFBKCl7dmFyIGE9dUEoImd0bS5hbGxvd2xpc3QiKXx8dUEoImd0bS53aGl0ZWxpc3QiKTthJiZQKDkpO0lmKDYyKSYmKGE9dm9pZCAwKTtCQSgpJiYoSWYoNjIpP1AoMTE2KTooUCgxMTcpLElmKDQ4KSYmKGE9W10sd2luZG93LmNvbnNvbGUmJndpbmRvdy5jb25zb2xlLmxvZyYmd2luZG93LmNvbnNvbGUubG9nKCJHVE0gYmxvY2tlZC4gU2VlIGdvLzEzNjg3NzI4LiIpKSkpO3ZhciBiPWEmJlJiKEtiKGEpLHhBKSxjPXVBKCJndG0uYmxvY2tsaXN0Iil8fHVBKCJndG0uYmxhY2tsaXN0Iik7Y3x8KGM9dUEoInRhZ1R5cGVCbGFja2xpc3QiKSkmJlAoMyk7Yz9QKDgpOmM9W107QkEoKSYmKGM9S2IoYyksYy5wdXNoKCJub25Hb29nbGVQaXhlbHMiLCJub25Hb29nbGVTY3JpcHRzIiwic2FuZGJveGVkU2NyaXB0cyIpKTtLYihjKS5pbmRleE9mKCJnb29nbGUiKT49MCYmUCgyKTt2YXIgZD1jJiZSYihLYihjKSx5QSksZT17fTtyZXR1cm4gZnVuY3Rpb24oZil7dmFyIGc9ZiYmCmZbR2YuWWJdO2lmKCFnfHx0eXBlb2YgZyE9PSJzdHJpbmciKXJldHVybiEwO2c9Zy5yZXBsYWNlKC9eXyovLCIiKTtpZihlW2ddIT09dm9pZCAwKXJldHVybiBlW2ddO3ZhciBoPWFsKDI3LGZ1bmN0aW9uKCl7cmV0dXJue319KVtnXXx8W10sbD0hMDthJiYobD1sJiZDQShnLGgsYikpO3ZhciBuPSExO2MmJihuPURBKGcsaCxkKSk7dmFyIHA9IWx8fG47IXAmJihoLmluZGV4T2YoInNhbmRib3hlZFNjcmlwdHMiKT09PS0xfHxiJiZiLmluZGV4T2YoInNhbmRib3hlZFNjcmlwdHMiKSE9PS0xPzA6RWIoZCx6QSkpJiYocD0hMCk7cmV0dXJuIGVbZ109cH19ZnVuY3Rpb24gQ0EoYSxiLGMpe2lmKGMuaW5kZXhPZihhKTwwKWlmKGImJmIubGVuZ3RoPjApZm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe2lmKGMuaW5kZXhPZihiW2RdKTwwKXJldHVybiBQKDExKSwhMX1lbHNlIHJldHVybiExO3JldHVybiEwfQpmdW5jdGlvbiBEQShhLGIsYyl7dmFyIGQ9Yy5pbmRleE9mKGEpPj0wO2lmKGQpcmV0dXJuIGQ7dmFyIGU9RWIoYyxifHxbXSk7ZSYmUCgxMCk7cmV0dXJuIGV9ZnVuY3Rpb24gQkEoKXtyZXR1cm4gd0EudGVzdChBLmxvY2F0aW9uJiZBLmxvY2F0aW9uLmhvc3RuYW1lKX07ZnVuY3Rpb24gRUEoYSl7Zm9yKHZhciBiPVtdLGM9W10sZD1GQShhKSxlPW0oY0EuZ2V0UnVsZXMoKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe2Zvcih2YXIgZz1mLnZhbHVlLmV2YWx1YXRlKGEsZCksaD1nLmZpcmluZ1RhZ3MsbD1nLmJsb2NraW5nVGFncyxuPTA7bjxoLmxlbmd0aDtuKyspYltoW25dXT0hMDtmb3IodmFyIHA9MDtwPGwubGVuZ3RoO3ArKyljW2xbcF1dPSEwfWZvcih2YXIgcT1bXSxyPTA7cjxjQS50YWdzLmxlbmd0aDtyKyspYltyXSYmIWNbcl0mJihxW3JdPSEwKTtyZXR1cm4gcX1mdW5jdGlvbiBGQShhKXt2YXIgYj1bXTtyZXR1cm4gZnVuY3Rpb24oYyl7YltjXT09PXZvaWQgMCYmKGJbY109Y0EucHJlZGljYXRlc1tjXS5ldmFsdWF0ZShhLFtdKSk7cmV0dXJuIGJbY119fTt2YXIgR0E9ZnVuY3Rpb24oKXt0aGlzLks9MDt0aGlzLkg9e319O0dBLnByb3RvdHlwZS5hZGRMaXN0ZW5lcj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Kyt0aGlzLks7dGhpcy5IW2FdPXRoaXMuSFthXXx8e307dGhpcy5IW2FdW1N0cmluZyhkKV09e2xpc3RlbmVyOmIscmY6Y307cmV0dXJuIGR9O0dBLnByb3RvdHlwZS5yZW1vdmVMaXN0ZW5lcj1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuSFthXSxkPVN0cmluZyhiKTtpZighY3x8IWNbZF0pcmV0dXJuITE7ZGVsZXRlIGNbZF07cmV0dXJuITB9O3ZhciBJQT1mdW5jdGlvbihhLGIpe3ZhciBjPVtdO0diKEhBLkhbYV0sZnVuY3Rpb24oZCxlKXtjLmluZGV4T2YoZS5saXN0ZW5lcik8MCYmKGUucmY9PT12b2lkIDB8fGIuaW5kZXhPZihlLnJmKT49MCkmJmMucHVzaChlLmxpc3RlbmVyKX0pO3JldHVybiBjfTtmdW5jdGlvbiBKQShhLGIsYyl7cmV0dXJue2VudGl0eVR5cGU6YSxpbmRleEluT3JpZ2luQ29udGFpbmVyOmIsbmFtZUluT3JpZ2luQ29udGFpbmVyOmMsb3JpZ2luQ29udGFpbmVySWQ6RSg1KSxvcmlnaW5DSWQ6dmsoKX19O2Z1bmN0aW9uIEtBKGEsYil7aWYoZGF0YS5lbnRpdGllcyl7dmFyIGM9ZGF0YS5lbnRpdGllc1thXTtpZihjKXJldHVybiBjW2JdfX07dmFyIE1BPWZ1bmN0aW9uKGEsYil7dGhpcy5IPSExO3RoaXMuUj1bXTt0aGlzLmV2ZW50RGF0YT17dGFnczpbXX07dGhpcy5aPSExO3RoaXMuSz10aGlzLk49MDtMQSh0aGlzLGEsYil9LE5BPWZ1bmN0aW9uKGEsYixjLGQpe2lmKENqLmhhc093blByb3BlcnR5KGIpfHxiPT09Il9fem9uZSIpcmV0dXJuLTE7dmFyIGU9e307Q2QoZCkmJihlPUVkKGQsZSkpO2UuaWQ9YztlLnN0YXR1cz0idGltZW91dCI7cmV0dXJuIGEuZXZlbnREYXRhLnRhZ3MucHVzaChlKS0xfSxPQT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLmV2ZW50RGF0YS50YWdzW2JdO2UmJihlLnN0YXR1cz1jLGUuZXhlY3V0aW9uVGltZT1kKX0sUEE9ZnVuY3Rpb24oYSl7aWYoIWEuSCl7Zm9yKHZhciBiPWEuUixjPTA7YzxiLmxlbmd0aDtjKyspYltjXSgpO2EuSD0hMDthLlIubGVuZ3RoPTB9fSxMQT1mdW5jdGlvbihhLGIsYyl7YiE9PXZvaWQgMCYmYS53ZyhiKTtjJiZBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtQQShhKX0sCk51bWJlcihjKSl9O01BLnByb3RvdHlwZS53Zz1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9UGIoZnVuY3Rpb24oKXtiZChmdW5jdGlvbigpe2EoRSg1KSxiLmV2ZW50RGF0YSl9KX0pO3RoaXMuSD9jKCk6dGhpcy5SLnB1c2goYyl9O3ZhciBRQT1mdW5jdGlvbihhKXthLk4rKztyZXR1cm4gUGIoZnVuY3Rpb24oKXthLksrKzthLlomJmEuSz49YS5OJiZQQShhKX0pfSxSQT1mdW5jdGlvbihhKXthLlo9ITA7YS5LPj1hLk4mJlBBKGEpfTtmdW5jdGlvbiBTQSgpe3JldHVybiBBW1RBKCldfQpmdW5jdGlvbiBUQSgpe3JldHVybiBBLkdvb2dsZUFuYWx5dGljc09iamVjdHx8ImdhIn12YXIgV0E9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9fTtmdW5jdGlvbiBYQSgpe2E6e3ZhciBhPUUoNSk7fX0KZnVuY3Rpb24gWUEoYSxiKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgYz1TQSgpLGQ9YyYmYy5nZXRCeU5hbWUmJmMuZ2V0QnlOYW1lKGEpO2lmKGQpe3ZhciBlPWQuZ2V0KCJzZW5kSGl0VGFzayIpO2Quc2V0KCJzZW5kSGl0VGFzayIsZnVuY3Rpb24oZil7dmFyIGc9Zi5nZXQoImhpdFBheWxvYWQiKSxoPWYuZ2V0KCJoaXRDYWxsYmFjayIpLGw9Zy5pbmRleE9mKCImdGlkPSIrYik8MDtsJiYoZi5zZXQoImhpdFBheWxvYWQiLGcucmVwbGFjZSgvJnRpZD1VQS1bMC05XSstWzAtOV0rLywiJnRpZD0iK2IpLCEwKSxmLnNldCgiaGl0Q2FsbGJhY2siLHZvaWQgMCwhMCkpO2UoZik7bCYmKGYuc2V0KCJoaXRQYXlsb2FkIixnLCEwKSxmLnNldCgiaGl0Q2FsbGJhY2siLGgsITApLGYuc2V0KCJfeF8xOSIsdm9pZCAwLCEwKSxlKGYpKX0pfX19O3ZhciBhQj1bImVzIiwiMSJdLGJCPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLmV2ZW50RGF0YT17fTt0aGlzLkg9e307ZnooZnVuY3Rpb24oYil7dmFyIGM7dmFyIGQ9Yi5ldmVudElkLGU9Yi50ZjtpZihhLmV2ZW50RGF0YVtkXSl7dmFyIGY9W107YS5IW2RdfHxmLnB1c2goYUIpO2YucHVzaC5hcHBseShmLHcoYS5ldmVudERhdGFbZF0pKTtlJiYoYS5IW2RdPSEwKTtjPWZ9ZWxzZSBjPVtdO3JldHVybiBjfSl9LGNCO2Z1bmN0aW9uIGRCKGEsYil7dmFyIGM7aWYoKGM9Y0IpIT1udWxsJiZmbi5OKXt2YXIgZD1jLmV2ZW50RGF0YSxlO2U9Yi5tYXRjaCgvXihndG18Z3RhZylcLi8pP2VuY29kZVVSSUNvbXBvbmVudChiKToiKiI7ZFthXT1bWyJlIixlXSxbImVpZCIsU3RyaW5nKGEpXV07Z3ooKTtleihhKX19O3ZhciBlQj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPXt9O3RoaXMuSz17fTtmeihmdW5jdGlvbihiKXt2YXIgYz1iLmV2ZW50SWQsZD1iLnRmLGU9W10sZj1hLkhbY118fFtdO2YubGVuZ3RoJiZlLnB1c2goWyJ0ciIsZi5qb2luKCIuIildKTt2YXIgZz1hLktbY118fFtdO2cubGVuZ3RoJiZlLnB1c2goWyJ0aSIsZy5qb2luKCIuIildKTtkJiYoZGVsZXRlIGEuSFtjXSxkZWxldGUgYS5LW2NdKTtyZXR1cm4gZX0pfSxmQjsKZnVuY3Rpb24gZ0IoYSxiLGMpe2ZCfHwoZkI9bmV3IGVCKTt2YXIgZD1mQjtpZihmbi5OJiZiKXt2YXIgZT1kbihiKTtkLkhbYV09ZC5IW2FdfHxbXTtkLkhbYV0ucHVzaChjK2UpO3ZhciBmPWJbR2YuWWJdO2lmKCFmKXRocm93IEVycm9yKCJFcnJvcjogTm8gZnVuY3Rpb24gbmFtZSBnaXZlbiBmb3IgZnVuY3Rpb24gY2FsbC4iKTt2YXIgZz0oUXpbZl0/IjEiOiIyIikrZTtkLktbYV09ZC5LW2FdfHxbXTtkLktbYV0ucHVzaChnKTtneigpO2V6KGEpfX07ZnVuY3Rpb24gaEIoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2lCKCkuYWRkUmVzdHJpY3Rpb24oMCxhLGIsYyl9ZnVuY3Rpb24gakIoKXt2YXIgYT12aygpO3JldHVybiBpQigpLmdldFJlc3RyaWN0aW9ucygwLGEpfWZ1bmN0aW9uIGtCKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6YztpQigpLmFkZFJlc3RyaWN0aW9uKDEsYSxiLGMpfWZ1bmN0aW9uIGxCKCl7dmFyIGE9dmsoKTtyZXR1cm4gaUIoKS5nZXRSZXN0cmljdGlvbnMoMSxhKX12YXIgbUI9ZnVuY3Rpb24oKXt0aGlzLmNvbnRhaW5lcj17fTt0aGlzLkg9e319LG5CPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5jb250YWluZXJbYl07Y3x8KGM9e19lbnRpdHk6e2ludGVybmFsOltdLGV4dGVybmFsOltdfSxfZXZlbnQ6e2ludGVybmFsOltdLGV4dGVybmFsOltdfX0sYS5jb250YWluZXJbYl09Yyk7cmV0dXJuIGN9OwptQi5wcm90b3R5cGUuYWRkUmVzdHJpY3Rpb249ZnVuY3Rpb24oYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7aWYoIWR8fCF0aGlzLkhbYl0pe3ZhciBlPW5CKHRoaXMsYik7YT09PTA/ZD9lLl9lbnRpdHkuZXh0ZXJuYWwucHVzaChjKTplLl9lbnRpdHkuaW50ZXJuYWwucHVzaChjKTphPT09MSYmKGQ/ZS5fZXZlbnQuZXh0ZXJuYWwucHVzaChjKTplLl9ldmVudC5pbnRlcm5hbC5wdXNoKGMpKX19OwptQi5wcm90b3R5cGUuZ2V0UmVzdHJpY3Rpb25zPWZ1bmN0aW9uKGEsYil7dmFyIGM9bkIodGhpcyxiKTtpZihhPT09MCl7dmFyIGQsZTtyZXR1cm5bXS5jb25jYXQodygoYz09bnVsbD92b2lkIDA6KGQ9Yy5fZW50aXR5KT09bnVsbD92b2lkIDA6ZC5pbnRlcm5hbCl8fFtdKSx3KChjPT1udWxsP3ZvaWQgMDooZT1jLl9lbnRpdHkpPT1udWxsP3ZvaWQgMDplLmV4dGVybmFsKXx8W10pKX1pZihhPT09MSl7dmFyIGYsZztyZXR1cm5bXS5jb25jYXQodygoYz09bnVsbD92b2lkIDA6KGY9Yy5fZXZlbnQpPT1udWxsP3ZvaWQgMDpmLmludGVybmFsKXx8W10pLHcoKGM9PW51bGw/dm9pZCAwOihnPWMuX2V2ZW50KT09bnVsbD92b2lkIDA6Zy5leHRlcm5hbCl8fFtdKSl9cmV0dXJuW119OwptQi5wcm90b3R5cGUuZ2V0RXh0ZXJuYWxSZXN0cmljdGlvbnM9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uQih0aGlzLGIpLGQsZTtyZXR1cm4gYT09PTA/KGM9PW51bGw/dm9pZCAwOihkPWMuX2VudGl0eSk9PW51bGw/dm9pZCAwOmQuZXh0ZXJuYWwpfHxbXTooYz09bnVsbD92b2lkIDA6KGU9Yy5fZXZlbnQpPT1udWxsP3ZvaWQgMDplLmV4dGVybmFsKXx8W119O21CLnByb3RvdHlwZS5yZW1vdmVFeHRlcm5hbFJlc3RyaWN0aW9ucz1mdW5jdGlvbihhKXt2YXIgYj1uQih0aGlzLGEpO2IuX2V2ZW50JiYoYi5fZXZlbnQuZXh0ZXJuYWw9W10pO2IuX2VudGl0eSYmKGIuX2VudGl0eS5leHRlcm5hbD1bXSk7dGhpcy5IW2FdPSEwfTtmdW5jdGlvbiBpQigpe3JldHVybiBraigiciIsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG1CfSl9O2Z1bmN0aW9uIG9CKGEsYixjLGQpe3ZhciBlPWNBLnRhZ3NbYV0sZj1wQihhLGIsYyxkKTtpZighZilyZXR1cm4gbnVsbDt2YXIgZz1aeihlLGMpO2lmKGcmJmcubGVuZ3RoKXt2YXIgaD1nWzBdO2Y9b0IoaC5pbmRleCx7b25TdWNjZXNzOmYsb25GYWlsdXJlOmguYm89PT0xP2IudGVybWluYXRlOmYsdGVybWluYXRlOmIudGVybWluYXRlfSxjLGQpfXJldHVybiBmfQpmdW5jdGlvbiBwQihhLGIsYyxkKXtmdW5jdGlvbiBlKCl7ZnVuY3Rpb24geSgpe2ltKDMpO3ZhciBTPU5iKCktTjtKQSgxLGEsZi5nZXROYW1lKCkpO2dCKGMuaWQsZywiNyIpO09BKGMubGQsRCwiZXhjZXB0aW9uIixTKTtmbi5IJiZGeihjLGcsSXkuWC51aik7SXx8KEk9ITAsbCgpKX1pZihmLklhW0dmLk9xXSlsKCk7ZWxzZXt2YXIgej1hQShmLGMpO2lmKHohPW51bGwpZm9yKHZhciBDPTA7Qzx6Lmxlbmd0aDtDKyspaWYoIVhvKHpbQ10pKXtsKCk7cmV0dXJufXZhciBEPU5BKGMubGQsZi5PLGYudGFnSWQsZi5nZXRNZXRhZGF0YShjKSksST0hMSxHPXt2dHBfZ3RtT25TdWNjZXNzOmZ1bmN0aW9uKCl7aWYoIUkpe0k9ITA7dmFyIFM9TmIoKS1OO2dCKGMuaWQsZywiNSIpO09BKGMubGQsRCwic3VjY2VzcyIsUyk7Zm4uSCYmRnooYyxnLEl5Llgud2opO2goKX19LHZ0cF9ndG1PbkZhaWx1cmU6ZnVuY3Rpb24oKXtpZighSSl7ST0hMDt2YXIgUz1OYigpLU47Z0IoYy5pZCxnLCI2Iik7Ck9BKGMubGQsRCwiZmFpbHVyZSIsUyk7Zm4uSCYmRnooYyxnLEl5LlgudmopO2woKX19fTtHLnZ0cF9ndG1FdmVudElkPWMuaWQ7Yy5wcmlvcml0eUlkJiYoRy52dHBfZ3RtUHJpb3JpdHlJZD1jLnByaW9yaXR5SWQpO2dCKGMuaWQsZywiMSIpO2ZuLkgmJkV6KGMsZyk7dmFyIE49TmIoKTt0cnl7Zi5ldmFsdWF0ZShjLGQsRyl9Y2F0Y2goUyl7eShTKX1mbi5IJiZGeihjLGcsSXkuWC5Dbil9fXZhciBmPWNBLnRhZ3NbYV0sZz1mLkZnKCksaD1iLm9uU3VjY2VzcyxsPWIub25GYWlsdXJlLG49Yi50ZXJtaW5hdGU7aWYoYy5pc0Jsb2NrZWQoZykpcmV0dXJuIG51bGw7dmFyIHA9JHooZixjKTtpZihwJiZwLmxlbmd0aCl7dmFyIHE9cFswXSxyPW9CKHEuaW5kZXgse29uU3VjY2VzczpoLG9uRmFpbHVyZTpsLHRlcm1pbmF0ZTpufSxjLGQpO2lmKCFyKXJldHVybiBudWxsO2g9cjtsPXEuYm89PT0yP246cn1pZihmLklhW0dmLmtuXXx8Zi5JYVtHZi5RcV0pe3ZhciB0PWYuSWFbR2Yua25dPwpjQS52azpjLnZrLHU9aCx2PWw7aWYoIXRbYV0pe3ZhciB4PXFCKGEsdCxQYihlKSk7aD14Lm9uU3VjY2VzcztsPXgub25GYWlsdXJlfXJldHVybiBmdW5jdGlvbigpe3RbYV0odSx2KX19cmV0dXJuIGV9ZnVuY3Rpb24gcUIoYSxiLGMpe3ZhciBkPVtdLGU9W107YlthXT1yQihkLGUsYyk7cmV0dXJue29uU3VjY2VzczpmdW5jdGlvbigpe2JbYV09c0I7Zm9yKHZhciBmPTA7ZjxkLmxlbmd0aDtmKyspZFtmXSgpfSxvbkZhaWx1cmU6ZnVuY3Rpb24oKXtiW2FdPXRCO2Zvcih2YXIgZj0wO2Y8ZS5sZW5ndGg7ZisrKWVbZl0oKX19fWZ1bmN0aW9uIHJCKGEsYixjKXtyZXR1cm4gZnVuY3Rpb24oZCxlKXthLnB1c2goZCk7Yi5wdXNoKGUpO2MoKX19ZnVuY3Rpb24gc0IoYSl7YSgpfWZ1bmN0aW9uIHRCKGEsYil7YigpfTt2YXIgd0I9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9W10sZD0wO2Q8Y0EudGFncy5sZW5ndGg7ZCsrKWlmKGFbZF0pe3ZhciBlPWNBLnRhZ3NbZF07dmFyIGY9UUEoYi5sZCk7dHJ5e3ZhciBnPW9CKGQse29uU3VjY2VzczpmLG9uRmFpbHVyZTpmLHRlcm1pbmF0ZTpmfSxiLGQpO2lmKGcpe3ZhciBoPVF6W2UuT107Yy5wdXNoKHtObzpkLHByaW9yaXR5T3ZlcnJpZGU6KGg/aC5wcmlvcml0eU92ZXJyaWRlfHwwOjApfHxLQShlLk8sMSl8fDAsZXhlY3V0ZTpnfSl9ZWxzZSB1QihkLGIpLGYoKX1jYXRjaChuKXtmKCl9fWMuc29ydCh2Qik7Zm9yKHZhciBsPTA7bDxjLmxlbmd0aDtsKyspY1tsXS5leGVjdXRlKCk7cmV0dXJuIGMubGVuZ3RoPjB9OwpmdW5jdGlvbiB4QihhLGIpe2lmKCFIQSlyZXR1cm4hMTt2YXIgYz1hWyJndG0udHJpZ2dlcnMiXSYmU3RyaW5nKGFbImd0bS50cmlnZ2VycyJdKSxkPUlBKGEuZXZlbnQsYz9TdHJpbmcoYykuc3BsaXQoIiwiKTpbXSk7aWYoIWQubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgZT0wO2U8ZC5sZW5ndGg7KytlKXt2YXIgZj1RQShiKTt0cnl7ZFtlXShhLGYpfWNhdGNoKGcpe2YoKX19cmV0dXJuITB9ZnVuY3Rpb24gdkIoYSxiKXt2YXIgYyxkPWIucHJpb3JpdHlPdmVycmlkZSxlPWEucHJpb3JpdHlPdmVycmlkZTtjPWQ+ZT8xOmQ8ZT8tMTowO3ZhciBmO2lmKGMhPT0wKWY9YztlbHNle3ZhciBnPWEuTm8saD1iLk5vO2Y9Zz5oPzE6ZzxoPy0xOjB9cmV0dXJuIGZ9CmZ1bmN0aW9uIHVCKGEsYil7aWYoZm4uTil7dmFyIGM9ZnVuY3Rpb24oZCl7dmFyIGU9Yi5pc0Jsb2NrZWQoY0EudGFnc1tkXS5GZygpKT8iMyI6IjQiLGY9WnooY0EudGFnc1tkXSxiKTtmJiZmLmxlbmd0aCYmYyhmWzBdLmluZGV4KTtnQihiLmlkLGNBLnRhZ3NbZF0uRmcoKSxlKTt2YXIgZz0keihjQS50YWdzW2RdLGIpO2cmJmcubGVuZ3RoJiZjKGdbMF0uaW5kZXgpfTtjKGEpfX12YXIgSEE7ZnVuY3Rpb24geUIoKXtIQXx8KEhBPW5ldyBHQSk7cmV0dXJuIEhBfQpmdW5jdGlvbiB6QihhKXt2YXIgYj1hWyJndG0udW5pcXVlRXZlbnRJZCJdLGM9YVsiZ3RtLnByaW9yaXR5SWQiXSxkPWFbImd0bS5wcmlvcml0eVF1ZXVlIl0sZT1hLmV2ZW50O2ZuLkgmJnZ6KGIsZSk7aWYoZT09PSJndG0uanMiKXtpZigkaygxMykpcmV0dXJuITE7WmsoMTMsITApfXZhciBmPSExLGc9bEIoKSxoPUVkKGEsbnVsbCk7aWYoIWcuZXZlcnkoZnVuY3Rpb24odSl7cmV0dXJuIHUoe29yaWdpbmFsRXZlbnREYXRhOmh9KX0pKXtpZihlIT09Imd0bS5qcyImJmUhPT0iZ3RtLmluaXQiJiZlIT09Imd0bS5pbml0X2NvbnNlbnQiKXJldHVybiExO2Y9ITB9ZEIoYixlKTt2YXIgbD1hLmV2ZW50Q2FsbGJhY2ssbj1hLmV2ZW50VGltZW91dCxwPXtpZDpiLHByaW9yaXR5SWQ6Yyxwcmlvcml0eVF1ZXVlOmQsbmFtZTplLGlzQmxvY2tlZDpBQihoLGYpLHZrOltdLGxvZ01hY3JvRXJyb3I6ZnVuY3Rpb24odSx2LHgpe1AoNik7aW0oNCk7SkEoMix2LHgpfSxjYWNoZWRNb2RlbFZhbHVlczpCQigpLApsZDpuZXcgTUEoZnVuY3Rpb24oKXtmbi5IJiZ5eihiLGUpO0Z5KDUsZSk7bCYmbC5hcHBseShsLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKSl9LG4pLG9yaWdpbmFsRXZlbnREYXRhOmh9O2ZuLkgmJkN6KHAuaWQpO3ZhciBxPUVBKHApO2ZuLkgmJkR6KHAuaWQpO0Z5KDIsZSk7Y0EuZ2V0UnVsZXMoKTtmJiYocT1DQihxKSk7Zm4uSCYmd3ooYik7dmFyIHI9d0IocSxwKTtyJiZGeSg0LGUpO3ZhciB0PXhCKGEscC5sZCk7UkEocC5sZCk7ZSE9PSJndG0uanMiJiZlIT09Imd0bS5zeW5jInx8WEEoKTtyZXR1cm4gREIocSxyKXx8dH0KZnVuY3Rpb24gQkIoKXt2YXIgYT17fTthLmV2ZW50PXZBKCJldmVudCIsMSk7YS5lY29tbWVyY2U9dkEoImVjb21tZXJjZSIsMSk7YS5ndG09dkEoImd0bSIpO2EuZXZlbnRNb2RlbD12QSgiZXZlbnRNb2RlbCIpO3JldHVybiBhfQpmdW5jdGlvbiBBQihhLGIpe3ZhciBjPUFBKCk7cmV0dXJuIGZ1bmN0aW9uKGQpe3ZhciBlPWMoZCk7aWYoZSlyZXR1cm4hMDt2YXIgZj1kJiZkW0dmLlliXTtpZighZnx8dHlwZW9mIGYhPT0ic3RyaW5nIilyZXR1cm4hMDtmPWYucmVwbGFjZSgvXl8qLywiIik7dmFyIGc9akIoKSxoPWE7YiYmKGg9RWQoYSxudWxsKSxoWyJndG0udW5pcXVlRXZlbnRJZCJdPU51bWJlci5NQVhfU0FGRV9JTlRFR0VSKTtmb3IodmFyIGw9ITEsbj1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSlbZl18fFtdLHA9bShnKSxxPXAubmV4dCgpOyFxLmRvbmU7cT1wLm5leHQoKSl7dmFyIHI9cS52YWx1ZTt0cnl7cih7ZW50aXR5SWQ6ZixzZWN1cml0eUdyb3VwczpuLG9yaWdpbmFsRXZlbnREYXRhOmh9KXx8KGw9ITApfWNhdGNoKHQpe2w9ITB9fXJldHVybiBsfHxlfX0KZnVuY3Rpb24gQ0IoYSl7Zm9yKHZhciBiPVtdLGM9MDtjPGEubGVuZ3RoO2MrKylpZihhW2NdKXt2YXIgZD1jQS50YWdzW2NdLk87aWYoQmpbZF18fGNBLnRhZ3NbY10uSWFbR2YuUnFdIT09dm9pZCAwfHxLQShkLDIpKWJbY109ITB9cmV0dXJuIGJ9ZnVuY3Rpb24gREIoYSxiKXtpZighYilyZXR1cm4gYjtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihhW2NdJiZjQS50YWdzW2NdJiYhQ2pbY0EudGFnc1tjXS5PXSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIEVCPU5mKDYxLDFFMyksRkI9TmYoNjgsMkUzKSxabz1bImFkX3N0b3JhZ2UiLCJhbmFseXRpY3Nfc3RvcmFnZSJdO2Z1bmN0aW9uIEdCKGEsYil7aWYoYSl7dmFyIGM9a2ooImd0aCIsZnVuY3Rpb24oKXtyZXR1cm57fX0pLGQ7YSE9PTJ8fCgoZD1IQigpKT09bnVsbD92b2lkIDA6ZC5zdGF0dXMpIT09M3x8YiE9PXZvaWQgMCYmYjw9RkJ8fChhPTMsYy5kbD1iP01hdGguZmxvb3IoYi8xRTMpOnZvaWQgMCk7Yy5zPWE7SUIoYyl9fWZ1bmN0aW9uIElCKGEpe2lmKGEucyl7dmFyIGI9ZnVuY3Rpb24oKXt2YXIgYz17c3RhdHVzOmEucyxleHBpcmVzOkRhdGUubm93KCkrODY0RTV9O2EuZGwhPT12b2lkIDAmJihjLmRlbGF5PWEuZGwpO2tyKCJndGdfbG9hZF9zdGF0dXMiLGMpfTticChmdW5jdGlvbigpe2lmKFlvKCkpYigpO2Vsc2UgZm9yKHZhciBjPVBiKGIpLGQ9bShabyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpSWwoYyxlLnZhbHVlKX0sWm8pfX0KZnVuY3Rpb24gSkIoKXt2YXIgYT1LQighMCk7cmV0dXJuIGE/KExCKGEuc3RhdHVzLGEuZGVsYXkpLCExKTohMH1mdW5jdGlvbiBLQihhKXthPWE9PT12b2lkIDA/ITE6YTtpZihhaygpKXt2YXIgYj1ucigiZ3RnX2xvYWRfc3RhdHVzIiksYz1iLnZhbHVlLGQ9YSYmQWIoYz09bnVsbD92b2lkIDA6Yy5leHBpcmVzKSYmKGM9PW51bGw/dm9pZCAwOmMuZXhwaXJlcyk8RGF0ZS5ub3coKSszNkU1O2lmKGIuZXJyb3I9PT0wJiZBYihjPT1udWxsP3ZvaWQgMDpjLnN0YXR1cykmJiFkKXt2YXIgZT17c3RhdHVzOmMuc3RhdHVzfTsoYz09bnVsbD92b2lkIDA6Yy5kZWxheSkhPT12b2lkIDAmJihlLmRlbGF5PWMuZGVsYXkpO3JldHVybiBlfXJldHVybiBIQigpfX1mdW5jdGlvbiBMQihhLGIpe3ZhciBjPWtqKCJndGgiLGZ1bmN0aW9uKCl7cmV0dXJue319KTtjLnM9YTtiIT09dm9pZCAwJiYoYy5kbD1iKX0KZnVuY3Rpb24gSEIoKXt2YXIgYT1taigiZ3RoIik7aWYoYSE9bnVsbCYmYS5zKXt2YXIgYj17c3RhdHVzOmEuc307YS5kbCE9PXZvaWQgMCYmKGIuZGVsYXk9YS5kbCk7cmV0dXJuIGJ9fWZ1bmN0aW9uIE1CKCl7dmFyIGE7KChhPUhCKCkpPT1udWxsP3ZvaWQgMDphLnN0YXR1cyk9PT0xJiZHQigzKX1mdW5jdGlvbiBOQigpe2lmKEpCKCkpe3ZhciBhPURhdGUubm93KCk7bmooImd0aCIse2w6ZnVuY3Rpb24oKXtHQigyLERhdGUubm93KCktYSl9LHM6MX0pO3ZhciBiPUUoNSksYz1TYihiLCJHVE0tIik/Ii9ndG0uanMiOiIvZ3RhZy9qcyIsZD0iaHR0cHM6Ly8iK0UoMykrYysiP2lkPSIrYisiJmd0Z19oZWFsdGg9MSI7VWMoZCxNQixNQik7QS5zZXRUaW1lb3V0KE1CLEVCKX19O2Z1bmN0aW9uIE9CKCl7eUIoKS5hZGRMaXN0ZW5lcigiZ3RtLmluaXQiLGZ1bmN0aW9uKGEsYil7WmsoMjYsITApO00oNTU2KSYmYWsoKSYmIUlmKDQ1KSYmKGZvLkhbY28uaWEuWmJdPWJvLk1hLkxoKTtpZihhaygpKXt2YXIgYztjPWxvKGNvLmlhLlpiKTtnbyhjKT9pbyhjLE5CKTpOQigpfXRvKCExLCEwKTtiKCl9KX07ZnVuY3Rpb24gUEIoKXtpZihtaigicHNjZGwiKSE9PXZvaWQgMClubShqbS5iYS5vaSk9PT12b2lkIDAmJm1tKGptLmJhLm9pLG1qKCJwc2NkbCIpKTtlbHNle3ZhciBhPWZ1bmN0aW9uKGMpe25qKCJwc2NkbCIsYyk7bW0oam0uYmEub2ksYyl9LGI9ZnVuY3Rpb24oKXthKCJlcnJvciIpfTt0cnl7SGMuY29va2llRGVwcmVjYXRpb25MYWJlbD8oYSgicGVuZGluZyIpLEhjLmNvb2tpZURlcHJlY2F0aW9uTGFiZWwuZ2V0VmFsdWUoKS50aGVuKGEpLmNhdGNoKGIpKTphKCJub2FwaSIpfWNhdGNoKGMpe2IoYyl9fX07dmFyIFJCPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLnJlYWR5PSExO3RoaXMuSz0wO3RoaXMuSD1bXTt2YXIgYj1BO2lmKEIucmVhZHlTdGF0ZT09PSJpbnRlcmFjdGl2ZSImJiFCLmNyZWF0ZUV2ZW50T2JqZWN0fHxCLnJlYWR5U3RhdGU9PT0iY29tcGxldGUiKXRoaXMub25SZWFkeSgpO2Vsc2V7JGMoQiwiRE9NQ29udGVudExvYWRlZCIsZnVuY3Rpb24oZCl7cmV0dXJuIHZvaWQgYS5vblJlYWR5KGQpfSk7JGMoQiwicmVhZHlzdGF0ZWNoYW5nZSIsZnVuY3Rpb24oZCl7cmV0dXJuIHZvaWQgYS5vblJlYWR5KGQpfSk7aWYoQi5jcmVhdGVFdmVudE9iamVjdCYmQi5kb2N1bWVudEVsZW1lbnQuZG9TY3JvbGwpe3ZhciBjPSEwO3RyeXtjPSFiLmZyYW1lRWxlbWVudH1jYXRjaChkKXt9YyYmUUIodGhpcyl9JGMoYiwibG9hZCIsZnVuY3Rpb24oZCl7cmV0dXJuIHZvaWQgYS5vblJlYWR5KGQpfSl9fTtSQi5wcm90b3R5cGUuaXNSZWFkeT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJlYWR5fTsKUkIucHJvdG90eXBlLm9uUmVhZHk9ZnVuY3Rpb24oYSl7aWYoIXRoaXMucmVhZHkpe3ZhciBiPUIuY3JlYXRlRXZlbnRPYmplY3QsYz1CLnJlYWR5U3RhdGU9PT0iY29tcGxldGUiLGQ9Qi5yZWFkeVN0YXRlPT09ImludGVyYWN0aXZlIjtpZighYXx8YS50eXBlIT09InJlYWR5c3RhdGVjaGFuZ2UifHxjfHwhYiYmZCl7dGhpcy5yZWFkeT0hMDtmb3IodmFyIGU9MDtlPHRoaXMuSC5sZW5ndGg7ZSsrKWJkKHRoaXMuSFtlXSl9dGhpcy5ILnB1c2g9ZnVuY3Rpb24oKXtmb3IodmFyIGY9T2EuYXBwbHkoMCxhcmd1bWVudHMpLGc9MDtnPGYubGVuZ3RoO2crKyliZChmW2ddKTtyZXR1cm4gMH19fTsKdmFyIFFCPWZ1bmN0aW9uKGEpe2lmKCFhLnJlYWR5JiZhLks8MTQwKXthLksrKzt0cnl7dmFyIGIsYzsoYz0oYj1CLmRvY3VtZW50RWxlbWVudCkuZG9TY3JvbGwpPT1udWxsfHxjLmNhbGwoYiwibGVmdCIpO2Eub25SZWFkeSgpfWNhdGNoKGQpe0Euc2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiB2b2lkIFFCKGEpfSw1MCl9fX0sU0I7ZnVuY3Rpb24gVEIoKXtTQnx8KFNCPW5ldyBSQil9ZnVuY3Rpb24gVUIoKXtUQigpO3ZhciBhO3JldHVybihhPVNCKT09bnVsbD92b2lkIDA6YS5pc1JlYWR5KCl9ZnVuY3Rpb24gVkIoYSl7VEIoKTt2YXIgYjsoYj1TQikhPW51bGwmJihiLnJlYWR5P2JkKGEpOmIuSC5wdXNoKGEpKX07dmFyIFhCPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1XQixlO2lmKChlPWQuSCk9PW51bGx8fCFlLk9yKXt2YXIgZj1PYmplY3Qua2V5cyhiKS5sZW5ndGg+MD8yOjEsZyxoLGw9KGM9PW51bGw/dm9pZCAwOihoPWMub3JpZ2luYXRpbmdFbnRpdHkpPT1udWxsP3ZvaWQgMDpoLm9yaWdpbkNvbnRhaW5lcklkKXx8IiI7Zz1sP1NiKGwsIkdUTS0iKT8zOjI6MTtpZighYSlkLkg9e3R5cGU6Zixzb3VyY2U6ZyxwYXJhbXM6Yn07ZWxzZSBpZihkLkgpe1AoMTg0KTt2YXIgbj0hMTtkLkguc291cmNlPT09Z3x8ZC5ILnNvdXJjZSE9PTMmJmchPT0zfHwoVW0oImlkY3MiLCIxIiksbj0hMCk7ZC5ILnR5cGUhPT0yJiZmIT09Mnx8UCgxODYpO3ZhciBwO2lmKHA9ZC5ILnR5cGU9PT0yJiZmPT09MilhOnt2YXIgcT1kLkgucGFyYW1zLHI9T2JqZWN0LmtleXMocSksdD1PYmplY3Qua2V5cyhiKTtpZihyLmxlbmd0aCE9PXQubGVuZ3RoKXA9ITA7ZWxzZXtmb3IodmFyIHU9bShyKSx2PXUubmV4dCgpOyF2LmRvbmU7dj0KdS5uZXh0KCkpe3ZhciB4PXYudmFsdWU7aWYoIWIuaGFzT3duUHJvcGVydHkoeCl8fHFbeF0hPT1iW3hdKXtwPSEwO2JyZWFrIGF9fXA9ITF9fXAmJihVbSgiaWRjYyIsIjEiKSxuPSEwKTtuJiYodG8oKSxkLkguT3I9ITApfX19LFdCPW5ldyBmdW5jdGlvbigpe3RoaXMuSD12b2lkIDB9O3ZhciBaQj1mdW5jdGlvbihhKXt2YXIgYj1ZQjsoIWZuLkt8fFNiKEUoNSksIkdUTS0iKT8wOmE9PT12b2lkIDApJiZiLkg9PT0wJiYoVW0oIm1jYyIsIjEiKSxiLkg9MSl9LFlCPW5ldyBmdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPTA7VW0oIm5jYyIsZnVuY3Rpb24oKXtpZihJZig0NSkmJmEuSCE9PTIpcmV0dXJuIjEifSl9O3ZhciAkQj0vXig/OkFXfERDfEd8R0Z8R1R8SEF8TUN8VUEpJC8sYUM9L1xzLzsKZnVuY3Rpb24gYkMoYSxiKXtpZih6YihhKSl7YT1MYihhKTt2YXIgYz1hLmluZGV4T2YoIi0iKTtpZighKGM8MCkpe3ZhciBkPWEuc3Vic3RyaW5nKDAsYyk7aWYoJEIudGVzdChkKSl7dmFyIGU9YS5zdWJzdHJpbmcoYysxKSxmO2lmKGIpe3ZhciBnPWZ1bmN0aW9uKG4pe3ZhciBwPW4uaW5kZXhPZigiLyIpO3JldHVybiBwPDA/W25dOltuLnN1YnN0cmluZygwLHApLG4uc3Vic3RyaW5nKHArMSldfTtmPWcoZSk7aWYoZD09PSJEQyImJmYubGVuZ3RoPT09Mil7dmFyIGg9ZyhmWzFdKTtoLmxlbmd0aD09PTImJihmWzFdPWhbMF0sZi5wdXNoKGhbMV0pKX19ZWxzZXtmPWUuc3BsaXQoIi8iKTtmb3IodmFyIGw9MDtsPGYubGVuZ3RoO2wrKylpZighZltsXXx8YUMudGVzdChmW2xdKSYmKGQhPT0iQVcifHxsIT09MSkpcmV0dXJufXJldHVybntpZDphLHByZWZpeDpkLGRlc3RpbmF0aW9uSWQ6ZCsiLSIrZlswXSxpZHM6ZixKYzpmdW5jdGlvbigpe3JldHVybiB0aGlzLmlkIT09dGhpcy5kZXN0aW5hdGlvbklkfX19fX19CmZ1bmN0aW9uIGNDKGEsYil7Zm9yKHZhciBjPXt9LGQ9MDtkPGEubGVuZ3RoOysrZCl7dmFyIGU9YkMoYVtkXSxiKTtlJiYoY1tlLmlkXT1lKX12YXIgZj1bXSxnO2ZvcihnIGluIGMpaWYoYy5oYXNPd25Qcm9wZXJ0eShnKSl7dmFyIGg9Y1tnXTtoLnByZWZpeD09PSJBVyImJmguaWRzW2RDWzFdXSYmZi5wdXNoKGguZGVzdGluYXRpb25JZCl9Zm9yKHZhciBsPTA7bDxmLmxlbmd0aDsrK2wpZGVsZXRlIGNbZltsXV07Zm9yKHZhciBuPVtdLHA9bShPYmplY3Qua2V5cyhjKSkscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpbi5wdXNoKGNbcS52YWx1ZV0pO3JldHVybiBufXZhciBlQz17fSxkQz0oZUNbMF09MCxlQ1sxXT0xLGVDWzJdPTIsZUNbM109MCxlQ1s0XT0xLGVDWzVdPTAsZUNbNl09MCxlQ1s3XT0wLGVDKTt2YXIgZkM9e2luaXRpYWxpemVkOjExLGNvbXBsZXRlOjEyLGludGVyYWN0aXZlOjEzfSxnQz17fSxoQz1PYmplY3QuZnJlZXplKChnQ1tGLkQuVGRdPSEwLGdDKSksaUM9ZnVuY3Rpb24oKXt0aGlzLlI9TmYoMzQsNTAwKTt0aGlzLkg9e307dGhpcy5OPXt9O3RoaXMuSz12b2lkIDB9LGpDPWZ1bmN0aW9uKGEsYixjKXtpZihjLmxlbmd0aCYmZm4uSyl7dmFyIGQ7KGQ9YS5IKVtiXSE9bnVsbHx8KGRbYl09W10pO3ZhciBlOyhlPWEuTilbYl0hPW51bGx8fChlW2JdPVtdKTt2YXIgZj1jLmZpbHRlcihmdW5jdGlvbihnKXtyZXR1cm4hYS5OW2JdLmluY2x1ZGVzKGcpfSk7YS5IW2JdLnB1c2guYXBwbHkoYS5IW2JdLHcoZikpO2EuTltiXS5wdXNoLmFwcGx5KGEuTltiXSx3KGYpKTshYS5LJiZmLmxlbmd0aD4wJiYoVm0oInRkYyIsITApLGEuSz1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0bygpO2EuSD17fTthLks9dm9pZCAwfSxhLlIpKX19OwppQy5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe3ZhciBhPXRoaXM7VW0oInRkYyIsZnVuY3Rpb24oKXthLksmJihBLmNsZWFyVGltZW91dChhLkspLGEuSz12b2lkIDApO3ZhciBiPVtdLGM7Zm9yKGMgaW4gYS5IKWEuSC5oYXNPd25Qcm9wZXJ0eShjKSYmYi5wdXNoKGMrIioiK2EuSFtjXS5qb2luKCIuIikpO3JldHVybiBiLmxlbmd0aD9iLmpvaW4oIiEiKTp2b2lkIDB9LCExKX07CnZhciBrQz1mdW5jdGlvbihhLGIpe3ZhciBjPXt9LGQ7Zm9yKGQgaW4gYiliLmhhc093blByb3BlcnR5KGQpJiYoY1tkXT0hMCk7Zm9yKHZhciBlIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShlKSYmKGNbZV09ITApO3JldHVybiBjfSxsQz1mdW5jdGlvbihhLGIsYyxkLGUpe2Q9ZD09PXZvaWQgMD97fTpkO2U9ZT09PXZvaWQgMD8iIjplO2lmKGI9PT1jKXJldHVybltdO3ZhciBmPWZ1bmN0aW9uKHQsdSl7dmFyIHY7QWQodSk9PT0ib2JqZWN0Ij92PXVbdF06QWQodSk9PT0iYXJyYXkiJiYodj11W3RdKTtyZXR1cm4gdj09PXZvaWQgMD9oQ1t0XTp2fSxnPWtDKGIsYyksaDtmb3IoaCBpbiBnKWlmKGcuaGFzT3duUHJvcGVydHkoaCkmJmghPT1GLkQuWGIpe3ZhciBsPShlP2UrIi4iOiIiKStoLG49ZihoLGIpLHA9ZihoLGMpLHE9QWQobik9PT0ib2JqZWN0Inx8QWQobik9PT0iYXJyYXkiLHI9QWQocCk9PT0ib2JqZWN0Inx8QWQocCk9PT0iYXJyYXkiO2lmKHEmJnIpbEMoYSxuLHAsZCxsKTsKZWxzZSBpZihxfHxyfHxuIT09cClkW2xdPSEwfXJldHVybiBPYmplY3Qua2V5cyhkKX0sbUM9bmV3IGlDO3ZhciBuQz1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLks9TmIoKTt0aGlzLkg9Yjt0aGlzLmFyZ3M9Yzt0aGlzLm1lc3NhZ2VDb250ZXh0PWQ7dGhpcy50eXBlPWF9LG9DPWZ1bmN0aW9uKCl7dGhpcy5XYT17fTt0aGlzLmliPXt9O3RoaXMuSz17fTt0aGlzLk49bnVsbDt0aGlzLmhiPXt9O3RoaXMuSD0hMTt0aGlzLnN0YXR1cz0xfTtmdW5jdGlvbiBwQyhhLGIpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPT09MT9xQygic2V0IixhKTpxQygic2V0IixhLGIpfWZ1bmN0aW9uIHJDKGEsYil7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg9PT0xP3FDKCJjb25maWciLGEpOnFDKCJjb25maWciLGEsYil9ZnVuY3Rpb24gc0MoYSxiLGMpe2M9Y3x8e307Y1tGLkQuWGJdPWE7cmV0dXJuIHFDKCJldmVudCIsYixjKX1mdW5jdGlvbiBxQygpe3JldHVybiBhcmd1bWVudHN9O3ZhciB0Qz1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgsbCxuLHAscSxyKXt0aGlzLmV2ZW50SWQ9YTt0aGlzLnByaW9yaXR5SWQ9Yjt0aGlzLnByaW9yaXR5UXVldWU9Yzt0aGlzLkVhPWQ7dGhpcy5XYT1lO3RoaXMuaGI9Zjt0aGlzLkhjPWc7dGhpcy5CZz1oO3RoaXMuaWI9bDt0aGlzLmV2ZW50TWV0YWRhdGE9bjt0aGlzLm9uU3VjY2Vzcz1wO3RoaXMub25GYWlsdXJlPXE7dGhpcy5pc0d0bUV2ZW50PXJ9LHVDPWZ1bmN0aW9uKGEpe3ZhciBiPXtvblN1Y2Nlc3M6eGIsb25GYWlsdXJlOnhifTtiPWI9PT12b2lkIDA/e306Yjt2YXIgYyxkLGUsZixnLGgsbCxuLHAscSxyLHQsdSx2LHgseSx6LEMsRCxJLEcsTixTLFcsZWEsamE7cmV0dXJuIG5ldyB0Qygodj0oYz1iKT09bnVsbD92b2lkIDA6Yy5ldmVudElkKSE9bnVsbD92OmEuZXZlbnRJZCwoeD0oZD1iKT09bnVsbD92b2lkIDA6ZC5wcmlvcml0eUlkKSE9bnVsbD94OmEucHJpb3JpdHlJZCwoeT0oZT1iKT09bnVsbD92b2lkIDA6ZS5wcmlvcml0eVF1ZXVlKSE9Cm51bGw/eTphLnByaW9yaXR5UXVldWUsKHo9KGY9Yik9PW51bGw/dm9pZCAwOmYuRWEpIT1udWxsP3o6YS5FYSwoQz0oZz1iKT09bnVsbD92b2lkIDA6Zy5XYSkhPW51bGw/QzphLldhLChEPShoPWIpPT1udWxsP3ZvaWQgMDpoLmhiKSE9bnVsbD9EOmEuaGIsKEk9KGw9Yik9PW51bGw/dm9pZCAwOmwuSGMpIT1udWxsP0k6YS5IYywoRz0obj1iKT09bnVsbD92b2lkIDA6bi5CZykhPW51bGw/RzphLkJnLChOPShwPWIpPT1udWxsP3ZvaWQgMDpwLmliKSE9bnVsbD9OOmEuaWIsKFM9KHE9Yik9PW51bGw/dm9pZCAwOnEuZXZlbnRNZXRhZGF0YSkhPW51bGw/UzphLmV2ZW50TWV0YWRhdGEsKFc9KHI9Yik9PW51bGw/dm9pZCAwOnIub25TdWNjZXNzKSE9bnVsbD9XOmEub25TdWNjZXNzLChlYT0odD1iKT09bnVsbD92b2lkIDA6dC5vbkZhaWx1cmUpIT1udWxsP2VhOmEub25GYWlsdXJlLChqYT0odT1iKT09bnVsbD92b2lkIDA6dS5pc0d0bUV2ZW50KSE9bnVsbD9qYTphLmlzR3RtRXZlbnQpfSwKdkM9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtzd2l0Y2goYil7Y2FzZSAzOmMucHVzaChhLkVhKTtjLnB1c2goYS5XYSk7Yy5wdXNoKGEuaGIpO2MucHVzaChhLkhjKTtjLnB1c2goYS5pYik7YnJlYWs7Y2FzZSAyOmMucHVzaChhLkVhKTticmVhaztjYXNlIDE6Yy5wdXNoKGEuV2EpO2MucHVzaChhLmhiKTtjLnB1c2goYS5IYyk7Yy5wdXNoKGEuaWIpO2JyZWFrO2Nhc2UgNDpjLnB1c2goYS5FYSksYy5wdXNoKGEuV2EpLGMucHVzaChhLmhiKSxjLnB1c2goYS5IYyl9cmV0dXJuIGN9LE89ZnVuY3Rpb24oYSxiLGMsZCl7Zm9yKHZhciBlPW0odkMoYSxkPT09dm9pZCAwPzM6ZCkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2lmKGdbYl0hPT12b2lkIDApcmV0dXJuIGdbYl19cmV0dXJuIGN9LHdDPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj17fSxjPXZDKGEsNCksZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWZvcih2YXIgZj1PYmplY3Qua2V5cyhlLnZhbHVlKSwKZz1tKGYpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKWJbaC52YWx1ZV09MTtyZXR1cm4gT2JqZWN0LmtleXMoYil9O3RDLnByb3RvdHlwZS5nZXRNZXJnZWRWYWx1ZXM9ZnVuY3Rpb24oYSxiLGMpe2I9Yj09PXZvaWQgMD8zOmI7dmFyIGQ9e30sZT0hMSxmPWZ1bmN0aW9uKG4pe0NkKG4pJiZHYihuLGZ1bmN0aW9uKHAscSl7ZT0hMDtkW3BdPXF9KX07YyYmZihjKTt2YXIgZz12Qyh0aGlzLGIpO2cucmV2ZXJzZSgpO2Zvcih2YXIgaD1tKGcpLGw9aC5uZXh0KCk7IWwuZG9uZTtsPWgubmV4dCgpKWYobC52YWx1ZVthXSk7cmV0dXJuIGU/ZDp2b2lkIDB9Owp2YXIgeEM9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPVtGLkQuS2YsRi5ELkdmLEYuRC5IZixGLkQuSWYsRi5ELkpmLEYuRC5MZixGLkQuTWZdLGM9dkMoYSwzKSxkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe2Zvcih2YXIgZj1lLnZhbHVlLGc9e30saD0hMSxsPW0oYiksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7ZltwXSE9PXZvaWQgMCYmKGdbcF09ZltwXSxoPSEwKX12YXIgcT1oP2c6dm9pZCAwO2lmKHEpcmV0dXJuIHF9cmV0dXJue319LHlDPWZ1bmN0aW9uKGEsYixjKXt0aGlzLmV2ZW50SWQ9YTt0aGlzLnByaW9yaXR5SWQ9Yjt0aGlzLnByaW9yaXR5UXVldWU9Yzt0aGlzLkVhPXt9O3RoaXMuV2E9e307dGhpcy5oYj17fTt0aGlzLkhjPXt9O3RoaXMuQmc9e307dGhpcy5pYj17fTt0aGlzLmV2ZW50TWV0YWRhdGE9e307dGhpcy5pc0d0bUV2ZW50PSExO3RoaXMub25TdWNjZXNzPWZ1bmN0aW9uKCl7fTt0aGlzLm9uRmFpbHVyZT0KZnVuY3Rpb24oKXt9fSx6Qz1mdW5jdGlvbihhLGIpe2EuRWE9YjtyZXR1cm4gYX0sQUM9ZnVuY3Rpb24oYSxiKXthLldhPWI7cmV0dXJuIGF9LEJDPWZ1bmN0aW9uKGEsYil7YS5oYj1iO3JldHVybiBhfSxDQz1mdW5jdGlvbihhLGIpe2EuSGM9YjtyZXR1cm4gYX0sREM9ZnVuY3Rpb24oYSxiKXthLkJnPWI7cmV0dXJuIGF9LEVDPWZ1bmN0aW9uKGEsYil7YS5pYj1iO3JldHVybiBhfSxGQz1mdW5jdGlvbihhLGIpe2EuZXZlbnRNZXRhZGF0YT1ifHx7fTtyZXR1cm4gYX0sR0M9ZnVuY3Rpb24oYSxiKXthLm9uU3VjY2Vzcz1iO3JldHVybiBhfSxIQz1mdW5jdGlvbihhLGIpe2Eub25GYWlsdXJlPWI7cmV0dXJuIGF9LElDPWZ1bmN0aW9uKGEsYil7YS5pc0d0bUV2ZW50PWI7cmV0dXJuIGF9LEpDPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgdEMoYS5ldmVudElkLGEucHJpb3JpdHlJZCxhLnByaW9yaXR5UXVldWUsYS5FYSxhLldhLGEuaGIsYS5IYyxhLkJnLGEuaWIsYS5ldmVudE1ldGFkYXRhLAphLm9uU3VjY2VzcyxhLm9uRmFpbHVyZSxhLmlzR3RtRXZlbnQpfTtmdW5jdGlvbiBLQyhhLGIpe0diKGEsZnVuY3Rpb24oYyl7dmFyIGQ7aWYoZD1jLmNoYXJBdCgwKT09PSJfIil7dmFyIGU7YTpzd2l0Y2goYyl7Y2FzZSBGLkQuVmI6Y2FzZSBGLkQuUmY6Y2FzZSBGLkQuc2g6ZT0hMDticmVhayBhO2RlZmF1bHQ6ZT0hMX1kPSFlfWQmJihiJiZiKGMpLGRlbGV0ZSBhW2NdKX0pfTt2YXIgTEM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD17fTtmeihmdW5jdGlvbihiKXt2YXIgYz1iLmV2ZW50SWQsZD1iLnRmLGU9W10sZj1hLkhbY118fFtdO2YubGVuZ3RoJiZlLnB1c2goWyJlcHIiLGYuam9pbigiLiIpXSk7ZCYmZGVsZXRlIGEuSFtjXTtyZXR1cm4gZX0pfSxOQz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9TUM7Zm4uTiYmYSE9PXZvaWQgMCYmKGQuSFthXT1kLkhbYV18fFtdLGQuSFthXS5wdXNoKGMrYiksZ3ooKSxleihhKSl9LE1DO2Z1bmN0aW9uIE9DKCl7TUN8fChNQz1uZXcgTEMpfTt2YXIgUEM9ZnVuY3Rpb24oKXt0aGlzLmRlc3RpbmF0aW9ucz17fTt0aGlzLkg9e307dGhpcy5jb21tYW5kcz1bXX0sUUM9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5kZXN0aW5hdGlvbnNbYi5kZXN0aW5hdGlvbklkXT1hLmRlc3RpbmF0aW9uc1tiLmRlc3RpbmF0aW9uSWRdfHxuZXcgb0N9LFJDPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGQuSCl7dmFyIGU9UUMoYSxkLkgpLGY9ZS5OO2lmKGYpe3ZhciBnPUVkKGMsbnVsbCksaD1FZChlLldhW2QuSC5kZXN0aW5hdGlvbklkXSxudWxsKSxsPUVkKGUuaGIsbnVsbCksbj1FZChlLmliLG51bGwpLHA9RWQoYS5ILG51bGwpLHE9e307aWYoZm4uTil0cnl7cT1FZChyQS5ILG51bGwpfWNhdGNoKHgpe1AoNzIpfXZhciByPWQuSC5wcmVmaXgsdD1mdW5jdGlvbih4KXt2YXIgeT1kLm1lc3NhZ2VDb250ZXh0LmV2ZW50SWQ7T0MoKTtOQyh5LHIseCl9LHU9SkMoSUMoSEMoR0MoRkMoREMoQ0MoRUMoQkMoQUMoekMobmV3IHlDKGQubWVzc2FnZUNvbnRleHQuZXZlbnRJZCwKZC5tZXNzYWdlQ29udGV4dC5wcmlvcml0eUlkLGQubWVzc2FnZUNvbnRleHQucHJpb3JpdHlRdWV1ZSksZyksaCksbCksbikscCkscSksZC5tZXNzYWdlQ29udGV4dC5ldmVudE1ldGFkYXRhKSxmdW5jdGlvbigpe2lmKHQpe3ZhciB4PXQ7dD12b2lkIDA7eCgiMiIpO2lmKGQubWVzc2FnZUNvbnRleHQub25TdWNjZXNzKWQubWVzc2FnZUNvbnRleHQub25TdWNjZXNzKCl9fSksZnVuY3Rpb24oKXtpZih0KXt2YXIgeD10O3Q9dm9pZCAwO3goIjMiKTtpZihkLm1lc3NhZ2VDb250ZXh0Lm9uRmFpbHVyZSlkLm1lc3NhZ2VDb250ZXh0Lm9uRmFpbHVyZSgpfX0pLCEhZC5tZXNzYWdlQ29udGV4dC5pc0d0bUV2ZW50KSksdj1mdW5jdGlvbigpe3RyeXt2YXIgeD1kLm1lc3NhZ2VDb250ZXh0LmV2ZW50SWQ7T0MoKTtOQyh4LHIsIjEiKTt2YXIgeT1kLkguaWQsej1tQztpZihmbi5LJiZiPT09Ri5ELndhKXt2YXIgQyxEPShDPWJDKHkpKT09bnVsbD92b2lkIDA6Qy5pZHM7aWYoIShEJiZELmxlbmd0aD4KMSkpe3ZhciBJPXUuRWFbRi5ELlhiXTtpZighSXx8ST09PXkpe3ZhciBHLE49TWMoImdvb2dsZV90YWdfZGF0YSIse30pO04udGR8fChOLnRkPXt9KTtHPU4udGQ7dmFyIFM9RWQodS5IYyxudWxsKTtFZCh1LkVhLFMpO3ZhciBXPVtdLGVhO2ZvcihlYSBpbiBHKUcuaGFzT3duUHJvcGVydHkoZWEpJiZsQyh6LEdbZWFdLFMpLmxlbmd0aCYmVy5wdXNoKGVhKTtXLmxlbmd0aCYmKGpDKHoseSxXKSxzYigiVEFHR0lORyIsZkNbQi5yZWFkeVN0YXRlXXx8MTQpKTtHW3ldPVN9fX1mKGQuSC5pZCxiLGQuSyx1KX1jYXRjaChmYSl7dmFyIGphPWQubWVzc2FnZUNvbnRleHQuZXZlbnRJZDtPQygpO05DKGphLHIsIjQiKX19O2I9PT0iZ3RhZy5nZXQiP3YoKTppbyhlLlIsdil9fX0sU0M9ZnVuY3Rpb24oYSxiKXtpZihiLnR5cGUhPT0icmVxdWlyZSIpe3ZhciBjPXZvaWQgMDtiLnR5cGU9PT0iZXZlbnQiJiYoYz1iLmFyZ3NbMV0pO2lmKGIuSClmb3IodmFyIGQ9UUMoYSxiLkgpLktbYi50eXBlXXx8CltdLGU9MDtlPGQubGVuZ3RoO2UrKylkW2VdKGMpO2Vsc2UgZm9yKHZhciBmIGluIGEuZGVzdGluYXRpb25zKWlmKGEuZGVzdGluYXRpb25zLmhhc093blByb3BlcnR5KGYpKXt2YXIgZz1hLmRlc3RpbmF0aW9uc1tmXTtpZihnJiZnLkspZm9yKHZhciBoPWcuS1tiLnR5cGVdfHxbXSxsPTA7bDxoLmxlbmd0aDtsKyspaFtsXShjKX19fTtQQy5wcm90b3R5cGUucmVnaXN0ZXI9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9UUModGhpcyxhKTtlLnN0YXR1cyE9PTMmJihlLk49YixlLnN0YXR1cz0zLGUuUj1sbyhjKSxUQyh0aGlzLGEsZHx8e30pLHRoaXMuZmx1c2goKSl9OwpQQy5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihhLGIsYyxkKXtjIT09dm9pZCAwJiYoUUModGhpcyxjKS5zdGF0dXM9PT0xJiYoUUModGhpcyxjKS5zdGF0dXM9Mix0aGlzLnB1c2goInJlcXVpcmUiLFt7fV0sYyx7fSkpLFFDKHRoaXMsYykuSCYmKGQuZGVmZXJyYWJsZT0hMSksZC5ldmVudE1ldGFkYXRhfHwoZC5ldmVudE1ldGFkYXRhPXt9KSxkLmV2ZW50TWV0YWRhdGFbSC5KLnNnXXx8KGQuZXZlbnRNZXRhZGF0YVtILkouc2ddPVtjLmRlc3RpbmF0aW9uSWRdKSxkLmV2ZW50TWV0YWRhdGFbSC5KLm1qXXx8KGQuZXZlbnRNZXRhZGF0YVtILkoubWpdPVtjLmlkXSkpO3RoaXMuY29tbWFuZHMucHVzaChuZXcgbkMoYSxjLGIsZCkpO2QuZGVmZXJyYWJsZXx8dGhpcy5mbHVzaCgpfTsKUEMucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj10aGlzLGM9W10sZD0hMSxlPXt9O3RoaXMuY29tbWFuZHMubGVuZ3RoO2U9e1puOnZvaWQgMH0pe3ZhciBmPXRoaXMuY29tbWFuZHNbMF0sZz1mLkg7aWYoZi5tZXNzYWdlQ29udGV4dC5kZWZlcnJhYmxlKSFnfHxRQyh0aGlzLGcpLkg/KGYubWVzc2FnZUNvbnRleHQuZGVmZXJyYWJsZT0hMSx0aGlzLmNvbW1hbmRzLnB1c2goZikpOmMucHVzaChmKSx0aGlzLmNvbW1hbmRzLnNoaWZ0KCk7ZWxzZXtzd2l0Y2goZi50eXBlKXtjYXNlICJyZXF1aXJlIjppZihRQyh0aGlzLGcpLnN0YXR1cyE9PTMmJiFhKXt0aGlzLmNvbW1hbmRzLnB1c2guYXBwbHkodGhpcy5jb21tYW5kcyxjKTtyZXR1cm59YnJlYWs7Y2FzZSAic2V0Ijp2YXIgaD1mLmFyZ3NbMF07S0MoaCk7VUMoaCk7R2IoaCxmdW5jdGlvbih4LHkpe0VkKFZiKHgseSksYi5IKX0pO0h1KGgsITApO2JyZWFrO2Nhc2UgImV2ZW50IjplLlpuPWYuYXJnc1sxXTt2YXIgbD0KVkMoZi5hcmdzWzBdLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKCl7fX0oZSkpLG49bFtGLkQuWGJdO24mJm4hPT1nLmlkfHxIdShsKTtSQyh0aGlzLGUuWm4sbCxmKTticmVhaztjYXNlICJnZXQiOnZhciBwPXt9LHE9KHBbRi5ELlRmXT1mLmFyZ3NbMF0scFtGLkQuU2ZdPWYuYXJnc1sxXSxwKTtSQyh0aGlzLEYuRC5KYixxLGYpO2JyZWFrO2Nhc2UgImNvbnRhaW5lcl9jb25maWciOnZhciByPVFDKHRoaXMsZyksdD1WQyhmLmFyZ3NbMF0sZnVuY3Rpb24oKXt9KTtIdSh0LCEwKTtyLkg9ITA7RWQodCxyLmhiKTtkPSEwO2JyZWFrO2Nhc2UgImRlc3RpbmF0aW9uX2NvbmZpZyI6dmFyIHU9UUModGhpcyxnKSx2PVZDKGYuYXJnc1swXSxmdW5jdGlvbigpe30pO0h1KHYsITApO3UuV2FbZy5pZF18fCh1LldhW2cuaWRdPXt9KTt1Lkg9ITA7RWQodix1LldhW2cuaWRdKTtkPSEwO2JyZWFrO2Nhc2UgInJlc2V0X2NvbnRhaW5lcl9jb25maWciOlFDKHRoaXMsZykuaGI9e307YnJlYWs7CmNhc2UgInJlc2V0X3RhcmdldF9jb25maWciOlFDKHRoaXMsZykuV2FbZy5pZF09e319dGhpcy5jb21tYW5kcy5zaGlmdCgpO1NDKHRoaXMsZil9fXRoaXMuY29tbWFuZHMucHVzaC5hcHBseSh0aGlzLmNvbW1hbmRzLGMpO2QmJnRoaXMuZmx1c2goKX07dmFyIFRDPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1FZChjLG51bGwpO0VkKFFDKGEsYikuaWIsZCk7UUMoYSxiKS5pYj1kfTtmdW5jdGlvbiBWQyhhLGIpe3ZhciBjPXt9O0diKGEsZnVuY3Rpb24oZCxlKXtFZChWYihkLGUpLGMpfSk7S0MoYyxiKTtVQyhjKTtyZXR1cm4gY30KZnVuY3Rpb24gVUMoYSl7aWYoTSg2MDEpJiZCQSgpKXtmb3IodmFyIGI9ITEsYz1tKG5ldyBTZXQoW0YuRC55YyxGLkQuZGRdKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7YVtlXSE9PXZvaWQgMCYmKGI9ITAsZGVsZXRlIGFbZV0pfWImJiFhbCgzNSxmdW5jdGlvbigpe3JldHVybiExfSkmJihaaygzNSwhMCksd2luZG93LmNvbnNvbGUmJndpbmRvdy5jb25zb2xlLmxvZyYmd2luZG93LmNvbnNvbGUubG9nKCJHb29nbGUgVGFnIE1hbmFnZXI6IFNlcnZlci1zaWRlIEdUTSBwYXJhbWV0ZXJzICh0cmFuc3BvcnRfdXJsL3NlcnZlcl9jb250YWluZXJfdXJsKSBhcmUgbm90IHBlcm1pdHRlZCBvbiB0aGlzIGRvbWFpbiBhbmQgaGF2ZSBiZWVuIGlnbm9yZWQuIiksUCgxOTcpKX19O3ZhciBXQz1mdW5jdGlvbigpe3RoaXMuSD1uZXcgUEM7dGhpcy5LPSExfTtXQy5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oKXt0aGlzLkguZmx1c2goKX07dmFyIFhDO2Z1bmN0aW9uIFlDKCl7WEN8fChYQz1uZXcgV0MpO3JldHVybiBYQ31mdW5jdGlvbiBaQyhhLGIsYyxkKXt2YXIgZT1ZQygpLGY9YkMoYyxkLmlzR3RtRXZlbnQpO2YmJihlLksmJihkLmRlZmVycmFibGU9ITApLGUuSC5wdXNoKCJldmVudCIsW2IsYV0sZixkKSl9ZnVuY3Rpb24gJEMoYSxiLGMsZCl7dmFyIGU9WUMoKSxmPWJDKGMsZC5pc0d0bUV2ZW50KTtmJiZlLkgucHVzaCgiZ2V0IixbYSxiXSxmLGQpfWZ1bmN0aW9uIGFEKGEsYixjKXt2YXIgZD1ZQygpLGU9YkMoYSxjLmlzR3RtRXZlbnQpO2UmJmQuSC5wdXNoKCJjb250YWluZXJfY29uZmlnIixbYl0sZSxjKX0KZnVuY3Rpb24gYkQoYSxiLGMpe3ZhciBkPVlDKCksZT1iQyhhLGMuaXNHdG1FdmVudCk7ZSYmZC5ILnB1c2goImRlc3RpbmF0aW9uX2NvbmZpZyIsW2JdLGUsYyl9ZnVuY3Rpb24gY0QoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO2MmJmIuSC5wdXNoKCJyZXNldF9jb250YWluZXJfY29uZmlnIixbXSxjLHt9KX1mdW5jdGlvbiBkRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7YyYmYi5ILnB1c2goInJlc2V0X3RhcmdldF9jb25maWciLFtdLGMse30pfWZ1bmN0aW9uIGVEKGEpe3ZhciBiPVlDKCksYz1iQyhhLCEwKTtyZXR1cm4gYz9RQyhiLkgsYykuaWI6e319ZnVuY3Rpb24gZkQoYSl7cmV0dXJuIFlDKCkuSC5IW2FdfWZ1bmN0aW9uIGdEKGEpe3ZhciBiPVlDKCksYz1iQyhhLCEwKTtyZXR1cm4gYz9RQyhiLkgsYykuSDohMX07ZnVuY3Rpb24gaEQoYSxiKXthLmhhc093blByb3BlcnR5KCJndG0udW5pcXVlRXZlbnRJZCIpfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoYSwiZ3RtLnVuaXF1ZUV2ZW50SWQiLHt2YWx1ZTpyaigpfSk7Yi5ldmVudElkPWFbImd0bS51bmlxdWVFdmVudElkIl07Yi5wcmlvcml0eUlkPWFbImd0bS5wcmlvcml0eUlkIl07cmV0dXJue2V2ZW50SWQ6Yi5ldmVudElkLHByaW9yaXR5SWQ6Yi5wcmlvcml0eUlkfX1mdW5jdGlvbiBpRChhKXtmb3IodmFyIGI9bShbRi5ELmRkLEYuRC55Y10pLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKXt2YXIgZD1jLnZhbHVlLGU9YSYmYVtkXXx8ZkQoZCk7aWYoZSlyZXR1cm4gZX19ZnVuY3Rpb24gakQoYSl7cmV0dXJuIWEuaXNHdG1FdmVudHx8YS5ldmVudE1ldGFkYXRhJiZhLmV2ZW50TWV0YWRhdGFbSC5KLkNjXSYmYS5ldmVudE1ldGFkYXRhW0guSi5OYl0hPT12aygpPyExOiEwfTt2YXIga0Q9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPSExfTt2YXIgbEQ9ZnVuY3Rpb24oKXt0aGlzLm1lc3NhZ2VzPVtdO3RoaXMuSD1bXX07bEQucHJvdG90eXBlLmVucXVldWU9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubWVzc2FnZXMubGVuZ3RoKzE7YVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1iO2FbImd0bS5wcmlvcml0eUlkIl09ZDt2YXIgZT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGMse2V2ZW50SWQ6Yixwcmlvcml0eUlkOmQsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjohMH0pO2lmKE0oNTk1KSl7dmFyIGY9Yy5wcmlvcml0eVF1ZXVlP1tdLmNvbmNhdCh3KGMucHJpb3JpdHlRdWV1ZSksW2RdKTpbZF07YVsiZ3RtLnByaW9yaXR5UXVldWUiXT1mO2UucHJpb3JpdHlRdWV1ZT1mfXZhciBnPXttZXNzYWdlOmEsbm90QmVmb3JlRXZlbnRJZDpiLHByaW9yaXR5SWQ6ZCxtZXNzYWdlQ29udGV4dDplfTt0aGlzLm1lc3NhZ2VzLnB1c2goZyk7Zm9yKHZhciBoPTA7aDx0aGlzLkgubGVuZ3RoO2grKyl0cnl7dGhpcy5IW2hdKGcpfWNhdGNoKGwpe319OwpsRC5wcm90b3R5cGUubGlzdGVuPWZ1bmN0aW9uKGEpe3RoaXMuSC5wdXNoKGEpfTtsRC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXt9LGI9MDtiPHRoaXMubWVzc2FnZXMubGVuZ3RoO2IrKyl7dmFyIGM9dGhpcy5tZXNzYWdlc1tiXSxkPWFbYy5ub3RCZWZvcmVFdmVudElkXTtkfHwoZD1bXSxhW2Mubm90QmVmb3JlRXZlbnRJZF09ZCk7ZC5wdXNoKGMpfXJldHVybiBhfTtsRC5wcm90b3R5cGUucHJ1bmU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPVtdLGM9W10sZD0wO2Q8dGhpcy5tZXNzYWdlcy5sZW5ndGg7ZCsrKXt2YXIgZT10aGlzLm1lc3NhZ2VzW2RdO2Uubm90QmVmb3JlRXZlbnRJZD09PWE/Yi5wdXNoKGUpOmMucHVzaChlKX10aGlzLm1lc3NhZ2VzPWM7cmV0dXJuIGJ9OwpmdW5jdGlvbiBtRChhLGIsYyl7Yy5ldmVudE1ldGFkYXRhPWMuZXZlbnRNZXRhZGF0YXx8e307Yy5ldmVudE1ldGFkYXRhW0guSi5OYl09TSg1NTApP3ZrKCk6RSg2KTtuRCgpLmVucXVldWUoYSxiLGMpfWZ1bmN0aW9uIG5EKCl7cmV0dXJuIGtqKCJtYiIsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGxEfSl9O3ZhciBwRD1mdW5jdGlvbihhLGIpe3ZhciBjPW9EO2I9U3RyaW5nKGIpLnNwbGl0KCIsIik7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWMuTltiW2RdXXx8W107Yy5OW2JbZF1dPWU7ZS5pbmRleE9mKGEpPDAmJmUucHVzaChhKX19LHFEPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPW9ELGQ9W10sZT1bXSxmPXt9LGc9MDtnPGEubGVuZ3RoO2Y9e2xrOnZvaWQgMCxRajp2b2lkIDAsUmo6dm9pZCAwfSxnKyspe3ZhciBoPWFbZ107aWYoaC5pbmRleE9mKCItIik+PTApe2lmKGYubGs9YkMoaCxiKSxmLmxrKXt2YXIgbD10aygpO0NiKGwsZnVuY3Rpb24oeCl7cmV0dXJuIGZ1bmN0aW9uKHkpe3JldHVybiB4LmxrLmRlc3RpbmF0aW9uSWQ9PT15fX0oZikpP2QucHVzaChoKTplLnB1c2goaCl9fWVsc2V7aWYoTSg1NTApKXt2YXIgbj1jLktbaF18fFtdO2YuUmo9e307bi5mb3JFYWNoKGZ1bmN0aW9uKHgpe3JldHVybiBmdW5jdGlvbih5KXt4LlJqW3ldPSEwfX0oZikpO2Zvcih2YXIgcD0KdGsoKSxxPTA7cTxwLmxlbmd0aDtxKyspZi5SaltwW3FdXSYmZC5wdXNoKHBbcV0pfWVsc2V7dmFyIHI9Yy5IW2hdfHxbXTtmLlFqPXt9O3IuZm9yRWFjaChmdW5jdGlvbih4KXtyZXR1cm4gZnVuY3Rpb24oeSl7eC5Ralt5XT0hMH19KGYpKTtmb3IodmFyIHQ9d2soKSx1PTA7dTx0Lmxlbmd0aDt1KyspaWYoZi5Ralt0W3VdXSl7ZD1kLmNvbmNhdCh0aygpKTticmVha319dmFyIHY9Yy5OW2hdfHxbXTt2Lmxlbmd0aCYmKGQ9ZC5jb25jYXQodikpfX1yZXR1cm57ZWs6ZCxQczplfX0sckQ9ZnVuY3Rpb24oYSl7R2Iob0QuSCxmdW5jdGlvbihiLGMpe3ZhciBkPWMuaW5kZXhPZihhKTtkPj0wJiZjLnNwbGljZShkLDEpfSl9LHNEPWZ1bmN0aW9uKGEpe0diKG9ELkssZnVuY3Rpb24oYixjKXt2YXIgZD1jLmluZGV4T2YoYSk7ZD49MCYmYy5zcGxpY2UoZCwxKX0pfSx0RD1mdW5jdGlvbihhKXtHYihvRC5OLGZ1bmN0aW9uKGIsYyl7dmFyIGQ9Yy5pbmRleE9mKGEpO2Q+PTAmJmMuc3BsaWNlKGQsCjEpfSl9LG9EPW5ldyBmdW5jdGlvbigpe3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5LPXt9fTtmdW5jdGlvbiB1RChhLGIsYyl7dmFyIGQ9RWQoYSxudWxsKTtkLmV2ZW50SWQ9dm9pZCAwO2QuaW5oZXJpdFBhcmVudENvbmZpZz12b2lkIDA7T2JqZWN0LmtleXMoYikuc29tZShmdW5jdGlvbihmKXtyZXR1cm4gYltmXSE9PXZvaWQgMH0pJiZQKDEzNik7dmFyIGU9RWQoYixudWxsKTtFZChjLGUpO21EKHJDKHdrKClbMF0sZSksYS5ldmVudElkLGQpfQpmdW5jdGlvbiB2RChhLGIsYyxkKXt2YXIgZT17fSxmPShlW0YuRC5VYl09Ri5ELndhLGVbImd0bS5jb25maWdDb250YWluZXJJZCJdPWEuaWQsZVsiZ3RtLmNvbmZpZ1BhcmFtZXRlcnMiXT1iLGVbImd0bS51bmlxdWVFdmVudElkIl09ZC5ldmVudElkLGUpO2MucHJpb3JpdHlRdWV1ZSYmKGZbImd0bS5wcmlvcml0eVF1ZXVlIl09Yy5wcmlvcml0eVF1ZXVlKTtjLmV2ZW50TWV0YWRhdGEmJihmWyJndG0uZXZlbnRNZXRhZGF0YSJdPWMuZXZlbnRNZXRhZGF0YSk7YS5KYygpJiYoZlsiZ3RtLmNvbmZpZ0NvbnRhaW5lcklkIl09d2soKVswXSxmWyJndG0ub3JpZ2luYWxDb25maWdUYXJnZXRJZCJdPWEuaWQpO3JldHVybiBmfWZ1bmN0aW9uIHdEKGEsYixjKXtpZihJZigxMSkmJiFjJiYhYVtGLkQuVmRdKXt2YXIgZD1hbCgxMCxmdW5jdGlvbigpe3JldHVybiExfSk7WmsoMTAsITApO1hCKGQsYSxiKTtpZihkKXJldHVybiEwfXJldHVybiExfTtmdW5jdGlvbiB4RChhLGIpe3ZhciBjPXt9LGQ9KGMuZXZlbnQ9YSxjKTtiJiYoZC5ldmVudE1vZGVsPUVkKGIsbnVsbCksYltGLkQuUGZdJiYoZC5ldmVudENhbGxiYWNrPWJbRi5ELlBmXSksYltGLkQucGhdJiYoZC5ldmVudFRpbWVvdXQ9YltGLkQucGhdKSk7cmV0dXJuIGR9CmZ1bmN0aW9uIHlEKGEsYil7dmFyIGM9YSYmYVtGLkQuWGJdO2M9PT12b2lkIDAmJihjPXVBKEYuRC5YYiwyKSxjPT09dm9pZCAwJiYoYz0iZGVmYXVsdCIpKTtpZih6YihjKXx8QXJyYXkuaXNBcnJheShjKSl7dmFyIGQ7ZD1iLmlzR3RtRXZlbnQ/emIoYyk/W2NdOmM6Yy50b1N0cmluZygpLnJlcGxhY2UoL1xzKy9nLCIiKS5zcGxpdCgiLCIpO3ZhciBlPXFEKGQsYi5pc0d0bUV2ZW50KSxmPWUuZWssZz1lLlBzO2lmKGcubGVuZ3RoKWZvcih2YXIgaD1pRChhKSxsPTA7bDxnLmxlbmd0aDtsKyspe3ZhciBuPWJDKGdbbF0sYi5pc0d0bUV2ZW50KTtpZihuKXt2YXIgcD1uLmRlc3RpbmF0aW9uSWQscT12b2lkIDA7KChxPW5rKG4uZGVzdGluYXRpb25JZCkpPT1udWxsP3ZvaWQgMDpxLnN0YXRlKT09PTB8fG5BKHAsaCx7c291cmNlOjMsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KX19dmFyIHI9Zi5jb25jYXQoZyk7cmV0dXJue2VrOmNDKGYsYi5pc0d0bUV2ZW50KSwKbXI6Y0MocixiLmlzR3RtRXZlbnQpfX19O3ZhciB6RD17fSxBRD0oekQuY29uZmlnPWZ1bmN0aW9uKGEsYil7dmFyIGM9aEQoYSxiKSxkO2E6e2lmKCEoYS5sZW5ndGg8MikmJnpiKGFbMV0pKXt2YXIgZT17fTtpZihhLmxlbmd0aD4yKXtpZihhWzJdIT09dm9pZCAwJiYhQ2QoYVsyXSl8fGEubGVuZ3RoPjMpe2Q9dm9pZCAwO2JyZWFrIGF9ZT1hWzJdfXZhciBmPWJDKGFbMV0sYi5pc0d0bUV2ZW50KTtpZihmKXtkPXt0YXJnZXQ6ZixwYXJhbXM6ZX07YnJlYWsgYX19ZD12b2lkIDB9dmFyIGc9ZDtpZihnKXt2YXIgaD1nLnRhcmdldCxsPWcucGFyYW1zLG47YTp7aWYoIUlmKDcpKXt2YXIgcD15ayh6aygpKTtpZihNayhwKSl7dmFyIHE9cC5wYXJlbnQscj1xLmlzRGVzdGluYXRpb247bj17VnM6eWsocSksTXM6cn07YnJlYWsgYX19bj12b2lkIDB9dmFyIHQ9bix1PXQ9PW51bGw/dm9pZCAwOnQuVnMsdj10PT1udWxsP3ZvaWQgMDp0Lk1zO2RCKGMuZXZlbnRJZCwiZ3RhZy5jb25maWciKTt2YXIgeCx5PWguZGVzdGluYXRpb25JZDsKaWYoaC5KYygpP3RrKCkuaW5kZXhPZih5KSE9PS0xOndrKCkuaW5kZXhPZih5KSE9PS0xKWE6e2lmKHUmJihQKDEyOCksdiYmUCgxMzApLGIuaW5oZXJpdFBhcmVudENvbmZpZykpe3ZhciB6O3ZhciBDPSRrKDEyKTtpZihDKXVEKGIsQyxsKSx6PSExO2Vsc2V7dmFyIEQ9JGsoMTEpOyFsW0YuRC5WZF0mJihNKDU1MCl8fElmKDExKSkmJkR8fFprKDExLEVkKGwsbnVsbCkpO3o9ITB9eiYmdS5jb250YWluZXJzJiZ1LmNvbnRhaW5lcnMuam9pbigiLCIpO3g9dm9pZCAwO2JyZWFrIGF9dmFyIEk9IUlmKDQ1KSxHPSFTYihoLmlkLCJHVE0tIik7SSYmRyYmKE9iamVjdC5rZXlzKGwpLmxlbmd0aD09PTA/R3UoVC5XLlNrKTpHdShULlcuVGspLEVsKCkmJkd1KFQuVy5SayksJGsoMzEpJiZHdShULlcuVWspKTt2YXIgTj1ZQjtmbi5LJiYoTi5IPT09MSYmKFFtLkgubWNjPSExKSxOLkg9Mik7aWYoTSg1NTApfHwhd0QobCxiLGguSmMoKSkpe2tELkh8fFAoNDMpO2lmKCFNKDU1MCkpe2lmKCFiLm5vVGFyZ2V0R3JvdXApe3ZhciBTPQpoLmlkO2lmKGguSmMoKSl0RChTKSxwRChTLGxbRi5ELk9kXXx8ImRlZmF1bHQiKTtlbHNle3JEKFMpO3ZhciBXPWxbRi5ELk9kXXx8ImRlZmF1bHQiLGVhPW9EO1c9Vy50b1N0cmluZygpLnNwbGl0KCIsIik7Zm9yKHZhciBqYT0wO2phPFcubGVuZ3RoO2phKyspe3ZhciBmYT1lYS5IW1dbamFdXXx8W107ZWEuSFtXW2phXV09ZmE7ZmEuaW5kZXhPZihTKTwwJiZmYS5wdXNoKFMpfX19ZGVsZXRlIGxbRi5ELk9kXX12YXIgc2E9Yi5ldmVudE1ldGFkYXRhfHx7fTtzYS5oYXNPd25Qcm9wZXJ0eShILkouYWUpfHwoc2FbSC5KLmFlXT0hYi5mcm9tQ29udGFpbmVyRXhlY3V0aW9uKTtiLmV2ZW50TWV0YWRhdGE9c2E7ZGVsZXRlIGxbRi5ELlBmXTtpZihNKDU1MCkpe3g9dkQoaCxsLGIsYyk7YnJlYWsgYX12YXIgZGE9ISFsW0YuRC5WZF07ZGVsZXRlIGxbRi5ELlZkXTt2YXIgbWE9dGsoKSxQYT1jRCxGYT1hRDtoLkpjKCkmJihtYT1baC5pZF0sUGE9ZEQsRmE9YkQpO2Zvcih2YXIgcWE9MDtxYTwKbWEubGVuZ3RoO3FhKyspe2RhfHxQYShtYVtxYV0pO3ZhciBpYj1nRChtYVtxYV0pO0ZhKG1hW3FhXSxFZChsLG51bGwpLEVkKGIsbnVsbCkpO2liJiZkYXx8WkMoRi5ELndhLEVkKGwsbnVsbCksbWFbcWFdLEVkKGIsbnVsbCkpfX14PXZvaWQgMH1lbHNlIGE6e2lmKCFiLmluaGVyaXRQYXJlbnRDb25maWcmJiFsW0YuRC5aY10pe3ZhciBYYj1pRChsKSxMYz1oLmRlc3RpbmF0aW9uSWQ7aWYoaC5KYygpKW5BKExjLFhiLHtzb3VyY2U6Mixmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pO2Vsc2UgaWYodSE9PXZvaWQgMCYmdS5jb250YWluZXJzLmluZGV4T2YoTGMpIT09LTEpe3ZhciBRZD0kaygxMSksWWM9JGsoMTIpO1FkP3VEKGIsbCxRZCk6WWN8fFprKDEyLEVkKGwsbnVsbCkpfWVsc2UgaWYoaEEoTGMsWGIsITAse3NvdXJjZToyLGZyb21Db250YWluZXJFeGVjdXRpb246Yi5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufSksTSg1NTApKXt4PXZEKGgsCmwsYixjKTticmVhayBhfX14PXZvaWQgMH1yZXR1cm4geH19LHpELmNvbnNlbnQ9ZnVuY3Rpb24oYSxiKXtpZihhLmxlbmd0aD09PTMpe1AoMzkpO3ZhciBjPWhEKGEsYiksZD1hWzFdLGU9e30sZj1PbyhhWzJdKSxnO2ZvcihnIGluIGYpaWYoZi5oYXNPd25Qcm9wZXJ0eShnKSl7dmFyIGg9ZltnXTtlW2ddPWc9PT1GLkQuWWc/QXJyYXkuaXNBcnJheShoKT9OYU46TnVtYmVyKGgpOmc9PT1GLkQubmM/KEFycmF5LmlzQXJyYXkoaCk/aDpbaF0pLm1hcChQbyk6UW8oaCl9Yi5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufHwoZVtGLkQubWFdJiZQKDEzOSksZVtGLkQuWGFdJiZQKDE0MCkpO2Q9PT0iZGVmYXVsdCI/VG8oZSk6ZD09PSJ1cGRhdGUiP1ZvKGUsYyk6ZD09PSJkZWNsYXJlIiYmYi5mcm9tQ29udGFpbmVyRXhlY3V0aW9uJiZTbyhlKX19LHpELmNvbnRhaW5lcl9jb25maWc9ZnVuY3Rpb24oYSxiKXtpZihqRChiKSYmYS5sZW5ndGg9PT0zJiZ6YihhWzFdKSYmQ2QoYVsyXSkpe3ZhciBjPQphWzJdLGQ9YkMoYVsxXSwhMCk7ZCYmYUQoZC5kZXN0aW5hdGlvbklkLGMsRWQoYixudWxsKSl9fSx6RC5kZXN0aW5hdGlvbl9jb25maWc9ZnVuY3Rpb24oYSxiKXtpZihqRChiKSYmYS5sZW5ndGg9PT0zJiZ6YihhWzFdKSYmQ2QoYVsyXSkpe3ZhciBjPWFbMl0sZD1iQyhhWzFdLCEwKTtpZihkKXtpZihNKDU1MCkpe2lmKCFiLm5vVGFyZ2V0R3JvdXApe3ZhciBlPWQuaWQ7aWYoZC5KYygpKXREKGUpLHBEKGUsY1tGLkQuT2RdfHwiZGVmYXVsdCIpO2Vsc2V7c0QoZSk7dmFyIGY9Y1tGLkQuT2RdfHwiZGVmYXVsdCIsZz1vRDtmPVN0cmluZyhmKS5zcGxpdCgiLCIpO2Zvcih2YXIgaD0wO2g8Zi5sZW5ndGg7aCsrKXt2YXIgbD1nLktbZltoXV18fFtdO2cuS1tmW2hdXT1sO2wuaW5kZXhPZihlKTwwJiZsLnB1c2goZSl9fX1kZWxldGUgY1tGLkQuT2RdfWJEKGQuaWQsYyxFZChiLG51bGwpKX19fSx6RC5ldmVudD1mdW5jdGlvbihhLGIpe3ZhciBjPWFbMV07aWYoIShhLmxlbmd0aDwyKSYmCnpiKGMpKXt2YXIgZD12b2lkIDA7aWYoYS5sZW5ndGg+Mil7aWYoIUNkKGFbMl0pJiZhWzJdIT09dm9pZCAwfHxhLmxlbmd0aD4zKXJldHVybjtkPWFbMl19dmFyIGU9eEQoYyxkKSxmPWhEKGEsYiksZz1mLmV2ZW50SWQsaD1mLnByaW9yaXR5SWQ7ZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1nO2gmJihlWyJndG0ucHJpb3JpdHlJZCJdPWgpO2IucHJpb3JpdHlRdWV1ZSYmKGVbImd0bS5wcmlvcml0eVF1ZXVlIl09Yi5wcmlvcml0eVF1ZXVlKTtpZihjPT09Im9wdGltaXplLmNhbGxiYWNrIilyZXR1cm4gZS5ldmVudE1vZGVsPWUuZXZlbnRNb2RlbHx8e30sZTt2YXIgbD15RChkLGIpO2lmKGwpe2Zvcih2YXIgbj1sLmVrLHA9bC5tcixxPXAubWFwKGZ1bmN0aW9uKE4pe3JldHVybiBOLmlkfSkscj1wLm1hcChmdW5jdGlvbihOKXtyZXR1cm4gTi5kZXN0aW5hdGlvbklkfSksdD1uLm1hcChmdW5jdGlvbihOKXtyZXR1cm4gTi5pZH0pLHU9bSh0aygpKSx2PXUubmV4dCgpOyF2LmRvbmU7dj0KdS5uZXh0KCkpe3ZhciB4PXYudmFsdWU7ci5pbmRleE9mKHgpPDAmJnQucHVzaCh4KX1kQihnLGMpO2Zvcih2YXIgeT1tKHQpLHo9eS5uZXh0KCk7IXouZG9uZTt6PXkubmV4dCgpKXt2YXIgQz16LnZhbHVlLEQ9RWQoYixudWxsKSxJPUVkKGQsbnVsbCk7ZGVsZXRlIElbRi5ELlBmXTt2YXIgRz1ELmV2ZW50TWV0YWRhdGF8fHt9O0cuaGFzT3duUHJvcGVydHkoSC5KLmFlKXx8KEdbSC5KLmFlXT0hRC5mcm9tQ29udGFpbmVyRXhlY3V0aW9uKTtHW0guSi5tal09cS5zbGljZSgpO0dbSC5KLnNnXT1yLnNsaWNlKCk7RC5ldmVudE1ldGFkYXRhPUc7WkMoYyxJLEMsRCl9ZS5ldmVudE1vZGVsPWUuZXZlbnRNb2RlbHx8e307cS5sZW5ndGg+MD9lLmV2ZW50TW9kZWxbRi5ELlhiXT1xLmpvaW4oIiwiKTpkZWxldGUgZS5ldmVudE1vZGVsW0YuRC5YYl07a0QuSHx8UCg0Myk7Yi5ub0d0bUV2ZW50PT09dm9pZCAwJiZiLmV2ZW50TWV0YWRhdGEmJmIuZXZlbnRNZXRhZGF0YVtILkouQm5dJiYoYi5ub0d0bUV2ZW50PQohMCk7ZS5ldmVudE1vZGVsW0YuRC5ZY10mJihiLm5vR3RtRXZlbnQ9ITApO3JldHVybiBiLm5vR3RtRXZlbnQ/dm9pZCAwOmV9fX0sekQuZ2V0PWZ1bmN0aW9uKGEsYil7UCg1Myk7aWYoYS5sZW5ndGg9PT00JiZ6YihhWzFdKSYmemIoYVsyXSkmJnliKGFbM10pKXt2YXIgYz1iQyhhWzFdLGIuaXNHdG1FdmVudCksZD1TdHJpbmcoYVsyXSksZT1hWzNdO2lmKGMpe2tELkh8fFAoNDMpO3ZhciBmPWlEKCk7aWYoQ2IodGsoKSxmdW5jdGlvbihoKXtyZXR1cm4gYy5kZXN0aW5hdGlvbklkPT09aH0pKXtoRChhLGIpO3ZhciBnPXt9O0VkKChnW0YuRC5UZl09ZCxnW0YuRC5TZl09ZSxnKSxudWxsKTskQyhkLGZ1bmN0aW9uKGgpe2JkKGZ1bmN0aW9uKCl7ZShoKX0pfSxjLmlkLGIpfWVsc2UgbkEoYy5kZXN0aW5hdGlvbklkLGYse3NvdXJjZTo0LGZyb21Db250YWluZXJFeGVjdXRpb246Yi5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufSl9fX0sekQuanM9ZnVuY3Rpb24oYSxiKXt2YXIgYztpZihhLmxlbmd0aD09PQoyJiZhWzFdLmdldFRpbWUpe2tELkg9ITA7dmFyIGQ9aEQoYSxiKSxlPWQuZXZlbnRJZCxmPWQucHJpb3JpdHlJZCxnPXt9O2M9KGcuZXZlbnQ9Imd0bS5qcyIsZ1siZ3RtLnN0YXJ0Il09YVsxXS5nZXRUaW1lKCksZ1siZ3RtLnVuaXF1ZUV2ZW50SWQiXT1lLGdbImd0bS5wcmlvcml0eUlkIl09ZixnKX1lbHNlIGM9dm9pZCAwO3JldHVybiBjfSx6RC5wb2xpY3k9ZnVuY3Rpb24oYSl7aWYoYS5sZW5ndGg9PT0zJiZ6YihhWzFdKSYmeWIoYVsyXSkpe2lmKGh5KGFbMV0sYVsyXSksUCg3NCksYVsxXT09PSJhbGwiKXtQKDc1KTt2YXIgYj0hMTt0cnl7Yj1hWzJdKEUoNSksInVua25vd24iLHt9KX1jYXRjaChjKXt9Ynx8UCg3Nil9fWVsc2UgUCg3Myl9LHpELnJlc2V0X3RhcmdldF9jb25maWc9ZnVuY3Rpb24oYSxiKXtpZihqRChiKSYmYS5sZW5ndGg9PT0yJiZ6YihhWzFdKSl7dmFyIGM9YkMoYVsxXSwhMCk7YyYmZEQoYy5pZCl9fSx6RC5zZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz12b2lkIDA7CmEubGVuZ3RoPT09MiYmQ2QoYVsxXSk/Yz1FZChhWzFdLG51bGwpOmEubGVuZ3RoPT09MyYmemIoYVsxXSkmJihjPXt9LENkKGFbMl0pfHxBcnJheS5pc0FycmF5KGFbMl0pP2NbYVsxXV09RWQoYVsyXSxudWxsKTpjW2FbMV1dPWFbMl0pO2lmKGMpe1prKDMxLCEwKTt2YXIgZD1oRChhLGIpLGU9ZC5ldmVudElkLGY9ZC5wcmlvcml0eUlkO0VkKGMsbnVsbCk7RSg1KTt2YXIgZz1FZChjLG51bGwpO1lDKCkuSC5wdXNoKCJzZXQiLFtnXSx2b2lkIDAsYik7Y1siZ3RtLnVuaXF1ZUV2ZW50SWQiXT1lO2YmJihjWyJndG0ucHJpb3JpdHlJZCJdPWYpO2RlbGV0ZSBjLmV2ZW50O2Iub3ZlcndyaXRlTW9kZWxGaWVsZHM9ITA7cmV0dXJuIGN9fSx6RCksQkQ9e30sQ0Q9KEJELnBvbGljeT0hMCxCRCk7dmFyIEVEPWZ1bmN0aW9uKGEpe2lmKEREKGEpKXJldHVybiBhO3RoaXMudmFsdWU9YX07RUQucHJvdG90eXBlLmdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlfTt2YXIgREQ9ZnVuY3Rpb24oYSl7cmV0dXJuIWF8fEFkKGEpIT09Im9iamVjdCJ8fENkKGEpPyExOiJnZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWUiaW4gYX07RUQucHJvdG90eXBlLmdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZT1FRC5wcm90b3R5cGUuZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlO3ZhciBGRD17QmI6IjEiLGVlOiIyIixYZDoiMyIsY2U6IjQiLHhmOiI1IixxZzoiNiIsS2g6IjciLHRqOiI4IixsaToiOSIsamo6IjEwIn07CnZhciBHRD1mdW5jdGlvbihhLGIpe2lmKGEpe3ZhciBjPWEudHJpbSgpLnJlcGxhY2VBbGwoL1xzKy9nLCIiKS5yZXBsYWNlQWxsKC8oXGR7Mix9KVwuL2csIiQxIikucmVwbGFjZUFsbCgvLS9nLCIiKS5yZXBsYWNlQWxsKC9cKChcZCspXCkvZywiJDEiKTtpZihiJiZjLm1hdGNoKC9eXCs/XGR7Myw0fSQvKSlyZXR1cm4gYztjLmNoYXJBdCgwKSE9PSIrIiYmKGM9IisiK2MpO2lmKGMubWF0Y2gobmV3IFJlZ0V4cCgiXlxcK1xcZHsiKyhNKDU5Nyk/NzoxMCkrIiwxNX0kIikpKXJldHVybiBjfX0sSUQ9ZnVuY3Rpb24oYSl7aWYoYSl7dmFyIGI9YS50cmltKCk7aWYoSEQudGVzdChiKSlyZXR1cm4gYi50b0xvd2VyQ2FzZSgpLnJlcGxhY2VBbGwoL1stIF0rL2csIiIpfX0sTUQ9ZnVuY3Rpb24oYSl7dmFyIGI9SkQoS0QpKGEpO2lmKGImJiFMRChiKSlyZXR1cm4gYn0sTEQ9ZnVuY3Rpb24oYSl7aWYoIUEubG9jYXRpb24pcmV0dXJuITE7dmFyIGI9TmooQS5sb2NhdGlvbiwiaG9zdCIsITApLApjO2lmKE0oNjAyKSlhOntmb3IodmFyIGQ9Yi5zcGxpdCgiLiIpLGU9YS50b0xvd2VyQ2FzZSgpLGY9MDtmPGQubGVuZ3RoLTE7ZisrKXt2YXIgZz1kLnNsaWNlKGYpLmpvaW4oIi4iKTtpZihlLm1hdGNoKCJAIitnKyIkIikpe2M9ITA7YnJlYWsgYX19Yz0hMX1lbHNlIGM9YS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoYik+PTA7cmV0dXJuIGN9LEpEPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYz1iLm1hdGNoKGEpO3JldHVybiBjP2NbMF0udHJpbSgpLnRvTG93ZXJDYXNlKCk6dm9pZCAwfX0sS0Q9L1tBLVowLTkuXyUrLV0rQFtBLVowLTkuLV0rXC5bQS1aXXsyLH0vaSxORD1KRCgvXihbXlx4MDAtXHg0MFx4NWItXHg2MFx4N2ItXHhmZl18Wy4tXXxccykrJC8pLEhEPVJlZ0V4cCgiXig/OltBLVpdezEsMn1cXGRbQS1aXFxkXT9bIC1dP1xcZFtBLVpdezJ9fFtBLVpdXFxkW0EtWl1bIC1dP1xcZFtBLVpdXFxkfFxcZHs0fSA/W0EtWl17Mn18W0EtWl1cXGR7NH1bQS1aXXszfXxcXGR7NX0oPzotXFxkezR9KT98XFxkezV9LVxcZHszfXxcXGR7NH0tXFxkezN9fFxcZHszfS1cXGR7NH18XFxkezJ9LVxcZHszfXxcXGR7M30gP1xcZHsyfXxcXGR7NCw3fSkkIiwKImkiKSxPRD1KRCgvXihbXlx4MDAtXHg0MFx4NWItXHg2MFx4N2ItXHhmZl18Wy4tXXxcc3xcZCkrJC8pOwp2YXIgUEQ9ZnVuY3Rpb24oKXt2YXIgYT1TdHJpbmcoYWwoMzMsZnVuY3Rpb24oKXtyZXR1cm4gMH0pKTthLmluZGV4T2YoIi4iKSE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGEuaW5kZXhPZigiLiIpKzMpKTt2YXIgYj1hbCgzNCxmdW5jdGlvbigpe3JldHVybiAwfSk7cmV0dXJue3Z0Ok51bWJlcihhKSxzdDpifX0sUUQ9ZnVuY3Rpb24oKXtyZXR1cm4gYWwoMzIsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE1hcH0pfSxTRD1mdW5jdGlvbihhKXt2YXIgYj1wZCgpfHwwLGM9W0ZELkJiXTtNKDU2OCkmJmMucHVzaChGRC5lZSxGRC5YZCxGRC5jZSxGRC54ZixGRC5xZyxGRC50aixGRC5saSxGRC5qaik7Zm9yKHZhciBkPVJEKGEsbmV3IFNldChjKSksZT1hbCgzMixmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwfSksZj1tKGQpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD1nLnZhbHVlO2Uuc2V0KGguRGEsaCl9dmFyIGw9KHBkKCl8fDApLWIsbj1hbCgzMyxmdW5jdGlvbigpe3JldHVybiAwfSk7ClprKDMzLG4rbCk7dmFyIHA9YWwoMzQsZnVuY3Rpb24oKXtyZXR1cm4gMH0pO1prKDM0LHArMSl9LFJEPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPU5mKDM2LDIpLGQ9W10sZT1be29vOmEsZGVwdGg6MH1dO2UubGVuZ3RoPjA7KWZvcih2YXIgZj1lLnNoaWZ0KCksZz1mLm9vLGg9Zi5kZXB0aCxsPW0oT2JqZWN0LmtleXMoZykpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO2lmKCFURC5oYXMocCkpe3ZhciBxPWdbcF07aWYocSlpZihDZChxKSloKzE8PWMmJmUucHVzaCh7b286cSxkZXB0aDpoKzF9KTtlbHNle2Zvcih2YXIgcj1tKGIpLHQ9ci5uZXh0KCk7IXQuZG9uZTt0PXIubmV4dCgpKXt2YXIgdT10LnZhbHVlLHY9VURbdV07aWYodiYmdi5LYy50ZXN0KHApKXt2YXIgeD12Lm5hKFN0cmluZyhxKSk7aWYoeCl7ZC5wdXNoKHtDYTp4LERhOnV9KTtiLmRlbGV0ZSh1KTticmVha319fWlmKGIuc2l6ZT09PTApcmV0dXJuIGR9fX1yZXR1cm4gZH0sVEQ9Cm5ldyBTZXQoWyJpdGVtcyIsImVjb21tZXJjZSJdKSxWRD1SZWdFeHAoInBob25lIiwiaSIpLFdEPVJlZ0V4cCgiZmlyc3RfP25hbWUiLCJpIiksWEQ9UmVnRXhwKCJsYXN0Xz9uYW1lIiwiaSIpLFlEPVJlZ0V4cCgiY291bnRyeSIsImkiKSxaRD1SZWdFeHAoInBvc3R8emlwIiwiaSIpLCREPVJlZ0V4cCgiYWRkcmVzc3xzdHJlZXQiLCJpIiksYUU9UmVnRXhwKCJjaXR5IiwiaSIpLGJFPVJlZ0V4cCgicmVnaW9ufHN0YXRlfHByb3ZpbmNlIiwiaSIpLGNFPXt9LFVEPShjRVtGRC5CYl09e0tjOlJlZ0V4cCgiZW1haWwiLCJpIiksbmE6TUR9LGNFW0ZELmVlXT17S2M6VkQsbmE6ZnVuY3Rpb24oYSl7cmV0dXJuIEdEKGEsITEpfX0sY0VbRkQuWGRdPXtLYzpXRCxuYTpORH0sY0VbRkQuY2VdPXtLYzpYRCxuYTpORH0sY0VbRkQudGpdPXtLYzokRCxuYTpPRH0sY0VbRkQubGldPXtLYzphRSxuYTpORH0sY0VbRkQuampdPXtLYzpiRSxuYTpORH0sY0VbRkQucWddPXtLYzpaRCxuYTpJRH0sY0VbRkQueGZdPQp7S2M6WUQsbmE6TkR9LGNFKTt2YXIgZEU9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMubG9hZGVkPSExO3RoaXMuSD1bXTtpZihCLnJlYWR5U3RhdGU9PT0iY29tcGxldGUiKXRoaXMub25Mb2FkKCk7ZWxzZSAkYyhBLCJsb2FkIixmdW5jdGlvbigpe3JldHVybiB2b2lkIGEub25Mb2FkKCl9KX07ZEUucHJvdG90eXBlLm9uTG9hZD1mdW5jdGlvbigpe2lmKCF0aGlzLmxvYWRlZCl7dGhpcy5sb2FkZWQ9ITA7Zm9yKHZhciBhPTA7YTx0aGlzLkgubGVuZ3RoO2ErKyliZCh0aGlzLkhbYV0pfX07dmFyIGZFPWZ1bmN0aW9uKGEpe3ZhciBiPWVFO2IubG9hZGVkP2JkKGEpOmIuSC5wdXNoKGEpfSxlRT1uZXcgZEU7dmFyIGdFPWZ1bmN0aW9uKCl7dGhpcy5aPTA7dGhpcy5LPXt9O3RoaXMuSD1bXTt0aGlzLk49W107dGhpcy5mYT10aGlzLlI9dGhpcy5qYT0hMX0saUU9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWhFO2EuZXZlbnRDYWxsYmFjaz1iO2MmJihhLmV2ZW50VGltZW91dD1jKTtyZXR1cm4gZC5wdXNoKGEpfSxqRT1mdW5jdGlvbihhLGIpe2lmKCFBYihiKXx8YjwwKWI9MDt2YXIgYz1xaigpLGQ9MCxlPSExLGY9dm9pZCAwO2Y9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZXx8KGU9ITAsYSgpKTtmPXZvaWQgMH0sYik7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGc9Yz9jLnN1YnNjcmliZXJzOjE7KytkPT09ZyYmKGYmJihBLmNsZWFyVGltZW91dChmKSxmPXZvaWQgMCksZXx8KGEoKSxlPSEwKSl9fSxsRT1mdW5jdGlvbihhKXt2YXIgYjtpZihhLk4ubGVuZ3RoKWI9YS5OLnNoaWZ0KCk7ZWxzZSBpZihhLkgubGVuZ3RoKWI9YS5ILnNoaWZ0KCk7ZWxzZSByZXR1cm47dmFyIGM7dmFyIGQ9YjtpZihhLmphfHwKIWtFKGQubWVzc2FnZSkpYz1kO2Vsc2V7YS5qYT0hMDt2YXIgZT1kLm1lc3NhZ2VbImd0bS51bmlxdWVFdmVudElkIl0sZixnO3R5cGVvZiBlPT09Im51bWJlciI/KGY9ZS0yLGc9ZS0xKTooZj1yaigpLGc9cmooKSxkLm1lc3NhZ2VbImd0bS51bmlxdWVFdmVudElkIl09cmooKSk7dmFyIGg9e30sbD17bWVzc2FnZTooaC5ldmVudD0iZ3RtLmluaXRfY29uc2VudCIsaFsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1mLGgpLG1lc3NhZ2VDb250ZXh0OntldmVudElkOmZ9fSxuPXt9LHA9e21lc3NhZ2U6KG4uZXZlbnQ9Imd0bS5pbml0IixuWyJndG0udW5pcXVlRXZlbnRJZCJdPWcsbiksbWVzc2FnZUNvbnRleHQ6e2V2ZW50SWQ6Z319O2EuSC51bnNoaWZ0KHAsZCk7Yz1sfXJldHVybiBjfSxvRT1mdW5jdGlvbihhKXthLmZhfHxQKDE5Nik7Zm9yKHZhciBiPSExLGM7IWEuUiYmKGM9bEUoYSkpOyl7YS5SPSEwO3ZhciBkPXJBO2RlbGV0ZSBkLkguZXZlbnRNb2RlbDtvQShkKTt2YXIgZT1jLGY9CmUubWVzc2FnZSxnPWUubWVzc2FnZUNvbnRleHQ7aWYoZj09bnVsbClhLlI9ITE7ZWxzZXtnLmZyb21Db250YWluZXJFeGVjdXRpb24mJnNBKCk7dHJ5e2lmKHliKGYpKXRyeXtmLmNhbGwodEEpfWNhdGNoKFMpe31lbHNlIGlmKEFycmF5LmlzQXJyYXkoZikpe2lmKHpiKGZbMF0pKXt2YXIgaD1mWzBdLnNwbGl0KCIuIiksbD1oLnBvcCgpLG49Zi5zbGljZSgxKSxwPXVBKGguam9pbigiLiIpLDIpO2lmKHAhPW51bGwpdHJ5e3BbbF0uYXBwbHkocCxuKX1jYXRjaChTKXt9fX1lbHNle3ZhciBxPXZvaWQgMDtpZihIYihmKSlhOntpZihmLmxlbmd0aCYmemIoZlswXSkpe3ZhciByPUFEW2ZbMF1dO2lmKHImJighZy5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufHwhQ0RbZlswXV0pKXtxPXIoZixnKTticmVhayBhfX1xPXZvaWQgMH1lbHNlIHE9ZjtpZihxKXt2YXIgdDtmb3IodmFyIHU9cSx2PXUuX2NsZWFyfHxnLm92ZXJ3cml0ZU1vZGVsRmllbGRzLHg9bShPYmplY3Qua2V5cyh1KSkseT14Lm5leHQoKTsheS5kb25lO3k9CngubmV4dCgpKXt2YXIgej15LnZhbHVlO3ohPT0iX2NsZWFyIiYmKHYmJnJBLnNldCh6LHZvaWQgMCksckEuc2V0KHosdVt6XSkpfU0oNTkyKSYmU0QodSk7JGsoMjUpfHxaaygyNSx1WyJndG0uc3RhcnQiXSk7dmFyIEM9dVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXTt1LmV2ZW50Pyh0eXBlb2YgQyE9PSJudW1iZXIiJiYoQz1yaigpLHVbImd0bS51bmlxdWVFdmVudElkIl09QyxyQS5zZXQoImd0bS51bmlxdWVFdmVudElkIixDKSksdD16Qih1KSk6dD0hMTtiPXR8fGJ9fX1maW5hbGx5e2cuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbiYmb0EockEsITApO3ZhciBEPWZbImd0bS51bmlxdWVFdmVudElkIl07aWYodHlwZW9mIEQ9PT0ibnVtYmVyIil7Zm9yKHZhciBJPWEsRz1JLktbU3RyaW5nKEQpXXx8W10sTj0wO048Ry5sZW5ndGg7TisrKUkuTi5wdXNoKG1FKEdbTl0pKTtHLmxlbmd0aCYmSS5OLnNvcnQobkUpO2RlbGV0ZSBJLktbU3RyaW5nKEQpXTtEPmEuWiYmKGEuWj1EKX1hLlI9ITF9fX1yZXR1cm4hYn0sCnBFPWZ1bmN0aW9uKCl7dmFyIGE9aEU7YS5mYSYmUCgxOTUpO2EuZmE9ITA7aWYoZm4uSCl7dmFyIGI9IUlmKDUxKSxjPXJ6KCk7cHooYyx7c3RhZ2U6SXkuWC5aZ30pO2lmKGIpe3ZhciBkPXF6KGMse3N0YWdlOkl5LlguWWt9LEl5LlgubmkpO2QhPT12b2lkIDAmJihjLkguWT1kKX12YXIgZT1hLkgubGVuZ3RoO3J6KCkuSC5DPWV9b0UoYSk7aWYoZm4uSCl7dmFyIGY9cnooKSxnPXF6KGYse3N0YWdlOkl5LlguVmt9LEl5LlguWmcpO2chPT12b2lkIDAmJihmLkguQj1nKX10cnl7dmFyIGg9QVtFKDE5KV0sbD1FKDUpLG49aC5oaWRlO2lmKG4mJm5bbF0hPT12b2lkIDAmJm4uZW5kKXtuW2xdPSExO3ZhciBwPSEwLHE7Zm9yKHEgaW4gbilpZihuLmhhc093blByb3BlcnR5KHEpJiZuW3FdPT09ITApe3A9ITE7YnJlYWt9cCYmKG4uZW5kKCksbi5lbmQ9bnVsbCl9fWNhdGNoKHIpe0UoNSl9fSxxRT1mdW5jdGlvbihhLGIpe2lmKGEuWjxiLm5vdEJlZm9yZUV2ZW50SWQpe3ZhciBjPVN0cmluZyhiLm5vdEJlZm9yZUV2ZW50SWQpOwphLktbY109YS5LW2NdfHxbXTthLktbY10ucHVzaChiKX1lbHNle2EuTi5wdXNoKG1FKGIpKTthLk4uc29ydChuRSk7dmFyIGQ9ZnVuY3Rpb24oKXthLlJ8fG9FKGEpfTtNKDU4MCk/ZGQoZCk6YmQoZCl9fTsKZ0UucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGgpe3ZhciBsPXt9O2lmKEREKGgpKXt2YXIgbj1oO2g9REQobik/bi5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWUoKTp2b2lkIDA7bC5mcm9tQ29udGFpbmVyRXhlY3V0aW9uPSEwfXJldHVybnttZXNzYWdlOmgsbWVzc2FnZUNvbnRleHQ6bH19dmFyIGI9dGhpcyxjPU1jKEUoMTkpLFtdKSxkPXBqKCk7ZC5wcnVuZWQ9PT0hMCYmUCg4Myk7dGhpcy5LPW5EKCkuZ2V0KCk7bkQoKS5saXN0ZW4oZnVuY3Rpb24oaCl7cUUoYixoKX0pO2Quc3Vic2NyaWJlcnM9KGQuc3Vic2NyaWJlcnN8fDApKzE7dmFyIGU9Yy5wdXNoLGY9dGhpcztjLnB1c2g9ZnVuY3Rpb24oKXt2YXIgaDtsaigpO2lmKGpqLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRT4wKXtoPVtdO2Zvcih2YXIgbD0wO2w8YXJndW1lbnRzLmxlbmd0aDtsKyspaFtsXT1uZXcgRUQoYXJndW1lbnRzW2xdKX1lbHNlIGg9W10uc2xpY2UuY2FsbChhcmd1bWVudHMsMCk7CnZhciBuPWgubWFwKGZ1bmN0aW9uKHQpe3JldHVybiBhKHQpfSk7Zi5ILnB1c2guYXBwbHkoZi5ILG4pO3ZhciBwPWUuYXBwbHkoYyxoKSxxPU1hdGgubWF4KDEwMCxOZigxLDMwMCkpO2lmKHRoaXMubGVuZ3RoPnEpZm9yKFAoNCksZC5wcnVuZWQ9ITA7dGhpcy5sZW5ndGg+cTspdGhpcy5zaGlmdCgpO3ZhciByPXR5cGVvZiBwIT09ImJvb2xlYW4ifHxwO3JldHVybiBvRShmKSYmcn07dmFyIGc9Yy5zbGljZSgwKS5tYXAoZnVuY3Rpb24oaCl7cmV0dXJuIGEoaCl9KTt0aGlzLkgucHVzaC5hcHBseSh0aGlzLkgsZyk7SWYoNTEpfHwoZm4uSCYmdXooKSxiZChyRSkpO1ZCKGZ1bmN0aW9uKCl7aWYoIWQuZ3RtRG9tKXtkLmd0bURvbT0hMDt2YXIgaD17fTtjLnB1c2goKGguZXZlbnQ9Imd0bS5kb20iLGgpKX19KTtmRShmdW5jdGlvbigpe2lmKCFkLmd0bUxvYWQpe2QuZ3RtTG9hZD0hMDt2YXIgaD17fTtjLnB1c2goKGguZXZlbnQ9Imd0bS5sb2FkIixoKSl9fSl9OwpnRS5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihhKXtyZXR1cm4gQVtFKDE5KV0ucHVzaChhKX07dmFyIGhFPW5ldyBnRTtmdW5jdGlvbiBuRShhLGIpe3ZhciBjPWEubWVzc2FnZUNvbnRleHQsZD1iLm1lc3NhZ2VDb250ZXh0O2lmKGMuZXZlbnRJZCE9PWQuZXZlbnRJZClyZXR1cm4gYy5ldmVudElkLWQuZXZlbnRJZDtpZighTSg1OTUpKXJldHVybiBjLnByaW9yaXR5SWQtZC5wcmlvcml0eUlkO3ZhciBlLGYsZzthOntmb3IodmFyIGg9KGU9Yy5wcmlvcml0eVF1ZXVlKSE9bnVsbD9lOltjLnByaW9yaXR5SWRdLGw9KGY9ZC5wcmlvcml0eVF1ZXVlKSE9bnVsbD9mOltkLnByaW9yaXR5SWRdLG49TWF0aC5taW4oaC5sZW5ndGgsbC5sZW5ndGgpLHA9MDtwPG47cCsrKWlmKGhbcF0hPT1sW3BdKXtnPWhbcF0tbFtwXTticmVhayBhfWc9aC5sZW5ndGgtbC5sZW5ndGh9cmV0dXJuIGd9CmZ1bmN0aW9uIGtFKGEpe2lmKGE9PW51bGx8fHR5cGVvZiBhIT09Im9iamVjdCIpcmV0dXJuITE7aWYoYS5ldmVudClyZXR1cm4hMDtpZihIYihhKSl7dmFyIGI9YVswXTtpZihiPT09ImNvbmZpZyJ8fGI9PT0iZXZlbnQifHxiPT09ImpzInx8Yj09PSJnZXQiKXJldHVybiEwfXJldHVybiExfWZ1bmN0aW9uIG1FKGEpe3JldHVybnttZXNzYWdlOmEubWVzc2FnZSxtZXNzYWdlQ29udGV4dDphLm1lc3NhZ2VDb250ZXh0fX1mdW5jdGlvbiBzRShhLGIsYyl7cmV0dXJuIGlFKGEsYixjKX1mdW5jdGlvbiB0RShhLGIpe3JldHVybiBqRShhLGIpfWZ1bmN0aW9uIHJFKCl7cEUoKX1mdW5jdGlvbiB1RShhKXtyZXR1cm4gaEUucHVzaChhKX07dmFyIHZFPWZ1bmN0aW9uKCl7fTt2RS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe3ZhciBhLGI9UmooQS5sb2NhdGlvbi5ocmVmKTsoYT1iLmhvc3RuYW1lK2IucGF0aG5hbWUpJiZVbSgiZGwiLGVuY29kZVVSSUNvbXBvbmVudChhKSk7dmFyIGM7dmFyIGQ9RSg1KTtpZihkKXt2YXIgZT1JZig3KT8xOjAsZj1GaygpLGc9ZiYmZi5mcm9tQ29udGFpbmVyRXhlY3V0aW9uPzE6MCxoPWYmJmYuc291cmNlfHwwLGw9RSg2KTtjPWQrIjsiK2wrIjsiK2crIjsiK2grIjsiK2V9ZWxzZSBjPXZvaWQgMDt2YXIgbj1jO24mJlVtKCJ0ZHAiLG4pO3ZhciBwPU9wKCEwKTtwIT09dm9pZCAwJiZVbSgiZnJtIixTdHJpbmcocCkpfTt2YXIgd0U9bmV3IHZFO3ZhciB4RT1mdW5jdGlvbigpe3RoaXMuSD1YbSgpO3RoaXMuSz12b2lkIDB9LHlFPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFptKGEsZnVuY3Rpb24oYyl7cmV0dXJuIGMuamI+MD9iP2MuamIrIl8iK1dtKGMpOlN0cmluZyhjLmpiKTp2b2lkIDB9KX07CnhFLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcztpZihwbCgpfHxmbi5LKVVtKCJjc3AiLGZ1bmN0aW9uKCl7dmFyIGI9eUUoYS5ILCEwKTskbShhLkgpO3JldHVybiBifSwhMSksVW0oIm1kZSIsZnVuY3Rpb24oKXt2YXIgYj1jbi5ILGM9eUUoYiwhMSk7JG0oYik7cmV0dXJuIGN9LCExKSxBLmFkZEV2ZW50TGlzdGVuZXIoInNlY3VyaXR5cG9saWN5dmlvbGF0aW9uIixmdW5jdGlvbihiKXtpZihiLmRpc3Bvc2l0aW9uPT09ImVuZm9yY2UiKXtQKDE3OSk7dmFyIGM9bm4oYi5lZmZlY3RpdmVEaXJlY3RpdmUpO2lmKGMpe3ZhciBkO2E6e3ZhciBlPWIuYmxvY2tlZFVSSSxmPWtuO2lmKGZuLksmJmUpe3ZhciBnPWpuKGMsZSk7aWYoZyl7dmFyIGg7ZD0oaD1sbihmLGMpKT09bnVsbD92b2lkIDA6aFtnXTticmVhayBhfX1kPXZvaWQgMH12YXIgbD1kO2lmKGwpe3ZhciBuO2E6e3RyeXt2YXIgcD1uZXcgVVJMKGIuYmxvY2tlZFVSSSkscT1wLnBhdGhuYW1lLmluZGV4T2YoIjsiKTsKbj1xPj0wP3Aub3JpZ2luK3AucGF0aG5hbWUuc3Vic3RyaW5nKDAscSk6cC5vcmlnaW4rcC5wYXRobmFtZTticmVhayBhfWNhdGNoKEQpe31uPXZvaWQgMH12YXIgcj1uO2lmKHIpe2Zvcih2YXIgdD1tKGwpLHU9dC5uZXh0KCk7IXUuZG9uZTt1PXQubmV4dCgpKXt2YXIgdj11LnZhbHVlO2lmKCF2LkVvKXt2LkVvPSEwO3ZhciB4PXtldmVudElkOnYuZXZlbnRJZCxwcmlvcml0eUlkOnYucHJpb3JpdHlJZH07aWYocGwoKSl7dmFyIHk9eCx6PXt0eXBlOjEsYmxvY2tlZFVybDpyLGVuZHBvaW50OnYuZW5kcG9pbnQsdmlvbGF0aW9uOmIuZWZmZWN0aXZlRGlyZWN0aXZlfTtpZihwbCgpKXt2YXIgQz1MbCgiVEFHX0RJQUdOT1NUSUNTIix7ZXZlbnRJZDp5PT1udWxsP3ZvaWQgMDp5LmV2ZW50SWQscHJpb3JpdHlJZDp5PT1udWxsP3ZvaWQgMDp5LnByaW9yaXR5SWR9KTtDLnRhZ0RpYWdub3N0aWNzPXo7b2woQyl9fXpFKGEsdi5kZXN0aW5hdGlvbklkLHYuZW5kcG9pbnQsYyl9fW1uKGMsCmIuYmxvY2tlZFVSSSl9fX19fSl9O3ZhciB6RT1mdW5jdGlvbihhLGIsYyxkKXthbihhLkgsYixjLDEsZCk7Vm0oImNzcCIsITApO1ZtKCJtZGUiLCEwKTtjIT09NjEmJmMhPT01NiYmYS5LPT09dm9pZCAwJiYoYS5LPUEuc2V0VGltZW91dChmdW5jdGlvbigpe2EuSC5qYj4wJiZ0byghMSk7YS5LPXZvaWQgMH0sNTAwKSl9LEFFPW5ldyB4RTt2YXIgQkU9ZnVuY3Rpb24oKXt0aGlzLnNlcXVlbmNlTnVtYmVyPTB9O0JFLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcztDRSh0aGlzKTtJZig2NSkmJlVtKCJtdGJsIiwiMSIpO1VtKCJ2IiwiMyIpO1VtKCJ0IiwidCIpO1VtKCJwaWQiLGZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyhubShqbS5iYS5iaCkpfSk7VW0oImd0bSIsZnVuY3Rpb24oKXtyZXR1cm4gZHUoKX0pO1VtKCJzZXEiLGZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZygrK2Euc2VxdWVuY2VOdW1iZXIpfSk7VW0oImV4cCIsZnVuY3Rpb24oKXtyZXR1cm4gQ3AoKX0pfTt2YXIgQ0U9ZnVuY3Rpb24oYSl7aWYobm0oam0uYmEuYmgpPT09dm9pZCAwKXt2YXIgYj1mdW5jdGlvbigpe21tKGptLmJhLmJoLERiKCkpO2Euc2VxdWVuY2VOdW1iZXI9MH07YigpO2NkKGIsODY0RTUpfWVsc2UgcG0oam0uYmEuYmgsZnVuY3Rpb24oKXthLnNlcXVlbmNlTnVtYmVyPTB9KTthLnNlcXVlbmNlTnVtYmVyPTB9LERFPW5ldyBCRTtmdW5jdGlvbiBFRShhKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gQVthXX19CnZhciBGRT17fSxHRT0oRkVbMTRdPWZ1bmN0aW9uKCl7dmFyIGE7cmV0dXJuKGE9QS5jcnlwdG8pPT1udWxsP3ZvaWQgMDphLmdldFJhbmRvbVZhbHVlc30sRkVbMTVdPWZ1bmN0aW9uKCl7dmFyIGEsYjtyZXR1cm4oYT1BLmNyeXB0byk9PW51bGw/dm9pZCAwOihiPWEuc3VidGxlKT09bnVsbD92b2lkIDA6Yi5kaWdlc3R9LEZFWzFdPUVFKCJmZXRjaCIpLEZFWzZdPUVFKCJNYXAiKSxGRVsyXT1mdW5jdGlvbigpe3JldHVybiBNYXRoLnJhbmRvbX0sRkVbOF09ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKX0sRkVbOV09ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmVudHJpZXN9LEZFWzEwXT1mdW5jdGlvbigpe3JldHVybiBPYmplY3QuZnJvbUVudHJpZXN9LEZFWzVdPUVFKCJQcm9taXNlIiksRkVbMTNdPUVFKCJSZWdFeHAiKSxGRVszXT1mdW5jdGlvbigpe3JldHVybiBIYy5zZW5kQmVhY29ufSxGRVs3XT1FRSgiU2V0IiksRkVbMTJdPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUuZW5kc1dpdGh9LApGRVsxMV09ZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nLnByb3RvdHlwZS5zdGFydHNXaXRofSxGRVs0XT1FRSgiWE1MSHR0cFJlcXVlc3QiKSxGRSksSEU9e30sSUU9KEhFWzE1XT0hMCxIRSk7dmFyIE5FPS9eKGh0dHBzPzopP1wvXC8vOwpmdW5jdGlvbiBoRigpe307ZnVuY3Rpb24gaUYoKXtJZig2MikmJihoeSgiZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzIixmdW5jdGlvbihhLGIsYyl7dmFyIGQ7cmV0dXJuKChkPWMub3B0aW9ucyk9PW51bGw/dm9pZCAwOmQud2FpdEZvclRhZ3MpIT09ITB9KSxoeSgiZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLndhaXRGb3JUYWdzKSE9PSEwfSksaHkoImRldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLmZpeE1pc3NpbmdBcGkpIT09ITB9KSl9O3ZhciBqRj1mdW5jdGlvbigpe3RoaXMuSD10aGlzLmdwcFN0cmluZz12b2lkIDB9O2pGLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuSD10aGlzLmdwcFN0cmluZz12b2lkIDB9O3ZhciBrRj1uZXcgakY7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtsdCh7R3U6MCxGdToxLEN1OjIseHU6MyxEdTo0LHl1OjUsRXU6NixBdTo3LEJ1Ojgsd3U6OSx6dToxMCxIdToxMX0pLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gTnVtYmVyKGEpfSk7bHQoe0p1OjAsS3U6MSxJdToyfSkubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBOdW1iZXIoYSl9KTt2YXIgbEY9ZnVuY3Rpb24oYSxiLGMsZCl7cnQuY2FsbCh0aGlzKTt0aGlzLmZlPWI7dGhpcy5rZD1jO3RoaXMuYWM9ZDt0aGlzLkxhPW5ldyBNYXA7dGhpcy5oZT0wO3RoaXMuamE9bmV3IE1hcDt0aGlzLnlhPW5ldyBNYXA7dGhpcy5aPXZvaWQgMDt0aGlzLks9YX07d2EobEYscnQpO2xGLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXMuSDt0aGlzLkxhLmNsZWFyKCk7dGhpcy5qYS5jbGVhcigpO3RoaXMueWEuY2xlYXIoKTt0aGlzLlomJihudCh0aGlzLkssIm1lc3NhZ2UiLHRoaXMuWiksZGVsZXRlIHRoaXMuWik7ZGVsZXRlIHRoaXMuSztkZWxldGUgdGhpcy5hYztydC5wcm90b3R5cGUuTi5jYWxsKHRoaXMpfTsKdmFyIG1GPWZ1bmN0aW9uKGEpe2lmKGEuSClyZXR1cm4gYS5IO2Eua2QmJmEua2QoYS5LKT9hLkg9YS5LOmEuSD1OcChhLkssYS5mZSk7dmFyIGI7cmV0dXJuKGI9YS5IKSE9bnVsbD9iOm51bGx9LG9GPWZ1bmN0aW9uKGEsYixjKXtpZihtRihhKSlpZihhLkg9PT1hLkspe3ZhciBkPWEuTGEuZ2V0KGIpO2QmJmQoYS5ILGMpfWVsc2V7dmFyIGU9YS5qYS5nZXQoYik7aWYoZSYmZS5kayl7bkYoYSk7dmFyIGY9KythLmhlO2EueWEuc2V0KGYse3BlOmUucGUsSXI6ZS5ubyhjKSxwZXJzaXN0ZW50OmI9PT0iYWRkRXZlbnRMaXN0ZW5lciJ9KTthLkgucG9zdE1lc3NhZ2UoZS5kayhjLGYpLCIqIil9fX0sbkY9ZnVuY3Rpb24oYSl7YS5afHwoYS5aPWZ1bmN0aW9uKGIpe2lmKGIuc291cmNlPT09YS5IKXRyeXt2YXIgYztjPWEuYWM/YS5hYyhiKTp2b2lkIDA7aWYoYyl7dmFyIGQ9Yy5ZcyxlPWEueWEuZ2V0KGQpO2lmKGUpe2UucGVyc2lzdGVudHx8YS55YS5kZWxldGUoZCk7dmFyIGY7KGY9CmUucGUpPT1udWxsfHxmLmNhbGwoZSxlLklyLGMucGF5bG9hZCl9fX1jYXRjaChnKXt9fSxtdChhLkssIm1lc3NhZ2UiLGEuWikpfTt2YXIgcEY9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmxpc3RlbmVyLGQ9KDAsYS5fX2dwcCkoImFkZEV2ZW50TGlzdGVuZXIiLGMpO2QmJmMoZCwhMCl9LHFGPWZ1bmN0aW9uKGEsYil7KDAsYS5fX2dwcCkoInJlbW92ZUV2ZW50TGlzdGVuZXIiLGIubGlzdGVuZXIsYi5saXN0ZW5lcklkKX0sckY9e25vOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxkazpmdW5jdGlvbihhLGIpe3ZhciBjPXt9O3JldHVybiBjLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDoiYWRkRXZlbnRMaXN0ZW5lciIsdmVyc2lvbjoiMS4xIn0sY30scGU6ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLl9fZ3BwUmV0dXJuO2EoYy5yZXR1cm5WYWx1ZSxjLnN1Y2Nlc3MpfX0sc0Y9e25vOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxkazpmdW5jdGlvbihhLGIpe3ZhciBjPXt9O3JldHVybiBjLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDoicmVtb3ZlRXZlbnRMaXN0ZW5lciIsdmVyc2lvbjoiMS4xIiwKcGFyYW1ldGVyOmEubGlzdGVuZXJJZH0sY30scGU6ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLl9fZ3BwUmV0dXJuLGQ9Yy5yZXR1cm5WYWx1ZS5kYXRhO2E9PW51bGx8fGEoZCxjLnN1Y2Nlc3MpfX07ZnVuY3Rpb24gdEYoYSl7dmFyIGI9e307dmYoYS5kYXRhKT9iPUpTT04ucGFyc2UoYS5kYXRhKTpiPWEuZGF0YTtyZXR1cm57cGF5bG9hZDpiLFlzOmIuX19ncHBSZXR1cm4uY2FsbElkfX0KdmFyIHVGPWZ1bmN0aW9uKGEsYil7dmFyIGM7Yz0oYj09PXZvaWQgMD97fTpiKS50aW1lb3V0TXM7cnQuY2FsbCh0aGlzKTt0aGlzLmNhbGxlcj1uZXcgbEYoYSwiX19ncHBMb2NhdG9yIixmdW5jdGlvbihkKXtyZXR1cm4gdHlwZW9mIGQuX19ncHA9PT0iZnVuY3Rpb24ifSx0Rik7dGhpcy5jYWxsZXIuTGEuc2V0KCJhZGRFdmVudExpc3RlbmVyIixwRik7dGhpcy5jYWxsZXIuamEuc2V0KCJhZGRFdmVudExpc3RlbmVyIixyRik7dGhpcy5jYWxsZXIuTGEuc2V0KCJyZW1vdmVFdmVudExpc3RlbmVyIixxRik7dGhpcy5jYWxsZXIuamEuc2V0KCJyZW1vdmVFdmVudExpc3RlbmVyIixzRik7dGhpcy50aW1lb3V0TXM9YyE9bnVsbD9jOjUwMH07d2EodUYscnQpO3VGLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7dGhpcy5jYWxsZXIuZGlzcG9zZSgpO3J0LnByb3RvdHlwZS5OLmNhbGwodGhpcyl9Owp1Ri5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9SHAoZnVuY3Rpb24oKXthKHZGLCEwKX0pLGQ9dGhpcy50aW1lb3V0TXM9PT0tMT92b2lkIDA6c2V0VGltZW91dChmdW5jdGlvbigpe2MoKX0sdGhpcy50aW1lb3V0TXMpO29GKHRoaXMuY2FsbGVyLCJhZGRFdmVudExpc3RlbmVyIix7bGlzdGVuZXI6ZnVuY3Rpb24oZSxmKXtjbGVhclRpbWVvdXQoZCk7dHJ5e3ZhciBnO3ZhciBoOygoaD1lLnBpbmdEYXRhKT09bnVsbD92b2lkIDA6aC5ncHBWZXJzaW9uKT09PXZvaWQgMHx8ZS5waW5nRGF0YS5ncHBWZXJzaW9uPT09IjEifHxlLnBpbmdEYXRhLmdwcFZlcnNpb249PT0iMS4wIj8oYi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCksZz17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjEsZ3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0lTX0RFUFJFQ0FURURfU1BFQyIsCmFwcGxpY2FibGVTZWN0aW9uczpbLTFdfX0pOkFycmF5LmlzQXJyYXkoZS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMpP2c9ZTooYi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCksZz17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjIsZ3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0VYUEVDVEVEX0FQUExJQ0FUSU9OX1NFQ1RJT05fQVJSQVkiLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfX0pO2EoZyxmKX1jYXRjaChsKXtpZihlPT1udWxsPzA6ZS5saXN0ZW5lcklkKXRyeXtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoZS5saXN0ZW5lcklkKX1jYXRjaChuKXthKHdGLCEwKTtyZXR1cm59YSh4RiwhMCl9fX0pfTsKdUYucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7b0YodGhpcy5jYWxsZXIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLHtsaXN0ZW5lcjpmdW5jdGlvbigpe30sbGlzdGVuZXJJZDphfSl9Owp2YXIgeEY9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToyLGdwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19VTkFWQUlMQUJMRSIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9LHZGPXtldmVudE5hbWU6InNpZ25hbFN0YXR1cyIsZGF0YToicmVhZHkiLHBpbmdEYXRhOntncHBTdHJpbmc6IkdQUF9FUlJPUl9TVFJJTkdfTElTVEVORVJfUkVHSVNUUkFUSU9OX1RJTUVPVVQiLGludGVybmFsRXJyb3JTdGF0ZToyLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfSxsaXN0ZW5lcklkOi0xfSx3Rj17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7Z3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX1JFTU9WRV9FVkVOVF9MSVNURU5FUl9FUlJPUiIsaW50ZXJuYWxFcnJvclN0YXRlOjIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9O2Z1bmN0aW9uIHlGKGEpe3ZhciBiO2lmKCEoYj1hLnBpbmdEYXRhLnNpZ25hbFN0YXR1cz09PSJyZWFkeSIpKXt2YXIgYz1hLnBpbmdEYXRhLmFwcGxpY2FibGVTZWN0aW9ucztiPSFjfHxjLmxlbmd0aD09PTEmJmNbMF09PT0tMX1pZihiKXtrRi5ncHBTdHJpbmc9YS5waW5nRGF0YS5ncHBTdHJpbmc7dmFyIGQ9YS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMuam9pbigiLCIpO2tGLkg9ZH19ZnVuY3Rpb24gekYoKXt0cnl7dmFyIGE9bmV3IHVGKEEse3RpbWVvdXRNczotMX0pO21GKGEuY2FsbGVyKSYmYS5hZGRFdmVudExpc3RlbmVyKHlGKX1jYXRjaChiKXt9fTtmdW5jdGlvbiBBRigpe3ZhciBhPVtbImN2IixFKDEpXSxbInJ2IixFKDE0KV0sWyJ0YyIsY0EudGFncy5maWx0ZXIoZnVuY3Rpb24oZCl7cmV0dXJuIGR9KS5sZW5ndGhdXSxiPUpmKDE1KTtiJiZhLnB1c2goWyJ4IixiXSk7dmFyIGM9Q3AoKTtjJiZhLnB1c2goWyJ0YWdfZXhwIixjXSk7cmV0dXJuIGF9O3ZhciBCRj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPXt9O3RoaXMuSz17fTtmeihmdW5jdGlvbihiKXt2YXIgYz1iLmV2ZW50SWQsZD1iLnRmLGU9W10sZj1hLkhbY118fFtdO2YubGVuZ3RoJiZlLnB1c2goWyJoZiIsZi5qb2luKCIuIildKTt2YXIgZz1hLktbY118fFtdO2cubGVuZ3RoJiZlLnB1c2goWyJodCIsZy5qb2luKCIuIildKTtkJiYoZGVsZXRlIGEuSFtjXSxkZWxldGUgYS5LW2NdKTtyZXR1cm4gZX0pfSxDRj1mdW5jdGlvbigpe3ZhciBhPTA7cmV0dXJuIGZ1bmN0aW9uKGIpe3N3aXRjaChiKXtjYXNlIDE6YXw9MTticmVhaztjYXNlIDI6YXw9MjticmVhaztjYXNlIDM6YXw9NH1yZXR1cm4gYX19LERGO3ZhciBFRj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPSIiO2ZuLk4mJk0oNTE2KSYmZnooZnVuY3Rpb24oKXt2YXIgYj1bXTthLkgmJmIucHVzaChbInBzZCIsYS5IXSk7cmV0dXJuIGJ9KX0sRkY7ZnVuY3Rpb24gR0YoKXtyZXR1cm4hMX0KZnVuY3Rpb24gSEYoKXt2YXIgYT17fTtyZXR1cm4gZnVuY3Rpb24oYixjLGQpe319O2Z1bmN0aW9uIElGKCl7dmFyIGE9SkY7cmV0dXJuIGZ1bmN0aW9uKGIsYyxkKXt2YXIgZT1kJiZkLmV2ZW50O0tGKGMpO3ZhciBmPUJoKGIpP3ZvaWQgMDoxLGc9bmV3IGtiO0diKGMsZnVuY3Rpb24ocix0KXt2YXIgdT1VZCh0LHZvaWQgMCxmKTt1PT09dm9pZCAwJiZ0IT09dm9pZCAwJiZQKDQ0KTtnLnNldChyLHUpfSk7YS5RYihRZigpKTt2YXIgaD17Um46aGcoYiksZXZlbnRJZDplPT1udWxsP3ZvaWQgMDplLmlkLHByaW9yaXR5SWQ6ZSE9PXZvaWQgMD9lLnByaW9yaXR5SWQ6dm9pZCAwLHByaW9yaXR5UXVldWU6ZSE9PXZvaWQgMD9lLnByaW9yaXR5UXVldWU6dm9pZCAwLHdnOmUhPT12b2lkIDA/ZnVuY3Rpb24ocil7ZS5sZC53ZyhyKX06dm9pZCAwLFBiOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9LGxvZzpmdW5jdGlvbigpe30sTnI6e2luZGV4OmQ9PW51bGw/dm9pZCAwOmQuaW5kZXgsdHlwZTpkPT1udWxsP3ZvaWQgMDpkLnR5cGUsbmFtZTpkPT1udWxsP3ZvaWQgMDpkLm5hbWV9LAppdDohIUtBKGIsMyksb3JpZ2luYWxFdmVudERhdGE6ZT09bnVsbD92b2lkIDA6ZS5vcmlnaW5hbEV2ZW50RGF0YX07ZSYmZS5jYWNoZWRNb2RlbFZhbHVlcyYmKGguY2FjaGVkTW9kZWxWYWx1ZXM9e2d0bTplLmNhY2hlZE1vZGVsVmFsdWVzLmd0bSxlY29tbWVyY2U6ZS5jYWNoZWRNb2RlbFZhbHVlcy5lY29tbWVyY2V9KTtpZihHRigpKXt2YXIgbD1IRigpLG4scDtoLkFiPXt3azpbXSx5Zzp7fSxqYzpmdW5jdGlvbihyLHQsdSl7dD09PTEmJihuPXIpO3Q9PT03JiYocD11KTtsKHIsdCx1KX0sZWk6VmgoKX07aC5sb2c9ZnVuY3Rpb24ocil7dmFyIHQ9T2EuYXBwbHkoMSxhcmd1bWVudHMpO24mJmwobiw0LHtsZXZlbDpyLHNvdXJjZTpwLG1lc3NhZ2U6dH0pfX0KdmFyIHE9cmYoYSxoLFtiLGddKTthLlFiKCk7cSBpbnN0YW5jZW9mIFRhJiYocS50eXBlPT09InJldHVybiI/cT1xLmRhdGE6cT12b2lkIDApO3JldHVybiBUZChxLHZvaWQgMCxmKX19ZnVuY3Rpb24gS0YoYSl7dmFyIGI9YS5ndG1PblN1Y2Nlc3MsYz1hLmd0bU9uRmFpbHVyZTt5YihiKSYmKGEuZ3RtT25TdWNjZXNzPWZ1bmN0aW9uKCl7YmQoYil9KTt5YihjKSYmKGEuZ3RtT25GYWlsdXJlPWZ1bmN0aW9uKCl7YmQoYyl9KX07dmFyIE1GPWZ1bmN0aW9uKGEpe1YoYSxILkoudGcsY28uaWEuY2IpfTtmdW5jdGlvbiBORigpe3JldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjApfTt2YXIgT0Y9W0YuRC56aV0ubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLnNsaWNlKDIpfSk7dmFyIFBGPWZ1bmN0aW9uKGEpe1UoYSxGLkQuemksYWwoOCxORikpfTtmdW5jdGlvbiBRRihhKXt9UUYuUD0iaW50ZXJuYWwuYWRkQWRzQ2xpY2tJZHMiO2Z1bmN0aW9uIFJGKGEsYil7dmFyIGM9dGhpczt9UkYucHVibGljTmFtZT0iYWRkQ29uc2VudExpc3RlbmVyIjt2YXIgU0Y9ITE7ZnVuY3Rpb24gVEYoYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2IpaWYoU0YpdHJ5e2FbYl0oKX1jYXRjaChjKXtQKDc3KX1lbHNlIGFbYl0oKX1mdW5jdGlvbiBVRihhLGIsYyl7dmFyIGQ9dGhpcyxlO3JldHVybiBlfVVGLlA9ImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFZGKGEsYixjKXt9VkYucHVibGljTmFtZT0iYWRkRG9jdW1lbnRFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBXRihhLGIsYyxkKXt9V0YucHVibGljTmFtZT0iYWRkRWxlbWVudEV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFhGKGEpe3JldHVybiBhLlQueGIoKX07ZnVuY3Rpb24gWUYoYSl7fVlGLnB1YmxpY05hbWU9ImFkZEV2ZW50Q2FsbGJhY2siOwpmdW5jdGlvbiBpRyhhKXtpZihhLmZvcm0pe3ZhciBiO3JldHVybigoYj1hLmZvcm0pPT1udWxsPzA6Yi50YWdOYW1lKT9hLmZvcm06Qi5nZXRFbGVtZW50QnlJZChhLmZvcm0pfXJldHVybiBoZChhLFsiZm9ybSJdLDEwMCl9OwpmdW5jdGlvbiBtRyhhKXt9bUcuUD0iaW50ZXJuYWwuYWRkRm9ybUFiYW5kb25tZW50TGlzdGVuZXIiO2Z1bmN0aW9uIG5HKGEsYixjLGQpe30KbkcuUD0iaW50ZXJuYWwuYWRkRm9ybURhdGEiOwpmdW5jdGlvbiBzRyhhKXt9c0cuUD0iaW50ZXJuYWwuYWRkR2FTZW5kTGlzdGVuZXIiO2Z1bmN0aW9uIHRHKGEpe2lmKCFhKXJldHVybnt9O3ZhciBiPWEuTnI7cmV0dXJuIEpBKGIudHlwZSxiLmluZGV4LGIubmFtZSl9ZnVuY3Rpb24gdUcoYSl7aWYoIWEpcmV0dXJue307dmFyIGI9e29yaWdpbmF0aW5nRW50aXR5OnRHKGEpfTthLnByaW9yaXR5UXVldWUmJihiLnByaW9yaXR5UXVldWU9YS5wcmlvcml0eVF1ZXVlKTtyZXR1cm4gYn07ZnVuY3Rpb24gQ0coYSl7dmFyIGI9bWooInpvbmVzIik7cmV0dXJuIGI/Yi5nZXRJc0FsbG93ZWRGbih3aygpLGEpOmZ1bmN0aW9uKCl7cmV0dXJuITB9fWZ1bmN0aW9uIERHKCl7dmFyIGE9bWooInpvbmVzIik7YSYmYS51bnJlZ2lzdGVyQ2hpbGQod2soKSl9CmZ1bmN0aW9uIEVHKCl7a0IodmsoKSxmdW5jdGlvbihhKXt2YXIgYj1hLm9yaWdpbmFsRXZlbnREYXRhWyJndG0udW5pcXVlRXZlbnRJZCJdLGM9bWooInpvbmVzIik7cmV0dXJuIGM/Yy5pc0FjdGl2ZSh3aygpLGIpOiEwfSk7aEIodmsoKSxmdW5jdGlvbihhKXt2YXIgYixjO2I9YS5lbnRpdHlJZDtjPWEuc2VjdXJpdHlHcm91cHM7cmV0dXJuIENHKE51bWJlcihhLm9yaWdpbmFsRXZlbnREYXRhWyJndG0udW5pcXVlRXZlbnRJZCJdKSkoYixjKX0pfTt2YXIgRkc9ZnVuY3Rpb24oYSxiKXt0aGlzLnRhZ0lkPWE7dGhpcy5jYW5vbmljYWxJZD1ifTsKZnVuY3Rpb24gR0coYSxiKXt2YXIgYz10aGlzO3JldHVybiBhfUdHLlA9ImludGVybmFsLmxvYWRHb29nbGVUYWciO2Z1bmN0aW9uIEhHKGEpe3JldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShiKTtpZihjIGluc3RhbmNlb2YgS2QpcmV0dXJuIG5ldyBLZCgiIixmdW5jdGlvbigpe3ZhciBkPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxlPXRoaXMsZj1FZChYRih0aGlzKSxudWxsKTtmLmV2ZW50SWQ9YS5ldmVudElkO2YucHJpb3JpdHlJZD1hLnByaW9yaXR5SWQ7Zi5vcmlnaW5hbEV2ZW50RGF0YT1hLm9yaWdpbmFsRXZlbnREYXRhO3ZhciBnPWQubWFwKGZ1bmN0aW9uKGwpe3JldHVybiBlLmV2YWx1YXRlKGwpfSksaD10aGlzLlQud2IoKTtoLnVlKGYpO3JldHVybiBjLk5jLmFwcGx5KGMsW2hdLmNvbmNhdCh3KGcpKSl9KX0pfTtmdW5jdGlvbiBJRyhhLGIsYyl7dmFyIGQ9dGhpczt9SUcuUD0iaW50ZXJuYWwuYWRkR29vZ2xlVGFnUmVzdHJpY3Rpb24iOwpmdW5jdGlvbiBQRyhhLGIpe31QRy5QPSJpbnRlcm5hbC5hZGRIaXN0b3J5Q2hhbmdlTGlzdGVuZXIiO2Z1bmN0aW9uIFFHKGEsYixjKXt9UUcucHVibGljTmFtZT0iYWRkV2luZG93RXZlbnRMaXN0ZW5lciI7ZnVuY3Rpb24gUkcoYSxiKXtyZXR1cm4hMH1SRy5wdWJsaWNOYW1lPSJhbGlhc0luV2luZG93IjtmdW5jdGlvbiBTRyhhLGIsYyl7fVNHLlA9ImludGVybmFsLmFwcGVuZFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gVEcoYSl7dmFyIGI7cmV0dXJuIGJ9ClRHLnB1YmxpY05hbWU9ImNhbGxJbldpbmRvdyI7ZnVuY3Rpb24gVUcoYSl7fVVHLnB1YmxpY05hbWU9ImNhbGxMYXRlciI7ZnVuY3Rpb24gVkcoYSl7fVZHLlA9ImNhbGxPbkRvbVJlYWR5IjtmdW5jdGlvbiBXRyhhKXt9V0cuUD0iY2FsbE9uV2luZG93TG9hZCI7dmFyIFlHPWZ1bmN0aW9uKGEsYil7dmFyIGM9bm0oWEcpfHx7fSxkPWNbYV18fHt9O2lmKGRbYl0pcmV0dXJuITE7dmFyIGU9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxkKTtlW2JdPSEwO3ZhciBmPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyk7ZlthXT1lO21tKFhHLGYpO3JldHVybiEwfSxYRz1qbS5iYS5ocjtmdW5jdGlvbiBaRyhhLGIpe3JldHVybiBjfVpHLlA9ImludGVybmFsLmNsYWltRGVzdGluYXRpb24iO2Z1bmN0aW9uICRHKGEsYil7dmFyIGM7cmV0dXJuIGN9JEcuUD0iaW50ZXJuYWwuY29tcHV0ZUd0bVBhcmFtZXRlciI7ZnVuY3Rpb24gYUgoYSxiKXt2YXIgYz10aGlzO31hSC5QPSJpbnRlcm5hbC5jb25zZW50U2NoZWR1bGVGaXJzdFRyeSI7ZnVuY3Rpb24gYkgoYSxiKXt2YXIgYz10aGlzO31iSC5QPSJpbnRlcm5hbC5jb25zZW50U2NoZWR1bGVSZXRyeSI7ZnVuY3Rpb24gY0goYSl7dmFyIGI7cmV0dXJuIGJ9Y0guUD0iaW50ZXJuYWwuY29weUZyb21Dcm9zc0NvbnRhaW5lckRhdGEiO2Z1bmN0aW9uIGRIKGEsYil7dmFyIGM7dmFyIGU9VWQoYyx0aGlzLlQsQmgoWEYodGhpcykuUGIoKSk/MjoxKTtlPT09dm9pZCAwJiZjIT09dm9pZCAwJiZQKDQ1KTtyZXR1cm4gZX1kSC5wdWJsaWNOYW1lPSJjb3B5RnJvbURhdGFMYXllciI7CmZ1bmN0aW9uIGVIKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gYn1lSC5QPSJpbnRlcm5hbC5jb3B5RnJvbURhdGFMYXllckNhY2hlIjtmdW5jdGlvbiBmSChhKXt2YXIgYjtyZXR1cm4gYn1mSC5wdWJsaWNOYW1lPSJjb3B5RnJvbVdpbmRvdyI7ZnVuY3Rpb24gZ0goYSl7dmFyIGI9dm9pZCAwO3JldHVybiBVZChiLHRoaXMuVCwxKX1nSC5QPSJpbnRlcm5hbC5jb3B5S2V5RnJvbVdpbmRvdyI7dmFyIGhIPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09Y28uaWEuY2ImJmZvLkhbYV09PT1iby5NYS5VZSYmIVhvKEYuRC5rYSl9O3ZhciBpSD1mdW5jdGlvbigpe3JldHVybiIwIn0sakg9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGEhPT0ic3RyaW5nIilyZXR1cm4iIjt2YXIgYj1bImdjbGlkIiwiZGNsaWQiLCJ3YnJhaWQiLCJfZ2wiXTtNKDEwMikmJmIucHVzaCgiZ2JyYWlkIik7cmV0dXJuIFNqKGEsYiwiMCIpfTt2YXIga0g9e30sbEg9e30sbUg9e30sbkg9e30sb0g9e30scEg9e30scUg9e30sckg9e30sc0g9e30sdEg9e30sdUg9e30sdkg9e30sd0g9e30seEg9e30seUg9e30sekg9e30sQUg9e30sQkg9e30sQ0g9e30sREg9e30sRUg9e30sRkg9e30sR0g9e30sSEg9e30sSUg9e30sSkg9e30sS0g9KEpIW0YuRC5mYl09KGtIWzJdPVtoSF0sa0gpLEpIW0YuRC5aZl09KGxIWzJdPVtoSF0sbEgpLEpIW0YuRC5KaV09KG1IWzJdPVtoSF0sbUgpLEpIW0YuRC5nbV09KG5IWzJdPVtoSF0sbkgpLEpIW0YuRC5obV09KG9IWzJdPVtoSF0sb0gpLEpIW0YuRC5pbV09KHBIWzJdPVtoSF0scEgpLEpIW0YuRC5qbV09KHFIWzJdPVtoSF0scUgpLEpIW0YuRC5rbV09KHJIWzJdPVtoSF0sckgpLEpIW0YuRC5CY109KHNIWzJdPVtoSF0sc0gpLEpIW0YuRC5jZ109KHRIWzJdPVtoSF0sdEgpLEpIW0YuRC5kZ109KHVIWzJdPVtoSF0sdUgpLEpIW0YuRC5lZ109KHZIWzJdPVtoSF0sdkgpLEpIW0YuRC5mZ109KHdIWzJdPQpbaEhdLHdIKSxKSFtGLkQuZ2ddPSh4SFsyXT1baEhdLHhIKSxKSFtGLkQuaGddPSh5SFsyXT1baEhdLHlIKSxKSFtGLkQuaWddPSh6SFsyXT1baEhdLHpIKSxKSFtGLkQuamddPShBSFsyXT1baEhdLEFIKSxKSFtGLkQubGJdPShCSFsxXT1baEhdLEJIKSxKSFtGLkQuRGRdPShDSFsxXT1baEhdLENIKSxKSFtGLkQuS2RdPShESFsxXT1baEhdLERIKSxKSFtGLkQuRWVdPShFSFsxXT1baEhdLEVIKSxKSFtGLkQuQmZdPShGSFsxXT1bZnVuY3Rpb24oYSl7cmV0dXJuIE0oMTAyKSYmaEgoYSl9XSxGSCksSkhbRi5ELlVjXT0oR0hbMV09W2hIXSxHSCksSkhbRi5ELnphXT0oSEhbMV09W2hIXSxISCksSkhbRi5ELlVhXT0oSUhbMV09W2hIXSxJSCksSkgpLExIPXt9LE1IPShMSFtGLkQubGJdPWlILExIW0YuRC5EZF09aUgsTEhbRi5ELktkXT1pSCxMSFtGLkQuRWVdPWlILExIW0YuRC5CZl09aUgsTEhbRi5ELlVjXT1mdW5jdGlvbihhKXtpZighQ2QoYSkpcmV0dXJue307dmFyIGI9RWQoYSwKbnVsbCk7ZGVsZXRlIGIubWF0Y2hfaWQ7cmV0dXJuIGJ9LExIW0YuRC56YV09akgsTEhbRi5ELlVhXT1qSCxMSCksTkg9e30sT0g9e30sUEg9KE9IW0guSi5ZYV09KE5IWzJdPVtoSF0sTkgpLE9IKSxRSD17fTt2YXIgUkg9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5IPWE7dGhpcy5OPWI7dGhpcy5SPWM7dGhpcy5aPWR9O1JILnByb3RvdHlwZS5nZXRWYWx1ZT1mdW5jdGlvbihhKXthPWE9PT12b2lkIDA/Y28uaWEuZ2Q6YTtpZighdGhpcy5OLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIoYSl9KSlyZXR1cm4gdGhpcy5SLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIoYSl9KT90aGlzLloodGhpcy5IKTp0aGlzLkh9O1JILnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIEFkKHRoaXMuSCk9PT0iYXJyYXkifHxDZCh0aGlzLkgpP0VkKHRoaXMuSCxudWxsKTp0aGlzLkh9Owp2YXIgU0g9ZnVuY3Rpb24oKXt9LFRIPWZ1bmN0aW9uKGEsYil7dGhpcy5jb25kaXRpb25zPWE7dGhpcy5IPWJ9LFVIPWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlPSgoZD1hLmNvbmRpdGlvbnNbYl0pPT1udWxsP3ZvaWQgMDpkWzJdKXx8W10sZixnPSgoZj1hLmNvbmRpdGlvbnNbYl0pPT1udWxsP3ZvaWQgMDpmWzFdKXx8W107cmV0dXJuIG5ldyBSSChjLGUsZyxhLkhbYl18fFNIKX0sVkgsV0g7dmFyIFlIPWZ1bmN0aW9uKGEpe2EuSz0hMDthLkg9ITE7aWYoSWYoNTIpKXtpZihNKDUxNikmJlhIKCkpe3ZhciBiO2Euc2V0dGluZ3M9KGI9ZGF0YS5wcm9kdWN0U2V0dGluZ3MpIT1udWxsP2I6e307YS5IPSEwfWVsc2V7dmFyIGM7YS5zZXR0aW5ncz0oYz1wcm9kdWN0U2V0dGluZ3MpIT1udWxsP2M6e319cHJvZHVjdFNldHRpbmdzPXZvaWQgMDtkYXRhLnByb2R1Y3RTZXR0aW5ncz12b2lkIDA7dmFyIGQ7KGQ9RkYpIT1udWxsJiZmbi5OJiZNKDUxNikmJihkLkg9YS5IPyIxIjoiMCIpfX0sJEg9ZnVuY3Rpb24oYSl7dmFyIGI9Wkg7Yi5LfHxZSChiKTtyZXR1cm4gYi5zZXR0aW5nc1thXX0sWkg9bmV3IGZ1bmN0aW9uKCl7dGhpcy5zZXR0aW5ncz17fTt0aGlzLks9dGhpcy5IPSExfTsKZnVuY3Rpb24gWEgoKXtpZighZGF0YS5wcm9kdWN0U2V0dGluZ3MmJiFwcm9kdWN0U2V0dGluZ3MpcmV0dXJuITA7aWYoIWRhdGEucHJvZHVjdFNldHRpbmdzfHwhcHJvZHVjdFNldHRpbmdzfHxPYmplY3Qua2V5cyhkYXRhLnByb2R1Y3RTZXR0aW5ncykubGVuZ3RoIT09T2JqZWN0LmtleXMocHJvZHVjdFNldHRpbmdzKS5sZW5ndGgpcmV0dXJuITE7Zm9yKHZhciBhIGluIHByb2R1Y3RTZXR0aW5ncylpZighZGF0YS5wcm9kdWN0U2V0dGluZ3MuaGFzT3duUHJvcGVydHkoYSl8fGRhdGEucHJvZHVjdFNldHRpbmdzW2FdLnByZUF1dG9QaWkhPT1wcm9kdWN0U2V0dGluZ3NbYV0ucHJlQXV0b1BpaSlyZXR1cm4hMTtyZXR1cm4hMH07dmFyIGFJPWZ1bmN0aW9uKGEsYixjKXt0aGlzLmV2ZW50TmFtZT1iO3RoaXMuTT1jO3RoaXMuSD17fTt0aGlzLmlzQWJvcnRlZD0hMTt0aGlzLnRhcmdldD1hO3RoaXMubWV0YWRhdGE9e307Zm9yKHZhciBkPWMuZXZlbnRNZXRhZGF0YXx8e30sZT1tKE9iamVjdC5rZXlzKGQpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtWKHRoaXMsZyxkW2ddKX19LFI9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkO3JldHVybihjPWEuSFtiXSk9PW51bGw/dm9pZCAwOihkPWMuZ2V0VmFsdWUpPT1udWxsP3ZvaWQgMDpkLmNhbGwoYyxRKGEsSC5KLnRnKSl9LGV1PWZ1bmN0aW9uKGEpe3JldHVybiBPYmplY3Qua2V5cyhhLkgpfSxVPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLkgsZTtjPT09dm9pZCAwP2U9dm9pZCAwOihWSCE9bnVsbHx8KFZIPW5ldyBUSChLSCxNSCkpLGU9VUgoVkgsYixjKSk7ZFtiXT1lfTsKYUkucHJvdG90eXBlLm1lcmdlSGl0RGF0YUZvcktleT1mdW5jdGlvbihhLGIpe3ZhciBjLGQsZTtjPShkPXRoaXMuSFthXSk9PW51bGw/dm9pZCAwOihlPWQuSyk9PW51bGw/dm9pZCAwOmUuY2FsbChkKTtpZighYylyZXR1cm4gVSh0aGlzLGEsYiksITA7aWYoIUNkKGMpKXJldHVybiExO1UodGhpcyxhLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsYyxiKSk7cmV0dXJuITB9O3ZhciBiST1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2Zvcih2YXIgYz1tKE9iamVjdC5rZXlzKGEuSCkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9dm9pZCAwLGc9dm9pZCAwLGg9dm9pZCAwO2JbZV09KGY9YS5IW2VdKT09bnVsbD92b2lkIDA6KGg9KGc9ZikuSyk9PW51bGw/dm9pZCAwOmguY2FsbChnKX1yZXR1cm4gYn07CmFJLnByb3RvdHlwZS5jb3B5VG9IaXREYXRhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1PKHRoaXMuTSxhKTtkPT09dm9pZCAwJiYoZD1iKTtpZih6YihkKSYmYyE9PXZvaWQgMCl0cnl7ZD1jKGQpfWNhdGNoKGUpe31kIT09dm9pZCAwJiZVKHRoaXMsYSxkKX07CnZhciBRPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5tZXRhZGF0YVtiXTtpZihiPT09SC5KLnRnKXt2YXIgZDtyZXR1cm4gYz09bnVsbD92b2lkIDA6KGQ9Yy5LKT09bnVsbD92b2lkIDA6ZC5jYWxsKGMpfXZhciBlO3JldHVybiBjPT1udWxsP3ZvaWQgMDooZT1jLmdldFZhbHVlKT09bnVsbD92b2lkIDA6ZS5jYWxsKGMsUShhLEguSi50ZykpfSxWPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLm1ldGFkYXRhLGU7Yz09PXZvaWQgMD9lPWM6KFdIIT1udWxsfHwoV0g9bmV3IFRIKFBILFFIKSksZT1VSChXSCxiLGMpKTtkW2JdPWV9LGNJPWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7Zm9yKHZhciBjPW0oT2JqZWN0LmtleXMoYS5tZXRhZGF0YSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9dm9pZCAwLGc9dm9pZCAwLGg9dm9pZCAwO2JbZV09KGY9YS5tZXRhZGF0YVtlXSk9PW51bGw/dm9pZCAwOihoPShnPWYpLkspPT1udWxsP3ZvaWQgMDoKaC5jYWxsKGcpfXJldHVybiBifSxkST1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9JEgoYS50YXJnZXQuZGVzdGluYXRpb25JZCk7cmV0dXJuIGQmJmRbYl0hPT12b2lkIDA/ZFtiXTpjfSxadT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1uZXcgYUkoKGI9PW51bGw/dm9pZCAwOmIudGFyZ2V0KXx8YS50YXJnZXQsKGI9PW51bGw/dm9pZCAwOmIuZXZlbnROYW1lKXx8YS5ldmVudE5hbWUsKGI9PW51bGw/dm9pZCAwOmIuTSl8fGEuTSksZD1iSShhKSxlPW0oT2JqZWN0LmtleXMoZCkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO1UoYyxnLGRbZ10pfWZvcih2YXIgaD1jSShhKSxsPW0oT2JqZWN0LmtleXMoaCkpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO1YoYyxwLGhbcF0pfWMuaXNBYm9ydGVkPWEuaXNBYm9ydGVkO3JldHVybiBjfSxlST1mdW5jdGlvbihhKXt2YXIgYj1hLk0sYz1iLmV2ZW50SWQsZD1iLnByaW9yaXR5SWQ7CnJldHVybiBkP2MrIl8iK2Q6U3RyaW5nKGMpfTthSS5wcm90b3R5cGUuYWNjZXB0PWZ1bmN0aW9uKCl7dmFyIGE9b20oam0uYmEuU2kse30pLGI9ZUkodGhpcyksYz10aGlzLnRhcmdldC5kZXN0aW5hdGlvbklkO2FbYl18fChhW2JdPXt9KTthW2JdW2NdPXZrKCk7dmFyIGQ9am0uYmEuU2k7aWYoa20oZCkpe3ZhciBlOyhlPWxtKGQpKT09bnVsbHx8ZS5ub3RpZnkoKX19O2FJLnByb3RvdHlwZS5jYW5CZUFjY2VwdGVkPWZ1bmN0aW9uKGEpe3ZhciBiPW5tKGptLmJhLlNpKTtpZighYilyZXR1cm4hMDt2YXIgYz1iW2VJKHRoaXMpXTtpZighYylyZXR1cm4hMDt2YXIgZD1jW2EhPW51bGw/YTp0aGlzLnRhcmdldC5kZXN0aW5hdGlvbklkXTtyZXR1cm4gZD09PXZvaWQgMHx8ZD09PXZrKCl9O2Z1bmN0aW9uIGZJKGEpe3JldHVybntnZXREZXN0aW5hdGlvbklkOmZ1bmN0aW9uKCl7cmV0dXJuIGEudGFyZ2V0LmRlc3RpbmF0aW9uSWR9LGdldEV2ZW50TmFtZTpmdW5jdGlvbigpe3JldHVybiBhLmV2ZW50TmFtZX0sc2V0RXZlbnROYW1lOmZ1bmN0aW9uKGIpe2EuZXZlbnROYW1lPWJ9LGdldEhpdERhdGE6ZnVuY3Rpb24oYil7cmV0dXJuIFIoYSxiKX0sc2V0SGl0RGF0YTpmdW5jdGlvbihiLGMpe1UoYSxiLGMpfSxzZXRIaXREYXRhSWZOb3REZWZpbmVkOmZ1bmN0aW9uKGIsYyl7UihhLGIpPT09dm9pZCAwJiZVKGEsYixjKX0sY29weVRvSGl0RGF0YTpmdW5jdGlvbihiLGMpe2EuY29weVRvSGl0RGF0YShiLGMpfSxnZXRNZXRhZGF0YTpmdW5jdGlvbihiKXtyZXR1cm4gUShhLGIpfSxzZXRNZXRhZGF0YTpmdW5jdGlvbihiLGMpe1YoYSxiLGMpfSxpc0Fib3J0ZWQ6ZnVuY3Rpb24oKXtyZXR1cm4gYS5pc0Fib3J0ZWR9LGFib3J0OmZ1bmN0aW9uKCl7YS5pc0Fib3J0ZWQ9ITB9LApnZXRGcm9tRXZlbnRDb250ZXh0OmZ1bmN0aW9uKGIpe3JldHVybiBPKGEuTSxiKX0scmI6ZnVuY3Rpb24oKXtyZXR1cm4gYX0sZ2V0SGl0S2V5czpmdW5jdGlvbigpe3JldHVybiBldShhKX0sZ2V0TWVyZ2VkVmFsdWVzOmZ1bmN0aW9uKGIpe3JldHVybiBhLk0uZ2V0TWVyZ2VkVmFsdWVzKGIsMyl9LG1lcmdlSGl0RGF0YUZvcktleTpmdW5jdGlvbihiLGMpe3JldHVybiBDZChjKT9hLm1lcmdlSGl0RGF0YUZvcktleShiLGMpOiExfSxhY2NlcHQ6ZnVuY3Rpb24oKXthLmFjY2VwdCgpfSxjYW5CZUFjY2VwdGVkOmZ1bmN0aW9uKGIpe3JldHVybiBhLmNhbkJlQWNjZXB0ZWQoYil9fX07ZnVuY3Rpb24gZ0koYSxiKXt2YXIgYztyZXR1cm4gY31nSS5QPSJpbnRlcm5hbC5jb3B5UHJlSGl0IjtmdW5jdGlvbiBoSShhLGIpe3ZhciBjPW51bGw7cmV0dXJuIFVkKGMsdGhpcy5ULDIpfWhJLnB1YmxpY05hbWU9ImNyZWF0ZUFyZ3VtZW50c1F1ZXVlIjtmdW5jdGlvbiBpSShhKXtyZXR1cm4gVWQoZnVuY3Rpb24oYyl7dmFyIGQ9U0EoKTtpZih0eXBlb2YgYz09PSJmdW5jdGlvbiIpZChmdW5jdGlvbigpe2MoZnVuY3Rpb24oZixnLGgpe3ZhciBsPQpTQSgpLG49bCYmbC5nZXRCeU5hbWUmJmwuZ2V0QnlOYW1lKGYpO3JldHVybihuZXcgQS5nYXBsdWdpbnMuTGlua2VyKG4pKS5kZWNvcmF0ZShnLGgpfSl9KTtlbHNlIGlmKEFycmF5LmlzQXJyYXkoYykpe3ZhciBlPVN0cmluZyhjWzBdKS5zcGxpdCgiLiIpO2JbZS5sZW5ndGg9PT0xP2VbMF06ZVsxXV0mJmQuYXBwbHkobnVsbCxjKX1lbHNlIGlmKGM9PT0iaXNMb2FkZWQiKXJldHVybiEhZC5sb2FkZWR9LHRoaXMuVCwxKX1pSS5QPSJpbnRlcm5hbC5jcmVhdGVHYUNvbW1hbmRRdWV1ZSI7ZnVuY3Rpb24gakkoYSl7cmV0dXJuIFVkKGZ1bmN0aW9uKCl7aWYoIXliKGUucHVzaCkpdGhyb3cgRXJyb3IoIk9iamVjdCBhdCAiK2ErIiBpbiB3aW5kb3cgaXMgbm90IGFuIGFycmF5LiIpO2UucHVzaC5hcHBseShlLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKSl9LHRoaXMuVCwKQmgoWEYodGhpcykuUGIoKSk/MjoxKX1qSS5wdWJsaWNOYW1lPSJjcmVhdGVRdWV1ZSI7ZnVuY3Rpb24ga0koYSxiKXt2YXIgYz1udWxsO3JldHVybiBjfWtJLlA9ImludGVybmFsLmNyZWF0ZVJlZ2V4IjtmdW5jdGlvbiBsSShhKXtpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCJdLGFyZ3VtZW50cyk7Zm9yKHZhciBiPWEuRmEoKSxjPW0oYiksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7ZSE9PUYuRC5uYyYmTCh0aGlzLCJhY2Nlc3NfY29uc2VudCIsZSwid3JpdGUiKX12YXIgZj1YRih0aGlzKSxnPWYuZXZlbnRJZCxoPXVHKGYpLGw9VGQoYSk7bUQocUMoImNvbnNlbnQiLCJkZWNsYXJlIixsKSxnLGgpO31sSS5QPSJpbnRlcm5hbC5kZWNsYXJlQ29uc2VudFN0YXRlIjtmdW5jdGlvbiBtSShhKXt2YXIgYj0iIjtyZXR1cm4gYn1tSS5QPSJpbnRlcm5hbC5kZWNvZGVVcmxIdG1sRW50aXRpZXMiO2Z1bmN0aW9uIG5JKGEsYixjKXt2YXIgZDtyZXR1cm4gZH1uSS5QPSJpbnRlcm5hbC5kZWNvcmF0ZVVybFdpdGhHYUNvb2tpZXMiO2Z1bmN0aW9uIG9JKCl7fW9JLlA9ImludGVybmFsLmRlZmVyQ3VzdG9tRXZlbnRzIjtmdW5jdGlvbiBwSShhLGIpe3RyeXtyZXR1cm4gYS5jbG9zZXN0KGIpfWNhdGNoKGMpe3JldHVybiBudWxsfX07ZnVuY3Rpb24gcUkoKXt2YXIgYT1BLnNjcmVlbjtyZXR1cm57d2lkdGg6YT9hLndpZHRoOjAsaGVpZ2h0OmE/YS5oZWlnaHQ6MH19CmZ1bmN0aW9uIHJJKGEpe2lmKEIuaGlkZGVuKXJldHVybiEwO3ZhciBiPWEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7aWYoYi50b3A9PT1iLmJvdHRvbXx8Yi5sZWZ0PT09Yi5yaWdodHx8IUEuZ2V0Q29tcHV0ZWRTdHlsZSlyZXR1cm4hMDt2YXIgYz1BLmdldENvbXB1dGVkU3R5bGUoYSxudWxsKTtpZihjLnZpc2liaWxpdHk9PT0iaGlkZGVuIilyZXR1cm4hMDtmb3IodmFyIGQ9YSxlPWM7ZDspe2lmKGUuZGlzcGxheT09PSJub25lIilyZXR1cm4hMDt2YXIgZj1lLm9wYWNpdHksZz1lLmZpbHRlcjtpZihnKXt2YXIgaD1nLmluZGV4T2YoIm9wYWNpdHkoIik7aD49MCYmKGc9Zy5zdWJzdHJpbmcoaCs4LGcuaW5kZXhPZigiKSIsaCkpLGcuY2hhckF0KGcubGVuZ3RoLTEpPT09IiUiJiYoZz1nLnN1YnN0cmluZygwLGcubGVuZ3RoLTEpKSxmPVN0cmluZyhNYXRoLm1pbihOdW1iZXIoZyksTnVtYmVyKGYpKSkpfWlmKGYhPT12b2lkIDAmJk51bWJlcihmKTw9MClyZXR1cm4hMDsoZD1kLnBhcmVudEVsZW1lbnQpJiYKKGU9QS5nZXRDb21wdXRlZFN0eWxlKGQsbnVsbCkpfXJldHVybiExfQp2YXIgSkk9ZnVuY3Rpb24oYSl7dmFyIGIsYz0oYj1hPT1udWxsP3ZvaWQgMDphLmluY2x1ZGVTZWxlY3RvcikhPW51bGw/YjohMCxkLGU9KGQ9YT09bnVsbD92b2lkIDA6YS5pbmNsdWRlVmlzaWJpbGl0eSkhPW51bGw/ZDohMCxmLGc9KGY9YT09bnVsbD92b2lkIDA6YS5zZWxlY3RNdWx0aXBsZUVsZW1lbnRzKSE9bnVsbD9mOiExLGg9KGE9PW51bGw/dm9pZCAwOmEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMpfHxbXSxsPShhPT1udWxsP3ZvaWQgMDphLmZpZWxkRmlsdGVycyl8fHtlbWFpbDohMCxwaG9uZTohMSxhZGRyZXNzOiExfSxuPWFsKDYsZnVuY3Rpb24oKXtyZXR1cm57fX0pLHA9ekkoe2luY2x1ZGVTZWxlY3RvcjpjLGluY2x1ZGVWaXNpYmlsaXR5OmUsZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM6aCxmaWVsZEZpbHRlcnM6bH0pLHE9bltwXTtpZihxJiZOYigpLXEudGltZXN0YW1wPDIwMCl7dmFyIHI9cS5yZXN1bHQsdDsoci5lbGVtZW50cy5zb21lKGZ1bmN0aW9uKHFhKXtyZXR1cm4gcWEuZGl9KXx8CigodD1yLmdpKT09bnVsbD8wOnQuZGkpKSYmR3UoVC5XLnJqKTtyZXR1cm4gcn12YXIgdT1BSSgpLHY9dS5zdGF0dXMseD1bXSx5LHosQz1bXTtpZihNKDU2OCkpe3ZhciBEPUJJKGwpLEk9Q0kodS5lbGVtZW50cyxEKSxHPURJKEkpLE49RUkoRyxoKSxTPUZJKE4pO3k9Uy5maWx0ZXIoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5EYT09PUZELkJifSlbMF07Zm9yKHZhciBXPVtdLGVhPXtJZzowfTtlYS5JZzxELmxlbmd0aDtlYT17SWc6ZWEuSWd9LGVhLklnKyspe3ZhciBqYT1OLmZpbHRlcihmdW5jdGlvbihxYSl7cmV0dXJuIGZ1bmN0aW9uKGliKXtyZXR1cm4gaWIuRGE9PT1EW3FhLklnXX19KGVhKSk7amEubGVuZ3RoPjEwJiYodj0iMyIsamE9amEuc2xpY2UoMCwxMCkpO1c9Vy5jb25jYXQoamEpfU49VzshZyYmUyYmKE49Uyk7Zm9yKHZhciBmYT0wO2ZhPE4ubGVuZ3RoO2ZhKyspe3ZhciBzYT1OW2ZhXTtzYS5EYSE9PUZELktoJiZDLnB1c2goR0koc2EsYyxlKSl9fWVsc2V7aWYobC5lbWFpbCl7dmFyIGRhPQpISSh1LmVsZW1lbnRzKTt4PUVJKGRhLGgpO3k9SUkoeCk7ZGEubGVuZ3RoPjEwJiYodj0iMyIpfSFnJiZ5JiYoeD1beV0pO2Zvcih2YXIgbWE9MDttYTx4Lmxlbmd0aDttYSsrKUMucHVzaChHSSh4W21hXSxjLGUpKTtDPUMuc2xpY2UoMCwxMCl9eSYmKHo9R0koeSxjLGUpKTt2YXIgUGE9e2VsZW1lbnRzOkMsZ2k6eixzdGF0dXM6dn07bltwXT17dGltZXN0YW1wOk5iKCkscmVzdWx0OlBhfTt2YXIgRmE7KFBhLmVsZW1lbnRzLnNvbWUoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5kaX0pfHwoKEZhPVBhLmdpKT09bnVsbD8wOkZhLmRpKSkmJkd1KFQuVy5yaik7cmV0dXJuIFBhfSxEST1mdW5jdGlvbihhKXt2YXIgYj1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELktofSksYz1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELlhkfSk7aWYoYS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5jZX0pLmxlbmd0aD09PTAmJmMubGVuZ3RoPT09CjApZm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF0sZj1lLkNhLnNwbGl0KCIgIik7Zi5sZW5ndGg+MSYmYS5wdXNoKHtDYTpmWzBdLERhOkZELlhkLGVsZW1lbnQ6ZS5lbGVtZW50LE9jOmUuT2N9LHtDYTpmLnNsaWNlKDEpLmpvaW4oIiAiKSxEYTpGRC5jZSxlbGVtZW50OmUuZWxlbWVudCxPYzplLk9jfSl9Zm9yKHZhciBnLGg9MCxsLG49ZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5lZSYmdS5DYS5sZW5ndGg+PTMmJnUuQ2EubGVuZ3RoPD00fSxwPTA7cDxhLmxlbmd0aDtwKyspe3ZhciBxPWFbcF07aWYobihxKSYmZyYmcS5lbGVtZW50LnBhcmVudEVsZW1lbnQ9PT1nJiZoPDMpe2lmKGgrPTEsbCs9cS5DYSxoPT09Myl7dmFyIHI9cC1oKzE7aWYobD1LSVtGRC5lZV0ubmEobCkpYVtyXS5DYT1sfX1lbHNlIGlmKGg9MCxsPSIiLGc9dm9pZCAwLG4ocSkpe2grKztsPXEuQ2E7dmFyIHQ9dm9pZCAwO2c9KHQ9cS5lbGVtZW50LnBhcmVudEVsZW1lbnQpIT1udWxsPwp0OnZvaWQgMH19cmV0dXJuIGEuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiFuKHUpfSl9LE9JPWZ1bmN0aW9uKGEsYil7aWYoYS52YWx1ZSYmTEkuaW5kZXhPZigoYS50eXBlfHwidGV4dCIpLnRvTG93ZXJDYXNlKCkpIT09LTEpe3ZhciBjPWEuYXV0b2NvbXBsZXRlO2lmKGMpZm9yKHZhciBkPWMuc3BsaXQoIiAiKSxlPTA7ZTxkLmxlbmd0aDtlKyspe3ZhciBmPU1JKGEudmFsdWUsYixkW2VdKTtpZihmKXJldHVybiBmfXZhciBnLGg9W2EubmFtZSxhLmlkLChnPWEuYXJpYUxhYmVsKSE9bnVsbD9nOnZvaWQgMCxhLnBsYWNlaG9sZGVyXSxsPWEucGFyZW50RWxlbWVudDtsJiZsLnRhZ05hbWU9PT0iTEFCRUwiJiZoLnB1c2gobC5pbm5lclRleHQpO3ZhciBuPWEucHJldmlvdXNFbGVtZW50U2libGluZztuJiZuLnRhZ05hbWU9PT0iTEFCRUwiJiYhbi5odG1sRm9yJiZoLnB1c2gobi5pbm5lclRleHQpO2lmKGEuaWQpe3ZhciBwPVtdO3RyeXtwPWRvY3VtZW50LmJvZHkucXVlcnlTZWxlY3RvckFsbCgnbGFiZWxbZm9yPSInKwphLmlkKyciXScpfWNhdGNoKEQpe31mb3IodmFyIHE9MDtxPHAubGVuZ3RoO3ErKyloLnB1c2gocFtxXS5pbm5lclRleHQpfWg9aC5maWx0ZXIoZnVuY3Rpb24oRCl7cmV0dXJuIEQmJkQudHJpbSgpfSk7Zm9yKHZhciByLHQ9MCx1PTA7dTxoLmxlbmd0aDt1Kyspe3ZhciB2PU5JKGEsYixoW3VdKTtpZih2KXt2YXIgeD12LHk9eC5DYSx6PXguRGEsQz14LlhzO0M+dCYmKHQ9QyxyPXtDYTp5LERhOnp9KX19cmV0dXJuIHJ9fSxOST1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF07aWYoS0lbZV0ubmUpe3ZhciBmPUtJW2VdLm5lLmV4ZWMoYy50cmltKCkpO2lmKGYpe3ZhciBnPWEsaD1bXSxsPWcudmFsdWUudHJpbSgpO2wmJmgucHVzaChsKTtpZihnLnRhZ05hbWU9PT0iU0VMRUNUIil0cnl7dmFyIG49Zy5xdWVyeVNlbGVjdG9yKCdbdmFsdWU9IicrZy52YWx1ZSsnIl0nKSxwPW4mJm4uaW5uZXJUZXh0LnRyaW0oKTtwJiZoLnB1c2gocCl9Y2F0Y2godSl7fWZvcih2YXIgcT0KaCxyPXZvaWQgMCx0PTA7dDxxLmxlbmd0aCYmIXI7dCsrKXI9S0lbZV0ubmEocVt0XSk7aWYocilyZXR1cm57RGE6ZSxDYTpyLFhzOmZbMF0ubGVuZ3RoL2MudHJpbSgpLmxlbmd0aH19fX19LE1JPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTtpZihLSVtlXS5hdXRvY29tcGxldGUmJktJW2VdLmF1dG9jb21wbGV0ZS5pbmRleE9mKGMpPj0wKXt2YXIgZj1LSVtlXS5uYShhLnRyaW0oKSk7aWYoZilyZXR1cm57RGE6ZSxDYTpmfX19fSxCST1mdW5jdGlvbihhKXt2YXIgYj1bXTthLmVtYWlsJiZiLnB1c2goRkQuQmIpO2EucGhvbmUmJmIucHVzaChGRC5lZSk7YS5hZGRyZXNzJiZiLnB1c2goRkQuWGQsRkQuY2UsRkQueGYsRkQucWcsRkQuS2gpO3JldHVybiBifSxDST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWFbZF0sZj1lLmVsZW1lbnQsZz1lLk9jLGg7YTp7dmFyIGw9ZixuPWIsCnA9bC5pbm5lckhUTUw7UEkuaW5kZXhPZihsLnRhZ05hbWUpPj0wJiYocD1sLnZhbHVlfHxwKTtpZihwKXt2YXIgcTtiOntmb3IodmFyIHI9cCx0PW4sdT0wO3U8dC5sZW5ndGg7dSsrKXt2YXIgdj10W3VdO2lmKCFLSVt2XS5tZSl7dmFyIHg9S0lbdl0ubmEoci50cmltKCkpO2lmKHgpe3E9e0RhOnYsQ2E6eH07YnJlYWsgYn19fXE9dm9pZCAwfWlmKHEpe2g9cTticmVhayBhfWlmKFBJLmluZGV4T2YobC50YWdOYW1lKSE9PS0xKXtoPU9JKGwsbik7YnJlYWsgYX19aD12b2lkIDB9dmFyIHk9aDtpZih5KXt2YXIgej15O2MucHVzaCh7Q2E6ei5DYSxEYTp6LkRhLGVsZW1lbnQ6ZixPYzpnfSl9fXJldHVybiBjfSxGST1mdW5jdGlvbihhKXt2YXIgYj1bXTtpZihhLmxlbmd0aD09PTApcmV0dXJuIGI7dmFyIGM9e30sZDtmb3IoZCBpbiBGRClpZihjPXtWZzpjLlZnfSxjLlZnPWQsRkQuaGFzT3duUHJvcGVydHkoYy5WZykpe3ZhciBlPWEuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmdW5jdGlvbihnKXtyZXR1cm4gZy5EYT09PQpGRFtmLlZnXX19KGMpKTtlLmxlbmd0aCE9PTAmJihGRFtjLlZnXT09PUZELkJiJiYoZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiFSSS50ZXN0KGYuQ2EpfSksZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiBmLmVsZW1lbnQudGFnTmFtZS50b1VwcGVyQ2FzZSgpPT09IklOUFVUIn0pLGU9UUkoZSxmdW5jdGlvbihmKXtyZXR1cm4hckkoZi5lbGVtZW50KX0pKSxiLnB1c2goZVswXSkpfXJldHVybiBifSxHST1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5lbGVtZW50LGU9YS5PYyxmPXtDYTphLkNhLHR5cGU6YS5EYSx0YWdOYW1lOmQudGFnTmFtZX07aWYoYil7dmFyIGcsaD1TSShkKTtpZihnPShlP2UrInwiK2g6aCkuc2xpY2UoMCxUSSkpZi5xdWVyeVNlbGVjdG9yPWd9YyYmKGYuaXNWaXNpYmxlPSFySShkKSk7ZSYmKGYuZGk9ITApO3JldHVybiBmfSx6ST1mdW5jdGlvbihhKXt2YXIgYixjLGQsZTtiPWEuaW5jbHVkZVNlbGVjdG9yO2M9YS5pbmNsdWRlVmlzaWJpbGl0eTtkPWEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM7CmU9YS5maWVsZEZpbHRlcnM7dmFyIGY9ISFiKyIuIishIWM7ZC5sZW5ndGgmJihmKz0iLiIrZC5qb2luKCIuIikpO3JldHVybiBmKz0iLiIrZS5lbWFpbCsiLiIrZS5waG9uZSsiLiIrZS5hZGRyZXNzfSxJST1mdW5jdGlvbihhKXtpZihhLmxlbmd0aCE9PTApe3ZhciBiO2I9UUkoYSxmdW5jdGlvbihjKXtyZXR1cm4hUkkudGVzdChjLkNhKX0pO2I9UUkoYixmdW5jdGlvbihjKXtyZXR1cm4gYy5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCJ9KTtiPVFJKGIsZnVuY3Rpb24oYyl7cmV0dXJuIXJJKGMuZWxlbWVudCl9KTtyZXR1cm4gYlswXX19LEVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyl7Zm9yKHZhciBlPSEwLGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXTtpZihnJiZwSShhW2RdLmVsZW1lbnQsZykpe2U9ITE7YnJlYWt9fWFbZF0uRGE9PT1GRC5CYiYmTSg2MDIpJiYoUkkudGVzdChhW2RdLkNhKXx8YVtkXS5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PQoiQSImJmFbZF0uZWxlbWVudC5oYXNBdHRyaWJ1dGUoImhyZWYiKSYmYVtkXS5lbGVtZW50LmdldEF0dHJpYnV0ZSgiaHJlZiIpLmluZGV4T2YoIm1haWx0bzoiKSE9PS0xP2U9ITE6YVtkXS5lbGVtZW50LmNsb3Nlc3QoImZvb3RlciIpIT09bnVsbCYmKGU9ITEpKTtlJiZjLnB1c2goYVtkXSl9cmV0dXJuIGN9LFFJPWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg8PTEpcmV0dXJuIGE7dmFyIGM9YS5maWx0ZXIoYik7cmV0dXJuIGMubGVuZ3RoPT09MD9hOmN9LFNJPWZ1bmN0aW9uKGEpe2lmKGE9PT1CLmJvZHkpcmV0dXJuImJvZHkiO2lmKGEuaWQpcmV0dXJuIiMiK2EuaWQ7dmFyIGI9YS5wYXJlbnRFbGVtZW50O2lmKGIpe3ZhciBjPVNJKGIpLGQ9VUkoYSxiKSxlPVZJKGEpKyI6bnRoLWNoaWxkKCIrZCsiKSI7cmV0dXJuIGM/YysiPiIrZTplfXZhciBmPWEucGFyZW50Tm9kZTtpZihmIGluc3RhbmNlb2YgU2hhZG93Um9vdCl7dmFyIGc9VUkoYSxmKTtyZXR1cm4gVkkoYSkrIjpudGgtY2hpbGQoIisKZysiKSJ9cmV0dXJuIGEudGFnTmFtZT9hLnRhZ05hbWUudG9Mb3dlckNhc2UoKToiIn0sVkk9ZnVuY3Rpb24oYSl7aWYoYS5jbGFzc0xpc3QmJmEuY2xhc3NMaXN0Lmxlbmd0aD4wKXt2YXIgYj1BcnJheS5mcm9tKGEuY2xhc3NMaXN0LGZ1bmN0aW9uKGMpe3JldHVybiBDU1MuZXNjYXBlKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiBjLmxlbmd0aD4wfSk7aWYoYi5sZW5ndGg+MClyZXR1cm4iLiIrYi5qb2luKCIuIil9cmV0dXJuIiJ9LFVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWIuY2hpbGRyZW4sZD0wO2Q8Yy5sZW5ndGg7ZCsrKWlmKGNbZF09PT1hKXJldHVybiBkKzE7cmV0dXJuIDF9LEhJPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1kLmVsZW1lbnQsZj1kLk9jLGc9ZS50ZXh0Q29udGVudDtlLnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCImJmUudmFsdWUmJihnPWUudmFsdWUpO2lmKGcpe3ZhciBoPQpnLm1hdGNoKEtEKTtpZihoKXt2YXIgbD1oWzBdO0xEKGwpfHxiLnB1c2goe2VsZW1lbnQ6ZSxDYTpsLERhOkZELkJiLE9jOmZ9KX19fXJldHVybiBifSxBST1mdW5jdGlvbigpe3ZhciBhPVtdLGI9Qi5ib2R5O2lmKCFiKXJldHVybntlbGVtZW50czphLHN0YXR1czoiNCJ9O3ZhciBjPVdJKGIsMCwiIixhKTtyZXR1cm57ZWxlbWVudHM6YSxzdGF0dXM6Y319LFdJPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1hLnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSxmPWUubGVuZ3RoPjFFND8iMiI6IjEiLGc9MDtnPE1hdGgubWluKGUubGVuZ3RoLDFFNCk7ZysrKXt2YXIgaD1lW2ddO2lmKCEoWEkuaW5kZXhPZihoLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApJiZoLmNoaWxkcmVuIGluc3RhbmNlb2YgSFRNTENvbGxlY3Rpb24pe3ZhciBsPSExO2lmKE0oNTgyKSYmaC5zaGFkb3dSb290JiZiPDEpe3ZhciBuPVNJKGgpO1dJKGguc2hhZG93Um9vdCxiKzEsYz9jKyJ8IituOm4sZCk9PT0iMiImJgooZj0iMiIpO2w9ITB9dmFyIHA9ITE7aWYoIWwpZm9yKHZhciBxPTA7cTxNYXRoLm1pbihoLmNoaWxkRWxlbWVudENvdW50LDFFNCk7cSsrKWlmKCEoWUkuaW5kZXhPZihoLmNoaWxkcmVuW3FdLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApKXtwPSEwO2JyZWFrfSghcCYmIWx8fE0oNTY4KSYmUEkuaW5kZXhPZihoLnRhZ05hbWUpIT09LTEpJiZkLnB1c2goe2VsZW1lbnQ6aCxPYzpiPjA/Yzp2b2lkIDB9KX19cmV0dXJuIGZ9LFJJPS9zdXBwb3J0fG5vcmVwbHkvaSxYST0iU0NSSVBUIFNUWUxFIElNRyBTVkcgUEFUSCBCUiBOT1NDUklQVCBURVhUQVJFQSIuc3BsaXQoIiAiKSxZST1bIkJSIl0sVEk9TmYoNzAsNTApLFBJPVsiSU5QVVQiLCJTRUxFQ1QiXSxMST0idGV4dCB0ZWwgc2VhcmNoIG51bWJlciBoaWRkZW4gZW1haWwgc2VsZWN0LW9uZSIuc3BsaXQoIiAiKSxaST1SZWdFeHAoInBob25lfG1vYmlsZXxjb250YWN0Lj9udW1iZXJ8dGVsZWZvbm51bW1lcnx0ZWxlZm9ub3x0ZWxcdTAwZTlmb25vfHRlbGZpeGV8XHU5NmZiXHU4YTcxfHRlbGVmb25lfHRlbGVtb3ZlbHxcdTA0NDJcdTA0MzVcdTA0M2JcdTA0MzVcdTA0NDRcdTA0M2VcdTA0M2R8XHUwOTJlXHUwOTRiXHUwOTJjXHUwOTNlXHUwOTA3XHUwOTMyfFx1NzUzNVx1OGJkZHxcdTYyNGJcdTY3M2FcdTUzZjd8XHUwZDJlXHUwZDRhXHUwZDJjXHUwZDQ4XHUwZDMyXHUwZDRkXHUyMDBkfChefFstX10pdGVsWy1fXT8oXFxkKykqKFxcWy4qXFxdKSokfCg/Olx1YzgwNFx1ZDY1NHxcdWQ1NzhcdWI0ZGNcdWQzZjB8XHVkNzM0XHViMzAwXHVkM2YwfFx1ZDczNFx1YjMwMFx1YzgwNFx1ZDY1NCkoPzouP1x1YmM4OFx1ZDYzOCk/fChcXGJ8X3xcXCopdGVsZWZvbihcXGJ8X3xcXCopfHRlbGVwb258cG9uc2VsfChub21vcnxub1xcLj8pLj8oaHB8aGFuZHBob25lKSIsCiJpIiksJEk9UmVnRXhwKCJebmFtZXxmdWxsLj9uYW1lfHlvdXIuP25hbWV8Y3VzdG9tZXIuP25hbWV8YmlsbC4/bmFtZXxzaGlwLj9uYW1lfG5hbWUuKmZpcnN0LipsYXN0fGZpcnN0YW5kbGFzdG5hbWV8Y29udGFjdC4/KG5hbWV8cGVyc29uKXxub21icmUuKnkuKmFwZWxsaWRvc3xebm9tKD8hW2EtekEtWl0pfFx1MzA0YVx1NTQwZFx1NTI0ZHxcdTZjMGZcdTU0MGR8Xm5vbWV8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2NDZcdTA2MjdcdTA2NDUuKlx1MDYyZVx1MDYyN1x1MDY0Nlx1MDY0OFx1MDYyN1x1MDYyZlx1MDZhZlx1MDZjY3xcdTU5ZDNcXHMqXHU1NDBkfFx1MDQzYVx1MDQzZVx1MDQzZFx1MDQ0Mlx1MDQzMFx1MDQzYVx1MDQ0Mlx1MDQzZFx1MDQzZVx1MDQzNS4/XHUwNDNiXHUwNDM4XHUwNDQ2XHUwNDNlfChcXGJ8X3xcXCopYWRbXHUwMTMxXT8gc295YWRbXHUwMTMxXT8oXFxifF98XFwqKXxcdWMxMzFcdWJhODV8bmFtYS4/KGxlbmdrYXB8cGVuZXJpbWF8a2FtdSkiLAoiaSIpLGFKPVJlZ0V4cCgiZmlyc3QuKm5hbWV8aW5pdGlhbHN8Zm5hbWV8Zmlyc3QkfGdpdmVuLipuYW1lfHZvcm5hbWV8bm9tYnJlfGZvcmVuYW1lfHByXHUwMGU5bm9tfHByZW5vbXxcdTU0MGR8bm9tZXxcdTA0MThcdTA0M2NcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1fFx1Yzc3NFx1Yjk4NHxcdTBkMmFcdTBkNDdcdTBkMzBcdTBkNGR8KFxcYnxffFxcKikoaXNpbXxhZHxhZChpfFx1MDEzMXxpbml6fFx1MDEzMW5cdTAxMzF6KT8pKFxcYnxffFxcKil8XHUwOTI4XHUwOTNlXHUwOTJlfG5hbWEgZGVwYW4iLCJpIiksYko9UmVnRXhwKCJsYXN0LipuYW1lfGxuYW1lfHN1cm5hbWUoPyFcXGQpfGxhc3QkfHNlY29uZG5hbWV8ZmFtaWx5LipuYW1lfG5hY2huYW1lfGFwZWxsaWRvcz98ZmFtaWxsZXxebm9tKD8hW2EtekEtWl0pfGNvZ25vbWV8XHU1OWQzfGFwZWxpZG9zfHN1cmVuYW1lfHNvYnJlbm9tZXxcdTA0MjRcdTA0MzBcdTA0M2NcdTA0MzhcdTA0M2JcdTA0MzhcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2MmVcdTA2MjdcdTA2NDZcdTA2NDhcdTA2MjdcdTA2MmZcdTA2YWZcdTA2Y2N8XHUwOTA5XHUwOTJhXHUwOTI4XHUwOTNlXHUwOTJlfFx1MGQyZVx1MGQzMVx1MGQ0MVx1MGQyYVx1MGQ0N1x1MGQzMFx1MGQ0ZHwoXFxifF98XFwqKShzb3lpc2ltfHNveWFkKGl8XHUwMTMxfGluaXp8XHUwMTMxblx1MDEzMXopPykoXFxifF98XFwqKXxcXGJcdWMxMzEoPzpbXlx1YmE4NV18XFxiKXxuYW1hIGJlbGFrYW5nIiwKImkiKSxjSj1SZWdFeHAoImNvdW50cnl8Y291bnRyaWVzfHBhXHUwMGVkc3xwYWlzfChcXGJ8XylsYW5kKFxcYnxfKSg/IS4qKG1hcmsuKikpfChefFteKFx1NTE2NXxcdTUxZmEpXSlcdTU2ZmR8XHU1NmZkXHU1YmI2fFx1YWQ2ZFx1YWMwMHxcdWIwOThcdWI3N2N8KFxcYnxfKShcdTAwZmNsa2V8dWxjZXx1bGtlKShcXGJ8Xyl8XHUwNmE5XHUwNjM0XHUwNjQ4XHUwNjMxfG5lZ2FyYSIsImkiKSxkSj1SZWdFeHAoIihefFteLl0pemlwfHBvc3RhbHxwb3N0Lipjb2RlfHBjb2RlfHBpbi4/Y29kZXxwb3N0bGVpdHphaGx8XFxiY3BcXGJ8XFxiY2RwXFxifFxcYmNhcFxcYnxcdTkwZjVcdTRmYmZcdTc1NmFcdTUzZjd8Y29kaWdvfGNvZHBvc3xcXGJjZXBcXGJ8XHUwNDFmXHUwNDNlXHUwNDQ3XHUwNDQyXHUwNDNlXHUwNDMyXHUwNDRiXHUwNDM5Lj9cdTA0MThcdTA0M2RcdTA0MzRcdTA0MzVcdTA0M2FcdTA0NDF8XHUwOTJhXHUwOTNmXHUwOTI4Lj9cdTA5MTVcdTA5NGJcdTA5MjF8XHUwZDJhXHUwZDNmXHUwZDI4XHUwZDRkXHUyMDBkXHUwZDE1XHUwZDRiXHUwZDIxXHUwZDRkfFx1OTBhZVx1NjUzZlx1N2YxNlx1NzgwMXxcdTkwYWVcdTdmMTZ8XHU5MGY1XHU5MDVlXHU1MzQwXHU4NjVmfChcXGJ8Xylwb3N0YSBrb2R1KFxcYnxfKXxcdWM2YjBcdWQzYjguP1x1YmM4OFx1ZDYzOHxrb2RlLj9wb3MiLAoiaSIpLGVKPXt9LEtJPShlSltGRC5CYl09e21lOiExLG5hOk1EfSxlSltGRC5lZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbInRlbCIsInRlbC1uYXRpb25hbCIsInRlbC1sb2NhbCJdLG5lOlpJLG5hOmZ1bmN0aW9uKGEpe3JldHVybiBHRChhLCEwKX19LGVKW0ZELktoXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsibmFtZSIsImNjLW5hbWUiXSxuZTokSSxuYTpORH0sZUpbRkQuWGRdPXttZTohMCxhdXRvY29tcGxldGU6WyJnaXZlbi1uYW1lIiwiY2MtZ2l2ZW4tbmFtZSJdLG5lOmFKLG5hOk5EfSxlSltGRC5jZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbImZhbWlseS1uYW1lIiwiY2MtZmFtaWx5LW5hbWUiXSxuZTpiSixuYTpORH0sZUpbRkQueGZdPXttZTohMCxhdXRvY29tcGxldGU6WyJjb3VudHJ5IiwiY291bnRyeS1uYW1lIl0sbmU6Y0osbmE6TkR9LGVKW0ZELnFnXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsicG9zdGFsLWNvZGUiXSxuZTpkSixuYTpJRH0sZUopO2Z1bmN0aW9uIGZKKGEpe3ZhciBiO0wodGhpcywiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iKTt2YXIgYz1UZChhKXx8e30sZD1KSSh7aW5jbHVkZVNlbGVjdG9yOiEhYy5pbmNsdWRlU2VsZWN0b3IsaW5jbHVkZVZpc2liaWxpdHk6ISFjLmluY2x1ZGVWaXNpYmlsaXR5LGV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzOmMuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMsZmllbGRGaWx0ZXJzOmMuZmllbGRGaWx0ZXJzLHNlbGVjdE11bHRpcGxlRWxlbWVudHM6ISFjLnNlbGVjdE11bHRpcGxlRWxlbWVudHN9KTtiPW5ldyBrYjt2YXIgZT1uZXcgR2Q7Yi5zZXQoImVsZW1lbnRzIixlKTtmb3IodmFyIGY9ZC5lbGVtZW50cyxnPTA7ZzxmLmxlbmd0aDtnKyspZS5wdXNoKGdKKGZbZ10pKTtkLmdpIT09dm9pZCAwJiZiLnNldCgicHJlZmVycmVkRW1haWxFbGVtZW50IiwKZ0ooZC5naSkpO2Iuc2V0KCJzdGF0dXMiLGQuc3RhdHVzKTtpZihjLnJlYWRGcm9tRGF0YUxheWVyKXtoSihlLGMpO3ZhciBoPVBEKCksbD1oLnN0O2Iuc2V0KCJkYXRhTGF5ZXJTZWFyY2hUaW1lIixoLnZ0KTtiLnNldCgiZGF0YUxheWVyU2VhcmNoQ291bnQiLGwpfXJldHVybiBifQp2YXIgaUo9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgRkQuQmI6cmV0dXJuImVtYWlsIjtjYXNlIEZELmVlOnJldHVybiJwaG9uZV9udW1iZXIiO2Nhc2UgRkQuWGQ6cmV0dXJuImZpcnN0X25hbWUiO2Nhc2UgRkQuY2U6cmV0dXJuImxhc3RfbmFtZSI7Y2FzZSBGRC50ajpyZXR1cm4ic3RyZWV0IjtjYXNlIEZELmxpOnJldHVybiJjaXR5IjtjYXNlIEZELmpqOnJldHVybiJyZWdpb24iO2Nhc2UgRkQucWc6cmV0dXJuInBvc3RhbF9jb2RlIjtjYXNlIEZELnhmOnJldHVybiJjb3VudHJ5In19LGpKPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYixjPWlKKGEuRGEpO2MhPT12b2lkIDAmJmIuc2V0KCJ0eXBlIixjKTtiLnNldCgidXNlckRhdGEiLGEuQ2EpO2Iuc2V0KCJ0YWdOYW1lIiwiRExZUiIpO3JldHVybiBifSxoSj1mdW5jdGlvbihhLGIpe3ZhciBjPVFEKCk7aWYoTSg1NjgpKWZvcih2YXIgZD1uZXcgU2V0KGEuaGMoKS5tYXAoZnVuY3Rpb24ocil7cmV0dXJuIHIuZ2V0KCJ0eXBlIil9KSksCmU9bShjKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9bShmLnZhbHVlKSxoPWcubmV4dCgpLnZhbHVlLGw9Zy5uZXh0KCkudmFsdWUsbj1oLHA9bDtpZihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHMpYS5wdXNoKGpKKHApKTtlbHNle3ZhciBxPWlKKG4pO3EmJiFkLmhhcyhxKSYmYS5wdXNoKGpKKHApKX19ZWxzZSBjLmhhcyhGRC5CYikmJihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHN8fGEubGVuZ3RoKCk9PT0wKSYmYS5wdXNoKGpKKGMuZ2V0KEZELkJiKSkpfSxnSj1mdW5jdGlvbihhKXt2YXIgYj1uZXcga2I7Yi5zZXQoInVzZXJEYXRhIixhLkNhKTtiLnNldCgidGFnTmFtZSIsYS50YWdOYW1lKTthLnF1ZXJ5U2VsZWN0b3IhPT12b2lkIDAmJmIuc2V0KCJxdWVyeVNlbGVjdG9yIixhLnF1ZXJ5U2VsZWN0b3IpO2EuaXNWaXNpYmxlIT09dm9pZCAwJiZiLnNldCgiaXNWaXNpYmxlIixhLmlzVmlzaWJsZSk7aWYoTSg1NjgpKXt2YXIgYz1pSihhLnR5cGUpO2MhPT0Kdm9pZCAwJiZiLnNldCgidHlwZSIsYyl9ZWxzZSBzd2l0Y2goYS50eXBlKXtjYXNlIEZELkJiOmIuc2V0KCJ0eXBlIiwiZW1haWwiKX1yZXR1cm4gYn07ZkouUD0iaW50ZXJuYWwuZGV0ZWN0VXNlclByb3ZpZGVkRGF0YSI7CmZ1bmN0aW9uIG1KKGEsYil7cmV0dXJuIGZ9bUouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25DbGljayI7CmZ1bmN0aW9uIHRKKGEsYil7cmV0dXJuIHB9dEouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25FbGVtZW50VmlzaWJpbGl0eSI7ZnVuY3Rpb24gdUooKXt9dUouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25FcnJvciI7CmZ1bmN0aW9uIEFKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZH1BSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1JbnRlcmFjdGlvbiI7CmZ1bmN0aW9uIEZKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZn1GSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1TdWJtaXQiOwpmdW5jdGlvbiBLSigpe3ZhciBhPXRoaXM7fUtKLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uR2FTZW5kIjsKZnVuY3Rpb24gUkooYSxiKXt2YXIgYz10aGlzO3JldHVybiBmfVJKLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uSGlzdG9yeUNoYW5nZSI7dmFyIFNKPVsiaHR0cDovLyIsImh0dHBzOi8vIiwiamF2YXNjcmlwdDoiLCJmaWxlOi8vIl07CmZ1bmN0aW9uIFdKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gaH1XSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayI7CmZ1bmN0aW9uIGdLKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZ31nSy5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPblNjcm9sbCI7ZnVuY3Rpb24gaEsoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYS5saW1pdCYmYS5naz49YS5saW1pdClhLmFpJiZBLmNsZWFySW50ZXJ2YWwoYS5haSk7ZWxzZXthLmdrKys7dmFyIGI9TmIoKTt1RSh7ZXZlbnQ6YS5ldmVudE5hbWUsImd0bS50aW1lcklkIjphLmFpLCJndG0udGltZXJFdmVudE51bWJlciI6YS5naywiZ3RtLnRpbWVySW50ZXJ2YWwiOmEuaW50ZXJ2YWwsImd0bS50aW1lckxpbWl0IjphLmxpbWl0LCJndG0udGltZXJTdGFydFRpbWUiOmEuTW8sImd0bS50aW1lckN1cnJlbnRUaW1lIjpiLCJndG0udGltZXJFbGFwc2VkVGltZSI6Yi1hLk1vLCJndG0udHJpZ2dlcnMiOmEuTHR9KX19fQpmdW5jdGlvbiBpSyhhLGIpewpyZXR1cm4gZn1pSy5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPblRpbWVyIjt2YXIgQWM9QWEoWyJkYXRhLWd0bS15dC1pbnNwZWN0ZWQtIl0pLGtLPVsid3d3LnlvdXR1YmUuY29tIiwid3d3LnlvdXR1YmUtbm9jb29raWUuY29tIl0sbEs7CmZ1bmN0aW9uIHZLKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZX12Sy5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbllvdVR1YmVBY3Rpdml0eSI7ZnVuY3Rpb24gd0soYSxiKXtpZighbGgoYSl8fCFmaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGM9Yj9UZChiKTp7fTtjLnJlZ2V4Q2FjaGU9YWwoMyxmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwfSk7cmV0dXJuIEdoKGEsYyl9d0suUD0iaW50ZXJuYWwuZXZhbHVhdGVCb29sZWFuRXhwcmVzc2lvbiI7ZnVuY3Rpb24geEsoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9eEsuUD0iaW50ZXJuYWwuZXZhbHVhdGVNYXRjaGluZ1J1bGVzIjt2YXIgeUs9bmV3IE1hcChbWyJhdyIsNF1dKTtmdW5jdGlvbiB6SyhhKXt2YXIgYj12clthXSxjPXlLLmdldChhKTtyZXR1cm4gYz8od3EoYixjKXx8W10pLnNvbWUoZnVuY3Rpb24oZCl7cmV0dXJuIGQubT09PSIwInx8ZC5tPT09dm9pZCAwfSk6ITF9CmZ1bmN0aW9uIEFLKGEsYil7aWYoTSg0OTUpKXtmb3IodmFyIGM9bmV3IE1hcCxkPW0oeUspLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1tKGUudmFsdWUpLGc9Zi5uZXh0KCkudmFsdWUsaD1mLm5leHQoKS52YWx1ZSxsPWcsbj1hW2xdLHA9QXJyYXkuaXNBcnJheShuKT9uWzBdOm47aWYocCE9PXZvaWQgMCl7dmFyIHE9e30scj0ocS5rPXAscS5pPVN0cmluZyhNYXRoLmZsb29yKERhdGUubm93KCkvMUUzKSkscS5iPVtdLHEubT0iMSIscSksdD1hcShyLGgpO3QmJih6SyhsKXx8Yy5zZXQobCx0KSl9fWlmKGMuc2l6ZSl7dmFyIHUsdj1bXSx4PWIucGF0aHx8Ii8iO3YucHVzaChlbmNvZGVVUklDb21wb25lbnQoInAiKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KHgpKTtiLkFyJiZ2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCJjZSIpKyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGIuQXIpKSk7dmFyIHk9Yi5kb21haW4mJmIuZG9tYWluIT09ImF1dG8iPwpiLmRvbWFpbjoiYXV0bzoiK0EubG9jYXRpb24uaG9zdG5hbWU7di5wdXNoKGVuY29kZVVSSUNvbXBvbmVudCgiZCIpKyI9IitlbmNvZGVVUklDb21wb25lbnQoeSkpO2Zvcih2YXIgej1tKGMpLEM9ei5uZXh0KCk7IUMuZG9uZTtDPXoubmV4dCgpKXt2YXIgRD1tKEMudmFsdWUpLEk9RC5uZXh0KCkudmFsdWUsRz1ELm5leHQoKS52YWx1ZTt2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KEkpKyI9IitlbmNvZGVVUklDb21wb25lbnQoRykpfXU9Il8vc2V0X2Nvb2tpZT8iK3Yuam9pbigiJiIpO3ZhciBOLFM9RSg1OCk7Tj1FZih1LFMpO3ZhciBXPVhqKCkrIi8iK047bWQoVyl9fX07ZnVuY3Rpb24gQksoYSl7cmV0dXJuIkNXVldlYlZpZXdNZXNzYWdlImluIGF9ZnVuY3Rpb24gQ0soYSl7dmFyIGI9QSxjPWIud2Via2l0O2RlbGV0ZSBiLndlYmtpdDthKGIud2Via2l0KTtiLndlYmtpdD1jfWZ1bmN0aW9uIERLKGEsYil7dmFyIGM9e2FjdGlvbjoiZ2NsX3NldHVwIn07aWYoQksoYS5tZXNzYWdlSGFuZGxlcnMpKXJldHVybiBhLm1lc3NhZ2VIYW5kbGVycy5DV1ZXZWJWaWV3TWVzc2FnZS5wb3N0TWVzc2FnZSh7Y29tbWFuZDpiLHBheWxvYWQ6Y30pLCEwO3ZhciBkPWEubWVzc2FnZUhhbmRsZXJzW2JdO3JldHVybiBkPyhkLnBvc3RNZXNzYWdlKGMpLCEwKTohMX07dmFyIEVLPXt9LEZLPShFSy5hd2I9e25vdEZvdW5kOjE3OH0sRUsueXRiPXtub3RGb3VuZDoxOTR9LEVLKTtmdW5jdGlvbiBHSyhhKXt2YXIgYixjPShiPUZLW2FdKT09bnVsbD92b2lkIDA6Yi5ub3RGb3VuZDtjJiZQKGMpfQpmdW5jdGlvbiBISyhhKXtpZighbm0oam0uYmEuam4pJiYid2Via2l0ImluIEEmJkEud2Via2l0Lm1lc3NhZ2VIYW5kbGVycyl7dmFyIGI9ZnVuY3Rpb24oKXt0cnl7Q0soZnVuY3Rpb24oYyl7aWYoYyl7dmFyIGQ7ZD1CSyhjLm1lc3NhZ2VIYW5kbGVycyl8fCJhd2IiaW4gYy5tZXNzYWdlSGFuZGxlcnM/e2NvbW1hbmQ6ImF3YiIsc291cmNlOjV9OihCSyhjLm1lc3NhZ2VIYW5kbGVycyl8fCJ5dGIiaW4gYy5tZXNzYWdlSGFuZGxlcnMpJiZNKDQ5OSk/e2NvbW1hbmQ6Inl0YiIsc291cmNlOjh9OnZvaWQgMDtkJiYobW0oam0uYmEuam4sZnVuY3Rpb24oZSl7dmFyIGY9ZC5zb3VyY2U7ZS5nY2xpZCYmbHMoImdjbF9hdyIsZS5nY2xpZCxmLGEpO2Uud2JyYWlkJiZscygiZ2NsX2diIixlLndicmFpZCxmLGEpfSksREsoYyxkLmNvbW1hbmQpfHxHSyhkLmNvbW1hbmQpKX19KX1jYXRjaChjKXtQKDE5Myl9fTtIbChmdW5jdGlvbigpe0JyKGZwKT9iKCk6SWwoYixmcCl9LGZwKX19O3ZhciBJSz1bImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20iLCJodHRwczovL3d3dy55b3V0dWJlLmNvbSIsImh0dHBzOi8vbS55b3V0dWJlLmNvbSJdO2Z1bmN0aW9uIEpLKGEpe3JldHVybiBhLmRhdGEuYWN0aW9uIT09ImdjbF90cmFuc2ZlciI/KFAoMTczKSwhMCk6YS5kYXRhLmdhZFNvdXJjZT9hLmRhdGEuZ2NsaWQ/ITE6KFAoMTgxKSwhMCk6KFAoMTgwKSwhMCl9CmZ1bmN0aW9uIEtLKGEsYil7aWYoIWF8fE0oYSkpe2lmKG5tKGptLmJhLlZlKSlyZXR1cm4gUCgxNzYpLGptLmJhLlZlO2lmKG5tKGptLmJhLm1uKSlyZXR1cm4gUCgxNzApLGptLmJhLlZlO3ZhciBjPUZwKCk7aWYoIWMpUCgxNzEpO2Vsc2UgaWYoYy5vcGVuZXIpe3ZhciBkPWZ1bmN0aW9uKGcpe2lmKCFJSy5pbmNsdWRlcyhnLm9yaWdpbikpUCgxNzIpO2Vsc2UgaWYoIUpLKGcpKXt2YXIgaD17Z2FkU291cmNlOmcuZGF0YS5nYWRTb3VyY2V9O2guZ2NsaWQ9Zy5kYXRhLmdjbGlkO21tKGptLmJhLlZlLGgpO2ImJmcuZGF0YS5nY2xpZCYmbHMoImdjbF9hdyIsU3RyaW5nKGcuZGF0YS5nY2xpZCksNixiKTt2YXIgbDsobD1nLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbik9PW51bGx8fGwuY2FsbChnKTtudChjLCJtZXNzYWdlIixkKX19O2lmKG10KGMsIm1lc3NhZ2UiLGQpKXttbShqbS5iYS5tbiwhMCk7Zm9yKHZhciBlPW0oSUspLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKWMub3BlbmVyLnBvc3RNZXNzYWdlKHthY3Rpb246ImdjbF9zZXR1cCJ9LApmLnZhbHVlKTtQKDE3NCk7cmV0dXJuIGptLmJhLlZlfVAoMTc1KX19fTsKdmFyIExLPWZ1bmN0aW9uKGEpe3ZhciBiPXtwcmVmaXg6TyhhLk0sRi5ELkZkKXx8TyhhLk0sRi5ELm5iKSxkb21haW46TyhhLk0sRi5ELkxiKSxwZDpPKGEuTSxGLkQuQ2IpLGZsYWdzOk8oYS5NLEYuRC5UYil9O2EuTS5pc0d0bUV2ZW50JiYoYi5wYXRoPU8oYS5NLEYuRC52YykpO3JldHVybiBifSxNSz1mdW5jdGlvbihhLGIpe2lmKCFRKGEsSC5KLldlKSl7dmFyIGM9S0soMTE5KTtpZihjKXt2YXIgZD1ubShjKSxlPWZ1bmN0aW9uKGcpe1YoYSxILkouV2UsITApO3ZhciBoPVIoYSxGLkQuemYpLGw9UihhLEYuRC5BZik7VShhLEYuRC56ZixTdHJpbmcoZy5nYWRTb3VyY2UpKTtVKGEsRi5ELkFmLDYpO1YoYSxILkouc2EpO1YoYSxILkoudWcpO1UoYSxGLkQuc2EpO2IoKTtVKGEsRi5ELnpmLGgpO1UoYSxGLkQuQWYsbCk7VihhLEguSi5XZSwhMSl9O2lmKGQpZShkKTtlbHNle3ZhciBmPXZvaWQgMDtmPXBtKGMsZnVuY3Rpb24oZyxoKXtlKGgpO3FtKGMsZil9KX19fX0sUEs9ZnVuY3Rpb24oYSl7dmFyIGIsCmMsZCxlO2I9YS5UbjtjPWEubW87ZD1hLlFvO2U9YS5VbjtpZihiKXtpZihkcihjW0YuRC5YZl0sISFjW0YuRC5BYV0pKXtpZihXaigpJiZCcihBcigpKSl7Zm9yKHZhciBmPVVxKCEwKSxnPXt9LGg9bShPYmplY3Qua2V5cyh2cikpLGw9aC5uZXh0KCk7IWwuZG9uZTtsPWgubmV4dCgpKXt2YXIgbj1sLnZhbHVlLHA9dnJbbl0scT1mW3BdO2lmKHEpe3ZhciByPSRwKHEsNCk7ciYmKG9zKE1hdGgubWluKE5yKHIpLE5iKCkpfHxOYigpLHAsNCl8fChnW25dPXEpKX19Zm9yKHZhciB0PXt9LHU9bShPYmplY3Qua2V5cyhnKSksdj11Lm5leHQoKTshdi5kb25lO3Y9dS5uZXh0KCkpe3ZhciB4PXYudmFsdWUseT1nW3hdO2lmKHkhPT12b2lkIDApe3ZhciB6PSRwKHksNCk7eiYmei5tPT09IjEiJiYodFt4XT16LmspfX1BSyh0LGUpfXBzKGUpO3RzKGUpO1F2KGUpfWlmKE9wKCkhPT0yKXtncyhlKTtpcyhlKTtpZihZZigxNSkpe3ZhciBDPWUsRD1kcyhBLmxvY2F0aW9uLmhyZWYsITAsITEpOwpELmxlbmd0aHx8KEQ9ZHMoQS5kb2N1bWVudC5yZWZlcnJlciwhMSwhMCkpO2lmKEQubGVuZ3RoKXtDPUN8fHt9O3ZhciBJPURbMF07SS52YWx1ZSYmbXMoImdjbF9kYyIsW3t2ZXJzaW9uOiIiLGdjbGlkOkkudmFsdWUsdGltZXN0YW1wOk5iKCkscWE6SS5xYX1dLEMpfX1ISyhlKTtLSyh2b2lkIDAsZSl9ZWxzZSBncyhlKTtpZihXaigpJiZCcihBcigpKSl7dmFyIEc9ZnMoKTtBSyhHLGUpfXhzKHFzLGUpO3lzKGUpfWNbRi5ELkFhXSYmKHZzKGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10pLHVzKGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZS5wcmVmaXgpLHdzKGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZS5wcmVmaXgpLFJ2KEd2KGUucHJlZml4KSxjW0YuRC5BYV0sY1tGLkQuYWRdLCEhY1tGLkQud2NdLGUpLFJ2KCJGUEFVIixjW0YuRC5BYV0sY1tGLkQuYWRdLCEhY1tGLkQud2NdLGUpKTtkJiZBcyhOSyk7Q3MoT0spfSxxcz1bImF3IiwiZGMiLAoiZ2IiXSxPSz1bImF3IiwiZGMiLCJnYiIsImFnIl0sTks9WyJhdyIsImRjIiwiZ2IiLCJhZyIsImdhZF9zb3VyY2UiXTtmdW5jdGlvbiBWSygpe3JldHVybiBNdCg3KSYmTXQoOSkmJk10KDEwKX07CnZhciBhTD1mdW5jdGlvbihhLGIpe2EmJigkSygic2lkIixhLnRhcmdldElkLGIpLCRLKCJjYyIsYS5jbGllbnRDb3VudCxiKSwkSygidGwiLGEudG90YWxMaWZlTXMsYiksJEsoImhjIixhLmhlYXJ0YmVhdENvdW50LGIpLCRLKCJjbCIsYS5jbGllbnRMaWZlTXMsYikpfSwkSz1mdW5jdGlvbihhLGIsYyl7YiE9bnVsbCYmYy5wdXNoKGErIj0iK2IpfSxiTD1mdW5jdGlvbigpe3ZhciBhPUIucmVmZXJyZXI7aWYoYSl7dmFyIGI7cmV0dXJuIExqKFJqKGEpLCJob3N0Iik9PT0oKGI9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmIuaG9zdCk/MToyfXJldHVybiAwfSxkTD1mdW5jdGlvbigpe3RoaXMuamE9Y0w7dGhpcy5OPTA7dGhpcy55YT1OZig1Nyw1KTt0aGlzLlI9TmYoNTgsNTApO3RoaXMuZmE9RGIoKTt0aGlzLkxhPSJodHRwczovLyIrRSgyMSkrIi9hPyJ9O2RMLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjLGQpewp2YXIgZT1iTCgpLGYsZz1bXTtmPUE9PT1BLnRvcCYmZSE9PTAmJmI/KGI9PW51bGw/dm9pZCAwOmIuY2xpZW50Q291bnQpPjE/ZT09PTI/MToyOmU9PT0yPzA6Mzo0O2EmJiRLKCJzaSIsYS5KZyxnKTskSygibSIsMCxnKTskSygiaXNzIixmLGcpOyRLKCJpZiIsYyxnKTthTChiLGcpO2QmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGQuc3Vic3RyaW5nKDAsdGhpcy5SKSksZyk7dGhpcy5aKGcpO307ZEwucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1bXTskSygibSIsMSxmKTskSygicyIsYSxmKTskSygicG8iLGJMKCksZik7YiYmKCRLKCJzdCIsYi5zdGF0ZSxmKSwkSygic2kiLGIuSmcsZiksJEsoInNtIixiLlVnLGYpKTthTChjLGYpOyRLKCJjIixkLGYpO2UmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGUuc3Vic3RyaW5nKDAsCnRoaXMuUikpLGYpO3RoaXMuWihmKTt9O2RMLnByb3RvdHlwZS5aPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphOyFmbi5OfHx0aGlzLk4+PXRoaXMueWF8fCgkSygicGlkIix0aGlzLmZhLGEpLCRLKCJiYyIsKyt0aGlzLk4sYSksYS51bnNoaWZ0KCJjdGlkPSIrRSg1KSsiJnQ9cyIpLHRoaXMuamEoIiIrdGhpcy5MYSthLmpvaW4oIiYiKSkpfTtmdW5jdGlvbiBlTChhKXtyZXR1cm4gYS5wZXJmb3JtYW5jZSYmYS5wZXJmb3JtYW5jZS5ub3coKXx8RGF0ZS5ub3coKX0KdmFyIGZMPWZ1bmN0aW9uKGEsYil7dmFyIGM9QSxkPU5mKDUzLDUwMCksZT1OZig1NCw1RTMpLGY9TmYoOCwyMCksZz1OZig1NSw1RTMpLGg7dmFyIGw9ZnVuY3Rpb24obixwLHEpe3E9cT09PXZvaWQgMD97cW86ZnVuY3Rpb24oKXt9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbigpe30sb25GYWlsdXJlOmZ1bmN0aW9uKCl7fX06cTt0aGlzLklqPW47dGhpcy5IPXA7dGhpcy5OPXE7dGhpcy5mYT10aGlzLmphPXRoaXMuaGVhcnRiZWF0Q291bnQ9dGhpcy5Eaj0wO3RoaXMuZmU9ITE7dGhpcy5LPXt9O3RoaXMuaWQ9U3RyaW5nKE1hdGguZmxvb3IoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIqTWF0aC5yYW5kb20oKSkpO3RoaXMuc3RhdGU9MDt0aGlzLkpnPWVMKHRoaXMuSCk7dGhpcy5VZz1lTCh0aGlzLkgpO3RoaXMuWj0xMH07bC5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbigpe3RoaXMuUigxKTsKdGhpcy5MYSgpfTtsLnByb3RvdHlwZS5nZXRTdGF0ZT1mdW5jdGlvbigpe3JldHVybntzdGF0ZTp0aGlzLnN0YXRlLEpnOk1hdGgucm91bmQoZUwodGhpcy5IKS10aGlzLkpnKSxVZzpNYXRoLnJvdW5kKGVMKHRoaXMuSCktdGhpcy5VZyl9fTtsLnByb3RvdHlwZS5SPWZ1bmN0aW9uKG4pe3RoaXMuc3RhdGUhPT1uJiYodGhpcy5zdGF0ZT1uLHRoaXMuVWc9ZUwodGhpcy5IKSl9O2wucHJvdG90eXBlLnZnPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyh0aGlzLkRqKyspfTtsLnByb3RvdHlwZS5MYT1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5oZWFydGJlYXRDb3VudCsrO3RoaXMueWEoe3R5cGU6MCxjbGllbnRJZDp0aGlzLmlkLHJlcXVlc3RJZDp0aGlzLnZnKCksbWF4RGVsYXk6dGhpcy5oZSgpfSxmdW5jdGlvbihwKXtpZihwLnR5cGU9PT0wKXt2YXIgcTtpZigoKHE9cC5mYWlsdXJlKT09bnVsbD92b2lkIDA6cS5mYWlsdXJlVHlwZSkhPW51bGwpaWYocC5zdGF0cyYmKG4uc3RhdHM9CnAuc3RhdHMpLG4uZmErKyxwLmlzRGVhZHx8bi5mYT5mKXt2YXIgcj1wLmlzRGVhZCYmcC5mYWlsdXJlLmZhaWx1cmVUeXBlO24uWj1yfHwxMDtuLlIoNCk7bi5BaigpO3ZhciB0LHU7KHU9KHQ9bi5OKS5wbyk9PW51bGx8fHUuY2FsbCh0LHtmYWlsdXJlVHlwZTpyfHwxMCxkYXRhOnAuZmFpbHVyZS5kYXRhfSl9ZWxzZSBuLlIoMyksbi5QaCgpO2Vsc2V7aWYobi5oZWFydGJlYXRDb3VudD5wLnN0YXRzLmhlYXJ0YmVhdENvdW50K2Ype24uaGVhcnRiZWF0Q291bnQ9cC5zdGF0cy5oZWFydGJlYXRDb3VudDt2YXIgdix4Oyh4PSh2PW4uTikub25GYWlsdXJlKT09bnVsbHx8eC5jYWxsKHYse2ZhaWx1cmVUeXBlOjEzfSl9bi5zdGF0cz1wLnN0YXRzO3ZhciB5PW4uc3RhdGU7bi5SKDIpO2lmKHkhPT0yKWlmKG4uZmUpe3ZhciB6LEM7KEM9KHo9bi5OKS5zbyk9PW51bGx8fEMuY2FsbCh6KX1lbHNle24uZmU9ITA7dmFyIEQsSTsoST0oRD1uLk4pLnFvKT09bnVsbHx8SS5jYWxsKEQpfW4uZmE9CjA7bi5OaigpO24uUGgoKX19fSl9O2wucHJvdG90eXBlLmhlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RhdGU9PT0yP2U6ZH07bC5wcm90b3R5cGUuUGg9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuSC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi5MYSgpfSxNYXRoLm1heCgwLHRoaXMuaGUoKS0oZUwodGhpcy5IKS10aGlzLmphKSkpfTtsLnByb3RvdHlwZS5rcj1mdW5jdGlvbihuLHAscSl7dmFyIHI9dGhpczt0aGlzLnlhKHt0eXBlOjEsY2xpZW50SWQ6dGhpcy5pZCxyZXF1ZXN0SWQ6dGhpcy52ZygpLGNvbW1hbmQ6bn0sZnVuY3Rpb24odCl7aWYodC50eXBlPT09MSlpZih0LnJlc3VsdClwKHQucmVzdWx0KTtlbHNle3ZhciB1LHYseCx5PXtmYWlsdXJlVHlwZTooeD0odT10LmZhaWx1cmUpPT1udWxsP3ZvaWQgMDp1LmZhaWx1cmVUeXBlKSE9bnVsbD94OjEyLGRhdGE6KHY9dC5mYWlsdXJlKT09bnVsbD92b2lkIDA6di5kYXRhfSx6LEM7KEM9KHo9ci5OKS5vbkZhaWx1cmUpPT0KbnVsbHx8Qy5jYWxsKHoseSk7cSh5KX19KX07bC5wcm90b3R5cGUueWE9ZnVuY3Rpb24obixwKXt2YXIgcT10aGlzO2lmKHRoaXMuc3RhdGU9PT00KW4uZmFpbHVyZT17ZmFpbHVyZVR5cGU6dGhpcy5afSxwKG4pO2Vsc2V7dmFyIHI9dGhpcy5zdGF0ZSE9PTImJm4udHlwZSE9PTAsdD1uLnJlcXVlc3RJZCx1LHY9dGhpcy5ILnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgeT1xLktbdF07eSYmKGltKDYpLHEua2QoeSw3KSl9LCh1PW4ubWF4RGVsYXkpIT1udWxsP3U6ZykseD17cmVxdWVzdDpuLEhvOnAsem86cixOczp2fTt0aGlzLktbdF09eDtyfHx0aGlzLnNlbmRSZXF1ZXN0KHgpfX07bC5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24obil7dGhpcy5qYT1lTCh0aGlzLkgpO24uem89ITE7dGhpcy5JaihuLnJlcXVlc3QpfTtsLnByb3RvdHlwZS5Oaj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT0KdGhpcy5LW3AudmFsdWVdO3Euem8mJnRoaXMuc2VuZFJlcXVlc3QocSl9fTtsLnByb3RvdHlwZS5Baj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXRoaXMua2QodGhpcy5LW3AudmFsdWVdLHRoaXMuWil9O2wucHJvdG90eXBlLmtkPWZ1bmN0aW9uKG4scCl7dGhpcy5hYyhuKTt2YXIgcT1uLnJlcXVlc3Q7cS5mYWlsdXJlPXtmYWlsdXJlVHlwZTpwfTtuLkhvKHEpfTtsLnByb3RvdHlwZS5hYz1mdW5jdGlvbihuKXtkZWxldGUgdGhpcy5LW24ucmVxdWVzdC5yZXF1ZXN0SWRdO3RoaXMuSC5jbGVhclRpbWVvdXQobi5Ocyl9O2wucHJvdG90eXBlLmtzPWZ1bmN0aW9uKG4pe3RoaXMuamE9ZUwodGhpcy5IKTt2YXIgcD10aGlzLktbbi5yZXF1ZXN0SWRdO2lmKHApdGhpcy5hYyhwKSxwLkhvKG4pO2Vsc2V7dmFyIHEscjsocj0ocT10aGlzLk4pLm9uRmFpbHVyZSk9PW51bGx8fHIuY2FsbChxLHtmYWlsdXJlVHlwZToxNH0pfX07Cmg9bmV3IGwoYSxjLGIpO3JldHVybiBofTsKdmFyIGdMPWZ1bmN0aW9uKCl7cmV0dXJuIGFsKDE4LGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBkTH0pfSxjTD1mdW5jdGlvbihhKXtpbyhsbyhjby5pYS5aYiksZnVuY3Rpb24oKXtaYyhhKX0pfSxoTD1mdW5jdGlvbihhKXt2YXIgYj1hLnN1YnN0cmluZygwLGEuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIiKSk7cmV0dXJuIiYxcD0xIisoYj8iJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQoYik6IiIpfSxpTD1mdW5jdGlvbihhKXt2YXIgYj1BLmxvY2F0aW9uLm9yaWdpbjtpZighYilyZXR1cm4gbnVsbDsoTSg0MzIpP1dqKCk6V2ooKSYmIWEpJiYoYT0iIitiK1hqKCkrIi9fL3NlcnZpY2Vfd29ya2VyIik7dmFyIGM9YSxkLGU9TGYoMTEpO2U9TGYoMTApO2Q9ZTtjPyhjLmNoYXJBdChjLmxlbmd0aC0xKSE9PSIvIiYmCihjKz0iLyIpLGE9YytkKTphPSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9zdGF0aWMvc2VydmljZV93b3JrZXIvIitkKyIvIjt2YXIgZjt0cnl7Zj1uZXcgVVJMKGEpfWNhdGNoKGcpe3JldHVybiBudWxsfXJldHVybiBmLnByb3RvY29sIT09Imh0dHBzOiI/bnVsbDpmfSxqTD1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5PaCk7cmV0dXJuIGImJmJbYV19LGtMPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dGhpcy5LPWdMKCk7dGhpcy5aPXRoaXMuUj0hMTt0aGlzLmZhPW51bGw7dGhpcy5pbml0VGltZT1NYXRoLnJvdW5kKE5iKCkpO3RoaXMuSD0xNTt0aGlzLk49dGhpcy5GcihhKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtiLmluaXRpYWxpemUoKX0sMUUzKTtiZChmdW5jdGlvbigpe2IuenMoYSl9KX07az1rTC5wcm90b3R5cGU7ay5kZWxlZ2F0ZT1mdW5jdGlvbihhLGIsYyl7dGhpcy5nZXRTdGF0ZSgpIT09Mj8odGhpcy5LLkgodGhpcy5ILHtzdGF0ZTp0aGlzLmdldFN0YXRlKCksCkpnOnRoaXMuaW5pdFRpbWUsVWc6TWF0aC5yb3VuZChOYigpKS10aGlzLmluaXRUaW1lfSx2b2lkIDAsYS5jb21tYW5kVHlwZSksYyh7ZmFpbHVyZVR5cGU6dGhpcy5IfSkpOnRoaXMuTi5rcihhLGIsYyl9O2suZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OLmdldFN0YXRlKCkuc3RhdGV9O2suenM9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5vcmlnaW4sYz10aGlzLGQ9WGMoKTt0cnl7dmFyIGU9ZC5jb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksZj1hLnBhdGhuYW1lLGc9ZltmLmxlbmd0aC0xXT09PSIvIj9hLnRvU3RyaW5nKCk6YS50b1N0cmluZygpKyIvIixoPWEub3JpZ2luIT09Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIj9oTChmKToiIixsO00oMTMzKSYmKGw9e3NhbmRib3g6ImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMifSk7WGMoZysic3dfaWZyYW1lLmh0bWw/b3JpZ2luPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpKwpoLHZvaWQgMCxsLHZvaWQgMCxlKTt2YXIgbj1mdW5jdGlvbigpe2QuY29udGVudERvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSk7ZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe2MuZmE9ZS5jb250ZW50V2luZG93O2QuY29udGVudFdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixmdW5jdGlvbihwKXtwLm9yaWdpbj09PWEub3JpZ2luJiZjLk4ua3MocC5kYXRhKX0pO2MuaW5pdGlhbGl6ZSgpfSl9O2QuY29udGVudERvY3VtZW50LnJlYWR5U3RhdGU9PT0iY29tcGxldGUiP24oKTpkLmNvbnRlbnRXaW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXtuKCl9KX1jYXRjaChwKXtkLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZCksdGhpcy5IPTExLHRoaXMuSy5LKHZvaWQgMCx2b2lkIDAsdGhpcy5ILHAudG9TdHJpbmcoKSl9fTtrLkZyPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1mTChmdW5jdGlvbihkKXt2YXIgZTsoZT1iLmZhKT09Cm51bGx8fGUucG9zdE1lc3NhZ2UoZCxhLm9yaWdpbil9LHtxbzpmdW5jdGlvbigpe2IuUj0hMDtiLksuSyhjLmdldFN0YXRlKCksYy5zdGF0cyl9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbihkKXtiLlI/KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDEwLGIuSy5IKGIuSCxjLmdldFN0YXRlKCksYy5zdGF0cyx2b2lkIDAsZD09bnVsbD92b2lkIDA6ZC5kYXRhKSk6KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDQsYi5LLksoYy5nZXRTdGF0ZSgpLGMuc3RhdHMsYi5ILGQ9PW51bGw/dm9pZCAwOmQuZGF0YSkpfSxvbkZhaWx1cmU6ZnVuY3Rpb24oZCl7Yi5IPWQuZmFpbHVyZVR5cGU7Yi5LLkgoYi5ILGMuZ2V0U3RhdGUoKSxjLnN0YXRzLGQuY29tbWFuZCxkLmRhdGEpfX0pO3JldHVybiBjfTtrLmluaXRpYWxpemU9ZnVuY3Rpb24oKXt0aGlzLlp8fHRoaXMuTi5pbml0KCk7dGhpcy5aPSEwfTsKdmFyIGxMPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlO2lmKChlPWpMKGEpKT09bnVsbHx8IWUuZGVsZWdhdGUpe3ZhciBmPUljKCk/MTY6NjtnTCgpLkgoZix2b2lkIDAsdm9pZCAwLGIuY29tbWFuZFR5cGUpO2Qoe2ZhaWx1cmVUeXBlOmZ9KTtyZXR1cm59akwoYSkuZGVsZWdhdGUoYixjLGQpO307CmZ1bmN0aW9uIG1MKGEsYixjLGQpe3ZhciBlPWlMKGEpO2lmKGU9PT1udWxsKXtkKCJfaXNfc3c9ZiIrKEljKCk/MTY6NikrInRlIik7cmV0dXJufXZhciBmPWI/MTowLGc9TWF0aC5yb3VuZChOYigpKSxoLGw9KGg9akwoZS5vcmlnaW4pKT09bnVsbD92b2lkIDA6aC5pbml0VGltZSxuPWw/Zy1sOnZvaWQgMCxwO00oNDMyKT9wPVdqKCk/dm9pZCAwOkEubG9jYXRpb24uaHJlZjpwPUEubG9jYXRpb24uaHJlZjtsTChlLm9yaWdpbix7Y29tbWFuZFR5cGU6MCxwYXJhbXM6e3VybDphLG1ldGhvZDpmLHRlbXBsYXRlczpjLGJvZHk6Ynx8IiIscHJvY2Vzc1Jlc3BvbnNlOiEwLHNpbmNlSW5pdDpuLGF0dHJpYnV0aW9uUmVwb3J0aW5nOiEwLHJlZmVyZXI6cCxzdHJpY3Q6TSg1ODQpfX0sZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKHEpe3ZhciByPSJfaXNfc3c9ZiIrcS5mYWlsdXJlVHlwZSx0LHU9KHQ9akwoZS5vcmlnaW4pKT09Cm51bGw/dm9pZCAwOnQuZ2V0U3RhdGUoKTt1IT09dm9pZCAwJiYocis9InMiK3UpO2Qobj9yKygidCIrbik6cisidGUiKX0pO307ZnVuY3Rpb24gbkwoYSl7aWYoSWYoNDcpJiZkSShhLCJjY2RfYWRkXzFwX2RhdGEiLCExKSYmV2ooKSl7dmFyIGI9YS5NO2lmKEljKCkmJmJnKCJpbnRlcm5hbF9zd19hbGxvd2VkIiwiIikpe3ZhciBjPWVrKGIpLGQ9V2ooKT9YaigpOnZvaWQgMCxlO2U9ZD97cGF0aDpkLGVvOiJmdWxsIn06Yz97cGF0aDpjLGVvOiJsaXRlIn06dm9pZCAwO2lmKGUpe3ZhciBmPWUuZW8sZz1uZXcgVVJMKGUucGF0aCxBLmxvY2F0aW9uLm9yaWdpbik7aWYoZy5vcmlnaW49PT1BLmxvY2F0aW9uLm9yaWdpbiYmcHkoZik9PT12b2lkIDApe3ZhciBoPW9tKGptLmJhLk9oLHt9KTtoW2ZdfHwoaFtmXT1uZXcgbnkoZykpfX19fX07ZnVuY3Rpb24gc0woKXt2YXIgYTthPWE9PT12b2lkIDA/ZG9jdW1lbnQ6YTt2YXIgYjtyZXR1cm4hKChiPWEuZmVhdHVyZVBvbGljeSk9PW51bGx8fCFiLmFsbG93ZWRGZWF0dXJlcygpLmluY2x1ZGVzKCJhdHRyaWJ1dGlvbi1yZXBvcnRpbmciKSl9O2Z1bmN0aW9uIHdMKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlPUZwKCksZj1EcChlKTtpZihmLnVybClpZihkKXt2YXIgZz1jKGYudXJsKTtiIT09ZyYmVShhLEYuRC5QZSxnKX1lbHNle3ZhciBoPWYudXJsO2IhPT1oJiZVKGEsRi5ELlBlLGMoaCkpfX07CnZhciB4TD1mdW5jdGlvbihhKXtpZihhIT1udWxsKXt2YXIgYj1TdHJpbmcoYSkuc3Vic3RyaW5nKDAsNTEyKSxjPWIuaW5kZXhPZigiIyIpO3JldHVybiBjPT09LTE/YjpiLnN1YnN0cmluZygwLGMpfXJldHVybiIifSx5TD1mdW5jdGlvbigpe3ZhciBhPUIudGl0bGU7aWYoYT09PXZvaWQgMHx8YT09PSIiKXJldHVybiIiO2E9ZW5jb2RlVVJJQ29tcG9uZW50KGEpO2Zvcih2YXIgYj0yNTY7Yj4wJiZLaihhLnN1YnN0cmluZygwLGIpKT09PXZvaWQgMDspYi0tO3JldHVybiBLaihhLnN1YnN0cmluZygwLGIpKXx8IiJ9O2Z1bmN0aW9uIEFMKGEpe1YoYSxILkouSmEsITApO1YoYSxILkouRWIsTmIoKSk7VihhLEguSi55bixhLk0uZXZlbnRNZXRhZGF0YVtILkouSmFdKX07dmFyIFNMPWZ1bmN0aW9uKGEpe3ZhciBiPVhvKEYuRC5rYSk/bWooInBzY2RsIik6ImRlbmllZCI7YiE9bnVsbCYmVShhLEYuRC5qaCxiKX07dmFyIFRMPW5ldyBmdW5jdGlvbigpe3RoaXMuSD17fX07dmFyIFVMPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5NO2lmKGI9PT12b2lkIDA/MDpiKXt2YXIgZD1jLmdldE1lcmdlZFZhbHVlcyhGLkQuT2EpO1liKGQpJiZVKGEsRi5ELkxpLFliKGQpKX12YXIgZT1PbyhmRChGLkQuT2EpKSxmPWMuZ2V0TWVyZ2VkVmFsdWVzKEYuRC5PYSwxLGUpLGc9Yy5nZXRNZXJnZWRWYWx1ZXMoRi5ELk9hLDIpLGg9WWIobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxmLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sVEwuSCkpLCIuIiksbD1ZYihnLCIuIik7aCYmVShhLEYuRC5YYyxoKTtsJiZVKGEsRi5ELlZjLGwpfTt2YXIgVkw9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi50cSk7YiYmVShhLEYuRC5JbCxiKX07ZnVuY3Rpb24gV0woYSl7dmFyIGI9S0IoITEpO2lmKGIhPW51bGwmJmIuc3RhdHVzKXt2YXIgYz17Z3RiOmIuc3RhdHVzfTtiLmRlbGF5JiYoYy5ndGJkPWIuZGVsYXkpO2EubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSxjKX19O3ZhciBYTD1mdW5jdGlvbihhKXt6bSgpPT09IlVTLUNPIiYmVShhLEYuRC5MZSwxKX07dmFyIFlMPXtSYTp7Q2s6MSx6bjoyLEhuOjMsSW46NCxKbjo1LHduOjZ9fTtZTC5SYVtZTC5SYS5Da109IkFET0JFX0NPTU1FUkNFIjtZTC5SYVtZTC5SYS56bl09IlNRVUFSRVNQQUNFIjtZTC5SYVtZTC5SYS5Ibl09IldPT19DT01NRVJDRSI7WUwuUmFbWUwuUmEuSW5dPSJXT09fQ09NTUVSQ0VfTEVHQUNZIjtZTC5SYVtZTC5SYS5Kbl09IldPUkRfUFJFU1MiO1lMLlJhW1lMLlJhLnduXT0iU0hPUElGWSI7ZnVuY3Rpb24gWkwoYSl7dmFyIGI9QTtyZXR1cm4gS2ooYi5lc2NhcGUoYi5hdG9iKGEpKSl9CmZ1bmN0aW9uICRMKCl7dHJ5e2lmKCFNKDQ5OCkmJiFNKDQyNSkpcmV0dXJuW107dmFyIGE9bm0oam0uYmEubG4pO2lmKEFycmF5LmlzQXJyYXkoYSkpcmV0dXJuIGE7dmFyIGI9W10sYzthOnt0cnl7Yz0hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W2RhdGEtcmVxdWlyZW1vZHVsZV49Im1hZ2UvIl0nKTticmVhayBhfWNhdGNoKHkpe31jPSExfWMmJmIucHVzaChZTC5SYS5Dayk7dmFyIGQ7YTp7dHJ5e3ZhciBlPVpMKCJZWE56WlhSekxuTnhkV0Z5WlhOd1lXTmxMbU52YlM4PSIpO2Q9ZT8hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W3NyY149Ii8vJytlKyciXScpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fWQ9ITF9ZCYmYi5wdXNoKFlMLlJhLnpuKTt2YXIgZjthOntpZihNKDQyNSkpdHJ5e3ZhciBnPVpMKCJjMmh2Y0dsbWVTNWpiMjA9IiksaD1aTCgiYzJodmNHbG1lV05rYmk1amIyMD0iKTtmPWcmJmg/ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtzcmMqPSJjZG4uJytnKyciXSxtZXRhW3Byb3BlcnR5PSJvZzppbWFnZSJdW2NvbnRlbnQqPSJjZG4uJysKKGcrJyJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9ImNkbi4nKSsoZysnIl0sbGlua1tyZWw9InByZWNvbm5lY3QiXVtocmVmKj0iZm9udHMuJykrKGgrJyJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9Iml0ZXJhYmxlLXNob3BpZnkiXSxsaW5rW3JlbD0icHJlY29ubmVjdCJdW2hyZWYqPSJ2LicpKyhnKyciXScpKTohMTticmVhayBhfWNhdGNoKHkpe31mPSExfWYmJmIucHVzaChZTC5SYS53bik7dmFyIGw7YTp7dHJ5e2w9ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtzcmMqPSJ3b29jb21tZXJjZSJdLGxpbmtbaHJlZio9Indvb2NvbW1lcmNlIl0sW2NsYXNzfD0id29vY29tbWVyY2UiXScpO2JyZWFrIGF9Y2F0Y2goeSl7fWw9ITF9bCYmYi5wdXNoKFlMLlJhLkluKTt2YXIgbjthOnt0cnl7dmFyIHAscT0oKHA9Qi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOnAuaG9zdG5hbWUpfHwiIixyLHQ9KChyPUIubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpyLm9yaWdpbil8fAoiIix1PVpMKCJMbmR2Y21Sd2NtVnpjeTVqYjIwPSIpLHY9WkwoIkx5OXpMbmN1YjNKbiIpO249dSYmdj9UYihxLHUpfHwhIUIucXVlcnlTZWxlY3RvcignW3NyY149IicrdCsnL3dwLWNvbnRlbnQiXSxtZXRhW25hbWU9ImdlbmVyYXRvciJdW2NvbnRlbnRePSJXb3JkUHJlc3MgIl0sbGlua1tyZWw9ImRucy1wcmVmZXRjaCJdW2hyZWY9IicrKHYrJyJdJykpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fW49ITF9biYmYi5wdXNoKFlMLlJhLkpuKTt2YXIgeDthOnt0cnl7eD0hIUIucXVlcnlTZWxlY3RvcignW2NsYXNzKj0id29vY29tbWVyY2UiXSxtZXRhW25hbWU9ImdlbmVyYXRvciJdW2NvbnRlbnRePSJXb29Db21tZXJjZSAiXScpO2JyZWFrIGF9Y2F0Y2goeSl7fXg9ITF9eCYmYi5wdXNoKFlMLlJhLkhuKTtVQigpJiZtbShqbS5iYS5sbixiKTtyZXR1cm4gYn1jYXRjaCh5KXt9cmV0dXJuW119O2Z1bmN0aW9uIHdNKGEpe2lmKE0oNDI1KSYmUShhLEguSi5GYykpe3ZhciBiPU5mKDY3LDE1MDApLGM9YS5tZXJnZUhpdERhdGFGb3JLZXksZD1GLkQuVGEsZT17fTtjLmNhbGwoYSxkLGUpfX07dmFyIHhNPSJwbGF0Zm9ybSBwbGF0Zm9ybVZlcnNpb24gYXJjaGl0ZWN0dXJlIG1vZGVsIHVhRnVsbFZlcnNpb24gYml0bmVzcyBmdWxsVmVyc2lvbkxpc3Qgd293NjQiLnNwbGl0KCIgIik7ZnVuY3Rpb24geU0oYSl7dmFyIGI7cmV0dXJuKGI9YS5nb29nbGVfdGFnX2RhdGEpIT1udWxsP2I6YS5nb29nbGVfdGFnX2RhdGE9e319ZnVuY3Rpb24gek0oYSl7dmFyIGIsYztyZXR1cm4oYz0oYj1hLmdvb2dsZV90YWdfZGF0YSk9PW51bGw/dm9pZCAwOmIudWFjaF9wcm9taXNlKSE9bnVsbD9jOm51bGx9ZnVuY3Rpb24gQU0oYSl7dmFyIGIsYztyZXR1cm4gdHlwZW9mKChiPWEubmF2aWdhdG9yKT09bnVsbD92b2lkIDA6KGM9Yi51c2VyQWdlbnREYXRhKT09bnVsbD92b2lkIDA6Yy5nZXRIaWdoRW50cm9weVZhbHVlcyk9PT0iZnVuY3Rpb24ifQpmdW5jdGlvbiBCTShhKXtpZighQU0oYSkpcmV0dXJuIG51bGw7dmFyIGI9eU0oYSk7aWYoYi51YWNoX3Byb21pc2UpcmV0dXJuIGIudWFjaF9wcm9taXNlO3ZhciBjPWEubmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuZ2V0SGlnaEVudHJvcHlWYWx1ZXMoeE0pLnRoZW4oZnVuY3Rpb24oZCl7Yi51YWNoIT1udWxsfHwoYi51YWNoPWQpO3JldHVybiBkfSk7cmV0dXJuIGIudWFjaF9wcm9taXNlPWN9Owp2YXIgQ009ZnVuY3Rpb24oKXt0aGlzLndpbmRvdz1BO3RoaXMuTj1OYn07Q00ucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtpZihBTSh0aGlzLndpbmRvdykmJih0aGlzLlo9dGhpcy5OKCksIXpNKHRoaXMud2luZG93KSkpe3ZhciBhPUJNKHRoaXMud2luZG93KTthJiZhLnRoZW4oZnVuY3Rpb24oKXtQKDk1KX0pLmNhdGNoKGZ1bmN0aW9uKCl7UCg5Nil9KX19O0NNLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy53aW5kb3cuZ29vZ2xlX3RhZ19kYXRhLGI7aWYoYSE9bnVsbCYmYS51YWNoKXt2YXIgYz1hLnVhY2gsZD1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGMpO2MuZnVsbFZlcnNpb25MaXN0JiYoZC5mdWxsVmVyc2lvbkxpc3Q9Yy5mdWxsVmVyc2lvbkxpc3Quc2xpY2UoMCkpO2I9ZH1lbHNlIGI9bnVsbDtyZXR1cm4gYn07Q00ucHJvdG90eXBlLmZhPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz10aGlzLGQ9ZnVuY3Rpb24oaCxsKXt0cnl7YShoLGwpfWNhdGNoKG4pe319LAplPXRoaXMuSCgpO2lmKGUpZChlKTtlbHNle3ZhciBmPXpNKHRoaXMud2luZG93KTtpZihmKXtiPU1hdGgubWluKE1hdGgubWF4KGlzRmluaXRlKGIpP2I6MCwwKSwxRTMpO3ZhciBnPXRoaXMud2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtkLktnfHwoZC5LZz0hMCxQKDEwNiksZChudWxsLEVycm9yKCJUaW1lb3V0IikpKX0sYik7Zi50aGVuKGZ1bmN0aW9uKGgpe2QuS2d8fChkLktnPSEwLFAoMTA0KSxjLndpbmRvdy5jbGVhclRpbWVvdXQoZyksZChoKSl9KS5jYXRjaChmdW5jdGlvbihoKXtkLktnfHwoZC5LZz0hMCxQKDEwNSksYy53aW5kb3cuY2xlYXJUaW1lb3V0KGcpLGQobnVsbCxoKSl9KX1lbHNlIGQobnVsbCl9fTtDTS5wcm90b3R5cGUuSz1mdW5jdGlvbigpe3JldHVybiB0aGlzLlohPT12b2lkIDB9O3ZhciBETT1mdW5jdGlvbigpe3ZhciBhO2E9YT09PXZvaWQgMD9BOmE7cmV0dXJuIEFNKGEpfSxFTT1mdW5jdGlvbihhKXt2YXIgYj17fTtiW0YuRC5jZ109YS5hcmNoaXRlY3R1cmU7CmJbRi5ELmRnXT1hLmJpdG5lc3M7YS5mdWxsVmVyc2lvbkxpc3QmJihiW0YuRC5lZ109YS5mdWxsVmVyc2lvbkxpc3QubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoYy5icmFuZHx8IiIpKyI7IitlbmNvZGVVUklDb21wb25lbnQoYy52ZXJzaW9ufHwiIil9KS5qb2luKCJ8IikpO2JbRi5ELmZnXT1hLm1vYmlsZT8iMSI6IjAiO2JbRi5ELmdnXT1hLm1vZGVsO2JbRi5ELmhnXT1hLnBsYXRmb3JtO2JbRi5ELmlnXT1hLnBsYXRmb3JtVmVyc2lvbjtiW0YuRC5qZ109YS53b3c2ND8iMSI6IjAiO3JldHVybiBifSxGTT1uZXcgQ007dmFyIEdNPWZ1bmN0aW9uKGEpe2lmKCFETSgpKVAoODcpO2Vsc2UgaWYoRk0uSygpKXtQKDg1KTt2YXIgYj1GTS5IKCk7aWYoYil7aWYoYilmb3IodmFyIGM9RU0oYiksZD1tKE9iamVjdC5rZXlzKGMpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtVKGEsZixjW2ZdKX19ZWxzZSBQKDg2KX19O2Z1bmN0aW9uIEhNKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9UShhLEguSi5zZyksZD1kSShhLCJjdXN0b21fZXZlbnRfYWNjZXB0X3J1bGVzIiwhMSkmJiFiO2lmKGMpe3ZhciBlPWMuaW5kZXhPZihhLnRhcmdldC5kZXN0aW5hdGlvbklkKT49MCxmPSEwO1EoYSxILkouQ2MpJiYoZj1RKGEsSC5KLk5iKT09PXZrKCkpO2UmJmY/VihhLEguSi5raSwhMCk6KFYoYSxILkoua2ksITEpLGR8fChhLmlzQWJvcnRlZD0hMCkpO2lmKGEuY2FuQmVBY2NlcHRlZCgpKXt2YXIgZz11aygpLmluZGV4T2YoYS50YXJnZXQuZGVzdGluYXRpb25JZCk+PTAsaD0hMTtpZighZyl7dmFyIGwsbj0obD1uayhhLnRhcmdldC5kZXN0aW5hdGlvbklkKSk9PW51bGw/dm9pZCAwOmwuY2Fub25pY2FsQ29udGFpbmVySWQ7biYmKGg9dmsoKT09PW4pfWd8fGg/UShhLEguSi5raSkmJmEuYWNjZXB0KCk6YS5pc0Fib3J0ZWQ9ITB9ZWxzZSBhLmlzQWJvcnRlZD0hMH19O3ZhciBJTT1mdW5jdGlvbihhKXt2YXIgYj1PKGEuTSxGLkQuWmMpLGM9TyhhLk0sRi5ELlljKTtiJiYhYz8oYS5ldmVudE5hbWUhPT1GLkQud2EmJmEuZXZlbnROYW1lIT09Ri5ELnlmJiZQKDEzMSksYS5pc0Fib3J0ZWQ9ITApOiFiJiZjJiYoUCgxMzIpLGEuaXNBYm9ydGVkPSEwKX07dmFyIEpNPWZ1bmN0aW9uKGEpe2lmKGEuZXZlbnROYW1lPT09Ri5ELndhKXt2YXIgYj1JZigxMSksYz1RKGEsSC5KLkhxKTshKCFNKDU1MCkmJmJ8fGMpfHxhLnRhcmdldC5KYygpfHxZRygiaWRjX2NvbmZpZ19wdiIsYS50YXJnZXQuZGVzdGluYXRpb25JZCl8fChhLmlzQWJvcnRlZD0hMCl9fTt2YXIgTE09ZnVuY3Rpb24oYSxiKXtLTS5OKGEsYil9LE1NPWZ1bmN0aW9uKCl7dGhpcy5IPXt9fTtNTS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuSFthXTtjfHwoYz10aGlzLkhbYV09W10pO2MucHVzaChiKX07TU0ucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5IW2EudGFyZ2V0LmRlc3RpbmF0aW9uSWRdO2lmKCFhLmlzQWJvcnRlZCYmYilmb3IodmFyIGM9ZkkoYSksZD0wO2Q8Yi5sZW5ndGg7KytkKXt0cnl7YltkXShjKX1jYXRjaChlKXthLmlzQWJvcnRlZD0hMH1pZihhLmlzQWJvcnRlZClicmVha319O3ZhciBLTT1uZXcgTU07dmFyIE5NPWZ1bmN0aW9uKGEpe0tNLksoYSk7fTt2YXIgT009ZnVuY3Rpb24oYSl7YSYmKEFwKDQ5NSxhKSxBcCg1NjcsYSksQXAoNDUwLGEpLEFwKDQ0MyxhKSxBcCg1ODcsYSksQXAoNTc2LGEpLEFwKDU3MCxhKSxBcCg1ODEsYSksQXAoNjAyLGEpKX0sUE09ZnVuY3Rpb24oYSl7aWYoUShhLEguSi53ZikmJlhvKGZwKSl7dmFyIGI9UShhLEguSi5HYSksYz1RKGEsSC5KLmRhKSE9PVguVi51YiYmUShhLEguSi5kYSkhPT1YLlYuT2ImJlEoYSxILkouZGEpIT09WC5WLkZiJiZhLmV2ZW50TmFtZSE9PUYuRC5KYjtIdihiLGMpO3ZhciBkPUR2W0d2KGIucHJlZml4KV07T00oZCk7VShhLEYuRC5FZCxkKX19O2Z1bmN0aW9uIFFNKCl7cmV0dXJuIGtqKCJkZWR1cGVfZ2NsaWQiLGZ1bmN0aW9uKCl7cmV0dXJuIEF2KCl9KX07dmFyIFJNPS9eKHd3d1wuKT9nb29nbGUoXC5jb20/KT8oXC5bYS16XXsyfXQ/KT8kLyxTTT0vXnd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSQvO2Z1bmN0aW9uIFRNKGEpe2F8fChhPVVNKCkpO3JldHVybiBhLk50PyExOmEubnN8fGEucXN8fGEudnN8fGEucnN8fGEuRGd8fGEuVGh8fGEuVHJ8fGEuVmg9PT0iYXcuZHMifHxNKDIzNSkmJmEuVmg9PT0iYXcuZHYifHxhLllyPyEwOiExfQpmdW5jdGlvbiBVTSgpe3ZhciBhPXt9LGI9VXEoITApO2EuTnQ9ISFiLl91cDt2YXIgYz1lcygpLGQ9YXQoKTthLm5zPWMuYXchPT12b2lkIDA7YS5xcz1jLmRjIT09dm9pZCAwO2EudnM9Yy53YnJhaWQhPT12b2lkIDA7YS5ycz1jLmdicmFpZCE9PXZvaWQgMDthLlZoPXR5cGVvZiBjLmdjbHNyYz09PSJzdHJpbmciP2MuZ2Nsc3JjOnZvaWQgMDthLkRnPWQuRGc7YS5UaD1kLlRoO3ZhciBlPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjthLllyPVJNLnRlc3QoZSk7YS5Ucj1TTS50ZXN0KGUpO3JldHVybiBhfTtmdW5jdGlvbiBWTSgpe3ZhciBhPUEuX191c3BhcGk7aWYoeWIoYSkpe3ZhciBiPSIiO3RyeXthKCJnZXRVU1BEYXRhIiwxLGZ1bmN0aW9uKGMsZCl7aWYoZCYmYyl7dmFyIGU9Yy51c3BTdHJpbmc7ZSYmUmVnRXhwKCJeW1xcZGEtekEtWi1dezEsMjB9JCIpLnRlc3QoZSkmJihiPWUpfX0pfWNhdGNoKGMpe31yZXR1cm4gYn19Owp2YXIgV009ZnVuY3Rpb24oYSl7dmFyIGI9WG8oZnApO1YoYSxILkouWWUsTyhhLk0sRi5ELm1iKSE9bnVsbCYmTyhhLk0sRi5ELm1iKSE9PSExJiYhYik7dmFyIGM9UShhLEguSi5kaiksZD1PKGEuTSxGLkQudWMpIT09ITEsZT1MSyhhKTtkfHxVKGEsRi5ELkhkLCIxIik7dmFyIGY9SHIoZS5wcmVmaXgpLGc9UShhLEguSi5zYSl8fFEoYSxILkoudWcpfHxRKGEsSC5KLldlKTtjfHxnfHxVKGEsIl8mYXB2YyIsIjAiKTthLk0uaXNHdG1FdmVudCYmVShhLEYuRC5JbCwiZyIpO1UoYSxGLkQuRWQpO1UoYSxGLkQuTWIpO2lmKGImJihVKGEsRi5ELk1iLHlMKCkpLGQpKXtIdihlKTt2YXIgaD1EdltHdihlLnByZWZpeCldO1UoYSxGLkQuRWQsaCk7T00oaCl9aWYoYS5ldmVudE5hbWU9PT1GLkQud2EmJiFnKXt2YXIgbD1PKGEuTSxGLkQuemMpLG49TyhhLk0sRi5ELkRiKXx8e307UEsoe1RuOmQsbW86bixRbzpsLFVuOmV9KTshYyYmWXMoZikmJihWKGEsSC5KLnZkLCEwKSxVKGEsIl8mYXB2YyIsCiIxIikpfWlmKGMpYS5pc0Fib3J0ZWQ9ITA7ZWxzZXthLnRhcmdldC5kZXN0aW5hdGlvbklkJiZVKGEsRi5ELlFlLGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpO1UoYSxGLkQuVWIsYS5ldmVudE5hbWUpO2EuZXZlbnROYW1lPT09Ri5ELndhJiZVKGEsRi5ELlViLEYuRC5zYyk7aWYoUShhLEguSi5zYSkpVShhLEYuRC5VYixGLkQud3ApLFUoYSxGLkQuc2EsIjEiKTtlbHNlIGlmKFEoYSxILkoudWcpKVUoYSxGLkQuVWIsRi5ELkhwKTtlbHNlIGlmKFEoYSxILkouV2UpKVUoYSxGLkQuVWIsRi5ELkVwKTtlbHNle3ZhciBwPWVzKCk7VShhLEYuRC5EZCxwLmdjbGlkKTtVKGEsRi5ELktkLHAuZGNsaWQpO1UoYSxGLkQuQWwscC5nY2xzcmMpO2lmKCFSKGEsRi5ELkRkKSYmIVIoYSxGLkQuS2QpfHxNKDQyMSkpVShhLEYuRC5FZSxwLndicmFpZCksVShhLEYuRC5CZixwLmdicmFpZCk7dmFyIHE9TSg1ODkpLHI9ZnVuY3Rpb24oZmEpe3JldHVybiBmYS5yZXBsYWNlKC9bXD8jXS4qJC8sIiIpfSwKdD0hIU8oYS5NLEYuRC56YSksdT1xP3Q/ZnVuY3Rpb24oZmEpe3JldHVybiB4TChyKGZhKSl9OmZ1bmN0aW9uKGZhKXtyZXR1cm4geEwoZmEucmVwbGFjZSgvIy4qJC8sIiIpKX06cix2PWJ0KHUpO1UoYSxGLkQuemEsdik7dmFyIHg9ISFPKGEuTSxGLkQuVWEpLHk9Qi5yZWZlcnJlcjtVKGEsRi5ELlVhLHE/eD9yKHkpOnkucmVwbGFjZSgvIy4qJC8sIiIpOkIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIik7d0woYSx2LHUsITApO2lmKEtjKXt2YXIgej1MaihSaihLYyksImhvc3QiKTt6JiZVKGEsRi5ELmJtLHopfWlmKCFRKGEsSC5KLldlKSl7dmFyIEM9YXQoKTtVKGEsRi5ELnpmLEMuRGcpO1UoYSxGLkQuQWYsQy5Tcil9dmFyIEQ9VU0oKTtUTShEKSYmVShhLEYuRC5QZCwiMSIpO1UoYSxGLkQuRGwsUU0oKSk7VXEoITEpLl91cD09PSIxIiYmVShhLEYuRC5RbCwiMSIpfXdvLkg9ITA7VShhLEYuRC5TYik7VShhLEYuRC5sYik7aWYoTSg0MjEpKXt2YXIgST1GcihlKTsKSS5sZW5ndGg+MCYmVShhLEYuRC5TYixJLmpvaW4oIi4iKSk7dmFyIEc9RHIoZisiX2F3Iik7Ry5sZW5ndGg+MCYmVShhLEYuRC5sYixHLmpvaW4oIi4iKSl9ZWxzZSBpZighUihhLEYuRC5EZCkmJiFSKGEsRi5ELktkKSYmV3MoZikpe3ZhciBOPUZyKGUpO04ubGVuZ3RoPjAmJlUoYSxGLkQuU2IsTi5qb2luKCIuIikpfWVsc2UgaWYoIVIoYSxGLkQuRWUpJiZiKXt2YXIgUz1EcihmKyJfYXciKTtTLmxlbmd0aD4wJiZVKGEsRi5ELmxiLFMuam9pbigiLiIpKX1VKGEsRi5ELlVsLHFkKCkpO2EuTS5pc0d0bUV2ZW50JiYoYS5NLkVhW0YuRC5SY109ZkQoRi5ELlJjKSk7U3QoYS5NKT9VKGEsRi5ELmRlLCExKTpVKGEsRi5ELmRlLCEwKTtWKGEsSC5KLkJrLCEwKTt2YXIgVz1WTSgpO1chPT12b2lkIDAmJlUoYSxGLkQua2csV3x8ImVycm9yIik7dmFyIGVhPUx0KCk7ZWEmJlUoYSxGLkQuS2UsZWEpO3ZhciBqYT1LdCgpO2phJiZVKGEsRi5ELk9lLGphKTtRKGEsSC5KLlBjKXx8VihhLEguSi5KYSwKITEpfX07CnZhciBYTT1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPyEwOmI7Yz1jPT09dm9pZCAwP3t9OmM7aWYoYS5ldmVudE5hbWU9PT1GLkQuSmImJiFhLk0uaXNHdG1FdmVudCl7dmFyIGQ9TyhhLk0sRi5ELlNmKTtpZih0eXBlb2YgZD09PSJmdW5jdGlvbiImJiFRKGEsSC5KLnNhKSl7dmFyIGU9U3RyaW5nKE8oYS5NLEYuRC5UZikpLGY9ZTtjW2VdJiYoZj1jW2VdKTt2YXIgZz1SKGEsZil8fE8oYS5NLGUpO2lmKGIpe2lmKHR5cGVvZiBkPT09ImZ1bmN0aW9uIilpZihlPT09Ri5ELmxiJiZnIT09dm9pZCAwKXt2YXIgaD1nLnNwbGl0KCIuIik7aC5sZW5ndGg9PT0wP2Qodm9pZCAwKTpoLmxlbmd0aD09PTE/ZChoWzBdKTpkKGgpfWVsc2UgaWYoZT09PUYuRC5xcSYmTSgyNTgpKXt2YXIgbCxuPXt9O1hvKGZwKSYmKG4uYXVpZD1SKGEsRi5ELkVkKSk7dmFyIHA9VU0oKTtpZihUTShwKSluLmdhZF9zb3VyY2U9cC5EZyxuLmdhZF9jYW1wYWlnbmlkPXAuVGgsbi5zZXNzaW9uX3N0YXJ0X3RpbWVfdXNlYz0KKERhdGUubm93KCkqMUUzKS50b1N0cmluZygpLG4ubGFuZGluZ19wYWdlX3VybD1BLmxvY2F0aW9uLmhyZWYsbi5sYW5kaW5nX3BhZ2VfcmVmZXJyZXI9Qi5yZWZlcnJlcixuLmxhbmRpbmdfcGFnZV91c2VyX2FnZW50PUhjLnVzZXJBZ2VudDtlbHNle3ZhciBxPVEoYSxILkouR2EpO24uZ2FkX3NvdXJjZT1ScyhxLnByZWZpeCkuRWd9bD1idG9hKEpTT04uc3RyaW5naWZ5KG4pKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0rJC8sIiIpO2QobCl9ZWxzZSBkKGcpfWVsc2UgZChnKX1hLmlzQWJvcnRlZD0hMH19O3ZhciBZTT1mdW5jdGlvbihhKXtpZihNKDQyNSkmJlEoYSxILkouRmMpKXtmb3IodmFyIGI9WyJfJmFwdmMiLCJ0aWRzIixGLkQuVGEsRi5ELlFpLEYuRC5VYixGLkQuUWUsRi5ELlZjLEYuRC5YY10sYz1tKGV1KGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtpZihlPT09Ri5ELnphKXt2YXIgZj1SKGEsZSk7ZiYmKGY9Zi5yZXBsYWNlKC9bXD8jXS4qJC8sIiIpKTtVKGEsZSxmKX1lbHNlIGIuaW5jbHVkZXMoZSl8fFUoYSxlKX1WKGEsSC5KLlhnKTtWKGEsSC5KLmhkKX19O2Z1bmN0aW9uIFpNKGEpe2lmKGZuLkspaWYod28uSD0hMCxhLmV2ZW50TmFtZT09PUYuRC53YSl6byhhLk0sYS50YXJnZXQuaWQpO2Vsc2V7UShhLEguSi5QYyl8fCh3by5LW2EudGFyZ2V0LmlkXT0hMCk7dmFyIGI9UShhLEguSi5OYik7WkIoYil9fTt2YXIgJE09ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZj1iPT09dm9pZCAwP3t9OmI7Yz1mLlNqPT09dm9pZCAwPyExOmYuU2o7ZD1mLk1qPT09dm9pZCAwPyExOmYuTWo7ZT1mLmtvPT09dm9pZCAwPyExOmYua287ZHx8KGEuTS5pc0d0bUV2ZW50P1EoYSxILkouZGEpIT09WC5WLnhhJiZhLmV2ZW50TmFtZSYmVShhLEYuRC5VYixhLmV2ZW50TmFtZSk6VShhLEYuRC5VYixhLmV2ZW50TmFtZSkpO0diKGEuTS5FYSxmdW5jdGlvbihnLGgpe016W2ddfHxjJiZCb1tnXXx8ZSYmT3pbZ118fFUoYSxnLGgpfSl9O3ZhciBhTj1mdW5jdGlvbihhKXtmb3IodmFyIGI9bShbRi5ELlBhLEYuRC5RYSxGLkQuZWIsRi5ELk5lLEYuRC5HZSxGLkQuVWQsRi5ELkllLEYuRC5UYyxGLkQuTGQsRi5ELmtoLEYuRC5GZixGLkQuRGYsRi5ELkVmLEYuRC5DZixGLkQud2ksRi5ELlNkLEYuRC5RZCxGLkQuUmQsRi5ELnRiXSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYS5jb3B5VG9IaXREYXRhKGMudmFsdWUpfTtmdW5jdGlvbiBiTihhLGIpe3JldHVybiBrcigiZ3NpZF9kYyIse3ZhbHVlOntqb2luSWQ6YSxsYXN0Sm9pbmVkVGltZU1zOmJ9LGV4cGlyZXM6YiszRTV9KT09PTA/ITA6ITF9Owp2YXIgY049ZnVuY3Rpb24oYSl7aWYoWG8oZnApKXt2YXIgYjthOnt2YXIgYz1ucigiZ3NpZF9kYyIpO2lmKGMuZXJyb3I9PT0wJiZjLnZhbHVlJiZ0eXBlb2YgYy52YWx1ZT09PSJvYmplY3QiKXt2YXIgZD1jLnZhbHVlO2lmKGQudmFsdWUmJnR5cGVvZiBkLnZhbHVlPT09Im9iamVjdCIpe3ZhciBlPWQudmFsdWU7aWYoZS5qb2luSWQmJmUubGFzdEpvaW5lZFRpbWVNcyYmdHlwZW9mIGUuam9pbklkPT09InN0cmluZyImJnR5cGVvZiBlLmxhc3RKb2luZWRUaW1lTXM9PT0ibnVtYmVyIil7Yj1lO2JyZWFrIGF9fX1iPXZvaWQgMH12YXIgZj1iLGc9Zj09bnVsbD92b2lkIDA6Zi5qb2luSWQsaD1OYigpO2lmKCFmfHwhZ3x8Zi5sYXN0Sm9pbmVkVGltZU1zPGgtM0U1KXt2YXIgbD1jYygpO2c9bCYmYk4obCxOYigpKT9sOnZvaWQgMDtnJiZWKGEsSC5KLmhkLCEwKX1lbHNlIGcmJmYubGFzdEpvaW5lZFRpbWVNczxoLTZFNCYmYk4oZi5qb2luSWQsaCkmJlYoYSxILkouaGQsITApO2cmJk0oNDc0KSYmClYoYSxILkouWGcsZyl9fTt2YXIgZE49ZnVuY3Rpb24oYSl7VihhLEguSi53ZixPKGEuTSxGLkQudWMpIT09ITEpO1YoYSxILkouR2EsTEsoYSkpO1YoYSxILkouWGUsTyhhLk0sRi5ELm1iKSE9bnVsbCYmTyhhLk0sRi5ELm1iKSE9PSExKTtWKGEsSC5KLndkLFN0KGEuTSkpfTt2YXIgZU49e3pxOntVdDoiY2QiLGZwOiJjZSIsVnQ6ImNmIixXdDoiY3BmIixYdDoiY3UifX07dmFyIGZOPWZ1bmN0aW9uKGEpe3ZhciBiPWVOLnpxLmZwLGM9TyhhLk0sRi5ELkNiKTtSKGEsRi5ELmVkKXx8VShhLEYuRC5lZCx7fSk7UihhLEYuRC5lZClbYl09Y307ZnVuY3Rpb24gZ04oYSxiKXtiPWI9PT12b2lkIDA/ITA6Yjt2YXIgYz13YihyYi5HVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTHx8W10pO2MmJihVKGEsRi5ELlZmLGMpLGImJnViKCkpfTt2YXIgaE49ZnVuY3Rpb24oYSl7dmFyIGI9YS5NLmdldE1lcmdlZFZhbHVlcyhGLkQuVGEpO2ImJmEubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSxiKX07dmFyIGlOPWZ1bmN0aW9uKGEpe3ZhciBiPU9wKCExKTtVKGEsRi5ELk1lLGIpfTt2YXIgak49ZnVuY3Rpb24oYSl7UShhLEguSi53ZCk/VShhLEYuRC5kZSwiMCIpOlUoYSxGLkQuZGUsIjEiKX07dmFyIGtOPWZ1bmN0aW9uKGEsYil7aWYoYj09PXZvaWQgMHx8Yil7dmFyIGM9Vk0oKTtjIT09dm9pZCAwJiZVKGEsRi5ELmtnLGN8fCJlcnJvciIpfXZhciBkPUx0KCk7ZCYmVShhLEYuRC5LZSxkKTt2YXIgZT1LdCgpO2UmJlUoYSxGLkQuT2UsZSl9O3ZhciBsTj1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5raiksYz1FKDUpO2ImJmJbY10mJmEubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSx7cmV0cnk6IjEifSl9O3ZhciBtTj1mdW5jdGlvbihhKXtVcSghMSkuX3VwPT09IjEiJiZVKGEsRi5ELktpLCIxIil9Owp2YXIgbk49ZnVuY3Rpb24oYSxiLGMpe2lmKGEhPT12b2lkIDApcmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YS5tYXAoZnVuY3Rpb24oKXtyZXR1cm57bW9kZToibSIsbG9jYXRpb246YixzZWxlY3RvcjpjfX0pOnttb2RlOiJtIixsb2NhdGlvbjpiLHNlbGVjdG9yOmN9fSxvTj1mdW5jdGlvbihhLGIsYyxkKXtpZighYylyZXR1cm4hMTtmb3IodmFyIGU9U3RyaW5nKGMudmFsdWUpLGYsZz12b2lkIDAsaD1lLnJlcGxhY2UoL1xbIj8nPy9nLCIuIikucmVwbGFjZSgvIj8nP1xdL2csIiIpLnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKHUpe3JldHVybiB1LnRyaW0oKX0pLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdSYmIVNiKHUsIiMiKSYmIVNiKHUsIi4iKX0pLGw9MDtsPGgubGVuZ3RoO2wrKyl7dmFyIG49aFtsXTtpZihTYihuLCJkYXRhTGF5ZXIuIikpZj11QShuLnN1YnN0cmluZygxMCkpLGc9bk4oZiwiZCIsbik7ZWxzZXt2YXIgcD1uLnNwbGl0KCIuIik7Zj1BW3Auc2hpZnQoKV07CmZvcih2YXIgcT0wO3E8cC5sZW5ndGg7cSsrKWY9ZiYmZltwW3FdXTtnPW5OKGYsImoiLG4pfWlmKGYhPT12b2lkIDApYnJlYWt9aWYoZj09PXZvaWQgMCl0cnl7dmFyIHI9Qi5xdWVyeVNlbGVjdG9yQWxsKGUpO2lmKHImJnIubGVuZ3RoPjApe2Y9W107Zm9yKHZhciB0PTA7dDxyLmxlbmd0aCYmdDwoYj09PSJlbWFpbCJ8fGI9PT0icGhvbmVfbnVtYmVyIj81OjEpO3QrKylmLnB1c2goZmQoclt0XSl8fExiKHJbdF0udmFsdWUpKTtmPWYubGVuZ3RoPT09MT9mWzBdOmY7Zz1uTihmLCJjIixlKX19Y2F0Y2godSl7UCgxNDkpfXJldHVybiBmPyhhW2JdPWYsZCYmZyYmKGRbYl09ZyksITApOiExfTsKdmFyIHBOPWZ1bmN0aW9uKGEpe2lmKGRJKGEsImNjZF9hZGRfMXBfZGF0YSIsITEpJiZYbyhmcCkpe3ZhciBiPWEuTS5pYltGLkQubG1dO2lmKENkKGIpJiZiLmVuYWJsZV9jb2RlKXt2YXIgYz1PKGEuTSxGLkQuQWMpO2lmKGM9PT1udWxsKVYoYSxILkouR24sbnVsbCk7ZWxzZSBpZihiLmVuYWJsZV9jb2RlJiZDZChjKSYmKFp2KGMpLFYoYSxILkouR24sYykpLENkKGIuc2VsZWN0b3JzKSl7dmFyIGQ9SC5KLmlyLGU7dmFyIGY9Yi5zZWxlY3RvcnMsZz1NKDUyMyk7Zz1nPT09dm9pZCAwPyExOmc7aWYoZil7dmFyIGg9e30sbD0hMSxuPXt9O2w9b04oaCwiZW1haWwiLGYuZW1haWwsbil8fGw7bD1vTihoLCJwaG9uZV9udW1iZXIiLGYucGhvbmUsbil8fGw7aC5hZGRyZXNzPVtdO2Zvcih2YXIgcD1mLm5hbWVfYW5kX2FkZHJlc3N8fFtdLHE9MDtxPHAubGVuZ3RoO3ErKyl7dmFyIHI9e30sdD17fTtsPW9OKHIsImZpcnN0X25hbWUiLHBbcV0uZmlyc3RfbmFtZSx0KXx8bDtsPW9OKHIsCiJsYXN0X25hbWUiLHBbcV0ubGFzdF9uYW1lLHQpfHxsO2w9b04ociwic3RyZWV0IixwW3FdLnN0cmVldCx0KXx8bDtsPW9OKHIsImNpdHkiLHBbcV0uY2l0eSx0KXx8bDtsPW9OKHIsInJlZ2lvbiIscFtxXS5yZWdpb24sdCl8fGw7bD1vTihyLCJjb3VudHJ5IixwW3FdLmNvdW50cnksdCl8fGw7bD1vTihyLCJwb3N0YWxfY29kZSIscFtxXS5wb3N0YWxfY29kZSx0KXx8bDtoLmFkZHJlc3MucHVzaChyKTtnJiYoci5fdGFnX21ldGFkYXRhPXQpfWcmJihoLl90YWdfbWV0YWRhdGE9bik7ZT1sP2g6dm9pZCAwfWVsc2UgZT12b2lkIDA7VihhLGQsZSl9fX19Owp2YXIgdU49ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5EaCk7cmV0dXJuIFhvKGZwKT9iP1EoYSxILkouWmkpP3tlbmRwb2ludDozLHFlOjMsYmY6WzExLDRdfTp7ZW5kcG9pbnQ6MyxxZToxfTpRKGEsSC5KLlppKT97ZW5kcG9pbnQ6MSxxZTo2LGJmOls1LDddfTp7ZW5kcG9pbnQ6MSxxZTo1fTp7ZW5kcG9pbnQ6MixxZTo4fX0seE49ZnVuY3Rpb24oYSxiLGMpe2lmKFEoYSxILkouZGEpPT09WC5WLkthKUd5KGEpO2Vsc2V7dmFyIGQ9dU4oYSk7dk4oYSxkLnFlLGZ1bmN0aW9uKGUpe3ZhciBmPVEoYSxILkouRWgpLGc9T2JqZWN0LmtleXMoZSkubWFwKGZ1bmN0aW9uKHYpe3JldHVybiB2KyI9IitlW3ZdfSksaD1mLnRhcmdldC5kZXN0aW5hdGlvbklkLGw9ZnVuY3Rpb24odil7TWwoe3RhcmdldElkOmgscmVxdWVzdDp7dXJsOnYscGFyYW1ldGVyRW5jb2Rpbmc6NCxlbmRwb2ludDpkLmVuZHBvaW50fSxxYjp7ZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSwKRmo6Yj09PXZvaWQgMD92b2lkIDA6e2V2ZW50SWQ6Yixwcmlvcml0eUlkOmN9fSk7dmFyIHg9di5zbGljZSgwLC0xKS5zcGxpdCgiOyIpO3hbMF0uaW5kZXhPZigiPSIpPDAmJnguc2hpZnQoKTt4WzBdPXhbMF0uc3BsaXQoIi8iKS5wb3AoKX0sbj17ZGVzdGluYXRpb25JZDpoLGVuZHBvaW50OmQuZW5kcG9pbnQsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxwPWZ1bmN0aW9uKHYseCx5KXtyZXR1cm4gdi5tYXAoZnVuY3Rpb24oeil7cmV0dXJuIFNiKHoseCsiPSIpP3grIj0iK3k6en0pfTtpZihkLmJmKXtnLnNwbGljZSgtMSwwLCJkY19yYW5kb209IitRKGEsSC5KLm9sKSk7dmFyIHE9IiIrd04oZC5xZSxhKStnLmpvaW4oIjsiKSsiPyIscj1nLnNsaWNlKCksdD1mdW5jdGlvbih2KXt2YXIgeDtpZighKHY+PSgoKHg9ZC5iZik9PW51bGw/dm9pZCAwOngubGVuZ3RoKXx8MCkpKXt2YXIgeT1kLmJmW3ZdLHo9cChyLCJkY19mbXQiLHkpLEM9IiIrCndOKHksYSkrei5qb2luKCI7IikrIj8iLEQ7YTpzd2l0Y2goeSl7Y2FzZSAxOmNhc2UgMjpEPTI7YnJlYWsgYTtjYXNlIDM6Y2FzZSA0OmNhc2UgNjpjYXNlIDc6RD0xO2JyZWFrIGE7ZGVmYXVsdDpEPTN9dmFyIEk9RDtJPT09MT9ZbihuLEMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe2woQyk7YS5NLm9uU3VjY2VzcygpfSxmdW5jdGlvbigpe3QodisxKX0pOkk9PT0zJiZYbihuLEMsZnVuY3Rpb24oKXtsKEMpO2EuTS5vblN1Y2Nlc3MoKX0sZnVuY3Rpb24oKXt0KHYrMSl9KX19O1luKG4scSx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7bChxKTthLk0ub25TdWNjZXNzKCl9LGZ1bmN0aW9uKCl7dCgwKX0pO2cuc3BsaWNlKC0xLDAsIl9kY190ZXN0PTEiKTtnPXAoZywiZGNfZm10IiwyKX12YXIgdT13TihkLnFlLGEpK2cuam9pbigiOyIpKyI/IjtkLmJmfHxsKHUpO1EoYSxILkouRGgpPyRuKG4sd04oMixhKStnLmpvaW4oIjsiKSsiPyIsYS5NLm9uU3VjY2Vzcyk6ZC5iZnx8WG4obiwKdSxhLk0ub25TdWNjZXNzLGEuTS5vbkZhaWx1cmUpfSl9fSx2Tj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W10sZT17fSxmPWZ1bmN0aW9uKFMsVyxlYSl7dmFyIGphPWVhP1N0cmluZyhXKTplbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKFcpKTtlW1NdPWphfSxnPUNkKFIoYSxGLkQuVWMpKT9SKGEsRi5ELlVjKTp7fSxoPVIoYSxGLkQucWgpO2ghPT12b2lkIDAmJmghPT0iIiYmZigic3JjIixoKTt2YXIgbD1SKGEsRi5ELklpKTtsIT09dm9pZCAwJiZsIT09IiImJmYoInR5cGUiLGwpO3ZhciBuPVIoYSxGLkQuSGkpO24hPT12b2lkIDAmJm4hPT0iIiYmZigiY2F0IixuKTtmb3IodmFyIHA9bShldShhKSkscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpe3ZhciByPXEudmFsdWUsdD1SKGEsciksdT15TltyXTtpZih1KXt2YXIgdj15Z1t1XT09PSEwO3Q9PT12b2lkIDB8fCF2JiZ0PT09IiJ8fGYodSx0KX1lbHNlIHU9PT12b2lkIDAmJihTYihyLCJfJiIpP2Yoci5zdWJzdHJpbmcoMiksCnQpOmYocix0KSl9ZigiZ3RtIixkdSh7bWM6UShhLEguSi5OYiksVGc6YS5NLmlzR3RtRXZlbnQsZWY6UShhLEguSi5DYyl9KSk7VHQoKSYmZigiZ2NzIixVdCgpKTtmKCJnY2QiLFl0KGEuTSkpO2F1KCkmJmYoImRtYV9jcHMiLFp0KCkpO3ZhciB4PWd0KGEsRi5ELkFpLEYuRC5CaSk7eCYmZigiZ2NsZGNfc3JjIix4KTtpZihNKDU2Mikpe3ZhciB5PWd0KGEsRi5ELkJkLEYuRC5DZCk7eSYmZigiZ2NsYXdfc3JjIix5KX1mKCJkbWEiLCR0KCkpO2YoImRjX2ZtdCIsYik7dnQoRXQoKSkmJmYoInRjZmQiLGJ1KCkpO3ZhciB6PUNwKGEpO3omJmYoInRhZ19leHAiLHopO3ZhciBDPXpOKGEpO0MmJmYoInByZCIsQywhMCk7ZigiZXB2ZXIiLCIyIik7Zm8uSFtjby5pYS5jYl0hPT1iby5NYS5VZXx8Zm8uS1tjby5pYS5jYl0uaXNDb25zZW50R3JhbnRlZCgpfHxmKCJsaW1pdGVkX2FkcyIsIjEiKTt2YXIgRD1SKGEsRi5ELnphKTtEJiZRKGEsSC5KLlllKSYmKEQ9WnMoU3RyaW5nKEQpKSk7R2IoZywKZnVuY3Rpb24oUyxXKXtpZihXIT1udWxsKWlmKFM9PT0ifm9yZWYiKUQ9VztlbHNle3ZhciBlYT1lbmNvZGVVUklDb21wb25lbnQoUyk7ZVtlYV0hPW51bGwmJlAoMTQxKTtmKGVhLFcpfX0pO3ZhciBJPVEoYSxILkouWWEpO2lmKEkmJlhvKEYuRC5tYSkpe00oNTY4KSYmIU0oNTg2KSYmUihhLEYuRC5CYyk9PT0iYSImJihJPWN3KEkpKTt2YXIgRz1zdyhJKTtHJiZkLnB1c2goRy50aGVuKGZ1bmN0aW9uKFMpe2YoImVtIixTLnBhcmFtKX0pKX1odChhLGUsZik7dmFyIE49ZnVuY3Rpb24oKXtEJiZmKCJ+b3JlZiIsRCk7YyhlKX07aWYoZC5sZW5ndGgpdHJ5e1Byb21pc2UuYWxsKGQpLnRoZW4oZnVuY3Rpb24oKXtOKCl9KTtyZXR1cm59Y2F0Y2goUyl7fU4oKTtGeSgzLGEuZXZlbnROYW1lKX0sd049ZnVuY3Rpb24oYSxiKXtzd2l0Y2goYSl7Y2FzZSAxOmNhc2UgMjp2YXIgYz17bHI6U3RyaW5nKFIoYixGLkQucWgpKX07cmV0dXJuIE1tWzNdKGMpO2Nhc2UgNDpjYXNlIDc6cmV0dXJuImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vZ21wL2NvbnZlcnNpb247IjsKY2FzZSA4OnJldHVybiBNbVsyXSh2b2lkIDApO2RlZmF1bHQ6cmV0dXJuIiIrTW1bMV0odm9pZCAwKX19LHpOPWZ1bmN0aW9uKGEpe3ZhciBiPVIoYSxGLkQuSGEpO2lmKCFBcnJheS5pc0FycmF5KGIpKXJldHVybiIiO2Zvcih2YXIgYz1bXSxkPWZ1bmN0aW9uKGwsbixwKXtwIT09dm9pZCAwJiZwIT09IiImJmMucHVzaCgiIitsK24rIjoiK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcocCkpKX0sZT0wO2U8Yi5sZW5ndGg7ZSsrKXt2YXIgZj1iW2VdLGc9Zi5pZDtmLml0ZW1faWQhPT12b2lkIDAmJihnPWYuaXRlbV9pZCxmLmlkIT09dm9pZCAwPyhQKDE1MCksZi5pZCE9PWYuaXRlbV9pZCYmUCgxNTEpKTpQKDE1MikpO2c9PT12b2lkIDAmJihnPWYuaXRlbV9uYW1lKTt2YXIgaD1lKzE7ZCgiaSIsaCxnKTtkKCJwIixoLGYucHJpY2UpO2QoInEiLGgsZltGLkQud2hdKTtkKCJjIixoLGZbRi5ELlRjXSk7ZCgibCIsaCxmW0YuRC50Yl0pO2QoImEiLGgsZi5hY2NvdW50SWQpfXJldHVybiBjLmpvaW4oInwiKX0sCkFOPXt9LHlOPShBTltGLkQuc2FdPSJnY3UiLEFOW0YuRC5TYl09ImdjbGdiIixBTltGLkQubGJdPSJnY2xhdyIsQU5bRi5ELkJlXT0iZ2NsZ3MiLEFOW0YuRC5DZV09ImdjbGxwIixBTltGLkQuRGVdPSJnY2xzdCIsQU5bRi5ELkVkXT0iYXVpZGRjIixBTltGLkQuRmVdPSJwcyIsQU5bRi5ELmpoXT0icHNjZGwiLEFOW0YuRC5OZl09ImdjbGRjIixBTltGLkQuVmNdPSJlZGlkIixBTltGLkQuTWRdPSJldm5pZCIsQU5bRi5ELk5kXT0iZXhjaWQiLEFOW0YuRC5KaV09Im1hdGNoX2lkIixBTltGLkQuSmxdPSJudW0iLEFOW0YuRC5LbF09InRyYW4iLEFOW0YuRC5MbF09InUiLEFOW0YuRC5yaF09ImdhYyIsQU5bRi5ELkplXT0iZ2FjZ2IiLEFOW0YuRC5LZV09ImdkcHIiLEFOW0YuRC5YY109ImdkaWQiLEFOW0YuRC5MZV09Il9uZyIsQU5bRi5ELnRoXT0iZ3BwX3NpZCIsQU5bRi5ELnVoXT0iZ3BwIixBTltGLkQuVmZdPSJfdHUiLEFOW0YuRC5NZV09ImZybSIsQU5bRi5ELktpXT0iZ3RtX3VwIiwKQU5bRi5ELlFkXT0iZmNudHIiLEFOW0YuRC5SZF09ImZsbmciLEFOW0YuRC5TZF09Im1pZCIsQU5bRi5ELndoXT0icXR5IixBTltGLkQuT2VdPSJnZHByX2NvbnNlbnQiLEFOW0YuRC5QYV09Im9yZCIsQU5bRi5ELmNnXT0idWFhIixBTltGLkQuZGddPSJ1YWIiLEFOW0YuRC5lZ109InVhZnZsIixBTltGLkQuZmddPSJ1YW1iIixBTltGLkQuZ2ddPSJ1YW0iLEFOW0YuRC5oZ109InVhcCIsQU5bRi5ELmlnXT0idWFwdiIsQU5bRi5ELmpnXT0idWF3IixBTltGLkQuUWFdPSJjb3N0IixBTltGLkQuZGVdPSJucGEiLEFOW0YuRC5xaF09bnVsbCxBTltGLkQuSWldPW51bGwsQU5bRi5ELkhpXT1udWxsLEFOW0YuRC56YV09bnVsbCxBTltGLkQuQmRdPW51bGwsQU5bRi5ELkNkXT1udWxsLEFOW0YuRC5BaV09bnVsbCxBTltGLkQuQmldPW51bGwsQU5bRi5ELlVjXT1udWxsLEFOW0YuRC5IYV09bnVsbCxBTltGLkQuVGFdPW51bGwsQU4pO3ZhciBDTj1mdW5jdGlvbihhKXt2YXIgYj1iQyhhKTtpZihiJiYoYi5pZHMubGVuZ3RoPT09MXx8Yi5pZHMubGVuZ3RoPT09Mykpe3ZhciBjPWIuaWRzW2RDWzRdXXx8IiIsZD1iLmlkc1tkQ1syXV0sZT0iIixmPSJ1bmtub3duIjtpZihkKXt2YXIgZz1kLnNwbGl0KCIrIik7aWYoZy5sZW5ndGghPT0yKXJldHVybjtlPWdbMF07Zj1CTltnWzFdLnRvTG93ZXJDYXNlKCldfWlmKGYpcmV0dXJue3RhcmdldDpiLEtuOmMsTG46ZSxEcjpmfX19LEJOPXsiIjoidW5rbm93biIsc3RhbmRhcmQ6InN0YW5kYXJkIix1bmlxdWU6InVuaXF1ZSIscGVyX3Nlc3Npb246InBlcl9zZXNzaW9uIix0cmFuc2FjdGlvbnM6InRyYW5zYWN0aW9ucyIsaXRlbXNfc29sZDoiaXRlbXNfc29sZCJ9Owp2YXIgRE49ZnVuY3Rpb24oYSl7dmFyIGI9Y2MoKTtWKGEsSC5KLm9sLE1hdGguZmxvb3IoTmIoKS8xRTMpKyJfIitiKX0sRU49ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihiJiZiLmxlbmd0aCl7Zm9yKHZhciBmPVtdLGc9W10saD1bXSxsPW0oYiksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7Zi5wdXNoKHAuZ2NsaWQpO3ZhciBxPXZvaWQgMCxyPXZvaWQgMDtnLnB1c2goKHI9KHE9cC5xYSk9PW51bGw/dm9pZCAwOnEuZ2V0KCkpIT1udWxsP3I6MCk7aC5wdXNoKFZzKHAub2F8fFswXSkpfWlmKGYubGVuZ3RoKXJldHVybiBVKGEsYyxmLmpvaW4oIi4iKSksVShhLGQsZy5qb2luKCIuIikpLFUoYSxlLGguam9pbigiLiIpKSwhMH1yZXR1cm4hMX0sSU49ZnVuY3Rpb24oYSxiLGMsZCl7ZnVuY3Rpb24gZSh6LEMpe2Zvcih2YXIgRD1tKHApLEk9RC5uZXh0KCk7IUkuZG9uZTtJPUQubmV4dCgpKXt2YXIgRz1JLnZhbHVlO2lmKCFRKEcsSC5KLnNhKXx8UShHLApILkouZGEpPT09WC5WLkthfHxYbyhmcCkpaWYoIVEoRyxILkouc2EpfHxRKEcsSC5KLmRhKSE9PVguVi5LYXx8UShHLEguSi52ZCkpe2Zvcih2YXIgTj1RKEcsSC5KLmRhKT09PVguVi5LYT9GTjpHTixTPW0oTiksVz1TLm5leHQoKTshVy5kb25lO1c9Uy5uZXh0KCkpe3ZhciBlYT1XLnZhbHVlO2VhKEcpO2lmKEcuaXNBYm9ydGVkKWJyZWFrfVEoRyxILkouSmEpfHxHLmlzQWJvcnRlZHx8KHhOKEcseixDKSxRKEcsSC5KLmRhKT09PVguVi5LYSYmUShHLEguSi52ZCkmJk1LKEcsZnVuY3Rpb24oKXtlKHosQyl9KSl9fX12YXIgZj1DTihhKTtpZihmKXt2YXIgZz1uZXcgYUkoZi50YXJnZXQsYixkKTtWKGcsSC5KLkVoLGYpO1YoZyxILkouRWIsTmIoKSk7Zm9yKHZhciBoPW0oSE4pLGw9aC5uZXh0KCk7IWwuZG9uZTtsPWgubmV4dCgpKXt2YXIgbj1sLnZhbHVlO24oZyk7aWYoZy5pc0Fib3J0ZWQpcmV0dXJufXZhciBwPVtdLHE9ZC5ldmVudE1ldGFkYXRhW0guSi5EY107aWYocSl7QXJyYXkuaXNBcnJheShxKXx8CihxPVtxXSk7Zm9yKHZhciByPW0ocSksdD1yLm5leHQoKTshdC5kb25lO3Q9ci5uZXh0KCkpe3ZhciB1PXQudmFsdWUsdj1adShnKTtWKHYsSC5KLmRhLHUpO3AucHVzaCh2KX19aWYocC5sZW5ndGg9PT0wKXt2YXIgeD1adShnKTtWKHgsSC5KLmRhLFguVi53cSk7cC5wdXNoKHgpO2lmKGIhPT1GLkQuSmIpe3ZhciB5PVp1KGcpO1YoeSxILkouZGEsWC5WLkthKTtWKHksSC5KLkphLCEwKTtwLnB1c2goeSl9fWJwKGZ1bmN0aW9uKCl7ZSgpO1hvKGZwKXx8YXAoZnVuY3Rpb24oeil7dmFyIEMsRDtDPXouY29uc2VudEV2ZW50SWQ7RD16LmNvbnNlbnRQcmlvcml0eUlkO2Zvcih2YXIgST1tKHApLEc9SS5uZXh0KCk7IUcuZG9uZTtHPUkubmV4dCgpKXt2YXIgTj1HLnZhbHVlO1YoTixILkouc2EsITApO1YoTixILkouRWIsTmIoKSk7VihOLEguSi51ZixDKTtWKE4sSC5KLnZmLEQpfWUoQyxEKX0sZnApfSxmcCl9ZWxzZSBiZChkLm9uRmFpbHVyZSl9LEhOPVtITSxKTSxJTSxNRixQRl0sR049CltaTSxkTixmdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLkVoKTtWKGEsSC5KLlVpLGIuRHIpO1UoYSxGLkQucWgsYi50YXJnZXQuaWRzW2RDWzNdXSk7VShhLEYuRC5JaSxiLktuKTtVKGEsRi5ELkhpLGIuTG4pO1YoYSxILkouRWIsTmIoKSk7dmFyIGM9TyhhLk0sRi5ELnJpKSE9PSEwPyExOk0oNTQwKT9iZygiYWxsb3dfY3VzdG9tX3NjcmlwdHMiLEUoNSkpOiEwLGQ9WG8oZnApO1YoYSxILkouRGgsYyYmZCk7VihhLEguSi5ZZSxRKGEsSC5KLlhlKSYmIWQpOyhNKDE1OCl8fE0oNTI0KSkmJlYoYSxILkouWmksITApO00oNTA0KSYmKGEuY29weVRvSGl0RGF0YShGLkQuTmQpLGEuY29weVRvSGl0RGF0YShGLkQuTWQpKX0sZnVuY3Rpb24oYSl7aWYoIVEoYSxILkouc2EpKXt2YXIgYj1hLk0uaXNHdG1FdmVudD9PKGEuTSwib3JlZiIpOk9qKFJqKEEubG9jYXRpb24uaHJlZikpO1UoYSxGLkQuemEsYil9fSxmdW5jdGlvbihhKXthLmV2ZW50TmFtZSE9PUYuRC53YXx8YS5NLmlzR3RtRXZlbnR8fAooYS5pc0Fib3J0ZWQ9ITApfSxmdW5jdGlvbihhKXt2YXIgYj17fSxjPU8oYS5NLEYuRC5VYyk7Q2QoYykmJkdiKGMsZnVuY3Rpb24oZCxlKXtlIT1udWxsJiYoYltkXT1lKX0pO1UoYSxGLkQuVWMsYil9LGZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouVWkpO3NiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsRXVbYl0pO3N3aXRjaChiKXtjYXNlICJzdGFuZGFyZCI6VShhLEYuRC5QYSxEYigxRTExLDFFMTMpKTtzYigiR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUwiLFQuVy5GaCk7cmV0dXJuO2Nhc2UgInVuaXF1ZSI6VShhLEYuRC5QYSwiMSIpO1UoYSxGLkQuSmwsRGIoMUUxMSwxRTEzKSk7c2IoIkdUQUdfRVZFTlRfRkVBVFVSRV9DSEFOTkVMIixULlcuRmgpO3JldHVybjtjYXNlICJwZXJfc2Vzc2lvbiI6dmFyIGM9TyhhLk0sRi5ELnhjKTtVKGEsRi5ELlBhLGMpO3JldHVybn12YXIgZD1iPT09InRyYW5zYWN0aW9ucyI/IjEiOk8oYS5NLEYuRC53aCk7VShhLEYuRC53aCwKZCk7YS5jb3B5VG9IaXREYXRhKEYuRC5RYSk7YS5jb3B5VG9IaXREYXRhKEYuRC5QYSl9LGZ1bmN0aW9uKGEpe2EuTS5pc0d0bUV2ZW50JiYoYS5jb3B5VG9IaXREYXRhKEYuRC5MbCksYS5jb3B5VG9IaXREYXRhKEYuRC5LbCksYS5jb3B5VG9IaXREYXRhKEYuRC5KaSkpfSxmdW5jdGlvbihhKXtRKGEsSC5KLnNhKSYmVShhLEYuRC5zYSwiMSIpfSxmdW5jdGlvbihhKXtrTihhLCExKX0sbU4sak4sUE0sZnVuY3Rpb24oYSl7aWYoUShhLEguSi53Zikpe3ZhciBiPVEoYSxILkouR2EpLGM9UShhLEguSi5YZSksZD0hMTtpZihNKDQ4MSkpe3ZhciBlPWV0KCJkYyIsYi5wcmVmaXgsYyk7ZD1FTihhLGUsRi5ELk5mLEYuRC5BaSxGLkQuQmkpfWVsc2V7dmFyIGY9ZnQoImRjIixiLnByZWZpeCxjKTtmJiZmLmxlbmd0aCYmKFUoYSxGLkQuTmYsZi5qb2luKCIuIikpLGQ9ITApfWlmKFhvKEYuRC5rYSkpe3ZhciBnPUhyKGIucHJlZml4KSxoPVJzKGcpO1UoYSxGLkQuQmUsaC5FZyk7VShhLEYuRC5EZSwKaC5XaCk7VShhLEYuRC5DZSxoLlVoKX1pZihRKGEsSC5KLkRoKSl7dmFyIGw9SHIoYi5wcmVmaXgpIT09Il9nY2wiLG47aWYoIShuPWQpKXt2YXIgcD1iLnByZWZpeDtuPSEoVGooImdjbGF3Iil8fFRqKCJnYWMiKXx8KGVzKCkuYXd8fFtdKS5sZW5ndGg+MD8wOihlcygpLmdifHxbXSkubGVuZ3RoPjB8fGVzKCkuZ2JyYWlkIT09dm9pZCAwfHxJcyhwKSl9aWYobil7aWYoTSg1NjEpKXt2YXIgcT1ldCgiYXciLGIucHJlZml4LGMpO0VOKGEscSxGLkQubGIsRi5ELkJkLEYuRC5DZCkmJlAoNTkpfWVsc2V7dmFyIHI9ZnQoImF3IixiLnByZWZpeCxjKTtyJiZyLmxlbmd0aCYmKFUoYSxGLkQubGIsci5qb2luKCIuIikpLFAoNTkpKX12YXIgdCx1PVRqKCJnYWMiKTsodD11PyFYbyhmcCkmJmM/IjAiOktqKHUpfHwiIjpjdChCcihBcigpKT9ScCgpOnt9KSkmJihsfHxVKGEsRi5ELnJoLHQpKX1lbHNle3ZhciB2O2E6e3ZhciB4PWIucHJlZml4LHk9VGooImdjbGdiIik7aWYoeSl2PXkuc3BsaXQoIi4iKTsKZWxzZXt2YXIgej1Icih4KTtpZih6PT09Il9nY2wiKXt2YXIgQz0hWG8oZnApJiZjLEQ9ZXMoKSxJPVtdO0Qud2JyYWlkJiZJLnB1c2goRC53YnJhaWQpO0QuZ2JyYWlkJiZJLnB1c2goRC5nYnJhaWQpO2lmKEkubGVuZ3RoPjApe3Y9Qz9bIjAiXTpJO2JyZWFrIGF9fXY9RnIoe3ByZWZpeDp6fSl9fXZhciBHPXY7Ry5sZW5ndGgmJlUoYSxGLkQuU2IsRy5qb2luKCIuIikpO2lmKCFsKXt2YXIgTixTPVRqKCJnYWNnYiIpOyhOPVM/IVhvKGZwKSYmYz8iMCI6S2ooUyl8fCIiOmN0KEJyKEFyKCkpP1JwKCJfZ2FjX2diIiwhMCk6e30pKSYmVShhLEYuRC5KZSxOKX19fX19LGZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouVWkpO2lmKGI9PT0idHJhbnNhY3Rpb25zInx8Yj09PSJpdGVtc19zb2xkIil7dmFyIGM9TyhhLk0sRi5ELkhhKTtpZihBcnJheS5pc0FycmF5KGMpKXtpZighYS5NLmlzR3RtRXZlbnQpZm9yKHZhciBkPU8oYS5NLEYuRC5UYyksZT1PKGEuTSxGLkQudGIpLGY9bShjKSxnPQpmLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7Q2QoaCkmJihoW0YuRC5UY109ZCxoW0YuRC50Yl09ZSxoLmFjY291bnRJZD12b2lkIDApfVUoYSxGLkQuSGEsYyl9fX0sZnVuY3Rpb24oYSl7YS5jb3B5VG9IaXREYXRhKEYuRC5TZCk7YS5jb3B5VG9IaXREYXRhKEYuRC5RZCk7YS5jb3B5VG9IaXREYXRhKEYuRC5SZCl9LGZ1bmN0aW9uKGEpe3ZhciBiPU8oYS5NLEYuRC5IZSksYz17fTtDZChiKSYmR2IoYixmdW5jdGlvbihnLGgpe3piKGgpJiZKTi50ZXN0KGcpJiYoY1tnXT1oKX0pO2Zvcih2YXIgZD13QyhhLk0pLGU9MDtlPGQubGVuZ3RoO2UrKyl7dmFyIGY9ZFtlXTtKTi50ZXN0KGYpJiYoY1tmXT1mKX1HYihjLGZ1bmN0aW9uKGcsaCl7VShhLGcsTyhhLk0saCkpfSl9LFVMLGZ1bmN0aW9uKGEpe3ZhciBiPXt9O1hNKGEsITAsKGJbRi5ELmxiXT1GLkQuTmYsYikpfSxHTSxwTixTTCxsTixpTixYTCxETixOTSxnTixXTF0sRk49W2Z1bmN0aW9uKGEpe2EuZXZlbnROYW1lIT09CkYuRC5zYyYmUShhLEguSi5QYykmJihhLmlzQWJvcnRlZD0hMCk7dmFyIGI9UShhLEguSi5FaCk7YiYmYi5MbiYmYi5LbiYmKGEuaXNBYm9ydGVkPSEwKX0saU4sY04sV00sZnVuY3Rpb24oYSl7JE0oYSx7U2o6ITAsTWo6ITAsa286ITB9KX0sYU4sVUwsWEwsbE4sWk0sRE4sTk0sZnVuY3Rpb24oYSl7Z04oYSwhMSl9LFdMXSxKTj0vXnUoWzEtOV1cZD98MTAwKSQvO2Z1bmN0aW9uIEZPKGEsYixjLGQpe31GTy5QPSJpbnRlcm5hbC5leGVjdXRlRXZlbnRQcm9jZXNzb3IiO2Z1bmN0aW9uIEdPKGEpe3ZhciBiO3JldHVybiBVZChiLHRoaXMuVCwxKX1HTy5QPSJpbnRlcm5hbC5leGVjdXRlSmF2YXNjcmlwdFN0cmluZyI7ZnVuY3Rpb24gSE8oYSl7dmFyIGI7cmV0dXJuIGJ9O2Z1bmN0aW9uIElPKGEpe3ZhciBiPSIiO3JldHVybiBifUlPLlA9ImludGVybmFsLmdlbmVyYXRlQ2xpZW50SWQiO2Z1bmN0aW9uIEpPKGEpe3ZhciBiPXt9O3JldHVybiBVZChiKX1KTy5QPSJpbnRlcm5hbC5nZXRBZHNDb29raWVXcml0aW5nT3B0aW9ucyI7ZnVuY3Rpb24gS08oYSxiKXt2YXIgYz0hMTtyZXR1cm4gY31LTy5QPSJpbnRlcm5hbC5nZXRBbGxvd0FkUGVyc29uYWxpemF0aW9uIjtmdW5jdGlvbiBMTygpe3ZhciBhO3JldHVybiBhfUxPLlA9ImludGVybmFsLmdldEFuZFJlc2V0RXZlbnRVc2FnZSI7ZnVuY3Rpb24gTU8oYSxiKXtiPWI9PT12b2lkIDA/ITA6Yjt2YXIgYztyZXR1cm4gY31NTy5QPSJpbnRlcm5hbC5nZXRBdWlkIjtmdW5jdGlvbiBOTygpe3ZhciBhPVtdO3JldHVybiBVZChhKX1OTy5QPSJpbnRlcm5hbC5nZXRDb250YWluZXJJZHMiO2Z1bmN0aW9uIE9PKCl7dmFyIGE9bmV3IGtiO3JldHVybiBhfU9PLnB1YmxpY05hbWU9ImdldENvbnRhaW5lclZlcnNpb24iO2Z1bmN0aW9uIFBPKGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM7cmV0dXJuIGN9UE8ucHVibGljTmFtZT0iZ2V0Q29va2llVmFsdWVzIjtmdW5jdGlvbiBRTygpe3ZhciBhPSIiO3JldHVybiBhfVFPLlA9ImludGVybmFsLmdldENvcmVQbGF0Zm9ybVNlcnZpY2VzUGFyYW0iO2Z1bmN0aW9uIFJPKCl7cmV0dXJuIHltKCl9Uk8uUD0iaW50ZXJuYWwuZ2V0Q291bnRyeUNvZGUiO2Z1bmN0aW9uIFNPKCl7dmFyIGE9W107YT10aygpO3JldHVybiBVZChhKX1TTy5QPSJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyI7ZnVuY3Rpb24gVE8oYSl7dmFyIGI9bmV3IGtiO3JldHVybiBifVRPLlA9ImludGVybmFsLmdldERldmVsb3BlcklkcyI7ZnVuY3Rpb24gVU8oYSl7dmFyIGI7cmV0dXJuIGJ9VU8uUD0iaW50ZXJuYWwuZ2V0RWNzaWRDb29raWVWYWx1ZSI7ZnVuY3Rpb24gVk8oYSxiKXt2YXIgYz1udWxsO3JldHVybiBjfVZPLlA9ImludGVybmFsLmdldEVsZW1lbnRBdHRyaWJ1dGUiO2Z1bmN0aW9uIFdPKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9V08uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudEJ5SWQiO2Z1bmN0aW9uIFhPKGEpe3ZhciBiPSIiO3JldHVybiBifVhPLlA9ImludGVybmFsLmdldEVsZW1lbnRJbm5lclRleHQiO2Z1bmN0aW9uIFlPKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9WU8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFBhcmVudCI7ZnVuY3Rpb24gWk8oYSl7dmFyIGI9bnVsbDtyZXR1cm4gYn1aTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50UHJldmlvdXNTaWJsaW5nIjtmdW5jdGlvbiAkTyhhLGIpe3ZhciBjPW51bGw7cmV0dXJuIFVkKGMpfSRPLlA9ImludGVybmFsLmdldEVsZW1lbnRQcm9wZXJ0eSI7ZnVuY3Rpb24gYVAoYSl7dmFyIGI7cmV0dXJuIGJ9YVAuUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFZhbHVlIjtmdW5jdGlvbiBiUChhKXt2YXIgYj0wO3JldHVybiBifWJQLlA9ImludGVybmFsLmdldEVsZW1lbnRWaXNpYmlsaXR5UmF0aW8iO2Z1bmN0aW9uIGNQKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9Y1AuUD0iaW50ZXJuYWwuZ2V0RWxlbWVudHNCeUNzc1NlbGVjdG9yIjsKZnVuY3Rpb24gZFAoYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO0wodGhpcywicmVhZF9ldmVudF9kYXRhIixhKTt2YXIgYzthOnt2YXIgZD1hLGU9WEYodGhpcykub3JpZ2luYWxFdmVudERhdGE7aWYoZSl7Zm9yKHZhciBmPWUsZz17fSxoPXt9LGw9e30sbj1bXSxwPWQuc3BsaXQoIlxcXFwiKSxxPTA7cTxwLmxlbmd0aDtxKyspe2Zvcih2YXIgcj1wW3FdLnNwbGl0KCJcXC4iKSx0PTA7dDxyLmxlbmd0aDt0Kyspe2Zvcih2YXIgdT1yW3RdLnNwbGl0KCIuIiksdj0wO3Y8dS5sZW5ndGg7disrKW4ucHVzaCh1W3ZdKSx2IT09dS5sZW5ndGgtMSYmbi5wdXNoKGwpO3QhPT1yLmxlbmd0aC0xJiZuLnB1c2goaCl9cSE9PXAubGVuZ3RoLTEmJm4ucHVzaChnKX1mb3IodmFyIHg9W10seT0iIix6PW0obiksQz16Lm5leHQoKTshQy5kb25lO0M9CnoubmV4dCgpKXt2YXIgRD1DLnZhbHVlO0Q9PT1sPyh4LnB1c2goeSkseT0iIik6eT1EPT09Zz95KyJcXCI6RD09PWg/eSsiLiI6eStEfXkmJngucHVzaCh5KTtmb3IodmFyIEk9bSh4KSxHPUkubmV4dCgpOyFHLmRvbmU7Rz1JLm5leHQoKSl7aWYoZj09bnVsbCl7Yz12b2lkIDA7YnJlYWsgYX1mPWZbRy52YWx1ZV19Yz1mfWVsc2UgYz12b2lkIDB9Yj1VZChjLHRoaXMuVCwxKTtyZXR1cm4gYn1kUC5QPSJpbnRlcm5hbC5nZXRFdmVudERhdGEiO2Z1bmN0aW9uIGVQKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9ZVAuUD0iaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciI7ZnVuY3Rpb24gZlAoKXt2YXIgYTtyZXR1cm4gYX1mUC5QPSJpbnRlcm5hbC5nZXRHc2FFeHBlcmltZW50SWQiO2Z1bmN0aW9uIGdQKCl7cmV0dXJuIG5ldyBQZChQayl9Z1AuUD0iaW50ZXJuYWwuZ2V0SHRtbElkIjtmdW5jdGlvbiBoUCgpe3ZhciBhO3JldHVybiBhfWhQLlA9ImludGVybmFsLmdldElmcmFtaW5nU3RhdGUiO2Z1bmN0aW9uIGlQKGEsYil7dmFyIGM9e307cmV0dXJuIFVkKGMpfWlQLlA9ImludGVybmFsLmdldExpbmtlclZhbHVlRnJvbUxvY2F0aW9uIjtmdW5jdGlvbiBqUCgpe3ZhciBhPW5ldyBrYjtpZihhcmd1bWVudHMubGVuZ3RoIT09MCl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFtdLGFyZ3VtZW50cyk7dmFyIGI9Vk0oKTtiIT09dm9pZCAwJiZhLnNldChGLkQua2csYnx8ImVycm9yIik7dmFyIGM9THQoKTtjJiZhLnNldChGLkQuS2UsYyk7dmFyIGQ9S3QoKTtkJiZhLnNldChGLkQuT2UsZCk7dmFyIGU9a0YuZ3BwU3RyaW5nO2UmJmEuc2V0KEYuRC51aCxlKTt2YXIgZj1rRi5IO2YmJmEuc2V0KEYuRC50aCxmKTtyZXR1cm4gYX1qUC5QPSJpbnRlcm5hbC5nZXRQcml2YWN5U3RyaW5ncyI7ZnVuY3Rpb24ga1AoYSxiKXt2YXIgYztyZXR1cm4gY31rUC5QPSJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiO2Z1bmN0aW9uIGxQKGEsYil7dmFyIGM7cmV0dXJuIGN9bFAucHVibGljTmFtZT0iZ2V0UXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBtUChhLGIpe3ZhciBjO3JldHVybiBjfW1QLnB1YmxpY05hbWU9ImdldFJlZmVycmVyUXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBuUChhKXt2YXIgYj0iIjtyZXR1cm4gYn1uUC5wdWJsaWNOYW1lPSJnZXRSZWZlcnJlclVybCI7ZnVuY3Rpb24gb1AoKXtyZXR1cm4gem0oKX1vUC5QPSJpbnRlcm5hbC5nZXRSZWdpb25Db2RlIjtmdW5jdGlvbiBwUChhLGIpe3ZhciBjO3JldHVybiBjfXBQLlA9ImludGVybmFsLmdldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gcVAoYSxiKXt2YXIgYz1udWxsOwpyZXR1cm4gY31xUC5QPSJpbnRlcm5hbC5nZXRTY29wZWRFbGVtZW50c0J5Q3NzU2VsZWN0b3IiO2Z1bmN0aW9uIHJQKCl7dmFyIGE9bmV3IGtiO2Euc2V0KCJ3aWR0aCIsMCk7YS5zZXQoImhlaWdodCIsMCk7cmV0dXJuIGF9clAuUD0iaW50ZXJuYWwuZ2V0U2NyZWVuRGltZW5zaW9ucyI7ZnVuY3Rpb24gc1AoKXt2YXIgYT0iIjtyZXR1cm4gYX1zUC5QPSJpbnRlcm5hbC5nZXRUb3BTYW1lRG9tYWluVXJsIjtmdW5jdGlvbiB0UCgpe3ZhciBhPSIiO3JldHVybiBhfXRQLlA9ImludGVybmFsLmdldFRvcFdpbmRvd1VybCI7ZnVuY3Rpb24gdVAoYSl7dmFyIGI9IiI7cmV0dXJuIGJ9dVAucHVibGljTmFtZT0iZ2V0VXJsIjtmdW5jdGlvbiB2UCgpe0wodGhpcywiZ2V0X3VzZXJfYWdlbnQiKTtyZXR1cm4gSGMudXNlckFnZW50fXZQLnB1YmxpY05hbWU9ImdldFVzZXJBZ2VudCI7dlAuUD0iaW50ZXJuYWwuZ2V0VXNlckFnZW50IjtmdW5jdGlvbiB3UCgpe3ZhciBhO3JldHVybiBhP1VkKEVNKGEpKTphfXdQLlA9ImludGVybmFsLmdldFVzZXJBZ2VudENsaWVudEhpbnRzIjtmdW5jdGlvbiB6UCgpe3ZhciBhPUE7cmV0dXJuIGEuZ2FHbG9iYWw9YS5nYUdsb2JhbHx8e319ZnVuY3Rpb24gQVAoYSxiKXt2YXIgYz16UCgpO2lmKGMudmlkPT09dm9pZCAwfHxiJiYhYy5mcm9tX2Nvb2tpZSljLnZpZD1hLGMuZnJvbV9jb29raWU9Yn07ZnVuY3Rpb24gYlEoYSl7KGJrKFpLKGEpKXx8V2ooKSkmJlUoYSxGLkQub20sem0oKXx8eW0oKSk7IWJrKFpLKGEpKSYmV2ooKSYmVShhLEYuRC5ZaSwiOjoiKX1mdW5jdGlvbiBjUShhKXtXaigpJiYoYmsoWksoYSkpfHxEbSgpfHxVKGEsRi5ELlNsLCEwKSl9O2Z1bmN0aW9uIGhRKGEsYixjLGQpe3ZhciBlO2lmKChuZCgpfHxrZCgpKSYmWGooKSYmWGooKSE9PSIvIil7dmFyIGY9UmooYSk7ZT1JZig1MCkmJmQmJlRiKGYucGF0aG5hbWUsIi9nL2NvbGxlY3QiKT8yOihkfHwhV2ooKXx8RG0oKT8wOlRiKGYucGF0aG5hbWUsIi9nYS9nL2MiKXx8VGIoZi5wYXRobmFtZSwiL2FnL2cvYyIpKT8xOjB9ZWxzZSBlPTA7c3dpdGNoKGUpe2Nhc2UgMjp2YXIgZztpZihNKDU0Nikpe3ZhciBoPVRiKGEsIi9nL2NvbGxlY3QiKT9hLnN1YnN0cmluZygwLGEubGVuZ3RoLTEwKTphLGw9aVEoKSxuPWgrbCxwPWpRKCIvZy9jb2xsZWN0IixiLGMpO2c9e0ljOm4sa2Y6IiIsYm9keTpwfX1lbHNlIGc9e0ljOmEsa2Y6Yixib2R5OmN9O3JldHVybiBnO2Nhc2UgMTp2YXIgcTtpZihNKDU0Nykpe3ZhciByPWlRKCksdD1hLmluZGV4T2YociksdT1hLnN1YnN0cmluZygwLHQpK3Isdj1qUShhLnN1YnN0cmluZyh0K3IubGVuZ3RoLTEpLGIsYyk7cT17SWM6dSxrZjoiIiwKYm9keTp2fX1lbHNlIHE9e0ljOmEsa2Y6Yixib2R5OmN9O3JldHVybiBxO2RlZmF1bHQ6cmV0dXJue0ljOmEsa2Y6Yixib2R5OmN9fX1mdW5jdGlvbiBpUSgpe3ZhciBhPVhqKCk7aWYoIWEpcmV0dXJuIiI7U2IoYSwiLyIpfHwoYT0iLyIrYSk7VGIoYSwiLyIpfHwoYSs9Ii8iKTtyZXR1cm4gYX1mdW5jdGlvbiBqUShhLGIsYyl7dmFyIGQ9W2FdO2ImJmQucHVzaCgiPyIsYik7YyYmZC5wdXNoKCJcclxuIixjKTtyZXR1cm4gZC5qb2luKCIiKX07ZnVuY3Rpb24gc1IoYSl7YS5jb3B5VG9IaXREYXRhKEYuRC5mYik7dmFyIGI9TyhhLk0sRi5ELldkKTtiJiYoS0MoYixmdW5jdGlvbigpe30pLFUoYSxGLkQuV2QsYikpfTtmdW5jdGlvbiB2UihhKXt2YXIgYj1mdW5jdGlvbihjKXtyZXR1cm4hIWMmJmMuY29udmVyc2lvbn07VihhLEguSi5tZyxiKFhLKGEpKSk7UShhLEguSi5uZykmJlYoYSxILkouWW0sYihYSyhhLCJmaXJzdF92aXNpdCIpKSk7UShhLEguSi5UZSkmJlYoYSxILkouYm4sYihYSyhhLCJzZXNzaW9uX3N0YXJ0IikpKX07dmFyIEFSPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj17fSxjPVN0cmluZyh6Ui5jb29raWUpLnNwbGl0KCI7IiksZD0wO2Q8Yy5sZW5ndGg7ZCsrKXt2YXIgZT1jW2RdLnNwbGl0KCI9IiksZj1lWzBdLnRyaW0oKTtpZihmJiZhKGYpKXt2YXIgZz1lLnNsaWNlKDEpLmpvaW4oIj0iKS50cmltKCk7ZyYmKGc9ZGVjb2RlVVJJQ29tcG9uZW50KGcpKTt2YXIgaD12b2lkIDAsbD12b2lkIDA7KChoPWIpW2w9Zl18fChoW2xdPVtdKSkucHVzaChnKX19cmV0dXJuIGJ9O3ZhciBCUj13aW5kb3cselI9ZG9jdW1lbnQsQ1I9ZnVuY3Rpb24oYSl7dmFyIGI9QlIuX2dhVXNlclByZWZzO2lmKGImJmIuaW9vJiZiLmlvbygpfHx6Ui5kb2N1bWVudEVsZW1lbnQuaGFzQXR0cmlidXRlKCJkYXRhLWdvb2dsZS1hbmFseXRpY3Mtb3B0LW91dCIpfHxhJiZCUlsiZ2EtZGlzYWJsZS0iK2FdPT09ITApcmV0dXJuITA7dHJ5e3ZhciBjPUJSLmV4dGVybmFsO2lmKGMmJmMuX2dhVXNlclByZWZzJiZjLl9nYVVzZXJQcmVmcz09Im9vIilyZXR1cm4hMH1jYXRjaChmKXt9Zm9yKHZhciBkPUFSKGZ1bmN0aW9uKGYpe3JldHVybiBmPT09IkFNUF9UT0tFTiJ9KS5BTVBfVE9LRU58fFtdLGU9MDtlPGQubGVuZ3RoO2UrKylpZihkW2VdPT0iJE9QVF9PVVQiKXJldHVybiEwO3JldHVybiB6Ui5nZXRFbGVtZW50QnlJZCgiX19nYU9wdE91dEV4dGVuc2lvbiIpPyEwOiExfTt2YXIgTVI9ImdjbGlkIGRjbGlkIGdjbHNyYyB3YnJhaWQgZ2JyYWlkIGdhZF9zb3VyY2UgZ2FkX2NhbXBhaWduaWQgdXRtX3NvdXJjZSB1dG1fbWVkaXVtIHV0bV9jYW1wYWlnbiB1dG1fdGVybSB1dG1fY29udGVudCB1dG1faWQiLnNwbGl0KCIgIik7ZnVuY3Rpb24gTlIoKXt2YXIgYT1CLmxvY2F0aW9uLGIsYz1hPT1udWxsP3ZvaWQgMDooYj1hLnNlYXJjaCk9PW51bGw/dm9pZCAwOmIucmVwbGFjZSgiPyIsIiIpLGQ7aWYoYyl7Zm9yKHZhciBlPVtdLGY9SmooYywhMCksZz1tKE1SKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPWZbbF07aWYobilmb3IodmFyIHA9MDtwPG4ubGVuZ3RoO3ArKyl7dmFyIHE9bltwXTtxIT09dm9pZCAwJiZlLnB1c2goe25hbWU6bCx2YWx1ZTpxfSl9fWQ9ZX1lbHNlIGQ9W107cmV0dXJuIGR9O3ZhciBQUj1bRi5ELnJhLEYuRC5rYV0sUVI9W0YuRC5yYSxGLkQua2EsRi5ELm1hXTsKZnVuY3Rpb24gUlIoYSl7dmFyIGIsYz1NKDUwNikmJiFkSShhLCJjY2RfZ2FfYWRzX2lkc19vcHRfb3V0IiwhMSksZD0hIWRJKGEsImdvb2dsZV9uZyIsITEpLGU9WG8oYz9kP1FSOmZwOlBSKSxmO2Y9ZEkoYSxGLkQuVWYsTyhhLk0sRi5ELlVmKSl8fCEhZEkoYSwiZ29vZ2xlX25nIiwhMSk7Yj17aGY6YyxFczpkLEdvOmUsZmY6ZixMZzohIWRJKGEsImdhNF9hZHNfbGlua2VkIiwhMSksYmk6QW0oKSxHajohVksoKSxGczpiayhaSyhhKSksRHM6ISFRKGEsSC5KLmJlKSxHczohIVEoYSxILkouVGUpLHVzOiEhTyhhLk0sRi5ELk5sKSxLczohIVEoYSxILkouZWopLHhnOk8oYS5NLEYuRC5TYyksbnI6TyhhLk0sRi5ELlNjLHZvaWQgMCw0KSxIczohIVEoYSxILkouRmMpfTtWKGEsSC5KLmNqLGIuZmYpO1YoYSxILkouYmosU1IoYikpO2IuaGYmJiFiLmZmJiZiLkxnJiZTUihiKSYmVShhLCJfJmlidCIsIjEiKTtTUihiKSYmYi5HbyYmKGIuaGY/Yi54ZyE9PSExfHxiLkxnOjEpJiZWKGEsCkguSi5ybiwhMCk7Yi5FcyYmIWIuYmkmJlUoYSxGLkQuTGUsMSk7KGIuaGY/Yi54ZzpiLm5yKT09PSExJiZVKGEsIl8mbmdzIiwiMSIpO1YoYSxILkouaGQsVFIoYikmJihiLkdzfHxiLnVzKSk7VihhLEguSi5yZyxUUihiKSYmYi5LcyYmIWIuYmkpfWZ1bmN0aW9uIFNSKGEpe3JldHVybiBhLmhmPyhhLkxnfHxhLmZmKSYmIWEuYmkmJiFhLkdqOmEuZmYmJmEueGchPT0hMSYmIWEuR2omJiFhLmJpfWZ1bmN0aW9uIFRSKGEpe2lmKGEuSHMpcmV0dXJuITE7aWYoYS5oZil7aWYoIWEuZmYmJiFhLkxnKXJldHVybiExfWVsc2UgaWYoIWEuZmYpcmV0dXJuITE7cmV0dXJuIGEuRnN8fGEuRHN8fGEuR2p8fChhLmhmP2EueGc9PT0hMSYmIWEuTGc6YS54Zz09PSExKXx8IWEuR28/ITE6ITB9O3ZhciBiUz1mdW5jdGlvbihhKXt2YXIgYj0hMDtiPWI9PT12b2lkIDA/ITE6YjtpZihNKDQyNSkmJiEocGwoKXx8YiYmUShhLEguSi5kail8fGEuZXZlbnROYW1lIT09Ri5ELndhfHxRKGEsSC5KLkZjKSkpe3ZhciBjPXt9LGQ9e30sZT17ZXZlbnRNZXRhZGF0YTpuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGEuTS5ldmVudE1ldGFkYXRhLChjW0guSi5GY109ITAsYyksYj97fTooZFtILkouRGNdPVguVi5LYSxkKSksbm9HdG1FdmVudDohMH0sZj1zQyhhLnRhcmdldC5kZXN0aW5hdGlvbklkLCJzdHJ1Y3R1cmVkX2RhdGEiLGEuTS5FYSk7bUQoZixhLk0uZXZlbnRJZCxlKX19O2Z1bmN0aW9uIGhTKGEpe31mdW5jdGlvbiBpUyhhKXt2YXIgYj1mdW5jdGlvbigpe307cmV0dXJuIGJ9CmZ1bmN0aW9uIGpTKGEsYil7fXZhciBrUz1KLlUucWwsbFM9Si5VLnJsO2Z1bmN0aW9uIG1TKGEsYil7dmFyIGM9dGsoKTtjJiZjLmluZGV4T2YoYik+LTEmJihhW0guSi5DY109ITApfWZ1bmN0aW9uIG9TKGEsYixjKXt2YXIgZD10aGlzO31vUy5QPSJpbnRlcm5hbC5ndGFnQ29uZmlnIjtmdW5jdGlvbiBwUyhhLGIsYyxkKXt2YXIgZT10aGlzO31wUy5QPSJpbnRlcm5hbC5ndGFnRGVzdGluYXRpb25Db25maWciOwpmdW5jdGlvbiByUyhhLGIpe30KclMucHVibGljTmFtZT0iZ3RhZ1NldCI7ZnVuY3Rpb24gc1MoKXt2YXIgYT17fTtyZXR1cm4gYX07ZnVuY3Rpb24gdFMoYSl7fXRTLlA9ImludGVybmFsLmluaXRpYWxpemVTZXJ2aWNlV29ya2VyIjtmdW5jdGlvbiB1UyhhLGIpe311Uy5wdWJsaWNOYW1lPSJpbmplY3RIaWRkZW5JZnJhbWUiO2Z1bmN0aW9uIHZTKGEsYixjLGQsZSl7fXZTLlA9ImludGVybmFsLmluamVjdEh0bWwiO3ZhciBBUz17ZGw6MSxpZDoxfTsKZnVuY3Rpb24gQlMoYSxiLGMsZCl7fUJTLnB1YmxpY05hbWU9ImluamVjdFNjcmlwdCI7ZnVuY3Rpb24gQ1MoKXt2YXIgYT12bSxiPSExO2I9ISFhLkhbIjUiXTtyZXR1cm4gYn1DUy5QPSJpbnRlcm5hbC5pc0F1dG9QaWlFbGlnaWJsZSI7ZnVuY3Rpb24gRFMoYSl7dmFyIGI9ITA7cmV0dXJuIGJ9RFMucHVibGljTmFtZT0iaXNDb25zZW50R3JhbnRlZCI7ZnVuY3Rpb24gRVMoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9RVMuUD0iaW50ZXJuYWwuaXNEZWJ1Z01vZGUiO2Z1bmN0aW9uIEZTKGEpe3ZhciBiPSExO3JldHVybiBifUZTLlA9ImludGVybmFsLmlzRGVzdGluYXRpb25Jbml0aWFsaXplZCI7ZnVuY3Rpb24gR1MoKXtyZXR1cm4gQm0oKX1HUy5QPSJpbnRlcm5hbC5pc0RtYVJlZ2lvbiI7ZnVuY3Rpb24gSFMoKXtyZXR1cm4gVUIoKX1IUy5QPSJpbnRlcm5hbC5pc0RvbVJlYWR5IjtmdW5jdGlvbiBJUyhhKXt2YXIgYj0hMTtyZXR1cm4gYn1JUy5QPSJpbnRlcm5hbC5pc0VudGl0eUluZnJhc3RydWN0dXJlIjtmdW5jdGlvbiBKUyhhKXt2YXIgYj0hMTtpZighcWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIm51bWJlciJdLFthXSk7Yj1NKGEpO3JldHVybiBifUpTLlA9ImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiO2Z1bmN0aW9uIEtTKCl7dmFyIGE9ITE7cmV0dXJuIGF9S1MuUD0iaW50ZXJuYWwuaXNGcGZlIjtmdW5jdGlvbiBMUygpe3ZhciBhPSExO3JldHVybiBhfUxTLlA9ImludGVybmFsLmlzR2NwQnJvd3NlciI7ZnVuY3Rpb24gTVMoKXt2YXIgYT0hMTtyZXR1cm4gYX1NUy5QPSJpbnRlcm5hbC5pc0xhbmRpbmdQYWdlIjtmdW5jdGlvbiBOUygpe3ZhciBhPSExO3JldHVybiBhfU5TLlA9ImludGVybmFsLmlzT2d0IjtmdW5jdGlvbiBPUygpe3ZhciBhO3JldHVybiBhfU9TLlA9ImludGVybmFsLmlzU2FmYXJpUGNtRWxpZ2libGVCcm93c2VyIjtmdW5jdGlvbiBQUygpe3ZhciBhPVFoKGZ1bmN0aW9uKGIpe1hGKHRoaXMpLmxvZygiZXJyb3IiLGIpfSk7YS5wdWJsaWNOYW1lPSJKU09OIjtyZXR1cm4gYX07ZnVuY3Rpb24gUVMoYSl7dmFyIGI9dm9pZCAwO3JldHVybiBVZChiKX1RUy5QPSJpbnRlcm5hbC5sZWdhY3lQYXJzZVVybCI7ZnVuY3Rpb24gUlMoKXtyZXR1cm4hMX0KdmFyIFNTPXtnZXRJdGVtOmZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9LHNldEl0ZW06ZnVuY3Rpb24oYSxiKXtyZXR1cm4hMX0scmVtb3ZlSXRlbTpmdW5jdGlvbihhKXt9fTtmdW5jdGlvbiBUUygpe31UUy5wdWJsaWNOYW1lPSJsb2dUb0NvbnNvbGUiO2Z1bmN0aW9uIFVTKGEsYil7fVVTLlA9ImludGVybmFsLm1lcmdlUmVtb3RlQ29uZmlnIjtmdW5jdGlvbiBWUyhhLGIsYyl7Yz1jPT09dm9pZCAwPyEwOmM7dmFyIGQ9W107cmV0dXJuIFVkKGQpfVZTLlA9ImludGVybmFsLnBhcnNlQ29va2llVmFsdWVzRnJvbVN0cmluZyI7ZnVuY3Rpb24gV1MoYSl7dmFyIGI9dm9pZCAwOwpyZXR1cm4gYn1XUy5wdWJsaWNOYW1lPSJwYXJzZVVybCI7ZnVuY3Rpb24gWFMoYSl7fVhTLlA9ImludGVybmFsLnByb2Nlc3NBc05ld0V2ZW50IjtmdW5jdGlvbiBZUyhhLGIsYyl7dmFyIGQ7cmV0dXJuIGR9WVMuUD0iaW50ZXJuYWwucHVzaFRvRGF0YUxheWVyIjtmdW5jdGlvbiBaUyhhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyksYz0hMTtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7Zm9yKHZhciBkPVt0aGlzLGFdLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlkLnB1c2goVGQoZi52YWx1ZSx0aGlzLlQsMSkpO3RyeXtMLmFwcGx5KG51bGwsZCksYz0hMH1jYXRjaChnKXtyZXR1cm4hMX1yZXR1cm4gY31aUy5wdWJsaWNOYW1lPSJxdWVyeVBlcm1pc3Npb24iO2Z1bmN0aW9uICRTKGEpe3ZhciBiPXRoaXM7fSRTLlA9ImludGVybmFsLnF1ZXVlQWRzVHJhbnNtaXNzaW9uIjtmdW5jdGlvbiBhVChhKXt2YXIgYj12b2lkIDA7cmV0dXJuIGJ9YVQucHVibGljTmFtZT0icmVhZEFuYWx5dGljc1N0b3JhZ2UiO2Z1bmN0aW9uIGJUKCl7dmFyIGE9IiI7cmV0dXJuIGF9YlQucHVibGljTmFtZT0icmVhZENoYXJhY3RlclNldCI7ZnVuY3Rpb24gY1QoKXtyZXR1cm4gRSgxOSl9Y1QuUD0iaW50ZXJuYWwucmVhZERhdGFMYXllck5hbWUiO2Z1bmN0aW9uIGRUKCl7dmFyIGE9IiI7cmV0dXJuIGF9ZFQucHVibGljTmFtZT0icmVhZFRpdGxlIjtmdW5jdGlvbiBlVChhLGIpe3ZhciBjPXRoaXM7aWYoIWxoKGEpfHwhaGgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImZ1bmN0aW9uIl0sYXJndW1lbnRzKTtMTShhLGZ1bmN0aW9uKGQpe2IuaW52b2tlKGMuVCxVZChkLGMuVCwxKSl9KTt9ZVQuUD0iaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayI7ZnVuY3Rpb24gZlQoYSxiKXtpZighbGgoYSl8fCFlaChiKSYmIWdoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJPYmplY3R8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZihCaChYRih0aGlzKS5QYigpKSlyZXR1cm4hMTt2YXIgYyxkLGU9YkMoYSwhMCk7aWYoIWUpcmV0dXJuITE7c3dpdGNoKGUucHJlZml4KXtjYXNlICJBVyI6Yz10TjtkPWNvLmlhLmNiO2JyZWFrO2Nhc2UgIkRDIjpjPUlOO2Q9Y28uaWEuY2I7YnJlYWs7Y2FzZSAiR0YiOmM9Tk47ZD1jby5pYS5nZDticmVhaztjYXNlICJIQSI6Yz1QTjtkPWNvLmlhLmdkO2JyZWFrO2Nhc2UgIlVBIjpjPWZPO2Q9Y28uaWEuZ2Q7YnJlYWs7Y2FzZSAiTUMiOmM9aVMoZSk7ZD1jby5pYS54ZDticmVhaztjYXNlICJHIjpyZXR1cm4gaFMoYSksITA7ZGVmYXVsdDpyZXR1cm4hMX12YXIgZj1hLApnPWMsaD1kLGw9VGQoYix0aGlzLlQsMSksbj1ZQygpLHA9YkMoZiwhMCk7cCYmbi5ILnJlZ2lzdGVyKHAsZyxoLGwpO3JldHVybiEwfWZULlA9ImludGVybmFsLnJlZ2lzdGVyRGVzdGluYXRpb24iO3ZhciBnVD1bImV2ZW50Il07ZnVuY3Rpb24gaFQoYSxiLGMpe31oVC5QPSJpbnRlcm5hbC5yZWdpc3Rlckd0YWdDb21tYW5kTGlzdGVuZXIiO2Z1bmN0aW9uIGlUKGEsYil7dmFyIGM9ITE7cmV0dXJuIGN9aVQuUD0iaW50ZXJuYWwucmVtb3ZlRGF0YUxheWVyRXZlbnRMaXN0ZW5lciI7ZnVuY3Rpb24galQoYSxiKXt9CmpULlA9ImludGVybmFsLnJlbW92ZUZvcm1EYXRhIjtmdW5jdGlvbiBrVCgpe31rVC5wdWJsaWNOYW1lPSJyZXNldERhdGFMYXllciI7ZnVuY3Rpb24gbFQoYSxiLGMpe3ZhciBkPXZvaWQgMDtyZXR1cm4gZH1sVC5QPSJpbnRlcm5hbC5zY3J1YlVybFBhcmFtcyI7ZnVuY3Rpb24gbVQoYSl7fW1ULlA9ImludGVybmFsLnNlbmRBZHNIaXQiO2Z1bmN0aW9uIG5UKGEsYixjLGQpe31uVC5QPSJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50IjtmdW5jdGlvbiBvVChhLGIsYyl7fW9ULnB1YmxpY05hbWU9InNlbmRQaXhlbCI7ZnVuY3Rpb24gcFQoYSxiKXt9cFQuUD0iaW50ZXJuYWwuc2V0QW5jaG9ySHJlZiI7ZnVuY3Rpb24gcVQoYSl7fXFULlA9ImludGVybmFsLnNldENvbnRhaW5lckNvbnNlbnREZWZhdWx0cyI7ZnVuY3Rpb24gclQoYSxiLGMsZCl7dmFyIGU9dGhpcztkPWQ9PT12b2lkIDA/ITA6ZDt2YXIgZj0hMTsKcmV0dXJuIGZ9clQucHVibGljTmFtZT0ic2V0Q29va2llIjtmdW5jdGlvbiBzVChhKXt9c1QuUD0iaW50ZXJuYWwuc2V0Q29yZVBsYXRmb3JtU2VydmljZXMiO2Z1bmN0aW9uIHRUKGEsYil7fXRULlA9ImludGVybmFsLnNldERhdGFMYXllclZhbHVlIjtmdW5jdGlvbiB1VChhKXt9dVQucHVibGljTmFtZT0ic2V0RGVmYXVsdENvbnNlbnRTdGF0ZSI7ZnVuY3Rpb24gdlQoYSxiKXtpZighbGgoYSl8fCFsaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nIl0sYXJndW1lbnRzKTtMKHRoaXMsImFjY2Vzc19jb25zZW50IixhLCJ3cml0ZSIpO0wodGhpcywiYWNjZXNzX2NvbnNlbnQiLGIsInJlYWQiKTtCbSgpJiYoQWwuZGVsZWdhdGVkQ29uc2VudFR5cGVzW2FdPWIpO312VC5QPSJpbnRlcm5hbC5zZXREZWxlZ2F0ZWRDb25zZW50VHlwZSI7ZnVuY3Rpb24gd1QoYSxiKXt9d1QuUD0iaW50ZXJuYWwuc2V0Rm9ybUFjdGlvbiI7ZnVuY3Rpb24geFQoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO314VC5QPSJpbnRlcm5hbC5zZXRJbkNyb3NzQ29udGFpbmVyRGF0YSI7ZnVuY3Rpb24geVQoYSxiLGMpe3JldHVybiExfXlULnB1YmxpY05hbWU9InNldEluV2luZG93IjtmdW5jdGlvbiB6VChhLGIsYyl7fXpULlA9ImludGVybmFsLnNldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciI7ZnVuY3Rpb24gQVQoYSxiLGMpe2lmKCFsaChhKXx8IWxoKGIpfHxhcmd1bWVudHMubGVuZ3RoIT09Myl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nIiwiYW55Il0sYXJndW1lbnRzKTtmb3IodmFyIGQ9Yi5zcGxpdCgiLiIpLGU9ZUQoYSksZj0wO2Y8ZC5sZW5ndGgtMTtmKyspe2lmKGVbZFtmXV09PT12b2lkIDApZVtkW2ZdXT17fTtlbHNlIGlmKCFDZChlW2RbZl1dKSl0aHJvdyBFcnJvcigic2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIGZhaWxlZCwgcGF0aCBjb250YWlucyBhIG5vbi1vYmplY3QgdHlwZTogIitkW2ZdKTtlPWVbZFtmXV19ZVtkW2ZdXT1UZChjLHRoaXMuVCwxKTt9QVQuUD0iaW50ZXJuYWwuc2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIjtmdW5jdGlvbiBCVChhLGIpe30KQlQuUD0iaW50ZXJuYWwuc2V0VHJhbnNtaXNzaW9uTW9kZSI7ZnVuY3Rpb24gQ1QoYSxiLGMsZCl7dmFyIGU9dGhpczt9Q1QucHVibGljTmFtZT0ic2hhMjU2IjtmdW5jdGlvbiBEVChhLGIsYyl7fQpEVC5QPSJpbnRlcm5hbC5zb3J0UmVtb3RlQ29uZmlnUGFyYW1ldGVycyI7ZnVuY3Rpb24gRVQoYSl7fUVULlA9ImludGVybmFsLnN0b3JlQWRzQnJhaWRMYWJlbHMiO2Z1bmN0aW9uIEZUKGEsYil7dmFyIGM9dm9pZCAwO3JldHVybiBjfUZULlA9ImludGVybmFsLnN1YnNjcmliZVRvQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBHVChhKXt9R1QuUD0iaW50ZXJuYWwudGFza1NlbmRBZHNIaXRzIjt2YXIgSFQ9e2dldEl0ZW06ZnVuY3Rpb24oYSl7dmFyIGI9bnVsbDtyZXR1cm4gYn0sc2V0SXRlbTpmdW5jdGlvbihhLGIpe30sCnJlbW92ZUl0ZW06ZnVuY3Rpb24oYSl7fSxjbGVhcjpmdW5jdGlvbigpe30sCnB1YmxpY05hbWU6InRlbXBsYXRlU3RvcmFnZSJ9O2Z1bmN0aW9uIElUKGEsYil7dmFyIGM9ITE7cmV0dXJuIGN9SVQuUD0iaW50ZXJuYWwudGVzdFJlZ2V4IjtmdW5jdGlvbiBKVChhKXt2YXIgYjtyZXR1cm4gYn07ZnVuY3Rpb24gS1QoYSxiKXt9S1QuUD0iaW50ZXJuYWwudHJhY2tVc2FnZSI7ZnVuY3Rpb24gTFQoYSxiKXt2YXIgYztyZXR1cm4gY31MVC5QPSJpbnRlcm5hbC51bnN1YnNjcmliZUZyb21Dcm9zc0NvbnRhaW5lckRhdGEiO2Z1bmN0aW9uIE1UKGEpe31NVC5wdWJsaWNOYW1lPSJ1cGRhdGVDb25zZW50U3RhdGUiO2Z1bmN0aW9uIE5UKGEpe3ZhciBiPSExO3JldHVybiBifU5ULlA9ImludGVybmFsLnVzZXJEYXRhTmVlZHNFbmNyeXB0aW9uIjt2YXIgT1Q9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IGFpfSxRVD1mdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihhKXt2YXIgYjt2YXIgYz1QVC5IO2lmKGMuY29udGFpbnMoYSkpYj1jLmdldChhLHRoaXMpO2Vsc2V7dmFyIGQ7aWYoZD1jLkguaGFzT3duUHJvcGVydHkoYSkpe3ZhciBlPXRoaXMuVC54YigpO2lmKGUpe3ZhciBmPSExLGc9ZS5QYigpO2lmKGcpe0JoKGcpfHwoZj0hMCk7fWQ9Zn1lbHNlIGQ9ITB9aWYoZCl7dmFyIGg9Yy5ILmhhc093blByb3BlcnR5KGEpP2MuSFthXTp2b2lkIDA7Yj1ofWVsc2UgdGhyb3cgRXJyb3IoYSsiIGlzIG5vdCBhIHZhbGlkIEFQSSBuYW1lLiIpO31yZXR1cm4gYn19LFBUO2Z1bmN0aW9uIFJUKGEsYixjKXtQVHx8KFBUPW5ldyBPVCk7UFQuSC5hZGQoYSxiLGMpfWZ1bmN0aW9uIFNUKGEsYil7UFR8fChQVD1uZXcgT1QpO3ZhciBjPVBULkg7aWYoYy5ILmhhc093blByb3BlcnR5KGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIHByaXZhdGUgZnVuY3Rpb24gd2hpY2ggYWxyZWFkeSBleGlzdHM6ICIrYSsiLiIpO2lmKGMuY29udGFpbnMoYSkpdGhyb3cgRXJyb3IoIkF0dGVtcHRpbmcgdG8gYWRkIGEgcHJpdmF0ZSBmdW5jdGlvbiB3aXRoIGFuIGV4aXN0aW5nIEFQSSBuYW1lOiAiK2ErIi4iKTtjLkhbYV09eWIoYik/dGgoYSxiKTp1aChhLGIpfTtmdW5jdGlvbiBUVChhLGIpe2Z1bmN0aW9uIGMoZCl7aWYoIWVoKGQpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3QiXSxhcmd1bWVudHMpO3ZhciBlPVRkKGQsdGhpcy5ULDEpLnJiKCk7YShlKX1jLlA9ImludGVybmFsLiIrYjtyZXR1cm4gY307ZnVuY3Rpb24gVVQoKXt2YXIgYT1mdW5jdGlvbihjKXtyZXR1cm4gdm9pZCBTVChjLlAsYyl9LGI9ZnVuY3Rpb24oYyl7cmV0dXJuIHZvaWQgUlQoYy5wdWJsaWNOYW1lLGMpfTtiKFJGKTtiKFlGKTtiKFJHKTtiKFRHKTtiKFVHKTtiKGRIKTtiKGZIKTtiKGhJKTtiKFBTKCkpO2IoakkpO2IoT08pO2IoUE8pO2IobFApO2IobVApO2IoblApO2IodVApO2IodlApO2IoclMpO2IodVMpO2IoQlMpO2IoRFMpO2IoVFMpO2IoV1MpO2IoWlMpO2IoYVQpO2IoYlQpO2IoZFQpO2Iob1QpO2IoclQpO2IodVQpO2IoeVQpO2IoQ1QpO2IoSFQpO2IoTVQpO1JUKCJNYXRoIix6aCgpKTtSVCgiT2JqZWN0IixaaCk7UlQoIlRlc3RIZWxwZXIiLGNpKCkpO1JUKCJhc3NlcnRBcGkiLHdoKTtSVCgiYXNzZXJ0VGhhdCIseGgpO1JUKCJkZWNvZGVVcmkiLENoKTtSVCgiZGVjb2RlVXJpQ29tcG9uZW50IixEaCk7UlQoImVuY29kZVVyaSIsRWgpO1JUKCJlbmNvZGVVcmlDb21wb25lbnQiLEZoKTtSVCgiZmFpbCIsCkxoKTtSVCgiZ2VuZXJhdGVSYW5kb20iLE5oKTtSVCgiZ2V0VGltZXN0YW1wIixPaCk7UlQoImdldFRpbWVzdGFtcE1pbGxpcyIsT2gpO1JUKCJnZXRUeXBlIixQaCk7UlQoIm1ha2VJbnRlZ2VyIixSaCk7UlQoIm1ha2VOdW1iZXIiLFNoKTtSVCgibWFrZVN0cmluZyIsVGgpO1JUKCJtYWtlVGFibGVNYXAiLFVoKTtSVCgibW9jayIsWGgpO1JUKCJtb2NrT2JqZWN0IixZaCk7UlQoImZyb21CYXNlNjQiLEhPLCEoImF0b2IiaW4gQSkpO1JUKCJsb2NhbFN0b3JhZ2UiLFNTLCFSUygpKTtSVCgidG9CYXNlNjQiLEpULCEoImJ0b2EiaW4gQSkpO2EoUUYpO2EoVUYpO2EobkcpO2Eoc0cpO2EoSUcpO2EoUEcpO2EoU0cpO2EoVkcpO2EoV0cpO2EoWkcpO2EoJEcpO2EoYUgpO2EoYkgpO2EoY0gpO2EoZUgpO2EoZ0gpO2EoZ0kpO2EoaUkpO2Eoa0kpO2EobEkpO2EobUkpO2EobkkpO2Eob0kpO2EoZkopO2EobUopO2EodEopO2EodUopO2EoQUopO2EoRkopO2EoS0opO2EoUkopO2EoV0opO2EoZ0spOwphKGlLKTthKHZLKTthKHdLKTthKHhLKTthKEZPKTthKEdPKTthKElPKTthKEpPKTthKEtPKTthKExPKTthKE1PKTthKE5PKTthKFFPKTthKFJPKTthKFNPKTthKFRPKTthKFVPKTthKFZPKTthKFdPKTthKFhPKTthKFlPKTthKFpPKTthKCRPKTthKGFQKTthKGJQKTthKGNQKTthKGRQKTthKGVQKTthKGZQKTthKGdQKTthKGhQKTthKGlQKTthKGpQKTthKGtQKTthKG9QKTthKHBQKTthKHFQKTthKHJQKTthKHNQKTthKHRQKTthKHdQKTthKG9TKTthKHBTKTthKHRTKTthKHZTKTthKENTKTthKEVTKTthKEZTKTthKEdTKTthKEhTKTthKElTKTthKEpTKTthKEtTKTthKExTKTthKE1TKTthKE5TKTthKE9TKTthKFFTKTthKEdHKTthKFVTKTthKFZTKTthKFhTKTthKFlTKTthKCRTKTthKGNUKTthKGVUKTthKGZUKTthKGhUKTthKGlUKTthKGpUKTthKGxUKTthKG1UKTthKG5UKTthKHBUKTthKHFUKTthKHNUKTthKHRUKTthKHZUKTthKHdUKTthKHhUKTthKHpUKTthKEFUKTthKEJUKTthKERUKTsKYShFVCk7YShGVCk7YShHVCk7YShJVCk7YShLVCk7YShMVCk7YShOVCk7U1QoImludGVybmFsLklmcmFtaW5nU3RhdGVTY2hlbWEiLHNTKCkpO1NUKCJpbnRlcm5hbC5xdWlja0hhc2giLE1oKTthKFRUKE1GLCJ0YXNrU2V0QWRzVHJhbnNtaXNzaW9uVHlwZSIpKSxhKFRUKFBGLCJ0YXNrU2V0VW5pdmVyc2FsUGFyYW1zIikpO1BUfHwoUFQ9bmV3IE9UKTtyZXR1cm4gUVQoKX07dmFyIEpGO2Z1bmN0aW9uIFZUKCl7SkYuc2QoZnVuY3Rpb24oYSxiLGMpe2xqKCk7dmFyIGQ9amo7ZC5ILlNBTkRCT1hFRF9KU19TRU1BUEhPUkU9ZC5ILlNBTkRCT1hFRF9KU19TRU1BUEhPUkV8fDA7ZC5ILlNBTkRCT1hFRF9KU19TRU1BUEhPUkUrKzt0cnl7cmV0dXJuIGEuYXBwbHkoYixjKX1maW5hbGx5e2xqKCksamouSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFLS19fSl9ZnVuY3Rpb24gV1QoYSl7aWYoYSYmYS5sZW5ndGgpZm9yKHZhciBiPWFsKDI3LGZ1bmN0aW9uKCl7cmV0dXJue319KSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10ucmVwbGFjZSgvXl8qLywiIik7YltkXT1bInNhbmRib3hlZFNjcmlwdHMiXX19CmZ1bmN0aW9uIFhUKGEpe2lmKGEpe3ZhciBiPWFsKDI3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtHYihhLGZ1bmN0aW9uKGMsZCl7Zm9yKHZhciBlPTA7ZTxkLmxlbmd0aDtlKyspe3ZhciBmPWRbZV0ucmVwbGFjZSgvXl8qLywiIik7YltmXT1iW2ZdfHxbXTtiW2ZdLnB1c2goYyl9fSl9fTtmdW5jdGlvbiBaVChhKXttRChwQygiZGV2ZWxvcGVyX2lkLiIrYSwhMCksMCx7fSl9O2Z1bmN0aW9uICRUKGEsYil7cmV0dXJuIEVkKGEsYnx8bnVsbCl9ZnVuY3Rpb24gWShhKXtyZXR1cm4gd2luZG93LmVuY29kZVVSSUNvbXBvbmVudChhKX1mdW5jdGlvbiBhVShhKXtaYyhhLHZvaWQgMCx2b2lkIDApfWZ1bmN0aW9uIGJVKGEpe3ZhciBiPVsidmVpbnRlcmFjdGl2ZS5jb20iLCJ2ZS1pbnRlcmFjdGl2ZS5jbiJdO2lmKCFhKXJldHVybiExO3ZhciBjPUxqKFJqKGEpLCJob3N0Iik7aWYoIWMpcmV0dXJuITE7Zm9yKHZhciBkPTA7YiYmZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF0mJmJbZF0udG9Mb3dlckNhc2UoKTtpZihlKXt2YXIgZj1jLmxlbmd0aC1lLmxlbmd0aDtmPjAmJmUuY2hhckF0KDApIT09Ii4iJiYoZi0tLGU9Ii4iK2UpO2lmKGY+PTAmJmMuaW5kZXhPZihlLGYpPT09ZilyZXR1cm4hMH19cmV0dXJuITF9CmZ1bmN0aW9uIGNVKGEsYixjKXtmb3IodmFyIGQ9e30sZT0hMSxmPTA7YSYmZjxhLmxlbmd0aDtmKyspYVtmXSYmYVtmXS5oYXNPd25Qcm9wZXJ0eShiKSYmYVtmXS5oYXNPd25Qcm9wZXJ0eShjKSYmKGRbYVtmXVtiXV09YVtmXVtjXSxlPSEwKTtyZXR1cm4gZT9kOm51bGx9ZnVuY3Rpb24gZFUoYSxiKXt2YXIgYz17fTtpZihhKWZvcih2YXIgZCBpbiBhKWEuaGFzT3duUHJvcGVydHkoZCkmJihjW2RdPWFbZF0pO2lmKGIpe3ZhciBlPWNVKGIsInBhcmFtZXRlciIsInBhcmFtZXRlclZhbHVlIik7ZSYmKGM9JFQoZSxjKSl9cmV0dXJuIGN9ZnVuY3Rpb24gZVUoYSxiLGMpe3JldHVybiBhPT09dm9pZCAwfHxhPT09Yz9iOmF9ZnVuY3Rpb24gZlUoYSxiLGMpe3JldHVybiBVYyhhLGIsYyx2b2lkIDApfWZ1bmN0aW9uIGdVKGEsYil7QVthXT1ifWZ1bmN0aW9uIGhVKGEsYixjKXt2YXIgZD1BO2ImJihkW2FdPT09dm9pZCAwfHxjJiYhZFthXSkmJihkW2FdPWIpO3JldHVybiBkW2FdfXZhciBpVT17fSxqVT1YLlY7dmFyIFo9e3NlY3VyaXR5R3JvdXBzOnt9fTsKCgoKClouc2VjdXJpdHlHcm91cHMucmVhZF9ldmVudF9kYXRhPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2tleTpjfX0oZnVuY3Rpb24oYil7Wi5fX3JlYWRfZXZlbnRfZGF0YT1iO1ouX19yZWFkX2V2ZW50X2RhdGEuTz0icmVhZF9ldmVudF9kYXRhIjtaLl9fcmVhZF9ldmVudF9kYXRhLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3JlYWRfZXZlbnRfZGF0YS5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3JlYWRfZXZlbnRfZGF0YS5pc0luZnJhc3RydWN0dXJlPSExO1ouX19yZWFkX2V2ZW50X2RhdGFbIjUiXT0hMTtaLl9fcmVhZF9ldmVudF9kYXRhWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9ldmVudERhdGFBY2Nlc3MsZD1iLnZ0cF9rZXlQYXR0ZXJuc3x8W10sZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihmLGcpe2lmKGchPW51bGwmJiF6YihnKSl0aHJvdyBlKGYse2tleTpnfSwiS2V5IG11c3QgYmUgYSBzdHJpbmcuIik7CmlmKGMhPT0iYW55Iil7dHJ5e2lmKGM9PT0ic3BlY2lmaWMiJiZnIT1udWxsJiZFZyhnLGQpKXJldHVybn1jYXRjaChoKXt0aHJvdyBlKGYse2tleTpnfSwiSW52YWxpZCBrZXkgZmlsdGVyLiIpO310aHJvdyBlKGYse2tleTpnfSwiUHJvaGliaXRlZCByZWFkIGZyb20gZXZlbnQgZGF0YS4iKTt9fSxhYTphfX0pfSgpOwoKCgoKCgoKCgpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGE9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57ZGF0YVNvdXJjZTpjfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGE9YjtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YS5PPSJkZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhIjtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YS5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YS5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhWyI1Il09ITE7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGFbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGQsCmUpe2lmKGUhPT0iYXV0byImJmUhPT0ibWFudWFsIiYmZSE9PSJjb2RlIil0aHJvdyBjKGQse30sIlVua25vd24gdXNlciBwcm92aWRlZCBkYXRhIHNvdXJjZS4iKTtpZihiLnZ0cF9saW1pdERhdGFTb3VyY2VzKWlmKGUhPT0iYXV0byJ8fGIudnRwX2FsbG93QXV0b0RhdGFTb3VyY2VzKXtpZihlPT09Im1hbnVhbCImJiFiLnZ0cF9hbGxvd01hbnVhbERhdGFTb3VyY2VzKXRocm93IGMoZCx7fSwiRGV0ZWN0aW9uIG9mIHVzZXIgcHJvdmlkZWQgZGF0YSB2aWEgbWFudWFsbHkgc3BlY2lmaWVkIENTUyBzZWxlY3RvcnMgaXMgbm90IGFsbG93ZWQuIik7aWYoZT09PSJjb2RlIiYmIWIudnRwX2FsbG93Q29kZURhdGFTb3VyY2VzKXRocm93IGMoZCx7fSwiRGV0ZWN0aW9uIG9mIHVzZXIgcHJvdmlkZWQgZGF0YSBmcm9tIGFuIGluLXBhZ2UgdmFyaWFibGUgaXMgbm90IGFsbG93ZWQuIik7fWVsc2UgdGhyb3cgYyhkLHt9LCJBdXRvbWF0aWMgZGV0ZWN0aW9uIG9mIHVzZXIgcHJvdmlkZWQgZGF0YSBpcyBub3QgYWxsb3dlZC4iKTsKfSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmFjY2Vzc19jb25zZW50PVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXt2YXIgZT17Y29uc2VudFR5cGU6YyxyZWFkOiExLHdyaXRlOiExfTtzd2l0Y2goZCl7Y2FzZSAicmVhZCI6ZS5yZWFkPSEwO2JyZWFrO2Nhc2UgIndyaXRlIjplLndyaXRlPSEwO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIkludmFsaWQgIitiKyIgcmVxdWVzdCAiK2QpO31yZXR1cm4gZX0oZnVuY3Rpb24oYil7Wi5fX2FjY2Vzc19jb25zZW50PWI7Wi5fX2FjY2Vzc19jb25zZW50Lk89ImFjY2Vzc19jb25zZW50IjtaLl9fYWNjZXNzX2NvbnNlbnQuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fYWNjZXNzX2NvbnNlbnQucHJpb3JpdHlPdmVycmlkZT0wO1ouX19hY2Nlc3NfY29uc2VudC5pc0luZnJhc3RydWN0dXJlPSExO1ouX19hY2Nlc3NfY29uc2VudFsiNSJdPSExO1ouX19hY2Nlc3NfY29uc2VudFsiNiJdPSExfSkoZnVuY3Rpb24oYil7Zm9yKHZhciBjPQpiLnZ0cF9jb25zZW50VHlwZXN8fFtdLGQ9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yLGU9W10sZj1bXSxnPTA7ZzxjLmxlbmd0aDtnKyspe3ZhciBoPWNbZ10sbD1oLmNvbnNlbnRUeXBlO2gucmVhZCYmZS5wdXNoKGwpO2gud3JpdGUmJmYucHVzaChsKX1yZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKG4scCxxKXtpZighemIocCkpdGhyb3cgZChuLHt9LCJDb25zZW50IHR5cGUgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihxPT09InJlYWQiKXtpZihlLmluZGV4T2YocCk+LTEpcmV0dXJufWVsc2UgaWYocT09PSJ3cml0ZSIpe2lmKGYuaW5kZXhPZihwKT4tMSlyZXR1cm59ZWxzZSB0aHJvdyBkKG4se30sIkFjY2VzcyB0eXBlIG11c3QgYmUgZWl0aGVyICdyZWFkJywgb3IgJ3dyaXRlJywgd2FzICIrcSk7dGhyb3cgZChuLHt9LCJQcm9oaWJpdGVkICIrcSsiIG9uIGNvbnNlbnQgdHlwZTogIitwKyIuIik7fSxhYTphfX0pfSgpOwoKCgoKCgpmdW5jdGlvbiBrVSgpe3ZhciBhPXt9LGI9e2RhdGFMYXllcjp0QSxjYWxsYmFjazpmdW5jdGlvbihjKXthLmhhc093blByb3BlcnR5KGMpJiZ5YihhW2NdKSYmYVtjXSgpO2RlbGV0ZSBhW2NdfSxib290c3RyYXA6MH07cmV0dXJuIGJ9CmZ1bmN0aW9uIGxVKCl7dmFyIGE9a1UoKTtvaihhKTtDaygpO2pBKCk7dmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO1FiKGIsWi5zZWN1cml0eUdyb3Vwcyk7dmFyIGM9eWsoemsoKSksZCxlPWM9PW51bGw/dm9pZCAwOihkPWMuY29udGV4dCk9PW51bGw/dm9pZCAwOmQuc291cmNlO0tsKGUsYz09bnVsbD92b2lkIDA6Yy5wYXJlbnQpO2UhPT0yJiZlIT09NCYmZSE9PTN8fFAoMTQyKTtyZXR1cm4gYX1mdW5jdGlvbiBtVSgpe3ZhciBhPUUoNjApO2lmKGEpZm9yKHZhciBiPWEuc3BsaXQoIi4iKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY10sZT1UTDtkJiYoZS5IW2RdPSEwKX19CmZ1bmN0aW9uIG5VKCl7enAoKTtsaigpO2Zvcih2YXIgYT1kYXRhLnJlc291cmNlfHx7fSxiPWNBLGM9YS5tYWNyb3N8fFtdLGQ9MDtkPGMubGVuZ3RoO2QrKyliLm1hY3Jvcy5wdXNoKG5ldyBVeihjW2RdLGQsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBlPWEudGFnc3x8W10sZj0wO2Y8ZS5sZW5ndGg7ZisrKWIudGFncy5wdXNoKG5ldyBZeihlW2ZdLGYsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBnPWEucHJlZGljYXRlc3x8W10saD0wO2g8Zy5sZW5ndGg7aCsrKWIucHJlZGljYXRlcy5wdXNoKG5ldyBWeihnW2hdLGIudGFncyxiLm1hY3JvcykpO2Zvcih2YXIgbD1hLnJ1bGVzfHxbXSxuPTA7bjxsLmxlbmd0aDtuKyspYi5ydWxlcy5wdXNoKG5ldyBXeihsW25dLG4pKTtRej1aO3ZhciBwPWRhdGEucGVybWlzc2lvbnN8fHt9LHE9WjtkZz1uZXcgZ2coRSg1KSxwLHEpO3ZhciByPWRhdGEuc2FuZGJveGVkX3NjcmlwdHMsdD1kYXRhLnNlY3VyaXR5X2dyb3Vwcyx1PWRhdGEucnVudGltZXx8CltdLHY9ZGF0YS5ydW50aW1lX2xpbmVzO0pGPW5ldyBwZjtWVCgpO1B6PUlGKCk7dmFyIHg9SkYseT1VVCgpLHo9bmV3IExkKCJyZXF1aXJlIix5KTt6LlphKCk7eC5ILkguc2V0KCJyZXF1aXJlIix6KTtkYi5zZXQoInJlcXVpcmUiLHopO2Zvcih2YXIgQz0wO0M8dS5sZW5ndGg7QysrKXt2YXIgRD11W0NdO2lmKCFBcnJheS5pc0FycmF5KEQpfHxELmxlbmd0aDwzKXtpZihELmxlbmd0aD09PTApY29udGludWU7YnJlYWt9diYmdltDXSYmdltDXS5sZW5ndGgmJlBmKEQsdltDXSk7dHJ5e0pGLmV4ZWN1dGUoRCl9Y2F0Y2gob1Upe319V1Qocik7WFQodCk7dmFyIEk9bFUoKTtpRigpO3ZtLmJpbmQoKTtpZighRGopZm9yKHZhciBHPUJtKCk/ZXAoTGYoNSkpOmVwKExmKDQpKSxOPW0oUm8pLFM9Ti5uZXh0KCk7IVMuZG9uZTtTPU4ubmV4dCgpKXt2YXIgVz1TLnZhbHVlLGVhPVcsamE9R1tXXT8iZ3JhbnRlZCI6ImRlbmllZCI7dGwoKS5pbXBsaWNpdChlYSxqYSl9aEUuYmluZCgpO1RCKCk7Ck9CKCk7Zm4uTiYmKGd6KCksZnooQUYpLGdBKCksY0I9bmV3IGJCLGZ6KGl6KSxPQygpLERGfHwoREY9bmV3IEJGKSxmQnx8KGZCPW5ldyBlQiksRkY9bmV3IEVGKTtpZihmbi5LKXtERS5iaW5kKCk7bUMuYmluZCgpO3dFLmJpbmQoKTt2YXIgZmE9QWsoKTtpZihmYSl7dmFyIHNhO2E6e3ZhciBkYSxtYT0oZGE9ZmEuc2NyaXB0RWxlbWVudCk9PW51bGw/dm9pZCAwOmRhLnNyYztpZihtYSl7dmFyIFBhO3RyeXt2YXIgRmE7UGE9KEZhPXJkKCkpPT1udWxsP3ZvaWQgMDpGYS5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpfWNhdGNoKG9VKXt9aWYoUGEpe2Zvcih2YXIgcWE9LTEsaWI9bShQYSksWGI9aWIubmV4dCgpOyFYYi5kb25lO1hiPWliLm5leHQoKSl7dmFyIExjPVhiLnZhbHVlO2lmKExjLmluaXRpYXRvclR5cGU9PT0KInNjcmlwdCImJihxYSs9MSxMYy5uYW1lLnJlcGxhY2UoTkUsIiIpPT09bWEucmVwbGFjZShORSwiIikpKXtzYT1xYTticmVhayBhfX1QKDE0Nil9ZWxzZSBQKDE0NSl9c2E9dm9pZCAwfXZhciBRZD1zYTtRZCE9PXZvaWQgMCYmKGZhLmNhbm9uaWNhbENvbnRhaW5lcklkJiZVbSgicnRnIixTdHJpbmcoZmEuY2Fub25pY2FsQ29udGFpbmVySWQpKSxVbSgic2xvIixTdHJpbmcoUWQpKSxVbSgiaGxvIixmYS5odG1sTG9hZE9yZGVyfHwiLTEiKSxVbSgibHN0IixTdHJpbmcoZmEubG9hZFNjcmlwdFR5cGV8fCIwIikpKX1lbHNlIFAoMTQ0KTt2YXIgWWM7dmFyIERkPXhrKCk7aWYoRGQpaWYoRGQuY2Fub25pY2FsQ29udGFpbmVySWQpWWM9RGQuY2Fub25pY2FsQ29udGFpbmVySWQ7ZWxzZXt2YXIgamYsdmg9RGQuc2NyaXB0Q29udGFpbmVySWR8fCgoamY9RGQuZGVzdGluYXRpb25zKT09bnVsbD92b2lkIDA6amZbMF0pO1ljPXZoPyJfIit2aDp2b2lkIDB9ZWxzZSBZYz12b2lkIDA7dmFyIEpFPQpZYztKRSYmVW0oInBjaWQiLEpFKTtVbSgiYnQiLFN0cmluZyhJZig0Nyk/MjpJZig1MCk/MTowKSk7VW0oImN0IixTdHJpbmcoSWYoNDcpPzA6SWYoNTApPzE6MykpO0FFLmJpbmQoKTtmb3IodmFyIFdyPVtdLFhyPVtdLEtFPW0oT2JqZWN0LmtleXMoR0UpKSxZcj1LRS5uZXh0KCk7IVlyLmRvbmU7WXI9S0UubmV4dCgpKXt2YXIgcm09WXIudmFsdWU7aWYod2luZG93LmlzU2VjdXJlQ29udGV4dHx8IUlFW3JtXSl7dmFyIExFPUdFW3JtXSgpO2lmKHliKExFKSl7dmFyIE1FPUZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKExFKTtUYihNRSwieyBbbmF0aXZlIGNvZGVdIH0iKXx8VGIoTUUsIntcbiAgICBbbmF0aXZlIGNvZGVdXG59Iil8fFhyLnB1c2gocm0pfWVsc2UgV3IucHVzaChybSl9fVdyLmxlbmd0aD4wJiZVbSgianNtIixXci5qb2luKCJ+IikpO1hyLmxlbmd0aD4wJiZVbSgianNwIixYci5qb2luKCJ+IikpO0V5fHwoRXk9bmV3IER5KX1oRigpO2ltKDEpO0VHKCk7cmV0dXJuIEl9CmZ1bmN0aW9uIHVtKCl7dHJ5e2lmKCFoaygpJiYoSWYoNDcpfHwhTmsoKSkpe0lmKDY0KSYmd2ouSC5LLmFkZCgxMTg1MTc5MTcpO3pqKCk7Zm4uSCYmc3ooKTtXZls1XT0hMDt2YXIgYT1raigiZGVidWdHcm91cElkIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcoTWF0aC5mbG9vcihOdW1iZXIuTUFYX1NBRkVfSU5URUdFUipNYXRoLnJhbmRvbSgpKSl9KTtTbChhKTtrdCgpO3pGKCk7RnQoKTtQQigpO2lmKERrKCkpe0UoNSk7REcoKTtpQigpLnJlbW92ZUV4dGVybmFsUmVzdHJpY3Rpb25zKHZrKCkpO31lbHNle0ZNLlIoKTtuVSgpLmJvb3RzdHJhcD1OYigpO0lmKDUxKSYmcEUoKTsKZm4uSCYmdHooKTt0eXBlb2YgQS5uYW1lPT09InN0cmluZyImJlNiKEEubmFtZSwid2ViLXBpeGVsLXNhbmRib3gtQ1VTVE9NIikmJnNkKCk/WlQoImRNRGcwWXoiKTpBLlNob3BpZnkmJihaVCgiZE4yWmtNaiIpLHNkKCkmJlpUKCJkTlRVMFl6IikpO21VKCl9fX1jYXRjaChiKXtpbSg1KSxoeigpfX0KKGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXtuPUIuZG9jdW1lbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS10YWctYXNzaXN0YW50LXByZXNlbnQiKTtnbChuKSYmKGw9aC54bSl9ZnVuY3Rpb24gYygpe2wmJktjP2cobCk6YSgpfWlmKCFBW0UoMzcpXSl7dmFyIGQ9ITE7aWYoQi5yZWZlcnJlcil7dmFyIGU9UmooQi5yZWZlcnJlcik7ZD1OaihlLCJob3N0Iik9PT1FKDM4KX1pZighZCl7dmFyIGY9Y3EoRSgzOSkpO2Q9ISghZi5sZW5ndGh8fCFmWzBdLmxlbmd0aCl9ZCYmKEFbRSgzNyldPSEwLFVjKEUoNDApKSl9dmFyIGc9ZnVuY3Rpb24odSl7dmFyIHY9IkdUTSIseD0iR1RNIjtJZig0NSkmJih2PSJPR1QiLHg9IkdUQUciKTt2YXIgeT1FKDIzKSx6PUFbeV07enx8KHo9W10sQVt5XT16LFVjKCJodHRwczovLyIrRSgzKSsiL2RlYnVnL2Jvb3RzdHJhcD9pZD0iK0UoNSkrIiZzcmM9Iit4KyImY29uZD0iK1N0cmluZyh1KSsiJmd0bT0iK2R1KCkpKTt2YXIgQz17bWVzc2FnZVR5cGU6IkNPTlRBSU5FUl9TVEFSVElORyIsCmRhdGE6e3NjcmlwdFNvdXJjZTpLYyxjb250YWluZXJQcm9kdWN0OnYsZGVidWc6ITEsaWQ6RSg1KSx0YXJnZXRSZWY6e2N0aWQ6RSg1KSxpc0Rlc3RpbmF0aW9uOnNrKCksY2Fub25pY2FsSWQ6RSg2KX0sYWxpYXNlczp3aygpLGRlc3RpbmF0aW9uczp0aygpfX0sRD1DLmRhdGE7RC5yZXN1bWU9ZnVuY3Rpb24oKXthKCl9O0QucmVzdW1lV2l0aE1lbW9zPWZ1bmN0aW9uKCl7c2woMSk7YSgpfTtJZigyKSYmKEMuZGF0YS5pbml0aWFsUHVibGlzaD0hMCk7ei5wdXNoKEMpfSxoPXtHcToxLFBtOjIsb246MyxqbDo0LHhtOjV9O2hbaC5HcV09IkdUTV9ERUJVR19MRUdBQ1lfUEFSQU0iO2hbaC5QbV09IkdUTV9ERUJVR19QQVJBTSI7aFtoLm9uXT0iUkVGRVJSRVIiO2hbaC5qbF09IkNPT0tJRSI7aFtoLnhtXT0iRVhURU5TSU9OX1BBUkFNIjt2YXIgbD12b2lkIDAsbj12b2lkIDAscD1MaihBLmxvY2F0aW9uLCJxdWVyeSIsITEsdm9pZCAwLCJndG1fZGVidWciKTtnbChwKSYmKGw9aC5QbSk7CmlmKCFsJiZCLnJlZmVycmVyKXt2YXIgcT1SaihCLnJlZmVycmVyKTtOaihxLCJob3N0Iik9PT1FKDI0KSYmKGw9aC5vbil9aWYoIWwpe3ZhciByPWNxKCJfX1RBR19BU1NJU1RBTlQiKTtyLmxlbmd0aCYmclswXS5sZW5ndGgmJihsPWguamwpfWx8fGIoKTtpZighbCYmZmwobikpe3ZhciB0PSExOyRjKEIsIlRBRGVidWdTaWduYWwiLGZ1bmN0aW9uKCl7dHx8KHQ9ITAsYigpLGMoKSl9LCExKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0fHwodD0hMCxiKCksYygpKX0sMjAwKX1lbHNlIGMoKX0pKGZ1bmN0aW9uKCl7IUlmKDQ3KXx8dG0oKVsiMCJdP3VtKCk6eG0oKX0pOwoKfSkoKQoK"}},"time_used":74,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":39,"receive":35,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"geolocation.onetrust.com/cookieconsentpub/v1/geo/location","fqdn":"geolocation.onetrust.com","domain":"onetrust.com","tld":"com"},"ip":{"addr":"172.64.155.119","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.525Z","timestamp":1785161167525,"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":"geolocation.onetrust.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:17:34 GMT","end":"Tue, 20 Oct 2026 23:17:15 GMT"},"fingerprint":{"sha1":"17:8F:FB:39:BB:6B:A1:00:73:5A:DB:D4:D0:EF:99:EE:9A:B8:93:7D","sha256":"6B:C4:36:A1:51:AE:0F:CD:67:5C:4E:1C:1E:55:01:AA:70:B5:B2:BA:34:37:2C:1E:01:C3:A1:F7:E5:F9:52:41"}}},"request":{"raw":"GET /cookieconsentpub/v1/geo/location HTTP/1.1\r\nHost: geolocation.onetrust.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/json\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/\r\nOrigin: https://dhlexpress.bg\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: application/json\r\naccess-control-allow-origin: *\r\naccess-control-allow-headers: Content-Type\r\naccess-control-allow-methods: GET, OPTIONS\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\ncontent-encoding: gzip\r\nserver: cloudflare\r\ncf-ray: a21c33f11dfa4e4c-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":"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":65,"size_decoded":444,"mime_type":"application/json","magic":"JSON text data","md5":"8d896eded71ee5fc863cf1ec1485da75","sha1":"b36c99cd02aa88e94a55b028381d9c5cb61cbbef","sha256":"3dddf5b1f3c0e76d359e7fe585b61f721980981a612e17d7ebfedfc3e6fc3b3d","sha512":"a216a2ec987ed8aa509d4bf88075844374819f15767190c2f9fc1b7dc05436cb33ac0fa3466bd207bd3104e455cd3c72fb8622dd0759ab64f197ac216850382e","ssdeep":"","tlshash":"3da0025864599d1d9dfd824a530e726a1244a309828751c6c6c9ed75c5812c9b05c480","first_seen":"2025-06-02T14:25:58.002399Z","last_seen":"2026-07-27T15:43:07.564446Z","times_seen":165552,"resource_available":false,"data":"eyJjb3VudHJ5IjoiTk8iLCJzdGF0ZSI6IjAzIiwic3RhdGVOYW1lIjoiT3NsbyIsImNvbnRpbmVudCI6IkVVIn0="}},"time_used":21,"timings":{"blocked":0,"dns":2,"connect":1,"send":0,"wait":9,"receive":0,"ssl":9},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/consent/5afb8be5-36db-4066-8d42-fd51ad29102b/01926b17-dc71-74bd-948d-ab4f1e9aac3c/en.json","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.637Z","timestamp":1785161167637,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /consent/5afb8be5-36db-4066-8d42-fd51ad29102b/01926b17-dc71-74bd-948d-ab4f1e9aac3c/en.json HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/\r\nOrigin: https://dhlexpress.bg\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: application/json\r\ncf-ray: a21c33f1b833783d-OSL\r\ncf-cache-status: HIT\r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=86400\r\ncontent-encoding: gzip\r\netag: 0x8DE373E242B8F40\r\nexpires: Tue, 28 Jul 2026 14:06:07 GMT\r\nlast-modified: Tue, 09 Dec 2025 16:15:16 GMT\r\nserver: cloudflare\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nvary: accept-encoding\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding, X-OneTrust-IsBot\r\ncontent-md5: vqXjCMZp1ONAKS4fWHxncQ==\r\ncross-origin-resource-policy: cross-origin, cross-origin\r\nx-content-type-options: nosniff\r\nx-onetrust-isbot: true\r\nx-ms-blob-type: BlockBlob\r\nx-ms-lease-status: unlocked\r\nx-ms-request-id: 0f3d21fd-001e-00cb-2154-dc01ba000000\r\nx-ms-version: 2009-09-19\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"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":79318,"size_decoded":19584,"mime_type":"application/json","magic":"JSON text data","md5":"3be0e294371986cd756f85b4b9cd5c94","sha1":"fedae73e6e7f517a69df83fbfab6ec9bb9abf178","sha256":"7b611cb75325b0da94e1e436c39c711997640ac3e1d78797bd3b06c19069588a","sha512":"f000d61700749ecdd67429c6dec1640bcf66a61c591af884b016b713c1e88ab6c7570b792d2b4edf4384c9d0f851f0c519cd7f5b934bcbfb31391d062d2dbbb2","ssdeep":"768:AJcGRD++hZLsA3I+kzBxB+c7FnG3AXcm/OPaEJblyc73vOcJlB2RCWjuFyKmr3WD:AJcmC+SYcUscUbcLvOSlB2RHxJypT7B","tlshash":"3c733b0ba55810b94b8b0360746a7b8af33c5596b771c96cfb0c4d3a12932f965f329f","first_seen":"2026-07-27T14:06:41.185429Z","last_seen":"2026-07-27T14:06:41.185429Z","times_seen":1,"resource_available":false,"data":"eyJEb21haW5EYXRhIjp7InBjbGlmZVNwYW5ZciI6IlllYXIiLCJwY2xpZmVTcGFuWXJzIjoiWWVhcnMiLCJwY2xpZmVTcGFuU2VjcyI6IkEgZmV3IHNlY29uZHMiLCJwY2xpZmVTcGFuV2siOiJXZWVrIiwicGNsaWZlU3BhbldrcyI6IldlZWtzIiwicGNjb250aW51ZVdpdGhvdXRBY2NlcHRUZXh0IjoiQ29udGludWUgd2l0aG91dCBBY2NlcHRpbmciLCJwY2Nsb3NlQnV0dG9uVHlwZSI6Ikljb24iLCJNYWluVGV4dCI6IkNvbnNlbnQgZm9yIERhdGEgUHJvY2Vzc2luZyIsIk1haW5JbmZvVGV4dCI6IlRoaXMgd2Vic2l0ZSB1c2VzIGNvb2tpZXMgYW5kIHNpbWlsYXIgdGVjaG5vbG9naWVzIChoZXJlaW5hZnRlciBcIlRlY2hub2xvZ2llc1wiKSB0aGF0IGVuYWJsZSB1cyB0byBwcm92aWRlIGFuIG9wdGltaXplZCBvbmxpbmUgZXhwZXJpZW5jZSBhbmQgdGFpbG9yIGNvbnRlbnQgdG8geW91ciBpbnRlcmVzdHMuIEJ5IGNsaWNraW5nIFwiQWNjZXB0IGFsbFwiLCB5b3UgY29uc2VudCB0aGF0IHRoZXNlIFRlY2hub2xvZ2llcyBtYXkgYmUgc3RvcmVkIGFuZCByZWFkIG9uIHlvdXIgZGV2aWNlLiBUaGlzIGluY2x1ZGVzIHRoZSBjcmVhdGlvbiBvZiBwcm9maWxlcyB0byBtYWtlIG91ciBzZXJ2aWNlcyBhcyBlYXN5IHRvIHVzZSBhbmQgYXMgY3VzdG9tZXItc3BlY2lmaWMgYXMgcG9zc2libGUgYW5kIHRvIHN1cHBvcnQgb3VyIG1hcmtldGluZyBhY3Rpdml0aWVzLiBZb3VyIGNvbnNlbnQgaW5jbHVkZXMgdGhlIHRyYW5zZmVyIG9mIGRhdGEgdG8gY291bnRyaWVzIHdpdGggYSBsZXZlbCBvZiBkYXRhIHByb3RlY3Rpb24gbm90IGVxdWl2YWxlbnQgdG8gdGhlIEV1cm9wZWFuIFVuaW9uLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgdGhlIG9wdGlvbiB0byB3aXRoZHJhdyBvciBhZGp1c3QgeW91ciBjb25zZW50LCBwbGVhc2UgcmVmZXIgdG8gXCJDb25zZW50IFNldHRpbmdzXCIgYXQgdGhlIGJvdHRvbSBvZiB0aGUgd2Vic2l0ZS4iLCJBYm91dFRleHQiOiJQcml2YWN5IE5vdGljZSIsIkFib3V0Q29va2llc1RleHQiOiJZb3VyIFByaXZhY3kiLCJDb25maXJtVGV4dCI6IkFjY2VwdCBBbGwiLCJBbGxvd0FsbFRleHQiOiJTYXZlIFNldHRpbmdzIiwiQ29va2llc1VzZWRUZXh0IjoiQ29va2llcyB1c2VkIiwiQ29va2llc0Rlc2NUZXh0IjoiRGVzY3JpcHRpb24iLCJBYm91dExpbmsiOiJodHRwczovL3d3dy5kaGwuY29tL2dsb2JhbC1lbi9ob21lL2Zvb3Rlci9wcml2YWN5LW5vdGljZS5odG1sIiwiQWN0aXZlVGV4dCI6IkFjdGl2ZSIsIkFsd2F5c0FjdGl2ZVRleHQiOiJBbHdheXMgQWN0aXZlIiwiQWx3YXlzSW5hY3RpdmVUZXh0IjoiQWx3YXlzIEluYWN0aXZlIiwiUENTaG93QWx3YXlzQWN0aXZlVG9nZ2xlIjp0cnVlLCJBbGVydE5vdGljZVRleHQiOiJUaGlzIHdlYnNpdGUgdXNlcyBjb29raWVzIGFuZCBzaW1pbGFyIHRlY2hub2xvZ2llcyAoaGVyZWluYWZ0ZXIgXCJUZWNobm9sb2dpZXNcIikgdGhhdCBlbmFibGUgdXMgdG8gcHJvdmlkZSBhbiBvcHRpbWl6ZWQgb25saW5lIGV4cGVyaWVuY2UgYW5kIHRhaWxvciBjb250ZW50IHRvIHlvdXIgaW50ZXJlc3RzLiBCeSBjbGlja2luZyBcIkFjY2VwdCBhbGxcIiwgeW91IGNvbnNlbnQgdGhhdCB0aGVzZSBUZWNobm9sb2dpZXMgbWF5IGJlIHN0b3JlZCBhbmQgcmVhZCBvbiB5b3VyIGRldmljZS4gVGhpcyBpbmNsdWRlcyB0aGUgY3JlYXRpb24gb2YgcHJvZmlsZXMgdG8gbWFrZSBvdXIgc2VydmljZXMgYXMgZWFzeSB0byB1c2UgYW5kIGFzIGN1c3RvbWVyLXNwZWNpZmljIGFzIHBvc3NpYmxlIGFuZCB0byBzdXBwb3J0IG91ciBtYXJrZXRpbmcgYWN0aXZpdGllcy4gWW91ciBjb25zZW50IGluY2x1ZGVzIHRoZSB0cmFuc2ZlciBvZiBkYXRhIHRvIGNvdW50cmllcyB3aXRoIGEgbGV2ZWwgb2YgZGF0YSBwcm90ZWN0aW9uIG5vdCBlcXVpdmFsZW50IHRvIHRoZSBFdXJvcGVhbiBVbmlvbi4gRm9yIG1vcmUgaW5mb3JtYXRpb24gYW5kIHRoZSBvcHRpb24gdG8gd2l0aGRyYXcgb3IgYWRqdXN0IHlvdXIgY29uc2VudCwgcGxlYXNlIHJlZmVyIHRvIFwiQ29uc2VudCBTZXR0aW5nc1wiIGF0IHRoZSBib3R0b20gb2YgdGhlIHdlYnNpdGUuPGEgY2xhc3M9XCJvdC1jb29raWUtcG9saWN5LWxpbmtcIiBocmVmPWh0dHBzOi8vd3d3LmRobC5jb20vZ2xvYmFsLWVuL2hvbWUvZm9vdGVyL3ByaXZhY3ktbm90aWNlLmh0bWw+UHJpdmFjeSBub3RpY2U8L2E+PGEgY2xhc3M9XCJvdC1pbXByaW50LWxpbmtcIiBocmVmPWh0dHBzOi8vd3d3LmRobC5jb20vZ2xvYmFsLWVuL2hvbWUvZm9vdGVyL2xlZ2FsLW5vdGljZS5odG1sPkxlZ2FsIE5vdGljZTwvYT4iLCJBbGVydENsb3NlVGV4dCI6IkNsb3NlIiwiQWxlcnRNb3JlSW5mb1RleHQiOiJDb25zZW50IFNldHRpbmdzIiwiQWxlcnRNb3JlSW5mb1RleHREaWFsb2ciOiJDb25zZW50IFNldHRpbmdzLCBPcGVucyB0aGUgcHJlZmVyZW5jZSBjZW50ZXIgZGlhbG9nIiwiQ29va2llU2V0dGluZ0J1dHRvblRleHQiOiJDb25zZW50IFNldHRpbmdzIiwiQWxlcnRBbGxvd0Nvb2tpZXNUZXh0IjoiQWNjZXB0IEFsbCIsIkNsb3NlU2hvdWxkQWNjZXB0QWxsQ29va2llcyI6ZmFsc2UsIkxhc3RSZWNvbnNlbnREYXRlIjpudWxsLCJCYW5uZXJUaXRsZSI6IkNvbnNlbnQgZm9yIERhdGEgUHJvY2Vzc2luZyIsIkZvcmNlQ29uc2VudCI6dHJ1ZSwiQmFubmVyUHVzaGVzRG93blBhZ2UiOmZhbHNlLCJJbmFjdGl2ZVRleHQiOiJJbmFjdGl2ZSIsIkNvb2tpZXNUZXh0IjoiQ29va2llcyIsIkNhdGVnb3JpZXNUZXh0IjoiQ29va2llIFN1Ymdyb3VwIiwiSXNMaWZlc3BhbkVuYWJsZWQiOmZhbHNlLCJMaWZlc3BhblRleHQiOiJMaWZlc3BhbiIsIlZlbmRvckxldmVsT3B0T3V0IjpmYWxzZSwiSGFzU2NyaXB0QXJjaGl2ZSI6ZmFsc2UsIkJhbm5lclBvc2l0aW9uIjoiYm90dG9tIiwiUHJlZmVyZW5jZUNlbnRlclBvc2l0aW9uIjoiZGVmYXVsdCIsIlByZWZlcmVuY2VDZW50ZXJDb25maXJtVGV4dCI6IkNvbmZpcm0gU2VsZWN0aW9uIiwiVmVuZG9yTGlzdFRleHQiOiJMaXN0IG9mIElBQiBWZW5kb3JzIiwiVGhpcmRQYXJ0eUNvb2tpZUxpc3RUZXh0IjoiRGV0YWlscyIsIlByZWZlcmVuY2VDZW50ZXJNYW5hZ2VQcmVmZXJlbmNlc1RleHQiOiIgTWFuYWdlIENvbnNlbnQgUHJlZmVyZW5jZXMiLCJQcmVmZXJlbmNlQ2VudGVyTW9yZUluZm9TY3JlZW5SZWFkZXIiOiJPcGVucyBpbiBhIG5ldyBUYWIiLCJDb29raWVMaXN0VGl0bGUiOiJDb29raWUgTGlzdCIsIkNvb2tpZUxpc3REZXNjcmlwdGlvbiI6IkEgY29va2llIGlzIGEgc21hbGwgcGllY2Ugb2YgZGF0YSAodGV4dCBmaWxlKSB0aGF0IGEgd2Vic2l0ZSDigJMgd2hlbiB2aXNpdGVkIGJ5IGEgdXNlciDigJMgYXNrcyB5b3VyIGJyb3dzZXIgdG8gc3RvcmUgb24geW91ciBkZXZpY2UgaW4gb3JkZXIgdG8gcmVtZW1iZXIgaW5mb3JtYXRpb24gYWJvdXQgeW91LCBzdWNoIGFzIHlvdXIgbGFuZ3VhZ2UgcHJlZmVyZW5jZSBvciBsb2dpbiBpbmZvcm1hdGlvbi4gVGhvc2UgY29va2llcyBhcmUgc2V0IGJ5IHVzIGFuZCBjYWxsZWQgZmlyc3QtcGFydHkgY29va2llcy4gV2UgYWxzbyB1c2UgdGhpcmQtcGFydHkgY29va2llcyDigJMgd2hpY2ggYXJlIGNvb2tpZXMgZnJvbSBhIGRvbWFpbiBkaWZmZXJlbnQgdGhhbiB0aGUgZG9tYWluIG9mIHRoZSB3ZWJzaXRlIHlvdSBhcmUgdmlzaXRpbmcg4oCTIGZvciBvdXIgYWR2ZXJ0aXNpbmcgYW5kIG1hcmtldGluZyBlZmZvcnRzLiBNb3JlIHNwZWNpZmljYWxseSwgd2UgdXNlIGNvb2tpZXMgYW5kIG90aGVyIHRyYWNraW5nIHRlY2hub2xvZ2llcyBmb3IgdGhlIGZvbGxvd2luZyBwdXJwb3NlczoiLCJHcm91cHMiOlt7IlNob3dJblBvcHVwIjp0cnVlLCJTaG93SW5Qb3B1cE5vbklBQiI6dHJ1ZSwiU2hvd1NES0xpc3RMaW5rIjp0cnVlLCJPcmRlciI6IjEiLCJPcHRhbm9uR3JvdXBJZCI6IkMwMDAxIiwiUGFyZW50IjoiIiwiU2hvd1N1Ymdyb3VwIjp0cnVlLCJTaG93U3ViR3JvdXBEZXNjcmlwdGlvbiI6dHJ1ZSwiU2hvd1N1Ymdyb3VwVG9nZ2xlIjpmYWxzZSwiQWx3YXlzU2hvd0NhdGVnb3J5IjpmYWxzZSwiR3JvdXBEZXNjcmlwdGlvbiI6IlRoZXNlIHRlY2hub2xvZ2llcyBhcmUgdXNlZCB0byBlbnN1cmUgdGhhdCBvdXIgd2Vic2l0ZSBvcGVyYXRlcyBjb3JyZWN0bHkgYW5kIHRoZXkgY2Fubm90IGJlIGRlYWN0aXZhdGVkLiIsIkdyb3VwRGVzY3JpcHRpb25PVFQiOiJUaGVzZSB0ZWNobm9sb2dpZXMgYXJlIHVzZWQgdG8gZW5zdXJlIHRoYXQgb3VyIHdlYnNpdGUgb3BlcmF0ZXMgY29ycmVjdGx5IGFuZCB0aGV5IGNhbm5vdCBiZSBkZWFjdGl2YXRlZC4iLCJHcm91cE5hbWVNb2JpbGUiOiJTdHJpY3RseSBOZWNlc3NhcnkgVGVjaG5vbG9naWVzIiwiR3JvdXBOYW1lT1RUIjoiU3RyaWN0bHkgTmVjZXNzYXJ5IFRlY2hub2xvZ2llcyIsIkdyb3VwTmFtZSI6IlN0cmljdGx5IE5lY2Vzc2FyeSBUZWNobm9sb2dpZXMiLCJJc0lhYlB1cnBvc2UiOmZhbHNlLCJHZW5lcmFsVmVuZG9yc0lkcyI6W10sIkZpcnN0UGFydHlDb29raWVzIjpbeyJpZCI6IjdkZDBmNjk5LTViZDEtNDMzYy1iY2E5LWZhZTI2NjcyOWUzMyIsIk5hbWUiOiJPcHRhbm9uQWxlcnRCb3hDbG9zZWQiLCJIb3N0IjoiZGhsZXhwcmVzcy5iZyIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjM2NCIsImRlc2NyaXB0aW9uIjoiVGhpcyBjb29raWUgaXMgc2V0IGJ5IHdlYnNpdGVzIHVzaW5nIGNlcnRhaW4gdmVyc2lvbnMgb2YgdGhlIGNvb2tpZSBsYXcgY29tcGxpYW5jZSBzb2x1dGlvbiBmcm9tIE9uZVRydXN0LiAgSXQgaXMgc2V0IGFmdGVyIHZpc2l0b3JzIGhhdmUgc2VlbiBhIGNvb2tpZSBpbmZvcm1hdGlvbiBub3RpY2UgYW5kIGluIHNvbWUgY2FzZXMgb25seSB3aGVuIHRoZXkgYWN0aXZlbHkgY2xvc2UgdGhlIG5vdGljZSBkb3duLiAgSXQgZW5hYmxlcyB0aGUgd2Vic2l0ZSBub3QgdG8gc2hvdyB0aGUgbWVzc2FnZSBtb3JlIHRoYW4gb25jZSB0byBhIHVzZXIuICBUaGUgY29va2llIGhhcyBhIG9uZSB5ZWFyIGxpZmVzcGFuIGFuZCBjb250YWlucyBubyBwZXJzb25hbCBpbmZvcm1hdGlvbi4iLCJ0aGlyZFBhcnR5RGVzY3JpcHRpb24iOm51bGwsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiIiLCJmaXJzdFBhcnR5S2V5IjoiQ29va2llT3B0YW5vbkFsZXJ0Qm94Q2xvc2VkIiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX0seyJpZCI6IjNhZjQyNzA5LTgxMDMtNDI2Ni04ZThiLWIwZjM3MmMzMTdjNSIsIk5hbWUiOiJPcHRhbm9uQ29uc2VudCIsIkhvc3QiOiJkaGxleHByZXNzLmJnIiwiSXNTZXNzaW9uIjpmYWxzZSwiTGVuZ3RoIjoiMzY0IiwiZGVzY3JpcHRpb24iOiJUaGlzIGNvb2tpZSBpcyBzZXQgYnkgdGhlIGNvb2tpZSBjb21wbGlhbmNlIHNvbHV0aW9uIGZyb20gT25lVHJ1c3QuIEl0IHN0b3JlcyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY2F0ZWdvcmllcyBvZiBjb29raWVzIHRoZSBzaXRlIHVzZXMgYW5kIHdoZXRoZXIgdmlzaXRvcnMgaGF2ZSBnaXZlbiBvciB3aXRoZHJhd24gY29uc2VudCBmb3IgdGhlIHVzZSBvZiBlYWNoIGNhdGVnb3J5LiBUaGlzIGVuYWJsZXMgc2l0ZSBvd25lcnMgdG8gcHJldmVudCBjb29raWVzIGluIGVhY2ggY2F0ZWdvcnkgZnJvbSBiZWluZyBzZXQgaW4gdGhlIHVzZXJzIGJyb3dzZXIsIHdoZW4gY29uc2VudCBpcyBub3QgZ2l2ZW4uIFRoZSBjb29raWUgaGFzIGEgbm9ybWFsIGxpZmVzcGFuIG9mIG9uZSB5ZWFyLCBzbyB0aGF0IHJldHVybmluZyB2aXNpdG9ycyB0byB0aGUgc2l0ZSB3aWxsIGhhdmUgdGhlaXIgcHJlZmVyZW5jZXMgcmVtZW1iZXJlZC4gSXQgY29udGFpbnMgbm8gaW5mb3JtYXRpb24gdGhhdCBjYW4gaWRlbnRpZnkgdGhlIHNpdGUgdmlzaXRvci4iLCJ0aGlyZFBhcnR5RGVzY3JpcHRpb24iOm51bGwsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiIiLCJmaXJzdFBhcnR5S2V5IjoiQ29va2llT3B0YW5vbkNvbnNlbnQiLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfSx7ImlkIjoiM2UwODZmMWMtY2M0NC00ZTg4LThkOWEtZDU3OGQ4MjExMzE3IiwiTmFtZSI6ImNoZWNrIiwiSG9zdCI6ImRobGV4cHJlc3MuYmciLCJJc1Nlc3Npb24iOmZhbHNlLCJMZW5ndGgiOiIxODI0IiwiZGVzY3JpcHRpb24iOiJTdG9yZSBTZXNzaW9uIGRhdGEgZm9yIHJ1bm5pbmcgdGhlIHdlYnNpdGVcbiIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6bnVsbCwicGF0dGVybktleSI6bnVsbCwidGhpcmRQYXJ0eUtleSI6IiIsImZpcnN0UGFydHlLZXkiOiIiLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfSx7ImlkIjoiYmU5MWY0MTMtOTg3Mi00NmI4LTg3YzMtYzQ4YzIyNGExZTM1IiwiTmFtZSI6InNlc3Npb24iLCJIb3N0IjoiZGhsZXhwcmVzcy5iZyIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjM2NCIsImRlc2NyaXB0aW9uIjoiU3RvcmUgU2Vzc2lvbiBkYXRhIGZvciBydW5uaW5nIHRoZSB3ZWJzaXRlXG4iLCJ0aGlyZFBhcnR5RGVzY3JpcHRpb24iOm51bGwsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiIiLCJmaXJzdFBhcnR5S2V5IjoiIiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX1dLCJIb3N0cyI6W3siSG9zdE5hbWUiOiJleHByZXNzLXJlc291cmNlLmRobC5jb20iLCJEaXNwbGF5TmFtZSI6ImV4cHJlc3MtcmVzb3VyY2UuZGhsLmNvbSIsIkhvc3RJZCI6Ikg0MTIiLCJEZXNjcmlwdGlvbiI6IiIsIlByaXZhY3lQb2xpY3kiOiIiLCJDb29raWVzIjpbeyJpZCI6IjM0YTU0YTZmLTFlYWQtNDIzYi1iMzA3LTFlMmE1NjQ0NmU1ZSIsIk5hbWUiOiJfX2NmX2JtIiwiSG9zdCI6ImV4cHJlc3MtcmVzb3VyY2UuZGhsLmNvbSIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjAiLCJkZXNjcmlwdGlvbiI6IlRoaXMgaXMgYSBDbG91ZEZvdW5kcnkgY29va2llIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjoiVGhpcyBpcyBhIENsb3VkRm91bmRyeSBjb29raWUiLCJwYXR0ZXJuS2V5IjoiX2NmX2JtIiwidGhpcmRQYXJ0eUtleSI6IlBhdHRlcm58X2NmX2JtIiwiZmlyc3RQYXJ0eUtleSI6IkNvb2tpZV9fY2ZfYm0sUGF0dGVybnxfY2ZfYm0iLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfSx7ImlkIjoiMDE5MzNmYzItZWQ5Yy03ZWVlLThhODgtNDNkY2U1ZDgwY2RmIiwiTmFtZSI6IkJJR2lwU2VydmVyeCIsIkhvc3QiOiJleHByZXNzLXJlc291cmNlLmRobC5jb20iLCJJc1Nlc3Npb24iOnRydWUsIkxlbmd0aCI6IjAiLCJkZXNjcmlwdGlvbiI6IlRoaXMgY29va2llIG5hbWUgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBCSUctSVAgcHJvZHVjdCBzdWl0ZSBmcm9tIGNvbXBhbnkgRjUuIFVzdWFsbHkgYXNzb2NpYXRlZCB3aXRoIG1hbmFnaW5nIHNlc3Npb25zIG9uIGxvYWQgYmFsYW5jZWQgc2VydmVycywgdG8gZW5zdXJlIHVzZXIgcmVxdWVzdHMgYXJlIHJvdXRlZCBjb25zaXN0ZW50bHkgdG8gdGhlIGNvcnJlY3Qgc2VydmVyLiBUaGUgY29tbW9uIHJvb3QgaXMgQklHaXBTZXJ2ZXIgbW9zdCBjb21tb25seSBmb2xsb3dlZCBieSBhIGRvbWFpbiBuYW1lLCB1c3VhbGx5IHRoZSBvbmUgdGhhdCBpdCBpcyBob3N0ZWQgb24sIGJ1dCBub3QgYWx3YXlzLiIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IlRoaXMgY29va2llIG5hbWUgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBCSUctSVAgcHJvZHVjdCBzdWl0ZSBmcm9tIGNvbXBhbnkgRjUuIFVzdWFsbHkgYXNzb2NpYXRlZCB3aXRoIG1hbmFnaW5nIHNlc3Npb25zIG9uIGxvYWQgYmFsYW5jZWQgc2VydmVycywgdG8gZW5zdXJlIHVzZXIgcmVxdWVzdHMgYXJlIHJvdXRlZCBjb25zaXN0ZW50bHkgdG8gdGhlIGNvcnJlY3Qgc2VydmVyLiBUaGUgY29tbW9uIHJvb3QgaXMgQklHaXBTZXJ2ZXIgbW9zdCBjb21tb25seSBmb2xsb3dlZCBieSBhIGRvbWFpbiBuYW1lLCB1c3VhbGx5IHRoZSBvbmUgdGhhdCBpdCBpcyBob3N0ZWQgb24sIGJ1dCBub3QgYWx3YXlzLiIsInBhdHRlcm5LZXkiOiJCSUdpcFNlcnZlciIsInRoaXJkUGFydHlLZXkiOiJQYXR0ZXJufEJJR2lwU2VydmVyIiwiZmlyc3RQYXJ0eUtleSI6IlBhdHRlcm58QklHaXBTZXJ2ZXIiLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfV19XSwiUHVycG9zZUlkIjoiMTU2NDI5Q0UtQjI3MC00MkRCLUFDMjQtNTQ0REEzMzkyMDVBIiwiQ3VzdG9tR3JvdXBJZCI6IkMwMDAxIiwiR3JvdXBJZCI6IjgwNjYxNWQxLWEwYjgtNDQyNS1hZjkwLWU3MTFhNjlmZTdjMiIsIlN0YXR1cyI6ImFsd2F5cyBhY3RpdmUiLCJJc0RudEVuYWJsZWQiOmZhbHNlLCJUeXBlIjoiQ09PS0lFIiwiRGVzY3JpcHRpb25MZWdhbCI6IiIsIklhYklsbHVzdHJhdGlvbnMiOltdLCJIYXNMZWdJbnRPcHRPdXQiOmZhbHNlLCJIYXNDb25zZW50T3B0T3V0Ijp0cnVlLCJJc0dwY0VuYWJsZWQiOmZhbHNlLCJWZW5kb3JTZXJ2aWNlcyI6bnVsbCwiVHJhY2tpbmdUZWNoIjpudWxsfSx7IlNob3dJblBvcHVwIjp0cnVlLCJTaG93SW5Qb3B1cE5vbklBQiI6dHJ1ZSwiU2hvd1NES0xpc3RMaW5rIjp0cnVlLCJPcmRlciI6IjMiLCJPcHRhbm9uR3JvdXBJZCI6IkMwMDAyIiwiUGFyZW50IjoiIiwiU2hvd1N1Ymdyb3VwIjp0cnVlLCJTaG93U3ViR3JvdXBEZXNjcmlwdGlvbiI6dHJ1ZSwiU2hvd1N1Ymdyb3VwVG9nZ2xlIjpmYWxzZSwiQWx3YXlzU2hvd0NhdGVnb3J5IjpmYWxzZSwiR3JvdXBEZXNjcmlwdGlvbiI6IlRoZXNlIHRlY2hub2xvZ2llcyBjb2xsZWN0IGluZm9ybWF0aW9uIGFib3V0IHRoZSB3YXkgb3VyIHdlYnNpdGUgaXMgdXNlZCwgc3VjaCBhcyB0aGUgSW50ZXJuZXQgYnJvd3NlciBhbmQgb3BlcmF0aW5nIHN5c3RlbSB1c2VkLCBkb21haW4gbmFtZSBvZiB0aGUgd2Vic2l0ZSBmcm9tIHdoaWNoIHlvdSBhY2Nlc3NlZCBvdXIgc2l0ZSwgbnVtYmVyIG9mIHZpc2l0cywgYXZlcmFnZSB0aW1lIHNwZW50IG9uIHRoZSBzaXRlIGFuZCBwYWdlcyB2aWV3ZWQuIiwiR3JvdXBEZXNjcmlwdGlvbk9UVCI6IlRoZXNlIHRlY2hub2xvZ2llcyBjb2xsZWN0IGluZm9ybWF0aW9uIGFib3V0IHRoZSB3YXkgb3VyIHdlYnNpdGUgaXMgdXNlZCwgc3VjaCBhcyB0aGUgSW50ZXJuZXQgYnJvd3NlciBhbmQgb3BlcmF0aW5nIHN5c3RlbSB1c2VkLCBkb21haW4gbmFtZSBvZiB0aGUgd2Vic2l0ZSBmcm9tIHdoaWNoIHlvdSBhY2Nlc3NlZCBvdXIgc2l0ZSwgbnVtYmVyIG9mIHZpc2l0cywgYXZlcmFnZSB0aW1lIHNwZW50IG9uIHRoZSBzaXRlIGFuZCBwYWdlcyB2aWV3ZWQuIiwiR3JvdXBOYW1lTW9iaWxlIjoiUGVyZm9ybWFuY2UgVGVjaG5vbG9naWVzIiwiR3JvdXBOYW1lT1RUIjoiUGVyZm9ybWFuY2UgVGVjaG5vbG9naWVzIiwiR3JvdXBOYW1lIjoiUGVyZm9ybWFuY2UgVGVjaG5vbG9naWVzIiwiSXNJYWJQdXJwb3NlIjpmYWxzZSwiR2VuZXJhbFZlbmRvcnNJZHMiOltdLCJGaXJzdFBhcnR5Q29va2llcyI6W3siaWQiOiJlNjQ5YzViNC1hOGNjLTQ1ZGEtYWJhMC03OGVhYjhiYWIyNjgiLCJOYW1lIjoiX2dhX3h4eHh4eHh4eHgiLCJIb3N0IjoiZGhsZXhwcmVzcy5iZyIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjM5OSIsImRlc2NyaXB0aW9uIjoiTkFVc2VkIGJ5IEdvb2dsZSBBbmFseXRpY3MgdG8gaWRlbnRpZnkgYW5kIHRyYWNrIGFuIGluZGl2aWR1YWwgc2Vzc2lvbiB3aXRoIHlvdXIgZGV2aWNlLiIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IlVzZWQgYnkgR29vZ2xlIEFuYWx5dGljcyB0byBpZGVudGlmeSBhbmQgdHJhY2sgYW4gaW5kaXZpZHVhbCBzZXNzaW9uIHdpdGggeW91ciBkZXZpY2UuIiwicGF0dGVybktleSI6Il9nYV8iLCJ0aGlyZFBhcnR5S2V5IjoiUGF0dGVybnxfZ2FfIiwiZmlyc3RQYXJ0eUtleSI6IkNvb2tpZV9nYV94eHh4eHh4eHh4LFBhdHRlcm58X2dhXyIsIkR1cmF0aW9uVHlwZSI6MSwiY2F0ZWdvcnkiOm51bGwsImlzVGhpcmRQYXJ0eSI6ZmFsc2V9LHsiaWQiOiIwMTkxYjdiNC0yMjg3LTdkNDYtYjFkYS0wMDY1ZTVjOGNkN2EiLCJOYW1lIjoiX3BrX3NlcyoiLCJIb3N0IjoiZGhsZXhwcmVzcy5iZyIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjAiLCJkZXNjcmlwdGlvbiI6IlRoaXMgY29va2llIG5hbWUgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBQaXdpayBvcGVuIHNvdXJjZSB3ZWIgYW5hbHl0aWNzIHBsYXRmb3JtLiBJdCBpcyB1c2VkIHRvIGhlbHAgd2Vic2l0ZSBvd25lcnMgdHJhY2sgdmlzaXRvciBiZWhhdmlvdXIgYW5kIG1lYXN1cmUgc2l0ZSBwZXJmb3JtYW5jZS4gSXQgaXMgYSBwYXR0ZXJuIHR5cGUgY29va2llLCB3aGVyZSB0aGUgcHJlZml4IF9wa19zZXMgaXMgZm9sbG93ZWQgYnkgYSBzaG9ydCBzZXJpZXMgb2YgbnVtYmVycyBhbmQgbGV0dGVycywgd2hpY2ggaXMgYmVsaWV2ZWQgdG8gYmUgYSByZWZlcmVuY2UgY29kZSBmb3IgdGhlIGRvbWFpbiBzZXR0aW5nIHRoZSBjb29raWUuIEl0IHNob3dzIHRoZSB2aXNpdG9yP3MgYWN0aXZlIHNlc3Npb24uIElmIHRoZSBjb29raWUgZG9lc24/dCBleGlzdCwgaXQgbWVhbnMgdGhhdCB0aGUgc2Vzc2lvbiBlbmRlZCBtb3JlIHRoYW4gMzAgbWludXRlcyBhZ28gYW5kIHdhcyBjb3VudGVkIGluIHRoZSBfcGtfaWQgY29va2llLlRoaXMgY29va2llIG5hbWUgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBQaXdpayBvcGVuIHNvdXJjZSB3ZWIgYW5hbHl0aWNzIHBsYXRmb3JtLiBJdCBpcyB1c2VkIHRvIGhlbHAgd2Vic2l0ZSBvd25lcnMgdHJhY2sgdmlzaXRvciBiZWhhdmlvdXIgYW5kIG1lYXN1cmUgc2l0ZSBwZXJmb3JtYW5jZS4gSXQgaXMgYSBwYXR0ZXJuIHR5cGUgY29va2llLCB3aGVyZSB0aGUgcHJlZml4IF9wa19zZXMgaXMgZm9sbG93ZWQgYnkgYSBzaG9ydCBzZXJpZXMgb2YgbnVtYmVycyBhbmQgbGV0dGVycywgd2hpY2ggaXMgYmVsaWV2ZWQgdG8gYmUgYSByZWZlcmVuY2UgY29kZSBmb3IgdGhlIGRvbWFpbiBzZXR0aW5nIHRoZSBjb29raWUuIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjoiVGhpcyBjb29raWUgbmFtZSBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIFBpd2lrIG9wZW4gc291cmNlIHdlYiBhbmFseXRpY3MgcGxhdGZvcm0uIEl0IGlzIHVzZWQgdG8gaGVscCB3ZWJzaXRlIG93bmVycyB0cmFjayB2aXNpdG9yIGJlaGF2aW91ciBhbmQgbWVhc3VyZSBzaXRlIHBlcmZvcm1hbmNlLiBJdCBpcyBhIHBhdHRlcm4gdHlwZSBjb29raWUsIHdoZXJlIHRoZSBwcmVmaXggX3BrX3NlcyBpcyBmb2xsb3dlZCBieSBhIHNob3J0IHNlcmllcyBvZiBudW1iZXJzIGFuZCBsZXR0ZXJzLCB3aGljaCBpcyBiZWxpZXZlZCB0byBiZSBhIHJlZmVyZW5jZSBjb2RlIGZvciB0aGUgZG9tYWluIHNldHRpbmcgdGhlIGNvb2tpZS4iLCJwYXR0ZXJuS2V5IjoiX3BrX3NlcyIsInRoaXJkUGFydHlLZXkiOiJQYXR0ZXJufF9wa19zZXMiLCJmaXJzdFBhcnR5S2V5IjoiQ29va2llX3BrX3NlcyosUGF0dGVybnxfcGtfc2VzIiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX0seyJpZCI6Ijc5ODc0NzZkLWIzY2EtNDk1Mi1iZmNkLTU2NjI1NmVjYjE1YiIsIk5hbWUiOiJfZ2NseHh4eCIsIkhvc3QiOiJkaGxleHByZXNzLmJnIiwiSXNTZXNzaW9uIjpmYWxzZSwiTGVuZ3RoIjoiODkiLCJkZXNjcmlwdGlvbiI6Ikdvb2dsZSBjb252ZXJzaW9uIHRyYWNraW5nIGNvb2tpZSIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6Ikdvb2dsZSBjb252ZXJzaW9uIHRyYWNraW5nIGNvb2tpZSIsInBhdHRlcm5LZXkiOiJfZ2NseHh4eCIsInRoaXJkUGFydHlLZXkiOiJQYXR0ZXJufF9nY2x4eHh4IiwiZmlyc3RQYXJ0eUtleSI6IlBhdHRlcm58X2djbHh4eHgiLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfSx7ImlkIjoiMDE5MWI3YjQtMjI4Ny03YmU1LWFlOTgtMzUzOTE4ZmU3YTE3IiwiTmFtZSI6Il9wa19pZCoiLCJIb3N0IjoiZGhsZXhwcmVzcy5iZyIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjM5MiIsImRlc2NyaXB0aW9uIjoiVGhpcyBjb29raWUgbmFtZSBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIFBpd2lrIG9wZW4gc291cmNlIHdlYiBhbmFseXRpY3MgcGxhdGZvcm0uIEl0IGlzIHVzZWQgdG8gaGVscCB3ZWJzaXRlIG93bmVycyB0cmFjayB2aXNpdG9yIGJlaGF2aW91ciBhbmQgbWVhc3VyZSBzaXRlIHBlcmZvcm1hbmNlLiBJdCBpcyBhIHBhdHRlcm4gdHlwZSBjb29raWUsIHdoZXJlIHRoZSBwcmVmaXggX3BrX2lkIGlzIGZvbGxvd2VkIGJ5IGEgc2hvcnQgc2VyaWVzIG9mIG51bWJlcnMgYW5kIGxldHRlcnMsIHdoaWNoIGlzIGJlbGlldmVkIHRvIGJlIGEgcmVmZXJlbmNlIGNvZGUgZm9yIHRoZSBkb21haW4gc2V0dGluZyB0aGUgY29va2llLiBJdCBpcyB1c2VkIHRvIHJlY29nbml6ZSB2aXNpdG9ycyBhbmQgaG9sZCB0aGVpciB2YXJpb3VzIHByb3BlcnRpZXMuVGhpcyBjb29raWUgbmFtZSBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIFBpd2lrIG9wZW4gc291cmNlIHdlYiBhbmFseXRpY3MgcGxhdGZvcm0uIEl0IGlzIHVzZWQgdG8gaGVscCB3ZWJzaXRlIG93bmVycyB0cmFjayB2aXNpdG9yIGJlaGF2aW91ciBhbmQgbWVhc3VyZSBzaXRlIHBlcmZvcm1hbmNlLiBJdCBpcyBhIHBhdHRlcm4gdHlwZSBjb29raWUsIHdoZXJlIHRoZSBwcmVmaXggX3BrX2lkIGlzIGZvbGxvd2VkIGJ5IGEgc2hvcnQgc2VyaWVzIG9mIG51bWJlcnMgYW5kIGxldHRlcnMsIHdoaWNoIGlzIGJlbGlldmVkIHRvIGJlIGEgcmVmZXJlbmNlIGNvZGUgZm9yIHRoZSBkb21haW4gc2V0dGluZyB0aGUgY29va2llLiIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IlRoaXMgY29va2llIG5hbWUgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBQaXdpayBvcGVuIHNvdXJjZSB3ZWIgYW5hbHl0aWNzIHBsYXRmb3JtLiBJdCBpcyB1c2VkIHRvIGhlbHAgd2Vic2l0ZSBvd25lcnMgdHJhY2sgdmlzaXRvciBiZWhhdmlvdXIgYW5kIG1lYXN1cmUgc2l0ZSBwZXJmb3JtYW5jZS4gSXQgaXMgYSBwYXR0ZXJuIHR5cGUgY29va2llLCB3aGVyZSB0aGUgcHJlZml4IF9wa19pZCBpcyBmb2xsb3dlZCBieSBhIHNob3J0IHNlcmllcyBvZiBudW1iZXJzIGFuZCBsZXR0ZXJzLCB3aGljaCBpcyBiZWxpZXZlZCB0byBiZSBhIHJlZmVyZW5jZSBjb2RlIGZvciB0aGUgZG9tYWluIHNldHRpbmcgdGhlIGNvb2tpZS4iLCJwYXR0ZXJuS2V5IjoiX3BrX2lkIiwidGhpcmRQYXJ0eUtleSI6IlBhdHRlcm58X3BrX2lkIiwiZmlyc3RQYXJ0eUtleSI6IkNvb2tpZV9wa19pZCosUGF0dGVybnxfcGtfaWQiLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfV0sIkhvc3RzIjpbXSwiUHVycG9zZUlkIjoiQTIzODQ5NzQtNjAyNS00RUU4LUJDQ0UtREZDNDI5MUUzQURFIiwiQ3VzdG9tR3JvdXBJZCI6IkMwMDAyIiwiR3JvdXBJZCI6IjBhMTExZTFkLTI0Y2YtNGY1My04Zjg5LTRhYTkxYzNhMzg4ZCIsIlN0YXR1cyI6ImluYWN0aXZlIiwiSXNEbnRFbmFibGVkIjpmYWxzZSwiVHlwZSI6IkNPT0tJRSIsIkRlc2NyaXB0aW9uTGVnYWwiOiIiLCJJYWJJbGx1c3RyYXRpb25zIjpbXSwiSGFzTGVnSW50T3B0T3V0IjpmYWxzZSwiSGFzQ29uc2VudE9wdE91dCI6dHJ1ZSwiSXNHcGNFbmFibGVkIjpmYWxzZSwiVmVuZG9yU2VydmljZXMiOm51bGwsIlRyYWNraW5nVGVjaCI6bnVsbH0seyJTaG93SW5Qb3B1cCI6dHJ1ZSwiU2hvd0luUG9wdXBOb25JQUIiOnRydWUsIlNob3dTREtMaXN0TGluayI6dHJ1ZSwiT3JkZXIiOiI0IiwiT3B0YW5vbkdyb3VwSWQiOiJDMDAwMyIsIlBhcmVudCI6IiIsIlNob3dTdWJncm91cCI6dHJ1ZSwiU2hvd1N1Ykdyb3VwRGVzY3JpcHRpb24iOnRydWUsIlNob3dTdWJncm91cFRvZ2dsZSI6ZmFsc2UsIkFsd2F5c1Nob3dDYXRlZ29yeSI6ZmFsc2UsIkdyb3VwRGVzY3JpcHRpb24iOiJUaGVzZSB0ZWNobm9sb2dpZXMgYWxsb3cgdGhlIHdlYnNpdGUgdG8gcmVtZW1iZXIgY2hvaWNlcyB5b3UgbWFrZSBhbmQgcHJvdmlkZSBlbmhhbmNlZCwgbW9yZSBwZXJzb25hbCBmZWF0dXJlcy4gRm9yIGV4YW1wbGUsIHRoZXNlIHRlY2hub2xvZ2llcyBjYW4gYmUgdXNlZCB0byByZW1lbWJlciBhbmQgc3RvcmUgdGhlIGxhc3QgdHJhY2tpbmcgbnVtYmVyIHRoYXQgeW91IGVudGVyZWQgd2hlbiB1c2luZyBhIHRyYWNraW5nIGFwcGxpY2F0aW9uLiBJbmZvcm1hdGlvbiB0aGVzZSB0ZWNobm9sb2dpZXMgY29sbGVjdCBtYXkgYmUgYW5vbnltaXplZCBhbmQgdGhleSBjYW5ub3QgdHJhY2sgeW91ciBicm93c2luZyBhY3Rpdml0eSBvbiBvdGhlciB3ZWJzaXRlcy4iLCJHcm91cERlc2NyaXB0aW9uT1RUIjoiVGhlc2UgdGVjaG5vbG9naWVzIGFsbG93IHRoZSB3ZWJzaXRlIHRvIHJlbWVtYmVyIGNob2ljZXMgeW91IG1ha2UgYW5kIHByb3ZpZGUgZW5oYW5jZWQsIG1vcmUgcGVyc29uYWwgZmVhdHVyZXMuIEZvciBleGFtcGxlLCB0aGVzZSB0ZWNobm9sb2dpZXMgY2FuIGJlIHVzZWQgdG8gcmVtZW1iZXIgYW5kIHN0b3JlIHRoZSBsYXN0IHRyYWNraW5nIG51bWJlciB0aGF0IHlvdSBlbnRlcmVkIHdoZW4gdXNpbmcgYSB0cmFja2luZyBhcHBsaWNhdGlvbi4gSW5mb3JtYXRpb24gdGhlc2UgdGVjaG5vbG9naWVzIGNvbGxlY3QgbWF5IGJlIGFub255bWl6ZWQgYW5kIHRoZXkgY2Fubm90IHRyYWNrIHlvdXIgYnJvd3NpbmcgYWN0aXZpdHkgb24gb3RoZXIgd2Vic2l0ZXMuIiwiR3JvdXBOYW1lTW9iaWxlIjoiRnVuY3Rpb25hbCBUZWNobm9sb2dpZXMiLCJHcm91cE5hbWVPVFQiOiJGdW5jdGlvbmFsIFRlY2hub2xvZ2llcyIsIkdyb3VwTmFtZSI6IkZ1bmN0aW9uYWwgVGVjaG5vbG9naWVzIiwiSXNJYWJQdXJwb3NlIjpmYWxzZSwiR2VuZXJhbFZlbmRvcnNJZHMiOltdLCJGaXJzdFBhcnR5Q29va2llcyI6W10sIkhvc3RzIjpbXSwiUHVycG9zZUlkIjoiMEE0NjZDNTEtREI0NC00MzA2LThCQUItQTFGMDI5NTQxMjdBIiwiQ3VzdG9tR3JvdXBJZCI6IkMwMDAzIiwiR3JvdXBJZCI6ImZjNzc5YTFkLWNjMTQtNGQ0ZS1iMDUzLWMwNGQwODQ0YWM3OSIsIlN0YXR1cyI6ImluYWN0aXZlIiwiSXNEbnRFbmFibGVkIjpmYWxzZSwiVHlwZSI6IkNPT0tJRSIsIkRlc2NyaXB0aW9uTGVnYWwiOiIiLCJJYWJJbGx1c3RyYXRpb25zIjpbXSwiSGFzTGVnSW50T3B0T3V0IjpmYWxzZSwiSGFzQ29uc2VudE9wdE91dCI6dHJ1ZSwiSXNHcGNFbmFibGVkIjpmYWxzZSwiVmVuZG9yU2VydmljZXMiOm51bGwsIlRyYWNraW5nVGVjaCI6bnVsbH0seyJTaG93SW5Qb3B1cCI6dHJ1ZSwiU2hvd0luUG9wdXBOb25JQUIiOnRydWUsIlNob3dTREtMaXN0TGluayI6dHJ1ZSwiT3JkZXIiOiI1IiwiT3B0YW5vbkdyb3VwSWQiOiJDMDAwNCIsIlBhcmVudCI6IiIsIlNob3dTdWJncm91cCI6dHJ1ZSwiU2hvd1N1Ykdyb3VwRGVzY3JpcHRpb24iOnRydWUsIlNob3dTdWJncm91cFRvZ2dsZSI6ZmFsc2UsIkFsd2F5c1Nob3dDYXRlZ29yeSI6ZmFsc2UsIkdyb3VwRGVzY3JpcHRpb24iOiJXZSB1c2UgYW5hbHl0aWNzIHRlY2hub2xvZ2llcyB0byBpbXByb3ZlIHRoZSBxdWFsaXR5IG9mIG91ciB3ZWJzaXRlIGFuZCBpdHMgY29udGVudCwgYW5kIHRvIGVuc3VyZSB0aGF0IG91ciBwYXJ0bmVyc+KAmSBlbWJlZGRlZCBzZXJ2aWNlcyB3b3JrIHByb3Blcmx5LiAiLCJHcm91cERlc2NyaXB0aW9uT1RUIjoiV2UgdXNlIGFuYWx5dGljcyB0ZWNobm9sb2dpZXMgdG8gaW1wcm92ZSB0aGUgcXVhbGl0eSBvZiBvdXIgd2Vic2l0ZSBhbmQgaXRzIGNvbnRlbnQsIGFuZCB0byBlbnN1cmUgdGhhdCBvdXIgcGFydG5lcnPigJkgZW1iZWRkZWQgc2VydmljZXMgd29yayBwcm9wZXJseS4gIiwiR3JvdXBOYW1lTW9iaWxlIjoiQW5hbHl0aWNzIFRlY2hub2xvZ2llcyIsIkdyb3VwTmFtZU9UVCI6IkFuYWx5dGljcyBUZWNobm9sb2dpZXMiLCJHcm91cE5hbWUiOiJBbmFseXRpY3MgVGVjaG5vbG9naWVzIiwiSXNJYWJQdXJwb3NlIjpmYWxzZSwiR2VuZXJhbFZlbmRvcnNJZHMiOltdLCJGaXJzdFBhcnR5Q29va2llcyI6W3siaWQiOiI3MzhjYWNlZC05NTA1LTQ5MzUtYjAxOS05ZTM3MzFiYzViZGEiLCJOYW1lIjoiX2dhIiwiSG9zdCI6ImRobGV4cHJlc3MuYmciLCJJc1Nlc3Npb24iOmZhbHNlLCJMZW5ndGgiOiIzOTkiLCJkZXNjcmlwdGlvbiI6IlRoaXMgY29va2llIG5hbWUgaXMgYXNzb2NpYXRlZCB3aXRoIEdvb2dsZSBVbml2ZXJzYWwgQW5hbHl0aWNzIC0gd2hpY2ggaXMgYSBzaWduaWZpY2FudCB1cGRhdGUgdG8gR29vZ2xlJ3MgbW9yZSBjb21tb25seSB1c2VkIGFuYWx5dGljcyBzZXJ2aWNlLiBUaGlzIGNvb2tpZSBpcyB1c2VkIHRvIGRpc3Rpbmd1aXNoIHVuaXF1ZSB1c2VycyBieSBhc3NpZ25pbmcgYSByYW5kb21seSBnZW5lcmF0ZWQgbnVtYmVyIGFzIGEgY2xpZW50IGlkZW50aWZpZXIuIEl0IGlzIGluY2x1ZGVkIGluIGVhY2ggcGFnZSByZXF1ZXN0IGluIGEgc2l0ZSBhbmQgdXNlZCB0byBjYWxjdWxhdGUgdmlzaXRvciwgc2Vzc2lvbiBhbmQgY2FtcGFpZ24gZGF0YSBmb3IgdGhlIHNpdGVzIGFuYWx5dGljcyByZXBvcnRzLiAgQnkgZGVmYXVsdCBpdCBpcyBzZXQgdG8gZXhwaXJlIGFmdGVyIDIgeWVhcnMsIGFsdGhvdWdoIHRoaXMgaXMgY3VzdG9taXNhYmxlIGJ5IHdlYnNpdGUgb3duZXJzLlxuIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjoiIiwicGF0dGVybktleSI6bnVsbCwidGhpcmRQYXJ0eUtleSI6bnVsbCwiZmlyc3RQYXJ0eUtleSI6bnVsbCwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX0seyJpZCI6IjAxOTFiN2I0LTIyODctNzZlOS1hN2I3LWJhNzNiNzMzNjBmNSIsIk5hbWUiOiJfbGZhIiwiSG9zdCI6ImRobGV4cHJlc3MuYmciLCJJc1Nlc3Npb24iOmZhbHNlLCJMZW5ndGgiOiIzOTkiLCJkZXNjcmlwdGlvbiI6IlRoaXMgY29va2llIGlzIHVzZWQgYnkgTGVhZGZlZWRlciB0byB0cmFjayB2aXNpdG9yIGJlaGF2aW9yIG9uIHRoZSB3ZWJzaXRlIHRvIGJ1aWxkIHZpc2l0b3IgcHJvZmlsZXMgZm9yIGltcHJvdmluZyBzaXRlIGFuYWx5dGljcyBhbmQgbWFya2V0aW5nIGVmZmVjdGl2ZW5lc3MuIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjpudWxsLCJwYXR0ZXJuS2V5IjpudWxsLCJ0aGlyZFBhcnR5S2V5IjoiIiwiZmlyc3RQYXJ0eUtleSI6IkNvb2tpZV9sZmEiLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfSx7ImlkIjoiZjcwMGIwNTgtMWEzNC00ZGNiLWFmZDItNDA0MDU0ZTdkZGMyIiwiTmFtZSI6Il9mYnAiLCJIb3N0IjoiZGhsZXhwcmVzcy5iZyIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6Ijg5IiwiZGVzY3JpcHRpb24iOiJVc2VkIGJ5IEZhY2Vib29rIHRvIGRlbGl2ZXIgYSBzZXJpZXMgb2YgYWR2ZXJ0aXNlbWVudCBwcm9kdWN0cyBzdWNoIGFzIHJlYWwgdGltZSBiaWRkaW5nIGZyb20gdGhpcmQgcGFydHkgYWR2ZXJ0aXNlcnMiLCJ0aGlyZFBhcnR5RGVzY3JpcHRpb24iOm51bGwsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiIiLCJmaXJzdFBhcnR5S2V5IjoiQ29va2llX2ZicCIsIkR1cmF0aW9uVHlwZSI6MSwiY2F0ZWdvcnkiOm51bGwsImlzVGhpcmRQYXJ0eSI6ZmFsc2V9LHsiaWQiOiIwMTkyN2JlYi0yZjRjLTc2OTgtYmI5OC1iNGQxODgzMjY1MTkiLCJOYW1lIjoiX2xmYV90ZXN0X2Nvb2tpZV9zdG9yZWQiLCJIb3N0IjoiZGhsZXhwcmVzcy5iZyIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjAiLCJkZXNjcmlwdGlvbiI6IlRoaXMgY29va2llIG5hbWUgaXMgYXNzb2NpYXRlZCB3aXRoIExlYWRmZWVkZXIgYW5kIGlzIHVzZWQgaW4gY29udGV4dCB3aXRoIEFjY291bnQtQmFzZWQtTWFya2V0aW5nIChBQk0pIHRvIHJlZ2lzdGVyIGRhdGEgc3VjaCBhcyBJUC1hZGRyZXNzZXMsIHRpbWUgc3BlbnQgb24gdGhlIHdlYnNpdGUsIGFuZCBwYWdlIHJlcXVlc3RzIGZvciB0aGUgdmlzaXQuIEl0IGlzIHVzZWQgZm9yIHJldGFyZ2V0aW5nIG9mIG11bHRpcGxlIHVzZXJzIHJvb3RpbmcgZnJvbSB0aGUgc2FtZSBJUC1hZGRyZXNzZXMuIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjpudWxsLCJwYXR0ZXJuS2V5IjpudWxsLCJ0aGlyZFBhcnR5S2V5IjoiIiwiZmlyc3RQYXJ0eUtleSI6IkNvb2tpZV9sZmFfdGVzdF9jb29raWVfc3RvcmVkIiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX0seyJpZCI6IjAxOTFiN2I0LTIyODctNzI3Ni05NzBhLWYwYTMzYThmMGE0OSIsIk5hbWUiOiJfZ2NsX2F1IiwiSG9zdCI6ImRobGV4cHJlc3MuYmciLCJJc1Nlc3Npb24iOmZhbHNlLCJMZW5ndGgiOiI4OSIsImRlc2NyaXB0aW9uIjoiVXNlZCBieSBHb29nbGUgQWRTZW5zZSBmb3IgZXhwZXJpbWVudGluZyB3aXRoIGFkdmVydGlzZW1lbnQgZWZmaWNpZW5jeSBhY3Jvc3Mgd2Vic2l0ZXMgdXNpbmcgdGhlaXIgc2VydmljZXMiLCJ0aGlyZFBhcnR5RGVzY3JpcHRpb24iOm51bGwsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiIiLCJmaXJzdFBhcnR5S2V5IjoiQ29va2llX2djbF9hdSIsIkR1cmF0aW9uVHlwZSI6MSwiY2F0ZWdvcnkiOm51bGwsImlzVGhpcmRQYXJ0eSI6ZmFsc2V9XSwiSG9zdHMiOlt7Ikhvc3ROYW1lIjoiZG91YmxlY2xpY2submV0IiwiRGlzcGxheU5hbWUiOiJkb3VibGVjbGljay5uZXQiLCJIb3N0SWQiOiJIMjEiLCJEZXNjcmlwdGlvbiI6IiIsIlByaXZhY3lQb2xpY3kiOiIiLCJDb29raWVzIjpbeyJpZCI6IjAxOTFiN2I0LTIyODctN2ZjNy1hYzM4LTk0YjY0ZGZmNTNjNSIsIk5hbWUiOiJyZWNlaXZlLWNvb2tpZS1kZXByZWNhdGlvbiIsIkhvc3QiOiJkb3VibGVjbGljay5uZXQiLCJJc1Nlc3Npb24iOmZhbHNlLCJMZW5ndGgiOiIxNzkiLCJkZXNjcmlwdGlvbiI6IlRoaXMgZG9tYWluIGlzIG93bmVkIGJ5IERvdWJsZWNsaWNrIChHb29nbGUpLiBUaGUgbWFpbiBidXNpbmVzcyBhY3Rpdml0eSBpczogRG91YmxlY2xpY2sgaXMgR29vZ2xlcyByZWFsIHRpbWUgYmlkZGluZyBhZHZlcnRpc2luZyBleGNoYW5nZSIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IlRoaXMgZG9tYWluIGlzIG93bmVkIGJ5IERvdWJsZWNsaWNrIChHb29nbGUpLiBUaGUgbWFpbiBidXNpbmVzcyBhY3Rpdml0eSBpczogRG91YmxlY2xpY2sgaXMgR29vZ2xlcyByZWFsIHRpbWUgYmlkZGluZyBhZHZlcnRpc2luZyBleGNoYW5nZSIsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiJDb29raWV8ZG91YmxlY2xpY2submV0IiwiZmlyc3RQYXJ0eUtleSI6bnVsbCwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX1dfSx7Ikhvc3ROYW1lIjoic2MubGZlZWRlci5jb20iLCJEaXNwbGF5TmFtZSI6InNjLmxmZWVkZXIuY29tIiwiSG9zdElkIjoiSDM2NCIsIkRlc2NyaXB0aW9uIjoiIiwiUHJpdmFjeVBvbGljeSI6IiIsIkNvb2tpZXMiOlt7ImlkIjoiMTVhYjM1MGEtNzkxYy00MTVkLWE1OWEtNGQxMGE2NGQzMTkwIiwiTmFtZSI6Il9sZmFfdGVzdF9jb29raWVfc3RvcmVkIiwiSG9zdCI6InNjLmxmZWVkZXIuY29tIiwiSXNTZXNzaW9uIjpmYWxzZSwiTGVuZ3RoIjoiMCIsImRlc2NyaXB0aW9uIjoiVGhpcyBkb21haW4gaXMgb3duZWQgYnkgc2MubGZlZWRlci5jb20gd2hpY2ggcHJvdmlkZXMgc2VydmljZXMgZm9yIEFjY291bnQtQmFzZWQgTWFya2V0aW5nIChBQk0pIGJ5IHJlZ2lzdGVyaW5nIGRhdGEgc3VjaCBhcyBJUC1hZGRyZXNzZXMsIHRpbWUgc3BlbnQgb24gdGhlIHdlYnNpdGUsIGFuZCBwYWdlIHJlcXVlc3RzIGZvciByZXRhcmdldGluZyBwdXJwb3Nlcy4iLCJ0aGlyZFBhcnR5RGVzY3JpcHRpb24iOiJUaGlzIGRvbWFpbiBpcyBvd25lZCBieSBzYy5sZmVlZGVyLmNvbSB3aGljaCBwcm92aWRlcyBzZXJ2aWNlcyBmb3IgQWNjb3VudC1CYXNlZCBNYXJrZXRpbmcgKEFCTSkgYnkgcmVnaXN0ZXJpbmcgZGF0YSBzdWNoIGFzIElQLWFkZHJlc3NlcywgdGltZSBzcGVudCBvbiB0aGUgd2Vic2l0ZSwgYW5kIHBhZ2UgcmVxdWVzdHMgZm9yIHJldGFyZ2V0aW5nIHB1cnBvc2VzLiIsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiJDb29raWV8c2MubGZlZWRlci5jb20iLCJmaXJzdFBhcnR5S2V5IjoiQ29va2llX2xmYV90ZXN0X2Nvb2tpZV9zdG9yZWQiLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfV19LHsiSG9zdE5hbWUiOiJ5b3V0dWJlLmNvbSIsIkRpc3BsYXlOYW1lIjoieW91dHViZS5jb20iLCJIb3N0SWQiOiJIMzgiLCJEZXNjcmlwdGlvbiI6IiIsIlByaXZhY3lQb2xpY3kiOiIiLCJDb29raWVzIjpbeyJpZCI6IjljZWFlNzFjLTQxNDUtNDk1NS04N2I2LTFmMDA4YmM5MjM4ZSIsIk5hbWUiOiJWSVNJVE9SX1BSSVZBQ1lfTUVUQURBVEEiLCJIb3N0IjoieW91dHViZS5jb20iLCJJc1Nlc3Npb24iOmZhbHNlLCJMZW5ndGgiOiIxNzkiLCJkZXNjcmlwdGlvbiI6IllvdVR1YmUgaXMgYSBHb29nbGUgb3duZWQgcGxhdGZvcm0gZm9yIGhvc3RpbmcgYW5kIHNoYXJpbmcgdmlkZW9zLiBZb3VUdWJlIGNvbGxlY3RzIHVzZXIgZGF0YSB0aHJvdWdoIHZpZGVvcyBlbWJlZGRlZCBpbiB3ZWJzaXRlcywgd2hpY2ggaXMgYWdncmVnYXRlZCB3aXRoIHByb2ZpbGUgZGF0YSBmcm9tIG90aGVyIEdvb2dsZSBzZXJ2aWNlcyBpbiBvcmRlciB0byBkaXNwbGF5IHRhcmdldGVkIGFkdmVydGlzaW5nIHRvIHdlYiB2aXNpdG9ycyBhY3Jvc3MgYSBicm9hZCByYW5nZSBvZiB0aGVpciBvd24gYW5kIG90aGVyIHdlYnNpdGVzLiIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IllvdVR1YmUgaXMgYSBHb29nbGUgb3duZWQgcGxhdGZvcm0gZm9yIGhvc3RpbmcgYW5kIHNoYXJpbmcgdmlkZW9zLiBZb3VUdWJlIGNvbGxlY3RzIHVzZXIgZGF0YSB0aHJvdWdoIHZpZGVvcyBlbWJlZGRlZCBpbiB3ZWJzaXRlcywgd2hpY2ggaXMgYWdncmVnYXRlZCB3aXRoIHByb2ZpbGUgZGF0YSBmcm9tIG90aGVyIEdvb2dsZSBzZXJ2aWNlcyBpbiBvcmRlciB0byBkaXNwbGF5IHRhcmdldGVkIGFkdmVydGlzaW5nIHRvIHdlYiB2aXNpdG9ycyBhY3Jvc3MgYSBicm9hZCByYW5nZSBvZiB0aGVpciBvd24gYW5kIG90aGVyIHdlYnNpdGVzLiIsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiJDb29raWV8eW91dHViZS5jb20iLCJmaXJzdFBhcnR5S2V5IjoiQ29va2llVklTSVRPUl9QUklWQUNZX01FVEFEQVRBIiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX0seyJpZCI6ImE4YjkwMTI4LTE1NDYtNDMwNy05MDA5LTVkZDA2MmM3MDc5MSIsIk5hbWUiOiJWSVNJVE9SX0lORk8xX0xJVkUiLCJIb3N0IjoieW91dHViZS5jb20iLCJJc1Nlc3Npb24iOmZhbHNlLCJMZW5ndGgiOiIxODAiLCJkZXNjcmlwdGlvbiI6IlRoaXMgY29va2llIGlzIHVzZWQgYXMgYSB1bmlxdWUgaWRlbnRpZmllciB0byB0cmFjayB2aWV3aW5nIG9mIHZpZGVvcyBGb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBHb29nbGUmIzM5O3MgcHJvY2Vzc2luZyBvZiB5b3VyIHBlcnNvbmFsIGRhdGEsIHBsZWFzZSBjb25zdWx0IEdvb2dsZSYjMzk7cyA8YSBocmVmPVwiaHR0cHM6Ly9idXNpbmVzcy5zYWZldHkuZ29vZ2xlL3ByaXZhY3kvXCIgcmVsPVwibm9mb2xsb3dcIj5Qcml2YWN5ICZhbXA7IFRlcm1zPC9hPiBzaXRlLiIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IlRoaXMgY29va2llIGlzIHVzZWQgYXMgYSB1bmlxdWUgaWRlbnRpZmllciB0byB0cmFjayB2aWV3aW5nIG9mIHZpZGVvcyBGb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBHb29nbGUmIzM5O3MgcHJvY2Vzc2luZyBvZiB5b3VyIHBlcnNvbmFsIGRhdGEsIHBsZWFzZSBjb25zdWx0IEdvb2dsZSYjMzk7cyA8YSBocmVmPVwiaHR0cHM6Ly9idXNpbmVzcy5zYWZldHkuZ29vZ2xlL3ByaXZhY3kvXCIgcmVsPVwibm9mb2xsb3dcIj5Qcml2YWN5ICZhbXA7IFRlcm1zPC9hPiBzaXRlLiIsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiJDb29raWVWSVNJVE9SX0lORk8xX0xJVkV8eW91dHViZS5jb20iLCJmaXJzdFBhcnR5S2V5IjoiQ29va2llVklTSVRPUl9JTkZPMV9MSVZFIiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX0seyJpZCI6IjAxOTI3Mjg0LWE5MDItNzA2OC04NDAzLWVhYzQxMDA0Mzg1YiIsIk5hbWUiOiJfX1NlY3VyZS14eHh4eHh4IiwiSG9zdCI6InlvdXR1YmUuY29tIiwiSXNTZXNzaW9uIjpmYWxzZSwiTGVuZ3RoIjoiMCIsImRlc2NyaXB0aW9uIjoiWW91VHViZSBpcyBhIEdvb2dsZSBvd25lZCBwbGF0Zm9ybSBmb3IgaG9zdGluZyBhbmQgc2hhcmluZyB2aWRlb3MuIFlvdVR1YmUgY29sbGVjdHMgdXNlciBkYXRhIHRocm91Z2ggdmlkZW9zIGVtYmVkZGVkIGluIHdlYnNpdGVzLCB3aGljaCBpcyBhZ2dyZWdhdGVkIHdpdGggcHJvZmlsZSBkYXRhIGZyb20gb3RoZXIgR29vZ2xlIHNlcnZpY2VzIGluIG9yZGVyIHRvIGRpc3BsYXkgdGFyZ2V0ZWQgYWR2ZXJ0aXNpbmcgdG8gd2ViIHZpc2l0b3JzIGFjcm9zcyBhIGJyb2FkIHJhbmdlIG9mIHRoZWlyIG93biBhbmQgb3RoZXIgd2Vic2l0ZXMuIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjoiWW91VHViZSBpcyBhIEdvb2dsZSBvd25lZCBwbGF0Zm9ybSBmb3IgaG9zdGluZyBhbmQgc2hhcmluZyB2aWRlb3MuIFlvdVR1YmUgY29sbGVjdHMgdXNlciBkYXRhIHRocm91Z2ggdmlkZW9zIGVtYmVkZGVkIGluIHdlYnNpdGVzLCB3aGljaCBpcyBhZ2dyZWdhdGVkIHdpdGggcHJvZmlsZSBkYXRhIGZyb20gb3RoZXIgR29vZ2xlIHNlcnZpY2VzIGluIG9yZGVyIHRvIGRpc3BsYXkgdGFyZ2V0ZWQgYWR2ZXJ0aXNpbmcgdG8gd2ViIHZpc2l0b3JzIGFjcm9zcyBhIGJyb2FkIHJhbmdlIG9mIHRoZWlyIG93biBhbmQgb3RoZXIgd2Vic2l0ZXMuIiwicGF0dGVybktleSI6bnVsbCwidGhpcmRQYXJ0eUtleSI6IkNvb2tpZXx5b3V0dWJlLmNvbSIsImZpcnN0UGFydHlLZXkiOiJDb29raWVfX1NlY3VyZS14eHh4eHh4IiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX1dfV0sIlB1cnBvc2VJZCI6IkI4OENEMjdCLTNEMzktNDk1Ri1BNzNDLTQwQTBDRjdDRjZDMyIsIkN1c3RvbUdyb3VwSWQiOiJDMDAwNCIsIkdyb3VwSWQiOiIwODk3YzQ5Yi0yMTA1LTQ0MWEtOWM3My0wZDA4YzNmM2VjZTAiLCJTdGF0dXMiOiJpbmFjdGl2ZSIsIklzRG50RW5hYmxlZCI6dHJ1ZSwiVHlwZSI6IkNPT0tJRSIsIkRlc2NyaXB0aW9uTGVnYWwiOiIiLCJJYWJJbGx1c3RyYXRpb25zIjpbXSwiSGFzTGVnSW50T3B0T3V0IjpmYWxzZSwiSGFzQ29uc2VudE9wdE91dCI6dHJ1ZSwiSXNHcGNFbmFibGVkIjp0cnVlLCJWZW5kb3JTZXJ2aWNlcyI6bnVsbCwiVHJhY2tpbmdUZWNoIjpudWxsfSx7IlNob3dJblBvcHVwIjp0cnVlLCJTaG93SW5Qb3B1cE5vbklBQiI6dHJ1ZSwiU2hvd1NES0xpc3RMaW5rIjp0cnVlLCJPcmRlciI6IjYiLCJPcHRhbm9uR3JvdXBJZCI6IkMwMDA1IiwiUGFyZW50IjoiIiwiU2hvd1N1Ymdyb3VwIjp0cnVlLCJTaG93U3ViR3JvdXBEZXNjcmlwdGlvbiI6dHJ1ZSwiU2hvd1N1Ymdyb3VwVG9nZ2xlIjpmYWxzZSwiQWx3YXlzU2hvd0NhdGVnb3J5IjpmYWxzZSwiR3JvdXBEZXNjcmlwdGlvbiI6IlRoZXNlIHRlY2hub2xvZ2llcyBhcmUgc2V0IGJ5IGEgcmFuZ2Ugb2Ygc29jaWFsIG1lZGlhIHNlcnZpY2VzIHRoYXQgd2UgaGF2ZSBhZGRlZCB0byB0aGUgc2l0ZSB0byBlbmFibGUgeW91IHRvIHNoYXJlIG91ciBjb250ZW50IHdpdGggeW91ciBmcmllbmRzIGFuZCBuZXR3b3Jrcy4gVGhleSBhcmUgY2FwYWJsZSBvZiB0cmFja2luZyB5b3VyIGJyb3dzZXIgYWNyb3NzIG90aGVyIHNpdGVzIGFuZCBidWlsZGluZyB1cCBhIHByb2ZpbGUgb2YgeW91ciBpbnRlcmVzdHMuIFRoaXMgbWF5IGltcGFjdCB0aGUgY29udGVudCBhbmQgbWVzc2FnZXMgeW91IHNlZSBvbiBvdGhlciB3ZWJzaXRlcyB5b3UgdmlzaXQuIElmIHlvdSBkbyBub3QgYWxsb3cgdGhlc2UgdGVjaG5vbG9naWVzIHlvdSBtYXkgbm90IGJlIGFibGUgdG8gdXNlIG9yIHNlZSB0aGVzZSBzaGFyaW5nIHRvb2xzLiIsIkdyb3VwRGVzY3JpcHRpb25PVFQiOiJUaGVzZSB0ZWNobm9sb2dpZXMgYXJlIHNldCBieSBhIHJhbmdlIG9mIHNvY2lhbCBtZWRpYSBzZXJ2aWNlcyB0aGF0IHdlIGhhdmUgYWRkZWQgdG8gdGhlIHNpdGUgdG8gZW5hYmxlIHlvdSB0byBzaGFyZSBvdXIgY29udGVudCB3aXRoIHlvdXIgZnJpZW5kcyBhbmQgbmV0d29ya3MuIFRoZXkgYXJlIGNhcGFibGUgb2YgdHJhY2tpbmcgeW91ciBicm93c2VyIGFjcm9zcyBvdGhlciBzaXRlcyBhbmQgYnVpbGRpbmcgdXAgYSBwcm9maWxlIG9mIHlvdXIgaW50ZXJlc3RzLiBUaGlzIG1heSBpbXBhY3QgdGhlIGNvbnRlbnQgYW5kIG1lc3NhZ2VzIHlvdSBzZWUgb24gb3RoZXIgd2Vic2l0ZXMgeW91IHZpc2l0LiBJZiB5b3UgZG8gbm90IGFsbG93IHRoZXNlIHRlY2hub2xvZ2llcyB5b3UgbWF5IG5vdCBiZSBhYmxlIHRvIHVzZSBvciBzZWUgdGhlc2Ugc2hhcmluZyB0b29scy4iLCJHcm91cE5hbWVNb2JpbGUiOiJTb2NpYWwgTWVkaWEgVGVjaG5vbG9naWVzICIsIkdyb3VwTmFtZU9UVCI6IlNvY2lhbCBNZWRpYSBUZWNobm9sb2dpZXMgIiwiR3JvdXBOYW1lIjoiU29jaWFsIE1lZGlhIFRlY2hub2xvZ2llcyAiLCJJc0lhYlB1cnBvc2UiOmZhbHNlLCJHZW5lcmFsVmVuZG9yc0lkcyI6W10sIkZpcnN0UGFydHlDb29raWVzIjpbXSwiSG9zdHMiOltdLCJQdXJwb3NlSWQiOiJFNDVGNzQ3Mi1COTE0LTQ4NDctOTFERC04OTI2QTgwNEY2NUQiLCJDdXN0b21Hcm91cElkIjoiQzAwMDUiLCJHcm91cElkIjoiYjA3MWM3ODAtZWZmNy00NGYyLWE0MDktNzk2ZDViZDdiMDFhIiwiU3RhdHVzIjoiaW5hY3RpdmUiLCJJc0RudEVuYWJsZWQiOmZhbHNlLCJUeXBlIjoiQ09PS0lFIiwiRGVzY3JpcHRpb25MZWdhbCI6IiIsIklhYklsbHVzdHJhdGlvbnMiOltdLCJIYXNMZWdJbnRPcHRPdXQiOmZhbHNlLCJIYXNDb25zZW50T3B0T3V0Ijp0cnVlLCJJc0dwY0VuYWJsZWQiOmZhbHNlLCJWZW5kb3JTZXJ2aWNlcyI6bnVsbCwiVHJhY2tpbmdUZWNoIjpudWxsfSx7IlNob3dJblBvcHVwIjp0cnVlLCJTaG93SW5Qb3B1cE5vbklBQiI6dHJ1ZSwiU2hvd1NES0xpc3RMaW5rIjp0cnVlLCJPcmRlciI6IjciLCJPcHRhbm9uR3JvdXBJZCI6IkJJTjAxIiwiUGFyZW50IjoiIiwiU2hvd1N1Ymdyb3VwIjp0cnVlLCJTaG93U3ViR3JvdXBEZXNjcmlwdGlvbiI6dHJ1ZSwiU2hvd1N1Ymdyb3VwVG9nZ2xlIjpmYWxzZSwiQWx3YXlzU2hvd0NhdGVnb3J5IjpmYWxzZSwiR3JvdXBEZXNjcmlwdGlvbiI6IldlIHVzZSBCaW5nIHRlY2hub2xvZ2llcyB0byBlbnN1cmUgdGhhdCB0aGUgQmluZyBtYXBwaW5nIGRhdGEgdXNlZCBpbiB0aGUgbG9jYXRpb24gZmluZGVyIGlzIGRpc3BsYXllZCBjb3JyZWN0bHkgYW5kIGNvbXBsZXRlbHkuIFRoZSBtYXAgaW4gdGhlIGxvY2F0aW9uIGZpbmRlciBjYW5ub3QgYmUgZGlzcGxheWVkIHVubGVzcyB5b3UgYWNjZXB0IHRoZXNlIHRlY2hub2xvZ2llcy4iLCJHcm91cERlc2NyaXB0aW9uT1RUIjoiV2UgdXNlIEJpbmcgdGVjaG5vbG9naWVzIHRvIGVuc3VyZSB0aGF0IHRoZSBCaW5nIG1hcHBpbmcgZGF0YSB1c2VkIGluIHRoZSBsb2NhdGlvbiBmaW5kZXIgaXMgZGlzcGxheWVkIGNvcnJlY3RseSBhbmQgY29tcGxldGVseS4gVGhlIG1hcCBpbiB0aGUgbG9jYXRpb24gZmluZGVyIGNhbm5vdCBiZSBkaXNwbGF5ZWQgdW5sZXNzIHlvdSBhY2NlcHQgdGhlc2UgdGVjaG5vbG9naWVzLiIsIkdyb3VwTmFtZU1vYmlsZSI6IkJpbmcgVGVjaG5vbG9naWVzIiwiR3JvdXBOYW1lT1RUIjoiQmluZyBUZWNobm9sb2dpZXMiLCJHcm91cE5hbWUiOiJCaW5nIFRlY2hub2xvZ2llcyIsIklzSWFiUHVycG9zZSI6ZmFsc2UsIkdlbmVyYWxWZW5kb3JzSWRzIjpbXSwiRmlyc3RQYXJ0eUNvb2tpZXMiOltdLCJIb3N0cyI6W10sIlB1cnBvc2VJZCI6IjZEQzU4MDY0LTg0MjUtNEM4OC05RTM1LUYzNTg1MTRBNTU1QiIsIkN1c3RvbUdyb3VwSWQiOiJCSU4wMSIsIkdyb3VwSWQiOiJjZjFjZjg2OS0zMDdiLTQyOTUtOWFlNC1jM2U5NzUwYzc4MTQiLCJTdGF0dXMiOiJpbmFjdGl2ZSIsIklzRG50RW5hYmxlZCI6ZmFsc2UsIlR5cGUiOiJDT09LSUUiLCJEZXNjcmlwdGlvbkxlZ2FsIjoiIiwiSWFiSWxsdXN0cmF0aW9ucyI6W10sIkhhc0xlZ0ludE9wdE91dCI6ZmFsc2UsIkhhc0NvbnNlbnRPcHRPdXQiOnRydWUsIklzR3BjRW5hYmxlZCI6ZmFsc2UsIlZlbmRvclNlcnZpY2VzIjpudWxsLCJUcmFja2luZ1RlY2giOm51bGx9LHsiU2hvd0luUG9wdXAiOnRydWUsIlNob3dJblBvcHVwTm9uSUFCIjp0cnVlLCJTaG93U0RLTGlzdExpbmsiOnRydWUsIk9yZGVyIjoiOSIsIk9wdGFub25Hcm91cElkIjoiWU9VMDEiLCJQYXJlbnQiOiIiLCJTaG93U3ViZ3JvdXAiOnRydWUsIlNob3dTdWJHcm91cERlc2NyaXB0aW9uIjp0cnVlLCJTaG93U3ViZ3JvdXBUb2dnbGUiOmZhbHNlLCJBbHdheXNTaG93Q2F0ZWdvcnkiOmZhbHNlLCJHcm91cERlc2NyaXB0aW9uIjoiWW91VHViZSB0ZWNobm9sb2dpZXMgYXJlIHVzZWQgd2hlbiB1c2VycyBjYWxsIHVwIHdlYiBwYWdlcyB0aGF0IHBsYXkgZW1iZWRkZWQgWW91VHViZSB2aWRlb3MuIFlvdXR1YmUuY29tIGlzIGEgR29vZ2xlLW93bmVkIHZpZGVvIGhvc3RpbmcgYW5kIHNoYXJpbmcgcGxhdGZvcm0uIFlvdXR1YmUuY29tIGNvbGxlY3RzIHVzZXIgZGF0YSB0aHJvdWdoIGVtYmVkZGVkIHZpZGVvcywgd2hpY2ggaXMgYWdncmVnYXRlZCB3aXRoIGRhdGEgZnJvbSBvdGhlciBHb29nbGUgc2VydmljZXMgaW4gb3JkZXIgdG8gZGlzcGxheSB0YXJnZXRlZCBhZHZlcnRpc2luZyB0byB3ZWJzaXRlIHZpc2l0b3JzLiIsIkdyb3VwRGVzY3JpcHRpb25PVFQiOiJZb3VUdWJlIHRlY2hub2xvZ2llcyBhcmUgdXNlZCB3aGVuIHVzZXJzIGNhbGwgdXAgd2ViIHBhZ2VzIHRoYXQgcGxheSBlbWJlZGRlZCBZb3VUdWJlIHZpZGVvcy4gWW91dHViZS5jb20gaXMgYSBHb29nbGUtb3duZWQgdmlkZW8gaG9zdGluZyBhbmQgc2hhcmluZyBwbGF0Zm9ybS4gWW91dHViZS5jb20gY29sbGVjdHMgdXNlciBkYXRhIHRocm91Z2ggZW1iZWRkZWQgdmlkZW9zLCB3aGljaCBpcyBhZ2dyZWdhdGVkIHdpdGggZGF0YSBmcm9tIG90aGVyIEdvb2dsZSBzZXJ2aWNlcyBpbiBvcmRlciB0byBkaXNwbGF5IHRhcmdldGVkIGFkdmVydGlzaW5nIHRvIHdlYnNpdGUgdmlzaXRvcnMuIiwiR3JvdXBOYW1lTW9iaWxlIjoiWW91VHViZSBUZWNobm9sb2dpZXMiLCJHcm91cE5hbWVPVFQiOiJZb3VUdWJlIFRlY2hub2xvZ2llcyIsIkdyb3VwTmFtZSI6IllvdVR1YmUgVGVjaG5vbG9naWVzIiwiSXNJYWJQdXJwb3NlIjpmYWxzZSwiR2VuZXJhbFZlbmRvcnNJZHMiOltdLCJGaXJzdFBhcnR5Q29va2llcyI6W10sIkhvc3RzIjpbeyJIb3N0TmFtZSI6Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tIiwiRGlzcGxheU5hbWUiOiJodHRwczovL3d3dy55b3V0dWJlLmNvbSIsIkhvc3RJZCI6IkgxMTY4IiwiRGVzY3JpcHRpb24iOiIiLCJQcml2YWN5UG9saWN5IjoiIiwiQ29va2llcyI6W3siaWQiOiIwMTk4YTkzMi1kMTQ1LTdkZmYtYWMzOS1kYTFjZDlhMjExNzQiLCJOYW1lIjoieXRpZGI6OkxBU1RfUkVTVUxUX0VOVFJZX0tFWSIsIkhvc3QiOiJodHRwczovL3d3dy55b3V0dWJlLmNvbSIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjMwIiwiZGVzY3JpcHRpb24iOiJUaGUgY29va2llIHl0aWRiOjpMQVNUX1JFU1VMVF9FTlRSWV9LRVkgaXMgdXNlZCBieSBZb3VUdWJlIHRvIHN0b3JlIHRoZSBsYXN0IHNlYXJjaCByZXN1bHQgZW50cnkgdGhhdCBhIHVzZXIgY2xpY2tlZCBvbi4gVGhpcyBpbmZvcm1hdGlvbiBpcyB1c2VkIHRvIGltcHJvdmUgdGhlIHJlbGV2YW5jZSBvZiBmdXR1cmUgc2VhcmNoIHJlc3VsdHMuIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjoiVGhlIGNvb2tpZSB5dGlkYjo6TEFTVF9SRVNVTFRfRU5UUllfS0VZIGlzIHVzZWQgYnkgWW91VHViZSB0byBzdG9yZSB0aGUgbGFzdCBzZWFyY2ggcmVzdWx0IGVudHJ5IHRoYXQgYSB1c2VyIGNsaWNrZWQgb24uIFRoaXMgaW5mb3JtYXRpb24gaXMgdXNlZCB0byBpbXByb3ZlIHRoZSByZWxldmFuY2Ugb2YgZnV0dXJlIHNlYXJjaCByZXN1bHRzLiIsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOm51bGwsImZpcnN0UGFydHlLZXkiOm51bGwsIkR1cmF0aW9uVHlwZSI6MzAsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfV19LHsiSG9zdE5hbWUiOiJodHRwczovL3d3dy55b3V0dWJlLW5vY29va2llLmNvbSIsIkRpc3BsYXlOYW1lIjoiaHR0cHM6Ly93d3cueW91dHViZS1ub2Nvb2tpZS5jb20iLCJIb3N0SWQiOiJIMTE0OCIsIkRlc2NyaXB0aW9uIjoiIiwiUHJpdmFjeVBvbGljeSI6IiIsIkNvb2tpZXMiOlt7ImlkIjoiMDE5OGE5MTItOGZjMC03Y2ZjLThhMDgtZWQ4NTUwYmRlZGFiIiwiTmFtZSI6Inl0LXJlbW90ZS1jb25uZWN0ZWQtZGV2aWNlcyIsIkhvc3QiOiJodHRwczovL3d3dy55b3V0dWJlLW5vY29va2llLmNvbSIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjEiLCJkZXNjcmlwdGlvbiI6IlRoZSB5dC1yZW1vdGUtY29ubmVjdGVkLWRldmljZXMgY29va2llLCBzZXQgYnkgWW91VHViZSwgc3RvcmVzIGEgdXNlcidzIHByZWZlcmVuY2VzIGZvciBlbWJlZGRlZCBZb3VUdWJlIHZpZGVvcy4gSXQgaGVscHMgdGhlIHBsYXRmb3JtIHJlbWVtYmVyIHNldHRpbmdzIGxpa2UgdmlkZW8gcXVhbGl0eSBhbmQgcGxheWVyIGludGVyZmFjZSBjb25maWd1cmF0aW9ucyB3aGVuIGEgdXNlciB3YXRjaGVzIGVtYmVkZGVkIHZpZGVvcyBvbiBvdGhlciB3ZWJzaXRlcy4gVGhpcyBjb29raWUgaXMgY29uc2lkZXJlZCBub24tZXNzZW50aWFsIGFuZCBmdW5jdGlvbmFsLiIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IiIsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOm51bGwsImZpcnN0UGFydHlLZXkiOm51bGwsIkR1cmF0aW9uVHlwZSI6MSwiY2F0ZWdvcnkiOm51bGwsImlzVGhpcmRQYXJ0eSI6ZmFsc2V9LHsiaWQiOiIwMTk4YTkyZi1kMTc5LTc2ZGQtYWQ0My1lMmQxMjYxZDE5ODYiLCJOYW1lIjoieXQtcmVtb3RlLWRldmljZS1pZCIsIkhvc3QiOiJodHRwczovL3d3dy55b3V0dWJlLW5vY29va2llLmNvbSIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjM2NSIsImRlc2NyaXB0aW9uIjoiVGhlIHl0LXJlbW90ZS1kZXZpY2UtaWQgY29va2llIGlzIGEgcGVyc2lzdGVudCBjb29raWUgc2V0IGJ5IFlvdVR1YmUgdG8gc3RvcmUgYSB1bmlxdWUgaWRlbnRpZmllciBmb3IgYSB1c2VyJ3MgZGV2aWNlIHdoZW4gYW4gZW1iZWRkZWQgWW91VHViZSB2aWRlbyBpcyBwbGF5ZWQgb24gYW5vdGhlciB3ZWJzaXRlLiBUaGlzIGlkZW50aWZpZXIgaGVscHMgWW91VHViZSB0cmFjayBhbmQgcGVyc29uYWxpemUgdGhlIHVzZXIncyBleHBlcmllbmNlIHdpdGggZW1iZWRkZWQgdmlkZW9zLCBzdWNoIGFzIHN0b3JpbmcgdmlkZW8gcHJlZmVyZW5jZXMuIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjoiIiwicGF0dGVybktleSI6bnVsbCwidGhpcmRQYXJ0eUtleSI6bnVsbCwiZmlyc3RQYXJ0eUtleSI6bnVsbCwiRHVyYXRpb25UeXBlIjozNjUsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfV19LHsiSG9zdE5hbWUiOiJ5b3V0dWJlLmNvbSIsIkRpc3BsYXlOYW1lIjoieW91dHViZS5jb20iLCJIb3N0SWQiOiJIMzgiLCJEZXNjcmlwdGlvbiI6IiIsIlByaXZhY3lQb2xpY3kiOiIiLCJDb29raWVzIjpbeyJpZCI6IjU2NTI5NGY5LTU2NjAtNDZkZC05M2JkLTUxYTkwNDdiZTM2YyIsIk5hbWUiOiJZU0MiLCJIb3N0IjoieW91dHViZS5jb20iLCJJc1Nlc3Npb24iOnRydWUsIkxlbmd0aCI6IjAiLCJkZXNjcmlwdGlvbiI6IllvdVR1YmUgaXMgYSBHb29nbGUgb3duZWQgcGxhdGZvcm0gZm9yIGhvc3RpbmcgYW5kIHNoYXJpbmcgdmlkZW9zLiBZb3VUdWJlIGNvbGxlY3RzIHVzZXIgZGF0YSB0aHJvdWdoIHZpZGVvcyBlbWJlZGRlZCBpbiB3ZWJzaXRlcywgd2hpY2ggaXMgYWdncmVnYXRlZCB3aXRoIHByb2ZpbGUgZGF0YSBmcm9tIG90aGVyIEdvb2dsZSBzZXJ2aWNlcyBpbiBvcmRlciB0byBkaXNwbGF5IHRhcmdldGVkIGFkdmVydGlzaW5nIHRvIHdlYiB2aXNpdG9ycyBhY3Jvc3MgYSBicm9hZCByYW5nZSBvZiB0aGVpciBvd24gYW5kIG90aGVyIHdlYnNpdGVzLiIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IllvdVR1YmUgaXMgYSBHb29nbGUgb3duZWQgcGxhdGZvcm0gZm9yIGhvc3RpbmcgYW5kIHNoYXJpbmcgdmlkZW9zLiBZb3VUdWJlIGNvbGxlY3RzIHVzZXIgZGF0YSB0aHJvdWdoIHZpZGVvcyBlbWJlZGRlZCBpbiB3ZWJzaXRlcywgd2hpY2ggaXMgYWdncmVnYXRlZCB3aXRoIHByb2ZpbGUgZGF0YSBmcm9tIG90aGVyIEdvb2dsZSBzZXJ2aWNlcyBpbiBvcmRlciB0byBkaXNwbGF5IHRhcmdldGVkIGFkdmVydGlzaW5nIHRvIHdlYiB2aXNpdG9ycyBhY3Jvc3MgYSBicm9hZCByYW5nZSBvZiB0aGVpciBvd24gYW5kIG90aGVyIHdlYnNpdGVzLiIsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiJDb29raWV8eW91dHViZS5jb20iLCJmaXJzdFBhcnR5S2V5IjoiQ29va2llWVNDIiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX0seyJpZCI6IjM2MDg0NTI2LTA4NWEtNDJiZS1hZDM4LTQwMDg2ZjNhYmE1NiIsIk5hbWUiOiJDT05TRU5UIiwiSG9zdCI6InlvdXR1YmUuY29tIiwiSXNTZXNzaW9uIjpmYWxzZSwiTGVuZ3RoIjoiNjE4MSIsImRlc2NyaXB0aW9uIjoiWW91VHViZSBpcyBhIEdvb2dsZSBvd25lZCBwbGF0Zm9ybSBmb3IgaG9zdGluZyBhbmQgc2hhcmluZyB2aWRlb3MuIFlvdVR1YmUgY29sbGVjdHMgdXNlciBkYXRhIHRocm91Z2ggdmlkZW9zIGVtYmVkZGVkIGluIHdlYnNpdGVzLCB3aGljaCBpcyBhZ2dyZWdhdGVkIHdpdGggcHJvZmlsZSBkYXRhIGZyb20gb3RoZXIgR29vZ2xlIHNlcnZpY2VzIGluIG9yZGVyIHRvIGRpc3BsYXkgdGFyZ2V0ZWQgYWR2ZXJ0aXNpbmcgdG8gd2ViIHZpc2l0b3JzIGFjcm9zcyBhIGJyb2FkIHJhbmdlIG9mIHRoZWlyIG93biBhbmQgb3RoZXIgd2Vic2l0ZXMuIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjoiIiwicGF0dGVybktleSI6bnVsbCwidGhpcmRQYXJ0eUtleSI6IkNvb2tpZXx5b3V0dWJlLmNvbSIsImZpcnN0UGFydHlLZXkiOiJDb29raWVDT05TRU5UIiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX1dfV0sIlB1cnBvc2VJZCI6IjBENkZFOEU4LUQ2MTEtNEExMC1BN0U4LTBCOTg1RDYzOEMzMSIsIkN1c3RvbUdyb3VwSWQiOiJZT1UwMSIsIkdyb3VwSWQiOiJiNGFmMWI5My1mNjVhLTRiZWYtOWJjMC1hZmZkYmM0YjJiNTUiLCJTdGF0dXMiOiJpbmFjdGl2ZSIsIklzRG50RW5hYmxlZCI6ZmFsc2UsIlR5cGUiOiJDT09LSUUiLCJEZXNjcmlwdGlvbkxlZ2FsIjoiIiwiSWFiSWxsdXN0cmF0aW9ucyI6W10sIkhhc0xlZ0ludE9wdE91dCI6ZmFsc2UsIkhhc0NvbnNlbnRPcHRPdXQiOnRydWUsIklzR3BjRW5hYmxlZCI6ZmFsc2UsIlZlbmRvclNlcnZpY2VzIjpudWxsLCJUcmFja2luZ1RlY2giOm51bGx9LHsiU2hvd0luUG9wdXAiOnRydWUsIlNob3dJblBvcHVwTm9uSUFCIjp0cnVlLCJTaG93U0RLTGlzdExpbmsiOnRydWUsIk9yZGVyIjoiMTAiLCJPcHRhbm9uR3JvdXBJZCI6IkMwMDA3IiwiUGFyZW50IjoiIiwiU2hvd1N1Ymdyb3VwIjp0cnVlLCJTaG93U3ViR3JvdXBEZXNjcmlwdGlvbiI6dHJ1ZSwiU2hvd1N1Ymdyb3VwVG9nZ2xlIjpmYWxzZSwiQWx3YXlzU2hvd0NhdGVnb3J5IjpmYWxzZSwiR3JvdXBEZXNjcmlwdGlvbiI6IlRoZXNlIHRlY2hub2xvZ2llcyBtYXkgYmUgc2V0IHRocm91Z2ggb3VyIHNpdGUgYnkgb3VyIGFkdmVydGlzaW5nIHBhcnRuZXJzLiBUaGV5IG1heSBiZSB1c2VkIGJ5IHRob3NlIGNvbXBhbmllcyB0byBidWlsZCBhIHByb2ZpbGUgb2YgeW91ciBpbnRlcmVzdHMgYW5kIHNob3cgeW91IHJlbGV2YW50IGFkdmVydHMgb24gb3RoZXIgc2l0ZXMuIFRoZXkgZG8gbm90IHN0b3JlIGRpcmVjdGx5IHBlcnNvbmFsIGluZm9ybWF0aW9uLCBidXQgYXJlIGJhc2VkIG9uIHVuaXF1ZWx5IGlkZW50aWZ5aW5nIHlvdXIgYnJvd3NlciBhbmQgaW50ZXJuZXQgZGV2aWNlLiBJZiB5b3UgZG8gbm90IGFsbG93IHRoZXNlIHRlY2hub2xvZ2llcywgeW91IHdpbGwgZXhwZXJpZW5jZSBsZXNzIHRhcmdldGVkIGFkdmVydGlzaW5nLiIsIkdyb3VwRGVzY3JpcHRpb25PVFQiOiJUaGVzZSB0ZWNobm9sb2dpZXMgbWF5IGJlIHNldCB0aHJvdWdoIG91ciBzaXRlIGJ5IG91ciBhZHZlcnRpc2luZyBwYXJ0bmVycy4gVGhleSBtYXkgYmUgdXNlZCBieSB0aG9zZSBjb21wYW5pZXMgdG8gYnVpbGQgYSBwcm9maWxlIG9mIHlvdXIgaW50ZXJlc3RzIGFuZCBzaG93IHlvdSByZWxldmFudCBhZHZlcnRzIG9uIG90aGVyIHNpdGVzLiBUaGV5IGRvIG5vdCBzdG9yZSBkaXJlY3RseSBwZXJzb25hbCBpbmZvcm1hdGlvbiwgYnV0IGFyZSBiYXNlZCBvbiB1bmlxdWVseSBpZGVudGlmeWluZyB5b3VyIGJyb3dzZXIgYW5kIGludGVybmV0IGRldmljZS4gSWYgeW91IGRvIG5vdCBhbGxvdyB0aGVzZSB0ZWNobm9sb2dpZXMsIHlvdSB3aWxsIGV4cGVyaWVuY2UgbGVzcyB0YXJnZXRlZCBhZHZlcnRpc2luZy4iLCJHcm91cE5hbWVNb2JpbGUiOiJNYXJrZXRpbmcgVGVjaG5vbG9naWVzIiwiR3JvdXBOYW1lT1RUIjoiTWFya2V0aW5nIFRlY2hub2xvZ2llcyIsIkdyb3VwTmFtZSI6Ik1hcmtldGluZyBUZWNobm9sb2dpZXMiLCJJc0lhYlB1cnBvc2UiOmZhbHNlLCJHZW5lcmFsVmVuZG9yc0lkcyI6W10sIkZpcnN0UGFydHlDb29raWVzIjpbXSwiSG9zdHMiOlt7Ikhvc3ROYW1lIjoiZG91YmxlY2xpY2submV0IiwiRGlzcGxheU5hbWUiOiJkb3VibGVjbGljay5uZXQiLCJIb3N0SWQiOiJIMjEiLCJEZXNjcmlwdGlvbiI6IiIsIlByaXZhY3lQb2xpY3kiOiIiLCJDb29raWVzIjpbeyJpZCI6IjAxOTFiN2I0LTIyODctNzNkOS1hNjFhLTEyZmI4Nzk4OTk5NiIsIk5hbWUiOiJhcl9kZWJ1ZyIsIkhvc3QiOiJkb3VibGVjbGljay5uZXQiLCJJc1Nlc3Npb24iOmZhbHNlLCJMZW5ndGgiOiIyOSIsImRlc2NyaXB0aW9uIjoiVGhpcyBkb21haW4gaXMgb3duZWQgYnkgRG91YmxlY2xpY2sgKEdvb2dsZSkuIFRoZSBtYWluIGJ1c2luZXNzIGFjdGl2aXR5IGlzOiBEb3VibGVjbGljayBpcyBHb29nbGVzIHJlYWwgdGltZSBiaWRkaW5nIGFkdmVydGlzaW5nIGV4Y2hhbmdlIiwidGhpcmRQYXJ0eURlc2NyaXB0aW9uIjoiVGhpcyBkb21haW4gaXMgb3duZWQgYnkgRG91YmxlY2xpY2sgKEdvb2dsZSkuIFRoZSBtYWluIGJ1c2luZXNzIGFjdGl2aXR5IGlzOiBEb3VibGVjbGljayBpcyBHb29nbGVzIHJlYWwgdGltZSBiaWRkaW5nIGFkdmVydGlzaW5nIGV4Y2hhbmdlIiwicGF0dGVybktleSI6bnVsbCwidGhpcmRQYXJ0eUtleSI6IkNvb2tpZXxkb3VibGVjbGljay5uZXQiLCJmaXJzdFBhcnR5S2V5IjpudWxsLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfSx7ImlkIjoiYjE5MGM1NTktZDg1OC00ZjY0LTkzYTgtZTgxZjNhNGI1MTk0IiwiTmFtZSI6InRlc3RfY29va2llIiwiSG9zdCI6ImRvdWJsZWNsaWNrLm5ldCIsIklzU2Vzc2lvbiI6ZmFsc2UsIkxlbmd0aCI6IjAiLCJkZXNjcmlwdGlvbiI6IlRoaXMgZG9tYWluIGlzIG93bmVkIGJ5IERvdWJsZWNsaWNrIChHb29nbGUpLiBUaGUgbWFpbiBidXNpbmVzcyBhY3Rpdml0eSBpczogRG91YmxlY2xpY2sgaXMgR29vZ2xlcyByZWFsIHRpbWUgYmlkZGluZyBhZHZlcnRpc2luZyBleGNoYW5nZSIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IlRoaXMgZG9tYWluIGlzIG93bmVkIGJ5IERvdWJsZWNsaWNrIChHb29nbGUpLiBUaGUgbWFpbiBidXNpbmVzcyBhY3Rpdml0eSBpczogRG91YmxlY2xpY2sgaXMgR29vZ2xlcyByZWFsIHRpbWUgYmlkZGluZyBhZHZlcnRpc2luZyBleGNoYW5nZSIsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOiJDb29raWV8ZG91YmxlY2xpY2submV0IiwiZmlyc3RQYXJ0eUtleSI6IkNvb2tpZXRlc3RfY29va2llIiwiRHVyYXRpb25UeXBlIjoxLCJjYXRlZ29yeSI6bnVsbCwiaXNUaGlyZFBhcnR5IjpmYWxzZX0seyJpZCI6ImRhNDcwMTU3LTVhMGItNDY2Yy04ZWU4LWI0MDcxMTIwYTJmYSIsIk5hbWUiOiJJREUiLCJIb3N0IjoiZG91YmxlY2xpY2submV0IiwiSXNTZXNzaW9uIjpmYWxzZSwiTGVuZ3RoIjoiMzg5IiwiZGVzY3JpcHRpb24iOiJUaGlzIGRvbWFpbiBpcyBvd25lZCBieSBEb3VibGVjbGljayAoR29vZ2xlKS4gVGhlIG1haW4gYnVzaW5lc3MgYWN0aXZpdHkgaXM6IERvdWJsZWNsaWNrIGlzIEdvb2dsZXMgcmVhbCB0aW1lIGJpZGRpbmcgYWR2ZXJ0aXNpbmcgZXhjaGFuZ2UiLCJ0aGlyZFBhcnR5RGVzY3JpcHRpb24iOiJUaGlzIGRvbWFpbiBpcyBvd25lZCBieSBEb3VibGVjbGljayAoR29vZ2xlKS4gVGhlIG1haW4gYnVzaW5lc3MgYWN0aXZpdHkgaXM6IERvdWJsZWNsaWNrIGlzIEdvb2dsZXMgcmVhbCB0aW1lIGJpZGRpbmcgYWR2ZXJ0aXNpbmcgZXhjaGFuZ2UiLCJwYXR0ZXJuS2V5IjpudWxsLCJ0aGlyZFBhcnR5S2V5IjoiQ29va2llfGRvdWJsZWNsaWNrLm5ldCIsImZpcnN0UGFydHlLZXkiOiJDb29raWVJREUiLCJEdXJhdGlvblR5cGUiOjEsImNhdGVnb3J5IjpudWxsLCJpc1RoaXJkUGFydHkiOmZhbHNlfV19XSwiUHVycG9zZUlkIjoiN0IwMDEzOEUtQkZFRS00N0NBLUE0OTktREE1NTRFMENBMTgxIiwiQ3VzdG9tR3JvdXBJZCI6IkMwMDA3IiwiR3JvdXBJZCI6IjU5MjYwYmIyLWZiZmUtNGMxYi05YTFhLWFiYzEzMzQ5YzliNiIsIlN0YXR1cyI6ImluYWN0aXZlIiwiSXNEbnRFbmFibGVkIjpmYWxzZSwiVHlwZSI6IkNPT0tJRSIsIkRlc2NyaXB0aW9uTGVnYWwiOiIiLCJJYWJJbGx1c3RyYXRpb25zIjpbXSwiSGFzTGVnSW50T3B0T3V0IjpmYWxzZSwiSGFzQ29uc2VudE9wdE91dCI6dHJ1ZSwiSXNHcGNFbmFibGVkIjpmYWxzZSwiVmVuZG9yU2VydmljZXMiOm51bGwsIlRyYWNraW5nVGVjaCI6bnVsbH0seyJTaG93SW5Qb3B1cCI6dHJ1ZSwiU2hvd0luUG9wdXBOb25JQUIiOnRydWUsIlNob3dTREtMaXN0TGluayI6dHJ1ZSwiT3JkZXIiOiIxMyIsIk9wdGFub25Hcm91cElkIjoiTUFQMDEiLCJQYXJlbnQiOiIiLCJTaG93U3ViZ3JvdXAiOnRydWUsIlNob3dTdWJHcm91cERlc2NyaXB0aW9uIjp0cnVlLCJTaG93U3ViZ3JvdXBUb2dnbGUiOmZhbHNlLCJBbHdheXNTaG93Q2F0ZWdvcnkiOmZhbHNlLCJHcm91cERlc2NyaXB0aW9uIjoiV2UgdXNlIEdvb2dsZSB0ZWNobm9sb2dpZXMgdG8gZW5zdXJlIHRoYXQgdGhlIEdvb2dsZSBtYXBwaW5nIGRhdGEgdXNlZCBpbiB0aGUgbG9jYXRpb24gZmluZGVyIGlzIGRpc3BsYXllZCBjb3JyZWN0bHkgYW5kIGNvbXBsZXRlbHkuIFRoZXNlIHRlY2hub2xvZ2llcyBtYXkgaW5jb3Jwb3JhdGUgZGF0YSB0cmFuc2ZlcnMgaW4gY291bnRyaWVzIHdpdGhvdXQgYW4gYWRlcXVhdGUgbGV2ZWwgb2YgZGF0YSBwcm90ZWN0aW9uLiBUaGUgbWFwIGluIHRoZSBsb2NhdGlvbiBmaW5kZXIgY2Fubm90IGJlIGRpc3BsYXllZCB1bmxlc3MgeW91IGFjY2VwdCB0aGVzZSB0ZWNobm9sb2dpZXMuIiwiR3JvdXBEZXNjcmlwdGlvbk9UVCI6IldlIHVzZSBHb29nbGUgdGVjaG5vbG9naWVzIHRvIGVuc3VyZSB0aGF0IHRoZSBHb29nbGUgbWFwcGluZyBkYXRhIHVzZWQgaW4gdGhlIGxvY2F0aW9uIGZpbmRlciBpcyBkaXNwbGF5ZWQgY29ycmVjdGx5IGFuZCBjb21wbGV0ZWx5LiBUaGVzZSB0ZWNobm9sb2dpZXMgbWF5IGluY29ycG9yYXRlIGRhdGEgdHJhbnNmZXJzIGluIGNvdW50cmllcyB3aXRob3V0IGFuIGFkZXF1YXRlIGxldmVsIG9mIGRhdGEgcHJvdGVjdGlvbi4gVGhlIG1hcCBpbiB0aGUgbG9jYXRpb24gZmluZGVyIGNhbm5vdCBiZSBkaXNwbGF5ZWQgdW5sZXNzIHlvdSBhY2NlcHQgdGhlc2UgdGVjaG5vbG9naWVzLiIsIkdyb3VwTmFtZU1vYmlsZSI6Ikdvb2dsZSBNYXBzIFRlY2hub2xvZ2llcyIsIkdyb3VwTmFtZU9UVCI6Ikdvb2dsZSBNYXBzIFRlY2hub2xvZ2llcyIsIkdyb3VwTmFtZSI6Ikdvb2dsZSBNYXBzIFRlY2hub2xvZ2llcyIsIklzSWFiUHVycG9zZSI6ZmFsc2UsIkdlbmVyYWxWZW5kb3JzSWRzIjpbXSwiRmlyc3RQYXJ0eUNvb2tpZXMiOlt7ImlkIjoiOGYxNjFmNjMtNzA3NC00Mzc5LWFlMDktNjc4YThhOTVlNjcxIiwiTmFtZSI6Ikdvb2dsZSBNYXBzIiwiSG9zdCI6Ind3dy5nb29nbGUuY29tIiwiSXNTZXNzaW9uIjpmYWxzZSwiTGVuZ3RoIjoiMzY1IiwiZGVzY3JpcHRpb24iOiJJbiBjZXJ0YWluIHZlcnNpb25zLCB0aGUgaW50ZWdyYXRpb24gb2YgR29vZ2xlIE1hcHMgb24gYSB3ZWJzaXRlIG1lYW5zIHRoYXQgY29va2llcyBtYXkgYmUgc2V0IGJ5IEdvb2dsZSAoYWZ0ZXIgYWxsLCBhbHdheXMgdGhlIHNvLWNhbGxlZCDigJxOSUQgY29va2ll4oCdLCB3aGljaCBzdG9yZXMgTWFwcyB1c2VyIHNldHRpbmdzIGFuZCB1c2VyIGluZm9ybWF0aW9uKSB3aGVuIHRoZSB1c2VyIGFjY2Vzc2VzIHRoZSBwYWdlLCB3aXRoIHdoaWNoIGEgY29ubmVjdGlvbiB0byBHb29nbGUgLU5ldHdvcmsgaXMgaW5jbHVkZWQuIEFzIHBhcnQgb2YgdGhpcyBjb25uZWN0aW9uLCB2YXJpb3VzIGluZm9ybWF0aW9uIGlzIG5vdyB0cmFuc21pdHRlZCB0byBHb29nbGUgYW5kIGNhbiBiZSBldmFsdWF0ZWQgdGhlcmUgd2l0aGluIHVzZXIgcHJvZmlsZXMsIGV2ZW4gaWYgdGhlIHVzZXIgaXMgbm90IGxvZ2dlZCBpbnRvIGFuIGV4aXN0aW5nIEdvb2dsZSBhY2NvdW50LiIsInRoaXJkUGFydHlEZXNjcmlwdGlvbiI6IiIsInBhdHRlcm5LZXkiOm51bGwsInRoaXJkUGFydHlLZXkiOm51bGwsImZpcnN0UGFydHlLZXkiOm51bGwsIkR1cmF0aW9uVHlwZSI6MSwiY2F0ZWdvcnkiOm51bGwsImlzVGhpcmRQYXJ0eSI6ZmFsc2V9XSwiSG9zdHMiOltdLCJQdXJwb3NlSWQiOiI1NUE1RDg1Ni02RDAyLTQ2QzYtQTA0Ri0wQzMwOUU0NjVGRjMiLCJDdXN0b21Hcm91cElkIjoiTUFQMDEiLCJHcm91cElkIjoiZTkyMWE4ZTctMmE1NS00YTk4LTk2MDEtMzAxYjNkYTZhN2ZiIiwiU3RhdHVzIjoiaW5hY3RpdmUiLCJJc0RudEVuYWJsZWQiOmZhbHNlLCJUeXBlIjoiQ09PS0lFIiwiRGVzY3JpcHRpb25MZWdhbCI6IiIsIklhYklsbHVzdHJhdGlvbnMiOltdLCJIYXNMZWdJbnRPcHRPdXQiOmZhbHNlLCJIYXNDb25zZW50T3B0T3V0Ijp0cnVlLCJJc0dwY0VuYWJsZWQiOmZhbHNlLCJWZW5kb3JTZXJ2aWNlcyI6bnVsbCwiVHJhY2tpbmdUZWNoIjpudWxsfSx7IlNob3dJblBvcHVwIjp0cnVlLCJTaG93SW5Qb3B1cE5vbklBQiI6dHJ1ZSwiU2hvd1NES0xpc3RMaW5rIjp0cnVlLCJPcmRlciI6IjE0IiwiT3B0YW5vbkdyb3VwSWQiOiJHQUQiLCJQYXJlbnQiOiIiLCJTaG93U3ViZ3JvdXAiOnRydWUsIlNob3dTdWJHcm91cERlc2NyaXB0aW9uIjp0cnVlLCJTaG93U3ViZ3JvdXBUb2dnbGUiOmZhbHNlLCJBbHdheXNTaG93Q2F0ZWdvcnkiOmZhbHNlLCJHcm91cERlc2NyaXB0aW9uIjoiV2UgdXNlIEdvb2dsZSBBZHMgdGVjaG5vbG9naWVzIGZyb20gR29vZ2xlIElyZWxhbmQgTGltaXRlZCB0byBiZXR0ZXIgYXNzZXNzIHRoZSBzdWNjZXNzIG9mIG91ciBzZWFyY2ggZW5naW5lIGNhbXBhaWducyBvbiBHb29nbGUgYW5kLCBhcyBhIHJlc3VsdCwgdG8gaW1wcm92ZSB0aGUgZWZmaWNpZW5jeSBvZiBvdXIgbWVhc3VyZXMuIEdvb2dsZSBDb252ZXJzaW9uIFRyYWNraW5nIG1heSBpbnZvbHZlIGRhdGEgdHJhbnNmZXJzIHRvIGNvdW50cmllcyB3aXRob3V0IGFuIGFkZXF1YXRlIGxldmVsIG9mIGRhdGEgcHJvdGVjdGlvbi4iLCJHcm91cERlc2NyaXB0aW9uT1RUIjoiV2UgdXNlIEdvb2dsZSBBZHMgdGVjaG5vbG9naWVzIGZyb20gR29vZ2xlIElyZWxhbmQgTGltaXRlZCB0byBiZXR0ZXIgYXNzZXNzIHRoZSBzdWNjZXNzIG9mIG91ciBzZWFyY2ggZW5naW5lIGNhbXBhaWducyBvbiBHb29nbGUgYW5kLCBhcyBhIHJlc3VsdCwgdG8gaW1wcm92ZSB0aGUgZWZmaWNpZW5jeSBvZiBvdXIgbWVhc3VyZXMuIEdvb2dsZSBDb252ZXJzaW9uIFRyYWNraW5nIG1heSBpbnZvbHZlIGRhdGEgdHJhbnNmZXJzIHRvIGNvdW50cmllcyB3aXRob3V0IGFuIGFkZXF1YXRlIGxldmVsIG9mIGRhdGEgcHJvdGVjdGlvbi4iLCJHcm91cE5hbWVNb2JpbGUiOiJHb29nbGUgQWRzIFRlY2hub2xvZ2llcyIsIkdyb3VwTmFtZU9UVCI6Ikdvb2dsZSBBZHMgVGVjaG5vbG9naWVzIiwiR3JvdXBOYW1lIjoiR29vZ2xlIEFkcyBUZWNobm9sb2dpZXMiLCJJc0lhYlB1cnBvc2UiOmZhbHNlLCJHZW5lcmFsVmVuZG9yc0lkcyI6W10sIkZpcnN0UGFydHlDb29raWVzIjpbXSwiSG9zdHMiOltdLCJQdXJwb3NlSWQiOiJBOTk5MTkyMy05MTU2LTQ1RDItQUQ0OC01M0UyRkExMEZFMUQiLCJDdXN0b21Hcm91cElkIjoiR0FEIiwiR3JvdXBJZCI6IjAxOGUzY2Q5LThkYzEtNzBlOC1iY2NkLWRlZjg1ZGQwMjFmYyIsIlN0YXR1cyI6ImluYWN0aXZlIiwiSXNEbnRFbmFibGVkIjpmYWxzZSwiVHlwZSI6IkNPT0tJRSIsIkRlc2NyaXB0aW9uTGVnYWwiOiIiLCJJYWJJbGx1c3RyYXRpb25zIjpbXSwiSGFzTGVnSW50T3B0T3V0IjpmYWxzZSwiSGFzQ29uc2VudE9wdE91dCI6dHJ1ZSwiSXNHcGNFbmFibGVkIjpmYWxzZSwiVmVuZG9yU2VydmljZXMiOm51bGwsIlRyYWNraW5nVGVjaCI6bnVsbH0seyJTaG93SW5Qb3B1cCI6dHJ1ZSwiU2hvd0luUG9wdXBOb25JQUIiOnRydWUsIlNob3dTREtMaXN0TGluayI6dHJ1ZSwiT3JkZXIiOiIxNiIsIk9wdGFub25Hcm91cElkIjoiQ0IwMSIsIlBhcmVudCI6IiIsIlNob3dTdWJncm91cCI6dHJ1ZSwiU2hvd1N1Ykdyb3VwRGVzY3JpcHRpb24iOnRydWUsIlNob3dTdWJncm91cFRvZ2dsZSI6ZmFsc2UsIkFsd2F5c1Nob3dDYXRlZ29yeSI6ZmFsc2UsIkdyb3VwRGVzY3JpcHRpb24iOiJXZSBvZmZlciBhIGNoYXQgZnVuY3Rpb24gdG8gYW5zd2VyIHlvdXIgcXVlc3Rpb25zIGFib3V0IGNlcnRhaW4gcHJvZHVjdHMgYW5kIHNlcnZpY2VzIHF1aWNrbHkgYW5kIGluIHRoZSBiZXN0IHBvc3NpYmxlIHdheS4gRm9yIHRoZSBjaGF0IGZ1bmN0aW9uLCBhIHNlcnZpY2UgcHJvdmlkZXIgcHJvY2Vzc2VzIHlvdXIgaW5wdXQgb24gYmVoYWxmIG9mIERITCAtIHRoaXMgc2VydmljZSBwcm92aWRlciBwcm9jZXNzZXMgeW91ciBkYXRhIHRvIHByb2Nlc3MgeW91ciByZXF1ZXN0IGFuZCBhbm9ueW1pemVzIGl0IHRvIGNvbnRyb2wgYW5kIGltcHJvdmUgYnVzaW5lc3MgYW5kIHNlcnZpY2UgcHJvY2Vzc2VzLiIsIkdyb3VwRGVzY3JpcHRpb25PVFQiOiJXZSBvZmZlciBhIGNoYXQgZnVuY3Rpb24gdG8gYW5zd2VyIHlvdXIgcXVlc3Rpb25zIGFib3V0IGNlcnRhaW4gcHJvZHVjdHMgYW5kIHNlcnZpY2VzIHF1aWNrbHkgYW5kIGluIHRoZSBiZXN0IHBvc3NpYmxlIHdheS4gRm9yIHRoZSBjaGF0IGZ1bmN0aW9uLCBhIHNlcnZpY2UgcHJvdmlkZXIgcHJvY2Vzc2VzIHlvdXIgaW5wdXQgb24gYmVoYWxmIG9mIERITCAtIHRoaXMgc2VydmljZSBwcm92aWRlciBwcm9jZXNzZXMgeW91ciBkYXRhIHRvIHByb2Nlc3MgeW91ciByZXF1ZXN0IGFuZCBhbm9ueW1pemVzIGl0IHRvIGNvbnRyb2wgYW5kIGltcHJvdmUgYnVzaW5lc3MgYW5kIHNlcnZpY2UgcHJvY2Vzc2VzLiIsIkdyb3VwTmFtZU1vYmlsZSI6IkNoYXRib3QgVGVjaG5vbG9naWVzIiwiR3JvdXBOYW1lT1RUIjoiQ2hhdGJvdCBUZWNobm9sb2dpZXMiLCJHcm91cE5hbWUiOiJDaGF0Ym90IFRlY2hub2xvZ2llcyIsIklzSWFiUHVycG9zZSI6ZmFsc2UsIkdlbmVyYWxWZW5kb3JzSWRzIjpbXSwiRmlyc3RQYXJ0eUNvb2tpZXMiOltdLCJIb3N0cyI6W10sIlB1cnBvc2VJZCI6IkExOURCOUNBLUI5REYtNDc5OS1CRTFDLTUxNTgzNzNBMkE5QyIsIkN1c3RvbUdyb3VwSWQiOiJDQjAxIiwiR3JvdXBJZCI6IjAxOGZiZTc4LTk5NjEtNzNjNC05Yjg1LTBlNDZmMjYwNmY0OCIsIlN0YXR1cyI6ImluYWN0aXZlIiwiSXNEbnRFbmFibGVkIjpmYWxzZSwiVHlwZSI6IkNPT0tJRSIsIkRlc2NyaXB0aW9uTGVnYWwiOiIiLCJJYWJJbGx1c3RyYXRpb25zIjpbXSwiSGFzTGVnSW50T3B0T3V0IjpmYWxzZSwiSGFzQ29uc2VudE9wdE91dCI6dHJ1ZSwiSXNHcGNFbmFibGVkIjpmYWxzZSwiVmVuZG9yU2VydmljZXMiOm51bGwsIlRyYWNraW5nVGVjaCI6bnVsbH0seyJTaG93SW5Qb3B1cCI6dHJ1ZSwiU2hvd0luUG9wdXBOb25JQUIiOnRydWUsIlNob3dTREtMaXN0TGluayI6dHJ1ZSwiT3JkZXIiOiIxNyIsIk9wdGFub25Hcm91cElkIjoiQ1BUMDEiLCJQYXJlbnQiOiIiLCJTaG93U3ViZ3JvdXAiOnRydWUsIlNob3dTdWJHcm91cERlc2NyaXB0aW9uIjp0cnVlLCJTaG93U3ViZ3JvdXBUb2dnbGUiOmZhbHNlLCJBbHdheXNTaG93Q2F0ZWdvcnkiOmZhbHNlLCJHcm91cERlc2NyaXB0aW9uIjoiQ2FwdGNoYXMgYXJlIHVzZWQgdG8gcHJvdGVjdCBmb3JtcyBhbmQgbG9naW5zIGZyb20gYXV0b21hdGVkIGFidXNlIGJ5IHZlcmlmeWluZyB0aGF0IGEgcmVhbCBwZXJzb24gaXMgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgc2l0ZS4iLCJHcm91cERlc2NyaXB0aW9uT1RUIjoiQ2FwdGNoYXMgYXJlIHVzZWQgdG8gcHJvdGVjdCBmb3JtcyBhbmQgbG9naW5zIGZyb20gYXV0b21hdGVkIGFidXNlIGJ5IHZlcmlmeWluZyB0aGF0IGEgcmVhbCBwZXJzb24gaXMgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgc2l0ZS4iLCJHcm91cE5hbWVNb2JpbGUiOiJDYXB0Y2hhIFRlY2hub2xvZ2llcyIsIkdyb3VwTmFtZU9UVCI6IkNhcHRjaGEgVGVjaG5vbG9naWVzIiwiR3JvdXBOYW1lIjoiQ2FwdGNoYSBUZWNobm9sb2dpZXMiLCJJc0lhYlB1cnBvc2UiOmZhbHNlLCJHZW5lcmFsVmVuZG9yc0lkcyI6W10sIkZpcnN0UGFydHlDb29raWVzIjpbXSwiSG9zdHMiOltdLCJQdXJwb3NlSWQiOiI3NjZGODYyRS1GRjc0LTQwQUYtOEJGRi04NzIzNzAxRTAxNkMiLCJDdXN0b21Hcm91cElkIjoiQ1BUMDEiLCJHcm91cElkIjoiMDE5OTM4OTQtMWY3OS03ZWQ0LTkzYjQtOWIwN2NhMTQ1YTVmIiwiU3RhdHVzIjoiaW5hY3RpdmUiLCJJc0RudEVuYWJsZWQiOmZhbHNlLCJUeXBlIjoiQ09PS0lFIiwiRGVzY3JpcHRpb25MZWdhbCI6IiIsIklhYklsbHVzdHJhdGlvbnMiOltdLCJIYXNMZWdJbnRPcHRPdXQiOmZhbHNlLCJIYXNDb25zZW50T3B0T3V0Ijp0cnVlLCJJc0dwY0VuYWJsZWQiOmZhbHNlLCJWZW5kb3JTZXJ2aWNlcyI6bnVsbCwiVHJhY2tpbmdUZWNoIjpudWxsfV0sIkxhbmd1YWdlIjp7IkN1bHR1cmUiOiJlbiJ9LCJTaG93UHJlZmVyZW5jZUNlbnRlckNsb3NlQnV0dG9uIjp0cnVlLCJDdXN0b21KcyI6IiIsIkxpZmVzcGFuVHlwZVRleHQiOiJTZXNzaW9uIiwiTGlmZXNwYW5EdXJhdGlvblRleHQiOiIiLCJDbG9zZVRleHQiOiJDbG9zZSBwcmVmZXJlbmNlIGNlbnRlciIsIkJhbm5lckNsb3NlQnV0dG9uVGV4dCI6IkNsb3NlIiwiQWRkTGlua3NUb0Nvb2tpZXBlZGlhIjpmYWxzZSwic2hvd0Jhbm5lckNsb3NlQnV0dG9uIjpmYWxzZSwiQWxlcnRMYXlvdXQiOiJib3R0b20iLCJTaG93QWxlcnROb3RpY2UiOnRydWUsIklzQ29uc2VudExvZ2dpbmdFbmFibGVkIjp0cnVlLCJJc0lhYkVuYWJsZWQiOmZhbHNlLCJJc0lhYlRoaXJkUGFydHlDb29raWVFbmFibGVkIjpmYWxzZSwiU2Nyb2xsQ2xvc2VCYW5uZXIiOmZhbHNlLCJPbkNsaWNrQ2xvc2VCYW5uZXIiOmZhbHNlLCJOZXh0UGFnZUNsb3NlQmFubmVyIjpmYWxzZSwiQWNjZXB0QWxsQ29va2llcyI6ZmFsc2UsIkNvbnNlbnRNb2RlbCI6Im9wdC1pbiIsIlZlbmRvckNvbnNlbnRNb2RlbCI6Im9wdC1vdXQiLCJWZW5kb3JzIjpbXSwiT3ZlcnJpZGRlblZlbmRvcnMiOnt9LCJPdmVycmlkZW5Hb29nbGVWZW5kb3JzIjpudWxsLCJwdWJsaXNoZXIiOnsicmVzdHJpY3Rpb25zIjp7fX0sIlNjcm9sbEFjY2VwdEFsbENvb2tpZXMiOmZhbHNlLCJPbkNsaWNrQWNjZXB0QWxsQ29va2llcyI6ZmFsc2UsIk5leHRQYWdlQWNjZXB0QWxsQ29va2llcyI6ZmFsc2UsIkZsYXQiOnRydWUsIkZsb2F0aW5nRmxhdCI6ZmFsc2UsIkZsb2F0aW5nUm91bmRlZENvcm5lciI6ZmFsc2UsIkZsb2F0aW5nUm91bmRlZEljb24iOmZhbHNlLCJGbG9hdGluZ1JvdW5kZWQiOmZhbHNlLCJDZW50ZXJSb3VuZGVkIjpmYWxzZSwiQ2VudGVyIjp0cnVlLCJQYW5lbCI6ZmFsc2UsIlBvcHVwIjpmYWxzZSwiTGlzdCI6ZmFsc2UsIlRhYiI6ZmFsc2UsIkNob2ljZXNCYW5uZXIiOmZhbHNlLCJOb0Jhbm5lciI6ZmFsc2UsIkJhbm5lcklBQlBhcnRuZXJzTGluayI6IiIsIkJhbm5lclB1cnBvc2VUaXRsZSI6IiIsIkJhbm5lclB1cnBvc2VEZXNjcmlwdGlvbiI6IiIsIkJhbm5lckZlYXR1cmVUaXRsZSI6IiIsIkJhbm5lckZlYXR1cmVEZXNjcmlwdGlvbiI6IiIsIkJhbm5lckluZm9ybWF0aW9uVGl0bGUiOiIiLCJCYW5uZXJJbmZvcm1hdGlvbkRlc2NyaXB0aW9uIjoiIiwiQmFubmVyU2hvd1JlamVjdEFsbEJ1dHRvbiI6dHJ1ZSwiQmFubmVyUmVqZWN0QWxsQnV0dG9uVGV4dCI6IlN0cmljdGx5IE5lY2Vzc2FyeSBPbmx5IiwiUENlbnRlclNob3dSZWplY3RBbGxCdXR0b24iOmZhbHNlLCJQQ2VudGVyUmVqZWN0QWxsQnV0dG9uVGV4dCI6IiIsIkJhbm5lclNldHRpbmdzQnV0dG9uRGlzcGxheUxpbmsiOmZhbHNlLCJCYW5uZXJEUERUaXRsZSI6bnVsbCwiQmFubmVyRFBERGVzY3JpcHRpb24iOm51bGwsIkJhbm5lckRQRERlc2NyaXB0aW9uRm9ybWF0IjpudWxsLCJQQ0ZpcnN0UGFydHlDb29raWVMaXN0VGV4dCI6IkZpcnN0IFBhcnR5IENvb2tpZXMiLCJQQ1ZpZXdDb29raWVzVGV4dCI6IlZpZXcgQ29va2llcyIsIlBDZW50ZXJCYWNrVGV4dCI6IkJhY2sgdG8gcHJlZmVyZW5jZSBjZW50ZXIiLCJQQ2VudGVyVmVuZG9yc0xpc3RUZXh0IjoiVmVuZG9ycyBMaXN0IiwiUENlbnRlclZpZXdQcml2YWN5UG9saWN5VGV4dCI6IlZpZXcgUHJpdmFjeSBQb2xpY3kiLCJQQ2VudGVyQ2xlYXJGaWx0ZXJzVGV4dCI6IkNsZWFyIEZpbHRlcnMiLCJQQ2VudGVyQXBwbHlGaWx0ZXJzVGV4dCI6IkFwcGx5IiwiUENlbnRlckFsbG93QWxsQ29uc2VudFRleHQiOiJBbGxvdyBBbGwgQ29uc2VudCIsIlBDZW50ZXJDb29raWVzTGlzdFRleHQiOiJDb29raWUgTGlzdCIsIlBDZW50ZXJDYW5jZWxGaWx0ZXJzVGV4dCI6IkNhbmNlbCIsIlBDZW50ZXJFbmFibGVBY2NvcmRpb24iOmZhbHNlLCJJYWJUeXBlIjoiIiwiQWR2YW5jZWRBbmFseXRpY3NDYXRlZ29yeSI6IkMwMDAxIiwiUENHcnBEZXNjVHlwZSI6bnVsbCwiUENHcnBEZXNjTGlua1Bvc2l0aW9uIjpudWxsLCJQQ1ZlbmRvckZ1bGxMZWdhbFRleHQiOm51bGwsIkxlZ0ludFNldHRpbmdzIjpudWxsLCJQQ0FjY29yZGlvblN0eWxlIjoiUGx1c21pbnVzIiwiUENTaG93Q29uc2VudExhYmVscyI6ZmFsc2UsIlBDQWN0aXZlVGV4dCI6IkFjdGl2ZSIsIlBDSW5hY3RpdmVUZXh0IjoiSW5hY3RpdmUiLCJCYW5uZXJBZGRpdGlvbmFsRGVzY3JpcHRpb24iOiIiLCJCYW5uZXJBZGRpdGlvbmFsRGVzY1BsYWNlbWVudCI6IkFmdGVyRGVzY3JpcHRpb24iLCJQQ2VudGVyU2VsZWN0QWxsVmVuZG9yc1RleHQiOiJTZWxlY3QgQWxsIFZlbmRvcnMiLCJQQ2VudGVyRmlsdGVyVGV4dCI6IkZpbHRlciIsIlJlY29uc2VudEZyZXF1ZW5jeURheXMiOjM2NSwiVXNlR29vZ2xlVmVuZG9ycyI6ZmFsc2UsIlBDSUFCVmVuZG9yc1RleHQiOiJJQUIgVmVuZG9ycyIsIlBDSWxsdXNUZXh0IjoiSWxsdXN0cmF0aW9ucyIsIlBDR29vZ2xlVmVuZG9yc1RleHQiOiJHb29nbGUgVmVuZG9ycyIsIlBDVGVtcGxhdGVVcGdyYWRlIjp0cnVlLCJQQ1Nob3dQZXJzaXN0ZW50Q29va2llc0hvdmVyQnV0dG9uIjpmYWxzZSwiUENlbnRlckR5bmFtaWNSZW5kZXJpbmdFbmFibGUiOmZhbHNlLCJHbG9iYWxSZXN0cmljdGlvbkVuYWJsZWQiOmZhbHNlLCJHbG9iYWxSZXN0cmljdGlvbnMiOnt9LCJQQ2VudGVyVXNlR2VuZXJhbFZlbmRvcnNUb2dnbGUiOmZhbHNlLCJQQ2VudGVyR2VuZXJhbFZlbmRvcnNUZXh0IjoiT3RoZXIgVmVuZG9ycyIsIlBDZW50ZXJBbGxvd1ZlbmRvck9wdG91dCI6dHJ1ZSwiUENlbnRlckdlbmVyYWxWZW5kb3JUaGlyZFBhcnR5Q29va2llc1RleHQiOiJWaWV3IFZlbmRvciBEZXRhaWxzIiwiR2VuZXJhbFZlbmRvcnMiOltdLCJCYW5uZXJOb25JQUJWZW5kb3JMaXN0VGV4dCI6IiIsIlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW4iOiJMaWZlc3BhbiIsIlBDZW50ZXJWZW5kb3JMaXN0RGlzY2xvc3VyZSI6IkRldmljZSBTdG9yYWdlIERpc2Nsb3N1cmUiLCJQQ2VudGVyVmVuZG9yTGlzdE5vbkNvb2tpZVVzYWdlIjoiVGhpcyB2ZW5kb3IgdXRpbGl6ZXMgb3RoZXIgbWV0aG9kcyBvZiBzdG9yYWdlIG9yIGFjY2Vzc2luZyBpbmZvcm1hdGlvbiBpbiBhZGRpdGlvbiB0byBjb29raWVzLiIsIlBDZW50ZXJWZW5kb3JMaXN0RGVzY1RleHQiOiIiLCJQQ2VudGVyVmVuZG9yTGlzdFN0b3JhZ2VJZGVudGlmaWVyIjoiSWRlbnRpZmllciIsIlBDZW50ZXJWZW5kb3JMaXN0U3RvcmFnZVR5cGUiOiJUeXBlIiwiUENlbnRlclZlbmRvckxpc3RTdG9yYWdlUHVycG9zZXMiOiJQdXJwb3NlcyIsIlBDZW50ZXJWZW5kb3JMaXN0U3RvcmFnZURvbWFpbiI6IkRvbWFpbiIsIlBDVkxTRG9tYWluc1VzZWQiOiJEb21haW5zIFVzZWQiLCJQQ1ZMU1VzZSI6IlVzZSIsIlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW5EYXkiOiJEYXkiLCJQQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuRGF5cyI6IkRheXMiLCJQQ2VudGVyVmVuZG9yTGlzdExpZmVzcGFuTW9udGgiOiJNb250aCIsIlBDZW50ZXJWZW5kb3JMaXN0TGlmZXNwYW5Nb250aHMiOiJNb250aHMiLCJQQ0xpZmVTcGFuWXIiOiJZZWFyIiwiUENMaWZlU3BhbllycyI6IlllYXJzIiwiUENMaWZlU3BhblNlY3MiOiJBIGZldyBzZWNvbmRzIiwiUENMaWZlU3BhbldrIjoiV2VlayIsIlBDTGlmZVNwYW5Xa3MiOiJXZWVrcyIsIlBDQ29va2llUG9saWN5VGV4dCI6IlZpZXcgUHJpdmFjeSBQb2xpY3kiLCJCU2hvd1NhdmVCdG4iOnRydWUsIkJTYXZlQnRuVGV4dCI6IlNhdmUgQ2hvaWNlcyIsIkNvb2tpZUZpcnN0UGFydHlUZXh0IjoiRmlyc3QgUGFydHkiLCJDb29raWVUaGlyZFBhcnR5VGV4dCI6IlRoaXJkIFBhcnR5IiwiUENDb29raWVQb2xpY3lMaW5rU2NyZWVuUmVhZGVyIjoiTW9yZSBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHByaXZhY3ksIG9wZW5zIGluIGEgbmV3IHRhYiIsIlBDTG9nb1NjcmVlblJlYWRlciI6IkNvbXBhbnkgTG9nbyIsIkJuckxvZ29BcmlhIjoiQ29tcGFueSBMb2dvIiwiUHVibGlzaGVyQ0MiOiJERSIsIkJDbG9zZUJ1dHRvblR5cGUiOiJJY29uIiwiQkNvbnRpbnVlVGV4dCI6IkNvbnRpbnVlIHdpdGhvdXQgQWNjZXB0aW5nIiwiUENDbG9zZUJ1dHRvblR5cGUiOiJJY29uIiwiUENDb250aW51ZVRleHQiOiJDb250aW51ZSB3aXRob3V0IEFjY2VwdGluZyIsIkJhbm5lckZvY3VzIjp0cnVlLCJCUmVqZWN0Q29uc2VudFR5cGUiOiJPYmplY3RUb0xJIiwiQmFubmVyUmVsYXRpdmVGb250U2l6ZXNUb2dnbGUiOmZhbHNlLCJQQ0FsbG93VG9nZ2xlTGJsIjoiQWxsb3ciLCJHQ0VuYWJsZSI6dHJ1ZSwiR0NBbmFseXRpY3NTdG9yYWdlIjoiQzAwMDQiLCJHQ0FkU3RvcmFnZSI6IkMwMDA0IiwiR0NBZFVzZXJEYXRhIjoiQzAwMDQiLCJHQ0FkUGVyc29uYWxpemF0aW9uIjoiQzAwMDQiLCJHQ1JlZGFjdEVuYWJsZSI6ZmFsc2UsIkdDV2FpdFRpbWUiOjAsIkdDRnVuY3Rpb25hbGl0eVN0b3JhZ2UiOiJDMDAwNCIsIkdDUGVyc29uYWxpemF0aW9uU3RvcmFnZSI6IkMwMDA0IiwiR0NTZWN1cml0eVN0b3JhZ2UiOiJDMDAwNCIsIlBDR2VuZXJhbFZlbmRvcnNQb2xpY3lUZXh0IjoiVmlldyBQcml2YWN5IFBvbGljeSIsIlBDSUFCVmVuZG9yTGVnSW50Q2xhaW1UZXh0IjoiVmlldyBMZWdpdGltYXRlIEludGVyZXN0IENsYWltIiwiUENPcGVuc0Nvb2tpZXNEZXRhaWxzQWxlcnQiOiJDb29raWUgRGV0YWlscyBidXR0b24gb3BlbnMgQ29va2llIExpc3QgbWVudSIsIlBDT3BlbnNWZW5kb3JEZXRhaWxzQWxlcnQiOiJJQUIgVmVuZG9yIERldGFpbHMgYnV0dG9uIG9wZW5zIFZlbmRvciBMaXN0IG1lbnUiLCJBcmlhT3BlblByZWZlcmVuY2VzIjoiT3BlbiBQcmVmZXJlbmNlcyIsIkFyaWFDbG9zZVByZWZlcmVuY2VzIjoiQ2xvc2UgUHJlZmVyZW5jZXMiLCJBcmlhUHJpdmFjeSI6IlByaXZhY3kiLCJBcmlhRGVzY3JpYmVkQnkiOiJQcm9jZXNzaW5nIGlzIHJlcXVpcmVkLCBjaG9pY2UgaXMgYWx3YXlzIGVuYWJsZWQuIiwiQkNvb2tpZVBvbGljeUxpbmtTY3JlZW5SZWFkZXIiOiJNb3JlIGluZm9ybWF0aW9uIGFib3V0IHlvdXIgcHJpdmFjeSwgb3BlbnMgaW4gYSBuZXcgdGFiIiwiQk5vQ3Vyc29yRm9jdXMiOmZhbHNlLCJCU2hvd1BvbGljeUxpbmsiOnRydWUsIlBDZW50ZXJWZW5kb3JMaXN0U2VhcmNoIjoiU2VhcmNoIHZlbmRvcnMiLCJQQ2VudGVyQ29va2llTGlzdFNlYXJjaCI6IlNlYXJjaOKApiIsIlBDZW50ZXJMZWdpdEludGVyZXN0VGV4dCI6IkxlZ2l0aW1hdGUgSW50ZXJlc3QiLCJQQ2VudGVyTGVnSW50Q29sdW1uSGVhZGVyIjoiTGVnaXRpbWF0ZSBJbnRlcmVzdCIsIlBDZW50ZXJDb25zZW50VGV4dCI6IkNvbnNlbnQiLCJQQ2VudGVyVmVuZG9yTGlzdEZpbHRlckFyaWEiOiJGaWx0ZXIiLCJQQ2VudGVyQ29va2llTGlzdEZpbHRlckFyaWEiOiJGaWx0ZXIiLCJCSW5pdGlhbEZvY3VzIjp0cnVlLCJCSW5pdGlhbEZvY3VzTGlua0FuZEJ1dHRvbiI6ZmFsc2UsIk5ld1ZlbmRvcnNJbmFjdGl2ZUVuYWJsZWQiOmZhbHNlLCJQQ2VudGVyRmlsdGVyQXBwbGllZEFyaWEiOiJBcHBsaWVkIiwiUENlbnRlckZpbHRlckNsZWFyZWRBcmlhIjoiRmlsdGVycyBDbGVhcmVkIiwiUENlbnRlclZlbmRvckxpc3RTY3JlZW5SZWFkZXIiOiJWZW5kb3IgRGV0YWlscyBidXR0b24gb3BlbnMgVmVuZG9yIExpc3QgbWVudSIsIlBDZW50ZXJDb29raWVTZWFyY2hBcmlhTGFiZWwiOiJDb29raWUgbGlzdCBzZWFyY2giLCJQQ2VudGVyVmVuZG9yU2VhcmNoQXJpYUxhYmVsIjoiVmVuZG9yIGxpc3Qgc2VhcmNoIiwiUENlbnRlclZlbmRvckxpc3RUaXRsZSI6bnVsbCwiUENlbnRlclZlbmRvckxpc3RMaW5rVGV4dCI6IiIsIlBDZW50ZXJWZW5kb3JMaXN0TGlua0FyaWFMYWJlbCI6IiIsIklzU2hvd0Fsd2F5c0FjdGl2ZVRleHQiOnRydWUsIlBDZW50ZXJVc2VySWRUaXRsZVRleHQiOiIiLCJQQ2VudGVyVXNlcklkRGVzY3JpcHRpb25UZXh0IjoiIiwiUENlbnRlclVzZXJJZFRpbWVzdGFtcFRpdGxlVGV4dCI6IiIsIlBDZW50ZXJVc2VySWROb3RZZXRDb25zZW50ZWRUZXh0IjoiIiwiQkltcHJpbnRMaW5rU2NyZWVuUmVhZGVyIjoiTGVnYWwgSW5mb3JtYXRpb24sIG9wZW5zIGluIGEgbmV3IHRhYiIsIkJTaG93SW1wcmludExpbmsiOnRydWUsIlBDZW50ZXJJbXByaW50TGlua1NjcmVlblJlYWRlciI6IkxlZ2FsIEluZm9ybWF0aW9uLCBvcGVucyBpbiBhIG5ldyB0YWIiLCJQQ2VudGVySW1wcmludExpbmtUZXh0IjoiTGVnYWwgTm90aWNlIiwiUENlbnRlckltcHJpbnRMaW5rVXJsIjoiaHR0cHM6Ly93d3cuZGhsLmNvbS9nbG9iYWwtZW4vaG9tZS9mb290ZXIvbGVnYWwtbm90aWNlLmh0bWwiLCJQQ0NhdGVnb3J5U3R5bGUiOiJUb2dnbGUiLCJQQ1ZTRW5hYmxlIjpmYWxzZSwiUENWU09wdE91dCI6ZmFsc2UsIlBDVlNDYXRlZ29yeVZpZXciOmZhbHNlLCJQQ1ZTRXhwYW5kQ2F0ZWdvcnkiOmZhbHNlLCJQQ1ZTRXhwYW5kR3JvdXAiOmZhbHNlLCJQQ1ZTTGlzdFRpdGxlIjpudWxsLCJQQ1ZTTmFtZVRleHQiOm51bGwsIlBDVlNQYXJlbnRDb21wYW55VGV4dCI6bnVsbCwiUENWU0FkZHJlc3NUZXh0IjpudWxsLCJQQ1ZTRGVmYXVsdENhdGVnb3J5VGV4dCI6bnVsbCwiUENWU0RlZmF1bHREZXNjcmlwdGlvblRleHQiOm51bGwsIlBDVlNEUE9FbWFpbFRleHQiOm51bGwsIlBDVlNEUE9MaW5rVGV4dCI6bnVsbCwiUENWU1ByaXZhY3lQb2xpY3lMaW5rVGV4dCI6bnVsbCwiUENWU0Nvb2tpZVBvbGljeUxpbmtUZXh0IjpudWxsLCJQQ1ZTT3B0T3V0TGlua1RleHQiOm51bGwsIlBDVlNMZWdhbEJhc2lzVGV4dCI6bnVsbCwiUENWU0FsbG93QWxsVGV4dCI6bnVsbCwiQlNob3dPcHRPdXRTaWduYWwiOmZhbHNlLCJCT3B0T3V0U2lnbmFsVGV4dCI6IiIsIlBDU2hvd09wdE91dFNpZ25hbCI6ZmFsc2UsIlBDT3B0T3V0U2lnbmFsVGV4dCI6IiIsIkJPcHRPdXRTaWduYWxUZXh0QWZ0ZXJDb25zZW50IjoiIiwiUENPcHRPdXRTaWduYWxUZXh0QWZ0ZXJDb25zZW50IjoiIiwiUENTaG93RG91YmxlT3B0SW5TaWduYWwiOmZhbHNlLCJQQ0RvdWJsZU9wdEluU2lnbmFsVGV4dCI6IiIsIlBDRG91YmxlT3B0SW5TaWduYWxEZXNjcmlwdGlvbiI6IiIsIlBDRG91YmxlT3B0SW5TaWduYWxDYW5jZWxUZXh0IjoiIiwiUENEb3VibGVPcHRJblNpZ25hbENvbmZpcm1UZXh0IjoiIiwiUENIb3N0Tm90Rm91bmQiOiJkaWQgbm90IG1hdGNoIGFueSBIb3N0cyIsIlBDVmVuZG9yTm90Rm91bmQiOiJkaWQgbm90IG1hdGNoIGFueSBWZW5kb3JzIiwiUENUZWNoTm90Rm91bmQiOiJkaWQgbm90IG1hdGNoIGFueSBUZWNobm9sb2dpZXMiLCJQQ1RyYWNraW5nVGVjaFRpdGxlIjoiVGVjaG5vbG9neSBMaXN0IiwiUENUZWNoRGV0YWlsc1RleHQiOiJUZWNobm9sb2dpZXMgTGlzdCIsIlBDVGVjaERldGFpbHNBcmlhTGFiZWwiOiJUZWNobm9sb2dpZXMgTGlzdCBidXR0b24gb3BlbnMgVHJhY2tpbmcgVGVjaCBsaXN0IG1lbnUiLCJQQ1Nob3dUcmFja2luZ1RlY2giOmZhbHNlLCJQQ0Nvb2tpZXNMYWJlbCI6IkNvb2tpZXMiLCJQQ0xvY2FsU3RvcmFnZUxhYmVsIjoiTG9jYWwgU3RvcmFnZVtzXSIsIlBDU2Vzc2lvblN0b3JhZ2VMYWJlbCI6IlNlc3Npb24gU3RvcmFnZVtzXSIsIlBDTG9jYWxTdG9yYWdlRHVyYXRpb25UZXh0IjoiUGVybWFuZW50IiwiUENTZXNzaW9uU3RvcmFnZUR1cmF0aW9uVGV4dCI6IlNlc3Npb24iLCJCUmVnaW9uQXJpYUxhYmVsIjoiQ29va2llIGJhbm5lciIsIlBDUmVnaW9uQXJpYUxhYmVsIjoiUHJlZmVyZW5jZSBjZW50ZXIiLCJJc0dQUEVuYWJsZWQiOmZhbHNlLCJJc0dQUEtub3duQ2hpbGRBcHBsaWNhYmxlIjpmYWxzZSwiSXNHUFBEYXRhUHJvY2Vzc2luZ0FwcGxpY2FibGUiOmZhbHNlLCJHUFBQdXJwb3NlcyI6eyJTYWxlT3B0T3V0Q0lEIjoiIiwiU2hhcmluZ09wdE91dENJRCI6IiIsIlBlcnNvbmFsRGF0YUNJRCI6IiIsIktub3duQ2hpbGRTZWxsUElDSUQiOiIiLCJLbm93bkNoaWxkUHJvY2Vzc0NJRCI6IiIsIktub3duQ2hpbGRTaGFyZVBJQ0lEIjoiIiwiU2Vuc2l0aXZlUElDSUQiOiIiLCJUYXJnZXRlZEFkdmVydGlzaW5nT3B0T3V0Q0lEIjoiIiwiU2Vuc2l0aXZlU0lDSUQiOiIiLCJHZW9sb2NhdGlvbkNJRCI6IiIsIlJSRVBJbmZvQ0lEIjoiIiwiQ29tbXVuaWNhdGlvbkNJRCI6IiIsIkdlbmV0aWNDSUQiOiIiLCJCaW9tZXRyaWNDSUQiOiIiLCJIZWFsdGhDSUQiOiIiLCJTZXh1YWxPcmllbnRhdGlvbkNJRCI6IiIsIlJhY2VDSUQiOiIiLCJSZWxpZ2lvbkNJRCI6IiIsIkltbWlncmF0aW9uQ0lEIjoiIiwiUERDQWJvdmVBZ2VDSUQiOiIiLCJQRENCZWxvd0FnZUNJRCI6IiIsIlVuaW9uTWVtYmVyc2hpcENJRCI6IiIsIktub3duQ2hpbGRQcm9jZXNzQmVsb3dBZ2UxM0NJRCI6IiIsIktub3duQ2hpbGRQcm9jZXNzQmV0d2VlbkFnZTEzVG8xNkNJRCI6IiIsIktub3duQ2hpbGRQcm9jZXNzQmV0d2VlbkFnZTE2VG8xOENJRCI6IiIsIktub3duQ2hpbGRTZWxsQWdlMTZUbzE4Q0lEIjoiIiwiS25vd25DaGlsZFByb2Nlc3NBZ2UxNlRvMThDSUQiOiIiLCJLbm93bkNoaWxkU2VsbEFnZTE2VG8xN0NJRCI6IiIsIktub3duQ2hpbGRQcm9jZXNzQWdlMTZUbzE3Q0lEIjoiIiwiVHJhbnNnZW5kZXJDSUQiOiIiLCJOYXRpb25hbE9yaWdpbkNJRCI6IiIsIkNyaW1lVmljdGltQ0lEIjoiIiwiQ29uc3VtZXJIZWFsdGhDSUQiOiIifSwiSXNNU1BBRW5hYmxlZCI6ZmFsc2UsIk1TUEFPcHRpb25Nb2RlIjoiIiwiVXNlR1BQVVNOYXRpb25hbCI6ZmFsc2UsIlBDVkxpc3REYXRhRGVjbGFyYXRpb25UZXh0IjoiRGF0YSBEZWNsYXJhdGlvbiIsIlBDVkxpc3REYXRhUmV0ZW50aW9uVGV4dCI6IkRhdGEgUmV0ZW50aW9uIiwiUENWTGlzdFN0ZFJldGVudGlvblRleHQiOiJTdGFuZGFyZCBSZXRlbnRpb24iLCJQQ1ZlbmRvcnNDb3VudFRleHQiOiJbVkVORE9SX05VTUJFUl0gcGFydG5lcnMgY2FuIHVzZSB0aGlzIHB1cnBvc2UiLCJQQ1ZlbmRvcnNDb3VudEZlYXR1cmVUZXh0IjoiW1ZFTkRPUl9OVU1CRVJdIHBhcnRuZXJzIGNhbiB1c2UgdGhpcyBmZWF0dXJlIiwiUENWZW5kb3JzQ291bnRTcGNGZWF0dXJlVGV4dCI6IltWRU5ET1JfTlVNQkVSXSBwYXJ0bmVycyBjYW4gdXNlIHRoaXMgc3BlY2lhbCBmZWF0dXJlIiwiUENWZW5kb3JzQ291bnRTcGNQdXJwb3NlVGV4dCI6IltWRU5ET1JfTlVNQkVSXSBwYXJ0bmVycyBjYW4gdXNlIHRoaXMgc3BlY2lhbCBwdXJwb3NlIiwiSUFCRGF0YUNhdGVnb3JpZXMiOltdLCJJQUJHcm91cHNQcmVmaXhEYXRhIjpudWxsLCJVc2VOb25TdGFuZGFyZFN0YWNrcyI6ZmFsc2UsIklzUmVxdWlyZVNpZ25hdHVyZUVuYWJsZWQiOmZhbHNlLCJSZXF1aXJlU2lnbmF0dXJlQ0lEIjoiIiwiUENSZXF1aXJlU2lnbmF0dXJlRmllbGRMYWJlbCI6IkVtYWlsIiwiUENSZXF1aXJlU2lnbmF0dXJlSGVhZGVyVGV4dCI6IkF1dGhvcml6YXRpb24gTmVlZGVkIiwiUENSZXF1aXJlU2lnbmF0dXJlSGVhZGVyRGVzYyI6IkFkZGl0aW9uYWwgY29uc2VudCBhdXRob3JpemF0aW9uIGlzIG5lZWRlZCBmb3IgdGhlIGZvbGxvd2luZyByZWFzb246IiwiUENSZXF1aXJlU2lnbmF0dXJlQ29uZmlybUJ0blRleHQiOiJDb25maXJtIiwiUENSZXF1aXJlU2lnbmF0dXJlUmVqZWN0QnRuVGV4dCI6IlJlamVjdCIsIlBDUmVxdWlyZVNpZ25hdHVyZUhlbHBUZXh0IjoiVGhpcyBmaWVsZCBpcyByZXF1aXJlZCB0byBjb25zZW50IHRvIHRoaXMgY2F0ZWdvcnkuIiwiTUNNRGF0YSI6eyJFbmFibGVkIjpmYWxzZSwiU3RvcmFnZVR5cGVzIjp7ImFkX3N0b3JhZ2UiOiIiLCJhbmFseXRpY3Nfc3RvcmFnZSI6IiJ9fSwiQUNNRGF0YSI6eyJFbmFibGVkIjpmYWxzZSwiU3RvcmFnZVR5cGVzIjp7ImFkX3N0b3JhZ2UiOiIiLCJ1c2VyX2RhdGEiOiIifX0sIkJhbm5lckJQT0ZpcnN0UG9zaXRpb24iOiJDT09LSUVfU0VUVElOR1MiLCJCYW5uZXJCUE9TZWNvbmRQb3NpdGlvbiI6IlJFSkVDVF9BTEwiLCJCYW5uZXJCUE9UaGlyZFBvc2l0aW9uIjoiQUNDRVBUX0FMTCIsIkJhbm5lckJQT0ZvdXJ0aFBvc2l0aW9uIjpudWxsLCJQQ0JQT0ZpcnN0UG9zaXRpb24iOiJBQ0NFUFRfQUxMIiwiUENCUE9TZWNvbmRQb3NpdGlvbiI6IlJFSkVDVF9BTEwiLCJQQ0JQT1RoaXJkUG9zaXRpb24iOiJTQVZFX1BSRUZFUkVOQ0UiLCJQQ0Nvb2tpZUxpc3RGaWx0ZXJzVGV4dCI6IkNvb2tpZSBMaXN0IEZpbHRlcnMiLCJDYW5HZW5lcmF0ZU5vdEdpdmVuUmVjZWlwdHMiOnRydWUsIkFtYXpvbkNvbnNlbnRTcmNVcmwiOiJodHRwczovL2MuYW1hem9uLWFkc3lzdGVtLmNvbS9hYXQvYW16bi1jb25zZW50LmpzIiwiUENlbnRlckFwcGx5RmlsdGVyc0FyaWFMYWJlbCI6IkFwcGx5IGZpbHRlcnMiLCJQQ2VudGVyQ2FuY2VsRmlsdGVyQXJpYUxhYmVsIjoiQ2FuY2VsIGZpbHRlciBhcHBsaWNhdGlvbiIsIlBDZW50ZXJDbGVhckZpbHRlcnNBcmlhTGFiZWwiOiJDbGVhciBmaWx0ZXJzIiwiUENlbnRlclRvZ2dsZUFjdGl2ZUNvbG9yIjoiI2NkZGNmMiIsIlBDZW50ZXJUb2dnbGVJbkFjdGl2ZUNvbG9yIjoiIzc2NzY3NiIsIlBDZW50ZXJDb29raWVDYXRlZ29yaWVzQXJpYUxhYmVsIjoiQ29va2llIENhdGVnb3JpZXMiLCJHUENPcHRPdXROb3RlVGV4dCI6Ik9wdGVkIG91dCBkdWUgdG8gR1BDIHNpZ25hbC4iLCJETlRPcHRPdXROb3RlVGV4dCI6Ik9wdGVkIG91dCBkdWUgdG8gRE5UIHNpZ25hbC4iLCJBVFRPcHRPdXROb3RlVGV4dCI6Ik9wdGVkIG91dCBkdWUgdG8gQVRUIHNpZ25hbC4ifSwiQ29tbW9uRGF0YSI6eyJwY2VudGVyQ29udGludWVXb0FjY2VwdExpbmtDb2xvciI6IiM2OTY5NjkiLCJJYWJUaGlyZFBhcnR5Q29va2llVXJsIjoiY29va2llcy5vbmV0cnVzdC5tZ3IuY29uc2Vuc3Uub3JnIiwiT3B0YW5vbkhpZGVBY2NlcHRCdXR0b24iOiIiLCJPcHRhbm9uU3R5bGUiOiJtb2Rlcm4iLCJPcHRhbm9uU3RhdGljQ29udGVudExvY2F0aW9uIjoiIiwiQmFubmVyQ3VzdG9tQ1NTIjoiI29uZXRydXN0LXBjLWJ0bi1oYW5kbGVyIHsgXG4gICAgYm9yZGVyLWNvbG9yOiAjRDQwNTExICFpbXBvcnRhbnQ7O1xufSBcblxuXG4jb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LWJhbm5lci1zZGsgYVtocmVmXSwgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1iYW5uZXItc2RrIGFbaHJlZl0gZm9udCwgI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1saW5rLWJ0biB7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1iYW5uZXItc2RrIGFbaHJlZl0ge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4jb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LWJhbm5lci1zZGsgYVtocmVmXTpob3ZlciB7XG4gICAgY29sb3I6ICNENDA1MTEgIWltcG9ydGFudDtcbn1cblxuI29uZXRydXN0LXBjLXNkayAjb3QtcGMtY29udGVudC5vdC1wYy1zY3JvbGxiYXIge1xuICAgIGJvdHRvbTogNzRweDtcbn1cblxuI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXBvbGljeSB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbn1cblxuI29uZXRydXN0LXBvbGljeS10ZXh0IGEge1xudGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbn1cbiNvbmV0cnVzdC1wb2xpY3ktdGV4dCBhOmhvdmVyIHtcbnRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbiNvdC1zZGstYnRuLm90LXNkay1zaG93LXNldHRpbmdzIHtcbmJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufSIsIlBDQ3VzdG9tQ1NTIjoiLyppbmhlcml0IERlbGl2ZXJ5IGZvbnQqLyBcbiNvbmV0cnVzdC1iYW5uZXItc2Rre1xuICAgIGZvbnQtZmFtaWx5OiBEZWxpdmVyeSxWZXJkYW5hLHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbn1cbiNvbmV0cnVzdC1wYy1zZGsgLm90LXBsdXMtbWludXMgc3BhbiAge1xuYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbn1cblxuI29uZXRydXN0LWNvbnNlbnQtc2RrIHtcbiAgICBmb250LWZhbWlseTogRGVsaXZlcnlSZWd1bGFyLHNhbnMtc2VyaWY7XG59XG4jb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS12ZW5kb3JzLWxpc3QtaGFuZGxlciwgI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktaG9zdC1saXN0LWhhbmRsZXI6aG92ZXIge1xuICAgIGNvbG9yOiAjRjkxMzIwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgZm9udC1zaXplOiAuNzVlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNvbmV0cnVzdC1iYW5uZXItc2RrIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRlY29yYXRpb246bm9uZSAhaW1wb3J0YW50O1xufVxuXG4jb25ldHJ1c3QtYmFubmVyLXNkayBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI0Y5MTMyMCAhaW1wb3J0YW50O1xuICAgIGRlY29yYXRpb246bm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbiNvbmV0cnVzdC1wYy1idG4taGFuZGxlci5jb29raWUtc2V0dGluZy1saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI0Q0MDUxMSAhaW1wb3J0YW50O1xuICAgIGRlY29yYXRpb246bm9uZTtcbn1cblxuI29uZXRydXN0LXBjLWJ0bi1oYW5kbGVyLmNvb2tpZS1zZXR0aW5nLWxpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBcbiAgICBjb2xvcjogI0Y5MTMyMCAhaW1wb3J0YW50O1xuICAgIGRlY29yYXRpb246bm9uZTtcbn1cblxuI29uZXRydXN0LWFjY2VwdC1idG4taGFuZGxlciB7XG4gICAgZm9udC1mYW1pbHk6IERlbGl2ZXJ5LFZlcmRhbmEsc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkNDA1MTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q0MDUxMTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbWFyZ2luOiAwIDAgMS40cmVtO1xuICAgIHBhZGRpbmc6IDAgMS41NHJlbTtcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIG1pbi1oZWlnaHQ6IDQuMnJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7ICBcbn1cblxuI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4jb25ldHJ1c3QtcGMtc2RrIC5idXR0b24tdGhlbWU6aG92ZXIge1xuYmFja2dyb3VuZC1jb2xvcjogI0Y5MTMyMDtcbiAgICBib3JkZXItY29sb3I6ICNGOTEzMjA7XG4gICAgY29sb3I6ICNGRkZGRkY7XG59XG5cblxuI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLmFjY29yZGlvbi10ZXh0LCAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXBjLXNkayAuYWNjb3JkaW9uLXRleHQgLmNvb2tpZS1zdWJncm91cC10b2dnbGUgLm90LXN3aXRjaC50b2dnbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzMgIWltcG9ydGFudDtcbn1cblxuLyogSGlkZSAnQWxsb3cgQWxsJyBvbiBIb3N0IGxldmVsICovXG4jb25ldHJ1c3QtcGMtc2RrICNzZWxlY3QtYWxsLWNvbnRhaW5lciAub3QtY2hlY2tib3gge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBDb2xvciBBbHdheXMgQWN0aXZlICovXG4jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5vdC1hbHdheXMtYWN0aXZlLCAjb25ldHJ1c3QtcGMtc2RrIC5vdC1jYXQtZ3JwIC5vdC1hbHdheXMtYWN0aXZle1xuICAgIGZvbnQtc2l6ZTogLjg4ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA1cHg7XG4gICAgY29sb3I6ICNkNDA1MTE7XG4gICAgfVxuXG4vKiBDb2xvciBPcHRpbiBUb2dnbGUgYWN0aXZlICovXG4jb25ldHJ1c3QtcGMtc2RrIC5zd2l0Y2gtY2hlY2tib3g6Y2hlY2tlZCsub3Qtc3dpdGNoLWxhYmVsIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4gMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4gMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluIDBzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluIDBzO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNENDA1MTE7XG59XG5cblxuLyogQ29sb3IgT3B0aW4gVG9nZ2xlICovXG4jb25ldHJ1c3QtcGMtc2RrIC5vdC10Z2wgaW5wdXQ6Y2hlY2tlZCsub3Qtc3dpdGNoIC5vdC1zd2l0Y2gtbm9iOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5MTMyMDtcbn1cblxuLyojb25ldHJ1c3QtcGMtc2RrIC5vdC10Z2wgaW5wdXQ6Zm9jdXMrLm90LXN3aXRjaCAub3Qtc3dpdGNoLW5vYiB7XG5vdXRsaW5lLXN0eWxlOiBub25lICFpbXBvcnRhbnQ7XG5ib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn0qL1xuXG4jb25ldHJ1c3QtcGMtc2RrIC5ob3N0LW9wdGlvbi1ncm91cCAudmVuZG9yLWhvc3Qge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IC44ZW07XG4gICAgY29sb3I6ICMzMzMzMzMgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xufVxuXG4jb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1mb290ZXItbG9nbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNXB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1pdGVtPmJ1dHRvbjpmb2N1cywgI29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1pdGVtPmJ1dHRvbjpmb2N1cywgI29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dC5vdC1jYXQtaXRlbT5idXR0b246Zm9jdXMsICNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1jbnRyPmJ1dHRvbjpmb2N1cyxcbiNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrICo6Zm9jdXMsICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC12bHN0LWNudHIgPiBhOmZvY3VzIHtcbm91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn0qL1xuI29uZXRydXN0LWNvbnNlbnQtc2RrIC5wcml2YWN5LW5vdGljZS1saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG4jb25ldHJ1c3QtYmFubmVyLXNkayBhOmhvdmVyLCAjb25ldHJ1c3QtcGMtc2RrIGE6aG92ZXIsICNvdC1zZGstY29va2llLXBvbGljeSBhOmhvdmVyIHtcbmNvbG9yOiByZWQgIWltcG9ydGFudDtcbn1cbiNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIGJ1dHRvbi5vbmV0cnVzdC12ZW5kb3JzLWxpc3QtaGFuZGxlciB7XG50ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgYnV0dG9uLm9uZXRydXN0LXZlbmRvcnMtbGlzdC1oYW5kbGVyOmhvdmVyIHtcbmNvbG9yOiByZWQgIWltcG9ydGFudDtcbn1cblxuI290LXNkay1jb29raWUtcG9saWN5IGEge1xudGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4jb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS12ZW5kb3JzLWxpc3QtaGFuZGxlciwgI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktaG9zdC1saXN0LWhhbmRsZXI6aG92ZXIge1xuZm9udC1zaXplOiAuODEzZW0gIWltcG9ydGFudDtcbn1cblxuI29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1idXR0b246Zm9jdXMsICNvbmV0cnVzdC1iYW5uZXItc2RrIDpub3QoLm90LWxlZy1idG4tY29udGFpbmVyKT5idXR0b246Zm9jdXMsICNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay1idXR0b246Zm9jdXMsICNvbmV0cnVzdC1wYy1zZGsgOm5vdCgub3QtbGVnLWJ0bi1jb250YWluZXIpPmJ1dHRvbjpmb2N1cywgI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstYnV0dG9uOmZvY3VzLCAjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgOm5vdCgub3QtbGVnLWJ0bi1jb250YWluZXIpPmJ1dHRvbjpmb2N1cyB7XG5vdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLyogc2Nyb2xsIGNoYW5nZSBzdGFydCAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiNvbmV0cnVzdC1wYy1zZGsgLm90LXBjLWZvb3RlciB7XG5wb3NpdGlvbjogcmVsYXRpdmU7XG5ib3JkZXItdG9wOiBub25lO1xufVxuI29uZXRydXN0LXBjLXNkayB7XG5vdmVyZmxvdy15OiBzY3JvbGw7XG59XG4jb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1jb250ZW50LCAjb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1sc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNzVweCk7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxufVxuLyogc2Nyb2xsIGNoYW5nZSBlbmQgKi9cblxuLm90LWZsb2F0aW5nLWJ1dHRvbiB7XG5kaXNwbGF5OiBub25lO1xufVxuXG4jb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1jb250ZW50Lm90LXBjLXNjcm9sbGJhciB7XG4gICAgYm90dG9tOiA2MnB4O1xufVxuXG4jb25ldHJ1c3QtcGMtc2RrIC5vdC1idG4tY29udGFpbmVyIGJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogN3B4O1xufVxuXG4jb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1sb2dvIHtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgd2lkdGg6IGF1dG87ICAgIFxufVxuXG4jb25ldHJ1c3QtcGMtc2RrICNjbG9zZS1wYy1idG4taGFuZGxlci5vdC1jbG9zZS1pY29uIHtcbiAgICAgICAgdG9wOiAwO1xufVxuXG4vKiBleHByZXNzLXJlc291cmNlcy5kaGwuY29tIGZpeCBzdGFydCovXG5saS5vdC1ob3N0LWl0ZW0ge1xuZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxubGkub3QtaG9zdC1pdGVtOmFmdGVyLFxubGkub3QtaG9zdC1pbmZvOmFmdGVye1xuZGlzcGxheTogbm9uZTtcbn1cblxuI290LXBjLWRlc2MgYSB7XG50ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xufVxuI290LXBjLWRlc2MgYTpob3ZlciB7XG50ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogZXhwcmVzcy1yZXNvdXJjZXMuZGhsLmNvbSBmaXggZW5kICovXG5cbi8qIGRobC5jb20gZml4ZXMgc3RhcnQgKi9cbiNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtYmFubmVyLXNkayBhW2hyZWZdLCAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LWJhbm5lci1zZGsgYVtocmVmXSBmb250LCAjb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LWJhbm5lci1zZGsgLm90LWxpbmstYnRuIHtcbiAgICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtYWNjZXB0LWJ0bi1oYW5kbGVyLCAjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcmVqZWN0LWFsbC1oYW5kbGVyLCAjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcGMtYnRuLWhhbmRsZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi8qIGRobC5jb20gZml4ZXMgZW5kICovXG5cbiNvbmV0cnVzdC1wYy1zZGsgLm90LXBjLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuI29uZXRydXN0LXBjLXNkayAjYWNjZXB0LXJlY29tbWVuZGVkLWJ0bi1oYW5kbGVyIHtcbm1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ3N3B4KSB7XG4jb25ldHJ1c3QtcGMtc2RrLm90LWZ0ci1zdGFja2VkIC5vdC1wYy1mb290ZXIgYnV0dG9uIHtcbiAgICB3aWR0aDogaW5pdGlhbCAhaW1wb3J0YW50O1xufVxufVxuXG4jb25ldHJ1c3QtcGMtc2RrIC5vdC10Z2wgaW5wdXQ6Y2hlY2tlZCsub3Qtc3dpdGNoIC5vdC1zd2l0Y2gtbm9iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5O1xufVxuXG5odG1sW2Rpcj1cInJ0bFwiXSAjb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG59XG5cbmh0bWxbZGlyPXJ0bF0gI29uZXRydXN0LWNvbnNlbnQtc2RrICNvbmV0cnVzdC1wYy1zZGsgLm90LXN3aXRjaC1ub2I6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpO1xufVxuXG5odG1sW2Rpcj1ydGxdICNvbmV0cnVzdC1wYy1zZGsgLm90LXRnbCBpbnB1dDpjaGVja2VkKy5vdC1zd2l0Y2ggLm90LXN3aXRjaC1ub2I6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjkxMzIwICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpICFpbXBvcnRhbnQ7XG59XG5odG1sW2Rpcj1ydGxdICNvbmV0cnVzdC1jb25zZW50LXNkayAjb25ldHJ1c3QtcGMtc2RrIC5vdC1zd2l0Y2gtbm9iOmJlZm9yZSB7XG5yaWdodDogdW5zZXQ7XG59IiwiUGNUZXh0Q29sb3IiOiIjRkZGRkZGIiwiUGNCdXR0b25Db2xvciI6IiNENDA1MTEiLCJQY0J1dHRvblRleHRDb2xvciI6IiNGRkZGRkYiLCJQY0JhY2tncm91bmRDb2xvciI6IiMzMzMzMzMiLCJQY01lbnVDb2xvciI6IiNGNEY0RjQiLCJQY01lbnVIaWdoTGlnaHRDb2xvciI6IiNGRkZGRkYiLCJQY0FjY29yZGlvbkJhY2tncm91bmRDb2xvciI6IiMzMzMzMzMiLCJQQ2VudGVyRXhwYW5kVG9WaWV3VGV4dCI6IiIsIlBjRW5hYmxlVG9nZ2xlcyI6ZmFsc2UsIlBjTGlua3NUZXh0Q29sb3IiOiIjRkZGRkZGIiwiVGV4dENvbG9yIjoiI0ZGRkZGRiIsIkJ1dHRvbkNvbG9yIjoiI0Q0MDUxMSIsIkJhbm5lck1QQnV0dG9uQ29sb3IiOiIjRDQwNTExIiwiQmFubmVyTVBCdXR0b25UZXh0Q29sb3IiOiIjRkZGRkZGIiwiQnV0dG9uVGV4dENvbG9yIjoiI0ZGRkZGRiIsIkJhY2tncm91bmRDb2xvciI6IiMzMzMzMzMiLCJCYW5uZXJMaW5rc1RleHRDb2xvciI6IiNGRkZGRkYiLCJCYW5uZXJBY2NvcmRpb25CYWNrZ3JvdW5kQ29sb3IiOiIjRTlFOUU5IiwiQ29va2llUGVyc2lzdGVudExvZ28iOiJodHRwczovL2Nkbi5jb29raWVsYXcub3JnL2xvZ29zL3N0YXRpYy9vdF9wZXJzaXN0ZW50X2Nvb2tpZV9pY29uLnBuZyIsIk9wdGFub25Mb2dvIjoiaHR0cHM6Ly9jZG4uY29va2llbGF3Lm9yZy9sb2dvcy85Mzc1YmFkNy1mNjVlLTRmOGEtYmMxNi04MjU0NzIzYmQ2NmEvMjMzZGFjMTgtMzE3Yy00YzJjLTk5MTQtN2ZhYzQ3ODk1MjZmLzk1YjJiZjNlLTBiYTUtNGUzOC04Y2ZiLWQxOWNmYTRmNWJmNi9ESExfTG9nby5QTkciLCJCbnJMb2dvIjoiIiwiT25lVHJ1c3RGb290ZXJMb2dvIjoiaHR0cHM6Ly9jZG4uY29va2llbGF3Lm9yZy9sb2dvcy9zdGF0aWMvcG93ZXJlZF9ieV9sb2dvLnN2ZyIsIk9wdGFub25Db29raWVEb21haW4iOiJkaGxleHByZXNzLmJnIiwiT3B0YW5vbkdyb3VwSWRQZXJmb3JtYW5jZUNvb2tpZXMiOiJDMDAwMiIsIk9wdGFub25Hcm91cElkRnVuY3Rpb25hbGl0eUNvb2tpZXMiOiJDMDAwMyIsIk9wdGFub25Hcm91cElkVGFyZ2V0aW5nQ29va2llcyI6IkMwMDA0IiwiT3B0YW5vbkdyb3VwSWRTb2NpYWxDb29raWVzIjoiQzAwMDUiLCJTaG93U3ViR3JvdXBDb29raWVzIjpmYWxzZSwiTGVnYWN5QmFubmVyTGF5b3V0IjoiZGVmYXVsdF9mbGF0X2JvdHRvbV90d29fYnV0dG9uX2JsYWNrIiwiT3B0YW5vbkhpZGVDb29raWVTZXR0aW5nQnV0dG9uIjoiIiwiVXNlUlRMIjpmYWxzZSwiU2hvd0Jhbm5lckFjY2VwdEJ1dHRvbiI6dHJ1ZSwiU2hvd0Jhbm5lckNvb2tpZVNldHRpbmdzIjp0cnVlLCJTaG93Q29va2llTGlzdCI6dHJ1ZSwiUENTaG93Q29va2llSG9zdCI6dHJ1ZSwiUENTaG93Q29va2llRHVyYXRpb24iOnRydWUsIlBDU2hvd0Nvb2tpZVR5cGUiOnRydWUsIlBDU2hvd0Nvb2tpZUNhdGVnb3J5Ijp0cnVlLCJQQ1Nob3dDb29raWVEZXNjcmlwdGlvbiI6dHJ1ZSwiQWxsb3dIb3N0T3B0T3V0Ijp0cnVlLCJDb29raWVMaXN0VGl0bGVDb2xvciI6IiM2OTY5NjkiLCJDb29raWVMaXN0R3JvdXBOYW1lQ29sb3IiOiIjNjk2OTY5IiwiQ29va2llTGlzdFRhYmxlSGVhZGVyQ29sb3IiOiIjNjk2OTY5IiwiQ29va2llTGlzdFRhYmxlSGVhZGVyQmFja2dyb3VuZENvbG9yIjoiI0Y4RjhGOCIsIkNvb2tpZXNWMk5ld0Nvb2tpZVBvbGljeSI6dHJ1ZSwiQ29va2llTGlzdFByaW1hcnlDb2xvciI6IiM2OTY5NjkiLCJDb29raWVMaXN0Q3VzdG9tQ3NzIjoiIiwiVFRMR3JvdXBCeVRlY2giOmZhbHNlLCJUVExTaG93VGVjaERlc2MiOmZhbHNlLCJDb25zZW50SW50ZWdyYXRpb24iOnsiQ29uc2VudEFwaSI6Imh0dHBzOi8vcHJpdmFjeXBvcnRhbC1kZS5vbmV0cnVzdC5jb20vcmVxdWVzdC92MS9jb25zZW50cmVjZWlwdHMiLCJSZXF1ZXN0SW5mb3JtYXRpb24iOiJleUpoYkdjaU9pSlNVelV4TWlKOS5leUp2ZEVwM2RGWmxjbk5wYjI0aU9qRXNJbkJ5YjJObGMzTkpaQ0k2SW1KaE1qQXhNRFptTFRZd1pEZ3RORGMzWVMxaU0ySTRMVFEwTWpnM05UQmpaalZrTmlJc0luQnliMk5sYzNOV1pYSnphVzl1SWpveU1Dd2lhV0YwSWpvaU1qQXlNeTB3TlMweE1WUXhNem96TkRvMU5TNDNNemNpTENKdGIyTWlPaUpEVDA5TFNVVWlMQ0p3YjJ4cFkzbGZkWEpwSWpvaVpHaHNaWGh3Y21WemN5NWlaeUlzSW5OMVlpSTZJa052YjJ0cFpTQlZibWx4ZFdVZ1NXUWlMQ0pwYzNNaU9tNTFiR3dzSW5SbGJtRnVkRWxrSWpvaU9UTTNOV0poWkRjdFpqWTFaUzAwWmpoaExXSmpNVFl0T0RJMU5EY3lNMkprTmpaaElpd2laR1Z6WTNKcGNIUnBiMjRpT2lKVWFHbHpJR052Ykd4bFkzUnBiMjRnY0c5cGJuUWdZMkZ3ZEhWeVpYTWdkR2hsSUdOMWNuSmxiblFnYzJsMFpTQjJhWE5wZEc5eUlHTnZibk5sYm5RZ2NISmxabVZ5Wlc1alpYTWdabTl5SUhSb1pTQmtiMjFoYVc0NklHUm9iR1Y0Y0hKbGMzTXVZbWN0Wlc0Z2MzQmxZMmxtYVdWa0xpSXNJbU52Ym5ObGJuUlVlWEJsSWpvaVEwOVBTMGxGUWtGT1RrVlNJaXdpWVd4c2IzZE9iM1JIYVhabGJrTnZibk5sYm5SeklqcG1ZV3h6WlN3aVpHOTFZbXhsVDNCMFNXNGlPbVpoYkhObExDSndkWEp3YjNObGN5STZXM3NpYVdRaU9pSmpOemM0T0RjeVl5MWlNelkyTFRReE9UUXRPRGxpWlMwek1EUmlNRGMwWWpSallqQWlMQ0oyWlhKemFXOXVJam94TENKd1lYSmxiblJKWkNJNmJuVnNiQ3dpZEc5d2FXTnpJanBiWFN3aVkzVnpkRzl0VUhKbFptVnlaVzVqWlhNaU9sdGRMQ0psYm1GaWJHVkhaVzlzYjJOaGRHbHZiaUk2Wm1Gc2MyVXNJbWx0Y0d4cFkybDBRMjl1YzJWdWRFeHBabVZUY0dGdUlqb3dmU3g3SW1sa0lqb2lZbUkxTlRreU5XSXRORGxpTUMwME1tUXhMVGd3TVRZdE5tSTNPVFJqTmpCaVlUYzBJaXdpZG1WeWMybHZiaUk2TVN3aWNHRnlaVzUwU1dRaU9tNTFiR3dzSW5SdmNHbGpjeUk2VzEwc0ltTjFjM1J2YlZCeVpXWmxjbVZ1WTJWeklqcGJYU3dpWlc1aFlteGxSMlZ2Ykc5allYUnBiMjRpT21aaGJITmxMQ0pwYlhCc2FXTnBkRU52Ym5ObGJuUk1hV1psVTNCaGJpSTZNSDBzZXlKcFpDSTZJbVUwTTJRd1pqQXhMVFU1TXpZdE5ERTNZeTA1TkRJMUxXVTNPR1F5TkRCaFlqZzROQ0lzSW5abGNuTnBiMjRpT2pFc0luQmhjbVZ1ZEVsa0lqcHVkV3hzTENKMGIzQnBZM01pT2x0ZExDSmpkWE4wYjIxUWNtVm1aWEpsYm1ObGN5STZXMTBzSW1WdVlXSnNaVWRsYjJ4dlkyRjBhVzl1SWpwbVlXeHpaU3dpYVcxd2JHbGphWFJEYjI1elpXNTBUR2xtWlZOd1lXNGlPakI5TEhzaWFXUWlPaUpoT1RrNU1Ua3lNeTA1TVRVMkxUUTFaREl0WVdRME9DMDFNMlV5Wm1FeE1HWmxNV1FpTENKMlpYSnphVzl1SWpveE5Td2ljR0Z5Wlc1MFNXUWlPbTUxYkd3c0luUnZjR2xqY3lJNlcxMHNJbU4xYzNSdmJWQnlaV1psY21WdVkyVnpJanBiWFN3aVpXNWhZbXhsUjJWdmJHOWpZWFJwYjI0aU9tWmhiSE5sTENKcGJYQnNhV05wZEVOdmJuTmxiblJNYVdabFUzQmhiaUk2TUgwc2V5SnBaQ0k2SWprMU1XTTVZemxqTFRWaFkySXRORFJtTXkxaU4yTm1MV1EwTXpBM09UTXhZakE0WXlJc0luWmxjbk5wYjI0aU9qRXNJbkJoY21WdWRFbGtJanB1ZFd4c0xDSjBiM0JwWTNNaU9sdGRMQ0pqZFhOMGIyMVFjbVZtWlhKbGJtTmxjeUk2VzEwc0ltVnVZV0pzWlVkbGIyeHZZMkYwYVc5dUlqcG1ZV3h6WlN3aWFXMXdiR2xqYVhSRGIyNXpaVzUwVEdsbVpWTndZVzRpT2pCOUxIc2lhV1FpT2lJeVl6YzBaREF6TUMwMk16YzNMVFJqWlRBdFlUazRNQzFpWVdJeU5qY3lZekU1WlRVaUxDSjJaWEp6YVc5dUlqb3hMQ0p3WVhKbGJuUkpaQ0k2Ym5Wc2JDd2lkRzl3YVdOeklqcGJYU3dpWTNWemRHOXRVSEpsWm1WeVpXNWpaWE1pT2x0ZExDSmxibUZpYkdWSFpXOXNiMk5oZEdsdmJpSTZabUZzYzJVc0ltbHRjR3hwWTJsMFEyOXVjMlZ1ZEV4cFptVlRjR0Z1SWpvd2ZTeDdJbWxrSWpvaU9ESm1NRGcxTXprdE9ERmlPQzAwTW1OaExXRTJNV1F0T0Rrd01tVTNZVGMyWW1NMElpd2lkbVZ5YzJsdmJpSTZNU3dpY0dGeVpXNTBTV1FpT201MWJHd3NJblJ2Y0dsamN5STZXMTBzSW1OMWMzUnZiVkJ5WldabGNtVnVZMlZ6SWpwYlhTd2laVzVoWW14bFIyVnZiRzlqWVhScGIyNGlPbVpoYkhObExDSnBiWEJzYVdOcGRFTnZibk5sYm5STWFXWmxVM0JoYmlJNk1IMHNleUpwWkNJNklqVm1aRFkzWXpKaExUQTNaamN0TkRNelpTMDVaamt4TFRCa01UZzRZVEV4TnpJMFpDSXNJblpsY25OcGIyNGlPakVzSW5CaGNtVnVkRWxrSWpwdWRXeHNMQ0owYjNCcFkzTWlPbHRkTENKamRYTjBiMjFRY21WbVpYSmxibU5sY3lJNlcxMHNJbVZ1WVdKc1pVZGxiMnh2WTJGMGFXOXVJanBtWVd4elpTd2lhVzF3YkdsamFYUkRiMjV6Wlc1MFRHbG1aVk53WVc0aU9qQjlMSHNpYVdRaU9pSXhOVFkwTWpsalpTMWlNamN3TFRReVpHSXRZV015TkMwMU5EUmtZVE16T1RJd05XRWlMQ0oyWlhKemFXOXVJam8zTlN3aWNHRnlaVzUwU1dRaU9tNTFiR3dzSW5SdmNHbGpjeUk2VzEwc0ltTjFjM1J2YlZCeVpXWmxjbVZ1WTJWeklqcGJYU3dpWlc1aFlteGxSMlZ2Ykc5allYUnBiMjRpT21aaGJITmxMQ0pwYlhCc2FXTnBkRU52Ym5ObGJuUk1hV1psVTNCaGJpSTZNSDBzZXlKcFpDSTZJakZrT0RVeU0yVm1MV1JoTjJVdE5EUTFaaTFoTW1JMUxUUmtObU0wWXpabU1HUTJZeUlzSW5abGNuTnBiMjRpT2pFc0luQmhjbVZ1ZEVsa0lqcHVkV3hzTENKMGIzQnBZM01pT2x0ZExDSmpkWE4wYjIxUWNtVm1aWEpsYm1ObGN5STZXMTBzSW1WdVlXSnNaVWRsYjJ4dlkyRjBhVzl1SWpwbVlXeHpaU3dpYVcxd2JHbGphWFJEYjI1elpXNTBUR2xtWlZOd1lXNGlPakI5TEhzaWFXUWlPaUkzTmpabU9EWXlaUzFtWmpjMExUUXdZV1l0T0dKbVppMDROekl6TnpBeFpUQXhObU1pTENKMlpYSnphVzl1SWpveUxDSndZWEpsYm5SSlpDSTZiblZzYkN3aWRHOXdhV056SWpwYlhTd2lZM1Z6ZEc5dFVISmxabVZ5Wlc1alpYTWlPbHRkTENKbGJtRmliR1ZIWlc5c2IyTmhkR2x2YmlJNlptRnNjMlVzSW1sdGNHeHBZMmwwUTI5dWMyVnVkRXhwWm1WVGNHRnVJam93ZlN4N0ltbGtJam9pTjJWaVpUaG1aRGd0WVRoaU5pMDBNVFpqTFRsbE9UZ3ROamt6Tnpaak5UTmpPRGN4SWl3aWRtVnljMmx2YmlJNk1Td2ljR0Z5Wlc1MFNXUWlPbTUxYkd3c0luUnZjR2xqY3lJNlcxMHNJbU4xYzNSdmJWQnlaV1psY21WdVkyVnpJanBiWFN3aVpXNWhZbXhsUjJWdmJHOWpZWFJwYjI0aU9tWmhiSE5sTENKcGJYQnNhV05wZEVOdmJuTmxiblJNYVdabFUzQmhiaUk2TUgwc2V5SnBaQ0k2SW1Jd01qQXdaalV4TFRkak9Ua3ROR0l4WmkwNU1HRTRMVEZsT1dKaU1UYzFNakprWXlJc0luWmxjbk5wYjI0aU9qRXNJbkJoY21WdWRFbGtJanB1ZFd4c0xDSjBiM0JwWTNNaU9sdGRMQ0pqZFhOMGIyMVFjbVZtWlhKbGJtTmxjeUk2VzEwc0ltVnVZV0pzWlVkbGIyeHZZMkYwYVc5dUlqcG1ZV3h6WlN3aWFXMXdiR2xqYVhSRGIyNXpaVzUwVEdsbVpWTndZVzRpT2pCOUxIc2lhV1FpT2lJMU5XSXhZbVJtWXkwd01XUTVMVFJqTmpVdE9XSXpNUzB5WVRsaE56SmlOamd3WTJRaUxDSjJaWEp6YVc5dUlqb3hMQ0p3WVhKbGJuUkpaQ0k2Ym5Wc2JDd2lkRzl3YVdOeklqcGJYU3dpWTNWemRHOXRVSEpsWm1WeVpXNWpaWE1pT2x0ZExDSmxibUZpYkdWSFpXOXNiMk5oZEdsdmJpSTZabUZzYzJVc0ltbHRjR3hwWTJsMFEyOXVjMlZ1ZEV4cFptVlRjR0Z1SWpvd2ZTeDdJbWxrSWpvaU9XUXdPVEF6WTJVdE1UUTBaaTAwTjJOakxUZ3pOVFF0T1RVeVl6WTJaVE0wTkRBeElpd2lkbVZ5YzJsdmJpSTZNU3dpY0dGeVpXNTBTV1FpT201MWJHd3NJblJ2Y0dsamN5STZXMTBzSW1OMWMzUnZiVkJ5WldabGNtVnVZMlZ6SWpwYlhTd2laVzVoWW14bFIyVnZiRzlqWVhScGIyNGlPbVpoYkhObExDSnBiWEJzYVdOcGRFTnZibk5sYm5STWFXWmxVM0JoYmlJNk1IMHNleUpwWkNJNkltWXpZemxoTlRaaExXRm1aR0l0TkRkbE1pMDVZekF5TFRVME5qWTNaalJsTkdaaE5pSXNJblpsY25OcGIyNGlPakVzSW5CaGNtVnVkRWxrSWpwdWRXeHNMQ0owYjNCcFkzTWlPbHRkTENKamRYTjBiMjFRY21WbVpYSmxibU5sY3lJNlcxMHNJbVZ1WVdKc1pVZGxiMnh2WTJGMGFXOXVJanBtWVd4elpTd2lhVzF3YkdsamFYUkRiMjV6Wlc1MFRHbG1aVk53WVc0aU9qQjlMSHNpYVdRaU9pSXdZVEJtWVdaa015MWxORFZsTFRRMVkyRXRPV1UzTkMweFpHRTRaRFJtTW1Nek9ERWlMQ0oyWlhKemFXOXVJam94TENKd1lYSmxiblJKWkNJNmJuVnNiQ3dpZEc5d2FXTnpJanBiWFN3aVkzVnpkRzl0VUhKbFptVnlaVzVqWlhNaU9sdGRMQ0psYm1GaWJHVkhaVzlzYjJOaGRHbHZiaUk2Wm1Gc2MyVXNJbWx0Y0d4cFkybDBRMjl1YzJWdWRFeHBabVZUY0dGdUlqb3dmU3g3SW1sa0lqb2lZbUl5WW1Jd04yUXRaREEwWmkwME9XRmtMVGhrWW1VdE4yUTFOekF5TmpJMk9HUTFJaXdpZG1WeWMybHZiaUk2TVN3aWNHRnlaVzUwU1dRaU9tNTFiR3dzSW5SdmNHbGpjeUk2VzEwc0ltTjFjM1J2YlZCeVpXWmxjbVZ1WTJWeklqcGJYU3dpWlc1aFlteGxSMlZ2Ykc5allYUnBiMjRpT21aaGJITmxMQ0pwYlhCc2FXTnBkRU52Ym5ObGJuUk1hV1psVTNCaGJpSTZNSDBzZXlKcFpDSTZJamRpTURBeE16aGxMV0ptWldVdE5EZGpZUzFoTkRrNUxXUmhOVFUwWlRCallURTRNU0lzSW5abGNuTnBiMjRpT2pZM0xDSndZWEpsYm5SSlpDSTZiblZzYkN3aWRHOXdhV056SWpwYlhTd2lZM1Z6ZEc5dFVISmxabVZ5Wlc1alpYTWlPbHRkTENKbGJtRmliR1ZIWlc5c2IyTmhkR2x2YmlJNlptRnNjMlVzSW1sdGNHeHBZMmwwUTI5dWMyVnVkRXhwWm1WVGNHRnVJam93ZlN4N0ltbGtJam9pWmpFd1kyUXlZell0TVRWalppMDBPREl4TFRnMk9Ea3RZek13T1dFeE1XVmxaVGxoSWl3aWRtVnljMmx2YmlJNk1Td2ljR0Z5Wlc1MFNXUWlPbTUxYkd3c0luUnZjR2xqY3lJNlcxMHNJbU4xYzNSdmJWQnlaV1psY21WdVkyVnpJanBiWFN3aVpXNWhZbXhsUjJWdmJHOWpZWFJwYjI0aU9tWmhiSE5sTENKcGJYQnNhV05wZEVOdmJuTmxiblJNYVdabFUzQmhiaUk2TUgwc2V5SnBaQ0k2SWpSaE9UQTBOekJpTFRVMFltRXROR016WkMwNVl6VTVMV1UzWW1SbFlqRTRZek00WXlJc0luWmxjbk5wYjI0aU9qRXNJbkJoY21WdWRFbGtJanB1ZFd4c0xDSjBiM0JwWTNNaU9sdGRMQ0pqZFhOMGIyMVFjbVZtWlhKbGJtTmxjeUk2VzEwc0ltVnVZV0pzWlVkbGIyeHZZMkYwYVc5dUlqcG1ZV3h6WlN3aWFXMXdiR2xqYVhSRGIyNXpaVzUwVEdsbVpWTndZVzRpT2pCOUxIc2lhV1FpT2lJeU9EazRZelZrTUMweE9UazBMVFJoTURjdFlUWmxOeTA1TUdSaU5ETTBOek0zWTJJaUxDSjJaWEp6YVc5dUlqb3hMQ0p3WVhKbGJuUkpaQ0k2Ym5Wc2JDd2lkRzl3YVdOeklqcGJYU3dpWTNWemRHOXRVSEpsWm1WeVpXNWpaWE1pT2x0ZExDSmxibUZpYkdWSFpXOXNiMk5oZEdsdmJpSTZabUZzYzJVc0ltbHRjR3hwWTJsMFEyOXVjMlZ1ZEV4cFptVlRjR0Z1SWpvd2ZTeDdJbWxrSWpvaU5XVTRabU5rWkRBdE1qY3laaTAwTm1KbExUaGpNekF0T0RSaFpqVm1PV014T0RZM0lpd2lkbVZ5YzJsdmJpSTZNU3dpY0dGeVpXNTBTV1FpT201MWJHd3NJblJ2Y0dsamN5STZXMTBzSW1OMWMzUnZiVkJ5WldabGNtVnVZMlZ6SWpwYlhTd2laVzVoWW14bFIyVnZiRzlqWVhScGIyNGlPbVpoYkhObExDSnBiWEJzYVdOcGRFTnZibk5sYm5STWFXWmxVM0JoYmlJNk1IMHNleUpwWkNJNkltTm1PVEpqTm1GaUxXUXhZMkl0TkRrd015MWlNVGhtTFRVMk9HWm1PREU1WWpneFpDSXNJblpsY25OcGIyNGlPakVzSW5CaGNtVnVkRWxrSWpwdWRXeHNMQ0owYjNCcFkzTWlPbHRkTENKamRYTjBiMjFRY21WbVpYSmxibU5sY3lJNlcxMHNJbVZ1WVdKc1pVZGxiMnh2WTJGMGFXOXVJanBtWVd4elpTd2lhVzF3YkdsamFYUkRiMjV6Wlc1MFRHbG1aVk53WVc0aU9qQjlMSHNpYVdRaU9pSmxORFZtTnpRM01pMWlPVEUwTFRRNE5EY3RPVEZrWkMwNE9USTJZVGd3TkdZMk5XUWlMQ0oyWlhKemFXOXVJam8yTXl3aWNHRnlaVzUwU1dRaU9tNTFiR3dzSW5SdmNHbGpjeUk2VzEwc0ltTjFjM1J2YlZCeVpXWmxjbVZ1WTJWeklqcGJYU3dpWlc1aFlteGxSMlZ2Ykc5allYUnBiMjRpT21aaGJITmxMQ0pwYlhCc2FXTnBkRU52Ym5ObGJuUk1hV1psVTNCaGJpSTZNSDBzZXlKcFpDSTZJbUV5TXpnME9UYzBMVFl3TWpVdE5HVmxPQzFpWTJObExXUm1ZelF5T1RGbE0yRmtaU0lzSW5abGNuTnBiMjRpT2pjd0xDSndZWEpsYm5SSlpDSTZiblZzYkN3aWRHOXdhV056SWpwYlhTd2lZM1Z6ZEc5dFVISmxabVZ5Wlc1alpYTWlPbHRkTENKbGJtRmliR1ZIWlc5c2IyTmhkR2x2YmlJNlptRnNjMlVzSW1sdGNHeHBZMmwwUTI5dWMyVnVkRXhwWm1WVGNHRnVJam93ZlN4N0ltbGtJam9pTUdRMlptVTRaVGd0WkRZeE1TMDBZVEV3TFdFM1pUZ3RNR0k1T0RWa05qTTRZek14SWl3aWRtVnljMmx2YmlJNk56TXNJbkJoY21WdWRFbGtJanB1ZFd4c0xDSjBiM0JwWTNNaU9sdGRMQ0pqZFhOMGIyMVFjbVZtWlhKbGJtTmxjeUk2VzEwc0ltVnVZV0pzWlVkbGIyeHZZMkYwYVc5dUlqcG1ZV3h6WlN3aWFXMXdiR2xqYVhSRGIyNXpaVzUwVEdsbVpWTndZVzRpT2pCOUxIc2lhV1FpT2lJeVkySTVObVZpT1Mxa1pEazFMVFJtWWpZdE9UTXdPQzA1TVRobFpEVTFOamN4WkdNaUxDSjJaWEp6YVc5dUlqb3hMQ0p3WVhKbGJuUkpaQ0k2Ym5Wc2JDd2lkRzl3YVdOeklqcGJYU3dpWTNWemRHOXRVSEpsWm1WeVpXNWpaWE1pT2x0ZExDSmxibUZpYkdWSFpXOXNiMk5oZEdsdmJpSTZabUZzYzJVc0ltbHRjR3hwWTJsMFEyOXVjMlZ1ZEV4cFptVlRjR0Z1SWpvd2ZTeDdJbWxrSWpvaU5tUmpOVGd3TmpRdE9EUXlOUzAwWXpnNExUbGxNelV0WmpNMU9EVXhOR0UxTlRWaUlpd2lkbVZ5YzJsdmJpSTZOelFzSW5CaGNtVnVkRWxrSWpwdWRXeHNMQ0owYjNCcFkzTWlPbHRkTENKamRYTjBiMjFRY21WbVpYSmxibU5sY3lJNlcxMHNJbVZ1WVdKc1pVZGxiMnh2WTJGMGFXOXVJanBtWVd4elpTd2lhVzF3YkdsamFYUkRiMjV6Wlc1MFRHbG1aVk53WVc0aU9qQjlMSHNpYVdRaU9pSmlaV05pWVRJMVl5MHpOMlpqTFRSbU5tWXRPRFk0TmkxbU9UaG1Oak0wTXpsbE16Y2lMQ0oyWlhKemFXOXVJam94TENKd1lYSmxiblJKWkNJNmJuVnNiQ3dpZEc5d2FXTnpJanBiWFN3aVkzVnpkRzl0VUhKbFptVnlaVzVqWlhNaU9sdGRMQ0psYm1GaWJHVkhaVzlzYjJOaGRHbHZiaUk2Wm1Gc2MyVXNJbWx0Y0d4cFkybDBRMjl1YzJWdWRFeHBabVZUY0dGdUlqb3dmU3g3SW1sa0lqb2lPVE0zT0Rsa1l6RXRaVFJoTUMwME0yWTFMVGswTmprdE4yWTJPRE5pTXpnMU5URTVJaXdpZG1WeWMybHZiaUk2TVN3aWNHRnlaVzUwU1dRaU9tNTFiR3dzSW5SdmNHbGpjeUk2VzEwc0ltTjFjM1J2YlZCeVpXWmxjbVZ1WTJWeklqcGJYU3dpWlc1aFlteGxSMlZ2Ykc5allYUnBiMjRpT21aaGJITmxMQ0pwYlhCc2FXTnBkRU52Ym5ObGJuUk1hV1psVTNCaGJpSTZNSDBzZXlKcFpDSTZJbUk0TWpJM04yVXdMV0ZoT0dZdE5EVXpaUzFpWkRkbExUTXdPVE14WkRRek1qbG1NaUlzSW5abGNuTnBiMjRpT2pFc0luQmhjbVZ1ZEVsa0lqcHVkV3hzTENKMGIzQnBZM01pT2x0ZExDSmpkWE4wYjIxUWNtVm1aWEpsYm1ObGN5STZXMTBzSW1WdVlXSnNaVWRsYjJ4dlkyRjBhVzl1SWpwbVlXeHpaU3dpYVcxd2JHbGphWFJEYjI1elpXNTBUR2xtWlZOd1lXNGlPakI5TEhzaWFXUWlPaUppT0RoalpESTNZaTB6WkRNNUxUUTVOV1l0WVRjell5MDBNR0V3WTJZM1kyWTJZek1pTENKMlpYSnphVzl1SWpvNE1pd2ljR0Z5Wlc1MFNXUWlPbTUxYkd3c0luUnZjR2xqY3lJNlcxMHNJbU4xYzNSdmJWQnlaV1psY21WdVkyVnpJanBiWFN3aVpXNWhZbXhsUjJWdmJHOWpZWFJwYjI0aU9tWmhiSE5sTENKcGJYQnNhV05wZEVOdmJuTmxiblJNYVdabFUzQmhiaUk2TUgwc2V5SnBaQ0k2SW1aaE1qZGtPRGN3TFROaU16UXROR0k1WkMxaU16RmpMVEJpT1RsbU1EbGlNVEEyWlNJc0luWmxjbk5wYjI0aU9qRXNJbkJoY21WdWRFbGtJanB1ZFd4c0xDSjBiM0JwWTNNaU9sdGRMQ0pqZFhOMGIyMVFjbVZtWlhKbGJtTmxjeUk2VzEwc0ltVnVZV0pzWlVkbGIyeHZZMkYwYVc5dUlqcG1ZV3h6WlN3aWFXMXdiR2xqYVhSRGIyNXpaVzUwVEdsbVpWTndZVzRpT2pCOUxIc2lhV1FpT2lJeFlURTBNVEprT1MwNU1UbG1MVFEwT0RrdFlXTTBZUzAzTURZeVpEQXpNRGMyTjJVaUxDSjJaWEp6YVc5dUlqb3hMQ0p3WVhKbGJuUkpaQ0k2Ym5Wc2JDd2lkRzl3YVdOeklqcGJYU3dpWTNWemRHOXRVSEpsWm1WeVpXNWpaWE1pT2x0ZExDSmxibUZpYkdWSFpXOXNiMk5oZEdsdmJpSTZabUZzYzJVc0ltbHRjR3hwWTJsMFEyOXVjMlZ1ZEV4cFptVlRjR0Z1SWpvd2ZTeDdJbWxrSWpvaVpHTmhOMkpsTWpZdE1qRXpZUzAwT0ROaUxUbGpZVFF0WXpBMVpHSm1NamMxTVdVeklpd2lkbVZ5YzJsdmJpSTZNU3dpY0dGeVpXNTBTV1FpT201MWJHd3NJblJ2Y0dsamN5STZXMTBzSW1OMWMzUnZiVkJ5WldabGNtVnVZMlZ6SWpwYlhTd2laVzVoWW14bFIyVnZiRzlqWVhScGIyNGlPbVpoYkhObExDSnBiWEJzYVdOcGRFTnZibk5sYm5STWFXWmxVM0JoYmlJNk1IMHNleUpwWkNJNkltRXhPV1JpT1dOaExXSTVaR1l0TkRjNU9TMWlaVEZqTFRVeE5UZ3pOek5oTW1FNVl5SXNJblpsY25OcGIyNGlPamdzSW5CaGNtVnVkRWxrSWpwdWRXeHNMQ0owYjNCcFkzTWlPbHRkTENKamRYTjBiMjFRY21WbVpYSmxibU5sY3lJNlcxMHNJbVZ1WVdKc1pVZGxiMnh2WTJGMGFXOXVJanBtWVd4elpTd2lhVzF3YkdsamFYUkRiMjV6Wlc1MFRHbG1aVk53WVc0aU9qQjlMSHNpYVdRaU9pSXhNR0V5TkRRNE1TMHdabVJsTFRReU5tUXRPVEV4T1MxbE5XTXpabVE1TlRjME1HWWlMQ0oyWlhKemFXOXVJam94TENKd1lYSmxiblJKWkNJNmJuVnNiQ3dpZEc5d2FXTnpJanBiWFN3aVkzVnpkRzl0VUhKbFptVnlaVzVqWlhNaU9sdGRMQ0psYm1GaWJHVkhaVzlzYjJOaGRHbHZiaUk2Wm1Gc2MyVXNJbWx0Y0d4cFkybDBRMjl1YzJWdWRFeHBabVZUY0dGdUlqb3dmU3g3SW1sa0lqb2lNVGt3TkRsaE1HWXRaams0TnkwME5HSmtMV0k1TVRjdFlUQmpPV0k1TVdZME56bGtJaXdpZG1WeWMybHZiaUk2TVN3aWNHRnlaVzUwU1dRaU9tNTFiR3dzSW5SdmNHbGpjeUk2VzEwc0ltTjFjM1J2YlZCeVpXWmxjbVZ1WTJWeklqcGJYU3dpWlc1aFlteGxSMlZ2Ykc5allYUnBiMjRpT21aaGJITmxMQ0pwYlhCc2FXTnBkRU52Ym5ObGJuUk1hV1psVTNCaGJpSTZNSDBzZXlKcFpDSTZJak5oTVdNd09UTXdMVGMwTkRZdE5ETXhaQzFpWlRWaUxUZzBOVEl4TkdZNE5qQXdaaUlzSW5abGNuTnBiMjRpT2pFc0luQmhjbVZ1ZEVsa0lqcHVkV3hzTENKMGIzQnBZM01pT2x0ZExDSmpkWE4wYjIxUWNtVm1aWEpsYm1ObGN5STZXMTBzSW1WdVlXSnNaVWRsYjJ4dlkyRjBhVzl1SWpwbVlXeHpaU3dpYVcxd2JHbGphWFJEYjI1elpXNTBUR2xtWlZOd1lXNGlPakI5TEhzaWFXUWlPaUkyWVRFeFptWmxaaTAzT0dOaExUUTFORFl0T1RabFlpMWlNRE5qTWpRek1URXpNbUlpTENKMlpYSnphVzl1SWpveExDSndZWEpsYm5SSlpDSTZiblZzYkN3aWRHOXdhV056SWpwYlhTd2lZM1Z6ZEc5dFVISmxabVZ5Wlc1alpYTWlPbHRkTENKbGJtRmliR1ZIWlc5c2IyTmhkR2x2YmlJNlptRnNjMlVzSW1sdGNHeHBZMmwwUTI5dWMyVnVkRXhwWm1WVGNHRnVJam93ZlN4N0ltbGtJam9pTUdFME5qWmpOVEV0WkdJME5DMDBNekEyTFRoaVlXSXRZVEZtTURJNU5UUXhNamRoSWl3aWRtVnljMmx2YmlJNk56TXNJbkJoY21WdWRFbGtJanB1ZFd4c0xDSjBiM0JwWTNNaU9sdGRMQ0pqZFhOMGIyMVFjbVZtWlhKbGJtTmxjeUk2VzEwc0ltVnVZV0pzWlVkbGIyeHZZMkYwYVc5dUlqcG1ZV3h6WlN3aWFXMXdiR2xqYVhSRGIyNXpaVzUwVEdsbVpWTndZVzRpT2pCOUxIc2lhV1FpT2lJMlptSXpOek13TkMweE1UVm1MVFExWTJRdE9XSTVaaTB6TkRSa056SmxNelJpTmpnaUxDSjJaWEp6YVc5dUlqb3hMQ0p3WVhKbGJuUkpaQ0k2Ym5Wc2JDd2lkRzl3YVdOeklqcGJYU3dpWTNWemRHOXRVSEpsWm1WeVpXNWpaWE1pT2x0ZExDSmxibUZpYkdWSFpXOXNiMk5oZEdsdmJpSTZabUZzYzJVc0ltbHRjR3hwWTJsMFEyOXVjMlZ1ZEV4cFptVlRjR0Z1SWpvd2ZTeDdJbWxrSWpvaU5UVmhOV1E0TlRZdE5tUXdNaTAwTm1NMkxXRXdOR1l0TUdNek1EbGxORFkxWm1Zeklpd2lkbVZ5YzJsdmJpSTZNU3dpY0dGeVpXNTBTV1FpT201MWJHd3NJblJ2Y0dsamN5STZXMTBzSW1OMWMzUnZiVkJ5WldabGNtVnVZMlZ6SWpwYlhTd2laVzVoWW14bFIyVnZiRzlqWVhScGIyNGlPbVpoYkhObExDSnBiWEJzYVdOcGRFTnZibk5sYm5STWFXWmxVM0JoYmlJNk1IMHNleUpwWkNJNkltUmlNbUk0Wm1RMkxURTVaVGN0TkRZell5MWhPR05qTFRJM05HWTVOelZpT0dJNVpDSXNJblpsY25OcGIyNGlPakVzSW5CaGNtVnVkRWxrSWpwdWRXeHNMQ0owYjNCcFkzTWlPbHRkTENKamRYTjBiMjFRY21WbVpYSmxibU5sY3lJNlcxMHNJbVZ1WVdKc1pVZGxiMnh2WTJGMGFXOXVJanBtWVd4elpTd2lhVzF3YkdsamFYUkRiMjV6Wlc1MFRHbG1aVk53WVc0aU9qQjlMSHNpYVdRaU9pSmpNamczTTJWak5TMDBObVUzTFRRM05qZ3RZbU5pTWkxak16RTNZemsxWVdGaU1qUWlMQ0oyWlhKemFXOXVJam94TENKd1lYSmxiblJKWkNJNmJuVnNiQ3dpZEc5d2FXTnpJanBiWFN3aVkzVnpkRzl0VUhKbFptVnlaVzVqWlhNaU9sdGRMQ0psYm1GaWJHVkhaVzlzYjJOaGRHbHZiaUk2Wm1Gc2MyVXNJbWx0Y0d4cFkybDBRMjl1YzJWdWRFeHBabVZUY0dGdUlqb3dmU3g3SW1sa0lqb2lNbVE0TkRReVpETXRZVEJqTWkwME1UWTJMV0ZqTW1VdFpURXlObVZsWmpsaU5tRTRJaXdpZG1WeWMybHZiaUk2TVN3aWNHRnlaVzUwU1dRaU9tNTFiR3dzSW5SdmNHbGpjeUk2VzEwc0ltTjFjM1J2YlZCeVpXWmxjbVZ1WTJWeklqcGJYU3dpWlc1aFlteGxSMlZ2Ykc5allYUnBiMjRpT21aaGJITmxMQ0pwYlhCc2FXTnBkRU52Ym5ObGJuUk1hV1psVTNCaGJpSTZNSDBzZXlKcFpDSTZJak0wT1dZNE4yTTFMVFZrTkRNdE5HWmlPUzA1TXpSaUxUSXpNV1JoTnpSa01qWmpOeUlzSW5abGNuTnBiMjRpT2pFc0luQmhjbVZ1ZEVsa0lqcHVkV3hzTENKMGIzQnBZM01pT2x0ZExDSmpkWE4wYjIxUWNtVm1aWEpsYm1ObGN5STZXMTBzSW1WdVlXSnNaVWRsYjJ4dlkyRjBhVzl1SWpwbVlXeHpaU3dpYVcxd2JHbGphWFJEYjI1elpXNTBUR2xtWlZOd1lXNGlPakI5TEhzaWFXUWlPaUkzWkRGa05EUXhNaTB3T1dabUxUUmtORE10T0ROall5MDRZelpoTnpRMFpqbGlNVFlpTENKMlpYSnphVzl1SWpveExDSndZWEpsYm5SSlpDSTZiblZzYkN3aWRHOXdhV056SWpwYlhTd2lZM1Z6ZEc5dFVISmxabVZ5Wlc1alpYTWlPbHRkTENKbGJtRmliR1ZIWlc5c2IyTmhkR2x2YmlJNlptRnNjMlVzSW1sdGNHeHBZMmwwUTI5dWMyVnVkRXhwWm1WVGNHRnVJam93ZlN4N0ltbGtJam9pTmprMU5XWTNNV1l0TldGa1ppMDBOREExTFdJMU16QXRaakptTXpCalkySTJaV013SWl3aWRtVnljMmx2YmlJNk1Td2ljR0Z5Wlc1MFNXUWlPbTUxYkd3c0luUnZjR2xqY3lJNlcxMHNJbU4xYzNSdmJWQnlaV1psY21WdVkyVnpJanBiWFN3aVpXNWhZbXhsUjJWdmJHOWpZWFJwYjI0aU9tWmhiSE5sTENKcGJYQnNhV05wZEVOdmJuTmxiblJNYVdabFUzQmhiaUk2TUgwc2V5SnBaQ0k2SWpaaU1tWXpPV1F3TFRBeFpHSXROR0UyTXkxaVkyWTJMV0pqWWpFM01HSmtOVE0yTVNJc0luWmxjbk5wYjI0aU9qRXNJbkJoY21WdWRFbGtJanB1ZFd4c0xDSjBiM0JwWTNNaU9sdGRMQ0pqZFhOMGIyMVFjbVZtWlhKbGJtTmxjeUk2VzEwc0ltVnVZV0pzWlVkbGIyeHZZMkYwYVc5dUlqcG1ZV3h6WlN3aWFXMXdiR2xqYVhSRGIyNXpaVzUwVEdsbVpWTndZVzRpT2pCOUxIc2lhV1FpT2lKa05XWTFPV0V4WWkxbU5qUTNMVFE0WVRJdFlUZzBNaTAyWlRSa1kyRTBaRFl4WkdZaUxDSjJaWEp6YVc5dUlqb3hMQ0p3WVhKbGJuUkpaQ0k2Ym5Wc2JDd2lkRzl3YVdOeklqcGJYU3dpWTNWemRHOXRVSEpsWm1WeVpXNWpaWE1pT2x0ZExDSmxibUZpYkdWSFpXOXNiMk5oZEdsdmJpSTZabUZzYzJVc0ltbHRjR3hwWTJsMFEyOXVjMlZ1ZEV4cFptVlRjR0Z1SWpvd2ZTeDdJbWxrSWpvaU1ESXhaR1E1TmpjdFlqZzJNUzAwTVRKakxUazFOamd0TmpZME1UQTFNelExTnpNMUlpd2lkbVZ5YzJsdmJpSTZNU3dpY0dGeVpXNTBTV1FpT201MWJHd3NJblJ2Y0dsamN5STZXMTBzSW1OMWMzUnZiVkJ5WldabGNtVnVZMlZ6SWpwYlhTd2laVzVoWW14bFIyVnZiRzlqWVhScGIyNGlPbVpoYkhObExDSnBiWEJzYVdOcGRFTnZibk5sYm5STWFXWmxVM0JoYmlJNk1IMHNleUpwWkNJNklqY3haVGxtTldZMExUVmhZalF0TkRNek5DMWlORGRrTFRVMk4yUTRNRFF5T1RBek1DSXNJblpsY25OcGIyNGlPakVzSW5CaGNtVnVkRWxrSWpwdWRXeHNMQ0owYjNCcFkzTWlPbHRkTENKamRYTjBiMjFRY21WbVpYSmxibU5sY3lJNlcxMHNJbVZ1WVdKc1pVZGxiMnh2WTJGMGFXOXVJanBtWVd4elpTd2lhVzF3YkdsamFYUkRiMjV6Wlc1MFRHbG1aVk53WVc0aU9qQjlMSHNpYVdRaU9pSXhPVFl6T0RZME9TMDBaakZsTFRSbU1EWXRPVGd3WXkwMllUTXdaVEk1WldNek5EVWlMQ0oyWlhKemFXOXVJam94TENKd1lYSmxiblJKWkNJNmJuVnNiQ3dpZEc5d2FXTnpJanBiWFN3aVkzVnpkRzl0VUhKbFptVnlaVzVqWlhNaU9sdGRMQ0psYm1GaWJHVkhaVzlzYjJOaGRHbHZiaUk2Wm1Gc2MyVXNJbWx0Y0d4cFkybDBRMjl1YzJWdWRFeHBabVZUY0dGdUlqb3dmU3g3SW1sa0lqb2lNbVppTURGaVpUZ3RNVEE1WWkwME1tRmtMV0l6T1RBdFptTmxNVGs1Tm1NM00yUXlJaXdpZG1WeWMybHZiaUk2TVN3aWNHRnlaVzUwU1dRaU9tNTFiR3dzSW5SdmNHbGpjeUk2VzEwc0ltTjFjM1J2YlZCeVpXWmxjbVZ1WTJWeklqcGJYU3dpWlc1aFlteGxSMlZ2Ykc5allYUnBiMjRpT21aaGJITmxMQ0pwYlhCc2FXTnBkRU52Ym5ObGJuUk1hV1psVTNCaGJpSTZNSDFkTENKdWIzUnBZMlZ6SWpwYlhTd2laSE5FWVhSaFJXeGxiV1Z1ZEhNaU9sc2lWWE5sY2tGblpXNTBJaXdpUTI5MWJuUnllU0lzSWtsdWRHVnlZV04wYVc5dVZIbHdaU0lzSWtOdmJuTmxiblJOYjJSbGJDSmRMQ0poZFhSb1pXNTBhV05oZEdsdmJsSmxjWFZwY21Wa0lqcG1ZV3h6WlN3aWNtVmpiMjVtYVhKdFFXTjBhWFpsVUhWeWNHOXpaU0k2Wm1Gc2MyVXNJbTkyWlhKeWFXUmxRV04wYVhabFVIVnljRzl6WlNJNmRISjFaU3dpWkhsdVlXMXBZME52Ykd4bFkzUnBiMjVRYjJsdWRDSTZabUZzYzJVc0ltRmtaR2wwYVc5dVlXeEpaR1Z1ZEdsbWFXVnljeUk2VzEwc0ltMTFiSFJwY0d4bFNXUmxiblJwWm1sbGNsUjVjR1Z6SWpwbVlXeHpaU3dpWlc1aFlteGxVR0Z5Wlc1MFVISnBiV0Z5ZVVsa1pXNTBhV1pwWlhKeklqcG1ZV3h6WlN3aWNHRnlaVzUwVUhKcGJXRnllVWxrWlc1MGFXWnBaWEp6Vkhsd1pTSTZiblZzYkN3aVlXUmthWFJwYjI1aGJGQmhjbVZ1ZEVsa1pXNTBhV1pwWlhKVWVYQmxjeUk2VzEwc0ltVnVZV0pzWlVkbGIyeHZZMkYwYVc5dUlqcDBjblZsTENKa1lYUmhSV3hsYldWdWRGUjVjR1ZOWVhBaU9uc2lTVzUwWlhKaFkzUnBiMjVVZVhCbElqb2lWVk5GVWw5SlRsQlZWQ0lzSWtOdmJuTmxiblJOYjJSbGJDSTZJbFZUUlZKZlNVNVFWVlFpTENKVmMyVnlRV2RsYm5RaU9pSlZVMFZTWDBsT1VGVlVJaXdpUTI5MWJuUnllU0k2SWxWVFJWSmZTVTVRVlZRaWZYMC5MMXZVMzhHUFhzektySWJVZW5hWVpKZjFmTzNISnZjbHJrU3M2SEZtTTFYZzlheC1ENWRHS3hqbGxiMGZyUU9OSG1OTVl1N2NPeHFidnpNa2ZsYUxZWHNRVHk0RWRkU2E5VFNBYmpMX2ZuZUN4YlV4MEN3akNVME55d2JGQTB3NU9jYkF0R0plMjU2LUZSaUdlVThMa1d1MTZ0VGlKYU5IVDBkRllpWW9IeWJURk8zVDg3SmdNcVJZOFNJYnVPeGxsRWM3NW9GeE9MSHNEbjNfbUlkT3MybE1oMnVOYUl0R3UtWGVMQ3ZmUHJJTmdHUHdaZ3BVT0tBQUdUQ1JqTDhBLUlsRHF2STJZb0tuNWFNNzJSekVXbTg4YWdsMWJ1cmlia3BBNHN4QnVQMVJUcUJ6WUQtT3VYdENzQldiM0dLbXY0X1p2MTMtcVA2VFZuNWtKaGU4UC1JblJwb1JVd25kWTdIS1hDU2JVaGN3WHZub0JjeFlxUThmeERQZW1CdzdBTUJVcmZ6a1FqLXZyQW9ISGhsN1BsbzgtYjl3TDIwUEMxMTBqbmY4Y0JDeVhYbFQ2NGdobkp2WFJVT0QtVk80VTlYNWNDUmFpOURRZ29UY0hNbk4tTXNjRld0blBLaVRzblpyYkw0cDVCT2ZxempEMG5TWnByYm9DVkN4Y2VBWXRENjhuQ1ZJbm1mV2taZXFVR2ExRjQ5b0FWRDZULVZ1Y0pvdkRXSEtHZi02SzcxQnd5b2dUeUxNX2FyYW5acWNDZ0RrSnJLNndNVGdsUTZQM0lKcFJxbDRPWVlJLVo3bXh5WXNHcjFaQUhwN3JCWHYwYTNucDRfaTZPNHhYajAta0ZDSjU3Q1NQR2xycTR0WnVia0p3dlA0enp3aWVEQm9lR0pnYXptMVF0YyIsIklkZW50aWZpZWRSZWNlaXB0c0FsbG93ZWQiOmZhbHNlLCJEZWZhdWx0SWRlbnRpZmllciI6IkNvb2tpZSBVbmlxdWUgSWQiLCJEZWZhdWx0QW5vbnltb3VzSWRlbnRpZmllciI6IkNvb2tpZSBVbmlxdWUgSWQiLCJFbmFibGVKV1RBdXRoRm9yS25vd25Vc2VycyI6ZmFsc2UsIkFub255bW91c0NvbnNlbnRBcGkiOiJodHRwczovL3ByaXZhY3lwb3J0YWwtZGUub25ldHJ1c3QuY29tL3JlcXVlc3QvdjEvY29uc2VudHJlY2VpcHRzL2Fub255bW91cyIsIkNST0NvbnNlbnRBcGkiOiJodHRwczovL3ByaXZhY3lwb3J0YWwtZGUub25ldHJ1c3QuY29tL3JlcXVlc3QvdjEvY29uc2VudHJlY2VpcHRzL2NybyIsIkdQQ1JlYXNvbklEIjoiNzU3Nzk4NGItZjA0Zi00NzM3LWIyZGUtZThjNmM0NDhhZmQyIiwiRE5UUmVhc29uSUQiOiIzYzVkYzBkMC03Y2JmLTRlZDYtYWEzMC0yMTA3YmZkNTgwNDYiLCJBVFRSZWFzb25JRCI6IjNiYjgwMDA0LTU4M2MtNGYwNC1iZGM5LTk0ZmMxZGJkOWVhMiJ9LCJCQ29uc2VudFB1cnBvc2VzVGV4dCI6IkNvbnNlbnQgUHVycG9zZXMiLCJCRmVhdHVyZXNUZXh0IjoiRmVhdHVyZXMiLCJCTGVnaXRpbWF0ZUludGVyZXN0UHVycG9zZXNUZXh0IjoiTGVnaXRpbWF0ZSBJbnRlcmVzdCBQdXJwb3NlcyIsIkJTcGVjaWFsRmVhdHVyZXNUZXh0IjoiU3BlY2lhbCBGZWF0dXJlcyIsIkJTcGVjaWFsUHVycG9zZXNUZXh0IjoiU3BlY2lhbCBQdXJwb3NlcyIsIkJDb25zZW50VGV4dCI6IkNvbnNlbnQiLCJCTGVnaXRJbnRlcmVzdFRleHQiOiJMZWdpdGltYXRlIEludGVyZXN0IiwiSWFiTGVnYWxUZXh0VXJsIjoiaHR0cHM6Ly90Y2YuY29va2llcGVkaWEuY28udWsiLCJQQ0NMaXN0TmFtZSI6Ik5hbWUiLCJQQ0NMaXN0SG9zdCI6Ikhvc3QiLCJQQ0NMaXN0RHVyYXRpb24iOiJEdXJhdGlvbiIsIlBDQ0xpc3RUeXBlIjoiVHlwZSIsIlBDQ0xpc3RDYXRlZ29yeSI6IkNhdGVnb3J5IiwiUENDTGlzdERlc2NyaXB0aW9uIjoiRGVzY3JpcHRpb24iLCJQQ0RpYWxvZ0Nsb3NlIjoiW2BkaWFsb2cgY2xvc2VkYF0iLCJQY0xlZ0ludEJ1dHRvbkNvbG9yIjoiI0ZGRkZGRiIsIlBjTGVnSW50QnV0dG9uVGV4dENvbG9yIjoiIzRENEQ0RCIsIkJDYXRlZ29yeUNvbnRhaW5lckNvbG9yIjoiI0Y5RjlGQyIsIkJDYXRlZ29yeVN0eWxlQ29sb3IiOiIjMzg2MEJFIiwiQkxpbmVCcmVha0NvbG9yIjoiI0U5RTlFOSIsIkJTYXZlQnRuQ29sb3IiOiIjMzQ2RTRBIiwiQkNhdGVnb3J5U3R5bGUiOiJDaGVja2JveCIsIkJBbmltYXRpb24iOiJTbGlkZV9JbiIsIkJDb250aW51ZUNvbG9yIjoiIzY5Njk2OSIsIlBDQ29udGludWVDb2xvciI6IiM2OTY5NjkiLCJQQ0Zvb3RlckxvZ29VcmwiOiJodHRwczovL3d3dy5vbmV0cnVzdC5jb20vcHJvZHVjdHMvY29va2llLWNvbnNlbnQvIiwiUENGb290ZXJDb29raWVQcm9Mb2dvVXJsIjpudWxsLCJCRm9jdXNCb3JkZXJDb2xvciI6IiNGRkZGRkYiLCJQQ0ZvY3VzQm9yZGVyQ29sb3IiOiIjRkZGRkZGIiwiVGVtcGxhdGVOYW1lIjoiRVhQIDIwMjMgU3RhbmRhcmQgQ01QICIsIkdlb1J1bGVHcm91cE5hbWUiOiJFWFAgMjAyMyBTdGFuZGFyZCBDTVAgIiwiR2VvUnVsZU5hbWUiOiJHbG9iYWwiLCJPVENsb3NlQnRuTG9nbyI6Imh0dHBzOi8vY2RuLmNvb2tpZWxhdy5vcmcvbG9nb3Mvc3RhdGljL290X2Nsb3NlLnN2ZyIsIk9URXh0ZXJuYWxMaW5rTG9nbyI6Imh0dHBzOi8vY2RuLmNvb2tpZWxhdy5vcmcvbG9nb3Mvc3RhdGljL290X2V4dGVybmFsX2xpbmsuc3ZnIiwiT1RHdWFyZExvZ28iOiJodHRwczovL2Nkbi5jb29raWVsYXcub3JnL2xvZ29zL3N0YXRpYy9vdF9ndWFyZF9sb2dvLnN2ZyIsIk9UU3ByaXRlTG9nbyI6bnVsbCwiQmFubmVyRXh0ZXJuYWxMaW5rc0xvZ28iOiIiLCJCYW5uZXJSZXF1aXJlRXh0ZXJuYWxMaW5rcyI6ZmFsc2UsIkJhbm5lclJlcXVpcmVFeHRlcm5hbExpbmtzQ3VzdG9tTG9nbyI6ZmFsc2V9LCJOdGZ5Q29uZmlnIjp7IlNob3dOdGZ5IjpmYWxzZSwiTnRmeUR1cmF0aW9uIjo1LCJTaG93Q1MiOnRydWUsIkNTVHlwZSI6IkJVVFRPTiIsIkNTVHh0IjoiQ29va2llIFNldHRpbmdzIiwiU3luYyI6eyJUaXRsZSI6IkNvb2tpZSBQcmVmZXJlbmNlcyIsIlRpdGxlQWxpZ24iOiJsZWZ0IiwiVGl0bGVDb2xvciI6IiM2OTY5NjkiLCJEZXNjIjoiU3luY2luZy4uLiIsIkRlc2NBbGlnbiI6ImxlZnQiLCJEZXNjQ29sb3IiOiIjNjk2OTY5IiwiQmdDb2xvciI6IiNGRkZGRkYiLCJCZHJDb2xvciI6IiNGRkZGRkYiLCJJY29uQmdDb2xvciI6IiMxMjc2Q0UiLCJTaG93Q2xvc2UiOnRydWUsIkNsb3NlQXJpYSI6IkNsb3NlIiwiU2hvd0ljb24iOnRydWV9LCJDb21wbGV0ZSI6eyJUaXRsZSI6IkNvb2tpZSBQcmVmZXJlbmNlcyIsIlRpdGxlQWxpZ24iOiJsZWZ0IiwiVGl0bGVDb2xvciI6IiM2OTY5NjkiLCJEZXNjIjoiU3luY2VkIiwiRGVzY0FsaWduIjoibGVmdCIsIkRlc2NDb2xvciI6IiM2OTY5NjkiLCJCZ0NvbG9yIjoiI0ZGRkZGRiIsIkJkckNvbG9yIjoiI0ZGRkZGRiIsIkljb25CZ0NvbG9yIjoiIzZDQzA0QSIsIlNob3dDbG9zZSI6dHJ1ZSwiQ2xvc2VBcmlhIjoiQ2xvc2UiLCJTaG93SWNvbiI6dHJ1ZX0sIkNTQnV0dG9uIjp7IkNvbG9yIjoiI0ZGRkZGRiIsIkJnQ29sb3IiOiIjMTI3NkNFIiwiQmRyQ29sb3IiOiIjMTI3NkNFIiwiQWxpZ24iOiJjZW50ZXIifSwiQ1NMaW5rIjp7IkNvbG9yIjoiIzEyNzZDRSIsIkFsaWduIjoiY2VudGVyIn19LCJPVFREYXRhIjpudWxsLCJNb2JpbGVEYXRhIjpudWxsfQ=="}},"time_used":54,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":54,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/logos/9375bad7-f65e-4f8a-bc16-8254723bd66a/233dac18-317c-4c2c-9914-7fac4789526f/95b2bf3e-0ba5-4e38-8cfb-d19cfa4f5bf6/DHL_Logo.PNG","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.852Z","timestamp":1785161167852,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /logos/9375bad7-f65e-4f8a-bc16-8254723bd66a/233dac18-317c-4c2c-9914-7fac4789526f/95b2bf3e-0ba5-4e38-8cfb-d19cfa4f5bf6/DHL_Logo.PNG HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: image/png\r\ncontent-length: 1756\r\ncontent-md5: wRCBvSt9Nur+ueXF05bTVg==\r\nlast-modified: Wed, 30 Dec 2020 04:42:33 GMT\r\netag: 0x8D8AC7D53226189\r\nserver: cloudflare\r\nx-ms-request-id: 00d6b55f-201e-0093-2495-b205c1000000\r\nx-ms-version: 2009-09-19\r\nx-ms-lease-status: unlocked\r\nx-ms-blob-type: BlockBlob\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding\r\naccess-control-allow-origin: *\r\naccept-ranges: bytes\r\nx-content-type-options: nosniff\r\nage: 46040\r\ncache-control: max-age=86400\r\ncf-cache-status: HIT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\ncf-ray: a21c33f319b8b1b8-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":"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":1756,"size_decoded":2579,"mime_type":"image/png","magic":"PNG image data, 197 x 53, 8-bit/color RGBA, non-interlaced","md5":"c11081bd2b7d36eafeb9e5c5d396d356","sha1":"38b54ccb126e0b1f98b837bf0d086b44d8935b1b","sha256":"904b70e4997d2154d462c8514522e03846ba539466c01c3b310a824ea4418caa","sha512":"ecb26e035a4585f1f39246d157c62052f186114e5d91590949b0e88c74683df263a6a94eaf8b3560621685247cccd3d312fd499098d45bc217714ef12cf6b27c","ssdeep":"","tlshash":"2c312bc42a407d5c3e8b58cff0b927ab7c4613b7180ae0007970b9260a15db441c302a","first_seen":"2023-05-03T19:20:11Z","last_seen":"2026-07-27T14:06:41.18668Z","times_seen":851,"resource_available":false,"data":"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"}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/fonts/Delivery_W_CdBlk.woff2","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.058Z","timestamp":1785161167058,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/fonts/Delivery_W_CdBlk.woff2 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://dhlexpress.bg/public/dist/styles/application.min.css?v1773055958\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: font/woff2\r\ncontent-length: 36572\r\nlast-modified: Wed, 01 Feb 2023 11:40:26 GMT\r\netag: \"8edc-5f3a1ea18b7ea\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":36572,"size_decoded":36827,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 36572, version 1.66","md5":"3f092b734173a32343d60b6f28b61035","sha1":"f6f2636b459cb6c02122446b059d9abffd38f8ed","sha256":"18bb1b8c6e45a26f4ca654602eb72e82dbea37d4d0ab220691e10969219ec06b","sha512":"6ceaa56d9dab8913a0f02aaa82f597d98bc1ef437ec94b3d2301886d5bbc87ab9cb2fbb79a7562a7e69ff9618998ee978ef07b10a9fe4e33bbd0a070b46ede1c","ssdeep":"768:9yZPR5aiPpwU7K/bUtMD55JaWb+NbSvte/E/Vkgb5ii1d:9CTl97GUtMD55XCNbItF9kVib","tlshash":"31f2e12ca15b6d99d1ef10b68000ec187917e6f2d2b02dbdd10f1e1987ad9f4dd8f64a","first_seen":"2023-05-10T12:32:03Z","last_seen":"2026-07-27T14:06:41.18732Z","times_seen":407,"resource_available":false,"data":"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"}},"time_used":34,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":34,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/fonts/Delivery_W_Lt.woff2","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.059Z","timestamp":1785161167059,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/fonts/Delivery_W_Lt.woff2 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://dhlexpress.bg/public/dist/styles/application.min.css?v1773055958\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: font/woff2\r\ncontent-length: 33220\r\nlast-modified: Wed, 01 Feb 2023 11:40:26 GMT\r\netag: \"81c4-5f3a1ea197371\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":33220,"size_decoded":33475,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 33220, version 1.66","md5":"5757a5cdc151ada483c5de3bfe0e93ce","sha1":"6d8c2451a84349d18dd7e33b23bace44edeb6d07","sha256":"b3fc9c16749c891f8e409c940f8e10b1cff07aa7e76eec6f912f6abf42a47617","sha512":"b4fe48e00526a4295ab544d8ab720c9528ef2c09dceee36836cfbbd96c6ec066a06b13ba2d602d44baccefe07072fe6dae9d081a9d994e503e4ab2fe18ca631d","ssdeep":"384:xUmuTzwHSVaN2xo3+gBKRFdDfD6Wh2Zavh90mEXjOBQwfMWNWyFGANZJykxEL5yg:DHScN2x5CKRH3kbXjFkWwl5XxELsmh6i","tlshash":"7de2f1e328861672453aa2fe4426bd97c1adce3fd92a4fb3571541f06402df0537dd4a","first_seen":"2023-11-09T10:01:51Z","last_seen":"2026-07-27T14:06:41.187914Z","times_seen":169,"resource_available":false,"data":"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"}},"time_used":39,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":39,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/webfonts/fa-brands-400.woff2","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.062Z","timestamp":1785161167062,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/webfonts/fa-brands-400.woff2 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://dhlexpress.bg/public/dist/styles/vendor.min.css?v1762424770\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: font/woff2\r\nlast-modified: Thu, 06 Nov 2025 10:26:10 GMT\r\netag: \"18b68-642ea7e5fb9ad-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":101224,"size_decoded":101524,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), CFF, length 101224, version 897.256","md5":"523f833a8b5bdd6079b88981425e31a7","sha1":"ed94030ca212e1857a6014496e7a6a43e64789e4","sha256":"061dd5c333459ea42dba764617793fd6ea2d316b7ab644f157e4d2354dac02af","sha512":"0c6a56b1be865ce71fc57ad7115452fad8b5e72fcefd3b269d5fd58173430a197c24d23e7029371a34bacb82bd526f2f472b97c2436783e824509012b7fc1869","ssdeep":"3072:MCj7agu2zPb6tj6//Et9yfFqQHrPULB7OLU:X/b6M/Ak4B7O4","tlshash":"3fa3023f84b6000d2ecb3d16a5807364af23ffc5e9eb61e34d5ba47c2660716a814e5d","first_seen":"2025-10-03T11:13:32.663396Z","last_seen":"2026-07-27T14:52:58.868344Z","times_seen":1311,"resource_available":false,"data":"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"}},"time_used":50,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":50,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/scripttemplates/202510.2.0/assets/otCommonStyles.css","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.757Z","timestamp":1785161167757,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /scripttemplates/202510.2.0/assets/otCommonStyles.css HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/\r\nOrigin: https://dhlexpress.bg\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: text/css\r\ncontent-md5: 7mg/9H9DfjiTrxo8zBRCGQ==\r\nlast-modified: Fri, 21 Nov 2025 06:40:48 GMT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nserver: cloudflare\r\nx-ms-request-id: 0ccb238f-e01e-00a7-71c7-e1aa69000000\r\nx-ms-version: 2009-09-19\r\nx-ms-lease-status: unlocked\r\nx-ms-blob-type: BlockBlob\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding\r\naccess-control-allow-origin: *\r\ncross-origin-resource-policy: cross-origin\r\ncache-control: max-age=86400\r\nx-content-type-options: nosniff\r\nage: 76160\r\ncf-cache-status: HIT\r\ncontent-encoding: gzip\r\ncf-ray: a21c33f27a9d783d-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":"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":26749,"size_decoded":5261,"mime_type":"text/css","magic":"ASCII text, with very long lines (26749), with no line terminators","md5":"ee683ff47f437e3893af1a3ccc144219","sha1":"60f136e71bedab7236d29eaec3613c18faf1efa8","sha256":"9cbbf255dacf255e833c05b160728d890148725f0fc68b81f80a933cb876a81b","sha512":"48298751a213be27f7c7041cd8e964315edb369d65e3e2cd33f64541e002f203f093ac5f546a0e362fbe30afa8c26321826a8dea19546c3612b827c3f28448c4","ssdeep":"384:348ChRGI09YUNHDouelC774jlIhHLnwGfg4xqsQ4PNE:vYypWN","tlshash":"06c2459b38512b1ae6d7c719992139817d11aceffd739ceee009a3784adc3e24c1464a","first_seen":"2025-11-05T01:38:18.203767Z","last_seen":"2026-07-27T14:06:41.189155Z","times_seen":3781,"resource_available":false,"data":"I29uZXRydXN0LWJhbm5lci1zZGsgLm9uZXRydXN0LXZlbmRvcnMtbGlzdC1oYW5kbGVye2N1cnNvcjpwb2ludGVyO2NvbG9yOiMxZjk2ZGI7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC13ZWlnaHQ6Ym9sZDt0ZXh0LWRlY29yYXRpb246bm9uZTttYXJnaW4tbGVmdDo1cHg7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtd3JhcDpicmVhay13b3JkO3RleHQtYWxpZ246bGVmdH0jb25ldHJ1c3QtYmFubmVyLXNkayAub25ldHJ1c3QtdmVuZG9ycy1saXN0LWhhbmRsZXI6aG92ZXJ7Y29sb3I6IzFmOTZkYn0jb25ldHJ1c3QtYmFubmVyLXNkazpmb2N1c3tvdXRsaW5lOjJweCBzb2xpZCAjMDAwO291dGxpbmUtb2Zmc2V0Oi0ycHh9I29uZXRydXN0LWJhbm5lci1zZGsgYTpmb2N1c3tvdXRsaW5lOjJweCBzb2xpZCAjMDAwfSNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1hY2NlcHQtYnRuLWhhbmRsZXIsI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXJlamVjdC1hbGwtaGFuZGxlciwjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcGMtYnRuLWhhbmRsZXJ7b3V0bGluZS1vZmZzZXQ6MXB4fSNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWJuci13LWxvZ28gLm90LWJuci1sb2dve2hlaWdodDo2NHB4O3dpZHRoOjY0cHh9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXBvbGljeSBzdmcsI29uZXRydXN0LWJhbm5lci1zZGsgLmJhbm5lci1vcHRpb24gc3Zne2hlaWdodDoxM3B4O3dpZHRoOjEzcHg7bWFyZ2luLWxlZnQ6MXB4fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC10Y2YyLXZlbmRvci1jb3VudC5vdC10ZXh0LWJvbGR7Zm9udC13ZWlnaHQ6Ym9sZH0jb25ldHJ1c3QtYmFubmVyLXNkayAub3QtYnV0dG9uLW9yZGVyLTB7b3JkZXI6MH0jb25ldHJ1c3QtYmFubmVyLXNkayAub3QtYnV0dG9uLW9yZGVyLTF7b3JkZXI6MX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3QtYnV0dG9uLW9yZGVyLTJ7b3JkZXI6Mn0jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtY2xvc2UtYnRuLWNvbnRhaW5lciBzdmd7aGVpZ2h0OjEwcHg7d2lkdGg6MTBweDtwb2ludGVyLWV2ZW50czpub25lfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1jbG9zZS1pY29uLCNvbmV0cnVzdC1wYy1zZGsgLm90LWNsb3NlLWljb24sI290LXN5bmMtbnRmeSAub3QtY2xvc2UtaWNvbntiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH0jb25ldHJ1c3QtYmFubmVyLXNkayAucG93ZXJlZC1ieS1sb2dvLCNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1wYy1mb290ZXItbG9nbyBhLCNvbmV0cnVzdC1wYy1zZGsgLnBvd2VyZWQtYnktbG9nbywjb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1mb290ZXItbG9nbyBhLCNvdC1zeW5jLW50ZnkgLnBvd2VyZWQtYnktbG9nbywjb3Qtc3luYy1udGZ5IC5vdC1wYy1mb290ZXItbG9nbyBhe2JhY2tncm91bmQtc2l6ZTpjb250YWluO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtoZWlnaHQ6MjVweDt3aWR0aDoxNTJweDtkaXNwbGF5OmJsb2NrO3RleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtc2l6ZTouNzVlbX0jb25ldHJ1c3QtYmFubmVyLXNkayAucG93ZXJlZC1ieS1sb2dvOmhvdmVyLCNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1wYy1mb290ZXItbG9nbyBhOmhvdmVyLCNvbmV0cnVzdC1wYy1zZGsgLnBvd2VyZWQtYnktbG9nbzpob3Zlciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1mb290ZXItbG9nbyBhOmhvdmVyLCNvdC1zeW5jLW50ZnkgLnBvd2VyZWQtYnktbG9nbzpob3Zlciwjb3Qtc3luYy1udGZ5IC5vdC1wYy1mb290ZXItbG9nbyBhOmhvdmVye2NvbG9yOiM1NjU2NTZ9I29uZXRydXN0LWJhbm5lci1zZGsgaDMgKiwjb25ldHJ1c3QtYmFubmVyLXNkayBoNCAqLCNvbmV0cnVzdC1iYW5uZXItc2RrIGg2ICosI29uZXRydXN0LWJhbm5lci1zZGsgYnV0dG9uICosI29uZXRydXN0LWJhbm5lci1zZGsgYVtkYXRhLXBhcmVudC1pZF0gKiwjb25ldHJ1c3QtYmFubmVyLXNkayBwW3JvbGU9aGVhZGluZ10gKiwjb25ldHJ1c3QtcGMtc2RrIGgzICosI29uZXRydXN0LXBjLXNkayBoNCAqLCNvbmV0cnVzdC1wYy1zZGsgaDYgKiwjb25ldHJ1c3QtcGMtc2RrIGJ1dHRvbiAqLCNvbmV0cnVzdC1wYy1zZGsgYVtkYXRhLXBhcmVudC1pZF0gKiwjb25ldHJ1c3QtcGMtc2RrIHBbcm9sZT1oZWFkaW5nXSAqLCNvdC1zeW5jLW50ZnkgaDMgKiwjb3Qtc3luYy1udGZ5IGg0ICosI290LXN5bmMtbnRmeSBoNiAqLCNvdC1zeW5jLW50ZnkgYnV0dG9uICosI290LXN5bmMtbnRmeSBhW2RhdGEtcGFyZW50LWlkXSAqLCNvdC1zeW5jLW50ZnkgcFtyb2xlPWhlYWRpbmddICp7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdDtjb2xvcjppbmhlcml0fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1oaWRlLCNvbmV0cnVzdC1wYy1zZGsgLm90LWhpZGUsI290LXN5bmMtbnRmeSAub3QtaGlkZXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH0jb25ldHJ1c3QtYmFubmVyLXNkayBidXR0b24ub3QtbGluay1idG46aG92ZXIsI29uZXRydXN0LXBjLXNkayBidXR0b24ub3QtbGluay1idG46aG92ZXIsI290LXN5bmMtbnRmeSBidXR0b24ub3QtbGluay1idG46aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtvcGFjaXR5OjF9I29uZXRydXN0LXBjLXNkayAub3Qtc2RrLXJvdyAub3Qtc2RrLWNvbHVtbntwYWRkaW5nOjB9I29uZXRydXN0LXBjLXNkayAub3Qtc2RrLWNvbnRhaW5lcntwYWRkaW5nLXJpZ2h0OjB9I29uZXRydXN0LXBjLXNkayAub3Qtc2RrLXJvd3tmbGV4LWRpcmVjdGlvbjppbml0aWFsO3dpZHRoOjEwMCV9I29uZXRydXN0LXBjLXNkayBbdHlwZT1jaGVja2JveF06Y2hlY2tlZCwjb25ldHJ1c3QtcGMtc2RrIFt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpe3BvaW50ZXItZXZlbnRzOmluaXRpYWx9I29uZXRydXN0LXBjLXNkayBbdHlwZT1jaGVja2JveF06ZGlzYWJsZWQrbGFiZWw6OmJlZm9yZSwjb25ldHJ1c3QtcGMtc2RrIFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZCtsYWJlbDphZnRlciwjb25ldHJ1c3QtcGMtc2RrIFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZCtsYWJlbHtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6Ljh9I29uZXRydXN0LXBjLXNkayAjdmVuZG9yLWxpc3QtY29udGVudHt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwgMCwgMCl9I29uZXRydXN0LXBjLXNkayBsaSBpbnB1dFt0eXBlPWNoZWNrYm94XXt6LWluZGV4OjF9I29uZXRydXN0LXBjLXNkayBsaSAub3QtY2hlY2tib3ggbGFiZWx7ei1pbmRleDoyfSNvbmV0cnVzdC1wYy1zZGsgbGkgLm90LWNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hde2hlaWdodDphdXRvO3dpZHRoOmF1dG99I29uZXRydXN0LXBjLXNkayBsaSAuaG9zdC10aXRsZSBhLCNvbmV0cnVzdC1wYy1zZGsgbGkgLm90LWhvc3QtbmFtZSBhLCNvbmV0cnVzdC1wYy1zZGsgbGkgLmFjY29yZGlvbi10ZXh0LCNvbmV0cnVzdC1wYy1zZGsgbGkgLm90LWFjYy10eHR7ei1pbmRleDoyO3Bvc2l0aW9uOnJlbGF0aXZlfSNvbmV0cnVzdC1wYy1zZGsgaW5wdXR7bWFyZ2luOjNweCAuMWV4fSNvbmV0cnVzdC1wYy1zZGsgLnBjLWxvZ28sI29uZXRydXN0LXBjLXNkayAub3QtcGMtbG9nb3toZWlnaHQ6NjBweDt3aWR0aDoxODBweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7ZGlzcGxheTppbmxpbmUtZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0jb25ldHJ1c3QtcGMtc2RrIC5wYy1sb2dvIGltZywjb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1sb2dvIGltZ3ttYXgtaGVpZ2h0OjEwMCU7bWF4LXdpZHRoOjEwMCV9I29uZXRydXN0LXBjLXNkayAucGMtbG9nbyBzdmcsI29uZXRydXN0LXBjLXNkayAub3QtcGMtbG9nbyBzdmd7aGVpZ2h0OjYwcHg7d2lkdGg6MTgwcHh9I29uZXRydXN0LXBjLXNkayAjY2xvc2UtcGMtYnRuLWhhbmRsZXI+c3Zne21hcmdpbjphdXRvO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1kZXNjIHN2Z3toZWlnaHQ6MTNweDt3aWR0aDoxM3B4O21hcmdpbi1sZWZ0Oi03cHg7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7bWFyZ2luLXJpZ2h0OjNweH0jb25ldHJ1c3QtcGMtc2RrIC5zY3JlZW4tcmVhZGVyLW9ubHksI29uZXRydXN0LXBjLXNkayAub3Qtc2Nybi1yZHIsLm90LXNkay1jb29raWUtcG9saWN5IC5zY3JlZW4tcmVhZGVyLW9ubHksLm90LXNkay1jb29raWUtcG9saWN5IC5vdC1zY3JuLXJkcntib3JkZXI6MDtjbGlwOnJlY3QoMCAwIDAgMCk7aGVpZ2h0OjFweDttYXJnaW46LTFweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjFweH0jb25ldHJ1c3QtcGMtc2RrLm90LWZhZGUtaW4sLm9uZXRydXN0LXBjLWRhcmstZmlsdGVyLm90LWZhZGUtaW4sI29uZXRydXN0LWJhbm5lci1zZGsub3QtZmFkZS1pbiwub3QtY29uZmlybS1kaWFsb2ctb3ZlcmxheS5vdC1mYWRlLWlue2FuaW1hdGlvbi1uYW1lOm9uZXRydXN0LWZhZGUtaW47YW5pbWF0aW9uLWR1cmF0aW9uOjQwMG1zO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXR9I29uZXRydXN0LXBjLXNkay5vdC1oaWRle2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fS5vbmV0cnVzdC1wYy1kYXJrLWZpbHRlci5vdC1oaWRle2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fSNvdC1zZGstYnRuLm90LXNkay1zaG93LXNldHRpbmdzLCNvdC1zZGstYnRuLm9wdGFub24tc2hvdy1zZXR0aW5nc3tjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzQ2ODI1NDtoZWlnaHQ6YXV0bzt3aGl0ZS1zcGFjZTpub3JtYWw7d29yZC13cmFwOmJyZWFrLXdvcmQ7cGFkZGluZzouOGVtIDJlbTtmb250LXNpemU6LjhlbTtsaW5lLWhlaWdodDoxLjI7Y3Vyc29yOnBvaW50ZXI7LW1vei10cmFuc2l0aW9uOi4xcyBlYXNlOy1vLXRyYW5zaXRpb246LjFzIGVhc2U7LXdlYmtpdC10cmFuc2l0aW9uOjFzIGVhc2U7dHJhbnNpdGlvbjouMXMgZWFzZX0jb3Qtc2RrLWJ0bi5vdC1zZGstc2hvdy1zZXR0aW5nczpob3Zlciwjb3Qtc2RrLWJ0bi5vcHRhbm9uLXNob3ctc2V0dGluZ3M6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyYzY0MTV9I290LXNkay1idG4ub3Qtc2RrLXNob3ctc2V0dGluZ3M6YWN0aXZlLCNvdC1zZGstYnRuLm9wdGFub24tc2hvdy1zZXR0aW5nczphY3RpdmV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyYzY0MTU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE2MiwxOTIsMTY5LC41KX0ub25ldHJ1c3QtcGMtZGFyay1maWx0ZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC41KTt6LWluZGV4OjIxNDc0ODM2NDY7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246Zml4ZWQ7dG9wOjA7Ym90dG9tOjA7bGVmdDowfUBrZXlmcmFtZXMgb25ldHJ1c3QtZmFkZS1pbnswJXtvcGFjaXR5OjB9MTAwJXtvcGFjaXR5OjF9fS5vdC1jb29raWUtbGFiZWx7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQyNnB4KWFuZCAobWF4LXdpZHRoOiA4OTZweClhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpeyNvbmV0cnVzdC1wYy1zZGsgcHtmb250LXNpemU6Ljc1ZW19fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5iYW5uZXItb3B0aW9uLWlucHV0OmZvY3VzK2xhYmVse291dGxpbmU6MXB4IHNvbGlkICMwMDA7b3V0bGluZS1zdHlsZTphdXRvfS5jYXRlZ29yeS12ZW5kb3JzLWxpc3QtaGFuZGxlcithOmZvY3VzLC5jYXRlZ29yeS12ZW5kb3JzLWxpc3QtaGFuZGxlcithOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgIzAwMH0jb25ldHJ1c3QtcGMtc2RrIC5vdC11c2VyaWQtdGl0bGV7bWFyZ2luLXRvcDoxMHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXVzZXJpZC10aXRsZT5zcGFuLCNvbmV0cnVzdC1wYy1zZGsgLm90LXVzZXJpZC10aW1lc3RhbXA+c3Bhbntmb250LXdlaWdodDo3MDB9I29uZXRydXN0LXBjLXNkayAub3QtdXNlcmlkLWRlc2N7Zm9udC1zdHlsZTppdGFsaWN9I29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1kZXNjIGF7cG9pbnRlci1ldmVudHM6aW5pdGlhbH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4taGRyPnAgYXtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7cG9pbnRlci1ldmVudHM6aW5pdGlhbH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gLm90LXZuZC1pbmZvIGEsI29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LXZuZC1pbmZvIGF7bWFyZ2luLXJpZ2h0OmF1dG99I29uZXRydXN0LXBjLXNkayAub3QtcGMtZm9vdGVyLWxvZ28gc3ZnLCNvbmV0cnVzdC1wYy1zZGsgLm90LXBjLWZvb3Rlci1sb2dvIGltZ3t3aWR0aDoxMzZweDtoZWlnaHQ6MTZweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1wdXItdmRyLWNvdW50e2ZvbnQtd2VpZ2h0OjQwMDtmb250LXNpemU6LjhlbTtwYWRkaW5nLXRvcDozcHg7ZGlzcGxheTpibG9ja30jb25ldHJ1c3QtcGMtc2RrIHBbcm9sZT1oZWFkaW5nXSAub3QtcHVyLXZkci1jb3VudHtmb250LXdlaWdodDo0MDAgIWltcG9ydGFudDtmb250LXNpemU6LjhlbSAhaW1wb3J0YW50fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1vcHRvdXQtc2lnbmFsLCNvbmV0cnVzdC1wYy1zZGsgLm90LW9wdG91dC1zaWduYWx7Ym9yZGVyOjFweCBzb2xpZCAjMzJhZTg4O2JvcmRlci1yYWRpdXM6M3B4O3BhZGRpbmc6NXB4O21hcmdpbi1ib3R0b206MTBweDtiYWNrZ3JvdW5kLWNvbG9yOiNmOWZmZmE7Zm9udC1zaXplOi44NXJlbTtsaW5lLWhlaWdodDoyfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1vcHRvdXQtc2lnbmFsIC5vdC1vcHRvdXQtaWNvbiwjb25ldHJ1c3QtcGMtc2RrIC5vdC1vcHRvdXQtc2lnbmFsIC5vdC1vcHRvdXQtaWNvbntkaXNwbGF5OmlubGluZTttYXJnaW4tcmlnaHQ6NXB4fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1vcHRvdXQtc2lnbmFsIHN2Zywjb25ldHJ1c3QtcGMtc2RrIC5vdC1vcHRvdXQtc2lnbmFsIHN2Z3toZWlnaHQ6MjBweDt3aWR0aDozMHB4fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1vcHRvdXQtc2lnbmFsIHN2Zy5vdC1zb3VyY2Utc3ByaXRlLCNvbmV0cnVzdC1wYy1zZGsgLm90LW9wdG91dC1zaWduYWwgc3ZnLm90LXNvdXJjZS1zcHJpdGV7cG9zaXRpb246cmVsYXRpdmU7Ym90dG9tOi0zcHh9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LW9wdG91dC1zaWduYWwgc3ZnOm5vdCgub3Qtc291cmNlLXNwcml0ZSksI29uZXRydXN0LXBjLXNkayAub3Qtb3B0b3V0LXNpZ25hbCBzdmc6bm90KC5vdC1zb3VyY2Utc3ByaXRlKXt0cmFuc2Zvcm06c2NhbGUoMC41KX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtb3B0b3V0LXNpZ25hbCBzdmc6bm90KC5vdC1zb3VyY2Utc3ByaXRlKSBwYXRoLCNvbmV0cnVzdC1wYy1zZGsgLm90LW9wdG91dC1zaWduYWwgc3ZnOm5vdCgub3Qtc291cmNlLXNwcml0ZSkgcGF0aHtmaWxsOiMzMmFlODh9I29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1nZW5lcmFsLW1vZGFse292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpmaXhlZDttYXJnaW46MCBhdXRvO3RvcDo1MCU7bGVmdDo1MCU7d2lkdGg6NDAlO3BhZGRpbmc6MS41cmVtO21heC13aWR0aDo1NzVweDttaW4td2lkdGg6NTc1cHg7ei1pbmRleDoyMTQ3NDgzNjQ3O2JvcmRlci1yYWRpdXM6Mi41cHg7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLCAtNTAlKX0jb25ldHJ1c3QtY29uc2VudC1zZGsgLm90LXNpZ25hdHVyZS1oZWFsdGgtZ3JvdXB7bWFyZ2luLXRvcDoxcmVtO3BhZGRpbmctbGVmdDoxLjI1cmVtO3BhZGRpbmctcmlnaHQ6MS4yNXJlbTttYXJnaW4tYm90dG9tOi42MjVyZW07d2lkdGg6Y2FsYygxMDAlIC0gMi41cmVtKX0jb25ldHJ1c3QtY29uc2VudC1zZGsgLm90LXNpZ25hdHVyZS1oZWFsdGgtZ3JvdXAgLm90LXNpZ25hdHVyZS1oZWFsdGgtZm9ybXtnYXA6LjVyZW19I29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoIC5vdC1zaWduYXR1cmUtaGVhbHRoLWZvcm17d2lkdGg6NzAlO2dhcDouMzVyZW19I29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoIC5vdC1zaWduYXR1cmUtaW5wdXR7aGVpZ2h0OjM4cHg7cGFkZGluZzo2cHggMTBweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZDFkMWQxO2JvcmRlci1yYWRpdXM6NHB4O2JveC1zaGFkb3c6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3h9I29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoIC5vdC1zaWduYXR1cmUtc3VidGl0bGV7Zm9udC1zaXplOjEuMTI1cmVtfSNvbmV0cnVzdC1jb25zZW50LXNkayAub3Qtc2lnbmF0dXJlLWhlYWx0aCAub3Qtc2lnbmF0dXJlLWdyb3VwLXRpdGxle2ZvbnQtc2l6ZToxLjI1cmVtO2ZvbnQtd2VpZ2h0OmJvbGR9I29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoLCNvbmV0cnVzdC1jb25zZW50LXNkayAub3Qtc2lnbmF0dXJlLWhlYWx0aC1ncm91cHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxcmVtfSNvbmV0cnVzdC1jb25zZW50LXNkayAub3Qtc2lnbmF0dXJlLWhlYWx0aCAub3Qtc2lnbmF0dXJlLWNvbnQsI29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoLWdyb3VwIC5vdC1zaWduYXR1cmUtY29udHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDouMjVyZW19I29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoIC5vdC1zaWduYXR1cmUtcGFyYWdyYXBoLCNvbmV0cnVzdC1jb25zZW50LXNkayAub3Qtc2lnbmF0dXJlLWhlYWx0aC1ncm91cCAub3Qtc2lnbmF0dXJlLXBhcmFncmFwaHttYXJnaW46MDtsaW5lLWhlaWdodDoyMHB4O2ZvbnQtc2l6ZTptYXgoMTRweCwuODc1cmVtKX0jb25ldHJ1c3QtY29uc2VudC1zZGsgLm90LXNpZ25hdHVyZS1oZWFsdGggLm90LWhlYWx0aC1zaWduYXR1cmUtZXJyb3IsI29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoLWdyb3VwIC5vdC1oZWFsdGgtc2lnbmF0dXJlLWVycm9ye2NvbG9yOiM0ZDRkNGQ7Zm9udC1zaXplOm1pbigxMnB4LC43NXJlbSl9I29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoIC5vdC1zaWduYXR1cmUtYnV0dG9ucy1jb250LCNvbmV0cnVzdC1jb25zZW50LXNkayAub3Qtc2lnbmF0dXJlLWhlYWx0aC1ncm91cCAub3Qtc2lnbmF0dXJlLWJ1dHRvbnMtY29udHttYXJnaW4tdG9wOm1heCguNzVyZW0sMiUpO2dhcDoxcmVtO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9I29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoIC5vdC1zaWduYXR1cmUtYnV0dG9uLCNvbmV0cnVzdC1jb25zZW50LXNkayAub3Qtc2lnbmF0dXJlLWhlYWx0aC1ncm91cCAub3Qtc2lnbmF0dXJlLWJ1dHRvbntmbGV4OjE7aGVpZ2h0OmF1dG87Y29sb3I6I2ZmZjtjdXJzb3I6cG9pbnRlcjtsaW5lLWhlaWdodDoxLjI7bWluLXdpZHRoOjEyNXB4O2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6LjgxM2VtO2JvcmRlci1yYWRpdXM6MnB4O3BhZGRpbmc6MTJweCAxMHB4O3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLXdyYXA6YnJlYWstd29yZDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7YmFja2dyb3VuZC1jb2xvcjojNjhiNjMxO2JvcmRlcjoycHggc29saWQgIzY4YjYzMX0jb25ldHJ1c3QtY29uc2VudC1zZGsgLm90LXNpZ25hdHVyZS1oZWFsdGggLm90LXNpZ25hdHVyZS1idXR0b24ucmVqZWN0LCNvbmV0cnVzdC1jb25zZW50LXNkayAub3Qtc2lnbmF0dXJlLWhlYWx0aC1ncm91cCAub3Qtc2lnbmF0dXJlLWJ1dHRvbi5yZWplY3R7YmFja2dyb3VuZC1jb2xvcjojZmZmfSNvbmV0cnVzdC1jb25zZW50LXNkayAub3QtaW5wdXQtZmllbGQtY29udHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDouNXJlbX0jb25ldHJ1c3QtY29uc2VudC1zZGsgLm90LWlucHV0LWZpZWxkLWNvbnQgLm90LXNpZ25hdHVyZS1pbnB1dHt3aWR0aDo2NSV9I29uZXRydXN0LWNvbnNlbnQtc2RrIC5vdC1zaWduYXR1cmUtaGVhbHRoLWZvcm17ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0jb25ldHJ1c3QtY29uc2VudC1zZGsgLm90LXNpZ25hdHVyZS1oZWFsdGgtZm9ybSAub3Qtc2lnbmF0dXJlLWxhYmVse21hcmdpbi1ib3R0b206MDtsaW5lLWhlaWdodDoyMHB4O2ZvbnQtc2l6ZTptYXgoMTRweCwuODc1cmVtKX0jb25ldHJ1c3QtY29uc2VudC1zZGsgI29uZXRydXN0LXNwcml0ZS1zdmd7ZGlzcGxheTpub25lfUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpeyNvbmV0cnVzdC1jb25zZW50LXNkayAub3QtZ2VuZXJhbC1tb2RhbHttaW4td2lkdGg6MTAwJX0jb25ldHJ1c3QtY29uc2VudC1zZGsgLm90LXNpZ25hdHVyZS1oZWFsdGggLm90LXNpZ25hdHVyZS1oZWFsdGgtZm9ybXt3aWR0aDoxMDAlfSNvbmV0cnVzdC1jb25zZW50LXNkayAub3QtaW5wdXQtZmllbGQtY29udCAub3Qtc2lnbmF0dXJlLWlucHV0e3dpZHRoOjEwMCV9fSNvbmV0cnVzdC1iYW5uZXItc2RrLCNvbmV0cnVzdC1wYy1zZGssI290LXNkay1jb29raWUtcG9saWN5LCNvdC1zeW5jLW50Znl7Zm9udC1zaXplOjE2cHh9I29uZXRydXN0LWJhbm5lci1zZGsgKiwjb25ldHJ1c3QtYmFubmVyLXNkayA6OmFmdGVyLCNvbmV0cnVzdC1iYW5uZXItc2RrIDo6YmVmb3JlLCNvbmV0cnVzdC1wYy1zZGsgKiwjb25ldHJ1c3QtcGMtc2RrIDo6YWZ0ZXIsI29uZXRydXN0LXBjLXNkayA6OmJlZm9yZSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgKiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgOjphZnRlciwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgOjpiZWZvcmUsI290LXN5bmMtbnRmeSAqLCNvdC1zeW5jLW50ZnkgOjphZnRlciwjb3Qtc3luYy1udGZ5IDo6YmVmb3Jley13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveH0jb25ldHJ1c3QtYmFubmVyLXNkayBkaXYsI29uZXRydXN0LWJhbm5lci1zZGsgc3Bhbiwjb25ldHJ1c3QtYmFubmVyLXNkayBoMSwjb25ldHJ1c3QtYmFubmVyLXNkayBoMiwjb25ldHJ1c3QtYmFubmVyLXNkayBoMywjb25ldHJ1c3QtYmFubmVyLXNkayBoNCwjb25ldHJ1c3QtYmFubmVyLXNkayBoNSwjb25ldHJ1c3QtYmFubmVyLXNkayBoNiwjb25ldHJ1c3QtYmFubmVyLXNkayBwLCNvbmV0cnVzdC1iYW5uZXItc2RrIGltZywjb25ldHJ1c3QtYmFubmVyLXNkayBzdmcsI29uZXRydXN0LWJhbm5lci1zZGsgYnV0dG9uLCNvbmV0cnVzdC1iYW5uZXItc2RrIHNlY3Rpb24sI29uZXRydXN0LWJhbm5lci1zZGsgYSwjb25ldHJ1c3QtYmFubmVyLXNkayBsYWJlbCwjb25ldHJ1c3QtYmFubmVyLXNkayBpbnB1dCwjb25ldHJ1c3QtYmFubmVyLXNkayB1bCwjb25ldHJ1c3QtYmFubmVyLXNkayBsaSwjb25ldHJ1c3QtYmFubmVyLXNkayBuYXYsI29uZXRydXN0LWJhbm5lci1zZGsgdGFibGUsI29uZXRydXN0LWJhbm5lci1zZGsgdGhlYWQsI29uZXRydXN0LWJhbm5lci1zZGsgdHIsI29uZXRydXN0LWJhbm5lci1zZGsgdGQsI29uZXRydXN0LWJhbm5lci1zZGsgdGJvZHksI29uZXRydXN0LWJhbm5lci1zZGsgLm90LW1haW4tY29udGVudCwjb25ldHJ1c3QtYmFubmVyLXNkayAub3QtdG9nZ2xlLCNvbmV0cnVzdC1iYW5uZXItc2RrICNvdC1jb250ZW50LCNvbmV0cnVzdC1iYW5uZXItc2RrICNvdC1wYy1jb250ZW50LCNvbmV0cnVzdC1iYW5uZXItc2RrIC5jaGVja2JveCwjb25ldHJ1c3QtcGMtc2RrIGRpdiwjb25ldHJ1c3QtcGMtc2RrIHNwYW4sI29uZXRydXN0LXBjLXNkayBoMSwjb25ldHJ1c3QtcGMtc2RrIGgyLCNvbmV0cnVzdC1wYy1zZGsgaDMsI29uZXRydXN0LXBjLXNkayBoNCwjb25ldHJ1c3QtcGMtc2RrIGg1LCNvbmV0cnVzdC1wYy1zZGsgaDYsI29uZXRydXN0LXBjLXNkayBwLCNvbmV0cnVzdC1wYy1zZGsgaW1nLCNvbmV0cnVzdC1wYy1zZGsgc3ZnLCNvbmV0cnVzdC1wYy1zZGsgYnV0dG9uLCNvbmV0cnVzdC1wYy1zZGsgc2VjdGlvbiwjb25ldHJ1c3QtcGMtc2RrIGEsI29uZXRydXN0LXBjLXNkayBsYWJlbCwjb25ldHJ1c3QtcGMtc2RrIGlucHV0LCNvbmV0cnVzdC1wYy1zZGsgdWwsI29uZXRydXN0LXBjLXNkayBsaSwjb25ldHJ1c3QtcGMtc2RrIG5hdiwjb25ldHJ1c3QtcGMtc2RrIHRhYmxlLCNvbmV0cnVzdC1wYy1zZGsgdGhlYWQsI29uZXRydXN0LXBjLXNkayB0ciwjb25ldHJ1c3QtcGMtc2RrIHRkLCNvbmV0cnVzdC1wYy1zZGsgdGJvZHksI29uZXRydXN0LXBjLXNkayAub3QtbWFpbi1jb250ZW50LCNvbmV0cnVzdC1wYy1zZGsgLm90LXRvZ2dsZSwjb25ldHJ1c3QtcGMtc2RrICNvdC1jb250ZW50LCNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWNvbnRlbnQsI29uZXRydXN0LXBjLXNkayAuY2hlY2tib3gsI290LXNkay1jb29raWUtcG9saWN5IGRpdiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgc3Bhbiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDEsI290LXNkay1jb29raWUtcG9saWN5IGgyLCNvdC1zZGstY29va2llLXBvbGljeSBoMywjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDQsI290LXNkay1jb29raWUtcG9saWN5IGg1LCNvdC1zZGstY29va2llLXBvbGljeSBoNiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgcCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaW1nLCNvdC1zZGstY29va2llLXBvbGljeSBzdmcsI290LXNkay1jb29raWUtcG9saWN5IGJ1dHRvbiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgc2VjdGlvbiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgYSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgbGFiZWwsI290LXNkay1jb29raWUtcG9saWN5IGlucHV0LCNvdC1zZGstY29va2llLXBvbGljeSB1bCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgbGksI290LXNkay1jb29raWUtcG9saWN5IG5hdiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGFibGUsI290LXNkay1jb29raWUtcG9saWN5IHRoZWFkLCNvdC1zZGstY29va2llLXBvbGljeSB0ciwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgdGQsI290LXNkay1jb29raWUtcG9saWN5IHRib2R5LCNvdC1zZGstY29va2llLXBvbGljeSAub3QtbWFpbi1jb250ZW50LCNvdC1zZGstY29va2llLXBvbGljeSAub3QtdG9nZ2xlLCNvdC1zZGstY29va2llLXBvbGljeSAjb3QtY29udGVudCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgI290LXBjLWNvbnRlbnQsI290LXNkay1jb29raWUtcG9saWN5IC5jaGVja2JveCwjb3Qtc3luYy1udGZ5IGRpdiwjb3Qtc3luYy1udGZ5IHNwYW4sI290LXN5bmMtbnRmeSBoMSwjb3Qtc3luYy1udGZ5IGgyLCNvdC1zeW5jLW50ZnkgaDMsI290LXN5bmMtbnRmeSBoNCwjb3Qtc3luYy1udGZ5IGg1LCNvdC1zeW5jLW50ZnkgaDYsI290LXN5bmMtbnRmeSBwLCNvdC1zeW5jLW50ZnkgaW1nLCNvdC1zeW5jLW50Znkgc3ZnLCNvdC1zeW5jLW50ZnkgYnV0dG9uLCNvdC1zeW5jLW50Znkgc2VjdGlvbiwjb3Qtc3luYy1udGZ5IGEsI290LXN5bmMtbnRmeSBsYWJlbCwjb3Qtc3luYy1udGZ5IGlucHV0LCNvdC1zeW5jLW50ZnkgdWwsI290LXN5bmMtbnRmeSBsaSwjb3Qtc3luYy1udGZ5IG5hdiwjb3Qtc3luYy1udGZ5IHRhYmxlLCNvdC1zeW5jLW50ZnkgdGhlYWQsI290LXN5bmMtbnRmeSB0ciwjb3Qtc3luYy1udGZ5IHRkLCNvdC1zeW5jLW50ZnkgdGJvZHksI290LXN5bmMtbnRmeSAub3QtbWFpbi1jb250ZW50LCNvdC1zeW5jLW50ZnkgLm90LXRvZ2dsZSwjb3Qtc3luYy1udGZ5ICNvdC1jb250ZW50LCNvdC1zeW5jLW50ZnkgI290LXBjLWNvbnRlbnQsI290LXN5bmMtbnRmeSAuY2hlY2tib3h7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXdlaWdodDpub3JtYWw7LXdlYmtpdC1mb250LXNtb290aGluZzphdXRvO2xldHRlci1zcGFjaW5nOm5vcm1hbDtsaW5lLWhlaWdodDpub3JtYWw7cGFkZGluZzowO21hcmdpbjowO2hlaWdodDphdXRvO21pbi1oZWlnaHQ6MDttYXgtaGVpZ2h0Om5vbmU7d2lkdGg6YXV0bzttaW4td2lkdGg6MDttYXgtd2lkdGg6bm9uZTtib3JkZXItcmFkaXVzOjA7Ym9yZGVyOm5vbmU7Y2xlYXI6bm9uZTtmbG9hdDpub25lO3Bvc2l0aW9uOnN0YXRpYztib3R0b206YXV0bztsZWZ0OmF1dG87cmlnaHQ6YXV0bzt0b3A6YXV0bzt0ZXh0LWFsaWduOmxlZnQ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1pbmRlbnQ6MDt0ZXh0LXNoYWRvdzpub25lO3RleHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm9ybWFsO2JhY2tncm91bmQ6bm9uZTtvdmVyZmxvdzp2aXNpYmxlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO3Zpc2liaWxpdHk6dmlzaWJsZTt6LWluZGV4OmF1dG87Ym94LXNoYWRvdzpub25lfSNvbmV0cnVzdC1iYW5uZXItc2RrIGltZywjb25ldHJ1c3QtcGMtc2RrIGltZywjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaW1nLCNvdC1zeW5jLW50ZnkgaW1ne292ZXJmbG93OmhpZGRlbiAhaW1wb3J0YW50fSNvbmV0cnVzdC1iYW5uZXItc2RrIGxhYmVsOmJlZm9yZSwjb25ldHJ1c3QtYmFubmVyLXNkayBsYWJlbDphZnRlciwjb25ldHJ1c3QtYmFubmVyLXNkayAuY2hlY2tib3g6YWZ0ZXIsI29uZXRydXN0LWJhbm5lci1zZGsgLmNoZWNrYm94OmJlZm9yZSwjb25ldHJ1c3QtcGMtc2RrIGxhYmVsOmJlZm9yZSwjb25ldHJ1c3QtcGMtc2RrIGxhYmVsOmFmdGVyLCNvbmV0cnVzdC1wYy1zZGsgLmNoZWNrYm94OmFmdGVyLCNvbmV0cnVzdC1wYy1zZGsgLmNoZWNrYm94OmJlZm9yZSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgbGFiZWw6YmVmb3JlLCNvdC1zZGstY29va2llLXBvbGljeSBsYWJlbDphZnRlciwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLmNoZWNrYm94OmFmdGVyLCNvdC1zZGstY29va2llLXBvbGljeSAuY2hlY2tib3g6YmVmb3JlLCNvdC1zeW5jLW50ZnkgbGFiZWw6YmVmb3JlLCNvdC1zeW5jLW50ZnkgbGFiZWw6YWZ0ZXIsI290LXN5bmMtbnRmeSAuY2hlY2tib3g6YWZ0ZXIsI290LXN5bmMtbnRmeSAuY2hlY2tib3g6YmVmb3Jle2NvbnRlbnQ6IiI7Y29udGVudDpub25lfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1zZGstY29udGFpbmVyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay1jb250YWluZXIsI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstY29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7bWFyZ2luOjAgYXV0bztwYWRkaW5nOjAgMjBweDtib3gtc2l6aW5nOmJvcmRlci1ib3h9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1jb2x1bW4sI29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1jb2x1bW5zLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay1jb2x1bW4sI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLWNvbHVtbnMsI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstY29sdW1uLCNvdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLWNvbHVtbnN7d2lkdGg6MTAwJTtmbG9hdDpsZWZ0O2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjA7ZGlzcGxheTppbml0aWFsfUBtZWRpYShtaW4td2lkdGg6IDQwMHB4KXsjb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLWNvbnRhaW5lciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zZGstY29udGFpbmVyLCNvdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLWNvbnRhaW5lcnt3aWR0aDo5MCU7cGFkZGluZzowfX1AbWVkaWEobWluLXdpZHRoOiA1NTBweCl7I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1jb250YWluZXIsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLWNvbnRhaW5lciwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1jb250YWluZXJ7d2lkdGg6MTAwJX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLWNvbHVtbiwjb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLWNvbHVtbnMsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLWNvbHVtbiwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zZGstY29sdW1ucywjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1jb2x1bW4sI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstY29sdW1uc3ttYXJnaW4tbGVmdDo0JX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLWNvbHVtbjpmaXJzdC1jaGlsZCwjb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLWNvbHVtbnM6Zmlyc3QtY2hpbGQsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLWNvbHVtbjpmaXJzdC1jaGlsZCwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zZGstY29sdW1uczpmaXJzdC1jaGlsZCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1jb2x1bW46Zmlyc3QtY2hpbGQsI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstY29sdW1uczpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDowfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1zZGstdHdvLm90LXNkay1jb2x1bW5zLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay10d28ub3Qtc2RrLWNvbHVtbnMsI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstdHdvLm90LXNkay1jb2x1bW5ze3dpZHRoOjEzLjMzMzMzMzMzMzMlfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1zZGstdGhyZWUub3Qtc2RrLWNvbHVtbnMsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLXRocmVlLm90LXNkay1jb2x1bW5zLCNvdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLXRocmVlLm90LXNkay1jb2x1bW5ze3dpZHRoOjIyJX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLWZvdXIub3Qtc2RrLWNvbHVtbnMsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLWZvdXIub3Qtc2RrLWNvbHVtbnMsI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstZm91ci5vdC1zZGstY29sdW1uc3t3aWR0aDozMC42NjY2NjY2NjY3JX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLWVpZ2h0Lm90LXNkay1jb2x1bW5zLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay1laWdodC5vdC1zZGstY29sdW1ucywjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1laWdodC5vdC1zZGstY29sdW1uc3t3aWR0aDo2NS4zMzMzMzMzMzMzJX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLW5pbmUub3Qtc2RrLWNvbHVtbnMsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLW5pbmUub3Qtc2RrLWNvbHVtbnMsI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstbmluZS5vdC1zZGstY29sdW1uc3t3aWR0aDo3NCV9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay10ZW4ub3Qtc2RrLWNvbHVtbnMsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLXRlbi5vdC1zZGstY29sdW1ucywjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay10ZW4ub3Qtc2RrLWNvbHVtbnN7d2lkdGg6ODIuNjY2NjY2NjY2NyV9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1lbGV2ZW4ub3Qtc2RrLWNvbHVtbnMsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLWVsZXZlbi5vdC1zZGstY29sdW1ucywjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1lbGV2ZW4ub3Qtc2RrLWNvbHVtbnN7d2lkdGg6OTEuMzMzMzMzMzMzMyV9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay10d2VsdmUub3Qtc2RrLWNvbHVtbnMsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLXR3ZWx2ZS5vdC1zZGstY29sdW1ucywjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay10d2VsdmUub3Qtc2RrLWNvbHVtbnN7d2lkdGg6MTAwJTttYXJnaW4tbGVmdDowfX0jb25ldHJ1c3QtYmFubmVyLXNkayBoMSwjb25ldHJ1c3QtYmFubmVyLXNkayBoMiwjb25ldHJ1c3QtYmFubmVyLXNkayBoMywjb25ldHJ1c3QtYmFubmVyLXNkayBoNCwjb25ldHJ1c3QtYmFubmVyLXNkayBoNSwjb25ldHJ1c3QtYmFubmVyLXNkayBoNiwjb25ldHJ1c3QtYmFubmVyLXNkayBwW3JvbGU9aGVhZGluZ10sI29uZXRydXN0LXBjLXNkayBoMSwjb25ldHJ1c3QtcGMtc2RrIGgyLCNvbmV0cnVzdC1wYy1zZGsgaDMsI29uZXRydXN0LXBjLXNkayBoNCwjb25ldHJ1c3QtcGMtc2RrIGg1LCNvbmV0cnVzdC1wYy1zZGsgaDYsI29uZXRydXN0LXBjLXNkayBwW3JvbGU9aGVhZGluZ10sI290LXNkay1jb29raWUtcG9saWN5IGgxLCNvdC1zZGstY29va2llLXBvbGljeSBoMiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDMsI290LXNkay1jb29raWUtcG9saWN5IGg0LCNvdC1zZGstY29va2llLXBvbGljeSBoNSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDYsI290LXNkay1jb29raWUtcG9saWN5IHBbcm9sZT1oZWFkaW5nXXttYXJnaW4tdG9wOjA7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtZmFtaWx5OmluaGVyaXR9I29uZXRydXN0LWJhbm5lci1zZGsgaDEsI29uZXRydXN0LXBjLXNkayBoMSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDF7Zm9udC1zaXplOjEuNXJlbTtsaW5lLWhlaWdodDoxLjJ9I29uZXRydXN0LWJhbm5lci1zZGsgaDIsI29uZXRydXN0LXBjLXNkayBoMiwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDJ7Zm9udC1zaXplOjEuNXJlbTtsaW5lLWhlaWdodDoxLjI1fSNvbmV0cnVzdC1iYW5uZXItc2RrIGgzLCNvbmV0cnVzdC1wYy1zZGsgaDMsI290LXNkay1jb29raWUtcG9saWN5IGgze2ZvbnQtc2l6ZToxLjVyZW07bGluZS1oZWlnaHQ6MS4zfSNvbmV0cnVzdC1iYW5uZXItc2RrIGg0LCNvbmV0cnVzdC1wYy1zZGsgaDQsI290LXNkay1jb29raWUtcG9saWN5IGg0e2ZvbnQtc2l6ZToxLjVyZW07bGluZS1oZWlnaHQ6MS4zNX0jb25ldHJ1c3QtYmFubmVyLXNkayBoNSwjb25ldHJ1c3QtcGMtc2RrIGg1LCNvdC1zZGstY29va2llLXBvbGljeSBoNXtmb250LXNpemU6MS41cmVtO2xpbmUtaGVpZ2h0OjEuNX0jb25ldHJ1c3QtYmFubmVyLXNkayBoNiwjb25ldHJ1c3QtcGMtc2RrIGg2LCNvdC1zZGstY29va2llLXBvbGljeSBoNntmb250LXNpemU6MS41cmVtO2xpbmUtaGVpZ2h0OjEuNn1AbWVkaWEobWluLXdpZHRoOiA1NTBweCl7I29uZXRydXN0LWJhbm5lci1zZGsgaDEsI29uZXRydXN0LXBjLXNkayBoMSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDF7Zm9udC1zaXplOjEuNXJlbX0jb25ldHJ1c3QtYmFubmVyLXNkayBoMiwjb25ldHJ1c3QtcGMtc2RrIGgyLCNvdC1zZGstY29va2llLXBvbGljeSBoMntmb250LXNpemU6MS41cmVtfSNvbmV0cnVzdC1iYW5uZXItc2RrIGgzLCNvbmV0cnVzdC1wYy1zZGsgaDMsI290LXNkay1jb29raWUtcG9saWN5IGgze2ZvbnQtc2l6ZToxLjVyZW19I29uZXRydXN0LWJhbm5lci1zZGsgaDQsI29uZXRydXN0LXBjLXNkayBoNCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaDR7Zm9udC1zaXplOjEuNXJlbX0jb25ldHJ1c3QtYmFubmVyLXNkayBoNSwjb25ldHJ1c3QtcGMtc2RrIGg1LCNvdC1zZGstY29va2llLXBvbGljeSBoNXtmb250LXNpemU6MS41cmVtfSNvbmV0cnVzdC1iYW5uZXItc2RrIGg2LCNvbmV0cnVzdC1wYy1zZGsgaDYsI290LXNkay1jb29raWUtcG9saWN5IGg2e2ZvbnQtc2l6ZToxLjVyZW19fSNvbmV0cnVzdC1iYW5uZXItc2RrIHA6bm90KFtyb2xlPWhlYWRpbmddKSwjb25ldHJ1c3QtcGMtc2RrIHA6bm90KFtyb2xlPWhlYWRpbmddKSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgcDpub3QoW3JvbGU9aGVhZGluZ10pe21hcmdpbjowIDAgMWVtIDA7Zm9udC1mYW1pbHk6aW5oZXJpdDtsaW5lLWhlaWdodDpub3JtYWx9I29uZXRydXN0LWJhbm5lci1zZGsgYSwjb25ldHJ1c3QtcGMtc2RrIGEsI290LXNkay1jb29raWUtcG9saWN5IGF7Y29sb3I6IzU2NTY1Njt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfSNvbmV0cnVzdC1iYW5uZXItc2RrIGE6aG92ZXIsI29uZXRydXN0LXBjLXNkayBhOmhvdmVyLCNvdC1zZGstY29va2llLXBvbGljeSBhOmhvdmVye2NvbG9yOiM1NjU2NTY7dGV4dC1kZWNvcmF0aW9uOm5vbmV9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1idXR0b24sI29uZXRydXN0LWJhbm5lci1zZGsgYnV0dG9uLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay1idXR0b24sI29uZXRydXN0LXBjLXNkayBidXR0b24sI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstYnV0dG9uLCNvdC1zZGstY29va2llLXBvbGljeSBidXR0b257bWFyZ2luLWJvdHRvbToxcmVtO2ZvbnQtZmFtaWx5OmluaGVyaXR9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1idXR0b24sI29uZXRydXN0LWJhbm5lci1zZGsgYnV0dG9uLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay1idXR0b24sI29uZXRydXN0LXBjLXNkayBidXR0b24sI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstYnV0dG9uLCNvdC1zZGstY29va2llLXBvbGljeSBidXR0b257ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjM4cHg7cGFkZGluZzowIDMwcHg7Y29sb3I6IzU1NTt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6LjllbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MzhweDtsZXR0ZXItc3BhY2luZzouMDFlbTt0ZXh0LWRlY29yYXRpb246bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXA7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApO2JvcmRlci1yYWRpdXM6MnB4O2JvcmRlcjoxcHggc29saWQgI2JiYjtjdXJzb3I6cG9pbnRlcjtib3gtc2l6aW5nOmJvcmRlci1ib3h9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1idXR0b246aG92ZXIsI29uZXRydXN0LWJhbm5lci1zZGsgOm5vdCgub3QtbGVnLWJ0bi1jb250YWluZXIpOm5vdCgub3QtY29uZmlybS1kaWFsb2ctYnV0dG9ucyk+YnV0dG9uOm5vdCgub3QtbGluay1idG4pOmhvdmVyLCNvbmV0cnVzdC1iYW5uZXItc2RrIDpub3QoLm90LWxlZy1idG4tY29udGFpbmVyKTpub3QoLm90LWNvbmZpcm0tZGlhbG9nLWJ1dHRvbnMpPmJ1dHRvbjpub3QoLm90LWxpbmstYnRuKTpmb2N1cywjb25ldHJ1c3QtcGMtc2RrIC5vdC1zZGstYnV0dG9uOmhvdmVyLCNvbmV0cnVzdC1wYy1zZGsgOm5vdCgub3QtbGVnLWJ0bi1jb250YWluZXIpOm5vdCgub3QtY29uZmlybS1kaWFsb2ctYnV0dG9ucyk+YnV0dG9uOm5vdCgub3QtbGluay1idG4pOmhvdmVyLCNvbmV0cnVzdC1wYy1zZGsgOm5vdCgub3QtbGVnLWJ0bi1jb250YWluZXIpOm5vdCgub3QtY29uZmlybS1kaWFsb2ctYnV0dG9ucyk+YnV0dG9uOm5vdCgub3QtbGluay1idG4pOmZvY3VzLCNvdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLWJ1dHRvbjpob3Zlciwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgOm5vdCgub3QtbGVnLWJ0bi1jb250YWluZXIpOm5vdCgub3QtY29uZmlybS1kaWFsb2ctYnV0dG9ucyk+YnV0dG9uOm5vdCgub3QtbGluay1idG4pOmhvdmVyLCNvdC1zZGstY29va2llLXBvbGljeSA6bm90KC5vdC1sZWctYnRuLWNvbnRhaW5lcik6bm90KC5vdC1jb25maXJtLWRpYWxvZy1idXR0b25zKT5idXR0b246bm90KC5vdC1saW5rLWJ0bik6Zm9jdXN7Y29sb3I6IzMzMztib3JkZXItY29sb3I6Izg4ODtvcGFjaXR5Oi45fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1zZGstYnV0dG9uOmZvY3VzLCNvbmV0cnVzdC1iYW5uZXItc2RrIDpub3QoLm90LWxlZy1idG4tY29udGFpbmVyKT5idXR0b246Zm9jdXMsI29uZXRydXN0LXBjLXNkayAub3Qtc2RrLWJ1dHRvbjpmb2N1cywjb25ldHJ1c3QtcGMtc2RrIDpub3QoLm90LWxlZy1idG4tY29udGFpbmVyKT5idXR0b246Zm9jdXMsI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstYnV0dG9uOmZvY3VzLCNvdC1zZGstY29va2llLXBvbGljeSA6bm90KC5vdC1sZWctYnRuLWNvbnRhaW5lcik+YnV0dG9uOmZvY3Vze291dGxpbmU6MnB4IHNvbGlkICMwMDB9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1idXR0b24ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5LCNvbmV0cnVzdC1iYW5uZXItc2RrIGJ1dHRvbi5vdC1zZGstYnV0dG9uLXByaW1hcnksI29uZXRydXN0LWJhbm5lci1zZGsgaW5wdXRbdHlwZT1zdWJtaXRdLm90LXNkay1idXR0b24tcHJpbWFyeSwjb25ldHJ1c3QtYmFubmVyLXNkayBpbnB1dFt0eXBlPXJlc2V0XS5vdC1zZGstYnV0dG9uLXByaW1hcnksI29uZXRydXN0LWJhbm5lci1zZGsgaW5wdXRbdHlwZT1idXR0b25dLm90LXNkay1idXR0b24tcHJpbWFyeSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zZGstYnV0dG9uLm90LXNkay1idXR0b24tcHJpbWFyeSwjb25ldHJ1c3QtcGMtc2RrIGJ1dHRvbi5vdC1zZGstYnV0dG9uLXByaW1hcnksI29uZXRydXN0LXBjLXNkayBpbnB1dFt0eXBlPXN1Ym1pdF0ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5LCNvbmV0cnVzdC1wYy1zZGsgaW5wdXRbdHlwZT1yZXNldF0ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5LCNvbmV0cnVzdC1wYy1zZGsgaW5wdXRbdHlwZT1idXR0b25dLm90LXNkay1idXR0b24tcHJpbWFyeSwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1idXR0b24ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5LCNvdC1zZGstY29va2llLXBvbGljeSBidXR0b24ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5LCNvdC1zZGstY29va2llLXBvbGljeSBpbnB1dFt0eXBlPXN1Ym1pdF0ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5LCNvdC1zZGstY29va2llLXBvbGljeSBpbnB1dFt0eXBlPXJlc2V0XS5vdC1zZGstYnV0dG9uLXByaW1hcnksI290LXNkay1jb29raWUtcG9saWN5IGlucHV0W3R5cGU9YnV0dG9uXS5vdC1zZGstYnV0dG9uLXByaW1hcnl7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMzM2MzZjA7Ym9yZGVyLWNvbG9yOiMzM2MzZjB9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LXNkay1idXR0b24ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLCNvbmV0cnVzdC1iYW5uZXItc2RrIGJ1dHRvbi5vdC1zZGstYnV0dG9uLXByaW1hcnk6aG92ZXIsI29uZXRydXN0LWJhbm5lci1zZGsgaW5wdXRbdHlwZT1zdWJtaXRdLm90LXNkay1idXR0b24tcHJpbWFyeTpob3Zlciwjb25ldHJ1c3QtYmFubmVyLXNkayBpbnB1dFt0eXBlPXJlc2V0XS5vdC1zZGstYnV0dG9uLXByaW1hcnk6aG92ZXIsI29uZXRydXN0LWJhbm5lci1zZGsgaW5wdXRbdHlwZT1idXR0b25dLm90LXNkay1idXR0b24tcHJpbWFyeTpob3Zlciwjb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLWJ1dHRvbi5vdC1zZGstYnV0dG9uLXByaW1hcnk6Zm9jdXMsI29uZXRydXN0LWJhbm5lci1zZGsgYnV0dG9uLm90LXNkay1idXR0b24tcHJpbWFyeTpmb2N1cywjb25ldHJ1c3QtYmFubmVyLXNkayBpbnB1dFt0eXBlPXN1Ym1pdF0ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmZvY3VzLCNvbmV0cnVzdC1iYW5uZXItc2RrIGlucHV0W3R5cGU9cmVzZXRdLm90LXNkay1idXR0b24tcHJpbWFyeTpmb2N1cywjb25ldHJ1c3QtYmFubmVyLXNkayBpbnB1dFt0eXBlPWJ1dHRvbl0ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmZvY3VzLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay1idXR0b24ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLCNvbmV0cnVzdC1wYy1zZGsgYnV0dG9uLm90LXNkay1idXR0b24tcHJpbWFyeTpob3Zlciwjb25ldHJ1c3QtcGMtc2RrIGlucHV0W3R5cGU9c3VibWl0XS5vdC1zZGstYnV0dG9uLXByaW1hcnk6aG92ZXIsI29uZXRydXN0LXBjLXNkayBpbnB1dFt0eXBlPXJlc2V0XS5vdC1zZGstYnV0dG9uLXByaW1hcnk6aG92ZXIsI29uZXRydXN0LXBjLXNkayBpbnB1dFt0eXBlPWJ1dHRvbl0ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay1idXR0b24ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmZvY3VzLCNvbmV0cnVzdC1wYy1zZGsgYnV0dG9uLm90LXNkay1idXR0b24tcHJpbWFyeTpmb2N1cywjb25ldHJ1c3QtcGMtc2RrIGlucHV0W3R5cGU9c3VibWl0XS5vdC1zZGstYnV0dG9uLXByaW1hcnk6Zm9jdXMsI29uZXRydXN0LXBjLXNkayBpbnB1dFt0eXBlPXJlc2V0XS5vdC1zZGstYnV0dG9uLXByaW1hcnk6Zm9jdXMsI29uZXRydXN0LXBjLXNkayBpbnB1dFt0eXBlPWJ1dHRvbl0ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmZvY3VzLCNvdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLWJ1dHRvbi5vdC1zZGstYnV0dG9uLXByaW1hcnk6aG92ZXIsI290LXNkay1jb29raWUtcG9saWN5IGJ1dHRvbi5vdC1zZGstYnV0dG9uLXByaW1hcnk6aG92ZXIsI290LXNkay1jb29raWUtcG9saWN5IGlucHV0W3R5cGU9c3VibWl0XS5vdC1zZGstYnV0dG9uLXByaW1hcnk6aG92ZXIsI290LXNkay1jb29raWUtcG9saWN5IGlucHV0W3R5cGU9cmVzZXRdLm90LXNkay1idXR0b24tcHJpbWFyeTpob3Zlciwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgaW5wdXRbdHlwZT1idXR0b25dLm90LXNkay1idXR0b24tcHJpbWFyeTpob3Zlciwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgLm90LXNkay1idXR0b24ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmZvY3VzLCNvdC1zZGstY29va2llLXBvbGljeSBidXR0b24ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmZvY3VzLCNvdC1zZGstY29va2llLXBvbGljeSBpbnB1dFt0eXBlPXN1Ym1pdF0ub3Qtc2RrLWJ1dHRvbi1wcmltYXJ5OmZvY3VzLCNvdC1zZGstY29va2llLXBvbGljeSBpbnB1dFt0eXBlPXJlc2V0XS5vdC1zZGstYnV0dG9uLXByaW1hcnk6Zm9jdXMsI290LXNkay1jb29raWUtcG9saWN5IGlucHV0W3R5cGU9YnV0dG9uXS5vdC1zZGstYnV0dG9uLXByaW1hcnk6Zm9jdXN7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMxZWFlZGI7Ym9yZGVyLWNvbG9yOiMxZWFlZGJ9I29uZXRydXN0LWJhbm5lci1zZGsgaW5wdXRbdHlwZT10ZXh0XSwjb25ldHJ1c3QtcGMtc2RrIGlucHV0W3R5cGU9dGV4dF0sI290LXNkay1jb29raWUtcG9saWN5IGlucHV0W3R5cGU9dGV4dF17aGVpZ2h0OjM4cHg7cGFkZGluZzo2cHggMTBweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjNzA3MDcwO2JvcmRlci1yYWRpdXM6NHB4O2JveC1zaGFkb3c6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3h9I29uZXRydXN0LWJhbm5lci1zZGsgaW5wdXRbdHlwZT10ZXh0XSwjb25ldHJ1c3QtcGMtc2RrIGlucHV0W3R5cGU9dGV4dF0sI290LXNkay1jb29raWUtcG9saWN5IGlucHV0W3R5cGU9dGV4dF17LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lfSNvbmV0cnVzdC1iYW5uZXItc2RrIGlucHV0W3R5cGU9dGV4dF06Zm9jdXMsI29uZXRydXN0LXBjLXNkayBpbnB1dFt0eXBlPXRleHRdOmZvY3VzLCNvdC1zZGstY29va2llLXBvbGljeSBpbnB1dFt0eXBlPXRleHRdOmZvY3Vze2JvcmRlcjoxcHggc29saWQgIzAwMDtvdXRsaW5lOjB9I29uZXRydXN0LWJhbm5lci1zZGsgbGFiZWwsI29uZXRydXN0LXBjLXNkayBsYWJlbCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgbGFiZWx7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOi41cmVtO2ZvbnQtd2VpZ2h0OjYwMH0jb25ldHJ1c3QtYmFubmVyLXNkayBpbnB1dFt0eXBlPWNoZWNrYm94XSwjb25ldHJ1c3QtcGMtc2RrIGlucHV0W3R5cGU9Y2hlY2tib3hdLCNvdC1zZGstY29va2llLXBvbGljeSBpbnB1dFt0eXBlPWNoZWNrYm94XXtkaXNwbGF5OmlubGluZX0jb25ldHJ1c3QtYmFubmVyLXNkayB1bCwjb25ldHJ1c3QtcGMtc2RrIHVsLCNvdC1zZGstY29va2llLXBvbGljeSB1bHtsaXN0LXN0eWxlOmNpcmNsZSBpbnNpZGV9I29uZXRydXN0LWJhbm5lci1zZGsgdWwsI29uZXRydXN0LXBjLXNkayB1bCwjb3Qtc2RrLWNvb2tpZS1wb2xpY3kgdWx7cGFkZGluZy1sZWZ0OjA7bWFyZ2luLXRvcDowfSNvbmV0cnVzdC1iYW5uZXItc2RrIHVsIHVsLCNvbmV0cnVzdC1wYy1zZGsgdWwgdWwsI290LXNkay1jb29raWUtcG9saWN5IHVsIHVse21hcmdpbjoxLjVyZW0gMCAxLjVyZW0gM3JlbTtmb250LXNpemU6OTAlfSNvbmV0cnVzdC1iYW5uZXItc2RrIGxpLCNvbmV0cnVzdC1wYy1zZGsgbGksI290LXNkay1jb29raWUtcG9saWN5IGxpe21hcmdpbi1ib3R0b206MXJlbX0jb25ldHJ1c3QtYmFubmVyLXNkayB0aCwjb25ldHJ1c3QtYmFubmVyLXNkayB0ZCwjb25ldHJ1c3QtcGMtc2RrIHRoLCNvbmV0cnVzdC1wYy1zZGsgdGQsI290LXNkay1jb29raWUtcG9saWN5IHRoLCNvdC1zZGstY29va2llLXBvbGljeSB0ZHtwYWRkaW5nOjEycHggMTVweDt0ZXh0LWFsaWduOmxlZnQ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2UxZTFlMX0jb25ldHJ1c3QtYmFubmVyLXNkayBidXR0b24sI29uZXRydXN0LXBjLXNkayBidXR0b24sI290LXNkay1jb29raWUtcG9saWN5IGJ1dHRvbnttYXJnaW4tYm90dG9tOjFyZW07Zm9udC1mYW1pbHk6aW5oZXJpdH0jb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLWNvbnRhaW5lcjphZnRlciwjb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLXJvdzphZnRlciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zZGstY29udGFpbmVyOmFmdGVyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNkay1yb3c6YWZ0ZXIsI290LXNkay1jb29raWUtcG9saWN5IC5vdC1zZGstY29udGFpbmVyOmFmdGVyLCNvdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLXJvdzphZnRlcntjb250ZW50OiIiO2Rpc3BsYXk6dGFibGU7Y2xlYXI6Ym90aH0jb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtc2RrLXJvdywjb25ldHJ1c3QtcGMtc2RrIC5vdC1zZGstcm93LCNvdC1zZGstY29va2llLXBvbGljeSAub3Qtc2RrLXJvd3ttYXJnaW46MDttYXgtd2lkdGg6bm9uZTtkaXNwbGF5OmJsb2NrfQ=="}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/logos/static/powered_by_logo.svg","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.853Z","timestamp":1785161167853,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /logos/static/powered_by_logo.svg HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: image/svg+xml\r\ncontent-md5: yMeilKp6reuDTG1eNiffRg==\r\nlast-modified: Thu, 23 Jul 2026 17:59:41 GMT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nserver: cloudflare\r\nx-ms-request-id: 5fb634d6-d01e-00a4-0605-1ba96e000000\r\nx-ms-version: 2009-09-19\r\nx-ms-lease-status: unlocked\r\nx-ms-blob-type: BlockBlob\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding\r\naccess-control-allow-origin: *\r\nx-content-type-options: nosniff\r\ncross-origin-resource-policy: cross-origin\r\nage: 48145\r\ncache-control: max-age=86400\r\ncf-cache-status: HIT\r\ncontent-encoding: gzip\r\ncf-ray: a21c33f319c2b1b8-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":"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":5445,"size_decoded":3299,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"c8c7a294aa7aadeb834c6d5e3627df46","sha1":"5e2107ce68c4286a0b80648b19e7b5a7e7cad702","sha256":"cddd450a33be5e50d6f27aea78d2e278beae2762678b22fc2dcee8de29cbc0be","sha512":"881abe7bef6955139eab994ca4769c3d94568c27b51871a7b69e71db70110c4a80647803d661ba198ff9155de75b30c91f6ef2e7ed1a516c483ab2e5830cd337","ssdeep":"96:9ui6WcChyXQBHEOJ3a6XJD8ThcAbnNXGTvkWsoo:93/hEqDPXJwThcAb5Uvjq","tlshash":"26b174d67fb4a4f458859ffede1b59a9765b74f97b63c68c823c8f2906838c08548c04","first_seen":"2026-04-06T03:34:52.903175Z","last_seen":"2026-07-27T15:43:07.588171Z","times_seen":55942,"resource_available":false,"data":"PHN2ZyB3aWR0aD0iNTY4IiBoZWlnaHQ9IjUzIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8zMzI2Ml80NDM0NikiIGZpbGw9IiMwMDAiPjxwYXRoIGQ9Ik00LjIyNiA0NFY4LjQ0OWgxNC42MjZjNC42NzMgMCA3LjI2My45MTQgOS4xOTMgMi42NCAyLjAzMSAxLjgzIDMuMTQ5IDQuNTIgMy4xNDkgNy43NzEgMCAzLjQ1NC0xLjI3IDYuMjQ3LTMuNjA2IDguMDc1LTIuOTk3IDIuMzM3LTYuNjUzIDIuMzg3LTEwLjQ2MiAyLjM4N2gtOC4zM1Y0NGgtNC41N3ptNC41Ny0zMS44OTV2MTMuNTZoMTAuMDU2YzQuNjczIDAgNy45MjMtMS45OCA3LjkyMy02LjgwNSAwLTQuODc1LTMuNDAyLTYuNzU1LTguMDI0LTYuNzU1SDguNzk2ek00NC44IDE3LjEzM2M3LjgyMSAwIDEyLjkgNS4yMzIgMTIuOSAxMy43MTMgMCA4LjM4LTUuMDI4IDEzLjgxNC0xMi45IDEzLjgxNC03LjkyMyAwLTEyLjktNS4yODItMTIuOS0xMy44MTQgMC04LjM4IDUuMDc5LTEzLjcxMyAxMi45LTEzLjcxM3ptMCAzLjQwM2MtNS45NDIgMC04LjQzIDQuNTcxLTguNDMgMTAuMzYgMCA1Ljc0IDIuNjQgMTAuMzEgOC40MyAxMC4zMSA1Ljc5IDAgOC40My00LjU3IDguNDMtMTAuMzEgMC01Ljc4OS0yLjY0LTEwLjM2LTguNDMtMTAuMzZ6TTY2LjI4MiA0NGwtOC4yNzgtMjYuMTU1aDQuNDdsMy44NiAxMy42MWMuNjYgMi4yODYgMS42NzUgNi4wNDQgMi4yMzQgNy44MjJoLjEwMWMuNzExLTIuNTkgMS40MjItNS4xOCAyLjE4NC03Ljk3NGwzLjcwOC0xMy40NTloNC41N2wzLjYwNiAxMy4zMDdjLjgxMyAyLjk5NiAxLjM3MiA0LjgyNSAyLjIzNSA4LjEyNmguMTAyYzEuMjE5LTQuMzE3IDEuNjI1LTUuNzkgMi4yODUtOC4wNzVsMy44MS0xMy4zNThoNC40MThMODcuMjA3IDQ0aC00LjUybC0zLjcwOC0xMy4zMDZhMzI5LjEzMiAzMjkuMTMyIDAgMDEtMi4xMzMtNy44NzJoLS4xMDFjLS42NiAyLjU5LTEuMzcyIDUuMzgzLTIuMTMzIDguMTI2TDcwLjkwNCA0NGgtNC42MjJ6bTU0LjE4NS0xMi4zNDFoLTIwLjMxNWMwIDUuNTM1IDMuMzUyIDkuNDk3IDguNTMyIDkuNDk3IDQuODc2IDAgNi43MDQtMy4yIDcuNDY2LTUuNTg3aDQuMzE3Yy0xLjQyMiA1LjQ4NS01LjYzOCA5LjA5MS0xMS45MzUgOS4wOTEtOC4wMjUgMC0xMi42OTctNS4xOC0xMi42OTctMTMuODE0IDAtOC4wMjQgNC44NzUtMTMuNzEzIDEyLjY5Ny0xMy43MTMgOC4yNzggMCAxMS45MzUgNS45OTMgMTEuOTM1IDE0LjUyNnptLTIwLjI2NS0zLjJoMTUuNzQ1Yy0uMjA0LTQuNDE4LTIuNzk0LTguMDc1LTcuNTY4LTguMDc1LTUuMDI4IDAtNy45MjMgMy42NTctOC4xNzcgOC4wNzV6bTM1LjQ3MS03LjQxNWMtMS45MyAwLTMuNzU5Ljc2Mi01LjAyOCAyLjIzNS0xLjIxOSAxLjM3MS0xLjkzIDMuNDAyLTEuOTMgNi4zNDhWNDRoLTQuMjY2VjE3Ljg0NWg0LjExM3Y0LjAxMmguMTUzYy45NjUtMi40ODkgMy44MDktNC43MjQgNy40MTUtNC43MjQuNzYyIDAgMS4zMi4xMDIgMS41NzQuMTUzdjMuOTFjLS45MTQtLjE1Mi0xLjU3NC0uMTUyLTIuMDMxLS4xNTJ6bTI2LjMxIDEwLjYxNWgtMjAuMzE1YzAgNS41MzUgMy4zNTIgOS40OTcgOC41MzMgOS40OTcgNC44NzUgMCA2LjcwNC0zLjIgNy40NjUtNS41ODdoNC4zMTdjLTEuNDIyIDUuNDg1LTUuNjM3IDkuMDkxLTExLjkzNSA5LjA5MS04LjAyNCAwLTEyLjY5Ny01LjE4LTEyLjY5Ny0xMy44MTQgMC04LjAyNCA0Ljg3Ni0xMy43MTMgMTIuNjk3LTEzLjcxMyA4LjI3OSAwIDExLjkzNSA1Ljk5MyAxMS45MzUgMTQuNTI2em0tMjAuMjY0LTMuMmgxNS43NDRjLS4yMDMtNC40MTgtMi43OTMtOC4wNzUtNy41NjctOC4wNzUtNS4wMjggMC03LjkyMyAzLjY1Ny04LjE3NyA4LjA3NXpNMTg4LjQ2NCA0NGgtNC4yMTV2LTMuMzAxaC0uMTAyYy0xLjU3NCAyLjIzNS00LjM2NyAzLjk2MS04LjM4IDMuOTYxLTYuODU2IDAtMTEuNjgxLTUuNDM0LTExLjY4MS0xMy43MTIgMC03Ljg3MiA1LjAyOC0xMy44NjUgMTEuOTg2LTEzLjg2NSA0LjA2MyAwIDYuNTUyIDEuNzI2IDguMDI1IDMuNjU2aC4xMDFWOC40NWg0LjI2NlY0NHptLTExLjkzNS0yMy40NjRjLTUuMjgyIDAtNy45NzMgNC42NzMtNy45NzMgMTAuNDEyIDAgNS42ODggMi43NDIgMTAuMjA4IDguMTI2IDEwLjIwOCA1LjIzMSAwIDcuNzE5LTMuNjA2IDcuNzE5LTEwLjQxMiAwLTYuMzk5LTIuNzQyLTEwLjIwOC03Ljg3Mi0xMC4yMDh6TTIwMy42MTQgOC40NWg0LjI2NnYxMi41NDRoLjEwMWMxLjU3NS0yLjIzNCA0LjMxNy0zLjkxIDguMzI5LTMuOTEgNi44NTcgMCAxMS42ODIgNS40MzQgMTEuNjgyIDEzLjcxMiAwIDcuODcyLTUuMDI4IDEzLjg2NS0xMS45ODYgMTMuODY1LTQuMDYzIDAtNi42MDMtMS43MjYtOC4wNzUtMy42NTZoLS4xMDJWNDRoLTQuMjE1VjguNDQ5em0xMS45MzUgMzIuNzU4YzUuMjgyIDAgNy45NzMtNC42NzMgNy45NzMtMTAuNDEyIDAtNS42ODgtMi43NDItMTAuMjA4LTguMTI2LTEwLjIwOC01LjIzMSAwLTcuNzE5IDMuNjA2LTcuNzE5IDEwLjQxMSAwIDYuNCAyLjc0MiAxMC4yMDkgNy44NzIgMTAuMjA5em0yMi41NCAyLjY0bC0xMC4yMDgtMjYuMDAzaDQuNTcxbDQuMTE0IDExLjM3N2EzNzAgMzcwIDAgMDEzLjY1NiAxMC40NjJoLjEwMmMxLjAxNi0zLjA5OCAyLjE4NC03LjE2MSAzLjQ1My0xMC44MThsMy43MDgtMTEuMDJoNC4yMTVMMjQwLjc4MSA0Ny4xNWMtMS43MjcgNC42MjEtNC4wNjMgNS43OS04LjAyNSA1Ljc5LTEuMDY2IDAtMS41MjMtLjA1MS0yLjIzNC0uMTAydi0zLjQwM2MuNTA4LjEwMiAxLjIxOS4xMDIgMS45My4xMDIgMy4xOTkgMCA0LjI2Ni0xLjQ3MyA1LjM4My00Ljg3NmwuMjU0LS44MTJ6bTEwOC41NjQgMi40MTljMy45MDktNS42ODYgNi4xOC0xMi40NTkgNi4xOC0xOS43ODEgMC03LjMyMy0yLjI3MS0xNC4wODEtNi4xOC0xOS43NjdoLTIxLjk5NmM4LjExMyAzLjExOCAxMy45NCAxMC43OCAxMy45NCAxOS43ODEgMCA5LjAwMi01LjgyNyAxNi42NjMtMTMuOTQgMTkuNzgxaDIxLjk5NnYtLjAxNHptLTM4LjUxOCAwaDE2LjUwOFY2LjcxOWgtMTYuNTA4djM5LjU0OHptLTIxLjk5NiAwaDIxLjk5NmMtOC4xMTItMy4xMTgtMTMuOTM5LTEwLjc4LTEzLjkzOS0xOS43ODEgMC05LjAwMiA1Ljg0MS0xNi42NDkgMTMuOTM5LTE5Ljc2N2gtMjEuOTk2Yy0zLjkwOCA1LjY4Ni02LjE4IDEyLjQ1OC02LjE4IDE5Ljc4MSAwIDcuMzIzIDIuMjcyIDE0LjA4IDYuMTggMTkuNzY3em0yMTMuODY3LTIyLjU4OVYxOC4xOWgtLjY5MWMtMy45MDkgMC02LjA4MSAxLjk3NS02Ljg3MiA0LjA0OWgtLjA5OHYtMy43NTNoLTYuMzM1djI1LjQ2N2g2LjU3NFYzMC4yMTFjMC00LjM0NiAxLjk3Ni02LjUzMyA1Ljk4My02LjUzM2gxLjQzOXptMTQuMjM2IDE2LjA3Yy0yLjEzIDAtMy41NTUtLjg4OC00LjQwMi0yLjY2Ni0uNDUxLTEuMDQ0LS41OTMtMS45NzUtLjU5My00LjUwMVYxOC40ODZoLTYuNTc0VjMyLjY4YzAgMi44MjIuMTk3IDQuNDQ0LjU1IDUuNjMgMS4yNDEgNC41NDIgNC43NCA2LjQzMyA4Ljc0NyA2LjQzMyAzLjc1NCAwIDYuMjc5LTEuODM0IDcuNDY0LTMuODFoLjA1N3YzLjAyaDYuMzM1VjE4LjQ4NmgtNi41NzV2MTQuMjM2YzAgMi4yMy0uMTk4IDMuMzE2LS41OTMgNC4xNDgtLjgwNCAxLjc5Mi0yLjM4NCAyLjg3OS00LjQxNiAyLjg3OXptMzguOTU1LTE2LjgxOGgzLjUxNHYxNC4xOTRjMCAxLjA0NC4wNTYgMS45MzMuMTU1IDIuNTY4LjM1MyAyLjQyNyAxLjQzOSAzLjU1NiAzLjQxNCA0LjAwNy44NDcuMTk4IDEuOTMzLjI1NCA0LjU0My4yNTRoMy4yMTd2LTQuNDQ0aC0xLjQ4MWMtMi41MjYgMC0zLjI1OS0uMjk3LTMuMjU5LTMuMjE3VjIyLjk0NGg0LjY0MnYtNC40NThINTYzLjN2LTcuMDY5aC02LjU3NXY3LjA2OWgtMy41MTN2NC40NDRoLS4wMTV6bS0yNC41MjEgMTIuNjU2Yy4yOTYgNi43NzMgNS44ODMgOS4wMDIgMTEuNzEgOS4wMDIgNi4zNzggMCAxMS4zMTYtMi43MjMgMTEuMzE2LTguNDUyIDAtNC45MzgtNC41MDEtNi43My04LjYwNy03LjYxOGwtMi43MjMtLjU5M2MtMi43MjMtLjU5My00LjY0Mi0xLjI4NC00LjY0Mi0zLjMxNiAwLTEuOTc1IDEuODc3LTIuNzY1IDQuMTQ4LTIuNzY1IDIuNzY2IDAgNC42NDIgMS4wNDQgNC45OTUgNC4yMDRoNi4xMjNjLS40OTMtNi4yNzgtNS4zMzMtOC4zNTItMTAuOTItOC4zNTItNS4zOSAwLTEwLjcyMyAyLjIzLTEwLjcyMyA3Ljc2IDAgNC44OTYgMy45MDggNi41MzIgNy45MTUgNy40MjFsMi4yMjkuNDk0YzMuNjU1Ljc5IDUuNTg4IDEuNTggNS41ODggMy42NTQgMCAyLjQyNy0yLjU2OCAzLjM1OC00LjY0MiAzLjM1OC0yLjcyMyAwLTUuMjkxLTEuNDgxLTUuNDg5LTQuNzk3aC02LjI3OHptLTQwLjQ3OS0yMS41MDJWOS4wODloLTI3Ljg4djQuOTk1SDQ3MC44djI5Ljg2OWg2LjkyOHYtMjkuODdoMTAuNDY5ek00NTEuNzEgMjIuMDRjMy42NTUgMCA1LjkyNiAyLjgyMiA1Ljg4NCA2LjQ3N2gtMTEuODY2Yy4yOTYtMy42NTUgMi40NjktNi40NzcgNS45ODItNi40Nzd6bTUuOTgzIDE0LjQ5Yy0uNzkxIDEuNjgtMi40MjcgMy40NTctNS40MzIgMy40NTctMy4yNiAwLTYuMjc5LTIuMDc0LTYuNTMzLTcuMTY3aDE4LjU4MnYtLjY1YzAtMi4wMy0uMTk4LTMuODA5LS42NDktNS4zMzItMS41MzgtNS4zOS01LjU4OC05LjE0My0xMS45NjUtOS4xNDMtNy43MTggMC0xMi43MTIgNS43MjgtMTIuNzEyIDEzLjQ0NiAwIDcuNjYxIDQuODk2IDEzLjQ0NiAxMy4wNTEgMTMuNDQ2IDYuMDgxIDAgMTAuMTg3LTMuMjYgMTEuOTY0LTguMDU2aC02LjMwNnptLTMzLjQ2Ny0xMy44NGMyLjEzIDAgMy41NTUuODg4IDQuNDAyIDIuNjY2LjQ1MSAxLjA0NC41OTIgMS45NzUuNTkyIDQuNTAxdjE0LjA5NWg2LjU3NVYyOS43NTljMC0yLjgyMi0uMTk3LTQuNDQ0LS41NS01LjYzLTEuMjQyLTQuNTQzLTQuNzQxLTYuNDMzLTguNzQ4LTYuNDMzLTMuODA5IDAtNi4zMzUgMS43NzgtNy40NjQgMy44MWgtLjA1NnYtMy4wMmgtNi4zMzV2MjUuNDY3aDYuNTc1VjI5LjY2YzAtMi4yMjkuMTk3LTMuMzE1LjU5Mi00LjE0OC44MDUtMS43MzUgMi4zODUtMi44MjIgNC40MTctMi44MjJ6bS0zMS40NS05LjFjNS45ODMgMCA5LjE0MyA1LjMzMiA5LjE0MyAxMy4wMDggMCA3Ljc2LTMuMTYgMTMuMDA4LTkuMTQzIDEzLjAwOC01Ljg4MyAwLTkuMS01LjIzNC05LjEtMTMuMDA4IDAtNy42NjIgMy4yMTctMTMuMDA5IDkuMS0xMy4wMDl6bTAgMzAuOTk3YzEwLjAzMiAwIDE2LjA3MS03LjI2NiAxNi4wNzEtMTguMDAzIDAtMTAuNTI2LTYuMjc5LTE4LjAwNC0xNi4wNzEtMTguMDA0LTkuNjkzIDAtMTYuMDE0IDcuNDY0LTE2LjAxNCAxOC4wMDQgMCAxMC43MzcgNS45MjYgMTguMDAzIDE2LjAxNCAxOC4wMDN6Ii8+PC9nPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDBfMzMyNjJfNDQzNDYiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0wIDBoNTY4djUzSDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+"}},"time_used":6,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":6,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/en/shipping-advice/packaging","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-27T14:06:06.002Z","timestamp":1785161166002,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /en/shipping-advice/packaging HTTP/1.1\r\nHost: dhlexpress.bg\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\nUpgrade-Insecure-Requests: 1\r\nConnection: keep-alive\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 301 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: text/html; charset=UTF-8\r\ncontent-length: 0\r\nlocation: /en/shipping-advice/packaging/\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"301","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":0,"size_decoded":0,"mime_type":"text/html; charset=UTF-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T15:44:24.156062Z","times_seen":17565629,"resource_available":true,"data":null}},"time_used":262,"timings":{"blocked":-1,"dns":94,"connect":26,"send":0,"wait":108,"receive":0,"ssl":34},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/styles/application.min.css?v1773055958","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.732Z","timestamp":1785161166732,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/styles/application.min.css?v1773055958 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 09 Mar 2026 11:32:38 GMT\r\netag: \"d0d2d-64c95c28e4b2e-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":855341,"size_decoded":76402,"mime_type":"text/css","magic":"ASCII text, with very long lines (65536), with no line terminators","md5":"fe08fe1c95d7b1bab365559dc602da12","sha1":"9e31202b3f9d080c1de2644c0f9fb5a026d4ee58","sha256":"c3b20260e885e403133e6052595d155d906001101bc319b8bc211a5b272d3f01","sha512":"8e3a55b5698fea8684b9d2fdf3a112aac23411f7c725c5f8c0f94bc6c6cf40840b67a488021ccd37e5595b23592cf19e64026c2060c767ef2913298329e4e1a5","ssdeep":"24576:cwzGUEeZMzc6Mek60emOdrkwyl8/YOAisO0iqy1EeMSg80mOPrkwy8ecY0qy2hdB:cwzlEeZMzc6Mek60emOdrkwyl8/YOAiz","tlshash":"8a0552dcdd4ee0972f538c22b9dee65576172328ddb2aeaab01f143d40b404d21b36b9","first_seen":"2026-03-26T10:24:17.428379Z","last_seen":"2026-07-27T14:06:41.190872Z","times_seen":38,"resource_available":false,"data":"OnJvb3R7LS1ibHVlOiMwMDdiZmY7LS1pbmRpZ286IzY2MTBmMjstLXB1cnBsZTojNmY0MmMxOy0tcGluazojZTgzZThjOy0tcmVkOiNkNDA1MTE7LS1vcmFuZ2U6I2ZkN2UxNDstLXllbGxvdzojZmMwOy0tZ3JlZW46IzI4YTc0NTstLXRlYWw6IzIwYzk5NzstLWN5YW46IzE3YTJiODstLXdoaXRlOiNmZmY7LS1ncmF5OiM2NjY7LS1ncmF5LWRhcms6IzMzMzstLXByaW1hcnk6I2Q0MDUxMTstLXNlY29uZGFyeTojNjY2Oy0tc3VjY2VzczojMjhhNzQ1Oy0taW5mbzojMTdhMmI4Oy0td2FybmluZzojZmMwOy0tZGFuZ2VyOiNkNDA1MTE7LS1saWdodDojZjJmMmYyOy0tZGFyazojMzMzOy0tYnJlYWtwb2ludC14czowOy0tYnJlYWtwb2ludC1zbTo1NzZweDstLWJyZWFrcG9pbnQtbWQ6NzY4cHg7LS1icmVha3BvaW50LWxnOjk5MnB4Oy0tYnJlYWtwb2ludC14bDoxMjAwcHg7LS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiJEZWxpdmVyeSIsLWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsIlNlZ29lIFVJIixSb2JvdG8sIkhlbHZldGljYSBOZXVlIixBcmlhbCwiTm90byBTYW5zIixzYW5zLXNlcmlmLCJBcHBsZSBDb2xvciBFbW9qaSIsIlNlZ29lIFVJIEVtb2ppIiwiU2Vnb2UgVUkgU3ltYm9sIiwiTm90byBDb2xvciBFbW9qaSI7LS1mb250LWZhbWlseS1tb25vc3BhY2U6U0ZNb25vLVJlZ3VsYXIsTWVubG8sTW9uYWNvLENvbnNvbGFzLCJMaWJlcmF0aW9uIE1vbm8iLCJDb3VyaWVyIE5ldyIsbW9ub3NwYWNlfSosOmFmdGVyLDpiZWZvcmV7Ym94LXNpemluZzpib3JkZXItYm94fWh0bWx7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCk7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjtsaW5lLWhlaWdodDoxLjE1fWFydGljbGUsYXNpZGUsZmlnY2FwdGlvbixmaWd1cmUsZm9vdGVyLGhlYWRlcixoZ3JvdXAsbWFpbixuYXYsc2VjdGlvbntkaXNwbGF5OmJsb2NrfWJvZHl7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOnJnYmEoMCwwLDAsLjkpO2ZvbnQtZmFtaWx5OkRlbGl2ZXJ5LC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFNlZ29lIFVJLFJvYm90byxIZWx2ZXRpY2EgTmV1ZSxBcmlhbCxOb3RvIFNhbnMsc2Fucy1zZXJpZixBcHBsZSBDb2xvciBFbW9qaSxTZWdvZSBVSSBFbW9qaSxTZWdvZSBVSSBTeW1ib2wsTm90byBDb2xvciBFbW9qaTtmb250LXNpemU6MXJlbTtmb250LXdlaWdodDoxMDA7bGluZS1oZWlnaHQ6MS41O21hcmdpbjowO3RleHQtYWxpZ246bGVmdH1bdGFiaW5kZXg9Ii0xIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtvdXRsaW5lOjAhaW1wb3J0YW50fWhye2JveC1zaXppbmc6Y29udGVudC1ib3g7aGVpZ2h0OjA7b3ZlcmZsb3c6dmlzaWJsZX0uaW9iamVjdF9faGVhZGluZyxoMSxoMixoMyxoNCxoNSxoNnttYXJnaW4tYm90dG9tOi41cmVtO21hcmdpbi10b3A6MH1we21hcmdpbi1ib3R0b206MXJlbTttYXJnaW4tdG9wOjB9YWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSxhYmJyW3RpdGxlXXtib3JkZXItYm90dG9tOjA7Y3Vyc29yOmhlbHA7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTstd2Via2l0LXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgZG90dGVkO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgZG90dGVkOy13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOm5vbmU7dGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOm5vbmV9YWRkcmVzc3tmb250LXN0eWxlOm5vcm1hbDtsaW5lLWhlaWdodDppbmhlcml0fWFkZHJlc3MsZGwsb2wsdWx7bWFyZ2luLWJvdHRvbToxcmVtfWRsLG9sLHVse21hcmdpbi10b3A6MH1vbCBvbCxvbCB1bCx1bCBvbCx1bCB1bHttYXJnaW4tYm90dG9tOjB9ZHR7Zm9udC13ZWlnaHQ6NzAwfWRke21hcmdpbi1ib3R0b206LjVyZW07bWFyZ2luLWxlZnQ6MH1ibG9ja3F1b3Rle21hcmdpbjowIDAgMXJlbX1iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9c21hbGx7Zm9udC1zaXplOjgwJX1zdWIsc3Vwe2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdWJ7Ym90dG9tOi0uMjVlbX1zdXB7dG9wOi0uNWVtfWF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjb2xvcjojZDQwNTExO3RleHQtZGVjb3JhdGlvbjpub25lfWE6aG92ZXJ7Y29sb3I6Izg5MDMwYjt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfWE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pLGE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pOmhvdmVye2NvbG9yOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Y29kZSxrYmQscHJlLHNhbXB7Zm9udC1mYW1pbHk6U0ZNb25vLVJlZ3VsYXIsTWVubG8sTW9uYWNvLENvbnNvbGFzLExpYmVyYXRpb24gTW9ubyxDb3VyaWVyIE5ldyxtb25vc3BhY2U7Zm9udC1zaXplOjFlbX1wcmV7LW1zLW92ZXJmbG93LXN0eWxlOnNjcm9sbGJhcjttYXJnaW4tYm90dG9tOjFyZW07bWFyZ2luLXRvcDowO292ZXJmbG93OmF1dG99ZmlndXJle21hcmdpbjowIDAgMXJlbX1pbWd7Ym9yZGVyLXN0eWxlOm5vbmV9aW1nLHN2Z3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9c3Zne292ZXJmbG93OmhpZGRlbn10YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2V9Y2FwdGlvbntjYXB0aW9uLXNpZGU6Ym90dG9tO2NvbG9yOiM2NjY7cGFkZGluZy1ib3R0b206Ljc1cmVtO3BhZGRpbmctdG9wOi43NXJlbTt0ZXh0LWFsaWduOmxlZnR9dGh7dGV4dC1hbGlnbjppbmhlcml0O3RleHQtYWxpZ246LXdlYmtpdC1tYXRjaC1wYXJlbnR9bGFiZWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWJvdHRvbTouNXJlbX1idXR0b257Ym9yZGVyLXJhZGl1czowfWJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpe291dGxpbmU6MH1idXR0b24saW5wdXQsb3B0Z3JvdXAsc2VsZWN0LHRleHRhcmVhe2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW46MH1idXR0b24saW5wdXR7b3ZlcmZsb3c6dmlzaWJsZX1idXR0b24sc2VsZWN0e3RleHQtdHJhbnNmb3JtOm5vbmV9W3JvbGU9YnV0dG9uXXtjdXJzb3I6cG9pbnRlcn1zZWxlY3R7d29yZC13cmFwOm5vcm1hbH1bdHlwZT1idXR0b25dLFt0eXBlPXJlc2V0XSxbdHlwZT1zdWJtaXRdLGJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9ufVt0eXBlPWJ1dHRvbl06bm90KDpkaXNhYmxlZCksW3R5cGU9cmVzZXRdOm5vdCg6ZGlzYWJsZWQpLFt0eXBlPXN1Ym1pdF06bm90KDpkaXNhYmxlZCksYnV0dG9uOm5vdCg6ZGlzYWJsZWQpe2N1cnNvcjpwb2ludGVyfVt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIsYnV0dG9uOjotbW96LWZvY3VzLWlubmVye2JvcmRlci1zdHlsZTpub25lO3BhZGRpbmc6MH1pbnB1dFt0eXBlPWNoZWNrYm94XSxpbnB1dFt0eXBlPXJhZGlvXXtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzowfXRleHRhcmVhe292ZXJmbG93OmF1dG87cmVzaXplOnZlcnRpY2FsfWZpZWxkc2V0e2JvcmRlcjowO21hcmdpbjowO21pbi13aWR0aDowO3BhZGRpbmc6MH1sZWdlbmR7Y29sb3I6aW5oZXJpdDtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxLjVyZW07bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW4tYm90dG9tOi41cmVtO21heC13aWR0aDoxMDAlO3BhZGRpbmc6MDt3aGl0ZS1zcGFjZTpub3JtYWw7d2lkdGg6MTAwJX1wcm9ncmVzc3t2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W3R5cGU9c2VhcmNoXXstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtvdXRsaW5lLW9mZnNldDotMnB4fVt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2ZvbnQ6aW5oZXJpdH1vdXRwdXR7ZGlzcGxheTppbmxpbmUtYmxvY2t9c3VtbWFyeXtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Omxpc3QtaXRlbX10ZW1wbGF0ZXtkaXNwbGF5Om5vbmV9W2hpZGRlbl17ZGlzcGxheTpub25lIWltcG9ydGFudH0uaDEsLmgyLC5oMywuaDQsLmg1LC5oNiwuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5oZXJvX190aXRsZSwuaW9iamVjdF9faGVhZGluZyxoMSxoMixoMyxoNCxoNSxoNntmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MS4yO21hcmdpbi1ib3R0b206LjVyZW19LmgxLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3RpdGxlLGgxe2ZvbnQtc2l6ZToyLjVyZW19LmgyLGgye2ZvbnQtc2l6ZToycmVtfS5oMywuaW9iamVjdF9faGVhZGluZyxoM3tmb250LXNpemU6MS43NXJlbX0uaDQsaDR7Zm9udC1zaXplOjEuNXJlbX0uaDUsaDV7Zm9udC1zaXplOjEuMjVyZW19Lmg2LGg2e2ZvbnQtc2l6ZToxcmVtfS5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3N1YnRpdGxlLC5sZWFke2ZvbnQtc2l6ZToxLjI1cmVtO2ZvbnQtd2VpZ2h0OjMwMH0uZGlzcGxheS0xe2ZvbnQtc2l6ZTo2cmVtfS5kaXNwbGF5LTEsLmRpc3BsYXktMntmb250LXdlaWdodDozMDA7bGluZS1oZWlnaHQ6MS4yfS5kaXNwbGF5LTJ7Zm9udC1zaXplOjUuNXJlbX0uZGlzcGxheS0ze2ZvbnQtc2l6ZTo0LjVyZW19LmRpc3BsYXktMywuZGlzcGxheS00e2ZvbnQtd2VpZ2h0OjMwMDtsaW5lLWhlaWdodDoxLjJ9LmRpc3BsYXktNHtmb250LXNpemU6My41cmVtfWhye2JvcmRlcjowO2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEpO21hcmdpbi1ib3R0b206MXJlbTttYXJnaW4tdG9wOjFyZW19LnNtYWxsLHNtYWxse2ZvbnQtc2l6ZTo4MCU7Zm9udC13ZWlnaHQ6NDAwfS5tYXJrLG1hcmt7YmFja2dyb3VuZC1jb2xvcjojZmNmOGUzO3BhZGRpbmc6LjJlbX0uaW9iamVjdC0tY29udGFjdCAuaW9iamVjdF9fYm9keSAubGlzdC0taWNvbnMsLmxpc3QtLWljb25zLC5saXN0LWlubGluZSwubGlzdC11bnN0eWxlZCxmb3JtIC5mb3JtLWdyb3VwPi5mZWVkYmFjayB1bCxmb3JtIC5mb3JtLWdyb3VwPnVsLmxpc3QtLWNoZWNrYm94ZXMsZm9ybSAuZm9ybS1ncm91cD51bC5saXN0LS1yYWRpb3N7bGlzdC1zdHlsZTpub25lO3BhZGRpbmctbGVmdDowfS5saXN0LWlubGluZS1pdGVte2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLXJpZ2h0Oi41cmVtfS5pbml0aWFsaXNte2ZvbnQtc2l6ZTo5MCU7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5ibG9ja3F1b3Rle2ZvbnQtc2l6ZToxLjI1cmVtO21hcmdpbi1ib3R0b206MXJlbX0uYmxvY2txdW90ZS1mb290ZXJ7Y29sb3I6IzY2NjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTo4MCV9LmJsb2NrcXVvdGUtZm9vdGVyOmJlZm9yZXtjb250ZW50OiJcMjAxNFwwMEEwIn0uYXJ0aWNsZV9fYm9keSBpbWcsLmltZy1mbHVpZCwuaW1nLXRodW1ibmFpbCwucGFnZS1ib2R5IGltZ3toZWlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJX0uaW1nLXRodW1ibmFpbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZTVlNWU1O2JvcmRlci1yYWRpdXM6LjI1cmVtO3BhZGRpbmc6LjI1cmVtfS5maWd1cmV7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmZpZ3VyZS1pbWd7bGluZS1oZWlnaHQ6MTttYXJnaW4tYm90dG9tOi41cmVtfS5maWd1cmUtY2FwdGlvbntjb2xvcjojNjY2O2ZvbnQtc2l6ZTo5MCV9Y29kZXt3b3JkLXdyYXA6YnJlYWstd29yZDtjb2xvcjojZTgzZThjO2ZvbnQtc2l6ZTo4Ny41JX1hPmNvZGV7Y29sb3I6aW5oZXJpdH1rYmR7YmFja2dyb3VuZC1jb2xvcjojMjEyNTI5O2JvcmRlci1yYWRpdXM6LjJyZW07Y29sb3I6I2ZmZjtmb250LXNpemU6ODcuNSU7cGFkZGluZzouMnJlbSAuNHJlbX1rYmQga2Jke2ZvbnQtc2l6ZToxMDAlO2ZvbnQtd2VpZ2h0OjcwMDtwYWRkaW5nOjB9cHJle2NvbG9yOiMyMTI1Mjk7ZGlzcGxheTpibG9jaztmb250LXNpemU6ODcuNSV9cHJlIGNvZGV7Y29sb3I6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDt3b3JkLWJyZWFrOm5vcm1hbH0ucHJlLXNjcm9sbGFibGV7bWF4LWhlaWdodDozNDBweDtvdmVyZmxvdy15OnNjcm9sbH0uY29udGFpbmVyLC5jb250YWluZXItZmx1aWQsLmNvbnRhaW5lci1sZywuY29udGFpbmVyLW1kLC5jb250YWluZXItc20sLmNvbnRhaW5lci14bHttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvO3BhZGRpbmctbGVmdDoxNXB4O3BhZGRpbmctcmlnaHQ6MTVweDt3aWR0aDoxMDAlfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsuY29udGFpbmVyLC5jb250YWluZXItc217bWF4LXdpZHRoOjU0MHB4fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmNvbnRhaW5lciwuY29udGFpbmVyLW1kLC5jb250YWluZXItc217bWF4LXdpZHRoOjcyMHB4fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7LmNvbnRhaW5lciwuY29udGFpbmVyLWxnLC5jb250YWluZXItbWQsLmNvbnRhaW5lci1zbXttYXgtd2lkdGg6OTYwcHh9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmNvbnRhaW5lciwuY29udGFpbmVyLWxnLC5jb250YWluZXItbWQsLmNvbnRhaW5lci1zbSwuY29udGFpbmVyLXhse21heC13aWR0aDoxMTQwcHh9fS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAsLnJvdyxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXB7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO21hcmdpbi1sZWZ0Oi0xNXB4O21hcmdpbi1yaWdodDotMTVweH0ubm8tZ3V0dGVyc3ttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDowfS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubm8tZ3V0dGVycz4ubWt0b0NoZWNrYm94TGlzdCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLm5vLWd1dHRlcnM+Lm1rdG9IdG1sVGV4dCwubm8tZ3V0dGVycz4uY29sLC5uby1ndXR0ZXJzPltjbGFzcyo9Y29sLV0sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubm8tZ3V0dGVycz4ubWt0b0NoZWNrYm94TGlzdCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5uby1ndXR0ZXJzPi5ta3RvSHRtbFRleHR7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfS5jb2wsLmNvbC0xLC5jb2wtMTAsLmNvbC0xMSwuY29sLTEyLC5jb2wtMiwuY29sLTMsLmNvbC00LC5jb2wtNSwuY29sLTYsLmNvbC03LC5jb2wtOCwuY29sLTksLmNvbC1hdXRvLC5jb2wtbGcsLmNvbC1sZy0xLC5jb2wtbGctMTAsLmNvbC1sZy0xMSwuY29sLWxnLTEyLC5jb2wtbGctMiwuY29sLWxnLTMsLmNvbC1sZy00LC5jb2wtbGctNSwuY29sLWxnLTYsLmNvbC1sZy03LC5jb2wtbGctOCwuY29sLWxnLTksLmNvbC1sZy1hdXRvLC5jb2wtbWQsLmNvbC1tZC0xLC5jb2wtbWQtMTAsLmNvbC1tZC0xMSwuY29sLW1kLTEyLC5jb2wtbWQtMiwuY29sLW1kLTMsLmNvbC1tZC00LC5jb2wtbWQtNSwuY29sLW1kLTYsLmNvbC1tZC03LC5jb2wtbWQtOCwuY29sLW1kLTksLmNvbC1tZC1hdXRvLC5jb2wtc20sLmNvbC1zbS0xLC5jb2wtc20tMTAsLmNvbC1zbS0xMSwuY29sLXNtLTEyLC5jb2wtc20tMiwuY29sLXNtLTMsLmNvbC1zbS00LC5jb2wtc20tNSwuY29sLXNtLTYsLmNvbC1zbS03LC5jb2wtc20tOCwuY29sLXNtLTksLmNvbC1zbS1hdXRvLC5jb2wteGwsLmNvbC14bC0xLC5jb2wteGwtMTAsLmNvbC14bC0xMSwuY29sLXhsLTEyLC5jb2wteGwtMiwuY29sLXhsLTMsLmNvbC14bC00LC5jb2wteGwtNSwuY29sLXhsLTYsLmNvbC14bC03LC5jb2wteGwtOCwuY29sLXhsLTksLmNvbC14bC1hdXRvLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9IdG1sVGV4dCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9MYWJlbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLm1rdG9IdG1sVGV4dCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLnh4eHhta3RvTGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvSHRtbFRleHQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0xhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLm1rdG9IdG1sVGV4dCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC54eHh4bWt0b0xhYmVse3BhZGRpbmctbGVmdDoxNXB4O3BhZGRpbmctcmlnaHQ6MTVweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlfS5jb2wsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0LC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0h0bWxUZXh0LC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAubWt0b0h0bWxUZXh0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0h0bWxUZXh0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLm1rdG9IdG1sVGV4dHtmbGV4LWJhc2lzOjA7ZmxleC1ncm93OjE7bWF4LXdpZHRoOjEwMCV9LnJvdy1jb2xzLTE+KntmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS5yb3ctY29scy0yPip7ZmxleDowIDAgNTAlO21heC13aWR0aDo1MCV9LnJvdy1jb2xzLTM+KntmbGV4OjAgMCAzMy4zMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMzJX0ucm93LWNvbHMtND4qe2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5yb3ctY29scy01Pip7ZmxleDowIDAgMjAlO21heC13aWR0aDoyMCV9LnJvdy1jb2xzLTY+KntmbGV4OjAgMCAxNi42NjY2NyU7bWF4LXdpZHRoOjE2LjY2NjY3JX0uY29sLWF1dG97ZmxleDowIDAgYXV0bzttYXgtd2lkdGg6MTAwJTt3aWR0aDphdXRvfS5jb2wtMXtmbGV4OjAgMCA4LjMzMzMzJTttYXgtd2lkdGg6OC4zMzMzMyV9LmNvbC0ye2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5jb2wtM3tmbGV4OjAgMCAyNSU7bWF4LXdpZHRoOjI1JX0uY29sLTR7ZmxleDowIDAgMzMuMzMzMzMlO21heC13aWR0aDozMy4zMzMzMyV9LmNvbC01e2ZsZXg6MCAwIDQxLjY2NjY3JTttYXgtd2lkdGg6NDEuNjY2NjclfS5jb2wtNntmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0uY29sLTd7ZmxleDowIDAgNTguMzMzMzMlO21heC13aWR0aDo1OC4zMzMzMyV9LmNvbC04e2ZsZXg6MCAwIDY2LjY2NjY3JTttYXgtd2lkdGg6NjYuNjY2NjclfS5jb2wtOXtmbGV4OjAgMCA3NSU7bWF4LXdpZHRoOjc1JX0uY29sLTEwe2ZsZXg6MCAwIDgzLjMzMzMzJTttYXgtd2lkdGg6ODMuMzMzMzMlfS5jb2wtMTF7ZmxleDowIDAgOTEuNjY2NjclO21heC13aWR0aDo5MS42NjY2NyV9LmNvbC0xMiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9MYWJlbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLnh4eHhta3RvTGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0xhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLnh4eHhta3RvTGFiZWx7ZmxleDowIDAgMTAwJTttYXgtd2lkdGg6MTAwJX0ub3JkZXItZmlyc3R7b3JkZXI6LTF9Lm9yZGVyLWxhc3R7b3JkZXI6MTN9Lm9yZGVyLTB7b3JkZXI6MH0ub3JkZXItMXtvcmRlcjoxfS5vcmRlci0ye29yZGVyOjJ9Lm9yZGVyLTN7b3JkZXI6M30ub3JkZXItNHtvcmRlcjo0fS5vcmRlci01e29yZGVyOjV9Lm9yZGVyLTZ7b3JkZXI6Nn0ub3JkZXItN3tvcmRlcjo3fS5vcmRlci04e29yZGVyOjh9Lm9yZGVyLTl7b3JkZXI6OX0ub3JkZXItMTB7b3JkZXI6MTB9Lm9yZGVyLTExe29yZGVyOjExfS5vcmRlci0xMntvcmRlcjoxMn0ub2Zmc2V0LTF7bWFyZ2luLWxlZnQ6OC4zMzMzMyV9Lm9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY3JX0ub2Zmc2V0LTN7bWFyZ2luLWxlZnQ6MjUlfS5vZmZzZXQtNHttYXJnaW4tbGVmdDozMy4zMzMzMyV9Lm9mZnNldC01e21hcmdpbi1sZWZ0OjQxLjY2NjY3JX0ub2Zmc2V0LTZ7bWFyZ2luLWxlZnQ6NTAlfS5vZmZzZXQtN3ttYXJnaW4tbGVmdDo1OC4zMzMzMyV9Lm9mZnNldC04e21hcmdpbi1sZWZ0OjY2LjY2NjY3JX0ub2Zmc2V0LTl7bWFyZ2luLWxlZnQ6NzUlfS5vZmZzZXQtMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMlfS5vZmZzZXQtMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjclfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsuY29sLXNte2ZsZXgtYmFzaXM6MDtmbGV4LWdyb3c6MTttYXgtd2lkdGg6MTAwJX0ucm93LWNvbHMtc20tMT4qe2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9LnJvdy1jb2xzLXNtLTI+KntmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0ucm93LWNvbHMtc20tMz4qe2ZsZXg6MCAwIDMzLjMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMlfS5yb3ctY29scy1zbS00Pip7ZmxleDowIDAgMjUlO21heC13aWR0aDoyNSV9LnJvdy1jb2xzLXNtLTU+KntmbGV4OjAgMCAyMCU7bWF4LXdpZHRoOjIwJX0ucm93LWNvbHMtc20tNj4qe2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5jb2wtc20tYXV0b3tmbGV4OjAgMCBhdXRvO21heC13aWR0aDoxMDAlO3dpZHRoOmF1dG99LmNvbC1zbS0xe2ZsZXg6MCAwIDguMzMzMzMlO21heC13aWR0aDo4LjMzMzMzJX0uY29sLXNtLTJ7ZmxleDowIDAgMTYuNjY2NjclO21heC13aWR0aDoxNi42NjY2NyV9LmNvbC1zbS0ze2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5jb2wtc20tNHtmbGV4OjAgMCAzMy4zMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMzJX0uY29sLXNtLTV7ZmxleDowIDAgNDEuNjY2NjclO21heC13aWR0aDo0MS42NjY2NyV9LmNvbC1zbS02LC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0xhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAueHh4eG1rdG9MYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvTGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAueHh4eG1rdG9MYWJlbHtmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0uY29sLXNtLTd7ZmxleDowIDAgNTguMzMzMzMlO21heC13aWR0aDo1OC4zMzMzMyV9LmNvbC1zbS04e2ZsZXg6MCAwIDY2LjY2NjY3JTttYXgtd2lkdGg6NjYuNjY2NjclfS5jb2wtc20tOXtmbGV4OjAgMCA3NSU7bWF4LXdpZHRoOjc1JX0uY29sLXNtLTEwe2ZsZXg6MCAwIDgzLjMzMzMzJTttYXgtd2lkdGg6ODMuMzMzMzMlfS5jb2wtc20tMTF7ZmxleDowIDAgOTEuNjY2NjclO21heC13aWR0aDo5MS42NjY2NyV9LmNvbC1zbS0xMntmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS5vcmRlci1zbS1maXJzdHtvcmRlcjotMX0ub3JkZXItc20tbGFzdHtvcmRlcjoxM30ub3JkZXItc20tMHtvcmRlcjowfS5vcmRlci1zbS0xe29yZGVyOjF9Lm9yZGVyLXNtLTJ7b3JkZXI6Mn0ub3JkZXItc20tM3tvcmRlcjozfS5vcmRlci1zbS00e29yZGVyOjR9Lm9yZGVyLXNtLTV7b3JkZXI6NX0ub3JkZXItc20tNntvcmRlcjo2fS5vcmRlci1zbS03e29yZGVyOjd9Lm9yZGVyLXNtLTh7b3JkZXI6OH0ub3JkZXItc20tOXtvcmRlcjo5fS5vcmRlci1zbS0xMHtvcmRlcjoxMH0ub3JkZXItc20tMTF7b3JkZXI6MTF9Lm9yZGVyLXNtLTEye29yZGVyOjEyfS5vZmZzZXQtc20tMHttYXJnaW4tbGVmdDowfS5vZmZzZXQtc20tMXttYXJnaW4tbGVmdDo4LjMzMzMzJX0ub2Zmc2V0LXNtLTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjclfS5vZmZzZXQtc20tM3ttYXJnaW4tbGVmdDoyNSV9Lm9mZnNldC1zbS00e21hcmdpbi1sZWZ0OjMzLjMzMzMzJX0ub2Zmc2V0LXNtLTV7bWFyZ2luLWxlZnQ6NDEuNjY2NjclfS5vZmZzZXQtc20tNnttYXJnaW4tbGVmdDo1MCV9Lm9mZnNldC1zbS03e21hcmdpbi1sZWZ0OjU4LjMzMzMzJX0ub2Zmc2V0LXNtLTh7bWFyZ2luLWxlZnQ6NjYuNjY2NjclfS5vZmZzZXQtc20tOXttYXJnaW4tbGVmdDo3NSV9Lm9mZnNldC1zbS0xMHttYXJnaW4tbGVmdDo4My4zMzMzMyV9Lm9mZnNldC1zbS0xMXttYXJnaW4tbGVmdDo5MS42NjY2NyV9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuY29sLW1ke2ZsZXgtYmFzaXM6MDtmbGV4LWdyb3c6MTttYXgtd2lkdGg6MTAwJX0ucm93LWNvbHMtbWQtMT4qe2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9LnJvdy1jb2xzLW1kLTI+KntmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0ucm93LWNvbHMtbWQtMz4qe2ZsZXg6MCAwIDMzLjMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMlfS5yb3ctY29scy1tZC00Pip7ZmxleDowIDAgMjUlO21heC13aWR0aDoyNSV9LnJvdy1jb2xzLW1kLTU+KntmbGV4OjAgMCAyMCU7bWF4LXdpZHRoOjIwJX0ucm93LWNvbHMtbWQtNj4qe2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5jb2wtbWQtYXV0b3tmbGV4OjAgMCBhdXRvO21heC13aWR0aDoxMDAlO3dpZHRoOmF1dG99LmNvbC1tZC0xe2ZsZXg6MCAwIDguMzMzMzMlO21heC13aWR0aDo4LjMzMzMzJX0uY29sLW1kLTJ7ZmxleDowIDAgMTYuNjY2NjclO21heC13aWR0aDoxNi42NjY2NyV9LmNvbC1tZC0ze2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5jb2wtbWQtNCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9MYWJlbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLnh4eHhta3RvTGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0xhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLnh4eHhta3RvTGFiZWx7ZmxleDowIDAgMzMuMzMzMzMlO21heC13aWR0aDozMy4zMzMzMyV9LmNvbC1tZC01e2ZsZXg6MCAwIDQxLjY2NjY3JTttYXgtd2lkdGg6NDEuNjY2NjclfS5jb2wtbWQtNntmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0uY29sLW1kLTd7ZmxleDowIDAgNTguMzMzMzMlO21heC13aWR0aDo1OC4zMzMzMyV9LmNvbC1tZC04e2ZsZXg6MCAwIDY2LjY2NjY3JTttYXgtd2lkdGg6NjYuNjY2NjclfS5jb2wtbWQtOXtmbGV4OjAgMCA3NSU7bWF4LXdpZHRoOjc1JX0uY29sLW1kLTEwe2ZsZXg6MCAwIDgzLjMzMzMzJTttYXgtd2lkdGg6ODMuMzMzMzMlfS5jb2wtbWQtMTF7ZmxleDowIDAgOTEuNjY2NjclO21heC13aWR0aDo5MS42NjY2NyV9LmNvbC1tZC0xMntmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS5vcmRlci1tZC1maXJzdHtvcmRlcjotMX0ub3JkZXItbWQtbGFzdHtvcmRlcjoxM30ub3JkZXItbWQtMHtvcmRlcjowfS5vcmRlci1tZC0xe29yZGVyOjF9Lm9yZGVyLW1kLTJ7b3JkZXI6Mn0ub3JkZXItbWQtM3tvcmRlcjozfS5vcmRlci1tZC00e29yZGVyOjR9Lm9yZGVyLW1kLTV7b3JkZXI6NX0ub3JkZXItbWQtNntvcmRlcjo2fS5vcmRlci1tZC03e29yZGVyOjd9Lm9yZGVyLW1kLTh7b3JkZXI6OH0ub3JkZXItbWQtOXtvcmRlcjo5fS5vcmRlci1tZC0xMHtvcmRlcjoxMH0ub3JkZXItbWQtMTF7b3JkZXI6MTF9Lm9yZGVyLW1kLTEye29yZGVyOjEyfS5vZmZzZXQtbWQtMHttYXJnaW4tbGVmdDowfS5vZmZzZXQtbWQtMXttYXJnaW4tbGVmdDo4LjMzMzMzJX0ub2Zmc2V0LW1kLTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjclfS5vZmZzZXQtbWQtM3ttYXJnaW4tbGVmdDoyNSV9Lm9mZnNldC1tZC00e21hcmdpbi1sZWZ0OjMzLjMzMzMzJX0ub2Zmc2V0LW1kLTV7bWFyZ2luLWxlZnQ6NDEuNjY2NjclfS5vZmZzZXQtbWQtNnttYXJnaW4tbGVmdDo1MCV9Lm9mZnNldC1tZC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzJX0ub2Zmc2V0LW1kLTh7bWFyZ2luLWxlZnQ6NjYuNjY2NjclfS5vZmZzZXQtbWQtOXttYXJnaW4tbGVmdDo3NSV9Lm9mZnNldC1tZC0xMHttYXJnaW4tbGVmdDo4My4zMzMzMyV9Lm9mZnNldC1tZC0xMXttYXJnaW4tbGVmdDo5MS42NjY2NyV9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsuY29sLWxne2ZsZXgtYmFzaXM6MDtmbGV4LWdyb3c6MTttYXgtd2lkdGg6MTAwJX0ucm93LWNvbHMtbGctMT4qe2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9LnJvdy1jb2xzLWxnLTI+KntmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0ucm93LWNvbHMtbGctMz4qe2ZsZXg6MCAwIDMzLjMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMlfS5yb3ctY29scy1sZy00Pip7ZmxleDowIDAgMjUlO21heC13aWR0aDoyNSV9LnJvdy1jb2xzLWxnLTU+KntmbGV4OjAgMCAyMCU7bWF4LXdpZHRoOjIwJX0ucm93LWNvbHMtbGctNj4qe2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5jb2wtbGctYXV0b3tmbGV4OjAgMCBhdXRvO21heC13aWR0aDoxMDAlO3dpZHRoOmF1dG99LmNvbC1sZy0xe2ZsZXg6MCAwIDguMzMzMzMlO21heC13aWR0aDo4LjMzMzMzJX0uY29sLWxnLTJ7ZmxleDowIDAgMTYuNjY2NjclO21heC13aWR0aDoxNi42NjY2NyV9LmNvbC1sZy0ze2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5jb2wtbGctNHtmbGV4OjAgMCAzMy4zMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMzJX0uY29sLWxnLTV7ZmxleDowIDAgNDEuNjY2NjclO21heC13aWR0aDo0MS42NjY2NyV9LmNvbC1sZy02e2ZsZXg6MCAwIDUwJTttYXgtd2lkdGg6NTAlfS5jb2wtbGctN3tmbGV4OjAgMCA1OC4zMzMzMyU7bWF4LXdpZHRoOjU4LjMzMzMzJX0uY29sLWxnLTh7ZmxleDowIDAgNjYuNjY2NjclO21heC13aWR0aDo2Ni42NjY2NyV9LmNvbC1sZy05e2ZsZXg6MCAwIDc1JTttYXgtd2lkdGg6NzUlfS5jb2wtbGctMTB7ZmxleDowIDAgODMuMzMzMzMlO21heC13aWR0aDo4My4zMzMzMyV9LmNvbC1sZy0xMXtmbGV4OjAgMCA5MS42NjY2NyU7bWF4LXdpZHRoOjkxLjY2NjY3JX0uY29sLWxnLTEye2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9Lm9yZGVyLWxnLWZpcnN0e29yZGVyOi0xfS5vcmRlci1sZy1sYXN0e29yZGVyOjEzfS5vcmRlci1sZy0we29yZGVyOjB9Lm9yZGVyLWxnLTF7b3JkZXI6MX0ub3JkZXItbGctMntvcmRlcjoyfS5vcmRlci1sZy0ze29yZGVyOjN9Lm9yZGVyLWxnLTR7b3JkZXI6NH0ub3JkZXItbGctNXtvcmRlcjo1fS5vcmRlci1sZy02e29yZGVyOjZ9Lm9yZGVyLWxnLTd7b3JkZXI6N30ub3JkZXItbGctOHtvcmRlcjo4fS5vcmRlci1sZy05e29yZGVyOjl9Lm9yZGVyLWxnLTEwe29yZGVyOjEwfS5vcmRlci1sZy0xMXtvcmRlcjoxMX0ub3JkZXItbGctMTJ7b3JkZXI6MTJ9Lm9mZnNldC1sZy0we21hcmdpbi1sZWZ0OjB9Lm9mZnNldC1sZy0xe21hcmdpbi1sZWZ0OjguMzMzMzMlfS5vZmZzZXQtbGctMnttYXJnaW4tbGVmdDoxNi42NjY2NyV9Lm9mZnNldC1sZy0ze21hcmdpbi1sZWZ0OjI1JX0ub2Zmc2V0LWxnLTR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMlfS5vZmZzZXQtbGctNXttYXJnaW4tbGVmdDo0MS42NjY2NyV9Lm9mZnNldC1sZy02e21hcmdpbi1sZWZ0OjUwJX0ub2Zmc2V0LWxnLTd7bWFyZ2luLWxlZnQ6NTguMzMzMzMlfS5vZmZzZXQtbGctOHttYXJnaW4tbGVmdDo2Ni42NjY2NyV9Lm9mZnNldC1sZy05e21hcmdpbi1sZWZ0Ojc1JX0ub2Zmc2V0LWxnLTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzJX0ub2Zmc2V0LWxnLTExe21hcmdpbi1sZWZ0OjkxLjY2NjY3JX19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuY29sLXhse2ZsZXgtYmFzaXM6MDtmbGV4LWdyb3c6MTttYXgtd2lkdGg6MTAwJX0ucm93LWNvbHMteGwtMT4qe2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9LnJvdy1jb2xzLXhsLTI+KntmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0ucm93LWNvbHMteGwtMz4qe2ZsZXg6MCAwIDMzLjMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMlfS5yb3ctY29scy14bC00Pip7ZmxleDowIDAgMjUlO21heC13aWR0aDoyNSV9LnJvdy1jb2xzLXhsLTU+KntmbGV4OjAgMCAyMCU7bWF4LXdpZHRoOjIwJX0ucm93LWNvbHMteGwtNj4qe2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5jb2wteGwtYXV0b3tmbGV4OjAgMCBhdXRvO21heC13aWR0aDoxMDAlO3dpZHRoOmF1dG99LmNvbC14bC0xe2ZsZXg6MCAwIDguMzMzMzMlO21heC13aWR0aDo4LjMzMzMzJX0uY29sLXhsLTJ7ZmxleDowIDAgMTYuNjY2NjclO21heC13aWR0aDoxNi42NjY2NyV9LmNvbC14bC0ze2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5jb2wteGwtNHtmbGV4OjAgMCAzMy4zMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMzJX0uY29sLXhsLTV7ZmxleDowIDAgNDEuNjY2NjclO21heC13aWR0aDo0MS42NjY2NyV9LmNvbC14bC02e2ZsZXg6MCAwIDUwJTttYXgtd2lkdGg6NTAlfS5jb2wteGwtN3tmbGV4OjAgMCA1OC4zMzMzMyU7bWF4LXdpZHRoOjU4LjMzMzMzJX0uY29sLXhsLTh7ZmxleDowIDAgNjYuNjY2NjclO21heC13aWR0aDo2Ni42NjY2NyV9LmNvbC14bC05e2ZsZXg6MCAwIDc1JTttYXgtd2lkdGg6NzUlfS5jb2wteGwtMTB7ZmxleDowIDAgODMuMzMzMzMlO21heC13aWR0aDo4My4zMzMzMyV9LmNvbC14bC0xMXtmbGV4OjAgMCA5MS42NjY2NyU7bWF4LXdpZHRoOjkxLjY2NjY3JX0uY29sLXhsLTEye2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9Lm9yZGVyLXhsLWZpcnN0e29yZGVyOi0xfS5vcmRlci14bC1sYXN0e29yZGVyOjEzfS5vcmRlci14bC0we29yZGVyOjB9Lm9yZGVyLXhsLTF7b3JkZXI6MX0ub3JkZXIteGwtMntvcmRlcjoyfS5vcmRlci14bC0ze29yZGVyOjN9Lm9yZGVyLXhsLTR7b3JkZXI6NH0ub3JkZXIteGwtNXtvcmRlcjo1fS5vcmRlci14bC02e29yZGVyOjZ9Lm9yZGVyLXhsLTd7b3JkZXI6N30ub3JkZXIteGwtOHtvcmRlcjo4fS5vcmRlci14bC05e29yZGVyOjl9Lm9yZGVyLXhsLTEwe29yZGVyOjEwfS5vcmRlci14bC0xMXtvcmRlcjoxMX0ub3JkZXIteGwtMTJ7b3JkZXI6MTJ9Lm9mZnNldC14bC0we21hcmdpbi1sZWZ0OjB9Lm9mZnNldC14bC0xe21hcmdpbi1sZWZ0OjguMzMzMzMlfS5vZmZzZXQteGwtMnttYXJnaW4tbGVmdDoxNi42NjY2NyV9Lm9mZnNldC14bC0ze21hcmdpbi1sZWZ0OjI1JX0ub2Zmc2V0LXhsLTR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMlfS5vZmZzZXQteGwtNXttYXJnaW4tbGVmdDo0MS42NjY2NyV9Lm9mZnNldC14bC02e21hcmdpbi1sZWZ0OjUwJX0ub2Zmc2V0LXhsLTd7bWFyZ2luLWxlZnQ6NTguMzMzMzMlfS5vZmZzZXQteGwtOHttYXJnaW4tbGVmdDo2Ni42NjY2NyV9Lm9mZnNldC14bC05e21hcmdpbi1sZWZ0Ojc1JX0ub2Zmc2V0LXhsLTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzJX0ub2Zmc2V0LXhsLTExe21hcmdpbi1sZWZ0OjkxLjY2NjY3JX19LnRhYmxle2NvbG9yOnJnYmEoMCwwLDAsLjkpO21hcmdpbi1ib3R0b206MXJlbTt3aWR0aDoxMDAlfS50YWJsZSB0ZCwudGFibGUgdGh7Ym9yZGVyLXRvcDoxcHggc29saWQgI2U1ZTVlNTtwYWRkaW5nOi43NXJlbTt2ZXJ0aWNhbC1hbGlnbjp0b3B9LnRhYmxlIHRoZWFkIHRoe2JvcmRlci1ib3R0b206MnB4IHNvbGlkICNlNWU1ZTU7dmVydGljYWwtYWxpZ246Ym90dG9tfS50YWJsZSB0Ym9keSt0Ym9keXtib3JkZXItdG9wOjJweCBzb2xpZCAjZTVlNWU1fS50YWJsZS1zbSB0ZCwudGFibGUtc20gdGh7cGFkZGluZzouM3JlbX0udGFibGUtYm9yZGVyZWQsLnRhYmxlLWJvcmRlcmVkIHRkLC50YWJsZS1ib3JkZXJlZCB0aHtib3JkZXI6MXB4IHNvbGlkICNlNWU1ZTV9LnRhYmxlLWJvcmRlcmVkIHRoZWFkIHRkLC50YWJsZS1ib3JkZXJlZCB0aGVhZCB0aHtib3JkZXItYm90dG9tLXdpZHRoOjJweH0udGFibGUtYm9yZGVybGVzcyB0Ym9keSt0Ym9keSwudGFibGUtYm9yZGVybGVzcyB0ZCwudGFibGUtYm9yZGVybGVzcyB0aCwudGFibGUtYm9yZGVybGVzcyB0aGVhZCB0aHtib3JkZXI6MH0udGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpe2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDUpfS50YWJsZS1ob3ZlciB0Ym9keSB0cjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA3NSk7Y29sb3I6cmdiYSgwLDAsMCwuOSl9LnRhYmxlLXByaW1hcnksLnRhYmxlLXByaW1hcnk+dGQsLnRhYmxlLXByaW1hcnk+dGh7YmFja2dyb3VuZC1jb2xvcjojZjNiOWJjfS50YWJsZS1wcmltYXJ5IHRib2R5K3Rib2R5LC50YWJsZS1wcmltYXJ5IHRkLC50YWJsZS1wcmltYXJ5IHRoLC50YWJsZS1wcmltYXJ5IHRoZWFkIHRoe2JvcmRlci1jb2xvcjojZTk3ZDgzfS50YWJsZS1ob3ZlciAudGFibGUtcHJpbWFyeTpob3ZlciwudGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXI+dGQsLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyPnRoe2JhY2tncm91bmQtY29sb3I6I2VmYTNhN30udGFibGUtc2Vjb25kYXJ5LC50YWJsZS1zZWNvbmRhcnk+dGQsLnRhYmxlLXNlY29uZGFyeT50aHtiYWNrZ3JvdW5kLWNvbG9yOiNkNGQ0ZDR9LnRhYmxlLXNlY29uZGFyeSB0Ym9keSt0Ym9keSwudGFibGUtc2Vjb25kYXJ5IHRkLC50YWJsZS1zZWNvbmRhcnkgdGgsLnRhYmxlLXNlY29uZGFyeSB0aGVhZCB0aHtib3JkZXItY29sb3I6I2FmYWZhZn0udGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3ZlciwudGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3Zlcj50ZCwudGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOiNjN2M3Yzd9LnRhYmxlLXN1Y2Nlc3MsLnRhYmxlLXN1Y2Nlc3M+dGQsLnRhYmxlLXN1Y2Nlc3M+dGh7YmFja2dyb3VuZC1jb2xvcjojYzNlNmNifS50YWJsZS1zdWNjZXNzIHRib2R5K3Rib2R5LC50YWJsZS1zdWNjZXNzIHRkLC50YWJsZS1zdWNjZXNzIHRoLC50YWJsZS1zdWNjZXNzIHRoZWFkIHRoe2JvcmRlci1jb2xvcjojOGZkMTllfS50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciwudGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXI+dGQsLnRhYmxlLWhvdmVyIC50YWJsZS1zdWNjZXNzOmhvdmVyPnRoe2JhY2tncm91bmQtY29sb3I6I2IxZGZiYn0udGFibGUtaW5mbywudGFibGUtaW5mbz50ZCwudGFibGUtaW5mbz50aHtiYWNrZ3JvdW5kLWNvbG9yOiNiZWU1ZWJ9LnRhYmxlLWluZm8gdGJvZHkrdGJvZHksLnRhYmxlLWluZm8gdGQsLnRhYmxlLWluZm8gdGgsLnRhYmxlLWluZm8gdGhlYWQgdGh7Ym9yZGVyLWNvbG9yOiM4NmNmZGF9LnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyLC50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3Zlcj50ZCwudGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXI+dGh7YmFja2dyb3VuZC1jb2xvcjojYWJkZGU1fS50YWJsZS13YXJuaW5nLC50YWJsZS13YXJuaW5nPnRkLC50YWJsZS13YXJuaW5nPnRoe2JhY2tncm91bmQtY29sb3I6I2ZmZjFiOH0udGFibGUtd2FybmluZyB0Ym9keSt0Ym9keSwudGFibGUtd2FybmluZyB0ZCwudGFibGUtd2FybmluZyB0aCwudGFibGUtd2FybmluZyB0aGVhZCB0aHtib3JkZXItY29sb3I6I2ZmZTQ3YX0udGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIsLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyPnRkLC50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmVjOWZ9LnRhYmxlLWRhbmdlciwudGFibGUtZGFuZ2VyPnRkLC50YWJsZS1kYW5nZXI+dGh7YmFja2dyb3VuZC1jb2xvcjojZjNiOWJjfS50YWJsZS1kYW5nZXIgdGJvZHkrdGJvZHksLnRhYmxlLWRhbmdlciB0ZCwudGFibGUtZGFuZ2VyIHRoLC50YWJsZS1kYW5nZXIgdGhlYWQgdGh7Ym9yZGVyLWNvbG9yOiNlOTdkODN9LnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIsLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXI+dGQsLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXI+dGh7YmFja2dyb3VuZC1jb2xvcjojZWZhM2E3fS50YWJsZS1saWdodCwudGFibGUtbGlnaHQ+dGQsLnRhYmxlLWxpZ2h0PnRoe2JhY2tncm91bmQtY29sb3I6I2ZiZmJmYn0udGFibGUtbGlnaHQgdGJvZHkrdGJvZHksLnRhYmxlLWxpZ2h0IHRkLC50YWJsZS1saWdodCB0aCwudGFibGUtbGlnaHQgdGhlYWQgdGh7Ym9yZGVyLWNvbG9yOiNmOGY4Zjh9LnRhYmxlLWhvdmVyIC50YWJsZS1saWdodDpob3ZlciwudGFibGUtaG92ZXIgLnRhYmxlLWxpZ2h0OmhvdmVyPnRkLC50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXI+dGh7YmFja2dyb3VuZC1jb2xvcjojZWVlfS50YWJsZS1kYXJrLC50YWJsZS1kYXJrPnRkLC50YWJsZS1kYXJrPnRoe2JhY2tncm91bmQtY29sb3I6I2M2YzZjNn0udGFibGUtZGFyayB0Ym9keSt0Ym9keSwudGFibGUtZGFyayB0ZCwudGFibGUtZGFyayB0aCwudGFibGUtZGFyayB0aGVhZCB0aHtib3JkZXItY29sb3I6Izk1OTU5NX0udGFibGUtaG92ZXIgLnRhYmxlLWRhcms6aG92ZXIsLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyPnRkLC50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOiNiOWI5Yjl9LnRhYmxlLWFjdGl2ZSwudGFibGUtYWN0aXZlPnRkLC50YWJsZS1hY3RpdmU+dGgsLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIsLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXI+dGQsLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXI+dGh7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNzUpfS50YWJsZSAudGhlYWQtZGFyayB0aHtiYWNrZ3JvdW5kLWNvbG9yOiMzMzM7Ym9yZGVyLWNvbG9yOiM0NjQ2NDY7Y29sb3I6I2ZmZn0udGFibGUgLnRoZWFkLWxpZ2h0IHRoe2JhY2tncm91bmQtY29sb3I6I2ViZWJlYjtib3JkZXItY29sb3I6I2U1ZTVlNTtjb2xvcjojNDk1MDU3fS50YWJsZS1kYXJre2JhY2tncm91bmQtY29sb3I6IzMzMztjb2xvcjojZmZmfS50YWJsZS1kYXJrIHRkLC50YWJsZS1kYXJrIHRoLC50YWJsZS1kYXJrIHRoZWFkIHRoe2JvcmRlci1jb2xvcjojNDY0NjQ2fS50YWJsZS1kYXJrLnRhYmxlLWJvcmRlcmVke2JvcmRlcjowfS50YWJsZS1kYXJrLnRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKXtiYWNrZ3JvdW5kLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC4wNSl9LnRhYmxlLWRhcmsudGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuMDc1KTtjb2xvcjojZmZmfUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsudGFibGUtLXBhY2thZ2luZ3MgdGFibGUsLnRhYmxlLS1yZXNwb25zaXZlIHRhYmxlLC50YWJsZS1yZXNwb25zaXZlIHRhYmxlLC50YWJsZS1yZXNwb25zaXZlLXNtLHRhYmxlLnRhYmxlLS1wYWNrYWdpbmdzey13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3cteDphdXRvO3dpZHRoOjEwMCV9LnRhYmxlLS1wYWNrYWdpbmdzIHRhYmxlPi50YWJsZS1ib3JkZXJlZCwudGFibGUtLXJlc3BvbnNpdmUgdGFibGU+LnRhYmxlLWJvcmRlcmVkLC50YWJsZS1yZXNwb25zaXZlIHRhYmxlPi50YWJsZS1ib3JkZXJlZCwudGFibGUtcmVzcG9uc2l2ZS1zbT4udGFibGUtYm9yZGVyZWQsdGFibGUudGFibGUtLXBhY2thZ2luZ3M+LnRhYmxlLWJvcmRlcmVke2JvcmRlcjowfX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7LnRhYmxlLXJlc3BvbnNpdmUtbWR7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7ZGlzcGxheTpibG9jaztvdmVyZmxvdy14OmF1dG87d2lkdGg6MTAwJX0udGFibGUtcmVzcG9uc2l2ZS1tZD4udGFibGUtYm9yZGVyZWR7Ym9yZGVyOjB9fUBtZWRpYSAobWF4LXdpZHRoOjk5MS45OHB4KXsudGFibGUtcmVzcG9uc2l2ZS1sZ3std2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDtkaXNwbGF5OmJsb2NrO292ZXJmbG93LXg6YXV0bzt3aWR0aDoxMDAlfS50YWJsZS1yZXNwb25zaXZlLWxnPi50YWJsZS1ib3JkZXJlZHtib3JkZXI6MH19QG1lZGlhIChtYXgtd2lkdGg6MTE5OS45OHB4KXsudGFibGUtcmVzcG9uc2l2ZS14bHstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDtkaXNwbGF5OmJsb2NrO292ZXJmbG93LXg6YXV0bzt3aWR0aDoxMDAlfS50YWJsZS1yZXNwb25zaXZlLXhsPi50YWJsZS1ib3JkZXJlZHtib3JkZXI6MH19LnRhYmxlLXJlc3BvbnNpdmV7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7ZGlzcGxheTpibG9jaztvdmVyZmxvdy14OmF1dG87d2lkdGg6MTAwJX0udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWR7Ym9yZGVyOjB9LmZvcm0tY29udHJvbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZHtiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2NjYztib3JkZXItcmFkaXVzOi4yNXJlbTtjb2xvcjpyZ2JhKDAsMCwwLC45KTtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxcmVtO2ZvbnQtd2VpZ2h0OjEwMDtoZWlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSArIDJweCk7bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6LjM3NXJlbSAuNzVyZW07dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7d2lkdGg6MTAwJX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEubWt0b0ZpZWxke3RyYW5zaXRpb246bm9uZX19LmZvcm0tY29udHJvbDo6LW1zLWV4cGFuZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pOjotbXMtZXhwYW5kLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkOjotbXMtZXhwYW5kLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6Oi1tcy1leHBhbmQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOjotbXMtZXhwYW5kLC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyOjotbXMtZXhwYW5kLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pOjotbXMtZXhwYW5kLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDo6LW1zLWV4cGFuZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZDo6LW1zLWV4cGFuZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjowfS5mb3JtLWNvbnRyb2w6Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0Lm1rdG9GaWVsZDpmb2N1czppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDpmb2N1cywubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEubWt0b0ZpZWxkOmZvY3VzLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZDpmb2N1cywuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjpmb2N1cyxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0Lm1rdG9GaWVsZDpmb2N1czppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGQ6Zm9jdXMsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLC45KTtib3gtc2hhZG93Om5vbmU7Y29sb3I6cmdiYSgwLDAsMCwuOSk7b3V0bGluZTowfS5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKTo6LW1vei1wbGFjZWhvbGRlciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDo6LW1vei1wbGFjZWhvbGRlciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEubWt0b0ZpZWxkOjotbW96LXBsYWNlaG9sZGVyLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZDo6LW1vei1wbGFjZWhvbGRlciwuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjo6LW1vei1wbGFjZWhvbGRlcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKTo6LW1vei1wbGFjZWhvbGRlcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGQ6Oi1tb3otcGxhY2Vob2xkZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6Oi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6I2IyYjJiMjtvcGFjaXR5OjF9LmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKTo6cGxhY2Vob2xkZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGQ6OnBsYWNlaG9sZGVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6OnBsYWNlaG9sZGVyLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZDo6cGxhY2Vob2xkZXIsLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXI6OnBsYWNlaG9sZGVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pOjpwbGFjZWhvbGRlcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGQ6OnBsYWNlaG9sZGVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEubWt0b0ZpZWxkOjpwbGFjZWhvbGRlcntjb2xvcjojYjJiMmIyO29wYWNpdHk6MX0uZm9ybS1jb250cm9sOmRpc2FibGVkLC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGQ6ZGlzYWJsZWQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0Lm1rdG9GaWVsZFtyZWFkb25seV06aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGQ6ZGlzYWJsZWQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGRbcmVhZG9ubHldLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6ZGlzYWJsZWQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZFtyZWFkb25seV0sLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOmRpc2FibGVkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZFtyZWFkb25seV0sLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXI6ZGlzYWJsZWQsLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXJbcmVhZG9ubHldLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmRpc2FibGVkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkW3JlYWRvbmx5XTppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGQ6ZGlzYWJsZWQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkW3JlYWRvbmx5XSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZDpkaXNhYmxlZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZFtyZWFkb25seV17YmFja2dyb3VuZC1jb2xvcjojZWJlYmViO29wYWNpdHk6MX0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkW3R5cGU9ZGF0ZV06aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0Lm1rdG9GaWVsZFt0eXBlPWRhdGV0aW1lLWxvY2FsXTppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkW3R5cGU9bW9udGhdOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGRbdHlwZT10aW1lXTppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGRbdHlwZT1kYXRlXSwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGRbdHlwZT1kYXRldGltZS1sb2NhbF0sLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkW3R5cGU9bW9udGhdLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZFt0eXBlPXRpbWVdLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkW3R5cGU9ZGF0ZV06aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGRbdHlwZT1kYXRldGltZS1sb2NhbF06aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGRbdHlwZT1tb250aF06aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGRbdHlwZT10aW1lXTppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxpbnB1dC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyW3R5cGU9ZGF0ZV0saW5wdXQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lclt0eXBlPWRhdGV0aW1lLWxvY2FsXSxpbnB1dC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyW3R5cGU9bW9udGhdLGlucHV0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXJbdHlwZT10aW1lXSxpbnB1dFt0eXBlPWRhdGVdLmZvcm0tY29udHJvbCxpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXS5mb3JtLWNvbnRyb2wsaW5wdXRbdHlwZT1tb250aF0uZm9ybS1jb250cm9sLGlucHV0W3R5cGU9dGltZV0uZm9ybS1jb250cm9sey13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZX0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDotbW96LWZvY3VzcmluZyxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGQ6LW1vei1mb2N1c3Jpbmcsc2VsZWN0LmZvcm0tY29udHJvbDotbW96LWZvY3VzcmluZyxzZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjotbW96LWZvY3VzcmluZ3tjb2xvcjp0cmFuc3BhcmVudDt0ZXh0LXNoYWRvdzowIDAgMCByZ2JhKDAsMCwwLC45KX0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDpmb2N1czo6LW1zLXZhbHVlLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDpmb2N1czo6LW1zLXZhbHVlLHNlbGVjdC5mb3JtLWNvbnRyb2w6Zm9jdXM6Oi1tcy12YWx1ZSxzZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjpmb2N1czo6LW1zLXZhbHVle2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjpyZ2JhKDAsMCwwLC45KX0uZm9ybS1jb250cm9sLWZpbGUsLmZvcm0tY29udHJvbC1yYW5nZXtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCV9LmNvbC1mb3JtLWxhYmVse2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OjEuNTttYXJnaW4tYm90dG9tOjA7cGFkZGluZy1ib3R0b206Y2FsYyguMzc1cmVtICsgMXB4KTtwYWRkaW5nLXRvcDpjYWxjKC4zNzVyZW0gKyAxcHgpfS5jb2wtZm9ybS1sYWJlbC1sZ3tmb250LXNpemU6MS4yNXJlbTtsaW5lLWhlaWdodDoxLjU7cGFkZGluZy1ib3R0b206Y2FsYyguNXJlbSArIDFweCk7cGFkZGluZy10b3A6Y2FsYyguNXJlbSArIDFweCl9LmNvbC1mb3JtLWxhYmVsLXNte2ZvbnQtc2l6ZTouODc1cmVtO2xpbmUtaGVpZ2h0OjEuNTtwYWRkaW5nLWJvdHRvbTpjYWxjKC4yNXJlbSArIDFweCk7cGFkZGluZy10b3A6Y2FsYyguMjVyZW0gKyAxcHgpfS5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOnNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci13aWR0aDoxcHggMDtjb2xvcjpyZ2JhKDAsMCwwLC45KTtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNTttYXJnaW4tYm90dG9tOjA7cGFkZGluZzouMzc1cmVtIDA7d2lkdGg6MTAwJX0uZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtbGcsLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLXNte3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH0uZm9ybS1jb250cm9sLXNte2JvcmRlci1yYWRpdXM6LjJyZW07Zm9udC1zaXplOi44NzVyZW07aGVpZ2h0OmNhbGMoMS41ZW0gKyAuNXJlbSArIDJweCk7bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6LjI1cmVtIC41cmVtfS5mb3JtLWNvbnRyb2wtbGd7Ym9yZGVyLXJhZGl1czouM3JlbTtmb250LXNpemU6MS4yNXJlbTtoZWlnaHQ6Y2FsYygxLjVlbSArIDFyZW0gKyAycHgpO2xpbmUtaGVpZ2h0OjEuNTtwYWRkaW5nOi41cmVtIDFyZW19Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGRbbXVsdGlwbGVdLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkW3NpemVdLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkW211bHRpcGxlXSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGRbc2l6ZV0sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQsc2VsZWN0LmZvcm0tY29udHJvbFttdWx0aXBsZV0sc2VsZWN0LmZvcm0tY29udHJvbFtzaXplXSxzZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lclttdWx0aXBsZV0sc2VsZWN0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXJbc2l6ZV0sdGV4dGFyZWEuZm9ybS1jb250cm9sLHRleHRhcmVhLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXJ7aGVpZ2h0OmF1dG99LmZvcm0tZ3JvdXB7bWFyZ2luLWJvdHRvbTozMHB4fS5mb3JtLXRleHR7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOi4yNXJlbX0uZm9ybS1yb3d7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO21hcmdpbi1sZWZ0Oi01cHg7bWFyZ2luLXJpZ2h0Oi01cHh9LmZvcm0tcm93Pi5jb2wsLmZvcm0tcm93PltjbGFzcyo9Y29sLV0sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLXJvdz4ubWt0b0NoZWNrYm94TGlzdCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLmZvcm0tcm93Pi5ta3RvSHRtbFRleHQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1yb3c+Lm1rdG9DaGVja2JveExpc3QsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAuZm9ybS1yb3c+Lm1rdG9IdG1sVGV4dHtwYWRkaW5nLWxlZnQ6NXB4O3BhZGRpbmctcmlnaHQ6NXB4fS5mb3JtLWNoZWNrLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0e2Rpc3BsYXk6YmxvY2s7cGFkZGluZy1sZWZ0OjEuMjVyZW07cG9zaXRpb246cmVsYXRpdmV9LmZvcm0tY2hlY2staW5wdXQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXR7bWFyZ2luLWxlZnQ6LTEuMjVyZW07bWFyZ2luLXRvcDouM3JlbTtwb3NpdGlvbjphYnNvbHV0ZX0uZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZH4uZm9ybS1jaGVjay1sYWJlbCwuZm9ybS1jaGVjay1pbnB1dFtkaXNhYmxlZF1+LmZvcm0tY2hlY2stbGFiZWwsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkfmxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAuZm9ybS1jaGVjay1pbnB1dFtkaXNhYmxlZF1+bGFiZWwsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OmRpc2FibGVkfi5mb3JtLWNoZWNrLWxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dDpkaXNhYmxlZH5sYWJlbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXRbZGlzYWJsZWRdfi5mb3JtLWNoZWNrLWxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dFtkaXNhYmxlZF1+bGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZH5sYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC5mb3JtLWNoZWNrLWlucHV0W2Rpc2FibGVkXX5sYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OmRpc2FibGVkfi5mb3JtLWNoZWNrLWxhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQ6ZGlzYWJsZWR+bGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dFtkaXNhYmxlZF1+LmZvcm0tY2hlY2stbGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dFtkaXNhYmxlZF1+bGFiZWx7Y29sb3I6IzY2Nn0uZm9ybS1jaGVjay1sYWJlbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgbGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBsYWJlbHttYXJnaW4tYm90dG9tOjB9LmZvcm0tY2hlY2staW5saW5le2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O21hcmdpbi1yaWdodDouNzVyZW07cGFkZGluZy1sZWZ0OjB9LmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0LC5mb3JtLWNoZWNrLWlubGluZSAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQsLmZvcm0tY2hlY2staW5saW5lIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC5mb3JtLWNoZWNrLWlubGluZSBpbnB1dCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC5mb3JtLWNoZWNrLWlubGluZSBpbnB1dHttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDouMzEyNXJlbTttYXJnaW4tdG9wOjA7cG9zaXRpb246c3RhdGljfS52YWxpZC1mZWVkYmFja3tjb2xvcjojMjhhNzQ1O2Rpc3BsYXk6bm9uZTtmb250LXNpemU6ODAlO21hcmdpbi10b3A6LjI1cmVtO3dpZHRoOjEwMCV9LnZhbGlkLXRvb2x0aXB7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDQwLDE2Nyw2OSwuOSk7Ym9yZGVyLXJhZGl1czouMjVyZW07Y29sb3I6I2ZmZjtkaXNwbGF5Om5vbmU7Zm9udC1zaXplOi44NzVyZW07bGVmdDowO2xpbmUtaGVpZ2h0OjEuNTttYXJnaW4tdG9wOi4xcmVtO21heC13aWR0aDoxMDAlO3BhZGRpbmc6LjI1cmVtIC41cmVtO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO3otaW5kZXg6NX0uZm9ybS1yb3c+LmNvbD4udmFsaWQtdG9vbHRpcCwuZm9ybS1yb3c+W2NsYXNzKj1jb2wtXT4udmFsaWQtdG9vbHRpcCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tcm93Pi5ta3RvQ2hlY2tib3hMaXN0Pi52YWxpZC10b29sdGlwLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAuZm9ybS1yb3c+Lm1rdG9IdG1sVGV4dD4udmFsaWQtdG9vbHRpcCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLXJvdz4ubWt0b0NoZWNrYm94TGlzdD4udmFsaWQtdG9vbHRpcCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5mb3JtLXJvdz4ubWt0b0h0bWxUZXh0Pi52YWxpZC10b29sdGlwe2xlZnQ6NXB4fS5pcy12YWxpZH4udmFsaWQtZmVlZGJhY2ssLmlzLXZhbGlkfi52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIDp2YWxpZH4udmFsaWQtZmVlZGJhY2ssLndhcy12YWxpZGF0ZWQgOnZhbGlkfi52YWxpZC10b29sdGlwe2Rpc3BsYXk6YmxvY2t9LmZvcm0tY29udHJvbC5pcy12YWxpZCwuaXMtdmFsaWQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgaW5wdXQubWt0b0ZpZWxkOnZhbGlkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCBzZWxlY3QubWt0b0ZpZWxkOnZhbGlkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5ta3RvRmllbGQ6dmFsaWQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0LmlzLXZhbGlkLm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0LmlzLXZhbGlkLm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEuaXMtdmFsaWQubWt0b0ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC53YXMtdmFsaWRhdGVkIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZDp2YWxpZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5pcy12YWxpZC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCwud2FzLXZhbGlkYXRlZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOnZhbGlkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkOnZhbGlkLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6dmFsaWQsLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOnZhbGlkLC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyOnZhbGlkLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOnZhbGlkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDp2YWxpZCwud2FzLXZhbGlkYXRlZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZDp2YWxpZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC53YXMtdmFsaWRhdGVkIGlucHV0Lm1rdG9GaWVsZDp2YWxpZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC53YXMtdmFsaWRhdGVkIHNlbGVjdC5ta3RvRmllbGQ6dmFsaWQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5ta3RvRmllbGQ6dmFsaWQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5pcy12YWxpZC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QuaXMtdmFsaWQubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEuaXMtdmFsaWQubWt0b0ZpZWxke2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyUzRSUzQ3BhdGggZmlsbD0nJTIzMjhhNzQ1JyBkPSdNMi4zIDYuNzMuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzRSUzQy9zdmclM0UiKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pIGNlbnRlcjtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOmNhbGMoLjc1ZW0gKyAuMzc1cmVtKSBjYWxjKC43NWVtICsgLjM3NXJlbSk7Ym9yZGVyLWNvbG9yOiMyOGE3NDU7cGFkZGluZy1yaWdodDpjYWxjKDEuNWVtICsgLjc1cmVtKSFpbXBvcnRhbnR9LmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cywuaXMtdmFsaWQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjpmb2N1cywubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgaW5wdXQubWt0b0ZpZWxkOnZhbGlkOmZvY3VzOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCBzZWxlY3QubWt0b0ZpZWxkOnZhbGlkOmZvY3VzLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5ta3RvRmllbGQ6dmFsaWQ6Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0LmlzLXZhbGlkLm1rdG9GaWVsZDpmb2N1czppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0LmlzLXZhbGlkLm1rdG9GaWVsZDpmb2N1cywubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEuaXMtdmFsaWQubWt0b0ZpZWxkOmZvY3VzLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC53YXMtdmFsaWRhdGVkIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZDp2YWxpZDpmb2N1cywuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5pcy12YWxpZC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Zm9jdXMsLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOnZhbGlkOmZvY3VzOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkOnZhbGlkOmZvY3VzLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6dmFsaWQ6Zm9jdXMsLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOnZhbGlkOmZvY3VzLC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyOnZhbGlkOmZvY3VzLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOnZhbGlkOmZvY3VzOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDp2YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZDp2YWxpZDpmb2N1cyxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC53YXMtdmFsaWRhdGVkIGlucHV0Lm1rdG9GaWVsZDp2YWxpZDpmb2N1czppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC53YXMtdmFsaWRhdGVkIHNlbGVjdC5ta3RvRmllbGQ6dmFsaWQ6Zm9jdXMsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5ta3RvRmllbGQ6dmFsaWQ6Zm9jdXMsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5pcy12YWxpZC5ta3RvRmllbGQ6Zm9jdXM6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QuaXMtdmFsaWQubWt0b0ZpZWxkOmZvY3VzLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEuaXMtdmFsaWQubWt0b0ZpZWxkOmZvY3Vze2JvcmRlci1jb2xvcjojMjhhNzQ1O2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg0MCwxNjcsNjksLjI1KX0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgc2VsZWN0Lm1rdG9GaWVsZDp2YWxpZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0LmlzLXZhbGlkLm1rdG9GaWVsZCwud2FzLXZhbGlkYXRlZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDp2YWxpZCwud2FzLXZhbGlkYXRlZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5ta3RvRmllbGQ6dmFsaWQsLndhcy12YWxpZGF0ZWQgc2VsZWN0LmZvcm0tY29udHJvbDp2YWxpZCwud2FzLXZhbGlkYXRlZCBzZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjp2YWxpZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC53YXMtdmFsaWRhdGVkIHNlbGVjdC5ta3RvRmllbGQ6dmFsaWQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QuaXMtdmFsaWQubWt0b0ZpZWxkLHNlbGVjdC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQsc2VsZWN0LmlzLXZhbGlkLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAxLjVyZW0gY2VudGVyO3BhZGRpbmctcmlnaHQ6M3JlbSFpbXBvcnRhbnR9Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC53YXMtdmFsaWRhdGVkIHRleHRhcmVhLm1rdG9GaWVsZDp2YWxpZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEuaXMtdmFsaWQubWt0b0ZpZWxkLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6dmFsaWQsLndhcy12YWxpZGF0ZWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6dmFsaWQsLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOnZhbGlkLC53YXMtdmFsaWRhdGVkIHRleHRhcmVhLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXI6dmFsaWQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5ta3RvRmllbGQ6dmFsaWQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5pcy12YWxpZC5ta3RvRmllbGQsdGV4dGFyZWEuZm9ybS1jb250cm9sLmlzLXZhbGlkLHRleHRhcmVhLmlzLXZhbGlkLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjp0b3AgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSkgcmlnaHQgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSk7cGFkZGluZy1yaWdodDpjYWxjKDEuNWVtICsgLjc1cmVtKX0uY3VzdG9tLXNlbGVjdC5pcy12YWxpZCwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZHtiYWNrZ3JvdW5kOnVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNSclM0UlM0NwYXRoIGZpbGw9JyUyMzMzMycgZD0nTTIgMCAwIDJoNHptMCA1TDAgM2g0eicvJTNFJTNDL3N2ZyUzRSIpIHJpZ2h0IC43NXJlbSBjZW50ZXIvOHB4IDEwcHggbm8tcmVwZWF0LCNmZmYgdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyUzRSUzQ3BhdGggZmlsbD0nJTIzMjhhNzQ1JyBkPSdNMi4zIDYuNzMuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzRSUzQy9zdmclM0UiKSBjZW50ZXIgcmlnaHQgMS43NXJlbS9jYWxjKC43NWVtICsgLjM3NXJlbSkgY2FsYyguNzVlbSArIC4zNzVyZW0pIG5vLXJlcGVhdDtib3JkZXItY29sb3I6IzI4YTc0NTtwYWRkaW5nLXJpZ2h0OmNhbGMoLjc1ZW0gKyAyLjMxMjVyZW0pIWltcG9ydGFudH0uY3VzdG9tLXNlbGVjdC5pcy12YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZDpmb2N1c3tib3JkZXItY29sb3I6IzI4YTc0NTtib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNDAsMTY3LDY5LC4yNSl9LmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWR+LmZvcm0tY2hlY2stbGFiZWwsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkfmxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZH5sYWJlbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLndhcy12YWxpZGF0ZWQgaW5wdXQ6dmFsaWR+LmZvcm0tY2hlY2stbGFiZWwsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC53YXMtdmFsaWRhdGVkIGlucHV0OnZhbGlkfmxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dC5pcy12YWxpZH4uZm9ybS1jaGVjay1sYWJlbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQuaXMtdmFsaWR+bGFiZWwsLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWR+LmZvcm0tY2hlY2stbGFiZWwsLndhcy12YWxpZGF0ZWQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkfmxhYmVsLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dDp2YWxpZH4uZm9ybS1jaGVjay1sYWJlbCwud2FzLXZhbGlkYXRlZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQ6dmFsaWR+bGFiZWwsLndhcy12YWxpZGF0ZWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZH5sYWJlbCwud2FzLXZhbGlkYXRlZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQ6dmFsaWR+bGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAuZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZH5sYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkfmxhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLndhcy12YWxpZGF0ZWQgaW5wdXQ6dmFsaWR+LmZvcm0tY2hlY2stbGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAud2FzLXZhbGlkYXRlZCBpbnB1dDp2YWxpZH5sYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0LmlzLXZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQuaXMtdmFsaWR+bGFiZWx7Y29sb3I6IzI4YTc0NX0uZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZH4udmFsaWQtZmVlZGJhY2ssLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWR+LnZhbGlkLXRvb2x0aXAsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC53YXMtdmFsaWRhdGVkIGlucHV0OnZhbGlkfi52YWxpZC1mZWVkYmFjaywubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLndhcy12YWxpZGF0ZWQgaW5wdXQ6dmFsaWR+LnZhbGlkLXRvb2x0aXAsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0LmlzLXZhbGlkfi52YWxpZC1mZWVkYmFjaywubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQuaXMtdmFsaWR+LnZhbGlkLXRvb2x0aXAsLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWR+LnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkfi52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dDp2YWxpZH4udmFsaWQtZmVlZGJhY2ssLndhcy12YWxpZGF0ZWQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OnZhbGlkfi52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQ6dmFsaWR+LnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQ6dmFsaWR+LnZhbGlkLXRvb2x0aXAsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAud2FzLXZhbGlkYXRlZCBpbnB1dDp2YWxpZH4udmFsaWQtZmVlZGJhY2ssYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAud2FzLXZhbGlkYXRlZCBpbnB1dDp2YWxpZH4udmFsaWQtdG9vbHRpcCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0LmlzLXZhbGlkfi52YWxpZC1mZWVkYmFjayxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0LmlzLXZhbGlkfi52YWxpZC10b29sdGlwe2Rpc3BsYXk6YmxvY2t9LmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbCwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWR+LmN1c3RvbS1jb250cm9sLWxhYmVse2NvbG9yOiMyOGE3NDV9LmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmV7Ym9yZGVyLWNvbG9yOiMyOGE3NDV9LmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6IzM0Y2U1Nztib3JkZXItY29sb3I6IzM0Y2U1N30uY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQ6Zm9jdXN+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQ6Zm9jdXN+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZXtib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNDAsMTY3LDY5LC4yNSl9LmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCl+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQ6Zm9jdXM6bm90KDpjaGVja2VkKX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JvcmRlci1jb2xvcjojMjhhNzQ1fS5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZH4uY3VzdG9tLWZpbGUtbGFiZWwsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkfi5jdXN0b20tZmlsZS1sYWJlbHtib3JkZXItY29sb3I6IzI4YTc0NX0uY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWQ6Zm9jdXN+LmN1c3RvbS1maWxlLWxhYmVsLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWx7Ym9yZGVyLWNvbG9yOiMyOGE3NDU7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDQwLDE2Nyw2OSwuMjUpfS5pbnZhbGlkLWZlZWRiYWNre2NvbG9yOiNkNDA1MTE7ZGlzcGxheTpub25lO2ZvbnQtc2l6ZTo4MCU7bWFyZ2luLXRvcDouMjVyZW07d2lkdGg6MTAwJX0uaW52YWxpZC10b29sdGlwe2JhY2tncm91bmQtY29sb3I6cmdiYSgyMTIsNSwxNywuOSk7Ym9yZGVyLXJhZGl1czouMjVyZW07Y29sb3I6I2ZmZjtkaXNwbGF5Om5vbmU7Zm9udC1zaXplOi44NzVyZW07bGVmdDowO2xpbmUtaGVpZ2h0OjEuNTttYXJnaW4tdG9wOi4xcmVtO21heC13aWR0aDoxMDAlO3BhZGRpbmc6LjI1cmVtIC41cmVtO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO3otaW5kZXg6NX0uZm9ybS1yb3c+LmNvbD4uaW52YWxpZC10b29sdGlwLC5mb3JtLXJvdz5bY2xhc3MqPWNvbC1dPi5pbnZhbGlkLXRvb2x0aXAsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLXJvdz4ubWt0b0NoZWNrYm94TGlzdD4uaW52YWxpZC10b29sdGlwLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAuZm9ybS1yb3c+Lm1rdG9IdG1sVGV4dD4uaW52YWxpZC10b29sdGlwLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tcm93Pi5ta3RvQ2hlY2tib3hMaXN0Pi5pbnZhbGlkLXRvb2x0aXAsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAuZm9ybS1yb3c+Lm1rdG9IdG1sVGV4dD4uaW52YWxpZC10b29sdGlwe2xlZnQ6NXB4fS5pcy1pbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLC5pcy1pbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXAsLndhcy12YWxpZGF0ZWQgOmludmFsaWR+LmludmFsaWQtZmVlZGJhY2ssLndhcy12YWxpZGF0ZWQgOmludmFsaWR+LmludmFsaWQtdG9vbHRpcHtkaXNwbGF5OmJsb2NrfS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCwuaXMtaW52YWxpZC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCBpbnB1dC5ta3RvRmllbGQ6aW52YWxpZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgc2VsZWN0Lm1rdG9GaWVsZDppbnZhbGlkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5ta3RvRmllbGQ6aW52YWxpZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQuaXMtaW52YWxpZC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5pcy1pbnZhbGlkLm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEuaXMtaW52YWxpZC5ta3RvRmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLndhcy12YWxpZGF0ZWQgaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOmludmFsaWQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuaXMtaW52YWxpZC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGQ6aW52YWxpZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwud2FzLXZhbGlkYXRlZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDppbnZhbGlkLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6aW52YWxpZCwud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6aW52YWxpZCwud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjppbnZhbGlkLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmludmFsaWQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLndhcy12YWxpZGF0ZWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkOmludmFsaWQsLndhcy12YWxpZGF0ZWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6aW52YWxpZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC53YXMtdmFsaWRhdGVkIGlucHV0Lm1rdG9GaWVsZDppbnZhbGlkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgc2VsZWN0Lm1rdG9GaWVsZDppbnZhbGlkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEubWt0b0ZpZWxkOmludmFsaWQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5pcy1pbnZhbGlkLm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5pcy1pbnZhbGlkLm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLmlzLWludmFsaWQubWt0b0ZpZWxke2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzRDQwNTExJyUzRSUzQ2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNFJTNDcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzRSUzQ2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM0Q0MDUxMScgc3Ryb2tlPSdub25lJy8lM0UlM0Mvc3ZnJTNFIik7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCBjYWxjKC4zNzVlbSArIC4xODc1cmVtKSBjZW50ZXI7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjYWxjKC43NWVtICsgLjM3NXJlbSkgY2FsYyguNzVlbSArIC4zNzVyZW0pO2JvcmRlci1jb2xvcjojZDQwNTExO3BhZGRpbmctcmlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSkhaW1wb3J0YW50fS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cywuaXMtaW52YWxpZC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyOmZvY3VzLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCBpbnB1dC5ta3RvRmllbGQ6aW52YWxpZDpmb2N1czppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgc2VsZWN0Lm1rdG9GaWVsZDppbnZhbGlkOmZvY3VzLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5ta3RvRmllbGQ6aW52YWxpZDpmb2N1cywubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQuaXMtaW52YWxpZC5ta3RvRmllbGQ6Zm9jdXM6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5pcy1pbnZhbGlkLm1rdG9GaWVsZDpmb2N1cywubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEuaXMtaW52YWxpZC5ta3RvRmllbGQ6Zm9jdXMsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLndhcy12YWxpZGF0ZWQgaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOmludmFsaWQ6Zm9jdXMsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuaXMtaW52YWxpZC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Zm9jdXMsLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGQ6aW52YWxpZDpmb2N1czppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwud2FzLXZhbGlkYXRlZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDppbnZhbGlkOmZvY3VzLC53YXMtdmFsaWRhdGVkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6aW52YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6aW52YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjppbnZhbGlkOmZvY3VzLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmludmFsaWQ6Zm9jdXM6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLndhcy12YWxpZGF0ZWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkOmludmFsaWQ6Zm9jdXMsLndhcy12YWxpZGF0ZWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQ6aW52YWxpZDpmb2N1cyxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC53YXMtdmFsaWRhdGVkIGlucHV0Lm1rdG9GaWVsZDppbnZhbGlkOmZvY3VzOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgc2VsZWN0Lm1rdG9GaWVsZDppbnZhbGlkOmZvY3VzLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEubWt0b0ZpZWxkOmludmFsaWQ6Zm9jdXMsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5pcy1pbnZhbGlkLm1rdG9GaWVsZDpmb2N1czppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5pcy1pbnZhbGlkLm1rdG9GaWVsZDpmb2N1cyxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLmlzLWludmFsaWQubWt0b0ZpZWxkOmZvY3Vze2JvcmRlci1jb2xvcjojZDQwNTExO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTIsNSwxNywuMjUpfS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCBzZWxlY3QubWt0b0ZpZWxkOmludmFsaWQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHNlbGVjdC5pcy1pbnZhbGlkLm1rdG9GaWVsZCwud2FzLXZhbGlkYXRlZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDppbnZhbGlkLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZDppbnZhbGlkLC53YXMtdmFsaWRhdGVkIHNlbGVjdC5mb3JtLWNvbnRyb2w6aW52YWxpZCwud2FzLXZhbGlkYXRlZCBzZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjppbnZhbGlkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgc2VsZWN0Lm1rdG9GaWVsZDppbnZhbGlkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0LmlzLWludmFsaWQubWt0b0ZpZWxkLHNlbGVjdC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxzZWxlY3QuaXMtaW52YWxpZC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVye2JhY2tncm91bmQtcG9zaXRpb246cmlnaHQgMS41cmVtIGNlbnRlcjtwYWRkaW5nLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5ta3RvRmllbGQ6aW52YWxpZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEuaXMtaW52YWxpZC5ta3RvRmllbGQsLndhcy12YWxpZGF0ZWQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZDppbnZhbGlkLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEubWt0b0ZpZWxkOmludmFsaWQsLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOmludmFsaWQsLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjppbnZhbGlkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEubWt0b0ZpZWxkOmludmFsaWQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5pcy1pbnZhbGlkLm1rdG9GaWVsZCx0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCx0ZXh0YXJlYS5pcy1pbnZhbGlkLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjp0b3AgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSkgcmlnaHQgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSk7cGFkZGluZy1yaWdodDpjYWxjKDEuNWVtICsgLjc1cmVtKX0uY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWR7YmFja2dyb3VuZDp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnJTNFJTNDcGF0aCBmaWxsPSclMjMzMzMnIGQ9J00yIDAgMCAyaDR6bTAgNUwwIDNoNHonLyUzRSUzQy9zdmclM0UiKSByaWdodCAuNzVyZW0gY2VudGVyLzhweCAxMHB4IG5vLXJlcGVhdCwjZmZmIHVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM0Q0MDUxMSclM0UlM0NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzRSUzQ3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM0UlM0NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNENDA1MTEnIHN0cm9rZT0nbm9uZScvJTNFJTNDL3N2ZyUzRSIpIGNlbnRlciByaWdodCAxLjc1cmVtL2NhbGMoLjc1ZW0gKyAuMzc1cmVtKSBjYWxjKC43NWVtICsgLjM3NXJlbSkgbm8tcmVwZWF0O2JvcmRlci1jb2xvcjojZDQwNTExO3BhZGRpbmctcmlnaHQ6Y2FsYyguNzVlbSArIDIuMzEyNXJlbSkhaW1wb3J0YW50fS5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6aW52YWxpZDpmb2N1c3tib3JkZXItY29sb3I6I2Q0MDUxMTtib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjEyLDUsMTcsLjI1KX0uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkfmxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkfmxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAud2FzLXZhbGlkYXRlZCBpbnB1dDppbnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAud2FzLXZhbGlkYXRlZCBpbnB1dDppbnZhbGlkfmxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dC5pcy1pbnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dC5pcy1pbnZhbGlkfmxhYmVsLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWR+LmZvcm0tY2hlY2stbGFiZWwsLndhcy12YWxpZGF0ZWQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWR+bGFiZWwsLndhcy12YWxpZGF0ZWQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OmludmFsaWR+LmZvcm0tY2hlY2stbGFiZWwsLndhcy12YWxpZGF0ZWQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OmludmFsaWR+bGFiZWwsLndhcy12YWxpZGF0ZWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkfmxhYmVsLC53YXMtdmFsaWRhdGVkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQ6aW52YWxpZH4uZm9ybS1jaGVjay1sYWJlbCwud2FzLXZhbGlkYXRlZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OmludmFsaWR+bGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkfmxhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZH5sYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC53YXMtdmFsaWRhdGVkIGlucHV0OmludmFsaWR+LmZvcm0tY2hlY2stbGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAud2FzLXZhbGlkYXRlZCBpbnB1dDppbnZhbGlkfmxhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQuaXMtaW52YWxpZH4uZm9ybS1jaGVjay1sYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0LmlzLWludmFsaWR+bGFiZWx7Y29sb3I6I2Q0MDUxMX0uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWR+LmludmFsaWQtdG9vbHRpcCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLndhcy12YWxpZGF0ZWQgaW5wdXQ6aW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLndhcy12YWxpZGF0ZWQgaW5wdXQ6aW52YWxpZH4uaW52YWxpZC10b29sdGlwLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dC5pcy1pbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dC5pcy1pbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXAsLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXAsLndhcy12YWxpZGF0ZWQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OmludmFsaWR+LmludmFsaWQtZmVlZGJhY2ssLndhcy12YWxpZGF0ZWQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OmludmFsaWR+LmludmFsaWQtdG9vbHRpcCwud2FzLXZhbGlkYXRlZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0OmludmFsaWR+LmludmFsaWQtZmVlZGJhY2ssLndhcy12YWxpZGF0ZWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBpbnB1dDppbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXAsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCAud2FzLXZhbGlkYXRlZCBpbnB1dDppbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLndhcy12YWxpZGF0ZWQgaW5wdXQ6aW52YWxpZH4uaW52YWxpZC10b29sdGlwLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQuaXMtaW52YWxpZH4uaW52YWxpZC1mZWVkYmFjayxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGlucHV0LmlzLWludmFsaWR+LmludmFsaWQtdG9vbHRpcHtkaXNwbGF5OmJsb2NrfS5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbCwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWx7Y29sb3I6I2Q0MDUxMX0uY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmV7Ym9yZGVyLWNvbG9yOiNkNDA1MTF9LmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiNmOTEzMjA7Ym9yZGVyLWNvbG9yOiNmOTEzMjB9LmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQ6Zm9jdXN+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpmb2N1c34uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTIsNSwxNywuMjUpfS5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCl+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpfi5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmV7Ym9yZGVyLWNvbG9yOiNkNDA1MTF9LmN1c3RvbS1maWxlLWlucHV0LmlzLWludmFsaWR+LmN1c3RvbS1maWxlLWxhYmVsLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkfi5jdXN0b20tZmlsZS1sYWJlbHtib3JkZXItY29sb3I6I2Q0MDUxMX0uY3VzdG9tLWZpbGUtaW5wdXQuaXMtaW52YWxpZDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWwsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQ6Zm9jdXN+LmN1c3RvbS1maWxlLWxhYmVse2JvcmRlci1jb2xvcjojZDQwNTExO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTIsNSwxNywuMjUpfS5mb3JtLWlubGluZSwuZm9ybS1zZWFyY2h7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6cm93IHdyYXB9LmZvcm0taW5saW5lIC5mb3JtLWNoZWNrLC5mb3JtLWlubGluZSAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QsLmZvcm0taW5saW5lIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QsLmZvcm0tc2VhcmNoIC5mb3JtLWNoZWNrLC5mb3JtLXNlYXJjaCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QsLmZvcm0tc2VhcmNoIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLWlubGluZSAubWt0b0NoZWNrYm94TGlzdCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tc2VhcmNoIC5ta3RvQ2hlY2tib3hMaXN0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0taW5saW5lIC5ta3RvQ2hlY2tib3hMaXN0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tc2VhcmNoIC5ta3RvQ2hlY2tib3hMaXN0e3dpZHRoOjEwMCV9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5mb3JtLWlubGluZSBsYWJlbCwuZm9ybS1zZWFyY2ggbGFiZWx7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1ib3R0b206MH0uZm9ybS1pbmxpbmUgLmZvcm0tZ3JvdXAsLmZvcm0tc2VhcmNoIC5mb3JtLWdyb3Vwe2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7ZmxleDowIDAgYXV0bztmbGV4LWZsb3c6cm93IHdyYXA7bWFyZ2luLWJvdHRvbTowfS5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sLC5mb3JtLWlubGluZSAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5mb3JtLWlubGluZSAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZCwuZm9ybS1pbmxpbmUgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZCwuZm9ybS1pbmxpbmUgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5mb3JtLWlubGluZSAuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwuZm9ybS1pbmxpbmUgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLmZvcm0taW5saW5lIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZCwuZm9ybS1pbmxpbmUgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQsLmZvcm0tc2VhcmNoIC5mb3JtLWNvbnRyb2wsLmZvcm0tc2VhcmNoIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLmZvcm0tc2VhcmNoIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkLC5mb3JtLXNlYXJjaCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEubWt0b0ZpZWxkLC5mb3JtLXNlYXJjaCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLmZvcm0tc2VhcmNoIC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5mb3JtLXNlYXJjaCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwuZm9ybS1zZWFyY2ggYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkLC5mb3JtLXNlYXJjaCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0taW5saW5lIGlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0taW5saW5lIHNlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLWlubGluZSB0ZXh0YXJlYS5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLXNlYXJjaCBpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLXNlYXJjaCBzZWxlY3QubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1zZWFyY2ggdGV4dGFyZWEubWt0b0ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5mb3JtLWlubGluZSBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmZvcm0tc2VhcmNoIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLWlubGluZSBpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1pbmxpbmUgc2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLWlubGluZSB0ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1zZWFyY2ggaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tc2VhcmNoIHNlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1zZWFyY2ggdGV4dGFyZWEubWt0b0ZpZWxke2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDphdXRvfS5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sLXBsYWludGV4dCwuZm9ybS1zZWFyY2ggLmZvcm0tY29udHJvbC1wbGFpbnRleHR7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmZvcm0taW5saW5lIC5jdXN0b20tc2VsZWN0LC5mb3JtLWlubGluZSAuaW5wdXQtZ3JvdXAsLmZvcm0tc2VhcmNoIC5jdXN0b20tc2VsZWN0LC5mb3JtLXNlYXJjaCAuaW5wdXQtZ3JvdXB7d2lkdGg6YXV0b30uZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2ssLmZvcm0taW5saW5lIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCwuZm9ybS1pbmxpbmUgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCwuZm9ybS1zZWFyY2ggLmZvcm0tY2hlY2ssLmZvcm0tc2VhcmNoIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCwuZm9ybS1zZWFyY2ggYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0taW5saW5lIC5ta3RvQ2hlY2tib3hMaXN0LC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1zZWFyY2ggLm1rdG9DaGVja2JveExpc3QsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1pbmxpbmUgLm1rdG9DaGVja2JveExpc3QsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1zZWFyY2ggLm1rdG9DaGVja2JveExpc3R7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctbGVmdDowO3dpZHRoOmF1dG99LmZvcm0taW5saW5lIC5mb3JtLWNoZWNrLWlucHV0LC5mb3JtLWlubGluZSAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQsLmZvcm0taW5saW5lIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQsLmZvcm0tc2VhcmNoIC5mb3JtLWNoZWNrLWlucHV0LC5mb3JtLXNlYXJjaCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQsLmZvcm0tc2VhcmNoIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgaW5wdXQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IC5mb3JtLWlubGluZSBpbnB1dCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLmZvcm0tc2VhcmNoIGlucHV0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLmZvcm0taW5saW5lIGlucHV0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3QgLmZvcm0tc2VhcmNoIGlucHV0e2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6LjI1cmVtO21hcmdpbi10b3A6MDtwb3NpdGlvbjpyZWxhdGl2ZX0uZm9ybS1pbmxpbmUgLmN1c3RvbS1jb250cm9sLC5mb3JtLXNlYXJjaCAuY3VzdG9tLWNvbnRyb2x7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbC1sYWJlbCwuZm9ybS1zZWFyY2ggLmN1c3RvbS1jb250cm9sLWxhYmVse21hcmdpbi1ib3R0b206MH19LmJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAubWt0b1JvdW5kIGJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwLm1rdG9Sb3VuZCBidXR0b24ubWt0b0J1dHRvbixib2R5PiNvdC1zZGstYnRue2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOi4yNXJlbTtjb2xvcjpyZ2JhKDAsMCwwLC45KTtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MXJlbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6LjM3NXJlbSAuNzVyZW07dGV4dC1hbGlnbjpjZW50ZXI7dHJhbnNpdGlvbjpjb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuYnRuLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcC5ta3RvUm91bmQgYnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAubWt0b1JvdW5kIGJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk+I290LXNkay1idG57dHJhbnNpdGlvbjpub25lfX0uYnRuOmhvdmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b246aG92ZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b246aG92ZXIsYm9keT4jb3Qtc2RrLWJ0bjpob3Zlcntjb2xvcjpyZ2JhKDAsMCwwLC45KTt0ZXh0LWRlY29yYXRpb246bm9uZX0uYnRuLmZvY3VzLC5idG46Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24uZm9jdXMubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOmZvY3VzLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5mb2N1cy5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOmZvY3VzLGJvZHk+I290LXNkay1idG46Zm9jdXMsYm9keT4uZm9jdXMjb3Qtc2RrLWJ0bntib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjEyLDUsMTcsLjI1KTtvdXRsaW5lOjB9LmJ0bi5kaXNhYmxlZCwuYnRuOmRpc2FibGVkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLmRpc2FibGVkLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpkaXNhYmxlZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24uZGlzYWJsZWQubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpkaXNhYmxlZCxib2R5PiNvdC1zZGstYnRuOmRpc2FibGVkLGJvZHk+LmRpc2FibGVkI290LXNkay1idG57b3BhY2l0eTouNjV9LmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLGJvZHk+I290LXNkay1idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCl7Y3Vyc29yOnBvaW50ZXJ9YS5idG4uZGlzYWJsZWQsYm9keT5hLmRpc2FibGVkI290LXNkay1idG4sZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4sZmllbGRzZXQ6ZGlzYWJsZWQgYm9keT5hI290LXNkay1idG57cG9pbnRlci1ldmVudHM6bm9uZX0uYnRuLXByaW1hcnksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwLm1rdG9Sb3VuZCBidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcC5ta3RvUm91bmQgYnV0dG9uLm1rdG9CdXR0b24sYm9keT4jb3Qtc2RrLWJ0bntiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTE7Ym9yZGVyLWNvbG9yOiNkNDA1MTE7Y29sb3I6I2ZmZn0uYnRuLXByaW1hcnk6aG92ZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpob3Zlcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpob3Zlcixib2R5PiNvdC1zZGstYnRuOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2FmMDQwZTtib3JkZXItY29sb3I6I2EyMDQwZDtjb2xvcjojZmZmfS5idG4tcHJpbWFyeS5mb2N1cywuYnRuLXByaW1hcnk6Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24uZm9jdXMubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOmZvY3VzLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5mb2N1cy5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOmZvY3VzLGJvZHk+I290LXNkay1idG46Zm9jdXMsYm9keT4uZm9jdXMjb3Qtc2RrLWJ0bntiYWNrZ3JvdW5kLWNvbG9yOiNhZjA0MGU7Ym9yZGVyLWNvbG9yOiNhMjA0MGQ7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDIxOCw0Myw1MywuNSk7Y29sb3I6I2ZmZn0uYnRuLXByaW1hcnkuZGlzYWJsZWQsLmJ0bi1wcmltYXJ5OmRpc2FibGVkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLmRpc2FibGVkLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpkaXNhYmxlZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24uZGlzYWJsZWQubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpkaXNhYmxlZCxib2R5PiNvdC1zZGstYnRuOmRpc2FibGVkLGJvZHk+LmRpc2FibGVkI290LXNkay1idG57YmFja2dyb3VuZC1jb2xvcjojZDQwNTExO2JvcmRlci1jb2xvcjojZDQwNTExO2NvbG9yOiNmZmZ9LmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwuYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLnNob3c+YnV0dG9uLmRyb3Bkb3duLXRvZ2dsZS5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b246bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b246bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGUsYm9keS5zaG93Pi5kcm9wZG93bi10b2dnbGUjb3Qtc2RrLWJ0bixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuc2hvdz5idXR0b24uZHJvcGRvd24tdG9nZ2xlLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b246bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxib2R5PiNvdC1zZGstYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxib2R5PiNvdC1zZGstYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNhMjA0MGQ7Ym9yZGVyLWNvbG9yOiM5NjA0MGM7Y29sb3I6I2ZmZn0uYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuc2hvdz5idXR0b24uZHJvcGRvd24tdG9nZ2xlLm1rdG9CdXR0b246Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxib2R5LnNob3c+LmRyb3Bkb3duLXRvZ2dsZSNvdC1zZGstYnRuOmZvY3VzLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5zaG93PmJ1dHRvbi5kcm9wZG93bi10b2dnbGUubWt0b0J1dHRvbjpmb2N1cyxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b246bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLGJvZHk+I290LXNkay1idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLGJvZHk+I290LXNkay1idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTgsNDMsNTMsLjUpfS5idG4tc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6IzY2Njtib3JkZXItY29sb3I6IzY2Njtjb2xvcjojZmZmfS5idG4tc2Vjb25kYXJ5LmZvY3VzLC5idG4tc2Vjb25kYXJ5OmZvY3VzLC5idG4tc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQtY29sb3I6IzUzNTM1Mztib3JkZXItY29sb3I6IzRkNGQ0ZDtjb2xvcjojZmZmfS5idG4tc2Vjb25kYXJ5LmZvY3VzLC5idG4tc2Vjb25kYXJ5OmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gaHNsYSgwLDAlLDQ5JSwuNSl9LmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQsLmJ0bi1zZWNvbmRhcnk6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjojNjY2O2JvcmRlci1jb2xvcjojNjY2O2NvbG9yOiNmZmZ9LmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGV7YmFja2dyb3VuZC1jb2xvcjojNGQ0ZDRkO2JvcmRlci1jb2xvcjojNDY0NjQ2O2NvbG9yOiNmZmZ9LmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSBoc2xhKDAsMCUsNDklLC41KX0uYnRuLXN1Y2Nlc3N7YmFja2dyb3VuZC1jb2xvcjojMjhhNzQ1O2JvcmRlci1jb2xvcjojMjhhNzQ1O2NvbG9yOiNmZmZ9LmJ0bi1zdWNjZXNzLmZvY3VzLC5idG4tc3VjY2Vzczpmb2N1cywuYnRuLXN1Y2Nlc3M6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjE4ODM4O2JvcmRlci1jb2xvcjojMWU3ZTM0O2NvbG9yOiNmZmZ9LmJ0bi1zdWNjZXNzLmZvY3VzLC5idG4tc3VjY2Vzczpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNzIsMTgwLDk3LC41KX0uYnRuLXN1Y2Nlc3MuZGlzYWJsZWQsLmJ0bi1zdWNjZXNzOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6IzI4YTc0NTtib3JkZXItY29sb3I6IzI4YTc0NTtjb2xvcjojZmZmfS5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6IzFlN2UzNDtib3JkZXItY29sb3I6IzFjNzQzMDtjb2xvcjojZmZmfS5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg3MiwxODAsOTcsLjUpfS5idG4taW5mb3tiYWNrZ3JvdW5kLWNvbG9yOiMxN2EyYjg7Ym9yZGVyLWNvbG9yOiMxN2EyYjg7Y29sb3I6I2ZmZn0uYnRuLWluZm8uZm9jdXMsLmJ0bi1pbmZvOmZvY3VzLC5idG4taW5mbzpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMxMzg0OTY7Ym9yZGVyLWNvbG9yOiMxMTdhOGI7Y29sb3I6I2ZmZn0uYnRuLWluZm8uZm9jdXMsLmJ0bi1pbmZvOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg1OCwxNzYsMTk1LC41KX0uYnRuLWluZm8uZGlzYWJsZWQsLmJ0bi1pbmZvOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6IzE3YTJiODtib3JkZXItY29sb3I6IzE3YTJiODtjb2xvcjojZmZmfS5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6IzExN2E4Yjtib3JkZXItY29sb3I6IzEwNzA3Zjtjb2xvcjojZmZmfS5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg1OCwxNzYsMTk1LC41KX0uYnRuLXdhcm5pbmd7YmFja2dyb3VuZC1jb2xvcjojZmMwO2JvcmRlci1jb2xvcjojZmMwO2NvbG9yOiMyMTI1Mjl9LmJ0bi13YXJuaW5nLmZvY3VzLC5idG4td2FybmluZzpmb2N1cywuYnRuLXdhcm5pbmc6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZDlhZDAwO2JvcmRlci1jb2xvcjojY2NhMzAwO2NvbG9yOiMyMTI1Mjl9LmJ0bi13YXJuaW5nLmZvY3VzLC5idG4td2FybmluZzpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjIyLDE3OSw2LC41KX0uYnRuLXdhcm5pbmcuZGlzYWJsZWQsLmJ0bi13YXJuaW5nOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6I2ZjMDtib3JkZXItY29sb3I6I2ZjMDtjb2xvcjojMjEyNTI5fS5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6I2NjYTMwMDtib3JkZXItY29sb3I6I2JmOTkwMDtjb2xvcjojMjEyNTI5fS5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMjIsMTc5LDYsLjUpfS5idG4tZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtib3JkZXItY29sb3I6I2Q0MDUxMTtjb2xvcjojZmZmfS5idG4tZGFuZ2VyLmZvY3VzLC5idG4tZGFuZ2VyOmZvY3VzLC5idG4tZGFuZ2VyOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2FmMDQwZTtib3JkZXItY29sb3I6I2EyMDQwZDtjb2xvcjojZmZmfS5idG4tZGFuZ2VyLmZvY3VzLC5idG4tZGFuZ2VyOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTgsNDMsNTMsLjUpfS5idG4tZGFuZ2VyLmRpc2FibGVkLC5idG4tZGFuZ2VyOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtib3JkZXItY29sb3I6I2Q0MDUxMTtjb2xvcjojZmZmfS5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6I2EyMDQwZDtib3JkZXItY29sb3I6Izk2MDQwYztjb2xvcjojZmZmfS5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTgsNDMsNTMsLjUpfS5idG4tZGVmYXVsdCwuYnRuLWxpZ2h0e2JhY2tncm91bmQtY29sb3I6I2YyZjJmMjtib3JkZXItY29sb3I6I2YyZjJmMjtjb2xvcjojMjEyNTI5fS5idG4tZGVmYXVsdDpob3ZlciwuYnRuLWxpZ2h0OmhvdmVye2JhY2tncm91bmQtY29sb3I6I2RmZGZkZjtib3JkZXItY29sb3I6I2Q5ZDlkOTtjb2xvcjojMjEyNTI5fS5idG4tZGVmYXVsdDpmb2N1cywuYnRuLWxpZ2h0LmZvY3VzLC5idG4tbGlnaHQ6Zm9jdXMsLmZvY3VzLmJ0bi1kZWZhdWx0e2JhY2tncm91bmQtY29sb3I6I2RmZGZkZjtib3JkZXItY29sb3I6I2Q5ZDlkOTtib3gtc2hhZG93OjAgMCAwIC4ycmVtIGhzbGEoMjQwLDElLDgzJSwuNSk7Y29sb3I6IzIxMjUyOX0uYnRuLWRlZmF1bHQ6ZGlzYWJsZWQsLmJ0bi1saWdodC5kaXNhYmxlZCwuYnRuLWxpZ2h0OmRpc2FibGVkLC5kaXNhYmxlZC5idG4tZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjI7Ym9yZGVyLWNvbG9yOiNmMmYyZjI7Y29sb3I6IzIxMjUyOX0uYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGUsLnNob3c+LmRyb3Bkb3duLXRvZ2dsZS5idG4tZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNkOWQ5ZDk7Ym9yZGVyLWNvbG9yOiNkMmQyZDI7Y29sb3I6IzIxMjUyOX0uYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXMsLnNob3c+LmRyb3Bkb3duLXRvZ2dsZS5idG4tZGVmYXVsdDpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIGhzbGEoMjQwLDElLDgzJSwuNSl9LmJ0bi1kYXJre2JhY2tncm91bmQtY29sb3I6IzMzMztib3JkZXItY29sb3I6IzMzMztjb2xvcjojZmZmfS5idG4tZGFyay5mb2N1cywuYnRuLWRhcms6Zm9jdXMsLmJ0bi1kYXJrOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzIwMjAyMDtib3JkZXItY29sb3I6IzFhMWExYTtjb2xvcjojZmZmfS5idG4tZGFyay5mb2N1cywuYnRuLWRhcms6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDgyLDgyLDgyLC41KX0uYnRuLWRhcmsuZGlzYWJsZWQsLmJ0bi1kYXJrOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6IzMzMztib3JkZXItY29sb3I6IzMzMztjb2xvcjojZmZmfS5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6IzFhMWExYTtib3JkZXItY29sb3I6IzEzMTMxMztjb2xvcjojZmZmfS5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg4Miw4Miw4MiwuNSl9LmJ0bi1vdXRsaW5lLXByaW1hcnl7Ym9yZGVyLWNvbG9yOiNkNDA1MTE7Y29sb3I6I2Q0MDUxMX0uYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTE7Ym9yZGVyLWNvbG9yOiNkNDA1MTE7Y29sb3I6I2ZmZn0uYnRuLW91dGxpbmUtcHJpbWFyeS5mb2N1cywuYnRuLW91dGxpbmUtcHJpbWFyeTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjEyLDUsMTcsLjUpfS5idG4tb3V0bGluZS1wcmltYXJ5LmRpc2FibGVkLC5idG4tb3V0bGluZS1wcmltYXJ5OmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Y29sb3I6I2Q0MDUxMX0uYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZXtiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTE7Ym9yZGVyLWNvbG9yOiNkNDA1MTE7Y29sb3I6I2ZmZn0uYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLC5zaG93Pi5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjEyLDUsMTcsLjUpfS5idG4tb3V0bGluZS1zZWNvbmRhcnl7Ym9yZGVyLWNvbG9yOiM2NjY7Y29sb3I6IzY2Nn0uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQtY29sb3I6IzY2Njtib3JkZXItY29sb3I6IzY2Njtjb2xvcjojZmZmfS5idG4tb3V0bGluZS1zZWNvbmRhcnkuZm9jdXMsLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIGhzbGEoMCwwJSw0MCUsLjUpfS5idG4tb3V0bGluZS1zZWNvbmRhcnkuZGlzYWJsZWQsLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOiM2NjZ9LmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGV7YmFja2dyb3VuZC1jb2xvcjojNjY2O2JvcmRlci1jb2xvcjojNjY2O2NvbG9yOiNmZmZ9LmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSBoc2xhKDAsMCUsNDAlLC41KX0uYnRuLW91dGxpbmUtc3VjY2Vzc3tib3JkZXItY29sb3I6IzI4YTc0NTtjb2xvcjojMjhhNzQ1fS5idG4tb3V0bGluZS1zdWNjZXNzOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzI4YTc0NTtib3JkZXItY29sb3I6IzI4YTc0NTtjb2xvcjojZmZmfS5idG4tb3V0bGluZS1zdWNjZXNzLmZvY3VzLC5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg0MCwxNjcsNjksLjUpfS5idG4tb3V0bGluZS1zdWNjZXNzLmRpc2FibGVkLC5idG4tb3V0bGluZS1zdWNjZXNzOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Y29sb3I6IzI4YTc0NX0uYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZXtiYWNrZ3JvdW5kLWNvbG9yOiMyOGE3NDU7Ym9yZGVyLWNvbG9yOiMyOGE3NDU7Y29sb3I6I2ZmZn0uYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLC5zaG93Pi5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNDAsMTY3LDY5LC41KX0uYnRuLW91dGxpbmUtaW5mb3tib3JkZXItY29sb3I6IzE3YTJiODtjb2xvcjojMTdhMmI4fS5idG4tb3V0bGluZS1pbmZvOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzE3YTJiODtib3JkZXItY29sb3I6IzE3YTJiODtjb2xvcjojZmZmfS5idG4tb3V0bGluZS1pbmZvLmZvY3VzLC5idG4tb3V0bGluZS1pbmZvOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMywxNjIsMTg0LC41KX0uYnRuLW91dGxpbmUtaW5mby5kaXNhYmxlZCwuYnRuLW91dGxpbmUtaW5mbzpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOiMxN2EyYjh9LmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGV7YmFja2dyb3VuZC1jb2xvcjojMTdhMmI4O2JvcmRlci1jb2xvcjojMTdhMmI4O2NvbG9yOiNmZmZ9LmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDIzLDE2MiwxODQsLjUpfS5idG4tb3V0bGluZS13YXJuaW5ne2JvcmRlci1jb2xvcjojZmMwO2NvbG9yOiNmYzB9LmJ0bi1vdXRsaW5lLXdhcm5pbmc6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmMwO2JvcmRlci1jb2xvcjojZmMwO2NvbG9yOiMyMTI1Mjl9LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZm9jdXMsLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDI1NSwyMDQsMCwuNSl9LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZGlzYWJsZWQsLmJ0bi1vdXRsaW5lLXdhcm5pbmc6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjb2xvcjojZmMwfS5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6I2ZjMDtib3JkZXItY29sb3I6I2ZjMDtjb2xvcjojMjEyNTI5fS5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyNTUsMjA0LDAsLjUpfS5idG4tb3V0bGluZS1kYW5nZXJ7Ym9yZGVyLWNvbG9yOiNkNDA1MTE7Y29sb3I6I2Q0MDUxMX0uYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtib3JkZXItY29sb3I6I2Q0MDUxMTtjb2xvcjojZmZmfS5idG4tb3V0bGluZS1kYW5nZXIuZm9jdXMsLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjEyLDUsMTcsLjUpfS5idG4tb3V0bGluZS1kYW5nZXIuZGlzYWJsZWQsLmJ0bi1vdXRsaW5lLWRhbmdlcjpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOiNkNDA1MTF9LmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGV7YmFja2dyb3VuZC1jb2xvcjojZDQwNTExO2JvcmRlci1jb2xvcjojZDQwNTExO2NvbG9yOiNmZmZ9LmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGU6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDIxMiw1LDE3LC41KX0uYnRuLW91dGxpbmUtbGlnaHR7Ym9yZGVyLWNvbG9yOiNmMmYyZjI7Y29sb3I6I2YyZjJmMn0uYnRuLW91dGxpbmUtbGlnaHQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjJmMmYyO2JvcmRlci1jb2xvcjojZjJmMmYyO2NvbG9yOiMyMTI1Mjl9LmJ0bi1vdXRsaW5lLWxpZ2h0LmZvY3VzLC5idG4tb3V0bGluZS1saWdodDpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIGhzbGEoMCwwJSw5NSUsLjUpfS5idG4tb3V0bGluZS1saWdodC5kaXNhYmxlZCwuYnRuLW91dGxpbmUtbGlnaHQ6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjb2xvcjojZjJmMmYyfS5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLW91dGxpbmUtbGlnaHQuZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6I2YyZjJmMjtib3JkZXItY29sb3I6I2YyZjJmMjtjb2xvcjojMjEyNTI5fS5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLW91dGxpbmUtbGlnaHQuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gaHNsYSgwLDAlLDk1JSwuNSl9LmJ0bi1vdXRsaW5lLWRhcmt7Ym9yZGVyLWNvbG9yOiMzMzM7Y29sb3I6IzMzM30uYnRuLW91dGxpbmUtZGFyazpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMzMzM7Ym9yZGVyLWNvbG9yOiMzMzM7Y29sb3I6I2ZmZn0uYnRuLW91dGxpbmUtZGFyay5mb2N1cywuYnRuLW91dGxpbmUtZGFyazpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNTEsNTEsNTEsLjUpfS5idG4tb3V0bGluZS1kYXJrLmRpc2FibGVkLC5idG4tb3V0bGluZS1kYXJrOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Y29sb3I6IzMzM30uYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZXtiYWNrZ3JvdW5kLWNvbG9yOiMzMzM7Ym9yZGVyLWNvbG9yOiMzMzM7Y29sb3I6I2ZmZn0uYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLC5zaG93Pi5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNTEsNTEsNTEsLjUpfS5idG4tbGlua3tjb2xvcjojZDQwNTExO2ZvbnQtd2VpZ2h0OjQwMDt0ZXh0LWRlY29yYXRpb246bm9uZX0uYnRuLWxpbms6aG92ZXJ7Y29sb3I6Izg5MDMwYn0uYnRuLWxpbmsuZm9jdXMsLmJ0bi1saW5rOmZvY3VzLC5idG4tbGluazpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5idG4tbGluay5kaXNhYmxlZCwuYnRuLWxpbms6ZGlzYWJsZWR7Y29sb3I6IzY2Njtwb2ludGVyLWV2ZW50czpub25lfS5idG4tZ3JvdXAtbGc+LmJ0biwuYnRuLWxnLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcC5ta3RvUm91bmQgYnV0dG9uLm1rdG9CdXR0b24sYm9keS5idG4tZ3JvdXAtbGc+I290LXNkay1idG4sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAubWt0b1JvdW5kIGJ1dHRvbi5ta3RvQnV0dG9ue2JvcmRlci1yYWRpdXM6LjNyZW07Zm9udC1zaXplOjEuMjVyZW07bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6LjVyZW0gMXJlbX0uYnRuLWdyb3VwLXNtPi5idG4sLmJ0bi1zbSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtc20+YnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC1zbT5idXR0b24ubWt0b0J1dHRvbixib2R5PiNvdC1zZGstYnRue2JvcmRlci1yYWRpdXM6LjJyZW07Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6LjI1cmVtIC41cmVtfS5idG4tYmxvY2t7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlfS5idG4tYmxvY2srLmJ0bi1ibG9ja3ttYXJnaW4tdG9wOi41cmVtfWlucHV0W3R5cGU9YnV0dG9uXS5idG4tYmxvY2ssaW5wdXRbdHlwZT1yZXNldF0uYnRuLWJsb2NrLGlucHV0W3R5cGU9c3VibWl0XS5idG4tYmxvY2t7d2lkdGg6MTAwJX0uZmFkZXt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBsaW5lYXJ9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmZhZGV7dHJhbnNpdGlvbjpub25lfX0uZmFkZTpub3QoLnNob3cpe29wYWNpdHk6MH0uY29sbGFwc2U6bm90KC5zaG93KXtkaXNwbGF5Om5vbmV9LmNvbGxhcHNpbmd7aGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246aGVpZ2h0IC4zNXMgZWFzZX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuY29sbGFwc2luZ3t0cmFuc2l0aW9uOm5vbmV9fS5jb2xsYXBzaW5nLndpZHRoe2hlaWdodDphdXRvO3RyYW5zaXRpb246d2lkdGggLjM1cyBlYXNlO3dpZHRoOjB9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmNvbGxhcHNpbmcud2lkdGh7dHJhbnNpdGlvbjpub25lfX0uZHJvcGRvd24sLmRyb3BsZWZ0LC5kcm9wcmlnaHQsLmRyb3B1cHtwb3NpdGlvbjpyZWxhdGl2ZX0uZHJvcGRvd24tdG9nZ2xle3doaXRlLXNwYWNlOm5vd3JhcH0uZHJvcGRvd24tdG9nZ2xlOmFmdGVye2JvcmRlci1ib3R0b206MDtib3JkZXItbGVmdDouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6LjNlbSBzb2xpZDtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0Oi4yNTVlbTt2ZXJ0aWNhbC1hbGlnbjouMjU1ZW19LmRyb3Bkb3duLXRvZ2dsZTplbXB0eTphZnRlcnttYXJnaW4tbGVmdDowfS5kcm9wZG93bi1tZW51e2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xNSk7Ym9yZGVyLXJhZGl1czouMjVyZW07Y29sb3I6cmdiYSgwLDAsMCwuOSk7ZGlzcGxheTpub25lO2Zsb2F0OmxlZnQ7Zm9udC1zaXplOjFyZW07bGVmdDowO2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46LjEyNXJlbSAwIDA7bWluLXdpZHRoOjEwcmVtO3BhZGRpbmc6LjVyZW0gMDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmxlZnQ7dG9wOjEwMCU7ei1pbmRleDoxMDAwfS5kcm9wZG93bi1tZW51LWxlZnR7bGVmdDowO3JpZ2h0OmF1dG99LmRyb3Bkb3duLW1lbnUtcmlnaHR7bGVmdDphdXRvO3JpZ2h0OjB9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5kcm9wZG93bi1tZW51LXNtLWxlZnR7bGVmdDowO3JpZ2h0OmF1dG99LmRyb3Bkb3duLW1lbnUtc20tcmlnaHR7bGVmdDphdXRvO3JpZ2h0OjB9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuZHJvcGRvd24tbWVudS1tZC1sZWZ0e2xlZnQ6MDtyaWdodDphdXRvfS5kcm9wZG93bi1tZW51LW1kLXJpZ2h0e2xlZnQ6YXV0bztyaWdodDowfX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7LmRyb3Bkb3duLW1lbnUtbGctbGVmdHtsZWZ0OjA7cmlnaHQ6YXV0b30uZHJvcGRvd24tbWVudS1sZy1yaWdodHtsZWZ0OmF1dG87cmlnaHQ6MH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuZHJvcGRvd24tbWVudS14bC1sZWZ0e2xlZnQ6MDtyaWdodDphdXRvfS5kcm9wZG93bi1tZW51LXhsLXJpZ2h0e2xlZnQ6YXV0bztyaWdodDowfX0uZHJvcHVwIC5kcm9wZG93bi1tZW51e2JvdHRvbToxMDAlO21hcmdpbi1ib3R0b206LjEyNXJlbTttYXJnaW4tdG9wOjA7dG9wOmF1dG99LmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOmFmdGVye2JvcmRlci1ib3R0b206LjNlbSBzb2xpZDtib3JkZXItbGVmdDouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6MDtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0Oi4yNTVlbTt2ZXJ0aWNhbC1hbGlnbjouMjU1ZW19LmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OmFmdGVye21hcmdpbi1sZWZ0OjB9LmRyb3ByaWdodCAuZHJvcGRvd24tbWVudXtsZWZ0OjEwMCU7bWFyZ2luLWxlZnQ6LjEyNXJlbTttYXJnaW4tdG9wOjA7cmlnaHQ6YXV0bzt0b3A6MH0uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1sZWZ0Oi4zZW0gc29saWQ7Ym9yZGVyLXJpZ2h0OjA7Ym9yZGVyLXRvcDouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6LjI1NWVtO3ZlcnRpY2FsLWFsaWduOi4yNTVlbX0uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6YWZ0ZXJ7bWFyZ2luLWxlZnQ6MH0uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6YWZ0ZXJ7dmVydGljYWwtYWxpZ246MH0uZHJvcGxlZnQgLmRyb3Bkb3duLW1lbnV7bGVmdDphdXRvO21hcmdpbi1yaWdodDouMTI1cmVtO21hcmdpbi10b3A6MDtyaWdodDoxMDAlO3RvcDowfS5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOmFmdGVye2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7ZGlzcGxheTpub25lO21hcmdpbi1sZWZ0Oi4yNTVlbTt2ZXJ0aWNhbC1hbGlnbjouMjU1ZW19LmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6YmVmb3Jle2JvcmRlci1ib3R0b206LjNlbSBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6LjNlbSBzb2xpZDtib3JkZXItdG9wOi4zZW0gc29saWQgdHJhbnNwYXJlbnQ7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tcmlnaHQ6LjI1NWVtO3ZlcnRpY2FsLWFsaWduOi4yNTVlbX0uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTphZnRlcnttYXJnaW4tbGVmdDowfS5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOmJlZm9yZXt2ZXJ0aWNhbC1hbGlnbjowfS5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1ib3R0b21dLC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1sZWZ0XSwuZHJvcGRvd24tbWVudVt4LXBsYWNlbWVudF49cmlnaHRdLC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj10b3Bde2JvdHRvbTphdXRvO3JpZ2h0OmF1dG99LmRyb3Bkb3duLWRpdmlkZXJ7Ym9yZGVyLXRvcDoxcHggc29saWQgI2ViZWJlYjtoZWlnaHQ6MDttYXJnaW46LjVyZW0gMDtvdmVyZmxvdzpoaWRkZW59LmRyb3Bkb3duLWl0ZW17YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MDtjbGVhcjpib3RoO2NvbG9yOiMyMTI1Mjk7ZGlzcGxheTpibG9jaztmb250LXdlaWdodDo0MDA7cGFkZGluZzouMjVyZW0gMS41cmVtO3RleHQtYWxpZ246aW5oZXJpdDt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6MTAwJX0uZHJvcGRvd24taXRlbTpmb2N1cywuZHJvcGRvd24taXRlbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjI7Y29sb3I6IzE2MTgxYjt0ZXh0LWRlY29yYXRpb246bm9uZX0uZHJvcGRvd24taXRlbS5hY3RpdmUsLmRyb3Bkb3duLWl0ZW06YWN0aXZle2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtjb2xvcjojZmZmO3RleHQtZGVjb3JhdGlvbjpub25lfS5kcm9wZG93bi1pdGVtLmRpc2FibGVkLC5kcm9wZG93bi1pdGVtOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Y29sb3I6IzY2Njtwb2ludGVyLWV2ZW50czpub25lfS5kcm9wZG93bi1tZW51LnNob3d7ZGlzcGxheTpibG9ja30uZHJvcGRvd24taGVhZGVye2NvbG9yOiM2NjY7ZGlzcGxheTpibG9jaztmb250LXNpemU6Ljg3NXJlbTttYXJnaW4tYm90dG9tOjA7cGFkZGluZzouNXJlbSAxLjVyZW07d2hpdGUtc3BhY2U6bm93cmFwfS5kcm9wZG93bi1pdGVtLXRleHR7Y29sb3I6IzIxMjUyOTtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6LjI1cmVtIDEuNXJlbX0uYnRuLWdyb3VwLC5idG4tZ3JvdXAtdmVydGljYWx7ZGlzcGxheTppbmxpbmUtZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLC5idG4tZ3JvdXA+LmJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdmVydGljYWw+YnV0dG9uLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwPmJ1dHRvbi5ta3RvQnV0dG9uLGJvZHkuYnRuLWdyb3VwLXZlcnRpY2FsPiNvdC1zZGstYnRuLGJvZHkuYnRuLWdyb3VwPiNvdC1zZGstYnRuLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdmVydGljYWw+YnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD5idXR0b24ubWt0b0J1dHRvbntmbGV4OjEgMSBhdXRvO3Bvc2l0aW9uOnJlbGF0aXZlfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi5hY3RpdmUsLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmFjdGl2ZSwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46Zm9jdXMsLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmhvdmVyLC5idG4tZ3JvdXA+LmJ0bi5hY3RpdmUsLmJ0bi1ncm91cD4uYnRuOmFjdGl2ZSwuYnRuLWdyb3VwPi5idG46Zm9jdXMsLmJ0bi1ncm91cD4uYnRuOmhvdmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbD5idXR0b24uYWN0aXZlLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsPmJ1dHRvbi5ta3RvQnV0dG9uOmFjdGl2ZSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdmVydGljYWw+YnV0dG9uLm1rdG9CdXR0b246Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsPmJ1dHRvbi5ta3RvQnV0dG9uOmhvdmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD5idXR0b24uYWN0aXZlLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwPmJ1dHRvbi5ta3RvQnV0dG9uOmFjdGl2ZSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXA+YnV0dG9uLm1rdG9CdXR0b246Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwPmJ1dHRvbi5ta3RvQnV0dG9uOmhvdmVyLGJvZHkuYnRuLWdyb3VwLXZlcnRpY2FsPiNvdC1zZGstYnRuOmFjdGl2ZSxib2R5LmJ0bi1ncm91cC12ZXJ0aWNhbD4jb3Qtc2RrLWJ0bjpmb2N1cyxib2R5LmJ0bi1ncm91cC12ZXJ0aWNhbD4jb3Qtc2RrLWJ0bjpob3Zlcixib2R5LmJ0bi1ncm91cC12ZXJ0aWNhbD4uYWN0aXZlI290LXNkay1idG4sYm9keS5idG4tZ3JvdXA+I290LXNkay1idG46YWN0aXZlLGJvZHkuYnRuLWdyb3VwPiNvdC1zZGstYnRuOmZvY3VzLGJvZHkuYnRuLWdyb3VwPiNvdC1zZGstYnRuOmhvdmVyLGJvZHkuYnRuLWdyb3VwPi5hY3RpdmUjb3Qtc2RrLWJ0bixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsPmJ1dHRvbi5hY3RpdmUubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsPmJ1dHRvbi5ta3RvQnV0dG9uOmFjdGl2ZSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsPmJ1dHRvbi5ta3RvQnV0dG9uOmZvY3VzLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdmVydGljYWw+YnV0dG9uLm1rdG9CdXR0b246aG92ZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD5idXR0b24uYWN0aXZlLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD5idXR0b24ubWt0b0J1dHRvbjphY3RpdmUsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD5idXR0b24ubWt0b0J1dHRvbjpmb2N1cyxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwPmJ1dHRvbi5ta3RvQnV0dG9uOmhvdmVye3otaW5kZXg6MX0uYnRuLXRvb2xiYXJ7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5idG4tdG9vbGJhciAuaW5wdXQtZ3JvdXB7d2lkdGg6YXV0b30uYnRuLWdyb3VwPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCksLmJ0bi1ncm91cD4uYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD5idXR0b24ubWt0b0J1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxib2R5LmJ0bi1ncm91cD4jb3Qtc2RrLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwPmJ1dHRvbi5ta3RvQnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi0xcHh9LmJ0bi1ncm91cD4uYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCk+LmJ0biwuYnRuLWdyb3VwPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksLmJ0bi1ncm91cD5ib2R5LmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpPiNvdC1zZGstYnRuLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD4uYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCk+YnV0dG9uLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwPmJ1dHRvbi5ta3RvQnV0dG9uOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLGJvZHkuYnRuLWdyb3VwPiNvdC1zZGstYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXA+LmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpPmJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXA+YnV0dG9uLm1rdG9CdXR0b246bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSl7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5idG4tZ3JvdXA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuLC5idG4tZ3JvdXA+LmJ0bjpub3QoOmZpcnN0LWNoaWxkKSwuYnRuLWdyb3VwPmJvZHkuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpPiNvdC1zZGstYnRuLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD4uYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpPmJ1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD5idXR0b24ubWt0b0J1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxib2R5LmJ0bi1ncm91cD4jb3Qtc2RrLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk+YnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cD5idXR0b24ubWt0b0J1dHRvbjpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowfS5kcm9wZG93bi10b2dnbGUtc3BsaXR7cGFkZGluZy1sZWZ0Oi41NjI1cmVtO3BhZGRpbmctcmlnaHQ6LjU2MjVyZW19LmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDphZnRlciwuZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6YWZ0ZXIsLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OmFmdGVye21hcmdpbi1sZWZ0OjB9LmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6YmVmb3Jle21hcmdpbi1yaWdodDowfS5idG4tZ3JvdXAtc20+LmJ0bisuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LC5idG4tc20rLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtc20+YnV0dG9uLm1rdG9CdXR0b24rLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXNtPmJ1dHRvbi5ta3RvQnV0dG9uKy5kcm9wZG93bi10b2dnbGUtc3BsaXQsYm9keT4jb3Qtc2RrLWJ0bisuZHJvcGRvd24tdG9nZ2xlLXNwbGl0e3BhZGRpbmctbGVmdDouMzc1cmVtO3BhZGRpbmctcmlnaHQ6LjM3NXJlbX0uYnRuLWdyb3VwLWxnPi5idG4rLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwuYnRuLWxnKy5kcm9wZG93bi10b2dnbGUtc3BsaXQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLWxnPmJ1dHRvbi5ta3RvQnV0dG9uKy5kcm9wZG93bi10b2dnbGUtc3BsaXQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbisuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LGJvZHkuYnRuLWdyb3VwLWxnPiNvdC1zZGstYnRuKy5kcm9wZG93bi10b2dnbGUtc3BsaXQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC1sZz5idXR0b24ubWt0b0J1dHRvbisuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uKy5kcm9wZG93bi10b2dnbGUtc3BsaXR7cGFkZGluZy1sZWZ0Oi43NXJlbTtwYWRkaW5nLXJpZ2h0Oi43NXJlbX0uYnRuLWdyb3VwLXZlcnRpY2Fse2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1ncm91cCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdmVydGljYWw+YnV0dG9uLm1rdG9CdXR0b24sYm9keS5idG4tZ3JvdXAtdmVydGljYWw+I290LXNkay1idG4sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbD5idXR0b24ubWt0b0J1dHRvbnt3aWR0aDoxMDAlfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46bm90KDpmaXJzdC1jaGlsZCksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsPmJ1dHRvbi5ta3RvQnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpLGJvZHkuYnRuLWdyb3VwLXZlcnRpY2FsPiNvdC1zZGstYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdmVydGljYWw+YnV0dG9uLm1rdG9CdXR0b246bm90KDpmaXJzdC1jaGlsZCl7bWFyZ2luLXRvcDotMXB4fS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpPi5idG4sLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLC5idG4tZ3JvdXAtdmVydGljYWw+Ym9keS5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKT4jb3Qtc2RrLWJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpPmJ1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbD5idXR0b24ubWt0b0J1dHRvbjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxib2R5LmJ0bi1ncm91cC12ZXJ0aWNhbD4jb3Qtc2RrLWJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKT5idXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsPmJ1dHRvbi5ta3RvQnV0dG9uOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpe2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuLC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjpub3QoOmZpcnN0LWNoaWxkKSwuYnRuLWdyb3VwLXZlcnRpY2FsPmJvZHkuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpPiNvdC1zZGstYnRuLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpPmJ1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbD5idXR0b24ubWt0b0J1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxib2R5LmJ0bi1ncm91cC12ZXJ0aWNhbD4jb3Qtc2RrLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk+YnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC12ZXJ0aWNhbD5idXR0b24ubWt0b0J1dHRvbjpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uYnRuLWdyb3VwLXRvZ2dsZT4uYnRuLC5idG4tZ3JvdXAtdG9nZ2xlPi5idG4tZ3JvdXA+LmJ0biwuYnRuLWdyb3VwLXRvZ2dsZT5ib2R5LmJ0bi1ncm91cD4jb3Qtc2RrLWJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdG9nZ2xlPi5idG4tZ3JvdXA+YnV0dG9uLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXRvZ2dsZT5idXR0b24ubWt0b0J1dHRvbixib2R5LmJ0bi1ncm91cC10b2dnbGU+I290LXNkay1idG4sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC10b2dnbGU+LmJ0bi1ncm91cD5idXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXRvZ2dsZT5idXR0b24ubWt0b0J1dHRvbnttYXJnaW4tYm90dG9tOjB9LmJ0bi1ncm91cC10b2dnbGU+LmJ0biBpbnB1dFt0eXBlPWNoZWNrYm94XSwuYnRuLWdyb3VwLXRvZ2dsZT4uYnRuIGlucHV0W3R5cGU9cmFkaW9dLC5idG4tZ3JvdXAtdG9nZ2xlPi5idG4tZ3JvdXA+LmJ0biBpbnB1dFt0eXBlPWNoZWNrYm94XSwuYnRuLWdyb3VwLXRvZ2dsZT4uYnRuLWdyb3VwPi5idG4gaW5wdXRbdHlwZT1yYWRpb10sLmJ0bi1ncm91cC10b2dnbGU+Ym9keS5idG4tZ3JvdXA+I290LXNkay1idG4gaW5wdXRbdHlwZT1jaGVja2JveF0sLmJ0bi1ncm91cC10b2dnbGU+Ym9keS5idG4tZ3JvdXA+I290LXNkay1idG4gaW5wdXRbdHlwZT1yYWRpb10sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXRvZ2dsZT4uYnRuLWdyb3VwPmJ1dHRvbi5ta3RvQnV0dG9uIGlucHV0W3R5cGU9Y2hlY2tib3hdLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC10b2dnbGU+LmJ0bi1ncm91cD5idXR0b24ubWt0b0J1dHRvbiBpbnB1dFt0eXBlPXJhZGlvXSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdG9nZ2xlPmJ1dHRvbi5ta3RvQnV0dG9uIGlucHV0W3R5cGU9Y2hlY2tib3hdLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC10b2dnbGU+YnV0dG9uLm1rdG9CdXR0b24gaW5wdXRbdHlwZT1yYWRpb10sYm9keS5idG4tZ3JvdXAtdG9nZ2xlPiNvdC1zZGstYnRuIGlucHV0W3R5cGU9Y2hlY2tib3hdLGJvZHkuYnRuLWdyb3VwLXRvZ2dsZT4jb3Qtc2RrLWJ0biBpbnB1dFt0eXBlPXJhZGlvXSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYnRuLWdyb3VwLXRvZ2dsZT4uYnRuLWdyb3VwPmJ1dHRvbi5ta3RvQnV0dG9uIGlucHV0W3R5cGU9Y2hlY2tib3hdLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4tZ3JvdXAtdG9nZ2xlPi5idG4tZ3JvdXA+YnV0dG9uLm1rdG9CdXR0b24gaW5wdXRbdHlwZT1yYWRpb10sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC10b2dnbGU+YnV0dG9uLm1rdG9CdXR0b24gaW5wdXRbdHlwZT1jaGVja2JveF0sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bi1ncm91cC10b2dnbGU+YnV0dG9uLm1rdG9CdXR0b24gaW5wdXRbdHlwZT1yYWRpb117Y2xpcDpyZWN0KDAsMCwwLDApO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGV9LmlucHV0LWdyb3Vwe2FsaWduLWl0ZW1zOnN0cmV0Y2g7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9LmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSwuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LC5pbnB1dC1ncm91cD4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGR7ZmxleDoxIDEgYXV0bzttYXJnaW4tYm90dG9tOjA7bWluLXdpZHRoOjA7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MSV9LmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSsuY3VzdG9tLWZpbGUsLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSsuY3VzdG9tLXNlbGVjdCwuaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlKy5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSsuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QrLmN1c3RvbS1maWxlLC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdCsuY3VzdG9tLXNlbGVjdCwuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QrLmZvcm0tY29udHJvbCwuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QrLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wrLmN1c3RvbS1maWxlLC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sKy5jdXN0b20tc2VsZWN0LC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sKy5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wrLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0Ky5jdXN0b20tZmlsZSwuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbC1wbGFpbnRleHQrLmN1c3RvbS1zZWxlY3QsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0Ky5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0Ky5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5pbnB1dC1ncm91cD4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcisuY3VzdG9tLWZpbGUsLmlucHV0LWdyb3VwPi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyKy5jdXN0b20tc2VsZWN0LC5pbnB1dC1ncm91cD4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcisuZm9ybS1jb250cm9sLC5pbnB1dC1ncm91cD4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcisuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZStpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGUrc2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSt0ZXh0YXJlYS5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdCtpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdCtzZWxlY3QubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QrdGV4dGFyZWEubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCtpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sK3NlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sK3RleHRhcmVhLm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0K2lucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0K3NlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sLXBsYWludGV4dCt0ZXh0YXJlYS5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcitpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcitzZWxlY3QubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIrdGV4dGFyZWEubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pKy5jdXN0b20tZmlsZSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSsuY3VzdG9tLXNlbGVjdCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSsuZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pKy5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pK2lucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKStzZWxlY3QubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pK3RleHRhcmVhLm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQrLmN1c3RvbS1maWxlLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCsuY3VzdG9tLXNlbGVjdCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQrLmZvcm0tY29udHJvbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQrLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkK2lucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQrc2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQrdGV4dGFyZWEubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkKy5jdXN0b20tZmlsZSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCsuY3VzdG9tLXNlbGVjdCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCsuZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkKy5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkK2lucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCtzZWxlY3QubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkK3RleHRhcmVhLm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKStpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQraW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkK3NlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQrdGV4dGFyZWEubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCtpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQraW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGUraW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdCtpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wraW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sLXBsYWludGV4dCtpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmlucHV0LWdyb3VwPi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyK2lucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkKy5jdXN0b20tZmlsZSwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkKy5jdXN0b20tc2VsZWN0LC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQrLmZvcm0tY29udHJvbCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkKy5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQraW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pK2lucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCtpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQrc2VsZWN0Lm1rdG9GaWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCt0ZXh0YXJlYS5ta3RvRmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkK2lucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCtpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pK2lucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQraW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCtzZWxlY3QubWt0b0ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCt0ZXh0YXJlYS5ta3RvRmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCtpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkK2lucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGUraW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZStzZWxlY3QubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSt0ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QraW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5jdXN0b20tc2VsZWN0K3NlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QrdGV4dGFyZWEubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wraW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wrc2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sK3RleHRhcmVhLm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sLXBsYWludGV4dCtpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbC1wbGFpbnRleHQrc2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sLXBsYWludGV4dCt0ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIraW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyK3NlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIrdGV4dGFyZWEubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSsuY3VzdG9tLWZpbGUsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pKy5jdXN0b20tc2VsZWN0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSsuZm9ybS1jb250cm9sLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSsuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSkraW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKStzZWxlY3QubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSt0ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCsuY3VzdG9tLWZpbGUsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCsuY3VzdG9tLXNlbGVjdCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkKy5mb3JtLWNvbnRyb2wsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCsuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkK2lucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkK3NlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCt0ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkKy5jdXN0b20tZmlsZSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQrLmN1c3RvbS1zZWxlY3QsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkKy5mb3JtLWNvbnRyb2wsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkKy5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCtpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkK3NlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkK3RleHRhcmVhLm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSkraW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCtpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkK3NlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkK3RleHRhcmVhLm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkK2lucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQraW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke21hcmdpbi1sZWZ0Oi0xcHh9LmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXN+LmN1c3RvbS1maWxlLWxhYmVsLC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdDpmb2N1cywuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbDpmb2N1cywuaW5wdXQtZ3JvdXA+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXI6Zm9jdXMsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6Zm9jdXM6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkOmZvY3VzLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkOmZvY3VzLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Zm9jdXMsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmZvY3VzOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQ6Zm9jdXMsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkOmZvY3Vze3otaW5kZXg6M30uaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1c3t6LWluZGV4OjR9LmlucHV0LWdyb3VwPi5jdXN0b20tc2VsZWN0Om5vdCg6Zmlyc3QtY2hpbGQpLC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLC5pbnB1dC1ncm91cD4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjpub3QoOmZpcnN0LWNoaWxkKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDpub3QoOmZpcnN0LWNoaWxkKTppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQ6bm90KDpmaXJzdC1jaGlsZCksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQ6bm90KDpmaXJzdC1jaGlsZCksLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZDpub3QoOmZpcnN0LWNoaWxkKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6bm90KDpmaXJzdC1jaGlsZCk6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZDpub3QoOmZpcnN0LWNoaWxkKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQ6bm90KDpmaXJzdC1jaGlsZCl7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MH0uaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxle2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXh9LmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCwuaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOmFmdGVye2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowfS5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKT4uY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pPi5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDphZnRlciwuaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbik+LmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSwuaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbik+LmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLC5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKT4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjpub3QoOmxhc3QtY2hpbGQpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbik+aW5wdXQubWt0b0ZpZWxkOm5vdCg6bGFzdC1jaGlsZCk6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKT5zZWxlY3QubWt0b0ZpZWxkOm5vdCg6bGFzdC1jaGlsZCksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKT50ZXh0YXJlYS5ta3RvRmllbGQ6bm90KDpsYXN0LWNoaWxkKSwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbik+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOm5vdCg6bGFzdC1jaGlsZCksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbik+aW5wdXQubWt0b0ZpZWxkOm5vdCg6bGFzdC1jaGlsZCk6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbik+c2VsZWN0Lm1rdG9GaWVsZDpub3QoOmxhc3QtY2hpbGQpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pPnRleHRhcmVhLm1rdG9GaWVsZDpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24+LmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4rMykgLmN1c3RvbS1maWxlLWxhYmVsLC5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbj4uY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiszKSAuY3VzdG9tLWZpbGUtbGFiZWw6YWZ0ZXIsLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uPi5jdXN0b20tc2VsZWN0Om50aC1sYXN0LWNoaWxkKG4rMyksLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uPi5mb3JtLWNvbnRyb2w6bnRoLWxhc3QtY2hpbGQobiszKSwuaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXI6bnRoLWxhc3QtY2hpbGQobiszKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uPmlucHV0Lm1rdG9GaWVsZDpudGgtbGFzdC1jaGlsZChuKzMpOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24+c2VsZWN0Lm1rdG9GaWVsZDpudGgtbGFzdC1jaGlsZChuKzMpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24+dGV4dGFyZWEubWt0b0ZpZWxkOm50aC1sYXN0LWNoaWxkKG4rMyksLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZDpudGgtbGFzdC1jaGlsZChuKzMpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uPmlucHV0Lm1rdG9GaWVsZDpudGgtbGFzdC1jaGlsZChuKzMpOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uPnNlbGVjdC5ta3RvRmllbGQ6bnRoLWxhc3QtY2hpbGQobiszKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbj50ZXh0YXJlYS5ta3RvRmllbGQ6bnRoLWxhc3QtY2hpbGQobiszKXtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LmlucHV0LWdyb3VwLWFwcGVuZCwuaW5wdXQtZ3JvdXAtcHJlcGVuZHtkaXNwbGF5OmZsZXh9LmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuLC5pbnB1dC1ncm91cC1hcHBlbmQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwuaW5wdXQtZ3JvdXAtYXBwZW5kIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLC5pbnB1dC1ncm91cC1hcHBlbmQgYm9keT4jb3Qtc2RrLWJ0biwuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuLC5pbnB1dC1ncm91cC1wcmVwZW5kIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLXByZXBlbmQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLXByZXBlbmQgYm9keT4jb3Qtc2RrLWJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1hcHBlbmQgYnV0dG9uLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtYXBwZW5kIGJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1wcmVwZW5kIGJ1dHRvbi5ta3RvQnV0dG9ue3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mn0uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG46Zm9jdXMsLmlucHV0LWdyb3VwLWFwcGVuZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOmZvY3VzLC5pbnB1dC1ncm91cC1hcHBlbmQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b246Zm9jdXMsLmlucHV0LWdyb3VwLWFwcGVuZCBib2R5PiNvdC1zZGstYnRuOmZvY3VzLC5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG46Zm9jdXMsLmlucHV0LWdyb3VwLXByZXBlbmQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpmb2N1cywuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpmb2N1cywuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5PiNvdC1zZGstYnRuOmZvY3VzLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLWFwcGVuZCBidXR0b24ubWt0b0J1dHRvbjpmb2N1cywubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1wcmVwZW5kIGJ1dHRvbi5ta3RvQnV0dG9uOmZvY3VzLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1hcHBlbmQgYnV0dG9uLm1rdG9CdXR0b246Zm9jdXMsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLXByZXBlbmQgYnV0dG9uLm1rdG9CdXR0b246Zm9jdXN7ei1pbmRleDozfS5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0bisuYnRuLC5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0bisuaW5wdXQtZ3JvdXAtdGV4dCwuaW5wdXQtZ3JvdXAtYXBwZW5kIC5pbnB1dC1ncm91cC10ZXh0Ky5idG4sLmlucHV0LWdyb3VwLWFwcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCsuaW5wdXQtZ3JvdXAtdGV4dCwuaW5wdXQtZ3JvdXAtYXBwZW5kIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bitidXR0b24ubWt0b0J1dHRvbiwuaW5wdXQtZ3JvdXAtYXBwZW5kIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLXRleHQrYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLWFwcGVuZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJvZHk+I290LXNkay1idG4rYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLWFwcGVuZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJvZHk+YnV0dG9uLm1rdG9CdXR0b24rI290LXNkay1idG4sLmlucHV0LWdyb3VwLWFwcGVuZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uKy5idG4sLmlucHV0LWdyb3VwLWFwcGVuZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uKy5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cC1hcHBlbmQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbitidXR0b24ubWt0b0J1dHRvbiwuaW5wdXQtZ3JvdXAtYXBwZW5kIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4rYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLWFwcGVuZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtdGV4dCtidXR0b24ubWt0b0J1dHRvbiwuaW5wdXQtZ3JvdXAtYXBwZW5kIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJvZHk+I290LXNkay1idG4rYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLWFwcGVuZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBib2R5PmJ1dHRvbi5ta3RvQnV0dG9uKyNvdC1zZGstYnRuLC5pbnB1dC1ncm91cC1hcHBlbmQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24rLmJ0biwuaW5wdXQtZ3JvdXAtYXBwZW5kIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uKy5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cC1hcHBlbmQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24rYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLWFwcGVuZCBib2R5PiNvdC1zZGstYnRuKyNvdC1zZGstYnRuLC5pbnB1dC1ncm91cC1hcHBlbmQgYm9keT4jb3Qtc2RrLWJ0bisuYnRuLC5pbnB1dC1ncm91cC1hcHBlbmQgYm9keT4jb3Qtc2RrLWJ0bisuaW5wdXQtZ3JvdXAtdGV4dCwuaW5wdXQtZ3JvdXAtYXBwZW5kIGJvZHk+LmJ0bisjb3Qtc2RrLWJ0biwuaW5wdXQtZ3JvdXAtYXBwZW5kIGJvZHk+LmlucHV0LWdyb3VwLXRleHQrI290LXNkay1idG4sLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bisuYnRuLC5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4rLmlucHV0LWdyb3VwLXRleHQsLmlucHV0LWdyb3VwLXByZXBlbmQgLmlucHV0LWdyb3VwLXRleHQrLmJ0biwuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCsuaW5wdXQtZ3JvdXAtdGV4dCwuaW5wdXQtZ3JvdXAtcHJlcGVuZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5idG4rYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLXByZXBlbmQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtdGV4dCtidXR0b24ubWt0b0J1dHRvbiwuaW5wdXQtZ3JvdXAtcHJlcGVuZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJvZHk+I290LXNkay1idG4rYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLXByZXBlbmQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBib2R5PmJ1dHRvbi5ta3RvQnV0dG9uKyNvdC1zZGstYnRuLC5pbnB1dC1ncm91cC1wcmVwZW5kIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24rLmJ0biwuaW5wdXQtZ3JvdXAtcHJlcGVuZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uKy5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cC1wcmVwZW5kIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24rYnV0dG9uLm1rdG9CdXR0b24sLmlucHV0LWdyb3VwLXByZXBlbmQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmJ0bitidXR0b24ubWt0b0J1dHRvbiwuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtdGV4dCtidXR0b24ubWt0b0J1dHRvbiwuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBib2R5PiNvdC1zZGstYnRuK2J1dHRvbi5ta3RvQnV0dG9uLC5pbnB1dC1ncm91cC1wcmVwZW5kIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJvZHk+YnV0dG9uLm1rdG9CdXR0b24rI290LXNkay1idG4sLmlucHV0LWdyb3VwLXByZXBlbmQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24rLmJ0biwuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbisuaW5wdXQtZ3JvdXAtdGV4dCwuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbitidXR0b24ubWt0b0J1dHRvbiwuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5PiNvdC1zZGstYnRuKyNvdC1zZGstYnRuLC5pbnB1dC1ncm91cC1wcmVwZW5kIGJvZHk+I290LXNkay1idG4rLmJ0biwuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5PiNvdC1zZGstYnRuKy5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cC1wcmVwZW5kIGJvZHk+LmJ0bisjb3Qtc2RrLWJ0biwuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5Pi5pbnB1dC1ncm91cC10ZXh0KyNvdC1zZGstYnRuLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuK2J1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLWFwcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCtidXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1hcHBlbmQgYm9keT4jb3Qtc2RrLWJ0bitidXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1hcHBlbmQgYm9keT5idXR0b24ubWt0b0J1dHRvbisjb3Qtc2RrLWJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1hcHBlbmQgYnV0dG9uLm1rdG9CdXR0b24rLmJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1hcHBlbmQgYnV0dG9uLm1rdG9CdXR0b24rLmlucHV0LWdyb3VwLXRleHQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtYXBwZW5kIGJ1dHRvbi5ta3RvQnV0dG9uK2J1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bitidXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0K2J1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLXByZXBlbmQgYm9keT4jb3Qtc2RrLWJ0bitidXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1wcmVwZW5kIGJvZHk+YnV0dG9uLm1rdG9CdXR0b24rI290LXNkay1idG4sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBidXR0b24ubWt0b0J1dHRvbisuYnRuLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLXByZXBlbmQgYnV0dG9uLm1rdG9CdXR0b24rLmlucHV0LWdyb3VwLXRleHQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBidXR0b24ubWt0b0J1dHRvbitidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4rYnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLWFwcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCtidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtYXBwZW5kIGJvZHk+I290LXNkay1idG4rYnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLWFwcGVuZCBib2R5PmJ1dHRvbi5ta3RvQnV0dG9uKyNvdC1zZGstYnRuLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1hcHBlbmQgYnV0dG9uLm1rdG9CdXR0b24rLmJ0bixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtYXBwZW5kIGJ1dHRvbi5ta3RvQnV0dG9uKy5pbnB1dC1ncm91cC10ZXh0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1hcHBlbmQgYnV0dG9uLm1rdG9CdXR0b24rYnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bitidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCtidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5PiNvdC1zZGstYnRuK2J1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1wcmVwZW5kIGJvZHk+YnV0dG9uLm1rdG9CdXR0b24rI290LXNkay1idG4sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLXByZXBlbmQgYnV0dG9uLm1rdG9CdXR0b24rLmJ0bixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBidXR0b24ubWt0b0J1dHRvbisuaW5wdXQtZ3JvdXAtdGV4dCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBidXR0b24ubWt0b0J1dHRvbitidXR0b24ubWt0b0J1dHRvbnttYXJnaW4tbGVmdDotMXB4fS5pbnB1dC1ncm91cC1wcmVwZW5ke21hcmdpbi1yaWdodDotMXB4fS5pbnB1dC1ncm91cC1hcHBlbmR7bWFyZ2luLWxlZnQ6LTFweH0uaW5wdXQtZ3JvdXAtdGV4dHthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViO2JvcmRlcjoxcHggc29saWQgI2NjYztib3JkZXItcmFkaXVzOi4yNXJlbTtjb2xvcjpyZ2JhKDAsMCwwLC45KTtkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjFyZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjEuNTttYXJnaW4tYm90dG9tOjA7cGFkZGluZzouMzc1cmVtIC43NXJlbTt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXB9LmlucHV0LWdyb3VwLXRleHQgaW5wdXRbdHlwZT1jaGVja2JveF0sLmlucHV0LWdyb3VwLXRleHQgaW5wdXRbdHlwZT1yYWRpb117bWFyZ2luLXRvcDowfS5pbnB1dC1ncm91cC1sZz4uY3VzdG9tLXNlbGVjdCwuaW5wdXQtZ3JvdXAtbGc+LmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLC5pbnB1dC1ncm91cC1sZz4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjpub3QodGV4dGFyZWEpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtbGc+aW5wdXQubWt0b0ZpZWxkOm5vdCh0ZXh0YXJlYSk6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cC1sZz5zZWxlY3QubWt0b0ZpZWxkOm5vdCh0ZXh0YXJlYSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cC1sZz50ZXh0YXJlYS5ta3RvRmllbGQ6bm90KHRleHRhcmVhKSwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXAtbGc+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOm5vdCh0ZXh0YXJlYSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtbGc+aW5wdXQubWt0b0ZpZWxkOm5vdCh0ZXh0YXJlYSk6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtbGc+c2VsZWN0Lm1rdG9GaWVsZDpub3QodGV4dGFyZWEpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwLWxnPnRleHRhcmVhLm1rdG9GaWVsZDpub3QodGV4dGFyZWEpe2hlaWdodDpjYWxjKDEuNWVtICsgMXJlbSArIDJweCl9LmlucHV0LWdyb3VwLWxnPi5jdXN0b20tc2VsZWN0LC5pbnB1dC1ncm91cC1sZz4uZm9ybS1jb250cm9sLC5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5idG4sLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmlucHV0LWdyb3VwLXRleHQsLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4sLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cC1sZz4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwuaW5wdXQtZ3JvdXAtbGc+Ym9keS5pbnB1dC1ncm91cC1hcHBlbmQ+I290LXNkay1idG4sLmlucHV0LWdyb3VwLWxnPmJvZHkuaW5wdXQtZ3JvdXAtcHJlcGVuZD4jb3Qtc2RrLWJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtYXBwZW5kPmJ1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1wcmVwZW5kPmJ1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtbGc+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtbGc+c2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwLWxnPnRleHRhcmVhLm1rdG9GaWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXAtbGc+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtYXBwZW5kPmJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtcHJlcGVuZD5idXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cC1sZz5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtbGc+c2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cC1sZz50ZXh0YXJlYS5ta3RvRmllbGR7Ym9yZGVyLXJhZGl1czouM3JlbTtmb250LXNpemU6MS4yNXJlbTtsaW5lLWhlaWdodDoxLjU7cGFkZGluZzouNXJlbSAxcmVtfS5pbnB1dC1ncm91cC1zbT4uY3VzdG9tLXNlbGVjdCwuaW5wdXQtZ3JvdXAtc20+LmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLC5pbnB1dC1ncm91cC1zbT4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcjpub3QodGV4dGFyZWEpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtc20+aW5wdXQubWt0b0ZpZWxkOm5vdCh0ZXh0YXJlYSk6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cC1zbT5zZWxlY3QubWt0b0ZpZWxkOm5vdCh0ZXh0YXJlYSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cC1zbT50ZXh0YXJlYS5ta3RvRmllbGQ6bm90KHRleHRhcmVhKSwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuaW5wdXQtZ3JvdXAtc20+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOm5vdCh0ZXh0YXJlYSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtc20+aW5wdXQubWt0b0ZpZWxkOm5vdCh0ZXh0YXJlYSk6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtc20+c2VsZWN0Lm1rdG9GaWVsZDpub3QodGV4dGFyZWEpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwLXNtPnRleHRhcmVhLm1rdG9GaWVsZDpub3QodGV4dGFyZWEpe2hlaWdodDpjYWxjKDEuNWVtICsgLjVyZW0gKyAycHgpfS5pbnB1dC1ncm91cC1zbT4uY3VzdG9tLXNlbGVjdCwuaW5wdXQtZ3JvdXAtc20+LmZvcm0tY29udHJvbCwuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuLC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uYnRuLC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dCwuaW5wdXQtZ3JvdXAtc20+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLmlucHV0LWdyb3VwLXNtPmJvZHkuaW5wdXQtZ3JvdXAtYXBwZW5kPiNvdC1zZGstYnRuLC5pbnB1dC1ncm91cC1zbT5ib2R5LmlucHV0LWdyb3VwLXByZXBlbmQ+I290LXNkay1idG4sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWFwcGVuZD5idXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtcHJlcGVuZD5idXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwLXNtPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwLXNtPnNlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnB1dC1ncm91cC1zbT50ZXh0YXJlYS5ta3RvRmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmlucHV0LWdyb3VwLXNtPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWFwcGVuZD5idXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLXByZXBlbmQ+YnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtc20+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmlucHV0LWdyb3VwLXNtPnNlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5wdXQtZ3JvdXAtc20+dGV4dGFyZWEubWt0b0ZpZWxke2JvcmRlci1yYWRpdXM6LjJyZW07Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6LjI1cmVtIC41cmVtfS5pbnB1dC1ncm91cC1sZz4uY3VzdG9tLXNlbGVjdCwuaW5wdXQtZ3JvdXAtc20+LmN1c3RvbS1zZWxlY3R7cGFkZGluZy1yaWdodDoxLjc1cmVtfS5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbj4uaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4rMyk+LmJ0biwuaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24+LmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuKzMpPi5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbj5ib2R5LmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuKzMpPiNvdC1zZGstYnRuLC5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKT4uaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCk+LmJ0biwuaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbik+LmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpPi5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKT5ib2R5LmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpPiNvdC1zZGstYnRuLC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQ+LmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkPi5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCksLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4sLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cD5ib2R5LmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkPiNvdC1zZGstYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLC5pbnB1dC1ncm91cD5ib2R5LmlucHV0LWdyb3VwLXByZXBlbmQ+I290LXNkay1idG4sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24+LmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuKzMpPmJ1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pPi5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKT5idXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQ+YnV0dG9uLm1rdG9CdXR0b246bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ+YnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uPi5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiszKT5idXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbik+LmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpPmJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQ+YnV0dG9uLm1rdG9CdXR0b246bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kPmJ1dHRvbi5ta3RvQnV0dG9ue2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuLC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZD4uYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZD4uaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSwuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCk+LmJ0biwuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCk+LmlucHV0LWdyb3VwLXRleHQsLmlucHV0LWdyb3VwPmJvZHkuaW5wdXQtZ3JvdXAtYXBwZW5kPiNvdC1zZGstYnRuLC5pbnB1dC1ncm91cD5ib2R5LmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQ+I290LXNkay1idG46bm90KDpmaXJzdC1jaGlsZCksLmlucHV0LWdyb3VwPmJvZHkuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKT4jb3Qtc2RrLWJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kPmJ1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkPmJ1dHRvbi5ta3RvQnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpPmJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kPmJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZD5idXR0b24ubWt0b0J1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCk+YnV0dG9uLm1rdG9CdXR0b257Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MH0uY3VzdG9tLWNvbnRyb2x7ZGlzcGxheTpibG9jazttaW4taGVpZ2h0OjEuNXJlbTtwYWRkaW5nLWxlZnQ6MS41cmVtO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtcHJpbnQtY29sb3ItYWRqdXN0OmV4YWN0O3ByaW50LWNvbG9yLWFkanVzdDpleGFjdDt6LWluZGV4OjF9LmN1c3RvbS1jb250cm9sLWlubGluZXtkaXNwbGF5OmlubGluZS1mbGV4O21hcmdpbi1yaWdodDoxcmVtfS5jdXN0b20tY29udHJvbC1pbnB1dHtoZWlnaHQ6MS4yNXJlbTtsZWZ0OjA7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjFyZW07ei1pbmRleDotMX0uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtib3JkZXItY29sb3I6I2Q0MDUxMTtjb2xvcjojZmZmfS5jdXN0b20tY29udHJvbC1pbnB1dDpmb2N1c34uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JveC1zaGFkb3c6bm9uZX0uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Zm9jdXM6bm90KDpjaGVja2VkKX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLC45KX0uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6YWN0aXZlfi5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojZmM4Zjk1O2JvcmRlci1jb2xvcjojZmM4Zjk1O2NvbG9yOiNmZmZ9LmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkfi5jdXN0b20tY29udHJvbC1sYWJlbCwuY3VzdG9tLWNvbnRyb2wtaW5wdXRbZGlzYWJsZWRdfi5jdXN0b20tY29udHJvbC1sYWJlbHtjb2xvcjojNjY2fS5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlLC5jdXN0b20tY29udHJvbC1pbnB1dFtkaXNhYmxlZF1+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWJ9LmN1c3RvbS1jb250cm9sLWxhYmVse21hcmdpbi1ib3R0b206MDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjp0b3B9LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjYjJiMmIyO3BvaW50ZXItZXZlbnRzOm5vbmV9LmN1c3RvbS1jb250cm9sLWxhYmVsOmFmdGVyLC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxcmVtO2xlZnQ6LTEuNXJlbTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LjI1cmVtO3dpZHRoOjFyZW19LmN1c3RvbS1jb250cm9sLWxhYmVsOmFmdGVye2JhY2tncm91bmQ6NTAlLzUwJSA1MCUgbm8tcmVwZWF0fS5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZXtib3JkZXItcmFkaXVzOi4yNXJlbX0uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCclM0UlM0NwYXRoIGZpbGw9JyUyM2ZmZicgZD0nbTYuNTY0Ljc1LTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvJTNFJTNDL3N2ZyUzRSIpfS5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGV+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTE7Ym9yZGVyLWNvbG9yOiNkNDA1MTF9LmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnJTNFJTNDcGF0aCBzdHJva2U9JyUyM2ZmZicgZD0nTTAgMmg0Jy8lM0UlM0Mvc3ZnJTNFIil9LmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgyMTIsNSwxNywuNSl9LmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6aW5kZXRlcm1pbmF0ZX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgyMTIsNSwxNywuNSl9LmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlfS5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCclM0UlM0NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM0UlM0Mvc3ZnJTNFIil9LmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgyMTIsNSwxNywuNSl9I2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBkaXYuZm9ybS1jaGVjay5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gsLmN1c3RvbS1zd2l0Y2gsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdHtwYWRkaW5nLWxlZnQ6Mi4yNXJlbX0jZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZGl2LmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveC5ta3RvQ2hlY2tib3hMaXN0IC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUsI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBkaXYuZm9ybS1jaGVjay5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwuY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JvcmRlci1yYWRpdXM6LjVyZW07bGVmdDotMi4yNXJlbTtwb2ludGVyLWV2ZW50czphbGw7d2lkdGg6MS43NXJlbX0jZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZGl2LmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveC5ta3RvQ2hlY2tib3hMaXN0IC5jdXN0b20tY29udHJvbC1sYWJlbDphZnRlciwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YWZ0ZXIsI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgZGl2LmZvcm0tY2hlY2suY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbDphZnRlciwuY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YWZ0ZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YWZ0ZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWxhYmVsOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2IyYjJiMjtib3JkZXItcmFkaXVzOi41cmVtO2hlaWdodDpjYWxjKDFyZW0gLSA0cHgpO2xlZnQ6Y2FsYygtMi4yNXJlbSArIDJweCk7dG9wOmNhbGMoLjI1cmVtICsgMnB4KTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0LGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7d2lkdGg6Y2FsYygxcmVtIC0gNHB4KX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZGl2LmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveC5ta3RvQ2hlY2tib3hMaXN0IC5jdXN0b20tY29udHJvbC1sYWJlbDphZnRlciwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YWZ0ZXIsI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgZGl2LmZvcm0tY2hlY2suY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbDphZnRlciwuY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YWZ0ZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YWZ0ZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWxhYmVsOmFmdGVye3RyYW5zaXRpb246bm9uZX19I2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YWZ0ZXIsI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmFmdGVyLCNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGRpdi5mb3JtLWNoZWNrLmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YWZ0ZXIsLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmFmdGVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmFmdGVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgZGl2LmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveC5ta3RvQ2hlY2tib3hMaXN0IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLjc1cmVtKX0jZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZGl2LmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveC5ta3RvQ2hlY2tib3hMaXN0IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUsI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBkaXYuZm9ybS1jaGVjay5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwuY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgyMTIsNSwxNywuNSl9LmN1c3RvbS1zZWxlY3R7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6I2ZmZiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnJTNFJTNDcGF0aCBmaWxsPSclMjMzMzMnIGQ9J00yIDAgMCAyaDR6bTAgNUwwIDNoNHonLyUzRSUzQy9zdmclM0UiKSByaWdodCAuNzVyZW0gY2VudGVyLzhweCAxMHB4IG5vLXJlcGVhdDtib3JkZXI6MXB4IHNvbGlkICNjY2M7Ym9yZGVyLXJhZGl1czouMjVyZW07Y29sb3I6cmdiYSgwLDAsMCwuOSk7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjFyZW07Zm9udC13ZWlnaHQ6MTAwO2hlaWdodDpjYWxjKDEuNWVtICsgLjc1cmVtICsgMnB4KTtsaW5lLWhlaWdodDoxLjU7cGFkZGluZzouMzc1cmVtIDEuNzVyZW0gLjM3NXJlbSAuNzVyZW07dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjEwMCV9LmN1c3RvbS1zZWxlY3Q6Zm9jdXN7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsLjkpO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTIsNSwxNywuMjUpO291dGxpbmU6MH0uY3VzdG9tLXNlbGVjdDpmb2N1czo6LW1zLXZhbHVle2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjpyZ2JhKDAsMCwwLC45KX0uY3VzdG9tLXNlbGVjdFttdWx0aXBsZV0sLmN1c3RvbS1zZWxlY3Rbc2l6ZV06bm90KFtzaXplPSIxIl0pe2JhY2tncm91bmQtaW1hZ2U6bm9uZTtoZWlnaHQ6YXV0bztwYWRkaW5nLXJpZ2h0Oi43NXJlbX0uY3VzdG9tLXNlbGVjdDpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWI7Y29sb3I6IzY2Nn0uY3VzdG9tLXNlbGVjdDo6LW1zLWV4cGFuZHtkaXNwbGF5Om5vbmV9LmN1c3RvbS1zZWxlY3Q6LW1vei1mb2N1c3Jpbmd7Y29sb3I6dHJhbnNwYXJlbnQ7dGV4dC1zaGFkb3c6MCAwIDAgcmdiYSgwLDAsMCwuOSl9LmN1c3RvbS1zZWxlY3Qtc217Zm9udC1zaXplOi44NzVyZW07aGVpZ2h0OmNhbGMoMS41ZW0gKyAuNXJlbSArIDJweCk7cGFkZGluZy1ib3R0b206LjI1cmVtO3BhZGRpbmctbGVmdDouNXJlbTtwYWRkaW5nLXRvcDouMjVyZW19LmN1c3RvbS1zZWxlY3QtbGd7Zm9udC1zaXplOjEuMjVyZW07aGVpZ2h0OmNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtwYWRkaW5nLWJvdHRvbTouNXJlbTtwYWRkaW5nLWxlZnQ6MXJlbTtwYWRkaW5nLXRvcDouNXJlbX0uY3VzdG9tLWZpbGV7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWJvdHRvbTowfS5jdXN0b20tZmlsZSwuY3VzdG9tLWZpbGUtaW5wdXR7aGVpZ2h0OmNhbGMoMS41ZW0gKyAuNzVyZW0gKyAycHgpO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9LmN1c3RvbS1maWxlLWlucHV0e21hcmdpbjowO29wYWNpdHk6MDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoyfS5jdXN0b20tZmlsZS1pbnB1dDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWx7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsLjkpO2JveC1zaGFkb3c6bm9uZX0uY3VzdG9tLWZpbGUtaW5wdXQ6ZGlzYWJsZWR+LmN1c3RvbS1maWxlLWxhYmVsLC5jdXN0b20tZmlsZS1pbnB1dFtkaXNhYmxlZF1+LmN1c3RvbS1maWxlLWxhYmVse2JhY2tncm91bmQtY29sb3I6I2ViZWJlYn0uY3VzdG9tLWZpbGUtaW5wdXQ6bGFuZyhlbil+LmN1c3RvbS1maWxlLWxhYmVsOmFmdGVye2NvbnRlbnQ6IkJyb3dzZSJ9LmN1c3RvbS1maWxlLWlucHV0fi5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtYnJvd3NlKX0uY3VzdG9tLWZpbGUtbGFiZWx7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2NjYztib3JkZXItcmFkaXVzOi4yNXJlbTtmb250LXdlaWdodDoxMDA7aGVpZ2h0OmNhbGMoMS41ZW0gKyAuNzVyZW0gKyAycHgpO2xlZnQ6MDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoxfS5jdXN0b20tZmlsZS1sYWJlbCwuY3VzdG9tLWZpbGUtbGFiZWw6YWZ0ZXJ7Y29sb3I6cmdiYSgwLDAsMCwuOSk7bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6LjM3NXJlbSAuNzVyZW07cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0uY3VzdG9tLWZpbGUtbGFiZWw6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViO2JvcmRlci1sZWZ0OmluaGVyaXQ7Ym9yZGVyLXJhZGl1czowIC4yNXJlbSAuMjVyZW0gMDtib3R0b206MDtjb250ZW50OiJCcm93c2UiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OmNhbGMoMS41ZW0gKyAuNzVyZW0pO3otaW5kZXg6M30uY3VzdG9tLXJhbmdley13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2hlaWdodDoxLjRyZW07cGFkZGluZzowO3dpZHRoOjEwMCV9LmN1c3RvbS1yYW5nZTpmb2N1c3tvdXRsaW5lOjB9LmN1c3RvbS1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7Ym94LXNoYWRvdzowIDAgMCAxcHggI2ZmZixub25lfS5jdXN0b20tcmFuZ2U6Zm9jdXM6Oi1tb3otcmFuZ2UtdGh1bWJ7Ym94LXNoYWRvdzowIDAgMCAxcHggI2ZmZixub25lfS5jdXN0b20tcmFuZ2U6Zm9jdXM6Oi1tcy10aHVtYntib3gtc2hhZG93OjAgMCAwIDFweCAjZmZmLG5vbmV9LmN1c3RvbS1yYW5nZTo6LW1vei1mb2N1cy1vdXRlcntib3JkZXI6MH0uY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZDQwNTExO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MXJlbTtoZWlnaHQ6MXJlbTttYXJnaW4tdG9wOi0uMjVyZW07LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0O3dpZHRoOjFyZW19QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7LXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lfX0uY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojZmM4Zjk1fS5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxcmVtO2NvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2hlaWdodDouNXJlbTt3aWR0aDoxMDAlfS5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWJ7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtib3JkZXI6MDtib3JkZXItcmFkaXVzOjFyZW07aGVpZ2h0OjFyZW07LW1vei10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0O3dpZHRoOjFyZW19QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYnstbW96LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmV9fS5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWI6YWN0aXZle2JhY2tncm91bmQtY29sb3I6I2ZjOGY5NX0uY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRyYWNre2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxcmVtO2NvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2hlaWdodDouNXJlbTt3aWR0aDoxMDAlfS5jdXN0b20tcmFuZ2U6Oi1tcy10aHVtYnthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZDQwNTExO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MXJlbTtoZWlnaHQ6MXJlbTttYXJnaW4tbGVmdDouMnJlbTttYXJnaW4tcmlnaHQ6LjJyZW07bWFyZ2luLXRvcDowOy1tcy10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0O3dpZHRoOjFyZW19QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmN1c3RvbS1yYW5nZTo6LW1zLXRodW1iey1tcy10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lfX0uY3VzdG9tLXJhbmdlOjotbXMtdGh1bWI6YWN0aXZle2JhY2tncm91bmQtY29sb3I6I2ZjOGY5NX0uY3VzdG9tLXJhbmdlOjotbXMtdHJhY2t7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXdpZHRoOi41cmVtO2NvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2hlaWdodDouNXJlbTt3aWR0aDoxMDAlfS5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLWxvd2VyLC5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLXVwcGVye2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTtib3JkZXItcmFkaXVzOjFyZW19LmN1c3RvbS1yYW5nZTo6LW1zLWZpbGwtdXBwZXJ7bWFyZ2luLXJpZ2h0OjE1cHh9LmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojYjJiMmIyfS5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre2N1cnNvcjpkZWZhdWx0fS5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojYjJiMmIyfS5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdHJhY2t7Y3Vyc29yOmRlZmF1bHR9LmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LW1zLXRodW1ie2JhY2tncm91bmQtY29sb3I6I2IyYjJiMn0uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlLC5jdXN0b20tZmlsZS1sYWJlbCwuY3VzdG9tLXNlbGVjdHt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXR9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwuY3VzdG9tLWZpbGUtbGFiZWwsLmN1c3RvbS1zZWxlY3R7dHJhbnNpdGlvbjpub25lfX0ubmF2e2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luLWJvdHRvbTowO3BhZGRpbmctbGVmdDowfS5uYXYtbGlua3tkaXNwbGF5OmJsb2NrO3BhZGRpbmc6LjVyZW0gLjc1cmVtfS5uYXYtbGluazpmb2N1cywubmF2LWxpbms6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lm5hdi1saW5rLmRpc2FibGVke2NvbG9yOiM2NjY7Y3Vyc29yOmRlZmF1bHQ7cG9pbnRlci1ldmVudHM6bm9uZX0ubmF2LXRhYnN7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U1ZTVlNX0ubmF2LXRhYnMgLm5hdi1saW5re2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOi4yNXJlbTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW07bWFyZ2luLWJvdHRvbTotMXB4fS5uYXYtdGFicyAubmF2LWxpbms6Zm9jdXMsLm5hdi10YWJzIC5uYXYtbGluazpob3Zlcntib3JkZXItY29sb3I6I2ViZWJlYiAjZWJlYmViICNlNWU1ZTU7aXNvbGF0aW9uOmlzb2xhdGV9Lm5hdi10YWJzIC5uYXYtbGluay5kaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtjb2xvcjojNjY2fS5uYXYtdGFicyAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmssLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZTVlNWU1ICNlNWU1ZTUgI2ZmZjtjb2xvcjojNDk1MDU3fS5uYXYtdGFicyAuZHJvcGRvd24tbWVudXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDttYXJnaW4tdG9wOi0xcHh9Lm5hdi1waWxscyAubmF2LWxpbmt7YmFja2dyb3VuZDpub25lO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6LjI1cmVtfS5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZSwubmF2LXBpbGxzIC5zaG93Pi5uYXYtbGlua3tiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTE7Y29sb3I6I2ZmZn0ubmF2LWZpbGwgLm5hdi1pdGVtLC5uYXYtZmlsbD4ubmF2LWxpbmt7ZmxleDoxIDEgYXV0bzt0ZXh0LWFsaWduOmNlbnRlcn0ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0sLm5hdi1qdXN0aWZpZWQ+Lm5hdi1saW5re2ZsZXgtYmFzaXM6MDtmbGV4LWdyb3c6MTt0ZXh0LWFsaWduOmNlbnRlcn0udGFiLWNvbnRlbnQ+LnRhYi1wYW5le2Rpc3BsYXk6bm9uZX0udGFiLWNvbnRlbnQ+LmFjdGl2ZXtkaXNwbGF5OmJsb2NrfS5uYXZiYXJ7cGFkZGluZzouNXJlbSAxcmVtO3Bvc2l0aW9uOnJlbGF0aXZlfS5uYXZiYXIsLm5hdmJhciAuY29udGFpbmVyLC5uYXZiYXIgLmNvbnRhaW5lci1mbHVpZCwubmF2YmFyIC5jb250YWluZXItbGcsLm5hdmJhciAuY29udGFpbmVyLW1kLC5uYXZiYXIgLmNvbnRhaW5lci1zbSwubmF2YmFyIC5jb250YWluZXIteGx7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ubmF2YmFyLWJyYW5ke2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luLXJpZ2h0OjFyZW07cGFkZGluZy1ib3R0b206LjMxMjVyZW07cGFkZGluZy10b3A6LjMxMjVyZW07d2hpdGUtc3BhY2U6bm93cmFwfS5uYXZiYXItYnJhbmQ6Zm9jdXMsLm5hdmJhci1icmFuZDpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX0ubmF2YmFyLW5hdntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2xpc3Qtc3R5bGU6bm9uZTttYXJnaW4tYm90dG9tOjA7cGFkZGluZy1sZWZ0OjB9Lm5hdmJhci1uYXYgLm5hdi1saW5re3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH0ubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudXtmbG9hdDpub25lO3Bvc2l0aW9uOnN0YXRpY30ubmF2YmFyLXRleHR7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZy1ib3R0b206LjVyZW07cGFkZGluZy10b3A6LjVyZW19Lm5hdmJhci1jb2xsYXBzZXthbGlnbi1pdGVtczpjZW50ZXI7ZmxleC1iYXNpczoxMDAlO2ZsZXgtZ3JvdzoxfS5uYXZiYXItdG9nZ2xlcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW07Zm9udC1zaXplOjEuMjVyZW07bGluZS1oZWlnaHQ6MTtwYWRkaW5nOi4yNXJlbSAuNzVyZW19Lm5hdmJhci10b2dnbGVyOmZvY3VzLC5uYXZiYXItdG9nZ2xlcjpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX0ubmF2YmFyLXRvZ2dsZXItaWNvbntiYWNrZ3JvdW5kOjUwJS8xMDAlIDEwMCUgbm8tcmVwZWF0O2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjEuNWVtO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoxLjVlbX0ubmF2YmFyLW5hdi1zY3JvbGx7bWF4LWhlaWdodDo3NXZoO292ZXJmbG93LXk6YXV0b31AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7Lm5hdmJhci1leHBhbmQtc20+LmNvbnRhaW5lciwubmF2YmFyLWV4cGFuZC1zbT4uY29udGFpbmVyLWZsdWlkLC5uYXZiYXItZXhwYW5kLXNtPi5jb250YWluZXItbGcsLm5hdmJhci1leHBhbmQtc20+LmNvbnRhaW5lci1tZCwubmF2YmFyLWV4cGFuZC1zbT4uY29udGFpbmVyLXNtLC5uYXZiYXItZXhwYW5kLXNtPi5jb250YWluZXIteGx7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfX1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7Lm5hdmJhci1leHBhbmQtc217ZmxleC1mbG93OnJvdyBub3dyYXA7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXZ7ZmxleC1kaXJlY3Rpb246cm93fS5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51e3Bvc2l0aW9uOmFic29sdXRlfS5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5uYXYtbGlua3twYWRkaW5nLWxlZnQ6LjVyZW07cGFkZGluZy1yaWdodDouNXJlbX0ubmF2YmFyLWV4cGFuZC1zbT4uY29udGFpbmVyLC5uYXZiYXItZXhwYW5kLXNtPi5jb250YWluZXItZmx1aWQsLm5hdmJhci1leHBhbmQtc20+LmNvbnRhaW5lci1sZywubmF2YmFyLWV4cGFuZC1zbT4uY29udGFpbmVyLW1kLC5uYXZiYXItZXhwYW5kLXNtPi5jb250YWluZXItc20sLm5hdmJhci1leHBhbmQtc20+LmNvbnRhaW5lci14bHtmbGV4LXdyYXA6bm93cmFwfS5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2LXNjcm9sbHtvdmVyZmxvdzp2aXNpYmxlfS5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItY29sbGFwc2V7ZGlzcGxheTpmbGV4IWltcG9ydGFudDtmbGV4LWJhc2lzOmF1dG99Lm5hdmJhci1leHBhbmQtc20gLm5hdmJhci10b2dnbGVye2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5uYXZiYXItZXhwYW5kLW1kPi5jb250YWluZXIsLm5hdmJhci1leHBhbmQtbWQ+LmNvbnRhaW5lci1mbHVpZCwubmF2YmFyLWV4cGFuZC1tZD4uY29udGFpbmVyLWxnLC5uYXZiYXItZXhwYW5kLW1kPi5jb250YWluZXItbWQsLm5hdmJhci1leHBhbmQtbWQ+LmNvbnRhaW5lci1zbSwubmF2YmFyLWV4cGFuZC1tZD4uY29udGFpbmVyLXhse3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXZiYXItZXhwYW5kLW1ke2ZsZXgtZmxvdzpyb3cgbm93cmFwO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2e2ZsZXgtZGlyZWN0aW9uOnJvd30ubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudXtwb3NpdGlvbjphYnNvbHV0ZX0ubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAubmF2LWxpbmt7cGFkZGluZy1sZWZ0Oi41cmVtO3BhZGRpbmctcmlnaHQ6LjVyZW19Lm5hdmJhci1leHBhbmQtbWQ+LmNvbnRhaW5lciwubmF2YmFyLWV4cGFuZC1tZD4uY29udGFpbmVyLWZsdWlkLC5uYXZiYXItZXhwYW5kLW1kPi5jb250YWluZXItbGcsLm5hdmJhci1leHBhbmQtbWQ+LmNvbnRhaW5lci1tZCwubmF2YmFyLWV4cGFuZC1tZD4uY29udGFpbmVyLXNtLC5uYXZiYXItZXhwYW5kLW1kPi5jb250YWluZXIteGx7ZmxleC13cmFwOm5vd3JhcH0ubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdi1zY3JvbGx7b3ZlcmZsb3c6dmlzaWJsZX0ubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNle2Rpc3BsYXk6ZmxleCFpbXBvcnRhbnQ7ZmxleC1iYXNpczphdXRvfS5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItdG9nZ2xlcntkaXNwbGF5Om5vbmV9fUBtZWRpYSAobWF4LXdpZHRoOjk5MS45OHB4KXsubmF2YmFyLWV4cGFuZC1sZz4uY29udGFpbmVyLC5uYXZiYXItZXhwYW5kLWxnPi5jb250YWluZXItZmx1aWQsLm5hdmJhci1leHBhbmQtbGc+LmNvbnRhaW5lci1sZywubmF2YmFyLWV4cGFuZC1sZz4uY29udGFpbmVyLW1kLC5uYXZiYXItZXhwYW5kLWxnPi5jb250YWluZXItc20sLm5hdmJhci1leHBhbmQtbGc+LmNvbnRhaW5lci14bHtwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjB9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsubmF2YmFyLWV4cGFuZC1sZ3tmbGV4LWZsb3c6cm93IG5vd3JhcDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdntmbGV4LWRpcmVjdGlvbjpyb3d9Lm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnV7cG9zaXRpb246YWJzb2x1dGV9Lm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLm5hdi1saW5re3BhZGRpbmctbGVmdDouNXJlbTtwYWRkaW5nLXJpZ2h0Oi41cmVtfS5uYXZiYXItZXhwYW5kLWxnPi5jb250YWluZXIsLm5hdmJhci1leHBhbmQtbGc+LmNvbnRhaW5lci1mbHVpZCwubmF2YmFyLWV4cGFuZC1sZz4uY29udGFpbmVyLWxnLC5uYXZiYXItZXhwYW5kLWxnPi5jb250YWluZXItbWQsLm5hdmJhci1leHBhbmQtbGc+LmNvbnRhaW5lci1zbSwubmF2YmFyLWV4cGFuZC1sZz4uY29udGFpbmVyLXhse2ZsZXgtd3JhcDpub3dyYXB9Lm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYtc2Nyb2xse292ZXJmbG93OnZpc2libGV9Lm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1jb2xsYXBzZXtkaXNwbGF5OmZsZXghaW1wb3J0YW50O2ZsZXgtYmFzaXM6YXV0b30ubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLXRvZ2dsZXJ7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDoxMTk5Ljk4cHgpey5uYXZiYXItZXhwYW5kLXhsPi5jb250YWluZXIsLm5hdmJhci1leHBhbmQteGw+LmNvbnRhaW5lci1mbHVpZCwubmF2YmFyLWV4cGFuZC14bD4uY29udGFpbmVyLWxnLC5uYXZiYXItZXhwYW5kLXhsPi5jb250YWluZXItbWQsLm5hdmJhci1leHBhbmQteGw+LmNvbnRhaW5lci1zbSwubmF2YmFyLWV4cGFuZC14bD4uY29udGFpbmVyLXhse3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsubmF2YmFyLWV4cGFuZC14bHtmbGV4LWZsb3c6cm93IG5vd3JhcDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdntmbGV4LWRpcmVjdGlvbjpyb3d9Lm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnV7cG9zaXRpb246YWJzb2x1dGV9Lm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLm5hdi1saW5re3BhZGRpbmctbGVmdDouNXJlbTtwYWRkaW5nLXJpZ2h0Oi41cmVtfS5uYXZiYXItZXhwYW5kLXhsPi5jb250YWluZXIsLm5hdmJhci1leHBhbmQteGw+LmNvbnRhaW5lci1mbHVpZCwubmF2YmFyLWV4cGFuZC14bD4uY29udGFpbmVyLWxnLC5uYXZiYXItZXhwYW5kLXhsPi5jb250YWluZXItbWQsLm5hdmJhci1leHBhbmQteGw+LmNvbnRhaW5lci1zbSwubmF2YmFyLWV4cGFuZC14bD4uY29udGFpbmVyLXhse2ZsZXgtd3JhcDpub3dyYXB9Lm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYtc2Nyb2xse292ZXJmbG93OnZpc2libGV9Lm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZXtkaXNwbGF5OmZsZXghaW1wb3J0YW50O2ZsZXgtYmFzaXM6YXV0b30ubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLXRvZ2dsZXJ7ZGlzcGxheTpub25lfX0ubmF2YmFyLWV4cGFuZHtmbGV4LWZsb3c6cm93IG5vd3JhcDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubmF2YmFyLWV4cGFuZD4uY29udGFpbmVyLC5uYXZiYXItZXhwYW5kPi5jb250YWluZXItZmx1aWQsLm5hdmJhci1leHBhbmQ+LmNvbnRhaW5lci1sZywubmF2YmFyLWV4cGFuZD4uY29udGFpbmVyLW1kLC5uYXZiYXItZXhwYW5kPi5jb250YWluZXItc20sLm5hdmJhci1leHBhbmQ+LmNvbnRhaW5lci14bHtwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjB9Lm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXZ7ZmxleC1kaXJlY3Rpb246cm93fS5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51e3Bvc2l0aW9uOmFic29sdXRlfS5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5uYXYtbGlua3twYWRkaW5nLWxlZnQ6LjVyZW07cGFkZGluZy1yaWdodDouNXJlbX0ubmF2YmFyLWV4cGFuZD4uY29udGFpbmVyLC5uYXZiYXItZXhwYW5kPi5jb250YWluZXItZmx1aWQsLm5hdmJhci1leHBhbmQ+LmNvbnRhaW5lci1sZywubmF2YmFyLWV4cGFuZD4uY29udGFpbmVyLW1kLC5uYXZiYXItZXhwYW5kPi5jb250YWluZXItc20sLm5hdmJhci1leHBhbmQ+LmNvbnRhaW5lci14bHtmbGV4LXdyYXA6bm93cmFwfS5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2LXNjcm9sbHtvdmVyZmxvdzp2aXNpYmxlfS5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2V7ZGlzcGxheTpmbGV4IWltcG9ydGFudDtmbGV4LWJhc2lzOmF1dG99Lm5hdmJhci1leHBhbmQgLm5hdmJhci10b2dnbGVye2Rpc3BsYXk6bm9uZX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQsLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmZvY3VzLC5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZDpob3Zlcntjb2xvcjpyZ2JhKDAsMCwwLC45KX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGlua3tjb2xvcjpyZ2JhKDAsMCwwLC41KX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cywubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluazpob3Zlcntjb2xvcjpyZ2JhKDAsMCwwLC43KX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZHtjb2xvcjpyZ2JhKDAsMCwwLC4zKX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5hY3RpdmU+Lm5hdi1saW5rLC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSwubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5zaG93LC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3c+Lm5hdi1saW5re2NvbG9yOnJnYmEoMCwwLDAsLjkpfS5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLC4xKTtjb2xvcjpyZ2JhKDAsMCwwLC41KX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlci1pY29ue2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnJTNFJTNDcGF0aCBzdHJva2U9J3JnYmEoMCwgMCwgMCwgMC41KScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0UiKX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dHtjb2xvcjpyZ2JhKDAsMCwwLC41KX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhLC5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGE6Zm9jdXMsLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpob3Zlcntjb2xvcjpyZ2JhKDAsMCwwLC45KX0ubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZCwubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZDpmb2N1cywubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZDpob3Zlcntjb2xvcjojZmZmfS5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmt7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfS5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbms6Zm9jdXMsLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpob3Zlcntjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNzUpfS5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWR7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjI1KX0ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLmFjdGl2ZT4ubmF2LWxpbmssLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUsLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5zaG93LC5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAuc2hvdz4ubmF2LWxpbmt7Y29sb3I6I2ZmZn0ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVye2JvcmRlci1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuMSk7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfS5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXItaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyUzRSUzQ3BhdGggc3Ryb2tlPSdyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSknIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFIil9Lm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSl9Lm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhLC5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpmb2N1cywubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6aG92ZXJ7Y29sb3I6I2ZmZn0uY2FyZHt3b3JkLXdyYXA6YnJlYWstd29yZDtiYWNrZ3JvdW5kLWNsaXA6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMjUpO2JvcmRlci1yYWRpdXM6LjI1cmVtO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWluLXdpZHRoOjA7cG9zaXRpb246cmVsYXRpdmV9LmNhcmQ+aHJ7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6MH0uY2FyZD4ubGlzdC1ncm91cHtib3JkZXItYm90dG9tOmluaGVyaXQ7Ym9yZGVyLXRvcDppbmhlcml0fS5jYXJkPi5saXN0LWdyb3VwOmZpcnN0LWNoaWxke2JvcmRlci10b3AtbGVmdC1yYWRpdXM6Y2FsYyguMjVyZW0gLSAxcHgpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KTtib3JkZXItdG9wLXdpZHRoOjB9LmNhcmQ+Lmxpc3QtZ3JvdXA6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KTtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCk7Ym9yZGVyLWJvdHRvbS13aWR0aDowfS5jYXJkPi5jYXJkLWhlYWRlcisubGlzdC1ncm91cCwuY2FyZD4ubGlzdC1ncm91cCsuY2FyZC1mb290ZXJ7Ym9yZGVyLXRvcDowfS5jYXJkLWJvZHl7ZmxleDoxIDEgYXV0bzttaW4taGVpZ2h0OjFweDtwYWRkaW5nOjEuMjVyZW19LmNhcmQtdGl0bGV7bWFyZ2luLWJvdHRvbTouNzVyZW19LmNhcmQtc3VidGl0bGV7bWFyZ2luLXRvcDotLjM3NXJlbX0uY2FyZC1zdWJ0aXRsZSwuY2FyZC10ZXh0Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5jYXJkLWxpbms6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmNhcmQtbGluaysuY2FyZC1saW5re21hcmdpbi1sZWZ0OjEuMjVyZW19LmNhcmQtaGVhZGVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDMpO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSk7bWFyZ2luLWJvdHRvbTowO3BhZGRpbmc6Ljc1cmVtIDEuMjVyZW19LmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxke2JvcmRlci1yYWRpdXM6Y2FsYyguMjVyZW0gLSAxcHgpIGNhbGMoLjI1cmVtIC0gMXB4KSAwIDB9LmNhcmQtZm9vdGVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDMpO2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSk7cGFkZGluZzouNzVyZW0gMS4yNXJlbX0uY2FyZC1mb290ZXI6bGFzdC1jaGlsZHtib3JkZXItcmFkaXVzOjAgMCBjYWxjKC4yNXJlbSAtIDFweCkgY2FsYyguMjVyZW0gLSAxcHgpfS5jYXJkLWhlYWRlci10YWJze2JvcmRlci1ib3R0b206MDttYXJnaW4tYm90dG9tOi0uNzVyZW19LmNhcmQtaGVhZGVyLXBpbGxzLC5jYXJkLWhlYWRlci10YWJze21hcmdpbi1sZWZ0Oi0uNjI1cmVtO21hcmdpbi1yaWdodDotLjYyNXJlbX0uY2FyZC1pbWctb3ZlcmxheXtib3JkZXItcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KTtib3R0b206MDtsZWZ0OjA7cGFkZGluZzoxLjI1cmVtO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LmNhcmQtaW1nLC5jYXJkLWltZy1ib3R0b20sLmNhcmQtaW1nLXRvcHtmbGV4LXNocmluazowO3dpZHRoOjEwMCV9LmNhcmQtaW1nLC5jYXJkLWltZy10b3B7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCk7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6Y2FsYyguMjVyZW0gLSAxcHgpfS5jYXJkLWltZywuY2FyZC1pbWctYm90dG9te2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6Y2FsYyguMjVyZW0gLSAxcHgpO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KX0uY2FyZC1kZWNrIC5jYXJke21hcmdpbi1ib3R0b206MTVweH1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmNhcmQtZGVja3tkaXNwbGF5OmZsZXg7ZmxleC1mbG93OnJvdyB3cmFwO21hcmdpbi1sZWZ0Oi0xNXB4O21hcmdpbi1yaWdodDotMTVweH0uY2FyZC1kZWNrIC5jYXJke2ZsZXg6MSAwIDAlO21hcmdpbi1ib3R0b206MDttYXJnaW4tbGVmdDoxNXB4O21hcmdpbi1yaWdodDoxNXB4fX0uY2FyZC1ncm91cD4uY2FyZHttYXJnaW4tYm90dG9tOjE1cHh9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5jYXJkLWdyb3Vwe2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6cm93IHdyYXB9LmNhcmQtZ3JvdXA+LmNhcmR7ZmxleDoxIDAgMCU7bWFyZ2luLWJvdHRvbTowfS5jYXJkLWdyb3VwPi5jYXJkKy5jYXJke2JvcmRlci1sZWZ0OjA7bWFyZ2luLWxlZnQ6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWhlYWRlciwuY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3B7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWZvb3RlciwuY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b217Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowfS5jYXJkLWdyb3VwPi5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWhlYWRlciwuY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctdG9we2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1mb290ZXIsLmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbXtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9fS5jYXJkLWNvbHVtbnMgLmNhcmR7bWFyZ2luLWJvdHRvbTouNzVyZW19QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5jYXJkLWNvbHVtbnN7LW1vei1jb2x1bW4tY291bnQ6Mztjb2x1bW4tY291bnQ6MzstbW96LWNvbHVtbi1nYXA6MS4yNXJlbTtjb2x1bW4tZ2FwOjEuMjVyZW07b3JwaGFuczoxO3dpZG93czoxfS5jYXJkLWNvbHVtbnMgLmNhcmR7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTAwJX19LmFjY29yZGlvbntvdmVyZmxvdy1hbmNob3I6bm9uZX0uYWNjb3JkaW9uPi5jYXJke292ZXJmbG93OmhpZGRlbn0uYWNjb3JkaW9uPi5jYXJkOm5vdCg6bGFzdC1vZi10eXBlKXtib3JkZXItYm90dG9tOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9LmFjY29yZGlvbj4uY2FyZDpub3QoOmZpcnN0LW9mLXR5cGUpe2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5hY2NvcmRpb24+LmNhcmQ+LmNhcmQtaGVhZGVye2JvcmRlci1yYWRpdXM6MDttYXJnaW4tYm90dG9tOi0xcHh9LmJyZWFkY3J1bWJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6LjI1cmVtO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luLWJvdHRvbTowO3BhZGRpbmc6Ljc1cmVtIDB9LmJyZWFkY3J1bWItaXRlbSsuYnJlYWRjcnVtYi1pdGVte3BhZGRpbmctbGVmdDouNXJlbX0uYnJlYWRjcnVtYi1pdGVtKy5icmVhZGNydW1iLWl0ZW06YmVmb3Jle2NvbG9yOiM2NjY7Y29udGVudDoiLyI7ZmxvYXQ6bGVmdDtwYWRkaW5nLXJpZ2h0Oi41cmVtfS5icmVhZGNydW1iLWl0ZW0rLmJyZWFkY3J1bWItaXRlbTpob3ZlcjpiZWZvcmV7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt0ZXh0LWRlY29yYXRpb246bm9uZX0uYnJlYWRjcnVtYi1pdGVtLmFjdGl2ZXtjb2xvcjojNjY2fS5wYWdpbmF0aW9ue2JvcmRlci1yYWRpdXM6LjI1cmVtO2Rpc3BsYXk6ZmxleDtsaXN0LXN0eWxlOm5vbmU7cGFkZGluZy1sZWZ0OjB9LnBhZ2UtbGlua3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjAgc29saWQgI2U1ZTVlNTtjb2xvcjojZDQwNTExO2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MS4yNTttYXJnaW4tbGVmdDowO3BhZGRpbmc6LjVyZW0gLjc1cmVtO3Bvc2l0aW9uOnJlbGF0aXZlfS5wYWdlLWxpbms6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViO2JvcmRlci1jb2xvcjojZTVlNWU1O2NvbG9yOiM4OTAzMGI7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ei1pbmRleDoyfS5wYWdlLWxpbms6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDIxMiw1LDE3LC4yNSk7b3V0bGluZTowO3otaW5kZXg6M30ucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmt7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czouMjVyZW07bWFyZ2luLWxlZnQ6MH0ucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGlua3tib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouMjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtfS5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmt7YmFja2dyb3VuZC1jb2xvcjojZDQwNTExO2JvcmRlci1jb2xvcjojZDQwNTExO2NvbG9yOiNmZmY7ei1pbmRleDozfS5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGlua3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiNlNWU1ZTU7Y29sb3I6IzY2NjtjdXJzb3I6YXV0bztwb2ludGVyLWV2ZW50czpub25lfS5wYWdpbmF0aW9uLWxnIC5wYWdlLWxpbmt7Zm9udC1zaXplOjEuMjVyZW07bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6Ljc1cmVtIDEuNXJlbX0ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmt7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MH0ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGlua3tib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LnBhZ2luYXRpb24tc20gLnBhZ2UtbGlua3tmb250LXNpemU6Ljg3NXJlbTtsaW5lLWhlaWdodDoxLjU7cGFkZGluZzouMjVyZW0gLjVyZW19LnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5re2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjB9LnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmt7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5iYWRnZXtib3JkZXItcmFkaXVzOi4yNXJlbTtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6NzUlO2ZvbnQtd2VpZ2h0OjcwMDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6LjI1ZW0gLjRlbTt0ZXh0LWFsaWduOmNlbnRlcjt0cmFuc2l0aW9uOmNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmJhZGdle3RyYW5zaXRpb246bm9uZX19YS5iYWRnZTpmb2N1cyxhLmJhZGdlOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS5iYWRnZTplbXB0eXtkaXNwbGF5Om5vbmV9LmJ0biAuYmFkZ2UsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiAuYmFkZ2UsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24gLmJhZGdlLGJvZHk+I290LXNkay1idG4gLmJhZGdle3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotMXB4fS5iYWRnZS1waWxse2JvcmRlci1yYWRpdXM6MTByZW07cGFkZGluZy1sZWZ0Oi42ZW07cGFkZGluZy1yaWdodDouNmVtfS5iYWRnZS1wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtjb2xvcjojZmZmfWEuYmFkZ2UtcHJpbWFyeTpmb2N1cyxhLmJhZGdlLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojYTIwNDBkO2NvbG9yOiNmZmZ9YS5iYWRnZS1wcmltYXJ5LmZvY3VzLGEuYmFkZ2UtcHJpbWFyeTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjEyLDUsMTcsLjUpO291dGxpbmU6MH0uYmFkZ2Utc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6IzY2Njtjb2xvcjojZmZmfWEuYmFkZ2Utc2Vjb25kYXJ5OmZvY3VzLGEuYmFkZ2Utc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQtY29sb3I6IzRkNGQ0ZDtjb2xvcjojZmZmfWEuYmFkZ2Utc2Vjb25kYXJ5LmZvY3VzLGEuYmFkZ2Utc2Vjb25kYXJ5OmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gaHNsYSgwLDAlLDQwJSwuNSk7b3V0bGluZTowfS5iYWRnZS1zdWNjZXNze2JhY2tncm91bmQtY29sb3I6IzI4YTc0NTtjb2xvcjojZmZmfWEuYmFkZ2Utc3VjY2Vzczpmb2N1cyxhLmJhZGdlLXN1Y2Nlc3M6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWU3ZTM0O2NvbG9yOiNmZmZ9YS5iYWRnZS1zdWNjZXNzLmZvY3VzLGEuYmFkZ2Utc3VjY2Vzczpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNDAsMTY3LDY5LC41KTtvdXRsaW5lOjB9LmJhZGdlLWluZm97YmFja2dyb3VuZC1jb2xvcjojMTdhMmI4O2NvbG9yOiNmZmZ9YS5iYWRnZS1pbmZvOmZvY3VzLGEuYmFkZ2UtaW5mbzpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMxMTdhOGI7Y29sb3I6I2ZmZn1hLmJhZGdlLWluZm8uZm9jdXMsYS5iYWRnZS1pbmZvOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMywxNjIsMTg0LC41KTtvdXRsaW5lOjB9LmJhZGdlLXdhcm5pbmd7YmFja2dyb3VuZC1jb2xvcjojZmMwO2NvbG9yOiMyMTI1Mjl9YS5iYWRnZS13YXJuaW5nOmZvY3VzLGEuYmFkZ2Utd2FybmluZzpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNjY2EzMDA7Y29sb3I6IzIxMjUyOX1hLmJhZGdlLXdhcm5pbmcuZm9jdXMsYS5iYWRnZS13YXJuaW5nOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyNTUsMjA0LDAsLjUpO291dGxpbmU6MH0uYmFkZ2UtZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtjb2xvcjojZmZmfWEuYmFkZ2UtZGFuZ2VyOmZvY3VzLGEuYmFkZ2UtZGFuZ2VyOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2EyMDQwZDtjb2xvcjojZmZmfWEuYmFkZ2UtZGFuZ2VyLmZvY3VzLGEuYmFkZ2UtZGFuZ2VyOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTIsNSwxNywuNSk7b3V0bGluZTowfS5iYWRnZS1saWdodHtiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjI7Y29sb3I6IzIxMjUyOX1hLmJhZGdlLWxpZ2h0OmZvY3VzLGEuYmFkZ2UtbGlnaHQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZDlkOWQ5O2NvbG9yOiMyMTI1Mjl9YS5iYWRnZS1saWdodC5mb2N1cyxhLmJhZGdlLWxpZ2h0OmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gaHNsYSgwLDAlLDk1JSwuNSk7b3V0bGluZTowfS5iYWRnZS1kYXJre2JhY2tncm91bmQtY29sb3I6IzMzMztjb2xvcjojZmZmfWEuYmFkZ2UtZGFyazpmb2N1cyxhLmJhZGdlLWRhcms6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWExYTFhO2NvbG9yOiNmZmZ9YS5iYWRnZS1kYXJrLmZvY3VzLGEuYmFkZ2UtZGFyazpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNTEsNTEsNTEsLjUpO291dGxpbmU6MH0uanVtYm90cm9ue2JhY2tncm91bmQtY29sb3I6I2ViZWJlYjtib3JkZXItcmFkaXVzOi4zcmVtO21hcmdpbi1ib3R0b206MnJlbTtwYWRkaW5nOjJyZW0gMXJlbX1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7Lmp1bWJvdHJvbntwYWRkaW5nOjRyZW0gMnJlbX19Lmp1bWJvdHJvbi1mbHVpZHtib3JkZXItcmFkaXVzOjA7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfS5hbGVydHtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO21hcmdpbi1ib3R0b206MXJlbTtwYWRkaW5nOi43NXJlbSAxLjI1cmVtO3Bvc2l0aW9uOnJlbGF0aXZlfS5hbGVydC1oZWFkaW5ne2NvbG9yOmluaGVyaXR9LmFsZXJ0LWxpbmt7Zm9udC13ZWlnaHQ6NzAwfS5hbGVydC1kaXNtaXNzaWJsZXtwYWRkaW5nLXJpZ2h0OjRyZW19LmFsZXJ0LWRpc21pc3NpYmxlIC5jbG9zZXtjb2xvcjppbmhlcml0O3BhZGRpbmc6Ljc1cmVtIDEuMjVyZW07cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt6LWluZGV4OjJ9LmFsZXJ0LXByaW1hcnl7YmFja2dyb3VuZC1jb2xvcjojZDQwNTExO2JvcmRlci1jb2xvcjojZDQwNTExO2NvbG9yOiNmZGY1ZjV9LmFsZXJ0LXByaW1hcnkgaHJ7Ym9yZGVyLXRvcC1jb2xvcjojYmIwNDBmfS5hbGVydC1wcmltYXJ5IC5hbGVydC1saW5re2NvbG9yOiNmNWNiY2J9LmFsZXJ0LXNlY29uZGFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM2NjY7Ym9yZGVyLWNvbG9yOiM2NjY7Y29sb3I6I2Y5ZjlmOX0uYWxlcnQtc2Vjb25kYXJ5IGhye2JvcmRlci10b3AtY29sb3I6IzU5NTk1OX0uYWxlcnQtc2Vjb25kYXJ5IC5hbGVydC1saW5re2NvbG9yOiNlMGUwZTB9LmFsZXJ0LXN1Y2Nlc3N7YmFja2dyb3VuZC1jb2xvcjojMjhhNzQ1O2JvcmRlci1jb2xvcjojMjhhNzQ1O2NvbG9yOiNmNmZiZjh9LmFsZXJ0LXN1Y2Nlc3MgaHJ7Ym9yZGVyLXRvcC1jb2xvcjojMjM5MjNkfS5hbGVydC1zdWNjZXNzIC5hbGVydC1saW5re2NvbG9yOiNkM2ViZGR9LmFsZXJ0LWluZm97YmFja2dyb3VuZC1jb2xvcjojMTdhMmI4O2JvcmRlci1jb2xvcjojMTdhMmI4O2NvbG9yOiNmNmZiZmN9LmFsZXJ0LWluZm8gaHJ7Ym9yZGVyLXRvcC1jb2xvcjojMTQ4ZWExfS5hbGVydC1pbmZvIC5hbGVydC1saW5re2NvbG9yOiNkMGVhZWZ9LmFsZXJ0LXdhcm5pbmd7YmFja2dyb3VuZC1jb2xvcjojZmMwO2JvcmRlci1jb2xvcjojZmMwO2NvbG9yOiNmZmZkZjV9LmFsZXJ0LXdhcm5pbmcgaHJ7Ym9yZGVyLXRvcC1jb2xvcjojZTZiODAwfS5hbGVydC13YXJuaW5nIC5hbGVydC1saW5re2NvbG9yOiNmZmYzYzJ9LmFsZXJ0LWRhbmdlcntiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTE7Ym9yZGVyLWNvbG9yOiNkNDA1MTE7Y29sb3I6I2ZkZjVmNX0uYWxlcnQtZGFuZ2VyIGhye2JvcmRlci10b3AtY29sb3I6I2JiMDQwZn0uYWxlcnQtZGFuZ2VyIC5hbGVydC1saW5re2NvbG9yOiNmNWNiY2J9LmFsZXJ0LWxpZ2h0e2JhY2tncm91bmQtY29sb3I6I2YyZjJmMjtib3JkZXItY29sb3I6I2YyZjJmMjtjb2xvcjojZmVmZWZlfS5hbGVydC1saWdodCBocntib3JkZXItdG9wLWNvbG9yOiNlNWU1ZTV9LmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5re2NvbG9yOiNlNWU1ZTV9LmFsZXJ0LWRhcmt7YmFja2dyb3VuZC1jb2xvcjojMzMzO2JvcmRlci1jb2xvcjojMzMzO2NvbG9yOiNmN2Y3Zjd9LmFsZXJ0LWRhcmsgaHJ7Ym9yZGVyLXRvcC1jb2xvcjojMjYyNjI2fS5hbGVydC1kYXJrIC5hbGVydC1saW5re2NvbG9yOiNkZWRlZGV9QGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlc3swJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjFyZW0gMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMH19LnByb2dyZXNze2JhY2tncm91bmQtY29sb3I6I2ViZWJlYjtib3JkZXItcmFkaXVzOi4yNXJlbTtmb250LXNpemU6Ljc1cmVtO2hlaWdodDoxcmVtO2xpbmUtaGVpZ2h0OjB9LnByb2dyZXNzLC5wcm9ncmVzcy1iYXJ7ZGlzcGxheTpmbGV4O292ZXJmbG93OmhpZGRlbn0ucHJvZ3Jlc3MtYmFye2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtjb2xvcjojZmZmO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RleHQtYWxpZ246Y2VudGVyO3RyYW5zaXRpb246d2lkdGggLjZzIGVhc2U7d2hpdGUtc3BhY2U6bm93cmFwfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5wcm9ncmVzcy1iYXJ7dHJhbnNpdGlvbjpub25lfX0ucHJvZ3Jlc3MtYmFyLXN0cmlwZWR7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoNDVkZWcsaHNsYSgwLDAlLDEwMCUsLjE1KSAyNSUsdHJhbnNwYXJlbnQgMCx0cmFuc3BhcmVudCA1MCUsaHNsYSgwLDAlLDEwMCUsLjE1KSAwLGhzbGEoMCwwJSwxMDAlLC4xNSkgNzUlLHRyYW5zcGFyZW50IDAsdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtc2l6ZToxcmVtIDFyZW19LnByb2dyZXNzLWJhci1hbmltYXRlZHthbmltYXRpb246cHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMXMgbGluZWFyIGluZmluaXRlfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5wcm9ncmVzcy1iYXItYW5pbWF0ZWR7YW5pbWF0aW9uOm5vbmV9fS5tZWRpYXthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2Rpc3BsYXk6ZmxleH0ubWVkaWEtYm9keXtmbGV4OjF9Lmxpc3QtZ3JvdXB7Ym9yZGVyLXJhZGl1czouMjVyZW07ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW4tYm90dG9tOjA7cGFkZGluZy1sZWZ0OjB9Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb257Y29sb3I6IzQ5NTA1Nzt0ZXh0LWFsaWduOmluaGVyaXQ7d2lkdGg6MTAwJX0ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjI7Y29sb3I6IzQ5NTA1Nzt0ZXh0LWRlY29yYXRpb246bm9uZTt6LWluZGV4OjF9Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246YWN0aXZle2JhY2tncm91bmQtY29sb3I6I2ViZWJlYjtjb2xvcjpyZ2JhKDAsMCwwLC45KX0ubGlzdC1ncm91cC1pdGVte2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSk7ZGlzcGxheTpibG9jaztwYWRkaW5nOi43NXJlbSAxLjI1cmVtO3Bvc2l0aW9uOnJlbGF0aXZlfS5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czppbmhlcml0O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmluaGVyaXR9Lmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxke2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6aW5oZXJpdDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czppbmhlcml0fS5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQsLmxpc3QtZ3JvdXAtaXRlbTpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzY2Njtwb2ludGVyLWV2ZW50czpub25lfS5saXN0LWdyb3VwLWl0ZW0uYWN0aXZle2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtib3JkZXItY29sb3I6I2Q0MDUxMTtjb2xvcjojZmZmO3otaW5kZXg6Mn0ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW17Ym9yZGVyLXRvcC13aWR0aDowfS5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7Ym9yZGVyLXRvcC13aWR0aDoxcHg7bWFyZ2luLXRvcDotMXB4fS5saXN0LWdyb3VwLWhvcml6b250YWx7ZmxleC1kaXJlY3Rpb246cm93fS5saXN0LWdyb3VwLWhvcml6b250YWw+Lmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4yNXJlbTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5saXN0LWdyb3VwLWhvcml6b250YWw+Lmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxke2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW19Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbD4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXttYXJnaW4tdG9wOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbD4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW17Ym9yZGVyLWxlZnQtd2lkdGg6MDtib3JkZXItdG9wLXdpZHRoOjFweH0ubGlzdC1ncm91cC1ob3Jpem9udGFsPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7Ym9yZGVyLWxlZnQtd2lkdGg6MXB4O21hcmdpbi1sZWZ0Oi0xcHh9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5saXN0LWdyb3VwLWhvcml6b250YWwtc217ZmxleC1kaXJlY3Rpb246cm93fS5saXN0LWdyb3VwLWhvcml6b250YWwtc20+Lmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4yNXJlbTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5saXN0LWdyb3VwLWhvcml6b250YWwtc20+Lmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxke2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW19Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbT4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXttYXJnaW4tdG9wOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbT4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW17Ym9yZGVyLWxlZnQtd2lkdGg6MDtib3JkZXItdG9wLXdpZHRoOjFweH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7Ym9yZGVyLWxlZnQtd2lkdGg6MXB4O21hcmdpbi1sZWZ0Oi0xcHh9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubGlzdC1ncm91cC1ob3Jpem9udGFsLW1ke2ZsZXgtZGlyZWN0aW9uOnJvd30ubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kPi5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kPi5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtfS5saXN0LWdyb3VwLWhvcml6b250YWwtbWQ+Lmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7bWFyZ2luLXRvcDowfS5saXN0LWdyb3VwLWhvcml6b250YWwtbWQ+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVte2JvcmRlci1sZWZ0LXdpZHRoOjA7Ym9yZGVyLXRvcC13aWR0aDoxcHh9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZD4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW0uYWN0aXZle2JvcmRlci1sZWZ0LXdpZHRoOjFweDttYXJnaW4tbGVmdDotMXB4fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZ3tmbGV4LWRpcmVjdGlvbjpyb3d9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZz4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxke2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjI1cmVtO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZz4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOi4yNXJlbX0ubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnPi5saXN0LWdyb3VwLWl0ZW0uYWN0aXZle21hcmdpbi10b3A6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbXtib3JkZXItbGVmdC13aWR0aDowO2JvcmRlci10b3Atd2lkdGg6MXB4fS5saXN0LWdyb3VwLWhvcml6b250YWwtbGc+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXtib3JkZXItbGVmdC13aWR0aDoxcHg7bWFyZ2luLWxlZnQ6LTFweH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsubGlzdC1ncm91cC1ob3Jpem9udGFsLXhse2ZsZXgtZGlyZWN0aW9uOnJvd30ubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsPi5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsPi5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtfS5saXN0LWdyb3VwLWhvcml6b250YWwteGw+Lmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7bWFyZ2luLXRvcDowfS5saXN0LWdyb3VwLWhvcml6b250YWwteGw+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVte2JvcmRlci1sZWZ0LXdpZHRoOjA7Ym9yZGVyLXRvcC13aWR0aDoxcHh9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bD4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW0uYWN0aXZle2JvcmRlci1sZWZ0LXdpZHRoOjFweDttYXJnaW4tbGVmdDotMXB4fX0ubGlzdC1ncm91cC1mbHVzaHtib3JkZXItcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtZmx1c2g+Lmxpc3QtZ3JvdXAtaXRlbXtib3JkZXItd2lkdGg6MCAwIDFweH0ubGlzdC1ncm91cC1mbHVzaD4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbS13aWR0aDowfS5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiNmM2I5YmM7Y29sb3I6IzZlMDMwOX0ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNlZmEzYTc7Y29sb3I6IzZlMDMwOX0ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojNmUwMzA5O2JvcmRlci1jb2xvcjojNmUwMzA5O2NvbG9yOiNmZmZ9Lmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnl7YmFja2dyb3VuZC1jb2xvcjojZDRkNGQ0O2NvbG9yOiMzNTM1MzV9Lmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2M3YzdjNztjb2xvcjojMzUzNTM1fS5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZle2JhY2tncm91bmQtY29sb3I6IzM1MzUzNTtib3JkZXItY29sb3I6IzM1MzUzNTtjb2xvcjojZmZmfS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiNjM2U2Y2I7Y29sb3I6IzE1NTcyNH0ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNiMWRmYmI7Y29sb3I6IzE1NTcyNH0ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojMTU1NzI0O2JvcmRlci1jb2xvcjojMTU1NzI0O2NvbG9yOiNmZmZ9Lmxpc3QtZ3JvdXAtaXRlbS1pbmZve2JhY2tncm91bmQtY29sb3I6I2JlZTVlYjtjb2xvcjojMGM1NDYwfS5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLC5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2FiZGRlNTtjb2xvcjojMGM1NDYwfS5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwYzU0NjA7Ym9yZGVyLWNvbG9yOiMwYzU0NjA7Y29sb3I6I2ZmZn0ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmd7YmFja2dyb3VuZC1jb2xvcjojZmZmMWI4O2NvbG9yOiM4NTZhMDB9Lmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZlYzlmO2NvbG9yOiM4NTZhMDB9Lmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZle2JhY2tncm91bmQtY29sb3I6Izg1NmEwMDtib3JkZXItY29sb3I6Izg1NmEwMDtjb2xvcjojZmZmfS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2YzYjliYztjb2xvcjojNmUwMzA5fS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNlZmEzYTc7Y29sb3I6IzZlMDMwOX0ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiM2ZTAzMDk7Ym9yZGVyLWNvbG9yOiM2ZTAzMDk7Y29sb3I6I2ZmZn0ubGlzdC1ncm91cC1pdGVtLWxpZ2h0e2JhY2tncm91bmQtY29sb3I6I2ZiZmJmYjtjb2xvcjojN2U3ZTdlfS5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWVlO2NvbG9yOiM3ZTdlN2V9Lmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiM3ZTdlN2U7Ym9yZGVyLWNvbG9yOiM3ZTdlN2U7Y29sb3I6I2ZmZn0ubGlzdC1ncm91cC1pdGVtLWRhcmt7YmFja2dyb3VuZC1jb2xvcjojYzZjNmM2O2NvbG9yOiMxYjFiMWJ9Lmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojYjliOWI5O2NvbG9yOiMxYjFiMWJ9Lmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZle2JhY2tncm91bmQtY29sb3I6IzFiMWIxYjtib3JkZXItY29sb3I6IzFiMWIxYjtjb2xvcjojZmZmfS5jbG9zZXtjb2xvcjojMDAwO2Zsb2F0OnJpZ2h0O2ZvbnQtc2l6ZToxLjVyZW07Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjE7b3BhY2l0eTouNTt0ZXh0LXNoYWRvdzowIDFweCAwICNmZmZ9LmNsb3NlOmhvdmVye2NvbG9yOiMwMDA7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmNsb3NlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmZvY3VzLC5jbG9zZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpob3ZlcntvcGFjaXR5Oi43NX1idXR0b24uY2xvc2V7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MDtwYWRkaW5nOjB9YS5jbG9zZS5kaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lfS5tb2RhbC1vcGVue292ZXJmbG93OmhpZGRlbn0ubW9kYWwtb3BlbiAubW9kYWx7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvfS5tb2RhbHtkaXNwbGF5Om5vbmU7aGVpZ2h0OjEwMCU7bGVmdDowO291dGxpbmU6MDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246Zml4ZWQ7dG9wOjA7d2lkdGg6MTAwJTt6LWluZGV4OjEwNTB9Lm1vZGFsLWRpYWxvZ3ttYXJnaW46LjVyZW07cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDphdXRvfS5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2d7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwcHgpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyBlYXNlLW91dH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9ne3RyYW5zaXRpb246bm9uZX19Lm1vZGFsLnNob3cgLm1vZGFsLWRpYWxvZ3t0cmFuc2Zvcm06bm9uZX0ubW9kYWwubW9kYWwtc3RhdGljIC5tb2RhbC1kaWFsb2d7dHJhbnNmb3JtOnNjYWxlKDEuMDIpfS5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZXtkaXNwbGF5OmZsZXg7bWF4LWhlaWdodDpjYWxjKDEwMCUgLSAxcmVtKX0ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnR7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMXJlbSk7b3ZlcmZsb3c6aGlkZGVufS5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtZm9vdGVyLC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtaGVhZGVye2ZsZXgtc2hyaW5rOjB9Lm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1ib2R5e292ZXJmbG93LXk6YXV0b30ubW9kYWwtZGlhbG9nLWNlbnRlcmVke2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7bWluLWhlaWdodDpjYWxjKDEwMCUgLSAxcmVtKX0ubW9kYWwtZGlhbG9nLWNlbnRlcmVkOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OmNhbGMoMTAwdmggLSAxcmVtKTtoZWlnaHQ6LW1vei1taW4tY29udGVudDtoZWlnaHQ6bWluLWNvbnRlbnR9Lm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW47aGVpZ2h0OjEwMCU7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50e21heC1oZWlnaHQ6bm9uZX0ubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlOmJlZm9yZXtjb250ZW50Om5vbmV9Lm1vZGFsLWNvbnRlbnR7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpO2JvcmRlci1yYWRpdXM6LjNyZW07ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdXRsaW5lOjA7cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlfS5tb2RhbC1iYWNrZHJvcHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7aGVpZ2h0OjEwMHZoO2xlZnQ6MDtwb3NpdGlvbjpmaXhlZDt0b3A6MDt3aWR0aDoxMDB2dzt6LWluZGV4OjEwNDB9Lm1vZGFsLWJhY2tkcm9wLmZhZGV7b3BhY2l0eTowfS5tb2RhbC1iYWNrZHJvcC5zaG93e29wYWNpdHk6LjV9Lm1vZGFsLWhlYWRlcnthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlNWU1ZTU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czpjYWxjKC4zcmVtIC0gMXB4KTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czpjYWxjKC4zcmVtIC0gMXB4KTtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzoxcmVtfS5tb2RhbC1oZWFkZXIgLmNsb3Nle21hcmdpbjotMXJlbSAtMXJlbSAtMXJlbSBhdXRvO3BhZGRpbmc6MXJlbX0ubW9kYWwtdGl0bGV7bGluZS1oZWlnaHQ6MS41O21hcmdpbi1ib3R0b206MH0ubW9kYWwtYm9keXtmbGV4OjEgMSBhdXRvO3BhZGRpbmc6MXJlbTtwb3NpdGlvbjpyZWxhdGl2ZX0ubW9kYWwtZm9vdGVye2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOmNhbGMoLjNyZW0gLSAxcHgpO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOmNhbGMoLjNyZW0gLSAxcHgpO2JvcmRlci10b3A6MXB4IHNvbGlkICNlNWU1ZTU7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtwYWRkaW5nOi43NXJlbX0ubW9kYWwtZm9vdGVyPip7bWFyZ2luOi4yNXJlbX0ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmV7aGVpZ2h0OjUwcHg7b3ZlcmZsb3c6c2Nyb2xsO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotOTk5OXB4O3dpZHRoOjUwcHh9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5tb2RhbC1kaWFsb2d7bWFyZ2luOjEuNzVyZW0gYXV0bzttYXgtd2lkdGg6NTAwcHh9Lm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxle21heC1oZWlnaHQ6Y2FsYygxMDAlIC0gMy41cmVtKX0ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnR7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMy41cmVtKX0ubW9kYWwtZGlhbG9nLWNlbnRlcmVke21pbi1oZWlnaHQ6Y2FsYygxMDAlIC0gMy41cmVtKX0ubW9kYWwtZGlhbG9nLWNlbnRlcmVkOmJlZm9yZXtoZWlnaHQ6Y2FsYygxMDB2aCAtIDMuNXJlbSk7aGVpZ2h0Oi1tb3otbWluLWNvbnRlbnQ7aGVpZ2h0Om1pbi1jb250ZW50fS5tb2RhbC1zbXttYXgtd2lkdGg6MzAwcHh9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsubW9kYWwtbGcsLm1vZGFsLXhse21heC13aWR0aDo4MDBweH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsubW9kYWwteGx7bWF4LXdpZHRoOjExNDBweH19LnRvb2x0aXB7d29yZC13cmFwOmJyZWFrLXdvcmQ7ZGlzcGxheTpibG9jaztmb250LWZhbWlseTpEZWxpdmVyeSwtYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxTZWdvZSBVSSxSb2JvdG8sSGVsdmV0aWNhIE5ldWUsQXJpYWwsTm90byBTYW5zLHNhbnMtc2VyaWYsQXBwbGUgQ29sb3IgRW1vamksU2Vnb2UgVUkgRW1vamksU2Vnb2UgVUkgU3ltYm9sLE5vdG8gQ29sb3IgRW1vamk7Zm9udC1zaXplOi44NzVyZW07Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2xldHRlci1zcGFjaW5nOm5vcm1hbDtsaW5lLWJyZWFrOmF1dG87bGluZS1oZWlnaHQ6MS41O21hcmdpbjowO29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmxlZnQ7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LWRlY29yYXRpb246bm9uZTt0ZXh0LXNoYWRvdzpub25lO3RleHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtYnJlYWs6bm9ybWFsO3dvcmQtc3BhY2luZzpub3JtYWw7ei1pbmRleDoxMDcwfS50b29sdGlwLnNob3d7b3BhY2l0eTouOX0udG9vbHRpcCAuYXJyb3d7ZGlzcGxheTpibG9jaztoZWlnaHQ6LjRyZW07cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6LjhyZW19LnRvb2x0aXAgLmFycm93OmJlZm9yZXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkO2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGV9LmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSwuYnMtdG9vbHRpcC10b3B7cGFkZGluZzouNHJlbSAwfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93LC5icy10b29sdGlwLXRvcCAuYXJyb3d7Ym90dG9tOjB9LmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSAuYXJyb3c6YmVmb3JlLC5icy10b29sdGlwLXRvcCAuYXJyb3c6YmVmb3Jle2JvcmRlci10b3AtY29sb3I6IzAwMDtib3JkZXItd2lkdGg6LjRyZW0gLjRyZW0gMDt0b3A6MH0uYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0sLmJzLXRvb2x0aXAtcmlnaHR7cGFkZGluZzowIC40cmVtfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSAuYXJyb3csLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93e2hlaWdodDouOHJlbTtsZWZ0OjA7d2lkdGg6LjRyZW19LmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdIC5hcnJvdzpiZWZvcmUsLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93OmJlZm9yZXtib3JkZXItcmlnaHQtY29sb3I6IzAwMDtib3JkZXItd2lkdGg6LjRyZW0gLjRyZW0gLjRyZW0gMDtyaWdodDowfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0sLmJzLXRvb2x0aXAtYm90dG9te3BhZGRpbmc6LjRyZW0gMH0uYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dIC5hcnJvdywuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93e3RvcDowfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gLmFycm93OmJlZm9yZSwuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OmJlZm9yZXtib3JkZXItYm90dG9tLWNvbG9yOiMwMDA7Ym9yZGVyLXdpZHRoOjAgLjRyZW0gLjRyZW07Ym90dG9tOjB9LmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49bGVmdF0sLmJzLXRvb2x0aXAtbGVmdHtwYWRkaW5nOjAgLjRyZW19LmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49bGVmdF0gLmFycm93LC5icy10b29sdGlwLWxlZnQgLmFycm93e2hlaWdodDouOHJlbTtyaWdodDowO3dpZHRoOi40cmVtfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIC5hcnJvdzpiZWZvcmUsLmJzLXRvb2x0aXAtbGVmdCAuYXJyb3c6YmVmb3Jle2JvcmRlci1sZWZ0LWNvbG9yOiMwMDA7Ym9yZGVyLXdpZHRoOi40cmVtIDAgLjRyZW0gLjRyZW07bGVmdDowfS50b29sdGlwLWlubmVye2JhY2tncm91bmQtY29sb3I6IzAwMDtib3JkZXItcmFkaXVzOi4yNXJlbTtjb2xvcjojZmZmO21heC13aWR0aDoyMDBweDtwYWRkaW5nOi4yNXJlbSAuNXJlbTt0ZXh0LWFsaWduOmNlbnRlcn0ucG9wb3Zlcnt3b3JkLXdyYXA6YnJlYWstd29yZDtiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwuMik7Ym9yZGVyLXJhZGl1czouM3JlbTtmb250LWZhbWlseTpEZWxpdmVyeSwtYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxTZWdvZSBVSSxSb2JvdG8sSGVsdmV0aWNhIE5ldWUsQXJpYWwsTm90byBTYW5zLHNhbnMtc2VyaWYsQXBwbGUgQ29sb3IgRW1vamksU2Vnb2UgVUkgRW1vamksU2Vnb2UgVUkgU3ltYm9sLE5vdG8gQ29sb3IgRW1vamk7Zm9udC1zaXplOi44NzVyZW07Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2xlZnQ6MDtsZXR0ZXItc3BhY2luZzpub3JtYWw7bGluZS1icmVhazphdXRvO2xpbmUtaGVpZ2h0OjEuNTttYXgtd2lkdGg6Mjc2cHg7dGV4dC1hbGlnbjpsZWZ0O3RleHQtYWxpZ246c3RhcnQ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1zaGFkb3c6bm9uZTt0ZXh0LXRyYW5zZm9ybTpub25lO3RvcDowO3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLWJyZWFrOm5vcm1hbDt3b3JkLXNwYWNpbmc6bm9ybWFsO3otaW5kZXg6MTA2MH0ucG9wb3ZlciwucG9wb3ZlciAuYXJyb3d7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZX0ucG9wb3ZlciAuYXJyb3d7aGVpZ2h0Oi41cmVtO21hcmdpbjowIC4zcmVtO3dpZHRoOjFyZW19LnBvcG92ZXIgLmFycm93OmFmdGVyLC5wb3BvdmVyIC5hcnJvdzpiZWZvcmV7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1zdHlsZTpzb2xpZDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGV9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSwuYnMtcG9wb3Zlci10b3B7bWFyZ2luLWJvdHRvbTouNXJlbX0uYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj10b3BdPi5hcnJvdywuYnMtcG9wb3Zlci10b3A+LmFycm93e2JvdHRvbTpjYWxjKC0uNXJlbSAtIDFweCl9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXT4uYXJyb3c6YmVmb3JlLC5icy1wb3BvdmVyLXRvcD4uYXJyb3c6YmVmb3Jle2JvcmRlci10b3AtY29sb3I6cmdiYSgwLDAsMCwuMjUpO2JvcmRlci13aWR0aDouNXJlbSAuNXJlbSAwO2JvdHRvbTowfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXRvcF0+LmFycm93OmFmdGVyLC5icy1wb3BvdmVyLXRvcD4uYXJyb3c6YWZ0ZXJ7Ym9yZGVyLXRvcC1jb2xvcjojZmZmO2JvcmRlci13aWR0aDouNXJlbSAuNXJlbSAwO2JvdHRvbToxcHh9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdLC5icy1wb3BvdmVyLXJpZ2h0e21hcmdpbi1sZWZ0Oi41cmVtfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XT4uYXJyb3csLmJzLXBvcG92ZXItcmlnaHQ+LmFycm93e2hlaWdodDoxcmVtO2xlZnQ6Y2FsYygtLjVyZW0gLSAxcHgpO21hcmdpbjouM3JlbSAwO3dpZHRoOi41cmVtfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XT4uYXJyb3c6YmVmb3JlLC5icy1wb3BvdmVyLXJpZ2h0Pi5hcnJvdzpiZWZvcmV7Ym9yZGVyLXJpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsLjI1KTtib3JkZXItd2lkdGg6LjVyZW0gLjVyZW0gLjVyZW0gMDtsZWZ0OjB9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdPi5hcnJvdzphZnRlciwuYnMtcG9wb3Zlci1yaWdodD4uYXJyb3c6YWZ0ZXJ7Ym9yZGVyLXJpZ2h0LWNvbG9yOiNmZmY7Ym9yZGVyLXdpZHRoOi41cmVtIC41cmVtIC41cmVtIDA7bGVmdDoxcHh9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSwuYnMtcG9wb3Zlci1ib3R0b217bWFyZ2luLXRvcDouNXJlbX0uYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dPi5hcnJvdywuYnMtcG9wb3Zlci1ib3R0b20+LmFycm93e3RvcDpjYWxjKC0uNXJlbSAtIDFweCl9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXT4uYXJyb3c6YmVmb3JlLC5icy1wb3BvdmVyLWJvdHRvbT4uYXJyb3c6YmVmb3Jle2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwuMjUpO2JvcmRlci13aWR0aDowIC41cmVtIC41cmVtO3RvcDowfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0+LmFycm93OmFmdGVyLC5icy1wb3BvdmVyLWJvdHRvbT4uYXJyb3c6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbS1jb2xvcjojZmZmO2JvcmRlci13aWR0aDowIC41cmVtIC41cmVtO3RvcDoxcHh9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAucG9wb3Zlci1oZWFkZXI6YmVmb3JlLC5icy1wb3BvdmVyLWJvdHRvbSAucG9wb3Zlci1oZWFkZXI6YmVmb3Jle2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNmN2Y3Zjc7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi0uNXJlbTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxcmVtfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdLC5icy1wb3BvdmVyLWxlZnR7bWFyZ2luLXJpZ2h0Oi41cmVtfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdPi5hcnJvdywuYnMtcG9wb3Zlci1sZWZ0Pi5hcnJvd3toZWlnaHQ6MXJlbTttYXJnaW46LjNyZW0gMDtyaWdodDpjYWxjKC0uNXJlbSAtIDFweCk7d2lkdGg6LjVyZW19LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0+LmFycm93OmJlZm9yZSwuYnMtcG9wb3Zlci1sZWZ0Pi5hcnJvdzpiZWZvcmV7Ym9yZGVyLWxlZnQtY29sb3I6cmdiYSgwLDAsMCwuMjUpO2JvcmRlci13aWR0aDouNXJlbSAwIC41cmVtIC41cmVtO3JpZ2h0OjB9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0+LmFycm93OmFmdGVyLC5icy1wb3BvdmVyLWxlZnQ+LmFycm93OmFmdGVye2JvcmRlci1sZWZ0LWNvbG9yOiNmZmY7Ym9yZGVyLXdpZHRoOi41cmVtIDAgLjVyZW0gLjVyZW07cmlnaHQ6MXB4fS5wb3BvdmVyLWhlYWRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y3Zjc7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2ViZWJlYjtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGMoLjNyZW0gLSAxcHgpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGMoLjNyZW0gLSAxcHgpO2ZvbnQtc2l6ZToxcmVtO21hcmdpbi1ib3R0b206MDtwYWRkaW5nOi41cmVtIC43NXJlbX0ucG9wb3Zlci1oZWFkZXI6ZW1wdHl7ZGlzcGxheTpub25lfS5wb3BvdmVyLWJvZHl7Y29sb3I6cmdiYSgwLDAsMCwuOSk7cGFkZGluZzouNXJlbSAuNzVyZW19QGtleWZyYW1lcyBzcGlubmVyLWJvcmRlcnt0b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19LnNwaW5uZXItYm9yZGVye2FuaW1hdGlvbjpzcGlubmVyLWJvcmRlciAuNzVzIGxpbmVhciBpbmZpbml0ZTtib3JkZXI6LjI1ZW0gc29saWQ7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyLXJpZ2h0Oi4yNWVtIHNvbGlkIHRyYW5zcGFyZW50O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoycmVtO3ZlcnRpY2FsLWFsaWduOi0uMTI1ZW07d2lkdGg6MnJlbX0uc3Bpbm5lci1ib3JkZXItc217Ym9yZGVyLXdpZHRoOi4yZW07aGVpZ2h0OjFyZW07d2lkdGg6MXJlbX1Aa2V5ZnJhbWVzIHNwaW5uZXItZ3Jvd3swJXt0cmFuc2Zvcm06c2NhbGUoMCl9NTAle29wYWNpdHk6MTt0cmFuc2Zvcm06bm9uZX19LnNwaW5uZXItZ3Jvd3thbmltYXRpb246c3Bpbm5lci1ncm93IC43NXMgbGluZWFyIGluZmluaXRlO2JhY2tncm91bmQtY29sb3I6Y3VycmVudGNvbG9yO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoycmVtO29wYWNpdHk6MDt2ZXJ0aWNhbC1hbGlnbjotLjEyNWVtO3dpZHRoOjJyZW19LnNwaW5uZXItZ3Jvdy1zbXtoZWlnaHQ6MXJlbTt3aWR0aDoxcmVtfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5zcGlubmVyLWJvcmRlciwuc3Bpbm5lci1ncm93e2FuaW1hdGlvbi1kdXJhdGlvbjoxLjVzfX0uYWxpZ24tYmFzZWxpbmV7dmVydGljYWwtYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi10b3B7dmVydGljYWwtYWxpZ246dG9wIWltcG9ydGFudH0uYWxpZ24tbWlkZGxle3ZlcnRpY2FsLWFsaWduOm1pZGRsZSFpbXBvcnRhbnR9LmFsaWduLWJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjpib3R0b20haW1wb3J0YW50fS5hbGlnbi10ZXh0LWJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjp0ZXh0LWJvdHRvbSFpbXBvcnRhbnR9LmFsaWduLXRleHQtdG9we3ZlcnRpY2FsLWFsaWduOnRleHQtdG9wIWltcG9ydGFudH0uYmctcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTEhaW1wb3J0YW50fWEuYmctcHJpbWFyeTpmb2N1cyxhLmJnLXByaW1hcnk6aG92ZXIsYnV0dG9uLmJnLXByaW1hcnk6Zm9jdXMsYnV0dG9uLmJnLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojYTIwNDBkIWltcG9ydGFudH0uYmctc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6IzY2NiFpbXBvcnRhbnR9YS5iZy1zZWNvbmRhcnk6Zm9jdXMsYS5iZy1zZWNvbmRhcnk6aG92ZXIsYnV0dG9uLmJnLXNlY29uZGFyeTpmb2N1cyxidXR0b24uYmctc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQtY29sb3I6IzRkNGQ0ZCFpbXBvcnRhbnR9LmJnLXN1Y2Nlc3N7YmFja2dyb3VuZC1jb2xvcjojMjhhNzQ1IWltcG9ydGFudH1hLmJnLXN1Y2Nlc3M6Zm9jdXMsYS5iZy1zdWNjZXNzOmhvdmVyLGJ1dHRvbi5iZy1zdWNjZXNzOmZvY3VzLGJ1dHRvbi5iZy1zdWNjZXNzOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzFlN2UzNCFpbXBvcnRhbnR9LmJnLWluZm97YmFja2dyb3VuZC1jb2xvcjojMTdhMmI4IWltcG9ydGFudH1hLmJnLWluZm86Zm9jdXMsYS5iZy1pbmZvOmhvdmVyLGJ1dHRvbi5iZy1pbmZvOmZvY3VzLGJ1dHRvbi5iZy1pbmZvOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzExN2E4YiFpbXBvcnRhbnR9LmJnLXdhcm5pbmd7YmFja2dyb3VuZC1jb2xvcjojZmMwIWltcG9ydGFudH1hLmJnLXdhcm5pbmc6Zm9jdXMsYS5iZy13YXJuaW5nOmhvdmVyLGJ1dHRvbi5iZy13YXJuaW5nOmZvY3VzLGJ1dHRvbi5iZy13YXJuaW5nOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2NjYTMwMCFpbXBvcnRhbnR9LmJnLWRhbmdlcntiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTEhaW1wb3J0YW50fWEuYmctZGFuZ2VyOmZvY3VzLGEuYmctZGFuZ2VyOmhvdmVyLGJ1dHRvbi5iZy1kYW5nZXI6Zm9jdXMsYnV0dG9uLmJnLWRhbmdlcjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNhMjA0MGQhaW1wb3J0YW50fS5iZy1saWdodHtiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjIhaW1wb3J0YW50fWEuYmctbGlnaHQ6Zm9jdXMsYS5iZy1saWdodDpob3ZlcixidXR0b24uYmctbGlnaHQ6Zm9jdXMsYnV0dG9uLmJnLWxpZ2h0OmhvdmVye2JhY2tncm91bmQtY29sb3I6I2Q5ZDlkOSFpbXBvcnRhbnR9LmJnLWRhcmt7YmFja2dyb3VuZC1jb2xvcjojMzMzIWltcG9ydGFudH1hLmJnLWRhcms6Zm9jdXMsYS5iZy1kYXJrOmhvdmVyLGJ1dHRvbi5iZy1kYXJrOmZvY3VzLGJ1dHRvbi5iZy1kYXJrOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzFhMWExYSFpbXBvcnRhbnR9LmJnLXdoaXRle2JhY2tncm91bmQtY29sb3I6I2ZmZiFpbXBvcnRhbnR9LmJnLXRyYW5zcGFyZW50e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS5ib3JkZXJ7Ym9yZGVyOjFweCBzb2xpZCAjZTVlNWU1IWltcG9ydGFudH0uYm9yZGVyLXRvcHtib3JkZXItdG9wOjFweCBzb2xpZCAjZTVlNWU1IWltcG9ydGFudH0uYm9yZGVyLXJpZ2h0e2JvcmRlci1yaWdodDoxcHggc29saWQgI2U1ZTVlNSFpbXBvcnRhbnR9LmJvcmRlci1ib3R0b217Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U1ZTVlNSFpbXBvcnRhbnR9LmJvcmRlci1sZWZ0e2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjZTVlNWU1IWltcG9ydGFudH0uYm9yZGVyLTB7Ym9yZGVyOjAhaW1wb3J0YW50fS5ib3JkZXItdG9wLTB7Ym9yZGVyLXRvcDowIWltcG9ydGFudH0uYm9yZGVyLXJpZ2h0LTB7Ym9yZGVyLXJpZ2h0OjAhaW1wb3J0YW50fS5ib3JkZXItYm90dG9tLTB7Ym9yZGVyLWJvdHRvbTowIWltcG9ydGFudH0uYm9yZGVyLWxlZnQtMHtib3JkZXItbGVmdDowIWltcG9ydGFudH0uYm9yZGVyLXByaW1hcnl7Ym9yZGVyLWNvbG9yOiNkNDA1MTEhaW1wb3J0YW50fS5ib3JkZXItc2Vjb25kYXJ5e2JvcmRlci1jb2xvcjojNjY2IWltcG9ydGFudH0uYm9yZGVyLXN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOiMyOGE3NDUhaW1wb3J0YW50fS5ib3JkZXItaW5mb3tib3JkZXItY29sb3I6IzE3YTJiOCFpbXBvcnRhbnR9LmJvcmRlci13YXJuaW5ne2JvcmRlci1jb2xvcjojZmMwIWltcG9ydGFudH0uYm9yZGVyLWRhbmdlcntib3JkZXItY29sb3I6I2Q0MDUxMSFpbXBvcnRhbnR9LmJvcmRlci1saWdodHtib3JkZXItY29sb3I6I2YyZjJmMiFpbXBvcnRhbnR9LmJvcmRlci1kYXJre2JvcmRlci1jb2xvcjojMzMzIWltcG9ydGFudH0uYm9yZGVyLXdoaXRle2JvcmRlci1jb2xvcjojZmZmIWltcG9ydGFudH0ucm91bmRlZC1zbXtib3JkZXItcmFkaXVzOi4ycmVtIWltcG9ydGFudH0ucm91bmRlZHtib3JkZXItcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnR9LnJvdW5kZWQtdG9we2JvcmRlci10b3AtbGVmdC1yYWRpdXM6LjI1cmVtIWltcG9ydGFudH0ucm91bmRlZC1yaWdodCwucm91bmRlZC10b3B7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtIWltcG9ydGFudH0ucm91bmRlZC1ib3R0b20sLnJvdW5kZWQtcmlnaHR7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjI1cmVtIWltcG9ydGFudH0ucm91bmRlZC1ib3R0b20sLnJvdW5kZWQtbGVmdHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnR9LnJvdW5kZWQtbGVmdHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnR9LnJvdW5kZWQtbGd7Ym9yZGVyLXJhZGl1czouM3JlbSFpbXBvcnRhbnR9LnJvdW5kZWQtY2lyY2xle2JvcmRlci1yYWRpdXM6NTAlIWltcG9ydGFudH0ucm91bmRlZC1waWxse2JvcmRlci1yYWRpdXM6NTByZW0haW1wb3J0YW50fS5yb3VuZGVkLTB7Ym9yZGVyLXJhZGl1czowIWltcG9ydGFudH0uZC1ub25le2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmQtaW5saW5le2Rpc3BsYXk6aW5saW5lIWltcG9ydGFudH0uZC1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fS5kLWJsb2Nre2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fS5kLXRhYmxle2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fS5kLXRhYmxlLXJvd3tkaXNwbGF5OnRhYmxlLXJvdyFpbXBvcnRhbnR9LmQtdGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGwhaW1wb3J0YW50fS5kLWZsZXh7ZGlzcGxheTpmbGV4IWltcG9ydGFudH0uZC1pbmxpbmUtZmxleHtkaXNwbGF5OmlubGluZS1mbGV4IWltcG9ydGFudH1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmQtc20tbm9uZXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5kLXNtLWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9LmQtc20taW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrIWltcG9ydGFudH0uZC1zbS1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0uZC1zbS10YWJsZXtkaXNwbGF5OnRhYmxlIWltcG9ydGFudH0uZC1zbS10YWJsZS1yb3d7ZGlzcGxheTp0YWJsZS1yb3chaW1wb3J0YW50fS5kLXNtLXRhYmxlLWNlbGx7ZGlzcGxheTp0YWJsZS1jZWxsIWltcG9ydGFudH0uZC1zbS1mbGV4e2Rpc3BsYXk6ZmxleCFpbXBvcnRhbnR9LmQtc20taW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleCFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuZC1tZC1ub25le2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmQtbWQtaW5saW5le2Rpc3BsYXk6aW5saW5lIWltcG9ydGFudH0uZC1tZC1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fS5kLW1kLWJsb2Nre2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fS5kLW1kLXRhYmxle2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fS5kLW1kLXRhYmxlLXJvd3tkaXNwbGF5OnRhYmxlLXJvdyFpbXBvcnRhbnR9LmQtbWQtdGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGwhaW1wb3J0YW50fS5kLW1kLWZsZXh7ZGlzcGxheTpmbGV4IWltcG9ydGFudH0uZC1tZC1pbmxpbmUtZmxleHtkaXNwbGF5OmlubGluZS1mbGV4IWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5kLWxnLW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZC1sZy1pbmxpbmV7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50fS5kLWxnLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9LmQtbGctYmxvY2t7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9LmQtbGctdGFibGV7ZGlzcGxheTp0YWJsZSFpbXBvcnRhbnR9LmQtbGctdGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH0uZC1sZy10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQtbGctZmxleHtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS5kLWxnLWlubGluZS1mbGV4e2Rpc3BsYXk6aW5saW5lLWZsZXghaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5kLXhsLW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZC14bC1pbmxpbmV7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50fS5kLXhsLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9LmQteGwtYmxvY2t7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9LmQteGwtdGFibGV7ZGlzcGxheTp0YWJsZSFpbXBvcnRhbnR9LmQteGwtdGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH0uZC14bC10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQteGwtZmxleHtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS5kLXhsLWlubGluZS1mbGV4e2Rpc3BsYXk6aW5saW5lLWZsZXghaW1wb3J0YW50fX1AbWVkaWEgcHJpbnR7LmQtcHJpbnQtbm9uZXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5kLXByaW50LWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9LmQtcHJpbnQtaW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrIWltcG9ydGFudH0uZC1wcmludC1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0uZC1wcmludC10YWJsZXtkaXNwbGF5OnRhYmxlIWltcG9ydGFudH0uZC1wcmludC10YWJsZS1yb3d7ZGlzcGxheTp0YWJsZS1yb3chaW1wb3J0YW50fS5kLXByaW50LXRhYmxlLWNlbGx7ZGlzcGxheTp0YWJsZS1jZWxsIWltcG9ydGFudH0uZC1wcmludC1mbGV4e2Rpc3BsYXk6ZmxleCFpbXBvcnRhbnR9LmQtcHJpbnQtaW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleCFpbXBvcnRhbnR9fS5lbWJlZC1yZXNwb25zaXZle2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MDt3aWR0aDoxMDAlfS5lbWJlZC1yZXNwb25zaXZlOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2t9LmVtYmVkLXJlc3BvbnNpdmUgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSwuZW1iZWQtcmVzcG9uc2l2ZSBlbWJlZCwuZW1iZWQtcmVzcG9uc2l2ZSBpZnJhbWUsLmVtYmVkLXJlc3BvbnNpdmUgb2JqZWN0LC5lbWJlZC1yZXNwb25zaXZlIHZpZGVve2JvcmRlcjowO2JvdHRvbTowO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS5lbWJlZC1yZXNwb25zaXZlLTIxYnk5OmJlZm9yZXtwYWRkaW5nLXRvcDo0Mi44NTcxNCV9LmVtYmVkLXJlc3BvbnNpdmUtMTZieTk6YmVmb3Jle3BhZGRpbmctdG9wOjU2LjI1JX0uZW1iZWQtcmVzcG9uc2l2ZS00YnkzOmJlZm9yZXtwYWRkaW5nLXRvcDo3NSV9LmVtYmVkLXJlc3BvbnNpdmUtMWJ5MTpiZWZvcmV7cGFkZGluZy10b3A6MTAwJX0uZmxleC1yb3d7ZmxleC1kaXJlY3Rpb246cm93IWltcG9ydGFudH0uZmxleC1jb2x1bW57ZmxleC1kaXJlY3Rpb246Y29sdW1uIWltcG9ydGFudH0uZmxleC1yb3ctcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtY29sdW1uLXJldmVyc2V7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LXdyYXB7ZmxleC13cmFwOndyYXAhaW1wb3J0YW50fS5mbGV4LW5vd3JhcHtmbGV4LXdyYXA6bm93cmFwIWltcG9ydGFudH0uZmxleC13cmFwLXJldmVyc2V7ZmxleC13cmFwOndyYXAtcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtZmlsbHtmbGV4OjEgMSBhdXRvIWltcG9ydGFudH0uZmxleC1ncm93LTB7ZmxleC1ncm93OjAhaW1wb3J0YW50fS5mbGV4LWdyb3ctMXtmbGV4LWdyb3c6MSFpbXBvcnRhbnR9LmZsZXgtc2hyaW5rLTB7ZmxleC1zaHJpbms6MCFpbXBvcnRhbnR9LmZsZXgtc2hyaW5rLTF7ZmxleC1zaHJpbms6MSFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1zdGFydHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24taXRlbXMtZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24taXRlbXMtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLWJhc2VsaW5le2FsaWduLWl0ZW1zOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24taXRlbXMtc3RyZXRjaHthbGlnbi1pdGVtczpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1zdGFydHthbGlnbi1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWVuZHthbGlnbi1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1jZW50ZXJ7YWxpZ24tY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWJldHdlZW57YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1hcm91bmR7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXN0cmV0Y2h7YWxpZ24tY29udGVudDpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tc2VsZi1hdXRve2FsaWduLXNlbGY6YXV0byFpbXBvcnRhbnR9LmFsaWduLXNlbGYtc3RhcnR7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tc2VsZi1lbmR7YWxpZ24tc2VsZjpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLXNlbGYtY2VudGVye2FsaWduLXNlbGY6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tc2VsZi1iYXNlbGluZXthbGlnbi1zZWxmOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zdHJldGNoe2FsaWduLXNlbGY6c3RyZXRjaCFpbXBvcnRhbnR9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5mbGV4LXNtLXJvd3tmbGV4LWRpcmVjdGlvbjpyb3chaW1wb3J0YW50fS5mbGV4LXNtLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50fS5mbGV4LXNtLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1zbS1jb2x1bW4tcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtc20td3JhcHtmbGV4LXdyYXA6d3JhcCFpbXBvcnRhbnR9LmZsZXgtc20tbm93cmFwe2ZsZXgtd3JhcDpub3dyYXAhaW1wb3J0YW50fS5mbGV4LXNtLXdyYXAtcmV2ZXJzZXtmbGV4LXdyYXA6d3JhcC1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1zbS1maWxse2ZsZXg6MSAxIGF1dG8haW1wb3J0YW50fS5mbGV4LXNtLWdyb3ctMHtmbGV4LWdyb3c6MCFpbXBvcnRhbnR9LmZsZXgtc20tZ3Jvdy0xe2ZsZXgtZ3JvdzoxIWltcG9ydGFudH0uZmxleC1zbS1zaHJpbmstMHtmbGV4LXNocmluazowIWltcG9ydGFudH0uZmxleC1zbS1zaHJpbmstMXtmbGV4LXNocmluazoxIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXNtLXN0YXJ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXNtLWVuZHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtc20tY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtc20tYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1zbS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXNtLXN0YXJ0e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1zbS1lbmR7YWxpZ24taXRlbXM6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1zbS1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24taXRlbXMtc20tYmFzZWxpbmV7YWxpZ24taXRlbXM6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1zbS1zdHJldGNoe2FsaWduLWl0ZW1zOnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXNtLXN0YXJ0e2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtc20tZW5ke2FsaWduLWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXNtLWNlbnRlcnthbGlnbi1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtc20tYmV0d2VlbnthbGlnbi1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXNtLWFyb3VuZHthbGlnbi1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtc20tc3RyZXRjaHthbGlnbi1jb250ZW50OnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1zZWxmLXNtLWF1dG97YWxpZ24tc2VsZjphdXRvIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zbS1zdGFydHthbGlnbi1zZWxmOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1zZWxmLXNtLWVuZHthbGlnbi1zZWxmOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zbS1jZW50ZXJ7YWxpZ24tc2VsZjpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1zZWxmLXNtLWJhc2VsaW5le2FsaWduLXNlbGY6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1zZWxmLXNtLXN0cmV0Y2h7YWxpZ24tc2VsZjpzdHJldGNoIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5mbGV4LW1kLXJvd3tmbGV4LWRpcmVjdGlvbjpyb3chaW1wb3J0YW50fS5mbGV4LW1kLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50fS5mbGV4LW1kLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1tZC1jb2x1bW4tcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtbWQtd3JhcHtmbGV4LXdyYXA6d3JhcCFpbXBvcnRhbnR9LmZsZXgtbWQtbm93cmFwe2ZsZXgtd3JhcDpub3dyYXAhaW1wb3J0YW50fS5mbGV4LW1kLXdyYXAtcmV2ZXJzZXtmbGV4LXdyYXA6d3JhcC1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1tZC1maWxse2ZsZXg6MSAxIGF1dG8haW1wb3J0YW50fS5mbGV4LW1kLWdyb3ctMHtmbGV4LWdyb3c6MCFpbXBvcnRhbnR9LmZsZXgtbWQtZ3Jvdy0xe2ZsZXgtZ3JvdzoxIWltcG9ydGFudH0uZmxleC1tZC1zaHJpbmstMHtmbGV4LXNocmluazowIWltcG9ydGFudH0uZmxleC1tZC1zaHJpbmstMXtmbGV4LXNocmluazoxIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LW1kLXN0YXJ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LW1kLWVuZHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbWQtY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbWQtYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1tZC1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLW1kLXN0YXJ0e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1tZC1lbmR7YWxpZ24taXRlbXM6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1tZC1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24taXRlbXMtbWQtYmFzZWxpbmV7YWxpZ24taXRlbXM6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1tZC1zdHJldGNoe2FsaWduLWl0ZW1zOnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LW1kLXN0YXJ0e2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtbWQtZW5ke2FsaWduLWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LW1kLWNlbnRlcnthbGlnbi1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtbWQtYmV0d2VlbnthbGlnbi1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5hbGlnbi1jb250ZW50LW1kLWFyb3VuZHthbGlnbi1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtbWQtc3RyZXRjaHthbGlnbi1jb250ZW50OnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1zZWxmLW1kLWF1dG97YWxpZ24tc2VsZjphdXRvIWltcG9ydGFudH0uYWxpZ24tc2VsZi1tZC1zdGFydHthbGlnbi1zZWxmOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1zZWxmLW1kLWVuZHthbGlnbi1zZWxmOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tc2VsZi1tZC1jZW50ZXJ7YWxpZ24tc2VsZjpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1zZWxmLW1kLWJhc2VsaW5le2FsaWduLXNlbGY6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1zZWxmLW1kLXN0cmV0Y2h7YWxpZ24tc2VsZjpzdHJldGNoIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5mbGV4LWxnLXJvd3tmbGV4LWRpcmVjdGlvbjpyb3chaW1wb3J0YW50fS5mbGV4LWxnLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50fS5mbGV4LWxnLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1sZy1jb2x1bW4tcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtbGctd3JhcHtmbGV4LXdyYXA6d3JhcCFpbXBvcnRhbnR9LmZsZXgtbGctbm93cmFwe2ZsZXgtd3JhcDpub3dyYXAhaW1wb3J0YW50fS5mbGV4LWxnLXdyYXAtcmV2ZXJzZXtmbGV4LXdyYXA6d3JhcC1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1sZy1maWxse2ZsZXg6MSAxIGF1dG8haW1wb3J0YW50fS5mbGV4LWxnLWdyb3ctMHtmbGV4LWdyb3c6MCFpbXBvcnRhbnR9LmZsZXgtbGctZ3Jvdy0xe2ZsZXgtZ3JvdzoxIWltcG9ydGFudH0uZmxleC1sZy1zaHJpbmstMHtmbGV4LXNocmluazowIWltcG9ydGFudH0uZmxleC1sZy1zaHJpbmstMXtmbGV4LXNocmluazoxIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWxnLXN0YXJ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWxnLWVuZHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbGctY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbGctYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1sZy1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLWxnLXN0YXJ0e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1sZy1lbmR7YWxpZ24taXRlbXM6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1sZy1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24taXRlbXMtbGctYmFzZWxpbmV7YWxpZ24taXRlbXM6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1sZy1zdHJldGNoe2FsaWduLWl0ZW1zOnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWxnLXN0YXJ0e2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtbGctZW5ke2FsaWduLWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWxnLWNlbnRlcnthbGlnbi1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtbGctYmV0d2VlbnthbGlnbi1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWxnLWFyb3VuZHthbGlnbi1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtbGctc3RyZXRjaHthbGlnbi1jb250ZW50OnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1zZWxmLWxnLWF1dG97YWxpZ24tc2VsZjphdXRvIWltcG9ydGFudH0uYWxpZ24tc2VsZi1sZy1zdGFydHthbGlnbi1zZWxmOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1zZWxmLWxnLWVuZHthbGlnbi1zZWxmOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tc2VsZi1sZy1jZW50ZXJ7YWxpZ24tc2VsZjpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1zZWxmLWxnLWJhc2VsaW5le2FsaWduLXNlbGY6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1zZWxmLWxnLXN0cmV0Y2h7YWxpZ24tc2VsZjpzdHJldGNoIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuZmxleC14bC1yb3d7ZmxleC1kaXJlY3Rpb246cm93IWltcG9ydGFudH0uZmxleC14bC1jb2x1bW57ZmxleC1kaXJlY3Rpb246Y29sdW1uIWltcG9ydGFudH0uZmxleC14bC1yb3ctcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgteGwtY29sdW1uLXJldmVyc2V7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LXhsLXdyYXB7ZmxleC13cmFwOndyYXAhaW1wb3J0YW50fS5mbGV4LXhsLW5vd3JhcHtmbGV4LXdyYXA6bm93cmFwIWltcG9ydGFudH0uZmxleC14bC13cmFwLXJldmVyc2V7ZmxleC13cmFwOndyYXAtcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgteGwtZmlsbHtmbGV4OjEgMSBhdXRvIWltcG9ydGFudH0uZmxleC14bC1ncm93LTB7ZmxleC1ncm93OjAhaW1wb3J0YW50fS5mbGV4LXhsLWdyb3ctMXtmbGV4LWdyb3c6MSFpbXBvcnRhbnR9LmZsZXgteGwtc2hyaW5rLTB7ZmxleC1zaHJpbms6MCFpbXBvcnRhbnR9LmZsZXgteGwtc2hyaW5rLTF7ZmxleC1zaHJpbms6MSFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC14bC1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC14bC1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXhsLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXhsLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy14bC1zdGFydHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24taXRlbXMteGwtZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24taXRlbXMteGwtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXhsLWJhc2VsaW5le2FsaWduLWl0ZW1zOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24taXRlbXMteGwtc3RyZXRjaHthbGlnbi1pdGVtczpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tY29udGVudC14bC1zdGFydHthbGlnbi1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXhsLWVuZHthbGlnbi1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC14bC1jZW50ZXJ7YWxpZ24tY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXhsLWJldHdlZW57YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uYWxpZ24tY29udGVudC14bC1hcm91bmR7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXhsLXN0cmV0Y2h7YWxpZ24tY29udGVudDpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tc2VsZi14bC1hdXRve2FsaWduLXNlbGY6YXV0byFpbXBvcnRhbnR9LmFsaWduLXNlbGYteGwtc3RhcnR7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tc2VsZi14bC1lbmR7YWxpZ24tc2VsZjpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLXNlbGYteGwtY2VudGVye2FsaWduLXNlbGY6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tc2VsZi14bC1iYXNlbGluZXthbGlnbi1zZWxmOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24tc2VsZi14bC1zdHJldGNoe2FsaWduLXNlbGY6c3RyZXRjaCFpbXBvcnRhbnR9fS5mbG9hdC1sZWZ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS5mbG9hdC1yaWdodHtmbG9hdDpyaWdodCFpbXBvcnRhbnR9LmZsb2F0LW5vbmV7ZmxvYXQ6bm9uZSFpbXBvcnRhbnR9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5mbG9hdC1zbS1sZWZ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS5mbG9hdC1zbS1yaWdodHtmbG9hdDpyaWdodCFpbXBvcnRhbnR9LmZsb2F0LXNtLW5vbmV7ZmxvYXQ6bm9uZSFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuZmxvYXQtbWQtbGVmdHtmbG9hdDpsZWZ0IWltcG9ydGFudH0uZmxvYXQtbWQtcmlnaHR7ZmxvYXQ6cmlnaHQhaW1wb3J0YW50fS5mbG9hdC1tZC1ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7LmZsb2F0LWxnLWxlZnR7ZmxvYXQ6bGVmdCFpbXBvcnRhbnR9LmZsb2F0LWxnLXJpZ2h0e2Zsb2F0OnJpZ2h0IWltcG9ydGFudH0uZmxvYXQtbGctbm9uZXtmbG9hdDpub25lIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuZmxvYXQteGwtbGVmdHtmbG9hdDpsZWZ0IWltcG9ydGFudH0uZmxvYXQteGwtcmlnaHR7ZmxvYXQ6cmlnaHQhaW1wb3J0YW50fS5mbG9hdC14bC1ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fX0udXNlci1zZWxlY3QtYWxsey13ZWJraXQtdXNlci1zZWxlY3Q6YWxsIWltcG9ydGFudDstbW96LXVzZXItc2VsZWN0OmFsbCFpbXBvcnRhbnQ7dXNlci1zZWxlY3Q6YWxsIWltcG9ydGFudH0udXNlci1zZWxlY3QtYXV0b3std2Via2l0LXVzZXItc2VsZWN0OmF1dG8haW1wb3J0YW50Oy1tb3otdXNlci1zZWxlY3Q6YXV0byFpbXBvcnRhbnQ7dXNlci1zZWxlY3Q6YXV0byFpbXBvcnRhbnR9LnVzZXItc2VsZWN0LW5vbmV7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lIWltcG9ydGFudDstbW96LXVzZXItc2VsZWN0Om5vbmUhaW1wb3J0YW50O3VzZXItc2VsZWN0Om5vbmUhaW1wb3J0YW50fS5vdmVyZmxvdy1hdXRve292ZXJmbG93OmF1dG8haW1wb3J0YW50fS5vdmVyZmxvdy1oaWRkZW57b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudH0ucG9zaXRpb24tc3RhdGlje3Bvc2l0aW9uOnN0YXRpYyFpbXBvcnRhbnR9LnBvc2l0aW9uLXJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudH0ucG9zaXRpb24tYWJzb2x1dGV7cG9zaXRpb246YWJzb2x1dGUhaW1wb3J0YW50fS5wb3NpdGlvbi1maXhlZHtwb3NpdGlvbjpmaXhlZCFpbXBvcnRhbnR9LnBvc2l0aW9uLXN0aWNreXtwb3NpdGlvbjpzdGlja3khaW1wb3J0YW50fS5maXhlZC10b3B7dG9wOjB9LmZpeGVkLWJvdHRvbSwuZml4ZWQtdG9we2xlZnQ6MDtwb3NpdGlvbjpmaXhlZDtyaWdodDowO3otaW5kZXg6MTAzMH0uZml4ZWQtYm90dG9te2JvdHRvbTowfUBzdXBwb3J0cyAocG9zaXRpb246c3RpY2t5KXsuc3RpY2t5LXRvcHtwb3NpdGlvbjpzdGlja3k7dG9wOjA7ei1pbmRleDoxMDIwfX0uc3Itb25seXtjbGlwOnJlY3QoMCwwLDAsMCk7Ym9yZGVyOjA7aGVpZ2h0OjFweDttYXJnaW46LTFweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3doaXRlLXNwYWNlOm5vd3JhcDt3aWR0aDoxcHh9LnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwuc3Itb25seS1mb2N1c2FibGU6Zm9jdXN7Y2xpcDphdXRvO2hlaWdodDphdXRvO292ZXJmbG93OnZpc2libGU7cG9zaXRpb246c3RhdGljO3doaXRlLXNwYWNlOm5vcm1hbDt3aWR0aDphdXRvfS5zaGFkb3ctc217Ym94LXNoYWRvdzowIC4xMjVyZW0gLjI1cmVtIHJnYmEoMCwwLDAsLjA3NSkhaW1wb3J0YW50fS5zaGFkb3d7Ym94LXNoYWRvdzowIC41cmVtIDFyZW0gcmdiYSgwLDAsMCwuMTUpIWltcG9ydGFudH0uc2hhZG93LWxne2JveC1zaGFkb3c6MCAxcmVtIDNyZW0gcmdiYSgwLDAsMCwuMTc1KSFpbXBvcnRhbnR9LnNoYWRvdy1ub25le2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9LnctMjV7d2lkdGg6MjUlIWltcG9ydGFudH0udy01MHt3aWR0aDo1MCUhaW1wb3J0YW50fS53LTc1e3dpZHRoOjc1JSFpbXBvcnRhbnR9LnctMTAwe3dpZHRoOjEwMCUhaW1wb3J0YW50fS53LWF1dG97d2lkdGg6YXV0byFpbXBvcnRhbnR9LmgtMjV7aGVpZ2h0OjI1JSFpbXBvcnRhbnR9LmgtNTB7aGVpZ2h0OjUwJSFpbXBvcnRhbnR9LmgtNzV7aGVpZ2h0Ojc1JSFpbXBvcnRhbnR9LmgtMTAwe2hlaWdodDoxMDAlIWltcG9ydGFudH0uaC1hdXRve2hlaWdodDphdXRvIWltcG9ydGFudH0ubXctMTAwe21heC13aWR0aDoxMDAlIWltcG9ydGFudH0ubWgtMTAwe21heC1oZWlnaHQ6MTAwJSFpbXBvcnRhbnR9Lm1pbi12dy0xMDB7bWluLXdpZHRoOjEwMHZ3IWltcG9ydGFudH0ubWluLXZoLTEwMHttaW4taGVpZ2h0OjEwMHZoIWltcG9ydGFudH0udnctMTAwe3dpZHRoOjEwMHZ3IWltcG9ydGFudH0udmgtMTAwe2hlaWdodDoxMDB2aCFpbXBvcnRhbnR9Lm0tMHttYXJnaW46MCFpbXBvcnRhbnR9Lm10LTAsLm15LTB7bWFyZ2luLXRvcDowIWltcG9ydGFudH0ubXItMCwubXgtMHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Lm1iLTAsLm15LTB7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWwtMCwubXgtMHttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubS0xe21hcmdpbjouMjVyZW0haW1wb3J0YW50fS5tdC0xLC5teS0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudH0ubXItMSwubXgtMXttYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ubWItMSwubXktMXttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm1sLTEsLm14LTF7bWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ubS0ye21hcmdpbjouNXJlbSFpbXBvcnRhbnR9Lm10LTIsLm15LTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnR9Lm1yLTIsLm14LTJ7bWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudH0ubWItMiwubXktMnttYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudH0ubWwtMiwubXgtMnttYXJnaW4tbGVmdDouNXJlbSFpbXBvcnRhbnR9Lm0tM3ttYXJnaW46MXJlbSFpbXBvcnRhbnR9Lm10LTMsLm15LTN7bWFyZ2luLXRvcDoxcmVtIWltcG9ydGFudH0ubXItMywubXgtM3ttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnR9Lm1iLTMsLm15LTN7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubWwtMywubXgtM3ttYXJnaW4tbGVmdDoxcmVtIWltcG9ydGFudH0ubS00e21hcmdpbjoxLjVyZW0haW1wb3J0YW50fS5tdC00LC5teS00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudH0ubXItNCwubXgtNHttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ubWItNCwubXktNHttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm1sLTQsLm14LTR7bWFyZ2luLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ubS01e21hcmdpbjozcmVtIWltcG9ydGFudH0ubXQtNSwubXktNXttYXJnaW4tdG9wOjNyZW0haW1wb3J0YW50fS5tci01LC5teC01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudH0ubWItNSwubXktNXttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS5tbC01LC5teC01e21hcmdpbi1sZWZ0OjNyZW0haW1wb3J0YW50fS5wLTB7cGFkZGluZzowIWltcG9ydGFudH0ucHQtMCwucHktMHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0ucHItMCwucHgtMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS5wYi0wLC5weS0we3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fS5wbC0wLC5weC0we3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucC0xe3BhZGRpbmc6LjI1cmVtIWltcG9ydGFudH0ucHQtMSwucHktMXtwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50fS5wci0xLC5weC0xe3BhZGRpbmctcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ucGItMSwucHktMXtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5wbC0xLC5weC0xe3BhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50fS5wLTJ7cGFkZGluZzouNXJlbSFpbXBvcnRhbnR9LnB0LTIsLnB5LTJ7cGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50fS5wci0yLC5weC0ye3BhZGRpbmctcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5wYi0yLC5weS0ye3BhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudH0ucGwtMiwucHgtMntwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5wLTN7cGFkZGluZzoxcmVtIWltcG9ydGFudH0ucHQtMywucHktM3twYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudH0ucHItMywucHgtM3twYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50fS5wYi0zLC5weS0ze3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS5wbC0zLC5weC0ze3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucC00e3BhZGRpbmc6MS41cmVtIWltcG9ydGFudH0ucHQtNCwucHktNHtwYWRkaW5nLXRvcDoxLjVyZW0haW1wb3J0YW50fS5wci00LC5weC00e3BhZGRpbmctcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ucGItNCwucHktNHtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5wbC00LC5weC00e3BhZGRpbmctbGVmdDoxLjVyZW0haW1wb3J0YW50fS5wLTV7cGFkZGluZzozcmVtIWltcG9ydGFudH0ucHQtNSwucHktNXtwYWRkaW5nLXRvcDozcmVtIWltcG9ydGFudH0ucHItNSwucHgtNXtwYWRkaW5nLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5wYi01LC5weS01e3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wbC01LC5weC01e3BhZGRpbmctbGVmdDozcmVtIWltcG9ydGFudH0ubS1uMXttYXJnaW46LS4yNXJlbSFpbXBvcnRhbnR9Lm10LW4xLC5teS1uMXttYXJnaW4tdG9wOi0uMjVyZW0haW1wb3J0YW50fS5tci1uMSwubXgtbjF7bWFyZ2luLXJpZ2h0Oi0uMjVyZW0haW1wb3J0YW50fS5tYi1uMSwubXktbjF7bWFyZ2luLWJvdHRvbTotLjI1cmVtIWltcG9ydGFudH0ubWwtbjEsLm14LW4xe21hcmdpbi1sZWZ0Oi0uMjVyZW0haW1wb3J0YW50fS5tLW4ye21hcmdpbjotLjVyZW0haW1wb3J0YW50fS5tdC1uMiwubXktbjJ7bWFyZ2luLXRvcDotLjVyZW0haW1wb3J0YW50fS5tci1uMiwubXgtbjJ7bWFyZ2luLXJpZ2h0Oi0uNXJlbSFpbXBvcnRhbnR9Lm1iLW4yLC5teS1uMnttYXJnaW4tYm90dG9tOi0uNXJlbSFpbXBvcnRhbnR9Lm1sLW4yLC5teC1uMnttYXJnaW4tbGVmdDotLjVyZW0haW1wb3J0YW50fS5tLW4ze21hcmdpbjotMXJlbSFpbXBvcnRhbnR9Lm10LW4zLC5teS1uM3ttYXJnaW4tdG9wOi0xcmVtIWltcG9ydGFudH0ubXItbjMsLm14LW4ze21hcmdpbi1yaWdodDotMXJlbSFpbXBvcnRhbnR9Lm1iLW4zLC5teS1uM3ttYXJnaW4tYm90dG9tOi0xcmVtIWltcG9ydGFudH0ubWwtbjMsLm14LW4ze21hcmdpbi1sZWZ0Oi0xcmVtIWltcG9ydGFudH0ubS1uNHttYXJnaW46LTEuNXJlbSFpbXBvcnRhbnR9Lm10LW40LC5teS1uNHttYXJnaW4tdG9wOi0xLjVyZW0haW1wb3J0YW50fS5tci1uNCwubXgtbjR7bWFyZ2luLXJpZ2h0Oi0xLjVyZW0haW1wb3J0YW50fS5tYi1uNCwubXktbjR7bWFyZ2luLWJvdHRvbTotMS41cmVtIWltcG9ydGFudH0ubWwtbjQsLm14LW40e21hcmdpbi1sZWZ0Oi0xLjVyZW0haW1wb3J0YW50fS5tLW41e21hcmdpbjotM3JlbSFpbXBvcnRhbnR9Lm10LW41LC5teS1uNXttYXJnaW4tdG9wOi0zcmVtIWltcG9ydGFudH0ubXItbjUsLm14LW41e21hcmdpbi1yaWdodDotM3JlbSFpbXBvcnRhbnR9Lm1iLW41LC5teS1uNXttYXJnaW4tYm90dG9tOi0zcmVtIWltcG9ydGFudH0ubWwtbjUsLm14LW41e21hcmdpbi1sZWZ0Oi0zcmVtIWltcG9ydGFudH0ubS1hdXRve21hcmdpbjphdXRvIWltcG9ydGFudH0ubXQtYXV0bywubXktYXV0b3ttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50fS5tci1hdXRvLC5teC1hdXRve21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH0ubWItYXV0bywubXktYXV0b3ttYXJnaW4tYm90dG9tOmF1dG8haW1wb3J0YW50fS5tbC1hdXRvLC5teC1hdXRve21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50fUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsubS1zbS0we21hcmdpbjowIWltcG9ydGFudH0ubXQtc20tMCwubXktc20tMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50fS5tci1zbS0wLC5teC1zbS0we21hcmdpbi1yaWdodDowIWltcG9ydGFudH0ubWItc20tMCwubXktc20tMHttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5tbC1zbS0wLC5teC1zbS0we21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5tLXNtLTF7bWFyZ2luOi4yNXJlbSFpbXBvcnRhbnR9Lm10LXNtLTEsLm15LXNtLTF7bWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50fS5tci1zbS0xLC5teC1zbS0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50fS5tYi1zbS0xLC5teS1zbS0xe21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubWwtc20tMSwubXgtc20tMXttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5tLXNtLTJ7bWFyZ2luOi41cmVtIWltcG9ydGFudH0ubXQtc20tMiwubXktc20tMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudH0ubXItc20tMiwubXgtc20tMnttYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5tYi1zbS0yLC5teS1zbS0ye21hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50fS5tbC1zbS0yLC5teC1zbS0ye21hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudH0ubS1zbS0ze21hcmdpbjoxcmVtIWltcG9ydGFudH0ubXQtc20tMywubXktc20tM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50fS5tci1zbS0zLC5teC1zbS0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudH0ubWItc20tMywubXktc20tM3ttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5tbC1zbS0zLC5teC1zbS0ze21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5tLXNtLTR7bWFyZ2luOjEuNXJlbSFpbXBvcnRhbnR9Lm10LXNtLTQsLm15LXNtLTR7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS5tci1zbS00LC5teC1zbS00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5tYi1zbS00LC5teS1zbS00e21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubWwtc20tNCwubXgtc20tNHttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5tLXNtLTV7bWFyZ2luOjNyZW0haW1wb3J0YW50fS5tdC1zbS01LC5teS1zbS01e21hcmdpbi10b3A6M3JlbSFpbXBvcnRhbnR9Lm1yLXNtLTUsLm14LXNtLTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5tYi1zbS01LC5teS1zbS01e21hcmdpbi1ib3R0b206M3JlbSFpbXBvcnRhbnR9Lm1sLXNtLTUsLm14LXNtLTV7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LnAtc20tMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wdC1zbS0wLC5weS1zbS0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wci1zbS0wLC5weC1zbS0we3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9LnBiLXNtLTAsLnB5LXNtLTB7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnBsLXNtLTAsLnB4LXNtLTB7cGFkZGluZy1sZWZ0OjAhaW1wb3J0YW50fS5wLXNtLTF7cGFkZGluZzouMjVyZW0haW1wb3J0YW50fS5wdC1zbS0xLC5weS1zbS0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnR9LnByLXNtLTEsLnB4LXNtLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50fS5wYi1zbS0xLC5weS1zbS0xe3BhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9LnBsLXNtLTEsLnB4LXNtLTF7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnAtc20tMntwYWRkaW5nOi41cmVtIWltcG9ydGFudH0ucHQtc20tMiwucHktc20tMntwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnR9LnByLXNtLTIsLnB4LXNtLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnR9LnBiLXNtLTIsLnB5LXNtLTJ7cGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50fS5wbC1zbS0yLC5weC1zbS0ye3BhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnR9LnAtc20tM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wdC1zbS0zLC5weS1zbS0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wci1zbS0zLC5weC1zbS0ze3BhZGRpbmctcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnBiLXNtLTMsLnB5LXNtLTN7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnBsLXNtLTMsLnB4LXNtLTN7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS5wLXNtLTR7cGFkZGluZzoxLjVyZW0haW1wb3J0YW50fS5wdC1zbS00LC5weS1zbS00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnR9LnByLXNtLTQsLnB4LXNtLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5wYi1zbS00LC5weS1zbS00e3BhZGRpbmctYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9LnBsLXNtLTQsLnB4LXNtLTR7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnAtc20tNXtwYWRkaW5nOjNyZW0haW1wb3J0YW50fS5wdC1zbS01LC5weS1zbS01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50fS5wci1zbS01LC5weC1zbS01e3BhZGRpbmctcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnBiLXNtLTUsLnB5LXNtLTV7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnBsLXNtLTUsLnB4LXNtLTV7cGFkZGluZy1sZWZ0OjNyZW0haW1wb3J0YW50fS5tLXNtLW4xe21hcmdpbjotLjI1cmVtIWltcG9ydGFudH0ubXQtc20tbjEsLm15LXNtLW4xe21hcmdpbi10b3A6LS4yNXJlbSFpbXBvcnRhbnR9Lm1yLXNtLW4xLC5teC1zbS1uMXttYXJnaW4tcmlnaHQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm1iLXNtLW4xLC5teS1zbS1uMXttYXJnaW4tYm90dG9tOi0uMjVyZW0haW1wb3J0YW50fS5tbC1zbS1uMSwubXgtc20tbjF7bWFyZ2luLWxlZnQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm0tc20tbjJ7bWFyZ2luOi0uNXJlbSFpbXBvcnRhbnR9Lm10LXNtLW4yLC5teS1zbS1uMnttYXJnaW4tdG9wOi0uNXJlbSFpbXBvcnRhbnR9Lm1yLXNtLW4yLC5teC1zbS1uMnttYXJnaW4tcmlnaHQ6LS41cmVtIWltcG9ydGFudH0ubWItc20tbjIsLm15LXNtLW4ye21hcmdpbi1ib3R0b206LS41cmVtIWltcG9ydGFudH0ubWwtc20tbjIsLm14LXNtLW4ye21hcmdpbi1sZWZ0Oi0uNXJlbSFpbXBvcnRhbnR9Lm0tc20tbjN7bWFyZ2luOi0xcmVtIWltcG9ydGFudH0ubXQtc20tbjMsLm15LXNtLW4ze21hcmdpbi10b3A6LTFyZW0haW1wb3J0YW50fS5tci1zbS1uMywubXgtc20tbjN7bWFyZ2luLXJpZ2h0Oi0xcmVtIWltcG9ydGFudH0ubWItc20tbjMsLm15LXNtLW4ze21hcmdpbi1ib3R0b206LTFyZW0haW1wb3J0YW50fS5tbC1zbS1uMywubXgtc20tbjN7bWFyZ2luLWxlZnQ6LTFyZW0haW1wb3J0YW50fS5tLXNtLW40e21hcmdpbjotMS41cmVtIWltcG9ydGFudH0ubXQtc20tbjQsLm15LXNtLW40e21hcmdpbi10b3A6LTEuNXJlbSFpbXBvcnRhbnR9Lm1yLXNtLW40LC5teC1zbS1uNHttYXJnaW4tcmlnaHQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm1iLXNtLW40LC5teS1zbS1uNHttYXJnaW4tYm90dG9tOi0xLjVyZW0haW1wb3J0YW50fS5tbC1zbS1uNCwubXgtc20tbjR7bWFyZ2luLWxlZnQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm0tc20tbjV7bWFyZ2luOi0zcmVtIWltcG9ydGFudH0ubXQtc20tbjUsLm15LXNtLW41e21hcmdpbi10b3A6LTNyZW0haW1wb3J0YW50fS5tci1zbS1uNSwubXgtc20tbjV7bWFyZ2luLXJpZ2h0Oi0zcmVtIWltcG9ydGFudH0ubWItc20tbjUsLm15LXNtLW41e21hcmdpbi1ib3R0b206LTNyZW0haW1wb3J0YW50fS5tbC1zbS1uNSwubXgtc20tbjV7bWFyZ2luLWxlZnQ6LTNyZW0haW1wb3J0YW50fS5tLXNtLWF1dG97bWFyZ2luOmF1dG8haW1wb3J0YW50fS5tdC1zbS1hdXRvLC5teS1zbS1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9Lm1yLXNtLWF1dG8sLm14LXNtLWF1dG97bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50fS5tYi1zbS1hdXRvLC5teS1zbS1hdXRve21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9Lm1sLXNtLWF1dG8sLm14LXNtLWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubS1tZC0we21hcmdpbjowIWltcG9ydGFudH0ubXQtbWQtMCwubXktbWQtMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50fS5tci1tZC0wLC5teC1tZC0we21hcmdpbi1yaWdodDowIWltcG9ydGFudH0ubWItbWQtMCwubXktbWQtMHttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5tbC1tZC0wLC5teC1tZC0we21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5tLW1kLTF7bWFyZ2luOi4yNXJlbSFpbXBvcnRhbnR9Lm10LW1kLTEsLm15LW1kLTF7bWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50fS5tci1tZC0xLC5teC1tZC0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50fS5tYi1tZC0xLC5teS1tZC0xe21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubWwtbWQtMSwubXgtbWQtMXttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5tLW1kLTJ7bWFyZ2luOi41cmVtIWltcG9ydGFudH0ubXQtbWQtMiwubXktbWQtMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudH0ubXItbWQtMiwubXgtbWQtMnttYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5tYi1tZC0yLC5teS1tZC0ye21hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50fS5tbC1tZC0yLC5teC1tZC0ye21hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudH0ubS1tZC0ze21hcmdpbjoxcmVtIWltcG9ydGFudH0ubXQtbWQtMywubXktbWQtM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50fS5tci1tZC0zLC5teC1tZC0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudH0ubWItbWQtMywubXktbWQtM3ttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5tbC1tZC0zLC5teC1tZC0ze21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5tLW1kLTR7bWFyZ2luOjEuNXJlbSFpbXBvcnRhbnR9Lm10LW1kLTQsLm15LW1kLTR7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS5tci1tZC00LC5teC1tZC00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5tYi1tZC00LC5teS1tZC00e21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubWwtbWQtNCwubXgtbWQtNHttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5tLW1kLTV7bWFyZ2luOjNyZW0haW1wb3J0YW50fS5tdC1tZC01LC5teS1tZC01e21hcmdpbi10b3A6M3JlbSFpbXBvcnRhbnR9Lm1yLW1kLTUsLm14LW1kLTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5tYi1tZC01LC5teS1tZC01e21hcmdpbi1ib3R0b206M3JlbSFpbXBvcnRhbnR9Lm1sLW1kLTUsLm14LW1kLTV7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LnAtbWQtMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wdC1tZC0wLC5weS1tZC0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wci1tZC0wLC5weC1tZC0we3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9LnBiLW1kLTAsLnB5LW1kLTB7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnBsLW1kLTAsLnB4LW1kLTB7cGFkZGluZy1sZWZ0OjAhaW1wb3J0YW50fS5wLW1kLTF7cGFkZGluZzouMjVyZW0haW1wb3J0YW50fS5wdC1tZC0xLC5weS1tZC0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnR9LnByLW1kLTEsLnB4LW1kLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50fS5wYi1tZC0xLC5weS1tZC0xe3BhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9LnBsLW1kLTEsLnB4LW1kLTF7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnAtbWQtMntwYWRkaW5nOi41cmVtIWltcG9ydGFudH0ucHQtbWQtMiwucHktbWQtMntwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnR9LnByLW1kLTIsLnB4LW1kLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnR9LnBiLW1kLTIsLnB5LW1kLTJ7cGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50fS5wbC1tZC0yLC5weC1tZC0ye3BhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnR9LnAtbWQtM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wdC1tZC0zLC5weS1tZC0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wci1tZC0zLC5weC1tZC0ze3BhZGRpbmctcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnBiLW1kLTMsLnB5LW1kLTN7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnBsLW1kLTMsLnB4LW1kLTN7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS5wLW1kLTR7cGFkZGluZzoxLjVyZW0haW1wb3J0YW50fS5wdC1tZC00LC5weS1tZC00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnR9LnByLW1kLTQsLnB4LW1kLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5wYi1tZC00LC5weS1tZC00e3BhZGRpbmctYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9LnBsLW1kLTQsLnB4LW1kLTR7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnAtbWQtNXtwYWRkaW5nOjNyZW0haW1wb3J0YW50fS5wdC1tZC01LC5weS1tZC01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50fS5wci1tZC01LC5weC1tZC01e3BhZGRpbmctcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnBiLW1kLTUsLnB5LW1kLTV7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnBsLW1kLTUsLnB4LW1kLTV7cGFkZGluZy1sZWZ0OjNyZW0haW1wb3J0YW50fS5tLW1kLW4xe21hcmdpbjotLjI1cmVtIWltcG9ydGFudH0ubXQtbWQtbjEsLm15LW1kLW4xe21hcmdpbi10b3A6LS4yNXJlbSFpbXBvcnRhbnR9Lm1yLW1kLW4xLC5teC1tZC1uMXttYXJnaW4tcmlnaHQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm1iLW1kLW4xLC5teS1tZC1uMXttYXJnaW4tYm90dG9tOi0uMjVyZW0haW1wb3J0YW50fS5tbC1tZC1uMSwubXgtbWQtbjF7bWFyZ2luLWxlZnQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm0tbWQtbjJ7bWFyZ2luOi0uNXJlbSFpbXBvcnRhbnR9Lm10LW1kLW4yLC5teS1tZC1uMnttYXJnaW4tdG9wOi0uNXJlbSFpbXBvcnRhbnR9Lm1yLW1kLW4yLC5teC1tZC1uMnttYXJnaW4tcmlnaHQ6LS41cmVtIWltcG9ydGFudH0ubWItbWQtbjIsLm15LW1kLW4ye21hcmdpbi1ib3R0b206LS41cmVtIWltcG9ydGFudH0ubWwtbWQtbjIsLm14LW1kLW4ye21hcmdpbi1sZWZ0Oi0uNXJlbSFpbXBvcnRhbnR9Lm0tbWQtbjN7bWFyZ2luOi0xcmVtIWltcG9ydGFudH0ubXQtbWQtbjMsLm15LW1kLW4ze21hcmdpbi10b3A6LTFyZW0haW1wb3J0YW50fS5tci1tZC1uMywubXgtbWQtbjN7bWFyZ2luLXJpZ2h0Oi0xcmVtIWltcG9ydGFudH0ubWItbWQtbjMsLm15LW1kLW4ze21hcmdpbi1ib3R0b206LTFyZW0haW1wb3J0YW50fS5tbC1tZC1uMywubXgtbWQtbjN7bWFyZ2luLWxlZnQ6LTFyZW0haW1wb3J0YW50fS5tLW1kLW40e21hcmdpbjotMS41cmVtIWltcG9ydGFudH0ubXQtbWQtbjQsLm15LW1kLW40e21hcmdpbi10b3A6LTEuNXJlbSFpbXBvcnRhbnR9Lm1yLW1kLW40LC5teC1tZC1uNHttYXJnaW4tcmlnaHQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm1iLW1kLW40LC5teS1tZC1uNHttYXJnaW4tYm90dG9tOi0xLjVyZW0haW1wb3J0YW50fS5tbC1tZC1uNCwubXgtbWQtbjR7bWFyZ2luLWxlZnQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm0tbWQtbjV7bWFyZ2luOi0zcmVtIWltcG9ydGFudH0ubXQtbWQtbjUsLm15LW1kLW41e21hcmdpbi10b3A6LTNyZW0haW1wb3J0YW50fS5tci1tZC1uNSwubXgtbWQtbjV7bWFyZ2luLXJpZ2h0Oi0zcmVtIWltcG9ydGFudH0ubWItbWQtbjUsLm15LW1kLW41e21hcmdpbi1ib3R0b206LTNyZW0haW1wb3J0YW50fS5tbC1tZC1uNSwubXgtbWQtbjV7bWFyZ2luLWxlZnQ6LTNyZW0haW1wb3J0YW50fS5tLW1kLWF1dG97bWFyZ2luOmF1dG8haW1wb3J0YW50fS5tdC1tZC1hdXRvLC5teS1tZC1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9Lm1yLW1kLWF1dG8sLm14LW1kLWF1dG97bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50fS5tYi1tZC1hdXRvLC5teS1tZC1hdXRve21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9Lm1sLW1kLWF1dG8sLm14LW1kLWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsubS1sZy0we21hcmdpbjowIWltcG9ydGFudH0ubXQtbGctMCwubXktbGctMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50fS5tci1sZy0wLC5teC1sZy0we21hcmdpbi1yaWdodDowIWltcG9ydGFudH0ubWItbGctMCwubXktbGctMHttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5tbC1sZy0wLC5teC1sZy0we21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5tLWxnLTF7bWFyZ2luOi4yNXJlbSFpbXBvcnRhbnR9Lm10LWxnLTEsLm15LWxnLTF7bWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50fS5tci1sZy0xLC5teC1sZy0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50fS5tYi1sZy0xLC5teS1sZy0xe21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubWwtbGctMSwubXgtbGctMXttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5tLWxnLTJ7bWFyZ2luOi41cmVtIWltcG9ydGFudH0ubXQtbGctMiwubXktbGctMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudH0ubXItbGctMiwubXgtbGctMnttYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5tYi1sZy0yLC5teS1sZy0ye21hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50fS5tbC1sZy0yLC5teC1sZy0ye21hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudH0ubS1sZy0ze21hcmdpbjoxcmVtIWltcG9ydGFudH0ubXQtbGctMywubXktbGctM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50fS5tci1sZy0zLC5teC1sZy0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudH0ubWItbGctMywubXktbGctM3ttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5tbC1sZy0zLC5teC1sZy0ze21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5tLWxnLTR7bWFyZ2luOjEuNXJlbSFpbXBvcnRhbnR9Lm10LWxnLTQsLm15LWxnLTR7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS5tci1sZy00LC5teC1sZy00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5tYi1sZy00LC5teS1sZy00e21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubWwtbGctNCwubXgtbGctNHttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5tLWxnLTV7bWFyZ2luOjNyZW0haW1wb3J0YW50fS5tdC1sZy01LC5teS1sZy01e21hcmdpbi10b3A6M3JlbSFpbXBvcnRhbnR9Lm1yLWxnLTUsLm14LWxnLTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5tYi1sZy01LC5teS1sZy01e21hcmdpbi1ib3R0b206M3JlbSFpbXBvcnRhbnR9Lm1sLWxnLTUsLm14LWxnLTV7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LnAtbGctMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wdC1sZy0wLC5weS1sZy0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wci1sZy0wLC5weC1sZy0we3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9LnBiLWxnLTAsLnB5LWxnLTB7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnBsLWxnLTAsLnB4LWxnLTB7cGFkZGluZy1sZWZ0OjAhaW1wb3J0YW50fS5wLWxnLTF7cGFkZGluZzouMjVyZW0haW1wb3J0YW50fS5wdC1sZy0xLC5weS1sZy0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnR9LnByLWxnLTEsLnB4LWxnLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50fS5wYi1sZy0xLC5weS1sZy0xe3BhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9LnBsLWxnLTEsLnB4LWxnLTF7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnAtbGctMntwYWRkaW5nOi41cmVtIWltcG9ydGFudH0ucHQtbGctMiwucHktbGctMntwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnR9LnByLWxnLTIsLnB4LWxnLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnR9LnBiLWxnLTIsLnB5LWxnLTJ7cGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50fS5wbC1sZy0yLC5weC1sZy0ye3BhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnR9LnAtbGctM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wdC1sZy0zLC5weS1sZy0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wci1sZy0zLC5weC1sZy0ze3BhZGRpbmctcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnBiLWxnLTMsLnB5LWxnLTN7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnBsLWxnLTMsLnB4LWxnLTN7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS5wLWxnLTR7cGFkZGluZzoxLjVyZW0haW1wb3J0YW50fS5wdC1sZy00LC5weS1sZy00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnR9LnByLWxnLTQsLnB4LWxnLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5wYi1sZy00LC5weS1sZy00e3BhZGRpbmctYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9LnBsLWxnLTQsLnB4LWxnLTR7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnAtbGctNXtwYWRkaW5nOjNyZW0haW1wb3J0YW50fS5wdC1sZy01LC5weS1sZy01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50fS5wci1sZy01LC5weC1sZy01e3BhZGRpbmctcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnBiLWxnLTUsLnB5LWxnLTV7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnBsLWxnLTUsLnB4LWxnLTV7cGFkZGluZy1sZWZ0OjNyZW0haW1wb3J0YW50fS5tLWxnLW4xe21hcmdpbjotLjI1cmVtIWltcG9ydGFudH0ubXQtbGctbjEsLm15LWxnLW4xe21hcmdpbi10b3A6LS4yNXJlbSFpbXBvcnRhbnR9Lm1yLWxnLW4xLC5teC1sZy1uMXttYXJnaW4tcmlnaHQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm1iLWxnLW4xLC5teS1sZy1uMXttYXJnaW4tYm90dG9tOi0uMjVyZW0haW1wb3J0YW50fS5tbC1sZy1uMSwubXgtbGctbjF7bWFyZ2luLWxlZnQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm0tbGctbjJ7bWFyZ2luOi0uNXJlbSFpbXBvcnRhbnR9Lm10LWxnLW4yLC5teS1sZy1uMnttYXJnaW4tdG9wOi0uNXJlbSFpbXBvcnRhbnR9Lm1yLWxnLW4yLC5teC1sZy1uMnttYXJnaW4tcmlnaHQ6LS41cmVtIWltcG9ydGFudH0ubWItbGctbjIsLm15LWxnLW4ye21hcmdpbi1ib3R0b206LS41cmVtIWltcG9ydGFudH0ubWwtbGctbjIsLm14LWxnLW4ye21hcmdpbi1sZWZ0Oi0uNXJlbSFpbXBvcnRhbnR9Lm0tbGctbjN7bWFyZ2luOi0xcmVtIWltcG9ydGFudH0ubXQtbGctbjMsLm15LWxnLW4ze21hcmdpbi10b3A6LTFyZW0haW1wb3J0YW50fS5tci1sZy1uMywubXgtbGctbjN7bWFyZ2luLXJpZ2h0Oi0xcmVtIWltcG9ydGFudH0ubWItbGctbjMsLm15LWxnLW4ze21hcmdpbi1ib3R0b206LTFyZW0haW1wb3J0YW50fS5tbC1sZy1uMywubXgtbGctbjN7bWFyZ2luLWxlZnQ6LTFyZW0haW1wb3J0YW50fS5tLWxnLW40e21hcmdpbjotMS41cmVtIWltcG9ydGFudH0ubXQtbGctbjQsLm15LWxnLW40e21hcmdpbi10b3A6LTEuNXJlbSFpbXBvcnRhbnR9Lm1yLWxnLW40LC5teC1sZy1uNHttYXJnaW4tcmlnaHQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm1iLWxnLW40LC5teS1sZy1uNHttYXJnaW4tYm90dG9tOi0xLjVyZW0haW1wb3J0YW50fS5tbC1sZy1uNCwubXgtbGctbjR7bWFyZ2luLWxlZnQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm0tbGctbjV7bWFyZ2luOi0zcmVtIWltcG9ydGFudH0ubXQtbGctbjUsLm15LWxnLW41e21hcmdpbi10b3A6LTNyZW0haW1wb3J0YW50fS5tci1sZy1uNSwubXgtbGctbjV7bWFyZ2luLXJpZ2h0Oi0zcmVtIWltcG9ydGFudH0ubWItbGctbjUsLm15LWxnLW41e21hcmdpbi1ib3R0b206LTNyZW0haW1wb3J0YW50fS5tbC1sZy1uNSwubXgtbGctbjV7bWFyZ2luLWxlZnQ6LTNyZW0haW1wb3J0YW50fS5tLWxnLWF1dG97bWFyZ2luOmF1dG8haW1wb3J0YW50fS5tdC1sZy1hdXRvLC5teS1sZy1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9Lm1yLWxnLWF1dG8sLm14LWxnLWF1dG97bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50fS5tYi1sZy1hdXRvLC5teS1sZy1hdXRve21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9Lm1sLWxnLWF1dG8sLm14LWxnLWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7Lm0teGwtMHttYXJnaW46MCFpbXBvcnRhbnR9Lm10LXhsLTAsLm15LXhsLTB7bWFyZ2luLXRvcDowIWltcG9ydGFudH0ubXIteGwtMCwubXgteGwtMHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Lm1iLXhsLTAsLm15LXhsLTB7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWwteGwtMCwubXgteGwtMHttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubS14bC0xe21hcmdpbjouMjVyZW0haW1wb3J0YW50fS5tdC14bC0xLC5teS14bC0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudH0ubXIteGwtMSwubXgteGwtMXttYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ubWIteGwtMSwubXkteGwtMXttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm1sLXhsLTEsLm14LXhsLTF7bWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ubS14bC0ye21hcmdpbjouNXJlbSFpbXBvcnRhbnR9Lm10LXhsLTIsLm15LXhsLTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnR9Lm1yLXhsLTIsLm14LXhsLTJ7bWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudH0ubWIteGwtMiwubXkteGwtMnttYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudH0ubWwteGwtMiwubXgteGwtMnttYXJnaW4tbGVmdDouNXJlbSFpbXBvcnRhbnR9Lm0teGwtM3ttYXJnaW46MXJlbSFpbXBvcnRhbnR9Lm10LXhsLTMsLm15LXhsLTN7bWFyZ2luLXRvcDoxcmVtIWltcG9ydGFudH0ubXIteGwtMywubXgteGwtM3ttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnR9Lm1iLXhsLTMsLm15LXhsLTN7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubWwteGwtMywubXgteGwtM3ttYXJnaW4tbGVmdDoxcmVtIWltcG9ydGFudH0ubS14bC00e21hcmdpbjoxLjVyZW0haW1wb3J0YW50fS5tdC14bC00LC5teS14bC00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudH0ubXIteGwtNCwubXgteGwtNHttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ubWIteGwtNCwubXkteGwtNHttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm1sLXhsLTQsLm14LXhsLTR7bWFyZ2luLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ubS14bC01e21hcmdpbjozcmVtIWltcG9ydGFudH0ubXQteGwtNSwubXkteGwtNXttYXJnaW4tdG9wOjNyZW0haW1wb3J0YW50fS5tci14bC01LC5teC14bC01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudH0ubWIteGwtNSwubXkteGwtNXttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS5tbC14bC01LC5teC14bC01e21hcmdpbi1sZWZ0OjNyZW0haW1wb3J0YW50fS5wLXhsLTB7cGFkZGluZzowIWltcG9ydGFudH0ucHQteGwtMCwucHkteGwtMHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0ucHIteGwtMCwucHgteGwtMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS5wYi14bC0wLC5weS14bC0we3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fS5wbC14bC0wLC5weC14bC0we3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucC14bC0xe3BhZGRpbmc6LjI1cmVtIWltcG9ydGFudH0ucHQteGwtMSwucHkteGwtMXtwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50fS5wci14bC0xLC5weC14bC0xe3BhZGRpbmctcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ucGIteGwtMSwucHkteGwtMXtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5wbC14bC0xLC5weC14bC0xe3BhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50fS5wLXhsLTJ7cGFkZGluZzouNXJlbSFpbXBvcnRhbnR9LnB0LXhsLTIsLnB5LXhsLTJ7cGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50fS5wci14bC0yLC5weC14bC0ye3BhZGRpbmctcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5wYi14bC0yLC5weS14bC0ye3BhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudH0ucGwteGwtMiwucHgteGwtMntwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5wLXhsLTN7cGFkZGluZzoxcmVtIWltcG9ydGFudH0ucHQteGwtMywucHkteGwtM3twYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudH0ucHIteGwtMywucHgteGwtM3twYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50fS5wYi14bC0zLC5weS14bC0ze3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS5wbC14bC0zLC5weC14bC0ze3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucC14bC00e3BhZGRpbmc6MS41cmVtIWltcG9ydGFudH0ucHQteGwtNCwucHkteGwtNHtwYWRkaW5nLXRvcDoxLjVyZW0haW1wb3J0YW50fS5wci14bC00LC5weC14bC00e3BhZGRpbmctcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ucGIteGwtNCwucHkteGwtNHtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5wbC14bC00LC5weC14bC00e3BhZGRpbmctbGVmdDoxLjVyZW0haW1wb3J0YW50fS5wLXhsLTV7cGFkZGluZzozcmVtIWltcG9ydGFudH0ucHQteGwtNSwucHkteGwtNXtwYWRkaW5nLXRvcDozcmVtIWltcG9ydGFudH0ucHIteGwtNSwucHgteGwtNXtwYWRkaW5nLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5wYi14bC01LC5weS14bC01e3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wbC14bC01LC5weC14bC01e3BhZGRpbmctbGVmdDozcmVtIWltcG9ydGFudH0ubS14bC1uMXttYXJnaW46LS4yNXJlbSFpbXBvcnRhbnR9Lm10LXhsLW4xLC5teS14bC1uMXttYXJnaW4tdG9wOi0uMjVyZW0haW1wb3J0YW50fS5tci14bC1uMSwubXgteGwtbjF7bWFyZ2luLXJpZ2h0Oi0uMjVyZW0haW1wb3J0YW50fS5tYi14bC1uMSwubXkteGwtbjF7bWFyZ2luLWJvdHRvbTotLjI1cmVtIWltcG9ydGFudH0ubWwteGwtbjEsLm14LXhsLW4xe21hcmdpbi1sZWZ0Oi0uMjVyZW0haW1wb3J0YW50fS5tLXhsLW4ye21hcmdpbjotLjVyZW0haW1wb3J0YW50fS5tdC14bC1uMiwubXkteGwtbjJ7bWFyZ2luLXRvcDotLjVyZW0haW1wb3J0YW50fS5tci14bC1uMiwubXgteGwtbjJ7bWFyZ2luLXJpZ2h0Oi0uNXJlbSFpbXBvcnRhbnR9Lm1iLXhsLW4yLC5teS14bC1uMnttYXJnaW4tYm90dG9tOi0uNXJlbSFpbXBvcnRhbnR9Lm1sLXhsLW4yLC5teC14bC1uMnttYXJnaW4tbGVmdDotLjVyZW0haW1wb3J0YW50fS5tLXhsLW4ze21hcmdpbjotMXJlbSFpbXBvcnRhbnR9Lm10LXhsLW4zLC5teS14bC1uM3ttYXJnaW4tdG9wOi0xcmVtIWltcG9ydGFudH0ubXIteGwtbjMsLm14LXhsLW4ze21hcmdpbi1yaWdodDotMXJlbSFpbXBvcnRhbnR9Lm1iLXhsLW4zLC5teS14bC1uM3ttYXJnaW4tYm90dG9tOi0xcmVtIWltcG9ydGFudH0ubWwteGwtbjMsLm14LXhsLW4ze21hcmdpbi1sZWZ0Oi0xcmVtIWltcG9ydGFudH0ubS14bC1uNHttYXJnaW46LTEuNXJlbSFpbXBvcnRhbnR9Lm10LXhsLW40LC5teS14bC1uNHttYXJnaW4tdG9wOi0xLjVyZW0haW1wb3J0YW50fS5tci14bC1uNCwubXgteGwtbjR7bWFyZ2luLXJpZ2h0Oi0xLjVyZW0haW1wb3J0YW50fS5tYi14bC1uNCwubXkteGwtbjR7bWFyZ2luLWJvdHRvbTotMS41cmVtIWltcG9ydGFudH0ubWwteGwtbjQsLm14LXhsLW40e21hcmdpbi1sZWZ0Oi0xLjVyZW0haW1wb3J0YW50fS5tLXhsLW41e21hcmdpbjotM3JlbSFpbXBvcnRhbnR9Lm10LXhsLW41LC5teS14bC1uNXttYXJnaW4tdG9wOi0zcmVtIWltcG9ydGFudH0ubXIteGwtbjUsLm14LXhsLW41e21hcmdpbi1yaWdodDotM3JlbSFpbXBvcnRhbnR9Lm1iLXhsLW41LC5teS14bC1uNXttYXJnaW4tYm90dG9tOi0zcmVtIWltcG9ydGFudH0ubWwteGwtbjUsLm14LXhsLW41e21hcmdpbi1sZWZ0Oi0zcmVtIWltcG9ydGFudH0ubS14bC1hdXRve21hcmdpbjphdXRvIWltcG9ydGFudH0ubXQteGwtYXV0bywubXkteGwtYXV0b3ttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50fS5tci14bC1hdXRvLC5teC14bC1hdXRve21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH0ubWIteGwtYXV0bywubXkteGwtYXV0b3ttYXJnaW4tYm90dG9tOmF1dG8haW1wb3J0YW50fS5tbC14bC1hdXRvLC5teC14bC1hdXRve21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50fX0uc3RyZXRjaGVkLWxpbms6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3R0b206MDtjb250ZW50OiIiO2xlZnQ6MDtwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7ei1pbmRleDoxfS50ZXh0LW1vbm9zcGFjZXtmb250LWZhbWlseTpTRk1vbm8tUmVndWxhcixNZW5sbyxNb25hY28sQ29uc29sYXMsTGliZXJhdGlvbiBNb25vLENvdXJpZXIgTmV3LG1vbm9zcGFjZSFpbXBvcnRhbnR9LnRleHQtanVzdGlmeXt0ZXh0LWFsaWduOmp1c3RpZnkhaW1wb3J0YW50fS50ZXh0LXdyYXB7d2hpdGUtc3BhY2U6bm9ybWFsIWltcG9ydGFudH0udGV4dC1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwIWltcG9ydGFudH0udGV4dC10cnVuY2F0ZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fS50ZXh0LWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey50ZXh0LXNtLWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGV4dC1zbS1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH0udGV4dC1zbS1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LnRleHQtbWQtbGVmdHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LW1kLXJpZ2h0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fS50ZXh0LW1kLWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsudGV4dC1sZy1sZWZ0e3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRleHQtbGctcmlnaHR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQtbGctY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsudGV4dC14bC1sZWZ0e3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRleHQteGwtcmlnaHR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQteGwtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19LnRleHQtbG93ZXJjYXNle3RleHQtdHJhbnNmb3JtOmxvd2VyY2FzZSFpbXBvcnRhbnR9LnRleHQtdXBwZXJjYXNle3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZSFpbXBvcnRhbnR9LnRleHQtY2FwaXRhbGl6ZXt0ZXh0LXRyYW5zZm9ybTpjYXBpdGFsaXplIWltcG9ydGFudH0uZm9udC13ZWlnaHQtbGlnaHR7Zm9udC13ZWlnaHQ6MzAwIWltcG9ydGFudH0uZm9udC13ZWlnaHQtbGlnaHRlcntmb250LXdlaWdodDpsaWdodGVyIWltcG9ydGFudH0uZm9udC13ZWlnaHQtbm9ybWFse2ZvbnQtd2VpZ2h0OjQwMCFpbXBvcnRhbnR9LmZvbnQtd2VpZ2h0LWJvbGR7Zm9udC13ZWlnaHQ6NzAwIWltcG9ydGFudH0uZm9udC13ZWlnaHQtYm9sZGVye2ZvbnQtd2VpZ2h0OmJvbGRlciFpbXBvcnRhbnR9LmZvbnQtaXRhbGlje2ZvbnQtc3R5bGU6aXRhbGljIWltcG9ydGFudH0udGV4dC13aGl0ZXtjb2xvcjojZmZmIWltcG9ydGFudH0udGV4dC1wcmltYXJ5e2NvbG9yOiNkNDA1MTEhaW1wb3J0YW50fWEudGV4dC1wcmltYXJ5OmZvY3VzLGEudGV4dC1wcmltYXJ5OmhvdmVye2NvbG9yOiM4OTAzMGIhaW1wb3J0YW50fS50ZXh0LXNlY29uZGFyeXtjb2xvcjojNjY2IWltcG9ydGFudH1hLnRleHQtc2Vjb25kYXJ5OmZvY3VzLGEudGV4dC1zZWNvbmRhcnk6aG92ZXJ7Y29sb3I6IzQwNDA0MCFpbXBvcnRhbnR9LnRleHQtc3VjY2Vzc3tjb2xvcjojMjhhNzQ1IWltcG9ydGFudH1hLnRleHQtc3VjY2Vzczpmb2N1cyxhLnRleHQtc3VjY2Vzczpob3Zlcntjb2xvcjojMTk2OTJjIWltcG9ydGFudH0udGV4dC1pbmZve2NvbG9yOiMxN2EyYjghaW1wb3J0YW50fWEudGV4dC1pbmZvOmZvY3VzLGEudGV4dC1pbmZvOmhvdmVye2NvbG9yOiMwZjY2NzQhaW1wb3J0YW50fS50ZXh0LXdhcm5pbmd7Y29sb3I6I2ZjMCFpbXBvcnRhbnR9YS50ZXh0LXdhcm5pbmc6Zm9jdXMsYS50ZXh0LXdhcm5pbmc6aG92ZXJ7Y29sb3I6I2IzOGYwMCFpbXBvcnRhbnR9LnRleHQtZGFuZ2Vye2NvbG9yOiNkNDA1MTEhaW1wb3J0YW50fWEudGV4dC1kYW5nZXI6Zm9jdXMsYS50ZXh0LWRhbmdlcjpob3Zlcntjb2xvcjojODkwMzBiIWltcG9ydGFudH0udGV4dC1saWdodHtjb2xvcjojZjJmMmYyIWltcG9ydGFudH1hLnRleHQtbGlnaHQ6Zm9jdXMsYS50ZXh0LWxpZ2h0OmhvdmVye2NvbG9yOiNjY2MhaW1wb3J0YW50fS50ZXh0LWRhcmt7Y29sb3I6IzMzMyFpbXBvcnRhbnR9YS50ZXh0LWRhcms6Zm9jdXMsYS50ZXh0LWRhcms6aG92ZXJ7Y29sb3I6IzBkMGQwZCFpbXBvcnRhbnR9LnRleHQtYm9keXtjb2xvcjpyZ2JhKDAsMCwwLC45KSFpbXBvcnRhbnR9LnBhZ2luYXRpb24tY29udGFpbmVyIC5wYWdpbmF0aW9uLWluZm8sLnRleHQtbXV0ZWQsZm9ybSAuZm9ybS1ncm91cCBsYWJlbCAudGlwLGZvcm0gLmZvcm0tZ3JvdXA+LmZlZWRiYWNrLmZlZWRiYWNrLS1vcHRpb25hbCxmb3JtIC5mb3JtLWdyb3VwPi5oZWxwLWJsb2Nre2NvbG9yOiM2NjYhaW1wb3J0YW50fS50ZXh0LWJsYWNrLTUwe2NvbG9yOnJnYmEoMCwwLDAsLjUpIWltcG9ydGFudH0udGV4dC13aGl0ZS01MHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSkhaW1wb3J0YW50fS50ZXh0LWhpZGV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MDtjb2xvcjp0cmFuc3BhcmVudDtmb250OjAvMCBhO3RleHQtc2hhZG93Om5vbmV9LnRleHQtZGVjb3JhdGlvbi1ub25le3RleHQtZGVjb3JhdGlvbjpub25lIWltcG9ydGFudH0udGV4dC1icmVha3t3b3JkLXdyYXA6YnJlYWstd29yZCFpbXBvcnRhbnQ7d29yZC1icmVhazpicmVhay13b3JkIWltcG9ydGFudH0udGV4dC1yZXNldHtjb2xvcjppbmhlcml0IWltcG9ydGFudH0udmlzaWJsZXt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50fS5pbnZpc2libGV7dmlzaWJpbGl0eTpoaWRkZW4haW1wb3J0YW50fUBtZWRpYSBwcmludHsqLDphZnRlciw6YmVmb3Jle2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7dGV4dC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9YTpub3QoLmJ0bil7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1hYmJyW3RpdGxlXTphZnRlcntjb250ZW50OiIgKCIgYXR0cih0aXRsZSkgIikifXByZXt3aGl0ZS1zcGFjZTpwcmUtd3JhcCFpbXBvcnRhbnR9YmxvY2txdW90ZSxwcmV7Ym9yZGVyOjFweCBzb2xpZCAjYjJiMmIyfWJsb2NrcXVvdGUsaW1nLHByZSx0cntwYWdlLWJyZWFrLWluc2lkZTphdm9pZH0uaW9iamVjdF9faGVhZGluZyxoMixoMyxwe29ycGhhbnM6Mzt3aWRvd3M6M30uaW9iamVjdF9faGVhZGluZyxoMixoM3twYWdlLWJyZWFrLWFmdGVyOmF2b2lkfUBwYWdle3NpemU6YTN9LmNvbnRhaW5lcixib2R5e21pbi13aWR0aDo5OTJweCFpbXBvcnRhbnR9Lm5hdmJhcntkaXNwbGF5Om5vbmV9LmJhZGdle2JvcmRlcjoxcHggc29saWQgIzAwMH0udGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlIWltcG9ydGFudH0udGFibGUgdGQsLnRhYmxlIHRoe2JhY2tncm91bmQtY29sb3I6I2ZmZiFpbXBvcnRhbnR9LnRhYmxlLWJvcmRlcmVkIHRkLC50YWJsZS1ib3JkZXJlZCB0aHtib3JkZXI6MXB4IHNvbGlkICNlNWU1ZTUhaW1wb3J0YW50fS50YWJsZS1kYXJre2NvbG9yOmluaGVyaXR9LnRhYmxlLWRhcmsgdGJvZHkrdGJvZHksLnRhYmxlLWRhcmsgdGQsLnRhYmxlLWRhcmsgdGgsLnRhYmxlLWRhcmsgdGhlYWQgdGh7Ym9yZGVyLWNvbG9yOiNlNWU1ZTV9LnRhYmxlIC50aGVhZC1kYXJrIHRoe2JvcmRlci1jb2xvcjojZTVlNWU1O2NvbG9yOmluaGVyaXR9fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6RGVsaXZlcnk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO3NyYzp1cmwoLi4vZm9udHMvRGVsaXZlcnlfV19SZy53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi9mb250cy9EZWxpdmVyeV9XX1JnLndvZmYpIGZvcm1hdCgid29mZiIpfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6RGVsaXZlcnk7Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NDAwO3NyYzp1cmwoLi4vZm9udHMvRGVsaXZlcnlfV19JdC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi9mb250cy9EZWxpdmVyeV9XX0l0LndvZmYpIGZvcm1hdCgid29mZiIpfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6RGVsaXZlcnk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NzAwO3NyYzp1cmwoLi4vZm9udHMvRGVsaXZlcnlfV19CZC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi9mb250cy9EZWxpdmVyeV9XX0JkLndvZmYpIGZvcm1hdCgid29mZiIpfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6RGVsaXZlcnk7Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NzAwO3NyYzp1cmwoLi4vZm9udHMvRGVsaXZlcnlfV19CZEl0LndvZmYyKSBmb3JtYXQoIndvZmYyIiksdXJsKC4uL2ZvbnRzL0RlbGl2ZXJ5X1dfQmRJdC53b2ZmKSBmb3JtYXQoIndvZmYiKX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkRlbGl2ZXJ5O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjkwMDtzcmM6dXJsKC4uL2ZvbnRzL0RlbGl2ZXJ5X1dfQ2RCbGsud29mZjIpIGZvcm1hdCgid29mZjIiKSx1cmwoLi4vZm9udHMvRGVsaXZlcnlfV19DZEJsay53b2ZmKSBmb3JtYXQoIndvZmYiKX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkRlbGl2ZXJ5O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjMwMDtzcmM6dXJsKC4uL2ZvbnRzL0RlbGl2ZXJ5X1dfTHQud29mZjIpIGZvcm1hdCgid29mZjIiKSx1cmwoLi4vZm9udHMvRGVsaXZlcnlfV19MdC53b2ZmKSBmb3JtYXQoIndvZmYiKX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkRlbGl2ZXJ5O2ZvbnQtc3R5bGU6aXRhbGljO2ZvbnQtd2VpZ2h0OjMwMDtzcmM6dXJsKC4uL2ZvbnRzL0RlbGl2ZXJ5X1dfTHRJdC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi9mb250cy9EZWxpdmVyeV9XX0x0SXQud29mZikgZm9ybWF0KCJ3b2ZmIil9QGZvbnQtZmFjZXtmb250LWZhbWlseTpEZWxpdmVyeTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDA7c3JjOnVybCguLi9mb250cy9EZWxpdmVyeV9XX0NkTHQud29mZjIpIGZvcm1hdCgid29mZjIiKSx1cmwoLi4vZm9udHMvRGVsaXZlcnlfV19DZEx0LndvZmYpIGZvcm1hdCgid29mZiIpfS5oMSwuaDIsLmgzLC5oNCwuaDUsLmhlcm8tc2VjdGlvbiAuaGVyb19fY29udGVudCAuaGVyb19fdGl0bGUsLmlvYmplY3RfX2hlYWRpbmcsaDEsaDIsaDMsaDQsaDV7Zm9udC13ZWlnaHQ6OTAwfS5oMSBlbS5zdWJ0aXRsZSwuaDIgZW0uc3VidGl0bGUsLmgzIGVtLnN1YnRpdGxlLC5oNCBlbS5zdWJ0aXRsZSwuaDUgZW0uc3VidGl0bGUsLmhlcm8tc2VjdGlvbiAuaGVyb19fY29udGVudCAuaGVyb19fdGl0bGUgZW0uc3VidGl0bGUsLmlvYmplY3RfX2hlYWRpbmcgZW0uc3VidGl0bGUsaDEgZW0uc3VidGl0bGUsaDIgZW0uc3VidGl0bGUsaDMgZW0uc3VidGl0bGUsaDQgZW0uc3VidGl0bGUsaDUgZW0uc3VidGl0bGV7ZGlzcGxheTpibG9jaztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDB9LmgxIGVtLnN1YnRpdGxlLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3RpdGxlIGVtLnN1YnRpdGxlLGgxIGVtLnN1YnRpdGxle2ZvbnQtc2l6ZTouNjVlbX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7LmgxLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3RpdGxlLGgxe2ZvbnQtc2l6ZTozcmVtfX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7LmgxLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3RpdGxlLGgxe2ZvbnQtc2l6ZToycmVtfX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7LmgxLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3RpdGxlLGgxe2ZvbnQtc2l6ZToxLjVyZW19fS5ib2R5X2FydGljbGVzX2luZGV4IGgxIGVte2ZvbnQtc3R5bGU6bm9ybWFsfWJsb2NrcXVvdGV7Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkICNkNDA1MTE7Zm9udC1zdHlsZTppdGFsaWM7bWFyZ2luLWxlZnQ6M3JlbTttaW4taGVpZ2h0OjNyZW07cGFkZGluZy1sZWZ0OjJyZW07cG9zaXRpb246cmVsYXRpdmV9YmxvY2txdW90ZSAuYmxvY2txdW90ZV9fc291cmNlLGJsb2NrcXVvdGU6YmVmb3Jle2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjkwMH1ibG9ja3F1b3RlOmJlZm9yZXtjb2xvcjojZDQwNTExO2NvbnRlbnQ6IlwyMDFFIjtkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7Zm9udC1zaXplOjRyZW07bGVmdDotM3JlbTtsaW5lLWhlaWdodDoxO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMnJlbX1AbWVkaWEgKG1heC13aWR0aDozODBweCl7YmxvY2txdW90ZXtib3JkZXItbGVmdDpub25lO3BhZGRpbmctbGVmdDowfX1ibG9ja3F1b3RlLnRleHQtcmlnaHR7Ym9yZGVyLWxlZnQ6bm9uZTtib3JkZXItcmlnaHQ6MnB4IHNvbGlkICNkNDA1MTE7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6M3JlbTtwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjJyZW19YmxvY2txdW90ZS50ZXh0LXJpZ2h0OmJlZm9yZXtsZWZ0OmF1dG87cmlnaHQ6LTNyZW19QG1lZGlhIChtYXgtd2lkdGg6MzgwcHgpe2Jsb2NrcXVvdGUudGV4dC1yaWdodHtib3JkZXItcmlnaHQ6bm9uZTtwYWRkaW5nLXJpZ2h0OjB9fS5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZV9fYm9keSAuaW9iamVjdF9faGVhZGluZywuYm9keV9hcnRpY2xlc19kZXRhaWwgLmFydGljbGVfX2JvZHkgaDEsLmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlX19ib2R5IGgyLC5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZV9fYm9keSBoMywuYm9keV9hcnRpY2xlc19kZXRhaWwgLmFydGljbGVfX2JvZHkgaDQsLmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlX19ib2R5IGg1e2xpbmUtaGVpZ2h0OmluaGVyaXR9LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlX19ib2R5IC5pb2JqZWN0X19oZWFkaW5nLC5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZV9fYm9keSBoM3tmb250LXNpemU6MS4xMjVyZW07Zm9udC13ZWlnaHQ6NzAwfS5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZV9fYm9keSBoNCwuYm9keV9hcnRpY2xlc19kZXRhaWwgLmFydGljbGVfX2JvZHkgaDV7Zm9udC1zaXplOi45ZW07Zm9udC13ZWlnaHQ6OTAwfS50ZXh0LS1ub3dyYXB7dGV4dC13cmFwOm5vd3JhcDt3aGl0ZS1zcGFjZTpub3dyYXB9LmgxLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3RpdGxlLGgxe2ZvbnQtc2l6ZToyNy4ycHh9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo1NzZweCl7LmgxLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3RpdGxlLGgxe2ZvbnQtc2l6ZTpjYWxjKC0xLjZweCArIDV2dyl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTkycHgpey5oMSwuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5oZXJvX190aXRsZSxoMXtmb250LXNpemU6NDhweH19LmgyLGgye2ZvbnQtc2l6ZToyNHB4fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NTc2cHgpey5oMixoMntmb250LXNpemU6Y2FsYygxMi45MjMwOHB4ICsgMS45MjMwOHZ3KX19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo5OTJweCl7LmgyLGgye2ZvbnQtc2l6ZTozMnB4fX0uaDMsLmlvYmplY3RfX2hlYWRpbmcsaDN7Zm9udC1zaXplOjIxLjZweH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjU3NnB4KXsuaDMsLmlvYmplY3RfX2hlYWRpbmcsaDN7Zm9udC1zaXplOmNhbGMoMTIuNzM4NDZweCArIDEuNTM4NDZ2dyl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTkycHgpey5oMywuaW9iamVjdF9faGVhZGluZyxoM3tmb250LXNpemU6MjhweH19Lmg0LGg0e2ZvbnQtc2l6ZToyMHB4fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NTc2cHgpey5oNCxoNHtmb250LXNpemU6Y2FsYygxNC40NjE1NHB4ICsgLjk2MTU0dncpfX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk5MnB4KXsuaDQsaDR7Zm9udC1zaXplOjI0cHh9fS5oNSxoNXtmb250LXNpemU6MThweH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjU3NnB4KXsuaDUsaDV7Zm9udC1zaXplOmNhbGMoMTUuMjMwNzdweCArIC40ODA3N3Z3KX19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo5OTJweCl7Lmg1LGg1e2ZvbnQtc2l6ZToyMHB4fX0uYXJ0aWNsZS1ib2R5IHVsOm5vdChbY2xhc3NdKSwuYXJ0aWNsZV9fYm9keSB1bDpub3QoW2NsYXNzXSksLnBhZ2UtYm9keSB1bDpub3QoW2NsYXNzXSksLnBhZ2VfX2JvZHkgdWw6bm90KFtjbGFzc10pLHVsLmxpc3QtLXNpbXBsZSx1bC5saXN0LS11bHtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luLWJvdHRvbTozMHB4O3BhZGRpbmctbGVmdDoxLjI1ZW19LmFydGljbGUtYm9keSB1bDpub3QoW2NsYXNzXSk+bGksLmFydGljbGVfX2JvZHkgdWw6bm90KFtjbGFzc10pPmxpLC5wYWdlLWJvZHkgdWw6bm90KFtjbGFzc10pPmxpLC5wYWdlX19ib2R5IHVsOm5vdChbY2xhc3NdKT5saSx1bC5saXN0LS1zaW1wbGU+bGksdWwubGlzdC0tdWw+bGl7bWFyZ2luLWJvdHRvbTouNzVlbTtwb3NpdGlvbjpyZWxhdGl2ZX0uYXJ0aWNsZS1ib2R5IHVsOm5vdChbY2xhc3NdKT5saTpiZWZvcmUsLmFydGljbGVfX2JvZHkgdWw6bm90KFtjbGFzc10pPmxpOmJlZm9yZSwucGFnZS1ib2R5IHVsOm5vdChbY2xhc3NdKT5saTpiZWZvcmUsLnBhZ2VfX2JvZHkgdWw6bm90KFtjbGFzc10pPmxpOmJlZm9yZSx1bC5saXN0LS1zaW1wbGU+bGk6YmVmb3JlLHVsLmxpc3QtLXVsPmxpOmJlZm9yZXtjb2xvcjojZDQwNTExO2NvbnRlbnQ6IlwyMDIyIjtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXdlaWdodDo3MDA7bGVmdDouMjVlbTttYXJnaW4tbGVmdDotMS41ZW07cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MS41ZW19LmFydGljbGUtYm9keSB1bDpub3QoW2NsYXNzXSk+bGkgdWw6bm90KFtjbGFzc10pLC5hcnRpY2xlX19ib2R5IHVsOm5vdChbY2xhc3NdKT5saSB1bDpub3QoW2NsYXNzXSksLnBhZ2UtYm9keSB1bDpub3QoW2NsYXNzXSk+bGkgdWw6bm90KFtjbGFzc10pLC5wYWdlX19ib2R5IHVsOm5vdChbY2xhc3NdKT5saSB1bDpub3QoW2NsYXNzXSksdWwubGlzdC0tc2ltcGxlPmxpIHVsOm5vdChbY2xhc3NdKSx1bC5saXN0LS11bD5saSB1bDpub3QoW2NsYXNzXSl7bWFyZ2luLWJvdHRvbTowO21hcmdpbi10b3A6Ljc1ZW19LmFydGljbGUtYm9keSB1bDpub3QoW2NsYXNzXSk+bGkgdWw6bm90KFtjbGFzc10pPmxpOmJlZm9yZSwuYXJ0aWNsZV9fYm9keSB1bDpub3QoW2NsYXNzXSk+bGkgdWw6bm90KFtjbGFzc10pPmxpOmJlZm9yZSwucGFnZS1ib2R5IHVsOm5vdChbY2xhc3NdKT5saSB1bDpub3QoW2NsYXNzXSk+bGk6YmVmb3JlLC5wYWdlX19ib2R5IHVsOm5vdChbY2xhc3NdKT5saSB1bDpub3QoW2NsYXNzXSk+bGk6YmVmb3JlLHVsLmxpc3QtLXNpbXBsZT5saSB1bDpub3QoW2NsYXNzXSk+bGk6YmVmb3JlLHVsLmxpc3QtLXVsPmxpIHVsOm5vdChbY2xhc3NdKT5saTpiZWZvcmV7Y29udGVudDoiXDIwMTIifS5saXN0LS1jb25kZW5zZWR7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubGlzdC0tY29uZGVuc2VkIGxpe21hcmdpbi1ib3R0b206MCFpbXBvcnRhbnR9Lmxpc3QtLWNoZWNrbWFya3N7bGlzdC1zdHlsZTpub25lO21hcmdpbi1ib3R0b206MzBweDtwYWRkaW5nLWxlZnQ6MS43NWVtfS5saXN0LS1jaGVja21hcmtzPmxpe21hcmdpbi1ib3R0b206Ljc1ZW07cG9zaXRpb246cmVsYXRpdmV9Lmxpc3QtLWNoZWNrbWFya3M+bGk6YmVmb3Jle2NvbG9yOiNkNDA1MTE7Y29udGVudDoiXGYwMGMiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtZmFtaWx5OkZvbnQgQXdlc29tZVwgNyBGcmVlO2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjkwMDtsZWZ0Oi0uMjVlbTttYXJnaW4tbGVmdDotMS41ZW07cG9zaXRpb246YWJzb2x1dGU7dG9wOi4xMjVlbTt3aWR0aDoxLjVlbX0ubGlzdC0taWNvbnMgbGl7ZGlzcGxheTpmbGV4fS5saXN0LS1pY29ucyBsaSAubGlzdC0taWNvbnNfX2ljb257Y29sb3I6IzY2NjtkaXNwbGF5OmJsb2NrO2ZsZXgtYmFzaXM6M2NoO2ZsZXgtc2hyaW5rOjB9Lmxpc3QtLWljb25zIGxpIC5saXN0LS1pY29uc19faWNvbiBpbWd7aGVpZ2h0OjFlbTt3aWR0aDphdXRvfS5saXN0LS1pY29ucyBsaSAubGlzdC0taWNvbnNfX3ZhbHVle2Rpc3BsYXk6YmxvY2s7bGluZS1icmVhazphbnl3aGVyZX0ubGlzdC0taWNvbnMgLmFydGljbGUtYm9keSwucGFnZS1ib2R5IC5saXN0LS1pY29uc3ttYXJnaW4tYm90dG9tOjMwcHg7bWFyZ2luLXRvcDoxNXB4fS5saXN0LS1pY29ucyAuYXJ0aWNsZS1ib2R5OmZpcnN0LWNoaWxkLC5wYWdlLWJvZHkgLmxpc3QtLWljb25zOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0ubGlzdC0taWNvbnMgLmFydGljbGUtYm9keTpsYXN0LWNoaWxkLC5wYWdlLWJvZHkgLmxpc3QtLWljb25zOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5saXN0LS1pY29ucyAuYXJ0aWNsZS1ib2R5IGxpLC5wYWdlLWJvZHkgLmxpc3QtLWljb25zIGxpe21hcmdpbi1ib3R0b206MWVtfS5saXN0LS1pY29ucyAuYXJ0aWNsZS1ib2R5IGxpIC5saXN0LS1pY29uc19faWNvbiwucGFnZS1ib2R5IC5saXN0LS1pY29ucyBsaSAubGlzdC0taWNvbnNfX2ljb257ZmxleC1iYXNpczo0Y2h9Lmxpc3QtLWljb25zIC5hcnRpY2xlLWJvZHkgbGkgLmxpc3QtLWljb25zX19pY29uIGltZywucGFnZS1ib2R5IC5saXN0LS1pY29ucyBsaSAubGlzdC0taWNvbnNfX2ljb24gaW1ne2hlaWdodDoxLjVlbX0uYXJ0aWNsZS1ib2R5LC5wYWdlLWJvZHkgLmxpc3QtLXNvY2lhbC1pY29uc3tmb250LXNpemU6MnJlbX0uYXJ0aWNsZS1ib2R5IGEsLnBhZ2UtYm9keSAubGlzdC0tc29jaWFsLWljb25zIGF7ZGlzcGxheTppbmxpbmUtYmxvY2s7dHJhbnNpdGlvbjphbGwgLjVzfS5hcnRpY2xlLWJvZHkgYTpob3ZlciwucGFnZS1ib2R5IC5saXN0LS1zb2NpYWwtaWNvbnMgYTpob3Zlcnt0cmFuc2Zvcm06c2NhbGUoMS4yNSk7dHJhbnNpdGlvbjphbGwgLjJzfS5saXN0LS10YWdze2ZsZXgtZ2FwOjAuNWVtO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6LjVlbTtsaXN0LXN0eWxlLXR5cGU6bm9uZTttYXJnaW46MCAwIDFyZW07cGFkZGluZzowfS5saXN0LS10YWdzPmxpe3BhZGRpbmc6MH0uYm9keXtwb3NpdGlvbjpyZWxhdGl2ZX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7Lmhhcy1uYXYtc2VjdGlvbiAuYm9keXtncmlkLWdhcDoxNXB4O2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWFyZWFzOiJzaWRlYmFyIG1haW5ib2R5IjtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjMwcHggMWZyfS5oYXMtbmF2LXNlY3Rpb24gLmJvZHkgLm5hdi1zZWN0aW9ue2JvcmRlci1yaWdodDoxcHggc29saWQgI2U1ZTVlNTtncmlkLWFyZWE6c2lkZWJhcjtwYWRkaW5nLXJpZ2h0OjE1cHh9Lmhhcy1uYXYtc2VjdGlvbiAuYm9keSAuY29udGVudC1tYWlue2dyaWQtYXJlYTptYWluYm9keX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5oYXMtbmF2LXNlY3Rpb24gLmJvZHkgLm5hdi1zZWN0aW9ue2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlNWU1ZTU7bWFyZ2luLWJvdHRvbToxNXB4O3BhZGRpbmctYm90dG9tOjE1cHh9fXNlY3Rpb257cGFkZGluZzozMHB4IDB9c2VjdGlvbiAuc2VjdGlvbl9fdGl0bGV7bWFyZ2luLWJvdHRvbTozMHB4O3RleHQtYWxpZ246Y2VudGVyfXNlY3Rpb24gLnNlY3Rpb25fX3RpdGxlIGVte2ZvbnQtc2l6ZTouNjVlbX0uc2VjdGlvbi0taGVhZGluZy1zbGlkZXIrc2VjdGlvbntwYWRkaW5nLXRvcDo2MHB4fS5iZy0tZ3JheSxmb290ZXIuZm9vdGVye2JhY2tncm91bmQtY29sb3I6I2YyZjJmMn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXYsLmdyaWQtbGF5b3V0e2Rpc3BsYXk6Z3JpZDtncmlkLWF1dG8tcm93czptYXgtY29udGVudDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSAzMHB4IG1pbm1heCgwLDEzNDBweCkgMzBweCBtaW5tYXgoMCwxZnIpfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj46Zmlyc3QtY2hpbGQsLmdyaWQtbGF5b3V0PjpmaXJzdC1jaGlsZHstbXMtZ3JpZC1yb3c6MX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyKSwuZ3JpZC1sYXlvdXQ+Om50aC1jaGlsZCgyKXstbXMtZ3JpZC1yb3c6Mn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzKSwuZ3JpZC1sYXlvdXQ+Om50aC1jaGlsZCgzKXstbXMtZ3JpZC1yb3c6M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0KSwuZ3JpZC1sYXlvdXQ+Om50aC1jaGlsZCg0KXstbXMtZ3JpZC1yb3c6NH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1KSwuZ3JpZC1sYXlvdXQ+Om50aC1jaGlsZCg1KXstbXMtZ3JpZC1yb3c6NX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2KSwuZ3JpZC1sYXlvdXQ+Om50aC1jaGlsZCg2KXstbXMtZ3JpZC1yb3c6Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3KSwuZ3JpZC1sYXlvdXQ+Om50aC1jaGlsZCg3KXstbXMtZ3JpZC1yb3c6N30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4KSwuZ3JpZC1sYXlvdXQ+Om50aC1jaGlsZCg4KXstbXMtZ3JpZC1yb3c6OH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5KSwuZ3JpZC1sYXlvdXQ+Om50aC1jaGlsZCg5KXstbXMtZ3JpZC1yb3c6OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxMCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTApey1tcy1ncmlkLXJvdzoxMH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxMSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTEpey1tcy1ncmlkLXJvdzoxMX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxMiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTIpey1tcy1ncmlkLXJvdzoxMn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxMyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTMpey1tcy1ncmlkLXJvdzoxM30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxNCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTQpey1tcy1ncmlkLXJvdzoxNH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxNSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTUpey1tcy1ncmlkLXJvdzoxNX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxNiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTYpey1tcy1ncmlkLXJvdzoxNn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxNyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTcpey1tcy1ncmlkLXJvdzoxN30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxOCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTgpey1tcy1ncmlkLXJvdzoxOH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxOSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMTkpey1tcy1ncmlkLXJvdzoxOX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyMCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjApey1tcy1ncmlkLXJvdzoyMH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyMSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjEpey1tcy1ncmlkLXJvdzoyMX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyMiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjIpey1tcy1ncmlkLXJvdzoyMn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyMyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjMpey1tcy1ncmlkLXJvdzoyM30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyNCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjQpey1tcy1ncmlkLXJvdzoyNH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyNSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjUpey1tcy1ncmlkLXJvdzoyNX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyNiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjYpey1tcy1ncmlkLXJvdzoyNn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyNyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjcpey1tcy1ncmlkLXJvdzoyN30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyOCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjgpey1tcy1ncmlkLXJvdzoyOH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgyOSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMjkpey1tcy1ncmlkLXJvdzoyOX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzMCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzApey1tcy1ncmlkLXJvdzozMH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzMSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzEpey1tcy1ncmlkLXJvdzozMX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzMiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzIpey1tcy1ncmlkLXJvdzozMn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzMyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzMpey1tcy1ncmlkLXJvdzozM30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzNCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzQpey1tcy1ncmlkLXJvdzozNH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzNSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzUpey1tcy1ncmlkLXJvdzozNX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzNiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzYpey1tcy1ncmlkLXJvdzozNn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzNyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzcpey1tcy1ncmlkLXJvdzozN30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzOCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzgpey1tcy1ncmlkLXJvdzozOH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgzOSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoMzkpey1tcy1ncmlkLXJvdzozOX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0MCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDApey1tcy1ncmlkLXJvdzo0MH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0MSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDEpey1tcy1ncmlkLXJvdzo0MX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0MiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDIpey1tcy1ncmlkLXJvdzo0Mn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0MyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDMpey1tcy1ncmlkLXJvdzo0M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0NCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDQpey1tcy1ncmlkLXJvdzo0NH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0NSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDUpey1tcy1ncmlkLXJvdzo0NX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0NiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDYpey1tcy1ncmlkLXJvdzo0Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0NyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDcpey1tcy1ncmlkLXJvdzo0N30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0OCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDgpey1tcy1ncmlkLXJvdzo0OH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg0OSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNDkpey1tcy1ncmlkLXJvdzo0OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1MCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTApey1tcy1ncmlkLXJvdzo1MH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1MSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTEpey1tcy1ncmlkLXJvdzo1MX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1MiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTIpey1tcy1ncmlkLXJvdzo1Mn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1MyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTMpey1tcy1ncmlkLXJvdzo1M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1NCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTQpey1tcy1ncmlkLXJvdzo1NH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1NSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTUpey1tcy1ncmlkLXJvdzo1NX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1NiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTYpey1tcy1ncmlkLXJvdzo1Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1NyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTcpey1tcy1ncmlkLXJvdzo1N30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1OCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTgpey1tcy1ncmlkLXJvdzo1OH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg1OSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNTkpey1tcy1ncmlkLXJvdzo1OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2MCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjApey1tcy1ncmlkLXJvdzo2MH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2MSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjEpey1tcy1ncmlkLXJvdzo2MX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2MiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjIpey1tcy1ncmlkLXJvdzo2Mn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2MyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjMpey1tcy1ncmlkLXJvdzo2M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2NCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjQpey1tcy1ncmlkLXJvdzo2NH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2NSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjUpey1tcy1ncmlkLXJvdzo2NX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2NiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjYpey1tcy1ncmlkLXJvdzo2Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2NyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjcpey1tcy1ncmlkLXJvdzo2N30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2OCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjgpey1tcy1ncmlkLXJvdzo2OH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg2OSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNjkpey1tcy1ncmlkLXJvdzo2OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3MCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzApey1tcy1ncmlkLXJvdzo3MH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3MSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzEpey1tcy1ncmlkLXJvdzo3MX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3MiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzIpey1tcy1ncmlkLXJvdzo3Mn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3MyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzMpey1tcy1ncmlkLXJvdzo3M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3NCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzQpey1tcy1ncmlkLXJvdzo3NH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3NSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzUpey1tcy1ncmlkLXJvdzo3NX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3NiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzYpey1tcy1ncmlkLXJvdzo3Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3NyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzcpey1tcy1ncmlkLXJvdzo3N30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3OCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzgpey1tcy1ncmlkLXJvdzo3OH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg3OSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoNzkpey1tcy1ncmlkLXJvdzo3OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4MCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODApey1tcy1ncmlkLXJvdzo4MH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4MSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODEpey1tcy1ncmlkLXJvdzo4MX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4MiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODIpey1tcy1ncmlkLXJvdzo4Mn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4MyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODMpey1tcy1ncmlkLXJvdzo4M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4NCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODQpey1tcy1ncmlkLXJvdzo4NH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4NSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODUpey1tcy1ncmlkLXJvdzo4NX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4NiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODYpey1tcy1ncmlkLXJvdzo4Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4NyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODcpey1tcy1ncmlkLXJvdzo4N30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4OCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODgpey1tcy1ncmlkLXJvdzo4OH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg4OSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoODkpey1tcy1ncmlkLXJvdzo4OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5MCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTApey1tcy1ncmlkLXJvdzo5MH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5MSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTEpey1tcy1ncmlkLXJvdzo5MX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5MiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTIpey1tcy1ncmlkLXJvdzo5Mn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5MyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTMpey1tcy1ncmlkLXJvdzo5M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5NCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTQpey1tcy1ncmlkLXJvdzo5NH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5NSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTUpey1tcy1ncmlkLXJvdzo5NX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5NiksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTYpey1tcy1ncmlkLXJvdzo5Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5NyksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTcpey1tcy1ncmlkLXJvdzo5N30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5OCksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTgpey1tcy1ncmlkLXJvdzo5OH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCg5OSksLmdyaWQtbGF5b3V0PjpudGgtY2hpbGQoOTkpey1tcy1ncmlkLXJvdzo5OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+Om50aC1jaGlsZCgxMDApLC5ncmlkLWxheW91dD46bnRoLWNoaWxkKDEwMCl7LW1zLWdyaWQtcm93OjEwMH1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCkgYW5kIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdiwuZ3JpZC1sYXlvdXR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgMTVweCBtaW5tYXgoMCwxMzcwcHgpIDE1cHggbWlubWF4KDAsMWZyKX19QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpey5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdiwuZ3JpZC1sYXlvdXR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgMTVweCBtaW5tYXgoMCwxMzQwcHgpIDE1cHggbWlubWF4KDAsMWZyKX19LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2IC53aWR0aC0tZnVsbCwuZ3JpZC1sYXlvdXQgLndpZHRoLS1mdWxse2dyaWQtY29sdW1uOjEvNn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXYgLndpZHRoLS1wYWdlLC5ncmlkLWxheW91dCAud2lkdGgtLXBhZ2V7Z3JpZC1jb2x1bW46Mi81IWltcG9ydGFudH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXYgLndpZHRoLS1jb250ZW50LC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj4qLC5ncmlkLWxheW91dCAud2lkdGgtLWNvbnRlbnQsLmdyaWQtbGF5b3V0Pip7Z3JpZC1jb2x1bW46My80fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlLC5ncmlkLWxheW91dD5hcnRpY2xle2dyaWQtY29sdW1uOjEvNn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5LC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5LC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keXtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgbWlubWF4KDAsNzAwcHgpIG1pbm1heCgwLDFmcil9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46Zmlyc3QtY2hpbGQsLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpmaXJzdC1jaGlsZCwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpmaXJzdC1jaGlsZCwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+OmZpcnN0LWNoaWxkey1tcy1ncmlkLXJvdzoxfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgyKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgyKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMiksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMil7LW1zLWdyaWQtcm93OjJ9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDMpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDMpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgzKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgzKXstbXMtZ3JpZC1yb3c6M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDQpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDQpey1tcy1ncmlkLXJvdzo0fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg1KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg1KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNSl7LW1zLWdyaWQtcm93OjV9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDYpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDYpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg2KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg2KXstbXMtZ3JpZC1yb3c6Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNyksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNyksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDcpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDcpey1tcy1ncmlkLXJvdzo3fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg4KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg4KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoOCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoOCl7LW1zLWdyaWQtcm93Ojh9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDkpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDkpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg5KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg5KXstbXMtZ3JpZC1yb3c6OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMTApLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDEwKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMTApLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDEwKXstbXMtZ3JpZC1yb3c6MTB9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDExKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgxMSksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDExKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgxMSl7LW1zLWdyaWQtcm93OjExfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgxMiksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMTIpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgxMiksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMTIpey1tcy1ncmlkLXJvdzoxMn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMTMpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDEzKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMTMpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDEzKXstbXMtZ3JpZC1yb3c6MTN9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDE0KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgxNCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDE0KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgxNCl7LW1zLWdyaWQtcm93OjE0fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgxNSksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMTUpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgxNSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMTUpey1tcy1ncmlkLXJvdzoxNX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMTYpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDE2KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMTYpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDE2KXstbXMtZ3JpZC1yb3c6MTZ9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDE3KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgxNyksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDE3KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgxNyl7LW1zLWdyaWQtcm93OjE3fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgxOCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMTgpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgxOCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMTgpey1tcy1ncmlkLXJvdzoxOH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMTkpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDE5KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMTkpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDE5KXstbXMtZ3JpZC1yb3c6MTl9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDIwKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgyMCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDIwKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgyMCl7LW1zLWdyaWQtcm93OjIwfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgyMSksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMjEpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgyMSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMjEpey1tcy1ncmlkLXJvdzoyMX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMjIpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDIyKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMjIpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDIyKXstbXMtZ3JpZC1yb3c6MjJ9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDIzKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgyMyksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDIzKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgyMyl7LW1zLWdyaWQtcm93OjIzfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgyNCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMjQpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgyNCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMjQpey1tcy1ncmlkLXJvdzoyNH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMjUpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDI1KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMjUpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDI1KXstbXMtZ3JpZC1yb3c6MjV9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDI2KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgyNiksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDI2KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgyNil7LW1zLWdyaWQtcm93OjI2fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgyNyksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMjcpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgyNyksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMjcpey1tcy1ncmlkLXJvdzoyN30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMjgpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDI4KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMjgpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDI4KXstbXMtZ3JpZC1yb3c6Mjh9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDI5KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgyOSksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDI5KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgyOSl7LW1zLWdyaWQtcm93OjI5fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgzMCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMzApLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgzMCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMzApey1tcy1ncmlkLXJvdzozMH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMzEpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDMxKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMzEpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDMxKXstbXMtZ3JpZC1yb3c6MzF9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDMyKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgzMiksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDMyKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgzMil7LW1zLWdyaWQtcm93OjMyfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgzMyksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMzMpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgzMyksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMzMpey1tcy1ncmlkLXJvdzozM30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMzQpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDM0KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMzQpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDM0KXstbXMtZ3JpZC1yb3c6MzR9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDM1KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgzNSksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDM1KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgzNSl7LW1zLWdyaWQtcm93OjM1fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgzNiksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMzYpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgzNiksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMzYpey1tcy1ncmlkLXJvdzozNn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMzcpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDM3KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMzcpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDM3KXstbXMtZ3JpZC1yb3c6Mzd9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDM4KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgzOCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDM4KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgzOCl7LW1zLWdyaWQtcm93OjM4fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgzOSksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMzkpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgzOSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoMzkpey1tcy1ncmlkLXJvdzozOX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNDApLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDQwKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNDApLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDQwKXstbXMtZ3JpZC1yb3c6NDB9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDQxKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg0MSksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDQxKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg0MSl7LW1zLWdyaWQtcm93OjQxfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg0MiksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNDIpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg0MiksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNDIpey1tcy1ncmlkLXJvdzo0Mn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNDMpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDQzKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNDMpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDQzKXstbXMtZ3JpZC1yb3c6NDN9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDQ0KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg0NCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDQ0KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg0NCl7LW1zLWdyaWQtcm93OjQ0fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg0NSksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNDUpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg0NSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNDUpey1tcy1ncmlkLXJvdzo0NX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNDYpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDQ2KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNDYpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDQ2KXstbXMtZ3JpZC1yb3c6NDZ9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDQ3KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg0NyksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDQ3KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg0Nyl7LW1zLWdyaWQtcm93OjQ3fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg0OCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNDgpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg0OCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNDgpey1tcy1ncmlkLXJvdzo0OH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNDkpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDQ5KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNDkpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDQ5KXstbXMtZ3JpZC1yb3c6NDl9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDUwKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg1MCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDUwKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg1MCl7LW1zLWdyaWQtcm93OjUwfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg1MSksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNTEpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg1MSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNTEpey1tcy1ncmlkLXJvdzo1MX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNTIpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDUyKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNTIpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDUyKXstbXMtZ3JpZC1yb3c6NTJ9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDUzKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg1MyksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDUzKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg1Myl7LW1zLWdyaWQtcm93OjUzfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg1NCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNTQpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg1NCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNTQpey1tcy1ncmlkLXJvdzo1NH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNTUpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDU1KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNTUpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDU1KXstbXMtZ3JpZC1yb3c6NTV9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDU2KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg1NiksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDU2KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg1Nil7LW1zLWdyaWQtcm93OjU2fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg1NyksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNTcpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg1NyksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNTcpey1tcy1ncmlkLXJvdzo1N30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNTgpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDU4KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNTgpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDU4KXstbXMtZ3JpZC1yb3c6NTh9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDU5KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg1OSksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDU5KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg1OSl7LW1zLWdyaWQtcm93OjU5fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg2MCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNjApLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg2MCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNjApey1tcy1ncmlkLXJvdzo2MH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNjEpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDYxKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNjEpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDYxKXstbXMtZ3JpZC1yb3c6NjF9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDYyKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg2MiksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDYyKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg2Mil7LW1zLWdyaWQtcm93OjYyfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg2MyksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNjMpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg2MyksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNjMpey1tcy1ncmlkLXJvdzo2M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNjQpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDY0KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNjQpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDY0KXstbXMtZ3JpZC1yb3c6NjR9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDY1KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg2NSksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDY1KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg2NSl7LW1zLWdyaWQtcm93OjY1fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg2NiksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNjYpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg2NiksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNjYpey1tcy1ncmlkLXJvdzo2Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNjcpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDY3KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNjcpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDY3KXstbXMtZ3JpZC1yb3c6Njd9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDY4KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg2OCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDY4KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg2OCl7LW1zLWdyaWQtcm93OjY4fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg2OSksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNjkpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg2OSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNjkpey1tcy1ncmlkLXJvdzo2OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNzApLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDcwKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNzApLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDcwKXstbXMtZ3JpZC1yb3c6NzB9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDcxKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg3MSksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDcxKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg3MSl7LW1zLWdyaWQtcm93OjcxfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg3MiksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNzIpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg3MiksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNzIpey1tcy1ncmlkLXJvdzo3Mn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNzMpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDczKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNzMpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDczKXstbXMtZ3JpZC1yb3c6NzN9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDc0KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg3NCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDc0KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg3NCl7LW1zLWdyaWQtcm93Ojc0fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg3NSksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNzUpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg3NSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNzUpey1tcy1ncmlkLXJvdzo3NX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNzYpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDc2KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNzYpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDc2KXstbXMtZ3JpZC1yb3c6NzZ9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDc3KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg3NyksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDc3KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg3Nyl7LW1zLWdyaWQtcm93Ojc3fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg3OCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNzgpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg3OCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoNzgpey1tcy1ncmlkLXJvdzo3OH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNzkpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDc5KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoNzkpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDc5KXstbXMtZ3JpZC1yb3c6Nzl9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDgwKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg4MCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDgwKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg4MCl7LW1zLWdyaWQtcm93OjgwfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg4MSksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoODEpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg4MSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoODEpey1tcy1ncmlkLXJvdzo4MX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoODIpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDgyKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoODIpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDgyKXstbXMtZ3JpZC1yb3c6ODJ9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDgzKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg4MyksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDgzKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg4Myl7LW1zLWdyaWQtcm93OjgzfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg4NCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoODQpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg4NCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoODQpey1tcy1ncmlkLXJvdzo4NH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoODUpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDg1KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoODUpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDg1KXstbXMtZ3JpZC1yb3c6ODV9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDg2KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg4NiksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDg2KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg4Nil7LW1zLWdyaWQtcm93Ojg2fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg4NyksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoODcpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg4NyksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoODcpey1tcy1ncmlkLXJvdzo4N30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoODgpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDg4KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoODgpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDg4KXstbXMtZ3JpZC1yb3c6ODh9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDg5KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg4OSksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDg5KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg4OSl7LW1zLWdyaWQtcm93Ojg5fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg5MCksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoOTApLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg5MCksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoOTApey1tcy1ncmlkLXJvdzo5MH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoOTEpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDkxKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoOTEpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDkxKXstbXMtZ3JpZC1yb3c6OTF9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDkyKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg5MiksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDkyKSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg5Mil7LW1zLWdyaWQtcm93OjkyfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg5MyksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoOTMpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg5MyksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoOTMpey1tcy1ncmlkLXJvdzo5M30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoOTQpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDk0KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoOTQpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDk0KXstbXMtZ3JpZC1yb3c6OTR9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDk1KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg5NSksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDk1KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg5NSl7LW1zLWdyaWQtcm93Ojk1fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg5NiksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoOTYpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg5NiksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoOTYpey1tcy1ncmlkLXJvdzo5Nn0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoOTcpLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDk3KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoOTcpLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDk3KXstbXMtZ3JpZC1yb3c6OTd9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDk4KSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg5OCksLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT46bnRoLWNoaWxkKDk4KSwuZ3JpZC1sYXlvdXQ+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCg5OCl7LW1zLWdyaWQtcm93Ojk4fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg5OSksLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoOTkpLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCg5OSksLmdyaWQtbGF5b3V0PmFydGljbGUgLnh4cGFnZS1ib2R5PjpudGgtY2hpbGQoOTkpey1tcy1ncmlkLXJvdzo5OX0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PjpudGgtY2hpbGQoMTAwKSwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+Om50aC1jaGlsZCgxMDApLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+Om50aC1jaGlsZCgxMDApLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT46bnRoLWNoaWxkKDEwMCl7LW1zLWdyaWQtcm93OjEwMH0uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5PiosLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2PmFydGljbGUgLnh4cGFnZS1ib2R5PiosLmdyaWQtbGF5b3V0PmFydGljbGUgLmFydGljbGUtYm9keT4qLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT4qe2dyaWQtY29sdW1uOjIvM30uY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5Pi53aWR0aC0tZnVsbCwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+YXJ0aWNsZSAueHhwYWdlLWJvZHk+LndpZHRoLS1mdWxsLC5ncmlkLWxheW91dD5hcnRpY2xlIC5hcnRpY2xlLWJvZHk+LndpZHRoLS1mdWxsLC5ncmlkLWxheW91dD5hcnRpY2xlIC54eHBhZ2UtYm9keT4ud2lkdGgtLWZ1bGx7Z3JpZC1jb2x1bW46MS80fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdj4uc2VjdGlvbi0tYmFubmVycywuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY+LnNlY3Rpb24tLXNsaWRlciwuZ3JpZC1sYXlvdXQ+LnNlY3Rpb24tLWJhbm5lcnMsLmdyaWQtbGF5b3V0Pi5zZWN0aW9uLS1zbGlkZXJ7Z3JpZC1jb2x1bW46Mi81IWltcG9ydGFudH1AbWVkaWEgKG1pbi13aWR0aDo2MDBweCl7LnNob3ctcGhvbmUtb25seXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX1AbWVkaWEgKG1heC13aWR0aDo1OTlweCl7LmhpZGUtcGhvbmUtb25seXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX1ib2R5e2FsaWduLWl0ZW1zOnN0cmV0Y2g7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4taGVpZ2h0OjEwMHZofUBzdXBwb3J0cyAobWluLWhlaWdodDoxMDBkdmgpe2JvZHl7bWluLWhlaWdodDoxMDBkdmh9fWJvZHk+KntmbGV4LWdyb3c6MDt3aWR0aDoxMDAlfWJvZHk+LmJvZHl7ZmxleC1ncm93OjEwMH1ib2R5W2RhdGEtY29udHJvbGxlcj1hcnRpY2xlc106bm90KFtkYXRhLWFjdGlvbio9ZXJyb3JdKSAuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY6bm90KC5mb290ZXIpPiosYm9keVtkYXRhLWNvbnRyb2xsZXI9YXJ0aWNsZXNdOm5vdChbZGF0YS1hY3Rpb24qPWVycm9yXSkgLmdyaWQtbGF5b3V0Om5vdCguZm9vdGVyKT4qLGJvZHlbZGF0YS1uYW1lc3BhY2U9YmxvZ106bm90KFtkYXRhLWFjdGlvbio9ZXJyb3JdKSAuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXY6bm90KC5mb290ZXIpPiosYm9keVtkYXRhLW5hbWVzcGFjZT1ibG9nXTpub3QoW2RhdGEtYWN0aW9uKj1lcnJvcl0pIC5ncmlkLWxheW91dDpub3QoLmZvb3Rlcik+KntncmlkLWNvbHVtbjoyLzUhaW1wb3J0YW50fWJvZHlbZGF0YS1jb250cm9sbGVyPWFydGljbGVzXTpub3QoW2RhdGEtYWN0aW9uKj1lcnJvcl0pIC5icmVhZGNydW1iLXdyYXBwZXIsYm9keVtkYXRhLW5hbWVzcGFjZT1ibG9nXTpub3QoW2RhdGEtYWN0aW9uKj1lcnJvcl0pIC5icmVhZGNydW1iLXdyYXBwZXJ7bWFyZ2luLWxlZnQ6MTVweDttYXJnaW4tcmlnaHQ6MTVweDttYXJnaW4tdG9wOi0zMHB4fWJvZHkuYm9keV9wYWdlc19kZXRhaWwgYXJ0aWNsZT4ucGFnZS1ib2R5OmZpcnN0LWNoaWxke3BhZGRpbmctdG9wOjB9LmZsYXNoX21lc3NhZ2Vze2hlaWdodDowO2xlZnQ6MDtwb3NpdGlvbjpmaXhlZDt0b3A6LTFweDt3aWR0aDoxMDAlO3otaW5kZXg6MTA3MH0uZmxhc2hfbWVzc2FnZXMgLmFsZXJ0e2FuaW1hdGlvbi1kZWxheTowcyw1czthbmltYXRpb24tZHVyYXRpb246LjVzLC41czthbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO2FuaW1hdGlvbi1uYW1lOmZsYXNoTXNnU2xpZGVJbkRvd24sZmxhc2hNc2dzbGlkZU91dFVwO2JveC1zaGFkb3c6MCA5cHggMzVweCAwIHJnYmEoMCwwLDAsLjUpO21hcmdpbjoxcmVtIGF1dG8gMDttYXgtd2lkdGg6OTAwcHg7d2lkdGg6OTAlfUBrZXlmcmFtZXMgZmxhc2hNc2dTbGlkZUluRG93bnswJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjAwJSwwKTt2aXNpYmlsaXR5OnZpc2libGV9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgZmxhc2hNc2dzbGlkZU91dFVwezAle3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMDAlLDApO3Zpc2liaWxpdHk6aGlkZGVufX0uYWxlcnR7Y29sb3I6I2ZmZjtmb250LXNpemU6MS4xcmVtfS5hbGVydCBhe2NvbG9yOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0uYWxlcnQtbGlnaHQsLmFsZXJ0LXdhcm5pbmd7Y29sb3I6cmdiYSgwLDAsMCwuOSl9LmFkbWluLW9iamVjdC1tZW51e2hlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7ei1pbmRleDo5OX0uYWRtaW4tb2JqZWN0LW1lbnVfX3dyYXBwZXJ7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6LTM1cHh9LmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIC5idG4sLmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIC5idG4tZ3JvdXAsLmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sLmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLC5hZG1pbi1vYmplY3QtbWVudV9fd3JhcHBlciBib2R5PiNvdC1zZGstYnRuLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIGJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5hZG1pbi1vYmplY3QtbWVudV9fd3JhcHBlciBidXR0b24ubWt0b0J1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC44NSl9LmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIC5idG4tZ3JvdXA6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSwuYWRtaW4tb2JqZWN0LW1lbnVfX3dyYXBwZXIgLmJ0bi1ncm91cDpob3ZlciwuYWRtaW4tb2JqZWN0LW1lbnVfX3dyYXBwZXIgLmJ0bjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpLC5hZG1pbi1vYmplY3QtbWVudV9fd3JhcHBlciAuYnRuOmhvdmVyLC5hZG1pbi1vYmplY3QtbWVudV9fd3JhcHBlciAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSksLmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b246aG92ZXIsLmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSksLmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOmhvdmVyLC5hZG1pbi1vYmplY3QtbWVudV9fd3JhcHBlciBib2R5PiNvdC1zZGstYnRuOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSksLmFkbWluLW9iamVjdC1tZW51X193cmFwcGVyIGJvZHk+I290LXNkay1idG46aG92ZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYWRtaW4tb2JqZWN0LW1lbnVfX3dyYXBwZXIgYnV0dG9uLm1rdG9CdXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5hZG1pbi1vYmplY3QtbWVudV9fd3JhcHBlciBidXR0b24ubWt0b0J1dHRvbjpob3Zlcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYWRtaW4tb2JqZWN0LW1lbnVfX3dyYXBwZXIgYnV0dG9uLm1rdG9CdXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuYWRtaW4tb2JqZWN0LW1lbnVfX3dyYXBwZXIgYnV0dG9uLm1rdG9CdXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDAwfS5hZG1pbi1vYmplY3QtbWVudSsuYWRtaW4tb2JqZWN0LW1lbnV7ei1pbmRleDo5OH0uYWRtaW4tb2JqZWN0LW1lbnUrLmFkbWluLW9iamVjdC1tZW51IC5hZG1pbi1vYmplY3QtbWVudV9fd3JhcHBlcnt0b3A6MH0uYWRtaW4tb2JqZWN0LW1lbnUgLmJ0bi1vdXRsaW5lLXByaW1hcnl7Y29sb3I6I2Q0MDUxMX1oMXttYXJnaW4tYm90dG9tOjJyZW19LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIGFydGljbGV7bWFyZ2luLWJvdHRvbTo2MHB4fS5ib2R5X2FydGljbGVzX2RldGFpbCAucGFnZXJ7Ym9yZGVyLXRvcDoxcHggc29saWQgI2U1ZTVlNTttYXJnaW46MDtwYWRkaW5nLXRvcDozMHB4fXByZXtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWI7cGFkZGluZzouNXJlbX1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmFydGljbGUtdGlsZXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwfX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGV7YmFja2dyb3VuZC1jb2xvcjojZTVlNWU1O2Rpc3BsYXk6YmxvY2s7b3V0bGluZToxMHB4IHNvbGlkICNmZmY7cG9zaXRpb246cmVsYXRpdmV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlIC5hcnRpY2xlX190aHVtYm5haWx7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctYm90dG9tOjEyMCU7cG9zaXRpb246cmVsYXRpdmV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlIC5hcnRpY2xlX190aHVtYm5haWwgLmFydGljbGVfX3RodW1ibmFpbF9faW1hZ2V7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7dHJhbnNpdGlvbjphbGwgMXM7d2lkdGg6MTAwJX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGUgLmFydGljbGVfX3RleHR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDIxMiw1LDE3LC45KTtib3R0b206MDtjb2xvcjojZmZmO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47bGVmdDowO21pbi1oZWlnaHQ6NDAlO3BhZGRpbmc6MTVweCAyNXB4IDI1cHg7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGUgLmFydGljbGVfX3RleHQgLmFydGljbGVfX3RleHRfX3RpdGxlLmlvYmplY3RfX2hlYWRpbmcsLmFydGljbGUtdGlsZXMgYS5hcnRpY2xlIC5hcnRpY2xlX190ZXh0IGgyLmFydGljbGVfX3RleHRfX3RpdGxlLC5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZSAuYXJ0aWNsZV9fdGV4dCBoMy5hcnRpY2xlX190ZXh0X190aXRsZXtjb2xvcjppbmhlcml0O2ZvbnQtc2l6ZToxLjEyNXJlbTtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MS4wNTttYXJnaW4tYm90dG9tOjE1cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZSAuYXJ0aWNsZV9fdGV4dCAuYXJ0aWNsZV9fdGV4dF9fZm9vdGVye2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlIC5hcnRpY2xlX190ZXh0IC5hcnRpY2xlX190ZXh0X19mb290ZXIgLmFydGljbGVfX3RleHRfX21ldGF7bWFyZ2luLWJvdHRvbTowfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZSAuYXJ0aWNsZV9fdGV4dF9fbWV0YXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDozMDA7bGluZS1oZWlnaHQ6MX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGUgLmFydGljbGVfX3RleHRfX21ldGEgcHttYXJnaW4tYm90dG9tOi41cmVtfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZSAuYXJ0aWNsZV9fdGV4dF9fcmVhZHRpbWV7bWFyZ2luLWJvdHRvbTowO21hcmdpbi10b3A6LjE1ZW19LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlIC5hcnRpY2xlX190ZXh0X19saW5re2ZvbnQtd2VpZ2h0OjcwMH0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGUgLmFydGljbGVfX3RleHRfX2xpbms+c3BhbntkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tbGVmdDouNWVtfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZSAuYXJ0aWNsZV9fdGFnc3tsZWZ0OjE1cHg7bWF4LXdpZHRoOmNhbGMoMTAwJSAtIDMwcHgpO29wYWNpdHk6Ljc1O3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxNXB4fS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZTpob3ZlciAuYXJ0aWNsZV9fdGh1bWJuYWlsIC5hcnRpY2xlX190aHVtYm5haWxfX2ltYWdle3RyYW5zZm9ybTpzY2FsZSgxLjI1KTt0cmFuc2l0aW9uOmFsbCAuMzNzfUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsuYXJ0aWNsZS10aWxlcyBhLmFydGljbGV7ZmxleC1iYXNpczozMy4zMzMzJX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGUgLmFydGljbGVfX3RleHR7bWluLWhlaWdodDo1MCV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOmZpcnN0LWNoaWxkLC5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZTpudGgtY2hpbGQoMil7ZmxleC1iYXNpczo1MCV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOmZpcnN0LWNoaWxkIC5hcnRpY2xlX190aHVtYm5haWwsLmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgyKSAuYXJ0aWNsZV9fdGh1bWJuYWlse3BhZGRpbmctYm90dG9tOjc1JX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6Zmlyc3QtY2hpbGQgLmFydGljbGVfX3RleHQsLmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgyKSAuYXJ0aWNsZV9fdGV4dHttaW4taGVpZ2h0OjQwJX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZHtmbGV4LWJhc2lzOjEwMCV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQgLmFydGljbGVfX3RodW1ibmFpbHtwYWRkaW5nLWJvdHRvbToyNSV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQgLmFydGljbGVfX3RleHR7bWluLWhlaWdodDo0MCV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQgLmFydGljbGVfX3RleHQgaDIuYXJ0aWNsZV9fdGV4dF9fdGl0bGV7Zm9udC1zaXplOjEuNXJlbX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6bnRoLWNoaWxkKDNuKzMpOmxhc3QtY2hpbGQ6bm90KC5hcnRpY2xlLWl0ZW0tMil7ZmxleC1iYXNpczoxMDAlfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZTpudGgtY2hpbGQoM24rMyk6bGFzdC1jaGlsZDpub3QoLmFydGljbGUtaXRlbS0yKSAuYXJ0aWNsZV9fdGh1bWJuYWlse3BhZGRpbmctYm90dG9tOjI1JX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6bnRoLWNoaWxkKDNuKzMpOmxhc3QtY2hpbGQ6bm90KC5hcnRpY2xlLWl0ZW0tMikgLmFydGljbGVfX3RleHR7bWluLWhlaWdodDo0MCV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgzbiszKTpsYXN0LWNoaWxkOm5vdCguYXJ0aWNsZS1pdGVtLTIpIC5hcnRpY2xlX190ZXh0IGgyLmFydGljbGVfX3RleHRfX3RpdGxle2ZvbnQtc2l6ZToxLjVyZW19LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgzbisxKTpsYXN0LWNoaWxkOm5vdCguYXJ0aWNsZS1pdGVtLTEpe2ZsZXgtYmFzaXM6NjYuNjY2NiV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgzbisxKTpsYXN0LWNoaWxkOm5vdCguYXJ0aWNsZS1pdGVtLTEpIC5hcnRpY2xlX190aHVtYm5haWx7cGFkZGluZy1ib3R0b206NjAlfX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZSAuYXJ0aWNsZV9fdGh1bWJuYWlse3BhZGRpbmctYm90dG9tOjEwMCV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOmZpcnN0LWNoaWxkIC5hcnRpY2xlX190aHVtYm5haWwsLmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgyKSAuYXJ0aWNsZV9fdGh1bWJuYWlse3BhZGRpbmctYm90dG9tOjY2JX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZHtmbGV4LWJhc2lzOjEwMCV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQgLmFydGljbGVfX3RodW1ibmFpbCwuYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6bnRoLWNoaWxkKDNuKzMpOmxhc3QtY2hpbGQ6bm90KC5hcnRpY2xlLWl0ZW0tMikgLmFydGljbGVfX3RodW1ibmFpbHtwYWRkaW5nLWJvdHRvbToyNSV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgzbisxKTpsYXN0LWNoaWxkOm5vdCguYXJ0aWNsZS1pdGVtLTEpIC5hcnRpY2xlX190aHVtYm5haWx7cGFkZGluZy1ib3R0b206NTAlfX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgYW5kIChtYXgtd2lkdGg6OTkxLjk4cHgpey5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZXtmbGV4LWJhc2lzOjUwJX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGUgLmFydGljbGVfX3RodW1ibmFpbHtwYWRkaW5nLWJvdHRvbToxMDAlfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZSAuYXJ0aWNsZV9fdGV4dHttaW4taGVpZ2h0OjUwJX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6Zmlyc3QtY2hpbGQsLmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgybisyKTpsYXN0LWNoaWxke2ZsZXgtYmFzaXM6MTAwJX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6Zmlyc3QtY2hpbGQgLmFydGljbGVfX3RodW1ibmFpbCwuYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6bnRoLWNoaWxkKDJuKzIpOmxhc3QtY2hpbGQgLmFydGljbGVfX3RodW1ibmFpbHtwYWRkaW5nLWJvdHRvbTo1MCV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOmZpcnN0LWNoaWxkIC5hcnRpY2xlX190ZXh0LC5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZTpudGgtY2hpbGQoMm4rMik6bGFzdC1jaGlsZCAuYXJ0aWNsZV9fdGV4dHttaW4taGVpZ2h0OjQwJX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6Zmlyc3QtY2hpbGQgLmFydGljbGVfX3RleHQgaDIuYXJ0aWNsZV9fdGV4dF9fdGl0bGUsLmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgybisyKTpsYXN0LWNoaWxkIC5hcnRpY2xlX190ZXh0IGgyLmFydGljbGVfX3RleHRfX3RpdGxle2ZvbnQtc2l6ZToxLjVyZW19fUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KSBhbmQgKG1heC13aWR0aDo3NjcuOThweCl7LmFydGljbGUtdGlsZXMgYS5hcnRpY2xle2ZsZXgtYmFzaXM6NTAlfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZSAuYXJ0aWNsZV9fdGh1bWJuYWlse3BhZGRpbmctYm90dG9tOjEyMCV9LmFydGljbGUtdGlsZXMgYS5hcnRpY2xlIC5hcnRpY2xlX190ZXh0e21pbi1oZWlnaHQ6NTAlfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZTpmaXJzdC1jaGlsZCwuYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6bnRoLWNoaWxkKDJuKzIpOmxhc3QtY2hpbGR7ZmxleC1iYXNpczoxMDAlfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZTpmaXJzdC1jaGlsZCAuYXJ0aWNsZV9fdGh1bWJuYWlsLC5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZTpudGgtY2hpbGQoMm4rMik6bGFzdC1jaGlsZCAuYXJ0aWNsZV9fdGh1bWJuYWlse3BhZGRpbmctYm90dG9tOjYwJX0uYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6Zmlyc3QtY2hpbGQgLmFydGljbGVfX3RleHQsLmFydGljbGUtdGlsZXMgYS5hcnRpY2xlOm50aC1jaGlsZCgybisyKTpsYXN0LWNoaWxkIC5hcnRpY2xlX190ZXh0e21pbi1oZWlnaHQ6NDAlfS5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZTpmaXJzdC1jaGlsZCAuYXJ0aWNsZV9fdGV4dCBoMi5hcnRpY2xlX190ZXh0X190aXRsZSwuYXJ0aWNsZS10aWxlcyBhLmFydGljbGU6bnRoLWNoaWxkKDJuKzIpOmxhc3QtY2hpbGQgLmFydGljbGVfX3RleHQgaDIuYXJ0aWNsZV9fdGV4dF9fdGl0bGV7Zm9udC1zaXplOjEuNXJlbX19QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpey5hcnRpY2xlLXRpbGVzIGEuYXJ0aWNsZSAuYXJ0aWNsZV9fdGh1bWJuYWlse3BhZGRpbmctYm90dG9tOjEwMCV9fUBtZWRpYSAobWF4LXdpZHRoOjQwMHB4KXsuYXJ0aWNsZS10aWxlcyBhLmFydGljbGUgLmFydGljbGVfX3RodW1ibmFpbHtwYWRkaW5nLWJvdHRvbToxMjAlfX0uYXJ0aWNsZV9fdGFncyAudGFnLWl0ZW0gLmZhc3ttYXJnaW4tcmlnaHQ6LjI1ZW19LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5jb250YWluZXItLWJyZWFkY3J1bWIgb2wuYnJlYWRjcnVtYnttYXJnaW4tYm90dG9tOjB9LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlX19oZWFkZXIgLmFydGljbGVfX2hlYWRlcl9fdGV4dCAuYXJ0aWNsZV9fbWV0YXtjb2xvcjojNjY2O21hcmdpbi1ib3R0b206MH1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlX19oZWFkZXIgLmFydGljbGVfX2hlYWRlcl9fdGV4dCAuYXJ0aWNsZV9fdGl0bGV7Zm9udC1zaXplOjEuNXJlbTttYXJnaW4tYm90dG9tOjE1cHh9fS5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZV9faGVhZGVyLS1pbWFnZXtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOmNvdmVyO3BhZGRpbmctYm90dG9tOjc1JTtwb3NpdGlvbjpyZWxhdGl2ZX0uYm9keV9hcnRpY2xlc19kZXRhaWwgLmFydGljbGVfX2hlYWRlci0taW1hZ2UgLmFydGljbGVfX2hlYWRlcl9fdGV4dHtib3R0b206MDtjb2xvcjojZmZmO2xlZnQ6MDttYXJnaW46MDtwYWRkaW5nOjE1cHg7cG9zaXRpb246YWJzb2x1dGV9LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlX19oZWFkZXItLWltYWdlIC5hcnRpY2xlX19oZWFkZXJfX3RleHQgLmFydGljbGVfX21ldGF7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjY1KSFpbXBvcnRhbnR9QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZV9faGVhZGVyLS1pbWFnZXtwYWRkaW5nLWJvdHRvbToxMDAlfX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlX19oZWFkZXItLWltYWdle2JhY2tncm91bmQtaW1hZ2U6bm9uZTtwYWRkaW5nLWJvdHRvbTowfS5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZV9faGVhZGVyLS1pbWFnZSAuYXJ0aWNsZV9faGVhZGVyX190ZXh0e3Bvc2l0aW9uOnN0YXRpY319LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlX19ib2R5e2ZvbnQtc2l6ZToxLjEyNXJlbX1AbWVkaWEgKG1pbi13aWR0aDoxMDAwcHgpey5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZS13cmFwcGVyLS1jb2x1bW5ze2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWFyZWFzOiJtYWluIC4gc2lkZWJhciI7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAzMHB4IDM1MHB4fS5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZS13cmFwcGVyLS1jb2x1bW5zPmFydGljbGV7Z3JpZC1hcmVhOm1haW59LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlLXdyYXBwZXItLWNvbHVtbnMgLnBhZ2VyLS1yaWNoe2Rpc3BsYXk6YmxvY2s7Z3JpZC1hcmVhOnNpZGViYXJ9LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIC5hcnRpY2xlLXdyYXBwZXItLWNvbHVtbnMgLnBhZ2VyLS1yaWNoIC5wYWdlcl9faXRlbXttYXJnaW46MCAwIDMwcHh9fUBtZWRpYSAobWluLXdpZHRoOjEwMDBweCkgYW5kIChtYXgtd2lkdGg6MTE5OXB4KXsuYm9keV9hcnRpY2xlc19kZXRhaWwgLmFydGljbGVfX2hlYWRlciAuYXJ0aWNsZV9faGVhZGVyX190ZXh0IC5hcnRpY2xlX190aXRsZXtmb250LXNpemU6MS41cmVtfX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5ib2R5X2FydGljbGVzX2RldGFpbCAuYXJ0aWNsZS13cmFwcGVyLS1jb2x1bW5ze2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgNjBweCA0MDBweH19LmFydGljbGUtd3JhcHBlci0tbmFycm93IC5hcnRpY2xlX19oZWFkZXItLWNvbHN7YWxpZ24taXRlbXM6c3RyZXRjaDtiYWNrZ3JvdW5kLWNvbG9yOiNjY2M7ZGlzcGxheTpmbGV4O21hcmdpbi1ib3R0b206MzBweH0uYXJ0aWNsZS13cmFwcGVyLS1uYXJyb3cgLmFydGljbGVfX2hlYWRlci0tY29scyAuYXJ0aWNsZV9faGVhZGVyX19pbWFnZXtmbGV4LWJhc2lzOjUwJTtmbGV4LWdyb3c6MDtwb3NpdGlvbjpyZWxhdGl2ZX0uYXJ0aWNsZS13cmFwcGVyLS1uYXJyb3cgLmFydGljbGVfX2hlYWRlci0tY29scyAuYXJ0aWNsZV9faGVhZGVyX190ZXh0e2NvbG9yOiNmZmY7ZGlzcGxheTpmbGV4O2ZsZXgtYmFzaXM6NTAlO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MzBweH0uYXJ0aWNsZS13cmFwcGVyLS1uYXJyb3cgLmFydGljbGVfX2hlYWRlci0tY29scyAuYXJ0aWNsZV9faGVhZGVyX190ZXh0IC5hcnRpY2xlX19tZXRhe2NvbG9yOiNmZmZ9LmFydGljbGUtd3JhcHBlci0tbmFycm93IC5hcnRpY2xlX19oZWFkZXItLWNvbHMgLmFydGljbGVfX3RhZ3N7bGVmdDoxNXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxNXB4fS5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9fYm9keSwuYXJ0aWNsZS13cmFwcGVyLS1uYXJyb3cgLmFydGljbGVfX3NvY2lhbC1saW5rc3ttYXJnaW46YXV0bzttYXgtd2lkdGg6NzAwcHh9QHN1cHBvcnRzIChkaXNwbGF5OmdyaWQpe0BtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuYXJ0aWNsZS13cmFwcGVyLS1uYXJyb3cgLmFydGljbGVfX2JvZHksLmFydGljbGUtd3JhcHBlci0tbmFycm93IC5hcnRpY2xlX19zb2NpYWwtbGlua3N7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgNzAwcHggMWZyO21heC13aWR0aDoxMDAlfS5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9fYm9keT4qLC5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9fc29jaWFsLWxpbmtzPip7Z3JpZC1jb2x1bW46Mi8zfS5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9fYm9keT4uZnVsbHdpZHRoLC5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9fc29jaWFsLWxpbmtzPi5mdWxsd2lkdGh7Z3JpZC1jb2x1bW46MS80fX19QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9faGVhZGVyLS1jb2xzIC5hcnRpY2xlX19oZWFkZXJfX2ltYWdle2ZsZXgtYmFzaXM6NDAlfS5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9faGVhZGVyLS1jb2xzIC5hcnRpY2xlX19oZWFkZXJfX3RleHR7ZmxleC1iYXNpczo2MCU7cGFkZGluZzoxNXB4fS5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9faGVhZGVyLS1jb2xzIC5hcnRpY2xlX19oZWFkZXJfX3RleHQgLmhlYWRlcl9fdGl0bGV7Zm9udC1zaXplOjEuNXJlbX0uYXJ0aWNsZS13cmFwcGVyLS1uYXJyb3cgLmFydGljbGVfX2hlYWRlci0tY29scyAuYXJ0aWNsZV9faGVhZGVyX190ZXh0IC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgcC5oZXJvX19zdWJ0aXRsZSwuYXJ0aWNsZS13cmFwcGVyLS1uYXJyb3cgLmFydGljbGVfX2hlYWRlci0tY29scyAuYXJ0aWNsZV9faGVhZGVyX190ZXh0IHAubGVhZCwuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9faGVhZGVyLS1jb2xzIC5hcnRpY2xlX19oZWFkZXJfX3RleHQgcC5oZXJvX19zdWJ0aXRsZXtmb250LXNpemU6MXJlbX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9faGVhZGVyLS1jb2xze2Rpc3BsYXk6YmxvY2t9LmFydGljbGUtd3JhcHBlci0tbmFycm93IC5hcnRpY2xlX19oZWFkZXItLWNvbHMgLmFydGljbGVfX2hlYWRlcl9fdGV4dCAuaGVhZGVyX190aXRsZXtmb250LXNpemU6MS41cmVtfS5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9faGVhZGVyLS1jb2xzIC5hcnRpY2xlX19oZWFkZXJfX3RleHQgLmhlcm8tc2VjdGlvbiAuaGVyb19fY29udGVudCBwLmhlcm9fX3N1YnRpdGxlLC5hcnRpY2xlLXdyYXBwZXItLW5hcnJvdyAuYXJ0aWNsZV9faGVhZGVyLS1jb2xzIC5hcnRpY2xlX19oZWFkZXJfX3RleHQgcC5sZWFkLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmFydGljbGUtd3JhcHBlci0tbmFycm93IC5hcnRpY2xlX19oZWFkZXItLWNvbHMgLmFydGljbGVfX2hlYWRlcl9fdGV4dCBwLmhlcm9fX3N1YnRpdGxle2ZvbnQtc2l6ZToxcmVtfX0uYm9keV9zZWFyY2hlc19pbmRleCAuZm9ybS0tc2VhcmNoe21hcmdpbi1ib3R0b206MzBweH0uYXJ0aWNsZV9fc29jaWFsLWxpbmtzIHVsLmxpc3QtLXNvY2lhbC1pY29uc3tkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjEuNXJlbX0uYXJ0aWNsZV9fc29jaWFsLWxpbmtzIHVsLmxpc3QtLXNvY2lhbC1pY29ucz5saXtsaW5lLWhlaWdodDoxO21hcmdpbjowIDFweCAwIDB9LmFydGljbGVfX3NvY2lhbC1saW5rcyB1bC5saXN0LS1zb2NpYWwtaWNvbnM+bGkgYXtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWI7ZGlzcGxheTpibG9jazttaW4td2lkdGg6MS45ZW07cGFkZGluZzouMzVlbTt0ZXh0LWFsaWduOmNlbnRlcn0uYXJ0aWNsZV9fc29jaWFsLWxpbmtzIHVsLmxpc3QtLXNvY2lhbC1pY29ucz5saSBhICp7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzfS5hcnRpY2xlX19zb2NpYWwtbGlua3MgdWwubGlzdC0tc29jaWFsLWljb25zPmxpIGE6aG92ZXIgc3BhbltjbGFzcyo9IiBmYSJde3RyYW5zZm9ybTpzY2FsZSgxLjI1KTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTVzfS5wYWdpbmF0aW9uLWNvbnRhaW5lcntwYWRkaW5nOjMwcHggMCAwO3RleHQtYWxpZ246Y2VudGVyfS5wYWdpbmF0aW9uLWNvbnRhaW5lciB1bC5wYWdpbmF0aW9ue2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpc3Qtc3R5bGU6bm9uZTtwYWRkaW5nOjB9LnBhZ2luYXRpb24tY29udGFpbmVyIHVsLnBhZ2luYXRpb24gbGkucGFnZS1pdGVtIGEsLnBhZ2luYXRpb24tY29udGFpbmVyIHVsLnBhZ2luYXRpb24gbGkucGFnZS1pdGVtIGEucGFnZS1saW5re2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czowIWltcG9ydGFudDtjb2xvcjppbmhlcml0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6Ny41cHggMTVweH0ucGFnaW5hdGlvbi1jb250YWluZXIgdWwucGFnaW5hdGlvbiBsaS5wYWdlLWl0ZW0gYS5wYWdlLWxpbms6aG92ZXIsLnBhZ2luYXRpb24tY29udGFpbmVyIHVsLnBhZ2luYXRpb24gbGkucGFnZS1pdGVtIGE6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjJmMmYyO2NvbG9yOiNkNDA1MTF9LnBhZ2luYXRpb24tY29udGFpbmVyIHVsLnBhZ2luYXRpb24gbGkucGFnZS1pdGVtLmFjdGl2ZXtib3JkZXItYm90dG9tOjJweCBzb2xpZCAjZDQwNTExfS5wYWdpbmF0aW9uLWNvbnRhaW5lciAucGFnaW5hdGlvbi1pbmZve2ZvbnQtc2l6ZTouODc1cmVtfS5wYWdlci0tcmljaHtkaXNwbGF5OmZsZXg7Z2FwOjJweDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjttYXJnaW4tYm90dG9tOjJweH0ucGFnZXItLXJpY2ggLnBhZ2VyX19pdGVte2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiM2NjY7ZGlzcGxheTpmbGV4O2ZsZXgtYmFzaXM6NTAlfS5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW1fX2ltYWdle2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MTUwcHggMTUwcHg7ZmxleC1iYXNpczoxNTBweDtmbGV4LXNocmluazowO2hlaWdodDoxNTBweDt0cmFuc2l0aW9uOmJhY2tncm91bmQtc2l6ZSAuNzVzO3dpZHRoOjE1MHB4fS5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW1fX3RleHR7Y29sb3I6I2ZmZjtmbGV4LWdyb3c6MTA7cGFkZGluZzoxNXB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW1fX3RleHQgLnBhZ2VyX19pdGVtX190aXRsZXtmb250LXdlaWdodDo5MDA7bWFyZ2luOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW1fX3RleHQ6YmVmb3Jle2FsaWduLWl0ZW1zOmNlbnRlcjtjb250ZW50OiJcZjA1MyI7ZGlzcGxheTpmbGV4O2ZvbnQtZmFtaWx5OkZvbnQgQXdlc29tZVwgNyBGcmVlO2ZvbnQtc2l6ZToxLjVyZW07Zm9udC13ZWlnaHQ6OTAwO2hlaWdodDoxMDAlO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6NDVweH0ucGFnZXItLXJpY2ggLnBhZ2VyX19pdGVtOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW06aG92ZXIgLnBhZ2VyX19pdGVtX19pbWFnZXtiYWNrZ3JvdW5kLXNpemU6MTgwcHggMTgwcHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLXNpemUgLjI1c30ucGFnZXItLXJpY2ggLnBhZ2VyX19pdGVtLS1vbGRlciAucGFnZXJfX2l0ZW1fX3RleHR7cGFkZGluZy1yaWdodDo0NXB4fS5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW0tLW9sZGVyIC5wYWdlcl9faXRlbV9fdGV4dDpiZWZvcmV7Y29udGVudDoiXGYwNTQiO3JpZ2h0OjB9LnBhZ2VyLS1yaWNoIC5wYWdlcl9faXRlbS0tbmV3ZXIgLnBhZ2VyX19pdGVtX19pbWFnZXtvcmRlcjoxfS5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW0tLW5ld2VyIC5wYWdlcl9faXRlbV9fdGV4dHtvcmRlcjoyO3BhZGRpbmctbGVmdDo0NXB4fS5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW0tLW5ld2VyIC5wYWdlcl9faXRlbV9fdGV4dDpiZWZvcmV7Y29udGVudDoiXGYwNTMiO2xlZnQ6MH0ucGFnZXItLXJpY2ggLnBhZ2VyX19pdGVtOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGR7ZmxleC1iYXNpczoxMDAlO21hcmdpbi1sZWZ0OjA7bWFyZ2luLXJpZ2h0OjB9QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW1fX2ltYWdle2JhY2tncm91bmQtc2l6ZToxMDBweCAxMDBweDtmbGV4LWJhc2lzOjEwMHB4O2hlaWdodDoxMDBweDt3aWR0aDoxMDBweH19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5wYWdlci0tcmljaCAucGFnZXJfX2l0ZW1fX2ltYWdle2ZsZXgtYmFzaXM6NjBweDtoZWlnaHQ6MTAwcHg7d2lkdGg6NjBweH19QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpey5wYWdlci0tcmljaHtkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MH0ucGFnZXItLXJpY2ggLnBhZ2VyX19pdGVte21hcmdpbi1ib3R0b206MnB4O21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O21hcmdpbi1yaWdodDowIWltcG9ydGFudH0ucGFnZXItLXJpY2ggLnBhZ2VyX19pdGVtIC5wYWdlcl9faXRlbV9fdGV4dCAucGFnZXJfX2l0ZW1fX3RpdGxle2ZvbnQtc2l6ZTouODc1cmVtfX0uY2FyZHtiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjI7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1zaXplOmNvdmVyO2NvbG9yOnJnYmEoMCwwLDAsLjkpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAxc30uY2FyZC1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5jYXJkLWJvZHkgLmNhcmQtdGl0bGV7Zm9udC1zaXplOjEuMTI1cmVtO21hcmdpbi1ib3R0b206MnJlbX0uY2FyZC1ib2R5IC5jYXJkLXRlYXNlcnttYXJnaW4tYm90dG9tOjB9LmNhcmQtZm9vdGVye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcDpub25lO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mn0uY2FyZC1mb290ZXIgcC5jYXJkLW1ldGF7Zm9udC1zaXplOi44NzVyZW19LmNhcmQtZm9vdGVyIHA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LmNhcmQtZm9vdGVyIC5jYXJkLXRhZ3N7bWFyZ2luLWJvdHRvbTouMjVyZW19LmNhcmQtZm9vdGVyIC5jYXJkLXRhZ3M6ZW1wdHl7ZGlzcGxheTpub25lfS5jYXJkOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2ViZWJlYjtjb2xvcjpyZ2JhKDAsMCwwLC45KTt0ZXh0LWRlY29yYXRpb246bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjFzfS5jYXJkLS1iZy1pbWFnZXtwb3NpdGlvbjpyZWxhdGl2ZX0uY2FyZC0tYmctaW1hZ2U6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC41KTtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAxczt3aWR0aDoxMDAlfS5jYXJkLS1iZy1pbWFnZSAuY2FyZC1ib2R5IC5jYXJkLXRlYXNlciwuY2FyZC0tYmctaW1hZ2UgLmNhcmQtYm9keSAuY2FyZC10aXRsZSwuY2FyZC0tYmctaW1hZ2U6aG92ZXIgLmNhcmQtYm9keSAuY2FyZC10ZWFzZXIsLmNhcmQtLWJnLWltYWdlOmhvdmVyIC5jYXJkLWJvZHkgLmNhcmQtdGl0bGV7Y29sb3I6I2ZmZn0uY2FyZC0tYmctaW1hZ2UgLmNhcmQtZm9vdGVyLC5jYXJkLS1iZy1pbWFnZTpob3ZlciAuY2FyZC1mb290ZXJ7Y29sb3I6I2ZmZjtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9LmNhcmQtLWJnLWltYWdlOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xc30uY2FyZC0tcHJpY2luZyAuY2FyZC1oZWFkZXJ7YmFja2dyb3VuZC1jb2xvcjojZmMwO2ZvbnQtc2l6ZToxLjVyZW07Zm9udC13ZWlnaHQ6NzAwO3BhZGRpbmctYm90dG9tOjcuNXB4O3BhZGRpbmctdG9wOjcuNXB4fS5jYXJkLS1wcmljaW5nIC5jYXJkLWJvZHl7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5jYXJkLS1wcmljaW5nIC5jYXJkLWJvZHkgLmNhcmQtLXByaWNpbmdfX3ByaWNle2xpbmUtaGVpZ2h0OjEuMjU7bWFyZ2luLWJvdHRvbToxNXB4fS5jYXJkLS1wcmljaW5nIC5jYXJkLWJvZHkgLmNhcmQtLXByaWNpbmdfX3ByaWNlIC5jdXJyZW5jeS1tYWlue2NvbG9yOiNkNDA1MTE7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEuODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tYm90dG9tOjA7bWFyZ2luLXJpZ2h0Oi4yNWNofS5jYXJkLS1wcmljaW5nIC5jYXJkLWJvZHkgLmNhcmQtLXByaWNpbmdfX3ByaWNlIC52YXR7Zm9udC1zaXplOi44NzVyZW19LmNhcmQtLXByaWNpbmcgLmNhcmQtYm9keSAubGlzdC0taG93dG97Zm9udC13ZWlnaHQ6NzAwfS5jYXJkLS1wcmljaW5nIC5jYXJkLWJvZHkgdWw6bGFzdC1jaGlsZHtmbGV4LWdyb3c6MTA7bWFyZ2luLWJvdHRvbTowfS5jYXJkLS1wcmljaW5nIC5jYXJkLS1wcmljaW5nX19mZWF0dXJlc3tmbGV4LWdyb3c6NH0uY2FyZC0tcHJpY2luZyAuY2FyZC0tcHJpY2luZ19faG93dG8rLmNhcmQtLXByaWNpbmdfX2ZlYXR1cmVze21hcmdpbi10b3A6MTVweH0uY2FyZC0tcHJpY2luZyAuY2FyZC0tcHJpY2luZ19faWxsdXN0cmF0aW9ue2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjI7Ym9yZGVyLXJhZGl1czouMjVyZW07ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luLWJvdHRvbToxLjI1cmVtO3BhZGRpbmc6MTVweCAzMHB4fS5jYXJkLS1wcmljaW5nIC5jYXJkLS1wcmljaW5nX19pbGx1c3RyYXRpb24gaW1ne21heC13aWR0aDoyMDBweDttYXgtd2lkdGg6Y2xhbXAoMTUwcHgsNzAlLDIwMHB4KX0uY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2Rpc3BsYXk6YmxvY2t9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlcnttaW4taGVpZ2h0OjE1OXB4fX0uY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYS5idG4sLmNhcmQtLXByaWNpbmcgLmNhcmQtZm9vdGVyIGJvZHk+YSNvdC1zZGstYnRuLC5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBib2R5PnNwYW4jb3Qtc2RrLWJ0biwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgc3Bhbi5idG57bWFyZ2luOmF1dG8gYXV0byAxNXB4O21heC13aWR0aDozMDBweH0uY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYSwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYm9keT5zcGFuI290LXNkay1idG4sLmNhcmQtLXByaWNpbmcgLmNhcmQtZm9vdGVyIHNwYW4uYnRue2Rpc3BsYXk6YmxvY2t9LmNhcmQtLXByaWNpbmcgLmNhcmQtZm9vdGVyIGEgLmRobC1pY29uOmZpcnN0LWNoaWxkLC5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBhIC5mYTpmaXJzdC1jaGlsZCwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYSAuZmFyOmZpcnN0LWNoaWxkLC5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBhIC5mYXM6Zmlyc3QtY2hpbGQsLmNhcmQtLXByaWNpbmcgLmNhcmQtZm9vdGVyIGJvZHk+c3BhbiNvdC1zZGstYnRuIC5kaGwtaWNvbjpmaXJzdC1jaGlsZCwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYm9keT5zcGFuI290LXNkay1idG4gLmZhOmZpcnN0LWNoaWxkLC5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBib2R5PnNwYW4jb3Qtc2RrLWJ0biAuZmFyOmZpcnN0LWNoaWxkLC5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBib2R5PnNwYW4jb3Qtc2RrLWJ0biAuZmFzOmZpcnN0LWNoaWxkLC5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBzcGFuLmJ0biAuZGhsLWljb246Zmlyc3QtY2hpbGQsLmNhcmQtLXByaWNpbmcgLmNhcmQtZm9vdGVyIHNwYW4uYnRuIC5mYTpmaXJzdC1jaGlsZCwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgc3Bhbi5idG4gLmZhcjpmaXJzdC1jaGlsZCwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgc3Bhbi5idG4gLmZhczpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MWNofS5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciAuYnRuOm5vdChhKTpub3QoYnV0dG9uKSwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpub3QoYSk6bm90KGJ1dHRvbiksLmNhcmQtLXByaWNpbmcgLmNhcmQtZm9vdGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOm5vdChhKTpub3QoYnV0dG9uKSwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYm9keT4jb3Qtc2RrLWJ0bjpub3QoYSk6bm90KGJ1dHRvbiksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYnV0dG9uLm1rdG9CdXR0b246bm90KGEpOm5vdChidXR0b24pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBidXR0b24ubWt0b0J1dHRvbjpub3QoYSk6bm90KGJ1dHRvbil7Y3Vyc29yOmF1dG87LXdlYmtpdC11c2VyLXNlbGVjdDphdXRvOy1tb3otdXNlci1zZWxlY3Q6YXV0bzt1c2VyLXNlbGVjdDphdXRvfS5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciAuYnRuOm5vdChhKTpub3QoYnV0dG9uKTpob3ZlciwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpub3QoYSk6bm90KGJ1dHRvbik6aG92ZXIsLmNhcmQtLXByaWNpbmcgLmNhcmQtZm9vdGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uOm5vdChhKTpub3QoYnV0dG9uKTpob3ZlciwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYm9keT4jb3Qtc2RrLWJ0bjpub3QoYSk6bm90KGJ1dHRvbik6aG92ZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYnV0dG9uLm1rdG9CdXR0b246bm90KGEpOm5vdChidXR0b24pOmhvdmVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBidXR0b24ubWt0b0J1dHRvbjpub3QoYSk6bm90KGJ1dHRvbik6aG92ZXJ7Y29sb3I6I2Q0MDUxMTt0ZXh0LWRlY29yYXRpb246bm9uZX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmNhcmQtLXByaWNpbmc6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dyaWQtdGVtcGxhdGUtcm93czptYXgtY29udGVudCAxZnIgYXV0bzttYXJnaW46YXV0bzttYXgtd2lkdGg6MTAwJX0uY2FyZC0tcHJpY2luZzpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIC5jYXJkLWhlYWRlcntncmlkLWNvbHVtbjoxLy0xO2dyaWQtcm93OjEvMjttaW4taGVpZ2h0OjAhaW1wb3J0YW50fS5jYXJkLS1wcmljaW5nOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQgLmNhcmQtYm9keXtncmlkLWNvbHVtbjoxLzI7Z3JpZC1yb3c6Mi8zfS5jYXJkLS1wcmljaW5nOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQgLmNhcmQtZm9vdGVye2FsaWduLXNlbGY6ZW5kO2dyaWQtY29sdW1uOjIvMztncmlkLXJvdzoyLzM7anVzdGlmeS1zZWxmOmVuZDttaW4taGVpZ2h0OjB9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmNhcmQtLXByaWNpbmc6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCAuY2FyZC1ib2R5e2dyaWQtY29sdW1uOjEvLTF9LmNhcmQtLXByaWNpbmc6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCAuY2FyZC1ib2R5IHVsLmxpc3QtLWNoZWNrbWFya3N7LW1vei1jb2x1bW5zOjI7Y29sdW1uLWNvdW50OjI7LW1vei1jb2x1bW4tZ2FwOjYwcHg7Y29sdW1uLWdhcDo2MHB4fS5jYXJkLS1wcmljaW5nOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQgLmNhcmQtZm9vdGVye2JvcmRlci10b3A6MXB4IHNvbGlkICNlNWU1ZTU7ZGlzcGxheTpncmlkO2dyaWQtY29sdW1uOjEvLTE7Z3JpZC1yb3c6My80O2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2p1c3RpZnktc2VsZjpzdHJldGNoO3BhZGRpbmctYm90dG9tOjB9LmNhcmQtLXByaWNpbmc6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCAuY2FyZC1mb290ZXJfX2N0YXthbGlnbi1zZWxmOmNlbnRlcjtncmlkLWNvbHVtbjoxLzI7anVzdGlmeS1zZWxmOnN0YXJ0fS5jYXJkLS1wcmljaW5nOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQgLmNhcmQtZm9vdGVyX19saW5rc3tncmlkLWNvbHVtbjoyLzM7anVzdGlmeS1zZWxmOmVuZDtwYWRkaW5nLWJvdHRvbToxNXB4fX0uY2FyZC0tcHJpY2luZy5jYXJkLS1yZWNvbW1lbmRlZHtib3gtc2hhZG93OjAgNXB4IDIxcHggMCByZ2JhKDAsMCwwLC40Nyk7ei1pbmRleDoyMH0uY2FyZC0tcHJpY2luZzpub3QoLmNhcmQtLXJlY29tbWVuZGVkKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSAuY2FyZC1oZWFkZXIsLmNhcmQtLXByaWNpbmc6bm90KC5jYXJkLS1yZWNvbW1lbmRlZCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgLmNhcmQtaGVhZGVyLC5jYXJkLS1wcmljaW5nOm5vdCguY2FyZC0tcmVjb21tZW5kZWQpOm50aC1jaGlsZCgyKTpsYXN0LWNoaWxkIC5jYXJkLWhlYWRlciwuY2FyZC0tcHJpY2luZzpub3QoLmNhcmQtLXJlY29tbWVuZGVkKTpudGgtY2hpbGQoMik6bnRoLWxhc3QtY2hpbGQoMikgLmNhcmQtaGVhZGVyLC5jYXJkLS1wcmljaW5nOm5vdCguY2FyZC0tcmVjb21tZW5kZWQpOm50aC1jaGlsZCgzKTpsYXN0LWNoaWxkIC5jYXJkLWhlYWRlciwuY2FyZC0tcHJpY2luZzpudGgtbGFzdC1jaGlsZCg0KTpub3QoLmNhcmQtLXJlY29tbWVuZGVkKSAuY2FyZC1oZWFkZXIsLmNhcmQtLXByaWNpbmc6bnRoLWxhc3QtY2hpbGQoNCl+LmNhcmQtLXByaWNpbmc6bm90KC5jYXJkLS1yZWNvbW1lbmRlZCkgLmNhcmQtaGVhZGVye2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNX1AbWVkaWEgKG1heC13aWR0aDoxMTAwcHgpIGFuZCAobWluLXdpZHRoOjc2OHB4KXsuY2FyZC1ncm91cD4uY2FyZC0tcHJpY2luZzpudGgtbGFzdC1jaGlsZCg0KSwuY2FyZC1ncm91cD4uY2FyZC0tcHJpY2luZzpudGgtbGFzdC1jaGlsZCg0KX4uY2FyZC0tcHJpY2luZ3tib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSk7Ym9yZGVyLXJhZGl1czowO2ZsZXgtYmFzaXM6NTAlO292ZXJmbG93OmhpZGRlbn0uY2FyZC1ncm91cD4uY2FyZC0tcHJpY2luZzpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZCwuY2FyZC1ncm91cD4uY2FyZC0tcHJpY2luZzpudGgtbGFzdC1jaGlsZCg0KTpudGgtY2hpbGQoMiksLmNhcmQtZ3JvdXA+LmNhcmQtLXByaWNpbmc6bnRoLWxhc3QtY2hpbGQoNCl+LmNhcmQtLXByaWNpbmc6Zmlyc3QtY2hpbGQsLmNhcmQtZ3JvdXA+LmNhcmQtLXByaWNpbmc6bnRoLWxhc3QtY2hpbGQoNCl+LmNhcmQtLXByaWNpbmc6bnRoLWNoaWxkKDIpe21hcmdpbi1ib3R0b206MTVweH0uY2FyZC1ncm91cD4uY2FyZC0tcHJpY2luZzpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZCwuY2FyZC1ncm91cD4uY2FyZC0tcHJpY2luZzpudGgtbGFzdC1jaGlsZCg0KTpudGgtY2hpbGQoMyksLmNhcmQtZ3JvdXA+LmNhcmQtLXByaWNpbmc6bnRoLWxhc3QtY2hpbGQoNCl+LmNhcmQtLXByaWNpbmc6Zmlyc3QtY2hpbGQsLmNhcmQtZ3JvdXA+LmNhcmQtLXByaWNpbmc6bnRoLWxhc3QtY2hpbGQoNCl+LmNhcmQtLXByaWNpbmc6bnRoLWNoaWxkKDMpe2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjJyZW07Ym9yZGVyLXJpZ2h0Om5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czouMnJlbX0uY2FyZC1ncm91cD4uY2FyZC0tcHJpY2luZzpudGgtbGFzdC1jaGlsZCg0KTpudGgtY2hpbGQoMiksLmNhcmQtZ3JvdXA+LmNhcmQtLXByaWNpbmc6bnRoLWxhc3QtY2hpbGQoNCk6bnRoLWNoaWxkKDQpLC5jYXJkLWdyb3VwPi5jYXJkLS1wcmljaW5nOm50aC1sYXN0LWNoaWxkKDQpfi5jYXJkLS1wcmljaW5nOm50aC1jaGlsZCgyKSwuY2FyZC1ncm91cD4uY2FyZC0tcHJpY2luZzpudGgtbGFzdC1jaGlsZCg0KX4uY2FyZC0tcHJpY2luZzpudGgtY2hpbGQoNCl7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjJyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjJyZW19fS5jYXJkLS1zZWFyY2h7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMTVweCAxZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gMWZyIGF1dG99LmNhcmQtLXNlYXJjaCAuY2FyZC1oZWFkZXJ7Z3JpZC1jb2x1bW46MS8tMTtncmlkLXJvdzoxLzJ9LmNhcmQtLXNlYXJjaCAuY2FyZC1oZWFkZXIsLmNhcmQtLXNlYXJjaCAuY2FyZC1oZWFkZXIgLmNhcmQtdGl0bGV7Zm9udC1zaXplOjEuMjVyZW0haW1wb3J0YW50fS5jYXJkLS1zZWFyY2ggLmNhcmQtYm9keXtncmlkLWNvbHVtbjoxLy0xO2dyaWQtcm93OjIvMztsaW5lLWhlaWdodDoxLjI1fS5jYXJkLS1zZWFyY2ggLmNhcmQtYm9keSA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LmNhcmQtLXNlYXJjaCAuY2FyZC1ib2R5IC5jYXJkLW1ldGF7Zm9udC1zaXplOi44NzVyZW19LmNhcmQtLXNlYXJjaCAuY2FyZF9faW1hZ2V+LmNhcmQtYm9keXtncmlkLWNvbHVtbjoxLzJ9LmNhcmQtLXNlYXJjaCAuY2FyZF9faW1hZ2V7Z3JpZC1jb2x1bW46My80O2dyaWQtcm93OjIvLTI7cGFkZGluZy1ib3R0b206MS4yNXJlbTtwYWRkaW5nLXRvcDoxLjI1cmVtfS5jYXJkLS1zZWFyY2ggLmNhcmRfX2ltYWdlIGltZy5jYXJkLWltZy10b3B7Ym9yZGVyLXJhZGl1czowO2hlaWdodDphdXRvO21heC13aWR0aDoxMDAlfS5jYXJkLS1zZWFyY2ggLmNhcmQtZm9vdGVye2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMjUpO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtncmlkLWNvbHVtbjoxLy0xO2dyaWQtcm93Oi0xLy0yO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5jYXJkLS1zZWFyY2ggLmNhcmQtZm9vdGVyIC5idG4gLmRobC1pY29uLC5jYXJkLS1zZWFyY2ggLmNhcmQtZm9vdGVyIC5idG4gLmZhLC5jYXJkLS1zZWFyY2ggLmNhcmQtZm9vdGVyIC5idG4gLmZhciwuY2FyZC0tc2VhcmNoIC5jYXJkLWZvb3RlciAuYnRuIC5mYXMsLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiAuZGhsLWljb24sLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiAuZmEsLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiAuZmFyLC5jYXJkLS1zZWFyY2ggLmNhcmQtZm9vdGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24gLmZhcywuY2FyZC0tc2VhcmNoIC5jYXJkLWZvb3RlciBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiAuZGhsLWljb24sLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24gLmZhLC5jYXJkLS1zZWFyY2ggLmNhcmQtZm9vdGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uIC5mYXIsLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24gLmZhcywuY2FyZC0tc2VhcmNoIC5jYXJkLWZvb3RlciBib2R5PiNvdC1zZGstYnRuIC5kaGwtaWNvbiwuY2FyZC0tc2VhcmNoIC5jYXJkLWZvb3RlciBib2R5PiNvdC1zZGstYnRuIC5mYSwuY2FyZC0tc2VhcmNoIC5jYXJkLWZvb3RlciBib2R5PiNvdC1zZGstYnRuIC5mYXIsLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgYm9keT4jb3Qtc2RrLWJ0biAuZmFzLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgYnV0dG9uLm1rdG9CdXR0b24gLmRobC1pY29uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgYnV0dG9uLm1rdG9CdXR0b24gLmZhLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgYnV0dG9uLm1rdG9CdXR0b24gLmZhciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5jYXJkLS1zZWFyY2ggLmNhcmQtZm9vdGVyIGJ1dHRvbi5ta3RvQnV0dG9uIC5mYXMsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmNhcmQtLXNlYXJjaCAuY2FyZC1mb290ZXIgYnV0dG9uLm1rdG9CdXR0b24gLmRobC1pY29uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5jYXJkLS1zZWFyY2ggLmNhcmQtZm9vdGVyIGJ1dHRvbi5ta3RvQnV0dG9uIC5mYSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuY2FyZC0tc2VhcmNoIC5jYXJkLWZvb3RlciBidXR0b24ubWt0b0J1dHRvbiAuZmFyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5jYXJkLS1zZWFyY2ggLmNhcmQtZm9vdGVyIGJ1dHRvbi5ta3RvQnV0dG9uIC5mYXN7bWFyZ2luLWxlZnQ6MWNofUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsuY2FyZC0tc2VhcmNoe2Rpc3BsYXk6YmxvY2t9LmNhcmQtLXNlYXJjaCAuY2FyZF9faW1hZ2V7cGFkZGluZzowfX0uY2FyZC0tc2VhcmNoIG1hcmt7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyMDQsMCwuNSl9LmNhcmQtZGVja3ttYXJnaW4tYm90dG9tOjE1cHg7bWFyZ2luLWxlZnQ6LTcuNXB4O21hcmdpbi1yaWdodDotNy41cHh9LmNhcmQtZGVjay0tNXtmbGV4LXdyYXA6d3JhcH0uY2FyZC1kZWNrLS01IC5jYXJke2ZsZXgtYmFzaXM6Y2FsYygyMCUgLSAxNXB4KTttYXJnaW4tYm90dG9tOjE1cHg7bWFyZ2luLWxlZnQ6Ny41cHg7bWFyZ2luLXJpZ2h0OjcuNXB4O21heC13aWR0aDpjYWxjKDIwJSAtIDE1cHgpfUBtZWRpYSAobWF4LXdpZHRoOjk5MS45OHB4KXsuY2FyZC1kZWNrLS01IC5jYXJke2ZsZXgtYmFzaXM6Y2FsYygzMy4zMyUgLSAxNXB4KTttYXgtd2lkdGg6Y2FsYygzMy4zMyUgLSAxNXB4KX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5jYXJkLWRlY2stLTUgLmNhcmR7ZmxleC1iYXNpczpjYWxjKDUwJSAtIDE1cHgpO21heC13aWR0aDpjYWxjKDUwJSAtIDE1cHgpfX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7LmNhcmQtZGVjay0tNSAuY2FyZHtmbGV4LWJhc2lzOjEwMCU7bWF4LXdpZHRoOjEwMCU7bWluLWhlaWdodDo1MHZ3fX0uY2FyZC1kZWNrLS00e2ZsZXgtd3JhcDp3cmFwfS5jYXJkLWRlY2stLTQgLmNhcmR7ZmxleC1iYXNpczpjYWxjKDI1JSAtIDE1cHgpO21hcmdpbi1ib3R0b206MTVweDttYXJnaW4tbGVmdDo3LjVweDttYXJnaW4tcmlnaHQ6Ny41cHg7bWF4LXdpZHRoOmNhbGMoMjUlIC0gMTVweCl9QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5jYXJkLWRlY2stLTQgLmNhcmR7ZmxleC1iYXNpczpjYWxjKDMzLjMzJSAtIDE1cHgpO21heC13aWR0aDpjYWxjKDMzLjMzJSAtIDE1cHgpfX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7LmNhcmQtZGVjay0tNCAuY2FyZHtmbGV4LWJhc2lzOmNhbGMoNTAlIC0gMTVweCk7bWF4LXdpZHRoOmNhbGMoNTAlIC0gMTVweCl9fUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsuY2FyZC1kZWNrLS00IC5jYXJke2ZsZXgtYmFzaXM6MTAwJTttYXgtd2lkdGg6MTAwJTttaW4taGVpZ2h0OjUwdnd9fS5jYXJkLWRlY2stLTN7ZmxleC13cmFwOndyYXB9LmNhcmQtZGVjay0tMyAuY2FyZHtmbGV4LWJhc2lzOmNhbGMoMzMuMzMlIC0gMTVweCk7bWFyZ2luLWJvdHRvbToxNXB4O21hcmdpbi1sZWZ0OjcuNXB4O21hcmdpbi1yaWdodDo3LjVweDttYXgtd2lkdGg6Y2FsYygzMy4zMyUgLSAxNXB4KX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7LmNhcmQtZGVjay0tMyAuY2FyZHtmbGV4LWJhc2lzOmNhbGMoNTAlIC0gMTVweCk7bWF4LXdpZHRoOmNhbGMoNTAlIC0gMTVweCl9fUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsuY2FyZC1kZWNrLS0zIC5jYXJke2ZsZXgtYmFzaXM6MTAwJTttYXgtd2lkdGg6MTAwJTttaW4taGVpZ2h0OjUwdnd9fS5jYXJkLWRlY2stLXNlYXJjaHtmbGV4LXdyYXA6d3JhcH0uY2FyZC1kZWNrLS1zZWFyY2ggLmNhcmR7ZmxleC1iYXNpczpjYWxjKDMzLjMzJSAtIDE1cHgpO21hcmdpbi1ib3R0b206MTVweDttYXJnaW4tbGVmdDo3LjVweDttYXJnaW4tcmlnaHQ6Ny41cHg7bWF4LXdpZHRoOmNhbGMoMzMuMzMlIC0gMTVweCl9QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5jYXJkLWRlY2stLXNlYXJjaCAuY2FyZHtmbGV4LWJhc2lzOmNhbGMoNTAlIC0gMTVweCk7bWF4LXdpZHRoOmNhbGMoNTAlIC0gMTVweCl9fUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsuY2FyZC1kZWNrLS1zZWFyY2ggLmNhcmR7ZmxleC1iYXNpczoxMDAlO21heC13aWR0aDoxMDAlfX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7LmNhcmQtZGVja3tkaXNwbGF5OmJsb2NrfX1ib2R5W2RhdGEtY291bnRyeT1IVV0gI3ByaWNpbmdfZm9ybV9fcmVzdWx0cyAuY2FyZC1ncm91cD4uY2FyZC0tcGVyc29uYWxseXtvcmRlcjoyMH1ib2R5W2RhdGEtY291bnRyeT1IVV0gI3ByaWNpbmdfZm9ybV9fcmVzdWx0cyAuY2FyZC1ncm91cD4uY2FyZC0tb25saW5le29yZGVyOjMwfWJvZHlbZGF0YS1jb3VudHJ5PUhVXSAjcHJpY2luZ19mb3JtX19yZXN1bHRzIC5jYXJkLWdyb3VwPi5jYXJkLS1wYXJ0bmVyc3tvcmRlcjoxMH1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7I3ByaWNpbmdfZm9ybV9fcmVzdWx0cyAuY2FyZC1ncm91cD4uY2FyZCAuY2FyZC1oZWFkZXJ7bWluLWhlaWdodDpjYWxjKDNlbSArIDFyZW0pfX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7I3ByaWNpbmdfZm9ybV9fcmVzdWx0cyAuY2FyZC1ncm91cHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21hcmdpbi10b3A6MTVweH0jcHJpY2luZ19mb3JtX19yZXN1bHRzIC5jYXJkLWdyb3VwPi5jYXJkLCNwcmljaW5nX2Zvcm1fX3Jlc3VsdHMgLmNhcmQtZ3JvdXA+LmNhcmQrLmNhcmR7Ym9yZGVyLXN0eWxlOnNvbGlkIWltcG9ydGFudDtib3JkZXItd2lkdGg6MXB4IWltcG9ydGFudDtib3JkZXItYm90dG9tLXdpZHRoOjFweCFpbXBvcnRhbnQ7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSkhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtIWltcG9ydGFudDtib3JkZXItcmlnaHQtd2lkdGg6MXB4IWltcG9ydGFudDttYXJnaW4tYm90dG9tOjE1cHghaW1wb3J0YW50fWJvZHk6bm90KFtkYXRhLWNvdW50cnk9QkddKTpub3QoW2RhdGEtY291bnRyeT1MVl0pOm5vdChbZGF0YS1jb3VudHJ5PUhVXSk6bm90KFtkYXRhLWNvdW50cnk9U0ldKSAjcHJpY2luZ19mb3JtX19yZXN1bHRzIC5jYXJkLWdyb3VwPi5jYXJkOm5vdCguY2FyZC0tcmVjb21tZW5kZWQpe29yZGVyOjF9Ym9keTpub3QoW2RhdGEtY291bnRyeT1CR10pOm5vdChbZGF0YS1jb3VudHJ5PUxWXSk6bm90KFtkYXRhLWNvdW50cnk9SFVdKTpub3QoW2RhdGEtY291bnRyeT1TSV0pICNwcmljaW5nX2Zvcm1fX3Jlc3VsdHMgLmNhcmQtZ3JvdXA+LmNhcmQuY2FyZC0tcmVjb21tZW5kZWR7b3JkZXI6MH19QHN1cHBvcnRzIChncmlkLXRlbXBsYXRlLXJvd3M6c3ViZ3JpZCl7QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpeyNwcmljaW5nX2Zvcm1fX3Jlc3VsdHMgLmNhcmQtZ3JvdXB7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoYXV0by1maXQsMWZyKTtncmlkLXRlbXBsYXRlLXJvd3M6cmVwZWF0KDQsbWlubWF4KDAsYXV0bykpfSNwcmljaW5nX2Zvcm1fX3Jlc3VsdHMgLmNhcmQtZ3JvdXAgLmNhcmQtLXByaWNpbmd7ZGlzcGxheTpncmlkO2dyaWQtcm93OjEvLTE7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtncmlkLXRlbXBsYXRlLXJvd3M6c3ViZ3JpZH0jcHJpY2luZ19mb3JtX19yZXN1bHRzIC5jYXJkLWdyb3VwIC5jYXJkLS1wcmljaW5nPip7Z3JpZC1jb2x1bW46MS8yfSNwcmljaW5nX2Zvcm1fX3Jlc3VsdHMgLmNhcmQtZ3JvdXAgLmNhcmQtLXByaWNpbmcgLmNhcmQtaGVhZGVye2dyaWQtcm93OjEvMjttaW4taGVpZ2h0OjB9I3ByaWNpbmdfZm9ybV9fcmVzdWx0cyAuY2FyZC1ncm91cCAuY2FyZC0tcHJpY2luZyAuY2FyZC1ib2R5e2dyaWQtcm93OjIvM30jcHJpY2luZ19mb3JtX19yZXN1bHRzIC5jYXJkLWdyb3VwIC5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlcnthbGlnbi1pdGVtczpzdHJldGNoO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z3JpZC1yb3c6My80O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufX19dWwubGlzdC0tdHJlZXtsaXN0LXN0eWxlOm5vbmU7cGFkZGluZzowIDAgMCAyNXB4fXVsLmxpc3QtLXRyZWUgbGl7bWFyZ2luOjA7cGFkZGluZzouMTVlbSAwIC42ZW0gLjVlbTtwb3NpdGlvbjpyZWxhdGl2ZX11bC5saXN0LS10cmVlIGxpOmJlZm9yZXtib3JkZXItYm90dG9tOjNweCBzb2xpZCAjZTVlNWU1O2JvcmRlci1yYWRpdXM6MCAwIDAgMTJweDtoZWlnaHQ6MTZweH11bC5saXN0LS10cmVlIGxpOmFmdGVyLHVsLmxpc3QtLXRyZWUgbGk6YmVmb3Jle2JvcmRlci1sZWZ0OjNweCBzb2xpZCAjZTVlNWU1O2NvbnRlbnQ6IiI7bGVmdDotMjBweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoyMHB4fXVsLmxpc3QtLXRyZWUgbGk6YWZ0ZXJ7aGVpZ2h0OjEwMCV9dWwubGlzdC0tdHJlZSBsaTpsYXN0LWNoaWxkOmFmdGVye2JvcmRlci1sZWZ0Om5vbmV9dWwubGlzdC0tdHJlZSAuaW9iamVjdF9faGVhZGluZyx1bC5saXN0LS10cmVlIGgxLHVsLmxpc3QtLXRyZWUgaDIsdWwubGlzdC0tdHJlZSBoMyx1bC5saXN0LS10cmVlIGg0LHVsLmxpc3QtLXRyZWUgcHttYXJnaW4tYm90dG9tOjB9Lm5hdi1sb2dpbnttYXJnaW4tYm90dG9tOjE1cHh9Lm5hdi1sb2dpbiAubmF2YmFyLWJyYW5kIGltZ3toZWlnaHQ6MzBweDt3aWR0aDphdXRvfS5uYXYtbG9naW4gLm5hdmJhci10b2dnbGVye2JvcmRlcjpub25lO2NvbG9yOiNmZmY7Zm9udC1zaXplOjEuNXJlbX0uaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5uYXYtbG9naW4gLmhlcm9fX3RpdGxlLC5uYXYtbG9naW4gLmgxLC5uYXYtbG9naW4gLmhlcm8tc2VjdGlvbiAuaGVyb19fY29udGVudCAuaGVyb19fdGl0bGUsLm5hdi1sb2dpbiBoMXtkaXNwbGF5OmlubGluZTtmb250LXNpemU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luOmluaGVyaXQ7cGFkZGluZzppbmhlcml0fS5uYXYtbG9naW4gLmxhbmdzd2l0Y2ggLmxhbmdzd2l0Y2gtZmxhZ3toZWlnaHQ6LjhyZW07d2lkdGg6YXV0b30uaGVhZGVyLXdyYXB7bWFyZ2luOmF1dG8gYXV0byAzMHB4O21heC13aWR0aDoxNDAwcHg7dGV4dC1hbGlnbjpjZW50ZXI7dG9wOjA7d2lkdGg6MTAwJX1oZWFkZXIuaGVhZGVyLS1tYWlue2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZmMwIDAsI2ZjMCA1JSwjZmZlNTdmIDc5JSwjZmZmMGIyKTtiYWNrZ3JvdW5kLWNvbG9yOiNmYzA7YmFja2dyb3VuZC1wb3NpdGlvbi14OjIyMHB4O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6Y2FsYygxMDAlIC0gMjIwcHgpIDEwMCU7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO21pbi1oZWlnaHQ6MTMwcHg7cGFkZGluZzowIDMwcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxMDEwfUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXtoZWFkZXIuaGVhZGVyLS1tYWluIGhlYWRlci5oZWFkZXItLW1haW57ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoyMDBweCAxZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gNzVweCBhdXRvfWhlYWRlci5oZWFkZXItLW1haW4gaGVhZGVyLmhlYWRlci0tbWFpbiBhLmhlYWRlcl9fbG9nb3tncmlkLWNvbHVtbjoxLzI7Z3JpZC1yb3c6Mi8zfWhlYWRlci5oZWFkZXItLW1haW4gaGVhZGVyLmhlYWRlci0tbWFpbiAubmF2cy0tdG9we2dyaWQtY29sdW1uOjEvMztncmlkLXJvdzoxLzI7anVzdGlmeS1jb250ZW50OmVuZH1oZWFkZXIuaGVhZGVyLS1tYWluIGhlYWRlci5oZWFkZXItLW1haW4gLm5hdiNoZWFkZXJfX21haW4tbWVudXtncmlkLWNvbHVtbjoxLzM7Z3JpZC1yb3c6My80fX1oZWFkZXIuaGVhZGVyLS1tYWluIC5oZWFkZXJfX2xvZ297ZGlzcGxheTpibG9jaztmbGV4LWJhc2lzOjE3M3B4O2ZsZXgtc2hyaW5rOjA7bWF4LXdpZHRoOjE3M3B4fWhlYWRlci5oZWFkZXItLW1haW4gLmhlYWRlcl9fbG9nbyBpbWd7aGVpZ2h0OmF1dG87bWluLWhlaWdodDoxcHg7d2lkdGg6MTAwJX1oZWFkZXIuaGVhZGVyLS1tYWluIHVsLm5hdntqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9aGVhZGVyLmhlYWRlci0tbWFpbiB1bC5uYXYgbGkubmF2LWl0ZW0gYS5uYXYtbGlua3tjb2xvcjpyZ2JhKDAsMCwwLC45KTtmb250LXdlaWdodDo3MDB9aGVhZGVyLmhlYWRlci0tbWFpbiB1bC5uYXYgbGkubmF2LWl0ZW0gYS5uYXYtbGluazpob3Zlcntjb2xvcjojZDQwNTExfWhlYWRlci5oZWFkZXItLW1haW4gLm5hdnMtLXRvcHtkaXNwbGF5OmZsZXh9aGVhZGVyLmhlYWRlci0tbWFpbiAubmF2cy0tdG9wIHVsLm5hdntib3JkZXItbGVmdDoxcHggc29saWQgcmdiYSgwLDAsMCwuOSk7Zm9udC1zaXplOi43NXJlbX1oZWFkZXIuaGVhZGVyLS1tYWluIC5uYXZzLS10b3AgdWwubmF2Lm5hdi0tbGFuZ3VhZ2VzIGxpLm5hdi1pdGVtIGEubmF2LWxpbmt7Y29sb3I6I2Q0MDUxMX1oZWFkZXIuaGVhZGVyLS1tYWluIC5uYXZzLS10b3AgdWwubmF2OmZpcnN0LWNoaWxke2JvcmRlci1sZWZ0Om5vbmU7b3V0bGluZTpub25lfWhlYWRlci5oZWFkZXItLW1haW4gLm5hdnMtLXRvcCB1bC5uYXY6Zmlyc3QtY2hpbGQubmF2LS1sYW5ndWFnZXMgbGkubmF2LWl0ZW0gYS5uYXYtbGlua3tjb2xvcjpyZ2JhKDAsMCwwLC45KX1oZWFkZXIuaGVhZGVyLS1tYWluIHVsLm5hdi0tbGFuZ3VhZ2Vze2ZsZXgtd3JhcDpub3dyYXB9aGVhZGVyLmhlYWRlci0tbWFpbiB1bC5uYXYtLXNlYXJjaCBsaS5uYXYtaXRlbSAuZmEsaGVhZGVyLmhlYWRlci0tbWFpbiB1bC5uYXYtLXNlYXJjaCBsaS5uYXYtaXRlbSAuZmFyLGhlYWRlci5oZWFkZXItLW1haW4gdWwubmF2LS1zZWFyY2ggbGkubmF2LWl0ZW0gLmZhc3tmb250LXNpemU6Ljg3NWVtO21hcmdpbi1sZWZ0OjFjaH1oZWFkZXIuaGVhZGVyLS1tYWluIHVsLm5hdi0tc2VhcmNoIGxpLm5hdi1pdGVtIC5kcm9wZG93bi1tZW51e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Ym94LXNoYWRvdzpub25lO21pbi13aWR0aDoyMHJlbX1oZWFkZXIuaGVhZGVyLS1tYWluIGE6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtvdXRsaW5lOm5vbmV9aGVhZGVyLmhlYWRlci0tbWFpbiAuaGVhZGVyX19tZW51LXRvZ2dsZXtjb2xvcjpyZ2JhKDAsMCwwLC45KTtkaXNwbGF5Om5vbmU7Zm9udC1zaXplOjEuMjVyZW07bGluZS1oZWlnaHQ6MX1oZWFkZXIuaGVhZGVyLS1tYWluIC5oZWFkZXJfX21lbnUtdG9nZ2xlIC5jbG9zZXJ7ZGlzcGxheTpub25lfWhlYWRlci5oZWFkZXItLW1haW4ubWVudS1vcGVuIC5oZWFkZXJfX21lbnUtdG9nZ2xlIC5jbG9zZXJ7ZGlzcGxheTpibG9ja31oZWFkZXIuaGVhZGVyLS1tYWluLm1lbnUtb3BlbiAuaGVhZGVyX19tZW51LXRvZ2dsZSAub3BlbmVye2Rpc3BsYXk6bm9uZX1oZWFkZXIuaGVhZGVyLS1tYWluIC5ibG9nLW1lbnV7ZGlzcGxheTpmbGV4fUBtZWRpYSAobWF4LXdpZHRoOjgwMHB4KXtoZWFkZXIuaGVhZGVyLS1tYWluICNoZWFkZXJfX21haW4tbWVudXtmb250LXNpemU6Ljg3NXJlbX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpe2hlYWRlci5oZWFkZXItLW1haW57YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ZjMCAwLCNmYzAgNSUsI2ZmZTU3ZiA3OSUsI2ZmZjBiMik7YmFja2dyb3VuZC1jb2xvcjojZmMwO2JhY2tncm91bmQtcG9zaXRpb24teDoyMDBweDtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOmNhbGMoMTAwJSAtIDIwMHB4KSAxMDAlO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjttaW4taGVpZ2h0OjU0cHg7cGFkZGluZzowIDIwcHh9aGVhZGVyLmhlYWRlci0tbWFpbiAuaGVhZGVyX19sb2dve21heC13aWR0aDoxNjBweH1oZWFkZXIuaGVhZGVyLS1tYWluIHVsLm5hdnttYXJnaW4tbGVmdDotMTVweH1oZWFkZXIuaGVhZGVyLS1tYWluIC5oZWFkZXJfX21lbnUtdG9nZ2xle2Rpc3BsYXk6YmxvY2t9aGVhZGVyLmhlYWRlci0tbWFpbiAubmF2cy0tdG9wLGhlYWRlci5oZWFkZXItLW1haW4gdWwubmF2I2hlYWRlcl9fbWFpbi1tZW51e2JhY2tncm91bmQtY29sb3I6cmVkO2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpe2hlYWRlci5oZWFkZXItLW1haW57YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ZjMCAwLCNmYzAgNSUsI2ZmZTU3ZiA3OSUsI2ZmZjBiMik7YmFja2dyb3VuZC1jb2xvcjojZmMwO2JhY2tncm91bmQtcG9zaXRpb24teDoxNDBweDtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOmNhbGMoMTAwJSAtIDE0MHB4KSAxMDAlO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO21pbi1oZWlnaHQ6NTRweDtwYWRkaW5nOjAgMTVweH1oZWFkZXIuaGVhZGVyLS1tYWluIC5oZWFkZXJfX2xvZ297bWFyZ2luLWJvdHRvbTowO21heC13aWR0aDoxMjBweH1oZWFkZXIuaGVhZGVyLS1tYWluIC5oZWFkZXJfX21lbnUtdG9nZ2xle2Rpc3BsYXk6YmxvY2t9aGVhZGVyLmhlYWRlci0tbWFpbiAjaGVhZGVyX19tYWluLW1lbnV7ZGlzcGxheTpub25lO2ZsZXgtYmFzaXM6MTAwJTtmbGV4LXNocmluazowO21hcmdpbi10b3A6MTVweDtvdmVyZmxvdzpoaWRkZW59aGVhZGVyLmhlYWRlci0tbWFpbiAjaGVhZGVyX19tYWluLW1lbnUuYWN0aXZle2Rpc3BsYXk6ZmxleH1oZWFkZXIuaGVhZGVyLS1tYWluIHVsLm5hdi0tbGFuZ3VhZ2Vze2Rpc3BsYXk6bm9uZX1oZWFkZXIuaGVhZGVyLS1tYWluIC5ibG9nLW1lbnV7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9aGVhZGVyLmhlYWRlci0tbWFpbiAuYmxvZy1tZW51IC5mb3JtLWlubGluZSxoZWFkZXIuaGVhZGVyLS1tYWluIC5ibG9nLW1lbnUgLmZvcm0tc2VhcmNoe2ZsZXgtd3JhcDpub3dyYXB9fUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXtoZWFkZXIuaGVhZGVyLS1tYWluLmhlYWRlci0tZml4ZWQtdG9we2xlZnQ6MDttYXJnaW46YXV0bzttYXgtd2lkdGg6MTQwMHB4O3JpZ2h0OjA7dG9wOjB9fUBtZWRpYSAobWF4LXdpZHRoOjQyMHB4KXtoZWFkZXIuaGVhZGVyLS1tYWluICNoZWFkZXJfX21haW4tbWVudTpub3QoLmJsb2ctbWVudSksaGVhZGVyLmhlYWRlci0tbWFpbiAjaGVhZGVyX19tYWluLW1lbnU6bm90KC5ibG9nLW1lbnUpIGF7cGFkZGluZy1sZWZ0Oi41cmVtO3BhZGRpbmctcmlnaHQ6LjVyZW19fUBtZWRpYSAobWF4LXdpZHRoOjM2MHB4KXtoZWFkZXIuaGVhZGVyLS1tYWluICNoZWFkZXJfX21haW4tbWVudTpub3QoLmJsb2ctbWVudSl7cGFkZGluZy1sZWZ0Oi41cmVtO3BhZGRpbmctcmlnaHQ6LjVyZW19aGVhZGVyLmhlYWRlci0tbWFpbiAjaGVhZGVyX19tYWluLW1lbnU6bm90KC5ibG9nLW1lbnUpLmFjdGl2ZXtkaXNwbGF5OmJsb2NrfWhlYWRlci5oZWFkZXItLW1haW4gI2hlYWRlcl9fbWFpbi1tZW51Om5vdCguYmxvZy1tZW51KSBhe3BhZGRpbmctbGVmdDouNXJlbTtwYWRkaW5nLXJpZ2h0Oi41cmVtfX1oZWFkZXIuaGVhZGVyLS1tYWluIC5kcm9wZG93bi1tZW51e2JvcmRlci1yYWRpdXM6MDtib3gtc2hhZG93OjAgOHB4IDE2cHggcmdiYSgwLDAsMCwuMjUpO3RvcDotN3B4IWltcG9ydGFudH1oZWFkZXIuaGVhZGVyLS1tYWluIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVte3BhZGRpbmc6Ny41cHggNGNoIDcuNXB4IDE1cHg7cG9zaXRpb246cmVsYXRpdmV9aGVhZGVyLmhlYWRlci0tbWFpbiAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbTphZnRlcnthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6I2Q0MDUxMTtjb250ZW50OiJcZjA1NCI7ZGlzcGxheTpmbGV4O2ZvbnQtZmFtaWx5OkZvbnQgQXdlc29tZVwgNyBGcmVlO2ZvbnQtd2VpZ2h0OjkwMDtoZWlnaHQ6MTAwJTtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MTVweDt0b3A6MDt3aWR0aDphdXRvfWhlYWRlci5oZWFkZXItLW1haW4gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06YmVmb3Jle2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTtib3R0b206MDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxcHg7bGVmdDoxM3B4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjEzcHh9aGVhZGVyLmhlYWRlci0tbWFpbiAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbS5vZmZzZXQtbGVmdHtwYWRkaW5nLWxlZnQ6My41Y2h9Lm5hdi0tbW9iaWxle2JhY2tncm91bmQtY29sb3I6I2ZmZjtmb250LXNpemU6MXJlbTtmb250LXdlaWdodDo0MDA7aGVpZ2h0OjEwMHZoO292ZXJmbG93LXk6YXV0bztwYWRkaW5nLXRvcDo1NHB4O3Bvc2l0aW9uOmZpeGVkO3JpZ2h0Oi0xMDB2dzt0ZXh0LWFsaWduOmxlZnQ7dG9wOjA7dHJhbnNpdGlvbjpyaWdodCAuMjVzO3dpZHRoOjEwMHZ3O3otaW5kZXg6MTAzMH0ubmF2LS1tb2JpbGUgYXtjb2xvcjpyZ2JhKDAsMCwwLC45KX0ubmF2LS1tb2JpbGUgdWwubmF2e2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgMTVweH0ubmF2LS1tb2JpbGUgdWwubmF2IGxpLm5hdi1pdGVte2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlNWU1ZTU7ZGlzcGxheTpibG9ja30ubmF2LS1tb2JpbGUgdWwubmF2IGxpLm5hdi1pdGVtIC5kcm9wZG93bi1tZW51Pi5kcm9wZG93bi1pdGVtLC5uYXYtLW1vYmlsZSB1bC5uYXYgbGkubmF2LWl0ZW0gLm5hdi1saW5re3BhZGRpbmc6LjYyNXJlbSAuNzVyZW19Lm5hdi0tbW9iaWxlIHVsLm5hdiBsaS5uYXYtaXRlbSAuZHJvcGRvd24tbWVudT4uZHJvcGRvd24taXRlbTpob3ZlciwubmF2LS1tb2JpbGUgdWwubmF2IGxpLm5hdi1pdGVtIC5uYXYtbGluazpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOiNkNDA1MTF9Lm5hdi0tbW9iaWxlIHVsLm5hdiBsaS5uYXYtaXRlbSAuZHJvcGRvd24tbWVudXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lIWltcG9ydGFudDtmbG9hdDpub25lO21hcmdpbjowIDAgMCAxNXB4O3BhZGRpbmc6MDtwb3NpdGlvbjpzdGF0aWMhaW1wb3J0YW50O3RyYW5zZm9ybTpub25lIWltcG9ydGFudH0ubmF2LS1tb2JpbGUgdWwubmF2IGxpLm5hdi1pdGVtIC5kcm9wZG93bi1tZW51Pi5kcm9wZG93bi1pdGVte2JvcmRlci10b3A6MXB4IHNvbGlkICNlNWU1ZTV9Lm5hdi0tbW9iaWxlIHVsLm5hdiBsaS5uYXYtaXRlbSAuZHJvcGRvd24tbWVudT4uZHJvcGRvd24taXRlbS5vZmZzZXQtbGVmdHtwYWRkaW5nLWxlZnQ6M2NofS5uYXYtLW1vYmlsZSB1bC5uYXYtLWxhbmd1YWdlcywubmF2LS1tb2JpbGUgdWwubmF2LS10b3B7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U1ZTVlNTtkaXNwbGF5OmZsZXh9Lm5hdi0tbW9iaWxlIHVsLm5hdi0tbGFuZ3VhZ2VzIGxpLm5hdi1pdGVtLC5uYXYtLW1vYmlsZSB1bC5uYXYtLXRvcCBsaS5uYXYtaXRlbXtib3JkZXItYm90dG9tOm5vbmU7cG9zaXRpb246cmVsYXRpdmV9Lm5hdi0tbW9iaWxlIHVsLm5hdi0tbGFuZ3VhZ2VzIGxpLm5hdi1pdGVtOmFmdGVyLC5uYXYtLW1vYmlsZSB1bC5uYXYtLXRvcCBsaS5uYXYtaXRlbTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlNWU1ZTU7Ym90dG9tOi41cmVtO2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6LjVyZW07d2lkdGg6MXB4fS5uYXYtLW1vYmlsZSB1bC5uYXYtLWxhbmd1YWdlcyBsaS5uYXYtaXRlbTpsYXN0LWNoaWxkOmFmdGVyLC5uYXYtLW1vYmlsZSB1bC5uYXYtLXRvcCBsaS5uYXYtaXRlbTpsYXN0LWNoaWxkOmFmdGVye2NvbnRlbnQ6bm9uZX0ubmF2LS1tb2JpbGUgdWwubmF2LS1zZWFyY2ggbGkubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnV7cGFkZGluZy1ib3R0b206LjVyZW19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXYtLW1vYmlsZXtkaXNwbGF5Om5vbmV9fS5uYXYtLW1vYmlsZSAubmF2LS1tb2JpbGVfX2Nsb3Nle2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjEuMjVlbTtoZWlnaHQ6NTRweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7d2lkdGg6NTRweH0ubWVudS1vcGVuKy5uYXYtLW1vYmlsZXtyaWdodDowfUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXtib2R5W2RhdGEtY291bnRyeT1FRV0gaGVhZGVyLmhlYWRlci0tbWFpbiB1bC5uYXYjaGVhZGVyX19tYWluLW1lbnUgbGkubmF2LWl0ZW0gYS5uYXYtbGlua3tmb250LXNpemU6Ljk1cmVtO3BhZGRpbmc6LjVyZW19fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXtoZWFkZXIuaGVhZGVyLS1tYWlue2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjAwcHggMWZyO2dyaWQtdGVtcGxhdGUtcm93czphdXRvIDc1cHggYXV0b31oZWFkZXIuaGVhZGVyLS1tYWluIGEuaGVhZGVyX19sb2dve2dyaWQtY29sdW1uOjEvMjtncmlkLXJvdzoyLzN9aGVhZGVyLmhlYWRlci0tbWFpbiAubmF2cy0tdG9we2dyaWQtY29sdW1uOjEvMztncmlkLXJvdzoxLzI7anVzdGlmeS1jb250ZW50OmVuZH1oZWFkZXIuaGVhZGVyLS1tYWluIC5uYXYjaGVhZGVyX19tYWluLW1lbnV7Z3JpZC1jb2x1bW46MS8zO2dyaWQtcm93OjMvNH19Lm5hdi0tZW1lcmdlbmN5LXdhcm5pbmdze2JhY2tncm91bmQtY29sb3I6I2YyZjJmMjtib3JkZXItbGVmdDo0cHggc29saWQgI2Q0MDUxMTtjb2xvcjojZDQwNTExO2ZsZXgtd3JhcDpub3dyYXA7bGluZS1oZWlnaHQ6MS4yNX0ubmF2LS1lbWVyZ2VuY3ktd2FybmluZ3MgLm5hdi1pbWFnZXthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAuNzVyZW0gMCAzMHB4fUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsubmF2LS1lbWVyZ2VuY3ktd2FybmluZ3MgLm5hdi1pbWFnZXtwYWRkaW5nOjAgNy41cHggMCAxNXB4fX1mb290ZXIuZm9vdGVye21hcmdpbjo2MHB4IGF1dG8gYXV0bzttYXgtd2lkdGg6MTQwMHB4O3BhZGRpbmctYm90dG9tOjMwcHg7cGFkZGluZy10b3A6MzBweH1mb290ZXIuZm9vdGVyIC5jb250YWluZXItZmx1aWQsZm9vdGVyLmZvb3RlciAuY29udGFpbmVyLWxnLGZvb3Rlci5mb290ZXIgLmNvbnRhaW5lci1tZCxmb290ZXIuZm9vdGVyIC5jb250YWluZXItc20sZm9vdGVyLmZvb3RlciAuY29udGFpbmVyLXhse21hcmdpbjphdXRvO21heC13aWR0aDoxNDAwcHh9Zm9vdGVyLmZvb3RlciAuYnJhbmRze3BhZGRpbmctbGVmdDoxNXB4O3BhZGRpbmctcmlnaHQ6MTVweH1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7Zm9vdGVyLmZvb3RlciAuYnJhbmRze3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH19Zm9vdGVyLmZvb3RlciAuYnJhbmRzIHVsLmxpc3QtLWJyYW5kc3ttYXJnaW4tYm90dG9tOjMwcHh9Zm9vdGVyLmZvb3RlciBhe2NvbG9yOmluaGVyaXR9Zm9vdGVyLmZvb3RlciBhOmhvdmVye2NvbG9yOiNkNDA1MTF9Zm9vdGVyLmZvb3RlciAuZm9vdGVyX19saW5rc3tjb2xvcjojNjY2fWZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3MgLmlvYmplY3RfX2hlYWRpbmcsZm9vdGVyLmZvb3RlciAuZm9vdGVyX19saW5rcyBoMyxmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzIGg0LGZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3MgaDV7Y29sb3I6cmdiYSgwLDAsMCwuOSk7Zm9udC1zaXplOjFyZW19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSBmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzLm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSBmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzLm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSBmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzPi5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gZm9vdGVyLmZvb3RlciAuZm9vdGVyX19saW5rcz4ubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSBmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzLm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gZm9vdGVyLmZvb3RlciAuZm9vdGVyX19saW5rcy5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIGZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3M+Lm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gZm9vdGVyLmZvb3RlciAuZm9vdGVyX19saW5rcz4ubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksZm9vdGVyLmZvb3RlciAuZm9vdGVyX19saW5rcy5yb3c+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3Mucm93PjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzPi5yb3c+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3M+LnJvdz46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksZm9vdGVyLmZvb3RlciAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLmZvb3Rlcl9fbGlua3MubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksZm9vdGVyLmZvb3RlciAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLmZvb3Rlcl9fbGlua3MubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksZm9vdGVyLmZvb3RlciAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLmZvb3Rlcl9fbGlua3M+Lm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGZvb3Rlci5mb290ZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5mb290ZXJfX2xpbmtzPi5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxmb290ZXIuZm9vdGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAuZm9vdGVyX19saW5rcy5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSxmb290ZXIuZm9vdGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAuZm9vdGVyX19saW5rcy5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxmb290ZXIuZm9vdGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAuZm9vdGVyX19saW5rcz4ubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksZm9vdGVyLmZvb3RlciAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLmZvb3Rlcl9fbGlua3M+Lm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpLGZvb3Rlci5mb290ZXIgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAuZm9vdGVyX19saW5rcy5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSxmb290ZXIuZm9vdGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLmZvb3Rlcl9fbGlua3MubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksZm9vdGVyLmZvb3RlciBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5mb290ZXJfX2xpbmtzPi5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSxmb290ZXIuZm9vdGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLmZvb3Rlcl9fbGlua3M+Lm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpLGZvb3Rlci5mb290ZXIgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAuZm9vdGVyX19saW5rcy5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSxmb290ZXIuZm9vdGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLmZvb3Rlcl9fbGlua3MubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksZm9vdGVyLmZvb3RlciBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5mb290ZXJfX2xpbmtzPi5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSxmb290ZXIuZm9vdGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLmZvb3Rlcl9fbGlua3M+Lm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpe3RleHQtYWxpZ246cmlnaHR9fUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KSBhbmQgKG1heC13aWR0aDo3NjcuOThweCl7Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIGZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3MubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIGZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3MubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIGZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3M+Lm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSBmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzPi5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIGZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3MubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSBmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzLm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gZm9vdGVyLmZvb3RlciAuZm9vdGVyX19saW5rcz4ubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSBmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzPi5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxmb290ZXIuZm9vdGVyIC5mb290ZXJfX2xpbmtzLnJvdz46bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksZm9vdGVyLmZvb3RlciAuZm9vdGVyX19saW5rcy5yb3c+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpLGZvb3Rlci5mb290ZXIgLmZvb3Rlcl9fbGlua3M+LnJvdz46bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksZm9vdGVyLmZvb3RlciAuZm9vdGVyX19saW5rcz4ucm93PjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxmb290ZXIuZm9vdGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAuZm9vdGVyX19saW5rcy5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSxmb290ZXIuZm9vdGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAuZm9vdGVyX19saW5rcy5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxmb290ZXIuZm9vdGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAuZm9vdGVyX19saW5rcz4ubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksZm9vdGVyLmZvb3RlciAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLmZvb3Rlcl9fbGlua3M+Lm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpLGZvb3Rlci5mb290ZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5mb290ZXJfX2xpbmtzLm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGZvb3Rlci5mb290ZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5mb290ZXJfX2xpbmtzLm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpLGZvb3Rlci5mb290ZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5mb290ZXJfX2xpbmtzPi5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSxmb290ZXIuZm9vdGVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAuZm9vdGVyX19saW5rcz4ubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksZm9vdGVyLmZvb3RlciBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5mb290ZXJfX2xpbmtzLm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGZvb3Rlci5mb290ZXIgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAuZm9vdGVyX19saW5rcy5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxmb290ZXIuZm9vdGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLmZvb3Rlcl9fbGlua3M+Lm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGZvb3Rlci5mb290ZXIgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAuZm9vdGVyX19saW5rcz4ubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksZm9vdGVyLmZvb3RlciBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5mb290ZXJfX2xpbmtzLm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGZvb3Rlci5mb290ZXIgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAuZm9vdGVyX19saW5rcy5ta3RvRmllbGRXcmFwPjpsYXN0LWNoaWxkOm50aC1jaGlsZCgzKSxmb290ZXIuZm9vdGVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLmZvb3Rlcl9fbGlua3M+Lm1rdG9GaWVsZFdyYXA+Omxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLGZvb3Rlci5mb290ZXIgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAuZm9vdGVyX19saW5rcz4ubWt0b0ZpZWxkV3JhcD46bGFzdC1jaGlsZDpudGgtY2hpbGQoMyl7dGV4dC1hbGlnbjpyaWdodH19Zm9vdGVyLmZvb3RlciAuZm9vdGVyX19zbWFsbHByaW50e2ZvbnQtc2l6ZTouNzVyZW07bWFyZ2luLXRvcDozMHB4O3BhZGRpbmctbGVmdDoxNXB4O3BhZGRpbmctcmlnaHQ6MTVweH1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7Zm9vdGVyLmZvb3RlciAuZm9vdGVyX19zbWFsbHByaW50e3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH19Zm9vdGVyLmZvb3RlciAuZm9vdGVyX19zbWFsbHByaW50IHAsZm9vdGVyLmZvb3RlciAuZm9vdGVyX19zbWFsbHByaW50IHA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnBhcnRuZXJsaW5rc3tiYWNrZ3JvdW5kLWNvbG9yOiNmYzA7bWFyZ2luLXRvcDo2MHB4fS5wYXJ0bmVybGlua3MgdWwubmF2PmxpLm5hdi1pdGVte3BhZGRpbmctYm90dG9tOjcuNXB4O3BhZGRpbmctdG9wOjcuNXB4fS5wYXJ0bmVybGlua3MgdWwubmF2PmxpLm5hdi1pdGVtPmEubmF2LWxpbmt7Zm9udC13ZWlnaHQ6NzAwfS5wYWdlci0tcmljaCtmb290ZXIuZm9vdGVyLC5wYXJ0bmVybGlua3MrLmZvb3RlcnttYXJnaW4tdG9wOjB9LmNvbnRlbnQtaGVhZGVyLGhlYWRlci5jb250ZW50LWhlYWRlcntkaXNwbGF5OmZsZXh9YXJ0aWNsZSsuY29udGVudC1oZWFkZXIsYXJ0aWNsZStoZWFkZXIuY29udGVudC1oZWFkZXJ7bWFyZ2luLXRvcDozMHB4fS5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQsaGVhZGVyLmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dHttYXJnaW4tYm90dG9tOjMwcHh9LmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dCAuaDEsLmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dCAuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5oZXJvX190aXRsZSwuY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IGgxLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dCAuaGVyb19fdGl0bGUsLmhlcm8tc2VjdGlvbiAuaGVyb19fY29udGVudCBoZWFkZXIuY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oZXJvX190aXRsZSxoZWFkZXIuY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oMSxoZWFkZXIuY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3RpdGxlLGhlYWRlci5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQgaDF7bWFyZ2luLWJvdHRvbTowfS5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQgLmF1dGhvcixoZWFkZXIuY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5hdXRob3J7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMwMDA7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC13ZWlnaHQ6NjAwO21hcmdpbjoxcmVtIDA7cGFkZGluZzouMjVlbSAuNWVtO3dpZHRoOmF1dG99LmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dCAuYXV0aG9yIGEsaGVhZGVyLmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dCAuYXV0aG9yIGF7Y29sb3I6aW5oZXJpdH0uY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC50ZWFzZXIsaGVhZGVyLmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dCAudGVhc2Vye2ZvbnQtc2l6ZToxLjI1cmVtO21hcmdpbi10b3A6Ny41cHh9LmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dCAudGVhc2VyIHA6bGFzdC1jaGlsZCxoZWFkZXIuY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC50ZWFzZXIgcDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3N1YnRpdGxlLC5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQgLmxlYWQsLmhlcm8tc2VjdGlvbiAuaGVyb19fY29udGVudCAuY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oZXJvX19zdWJ0aXRsZSwuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IGhlYWRlci5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQgLmhlcm9fX3N1YnRpdGxlLGhlYWRlci5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQgLmhlcm8tc2VjdGlvbiAuaGVyb19fY29udGVudCAuaGVyb19fc3VidGl0bGUsaGVhZGVyLmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dCAubGVhZHtmb250LXNpemU6MS4yNXJlbX0uY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC50YWdzLGhlYWRlci5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQgLnRhZ3N7bWFyZ2luLWJvdHRvbTouMjVlbX0uY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC50YWdzOmVtcHR5LGhlYWRlci5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQgLnRhZ3M6ZW1wdHl7ZGlzcGxheTpub25lfS5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQgLnRlYXNlcisudGFncyxoZWFkZXIuY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC50ZWFzZXIrLnRhZ3N7bWFyZ2luLXRvcDoxcmVtfS5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX3RleHQgLm1ldGEsaGVhZGVyLmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9fdGV4dCAubWV0YXtmb250LXNpemU6Ljc1cmVtO21hcmdpbi10b3A6Ny41cHh9LmNvbnRlbnQtaGVhZGVyLS1pbWFnZSxoZWFkZXIuY29udGVudC1oZWFkZXItLWltYWdle2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dyaWQtdGVtcGxhdGUtcm93czphdXRvO21hcmdpbi10b3A6LTMwcHh9LmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX2ltYWdlLGhlYWRlci5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX19pbWFnZXtncmlkLWNvbHVtbjoxLzI7Z3JpZC1yb3c6MS8yfS5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX19pbWFnZSBpbWcsaGVhZGVyLmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX2ltYWdlIGltZ3toZWlnaHQ6YXV0bzt3aWR0aDoxMDAlfS5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3N1YnRpdGxlLC5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5sZWFkLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX3RleHQgLmhlcm9fX3N1YnRpdGxlLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgaGVhZGVyLmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX3RleHQgLmhlcm9fX3N1YnRpdGxlLGhlYWRlci5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3N1YnRpdGxlLGhlYWRlci5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5sZWFke2ZvbnQtd2VpZ2h0OjcwMH0uY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dCAuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5oZXJvX19zdWJ0aXRsZSA6bGFzdC1jaGlsZCwuY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dCAubGVhZCA6bGFzdC1jaGlsZCwuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oZXJvX19zdWJ0aXRsZSA6bGFzdC1jaGlsZCwuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IGhlYWRlci5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oZXJvX19zdWJ0aXRsZSA6bGFzdC1jaGlsZCxoZWFkZXIuY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dCAuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5oZXJvX19zdWJ0aXRsZSA6bGFzdC1jaGlsZCxoZWFkZXIuY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dCAubGVhZCA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dCxoZWFkZXIuY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z3JpZC1jb2x1bW46MS8yO2dyaWQtcm93OjEvMjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbjowfS5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0PiosaGVhZGVyLmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX3RleHQ+KntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDIwNCwwLC45KTttYXJnaW4tYm90dG9tOjE1cHghaW1wb3J0YW50O3BhZGRpbmc6Ny41cHggMzBweH0uY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dD4qIHAsaGVhZGVyLmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX3RleHQ+KiBwe21hcmdpbjowfS5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0PjpsYXN0LWNoaWxkLGhlYWRlci5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0PjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MCFpbXBvcnRhbnR9LmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX3RleHQgLmgxLC5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3RpdGxlLC5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0IGgxLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX3RleHQgLmhlcm9fX3RpdGxlLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgaGVhZGVyLmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX3RleHQgLmhlcm9fX3RpdGxlLGhlYWRlci5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0IC5oMSxoZWFkZXIuY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dCAuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5oZXJvX190aXRsZSxoZWFkZXIuY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dCBoMXtmb250LXNpemU6MnJlbX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0LGhlYWRlci5jb250ZW50LWhlYWRlci0taW1hZ2UgLmNvbnRlbnQtaGVhZGVyX190ZXh0e3BhZGRpbmctbGVmdDoxNXB4O3BhZGRpbmctcmlnaHQ6MTVweH0uY29udGVudC1oZWFkZXItLWltYWdlIC5jb250ZW50LWhlYWRlcl9fdGV4dCBwOmxhc3QtY2hpbGQsaGVhZGVyLmNvbnRlbnQtaGVhZGVyLS1pbWFnZSAuY29udGVudC1oZWFkZXJfX3RleHQgcDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH19QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX2ltYWdlLGhlYWRlci5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX2ltYWdle2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7ZmxleC1iYXNpczo0MCV9LmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9faW1hZ2UrLmNvbnRlbnQtaGVhZGVyX190ZXh0LGhlYWRlci5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX2ltYWdlKy5jb250ZW50LWhlYWRlcl9fdGV4dHtmbGV4LWJhc2lzOjYwJX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5jb250ZW50LWhlYWRlcixoZWFkZXIuY29udGVudC1oZWFkZXJ7ZGlzcGxheTpibG9ja30uY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX19pbWFnZSxoZWFkZXIuY29udGVudC1oZWFkZXIgLmNvbnRlbnQtaGVhZGVyX19pbWFnZXttYXJnaW4tYm90dG9tOjB9LmNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWhlYWRlcl9faW1hZ2UrLmNvbnRlbnQtaGVhZGVyX190ZXh0LGhlYWRlci5jb250ZW50LWhlYWRlciAuY29udGVudC1oZWFkZXJfX2ltYWdlKy5jb250ZW50LWhlYWRlcl9fdGV4dHtwYWRkaW5nLXRvcDozMHB4fX0uY29udGVudC1oZWFkZXItd3JhcHBlcnthbGlnbi1pdGVtczpzdHJldGNoO2Rpc3BsYXk6ZmxleDtnYXA6NjBweH0uY29udGVudC1oZWFkZXItd3JhcHBlciAuY29udGVudC1oZWFkZXJ7ZmxleC1ncm93OjEuMjV9LmNvbnRlbnQtaGVhZGVyLXdyYXBwZXIgLmNvbnRlbnQtaGVhZGVyLWljb257YWxpZ24tc2VsZjpjZW50ZXI7ZGlzcGxheTpmbGV4O2ZsZXgtYmFzaXM6MTE1cHg7ZmxleC1ncm93OjEwO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O21hcmdpbi1ib3R0b206MzBweH0uY29udGVudC1oZWFkZXItd3JhcHBlciAuY29udGVudC1oZWFkZXItaWNvbiBzdmd7aGVpZ2h0OmF1dG87bWF4LXdpZHRoOjExNXB4fUBtZWRpYSAobWF4LXdpZHRoOjU5OXB4KXsuY29udGVudC1oZWFkZXItd3JhcHBlciAuY29udGVudC1oZWFkZXItaWNvbntkaXNwbGF5Om5vbmV9fWZvcm0gLmZvcm0tZ3JvdXA+dWwubGlzdC0tY2hlY2tib3hlcyxmb3JtIC5mb3JtLWdyb3VwPnVsLmxpc3QtLXJhZGlvc3ttYXJnaW4tYm90dG9tOjB9Zm9ybSAuZm9ybS1ncm91cD4uZmVlZGJhY2t7bWFyZ2luLXRvcDouMXJlbX1mb3JtIC5mb3JtLWdyb3VwPi5mZWVkYmFjayB1bHttYXJnaW4tYm90dG9tOjB9Zm9ybSAuZm9ybS1ncm91cD4uZmVlZGJhY2suZmVlZGJhY2stLWludmFsaWR7Y29sb3I6I2Q0MDUxMX1mb3JtIC5mb3JtLWdyb3VwPi5mZWVkYmFjay5mZWVkYmFjay0tb3B0aW9uYWx7Zm9udC1zaXplOi44NXJlbX1mb3JtIC5mb3JtLWdyb3VwPi5oZWxwLWJsb2Nre2ZvbnQtc2l6ZTouODVyZW07bGluZS1oZWlnaHQ6MS4xO3BhZGRpbmctdG9wOi41cmVtfWZvcm0gLmZvcm0tZ3JvdXA+LmhlbHAtYmxvY2sgdWx7bWFyZ2luLWJvdHRvbTowO3BhZGRpbmctbGVmdDoxcmVtfWZvcm0gLmZvcm0tZ3JvdXA+LmFsZXJ0e21hcmdpbi1ib3R0b206MDtwYWRkaW5nOi4xcmVtIC4yNXJlbX1AbWVkaWEgKG1heC13aWR0aDo5OTEuOThweCl7Zm9ybSAjcHJpY2luZ19mb3JtX19idXR0b257bWFyZ2luLXRvcDoxNXB4fX1mb3JtIGxhYmVse2NvbG9yOiM0OTUwNTd9Zm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXB7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnQ7cGFkZGluZy10b3A6MCFpbXBvcnRhbnQ7cG9zaXRpb246cmVsYXRpdmV9Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBsYWJlbC5ta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH50ZXh0YXJlYS5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5zZWxlY3QubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+dGV4dGFyZWEubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH50ZXh0YXJlYS5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmZvcm0tY29udHJvbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBsYWJlbC5ta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH5zZWxlY3QubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH50ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmZvcm0tY29udHJvbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5zZWxlY3QubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfnRleHRhcmVhLm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+dGV4dGFyZWEubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5mb3JtLWNvbnRyb2wsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwubWt0b0xhYmVsfmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLmNvbnRyb2wtbGFiZWx+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5jb250cm9sLWxhYmVsfnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLmNvbnRyb2wtbGFiZWx+dGV4dGFyZWEubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfnRleHRhcmVhLm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+dGV4dGFyZWEubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBsYWJlbC5jb250cm9sLWxhYmVsfmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwubWt0b0xhYmVsfmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5jb250cm9sLWxhYmVsfmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLmNvbnRyb2wtbGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLmNvbnRyb2wtbGFiZWx+dGV4dGFyZWEubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH50ZXh0YXJlYS5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfnRleHRhcmVhLm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD4uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVye3BhZGRpbmctdG9wOjEuNXJlbX0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5idXR0b24uZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmJ1dHRvbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmRpdi5mb3JtLWNvbnRyb2wsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+ZGl2LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5mb3JtLWNvbnRyb2wsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfmJ1dHRvbi5mb3JtLWNvbnRyb2wsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5idXR0b24uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfmRpdi5mb3JtLWNvbnRyb2wsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5kaXYuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfmlucHV0LmZvcm0tY29udHJvbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfmlucHV0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5zZWxlY3QuZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfnNlbGVjdC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfnNlbGVjdC5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmJ1dHRvbi5mb3JtLWNvbnRyb2wsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmJ1dHRvbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5kaXYuZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5kaXYuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QuZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH5idXR0b24uZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfmJ1dHRvbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfmRpdi5mb3JtLWNvbnRyb2wsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+ZGl2LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQuZm9ybS1jb250cm9sLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfmlucHV0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+c2VsZWN0LmZvcm0tY29udHJvbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH5zZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lciwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfnNlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmJ1dHRvbi5mb3JtLWNvbnRyb2wsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmJ1dHRvbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5kaXYuZm9ybS1jb250cm9sLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5kaXYuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuZm9ybS1jb250cm9sLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5mb3JtLWNvbnRyb2wsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfmJ1dHRvbi5mb3JtLWNvbnRyb2wsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+YnV0dG9uLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+ZGl2LmZvcm0tY29udHJvbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5kaXYuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5mb3JtLWNvbnRyb2wsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfmlucHV0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5ta3RvTGFiZWx+c2VsZWN0LmZvcm0tY29udHJvbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbH5zZWxlY3QubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsfnNlbGVjdC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH5zZWxlY3QubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5idXR0b24uZm9ybS1jb250cm9sLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+YnV0dG9uLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5kaXYuZm9ybS1jb250cm9sLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+ZGl2LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5mb3JtLWNvbnRyb2wsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0LmZvcm0tY29udHJvbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH5idXR0b24uZm9ybS1jb250cm9sLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbH5idXR0b24uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+ZGl2LmZvcm0tY29udHJvbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+ZGl2LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsfmlucHV0LmZvcm0tY29udHJvbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+c2VsZWN0LmZvcm0tY29udHJvbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWx+c2VsZWN0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBsYWJlbC5ta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLmNvbnRyb2wtbGFiZWx+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5jb250cm9sLWxhYmVsfnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+YnV0dG9uLmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5idXR0b24uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5kaXYuZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmRpdi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QuZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5idXR0b24uZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+YnV0dG9uLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5kaXYuZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+ZGl2LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+c2VsZWN0LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5zZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH5zZWxlY3QubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5idXR0b24uZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5idXR0b24uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+ZGl2LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+ZGl2LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+YnV0dG9uLmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH5idXR0b24uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH5kaXYuZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfmRpdi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfmlucHV0LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfnNlbGVjdC5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+c2VsZWN0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLmNvbnRyb2wtbGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBsYWJlbC5ta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLmNvbnRyb2wtbGFiZWx+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwuY29udHJvbC1sYWJlbH5zZWxlY3QubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5idXR0b24uZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5idXR0b24uc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+ZGl2LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+ZGl2LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QuZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5idXR0b24uZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfmJ1dHRvbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfmRpdi5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+ZGl2LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+aW5wdXQuZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5pbnB1dC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsfnNlbGVjdC5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbH5zZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+c2VsZWN0Lm1rdG9GaWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGxhYmVsLnh4eHhta3RvTGFiZWx+aW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+YnV0dG9uLmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmJ1dHRvbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+ZGl2LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPmRpdi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+YnV0dG9uLmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWx+YnV0dG9uLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfmRpdi5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfmRpdi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbH5pbnB1dC5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfmlucHV0LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfnNlbGVjdC5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsfnNlbGVjdC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPmJ1dHRvbi5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+YnV0dG9uLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+ZGl2LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD5kaXYuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD5pbnB1dC5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH4uaW5wdXQtZ3JvdXA+aW5wdXQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfi5pbnB1dC1ncm91cD5zZWxlY3QuZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+LmlucHV0LWdyb3VwPnNlbGVjdC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+YnV0dG9uLmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfmJ1dHRvbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+ZGl2LmZvcm0tY29udHJvbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfmRpdi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+aW5wdXQuZm9ybS1jb250cm9sLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWx+aW5wdXQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsfnNlbGVjdC5mb3JtLWNvbnRyb2wsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbH5zZWxlY3Quc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcntmb250LXdlaWdodDo0MDA7aGVpZ2h0OmNhbGMoMS41ZW0gKyAxLjg3NXJlbSArIDJweCk7dGV4dC1hbGlnbjpsZWZ0fS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLWFwcGVuZCBidXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5pbnB1dC1ncm91cC1wcmVwZW5kIGJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5pbnB1dC1ncm91cC1hcHBlbmQgYnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLXByZXBlbmQgYnV0dG9uLm1rdG9CdXR0b24sZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLWFwcGVuZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5pbnB1dC1ncm91cC1hcHBlbmQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLWFwcGVuZCBib2R5PiNvdC1zZGstYnRuLGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4sZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLXByZXBlbmQgLmlucHV0LWdyb3VwLXRleHQsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLXByZXBlbmQgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBib2R5PiNvdC1zZGstYnRue2JhY2tncm91bmQtY29sb3I6I2ZmZjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21pbi13aWR0aDpjYWxjKDEuNWVtICsgMS44NzVyZW0gKyAycHgpO3dpZHRoOmNhbGMoMS41ZW0gKyAxLjg3NXJlbSArIDJweCl9Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWwsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWwsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbHtmb250LXNpemU6Ljg3NXJlbTtsZWZ0Oi43NXJlbTtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDouMzVyZW07ei1pbmRleDoxMH1mb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsLS1iZWZvcmUtcHJlcGVuZHtsZWZ0OmNhbGMoMi42MjVyZW0gKyAxLjVlbSArIDJweCl9Zm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdCxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCBzZWxlY3R7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgdmlld0JveD0nMCAwIDE0IDknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sOnNwYWNlPSdwcmVzZXJ2ZScgc3R5bGU9J2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoyJyUzRSUzQ3BhdGggZD0nTTYuNDY5IDguMzk5YS42OC42OCAwIDAgMCAuNTMxLjI1LjY4LjY4IDAgMCAwIC41MzEtLjI1bDYuMDYzLTYuMDYzYS43MTkuNzE5IDAgMCAwIC4yMTgtLjUzMS43MjIuNzIyIDAgMCAwLS4yMTgtLjUzMWwtLjY4OC0uNjg4YS43ODguNzg4IDAgMCAwLS41MzEtLjIzNC42NzMuNjczIDAgMCAwLS41MzEuMjAzTDcgNS4zOTkgMi4xNTYuNTU1YS42NzMuNjczIDAgMCAwLS41MzEtLjIwMy43ODguNzg4IDAgMCAwLS41MzEuMjM0bC0uNjg4LjY4OGEuNzIyLjcyMiAwIDAgMC0uMjE4LjUzMWMwIC4yMDkuMDcyLjM4Ni4yMTguNTMxbDYuMDYzIDYuMDYzWicgc3R5bGU9J2ZpbGw6JTIzNjY2O2ZpbGwtb3BhY2l0eTouOTtmaWxsLXJ1bGU6bm9uemVybycvJTNFJTNDL3N2ZyUzRSIpO2JhY2tncm91bmQtcG9zaXRpb246cmlnaHQgMWVtIGNlbnRlcjtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOjE0cHggOXB4O2JvcmRlci1yYWRpdXM6LjI1cmVtO3BhZGRpbmctcmlnaHQ6M2VtfWZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5pbnB1dC1ncm91cC1wcmVwZW5kKy5zZWxlY3R7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOi4yNXJlbTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtfWZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3R7aGVpZ2h0OmF1dG8haW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuMTttaW4taGVpZ2h0OmNhbGMoMS41ZW0gKyAxLjg3NXJlbSArIDJweCl9Zm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdCAuc2VsZWN0ZWQtaXRlbS10aHVtYm5haWx7bWFyZ2luLXJpZ2h0Oi43NWVtfWZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3R+LmRyb3Bkb3duLW1lbnV7cGFkZGluZzowO3dpZHRoOjEwMCV9Zm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdH4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbXtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjY2NjO2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6NDBweCAxZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gYXV0bztsaW5lLWhlaWdodDoxO3BhZGRpbmc6MnB4IDA7d2hpdGUtc3BhY2U6bm9ybWFsfWZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3R+LmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bGFzdC1jaGlsZHtib3JkZXItYm90dG9tOm5vbmV9Zm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdH4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbV9fdGh1bWJuYWlse2FsaWduLXNlbGY6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6cmVkO2dyaWQtY29sdW1uOjEvMjtncmlkLXJvdzoxLzM7aGVpZ2h0OmF1dG87anVzdGlmeS1zZWxmOmNlbnRlcjttYXgtd2lkdGg6MzBweH1mb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuc2VsZWN0fi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtX190aXRsZXtmb250LXdlaWdodDo3MDA7Z3JpZC1jb2x1bW46Mi8zO2dyaWQtcm93OjEvMjtwYWRkaW5nOi4yZW0gLjJlbSAwfWZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3R+LmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW1fX2Rlc2NyaXB0aW9ue2FsaWduLXNlbGY6ZW5kO2ZvbnQtd2VpZ2h0OjEwMDtncmlkLWNvbHVtbjoyLzM7Z3JpZC1yb3c6Mi8zO3BhZGRpbmc6MCAuMmVtIC4yZW19QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpe2Zvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3R+LmRyb3Bkb3duLW1lbnV7bGVmdDotMTBweCFpbXBvcnRhbnQ7d2lkdGg6MTAwJSFpbXBvcnRhbnR9Zm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLnNlbGVjdH4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbXt3aGl0ZS1zcGFjZTpub3JtYWx9fWZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3QjcHJpY2luZ19mb3JtX19wYWNrYWdlfi5kcm9wZG93bi1tZW51Pi5kcm9wZG93bi1pdGVtX19oaWdobGlnaHRlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmYzA7cGFkZGluZy1ib3R0b206MTBweDtwYWRkaW5nLXRvcDoxMHB4fWZvcm06bm90KC5mb3JtLWhvcml6b250YWwpIC5mb3JtLWdyb3VwIC5zZWxlY3QjcHJpY2luZ19mb3JtX19wYWNrYWdlfi5kcm9wZG93bi1tZW51Pi5kcm9wZG93bi1pdGVtX19oaWdobGlnaHRlZDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmMGMwMDB9Zm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgI3ByaWNpbmdfZm9ybV9fZGltZW5zaW9uc19kaXNjbGFpbWVye2Rpc3BsYXk6bm9uZX1mb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuaW5wdXQtZ3JvdXA+LnNlbGVjdH4uZHJvcGRvd24tbWVudXt3aWR0aDpjYWxjKDEwMCUgLSAxLjVlbSAtIDEuODc1cmVtIC0gMnB4KX1mb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuaW5wdXQtZ3JvdXAtYXBwZW5kIGJ1dHRvbixmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBidXR0b257Ym9yZGVyLWNvbG9yOiNjY2N9Zm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLWFwcGVuZCBidXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSxmb3JtOm5vdCguZm9ybS1ob3Jpem9udGFsKSAuZm9ybS1ncm91cCAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBidXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtib3gtc2hhZG93Om5vbmV9Zm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLWFwcGVuZCBidXR0b246aG92ZXIsZm9ybTpub3QoLmZvcm0taG9yaXpvbnRhbCkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwLXByZXBlbmQgYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2YyZjJmMn1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmZpZWxkc2V0LWhvcml6b250YWwgLmZvcm0tZ3JvdXAsLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cHtncmlkLWdhcDowIDE1cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgI2ViZWJlYjtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1hcmVhczoibGFiZWwgY29udHJvbCBoZWxwIiAibWlkZGxlbGVmdCBmZWVkYmFjayBoZWxwIiAiYm90dG9tbGVmdCBpbnN0YW50ZmVlZGJhY2sgaGVscCI7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjNmciA1ZnIgNGZyO2dyaWQtdGVtcGxhdGUtcm93czphdXRvIGF1dG8gYXV0bzttYXJnaW46MH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5maWVsZHNldC1ob3Jpem9udGFsIC5mb3JtLWdyb3VwLC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXB7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjJmciA1ZnIgM2ZyfX0uZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD5sYWJlbCwuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPmxhYmVse2dyaWQtYXJlYTpsYWJlbDtsaW5lLWhlaWdodDoxLjU7cGFkZGluZy10b3A6Y2FsYyguMzc1cmVtICsgMXB4KX0uZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cCAuY3VzdG9tLWNvbnRyb2wsLmZpZWxkc2V0LWhvcml6b250YWwgLmZvcm0tZ3JvdXA+LmJ0biwuZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD4uYnV0dG9uLWNvbnRhaW5lciwuZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD4uZm9ybS1jb250cm9sLC5maWVsZHNldC1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5maWVsZHNldC1ob3Jpem9udGFsIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmZvcm0tZ3JvdXA+YnV0dG9uLm1rdG9CdXR0b24sLmZpZWxkc2V0LWhvcml6b250YWwgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwuZmllbGRzZXQtaG9yaXpvbnRhbCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCwuZmllbGRzZXQtaG9yaXpvbnRhbCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkLC5maWVsZHNldC1ob3Jpem9udGFsIC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIC5mb3JtLWdyb3VwPmlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCwuZmllbGRzZXQtaG9yaXpvbnRhbCBib2R5LmZvcm0tZ3JvdXA+I290LXNkay1idG4sLmZpZWxkc2V0LWhvcml6b250YWwgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmZvcm0tZ3JvdXA+YnV0dG9uLm1rdG9CdXR0b24sLmZpZWxkc2V0LWhvcml6b250YWwgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLmZpZWxkc2V0LWhvcml6b250YWwgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLC5maWVsZHNldC1ob3Jpem9udGFsIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkLC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXAgLmN1c3RvbS1jb250cm9sLC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA+LmJ0biwuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPi5idXR0b24tY29udGFpbmVyLC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA+LmZvcm0tY29udHJvbCwuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLC5mb3JtLWhvcml6b250YWwgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuZm9ybS1ncm91cD5idXR0b24ubWt0b0J1dHRvbiwuZm9ybS1ob3Jpem9udGFsIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1ncm91cD5pbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLmZvcm0taG9yaXpvbnRhbCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCwuZm9ybS1ob3Jpem9udGFsIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQsLmZvcm0taG9yaXpvbnRhbCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuZm9ybS1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLmZvcm0taG9yaXpvbnRhbCBib2R5LmZvcm0tZ3JvdXA+I290LXNkay1idG4sLmZvcm0taG9yaXpvbnRhbCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuZm9ybS1ncm91cD5idXR0b24ubWt0b0J1dHRvbiwuZm9ybS1ob3Jpem9udGFsIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0tZ3JvdXA+aW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5mb3JtLWhvcml6b250YWwgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLC5mb3JtLWhvcml6b250YWwgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD5idXR0b24ubWt0b0J1dHRvbiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA+YnV0dG9uLm1rdG9CdXR0b24sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5maWVsZHNldC1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZpZWxkc2V0LWhvcml6b250YWwgLmZvcm0tZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZpZWxkc2V0LWhvcml6b250YWwgLmZvcm0tZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cD5zZWxlY3QubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPnRleHRhcmVhLm1rdG9GaWVsZCwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biAuZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cD5pbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmZpZWxkc2V0LWhvcml6b250YWwgLmZvcm0tZ3JvdXA+YnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cD5idXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5maWVsZHNldC1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5maWVsZHNldC1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPnNlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD50ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPmlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA+c2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA+dGV4dGFyZWEubWt0b0ZpZWxke2dyaWQtYXJlYTpjb250cm9sfS5maWVsZHNldC1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPnVsLmxpc3QtLWNoZWNrYm94ZXMsLmZpZWxkc2V0LWhvcml6b250YWwgLmZvcm0tZ3JvdXA+dWwubGlzdC0tcmFkaW9zLC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA+dWwubGlzdC0tY2hlY2tib3hlcywuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPnVsLmxpc3QtLXJhZGlvc3tncmlkLWFyZWE6Y29udHJvbH0uZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD4uZmVlZGJhY2ssLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cD4uZmVlZGJhY2t7Z3JpZC1hcmVhOmZlZWRiYWNrfS5maWVsZHNldC1ob3Jpem9udGFsIC5mb3JtLWdyb3VwPi5oZWxwLWJsb2NrLC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA+LmhlbHAtYmxvY2t7Z3JpZC1hcmVhOmhlbHA7cGFkZGluZy10b3A6MH0uZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD4uYWxlcnQsLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cD4uYWxlcnR7Z3JpZC1hcmVhOmluc3RhbnRmZWVkYmFjaztqdXN0aWZ5LXNlbGY6c3RyZXRjaH0uZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD4uZHVtbXktMTExLC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA+LmR1bW15LTExMXtncmlkLWFyZWE6Ym90dG9tbGVmdH0uZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cD4uZHVtbXktMjIyLC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA+LmR1bW15LTIyMntncmlkLWFyZWE6bWlkZGxlbGVmdH0uZmllbGRzZXQtaG9yaXpvbnRhbCAuZm9ybS1ncm91cCAuYnV0dG9uLWNvbnRhaW5lciwuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwIC5idXR0b24tY29udGFpbmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrfWZvcm0gLmZvcm0tZ3JvdXB7cGFkZGluZzoxcmVtIDB9Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taGFzLWVycm9yIGlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1oYXMtZXJyb3Igc2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1oYXMtZXJyb3IgdGV4dGFyZWEubWt0b0ZpZWxkLC5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taGFzLWVycm9yIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taGFzLWVycm9yIGlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taGFzLWVycm9yIHNlbGVjdC5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtLWhhcy1lcnJvciB0ZXh0YXJlYS5ta3RvRmllbGQsZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1oYXMtZXJyb3IgLmZvcm0tY29udHJvbCxmb3JtIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtLWhhcy1lcnJvciAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taGFzLWVycm9yIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkLGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taGFzLWVycm9yIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQsZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1oYXMtZXJyb3IgLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taGFzLWVycm9yIC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taGFzLWVycm9yIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taGFzLWVycm9yIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZCxmb3JtIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtLWhhcy1lcnJvciBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIHRleHRhcmVhLm1rdG9GaWVsZHtib3JkZXI6MXB4IHNvbGlkICNkNDA1MTF9Zm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1oYXMtZXJyb3IgbGFiZWx7Y29sb3I6I2Q0MDUxMX0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1pcy12YWxpZCBpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taXMtdmFsaWQgc2VsZWN0Lm1rdG9GaWVsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1pcy12YWxpZCB0ZXh0YXJlYS5ta3RvRmllbGQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1pcy12YWxpZCBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBmb3JtIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtLWlzLXZhbGlkIGlucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taXMtdmFsaWQgc2VsZWN0Lm1rdG9GaWVsZCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taXMtdmFsaWQgdGV4dGFyZWEubWt0b0ZpZWxkLGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taXMtdmFsaWQgLmZvcm0tY29udHJvbCxmb3JtIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtLWlzLXZhbGlkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1pcy12YWxpZCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgc2VsZWN0Lm1rdG9GaWVsZCxmb3JtIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtLWlzLXZhbGlkIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQsZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1pcy12YWxpZCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsZm9ybSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLS1pcy12YWxpZCAuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtLWlzLXZhbGlkIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taXMtdmFsaWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkLGZvcm0gLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC0taXMtdmFsaWQgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGR7Ym9yZGVyOjFweCBzb2xpZCAjMjhhNzQ1fS5mb3JtLXNlYXJjaHttYXJnaW4tYm90dG9tOjFyZW19LmZvcm0tc2VhcmNoIGlucHV0e21hcmdpbi1yaWdodDouNWVtfUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsuZm9ybS1zZWFyY2ggaW5wdXR7bWFyZ2luLWJvdHRvbTouNXJlbX19LmZvcm1fX2RpbWVuc2lvbnN7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcH0uZm9ybV9fZGltZW5zaW9ucyAuZm9ybS1ncm91cHttYXgtd2lkdGg6Ni43NXJlbX0uZm9ybV9fZGltZW5zaW9ucyAuZm9ybS1zaWdue2FsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1zZWxmOnN0cmV0Y2g7ZGlzcGxheTpmbGV4O2ZvbnQtc2l6ZToxLjVlbTtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1ib3R0b206MXJlbTt3aWR0aDozMHB4fS5mb3JtX19kaW1lbnNpb25zIC5mb3JtLXNpZ24tLXdpZGV7d2lkdGg6NDVweH0uanMtc3VibWl0LWNvbnRhaW5lcntkaXNwbGF5OmlubGluZS1ibG9ja30ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybS5sb2NhdG9yX19zZWFyY2ggLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsW2Zvcj1zZWFyY2hfaW5wdXRdLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBmb3JtLmxvY2F0b3JfX3NlYXJjaCAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsW2Zvcj1zZWFyY2hfaW5wdXRdLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybS5sb2NhdG9yX19zZWFyY2ggLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsW2Zvcj1zZWFyY2hfaW5wdXRdLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgZm9ybS5sb2NhdG9yX19zZWFyY2ggLmZvcm0tZ3JvdXAgbGFiZWwueHh4eG1rdG9MYWJlbFtmb3I9c2VhcmNoX2lucHV0XSxmb3JtLmxvY2F0b3JfX3NlYXJjaCAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsW2Zvcj1zZWFyY2hfaW5wdXRdLGZvcm0ubG9jYXRvcl9fc2VhcmNoIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsW2Zvcj1zZWFyY2hfaW5wdXRdLGZvcm0ubG9jYXRvcl9fc2VhcmNoIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsW2Zvcj1zZWFyY2hfaW5wdXRdLGZvcm0ubG9jYXRvcl9fc2VhcmNoIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbFtmb3I9c2VhcmNoX2lucHV0XSxmb3JtLmxvY2F0b3JfX3NlYXJjaCAuZm9ybS1ncm91cCBsYWJlbC5jb250cm9sLWxhYmVsW2Zvcj1zZWFyY2hfaW5wdXRde21hcmdpbi1ib3R0b206LjI1cmVtO3Bvc2l0aW9uOnN0YXRpY30ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybS5sb2NhdG9yX19zZWFyY2ggLmZvcm0tZ3JvdXAgaW5wdXQjc2VhcmNoX2lucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSwuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBmb3JtLmxvY2F0b3JfX3NlYXJjaCAuZm9ybS1ncm91cCBpbnB1dCNzZWFyY2hfaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgZm9ybS5sb2NhdG9yX19zZWFyY2ggLmZvcm0tZ3JvdXAgaW5wdXQjc2VhcmNoX2lucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtLmxvY2F0b3JfX3NlYXJjaCAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQjc2VhcmNoX2lucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtLmxvY2F0b3JfX3NlYXJjaCAuZm9ybS1ncm91cCAuc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dCNzZWFyY2hfaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLGZvcm0ubG9jYXRvcl9fc2VhcmNoIC5mb3JtLWdyb3VwIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQjc2VhcmNoX2lucHV0Lm1rdG9GaWVsZDppcyhbdHlwZT10ZXh0XSxbdHlwZT11cmxdLFt0eXBlPWVtYWlsXSxbdHlwZT10ZWxdLFt0eXBlPW51bWJlcl0sW3R5cGU9ZGF0ZV0sW3R5cGU9cGFzc3dvcmRdKSxmb3JtLmxvY2F0b3JfX3NlYXJjaCAuZm9ybS1ncm91cCBpbnB1dCNzZWFyY2hfaW5wdXQuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lcixmb3JtLmxvY2F0b3JfX3NlYXJjaCAuZm9ybS1ncm91cCBpbnB1dC5mb3JtLWNvbnRyb2wjc2VhcmNoX2lucHV0e3BhZGRpbmctYm90dG9tOjE1cHg7cGFkZGluZy10b3A6MTVweH1ib2R5LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuZm9ybS1ncm91cCxib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuZm9ybS1ncm91cHtwYWRkaW5nLWxlZnQ6Ny41cHg7cGFkZGluZy1yaWdodDo3LjVweH1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7Ym9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXAsYm9keS5ib2R5X3BhZ2VzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXB7Z3JpZC10ZW1wbGF0ZS1hcmVhczoibGFiZWwgY29udHJvbCIgImxhYmVsIGhlbHAiICJsYWJlbCBmZWVkYmFjayIgImxhYmVsIGluc3RhbnRmZWVkYmFjayI7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjNmciA4ZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gYXV0byBhdXRvIGF1dG99Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGJvZHkuYm9keV9hcnRpY2xlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgYm9keS5ib2R5X3BhZ2VzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXAgbGFiZWwubWt0b0xhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBib2R5LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVsLGJvZHkuYm9keV9hcnRpY2xlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5mb3JtLWdyb3VwIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWwsYm9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWwsYm9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBsYWJlbC5ta3RvTGFiZWwsYm9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXAgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsLGJvZHkuYm9keV9hcnRpY2xlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5mb3JtLWdyb3VwIGxhYmVsLmNvbnRyb2wtbGFiZWwsYm9keS5ib2R5X3BhZ2VzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXAgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbCxib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuZm9ybS1ncm91cCAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbCxib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbCxib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuZm9ybS1ncm91cCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWwsYm9keS5ib2R5X3BhZ2VzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGJvZHkuYm9keV9hcnRpY2xlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGJvZHkuYm9keV9wYWdlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5mb3JtLWdyb3VwIGxhYmVsLm1rdG9MYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGJvZHkuYm9keV9hcnRpY2xlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5mb3JtLWdyb3VwIGxhYmVsLnh4eHhta3RvTGFiZWwsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuZm9ybS1ncm91cCBsYWJlbC54eHh4bWt0b0xhYmVse3BhZGRpbmctdG9wOjB9Ym9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXAsYm9keS5ib2R5X3BhZ2VzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXB7cGFkZGluZy1sZWZ0OjE1cHg7cGFkZGluZy1yaWdodDoxNXB4fX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpe2JvZHkuYm9keV9hcnRpY2xlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5mb3JtLWdyb3VwLGJvZHkuYm9keV9wYWdlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5mb3JtLWdyb3Vwe3BhZGRpbmctbGVmdDozMHB4O3BhZGRpbmctcmlnaHQ6MzBweH19Ym9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmZvcm0tZ3JvdXA6bnRoLWNoaWxkKDJuKSxib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuZm9ybS1ncm91cDpudGgtY2hpbGQoMm4pe2JhY2tncm91bmQtY29sb3I6I2YyZjJmMn0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgYm9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgbGFiZWwubWt0b0xhYmVsLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSBsYWJlbC5ta3RvTGFiZWwsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGJvZHkuYm9keV9hcnRpY2xlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIGxhYmVsLnh4eHhta3RvTGFiZWwsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGJvZHkuYm9keV9wYWdlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIGxhYmVsLnh4eHhta3RvTGFiZWwsYm9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLmhlbHAtYmxvY2sgYixib2R5LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuaGVscC1ibG9jayBzdHJvbmcsYm9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbCxib2R5LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbCxib2R5LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGxhYmVsLm1rdG9MYWJlbCxib2R5LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGxhYmVsLnh4eHhta3RvTGFiZWwsYm9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgbGFiZWwuY29udHJvbC1sYWJlbCxib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAuaGVscC1ibG9jayBiLGJvZHkuYm9keV9wYWdlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5oZWxwLWJsb2NrIHN0cm9uZyxib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsLGJvZHkuYm9keV9wYWdlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCBsYWJlbC54eHh4bWt0b0xhYmVsLGJvZHkuYm9keV9wYWdlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgbGFiZWwubWt0b0xhYmVsLGJvZHkuYm9keV9wYWdlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgbGFiZWwueHh4eG1rdG9MYWJlbCxib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSBsYWJlbC5jb250cm9sLWxhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgYm9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgbGFiZWwubWt0b0xhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgYm9keS5ib2R5X3BhZ2VzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgbGFiZWwubWt0b0xhYmVsLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgYm9keS5ib2R5X2FydGljbGVzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgbGFiZWwueHh4eG1rdG9MYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIGJvZHkuYm9keV9wYWdlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIGxhYmVsLnh4eHhta3RvTGFiZWx7Zm9udC13ZWlnaHQ6NzAwfWJvZHkuYm9keV9hcnRpY2xlc19kZXRhaWwgZm9ybTpub3QoI3ByaWNpbmdfZm9ybSk6bm90KC5sb2NhdG9yX19zZWFyY2gpIGxlZ2VuZCxib2R5LmJvZHlfcGFnZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSBsZWdlbmR7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi10b3A6MWVtfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXtib2R5LmJvZHlfYXJ0aWNsZXNfZGV0YWlsIGZvcm06bm90KCNwcmljaW5nX2Zvcm0pOm5vdCgubG9jYXRvcl9fc2VhcmNoKSBsZWdlbmQsYm9keS5ib2R5X3BhZ2VzX2RldGFpbCBmb3JtOm5vdCgjcHJpY2luZ19mb3JtKTpub3QoLmxvY2F0b3JfX3NlYXJjaCkgbGVnZW5ke2ZvbnQtc2l6ZToxLjc1cmVtfX0jcHJpY2luZ19mb3JtX19idXR0b24gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24rYnV0dG9uLm1rdG9CdXR0b24sI3ByaWNpbmdfZm9ybV9fYnV0dG9uIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbitidXR0b24ubWt0b0J1dHRvbiwjcHJpY2luZ19mb3JtX19idXR0b24gYm9keT5idXR0b24rI290LXNkay1idG4sI3ByaWNpbmdfZm9ybV9fYnV0dG9uIGJ1dHRvbisuYnRuLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgI3ByaWNpbmdfZm9ybV9fYnV0dG9uIGJ1dHRvbitidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAjcHJpY2luZ19mb3JtX19idXR0b24gYnV0dG9uK2J1dHRvbi5ta3RvQnV0dG9ue21hcmdpbi1sZWZ0OjFlbX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7I3ByaWNpbmdfZm9ybV9fYnV0dG9uIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uK2J1dHRvbi5ta3RvQnV0dG9uLCNwcmljaW5nX2Zvcm1fX2J1dHRvbiBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24rYnV0dG9uLm1rdG9CdXR0b24sI3ByaWNpbmdfZm9ybV9fYnV0dG9uIGJvZHk+YnV0dG9uKyNvdC1zZGstYnRuLCNwcmljaW5nX2Zvcm1fX2J1dHRvbiBidXR0b24rLmJ0biwjcHJpY2luZ19mb3JtX19idXR0b24gYnV0dG9uOm50aC1sYXN0LWNoaWxkKDIpLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgI3ByaWNpbmdfZm9ybV9fYnV0dG9uIGJ1dHRvbitidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAjcHJpY2luZ19mb3JtX19idXR0b24gYnV0dG9uK2J1dHRvbi5ta3RvQnV0dG9ue21hcmdpbjouMjVlbX19LnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgKntjb2xvcjpyZ2JhKDAsMCwwLC45KSFpbXBvcnRhbnR9LnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd257Ym9yZGVyLXJhZGl1czowfS5zZWxlY3QyLWNvbnRhaW5lcjpub3QoLnNlbGVjdDIpIC5zZWxlY3QyLWRyb3Bkb3duIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZHtib3JkZXItY29sb3I6I2NjY30uc2VsZWN0Mi1jb250YWluZXI6bm90KC5zZWxlY3QyKSAuc2VsZWN0Mi1kcm9wZG93biB1bC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnN7Zm9udC1zaXplOjFyZW19LnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gdWwuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gdWwuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQsLnNlbGVjdDItY29udGFpbmVyOm5vdCguc2VsZWN0MikgLnNlbGVjdDItZHJvcGRvd24gdWwuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbjpob3ZlcntiYWNrZ3JvdW5kOiNkZGQ7Y29sb3I6cmdiYSgwLDAsMCwuOSl9LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmV9LnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7Y29sb3I6cmdiYSgwLDAsMCwuOSk7bGluZS1oZWlnaHQ6MS41O3BhZGRpbmctbGVmdDowfS5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3Rpb24gLnNlbGVjdDItc2VsZWN0aW9ue2JvcmRlcjpub25lO2hlaWdodDphdXRvfS5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7b3BhY2l0eTowfS5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyOmJlZm9yZXtjb250ZW50OiJcZjA3OCI7Zm9udC1mYW1pbHk6Rm9udCBBd2Vzb21lXCA3IEZyZWU7Zm9udC1zaXplOi42cmVtO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjcwMDtsaW5lLWhlaWdodDoxO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6LjVlbTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS5idG4uYnRuLXByaW1hcnkuZGlzYWJsZWQsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24uZGlzYWJsZWQubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24uZGlzYWJsZWQubWt0b0J1dHRvbixib2R5Pi5kaXNhYmxlZCNvdC1zZGstYnRue2JhY2tncm91bmQtY29sb3I6IzQ5NTA1Nztib3JkZXItY29sb3I6IzQ5NTA1N310YWJsZS50YWJsZXtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTVlNWU1O21hcmdpbi1ib3R0b206MnJlbX10YWJsZS50YWJsZSBwOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfXRyLnRhYmxlLWRhcmsgdGh7YmFja2dyb3VuZC1jb2xvcjojNjY2O2JvcmRlci1ib3R0b206bm9uZTtjb2xvcjojZTVlNWU1fXRyLnRhYmxlLWRhcmsgdGggYXtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTVlNWU1O2NvbG9yOiNmZmZ9dHIudGFibGUtZGFyayB0aCBhOmhvdmVye2JvcmRlci1ib3R0b206MnB4IHNvbGlkICNlNWU1ZTU7dGV4dC1kZWNvcmF0aW9uOm5vbmV9dGFibGUub3BlbmluZ19ob3VycyB0Ym9keSB0ciB0ZHtwYWRkaW5nLXJpZ2h0Oi43NWNofXRhYmxlLm9wZW5pbmdfaG91cnMgdGJvZHkgdHIgdGQ6bGFzdC1jaGlsZHtwYWRkaW5nLXJpZ2h0OjB9dGFibGUub3BlbmluZ19ob3VycyB0Ym9keSB0ciB0ZCAudGltZXNsb3R7cGFkZGluZy1yaWdodDouNWNofXRhYmxlLm9wZW5pbmdfaG91cnMgdGJvZHkgdHIgdGQgLnRpbWVzbG90Omxhc3QtY2hpbGR7cGFkZGluZy1yaWdodDowfS50YWJsZS0tY29sb3IgdGFibGUsdGFibGUudGFibGUtLWNvbG9ye2JhY2tncm91bmQtY29sb3I6I2YyZjJmMn0udGFibGUtLWNvbG9yIHRhYmxlIHRoZWFkLHRhYmxlLnRhYmxlLS1jb2xvciB0aGVhZHtiYWNrZ3JvdW5kLWNvbG9yOiNmYzB9LnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMiksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMiksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGg6bGFzdC1jaGlsZDpudGgtY2hpbGQoMiksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRkOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMiksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0aDpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKXt3aWR0aDo1MCV9LnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDIpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOm50aC1jaGlsZCgyKTpudGgtbGFzdC1jaGlsZCgyKSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRkOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGQ6bGFzdC1jaGlsZDpudGgtY2hpbGQoMyksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0ZDpudGgtY2hpbGQoMik6bnRoLWxhc3QtY2hpbGQoMiksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0aDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRoOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDMpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGg6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDIpe3dpZHRoOjMzLjMzMzMzJX0udGFibGUtLWVxdWFsLXdpZHRocyB0YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSwudGFibGUtLWVxdWFsLXdpZHRocyB0YWJsZSB0ciB0ZDpsYXN0LWNoaWxkOm50aC1jaGlsZCg0KSwudGFibGUtLWVxdWFsLXdpZHRocyB0YWJsZSB0ciB0ZDpudGgtY2hpbGQoMik6bnRoLWxhc3QtY2hpbGQoMyksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6bnRoLWNoaWxkKDMpOm50aC1sYXN0LWNoaWxkKDIpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDQpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOm50aC1jaGlsZCgyKTpudGgtbGFzdC1jaGlsZCgzKSwudGFibGUtLWVxdWFsLXdpZHRocyB0YWJsZSB0ciB0aDpudGgtY2hpbGQoMyk6bnRoLWxhc3QtY2hpbGQoMiksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRkOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDQpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGQ6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDMpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGQ6bnRoLWNoaWxkKDMpOm50aC1sYXN0LWNoaWxkKDIpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0aDpsYXN0LWNoaWxkOm50aC1jaGlsZCg0KSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRoOm50aC1jaGlsZCgyKTpudGgtbGFzdC1jaGlsZCgzKSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRoOm50aC1jaGlsZCgzKTpudGgtbGFzdC1jaGlsZCgyKXt3aWR0aDoyNSV9LnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6bGFzdC1jaGlsZDpudGgtY2hpbGQoNSksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDQpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRkOm50aC1jaGlsZCgzKTpudGgtbGFzdC1jaGlsZCgzKSwudGFibGUtLWVxdWFsLXdpZHRocyB0YWJsZSB0ciB0ZDpudGgtY2hpbGQoNCk6bnRoLWxhc3QtY2hpbGQoMiksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGg6bGFzdC1jaGlsZDpudGgtY2hpbGQoNSksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGg6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDQpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOm50aC1jaGlsZCgzKTpudGgtbGFzdC1jaGlsZCgzKSwudGFibGUtLWVxdWFsLXdpZHRocyB0YWJsZSB0ciB0aDpudGgtY2hpbGQoNCk6bnRoLWxhc3QtY2hpbGQoMiksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRkOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDUpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGQ6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDQpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGQ6bnRoLWNoaWxkKDMpOm50aC1sYXN0LWNoaWxkKDMpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGQ6bnRoLWNoaWxkKDQpOm50aC1sYXN0LWNoaWxkKDIpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0aDpsYXN0LWNoaWxkOm50aC1jaGlsZCg1KSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRoOm50aC1jaGlsZCgyKTpudGgtbGFzdC1jaGlsZCg0KSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRoOm50aC1jaGlsZCgzKTpudGgtbGFzdC1jaGlsZCgzKSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRoOm50aC1jaGlsZCg0KTpudGgtbGFzdC1jaGlsZCgyKXt3aWR0aDoyMCV9LnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNiksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6bGFzdC1jaGlsZDpudGgtY2hpbGQoNiksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDUpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRkOm50aC1jaGlsZCgzKTpudGgtbGFzdC1jaGlsZCg0KSwudGFibGUtLWVxdWFsLXdpZHRocyB0YWJsZSB0ciB0ZDpudGgtY2hpbGQoNCk6bnRoLWxhc3QtY2hpbGQoMyksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGQ6bnRoLWNoaWxkKDUpOm50aC1sYXN0LWNoaWxkKDIpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDYpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOm50aC1jaGlsZCgyKTpudGgtbGFzdC1jaGlsZCg1KSwudGFibGUtLWVxdWFsLXdpZHRocyB0YWJsZSB0ciB0aDpudGgtY2hpbGQoMyk6bnRoLWxhc3QtY2hpbGQoNCksLnRhYmxlLS1lcXVhbC13aWR0aHMgdGFibGUgdHIgdGg6bnRoLWNoaWxkKDQpOm50aC1sYXN0LWNoaWxkKDMpLC50YWJsZS0tZXF1YWwtd2lkdGhzIHRhYmxlIHRyIHRoOm50aC1jaGlsZCg1KTpudGgtbGFzdC1jaGlsZCgyKSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRkOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGQ6bGFzdC1jaGlsZDpudGgtY2hpbGQoNiksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0ZDpudGgtY2hpbGQoMik6bnRoLWxhc3QtY2hpbGQoNSksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0ZDpudGgtY2hpbGQoMyk6bnRoLWxhc3QtY2hpbGQoNCksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0ZDpudGgtY2hpbGQoNCk6bnRoLWxhc3QtY2hpbGQoMyksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0ZDpudGgtY2hpbGQoNSk6bnRoLWxhc3QtY2hpbGQoMiksdGFibGUudGFibGUtLWVxdWFsLXdpZHRocyB0ciB0aDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSx0YWJsZS50YWJsZS0tZXF1YWwtd2lkdGhzIHRyIHRoOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDYpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGg6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDUpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGg6bnRoLWNoaWxkKDMpOm50aC1sYXN0LWNoaWxkKDQpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGg6bnRoLWNoaWxkKDQpOm50aC1sYXN0LWNoaWxkKDMpLHRhYmxlLnRhYmxlLS1lcXVhbC13aWR0aHMgdHIgdGg6bnRoLWNoaWxkKDUpOm50aC1sYXN0LWNoaWxkKDIpe3dpZHRoOjE2LjY2NjY3JX0udGFibGUtLWNlbnRlcmVkIHRhYmxlIHRkOm5vdCg6Zmlyc3QtY2hpbGQpLC50YWJsZS0tY2VudGVyZWQgdGFibGUgdGg6bm90KDpmaXJzdC1jaGlsZCksdGFibGUudGFibGUtLWNlbnRlcmVkIHRkOm5vdCg6Zmlyc3QtY2hpbGQpLHRhYmxlLnRhYmxlLS1jZW50ZXJlZCB0aDpub3QoOmZpcnN0LWNoaWxkKXt0ZXh0LWFsaWduOmNlbnRlcn0udGFibGUtLXBhY2thZ2luZ3MgdGFibGUgdHIgdGQsdGFibGUudGFibGUtLXBhY2thZ2luZ3MgdHIgdGR7dmVydGljYWwtYWxpZ246bWlkZGxlfS50YWJsZS0tcGFja2FnaW5ncyB0YWJsZSB0ciB0ZCBmaWd1cmUsdGFibGUudGFibGUtLXBhY2thZ2luZ3MgdHIgdGQgZmlndXJle21heC13aWR0aDoxNTBweH0uc2VjdGlvbi0tc2xpZGVye2JvcmRlcjpub25lO21hcmdpbjphdXRvIGF1dG8gMzBweDttYXgtd2lkdGg6MTQwMHB4O21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjA7d2lkdGg6MTAwJX0uc2VjdGlvbi0tc2xpZGVyLnNsaWRlci0taHB7bWFyZ2luLWJvdHRvbTowfS5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZXtiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjI7aGVpZ2h0OmF1dG87cG9zaXRpb246cmVsYXRpdmV9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZXthbGlnbi1pdGVtczpzdHJldGNoO2Rpc3BsYXk6ZmxleH19LnNlY3Rpb24tLXNsaWRlciAuc3dpcGVyLXNsaWRlIGF7Y29sb3I6aW5oZXJpdH0uc2VjdGlvbi0tc2xpZGVyIC5zd2lwZXItc2xpZGUgYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX0uc2VjdGlvbi0tc2xpZGVyIC5zd2lwZXItc2xpZGVfX2ltYWdlLC5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZV9fdGV4dHtmbGV4LWdyb3c6MDtmbGV4LXNocmluazowfS5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZV9faW1hZ2V7ZmxleC1iYXNpczo0MS42NjY2NyV9LnNlY3Rpb24tLXNsaWRlciAuc3dpcGVyLXNsaWRlX190ZXh0e2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNmYzA7ZGlzcGxheTpmbGV4O2ZsZXgtYmFzaXM6NTguMzMzMzMlO2p1c3RpZnktY29udGVudDpjZW50ZXI7bGluZS1oZWlnaHQ6MS4yO3BhZGRpbmc6MTVweCA2MHB4IDE1cHggMzBweH0uc2VjdGlvbi0tc2xpZGVyIC5zd2lwZXItc2xpZGVfX3RleHQgcCwuc2VjdGlvbi0tc2xpZGVyIC5zd2lwZXItc2xpZGVfX3RleHQgdWw+bGl7Zm9udC1zaXplOjEuNWVtO2ZvbnQtd2VpZ2h0OjEwMDttYXJnaW4tYm90dG9tOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZV9fdGV4dCB1bD5saSticntkaXNwbGF5Om5vbmV9LnNlY3Rpb24tLXNsaWRlciAuc3dpcGVyLXNsaWRlX190ZXh0IHVsLmxpc3QtLWNoZWNrbWFya3M+bGk6YmVmb3Jle3RvcDouMzVlbX0uc2VjdGlvbi0tc2xpZGVyIC5zd2lwZXItc2xpZGVfX3RleHQgcDpsYXN0LWNoaWxkOmVtcHR5e2Rpc3BsYXk6bm9uZX0uc2VjdGlvbi0tc2xpZGVyIC5zd2lwZXItc2xpZGVfX3RleHQgLnNsaWRlLXRpdGxle2ZvbnQtc2l6ZToyLjI1ZW07Zm9udC13ZWlnaHQ6OTAwO21hcmdpbi1ib3R0b206LjI1ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsuc2VjdGlvbi0tc2xpZGVyIC5zd2lwZXItc2xpZGVfX3RleHR7Zm9udC1zaXplOi44NXJlbTtwYWRkaW5nOjE1cHh9fUBtZWRpYSAobWF4LXdpZHRoOjExOTkuOThweCl7LnNlY3Rpb24tLXNsaWRlciAuc3dpcGVyLXNsaWRlX190ZXh0e2ZvbnQtc2l6ZTouOHJlbX19QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZV9fdGV4dHtmb250LXNpemU6LjdyZW07bGluZS1oZWlnaHQ6MS4xfS5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZV9fdGV4dCAuc2xpZGUtdGl0bGV7Zm9udC1zaXplOjEuNzVlbTtsaW5lLWhlaWdodDppbmhlcml0O21hcmdpbi1ib3R0b206LjE1ZW19fUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsuc2VjdGlvbi0tc2xpZGVyIC5zd2lwZXItc2xpZGVfX3RleHR7Zm9udC1zaXplOi43cmVtO2xpbmUtaGVpZ2h0OjEuMDV9LnNlY3Rpb24tLXNsaWRlciAuc3dpcGVyLXNsaWRlX190ZXh0IC5zbGlkZS10aXRsZXtmb250LXNpemU6MS43NWVtO2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luLWJvdHRvbTouMTVlbX19QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZV9faW1hZ2V7ZmxleC1iYXNpczo0MS42NjY2NyV9LnNlY3Rpb24tLXNsaWRlciAuc3dpcGVyLXNsaWRlX190ZXh0e2ZsZXgtYmFzaXM6NTguMzMzMzMlfX0uc2VjdGlvbi0tc2xpZGVyIC5zd2lwZXItc2xpZGVfX2xpbmt7Ym90dG9tOjA7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpey5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5zZWN0aW9uLS1zbGlkZXIgLnN3aXBlci1zbGlkZV9faW1hZ2V7ZmxleC1iYXNpczphdXRvO2ZsZXgtZ3JvdzowO2ZsZXgtc2hyaW5rOjB9LnNlY3Rpb24tLXNsaWRlciAuc3dpcGVyLXNsaWRlX190ZXh0e2ZsZXgtYmFzaXM6YXV0bztmbGV4LWdyb3c6MTtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH19LnNlY3Rpb24tLXNsaWRlci0tdGh1bWJuYWlsc3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5zZWN0aW9uLS1zbGlkZXItLXRodW1ibmFpbHM+KnttYXgtd2lkdGg6MTAwJTt3aWR0aDphdXRvIWltcG9ydGFudH0uc2VjdGlvbi0tc2xpZGVyLS10aHVtYm5haWxzIC5zd2lwZXItLXRodW1ibmFpbHN7b3JkZXI6MX0uc2VjdGlvbi0tc2xpZGVyLS10aHVtYm5haWxzIC5zd2lwZXItLWltYWdlc3tvcmRlcjowfS5zZWN0aW9uLS1zbGlkZXItLXRodW1ibmFpbHMgLnN3aXBlci0taW1hZ2VzIC5zd2lwZXItc2xpZGUsLnNlY3Rpb24tLXNsaWRlci0tdGh1bWJuYWlscyAuc3dpcGVyLS1pbWFnZXMgLnN3aXBlci13cmFwcGVye21heC13aWR0aDoxMDAlO3dpZHRoOmF1dG99LnNlY3Rpb24tLXNsaWRlci0tdGh1bWJuYWlscyAuaW9iamVjdF9fY2FwdGlvbntvcmRlcjoyfS5zd2lwZXIsLnN3aXBlci1jb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmV9LnN3aXBlci1jb250YWluZXJbZGF0YS1zbGlkZXNfcGVyX3ZpZXc9YXV0b106bm90KC5zd2lwZXItLXRodW1ibmFpbHMpIC5zd2lwZXItd3JhcHBlciAuc3dpcGVyLXNsaWRlLC5zd2lwZXJbZGF0YS1zbGlkZXNfcGVyX3ZpZXc9YXV0b106bm90KC5zd2lwZXItLXRodW1ibmFpbHMpIC5zd2lwZXItd3JhcHBlciAuc3dpcGVyLXNsaWRle2ZpbHRlcjpicmlnaHRuZXNzKC41KTt0cmFuc2l0aW9uOmZpbHRlciAuMzVzfS5zd2lwZXItY29udGFpbmVyW2RhdGEtc2xpZGVzX3Blcl92aWV3PWF1dG9dOm5vdCguc3dpcGVyLS10aHVtYm5haWxzKSAuc3dpcGVyLXdyYXBwZXIgLnN3aXBlci1zbGlkZS5zd2lwZXItc2xpZGUtYWN0aXZlLC5zd2lwZXJbZGF0YS1zbGlkZXNfcGVyX3ZpZXc9YXV0b106bm90KC5zd2lwZXItLXRodW1ibmFpbHMpIC5zd2lwZXItd3JhcHBlciAuc3dpcGVyLXNsaWRlLnN3aXBlci1zbGlkZS1hY3RpdmV7ZmlsdGVyOmJyaWdodG5lc3MoMSl9LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLWJ1dHRvbi1wcmV2e2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWltYWdlOm5vbmU7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnN3aXBlci1idXR0b24tbmV4dDpiZWZvcmUsLnN3aXBlci1idXR0b24tcHJldjpiZWZvcmV7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6I2Q0MDUxMTtib3JkZXItcmFkaXVzOjEycHg7Y29sb3I6I2ZmZjtkaXNwbGF5OmZsZXg7Zm9udC1mYW1pbHk6Rm9udCBBd2Vzb21lXCA3IEZyZWU7Zm9udC1zaXplOjE0LjRweDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjI0cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtsaW5lLWhlaWdodDoxO3dpZHRoOjI0cHh9LnN3aXBlci1idXR0b24tbmV4dDphZnRlciwuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVye2Rpc3BsYXk6bm9uZX0uc3dpcGVyLWJ1dHRvbi1uZXh0OmFjdGl2ZSwuc3dpcGVyLWJ1dHRvbi1uZXh0OmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSksLnN3aXBlci1idXR0b24tcHJldjphY3RpdmUsLnN3aXBlci1idXR0b24tcHJldjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpe291dGxpbmU6bm9uZX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLWJ1dHRvbi1wcmV2e2Rpc3BsYXk6bm9uZX19LnN3aXBlci1idXR0b24tbmV4dCAuc3dpcGVyLW5hdmlnYXRpb24taWNvbiwuc3dpcGVyLWJ1dHRvbi1wcmV2IC5zd2lwZXItbmF2aWdhdGlvbi1pY29ue2Rpc3BsYXk6bm9uZX0uc3dpcGVyLWJ1dHRvbi1uZXh0OmJlZm9yZXtjb250ZW50OiJcZjA2MSJ9LnN3aXBlci1idXR0b24tcHJldjpiZWZvcmV7Y29udGVudDoiXGYwNjAifS5zd2lwZXItcGFnaW5hdGlvbntib3R0b206MCFpbXBvcnRhbnQ7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnN3aXBlci1wYWdpbmF0aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czowO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MzBweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbjowIWltcG9ydGFudDtvcGFjaXR5OjE7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MzBweH0uc3dpcGVyLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsOTIlLC41KTtib3JkZXI6MXB4IHNvbGlkICNkNDA1MTE7Ym9yZGVyLXJhZGl1czo2cHg7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMnB4O3dpZHRoOjEycHh9LnN3aXBlci1wYWdpbmF0aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7b3BhY2l0eToxfS5zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZTpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojZDQwNTExfS5zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0OmFjdGl2ZSwuc3dpcGVyLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpe291dGxpbmU6bm9uZX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7LnN3aXBlci1wYWdpbmF0aW9ue3BhZGRpbmctdG9wOjcuNXB4O3Bvc2l0aW9uOnN0YXRpYzt3aWR0aDoxMDAlIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5zbGlkZXItLWhwIC5zd2lwZXItcGFnaW5hdGlvbntsZWZ0OjQxLjY2NjY3JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo1OC4zMzMzMyUhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7LnNsaWRlci0taHAgLnN3aXBlci1wYWdpbmF0aW9ue2xlZnQ6MzMuMzMzMzMlO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjY2LjY2NjY3JSFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsuc2xpZGVyLS1ocCAuc3dpcGVyLXBhZ2luYXRpb257Ym90dG9tOjB9fS5zd2lwZXItLWltYWdlcyAuc3dpcGVyLXNsaWRle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7ZGlzcGxheTpibG9jaztoZWlnaHQ6YXV0b30uc3dpcGVyLS1pbWFnZXMgLnN3aXBlci1zbGlkZSBmaWd1cmV7ZGlzcGxheTpibG9jazttYXJnaW46MH0uc3dpcGVyLS1pbWFnZXMgLnN3aXBlci1zbGlkZSBmaWd1cmUgYSwuc3dpcGVyLS1pbWFnZXMgLnN3aXBlci1zbGlkZSBmaWd1cmUgcGljdHVyZXtkaXNwbGF5OmJsb2NrfS5zd2lwZXItLWltYWdlcyAuc3dpcGVyLXNsaWRlIGZpZ3VyZSBpbWd7ZGlzcGxheTpibG9jazttYXJnaW46YXV0b30uc3dpcGVyLS1pbWFnZXMgLnN3aXBlci1zbGlkZSBmaWd1cmUgZmlnY2FwdGlvbntmb250LXNpemU6Ljg3NXJlbTtwYWRkaW5nOjcuNXB4IDE1cHg7dGV4dC1hbGlnbjpjZW50ZXJ9LnN3aXBlci0taW1hZ2VzIC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCBmaWdjYXB0aW9ue2Rpc3BsYXk6bm9uZX0uc3dpcGVyLS1pbWFnZXMgaW1ne2JhY2tncm91bmQtY29sb3I6I2ZmZn0uc3dpcGVyLS1pbWFnZXMgLnN3aXBlci1wYWdpbmF0aW9ue21hcmdpbjowO3Bvc2l0aW9uOnN0YXRpYyFpbXBvcnRhbnQ7d2lkdGg6MTAwJSFpbXBvcnRhbnR9QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5zd2lwZXItLWltYWdlcyAuc3dpcGVyLXBhZ2luYXRpb257d2lkdGg6MTAwJSFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KSBhbmQgKG1heC13aWR0aDo3NjcuOThweCl7LnN3aXBlci0taW1hZ2VzIC5zd2lwZXItcGFnaW5hdGlvbntib3R0b206NXB4O3Bvc2l0aW9uOmFic29sdXRlfX0uc3dpcGVyLS1pbWFnZXMtLWRhcmsgLnN3aXBlci1zbGlkZXtiYWNrZ3JvdW5kLWNvbG9yOiMzMzN9LnN3aXBlci0taW1hZ2VzLS1kYXJrIC5zd2lwZXItc2xpZGUgZmlndXJlIGZpZ2NhcHRpb257YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC41KTtib3R0b206MDtjb2xvcjojZmZmO2hlaWdodDphdXRvO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RleHQtYWxpZ246bGVmdH0uc3dpcGVyLS1pbWFnZXMtLWRhcmsgLnN3aXBlci1wYWdpbmF0aW9ue21hcmdpbi10b3A6MTVweH0uc3dpcGVyLS1sb2dve3BhZGRpbmc6MCAyNHB4fS5zd2lwZXItLWxvZ28gLnN3aXBlci1zbGlkZXthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjMwcHh9LnN3aXBlci0tbG9nbyAuc3dpcGVyLXBhZ2luYXRpb257d2lkdGg6MTAwJSFpbXBvcnRhbnR9QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpey5zd2lwZXItLWxvZ297cGFkZGluZzowfS5zd2lwZXItLWxvZ28gLnN3aXBlci1zbGlkZXtwYWRkaW5nOjE1cHh9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LnN3aXBlci0tbG9nbyAuc3dpcGVyLXNsaWRle3BhZGRpbmc6MzBweCAzNy41cHh9fS5zd2lwZXItLXRodW1ibmFpbHN7YmFja2dyb3VuZC1jb2xvcjojMzMzO3BhZGRpbmc6NXB4IDB9LnN3aXBlci0tdGh1bWJuYWlscyAuc3dpcGVyLXNsaWRle2ZpbHRlcjpicmlnaHRuZXNzKC43KTt0cmFuc2l0aW9uOmZpbHRlciAuMzVzfS5zd2lwZXItLXRodW1ibmFpbHMgLnN3aXBlci1zbGlkZS10aHVtYi1hY3RpdmUsLnN3aXBlci0tdGh1bWJuYWlscyAuc3dpcGVyLXNsaWRlOmhvdmVye2ZpbHRlcjpicmlnaHRuZXNzKDEpfS5zd2lwZXItLXRodW1ibmFpbHMgLnN3aXBlci1zbGlkZS10aHVtYi1hY3RpdmV7b3V0bGluZToycHggc29saWQgI2Q0MDUxMX0uaW9iamVjdHtjbGVhcjpib3RoO21hcmdpbjo2MHB4IDB9LmlvYmplY3QgLmlvYmplY3RfX2NhcHRpb257Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U1ZTVlNTtmb250LXNpemU6Ljg3NXJlbTttYXJnaW4tdG9wOi41cmVtO3BhZGRpbmctYm90dG9tOi41cmVtfS5pb2JqZWN0IC5pb2JqZWN0X19jYXB0aW9uIC5pb2JqZWN0X190aXRsZXtmb250LXdlaWdodDo2MDB9LmlvYmplY3QgLmlvYmplY3RfX2NhcHRpb24gLmlvYmplY3RfX3RpdGxlIC5pb2JqZWN0X190aXRsZV9fc2VwYXJhdG9ye2NvbG9yOiNiMmIyYjI7Zm9udC13ZWlnaHQ6NDAwfS5pb2JqZWN0IC5pb2JqZWN0X19jYXB0aW9uIC5pb2JqZWN0X19kZXNjcmlwdGlvbntmb250LXN0eWxlOml0YWxpY30uaW9iamVjdCAuaW9iamVjdF9fY2FwdGlvbiAuaW9iamVjdF9fZGVzY3JpcHRpb24tLXJpY2ggbGksLmlvYmplY3QgLmlvYmplY3RfX2NhcHRpb24gLmlvYmplY3RfX2Rlc2NyaXB0aW9uLS1yaWNoPjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uaW9iamVjdCAuaW9iamVjdF9fY2FwdGlvbiAuaW9iamVjdF9fZGVzY3JpcHRpb24tLXJpY2ggcHttYXJnaW4tYm90dG9tOi41ZW19LmlvYmplY3QgLmlvYmplY3RfX2NhcHRpb246aGFzKC5pb2JqZWN0X19kZXNjcmlwdGlvbi0tcmljaCl7Ym9yZGVyLWJvdHRvbTpub25lO3BhZGRpbmctYm90dG9tOjB9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5pb2JqZWN0LS1mdWxsX3dpZHRoe3dpZHRoOjEwMCV9LmlvYmplY3QtLWhhbGZfd2lkdGh7d2lkdGg6NTAlfS5pb2JqZWN0LS10aGlyZF93aWR0aHt3aWR0aDozMy4zMyV9LmlvYmplY3QtLWNlbnRlcnttYXJnaW46YXV0b30uaW9iamVjdC0tbGVmdHtmbG9hdDpsZWZ0O21hcmdpbjowIDYwcHggNjBweCAwfS5pb2JqZWN0LS1yaWdodHtmbG9hdDpyaWdodDttYXJnaW46MCAwIDYwcHggNjBweH19LmlvYmplY3QtLWF1ZGlvIGF1ZGlve3dpZHRoOjEwMCV9LmlvYmplY3QtLXBpY3R1cmUgcGljdHVyZXtkaXNwbGF5OmJsb2NrfS5pb2JqZWN0LS1waWN0dXJlIHBpY3R1cmUgc291cmNle2hlaWdodDowO2xpbmUtaGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVufS5pb2JqZWN0LS1waWN0dXJlIHBpY3R1cmUgaW1ne2Rpc3BsYXk6YmxvY2t9LmlvYmplY3QtLXBpY3R1cmUtZnVsbHdpZHRoLC5pb2JqZWN0LS1waWN0dXJlLWZ1bGx3aWR0aCBmaWd1cmV7bWFyZ2luOjA7cGFkZGluZzowfS5pb2JqZWN0LS1waWN0dXJlLWNhcmR7YmFja2dyb3VuZC1jb2xvcjojZmZmO21hcmdpbi10b3A6MCFpbXBvcnRhbnR9LmlvYmplY3QtLXBpY3R1cmUtY2FyZDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LmlvYmplY3QtLXBpY3R1cmUtY2FyZCBmaWd1cmV7aGVpZ2h0OjEwMCU7bWFyZ2luOjB9LmlvYmplY3QtLXBpY3R1cmUtY2FyZCBmaWd1cmUgLmltYWdlLXdyYXB7ZGlzcGxheTpibG9ja30uaW9iamVjdC0tcGljdHVyZS1jYXJkIGZpZ3VyZSBmaWdjYXB0aW9uLmNhcmQtYm9keXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206bm9uZTttYXJnaW46MDtwYWRkaW5nOjEuMjVyZW19LmlvYmplY3QtLXBpY3R1cmUtY2FyZCBmaWd1cmUgZmlnY2FwdGlvbi5jYXJkLWJvZHkgLmNhcmQtdGl0bGV7bWFyZ2luLWJvdHRvbTouNWVtfS5pb2JqZWN0LS1waWN0dXJlLWNhcmQgZmlndXJlIGZpZ2NhcHRpb24uY2FyZC1ib2R5IC5jYXJkLXRleHR7Zm9udC1zaXplOjFlbTtmb250LXN0eWxlOm5vcm1hbH0uaW9iamVjdC0tZ2FsbGVyeSBzZWN0aW9uLnBob3RvLWdhbGxlcnl7bWFyZ2luOjB9LmlvYmplY3QtLWZpbGV7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U1ZTVlNTtib3JkZXItdG9wOjFweCBzb2xpZCAjZTVlNWU1fS5pb2JqZWN0LS1maWxlPmF7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjAgLjJlbX0uaW9iamVjdC0tZmlsZT5hOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTt0ZXh0LWRlY29yYXRpb246bm9uZX0uaW9iamVjdC0tZmlsZT5hOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSl7b3V0bGluZTpub25lfS5pb2JqZWN0LS1maWxlIC5maWxlaWNvbntmb250LXNpemU6MS41ZW07cGFkZGluZy1yaWdodDouNWVtfS5pb2JqZWN0LS1maWxlIC5pb2JqZWN0LS1maWxlX19tZXRhe2NvbG9yOnJnYmEoMCwwLDAsLjkpO2ZvbnQtc2l6ZTouNzVyZW19LmlvYmplY3QtLWZpbGUrLmlvYmplY3QtLWZpbGV7Ym9yZGVyLXRvcDpub25lO21hcmdpbi10b3A6LTYwcHh9LmlvYmplY3QtLWNhcmRfcHJvbW90aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTVlNWU1O2JvcmRlci10b3A6MXB4IHNvbGlkICNlNWU1ZTU7Y29sb3I6aW5oZXJpdDtkaXNwbGF5OmZsZXg7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmlvYmplY3QtLWNhcmRfcHJvbW90aW9uIC5pb2JqZWN0X19pbWFnZXtmbGV4LWJhc2lzOjIwMHB4O2ZsZXgtc2hyaW5rOjA7cG9zaXRpb246cmVsYXRpdmV9LmlvYmplY3QtLWNhcmRfcHJvbW90aW9uIC5pb2JqZWN0X19pbWFnZSAuaW9iamVjdF9fZmxhZ3N7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MXJlbTt0b3A6MXJlbX0uaW9iamVjdC0tY2FyZF9wcm9tb3Rpb24gLmlvYmplY3RfX2JvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWdyb3c6MTA7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzoxNXB4fS5pb2JqZWN0LS1jYXJkX3Byb21vdGlvbiAuaW9iamVjdF9fYm9keSAuaW9iamVjdF9fdGl0bGV7Zm9udC1zaXplOjEuMjVyZW19LmlvYmplY3QtLWNhcmRfcHJvbW90aW9uIC5pb2JqZWN0X19ib2R5IC5pb2JqZWN0X19kZXNjcmlwdGlvbntmb250LXNpemU6Ljg3NXJlbX0uaW9iamVjdC0tY2FyZF9wcm9tb3Rpb24gLmlvYmplY3RfX2JvZHkgLmlvYmplY3RfX2Zvb3RlcnthbGlnbi1pdGVtczpmbGV4LWVuZDtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47bWFyZ2luLXRvcDoxcmVtfS5pb2JqZWN0LS1jYXJkX3Byb21vdGlvbiAuaW9iamVjdF9fYm9keSAuaW9iamVjdF9fZm9vdGVyIC5jYXJkLWZvb3Rlci1pY29ue2ZvbnQtc2l6ZToxLjI1cmVtfUBtZWRpYSAobWF4LXdpZHRoOjcwMHB4KXsuaW9iamVjdC0tY2FyZF9wcm9tb3Rpb257ZGlzcGxheTpibG9ja319LmlvYmplY3QtLWNhcmRfcHJvbW90aW9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2YyZjJmMjtjb2xvcjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjpub25lfS5pb2JqZWN0LS1jYXJkX3Byb21vdGlvbisuaW9iamVjdC0tY2FyZF9wcm9tb3Rpb257Ym9yZGVyLXRvcDpub25lO21hcmdpbi10b3A6LTMwcHh9LmlvYmplY3QrLmlvYmplY3Q6bm90KC5pb2JqZWN0LS1waWN0dXJlLWNhcmQpe21hcmdpbi10b3A6LTYwcHh9QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpey5pb2JqZWN0PmF7cGFkZGluZy1ib3R0b206Ljc1cmVtO3BhZGRpbmctdG9wOi43NXJlbX0uaW9iamVjdD5hLC5pb2JqZWN0PmEgLmZpbGVpY29uLC5pb2JqZWN0PmEgLmlvYmplY3QtLWZpbGVfX21ldGF7ZGlzcGxheTpibG9ja319LmlvYmplY3QtLWNvbnRhY3R7YWxpZ24taXRlbXM6c3RyZXRjaDtiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjI7Ym9yZGVyOjFweCBzb2xpZCAjZTVlNWU1O2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDttYXJnaW46MTVweCAwO3BhZGRpbmc6MTVweH0uaW9iamVjdC0tY29udGFjdCAuaW9iamVjdF9faW1hZ2V7ZmxleC1iYXNpczoxMTVweDtmbGV4LXNocmluazowO21hcmdpbi1ib3R0b206MTVweH0uaW9iamVjdC0tY29udGFjdCAuaW9iamVjdF9faW1hZ2UgaW1ne2JvcmRlcjoxcHggc29saWQgI2U1ZTVlNTtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmJsb2NrO2hlaWdodDphdXRvO3dpZHRoOjEwMHB4fS5pb2JqZWN0LS1jb250YWN0IC5pb2JqZWN0X190aXRsZXtsaW5lLWhlaWdodDoxLjE7bWFyZ2luLWJvdHRvbToxcmVtfS5pb2JqZWN0LS1jb250YWN0IC5pb2JqZWN0X190aXRsZSBzcGFue2NvbG9yOnJnYmEoMCwwLDAsLjkpO2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOi44NzVyZW19LmlvYmplY3QtLWNvbnRhY3QgLmlvYmplY3RfX2JvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtYmFzaXM6Y2FsYygxMDAlIC0gMTE1cHgpO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWdyb3c6MTAwO2ZsZXgtc2hyaW5rOjA7bWluLWhlaWdodDpjYWxjKDEwMCUgLSAxMTVweCk7bWluLXdpZHRoOjI0MHB4fS5pb2JqZWN0LS1jb250YWN0IC5pb2JqZWN0X19ib2R5IC5pb2JqZWN0X19kZXNjcmlwdGlvbntmbGV4LWdyb3c6MTAwfS5pb2JqZWN0LS1jb250YWN0IC5pb2JqZWN0X19ib2R5IC5pb2JqZWN0X19ib2R5LWJvdHRvbXthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXRvcDoxcHggc29saWQgI2U1ZTVlNTtkaXNwbGF5OmZsZXg7cGFkZGluZy10b3A6MTVweH0uaW9iamVjdC0tY29udGFjdCAuaW9iamVjdF9fYm9keSAuaW9iamVjdF9fYm9keS1ib3R0b20+ZGl2e2ZsZXgtYmFzaXM6NTAlfS5pb2JqZWN0LS1jb250YWN0IC5pb2JqZWN0X19ib2R5IC5saXN0LS1pY29uc3t0ZXh0LWFsaWduOmluaXRpYWx9LmlvYmplY3QtLWNvbnRhY3QgLmlvYmplY3RfX2JvZHkgLmxpc3QtLWljb25zIGxpe2Rpc3BsYXk6ZmxleH0uaW9iamVjdC0tY29udGFjdCAuaW9iamVjdF9fYm9keSAubGlzdC0taWNvbnMgbGkgLmxpc3QtLWljb25zX19pY29ue2NvbG9yOiM2NjY7ZGlzcGxheTpibG9jaztmbGV4LWJhc2lzOjNjaDtmbGV4LWdyb3c6MDtmbGV4LXNocmluazowfS5pb2JqZWN0LS1jb250YWN0IC5pb2JqZWN0X19ib2R5IC5saXN0LS1pY29ucyBsaSAubGlzdC0taWNvbnNfX3ZhbHVle2Rpc3BsYXk6YmxvY2s7bGluZS1icmVhazphbnl3aGVyZX0uaW9iamVjdC0tY29udGFjdCAuaW9iamVjdF9fcXItY29kZXtoZWlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJTt3aWR0aDo1Y219LmlvYmplY3QtLWNvbnRhY3QgLmlvYmplY3RfX2Zvb3RlcntmbGV4LWJhc2lzOjEwMCV9LmlvYmplY3QtLWNvbnRhY3QgLnFyLWNvZGUtbGluayAuaWNvbi1kb3due2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZTouODc1ZW07bWFyZ2luLWxlZnQ6LjVjaDt0cmFuc2Zvcm06cm90YXRlKDApO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zc30uaW9iamVjdC0tY29udGFjdCAucXItY29kZS1saW5rW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLmljb24tZG93bntkaXNwbGF5OmlubGluZS1ibG9jazt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LmlvYmplY3QtLWNvbnRhY3QtZ3JvdXAgLmlvYmplY3RfX2hlYWRpbmd7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0uaW9iamVjdC0tY29udGFjdC1ncm91cCAuaW9iamVjdF9fY2FyZHN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO21hcmdpbjoxNXB4IC03LjVweH0uaW9iamVjdC0tY29udGFjdC1ncm91cCAuaW9iamVjdF9fY2FyZHM+LmlvYmplY3QtLWNvbnRhY3R7ZmxleC1iYXNpczpjYWxjKDMzJSAtIDE1cHgpO21hcmdpbjo3LjVweH1AbWVkaWEgKG1heC13aWR0aDo3MDBweCl7LmlvYmplY3QtLWNvbnRhY3QtZ3JvdXAgLmlvYmplY3RfX2NhcmRzPi5pb2JqZWN0LS1jb250YWN0e2ZsZXgtYmFzaXM6NTAlfX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7LmlvYmplY3QtLWNvbnRhY3QtZ3JvdXAgLmlvYmplY3RfX2NhcmRzPi5pb2JqZWN0LS1jb250YWN0e2ZsZXgtYmFzaXM6MTAwJX19LnBzd3BfX2NhcHRpb24gLmlvYmplY3QtLXBpY3R1cmVfX2xpbmssLnBzd3BfX2NhcHRpb24gLmlvYmplY3RfX3RpdGxlX19zZXBhcmF0b3J7ZGlzcGxheTpub25lfS5wc3dwX19jYXB0aW9uIC5pb2JqZWN0X190aXRsZXtmb250LXdlaWdodDo2MDB9dGFibGUudGFibGUgdGJvZHkgdHIgdGQgLmlvYmplY3QtLXBpY3R1cmUsdGFibGUudGFibGUgdGJvZHkgdHIgdGQgLmlvYmplY3QtLXBpY3R1cmUgZmlndXJlLHRhYmxlLnRhYmxlIHRib2R5IHRyIHRoIC5pb2JqZWN0LS1waWN0dXJlLHRhYmxlLnRhYmxlIHRib2R5IHRyIHRoIC5pb2JqZWN0LS1waWN0dXJlIGZpZ3VyZSx0YWJsZS50YWJsZSB0ciB0ZCAuaW9iamVjdC0tcGljdHVyZSx0YWJsZS50YWJsZSB0ciB0ZCAuaW9iamVjdC0tcGljdHVyZSBmaWd1cmUsdGFibGUudGFibGUgdHIgdGggLmlvYmplY3QtLXBpY3R1cmUsdGFibGUudGFibGUgdHIgdGggLmlvYmplY3QtLXBpY3R1cmUgZmlndXJle21hcmdpbjowfXRhYmxlLnRhYmxlIHRib2R5IHRyIHRkIC5pb2JqZWN0LS1waWN0dXJlIGZpZ3VyZSBmaWdjYXB0aW9uLHRhYmxlLnRhYmxlIHRib2R5IHRyIHRoIC5pb2JqZWN0LS1waWN0dXJlIGZpZ3VyZSBmaWdjYXB0aW9uLHRhYmxlLnRhYmxlIHRyIHRkIC5pb2JqZWN0LS1waWN0dXJlIGZpZ3VyZSBmaWdjYXB0aW9uLHRhYmxlLnRhYmxlIHRyIHRoIC5pb2JqZWN0LS1waWN0dXJlIGZpZ3VyZSBmaWdjYXB0aW9ue2JvcmRlci1ib3R0b206bm9uZTttYXJnaW4tYm90dG9tOjA7cGFkZGluZy1ib3R0b206MH0uY29sLS1zaG9ydGNvZGU+LmlvYmplY3R7bWFyZ2luLXRvcDowfS5yb3ctLXNob3J0Y29kZS5yb3ctLWJvcmRlcnMgLmNvbC0tc2hvcnRjb2RlOmZpcnN0LWNoaWxkfi5jb2wtLXNob3J0Y29kZXtib3JkZXItbGVmdDoxcHggc29saWQgI2U1ZTVlNX0uY29sbGFwc2UtLXNob3J0Y29kZSwuY29sbGFwc2UtLXNob3J0Y29kZSAuY29sbGFwc2VfdGl0bGUtLXNob3J0Y29kZXttYXJnaW4tYm90dG9tOjMwcHh9LmNvbGxhcHNlLS1zaG9ydGNvZGUgLmNvbGxhcHNlX3RpdGxlLS1zaG9ydGNvZGUgcDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ubGlua2xpc3QtLXNob3J0Y29kZXtjb250YWluZXItbmFtZTpsaW5rbGlzdGNvbnRhaW5lcjtjb250YWluZXItdHlwZTppbmxpbmUtc2l6ZTttYXJnaW46MzBweCAwfS5saW5rbGlzdC0tc2hvcnRjb2RlIC5saW5rbGlzdHthbGlnbi1pdGVtczpzdHJldGNoO2Rpc3BsYXk6ZmxleDtnYXA6MnB4fUBjb250YWluZXIgbGlua2xpc3Rjb250YWluZXIgKG1heC13aWR0aDogNTAwcHgpey5saW5rbGlzdC0tc2hvcnRjb2RlIC5saW5rbGlzdHtmbGV4LWRpcmVjdGlvbjpjb2x1bW59fS5saW5rbGlzdC0tc2hvcnRjb2RlIC5saW5rbGlzdF9faGVhZGVye2JhY2tncm91bmQtY29sb3I6I2ZjMDtwYWRkaW5nOjFyZW19LmxpbmtsaXN0LS1zaG9ydGNvZGUgLmxpbmtsaXN0X19oZWFkZXIgaW1ne3dpZHRoOjEwMHB4fS5saW5rbGlzdC0tc2hvcnRjb2RlIC5saW5rbGlzdF9fbGlua3N7YWxpZ24taXRlbXM6c3RyZXRjaDtkaXNwbGF5OmdyaWQ7ZmxleC1ncm93OjEwMDtnYXA6MnB4O2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoYXV0by1maXQsbWlubWF4KDMwMHB4LDFmcikpO2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9LmxpbmtsaXN0LS1zaG9ydGNvZGUgLmxpbmtsaXN0X19saW5rcyBsaXtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWI7ZGlzcGxheTpibG9ja30ubGlua2xpc3QtLXNob3J0Y29kZSAubGlua2xpc3RfX2xpbmtzIGxpIGF7Y29sb3I6IzAwMDtkaXNwbGF5OmJsb2NrO2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6MTAwJTtwYWRkaW5nOi41cmVtIC43NXJlbTt0ZXh0LWRlY29yYXRpb246bm9uZTt3aWR0aDoxMDAlfS5saW5rbGlzdC0tc2hvcnRjb2RlIC5saW5rbGlzdF9fbGlua3MgbGkgYTpob3Zlcntjb2xvcjojZDQwNTExfXNlY3Rpb24ucGhvdG8tZ2FsbGVyeXttYXJnaW46MzBweCAwfXNlY3Rpb24ucGhvdG8tZ2FsbGVyeSAuZ2FsbGVyeV9faW1hZ2Vze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH1zZWN0aW9uLnBob3RvLWdhbGxlcnkgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbXtib3JkZXI6MXB4IHNvbGlkICNiMmIyYjI7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjA7bWF4LXdpZHRoOjUwMHB4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZX1zZWN0aW9uLnBob3RvLWdhbGxlcnkgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbTpob3ZlcjphZnRlcntmb250LXNpemU6MnJlbX1zZWN0aW9uLnBob3RvLWdhbGxlcnkgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbTpob3ZlciBpbWd7ZmlsdGVyOmJyaWdodG5lc3MoLjc1KX1zZWN0aW9uLnBob3RvLWdhbGxlcnkgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbSBpbWd7aGVpZ2h0OjE4MHB4O3RyYW5zaXRpb246ZmlsdGVyIC41czt3aWR0aDphdXRvfXNlY3Rpb24ucGhvdG8tZ2FsbGVyeSAuZ2FsbGVyeV9faW1hZ2VzIC5nYWxsZXJ5X19pdGVtIGZpZ2NhcHRpb257ZGlzcGxheTpub25lfXNlY3Rpb24ucGhvdG8tZ2FsbGVyeSAuZ2FsbGVyeV9faW1hZ2VzIC5nYWxsZXJ5X19pdGVtIGF7ZGlzcGxheTpibG9ja31zZWN0aW9uLnBob3RvLWdhbGxlcnkgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbTpob3ZlcjphZnRlcnthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6I2ZmZjtjb250ZW50OiJcZjAwZSI7ZGlzcGxheTpmbGV4O2ZvbnQtZmFtaWx5OkZvbnQgQXdlc29tZVwgNyBGcmVlO2ZvbnQtc2l6ZTozcmVtO2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6MTAwJTtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xlZnQ6MDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjEwMCV9c2VjdGlvbi5waG90by1nYWxsZXJ5IC5nYWxsZXJ5X19pbWFnZXMgLmdhbGxlcnlfX2l0ZW06aG92ZXIgaW1ne2ZpbHRlcjpicmlnaHRuZXNzKC44KTt0cmFuc2l0aW9uOmZpbHRlciAuMjVzfXNlY3Rpb24ucGhvdG8tZ2FsbGVyeSAuZ2FsbGVyeV9faW1hZ2VzIC5nYWxsZXJ5X19pdGVtOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSl7b3V0bGluZTpub25lfXNlY3Rpb24ucGhvdG8tZ2FsbGVyeSAuZ2FsbGVyeV9fY2FwdGlvbntib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTVlNWU1O2ZvbnQtc2l6ZTouODc1cmVtO21hcmdpbi10b3A6LjVyZW07cGFkZGluZy1ib3R0b206LjVyZW19c2VjdGlvbi5waG90by1nYWxsZXJ5IC5nYWxsZXJ5X19jYXB0aW9uIC5nYWxsZXJ5X190aXRsZXtmb250LXdlaWdodDo2MDB9c2VjdGlvbi5waG90by1nYWxsZXJ5IC5nYWxsZXJ5X19jYXB0aW9uIC5nYWxsZXJ5X190aXRsZSAuZ2FsbGVyeV9fdGl0bGVfX3NlcGFyYXRvcntjb2xvcjojYjJiMmIyO2ZvbnQtd2VpZ2h0OjQwMH1zZWN0aW9uLnBob3RvLWdhbGxlcnkgLmdhbGxlcnlfX2NhcHRpb24gLmlvYmplY3RfX2Rlc2NyaXB0aW9ue2ZvbnQtc3R5bGU6aXRhbGljfUBtZWRpYSAobWF4LXdpZHRoOjk5MS45OHB4KXtzZWN0aW9uLnBob3RvLWdhbGxlcnkgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbXttYXgtd2lkdGg6Mzg3cHh9c2VjdGlvbi5waG90by1nYWxsZXJ5IC5nYWxsZXJ5X19pbWFnZXMgLmdhbGxlcnlfX2l0ZW0gaW1ne2hlaWdodDoxNDBweH19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpe3NlY3Rpb24ucGhvdG8tZ2FsbGVyeSAuZ2FsbGVyeV9faW1hZ2VzIC5nYWxsZXJ5X19pdGVtIGltZ3toZWlnaHQ6MTIwcHh9fUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXtzZWN0aW9uLnBob3RvLWdhbGxlcnkgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbSBpbWd7aGVpZ2h0OjEwMHB4fX1zZWN0aW9uLnBob3RvLWdhbGxlcnktLWNvbXBhY3R7bWFyZ2luOjB9c2VjdGlvbi5waG90by1nYWxsZXJ5LS1jb21wYWN0IC5nYWxsZXJ5X19pbWFnZXMgLmdhbGxlcnlfX2l0ZW0gaW1ne2hlaWdodDoxMjBweH1AbWVkaWEgKG1heC13aWR0aDo5OTEuOThweCl7c2VjdGlvbi5waG90by1nYWxsZXJ5LS1jb21wYWN0IC5nYWxsZXJ5X19pbWFnZXMgLmdhbGxlcnlfX2l0ZW0gaW1ne2hlaWdodDoxMDBweH19c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmV7Ym9yZGVyLXRvcDpub25lO21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXgtd2lkdGg6NzUwcHh9c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmUgLmdhbGxlcnlfX2ltYWdlc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg2LDFmcik7Z3JpZC10ZW1wbGF0ZS1yb3dzOnJlcGVhdCg2LDFmcil9c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmUgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbXtib3JkZXI6bm9uZTttYXgtd2lkdGg6YXV0bzttYXgtd2lkdGg6bm9uZTtvdXRsaW5lOjFweCBzb2xpZCAjZTVlNWU1O3Bvc2l0aW9uOnJlbGF0aXZlfXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMgLmdhbGxlcnlfX2l0ZW0gaW1ne2hlaWdodDphdXRvIWltcG9ydGFudDttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnR9c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmUgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbSAubnVtLXJlbWFpbmluZ3thbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2ZvbnQtc2l6ZToxLjVyZW07aGVpZ2h0OjEwMCU7anVzdGlmeS1jb250ZW50OmNlbnRlcjtsZWZ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMgLmdhbGxlcnlfX2l0ZW0gLm51bS1yZW1haW5pbmcgc3BhbnthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDIxMiw1LDE3LC44NSk7Ym9yZGVyLXJhZGl1czo1MCU7Y29sb3I6I2ZmZjtkaXNwbGF5OmZsZXg7Zm9udC13ZWlnaHQ6NzAwO2hlaWdodDozZW07anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDozZW19c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmUgLmdhbGxlcnlfX2ltYWdlcyAuZ2FsbGVyeV9faXRlbTpob3ZlciAubnVtLXJlbWFpbmluZ3tvcGFjaXR5Oi41fXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMubnVtLTEgLmdhbGxlcnlfX2l0ZW17Z3JpZC1jb2x1bW46MS83O2dyaWQtcm93OjEvN31zZWN0aW9uLnBob3RvLWdhbGxlcnktLXNxdWFyZSAuZ2FsbGVyeV9faW1hZ2VzLm51bS0yLm9yaWVudGF0aW9uLXBvcnRyYWl0IC5nYWxsZXJ5X19pdGVtOmZpcnN0LWNoaWxke2dyaWQtY29sdW1uOjEvNDtncmlkLXJvdzoxLzd9c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmUgLmdhbGxlcnlfX2ltYWdlcy5udW0tMi5vcmllbnRhdGlvbi1wb3J0cmFpdCAuZ2FsbGVyeV9faXRlbTpsYXN0LWNoaWxke2dyaWQtY29sdW1uOjQvNztncmlkLXJvdzoxLzd9c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmUgLmdhbGxlcnlfX2ltYWdlcy5udW0tMi5vcmllbnRhdGlvbi1sYW5kc2NhcGUgLmdhbGxlcnlfX2l0ZW06Zmlyc3QtY2hpbGR7Z3JpZC1jb2x1bW46MS83O2dyaWQtcm93OjEvNH1zZWN0aW9uLnBob3RvLWdhbGxlcnktLXNxdWFyZSAuZ2FsbGVyeV9faW1hZ2VzLm51bS0yLm9yaWVudGF0aW9uLWxhbmRzY2FwZSAuZ2FsbGVyeV9faXRlbTpsYXN0LWNoaWxke2dyaWQtY29sdW1uOjEvNztncmlkLXJvdzo0Lzd9c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmUgLmdhbGxlcnlfX2ltYWdlcy5udW0tMy5vcmllbnRhdGlvbi1wb3J0cmFpdCAuZ2FsbGVyeV9faXRlbTpmaXJzdC1jaGlsZHtncmlkLWNvbHVtbjoxLzQ7Z3JpZC1yb3c6MS83fXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMubnVtLTMub3JpZW50YXRpb24tcG9ydHJhaXQgLmdhbGxlcnlfX2l0ZW06bnRoLWNoaWxkKDIpe2dyaWQtY29sdW1uOjQvNztncmlkLXJvdzoxLzR9c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmUgLmdhbGxlcnlfX2ltYWdlcy5udW0tMy5vcmllbnRhdGlvbi1wb3J0cmFpdCAuZ2FsbGVyeV9faXRlbTpudGgtY2hpbGQoMyl7Z3JpZC1jb2x1bW46NC83O2dyaWQtcm93OjQvN31zZWN0aW9uLnBob3RvLWdhbGxlcnktLXNxdWFyZSAuZ2FsbGVyeV9faW1hZ2VzLm51bS0zLm9yaWVudGF0aW9uLWxhbmRzY2FwZSAuZ2FsbGVyeV9faXRlbTpmaXJzdC1jaGlsZHtncmlkLWNvbHVtbjoxLzc7Z3JpZC1yb3c6MS80fXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMubnVtLTMub3JpZW50YXRpb24tbGFuZHNjYXBlIC5nYWxsZXJ5X19pdGVtOm50aC1jaGlsZCgyKXtncmlkLWNvbHVtbjoxLzQ7Z3JpZC1yb3c6NC83fXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMubnVtLTMub3JpZW50YXRpb24tbGFuZHNjYXBlIC5nYWxsZXJ5X19pdGVtOm50aC1jaGlsZCgzKXtncmlkLWNvbHVtbjo0Lzc7Z3JpZC1yb3c6NC83fXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMubnVtLTQub3JpZW50YXRpb24tcG9ydHJhaXQgLmdhbGxlcnlfX2l0ZW06Zmlyc3QtY2hpbGR7Z3JpZC1jb2x1bW46MS81O2dyaWQtcm93OjEvN31zZWN0aW9uLnBob3RvLWdhbGxlcnktLXNxdWFyZSAuZ2FsbGVyeV9faW1hZ2VzLm51bS00Lm9yaWVudGF0aW9uLXBvcnRyYWl0IC5nYWxsZXJ5X19pdGVtOm50aC1jaGlsZCgyKXtncmlkLWNvbHVtbjo1Lzc7Z3JpZC1yb3c6MS8zfXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMubnVtLTQub3JpZW50YXRpb24tcG9ydHJhaXQgLmdhbGxlcnlfX2l0ZW06bnRoLWNoaWxkKDMpe2dyaWQtY29sdW1uOjUvNztncmlkLXJvdzozLzV9c2VjdGlvbi5waG90by1nYWxsZXJ5LS1zcXVhcmUgLmdhbGxlcnlfX2ltYWdlcy5udW0tNC5vcmllbnRhdGlvbi1wb3J0cmFpdCAuZ2FsbGVyeV9faXRlbTpudGgtY2hpbGQoNCl7Z3JpZC1jb2x1bW46NS83O2dyaWQtcm93OjUvN31zZWN0aW9uLnBob3RvLWdhbGxlcnktLXNxdWFyZSAuZ2FsbGVyeV9faW1hZ2VzLm51bS00Lm9yaWVudGF0aW9uLWxhbmRzY2FwZSAuZ2FsbGVyeV9faXRlbTpmaXJzdC1jaGlsZHtncmlkLWNvbHVtbjoxLzc7Z3JpZC1yb3c6MS81fXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMubnVtLTQub3JpZW50YXRpb24tbGFuZHNjYXBlIC5nYWxsZXJ5X19pdGVtOm50aC1jaGlsZCgyKXtncmlkLWNvbHVtbjoxLzM7Z3JpZC1yb3c6NS83fXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMubnVtLTQub3JpZW50YXRpb24tbGFuZHNjYXBlIC5nYWxsZXJ5X19pdGVtOm50aC1jaGlsZCgzKXtncmlkLWNvbHVtbjozLzU7Z3JpZC1yb3c6NS83fXNlY3Rpb24ucGhvdG8tZ2FsbGVyeS0tc3F1YXJlIC5nYWxsZXJ5X19pbWFnZXMubnVtLTQub3JpZW50YXRpb24tbGFuZHNjYXBlIC5nYWxsZXJ5X19pdGVtOm50aC1jaGlsZCg0KXtncmlkLWNvbHVtbjo1Lzc7Z3JpZC1yb3c6NS83fXNlY3Rpb24uc2VjdGlvbi1mb3Jte2JhY2tncm91bmQtY29sb3I6I2YyZjJmMjtncmlkLWNvbHVtbjoyLzUhaW1wb3J0YW50fSNwcmljaW5nX2Zvcm0gI3ByaWNpbmdfZm9ybV9fZGltZW5zaW9ucywjcHJpY2luZ19mb3JtICNwcmljaW5nX2Zvcm1fX2xvYWRpbmcsI3ByaWNpbmdfZm9ybSAjcHJpY2luZ19mb3JtX19yZXN1bHRze2Rpc3BsYXk6bm9uZX0jcHJpY2luZ19mb3JtIC5oMywjcHJpY2luZ19mb3JtIC5pb2JqZWN0X19oZWFkaW5nLCNwcmljaW5nX2Zvcm0gaDN7bWFyZ2luLWJvdHRvbTozMHB4fSNwcmljaW5nX2Zvcm0gLmg0LCNwcmljaW5nX2Zvcm0gaDR7bWFyZ2luLWJvdHRvbToxNXB4fSNwcmljaW5nX2Zvcm0gI3ByaWNpbmdfZm9ybV9fcmVzdWx0cy5zbGlkaW5nLXVwe21hcmdpbi10b3A6MzBweH0jcHJpY2luZ19mb3JtICNwcmljaW5nX2Zvcm1fX2FsZXJ0e2Rpc3BsYXk6bm9uZX0jcHJpY2luZ19mb3JtICNwcmljaW5nX2Zvcm1fX2FsZXJ0IC5hbGVydHtmb250LXdlaWdodDo0MDA7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudDttYXJnaW4tdG9wOjMwcHh9LnNlY3Rpb24tLWxvY2F0b3J7Z3JpZC1jb2x1bW46Mi81IWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTowfS5zZWN0aW9uLS1sb2NhdG9yLC5zZWN0aW9uLS1sb2NhdG9yPi5pb2JqZWN0X19oZWFkaW5nLC5zZWN0aW9uLS1sb2NhdG9yPmgze21hcmdpbi1ib3R0b206MzBweH0uc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVye2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MzAwcHggMWZyO2hlaWdodDo2NDBweDtvdmVyZmxvdzpoaWRkZW59LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fc2lkZWJhcntiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjI7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjY2NjO2Rpc3BsYXk6Z3JpZDtncmlkLWNvbHVtbjoxLzI7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtncmlkLXRlbXBsYXRlLXJvd3M6YXV0byAxZnI7aGVpZ2h0OjY0MHB4O292ZXJmbG93LXk6YXV0b30uc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19zaWRlYmFyIC5sb2NhdG9yX19zZWFyY2h7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2NjYztwYWRkaW5nOjIwcHggMjBweCAxMHB4fS5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX3NpZGViYXIgLmxvY2F0b3JfX3NlYXJjaCAuZm9ybS1ncm91cHttYXJnaW4tYm90dG9tOjEwcHh9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fc2lkZWJhciAubG9jYXRvcl9fZmlsdGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1yaWdodDoyY2h9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fc2lkZWJhciAubG9jYXRvcl9fbGlzdHtsaXN0LXN0eWxlLXR5cGU6bm9uZTtvdmVyZmxvdy15OnNjcm9sbDtwYWRkaW5nOjB9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fc2lkZWJhciAubG9jYXRvcl9fbGlzdCAubGlzdC1pdGVte2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNjY2M7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzoxMHB4IDIwcHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC41c30uc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19zaWRlYmFyIC5sb2NhdG9yX19saXN0IC5saXN0LWl0ZW06Zm9jdXMsLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fc2lkZWJhciAubG9jYXRvcl9fbGlzdCAubGlzdC1pdGVtOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2ZmZjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjFzfS5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX3NpZGViYXIgLmxvY2F0b3JfX2xpc3QgLmxpc3QtaXRlbSAuaXRlbV9fdGl0bGV7Zm9udC1zaXplOjFlbTtmb250LXdlaWdodDo3MDA7bWFyZ2luOjB9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fc2lkZWJhciAubG9jYXRvcl9fbGlzdCAubGlzdC1pdGVtIGFkZHJlc3N7bWFyZ2luOjB9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dyaWQtY29sdW1uOjIvMztoZWlnaHQ6NjQwcHh9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fbWFwLXdyYXB7ZmxleC1iYXNpczozNSU7ZmxleC1ncm93OjEwO3Bvc2l0aW9uOnJlbGF0aXZlfS5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gLmxvY2F0b3JfX21hcC13cmFwIC5sb2NhdG9yX19tYXB7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0uc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5sb2NhdG9yX19tYXAtd3JhcCAuZW1iZWQtYWN0aXZhdG9ye2Rpc3BsYXk6bm9uZX0uc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5sb2NhdG9yX19tYXAtd3JhcCAubG9jYXRvcl9fbWFwOmVtcHR5Ky5lbWJlZC1hY3RpdmF0b3J7YWxpZ24taXRlbXM6Y2VudGVyO2FuaW1hdGlvbi1kdXJhdGlvbjoyczthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OjE7YW5pbWF0aW9uLW5hbWU6bWFwLWVtYmVkLWFjdGl2YXRvci1yZXZlYWw7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC41KTtib3R0b206MDtjb2xvcjojZmZmO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OmNlbnRlcjtsZWZ0OjA7cGFkZGluZzouNXJlbSAxcmVtO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlse2JvcmRlcjpub25lO2ZsZXgtYmFzaXM6MDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246ZmxleC1iYXNpcyAuM3N9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlsLS1zaG93e2JvcmRlcjoxcHggc29saWQgI2NjYztib3JkZXItbGVmdDpub25lO2ZsZXgtYmFzaXM6NjUlO2ZsZXgtc2hyaW5rOjA7b3ZlcmZsb3cteTphdXRvfS5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gLmxvY2F0b3JfX2RldGFpbF9fY29udGVudHtwYWRkaW5nOjIwcHh9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50IC5zZXJ2aWNlcG9pbnRfX3R5cGV7Zm9udC13ZWlnaHQ6NzAwO3BhZGRpbmctYm90dG9tOi41ZW19LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50IC5oNCwuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQgaDR7bWFyZ2luLWJvdHRvbTowfS5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gLmxvY2F0b3JfX2RldGFpbF9fY29udGVudCAuaDUsLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50IGg1e2ZvbnQtc2l6ZToxZW07bWFyZ2luLWJvdHRvbTowfS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+Lm1rdG9GaWVsZFdyYXA+ZGl2LC5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gLmxvY2F0b3JfX2RldGFpbF9fY29udGVudD4ucm93PmRpdiwuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50Pi5ta3RvRmllbGRXcmFwPmRpdiwuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50Pi5ta3RvRmllbGRXcmFwPmRpdiwuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLmxvY2F0b3JfX2RldGFpbF9fY29udGVudD4ubWt0b0ZpZWxkV3JhcD5kaXYsLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+Lm1rdG9GaWVsZFdyYXA+ZGl2LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50Pi5ta3RvRmllbGRXcmFwPmRpdntib3JkZXItbGVmdDoxcHggc29saWQgI2NjYzttYXJnaW4tYm90dG9tOjEwcHh9Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gLmxvY2F0b3JfX2RldGFpbF9fY29udGVudD4ubWt0b0ZpZWxkV3JhcD5kaXY6Zmlyc3QtY2hpbGQsLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50Pi5yb3c+ZGl2OmZpcnN0LWNoaWxkLC5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+Lm1rdG9GaWVsZFdyYXA+ZGl2OmZpcnN0LWNoaWxkLC5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+Lm1rdG9GaWVsZFdyYXA+ZGl2OmZpcnN0LWNoaWxkLC5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50Pi5ta3RvRmllbGRXcmFwPmRpdjpmaXJzdC1jaGlsZCwuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLmxvY2F0b3JfX2RldGFpbF9fY29udGVudD4ubWt0b0ZpZWxkV3JhcD5kaXY6Zmlyc3QtY2hpbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+Lm1rdG9GaWVsZFdyYXA+ZGl2OmZpcnN0LWNoaWxke2JvcmRlci1sZWZ0Om5vbmV9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50IC5sb2NhdG9yX196b29tLWljb257Y29sb3I6I2Q0MDUxMTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztmbG9hdDpyaWdodDtmb250LXNpemU6MS4xZW07bGluZS1oZWlnaHQ6MS4yNTttYXJnaW4tbGVmdDouNWVtO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDouMjVlbX0uc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5sb2NhdG9yX19kZXRhaWwgLmNsb3Nle3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjIwcHg7dG9wOjIwcHh9QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+Lm1rdG9GaWVsZFdyYXA+ZGl2Om50aC1jaGlsZCgyKSwuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+LnJvdz5kaXY6bnRoLWNoaWxkKDIpLC5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+Lm1rdG9GaWVsZFdyYXA+ZGl2Om50aC1jaGlsZCgyKSwuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50Pi5ta3RvRmllbGRXcmFwPmRpdjpudGgtY2hpbGQoMiksLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+Lm1rdG9GaWVsZFdyYXA+ZGl2Om50aC1jaGlsZCgyKSwuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLmxvY2F0b3JfX2RldGFpbF9fY29udGVudD4ubWt0b0ZpZWxkV3JhcD5kaXY6bnRoLWNoaWxkKDIpLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50Pi5ta3RvRmllbGRXcmFwPmRpdjpudGgtY2hpbGQoMil7Ym9yZGVyLWxlZnQ6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjI4MHB4IDFmcn0uc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19zaWRlYmFyIC5sb2NhdG9yX19saXN0Pi5saXN0LWl0ZW0sLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fc2lkZWJhciAubG9jYXRvcl9fc2VhcmNoe3BhZGRpbmc6MTBweH0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50Pi5ta3RvRmllbGRXcmFwPmRpdiwuc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19tYWluIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+LnJvdz5kaXYsLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLmxvY2F0b3JfX2RldGFpbF9fY29udGVudD4ubWt0b0ZpZWxkV3JhcD5kaXYsLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLmxvY2F0b3JfX2RldGFpbF9fY29udGVudD4ubWt0b0ZpZWxkV3JhcD5kaXYsLnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbiBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5sb2NhdG9yX19kZXRhaWxfX2NvbnRlbnQ+Lm1rdG9GaWVsZFdyYXA+ZGl2LC5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubG9jYXRvcl9fZGV0YWlsX19jb250ZW50Pi5ta3RvRmllbGRXcmFwPmRpdixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXIgLmxvY2F0b3JfX21haW4gLmxvY2F0b3JfX2RldGFpbF9fY29udGVudD4ubWt0b0ZpZWxkV3JhcD5kaXZ7Ym9yZGVyLWxlZnQ6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpey5zZWN0aW9uLS1sb2NhdG9yIC5sb2NhdG9yX19jb250YWluZXJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjEwMCU7Z3JpZC10ZW1wbGF0ZS1yb3dzOjMwMHB4IDMwMHB4O2hlaWdodDo2MDBweH0uc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyPip7Z3JpZC1jb2x1bW46MS8yIWltcG9ydGFudH0uc2VjdGlvbi0tbG9jYXRvciAubG9jYXRvcl9fY29udGFpbmVyIC5sb2NhdG9yX19zaWRlYmFye2dyaWQtcm93OjEvMjtoZWlnaHQ6MzAwcHh9LnNlY3Rpb24tLWxvY2F0b3IgLmxvY2F0b3JfX2NvbnRhaW5lciAubG9jYXRvcl9fbWFpbntncmlkLXJvdzoyLzM7aGVpZ2h0OjMwMHB4fX0ubWFwLWNsdXN0ZXItaWNvbnthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjojZDQwNTExO2JvcmRlci1yYWRpdXM6NTAlO2NvbG9yOiNmZmY7ZGlzcGxheTpmbGV4O2ZvbnQtc2l6ZToxcmVtO2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6MzBweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpbmUtaGVpZ2h0OjE7d2lkdGg6MzBweH1Aa2V5ZnJhbWVzIG1hcC1lbWJlZC1hY3RpdmF0b3ItcmV2ZWFsezAle29wYWNpdHk6MH02NSV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19LnNlY3Rpb24tLWluc3RydWN0aW9uc3tncmlkLWNvbHVtbjoyLzUhaW1wb3J0YW50O21hcmdpbi1ib3R0b206MzBweDtwYWRkaW5nOjB9LnNlY3Rpb24tLWluc3RydWN0aW9ucz4uaDMsLnNlY3Rpb24tLWluc3RydWN0aW9ucz4uaW9iamVjdF9faGVhZGluZywuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zPmgze21hcmdpbi1ib3R0b206MzBweH0uc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZjJmMmYyO3BhZGRpbmc6MzBweH0uc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25ze21hcmdpbi1ib3R0b206NjBweH0uc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNjY2M7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nLXRvcDoxNXB4fS5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbTpsYXN0LWNoaWxke2JvcmRlci1yaWdodDpub25lfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KSBhbmQgKG1heC13aWR0aDo3NjcuOThweCl7LnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zX19pdGVte2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNjY2N9LnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zX19pdGVtOm50aC1jaGlsZCgybisyKXtib3JkZXItcmlnaHQ6bm9uZX0uc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnNfX2l0ZW06bGFzdC1jaGlsZCwuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnNfX2l0ZW06bnRoLWxhc3QtY2hpbGQoMik6bnRoLWNoaWxkKG9kZCl7Ym9yZGVyLWJvdHRvbTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7LnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zX19pdGVte2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNjY2M7Ym9yZGVyLXJpZ2h0Om5vbmU7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfS5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbTpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206bm9uZX0uc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnNfX2l0ZW06Zmlyc3QtY2hpbGR7cGFkZGluZy10b3A6MH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbS5jb2wtbWQtMzpudGgtY2hpbGQoNG4rNCl7Ym9yZGVyLXJpZ2h0Om5vbmV9LnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zX19pdGVtLmNvbC1tZC0zOm50aC1jaGlsZCg0KX4qe21hcmdpbi10b3A6NjBweH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIGFuZCAobWF4LXdpZHRoOjk5MS45OHB4KXsubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zX19pdGVtLm1rdG9MYWJlbDpudGgtY2hpbGQoM24rMyksLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbS54eHh4bWt0b0xhYmVsOm50aC1jaGlsZCgzbiszKSwuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnNfX2l0ZW0uY29sLW1kLTQ6bnRoLWNoaWxkKDNuKzMpLC5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnN0cnVjdGlvbnNfX2l0ZW0ubWt0b0xhYmVsOm50aC1jaGlsZCgzbiszKSwuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAuaW5zdHJ1Y3Rpb25zX19pdGVtLnh4eHhta3RvTGFiZWw6bnRoLWNoaWxkKDNuKzMpLC5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuaW5zdHJ1Y3Rpb25zX19pdGVtLm1rdG9MYWJlbDpudGgtY2hpbGQoM24rMyksLnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5pbnN0cnVjdGlvbnNfX2l0ZW0ueHh4eG1rdG9MYWJlbDpudGgtY2hpbGQoM24rMyksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnNfX2l0ZW0ubWt0b0xhYmVsOm50aC1jaGlsZCgzbiszKSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbS54eHh4bWt0b0xhYmVsOm50aC1jaGlsZCgzbiszKXtib3JkZXItcmlnaHQ6bm9uZX0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zX19pdGVtLm1rdG9MYWJlbDpudGgtY2hpbGQoMyl+KiwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAgLnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zX19pdGVtLnh4eHhta3RvTGFiZWw6bnRoLWNoaWxkKDMpfiosLnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zX19pdGVtLmNvbC1tZC00Om50aC1jaGlsZCgzKX4qLC5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5pbnN0cnVjdGlvbnNfX2l0ZW0ubWt0b0xhYmVsOm50aC1jaGlsZCgzKX4qLC5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5pbnN0cnVjdGlvbnNfX2l0ZW0ueHh4eG1rdG9MYWJlbDpudGgtY2hpbGQoMyl+Kiwuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLmluc3RydWN0aW9uc19faXRlbS5ta3RvTGFiZWw6bnRoLWNoaWxkKDMpfiosLnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLWluc3RydWN0aW9ucyBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5pbnN0cnVjdGlvbnNfX2l0ZW0ueHh4eG1rdG9MYWJlbDpudGgtY2hpbGQoMyl+Kixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbS5ta3RvTGFiZWw6bnRoLWNoaWxkKDMpfiosYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnNfX2l0ZW0ueHh4eG1rdG9MYWJlbDpudGgtY2hpbGQoMyl+KnttYXJnaW4tdG9wOjYwcHh9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnNfX2l0ZW0uY29sLWxnLTM6bnRoLWNoaWxkKDRuKzQpe2JvcmRlci1yaWdodDpub25lfS5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbS5jb2wtbGctMzpudGgtY2hpbGQoNCl+KnttYXJnaW4tdG9wOjYwcHh9fS5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbSAuaW9iamVjdC0tcGljdHVyZSwuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnNfX2l0ZW0gLmlvYmplY3QtLXBpY3R1cmUgZmlndXJle21hcmdpbjowfUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zIC5pbnN0cnVjdGlvbnMgLnJvdy0tdmlkZW9zIC5pbnN0cnVjdGlvbnNfX3ZpZGVvLTEsLnNlY3Rpb24tLWluc3RydWN0aW9ucyAuaW5zdHJ1Y3Rpb25zIC5yb3ctLXZpZGVvcyAuaW5zdHJ1Y3Rpb25zX192aWRlby0ye3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS12aWRlb3MgLmluc3RydWN0aW9uc19fdmlkZW8tMnttYXJnaW4tdG9wOjE1cHh9fS5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucyAucm93LS12aWRlb3MgLmluc3RydWN0aW9uc19fdmlkZW8tMiBwOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19fbnVtYmVye2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTE7Ym9yZGVyLXJhZGl1czoxLjI1cmVtO2NvbG9yOiNmZmY7ZGlzcGxheTpmbGV4O2ZvbnQtc2l6ZToxLjVyZW07Zm9udC13ZWlnaHQ6NzAwO2hlaWdodDoyLjVyZW07anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW4tYm90dG9tOjFyZW07d2lkdGg6Mi41cmVtfS5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uczpoYXMoLmluc3RydWN0aW9uc19faXRlbTpudGgtY2hpbGQoMTApKSAuaW5zdHJ1Y3Rpb25zX19udW1iZXJ7Zm9udC1zaXplOjEuMTI1cmVtO2xldHRlci1zcGFjaW5nOi0uMDJlbX0uYXJ0aWNsZS1ib2R5IC5zZWN0aW9uLS1pbnN0cnVjdGlvbnMsLnBhZ2UtYm9keSAuc2VjdGlvbi0taW5zdHJ1Y3Rpb25ze21hcmdpbi1sZWZ0Oi0zMHB4O21hcmdpbi1yaWdodDotMzBweH1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7LmFydGljbGUtYm9keSAuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zLC5wYWdlLWJvZHkgLnNlY3Rpb24tLWluc3RydWN0aW9uc3ttYXJnaW4tbGVmdDotMTVweDttYXJnaW4tcmlnaHQ6LTE1cHh9fS5zZXJ2aWNlLWljb25ze2NvbG9yOiNkNDA1MTE7ZGlzcGxheTpibG9ja30uc2VydmljZS1pY29ucz4qe21hcmdpbi1yaWdodDoxY2h9LnNlcnZpY2UtaWNvbnM+Omxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjB9LmNvbXBvc2l0ZS1pY29uX190ZXh0e2ZvbnQtd2VpZ2h0OjkwMH0uZGhsLWljb246YmVmb3Jle2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjEuMjVlbTt2ZXJ0aWNhbC1hbGlnbjotLjI1ZW07d2lkdGg6MS4yNWVtfS5kaGwtaWNvbi5kaGwtaWNvbi1hY2Nlc3NpYmlsaXR5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2FjY2Vzc2liaWxpdHlfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hY2Nlc3NpYmlsaXR5LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9hY2Nlc3NpYmlsaXR5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFjY2Vzc2liaWxpdHkuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2FjY2Vzc2liaWxpdHlfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFjY2Vzc2liaWxpdHkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1hY2Nlc3NpYmlsaXR5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYWNjZXNzaWJpbGl0eV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWRkZWRfdmFsdWUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYWRkZWRfdmFsdWVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hZGRlZF92YWx1ZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYWRkZWRfdmFsdWVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWRkZWRfdmFsdWUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2FkZGVkX3ZhbHVlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hZGRlZF92YWx1ZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWFkZGVkX3ZhbHVlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYWRkZWRfdmFsdWVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFmdGVybWFya2V0X3BhcnRzX2Nhcl9zZWF0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2FmdGVybWFya2V0X3BhcnRzX2Nhcl9zZWF0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWZ0ZXJtYXJrZXRfcGFydHNfY2FyX3NlYXQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2FmdGVybWFya2V0X3BhcnRzX2Nhcl9zZWF0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFmdGVybWFya2V0X3BhcnRzX2Nhcl9zZWF0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9hZnRlcm1hcmtldF9wYXJ0c19jYXJfc2VhdF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWZ0ZXJtYXJrZXRfcGFydHNfY2FyX3NlYXQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1hZnRlcm1hcmtldF9wYXJ0c19jYXJfc2VhdDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2FmdGVybWFya2V0X3BhcnRzX2Nhcl9zZWF0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hZnRlcm1hcmtldF9wYXJ0c19yZWFydmlld19taXJyb3JzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2FmdGVybWFya2V0X3BhcnRzX3JlYXJ2aWV3X21pcnJvcnNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hZnRlcm1hcmtldF9wYXJ0c19yZWFydmlld19taXJyb3JzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9hZnRlcm1hcmtldF9wYXJ0c19yZWFydmlld19taXJyb3JzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFmdGVybWFya2V0X3BhcnRzX3JlYXJ2aWV3X21pcnJvcnMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2FmdGVybWFya2V0X3BhcnRzX3JlYXJ2aWV3X21pcnJvcnNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFmdGVybWFya2V0X3BhcnRzX3JlYXJ2aWV3X21pcnJvcnMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1hZnRlcm1hcmtldF9wYXJ0c19yZWFydmlld19taXJyb3JzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYWZ0ZXJtYXJrZXRfcGFydHNfcmVhcnZpZXdfbWlycm9yc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWlyX2ZyZWlnaHRfY2FyZ28uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYWlyX2ZyZWlnaHRfY2FyZ29fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1haXJfZnJlaWdodF9jYXJnby5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYWlyX2ZyZWlnaHRfY2FyZ29fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWlyX2ZyZWlnaHRfY2FyZ28uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Fpcl9mcmVpZ2h0X2NhcmdvX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1haXJfZnJlaWdodF9jYXJnby5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWFpcl9mcmVpZ2h0X2NhcmdvOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYWlyX2ZyZWlnaHRfY2FyZ29fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFpcnBvcnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYWlycG9ydF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFpcnBvcnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2FpcnBvcnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWlycG9ydC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYWlycG9ydF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWlycG9ydC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWFpcnBvcnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9haXJwb3J0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hbGVydC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9hbGVydF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFsZXJ0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9hbGVydF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hbGVydC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYWxlcnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFsZXJ0LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYWxlcnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9hbGVydF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWxyZWFkeV9hcHByb3ZlZC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9hbHJlYWR5X2FwcHJvdmVkX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYWxyZWFkeV9hcHByb3ZlZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYWxyZWFkeV9hcHByb3ZlZF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hbHJlYWR5X2FwcHJvdmVkLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9hbHJlYWR5X2FwcHJvdmVkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hbHJlYWR5X2FwcHJvdmVkLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYWxyZWFkeV9hcHByb3ZlZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2FscmVhZHlfYXBwcm92ZWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFtYnVsYW5jZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9hbWJ1bGFuY2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hbWJ1bGFuY2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2FtYnVsYW5jZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hbWJ1bGFuY2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2FtYnVsYW5jZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYW1idWxhbmNlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYW1idWxhbmNlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYW1idWxhbmNlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hbmRyb2lkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2FuZHJvaWRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hbmRyb2lkLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9hbmRyb2lkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFuZHJvaWQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2FuZHJvaWRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFuZHJvaWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1hbmRyb2lkOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYW5kcm9pZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXBwb2ludG1lbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYXBwb2ludG1lbnRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hcHBvaW50bWVudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYXBwb2ludG1lbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXBwb2ludG1lbnQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2FwcG9pbnRtZW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hcHBvaW50bWVudC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWFwcG9pbnRtZW50Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYXBwb2ludG1lbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFyY2hpdmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYXJjaGl2ZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFyY2hpdmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2FyY2hpdmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXJjaGl2ZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYXJjaGl2ZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXJjaGl2ZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWFyY2hpdmU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9hcmNoaXZlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9hcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9hcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9hcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXJyb3dfYmFjay5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9hcnJvd19iYWNrX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXJyb3dfYmFjay5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYXJyb3dfYmFja19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hcnJvd19iYWNrLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9hcnJvd19iYWNrX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hcnJvd19iYWNrLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYXJyb3dfYmFjazpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Fycm93X2JhY2tfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFycm93X2Rvd24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYXJyb3dfZG93bl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFycm93X2Rvd24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Fycm93X2Rvd25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXJyb3dfZG93bi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYXJyb3dfZG93bl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXJyb3dfZG93bi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWFycm93X2Rvd246bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9hcnJvd19kb3duX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hcnJvd19mb3J3YXJkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Fycm93X2ZvcndhcmRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hcnJvd19mb3J3YXJkLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9hcnJvd19mb3J3YXJkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFycm93X2ZvcndhcmQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Fycm93X2ZvcndhcmRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWFycm93X2ZvcndhcmQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1hcnJvd19mb3J3YXJkOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYXJyb3dfZm9yd2FyZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXJyb3dfdXAuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYXJyb3dfdXBfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hcnJvd191cC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYXJyb3dfdXBfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXJyb3dfdXAuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Fycm93X3VwX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hcnJvd191cC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWFycm93X3VwOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYXJyb3dfdXBfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWF0dGFjaG1lbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYXR0YWNobWVudF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWF0dGFjaG1lbnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2F0dGFjaG1lbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXR0YWNobWVudC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYXR0YWNobWVudF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXR0YWNobWVudC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWF0dGFjaG1lbnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9hdHRhY2htZW50X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hdXRvX21vYmlsaXR5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2F1dG9fbW9iaWxpdHlfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hdXRvX21vYmlsaXR5LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9hdXRvX21vYmlsaXR5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWF1dG9fbW9iaWxpdHkuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2F1dG9fbW9iaWxpdHlfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWF1dG9fbW9iaWxpdHkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1hdXRvX21vYmlsaXR5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYXV0b19tb2JpbGl0eV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXV0b21vdGl2ZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9hdXRvbW90aXZlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXV0b21vdGl2ZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYXV0b21vdGl2ZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hdXRvbW90aXZlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9hdXRvbW90aXZlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hdXRvbW90aXZlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYXV0b21vdGl2ZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2F1dG9tb3RpdmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWF2b2lkX2Nyb3dkcy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9hdm9pZF9jcm93ZHNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hdm9pZF9jcm93ZHMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2F2b2lkX2Nyb3dkc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1hdm9pZF9jcm93ZHMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2F2b2lkX2Nyb3dkc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYXZvaWRfY3Jvd2RzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYXZvaWRfY3Jvd2RzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYXZvaWRfY3Jvd2RzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1iYWNrZ3JvdW5kX2NvbG9yLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2JhY2tncm91bmRfY29sb3JfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1iYWNrZ3JvdW5kX2NvbG9yLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9iYWNrZ3JvdW5kX2NvbG9yX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJhY2tncm91bmRfY29sb3IuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2JhY2tncm91bmRfY29sb3JfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJhY2tncm91bmRfY29sb3IuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1iYWNrZ3JvdW5kX2NvbG9yOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYmFja2dyb3VuZF9jb2xvcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYmFsYW5jZV9jb25maXJtYXRpb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYmFsYW5jZV9jb25maXJtYXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1iYWxhbmNlX2NvbmZpcm1hdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYmFsYW5jZV9jb25maXJtYXRpb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYmFsYW5jZV9jb25maXJtYXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2JhbGFuY2VfY29uZmlybWF0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1iYWxhbmNlX2NvbmZpcm1hdGlvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWJhbGFuY2VfY29uZmlybWF0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYmFsYW5jZV9jb25maXJtYXRpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJpY3ljbGUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYmljeWNsZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJpY3ljbGUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2JpY3ljbGVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYmljeWNsZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYmljeWNsZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYmljeWNsZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWJpY3ljbGU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9iaWN5Y2xlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1iaW5vY3VsYXJzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Jpbm9jdWxhcnNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1iaW5vY3VsYXJzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9iaW5vY3VsYXJzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJpbm9jdWxhcnMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Jpbm9jdWxhcnNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJpbm9jdWxhcnMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1iaW5vY3VsYXJzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYmlub2N1bGFyc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYmlvaGF6YXJkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Jpb2hhemFyZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJpb2hhemFyZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYmlvaGF6YXJkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJpb2hhemFyZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYmlvaGF6YXJkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1iaW9oYXphcmQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1iaW9oYXphcmQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9iaW9oYXphcmRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJsdWV0b290aC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9ibHVldG9vdGhfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ibHVldG9vdGguZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2JsdWV0b290aF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ibHVldG9vdGguZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2JsdWV0b290aF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYmx1ZXRvb3RoLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYmx1ZXRvb3RoOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYmx1ZXRvb3RoX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ib2F0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2JvYXRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ib2F0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9ib2F0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJvYXQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2JvYXRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJvYXQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1ib2F0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYm9hdF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYm9va21hcmtfb2ZmLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Jvb2ttYXJrX29mZl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJvb2ttYXJrX29mZi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYm9va21hcmtfb2ZmX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJvb2ttYXJrX29mZi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYm9va21hcmtfb2ZmX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ib29rbWFya19vZmYuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1ib29rbWFya19vZmY6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9ib29rbWFya19vZmZfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJvb2ttYXJrX29uLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Jvb2ttYXJrX29uX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYm9va21hcmtfb24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Jvb2ttYXJrX29uX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJvb2ttYXJrX29uLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9ib29rbWFya19vbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYm9va21hcmtfb24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1ib29rbWFya19vbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Jvb2ttYXJrX29uX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ib3V0aXF1ZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9ib3V0aXF1ZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJvdXRpcXVlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9ib3V0aXF1ZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ib3V0aXF1ZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYm91dGlxdWVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJvdXRpcXVlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYm91dGlxdWU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9ib3V0aXF1ZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnJlYWtmYXN0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2JyZWFrZmFzdF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJyZWFrZmFzdC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYnJlYWtmYXN0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJyZWFrZmFzdC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYnJlYWtmYXN0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1icmVha2Zhc3QuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1icmVha2Zhc3Q6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9icmVha2Zhc3RfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJyaWVmY2FzZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9icmllZmNhc2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1icmllZmNhc2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2JyaWVmY2FzZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1icmllZmNhc2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2JyaWVmY2FzZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnJpZWZjYXNlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYnJpZWZjYXNlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYnJpZWZjYXNlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1icm93c2VyX2FsZXJ0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Jyb3dzZXJfYWxlcnRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1icm93c2VyX2FsZXJ0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9icm93c2VyX2FsZXJ0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJyb3dzZXJfYWxlcnQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Jyb3dzZXJfYWxlcnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJyb3dzZXJfYWxlcnQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1icm93c2VyX2FsZXJ0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYnJvd3Nlcl9hbGVydF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnJvd3Nlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9icm93c2VyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnJvd3Nlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYnJvd3Nlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1icm93c2VyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9icm93c2VyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1icm93c2VyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYnJvd3Nlcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Jyb3dzZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJydXNoLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2JydXNoX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnJ1c2guZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2JydXNoX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJydXNoLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9icnVzaF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnJ1c2guZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1icnVzaDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2JydXNoX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1idWJibGVfY2hhcnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYnViYmxlX2NoYXJ0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnViYmxlX2NoYXJ0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9idWJibGVfY2hhcnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnViYmxlX2NoYXJ0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9idWJibGVfY2hhcnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJ1YmJsZV9jaGFydC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWJ1YmJsZV9jaGFydDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2J1YmJsZV9jaGFydF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnVnLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2J1Z19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJ1Zy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vYnVnX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJ1Zy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvYnVnX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1idWcuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1idWc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9idWdfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJ1bGt5X3NoaXBtZW50cy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9idWxreV9zaGlwbWVudHNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1idWxreV9zaGlwbWVudHMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2J1bGt5X3NoaXBtZW50c19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1idWxreV9zaGlwbWVudHMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2J1bGt5X3NoaXBtZW50c19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnVsa3lfc2hpcG1lbnRzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tYnVsa3lfc2hpcG1lbnRzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svYnVsa3lfc2hpcG1lbnRzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1idXMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvYnVzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnVzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9idXNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tYnVzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9idXNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWJ1cy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWJ1czpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2J1c19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfZnJpZGF5X2VuZ2xpc2guZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY2FsZW5kYXJfZnJpZGF5X2VuZ2xpc2hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9mcmlkYXlfZW5nbGlzaC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2FsZW5kYXJfZnJpZGF5X2VuZ2xpc2hfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfZnJpZGF5X2VuZ2xpc2guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhbGVuZGFyX2ZyaWRheV9lbmdsaXNoX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9mcmlkYXlfZW5nbGlzaC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX2ZyaWRheV9lbmdsaXNoOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FsZW5kYXJfZnJpZGF5X2VuZ2xpc2hfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX2ZyaWRheV9nZXJtYW4uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY2FsZW5kYXJfZnJpZGF5X2dlcm1hbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX2ZyaWRheV9nZXJtYW4uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NhbGVuZGFyX2ZyaWRheV9nZXJtYW5fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfZnJpZGF5X2dlcm1hbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2FsZW5kYXJfZnJpZGF5X2dlcm1hbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfZnJpZGF5X2dlcm1hbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX2ZyaWRheV9nZXJtYW46bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jYWxlbmRhcl9mcmlkYXlfZ2VybWFuX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9tb25kYXlfZW5nbGlzaC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYWxlbmRhcl9tb25kYXlfZW5nbGlzaF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX21vbmRheV9lbmdsaXNoLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jYWxlbmRhcl9tb25kYXlfZW5nbGlzaF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9tb25kYXlfZW5nbGlzaC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2FsZW5kYXJfbW9uZGF5X2VuZ2xpc2hfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX21vbmRheV9lbmdsaXNoLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfbW9uZGF5X2VuZ2xpc2g6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jYWxlbmRhcl9tb25kYXlfZW5nbGlzaF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfbW9uZGF5X2dlcm1hbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYWxlbmRhcl9tb25kYXlfZ2VybWFuX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfbW9uZGF5X2dlcm1hbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2FsZW5kYXJfbW9uZGF5X2dlcm1hbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9tb25kYXlfZ2VybWFuLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jYWxlbmRhcl9tb25kYXlfZ2VybWFuX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9tb25kYXlfZ2VybWFuLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfbW9uZGF5X2dlcm1hbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NhbGVuZGFyX21vbmRheV9nZXJtYW5fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhbGVuZGFyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NhbGVuZGFyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jYWxlbmRhcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NhbGVuZGFyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9zYXR1cmRheV9lbmdsaXNoLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhbGVuZGFyX3NhdHVyZGF5X2VuZ2xpc2hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9zYXR1cmRheV9lbmdsaXNoLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jYWxlbmRhcl9zYXR1cmRheV9lbmdsaXNoX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3NhdHVyZGF5X2VuZ2xpc2guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhbGVuZGFyX3NhdHVyZGF5X2VuZ2xpc2hfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3NhdHVyZGF5X2VuZ2xpc2guZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9zYXR1cmRheV9lbmdsaXNoOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FsZW5kYXJfc2F0dXJkYXlfZW5nbGlzaF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfc2F0dXJkYXlfZ2VybWFuLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhbGVuZGFyX3NhdHVyZGF5X2dlcm1hbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3NhdHVyZGF5X2dlcm1hbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2FsZW5kYXJfc2F0dXJkYXlfZ2VybWFuX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3NhdHVyZGF5X2dlcm1hbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2FsZW5kYXJfc2F0dXJkYXlfZ2VybWFuX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9zYXR1cmRheV9nZXJtYW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9zYXR1cmRheV9nZXJtYW46bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jYWxlbmRhcl9zYXR1cmRheV9nZXJtYW5fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3N1bmRheV9lbmdsaXNoLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhbGVuZGFyX3N1bmRheV9lbmdsaXNoX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfc3VuZGF5X2VuZ2xpc2guZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NhbGVuZGFyX3N1bmRheV9lbmdsaXNoX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3N1bmRheV9lbmdsaXNoLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jYWxlbmRhcl9zdW5kYXlfZW5nbGlzaF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfc3VuZGF5X2VuZ2xpc2guZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9zdW5kYXlfZW5nbGlzaDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NhbGVuZGFyX3N1bmRheV9lbmdsaXNoX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9zdW5kYXlfZ2VybWFuLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhbGVuZGFyX3N1bmRheV9nZXJtYW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9zdW5kYXlfZ2VybWFuLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jYWxlbmRhcl9zdW5kYXlfZ2VybWFuX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3N1bmRheV9nZXJtYW4uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhbGVuZGFyX3N1bmRheV9nZXJtYW5fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3N1bmRheV9nZXJtYW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl9zdW5kYXlfZ2VybWFuOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FsZW5kYXJfc3VuZGF5X2dlcm1hbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfdGh1cnNkYXlfZW5nbGlzaC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYWxlbmRhcl90aHVyc2RheV9lbmdsaXNoX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfdGh1cnNkYXlfZW5nbGlzaC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2FsZW5kYXJfdGh1cnNkYXlfZW5nbGlzaF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90aHVyc2RheV9lbmdsaXNoLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jYWxlbmRhcl90aHVyc2RheV9lbmdsaXNoX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90aHVyc2RheV9lbmdsaXNoLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfdGh1cnNkYXlfZW5nbGlzaDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NhbGVuZGFyX3RodXJzZGF5X2VuZ2xpc2hfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3RodXJzZGF5X2dlcm1hbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYWxlbmRhcl90aHVyc2RheV9nZXJtYW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90aHVyc2RheV9nZXJtYW4uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NhbGVuZGFyX3RodXJzZGF5X2dlcm1hbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90aHVyc2RheV9nZXJtYW4uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhbGVuZGFyX3RodXJzZGF5X2dlcm1hbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfdGh1cnNkYXlfZ2VybWFuLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfdGh1cnNkYXlfZ2VybWFuOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FsZW5kYXJfdGh1cnNkYXlfZ2VybWFuX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90b2RheV9lbmdsaXNoLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhbGVuZGFyX3RvZGF5X2VuZ2xpc2hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90b2RheV9lbmdsaXNoLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jYWxlbmRhcl90b2RheV9lbmdsaXNoX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3RvZGF5X2VuZ2xpc2guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhbGVuZGFyX3RvZGF5X2VuZ2xpc2hfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3RvZGF5X2VuZ2xpc2guZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90b2RheV9lbmdsaXNoOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FsZW5kYXJfdG9kYXlfZW5nbGlzaF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfdG9kYXlfZ2VybWFuLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhbGVuZGFyX3RvZGF5X2dlcm1hbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3RvZGF5X2dlcm1hbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2FsZW5kYXJfdG9kYXlfZ2VybWFuX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3RvZGF5X2dlcm1hbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2FsZW5kYXJfdG9kYXlfZ2VybWFuX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90b2RheV9nZXJtYW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90b2RheV9nZXJtYW46bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jYWxlbmRhcl90b2RheV9nZXJtYW5fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3R1ZXNkYXlfZW5nbGlzaC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYWxlbmRhcl90dWVzZGF5X2VuZ2xpc2hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90dWVzZGF5X2VuZ2xpc2guZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NhbGVuZGFyX3R1ZXNkYXlfZW5nbGlzaF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90dWVzZGF5X2VuZ2xpc2guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhbGVuZGFyX3R1ZXNkYXlfZW5nbGlzaF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfdHVlc2RheV9lbmdsaXNoLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfdHVlc2RheV9lbmdsaXNoOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FsZW5kYXJfdHVlc2RheV9lbmdsaXNoX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90dWVzZGF5X2dlcm1hbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYWxlbmRhcl90dWVzZGF5X2dlcm1hbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3R1ZXNkYXlfZ2VybWFuLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jYWxlbmRhcl90dWVzZGF5X2dlcm1hbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl90dWVzZGF5X2dlcm1hbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2FsZW5kYXJfdHVlc2RheV9nZXJtYW5fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3R1ZXNkYXlfZ2VybWFuLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfdHVlc2RheV9nZXJtYW46bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jYWxlbmRhcl90dWVzZGF5X2dlcm1hbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfd2VkbnNkYXlfZW5nbGlzaC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYWxlbmRhcl93ZWRuc2RheV9lbmdsaXNoX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfd2VkbnNkYXlfZW5nbGlzaC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2FsZW5kYXJfd2VkbnNkYXlfZW5nbGlzaF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl93ZWRuc2RheV9lbmdsaXNoLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jYWxlbmRhcl93ZWRuc2RheV9lbmdsaXNoX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl93ZWRuc2RheV9lbmdsaXNoLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfd2VkbnNkYXlfZW5nbGlzaDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NhbGVuZGFyX3dlZG5zZGF5X2VuZ2xpc2hfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGVuZGFyX3dlZG5zZGF5X2dlcm1hbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYWxlbmRhcl93ZWRuc2RheV9nZXJtYW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl93ZWRuc2RheV9nZXJtYW4uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NhbGVuZGFyX3dlZG5zZGF5X2dlcm1hbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxlbmRhcl93ZWRuc2RheV9nZXJtYW4uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhbGVuZGFyX3dlZG5zZGF5X2dlcm1hbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfd2VkbnNkYXlfZ2VybWFuLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FsZW5kYXJfd2VkbnNkYXlfZ2VybWFuOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FsZW5kYXJfd2VkbnNkYXlfZ2VybWFuX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxpcGVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhbGlwZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxpcGVyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jYWxpcGVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGlwZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhbGlwZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbGlwZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYWxpcGVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FsaXBlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsbC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYWxsX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FsbC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2FsbF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxsLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jYWxsX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYWxsLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FsbDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NhbGxfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbWVyYV9vZmYuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY2FtZXJhX29mZl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbWVyYV9vZmYuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NhbWVyYV9vZmZfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FtZXJhX29mZi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2FtZXJhX29mZl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FtZXJhX29mZi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNhbWVyYV9vZmY6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jYW1lcmFfb2ZmX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYW1lcmEuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY2FtZXJhX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FtZXJhLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jYW1lcmFfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FtZXJhLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jYW1lcmFfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbWVyYS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNhbWVyYTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NhbWVyYV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FuY2VsX2NpcmNsZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYW5jZWxfY2lyY2xlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FuY2VsX2NpcmNsZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2FuY2VsX2NpcmNsZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYW5jZWxfY2lyY2xlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jYW5jZWxfY2lyY2xlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYW5jZWxfY2lyY2xlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FuY2VsX2NpcmNsZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NhbmNlbF9jaXJjbGVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhbmNlbC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYW5jZWxfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYW5jZWwuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NhbmNlbF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYW5jZWwuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhbmNlbF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FuY2VsLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FuY2VsOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FuY2VsX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYXJib25fZGFzaGJvYXJkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhcmJvbl9kYXNoYm9hcmRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYXJib25fZGFzaGJvYXJkLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jYXJib25fZGFzaGJvYXJkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhcmJvbl9kYXNoYm9hcmQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NhcmJvbl9kYXNoYm9hcmRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhcmJvbl9kYXNoYm9hcmQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYXJib25fZGFzaGJvYXJkOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2FyYm9uX2Rhc2hib2FyZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FyZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYXJlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FyZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2FyZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYXJlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jYXJlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYXJlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FyZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NhcmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhc2hfb25fZGVsaXZlcnkuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY2FzaF9vbl9kZWxpdmVyeV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhc2hfb25fZGVsaXZlcnkuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Nhc2hfb25fZGVsaXZlcnlfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FzaF9vbl9kZWxpdmVyeS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2FzaF9vbl9kZWxpdmVyeV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2FzaF9vbl9kZWxpdmVyeS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNhc2hfb25fZGVsaXZlcnk6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jYXNoX29uX2RlbGl2ZXJ5X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYXN0X3NjcmVlbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jYXN0X3NjcmVlbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhc3Rfc2NyZWVuLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jYXN0X3NjcmVlbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYXN0X3NjcmVlbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2FzdF9zY3JlZW5fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhc3Rfc2NyZWVuLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2FzdF9zY3JlZW46bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jYXN0X3NjcmVlbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2F0YWxvZ3VlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NhdGFsb2d1ZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhdGFsb2d1ZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2F0YWxvZ3VlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNhdGFsb2d1ZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2F0YWxvZ3VlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jYXRhbG9ndWUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jYXRhbG9ndWU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jYXRhbG9ndWVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNjX29mZi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jY19vZmZfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jY19vZmYuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NjX29mZl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jY19vZmYuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NjX29mZl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2Nfb2ZmLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2Nfb2ZmOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2Nfb2ZmX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jY19vbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jY19vbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNjX29uLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jY19vbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jY19vbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2Nfb25fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNjX29uLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2Nfb246bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jY19vbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2VydGlmaWNhdGUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY2VydGlmaWNhdGVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jZXJ0aWZpY2F0ZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2VydGlmaWNhdGVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2VydGlmaWNhdGUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NlcnRpZmljYXRlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jZXJ0aWZpY2F0ZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNlcnRpZmljYXRlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2VydGlmaWNhdGVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNsZWFyYW5jZV9kZWxheS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jbGVhcmFuY2VfZGVsYXlfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jbGVhcmFuY2VfZGVsYXkuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NsZWFyYW5jZV9kZWxheV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jbGVhcmFuY2VfZGVsYXkuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NsZWFyYW5jZV9kZWxheV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2xlYXJhbmNlX2RlbGF5LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2xlYXJhbmNlX2RlbGF5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2xlYXJhbmNlX2RlbGF5X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jbG91ZF9sb2FkaW5nLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Nsb3VkX2xvYWRpbmdfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jbG91ZF9sb2FkaW5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jbG91ZF9sb2FkaW5nX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNsb3VkX2xvYWRpbmcuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Nsb3VkX2xvYWRpbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNsb3VkX2xvYWRpbmcuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jbG91ZF9sb2FkaW5nOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2xvdWRfbG9hZGluZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2xvdWQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY2xvdWRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jbG91ZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2xvdWRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2xvdWQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Nsb3VkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jbG91ZC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNsb3VkOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2xvdWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNsb3VkX3NhdmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY2xvdWRfc2F2ZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNsb3VkX3NhdmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Nsb3VkX3NhdmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2xvdWRfc2F2ZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2xvdWRfc2F2ZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2xvdWRfc2F2ZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNsb3VkX3NhdmU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jbG91ZF9zYXZlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jbG91ZF9zdWNjZXNzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Nsb3VkX3N1Y2Nlc3NfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jbG91ZF9zdWNjZXNzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jbG91ZF9zdWNjZXNzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNsb3VkX3N1Y2Nlc3MuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Nsb3VkX3N1Y2Nlc3NfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNsb3VkX3N1Y2Nlc3MuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jbG91ZF9zdWNjZXNzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2xvdWRfc3VjY2Vzc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29mZmVlX2JyZWFrLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvZmZlZV9icmVha19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvZmZlZV9icmVhay5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY29mZmVlX2JyZWFrX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvZmZlZV9icmVhay5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY29mZmVlX2JyZWFrX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb2ZmZWVfYnJlYWsuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb2ZmZWVfYnJlYWs6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jb2ZmZWVfYnJlYWtfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbGxlZ2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY29sbGVnZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbGxlZ2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NvbGxlZ2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29sbGVnZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY29sbGVnZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29sbGVnZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNvbGxlZ2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jb2xsZWdlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb2xvcl9zZWxlY3Rpb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY29sb3Jfc2VsZWN0aW9uX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29sb3Jfc2VsZWN0aW9uLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jb2xvcl9zZWxlY3Rpb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29sb3Jfc2VsZWN0aW9uLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb2xvcl9zZWxlY3Rpb25fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbG9yX3NlbGVjdGlvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNvbG9yX3NlbGVjdGlvbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbG9yX3NlbGVjdGlvbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29tbWVudC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb21tZW50X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29tbWVudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY29tbWVudF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb21tZW50LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb21tZW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb21tZW50LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29tbWVudDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbW1lbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbXBhbnlfZG9jdG9yLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvbXBhbnlfZG9jdG9yX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29tcGFueV9kb2N0b3IuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NvbXBhbnlfZG9jdG9yX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbXBhbnlfZG9jdG9yLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb21wYW55X2RvY3Rvcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29tcGFueV9kb2N0b3IuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb21wYW55X2RvY3Rvcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbXBhbnlfZG9jdG9yX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb21wYXNzX2RyYXdpbmdfdG9vbC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb21wYXNzX2RyYXdpbmdfdG9vbF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbXBhc3NfZHJhd2luZ190b29sLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jb21wYXNzX2RyYXdpbmdfdG9vbF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb21wYXNzX2RyYXdpbmdfdG9vbC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY29tcGFzc19kcmF3aW5nX3Rvb2xfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbXBhc3NfZHJhd2luZ190b29sLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29tcGFzc19kcmF3aW5nX3Rvb2w6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jb21wYXNzX2RyYXdpbmdfdG9vbF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29uZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb25lX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29uZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY29uZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25lLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb25lX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25lLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29uZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbmZlcmVuY2VfYmFnLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvbmZlcmVuY2VfYmFnX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29uZmVyZW5jZV9iYWcuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NvbmZlcmVuY2VfYmFnX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbmZlcmVuY2VfYmFnLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb25mZXJlbmNlX2JhZ19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29uZmVyZW5jZV9iYWcuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb25mZXJlbmNlX2JhZzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbmZlcmVuY2VfYmFnX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25mZXJlbmNlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvbmZlcmVuY2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25mZXJlbmNlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jb25mZXJlbmNlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbmZlcmVuY2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NvbmZlcmVuY2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbmZlcmVuY2UuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb25mZXJlbmNlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY29uZmVyZW5jZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29uZmlybWVkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvbmZpcm1lZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbmZpcm1lZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY29uZmlybWVkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbmZpcm1lZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY29uZmlybWVkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25maXJtZWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb25maXJtZWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jb25maXJtZWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbm5lY3RlZC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb25uZWN0ZWRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25uZWN0ZWQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Nvbm5lY3RlZF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25uZWN0ZWQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Nvbm5lY3RlZF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29ubmVjdGVkLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29ubmVjdGVkOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY29ubmVjdGVkX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25uZWN0aW5nLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Nvbm5lY3RpbmdfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25uZWN0aW5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jb25uZWN0aW5nX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbm5lY3RpbmcuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Nvbm5lY3RpbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbm5lY3RpbmcuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb25uZWN0aW5nOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY29ubmVjdGluZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29ucy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb25zX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29ucy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY29uc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25zLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb25zX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25zLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29uczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbnNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnN0cnVjdGlvbl92ZWhpY2xlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvbnN0cnVjdGlvbl92ZWhpY2xlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29uc3RydWN0aW9uX3ZlaGljbGUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NvbnN0cnVjdGlvbl92ZWhpY2xlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnN0cnVjdGlvbl92ZWhpY2xlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb25zdHJ1Y3Rpb25fdmVoaWNsZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29uc3RydWN0aW9uX3ZlaGljbGUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb25zdHJ1Y3Rpb25fdmVoaWNsZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbnN0cnVjdGlvbl92ZWhpY2xlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25zdW1lci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb25zdW1lcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnN1bWVyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jb25zdW1lcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb25zdW1lci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY29uc3VtZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnN1bWVyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29uc3VtZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jb25zdW1lcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29udGFjdGxlc3NfcGF5bWVudC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb250YWN0bGVzc19wYXltZW50X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29udGFjdGxlc3NfcGF5bWVudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY29udGFjdGxlc3NfcGF5bWVudF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250YWN0bGVzc19wYXltZW50LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb250YWN0bGVzc19wYXltZW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250YWN0bGVzc19wYXltZW50LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29udGFjdGxlc3NfcGF5bWVudDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbnRhY3RsZXNzX3BheW1lbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnRhaW5lci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb250YWluZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250YWluZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NvbnRhaW5lcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250YWluZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NvbnRhaW5lcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29udGFpbmVyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29udGFpbmVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY29udGFpbmVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250YWluZXJzaGlwLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvbnRhaW5lcnNoaXBfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250YWluZXJzaGlwLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jb250YWluZXJzaGlwX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnRhaW5lcnNoaXAuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NvbnRhaW5lcnNoaXBfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnRhaW5lcnNoaXAuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb250YWluZXJzaGlwOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY29udGFpbmVyc2hpcF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29udGVudC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb250ZW50X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29udGVudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY29udGVudF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250ZW50LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb250ZW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250ZW50LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29udGVudDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbnRlbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnRyb2xsZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY29udHJvbGxlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnRyb2xsZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NvbnRyb2xsZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29udHJvbGxlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY29udHJvbGxlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29udHJvbGxlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNvbnRyb2xsZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jb250cm9sbGVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250cm9sX3Rvd2VyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvbnRyb2xfdG93ZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb250cm9sX3Rvd2VyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jb250cm9sX3Rvd2VyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnRyb2xfdG93ZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NvbnRyb2xfdG93ZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvbnRyb2xfdG93ZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb250cm9sX3Rvd2VyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY29udHJvbF90b3dlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29udmV5b3JfYmVsdC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb252ZXlvcl9iZWx0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29udmV5b3JfYmVsdC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY29udmV5b3JfYmVsdF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb252ZXlvcl9iZWx0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb252ZXlvcl9iZWx0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb252ZXlvcl9iZWx0LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29udmV5b3JfYmVsdDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvbnZleW9yX2JlbHRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvb2tpZXMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY29va2llc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvb2tpZXMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Nvb2tpZXNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29va2llcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY29va2llc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29va2llcy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNvb2tpZXM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jb29raWVzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb3B5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvcHlfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb3B5LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jb3B5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvcHkuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NvcHlfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvcHkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb3B5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY29weV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29weV90b19jbGlwYm9hcmQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY29weV90b19jbGlwYm9hcmRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb3B5X3RvX2NsaXBib2FyZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY29weV90b19jbGlwYm9hcmRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29weV90b19jbGlwYm9hcmQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NvcHlfdG9fY2xpcGJvYXJkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb3B5X3RvX2NsaXBib2FyZC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNvcHlfdG9fY2xpcGJvYXJkOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY29weV90b19jbGlwYm9hcmRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvcmRsZXNzX3NjcmV3ZHJpdmVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NvcmRsZXNzX3NjcmV3ZHJpdmVyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29yZGxlc3Nfc2NyZXdkcml2ZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NvcmRsZXNzX3NjcmV3ZHJpdmVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvcmRsZXNzX3NjcmV3ZHJpdmVyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jb3JkbGVzc19zY3Jld2RyaXZlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY29yZGxlc3Nfc2NyZXdkcml2ZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jb3JkbGVzc19zY3Jld2RyaXZlcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NvcmRsZXNzX3NjcmV3ZHJpdmVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb3JvbmF2aXJ1cy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jb3JvbmF2aXJ1c19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvcm9uYXZpcnVzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jb3JvbmF2aXJ1c19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jb3JvbmF2aXJ1cy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY29yb25hdmlydXNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNvcm9uYXZpcnVzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY29yb25hdmlydXM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jb3JvbmF2aXJ1c19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3JhZnRzX2FuZF9kaXkuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY3JhZnRzX2FuZF9kaXlfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jcmFmdHNfYW5kX2RpeS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY3JhZnRzX2FuZF9kaXlfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3JhZnRzX2FuZF9kaXkuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NyYWZ0c19hbmRfZGl5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jcmFmdHNfYW5kX2RpeS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNyYWZ0c19hbmRfZGl5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY3JhZnRzX2FuZF9kaXlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNyb3AuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY3JvcF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNyb3AuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Nyb3BfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3JvcC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY3JvcF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3JvcC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNyb3A6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jcm9wX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jdXJyZW5jeV9jaGFuZ2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY3VycmVuY3lfY2hhbmdlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3VycmVuY3lfY2hhbmdlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jdXJyZW5jeV9jaGFuZ2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3VycmVuY3lfY2hhbmdlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jdXJyZW5jeV9jaGFuZ2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWN1cnJlbmN5X2NoYW5nZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWN1cnJlbmN5X2NoYW5nZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2N1cnJlbmN5X2NoYW5nZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3VycmVudF9sb2NhdGlvbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jdXJyZW50X2xvY2F0aW9uX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3VycmVudF9sb2NhdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY3VycmVudF9sb2NhdGlvbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jdXJyZW50X2xvY2F0aW9uLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jdXJyZW50X2xvY2F0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jdXJyZW50X2xvY2F0aW9uLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY3VycmVudF9sb2NhdGlvbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2N1cnJlbnRfbG9jYXRpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWN1c3RvbV9zZXJ2aWNlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2N1c3RvbV9zZXJ2aWNlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3VzdG9tX3NlcnZpY2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2N1c3RvbV9zZXJ2aWNlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWN1c3RvbV9zZXJ2aWNlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jdXN0b21fc2VydmljZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3VzdG9tX3NlcnZpY2UuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jdXN0b21fc2VydmljZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2N1c3RvbV9zZXJ2aWNlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jdXQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY3V0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3V0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jdXRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3V0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jdXRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWN1dC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWN1dDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2N1dF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY3V0dGVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2N1dHRlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWN1dHRlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY3V0dGVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWN1dHRlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY3V0dGVyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jdXR0ZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jdXR0ZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jdXR0ZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlYnVnLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2RlYnVnX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVidWcuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2RlYnVnX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlYnVnLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kZWJ1Z19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVidWcuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kZWJ1Zzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2RlYnVnX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZWNpc2lvbl9uZWVkZWQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZGVjaXNpb25fbmVlZGVkX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVjaXNpb25fbmVlZGVkLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kZWNpc2lvbl9uZWVkZWRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVjaXNpb25fbmVlZGVkLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kZWNpc2lvbl9uZWVkZWRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlY2lzaW9uX25lZWRlZC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWRlY2lzaW9uX25lZWRlZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2RlY2lzaW9uX25lZWRlZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVsaXZlcmVkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2RlbGl2ZXJlZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlbGl2ZXJlZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZGVsaXZlcmVkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlbGl2ZXJlZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZGVsaXZlcmVkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZWxpdmVyZWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kZWxpdmVyZWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kZWxpdmVyZWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlbGl2ZXJ5X3Zhbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9kZWxpdmVyeV92YW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZWxpdmVyeV92YW4uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2RlbGl2ZXJ5X3Zhbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZWxpdmVyeV92YW4uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2RlbGl2ZXJ5X3Zhbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVsaXZlcnlfdmFuLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZGVsaXZlcnlfdmFuOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZGVsaXZlcnlfdmFuX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZWxpdmVyeV93aXRob3V0X3NpZ25hdHVyZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9kZWxpdmVyeV93aXRob3V0X3NpZ25hdHVyZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlbGl2ZXJ5X3dpdGhvdXRfc2lnbmF0dXJlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kZWxpdmVyeV93aXRob3V0X3NpZ25hdHVyZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZWxpdmVyeV93aXRob3V0X3NpZ25hdHVyZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZGVsaXZlcnlfd2l0aG91dF9zaWduYXR1cmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlbGl2ZXJ5X3dpdGhvdXRfc2lnbmF0dXJlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZGVsaXZlcnlfd2l0aG91dF9zaWduYXR1cmU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kZWxpdmVyeV93aXRob3V0X3NpZ25hdHVyZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVwYXJ0ZWQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZGVwYXJ0ZWRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZXBhcnRlZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZGVwYXJ0ZWRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVwYXJ0ZWQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2RlcGFydGVkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZXBhcnRlZC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWRlcGFydGVkOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZGVwYXJ0ZWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlc2t0b3AuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZGVza3RvcF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRlc2t0b3AuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Rlc2t0b3BfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVza3RvcC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZGVza3RvcF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGVza3RvcC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWRlc2t0b3A6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kZXNrdG9wX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZXZpY2VzX2xhcHRvcF9zbWFydHBob25lLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2RldmljZXNfbGFwdG9wX3NtYXJ0cGhvbmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZXZpY2VzX2xhcHRvcF9zbWFydHBob25lLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kZXZpY2VzX2xhcHRvcF9zbWFydHBob25lX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRldmljZXNfbGFwdG9wX3NtYXJ0cGhvbmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2RldmljZXNfbGFwdG9wX3NtYXJ0cGhvbmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRldmljZXNfbGFwdG9wX3NtYXJ0cGhvbmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kZXZpY2VzX2xhcHRvcF9zbWFydHBob25lOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZGV2aWNlc19sYXB0b3Bfc21hcnRwaG9uZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGV2aWNlc190YWJsZXRfc21hcnRwaG9uZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9kZXZpY2VzX3RhYmxldF9zbWFydHBob25lX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGV2aWNlc190YWJsZXRfc21hcnRwaG9uZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZGV2aWNlc190YWJsZXRfc21hcnRwaG9uZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZXZpY2VzX3RhYmxldF9zbWFydHBob25lLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kZXZpY2VzX3RhYmxldF9zbWFydHBob25lX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kZXZpY2VzX3RhYmxldF9zbWFydHBob25lLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZGV2aWNlc190YWJsZXRfc21hcnRwaG9uZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2RldmljZXNfdGFibGV0X3NtYXJ0cGhvbmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpZ2l0YWxpemF0aW9uX2dsb2JlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2RpZ2l0YWxpemF0aW9uX2dsb2JlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlnaXRhbGl6YXRpb25fZ2xvYmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2RpZ2l0YWxpemF0aW9uX2dsb2JlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpZ2l0YWxpemF0aW9uX2dsb2JlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kaWdpdGFsaXphdGlvbl9nbG9iZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlnaXRhbGl6YXRpb25fZ2xvYmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kaWdpdGFsaXphdGlvbl9nbG9iZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2RpZ2l0YWxpemF0aW9uX2dsb2JlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kaW5uZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZGlubmVyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlubmVyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kaW5uZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlubmVyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kaW5uZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpbm5lci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWRpbm5lcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Rpbm5lcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlwbG9tX2hhdC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9kaXBsb21faGF0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlwbG9tX2hhdC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZGlwbG9tX2hhdF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kaXBsb21faGF0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kaXBsb21faGF0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kaXBsb21faGF0LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZGlwbG9tX2hhdDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2RpcGxvbV9oYXRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpcmVjdGlvbl8xX2JvYXJkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2RpcmVjdGlvbl8xX2JvYXJkX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlyZWN0aW9uXzFfYm9hcmQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2RpcmVjdGlvbl8xX2JvYXJkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpcmVjdGlvbl8xX2JvYXJkLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kaXJlY3Rpb25fMV9ib2FyZF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlyZWN0aW9uXzFfYm9hcmQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kaXJlY3Rpb25fMV9ib2FyZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2RpcmVjdGlvbl8xX2JvYXJkX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kaXJlY3Rpb25fM19ib2FyZHMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZGlyZWN0aW9uXzNfYm9hcmRzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlyZWN0aW9uXzNfYm9hcmRzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kaXJlY3Rpb25fM19ib2FyZHNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlyZWN0aW9uXzNfYm9hcmRzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kaXJlY3Rpb25fM19ib2FyZHNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpcmVjdGlvbl8zX2JvYXJkcy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWRpcmVjdGlvbl8zX2JvYXJkczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2RpcmVjdGlvbl8zX2JvYXJkc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlzaW5mZWN0aW9uLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Rpc2luZmVjdGlvbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpc2luZmVjdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZGlzaW5mZWN0aW9uX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpc2luZmVjdGlvbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZGlzaW5mZWN0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kaXNpbmZlY3Rpb24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kaXNpbmZlY3Rpb246bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kaXNpbmZlY3Rpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpc2xpa2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZGlzbGlrZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpc2xpa2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Rpc2xpa2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlzbGlrZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZGlzbGlrZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZGlzbGlrZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWRpc2xpa2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kaXNsaWtlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kaXN0YW5jZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9kaXN0YW5jZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpc3RhbmNlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kaXN0YW5jZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kaXN0YW5jZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZGlzdGFuY2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRpc3RhbmNlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZGlzdGFuY2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kaXN0YW5jZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZG9jdW1lbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZG9jdW1lbnRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kb2N1bWVudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZG9jdW1lbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZG9jdW1lbnQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2RvY3VtZW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kb2N1bWVudC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWRvY3VtZW50Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZG9jdW1lbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRvbnV0X2NoYXJ0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2RvbnV0X2NoYXJ0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZG9udXRfY2hhcnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2RvbnV0X2NoYXJ0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRvbnV0X2NoYXJ0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kb251dF9jaGFydF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZG9udXRfY2hhcnQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kb251dF9jaGFydDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2RvbnV0X2NoYXJ0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kb29yc3RlcF9kZWxpdmVyeS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9kb29yc3RlcF9kZWxpdmVyeV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRvb3JzdGVwX2RlbGl2ZXJ5LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kb29yc3RlcF9kZWxpdmVyeV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kb29yc3RlcF9kZWxpdmVyeS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZG9vcnN0ZXBfZGVsaXZlcnlfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRvb3JzdGVwX2RlbGl2ZXJ5LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZG9vcnN0ZXBfZGVsaXZlcnk6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kb29yc3RlcF9kZWxpdmVyeV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZG93bmxvYWRfZmlsZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9kb3dubG9hZF9maWxlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZG93bmxvYWRfZmlsZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZG93bmxvYWRfZmlsZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kb3dubG9hZF9maWxlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kb3dubG9hZF9maWxlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kb3dubG9hZF9maWxlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZG93bmxvYWRfZmlsZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Rvd25sb2FkX2ZpbGVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRvd25sb2FkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Rvd25sb2FkX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZG93bmxvYWQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Rvd25sb2FkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRvd25sb2FkLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kb3dubG9hZF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZG93bmxvYWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kb3dubG9hZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Rvd25sb2FkX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kb3duc3RyZWFtLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Rvd25zdHJlYW1fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kb3duc3RyZWFtLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kb3duc3RyZWFtX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRvd25zdHJlYW0uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Rvd25zdHJlYW1fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRvd25zdHJlYW0uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kb3duc3RyZWFtOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZG93bnN0cmVhbV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZHBkaGxfY2xvdWR5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2RwZGhsX2Nsb3VkeV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRwZGhsX2Nsb3VkeS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZHBkaGxfY2xvdWR5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRwZGhsX2Nsb3VkeS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZHBkaGxfY2xvdWR5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kcGRobF9jbG91ZHkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kcGRobF9jbG91ZHk6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kcGRobF9jbG91ZHlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRyYWdfY29ybmVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2RyYWdfY29ybmVyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZHJhZ19jb3JuZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2RyYWdfY29ybmVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRyYWdfY29ybmVyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kcmFnX2Nvcm5lcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZHJhZ19jb3JuZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kcmFnX2Nvcm5lcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2RyYWdfY29ybmVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kcmFnX2hhbmRsZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9kcmFnX2hhbmRsZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRyYWdfaGFuZGxlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kcmFnX2hhbmRsZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kcmFnX2hhbmRsZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZHJhZ19oYW5kbGVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRyYWdfaGFuZGxlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZHJhZ19oYW5kbGU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kcmFnX2hhbmRsZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZHJlc3MuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZHJlc3NfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kcmVzcy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZHJlc3NfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZHJlc3MuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2RyZXNzX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kcmVzcy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWRyZXNzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZHJlc3NfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRyb25lX2RlbGl2ZXJ5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2Ryb25lX2RlbGl2ZXJ5X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZHJvbmVfZGVsaXZlcnkuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Ryb25lX2RlbGl2ZXJ5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWRyb25lX2RlbGl2ZXJ5LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9kcm9uZV9kZWxpdmVyeV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZHJvbmVfZGVsaXZlcnkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1kcm9uZV9kZWxpdmVyeTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Ryb25lX2RlbGl2ZXJ5X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kdXJhYmxlcy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9kdXJhYmxlc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWR1cmFibGVzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9kdXJhYmxlc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kdXJhYmxlcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZHVyYWJsZXNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWR1cmFibGVzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZHVyYWJsZXM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9kdXJhYmxlc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZHVyYXRpb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZHVyYXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kdXJhdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZHVyYXRpb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZHVyYXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2R1cmF0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1kdXJhdGlvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWR1cmF0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZHVyYXRpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVkaXQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZWRpdF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVkaXQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2VkaXRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWRpdC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZWRpdF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWRpdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWVkaXQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9lZGl0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lZHVjYXRpb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZWR1Y2F0aW9uX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWR1Y2F0aW9uLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9lZHVjYXRpb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWR1Y2F0aW9uLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9lZHVjYXRpb25fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVkdWNhdGlvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWVkdWNhdGlvbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2VkdWNhdGlvbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWxlY3RyaWNpdHkuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZWxlY3RyaWNpdHlfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbGVjdHJpY2l0eS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZWxlY3RyaWNpdHlfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWxlY3RyaWNpdHkuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2VsZWN0cmljaXR5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbGVjdHJpY2l0eS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWVsZWN0cmljaXR5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZWxlY3RyaWNpdHlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVsZWN0cmljX3BsYW5lLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2VsZWN0cmljX3BsYW5lX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWxlY3RyaWNfcGxhbmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2VsZWN0cmljX3BsYW5lX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVsZWN0cmljX3BsYW5lLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9lbGVjdHJpY19wbGFuZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWxlY3RyaWNfcGxhbmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1lbGVjdHJpY19wbGFuZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2VsZWN0cmljX3BsYW5lX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbGVjdHJpY192YW4uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZWxlY3RyaWNfdmFuX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWxlY3RyaWNfdmFuLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9lbGVjdHJpY192YW5fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWxlY3RyaWNfdmFuLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9lbGVjdHJpY192YW5fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVsZWN0cmljX3Zhbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWVsZWN0cmljX3Zhbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2VsZWN0cmljX3Zhbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWxlY3Ryb25pY190cnVjay5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9lbGVjdHJvbmljX3RydWNrX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZWxlY3Ryb25pY190cnVjay5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZWxlY3Ryb25pY190cnVja19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbGVjdHJvbmljX3RydWNrLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9lbGVjdHJvbmljX3RydWNrX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbGVjdHJvbmljX3RydWNrLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZWxlY3Ryb25pY190cnVjazpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2VsZWN0cm9uaWNfdHJ1Y2tfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVtYWlsLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2VtYWlsX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZW1haWwuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2VtYWlsX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVtYWlsLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9lbWFpbF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZW1haWwuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1lbWFpbDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2VtYWlsX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbWVyZ2luZ19tYXJrZXRfc29sdXRpb25zLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2VtZXJnaW5nX21hcmtldF9zb2x1dGlvbnNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbWVyZ2luZ19tYXJrZXRfc29sdXRpb25zLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9lbWVyZ2luZ19tYXJrZXRfc29sdXRpb25zX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVtZXJnaW5nX21hcmtldF9zb2x1dGlvbnMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2VtZXJnaW5nX21hcmtldF9zb2x1dGlvbnNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVtZXJnaW5nX21hcmtldF9zb2x1dGlvbnMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1lbWVyZ2luZ19tYXJrZXRfc29sdXRpb25zOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZW1lcmdpbmdfbWFya2V0X3NvbHV0aW9uc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZW5kX3RvX2VuZF9lbmFibGVtZW50LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2VuZF90b19lbmRfZW5hYmxlbWVudF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVuZF90b19lbmRfZW5hYmxlbWVudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZW5kX3RvX2VuZF9lbmFibGVtZW50X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVuZF90b19lbmRfZW5hYmxlbWVudC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZW5kX3RvX2VuZF9lbmFibGVtZW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbmRfdG9fZW5kX2VuYWJsZW1lbnQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1lbmRfdG9fZW5kX2VuYWJsZW1lbnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9lbmRfdG9fZW5kX2VuYWJsZW1lbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVuZXJneS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9lbmVyZ3lfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbmVyZ3kuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2VuZXJneV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbmVyZ3kuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2VuZXJneV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZW5lcmd5LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZW5lcmd5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZW5lcmd5X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbmdpbmVlcmluZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9lbmdpbmVlcmluZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVuZ2luZWVyaW5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9lbmdpbmVlcmluZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbmdpbmVlcmluZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZW5naW5lZXJpbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVuZ2luZWVyaW5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZW5naW5lZXJpbmc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9lbmdpbmVlcmluZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZW52ZWxvcGVzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2VudmVsb3Blc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVudmVsb3Blcy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZW52ZWxvcGVzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVudmVsb3Blcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZW52ZWxvcGVzX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbnZlbG9wZXMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1lbnZlbG9wZXM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9lbnZlbG9wZXNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWVudmlyb3NvbHV0aW9ucy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9lbnZpcm9zb2x1dGlvbnNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbnZpcm9zb2x1dGlvbnMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Vudmlyb3NvbHV0aW9uc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lbnZpcm9zb2x1dGlvbnMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Vudmlyb3NvbHV0aW9uc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZW52aXJvc29sdXRpb25zLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZW52aXJvc29sdXRpb25zOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZW52aXJvc29sdXRpb25zX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lLXRyaWtlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2UtdHJpa2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1lLXRyaWtlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9lLXRyaWtlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWUtdHJpa2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2UtdHJpa2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWUtdHJpa2UuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1lLXRyaWtlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZS10cmlrZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZXZlbnRfZmVlZC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9ldmVudF9mZWVkX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZXZlbnRfZmVlZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZXZlbnRfZmVlZF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ldmVudF9mZWVkLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9ldmVudF9mZWVkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ldmVudF9mZWVkLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZXZlbnRfZmVlZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2V2ZW50X2ZlZWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWV4Y2VwdGlvbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9leGNlcHRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1leGNlcHRpb24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2V4Y2VwdGlvbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1leGNlcHRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2V4Y2VwdGlvbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZXhjZXB0aW9uLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZXhjZXB0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZXhjZXB0aW9uX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1leHByZXNzX3Byb2R1Y3QuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZXhwcmVzc19wcm9kdWN0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZXhwcmVzc19wcm9kdWN0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9leHByZXNzX3Byb2R1Y3RfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZXhwcmVzc19wcm9kdWN0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9leHByZXNzX3Byb2R1Y3RfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWV4cHJlc3NfcHJvZHVjdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWV4cHJlc3NfcHJvZHVjdDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2V4cHJlc3NfcHJvZHVjdF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmFjZWJvb2suZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZmFjZWJvb2tfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mYWNlYm9vay5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZmFjZWJvb2tfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmFjZWJvb2suZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ZhY2Vib29rX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mYWNlYm9vay5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZhY2Vib29rOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZmFjZWJvb2tfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZhc3RfbmlnaHQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZmFzdF9uaWdodF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZhc3RfbmlnaHQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Zhc3RfbmlnaHRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmFzdF9uaWdodC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZmFzdF9uaWdodF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmFzdF9uaWdodC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZhc3RfbmlnaHQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9mYXN0X25pZ2h0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mYXN0X3BheW1lbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZmFzdF9wYXltZW50X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmFzdF9wYXltZW50LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9mYXN0X3BheW1lbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmFzdF9wYXltZW50LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9mYXN0X3BheW1lbnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZhc3RfcGF5bWVudC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZhc3RfcGF5bWVudDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Zhc3RfcGF5bWVudF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmVhdHVyZV9kZXRlY3Rpb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZmVhdHVyZV9kZXRlY3Rpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mZWF0dXJlX2RldGVjdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZmVhdHVyZV9kZXRlY3Rpb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmVhdHVyZV9kZXRlY3Rpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ZlYXR1cmVfZGV0ZWN0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mZWF0dXJlX2RldGVjdGlvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZlYXR1cmVfZGV0ZWN0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZmVhdHVyZV9kZXRlY3Rpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZlbWFsZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9mZW1hbGVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mZW1hbGUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2ZlbWFsZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mZW1hbGUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ZlbWFsZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmVtYWxlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZmVtYWxlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZmVtYWxlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX2RvYy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9maWxlX2RvY19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfZG9jLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9maWxlX2RvY19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX2RvYy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZmlsZV9kb2NfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfZG9jLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZmlsZV9kb2M6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9maWxlX2RvY19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsZV9qcGcuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZmlsZV9qcGdfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX2pwZy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZmlsZV9qcGdfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsZV9qcGcuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ZpbGVfanBnX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX2pwZy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZpbGVfanBnOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZmlsZV9qcGdfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfcGRmLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ZpbGVfcGRmX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsZV9wZGYuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2ZpbGVfcGRmX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfcGRmLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9maWxlX3BkZl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsZV9wZGYuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX3BkZjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2ZpbGVfcGRmX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX3BuZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9maWxlX3BuZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfcG5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9maWxlX3BuZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX3BuZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZmlsZV9wbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfcG5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZmlsZV9wbmc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9maWxlX3BuZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsZV9wcHQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZmlsZV9wcHRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX3BwdC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZmlsZV9wcHRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsZV9wcHQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ZpbGVfcHB0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX3BwdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZpbGVfcHB0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZmlsZV9wcHRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfeGxzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ZpbGVfeGxzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsZV94bHMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2ZpbGVfeGxzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfeGxzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9maWxlX3hsc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsZV94bHMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX3hsczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2ZpbGVfeGxzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX3ppcC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9maWxlX3ppcF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfemlwLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9maWxlX3ppcF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWxlX3ppcC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZmlsZV96aXBfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbGVfemlwLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZmlsZV96aXA6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9maWxlX3ppcF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsdGVyX29wdGlvbnMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZmlsdGVyX29wdGlvbnNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWx0ZXJfb3B0aW9ucy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZmlsdGVyX29wdGlvbnNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsdGVyX29wdGlvbnMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ZpbHRlcl9vcHRpb25zX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWx0ZXJfb3B0aW9ucy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZpbHRlcl9vcHRpb25zOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZmlsdGVyX29wdGlvbnNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbHRlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9maWx0ZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWx0ZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2ZpbHRlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maWx0ZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ZpbHRlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlsdGVyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZmlsdGVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZmlsdGVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maW5hbmNlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ZpbmFuY2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maW5hbmNlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9maW5hbmNlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbmFuY2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ZpbmFuY2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbmFuY2UuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1maW5hbmNlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZmluYW5jZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmluYW5jaWFsX3NlcnZpY2VzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ZpbmFuY2lhbF9zZXJ2aWNlc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbmFuY2lhbF9zZXJ2aWNlcy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZmluYW5jaWFsX3NlcnZpY2VzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbmFuY2lhbF9zZXJ2aWNlcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZmluYW5jaWFsX3NlcnZpY2VzX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maW5hbmNpYWxfc2VydmljZXMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1maW5hbmNpYWxfc2VydmljZXM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9maW5hbmNpYWxfc2VydmljZXNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbmdlcnByaW50LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ZpbmdlcnByaW50X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmluZ2VycHJpbnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2ZpbmdlcnByaW50X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpbmdlcnByaW50LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9maW5nZXJwcmludF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmluZ2VycHJpbnQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1maW5nZXJwcmludDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2ZpbmdlcnByaW50X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maXJlX2V4dGluZ3Vpc2hlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9maXJlX2V4dGluZ3Vpc2hlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpcmVfZXh0aW5ndWlzaGVyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9maXJlX2V4dGluZ3Vpc2hlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maXJlX2V4dGluZ3Vpc2hlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZmlyZV9leHRpbmd1aXNoZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpcmVfZXh0aW5ndWlzaGVyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZmlyZV9leHRpbmd1aXNoZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9maXJlX2V4dGluZ3Vpc2hlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmlyc3RfYWlkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ZpcnN0X2FpZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpcnN0X2FpZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZmlyc3RfYWlkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZpcnN0X2FpZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZmlyc3RfYWlkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1maXJzdF9haWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1maXJzdF9haWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9maXJzdF9haWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZsYWdzaGlwX3N0b3JlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ZsYWdzaGlwX3N0b3JlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmxhZ3NoaXBfc3RvcmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2ZsYWdzaGlwX3N0b3JlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZsYWdzaGlwX3N0b3JlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9mbGFnc2hpcF9zdG9yZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmxhZ3NoaXBfc3RvcmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1mbGFnc2hpcF9zdG9yZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2ZsYWdzaGlwX3N0b3JlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mbGFtbWFibGUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZmxhbW1hYmxlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmxhbW1hYmxlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9mbGFtbWFibGVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmxhbW1hYmxlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9mbGFtbWFibGVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZsYW1tYWJsZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZsYW1tYWJsZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2ZsYW1tYWJsZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZmxleGlibGVfcGFyY2VsX2RlbGl2ZXJ5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ZsZXhpYmxlX3BhcmNlbF9kZWxpdmVyeV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZsZXhpYmxlX3BhcmNlbF9kZWxpdmVyeS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZmxleGlibGVfcGFyY2VsX2RlbGl2ZXJ5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZsZXhpYmxlX3BhcmNlbF9kZWxpdmVyeS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZmxleGlibGVfcGFyY2VsX2RlbGl2ZXJ5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mbGV4aWJsZV9wYXJjZWxfZGVsaXZlcnkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1mbGV4aWJsZV9wYXJjZWxfZGVsaXZlcnk6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9mbGV4aWJsZV9wYXJjZWxfZGVsaXZlcnlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZvbGRlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9mb2xkZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mb2xkZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2ZvbGRlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mb2xkZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ZvbGRlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZm9sZGVyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZm9sZGVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZm9sZGVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mb3Jlc3QuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZm9yZXN0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZm9yZXN0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9mb3Jlc3RfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZm9yZXN0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9mb3Jlc3RfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZvcmVzdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZvcmVzdDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2ZvcmVzdF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZm9ya2xpZnRfc3VwcGx5X2NoYWluLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ZvcmtsaWZ0X3N1cHBseV9jaGFpbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZvcmtsaWZ0X3N1cHBseV9jaGFpbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZm9ya2xpZnRfc3VwcGx5X2NoYWluX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZvcmtsaWZ0X3N1cHBseV9jaGFpbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZm9ya2xpZnRfc3VwcGx5X2NoYWluX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mb3JrbGlmdF9zdXBwbHlfY2hhaW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1mb3JrbGlmdF9zdXBwbHlfY2hhaW46bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9mb3JrbGlmdF9zdXBwbHlfY2hhaW5fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZyYWdpbGUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZnJhZ2lsZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZyYWdpbGUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2ZyYWdpbGVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZnJhZ2lsZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZnJhZ2lsZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZnJhZ2lsZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZyYWdpbGU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9mcmFnaWxlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mcm9udGxpbmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZnJvbnRsaW5lX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZnJvbnRsaW5lLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9mcm9udGxpbmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZnJvbnRsaW5lLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9mcm9udGxpbmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZyb250bGluZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWZyb250bGluZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Zyb250bGluZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZnVlbC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9mdWVsX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZnVlbC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZnVlbF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mdWVsLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9mdWVsX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mdWVsLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZnVlbDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2Z1ZWxfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZ1cm5pdHVyZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9mdXJuaXR1cmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mdXJuaXR1cmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2Z1cm5pdHVyZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mdXJuaXR1cmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2Z1cm5pdHVyZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZnVybml0dXJlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZnVybml0dXJlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZnVybml0dXJlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nYXNfcHVtcC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9nYXNfcHVtcF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdhc19wdW1wLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9nYXNfcHVtcF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nYXNfcHVtcC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZ2FzX3B1bXBfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdhc19wdW1wLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZ2FzX3B1bXA6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9nYXNfcHVtcF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ2FzX3N0YXRpb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZ2FzX3N0YXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nYXNfc3RhdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZ2FzX3N0YXRpb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ2FzX3N0YXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2dhc19zdGF0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nYXNfc3RhdGlvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWdhc19zdGF0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZ2FzX3N0YXRpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdlbmVyYWxfd2FybmluZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9nZW5lcmFsX3dhcm5pbmdfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nZW5lcmFsX3dhcm5pbmcuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2dlbmVyYWxfd2FybmluZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nZW5lcmFsX3dhcm5pbmcuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2dlbmVyYWxfd2FybmluZ19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ2VuZXJhbF93YXJuaW5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZ2VuZXJhbF93YXJuaW5nOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZ2VuZXJhbF93YXJuaW5nX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1naWZ0Ym94LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2dpZnRib3hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1naWZ0Ym94LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9naWZ0Ym94X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdpZnRib3guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2dpZnRib3hfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdpZnRib3guZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1naWZ0Ym94Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZ2lmdGJveF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ2xhc3Nlcy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9nbGFzc2VzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ2xhc3Nlcy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZ2xhc3Nlc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nbGFzc2VzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9nbGFzc2VzX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nbGFzc2VzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZ2xhc3Nlczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2dsYXNzZXNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdsb2JhbF9mb3J3YXJkaW5nX2ZyZWlnaHQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZ2xvYmFsX2ZvcndhcmRpbmdfZnJlaWdodF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdsb2JhbF9mb3J3YXJkaW5nX2ZyZWlnaHQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2dsb2JhbF9mb3J3YXJkaW5nX2ZyZWlnaHRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ2xvYmFsX2ZvcndhcmRpbmdfZnJlaWdodC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZ2xvYmFsX2ZvcndhcmRpbmdfZnJlaWdodF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ2xvYmFsX2ZvcndhcmRpbmdfZnJlaWdodC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWdsb2JhbF9mb3J3YXJkaW5nX2ZyZWlnaHQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9nbG9iYWxfZm9yd2FyZGluZ19mcmVpZ2h0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nbG9iZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9nbG9iZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdsb2JlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9nbG9iZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nbG9iZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZ2xvYmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdsb2JlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZ2xvYmU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9nbG9iZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ2xvc3NhcnkuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZ2xvc3NhcnlfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nbG9zc2FyeS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZ2xvc3NhcnlfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ2xvc3NhcnkuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2dsb3NzYXJ5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nbG9zc2FyeS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWdsb3NzYXJ5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZ2xvc3NhcnlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdvYWwuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZ29hbF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdvYWwuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2dvYWxfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ29hbC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZ29hbF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ29hbC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWdvYWw6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9nb2FsX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2dvZ3JlZW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9nb2dyZWVuX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdvZ3JlZW4uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2dvZ3JlZW5fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdvZ3JlZW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZ29ncmVlbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ29ncmVlbl9vbGQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZ29ncmVlbl9vbGRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuX29sZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vZ29ncmVlbl9vbGRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ29ncmVlbl9vbGQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2dvZ3JlZW5fb2xkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuX29sZC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWdvZ3JlZW5fb2xkOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZ29ncmVlbl9vbGRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdvZ3JlZW5fcGx1cy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9nb2dyZWVuX3BsdXNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuX3BsdXMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2dvZ3JlZW5fcGx1c19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuX3BsdXMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2dvZ3JlZW5fcGx1c19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ29ncmVlbl9wbHVzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZ29ncmVlbl9wbHVzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svZ29ncmVlbl9wbHVzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ncmlkX3ZpZXcuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvZ3JpZF92aWV3X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ3JpZF92aWV3LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9ncmlkX3ZpZXdfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ3JpZF92aWV3LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9ncmlkX3ZpZXdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWdyaWRfdmlldy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWdyaWRfdmlldzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2dyaWRfdmlld19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGFtbWVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2hhbW1lcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhhbW1lci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaGFtbWVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhhbW1lci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvaGFtbWVyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oYW1tZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1oYW1tZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9oYW1tZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhhbmRpY2FwcGVkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2hhbmRpY2FwcGVkX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGFuZGljYXBwZWQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2hhbmRpY2FwcGVkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhhbmRpY2FwcGVkLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9oYW5kaWNhcHBlZF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGFuZGljYXBwZWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1oYW5kaWNhcHBlZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2hhbmRpY2FwcGVkX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oYW5kbGVfd2l0aF9jYXJlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2hhbmRsZV93aXRoX2NhcmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oYW5kbGVfd2l0aF9jYXJlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9oYW5kbGVfd2l0aF9jYXJlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhhbmRsZV93aXRoX2NhcmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2hhbmRsZV93aXRoX2NhcmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhhbmRsZV93aXRoX2NhcmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1oYW5kbGVfd2l0aF9jYXJlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaGFuZGxlX3dpdGhfY2FyZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGFuZF90cnVjay5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9oYW5kX3RydWNrX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGFuZF90cnVjay5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaGFuZF90cnVja19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oYW5kX3RydWNrLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9oYW5kX3RydWNrX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oYW5kX3RydWNrLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taGFuZF90cnVjazpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2hhbmRfdHJ1Y2tfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhhbmdlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9oYW5nZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oYW5nZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2hhbmdlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oYW5nZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2hhbmdlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGFuZ2VyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taGFuZ2VyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaGFuZ2VyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZF9yZXNvbHV0aW9uLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2hkX3Jlc29sdXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZF9yZXNvbHV0aW9uLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9oZF9yZXNvbHV0aW9uX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhkX3Jlc29sdXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2hkX3Jlc29sdXRpb25fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhkX3Jlc29sdXRpb24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1oZF9yZXNvbHV0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaGRfcmVzb2x1dGlvbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVhbGluZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9oZWFsaW5nX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVhbGluZy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaGVhbGluZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWFsaW5nLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9oZWFsaW5nX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWFsaW5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taGVhbGluZzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2hlYWxpbmdfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhlYXJpbmdfaW1wYWlybWVudC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9oZWFyaW5nX2ltcGFpcm1lbnRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWFyaW5nX2ltcGFpcm1lbnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2hlYXJpbmdfaW1wYWlybWVudF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWFyaW5nX2ltcGFpcm1lbnQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2hlYXJpbmdfaW1wYWlybWVudF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVhcmluZ19pbXBhaXJtZW50LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taGVhcmluZ19pbXBhaXJtZW50Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaGVhcmluZ19pbXBhaXJtZW50X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWFydF9vZmYuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaGVhcnRfb2ZmX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVhcnRfb2ZmLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9oZWFydF9vZmZfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVhcnRfb2ZmLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9oZWFydF9vZmZfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhlYXJ0X29mZi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWhlYXJ0X29mZjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2hlYXJ0X29mZl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVhcnRfb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaGVhcnRfb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWFydF9vbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaGVhcnRfb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVhcnRfb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2hlYXJ0X29uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWFydF9vbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWhlYXJ0X29uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaGVhcnRfb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhlbG1ldC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9oZWxtZXRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWxtZXQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2hlbG1ldF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWxtZXQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2hlbG1ldF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVsbWV0LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taGVsbWV0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaGVsbWV0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWxwZGVzay5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9oZWxwZGVza19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhlbHBkZXNrLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9oZWxwZGVza19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWxwZGVzay5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvaGVscGRlc2tfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhlbHBkZXNrLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taGVscGRlc2s6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9oZWxwZGVza19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVscGRlc2tfd2l0aF90YWJsZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9oZWxwZGVza193aXRoX3RhYmxlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVscGRlc2tfd2l0aF90YWJsZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaGVscGRlc2tfd2l0aF90YWJsZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWxwZGVza193aXRoX3RhYmxlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9oZWxwZGVza193aXRoX3RhYmxlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oZWxwZGVza193aXRoX3RhYmxlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taGVscGRlc2tfd2l0aF90YWJsZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2hlbHBkZXNrX3dpdGhfdGFibGVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhlbHBsaW5lLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2hlbHBsaW5lX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVscGxpbmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2hlbHBsaW5lX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhlbHBsaW5lLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9oZWxwbGluZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taGVscGxpbmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1oZWxwbGluZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2hlbHBsaW5lX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ob21lX2FuZF93b3JrLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2hvbWVfYW5kX3dvcmtfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ob21lX2FuZF93b3JrLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9ob21lX2FuZF93b3JrX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhvbWVfYW5kX3dvcmsuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2hvbWVfYW5kX3dvcmtfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhvbWVfYW5kX3dvcmsuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1ob21lX2FuZF93b3JrOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaG9tZV9hbmRfd29ya19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taG9tZV9kZWxpdmVyeS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9ob21lX2RlbGl2ZXJ5X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taG9tZV9kZWxpdmVyeS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaG9tZV9kZWxpdmVyeV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ob21lX2RlbGl2ZXJ5LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9ob21lX2RlbGl2ZXJ5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ob21lX2RlbGl2ZXJ5LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taG9tZV9kZWxpdmVyeTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2hvbWVfZGVsaXZlcnlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhvbWUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaG9tZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhvbWUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2hvbWVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taG9tZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvaG9tZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taG9tZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWhvbWU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9ob21lX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ob3NwaXRhbC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9ob3NwaXRhbF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhvc3BpdGFsLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9ob3NwaXRhbF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ob3NwaXRhbC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvaG9zcGl0YWxfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhvc3BpdGFsLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taG9zcGl0YWw6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9ob3NwaXRhbF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taG90ZWwuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaG90ZWxfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ob3RlbC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaG90ZWxfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taG90ZWwuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2hvdGVsX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ob3RlbC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWhvdGVsOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaG90ZWxfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2hyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taHIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2hyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWhyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9ocl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taHIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1ocjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2hyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1oMl9mdWVsX3N0YXRpb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaDJfZnVlbF9zdGF0aW9uX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taDJfZnVlbF9zdGF0aW9uLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9oMl9mdWVsX3N0YXRpb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taDJfZnVlbF9zdGF0aW9uLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9oMl9mdWVsX3N0YXRpb25fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWgyX2Z1ZWxfc3RhdGlvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWgyX2Z1ZWxfc3RhdGlvbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2gyX2Z1ZWxfc3RhdGlvbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2hhdGJvdC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jaGF0Ym90X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2hhdGJvdC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2hhdGJvdF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGF0Ym90LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jaGF0Ym90X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGF0Ym90LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2hhdGJvdDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NoYXRib3RfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZWNrX2JveC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jaGVja19ib3hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGVja19ib3guZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NoZWNrX2JveF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGVja19ib3guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NoZWNrX2JveF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2hlY2tfYm94LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2hlY2tfYm94Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2hlY2tfYm94X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGVja21hcmtfY2lyY2xlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NoZWNrbWFya19jaXJjbGVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGVja21hcmtfY2lyY2xlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jaGVja21hcmtfY2lyY2xlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZWNrbWFya19jaXJjbGUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NoZWNrbWFya19jaXJjbGVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZWNrbWFya19jaXJjbGUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jaGVja21hcmtfY2lyY2xlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2hlY2ttYXJrX2NpcmNsZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2hlY2ttYXJrLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NoZWNrbWFya19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZWNrbWFyay5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2hlY2ttYXJrX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZWNrbWFyay5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2hlY2ttYXJrX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGVja21hcmsuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jaGVja21hcms6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jaGVja21hcmtfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZW1pY2Fscy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jaGVtaWNhbHNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGVtaWNhbHMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NoZW1pY2Fsc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGVtaWNhbHMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NoZW1pY2Fsc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2hlbWljYWxzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2hlbWljYWxzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2hlbWljYWxzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGV2cm9uX2JhY2suZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvY2hldnJvbl9iYWNrX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2hldnJvbl9iYWNrLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jaGV2cm9uX2JhY2tfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2hldnJvbl9iYWNrLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9jaGV2cm9uX2JhY2tfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZXZyb25fYmFjay5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWNoZXZyb25fYmFjazpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2NoZXZyb25fYmFja19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2hldnJvbl9kb3duLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NoZXZyb25fZG93bl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZXZyb25fZG93bi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vY2hldnJvbl9kb3duX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZXZyb25fZG93bi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvY2hldnJvbl9kb3duX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGV2cm9uX2Rvd24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jaGV2cm9uX2Rvd246bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9jaGV2cm9uX2Rvd25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZXZyb25fZm9yd2FyZC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9jaGV2cm9uX2ZvcndhcmRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGV2cm9uX2ZvcndhcmQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2NoZXZyb25fZm9yd2FyZF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGV2cm9uX2ZvcndhcmQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NoZXZyb25fZm9yd2FyZF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tY2hldnJvbl9mb3J3YXJkLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tY2hldnJvbl9mb3J3YXJkOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2hldnJvbl9mb3J3YXJkX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGV2cm9uX3VwLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2NoZXZyb25fdXBfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1jaGV2cm9uX3VwLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9jaGV2cm9uX3VwX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZXZyb25fdXAuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2NoZXZyb25fdXBfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWNoZXZyb25fdXAuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1jaGV2cm9uX3VwOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svY2hldnJvbl91cF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taWRlYS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9pZGVhX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taWRlYS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaWRlYV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pZGVhLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9pZGVhX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pZGVhLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taWRlYTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2lkZWFfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWlkZW50aXR5X2RvY3VtZW50X2luY2x1ZGluZ19hZ2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaWRlbnRpdHlfZG9jdW1lbnRfaW5jbHVkaW5nX2FnZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWlkZW50aXR5X2RvY3VtZW50X2luY2x1ZGluZ19hZ2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2lkZW50aXR5X2RvY3VtZW50X2luY2x1ZGluZ19hZ2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taWRlbnRpdHlfZG9jdW1lbnRfaW5jbHVkaW5nX2FnZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvaWRlbnRpdHlfZG9jdW1lbnRfaW5jbHVkaW5nX2FnZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taWRlbnRpdHlfZG9jdW1lbnRfaW5jbHVkaW5nX2FnZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWlkZW50aXR5X2RvY3VtZW50X2luY2x1ZGluZ19hZ2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9pZGVudGl0eV9kb2N1bWVudF9pbmNsdWRpbmdfYWdlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pZGVudGl0eV9kb2N1bWVudC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9pZGVudGl0eV9kb2N1bWVudF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWlkZW50aXR5X2RvY3VtZW50LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9pZGVudGl0eV9kb2N1bWVudF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pZGVudGl0eV9kb2N1bWVudC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvaWRlbnRpdHlfZG9jdW1lbnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWlkZW50aXR5X2RvY3VtZW50LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taWRlbnRpdHlfZG9jdW1lbnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9pZGVudGl0eV9kb2N1bWVudF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW1hZ2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaW1hZ2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbWFnZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaW1hZ2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW1hZ2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ltYWdlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbWFnZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWltYWdlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaW1hZ2VfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWluYm91bmRfdG9fb3BlcmF0aW9ucy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9pbmJvdW5kX3RvX29wZXJhdGlvbnNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbmJvdW5kX3RvX29wZXJhdGlvbnMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2luYm91bmRfdG9fb3BlcmF0aW9uc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbmJvdW5kX3RvX29wZXJhdGlvbnMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2luYm91bmRfdG9fb3BlcmF0aW9uc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW5ib3VuZF90b19vcGVyYXRpb25zLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taW5ib3VuZF90b19vcGVyYXRpb25zOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaW5ib3VuZF90b19vcGVyYXRpb25zX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbmNvcnJlY3RfcGF5bWVudC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9pbmNvcnJlY3RfcGF5bWVudF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWluY29ycmVjdF9wYXltZW50LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9pbmNvcnJlY3RfcGF5bWVudF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbmNvcnJlY3RfcGF5bWVudC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvaW5jb3JyZWN0X3BheW1lbnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWluY29ycmVjdF9wYXltZW50LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taW5jb3JyZWN0X3BheW1lbnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9pbmNvcnJlY3RfcGF5bWVudF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW5mb3JtYXRpb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaW5mb3JtYXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbmZvcm1hdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaW5mb3JtYXRpb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW5mb3JtYXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2luZm9ybWF0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbmZvcm1hdGlvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWluZm9ybWF0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaW5mb3JtYXRpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWluc3RhZ3JhbS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9pbnN0YWdyYW1fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbnN0YWdyYW0uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2luc3RhZ3JhbV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbnN0YWdyYW0uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2luc3RhZ3JhbV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW5zdGFncmFtLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24taW5zdGFncmFtOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaW5zdGFncmFtX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbnN1cmFuY2VfdXBfdG9fMjVrX2V1cm8uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaW5zdXJhbmNlX3VwX3RvXzI1a19ldXJvX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW5zdXJhbmNlX3VwX3RvXzI1a19ldXJvLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9pbnN1cmFuY2VfdXBfdG9fMjVrX2V1cm9fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW5zdXJhbmNlX3VwX3RvXzI1a19ldXJvLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9pbnN1cmFuY2VfdXBfdG9fMjVrX2V1cm9fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWluc3VyYW5jZV91cF90b18yNWtfZXVyby5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWluc3VyYW5jZV91cF90b18yNWtfZXVybzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2luc3VyYW5jZV91cF90b18yNWtfZXVyb19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW50ZWdyYXRlZF9zb2x1dGlvbnMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaW50ZWdyYXRlZF9zb2x1dGlvbnNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbnRlZ3JhdGVkX3NvbHV0aW9ucy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaW50ZWdyYXRlZF9zb2x1dGlvbnNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW50ZWdyYXRlZF9zb2x1dGlvbnMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2ludGVncmF0ZWRfc29sdXRpb25zX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbnRlZ3JhdGVkX3NvbHV0aW9ucy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWludGVncmF0ZWRfc29sdXRpb25zOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaW50ZWdyYXRlZF9zb2x1dGlvbnNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWludGVybmFsX3RyYWluaW5nLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2ludGVybmFsX3RyYWluaW5nX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW50ZXJuYWxfdHJhaW5pbmcuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2ludGVybmFsX3RyYWluaW5nX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWludGVybmFsX3RyYWluaW5nLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9pbnRlcm5hbF90cmFpbmluZ19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW50ZXJuYWxfdHJhaW5pbmcuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1pbnRlcm5hbF90cmFpbmluZzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2ludGVybmFsX3RyYWluaW5nX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pbnRyYW5zaXQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaW50cmFuc2l0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW50cmFuc2l0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9pbnRyYW5zaXRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taW50cmFuc2l0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9pbnRyYW5zaXRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWludHJhbnNpdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWludHJhbnNpdDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2ludHJhbnNpdF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24taXJyaXRhbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvaXJyaXRhbnRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pcnJpdGFudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vaXJyaXRhbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24taXJyaXRhbnQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2lycml0YW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1pcnJpdGFudC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWlycml0YW50Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svaXJyaXRhbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWpld2VscnkuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvamV3ZWxyeV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWpld2VscnkuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2pld2VscnlfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tamV3ZWxyeS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvamV3ZWxyeV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tamV3ZWxyeS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWpld2Vscnk6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9qZXdlbHJ5X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1rZWVwX2NvbGQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQva2VlcF9jb2xkX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24ta2VlcF9jb2xkLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9rZWVwX2NvbGRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24ta2VlcF9jb2xkLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9rZWVwX2NvbGRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWtlZXBfY29sZC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWtlZXBfY29sZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2tlZXBfY29sZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24ta2VlcF9kcnkuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQva2VlcF9kcnlfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1rZWVwX2RyeS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4va2VlcF9kcnlfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24ta2VlcF9kcnkuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2tlZXBfZHJ5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1rZWVwX2RyeS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWtlZXBfZHJ5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2sva2VlcF9kcnlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWtlZXBfdGhpc19zaWRlX3VwLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2tlZXBfdGhpc19zaWRlX3VwX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24ta2VlcF90aGlzX3NpZGVfdXAuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2tlZXBfdGhpc19zaWRlX3VwX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWtlZXBfdGhpc19zaWRlX3VwLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9rZWVwX3RoaXNfc2lkZV91cF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24ta2VlcF90aGlzX3NpZGVfdXAuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1rZWVwX3RoaXNfc2lkZV91cDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2tlZXBfdGhpc19zaWRlX3VwX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sYW5kc2NhcGVfZm9ybWF0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xhbmRzY2FwZV9mb3JtYXRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sYW5kc2NhcGVfZm9ybWF0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9sYW5kc2NhcGVfZm9ybWF0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxhbmRzY2FwZV9mb3JtYXQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2xhbmRzY2FwZV9mb3JtYXRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxhbmRzY2FwZV9mb3JtYXQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1sYW5kc2NhcGVfZm9ybWF0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbGFuZHNjYXBlX2Zvcm1hdF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGFwdG9wLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xhcHRvcF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxhcHRvcC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbGFwdG9wX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxhcHRvcC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbGFwdG9wX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sYXB0b3AuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1sYXB0b3A6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9sYXB0b3BfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxhcmdlX2VudmVsb3BlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xhcmdlX2VudmVsb3BlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGFyZ2VfZW52ZWxvcGUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2xhcmdlX2VudmVsb3BlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxhcmdlX2VudmVsb3BlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9sYXJnZV9lbnZlbG9wZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGFyZ2VfZW52ZWxvcGUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1sYXJnZV9lbnZlbG9wZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2xhcmdlX2VudmVsb3BlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sYXlvdXQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbGF5b3V0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGF5b3V0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9sYXlvdXRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGF5b3V0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9sYXlvdXRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxheW91dC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWxheW91dDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2xheW91dF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGVhZGVyc2hpcC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9sZWFkZXJzaGlwX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGVhZGVyc2hpcC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbGVhZGVyc2hpcF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sZWFkZXJzaGlwLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9sZWFkZXJzaGlwX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sZWFkZXJzaGlwLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbGVhZGVyc2hpcDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2xlYWRlcnNoaXBfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxldHRlcl9hbmRfcGFja2FnZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9sZXR0ZXJfYW5kX3BhY2thZ2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sZXR0ZXJfYW5kX3BhY2thZ2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2xldHRlcl9hbmRfcGFja2FnZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sZXR0ZXJfYW5kX3BhY2thZ2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2xldHRlcl9hbmRfcGFja2FnZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGV0dGVyX2FuZF9wYWNrYWdlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbGV0dGVyX2FuZF9wYWNrYWdlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbGV0dGVyX2FuZF9wYWNrYWdlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sZXR0ZXJfbGFyZ2VfYm94LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xldHRlcl9sYXJnZV9ib3hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sZXR0ZXJfbGFyZ2VfYm94LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9sZXR0ZXJfbGFyZ2VfYm94X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxldHRlcl9sYXJnZV9ib3guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2xldHRlcl9sYXJnZV9ib3hfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxldHRlcl9sYXJnZV9ib3guZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1sZXR0ZXJfbGFyZ2VfYm94Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbGV0dGVyX2xhcmdlX2JveF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGV0dGVyX3NtYWxsX2JveC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9sZXR0ZXJfc21hbGxfYm94X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGV0dGVyX3NtYWxsX2JveC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbGV0dGVyX3NtYWxsX2JveF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sZXR0ZXJfc21hbGxfYm94LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9sZXR0ZXJfc21hbGxfYm94X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sZXR0ZXJfc21hbGxfYm94LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbGV0dGVyX3NtYWxsX2JveDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2xldHRlcl9zbWFsbF9ib3hfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLUxHQlRJUS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9MR0JUSVFfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1MR0JUSVEuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL0xHQlRJUV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1MR0JUSVEuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL0xHQlRJUV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tTEdCVElRLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tTEdCVElROm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svTEdCVElRX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saWdodGhvdXNlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xpZ2h0aG91c2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saWdodGhvdXNlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9saWdodGhvdXNlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpZ2h0aG91c2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2xpZ2h0aG91c2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpZ2h0aG91c2UuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1saWdodGhvdXNlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbGlnaHRob3VzZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGlrZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9saWtlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGlrZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbGlrZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saWtlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9saWtlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saWtlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbGlrZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2xpa2VfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpbWl0ZWRfcXVhbnRpdGllcy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9saW1pdGVkX3F1YW50aXRpZXNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saW1pdGVkX3F1YW50aXRpZXMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2xpbWl0ZWRfcXVhbnRpdGllc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saW1pdGVkX3F1YW50aXRpZXMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2xpbWl0ZWRfcXVhbnRpdGllc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGltaXRlZF9xdWFudGl0aWVzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbGltaXRlZF9xdWFudGl0aWVzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbGltaXRlZF9xdWFudGl0aWVzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saW5rZWRpbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9saW5rZWRpbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpbmtlZGluLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9saW5rZWRpbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saW5rZWRpbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbGlua2VkaW5fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpbmtlZGluLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbGlua2VkaW46bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9saW5rZWRpbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGlxdWlkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xpcXVpZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpcXVpZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbGlxdWlkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpcXVpZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbGlxdWlkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saXF1aWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1saXF1aWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9saXF1aWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpc3QuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbGlzdF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpc3QuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2xpc3RfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGlzdC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbGlzdF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbGlzdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWxpc3Q6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9saXN0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saXZlX3RyYWNraW5nLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xpdmVfdHJhY2tpbmdfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1saXZlX3RyYWNraW5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9saXZlX3RyYWNraW5nX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpdmVfdHJhY2tpbmcuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2xpdmVfdHJhY2tpbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxpdmVfdHJhY2tpbmcuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1saXZlX3RyYWNraW5nOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbGl2ZV90cmFja2luZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbG9hZGluZ19haXJfZnJlaWdodF9jYXJnby5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9sb2FkaW5nX2Fpcl9mcmVpZ2h0X2NhcmdvX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbG9hZGluZ19haXJfZnJlaWdodF9jYXJnby5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbG9hZGluZ19haXJfZnJlaWdodF9jYXJnb19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sb2FkaW5nX2Fpcl9mcmVpZ2h0X2NhcmdvLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9sb2FkaW5nX2Fpcl9mcmVpZ2h0X2NhcmdvX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sb2FkaW5nX2Fpcl9mcmVpZ2h0X2NhcmdvLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbG9hZGluZ19haXJfZnJlaWdodF9jYXJnbzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2xvYWRpbmdfYWlyX2ZyZWlnaHRfY2FyZ29fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxvYWRpbmdfc3RhdGlvbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9sb2FkaW5nX3N0YXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sb2FkaW5nX3N0YXRpb24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2xvYWRpbmdfc3RhdGlvbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sb2FkaW5nX3N0YXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2xvYWRpbmdfc3RhdGlvbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbG9hZGluZ19zdGF0aW9uLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbG9hZGluZ19zdGF0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbG9hZGluZ19zdGF0aW9uX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sb2FkX3Byb2ZpbGVfb3B0aW1pemF0aW9uLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xvYWRfcHJvZmlsZV9vcHRpbWl6YXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sb2FkX3Byb2ZpbGVfb3B0aW1pemF0aW9uLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9sb2FkX3Byb2ZpbGVfb3B0aW1pemF0aW9uX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxvYWRfcHJvZmlsZV9vcHRpbWl6YXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL2xvYWRfcHJvZmlsZV9vcHRpbWl6YXRpb25fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxvYWRfcHJvZmlsZV9vcHRpbWl6YXRpb24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1sb2FkX3Byb2ZpbGVfb3B0aW1pemF0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbG9hZF9wcm9maWxlX29wdGltaXphdGlvbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbG9jYXRpb25fcGluLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xvY2F0aW9uX3Bpbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxvY2F0aW9uX3Bpbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbG9jYXRpb25fcGluX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxvY2F0aW9uX3Bpbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbG9jYXRpb25fcGluX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sb2NhdGlvbl9waW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1sb2NhdGlvbl9waW46bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9sb2NhdGlvbl9waW5fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxvY2F0aW9uLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xvY2F0aW9uX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbG9jYXRpb24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2xvY2F0aW9uX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxvY2F0aW9uLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9sb2NhdGlvbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbG9jYXRpb24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1sb2NhdGlvbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2xvY2F0aW9uX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sb2dvdXQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbG9nb3V0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbG9nb3V0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9sb2dvdXRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbG9nb3V0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9sb2dvdXRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxvZ291dC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWxvZ291dDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2xvZ291dF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbHNoLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2xzaF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxzaC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbHNoX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWxzaC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbHNoX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sc2guZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1sc2g6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9sc2hfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWx1Z2dhZ2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbHVnZ2FnZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWx1Z2dhZ2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2x1Z2dhZ2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbHVnZ2FnZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbHVnZ2FnZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbHVnZ2FnZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLWx1Z2dhZ2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9sdWdnYWdlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sdW5jaF9icmVhay5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9sdW5jaF9icmVha19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWx1bmNoX2JyZWFrLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9sdW5jaF9icmVha19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sdW5jaF9icmVhay5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbHVuY2hfYnJlYWtfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWx1bmNoX2JyZWFrLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbHVuY2hfYnJlYWs6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9sdW5jaF9icmVha19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbHV4dXJ5X3NlY3Rvci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9sdXh1cnlfc2VjdG9yX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbHV4dXJ5X3NlY3Rvci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbHV4dXJ5X3NlY3Rvcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sdXh1cnlfc2VjdG9yLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9sdXh1cnlfc2VjdG9yX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1sdXh1cnlfc2VjdG9yLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbHV4dXJ5X3NlY3Rvcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL2x1eHVyeV9zZWN0b3JfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1haWwuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbWFpbF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1haWwuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21haWxfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWFpbC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbWFpbF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWFpbC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1haWw6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9tYWlsX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tYWxlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL21hbGVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tYWxlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9tYWxlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1hbGUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL21hbGVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1hbGUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1tYWxlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbWFsZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWFuYWdlbWVudC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9tYW5hZ2VtZW50X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWFuYWdlbWVudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbWFuYWdlbWVudF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tYW5hZ2VtZW50LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9tYW5hZ2VtZW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tYW5hZ2VtZW50LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbWFuYWdlbWVudDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21hbmFnZW1lbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1hbmFnZW1lbnRfc2VydmljZXMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbWFuYWdlbWVudF9zZXJ2aWNlc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1hbmFnZW1lbnRfc2VydmljZXMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21hbmFnZW1lbnRfc2VydmljZXNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWFuYWdlbWVudF9zZXJ2aWNlcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbWFuYWdlbWVudF9zZXJ2aWNlc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWFuYWdlbWVudF9zZXJ2aWNlcy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1hbmFnZW1lbnRfc2VydmljZXM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9tYW5hZ2VtZW50X3NlcnZpY2VzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tYW5pZmVzdF9yZWNlaXZlZC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9tYW5pZmVzdF9yZWNlaXZlZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1hbmlmZXN0X3JlY2VpdmVkLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9tYW5pZmVzdF9yZWNlaXZlZF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tYW5pZmVzdF9yZWNlaXZlZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbWFuaWZlc3RfcmVjZWl2ZWRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1hbmlmZXN0X3JlY2VpdmVkLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbWFuaWZlc3RfcmVjZWl2ZWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9tYW5pZmVzdF9yZWNlaXZlZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVkYWxfMS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9tZWRhbF8xX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVkYWxfMS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbWVkYWxfMV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRhbF8xLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9tZWRhbF8xX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRhbF8xLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbWVkYWxfMTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21lZGFsXzFfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZGFsXzIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbWVkYWxfMl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZGFsXzIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21lZGFsXzJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVkYWxfMi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbWVkYWxfMl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVkYWxfMi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1lZGFsXzI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9tZWRhbF8yX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRhbF8zLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL21lZGFsXzNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRhbF8zLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9tZWRhbF8zX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZGFsXzMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL21lZGFsXzNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZGFsXzMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1tZWRhbF8zOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbWVkYWxfM19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVkaWFfYW5kX2VudGVydGFpbm1lbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbWVkaWFfYW5kX2VudGVydGFpbm1lbnRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRpYV9hbmRfZW50ZXJ0YWlubWVudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbWVkaWFfYW5kX2VudGVydGFpbm1lbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVkaWFfYW5kX2VudGVydGFpbm1lbnQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL21lZGlhX2FuZF9lbnRlcnRhaW5tZW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRpYV9hbmRfZW50ZXJ0YWlubWVudC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1lZGlhX2FuZF9lbnRlcnRhaW5tZW50Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbWVkaWFfYW5kX2VudGVydGFpbm1lbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZGlhX2h1Yi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9tZWRpYV9odWJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRpYV9odWIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21lZGlhX2h1Yl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRpYV9odWIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL21lZGlhX2h1Yl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVkaWFfaHViLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbWVkaWFfaHViOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbWVkaWFfaHViX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRpY2FsX2RldmljZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9tZWRpY2FsX2RldmljZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZGljYWxfZGV2aWNlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9tZWRpY2FsX2RldmljZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRpY2FsX2RldmljZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbWVkaWNhbF9kZXZpY2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZGljYWxfZGV2aWNlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbWVkaWNhbF9kZXZpY2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9tZWRpY2FsX2RldmljZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVkaWNpbmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbWVkaWNpbmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRpY2luZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbWVkaWNpbmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVkaWNpbmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL21lZGljaW5lX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWRpY2luZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1lZGljaW5lOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbWVkaWNpbmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZXRpbmdfcG9pbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbWVldGluZ19wb2ludF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZXRpbmdfcG9pbnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21lZXRpbmdfcG9pbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVldGluZ19wb2ludC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbWVldGluZ19wb2ludF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVldGluZ19wb2ludC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1lZXRpbmdfcG9pbnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9tZWV0aW5nX3BvaW50X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZWdhcGhvbmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbWVnYXBob25lX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVnYXBob25lLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9tZWdhcGhvbmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVnYXBob25lLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9tZWdhcGhvbmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1lZ2FwaG9uZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1lZ2FwaG9uZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21lZ2FwaG9uZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVudV9idXJnZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbWVudV9idXJnZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZW51X2J1cmdlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbWVudV9idXJnZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWVudV9idXJnZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL21lbnVfYnVyZ2VyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tZW51X2J1cmdlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1lbnVfYnVyZ2VyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbWVudV9idXJnZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pY3JvcGhvbmVfb2ZmLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL21pY3JvcGhvbmVfb2ZmX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWljcm9waG9uZV9vZmYuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21pY3JvcGhvbmVfb2ZmX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pY3JvcGhvbmVfb2ZmLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9taWNyb3Bob25lX29mZl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWljcm9waG9uZV9vZmYuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1taWNyb3Bob25lX29mZjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21pY3JvcGhvbmVfb2ZmX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taWNyb3Bob25lLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL21pY3JvcGhvbmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taWNyb3Bob25lLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9taWNyb3Bob25lX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pY3JvcGhvbmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL21pY3JvcGhvbmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pY3JvcGhvbmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1taWNyb3Bob25lOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbWljcm9waG9uZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWljcm9zY29wZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9taWNyb3Njb3BlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWljcm9zY29wZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbWljcm9zY29wZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taWNyb3Njb3BlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9taWNyb3Njb3BlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taWNyb3Njb3BlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbWljcm9zY29wZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21pY3Jvc2NvcGVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pY3Jvc29mdF9vZmZpY2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbWljcm9zb2Z0X29mZmljZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pY3Jvc29mdF9vZmZpY2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21pY3Jvc29mdF9vZmZpY2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWljcm9zb2Z0X29mZmljZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbWljcm9zb2Z0X29mZmljZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWljcm9zb2Z0X29mZmljZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1pY3Jvc29mdF9vZmZpY2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9taWNyb3NvZnRfb2ZmaWNlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taWRkbGVfb3V0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL21pZGRsZV9vdXRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taWRkbGVfb3V0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9taWRkbGVfb3V0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pZGRsZV9vdXQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL21pZGRsZV9vdXRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pZGRsZV9vdXQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1taWRkbGVfb3V0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbWlkZGxlX291dF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWludXNfY2lyY2xlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL21pbnVzX2NpcmNsZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pbnVzX2NpcmNsZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbWludXNfY2lyY2xlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pbnVzX2NpcmNsZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbWludXNfY2lyY2xlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taW51c19jaXJjbGUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1taW51c19jaXJjbGU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9taW51c19jaXJjbGVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pbnVzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL21pbnVzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWludXMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21pbnVzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pbnVzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9taW51c19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWludXMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1taW51czpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21pbnVzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taXNzX2FfcGFyY2VsLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL21pc3NfYV9wYXJjZWxfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taXNzX2FfcGFyY2VsLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9taXNzX2FfcGFyY2VsX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pc3NfYV9wYXJjZWwuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL21pc3NfYV9wYXJjZWxfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1pc3NfYV9wYXJjZWwuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1taXNzX2FfcGFyY2VsOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbWlzc19hX3BhcmNlbF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWl0aWdhdGluZ19kaXNydXB0aW9ucy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9taXRpZ2F0aW5nX2Rpc3J1cHRpb25zX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbWl0aWdhdGluZ19kaXNydXB0aW9ucy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbWl0aWdhdGluZ19kaXNydXB0aW9uc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taXRpZ2F0aW5nX2Rpc3J1cHRpb25zLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9taXRpZ2F0aW5nX2Rpc3J1cHRpb25zX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1taXRpZ2F0aW5nX2Rpc3J1cHRpb25zLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbWl0aWdhdGluZ19kaXNydXB0aW9uczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21pdGlnYXRpbmdfZGlzcnVwdGlvbnNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1vYmlsZV9vZmYuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbW9iaWxlX29mZl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1vYmlsZV9vZmYuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21vYmlsZV9vZmZfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9iaWxlX29mZi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbW9iaWxlX29mZl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9iaWxlX29mZi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1vYmlsZV9vZmY6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9tb2JpbGVfb2ZmX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tb2JpbGVfcGhvbmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbW9iaWxlX3Bob25lX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9iaWxlX3Bob25lLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9tb2JpbGVfcGhvbmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9iaWxlX3Bob25lLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9tb2JpbGVfcGhvbmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1vYmlsZV9waG9uZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1vYmlsZV9waG9uZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21vYmlsZV9waG9uZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9kZXJhdGlvbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9tb2RlcmF0aW9uX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9kZXJhdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbW9kZXJhdGlvbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tb2RlcmF0aW9uLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9tb2RlcmF0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tb2RlcmF0aW9uLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbW9kZXJhdGlvbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21vZGVyYXRpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1vbml0b3IuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbW9uaXRvcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1vbml0b3IuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21vbml0b3JfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9uaXRvci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbW9uaXRvcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9uaXRvci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1vbml0b3I6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9tb25pdG9yX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tb3JlX2hvcml6b250YWwuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbW9yZV9ob3Jpem9udGFsX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9yZV9ob3Jpem9udGFsLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9tb3JlX2hvcml6b250YWxfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9yZV9ob3Jpem9udGFsLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9tb3JlX2hvcml6b250YWxfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1vcmVfaG9yaXpvbnRhbC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW1vcmVfaG9yaXpvbnRhbDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21vcmVfaG9yaXpvbnRhbF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9yZV92ZXJ0aWNhbC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9tb3JlX3ZlcnRpY2FsX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9yZV92ZXJ0aWNhbC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbW9yZV92ZXJ0aWNhbF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tb3JlX3ZlcnRpY2FsLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9tb3JlX3ZlcnRpY2FsX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tb3JlX3ZlcnRpY2FsLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbW9yZV92ZXJ0aWNhbDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21vcmVfdmVydGljYWxfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1vcm5pbmdfc3BvcnRzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL21vcm5pbmdfc3BvcnRzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9ybmluZ19zcG9ydHMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL21vcm5pbmdfc3BvcnRzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW1vcm5pbmdfc3BvcnRzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9tb3JuaW5nX3Nwb3J0c19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbW9ybmluZ19zcG9ydHMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1tb3JuaW5nX3Nwb3J0czpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL21vcm5pbmdfc3BvcnRzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tdGFuLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL210YW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1tdGFuLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9tdGFuX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW10YW4uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL210YW5fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW10YW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1tdGFuOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbXRhbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbXlfYWdlbmRhLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL215X2FnZW5kYV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW15X2FnZW5kYS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbXlfYWdlbmRhX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW15X2FnZW5kYS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbXlfYWdlbmRhX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1teV9hZ2VuZGEuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1teV9hZ2VuZGE6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9teV9hZ2VuZGFfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW5ld19jb250ZW50LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL25ld19jb250ZW50X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbmV3X2NvbnRlbnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL25ld19jb250ZW50X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW5ld19jb250ZW50LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9uZXdfY29udGVudF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbmV3X2NvbnRlbnQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1uZXdfY29udGVudDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL25ld19jb250ZW50X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1uZXdzbGV0dGVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL25ld3NsZXR0ZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1uZXdzbGV0dGVyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9uZXdzbGV0dGVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW5ld3NsZXR0ZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL25ld3NsZXR0ZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW5ld3NsZXR0ZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1uZXdzbGV0dGVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbmV3c2xldHRlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbm9fY29ubmVjdGlvbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9ub19jb25uZWN0aW9uX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbm9fY29ubmVjdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbm9fY29ubmVjdGlvbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ub19jb25uZWN0aW9uLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9ub19jb25uZWN0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ub19jb25uZWN0aW9uLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbm9fY29ubmVjdGlvbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL25vX2Nvbm5lY3Rpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW5vX2RlbGl2ZXJ5X3RvX25laWdoYm91ci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9ub19kZWxpdmVyeV90b19uZWlnaGJvdXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ub19kZWxpdmVyeV90b19uZWlnaGJvdXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL25vX2RlbGl2ZXJ5X3RvX25laWdoYm91cl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ub19kZWxpdmVyeV90b19uZWlnaGJvdXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL25vX2RlbGl2ZXJ5X3RvX25laWdoYm91cl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbm9fZGVsaXZlcnlfdG9fbmVpZ2hib3VyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbm9fZGVsaXZlcnlfdG9fbmVpZ2hib3VyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svbm9fZGVsaXZlcnlfdG9fbmVpZ2hib3VyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ub19wZXRzX2FsbG93ZWQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbm9fcGV0c19hbGxvd2VkX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbm9fcGV0c19hbGxvd2VkLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9ub19wZXRzX2FsbG93ZWRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbm9fcGV0c19hbGxvd2VkLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9ub19wZXRzX2FsbG93ZWRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW5vX3BldHNfYWxsb3dlZC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW5vX3BldHNfYWxsb3dlZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL25vX3BldHNfYWxsb3dlZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbm9fc21va2luZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9ub19zbW9raW5nX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbm9fc21va2luZy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vbm9fc21va2luZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ub19zbW9raW5nLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9ub19zbW9raW5nX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1ub19zbW9raW5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tbm9fc21va2luZzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL25vX3Ntb2tpbmdfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW5vdGlmaWNhdGlvbl9vZmYuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvbm90aWZpY2F0aW9uX29mZl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW5vdGlmaWNhdGlvbl9vZmYuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL25vdGlmaWNhdGlvbl9vZmZfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbm90aWZpY2F0aW9uX29mZi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvbm90aWZpY2F0aW9uX29mZl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tbm90aWZpY2F0aW9uX29mZi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW5vdGlmaWNhdGlvbl9vZmY6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9ub3RpZmljYXRpb25fb2ZmX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mYWxzZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9mYWxzZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZhbHNlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9mYWxzZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1mYWxzZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvZmFsc2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLWZhbHNlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tZmFsc2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9mYWxzZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb2ZmaWNlX3dvcmtlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9vZmZpY2Vfd29ya2VyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb2ZmaWNlX3dvcmtlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vb2ZmaWNlX3dvcmtlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vZmZpY2Vfd29ya2VyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9vZmZpY2Vfd29ya2VyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vZmZpY2Vfd29ya2VyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tb2ZmaWNlX3dvcmtlcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL29mZmljZV93b3JrZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW9ubGluZV9zaG9wcGluZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9vbmxpbmVfc2hvcHBpbmdfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vbmxpbmVfc2hvcHBpbmcuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL29ubGluZV9zaG9wcGluZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vbmxpbmVfc2hvcHBpbmcuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL29ubGluZV9zaG9wcGluZ19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb25saW5lX3Nob3BwaW5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tb25saW5lX3Nob3BwaW5nOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svb25saW5lX3Nob3BwaW5nX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vcGVuX2luX25ld193aW5kb3cuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvb3Blbl9pbl9uZXdfd2luZG93X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3Blbl9pbl9uZXdfd2luZG93LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9vcGVuX2luX25ld193aW5kb3dfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3Blbl9pbl9uZXdfd2luZG93LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9vcGVuX2luX25ld193aW5kb3dfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW9wZW5faW5fbmV3X3dpbmRvdy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW9wZW5faW5fbmV3X3dpbmRvdzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL29wZW5faW5fbmV3X3dpbmRvd19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3Blbl9wYXJjZWwuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvb3Blbl9wYXJjZWxfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vcGVuX3BhcmNlbC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vb3Blbl9wYXJjZWxfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3Blbl9wYXJjZWwuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL29wZW5fcGFyY2VsX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vcGVuX3BhcmNlbC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW9wZW5fcGFyY2VsOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svb3Blbl9wYXJjZWxfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW9wdGljYWxfcmFkaWF0aW9uLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL29wdGljYWxfcmFkaWF0aW9uX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3B0aWNhbF9yYWRpYXRpb24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL29wdGljYWxfcmFkaWF0aW9uX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW9wdGljYWxfcmFkaWF0aW9uLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9vcHRpY2FsX3JhZGlhdGlvbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3B0aWNhbF9yYWRpYXRpb24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1vcHRpY2FsX3JhZGlhdGlvbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL29wdGljYWxfcmFkaWF0aW9uX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vcnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvb3J0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3J0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9vcnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3J0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9vcnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLW9ydC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW9ydDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL29ydF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3RoZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvb3RoZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vdGhlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vb3RoZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tb3RoZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL290aGVyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1vdGhlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLW90aGVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svb3RoZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhY2tzdGF0aW9uX2xvY2tlcl9sZWFuLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BhY2tzdGF0aW9uX2xvY2tlcl9sZWFuX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFja3N0YXRpb25fbG9ja2VyX2xlYW4uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BhY2tzdGF0aW9uX2xvY2tlcl9sZWFuX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhY2tzdGF0aW9uX2xvY2tlcl9sZWFuLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wYWNrc3RhdGlvbl9sb2NrZXJfbGVhbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFja3N0YXRpb25fbG9ja2VyX2xlYW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wYWNrc3RhdGlvbl9sb2NrZXJfbGVhbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BhY2tzdGF0aW9uX2xvY2tlcl9sZWFuX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYWNrc3RhdGlvbl9sb2NrZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGFja3N0YXRpb25fbG9ja2VyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFja3N0YXRpb25fbG9ja2VyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wYWNrc3RhdGlvbl9sb2NrZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFja3N0YXRpb25fbG9ja2VyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wYWNrc3RhdGlvbl9sb2NrZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhY2tzdGF0aW9uX2xvY2tlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBhY2tzdGF0aW9uX2xvY2tlcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BhY2tzdGF0aW9uX2xvY2tlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFsbGV0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BhbGxldF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhbGxldC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGFsbGV0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhbGxldC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGFsbGV0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYWxsZXQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wYWxsZXQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wYWxsZXRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcGVyX3JlZ2lzdHJhdGlvbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wYXBlcl9yZWdpc3RyYXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXBlcl9yZWdpc3RyYXRpb24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BhcGVyX3JlZ2lzdHJhdGlvbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXBlcl9yZWdpc3RyYXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BhcGVyX3JlZ2lzdHJhdGlvbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFwZXJfcmVnaXN0cmF0aW9uLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGFwZXJfcmVnaXN0cmF0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGFwZXJfcmVnaXN0cmF0aW9uX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfYm94LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BhcmNlbF9ib3hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfYm94LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wYXJjZWxfYm94X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF9ib3guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BhcmNlbF9ib3hfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF9ib3guZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfYm94Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGFyY2VsX2JveF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFyY2VsX2J1dGxlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wYXJjZWxfYnV0bGVyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFyY2VsX2J1dGxlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGFyY2VsX2J1dGxlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfYnV0bGVyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wYXJjZWxfYnV0bGVyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfYnV0bGVyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGFyY2VsX2J1dGxlcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BhcmNlbF9idXRsZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF9oYW5kb3Zlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wYXJjZWxfaGFuZG92ZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfaGFuZG92ZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BhcmNlbF9oYW5kb3Zlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfaGFuZG92ZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BhcmNlbF9oYW5kb3Zlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFyY2VsX2hhbmRvdmVyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGFyY2VsX2hhbmRvdmVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGFyY2VsX2hhbmRvdmVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfbm90aWZpY2F0aW9uLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BhcmNlbF9ub3RpZmljYXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfbm90aWZpY2F0aW9uLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wYXJjZWxfbm90aWZpY2F0aW9uX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF9ub3RpZmljYXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BhcmNlbF9ub3RpZmljYXRpb25fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF9ub3RpZmljYXRpb24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfbm90aWZpY2F0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGFyY2VsX25vdGlmaWNhdGlvbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFyY2VsLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BhcmNlbF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGFyY2VsX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGFyY2VsX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWwuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWw6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wYXJjZWxfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF9zdG9wLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BhcmNlbF9zdG9wX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFyY2VsX3N0b3AuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BhcmNlbF9zdG9wX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF9zdG9wLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wYXJjZWxfc3RvcF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFyY2VsX3N0b3AuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfc3RvcDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BhcmNlbF9zdG9wX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfdGFwZV9kaXNwZW5zZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGFyY2VsX3RhcGVfZGlzcGVuc2VyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFyY2VsX3RhcGVfZGlzcGVuc2VyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wYXJjZWxfdGFwZV9kaXNwZW5zZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFyY2VsX3RhcGVfZGlzcGVuc2VyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wYXJjZWxfdGFwZV9kaXNwZW5zZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF90YXBlX2Rpc3BlbnNlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBhcmNlbF90YXBlX2Rpc3BlbnNlcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BhcmNlbF90YXBlX2Rpc3BlbnNlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFyY2VsX3RyYWNraW5nLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BhcmNlbF90cmFja2luZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF90cmFja2luZy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGFyY2VsX3RyYWNraW5nX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmNlbF90cmFja2luZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGFyY2VsX3RyYWNraW5nX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfdHJhY2tpbmcuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wYXJjZWxfdHJhY2tpbmc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wYXJjZWxfdHJhY2tpbmdfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmtpbmcuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGFya2luZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcmtpbmcuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BhcmtpbmdfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFya2luZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGFya2luZ19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFya2luZy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBhcmtpbmc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wYXJraW5nX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJ0bmVyc2hpcC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wYXJ0bmVyc2hpcF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcnRuZXJzaGlwLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wYXJ0bmVyc2hpcF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXJ0bmVyc2hpcC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGFydG5lcnNoaXBfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhcnRuZXJzaGlwLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGFydG5lcnNoaXA6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wYXJ0bmVyc2hpcF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFzc3dvcmRfcmVzZXQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGFzc3dvcmRfcmVzZXRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXNzd29yZF9yZXNldC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGFzc3dvcmRfcmVzZXRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFzc3dvcmRfcmVzZXQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Bhc3N3b3JkX3Jlc2V0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXNzd29yZF9yZXNldC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBhc3N3b3JkX3Jlc2V0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGFzc3dvcmRfcmVzZXRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhc3N3b3JkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Bhc3N3b3JkX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFzc3dvcmQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Bhc3N3b3JkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhc3N3b3JkLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wYXNzd29yZF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGFzc3dvcmQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wYXNzd29yZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Bhc3N3b3JkX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXVzZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wYXVzZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhdXNlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wYXVzZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXVzZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGF1c2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBhdXNlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGF1c2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wYXVzZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGF5bWVudF9hZHZpY2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGF5bWVudF9hZHZpY2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXltZW50X2FkdmljZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGF5bWVudF9hZHZpY2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGF5bWVudF9hZHZpY2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BheW1lbnRfYWR2aWNlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wYXltZW50X2FkdmljZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBheW1lbnRfYWR2aWNlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGF5bWVudF9hZHZpY2VfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBlbmNpbF9hbmRfcnVsZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGVuY2lsX2FuZF9ydWxlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBlbmNpbF9hbmRfcnVsZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BlbmNpbF9hbmRfcnVsZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGVuY2lsX2FuZF9ydWxlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGVuY2lsX2FuZF9ydWxlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGVuY2lsX2FuZF9ydWxlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBlbmNpbF9hbmRfcnVsZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wZW5jaWxfYW5kX3J1bGVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wZXJpc2hhYmxlcy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wZXJpc2hhYmxlc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBlcmlzaGFibGVzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wZXJpc2hhYmxlc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wZXJpc2hhYmxlcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGVyaXNoYWJsZXNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBlcmlzaGFibGVzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGVyaXNoYWJsZXM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wZXJpc2hhYmxlc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGV0cm9jaGVtaWNhbHMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGV0cm9jaGVtaWNhbHNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wZXRyb2NoZW1pY2Fscy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGV0cm9jaGVtaWNhbHNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGV0cm9jaGVtaWNhbHMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BldHJvY2hlbWljYWxzX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wZXRyb2NoZW1pY2Fscy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBldHJvY2hlbWljYWxzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGV0cm9jaGVtaWNhbHNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBldHJvbGl1bS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wZXRyb2xpdW1fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wZXRyb2xpdW0uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BldHJvbGl1bV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wZXRyb2xpdW0uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BldHJvbGl1bV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGV0cm9saXVtLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGV0cm9saXVtOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGV0cm9saXVtX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1waG9uZV93aXRoX2hhbmQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGhvbmVfd2l0aF9oYW5kX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGhvbmVfd2l0aF9oYW5kLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9waG9uZV93aXRoX2hhbmRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGhvbmVfd2l0aF9oYW5kLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9waG9uZV93aXRoX2hhbmRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBob25lX3dpdGhfaGFuZC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBob25lX3dpdGhfaGFuZDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Bob25lX3dpdGhfaGFuZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGhvdG9fY2FtZXJhLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Bob3RvX2NhbWVyYV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBob3RvX2NhbWVyYS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGhvdG9fY2FtZXJhX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBob3RvX2NhbWVyYS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGhvdG9fY2FtZXJhX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1waG90b19jYW1lcmEuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1waG90b19jYW1lcmE6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9waG90b19jYW1lcmFfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBpY2theGUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGlja2F4ZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBpY2theGUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BpY2theGVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGlja2F4ZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGlja2F4ZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGlja2F4ZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBpY2theGU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9waWNrYXhlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1waWVfY2hhcnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGllX2NoYXJ0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGllX2NoYXJ0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9waWVfY2hhcnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGllX2NoYXJ0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9waWVfY2hhcnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBpZV9jaGFydC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBpZV9jaGFydDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BpZV9jaGFydF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGluY2VyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BpbmNlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBpbmNlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGluY2VyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBpbmNlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGluY2VyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1waW5jZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1waW5jZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9waW5jZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBpbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9waW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1waW4uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Bpbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1waW4uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Bpbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGluLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGluOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGluX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1QS1cuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvUEtXX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tUEtXLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9QS1dfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tUEtXLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9QS1dfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLVBLVy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLVBLVzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL1BLV19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGxhbmVfYWlyX2ZyZWlnaHQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGxhbmVfYWlyX2ZyZWlnaHRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbGFuZV9haXJfZnJlaWdodC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGxhbmVfYWlyX2ZyZWlnaHRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGxhbmVfYWlyX2ZyZWlnaHQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BsYW5lX2Fpcl9mcmVpZ2h0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbGFuZV9haXJfZnJlaWdodC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBsYW5lX2Fpcl9mcmVpZ2h0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGxhbmVfYWlyX2ZyZWlnaHRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsYW5lX2xhbmRpbmcuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGxhbmVfbGFuZGluZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsYW5lX2xhbmRpbmcuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BsYW5lX2xhbmRpbmdfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGxhbmVfbGFuZGluZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGxhbmVfbGFuZGluZ19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGxhbmVfbGFuZGluZy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBsYW5lX2xhbmRpbmc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wbGFuZV9sYW5kaW5nX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbGFuZV90YWtlX29mZi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wbGFuZV90YWtlX29mZl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsYW5lX3Rha2Vfb2ZmLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wbGFuZV90YWtlX29mZl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbGFuZV90YWtlX29mZi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcGxhbmVfdGFrZV9vZmZfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsYW5lX3Rha2Vfb2ZmLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGxhbmVfdGFrZV9vZmY6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wbGFuZV90YWtlX29mZl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGxheS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wbGF5X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGxheS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGxheV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbGF5LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wbGF5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbGF5LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcGxheTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BsYXlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsZWFzZV9jb250YWN0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BsZWFzZV9jb250YWN0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGxlYXNlX2NvbnRhY3QuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BsZWFzZV9jb250YWN0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsZWFzZV9jb250YWN0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wbGVhc2VfY29udGFjdF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGxlYXNlX2NvbnRhY3QuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wbGVhc2VfY29udGFjdDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BsZWFzZV9jb250YWN0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbGVuYXJ5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BsZW5hcnlfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbGVuYXJ5LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wbGVuYXJ5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsZW5hcnkuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BsZW5hcnlfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsZW5hcnkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wbGVuYXJ5Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGxlbmFyeV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGx1Z2luc19zaG9wc29mdHdhcmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcGx1Z2luc19zaG9wc29mdHdhcmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbHVnaW5zX3Nob3Bzb2Z0d2FyZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcGx1Z2luc19zaG9wc29mdHdhcmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGx1Z2luc19zaG9wc29mdHdhcmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BsdWdpbnNfc2hvcHNvZnR3YXJlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbHVnaW5zX3Nob3Bzb2Z0d2FyZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBsdWdpbnNfc2hvcHNvZnR3YXJlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGx1Z2luc19zaG9wc29mdHdhcmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsdXNfY2lyY2xlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BsdXNfY2lyY2xlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGx1c19jaXJjbGUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BsdXNfY2lyY2xlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsdXNfY2lyY2xlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wbHVzX2NpcmNsZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcGx1c19jaXJjbGUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wbHVzX2NpcmNsZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BsdXNfY2lyY2xlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbHVzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BsdXNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wbHVzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wbHVzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsdXMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3BsdXNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBsdXMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wbHVzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcGx1c19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG9kLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3BvZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcG9kX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcG9kX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wb2QuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wb2Q6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wb2RfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvcnRfY3JhbmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcG9ydF9jcmFuZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvcnRfY3JhbmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3BvcnRfY3JhbmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG9ydF9jcmFuZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcG9ydF9jcmFuZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG9ydF9jcmFuZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBvcnRfY3JhbmU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wb3J0X2NyYW5lX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wb3J0cmFpdF9mb3JtYXQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcG9ydHJhaXRfZm9ybWF0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG9ydHJhaXRfZm9ybWF0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wb3J0cmFpdF9mb3JtYXRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG9ydHJhaXRfZm9ybWF0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wb3J0cmFpdF9mb3JtYXRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvcnRyYWl0X2Zvcm1hdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXBvcnRyYWl0X2Zvcm1hdDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3BvcnRyYWl0X2Zvcm1hdF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG9zdGFnZV9jYWxjdWxhdG9yLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Bvc3RhZ2VfY2FsY3VsYXRvcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvc3RhZ2VfY2FsY3VsYXRvci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcG9zdGFnZV9jYWxjdWxhdG9yX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvc3RhZ2VfY2FsY3VsYXRvci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcG9zdGFnZV9jYWxjdWxhdG9yX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wb3N0YWdlX2NhbGN1bGF0b3IuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wb3N0YWdlX2NhbGN1bGF0b3I6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wb3N0YWdlX2NhbGN1bGF0b3JfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvc3RhbF9zdGFtcC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wb3N0YWxfc3RhbXBfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wb3N0YWxfc3RhbXAuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Bvc3RhbF9zdGFtcF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wb3N0YWxfc3RhbXAuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Bvc3RhbF9zdGFtcF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG9zdGFsX3N0YW1wLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcG9zdGFsX3N0YW1wOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcG9zdGFsX3N0YW1wX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wb3N0X2FuZF9wYXJjZWxfZ2VybWFueS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wb3N0X2FuZF9wYXJjZWxfZ2VybWFueV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvc3RfYW5kX3BhcmNlbF9nZXJtYW55LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wb3N0X2FuZF9wYXJjZWxfZ2VybWFueV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wb3N0X2FuZF9wYXJjZWxfZ2VybWFueS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcG9zdF9hbmRfcGFyY2VsX2dlcm1hbnlfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvc3RfYW5kX3BhcmNlbF9nZXJtYW55LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcG9zdF9hbmRfcGFyY2VsX2dlcm1hbnk6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wb3N0X2FuZF9wYXJjZWxfZ2VybWFueV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG93ZXJfcGx1Zy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wb3dlcl9wbHVnX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG93ZXJfcGx1Zy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcG93ZXJfcGx1Z19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wb3dlcl9wbHVnLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wb3dlcl9wbHVnX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wb3dlcl9wbHVnLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcG93ZXJfcGx1Zzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Bvd2VyX3BsdWdfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvd2VyX3V0aWxpdGVzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Bvd2VyX3V0aWxpdGVzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG93ZXJfdXRpbGl0ZXMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Bvd2VyX3V0aWxpdGVzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXBvd2VyX3V0aWxpdGVzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wb3dlcl91dGlsaXRlc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcG93ZXJfdXRpbGl0ZXMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wb3dlcl91dGlsaXRlczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Bvd2VyX3V0aWxpdGVzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcmF5ZXJfcm9vbS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wcmF5ZXJfcm9vbV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByYXllcl9yb29tLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wcmF5ZXJfcm9vbV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcmF5ZXJfcm9vbS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcHJheWVyX3Jvb21fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByYXllcl9yb29tLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcHJheWVyX3Jvb206bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wcmF5ZXJfcm9vbV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJlZmVycmVkX25laWdoYm91ci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wcmVmZXJyZWRfbmVpZ2hib3VyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJlZmVycmVkX25laWdoYm91ci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcHJlZmVycmVkX25laWdoYm91cl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcmVmZXJyZWRfbmVpZ2hib3VyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wcmVmZXJyZWRfbmVpZ2hib3VyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcmVmZXJyZWRfbmVpZ2hib3VyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcHJlZmVycmVkX25laWdoYm91cjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3ByZWZlcnJlZF9uZWlnaGJvdXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByZXNlbnRhdGlvbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9wcmVzZW50YXRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcmVzZW50YXRpb24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3ByZXNlbnRhdGlvbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcmVzZW50YXRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3ByZXNlbnRhdGlvbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJlc2VudGF0aW9uLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcHJlc2VudGF0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcHJlc2VudGF0aW9uX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcmltYXJ5X3NlY29uZGFyeV9wYWNrYWdpbmcuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcHJpbWFyeV9zZWNvbmRhcnlfcGFja2FnaW5nX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJpbWFyeV9zZWNvbmRhcnlfcGFja2FnaW5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wcmltYXJ5X3NlY29uZGFyeV9wYWNrYWdpbmdfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJpbWFyeV9zZWNvbmRhcnlfcGFja2FnaW5nLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wcmltYXJ5X3NlY29uZGFyeV9wYWNrYWdpbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByaW1hcnlfc2Vjb25kYXJ5X3BhY2thZ2luZy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXByaW1hcnlfc2Vjb25kYXJ5X3BhY2thZ2luZzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3ByaW1hcnlfc2Vjb25kYXJ5X3BhY2thZ2luZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJpbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcHJpbnRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcmludC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcHJpbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJpbnQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3ByaW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcmludC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXByaW50Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcHJpbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByaW8uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcHJpb19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByaW8uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3ByaW9fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJpby5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcHJpb19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJpby5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXByaW86bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wcmlvX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcm9kdWN0X2xhdW5jaGVzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Byb2R1Y3RfbGF1bmNoZXNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcm9kdWN0X2xhdW5jaGVzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wcm9kdWN0X2xhdW5jaGVzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByb2R1Y3RfbGF1bmNoZXMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Byb2R1Y3RfbGF1bmNoZXNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByb2R1Y3RfbGF1bmNoZXMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wcm9kdWN0X2xhdW5jaGVzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcHJvZHVjdF9sYXVuY2hlc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJvamVjdG9yLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Byb2plY3Rvcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByb2plY3Rvci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcHJvamVjdG9yX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByb2plY3Rvci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcHJvamVjdG9yX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wcm9qZWN0b3IuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wcm9qZWN0b3I6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wcm9qZWN0b3JfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByb3MuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcHJvc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXByb3MuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Byb3NfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJvcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcHJvc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHJvcy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXByb3M6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wcm9zX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wdWJsaWNfc2VjdG9yLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3B1YmxpY19zZWN0b3JfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wdWJsaWNfc2VjdG9yLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9wdWJsaWNfc2VjdG9yX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXB1YmxpY19zZWN0b3IuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3B1YmxpY19zZWN0b3JfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXB1YmxpY19zZWN0b3IuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wdWJsaWNfc2VjdG9yOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcHVibGljX3NlY3Rvcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHVzaF9hbmRyb2lkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3B1c2hfYW5kcm9pZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXB1c2hfYW5kcm9pZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcHVzaF9hbmRyb2lkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXB1c2hfYW5kcm9pZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcHVzaF9hbmRyb2lkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1wdXNoX2FuZHJvaWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wdXNoX2FuZHJvaWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9wdXNoX2FuZHJvaWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXB1c2hfaW9zLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3B1c2hfaW9zX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHVzaF9pb3MuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3B1c2hfaW9zX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXB1c2hfaW9zLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9wdXNoX2lvc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcHVzaF9pb3MuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1wdXNoX2lvczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3B1c2hfaW9zX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1xX2FuZF9hLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3FfYW5kX2FfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1xX2FuZF9hLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9xX2FuZF9hX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXFfYW5kX2EuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3FfYW5kX2FfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXFfYW5kX2EuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1xX2FuZF9hOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcV9hbmRfYV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcXVhcmFudGluZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9xdWFyYW50aW5lX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcXVhcmFudGluZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcXVhcmFudGluZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1xdWFyYW50aW5lLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9xdWFyYW50aW5lX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1xdWFyYW50aW5lLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcXVhcmFudGluZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3F1YXJhbnRpbmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJhZGFyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3JhZGFyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmFkYXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3JhZGFyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJhZGFyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9yYWRhcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmFkYXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yYWRhcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3JhZGFyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yYWRpb19hY3RpdmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcmFkaW9fYWN0aXZlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmFkaW9fYWN0aXZlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yYWRpb19hY3RpdmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmFkaW9fYWN0aXZlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9yYWRpb19hY3RpdmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJhZGlvX2FjdGl2ZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJhZGlvX2FjdGl2ZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3JhZGlvX2FjdGl2ZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmFpbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9yYWluX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmFpbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcmFpbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yYWluLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9yYWluX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yYWluLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcmFpbjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3JhaW5fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlY2VpcHQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcmVjZWlwdF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlY2VpcHQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3JlY2VpcHRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVjZWlwdC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmVjZWlwdF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVjZWlwdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJlY2VpcHQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZWNlaXB0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWNlaXZlZC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9yZWNlaXZlZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlY2VpdmVkLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yZWNlaXZlZF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWNlaXZlZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmVjZWl2ZWRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlY2VpdmVkLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcmVjZWl2ZWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZWNlaXZlZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVjZWl2ZV9ub3RpZmljYXRpb25zX2FuZF9waWNrX3VwLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3JlY2VpdmVfbm90aWZpY2F0aW9uc19hbmRfcGlja191cF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlY2VpdmVfbm90aWZpY2F0aW9uc19hbmRfcGlja191cC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcmVjZWl2ZV9ub3RpZmljYXRpb25zX2FuZF9waWNrX3VwX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlY2VpdmVfbm90aWZpY2F0aW9uc19hbmRfcGlja191cC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmVjZWl2ZV9ub3RpZmljYXRpb25zX2FuZF9waWNrX3VwX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWNlaXZlX25vdGlmaWNhdGlvbnNfYW5kX3BpY2tfdXAuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yZWNlaXZlX25vdGlmaWNhdGlvbnNfYW5kX3BpY2tfdXA6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZWNlaXZlX25vdGlmaWNhdGlvbnNfYW5kX3BpY2tfdXBfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlY2VpdmVfcGFyY2VsLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3JlY2VpdmVfcGFyY2VsX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVjZWl2ZV9wYXJjZWwuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3JlY2VpdmVfcGFyY2VsX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlY2VpdmVfcGFyY2VsLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9yZWNlaXZlX3BhcmNlbF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVjZWl2ZV9wYXJjZWwuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yZWNlaXZlX3BhcmNlbDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3JlY2VpdmVfcGFyY2VsX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWRpcmVjdF9sYWJlbGluZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9yZWRpcmVjdF9sYWJlbGluZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlZGlyZWN0X2xhYmVsaW5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yZWRpcmVjdF9sYWJlbGluZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWRpcmVjdF9sYWJlbGluZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmVkaXJlY3RfbGFiZWxpbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlZGlyZWN0X2xhYmVsaW5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcmVkaXJlY3RfbGFiZWxpbmc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZWRpcmVjdF9sYWJlbGluZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVkaXJlY3QuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcmVkaXJlY3RfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWRpcmVjdC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcmVkaXJlY3RfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVkaXJlY3QuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3JlZGlyZWN0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWRpcmVjdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJlZGlyZWN0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcmVkaXJlY3RfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlZG9fYXJyb3cuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcmVkb19hcnJvd19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlZG9fYXJyb3cuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3JlZG9fYXJyb3dfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVkb19hcnJvdy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmVkb19hcnJvd19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVkb19hcnJvdy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJlZG9fYXJyb3c6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZWRvX2Fycm93X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWdpc3RyYXRpb25fZGlnaXRhbC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9yZWdpc3RyYXRpb25fZGlnaXRhbF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlZ2lzdHJhdGlvbl9kaWdpdGFsLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yZWdpc3RyYXRpb25fZGlnaXRhbF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWdpc3RyYXRpb25fZGlnaXRhbC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmVnaXN0cmF0aW9uX2RpZ2l0YWxfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlZ2lzdHJhdGlvbl9kaWdpdGFsLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcmVnaXN0cmF0aW9uX2RpZ2l0YWw6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZWdpc3RyYXRpb25fZGlnaXRhbF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVsaWdpb25faGluZHUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcmVsaWdpb25faGluZHVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWxpZ2lvbl9oaW5kdS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcmVsaWdpb25faGluZHVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVsaWdpb25faGluZHUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3JlbGlnaW9uX2hpbmR1X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWxpZ2lvbl9oaW5kdS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJlbGlnaW9uX2hpbmR1Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcmVsaWdpb25faGluZHVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlbGlnaW9uX2NocmlzdGlhbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9yZWxpZ2lvbl9jaHJpc3RpYW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWxpZ2lvbl9jaHJpc3RpYW4uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3JlbGlnaW9uX2NocmlzdGlhbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWxpZ2lvbl9jaHJpc3RpYW4uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3JlbGlnaW9uX2NocmlzdGlhbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVsaWdpb25fY2hyaXN0aWFuLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcmVsaWdpb25fY2hyaXN0aWFuOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcmVsaWdpb25fY2hyaXN0aWFuX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWxpZ2lvbl9pc2xhbS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9yZWxpZ2lvbl9pc2xhbV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlbGlnaW9uX2lzbGFtLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yZWxpZ2lvbl9pc2xhbV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWxpZ2lvbl9pc2xhbS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmVsaWdpb25faXNsYW1fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlbGlnaW9uX2lzbGFtLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcmVsaWdpb25faXNsYW06bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZWxpZ2lvbl9pc2xhbV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVsaWdpb25famV3LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3JlbGlnaW9uX2pld19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlbGlnaW9uX2pldy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcmVsaWdpb25famV3X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlbGlnaW9uX2pldy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmVsaWdpb25famV3X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZWxpZ2lvbl9qZXcuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yZWxpZ2lvbl9qZXc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZWxpZ2lvbl9qZXdfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlc2V0X2NsZWFyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Jlc2V0X2NsZWFyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVzZXRfY2xlYXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Jlc2V0X2NsZWFyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlc2V0X2NsZWFyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9yZXNldF9jbGVhcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVzZXRfY2xlYXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yZXNldF9jbGVhcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Jlc2V0X2NsZWFyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZXNpemVfbGFyZ2VyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Jlc2l6ZV9sYXJnZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZXNpemVfbGFyZ2VyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yZXNpemVfbGFyZ2VyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlc2l6ZV9sYXJnZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Jlc2l6ZV9sYXJnZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlc2l6ZV9sYXJnZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yZXNpemVfbGFyZ2VyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcmVzaXplX2xhcmdlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVzaXplX3NtYWxsZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcmVzaXplX3NtYWxsZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZXNpemVfc21hbGxlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcmVzaXplX3NtYWxsZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVzaXplX3NtYWxsZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Jlc2l6ZV9zbWFsbGVyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZXNpemVfc21hbGxlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJlc2l6ZV9zbWFsbGVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcmVzaXplX3NtYWxsZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlc3BvbnNpYmlsaXR5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Jlc3BvbnNpYmlsaXR5X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVzcG9uc2liaWxpdHkuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Jlc3BvbnNpYmlsaXR5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJlc3BvbnNpYmlsaXR5LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9yZXNwb25zaWJpbGl0eV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmVzcG9uc2liaWxpdHkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yZXNwb25zaWJpbGl0eTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Jlc3BvbnNpYmlsaXR5X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZXRhaWxfc2VjdG9yLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3JldGFpbF9zZWN0b3JfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZXRhaWxfc2VjdG9yLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yZXRhaWxfc2VjdG9yX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJldGFpbF9zZWN0b3IuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3JldGFpbF9zZWN0b3JfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJldGFpbF9zZWN0b3IuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yZXRhaWxfc2VjdG9yOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcmV0YWlsX3NlY3Rvcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmV0dXJuX29mX3VuZGVsaXZlcmFibGVzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3JldHVybl9vZl91bmRlbGl2ZXJhYmxlc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJldHVybl9vZl91bmRlbGl2ZXJhYmxlcy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcmV0dXJuX29mX3VuZGVsaXZlcmFibGVzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJldHVybl9vZl91bmRlbGl2ZXJhYmxlcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmV0dXJuX29mX3VuZGVsaXZlcmFibGVzX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yZXR1cm5fb2ZfdW5kZWxpdmVyYWJsZXMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yZXR1cm5fb2ZfdW5kZWxpdmVyYWJsZXM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZXR1cm5fb2ZfdW5kZWxpdmVyYWJsZXNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJldHVybl9zb2x1dGlvbnMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcmV0dXJuX3NvbHV0aW9uc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJldHVybl9zb2x1dGlvbnMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3JldHVybl9zb2x1dGlvbnNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmV0dXJuX3NvbHV0aW9ucy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcmV0dXJuX3NvbHV0aW9uc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmV0dXJuX3NvbHV0aW9ucy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJldHVybl9zb2x1dGlvbnM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yZXR1cm5fc29sdXRpb25zX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yaWcuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcmlnX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmlnLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yaWdfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmlnLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9yaWdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJpZy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJpZzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3JpZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmlza19vZl9leHBsb3Npb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcmlza19vZl9leHBsb3Npb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yaXNrX29mX2V4cGxvc2lvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcmlza19vZl9leHBsb3Npb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmlza19vZl9leHBsb3Npb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Jpc2tfb2ZfZXhwbG9zaW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yaXNrX29mX2V4cGxvc2lvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJpc2tfb2ZfZXhwbG9zaW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcmlza19vZl9leHBsb3Npb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJpc2tfb2ZfZmlyZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9yaXNrX29mX2ZpcmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yaXNrX29mX2ZpcmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Jpc2tfb2ZfZmlyZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yaXNrX29mX2ZpcmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Jpc2tfb2ZfZmlyZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcmlza19vZl9maXJlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tcmlza19vZl9maXJlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcmlza19vZl9maXJlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yb2JvdF9lZmZpYm90LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3JvYm90X2VmZmlib3RfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yb2JvdF9lZmZpYm90LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yb2JvdF9lZmZpYm90X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJvYm90X2VmZmlib3QuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3JvYm90X2VmZmlib3RfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJvYm90X2VmZmlib3QuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yb2JvdF9lZmZpYm90Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcm9ib3RfZWZmaWJvdF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcm9ib3RpY19hcm0uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcm9ib3RpY19hcm1fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yb2JvdGljX2FybS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcm9ib3RpY19hcm1fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcm9ib3RpY19hcm0uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3JvYm90aWNfYXJtX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yb2JvdGljX2FybS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJvYm90aWNfYXJtOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svcm9ib3RpY19hcm1fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJvYm90aWNfZG9nLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3JvYm90aWNfZG9nX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcm9ib3RpY19kb2cuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3JvYm90aWNfZG9nX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJvYm90aWNfZG9nLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9yb2JvdGljX2RvZ19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcm9ib3RpY19kb2cuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yb2JvdGljX2RvZzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3JvYm90aWNfZG9nX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yb2xsc19hbmRfdHViZXMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvcm9sbHNfYW5kX3R1YmVzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcm9sbHNfYW5kX3R1YmVzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9yb2xsc19hbmRfdHViZXNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcm9sbHNfYW5kX3R1YmVzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9yb2xsc19hbmRfdHViZXNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJvbGxzX2FuZF90dWJlcy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXJvbGxzX2FuZF90dWJlczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3JvbGxzX2FuZF90dWJlc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcm90YXRlX3Bob25lLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3JvdGF0ZV9waG9uZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJvdGF0ZV9waG9uZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vcm90YXRlX3Bob25lX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJvdGF0ZV9waG9uZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvcm90YXRlX3Bob25lX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1yb3RhdGVfcGhvbmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1yb3RhdGVfcGhvbmU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9yb3RhdGVfcGhvbmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJ1bGVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3J1bGVyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcnVsZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3J1bGVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXJ1bGVyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9ydWxlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tcnVsZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1ydWxlcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3J1bGVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zYWZlZ3VhcmRpbmcuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2FmZWd1YXJkaW5nX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2FmZWd1YXJkaW5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zYWZlZ3VhcmRpbmdfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2FmZWd1YXJkaW5nLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zYWZlZ3VhcmRpbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNhZmVndWFyZGluZy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNhZmVndWFyZGluZzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3NhZmVndWFyZGluZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2FmZXR5X3Zlc3QuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2FmZXR5X3Zlc3RfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zYWZldHlfdmVzdC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2FmZXR5X3Zlc3RfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2FmZXR5X3Zlc3QuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NhZmV0eV92ZXN0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zYWZldHlfdmVzdC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNhZmV0eV92ZXN0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2FmZXR5X3Zlc3RfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNhbWVkYXkuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2FtZWRheV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNhbWVkYXkuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NhbWVkYXlfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2FtZWRheS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2FtZWRheV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2FtZWRheS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNhbWVkYXk6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zYW1lZGF5X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zYXZpbmdfc2V0c19wZXJjZW50YWdlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3NhdmluZ19zZXRzX3BlcmNlbnRhZ2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zYXZpbmdfc2V0c19wZXJjZW50YWdlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zYXZpbmdfc2V0c19wZXJjZW50YWdlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNhdmluZ19zZXRzX3BlcmNlbnRhZ2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NhdmluZ19zZXRzX3BlcmNlbnRhZ2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNhdmluZ19zZXRzX3BlcmNlbnRhZ2UuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zYXZpbmdfc2V0c19wZXJjZW50YWdlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2F2aW5nX3NldHNfcGVyY2VudGFnZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2F2aW5nX3NldHMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2F2aW5nX3NldHNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zYXZpbmdfc2V0cy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2F2aW5nX3NldHNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2F2aW5nX3NldHMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NhdmluZ19zZXRzX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zYXZpbmdfc2V0cy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNhdmluZ19zZXRzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2F2aW5nX3NldHNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNhdy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zYXdfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zYXcuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Nhd19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zYXcuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Nhd19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2F3LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2F3Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2F3X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zY2FuX2JhcmNvZGUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2Nhbl9iYXJjb2RlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2Nhbl9iYXJjb2RlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zY2FuX2JhcmNvZGVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2Nhbl9iYXJjb2RlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zY2FuX2JhcmNvZGVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNjYW5fYmFyY29kZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNjYW5fYmFyY29kZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3NjYW5fYmFyY29kZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2Nhbl9wYXJjZWwuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2Nhbl9wYXJjZWxfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zY2FuX3BhcmNlbC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2Nhbl9wYXJjZWxfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2Nhbl9wYXJjZWwuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NjYW5fcGFyY2VsX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zY2FuX3BhcmNlbC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNjYW5fcGFyY2VsOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2Nhbl9wYXJjZWxfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNjYW5fcXJfY29kZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zY2FuX3FyX2NvZGVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zY2FuX3FyX2NvZGUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NjYW5fcXJfY29kZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zY2FuX3FyX2NvZGUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NjYW5fcXJfY29kZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2Nhbl9xcl9jb2RlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2Nhbl9xcl9jb2RlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2Nhbl9xcl9jb2RlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zY2llbmNlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3NjaWVuY2VfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zY2llbmNlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zY2llbmNlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNjaWVuY2UuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NjaWVuY2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNjaWVuY2UuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zY2llbmNlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2NpZW5jZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2NyZXdkcml2ZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2NyZXdkcml2ZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zY3Jld2RyaXZlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2NyZXdkcml2ZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2NyZXdkcml2ZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NjcmV3ZHJpdmVyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zY3Jld2RyaXZlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNjcmV3ZHJpdmVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2NyZXdkcml2ZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlYXJjaC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zZWFyY2hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZWFyY2guZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NlYXJjaF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZWFyY2guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NlYXJjaF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2VhcmNoLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2VhcmNoOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2VhcmNoX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZWN1cmVfYW5kX2NvbXBsaWFudC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zZWN1cmVfYW5kX2NvbXBsaWFudF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlY3VyZV9hbmRfY29tcGxpYW50LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zZWN1cmVfYW5kX2NvbXBsaWFudF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZWN1cmVfYW5kX2NvbXBsaWFudC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2VjdXJlX2FuZF9jb21wbGlhbnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlY3VyZV9hbmRfY29tcGxpYW50LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2VjdXJlX2FuZF9jb21wbGlhbnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zZWN1cmVfYW5kX2NvbXBsaWFudF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2VjdXJpdHlfY2FtZXJhLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3NlY3VyaXR5X2NhbWVyYV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlY3VyaXR5X2NhbWVyYS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2VjdXJpdHlfY2FtZXJhX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlY3VyaXR5X2NhbWVyYS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2VjdXJpdHlfY2FtZXJhX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZWN1cml0eV9jYW1lcmEuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zZWN1cml0eV9jYW1lcmE6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zZWN1cml0eV9jYW1lcmFfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlbmRfcGFyY2VsLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3NlbmRfcGFyY2VsX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2VuZF9wYXJjZWwuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NlbmRfcGFyY2VsX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlbmRfcGFyY2VsLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zZW5kX3BhcmNlbF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2VuZF9wYXJjZWwuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zZW5kX3BhcmNlbDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3NlbmRfcGFyY2VsX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZW5kLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3NlbmRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZW5kLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zZW5kX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlbmQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NlbmRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlbmQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zZW5kOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2VuZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2VydmVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3NlcnZlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlcnZlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2VydmVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlcnZlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2VydmVyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZXJ2ZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zZXJ2ZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zZXJ2ZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlcnZpY2VfcG9pbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2VydmljZV9wb2ludF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNlcnZpY2VfcG9pbnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NlcnZpY2VfcG9pbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2VydmljZV9wb2ludC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2VydmljZV9wb2ludF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2VydmljZV9wb2ludC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNlcnZpY2VfcG9pbnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zZXJ2aWNlX3BvaW50X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZXR0aW5ncy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zZXR0aW5nc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNldHRpbmdzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zZXR0aW5nc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZXR0aW5ncy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2V0dGluZ3NfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNldHRpbmdzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2V0dGluZ3M6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zZXR0aW5nc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2V3aW5nX21hY2hpbmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2V3aW5nX21hY2hpbmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZXdpbmdfbWFjaGluZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2V3aW5nX21hY2hpbmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2V3aW5nX21hY2hpbmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Nld2luZ19tYWNoaW5lX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zZXdpbmdfbWFjaGluZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNld2luZ19tYWNoaW5lOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2V3aW5nX21hY2hpbmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNoYXJlX2FuZHJvaWQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2hhcmVfYW5kcm9pZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNoYXJlX2FuZHJvaWQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NoYXJlX2FuZHJvaWRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hhcmVfYW5kcm9pZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2hhcmVfYW5kcm9pZF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hhcmVfYW5kcm9pZC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNoYXJlX2FuZHJvaWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zaGFyZV9hbmRyb2lkX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaGFyZV9pb3MuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2hhcmVfaW9zX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hhcmVfaW9zLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zaGFyZV9pb3NfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hhcmVfaW9zLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zaGFyZV9pb3NfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNoYXJlX2lvcy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNoYXJlX2lvczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3NoYXJlX2lvc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hhcmVfc2NyZWVuLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3NoYXJlX3NjcmVlbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNoYXJlX3NjcmVlbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2hhcmVfc2NyZWVuX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNoYXJlX3NjcmVlbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2hhcmVfc2NyZWVuX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaGFyZV9zY3JlZW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zaGFyZV9zY3JlZW46bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zaGFyZV9zY3JlZW5fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNoYXJlX3dlYl9vbi5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zaGFyZV93ZWJfb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaGFyZV93ZWJfb24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NoYXJlX3dlYl9vbl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaGFyZV93ZWJfb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NoYXJlX3dlYl9vbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hhcmVfd2ViX29uLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2hhcmVfd2ViX29uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2hhcmVfd2ViX29uX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaG9lX2JhZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zaG9lX2JhZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNob2VfYmFnLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zaG9lX2JhZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaG9lX2JhZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2hvZV9iYWdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNob2VfYmFnLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2hvZV9iYWc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zaG9lX2JhZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hvZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zaG9lX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hvZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2hvZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaG9lLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zaG9lX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaG9lLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2hvZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Nob2VfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNob3BwaW5nX2NhcnRfZWNvbW1lcmNlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Nob3BwaW5nX2NhcnRfZWNvbW1lcmNlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hvcHBpbmdfY2FydF9lY29tbWVyY2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Nob3BwaW5nX2NhcnRfZWNvbW1lcmNlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNob3BwaW5nX2NhcnRfZWNvbW1lcmNlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zaG9wcGluZ19jYXJ0X2Vjb21tZXJjZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hvcHBpbmdfY2FydF9lY29tbWVyY2UuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zaG9wcGluZ19jYXJ0X2Vjb21tZXJjZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Nob3BwaW5nX2NhcnRfZWNvbW1lcmNlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaG9wcGluZ19jYXJ0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Nob3BwaW5nX2NhcnRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaG9wcGluZ19jYXJ0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zaG9wcGluZ19jYXJ0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNob3BwaW5nX2NhcnQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Nob3BwaW5nX2NhcnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNob3BwaW5nX2NhcnQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zaG9wcGluZ19jYXJ0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc2hvcHBpbmdfY2FydF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hvcC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zaG9wX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2hvcC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2hvcF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaG9wLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zaG9wX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaG9wLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2hvcDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Nob3BfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNpZ25fbGFuZ3VhZ2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc2lnbl9sYW5ndWFnZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNpZ25fbGFuZ3VhZ2UuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NpZ25fbGFuZ3VhZ2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2lnbl9sYW5ndWFnZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2lnbl9sYW5ndWFnZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2lnbl9sYW5ndWFnZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNpZ25fbGFuZ3VhZ2U6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zaWduX2xhbmd1YWdlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaW1fY2FyZC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zaW1fY2FyZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNpbV9jYXJkLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zaW1fY2FyZF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaW1fY2FyZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc2ltX2NhcmRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNpbV9jYXJkLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2ltX2NhcmQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zaW1fY2FyZF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2l6ZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zaXplX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2l6ZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc2l6ZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaXplLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zaXplX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zaXplLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc2l6ZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3NpemVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNsaWRvLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3NsaWRvX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2xpZG8uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NsaWRvX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNsaWRvLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zbGlkb19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc2xpZG8uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zbGlkbzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3NsaWRvX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zbWFydF93YXRjaC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zbWFydF93YXRjaF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNtYXJ0X3dhdGNoLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zbWFydF93YXRjaF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zbWFydF93YXRjaC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc21hcnRfd2F0Y2hfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNtYXJ0X3dhdGNoLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc21hcnRfd2F0Y2g6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zbWFydF93YXRjaF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc21zLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Ntc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNtcy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc21zX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNtcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc21zX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zbXMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zbXM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zbXNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNub3cuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc25vd19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNub3cuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Nub3dfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc25vdy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc25vd19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc25vdy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNub3c6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zbm93X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zb2NpYWxfZGlzdGFuY2luZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zb2NpYWxfZGlzdGFuY2luZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNvY2lhbF9kaXN0YW5jaW5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zb2NpYWxfZGlzdGFuY2luZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zb2NpYWxfZGlzdGFuY2luZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc29jaWFsX2Rpc3RhbmNpbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNvY2lhbF9kaXN0YW5jaW5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc29jaWFsX2Rpc3RhbmNpbmc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zb2NpYWxfZGlzdGFuY2luZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc29sYXJfcGFuZWwuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc29sYXJfcGFuZWxfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zb2xhcl9wYW5lbC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc29sYXJfcGFuZWxfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc29sYXJfcGFuZWwuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NvbGFyX3BhbmVsX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zb2xhcl9wYW5lbC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNvbGFyX3BhbmVsOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc29sYXJfcGFuZWxfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNvcnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc29ydF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNvcnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3NvcnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc29ydC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc29ydF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc29ydC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNvcnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zb3J0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zcGVlY2hfYnViYmxlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3NwZWVjaF9idWJibGVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zcGVlY2hfYnViYmxlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zcGVlY2hfYnViYmxlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNwZWVjaF9idWJibGUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NwZWVjaF9idWJibGVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXNwZWVjaF9idWJibGUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zcGVlY2hfYnViYmxlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc3BlZWNoX2J1YmJsZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3NsX2VuY3J5cHRpb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc3NsX2VuY3J5cHRpb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zc2xfZW5jcnlwdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc3NsX2VuY3J5cHRpb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3NsX2VuY3J5cHRpb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3NzbF9lbmNyeXB0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zc2xfZW5jcnlwdGlvbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXNzbF9lbmNyeXB0aW9uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc3NsX2VuY3J5cHRpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN0YWNrZWRfYmFyX2NoYXJ0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3N0YWNrZWRfYmFyX2NoYXJ0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3RhY2tlZF9iYXJfY2hhcnQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3N0YWNrZWRfYmFyX2NoYXJ0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN0YWNrZWRfYmFyX2NoYXJ0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zdGFja2VkX2Jhcl9jaGFydF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3RhY2tlZF9iYXJfY2hhcnQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zdGFja2VkX2Jhcl9jaGFydDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3N0YWNrZWRfYmFyX2NoYXJ0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdGFtcC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zdGFtcF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN0YW1wLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zdGFtcF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdGFtcC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc3RhbXBfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN0YW1wLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc3RhbXA6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zdGFtcF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3Rhcl9vZmYuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc3Rhcl9vZmZfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdGFyX29mZi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc3Rhcl9vZmZfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3Rhcl9vZmYuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3N0YXJfb2ZmX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdGFyX29mZi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXN0YXJfb2ZmOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc3Rhcl9vZmZfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN0YXJfb24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc3Rhcl9vbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN0YXJfb24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3N0YXJfb25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3Rhcl9vbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc3Rhcl9vbl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3Rhcl9vbi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXN0YXJfb246bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zdGFyX29uX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdGlsbF9vcGVuLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3N0aWxsX29wZW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdGlsbF9vcGVuLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zdGlsbF9vcGVuX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN0aWxsX29wZW4uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3N0aWxsX29wZW5fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN0aWxsX29wZW4uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zdGlsbF9vcGVuOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc3RpbGxfb3Blbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3RvcmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc3RvcmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdG9yZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc3RvcmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3RvcmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3N0b3JlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdG9yZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXN0b3JlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc3RvcmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN0cnVjdHVyZWRfZGF0YS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zdHJ1Y3R1cmVkX2RhdGFfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdHJ1Y3R1cmVkX2RhdGEuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3N0cnVjdHVyZWRfZGF0YV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdHJ1Y3R1cmVkX2RhdGEuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3N0cnVjdHVyZWRfZGF0YV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3RydWN0dXJlZF9kYXRhLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc3RydWN0dXJlZF9kYXRhOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svc3RydWN0dXJlZF9kYXRhX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdXBwbGllci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC9zdXBwbGllcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN1cHBsaWVyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zdXBwbGllcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdXBwbGllci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc3VwcGxpZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN1cHBsaWVyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tc3VwcGxpZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zdXBwbGllcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3VydmV5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3N1cnZleV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN1cnZleS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc3VydmV5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN1cnZleS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc3VydmV5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdXJ2ZXkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zdXJ2ZXk6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zdXJ2ZXlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN1cnZleV9zdXJ2ZWx5emVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3N1cnZleV9zdXJ2ZWx5emVyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3VydmV5X3N1cnZlbHl6ZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3N1cnZleV9zdXJ2ZWx5emVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN1cnZleV9zdXJ2ZWx5emVyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zdXJ2ZXlfc3VydmVseXplcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3VydmV5X3N1cnZlbHl6ZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zdXJ2ZXlfc3VydmVseXplcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3N1cnZleV9zdXJ2ZWx5emVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdXN0YWluYWJsZV9lbmVyZ3kuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvc3VzdGFpbmFibGVfZW5lcmd5X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3VzdGFpbmFibGVfZW5lcmd5LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi9zdXN0YWluYWJsZV9lbmVyZ3lfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3VzdGFpbmFibGVfZW5lcmd5LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zdXN0YWluYWJsZV9lbmVyZ3lfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN1c3RhaW5hYmxlX2VuZXJneS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXN1c3RhaW5hYmxlX2VuZXJneTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3N1c3RhaW5hYmxlX2VuZXJneV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3VzdGFpbmFibGVfZnVlbF9zdGF0aW9uLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3N1c3RhaW5hYmxlX2Z1ZWxfc3RhdGlvbl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN1c3RhaW5hYmxlX2Z1ZWxfc3RhdGlvbi5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vc3VzdGFpbmFibGVfZnVlbF9zdGF0aW9uX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN1c3RhaW5hYmxlX2Z1ZWxfc3RhdGlvbi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvc3VzdGFpbmFibGVfZnVlbF9zdGF0aW9uX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1zdXN0YWluYWJsZV9mdWVsX3N0YXRpb24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zdXN0YWluYWJsZV9mdWVsX3N0YXRpb246bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9zdXN0YWluYWJsZV9mdWVsX3N0YXRpb25fcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN3YXBfYXJyb3dzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3N3YXBfYXJyb3dzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3dhcF9hcnJvd3MuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3N3YXBfYXJyb3dzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXN3YXBfYXJyb3dzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9zd2FwX2Fycm93c19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tc3dhcF9hcnJvd3MuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1zd2FwX2Fycm93czpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3N3YXBfYXJyb3dzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10YWJsZXQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdGFibGV0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGFibGV0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90YWJsZXRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGFibGV0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS90YWJsZXRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRhYmxldC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXRhYmxldDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3RhYmxldF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGFwZV9tZWFzdXJlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RhcGVfbWVhc3VyZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRhcGVfbWVhc3VyZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdGFwZV9tZWFzdXJlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRhcGVfbWVhc3VyZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdGFwZV9tZWFzdXJlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10YXBlX21lYXN1cmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10YXBlX21lYXN1cmU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90YXBlX21lYXN1cmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRlY2hub2xvZ3kuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdGVjaG5vbG9neV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRlY2hub2xvZ3kuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3RlY2hub2xvZ3lfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGVjaG5vbG9neS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdGVjaG5vbG9neV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGVjaG5vbG9neS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXRlY2hub2xvZ3k6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90ZWNobm9sb2d5X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10ZW1wZXJhdHVyZV9jb250cm9sLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RlbXBlcmF0dXJlX2NvbnRyb2xfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10ZW1wZXJhdHVyZV9jb250cm9sLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90ZW1wZXJhdHVyZV9jb250cm9sX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRlbXBlcmF0dXJlX2NvbnRyb2wuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3RlbXBlcmF0dXJlX2NvbnRyb2xfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRlbXBlcmF0dXJlX2NvbnRyb2wuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10ZW1wZXJhdHVyZV9jb250cm9sOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdGVtcGVyYXR1cmVfY29udHJvbF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGVtcGVyYXR1cmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdGVtcGVyYXR1cmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10ZW1wZXJhdHVyZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdGVtcGVyYXR1cmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGVtcGVyYXR1cmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3RlbXBlcmF0dXJlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10ZW1wZXJhdHVyZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXRlbXBlcmF0dXJlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdGVtcGVyYXR1cmVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRoZXJtb25ldC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC90aGVybW9uZXRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aGVybW9uZXQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3RoZXJtb25ldF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aGVybW9uZXQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3RoZXJtb25ldF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGhlcm1vbmV0LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tdGhlcm1vbmV0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdGhlcm1vbmV0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aHVuZGVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RodW5kZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aHVuZGVyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90aHVuZGVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRodW5kZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3RodW5kZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRodW5kZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10aHVuZGVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdGh1bmRlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGlja2V0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RpY2tldF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRpY2tldC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdGlja2V0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRpY2tldC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdGlja2V0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aWNrZXQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10aWNrZXQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90aWNrZXRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRpa3Rvay5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC90aWt0b2tfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aWt0b2suZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Rpa3Rva19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aWt0b2suZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Rpa3Rva19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGlrdG9rLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tdGlrdG9rOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdGlrdG9rX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aW1lLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RpbWVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aW1lLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90aW1lX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRpbWUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3RpbWVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRpbWUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10aW1lOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdGltZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdGltZXRhYmxlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RpbWV0YWJsZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRpbWV0YWJsZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdGltZXRhYmxlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRpbWV0YWJsZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdGltZXRhYmxlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10aW1ldGFibGUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10aW1ldGFibGU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90aW1ldGFibGVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRvaWxldHMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdG9pbGV0c19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRvaWxldHMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3RvaWxldHNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdG9pbGV0cy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdG9pbGV0c19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdG9pbGV0cy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXRvaWxldHM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90b2lsZXRzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10b2lsZXRfdW5pc2V4LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RvaWxldF91bmlzZXhfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10b2lsZXRfdW5pc2V4LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90b2lsZXRfdW5pc2V4X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRvaWxldF91bmlzZXguZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3RvaWxldF91bmlzZXhfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRvaWxldF91bmlzZXguZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10b2lsZXRfdW5pc2V4Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdG9pbGV0X3VuaXNleF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdG9vbF9ib3guZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdG9vbF9ib3hfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10b29sX2JveC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdG9vbF9ib3hfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdG9vbF9ib3guZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Rvb2xfYm94X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10b29sX2JveC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXRvb2xfYm94Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdG9vbF9ib3hfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRvd24uZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdG93bl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRvd24uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Rvd25fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdG93bi5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdG93bl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdG93bi5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXRvd246bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90b3duX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10b3hpYy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC90b3hpY19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRveGljLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90b3hpY19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10b3hpYy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdG94aWNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRveGljLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tdG94aWM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90b3hpY19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJhaW5fcmFpbF9mcmVpZ2h0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RyYWluX3JhaWxfZnJlaWdodF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyYWluX3JhaWxfZnJlaWdodC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdHJhaW5fcmFpbF9mcmVpZ2h0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyYWluX3JhaWxfZnJlaWdodC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdHJhaW5fcmFpbF9mcmVpZ2h0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10cmFpbl9yYWlsX2ZyZWlnaHQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10cmFpbl9yYWlsX2ZyZWlnaHQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90cmFpbl9yYWlsX2ZyZWlnaHRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyYW5zZmVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RyYW5zZmVyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJhbnNmZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3RyYW5zZmVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyYW5zZmVyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS90cmFuc2Zlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJhbnNmZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10cmFuc2Zlcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3RyYW5zZmVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10cmFuc2dlbmRlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC90cmFuc2dlbmRlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyYW5zZ2VuZGVyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90cmFuc2dlbmRlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10cmFuc2dlbmRlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdHJhbnNnZW5kZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyYW5zZ2VuZGVyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tdHJhbnNnZW5kZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90cmFuc2dlbmRlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJhbnNwb3J0X3NvbHV0aW9ucy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC90cmFuc3BvcnRfc29sdXRpb25zX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJhbnNwb3J0X3NvbHV0aW9ucy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdHJhbnNwb3J0X3NvbHV0aW9uc19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10cmFuc3BvcnRfc29sdXRpb25zLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS90cmFuc3BvcnRfc29sdXRpb25zX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10cmFuc3BvcnRfc29sdXRpb25zLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tdHJhbnNwb3J0X3NvbHV0aW9uczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3RyYW5zcG9ydF9zb2x1dGlvbnNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyYXNoX2Jpbl9kZWxldGUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdHJhc2hfYmluX2RlbGV0ZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyYXNoX2Jpbl9kZWxldGUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3RyYXNoX2Jpbl9kZWxldGVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJhc2hfYmluX2RlbGV0ZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdHJhc2hfYmluX2RlbGV0ZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJhc2hfYmluX2RlbGV0ZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXRyYXNoX2Jpbl9kZWxldGU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90cmFzaF9iaW5fZGVsZXRlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10cmVlLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3RyZWVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10cmVlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90cmVlX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyZWUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3RyZWVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyZWUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10cmVlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdHJlZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJvcGh5LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Ryb3BoeV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyb3BoeS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdHJvcGh5X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyb3BoeS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdHJvcGh5X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10cm9waHkuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10cm9waHk6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90cm9waHlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyb3VzZXJzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Ryb3VzZXJzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJvdXNlcnMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Ryb3VzZXJzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRyb3VzZXJzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS90cm91c2Vyc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJvdXNlcnMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi10cm91c2Vyczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Ryb3VzZXJzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10cnVja19yb2FkX2ZyZWlnaHQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdHJ1Y2tfcm9hZF9mcmVpZ2h0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJ1Y2tfcm9hZF9mcmVpZ2h0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90cnVja19yb2FkX2ZyZWlnaHRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHJ1Y2tfcm9hZF9mcmVpZ2h0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS90cnVja19yb2FkX2ZyZWlnaHRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXRydWNrX3JvYWRfZnJlaWdodC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXRydWNrX3JvYWRfZnJlaWdodDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3RydWNrX3JvYWRfZnJlaWdodF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdC1zaGlydC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC90LXNoaXJ0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdC1zaGlydC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdC1zaGlydF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10LXNoaXJ0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS90LXNoaXJ0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10LXNoaXJ0LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tdC1zaGlydDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Qtc2hpcnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXR3aXR0ZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdHdpdHRlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXR3aXR0ZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3R3aXR0ZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHdpdHRlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdHdpdHRlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHdpdHRlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXR3aXR0ZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay90d2l0dGVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi10d29fZ2VhcnMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdHdvX2dlYXJzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHdvX2dlYXJzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi90d29fZ2VhcnNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdHdvX2dlYXJzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS90d29fZ2VhcnNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXR3b19nZWFycy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXR3b19nZWFyczpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3R3b19nZWFyc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdW5kb19hcnJvdy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC91bmRvX2Fycm93X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdW5kb19hcnJvdy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdW5kb19hcnJvd19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi11bmRvX2Fycm93LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS91bmRvX2Fycm93X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi11bmRvX2Fycm93LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tdW5kb19hcnJvdzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3VuZG9fYXJyb3dfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVuc3RydWN0dXJlZF9kYXRhLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Vuc3RydWN0dXJlZF9kYXRhX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdW5zdHJ1Y3R1cmVkX2RhdGEuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Vuc3RydWN0dXJlZF9kYXRhX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVuc3RydWN0dXJlZF9kYXRhLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS91bnN0cnVjdHVyZWRfZGF0YV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdW5zdHJ1Y3R1cmVkX2RhdGEuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi11bnN0cnVjdHVyZWRfZGF0YTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Vuc3RydWN0dXJlZF9kYXRhX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi11cGxvYWRfZmlsZS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC91cGxvYWRfZmlsZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVwbG9hZF9maWxlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi91cGxvYWRfZmlsZV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi11cGxvYWRfZmlsZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdXBsb2FkX2ZpbGVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVwbG9hZF9maWxlLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tdXBsb2FkX2ZpbGU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay91cGxvYWRfZmlsZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdXBsb2FkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3VwbG9hZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVwbG9hZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdXBsb2FkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVwbG9hZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdXBsb2FkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi11cGxvYWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi11cGxvYWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay91cGxvYWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVwc3RyZWFtLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Vwc3RyZWFtX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdXBzdHJlYW0uZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Vwc3RyZWFtX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVwc3RyZWFtLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS91cHN0cmVhbV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdXBzdHJlYW0uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi11cHN0cmVhbTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Vwc3RyZWFtX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi11c2Jfc3RpY2suZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdXNiX3N0aWNrX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdXNiX3N0aWNrLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi91c2Jfc3RpY2tfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdXNiX3N0aWNrLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS91c2Jfc3RpY2tfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVzYl9zdGljay5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXVzYl9zdGljazpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3VzYl9zdGlja19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdXNlcl9jaXJjbGUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdXNlcl9jaXJjbGVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi11c2VyX2NpcmNsZS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdXNlcl9jaXJjbGVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdXNlcl9jaXJjbGUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3VzZXJfY2lyY2xlX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi11c2VyX2NpcmNsZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXVzZXJfY2lyY2xlOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdXNlcl9jaXJjbGVfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVzZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdXNlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXVzZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3VzZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdXNlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdXNlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdXNlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXVzZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay91c2VyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12YWNjaW5lLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3ZhY2NpbmVfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12YWNjaW5lLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi92YWNjaW5lX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZhY2NpbmUuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3ZhY2NpbmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZhY2NpbmUuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi12YWNjaW5lOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdmFjY2luZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdmVyaWZpZWRfdHJhbnNwb3J0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3ZlcmlmaWVkX3RyYW5zcG9ydF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZlcmlmaWVkX3RyYW5zcG9ydC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdmVyaWZpZWRfdHJhbnNwb3J0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZlcmlmaWVkX3RyYW5zcG9ydC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdmVyaWZpZWRfdHJhbnNwb3J0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12ZXJpZmllZF90cmFuc3BvcnQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi12ZXJpZmllZF90cmFuc3BvcnQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay92ZXJpZmllZF90cmFuc3BvcnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZpc2liaWxpdHlfb2ZmLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Zpc2liaWxpdHlfb2ZmX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdmlzaWJpbGl0eV9vZmYuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3Zpc2liaWxpdHlfb2ZmX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZpc2liaWxpdHlfb2ZmLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS92aXNpYmlsaXR5X29mZl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdmlzaWJpbGl0eV9vZmYuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi12aXNpYmlsaXR5X29mZjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3Zpc2liaWxpdHlfb2ZmX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12aXNpYmlsaXR5X29uLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3Zpc2liaWxpdHlfb25fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12aXNpYmlsaXR5X29uLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi92aXNpYmlsaXR5X29uX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZpc2liaWxpdHlfb24uZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Zpc2liaWxpdHlfb25fcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZpc2liaWxpdHlfb24uZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi12aXNpYmlsaXR5X29uOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdmlzaWJpbGl0eV9vbl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdmlzdWFsX2ltcGFpcm1lbnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdmlzdWFsX2ltcGFpcm1lbnRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12aXN1YWxfaW1wYWlybWVudC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdmlzdWFsX2ltcGFpcm1lbnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdmlzdWFsX2ltcGFpcm1lbnQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3Zpc3VhbF9pbXBhaXJtZW50X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12aXN1YWxfaW1wYWlybWVudC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXZpc3VhbF9pbXBhaXJtZW50Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdmlzdWFsX2ltcGFpcm1lbnRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZvbHVtZV9oaWdoLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3ZvbHVtZV9oaWdoX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdm9sdW1lX2hpZ2guZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3ZvbHVtZV9oaWdoX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZvbHVtZV9oaWdoLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS92b2x1bWVfaGlnaF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdm9sdW1lX2hpZ2guZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi12b2x1bWVfaGlnaDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3ZvbHVtZV9oaWdoX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12b2x1bWVfbG93LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3ZvbHVtZV9sb3dfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12b2x1bWVfbG93LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi92b2x1bWVfbG93X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZvbHVtZV9sb3cuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3ZvbHVtZV9sb3dfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZvbHVtZV9sb3cuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi12b2x1bWVfbG93Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdm9sdW1lX2xvd19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdm9sdW1lX211dGVkLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3ZvbHVtZV9tdXRlZF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZvbHVtZV9tdXRlZC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdm9sdW1lX211dGVkX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZvbHVtZV9tdXRlZC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdm9sdW1lX211dGVkX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12b2x1bWVfbXV0ZWQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi12b2x1bWVfbXV0ZWQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay92b2x1bWVfbXV0ZWRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZyX2NvbnRyb2xsZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvdnJfY29udHJvbGxlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZyX2NvbnRyb2xsZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3ZyX2NvbnRyb2xsZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdnJfY29udHJvbGxlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvdnJfY29udHJvbGxlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdnJfY29udHJvbGxlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXZyX2NvbnRyb2xsZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay92cl9jb250cm9sbGVyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12cl9nbGFzc2VzLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3ZyX2dsYXNzZXNfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12cl9nbGFzc2VzLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi92cl9nbGFzc2VzX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZyX2dsYXNzZXMuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3ZyX2dsYXNzZXNfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXZyX2dsYXNzZXMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi12cl9nbGFzc2VzOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svdnJfZ2xhc3Nlc19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdnJfdXNlci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC92cl91c2VyX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24tdnJfdXNlci5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vdnJfdXNlcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12cl91c2VyLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS92cl91c2VyX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi12cl91c2VyLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tdnJfdXNlcjpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3ZyX3VzZXJfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdhbGtpbmcuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd2Fsa2luZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdhbGtpbmcuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3dhbGtpbmdfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2Fsa2luZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvd2Fsa2luZ19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2Fsa2luZy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdhbGtpbmc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay93YWxraW5nX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13YXJlaG91c2UuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd2FyZWhvdXNlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2FyZWhvdXNlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi93YXJlaG91c2VfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2FyZWhvdXNlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS93YXJlaG91c2VfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdhcmVob3VzZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdhcmVob3VzZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3dhcmVob3VzZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2FyZWhvdXNpbmdfc29sdXRpb25zLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3dhcmVob3VzaW5nX3NvbHV0aW9uc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdhcmVob3VzaW5nX3NvbHV0aW9ucy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vd2FyZWhvdXNpbmdfc29sdXRpb25zX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdhcmVob3VzaW5nX3NvbHV0aW9ucy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvd2FyZWhvdXNpbmdfc29sdXRpb25zX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13YXJlaG91c2luZ19zb2x1dGlvbnMuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi13YXJlaG91c2luZ19zb2x1dGlvbnM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay93YXJlaG91c2luZ19zb2x1dGlvbnNfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdhc2hfaGFuZHMuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd2FzaF9oYW5kc19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdhc2hfaGFuZHMuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3dhc2hfaGFuZHNfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2FzaF9oYW5kcy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvd2FzaF9oYW5kc19yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2FzaF9oYW5kcy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdhc2hfaGFuZHM6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay93YXNoX2hhbmRzX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13YXRlcmZhbGxfY2hhcnQuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd2F0ZXJmYWxsX2NoYXJ0X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2F0ZXJmYWxsX2NoYXJ0LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi93YXRlcmZhbGxfY2hhcnRfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2F0ZXJmYWxsX2NoYXJ0LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS93YXRlcmZhbGxfY2hhcnRfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdhdGVyZmFsbF9jaGFydC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdhdGVyZmFsbF9jaGFydDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3dhdGVyZmFsbF9jaGFydF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2Vhcl9tYXNrLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3dlYXJfbWFza19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdlYXJfbWFzay5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vd2Vhcl9tYXNrX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdlYXJfbWFzay5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvd2Vhcl9tYXNrX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13ZWFyX21hc2suZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi13ZWFyX21hc2s6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay93ZWFyX21hc2tfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdlYl9lcnJvci5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC93ZWJfZXJyb3JfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13ZWJfZXJyb3IuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3dlYl9lcnJvcl9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13ZWJfZXJyb3IuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3dlYl9lcnJvcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2ViX2Vycm9yLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24td2ViX2Vycm9yOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svd2ViX2Vycm9yX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13ZWJfc2VjdXJpdHkuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd2ViX3NlY3VyaXR5X3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2ViX3NlY3VyaXR5LmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi93ZWJfc2VjdXJpdHlfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2ViX3NlY3VyaXR5LmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS93ZWJfc2VjdXJpdHlfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdlYl9zZWN1cml0eS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdlYl9zZWN1cml0eTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3dlYl9zZWN1cml0eV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2VjaGF0LmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3dlY2hhdF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdlY2hhdC5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vd2VjaGF0X3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdlY2hhdC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvd2VjaGF0X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13ZWNoYXQuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi13ZWNoYXQ6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay93ZWNoYXRfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdlaWdodC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC93ZWlnaHRfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13ZWlnaHQuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3dlaWdodF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13ZWlnaHQuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3dlaWdodF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2VpZ2h0LmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24td2VpZ2h0Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svd2VpZ2h0X3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13aGF0c2FwcC5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC93aGF0c2FwcF9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdoYXRzYXBwLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi93aGF0c2FwcF9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13aGF0c2FwcC5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvd2hhdHNhcHBfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdoYXRzYXBwLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24td2hhdHNhcHA6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay93aGF0c2FwcF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2lmaS5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC93aWZpX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2lmaS5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vd2lmaV9yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13aWZpLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS93aWZpX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13aWZpLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24td2lmaTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3dpZmlfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdpbmRfb2Zmc2hvcmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd2luZF9vZmZzaG9yZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdpbmRfb2Zmc2hvcmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3dpbmRfb2Zmc2hvcmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2luZF9vZmZzaG9yZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvd2luZF9vZmZzaG9yZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2luZF9vZmZzaG9yZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdpbmRfb2Zmc2hvcmU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay93aW5kX29mZnNob3JlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13aW5kX29uc2hvcmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd2luZF9vbnNob3JlX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2luZF9vbnNob3JlLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi93aW5kX29uc2hvcmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2luZF9vbnNob3JlLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS93aW5kX29uc2hvcmVfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdpbmRfb25zaG9yZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdpbmRfb25zaG9yZTpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3dpbmRfb25zaG9yZV9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2luZG93cy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC93aW5kb3dzX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2luZG93cy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vd2luZG93c19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13aW5kb3dzLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS93aW5kb3dzX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13aW5kb3dzLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24td2luZG93czpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3dpbmRvd3NfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdpbmRfcG93ZXIuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd2luZF9wb3dlcl9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdpbmRfcG93ZXIuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3dpbmRfcG93ZXJfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2luZF9wb3dlci5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvd2luZF9wb3dlcl9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td2luZF9wb3dlci5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdpbmRfcG93ZXI6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay93aW5kX3Bvd2VyX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13aW5lX2FuZF9iZWVyLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3dpbmVfYW5kX2JlZXJfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13aW5lX2FuZF9iZWVyLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi93aW5lX2FuZF9iZWVyX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdpbmVfYW5kX2JlZXIuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3dpbmVfYW5kX2JlZXJfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdpbmVfYW5kX2JlZXIuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi13aW5lX2FuZF9iZWVyOm5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svd2luZV9hbmRfYmVlcl9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24td29ya2Zsb3cuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd29ya2Zsb3dfcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13b3JrZmxvdy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4vd29ya2Zsb3dfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td29ya2Zsb3cuZGhsLWljb24td2hpdGU6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3doaXRlL3dvcmtmbG93X3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13b3JrZmxvdy5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdvcmtmbG93Om5vdCguZGhsLWljb24tcmVkKTpub3QoLmRobC1pY29uLWdyZWVuKTpub3QoLmRobC1pY29uLXdoaXRlKTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvYmxhY2svd29ya2Zsb3dfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdvcmtzaG9wLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL3dvcmtzaG9wX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td29ya3Nob3AuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3dvcmtzaG9wX3JnYl9kYXJrX2dyZWVuLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdvcmtzaG9wLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS93b3Jrc2hvcF9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td29ya3Nob3AuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi13b3Jrc2hvcDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3dvcmtzaG9wX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi13cmVuY2guZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQvd3JlbmNoX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24td3JlbmNoLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi93cmVuY2hfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24td3JlbmNoLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS93cmVuY2hfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXdyZW5jaC5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXdyZW5jaDpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3dyZW5jaF9yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24teGluZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC94aW5nX3JnYl9yZWQuc3ZnKX0uZGhsLWljb24uZGhsLWljb24teGluZy5kaGwtaWNvbi1ncmVlbjpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvZ3JlZW4veGluZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi14aW5nLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS94aW5nX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi14aW5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24teGluZzpub3QoLmRobC1pY29uLXJlZCk6bm90KC5kaGwtaWNvbi1ncmVlbik6bm90KC5kaGwtaWNvbi13aGl0ZSk6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2JsYWNrL3hpbmdfcmdiX2JsYWNrLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXlvdXR1YmUuZGhsLWljb24tcmVkOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9yZWQveW91dHViZV9yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLXlvdXR1YmUuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL3lvdXR1YmVfcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24teW91dHViZS5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUveW91dHViZV9yZ2Jfd2hpdGUuc3ZnKX0uZGhsLWljb24uZGhsLWljb24teW91dHViZS5kaGwtaWNvbi1ibGFjazpiZWZvcmUsLmRobC1pY29uLmRobC1pY29uLXlvdXR1YmU6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay95b3V0dWJlX3JnYl9ibGFjay5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi0yX21hbl9oYW5kbGluZy5kaGwtaWNvbi1yZWQ6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL3JlZC8yX21hbl9oYW5kbGluZ19yZ2JfcmVkLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLTJfbWFuX2hhbmRsaW5nLmRobC1pY29uLWdyZWVuOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ncmVlbi8yX21hbl9oYW5kbGluZ19yZ2JfZGFya19ncmVlbi5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi0yX21hbl9oYW5kbGluZy5kaGwtaWNvbi13aGl0ZTpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvd2hpdGUvMl9tYW5faGFuZGxpbmdfcmdiX3doaXRlLnN2Zyl9LmRobC1pY29uLmRobC1pY29uLTJfbWFuX2hhbmRsaW5nLmRobC1pY29uLWJsYWNrOmJlZm9yZSwuZGhsLWljb24uZGhsLWljb24tMl9tYW5faGFuZGxpbmc6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay8yX21hbl9oYW5kbGluZ19yZ2JfYmxhY2suc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ29ncmVlbl9kYXJrLmRobC1pY29uLXJlZDpiZWZvcmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoL3B1YmxpYy9kaXN0L2ltYWdlcy9kaGxfaWNvbnMvcmVkL2dvZ3JlZW5fcmdiX3JlZC5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuX2RhcmsuZGhsLWljb24tZ3JlZW46YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKC9wdWJsaWMvZGlzdC9pbWFnZXMvZGhsX2ljb25zL2dyZWVuL2dvZ3JlZW5fcmdiX2RhcmtfZ3JlZW4uc3ZnKX0uZGhsLWljb24uZGhsLWljb24tZ29ncmVlbl9kYXJrLmRobC1pY29uLXdoaXRlOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy93aGl0ZS9nb2dyZWVuX3JnYl93aGl0ZS5zdmcpfS5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuX2RhcmsuZGhsLWljb24tYmxhY2s6YmVmb3JlLC5kaGwtaWNvbi5kaGwtaWNvbi1nb2dyZWVuX2Rhcms6bm90KC5kaGwtaWNvbi1yZWQpOm5vdCguZGhsLWljb24tZ3JlZW4pOm5vdCguZGhsLWljb24td2hpdGUpOmJlZm9yZXtiYWNrZ3JvdW5kLWltYWdlOnVybCgvcHVibGljL2Rpc3QvaW1hZ2VzL2RobF9pY29ucy9ibGFjay9nb2dyZWVuX3JnYl9ibGFjay5zdmcpfXNlY3Rpb24uZmFxIC5pb2JqZWN0X19oZWFkaW5nLHNlY3Rpb24uZmFxIGgze21hcmdpbi1ib3R0b206LjVlbX1zZWN0aW9uLmZhcSAuaW9iamVjdF9faGVhZGluZyBhOmFmdGVyLHNlY3Rpb24uZmFxIGgzIGE6YWZ0ZXJ7Y29udGVudDoiXGYxMDUiO2ZvbnQtZmFtaWx5OkZvbnQgQXdlc29tZVwgNyBGcmVlO2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tbGVmdDoxLjFjaH1zZWN0aW9uLmZhcSAuaW9iamVjdF9faGVhZGluZzpob3ZlcixzZWN0aW9uLmZhcSBoMzpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfXNlY3Rpb24uZmFxIHVsLmZhcXtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luLWJvdHRvbToycmVtO3BhZGRpbmc6MH1zZWN0aW9uLmZhcSB1bC5mYXEgbGkubGlzdC1pdGVtIGF7YmFja2dyb3VuZC1jb2xvcjojZjJmMmYyO2JvcmRlcjoxcHggc29saWQgI2U1ZTVlNTtib3JkZXItcmFkaXVzOi4yNXJlbTtjb2xvcjppbmhlcml0O2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbTouNWVtO3BhZGRpbmc6LjVlbSA0MHB4IC41ZW0gLjVlbTtwb3NpdGlvbjpyZWxhdGl2ZX1zZWN0aW9uLmZhcSB1bC5mYXEgbGkubGlzdC1pdGVtIGE6aG92ZXJ7Y29sb3I6I2Q0MDUxMX1zZWN0aW9uLmZhcSB1bC5mYXEgbGkubGlzdC1pdGVtIGE6YWZ0ZXJ7YWxpZ24taXRlbXM6Y2VudGVyO2JvdHRvbTowO2NvbG9yOiNkNDA1MTE7Y29udGVudDoiXGYxMDUiO2Rpc3BsYXk6ZmxleDtmb250LWZhbWlseTpGb250IEF3ZXNvbWVcIDcgRnJlZTtmb250LXdlaWdodDo3MDA7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3dpZHRoOjMwcHh9c2VjdGlvbi5mYXEgdWwuZmFxIGxpLmxpc3QtaXRlbSAuaW9iamVjdF9faGVhZGluZyxzZWN0aW9uLmZhcSB1bC5mYXEgbGkubGlzdC1pdGVtIGgzLHNlY3Rpb24uZmFxIHVsLmZhcSBsaS5saXN0LWl0ZW0gaDR7Zm9udC1zaXplOjFyZW07Zm9udC1zaXplOjEuMjVyZW07bWFyZ2luOjA7cGFkZGluZzowfS5lbWJlZC1yZXNwb25zaXZle3Bvc2l0aW9uOnJlbGF0aXZlfS5lbWJlZC1yZXNwb25zaXZlIC5lbWJlZC1hY3RpdmF0b3J7ZGlzcGxheTpub25lfS5lbWJlZC1yZXNwb25zaXZlIGlmcmFtZVtkYXRhLXNyY106bm90KGlmcmFtZVtzcmNdKSsuZW1iZWQtYWN0aXZhdG9ye2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO2JvdHRvbTowO2NvbG9yOiNmZmY7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xlZnQ6MDtwYWRkaW5nOi41cmVtIDFyZW07cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0uY29udGVudC10YWJze21hcmdpbjo2MHB4IDB9LmNvbnRlbnQtdGFiczpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uY29udGVudC10YWJzPnVsLm5hdntkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7bWFyZ2luOi0xNXB4IC0xNXB4IDMwcHh9LmNvbnRlbnQtdGFicz51bC5uYXY+bGkubmF2LWl0ZW17ZmxleC1ncm93OjEwMDtwYWRkaW5nOjE1cHggMTVweCAwfS5jb250ZW50LXRhYnM+dWwubmF2PmxpLm5hdi1pdGVtOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjB9LmNvbnRlbnQtdGFicz51bC5uYXY+bGkubmF2LWl0ZW0gYnV0dG9uLm5hdi1saW5re3RyYW5zaXRpb246LjVzO3dpZHRoOjEwMCV9LmNvbnRlbnQtdGFicz51bC5uYXY+bGkubmF2LWl0ZW0gYnV0dG9uLm5hdi1saW5rOm5vdCguYWN0aXZlKXtiYWNrZ3JvdW5kLWNvbG9yOiM2NjY7Y29sb3I6I2ZmZn0uY29udGVudC10YWJzPnVsLm5hdj5saS5uYXYtaXRlbSBidXR0b24ubmF2LWxpbmsuYWN0aXZle3RyYW5zaXRpb246LjFzfS5jb250ZW50LXRhYnM+dWwubmF2PmxpLm5hdi1pdGVtIGJ1dHRvbi5uYXYtbGluazpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTE7dHJhbnNpdGlvbjouMXN9QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5jb250ZW50LXRhYnM+dWwubmF2e21hcmdpbi1sZWZ0Oi03LjVweDttYXJnaW4tcmlnaHQ6LTcuNXB4fS5jb250ZW50LXRhYnM+dWwubmF2PmxpLm5hdi1pdGVte3BhZGRpbmc6MTVweCA3LjVweCAwfX0uY29udGVudC10YWJzIC50YWItY29udGVudCAudGFiLXBhbmUgOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBhLmFwcHN0b3JlLWxpbmssYS5hcHBzdG9yZS1saW5re2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjttYXJnaW46MjRweCBhdXRvO21heC13aWR0aDozMDBweH0uY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYS5hcHBzdG9yZS1saW5rIGltZy5hcHBzdG9yZS1iYWRnZSwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIgYS5hcHBzdG9yZS1saW5rIGltZy5hcHBzdG9yZS1pY29uLGEuYXBwc3RvcmUtbGluayBpbWcuYXBwc3RvcmUtYmFkZ2UsYS5hcHBzdG9yZS1saW5rIGltZy5hcHBzdG9yZS1pY29ue2hlaWdodDo2MHB4O3dpZHRoOmF1dG99QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5jYXJkLS1wcmljaW5nIC5jYXJkLWZvb3RlciBhLmFwcHN0b3JlLWxpbmssYS5hcHBzdG9yZS1saW5re2Rpc3BsYXk6bm9uZX19YXJ0aWNsZSAuYXJ0aWNsZS1ib2R5IC5hcHBzdG9yZS1iYWRnZSxhcnRpY2xlIC5wYWdlLWJvZHkgLmFwcHN0b3JlLWJhZGdle21heC13aWR0aDoyNDBweDt3aWR0aDoxMDAlfS5zZWN0aW9uLS1iYW5uZXJze3BhZGRpbmctdG9wOjE1cHh9LnNlY3Rpb24tLWJhbm5lcnMgLmJhbm5lcntiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7ZGlzcGxheTpibG9jazttYXJnaW46MTVweCAwO3Bvc2l0aW9uOnJlbGF0aXZlfS5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXJfX3RleHR7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6I2ZjMDtjb2xvcjojMDAwO2Rpc3BsYXk6ZmxleDtmb250LXdlaWdodDo5MDA7aGVpZ2h0OjEwMCU7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7bGluZS1oZWlnaHQ6MS4yNTtwYWRkaW5nOjFlbTt3aWR0aDoxMDAlfS5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXJfX2ltYWdle2dyaWQtY29sdW1uOjEvMjtncmlkLXJvdzoxLzJ9LnNlY3Rpb24tLWJhbm5lcnMgLmJhbm5lciAuYmFubmVyX19pbWFnZSsuYmFubmVyX190ZXh0e2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjA0LDAsLjcpO2JvdHRvbTouNWVtO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OmF1dG87bGVmdDowO21heC1oZWlnaHQ6MTAwJTttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOi41ZW0gMWVtO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOmF1dG99LnNlY3Rpb24tLWJhbm5lcnMgLmJhbm5lcjpob3Zlcntib3gtc2hhZG93OjAgLjVyZW0gMXJlbSByZ2JhKDAsMCwwLC4xNSk7Y29sb3I6IzAwMDt0ZXh0LWRlY29yYXRpb246bm9uZX0uc2VjdGlvbi0tYmFubmVycyAuYmFubmVyLS1oYWxme2FzcGVjdC1yYXRpbzo0LzF9QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXItLWhhbGYgLmJhbm5lcl9fdGV4dDpmaXJzdC1jaGlsZHtmb250LXNpemU6MThweH19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjcuOThweCkgYW5kIChtaW4td2lkdGg6MzIwcHgpey5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXItLWhhbGYgLmJhbm5lcl9fdGV4dDpmaXJzdC1jaGlsZHtmb250LXNpemU6NS42MjV2d319QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjcuOThweCkgYW5kIChtaW4td2lkdGg6NzY4cHgpey5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXItLWhhbGYgLmJhbm5lcl9fdGV4dDpmaXJzdC1jaGlsZHtmb250LXNpemU6NDMuMnB4fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LnNlY3Rpb24tLWJhbm5lcnMgLmJhbm5lci0taGFsZiAuYmFubmVyX190ZXh0OmZpcnN0LWNoaWxke2ZvbnQtc2l6ZToyMHB4fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjc2OHB4KSBhbmQgKG1pbi13aWR0aDo3NjhweCl7LnNlY3Rpb24tLWJhbm5lcnMgLmJhbm5lci0taGFsZiAuYmFubmVyX190ZXh0OmZpcnN0LWNoaWxke2ZvbnQtc2l6ZTpjYWxjKC41NTY5NnB4ICsgMi41MzE2NXZ3KX19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo3NjhweCkgYW5kIChtaW4td2lkdGg6MTQwMHB4KXsuc2VjdGlvbi0tYmFubmVycyAuYmFubmVyLS1oYWxmIC5iYW5uZXJfX3RleHQ6Zmlyc3QtY2hpbGR7Zm9udC1zaXplOjM2cHh9fUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsuc2VjdGlvbi0tYmFubmVycyAuYmFubmVyLS1oYWxmIC5iYW5uZXJfX2ltYWdlKy5iYW5uZXJfX3RleHR7Zm9udC1zaXplOjE2cHh9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzY3Ljk4cHgpIGFuZCAobWluLXdpZHRoOjMyMHB4KXsuc2VjdGlvbi0tYmFubmVycyAuYmFubmVyLS1oYWxmIC5iYW5uZXJfX2ltYWdlKy5iYW5uZXJfX3RleHR7Zm9udC1zaXplOmNhbGMoNy40Mjg1N3B4ICsgMi42Nzg1N3Z3KX19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjcuOThweCkgYW5kIChtaW4td2lkdGg6NzY4cHgpey5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXItLWhhbGYgLmJhbm5lcl9faW1hZ2UrLmJhbm5lcl9fdGV4dHtmb250LXNpemU6MjhweH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXItLWhhbGYgLmJhbm5lcl9faW1hZ2UrLmJhbm5lcl9fdGV4dHtmb250LXNpemU6MTZweH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo3NjhweCkgYW5kIChtaW4td2lkdGg6NzY4cHgpey5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXItLWhhbGYgLmJhbm5lcl9faW1hZ2UrLmJhbm5lcl9fdGV4dHtmb250LXNpemU6Y2FsYygxLjQxNzcycHggKyAxLjg5ODczdncpfX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjc2OHB4KSBhbmQgKG1pbi13aWR0aDoxNDAwcHgpey5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXItLWhhbGYgLmJhbm5lcl9faW1hZ2UrLmJhbm5lcl9fdGV4dHtmb250LXNpemU6MjhweH19LnNlY3Rpb24tLWJhbm5lcnMgLmJhbm5lci0tZnVsbHthc3BlY3QtcmF0aW86MTYvNH0uc2VjdGlvbi0tYmFubmVycyAuYmFubmVyLS1mdWxsIC5iYW5uZXJfX3RleHQ6Zmlyc3QtY2hpbGR7Zm9udC1zaXplOjE4cHh9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDozMjBweCl7LnNlY3Rpb24tLWJhbm5lcnMgLmJhbm5lci0tZnVsbCAuYmFubmVyX190ZXh0OmZpcnN0LWNoaWxke2ZvbnQtc2l6ZTpjYWxjKC4xMDM3cHggKyA1LjU5MjU5dncpfX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE0MDBweCl7LnNlY3Rpb24tLWJhbm5lcnMgLmJhbm5lci0tZnVsbCAuYmFubmVyX190ZXh0OmZpcnN0LWNoaWxke2ZvbnQtc2l6ZTo3OC40cHh9fS5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXItLWZ1bGwgLmJhbm5lcl9faW1hZ2UrLmJhbm5lcl9fdGV4dHtmb250LXNpemU6MTZweH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjMyMHB4KXsuc2VjdGlvbi0tYmFubmVycyAuYmFubmVyLS1mdWxsIC5iYW5uZXJfX2ltYWdlKy5iYW5uZXJfX3RleHR7Zm9udC1zaXplOmNhbGMoNi41MTg1MnB4ICsgMi45NjI5NnZ3KX19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNDAwcHgpey5zZWN0aW9uLS1iYW5uZXJzIC5iYW5uZXItLWZ1bGwgLmJhbm5lcl9faW1hZ2UrLmJhbm5lcl9fdGV4dHtmb250LXNpemU6NDhweH19LmNsZWFyZml4OmFmdGVye2NsZWFyOmJvdGg7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrfWJvZHkubG9hZGluZyAqe2N1cnNvcjp3YWl0IWltcG9ydGFudH1odG1sIC5qcy1vbmx5e2Rpc3BsYXk6bm9uZX1odG1sLmpzIC5qcy1vbmx5e2Rpc3BsYXk6bm9ybWFsfWh0bWwuanMgLm5vanMtb25seXtkaXNwbGF5Om5vbmV9LmZpbGVpY29uOmJlZm9yZXstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkO2NvbnRlbnQ6IlxmMTViIjtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTpGb250IEF3ZXNvbWVcIDcgRnJlZTtmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0OjkwMDt0ZXh0LXJlbmRlcmluZzphdXRvfS5maWxlaWNvbi1kb2M6YmVmb3JlLC5maWxlaWNvbi1kb2N4OmJlZm9yZXtjb250ZW50OiJcZjFjMiI7Zm9udC13ZWlnaHQ6OTAwfS5maWxlaWNvbi1kb2MuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1kb2N4LmZpbGVpY29uLWNvbG9yOmJlZm9yZXtjb2xvcjojNDY4MmI0fS5maWxlaWNvbi1wcHQsLmZpbGVpY29uLXBwdHh7Y29udGVudDoiXGYxYzQiO2ZvbnQtd2VpZ2h0OjkwMH0uZmlsZWljb24tcHB0LmZpbGVpY29uLWNvbG9yOmJlZm9yZSwuZmlsZWljb24tcHB0eC5maWxlaWNvbi1jb2xvcjpiZWZvcmV7Y29sb3I6I2ZmNDUwMH0uZmlsZWljb24teGxzOmJlZm9yZSwuZmlsZWljb24teGxzeDpiZWZvcmV7Y29udGVudDoiXGYxYzMiO2ZvbnQtd2VpZ2h0OjkwMH0uZmlsZWljb24teGxzLmZpbGVpY29uLWNvbG9yOmJlZm9yZSwuZmlsZWljb24teGxzeC5maWxlaWNvbi1jb2xvcjpiZWZvcmV7Y29sb3I6IzIyOGIyMn0uZmlsZWljb24tcGRmOmJlZm9yZXtjb250ZW50OiJcZjFjMSI7Zm9udC13ZWlnaHQ6OTAwfS5maWxlaWNvbi1wZGYuZmlsZWljb24tY29sb3I6YmVmb3Jle2NvbG9yOnJlZH0uZmlsZWljb24tY3NzOmJlZm9yZSwuZmlsZWljb24taHRtOmJlZm9yZSwuZmlsZWljb24taHRtbDpiZWZvcmUsLmZpbGVpY29uLWpzOmJlZm9yZSwuZmlsZWljb24tbGVzczpiZWZvcmUsLmZpbGVpY29uLXBocDpiZWZvcmUsLmZpbGVpY29uLXNjc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMWMzIjtmb250LXdlaWdodDo5MDB9LmZpbGVpY29uLWNzcy5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLWh0bS5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLWh0bWwuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1qcy5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLWxlc3MuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1waHAuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1zY3NzLmZpbGVpY29uLWNvbG9yOmJlZm9yZXtjb2xvcjojZmY4YzAwfS5maWxlaWNvbi1ibXA6YmVmb3JlLC5maWxlaWNvbi1naWY6YmVmb3JlLC5maWxlaWNvbi1qcGVnOmJlZm9yZSwuZmlsZWljb24tanBnOmJlZm9yZSwuZmlsZWljb24tcG5nOmJlZm9yZSwuZmlsZWljb24tcHNkOmJlZm9yZSwuZmlsZWljb24tc3ZnOmJlZm9yZSwuZmlsZWljb24tdGlmOmJlZm9yZSwuZmlsZWljb24tdGlmZjpiZWZvcmUsLmZpbGVpY29uLXdlYnA6YmVmb3Jle2NvbnRlbnQ6IlxmMWM1Ijtmb250LXdlaWdodDo5MDB9LmZpbGVpY29uLWJtcC5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLWdpZi5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLWpwZWcuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1qcGcuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1wbmcuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1wc2QuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1zdmcuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi10aWYuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi10aWZmLmZpbGVpY29uLWNvbG9yOmJlZm9yZSwuZmlsZWljb24td2VicC5maWxlaWNvbi1jb2xvcjpiZWZvcmV7Y29sb3I6IzQ4M2Q4Yn0uZmlsZWljb24tYXZpOmJlZm9yZSwuZmlsZWljb24tZmx2OmJlZm9yZSwuZmlsZWljb24tbW92OmJlZm9yZSwuZmlsZWljb24tbXA0OmJlZm9yZSwuZmlsZWljb24tbXBlZzpiZWZvcmUsLmZpbGVpY29uLW1wZzpiZWZvcmUsLmZpbGVpY29uLXdlYm06YmVmb3Jle2NvbnRlbnQ6IlxmMWM4Ijtmb250LXdlaWdodDo5MDB9LmZpbGVpY29uLWF2aS5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLWZsdi5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLW1vdi5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLW1wNC5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLW1wZWcuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1tcGcuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi13ZWJtLmZpbGVpY29uLWNvbG9yOmJlZm9yZXtjb2xvcjojOGIwMDhifS5maWxlaWNvbi1hYWM6YmVmb3JlLC5maWxlaWNvbi1haWZmOmJlZm9yZSwuZmlsZWljb24tZmxhYzpiZWZvcmUsLmZpbGVpY29uLW1wMzpiZWZvcmUsLmZpbGVpY29uLW9nZzpiZWZvcmUsLmZpbGVpY29uLXdhdjpiZWZvcmV7Y29udGVudDoiXGYxYzciO2ZvbnQtd2VpZ2h0OjkwMH0uZmlsZWljb24tYWFjLmZpbGVpY29uLWNvbG9yOmJlZm9yZSwuZmlsZWljb24tYWlmZi5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLWZsYWMuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1tcDMuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1vZ2cuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi13YXYuZmlsZWljb24tY29sb3I6YmVmb3Jle2NvbG9yOm5hdnl9LmZpbGVpY29uLTd6aXA6YmVmb3JlLC5maWxlaWNvbi1haWZmOmJlZm9yZSwuZmlsZWljb24tZmxhYzpiZWZvcmUsLmZpbGVpY29uLXJhcjpiZWZvcmUsLmZpbGVpY29uLXRnejpiZWZvcmUsLmZpbGVpY29uLXppcDpiZWZvcmV7Y29udGVudDoiXGYxYzYiO2ZvbnQtd2VpZ2h0OjkwMH0uZmlsZWljb24tN3ppcC5maWxlaWNvbi1jb2xvcjpiZWZvcmUsLmZpbGVpY29uLWFpZmYuZmlsZWljb24tY29sb3I6YmVmb3JlLC5maWxlaWNvbi1mbGFjLmZpbGVpY29uLWNvbG9yOmJlZm9yZSwuZmlsZWljb24tcmFyLmZpbGVpY29uLWNvbG9yOmJlZm9yZSwuZmlsZWljb24tdGd6LmZpbGVpY29uLWNvbG9yOmJlZm9yZSwuZmlsZWljb24temlwLmZpbGVpY29uLWNvbG9yOmJlZm9yZXtjb2xvcjojMWU5MGZmfW1hcmt7cGFkZGluZzowfUBtZWRpYSBwcmludHsjaGVhZGVyX19tZW51LXRvZ2dsZSwuY2FyZC0tcHJpY2luZyAuY2FyZC1mb290ZXIsLmVtYmVkLXJlc3BvbnNpdmUsLmhlYWRlcl9fbmF2cy1jb250YWluZXIsLnNlY3Rpb24tLXNsaWRlcntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5ib2R5LmdyaWQtbGF5b3V0LC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdi5ib2R5LGFydGljbGUuZ3JpZC1sYXlvdXR7ZGlzcGxheTpibG9ja30uaW5zdHJ1Y3Rpb25zLC5pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbSwuc2VjdGlvbi0taW5zdHJ1Y3Rpb25zLC5zZWN0aW9uLS1pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9uc19faXRlbXstbW96LWNvbHVtbi1icmVhay1pbnNpZGU6YXZvaWQ7YnJlYWstaW5zaWRlOmF2b2lkO2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50O3BhZ2UtYnJlYWstaW5zaWRlOmF2b2lkO3Bvc2l0aW9uOnJlbGF0aXZlfS5pb2JqZWN0X19oZWFkaW5nLGgyLGgzLGg0LGg1ey1tb3otY29sdW1uLWJyZWFrLWFmdGVyOmF2b2lkO2JyZWFrLWFmdGVyOmF2b2lkO3BhZ2UtYnJlYWstYWZ0ZXI6YXZvaWR9fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdntiYWNrZ3JvdW5kLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC45Nyk7Ym90dG9tOjA7Ym94LXNoYWRvdzowIDAgMTZweCAwIHJnYmEoMCwwLDAsLjI1KTtjb2xvcjpyZ2JhKDAsMCwwLC45KTtkaXNwbGF5OmJsb2NrO2hlaWdodDphdXRvO2xlZnQ6MDtwYWRkaW5nOjE1cHggMDtwb3NpdGlvbjpmaXhlZDt3aWR0aDoxMDAlO3otaW5kZXg6MTAzMH1Ac3VwcG9ydHMgKGJhY2tkcm9wLWZpbHRlcjpibHVyKDEwcHgpKXsuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXZ7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTBweCk7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuOSl9fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdiAuYnRuLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdiAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdiBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXYgYm9keT4jb3Qtc2RrLWJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdiBidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuY29va2llX2NvbnNlbnRfYmFubmVyX2NvbnRhaW5lcj5kaXYgYnV0dG9uLm1rdG9CdXR0b257bWluLXdpZHRoOjEyMHB4fS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyPmRpdiAucmVqZWN0aW9uLWxpbmt7Zm9udC1zaXplOi44NzVyZW07bWFyZ2luLWJvdHRvbTowfS5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVyOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO2JvdHRvbTowO2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246Zml4ZWQ7cmlnaHQ6MDt0b3A6MDt6LWluZGV4OjEwMjB9QG1lZGlhIHByaW50ey5jb29raWVfY29uc2VudF9iYW5uZXJfY29udGFpbmVye2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fSNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVyIC5idG4sI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLmJ1dHRvbi1jb250YWluZXIgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAuYnV0dG9uLWNvbnRhaW5lciBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAuYnV0dG9uLWNvbnRhaW5lciBib2R5PiNvdC1zZGstYnRuLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLmJ1dHRvbi1jb250YWluZXIgYnV0dG9uLm1rdG9CdXR0b24sYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLmJ1dHRvbi1jb250YWluZXIgYnV0dG9uLm1rdG9CdXR0b257d2hpdGUtc3BhY2U6bm9ybWFsfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KSBhbmQgKG1heC13aWR0aDo3NjcuOThweCl7I2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLmJ1dHRvbi1jb250YWluZXIgLmJ0biwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAuYnV0dG9uLWNvbnRhaW5lciAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLCNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVyIGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLCNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVyIGJvZHk+I290LXNkay1idG4sLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAuYnV0dG9uLWNvbnRhaW5lciBidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAuYnV0dG9uLWNvbnRhaW5lciBidXR0b24ubWt0b0J1dHRvbnttYXJnaW4tYm90dG9tOjcuNXB4IWltcG9ydGFudH19QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpeyNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVye2FsaWduLWl0ZW1zOnN0cmV0Y2g7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0jZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAuYnV0dG9uLWNvbnRhaW5lciAuYnRuLCNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLmJ1dHRvbi1jb250YWluZXIgYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b24sI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLmJ1dHRvbi1jb250YWluZXIgYm9keT4jb3Qtc2RrLWJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVyIGJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVyIGJ1dHRvbi5ta3RvQnV0dG9ue21hcmdpbi1ib3R0b206Ny41cHh9I2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLmJ1dHRvbi1jb250YWluZXIgLmJ0bjpsYXN0LWNoaWxkLCNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVyIC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgYnV0dG9uLm1rdG9CdXR0b246bGFzdC1jaGlsZCwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAuYnV0dG9uLWNvbnRhaW5lciBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbjpsYXN0LWNoaWxkLCNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVyIGJvZHk+I290LXNkay1idG46bGFzdC1jaGlsZCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5idXR0b24tY29udGFpbmVyIGJ1dHRvbi5ta3RvQnV0dG9uOmxhc3QtY2hpbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAgI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgLmJ1dHRvbi1jb250YWluZXIgYnV0dG9uLm1rdG9CdXR0b246bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9fSNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGZpZWxkc2V0Omxhc3QtY2hpbGQsI2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgZm9ybXttYXJnaW4tYm90dG9tOjB9I2Zvcm1fY29va2llX2NvbnNlbnRzX2VkaXQgbGFiZWx7Zm9udC1zaXplOjEuMTI1ZW07Zm9udC13ZWlnaHQ6NzAwfSNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojMjhhNzQ1O2JvcmRlci1jb2xvcjojMjhhNzQ1fSNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSwjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlLCNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGRpdi5mb3JtLWNoZWNrLmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAjZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCBkaXYuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94Lm1rdG9DaGVja2JveExpc3QgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwICNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IGRpdi5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3gubWt0b0NoZWNrYm94TGlzdCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSg0MCwxNjcsNjksLjUpO2JvcmRlci1jb2xvcjojMjhhNzQ1fSNmb3JtX2Nvb2tpZV9jb25zZW50c19lZGl0IC5jdXN0b20tY29udHJvbC1pbnB1dDpmb2N1c34uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JveC1zaGFkb3c6MCAwIDAgMy4ycHggcmdiYSg0MCwxNjcsNjksLjI1KX0jZm9ybV9jb29raWVfY29uc2VudHNfZWRpdCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Zm9jdXM6bm90KDpjaGVja2VkKX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2JvcmRlci1jb2xvcjojYjJiMmIyfSNjb29raWVfY29uc2VudF9tb2RhbF9pZCAubW9kYWwtZGlhbG9ne21heC13aWR0aDoxMDAwcHh9aWZyYW1lI3N1cHBvcnRCb3gtaWZyYW1le3otaW5kZXg6MTAxOCFpbXBvcnRhbnR9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2e2Rpc3BsYXk6Z3JpZCFpbXBvcnRhbnR9LmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2IC5jb250YWluZXItZmx1aWQsLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2IC5jb250YWluZXItbGcsLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2IC5jb250YWluZXItbWQsLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2IC5jb250YWluZXItc20sLmNvb2tpZV9jb25zZW50X2Jhbm5lcl9jb250YWluZXI+ZGl2IC5jb250YWluZXIteGx7cGFkZGluZzowfWJvZHk+I290LXNkay1idG57Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7Ym90dG9tOjA7cG9zaXRpb246Zml4ZWQ7cmlnaHQ6NjBweDt3aWR0aDphdXRvfS5mb290ZXIgI290LXNkay1idG57YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7Ym9yZGVyOm5vbmUhaW1wb3J0YW50O2NvbG9yOmluaGVyaXQhaW1wb3J0YW50O2Rpc3BsYXk6aW5saW5lIWltcG9ydGFudDtmb250LXNpemU6aW5oZXJpdCFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6MTAwIWltcG9ydGFudDtsaW5lLWhlaWdodDppbmhlcml0IWltcG9ydGFudDttYXJnaW46MDtwYWRkaW5nOjB9LmZvb3RlciAjb3Qtc2RrLWJ0bjpob3Zlcntjb2xvcjojZDQwNTExIWltcG9ydGFudDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lIWltcG9ydGFudH0uZWRpdGFibGV7cG9zaXRpb246cmVsYXRpdmV9LmVkaXRhYmxlIC5lZGl0YWJsZS1lZGl0LWxpbmt7YmFja2dyb3VuZC1jb2xvcjojZjkxMzIwO2JveC1zaGFkb3c6MXB4IDFweCAycHggcmdiYSgwLDAsMCwuNik7Y29sb3I6I2ZmZjtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxcmVtO2xlZnQ6MDtsaW5lLWhlaWdodDoxO29wYWNpdHk6LjkyO3BhZGRpbmc6LjJyZW0gLjVyZW07cG9zaXRpb246YWJzb2x1dGU7dG9wOi0xLjRyZW07ei1pbmRleDoxMH0uZWRpdGFibGUgLmVkaXRhYmxlLWVkaXQtbGluazpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNkNDA1MTE7Y29sb3I6I2ZmZjt0ZXh0LWRlY29yYXRpb246bm9uZX0uZWRpdGFibGUgLmVkaXRhYmxlLWVkaXQtbGluayAuZWRpdGFibGUtZWRpdC1saW5rLXRleHR7ZGlzcGxheTpub25lfS5lZGl0YWJsZTpob3ZlcjpiZWZvcmV7Ym9yZGVyOjJweCBkYXNoZWQgI2Y5MTMyMDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjEwMCV9LmVkaXRhYmxlOmhvdmVyIC5lZGl0YWJsZS1lZGl0LWxpbmsgLmVkaXRhYmxlLWVkaXQtbGluay10ZXh0e2Rpc3BsYXk6aW5saW5lfS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3Jte2NvbG9yOmluaGVyaXQhaW1wb3J0YW50O2ZvbnQtZmFtaWx5OmluaGVyaXQhaW1wb3J0YW50O2ZvbnQtc2l6ZTppbmhlcml0IWltcG9ydGFudDt3aWR0aDoxMDAlIWltcG9ydGFudH0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9Gb3JtUm93Om50aC1jaGlsZChvZGQpIC5ta3RvRm9ybUNvbC5ta3RvRmllbGREZXNjcmlwdG9yLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9Gb3JtUm93Om50aC1jaGlsZChvZGQpIC5ta3RvRm9ybUNvbC5ta3RvRmllbGREZXNjcmlwdG9ye2JhY2tncm91bmQtY29sb3I6I2YyZjJmMn0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9Gb3JtQ29sLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9Gb3JtQ29se21hcmdpbjowIWltcG9ydGFudDtwYWRkaW5nOjEwcHh9Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvR3V0dGVyLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b09mZnNldCwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLnhta3RvQ2xlYXIsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0d1dHRlcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvT2Zmc2V0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLnhta3RvQ2xlYXJ7ZGlzcGxheTpub25lfS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvcixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9ye3dpZHRoOjEwMCV9Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXB7ZmxvYXQ6bm9uZX0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgaW5wdXQubWt0b0ZpZWxkOmlzKFt0eXBlPXRleHRdLFt0eXBlPXVybF0sW3R5cGU9ZW1haWxdLFt0eXBlPXRlbF0sW3R5cGU9bnVtYmVyXSxbdHlwZT1kYXRlXSxbdHlwZT1wYXNzd29yZF0pLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCB0ZXh0YXJlYS5ta3RvRmllbGQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBpbnB1dC5ta3RvRmllbGQ6aXMoW3R5cGU9dGV4dF0sW3R5cGU9dXJsXSxbdHlwZT1lbWFpbF0sW3R5cGU9dGVsXSxbdHlwZT1udW1iZXJdLFt0eXBlPWRhdGVdLFt0eXBlPXBhc3N3b3JkXSksYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCBzZWxlY3QubWt0b0ZpZWxkLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgdGV4dGFyZWEubWt0b0ZpZWxke2Zsb2F0Om5vbmUhaW1wb3J0YW50O21hcmdpbi1sZWZ0OjIwcHghaW1wb3J0YW50O21hcmdpbi1yaWdodDoyMHB4IWltcG9ydGFudDt3aWR0aDphdXRvIWltcG9ydGFudH0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9IdG1sVGV4dCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvSHRtbFRleHR7d2lkdGg6YXV0byFpbXBvcnRhbnR9Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0LGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9GaWVsZERlc2NyaXB0b3IgLm1rdG9GaWVsZFdyYXAgLm1rdG9DaGVja2JveExpc3R7ZGlzcGxheTpmbGV4fS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkRGVzY3JpcHRvciAubWt0b0ZpZWxkV3JhcCAubWt0b0NoZWNrYm94TGlzdCBsYWJlbCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGxhYmVse21hcmdpbi1sZWZ0OjEuMjVyZW19Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGxhYmVsOmJlZm9yZSxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGREZXNjcmlwdG9yIC5ta3RvRmllbGRXcmFwIC5ta3RvQ2hlY2tib3hMaXN0IGxhYmVsOmJlZm9yZXtmb250LXNpemU6MS4yNXJlbTtoZWlnaHQ6MS4yNXJlbTttYXJnaW4tbGVmdDotMS4yNXJlbTt3aWR0aDoxLjI1cmVtfS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCxib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwe2Zsb2F0Om5vbmV9Lm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIC5ta3RvSHRtbFRleHQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0ZpZWxkV3JhcCAubWt0b0h0bWxUZXh0e3dpZHRoOmF1dG8haW1wb3J0YW50fS5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAsLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcC5ta3RvUm91bmQsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAsYm9keTpub3QoW2RhdGEtY291bnRyeT1FRV0pIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAubWt0b1JvdW5ke21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O3BhZGRpbmc6MTBweH0ubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLC5ta3RvZm9ybS0tc3R5bGVkIC5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyAubWt0b0J1dHRvbldyYXAubWt0b1JvdW5kIGJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwLm1rdG9Sb3VuZCBidXR0b24ubWt0b0J1dHRvbntiYWNrZ3JvdW5kOiNkNDA1MTE7YmFja2dyb3VuZC1jb2xvcjojZDQwNTExO2NvbG9yOiNmZmZ9Ym9keVtkYXRhLWNvdW50cnk9UlNdOm5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3Jte2JvcmRlcjoxcHggc29saWQgI2NjY31ib2R5W2RhdGEtY291bnRyeT1SU106bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3d7cGFkZGluZy1ib3R0b206MzBweH1ib2R5W2RhdGEtY291bnRyeT1SU106bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9DYXB0Y2hhRGlzY2xhaW1lcntwYWRkaW5nOjEwcHh9Lm1vZGFsLWRpYWxvZyAubW9kYWxfX2J1dHRvbnN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDoxLjVjaDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5tb2RhbC1kaWFsb2cgLm1vZGFsX19idXR0b25zIGJ1dHRvbi5ta3RvQnV0dG9uLC5tb2RhbC1kaWFsb2cgLm1vZGFsX19idXR0b25zIC5idG4sLm1vZGFsLWRpYWxvZyAubW9kYWxfX2J1dHRvbnMgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwubW9kYWwtZGlhbG9nIC5tb2RhbF9fYnV0dG9ucyBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwubW9kYWwtZGlhbG9nIC5tb2RhbF9fYnV0dG9ucyBib2R5PiNvdC1zZGstYnRuLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5tb2RhbC1kaWFsb2cgLm1vZGFsX19idXR0b25zIGJ1dHRvbi5ta3RvQnV0dG9ue21pbi13aWR0aDo2NSV9fUBtZWRpYSAobWF4LXdpZHRoOjQzMHB4KXsubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5tb2RhbC1kaWFsb2cgLm1vZGFsX19idXR0b25zIGJ1dHRvbi5ta3RvQnV0dG9uLC5tb2RhbC1kaWFsb2cgLm1vZGFsX19idXR0b25zIC5idG4sLm1vZGFsLWRpYWxvZyAubW9kYWxfX2J1dHRvbnMgLm1rdG9mb3JtLS1zdHlsZWQgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwubW9kYWwtZGlhbG9nIC5tb2RhbF9fYnV0dG9ucyBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwubW9kYWwtZGlhbG9nIC5tb2RhbF9fYnV0dG9ucyBib2R5PiNvdC1zZGstYnRuLGJvZHk6bm90KFtkYXRhLWNvdW50cnk9RUVdKSAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5tb2RhbC1kaWFsb2cgLm1vZGFsX19idXR0b25zIGJ1dHRvbi5ta3RvQnV0dG9ue3dpZHRoOjEwMCV9fS5tb2RhbC1kaWFsb2cgcDpsYXN0LWNoaWxke21hcmdpbjowfS5hZGQtdG8tY2FsZW5kYXItd2lkZ2V0IC5kcm9wZG93bi1tZW51e3dpZHRoOjEwMCV9Lmhlcm8tc2VjdGlvbnthc3BlY3QtcmF0aW86Ny8zO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7Y29sb3I6I2ZmZjtkaXNwbGF5OmdyaWQ7Z3JpZC1jb2x1bW46Mi81O2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOjFmcn0uaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50LC5oZXJvLXNlY3Rpb24gLmhlcm9fX292ZXJsYXl7Z3JpZC1jb2x1bW46MS8tMTtncmlkLXJvdzoxLy0xfS5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnR7YWxpZ24tc2VsZjpjZW50ZXI7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MS41cmVtO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzoxNXB4IDMwcHh9Lmhlcm8tc2VjdGlvbiAuaGVyb19fY29udGVudCAuaGVyb19fdGl0bGV7bWFyZ2luOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX3N1YnRpdGxle2ZvbnQtd2VpZ2h0OjQwMH0uaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5oZXJvX19jdGF7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDouNWVtfS5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX2N0YSAuYnRuLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX2N0YSAubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIGJ1dHRvbi5ta3RvQnV0dG9uLC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX2N0YSBib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCBidXR0b24ubWt0b0J1dHRvbiwuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5oZXJvX19jdGEgYm9keT4jb3Qtc2RrLWJ0biwubWt0b2Zvcm0tLXN0eWxlZCAubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cgLm1rdG9CdXR0b25XcmFwIC5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnQgLmhlcm9fX2N0YSBidXR0b24ubWt0b0J1dHRvbixib2R5Om5vdChbZGF0YS1jb3VudHJ5PUVFXSkgLm1rdG9Gb3JtIC5ta3RvQnV0dG9uUm93IC5ta3RvQnV0dG9uV3JhcCAuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50IC5oZXJvX19jdGEgYnV0dG9uLm1rdG9CdXR0b257Zm9udC13ZWlnaHQ6NzAwfUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsuaGVyby1zZWN0aW9uIC5oZXJvX19jb250ZW50e3BhZGRpbmc6MTVweH19Lmhlcm8tc2VjdGlvbiBwOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsuaGVyby1zZWN0aW9ue2FzcGVjdC1yYXRpbzo3LzMuNX19QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpey5oZXJvLXNlY3Rpb257YXNwZWN0LXJhdGlvOnVuc2V0fS5oZXJvLXNlY3Rpb24gLmhlcm9fX2NvbnRlbnR7cGFkZGluZy1ib3R0b206NC41cmVtO3BhZGRpbmctdG9wOjQuNXJlbX19YXJ0aWNsZT4uaGVyby1zZWN0aW9uOmZpcnN0LWNoaWxke21hcmdpbi10b3A6LTMwcHh9LnBzd3AgLnBzd3BfX2N1c3RvbS1jYXB0aW9ue2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNSk7Ym90dG9tOjA7Y29sb3I6I2ZmZjtmb250LXNpemU6MTZweDtmb250LXNpemU6Ljg3NXJlbTtsZWZ0OjA7bGluZS1oZWlnaHQ6MS4yO3BhZGRpbmc6MCAxMnB4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9LnBzd3AgLnBzd3BfX2N1c3RvbS1jYXB0aW9uOmVtcHR5e2Rpc3BsYXk6bm9uZX0ucHN3cCAucHN3cF9fY3VzdG9tLWNhcHRpb24gLmlvYmplY3QtLXBpY3R1cmVfX2xpbmssLnBzd3AgLnBzd3BfX2N1c3RvbS1jYXB0aW9uIC5pb2JqZWN0X190aXRsZV9fc2VwYXJhdG9ye2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LnBzd3AgLnBzd3BfX2N1c3RvbS1jYXB0aW9uIC5nYWxsZXJ5LWl0ZW1fX3RpdGxlLC5wc3dwIC5wc3dwX19jdXN0b20tY2FwdGlvbiAuaW9iamVjdF9fdGl0bGV7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbjo2cHggMH0ucHN3cCAucHN3cF9fY3VzdG9tLWNhcHRpb24gLmdhbGxlcnktaXRlbV9fdGl0bGU6bGFzdC1jaGlsZCwucHN3cCAucHN3cF9fY3VzdG9tLWNhcHRpb24gLmlvYmplY3RfX3RpdGxlOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTo2cHh9LnBzd3AgLnBzd3BfX2N1c3RvbS1jYXB0aW9uIC5nYWxsZXJ5LWl0ZW1fX2Rlc2NyaXB0aW9uOmVtcHR5LC5wc3dwIC5wc3dwX19jdXN0b20tY2FwdGlvbiAuZ2FsbGVyeS1pdGVtX190aXRsZTplbXB0eSwucHN3cCAucHN3cF9fY3VzdG9tLWNhcHRpb24gLmlvYmplY3RfX2Rlc2NyaXB0aW9uOmVtcHR5LC5wc3dwIC5wc3dwX19jdXN0b20tY2FwdGlvbiAuaW9iamVjdF9fdGl0bGU6ZW1wdHl7ZGlzcGxheTpub25lfS5wc3dwIC5wc3dwX19jdXN0b20tY2FwdGlvbiAuZ2FsbGVyeS1pdGVtX19kZXNjcmlwdGlvbjpsYXN0LWNoaWxkLC5wc3dwIC5wc3dwX19jdXN0b20tY2FwdGlvbiAuaW9iamVjdF9fZGVzY3JpcHRpb246bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjZweDttYXJnaW4tdG9wOi02cHh9LnBzd3AgLnBzd3BfX2N1c3RvbS1jYXB0aW9uIC5nYWxsZXJ5LWl0ZW1fX2Rlc2NyaXB0aW9uPjpub3QocCksLnBzd3AgLnBzd3BfX2N1c3RvbS1jYXB0aW9uIC5pb2JqZWN0X19kZXNjcmlwdGlvbj46bm90KHApe2Rpc3BsYXk6bm9uZX0ucHN3cCAucHN3cF9fY3VzdG9tLWNhcHRpb24gYXtjb2xvcjojZmZmO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnBzd3AgLnBzd3BfX3ByZWxvYWRlcntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fQovKiMgc291cmNlTWFwcGluZ1VSTD1hcHBsaWNhdGlvbi5taW4uY3NzLm1hcCAqLwo="}},"time_used":91,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":91,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/scripts/vendor.min.js?v1762424770","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.735Z","timestamp":1785161166735,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/scripts/vendor.min.js?v1762424770 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Thu, 06 Nov 2025 10:26:10 GMT\r\netag: \"6026f-642ea7e5f1d6e-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":393839,"size_decoded":115528,"mime_type":"application/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (65534), with no line terminators","md5":"cf1a57a2ae81fbc20dc7c54d00fb6ddf","sha1":"cc7a8089a7c78cbad84d596330fc3781d9f0bba4","sha256":"76b6f731dadd69a37d95610bf6878c062b7c4818442164e23d237a6b90062a2b","sha512":"aa5ea88e8e8042226cc32c831dc3e60993f77ee79073f27cc0af956695f7743864dae83fb6d533ef22030690034f1c1f3bf5bf5226f431085b41d8503e5f447c","ssdeep":"6144:VylqWsMOf9QRZ7TPlxUqKxN9l4LDpAnzz9nC0fOh3Oe:QxsB9nbN9l4LDpAn3HGOe","tlshash":"03842a8d7251b13202eb21aa51af45067336196d740e946cb0a8ccee6d7dd88237ffbd","first_seen":"2025-11-15T08:44:41.070527Z","last_seen":"2026-07-27T14:06:41.191461Z","times_seen":90,"resource_available":true,"data":"IWZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiOyJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZS5leHBvcnRzP21vZHVsZS5leHBvcnRzPWUuZG9jdW1lbnQ/dChlLCEwKTpmdW5jdGlvbihlKXtpZihlLmRvY3VtZW50KXJldHVybiB0KGUpO3Rocm93IG5ldyBFcnJvcigialF1ZXJ5IHJlcXVpcmVzIGEgd2luZG93IHdpdGggYSBkb2N1bWVudCIpfTp0KGUpfSgidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6dGhpcyxmdW5jdGlvbih4LE4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiB5KGUpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBlJiYibnVtYmVyIiE9dHlwZW9mIGUubm9kZVR5cGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlLml0ZW19ZnVuY3Rpb24gaihlKXtyZXR1cm4gbnVsbCE9ZSYmZT09PWUud2luZG93fXZhciB0PVtdLHE9T2JqZWN0LmdldFByb3RvdHlwZU9mLG89dC5zbGljZSx6PXQuZmxhdD9mdW5jdGlvbihlKXtyZXR1cm4gdC5mbGF0LmNhbGwoZSl9OmZ1bmN0aW9uKGUpe3JldHVybiB0LmNvbmNhdC5hcHBseShbXSxlKX0sSD10LnB1c2gsYj10LmluZGV4T2YsUj17fSxGPVIudG9TdHJpbmcsQj1SLmhhc093blByb3BlcnR5LFc9Qi50b1N0cmluZyxHPVcuY2FsbChPYmplY3QpLG09e30sRT14LmRvY3VtZW50LFk9e3R5cGU6ITAsc3JjOiEwLG5vbmNlOiEwLG5vTW9kdWxlOiEwfTtmdW5jdGlvbiBYKGUsdCxuKXt2YXIgaSxyLHM9KG49bnx8RSkuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7aWYocy50ZXh0PWUsdClmb3IoaSBpbiBZKShyPXRbaV18fHQuZ2V0QXR0cmlidXRlJiZ0LmdldEF0dHJpYnV0ZShpKSkmJnMuc2V0QXR0cmlidXRlKGkscik7bi5oZWFkLmFwcGVuZENoaWxkKHMpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQocyl9ZnVuY3Rpb24gVihlKXtyZXR1cm4gbnVsbD09ZT9lKyIiOiJvYmplY3QiPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGU/UltGLmNhbGwoZSldfHwib2JqZWN0Ijp0eXBlb2YgZX12YXIgZT0iMy43LjEiLFU9L0hUTUwkL2ksXz1mdW5jdGlvbihlLHQpe3JldHVybiBuZXcgXy5mbi5pbml0KGUsdCl9O2Z1bmN0aW9uIFEoZSl7dmFyIHQ9ISFlJiYibGVuZ3RoImluIGUmJmUubGVuZ3RoLG49VihlKTtyZXR1cm4heShlKSYmIWooZSkmJigiYXJyYXkiPT09bnx8MD09PXR8fCJudW1iZXIiPT10eXBlb2YgdCYmMDx0JiZ0LTEgaW4gZSl9ZnVuY3Rpb24gdyhlLHQpe3JldHVybiBlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT10LnRvTG93ZXJDYXNlKCl9Xy5mbj1fLnByb3RvdHlwZT17anF1ZXJ5OmUsY29uc3RydWN0b3I6XyxsZW5ndGg6MCx0b0FycmF5OmZ1bmN0aW9uKCl7cmV0dXJuIG8uY2FsbCh0aGlzKX0sZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP28uY2FsbCh0aGlzKTplPDA/dGhpc1tlK3RoaXMubGVuZ3RoXTp0aGlzW2VdfSxwdXNoU3RhY2s6ZnVuY3Rpb24oZSl7ZT1fLm1lcmdlKHRoaXMuY29uc3RydWN0b3IoKSxlKTtyZXR1cm4gZS5wcmV2T2JqZWN0PXRoaXMsZX0sZWFjaDpmdW5jdGlvbihlKXtyZXR1cm4gXy5lYWNoKHRoaXMsZSl9LG1hcDpmdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soXy5tYXAodGhpcyxmdW5jdGlvbihlLHQpe3JldHVybiBuLmNhbGwoZSx0LGUpfSkpfSxzbGljZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLnB1c2hTdGFjayhvLmFwcGx5KHRoaXMsYXJndW1lbnRzKSl9LGZpcnN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXEoMCl9LGxhc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcSgtMSl9LGV2ZW46ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soXy5ncmVwKHRoaXMsZnVuY3Rpb24oZSx0KXtyZXR1cm4odCsxKSUyfSkpfSxvZGQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soXy5ncmVwKHRoaXMsZnVuY3Rpb24oZSx0KXtyZXR1cm4gdCUyfSkpfSxlcTpmdW5jdGlvbihlKXt2YXIgdD10aGlzLmxlbmd0aCxlPStlKyhlPDA/dDowKTtyZXR1cm4gdGhpcy5wdXNoU3RhY2soMDw9ZSYmZTx0P1t0aGlzW2VdXTpbXSl9LGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnByZXZPYmplY3R8fHRoaXMuY29uc3RydWN0b3IoKX0scHVzaDpILHNvcnQ6dC5zb3J0LHNwbGljZTp0LnNwbGljZX0sXy5leHRlbmQ9Xy5mbi5leHRlbmQ9ZnVuY3Rpb24oKXt2YXIgZSx0LG4saSxyLHM9YXJndW1lbnRzWzBdfHx7fSxhPTEsbz1hcmd1bWVudHMubGVuZ3RoLGw9ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIHMmJihsPXMscz1hcmd1bWVudHNbYV18fHt9LGErKyksIm9iamVjdCI9PXR5cGVvZiBzfHx5KHMpfHwocz17fSksYT09PW8mJihzPXRoaXMsYS0tKTthPG87YSsrKWlmKG51bGwhPShlPWFyZ3VtZW50c1thXSkpZm9yKHQgaW4gZSluPWVbdF0sIl9fcHJvdG9fXyIhPT10JiZzIT09biYmKGwmJm4mJihfLmlzUGxhaW5PYmplY3Qobil8fChpPUFycmF5LmlzQXJyYXkobikpKT8ocj1zW3RdLHI9aSYmIUFycmF5LmlzQXJyYXkocik/W106aXx8Xy5pc1BsYWluT2JqZWN0KHIpP3I6e30saT0hMSxzW3RdPV8uZXh0ZW5kKGwscixuKSk6dm9pZCAwIT09biYmKHNbdF09bikpO3JldHVybiBzfSxfLmV4dGVuZCh7ZXhwYW5kbzoialF1ZXJ5IisoZStNYXRoLnJhbmRvbSgpKS5yZXBsYWNlKC9cRC9nLCIiKSxpc1JlYWR5OiEwLGVycm9yOmZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcihlKX0sbm9vcDpmdW5jdGlvbigpe30saXNQbGFpbk9iamVjdDpmdW5jdGlvbihlKXtyZXR1cm4hKCFlfHwiW29iamVjdCBPYmplY3RdIiE9PUYuY2FsbChlKXx8KGU9cShlKSkmJigiZnVuY3Rpb24iIT10eXBlb2YoZT1CLmNhbGwoZSwiY29uc3RydWN0b3IiKSYmZS5jb25zdHJ1Y3Rvcil8fFcuY2FsbChlKSE9PUcpKX0saXNFbXB0eU9iamVjdDpmdW5jdGlvbihlKXtmb3IodmFyIHQgaW4gZSlyZXR1cm4hMTtyZXR1cm4hMH0sZ2xvYmFsRXZhbDpmdW5jdGlvbihlLHQsbil7WChlLHtub25jZTp0JiZ0Lm5vbmNlfSxuKX0sZWFjaDpmdW5jdGlvbihlLHQpe3ZhciBuLGk9MDtpZihRKGUpKWZvcihuPWUubGVuZ3RoO2k8biYmITEhPT10LmNhbGwoZVtpXSxpLGVbaV0pO2krKyk7ZWxzZSBmb3IoaSBpbiBlKWlmKCExPT09dC5jYWxsKGVbaV0saSxlW2ldKSlicmVhaztyZXR1cm4gZX0sdGV4dDpmdW5jdGlvbihlKXt2YXIgdCxuPSIiLGk9MCxyPWUubm9kZVR5cGU7aWYoIXIpZm9yKDt0PWVbaSsrXTspbis9Xy50ZXh0KHQpO3JldHVybiAxPT09cnx8MTE9PT1yP2UudGV4dENvbnRlbnQ6OT09PXI/ZS5kb2N1bWVudEVsZW1lbnQudGV4dENvbnRlbnQ6Mz09PXJ8fDQ9PT1yP2Uubm9kZVZhbHVlOm59LG1ha2VBcnJheTpmdW5jdGlvbihlLHQpe3Q9dHx8W107cmV0dXJuIG51bGwhPWUmJihRKE9iamVjdChlKSk/Xy5tZXJnZSh0LCJzdHJpbmciPT10eXBlb2YgZT9bZV06ZSk6SC5jYWxsKHQsZSkpLHR9LGluQXJyYXk6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBudWxsPT10Py0xOmIuY2FsbCh0LGUsbil9LGlzWE1MRG9jOmZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUubmFtZXNwYWNlVVJJLGU9ZSYmKGUub3duZXJEb2N1bWVudHx8ZSkuZG9jdW1lbnRFbGVtZW50O3JldHVybiFVLnRlc3QodHx8ZSYmZS5ub2RlTmFtZXx8IkhUTUwiKX0sbWVyZ2U6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49K3QubGVuZ3RoLGk9MCxyPWUubGVuZ3RoO2k8bjtpKyspZVtyKytdPXRbaV07cmV0dXJuIGUubGVuZ3RoPXIsZX0sZ3JlcDpmdW5jdGlvbihlLHQsbil7Zm9yKHZhciBpPVtdLHI9MCxzPWUubGVuZ3RoLGE9IW47cjxzO3IrKykhdChlW3JdLHIpIT1hJiZpLnB1c2goZVtyXSk7cmV0dXJuIGl9LG1hcDpmdW5jdGlvbihlLHQsbil7dmFyIGkscixzPTAsYT1bXTtpZihRKGUpKWZvcihpPWUubGVuZ3RoO3M8aTtzKyspbnVsbCE9KHI9dChlW3NdLHMsbikpJiZhLnB1c2gocik7ZWxzZSBmb3IocyBpbiBlKW51bGwhPShyPXQoZVtzXSxzLG4pKSYmYS5wdXNoKHIpO3JldHVybiB6KGEpfSxndWlkOjEsc3VwcG9ydDptfSksImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmKF8uZm5bU3ltYm9sLml0ZXJhdG9yXT10W1N5bWJvbC5pdGVyYXRvcl0pLF8uZWFjaCgiQm9vbGVhbiBOdW1iZXIgU3RyaW5nIEZ1bmN0aW9uIEFycmF5IERhdGUgUmVnRXhwIE9iamVjdCBFcnJvciBTeW1ib2wiLnNwbGl0KCIgIiksZnVuY3Rpb24oZSx0KXtSWyJbb2JqZWN0ICIrdCsiXSJdPXQudG9Mb3dlckNhc2UoKX0pO3ZhciBLPXQucG9wLFo9dC5zb3J0LEo9dC5zcGxpY2Usbj0iW1xceDIwXFx0XFxyXFxuXFxmXSIsZWU9bmV3IFJlZ0V4cCgiXiIrbisiK3woKD86XnxbXlxcXFxdKSg/OlxcXFwuKSopIituKyIrJCIsImciKSx0ZT0oXy5jb250YWlucz1mdW5jdGlvbihlLHQpe3Q9dCYmdC5wYXJlbnROb2RlO3JldHVybiBlPT09dHx8ISghdHx8MSE9PXQubm9kZVR5cGV8fCEoZS5jb250YWlucz9lLmNvbnRhaW5zKHQpOmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJjE2JmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24odCkpKX0sLyhbXDAtXHgxZlx4N2ZdfF4tP1xkKXxeLSR8W15ceDgwLVx1RkZGRlx3LV0vZyk7ZnVuY3Rpb24gbmUoZSx0KXtyZXR1cm4gdD8iXDAiPT09ZT8i77+9IjplLnNsaWNlKDAsLTEpKyJcXCIrZS5jaGFyQ29kZUF0KGUubGVuZ3RoLTEpLnRvU3RyaW5nKDE2KSsiICI6IlxcIitlfV8uZXNjYXBlU2VsZWN0b3I9ZnVuY3Rpb24oZSl7cmV0dXJuKGUrIiIpLnJlcGxhY2UodGUsbmUpfTt2YXIgaWUsVCxyZSxzZSxhZSxTLGksQyxwLG9lLHI9RSxsZT1ILEE9bGUsTT1fLmV4cGFuZG8sRD0wLGRlPTAsY2U9RGUoKSx1ZT1EZSgpLHBlPURlKCksaGU9RGUoKSxmZT1mdW5jdGlvbihlLHQpe3JldHVybiBlPT09dCYmKGFlPSEwKSwwfSxtZT0iY2hlY2tlZHxzZWxlY3RlZHxhc3luY3xhdXRvZm9jdXN8YXV0b3BsYXl8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGlzbWFwfGxvb3B8bXVsdGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWQiLGU9Iig/OlxcXFxbXFxkYS1mQS1GXXsxLDZ9IituKyI/fFxcXFxbXlxcclxcblxcZl18W1xcdy1dfFteXDAtXFx4N2ZdKSsiLHM9IlxcWyIrbisiKigiK2UrIikoPzoiK24rIiooWypeJHwhfl0/PSkiK24rIiooPzonKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcInwoIitlKyIpKXwpIituKyIqXFxdIixhPSI6KCIrZSsiKSg/OlxcKCgoJygoPzpcXFxcLnxbXlxcXFwnXSkqKSd8XCIoKD86XFxcXC58W15cXFxcXCJdKSopXCIpfCgoPzpcXFxcLnxbXlxcXFwoKVtcXF1dfCIrcysiKSopfC4qKVxcKXwpIixnZT1uZXcgUmVnRXhwKG4rIisiLCJnIiksdmU9bmV3IFJlZ0V4cCgiXiIrbisiKiwiK24rIioiKSx5ZT1uZXcgUmVnRXhwKCJeIituKyIqKFs+K35dfCIrbisiKSIrbisiKiIpLGJlPW5ldyBSZWdFeHAobisifD4iKSx3ZT1uZXcgUmVnRXhwKGEpLHhlPW5ldyBSZWdFeHAoIl4iK2UrIiQiKSxFZT17SUQ6bmV3IFJlZ0V4cCgiXiMoIitlKyIpIiksQ0xBU1M6bmV3IFJlZ0V4cCgiXlxcLigiK2UrIikiKSxUQUc6bmV3IFJlZ0V4cCgiXigiK2UrInxbKl0pIiksQVRUUjpuZXcgUmVnRXhwKCJeIitzKSxQU0VVRE86bmV3IFJlZ0V4cCgiXiIrYSksQ0hJTEQ6bmV3IFJlZ0V4cCgiXjoob25seXxmaXJzdHxsYXN0fG50aHxudGgtbGFzdCktKGNoaWxkfG9mLXR5cGUpKD86XFwoIituKyIqKGV2ZW58b2RkfCgoWystXXwpKFxcZCopbnwpIituKyIqKD86KFsrLV18KSIrbisiKihcXGQrKXwpKSIrbisiKlxcKXwpIiwiaSIpLGJvb2w6bmV3IFJlZ0V4cCgiXig/OiIrbWUrIikkIiwiaSIpLG5lZWRzQ29udGV4dDpuZXcgUmVnRXhwKCJeIituKyIqWz4rfl18OihldmVufG9kZHxlcXxndHxsdHxudGh8Zmlyc3R8bGFzdCkoPzpcXCgiK24rIiooKD86LVxcZCk/XFxkKikiK24rIipcXCl8KSg/PVteLV18JCkiLCJpIil9LF9lPS9eKD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGJ1dHRvbikkL2ksVGU9L15oXGQkL2ksU2U9L14oPzojKFtcdy1dKyl8KFx3Kyl8XC4oW1x3LV0rKSkkLyxDZT0vWyt+XS8sdT1uZXcgUmVnRXhwKCJcXFxcW1xcZGEtZkEtRl17MSw2fSIrbisiP3xcXFxcKFteXFxyXFxuXFxmXSkiLCJnIiksaD1mdW5jdGlvbihlLHQpe2U9IjB4IitlLnNsaWNlKDEpLTY1NTM2O3JldHVybiB0fHwoZTwwP1N0cmluZy5mcm9tQ2hhckNvZGUoNjU1MzYrZSk6U3RyaW5nLmZyb21DaGFyQ29kZShlPj4xMHw1NTI5NiwxMDIzJmV8NTYzMjApKX0sQWU9ZnVuY3Rpb24oKXtJZSgpfSxNZT1xZShmdW5jdGlvbihlKXtyZXR1cm4hMD09PWUuZGlzYWJsZWQmJncoZSwiZmllbGRzZXQiKX0se2RpcjoicGFyZW50Tm9kZSIsbmV4dDoibGVnZW5kIn0pO3RyeXtBLmFwcGx5KHQ9by5jYWxsKHIuY2hpbGROb2Rlcyksci5jaGlsZE5vZGVzKSx0W3IuY2hpbGROb2Rlcy5sZW5ndGhdLm5vZGVUeXBlfWNhdGNoKGUpe0E9e2FwcGx5OmZ1bmN0aW9uKGUsdCl7bGUuYXBwbHkoZSxvLmNhbGwodCkpfSxjYWxsOmZ1bmN0aW9uKGUpe2xlLmFwcGx5KGUsby5jYWxsKGFyZ3VtZW50cywxKSl9fX1mdW5jdGlvbiBMKHQsZSxuLGkpe3ZhciByLHMsYSxvLGwsZCxjPWUmJmUub3duZXJEb2N1bWVudCx1PWU/ZS5ub2RlVHlwZTo5O2lmKG49bnx8W10sInN0cmluZyIhPXR5cGVvZiB0fHwhdHx8MSE9PXUmJjkhPT11JiYxMSE9PXUpcmV0dXJuIG47aWYoIWkmJihJZShlKSxlPWV8fFMsQykpe2lmKDExIT09dSYmKG89U2UuZXhlYyh0KSkpaWYocj1vWzFdKXtpZig5PT09dSl7aWYoIShkPWUuZ2V0RWxlbWVudEJ5SWQocikpKXJldHVybiBuO2lmKGQuaWQ9PT1yKXJldHVybiBBLmNhbGwobixkKSxufWVsc2UgaWYoYyYmKGQ9Yy5nZXRFbGVtZW50QnlJZChyKSkmJkwuY29udGFpbnMoZSxkKSYmZC5pZD09PXIpcmV0dXJuIEEuY2FsbChuLGQpLG59ZWxzZXtpZihvWzJdKXJldHVybiBBLmFwcGx5KG4sZS5nZXRFbGVtZW50c0J5VGFnTmFtZSh0KSksbjtpZigocj1vWzNdKSYmZS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKXJldHVybiBBLmFwcGx5KG4sZS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKHIpKSxufWlmKCEoaGVbdCsiICJdfHxwJiZwLnRlc3QodCkpKXtpZihkPXQsYz1lLDE9PT11JiYoYmUudGVzdCh0KXx8eWUudGVzdCh0KSkpe2ZvcigoYz1DZS50ZXN0KHQpJiZQZShlLnBhcmVudE5vZGUpfHxlKT09ZSYmbS5zY29wZXx8KChhPWUuZ2V0QXR0cmlidXRlKCJpZCIpKT9hPV8uZXNjYXBlU2VsZWN0b3IoYSk6ZS5zZXRBdHRyaWJ1dGUoImlkIixhPU0pKSxzPShsPU5lKHQpKS5sZW5ndGg7cy0tOylsW3NdPShhPyIjIithOiI6c2NvcGUiKSsiICIramUobFtzXSk7ZD1sLmpvaW4oIiwiKX10cnl7cmV0dXJuIEEuYXBwbHkobixjLnF1ZXJ5U2VsZWN0b3JBbGwoZCkpLG59Y2F0Y2goZSl7aGUodCwhMCl9ZmluYWxseXthPT09TSYmZS5yZW1vdmVBdHRyaWJ1dGUoImlkIil9fX1yZXR1cm4gV2UodC5yZXBsYWNlKGVlLCIkMSIpLGUsbixpKX1mdW5jdGlvbiBEZSgpe3ZhciBuPVtdO2Z1bmN0aW9uIGkoZSx0KXtyZXR1cm4gbi5wdXNoKGUrIiAiKT5ULmNhY2hlTGVuZ3RoJiZkZWxldGUgaVtuLnNoaWZ0KCldLGlbZSsiICJdPXR9cmV0dXJuIGl9ZnVuY3Rpb24gbChlKXtyZXR1cm4gZVtNXT0hMCxlfWZ1bmN0aW9uIExlKGUpe3ZhciB0PVMuY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKTt0cnl7cmV0dXJuISFlKHQpfWNhdGNoKGUpe3JldHVybiExfWZpbmFsbHl7dC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCl9fWZ1bmN0aW9uIGtlKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4iZm9ybSJpbiBlP2UucGFyZW50Tm9kZSYmITE9PT1lLmRpc2FibGVkPyJsYWJlbCJpbiBlPyJsYWJlbCJpbiBlLnBhcmVudE5vZGU/ZS5wYXJlbnROb2RlLmRpc2FibGVkPT09dDplLmRpc2FibGVkPT09dDplLmlzRGlzYWJsZWQ9PT10fHxlLmlzRGlzYWJsZWQhPT0hdCYmTWUoZSk9PT10OmUuZGlzYWJsZWQ9PT10OiJsYWJlbCJpbiBlJiZlLmRpc2FibGVkPT09dH19ZnVuY3Rpb24gT2UoYSl7cmV0dXJuIGwoZnVuY3Rpb24ocyl7cmV0dXJuIHM9K3MsbChmdW5jdGlvbihlLHQpe2Zvcih2YXIgbixpPWEoW10sZS5sZW5ndGgscykscj1pLmxlbmd0aDtyLS07KWVbbj1pW3JdXSYmKGVbbl09ISh0W25dPWVbbl0pKX0pfSl9ZnVuY3Rpb24gUGUoZSl7cmV0dXJuIGUmJnZvaWQgMCE9PWUuZ2V0RWxlbWVudHNCeVRhZ05hbWUmJmV9ZnVuY3Rpb24gSWUoZSl7dmFyIGU9ZT9lLm93bmVyRG9jdW1lbnR8fGU6cjtyZXR1cm4gZSE9UyYmOT09PWUubm9kZVR5cGUmJmUuZG9jdW1lbnRFbGVtZW50JiYoaT0oUz1lKS5kb2N1bWVudEVsZW1lbnQsQz0hXy5pc1hNTERvYyhTKSxvZT1pLm1hdGNoZXN8fGkud2Via2l0TWF0Y2hlc1NlbGVjdG9yfHxpLm1zTWF0Y2hlc1NlbGVjdG9yLGkubXNNYXRjaGVzU2VsZWN0b3ImJnIhPVMmJihlPVMuZGVmYXVsdFZpZXcpJiZlLnRvcCE9PWUmJmUuYWRkRXZlbnRMaXN0ZW5lcigidW5sb2FkIixBZSksbS5nZXRCeUlkPUxlKGZ1bmN0aW9uKGUpe3JldHVybiBpLmFwcGVuZENoaWxkKGUpLmlkPV8uZXhwYW5kbywhUy5nZXRFbGVtZW50c0J5TmFtZXx8IVMuZ2V0RWxlbWVudHNCeU5hbWUoXy5leHBhbmRvKS5sZW5ndGh9KSxtLmRpc2Nvbm5lY3RlZE1hdGNoPUxlKGZ1bmN0aW9uKGUpe3JldHVybiBvZS5jYWxsKGUsIioiKX0pLG0uc2NvcGU9TGUoZnVuY3Rpb24oKXtyZXR1cm4gUy5xdWVyeVNlbGVjdG9yQWxsKCI6c2NvcGUiKX0pLG0uY3NzSGFzPUxlKGZ1bmN0aW9uKCl7dHJ5e1MucXVlcnlTZWxlY3RvcigiOmhhcygqLDpqcWZha2UpIil9Y2F0Y2goZSl7cmV0dXJuIDF9fSksbS5nZXRCeUlkPyhULmZpbHRlci5JRD1mdW5jdGlvbihlKXt2YXIgdD1lLnJlcGxhY2UodSxoKTtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJpZCIpPT09dH19LFQuZmluZC5JRD1mdW5jdGlvbihlLHQpe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudEJ5SWQmJkMpcmV0dXJuKHQ9dC5nZXRFbGVtZW50QnlJZChlKSk/W3RdOltdfSk6KFQuZmlsdGVyLklEPWZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZSh1LGgpO3JldHVybiBmdW5jdGlvbihlKXtlPXZvaWQgMCE9PWUuZ2V0QXR0cmlidXRlTm9kZSYmZS5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpO3JldHVybiBlJiZlLnZhbHVlPT09dH19LFQuZmluZC5JRD1mdW5jdGlvbihlLHQpe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudEJ5SWQmJkMpe3ZhciBuLGkscixzPXQuZ2V0RWxlbWVudEJ5SWQoZSk7aWYocyl7aWYoKG49cy5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW3NdO2ZvcihyPXQuZ2V0RWxlbWVudHNCeU5hbWUoZSksaT0wO3M9cltpKytdOylpZigobj1zLmdldEF0dHJpYnV0ZU5vZGUoImlkIikpJiZuLnZhbHVlPT09ZSlyZXR1cm5bc119cmV0dXJuW119fSksVC5maW5kLlRBRz1mdW5jdGlvbihlLHQpe3JldHVybiB2b2lkIDAhPT10LmdldEVsZW1lbnRzQnlUYWdOYW1lP3QuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZSk6dC5xdWVyeVNlbGVjdG9yQWxsKGUpfSxULmZpbmQuQ0xBU1M9ZnVuY3Rpb24oZSx0KXtpZih2b2lkIDAhPT10LmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJkMpcmV0dXJuIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlKX0scD1bXSxMZShmdW5jdGlvbihlKXt2YXIgdDtpLmFwcGVuZENoaWxkKGUpLmlubmVySFRNTD0iPGEgaWQ9JyIrTSsiJyBocmVmPScnIGRpc2FibGVkPSdkaXNhYmxlZCc+PC9hPjxzZWxlY3QgaWQ9JyIrTSsiLVxyXFwnIGRpc2FibGVkPSdkaXNhYmxlZCc+PG9wdGlvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3NlbGVjdD4iLGUucXVlcnlTZWxlY3RvckFsbCgiW3NlbGVjdGVkXSIpLmxlbmd0aHx8cC5wdXNoKCJcXFsiK24rIiooPzp2YWx1ZXwiK21lKyIpIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJbaWR+PSIrTSsiLV0iKS5sZW5ndGh8fHAucHVzaCgifj0iKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoImEjIitNKyIrKiIpLmxlbmd0aHx8cC5wdXNoKCIuIy4rWyt+XSIpLGUucXVlcnlTZWxlY3RvckFsbCgiOmNoZWNrZWQiKS5sZW5ndGh8fHAucHVzaCgiOmNoZWNrZWQiKSwodD1TLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnNldEF0dHJpYnV0ZSgidHlwZSIsImhpZGRlbiIpLGUuYXBwZW5kQ2hpbGQodCkuc2V0QXR0cmlidXRlKCJuYW1lIiwiRCIpLGkuYXBwZW5kQ2hpbGQoZSkuZGlzYWJsZWQ9ITAsMiE9PWUucXVlcnlTZWxlY3RvckFsbCgiOmRpc2FibGVkIikubGVuZ3RoJiZwLnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksKHQ9Uy5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKS5zZXRBdHRyaWJ1dGUoIm5hbWUiLCIiKSxlLmFwcGVuZENoaWxkKHQpLGUucXVlcnlTZWxlY3RvckFsbCgiW25hbWU9JyddIikubGVuZ3RofHxwLnB1c2goIlxcWyIrbisiKm5hbWUiK24rIio9IituKyIqKD86Jyd8XCJcIikiKX0pLG0uY3NzSGFzfHxwLnB1c2goIjpoYXMiKSxwPXAubGVuZ3RoJiZuZXcgUmVnRXhwKHAuam9pbigifCIpKSxmZT1mdW5jdGlvbihlLHQpe3ZhciBuO3JldHVybiBlPT09dD8oYWU9ITAsMCk6KG49IWUuY29tcGFyZURvY3VtZW50UG9zaXRpb24tIXQuY29tcGFyZURvY3VtZW50UG9zaXRpb24pfHwoMSYobj0oZS5vd25lckRvY3VtZW50fHxlKT09KHQub3duZXJEb2N1bWVudHx8dCk/ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbih0KToxKXx8IW0uc29ydERldGFjaGVkJiZ0LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGUpPT09bj9lPT09U3x8ZS5vd25lckRvY3VtZW50PT1yJiZMLmNvbnRhaW5zKHIsZSk/LTE6dD09PVN8fHQub3duZXJEb2N1bWVudD09ciYmTC5jb250YWlucyhyLHQpPzE6c2U/Yi5jYWxsKHNlLGUpLWIuY2FsbChzZSx0KTowOjQmbj8tMToxKX0pLFN9Zm9yKGllIGluIEwubWF0Y2hlcz1mdW5jdGlvbihlLHQpe3JldHVybiBMKGUsbnVsbCxudWxsLHQpfSxMLm1hdGNoZXNTZWxlY3Rvcj1mdW5jdGlvbihlLHQpe2lmKEllKGUpLEMmJiFoZVt0KyIgIl0mJighcHx8IXAudGVzdCh0KSkpdHJ5e3ZhciBuPW9lLmNhbGwoZSx0KTtpZihufHxtLmRpc2Nvbm5lY3RlZE1hdGNofHxlLmRvY3VtZW50JiYxMSE9PWUuZG9jdW1lbnQubm9kZVR5cGUpcmV0dXJuIG59Y2F0Y2goZSl7aGUodCwhMCl9cmV0dXJuIDA8TCh0LFMsbnVsbCxbZV0pLmxlbmd0aH0sTC5jb250YWlucz1mdW5jdGlvbihlLHQpe3JldHVybihlLm93bmVyRG9jdW1lbnR8fGUpIT1TJiZJZShlKSxfLmNvbnRhaW5zKGUsdCl9LEwuYXR0cj1mdW5jdGlvbihlLHQpeyhlLm93bmVyRG9jdW1lbnR8fGUpIT1TJiZJZShlKTt2YXIgbj1ULmF0dHJIYW5kbGVbdC50b0xvd2VyQ2FzZSgpXSxuPW4mJkIuY2FsbChULmF0dHJIYW5kbGUsdC50b0xvd2VyQ2FzZSgpKT9uKGUsdCwhQyk6dm9pZCAwO3JldHVybiB2b2lkIDAhPT1uP246ZS5nZXRBdHRyaWJ1dGUodCl9LEwuZXJyb3I9ZnVuY3Rpb24oZSl7dGhyb3cgbmV3IEVycm9yKCJTeW50YXggZXJyb3IsIHVucmVjb2duaXplZCBleHByZXNzaW9uOiAiK2UpfSxfLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbj1bXSxpPTAscj0wO2lmKGFlPSFtLnNvcnRTdGFibGUsc2U9IW0uc29ydFN0YWJsZSYmby5jYWxsKGUsMCksWi5jYWxsKGUsZmUpLGFlKXtmb3IoO3Q9ZVtyKytdOyl0PT09ZVtyXSYmKGk9bi5wdXNoKHIpKTtmb3IoO2ktLTspSi5jYWxsKGUsbltpXSwxKX1yZXR1cm4gc2U9bnVsbCxlfSxfLmZuLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soXy51bmlxdWVTb3J0KG8uYXBwbHkodGhpcykpKX0sKFQ9Xy5leHByPXtjYWNoZUxlbmd0aDo1MCxjcmVhdGVQc2V1ZG86bCxtYXRjaDpFZSxhdHRySGFuZGxlOnt9LGZpbmQ6e30scmVsYXRpdmU6eyI+Ijp7ZGlyOiJwYXJlbnROb2RlIixmaXJzdDohMH0sIiAiOntkaXI6InBhcmVudE5vZGUifSwiKyI6e2RpcjoicHJldmlvdXNTaWJsaW5nIixmaXJzdDohMH0sIn4iOntkaXI6InByZXZpb3VzU2libGluZyJ9fSxwcmVGaWx0ZXI6e0FUVFI6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsxXS5yZXBsYWNlKHUsaCksZVszXT0oZVszXXx8ZVs0XXx8ZVs1XXx8IiIpLnJlcGxhY2UodSxoKSwifj0iPT09ZVsyXSYmKGVbM109IiAiK2VbM10rIiAiKSxlLnNsaWNlKDAsNCl9LENISUxEOmZ1bmN0aW9uKGUpe3JldHVybiBlWzFdPWVbMV0udG9Mb3dlckNhc2UoKSwibnRoIj09PWVbMV0uc2xpY2UoMCwzKT8oZVszXXx8TC5lcnJvcihlWzBdKSxlWzRdPSsoZVs0XT9lWzVdKyhlWzZdfHwxKToyKigiZXZlbiI9PT1lWzNdfHwib2RkIj09PWVbM10pKSxlWzVdPSsoZVs3XStlWzhdfHwib2RkIj09PWVbM10pKTplWzNdJiZMLmVycm9yKGVbMF0pLGV9LFBTRVVETzpmdW5jdGlvbihlKXt2YXIgdCxuPSFlWzZdJiZlWzJdO3JldHVybiBFZS5DSElMRC50ZXN0KGVbMF0pP251bGw6KGVbM10/ZVsyXT1lWzRdfHxlWzVdfHwiIjpuJiZ3ZS50ZXN0KG4pJiYodD0odD1OZShuLCEwKSkmJm4uaW5kZXhPZigiKSIsbi5sZW5ndGgtdCktbi5sZW5ndGgpJiYoZVswXT1lWzBdLnNsaWNlKDAsdCksZVsyXT1uLnNsaWNlKDAsdCkpLGUuc2xpY2UoMCwzKSl9fSxmaWx0ZXI6e1RBRzpmdW5jdGlvbihlKXt2YXIgdD1lLnJlcGxhY2UodSxoKS50b0xvd2VyQ2FzZSgpO3JldHVybiIqIj09PWU/ZnVuY3Rpb24oKXtyZXR1cm4hMH06ZnVuY3Rpb24oZSl7cmV0dXJuIHcoZSx0KX19LENMQVNTOmZ1bmN0aW9uKGUpe3ZhciB0PWNlW2UrIiAiXTtyZXR1cm4gdHx8KHQ9bmV3IFJlZ0V4cCgiKF58IituKyIpIitlKyIoIituKyJ8JCkiKSkmJmNlKGUsZnVuY3Rpb24oZSl7cmV0dXJuIHQudGVzdCgic3RyaW5nIj09dHlwZW9mIGUuY2xhc3NOYW1lJiZlLmNsYXNzTmFtZXx8dm9pZCAwIT09ZS5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIil9KX0sQVRUUjpmdW5jdGlvbih0LG4saSl7cmV0dXJuIGZ1bmN0aW9uKGUpe2U9TC5hdHRyKGUsdCk7cmV0dXJuIG51bGw9PWU/IiE9Ij09PW46IW58fChlKz0iIiwiPSI9PT1uP2U9PT1pOiIhPSI9PT1uP2UhPT1pOiJePSI9PT1uP2kmJjA9PT1lLmluZGV4T2YoaSk6Iio9Ij09PW4/aSYmLTE8ZS5pbmRleE9mKGkpOiIkPSI9PT1uP2kmJmUuc2xpY2UoLWkubGVuZ3RoKT09PWk6In49Ij09PW4/LTE8KCIgIitlLnJlcGxhY2UoZ2UsIiAiKSsiICIpLmluZGV4T2YoaSk6Inw9Ij09PW4mJihlPT09aXx8ZS5zbGljZSgwLGkubGVuZ3RoKzEpPT09aSsiLSIpKX19LENISUxEOmZ1bmN0aW9uKGgsZSx0LGYsbSl7dmFyIGc9Im50aCIhPT1oLnNsaWNlKDAsMyksdj0ibGFzdCIhPT1oLnNsaWNlKC00KSx5PSJvZi10eXBlIj09PWU7cmV0dXJuIDE9PT1mJiYwPT09bT9mdW5jdGlvbihlKXtyZXR1cm4hIWUucGFyZW50Tm9kZX06ZnVuY3Rpb24oZSx0LG4pe3ZhciBpLHIscyxhLG8sbD1nIT12PyJuZXh0U2libGluZyI6InByZXZpb3VzU2libGluZyIsZD1lLnBhcmVudE5vZGUsYz15JiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCksdT0hbiYmIXkscD0hMTtpZihkKXtpZihnKXtmb3IoO2w7KXtmb3Iocz1lO3M9c1tsXTspaWYoeT93KHMsYyk6MT09PXMubm9kZVR5cGUpcmV0dXJuITE7bz1sPSJvbmx5Ij09PWgmJiFvJiYibmV4dFNpYmxpbmcifXJldHVybiEwfWlmKG89W3Y/ZC5maXJzdENoaWxkOmQubGFzdENoaWxkXSx2JiZ1KXtmb3IocD0oYT0oaT0ocj1kW01dfHwoZFtNXT17fSkpW2hdfHxbXSlbMF09PT1EJiZpWzFdKSYmaVsyXSxzPWEmJmQuY2hpbGROb2Rlc1thXTtzPSsrYSYmcyYmc1tsXXx8KHA9YT0wLG8ucG9wKCkpOylpZigxPT09cy5ub2RlVHlwZSYmKytwJiZzPT09ZSl7cltoXT1bRCxhLHBdO2JyZWFrfX1lbHNlIGlmKCExPT09KHA9dT9hPShpPShyPWVbTV18fChlW01dPXt9KSlbaF18fFtdKVswXT09PUQmJmlbMV06cCkpZm9yKDsocz0rK2EmJnMmJnNbbF18fChwPWE9MCxvLnBvcCgpKSkmJigoeT8hdyhzLGMpOjEhPT1zLm5vZGVUeXBlKXx8ISsrcHx8KHUmJigocj1zW01dfHwoc1tNXT17fSkpW2hdPVtELHBdKSxzIT09ZSkpOyk7cmV0dXJuKHAtPW0pPT09Znx8cCVmPT0wJiYwPD1wL2Z9fX0sUFNFVURPOmZ1bmN0aW9uKGUscyl7dmFyIHQsYT1ULnBzZXVkb3NbZV18fFQuc2V0RmlsdGVyc1tlLnRvTG93ZXJDYXNlKCldfHxMLmVycm9yKCJ1bnN1cHBvcnRlZCBwc2V1ZG86ICIrZSk7cmV0dXJuIGFbTV0/YShzKToxPGEubGVuZ3RoPyh0PVtlLGUsIiIsc10sVC5zZXRGaWx0ZXJzLmhhc093blByb3BlcnR5KGUudG9Mb3dlckNhc2UoKSk/bChmdW5jdGlvbihlLHQpe2Zvcih2YXIgbixpPWEoZSxzKSxyPWkubGVuZ3RoO3ItLTspZVtuPWIuY2FsbChlLGlbcl0pXT0hKHRbbl09aVtyXSl9KTpmdW5jdGlvbihlKXtyZXR1cm4gYShlLDAsdCl9KTphfX0scHNldWRvczp7bm90OmwoZnVuY3Rpb24oZSl7dmFyIGk9W10scj1bXSxvPUJlKGUucmVwbGFjZShlZSwiJDEiKSk7cmV0dXJuIG9bTV0/bChmdW5jdGlvbihlLHQsbixpKXtmb3IodmFyIHIscz1vKGUsbnVsbCxpLFtdKSxhPWUubGVuZ3RoO2EtLTspKHI9c1thXSkmJihlW2FdPSEodFthXT1yKSl9KTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGlbMF09ZSxvKGksbnVsbCxuLHIpLGlbMF09bnVsbCwhci5wb3AoKX19KSxoYXM6bChmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIDA8TCh0LGUpLmxlbmd0aH19KSxjb250YWluczpsKGZ1bmN0aW9uKHQpe3JldHVybiB0PXQucmVwbGFjZSh1LGgpLGZ1bmN0aW9uKGUpe3JldHVybi0xPChlLnRleHRDb250ZW50fHxfLnRleHQoZSkpLmluZGV4T2YodCl9fSksbGFuZzpsKGZ1bmN0aW9uKG4pe3JldHVybiB4ZS50ZXN0KG58fCIiKXx8TC5lcnJvcigidW5zdXBwb3J0ZWQgbGFuZzogIituKSxuPW4ucmVwbGFjZSh1LGgpLnRvTG93ZXJDYXNlKCksZnVuY3Rpb24oZSl7dmFyIHQ7ZG97aWYodD1DP2UubGFuZzplLmdldEF0dHJpYnV0ZSgieG1sOmxhbmciKXx8ZS5nZXRBdHRyaWJ1dGUoImxhbmciKSlyZXR1cm4odD10LnRvTG93ZXJDYXNlKCkpPT09bnx8MD09PXQuaW5kZXhPZihuKyItIil9d2hpbGUoKGU9ZS5wYXJlbnROb2RlKSYmMT09PWUubm9kZVR5cGUpO3JldHVybiExfX0pLHRhcmdldDpmdW5jdGlvbihlKXt2YXIgdD14LmxvY2F0aW9uJiZ4LmxvY2F0aW9uLmhhc2g7cmV0dXJuIHQmJnQuc2xpY2UoMSk9PT1lLmlkfSxyb290OmZ1bmN0aW9uKGUpe3JldHVybiBlPT09aX0sZm9jdXM6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1mdW5jdGlvbigpe3RyeXtyZXR1cm4gUy5hY3RpdmVFbGVtZW50fWNhdGNoKGUpe319KCkmJlMuaGFzRm9jdXMoKSYmISEoZS50eXBlfHxlLmhyZWZ8fH5lLnRhYkluZGV4KX0sZW5hYmxlZDprZSghMSksZGlzYWJsZWQ6a2UoITApLGNoZWNrZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIHcoZSwiaW5wdXQiKSYmISFlLmNoZWNrZWR8fHcoZSwib3B0aW9uIikmJiEhZS5zZWxlY3RlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgsITA9PT1lLnNlbGVjdGVkfSxlbXB0eTpmdW5jdGlvbihlKXtmb3IoZT1lLmZpcnN0Q2hpbGQ7ZTtlPWUubmV4dFNpYmxpbmcpaWYoZS5ub2RlVHlwZTw2KXJldHVybiExO3JldHVybiEwfSxwYXJlbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuIVQucHNldWRvcy5lbXB0eShlKX0saGVhZGVyOmZ1bmN0aW9uKGUpe3JldHVybiBUZS50ZXN0KGUubm9kZU5hbWUpfSxpbnB1dDpmdW5jdGlvbihlKXtyZXR1cm4gX2UudGVzdChlLm5vZGVOYW1lKX0sYnV0dG9uOmZ1bmN0aW9uKGUpe3JldHVybiB3KGUsImlucHV0IikmJiJidXR0b24iPT09ZS50eXBlfHx3KGUsImJ1dHRvbiIpfSx0ZXh0OmZ1bmN0aW9uKGUpe3JldHVybiB3KGUsImlucHV0IikmJiJ0ZXh0Ij09PWUudHlwZSYmKG51bGw9PShlPWUuZ2V0QXR0cmlidXRlKCJ0eXBlIikpfHwidGV4dCI9PT1lLnRvTG93ZXJDYXNlKCkpfSxmaXJzdDpPZShmdW5jdGlvbigpe3JldHVyblswXX0pLGxhc3Q6T2UoZnVuY3Rpb24oZSx0KXtyZXR1cm5bdC0xXX0pLGVxOk9lKGZ1bmN0aW9uKGUsdCxuKXtyZXR1cm5bbjwwP24rdDpuXX0pLGV2ZW46T2UoZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49MDtuPHQ7bis9MillLnB1c2gobik7cmV0dXJuIGV9KSxvZGQ6T2UoZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49MTtuPHQ7bis9MillLnB1c2gobik7cmV0dXJuIGV9KSxsdDpPZShmdW5jdGlvbihlLHQsbil7Zm9yKHZhciBpPW48MD9uK3Q6dDxuP3Q6bjswPD0tLWk7KWUucHVzaChpKTtyZXR1cm4gZX0pLGd0Ok9lKGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIGk9bjwwP24rdDpuOysraTx0OyllLnB1c2goaSk7cmV0dXJuIGV9KX19KS5wc2V1ZG9zLm50aD1ULnBzZXVkb3MuZXEse3JhZGlvOiEwLGNoZWNrYm94OiEwLGZpbGU6ITAscGFzc3dvcmQ6ITAsaW1hZ2U6ITB9KVQucHNldWRvc1tpZV09ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB3KGUsImlucHV0IikmJmUudHlwZT09PXR9fShpZSk7Zm9yKGllIGlue3N1Ym1pdDohMCxyZXNldDohMH0pVC5wc2V1ZG9zW2llXT1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuKHcoZSwiaW5wdXQiKXx8dyhlLCJidXR0b24iKSkmJmUudHlwZT09PXR9fShpZSk7ZnVuY3Rpb24gJGUoKXt9ZnVuY3Rpb24gTmUoZSx0KXt2YXIgbixpLHIscyxhLG8sbCxkPXVlW2UrIiAiXTtpZihkKXJldHVybiB0PzA6ZC5zbGljZSgwKTtmb3IoYT1lLG89W10sbD1ULnByZUZpbHRlcjthOyl7Zm9yKHMgaW4gbiYmIShpPXZlLmV4ZWMoYSkpfHwoaSYmKGE9YS5zbGljZShpWzBdLmxlbmd0aCl8fGEpLG8ucHVzaChyPVtdKSksbj0hMSwoaT15ZS5leGVjKGEpKSYmKG49aS5zaGlmdCgpLHIucHVzaCh7dmFsdWU6bix0eXBlOmlbMF0ucmVwbGFjZShlZSwiICIpfSksYT1hLnNsaWNlKG4ubGVuZ3RoKSksVC5maWx0ZXIpIShpPUVlW3NdLmV4ZWMoYSkpfHxsW3NdJiYhKGk9bFtzXShpKSl8fChuPWkuc2hpZnQoKSxyLnB1c2goe3ZhbHVlOm4sdHlwZTpzLG1hdGNoZXM6aX0pLGE9YS5zbGljZShuLmxlbmd0aCkpO2lmKCFuKWJyZWFrfXJldHVybiB0P2EubGVuZ3RoOmE/TC5lcnJvcihlKTp1ZShlLG8pLnNsaWNlKDApfWZ1bmN0aW9uIGplKGUpe2Zvcih2YXIgdD0wLG49ZS5sZW5ndGgsaT0iIjt0PG47dCsrKWkrPWVbdF0udmFsdWU7cmV0dXJuIGl9ZnVuY3Rpb24gcWUoYSxlLHQpe3ZhciBvPWUuZGlyLGw9ZS5uZXh0LGQ9bHx8byxjPXQmJiJwYXJlbnROb2RlIj09PWQsdT1kZSsrO3JldHVybiBlLmZpcnN0P2Z1bmN0aW9uKGUsdCxuKXtmb3IoO2U9ZVtvXTspaWYoMT09PWUubm9kZVR5cGV8fGMpcmV0dXJuIGEoZSx0LG4pO3JldHVybiExfTpmdW5jdGlvbihlLHQsbil7dmFyIGkscixzPVtELHVdO2lmKG4pe2Zvcig7ZT1lW29dOylpZigoMT09PWUubm9kZVR5cGV8fGMpJiZhKGUsdCxuKSlyZXR1cm4hMH1lbHNlIGZvcig7ZT1lW29dOylpZigxPT09ZS5ub2RlVHlwZXx8YylpZihyPWVbTV18fChlW01dPXt9KSxsJiZ3KGUsbCkpZT1lW29dfHxlO2Vsc2V7aWYoKGk9cltkXSkmJmlbMF09PT1EJiZpWzFdPT09dSlyZXR1cm4gc1syXT1pWzJdO2lmKChyW2RdPXMpWzJdPWEoZSx0LG4pKXJldHVybiEwfXJldHVybiExfX1mdW5jdGlvbiB6ZShyKXtyZXR1cm4gMTxyLmxlbmd0aD9mdW5jdGlvbihlLHQsbil7Zm9yKHZhciBpPXIubGVuZ3RoO2ktLTspaWYoIXJbaV0oZSx0LG4pKXJldHVybiExO3JldHVybiEwfTpyWzBdfWZ1bmN0aW9uIEhlKGUsdCxuLGkscil7Zm9yKHZhciBzLGE9W10sbz0wLGw9ZS5sZW5ndGgsZD1udWxsIT10O288bDtvKyspIShzPWVbb10pfHxuJiYhbihzLGkscil8fChhLnB1c2gocyksZCYmdC5wdXNoKG8pKTtyZXR1cm4gYX1mdW5jdGlvbiBSZShoLGYsbSxnLHYsZSl7cmV0dXJuIGcmJiFnW01dJiYoZz1SZShnKSksdiYmIXZbTV0mJih2PVJlKHYsZSkpLGwoZnVuY3Rpb24oZSx0LG4saSl7dmFyIHIscyxhLG8sbD1bXSxkPVtdLGM9dC5sZW5ndGgsdT1lfHxmdW5jdGlvbihlLHQsbil7Zm9yKHZhciBpPTAscj10Lmxlbmd0aDtpPHI7aSsrKUwoZSx0W2ldLG4pO3JldHVybiBufShmfHwiKiIsbi5ub2RlVHlwZT9bbl06bixbXSkscD0haHx8IWUmJmY/dTpIZSh1LGwsaCxuLGkpO2lmKG0/bShwLG89dnx8KGU/aDpjfHxnKT9bXTp0LG4saSk6bz1wLGcpZm9yKHI9SGUobyxkKSxnKHIsW10sbixpKSxzPXIubGVuZ3RoO3MtLTspKGE9cltzXSkmJihvW2Rbc11dPSEocFtkW3NdXT1hKSk7aWYoZSl7aWYodnx8aCl7aWYodil7Zm9yKHI9W10scz1vLmxlbmd0aDtzLS07KShhPW9bc10pJiZyLnB1c2gocFtzXT1hKTt2KG51bGwsbz1bXSxyLGkpfWZvcihzPW8ubGVuZ3RoO3MtLTspKGE9b1tzXSkmJi0xPChyPXY/Yi5jYWxsKGUsYSk6bFtzXSkmJihlW3JdPSEodFtyXT1hKSl9fWVsc2Ugbz1IZShvPT09dD9vLnNwbGljZShjLG8ubGVuZ3RoKTpvKSx2P3YobnVsbCx0LG8saSk6QS5hcHBseSh0LG8pfSl9ZnVuY3Rpb24gRmUoZyx2KXtmdW5jdGlvbiBlKGUsdCxuLGkscil7dmFyIHMsYSxvLGw9MCxkPSIwIixjPWUmJltdLHU9W10scD1yZSxoPWV8fGImJlQuZmluZC5UQUcoIioiLHIpLGY9RCs9bnVsbD09cD8xOk1hdGgucmFuZG9tKCl8fC4xLG09aC5sZW5ndGg7Zm9yKHImJihyZT10PT1TfHx0fHxyKTtkIT09bSYmbnVsbCE9KHM9aFtkXSk7ZCsrKXtpZihiJiZzKXtmb3IoYT0wLHR8fHMub3duZXJEb2N1bWVudD09U3x8KEllKHMpLG49IUMpO289Z1thKytdOylpZihvKHMsdHx8UyxuKSl7QS5jYWxsKGkscyk7YnJlYWt9ciYmKEQ9Zil9eSYmKChzPSFvJiZzKSYmbC0tLGUpJiZjLnB1c2gocyl9aWYobCs9ZCx5JiZkIT09bCl7Zm9yKGE9MDtvPXZbYSsrXTspbyhjLHUsdCxuKTtpZihlKXtpZigwPGwpZm9yKDtkLS07KWNbZF18fHVbZF18fCh1W2RdPUsuY2FsbChpKSk7dT1IZSh1KX1BLmFwcGx5KGksdSksciYmIWUmJjA8dS5sZW5ndGgmJjE8bCt2Lmxlbmd0aCYmXy51bmlxdWVTb3J0KGkpfXJldHVybiByJiYoRD1mLHJlPXApLGN9dmFyIHk9MDx2Lmxlbmd0aCxiPTA8Zy5sZW5ndGg7cmV0dXJuIHk/bChlKTplfWZ1bmN0aW9uIEJlKGUsdCl7dmFyIG4saT1bXSxyPVtdLHM9cGVbZSsiICJdO2lmKCFzKXtmb3Iobj0odD10fHxOZShlKSkubGVuZ3RoO24tLTspKChzPWZ1bmN0aW9uIGUodCl7Zm9yKHZhciBpLG4scixzPXQubGVuZ3RoLGE9VC5yZWxhdGl2ZVt0WzBdLnR5cGVdLG89YXx8VC5yZWxhdGl2ZVsiICJdLGw9YT8xOjAsZD1xZShmdW5jdGlvbihlKXtyZXR1cm4gZT09PWl9LG8sITApLGM9cWUoZnVuY3Rpb24oZSl7cmV0dXJuLTE8Yi5jYWxsKGksZSl9LG8sITApLHU9W2Z1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZT0hYSYmKG58fHQhPXJlKXx8KChpPXQpLm5vZGVUeXBlP2Q6YykoZSx0LG4pLGk9bnVsbCxlfV07bDxzO2wrKylpZihuPVQucmVsYXRpdmVbdFtsXS50eXBlXSl1PVtxZSh6ZSh1KSxuKV07ZWxzZXtpZigobj1ULmZpbHRlclt0W2xdLnR5cGVdLmFwcGx5KG51bGwsdFtsXS5tYXRjaGVzKSlbTV0pe2ZvcihyPSsrbDtyPHMmJiFULnJlbGF0aXZlW3Rbcl0udHlwZV07cisrKTtyZXR1cm4gUmUoMTxsJiZ6ZSh1KSwxPGwmJmplKHQuc2xpY2UoMCxsLTEpLmNvbmNhdCh7dmFsdWU6IiAiPT09dFtsLTJdLnR5cGU/IioiOiIifSkpLnJlcGxhY2UoZWUsIiQxIiksbixsPHImJmUodC5zbGljZShsLHIpKSxyPHMmJmUodD10LnNsaWNlKHIpKSxyPHMmJmplKHQpKX11LnB1c2gobil9cmV0dXJuIHplKHUpfSh0W25dKSlbTV0/aTpyKS5wdXNoKHMpOyhzPXBlKGUsRmUocixpKSkpLnNlbGVjdG9yPWV9cmV0dXJuIHN9ZnVuY3Rpb24gV2UoZSx0LG4saSl7dmFyIHIscyxhLG8sbCxkPSJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlLGM9IWkmJk5lKGU9ZC5zZWxlY3Rvcnx8ZSk7aWYobj1ufHxbXSwxPT09Yy5sZW5ndGgpe2lmKDI8KHM9Y1swXT1jWzBdLnNsaWNlKDApKS5sZW5ndGgmJiJJRCI9PT0oYT1zWzBdKS50eXBlJiY5PT09dC5ub2RlVHlwZSYmQyYmVC5yZWxhdGl2ZVtzWzFdLnR5cGVdKXtpZighKHQ9KFQuZmluZC5JRChhLm1hdGNoZXNbMF0ucmVwbGFjZSh1LGgpLHQpfHxbXSlbMF0pKXJldHVybiBuO2QmJih0PXQucGFyZW50Tm9kZSksZT1lLnNsaWNlKHMuc2hpZnQoKS52YWx1ZS5sZW5ndGgpfWZvcihyPUVlLm5lZWRzQ29udGV4dC50ZXN0KGUpPzA6cy5sZW5ndGg7ci0tJiYoYT1zW3JdLCFULnJlbGF0aXZlW289YS50eXBlXSk7KWlmKChsPVQuZmluZFtvXSkmJihpPWwoYS5tYXRjaGVzWzBdLnJlcGxhY2UodSxoKSxDZS50ZXN0KHNbMF0udHlwZSkmJlBlKHQucGFyZW50Tm9kZSl8fHQpKSl7aWYocy5zcGxpY2UociwxKSxlPWkubGVuZ3RoJiZqZShzKSlicmVhaztyZXR1cm4gQS5hcHBseShuLGkpLG59fXJldHVybihkfHxCZShlLGMpKShpLHQsIUMsbiwhdHx8Q2UudGVzdChlKSYmUGUodC5wYXJlbnROb2RlKXx8dCksbn0kZS5wcm90b3R5cGU9VC5maWx0ZXJzPVQucHNldWRvcyxULnNldEZpbHRlcnM9bmV3ICRlLG0uc29ydFN0YWJsZT1NLnNwbGl0KCIiKS5zb3J0KGZlKS5qb2luKCIiKT09PU0sSWUoKSxtLnNvcnREZXRhY2hlZD1MZShmdW5jdGlvbihlKXtyZXR1cm4gMSZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKFMuY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKSl9KSxfLmZpbmQ9TCxfLmV4cHJbIjoiXT1fLmV4cHIucHNldWRvcyxfLnVuaXF1ZT1fLnVuaXF1ZVNvcnQsTC5jb21waWxlPUJlLEwuc2VsZWN0PVdlLEwuc2V0RG9jdW1lbnQ9SWUsTC50b2tlbml6ZT1OZSxMLmVzY2FwZT1fLmVzY2FwZVNlbGVjdG9yLEwuZ2V0VGV4dD1fLnRleHQsTC5pc1hNTD1fLmlzWE1MRG9jLEwuc2VsZWN0b3JzPV8uZXhwcixMLnN1cHBvcnQ9Xy5zdXBwb3J0LEwudW5pcXVlU29ydD1fLnVuaXF1ZVNvcnQ7ZnVuY3Rpb24gR2UoZSx0LG4pe2Zvcih2YXIgaT1bXSxyPXZvaWQgMCE9PW47KGU9ZVt0XSkmJjkhPT1lLm5vZGVUeXBlOylpZigxPT09ZS5ub2RlVHlwZSl7aWYociYmXyhlKS5pcyhuKSlicmVhaztpLnB1c2goZSl9cmV0dXJuIGl9ZnVuY3Rpb24gWWUoZSx0KXtmb3IodmFyIG49W107ZTtlPWUubmV4dFNpYmxpbmcpMT09PWUubm9kZVR5cGUmJmUhPT10JiZuLnB1c2goZSk7cmV0dXJuIG59dmFyIFhlPV8uZXhwci5tYXRjaC5uZWVkc0NvbnRleHQsVmU9L148KFthLXpdW15cL1wwPjpceDIwXHRcclxuXGZdKilbXHgyMFx0XHJcblxmXSpcLz8+KD86PFwvXDE+fCkkL2k7ZnVuY3Rpb24gVWUoZSxuLGkpe3JldHVybiB5KG4pP18uZ3JlcChlLGZ1bmN0aW9uKGUsdCl7cmV0dXJuISFuLmNhbGwoZSx0LGUpIT09aX0pOm4ubm9kZVR5cGU/Xy5ncmVwKGUsZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1uIT09aX0pOiJzdHJpbmciIT10eXBlb2Ygbj9fLmdyZXAoZSxmdW5jdGlvbihlKXtyZXR1cm4tMTxiLmNhbGwobixlKSE9PWl9KTpfLmZpbHRlcihuLGUsaSl9Xy5maWx0ZXI9ZnVuY3Rpb24oZSx0LG4pe3ZhciBpPXRbMF07cmV0dXJuIG4mJihlPSI6bm90KCIrZSsiKSIpLDE9PT10Lmxlbmd0aCYmMT09PWkubm9kZVR5cGU/Xy5maW5kLm1hdGNoZXNTZWxlY3RvcihpLGUpP1tpXTpbXTpfLmZpbmQubWF0Y2hlcyhlLF8uZ3JlcCh0LGZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZX0pKX0sXy5mbi5leHRlbmQoe2ZpbmQ6ZnVuY3Rpb24oZSl7dmFyIHQsbixpPXRoaXMubGVuZ3RoLHI9dGhpcztpZigic3RyaW5nIiE9dHlwZW9mIGUpcmV0dXJuIHRoaXMucHVzaFN0YWNrKF8oZSkuZmlsdGVyKGZ1bmN0aW9uKCl7Zm9yKHQ9MDt0PGk7dCsrKWlmKF8uY29udGFpbnMoclt0XSx0aGlzKSlyZXR1cm4hMH0pKTtmb3Iobj10aGlzLnB1c2hTdGFjayhbXSksdD0wO3Q8aTt0KyspXy5maW5kKGUsclt0XSxuKTtyZXR1cm4gMTxpP18udW5pcXVlU29ydChuKTpufSxmaWx0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKFVlKHRoaXMsZXx8W10sITEpKX0sbm90OmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnB1c2hTdGFjayhVZSh0aGlzLGV8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGUpe3JldHVybiEhVWUodGhpcywic3RyaW5nIj09dHlwZW9mIGUmJlhlLnRlc3QoZSk/XyhlKTplfHxbXSwhMSkubGVuZ3RofX0pO3ZhciBRZSxLZT0vXig/OlxzKig8W1x3XFddKz4pW14+XSp8IyhbXHctXSspKSQvLFplPSgoXy5mbi5pbml0PWZ1bmN0aW9uKGUsdCxuKXtpZihlKXtpZihuPW58fFFlLCJzdHJpbmciIT10eXBlb2YgZSlyZXR1cm4gZS5ub2RlVHlwZT8odGhpc1swXT1lLHRoaXMubGVuZ3RoPTEsdGhpcyk6eShlKT92b2lkIDAhPT1uLnJlYWR5P24ucmVhZHkoZSk6ZShfKTpfLm1ha2VBcnJheShlLHRoaXMpO2lmKCEoaT0iPCI9PT1lWzBdJiYiPiI9PT1lW2UubGVuZ3RoLTFdJiYzPD1lLmxlbmd0aD9bbnVsbCxlLG51bGxdOktlLmV4ZWMoZSkpfHwhaVsxXSYmdClyZXR1cm4oIXR8fHQuanF1ZXJ5P3R8fG46dGhpcy5jb25zdHJ1Y3Rvcih0KSkuZmluZChlKTtpZihpWzFdKXtpZih0PXQgaW5zdGFuY2VvZiBfP3RbMF06dCxfLm1lcmdlKHRoaXMsXy5wYXJzZUhUTUwoaVsxXSx0JiZ0Lm5vZGVUeXBlP3Qub3duZXJEb2N1bWVudHx8dDpFLCEwKSksVmUudGVzdChpWzFdKSYmXy5pc1BsYWluT2JqZWN0KHQpKWZvcih2YXIgaSBpbiB0KXkodGhpc1tpXSk/dGhpc1tpXSh0W2ldKTp0aGlzLmF0dHIoaSx0W2ldKX1lbHNlKG49RS5nZXRFbGVtZW50QnlJZChpWzJdKSkmJih0aGlzWzBdPW4sdGhpcy5sZW5ndGg9MSl9cmV0dXJuIHRoaXN9KS5wcm90b3R5cGU9Xy5mbixRZT1fKEUpLC9eKD86cGFyZW50c3xwcmV2KD86VW50aWx8QWxsKSkvKSxKZT17Y2hpbGRyZW46ITAsY29udGVudHM6ITAsbmV4dDohMCxwcmV2OiEwfTtmdW5jdGlvbiBldChlLHQpe2Zvcig7KGU9ZVt0XSkmJjEhPT1lLm5vZGVUeXBlOyk7cmV0dXJuIGV9Xy5mbi5leHRlbmQoe2hhczpmdW5jdGlvbihlKXt2YXIgdD1fKGUsdGhpcyksbj10Lmxlbmd0aDtyZXR1cm4gdGhpcy5maWx0ZXIoZnVuY3Rpb24oKXtmb3IodmFyIGU9MDtlPG47ZSsrKWlmKF8uY29udGFpbnModGhpcyx0W2VdKSlyZXR1cm4hMH0pfSxjbG9zZXN0OmZ1bmN0aW9uKGUsdCl7dmFyIG4saT0wLHI9dGhpcy5sZW5ndGgscz1bXSxhPSJzdHJpbmciIT10eXBlb2YgZSYmXyhlKTtpZighWGUudGVzdChlKSlmb3IoO2k8cjtpKyspZm9yKG49dGhpc1tpXTtuJiZuIT09dDtuPW4ucGFyZW50Tm9kZSlpZihuLm5vZGVUeXBlPDExJiYoYT8tMTxhLmluZGV4KG4pOjE9PT1uLm5vZGVUeXBlJiZfLmZpbmQubWF0Y2hlc1NlbGVjdG9yKG4sZSkpKXtzLnB1c2gobik7YnJlYWt9cmV0dXJuIHRoaXMucHVzaFN0YWNrKDE8cy5sZW5ndGg/Xy51bmlxdWVTb3J0KHMpOnMpfSxpbmRleDpmdW5jdGlvbihlKXtyZXR1cm4gZT8ic3RyaW5nIj09dHlwZW9mIGU/Yi5jYWxsKF8oZSksdGhpc1swXSk6Yi5jYWxsKHRoaXMsZS5qcXVlcnk/ZVswXTplKTp0aGlzWzBdJiZ0aGlzWzBdLnBhcmVudE5vZGU/dGhpcy5maXJzdCgpLnByZXZBbGwoKS5sZW5ndGg6LTF9LGFkZDpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLnB1c2hTdGFjayhfLnVuaXF1ZVNvcnQoXy5tZXJnZSh0aGlzLmdldCgpLF8oZSx0KSkpKX0sYWRkQmFjazpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5hZGQobnVsbD09ZT90aGlzLnByZXZPYmplY3Q6dGhpcy5wcmV2T2JqZWN0LmZpbHRlcihlKSl9fSksXy5lYWNoKHtwYXJlbnQ6ZnVuY3Rpb24oZSl7ZT1lLnBhcmVudE5vZGU7cmV0dXJuIGUmJjExIT09ZS5ub2RlVHlwZT9lOm51bGx9LHBhcmVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIEdlKGUsInBhcmVudE5vZGUiKX0scGFyZW50c1VudGlsOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gR2UoZSwicGFyZW50Tm9kZSIsbil9LG5leHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGV0KGUsIm5leHRTaWJsaW5nIil9LHByZXY6ZnVuY3Rpb24oZSl7cmV0dXJuIGV0KGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0QWxsOmZ1bmN0aW9uKGUpe3JldHVybiBHZShlLCJuZXh0U2libGluZyIpfSxwcmV2QWxsOmZ1bmN0aW9uKGUpe3JldHVybiBHZShlLCJwcmV2aW91c1NpYmxpbmciKX0sbmV4dFVudGlsOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gR2UoZSwibmV4dFNpYmxpbmciLG4pfSxwcmV2VW50aWw6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBHZShlLCJwcmV2aW91c1NpYmxpbmciLG4pfSxzaWJsaW5nczpmdW5jdGlvbihlKXtyZXR1cm4gWWUoKGUucGFyZW50Tm9kZXx8e30pLmZpcnN0Q2hpbGQsZSl9LGNoaWxkcmVuOmZ1bmN0aW9uKGUpe3JldHVybiBZZShlLmZpcnN0Q2hpbGQpfSxjb250ZW50czpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbCE9ZS5jb250ZW50RG9jdW1lbnQmJnEoZS5jb250ZW50RG9jdW1lbnQpP2UuY29udGVudERvY3VtZW50Oih3KGUsInRlbXBsYXRlIikmJihlPWUuY29udGVudHx8ZSksXy5tZXJnZShbXSxlLmNoaWxkTm9kZXMpKX19LGZ1bmN0aW9uKGkscil7Xy5mbltpXT1mdW5jdGlvbihlLHQpe3ZhciBuPV8ubWFwKHRoaXMscixlKTtyZXR1cm4odD0iVW50aWwiIT09aS5zbGljZSgtNSk/ZTp0KSYmInN0cmluZyI9PXR5cGVvZiB0JiYobj1fLmZpbHRlcih0LG4pKSwxPHRoaXMubGVuZ3RoJiYoSmVbaV18fF8udW5pcXVlU29ydChuKSxaZS50ZXN0KGkpKSYmbi5yZXZlcnNlKCksdGhpcy5wdXNoU3RhY2sobil9fSk7dmFyIGs9L1teXHgyMFx0XHJcblxmXSsvZztmdW5jdGlvbiB0dChlKXtyZXR1cm4gZX1mdW5jdGlvbiBudChlKXt0aHJvdyBlfWZ1bmN0aW9uIGl0KGUsdCxuLGkpe3ZhciByO3RyeXtlJiZ5KHI9ZS5wcm9taXNlKT9yLmNhbGwoZSkuZG9uZSh0KS5mYWlsKG4pOmUmJnkocj1lLnRoZW4pP3IuY2FsbChlLHQsbik6dC5hcHBseSh2b2lkIDAsW2VdLnNsaWNlKGkpKX1jYXRjaChlKXtuLmFwcGx5KHZvaWQgMCxbZV0pfX1fLkNhbGxiYWNrcz1mdW5jdGlvbihpKXt2YXIgZSxuO2k9InN0cmluZyI9PXR5cGVvZiBpPyhlPWksbj17fSxfLmVhY2goZS5tYXRjaChrKXx8W10sZnVuY3Rpb24oZSx0KXtuW3RdPSEwfSksbik6Xy5leHRlbmQoe30saSk7ZnVuY3Rpb24gcigpe2ZvcihvPW98fGkub25jZSxhPXM9ITA7ZC5sZW5ndGg7Yz0tMSlmb3IodD1kLnNoaWZ0KCk7KytjPGwubGVuZ3RoOykhMT09PWxbY10uYXBwbHkodFswXSx0WzFdKSYmaS5zdG9wT25GYWxzZSYmKGM9bC5sZW5ndGgsdD0hMSk7aS5tZW1vcnl8fCh0PSExKSxzPSExLG8mJihsPXQ/W106IiIpfXZhciBzLHQsYSxvLGw9W10sZD1bXSxjPS0xLHU9e2FkZDpmdW5jdGlvbigpe3JldHVybiBsJiYodCYmIXMmJihjPWwubGVuZ3RoLTEsZC5wdXNoKHQpKSxmdW5jdGlvbiBuKGUpe18uZWFjaChlLGZ1bmN0aW9uKGUsdCl7eSh0KT9pLnVuaXF1ZSYmdS5oYXModCl8fGwucHVzaCh0KTp0JiZ0Lmxlbmd0aCYmInN0cmluZyIhPT1WKHQpJiZuKHQpfSl9KGFyZ3VtZW50cyksdCkmJiFzJiZyKCksdGhpc30scmVtb3ZlOmZ1bmN0aW9uKCl7cmV0dXJuIF8uZWFjaChhcmd1bWVudHMsZnVuY3Rpb24oZSx0KXtmb3IodmFyIG47LTE8KG49Xy5pbkFycmF5KHQsbCxuKSk7KWwuc3BsaWNlKG4sMSksbjw9YyYmYy0tfSksdGhpc30saGFzOmZ1bmN0aW9uKGUpe3JldHVybiBlPy0xPF8uaW5BcnJheShlLGwpOjA8bC5sZW5ndGh9LGVtcHR5OmZ1bmN0aW9uKCl7cmV0dXJuIGw9bCYmW10sdGhpc30sZGlzYWJsZTpmdW5jdGlvbigpe3JldHVybiBvPWQ9W10sbD10PSIiLHRoaXN9LGRpc2FibGVkOmZ1bmN0aW9uKCl7cmV0dXJuIWx9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gbz1kPVtdLHR8fHN8fChsPXQ9IiIpLHRoaXN9LGxvY2tlZDpmdW5jdGlvbigpe3JldHVybiEhb30sZmlyZVdpdGg6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gb3x8KHQ9W2UsKHQ9dHx8W10pLnNsaWNlP3Quc2xpY2UoKTp0XSxkLnB1c2godCkscyl8fHIoKSx0aGlzfSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIHUuZmlyZVdpdGgodGhpcyxhcmd1bWVudHMpLHRoaXN9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFhfX07cmV0dXJuIHV9LF8uZXh0ZW5kKHtEZWZlcnJlZDpmdW5jdGlvbihlKXt2YXIgcz1bWyJub3RpZnkiLCJwcm9ncmVzcyIsXy5DYWxsYmFja3MoIm1lbW9yeSIpLF8uQ2FsbGJhY2tzKCJtZW1vcnkiKSwyXSxbInJlc29sdmUiLCJkb25lIixfLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSxfLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwwLCJyZXNvbHZlZCJdLFsicmVqZWN0IiwiZmFpbCIsXy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksXy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksMSwicmVqZWN0ZWQiXV0scj0icGVuZGluZyIsYT17c3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gcn0sYWx3YXlzOmZ1bmN0aW9uKCl7cmV0dXJuIG8uZG9uZShhcmd1bWVudHMpLmZhaWwoYXJndW1lbnRzKSx0aGlzfSxjYXRjaDpmdW5jdGlvbihlKXtyZXR1cm4gYS50aGVuKG51bGwsZSl9LHBpcGU6ZnVuY3Rpb24oKXt2YXIgcj1hcmd1bWVudHM7cmV0dXJuIF8uRGVmZXJyZWQoZnVuY3Rpb24oaSl7Xy5lYWNoKHMsZnVuY3Rpb24oZSx0KXt2YXIgbj15KHJbdFs0XV0pJiZyW3RbNF1dO29bdFsxXV0oZnVuY3Rpb24oKXt2YXIgZT1uJiZuLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtlJiZ5KGUucHJvbWlzZSk/ZS5wcm9taXNlKCkucHJvZ3Jlc3MoaS5ub3RpZnkpLmRvbmUoaS5yZXNvbHZlKS5mYWlsKGkucmVqZWN0KTppW3RbMF0rIldpdGgiXSh0aGlzLG4/W2VdOmFyZ3VtZW50cyl9KX0pLHI9bnVsbH0pLnByb21pc2UoKX0sdGhlbjpmdW5jdGlvbih0LG4saSl7dmFyIGw9MDtmdW5jdGlvbiBkKHIscyxhLG8pe3JldHVybiBmdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXt2YXIgZSx0O2lmKCEocjxsKSl7aWYoKGU9YS5hcHBseShuLGkpKT09PXMucHJvbWlzZSgpKXRocm93IG5ldyBUeXBlRXJyb3IoIlRoZW5hYmxlIHNlbGYtcmVzb2x1dGlvbiIpO3Q9ZSYmKCJvYmplY3QiPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGUpJiZlLnRoZW4seSh0KT9vP3QuY2FsbChlLGQobCxzLHR0LG8pLGQobCxzLG50LG8pKToobCsrLHQuY2FsbChlLGQobCxzLHR0LG8pLGQobCxzLG50LG8pLGQobCxzLHR0LHMubm90aWZ5V2l0aCkpKTooYSE9PXR0JiYobj12b2lkIDAsaT1bZV0pLChvfHxzLnJlc29sdmVXaXRoKShuLGkpKX19dmFyIG49dGhpcyxpPWFyZ3VtZW50cyx0PW8/ZTpmdW5jdGlvbigpe3RyeXtlKCl9Y2F0Y2goZSl7Xy5EZWZlcnJlZC5leGNlcHRpb25Ib29rJiZfLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2soZSx0LmVycm9yKSxsPD1yKzEmJihhIT09bnQmJihuPXZvaWQgMCxpPVtlXSkscy5yZWplY3RXaXRoKG4saSkpfX07cj90KCk6KF8uRGVmZXJyZWQuZ2V0RXJyb3JIb29rP3QuZXJyb3I9Xy5EZWZlcnJlZC5nZXRFcnJvckhvb2soKTpfLkRlZmVycmVkLmdldFN0YWNrSG9vayYmKHQuZXJyb3I9Xy5EZWZlcnJlZC5nZXRTdGFja0hvb2soKSkseC5zZXRUaW1lb3V0KHQpKX19cmV0dXJuIF8uRGVmZXJyZWQoZnVuY3Rpb24oZSl7c1swXVszXS5hZGQoZCgwLGUseShpKT9pOnR0LGUubm90aWZ5V2l0aCkpLHNbMV1bM10uYWRkKGQoMCxlLHkodCk/dDp0dCkpLHNbMl1bM10uYWRkKGQoMCxlLHkobik/bjpudCkpfSkucHJvbWlzZSgpfSxwcm9taXNlOmZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lP18uZXh0ZW5kKGUsYSk6YX19LG89e307cmV0dXJuIF8uZWFjaChzLGZ1bmN0aW9uKGUsdCl7dmFyIG49dFsyXSxpPXRbNV07YVt0WzFdXT1uLmFkZCxpJiZuLmFkZChmdW5jdGlvbigpe3I9aX0sc1szLWVdWzJdLmRpc2FibGUsc1szLWVdWzNdLmRpc2FibGUsc1swXVsyXS5sb2NrLHNbMF1bM10ubG9jayksbi5hZGQodFszXS5maXJlKSxvW3RbMF1dPWZ1bmN0aW9uKCl7cmV0dXJuIG9bdFswXSsiV2l0aCJdKHRoaXM9PT1vP3ZvaWQgMDp0aGlzLGFyZ3VtZW50cyksdGhpc30sb1t0WzBdKyJXaXRoIl09bi5maXJlV2l0aH0pLGEucHJvbWlzZShvKSxlJiZlLmNhbGwobyxvKSxvfSx3aGVuOmZ1bmN0aW9uKGUpe2Z1bmN0aW9uIHQodCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JbdF09dGhpcyxzW3RdPTE8YXJndW1lbnRzLmxlbmd0aD9vLmNhbGwoYXJndW1lbnRzKTplLC0tbnx8YS5yZXNvbHZlV2l0aChyLHMpfX12YXIgbj1hcmd1bWVudHMubGVuZ3RoLGk9bixyPUFycmF5KGkpLHM9by5jYWxsKGFyZ3VtZW50cyksYT1fLkRlZmVycmVkKCk7aWYobjw9MSYmKGl0KGUsYS5kb25lKHQoaSkpLnJlc29sdmUsYS5yZWplY3QsIW4pLCJwZW5kaW5nIj09PWEuc3RhdGUoKXx8eShzW2ldJiZzW2ldLnRoZW4pKSlyZXR1cm4gYS50aGVuKCk7Zm9yKDtpLS07KWl0KHNbaV0sdChpKSxhLnJlamVjdCk7cmV0dXJuIGEucHJvbWlzZSgpfX0pO3ZhciBydD0vXihFdmFsfEludGVybmFsfFJhbmdlfFJlZmVyZW5jZXxTeW50YXh8VHlwZXxVUkkpRXJyb3IkLyxzdD0oXy5EZWZlcnJlZC5leGNlcHRpb25Ib29rPWZ1bmN0aW9uKGUsdCl7eC5jb25zb2xlJiZ4LmNvbnNvbGUud2FybiYmZSYmcnQudGVzdChlLm5hbWUpJiZ4LmNvbnNvbGUud2FybigialF1ZXJ5LkRlZmVycmVkIGV4Y2VwdGlvbjogIitlLm1lc3NhZ2UsZS5zdGFjayx0KX0sXy5yZWFkeUV4Y2VwdGlvbj1mdW5jdGlvbihlKXt4LnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlfSl9LF8uRGVmZXJyZWQoKSk7ZnVuY3Rpb24gYXQoKXtFLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGF0KSx4LnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLGF0KSxfLnJlYWR5KCl9Xy5mbi5yZWFkeT1mdW5jdGlvbihlKXtyZXR1cm4gc3QudGhlbihlKS5jYXRjaChmdW5jdGlvbihlKXtfLnJlYWR5RXhjZXB0aW9uKGUpfSksdGhpc30sXy5leHRlbmQoe2lzUmVhZHk6ITEscmVhZHlXYWl0OjEscmVhZHk6ZnVuY3Rpb24oZSl7KCEwPT09ZT8tLV8ucmVhZHlXYWl0Ol8uaXNSZWFkeSl8fChfLmlzUmVhZHk9ITApIT09ZSYmMDwtLV8ucmVhZHlXYWl0fHxzdC5yZXNvbHZlV2l0aChFLFtfXSl9fSksXy5yZWFkeS50aGVuPXN0LnRoZW4sImNvbXBsZXRlIj09PUUucmVhZHlTdGF0ZXx8ImxvYWRpbmciIT09RS5yZWFkeVN0YXRlJiYhRS5kb2N1bWVudEVsZW1lbnQuZG9TY3JvbGw/eC5zZXRUaW1lb3V0KF8ucmVhZHkpOihFLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGF0KSx4LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGF0KSk7ZnVuY3Rpb24gYyhlLHQsbixpLHIscyxhKXt2YXIgbz0wLGw9ZS5sZW5ndGgsZD1udWxsPT1uO2lmKCJvYmplY3QiPT09VihuKSlmb3IobyBpbiByPSEwLG4pYyhlLHQsbyxuW29dLCEwLHMsYSk7ZWxzZSBpZih2b2lkIDAhPT1pJiYocj0hMCx5KGkpfHwoYT0hMCksdD1kP2E/KHQuY2FsbChlLGkpLG51bGwpOihkPXQsZnVuY3Rpb24oZSx0LG4pe3JldHVybiBkLmNhbGwoXyhlKSxuKX0pOnQpKWZvcig7bzxsO28rKyl0KGVbb10sbixhP2k6aS5jYWxsKGVbb10sbyx0KGVbb10sbikpKTtyZXR1cm4gcj9lOmQ/dC5jYWxsKGUpOmw/dChlWzBdLG4pOnN9dmFyIG90PS9eLW1zLS8sbHQ9Ly0oW2Etel0pL2c7ZnVuY3Rpb24gZHQoZSx0KXtyZXR1cm4gdC50b1VwcGVyQ2FzZSgpfWZ1bmN0aW9uIE8oZSl7cmV0dXJuIGUucmVwbGFjZShvdCwibXMtIikucmVwbGFjZShsdCxkdCl9ZnVuY3Rpb24gY3QoZSl7cmV0dXJuIDE9PT1lLm5vZGVUeXBlfHw5PT09ZS5ub2RlVHlwZXx8IStlLm5vZGVUeXBlfWZ1bmN0aW9uIHV0KCl7dGhpcy5leHBhbmRvPV8uZXhwYW5kbyt1dC51aWQrK311dC51aWQ9MSx1dC5wcm90b3R5cGU9e2NhY2hlOmZ1bmN0aW9uKGUpe3ZhciB0PWVbdGhpcy5leHBhbmRvXTtyZXR1cm4gdHx8KHQ9e30sY3QoZSkmJihlLm5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT10Ok9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHRoaXMuZXhwYW5kbyx7dmFsdWU6dCxjb25maWd1cmFibGU6ITB9KSkpLHR9LHNldDpmdW5jdGlvbihlLHQsbil7dmFyIGkscj10aGlzLmNhY2hlKGUpO2lmKCJzdHJpbmciPT10eXBlb2YgdClyW08odCldPW47ZWxzZSBmb3IoaSBpbiB0KXJbTyhpKV09dFtpXTtyZXR1cm4gcn0sZ2V0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/dGhpcy5jYWNoZShlKTplW3RoaXMuZXhwYW5kb10mJmVbdGhpcy5leHBhbmRvXVtPKHQpXX0sYWNjZXNzOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdm9pZCAwPT09dHx8dCYmInN0cmluZyI9PXR5cGVvZiB0JiZ2b2lkIDA9PT1uP3RoaXMuZ2V0KGUsdCk6KHRoaXMuc2V0KGUsdCxuKSx2b2lkIDAhPT1uP246dCl9LHJlbW92ZTpmdW5jdGlvbihlLHQpe3ZhciBuLGk9ZVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PWkpe2lmKHZvaWQgMCE9PXQpe249KHQ9QXJyYXkuaXNBcnJheSh0KT90Lm1hcChPKToodD1PKHQpKWluIGk/W3RdOnQubWF0Y2goayl8fFtdKS5sZW5ndGg7Zm9yKDtuLS07KWRlbGV0ZSBpW3Rbbl1dfXZvaWQgMCE9PXQmJiFfLmlzRW1wdHlPYmplY3QoaSl8fChlLm5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT12b2lkIDA6ZGVsZXRlIGVbdGhpcy5leHBhbmRvXSl9fSxoYXNEYXRhOmZ1bmN0aW9uKGUpe2U9ZVt0aGlzLmV4cGFuZG9dO3JldHVybiB2b2lkIDAhPT1lJiYhXy5pc0VtcHR5T2JqZWN0KGUpfX07dmFyIHY9bmV3IHV0LGQ9bmV3IHV0LHB0PS9eKD86XHtbXHdcV10qXH18XFtbXHdcV10qXF0pJC8saHQ9L1tBLVpdL2c7ZnVuY3Rpb24gZnQoZSx0LG4pe3ZhciBpLHI7aWYodm9pZCAwPT09biYmMT09PWUubm9kZVR5cGUpaWYoaT0iZGF0YS0iK3QucmVwbGFjZShodCwiLSQmIikudG9Mb3dlckNhc2UoKSwic3RyaW5nIj09dHlwZW9mKG49ZS5nZXRBdHRyaWJ1dGUoaSkpKXt0cnl7bj0idHJ1ZSI9PT0ocj1uKXx8ImZhbHNlIiE9PXImJigibnVsbCI9PT1yP251bGw6cj09PStyKyIiPytyOnB0LnRlc3Qocik/SlNPTi5wYXJzZShyKTpyKX1jYXRjaChlKXt9ZC5zZXQoZSx0LG4pfWVsc2Ugbj12b2lkIDA7cmV0dXJuIG59Xy5leHRlbmQoe2hhc0RhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuIGQuaGFzRGF0YShlKXx8di5oYXNEYXRhKGUpfSxkYXRhOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZC5hY2Nlc3MoZSx0LG4pfSxyZW1vdmVEYXRhOmZ1bmN0aW9uKGUsdCl7ZC5yZW1vdmUoZSx0KX0sX2RhdGE6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB2LmFjY2VzcyhlLHQsbil9LF9yZW1vdmVEYXRhOmZ1bmN0aW9uKGUsdCl7di5yZW1vdmUoZSx0KX19KSxfLmZuLmV4dGVuZCh7ZGF0YTpmdW5jdGlvbihuLGUpe3ZhciB0LGkscixzPXRoaXNbMF0sYT1zJiZzLmF0dHJpYnV0ZXM7aWYodm9pZCAwIT09bilyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIG4/dGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZC5zZXQodGhpcyxuKX0pOmModGhpcyxmdW5jdGlvbihlKXt2YXIgdDtpZihzJiZ2b2lkIDA9PT1lKXJldHVybiB2b2lkIDAhPT0odD1kLmdldChzLG4pKXx8dm9pZCAwIT09KHQ9ZnQocyxuKSk/dDp2b2lkIDA7dGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZC5zZXQodGhpcyxuLGUpfSl9LG51bGwsZSwxPGFyZ3VtZW50cy5sZW5ndGgsbnVsbCwhMCk7aWYodGhpcy5sZW5ndGgmJihyPWQuZ2V0KHMpLDE9PT1zLm5vZGVUeXBlKSYmIXYuZ2V0KHMsImhhc0RhdGFBdHRycyIpKXtmb3IodD1hLmxlbmd0aDt0LS07KWFbdF0mJjA9PT0oaT1hW3RdLm5hbWUpLmluZGV4T2YoImRhdGEtIikmJihpPU8oaS5zbGljZSg1KSksZnQocyxpLHJbaV0pKTt2LnNldChzLCJoYXNEYXRhQXR0cnMiLCEwKX1yZXR1cm4gcn0scmVtb3ZlRGF0YTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZC5yZW1vdmUodGhpcyxlKX0pfX0pLF8uZXh0ZW5kKHtxdWV1ZTpmdW5jdGlvbihlLHQsbil7dmFyIGk7aWYoZSlyZXR1cm4gaT12LmdldChlLHQ9KHR8fCJmeCIpKyJxdWV1ZSIpLG4mJighaXx8QXJyYXkuaXNBcnJheShuKT9pPXYuYWNjZXNzKGUsdCxfLm1ha2VBcnJheShuKSk6aS5wdXNoKG4pKSxpfHxbXX0sZGVxdWV1ZTpmdW5jdGlvbihlLHQpe3Q9dHx8ImZ4Ijt2YXIgbj1fLnF1ZXVlKGUsdCksaT1uLmxlbmd0aCxyPW4uc2hpZnQoKSxzPV8uX3F1ZXVlSG9va3MoZSx0KTsiaW5wcm9ncmVzcyI9PT1yJiYocj1uLnNoaWZ0KCksaS0tKSxyJiYoImZ4Ij09PXQmJm4udW5zaGlmdCgiaW5wcm9ncmVzcyIpLGRlbGV0ZSBzLnN0b3Asci5jYWxsKGUsZnVuY3Rpb24oKXtfLmRlcXVldWUoZSx0KX0scykpLCFpJiZzJiZzLmVtcHR5LmZpcmUoKX0sX3F1ZXVlSG9va3M6ZnVuY3Rpb24oZSx0KXt2YXIgbj10KyJxdWV1ZUhvb2tzIjtyZXR1cm4gdi5nZXQoZSxuKXx8di5hY2Nlc3MoZSxuLHtlbXB0eTpfLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKS5hZGQoZnVuY3Rpb24oKXt2LnJlbW92ZShlLFt0KyJxdWV1ZSIsbl0pfSl9KX19KSxfLmZuLmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24odCxuKXt2YXIgZT0yO3JldHVybiJzdHJpbmciIT10eXBlb2YgdCYmKG49dCx0PSJmeCIsZS0tKSxhcmd1bWVudHMubGVuZ3RoPGU/Xy5xdWV1ZSh0aGlzWzBdLHQpOnZvaWQgMD09PW4/dGhpczp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1fLnF1ZXVlKHRoaXMsdCxuKTtfLl9xdWV1ZUhvb2tzKHRoaXMsdCksImZ4Ij09PXQmJiJpbnByb2dyZXNzIiE9PWVbMF0mJl8uZGVxdWV1ZSh0aGlzLHQpfSl9LGRlcXVldWU6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe18uZGVxdWV1ZSh0aGlzLGUpfSl9LGNsZWFyUXVldWU6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucXVldWUoZXx8ImZ4IixbXSl9LHByb21pc2U6ZnVuY3Rpb24oZSx0KXtmdW5jdGlvbiBuKCl7LS1yfHxzLnJlc29sdmVXaXRoKGEsW2FdKX12YXIgaSxyPTEscz1fLkRlZmVycmVkKCksYT10aGlzLG89dGhpcy5sZW5ndGg7Zm9yKCJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPXZvaWQgMCksZT1lfHwiZngiO28tLTspKGk9di5nZXQoYVtvXSxlKyJxdWV1ZUhvb2tzIikpJiZpLmVtcHR5JiYocisrLGkuZW1wdHkuYWRkKG4pKTtyZXR1cm4gbigpLHMucHJvbWlzZSh0KX19KTtmdW5jdGlvbiBtdChlLHQpe3JldHVybiJub25lIj09PShlPXR8fGUpLnN0eWxlLmRpc3BsYXl8fCIiPT09ZS5zdHlsZS5kaXNwbGF5JiZidChlKSYmIm5vbmUiPT09Xy5jc3MoZSwiZGlzcGxheSIpfXZhciBlPS9bKy1dPyg/OlxkKlwufClcZCsoPzpbZUVdWystXT9cZCt8KS8uc291cmNlLGd0PW5ldyBSZWdFeHAoIl4oPzooWystXSk9fCkoIitlKyIpKFthLXolXSopJCIsImkiKSx2dD1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiwiTGVmdCJdLHl0PUUuZG9jdW1lbnRFbGVtZW50LGJ0PWZ1bmN0aW9uKGUpe3JldHVybiBfLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKX0sd3Q9e2NvbXBvc2VkOiEwfTt5dC5nZXRSb290Tm9kZSYmKGJ0PWZ1bmN0aW9uKGUpe3JldHVybiBfLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKXx8ZS5nZXRSb290Tm9kZSh3dCk9PT1lLm93bmVyRG9jdW1lbnR9KTtmdW5jdGlvbiB4dChlLHQsbixpKXt2YXIgcixzLGE9MjAsbz1pP2Z1bmN0aW9uKCl7cmV0dXJuIGkuY3VyKCl9OmZ1bmN0aW9uKCl7cmV0dXJuIF8uY3NzKGUsdCwiIil9LGw9bygpLGQ9biYmblszXXx8KF8uY3NzTnVtYmVyW3RdPyIiOiJweCIpLGM9ZS5ub2RlVHlwZSYmKF8uY3NzTnVtYmVyW3RdfHwicHgiIT09ZCYmK2wpJiZndC5leGVjKF8uY3NzKGUsdCkpO2lmKGMmJmNbM10hPT1kKXtmb3IoZD1kfHxjWzNdLGM9KyhsLz0yKXx8MTthLS07KV8uc3R5bGUoZSx0LGMrZCksKDEtcykqKDEtKHM9bygpL2x8fC41KSk8PTAmJihhPTApLGMvPXM7Xy5zdHlsZShlLHQsKGMqPTIpK2QpLG49bnx8W119cmV0dXJuIG4mJihjPStjfHwrbHx8MCxyPW5bMV0/YysoblsxXSsxKSpuWzJdOituWzJdLGkpJiYoaS51bml0PWQsaS5zdGFydD1jLGkuZW5kPXIpLHJ9dmFyIEV0PXt9O2Z1bmN0aW9uIF90KGUsdCl7Zm9yKHZhciBuLGkscixzLGEsbz1bXSxsPTAsZD1lLmxlbmd0aDtsPGQ7bCsrKShpPWVbbF0pLnN0eWxlJiYobj1pLnN0eWxlLmRpc3BsYXksdD8oIm5vbmUiPT09biYmKG9bbF09di5nZXQoaSwiZGlzcGxheSIpfHxudWxsLG9bbF18fChpLnN0eWxlLmRpc3BsYXk9IiIpKSwiIj09PWkuc3R5bGUuZGlzcGxheSYmbXQoaSkmJihvW2xdPShhPXM9dm9pZCAwLHM9KHI9aSkub3duZXJEb2N1bWVudCxyPXIubm9kZU5hbWUsKGE9RXRbcl0pfHwocz1zLmJvZHkuYXBwZW5kQ2hpbGQocy5jcmVhdGVFbGVtZW50KHIpKSxhPV8uY3NzKHMsImRpc3BsYXkiKSxzLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQocyksRXRbcl09YT0ibm9uZSI9PT1hPyJibG9jayI6YSksYSkpKToibm9uZSIhPT1uJiYob1tsXT0ibm9uZSIsdi5zZXQoaSwiZGlzcGxheSIsbikpKTtmb3IobD0wO2w8ZDtsKyspbnVsbCE9b1tsXSYmKGVbbF0uc3R5bGUuZGlzcGxheT1vW2xdKTtyZXR1cm4gZX1fLmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbigpe3JldHVybiBfdCh0aGlzLCEwKX0saGlkZTpmdW5jdGlvbigpe3JldHVybiBfdCh0aGlzKX0sdG9nZ2xlOmZ1bmN0aW9uKGUpe3JldHVybiJib29sZWFuIj09dHlwZW9mIGU/ZT90aGlzLnNob3coKTp0aGlzLmhpZGUoKTp0aGlzLmVhY2goZnVuY3Rpb24oKXttdCh0aGlzKT9fKHRoaXMpLnNob3coKTpfKHRoaXMpLmhpZGUoKX0pfX0pO3ZhciBUdD0vXig/OmNoZWNrYm94fHJhZGlvKSQvaSxTdD0vPChbYS16XVteXC9cMD5ceDIwXHRcclxuXGZdKikvaSxDdD0vXiR8Xm1vZHVsZSR8XC8oPzpqYXZhfGVjbWEpc2NyaXB0L2ksZj0ocz1FLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKS5hcHBlbmRDaGlsZChFLmNyZWF0ZUVsZW1lbnQoImRpdiIpKSwoYT1FLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnNldEF0dHJpYnV0ZSgidHlwZSIsInJhZGlvIiksYS5zZXRBdHRyaWJ1dGUoImNoZWNrZWQiLCJjaGVja2VkIiksYS5zZXRBdHRyaWJ1dGUoIm5hbWUiLCJ0Iikscy5hcHBlbmRDaGlsZChhKSxtLmNoZWNrQ2xvbmU9cy5jbG9uZU5vZGUoITApLmNsb25lTm9kZSghMCkubGFzdENoaWxkLmNoZWNrZWQscy5pbm5lckhUTUw9Ijx0ZXh0YXJlYT54PC90ZXh0YXJlYT4iLG0ubm9DbG9uZUNoZWNrZWQ9ISFzLmNsb25lTm9kZSghMCkubGFzdENoaWxkLmRlZmF1bHRWYWx1ZSxzLmlubmVySFRNTD0iPG9wdGlvbj48L29wdGlvbj4iLG0ub3B0aW9uPSEhcy5sYXN0Q2hpbGQse3RoZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSxjb2w6WzIsIjx0YWJsZT48Y29sZ3JvdXA+IiwiPC9jb2xncm91cD48L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sX2RlZmF1bHQ6WzAsIiIsIiJdfSk7ZnVuY3Rpb24gZyhlLHQpe3ZhciBuPXZvaWQgMCE9PWUuZ2V0RWxlbWVudHNCeVRhZ05hbWU/ZS5nZXRFbGVtZW50c0J5VGFnTmFtZSh0fHwiKiIpOnZvaWQgMCE9PWUucXVlcnlTZWxlY3RvckFsbD9lLnF1ZXJ5U2VsZWN0b3JBbGwodHx8IioiKTpbXTtyZXR1cm4gdm9pZCAwPT09dHx8dCYmdyhlLHQpP18ubWVyZ2UoW2VdLG4pOm59ZnVuY3Rpb24gQXQoZSx0KXtmb3IodmFyIG49MCxpPWUubGVuZ3RoO248aTtuKyspdi5zZXQoZVtuXSwiZ2xvYmFsRXZhbCIsIXR8fHYuZ2V0KHRbbl0sImdsb2JhbEV2YWwiKSl9Zi50Ym9keT1mLnRmb290PWYuY29sZ3JvdXA9Zi5jYXB0aW9uPWYudGhlYWQsZi50aD1mLnRkLG0ub3B0aW9ufHwoZi5vcHRncm91cD1mLm9wdGlvbj1bMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJdKTt2YXIgTXQ9Lzx8JiM/XHcrOy87ZnVuY3Rpb24gRHQoZSx0LG4saSxyKXtmb3IodmFyIHMsYSxvLGwsZCxjPXQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLHU9W10scD0wLGg9ZS5sZW5ndGg7cDxoO3ArKylpZigocz1lW3BdKXx8MD09PXMpaWYoIm9iamVjdCI9PT1WKHMpKV8ubWVyZ2UodSxzLm5vZGVUeXBlP1tzXTpzKTtlbHNlIGlmKE10LnRlc3Qocykpe2ZvcihhPWF8fGMuYXBwZW5kQ2hpbGQodC5jcmVhdGVFbGVtZW50KCJkaXYiKSksbz0oU3QuZXhlYyhzKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKSxvPWZbb118fGYuX2RlZmF1bHQsYS5pbm5lckhUTUw9b1sxXStfLmh0bWxQcmVmaWx0ZXIocykrb1syXSxkPW9bMF07ZC0tOylhPWEubGFzdENoaWxkO18ubWVyZ2UodSxhLmNoaWxkTm9kZXMpLChhPWMuZmlyc3RDaGlsZCkudGV4dENvbnRlbnQ9IiJ9ZWxzZSB1LnB1c2godC5jcmVhdGVUZXh0Tm9kZShzKSk7Zm9yKGMudGV4dENvbnRlbnQ9IiIscD0wO3M9dVtwKytdOylpZihpJiYtMTxfLmluQXJyYXkocyxpKSlyJiZyLnB1c2gocyk7ZWxzZSBpZihsPWJ0KHMpLGE9ZyhjLmFwcGVuZENoaWxkKHMpLCJzY3JpcHQiKSxsJiZBdChhKSxuKWZvcihkPTA7cz1hW2QrK107KUN0LnRlc3Qocy50eXBlfHwiIikmJm4ucHVzaChzKTtyZXR1cm4gY312YXIgTHQ9L14oW14uXSopKD86XC4oLispfCkvO2Z1bmN0aW9uIGt0KCl7cmV0dXJuITB9ZnVuY3Rpb24gT3QoKXtyZXR1cm4hMX1mdW5jdGlvbiBQdChlLHQsbixpLHIscyl7dmFyIGEsbztpZigib2JqZWN0Ij09dHlwZW9mIHQpe2ZvcihvIGluInN0cmluZyIhPXR5cGVvZiBuJiYoaT1pfHxuLG49dm9pZCAwKSx0KVB0KGUsbyxuLGksdFtvXSxzKTtyZXR1cm4gZX1pZihudWxsPT1pJiZudWxsPT1yPyhyPW4saT1uPXZvaWQgMCk6bnVsbD09ciYmKCJzdHJpbmciPT10eXBlb2Ygbj8ocj1pLGk9dm9pZCAwKToocj1pLGk9bixuPXZvaWQgMCkpLCExPT09cilyPU90O2Vsc2UgaWYoIXIpcmV0dXJuIGU7cmV0dXJuIDE9PT1zJiYoYT1yLChyPWZ1bmN0aW9uKGUpe3JldHVybiBfKCkub2ZmKGUpLGEuYXBwbHkodGhpcyxhcmd1bWVudHMpfSkuZ3VpZD1hLmd1aWR8fChhLmd1aWQ9Xy5ndWlkKyspKSxlLmVhY2goZnVuY3Rpb24oKXtfLmV2ZW50LmFkZCh0aGlzLHQscixpLG4pfSl9ZnVuY3Rpb24gSXQoZSxpLHQpe3Q/KHYuc2V0KGUsaSwhMSksXy5ldmVudC5hZGQoZSxpLHtuYW1lc3BhY2U6ITEsaGFuZGxlcjpmdW5jdGlvbihlKXt2YXIgdCxuPXYuZ2V0KHRoaXMsaSk7aWYoMSZlLmlzVHJpZ2dlciYmdGhpc1tpXSl7aWYobikoXy5ldmVudC5zcGVjaWFsW2ldfHx7fSkuZGVsZWdhdGVUeXBlJiZlLnN0b3BQcm9wYWdhdGlvbigpO2Vsc2UgaWYobj1vLmNhbGwoYXJndW1lbnRzKSx2LnNldCh0aGlzLGksbiksdGhpc1tpXSgpLHQ9di5nZXQodGhpcyxpKSx2LnNldCh0aGlzLGksITEpLG4hPT10KXJldHVybiBlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLGUucHJldmVudERlZmF1bHQoKSx0fWVsc2UgbiYmKHYuc2V0KHRoaXMsaSxfLmV2ZW50LnRyaWdnZXIoblswXSxuLnNsaWNlKDEpLHRoaXMpKSxlLnN0b3BQcm9wYWdhdGlvbigpLGUuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ9a3QpfX0pKTp2b2lkIDA9PT12LmdldChlLGkpJiZfLmV2ZW50LmFkZChlLGksa3QpfV8uZXZlbnQ9e2dsb2JhbDp7fSxhZGQ6ZnVuY3Rpb24odCxlLG4saSxyKXt2YXIgcyxhLG8sbCxkLGMsdSxwLGgsZj12LmdldCh0KTtpZihjdCh0KSlmb3Iobi5oYW5kbGVyJiYobj0ocz1uKS5oYW5kbGVyLHI9cy5zZWxlY3RvciksciYmXy5maW5kLm1hdGNoZXNTZWxlY3Rvcih5dCxyKSxuLmd1aWR8fChuLmd1aWQ9Xy5ndWlkKyspLG89KG89Zi5ldmVudHMpfHwoZi5ldmVudHM9T2JqZWN0LmNyZWF0ZShudWxsKSksYT0oYT1mLmhhbmRsZSl8fChmLmhhbmRsZT1mdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwIT09XyYmXy5ldmVudC50cmlnZ2VyZWQhPT1lLnR5cGU/Xy5ldmVudC5kaXNwYXRjaC5hcHBseSh0LGFyZ3VtZW50cyk6dm9pZCAwfSksbD0oZT0oZXx8IiIpLm1hdGNoKGspfHxbIiJdKS5sZW5ndGg7bC0tOyl1PWg9KHA9THQuZXhlYyhlW2xdKXx8W10pWzFdLHA9KHBbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSx1JiYoZD1fLmV2ZW50LnNwZWNpYWxbdV18fHt9LHU9KHI/ZC5kZWxlZ2F0ZVR5cGU6ZC5iaW5kVHlwZSl8fHUsZD1fLmV2ZW50LnNwZWNpYWxbdV18fHt9LGg9Xy5leHRlbmQoe3R5cGU6dSxvcmlnVHlwZTpoLGRhdGE6aSxoYW5kbGVyOm4sZ3VpZDpuLmd1aWQsc2VsZWN0b3I6cixuZWVkc0NvbnRleHQ6ciYmXy5leHByLm1hdGNoLm5lZWRzQ29udGV4dC50ZXN0KHIpLG5hbWVzcGFjZTpwLmpvaW4oIi4iKX0scyksKGM9b1t1XSl8fCgoYz1vW3VdPVtdKS5kZWxlZ2F0ZUNvdW50PTAsZC5zZXR1cCYmITEhPT1kLnNldHVwLmNhbGwodCxpLHAsYSkpfHx0LmFkZEV2ZW50TGlzdGVuZXImJnQuYWRkRXZlbnRMaXN0ZW5lcih1LGEpLGQuYWRkJiYoZC5hZGQuY2FsbCh0LGgpLGguaGFuZGxlci5ndWlkfHwoaC5oYW5kbGVyLmd1aWQ9bi5ndWlkKSkscj9jLnNwbGljZShjLmRlbGVnYXRlQ291bnQrKywwLGgpOmMucHVzaChoKSxfLmV2ZW50Lmdsb2JhbFt1XT0hMCl9LHJlbW92ZTpmdW5jdGlvbihlLHQsbixpLHIpe3ZhciBzLGEsbyxsLGQsYyx1LHAsaCxmLG0sZz12Lmhhc0RhdGEoZSkmJnYuZ2V0KGUpO2lmKGcmJihsPWcuZXZlbnRzKSl7Zm9yKGQ9KHQ9KHR8fCIiKS5tYXRjaChrKXx8WyIiXSkubGVuZ3RoO2QtLTspaWYoaD1tPShvPUx0LmV4ZWModFtkXSl8fFtdKVsxXSxmPShvWzJdfHwiIikuc3BsaXQoIi4iKS5zb3J0KCksaCl7Zm9yKHU9Xy5ldmVudC5zcGVjaWFsW2hdfHx7fSxwPWxbaD0oaT91LmRlbGVnYXRlVHlwZTp1LmJpbmRUeXBlKXx8aF18fFtdLG89b1syXSYmbmV3IFJlZ0V4cCgiKF58XFwuKSIrZi5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKSxhPXM9cC5sZW5ndGg7cy0tOyljPXBbc10sIXImJm0hPT1jLm9yaWdUeXBlfHxuJiZuLmd1aWQhPT1jLmd1aWR8fG8mJiFvLnRlc3QoYy5uYW1lc3BhY2UpfHxpJiZpIT09Yy5zZWxlY3RvciYmKCIqKiIhPT1pfHwhYy5zZWxlY3Rvcil8fChwLnNwbGljZShzLDEpLGMuc2VsZWN0b3ImJnAuZGVsZWdhdGVDb3VudC0tLHUucmVtb3ZlJiZ1LnJlbW92ZS5jYWxsKGUsYykpO2EmJiFwLmxlbmd0aCYmKHUudGVhcmRvd24mJiExIT09dS50ZWFyZG93bi5jYWxsKGUsZixnLmhhbmRsZSl8fF8ucmVtb3ZlRXZlbnQoZSxoLGcuaGFuZGxlKSxkZWxldGUgbFtoXSl9ZWxzZSBmb3IoaCBpbiBsKV8uZXZlbnQucmVtb3ZlKGUsaCt0W2RdLG4saSwhMCk7Xy5pc0VtcHR5T2JqZWN0KGwpJiZ2LnJlbW92ZShlLCJoYW5kbGUgZXZlbnRzIil9fSxkaXNwYXRjaDpmdW5jdGlvbihlKXt2YXIgdCxuLGkscixzLGE9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgpLG89Xy5ldmVudC5maXgoZSksZT0odi5nZXQodGhpcywiZXZlbnRzIil8fE9iamVjdC5jcmVhdGUobnVsbCkpW28udHlwZV18fFtdLGw9Xy5ldmVudC5zcGVjaWFsW28udHlwZV18fHt9O2ZvcihhWzBdPW8sdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0KyspYVt0XT1hcmd1bWVudHNbdF07aWYoby5kZWxlZ2F0ZVRhcmdldD10aGlzLCFsLnByZURpc3BhdGNofHwhMSE9PWwucHJlRGlzcGF0Y2guY2FsbCh0aGlzLG8pKXtmb3Iocz1fLmV2ZW50LmhhbmRsZXJzLmNhbGwodGhpcyxvLGUpLHQ9MDsoaT1zW3QrK10pJiYhby5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpOylmb3Ioby5jdXJyZW50VGFyZ2V0PWkuZWxlbSxuPTA7KHI9aS5oYW5kbGVyc1tuKytdKSYmIW8uaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKTspby5ybmFtZXNwYWNlJiYhMSE9PXIubmFtZXNwYWNlJiYhby5ybmFtZXNwYWNlLnRlc3Qoci5uYW1lc3BhY2UpfHwoby5oYW5kbGVPYmo9cixvLmRhdGE9ci5kYXRhLHZvaWQgMCE9PShyPSgoXy5ldmVudC5zcGVjaWFsW3Iub3JpZ1R5cGVdfHx7fSkuaGFuZGxlfHxyLmhhbmRsZXIpLmFwcGx5KGkuZWxlbSxhKSkmJiExPT09KG8ucmVzdWx0PXIpJiYoby5wcmV2ZW50RGVmYXVsdCgpLG8uc3RvcFByb3BhZ2F0aW9uKCkpKTtyZXR1cm4gbC5wb3N0RGlzcGF0Y2gmJmwucG9zdERpc3BhdGNoLmNhbGwodGhpcyxvKSxvLnJlc3VsdH19LGhhbmRsZXJzOmZ1bmN0aW9uKGUsdCl7dmFyIG4saSxyLHMsYSxvPVtdLGw9dC5kZWxlZ2F0ZUNvdW50LGQ9ZS50YXJnZXQ7aWYobCYmZC5ub2RlVHlwZSYmISgiY2xpY2siPT09ZS50eXBlJiYxPD1lLmJ1dHRvbikpZm9yKDtkIT09dGhpcztkPWQucGFyZW50Tm9kZXx8dGhpcylpZigxPT09ZC5ub2RlVHlwZSYmKCJjbGljayIhPT1lLnR5cGV8fCEwIT09ZC5kaXNhYmxlZCkpe2ZvcihzPVtdLGE9e30sbj0wO248bDtuKyspdm9pZCAwPT09YVtyPShpPXRbbl0pLnNlbGVjdG9yKyIgIl0mJihhW3JdPWkubmVlZHNDb250ZXh0Py0xPF8ocix0aGlzKS5pbmRleChkKTpfLmZpbmQocix0aGlzLG51bGwsW2RdKS5sZW5ndGgpLGFbcl0mJnMucHVzaChpKTtzLmxlbmd0aCYmby5wdXNoKHtlbGVtOmQsaGFuZGxlcnM6c30pfXJldHVybiBkPXRoaXMsbDx0Lmxlbmd0aCYmby5wdXNoKHtlbGVtOmQsaGFuZGxlcnM6dC5zbGljZShsKX0pLG99LGFkZFByb3A6ZnVuY3Rpb24odCxlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoXy5FdmVudC5wcm90b3R5cGUsdCx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsZ2V0OnkoZSk/ZnVuY3Rpb24oKXtpZih0aGlzLm9yaWdpbmFsRXZlbnQpcmV0dXJuIGUodGhpcy5vcmlnaW5hbEV2ZW50KX06ZnVuY3Rpb24oKXtpZih0aGlzLm9yaWdpbmFsRXZlbnQpcmV0dXJuIHRoaXMub3JpZ2luYWxFdmVudFt0XX0sc2V0OmZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLHQse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmV9KX19KX0sZml4OmZ1bmN0aW9uKGUpe3JldHVybiBlW18uZXhwYW5kb10/ZTpuZXcgXy5FdmVudChlKX0sc3BlY2lhbDp7bG9hZDp7bm9CdWJibGU6ITB9LGNsaWNrOntzZXR1cDpmdW5jdGlvbihlKXtlPXRoaXN8fGU7cmV0dXJuIFR0LnRlc3QoZS50eXBlKSYmZS5jbGljayYmdyhlLCJpbnB1dCIpJiZJdChlLCJjbGljayIsITApLCExfSx0cmlnZ2VyOmZ1bmN0aW9uKGUpe2U9dGhpc3x8ZTtyZXR1cm4gVHQudGVzdChlLnR5cGUpJiZlLmNsaWNrJiZ3KGUsImlucHV0IikmJkl0KGUsImNsaWNrIiksITB9LF9kZWZhdWx0OmZ1bmN0aW9uKGUpe2U9ZS50YXJnZXQ7cmV0dXJuIFR0LnRlc3QoZS50eXBlKSYmZS5jbGljayYmdyhlLCJpbnB1dCIpJiZ2LmdldChlLCJjbGljayIpfHx3KGUsImEiKX19LGJlZm9yZXVubG9hZDp7cG9zdERpc3BhdGNoOmZ1bmN0aW9uKGUpe3ZvaWQgMCE9PWUucmVzdWx0JiZlLm9yaWdpbmFsRXZlbnQmJihlLm9yaWdpbmFsRXZlbnQucmV0dXJuVmFsdWU9ZS5yZXN1bHQpfX19fSxfLnJlbW92ZUV2ZW50PWZ1bmN0aW9uKGUsdCxuKXtlLnJlbW92ZUV2ZW50TGlzdGVuZXImJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LG4pfSxfLkV2ZW50PWZ1bmN0aW9uKGUsdCl7aWYoISh0aGlzIGluc3RhbmNlb2YgXy5FdmVudCkpcmV0dXJuIG5ldyBfLkV2ZW50KGUsdCk7ZSYmZS50eXBlPyh0aGlzLm9yaWdpbmFsRXZlbnQ9ZSx0aGlzLnR5cGU9ZS50eXBlLHRoaXMuaXNEZWZhdWx0UHJldmVudGVkPWUuZGVmYXVsdFByZXZlbnRlZHx8dm9pZCAwPT09ZS5kZWZhdWx0UHJldmVudGVkJiYhMT09PWUucmV0dXJuVmFsdWU/a3Q6T3QsdGhpcy50YXJnZXQ9ZS50YXJnZXQmJjM9PT1lLnRhcmdldC5ub2RlVHlwZT9lLnRhcmdldC5wYXJlbnROb2RlOmUudGFyZ2V0LHRoaXMuY3VycmVudFRhcmdldD1lLmN1cnJlbnRUYXJnZXQsdGhpcy5yZWxhdGVkVGFyZ2V0PWUucmVsYXRlZFRhcmdldCk6dGhpcy50eXBlPWUsdCYmXy5leHRlbmQodGhpcyx0KSx0aGlzLnRpbWVTdGFtcD1lJiZlLnRpbWVTdGFtcHx8RGF0ZS5ub3coKSx0aGlzW18uZXhwYW5kb109ITB9LF8uRXZlbnQucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjpfLkV2ZW50LGlzRGVmYXVsdFByZXZlbnRlZDpPdCxpc1Byb3BhZ2F0aW9uU3RvcHBlZDpPdCxpc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZDpPdCxpc1NpbXVsYXRlZDohMSxwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1rdCxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5wcmV2ZW50RGVmYXVsdCgpfSxzdG9wUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7dGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD1rdCxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5zdG9wUHJvcGFnYXRpb24oKX0sc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcmlnaW5hbEV2ZW50O3RoaXMuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ9a3QsZSYmIXRoaXMuaXNTaW11bGF0ZWQmJmUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCksdGhpcy5zdG9wUHJvcGFnYXRpb24oKX19LF8uZWFjaCh7YWx0S2V5OiEwLGJ1YmJsZXM6ITAsY2FuY2VsYWJsZTohMCxjaGFuZ2VkVG91Y2hlczohMCxjdHJsS2V5OiEwLGRldGFpbDohMCxldmVudFBoYXNlOiEwLG1ldGFLZXk6ITAscGFnZVg6ITAscGFnZVk6ITAsc2hpZnRLZXk6ITAsdmlldzohMCxjaGFyOiEwLGNvZGU6ITAsY2hhckNvZGU6ITAsa2V5OiEwLGtleUNvZGU6ITAsYnV0dG9uOiEwLGJ1dHRvbnM6ITAsY2xpZW50WDohMCxjbGllbnRZOiEwLG9mZnNldFg6ITAsb2Zmc2V0WTohMCxwb2ludGVySWQ6ITAscG9pbnRlclR5cGU6ITAsc2NyZWVuWDohMCxzY3JlZW5ZOiEwLHRhcmdldFRvdWNoZXM6ITAsdG9FbGVtZW50OiEwLHRvdWNoZXM6ITAsd2hpY2g6ITB9LF8uZXZlbnQuYWRkUHJvcCksXy5lYWNoKHtmb2N1czoiZm9jdXNpbiIsYmx1cjoiZm9jdXNvdXQifSxmdW5jdGlvbihpLHIpe2Z1bmN0aW9uIHMoZSl7dmFyIHQsbjtFLmRvY3VtZW50TW9kZT8odD12LmdldCh0aGlzLCJoYW5kbGUiKSwobj1fLmV2ZW50LmZpeChlKSkudHlwZT0iZm9jdXNpbiI9PT1lLnR5cGU/ImZvY3VzIjoiYmx1ciIsbi5pc1NpbXVsYXRlZD0hMCx0KGUpLG4udGFyZ2V0PT09bi5jdXJyZW50VGFyZ2V0JiZ0KG4pKTpfLmV2ZW50LnNpbXVsYXRlKHIsZS50YXJnZXQsXy5ldmVudC5maXgoZSkpfV8uZXZlbnQuc3BlY2lhbFtpXT17c2V0dXA6ZnVuY3Rpb24oKXt2YXIgZTtpZihJdCh0aGlzLGksITApLCFFLmRvY3VtZW50TW9kZSlyZXR1cm4hMTsoZT12LmdldCh0aGlzLHIpKXx8dGhpcy5hZGRFdmVudExpc3RlbmVyKHIscyksdi5zZXQodGhpcyxyLChlfHwwKSsxKX0sdHJpZ2dlcjpmdW5jdGlvbigpe3JldHVybiBJdCh0aGlzLGkpLCEwfSx0ZWFyZG93bjpmdW5jdGlvbigpe3ZhciBlO2lmKCFFLmRvY3VtZW50TW9kZSlyZXR1cm4hMTsoZT12LmdldCh0aGlzLHIpLTEpP3Yuc2V0KHRoaXMscixlKToodGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKHIscyksdi5yZW1vdmUodGhpcyxyKSl9LF9kZWZhdWx0OmZ1bmN0aW9uKGUpe3JldHVybiB2LmdldChlLnRhcmdldCxpKX0sZGVsZWdhdGVUeXBlOnJ9LF8uZXZlbnQuc3BlY2lhbFtyXT17c2V0dXA6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMuZG9jdW1lbnR8fHRoaXMsdD1FLmRvY3VtZW50TW9kZT90aGlzOmUsbj12LmdldCh0LHIpO258fChFLmRvY3VtZW50TW9kZT90aGlzLmFkZEV2ZW50TGlzdGVuZXIocixzKTplLmFkZEV2ZW50TGlzdGVuZXIoaSxzLCEwKSksdi5zZXQodCxyLChufHwwKSsxKX0sdGVhcmRvd246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMuZG9jdW1lbnR8fHRoaXMsdD1FLmRvY3VtZW50TW9kZT90aGlzOmUsbj12LmdldCh0LHIpLTE7bj92LnNldCh0LHIsbik6KEUuZG9jdW1lbnRNb2RlP3RoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihyLHMpOmUucmVtb3ZlRXZlbnRMaXN0ZW5lcihpLHMsITApLHYucmVtb3ZlKHQscikpfX19KSxfLmVhY2goe21vdXNlZW50ZXI6Im1vdXNlb3ZlciIsbW91c2VsZWF2ZToibW91c2VvdXQiLHBvaW50ZXJlbnRlcjoicG9pbnRlcm92ZXIiLHBvaW50ZXJsZWF2ZToicG9pbnRlcm91dCJ9LGZ1bmN0aW9uKGUscil7Xy5ldmVudC5zcGVjaWFsW2VdPXtkZWxlZ2F0ZVR5cGU6cixiaW5kVHlwZTpyLGhhbmRsZTpmdW5jdGlvbihlKXt2YXIgdCxuPWUucmVsYXRlZFRhcmdldCxpPWUuaGFuZGxlT2JqO3JldHVybiBuJiYobj09PXRoaXN8fF8uY29udGFpbnModGhpcyxuKSl8fChlLnR5cGU9aS5vcmlnVHlwZSx0PWkuaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyksZS50eXBlPXIpLHR9fX0pLF8uZm4uZXh0ZW5kKHtvbjpmdW5jdGlvbihlLHQsbixpKXtyZXR1cm4gUHQodGhpcyxlLHQsbixpKX0sb25lOmZ1bmN0aW9uKGUsdCxuLGkpe3JldHVybiBQdCh0aGlzLGUsdCxuLGksMSl9LG9mZjpmdW5jdGlvbihlLHQsbil7dmFyIGkscjtpZihlJiZlLnByZXZlbnREZWZhdWx0JiZlLmhhbmRsZU9iailpPWUuaGFuZGxlT2JqLF8oZS5kZWxlZ2F0ZVRhcmdldCkub2ZmKGkubmFtZXNwYWNlP2kub3JpZ1R5cGUrIi4iK2kubmFtZXNwYWNlOmkub3JpZ1R5cGUsaS5zZWxlY3RvcixpLmhhbmRsZXIpO2Vsc2V7aWYoIm9iamVjdCIhPXR5cGVvZiBlKXJldHVybiExIT09dCYmImZ1bmN0aW9uIiE9dHlwZW9mIHR8fChuPXQsdD12b2lkIDApLCExPT09biYmKG49T3QpLHRoaXMuZWFjaChmdW5jdGlvbigpe18uZXZlbnQucmVtb3ZlKHRoaXMsZSxuLHQpfSk7Zm9yKHIgaW4gZSl0aGlzLm9mZihyLHQsZVtyXSl9cmV0dXJuIHRoaXN9fSk7dmFyICR0PS88c2NyaXB0fDxzdHlsZXw8bGluay9pLE50PS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLGp0PS9eXHMqPCFcW0NEQVRBXFt8XF1cXT5ccyokL2c7ZnVuY3Rpb24gcXQoZSx0KXtyZXR1cm4gdyhlLCJ0YWJsZSIpJiZ3KDExIT09dC5ub2RlVHlwZT90OnQuZmlyc3RDaGlsZCwidHIiKSYmXyhlKS5jaGlsZHJlbigidGJvZHkiKVswXXx8ZX1mdW5jdGlvbiB6dChlKXtyZXR1cm4gZS50eXBlPShudWxsIT09ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSkrIi8iK2UudHlwZSxlfWZ1bmN0aW9uIEh0KGUpe3JldHVybiJ0cnVlLyI9PT0oZS50eXBlfHwiIikuc2xpY2UoMCw1KT9lLnR5cGU9ZS50eXBlLnNsaWNlKDUpOmUucmVtb3ZlQXR0cmlidXRlKCJ0eXBlIiksZX1mdW5jdGlvbiBSdChlLHQpe3ZhciBuLGkscixzO2lmKDE9PT10Lm5vZGVUeXBlKXtpZih2Lmhhc0RhdGEoZSkmJihzPXYuZ2V0KGUpLmV2ZW50cykpZm9yKHIgaW4gdi5yZW1vdmUodCwiaGFuZGxlIGV2ZW50cyIpLHMpZm9yKG49MCxpPXNbcl0ubGVuZ3RoO248aTtuKyspXy5ldmVudC5hZGQodCxyLHNbcl1bbl0pO2QuaGFzRGF0YShlKSYmKGU9ZC5hY2Nlc3MoZSksZT1fLmV4dGVuZCh7fSxlKSxkLnNldCh0LGUpKX19ZnVuY3Rpb24gRnQobixpLHIscyl7aT16KGkpO3ZhciBlLHQsYSxvLGwsZCxjPTAsdT1uLmxlbmd0aCxwPXUtMSxoPWlbMF0sZj15KGgpO2lmKGZ8fDE8dSYmInN0cmluZyI9PXR5cGVvZiBoJiYhbS5jaGVja0Nsb25lJiZOdC50ZXN0KGgpKXJldHVybiBuLmVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9bi5lcShlKTtmJiYoaVswXT1oLmNhbGwodGhpcyxlLHQuaHRtbCgpKSksRnQodCxpLHIscyl9KTtpZih1JiYodD0oZT1EdChpLG5bMF0ub3duZXJEb2N1bWVudCwhMSxuLHMpKS5maXJzdENoaWxkLDE9PT1lLmNoaWxkTm9kZXMubGVuZ3RoJiYoZT10KSx0fHxzKSl7Zm9yKG89KGE9Xy5tYXAoZyhlLCJzY3JpcHQiKSx6dCkpLmxlbmd0aDtjPHU7YysrKWw9ZSxjIT09cCYmKGw9Xy5jbG9uZShsLCEwLCEwKSxvKSYmXy5tZXJnZShhLGcobCwic2NyaXB0IikpLHIuY2FsbChuW2NdLGwsYyk7aWYobylmb3IoZD1hW2EubGVuZ3RoLTFdLm93bmVyRG9jdW1lbnQsXy5tYXAoYSxIdCksYz0wO2M8bztjKyspbD1hW2NdLEN0LnRlc3QobC50eXBlfHwiIikmJiF2LmFjY2VzcyhsLCJnbG9iYWxFdmFsIikmJl8uY29udGFpbnMoZCxsKSYmKGwuc3JjJiYibW9kdWxlIiE9PShsLnR5cGV8fCIiKS50b0xvd2VyQ2FzZSgpP18uX2V2YWxVcmwmJiFsLm5vTW9kdWxlJiZfLl9ldmFsVXJsKGwuc3JjLHtub25jZTpsLm5vbmNlfHxsLmdldEF0dHJpYnV0ZSgibm9uY2UiKX0sZCk6WChsLnRleHRDb250ZW50LnJlcGxhY2UoanQsIiIpLGwsZCkpfXJldHVybiBufWZ1bmN0aW9uIEJ0KGUsdCxuKXtmb3IodmFyIGkscj10P18uZmlsdGVyKHQsZSk6ZSxzPTA7bnVsbCE9KGk9cltzXSk7cysrKW58fDEhPT1pLm5vZGVUeXBlfHxfLmNsZWFuRGF0YShnKGkpKSxpLnBhcmVudE5vZGUmJihuJiZidChpKSYmQXQoZyhpLCJzY3JpcHQiKSksaS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGkpKTtyZXR1cm4gZX1fLmV4dGVuZCh7aHRtbFByZWZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gZX0sY2xvbmU6ZnVuY3Rpb24oZSx0LG4pe3ZhciBpLHIscyxhLG8sbCxkLGM9ZS5jbG9uZU5vZGUoITApLHU9YnQoZSk7aWYoIShtLm5vQ2xvbmVDaGVja2VkfHwxIT09ZS5ub2RlVHlwZSYmMTEhPT1lLm5vZGVUeXBlfHxfLmlzWE1MRG9jKGUpKSlmb3IoYT1nKGMpLGk9MCxyPShzPWcoZSkpLmxlbmd0aDtpPHI7aSsrKW89c1tpXSxsPWFbaV0sZD12b2lkIDAsImlucHV0Ij09PShkPWwubm9kZU5hbWUudG9Mb3dlckNhc2UoKSkmJlR0LnRlc3Qoby50eXBlKT9sLmNoZWNrZWQ9by5jaGVja2VkOiJpbnB1dCIhPT1kJiYidGV4dGFyZWEiIT09ZHx8KGwuZGVmYXVsdFZhbHVlPW8uZGVmYXVsdFZhbHVlKTtpZih0KWlmKG4pZm9yKHM9c3x8ZyhlKSxhPWF8fGcoYyksaT0wLHI9cy5sZW5ndGg7aTxyO2krKylSdChzW2ldLGFbaV0pO2Vsc2UgUnQoZSxjKTtyZXR1cm4gMDwoYT1nKGMsInNjcmlwdCIpKS5sZW5ndGgmJkF0KGEsIXUmJmcoZSwic2NyaXB0IikpLGN9LGNsZWFuRGF0YTpmdW5jdGlvbihlKXtmb3IodmFyIHQsbixpLHI9Xy5ldmVudC5zcGVjaWFsLHM9MDt2b2lkIDAhPT0obj1lW3NdKTtzKyspaWYoY3Qobikpe2lmKHQ9blt2LmV4cGFuZG9dKXtpZih0LmV2ZW50cylmb3IoaSBpbiB0LmV2ZW50cylyW2ldP18uZXZlbnQucmVtb3ZlKG4saSk6Xy5yZW1vdmVFdmVudChuLGksdC5oYW5kbGUpO25bdi5leHBhbmRvXT12b2lkIDB9bltkLmV4cGFuZG9dJiYobltkLmV4cGFuZG9dPXZvaWQgMCl9fX0pLF8uZm4uZXh0ZW5kKHtkZXRhY2g6ZnVuY3Rpb24oZSl7cmV0dXJuIEJ0KHRoaXMsZSwhMCl9LHJlbW92ZTpmdW5jdGlvbihlKXtyZXR1cm4gQnQodGhpcyxlKX0sdGV4dDpmdW5jdGlvbihlKXtyZXR1cm4gYyh0aGlzLGZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1lP18udGV4dCh0aGlzKTp0aGlzLmVtcHR5KCkuZWFjaChmdW5jdGlvbigpezEhPT10aGlzLm5vZGVUeXBlJiYxMSE9PXRoaXMubm9kZVR5cGUmJjkhPT10aGlzLm5vZGVUeXBlfHwodGhpcy50ZXh0Q29udGVudD1lKX0pfSxudWxsLGUsYXJndW1lbnRzLmxlbmd0aCl9LGFwcGVuZDpmdW5jdGlvbigpe3JldHVybiBGdCh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXsxIT09dGhpcy5ub2RlVHlwZSYmMTEhPT10aGlzLm5vZGVUeXBlJiY5IT09dGhpcy5ub2RlVHlwZXx8cXQodGhpcyxlKS5hcHBlbmRDaGlsZChlKX0pfSxwcmVwZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIEZ0KHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKGUpe3ZhciB0OzEhPT10aGlzLm5vZGVUeXBlJiYxMSE9PXRoaXMubm9kZVR5cGUmJjkhPT10aGlzLm5vZGVUeXBlfHwodD1xdCh0aGlzLGUpKS5pbnNlcnRCZWZvcmUoZSx0LmZpcnN0Q2hpbGQpfSl9LGJlZm9yZTpmdW5jdGlvbigpe3JldHVybiBGdCh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSx0aGlzKX0pfSxhZnRlcjpmdW5jdGlvbigpe3JldHVybiBGdCh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSx0aGlzLm5leHRTaWJsaW5nKX0pfSxlbXB0eTpmdW5jdGlvbigpe2Zvcih2YXIgZSx0PTA7bnVsbCE9KGU9dGhpc1t0XSk7dCsrKTE9PT1lLm5vZGVUeXBlJiYoXy5jbGVhbkRhdGEoZyhlLCExKSksZS50ZXh0Q29udGVudD0iIik7cmV0dXJuIHRoaXN9LGNsb25lOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9bnVsbCE9ZSYmZSx0PW51bGw9PXQ/ZTp0LHRoaXMubWFwKGZ1bmN0aW9uKCl7cmV0dXJuIF8uY2xvbmUodGhpcyxlLHQpfSl9LGh0bWw6ZnVuY3Rpb24oZSl7cmV0dXJuIGModGhpcyxmdW5jdGlvbihlKXt2YXIgdD10aGlzWzBdfHx7fSxuPTAsaT10aGlzLmxlbmd0aDtpZih2b2lkIDA9PT1lJiYxPT09dC5ub2RlVHlwZSlyZXR1cm4gdC5pbm5lckhUTUw7aWYoInN0cmluZyI9PXR5cGVvZiBlJiYhJHQudGVzdChlKSYmIWZbKFN0LmV4ZWMoZSl8fFsiIiwiIl0pWzFdLnRvTG93ZXJDYXNlKCldKXtlPV8uaHRtbFByZWZpbHRlcihlKTt0cnl7Zm9yKDtuPGk7bisrKTE9PT0odD10aGlzW25dfHx7fSkubm9kZVR5cGUmJihfLmNsZWFuRGF0YShnKHQsITEpKSx0LmlubmVySFRNTD1lKTt0PTB9Y2F0Y2goZSl7fX10JiZ0aGlzLmVtcHR5KCkuYXBwZW5kKGUpfSxudWxsLGUsYXJndW1lbnRzLmxlbmd0aCl9LHJlcGxhY2VXaXRoOmZ1bmN0aW9uKCl7dmFyIG49W107cmV0dXJuIEZ0KHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMucGFyZW50Tm9kZTtfLmluQXJyYXkodGhpcyxuKTwwJiYoXy5jbGVhbkRhdGEoZyh0aGlzKSksdCkmJnQucmVwbGFjZUNoaWxkKGUsdGhpcyl9LG4pfX0pLF8uZWFjaCh7YXBwZW5kVG86ImFwcGVuZCIscHJlcGVuZFRvOiJwcmVwZW5kIixpbnNlcnRCZWZvcmU6ImJlZm9yZSIsaW5zZXJ0QWZ0ZXI6ImFmdGVyIixyZXBsYWNlQWxsOiJyZXBsYWNlV2l0aCJ9LGZ1bmN0aW9uKGUsYSl7Xy5mbltlXT1mdW5jdGlvbihlKXtmb3IodmFyIHQsbj1bXSxpPV8oZSkscj1pLmxlbmd0aC0xLHM9MDtzPD1yO3MrKyl0PXM9PT1yP3RoaXM6dGhpcy5jbG9uZSghMCksXyhpW3NdKVthXSh0KSxILmFwcGx5KG4sdC5nZXQoKSk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKG4pfX0pO2Z1bmN0aW9uIFd0KGUpe3ZhciB0PWUub3duZXJEb2N1bWVudC5kZWZhdWx0VmlldztyZXR1cm4odD10JiZ0Lm9wZW5lcj90OngpLmdldENvbXB1dGVkU3R5bGUoZSl9ZnVuY3Rpb24gR3QoZSx0LG4pe3ZhciBpLHI9e307Zm9yKGkgaW4gdClyW2ldPWUuc3R5bGVbaV0sZS5zdHlsZVtpXT10W2ldO2ZvcihpIGluIG49bi5jYWxsKGUpLHQpZS5zdHlsZVtpXT1yW2ldO3JldHVybiBufXZhciBZdCxYdCxWdCxVdCxRdCxLdCxadCxQLEp0PW5ldyBSZWdFeHAoIl4oIitlKyIpKD8hcHgpW2EteiVdKyQiLCJpIiksZW49L14tLS8sdG49bmV3IFJlZ0V4cCh2dC5qb2luKCJ8IiksImkiKTtmdW5jdGlvbiBubigpe3ZhciBlO1AmJihadC5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4O3dpZHRoOjYwcHg7bWFyZ2luLXRvcDoxcHg7cGFkZGluZzowO2JvcmRlcjowIixQLnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OnNjcm9sbDttYXJnaW46YXV0bztib3JkZXI6MXB4O3BhZGRpbmc6MXB4O3dpZHRoOjYwJTt0b3A6MSUiLHl0LmFwcGVuZENoaWxkKFp0KS5hcHBlbmRDaGlsZChQKSxlPXguZ2V0Q29tcHV0ZWRTdHlsZShQKSxZdD0iMSUiIT09ZS50b3AsS3Q9MTI9PT1ybihlLm1hcmdpbkxlZnQpLFAuc3R5bGUucmlnaHQ9IjYwJSIsVXQ9MzY9PT1ybihlLnJpZ2h0KSxYdD0zNj09PXJuKGUud2lkdGgpLFAuc3R5bGUucG9zaXRpb249ImFic29sdXRlIixWdD0xMj09PXJuKFAub2Zmc2V0V2lkdGgvMykseXQucmVtb3ZlQ2hpbGQoWnQpLFA9bnVsbCl9ZnVuY3Rpb24gcm4oZSl7cmV0dXJuIE1hdGgucm91bmQocGFyc2VGbG9hdChlKSl9ZnVuY3Rpb24gc24oZSx0LG4pe3ZhciBpLHI9ZW4udGVzdCh0KSxzPWUuc3R5bGU7cmV0dXJuKG49bnx8V3QoZSkpJiYoaT1uLmdldFByb3BlcnR5VmFsdWUodCl8fG5bdF0sIiIhPT0oaT1yP2kmJihpLnJlcGxhY2UoZWUsIiQxIil8fHZvaWQgMCk6aSl8fGJ0KGUpfHwoaT1fLnN0eWxlKGUsdCkpLCFtLnBpeGVsQm94U3R5bGVzKCkpJiZKdC50ZXN0KGkpJiZ0bi50ZXN0KHQpJiYocj1zLndpZHRoLGU9cy5taW5XaWR0aCx0PXMubWF4V2lkdGgscy5taW5XaWR0aD1zLm1heFdpZHRoPXMud2lkdGg9aSxpPW4ud2lkdGgscy53aWR0aD1yLHMubWluV2lkdGg9ZSxzLm1heFdpZHRoPXQpLHZvaWQgMCE9PWk/aSsiIjppfWZ1bmN0aW9uIGFuKGUsdCl7cmV0dXJue2dldDpmdW5jdGlvbigpe2lmKCFlKCkpcmV0dXJuKHRoaXMuZ2V0PXQpLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtkZWxldGUgdGhpcy5nZXR9fX1adD1FLmNyZWF0ZUVsZW1lbnQoImRpdiIpLChQPUUuY3JlYXRlRWxlbWVudCgiZGl2IikpLnN0eWxlJiYoUC5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iY29udGVudC1ib3giLFAuY2xvbmVOb2RlKCEwKS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iIixtLmNsZWFyQ2xvbmVTdHlsZT0iY29udGVudC1ib3giPT09UC5zdHlsZS5iYWNrZ3JvdW5kQ2xpcCxfLmV4dGVuZChtLHtib3hTaXppbmdSZWxpYWJsZTpmdW5jdGlvbigpe3JldHVybiBubigpLFh0fSxwaXhlbEJveFN0eWxlczpmdW5jdGlvbigpe3JldHVybiBubigpLFV0fSxwaXhlbFBvc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIG5uKCksWXR9LHJlbGlhYmxlTWFyZ2luTGVmdDpmdW5jdGlvbigpe3JldHVybiBubigpLEt0fSxzY3JvbGxib3hTaXplOmZ1bmN0aW9uKCl7cmV0dXJuIG5uKCksVnR9LHJlbGlhYmxlVHJEaW1lbnNpb25zOmZ1bmN0aW9uKCl7dmFyIGUsdCxuO3JldHVybiBudWxsPT1RdCYmKGU9RS5jcmVhdGVFbGVtZW50KCJ0YWJsZSIpLHQ9RS5jcmVhdGVFbGVtZW50KCJ0ciIpLG49RS5jcmVhdGVFbGVtZW50KCJkaXYiKSxlLnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTExMTExcHg7Ym9yZGVyLWNvbGxhcHNlOnNlcGFyYXRlIix0LnN0eWxlLmNzc1RleHQ9ImJveC1zaXppbmc6Y29udGVudC1ib3g7Ym9yZGVyOjFweCBzb2xpZCIsdC5zdHlsZS5oZWlnaHQ9IjFweCIsbi5zdHlsZS5oZWlnaHQ9IjlweCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIseXQuYXBwZW5kQ2hpbGQoZSkuYXBwZW5kQ2hpbGQodCkuYXBwZW5kQ2hpbGQobiksbj14LmdldENvbXB1dGVkU3R5bGUodCksUXQ9cGFyc2VJbnQobi5oZWlnaHQsMTApK3BhcnNlSW50KG4uYm9yZGVyVG9wV2lkdGgsMTApK3BhcnNlSW50KG4uYm9yZGVyQm90dG9tV2lkdGgsMTApPT09dC5vZmZzZXRIZWlnaHQseXQucmVtb3ZlQ2hpbGQoZSkpLFF0fX0pKTt2YXIgb249WyJXZWJraXQiLCJNb3oiLCJtcyJdLGxuPUUuY3JlYXRlRWxlbWVudCgiZGl2Iikuc3R5bGUsZG49e307ZnVuY3Rpb24gY24oZSl7dmFyIHQ9Xy5jc3NQcm9wc1tlXXx8ZG5bZV07cmV0dXJuIHR8fChlIGluIGxuP2U6ZG5bZV09ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PWVbMF0udG9VcHBlckNhc2UoKStlLnNsaWNlKDEpLG49b24ubGVuZ3RoO24tLTspaWYoKGU9b25bbl0rdClpbiBsbilyZXR1cm4gZX0oZSl8fGUpfXZhciB1bj0vXihub25lfHRhYmxlKD8hLWNbZWFdKS4rKS8scG49e3Bvc2l0aW9uOiJhYnNvbHV0ZSIsdmlzaWJpbGl0eToiaGlkZGVuIixkaXNwbGF5OiJibG9jayJ9LGhuPXtsZXR0ZXJTcGFjaW5nOiIwIixmb250V2VpZ2h0OiI0MDAifTtmdW5jdGlvbiBmbihlLHQsbil7dmFyIGk9Z3QuZXhlYyh0KTtyZXR1cm4gaT9NYXRoLm1heCgwLGlbMl0tKG58fDApKSsoaVszXXx8InB4Iik6dH1mdW5jdGlvbiBtbihlLHQsbixpLHIscyl7dmFyIGE9IndpZHRoIj09PXQ/MTowLG89MCxsPTAsZD0wO2lmKG49PT0oaT8iYm9yZGVyIjoiY29udGVudCIpKXJldHVybiAwO2Zvcig7YTw0O2ErPTIpIm1hcmdpbiI9PT1uJiYoZCs9Xy5jc3MoZSxuK3Z0W2FdLCEwLHIpKSxpPygiY29udGVudCI9PT1uJiYobC09Xy5jc3MoZSwicGFkZGluZyIrdnRbYV0sITAscikpLCJtYXJnaW4iIT09biYmKGwtPV8uY3NzKGUsImJvcmRlciIrdnRbYV0rIldpZHRoIiwhMCxyKSkpOihsKz1fLmNzcyhlLCJwYWRkaW5nIit2dFthXSwhMCxyKSwicGFkZGluZyIhPT1uP2wrPV8uY3NzKGUsImJvcmRlciIrdnRbYV0rIldpZHRoIiwhMCxyKTpvKz1fLmNzcyhlLCJib3JkZXIiK3Z0W2FdKyJXaWR0aCIsITAscikpO3JldHVybiFpJiYwPD1zJiYobCs9TWF0aC5tYXgoMCxNYXRoLmNlaWwoZVsib2Zmc2V0Iit0WzBdLnRvVXBwZXJDYXNlKCkrdC5zbGljZSgxKV0tcy1sLW8tLjUpKXx8MCksbCtkfWZ1bmN0aW9uIGduKGUsdCxuKXt2YXIgaT1XdChlKSxyPSghbS5ib3hTaXppbmdSZWxpYWJsZSgpfHxuKSYmImJvcmRlci1ib3giPT09Xy5jc3MoZSwiYm94U2l6aW5nIiwhMSxpKSxzPXIsYT1zbihlLHQsaSksbz0ib2Zmc2V0Iit0WzBdLnRvVXBwZXJDYXNlKCkrdC5zbGljZSgxKTtpZihKdC50ZXN0KGEpKXtpZighbilyZXR1cm4gYTthPSJhdXRvIn1yZXR1cm4oIW0uYm94U2l6aW5nUmVsaWFibGUoKSYmcnx8IW0ucmVsaWFibGVUckRpbWVuc2lvbnMoKSYmdyhlLCJ0ciIpfHwiYXV0byI9PT1hfHwhcGFyc2VGbG9hdChhKSYmImlubGluZSI9PT1fLmNzcyhlLCJkaXNwbGF5IiwhMSxpKSkmJmUuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgmJihyPSJib3JkZXItYm94Ij09PV8uY3NzKGUsImJveFNpemluZyIsITEsaSkscz1vIGluIGUpJiYoYT1lW29dKSwoYT1wYXJzZUZsb2F0KGEpfHwwKSttbihlLHQsbnx8KHI/ImJvcmRlciI6ImNvbnRlbnQiKSxzLGksYSkrInB4In1mdW5jdGlvbiBJKGUsdCxuLGkscil7cmV0dXJuIG5ldyBJLnByb3RvdHlwZS5pbml0KGUsdCxuLGkscil9Xy5leHRlbmQoe2Nzc0hvb2tzOntvcGFjaXR5OntnZXQ6ZnVuY3Rpb24oZSx0KXtpZih0KXJldHVybiIiPT09KHQ9c24oZSwib3BhY2l0eSIpKT8iMSI6dH19fSxjc3NOdW1iZXI6e2FuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OiEwLGFzcGVjdFJhdGlvOiEwLGJvcmRlckltYWdlU2xpY2U6ITAsY29sdW1uQ291bnQ6ITAsZmxleEdyb3c6ITAsZmxleFNocmluazohMCxmb250V2VpZ2h0OiEwLGdyaWRBcmVhOiEwLGdyaWRDb2x1bW46ITAsZ3JpZENvbHVtbkVuZDohMCxncmlkQ29sdW1uU3RhcnQ6ITAsZ3JpZFJvdzohMCxncmlkUm93RW5kOiEwLGdyaWRSb3dTdGFydDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3JkZXI6ITAsb3JwaGFuczohMCxzY2FsZTohMCx3aWRvd3M6ITAsekluZGV4OiEwLHpvb206ITAsZmlsbE9wYWNpdHk6ITAsZmxvb2RPcGFjaXR5OiEwLHN0b3BPcGFjaXR5OiEwLHN0cm9rZU1pdGVybGltaXQ6ITAsc3Ryb2tlT3BhY2l0eTohMH0sY3NzUHJvcHM6e30sc3R5bGU6ZnVuY3Rpb24oZSx0LG4saSl7aWYoZSYmMyE9PWUubm9kZVR5cGUmJjghPT1lLm5vZGVUeXBlJiZlLnN0eWxlKXt2YXIgcixzLGEsbz1PKHQpLGw9ZW4udGVzdCh0KSxkPWUuc3R5bGU7aWYobHx8KHQ9Y24obykpLGE9Xy5jc3NIb29rc1t0XXx8Xy5jc3NIb29rc1tvXSx2b2lkIDA9PT1uKXJldHVybiBhJiYiZ2V0ImluIGEmJnZvaWQgMCE9PShyPWEuZ2V0KGUsITEsaSkpP3I6ZFt0XTsic3RyaW5nIj09PShzPXR5cGVvZiBuKSYmKHI9Z3QuZXhlYyhuKSkmJnJbMV0mJihuPXh0KGUsdCxyKSxzPSJudW1iZXIiKSxudWxsPT1ufHxuIT1ufHwoIm51bWJlciIhPT1zfHxsfHwobis9ciYmclszXXx8KF8uY3NzTnVtYmVyW29dPyIiOiJweCIpKSxtLmNsZWFyQ2xvbmVTdHlsZXx8IiIhPT1ufHwwIT09dC5pbmRleE9mKCJiYWNrZ3JvdW5kIil8fChkW3RdPSJpbmhlcml0IiksYSYmInNldCJpbiBhJiZ2b2lkIDA9PT0obj1hLnNldChlLG4saSkpKXx8KGw/ZC5zZXRQcm9wZXJ0eSh0LG4pOmRbdF09bil9fSxjc3M6ZnVuY3Rpb24oZSx0LG4saSl7dmFyIHIscz1PKHQpO3JldHVybiBlbi50ZXN0KHQpfHwodD1jbihzKSksIm5vcm1hbCI9PT0ocj12b2lkIDA9PT0ocj0ocz1fLmNzc0hvb2tzW3RdfHxfLmNzc0hvb2tzW3NdKSYmImdldCJpbiBzP3MuZ2V0KGUsITAsbik6cik/c24oZSx0LGkpOnIpJiZ0IGluIGhuJiYocj1oblt0XSksKCIiPT09bnx8bikmJihzPXBhcnNlRmxvYXQociksITA9PT1ufHxpc0Zpbml0ZShzKSk/c3x8MDpyfX0pLF8uZWFjaChbImhlaWdodCIsIndpZHRoIl0sZnVuY3Rpb24oZSxhKXtfLmNzc0hvb2tzW2FdPXtnZXQ6ZnVuY3Rpb24oZSx0LG4pe2lmKHQpcmV0dXJuIXVuLnRlc3QoXy5jc3MoZSwiZGlzcGxheSIpKXx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCYmZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aD9nbihlLGEsbik6R3QoZSxwbixmdW5jdGlvbigpe3JldHVybiBnbihlLGEsbil9KX0sc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgaT1XdChlKSxyPSFtLnNjcm9sbGJveFNpemUoKSYmImFic29sdXRlIj09PWkucG9zaXRpb24scz0ocnx8bikmJiJib3JkZXItYm94Ij09PV8uY3NzKGUsImJveFNpemluZyIsITEsaSksbj1uP21uKGUsYSxuLHMsaSk6MDtyZXR1cm4gcyYmciYmKG4tPU1hdGguY2VpbChlWyJvZmZzZXQiK2FbMF0udG9VcHBlckNhc2UoKSthLnNsaWNlKDEpXS1wYXJzZUZsb2F0KGlbYV0pLW1uKGUsYSwiYm9yZGVyIiwhMSxpKS0uNSkpLG4mJihzPWd0LmV4ZWModCkpJiYicHgiIT09KHNbM118fCJweCIpJiYoZS5zdHlsZVthXT10LHQ9Xy5jc3MoZSxhKSksZm4oMCx0LG4pfX19KSxfLmNzc0hvb2tzLm1hcmdpbkxlZnQ9YW4obS5yZWxpYWJsZU1hcmdpbkxlZnQsZnVuY3Rpb24oZSx0KXtpZih0KXJldHVybihwYXJzZUZsb2F0KHNuKGUsIm1hcmdpbkxlZnQiKSl8fGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdC1HdChlLHttYXJnaW5MZWZ0OjB9LGZ1bmN0aW9uKCl7cmV0dXJuIGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdH0pKSsicHgifSksXy5lYWNoKHttYXJnaW46IiIscGFkZGluZzoiIixib3JkZXI6IldpZHRoIn0sZnVuY3Rpb24ocixzKXtfLmNzc0hvb2tzW3Irc109e2V4cGFuZDpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MCxuPXt9LGk9InN0cmluZyI9PXR5cGVvZiBlP2Uuc3BsaXQoIiAiKTpbZV07dDw0O3QrKyluW3IrdnRbdF0rc109aVt0XXx8aVt0LTJdfHxpWzBdO3JldHVybiBufX0sIm1hcmdpbiIhPT1yJiYoXy5jc3NIb29rc1tyK3NdLnNldD1mbil9KSxfLmZuLmV4dGVuZCh7Y3NzOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGModGhpcyxmdW5jdGlvbihlLHQsbil7dmFyIGkscixzPXt9LGE9MDtpZihBcnJheS5pc0FycmF5KHQpKXtmb3IoaT1XdChlKSxyPXQubGVuZ3RoO2E8cjthKyspc1t0W2FdXT1fLmNzcyhlLHRbYV0sITEsaSk7cmV0dXJuIHN9cmV0dXJuIHZvaWQgMCE9PW4/Xy5zdHlsZShlLHQsbik6Xy5jc3MoZSx0KX0sZSx0LDE8YXJndW1lbnRzLmxlbmd0aCl9fSksKChfLlR3ZWVuPUkpLnByb3RvdHlwZT17Y29uc3RydWN0b3I6SSxpbml0OmZ1bmN0aW9uKGUsdCxuLGkscixzKXt0aGlzLmVsZW09ZSx0aGlzLnByb3A9bix0aGlzLmVhc2luZz1yfHxfLmVhc2luZy5fZGVmYXVsdCx0aGlzLm9wdGlvbnM9dCx0aGlzLnN0YXJ0PXRoaXMubm93PXRoaXMuY3VyKCksdGhpcy5lbmQ9aSx0aGlzLnVuaXQ9c3x8KF8uY3NzTnVtYmVyW25dPyIiOiJweCIpfSxjdXI6ZnVuY3Rpb24oKXt2YXIgZT1JLnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybihlJiZlLmdldD9lOkkucHJvcEhvb2tzLl9kZWZhdWx0KS5nZXQodGhpcyl9LHJ1bjpmdW5jdGlvbihlKXt2YXIgdCxuPUkucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIHRoaXMub3B0aW9ucy5kdXJhdGlvbj90aGlzLnBvcz10PV8uZWFzaW5nW3RoaXMuZWFzaW5nXShlLHRoaXMub3B0aW9ucy5kdXJhdGlvbiplLDAsMSx0aGlzLm9wdGlvbnMuZHVyYXRpb24pOnRoaXMucG9zPXQ9ZSx0aGlzLm5vdz0odGhpcy5lbmQtdGhpcy5zdGFydCkqdCt0aGlzLnN0YXJ0LHRoaXMub3B0aW9ucy5zdGVwJiZ0aGlzLm9wdGlvbnMuc3RlcC5jYWxsKHRoaXMuZWxlbSx0aGlzLm5vdyx0aGlzKSwobiYmbi5zZXQ/bjpJLnByb3BIb29rcy5fZGVmYXVsdCkuc2V0KHRoaXMpLHRoaXN9fSkuaW5pdC5wcm90b3R5cGU9SS5wcm90b3R5cGUsKEkucHJvcEhvb2tzPXtfZGVmYXVsdDp7Z2V0OmZ1bmN0aW9uKGUpe3JldHVybiAxIT09ZS5lbGVtLm5vZGVUeXBlfHxudWxsIT1lLmVsZW1bZS5wcm9wXSYmbnVsbD09ZS5lbGVtLnN0eWxlW2UucHJvcF0/ZS5lbGVtW2UucHJvcF06KGU9Xy5jc3MoZS5lbGVtLGUucHJvcCwiIikpJiYiYXV0byIhPT1lP2U6MH0sc2V0OmZ1bmN0aW9uKGUpe18uZnguc3RlcFtlLnByb3BdP18uZnguc3RlcFtlLnByb3BdKGUpOjEhPT1lLmVsZW0ubm9kZVR5cGV8fCFfLmNzc0hvb2tzW2UucHJvcF0mJm51bGw9PWUuZWxlbS5zdHlsZVtjbihlLnByb3ApXT9lLmVsZW1bZS5wcm9wXT1lLm5vdzpfLnN0eWxlKGUuZWxlbSxlLnByb3AsZS5ub3crZS51bml0KX19fSkuc2Nyb2xsVG9wPUkucHJvcEhvb2tzLnNjcm9sbExlZnQ9e3NldDpmdW5jdGlvbihlKXtlLmVsZW0ubm9kZVR5cGUmJmUuZWxlbS5wYXJlbnROb2RlJiYoZS5lbGVtW2UucHJvcF09ZS5ub3cpfX0sXy5lYXNpbmc9e2xpbmVhcjpmdW5jdGlvbihlKXtyZXR1cm4gZX0sc3dpbmc6ZnVuY3Rpb24oZSl7cmV0dXJuLjUtTWF0aC5jb3MoZSpNYXRoLlBJKS8yfSxfZGVmYXVsdDoic3dpbmcifSxfLmZ4PUkucHJvdG90eXBlLmluaXQsXy5meC5zdGVwPXt9O3ZhciB2bix5bixibj0vXig/OnRvZ2dsZXxzaG93fGhpZGUpJC8sd249L3F1ZXVlSG9va3MkLztmdW5jdGlvbiB4bigpe3luJiYoITE9PT1FLmhpZGRlbiYmeC5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU/eC5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoeG4pOnguc2V0VGltZW91dCh4bixfLmZ4LmludGVydmFsKSxfLmZ4LnRpY2soKSl9ZnVuY3Rpb24gRW4oKXtyZXR1cm4geC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dm49dm9pZCAwfSksdm49RGF0ZS5ub3coKX1mdW5jdGlvbiBfbihlLHQpe3ZhciBuLGk9MCxyPXtoZWlnaHQ6ZX07Zm9yKHQ9dD8xOjA7aTw0O2krPTItdClyWyJtYXJnaW4iKyhuPXZ0W2ldKV09clsicGFkZGluZyIrbl09ZTtyZXR1cm4gdCYmKHIub3BhY2l0eT1yLndpZHRoPWUpLHJ9ZnVuY3Rpb24gVG4oZSx0LG4pe2Zvcih2YXIgaSxyPSgkLnR3ZWVuZXJzW3RdfHxbXSkuY29uY2F0KCQudHdlZW5lcnNbIioiXSkscz0wLGE9ci5sZW5ndGg7czxhO3MrKylpZihpPXJbc10uY2FsbChuLHQsZSkpcmV0dXJuIGl9ZnVuY3Rpb24gJChyLGUsdCl7dmFyIG4scyxpLGEsbyxsLGQsYz0wLHU9JC5wcmVmaWx0ZXJzLmxlbmd0aCxwPV8uRGVmZXJyZWQoKS5hbHdheXMoZnVuY3Rpb24oKXtkZWxldGUgaC5lbGVtfSksaD1mdW5jdGlvbigpe2lmKCFzKXtmb3IodmFyIGU9dm58fEVuKCksZT1NYXRoLm1heCgwLGYuc3RhcnRUaW1lK2YuZHVyYXRpb24tZSksdD0xLShlL2YuZHVyYXRpb258fDApLG49MCxpPWYudHdlZW5zLmxlbmd0aDtuPGk7bisrKWYudHdlZW5zW25dLnJ1bih0KTtpZihwLm5vdGlmeVdpdGgocixbZix0LGVdKSx0PDEmJmkpcmV0dXJuIGU7aXx8cC5ub3RpZnlXaXRoKHIsW2YsMSwwXSkscC5yZXNvbHZlV2l0aChyLFtmXSl9cmV0dXJuITF9LGY9cC5wcm9taXNlKHtlbGVtOnIscHJvcHM6Xy5leHRlbmQoe30sZSksb3B0czpfLmV4dGVuZCghMCx7c3BlY2lhbEVhc2luZzp7fSxlYXNpbmc6Xy5lYXNpbmcuX2RlZmF1bHR9LHQpLG9yaWdpbmFsUHJvcGVydGllczplLG9yaWdpbmFsT3B0aW9uczp0LHN0YXJ0VGltZTp2bnx8RW4oKSxkdXJhdGlvbjp0LmR1cmF0aW9uLHR3ZWVuczpbXSxjcmVhdGVUd2VlbjpmdW5jdGlvbihlLHQpe3Q9Xy5Ud2VlbihyLGYub3B0cyxlLHQsZi5vcHRzLnNwZWNpYWxFYXNpbmdbZV18fGYub3B0cy5lYXNpbmcpO3JldHVybiBmLnR3ZWVucy5wdXNoKHQpLHR9LHN0b3A6ZnVuY3Rpb24oZSl7dmFyIHQ9MCxuPWU/Zi50d2VlbnMubGVuZ3RoOjA7aWYoIXMpe2ZvcihzPSEwO3Q8bjt0KyspZi50d2VlbnNbdF0ucnVuKDEpO2U/KHAubm90aWZ5V2l0aChyLFtmLDEsMF0pLHAucmVzb2x2ZVdpdGgocixbZixlXSkpOnAucmVqZWN0V2l0aChyLFtmLGVdKX1yZXR1cm4gdGhpc319KSxtPWYucHJvcHMsZz1tLHY9Zi5vcHRzLnNwZWNpYWxFYXNpbmc7Zm9yKGkgaW4gZylpZihvPXZbYT1PKGkpXSxsPWdbaV0sQXJyYXkuaXNBcnJheShsKSYmKG89bFsxXSxsPWdbaV09bFswXSksaSE9PWEmJihnW2FdPWwsZGVsZXRlIGdbaV0pLChkPV8uY3NzSG9va3NbYV0pJiYiZXhwYW5kImluIGQpZm9yKGkgaW4gbD1kLmV4cGFuZChsKSxkZWxldGUgZ1thXSxsKWkgaW4gZ3x8KGdbaV09bFtpXSx2W2ldPW8pO2Vsc2UgdlthXT1vO2Zvcig7Yzx1O2MrKylpZihuPSQucHJlZmlsdGVyc1tjXS5jYWxsKGYscixtLGYub3B0cykpcmV0dXJuIHkobi5zdG9wKSYmKF8uX3F1ZXVlSG9va3MoZi5lbGVtLGYub3B0cy5xdWV1ZSkuc3RvcD1uLnN0b3AuYmluZChuKSksbjtyZXR1cm4gXy5tYXAobSxUbixmKSx5KGYub3B0cy5zdGFydCkmJmYub3B0cy5zdGFydC5jYWxsKHIsZiksZi5wcm9ncmVzcyhmLm9wdHMucHJvZ3Jlc3MpLmRvbmUoZi5vcHRzLmRvbmUsZi5vcHRzLmNvbXBsZXRlKS5mYWlsKGYub3B0cy5mYWlsKS5hbHdheXMoZi5vcHRzLmFsd2F5cyksXy5meC50aW1lcihfLmV4dGVuZChoLHtlbGVtOnIsYW5pbTpmLHF1ZXVlOmYub3B0cy5xdWV1ZX0pKSxmfV8uQW5pbWF0aW9uPV8uZXh0ZW5kKCQse3R3ZWVuZXJzOnsiKiI6W2Z1bmN0aW9uKGUsdCl7dmFyIG49dGhpcy5jcmVhdGVUd2VlbihlLHQpO3JldHVybiB4dChuLmVsZW0sZSxndC5leGVjKHQpLG4pLG59XX0sdHdlZW5lcjpmdW5jdGlvbihlLHQpe2Zvcih2YXIgbixpPTAscj0oZT15KGUpPyh0PWUsWyIqIl0pOmUubWF0Y2goaykpLmxlbmd0aDtpPHI7aSsrKW49ZVtpXSwkLnR3ZWVuZXJzW25dPSQudHdlZW5lcnNbbl18fFtdLCQudHdlZW5lcnNbbl0udW5zaGlmdCh0KX0scHJlZmlsdGVyczpbZnVuY3Rpb24oZSx0LG4pe3ZhciBpLHIscyxhLG8sbCxkLGM9IndpZHRoImluIHR8fCJoZWlnaHQiaW4gdCx1PXRoaXMscD17fSxoPWUuc3R5bGUsZj1lLm5vZGVUeXBlJiZtdChlKSxtPXYuZ2V0KGUsImZ4c2hvdyIpO2ZvcihpIGluIG4ucXVldWV8fChudWxsPT0oYT1fLl9xdWV1ZUhvb2tzKGUsImZ4IikpLnVucXVldWVkJiYoYS51bnF1ZXVlZD0wLG89YS5lbXB0eS5maXJlLGEuZW1wdHkuZmlyZT1mdW5jdGlvbigpe2EudW5xdWV1ZWR8fG8oKX0pLGEudW5xdWV1ZWQrKyx1LmFsd2F5cyhmdW5jdGlvbigpe3UuYWx3YXlzKGZ1bmN0aW9uKCl7YS51bnF1ZXVlZC0tLF8ucXVldWUoZSwiZngiKS5sZW5ndGh8fGEuZW1wdHkuZmlyZSgpfSl9KSksdClpZihyPXRbaV0sYm4udGVzdChyKSl7aWYoZGVsZXRlIHRbaV0scz1zfHwidG9nZ2xlIj09PXIscj09PShmPyJoaWRlIjoic2hvdyIpKXtpZigic2hvdyIhPT1yfHwhbXx8dm9pZCAwPT09bVtpXSljb250aW51ZTtmPSEwfXBbaV09bSYmbVtpXXx8Xy5zdHlsZShlLGkpfWlmKChsPSFfLmlzRW1wdHlPYmplY3QodCkpfHwhXy5pc0VtcHR5T2JqZWN0KHApKWZvcihpIGluIGMmJjE9PT1lLm5vZGVUeXBlJiYobi5vdmVyZmxvdz1baC5vdmVyZmxvdyxoLm92ZXJmbG93WCxoLm92ZXJmbG93WV0sbnVsbD09KGQ9bSYmbS5kaXNwbGF5KSYmKGQ9di5nZXQoZSwiZGlzcGxheSIpKSwibm9uZSI9PT0oYz1fLmNzcyhlLCJkaXNwbGF5IikpJiYoZD9jPWQ6KF90KFtlXSwhMCksZD1lLnN0eWxlLmRpc3BsYXl8fGQsYz1fLmNzcyhlLCJkaXNwbGF5IiksX3QoW2VdKSkpLCJpbmxpbmUiPT09Y3x8ImlubGluZS1ibG9jayI9PT1jJiZudWxsIT1kKSYmIm5vbmUiPT09Xy5jc3MoZSwiZmxvYXQiKSYmKGx8fCh1LmRvbmUoZnVuY3Rpb24oKXtoLmRpc3BsYXk9ZH0pLG51bGw9PWQmJihjPWguZGlzcGxheSxkPSJub25lIj09PWM/IiI6YykpLGguZGlzcGxheT0iaW5saW5lLWJsb2NrIiksbi5vdmVyZmxvdyYmKGgub3ZlcmZsb3c9ImhpZGRlbiIsdS5hbHdheXMoZnVuY3Rpb24oKXtoLm92ZXJmbG93PW4ub3ZlcmZsb3dbMF0saC5vdmVyZmxvd1g9bi5vdmVyZmxvd1sxXSxoLm92ZXJmbG93WT1uLm92ZXJmbG93WzJdfSkpLGw9ITEscClsfHwobT8iaGlkZGVuImluIG0mJihmPW0uaGlkZGVuKTptPXYuYWNjZXNzKGUsImZ4c2hvdyIse2Rpc3BsYXk6ZH0pLHMmJihtLmhpZGRlbj0hZiksZiYmX3QoW2VdLCEwKSx1LmRvbmUoZnVuY3Rpb24oKXtmb3IoaSBpbiBmfHxfdChbZV0pLHYucmVtb3ZlKGUsImZ4c2hvdyIpLHApXy5zdHlsZShlLGkscFtpXSl9KSksbD1UbihmP21baV06MCxpLHUpLGkgaW4gbXx8KG1baV09bC5zdGFydCxmJiYobC5lbmQ9bC5zdGFydCxsLnN0YXJ0PTApKX1dLHByZWZpbHRlcjpmdW5jdGlvbihlLHQpe3Q/JC5wcmVmaWx0ZXJzLnVuc2hpZnQoZSk6JC5wcmVmaWx0ZXJzLnB1c2goZSl9fSksXy5zcGVlZD1mdW5jdGlvbihlLHQsbil7dmFyIGk9ZSYmIm9iamVjdCI9PXR5cGVvZiBlP18uZXh0ZW5kKHt9LGUpOntjb21wbGV0ZTpufHwhbiYmdHx8eShlKSYmZSxkdXJhdGlvbjplLGVhc2luZzpuJiZ0fHx0JiYheSh0KSYmdH07cmV0dXJuIF8uZngub2ZmP2kuZHVyYXRpb249MDoibnVtYmVyIiE9dHlwZW9mIGkuZHVyYXRpb24mJihpLmR1cmF0aW9uIGluIF8uZnguc3BlZWRzP2kuZHVyYXRpb249Xy5meC5zcGVlZHNbaS5kdXJhdGlvbl06aS5kdXJhdGlvbj1fLmZ4LnNwZWVkcy5fZGVmYXVsdCksbnVsbCE9aS5xdWV1ZSYmITAhPT1pLnF1ZXVlfHwoaS5xdWV1ZT0iZngiKSxpLm9sZD1pLmNvbXBsZXRlLGkuY29tcGxldGU9ZnVuY3Rpb24oKXt5KGkub2xkKSYmaS5vbGQuY2FsbCh0aGlzKSxpLnF1ZXVlJiZfLmRlcXVldWUodGhpcyxpLnF1ZXVlKX0saX0sXy5mbi5leHRlbmQoe2ZhZGVUbzpmdW5jdGlvbihlLHQsbixpKXtyZXR1cm4gdGhpcy5maWx0ZXIobXQpLmNzcygib3BhY2l0eSIsMCkuc2hvdygpLmVuZCgpLmFuaW1hdGUoe29wYWNpdHk6dH0sZSxuLGkpfSxhbmltYXRlOmZ1bmN0aW9uKHQsZSxuLGkpe2Z1bmN0aW9uIHIoKXt2YXIgZT0kKHRoaXMsXy5leHRlbmQoe30sdCksYSk7KHN8fHYuZ2V0KHRoaXMsImZpbmlzaCIpKSYmZS5zdG9wKCEwKX12YXIgcz1fLmlzRW1wdHlPYmplY3QodCksYT1fLnNwZWVkKGUsbixpKTtyZXR1cm4gci5maW5pc2g9cixzfHwhMT09PWEucXVldWU/dGhpcy5lYWNoKHIpOnRoaXMucXVldWUoYS5xdWV1ZSxyKX0sc3RvcDpmdW5jdGlvbihyLGUscyl7ZnVuY3Rpb24gYShlKXt2YXIgdD1lLnN0b3A7ZGVsZXRlIGUuc3RvcCx0KHMpfXJldHVybiJzdHJpbmciIT10eXBlb2YgciYmKHM9ZSxlPXIscj12b2lkIDApLGUmJnRoaXMucXVldWUocnx8ImZ4IixbXSksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9ITAsdD1udWxsIT1yJiZyKyJxdWV1ZUhvb2tzIixuPV8udGltZXJzLGk9di5nZXQodGhpcyk7aWYodClpW3RdJiZpW3RdLnN0b3AmJmEoaVt0XSk7ZWxzZSBmb3IodCBpbiBpKWlbdF0mJmlbdF0uc3RvcCYmd24udGVzdCh0KSYmYShpW3RdKTtmb3IodD1uLmxlbmd0aDt0LS07KW5bdF0uZWxlbSE9PXRoaXN8fG51bGwhPXImJm5bdF0ucXVldWUhPT1yfHwoblt0XS5hbmltLnN0b3AocyksZT0hMSxuLnNwbGljZSh0LDEpKTshZSYmc3x8Xy5kZXF1ZXVlKHRoaXMscil9KX0sZmluaXNoOmZ1bmN0aW9uKGEpe3JldHVybiExIT09YSYmKGE9YXx8ImZ4IiksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGUsdD12LmdldCh0aGlzKSxuPXRbYSsicXVldWUiXSxpPXRbYSsicXVldWVIb29rcyJdLHI9Xy50aW1lcnMscz1uP24ubGVuZ3RoOjA7Zm9yKHQuZmluaXNoPSEwLF8ucXVldWUodGhpcyxhLFtdKSxpJiZpLnN0b3AmJmkuc3RvcC5jYWxsKHRoaXMsITApLGU9ci5sZW5ndGg7ZS0tOylyW2VdLmVsZW09PT10aGlzJiZyW2VdLnF1ZXVlPT09YSYmKHJbZV0uYW5pbS5zdG9wKCEwKSxyLnNwbGljZShlLDEpKTtmb3IoZT0wO2U8cztlKyspbltlXSYmbltlXS5maW5pc2gmJm5bZV0uZmluaXNoLmNhbGwodGhpcyk7ZGVsZXRlIHQuZmluaXNofSl9fSksXy5lYWNoKFsidG9nZ2xlIiwic2hvdyIsImhpZGUiXSxmdW5jdGlvbihlLGkpe3ZhciByPV8uZm5baV07Xy5mbltpXT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIG51bGw9PWV8fCJib29sZWFuIj09dHlwZW9mIGU/ci5hcHBseSh0aGlzLGFyZ3VtZW50cyk6dGhpcy5hbmltYXRlKF9uKGksITApLGUsdCxuKX19KSxfLmVhY2goe3NsaWRlRG93bjpfbigic2hvdyIpLHNsaWRlVXA6X24oImhpZGUiKSxzbGlkZVRvZ2dsZTpfbigidG9nZ2xlIiksZmFkZUluOntvcGFjaXR5OiJzaG93In0sZmFkZU91dDp7b3BhY2l0eToiaGlkZSJ9LGZhZGVUb2dnbGU6e29wYWNpdHk6InRvZ2dsZSJ9fSxmdW5jdGlvbihlLGkpe18uZm5bZV09ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0aGlzLmFuaW1hdGUoaSxlLHQsbil9fSksXy50aW1lcnM9W10sXy5meC50aWNrPWZ1bmN0aW9uKCl7dmFyIGUsdD0wLG49Xy50aW1lcnM7Zm9yKHZuPURhdGUubm93KCk7dDxuLmxlbmd0aDt0KyspKGU9blt0XSkoKXx8blt0XSE9PWV8fG4uc3BsaWNlKHQtLSwxKTtuLmxlbmd0aHx8Xy5meC5zdG9wKCksdm49dm9pZCAwfSxfLmZ4LnRpbWVyPWZ1bmN0aW9uKGUpe18udGltZXJzLnB1c2goZSksXy5meC5zdGFydCgpfSxfLmZ4LmludGVydmFsPTEzLF8uZnguc3RhcnQ9ZnVuY3Rpb24oKXt5bnx8KHluPSEwLHhuKCkpfSxfLmZ4LnN0b3A9ZnVuY3Rpb24oKXt5bj1udWxsfSxfLmZ4LnNwZWVkcz17c2xvdzo2MDAsZmFzdDoyMDAsX2RlZmF1bHQ6NDAwfSxfLmZuLmRlbGF5PWZ1bmN0aW9uKGksZSl7cmV0dXJuIGk9Xy5meCYmXy5meC5zcGVlZHNbaV18fGksdGhpcy5xdWV1ZShlPWV8fCJmeCIsZnVuY3Rpb24oZSx0KXt2YXIgbj14LnNldFRpbWVvdXQoZSxpKTt0LnN0b3A9ZnVuY3Rpb24oKXt4LmNsZWFyVGltZW91dChuKX19KX0sYT1FLmNyZWF0ZUVsZW1lbnQoImlucHV0Iikscz1FLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIpLmFwcGVuZENoaWxkKEUuY3JlYXRlRWxlbWVudCgib3B0aW9uIikpLGEudHlwZT0iY2hlY2tib3giLG0uY2hlY2tPbj0iIiE9PWEudmFsdWUsbS5vcHRTZWxlY3RlZD1zLnNlbGVjdGVkLChhPUUuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSkudmFsdWU9InQiLGEudHlwZT0icmFkaW8iLG0ucmFkaW9WYWx1ZT0idCI9PT1hLnZhbHVlO3ZhciBTbixDbj1fLmV4cHIuYXR0ckhhbmRsZSxBbj0oXy5mbi5leHRlbmQoe2F0dHI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYyh0aGlzLF8uYXR0cixlLHQsMTxhcmd1bWVudHMubGVuZ3RoKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7Xy5yZW1vdmVBdHRyKHRoaXMsZSl9KX19KSxfLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQsbil7dmFyIGkscixzPWUubm9kZVR5cGU7aWYoMyE9PXMmJjghPT1zJiYyIT09cylyZXR1cm4gdm9pZCAwPT09ZS5nZXRBdHRyaWJ1dGU/Xy5wcm9wKGUsdCxuKTooMT09PXMmJl8uaXNYTUxEb2MoZSl8fChyPV8uYXR0ckhvb2tzW3QudG9Mb3dlckNhc2UoKV18fChfLmV4cHIubWF0Y2guYm9vbC50ZXN0KHQpP1NuOnZvaWQgMCkpLHZvaWQgMCE9PW4/bnVsbD09PW4/dm9pZCBfLnJlbW92ZUF0dHIoZSx0KTpyJiYic2V0ImluIHImJnZvaWQgMCE9PShpPXIuc2V0KGUsbix0KSk/aTooZS5zZXRBdHRyaWJ1dGUodCxuKyIiKSxuKTohKHImJiJnZXQiaW4gciYmbnVsbCE9PShpPXIuZ2V0KGUsdCkpKSYmbnVsbD09KGk9Xy5maW5kLmF0dHIoZSx0KSk/dm9pZCAwOmkpfSxhdHRySG9va3M6e3R5cGU6e3NldDpmdW5jdGlvbihlLHQpe3ZhciBuO2lmKCFtLnJhZGlvVmFsdWUmJiJyYWRpbyI9PT10JiZ3KGUsImlucHV0IikpcmV0dXJuIG49ZS52YWx1ZSxlLnNldEF0dHJpYnV0ZSgidHlwZSIsdCksbiYmKGUudmFsdWU9biksdH19fSxyZW1vdmVBdHRyOmZ1bmN0aW9uKGUsdCl7dmFyIG4saT0wLHI9dCYmdC5tYXRjaChrKTtpZihyJiYxPT09ZS5ub2RlVHlwZSlmb3IoO249cltpKytdOyllLnJlbW92ZUF0dHJpYnV0ZShuKX19KSxTbj17c2V0OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4hMT09PXQ/Xy5yZW1vdmVBdHRyKGUsbik6ZS5zZXRBdHRyaWJ1dGUobixuKSxufX0sXy5lYWNoKF8uZXhwci5tYXRjaC5ib29sLnNvdXJjZS5tYXRjaCgvXHcrL2cpLGZ1bmN0aW9uKGUsdCl7dmFyIGE9Q25bdF18fF8uZmluZC5hdHRyO0NuW3RdPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaSxyLHM9dC50b0xvd2VyQ2FzZSgpO3JldHVybiBufHwocj1DbltzXSxDbltzXT1pLGk9bnVsbCE9YShlLHQsbik/czpudWxsLENuW3NdPXIpLGl9fSksL14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSksTW49L14oPzphfGFyZWEpJC9pO2Z1bmN0aW9uIERuKGUpe3JldHVybihlLm1hdGNoKGspfHxbXSkuam9pbigiICIpfWZ1bmN0aW9uIExuKGUpe3JldHVybiBlLmdldEF0dHJpYnV0ZSYmZS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIifWZ1bmN0aW9uIGtuKGUpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2U6InN0cmluZyI9PXR5cGVvZiBlJiZlLm1hdGNoKGspfHxbXX1fLmZuLmV4dGVuZCh7cHJvcDpmdW5jdGlvbihlLHQpe3JldHVybiBjKHRoaXMsXy5wcm9wLGUsdCwxPGFyZ3VtZW50cy5sZW5ndGgpfSxyZW1vdmVQcm9wOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtkZWxldGUgdGhpc1tfLnByb3BGaXhbZV18fGVdfSl9fSksXy5leHRlbmQoe3Byb3A6ZnVuY3Rpb24oZSx0LG4pe3ZhciBpLHIscz1lLm5vZGVUeXBlO2lmKDMhPT1zJiY4IT09cyYmMiE9PXMpcmV0dXJuIDE9PT1zJiZfLmlzWE1MRG9jKGUpfHwodD1fLnByb3BGaXhbdF18fHQscj1fLnByb3BIb29rc1t0XSksdm9pZCAwIT09bj9yJiYic2V0ImluIHImJnZvaWQgMCE9PShpPXIuc2V0KGUsbix0KSk/aTplW3RdPW46ciYmImdldCJpbiByJiZudWxsIT09KGk9ci5nZXQoZSx0KSk/aTplW3RdfSxwcm9wSG9va3M6e3RhYkluZGV4OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9Xy5maW5kLmF0dHIoZSwidGFiaW5kZXgiKTtyZXR1cm4gdD9wYXJzZUludCh0LDEwKTpBbi50ZXN0KGUubm9kZU5hbWUpfHxNbi50ZXN0KGUubm9kZU5hbWUpJiZlLmhyZWY/MDotMX19fSxwcm9wRml4Ontmb3I6Imh0bWxGb3IiLGNsYXNzOiJjbGFzc05hbWUifX0pLG0ub3B0U2VsZWN0ZWR8fChfLnByb3BIb29rcy5zZWxlY3RlZD17Z2V0OmZ1bmN0aW9uKGUpe2U9ZS5wYXJlbnROb2RlO3JldHVybiBlJiZlLnBhcmVudE5vZGUmJmUucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LG51bGx9LHNldDpmdW5jdGlvbihlKXtlPWUucGFyZW50Tm9kZTtlJiYoZS5zZWxlY3RlZEluZGV4LGUucGFyZW50Tm9kZSkmJmUucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4fX0pLF8uZWFjaChbInRhYkluZGV4IiwicmVhZE9ubHkiLCJtYXhMZW5ndGgiLCJjZWxsU3BhY2luZyIsImNlbGxQYWRkaW5nIiwicm93U3BhbiIsImNvbFNwYW4iLCJ1c2VNYXAiLCJmcmFtZUJvcmRlciIsImNvbnRlbnRFZGl0YWJsZSJdLGZ1bmN0aW9uKCl7Xy5wcm9wRml4W3RoaXMudG9Mb3dlckNhc2UoKV09dGhpc30pLF8uZm4uZXh0ZW5kKHthZGRDbGFzczpmdW5jdGlvbih0KXt2YXIgZSxuLGkscixzLGE7cmV0dXJuIHkodCk/dGhpcy5lYWNoKGZ1bmN0aW9uKGUpe18odGhpcykuYWRkQ2xhc3ModC5jYWxsKHRoaXMsZSxMbih0aGlzKSkpfSk6KGU9a24odCkpLmxlbmd0aD90aGlzLmVhY2goZnVuY3Rpb24oKXtpZihpPUxuKHRoaXMpLG49MT09PXRoaXMubm9kZVR5cGUmJiIgIitEbihpKSsiICIpe2ZvcihzPTA7czxlLmxlbmd0aDtzKyspcj1lW3NdLG4uaW5kZXhPZigiICIrcisiICIpPDAmJihuKz1yKyIgIik7YT1EbihuKSxpIT09YSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixhKX19KTp0aGlzfSxyZW1vdmVDbGFzczpmdW5jdGlvbih0KXt2YXIgZSxuLGkscixzLGE7cmV0dXJuIHkodCk/dGhpcy5lYWNoKGZ1bmN0aW9uKGUpe18odGhpcykucmVtb3ZlQ2xhc3ModC5jYWxsKHRoaXMsZSxMbih0aGlzKSkpfSk6YXJndW1lbnRzLmxlbmd0aD8oZT1rbih0KSkubGVuZ3RoP3RoaXMuZWFjaChmdW5jdGlvbigpe2lmKGk9TG4odGhpcyksbj0xPT09dGhpcy5ub2RlVHlwZSYmIiAiK0RuKGkpKyIgIil7Zm9yKHM9MDtzPGUubGVuZ3RoO3MrKylmb3Iocj1lW3NdOy0xPG4uaW5kZXhPZigiICIrcisiICIpOyluPW4ucmVwbGFjZSgiICIrcisiICIsIiAiKTthPURuKG4pLGkhPT1hJiZ0aGlzLnNldEF0dHJpYnV0ZSgiY2xhc3MiLGEpfX0pOnRoaXM6dGhpcy5hdHRyKCJjbGFzcyIsIiIpfSx0b2dnbGVDbGFzczpmdW5jdGlvbih0LG4pe3ZhciBlLGkscixzLGE9dHlwZW9mIHQsbz0ic3RyaW5nIj09YXx8QXJyYXkuaXNBcnJheSh0KTtyZXR1cm4geSh0KT90aGlzLmVhY2goZnVuY3Rpb24oZSl7Xyh0aGlzKS50b2dnbGVDbGFzcyh0LmNhbGwodGhpcyxlLExuKHRoaXMpLG4pLG4pfSk6ImJvb2xlYW4iPT10eXBlb2YgbiYmbz9uP3RoaXMuYWRkQ2xhc3ModCk6dGhpcy5yZW1vdmVDbGFzcyh0KTooZT1rbih0KSx0aGlzLmVhY2goZnVuY3Rpb24oKXtpZihvKWZvcihzPV8odGhpcykscj0wO3I8ZS5sZW5ndGg7cisrKWk9ZVtyXSxzLmhhc0NsYXNzKGkpP3MucmVtb3ZlQ2xhc3MoaSk6cy5hZGRDbGFzcyhpKTtlbHNlIHZvaWQgMCE9PXQmJiJib29sZWFuIiE9YXx8KChpPUxuKHRoaXMpKSYmdi5zZXQodGhpcywiX19jbGFzc05hbWVfXyIsaSksdGhpcy5zZXRBdHRyaWJ1dGUmJnRoaXMuc2V0QXR0cmlidXRlKCJjbGFzcyIsIWkmJiExIT09dCYmdi5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSkpfSxoYXNDbGFzczpmdW5jdGlvbihlKXtmb3IodmFyIHQsbj0wLGk9IiAiK2UrIiAiO3Q9dGhpc1tuKytdOylpZigxPT09dC5ub2RlVHlwZSYmLTE8KCIgIitEbihMbih0KSkrIiAiKS5pbmRleE9mKGkpKXJldHVybiEwO3JldHVybiExfX0pO2Z1bmN0aW9uIE9uKGUpe2Uuc3RvcFByb3BhZ2F0aW9uKCl9dmFyIFBuPS9cci9nLEluPShfLmZuLmV4dGVuZCh7dmFsOmZ1bmN0aW9uKHQpe3ZhciBuLGUsaSxyPXRoaXNbMF07cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KGk9eSh0KSx0aGlzLmVhY2goZnVuY3Rpb24oZSl7MSE9PXRoaXMubm9kZVR5cGV8fChudWxsPT0oZT1pP3QuY2FsbCh0aGlzLGUsXyh0aGlzKS52YWwoKSk6dCk/ZT0iIjoibnVtYmVyIj09dHlwZW9mIGU/ZSs9IiI6QXJyYXkuaXNBcnJheShlKSYmKGU9Xy5tYXAoZSxmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT8iIjplKyIifSkpLChuPV8udmFsSG9va3NbdGhpcy50eXBlXXx8Xy52YWxIb29rc1t0aGlzLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldKSYmInNldCJpbiBuJiZ2b2lkIDAhPT1uLnNldCh0aGlzLGUsInZhbHVlIikpfHwodGhpcy52YWx1ZT1lKX0pKTpyPyhuPV8udmFsSG9va3Nbci50eXBlXXx8Xy52YWxIb29rc1tyLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldKSYmImdldCJpbiBuJiZ2b2lkIDAhPT0oZT1uLmdldChyLCJ2YWx1ZSIpKT9lOiJzdHJpbmciPT10eXBlb2YoZT1yLnZhbHVlKT9lLnJlcGxhY2UoUG4sIiIpOm51bGw9PWU/IiI6ZTp2b2lkIDB9fSksXy5leHRlbmQoe3ZhbEhvb2tzOntvcHRpb246e2dldDpmdW5jdGlvbihlKXt2YXIgdD1fLmZpbmQuYXR0cihlLCJ2YWx1ZSIpO3JldHVybiBudWxsIT10P3Q6RG4oXy50ZXh0KGUpKX19LHNlbGVjdDp7Z2V0OmZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxuPWUub3B0aW9ucyxpPWUuc2VsZWN0ZWRJbmRleCxyPSJzZWxlY3Qtb25lIj09PWUudHlwZSxzPXI/bnVsbDpbXSxhPXI/aSsxOm4ubGVuZ3RoLG89aTwwP2E6cj9pOjA7bzxhO28rKylpZigoKHQ9bltvXSkuc2VsZWN0ZWR8fG89PT1pKSYmIXQuZGlzYWJsZWQmJighdC5wYXJlbnROb2RlLmRpc2FibGVkfHwhdyh0LnBhcmVudE5vZGUsIm9wdGdyb3VwIikpKXtpZih0PV8odCkudmFsKCkscilyZXR1cm4gdDtzLnB1c2godCl9cmV0dXJuIHN9LHNldDpmdW5jdGlvbihlLHQpe2Zvcih2YXIgbixpLHI9ZS5vcHRpb25zLHM9Xy5tYWtlQXJyYXkodCksYT1yLmxlbmd0aDthLS07KSgoaT1yW2FdKS5zZWxlY3RlZD0tMTxfLmluQXJyYXkoXy52YWxIb29rcy5vcHRpb24uZ2V0KGkpLHMpKSYmKG49ITApO3JldHVybiBufHwoZS5zZWxlY3RlZEluZGV4PS0xKSxzfX19fSksXy5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLGZ1bmN0aW9uKCl7Xy52YWxIb29rc1t0aGlzXT17c2V0OmZ1bmN0aW9uKGUsdCl7aWYoQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gZS5jaGVja2VkPS0xPF8uaW5BcnJheShfKGUpLnZhbCgpLHQpfX0sbS5jaGVja09ufHwoXy52YWxIb29rc1t0aGlzXS5nZXQ9ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PT1lLmdldEF0dHJpYnV0ZSgidmFsdWUiKT8ib24iOmUudmFsdWV9KX0pLHgubG9jYXRpb24pLCRuPXtndWlkOkRhdGUubm93KCl9LE5uPS9cPy8sam49KF8ucGFyc2VYTUw9ZnVuY3Rpb24oZSl7dmFyIHQsbjtpZighZXx8InN0cmluZyIhPXR5cGVvZiBlKXJldHVybiBudWxsO3RyeXt0PShuZXcgeC5ET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyhlLCJ0ZXh0L3htbCIpfWNhdGNoKGUpe31yZXR1cm4gbj10JiZ0LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJwYXJzZXJlcnJvciIpWzBdLHQmJiFufHxfLmVycm9yKCJJbnZhbGlkIFhNTDogIisobj9fLm1hcChuLmNoaWxkTm9kZXMsZnVuY3Rpb24oZSl7cmV0dXJuIGUudGV4dENvbnRlbnR9KS5qb2luKCJcbiIpOmUpKSx0fSwvXig/OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC8pLHFuPShfLmV4dGVuZChfLmV2ZW50LHt0cmlnZ2VyOmZ1bmN0aW9uKGUsdCxuLGkpe3ZhciByLHMsYSxvLGwsZCxjLHU9W258fEVdLHA9Qi5jYWxsKGUsInR5cGUiKT9lLnR5cGU6ZSxoPUIuY2FsbChlLCJuYW1lc3BhY2UiKT9lLm5hbWVzcGFjZS5zcGxpdCgiLiIpOltdLGY9Yz1zPW49bnx8RTtpZigzIT09bi5ub2RlVHlwZSYmOCE9PW4ubm9kZVR5cGUmJiFqbi50ZXN0KHArXy5ldmVudC50cmlnZ2VyZWQpJiYoLTE8cC5pbmRleE9mKCIuIikmJihwPShoPXAuc3BsaXQoIi4iKSkuc2hpZnQoKSxoLnNvcnQoKSksbz1wLmluZGV4T2YoIjoiKTwwJiYib24iK3AsKGU9ZVtfLmV4cGFuZG9dP2U6bmV3IF8uRXZlbnQocCwib2JqZWN0Ij09dHlwZW9mIGUmJmUpKS5pc1RyaWdnZXI9aT8yOjMsZS5uYW1lc3BhY2U9aC5qb2luKCIuIiksZS5ybmFtZXNwYWNlPWUubmFtZXNwYWNlP25ldyBSZWdFeHAoIihefFxcLikiK2guam9pbigiXFwuKD86LipcXC58KSIpKyIoXFwufCQpIik6bnVsbCxlLnJlc3VsdD12b2lkIDAsZS50YXJnZXR8fChlLnRhcmdldD1uKSx0PW51bGw9PXQ/W2VdOl8ubWFrZUFycmF5KHQsW2VdKSxkPV8uZXZlbnQuc3BlY2lhbFtwXXx8e30saXx8IWQudHJpZ2dlcnx8ITEhPT1kLnRyaWdnZXIuYXBwbHkobix0KSkpe2lmKCFpJiYhZC5ub0J1YmJsZSYmIWoobikpe2ZvcihhPWQuZGVsZWdhdGVUeXBlfHxwLGpuLnRlc3QoYStwKXx8KGY9Zi5wYXJlbnROb2RlKTtmO2Y9Zi5wYXJlbnROb2RlKXUucHVzaChmKSxzPWY7cz09PShuLm93bmVyRG9jdW1lbnR8fEUpJiZ1LnB1c2gocy5kZWZhdWx0Vmlld3x8cy5wYXJlbnRXaW5kb3d8fHgpfWZvcihyPTA7KGY9dVtyKytdKSYmIWUuaXNQcm9wYWdhdGlvblN0b3BwZWQoKTspYz1mLGUudHlwZT0xPHI/YTpkLmJpbmRUeXBlfHxwLChsPSh2LmdldChmLCJldmVudHMiKXx8T2JqZWN0LmNyZWF0ZShudWxsKSlbZS50eXBlXSYmdi5nZXQoZiwiaGFuZGxlIikpJiZsLmFwcGx5KGYsdCksKGw9byYmZltvXSkmJmwuYXBwbHkmJmN0KGYpJiYoZS5yZXN1bHQ9bC5hcHBseShmLHQpLCExPT09ZS5yZXN1bHQpJiZlLnByZXZlbnREZWZhdWx0KCk7cmV0dXJuIGUudHlwZT1wLGl8fGUuaXNEZWZhdWx0UHJldmVudGVkKCl8fGQuX2RlZmF1bHQmJiExIT09ZC5fZGVmYXVsdC5hcHBseSh1LnBvcCgpLHQpfHwhY3Qobil8fG8mJnkobltwXSkmJiFqKG4pJiYoKHM9bltvXSkmJihuW29dPW51bGwpLF8uZXZlbnQudHJpZ2dlcmVkPXAsZS5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpJiZjLmFkZEV2ZW50TGlzdGVuZXIocCxPbiksbltwXSgpLGUuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSYmYy5yZW1vdmVFdmVudExpc3RlbmVyKHAsT24pLF8uZXZlbnQudHJpZ2dlcmVkPXZvaWQgMCxzKSYmKG5bb109cyksZS5yZXN1bHR9fSxzaW11bGF0ZTpmdW5jdGlvbihlLHQsbil7bj1fLmV4dGVuZChuZXcgXy5FdmVudCxuLHt0eXBlOmUsaXNTaW11bGF0ZWQ6ITB9KTtfLmV2ZW50LnRyaWdnZXIobixudWxsLHQpfX0pLF8uZm4uZXh0ZW5kKHt0cmlnZ2VyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe18uZXZlbnQudHJpZ2dlcihlLHQsdGhpcyl9KX0sdHJpZ2dlckhhbmRsZXI6ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzWzBdO2lmKG4pcmV0dXJuIF8uZXZlbnQudHJpZ2dlcihlLHQsbiwhMCl9fSksL1xbXF0kLyksem49L1xyP1xuL2csSG49L14oPzpzdWJtaXR8YnV0dG9ufGltYWdlfHJlc2V0fGZpbGUpJC9pLFJuPS9eKD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGtleWdlbikvaTtfLnBhcmFtPWZ1bmN0aW9uKGUsdCl7ZnVuY3Rpb24gbihlLHQpe3Q9eSh0KT90KCk6dCxyW3IubGVuZ3RoXT1lbmNvZGVVUklDb21wb25lbnQoZSkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChudWxsPT10PyIiOnQpfXZhciBpLHI9W107aWYobnVsbD09ZSlyZXR1cm4iIjtpZihBcnJheS5pc0FycmF5KGUpfHxlLmpxdWVyeSYmIV8uaXNQbGFpbk9iamVjdChlKSlfLmVhY2goZSxmdW5jdGlvbigpe24odGhpcy5uYW1lLHRoaXMudmFsdWUpfSk7ZWxzZSBmb3IoaSBpbiBlKSFmdW5jdGlvbiBuKGksZSxyLHMpe2lmKEFycmF5LmlzQXJyYXkoZSkpXy5lYWNoKGUsZnVuY3Rpb24oZSx0KXtyfHxxbi50ZXN0KGkpP3MoaSx0KTpuKGkrIlsiKygib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPXQ/ZToiIikrIl0iLHQscixzKX0pO2Vsc2UgaWYocnx8Im9iamVjdCIhPT1WKGUpKXMoaSxlKTtlbHNlIGZvcih2YXIgdCBpbiBlKW4oaSsiWyIrdCsiXSIsZVt0XSxyLHMpfShpLGVbaV0sdCxuKTtyZXR1cm4gci5qb2luKCImIil9LF8uZm4uZXh0ZW5kKHtzZXJpYWxpemU6ZnVuY3Rpb24oKXtyZXR1cm4gXy5wYXJhbSh0aGlzLnNlcmlhbGl6ZUFycmF5KCkpfSxzZXJpYWxpemVBcnJheTpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbigpe3ZhciBlPV8ucHJvcCh0aGlzLCJlbGVtZW50cyIpO3JldHVybiBlP18ubWFrZUFycmF5KGUpOnRoaXN9KS5maWx0ZXIoZnVuY3Rpb24oKXt2YXIgZT10aGlzLnR5cGU7cmV0dXJuIHRoaXMubmFtZSYmIV8odGhpcykuaXMoIjpkaXNhYmxlZCIpJiZSbi50ZXN0KHRoaXMubm9kZU5hbWUpJiYhSG4udGVzdChlKSYmKHRoaXMuY2hlY2tlZHx8IVR0LnRlc3QoZSkpfSkubWFwKGZ1bmN0aW9uKGUsdCl7dmFyIG49Xyh0aGlzKS52YWwoKTtyZXR1cm4gbnVsbD09bj9udWxsOkFycmF5LmlzQXJyYXkobik/Xy5tYXAobixmdW5jdGlvbihlKXtyZXR1cm57bmFtZTp0Lm5hbWUsdmFsdWU6ZS5yZXBsYWNlKHpuLCJcclxuIil9fSk6e25hbWU6dC5uYW1lLHZhbHVlOm4ucmVwbGFjZSh6biwiXHJcbiIpfX0pLmdldCgpfX0pO3ZhciBGbj0vJTIwL2csQm49LyMuKiQvLFduPS8oWz8mXSlfPVteJl0qLyxHbj0vXiguKj8pOlsgXHRdKihbXlxyXG5dKikkL2dtLFluPS9eKD86R0VUfEhFQUQpJC8sWG49L15cL1wvLyxWbj17fSxVbj17fSxRbj0iKi8iLmNvbmNhdCgiKiIpLEtuPUUuY3JlYXRlRWxlbWVudCgiYSIpO2Z1bmN0aW9uIFpuKHMpe3JldHVybiBmdW5jdGlvbihlLHQpeyJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPSIqIik7dmFyIG4saT0wLHI9ZS50b0xvd2VyQ2FzZSgpLm1hdGNoKGspfHxbXTtpZih5KHQpKWZvcig7bj1yW2krK107KSIrIj09PW5bMF0/KG49bi5zbGljZSgxKXx8IioiLChzW25dPXNbbl18fFtdKS51bnNoaWZ0KHQpKTooc1tuXT1zW25dfHxbXSkucHVzaCh0KX19ZnVuY3Rpb24gSm4odCxpLHIscyl7dmFyIGE9e30sbz10PT09VW47ZnVuY3Rpb24gbChlKXt2YXIgbjtyZXR1cm4gYVtlXT0hMCxfLmVhY2godFtlXXx8W10sZnVuY3Rpb24oZSx0KXt0PXQoaSxyLHMpO3JldHVybiJzdHJpbmciIT10eXBlb2YgdHx8b3x8YVt0XT9vPyEobj10KTp2b2lkIDA6KGkuZGF0YVR5cGVzLnVuc2hpZnQodCksbCh0KSwhMSl9KSxufXJldHVybiBsKGkuZGF0YVR5cGVzWzBdKXx8IWFbIioiXSYmbCgiKiIpfWZ1bmN0aW9uIGVpKGUsdCl7dmFyIG4saSxyPV8uYWpheFNldHRpbmdzLmZsYXRPcHRpb25zfHx7fTtmb3IobiBpbiB0KXZvaWQgMCE9PXRbbl0mJigocltuXT9lOmk9aXx8e30pW25dPXRbbl0pO3JldHVybiBpJiZfLmV4dGVuZCghMCxlLGkpLGV9S24uaHJlZj1Jbi5ocmVmLF8uZXh0ZW5kKHthY3RpdmU6MCxsYXN0TW9kaWZpZWQ6e30sZXRhZzp7fSxhamF4U2V0dGluZ3M6e3VybDpJbi5ocmVmLHR5cGU6IkdFVCIsaXNMb2NhbDovXig/OmFib3V0fGFwcHxhcHAtc3RvcmFnZXwuKy1leHRlbnNpb258ZmlsZXxyZXN8d2lkZ2V0KTokLy50ZXN0KEluLnByb3RvY29sKSxnbG9iYWw6ITAscHJvY2Vzc0RhdGE6ITAsYXN5bmM6ITAsY29udGVudFR5cGU6ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD1VVEYtOCIsYWNjZXB0czp7IioiOlFuLHRleHQ6InRleHQvcGxhaW4iLGh0bWw6InRleHQvaHRtbCIseG1sOiJhcHBsaWNhdGlvbi94bWwsIHRleHQveG1sIixqc29uOiJhcHBsaWNhdGlvbi9qc29uLCB0ZXh0L2phdmFzY3JpcHQifSxjb250ZW50czp7eG1sOi9cYnhtbFxiLyxodG1sOi9cYmh0bWwvLGpzb246L1xianNvblxiL30scmVzcG9uc2VGaWVsZHM6e3htbDoicmVzcG9uc2VYTUwiLHRleHQ6InJlc3BvbnNlVGV4dCIsanNvbjoicmVzcG9uc2VKU09OIn0sY29udmVydGVyczp7IiogdGV4dCI6U3RyaW5nLCJ0ZXh0IGh0bWwiOiEwLCJ0ZXh0IGpzb24iOkpTT04ucGFyc2UsInRleHQgeG1sIjpfLnBhcnNlWE1MfSxmbGF0T3B0aW9uczp7dXJsOiEwLGNvbnRleHQ6ITB9fSxhamF4U2V0dXA6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD9laShlaShlLF8uYWpheFNldHRpbmdzKSx0KTplaShfLmFqYXhTZXR0aW5ncyxlKX0sYWpheFByZWZpbHRlcjpabihWbiksYWpheFRyYW5zcG9ydDpabihVbiksYWpheDpmdW5jdGlvbihlLHQpeyJvYmplY3QiPT10eXBlb2YgZSYmKHQ9ZSxlPXZvaWQgMCk7dmFyIGwsZCxjLG4sdSxwLGgsaSxmPV8uYWpheFNldHVwKHt9LHQ9dHx8e30pLG09Zi5jb250ZXh0fHxmLGc9Zi5jb250ZXh0JiYobS5ub2RlVHlwZXx8bS5qcXVlcnkpP18obSk6Xy5ldmVudCx2PV8uRGVmZXJyZWQoKSx5PV8uQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLGI9Zi5zdGF0dXNDb2RlfHx7fSxyPXt9LHM9e30sYT0iY2FuY2VsZWQiLHc9e3JlYWR5U3RhdGU6MCxnZXRSZXNwb25zZUhlYWRlcjpmdW5jdGlvbihlKXt2YXIgdDtpZihwKXtpZighbilmb3Iobj17fTt0PUduLmV4ZWMoYyk7KW5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl09KG5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl18fFtdKS5jb25jYXQodFsyXSk7dD1uW2UudG9Mb3dlckNhc2UoKSsiICJdfXJldHVybiBudWxsPT10P251bGw6dC5qb2luKCIsICIpfSxnZXRBbGxSZXNwb25zZUhlYWRlcnM6ZnVuY3Rpb24oKXtyZXR1cm4gcD9jOm51bGx9LHNldFJlcXVlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbnVsbD09cCYmKGU9c1tlLnRvTG93ZXJDYXNlKCldPXNbZS50b0xvd2VyQ2FzZSgpXXx8ZSxyW2VdPXQpLHRoaXN9LG92ZXJyaWRlTWltZVR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PXAmJihmLm1pbWVUeXBlPWUpLHRoaXN9LHN0YXR1c0NvZGU6ZnVuY3Rpb24oZSl7aWYoZSlpZihwKXcuYWx3YXlzKGVbdy5zdGF0dXNdKTtlbHNlIGZvcih2YXIgdCBpbiBlKWJbdF09W2JbdF0sZVt0XV07cmV0dXJuIHRoaXN9LGFib3J0OmZ1bmN0aW9uKGUpe2U9ZXx8YTtyZXR1cm4gbCYmbC5hYm9ydChlKSxvKDAsZSksdGhpc319O2lmKHYucHJvbWlzZSh3KSxmLnVybD0oKGV8fGYudXJsfHxJbi5ocmVmKSsiIikucmVwbGFjZShYbixJbi5wcm90b2NvbCsiLy8iKSxmLnR5cGU9dC5tZXRob2R8fHQudHlwZXx8Zi5tZXRob2R8fGYudHlwZSxmLmRhdGFUeXBlcz0oZi5kYXRhVHlwZXx8IioiKS50b0xvd2VyQ2FzZSgpLm1hdGNoKGspfHxbIiJdLG51bGw9PWYuY3Jvc3NEb21haW4pe2U9RS5jcmVhdGVFbGVtZW50KCJhIik7dHJ5e2UuaHJlZj1mLnVybCxlLmhyZWY9ZS5ocmVmLGYuY3Jvc3NEb21haW49S24ucHJvdG9jb2wrIi8vIitLbi5ob3N0IT1lLnByb3RvY29sKyIvLyIrZS5ob3N0fWNhdGNoKGUpe2YuY3Jvc3NEb21haW49ITB9fWlmKGYuZGF0YSYmZi5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiBmLmRhdGEmJihmLmRhdGE9Xy5wYXJhbShmLmRhdGEsZi50cmFkaXRpb25hbCkpLEpuKFZuLGYsdCx3KSwhcCl7Zm9yKGkgaW4oaD1fLmV2ZW50JiZmLmdsb2JhbCkmJjA9PV8uYWN0aXZlKysmJl8uZXZlbnQudHJpZ2dlcigiYWpheFN0YXJ0IiksZi50eXBlPWYudHlwZS50b1VwcGVyQ2FzZSgpLGYuaGFzQ29udGVudD0hWW4udGVzdChmLnR5cGUpLGQ9Zi51cmwucmVwbGFjZShCbiwiIiksZi5oYXNDb250ZW50P2YuZGF0YSYmZi5wcm9jZXNzRGF0YSYmMD09PShmLmNvbnRlbnRUeXBlfHwiIikuaW5kZXhPZigiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIikmJihmLmRhdGE9Zi5kYXRhLnJlcGxhY2UoRm4sIisiKSk6KGU9Zi51cmwuc2xpY2UoZC5sZW5ndGgpLGYuZGF0YSYmKGYucHJvY2Vzc0RhdGF8fCJzdHJpbmciPT10eXBlb2YgZi5kYXRhKSYmKGQrPShObi50ZXN0KGQpPyImIjoiPyIpK2YuZGF0YSxkZWxldGUgZi5kYXRhKSwhMT09PWYuY2FjaGUmJihkPWQucmVwbGFjZShXbiwiJDEiKSxlPShObi50ZXN0KGQpPyImIjoiPyIpKyJfPSIrJG4uZ3VpZCsrK2UpLGYudXJsPWQrZSksZi5pZk1vZGlmaWVkJiYoXy5sYXN0TW9kaWZpZWRbZF0mJncuc2V0UmVxdWVzdEhlYWRlcigiSWYtTW9kaWZpZWQtU2luY2UiLF8ubGFzdE1vZGlmaWVkW2RdKSxfLmV0YWdbZF0pJiZ3LnNldFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2giLF8uZXRhZ1tkXSksKGYuZGF0YSYmZi5oYXNDb250ZW50JiYhMSE9PWYuY29udGVudFR5cGV8fHQuY29udGVudFR5cGUpJiZ3LnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtVHlwZSIsZi5jb250ZW50VHlwZSksdy5zZXRSZXF1ZXN0SGVhZGVyKCJBY2NlcHQiLGYuZGF0YVR5cGVzWzBdJiZmLmFjY2VwdHNbZi5kYXRhVHlwZXNbMF1dP2YuYWNjZXB0c1tmLmRhdGFUeXBlc1swXV0rKCIqIiE9PWYuZGF0YVR5cGVzWzBdPyIsICIrUW4rIjsgcT0wLjAxIjoiIik6Zi5hY2NlcHRzWyIqIl0pLGYuaGVhZGVycyl3LnNldFJlcXVlc3RIZWFkZXIoaSxmLmhlYWRlcnNbaV0pO2lmKGYuYmVmb3JlU2VuZCYmKCExPT09Zi5iZWZvcmVTZW5kLmNhbGwobSx3LGYpfHxwKSlyZXR1cm4gdy5hYm9ydCgpO2lmKGE9ImFib3J0Iix5LmFkZChmLmNvbXBsZXRlKSx3LmRvbmUoZi5zdWNjZXNzKSx3LmZhaWwoZi5lcnJvciksbD1KbihVbixmLHQsdykpe2lmKHcucmVhZHlTdGF0ZT0xLGgmJmcudHJpZ2dlcigiYWpheFNlbmQiLFt3LGZdKSxwKXJldHVybiB3O2YuYXN5bmMmJjA8Zi50aW1lb3V0JiYodT14LnNldFRpbWVvdXQoZnVuY3Rpb24oKXt3LmFib3J0KCJ0aW1lb3V0Iil9LGYudGltZW91dCkpO3RyeXtwPSExLGwuc2VuZChyLG8pfWNhdGNoKGUpe2lmKHApdGhyb3cgZTtvKC0xLGUpfX1lbHNlIG8oLTEsIk5vIFRyYW5zcG9ydCIpfXJldHVybiB3O2Z1bmN0aW9uIG8oZSx0LG4saSl7dmFyIHIscyxhLG89dDtwfHwocD0hMCx1JiZ4LmNsZWFyVGltZW91dCh1KSxsPXZvaWQgMCxjPWl8fCIiLHcucmVhZHlTdGF0ZT0wPGU/NDowLGk9MjAwPD1lJiZlPDMwMHx8MzA0PT09ZSxuJiYoYT1mdW5jdGlvbihlLHQsbil7Zm9yKHZhciBpLHIscyxhLG89ZS5jb250ZW50cyxsPWUuZGF0YVR5cGVzOyIqIj09PWxbMF07KWwuc2hpZnQoKSx2b2lkIDA9PT1pJiYoaT1lLm1pbWVUeXBlfHx0LmdldFJlc3BvbnNlSGVhZGVyKCJDb250ZW50LVR5cGUiKSk7aWYoaSlmb3IociBpbiBvKWlmKG9bcl0mJm9bcl0udGVzdChpKSl7bC51bnNoaWZ0KHIpO2JyZWFrfWlmKGxbMF1pbiBuKXM9bFswXTtlbHNle2ZvcihyIGluIG4pe2lmKCFsWzBdfHxlLmNvbnZlcnRlcnNbcisiICIrbFswXV0pe3M9cjticmVha31hPWF8fHJ9cz1zfHxhfWlmKHMpcmV0dXJuIHMhPT1sWzBdJiZsLnVuc2hpZnQocyksbltzXX0oZix3LG4pKSwhaSYmLTE8Xy5pbkFycmF5KCJzY3JpcHQiLGYuZGF0YVR5cGVzKSYmXy5pbkFycmF5KCJqc29uIixmLmRhdGFUeXBlcyk8MCYmKGYuY29udmVydGVyc1sidGV4dCBzY3JpcHQiXT1mdW5jdGlvbigpe30pLGE9ZnVuY3Rpb24oZSx0LG4saSl7dmFyIHIscyxhLG8sbCxkPXt9LGM9ZS5kYXRhVHlwZXMuc2xpY2UoKTtpZihjWzFdKWZvcihhIGluIGUuY29udmVydGVycylkW2EudG9Mb3dlckNhc2UoKV09ZS5jb252ZXJ0ZXJzW2FdO2ZvcihzPWMuc2hpZnQoKTtzOylpZihlLnJlc3BvbnNlRmllbGRzW3NdJiYobltlLnJlc3BvbnNlRmllbGRzW3NdXT10KSwhbCYmaSYmZS5kYXRhRmlsdGVyJiYodD1lLmRhdGFGaWx0ZXIodCxlLmRhdGFUeXBlKSksbD1zLHM9Yy5zaGlmdCgpKWlmKCIqIj09PXMpcz1sO2Vsc2UgaWYoIioiIT09bCYmbCE9PXMpe2lmKCEoYT1kW2wrIiAiK3NdfHxkWyIqICIrc10pKWZvcihyIGluIGQpaWYoKG89ci5zcGxpdCgiICIpKVsxXT09PXMmJihhPWRbbCsiICIrb1swXV18fGRbIiogIitvWzBdXSkpeyEwPT09YT9hPWRbcl06ITAhPT1kW3JdJiYocz1vWzBdLGMudW5zaGlmdChvWzFdKSk7YnJlYWt9aWYoITAhPT1hKWlmKGEmJmUudGhyb3dzKXQ9YSh0KTtlbHNlIHRyeXt0PWEodCl9Y2F0Y2goZSl7cmV0dXJue3N0YXRlOiJwYXJzZXJlcnJvciIsZXJyb3I6YT9lOiJObyBjb252ZXJzaW9uIGZyb20gIitsKyIgdG8gIitzfX19cmV0dXJue3N0YXRlOiJzdWNjZXNzIixkYXRhOnR9fShmLGEsdyxpKSxpPyhmLmlmTW9kaWZpZWQmJigobj13LmdldFJlc3BvbnNlSGVhZGVyKCJMYXN0LU1vZGlmaWVkIikpJiYoXy5sYXN0TW9kaWZpZWRbZF09biksbj13LmdldFJlc3BvbnNlSGVhZGVyKCJldGFnIikpJiYoXy5ldGFnW2RdPW4pLDIwND09PWV8fCJIRUFEIj09PWYudHlwZT9vPSJub2NvbnRlbnQiOjMwND09PWU/bz0ibm90bW9kaWZpZWQiOihvPWEuc3RhdGUscj1hLmRhdGEsaT0hKHM9YS5lcnJvcikpKToocz1vLCFlJiZvfHwobz0iZXJyb3IiLGU8MCYmKGU9MCkpKSx3LnN0YXR1cz1lLHcuc3RhdHVzVGV4dD0odHx8bykrIiIsaT92LnJlc29sdmVXaXRoKG0sW3Isbyx3XSk6di5yZWplY3RXaXRoKG0sW3csbyxzXSksdy5zdGF0dXNDb2RlKGIpLGI9dm9pZCAwLGgmJmcudHJpZ2dlcihpPyJhamF4U3VjY2VzcyI6ImFqYXhFcnJvciIsW3csZixpP3I6c10pLHkuZmlyZVdpdGgobSxbdyxvXSksaCYmKGcudHJpZ2dlcigiYWpheENvbXBsZXRlIixbdyxmXSksLS1fLmFjdGl2ZXx8Xy5ldmVudC50cmlnZ2VyKCJhamF4U3RvcCIpKSl9fSxnZXRKU09OOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gXy5nZXQoZSx0LG4sImpzb24iKX0sZ2V0U2NyaXB0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIF8uZ2V0KGUsdm9pZCAwLHQsInNjcmlwdCIpfX0pLF8uZWFjaChbImdldCIsInBvc3QiXSxmdW5jdGlvbihlLHIpe19bcl09ZnVuY3Rpb24oZSx0LG4saSl7cmV0dXJuIHkodCkmJihpPWl8fG4sbj10LHQ9dm9pZCAwKSxfLmFqYXgoXy5leHRlbmQoe3VybDplLHR5cGU6cixkYXRhVHlwZTppLGRhdGE6dCxzdWNjZXNzOm59LF8uaXNQbGFpbk9iamVjdChlKSYmZSkpfX0pLF8uYWpheFByZWZpbHRlcihmdW5jdGlvbihlKXtmb3IodmFyIHQgaW4gZS5oZWFkZXJzKSJjb250ZW50LXR5cGUiPT09dC50b0xvd2VyQ2FzZSgpJiYoZS5jb250ZW50VHlwZT1lLmhlYWRlcnNbdF18fCIiKX0pLF8uX2V2YWxVcmw9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBfLmFqYXgoe3VybDplLHR5cGU6IkdFVCIsZGF0YVR5cGU6InNjcmlwdCIsY2FjaGU6ITAsYXN5bmM6ITEsZ2xvYmFsOiExLGNvbnZlcnRlcnM6eyJ0ZXh0IHNjcmlwdCI6ZnVuY3Rpb24oKXt9fSxkYXRhRmlsdGVyOmZ1bmN0aW9uKGUpe18uZ2xvYmFsRXZhbChlLHQsbil9fSl9LF8uZm4uZXh0ZW5kKHt3cmFwQWxsOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzWzBdJiYoeShlKSYmKGU9ZS5jYWxsKHRoaXNbMF0pKSxlPV8oZSx0aGlzWzBdLm93bmVyRG9jdW1lbnQpLmVxKDApLmNsb25lKCEwKSx0aGlzWzBdLnBhcmVudE5vZGUmJmUuaW5zZXJ0QmVmb3JlKHRoaXNbMF0pLGUubWFwKGZ1bmN0aW9uKCl7Zm9yKHZhciBlPXRoaXM7ZS5maXJzdEVsZW1lbnRDaGlsZDspZT1lLmZpcnN0RWxlbWVudENoaWxkO3JldHVybiBlfSkuYXBwZW5kKHRoaXMpKSx0aGlzfSx3cmFwSW5uZXI6ZnVuY3Rpb24obil7cmV0dXJuIHkobik/dGhpcy5lYWNoKGZ1bmN0aW9uKGUpe18odGhpcykud3JhcElubmVyKG4uY2FsbCh0aGlzLGUpKX0pOnRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPV8odGhpcyksdD1lLmNvbnRlbnRzKCk7dC5sZW5ndGg/dC53cmFwQWxsKG4pOmUuYXBwZW5kKG4pfSl9LHdyYXA6ZnVuY3Rpb24odCl7dmFyIG49eSh0KTtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKGUpe18odGhpcykud3JhcEFsbChuP3QuY2FsbCh0aGlzLGUpOnQpfSl9LHVud3JhcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wYXJlbnQoZSkubm90KCJib2R5IikuZWFjaChmdW5jdGlvbigpe18odGhpcykucmVwbGFjZVdpdGgodGhpcy5jaGlsZE5vZGVzKX0pLHRoaXN9fSksXy5leHByLnBzZXVkb3MuaGlkZGVuPWZ1bmN0aW9uKGUpe3JldHVybiFfLmV4cHIucHNldWRvcy52aXNpYmxlKGUpfSxfLmV4cHIucHNldWRvcy52aXNpYmxlPWZ1bmN0aW9uKGUpe3JldHVybiEhKGUub2Zmc2V0V2lkdGh8fGUub2Zmc2V0SGVpZ2h0fHxlLmdldENsaWVudFJlY3RzKCkubGVuZ3RoKX0sXy5hamF4U2V0dGluZ3MueGhyPWZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgeC5YTUxIdHRwUmVxdWVzdH1jYXRjaChlKXt9fTt2YXIgdGk9ezA6MjAwLDEyMjM6MjA0fSxuaT1fLmFqYXhTZXR0aW5ncy54aHIoKSxpaT0obS5jb3JzPSEhbmkmJiJ3aXRoQ3JlZGVudGlhbHMiaW4gbmksbS5hamF4PW5pPSEhbmksXy5hamF4VHJhbnNwb3J0KGZ1bmN0aW9uKHIpe3ZhciBzLGE7aWYobS5jb3JzfHxuaSYmIXIuY3Jvc3NEb21haW4pcmV0dXJue3NlbmQ6ZnVuY3Rpb24oZSx0KXt2YXIgbixpPXIueGhyKCk7aWYoaS5vcGVuKHIudHlwZSxyLnVybCxyLmFzeW5jLHIudXNlcm5hbWUsci5wYXNzd29yZCksci54aHJGaWVsZHMpZm9yKG4gaW4gci54aHJGaWVsZHMpaVtuXT1yLnhockZpZWxkc1tuXTtmb3IobiBpbiByLm1pbWVUeXBlJiZpLm92ZXJyaWRlTWltZVR5cGUmJmkub3ZlcnJpZGVNaW1lVHlwZShyLm1pbWVUeXBlKSxyLmNyb3NzRG9tYWlufHxlWyJYLVJlcXVlc3RlZC1XaXRoIl18fChlWyJYLVJlcXVlc3RlZC1XaXRoIl09IlhNTEh0dHBSZXF1ZXN0IiksZSlpLnNldFJlcXVlc3RIZWFkZXIobixlW25dKTtzPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe3MmJihzPWE9aS5vbmxvYWQ9aS5vbmVycm9yPWkub25hYm9ydD1pLm9udGltZW91dD1pLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsLCJhYm9ydCI9PT1lP2kuYWJvcnQoKToiZXJyb3IiPT09ZT8ibnVtYmVyIiE9dHlwZW9mIGkuc3RhdHVzP3QoMCwiZXJyb3IiKTp0KGkuc3RhdHVzLGkuc3RhdHVzVGV4dCk6dCh0aVtpLnN0YXR1c118fGkuc3RhdHVzLGkuc3RhdHVzVGV4dCwidGV4dCIhPT0oaS5yZXNwb25zZVR5cGV8fCJ0ZXh0Iil8fCJzdHJpbmciIT10eXBlb2YgaS5yZXNwb25zZVRleHQ/e2JpbmFyeTppLnJlc3BvbnNlfTp7dGV4dDppLnJlc3BvbnNlVGV4dH0saS5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSkpfX0saS5vbmxvYWQ9cygpLGE9aS5vbmVycm9yPWkub250aW1lb3V0PXMoImVycm9yIiksdm9pZCAwIT09aS5vbmFib3J0P2kub25hYm9ydD1hOmkub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09PWkucmVhZHlTdGF0ZSYmeC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cyYmYSgpfSl9LHM9cygiYWJvcnQiKTt0cnl7aS5zZW5kKHIuaGFzQ29udGVudCYmci5kYXRhfHxudWxsKX1jYXRjaChlKXtpZihzKXRocm93IGV9fSxhYm9ydDpmdW5jdGlvbigpe3MmJnMoKX19fSksXy5hamF4UHJlZmlsdGVyKGZ1bmN0aW9uKGUpe2UuY3Jvc3NEb21haW4mJihlLmNvbnRlbnRzLnNjcmlwdD0hMSl9KSxfLmFqYXhTZXR1cCh7YWNjZXB0czp7c2NyaXB0OiJ0ZXh0L2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2VjbWFzY3JpcHQsIGFwcGxpY2F0aW9uL3gtZWNtYXNjcmlwdCJ9LGNvbnRlbnRzOntzY3JpcHQ6L1xiKD86amF2YXxlY21hKXNjcmlwdFxiL30sY29udmVydGVyczp7InRleHQgc2NyaXB0IjpmdW5jdGlvbihlKXtyZXR1cm4gXy5nbG9iYWxFdmFsKGUpLGV9fX0pLF8uYWpheFByZWZpbHRlcigic2NyaXB0IixmdW5jdGlvbihlKXt2b2lkIDA9PT1lLmNhY2hlJiYoZS5jYWNoZT0hMSksZS5jcm9zc0RvbWFpbiYmKGUudHlwZT0iR0VUIil9KSxfLmFqYXhUcmFuc3BvcnQoInNjcmlwdCIsZnVuY3Rpb24obil7dmFyIGkscjtpZihuLmNyb3NzRG9tYWlufHxuLnNjcmlwdEF0dHJzKXJldHVybntzZW5kOmZ1bmN0aW9uKGUsdCl7aT1fKCI8c2NyaXB0PiIpLmF0dHIobi5zY3JpcHRBdHRyc3x8e30pLnByb3Aoe2NoYXJzZXQ6bi5zY3JpcHRDaGFyc2V0LHNyYzpuLnVybH0pLm9uKCJsb2FkIGVycm9yIixyPWZ1bmN0aW9uKGUpe2kucmVtb3ZlKCkscj1udWxsLGUmJnQoImVycm9yIj09PWUudHlwZT80MDQ6MjAwLGUudHlwZSl9KSxFLmhlYWQuYXBwZW5kQ2hpbGQoaVswXSl9LGFib3J0OmZ1bmN0aW9uKCl7ciYmcigpfX19KSxbXSkscmk9Lyg9KVw/KD89JnwkKXxcP1w/LyxzaT0oXy5hamF4U2V0dXAoe2pzb25wOiJjYWxsYmFjayIsanNvbnBDYWxsYmFjazpmdW5jdGlvbigpe3ZhciBlPWlpLnBvcCgpfHxfLmV4cGFuZG8rIl8iKyRuLmd1aWQrKztyZXR1cm4gdGhpc1tlXT0hMCxlfX0pLF8uYWpheFByZWZpbHRlcigianNvbiBqc29ucCIsZnVuY3Rpb24oZSx0LG4pe3ZhciBpLHIscyxhPSExIT09ZS5qc29ucCYmKHJpLnRlc3QoZS51cmwpPyJ1cmwiOiJzdHJpbmciPT10eXBlb2YgZS5kYXRhJiYwPT09KGUuY29udGVudFR5cGV8fCIiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKSYmcmkudGVzdChlLmRhdGEpJiYiZGF0YSIpO2lmKGF8fCJqc29ucCI9PT1lLmRhdGFUeXBlc1swXSlyZXR1cm4gaT1lLmpzb25wQ2FsbGJhY2s9eShlLmpzb25wQ2FsbGJhY2spP2UuanNvbnBDYWxsYmFjaygpOmUuanNvbnBDYWxsYmFjayxhP2VbYV09ZVthXS5yZXBsYWNlKHJpLCIkMSIraSk6ITEhPT1lLmpzb25wJiYoZS51cmwrPShObi50ZXN0KGUudXJsKT8iJiI6Ij8iKStlLmpzb25wKyI9IitpKSxlLmNvbnZlcnRlcnNbInNjcmlwdCBqc29uIl09ZnVuY3Rpb24oKXtyZXR1cm4gc3x8Xy5lcnJvcihpKyIgd2FzIG5vdCBjYWxsZWQiKSxzWzBdfSxlLmRhdGFUeXBlc1swXT0ianNvbiIscj14W2ldLHhbaV09ZnVuY3Rpb24oKXtzPWFyZ3VtZW50c30sbi5hbHdheXMoZnVuY3Rpb24oKXt2b2lkIDA9PT1yP18oeCkucmVtb3ZlUHJvcChpKTp4W2ldPXIsZVtpXSYmKGUuanNvbnBDYWxsYmFjaz10Lmpzb25wQ2FsbGJhY2ssaWkucHVzaChpKSkscyYmeShyKSYmcihzWzBdKSxzPXI9dm9pZCAwfSksInNjcmlwdCJ9KSxtLmNyZWF0ZUhUTUxEb2N1bWVudD0oKGU9RS5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLmJvZHkpLmlubmVySFRNTD0iPGZvcm0+PC9mb3JtPjxmb3JtPjwvZm9ybT4iLDI9PT1lLmNoaWxkTm9kZXMubGVuZ3RoKSxfLnBhcnNlSFRNTD1mdW5jdGlvbihlLHQsbil7dmFyIGk7cmV0dXJuInN0cmluZyIhPXR5cGVvZiBlP1tdOigiYm9vbGVhbiI9PXR5cGVvZiB0JiYobj10LHQ9ITEpLHR8fChtLmNyZWF0ZUhUTUxEb2N1bWVudD8oKGk9KHQ9RS5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpKS5jcmVhdGVFbGVtZW50KCJiYXNlIikpLmhyZWY9RS5sb2NhdGlvbi5ocmVmLHQuaGVhZC5hcHBlbmRDaGlsZChpKSk6dD1FKSxpPSFuJiZbXSwobj1WZS5leGVjKGUpKT9bdC5jcmVhdGVFbGVtZW50KG5bMV0pXToobj1EdChbZV0sdCxpKSxpJiZpLmxlbmd0aCYmXyhpKS5yZW1vdmUoKSxfLm1lcmdlKFtdLG4uY2hpbGROb2RlcykpKX0sXy5mbi5sb2FkPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaSxyLHMsYT10aGlzLG89ZS5pbmRleE9mKCIgIik7cmV0dXJuLTE8byYmKGk9RG4oZS5zbGljZShvKSksZT1lLnNsaWNlKDAsbykpLHkodCk/KG49dCx0PXZvaWQgMCk6dCYmIm9iamVjdCI9PXR5cGVvZiB0JiYocj0iUE9TVCIpLDA8YS5sZW5ndGgmJl8uYWpheCh7dXJsOmUsdHlwZTpyfHwiR0VUIixkYXRhVHlwZToiaHRtbCIsZGF0YTp0fSkuZG9uZShmdW5jdGlvbihlKXtzPWFyZ3VtZW50cyxhLmh0bWwoaT9fKCI8ZGl2PiIpLmFwcGVuZChfLnBhcnNlSFRNTChlKSkuZmluZChpKTplKX0pLmFsd2F5cyhuJiZmdW5jdGlvbihlLHQpe2EuZWFjaChmdW5jdGlvbigpe24uYXBwbHkodGhpcyxzfHxbZS5yZXNwb25zZVRleHQsdCxlXSl9KX0pLHRoaXN9LF8uZXhwci5wc2V1ZG9zLmFuaW1hdGVkPWZ1bmN0aW9uKHQpe3JldHVybiBfLmdyZXAoXy50aW1lcnMsZnVuY3Rpb24oZSl7cmV0dXJuIHQ9PT1lLmVsZW19KS5sZW5ndGh9LF8ub2Zmc2V0PXtzZXRPZmZzZXQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciBpLHIscyxhLG89Xy5jc3MoZSwicG9zaXRpb24iKSxsPV8oZSksZD17fTsic3RhdGljIj09PW8mJihlLnN0eWxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIpLHM9bC5vZmZzZXQoKSxpPV8uY3NzKGUsInRvcCIpLGE9Xy5jc3MoZSwibGVmdCIpLG89KCJhYnNvbHV0ZSI9PT1vfHwiZml4ZWQiPT09bykmJi0xPChpK2EpLmluZGV4T2YoImF1dG8iKT8ocj0obz1sLnBvc2l0aW9uKCkpLnRvcCxvLmxlZnQpOihyPXBhcnNlRmxvYXQoaSl8fDAscGFyc2VGbG9hdChhKXx8MCksbnVsbCE9KHQ9eSh0KT90LmNhbGwoZSxuLF8uZXh0ZW5kKHt9LHMpKTp0KS50b3AmJihkLnRvcD10LnRvcC1zLnRvcCtyKSxudWxsIT10LmxlZnQmJihkLmxlZnQ9dC5sZWZ0LXMubGVmdCtvKSwidXNpbmciaW4gdD90LnVzaW5nLmNhbGwoZSxkKTpsLmNzcyhkKX19LF8uZm4uZXh0ZW5kKHtvZmZzZXQ6ZnVuY3Rpb24odCl7dmFyIGUsbjtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD92b2lkIDA9PT10P3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKGUpe18ub2Zmc2V0LnNldE9mZnNldCh0aGlzLHQsZSl9KToobj10aGlzWzBdKT9uLmdldENsaWVudFJlY3RzKCkubGVuZ3RoPyhlPW4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbj1uLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXcse3RvcDplLnRvcCtuLnBhZ2VZT2Zmc2V0LGxlZnQ6ZS5sZWZ0K24ucGFnZVhPZmZzZXR9KTp7dG9wOjAsbGVmdDowfTp2b2lkIDB9LHBvc2l0aW9uOmZ1bmN0aW9uKCl7aWYodGhpc1swXSl7dmFyIGUsdCxuLGk9dGhpc1swXSxyPXt0b3A6MCxsZWZ0OjB9O2lmKCJmaXhlZCI9PT1fLmNzcyhpLCJwb3NpdGlvbiIpKXQ9aS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtlbHNle2Zvcih0PXRoaXMub2Zmc2V0KCksbj1pLm93bmVyRG9jdW1lbnQsZT1pLm9mZnNldFBhcmVudHx8bi5kb2N1bWVudEVsZW1lbnQ7ZSYmKGU9PT1uLmJvZHl8fGU9PT1uLmRvY3VtZW50RWxlbWVudCkmJiJzdGF0aWMiPT09Xy5jc3MoZSwicG9zaXRpb24iKTspZT1lLnBhcmVudE5vZGU7ZSYmZSE9PWkmJjE9PT1lLm5vZGVUeXBlJiYoKHI9XyhlKS5vZmZzZXQoKSkudG9wKz1fLmNzcyhlLCJib3JkZXJUb3BXaWR0aCIsITApLHIubGVmdCs9Xy5jc3MoZSwiYm9yZGVyTGVmdFdpZHRoIiwhMCkpfXJldHVybnt0b3A6dC50b3Atci50b3AtXy5jc3MoaSwibWFyZ2luVG9wIiwhMCksbGVmdDp0LmxlZnQtci5sZWZ0LV8uY3NzKGksIm1hcmdpbkxlZnQiLCEwKX19fSxvZmZzZXRQYXJlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcy5vZmZzZXRQYXJlbnQ7ZSYmInN0YXRpYyI9PT1fLmNzcyhlLCJwb3NpdGlvbiIpOyllPWUub2Zmc2V0UGFyZW50O3JldHVybiBlfHx5dH0pfX0pLF8uZWFjaCh7c2Nyb2xsTGVmdDoicGFnZVhPZmZzZXQiLHNjcm9sbFRvcDoicGFnZVlPZmZzZXQifSxmdW5jdGlvbih0LHIpe3ZhciBzPSJwYWdlWU9mZnNldCI9PT1yO18uZm5bdF09ZnVuY3Rpb24oZSl7cmV0dXJuIGModGhpcyxmdW5jdGlvbihlLHQsbil7dmFyIGk7aWYoaihlKT9pPWU6OT09PWUubm9kZVR5cGUmJihpPWUuZGVmYXVsdFZpZXcpLHZvaWQgMD09PW4pcmV0dXJuIGk/aVtyXTplW3RdO2k/aS5zY3JvbGxUbyhzP2kucGFnZVhPZmZzZXQ6bixzP246aS5wYWdlWU9mZnNldCk6ZVt0XT1ufSx0LGUsYXJndW1lbnRzLmxlbmd0aCl9fSksXy5lYWNoKFsidG9wIiwibGVmdCJdLGZ1bmN0aW9uKGUsbil7Xy5jc3NIb29rc1tuXT1hbihtLnBpeGVsUG9zaXRpb24sZnVuY3Rpb24oZSx0KXtpZih0KXJldHVybiB0PXNuKGUsbiksSnQudGVzdCh0KT9fKGUpLnBvc2l0aW9uKClbbl0rInB4Ijp0fSl9KSxfLmVhY2goe0hlaWdodDoiaGVpZ2h0IixXaWR0aDoid2lkdGgifSxmdW5jdGlvbihhLG8pe18uZWFjaCh7cGFkZGluZzoiaW5uZXIiK2EsY29udGVudDpvLCIiOiJvdXRlciIrYX0sZnVuY3Rpb24oaSxzKXtfLmZuW3NdPWZ1bmN0aW9uKGUsdCl7dmFyIG49YXJndW1lbnRzLmxlbmd0aCYmKGl8fCJib29sZWFuIiE9dHlwZW9mIGUpLHI9aXx8KCEwPT09ZXx8ITA9PT10PyJtYXJnaW4iOiJib3JkZXIiKTtyZXR1cm4gYyh0aGlzLGZ1bmN0aW9uKGUsdCxuKXt2YXIgaTtyZXR1cm4gaihlKT8wPT09cy5pbmRleE9mKCJvdXRlciIpP2VbImlubmVyIithXTplLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFsiY2xpZW50IithXTo5PT09ZS5ub2RlVHlwZT8oaT1lLmRvY3VtZW50RWxlbWVudCxNYXRoLm1heChlLmJvZHlbInNjcm9sbCIrYV0saVsic2Nyb2xsIithXSxlLmJvZHlbIm9mZnNldCIrYV0saVsib2Zmc2V0IithXSxpWyJjbGllbnQiK2FdKSk6dm9pZCAwPT09bj9fLmNzcyhlLHQscik6Xy5zdHlsZShlLHQsbixyKX0sbyxuP2U6dm9pZCAwLG4pfX0pfSksXy5lYWNoKFsiYWpheFN0YXJ0IiwiYWpheFN0b3AiLCJhamF4Q29tcGxldGUiLCJhamF4RXJyb3IiLCJhamF4U3VjY2VzcyIsImFqYXhTZW5kIl0sZnVuY3Rpb24oZSx0KXtfLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm9uKHQsZSl9fSksXy5mbi5leHRlbmQoe2JpbmQ6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0aGlzLm9uKGUsbnVsbCx0LG4pfSx1bmJpbmQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5vZmYoZSxudWxsLHQpfSxkZWxlZ2F0ZTpmdW5jdGlvbihlLHQsbixpKXtyZXR1cm4gdGhpcy5vbih0LGUsbixpKX0sdW5kZWxlZ2F0ZTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIDE9PT1hcmd1bWVudHMubGVuZ3RoP3RoaXMub2ZmKGUsIioqIik6dGhpcy5vZmYodCxlfHwiKioiLG4pfSxob3ZlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLm9uKCJtb3VzZWVudGVyIixlKS5vbigibW91c2VsZWF2ZSIsdHx8ZSl9fSksXy5lYWNoKCJibHVyIGZvY3VzIGZvY3VzaW4gZm9jdXNvdXQgcmVzaXplIHNjcm9sbCBjbGljayBkYmxjbGljayBtb3VzZWRvd24gbW91c2V1cCBtb3VzZW1vdmUgbW91c2VvdmVyIG1vdXNlb3V0IG1vdXNlZW50ZXIgbW91c2VsZWF2ZSBjaGFuZ2Ugc2VsZWN0IHN1Ym1pdCBrZXlkb3duIGtleXByZXNzIGtleXVwIGNvbnRleHRtZW51Ii5zcGxpdCgiICIpLGZ1bmN0aW9uKGUsbil7Xy5mbltuXT1mdW5jdGlvbihlLHQpe3JldHVybiAwPGFyZ3VtZW50cy5sZW5ndGg/dGhpcy5vbihuLG51bGwsZSx0KTp0aGlzLnRyaWdnZXIobil9fSksL15bXHNcdUZFRkZceEEwXSt8KFteXHNcdUZFRkZceEEwXSlbXHNcdUZFRkZceEEwXSskL2cpLGFpPShfLnByb3h5PWZ1bmN0aW9uKGUsdCl7dmFyIG4saTtpZigic3RyaW5nIj09dHlwZW9mIHQmJihpPWVbdF0sdD1lLGU9aSkseShlKSlyZXR1cm4gbj1vLmNhbGwoYXJndW1lbnRzLDIpLChpPWZ1bmN0aW9uKCl7cmV0dXJuIGUuYXBwbHkodHx8dGhpcyxuLmNvbmNhdChvLmNhbGwoYXJndW1lbnRzKSkpfSkuZ3VpZD1lLmd1aWQ9ZS5ndWlkfHxfLmd1aWQrKyxpfSxfLmhvbGRSZWFkeT1mdW5jdGlvbihlKXtlP18ucmVhZHlXYWl0Kys6Xy5yZWFkeSghMCl9LF8uaXNBcnJheT1BcnJheS5pc0FycmF5LF8ucGFyc2VKU09OPUpTT04ucGFyc2UsXy5ub2RlTmFtZT13LF8uaXNGdW5jdGlvbj15LF8uaXNXaW5kb3c9aixfLmNhbWVsQ2FzZT1PLF8udHlwZT1WLF8ubm93PURhdGUubm93LF8uaXNOdW1lcmljPWZ1bmN0aW9uKGUpe3ZhciB0PV8udHlwZShlKTtyZXR1cm4oIm51bWJlciI9PT10fHwic3RyaW5nIj09PXQpJiYhaXNOYU4oZS1wYXJzZUZsb2F0KGUpKX0sXy50cmltPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOihlKyIiKS5yZXBsYWNlKHNpLCIkMSIpfSwiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kJiZkZWZpbmUoImpxdWVyeSIsW10sZnVuY3Rpb24oKXtyZXR1cm4gX30pLHgualF1ZXJ5KSxvaT14LiQ7cmV0dXJuIF8ubm9Db25mbGljdD1mdW5jdGlvbihlKXtyZXR1cm4geC4kPT09XyYmKHguJD1vaSksZSYmeC5qUXVlcnk9PT1fJiYoeC5qUXVlcnk9YWkpLF99LHZvaWQgMD09PU4mJih4LmpRdWVyeT14LiQ9XyksX30pLCFmdW5jdGlvbihlLHQpeyJvYmplY3QiPT10eXBlb2YgZXhwb3J0cyYmInVuZGVmaW5lZCIhPXR5cGVvZiBtb2R1bGU/dChleHBvcnRzLHJlcXVpcmUoImpxdWVyeSIpKToiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kP2RlZmluZShbImV4cG9ydHMiLCJqcXVlcnkiXSx0KTp0KChlPSJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOmV8fHNlbGYpLmJvb3RzdHJhcD17fSxlLmpRdWVyeSl9KHRoaXMsZnVuY3Rpb24oZSx0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gTihlKXtyZXR1cm4gZSYmIm9iamVjdCI9PXR5cGVvZiBlJiYiZGVmYXVsdCJpbiBlP2U6e2RlZmF1bHQ6ZX19dmFyIGM9Tih0KTtmdW5jdGlvbiBqKGUsdCl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciBpPXRbbl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxpLmtleSxpKX19ZnVuY3Rpb24gYShlLHQsbil7dCYmaihlLnByb3RvdHlwZSx0KSxuJiZqKGUsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSl9ZnVuY3Rpb24gbygpe3JldHVybihvPU9iamVjdC5hc3NpZ24/T2JqZWN0LmFzc2lnbi5iaW5kKCk6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG4saT1hcmd1bWVudHNbdF07Zm9yKG4gaW4gaSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaSxuKSYmKGVbbl09aVtuXSl9cmV0dXJuIGV9KS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZnVuY3Rpb24gcShlLHQpe3JldHVybihxPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUuX19wcm90b19fPXQsZX0pKGUsdCl9dmFyIHo9InRyYW5zaXRpb25lbmQiO2Z1bmN0aW9uIEgoZSl7dmFyIHQ9dGhpcyxuPSExO3JldHVybiBjLmRlZmF1bHQodGhpcykub25lKHUuVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24oKXtuPSEwfSksc2V0VGltZW91dChmdW5jdGlvbigpe258fHUudHJpZ2dlclRyYW5zaXRpb25FbmQodCl9LGUpLHRoaXN9dmFyIHU9e1RSQU5TSVRJT05fRU5EOiJic1RyYW5zaXRpb25FbmQiLGdldFVJRDpmdW5jdGlvbihlKXtmb3IoO2UrPX5+KDFlNipNYXRoLnJhbmRvbSgpKSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZChlKTspO3JldHVybiBlfSxnZXRTZWxlY3RvckZyb21FbGVtZW50OmZ1bmN0aW9uKGUpe3ZhciB0PWUuZ2V0QXR0cmlidXRlKCJkYXRhLXRhcmdldCIpO3QmJiIjIiE9PXR8fCh0PShlPWUuZ2V0QXR0cmlidXRlKCJocmVmIikpJiYiIyIhPT1lP2UudHJpbSgpOiIiKTt0cnl7cmV0dXJuIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodCk/dDpudWxsfWNhdGNoKGUpe3JldHVybiBudWxsfX0sZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQ6ZnVuY3Rpb24oZSl7dmFyIHQsbixpO3JldHVybiBlJiYodD1jLmRlZmF1bHQoZSkuY3NzKCJ0cmFuc2l0aW9uLWR1cmF0aW9uIiksZT1jLmRlZmF1bHQoZSkuY3NzKCJ0cmFuc2l0aW9uLWRlbGF5Iiksbj1wYXJzZUZsb2F0KHQpLGk9cGFyc2VGbG9hdChlKSxufHxpKT8odD10LnNwbGl0KCIsIilbMF0sZT1lLnNwbGl0KCIsIilbMF0sMWUzKihwYXJzZUZsb2F0KHQpK3BhcnNlRmxvYXQoZSkpKTowfSxyZWZsb3c6ZnVuY3Rpb24oZSl7cmV0dXJuIGUub2Zmc2V0SGVpZ2h0fSx0cmlnZ2VyVHJhbnNpdGlvbkVuZDpmdW5jdGlvbihlKXtjLmRlZmF1bHQoZSkudHJpZ2dlcih6KX0sc3VwcG9ydHNUcmFuc2l0aW9uRW5kOmZ1bmN0aW9uKCl7cmV0dXJuIEJvb2xlYW4oeil9LGlzRWxlbWVudDpmdW5jdGlvbihlKXtyZXR1cm4oZVswXXx8ZSkubm9kZVR5cGV9LHR5cGVDaGVja0NvbmZpZzpmdW5jdGlvbihlLHQsbil7Zm9yKHZhciBpIGluIG4paWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4saSkpe3ZhciByPW5baV0scz10W2ldLHM9cyYmdS5pc0VsZW1lbnQocyk/ImVsZW1lbnQiOm51bGw9PShzPXMpPyIiK3M6e30udG9TdHJpbmcuY2FsbChzKS5tYXRjaCgvXHMoW2Etel0rKS9pKVsxXS50b0xvd2VyQ2FzZSgpO2lmKCFuZXcgUmVnRXhwKHIpLnRlc3QocykpdGhyb3cgbmV3IEVycm9yKGUudG9VcHBlckNhc2UoKSsnOiBPcHRpb24gIicraSsnIiBwcm92aWRlZCB0eXBlICInK3MrJyIgYnV0IGV4cGVjdGVkIHR5cGUgIicrcisnIi4nKX19LGZpbmRTaGFkb3dSb290OmZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuYXR0YWNoU2hhZG93PyJmdW5jdGlvbiI9PXR5cGVvZiBlLmdldFJvb3ROb2RlPyh0PWUuZ2V0Um9vdE5vZGUoKSlpbnN0YW5jZW9mIFNoYWRvd1Jvb3Q/dDpudWxsOmUgaW5zdGFuY2VvZiBTaGFkb3dSb290P2U6ZS5wYXJlbnROb2RlP3UuZmluZFNoYWRvd1Jvb3QoZS5wYXJlbnROb2RlKTpudWxsOm51bGx9LGpRdWVyeURldGVjdGlvbjpmdW5jdGlvbigpe2lmKHZvaWQgMD09PWMuZGVmYXVsdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJCb290c3RyYXAncyBKYXZhU2NyaXB0IHJlcXVpcmVzIGpRdWVyeS4galF1ZXJ5IG11c3QgYmUgaW5jbHVkZWQgYmVmb3JlIEJvb3RzdHJhcCdzIEphdmFTY3JpcHQuIik7dmFyIGU9Yy5kZWZhdWx0LmZuLmpxdWVyeS5zcGxpdCgiICIpWzBdLnNwbGl0KCIuIik7aWYoZVswXTwyJiZlWzFdPDl8fDE9PT1lWzBdJiY5PT09ZVsxXSYmZVsyXTwxfHw0PD1lWzBdKXRocm93IG5ldyBFcnJvcigiQm9vdHN0cmFwJ3MgSmF2YVNjcmlwdCByZXF1aXJlcyBhdCBsZWFzdCBqUXVlcnkgdjEuOS4xIGJ1dCBsZXNzIHRoYW4gdjQuMC4wIil9fSxSPSh1LmpRdWVyeURldGVjdGlvbigpLGMuZGVmYXVsdC5mbi5lbXVsYXRlVHJhbnNpdGlvbkVuZD1ILGMuZGVmYXVsdC5ldmVudC5zcGVjaWFsW3UuVFJBTlNJVElPTl9FTkRdPXtiaW5kVHlwZTp6LGRlbGVnYXRlVHlwZTp6LGhhbmRsZTpmdW5jdGlvbihlKXtpZihjLmRlZmF1bHQoZS50YXJnZXQpLmlzKHRoaXMpKXJldHVybiBlLmhhbmRsZU9iai5oYW5kbGVyLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19LCJhbGVydCIpLEY9ImJzLmFsZXJ0IixCPWMuZGVmYXVsdC5mbltSXSxuPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaShlKXt0aGlzLl9lbGVtZW50PWV9dmFyIGU9aS5wcm90b3R5cGU7cmV0dXJuIGUuY2xvc2U9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5fZWxlbWVudDtlJiYodD10aGlzLl9nZXRSb290RWxlbWVudChlKSksdGhpcy5fdHJpZ2dlckNsb3NlRXZlbnQodCkuaXNEZWZhdWx0UHJldmVudGVkKCl8fHRoaXMuX3JlbW92ZUVsZW1lbnQodCl9LGUuZGlzcG9zZT1mdW5jdGlvbigpe2MuZGVmYXVsdC5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsRiksdGhpcy5fZWxlbWVudD1udWxsfSxlLl9nZXRSb290RWxlbWVudD1mdW5jdGlvbihlKXt2YXIgdD11LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQoZSksbj0hMTtyZXR1cm4gbj0obj10P2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodCk6bil8fGMuZGVmYXVsdChlKS5jbG9zZXN0KCIuYWxlcnQiKVswXX0sZS5fdHJpZ2dlckNsb3NlRXZlbnQ9ZnVuY3Rpb24oZSl7dmFyIHQ9Yy5kZWZhdWx0LkV2ZW50KCJjbG9zZS5icy5hbGVydCIpO3JldHVybiBjLmRlZmF1bHQoZSkudHJpZ2dlcih0KSx0fSxlLl9yZW1vdmVFbGVtZW50PWZ1bmN0aW9uKHQpe3ZhciBlLG49dGhpcztjLmRlZmF1bHQodCkucmVtb3ZlQ2xhc3MoInNob3ciKSxjLmRlZmF1bHQodCkuaGFzQ2xhc3MoImZhZGUiKT8oZT11LmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHQpLGMuZGVmYXVsdCh0KS5vbmUodS5UUkFOU0lUSU9OX0VORCxmdW5jdGlvbihlKXtyZXR1cm4gbi5fZGVzdHJveUVsZW1lbnQodCxlKX0pLmVtdWxhdGVUcmFuc2l0aW9uRW5kKGUpKTp0aGlzLl9kZXN0cm95RWxlbWVudCh0KX0sZS5fZGVzdHJveUVsZW1lbnQ9ZnVuY3Rpb24oZSl7Yy5kZWZhdWx0KGUpLmRldGFjaCgpLnRyaWdnZXIoImNsb3NlZC5icy5hbGVydCIpLnJlbW92ZSgpfSxpLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzKSx0PWUuZGF0YShGKTt0fHwodD1uZXcgaSh0aGlzKSxlLmRhdGEoRix0KSksImNsb3NlIj09PW4mJnRbbl0odGhpcyl9KX0saS5faGFuZGxlRGlzbWlzcz1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7ZSYmZS5wcmV2ZW50RGVmYXVsdCgpLHQuY2xvc2UodGhpcyl9fSxhKGksbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuNi4yIn19XSksaX0oKSxXPShjLmRlZmF1bHQoZG9jdW1lbnQpLm9uKCJjbGljay5icy5hbGVydC5kYXRhLWFwaSIsJ1tkYXRhLWRpc21pc3M9ImFsZXJ0Il0nLG4uX2hhbmRsZURpc21pc3MobmV3IG4pKSxjLmRlZmF1bHQuZm5bUl09bi5falF1ZXJ5SW50ZXJmYWNlLGMuZGVmYXVsdC5mbltSXS5Db25zdHJ1Y3Rvcj1uLGMuZGVmYXVsdC5mbltSXS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGMuZGVmYXVsdC5mbltSXT1CLG4uX2pRdWVyeUludGVyZmFjZX0sImJ1dHRvbiIpLEc9ImJzLmJ1dHRvbiIsWT1jLmRlZmF1bHQuZm5bV10sbD0iYWN0aXZlIix0PSdbZGF0YS10b2dnbGVePSJidXR0b24iXScsWD0naW5wdXQ6bm90KFt0eXBlPSJoaWRkZW4iXSknLFY9ZnVuY3Rpb24oKXtmdW5jdGlvbiByKGUpe3RoaXMuX2VsZW1lbnQ9ZSx0aGlzLnNob3VsZEF2b2lkVHJpZ2dlckNoYW5nZT0hMX12YXIgZT1yLnByb3RvdHlwZTtyZXR1cm4gZS50b2dnbGU9ZnVuY3Rpb24oKXt2YXIgZSx0PSEwLG49ITAsaT1jLmRlZmF1bHQodGhpcy5fZWxlbWVudCkuY2xvc2VzdCgnW2RhdGEtdG9nZ2xlPSJidXR0b25zIl0nKVswXTtpJiYoZT10aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3IoWCkpJiYoInJhZGlvIj09PWUudHlwZSYmKGUuY2hlY2tlZCYmdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMobCk/dD0hMTooaT1pLnF1ZXJ5U2VsZWN0b3IoIi5hY3RpdmUiKSkmJmMuZGVmYXVsdChpKS5yZW1vdmVDbGFzcyhsKSksdCYmKCJjaGVja2JveCIhPT1lLnR5cGUmJiJyYWRpbyIhPT1lLnR5cGV8fChlLmNoZWNrZWQ9IXRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKGwpKSx0aGlzLnNob3VsZEF2b2lkVHJpZ2dlckNoYW5nZXx8Yy5kZWZhdWx0KGUpLnRyaWdnZXIoImNoYW5nZSIpKSxlLmZvY3VzKCksbj0hMSksdGhpcy5fZWxlbWVudC5oYXNBdHRyaWJ1dGUoImRpc2FibGVkIil8fHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpfHwobiYmdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsIXRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKGwpKSx0JiZjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkudG9nZ2xlQ2xhc3MobCkpfSxlLmRpc3Bvc2U9ZnVuY3Rpb24oKXtjLmRlZmF1bHQucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LEcpLHRoaXMuX2VsZW1lbnQ9bnVsbH0sci5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKG4saSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzKSx0PWUuZGF0YShHKTt0fHwodD1uZXcgcih0aGlzKSxlLmRhdGEoRyx0KSksdC5zaG91bGRBdm9pZFRyaWdnZXJDaGFuZ2U9aSwidG9nZ2xlIj09PW4mJnRbbl0oKX0pfSxhKHIsbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuNi4yIn19XSkscn0oKSxpPShjLmRlZmF1bHQoZG9jdW1lbnQpLm9uKCJjbGljay5icy5idXR0b24uZGF0YS1hcGkiLHQsZnVuY3Rpb24oZSl7dmFyIHQsbj1lLnRhcmdldCxpPW47IShuPWMuZGVmYXVsdChuKS5oYXNDbGFzcygiYnRuIik/bjpjLmRlZmF1bHQobikuY2xvc2VzdCgiLmJ0biIpWzBdKXx8bi5oYXNBdHRyaWJ1dGUoImRpc2FibGVkIil8fG4uY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpfHwodD1uLnF1ZXJ5U2VsZWN0b3IoWCkpJiYodC5oYXNBdHRyaWJ1dGUoImRpc2FibGVkIil8fHQuY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpKT9lLnByZXZlbnREZWZhdWx0KCk6IklOUFVUIiE9PWkudGFnTmFtZSYmIkxBQkVMIj09PW4udGFnTmFtZXx8Vi5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoYy5kZWZhdWx0KG4pLCJ0b2dnbGUiLCJJTlBVVCI9PT1pLnRhZ05hbWUpfSkub24oImZvY3VzLmJzLmJ1dHRvbi5kYXRhLWFwaSBibHVyLmJzLmJ1dHRvbi5kYXRhLWFwaSIsdCxmdW5jdGlvbihlKXt2YXIgdD1jLmRlZmF1bHQoZS50YXJnZXQpLmNsb3Nlc3QoIi5idG4iKVswXTtjLmRlZmF1bHQodCkudG9nZ2xlQ2xhc3MoImZvY3VzIiwvXmZvY3VzKGluKT8kLy50ZXN0KGUudHlwZSkpfSksYy5kZWZhdWx0KHdpbmRvdykub24oImxvYWQuYnMuYnV0dG9uLmRhdGEtYXBpIixmdW5jdGlvbigpe2Zvcih2YXIgZT1bXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ1tkYXRhLXRvZ2dsZT0iYnV0dG9ucyJdIC5idG4nKSksdD0wLG49ZS5sZW5ndGg7dDxuO3QrKyl7dmFyIGk9ZVt0XSxyPWkucXVlcnlTZWxlY3RvcihYKTtyLmNoZWNrZWR8fHIuaGFzQXR0cmlidXRlKCJjaGVja2VkIik/aS5jbGFzc0xpc3QuYWRkKGwpOmkuY2xhc3NMaXN0LnJlbW92ZShsKX1mb3IodmFyIHM9MCxhPShlPVtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtdG9nZ2xlPSJidXR0b24iXScpKSkubGVuZ3RoO3M8YTtzKyspe3ZhciBvPWVbc107InRydWUiPT09by5nZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIpP28uY2xhc3NMaXN0LmFkZChsKTpvLmNsYXNzTGlzdC5yZW1vdmUobCl9fSksYy5kZWZhdWx0LmZuW1ddPVYuX2pRdWVyeUludGVyZmFjZSxjLmRlZmF1bHQuZm5bV10uQ29uc3RydWN0b3I9VixjLmRlZmF1bHQuZm5bV10ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBjLmRlZmF1bHQuZm5bV109WSxWLl9qUXVlcnlJbnRlcmZhY2V9LCJjYXJvdXNlbCIpLFU9ImJzLmNhcm91c2VsIixRPSIuIitVLEs9Yy5kZWZhdWx0LmZuW2ldLHA9ImFjdGl2ZSIsWj0ibmV4dCIsSj0icHJldiIsZWU9InNsaWQiK1EsdGU9Ii5hY3RpdmUuY2Fyb3VzZWwtaXRlbSIsbmU9e2ludGVydmFsOjVlMyxrZXlib2FyZDohMCxzbGlkZTohMSxwYXVzZToiaG92ZXIiLHdyYXA6ITAsdG91Y2g6ITB9LGllPXtpbnRlcnZhbDoiKG51bWJlcnxib29sZWFuKSIsa2V5Ym9hcmQ6ImJvb2xlYW4iLHNsaWRlOiIoYm9vbGVhbnxzdHJpbmcpIixwYXVzZToiKHN0cmluZ3xib29sZWFuKSIsd3JhcDoiYm9vbGVhbiIsdG91Y2g6ImJvb2xlYW4ifSxyZT17VE9VQ0g6InRvdWNoIixQRU46InBlbiJ9LHI9ZnVuY3Rpb24oKXtmdW5jdGlvbiByKGUsdCl7dGhpcy5faXRlbXM9bnVsbCx0aGlzLl9pbnRlcnZhbD1udWxsLHRoaXMuX2FjdGl2ZUVsZW1lbnQ9bnVsbCx0aGlzLl9pc1BhdXNlZD0hMSx0aGlzLl9pc1NsaWRpbmc9ITEsdGhpcy50b3VjaFRpbWVvdXQ9bnVsbCx0aGlzLnRvdWNoU3RhcnRYPTAsdGhpcy50b3VjaERlbHRhWD0wLHRoaXMuX2NvbmZpZz10aGlzLl9nZXRDb25maWcodCksdGhpcy5fZWxlbWVudD1lLHRoaXMuX2luZGljYXRvcnNFbGVtZW50PXRoaXMuX2VsZW1lbnQucXVlcnlTZWxlY3RvcigiLmNhcm91c2VsLWluZGljYXRvcnMiKSx0aGlzLl90b3VjaFN1cHBvcnRlZD0ib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudHx8MDxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMsdGhpcy5fcG9pbnRlckV2ZW50PUJvb2xlYW4od2luZG93LlBvaW50ZXJFdmVudHx8d2luZG93Lk1TUG9pbnRlckV2ZW50KSx0aGlzLl9hZGRFdmVudExpc3RlbmVycygpfXZhciBlPXIucHJvdG90eXBlO3JldHVybiBlLm5leHQ9ZnVuY3Rpb24oKXt0aGlzLl9pc1NsaWRpbmd8fHRoaXMuX3NsaWRlKFopfSxlLm5leHRXaGVuVmlzaWJsZT1mdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KTshZG9jdW1lbnQuaGlkZGVuJiZlLmlzKCI6dmlzaWJsZSIpJiYiaGlkZGVuIiE9PWUuY3NzKCJ2aXNpYmlsaXR5IikmJnRoaXMubmV4dCgpfSxlLnByZXY9ZnVuY3Rpb24oKXt0aGlzLl9pc1NsaWRpbmd8fHRoaXMuX3NsaWRlKEopfSxlLnBhdXNlPWZ1bmN0aW9uKGUpe2V8fCh0aGlzLl9pc1BhdXNlZD0hMCksdGhpcy5fZWxlbWVudC5xdWVyeVNlbGVjdG9yKCIuY2Fyb3VzZWwtaXRlbS1uZXh0LCAuY2Fyb3VzZWwtaXRlbS1wcmV2IikmJih1LnRyaWdnZXJUcmFuc2l0aW9uRW5kKHRoaXMuX2VsZW1lbnQpLHRoaXMuY3ljbGUoITApKSxjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSx0aGlzLl9pbnRlcnZhbD1udWxsfSxlLmN5Y2xlPWZ1bmN0aW9uKGUpe2V8fCh0aGlzLl9pc1BhdXNlZD0hMSksdGhpcy5faW50ZXJ2YWwmJihjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSx0aGlzLl9pbnRlcnZhbD1udWxsKSx0aGlzLl9jb25maWcuaW50ZXJ2YWwmJiF0aGlzLl9pc1BhdXNlZCYmKHRoaXMuX3VwZGF0ZUludGVydmFsKCksdGhpcy5faW50ZXJ2YWw9c2V0SW50ZXJ2YWwoKGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT90aGlzLm5leHRXaGVuVmlzaWJsZTp0aGlzLm5leHQpLmJpbmQodGhpcyksdGhpcy5fY29uZmlnLmludGVydmFsKSl9LGUudG89ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcyxuPSh0aGlzLl9hY3RpdmVFbGVtZW50PXRoaXMuX2VsZW1lbnQucXVlcnlTZWxlY3Rvcih0ZSksdGhpcy5fZ2V0SXRlbUluZGV4KHRoaXMuX2FjdGl2ZUVsZW1lbnQpKTtlPnRoaXMuX2l0ZW1zLmxlbmd0aC0xfHxlPDB8fCh0aGlzLl9pc1NsaWRpbmc/Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uZShlZSxmdW5jdGlvbigpe3JldHVybiB0LnRvKGUpfSk6bj09PWU/KHRoaXMucGF1c2UoKSx0aGlzLmN5Y2xlKCkpOnRoaXMuX3NsaWRlKG48ZT9aOkosdGhpcy5faXRlbXNbZV0pKX0sZS5kaXNwb3NlPWZ1bmN0aW9uKCl7Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9mZihRKSxjLmRlZmF1bHQucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LFUpLHRoaXMuX2l0ZW1zPW51bGwsdGhpcy5fY29uZmlnPW51bGwsdGhpcy5fZWxlbWVudD1udWxsLHRoaXMuX2ludGVydmFsPW51bGwsdGhpcy5faXNQYXVzZWQ9bnVsbCx0aGlzLl9pc1NsaWRpbmc9bnVsbCx0aGlzLl9hY3RpdmVFbGVtZW50PW51bGwsdGhpcy5faW5kaWNhdG9yc0VsZW1lbnQ9bnVsbH0sZS5fZ2V0Q29uZmlnPWZ1bmN0aW9uKGUpe3JldHVybiBlPW8oe30sbmUsZSksdS50eXBlQ2hlY2tDb25maWcoaSxlLGllKSxlfSxlLl9oYW5kbGVTd2lwZT1mdW5jdGlvbigpe3ZhciBlPU1hdGguYWJzKHRoaXMudG91Y2hEZWx0YVgpO2U8PTQwfHwoZT1lL3RoaXMudG91Y2hEZWx0YVgsKHRoaXMudG91Y2hEZWx0YVg9MCk8ZSYmdGhpcy5wcmV2KCksZTwwJiZ0aGlzLm5leHQoKSl9LGUuX2FkZEV2ZW50TGlzdGVuZXJzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLl9jb25maWcua2V5Ym9hcmQmJmMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5vbigia2V5ZG93bi5icy5jYXJvdXNlbCIsZnVuY3Rpb24oZSl7cmV0dXJuIHQuX2tleWRvd24oZSl9KSwiaG92ZXIiPT09dGhpcy5fY29uZmlnLnBhdXNlJiZjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkub24oIm1vdXNlZW50ZXIuYnMuY2Fyb3VzZWwiLGZ1bmN0aW9uKGUpe3JldHVybiB0LnBhdXNlKGUpfSkub24oIm1vdXNlbGVhdmUuYnMuY2Fyb3VzZWwiLGZ1bmN0aW9uKGUpe3JldHVybiB0LmN5Y2xlKGUpfSksdGhpcy5fY29uZmlnLnRvdWNoJiZ0aGlzLl9hZGRUb3VjaEV2ZW50TGlzdGVuZXJzKCl9LGUuX2FkZFRvdWNoRXZlbnRMaXN0ZW5lcnM9ZnVuY3Rpb24oKXt2YXIgZSx0LG49dGhpczt0aGlzLl90b3VjaFN1cHBvcnRlZCYmKGU9ZnVuY3Rpb24oZSl7bi5fcG9pbnRlckV2ZW50JiZyZVtlLm9yaWdpbmFsRXZlbnQucG9pbnRlclR5cGUudG9VcHBlckNhc2UoKV0/bi50b3VjaFN0YXJ0WD1lLm9yaWdpbmFsRXZlbnQuY2xpZW50WDpuLl9wb2ludGVyRXZlbnR8fChuLnRvdWNoU3RhcnRYPWUub3JpZ2luYWxFdmVudC50b3VjaGVzWzBdLmNsaWVudFgpfSx0PWZ1bmN0aW9uKGUpe24uX3BvaW50ZXJFdmVudCYmcmVbZS5vcmlnaW5hbEV2ZW50LnBvaW50ZXJUeXBlLnRvVXBwZXJDYXNlKCldJiYobi50b3VjaERlbHRhWD1lLm9yaWdpbmFsRXZlbnQuY2xpZW50WC1uLnRvdWNoU3RhcnRYKSxuLl9oYW5kbGVTd2lwZSgpLCJob3ZlciI9PT1uLl9jb25maWcucGF1c2UmJihuLnBhdXNlKCksbi50b3VjaFRpbWVvdXQmJmNsZWFyVGltZW91dChuLnRvdWNoVGltZW91dCksbi50b3VjaFRpbWVvdXQ9c2V0VGltZW91dChmdW5jdGlvbihlKXtyZXR1cm4gbi5jeWNsZShlKX0sNTAwK24uX2NvbmZpZy5pbnRlcnZhbCkpfSxjLmRlZmF1bHQodGhpcy5fZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuY2Fyb3VzZWwtaXRlbSBpbWciKSkub24oImRyYWdzdGFydC5icy5jYXJvdXNlbCIsZnVuY3Rpb24oZSl7cmV0dXJuIGUucHJldmVudERlZmF1bHQoKX0pLHRoaXMuX3BvaW50ZXJFdmVudD8oYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uKCJwb2ludGVyZG93bi5icy5jYXJvdXNlbCIsZSksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uKCJwb2ludGVydXAuYnMuY2Fyb3VzZWwiLHQpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCgicG9pbnRlci1ldmVudCIpKTooYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uKCJ0b3VjaHN0YXJ0LmJzLmNhcm91c2VsIixlKSxjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkub24oInRvdWNobW92ZS5icy5jYXJvdXNlbCIsZnVuY3Rpb24oZSl7ZT1lLG4udG91Y2hEZWx0YVg9ZS5vcmlnaW5hbEV2ZW50LnRvdWNoZXMmJjE8ZS5vcmlnaW5hbEV2ZW50LnRvdWNoZXMubGVuZ3RoPzA6ZS5vcmlnaW5hbEV2ZW50LnRvdWNoZXNbMF0uY2xpZW50WC1uLnRvdWNoU3RhcnRYfSksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uKCJ0b3VjaGVuZC5icy5jYXJvdXNlbCIsdCkpKX0sZS5fa2V5ZG93bj1mdW5jdGlvbihlKXtpZighL2lucHV0fHRleHRhcmVhL2kudGVzdChlLnRhcmdldC50YWdOYW1lKSlzd2l0Y2goZS53aGljaCl7Y2FzZSAzNzplLnByZXZlbnREZWZhdWx0KCksdGhpcy5wcmV2KCk7YnJlYWs7Y2FzZSAzOTplLnByZXZlbnREZWZhdWx0KCksdGhpcy5uZXh0KCl9fSxlLl9nZXRJdGVtSW5kZXg9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuX2l0ZW1zPWUmJmUucGFyZW50Tm9kZT9bXS5zbGljZS5jYWxsKGUucGFyZW50Tm9kZS5xdWVyeVNlbGVjdG9yQWxsKCIuY2Fyb3VzZWwtaXRlbSIpKTpbXSx0aGlzLl9pdGVtcy5pbmRleE9mKGUpfSxlLl9nZXRJdGVtQnlEaXJlY3Rpb249ZnVuY3Rpb24oZSx0KXt2YXIgbj1lPT09WixpPWU9PT1KLHI9dGhpcy5fZ2V0SXRlbUluZGV4KHQpLHM9dGhpcy5faXRlbXMubGVuZ3RoLTE7cmV0dXJuKGkmJjA9PT1yfHxuJiZyPT09cykmJiF0aGlzLl9jb25maWcud3JhcD90Oi0xPT0oaT0ocisoZT09PUo/LTE6MSkpJXRoaXMuX2l0ZW1zLmxlbmd0aCk/dGhpcy5faXRlbXNbdGhpcy5faXRlbXMubGVuZ3RoLTFdOnRoaXMuX2l0ZW1zW2ldfSxlLl90cmlnZ2VyU2xpZGVFdmVudD1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMuX2dldEl0ZW1JbmRleChlKSxpPXRoaXMuX2dldEl0ZW1JbmRleCh0aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3IodGUpKSxlPWMuZGVmYXVsdC5FdmVudCgic2xpZGUuYnMuY2Fyb3VzZWwiLHtyZWxhdGVkVGFyZ2V0OmUsZGlyZWN0aW9uOnQsZnJvbTppLHRvOm59KTtyZXR1cm4gYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIoZSksZX0sZS5fc2V0QWN0aXZlSW5kaWNhdG9yRWxlbWVudD1mdW5jdGlvbihlKXt2YXIgdDt0aGlzLl9pbmRpY2F0b3JzRWxlbWVudCYmKHQ9W10uc2xpY2UuY2FsbCh0aGlzLl9pbmRpY2F0b3JzRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuYWN0aXZlIikpLGMuZGVmYXVsdCh0KS5yZW1vdmVDbGFzcyhwKSx0PXRoaXMuX2luZGljYXRvcnNFbGVtZW50LmNoaWxkcmVuW3RoaXMuX2dldEl0ZW1JbmRleChlKV0pJiZjLmRlZmF1bHQodCkuYWRkQ2xhc3MocCl9LGUuX3VwZGF0ZUludGVydmFsPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5fYWN0aXZlRWxlbWVudHx8dGhpcy5fZWxlbWVudC5xdWVyeVNlbGVjdG9yKHRlKTtlJiYoKGU9cGFyc2VJbnQoZS5nZXRBdHRyaWJ1dGUoImRhdGEtaW50ZXJ2YWwiKSwxMCkpPyh0aGlzLl9jb25maWcuZGVmYXVsdEludGVydmFsPXRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWx8fHRoaXMuX2NvbmZpZy5pbnRlcnZhbCx0aGlzLl9jb25maWcuaW50ZXJ2YWw9ZSk6dGhpcy5fY29uZmlnLmludGVydmFsPXRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWx8fHRoaXMuX2NvbmZpZy5pbnRlcnZhbCl9LGUuX3NsaWRlPWZ1bmN0aW9uKGUsdCl7dmFyIG4saSxyLHM9dGhpcyxhPXRoaXMuX2VsZW1lbnQucXVlcnlTZWxlY3Rvcih0ZSksbz10aGlzLl9nZXRJdGVtSW5kZXgoYSksbD10fHxhJiZ0aGlzLl9nZXRJdGVtQnlEaXJlY3Rpb24oZSxhKSx0PXRoaXMuX2dldEl0ZW1JbmRleChsKSxkPUJvb2xlYW4odGhpcy5faW50ZXJ2YWwpLGU9ZT09PVo/KG49ImNhcm91c2VsLWl0ZW0tbGVmdCIsaT0iY2Fyb3VzZWwtaXRlbS1uZXh0IiwibGVmdCIpOihuPSJjYXJvdXNlbC1pdGVtLXJpZ2h0IixpPSJjYXJvdXNlbC1pdGVtLXByZXYiLCJyaWdodCIpO2wmJmMuZGVmYXVsdChsKS5oYXNDbGFzcyhwKT90aGlzLl9pc1NsaWRpbmc9ITE6dGhpcy5fdHJpZ2dlclNsaWRlRXZlbnQobCxlKS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8YSYmbCYmKHRoaXMuX2lzU2xpZGluZz0hMCxkJiZ0aGlzLnBhdXNlKCksdGhpcy5fc2V0QWN0aXZlSW5kaWNhdG9yRWxlbWVudChsKSx0aGlzLl9hY3RpdmVFbGVtZW50PWwscj1jLmRlZmF1bHQuRXZlbnQoZWUse3JlbGF0ZWRUYXJnZXQ6bCxkaXJlY3Rpb246ZSxmcm9tOm8sdG86dH0pLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcygic2xpZGUiKT8oYy5kZWZhdWx0KGwpLmFkZENsYXNzKGkpLHUucmVmbG93KGwpLGMuZGVmYXVsdChhKS5hZGRDbGFzcyhuKSxjLmRlZmF1bHQobCkuYWRkQ2xhc3MobiksZT11LmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KGEpLGMuZGVmYXVsdChhKS5vbmUodS5UUkFOU0lUSU9OX0VORCxmdW5jdGlvbigpe2MuZGVmYXVsdChsKS5yZW1vdmVDbGFzcyhuKyIgIitpKS5hZGRDbGFzcyhwKSxjLmRlZmF1bHQoYSkucmVtb3ZlQ2xhc3MocCsiICIraSsiICIrbikscy5faXNTbGlkaW5nPSExLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gYy5kZWZhdWx0KHMuX2VsZW1lbnQpLnRyaWdnZXIocil9LDApfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoZSkpOihjLmRlZmF1bHQoYSkucmVtb3ZlQ2xhc3MocCksYy5kZWZhdWx0KGwpLmFkZENsYXNzKHApLHRoaXMuX2lzU2xpZGluZz0hMSxjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkudHJpZ2dlcihyKSksZCkmJnRoaXMuY3ljbGUoKX0sci5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKGkpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1jLmRlZmF1bHQodGhpcykuZGF0YShVKSx0PW8oe30sbmUsYy5kZWZhdWx0KHRoaXMpLmRhdGEoKSksbj0oIm9iamVjdCI9PXR5cGVvZiBpJiYodD1vKHt9LHQsaSkpLCJzdHJpbmciPT10eXBlb2YgaT9pOnQuc2xpZGUpO2lmKGV8fChlPW5ldyByKHRoaXMsdCksYy5kZWZhdWx0KHRoaXMpLmRhdGEoVSxlKSksIm51bWJlciI9PXR5cGVvZiBpKWUudG8oaSk7ZWxzZSBpZigic3RyaW5nIj09dHlwZW9mIG4pe2lmKHZvaWQgMD09PWVbbl0pdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInK24rJyInKTtlW25dKCl9ZWxzZSB0LmludGVydmFsJiZ0LnJpZGUmJihlLnBhdXNlKCksZS5jeWNsZSgpKX0pfSxyLl9kYXRhQXBpQ2xpY2tIYW5kbGVyPWZ1bmN0aW9uKGUpe3ZhciB0LG4saT11LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcyk7aSYmKGk9Yy5kZWZhdWx0KGkpWzBdKSYmYy5kZWZhdWx0KGkpLmhhc0NsYXNzKCJjYXJvdXNlbCIpJiYodD1vKHt9LGMuZGVmYXVsdChpKS5kYXRhKCksYy5kZWZhdWx0KHRoaXMpLmRhdGEoKSksKG49dGhpcy5nZXRBdHRyaWJ1dGUoImRhdGEtc2xpZGUtdG8iKSkmJih0LmludGVydmFsPSExKSxyLl9qUXVlcnlJbnRlcmZhY2UuY2FsbChjLmRlZmF1bHQoaSksdCksbiYmYy5kZWZhdWx0KGkpLmRhdGEoVSkudG8obiksZS5wcmV2ZW50RGVmYXVsdCgpKX0sYShyLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjYuMiJ9fSx7a2V5OiJEZWZhdWx0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbmV9fV0pLHJ9KCksZD0oYy5kZWZhdWx0KGRvY3VtZW50KS5vbigiY2xpY2suYnMuY2Fyb3VzZWwuZGF0YS1hcGkiLCJbZGF0YS1zbGlkZV0sIFtkYXRhLXNsaWRlLXRvXSIsci5fZGF0YUFwaUNsaWNrSGFuZGxlciksYy5kZWZhdWx0KHdpbmRvdykub24oImxvYWQuYnMuY2Fyb3VzZWwuZGF0YS1hcGkiLGZ1bmN0aW9uKCl7Zm9yKHZhciBlPVtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtcmlkZT0iY2Fyb3VzZWwiXScpKSx0PTAsbj1lLmxlbmd0aDt0PG47dCsrKXt2YXIgaT1jLmRlZmF1bHQoZVt0XSk7ci5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoaSxpLmRhdGEoKSl9fSksYy5kZWZhdWx0LmZuW2ldPXIuX2pRdWVyeUludGVyZmFjZSxjLmRlZmF1bHQuZm5baV0uQ29uc3RydWN0b3I9cixjLmRlZmF1bHQuZm5baV0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBjLmRlZmF1bHQuZm5baV09SyxyLl9qUXVlcnlJbnRlcmZhY2V9LCJjb2xsYXBzZSIpLGg9ImJzLmNvbGxhcHNlIixzZT1jLmRlZmF1bHQuZm5bZF0sZj0ic2hvdyIsYWU9ImNvbGxhcHNlIixvZT0iY29sbGFwc2luZyIsbGU9ImNvbGxhcHNlZCIsZGU9J1tkYXRhLXRvZ2dsZT0iY29sbGFwc2UiXScsY2U9e3RvZ2dsZTohMCxwYXJlbnQ6IiJ9LHVlPXt0b2dnbGU6ImJvb2xlYW4iLHBhcmVudDoiKHN0cmluZ3xlbGVtZW50KSJ9LHBlPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gcyh0LGUpe3RoaXMuX2lzVHJhbnNpdGlvbmluZz0hMSx0aGlzLl9lbGVtZW50PXQsdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLl90cmlnZ2VyQXJyYXk9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS10b2dnbGU9ImNvbGxhcHNlIl1baHJlZj0iIycrdC5pZCsnIl0sW2RhdGEtdG9nZ2xlPSJjb2xsYXBzZSJdW2RhdGEtdGFyZ2V0PSIjJyt0LmlkKyciXScpKTtmb3IodmFyIG49W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGRlKSksaT0wLHI9bi5sZW5ndGg7aTxyO2krKyl7dmFyIHM9bltpXSxhPXUuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudChzKSxvPVtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChhKSkuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlPT09dH0pO251bGwhPT1hJiYwPG8ubGVuZ3RoJiYodGhpcy5fc2VsZWN0b3I9YSx0aGlzLl90cmlnZ2VyQXJyYXkucHVzaChzKSl9dGhpcy5fcGFyZW50PXRoaXMuX2NvbmZpZy5wYXJlbnQ/dGhpcy5fZ2V0UGFyZW50KCk6bnVsbCx0aGlzLl9jb25maWcucGFyZW50fHx0aGlzLl9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3ModGhpcy5fZWxlbWVudCx0aGlzLl90cmlnZ2VyQXJyYXkpLHRoaXMuX2NvbmZpZy50b2dnbGUmJnRoaXMudG9nZ2xlKCl9dmFyIGU9cy5wcm90b3R5cGU7cmV0dXJuIGUudG9nZ2xlPWZ1bmN0aW9uKCl7Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGYpP3RoaXMuaGlkZSgpOnRoaXMuc2hvdygpfSxlLnNob3c9ZnVuY3Rpb24oKXt2YXIgZSx0LG4saSxyPXRoaXM7dGhpcy5faXNUcmFuc2l0aW9uaW5nfHxjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoZil8fChlPXRoaXMuX3BhcmVudCYmMD09PShlPVtdLnNsaWNlLmNhbGwodGhpcy5fcGFyZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zaG93LCAuY29sbGFwc2luZyIpKS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiByLl9jb25maWcucGFyZW50P2UuZ2V0QXR0cmlidXRlKCJkYXRhLXBhcmVudCIpPT09ci5fY29uZmlnLnBhcmVudDplLmNsYXNzTGlzdC5jb250YWlucyhhZSl9KSkubGVuZ3RoP251bGw6ZSkmJihpPWMuZGVmYXVsdChlKS5ub3QodGhpcy5fc2VsZWN0b3IpLmRhdGEoaCkpJiZpLl9pc1RyYW5zaXRpb25pbmd8fChuPWMuZGVmYXVsdC5FdmVudCgic2hvdy5icy5jb2xsYXBzZSIpLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKG4pLG4uaXNEZWZhdWx0UHJldmVudGVkKCkpfHwoZSYmKHMuX2pRdWVyeUludGVyZmFjZS5jYWxsKGMuZGVmYXVsdChlKS5ub3QodGhpcy5fc2VsZWN0b3IpLCJoaWRlIiksaXx8Yy5kZWZhdWx0KGUpLmRhdGEoaCxudWxsKSksdD10aGlzLl9nZXREaW1lbnNpb24oKSxjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkucmVtb3ZlQ2xhc3MoYWUpLmFkZENsYXNzKG9lKSx0aGlzLl9lbGVtZW50LnN0eWxlW3RdPTAsdGhpcy5fdHJpZ2dlckFycmF5Lmxlbmd0aCYmYy5kZWZhdWx0KHRoaXMuX3RyaWdnZXJBcnJheSkucmVtb3ZlQ2xhc3MobGUpLmF0dHIoImFyaWEtZXhwYW5kZWQiLCEwKSx0aGlzLnNldFRyYW5zaXRpb25pbmcoITApLG49InNjcm9sbCIrKHRbMF0udG9VcHBlckNhc2UoKSt0LnNsaWNlKDEpKSxpPXUuZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uZSh1LlRSQU5TSVRJT05fRU5ELGZ1bmN0aW9uKCl7Yy5kZWZhdWx0KHIuX2VsZW1lbnQpLnJlbW92ZUNsYXNzKG9lKS5hZGRDbGFzcyhhZSsiICIrZiksci5fZWxlbWVudC5zdHlsZVt0XT0iIixyLnNldFRyYW5zaXRpb25pbmcoITEpLGMuZGVmYXVsdChyLl9lbGVtZW50KS50cmlnZ2VyKCJzaG93bi5icy5jb2xsYXBzZSIpfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoaSksdGhpcy5fZWxlbWVudC5zdHlsZVt0XT10aGlzLl9lbGVtZW50W25dKyJweCIpfSxlLmhpZGU9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2lmKCF0aGlzLl9pc1RyYW5zaXRpb25pbmcmJmMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhmKSl7dmFyIHQ9Yy5kZWZhdWx0LkV2ZW50KCJoaWRlLmJzLmNvbGxhcHNlIik7aWYoYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIodCksIXQuaXNEZWZhdWx0UHJldmVudGVkKCkpe3ZhciB0PXRoaXMuX2dldERpbWVuc2lvbigpLG49KHRoaXMuX2VsZW1lbnQuc3R5bGVbdF09dGhpcy5fZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVt0XSsicHgiLHUucmVmbG93KHRoaXMuX2VsZW1lbnQpLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5hZGRDbGFzcyhvZSkucmVtb3ZlQ2xhc3MoYWUrIiAiK2YpLHRoaXMuX3RyaWdnZXJBcnJheS5sZW5ndGgpO2lmKDA8bilmb3IodmFyIGk9MDtpPG47aSsrKXt2YXIgcj10aGlzLl90cmlnZ2VyQXJyYXlbaV0scz11LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQocik7bnVsbD09PXN8fGMuZGVmYXVsdChbXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwocykpKS5oYXNDbGFzcyhmKXx8Yy5kZWZhdWx0KHIpLmFkZENsYXNzKGxlKS5hdHRyKCJhcmlhLWV4cGFuZGVkIiwhMSl9dGhpcy5zZXRUcmFuc2l0aW9uaW5nKCEwKTt0aGlzLl9lbGVtZW50LnN0eWxlW3RdPSIiO3Q9dS5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KTtjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkub25lKHUuVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24oKXtlLnNldFRyYW5zaXRpb25pbmcoITEpLGMuZGVmYXVsdChlLl9lbGVtZW50KS5yZW1vdmVDbGFzcyhvZSkuYWRkQ2xhc3MoYWUpLnRyaWdnZXIoImhpZGRlbi5icy5jb2xsYXBzZSIpfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQodCl9fX0sZS5zZXRUcmFuc2l0aW9uaW5nPWZ1bmN0aW9uKGUpe3RoaXMuX2lzVHJhbnNpdGlvbmluZz1lfSxlLmRpc3Bvc2U9ZnVuY3Rpb24oKXtjLmRlZmF1bHQucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LGgpLHRoaXMuX2NvbmZpZz1udWxsLHRoaXMuX3BhcmVudD1udWxsLHRoaXMuX2VsZW1lbnQ9bnVsbCx0aGlzLl90cmlnZ2VyQXJyYXk9bnVsbCx0aGlzLl9pc1RyYW5zaXRpb25pbmc9bnVsbH0sZS5fZ2V0Q29uZmlnPWZ1bmN0aW9uKGUpe3JldHVybihlPW8oe30sY2UsZSkpLnRvZ2dsZT1Cb29sZWFuKGUudG9nZ2xlKSx1LnR5cGVDaGVja0NvbmZpZyhkLGUsdWUpLGV9LGUuX2dldERpbWVuc2lvbj1mdW5jdGlvbigpe3JldHVybiBjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoIndpZHRoIik/IndpZHRoIjoiaGVpZ2h0In0sZS5fZ2V0UGFyZW50PWZ1bmN0aW9uKCl7dmFyIGUsbj10aGlzLHQ9KHUuaXNFbGVtZW50KHRoaXMuX2NvbmZpZy5wYXJlbnQpPyhlPXRoaXMuX2NvbmZpZy5wYXJlbnQsdm9pZCAwIT09dGhpcy5fY29uZmlnLnBhcmVudC5qcXVlcnkmJihlPXRoaXMuX2NvbmZpZy5wYXJlbnRbMF0pKTplPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodGhpcy5fY29uZmlnLnBhcmVudCksJ1tkYXRhLXRvZ2dsZT0iY29sbGFwc2UiXVtkYXRhLXBhcmVudD0iJyt0aGlzLl9jb25maWcucGFyZW50KyciXScpLHQ9W10uc2xpY2UuY2FsbChlLnF1ZXJ5U2VsZWN0b3JBbGwodCkpO3JldHVybiBjLmRlZmF1bHQodCkuZWFjaChmdW5jdGlvbihlLHQpe24uX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyhzLl9nZXRUYXJnZXRGcm9tRWxlbWVudCh0KSxbdF0pfSksZX0sZS5fYWRkQXJpYUFuZENvbGxhcHNlZENsYXNzPWZ1bmN0aW9uKGUsdCl7ZT1jLmRlZmF1bHQoZSkuaGFzQ2xhc3MoZik7dC5sZW5ndGgmJmMuZGVmYXVsdCh0KS50b2dnbGVDbGFzcyhsZSwhZSkuYXR0cigiYXJpYS1leHBhbmRlZCIsZSl9LHMuX2dldFRhcmdldEZyb21FbGVtZW50PWZ1bmN0aW9uKGUpe2U9dS5nZXRTZWxlY3RvckZyb21FbGVtZW50KGUpO3JldHVybiBlP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoZSk6bnVsbH0scy5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKGkpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1jLmRlZmF1bHQodGhpcyksdD1lLmRhdGEoaCksbj1vKHt9LGNlLGUuZGF0YSgpLCJvYmplY3QiPT10eXBlb2YgaSYmaT9pOnt9KTtpZighdCYmbi50b2dnbGUmJiJzdHJpbmciPT10eXBlb2YgaSYmL3Nob3d8aGlkZS8udGVzdChpKSYmKG4udG9nZ2xlPSExKSx0fHwodD1uZXcgcyh0aGlzLG4pLGUuZGF0YShoLHQpKSwic3RyaW5nIj09dHlwZW9mIGkpe2lmKHZvaWQgMD09PXRbaV0pdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInK2krJyInKTt0W2ldKCl9fSl9LGEocyxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC42LjIifX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGNlfX1dKSxzfSgpLGhlPShjLmRlZmF1bHQoZG9jdW1lbnQpLm9uKCJjbGljay5icy5jb2xsYXBzZS5kYXRhLWFwaSIsZGUsZnVuY3Rpb24oZSl7IkEiPT09ZS5jdXJyZW50VGFyZ2V0LnRhZ05hbWUmJmUucHJldmVudERlZmF1bHQoKTt2YXIgbj1jLmRlZmF1bHQodGhpcyksZT11LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcyksZT1bXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoZSkpO2MuZGVmYXVsdChlKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9Yy5kZWZhdWx0KHRoaXMpLHQ9ZS5kYXRhKGgpPyJ0b2dnbGUiOm4uZGF0YSgpO3BlLl9qUXVlcnlJbnRlcmZhY2UuY2FsbChlLHQpfSl9KSxjLmRlZmF1bHQuZm5bZF09cGUuX2pRdWVyeUludGVyZmFjZSxjLmRlZmF1bHQuZm5bZF0uQ29uc3RydWN0b3I9cGUsYy5kZWZhdWx0LmZuW2RdLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYy5kZWZhdWx0LmZuW2RdPXNlLHBlLl9qUXVlcnlJbnRlcmZhY2V9LCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYidW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50JiYidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciksZmU9ZnVuY3Rpb24oKXtmb3IodmFyIGU9WyJFZGdlIiwiVHJpZGVudCIsIkZpcmVmb3giXSx0PTA7dDxlLmxlbmd0aDt0Kz0xKWlmKGhlJiYwPD1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoZVt0XSkpcmV0dXJuIDE7cmV0dXJuIDB9KCk7dmFyIG1lPWhlJiZ3aW5kb3cuUHJvbWlzZT9mdW5jdGlvbihlKXt2YXIgdD0hMTtyZXR1cm4gZnVuY3Rpb24oKXt0fHwodD0hMCx3aW5kb3cuUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe3Q9ITEsZSgpfSkpfX06ZnVuY3Rpb24oZSl7dmFyIHQ9ITE7cmV0dXJuIGZ1bmN0aW9uKCl7dHx8KHQ9ITAsc2V0VGltZW91dChmdW5jdGlvbigpe3Q9ITEsZSgpfSxmZSkpfX07ZnVuY3Rpb24gZ2UoZSl7cmV0dXJuIGUmJiJbb2JqZWN0IEZ1bmN0aW9uXSI9PT17fS50b1N0cmluZy5jYWxsKGUpfWZ1bmN0aW9uIG0oZSx0KXtyZXR1cm4gMSE9PWUubm9kZVR5cGU/W106KGU9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZSxudWxsKSx0P2VbdF06ZSl9ZnVuY3Rpb24gdmUoZSl7cmV0dXJuIkhUTUwiPT09ZS5ub2RlTmFtZT9lOmUucGFyZW50Tm9kZXx8ZS5ob3N0fWZ1bmN0aW9uIHllKGUpe2lmKCFlKXJldHVybiBkb2N1bWVudC5ib2R5O3N3aXRjaChlLm5vZGVOYW1lKXtjYXNlIkhUTUwiOmNhc2UiQk9EWSI6cmV0dXJuIGUub3duZXJEb2N1bWVudC5ib2R5O2Nhc2UiI2RvY3VtZW50IjpyZXR1cm4gZS5ib2R5fXZhciB0PW0oZSksbj10Lm92ZXJmbG93LGk9dC5vdmVyZmxvd1gsdD10Lm92ZXJmbG93WTtyZXR1cm4vKGF1dG98c2Nyb2xsfG92ZXJsYXkpLy50ZXN0KG4rdCtpKT9lOnllKHZlKGUpKX1mdW5jdGlvbiBiZShlKXtyZXR1cm4gZSYmZS5yZWZlcmVuY2VOb2RlP2UucmVmZXJlbmNlTm9kZTplfXZhciB3ZT1oZSYmISghd2luZG93Lk1TSW5wdXRNZXRob2RDb250ZXh0fHwhZG9jdW1lbnQuZG9jdW1lbnRNb2RlKSx4ZT1oZSYmL01TSUUgMTAvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7ZnVuY3Rpb24gZyhlKXtyZXR1cm4gMTE9PT1lP3dlOjEwIT09ZSYmd2V8fHhlfWZ1bmN0aW9uIHYoZSl7aWYoIWUpcmV0dXJuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtmb3IodmFyIHQ9ZygxMCk/ZG9jdW1lbnQuYm9keTpudWxsLG49ZS5vZmZzZXRQYXJlbnR8fG51bGw7bj09PXQmJmUubmV4dEVsZW1lbnRTaWJsaW5nOyluPShlPWUubmV4dEVsZW1lbnRTaWJsaW5nKS5vZmZzZXRQYXJlbnQ7dmFyIGk9biYmbi5ub2RlTmFtZTtyZXR1cm4gaSYmIkJPRFkiIT09aSYmIkhUTUwiIT09aT8tMSE9PVsiVEgiLCJURCIsIlRBQkxFIl0uaW5kZXhPZihuLm5vZGVOYW1lKSYmInN0YXRpYyI9PT1tKG4sInBvc2l0aW9uIik/dihuKTpuOihlP2Uub3duZXJEb2N1bWVudDpkb2N1bWVudCkuZG9jdW1lbnRFbGVtZW50fWZ1bmN0aW9uIEVlKGUpe3JldHVybiBudWxsIT09ZS5wYXJlbnROb2RlP0VlKGUucGFyZW50Tm9kZSk6ZX1mdW5jdGlvbiBfZShlLHQpe3ZhciBuLGkscjtyZXR1cm4gZSYmZS5ub2RlVHlwZSYmdCYmdC5ub2RlVHlwZT8oaT0ocj1lLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fRk9MTE9XSU5HKT9lOnQscj1yP3Q6ZSwobj1kb2N1bWVudC5jcmVhdGVSYW5nZSgpKS5zZXRTdGFydChpLDApLG4uc2V0RW5kKHIsMCksZSE9PShuPW4uY29tbW9uQW5jZXN0b3JDb250YWluZXIpJiZ0IT09bnx8aS5jb250YWlucyhyKT8iQk9EWSI9PT0ocj0oaT1uKS5ub2RlTmFtZSl8fCJIVE1MIiE9PXImJnYoaS5maXJzdEVsZW1lbnRDaGlsZCkhPT1pP3Yobik6bjoocj1FZShlKSkuaG9zdD9fZShyLmhvc3QsdCk6X2UoZSxFZSh0KS5ob3N0KSk6ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fWZ1bmN0aW9uIHkoZSx0KXt2YXIgdD0idG9wIj09PSgxPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PXQ/dDoidG9wIik/InNjcm9sbFRvcCI6InNjcm9sbExlZnQiLG49ZS5ub2RlTmFtZTtyZXR1cm4oIkJPRFkiPT09bnx8IkhUTUwiPT09bj8obj1lLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LGUub3duZXJEb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50fHxuKTplKVt0XX1mdW5jdGlvbiBUZShlLHQpe3ZhciB0PSJ4Ij09PXQ/IkxlZnQiOiJUb3AiLG49IkxlZnQiPT10PyJSaWdodCI6IkJvdHRvbSI7cmV0dXJuIHBhcnNlRmxvYXQoZVsiYm9yZGVyIit0KyJXaWR0aCJdKStwYXJzZUZsb2F0KGVbImJvcmRlciIrbisiV2lkdGgiXSl9ZnVuY3Rpb24gU2UoZSx0LG4saSl7cmV0dXJuIE1hdGgubWF4KHRbIm9mZnNldCIrZV0sdFsic2Nyb2xsIitlXSxuWyJjbGllbnQiK2VdLG5bIm9mZnNldCIrZV0sblsic2Nyb2xsIitlXSxnKDEwKT9wYXJzZUludChuWyJvZmZzZXQiK2VdKStwYXJzZUludChpWyJtYXJnaW4iKygiSGVpZ2h0Ij09PWU/IlRvcCI6IkxlZnQiKV0pK3BhcnNlSW50KGlbIm1hcmdpbiIrKCJIZWlnaHQiPT09ZT8iQm90dG9tIjoiUmlnaHQiKV0pOjApfWZ1bmN0aW9uIENlKGUpe3ZhciB0PWUuYm9keSxlPWUuZG9jdW1lbnRFbGVtZW50LG49ZygxMCkmJmdldENvbXB1dGVkU3R5bGUoZSk7cmV0dXJue2hlaWdodDpTZSgiSGVpZ2h0Iix0LGUsbiksd2lkdGg6U2UoIldpZHRoIix0LGUsbil9fXQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0JiZBZShlLnByb3RvdHlwZSx0KSxuJiZBZShlLG4pLGV9O2Z1bmN0aW9uIEFlKGUsdCl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciBpPXRbbl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxpLmtleSxpKX19ZnVuY3Rpb24gYihlLHQsbil7cmV0dXJuIHQgaW4gZT9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpuLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6ZVt0XT1uLGV9dmFyIHc9T2JqZWN0LmFzc2lnbnx8ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG4saT1hcmd1bWVudHNbdF07Zm9yKG4gaW4gaSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaSxuKSYmKGVbbl09aVtuXSl9cmV0dXJuIGV9O2Z1bmN0aW9uIHgoZSl7cmV0dXJuIHcoe30sZSx7cmlnaHQ6ZS5sZWZ0K2Uud2lkdGgsYm90dG9tOmUudG9wK2UuaGVpZ2h0fSl9ZnVuY3Rpb24gTWUoZSl7dmFyIHQ9e307dHJ5e2coMTApPyh0PWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbj15KGUsInRvcCIpLGk9eShlLCJsZWZ0IiksdC50b3ArPW4sdC5sZWZ0Kz1pLHQuYm90dG9tKz1uLHQucmlnaHQrPWkpOnQ9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKX1jYXRjaChlKXt9dmFyIG49e2xlZnQ6dC5sZWZ0LHRvcDp0LnRvcCx3aWR0aDp0LnJpZ2h0LXQubGVmdCxoZWlnaHQ6dC5ib3R0b20tdC50b3B9LGk9IkhUTUwiPT09ZS5ub2RlTmFtZT9DZShlLm93bmVyRG9jdW1lbnQpOnt9LHQ9aS53aWR0aHx8ZS5jbGllbnRXaWR0aHx8bi53aWR0aCxpPWkuaGVpZ2h0fHxlLmNsaWVudEhlaWdodHx8bi5oZWlnaHQsdD1lLm9mZnNldFdpZHRoLXQsaT1lLm9mZnNldEhlaWdodC1pO3JldHVybih0fHxpKSYmKHQtPVRlKGU9bShlKSwieCIpLGktPVRlKGUsInkiKSxuLndpZHRoLT10LG4uaGVpZ2h0LT1pKSx4KG4pfWZ1bmN0aW9uIERlKGUsdCxuKXt2YXIgbj0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PW4mJm4saT1nKDEwKSxyPSJIVE1MIj09PXQubm9kZU5hbWUscz1NZShlKSxhPU1lKHQpLGU9eWUoZSksbz1tKHQpLGw9cGFyc2VGbG9hdChvLmJvcmRlclRvcFdpZHRoKSxkPXBhcnNlRmxvYXQoby5ib3JkZXJMZWZ0V2lkdGgpLGE9KG4mJnImJihhLnRvcD1NYXRoLm1heChhLnRvcCwwKSxhLmxlZnQ9TWF0aC5tYXgoYS5sZWZ0LDApKSx4KHt0b3A6cy50b3AtYS50b3AtbCxsZWZ0OnMubGVmdC1hLmxlZnQtZCx3aWR0aDpzLndpZHRoLGhlaWdodDpzLmhlaWdodH0pKTtyZXR1cm4gYS5tYXJnaW5Ub3A9MCxhLm1hcmdpbkxlZnQ9MCwhaSYmciYmKHM9cGFyc2VGbG9hdChvLm1hcmdpblRvcCkscj1wYXJzZUZsb2F0KG8ubWFyZ2luTGVmdCksYS50b3AtPWwtcyxhLmJvdHRvbS09bC1zLGEubGVmdC09ZC1yLGEucmlnaHQtPWQtcixhLm1hcmdpblRvcD1zLGEubWFyZ2luTGVmdD1yKSxhPShpJiYhbj90LmNvbnRhaW5zKGUpOnQ9PT1lJiYiQk9EWSIhPT1lLm5vZGVOYW1lKT9mdW5jdGlvbihlLHQsbil7dmFyIG49Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1uJiZuLGk9eSh0LCJ0b3AiKSx0PXkodCwibGVmdCIpLG49bj8tMToxO3JldHVybiBlLnRvcCs9aSpuLGUuYm90dG9tKz1pKm4sZS5sZWZ0Kz10Km4sZS5yaWdodCs9dCpuLGV9KGEsdCk6YX1mdW5jdGlvbiBMZShlKXtpZighZXx8IWUucGFyZW50RWxlbWVudHx8ZygpKXJldHVybiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7Zm9yKHZhciB0PWUucGFyZW50RWxlbWVudDt0JiYibm9uZSI9PT1tKHQsInRyYW5zZm9ybSIpOyl0PXQucGFyZW50RWxlbWVudDtyZXR1cm4gdHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fWZ1bmN0aW9uIGtlKGUsdCxuLGkscil7dmFyIHMscj00PGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PXImJnIsYT17dG9wOjAsbGVmdDowfSxvPXI/TGUoZSk6X2UoZSxiZSh0KSksbz0oInZpZXdwb3J0Ij09PWk/YT1mdW5jdGlvbihlLHQpe3ZhciB0PTE8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09dCYmdCxuPWUub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsZT1EZShlLG4pLGk9TWF0aC5tYXgobi5jbGllbnRXaWR0aCx3aW5kb3cuaW5uZXJXaWR0aHx8MCkscj1NYXRoLm1heChuLmNsaWVudEhlaWdodCx3aW5kb3cuaW5uZXJIZWlnaHR8fDApLHM9dD8wOnkobiksdD10PzA6eShuLCJsZWZ0Iik7cmV0dXJuIHgoe3RvcDpzLWUudG9wK2UubWFyZ2luVG9wLGxlZnQ6dC1lLmxlZnQrZS5tYXJnaW5MZWZ0LHdpZHRoOmksaGVpZ2h0OnJ9KX0obyxyKToocz12b2lkIDAsInNjcm9sbFBhcmVudCI9PT1pPyJCT0RZIj09PShzPXllKHZlKHQpKSkubm9kZU5hbWUmJihzPWUub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpOnM9IndpbmRvdyI9PT1pP2Uub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ6aSx0PURlKHMsbyxyKSwiSFRNTCIhPT1zLm5vZGVOYW1lfHxmdW5jdGlvbiBlKHQpe3ZhciBuPXQubm9kZU5hbWU7cmV0dXJuIkJPRFkiIT09biYmIkhUTUwiIT09biYmKCJmaXhlZCI9PT1tKHQsInBvc2l0aW9uIil8fCEhKG49dmUodCkpJiZlKG4pKX0obyk/YT10OihyPShpPUNlKGUub3duZXJEb2N1bWVudCkpLmhlaWdodCxzPWkud2lkdGgsYS50b3ArPXQudG9wLXQubWFyZ2luVG9wLGEuYm90dG9tPXIrdC50b3AsYS5sZWZ0Kz10LmxlZnQtdC5tYXJnaW5MZWZ0LGEucmlnaHQ9cyt0LmxlZnQpKSwibnVtYmVyIj09dHlwZW9mKG49bnx8MCkpO3JldHVybiBhLmxlZnQrPW8/bjpuLmxlZnR8fDAsYS50b3ArPW8/bjpuLnRvcHx8MCxhLnJpZ2h0LT1vP246bi5yaWdodHx8MCxhLmJvdHRvbS09bz9uOm4uYm90dG9tfHwwLGF9ZnVuY3Rpb24gT2UoZSx0LG4saSxyLHMpe3ZhciBhLHM9NTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1zP3M6MDtyZXR1cm4tMT09PWUuaW5kZXhPZigiYXV0byIpP2U6KGk9a2UobixpLHMsciksYT17dG9wOnt3aWR0aDppLndpZHRoLGhlaWdodDp0LnRvcC1pLnRvcH0scmlnaHQ6e3dpZHRoOmkucmlnaHQtdC5yaWdodCxoZWlnaHQ6aS5oZWlnaHR9LGJvdHRvbTp7d2lkdGg6aS53aWR0aCxoZWlnaHQ6aS5ib3R0b20tdC5ib3R0b219LGxlZnQ6e3dpZHRoOnQubGVmdC1pLmxlZnQsaGVpZ2h0OmkuaGVpZ2h0fX0sKDA8KHI9KHM9T2JqZWN0LmtleXMoYSkubWFwKGZ1bmN0aW9uKGUpe3JldHVybiB3KHtrZXk6ZX0sYVtlXSx7YXJlYTooZT1hW2VdKS53aWR0aCplLmhlaWdodH0pfSkuc29ydChmdW5jdGlvbihlLHQpe3JldHVybiB0LmFyZWEtZS5hcmVhfSkpLmZpbHRlcihmdW5jdGlvbihlKXt2YXIgdD1lLndpZHRoLGU9ZS5oZWlnaHQ7cmV0dXJuIHQ+PW4uY2xpZW50V2lkdGgmJmU+PW4uY2xpZW50SGVpZ2h0fSkpLmxlbmd0aD9yOnMpWzBdLmtleSsoKHQ9ZS5zcGxpdCgiLSIpWzFdKT8iLSIrdDoiIikpfWZ1bmN0aW9uIFBlKGUsdCxuLGkpe2k9Mzxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1pP2k6bnVsbDtyZXR1cm4gRGUobixpP0xlKHQpOl9lKHQsYmUobikpLGkpfWZ1bmN0aW9uIEllKGUpe3ZhciB0PWUub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKGUpLG49cGFyc2VGbG9hdCh0Lm1hcmdpblRvcHx8MCkrcGFyc2VGbG9hdCh0Lm1hcmdpbkJvdHRvbXx8MCksdD1wYXJzZUZsb2F0KHQubWFyZ2luTGVmdHx8MCkrcGFyc2VGbG9hdCh0Lm1hcmdpblJpZ2h0fHwwKTtyZXR1cm57d2lkdGg6ZS5vZmZzZXRXaWR0aCt0LGhlaWdodDplLm9mZnNldEhlaWdodCtufX1mdW5jdGlvbiAkZShlKXt2YXIgdD17bGVmdDoicmlnaHQiLHJpZ2h0OiJsZWZ0Iixib3R0b206InRvcCIsdG9wOiJib3R0b20ifTtyZXR1cm4gZS5yZXBsYWNlKC9sZWZ0fHJpZ2h0fGJvdHRvbXx0b3AvZyxmdW5jdGlvbihlKXtyZXR1cm4gdFtlXX0pfWZ1bmN0aW9uIE5lKGUsdCxuKXtuPW4uc3BsaXQoIi0iKVswXTt2YXIgZT1JZShlKSxpPXt3aWR0aDplLndpZHRoLGhlaWdodDplLmhlaWdodH0scj0tMSE9PVsicmlnaHQiLCJsZWZ0Il0uaW5kZXhPZihuKSxzPXI/InRvcCI6ImxlZnQiLGE9cj8ibGVmdCI6InRvcCIsbz1yPyJoZWlnaHQiOiJ3aWR0aCIscj1yPyJ3aWR0aCI6ImhlaWdodCI7cmV0dXJuIGlbc109dFtzXSt0W29dLzItZVtvXS8yLGlbYV09bj09PWE/dFthXS1lW3JdOnRbJGUoYSldLGl9ZnVuY3Rpb24gamUoZSx0KXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmZpbmQ/ZS5maW5kKHQpOmUuZmlsdGVyKHQpWzBdfWZ1bmN0aW9uIHFlKGUsbix0KXt2YXIgaSxyO3JldHVybih2b2lkIDA9PT10P2U6ZS5zbGljZSgwLChlPWUsaT0ibmFtZSIscj10LEFycmF5LnByb3RvdHlwZS5maW5kSW5kZXg/ZS5maW5kSW5kZXgoZnVuY3Rpb24oZSl7cmV0dXJuIGVbaV09PT1yfSk6KHQ9amUoZSxmdW5jdGlvbihlKXtyZXR1cm4gZVtpXT09PXJ9KSxlLmluZGV4T2YodCkpKSkpLmZvckVhY2goZnVuY3Rpb24oZSl7ZS5mdW5jdGlvbiYmY29uc29sZS53YXJuKCJgbW9kaWZpZXIuZnVuY3Rpb25gIGlzIGRlcHJlY2F0ZWQsIHVzZSBgbW9kaWZpZXIuZm5gISIpO3ZhciB0PWUuZnVuY3Rpb258fGUuZm47ZS5lbmFibGVkJiZnZSh0KSYmKG4ub2Zmc2V0cy5wb3BwZXI9eChuLm9mZnNldHMucG9wcGVyKSxuLm9mZnNldHMucmVmZXJlbmNlPXgobi5vZmZzZXRzLnJlZmVyZW5jZSksbj10KG4sZSkpfSksbn1mdW5jdGlvbiB6ZShlLG4pe3JldHVybiBlLnNvbWUoZnVuY3Rpb24oZSl7dmFyIHQ9ZS5uYW1lO3JldHVybiBlLmVuYWJsZWQmJnQ9PT1ufSl9ZnVuY3Rpb24gSGUoZSl7Zm9yKHZhciB0PVshMSwibXMiLCJXZWJraXQiLCJNb3oiLCJPIl0sbj1lLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpK2Uuc2xpY2UoMSksaT0wO2k8dC5sZW5ndGg7aSsrKXt2YXIgcj10W2ldLHI9cj8iIityK246ZTtpZih2b2lkIDAhPT1kb2N1bWVudC5ib2R5LnN0eWxlW3JdKXJldHVybiByfXJldHVybiBudWxsfWZ1bmN0aW9uIFJlKGUpe2U9ZS5vd25lckRvY3VtZW50O3JldHVybiBlP2UuZGVmYXVsdFZpZXc6d2luZG93fWZ1bmN0aW9uIEZlKGUsdCxuLGkpe24udXBkYXRlQm91bmQ9aSxSZShlKS5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLG4udXBkYXRlQm91bmQse3Bhc3NpdmU6ITB9KTtpPXllKGUpO3JldHVybiBmdW5jdGlvbiBlKHQsbixpLHIpe3ZhciBzPSJCT0RZIj09PXQubm9kZU5hbWUsdD1zP3Qub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldzp0O3QuYWRkRXZlbnRMaXN0ZW5lcihuLGkse3Bhc3NpdmU6ITB9KSxzfHxlKHllKHQucGFyZW50Tm9kZSksbixpLHIpLHIucHVzaCh0KX0oaSwic2Nyb2xsIixuLnVwZGF0ZUJvdW5kLG4uc2Nyb2xsUGFyZW50cyksbi5zY3JvbGxFbGVtZW50PWksbi5ldmVudHNFbmFibGVkPSEwLG59ZnVuY3Rpb24gQmUoKXt2YXIgZSx0O3RoaXMuc3RhdGUuZXZlbnRzRW5hYmxlZCYmKGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuc2NoZWR1bGVVcGRhdGUpLHRoaXMuc3RhdGU9KGU9dGhpcy5yZWZlcmVuY2UsdD10aGlzLnN0YXRlLFJlKGUpLnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdC51cGRhdGVCb3VuZCksdC5zY3JvbGxQYXJlbnRzLmZvckVhY2goZnVuY3Rpb24oZSl7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLHQudXBkYXRlQm91bmQpfSksdC51cGRhdGVCb3VuZD1udWxsLHQuc2Nyb2xsUGFyZW50cz1bXSx0LnNjcm9sbEVsZW1lbnQ9bnVsbCx0LmV2ZW50c0VuYWJsZWQ9ITEsdCkpfWZ1bmN0aW9uIFdlKGUpe3JldHVybiIiIT09ZSYmIWlzTmFOKHBhcnNlRmxvYXQoZSkpJiZpc0Zpbml0ZShlKX1mdW5jdGlvbiBHZShuLGkpe09iamVjdC5rZXlzKGkpLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9IiI7LTEhPT1bIndpZHRoIiwiaGVpZ2h0IiwidG9wIiwicmlnaHQiLCJib3R0b20iLCJsZWZ0Il0uaW5kZXhPZihlKSYmV2UoaVtlXSkmJih0PSJweCIpLG4uc3R5bGVbZV09aVtlXSt0fSl9ZnVuY3Rpb24gWWUoZSx0KXtmdW5jdGlvbiBuKGUpe3JldHVybiBlfXZhciBpPWUub2Zmc2V0cyxyPWkucG9wcGVyLGk9aS5yZWZlcmVuY2Uscz1NYXRoLnJvdW5kLGE9TWF0aC5mbG9vcixpPXMoaS53aWR0aCksbz1zKHIud2lkdGgpLGw9LTEhPT1bImxlZnQiLCJyaWdodCJdLmluZGV4T2YoZS5wbGFjZW1lbnQpLGU9LTEhPT1lLnBsYWNlbWVudC5pbmRleE9mKCItIiksbD10P2x8fGV8fGklMj09byUyP3M6YTpuLGE9dD9zOm47cmV0dXJue2xlZnQ6bChpJTI9PTEmJm8lMj09MSYmIWUmJnQ/ci5sZWZ0LTE6ci5sZWZ0KSx0b3A6YShyLnRvcCksYm90dG9tOmEoci5ib3R0b20pLHJpZ2h0Omwoci5yaWdodCl9fXZhciBYZT1oZSYmL0ZpcmVmb3gvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO2Z1bmN0aW9uIFZlKGUsdCxuKXt2YXIgaSxyPWplKGUsZnVuY3Rpb24oZSl7cmV0dXJuIGUubmFtZT09PXR9KSxlPSEhciYmZS5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBlLm5hbWU9PT1uJiZlLmVuYWJsZWQmJmUub3JkZXI8ci5vcmRlcn0pO3JldHVybiBlfHwoaT0iYCIrdCsiYCIsY29uc29sZS53YXJuKCJgIituKyJgIisiIG1vZGlmaWVyIGlzIHJlcXVpcmVkIGJ5ICIraSsiIG1vZGlmaWVyIGluIG9yZGVyIHRvIHdvcmssIGJlIHN1cmUgdG8gaW5jbHVkZSBpdCBiZWZvcmUgIitpKyIhIikpLGV9dmFyIFVlPVsiYXV0by1zdGFydCIsImF1dG8iLCJhdXRvLWVuZCIsInRvcC1zdGFydCIsInRvcCIsInRvcC1lbmQiLCJyaWdodC1zdGFydCIsInJpZ2h0IiwicmlnaHQtZW5kIiwiYm90dG9tLWVuZCIsImJvdHRvbSIsImJvdHRvbS1zdGFydCIsImxlZnQtZW5kIiwibGVmdCIsImxlZnQtc3RhcnQiXSxRZT1VZS5zbGljZSgzKTtmdW5jdGlvbiBLZShlLHQpe3Q9MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT10JiZ0LGU9UWUuaW5kZXhPZihlKSxlPVFlLnNsaWNlKGUrMSkuY29uY2F0KFFlLnNsaWNlKDAsZSkpO3JldHVybiB0P2UucmV2ZXJzZSgpOmV9dmFyIFplPSJmbGlwIixKZT0iY2xvY2t3aXNlIixldD0iY291bnRlcmNsb2Nrd2lzZSI7ZnVuY3Rpb24gdHQoZSxvLGwsdCl7dmFyIHI9WzAsMF0saT0tMSE9PVsicmlnaHQiLCJsZWZ0Il0uaW5kZXhPZih0KSx0PWUuc3BsaXQoLyhcK3xcLSkvKS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIGUudHJpbSgpfSksZT10LmluZGV4T2YoamUodCxmdW5jdGlvbihlKXtyZXR1cm4tMSE9PWUuc2VhcmNoKC8sfFxzLyl9KSksbj0odFtlXSYmLTE9PT10W2VdLmluZGV4T2YoIiwiKSYmY29uc29sZS53YXJuKCJPZmZzZXRzIHNlcGFyYXRlZCBieSB3aGl0ZSBzcGFjZShzKSBhcmUgZGVwcmVjYXRlZCwgdXNlIGEgY29tbWEgKCwpIGluc3RlYWQuIiksL1xzKixccyp8XHMrLyk7cmV0dXJuKC0xIT09ZT9bdC5zbGljZSgwLGUpLmNvbmNhdChbdFtlXS5zcGxpdChuKVswXV0pLFt0W2VdLnNwbGl0KG4pWzFdXS5jb25jYXQodC5zbGljZShlKzEpKV06W3RdKS5tYXAoZnVuY3Rpb24oZSx0KXt2YXIgYT0oMT09PXQ/IWk6aSk/ImhlaWdodCI6IndpZHRoIixuPSExO3JldHVybiBlLnJlZHVjZShmdW5jdGlvbihlLHQpe3JldHVybiIiPT09ZVtlLmxlbmd0aC0xXSYmLTEhPT1bIisiLCItIl0uaW5kZXhPZih0KT8oZVtlLmxlbmd0aC0xXT10LG49ITAsZSk6bj8oZVtlLmxlbmd0aC0xXSs9dCxuPSExLGUpOmUuY29uY2F0KHQpfSxbXSkubWFwKGZ1bmN0aW9uKGUpe3JldHVybiB0PWEsbj1vLGk9bCxyPSsocz0oZT1lKS5tYXRjaCgvKCg/OlwtfFwrKT9cZCpcLj9cZCopKC4qKS8pKVsxXSxzPXNbMl0scj8wPT09cy5pbmRleE9mKCIlIik/eCgiJXAiPT09cz9uOmkpW3RdLzEwMCpyOiJ2aCI9PT1zfHwidnciPT09cz8oInZoIj09PXM/TWF0aC5tYXgoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCx3aW5kb3cuaW5uZXJIZWlnaHR8fDApOk1hdGgubWF4KGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCx3aW5kb3cuaW5uZXJXaWR0aHx8MCkpLzEwMCpyOnI6ZTt2YXIgdCxuLGkscixzfSl9KS5mb3JFYWNoKGZ1bmN0aW9uKG4saSl7bi5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7V2UoZSkmJihyW2ldKz1lKigiLSI9PT1uW3QtMV0/LTE6MSkpfSl9KSxyfXZhciBudD17cGxhY2VtZW50OiJib3R0b20iLHBvc2l0aW9uRml4ZWQ6ITEsZXZlbnRzRW5hYmxlZDohMCxyZW1vdmVPbkRlc3Ryb3k6ITEsb25DcmVhdGU6ZnVuY3Rpb24oKXt9LG9uVXBkYXRlOmZ1bmN0aW9uKCl7fSxtb2RpZmllcnM6e3NoaWZ0OntvcmRlcjoxMDAsZW5hYmxlZDohMCxmbjpmdW5jdGlvbihlKXt2YXIgdCxuLGkscj1lLnBsYWNlbWVudCxzPXIuc3BsaXQoIi0iKVswXTtyZXR1cm4ocj1yLnNwbGl0KCItIilbMV0pJiYodD0obj1lLm9mZnNldHMpLnJlZmVyZW5jZSxuPW4ucG9wcGVyLGk9KHM9LTEhPT1bImJvdHRvbSIsInRvcCJdLmluZGV4T2YocykpPyJ3aWR0aCI6ImhlaWdodCIscz17c3RhcnQ6Yih7fSxzPXM/ImxlZnQiOiJ0b3AiLHRbc10pLGVuZDpiKHt9LHMsdFtzXSt0W2ldLW5baV0pfSxlLm9mZnNldHMucG9wcGVyPXcoe30sbixzW3JdKSksZX19LG9mZnNldDp7b3JkZXI6MjAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSx0KXt2YXIgdD10Lm9mZnNldCxuPWUucGxhY2VtZW50LGk9KHI9ZS5vZmZzZXRzKS5wb3BwZXIscj1yLnJlZmVyZW5jZSxuPW4uc3BsaXQoIi0iKVswXSxzPXZvaWQgMCxzPVdlKCt0KT9bK3QsMF06dHQodCxpLHIsbik7cmV0dXJuImxlZnQiPT09bj8oaS50b3ArPXNbMF0saS5sZWZ0LT1zWzFdKToicmlnaHQiPT09bj8oaS50b3ArPXNbMF0saS5sZWZ0Kz1zWzFdKToidG9wIj09PW4/KGkubGVmdCs9c1swXSxpLnRvcC09c1sxXSk6ImJvdHRvbSI9PT1uJiYoaS5sZWZ0Kz1zWzBdLGkudG9wKz1zWzFdKSxlLnBvcHBlcj1pLGV9LG9mZnNldDowfSxwcmV2ZW50T3ZlcmZsb3c6e29yZGVyOjMwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUsaSl7dmFyIHQ9aS5ib3VuZGFyaWVzRWxlbWVudHx8dihlLmluc3RhbmNlLnBvcHBlciksbj0oZS5pbnN0YW5jZS5yZWZlcmVuY2U9PT10JiYodD12KHQpKSxIZSgidHJhbnNmb3JtIikpLHI9ZS5pbnN0YW5jZS5wb3BwZXIuc3R5bGUscz1yLnRvcCxhPXIubGVmdCxvPXJbbl0sbD0oci50b3A9IiIsci5sZWZ0PSIiLHJbbl09IiIsa2UoZS5pbnN0YW5jZS5wb3BwZXIsZS5pbnN0YW5jZS5yZWZlcmVuY2UsaS5wYWRkaW5nLHQsZS5wb3NpdGlvbkZpeGVkKSksdD0oci50b3A9cyxyLmxlZnQ9YSxyW25dPW8saS5ib3VuZGFyaWVzPWwsaS5wcmlvcml0eSksZD1lLm9mZnNldHMucG9wcGVyLGM9e3ByaW1hcnk6ZnVuY3Rpb24oZSl7dmFyIHQ9ZFtlXTtyZXR1cm4gZFtlXTxsW2VdJiYhaS5lc2NhcGVXaXRoUmVmZXJlbmNlJiYodD1NYXRoLm1heChkW2VdLGxbZV0pKSxiKHt9LGUsdCl9LHNlY29uZGFyeTpmdW5jdGlvbihlKXt2YXIgdD0icmlnaHQiPT09ZT8ibGVmdCI6InRvcCIsbj1kW3RdO3JldHVybiBkW2VdPmxbZV0mJiFpLmVzY2FwZVdpdGhSZWZlcmVuY2UmJihuPU1hdGgubWluKGRbdF0sbFtlXS0oInJpZ2h0Ij09PWU/ZC53aWR0aDpkLmhlaWdodCkpKSxiKHt9LHQsbil9fTtyZXR1cm4gdC5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PS0xIT09WyJsZWZ0IiwidG9wIl0uaW5kZXhPZihlKT8icHJpbWFyeSI6InNlY29uZGFyeSI7ZD13KHt9LGQsY1t0XShlKSl9KSxlLm9mZnNldHMucG9wcGVyPWQsZX0scHJpb3JpdHk6WyJsZWZ0IiwicmlnaHQiLCJ0b3AiLCJib3R0b20iXSxwYWRkaW5nOjUsYm91bmRhcmllc0VsZW1lbnQ6InNjcm9sbFBhcmVudCJ9LGtlZXBUb2dldGhlcjp7b3JkZXI6NDAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSl7dmFyIHQ9KG49ZS5vZmZzZXRzKS5wb3BwZXIsbj1uLnJlZmVyZW5jZSxpPWUucGxhY2VtZW50LnNwbGl0KCItIilbMF0scj1NYXRoLmZsb29yLHM9KGk9LTEhPT1bInRvcCIsImJvdHRvbSJdLmluZGV4T2YoaSkpPyJyaWdodCI6ImJvdHRvbSIsYT1pPyJsZWZ0IjoidG9wIixpPWk/IndpZHRoIjoiaGVpZ2h0IjtyZXR1cm4gdFtzXTxyKG5bYV0pJiYoZS5vZmZzZXRzLnBvcHBlclthXT1yKG5bYV0pLXRbaV0pLHRbYV0+cihuW3NdKSYmKGUub2Zmc2V0cy5wb3BwZXJbYV09cihuW3NdKSksZX19LGFycm93OntvcmRlcjo1MDAsZW5hYmxlZDohMCxmbjpmdW5jdGlvbihlLHQpe2lmKFZlKGUuaW5zdGFuY2UubW9kaWZpZXJzLCJhcnJvdyIsImtlZXBUb2dldGhlciIpKXt0PXQuZWxlbWVudDtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKCEodD1lLmluc3RhbmNlLnBvcHBlci5xdWVyeVNlbGVjdG9yKHQpKSlyZXR1cm4gZX1lbHNlIGlmKCFlLmluc3RhbmNlLnBvcHBlci5jb250YWlucyh0KSlyZXR1cm4gY29uc29sZS53YXJuKCJXQVJOSU5HOiBgYXJyb3cuZWxlbWVudGAgbXVzdCBiZSBjaGlsZCBvZiBpdHMgcG9wcGVyIGVsZW1lbnQhIiksZTt2YXIgbj1lLnBsYWNlbWVudC5zcGxpdCgiLSIpWzBdLGk9ZS5vZmZzZXRzLHI9aS5wb3BwZXIsaT1pLnJlZmVyZW5jZSxuPS0xIT09WyJsZWZ0IiwicmlnaHQiXS5pbmRleE9mKG4pLHM9bj8iaGVpZ2h0Ijoid2lkdGgiLGE9bj8iVG9wIjoiTGVmdCIsbz1hLnRvTG93ZXJDYXNlKCksbD1uPyJsZWZ0IjoidG9wIixuPW4/ImJvdHRvbSI6InJpZ2h0IixkPUllKHQpW3NdLG49KGlbbl0tZDxyW29dJiYoZS5vZmZzZXRzLnBvcHBlcltvXS09cltvXS0oaVtuXS1kKSksaVtvXStkPnJbbl0mJihlLm9mZnNldHMucG9wcGVyW29dKz1pW29dK2QtcltuXSksZS5vZmZzZXRzLnBvcHBlcj14KGUub2Zmc2V0cy5wb3BwZXIpLGlbb10raVtzXS8yLWQvMiksaT1tKGUuaW5zdGFuY2UucG9wcGVyKSxjPXBhcnNlRmxvYXQoaVsibWFyZ2luIithXSksaT1wYXJzZUZsb2F0KGlbImJvcmRlciIrYSsiV2lkdGgiXSksYT1uLWUub2Zmc2V0cy5wb3BwZXJbb10tYy1pLGE9TWF0aC5tYXgoTWF0aC5taW4ocltzXS1kLGEpLDApO2UuYXJyb3dFbGVtZW50PXQsZS5vZmZzZXRzLmFycm93PShiKG49e30sbyxNYXRoLnJvdW5kKGEpKSxiKG4sbCwiIiksbil9cmV0dXJuIGV9LGVsZW1lbnQ6Ilt4LWFycm93XSJ9LGZsaXA6e29yZGVyOjYwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGQsYyl7aWYoISh6ZShkLmluc3RhbmNlLm1vZGlmaWVycywiaW5uZXIiKXx8ZC5mbGlwcGVkJiZkLnBsYWNlbWVudD09PWQub3JpZ2luYWxQbGFjZW1lbnQpKXt2YXIgdT1rZShkLmluc3RhbmNlLnBvcHBlcixkLmluc3RhbmNlLnJlZmVyZW5jZSxjLnBhZGRpbmcsYy5ib3VuZGFyaWVzRWxlbWVudCxkLnBvc2l0aW9uRml4ZWQpLHA9ZC5wbGFjZW1lbnQuc3BsaXQoIi0iKVswXSxoPSRlKHApLGY9ZC5wbGFjZW1lbnQuc3BsaXQoIi0iKVsxXXx8IiIsbT1bXTtzd2l0Y2goYy5iZWhhdmlvcil7Y2FzZSBaZTptPVtwLGhdO2JyZWFrO2Nhc2UgSmU6bT1LZShwKTticmVhaztjYXNlIGV0Om09S2UocCwhMCk7YnJlYWs7ZGVmYXVsdDptPWMuYmVoYXZpb3J9bS5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7aWYocCE9PWV8fG0ubGVuZ3RoPT09dCsxKXJldHVybiBkO3A9ZC5wbGFjZW1lbnQuc3BsaXQoIi0iKVswXSxoPSRlKHApO3ZhciBlPWQub2Zmc2V0cy5wb3BwZXIsbj1kLm9mZnNldHMucmVmZXJlbmNlLGk9TWF0aC5mbG9vcixuPSJsZWZ0Ij09PXAmJmkoZS5yaWdodCk+aShuLmxlZnQpfHwicmlnaHQiPT09cCYmaShlLmxlZnQpPGkobi5yaWdodCl8fCJ0b3AiPT09cCYmaShlLmJvdHRvbSk+aShuLnRvcCl8fCJib3R0b20iPT09cCYmaShlLnRvcCk8aShuLmJvdHRvbSkscj1pKGUubGVmdCk8aSh1LmxlZnQpLHM9aShlLnJpZ2h0KT5pKHUucmlnaHQpLGE9aShlLnRvcCk8aSh1LnRvcCksZT1pKGUuYm90dG9tKT5pKHUuYm90dG9tKSxpPSJsZWZ0Ij09PXAmJnJ8fCJyaWdodCI9PT1wJiZzfHwidG9wIj09PXAmJmF8fCJib3R0b20iPT09cCYmZSxvPS0xIT09WyJ0b3AiLCJib3R0b20iXS5pbmRleE9mKHApLGw9ISFjLmZsaXBWYXJpYXRpb25zJiYobyYmInN0YXJ0Ij09PWYmJnJ8fG8mJiJlbmQiPT09ZiYmc3x8IW8mJiJzdGFydCI9PT1mJiZhfHwhbyYmImVuZCI9PT1mJiZlKSxzPSEhYy5mbGlwVmFyaWF0aW9uc0J5Q29udGVudCYmKG8mJiJzdGFydCI9PT1mJiZzfHxvJiYiZW5kIj09PWYmJnJ8fCFvJiYic3RhcnQiPT09ZiYmZXx8IW8mJiJlbmQiPT09ZiYmYSkscj1sfHxzOyhufHxpfHxyKSYmKGQuZmxpcHBlZD0hMCwobnx8aSkmJihwPW1bdCsxXSksciYmKGY9ImVuZCI9PT0oZT1mKT8ic3RhcnQiOiJzdGFydCI9PT1lPyJlbmQiOmUpLGQucGxhY2VtZW50PXArKGY/Ii0iK2Y6IiIpLGQub2Zmc2V0cy5wb3BwZXI9dyh7fSxkLm9mZnNldHMucG9wcGVyLE5lKGQuaW5zdGFuY2UucG9wcGVyLGQub2Zmc2V0cy5yZWZlcmVuY2UsZC5wbGFjZW1lbnQpKSxkPXFlKGQuaW5zdGFuY2UubW9kaWZpZXJzLGQsImZsaXAiKSl9KX1yZXR1cm4gZH0sYmVoYXZpb3I6ImZsaXAiLHBhZGRpbmc6NSxib3VuZGFyaWVzRWxlbWVudDoidmlld3BvcnQiLGZsaXBWYXJpYXRpb25zOiExLGZsaXBWYXJpYXRpb25zQnlDb250ZW50OiExfSxpbm5lcjp7b3JkZXI6NzAwLGVuYWJsZWQ6ITEsZm46ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wbGFjZW1lbnQsbj10LnNwbGl0KCItIilbMF0saT0ocj1lLm9mZnNldHMpLnBvcHBlcixyPXIucmVmZXJlbmNlLHM9LTEhPT1bImxlZnQiLCJyaWdodCJdLmluZGV4T2YobiksYT0tMT09PVsidG9wIiwibGVmdCJdLmluZGV4T2Yobik7cmV0dXJuIGlbcz8ibGVmdCI6InRvcCJdPXJbbl0tKGE/aVtzPyJ3aWR0aCI6ImhlaWdodCJdOjApLGUucGxhY2VtZW50PSRlKHQpLGUub2Zmc2V0cy5wb3BwZXI9eChpKSxlfX0saGlkZTp7b3JkZXI6ODAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSl7aWYoVmUoZS5pbnN0YW5jZS5tb2RpZmllcnMsImhpZGUiLCJwcmV2ZW50T3ZlcmZsb3ciKSl7dmFyIHQ9ZS5vZmZzZXRzLnJlZmVyZW5jZSxuPWplKGUuaW5zdGFuY2UubW9kaWZpZXJzLGZ1bmN0aW9uKGUpe3JldHVybiJwcmV2ZW50T3ZlcmZsb3ciPT09ZS5uYW1lfSkuYm91bmRhcmllcztpZih0LmJvdHRvbTxuLnRvcHx8dC5sZWZ0Pm4ucmlnaHR8fHQudG9wPm4uYm90dG9tfHx0LnJpZ2h0PG4ubGVmdCl7aWYoITA9PT1lLmhpZGUpcmV0dXJuIGU7ZS5oaWRlPSEwLGUuYXR0cmlidXRlc1sieC1vdXQtb2YtYm91bmRhcmllcyJdPSIifWVsc2V7aWYoITE9PT1lLmhpZGUpcmV0dXJuIGU7ZS5oaWRlPSExLGUuYXR0cmlidXRlc1sieC1vdXQtb2YtYm91bmRhcmllcyJdPSExfX1yZXR1cm4gZX19LGNvbXB1dGVTdHlsZTp7b3JkZXI6ODUwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSx0KXt2YXIgbj10LngsaT10Lnkscj1lLm9mZnNldHMucG9wcGVyLHM9KHZvaWQgMCE9PShzPWplKGUuaW5zdGFuY2UubW9kaWZpZXJzLGZ1bmN0aW9uKGUpe3JldHVybiJhcHBseVN0eWxlIj09PWUubmFtZX0pLmdwdUFjY2VsZXJhdGlvbikmJmNvbnNvbGUud2FybigiV0FSTklORzogYGdwdUFjY2VsZXJhdGlvbmAgb3B0aW9uIG1vdmVkIHRvIGBjb21wdXRlU3R5bGVgIG1vZGlmaWVyIGFuZCB3aWxsIG5vdCBiZSBzdXBwb3J0ZWQgaW4gZnV0dXJlIHZlcnNpb25zIG9mIFBvcHBlci5qcyEiKSx2b2lkIDAhPT1zP3M6dC5ncHVBY2NlbGVyYXRpb24pLGE9TWUodD12KGUuaW5zdGFuY2UucG9wcGVyKSkscj17cG9zaXRpb246ci5wb3NpdGlvbn0sbz1ZZShlLHdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvPDJ8fCFYZSksbj0iYm90dG9tIj09PW4/InRvcCI6ImJvdHRvbSIsaT0icmlnaHQiPT09aT8ibGVmdCI6InJpZ2h0IixsPUhlKCJ0cmFuc2Zvcm0iKSxkPXZvaWQgMCxjPXZvaWQgMCxjPSJib3R0b20iPT1uPyJIVE1MIj09PXQubm9kZU5hbWU/LXQuY2xpZW50SGVpZ2h0K28uYm90dG9tOi1hLmhlaWdodCtvLmJvdHRvbTpvLnRvcCxkPSJyaWdodCI9PWk/IkhUTUwiPT09dC5ub2RlTmFtZT8tdC5jbGllbnRXaWR0aCtvLnJpZ2h0Oi1hLndpZHRoK28ucmlnaHQ6by5sZWZ0LGE9KHMmJmw/KHJbbF09InRyYW5zbGF0ZTNkKCIrZCsicHgsICIrYysicHgsIDApIixyW25dPTAscltpXT0wLHIud2lsbENoYW5nZT0idHJhbnNmb3JtIik6KHQ9InJpZ2h0Ij09aT8tMToxLHJbbl09YyooImJvdHRvbSI9PW4/LTE6MSkscltpXT1kKnQsci53aWxsQ2hhbmdlPW4rIiwgIitpKSx7IngtcGxhY2VtZW50IjplLnBsYWNlbWVudH0pO3JldHVybiBlLmF0dHJpYnV0ZXM9dyh7fSxhLGUuYXR0cmlidXRlcyksZS5zdHlsZXM9dyh7fSxyLGUuc3R5bGVzKSxlLmFycm93U3R5bGVzPXcoe30sZS5vZmZzZXRzLmFycm93LGUuYXJyb3dTdHlsZXMpLGV9LGdwdUFjY2VsZXJhdGlvbjohMCx4OiJib3R0b20iLHk6InJpZ2h0In0sYXBwbHlTdHlsZTp7b3JkZXI6OTAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSl7dmFyIHQsbjtyZXR1cm4gR2UoZS5pbnN0YW5jZS5wb3BwZXIsZS5zdHlsZXMpLHQ9ZS5pbnN0YW5jZS5wb3BwZXIsbj1lLmF0dHJpYnV0ZXMsT2JqZWN0LmtleXMobikuZm9yRWFjaChmdW5jdGlvbihlKXshMSE9PW5bZV0/dC5zZXRBdHRyaWJ1dGUoZSxuW2VdKTp0LnJlbW92ZUF0dHJpYnV0ZShlKX0pLGUuYXJyb3dFbGVtZW50JiZPYmplY3Qua2V5cyhlLmFycm93U3R5bGVzKS5sZW5ndGgmJkdlKGUuYXJyb3dFbGVtZW50LGUuYXJyb3dTdHlsZXMpLGV9LG9uTG9hZDpmdW5jdGlvbihlLHQsbixpLHIpe3JldHVybiByPVBlKHIsdCxlLG4ucG9zaXRpb25GaXhlZCkscj1PZShuLnBsYWNlbWVudCxyLHQsZSxuLm1vZGlmaWVycy5mbGlwLmJvdW5kYXJpZXNFbGVtZW50LG4ubW9kaWZpZXJzLmZsaXAucGFkZGluZyksdC5zZXRBdHRyaWJ1dGUoIngtcGxhY2VtZW50IixyKSxHZSh0LHtwb3NpdGlvbjpuLnBvc2l0aW9uRml4ZWQ/ImZpeGVkIjoiYWJzb2x1dGUifSksbn0sZ3B1QWNjZWxlcmF0aW9uOnZvaWQgMH19fSx0PSh0KEUsW3trZXk6InVwZGF0ZSIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZTt0aGlzLnN0YXRlLmlzRGVzdHJveWVkfHwoKGU9e2luc3RhbmNlOnRoaXMsc3R5bGVzOnt9LGFycm93U3R5bGVzOnt9LGF0dHJpYnV0ZXM6e30sZmxpcHBlZDohMSxvZmZzZXRzOnt9fSkub2Zmc2V0cy5yZWZlcmVuY2U9UGUodGhpcy5zdGF0ZSx0aGlzLnBvcHBlcix0aGlzLnJlZmVyZW5jZSx0aGlzLm9wdGlvbnMucG9zaXRpb25GaXhlZCksZS5wbGFjZW1lbnQ9T2UodGhpcy5vcHRpb25zLnBsYWNlbWVudCxlLm9mZnNldHMucmVmZXJlbmNlLHRoaXMucG9wcGVyLHRoaXMucmVmZXJlbmNlLHRoaXMub3B0aW9ucy5tb2RpZmllcnMuZmxpcC5ib3VuZGFyaWVzRWxlbWVudCx0aGlzLm9wdGlvbnMubW9kaWZpZXJzLmZsaXAucGFkZGluZyksZS5vcmlnaW5hbFBsYWNlbWVudD1lLnBsYWNlbWVudCxlLnBvc2l0aW9uRml4ZWQ9dGhpcy5vcHRpb25zLnBvc2l0aW9uRml4ZWQsZS5vZmZzZXRzLnBvcHBlcj1OZSh0aGlzLnBvcHBlcixlLm9mZnNldHMucmVmZXJlbmNlLGUucGxhY2VtZW50KSxlLm9mZnNldHMucG9wcGVyLnBvc2l0aW9uPXRoaXMub3B0aW9ucy5wb3NpdGlvbkZpeGVkPyJmaXhlZCI6ImFic29sdXRlIixlPXFlKHRoaXMubW9kaWZpZXJzLGUpLHRoaXMuc3RhdGUuaXNDcmVhdGVkP3RoaXMub3B0aW9ucy5vblVwZGF0ZShlKToodGhpcy5zdGF0ZS5pc0NyZWF0ZWQ9ITAsdGhpcy5vcHRpb25zLm9uQ3JlYXRlKGUpKSl9LmNhbGwodGhpcyl9fSx7a2V5OiJkZXN0cm95Iix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiB0aGlzLnN0YXRlLmlzRGVzdHJveWVkPSEwLHplKHRoaXMubW9kaWZpZXJzLCJhcHBseVN0eWxlIikmJih0aGlzLnBvcHBlci5yZW1vdmVBdHRyaWJ1dGUoIngtcGxhY2VtZW50IiksdGhpcy5wb3BwZXIuc3R5bGUucG9zaXRpb249IiIsdGhpcy5wb3BwZXIuc3R5bGUudG9wPSIiLHRoaXMucG9wcGVyLnN0eWxlLmxlZnQ9IiIsdGhpcy5wb3BwZXIuc3R5bGUucmlnaHQ9IiIsdGhpcy5wb3BwZXIuc3R5bGUuYm90dG9tPSIiLHRoaXMucG9wcGVyLnN0eWxlLndpbGxDaGFuZ2U9IiIsdGhpcy5wb3BwZXIuc3R5bGVbSGUoInRyYW5zZm9ybSIpXT0iIiksdGhpcy5kaXNhYmxlRXZlbnRMaXN0ZW5lcnMoKSx0aGlzLm9wdGlvbnMucmVtb3ZlT25EZXN0cm95JiZ0aGlzLnBvcHBlci5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMucG9wcGVyKSx0aGlzfS5jYWxsKHRoaXMpfX0se2tleToiZW5hYmxlRXZlbnRMaXN0ZW5lcnMiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKCl7dGhpcy5zdGF0ZS5ldmVudHNFbmFibGVkfHwodGhpcy5zdGF0ZT1GZSh0aGlzLnJlZmVyZW5jZSx0aGlzLm9wdGlvbnMsdGhpcy5zdGF0ZSx0aGlzLnNjaGVkdWxlVXBkYXRlKSl9LmNhbGwodGhpcyl9fSx7a2V5OiJkaXNhYmxlRXZlbnRMaXN0ZW5lcnMiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIEJlLmNhbGwodGhpcyl9fV0pLEUpO2Z1bmN0aW9uIEUoZSx0KXt2YXIgbj10aGlzLGk9Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOnt9LHI9dGhpcyxzPUU7aWYoIShyIGluc3RhbmNlb2YgcykpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIik7dGhpcy5zY2hlZHVsZVVwZGF0ZT1mdW5jdGlvbigpe3JldHVybiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUobi51cGRhdGUpfSx0aGlzLnVwZGF0ZT1tZSh0aGlzLnVwZGF0ZS5iaW5kKHRoaXMpKSx0aGlzLm9wdGlvbnM9dyh7fSxFLkRlZmF1bHRzLGkpLHRoaXMuc3RhdGU9e2lzRGVzdHJveWVkOiExLGlzQ3JlYXRlZDohMSxzY3JvbGxQYXJlbnRzOltdfSx0aGlzLnJlZmVyZW5jZT1lJiZlLmpxdWVyeT9lWzBdOmUsdGhpcy5wb3BwZXI9dCYmdC5qcXVlcnk/dFswXTp0LHRoaXMub3B0aW9ucy5tb2RpZmllcnM9e30sT2JqZWN0LmtleXModyh7fSxFLkRlZmF1bHRzLm1vZGlmaWVycyxpLm1vZGlmaWVycykpLmZvckVhY2goZnVuY3Rpb24oZSl7bi5vcHRpb25zLm1vZGlmaWVyc1tlXT13KHt9LEUuRGVmYXVsdHMubW9kaWZpZXJzW2VdfHx7fSxpLm1vZGlmaWVycz9pLm1vZGlmaWVyc1tlXTp7fSl9KSx0aGlzLm1vZGlmaWVycz1PYmplY3Qua2V5cyh0aGlzLm9wdGlvbnMubW9kaWZpZXJzKS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIHcoe25hbWU6ZX0sbi5vcHRpb25zLm1vZGlmaWVyc1tlXSl9KS5zb3J0KGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUub3JkZXItdC5vcmRlcn0pLHRoaXMubW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24oZSl7ZS5lbmFibGVkJiZnZShlLm9uTG9hZCkmJmUub25Mb2FkKG4ucmVmZXJlbmNlLG4ucG9wcGVyLG4ub3B0aW9ucyxlLG4uc3RhdGUpfSksdGhpcy51cGRhdGUoKTtyPXRoaXMub3B0aW9ucy5ldmVudHNFbmFibGVkO3ImJnRoaXMuZW5hYmxlRXZlbnRMaXN0ZW5lcnMoKSx0aGlzLnN0YXRlLmV2ZW50c0VuYWJsZWQ9cn10LlV0aWxzPSgidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6Z2xvYmFsKS5Qb3BwZXJVdGlscyx0LnBsYWNlbWVudHM9VWUsdC5EZWZhdWx0cz1udDt2YXIgaXQ9dCxzPSJkcm9wZG93biIscnQ9ImJzLmRyb3Bkb3duIixzdD0iLiIrcnQsVWU9Ii5kYXRhLWFwaSIsYXQ9Yy5kZWZhdWx0LmZuW3NdLG90PW5ldyBSZWdFeHAoIjM4fDQwfDI3IiksbHQ9ImRpc2FibGVkIixfPSJzaG93IixkdD0iZHJvcGRvd24tbWVudS1yaWdodCIsY3Q9ImhpZGUiK3N0LHV0PSJoaWRkZW4iK3N0LG50PSJjbGljayIrc3QrVWUsdD0ia2V5ZG93biIrc3QrVWUscHQ9J1tkYXRhLXRvZ2dsZT0iZHJvcGRvd24iXScsaHQ9Ii5kcm9wZG93bi1tZW51IixmdD17b2Zmc2V0OjAsZmxpcDohMCxib3VuZGFyeToic2Nyb2xsUGFyZW50IixyZWZlcmVuY2U6InRvZ2dsZSIsZGlzcGxheToiZHluYW1pYyIscG9wcGVyQ29uZmlnOm51bGx9LG10PXtvZmZzZXQ6IihudW1iZXJ8c3RyaW5nfGZ1bmN0aW9uKSIsZmxpcDoiYm9vbGVhbiIsYm91bmRhcnk6IihzdHJpbmd8ZWxlbWVudCkiLHJlZmVyZW5jZToiKHN0cmluZ3xlbGVtZW50KSIsZGlzcGxheToic3RyaW5nIixwb3BwZXJDb25maWc6IihudWxsfG9iamVjdCkifSxUPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZChlLHQpe3RoaXMuX2VsZW1lbnQ9ZSx0aGlzLl9wb3BwZXI9bnVsbCx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKHQpLHRoaXMuX21lbnU9dGhpcy5fZ2V0TWVudUVsZW1lbnQoKSx0aGlzLl9pbk5hdmJhcj10aGlzLl9kZXRlY3ROYXZiYXIoKSx0aGlzLl9hZGRFdmVudExpc3RlbmVycygpfXZhciBlPWQucHJvdG90eXBlO3JldHVybiBlLnRvZ2dsZT1mdW5jdGlvbigpe3ZhciBlO3RoaXMuX2VsZW1lbnQuZGlzYWJsZWR8fGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhsdCl8fChlPWMuZGVmYXVsdCh0aGlzLl9tZW51KS5oYXNDbGFzcyhfKSxkLl9jbGVhck1lbnVzKCksZSl8fHRoaXMuc2hvdyghMCl9LGUuc2hvdz1mdW5jdGlvbihlKXtpZih2b2lkIDA9PT1lJiYoZT0hMSksISh0aGlzLl9lbGVtZW50LmRpc2FibGVkfHxjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MobHQpfHxjLmRlZmF1bHQodGhpcy5fbWVudSkuaGFzQ2xhc3MoXykpKXt2YXIgdD17cmVsYXRlZFRhcmdldDp0aGlzLl9lbGVtZW50fSxuPWMuZGVmYXVsdC5FdmVudCgic2hvdy5icy5kcm9wZG93biIsdCksaT1kLl9nZXRQYXJlbnRGcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KTtpZihjLmRlZmF1bHQoaSkudHJpZ2dlcihuKSwhbi5pc0RlZmF1bHRQcmV2ZW50ZWQoKSl7aWYoIXRoaXMuX2luTmF2YmFyJiZlKXtpZih2b2lkIDA9PT1pdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJCb290c3RyYXAncyBkcm9wZG93bnMgcmVxdWlyZSBQb3BwZXIgKGh0dHBzOi8vcG9wcGVyLmpzLm9yZykiKTtuPXRoaXMuX2VsZW1lbnQ7InBhcmVudCI9PT10aGlzLl9jb25maWcucmVmZXJlbmNlP249aTp1LmlzRWxlbWVudCh0aGlzLl9jb25maWcucmVmZXJlbmNlKSYmKG49dGhpcy5fY29uZmlnLnJlZmVyZW5jZSx2b2lkIDAhPT10aGlzLl9jb25maWcucmVmZXJlbmNlLmpxdWVyeSkmJihuPXRoaXMuX2NvbmZpZy5yZWZlcmVuY2VbMF0pLCJzY3JvbGxQYXJlbnQiIT09dGhpcy5fY29uZmlnLmJvdW5kYXJ5JiZjLmRlZmF1bHQoaSkuYWRkQ2xhc3MoInBvc2l0aW9uLXN0YXRpYyIpLHRoaXMuX3BvcHBlcj1uZXcgaXQobix0aGlzLl9tZW51LHRoaXMuX2dldFBvcHBlckNvbmZpZygpKX0ib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmMD09PWMuZGVmYXVsdChpKS5jbG9zZXN0KCIubmF2YmFyLW5hdiIpLmxlbmd0aCYmYy5kZWZhdWx0KGRvY3VtZW50LmJvZHkpLmNoaWxkcmVuKCkub24oIm1vdXNlb3ZlciIsbnVsbCxjLmRlZmF1bHQubm9vcCksdGhpcy5fZWxlbWVudC5mb2N1cygpLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwhMCksYy5kZWZhdWx0KHRoaXMuX21lbnUpLnRvZ2dsZUNsYXNzKF8pLGMuZGVmYXVsdChpKS50b2dnbGVDbGFzcyhfKS50cmlnZ2VyKGMuZGVmYXVsdC5FdmVudCgic2hvd24uYnMuZHJvcGRvd24iLHQpKX19fSxlLmhpZGU9ZnVuY3Rpb24oKXt2YXIgZSx0LG47dGhpcy5fZWxlbWVudC5kaXNhYmxlZHx8Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGx0KXx8IWMuZGVmYXVsdCh0aGlzLl9tZW51KS5oYXNDbGFzcyhfKXx8KGU9e3JlbGF0ZWRUYXJnZXQ6dGhpcy5fZWxlbWVudH0sdD1jLmRlZmF1bHQuRXZlbnQoY3QsZSksbj1kLl9nZXRQYXJlbnRGcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KSxjLmRlZmF1bHQobikudHJpZ2dlcih0KSx0LmlzRGVmYXVsdFByZXZlbnRlZCgpKXx8KHRoaXMuX3BvcHBlciYmdGhpcy5fcG9wcGVyLmRlc3Ryb3koKSxjLmRlZmF1bHQodGhpcy5fbWVudSkudG9nZ2xlQ2xhc3MoXyksYy5kZWZhdWx0KG4pLnRvZ2dsZUNsYXNzKF8pLnRyaWdnZXIoYy5kZWZhdWx0LkV2ZW50KHV0LGUpKSl9LGUuZGlzcG9zZT1mdW5jdGlvbigpe2MuZGVmYXVsdC5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQscnQpLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5vZmYoc3QpLHRoaXMuX2VsZW1lbnQ9bnVsbCwodGhpcy5fbWVudT1udWxsKSE9PXRoaXMuX3BvcHBlciYmKHRoaXMuX3BvcHBlci5kZXN0cm95KCksdGhpcy5fcG9wcGVyPW51bGwpfSxlLnVwZGF0ZT1mdW5jdGlvbigpe3RoaXMuX2luTmF2YmFyPXRoaXMuX2RldGVjdE5hdmJhcigpLG51bGwhPT10aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci5zY2hlZHVsZVVwZGF0ZSgpfSxlLl9hZGRFdmVudExpc3RlbmVycz1mdW5jdGlvbigpe3ZhciB0PXRoaXM7Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uKCJjbGljay5icy5kcm9wZG93biIsZnVuY3Rpb24oZSl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksdC50b2dnbGUoKX0pfSxlLl9nZXRDb25maWc9ZnVuY3Rpb24oZSl7cmV0dXJuIGU9byh7fSx0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHQsYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmRhdGEoKSxlKSx1LnR5cGVDaGVja0NvbmZpZyhzLGUsdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSksZX0sZS5fZ2V0TWVudUVsZW1lbnQ9ZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gdGhpcy5fbWVudXx8KGU9ZC5fZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCkpJiYodGhpcy5fbWVudT1lLnF1ZXJ5U2VsZWN0b3IoaHQpKSx0aGlzLl9tZW51fSxlLl9nZXRQbGFjZW1lbnQ9ZnVuY3Rpb24oKXt2YXIgZT1jLmRlZmF1bHQodGhpcy5fZWxlbWVudC5wYXJlbnROb2RlKSx0PSJib3R0b20tc3RhcnQiO3JldHVybiBlLmhhc0NsYXNzKCJkcm9wdXAiKT90PWMuZGVmYXVsdCh0aGlzLl9tZW51KS5oYXNDbGFzcyhkdCk/InRvcC1lbmQiOiJ0b3Atc3RhcnQiOmUuaGFzQ2xhc3MoImRyb3ByaWdodCIpP3Q9InJpZ2h0LXN0YXJ0IjplLmhhc0NsYXNzKCJkcm9wbGVmdCIpP3Q9ImxlZnQtc3RhcnQiOmMuZGVmYXVsdCh0aGlzLl9tZW51KS5oYXNDbGFzcyhkdCkmJih0PSJib3R0b20tZW5kIiksdH0sZS5fZGV0ZWN0TmF2YmFyPWZ1bmN0aW9uKCl7cmV0dXJuIDA8Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmNsb3Nlc3QoIi5uYXZiYXIiKS5sZW5ndGh9LGUuX2dldE9mZnNldD1mdW5jdGlvbigpe3ZhciB0PXRoaXMsZT17fTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fY29uZmlnLm9mZnNldD9lLmZuPWZ1bmN0aW9uKGUpe3JldHVybiBlLm9mZnNldHM9byh7fSxlLm9mZnNldHMsdC5fY29uZmlnLm9mZnNldChlLm9mZnNldHMsdC5fZWxlbWVudCkpLGV9OmUub2Zmc2V0PXRoaXMuX2NvbmZpZy5vZmZzZXQsZX0sZS5fZ2V0UG9wcGVyQ29uZmlnPWZ1bmN0aW9uKCl7dmFyIGU9e3BsYWNlbWVudDp0aGlzLl9nZXRQbGFjZW1lbnQoKSxtb2RpZmllcnM6e29mZnNldDp0aGlzLl9nZXRPZmZzZXQoKSxmbGlwOntlbmFibGVkOnRoaXMuX2NvbmZpZy5mbGlwfSxwcmV2ZW50T3ZlcmZsb3c6e2JvdW5kYXJpZXNFbGVtZW50OnRoaXMuX2NvbmZpZy5ib3VuZGFyeX19fTtyZXR1cm4ic3RhdGljIj09PXRoaXMuX2NvbmZpZy5kaXNwbGF5JiYoZS5tb2RpZmllcnMuYXBwbHlTdHlsZT17ZW5hYmxlZDohMX0pLG8oe30sZSx0aGlzLl9jb25maWcucG9wcGVyQ29uZmlnKX0sZC5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1jLmRlZmF1bHQodGhpcykuZGF0YShydCk7aWYoZXx8KGU9bmV3IGQodGhpcywib2JqZWN0Ij09dHlwZW9mIHQ/dDpudWxsKSxjLmRlZmF1bHQodGhpcykuZGF0YShydCxlKSksInN0cmluZyI9PXR5cGVvZiB0KXtpZih2b2lkIDA9PT1lW3RdKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJyt0KyciJyk7ZVt0XSgpfX0pfSxkLl9jbGVhck1lbnVzPWZ1bmN0aW9uKGUpe2lmKCFlfHwzIT09ZS53aGljaCYmKCJrZXl1cCIhPT1lLnR5cGV8fDk9PT1lLndoaWNoKSlmb3IodmFyIHQ9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHB0KSksbj0wLGk9dC5sZW5ndGg7bjxpO24rKyl7dmFyIHIscyxhPWQuX2dldFBhcmVudEZyb21FbGVtZW50KHRbbl0pLG89Yy5kZWZhdWx0KHRbbl0pLmRhdGEocnQpLGw9e3JlbGF0ZWRUYXJnZXQ6dFtuXX07ZSYmImNsaWNrIj09PWUudHlwZSYmKGwuY2xpY2tFdmVudD1lKSxvJiYocj1vLl9tZW51LCFjLmRlZmF1bHQoYSkuaGFzQ2xhc3MoXyl8fGUmJigiY2xpY2siPT09ZS50eXBlJiYvaW5wdXR8dGV4dGFyZWEvaS50ZXN0KGUudGFyZ2V0LnRhZ05hbWUpfHwia2V5dXAiPT09ZS50eXBlJiY5PT09ZS53aGljaCkmJmMuZGVmYXVsdC5jb250YWlucyhhLGUudGFyZ2V0KXx8KHM9Yy5kZWZhdWx0LkV2ZW50KGN0LGwpLGMuZGVmYXVsdChhKS50cmlnZ2VyKHMpLHMuaXNEZWZhdWx0UHJldmVudGVkKCkpfHwoIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmMuZGVmYXVsdChkb2N1bWVudC5ib2R5KS5jaGlsZHJlbigpLm9mZigibW91c2VvdmVyIixudWxsLGMuZGVmYXVsdC5ub29wKSx0W25dLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsImZhbHNlIiksby5fcG9wcGVyJiZvLl9wb3BwZXIuZGVzdHJveSgpLGMuZGVmYXVsdChyKS5yZW1vdmVDbGFzcyhfKSxjLmRlZmF1bHQoYSkucmVtb3ZlQ2xhc3MoXykudHJpZ2dlcihjLmRlZmF1bHQuRXZlbnQodXQsbCkpKSl9fSxkLl9nZXRQYXJlbnRGcm9tRWxlbWVudD1mdW5jdGlvbihlKXt2YXIgdCxuPXUuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudChlKTtyZXR1cm4odD1uP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iobik6dCl8fGUucGFyZW50Tm9kZX0sZC5fZGF0YUFwaUtleWRvd25IYW5kbGVyPWZ1bmN0aW9uKGUpe3ZhciB0LG4saTsoL2lucHV0fHRleHRhcmVhL2kudGVzdChlLnRhcmdldC50YWdOYW1lKT8zMj09PWUud2hpY2h8fDI3IT09ZS53aGljaCYmKDQwIT09ZS53aGljaCYmMzghPT1lLndoaWNofHxjLmRlZmF1bHQoZS50YXJnZXQpLmNsb3Nlc3QoaHQpLmxlbmd0aCk6IW90LnRlc3QoZS53aGljaCkpfHx0aGlzLmRpc2FibGVkfHxjLmRlZmF1bHQodGhpcykuaGFzQ2xhc3MobHQpfHwodD1kLl9nZXRQYXJlbnRGcm9tRWxlbWVudCh0aGlzKSwhKG49Yy5kZWZhdWx0KHQpLmhhc0NsYXNzKF8pKSYmMjc9PT1lLndoaWNoKXx8KGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLG4mJjI3IT09ZS53aGljaCYmMzIhPT1lLndoaWNoPzAhPT0obj1bXS5zbGljZS5jYWxsKHQucXVlcnlTZWxlY3RvckFsbCgiLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCkiKSkuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBjLmRlZmF1bHQoZSkuaXMoIjp2aXNpYmxlIil9KSkubGVuZ3RoJiYoaT1uLmluZGV4T2YoZS50YXJnZXQpLDM4PT09ZS53aGljaCYmMDxpJiZpLS0sNDA9PT1lLndoaWNoJiZpPG4ubGVuZ3RoLTEmJmkrKyxuW2k9aTwwPzA6aV0uZm9jdXMoKSk6KDI3PT09ZS53aGljaCYmYy5kZWZhdWx0KHQucXVlcnlTZWxlY3RvcihwdCkpLnRyaWdnZXIoImZvY3VzIiksYy5kZWZhdWx0KHRoaXMpLnRyaWdnZXIoImNsaWNrIikpKX0sYShkLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjYuMiJ9fSx7a2V5OiJEZWZhdWx0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gZnR9fSx7a2V5OiJEZWZhdWx0VHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG10fX1dKSxkfSgpLFM9KGMuZGVmYXVsdChkb2N1bWVudCkub24odCxwdCxULl9kYXRhQXBpS2V5ZG93bkhhbmRsZXIpLm9uKHQsaHQsVC5fZGF0YUFwaUtleWRvd25IYW5kbGVyKS5vbihudCsiIGtleXVwLmJzLmRyb3Bkb3duLmRhdGEtYXBpIixULl9jbGVhck1lbnVzKS5vbihudCxwdCxmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSxULl9qUXVlcnlJbnRlcmZhY2UuY2FsbChjLmRlZmF1bHQodGhpcyksInRvZ2dsZSIpfSkub24obnQsIi5kcm9wZG93biBmb3JtIixmdW5jdGlvbihlKXtlLnN0b3BQcm9wYWdhdGlvbigpfSksYy5kZWZhdWx0LmZuW3NdPVQuX2pRdWVyeUludGVyZmFjZSxjLmRlZmF1bHQuZm5bc10uQ29uc3RydWN0b3I9VCxjLmRlZmF1bHQuZm5bc10ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBjLmRlZmF1bHQuZm5bc109YXQsVC5falF1ZXJ5SW50ZXJmYWNlfSwibW9kYWwiKSxndD0iYnMubW9kYWwiLEM9Ii4iK2d0LHZ0PWMuZGVmYXVsdC5mbltTXSx5dD0ibW9kYWwtb3BlbiIsQT0iZmFkZSIsYnQ9InNob3ciLHd0PSJtb2RhbC1zdGF0aWMiLHh0PSJoaWRkZW4iK0MsRXQ9InNob3ciK0MsX3Q9ImZvY3VzaW4iK0MsVHQ9InJlc2l6ZSIrQyxTdD0iY2xpY2suZGlzbWlzcyIrQyxDdD0ia2V5ZG93bi5kaXNtaXNzIitDLEF0PSJtb3VzZWRvd24uZGlzbWlzcyIrQyxNdD0iLmZpeGVkLXRvcCwgLmZpeGVkLWJvdHRvbSwgLmlzLWZpeGVkLCAuc3RpY2t5LXRvcCIsRHQ9Ii5zdGlja3ktdG9wIixMdD17YmFja2Ryb3A6ITAsa2V5Ym9hcmQ6ITAsZm9jdXM6ITAsc2hvdzohMH0sa3Q9e2JhY2tkcm9wOiIoYm9vbGVhbnxzdHJpbmcpIixrZXlib2FyZDoiYm9vbGVhbiIsZm9jdXM6ImJvb2xlYW4iLHNob3c6ImJvb2xlYW4ifSxPdD1mdW5jdGlvbigpe2Z1bmN0aW9uIHIoZSx0KXt0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKHQpLHRoaXMuX2VsZW1lbnQ9ZSx0aGlzLl9kaWFsb2c9ZS5xdWVyeVNlbGVjdG9yKCIubW9kYWwtZGlhbG9nIiksdGhpcy5fYmFja2Ryb3A9bnVsbCx0aGlzLl9pc1Nob3duPSExLHRoaXMuX2lzQm9keU92ZXJmbG93aW5nPSExLHRoaXMuX2lnbm9yZUJhY2tkcm9wQ2xpY2s9ITEsdGhpcy5faXNUcmFuc2l0aW9uaW5nPSExLHRoaXMuX3Njcm9sbGJhcldpZHRoPTB9dmFyIGU9ci5wcm90b3R5cGU7cmV0dXJuIGUudG9nZ2xlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLl9pc1Nob3duP3RoaXMuaGlkZSgpOnRoaXMuc2hvdyhlKX0sZS5zaG93PWZ1bmN0aW9uKGUpe3ZhciB0LG49dGhpczt0aGlzLl9pc1Nob3dufHx0aGlzLl9pc1RyYW5zaXRpb25pbmd8fCh0PWMuZGVmYXVsdC5FdmVudChFdCx7cmVsYXRlZFRhcmdldDplfSksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIodCksdC5pc0RlZmF1bHRQcmV2ZW50ZWQoKSl8fCh0aGlzLl9pc1Nob3duPSEwLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhBKSYmKHRoaXMuX2lzVHJhbnNpdGlvbmluZz0hMCksdGhpcy5fY2hlY2tTY3JvbGxiYXIoKSx0aGlzLl9zZXRTY3JvbGxiYXIoKSx0aGlzLl9hZGp1c3REaWFsb2coKSx0aGlzLl9zZXRFc2NhcGVFdmVudCgpLHRoaXMuX3NldFJlc2l6ZUV2ZW50KCksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uKFN0LCdbZGF0YS1kaXNtaXNzPSJtb2RhbCJdJyxmdW5jdGlvbihlKXtyZXR1cm4gbi5oaWRlKGUpfSksYy5kZWZhdWx0KHRoaXMuX2RpYWxvZykub24oQXQsZnVuY3Rpb24oKXtjLmRlZmF1bHQobi5fZWxlbWVudCkub25lKCJtb3VzZXVwLmRpc21pc3MuYnMubW9kYWwiLGZ1bmN0aW9uKGUpe2MuZGVmYXVsdChlLnRhcmdldCkuaXMobi5fZWxlbWVudCkmJihuLl9pZ25vcmVCYWNrZHJvcENsaWNrPSEwKX0pfSksdGhpcy5fc2hvd0JhY2tkcm9wKGZ1bmN0aW9uKCl7cmV0dXJuIG4uX3Nob3dFbGVtZW50KGUpfSkpfSxlLmhpZGU9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztlJiZlLnByZXZlbnREZWZhdWx0KCksdGhpcy5faXNTaG93biYmIXRoaXMuX2lzVHJhbnNpdGlvbmluZyYmKGU9Yy5kZWZhdWx0LkV2ZW50KCJoaWRlLmJzLm1vZGFsIiksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIoZSksdGhpcy5faXNTaG93bikmJiFlLmlzRGVmYXVsdFByZXZlbnRlZCgpJiYodGhpcy5faXNTaG93bj0hMSwoZT1jLmRlZmF1bHQodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoQSkpJiYodGhpcy5faXNUcmFuc2l0aW9uaW5nPSEwKSx0aGlzLl9zZXRFc2NhcGVFdmVudCgpLHRoaXMuX3NldFJlc2l6ZUV2ZW50KCksYy5kZWZhdWx0KGRvY3VtZW50KS5vZmYoX3QpLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5yZW1vdmVDbGFzcyhidCksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9mZihTdCksYy5kZWZhdWx0KHRoaXMuX2RpYWxvZykub2ZmKEF0KSxlPyhlPXUuZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uZSh1LlRSQU5TSVRJT05fRU5ELGZ1bmN0aW9uKGUpe3JldHVybiB0Ll9oaWRlTW9kYWwoZSl9KS5lbXVsYXRlVHJhbnNpdGlvbkVuZChlKSk6dGhpcy5faGlkZU1vZGFsKCkpfSxlLmRpc3Bvc2U9ZnVuY3Rpb24oKXtbd2luZG93LHRoaXMuX2VsZW1lbnQsdGhpcy5fZGlhbG9nXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3JldHVybiBjLmRlZmF1bHQoZSkub2ZmKEMpfSksYy5kZWZhdWx0KGRvY3VtZW50KS5vZmYoX3QpLGMuZGVmYXVsdC5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsZ3QpLHRoaXMuX2NvbmZpZz1udWxsLHRoaXMuX2VsZW1lbnQ9bnVsbCx0aGlzLl9kaWFsb2c9bnVsbCx0aGlzLl9iYWNrZHJvcD1udWxsLHRoaXMuX2lzU2hvd249bnVsbCx0aGlzLl9pc0JvZHlPdmVyZmxvd2luZz1udWxsLHRoaXMuX2lnbm9yZUJhY2tkcm9wQ2xpY2s9bnVsbCx0aGlzLl9pc1RyYW5zaXRpb25pbmc9bnVsbCx0aGlzLl9zY3JvbGxiYXJXaWR0aD1udWxsfSxlLmhhbmRsZVVwZGF0ZT1mdW5jdGlvbigpe3RoaXMuX2FkanVzdERpYWxvZygpfSxlLl9nZXRDb25maWc9ZnVuY3Rpb24oZSl7cmV0dXJuIGU9byh7fSxMdCxlKSx1LnR5cGVDaGVja0NvbmZpZyhTLGUsa3QpLGV9LGUuX3RyaWdnZXJCYWNrZHJvcFRyYW5zaXRpb249ZnVuY3Rpb24oKXt2YXIgZSx0LG49dGhpcyxpPWMuZGVmYXVsdC5FdmVudCgiaGlkZVByZXZlbnRlZC5icy5tb2RhbCIpO2MuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKGkpLGkuaXNEZWZhdWx0UHJldmVudGVkKCl8fCgoZT10aGlzLl9lbGVtZW50LnNjcm9sbEhlaWdodD5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0KXx8KHRoaXMuX2VsZW1lbnQuc3R5bGUub3ZlcmZsb3dZPSJoaWRkZW4iKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQod3QpLHQ9dS5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLl9kaWFsb2cpLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5vZmYodS5UUkFOU0lUSU9OX0VORCksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uZSh1LlRSQU5TSVRJT05fRU5ELGZ1bmN0aW9uKCl7bi5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHd0KSxlfHxjLmRlZmF1bHQobi5fZWxlbWVudCkub25lKHUuVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24oKXtuLl9lbGVtZW50LnN0eWxlLm92ZXJmbG93WT0iIn0pLmVtdWxhdGVUcmFuc2l0aW9uRW5kKG4uX2VsZW1lbnQsdCl9KS5lbXVsYXRlVHJhbnNpdGlvbkVuZCh0KSx0aGlzLl9lbGVtZW50LmZvY3VzKCkpfSxlLl9zaG93RWxlbWVudD1mdW5jdGlvbihlKXtmdW5jdGlvbiB0KCl7bi5fY29uZmlnLmZvY3VzJiZuLl9lbGVtZW50LmZvY3VzKCksbi5faXNUcmFuc2l0aW9uaW5nPSExLGMuZGVmYXVsdChuLl9lbGVtZW50KS50cmlnZ2VyKHMpfXZhciBuPXRoaXMsaT1jLmRlZmF1bHQodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoQSkscj10aGlzLl9kaWFsb2c/dGhpcy5fZGlhbG9nLnF1ZXJ5U2VsZWN0b3IoIi5tb2RhbC1ib2R5Iik6bnVsbCxzPSh0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUmJnRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZS5ub2RlVHlwZT09PU5vZGUuRUxFTUVOVF9OT0RFfHxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRoaXMuX2VsZW1lbnQpLHRoaXMuX2VsZW1lbnQuc3R5bGUuZGlzcGxheT0iYmxvY2siLHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWhpZGRlbiIpLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLW1vZGFsIiwhMCksdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoInJvbGUiLCJkaWFsb2ciKSxjLmRlZmF1bHQodGhpcy5fZGlhbG9nKS5oYXNDbGFzcygibW9kYWwtZGlhbG9nLXNjcm9sbGFibGUiKSYmcj9yLnNjcm9sbFRvcD0wOnRoaXMuX2VsZW1lbnQuc2Nyb2xsVG9wPTAsaSYmdS5yZWZsb3codGhpcy5fZWxlbWVudCksYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmFkZENsYXNzKGJ0KSx0aGlzLl9jb25maWcuZm9jdXMmJnRoaXMuX2VuZm9yY2VGb2N1cygpLGMuZGVmYXVsdC5FdmVudCgic2hvd24uYnMubW9kYWwiLHtyZWxhdGVkVGFyZ2V0OmV9KSk7aT8ocj11LmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2RpYWxvZyksYy5kZWZhdWx0KHRoaXMuX2RpYWxvZykub25lKHUuVFJBTlNJVElPTl9FTkQsdCkuZW11bGF0ZVRyYW5zaXRpb25FbmQocikpOnQoKX0sZS5fZW5mb3JjZUZvY3VzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztjLmRlZmF1bHQoZG9jdW1lbnQpLm9mZihfdCkub24oX3QsZnVuY3Rpb24oZSl7ZG9jdW1lbnQhPT1lLnRhcmdldCYmdC5fZWxlbWVudCE9PWUudGFyZ2V0JiYwPT09Yy5kZWZhdWx0KHQuX2VsZW1lbnQpLmhhcyhlLnRhcmdldCkubGVuZ3RoJiZ0Ll9lbGVtZW50LmZvY3VzKCl9KX0sZS5fc2V0RXNjYXBlRXZlbnQ9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuX2lzU2hvd24/Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uKEN0LGZ1bmN0aW9uKGUpe3QuX2NvbmZpZy5rZXlib2FyZCYmMjc9PT1lLndoaWNoPyhlLnByZXZlbnREZWZhdWx0KCksdC5oaWRlKCkpOnQuX2NvbmZpZy5rZXlib2FyZHx8MjchPT1lLndoaWNofHx0Ll90cmlnZ2VyQmFja2Ryb3BUcmFuc2l0aW9uKCl9KTp0aGlzLl9pc1Nob3dufHxjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkub2ZmKEN0KX0sZS5fc2V0UmVzaXplRXZlbnQ9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuX2lzU2hvd24/Yy5kZWZhdWx0KHdpbmRvdykub24oVHQsZnVuY3Rpb24oZSl7cmV0dXJuIHQuaGFuZGxlVXBkYXRlKGUpfSk6Yy5kZWZhdWx0KHdpbmRvdykub2ZmKFR0KX0sZS5faGlkZU1vZGFsPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXk9Im5vbmUiLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsITApLHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLW1vZGFsIiksdGhpcy5fZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoInJvbGUiKSx0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITEsdGhpcy5fc2hvd0JhY2tkcm9wKGZ1bmN0aW9uKCl7Yy5kZWZhdWx0KGRvY3VtZW50LmJvZHkpLnJlbW92ZUNsYXNzKHl0KSxlLl9yZXNldEFkanVzdG1lbnRzKCksZS5fcmVzZXRTY3JvbGxiYXIoKSxjLmRlZmF1bHQoZS5fZWxlbWVudCkudHJpZ2dlcih4dCl9KX0sZS5fcmVtb3ZlQmFja2Ryb3A9ZnVuY3Rpb24oKXt0aGlzLl9iYWNrZHJvcCYmKGMuZGVmYXVsdCh0aGlzLl9iYWNrZHJvcCkucmVtb3ZlKCksdGhpcy5fYmFja2Ryb3A9bnVsbCl9LGUuX3Nob3dCYWNrZHJvcD1mdW5jdGlvbihlKXt2YXIgdCxuPXRoaXMsaT1jLmRlZmF1bHQodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoQSk/QToiIjt0aGlzLl9pc1Nob3duJiZ0aGlzLl9jb25maWcuYmFja2Ryb3A/KHRoaXMuX2JhY2tkcm9wPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX2JhY2tkcm9wLmNsYXNzTmFtZT0ibW9kYWwtYmFja2Ryb3AiLGkmJnRoaXMuX2JhY2tkcm9wLmNsYXNzTGlzdC5hZGQoaSksYy5kZWZhdWx0KHRoaXMuX2JhY2tkcm9wKS5hcHBlbmRUbyhkb2N1bWVudC5ib2R5KSxjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkub24oU3QsZnVuY3Rpb24oZSl7bi5faWdub3JlQmFja2Ryb3BDbGljaz9uLl9pZ25vcmVCYWNrZHJvcENsaWNrPSExOmUudGFyZ2V0PT09ZS5jdXJyZW50VGFyZ2V0JiYoInN0YXRpYyI9PT1uLl9jb25maWcuYmFja2Ryb3A/bi5fdHJpZ2dlckJhY2tkcm9wVHJhbnNpdGlvbigpOm4uaGlkZSgpKX0pLGkmJnUucmVmbG93KHRoaXMuX2JhY2tkcm9wKSxjLmRlZmF1bHQodGhpcy5fYmFja2Ryb3ApLmFkZENsYXNzKGJ0KSxlJiYoaT8oaT11LmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2JhY2tkcm9wKSxjLmRlZmF1bHQodGhpcy5fYmFja2Ryb3ApLm9uZSh1LlRSQU5TSVRJT05fRU5ELGUpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKGkpKTplKCkpKTohdGhpcy5faXNTaG93biYmdGhpcy5fYmFja2Ryb3A/KGMuZGVmYXVsdCh0aGlzLl9iYWNrZHJvcCkucmVtb3ZlQ2xhc3MoYnQpLGk9ZnVuY3Rpb24oKXtuLl9yZW1vdmVCYWNrZHJvcCgpLGUmJmUoKX0sYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKEEpPyh0PXUuZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fYmFja2Ryb3ApLGMuZGVmYXVsdCh0aGlzLl9iYWNrZHJvcCkub25lKHUuVFJBTlNJVElPTl9FTkQsaSkuZW11bGF0ZVRyYW5zaXRpb25FbmQodCkpOmkoKSk6ZSYmZSgpfSxlLl9hZGp1c3REaWFsb2c9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLl9lbGVtZW50LnNjcm9sbEhlaWdodD5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0OyF0aGlzLl9pc0JvZHlPdmVyZmxvd2luZyYmZSYmKHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ0xlZnQ9dGhpcy5fc2Nyb2xsYmFyV2lkdGgrInB4IiksdGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcmJiFlJiYodGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nUmlnaHQ9dGhpcy5fc2Nyb2xsYmFyV2lkdGgrInB4Iil9LGUuX3Jlc2V0QWRqdXN0bWVudHM9ZnVuY3Rpb24oKXt0aGlzLl9lbGVtZW50LnN0eWxlLnBhZGRpbmdMZWZ0PSIiLHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0PSIifSxlLl9jaGVja1Njcm9sbGJhcj1mdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LmJvZHkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7dGhpcy5faXNCb2R5T3ZlcmZsb3dpbmc9TWF0aC5yb3VuZChlLmxlZnQrZS5yaWdodCk8d2luZG93LmlubmVyV2lkdGgsdGhpcy5fc2Nyb2xsYmFyV2lkdGg9dGhpcy5fZ2V0U2Nyb2xsYmFyV2lkdGgoKX0sZS5fc2V0U2Nyb2xsYmFyPWZ1bmN0aW9uKCl7dmFyIGUsdCxyPXRoaXM7dGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcmJihlPVtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChNdCkpLHQ9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKER0KSksYy5kZWZhdWx0KGUpLmVhY2goZnVuY3Rpb24oZSx0KXt2YXIgbj10LnN0eWxlLnBhZGRpbmdSaWdodCxpPWMuZGVmYXVsdCh0KS5jc3MoInBhZGRpbmctcmlnaHQiKTtjLmRlZmF1bHQodCkuZGF0YSgicGFkZGluZy1yaWdodCIsbikuY3NzKCJwYWRkaW5nLXJpZ2h0IixwYXJzZUZsb2F0KGkpK3IuX3Njcm9sbGJhcldpZHRoKyJweCIpfSksYy5kZWZhdWx0KHQpLmVhY2goZnVuY3Rpb24oZSx0KXt2YXIgbj10LnN0eWxlLm1hcmdpblJpZ2h0LGk9Yy5kZWZhdWx0KHQpLmNzcygibWFyZ2luLXJpZ2h0Iik7Yy5kZWZhdWx0KHQpLmRhdGEoIm1hcmdpbi1yaWdodCIsbikuY3NzKCJtYXJnaW4tcmlnaHQiLHBhcnNlRmxvYXQoaSktci5fc2Nyb2xsYmFyV2lkdGgrInB4Iil9KSxlPWRvY3VtZW50LmJvZHkuc3R5bGUucGFkZGluZ1JpZ2h0LHQ9Yy5kZWZhdWx0KGRvY3VtZW50LmJvZHkpLmNzcygicGFkZGluZy1yaWdodCIpLGMuZGVmYXVsdChkb2N1bWVudC5ib2R5KS5kYXRhKCJwYWRkaW5nLXJpZ2h0IixlKS5jc3MoInBhZGRpbmctcmlnaHQiLHBhcnNlRmxvYXQodCkrdGhpcy5fc2Nyb2xsYmFyV2lkdGgrInB4IikpLGMuZGVmYXVsdChkb2N1bWVudC5ib2R5KS5hZGRDbGFzcyh5dCl9LGUuX3Jlc2V0U2Nyb2xsYmFyPWZ1bmN0aW9uKCl7dmFyIGU9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKE10KSksZT0oYy5kZWZhdWx0KGUpLmVhY2goZnVuY3Rpb24oZSx0KXt2YXIgbj1jLmRlZmF1bHQodCkuZGF0YSgicGFkZGluZy1yaWdodCIpO2MuZGVmYXVsdCh0KS5yZW1vdmVEYXRhKCJwYWRkaW5nLXJpZ2h0IiksdC5zdHlsZS5wYWRkaW5nUmlnaHQ9bnx8IiJ9KSxbXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoRHQpKSksZT0oYy5kZWZhdWx0KGUpLmVhY2goZnVuY3Rpb24oZSx0KXt2YXIgbj1jLmRlZmF1bHQodCkuZGF0YSgibWFyZ2luLXJpZ2h0Iik7dm9pZCAwIT09biYmYy5kZWZhdWx0KHQpLmNzcygibWFyZ2luLXJpZ2h0IixuKS5yZW1vdmVEYXRhKCJtYXJnaW4tcmlnaHQiKX0pLGMuZGVmYXVsdChkb2N1bWVudC5ib2R5KS5kYXRhKCJwYWRkaW5nLXJpZ2h0IikpO2MuZGVmYXVsdChkb2N1bWVudC5ib2R5KS5yZW1vdmVEYXRhKCJwYWRkaW5nLXJpZ2h0IiksZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nUmlnaHQ9ZXx8IiJ9LGUuX2dldFNjcm9sbGJhcldpZHRoPWZ1bmN0aW9uKCl7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdD0oZS5jbGFzc05hbWU9Im1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpLGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGgtZS5jbGllbnRXaWR0aCk7cmV0dXJuIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZSksdH0sci5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKG4saSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzKS5kYXRhKGd0KSx0PW8oe30sTHQsYy5kZWZhdWx0KHRoaXMpLmRhdGEoKSwib2JqZWN0Ij09dHlwZW9mIG4mJm4/bjp7fSk7aWYoZXx8KGU9bmV3IHIodGhpcyx0KSxjLmRlZmF1bHQodGhpcykuZGF0YShndCxlKSksInN0cmluZyI9PXR5cGVvZiBuKXtpZih2b2lkIDA9PT1lW25dKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytuKyciJyk7ZVtuXShpKX1lbHNlIHQuc2hvdyYmZS5zaG93KGkpfSl9LGEocixudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC42LjIifX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIEx0fX1dKSxyfSgpLFB0PShjLmRlZmF1bHQoZG9jdW1lbnQpLm9uKCJjbGljay5icy5tb2RhbC5kYXRhLWFwaSIsJ1tkYXRhLXRvZ2dsZT0ibW9kYWwiXScsZnVuY3Rpb24oZSl7dmFyIHQsbj10aGlzLGk9dS5nZXRTZWxlY3RvckZyb21FbGVtZW50KHRoaXMpLGk9KGkmJih0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoaSkpLGMuZGVmYXVsdCh0KS5kYXRhKGd0KT8idG9nZ2xlIjpvKHt9LGMuZGVmYXVsdCh0KS5kYXRhKCksYy5kZWZhdWx0KHRoaXMpLmRhdGEoKSkpLHI9KCJBIiE9PXRoaXMudGFnTmFtZSYmIkFSRUEiIT09dGhpcy50YWdOYW1lfHxlLnByZXZlbnREZWZhdWx0KCksYy5kZWZhdWx0KHQpLm9uZShFdCxmdW5jdGlvbihlKXtlLmlzRGVmYXVsdFByZXZlbnRlZCgpfHxyLm9uZSh4dCxmdW5jdGlvbigpe2MuZGVmYXVsdChuKS5pcygiOnZpc2libGUiKSYmbi5mb2N1cygpfSl9KSk7T3QuX2pRdWVyeUludGVyZmFjZS5jYWxsKGMuZGVmYXVsdCh0KSxpLHRoaXMpfSksYy5kZWZhdWx0LmZuW1NdPU90Ll9qUXVlcnlJbnRlcmZhY2UsYy5kZWZhdWx0LmZuW1NdLkNvbnN0cnVjdG9yPU90LGMuZGVmYXVsdC5mbltTXS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGMuZGVmYXVsdC5mbltTXT12dCxPdC5falF1ZXJ5SW50ZXJmYWNlfSxbImJhY2tncm91bmQiLCJjaXRlIiwiaHJlZiIsIml0ZW10eXBlIiwibG9uZ2Rlc2MiLCJwb3N0ZXIiLCJzcmMiLCJ4bGluazpocmVmIl0pLFVlPXsiKiI6WyJjbGFzcyIsImRpciIsImlkIiwibGFuZyIsInJvbGUiLC9eYXJpYS1bXHctXSokL2ldLGE6WyJ0YXJnZXQiLCJocmVmIiwidGl0bGUiLCJyZWwiXSxhcmVhOltdLGI6W10sYnI6W10sY29sOltdLGNvZGU6W10sZGl2OltdLGVtOltdLGhyOltdLGgxOltdLGgyOltdLGgzOltdLGg0OltdLGg1OltdLGg2OltdLGk6W10saW1nOlsic3JjIiwic3Jjc2V0IiwiYWx0IiwidGl0bGUiLCJ3aWR0aCIsImhlaWdodCJdLGxpOltdLG9sOltdLHA6W10scHJlOltdLHM6W10sc21hbGw6W10sc3BhbjpbXSxzdWI6W10sc3VwOltdLHN0cm9uZzpbXSx1OltdLHVsOltdfSxJdD0vXig/Oig/Omh0dHBzP3xtYWlsdG98ZnRwfHRlbHxmaWxlfHNtcyk6fFteIyYvOj9dKig/OlsjLz9dfCQpKS9pLCR0PS9eZGF0YTooPzppbWFnZVwvKD86Ym1wfGdpZnxqcGVnfGpwZ3xwbmd8dGlmZnx3ZWJwKXx2aWRlb1wvKD86bXBlZ3xtcDR8b2dnfHdlYm0pfGF1ZGlvXC8oPzptcDN8b2dhfG9nZ3xvcHVzKSk7YmFzZTY0LFtcZCsvYS16XSs9KiQvaTtmdW5jdGlvbiBOdChlLHMsdCl7aWYoMD09PWUubGVuZ3RoKXJldHVybiBlO2lmKHQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0KXJldHVybiB0KGUpO2Zvcih2YXIgdD0obmV3IHdpbmRvdy5ET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyhlLCJ0ZXh0L2h0bWwiKSxhPU9iamVjdC5rZXlzKHMpLG89W10uc2xpY2UuY2FsbCh0LmJvZHkucXVlcnlTZWxlY3RvckFsbCgiKiIpKSxuPWZ1bmN0aW9uKGUsdCl7dmFyIG49b1tlXSxlPW4ubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtpZigtMT09PWEuaW5kZXhPZihuLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpKXJldHVybiBuLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobiksImNvbnRpbnVlIjt2YXIgaT1bXS5zbGljZS5jYWxsKG4uYXR0cmlidXRlcykscj1bXS5jb25jYXQoc1siKiJdfHxbXSxzW2VdfHxbXSk7aS5mb3JFYWNoKGZ1bmN0aW9uKGUpeyFmdW5jdGlvbihlLHQpe3ZhciBuPWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtpZigtMSE9PXQuaW5kZXhPZihuKSlyZXR1cm4tMT09PVB0LmluZGV4T2Yobil8fEJvb2xlYW4oSXQudGVzdChlLm5vZGVWYWx1ZSl8fCR0LnRlc3QoZS5ub2RlVmFsdWUpKTtmb3IodmFyIGk9dC5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBSZWdFeHB9KSxyPTAscz1pLmxlbmd0aDtyPHM7cisrKWlmKGlbcl0udGVzdChuKSlyZXR1cm4gMX0oZSxyKSYmbi5yZW1vdmVBdHRyaWJ1dGUoZS5ub2RlTmFtZSl9KX0saT0wLHI9by5sZW5ndGg7aTxyO2krKyluKGkpO3JldHVybiB0LmJvZHkuaW5uZXJIVE1MfXZhciBNPSJ0b29sdGlwIixqdD0iYnMudG9vbHRpcCIsRD0iLiIranQscXQ9Yy5kZWZhdWx0LmZuW01dLHp0PSJicy10b29sdGlwIixIdD1uZXcgUmVnRXhwKCIoXnxcXHMpIit6dCsiXFxTKyIsImciKSxSdD1bInNhbml0aXplIiwid2hpdGVMaXN0Iiwic2FuaXRpemVGbiJdLEZ0PSJmYWRlIixCdD0ic2hvdyIsV3Q9InNob3ciLEd0PSJob3ZlciIsWXQ9ImZvY3VzIixYdD17QVVUTzoiYXV0byIsVE9QOiJ0b3AiLFJJR0hUOiJyaWdodCIsQk9UVE9NOiJib3R0b20iLExFRlQ6ImxlZnQifSxWdD17YW5pbWF0aW9uOiEwLHRlbXBsYXRlOic8ZGl2IGNsYXNzPSJ0b29sdGlwIiByb2xlPSJ0b29sdGlwIj48ZGl2IGNsYXNzPSJhcnJvdyI+PC9kaXY+PGRpdiBjbGFzcz0idG9vbHRpcC1pbm5lciI+PC9kaXY+PC9kaXY+Jyx0cmlnZ2VyOiJob3ZlciBmb2N1cyIsdGl0bGU6IiIsZGVsYXk6MCxodG1sOiExLHNlbGVjdG9yOiExLHBsYWNlbWVudDoidG9wIixvZmZzZXQ6MCxjb250YWluZXI6ITEsZmFsbGJhY2tQbGFjZW1lbnQ6ImZsaXAiLGJvdW5kYXJ5OiJzY3JvbGxQYXJlbnQiLGN1c3RvbUNsYXNzOiIiLHNhbml0aXplOiEwLHNhbml0aXplRm46bnVsbCx3aGl0ZUxpc3Q6VWUscG9wcGVyQ29uZmlnOm51bGx9LFV0PXthbmltYXRpb246ImJvb2xlYW4iLHRlbXBsYXRlOiJzdHJpbmciLHRpdGxlOiIoc3RyaW5nfGVsZW1lbnR8ZnVuY3Rpb24pIix0cmlnZ2VyOiJzdHJpbmciLGRlbGF5OiIobnVtYmVyfG9iamVjdCkiLGh0bWw6ImJvb2xlYW4iLHNlbGVjdG9yOiIoc3RyaW5nfGJvb2xlYW4pIixwbGFjZW1lbnQ6IihzdHJpbmd8ZnVuY3Rpb24pIixvZmZzZXQ6IihudW1iZXJ8c3RyaW5nfGZ1bmN0aW9uKSIsY29udGFpbmVyOiIoc3RyaW5nfGVsZW1lbnR8Ym9vbGVhbikiLGZhbGxiYWNrUGxhY2VtZW50OiIoc3RyaW5nfGFycmF5KSIsYm91bmRhcnk6IihzdHJpbmd8ZWxlbWVudCkiLGN1c3RvbUNsYXNzOiIoc3RyaW5nfGZ1bmN0aW9uKSIsc2FuaXRpemU6ImJvb2xlYW4iLHNhbml0aXplRm46IihudWxsfGZ1bmN0aW9uKSIsd2hpdGVMaXN0OiJvYmplY3QiLHBvcHBlckNvbmZpZzoiKG51bGx8b2JqZWN0KSJ9LFF0PXtISURFOiJoaWRlIitELEhJRERFTjoiaGlkZGVuIitELFNIT1c6InNob3ciK0QsU0hPV046InNob3duIitELElOU0VSVEVEOiJpbnNlcnRlZCIrRCxDTElDSzoiY2xpY2siK0QsRk9DVVNJTjoiZm9jdXNpbiIrRCxGT0NVU09VVDoiZm9jdXNvdXQiK0QsTU9VU0VFTlRFUjoibW91c2VlbnRlciIrRCxNT1VTRUxFQVZFOiJtb3VzZWxlYXZlIitEfSxMPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gcihlLHQpe2lmKHZvaWQgMD09PWl0KXRocm93IG5ldyBUeXBlRXJyb3IoIkJvb3RzdHJhcCdzIHRvb2x0aXBzIHJlcXVpcmUgUG9wcGVyIChodHRwczovL3BvcHBlci5qcy5vcmcpIik7dGhpcy5faXNFbmFibGVkPSEwLHRoaXMuX3RpbWVvdXQ9MCx0aGlzLl9ob3ZlclN0YXRlPSIiLHRoaXMuX2FjdGl2ZVRyaWdnZXI9e30sdGhpcy5fcG9wcGVyPW51bGwsdGhpcy5lbGVtZW50PWUsdGhpcy5jb25maWc9dGhpcy5fZ2V0Q29uZmlnKHQpLHRoaXMudGlwPW51bGwsdGhpcy5fc2V0TGlzdGVuZXJzKCl9dmFyIGU9ci5wcm90b3R5cGU7cmV0dXJuIGUuZW5hYmxlPWZ1bmN0aW9uKCl7dGhpcy5faXNFbmFibGVkPSEwfSxlLmRpc2FibGU9ZnVuY3Rpb24oKXt0aGlzLl9pc0VuYWJsZWQ9ITF9LGUudG9nZ2xlRW5hYmxlZD1mdW5jdGlvbigpe3RoaXMuX2lzRW5hYmxlZD0hdGhpcy5faXNFbmFibGVkfSxlLnRvZ2dsZT1mdW5jdGlvbihlKXt2YXIgdCxuO3RoaXMuX2lzRW5hYmxlZCYmKGU/KHQ9dGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWSwobj1jLmRlZmF1bHQoZS5jdXJyZW50VGFyZ2V0KS5kYXRhKHQpKXx8KG49bmV3IHRoaXMuY29uc3RydWN0b3IoZS5jdXJyZW50VGFyZ2V0LHRoaXMuX2dldERlbGVnYXRlQ29uZmlnKCkpLGMuZGVmYXVsdChlLmN1cnJlbnRUYXJnZXQpLmRhdGEodCxuKSksbi5fYWN0aXZlVHJpZ2dlci5jbGljaz0hbi5fYWN0aXZlVHJpZ2dlci5jbGljayxuLl9pc1dpdGhBY3RpdmVUcmlnZ2VyKCk/bi5fZW50ZXIobnVsbCxuKTpuLl9sZWF2ZShudWxsLG4pKTpjLmRlZmF1bHQodGhpcy5nZXRUaXBFbGVtZW50KCkpLmhhc0NsYXNzKEJ0KT90aGlzLl9sZWF2ZShudWxsLHRoaXMpOnRoaXMuX2VudGVyKG51bGwsdGhpcykpfSxlLmRpc3Bvc2U9ZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQodGhpcy5fdGltZW91dCksYy5kZWZhdWx0LnJlbW92ZURhdGEodGhpcy5lbGVtZW50LHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVkpLGMuZGVmYXVsdCh0aGlzLmVsZW1lbnQpLm9mZih0aGlzLmNvbnN0cnVjdG9yLkVWRU5UX0tFWSksYy5kZWZhdWx0KHRoaXMuZWxlbWVudCkuY2xvc2VzdCgiLm1vZGFsIikub2ZmKCJoaWRlLmJzLm1vZGFsIix0aGlzLl9oaWRlTW9kYWxIYW5kbGVyKSx0aGlzLnRpcCYmYy5kZWZhdWx0KHRoaXMudGlwKS5yZW1vdmUoKSx0aGlzLl9pc0VuYWJsZWQ9bnVsbCx0aGlzLl90aW1lb3V0PW51bGwsdGhpcy5faG92ZXJTdGF0ZT1udWxsLHRoaXMuX2FjdGl2ZVRyaWdnZXI9bnVsbCx0aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci5kZXN0cm95KCksdGhpcy5fcG9wcGVyPW51bGwsdGhpcy5lbGVtZW50PW51bGwsdGhpcy5jb25maWc9bnVsbCx0aGlzLnRpcD1udWxsfSxlLnNob3c9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2lmKCJub25lIj09PWMuZGVmYXVsdCh0aGlzLmVsZW1lbnQpLmNzcygiZGlzcGxheSIpKXRocm93IG5ldyBFcnJvcigiUGxlYXNlIHVzZSBzaG93IG9uIHZpc2libGUgZWxlbWVudHMiKTt2YXIgZSxuLGk9Yy5kZWZhdWx0LkV2ZW50KHRoaXMuY29uc3RydWN0b3IuRXZlbnQuU0hPVyk7dGhpcy5pc1dpdGhDb250ZW50KCkmJnRoaXMuX2lzRW5hYmxlZCYmKGMuZGVmYXVsdCh0aGlzLmVsZW1lbnQpLnRyaWdnZXIoaSksbj11LmZpbmRTaGFkb3dSb290KHRoaXMuZWxlbWVudCksbj1jLmRlZmF1bHQuY29udGFpbnMobnVsbCE9PW4/bjp0aGlzLmVsZW1lbnQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsdGhpcy5lbGVtZW50KSwhaS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSkmJm4mJihpPXRoaXMuZ2V0VGlwRWxlbWVudCgpLG49dS5nZXRVSUQodGhpcy5jb25zdHJ1Y3Rvci5OQU1FKSxpLnNldEF0dHJpYnV0ZSgiaWQiLG4pLHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtZGVzY3JpYmVkYnkiLG4pLHRoaXMuc2V0Q29udGVudCgpLHRoaXMuY29uZmlnLmFuaW1hdGlvbiYmYy5kZWZhdWx0KGkpLmFkZENsYXNzKEZ0KSxuPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLmNvbmZpZy5wbGFjZW1lbnQ/dGhpcy5jb25maWcucGxhY2VtZW50LmNhbGwodGhpcyxpLHRoaXMuZWxlbWVudCk6dGhpcy5jb25maWcucGxhY2VtZW50LG49dGhpcy5fZ2V0QXR0YWNobWVudChuKSx0aGlzLmFkZEF0dGFjaG1lbnRDbGFzcyhuKSxlPXRoaXMuX2dldENvbnRhaW5lcigpLGMuZGVmYXVsdChpKS5kYXRhKHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVksdGhpcyksYy5kZWZhdWx0LmNvbnRhaW5zKHRoaXMuZWxlbWVudC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCx0aGlzLnRpcCl8fGMuZGVmYXVsdChpKS5hcHBlbmRUbyhlKSxjLmRlZmF1bHQodGhpcy5lbGVtZW50KS50cmlnZ2VyKHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSU5TRVJURUQpLHRoaXMuX3BvcHBlcj1uZXcgaXQodGhpcy5lbGVtZW50LGksdGhpcy5fZ2V0UG9wcGVyQ29uZmlnKG4pKSxjLmRlZmF1bHQoaSkuYWRkQ2xhc3MoQnQpLGMuZGVmYXVsdChpKS5hZGRDbGFzcyh0aGlzLmNvbmZpZy5jdXN0b21DbGFzcyksIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmMuZGVmYXVsdChkb2N1bWVudC5ib2R5KS5jaGlsZHJlbigpLm9uKCJtb3VzZW92ZXIiLG51bGwsYy5kZWZhdWx0Lm5vb3ApLGU9ZnVuY3Rpb24oKXt0LmNvbmZpZy5hbmltYXRpb24mJnQuX2ZpeFRyYW5zaXRpb24oKTt2YXIgZT10Ll9ob3ZlclN0YXRlO3QuX2hvdmVyU3RhdGU9bnVsbCxjLmRlZmF1bHQodC5lbGVtZW50KS50cmlnZ2VyKHQuY29uc3RydWN0b3IuRXZlbnQuU0hPV04pLCJvdXQiPT09ZSYmdC5fbGVhdmUobnVsbCx0KX0sYy5kZWZhdWx0KHRoaXMudGlwKS5oYXNDbGFzcyhGdCk/KG49dS5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLnRpcCksYy5kZWZhdWx0KHRoaXMudGlwKS5vbmUodS5UUkFOU0lUSU9OX0VORCxlKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChuKSk6ZSgpKX0sZS5oaWRlPWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIHQoKXtuLl9ob3ZlclN0YXRlIT09V3QmJmkucGFyZW50Tm9kZSYmaS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGkpLG4uX2NsZWFuVGlwQ2xhc3MoKSxuLmVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IiksYy5kZWZhdWx0KG4uZWxlbWVudCkudHJpZ2dlcihuLmNvbnN0cnVjdG9yLkV2ZW50LkhJRERFTiksbnVsbCE9PW4uX3BvcHBlciYmbi5fcG9wcGVyLmRlc3Ryb3koKSxlJiZlKCl9dmFyIG49dGhpcyxpPXRoaXMuZ2V0VGlwRWxlbWVudCgpLHI9Yy5kZWZhdWx0LkV2ZW50KHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSElERSk7Yy5kZWZhdWx0KHRoaXMuZWxlbWVudCkudHJpZ2dlcihyKSxyLmlzRGVmYXVsdFByZXZlbnRlZCgpfHwoYy5kZWZhdWx0KGkpLnJlbW92ZUNsYXNzKEJ0KSwib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmYy5kZWZhdWx0KGRvY3VtZW50LmJvZHkpLmNoaWxkcmVuKCkub2ZmKCJtb3VzZW92ZXIiLG51bGwsYy5kZWZhdWx0Lm5vb3ApLHRoaXMuX2FjdGl2ZVRyaWdnZXIuY2xpY2s9ITEsdGhpcy5fYWN0aXZlVHJpZ2dlcltZdF09ITEsdGhpcy5fYWN0aXZlVHJpZ2dlcltHdF09ITEsYy5kZWZhdWx0KHRoaXMudGlwKS5oYXNDbGFzcyhGdCk/KHI9dS5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudChpKSxjLmRlZmF1bHQoaSkub25lKHUuVFJBTlNJVElPTl9FTkQsdCkuZW11bGF0ZVRyYW5zaXRpb25FbmQocikpOnQoKSx0aGlzLl9ob3ZlclN0YXRlPSIiKX0sZS51cGRhdGU9ZnVuY3Rpb24oKXtudWxsIT09dGhpcy5fcG9wcGVyJiZ0aGlzLl9wb3BwZXIuc2NoZWR1bGVVcGRhdGUoKX0sZS5pc1dpdGhDb250ZW50PWZ1bmN0aW9uKCl7cmV0dXJuIEJvb2xlYW4odGhpcy5nZXRUaXRsZSgpKX0sZS5hZGRBdHRhY2htZW50Q2xhc3M9ZnVuY3Rpb24oZSl7Yy5kZWZhdWx0KHRoaXMuZ2V0VGlwRWxlbWVudCgpKS5hZGRDbGFzcyh6dCsiLSIrZSl9LGUuZ2V0VGlwRWxlbWVudD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRpcD10aGlzLnRpcHx8Yy5kZWZhdWx0KHRoaXMuY29uZmlnLnRlbXBsYXRlKVswXSx0aGlzLnRpcH0sZS5zZXRDb250ZW50PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5nZXRUaXBFbGVtZW50KCk7dGhpcy5zZXRFbGVtZW50Q29udGVudChjLmRlZmF1bHQoZS5xdWVyeVNlbGVjdG9yQWxsKCIudG9vbHRpcC1pbm5lciIpKSx0aGlzLmdldFRpdGxlKCkpLGMuZGVmYXVsdChlKS5yZW1vdmVDbGFzcyhGdCsiICIrQnQpfSxlLnNldEVsZW1lbnRDb250ZW50PWZ1bmN0aW9uKGUsdCl7Im9iamVjdCI9PXR5cGVvZiB0JiYodC5ub2RlVHlwZXx8dC5qcXVlcnkpP3RoaXMuY29uZmlnLmh0bWw/Yy5kZWZhdWx0KHQpLnBhcmVudCgpLmlzKGUpfHxlLmVtcHR5KCkuYXBwZW5kKHQpOmUudGV4dChjLmRlZmF1bHQodCkudGV4dCgpKTp0aGlzLmNvbmZpZy5odG1sPyh0aGlzLmNvbmZpZy5zYW5pdGl6ZSYmKHQ9TnQodCx0aGlzLmNvbmZpZy53aGl0ZUxpc3QsdGhpcy5jb25maWcuc2FuaXRpemVGbikpLGUuaHRtbCh0KSk6ZS50ZXh0KHQpfSxlLmdldFRpdGxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoImRhdGEtb3JpZ2luYWwtdGl0bGUiKXx8KCJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLmNvbmZpZy50aXRsZT90aGlzLmNvbmZpZy50aXRsZS5jYWxsKHRoaXMuZWxlbWVudCk6dGhpcy5jb25maWcudGl0bGUpfSxlLl9nZXRQb3BwZXJDb25maWc9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztyZXR1cm4gbyh7fSx7cGxhY2VtZW50OmUsbW9kaWZpZXJzOntvZmZzZXQ6dGhpcy5fZ2V0T2Zmc2V0KCksZmxpcDp7YmVoYXZpb3I6dGhpcy5jb25maWcuZmFsbGJhY2tQbGFjZW1lbnR9LGFycm93OntlbGVtZW50OiIuYXJyb3cifSxwcmV2ZW50T3ZlcmZsb3c6e2JvdW5kYXJpZXNFbGVtZW50OnRoaXMuY29uZmlnLmJvdW5kYXJ5fX0sb25DcmVhdGU6ZnVuY3Rpb24oZSl7ZS5vcmlnaW5hbFBsYWNlbWVudCE9PWUucGxhY2VtZW50JiZ0Ll9oYW5kbGVQb3BwZXJQbGFjZW1lbnRDaGFuZ2UoZSl9LG9uVXBkYXRlOmZ1bmN0aW9uKGUpe3JldHVybiB0Ll9oYW5kbGVQb3BwZXJQbGFjZW1lbnRDaGFuZ2UoZSl9fSx0aGlzLmNvbmZpZy5wb3BwZXJDb25maWcpfSxlLl9nZXRPZmZzZXQ9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9e307cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuY29uZmlnLm9mZnNldD9lLmZuPWZ1bmN0aW9uKGUpe3JldHVybiBlLm9mZnNldHM9byh7fSxlLm9mZnNldHMsdC5jb25maWcub2Zmc2V0KGUub2Zmc2V0cyx0LmVsZW1lbnQpKSxlfTplLm9mZnNldD10aGlzLmNvbmZpZy5vZmZzZXQsZX0sZS5fZ2V0Q29udGFpbmVyPWZ1bmN0aW9uKCl7cmV0dXJuITE9PT10aGlzLmNvbmZpZy5jb250YWluZXI/ZG9jdW1lbnQuYm9keTp1LmlzRWxlbWVudCh0aGlzLmNvbmZpZy5jb250YWluZXIpP2MuZGVmYXVsdCh0aGlzLmNvbmZpZy5jb250YWluZXIpOmMuZGVmYXVsdChkb2N1bWVudCkuZmluZCh0aGlzLmNvbmZpZy5jb250YWluZXIpfSxlLl9nZXRBdHRhY2htZW50PWZ1bmN0aW9uKGUpe3JldHVybiBYdFtlLnRvVXBwZXJDYXNlKCldfSxlLl9zZXRMaXN0ZW5lcnM9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuY29uZmlnLnRyaWdnZXIuc3BsaXQoIiAiKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0OyJjbGljayI9PT1lP2MuZGVmYXVsdChuLmVsZW1lbnQpLm9uKG4uY29uc3RydWN0b3IuRXZlbnQuQ0xJQ0ssbi5jb25maWcuc2VsZWN0b3IsZnVuY3Rpb24oZSl7cmV0dXJuIG4udG9nZ2xlKGUpfSk6Im1hbnVhbCIhPT1lJiYodD1lPT09R3Q/bi5jb25zdHJ1Y3Rvci5FdmVudC5NT1VTRUVOVEVSOm4uY29uc3RydWN0b3IuRXZlbnQuRk9DVVNJTixlPWU9PT1HdD9uLmNvbnN0cnVjdG9yLkV2ZW50Lk1PVVNFTEVBVkU6bi5jb25zdHJ1Y3Rvci5FdmVudC5GT0NVU09VVCxjLmRlZmF1bHQobi5lbGVtZW50KS5vbih0LG4uY29uZmlnLnNlbGVjdG9yLGZ1bmN0aW9uKGUpe3JldHVybiBuLl9lbnRlcihlKX0pLm9uKGUsbi5jb25maWcuc2VsZWN0b3IsZnVuY3Rpb24oZSl7cmV0dXJuIG4uX2xlYXZlKGUpfSkpfSksdGhpcy5faGlkZU1vZGFsSGFuZGxlcj1mdW5jdGlvbigpe24uZWxlbWVudCYmbi5oaWRlKCl9LGMuZGVmYXVsdCh0aGlzLmVsZW1lbnQpLmNsb3Nlc3QoIi5tb2RhbCIpLm9uKCJoaWRlLmJzLm1vZGFsIix0aGlzLl9oaWRlTW9kYWxIYW5kbGVyKSx0aGlzLmNvbmZpZy5zZWxlY3Rvcj90aGlzLmNvbmZpZz1vKHt9LHRoaXMuY29uZmlnLHt0cmlnZ2VyOiJtYW51YWwiLHNlbGVjdG9yOiIifSk6dGhpcy5fZml4VGl0bGUoKX0sZS5fZml4VGl0bGU9ZnVuY3Rpb24oKXt2YXIgZT10eXBlb2YgdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC10aXRsZSIpOyF0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpJiYic3RyaW5nIj09ZXx8KHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoImRhdGEtb3JpZ2luYWwtdGl0bGUiLHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoInRpdGxlIil8fCIiKSx0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCJ0aXRsZSIsIiIpKX0sZS5fZW50ZXI9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZOyh0PXR8fGMuZGVmYXVsdChlLmN1cnJlbnRUYXJnZXQpLmRhdGEobikpfHwodD1uZXcgdGhpcy5jb25zdHJ1Y3RvcihlLmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksYy5kZWZhdWx0KGUuY3VycmVudFRhcmdldCkuZGF0YShuLHQpKSxlJiYodC5fYWN0aXZlVHJpZ2dlclsiZm9jdXNpbiI9PT1lLnR5cGU/WXQ6R3RdPSEwKSxjLmRlZmF1bHQodC5nZXRUaXBFbGVtZW50KCkpLmhhc0NsYXNzKEJ0KXx8dC5faG92ZXJTdGF0ZT09PVd0P3QuX2hvdmVyU3RhdGU9V3Q6KGNsZWFyVGltZW91dCh0Ll90aW1lb3V0KSx0Ll9ob3ZlclN0YXRlPVd0LHQuY29uZmlnLmRlbGF5JiZ0LmNvbmZpZy5kZWxheS5zaG93P3QuX3RpbWVvdXQ9c2V0VGltZW91dChmdW5jdGlvbigpe3QuX2hvdmVyU3RhdGU9PT1XdCYmdC5zaG93KCl9LHQuY29uZmlnLmRlbGF5LnNob3cpOnQuc2hvdygpKX0sZS5fbGVhdmU9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZOyh0PXR8fGMuZGVmYXVsdChlLmN1cnJlbnRUYXJnZXQpLmRhdGEobikpfHwodD1uZXcgdGhpcy5jb25zdHJ1Y3RvcihlLmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksYy5kZWZhdWx0KGUuY3VycmVudFRhcmdldCkuZGF0YShuLHQpKSxlJiYodC5fYWN0aXZlVHJpZ2dlclsiZm9jdXNvdXQiPT09ZS50eXBlP1l0Okd0XT0hMSksdC5faXNXaXRoQWN0aXZlVHJpZ2dlcigpfHwoY2xlYXJUaW1lb3V0KHQuX3RpbWVvdXQpLHQuX2hvdmVyU3RhdGU9Im91dCIsdC5jb25maWcuZGVsYXkmJnQuY29uZmlnLmRlbGF5LmhpZGU/dC5fdGltZW91dD1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Im91dCI9PT10Ll9ob3ZlclN0YXRlJiZ0LmhpZGUoKX0sdC5jb25maWcuZGVsYXkuaGlkZSk6dC5oaWRlKCkpfSxlLl9pc1dpdGhBY3RpdmVUcmlnZ2VyPWZ1bmN0aW9uKCl7Zm9yKHZhciBlIGluIHRoaXMuX2FjdGl2ZVRyaWdnZXIpaWYodGhpcy5fYWN0aXZlVHJpZ2dlcltlXSlyZXR1cm4hMDtyZXR1cm4hMX0sZS5fZ2V0Q29uZmlnPWZ1bmN0aW9uKGUpe3ZhciB0PWMuZGVmYXVsdCh0aGlzLmVsZW1lbnQpLmRhdGEoKTtyZXR1cm4gT2JqZWN0LmtleXModCkuZm9yRWFjaChmdW5jdGlvbihlKXstMSE9PVJ0LmluZGV4T2YoZSkmJmRlbGV0ZSB0W2VdfSksIm51bWJlciI9PXR5cGVvZihlPW8oe30sdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0LHQsIm9iamVjdCI9PXR5cGVvZiBlJiZlP2U6e30pKS5kZWxheSYmKGUuZGVsYXk9e3Nob3c6ZS5kZWxheSxoaWRlOmUuZGVsYXl9KSwibnVtYmVyIj09dHlwZW9mIGUudGl0bGUmJihlLnRpdGxlPWUudGl0bGUudG9TdHJpbmcoKSksIm51bWJlciI9PXR5cGVvZiBlLmNvbnRlbnQmJihlLmNvbnRlbnQ9ZS5jb250ZW50LnRvU3RyaW5nKCkpLHUudHlwZUNoZWNrQ29uZmlnKE0sZSx0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHRUeXBlKSxlLnNhbml0aXplJiYoZS50ZW1wbGF0ZT1OdChlLnRlbXBsYXRlLGUud2hpdGVMaXN0LGUuc2FuaXRpemVGbikpLGV9LGUuX2dldERlbGVnYXRlQ29uZmlnPWZ1bmN0aW9uKCl7dmFyIGU9e307aWYodGhpcy5jb25maWcpZm9yKHZhciB0IGluIHRoaXMuY29uZmlnKXRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFt0XSE9PXRoaXMuY29uZmlnW3RdJiYoZVt0XT10aGlzLmNvbmZpZ1t0XSk7cmV0dXJuIGV9LGUuX2NsZWFuVGlwQ2xhc3M9ZnVuY3Rpb24oKXt2YXIgZT1jLmRlZmF1bHQodGhpcy5nZXRUaXBFbGVtZW50KCkpLHQ9ZS5hdHRyKCJjbGFzcyIpLm1hdGNoKEh0KTtudWxsIT09dCYmdC5sZW5ndGgmJmUucmVtb3ZlQ2xhc3ModC5qb2luKCIiKSl9LGUuX2hhbmRsZVBvcHBlclBsYWNlbWVudENoYW5nZT1mdW5jdGlvbihlKXt0aGlzLnRpcD1lLmluc3RhbmNlLnBvcHBlcix0aGlzLl9jbGVhblRpcENsYXNzKCksdGhpcy5hZGRBdHRhY2htZW50Q2xhc3ModGhpcy5fZ2V0QXR0YWNobWVudChlLnBsYWNlbWVudCkpfSxlLl9maXhUcmFuc2l0aW9uPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5nZXRUaXBFbGVtZW50KCksdD10aGlzLmNvbmZpZy5hbmltYXRpb247bnVsbD09PWUuZ2V0QXR0cmlidXRlKCJ4LXBsYWNlbWVudCIpJiYoYy5kZWZhdWx0KGUpLnJlbW92ZUNsYXNzKEZ0KSx0aGlzLmNvbmZpZy5hbmltYXRpb249ITEsdGhpcy5oaWRlKCksdGhpcy5zaG93KCksdGhpcy5jb25maWcuYW5pbWF0aW9uPXQpfSxyLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24oaSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzKSx0PWUuZGF0YShqdCksbj0ib2JqZWN0Ij09dHlwZW9mIGkmJmk7aWYoKHR8fCEvZGlzcG9zZXxoaWRlLy50ZXN0KGkpKSYmKHR8fCh0PW5ldyByKHRoaXMsbiksZS5kYXRhKGp0LHQpKSwic3RyaW5nIj09dHlwZW9mIGkpKXtpZih2b2lkIDA9PT10W2ldKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytpKyciJyk7dFtpXSgpfX0pfSxhKHIsbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuNi4yIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBWdH19LHtrZXk6Ik5BTUUiLGdldDpmdW5jdGlvbigpe3JldHVybiBNfX0se2tleToiREFUQV9LRVkiLGdldDpmdW5jdGlvbigpe3JldHVybiBqdH19LHtrZXk6IkV2ZW50IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gUXR9fSx7a2V5OiJFVkVOVF9LRVkiLGdldDpmdW5jdGlvbigpe3JldHVybiBEfX0se2tleToiRGVmYXVsdFR5cGUiLGdldDpmdW5jdGlvbigpe3JldHVybiBVdH19XSkscn0oKSxrPShjLmRlZmF1bHQuZm5bTV09TC5falF1ZXJ5SW50ZXJmYWNlLGMuZGVmYXVsdC5mbltNXS5Db25zdHJ1Y3Rvcj1MLGMuZGVmYXVsdC5mbltNXS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGMuZGVmYXVsdC5mbltNXT1xdCxMLl9qUXVlcnlJbnRlcmZhY2V9LCJwb3BvdmVyIiksS3Q9ImJzLnBvcG92ZXIiLE89Ii4iK0t0LFp0PWMuZGVmYXVsdC5mbltrXSxKdD0iYnMtcG9wb3ZlciIsZW49bmV3IFJlZ0V4cCgiKF58XFxzKSIrSnQrIlxcUysiLCJnIiksdG49byh7fSxMLkRlZmF1bHQse3BsYWNlbWVudDoicmlnaHQiLHRyaWdnZXI6ImNsaWNrIixjb250ZW50OiIiLHRlbXBsYXRlOic8ZGl2IGNsYXNzPSJwb3BvdmVyIiByb2xlPSJ0b29sdGlwIj48ZGl2IGNsYXNzPSJhcnJvdyI+PC9kaXY+PGgzIGNsYXNzPSJwb3BvdmVyLWhlYWRlciI+PC9oMz48ZGl2IGNsYXNzPSJwb3BvdmVyLWJvZHkiPjwvZGl2PjwvZGl2Pid9KSxubj1vKHt9LEwuRGVmYXVsdFR5cGUse2NvbnRlbnQ6IihzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbikifSkscm49e0hJREU6ImhpZGUiK08sSElEREVOOiJoaWRkZW4iK08sU0hPVzoic2hvdyIrTyxTSE9XTjoic2hvd24iK08sSU5TRVJURUQ6Imluc2VydGVkIitPLENMSUNLOiJjbGljayIrTyxGT0NVU0lOOiJmb2N1c2luIitPLEZPQ1VTT1VUOiJmb2N1c291dCIrTyxNT1VTRUVOVEVSOiJtb3VzZWVudGVyIitPLE1PVVNFTEVBVkU6Im1vdXNlbGVhdmUiK099LHNuPWZ1bmN0aW9uKGUpe3ZhciB0O2Z1bmN0aW9uIGkoKXtyZXR1cm4gZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9dD1lLChuPWkpLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKHQucHJvdG90eXBlKSxxKG4ucHJvdG90eXBlLmNvbnN0cnVjdG9yPW4sdCk7dmFyIG49aS5wcm90b3R5cGU7cmV0dXJuIG4uaXNXaXRoQ29udGVudD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldFRpdGxlKCl8fHRoaXMuX2dldENvbnRlbnQoKX0sbi5hZGRBdHRhY2htZW50Q2xhc3M9ZnVuY3Rpb24oZSl7Yy5kZWZhdWx0KHRoaXMuZ2V0VGlwRWxlbWVudCgpKS5hZGRDbGFzcyhKdCsiLSIrZSl9LG4uZ2V0VGlwRWxlbWVudD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRpcD10aGlzLnRpcHx8Yy5kZWZhdWx0KHRoaXMuY29uZmlnLnRlbXBsYXRlKVswXSx0aGlzLnRpcH0sbi5zZXRDb250ZW50PWZ1bmN0aW9uKCl7dmFyIGU9Yy5kZWZhdWx0KHRoaXMuZ2V0VGlwRWxlbWVudCgpKSx0PSh0aGlzLnNldEVsZW1lbnRDb250ZW50KGUuZmluZCgiLnBvcG92ZXItaGVhZGVyIiksdGhpcy5nZXRUaXRsZSgpKSx0aGlzLl9nZXRDb250ZW50KCkpOyJmdW5jdGlvbiI9PXR5cGVvZiB0JiYodD10LmNhbGwodGhpcy5lbGVtZW50KSksdGhpcy5zZXRFbGVtZW50Q29udGVudChlLmZpbmQoIi5wb3BvdmVyLWJvZHkiKSx0KSxlLnJlbW92ZUNsYXNzKCJmYWRlIHNob3ciKX0sbi5fZ2V0Q29udGVudD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLWNvbnRlbnQiKXx8dGhpcy5jb25maWcuY29udGVudH0sbi5fY2xlYW5UaXBDbGFzcz1mdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzLmdldFRpcEVsZW1lbnQoKSksdD1lLmF0dHIoImNsYXNzIikubWF0Y2goZW4pO251bGwhPT10JiYwPHQubGVuZ3RoJiZlLnJlbW92ZUNsYXNzKHQuam9pbigiIikpfSxpLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzKS5kYXRhKEt0KSx0PSJvYmplY3QiPT10eXBlb2Ygbj9uOm51bGw7aWYoKGV8fCEvZGlzcG9zZXxoaWRlLy50ZXN0KG4pKSYmKGV8fChlPW5ldyBpKHRoaXMsdCksYy5kZWZhdWx0KHRoaXMpLmRhdGEoS3QsZSkpLCJzdHJpbmciPT10eXBlb2Ygbikpe2lmKHZvaWQgMD09PWVbbl0pdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInK24rJyInKTtlW25dKCl9fSl9LGEoaSxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC42LjIifX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRufX0se2tleToiTkFNRSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGt9fSx7a2V5OiJEQVRBX0tFWSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIEt0fX0se2tleToiRXZlbnQiLGdldDpmdW5jdGlvbigpe3JldHVybiBybn19LHtrZXk6IkVWRU5UX0tFWSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIE99fSx7a2V5OiJEZWZhdWx0VHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG5ufX1dKSxpfShMKSxQPShjLmRlZmF1bHQuZm5ba109c24uX2pRdWVyeUludGVyZmFjZSxjLmRlZmF1bHQuZm5ba10uQ29uc3RydWN0b3I9c24sYy5kZWZhdWx0LmZuW2tdLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYy5kZWZhdWx0LmZuW2tdPVp0LHNuLl9qUXVlcnlJbnRlcmZhY2V9LCJzY3JvbGxzcHkiKSxhbj0iYnMuc2Nyb2xsc3B5Iixvbj0iLiIrYW4sbG49Yy5kZWZhdWx0LmZuW1BdLEk9ImFjdGl2ZSIsZG49InBvc2l0aW9uIixjbj0iLm5hdiwgLmxpc3QtZ3JvdXAiLHVuPSIubmF2LWxpbmsiLHBuPSIubGlzdC1ncm91cC1pdGVtIixobj17b2Zmc2V0OjEwLG1ldGhvZDoiYXV0byIsdGFyZ2V0OiIifSxmbj17b2Zmc2V0OiJudW1iZXIiLG1ldGhvZDoic3RyaW5nIix0YXJnZXQ6IihzdHJpbmd8ZWxlbWVudCkifSxtbj1mdW5jdGlvbigpe2Z1bmN0aW9uIG4oZSx0KXt2YXIgbj10aGlzO3RoaXMuX2VsZW1lbnQ9ZSx0aGlzLl9zY3JvbGxFbGVtZW50PSJCT0RZIj09PWUudGFnTmFtZT93aW5kb3c6ZSx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKHQpLHRoaXMuX3NlbGVjdG9yPXRoaXMuX2NvbmZpZy50YXJnZXQrIiAiK3VuKyIsIit0aGlzLl9jb25maWcudGFyZ2V0KyIgIitwbisiLCIrdGhpcy5fY29uZmlnLnRhcmdldCsiIC5kcm9wZG93bi1pdGVtIix0aGlzLl9vZmZzZXRzPVtdLHRoaXMuX3RhcmdldHM9W10sdGhpcy5fYWN0aXZlVGFyZ2V0PW51bGwsdGhpcy5fc2Nyb2xsSGVpZ2h0PTAsYy5kZWZhdWx0KHRoaXMuX3Njcm9sbEVsZW1lbnQpLm9uKCJzY3JvbGwuYnMuc2Nyb2xsc3B5IixmdW5jdGlvbihlKXtyZXR1cm4gbi5fcHJvY2VzcyhlKX0pLHRoaXMucmVmcmVzaCgpLHRoaXMuX3Byb2Nlc3MoKX12YXIgZT1uLnByb3RvdHlwZTtyZXR1cm4gZS5yZWZyZXNoPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXRoaXMuX3Njcm9sbEVsZW1lbnQ9PT10aGlzLl9zY3JvbGxFbGVtZW50LndpbmRvdz8ib2Zmc2V0IjpkbixpPSJhdXRvIj09PXRoaXMuX2NvbmZpZy5tZXRob2Q/ZTp0aGlzLl9jb25maWcubWV0aG9kLHI9aT09PWRuP3RoaXMuX2dldFNjcm9sbFRvcCgpOjA7dGhpcy5fb2Zmc2V0cz1bXSx0aGlzLl90YXJnZXRzPVtdLHRoaXMuX3Njcm9sbEhlaWdodD10aGlzLl9nZXRTY3JvbGxIZWlnaHQoKSxbXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwodGhpcy5fc2VsZWN0b3IpKS5tYXAoZnVuY3Rpb24oZSl7dmFyIHQsZT11LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQoZSk7aWYodD1lP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoZSk6dCl7dmFyIG49dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihuLndpZHRofHxuLmhlaWdodClyZXR1cm5bYy5kZWZhdWx0KHQpW2ldKCkudG9wK3IsZV19cmV0dXJuIG51bGx9KS5maWx0ZXIoQm9vbGVhbikuc29ydChmdW5jdGlvbihlLHQpe3JldHVybiBlWzBdLXRbMF19KS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3QuX29mZnNldHMucHVzaChlWzBdKSx0Ll90YXJnZXRzLnB1c2goZVsxXSl9KX0sZS5kaXNwb3NlPWZ1bmN0aW9uKCl7Yy5kZWZhdWx0LnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCxhbiksYy5kZWZhdWx0KHRoaXMuX3Njcm9sbEVsZW1lbnQpLm9mZihvbiksdGhpcy5fZWxlbWVudD1udWxsLHRoaXMuX3Njcm9sbEVsZW1lbnQ9bnVsbCx0aGlzLl9jb25maWc9bnVsbCx0aGlzLl9zZWxlY3Rvcj1udWxsLHRoaXMuX29mZnNldHM9bnVsbCx0aGlzLl90YXJnZXRzPW51bGwsdGhpcy5fYWN0aXZlVGFyZ2V0PW51bGwsdGhpcy5fc2Nyb2xsSGVpZ2h0PW51bGx9LGUuX2dldENvbmZpZz1mdW5jdGlvbihlKXt2YXIgdDtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mKGU9byh7fSxobiwib2JqZWN0Ij09dHlwZW9mIGUmJmU/ZTp7fSkpLnRhcmdldCYmdS5pc0VsZW1lbnQoZS50YXJnZXQpJiYoKHQ9Yy5kZWZhdWx0KGUudGFyZ2V0KS5hdHRyKCJpZCIpKXx8KHQ9dS5nZXRVSUQoUCksYy5kZWZhdWx0KGUudGFyZ2V0KS5hdHRyKCJpZCIsdCkpLGUudGFyZ2V0PSIjIit0KSx1LnR5cGVDaGVja0NvbmZpZyhQLGUsZm4pLGV9LGUuX2dldFNjcm9sbFRvcD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9zY3JvbGxFbGVtZW50PT09d2luZG93P3RoaXMuX3Njcm9sbEVsZW1lbnQucGFnZVlPZmZzZXQ6dGhpcy5fc2Nyb2xsRWxlbWVudC5zY3JvbGxUb3B9LGUuX2dldFNjcm9sbEhlaWdodD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9zY3JvbGxFbGVtZW50LnNjcm9sbEhlaWdodHx8TWF0aC5tYXgoZG9jdW1lbnQuYm9keS5zY3JvbGxIZWlnaHQsZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbEhlaWdodCl9LGUuX2dldE9mZnNldEhlaWdodD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9zY3JvbGxFbGVtZW50PT09d2luZG93P3dpbmRvdy5pbm5lckhlaWdodDp0aGlzLl9zY3JvbGxFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodH0sZS5fcHJvY2Vzcz1mdW5jdGlvbigpe3ZhciBlPXRoaXMuX2dldFNjcm9sbFRvcCgpK3RoaXMuX2NvbmZpZy5vZmZzZXQsdD10aGlzLl9nZXRTY3JvbGxIZWlnaHQoKSxuPXRoaXMuX2NvbmZpZy5vZmZzZXQrdC10aGlzLl9nZXRPZmZzZXRIZWlnaHQoKTtpZih0aGlzLl9zY3JvbGxIZWlnaHQhPT10JiZ0aGlzLnJlZnJlc2goKSxuPD1lKXQ9dGhpcy5fdGFyZ2V0c1t0aGlzLl90YXJnZXRzLmxlbmd0aC0xXSx0aGlzLl9hY3RpdmVUYXJnZXQhPT10JiZ0aGlzLl9hY3RpdmF0ZSh0KTtlbHNlIGlmKHRoaXMuX2FjdGl2ZVRhcmdldCYmZTx0aGlzLl9vZmZzZXRzWzBdJiYwPHRoaXMuX29mZnNldHNbMF0pdGhpcy5fYWN0aXZlVGFyZ2V0PW51bGwsdGhpcy5fY2xlYXIoKTtlbHNlIGZvcih2YXIgaT10aGlzLl9vZmZzZXRzLmxlbmd0aDtpLS07KXRoaXMuX2FjdGl2ZVRhcmdldCE9PXRoaXMuX3RhcmdldHNbaV0mJmU+PXRoaXMuX29mZnNldHNbaV0mJih2b2lkIDA9PT10aGlzLl9vZmZzZXRzW2krMV18fGU8dGhpcy5fb2Zmc2V0c1tpKzFdKSYmdGhpcy5fYWN0aXZhdGUodGhpcy5fdGFyZ2V0c1tpXSl9LGUuX2FjdGl2YXRlPWZ1bmN0aW9uKHQpe3RoaXMuX2FjdGl2ZVRhcmdldD10LHRoaXMuX2NsZWFyKCk7dmFyIGU9dGhpcy5fc2VsZWN0b3Iuc3BsaXQoIiwiKS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIGUrJ1tkYXRhLXRhcmdldD0iJyt0KyciXSwnK2UrJ1tocmVmPSInK3QrJyJdJ30pLGU9Yy5kZWZhdWx0KFtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChlLmpvaW4oIiwiKSkpKTsoZS5oYXNDbGFzcygiZHJvcGRvd24taXRlbSIpPyhlLmNsb3Nlc3QoIi5kcm9wZG93biIpLmZpbmQoIi5kcm9wZG93bi10b2dnbGUiKS5hZGRDbGFzcyhJKSxlKTooZS5hZGRDbGFzcyhJKSxlLnBhcmVudHMoY24pLnByZXYodW4rIiwgIitwbikuYWRkQ2xhc3MoSSksZS5wYXJlbnRzKGNuKS5wcmV2KCIubmF2LWl0ZW0iKS5jaGlsZHJlbih1bikpKS5hZGRDbGFzcyhJKSxjLmRlZmF1bHQodGhpcy5fc2Nyb2xsRWxlbWVudCkudHJpZ2dlcigiYWN0aXZhdGUuYnMuc2Nyb2xsc3B5Iix7cmVsYXRlZFRhcmdldDp0fSl9LGUuX2NsZWFyPWZ1bmN0aW9uKCl7W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHRoaXMuX3NlbGVjdG9yKSkuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlLmNsYXNzTGlzdC5jb250YWlucyhJKX0pLmZvckVhY2goZnVuY3Rpb24oZSl7cmV0dXJuIGUuY2xhc3NMaXN0LnJlbW92ZShJKX0pfSxuLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzKS5kYXRhKGFuKTtpZihlfHwoZT1uZXcgbih0aGlzLCJvYmplY3QiPT10eXBlb2YgdCYmdCksYy5kZWZhdWx0KHRoaXMpLmRhdGEoYW4sZSkpLCJzdHJpbmciPT10eXBlb2YgdCl7aWYodm9pZCAwPT09ZVt0XSl0aHJvdyBuZXcgVHlwZUVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrdCsnIicpO2VbdF0oKX19KX0sYShuLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjYuMiJ9fSx7a2V5OiJEZWZhdWx0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gaG59fV0pLG59KCksZ249KGMuZGVmYXVsdCh3aW5kb3cpLm9uKCJsb2FkLmJzLnNjcm9sbHNweS5kYXRhLWFwaSIsZnVuY3Rpb24oKXtmb3IodmFyIGU9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS1zcHk9InNjcm9sbCJdJykpLHQ9ZS5sZW5ndGg7dC0tOyl7dmFyIG49Yy5kZWZhdWx0KGVbdF0pO21uLl9qUXVlcnlJbnRlcmZhY2UuY2FsbChuLG4uZGF0YSgpKX19KSxjLmRlZmF1bHQuZm5bUF09bW4uX2pRdWVyeUludGVyZmFjZSxjLmRlZmF1bHQuZm5bUF0uQ29uc3RydWN0b3I9bW4sYy5kZWZhdWx0LmZuW1BdLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYy5kZWZhdWx0LmZuW1BdPWxuLG1uLl9qUXVlcnlJbnRlcmZhY2V9LCJicy50YWIiKSx2bj1jLmRlZmF1bHQuZm4udGFiLHluPSJhY3RpdmUiLGJuPSIuYWN0aXZlIix3bj0iPiBsaSA+IC5hY3RpdmUiLHhuPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaShlKXt0aGlzLl9lbGVtZW50PWV9dmFyIGU9aS5wcm90b3R5cGU7cmV0dXJuIGUuc2hvdz1mdW5jdGlvbigpe3ZhciBlLHQsbixpLHIscyxhPXRoaXM7dGhpcy5fZWxlbWVudC5wYXJlbnROb2RlJiZ0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERSYmYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKHluKXx8Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKCJkaXNhYmxlZCIpfHx0aGlzLl9lbGVtZW50Lmhhc0F0dHJpYnV0ZSgiZGlzYWJsZWQiKXx8KHQ9Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmNsb3Nlc3QoIi5uYXYsIC5saXN0LWdyb3VwIilbMF0sbj11LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCksdCYmKHI9IlVMIj09PXQubm9kZU5hbWV8fCJPTCI9PT10Lm5vZGVOYW1lP3duOmJuLGk9KGk9Yy5kZWZhdWx0Lm1ha2VBcnJheShjLmRlZmF1bHQodCkuZmluZChyKSkpW2kubGVuZ3RoLTFdKSxyPWMuZGVmYXVsdC5FdmVudCgiaGlkZS5icy50YWIiLHtyZWxhdGVkVGFyZ2V0OnRoaXMuX2VsZW1lbnR9KSxzPWMuZGVmYXVsdC5FdmVudCgic2hvdy5icy50YWIiLHtyZWxhdGVkVGFyZ2V0Oml9KSxpJiZjLmRlZmF1bHQoaSkudHJpZ2dlcihyKSxjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkudHJpZ2dlcihzKSxzLmlzRGVmYXVsdFByZXZlbnRlZCgpKXx8ci5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8KG4mJihlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IobikpLHRoaXMuX2FjdGl2YXRlKHRoaXMuX2VsZW1lbnQsdCkscz1mdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdC5FdmVudCgiaGlkZGVuLmJzLnRhYiIse3JlbGF0ZWRUYXJnZXQ6YS5fZWxlbWVudH0pLHQ9Yy5kZWZhdWx0LkV2ZW50KCJzaG93bi5icy50YWIiLHtyZWxhdGVkVGFyZ2V0Oml9KTtjLmRlZmF1bHQoaSkudHJpZ2dlcihlKSxjLmRlZmF1bHQoYS5fZWxlbWVudCkudHJpZ2dlcih0KX0sZT90aGlzLl9hY3RpdmF0ZShlLGUucGFyZW50Tm9kZSxzKTpzKCkpfSxlLmRpc3Bvc2U9ZnVuY3Rpb24oKXtjLmRlZmF1bHQucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LGduKSx0aGlzLl9lbGVtZW50PW51bGx9LGUuX2FjdGl2YXRlPWZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiBpKCl7cmV0dXJuIHIuX3RyYW5zaXRpb25Db21wbGV0ZShlLHMsbil9dmFyIHI9dGhpcyxzPSghdHx8IlVMIiE9PXQubm9kZU5hbWUmJiJPTCIhPT10Lm5vZGVOYW1lP2MuZGVmYXVsdCh0KS5jaGlsZHJlbihibik6Yy5kZWZhdWx0KHQpLmZpbmQod24pKVswXSx0PW4mJnMmJmMuZGVmYXVsdChzKS5oYXNDbGFzcygiZmFkZSIpO3MmJnQ/KHQ9dS5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudChzKSxjLmRlZmF1bHQocykucmVtb3ZlQ2xhc3MoInNob3ciKS5vbmUodS5UUkFOU0lUSU9OX0VORCxpKS5lbXVsYXRlVHJhbnNpdGlvbkVuZCh0KSk6aSgpfSxlLl90cmFuc2l0aW9uQ29tcGxldGU9ZnVuY3Rpb24oZSx0LG4pe3QmJihjLmRlZmF1bHQodCkucmVtb3ZlQ2xhc3MoeW4pLChpPWMuZGVmYXVsdCh0LnBhcmVudE5vZGUpLmZpbmQoIj4gLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSIpWzBdKSYmYy5kZWZhdWx0KGkpLnJlbW92ZUNsYXNzKHluKSwidGFiIj09PXQuZ2V0QXR0cmlidXRlKCJyb2xlIikpJiZ0LnNldEF0dHJpYnV0ZSgiYXJpYS1zZWxlY3RlZCIsITEpLGMuZGVmYXVsdChlKS5hZGRDbGFzcyh5biksInRhYiI9PT1lLmdldEF0dHJpYnV0ZSgicm9sZSIpJiZlLnNldEF0dHJpYnV0ZSgiYXJpYS1zZWxlY3RlZCIsITApLHUucmVmbG93KGUpLGUuY2xhc3NMaXN0LmNvbnRhaW5zKCJmYWRlIikmJmUuY2xhc3NMaXN0LmFkZCgic2hvdyIpO3ZhciBpPWUucGFyZW50Tm9kZTsoaT1pJiYiTEkiPT09aS5ub2RlTmFtZT9pLnBhcmVudE5vZGU6aSkmJmMuZGVmYXVsdChpKS5oYXNDbGFzcygiZHJvcGRvd24tbWVudSIpJiYoKHQ9Yy5kZWZhdWx0KGUpLmNsb3Nlc3QoIi5kcm9wZG93biIpWzBdKSYmKGk9W10uc2xpY2UuY2FsbCh0LnF1ZXJ5U2VsZWN0b3JBbGwoIi5kcm9wZG93bi10b2dnbGUiKSksYy5kZWZhdWx0KGkpLmFkZENsYXNzKHluKSksZS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCEwKSksbiYmbigpfSxpLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzKSx0PWUuZGF0YShnbik7aWYodHx8KHQ9bmV3IGkodGhpcyksZS5kYXRhKGduLHQpKSwic3RyaW5nIj09dHlwZW9mIG4pe2lmKHZvaWQgMD09PXRbbl0pdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInK24rJyInKTt0W25dKCl9fSl9LGEoaSxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC42LjIifX1dKSxpfSgpLCQ9KGMuZGVmYXVsdChkb2N1bWVudCkub24oImNsaWNrLmJzLnRhYi5kYXRhLWFwaSIsJ1tkYXRhLXRvZ2dsZT0idGFiIl0sIFtkYXRhLXRvZ2dsZT0icGlsbCJdLCBbZGF0YS10b2dnbGU9Imxpc3QiXScsZnVuY3Rpb24oZSl7ZS5wcmV2ZW50RGVmYXVsdCgpLHhuLl9qUXVlcnlJbnRlcmZhY2UuY2FsbChjLmRlZmF1bHQodGhpcyksInNob3ciKX0pLGMuZGVmYXVsdC5mbi50YWI9eG4uX2pRdWVyeUludGVyZmFjZSxjLmRlZmF1bHQuZm4udGFiLkNvbnN0cnVjdG9yPXhuLGMuZGVmYXVsdC5mbi50YWIubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBjLmRlZmF1bHQuZm4udGFiPXZuLHhuLl9qUXVlcnlJbnRlcmZhY2V9LCJ0b2FzdCIpLEVuPSJicy50b2FzdCIsdD0iLiIrRW4sX249Yy5kZWZhdWx0LmZuWyRdLFRuPSJzaG93IixTbj0ic2hvd2luZyIsQ249ImNsaWNrLmRpc21pc3MiK3QsQW49e2FuaW1hdGlvbjohMCxhdXRvaGlkZTohMCxkZWxheTo1MDB9LE1uPXthbmltYXRpb246ImJvb2xlYW4iLGF1dG9oaWRlOiJib29sZWFuIixkZWxheToibnVtYmVyIn0sRG49ZnVuY3Rpb24oKXtmdW5jdGlvbiBpKGUsdCl7dGhpcy5fZWxlbWVudD1lLHRoaXMuX2NvbmZpZz10aGlzLl9nZXRDb25maWcodCksdGhpcy5fdGltZW91dD1udWxsLHRoaXMuX3NldExpc3RlbmVycygpfXZhciBlPWkucHJvdG90eXBlO3JldHVybiBlLnNob3c9ZnVuY3Rpb24oKXt2YXIgZSx0PXRoaXMsbj1jLmRlZmF1bHQuRXZlbnQoInNob3cuYnMudG9hc3QiKTtjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkudHJpZ2dlcihuKSxuLmlzRGVmYXVsdFByZXZlbnRlZCgpfHwodGhpcy5fY2xlYXJUaW1lb3V0KCksdGhpcy5fY29uZmlnLmFuaW1hdGlvbiYmdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJmYWRlIiksbj1mdW5jdGlvbigpe3QuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShTbiksdC5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKFRuKSxjLmRlZmF1bHQodC5fZWxlbWVudCkudHJpZ2dlcigic2hvd24uYnMudG9hc3QiKSx0Ll9jb25maWcuYXV0b2hpZGUmJih0Ll90aW1lb3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmhpZGUoKX0sdC5fY29uZmlnLmRlbGF5KSl9LHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZSIpLHUucmVmbG93KHRoaXMuX2VsZW1lbnQpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChTbiksdGhpcy5fY29uZmlnLmFuaW1hdGlvbj8oZT11LmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5vbmUodS5UUkFOU0lUSU9OX0VORCxuKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChlKSk6bigpKX0sZS5oaWRlPWZ1bmN0aW9uKCl7dmFyIGU7dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoVG4pJiYoZT1jLmRlZmF1bHQuRXZlbnQoImhpZGUuYnMudG9hc3QiKSxjLmRlZmF1bHQodGhpcy5fZWxlbWVudCkudHJpZ2dlcihlKSxlLmlzRGVmYXVsdFByZXZlbnRlZCgpfHx0aGlzLl9jbG9zZSgpKX0sZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5fY2xlYXJUaW1lb3V0KCksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoVG4pJiZ0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoVG4pLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5vZmYoQ24pLGMuZGVmYXVsdC5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsRW4pLHRoaXMuX2VsZW1lbnQ9bnVsbCx0aGlzLl9jb25maWc9bnVsbH0sZS5fZ2V0Q29uZmlnPWZ1bmN0aW9uKGUpe3JldHVybiBlPW8oe30sQW4sYy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLmRhdGEoKSwib2JqZWN0Ij09dHlwZW9mIGUmJmU/ZTp7fSksdS50eXBlQ2hlY2tDb25maWcoJCxlLHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFR5cGUpLGV9LGUuX3NldExpc3RlbmVycz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7Yy5kZWZhdWx0KHRoaXMuX2VsZW1lbnQpLm9uKENuLCdbZGF0YS1kaXNtaXNzPSJ0b2FzdCJdJyxmdW5jdGlvbigpe3JldHVybiBlLmhpZGUoKX0pfSxlLl9jbG9zZT1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXtuLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoImhpZGUiKSxjLmRlZmF1bHQobi5fZWxlbWVudCkudHJpZ2dlcigiaGlkZGVuLmJzLnRvYXN0Iil9dmFyIHQsbj10aGlzO3RoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShUbiksdGhpcy5fY29uZmlnLmFuaW1hdGlvbj8odD11LmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpLGMuZGVmYXVsdCh0aGlzLl9lbGVtZW50KS5vbmUodS5UUkFOU0lUSU9OX0VORCxlKS5lbXVsYXRlVHJhbnNpdGlvbkVuZCh0KSk6ZSgpfSxlLl9jbGVhclRpbWVvdXQ9ZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQodGhpcy5fdGltZW91dCksdGhpcy5fdGltZW91dD1udWxsfSxpLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPWMuZGVmYXVsdCh0aGlzKSx0PWUuZGF0YShFbik7aWYodHx8KHQ9bmV3IGkodGhpcywib2JqZWN0Ij09dHlwZW9mIG4mJm4pLGUuZGF0YShFbix0KSksInN0cmluZyI9PXR5cGVvZiBuKXtpZih2b2lkIDA9PT10W25dKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytuKyciJyk7dFtuXSh0aGlzKX19KX0sYShpLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjYuMiJ9fSx7a2V5OiJEZWZhdWx0VHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIE1ufX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIEFufX1dKSxpfSgpO2MuZGVmYXVsdC5mblskXT1Ebi5falF1ZXJ5SW50ZXJmYWNlLGMuZGVmYXVsdC5mblskXS5Db25zdHJ1Y3Rvcj1EbixjLmRlZmF1bHQuZm5bJF0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBjLmRlZmF1bHQuZm5bJF09X24sRG4uX2pRdWVyeUludGVyZmFjZX0sZS5BbGVydD1uLGUuQnV0dG9uPVYsZS5DYXJvdXNlbD1yLGUuQ29sbGFwc2U9cGUsZS5Ecm9wZG93bj1ULGUuTW9kYWw9T3QsZS5Qb3BvdmVyPXNuLGUuU2Nyb2xsc3B5PW1uLGUuVGFiPXhuLGUuVG9hc3Q9RG4sZS5Ub29sdGlwPUwsZS5VdGlsPXUsT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSk7dmFyIEFUSzE0PWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGZpcmUoZSx0LG4pe3Q9bmV3ICQuRXZlbnQodCk7cmV0dXJuIGUudHJpZ2dlcih0LG4pLCExIT09dC5yZXN1bHR9ZnVuY3Rpb24gYWxsb3dBY3Rpb24oZSl7dmFyIHQ9ZS5kYXRhKCJjb25maXJtIik7cmV0dXJuIXR8fGZpcmUoZSwiY29uZmlybSIpJiZ3aW5kb3cuY29uZmlybSh0KX1mdW5jdGlvbiBoYW5kbGVNZXRob2QoZSl7dmFyIHQ9ZS5hdHRyKCJocmVmIiksZT1lLmRhdGEoIm1ldGhvZCIpLG49ImdldCI9PT1lLnRvTG93ZXJDYXNlKCk/ImdldCI6InBvc3QiLG49JCgiPGZvcm0gbWV0aG9kPSciK24rIicgYWN0aW9uPSciK3QrIic+PC9mb3JtPiIpLmhpZGUoKTsobj0iZ2V0IiE9PWUudG9Mb3dlckNhc2UoKSYmInBvc3QiIT09ZS50b0xvd2VyQ2FzZSgpP24uYXBwZW5kKCI8aW5wdXQgbmFtZT0nX21ldGhvZCcgdmFsdWU9JyIrZSsiJyB0eXBlPSdoaWRkZW4nIC8+Iik6bikuYXBwZW5kVG8oImJvZHkiKSxuLnN1Ym1pdCgpLG4ucmVtb3ZlKCl9cmV0dXJuICQoZG9jdW1lbnQpLm9uKCJjbGljayIsImFbZGF0YS1yZW1vdGVdLCBhW2RhdGEtbWV0aG9kXSwgYVtkYXRhLWNvbmZpcm1dIixmdW5jdGlvbihlKXt2YXIgdD0kKHRoaXMpO2lmKCFhbGxvd0FjdGlvbih0KSlyZXR1cm4hMTt0LmRhdGEoInJlbW90ZSIpPyhBVEsxNC5oYW5kbGVSZW1vdGUodGhpcyksZS5wcmV2ZW50RGVmYXVsdCgpKTp0LmRhdGEoIm1ldGhvZCIpJiYoaGFuZGxlTWV0aG9kKHQpLGUucHJldmVudERlZmF1bHQoKSl9KSwkKGRvY3VtZW50KS5vbigiY2xpY2siLCdmb3JtW2RhdGEtcmVtb3RlXSBidXR0b25bdHlwZT0ic3VibWl0Il1bbmFtZV0nLGZ1bmN0aW9uKGUpe3ZhciB0PSQodGhpcyksbj10LmNsb3Nlc3QoImZvcm0iKTtyZXR1cm4gZS5wcmV2ZW50RGVmYXVsdCgpLEFUSzE0LmhhbmRsZVJlbW90ZShuWzBdLFt7bmFtZTp0LmF0dHIoIm5hbWUiKSx2YWx1ZTp0LmF0dHIoInZhbHVlIil9XSksITF9KSwkKGRvY3VtZW50KS5vbigic3VibWl0IiwiZm9ybVtkYXRhLXJlbW90ZV0iLGZ1bmN0aW9uKGUpe0FUSzE0LmhhbmRsZVJlbW90ZSh0aGlzKSxlLnByZXZlbnREZWZhdWx0KCl9KSwkKGRvY3VtZW50KS5hamF4U3RhcnQoZnVuY3Rpb24oKXskKGRvY3VtZW50LmJvZHkpLmFkZENsYXNzKCJsb2FkaW5nIil9KS5hamF4U3RvcChmdW5jdGlvbigpeyQoZG9jdW1lbnQuYm9keSkucmVtb3ZlQ2xhc3MoImxvYWRpbmciKX0pLCQuYWpheFNldHVwKHtjb252ZXJ0ZXJzOnsidGV4dCBjb25zY3JpcHQiOiEwfSxkYXRhVHlwZToiY29uc2NyaXB0In0pLHthY3Rpb246JCgibWV0YVtuYW1lPSd4LWFjdGlvbiddIikuYXR0cigiY29udGVudCIpLGhhbmRsZVJlbW90ZTpmdW5jdGlvbihlbGVtZW50LGV4dHJhUGFyYW1zKXt2YXIgbWV0aG9kLHVybCxkYXRhLGZvcm1EYXRhLCRsaW5rLCRmb3JtLCRlbGVtZW50PSQoZWxlbWVudCksc2V0dGluZ3MsZGF0YVR5cGU9JGVsZW1lbnQuZGF0YSgidHlwZSIpfHwkLmFqYXhTZXR0aW5ncy5kYXRhVHlwZTtpZihlbGVtZW50IGluc3RhbmNlb2YgalF1ZXJ5JiYoZWxlbWVudD1lbGVtZW50WzBdKSx2b2lkIDA9PT1leHRyYVBhcmFtcyYmKGV4dHJhUGFyYW1zPVtdKSxtZXRob2Q9JGVsZW1lbnQuaXMoImZvcm0iKT8kZWxlbWVudC5hdHRyKCJtZXRob2QiKTokZWxlbWVudC5kYXRhKCJtZXRob2QiKSxtZXRob2Q9bWV0aG9kfHwiR0VUIixtZXRob2Q9bWV0aG9kLnRvVXBwZXJDYXNlKCksJGVsZW1lbnQuaXMoImZvcm0iKSlpZigkZm9ybT0kZWxlbWVudCx1cmw9JGVsZW1lbnQuYXR0cigiYWN0aW9uIiksIlBPU1QiPT1tZXRob2QmJiJGb3JtRGF0YSJpbiB3aW5kb3cpZm9yKHZhciBpIGluIGZvcm1EYXRhPW5ldyBGb3JtRGF0YShlbGVtZW50KSxleHRyYVBhcmFtcylmb3JtRGF0YS5hcHBlbmQoZXh0cmFQYXJhbXNbaV0ubmFtZSxleHRyYVBhcmFtc1tpXS52YWx1ZSk7ZWxzZSBkYXRhPSRlbGVtZW50LnNlcmlhbGl6ZUFycmF5KCksZGF0YT1kYXRhLmNvbmNhdChleHRyYVBhcmFtcyk7ZWxzZSAkbGluaz0kZWxlbWVudCx1cmw9JGVsZW1lbnQuYXR0cigiaHJlZiIpLGRhdGE9bnVsbDsiR0VUIj09bWV0aG9kJiYodXJsKz0wPD11cmwuaW5kZXhPZigiPyIpPyImIjoiPyIsdXJsKz0iX194aHJfcmVxdWVzdD0xIiksc2V0dGluZ3M9e3VybDp1cmwsdHlwZTptZXRob2QsZGF0YVR5cGU6ZGF0YVR5cGUsYmVmb3JlU2VuZDpmdW5jdGlvbihlLHQpe3JldHVybiBmaXJlKCRlbGVtZW50LCJhamF4OmJlZm9yZVNlbmQiLFtlLHRdKX0sc3VjY2VzczpmdW5jdGlvbihkYXRhLHN0YXR1cyx4aHIpeyRlbGVtZW50LnRyaWdnZXIoImFqYXg6c3VjY2VzcyIsW2RhdGEsc3RhdHVzLHhocl0pLCJjb25zY3JpcHQiPT09ZGF0YVR5cGUmJmV2YWwoZGF0YSl9LGNvbXBsZXRlOmZ1bmN0aW9uKGUsdCl7JGVsZW1lbnQudHJpZ2dlcigiYWpheDpjb21wbGV0ZSIsW2UsdF0pfSxlcnJvcjpmdW5jdGlvbihlLHQsbil7JGVsZW1lbnQudHJpZ2dlcigiYWpheDplcnJvciIsW2UsdCxuXSl9fSxmb3JtRGF0YT8oc2V0dGluZ3MuZGF0YT1mb3JtRGF0YSxzZXR0aW5ncy5jb250ZW50VHlwZT0hMSxzZXR0aW5ncy5wcm9jZXNzRGF0YT0hMSk6c2V0dGluZ3MuZGF0YT1kYXRhLCQuYWpheChzZXR0aW5ncyl9fX0oKSxTd2lwZXI9KCFmdW5jdGlvbihzKXtmdW5jdGlvbiBhKGUsdCxuKXtyZXR1cm4gZS5yZXBsYWNlKHQsIkAiLCJnIikucmVwbGFjZShuLCIuIiwiZyIpfXMuZm4udW5vYmZ1c2NhdGU9ZnVuY3Rpb24oZSl7dmFyIHI9cy5leHRlbmQoe30scy5mbi51bm9iZnVzY2F0ZS5kZWZhdWx0cyxlKTtyZXR1cm4gdGhpcy5ub3QoIi51bm9iZnVzY2F0ZWQiKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9cyh0aGlzKSx0PWEoZS50ZXh0KCksci5hdHN0cmluZyxyLmRvdHN0cmluZyksbj1lLmRhdGEoInRleHQiKXx8dCxpPWUuZGF0YSgiYXR0cnMiKXx8e307ZS50ZXh0KHQpLGUuaXMoImEiKT9lLmF0dHIoImhyZWYiLGEoZS5hdHRyKCJocmVmIiksci5hdHN0cmluZyxyLmRvdHN0cmluZykpOigodD1zKCI8YT4iLHtocmVmOiJtYWlsdG86Iit0fSkpLnRleHQobiksdC5hdHRyKGkpLGUuaHRtbCh0KSksZS5hZGRDbGFzcygidW5vYmZ1c2NhdGVkIil9KX0scy5mbi51bm9iZnVzY2F0ZS5kZWZhdWx0cz17YXRzdHJpbmc6IlthdC1zaWduXSIsZG90c3RyaW5nOiJbZG90LXNpZ25dIn19KGpRdWVyeSksZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcyhlKXtyZXR1cm4gbnVsbCE9PWUmJiJvYmplY3QiPT10eXBlb2YgZSYmImNvbnN0cnVjdG9yImluIGUmJmUuY29uc3RydWN0b3I9PT1PYmplY3R9ZnVuY3Rpb24gcih0PXt9LG49e30pe2NvbnN0IGk9WyJfX3Byb3RvX18iLCJjb25zdHJ1Y3RvciIsInByb3RvdHlwZSJdO09iamVjdC5rZXlzKG4pLmZpbHRlcihlPT5pLmluZGV4T2YoZSk8MCkuZm9yRWFjaChlPT57dm9pZCAwPT09dFtlXT90W2VdPW5bZV06cyhuW2VdKSYmcyh0W2VdKSYmMDxPYmplY3Qua2V5cyhuW2VdKS5sZW5ndGgmJnIodFtlXSxuW2VdKX0pfWNvbnN0IHQ9e2JvZHk6e30sYWRkRXZlbnRMaXN0ZW5lcigpe30scmVtb3ZlRXZlbnRMaXN0ZW5lcigpe30sYWN0aXZlRWxlbWVudDp7Ymx1cigpe30sbm9kZU5hbWU6IiJ9LHF1ZXJ5U2VsZWN0b3IoKXtyZXR1cm4gbnVsbH0scXVlcnlTZWxlY3RvckFsbCgpe3JldHVybltdfSxnZXRFbGVtZW50QnlJZCgpe3JldHVybiBudWxsfSxjcmVhdGVFdmVudCgpe3JldHVybntpbml0RXZlbnQoKXt9fX0sY3JlYXRlRWxlbWVudCgpe3JldHVybntjaGlsZHJlbjpbXSxjaGlsZE5vZGVzOltdLHN0eWxlOnt9LHNldEF0dHJpYnV0ZSgpe30sZ2V0RWxlbWVudHNCeVRhZ05hbWUoKXtyZXR1cm5bXX19fSxjcmVhdGVFbGVtZW50TlMoKXtyZXR1cm57fX0saW1wb3J0Tm9kZSgpe3JldHVybiBudWxsfSxsb2NhdGlvbjp7aGFzaDoiIixob3N0OiIiLGhvc3RuYW1lOiIiLGhyZWY6IiIsb3JpZ2luOiIiLHBhdGhuYW1lOiIiLHByb3RvY29sOiIiLHNlYXJjaDoiIn19O2Z1bmN0aW9uIE8oKXt2YXIgZT0idW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50Ont9O3JldHVybiByKGUsdCksZX1jb25zdCB5PXtkb2N1bWVudDp0LG5hdmlnYXRvcjp7dXNlckFnZW50OiIifSxsb2NhdGlvbjp7aGFzaDoiIixob3N0OiIiLGhvc3RuYW1lOiIiLGhyZWY6IiIsb3JpZ2luOiIiLHBhdGhuYW1lOiIiLHByb3RvY29sOiIiLHNlYXJjaDoiIn0saGlzdG9yeTp7cmVwbGFjZVN0YXRlKCl7fSxwdXNoU3RhdGUoKXt9LGdvKCl7fSxiYWNrKCl7fX0sQ3VzdG9tRXZlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30sYWRkRXZlbnRMaXN0ZW5lcigpe30scmVtb3ZlRXZlbnRMaXN0ZW5lcigpe30sZ2V0Q29tcHV0ZWRTdHlsZSgpe3JldHVybntnZXRQcm9wZXJ0eVZhbHVlKCl7cmV0dXJuIiJ9fX0sSW1hZ2UoKXt9LERhdGUoKXt9LHNjcmVlbjp7fSxzZXRUaW1lb3V0KCl7fSxjbGVhclRpbWVvdXQoKXt9LG1hdGNoTWVkaWEoKXtyZXR1cm57fX0scmVxdWVzdEFuaW1hdGlvbkZyYW1lKGUpe3JldHVybiJ1bmRlZmluZWQiPT10eXBlb2Ygc2V0VGltZW91dD8oZSgpLG51bGwpOnNldFRpbWVvdXQoZSwwKX0sY2FuY2VsQW5pbWF0aW9uRnJhbWUoZSl7InVuZGVmaW5lZCIhPXR5cGVvZiBzZXRUaW1lb3V0JiZjbGVhclRpbWVvdXQoZSl9fTtmdW5jdGlvbiAkKCl7dmFyIGU9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Ont9O3JldHVybiByKGUseSksZX1mdW5jdGlvbiBfKGU9IiIpe3JldHVybiBlLnRyaW0oKS5zcGxpdCgiICIpLmZpbHRlcihlPT4hIWUudHJpbSgpKX1mdW5jdGlvbiBUKGUsdD0wKXtyZXR1cm4gc2V0VGltZW91dChlLHQpfWZ1bmN0aW9uIHYoKXtyZXR1cm4gRGF0ZS5ub3coKX1mdW5jdGlvbiBOKGUsdD0ieCIpe3ZhciBuPSQoKTtsZXQgaSxyLHM7ZT1mdW5jdGlvbihlKXt2YXIgdD0kKCk7bGV0IG47cmV0dXJuIG49KG49IShuPXQuZ2V0Q29tcHV0ZWRTdHlsZT90LmdldENvbXB1dGVkU3R5bGUoZSxudWxsKTpuKSYmZS5jdXJyZW50U3R5bGU/ZS5jdXJyZW50U3R5bGU6bil8fGUuc3R5bGV9KGUpO3JldHVybiBuLldlYktpdENTU01hdHJpeD8oNjwocj1lLnRyYW5zZm9ybXx8ZS53ZWJraXRUcmFuc2Zvcm0pLnNwbGl0KCIsIikubGVuZ3RoJiYocj1yLnNwbGl0KCIsICIpLm1hcChlPT5lLnJlcGxhY2UoIiwiLCIuIikpLmpvaW4oIiwgIikpLHM9bmV3IG4uV2ViS2l0Q1NTTWF0cml4KCJub25lIj09PXI/IiI6cikpOihzPWUuTW96VHJhbnNmb3JtfHxlLk9UcmFuc2Zvcm18fGUuTXNUcmFuc2Zvcm18fGUubXNUcmFuc2Zvcm18fGUudHJhbnNmb3JtfHxlLmdldFByb3BlcnR5VmFsdWUoInRyYW5zZm9ybSIpLnJlcGxhY2UoInRyYW5zbGF0ZSgiLCJtYXRyaXgoMSwgMCwgMCwgMSwiKSxpPXMudG9TdHJpbmcoKS5zcGxpdCgiLCIpKSwieCI9PT10JiYocj1uLldlYktpdENTU01hdHJpeD9zLm00MToxNj09PWkubGVuZ3RoP3BhcnNlRmxvYXQoaVsxMl0pOnBhcnNlRmxvYXQoaVs0XSkpLChyPSJ5Ij09PXQ/bi5XZWJLaXRDU1NNYXRyaXg/cy5tNDI6MTY9PT1pLmxlbmd0aD9wYXJzZUZsb2F0KGlbMTNdKTpwYXJzZUZsb2F0KGlbNV0pOnIpfHwwfWZ1bmN0aW9uIGQoZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmZS5jb25zdHJ1Y3RvciYmIk9iamVjdCI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSl9ZnVuY3Rpb24gcCguLi50KXt2YXIgbixpPU9iamVjdCh0WzBdKTtjb25zdCByPVsiX19wcm90b19fIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiXTtmb3IobGV0IGU9MTtlPHQubGVuZ3RoO2UrPTEpe3ZhciBzPXRbZV07aWYobnVsbCE9cyYmKG49cywhKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ2b2lkIDAhPT13aW5kb3cuSFRNTEVsZW1lbnQ/biBpbnN0YW5jZW9mIEhUTUxFbGVtZW50Om4mJigxPT09bi5ub2RlVHlwZXx8MTE9PT1uLm5vZGVUeXBlKSkpKXt2YXIgYT1PYmplY3Qua2V5cyhPYmplY3QocykpLmZpbHRlcihlPT5yLmluZGV4T2YoZSk8MCk7Zm9yKGxldCBlPTAsdD1hLmxlbmd0aDtlPHQ7ZSs9MSl7dmFyIG89YVtlXSxsPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocyxvKTt2b2lkIDAhPT1sJiZsLmVudW1lcmFibGUmJihkKGlbb10pJiZkKHNbb10pP3Nbb10uX19zd2lwZXJfXz9pW29dPXNbb106cChpW29dLHNbb10pOmQoaVtvXSl8fCFkKHNbb10pfHwoaVtvXT17fSxzW29dLl9fc3dpcGVyX18pP2lbb109c1tvXTpwKGlbb10sc1tvXSkpfX19cmV0dXJuIGl9ZnVuY3Rpb24gRyhlLHQsbil7ZS5zdHlsZS5zZXRQcm9wZXJ0eSh0LG4pfWZ1bmN0aW9uIGsoe3N3aXBlcjpuLHRhcmdldFBvc2l0aW9uOmksc2lkZTpyfSl7Y29uc3Qgcz0kKCksYT0tbi50cmFuc2xhdGU7bGV0IG89bnVsbCxsO2NvbnN0IGQ9bi5wYXJhbXMuc3BlZWQsYz0obi53cmFwcGVyRWwuc3R5bGUuc2Nyb2xsU25hcFR5cGU9Im5vbmUiLHMuY2FuY2VsQW5pbWF0aW9uRnJhbWUobi5jc3NNb2RlRnJhbWVJRCksaT5hPyJuZXh0IjoicHJldiIpLHU9KGUsdCk9PiJuZXh0Ij09PWMmJnQ8PWV8fCJwcmV2Ij09PWMmJmU8PXQscD0oKT0+e2w9KG5ldyBEYXRlKS5nZXRUaW1lKCksbnVsbD09PW8mJihvPWwpO3ZhciBlPU1hdGgubWF4KE1hdGgubWluKChsLW8pL2QsMSksMCksZT0uNS1NYXRoLmNvcyhlKk1hdGguUEkpLzI7bGV0IHQ9YStlKihpLWEpO3UodCxpKSYmKHQ9aSksbi53cmFwcGVyRWwuc2Nyb2xsVG8oe1tyXTp0fSksdSh0LGkpPyhuLndyYXBwZXJFbC5zdHlsZS5vdmVyZmxvdz0iaGlkZGVuIixuLndyYXBwZXJFbC5zdHlsZS5zY3JvbGxTbmFwVHlwZT0iIixzZXRUaW1lb3V0KCgpPT57bi53cmFwcGVyRWwuc3R5bGUub3ZlcmZsb3c9IiIsbi53cmFwcGVyRWwuc2Nyb2xsVG8oe1tyXTp0fSl9KSxzLmNhbmNlbEFuaW1hdGlvbkZyYW1lKG4uY3NzTW9kZUZyYW1lSUQpKTpuLmNzc01vZGVGcmFtZUlEPXMucmVxdWVzdEFuaW1hdGlvbkZyYW1lKHApfTtwKCl9ZnVuY3Rpb24gYShlKXtyZXR1cm4gZS5xdWVyeVNlbGVjdG9yKCIuc3dpcGVyLXNsaWRlLXRyYW5zZm9ybSIpfHxlLnNoYWRvd1Jvb3QmJmUuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuc3dpcGVyLXNsaWRlLXRyYW5zZm9ybSIpfHxlfWZ1bmN0aW9uIFkoZSx0PSIiKXt2YXIgbj0kKCksaT1bLi4uZS5jaGlsZHJlbl07cmV0dXJuIG4uSFRNTFNsb3RFbGVtZW50JiZlIGluc3RhbmNlb2YgSFRNTFNsb3RFbGVtZW50JiZpLnB1c2goLi4uZS5hc3NpZ25lZEVsZW1lbnRzKCkpLHQ/aS5maWx0ZXIoZT0+ZS5tYXRjaGVzKHQpKTppfWZ1bmN0aW9uIGIoZSx0KXt2YXIgbj0kKCk7bGV0IGk9dC5jb250YWlucyhlKTtyZXR1cm4haSYmbi5IVE1MU2xvdEVsZW1lbnQmJnQgaW5zdGFuY2VvZiBIVE1MU2xvdEVsZW1lbnQmJihuPVsuLi50LmFzc2lnbmVkRWxlbWVudHMoKV0saT0oaT1uLmluY2x1ZGVzKGUpKXx8ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49W3RdOzA8bi5sZW5ndGg7KXt2YXIgaT1uLnNoaWZ0KCk7aWYoZT09PWkpcmV0dXJuITA7bi5wdXNoKC4uLmkuY2hpbGRyZW4sLi4uaS5zaGFkb3dSb290P2kuc2hhZG93Um9vdC5jaGlsZHJlbjpbXSwuLi5pLmFzc2lnbmVkRWxlbWVudHM/aS5hc3NpZ25lZEVsZW1lbnRzKCk6W10pfX0oZSx0KSksaX1mdW5jdGlvbiBQKGUpe3RyeXtjb25zb2xlLndhcm4oZSl9Y2F0Y2goZSl7fX1mdW5jdGlvbiBTKGUsdD1bXSl7ZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGUpO3JldHVybiBlLmNsYXNzTGlzdC5hZGQoLi4uQXJyYXkuaXNBcnJheSh0KT90Ol8odCkpLGV9ZnVuY3Rpb24gaihlKXt2YXIgdD0kKCksbj1PKCksaT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG49bi5ib2R5LHI9ZS5jbGllbnRUb3B8fG4uY2xpZW50VG9wfHwwLG49ZS5jbGllbnRMZWZ0fHxuLmNsaWVudExlZnR8fDAscz1lPT09dD90LnNjcm9sbFk6ZS5zY3JvbGxUb3AsdD1lPT09dD90LnNjcm9sbFg6ZS5zY3JvbGxMZWZ0O3JldHVybnt0b3A6aS50b3Arcy1yLGxlZnQ6aS5sZWZ0K3Qtbn19ZnVuY3Rpb24gWChlLHQpe3JldHVybiAkKCkuZ2V0Q29tcHV0ZWRTdHlsZShlLG51bGwpLmdldFByb3BlcnR5VmFsdWUodCl9ZnVuY3Rpb24gQyhlKXtsZXQgdD1lLG47aWYodCl7Zm9yKG49MDtudWxsIT09KHQ9dC5wcmV2aW91c1NpYmxpbmcpOykxPT09dC5ub2RlVHlwZSYmKG4rPTEpO3JldHVybiBufX1mdW5jdGlvbiBxKGUsdCl7dmFyIG49W107bGV0IGk9ZS5wYXJlbnRFbGVtZW50O2Zvcig7aTspdCYmIWkubWF0Y2hlcyh0KXx8bi5wdXNoKGkpLGk9aS5wYXJlbnRFbGVtZW50O3JldHVybiBufWZ1bmN0aW9uIGcobixpKXtpJiZuLmFkZEV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLGZ1bmN0aW9uIGUodCl7dC50YXJnZXQ9PT1uJiYoaS5jYWxsKG4sdCksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJ0cmFuc2l0aW9uZW5kIixlKSl9KX1mdW5jdGlvbiBWKGUsdCxuKXt2YXIgaT0kKCk7cmV0dXJuIG4/ZVsid2lkdGgiPT09dD8ib2Zmc2V0V2lkdGgiOiJvZmZzZXRIZWlnaHQiXStwYXJzZUZsb2F0KGkuZ2V0Q29tcHV0ZWRTdHlsZShlLG51bGwpLmdldFByb3BlcnR5VmFsdWUoIndpZHRoIj09PXQ/Im1hcmdpbi1yaWdodCI6Im1hcmdpbi10b3AiKSkrcGFyc2VGbG9hdChpLmdldENvbXB1dGVkU3R5bGUoZSxudWxsKS5nZXRQcm9wZXJ0eVZhbHVlKCJ3aWR0aCI9PT10PyJtYXJnaW4tbGVmdCI6Im1hcmdpbi1ib3R0b20iKSk6ZS5vZmZzZXRXaWR0aH1mdW5jdGlvbiBBKGUpe3JldHVybihBcnJheS5pc0FycmF5KGUpP2U6W2VdKS5maWx0ZXIoZT0+ISFlKX1mdW5jdGlvbiB3KHQpe3JldHVybiBlPT4wPE1hdGguYWJzKGUpJiZ0LmJyb3dzZXImJnQuYnJvd3Nlci5uZWVkM2RGaXgmJk1hdGguYWJzKGUpJTkwPT0wP2UrLjAwMTplfWZ1bmN0aW9uIE0oZSx0PSIiKXsidW5kZWZpbmVkIiE9dHlwZW9mIHRydXN0ZWRUeXBlcz9lLmlubmVySFRNTD10cnVzdGVkVHlwZXMuY3JlYXRlUG9saWN5KCJodG1sIix7Y3JlYXRlSFRNTDplPT5lfSkuY3JlYXRlSFRNTCh0KTplLmlubmVySFRNTD10fWxldCBJO2Z1bmN0aW9uIHooKXt2YXIgZSx0O3JldHVybiBJPUl8fChlPSQoKSx7c21vb3RoU2Nyb2xsOih0PU8oKSkuZG9jdW1lbnRFbGVtZW50JiZ0LmRvY3VtZW50RWxlbWVudC5zdHlsZSYmInNjcm9sbEJlaGF2aW9yImluIHQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLHRvdWNoOiEhKCJvbnRvdWNoc3RhcnQiaW4gZXx8ZS5Eb2N1bWVudFRvdWNoJiZ0IGluc3RhbmNlb2YgZS5Eb2N1bWVudFRvdWNoKX0pfWxldCBIO2Z1bmN0aW9uIFIoZT17fSl7cmV0dXJuIEg9SHx8ZnVuY3Rpb24oe3VzZXJBZ2VudDplfT17fSl7dmFyIHQ9eigpLG49KHM9JCgpKS5uYXZpZ2F0b3IucGxhdGZvcm0sZT1lfHxzLm5hdmlnYXRvci51c2VyQWdlbnQsaT17aW9zOiExLGFuZHJvaWQ6ITF9LHI9cy5zY3JlZW4ud2lkdGgscz1zLnNjcmVlbi5oZWlnaHQsYT1lLm1hdGNoKC8oQW5kcm9pZCk7P1tcc1wvXSsoW1xkLl0rKT8vKTtsZXQgbz1lLm1hdGNoKC8oaVBhZCkoPyFcMSkuKk9TXHMoW1xkX10rKS8pO3ZhciBsPWUubWF0Y2goLyhpUG9kKSguKk9TXHMoW1xkX10rKSk/LyksZD0hbyYmZS5tYXRjaCgvKGlQaG9uZVxzT1N8aU9TKVxzKFtcZF9dKykvKSxjPSJXaW4zMiI9PT1uLG49Ik1hY0ludGVsIj09PW47cmV0dXJuIW8mJm4mJnQudG91Y2gmJjA8PVsiMTAyNHgxMzY2IiwiMTM2NngxMDI0IiwiODM0eDExOTQiLCIxMTk0eDgzNCIsIjgzNHgxMTEyIiwiMTExMng4MzQiLCI3Njh4MTAyNCIsIjEwMjR4NzY4IiwiODIweDExODAiLCIxMTgweDgyMCIsIjgxMHgxMDgwIiwiMTA4MHg4MTAiXS5pbmRleE9mKHIrIngiK3MpJiYobz0obz1lLm1hdGNoKC8oVmVyc2lvbilcLyhbXGQuXSspLykpfHxbMCwxLCIxM18wXzAiXSksYSYmIWMmJihpLm9zPSJhbmRyb2lkIixpLmFuZHJvaWQ9ITApLChvfHxkfHxsKSYmKGkub3M9ImlvcyIsaS5pb3M9ITApLGl9KGUpfWxldCBlO2Z1bmN0aW9uIEYoKXtyZXR1cm4gZT1lfHxmdW5jdGlvbigpe2NvbnN0IHQ9JCgpO3ZhciBlPVIoKTtsZXQgbj0hMTtmdW5jdGlvbiBpKCl7dmFyIGU9dC5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCk7cmV0dXJuIDA8PWUuaW5kZXhPZigic2FmYXJpIikmJmUuaW5kZXhPZigiY2hyb21lIik8MCYmZS5pbmRleE9mKCJhbmRyb2lkIik8MH1pKCkmJihyPVN0cmluZyh0Lm5hdmlnYXRvci51c2VyQWdlbnQpKS5pbmNsdWRlcygiVmVyc2lvbi8iKSYmKFtyLHNdPXIuc3BsaXQoIlZlcnNpb24vIilbMV0uc3BsaXQoIiAiKVswXS5zcGxpdCgiLiIpLm1hcChlPT5OdW1iZXIoZSkpLG49cjwxNnx8MTY9PT1yJiZzPDIpO3ZhciByPS8oaVBob25lfGlQb2R8aVBhZCkuKkFwcGxlV2ViS2l0KD8hLipTYWZhcmkpL2kudGVzdCh0Lm5hdmlnYXRvci51c2VyQWdlbnQpLHM9aSgpLGU9c3x8ciYmZS5pb3M7cmV0dXJue2lzU2FmYXJpOm58fHMsbmVlZFBlcnNwZWN0aXZlRml4Om4sbmVlZDNkRml4OmUsaXNXZWJWaWV3OnJ9fSgpfWNvbnN0IEI9KGUsdCxuKT0+e3QmJiFlLmNsYXNzTGlzdC5jb250YWlucyhuKT9lLmNsYXNzTGlzdC5hZGQobik6IXQmJmUuY2xhc3NMaXN0LmNvbnRhaW5zKG4pJiZlLmNsYXNzTGlzdC5yZW1vdmUobil9O2NvbnN0IGM9KGUsdCxuKT0+e3QmJiFlLmNsYXNzTGlzdC5jb250YWlucyhuKT9lLmNsYXNzTGlzdC5hZGQobik6IXQmJmUuY2xhc3NMaXN0LmNvbnRhaW5zKG4pJiZlLmNsYXNzTGlzdC5yZW1vdmUobil9O2NvbnN0IG89KHQsZSk9PntpZih0JiYhdC5kZXN0cm95ZWQmJnQucGFyYW1zKXtjb25zdCBuPWUuY2xvc2VzdCh0LmlzRWxlbWVudD8ic3dpcGVyLXNsaWRlIjoiLiIrdC5wYXJhbXMuc2xpZGVDbGFzcyk7aWYobil7bGV0IGU9bi5xdWVyeVNlbGVjdG9yKCIuIit0LnBhcmFtcy5sYXp5UHJlbG9hZGVyQ2xhc3MpOyFlJiZ0LmlzRWxlbWVudCYmKG4uc2hhZG93Um9vdD9lPW4uc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuIit0LnBhcmFtcy5sYXp5UHJlbG9hZGVyQ2xhc3MpOnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e24uc2hhZG93Um9vdCYmKGU9bi5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi4iK3QucGFyYW1zLmxhenlQcmVsb2FkZXJDbGFzcykpJiZlLnJlbW92ZSgpfSkpLGUmJmUucmVtb3ZlKCl9fX0sdT0oZSx0KT0+e2Uuc2xpZGVzW3RdJiYoZT1lLnNsaWRlc1t0XS5xdWVyeVNlbGVjdG9yKCdbbG9hZGluZz0ibGF6eSJdJykpJiZlLnJlbW92ZUF0dHJpYnV0ZSgibG9hZGluZyIpfSxoPW49PntpZihuJiYhbi5kZXN0cm95ZWQmJm4ucGFyYW1zKXt2YXIgdD1uLnBhcmFtcy5sYXp5UHJlbG9hZFByZXZOZXh0LGk9bi5zbGlkZXMubGVuZ3RoO2lmKGkmJnQmJiEodDwwKSl7dD1NYXRoLm1pbih0LGkpO2NvbnN0IG89ImF1dG8iPT09bi5wYXJhbXMuc2xpZGVzUGVyVmlldz9uLnNsaWRlc1BlclZpZXdEeW5hbWljKCk6TWF0aC5jZWlsKG4ucGFyYW1zLnNsaWRlc1BlclZpZXcpO3ZhciByPW4uYWN0aXZlSW5kZXg7aWYobi5wYXJhbXMuZ3JpZCYmMTxuLnBhcmFtcy5ncmlkLnJvd3Mpe2NvbnN0IGw9cixkPVtsLXRdO2QucHVzaCguLi5BcnJheS5mcm9tKHtsZW5ndGg6dH0pLm1hcCgoZSx0KT0+bCtvK3QpKSx2b2lkIG4uc2xpZGVzLmZvckVhY2goKGUsdCk9PntkLmluY2x1ZGVzKGUuY29sdW1uKSYmdShuLHQpfSl9ZWxzZXt2YXIgcz1yK28tMTtpZihuLnBhcmFtcy5yZXdpbmR8fG4ucGFyYW1zLmxvb3ApZm9yKGxldCBlPXItdDtlPD1zK3Q7ZSs9MSl7dmFyIGE9KGUlaStpKSVpOyhhPHJ8fHM8YSkmJnUobixhKX1lbHNlIGZvcihsZXQgZT1NYXRoLm1heChyLXQsMCk7ZTw9TWF0aC5taW4ocyt0LGktMSk7ZSs9MSllIT09ciYmKGU+c3x8ZTxyKSYmdShuLGUpfX19fTtmdW5jdGlvbiBXKHtzd2lwZXI6ZSxydW5DYWxsYmFja3M6dCxkaXJlY3Rpb246bixzdGVwOml9KXt2YXJ7YWN0aXZlSW5kZXg6cixwcmV2aW91c0luZGV4OnN9PWU7bGV0IGE9bjthPWF8fChzPHI/Im5leHQiOnI8cz8icHJldiI6InJlc2V0IiksZS5lbWl0KCJ0cmFuc2l0aW9uIitpKSx0JiYicmVzZXQiPT09YT9lLmVtaXQoInNsaWRlUmVzZXRUcmFuc2l0aW9uIitpKTp0JiZyIT09cyYmKGUuZW1pdCgic2xpZGVDaGFuZ2VUcmFuc2l0aW9uIitpKSwibmV4dCI9PT1hP2UuZW1pdCgic2xpZGVOZXh0VHJhbnNpdGlvbiIraSk6ZS5lbWl0KCJzbGlkZVByZXZUcmFuc2l0aW9uIitpKSl9ZnVuY3Rpb24gVShpLGU9dGhpcyl7cmV0dXJuIGZ1bmN0aW9uIGUodCl7dmFyIG47cmV0dXJuIHQmJnQhPT1PKCkmJnQhPT0kKCkmJigobj0odD10LmFzc2lnbmVkU2xvdHx8dCkuY2xvc2VzdChpKSl8fHQuZ2V0Um9vdE5vZGUpP258fGUodC5nZXRSb290Tm9kZSgpLmhvc3QpOm51bGx9KGUpfWZ1bmN0aW9uIFEoZSx0LG4pe3ZhciBpPSQoKSxlPWVbInBhcmFtcyJdLHI9ZS5lZGdlU3dpcGVEZXRlY3Rpb24sZT1lLmVkZ2VTd2lwZVRocmVzaG9sZDtyZXR1cm4hcnx8IShuPD1lfHxuPj1pLmlubmVyV2lkdGgtZSl8fCJwcmV2ZW50Ij09PXImJih0LnByZXZlbnREZWZhdWx0KCksMSl9ZnVuY3Rpb24gSygpe2NvbnN0IGU9dGhpczt2YXIgdCxuLGkscix7cGFyYW1zOnMsZWw6YX09ZTthJiYwPT09YS5vZmZzZXRXaWR0aHx8KHMuYnJlYWtwb2ludHMmJmUuc2V0QnJlYWtwb2ludCgpLHthbGxvd1NsaWRlTmV4dDphLGFsbG93U2xpZGVQcmV2OnQsc25hcEdyaWQ6bn09ZSxpPWUudmlydHVhbCYmZS5wYXJhbXMudmlydHVhbC5lbmFibGVkLGUuYWxsb3dTbGlkZU5leHQ9ITAsZS5hbGxvd1NsaWRlUHJldj0hMCxlLnVwZGF0ZVNpemUoKSxlLnVwZGF0ZVNsaWRlcygpLGUudXBkYXRlU2xpZGVzQ2xhc3NlcygpLHI9aSYmcy5sb29wLCEoImF1dG8iPT09cy5zbGlkZXNQZXJWaWV3fHwxPHMuc2xpZGVzUGVyVmlldyl8fCFlLmlzRW5kfHxlLmlzQmVnaW5uaW5nfHxlLnBhcmFtcy5jZW50ZXJlZFNsaWRlc3x8cj9lLnBhcmFtcy5sb29wJiYhaT9lLnNsaWRlVG9Mb29wKGUucmVhbEluZGV4LDAsITEsITApOmUuc2xpZGVUbyhlLmFjdGl2ZUluZGV4LDAsITEsITApOmUuc2xpZGVUbyhlLnNsaWRlcy5sZW5ndGgtMSwwLCExLCEwKSxlLmF1dG9wbGF5JiZlLmF1dG9wbGF5LnJ1bm5pbmcmJmUuYXV0b3BsYXkucGF1c2VkJiYoY2xlYXJUaW1lb3V0KGUuYXV0b3BsYXkucmVzaXplVGltZW91dCksZS5hdXRvcGxheS5yZXNpemVUaW1lb3V0PXNldFRpbWVvdXQoKCk9PntlLmF1dG9wbGF5JiZlLmF1dG9wbGF5LnJ1bm5pbmcmJmUuYXV0b3BsYXkucGF1c2VkJiZlLmF1dG9wbGF5LnJlc3VtZSgpfSw1MDApKSxlLmFsbG93U2xpZGVQcmV2PXQsZS5hbGxvd1NsaWRlTmV4dD1hLGUucGFyYW1zLndhdGNoT3ZlcmZsb3cmJm4hPT1lLnNuYXBHcmlkJiZlLmNoZWNrT3ZlcmZsb3coKSl9Y29uc3QgWj0oZSx0KT0+e3ZhciBuPU8oKSx7cGFyYW1zOmksZWw6cix3cmFwcGVyRWw6cyxkZXZpY2U6YX09ZSxvPSEhaS5uZXN0ZWQsbD0ib24iPT09dD8iYWRkRXZlbnRMaXN0ZW5lciI6InJlbW92ZUV2ZW50TGlzdGVuZXIiO3ImJiJzdHJpbmciIT10eXBlb2YgciYmKG5bbF0oInRvdWNoc3RhcnQiLGUub25Eb2N1bWVudFRvdWNoU3RhcnQse3Bhc3NpdmU6ITEsY2FwdHVyZTpvfSkscltsXSgidG91Y2hzdGFydCIsZS5vblRvdWNoU3RhcnQse3Bhc3NpdmU6ITF9KSxyW2xdKCJwb2ludGVyZG93biIsZS5vblRvdWNoU3RhcnQse3Bhc3NpdmU6ITF9KSxuW2xdKCJ0b3VjaG1vdmUiLGUub25Ub3VjaE1vdmUse3Bhc3NpdmU6ITEsY2FwdHVyZTpvfSksbltsXSgicG9pbnRlcm1vdmUiLGUub25Ub3VjaE1vdmUse3Bhc3NpdmU6ITEsY2FwdHVyZTpvfSksbltsXSgidG91Y2hlbmQiLGUub25Ub3VjaEVuZCx7cGFzc2l2ZTohMH0pLG5bbF0oInBvaW50ZXJ1cCIsZS5vblRvdWNoRW5kLHtwYXNzaXZlOiEwfSksbltsXSgicG9pbnRlcmNhbmNlbCIsZS5vblRvdWNoRW5kLHtwYXNzaXZlOiEwfSksbltsXSgidG91Y2hjYW5jZWwiLGUub25Ub3VjaEVuZCx7cGFzc2l2ZTohMH0pLG5bbF0oInBvaW50ZXJvdXQiLGUub25Ub3VjaEVuZCx7cGFzc2l2ZTohMH0pLG5bbF0oInBvaW50ZXJsZWF2ZSIsZS5vblRvdWNoRW5kLHtwYXNzaXZlOiEwfSksbltsXSgiY29udGV4dG1lbnUiLGUub25Ub3VjaEVuZCx7cGFzc2l2ZTohMH0pLChpLnByZXZlbnRDbGlja3N8fGkucHJldmVudENsaWNrc1Byb3BhZ2F0aW9uKSYmcltsXSgiY2xpY2siLGUub25DbGljaywhMCksaS5jc3NNb2RlJiZzW2xdKCJzY3JvbGwiLGUub25TY3JvbGwpLGkudXBkYXRlT25XaW5kb3dSZXNpemU/ZVt0XShhLmlvc3x8YS5hbmRyb2lkPyJyZXNpemUgb3JpZW50YXRpb25jaGFuZ2Ugb2JzZXJ2ZXJVcGRhdGUiOiJyZXNpemUgb2JzZXJ2ZXJVcGRhdGUiLEssITApOmVbdF0oIm9ic2VydmVyVXBkYXRlIixLLCEwKSxyW2xdKCJsb2FkIixlLm9uTG9hZCx7Y2FwdHVyZTohMH0pKX07Y29uc3QgSj0oZSx0KT0+ZS5ncmlkJiZ0LmdyaWQmJjE8dC5ncmlkLnJvd3M7dmFyIGVlPXtpbml0OiEwLGRpcmVjdGlvbjoiaG9yaXpvbnRhbCIsb25lV2F5TW92ZW1lbnQ6ITEsc3dpcGVyRWxlbWVudE5vZGVOYW1lOiJTV0lQRVItQ09OVEFJTkVSIix0b3VjaEV2ZW50c1RhcmdldDoid3JhcHBlciIsaW5pdGlhbFNsaWRlOjAsc3BlZWQ6MzAwLGNzc01vZGU6ITEsdXBkYXRlT25XaW5kb3dSZXNpemU6ITAscmVzaXplT2JzZXJ2ZXI6ITAsbmVzdGVkOiExLGNyZWF0ZUVsZW1lbnRzOiExLGV2ZW50c1ByZWZpeDoic3dpcGVyIixlbmFibGVkOiEwLGZvY3VzYWJsZUVsZW1lbnRzOiJpbnB1dCwgc2VsZWN0LCBvcHRpb24sIHRleHRhcmVhLCBidXR0b24sIHZpZGVvLCBsYWJlbCIsd2lkdGg6bnVsbCxoZWlnaHQ6bnVsbCxwcmV2ZW50SW50ZXJhY3Rpb25PblRyYW5zaXRpb246ITEsdXNlckFnZW50Om51bGwsdXJsOm51bGwsZWRnZVN3aXBlRGV0ZWN0aW9uOiExLGVkZ2VTd2lwZVRocmVzaG9sZDoyMCxhdXRvSGVpZ2h0OiExLHNldFdyYXBwZXJTaXplOiExLHZpcnR1YWxUcmFuc2xhdGU6ITEsZWZmZWN0OiJzbGlkZSIsYnJlYWtwb2ludHM6dm9pZCAwLGJyZWFrcG9pbnRzQmFzZToid2luZG93IixzcGFjZUJldHdlZW46MCxzbGlkZXNQZXJWaWV3OjEsc2xpZGVzUGVyR3JvdXA6MSxzbGlkZXNQZXJHcm91cFNraXA6MCxzbGlkZXNQZXJHcm91cEF1dG86ITEsY2VudGVyZWRTbGlkZXM6ITEsY2VudGVyZWRTbGlkZXNCb3VuZHM6ITEsc2xpZGVzT2Zmc2V0QmVmb3JlOjAsc2xpZGVzT2Zmc2V0QWZ0ZXI6MCxub3JtYWxpemVTbGlkZUluZGV4OiEwLGNlbnRlckluc3VmZmljaWVudFNsaWRlczohMSx3YXRjaE92ZXJmbG93OiEwLHJvdW5kTGVuZ3RoczohMSx0b3VjaFJhdGlvOjEsdG91Y2hBbmdsZTo0NSxzaW11bGF0ZVRvdWNoOiEwLHNob3J0U3dpcGVzOiEwLGxvbmdTd2lwZXM6ITAsbG9uZ1N3aXBlc1JhdGlvOi41LGxvbmdTd2lwZXNNczozMDAsZm9sbG93RmluZ2VyOiEwLGFsbG93VG91Y2hNb3ZlOiEwLHRocmVzaG9sZDo1LHRvdWNoTW92ZVN0b3BQcm9wYWdhdGlvbjohMSx0b3VjaFN0YXJ0UHJldmVudERlZmF1bHQ6ITAsdG91Y2hTdGFydEZvcmNlUHJldmVudERlZmF1bHQ6ITEsdG91Y2hSZWxlYXNlT25FZGdlczohMSx1bmlxdWVOYXZFbGVtZW50czohMCxyZXNpc3RhbmNlOiEwLHJlc2lzdGFuY2VSYXRpbzouODUsd2F0Y2hTbGlkZXNQcm9ncmVzczohMSxncmFiQ3Vyc29yOiExLHByZXZlbnRDbGlja3M6ITAscHJldmVudENsaWNrc1Byb3BhZ2F0aW9uOiEwLHNsaWRlVG9DbGlja2VkU2xpZGU6ITEsbG9vcDohMSxsb29wQWRkQmxhbmtTbGlkZXM6ITAsbG9vcEFkZGl0aW9uYWxTbGlkZXM6MCxsb29wUHJldmVudHNTbGlkaW5nOiEwLHJld2luZDohMSxhbGxvd1NsaWRlUHJldjohMCxhbGxvd1NsaWRlTmV4dDohMCxzd2lwZUhhbmRsZXI6bnVsbCxub1N3aXBpbmc6ITAsbm9Td2lwaW5nQ2xhc3M6InN3aXBlci1uby1zd2lwaW5nIixub1N3aXBpbmdTZWxlY3RvcjpudWxsLHBhc3NpdmVMaXN0ZW5lcnM6ITAsbWF4QmFja2ZhY2VIaWRkZW5TbGlkZXM6MTAsY29udGFpbmVyTW9kaWZpZXJDbGFzczoic3dpcGVyLSIsc2xpZGVDbGFzczoic3dpcGVyLXNsaWRlIixzbGlkZUJsYW5rQ2xhc3M6InN3aXBlci1zbGlkZS1ibGFuayIsc2xpZGVBY3RpdmVDbGFzczoic3dpcGVyLXNsaWRlLWFjdGl2ZSIsc2xpZGVWaXNpYmxlQ2xhc3M6InN3aXBlci1zbGlkZS12aXNpYmxlIixzbGlkZUZ1bGx5VmlzaWJsZUNsYXNzOiJzd2lwZXItc2xpZGUtZnVsbHktdmlzaWJsZSIsc2xpZGVOZXh0Q2xhc3M6InN3aXBlci1zbGlkZS1uZXh0IixzbGlkZVByZXZDbGFzczoic3dpcGVyLXNsaWRlLXByZXYiLHdyYXBwZXJDbGFzczoic3dpcGVyLXdyYXBwZXIiLGxhenlQcmVsb2FkZXJDbGFzczoic3dpcGVyLWxhenktcHJlbG9hZGVyIixsYXp5UHJlbG9hZFByZXZOZXh0OjAscnVuQ2FsbGJhY2tzT25Jbml0OiEwLF9lbWl0Q2xhc3NlczohMX07Y29uc3Qgbj17ZXZlbnRzRW1pdHRlcjp7b24oZSx0LG4pe2NvbnN0IGk9dGhpcztpZihpLmV2ZW50c0xpc3RlbmVycyYmIWkuZGVzdHJveWVkJiYiZnVuY3Rpb24iPT10eXBlb2YgdCl7Y29uc3Qgcj1uPyJ1bnNoaWZ0IjoicHVzaCI7ZS5zcGxpdCgiICIpLmZvckVhY2goZT0+e2kuZXZlbnRzTGlzdGVuZXJzW2VdfHwoaS5ldmVudHNMaXN0ZW5lcnNbZV09W10pLGkuZXZlbnRzTGlzdGVuZXJzW2VdW3JdKHQpfSl9cmV0dXJuIGl9LG9uY2UodCxuLGUpe2NvbnN0IGk9dGhpcztyZXR1cm4haS5ldmVudHNMaXN0ZW5lcnN8fGkuZGVzdHJveWVkfHwiZnVuY3Rpb24iIT10eXBlb2Ygbj9pOihyLl9fZW1pdHRlclByb3h5PW4saS5vbih0LHIsZSkpO2Z1bmN0aW9uIHIoLi4uZSl7aS5vZmYodCxyKSxyLl9fZW1pdHRlclByb3h5JiZkZWxldGUgci5fX2VtaXR0ZXJQcm94eSxuLmFwcGx5KGksZSl9fSxvbkFueShlLHQpe3JldHVybiB0aGlzLmV2ZW50c0xpc3RlbmVycyYmIXRoaXMuZGVzdHJveWVkJiYiZnVuY3Rpb24iPT10eXBlb2YgZSYmKHQ9dD8idW5zaGlmdCI6InB1c2giLHRoaXMuZXZlbnRzQW55TGlzdGVuZXJzLmluZGV4T2YoZSk8MCkmJnRoaXMuZXZlbnRzQW55TGlzdGVuZXJzW3RdKGUpLHRoaXN9LG9mZkFueShlKXtyZXR1cm4gdGhpcy5ldmVudHNMaXN0ZW5lcnMmJiF0aGlzLmRlc3Ryb3llZCYmdGhpcy5ldmVudHNBbnlMaXN0ZW5lcnMmJjA8PShlPXRoaXMuZXZlbnRzQW55TGlzdGVuZXJzLmluZGV4T2YoZSkpJiZ0aGlzLmV2ZW50c0FueUxpc3RlbmVycy5zcGxpY2UoZSwxKSx0aGlzfSxvZmYoZSxpKXtjb25zdCByPXRoaXM7cmV0dXJuIHIuZXZlbnRzTGlzdGVuZXJzJiYhci5kZXN0cm95ZWQmJnIuZXZlbnRzTGlzdGVuZXJzJiZlLnNwbGl0KCIgIikuZm9yRWFjaChuPT57dm9pZCAwPT09aT9yLmV2ZW50c0xpc3RlbmVyc1tuXT1bXTpyLmV2ZW50c0xpc3RlbmVyc1tuXSYmci5ldmVudHNMaXN0ZW5lcnNbbl0uZm9yRWFjaCgoZSx0KT0+eyhlPT09aXx8ZS5fX2VtaXR0ZXJQcm94eSYmZS5fX2VtaXR0ZXJQcm94eT09PWkpJiZyLmV2ZW50c0xpc3RlbmVyc1tuXS5zcGxpY2UodCwxKX0pfSkscn0sZW1pdCguLi50KXtjb25zdCByPXRoaXM7aWYoci5ldmVudHNMaXN0ZW5lcnMmJiFyLmRlc3Ryb3llZCYmci5ldmVudHNMaXN0ZW5lcnMpe2xldCBlLG4saTtpPSJzdHJpbmciPT10eXBlb2YgdFswXXx8QXJyYXkuaXNBcnJheSh0WzBdKT8oZT10WzBdLG49dC5zbGljZSgxLHQubGVuZ3RoKSxyKTooZT10WzBdLmV2ZW50cyxuPXRbMF0uZGF0YSx0WzBdLmNvbnRleHR8fHIpLG4udW5zaGlmdChpKSwoQXJyYXkuaXNBcnJheShlKT9lOmUuc3BsaXQoIiAiKSkuZm9yRWFjaCh0PT57ci5ldmVudHNBbnlMaXN0ZW5lcnMmJnIuZXZlbnRzQW55TGlzdGVuZXJzLmxlbmd0aCYmci5ldmVudHNBbnlMaXN0ZW5lcnMuZm9yRWFjaChlPT57ZS5hcHBseShpLFt0LC4uLm5dKX0pLHIuZXZlbnRzTGlzdGVuZXJzJiZyLmV2ZW50c0xpc3RlbmVyc1t0XSYmci5ldmVudHNMaXN0ZW5lcnNbdF0uZm9yRWFjaChlPT57ZS5hcHBseShpLG4pfSl9KX1yZXR1cm4gcn19LHVwZGF0ZTp7dXBkYXRlU2l6ZTpmdW5jdGlvbigpe3ZhciBlPXRoaXM7bGV0IHQsbjt2YXIgaT1lLmVsO3Q9dm9pZCAwIT09ZS5wYXJhbXMud2lkdGgmJm51bGwhPT1lLnBhcmFtcy53aWR0aD9lLnBhcmFtcy53aWR0aDppLmNsaWVudFdpZHRoLG49dm9pZCAwIT09ZS5wYXJhbXMuaGVpZ2h0JiZudWxsIT09ZS5wYXJhbXMuaGVpZ2h0P2UucGFyYW1zLmhlaWdodDppLmNsaWVudEhlaWdodCwwPT09dCYmZS5pc0hvcml6b250YWwoKXx8MD09PW4mJmUuaXNWZXJ0aWNhbCgpfHwodD10LXBhcnNlSW50KFgoaSwicGFkZGluZy1sZWZ0Iil8fDAsMTApLXBhcnNlSW50KFgoaSwicGFkZGluZy1yaWdodCIpfHwwLDEwKSxuPW4tcGFyc2VJbnQoWChpLCJwYWRkaW5nLXRvcCIpfHwwLDEwKS1wYXJzZUludChYKGksInBhZGRpbmctYm90dG9tIil8fDAsMTApLE51bWJlci5pc05hTih0KSYmKHQ9MCksTnVtYmVyLmlzTmFOKG4pJiYobj0wKSxPYmplY3QuYXNzaWduKGUse3dpZHRoOnQsaGVpZ2h0Om4sc2l6ZTplLmlzSG9yaXpvbnRhbCgpP3Q6bn0pKX0sdXBkYXRlU2xpZGVzOmZ1bmN0aW9uKCl7Y29uc3Qgbj10aGlzO2Z1bmN0aW9uIGkoZSx0KXtyZXR1cm4gcGFyc2VGbG9hdChlLmdldFByb3BlcnR5VmFsdWUobi5nZXREaXJlY3Rpb25MYWJlbCh0KSl8fDApfWNvbnN0IHI9bi5wYXJhbXMse3dyYXBwZXJFbDplLHNsaWRlc0VsOnQscnRsVHJhbnNsYXRlOnMsd3JvbmdSVEw6an09bjt2YXIgYT1uLnZpcnR1YWwmJnIudmlydHVhbC5lbmFibGVkLG89KGE/bi52aXJ0dWFsOm4pLnNsaWRlcy5sZW5ndGg7Y29uc3QgbD1ZKHQsYC4ke24ucGFyYW1zLnNsaWRlQ2xhc3N9LCBzd2lwZXItc2xpZGVgKTt2YXIgZD0oYT9uLnZpcnR1YWwuc2xpZGVzOmwpLmxlbmd0aDtsZXQgYz1bXTtjb25zdCB1PVtdO3ZhciBwPVtdO2xldCBoPXIuc2xpZGVzT2Zmc2V0QmVmb3JlLGY9KCJmdW5jdGlvbiI9PXR5cGVvZiBoJiYoaD1yLnNsaWRlc09mZnNldEJlZm9yZS5jYWxsKG4pKSxyLnNsaWRlc09mZnNldEFmdGVyKTsiZnVuY3Rpb24iPT10eXBlb2YgZiYmKGY9ci5zbGlkZXNPZmZzZXRBZnRlci5jYWxsKG4pKTt2YXIgcT1uLnNuYXBHcmlkLmxlbmd0aCx6PW4uc2xpZGVzR3JpZC5sZW5ndGgsbT1uLnNpemUtaC1mO2xldCBnPXIuc3BhY2VCZXR3ZWVuLHY9LWgseT0wLGI9MDtpZigxKXsic3RyaW5nIj09dHlwZW9mIGcmJjA8PWcuaW5kZXhPZigiJSIpP2c9cGFyc2VGbG9hdChnLnJlcGxhY2UoIiUiLCIiKSkvMTAwKm06InN0cmluZyI9PXR5cGVvZiBnJiYoZz1wYXJzZUZsb2F0KGcpKSxuLnZpcnR1YWxTaXplPS1nLWgtZixsLmZvckVhY2goZT0+e3M/ZS5zdHlsZS5tYXJnaW5MZWZ0PSIiOmUuc3R5bGUubWFyZ2luUmlnaHQ9IiIsZS5zdHlsZS5tYXJnaW5Cb3R0b209IiIsZS5zdHlsZS5tYXJnaW5Ub3A9IiJ9KSxyLmNlbnRlcmVkU2xpZGVzJiZyLmNzc01vZGUmJihHKGUsIi0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUiLCIiKSxHKGUsIi0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlciIsIiIpKTt2YXIgdz1yLmdyaWQmJjE8ci5ncmlkLnJvd3MmJm4uZ3JpZDt3P24uZ3JpZC5pbml0U2xpZGVzKGwpOm4uZ3JpZCYmbi5ncmlkLnVuc2V0U2xpZGVzKCk7bGV0IHQ7dmFyIEg9ImF1dG8iPT09ci5zbGlkZXNQZXJWaWV3JiZyLmJyZWFrcG9pbnRzJiYwPE9iamVjdC5rZXlzKHIuYnJlYWtwb2ludHMpLmZpbHRlcihlPT52b2lkIDAhPT1yLmJyZWFrcG9pbnRzW2VdLnNsaWRlc1BlclZpZXcpLmxlbmd0aDtmb3IobGV0IGU9MDtlPGQ7ZSs9MSl7dD0wO3ZhciB4LEUsXyxULFMsQyxBLE0sRCxMPWxbZV07TCYmKHcmJm4uZ3JpZC51cGRhdGVTbGlkZShlLEwsbCksIm5vbmUiPT09WChMLCJkaXNwbGF5IikpfHwoYSYmImF1dG8iPT09ci5zbGlkZXNQZXJWaWV3Pyh0PXIudmlydHVhbC5zbGlkZXNQZXJWaWV3QXV0b1NsaWRlU2l6ZT9yLnZpcnR1YWwuc2xpZGVzUGVyVmlld0F1dG9TbGlkZVNpemU6dCkmJkwmJihyLnJvdW5kTGVuZ3RocyYmKHQ9TWF0aC5mbG9vcih0KSksTC5zdHlsZVtuLmdldERpcmVjdGlvbkxhYmVsKCJ3aWR0aCIpXT10KyJweCIpOiJhdXRvIj09PXIuc2xpZGVzUGVyVmlldz8oSCYmKEwuc3R5bGVbbi5nZXREaXJlY3Rpb25MYWJlbCgid2lkdGgiKV09IiIpLE09Z2V0Q29tcHV0ZWRTdHlsZShMKSx4PUwuc3R5bGUudHJhbnNmb3JtLEU9TC5zdHlsZS53ZWJraXRUcmFuc2Zvcm0seCYmKEwuc3R5bGUudHJhbnNmb3JtPSJub25lIiksRSYmKEwuc3R5bGUud2Via2l0VHJhbnNmb3JtPSJub25lIiksdD1yLnJvdW5kTGVuZ3Rocz9uLmlzSG9yaXpvbnRhbCgpP1YoTCwid2lkdGgiLCEwKTpWKEwsImhlaWdodCIsITApOihfPWkoTSwid2lkdGgiKSxUPWkoTSwicGFkZGluZy1sZWZ0IiksUz1pKE0sInBhZGRpbmctcmlnaHQiKSxDPWkoTSwibWFyZ2luLWxlZnQiKSxBPWkoTSwibWFyZ2luLXJpZ2h0IiksKE09TS5nZXRQcm9wZXJ0eVZhbHVlKCJib3gtc2l6aW5nIikpJiYiYm9yZGVyLWJveCI9PT1NP18rQytBOih7Y2xpZW50V2lkdGg6TSxvZmZzZXRXaWR0aDpEfT1MLF8rVCtTK0MrQSsoRC1NKSkpLHgmJihMLnN0eWxlLnRyYW5zZm9ybT14KSxFJiYoTC5zdHlsZS53ZWJraXRUcmFuc2Zvcm09RSksci5yb3VuZExlbmd0aHMmJih0PU1hdGguZmxvb3IodCkpKToodD0obS0oci5zbGlkZXNQZXJWaWV3LTEpKmcpL3Iuc2xpZGVzUGVyVmlldyxyLnJvdW5kTGVuZ3RocyYmKHQ9TWF0aC5mbG9vcih0KSksTCYmKEwuc3R5bGVbbi5nZXREaXJlY3Rpb25MYWJlbCgid2lkdGgiKV09dCsicHgiKSksTCYmKEwuc3dpcGVyU2xpZGVTaXplPXQpLHAucHVzaCh0KSxyLmNlbnRlcmVkU2xpZGVzPyh2PXYrdC8yK3kvMitnLDA9PT15JiYwIT09ZSYmKHY9di1tLzItZyksMD09PWUmJih2PXYtbS8yLWcpLE1hdGguYWJzKHYpPC4wMDEmJih2PTApLHIucm91bmRMZW5ndGhzJiYodj1NYXRoLmZsb29yKHYpKSxiJXIuc2xpZGVzUGVyR3JvdXA9PTAmJmMucHVzaCh2KSx1LnB1c2godikpOihyLnJvdW5kTGVuZ3RocyYmKHY9TWF0aC5mbG9vcih2KSksKGItTWF0aC5taW4obi5wYXJhbXMuc2xpZGVzUGVyR3JvdXBTa2lwLGIpKSVuLnBhcmFtcy5zbGlkZXNQZXJHcm91cD09MCYmYy5wdXNoKHYpLHUucHVzaCh2KSx2PXYrdCtnKSxuLnZpcnR1YWxTaXplKz10K2cseT10LGIrPTEpfWlmKG4udmlydHVhbFNpemU9TWF0aC5tYXgobi52aXJ0dWFsU2l6ZSxtKStmLHMmJmomJigic2xpZGUiPT09ci5lZmZlY3R8fCJjb3ZlcmZsb3ciPT09ci5lZmZlY3QpJiYoZS5zdHlsZS53aWR0aD1uLnZpcnR1YWxTaXplK2crInB4Iiksci5zZXRXcmFwcGVyU2l6ZSYmKGUuc3R5bGVbbi5nZXREaXJlY3Rpb25MYWJlbCgid2lkdGgiKV09bi52aXJ0dWFsU2l6ZStnKyJweCIpLHcmJm4uZ3JpZC51cGRhdGVXcmFwcGVyU2l6ZSh0LGMpLCFyLmNlbnRlcmVkU2xpZGVzKXt2YXIgaz1bXTtmb3IobGV0IHQ9MDt0PGMubGVuZ3RoO3QrPTEpe2xldCBlPWNbdF07ci5yb3VuZExlbmd0aHMmJihlPU1hdGguZmxvb3IoZSkpLGNbdF08PW4udmlydHVhbFNpemUtbSYmay5wdXNoKGUpfWM9aywxPE1hdGguZmxvb3Iobi52aXJ0dWFsU2l6ZS1tKS1NYXRoLmZsb29yKGNbYy5sZW5ndGgtMV0pJiZjLnB1c2gobi52aXJ0dWFsU2l6ZS1tKX1pZihhJiZyLmxvb3Ape3ZhciBPPXBbMF0rZztpZigxPHIuc2xpZGVzUGVyR3JvdXApe3ZhciBSPU1hdGguY2VpbCgobi52aXJ0dWFsLnNsaWRlc0JlZm9yZStuLnZpcnR1YWwuc2xpZGVzQWZ0ZXIpL3Iuc2xpZGVzUGVyR3JvdXApLEY9TypyLnNsaWRlc1Blckdyb3VwO2ZvcihsZXQgZT0wO2U8UjtlKz0xKWMucHVzaChjW2MubGVuZ3RoLTFdK0YpfWZvcihsZXQgZT0wO2U8bi52aXJ0dWFsLnNsaWRlc0JlZm9yZStuLnZpcnR1YWwuc2xpZGVzQWZ0ZXI7ZSs9MSkxPT09ci5zbGlkZXNQZXJHcm91cCYmYy5wdXNoKGNbYy5sZW5ndGgtMV0rTyksdS5wdXNoKHVbdS5sZW5ndGgtMV0rTyksbi52aXJ0dWFsU2l6ZSs9T31pZigwPT09Yy5sZW5ndGgmJihjPVswXSksMCE9PWcpe2NvbnN0IEk9bi5pc0hvcml6b250YWwoKSYmcz8ibWFyZ2luTGVmdCI6bi5nZXREaXJlY3Rpb25MYWJlbCgibWFyZ2luUmlnaHQiKTtsLmZpbHRlcigoZSx0KT0+IShyLmNzc01vZGUmJiFyLmxvb3ApfHx0IT09bC5sZW5ndGgtMSkuZm9yRWFjaChlPT57ZS5zdHlsZVtJXT1nKyJweCJ9KX1pZihyLmNlbnRlcmVkU2xpZGVzJiZyLmNlbnRlcmVkU2xpZGVzQm91bmRzKXtsZXQgdD0wO3AuZm9yRWFjaChlPT57dCs9ZSsoZ3x8MCl9KTtjb25zdCAkPSh0LT1nKT5tP3QtbTowO2M9Yy5tYXAoZT0+ZTw9MD8taDplPiQ/JCtmOmUpfWlmKHIuY2VudGVySW5zdWZmaWNpZW50U2xpZGVzKXtsZXQgdD0wO3AuZm9yRWFjaChlPT57dCs9ZSsoZ3x8MCl9KSx0LT1nO3ZhciBQPShofHwwKSsoZnx8MCk7aWYodCtQPG0pe2NvbnN0IE49KG0tdC1QKS8yO2MuZm9yRWFjaCgoZSx0KT0+e2NbdF09ZS1OfSksdS5mb3JFYWNoKChlLHQpPT57dVt0XT1lK059KX19aWYoT2JqZWN0LmFzc2lnbihuLHtzbGlkZXM6bCxzbmFwR3JpZDpjLHNsaWRlc0dyaWQ6dSxzbGlkZXNTaXplc0dyaWQ6cH0pLHIuY2VudGVyZWRTbGlkZXMmJnIuY3NzTW9kZSYmIXIuY2VudGVyZWRTbGlkZXNCb3VuZHMpe0coZSwiLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSIsLWNbMF0rInB4IiksRyhlLCItLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIiLG4uc2l6ZS8yLXBbcC5sZW5ndGgtMV0vMisicHgiKTtjb25zdCBCPS1uLnNuYXBHcmlkWzBdLFc9LW4uc2xpZGVzR3JpZFswXTtuLnNuYXBHcmlkPW4uc25hcEdyaWQubWFwKGU9PmUrQiksbi5zbGlkZXNHcmlkPW4uc2xpZGVzR3JpZC5tYXAoZT0+ZStXKX1kIT09byYmbi5lbWl0KCJzbGlkZXNMZW5ndGhDaGFuZ2UiKSxjLmxlbmd0aCE9PXEmJihuLnBhcmFtcy53YXRjaE92ZXJmbG93JiZuLmNoZWNrT3ZlcmZsb3coKSxuLmVtaXQoInNuYXBHcmlkTGVuZ3RoQ2hhbmdlIikpLHUubGVuZ3RoIT09eiYmbi5lbWl0KCJzbGlkZXNHcmlkTGVuZ3RoQ2hhbmdlIiksci53YXRjaFNsaWRlc1Byb2dyZXNzJiZuLnVwZGF0ZVNsaWRlc09mZnNldCgpLG4uZW1pdCgic2xpZGVzVXBkYXRlZCIpLGF8fHIuY3NzTW9kZXx8InNsaWRlIiE9PXIuZWZmZWN0JiYiZmFkZSIhPT1yLmVmZmVjdHx8KFA9ci5jb250YWluZXJNb2RpZmllckNsYXNzKyJiYWNrZmFjZS1oaWRkZW4iLG89bi5lbC5jbGFzc0xpc3QuY29udGFpbnMoUCksZDw9ci5tYXhCYWNrZmFjZUhpZGRlblNsaWRlcz9vfHxuLmVsLmNsYXNzTGlzdC5hZGQoUCk6byYmbi5lbC5jbGFzc0xpc3QucmVtb3ZlKFApKX19LHVwZGF0ZUF1dG9IZWlnaHQ6ZnVuY3Rpb24oZSl7Y29uc3QgdD10aGlzLG49W10saT10LnZpcnR1YWwmJnQucGFyYW1zLnZpcnR1YWwuZW5hYmxlZDtsZXQgcj0wLHM7Im51bWJlciI9PXR5cGVvZiBlP3Quc2V0VHJhbnNpdGlvbihlKTohMD09PWUmJnQuc2V0VHJhbnNpdGlvbih0LnBhcmFtcy5zcGVlZCk7dmFyIGEsbz1lPT5pP3Quc2xpZGVzW3QuZ2V0U2xpZGVJbmRleEJ5RGF0YShlKV06dC5zbGlkZXNbZV07aWYoImF1dG8iIT09dC5wYXJhbXMuc2xpZGVzUGVyVmlldyYmMTx0LnBhcmFtcy5zbGlkZXNQZXJWaWV3KWlmKHQucGFyYW1zLmNlbnRlcmVkU2xpZGVzKSh0LnZpc2libGVTbGlkZXN8fFtdKS5mb3JFYWNoKGU9PntuLnB1c2goZSl9KTtlbHNlIGZvcihzPTA7czxNYXRoLmNlaWwodC5wYXJhbXMuc2xpZGVzUGVyVmlldyk7cys9MSl7dmFyIGw9dC5hY3RpdmVJbmRleCtzO2lmKGw+dC5zbGlkZXMubGVuZ3RoJiYhaSlicmVhaztuLnB1c2gobyhsKSl9ZWxzZSBuLnB1c2gobyh0LmFjdGl2ZUluZGV4KSk7Zm9yKHM9MDtzPG4ubGVuZ3RoO3MrPTEpdm9pZCAwIT09bltzXSYmKGE9bltzXS5vZmZzZXRIZWlnaHQscj1hPnI/YTpyKTshciYmMCE9PXJ8fCh0LndyYXBwZXJFbC5zdHlsZS5oZWlnaHQ9cisicHgiKX0sdXBkYXRlU2xpZGVzT2Zmc2V0OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5zbGlkZXMsbj10aGlzLmlzRWxlbWVudD90aGlzLmlzSG9yaXpvbnRhbCgpP3RoaXMud3JhcHBlckVsLm9mZnNldExlZnQ6dGhpcy53cmFwcGVyRWwub2Zmc2V0VG9wOjA7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKz0xKXRbZV0uc3dpcGVyU2xpZGVPZmZzZXQ9KHRoaXMuaXNIb3Jpem9udGFsKCk/dFtlXS5vZmZzZXRMZWZ0OnRbZV0ub2Zmc2V0VG9wKS1uLXRoaXMuY3NzT3ZlcmZsb3dBZGp1c3RtZW50KCl9LHVwZGF0ZVNsaWRlc1Byb2dyZXNzOmZ1bmN0aW9uKGU9dGhpcyYmdGhpcy50cmFuc2xhdGV8fDApe3ZhciByPXRoaXMscz1yLnBhcmFtcyx7c2xpZGVzOmEscnRsVHJhbnNsYXRlOm8sc25hcEdyaWQ6bH09cjtpZigwIT09YS5sZW5ndGgpe3ZvaWQgMD09PWFbMF0uc3dpcGVyU2xpZGVPZmZzZXQmJnIudXBkYXRlU2xpZGVzT2Zmc2V0KCk7bGV0IG49bz9lOi1lLGk9KHIudmlzaWJsZVNsaWRlc0luZGV4ZXM9W10sci52aXNpYmxlU2xpZGVzPVtdLHMuc3BhY2VCZXR3ZWVuKTsic3RyaW5nIj09dHlwZW9mIGkmJjA8PWkuaW5kZXhPZigiJSIpP2k9cGFyc2VGbG9hdChpLnJlcGxhY2UoIiUiLCIiKSkvMTAwKnIuc2l6ZToic3RyaW5nIj09dHlwZW9mIGkmJihpPXBhcnNlRmxvYXQoaSkpO2ZvcihsZXQgdD0wO3Q8YS5sZW5ndGg7dCs9MSl7dmFyIGQ9YVt0XTtsZXQgZT1kLnN3aXBlclNsaWRlT2Zmc2V0O3MuY3NzTW9kZSYmcy5jZW50ZXJlZFNsaWRlcyYmKGUtPWFbMF0uc3dpcGVyU2xpZGVPZmZzZXQpO3ZhciBjPShuKyhzLmNlbnRlcmVkU2xpZGVzP3IubWluVHJhbnNsYXRlKCk6MCktZSkvKGQuc3dpcGVyU2xpZGVTaXplK2kpLHU9KG4tbFswXSsocy5jZW50ZXJlZFNsaWRlcz9yLm1pblRyYW5zbGF0ZSgpOjApLWUpLyhkLnN3aXBlclNsaWRlU2l6ZStpKSxwPS0obi1lKSxoPXArci5zbGlkZXNTaXplc0dyaWRbdF0sZj0wPD1wJiZwPD1yLnNpemUtci5zbGlkZXNTaXplc0dyaWRbdF0scD0wPD1wJiZwPHIuc2l6ZS0xfHwxPGgmJmg8PXIuc2l6ZXx8cDw9MCYmaD49ci5zaXplO3AmJihyLnZpc2libGVTbGlkZXMucHVzaChkKSxyLnZpc2libGVTbGlkZXNJbmRleGVzLnB1c2godCkpLEIoZCxwLHMuc2xpZGVWaXNpYmxlQ2xhc3MpLEIoZCxmLHMuc2xpZGVGdWxseVZpc2libGVDbGFzcyksZC5wcm9ncmVzcz1vPy1jOmMsZC5vcmlnaW5hbFByb2dyZXNzPW8/LXU6dX19fSx1cGRhdGVQcm9ncmVzczpmdW5jdGlvbihlKXt2YXIgdD10aGlzLG49KHZvaWQgMD09PWUmJihuPXQucnRsVHJhbnNsYXRlPy0xOjEsZT10JiZ0LnRyYW5zbGF0ZSYmdC50cmFuc2xhdGUqbnx8MCksdC5wYXJhbXMpLGk9dC5tYXhUcmFuc2xhdGUoKS10Lm1pblRyYW5zbGF0ZSgpO2xldHtwcm9ncmVzczpyLGlzQmVnaW5uaW5nOnMsaXNFbmQ6YSxwcm9ncmVzc0xvb3A6b309dDt2YXIgbCxkLGMsdT1zLHA9YTswPT1pPyhyPTAscz0hMCxhPSEwKToocj0oZS10Lm1pblRyYW5zbGF0ZSgpKS9pLGk9TWF0aC5hYnMoZS10Lm1pblRyYW5zbGF0ZSgpKTwxLGw9TWF0aC5hYnMoZS10Lm1heFRyYW5zbGF0ZSgpKTwxLHM9aXx8cjw9MCxhPWx8fDE8PXIsaSYmKHI9MCksbCYmKHI9MSkpLG4ubG9vcCYmKGk9dC5nZXRTbGlkZUluZGV4QnlEYXRhKDApLGw9dC5nZXRTbGlkZUluZGV4QnlEYXRhKHQuc2xpZGVzLmxlbmd0aC0xKSxpPXQuc2xpZGVzR3JpZFtpXSxsPXQuc2xpZGVzR3JpZFtsXSxkPXQuc2xpZGVzR3JpZFt0LnNsaWRlc0dyaWQubGVuZ3RoLTFdLGM9TWF0aC5hYnMoZSksMTwobz1pPD1jPyhjLWkpL2Q6KGMrZC1sKS9kKSkmJi0tbyxPYmplY3QuYXNzaWduKHQse3Byb2dyZXNzOnIscHJvZ3Jlc3NMb29wOm8saXNCZWdpbm5pbmc6cyxpc0VuZDphfSksKG4ud2F0Y2hTbGlkZXNQcm9ncmVzc3x8bi5jZW50ZXJlZFNsaWRlcyYmbi5hdXRvSGVpZ2h0KSYmdC51cGRhdGVTbGlkZXNQcm9ncmVzcyhlKSxzJiYhdSYmdC5lbWl0KCJyZWFjaEJlZ2lubmluZyB0b0VkZ2UiKSxhJiYhcCYmdC5lbWl0KCJyZWFjaEVuZCB0b0VkZ2UiKSwodSYmIXN8fHAmJiFhKSYmdC5lbWl0KCJmcm9tRWRnZSIpLHQuZW1pdCgicHJvZ3Jlc3MiLHIpfSx1cGRhdGVTbGlkZXNDbGFzc2VzOmZ1bmN0aW9uKCl7Y29uc3R7c2xpZGVzOmUscGFyYW1zOnQsc2xpZGVzRWw6bixhY3RpdmVJbmRleDppfT10aGlzO3ZhciByPXRoaXMudmlydHVhbCYmdC52aXJ0dWFsLmVuYWJsZWQscz10aGlzLmdyaWQmJnQuZ3JpZCYmMTx0LmdyaWQucm93cyxhPWU9PlkobixgLiR7dC5zbGlkZUNsYXNzfSR7ZX0sIHN3aXBlci1zbGlkZWArZSlbMF07bGV0IG8sbCxkO2lmKHIpaWYodC5sb29wKXtsZXQgZT1pLXRoaXMudmlydHVhbC5zbGlkZXNCZWZvcmU7KGU9ZTwwP3RoaXMudmlydHVhbC5zbGlkZXMubGVuZ3RoK2U6ZSk+PXRoaXMudmlydHVhbC5zbGlkZXMubGVuZ3RoJiYoZS09dGhpcy52aXJ0dWFsLnNsaWRlcy5sZW5ndGgpLG89YShgW2RhdGEtc3dpcGVyLXNsaWRlLWluZGV4PSIke2V9Il1gKX1lbHNlIG89YShgW2RhdGEtc3dpcGVyLXNsaWRlLWluZGV4PSIke2l9Il1gKTtlbHNlIHM/KG89ZS5maW5kKGU9PmUuY29sdW1uPT09aSksZD1lLmZpbmQoZT0+ZS5jb2x1bW49PT1pKzEpLGw9ZS5maW5kKGU9PmUuY29sdW1uPT09aS0xKSk6bz1lW2ldO28mJiFzJiYoZD1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbj1bXTtlLm5leHRFbGVtZW50U2libGluZzspe3ZhciBpPWUubmV4dEVsZW1lbnRTaWJsaW5nOyghdHx8aS5tYXRjaGVzKHQpKSYmbi5wdXNoKGkpLGU9aX1yZXR1cm4gbn0obyxgLiR7dC5zbGlkZUNsYXNzfSwgc3dpcGVyLXNsaWRlYClbMF0sdC5sb29wJiYhZCYmKGQ9ZVswXSksbD1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbj1bXTtlLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7KXt2YXIgaT1lLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7KCF0fHxpLm1hdGNoZXModCkpJiZuLnB1c2goaSksZT1pfXJldHVybiBufShvLGAuJHt0LnNsaWRlQ2xhc3N9LCBzd2lwZXItc2xpZGVgKVswXSx0Lmxvb3ApJiYwPT09IWwmJihsPWVbZS5sZW5ndGgtMV0pLGUuZm9yRWFjaChlPT57YyhlLGU9PT1vLHQuc2xpZGVBY3RpdmVDbGFzcyksYyhlLGU9PT1kLHQuc2xpZGVOZXh0Q2xhc3MpLGMoZSxlPT09bCx0LnNsaWRlUHJldkNsYXNzKX0pLHRoaXMuZW1pdFNsaWRlc0NsYXNzZXMoKX0sdXBkYXRlQWN0aXZlSW5kZXg6ZnVuY3Rpb24oZSl7Y29uc3Qgbj10aGlzO3ZhciBpPW4ucnRsVHJhbnNsYXRlP24udHJhbnNsYXRlOi1uLnRyYW5zbGF0ZSx7c25hcEdyaWQ6cixwYXJhbXM6cyxhY3RpdmVJbmRleDphLHJlYWxJbmRleDpvLHNuYXBJbmRleDpsfT1uO2xldCBkPWUsYztpZihlPWU9PntsZXQgdD1lLW4udmlydHVhbC5zbGlkZXNCZWZvcmU7cmV0dXJuKHQ9dDwwP24udmlydHVhbC5zbGlkZXMubGVuZ3RoK3Q6dCk+PW4udmlydHVhbC5zbGlkZXMubGVuZ3RoJiYodC09bi52aXJ0dWFsLnNsaWRlcy5sZW5ndGgpLHR9LHZvaWQgMD09PWQmJihkPWZ1bmN0aW9uKGUpe3ZhcntzbGlkZXNHcmlkOnQscGFyYW1zOm59PWUsaT1lLnJ0bFRyYW5zbGF0ZT9lLnRyYW5zbGF0ZTotZS50cmFuc2xhdGU7bGV0IHI7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKz0xKXZvaWQgMCE9PXRbZSsxXT9pPj10W2VdJiZpPHRbZSsxXS0odFtlKzFdLXRbZV0pLzI/cj1lOmk+PXRbZV0mJmk8dFtlKzFdJiYocj1lKzEpOmk+PXRbZV0mJihyPWUpO3JldHVybiByPW4ubm9ybWFsaXplU2xpZGVJbmRleCYmKHI8MHx8dm9pZCAwPT09cik/MDpyfShuKSksKGM9MDw9ci5pbmRleE9mKGkpP3IuaW5kZXhPZihpKTooaT1NYXRoLm1pbihzLnNsaWRlc1Blckdyb3VwU2tpcCxkKSkrTWF0aC5mbG9vcigoZC1pKS9zLnNsaWRlc1Blckdyb3VwKSk+PXIubGVuZ3RoJiYoYz1yLmxlbmd0aC0xKSxkIT09YXx8bi5wYXJhbXMubG9vcClpZihkPT09YSYmbi5wYXJhbXMubG9vcCYmbi52aXJ0dWFsJiZuLnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQpbi5yZWFsSW5kZXg9ZShkKTtlbHNle2k9bi5ncmlkJiZzLmdyaWQmJjE8cy5ncmlkLnJvd3M7bGV0IHQ7aWYobi52aXJ0dWFsJiZzLnZpcnR1YWwuZW5hYmxlZCYmcy5sb29wKXQ9ZShkKTtlbHNlIGlmKGkpe3I9bi5zbGlkZXMuZmluZChlPT5lLmNvbHVtbj09PWQpO2xldCBlPXBhcnNlSW50KHIuZ2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1zbGlkZS1pbmRleCIpLDEwKTtOdW1iZXIuaXNOYU4oZSkmJihlPU1hdGgubWF4KG4uc2xpZGVzLmluZGV4T2YociksMCkpLHQ9TWF0aC5mbG9vcihlL3MuZ3JpZC5yb3dzKX1lbHNlIHQ9bi5zbGlkZXNbZF0mJihlPW4uc2xpZGVzW2RdLmdldEF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItc2xpZGUtaW5kZXgiKSxlKT9wYXJzZUludChlLDEwKTpkO09iamVjdC5hc3NpZ24obix7cHJldmlvdXNTbmFwSW5kZXg6bCxzbmFwSW5kZXg6YyxwcmV2aW91c1JlYWxJbmRleDpvLHJlYWxJbmRleDp0LHByZXZpb3VzSW5kZXg6YSxhY3RpdmVJbmRleDpkfSksbi5pbml0aWFsaXplZCYmaChuKSxuLmVtaXQoImFjdGl2ZUluZGV4Q2hhbmdlIiksbi5lbWl0KCJzbmFwSW5kZXhDaGFuZ2UiKSwobi5pbml0aWFsaXplZHx8bi5wYXJhbXMucnVuQ2FsbGJhY2tzT25Jbml0KSYmKG8hPT10JiZuLmVtaXQoInJlYWxJbmRleENoYW5nZSIpLG4uZW1pdCgic2xpZGVDaGFuZ2UiKSl9ZWxzZSBjIT09bCYmKG4uc25hcEluZGV4PWMsbi5lbWl0KCJzbmFwSW5kZXhDaGFuZ2UiKSl9LHVwZGF0ZUNsaWNrZWRTbGlkZTpmdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7Y29uc3QgaT1uLnBhcmFtcztsZXQgcj1lLmNsb3Nlc3QoYC4ke2kuc2xpZGVDbGFzc30sIHN3aXBlci1zbGlkZWApLHM9KCFyJiZuLmlzRWxlbWVudCYmdCYmMTx0Lmxlbmd0aCYmdC5pbmNsdWRlcyhlKSYmWy4uLnQuc2xpY2UodC5pbmRleE9mKGUpKzEsdC5sZW5ndGgpXS5mb3JFYWNoKGU9PnshciYmZS5tYXRjaGVzJiZlLm1hdGNoZXMoYC4ke2kuc2xpZGVDbGFzc30sIHN3aXBlci1zbGlkZWApJiYocj1lKX0pLCExKSxhO2lmKHIpZm9yKGxldCBlPTA7ZTxuLnNsaWRlcy5sZW5ndGg7ZSs9MSlpZihuLnNsaWRlc1tlXT09PXIpe3M9ITAsYT1lO2JyZWFrfXImJnM/KG4uY2xpY2tlZFNsaWRlPXIsbi52aXJ0dWFsJiZuLnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQ/bi5jbGlja2VkSW5kZXg9cGFyc2VJbnQoci5nZXRBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXNsaWRlLWluZGV4IiksMTApOm4uY2xpY2tlZEluZGV4PWEsaS5zbGlkZVRvQ2xpY2tlZFNsaWRlJiZ2b2lkIDAhPT1uLmNsaWNrZWRJbmRleCYmbi5jbGlja2VkSW5kZXghPT1uLmFjdGl2ZUluZGV4JiZuLnNsaWRlVG9DbGlja2VkU2xpZGUoKSk6KG4uY2xpY2tlZFNsaWRlPXZvaWQgMCxuLmNsaWNrZWRJbmRleD12b2lkIDApfX0sdHJhbnNsYXRlOntnZXRUcmFuc2xhdGU6ZnVuY3Rpb24oZT10aGlzLmlzSG9yaXpvbnRhbCgpPyJ4IjoieSIpe3ZhcntwYXJhbXM6dCxydGxUcmFuc2xhdGU6bix0cmFuc2xhdGU6aSx3cmFwcGVyRWw6cn09dGhpcztpZih0LnZpcnR1YWxUcmFuc2xhdGUpcmV0dXJuIG4/LWk6aTtpZih0LmNzc01vZGUpcmV0dXJuIGk7bGV0IHM9TihyLGUpO3JldHVybiBzKz10aGlzLmNzc092ZXJmbG93QWRqdXN0bWVudCgpLChzPW4/LXM6cyl8fDB9LHNldFRyYW5zbGF0ZTpmdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMse3J0bFRyYW5zbGF0ZTppLHBhcmFtczpyLHdyYXBwZXJFbDpzLHByb2dyZXNzOmF9PW47bGV0IG89MCxsPTA7bi5pc0hvcml6b250YWwoKT9vPWk/LWU6ZTpsPWUsci5yb3VuZExlbmd0aHMmJihvPU1hdGguZmxvb3IobyksbD1NYXRoLmZsb29yKGwpKSxuLnByZXZpb3VzVHJhbnNsYXRlPW4udHJhbnNsYXRlLG4udHJhbnNsYXRlPW4uaXNIb3Jpem9udGFsKCk/bzpsLHIuY3NzTW9kZT9zW24uaXNIb3Jpem9udGFsKCk/InNjcm9sbExlZnQiOiJzY3JvbGxUb3AiXT1uLmlzSG9yaXpvbnRhbCgpPy1vOi1sOnIudmlydHVhbFRyYW5zbGF0ZXx8KG4uaXNIb3Jpem9udGFsKCk/by09bi5jc3NPdmVyZmxvd0FkanVzdG1lbnQoKTpsLT1uLmNzc092ZXJmbG93QWRqdXN0bWVudCgpLHMuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgke299cHgsICR7bH1weCwgMHB4KWApO2xldCBkO2k9bi5tYXhUcmFuc2xhdGUoKS1uLm1pblRyYW5zbGF0ZSgpLChkPTA9PWk/MDooZS1uLm1pblRyYW5zbGF0ZSgpKS9pKSE9PWEmJm4udXBkYXRlUHJvZ3Jlc3MoZSksbi5lbWl0KCJzZXRUcmFuc2xhdGUiLG4udHJhbnNsYXRlLHQpfSxtaW5UcmFuc2xhdGU6ZnVuY3Rpb24oKXtyZXR1cm4tdGhpcy5zbmFwR3JpZFswXX0sbWF4VHJhbnNsYXRlOmZ1bmN0aW9uKCl7cmV0dXJuLXRoaXMuc25hcEdyaWRbdGhpcy5zbmFwR3JpZC5sZW5ndGgtMV19LHRyYW5zbGF0ZVRvOmZ1bmN0aW9uKGU9MCx0PXRoaXMucGFyYW1zLnNwZWVkLG49ITAsaT0hMCxyKXtjb25zdCBzPXRoaXM7dmFye3BhcmFtczphLHdyYXBwZXJFbDpvfT1zO2lmKHMuYW5pbWF0aW5nJiZhLnByZXZlbnRJbnRlcmFjdGlvbk9uVHJhbnNpdGlvbilyZXR1cm4hMTt2YXIgbD1zLm1pblRyYW5zbGF0ZSgpLGQ9cy5tYXhUcmFuc2xhdGUoKTtsZXQgYztpZihjPWkmJmw8ZT9sOmkmJmU8ZD9kOmUscy51cGRhdGVQcm9ncmVzcyhjKSxhLmNzc01vZGUpe2w9cy5pc0hvcml6b250YWwoKTtpZigwPT09dClvW2w/InNjcm9sbExlZnQiOiJzY3JvbGxUb3AiXT0tYztlbHNle2lmKCFzLnN1cHBvcnQuc21vb3RoU2Nyb2xsKXJldHVybiBrKHtzd2lwZXI6cyx0YXJnZXRQb3NpdGlvbjotYyxzaWRlOmw/ImxlZnQiOiJ0b3AifSksITA7by5zY3JvbGxUbyh7W2w/ImxlZnQiOiJ0b3AiXTotYyxiZWhhdmlvcjoic21vb3RoIn0pfX1lbHNlIDA9PT10PyhzLnNldFRyYW5zaXRpb24oMCkscy5zZXRUcmFuc2xhdGUoYyksbiYmKHMuZW1pdCgiYmVmb3JlVHJhbnNpdGlvblN0YXJ0Iix0LHIpLHMuZW1pdCgidHJhbnNpdGlvbkVuZCIpKSk6KHMuc2V0VHJhbnNpdGlvbih0KSxzLnNldFRyYW5zbGF0ZShjKSxuJiYocy5lbWl0KCJiZWZvcmVUcmFuc2l0aW9uU3RhcnQiLHQscikscy5lbWl0KCJ0cmFuc2l0aW9uU3RhcnQiKSkscy5hbmltYXRpbmd8fChzLmFuaW1hdGluZz0hMCxzLm9uVHJhbnNsYXRlVG9XcmFwcGVyVHJhbnNpdGlvbkVuZHx8KHMub25UcmFuc2xhdGVUb1dyYXBwZXJUcmFuc2l0aW9uRW5kPWZ1bmN0aW9uKGUpe3MmJiFzLmRlc3Ryb3llZCYmZS50YXJnZXQ9PT10aGlzJiYocy53cmFwcGVyRWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigidHJhbnNpdGlvbmVuZCIscy5vblRyYW5zbGF0ZVRvV3JhcHBlclRyYW5zaXRpb25FbmQpLHMub25UcmFuc2xhdGVUb1dyYXBwZXJUcmFuc2l0aW9uRW5kPW51bGwsZGVsZXRlIHMub25UcmFuc2xhdGVUb1dyYXBwZXJUcmFuc2l0aW9uRW5kLHMuYW5pbWF0aW5nPSExLG4pJiZzLmVtaXQoInRyYW5zaXRpb25FbmQiKX0pLHMud3JhcHBlckVsLmFkZEV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLHMub25UcmFuc2xhdGVUb1dyYXBwZXJUcmFuc2l0aW9uRW5kKSkpO3JldHVybiEwfX0sdHJhbnNpdGlvbjp7c2V0VHJhbnNpdGlvbjpmdW5jdGlvbihlLHQpe3RoaXMucGFyYW1zLmNzc01vZGV8fCh0aGlzLndyYXBwZXJFbC5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249ZSsibXMiLHRoaXMud3JhcHBlckVsLnN0eWxlLnRyYW5zaXRpb25EZWxheT0wPT09ZT8iMG1zIjoiIiksdGhpcy5lbWl0KCJzZXRUcmFuc2l0aW9uIixlLHQpfSx0cmFuc2l0aW9uU3RhcnQ6ZnVuY3Rpb24oZT0hMCx0KXt2YXIgbj10aGlzWyJwYXJhbXMiXTtuLmNzc01vZGV8fChuLmF1dG9IZWlnaHQmJnRoaXMudXBkYXRlQXV0b0hlaWdodCgpLFcoe3N3aXBlcjp0aGlzLHJ1bkNhbGxiYWNrczplLGRpcmVjdGlvbjp0LHN0ZXA6IlN0YXJ0In0pKX0sdHJhbnNpdGlvbkVuZDpmdW5jdGlvbihlPSEwLHQpe3ZhciBuPXRoaXNbInBhcmFtcyJdO3RoaXMuYW5pbWF0aW5nPSExLG4uY3NzTW9kZXx8KHRoaXMuc2V0VHJhbnNpdGlvbigwKSxXKHtzd2lwZXI6dGhpcyxydW5DYWxsYmFja3M6ZSxkaXJlY3Rpb246dCxzdGVwOiJFbmQifSkpfX0sc2xpZGU6e3NsaWRlVG86ZnVuY3Rpb24oZT0wLHQsbj0hMCxpLHIpeyJzdHJpbmciPT10eXBlb2YgZSYmKGU9cGFyc2VJbnQoZSwxMCkpO2NvbnN0IHM9dGhpcztsZXQgYT1lO2E8MCYmKGE9MCk7Y29uc3R7cGFyYW1zOm8sc25hcEdyaWQ6bCxzbGlkZXNHcmlkOmQscHJldmlvdXNJbmRleDpjLGFjdGl2ZUluZGV4OnUscnRsVHJhbnNsYXRlOnAsd3JhcHBlckVsOmgsZW5hYmxlZDpmfT1zO2lmKCFmJiYhaSYmIXJ8fHMuZGVzdHJveWVkfHxzLmFuaW1hdGluZyYmby5wcmV2ZW50SW50ZXJhY3Rpb25PblRyYW5zaXRpb24pcmV0dXJuITE7dm9pZCAwPT09dCYmKHQ9cy5wYXJhbXMuc3BlZWQpO2xldCBtPShlPU1hdGgubWluKHMucGFyYW1zLnNsaWRlc1Blckdyb3VwU2tpcCxhKSkrTWF0aC5mbG9vcigoYS1lKS9zLnBhcmFtcy5zbGlkZXNQZXJHcm91cCk7dmFyIGc9LWxbbT1tPj1sLmxlbmd0aD9sLmxlbmd0aC0xOm1dO2lmKG8ubm9ybWFsaXplU2xpZGVJbmRleClmb3IobGV0IGU9MDtlPGQubGVuZ3RoO2UrPTEpe3ZhciB2PS1NYXRoLmZsb29yKDEwMCpnKSx5PU1hdGguZmxvb3IoMTAwKmRbZV0pLGI9TWF0aC5mbG9vcigxMDAqZFtlKzFdKTt2b2lkIDAhPT1kW2UrMV0/eTw9diYmdjxiLShiLXkpLzI/YT1lOnk8PXYmJnY8YiYmKGE9ZSsxKTp5PD12JiYoYT1lKX1pZihzLmluaXRpYWxpemVkJiZhIT09dSl7aWYoIXMuYWxsb3dTbGlkZU5leHQmJihwP2c+cy50cmFuc2xhdGUmJmc+cy5taW5UcmFuc2xhdGUoKTpnPHMudHJhbnNsYXRlJiZnPHMubWluVHJhbnNsYXRlKCkpKXJldHVybiExO2lmKCFzLmFsbG93U2xpZGVQcmV2JiZnPnMudHJhbnNsYXRlJiZnPnMubWF4VHJhbnNsYXRlKCkmJih1fHwwKSE9PWEpcmV0dXJuITF9YSE9PShjfHwwKSYmbiYmcy5lbWl0KCJiZWZvcmVTbGlkZUNoYW5nZVN0YXJ0Iikscy51cGRhdGVQcm9ncmVzcyhnKTtsZXQgdztpZih3PWE+dT8ibmV4dCI6YTx1PyJwcmV2IjoicmVzZXQiLCEoKGU9cy52aXJ0dWFsJiZzLnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQpJiZyKSYmKHAmJi1nPT09cy50cmFuc2xhdGV8fCFwJiZnPT09cy50cmFuc2xhdGUpKXJldHVybiBzLnVwZGF0ZUFjdGl2ZUluZGV4KGEpLG8uYXV0b0hlaWdodCYmcy51cGRhdGVBdXRvSGVpZ2h0KCkscy51cGRhdGVTbGlkZXNDbGFzc2VzKCksInNsaWRlIiE9PW8uZWZmZWN0JiZzLnNldFRyYW5zbGF0ZShnKSwicmVzZXQiIT09dyYmKHMudHJhbnNpdGlvblN0YXJ0KG4sdykscy50cmFuc2l0aW9uRW5kKG4sdykpLCExO2lmKG8uY3NzTW9kZSl7Y29uc3QgRT1zLmlzSG9yaXpvbnRhbCgpLF89cD9nOi1nO2lmKDA9PT10KWUmJihzLndyYXBwZXJFbC5zdHlsZS5zY3JvbGxTbmFwVHlwZT0ibm9uZSIscy5faW1tZWRpYXRlVmlydHVhbD0hMCksZSYmIXMuX2Nzc01vZGVWaXJ0dWFsSW5pdGlhbFNldCYmMDxzLnBhcmFtcy5pbml0aWFsU2xpZGU/KHMuX2Nzc01vZGVWaXJ0dWFsSW5pdGlhbFNldD0hMCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntoW0U/InNjcm9sbExlZnQiOiJzY3JvbGxUb3AiXT1ffSkpOmhbRT8ic2Nyb2xsTGVmdCI6InNjcm9sbFRvcCJdPV8sZSYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57cy53cmFwcGVyRWwuc3R5bGUuc2Nyb2xsU25hcFR5cGU9IiIscy5faW1tZWRpYXRlVmlydHVhbD0hMX0pO2Vsc2V7aWYoIXMuc3VwcG9ydC5zbW9vdGhTY3JvbGwpcmV0dXJuIGsoe3N3aXBlcjpzLHRhcmdldFBvc2l0aW9uOl8sc2lkZTpFPyJsZWZ0IjoidG9wIn0pLCEwO2guc2Nyb2xsVG8oe1tFPyJsZWZ0IjoidG9wIl06XyxiZWhhdmlvcjoic21vb3RoIn0pfX1lbHNle3ZhciB4PUYoKS5pc1NhZmFyaTtlJiYhciYmeCYmcy5pc0VsZW1lbnQmJnMudmlydHVhbC51cGRhdGUoITEsITEsYSkscy5zZXRUcmFuc2l0aW9uKHQpLHMuc2V0VHJhbnNsYXRlKGcpLHMudXBkYXRlQWN0aXZlSW5kZXgoYSkscy51cGRhdGVTbGlkZXNDbGFzc2VzKCkscy5lbWl0KCJiZWZvcmVUcmFuc2l0aW9uU3RhcnQiLHQsaSkscy50cmFuc2l0aW9uU3RhcnQobix3KSwwPT09dD9zLnRyYW5zaXRpb25FbmQobix3KTpzLmFuaW1hdGluZ3x8KHMuYW5pbWF0aW5nPSEwLHMub25TbGlkZVRvV3JhcHBlclRyYW5zaXRpb25FbmR8fChzLm9uU2xpZGVUb1dyYXBwZXJUcmFuc2l0aW9uRW5kPWZ1bmN0aW9uKGUpe3MmJiFzLmRlc3Ryb3llZCYmZS50YXJnZXQ9PT10aGlzJiYocy53cmFwcGVyRWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigidHJhbnNpdGlvbmVuZCIscy5vblNsaWRlVG9XcmFwcGVyVHJhbnNpdGlvbkVuZCkscy5vblNsaWRlVG9XcmFwcGVyVHJhbnNpdGlvbkVuZD1udWxsLGRlbGV0ZSBzLm9uU2xpZGVUb1dyYXBwZXJUcmFuc2l0aW9uRW5kLHMudHJhbnNpdGlvbkVuZChuLHcpKX0pLHMud3JhcHBlckVsLmFkZEV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLHMub25TbGlkZVRvV3JhcHBlclRyYW5zaXRpb25FbmQpKX1yZXR1cm4hMH0sc2xpZGVUb0xvb3A6ZnVuY3Rpb24ocj0wLGUsdD0hMCxzKXsic3RyaW5nIj09dHlwZW9mIHImJihyPXBhcnNlSW50KHIsMTApKTtjb25zdCBhPXRoaXM7aWYoIWEuZGVzdHJveWVkKXt2b2lkIDA9PT1lJiYoZT1hLnBhcmFtcy5zcGVlZCk7dmFyIG89YS5ncmlkJiZhLnBhcmFtcy5ncmlkJiYxPGEucGFyYW1zLmdyaWQucm93cztsZXQgaT1yO2lmKGEucGFyYW1zLmxvb3ApaWYoYS52aXJ0dWFsJiZhLnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQpaSs9YS52aXJ0dWFsLnNsaWRlc0JlZm9yZTtlbHNle2xldCBlO2lmKG8pe2NvbnN0IHU9aSphLnBhcmFtcy5ncmlkLnJvd3M7ZT1hLnNsaWRlcy5maW5kKGU9PitlLmdldEF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItc2xpZGUtaW5kZXgiKT09dSkuY29sdW1ufWVsc2UgZT1hLmdldFNsaWRlSW5kZXhCeURhdGEoaSk7dmFyIHI9bz9NYXRoLmNlaWwoYS5zbGlkZXMubGVuZ3RoL2EucGFyYW1zLmdyaWQucm93cyk6YS5zbGlkZXMubGVuZ3RoLHtjZW50ZXJlZFNsaWRlczpsLHNsaWRlc09mZnNldEJlZm9yZTpkLHNsaWRlc09mZnNldEFmdGVyOmN9PWEucGFyYW1zLGw9bHx8ISFkfHwhIWM7bGV0IHQ9YS5wYXJhbXMuc2xpZGVzUGVyVmlldyxuPSgiYXV0byI9PT10P3Q9YS5zbGlkZXNQZXJWaWV3RHluYW1pYygpOih0PU1hdGguY2VpbChwYXJzZUZsb2F0KGEucGFyYW1zLnNsaWRlc1BlclZpZXcsMTApKSxsJiZ0JTI9PTAmJih0Kz0xKSksci1lPHQpO2lmKGwmJihuPW58fGU8TWF0aC5jZWlsKHQvMikpLChuPXMmJmwmJiJhdXRvIiE9PWEucGFyYW1zLnNsaWRlc1BlclZpZXcmJiFvPyExOm4pJiYoZD1sP2U8YS5hY3RpdmVJbmRleD8icHJldiI6Im5leHQiOmUtYS5hY3RpdmVJbmRleC0xPGEucGFyYW1zLnNsaWRlc1BlclZpZXc/Im5leHQiOiJwcmV2IixhLmxvb3BGaXgoe2RpcmVjdGlvbjpkLHNsaWRlVG86ITAsYWN0aXZlU2xpZGVJbmRleDoibmV4dCI9PWQ/ZSsxOmUtcisxLHNsaWRlUmVhbEluZGV4OiJuZXh0Ij09ZD9hLnJlYWxJbmRleDp2b2lkIDB9KSksbyl7Y29uc3QgcD1pKmEucGFyYW1zLmdyaWQucm93cztpPWEuc2xpZGVzLmZpbmQoZT0+K2UuZ2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1zbGlkZS1pbmRleCIpPT1wKS5jb2x1bW59ZWxzZSBpPWEuZ2V0U2xpZGVJbmRleEJ5RGF0YShpKX1yZXR1cm4gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57YS5zbGlkZVRvKGksZSx0LHMpfSksYX19LHNsaWRlTmV4dDpmdW5jdGlvbihlLHQ9ITAsbil7Y29uc3QgaT10aGlzO3ZhcntlbmFibGVkOnIscGFyYW1zOnMsYW5pbWF0aW5nOmF9PWk7aWYoIXJ8fGkuZGVzdHJveWVkKXJldHVybiBpO3ZvaWQgMD09PWUmJihlPWkucGFyYW1zLnNwZWVkKTtsZXQgbz1zLnNsaWRlc1Blckdyb3VwOyJhdXRvIj09PXMuc2xpZGVzUGVyVmlldyYmMT09PXMuc2xpZGVzUGVyR3JvdXAmJnMuc2xpZGVzUGVyR3JvdXBBdXRvJiYobz1NYXRoLm1heChpLnNsaWRlc1BlclZpZXdEeW5hbWljKCJjdXJyZW50IiwhMCksMSkpO2NvbnN0IGw9aS5hY3RpdmVJbmRleDxzLnNsaWRlc1Blckdyb3VwU2tpcD8xOm87aWYocj1pLnZpcnR1YWwmJnMudmlydHVhbC5lbmFibGVkLHMubG9vcCl7aWYoYSYmIXImJnMubG9vcFByZXZlbnRzU2xpZGluZylyZXR1cm4hMTtpZihpLmxvb3BGaXgoe2RpcmVjdGlvbjoibmV4dCJ9KSxpLl9jbGllbnRMZWZ0PWkud3JhcHBlckVsLmNsaWVudExlZnQsaS5hY3RpdmVJbmRleD09PWkuc2xpZGVzLmxlbmd0aC0xJiZzLmNzc01vZGUpcmV0dXJuIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e2kuc2xpZGVUbyhpLmFjdGl2ZUluZGV4K2wsZSx0LG4pfSksITB9cmV0dXJuIHMucmV3aW5kJiZpLmlzRW5kP2kuc2xpZGVUbygwLGUsdCxuKTppLnNsaWRlVG8oaS5hY3RpdmVJbmRleCtsLGUsdCxuKX0sc2xpZGVQcmV2OmZ1bmN0aW9uKGUsdD0hMCxuKXtjb25zdCBpPXRoaXM7dmFye3BhcmFtczpyLHNuYXBHcmlkOnMsc2xpZGVzR3JpZDphLHJ0bFRyYW5zbGF0ZTpvLGVuYWJsZWQ6bCxhbmltYXRpbmc6ZH09aTtpZighbHx8aS5kZXN0cm95ZWQpcmV0dXJuIGk7aWYodm9pZCAwPT09ZSYmKGU9aS5wYXJhbXMuc3BlZWQpLGw9aS52aXJ0dWFsJiZyLnZpcnR1YWwuZW5hYmxlZCxyLmxvb3Ape2lmKGQmJiFsJiZyLmxvb3BQcmV2ZW50c1NsaWRpbmcpcmV0dXJuITE7aS5sb29wRml4KHtkaXJlY3Rpb246InByZXYifSksaS5fY2xpZW50TGVmdD1pLndyYXBwZXJFbC5jbGllbnRMZWZ0fWZ1bmN0aW9uIGMoZSl7cmV0dXJuIGU8MD8tTWF0aC5mbG9vcihNYXRoLmFicyhlKSk6TWF0aC5mbG9vcihlKX1jb25zdCB1PWMobz9pLnRyYW5zbGF0ZTotaS50cmFuc2xhdGUpO2Q9cy5tYXAoZT0+YyhlKSksbD1yLmZyZWVNb2RlJiZyLmZyZWVNb2RlLmVuYWJsZWQ7bGV0IHA9c1tkLmluZGV4T2YodSktMV07aWYodm9pZCAwPT09cCYmKHIuY3NzTW9kZXx8bCkpe2xldCBuO3MuZm9yRWFjaCgoZSx0KT0+e3U+PWUmJihuPXQpfSksdm9pZCAwIT09biYmKHA9bD9zW25dOnNbMDxuP24tMTpuXSl9bGV0IGg9MDtyZXR1cm4gdm9pZCAwIT09cCYmKChoPWEuaW5kZXhPZihwKSk8MCYmKGg9aS5hY3RpdmVJbmRleC0xKSwiYXV0byI9PT1yLnNsaWRlc1BlclZpZXcpJiYxPT09ci5zbGlkZXNQZXJHcm91cCYmci5zbGlkZXNQZXJHcm91cEF1dG8mJihoPWgtaS5zbGlkZXNQZXJWaWV3RHluYW1pYygicHJldmlvdXMiLCEwKSsxLGg9TWF0aC5tYXgoaCwwKSksci5yZXdpbmQmJmkuaXNCZWdpbm5pbmc/KG89aS5wYXJhbXMudmlydHVhbCYmaS5wYXJhbXMudmlydHVhbC5lbmFibGVkJiZpLnZpcnR1YWw/aS52aXJ0dWFsLnNsaWRlcy5sZW5ndGgtMTppLnNsaWRlcy5sZW5ndGgtMSxpLnNsaWRlVG8obyxlLHQsbikpOnIubG9vcCYmMD09PWkuYWN0aXZlSW5kZXgmJnIuY3NzTW9kZT8ocmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57aS5zbGlkZVRvKGgsZSx0LG4pfSksITApOmkuc2xpZGVUbyhoLGUsdCxuKX0sc2xpZGVSZXNldDpmdW5jdGlvbihlLHQ9ITAsbil7aWYoIXRoaXMuZGVzdHJveWVkKXJldHVybiB2b2lkIDA9PT1lJiYoZT10aGlzLnBhcmFtcy5zcGVlZCksdGhpcy5zbGlkZVRvKHRoaXMuYWN0aXZlSW5kZXgsZSx0LG4pfSxzbGlkZVRvQ2xvc2VzdDpmdW5jdGlvbih0LG49ITAsaSxyPS41KXt2YXIgcz10aGlzO2lmKCFzLmRlc3Ryb3llZCl7dm9pZCAwPT09dCYmKHQ9cy5wYXJhbXMuc3BlZWQpO2xldCBlPXMuYWN0aXZlSW5kZXg7dmFyIGEsbz1NYXRoLm1pbihzLnBhcmFtcy5zbGlkZXNQZXJHcm91cFNraXAsZSksbz1vK01hdGguZmxvb3IoKGUtbykvcy5wYXJhbXMuc2xpZGVzUGVyR3JvdXApLGw9cy5ydGxUcmFuc2xhdGU/cy50cmFuc2xhdGU6LXMudHJhbnNsYXRlO3JldHVybiBsPj1zLnNuYXBHcmlkW29dPyhhPXMuc25hcEdyaWRbb10sKHMuc25hcEdyaWRbbysxXS1hKSpyPGwtYSYmKGUrPXMucGFyYW1zLnNsaWRlc1Blckdyb3VwKSk6bC0oYT1zLnNuYXBHcmlkW28tMV0pPD0ocy5zbmFwR3JpZFtvXS1hKSpyJiYoZS09cy5wYXJhbXMuc2xpZGVzUGVyR3JvdXApLGU9TWF0aC5tYXgoZSwwKSxlPU1hdGgubWluKGUscy5zbGlkZXNHcmlkLmxlbmd0aC0xKSxzLnNsaWRlVG8oZSx0LG4saSl9fSxzbGlkZVRvQ2xpY2tlZFNsaWRlOmZ1bmN0aW9uKCl7Y29uc3QgdD10aGlzO2lmKCF0LmRlc3Ryb3llZCl7dmFyIG4se3BhcmFtczppLHNsaWRlc0VsOnJ9PXQscz0iYXV0byI9PT1pLnNsaWRlc1BlclZpZXc/dC5zbGlkZXNQZXJWaWV3RHluYW1pYygpOmkuc2xpZGVzUGVyVmlldztsZXQgZT10LmdldFNsaWRlSW5kZXhXaGVuR3JpZCh0LmNsaWNrZWRJbmRleCk7dmFyIGE9dC5pc0VsZW1lbnQ/InN3aXBlci1zbGlkZSI6Ii4iK2kuc2xpZGVDbGFzcyxvPXQuZ3JpZCYmdC5wYXJhbXMuZ3JpZCYmMTx0LnBhcmFtcy5ncmlkLnJvd3M7aS5sb29wP3QuYW5pbWF0aW5nfHwobj1wYXJzZUludCh0LmNsaWNrZWRTbGlkZS5nZXRBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXNsaWRlLWluZGV4IiksMTApLGkuY2VudGVyZWRTbGlkZXM/dC5zbGlkZVRvTG9vcChuKTplPihvPyh0LnNsaWRlcy5sZW5ndGgtcykvMi0odC5wYXJhbXMuZ3JpZC5yb3dzLTEpOnQuc2xpZGVzLmxlbmd0aC1zKT8odC5sb29wRml4KCksZT10LmdldFNsaWRlSW5kZXgoWShyLGErYFtkYXRhLXN3aXBlci1zbGlkZS1pbmRleD0iJHtufSJdYClbMF0pLFQoKCk9Pnt0LnNsaWRlVG8oZSl9KSk6dC5zbGlkZVRvKGUpKTp0LnNsaWRlVG8oZSl9fX0sbG9vcDp7bG9vcENyZWF0ZTpmdW5jdGlvbihlLHQpe2NvbnN0IGk9dGhpcyx7cGFyYW1zOnIsc2xpZGVzRWw6bn09aTt2YXIgcyxhLG8sbCxkOyFyLmxvb3B8fGkudmlydHVhbCYmaS5wYXJhbXMudmlydHVhbC5lbmFibGVkfHwocz0oKT0+e1kobixgLiR7ci5zbGlkZUNsYXNzfSwgc3dpcGVyLXNsaWRlYCkuZm9yRWFjaCgoZSx0KT0+e2Uuc2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1zbGlkZS1pbmRleCIsdCl9KX0sbz1pLmdyaWQmJnIuZ3JpZCYmMTxyLmdyaWQucm93cyxyLmxvb3BBZGRCbGFua1NsaWRlcyYmKDE8ci5zbGlkZXNQZXJHcm91cHx8bykmJigoYT1ZKG4sIi4iK3Iuc2xpZGVCbGFua0NsYXNzKSkuZm9yRWFjaChlPT57ZS5yZW1vdmUoKX0pLDA8YS5sZW5ndGgpJiYoaS5yZWNhbGNTbGlkZXMoKSxpLnVwZGF0ZVNsaWRlcygpKSxhPXIuc2xpZGVzUGVyR3JvdXAqKG8/ci5ncmlkLnJvd3M6MSksZD1pLnNsaWRlcy5sZW5ndGglYSE9MCxvPW8mJmkuc2xpZGVzLmxlbmd0aCVyLmdyaWQucm93cyE9MCxsPXQ9Pntmb3IobGV0IGU9MDtlPHQ7ZSs9MSl7dmFyIG49aS5pc0VsZW1lbnQ/Uygic3dpcGVyLXNsaWRlIixbci5zbGlkZUJsYW5rQ2xhc3NdKTpTKCJkaXYiLFtyLnNsaWRlQ2xhc3Msci5zbGlkZUJsYW5rQ2xhc3NdKTtpLnNsaWRlc0VsLmFwcGVuZChuKX19LGQ/ci5sb29wQWRkQmxhbmtTbGlkZXM/KGwoYS1pLnNsaWRlcy5sZW5ndGglYSksaS5yZWNhbGNTbGlkZXMoKSxpLnVwZGF0ZVNsaWRlcygpKTpQKCJTd2lwZXIgTG9vcCBXYXJuaW5nOiBUaGUgbnVtYmVyIG9mIHNsaWRlcyBpcyBub3QgZXZlbiB0byBzbGlkZXNQZXJHcm91cCwgbG9vcCBtb2RlIG1heSBub3QgZnVuY3Rpb24gcHJvcGVybHkuIFlvdSBuZWVkIHRvIGFkZCBtb3JlIHNsaWRlcyAob3IgbWFrZSBkdXBsaWNhdGVzLCBvciBlbXB0eSBzbGlkZXMpIik6byYmKHIubG9vcEFkZEJsYW5rU2xpZGVzPyhsKHIuZ3JpZC5yb3dzLWkuc2xpZGVzLmxlbmd0aCVyLmdyaWQucm93cyksaS5yZWNhbGNTbGlkZXMoKSxpLnVwZGF0ZVNsaWRlcygpKTpQKCJTd2lwZXIgTG9vcCBXYXJuaW5nOiBUaGUgbnVtYmVyIG9mIHNsaWRlcyBpcyBub3QgZXZlbiB0byBncmlkLnJvd3MsIGxvb3AgbW9kZSBtYXkgbm90IGZ1bmN0aW9uIHByb3Blcmx5LiBZb3UgbmVlZCB0byBhZGQgbW9yZSBzbGlkZXMgKG9yIG1ha2UgZHVwbGljYXRlcywgb3IgZW1wdHkgc2xpZGVzKSIpKSxzKCksZD1yLmNlbnRlcmVkU2xpZGVzfHwhIXIuc2xpZGVzT2Zmc2V0QmVmb3JlfHwhIXIuc2xpZGVzT2Zmc2V0QWZ0ZXIsaS5sb29wRml4KHtzbGlkZVJlYWxJbmRleDplLGRpcmVjdGlvbjpkP3ZvaWQgMDoibmV4dCIsaW5pdGlhbDp0fSkpfSxsb29wRml4OmZ1bmN0aW9uKHtzbGlkZVJlYWxJbmRleDpzLHNsaWRlVG86YT0hMCxkaXJlY3Rpb246byxzZXRUcmFuc2xhdGU6bCxhY3RpdmVTbGlkZUluZGV4OmQsaW5pdGlhbDpjLGJ5Q29udHJvbGxlcjp1LGJ5TW91c2V3aGVlbDpwfT17fSl7Y29uc3QgaD10aGlzO2lmKGgucGFyYW1zLmxvb3Ape2guZW1pdCgiYmVmb3JlTG9vcEZpeCIpO2NvbnN0e3NsaWRlczpTLGFsbG93U2xpZGVQcmV2OkMsYWxsb3dTbGlkZU5leHQ6QSxzbGlkZXNFbDpNLHBhcmFtczpEfT1oO3ZhcntjZW50ZXJlZFNsaWRlczpmLHNsaWRlc09mZnNldEJlZm9yZTptLHNsaWRlc09mZnNldEFmdGVyOmcsaW5pdGlhbFNsaWRlOnZ9PUQsZj1mfHwhIW18fCEhZztpZihoLmFsbG93U2xpZGVQcmV2PSEwLGguYWxsb3dTbGlkZU5leHQ9ITAsaC52aXJ0dWFsJiZELnZpcnR1YWwuZW5hYmxlZClhJiYoZnx8MCE9PWguc25hcEluZGV4P2YmJmguc25hcEluZGV4PEQuc2xpZGVzUGVyVmlldz9oLnNsaWRlVG8oaC52aXJ0dWFsLnNsaWRlcy5sZW5ndGgraC5zbmFwSW5kZXgsMCwhMSwhMCk6aC5zbmFwSW5kZXg9PT1oLnNuYXBHcmlkLmxlbmd0aC0xJiZoLnNsaWRlVG8oaC52aXJ0dWFsLnNsaWRlc0JlZm9yZSwwLCExLCEwKTpoLnNsaWRlVG8oaC52aXJ0dWFsLnNsaWRlcy5sZW5ndGgsMCwhMSwhMCkpLGguYWxsb3dTbGlkZVByZXY9QyxoLmFsbG93U2xpZGVOZXh0PUE7ZWxzZXtsZXQgZT1ELnNsaWRlc1BlclZpZXc7ImF1dG8iPT09ZT9lPWguc2xpZGVzUGVyVmlld0R5bmFtaWMoKTooZT1NYXRoLmNlaWwocGFyc2VGbG9hdChELnNsaWRlc1BlclZpZXcsMTApKSxmJiZlJTI9PTAmJihlKz0xKSk7bT1ELnNsaWRlc1Blckdyb3VwQXV0bz9lOkQuc2xpZGVzUGVyR3JvdXA7bGV0IHQ9Zj9NYXRoLm1heChtLE1hdGguY2VpbChlLzIpKTptO3QlbSE9MCYmKHQrPW0tdCVtKSx0Kz1ELmxvb3BBZGRpdGlvbmFsU2xpZGVzLGgubG9vcGVkU2xpZGVzPXQ7dmFyIHk9aC5ncmlkJiZELmdyaWQmJjE8RC5ncmlkLnJvd3MsYj0oUy5sZW5ndGg8ZSt0fHwiY2FyZHMiPT09aC5wYXJhbXMuZWZmZWN0JiZTLmxlbmd0aDxlKzIqdD9QKCJTd2lwZXIgTG9vcCBXYXJuaW5nOiBUaGUgbnVtYmVyIG9mIHNsaWRlcyBpcyBub3QgZW5vdWdoIGZvciBsb29wIG1vZGUsIGl0IHdpbGwgYmUgZGlzYWJsZWQgb3Igbm90IGZ1bmN0aW9uIHByb3Blcmx5LiBZb3UgbmVlZCB0byBhZGQgbW9yZSBzbGlkZXMgKG9yIG1ha2UgZHVwbGljYXRlcykgb3IgbG93ZXIgdGhlIHZhbHVlcyBvZiBzbGlkZXNQZXJWaWV3IGFuZCBzbGlkZXNQZXJHcm91cCBwYXJhbWV0ZXJzIik6eSYmInJvdyI9PT1ELmdyaWQuZmlsbCYmUCgiU3dpcGVyIExvb3AgV2FybmluZzogTG9vcCBtb2RlIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggZ3JpZC5maWxsID0gYHJvd2AiKSxbXSk7Y29uc3QgTD1bXTt2YXIgdz15P01hdGguY2VpbChTLmxlbmd0aC9ELmdyaWQucm93cyk6Uy5sZW5ndGgsZz1jJiZ3LXY8ZSYmIWY7bGV0IG49Zz92OmguYWN0aXZlSW5kZXg7dm9pZCAwPT09ZD9kPWguZ2V0U2xpZGVJbmRleChTLmZpbmQoZT0+ZS5jbGFzc0xpc3QuY29udGFpbnMoRC5zbGlkZUFjdGl2ZUNsYXNzKSkpOm49ZDt2YXIgYz0ibmV4dCI9PT1vfHwhbyx4PSJwcmV2Ij09PW98fCFvO2xldCBpPTAscj0wO3ZhciBFPSh5P1NbZF0uY29sdW1uOmQpKyhmJiZ2b2lkIDA9PT1sPy1lLzIrLjU6MCk7aWYoRTx0KXtpPU1hdGgubWF4KHQtRSxtKTtmb3IobGV0IGU9MDtlPHQtRTtlKz0xKXt2YXIgXz1lLU1hdGguZmxvb3IoZS93KSp3O2lmKHkpe3ZhciBUPXctXy0xO2ZvcihsZXQgZT1TLmxlbmd0aC0xOzA8PWU7LS1lKVNbZV0uY29sdW1uPT09VCYmYi5wdXNoKGUpfWVsc2UgYi5wdXNoKHctXy0xKX19ZWxzZSBpZihFK2U+dy10KXtyPU1hdGgubWF4KEUtKHctMip0KSxtKSxnJiYocj1NYXRoLm1heChyLGUtdyt2KzEpKTtmb3IobGV0IGU9MDtlPHI7ZSs9MSl7Y29uc3Qgaz1lLU1hdGguZmxvb3IoZS93KSp3O3k/Uy5mb3JFYWNoKChlLHQpPT57ZS5jb2x1bW49PT1rJiZMLnB1c2godCl9KTpMLnB1c2goayl9fWlmKGguX19wcmV2ZW50T2JzZXJ2ZXJfXz0hMCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntoLl9fcHJldmVudE9ic2VydmVyX189ITF9KSwiY2FyZHMiPT09aC5wYXJhbXMuZWZmZWN0JiZTLmxlbmd0aDxlKzIqdCYmKEwuaW5jbHVkZXMoZCkmJkwuc3BsaWNlKEwuaW5kZXhPZihkKSwxKSxiLmluY2x1ZGVzKGQpKSYmYi5zcGxpY2UoYi5pbmRleE9mKGQpLDEpLHgmJmIuZm9yRWFjaChlPT57U1tlXS5zd2lwZXJMb29wTW92ZURPTT0hMCxNLnByZXBlbmQoU1tlXSksU1tlXS5zd2lwZXJMb29wTW92ZURPTT0hMX0pLGMmJkwuZm9yRWFjaChlPT57U1tlXS5zd2lwZXJMb29wTW92ZURPTT0hMCxNLmFwcGVuZChTW2VdKSxTW2VdLnN3aXBlckxvb3BNb3ZlRE9NPSExfSksaC5yZWNhbGNTbGlkZXMoKSwiYXV0byI9PT1ELnNsaWRlc1BlclZpZXc/aC51cGRhdGVTbGlkZXMoKTp5JiYoMDxiLmxlbmd0aCYmeHx8MDxMLmxlbmd0aCYmYykmJmguc2xpZGVzLmZvckVhY2goKGUsdCk9PntoLmdyaWQudXBkYXRlU2xpZGUodCxlLGguc2xpZGVzKX0pLEQud2F0Y2hTbGlkZXNQcm9ncmVzcyYmaC51cGRhdGVTbGlkZXNPZmZzZXQoKSxhJiYoMDxiLmxlbmd0aCYmeD92b2lkIDA9PT1zPyhmPWguc2xpZGVzR3JpZFtuXSxtPWguc2xpZGVzR3JpZFtuK2ldLWYscD9oLnNldFRyYW5zbGF0ZShoLnRyYW5zbGF0ZS1tKTooaC5zbGlkZVRvKG4rTWF0aC5jZWlsKGkpLDAsITEsITApLGwmJihoLnRvdWNoRXZlbnRzRGF0YS5zdGFydFRyYW5zbGF0ZT1oLnRvdWNoRXZlbnRzRGF0YS5zdGFydFRyYW5zbGF0ZS1tLGgudG91Y2hFdmVudHNEYXRhLmN1cnJlbnRUcmFuc2xhdGU9aC50b3VjaEV2ZW50c0RhdGEuY3VycmVudFRyYW5zbGF0ZS1tKSkpOmwmJihnPXk/Yi5sZW5ndGgvRC5ncmlkLnJvd3M6Yi5sZW5ndGgsaC5zbGlkZVRvKGguYWN0aXZlSW5kZXgrZywwLCExLCEwKSxoLnRvdWNoRXZlbnRzRGF0YS5jdXJyZW50VHJhbnNsYXRlPWgudHJhbnNsYXRlKTowPEwubGVuZ3RoJiZjJiYodm9pZCAwPT09cz8odj1oLnNsaWRlc0dyaWRbbl0seD1oLnNsaWRlc0dyaWRbbi1yXS12LHA/aC5zZXRUcmFuc2xhdGUoaC50cmFuc2xhdGUteCk6KGguc2xpZGVUbyhuLXIsMCwhMSwhMCksbCYmKGgudG91Y2hFdmVudHNEYXRhLnN0YXJ0VHJhbnNsYXRlPWgudG91Y2hFdmVudHNEYXRhLnN0YXJ0VHJhbnNsYXRlLXgsaC50b3VjaEV2ZW50c0RhdGEuY3VycmVudFRyYW5zbGF0ZT1oLnRvdWNoRXZlbnRzRGF0YS5jdXJyZW50VHJhbnNsYXRlLXgpKSk6KGY9eT9MLmxlbmd0aC9ELmdyaWQucm93czpMLmxlbmd0aCxoLnNsaWRlVG8oaC5hY3RpdmVJbmRleC1mLDAsITEsITApKSkpLGguYWxsb3dTbGlkZVByZXY9QyxoLmFsbG93U2xpZGVOZXh0PUEsaC5jb250cm9sbGVyJiZoLmNvbnRyb2xsZXIuY29udHJvbCYmIXUpe2NvbnN0IE89e3NsaWRlUmVhbEluZGV4OnMsZGlyZWN0aW9uOm8sc2V0VHJhbnNsYXRlOmwsYWN0aXZlU2xpZGVJbmRleDpkLGJ5Q29udHJvbGxlcjohMH07QXJyYXkuaXNBcnJheShoLmNvbnRyb2xsZXIuY29udHJvbCk/aC5jb250cm9sbGVyLmNvbnRyb2wuZm9yRWFjaChlPT57IWUuZGVzdHJveWVkJiZlLnBhcmFtcy5sb29wJiZlLmxvb3BGaXgoey4uLk8sc2xpZGVUbzplLnBhcmFtcy5zbGlkZXNQZXJWaWV3PT09RC5zbGlkZXNQZXJWaWV3JiZhfSl9KTpoLmNvbnRyb2xsZXIuY29udHJvbCBpbnN0YW5jZW9mIGguY29uc3RydWN0b3ImJmguY29udHJvbGxlci5jb250cm9sLnBhcmFtcy5sb29wJiZoLmNvbnRyb2xsZXIuY29udHJvbC5sb29wRml4KHsuLi5PLHNsaWRlVG86aC5jb250cm9sbGVyLmNvbnRyb2wucGFyYW1zLnNsaWRlc1BlclZpZXc9PT1ELnNsaWRlc1BlclZpZXcmJmF9KX19aC5lbWl0KCJsb29wRml4Iil9fSxsb29wRGVzdHJveTpmdW5jdGlvbigpe2NvbnN0e3BhcmFtczplLHNsaWRlc0VsOnR9PXRoaXM7aWYoZS5sb29wJiZ0JiYoIXRoaXMudmlydHVhbHx8IXRoaXMucGFyYW1zLnZpcnR1YWwuZW5hYmxlZCkpe3RoaXMucmVjYWxjU2xpZGVzKCk7Y29uc3Qgbj1bXTt0aGlzLnNsaWRlcy5mb3JFYWNoKGU9Pnt2YXIgdD12b2lkIDA9PT1lLnN3aXBlclNsaWRlSW5kZXg/K2UuZ2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1zbGlkZS1pbmRleCIpOmUuc3dpcGVyU2xpZGVJbmRleDtuW3RdPWV9KSx0aGlzLnNsaWRlcy5mb3JFYWNoKGU9PntlLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItc2xpZGUtaW5kZXgiKX0pLG4uZm9yRWFjaChlPT57dC5hcHBlbmQoZSl9KSx0aGlzLnJlY2FsY1NsaWRlcygpLHRoaXMuc2xpZGVUbyh0aGlzLnJlYWxJbmRleCwwKX19fSxncmFiQ3Vyc29yOntzZXRHcmFiQ3Vyc29yOmZ1bmN0aW9uKGUpe2NvbnN0IHQ9dGhpczt2YXIgbjshdC5wYXJhbXMuc2ltdWxhdGVUb3VjaHx8dC5wYXJhbXMud2F0Y2hPdmVyZmxvdyYmdC5pc0xvY2tlZHx8dC5wYXJhbXMuY3NzTW9kZXx8KG49ImNvbnRhaW5lciI9PT10LnBhcmFtcy50b3VjaEV2ZW50c1RhcmdldD90LmVsOnQud3JhcHBlckVsLHQuaXNFbGVtZW50JiYodC5fX3ByZXZlbnRPYnNlcnZlcl9fPSEwKSxuLnN0eWxlLmN1cnNvcj0ibW92ZSIsbi5zdHlsZS5jdXJzb3I9ZT8iZ3JhYmJpbmciOiJncmFiIix0LmlzRWxlbWVudCYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dC5fX3ByZXZlbnRPYnNlcnZlcl9fPSExfSkpfSx1bnNldEdyYWJDdXJzb3I6ZnVuY3Rpb24oKXtjb25zdCBlPXRoaXM7ZS5wYXJhbXMud2F0Y2hPdmVyZmxvdyYmZS5pc0xvY2tlZHx8ZS5wYXJhbXMuY3NzTW9kZXx8KGUuaXNFbGVtZW50JiYoZS5fX3ByZXZlbnRPYnNlcnZlcl9fPSEwKSxlWyJjb250YWluZXIiPT09ZS5wYXJhbXMudG91Y2hFdmVudHNUYXJnZXQ/ImVsIjoid3JhcHBlckVsIl0uc3R5bGUuY3Vyc29yPSIiLGUuaXNFbGVtZW50JiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntlLl9fcHJldmVudE9ic2VydmVyX189ITF9KSl9fSxldmVudHM6e2F0dGFjaEV2ZW50czpmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lWyJwYXJhbXMiXTtlLm9uVG91Y2hTdGFydD1mdW5jdGlvbihuKXt2YXIgaT10aGlzLHI9TygpO2xldCBzPW47aWYocy5vcmlnaW5hbEV2ZW50JiYocz1zLm9yaWdpbmFsRXZlbnQpLG49aS50b3VjaEV2ZW50c0RhdGEsInBvaW50ZXJkb3duIj09PXMudHlwZSl7aWYobnVsbCE9PW4ucG9pbnRlcklkJiZuLnBvaW50ZXJJZCE9PXMucG9pbnRlcklkKXJldHVybjtuLnBvaW50ZXJJZD1zLnBvaW50ZXJJZH1lbHNlInRvdWNoc3RhcnQiPT09cy50eXBlJiYxPT09cy50YXJnZXRUb3VjaGVzLmxlbmd0aCYmKG4udG91Y2hJZD1zLnRhcmdldFRvdWNoZXNbMF0uaWRlbnRpZmllcik7aWYoInRvdWNoc3RhcnQiPT09cy50eXBlKVEoaSxzLHMudGFyZ2V0VG91Y2hlc1swXS5wYWdlWCk7ZWxzZXt2YXJ7cGFyYW1zOmEsdG91Y2hlczpvLGVuYWJsZWQ6bH09aTtpZihsJiYoYS5zaW11bGF0ZVRvdWNofHwibW91c2UiIT09cy5wb2ludGVyVHlwZSkmJighaS5hbmltYXRpbmd8fCFhLnByZXZlbnRJbnRlcmFjdGlvbk9uVHJhbnNpdGlvbikpeyFpLmFuaW1hdGluZyYmYS5jc3NNb2RlJiZhLmxvb3AmJmkubG9vcEZpeCgpO2xldCB0PXMudGFyZ2V0O2lmKCgid3JhcHBlciIhPT1hLnRvdWNoRXZlbnRzVGFyZ2V0fHxiKHQsaS53cmFwcGVyRWwpKSYmISgid2hpY2giaW4gcyYmMz09PXMud2hpY2h8fCJidXR0b24iaW4gcyYmMDxzLmJ1dHRvbnx8bi5pc1RvdWNoZWQmJm4uaXNNb3ZlZCkpe3ZhciBsPSEhYS5ub1N3aXBpbmdDbGFzcyYmIiIhPT1hLm5vU3dpcGluZ0NsYXNzLGQ9cy5jb21wb3NlZFBhdGg/cy5jb21wb3NlZFBhdGgoKTpzLnBhdGgsbD0obCYmcy50YXJnZXQmJnMudGFyZ2V0LnNoYWRvd1Jvb3QmJmQmJih0PWRbMF0pLGEubm9Td2lwaW5nU2VsZWN0b3J8fCIuIithLm5vU3dpcGluZ0NsYXNzKSxkPSEoIXMudGFyZ2V0fHwhcy50YXJnZXQuc2hhZG93Um9vdCk7aWYoYS5ub1N3aXBpbmcmJihkP1UobCx0KTp0LmNsb3Nlc3QobCkpKWkuYWxsb3dDbGljaz0hMDtlbHNlIGlmKCFhLnN3aXBlSGFuZGxlcnx8dC5jbG9zZXN0KGEuc3dpcGVIYW5kbGVyKSl7by5jdXJyZW50WD1zLnBhZ2VYLG8uY3VycmVudFk9cy5wYWdlWTtkPW8uY3VycmVudFgsbD1vLmN1cnJlbnRZO2lmKFEoaSxzLGQpKXtPYmplY3QuYXNzaWduKG4se2lzVG91Y2hlZDohMCxpc01vdmVkOiExLGFsbG93VG91Y2hDYWxsYmFja3M6ITAsaXNTY3JvbGxpbmc6dm9pZCAwLHN0YXJ0TW92aW5nOnZvaWQgMH0pLG8uc3RhcnRYPWQsby5zdGFydFk9bCxuLnRvdWNoU3RhcnRUaW1lPXYoKSxpLmFsbG93Q2xpY2s9ITAsaS51cGRhdGVTaXplKCksaS5zd2lwZURpcmVjdGlvbj12b2lkIDAsMDxhLnRocmVzaG9sZCYmKG4uYWxsb3dUaHJlc2hvbGRNb3ZlPSExKTtsZXQgZT0hMDt0Lm1hdGNoZXMobi5mb2N1c2FibGVFbGVtZW50cykmJihlPSExLCJTRUxFQ1QiPT09dC5ub2RlTmFtZSkmJihuLmlzVG91Y2hlZD0hMSksci5hY3RpdmVFbGVtZW50JiZyLmFjdGl2ZUVsZW1lbnQubWF0Y2hlcyhuLmZvY3VzYWJsZUVsZW1lbnRzKSYmci5hY3RpdmVFbGVtZW50IT09dCYmKCJtb3VzZSI9PT1zLnBvaW50ZXJUeXBlfHwibW91c2UiIT09cy5wb2ludGVyVHlwZSYmIXQubWF0Y2hlcyhuLmZvY3VzYWJsZUVsZW1lbnRzKSkmJnIuYWN0aXZlRWxlbWVudC5ibHVyKCk7ZD1lJiZpLmFsbG93VG91Y2hNb3ZlJiZhLnRvdWNoU3RhcnRQcmV2ZW50RGVmYXVsdDshYS50b3VjaFN0YXJ0Rm9yY2VQcmV2ZW50RGVmYXVsdCYmIWR8fHQuaXNDb250ZW50RWRpdGFibGV8fHMucHJldmVudERlZmF1bHQoKSxhLmZyZWVNb2RlJiZhLmZyZWVNb2RlLmVuYWJsZWQmJmkuZnJlZU1vZGUmJmkuYW5pbWF0aW5nJiYhYS5jc3NNb2RlJiZpLmZyZWVNb2RlLm9uVG91Y2hTdGFydCgpLGkuZW1pdCgidG91Y2hTdGFydCIscyl9fX19fX0uYmluZChlKSxlLm9uVG91Y2hNb3ZlPWZ1bmN0aW9uKHQpe3ZhciByPU8oKSxzPXRoaXM7Y29uc3QgYT1zLnRvdWNoRXZlbnRzRGF0YTt2YXJ7cGFyYW1zOm8sdG91Y2hlczpsLHJ0bFRyYW5zbGF0ZTpkLGVuYWJsZWQ6Y309cztpZihjJiYoby5zaW11bGF0ZVRvdWNofHwibW91c2UiIT09dC5wb2ludGVyVHlwZSkpe2xldCBpPXQ7aWYoInBvaW50ZXJtb3ZlIj09PShpPWkub3JpZ2luYWxFdmVudD9pLm9yaWdpbmFsRXZlbnQ6aSkudHlwZSl7aWYobnVsbCE9PWEudG91Y2hJZClyZXR1cm47aWYoaS5wb2ludGVySWQhPT1hLnBvaW50ZXJJZClyZXR1cm59bGV0IGU7aWYoInRvdWNobW92ZSI9PT1pLnR5cGUpe2lmKCEoZT1bLi4uaS5jaGFuZ2VkVG91Y2hlc10uZmluZChlPT5lLmlkZW50aWZpZXI9PT1hLnRvdWNoSWQpKXx8ZS5pZGVudGlmaWVyIT09YS50b3VjaElkKXJldHVybn1lbHNlIGU9aTtpZihhLmlzVG91Y2hlZCl7Yz1lLnBhZ2VYLHQ9ZS5wYWdlWTtpZihpLnByZXZlbnRlZEJ5TmVzdGVkU3dpcGVyKWwuc3RhcnRYPWMsbC5zdGFydFk9dDtlbHNlIGlmKHMuYWxsb3dUb3VjaE1vdmUpe2lmKG8udG91Y2hSZWxlYXNlT25FZGdlcyYmIW8ubG9vcClpZihzLmlzVmVydGljYWwoKSl7aWYodDxsLnN0YXJ0WSYmcy50cmFuc2xhdGU8PXMubWF4VHJhbnNsYXRlKCl8fHQ+bC5zdGFydFkmJnMudHJhbnNsYXRlPj1zLm1pblRyYW5zbGF0ZSgpKXJldHVybiBhLmlzVG91Y2hlZD0hMSx2b2lkKGEuaXNNb3ZlZD0hMSl9ZWxzZXtpZihkJiYoYz5sLnN0YXJ0WCYmLXMudHJhbnNsYXRlPD1zLm1heFRyYW5zbGF0ZSgpfHxjPGwuc3RhcnRYJiYtcy50cmFuc2xhdGU+PXMubWluVHJhbnNsYXRlKCkpKXJldHVybjtpZighZCYmKGM8bC5zdGFydFgmJnMudHJhbnNsYXRlPD1zLm1heFRyYW5zbGF0ZSgpfHxjPmwuc3RhcnRYJiZzLnRyYW5zbGF0ZT49cy5taW5UcmFuc2xhdGUoKSkpcmV0dXJufWlmKHIuYWN0aXZlRWxlbWVudCYmci5hY3RpdmVFbGVtZW50Lm1hdGNoZXMoYS5mb2N1c2FibGVFbGVtZW50cykmJnIuYWN0aXZlRWxlbWVudCE9PWkudGFyZ2V0JiYibW91c2UiIT09aS5wb2ludGVyVHlwZSYmci5hY3RpdmVFbGVtZW50LmJsdXIoKSxyLmFjdGl2ZUVsZW1lbnQmJmkudGFyZ2V0PT09ci5hY3RpdmVFbGVtZW50JiZpLnRhcmdldC5tYXRjaGVzKGEuZm9jdXNhYmxlRWxlbWVudHMpKWEuaXNNb3ZlZD0hMCxzLmFsbG93Q2xpY2s9ITE7ZWxzZXthLmFsbG93VG91Y2hDYWxsYmFja3MmJnMuZW1pdCgidG91Y2hNb3ZlIixpKSxsLnByZXZpb3VzWD1sLmN1cnJlbnRYLGwucHJldmlvdXNZPWwuY3VycmVudFksbC5jdXJyZW50WD1jLGwuY3VycmVudFk9dDt2YXIgcj1sLmN1cnJlbnRYLWwuc3RhcnRYLHU9bC5jdXJyZW50WS1sLnN0YXJ0WTtpZighKHMucGFyYW1zLnRocmVzaG9sZCYmTWF0aC5zcXJ0KHIqKjIrdSoqMik8cy5wYXJhbXMudGhyZXNob2xkKSlpZih2b2lkIDA9PT1hLmlzU2Nyb2xsaW5nJiYocy5pc0hvcml6b250YWwoKSYmbC5jdXJyZW50WT09PWwuc3RhcnRZfHxzLmlzVmVydGljYWwoKSYmbC5jdXJyZW50WD09PWwuc3RhcnRYP2EuaXNTY3JvbGxpbmc9ITE6MjU8PXIqcit1KnUmJihwPTE4MCpNYXRoLmF0YW4yKE1hdGguYWJzKHUpLE1hdGguYWJzKHIpKS9NYXRoLlBJLGEuaXNTY3JvbGxpbmc9cy5pc0hvcml6b250YWwoKT9wPm8udG91Y2hBbmdsZTo5MC1wPm8udG91Y2hBbmdsZSkpLGEuaXNTY3JvbGxpbmcmJnMuZW1pdCgidG91Y2hNb3ZlT3Bwb3NpdGUiLGkpLHZvaWQgMCE9PWEuc3RhcnRNb3Zpbmd8fGwuY3VycmVudFg9PT1sLnN0YXJ0WCYmbC5jdXJyZW50WT09PWwuc3RhcnRZfHwoYS5zdGFydE1vdmluZz0hMCksYS5pc1Njcm9sbGluZ3x8InRvdWNobW92ZSI9PT1pLnR5cGUmJmEucHJldmVudFRvdWNoTW92ZUZyb21Qb2ludGVyTW92ZSlhLmlzVG91Y2hlZD0hMTtlbHNlIGlmKGEuc3RhcnRNb3Zpbmcpe3MuYWxsb3dDbGljaz0hMSwhby5jc3NNb2RlJiZpLmNhbmNlbGFibGUmJmkucHJldmVudERlZmF1bHQoKSxvLnRvdWNoTW92ZVN0b3BQcm9wYWdhdGlvbiYmIW8ubmVzdGVkJiZpLnN0b3BQcm9wYWdhdGlvbigpO2xldCBuPXMuaXNIb3Jpem9udGFsKCk/cjp1LGU9cy5pc0hvcml6b250YWwoKT9sLmN1cnJlbnRYLWwucHJldmlvdXNYOmwuY3VycmVudFktbC5wcmV2aW91c1k7by5vbmVXYXlNb3ZlbWVudCYmKG49TWF0aC5hYnMobikqKGQ/MTotMSksZT1NYXRoLmFicyhlKSooZD8xOi0xKSksbC5kaWZmPW4sbio9by50b3VjaFJhdGlvLGQmJihuPS1uLGU9LWUpO3ZhciBwPXMudG91Y2hlc0RpcmVjdGlvbixyPShzLnN3aXBlRGlyZWN0aW9uPTA8bj8icHJldiI6Im5leHQiLHMudG91Y2hlc0RpcmVjdGlvbj0wPGU/InByZXYiOiJuZXh0IixzLnBhcmFtcy5sb29wJiYhby5jc3NNb2RlKSx1PSJuZXh0Ij09PXMudG91Y2hlc0RpcmVjdGlvbiYmcy5hbGxvd1NsaWRlTmV4dHx8InByZXYiPT09cy50b3VjaGVzRGlyZWN0aW9uJiZzLmFsbG93U2xpZGVQcmV2O2lmKGEuaXNNb3ZlZHx8KHImJnUmJnMubG9vcEZpeCh7ZGlyZWN0aW9uOnMuc3dpcGVEaXJlY3Rpb259KSxhLnN0YXJ0VHJhbnNsYXRlPXMuZ2V0VHJhbnNsYXRlKCkscy5zZXRUcmFuc2l0aW9uKDApLHMuYW5pbWF0aW5nJiYoZD1uZXcgd2luZG93LkN1c3RvbUV2ZW50KCJ0cmFuc2l0aW9uZW5kIix7YnViYmxlczohMCxjYW5jZWxhYmxlOiEwLGRldGFpbDp7YnlTd2lwZXJUb3VjaE1vdmU6ITB9fSkscy53cmFwcGVyRWwuZGlzcGF0Y2hFdmVudChkKSksYS5hbGxvd01vbWVudHVtQm91bmNlPSExLCFvLmdyYWJDdXJzb3J8fCEwIT09cy5hbGxvd1NsaWRlTmV4dCYmITAhPT1zLmFsbG93U2xpZGVQcmV2fHxzLnNldEdyYWJDdXJzb3IoITApLHMuZW1pdCgic2xpZGVyRmlyc3RNb3ZlIixpKSksKG5ldyBEYXRlKS5nZXRUaW1lKCksITEhPT1vLl9sb29wU3dhcFJlc2V0JiZhLmlzTW92ZWQmJmEuYWxsb3dUaHJlc2hvbGRNb3ZlJiZwIT09cy50b3VjaGVzRGlyZWN0aW9uJiZyJiZ1JiYxPD1NYXRoLmFicyhuKSlPYmplY3QuYXNzaWduKGwse3N0YXJ0WDpjLHN0YXJ0WTp0LGN1cnJlbnRYOmMsY3VycmVudFk6dCxzdGFydFRyYW5zbGF0ZTphLmN1cnJlbnRUcmFuc2xhdGV9KSxhLmxvb3BTd2FwUmVzZXQ9ITAsYS5zdGFydFRyYW5zbGF0ZT1hLmN1cnJlbnRUcmFuc2xhdGU7ZWxzZXtzLmVtaXQoInNsaWRlck1vdmUiLGkpLGEuaXNNb3ZlZD0hMCxhLmN1cnJlbnRUcmFuc2xhdGU9bithLnN0YXJ0VHJhbnNsYXRlO2xldCBlPSEwLHQ9by5yZXNpc3RhbmNlUmF0aW87aWYoby50b3VjaFJlbGVhc2VPbkVkZ2VzJiYodD0wKSwwPG4/KHImJnUmJmEuYWxsb3dUaHJlc2hvbGRNb3ZlJiZhLmN1cnJlbnRUcmFuc2xhdGU+KG8uY2VudGVyZWRTbGlkZXM/cy5taW5UcmFuc2xhdGUoKS1zLnNsaWRlc1NpemVzR3JpZFtzLmFjdGl2ZUluZGV4KzFdLSgiYXV0byIhPT1vLnNsaWRlc1BlclZpZXcmJjI8PXMuc2xpZGVzLmxlbmd0aC1vLnNsaWRlc1BlclZpZXc/cy5zbGlkZXNTaXplc0dyaWRbcy5hY3RpdmVJbmRleCsxXStzLnBhcmFtcy5zcGFjZUJldHdlZW46MCktcy5wYXJhbXMuc3BhY2VCZXR3ZWVuOnMubWluVHJhbnNsYXRlKCkpJiZzLmxvb3BGaXgoe2RpcmVjdGlvbjoicHJldiIsc2V0VHJhbnNsYXRlOiEwLGFjdGl2ZVNsaWRlSW5kZXg6MH0pLGEuY3VycmVudFRyYW5zbGF0ZT5zLm1pblRyYW5zbGF0ZSgpJiYoZT0hMSxvLnJlc2lzdGFuY2UpJiYoYS5jdXJyZW50VHJhbnNsYXRlPXMubWluVHJhbnNsYXRlKCktMSsoLXMubWluVHJhbnNsYXRlKCkrYS5zdGFydFRyYW5zbGF0ZStuKSoqdCkpOm48MCYmKHImJnUmJmEuYWxsb3dUaHJlc2hvbGRNb3ZlJiZhLmN1cnJlbnRUcmFuc2xhdGU8KG8uY2VudGVyZWRTbGlkZXM/cy5tYXhUcmFuc2xhdGUoKStzLnNsaWRlc1NpemVzR3JpZFtzLnNsaWRlc1NpemVzR3JpZC5sZW5ndGgtMV0rcy5wYXJhbXMuc3BhY2VCZXR3ZWVuKygiYXV0byIhPT1vLnNsaWRlc1BlclZpZXcmJjI8PXMuc2xpZGVzLmxlbmd0aC1vLnNsaWRlc1BlclZpZXc/cy5zbGlkZXNTaXplc0dyaWRbcy5zbGlkZXNTaXplc0dyaWQubGVuZ3RoLTFdK3MucGFyYW1zLnNwYWNlQmV0d2VlbjowKTpzLm1heFRyYW5zbGF0ZSgpKSYmcy5sb29wRml4KHtkaXJlY3Rpb246Im5leHQiLHNldFRyYW5zbGF0ZTohMCxhY3RpdmVTbGlkZUluZGV4OnMuc2xpZGVzLmxlbmd0aC0oImF1dG8iPT09by5zbGlkZXNQZXJWaWV3P3Muc2xpZGVzUGVyVmlld0R5bmFtaWMoKTpNYXRoLmNlaWwocGFyc2VGbG9hdChvLnNsaWRlc1BlclZpZXcsMTApKSl9KSxhLmN1cnJlbnRUcmFuc2xhdGU8cy5tYXhUcmFuc2xhdGUoKSkmJihlPSExLG8ucmVzaXN0YW5jZSkmJihhLmN1cnJlbnRUcmFuc2xhdGU9cy5tYXhUcmFuc2xhdGUoKSsxLShzLm1heFRyYW5zbGF0ZSgpLWEuc3RhcnRUcmFuc2xhdGUtbikqKnQpLGUmJihpLnByZXZlbnRlZEJ5TmVzdGVkU3dpcGVyPSEwKSwhcy5hbGxvd1NsaWRlTmV4dCYmIm5leHQiPT09cy5zd2lwZURpcmVjdGlvbiYmYS5jdXJyZW50VHJhbnNsYXRlPGEuc3RhcnRUcmFuc2xhdGUmJihhLmN1cnJlbnRUcmFuc2xhdGU9YS5zdGFydFRyYW5zbGF0ZSksIXMuYWxsb3dTbGlkZVByZXYmJiJwcmV2Ij09PXMuc3dpcGVEaXJlY3Rpb24mJmEuY3VycmVudFRyYW5zbGF0ZT5hLnN0YXJ0VHJhbnNsYXRlJiYoYS5jdXJyZW50VHJhbnNsYXRlPWEuc3RhcnRUcmFuc2xhdGUpLHMuYWxsb3dTbGlkZVByZXZ8fHMuYWxsb3dTbGlkZU5leHR8fChhLmN1cnJlbnRUcmFuc2xhdGU9YS5zdGFydFRyYW5zbGF0ZSksMDxvLnRocmVzaG9sZCl7aWYoIShNYXRoLmFicyhuKT5vLnRocmVzaG9sZHx8YS5hbGxvd1RocmVzaG9sZE1vdmUpKXJldHVybiB2b2lkKGEuY3VycmVudFRyYW5zbGF0ZT1hLnN0YXJ0VHJhbnNsYXRlKTtpZighYS5hbGxvd1RocmVzaG9sZE1vdmUpcmV0dXJuIGEuYWxsb3dUaHJlc2hvbGRNb3ZlPSEwLGwuc3RhcnRYPWwuY3VycmVudFgsbC5zdGFydFk9bC5jdXJyZW50WSxhLmN1cnJlbnRUcmFuc2xhdGU9YS5zdGFydFRyYW5zbGF0ZSx2b2lkKGwuZGlmZj1zLmlzSG9yaXpvbnRhbCgpP2wuY3VycmVudFgtbC5zdGFydFg6bC5jdXJyZW50WS1sLnN0YXJ0WSl9by5mb2xsb3dGaW5nZXImJiFvLmNzc01vZGUmJigoby5mcmVlTW9kZSYmby5mcmVlTW9kZS5lbmFibGVkJiZzLmZyZWVNb2RlfHxvLndhdGNoU2xpZGVzUHJvZ3Jlc3MpJiYocy51cGRhdGVBY3RpdmVJbmRleCgpLHMudXBkYXRlU2xpZGVzQ2xhc3NlcygpKSxvLmZyZWVNb2RlJiZvLmZyZWVNb2RlLmVuYWJsZWQmJnMuZnJlZU1vZGUmJnMuZnJlZU1vZGUub25Ub3VjaE1vdmUoKSxzLnVwZGF0ZVByb2dyZXNzKGEuY3VycmVudFRyYW5zbGF0ZSkscy5zZXRUcmFuc2xhdGUoYS5jdXJyZW50VHJhbnNsYXRlKSl9fX19ZWxzZSBpLnRhcmdldC5tYXRjaGVzKGEuZm9jdXNhYmxlRWxlbWVudHMpfHwocy5hbGxvd0NsaWNrPSExKSxhLmlzVG91Y2hlZCYmKE9iamVjdC5hc3NpZ24obCx7c3RhcnRYOmMsc3RhcnRZOnQsY3VycmVudFg6YyxjdXJyZW50WTp0fSksYS50b3VjaFN0YXJ0VGltZT12KCkpfWVsc2UgYS5zdGFydE1vdmluZyYmYS5pc1Njcm9sbGluZyYmcy5lbWl0KCJ0b3VjaE1vdmVPcHBvc2l0ZSIsaSl9fS5iaW5kKGUpLGUub25Ub3VjaEVuZD1mdW5jdGlvbihlKXtjb25zdCBzPXRoaXMsdD1zLnRvdWNoRXZlbnRzRGF0YTtsZXQgYT1lLG47aWYoInRvdWNoZW5kIj09PShhPWEub3JpZ2luYWxFdmVudD9hLm9yaWdpbmFsRXZlbnQ6YSkudHlwZXx8InRvdWNoY2FuY2VsIj09PWEudHlwZSl7aWYoIShuPVsuLi5hLmNoYW5nZWRUb3VjaGVzXS5maW5kKGU9PmUuaWRlbnRpZmllcj09PXQudG91Y2hJZCkpfHxuLmlkZW50aWZpZXIhPT10LnRvdWNoSWQpcmV0dXJufWVsc2V7aWYobnVsbCE9PXQudG91Y2hJZClyZXR1cm47aWYoYS5wb2ludGVySWQhPT10LnBvaW50ZXJJZClyZXR1cm47bj1hfWlmKCFbInBvaW50ZXJjYW5jZWwiLCJwb2ludGVyb3V0IiwicG9pbnRlcmxlYXZlIiwiY29udGV4dG1lbnUiXS5pbmNsdWRlcyhhLnR5cGUpfHxbInBvaW50ZXJjYW5jZWwiLCJjb250ZXh0bWVudSJdLmluY2x1ZGVzKGEudHlwZSkmJihzLmJyb3dzZXIuaXNTYWZhcml8fHMuYnJvd3Nlci5pc1dlYlZpZXcpKXt0LnBvaW50ZXJJZD1udWxsLHQudG91Y2hJZD1udWxsO3ZhcntwYXJhbXM6byx0b3VjaGVzOmUscnRsVHJhbnNsYXRlOmksc2xpZGVzR3JpZDpsLGVuYWJsZWQ6cn09cztpZihyJiYoby5zaW11bGF0ZVRvdWNofHwibW91c2UiIT09YS5wb2ludGVyVHlwZSkpaWYodC5hbGxvd1RvdWNoQ2FsbGJhY2tzJiZzLmVtaXQoInRvdWNoRW5kIixhKSx0LmFsbG93VG91Y2hDYWxsYmFja3M9ITEsdC5pc1RvdWNoZWQpe28uZ3JhYkN1cnNvciYmdC5pc01vdmVkJiZ0LmlzVG91Y2hlZCYmKCEwPT09cy5hbGxvd1NsaWRlTmV4dHx8ITA9PT1zLmFsbG93U2xpZGVQcmV2KSYmcy5zZXRHcmFiQ3Vyc29yKCExKTt2YXIgcj12KCksZD1yLXQudG91Y2hTdGFydFRpbWU7aWYocy5hbGxvd0NsaWNrJiYodT1hLnBhdGh8fGEuY29tcG9zZWRQYXRoJiZhLmNvbXBvc2VkUGF0aCgpLHMudXBkYXRlQ2xpY2tlZFNsaWRlKHUmJnVbMF18fGEudGFyZ2V0LHUpLHMuZW1pdCgidGFwIGNsaWNrIixhKSxkPDMwMCkmJnItdC5sYXN0Q2xpY2tUaW1lPDMwMCYmcy5lbWl0KCJkb3VibGVUYXAgZG91YmxlQ2xpY2siLGEpLHQubGFzdENsaWNrVGltZT12KCksVCgoKT0+e3MuZGVzdHJveWVkfHwocy5hbGxvd0NsaWNrPSEwKX0pLHQuaXNUb3VjaGVkJiZ0LmlzTW92ZWQmJnMuc3dpcGVEaXJlY3Rpb24mJigwIT09ZS5kaWZmfHx0Lmxvb3BTd2FwUmVzZXQpJiYodC5jdXJyZW50VHJhbnNsYXRlIT09dC5zdGFydFRyYW5zbGF0ZXx8dC5sb29wU3dhcFJlc2V0KSl7dC5pc1RvdWNoZWQ9ITEsdC5pc01vdmVkPSExLHQuc3RhcnRNb3Zpbmc9ITE7bGV0IHI7aWYocj1vLmZvbGxvd0Zpbmdlcj9pP3MudHJhbnNsYXRlOi1zLnRyYW5zbGF0ZTotdC5jdXJyZW50VHJhbnNsYXRlLCFvLmNzc01vZGUpaWYoby5mcmVlTW9kZSYmby5mcmVlTW9kZS5lbmFibGVkKXMuZnJlZU1vZGUub25Ub3VjaEVuZCh7Y3VycmVudFBvczpyfSk7ZWxzZXt2YXIgYz1yPj0tcy5tYXhUcmFuc2xhdGUoKSYmIXMucGFyYW1zLmxvb3A7bGV0IHQ9MCxuPXMuc2xpZGVzU2l6ZXNHcmlkWzBdO2ZvcihsZXQgZT0wO2U8bC5sZW5ndGg7ZSs9ZTxvLnNsaWRlc1Blckdyb3VwU2tpcD8xOm8uc2xpZGVzUGVyR3JvdXApe2NvbnN0IHA9ZTxvLnNsaWRlc1Blckdyb3VwU2tpcC0xPzE6by5zbGlkZXNQZXJHcm91cDt2b2lkIDAhPT1sW2UrcF0/KGN8fHI+PWxbZV0mJnI8bFtlK3BdKSYmKHQ9ZSxuPWxbZStwXS1sW2VdKTooY3x8cj49bFtlXSkmJih0PWUsbj1sW2wubGVuZ3RoLTFdLWxbbC5sZW5ndGgtMl0pfWxldCBlPW51bGwsaT1udWxsO28ucmV3aW5kJiYocy5pc0JlZ2lubmluZz9pPW8udmlydHVhbCYmby52aXJ0dWFsLmVuYWJsZWQmJnMudmlydHVhbD9zLnZpcnR1YWwuc2xpZGVzLmxlbmd0aC0xOnMuc2xpZGVzLmxlbmd0aC0xOnMuaXNFbmQmJihlPTApKTt2YXIgdT0oci1sW3RdKS9uO2NvbnN0IHA9dDxvLnNsaWRlc1Blckdyb3VwU2tpcC0xPzE6by5zbGlkZXNQZXJHcm91cDtkPm8ubG9uZ1N3aXBlc01zP28ubG9uZ1N3aXBlcz8oIm5leHQiPT09cy5zd2lwZURpcmVjdGlvbiYmKHU+PW8ubG9uZ1N3aXBlc1JhdGlvP3Muc2xpZGVUbyhvLnJld2luZCYmcy5pc0VuZD9lOnQrcCk6cy5zbGlkZVRvKHQpKSwicHJldiI9PT1zLnN3aXBlRGlyZWN0aW9uJiYodT4xLW8ubG9uZ1N3aXBlc1JhdGlvP3Muc2xpZGVUbyh0K3ApOm51bGwhPT1pJiZ1PDAmJk1hdGguYWJzKHUpPm8ubG9uZ1N3aXBlc1JhdGlvP3Muc2xpZGVUbyhpKTpzLnNsaWRlVG8odCkpKTpzLnNsaWRlVG8ocy5hY3RpdmVJbmRleCk6by5zaG9ydFN3aXBlcz9zLm5hdmlnYXRpb24mJihhLnRhcmdldD09PXMubmF2aWdhdGlvbi5uZXh0RWx8fGEudGFyZ2V0PT09cy5uYXZpZ2F0aW9uLnByZXZFbCk/YS50YXJnZXQ9PT1zLm5hdmlnYXRpb24ubmV4dEVsP3Muc2xpZGVUbyh0K3ApOnMuc2xpZGVUbyh0KTooIm5leHQiPT09cy5zd2lwZURpcmVjdGlvbiYmcy5zbGlkZVRvKG51bGwhPT1lP2U6dCtwKSwicHJldiI9PT1zLnN3aXBlRGlyZWN0aW9uJiZzLnNsaWRlVG8obnVsbCE9PWk/aTp0KSk6cy5zbGlkZVRvKHMuYWN0aXZlSW5kZXgpfX1lbHNlIHQuaXNUb3VjaGVkPSExLHQuaXNNb3ZlZD0hMSx0LnN0YXJ0TW92aW5nPSExfWVsc2UgdC5pc01vdmVkJiZvLmdyYWJDdXJzb3ImJnMuc2V0R3JhYkN1cnNvcighMSksdC5pc01vdmVkPSExLHQuc3RhcnRNb3Zpbmc9ITF9fS5iaW5kKGUpLGUub25Eb2N1bWVudFRvdWNoU3RhcnQ9ZnVuY3Rpb24oKXt0aGlzLmRvY3VtZW50VG91Y2hIYW5kbGVyUHJvY2VlZGVkfHwodGhpcy5kb2N1bWVudFRvdWNoSGFuZGxlclByb2NlZWRlZD0hMCx0aGlzLnBhcmFtcy50b3VjaFJlbGVhc2VPbkVkZ2VzJiYodGhpcy5lbC5zdHlsZS50b3VjaEFjdGlvbj0iYXV0byIpKX0uYmluZChlKSx0LmNzc01vZGUmJihlLm9uU2Nyb2xsPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyx7d3JhcHBlckVsOm4scnRsVHJhbnNsYXRlOmksZW5hYmxlZDpyfT10O2lmKHIpe3QucHJldmlvdXNUcmFuc2xhdGU9dC50cmFuc2xhdGUsdC5pc0hvcml6b250YWwoKT90LnRyYW5zbGF0ZT0tbi5zY3JvbGxMZWZ0OnQudHJhbnNsYXRlPS1uLnNjcm9sbFRvcCwwPT09dC50cmFuc2xhdGUmJih0LnRyYW5zbGF0ZT0wKSx0LnVwZGF0ZUFjdGl2ZUluZGV4KCksdC51cGRhdGVTbGlkZXNDbGFzc2VzKCk7bGV0IGU7cj10Lm1heFRyYW5zbGF0ZSgpLXQubWluVHJhbnNsYXRlKCk7KGU9MD09cj8wOih0LnRyYW5zbGF0ZS10Lm1pblRyYW5zbGF0ZSgpKS9yKSE9PXQucHJvZ3Jlc3MmJnQudXBkYXRlUHJvZ3Jlc3MoaT8tdC50cmFuc2xhdGU6dC50cmFuc2xhdGUpLHQuZW1pdCgic2V0VHJhbnNsYXRlIix0LnRyYW5zbGF0ZSwhMSl9fS5iaW5kKGUpKSxlLm9uQ2xpY2s9ZnVuY3Rpb24oZSl7dGhpcy5lbmFibGVkJiYhdGhpcy5hbGxvd0NsaWNrJiYodGhpcy5wYXJhbXMucHJldmVudENsaWNrcyYmZS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMucGFyYW1zLnByZXZlbnRDbGlja3NQcm9wYWdhdGlvbikmJnRoaXMuYW5pbWF0aW5nJiYoZS5zdG9wUHJvcGFnYXRpb24oKSxlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpKX0uYmluZChlKSxlLm9uTG9hZD1mdW5jdGlvbihlKXtvKHRoaXMsZS50YXJnZXQpLHRoaXMucGFyYW1zLmNzc01vZGV8fCJhdXRvIiE9PXRoaXMucGFyYW1zLnNsaWRlc1BlclZpZXcmJiF0aGlzLnBhcmFtcy5hdXRvSGVpZ2h0fHx0aGlzLnVwZGF0ZSgpfS5iaW5kKGUpLFooZSwib24iKX0sZGV0YWNoRXZlbnRzOmZ1bmN0aW9uKCl7Wih0aGlzLCJvZmYiKX19LGJyZWFrcG9pbnRzOntzZXRCcmVha3BvaW50OmZ1bmN0aW9uKCl7Y29uc3QgaT10aGlzLHtyZWFsSW5kZXg6ZSxpbml0aWFsaXplZDp0LHBhcmFtczpyLGVsOm59PWk7aWYoKG89ci5icmVha3BvaW50cykmJjAhPT1PYmplY3Qua2V5cyhvKS5sZW5ndGgpe3ZhciBzPU8oKSxhPSJ3aW5kb3ciIT09ci5icmVha3BvaW50c0Jhc2UmJnIuYnJlYWtwb2ludHNCYXNlPyJjb250YWluZXIiOnIuYnJlYWtwb2ludHNCYXNlLHM9WyJ3aW5kb3ciLCJjb250YWluZXIiXS5pbmNsdWRlcyhyLmJyZWFrcG9pbnRzQmFzZSl8fCFyLmJyZWFrcG9pbnRzQmFzZT9pLmVsOnMucXVlcnlTZWxlY3RvcihyLmJyZWFrcG9pbnRzQmFzZSksYT1pLmdldEJyZWFrcG9pbnQobyxhLHMpO2lmKGEmJmkuY3VycmVudEJyZWFrcG9pbnQhPT1hKXtjb25zdCB1PShhIGluIG8/b1thXTp2b2lkIDApfHxpLm9yaWdpbmFsUGFyYW1zO3ZhciBzPUooaSxyKSxvPUooaSx1KSxsPWkucGFyYW1zLmdyYWJDdXJzb3IsZD11LmdyYWJDdXJzb3IsYz1yLmVuYWJsZWQscz0ocyYmIW8/KG4uY2xhc3NMaXN0LnJlbW92ZShyLmNvbnRhaW5lck1vZGlmaWVyQ2xhc3MrImdyaWQiLHIuY29udGFpbmVyTW9kaWZpZXJDbGFzcysiZ3JpZC1jb2x1bW4iKSxpLmVtaXRDb250YWluZXJDbGFzc2VzKCkpOiFzJiZvJiYobi5jbGFzc0xpc3QuYWRkKHIuY29udGFpbmVyTW9kaWZpZXJDbGFzcysiZ3JpZCIpLCh1LmdyaWQuZmlsbCYmImNvbHVtbiI9PT11LmdyaWQuZmlsbHx8IXUuZ3JpZC5maWxsJiYiY29sdW1uIj09PXIuZ3JpZC5maWxsKSYmbi5jbGFzc0xpc3QuYWRkKHIuY29udGFpbmVyTW9kaWZpZXJDbGFzcysiZ3JpZC1jb2x1bW4iKSxpLmVtaXRDb250YWluZXJDbGFzc2VzKCkpLGwmJiFkP2kudW5zZXRHcmFiQ3Vyc29yKCk6IWwmJmQmJmkuc2V0R3JhYkN1cnNvcigpLFsibmF2aWdhdGlvbiIsInBhZ2luYXRpb24iLCJzY3JvbGxiYXIiXS5mb3JFYWNoKGU9Pnt2YXIgdCxuO3ZvaWQgMCE9PXVbZV0mJih0PXJbZV0mJnJbZV0uZW5hYmxlZCxuPXVbZV0mJnVbZV0uZW5hYmxlZCx0JiYhbiYmaVtlXS5kaXNhYmxlKCksIXQpJiZuJiZpW2VdLmVuYWJsZSgpfSksdS5kaXJlY3Rpb24mJnUuZGlyZWN0aW9uIT09ci5kaXJlY3Rpb24pLG89ci5sb29wJiYodS5zbGlkZXNQZXJWaWV3IT09ci5zbGlkZXNQZXJWaWV3fHxzKSxsPXIubG9vcCxkPShzJiZ0JiZpLmNoYW5nZURpcmVjdGlvbigpLHAoaS5wYXJhbXMsdSksaS5wYXJhbXMuZW5hYmxlZCkscz1pLnBhcmFtcy5sb29wO09iamVjdC5hc3NpZ24oaSx7YWxsb3dUb3VjaE1vdmU6aS5wYXJhbXMuYWxsb3dUb3VjaE1vdmUsYWxsb3dTbGlkZU5leHQ6aS5wYXJhbXMuYWxsb3dTbGlkZU5leHQsYWxsb3dTbGlkZVByZXY6aS5wYXJhbXMuYWxsb3dTbGlkZVByZXZ9KSxjJiYhZD9pLmRpc2FibGUoKTohYyYmZCYmaS5lbmFibGUoKSxpLmN1cnJlbnRCcmVha3BvaW50PWEsaS5lbWl0KCJfYmVmb3JlQnJlYWtwb2ludCIsdSksdCYmKG8/KGkubG9vcERlc3Ryb3koKSxpLmxvb3BDcmVhdGUoZSksaS51cGRhdGVTbGlkZXMoKSk6IWwmJnM/KGkubG9vcENyZWF0ZShlKSxpLnVwZGF0ZVNsaWRlcygpKTpsJiYhcyYmaS5sb29wRGVzdHJveSgpKSxpLmVtaXQoImJyZWFrcG9pbnQiLHUpfX19LGdldEJyZWFrcG9pbnQ6ZnVuY3Rpb24oZSxuPSJ3aW5kb3ciLGkpe2lmKGUmJigiY29udGFpbmVyIiE9PW58fGkpKXtsZXQgdD0hMTt2YXIgcj0kKCk7Y29uc3QgbD0id2luZG93Ij09PW4/ci5pbm5lckhlaWdodDppLmNsaWVudEhlaWdodDt2YXIgcz1PYmplY3Qua2V5cyhlKS5tYXAoZT0+e3ZhciB0O3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmMD09PWUuaW5kZXhPZigiQCIpPyh0PXBhcnNlRmxvYXQoZS5zdWJzdHIoMSkpLHt2YWx1ZTpsKnQscG9pbnQ6ZX0pOnt2YWx1ZTplLHBvaW50OmV9fSk7cy5zb3J0KChlLHQpPT5wYXJzZUludChlLnZhbHVlLDEwKS1wYXJzZUludCh0LnZhbHVlLDEwKSk7Zm9yKGxldCBlPTA7ZTxzLmxlbmd0aDtlKz0xKXt2YXJ7cG9pbnQ6YSx2YWx1ZTpvfT1zW2VdOyJ3aW5kb3ciPT09bj9yLm1hdGNoTWVkaWEoYChtaW4td2lkdGg6ICR7b31weClgKS5tYXRjaGVzJiYodD1hKTpvPD1pLmNsaWVudFdpZHRoJiYodD1hKX1yZXR1cm4gdHx8Im1heCJ9fX0sY2hlY2tPdmVyZmxvdzp7Y2hlY2tPdmVyZmxvdzpmdW5jdGlvbigpe3ZhciBlLHQ9dGhpcyx7aXNMb2NrZWQ6bixwYXJhbXM6aX09dCxyPWlbInNsaWRlc09mZnNldEJlZm9yZSJdO3I/KGU9dC5zbGlkZXMubGVuZ3RoLTEsZT10LnNsaWRlc0dyaWRbZV0rdC5zbGlkZXNTaXplc0dyaWRbZV0rMipyLHQuaXNMb2NrZWQ9dC5zaXplPmUpOnQuaXNMb2NrZWQ9MT09PXQuc25hcEdyaWQubGVuZ3RoLCEwPT09aS5hbGxvd1NsaWRlTmV4dCYmKHQuYWxsb3dTbGlkZU5leHQ9IXQuaXNMb2NrZWQpLCEwPT09aS5hbGxvd1NsaWRlUHJldiYmKHQuYWxsb3dTbGlkZVByZXY9IXQuaXNMb2NrZWQpLG4mJm4hPT10LmlzTG9ja2VkJiYodC5pc0VuZD0hMSksbiE9PXQuaXNMb2NrZWQmJnQuZW1pdCh0LmlzTG9ja2VkPyJsb2NrIjoidW5sb2NrIil9fSxjbGFzc2VzOnthZGRDbGFzc2VzOmZ1bmN0aW9uKCl7dmFye2NsYXNzTmFtZXM6ZSxwYXJhbXM6dCxydGw6bixlbDppLGRldmljZTpyfT10aGlzLG49ZnVuY3Rpb24oZSxuKXtjb25zdCBpPVtdO3JldHVybiBlLmZvckVhY2godD0+eyJvYmplY3QiPT10eXBlb2YgdD9PYmplY3Qua2V5cyh0KS5mb3JFYWNoKGU9Pnt0W2VdJiZpLnB1c2gobitlKX0pOiJzdHJpbmciPT10eXBlb2YgdCYmaS5wdXNoKG4rdCl9KSxpfShbImluaXRpYWxpemVkIix0LmRpcmVjdGlvbix7ImZyZWUtbW9kZSI6dGhpcy5wYXJhbXMuZnJlZU1vZGUmJnQuZnJlZU1vZGUuZW5hYmxlZH0se2F1dG9oZWlnaHQ6dC5hdXRvSGVpZ2h0fSx7cnRsOm59LHtncmlkOnQuZ3JpZCYmMTx0LmdyaWQucm93c30seyJncmlkLWNvbHVtbiI6dC5ncmlkJiYxPHQuZ3JpZC5yb3dzJiYiY29sdW1uIj09PXQuZ3JpZC5maWxsfSx7YW5kcm9pZDpyLmFuZHJvaWR9LHtpb3M6ci5pb3N9LHsiY3NzLW1vZGUiOnQuY3NzTW9kZX0se2NlbnRlcmVkOnQuY3NzTW9kZSYmdC5jZW50ZXJlZFNsaWRlc30seyJ3YXRjaC1wcm9ncmVzcyI6dC53YXRjaFNsaWRlc1Byb2dyZXNzfV0sdC5jb250YWluZXJNb2RpZmllckNsYXNzKTtlLnB1c2goLi4ubiksaS5jbGFzc0xpc3QuYWRkKC4uLmUpLHRoaXMuZW1pdENvbnRhaW5lckNsYXNzZXMoKX0scmVtb3ZlQ2xhc3NlczpmdW5jdGlvbigpe3ZhcntlbDplLGNsYXNzTmFtZXM6dH09dGhpcztlJiYic3RyaW5nIiE9dHlwZW9mIGUmJihlLmNsYXNzTGlzdC5yZW1vdmUoLi4udCksdGhpcy5lbWl0Q29udGFpbmVyQ2xhc3NlcygpKX19fSxsPXt9O2NsYXNzIGZ7Y29uc3RydWN0b3IoLi4uZSl7bGV0IHQsbjsxPT09ZS5sZW5ndGgmJmVbMF0uY29uc3RydWN0b3ImJiJPYmplY3QiPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGVbMF0pLnNsaWNlKDgsLTEpP249ZVswXTpbdCxuXT1lLG49cCh7fSxuPW58fHt9KSx0JiYhbi5lbCYmKG4uZWw9dCk7ZT1PKCk7aWYobi5lbCYmInN0cmluZyI9PXR5cGVvZiBuLmVsJiYxPGUucXVlcnlTZWxlY3RvckFsbChuLmVsKS5sZW5ndGgpe2NvbnN0IGk9W107cmV0dXJuIGUucXVlcnlTZWxlY3RvckFsbChuLmVsKS5mb3JFYWNoKGU9PntlPXAoe30sbix7ZWw6ZX0pO2kucHVzaChuZXcgZihlKSl9KSxpfWNvbnN0IHM9dGhpcyxhPShzLl9fc3dpcGVyX189ITAscy5zdXBwb3J0PXooKSxzLmRldmljZT1SKHt1c2VyQWdlbnQ6bi51c2VyQWdlbnR9KSxzLmJyb3dzZXI9RigpLHMuZXZlbnRzTGlzdGVuZXJzPXt9LHMuZXZlbnRzQW55TGlzdGVuZXJzPVtdLHMubW9kdWxlcz1bLi4ucy5fX21vZHVsZXNfX10sbi5tb2R1bGVzJiZBcnJheS5pc0FycmF5KG4ubW9kdWxlcykmJnMubW9kdWxlcy5wdXNoKC4uLm4ubW9kdWxlcykse30pO3MubW9kdWxlcy5mb3JFYWNoKGU9Pnt2YXIgaSxyO2Uoe3BhcmFtczpuLHN3aXBlcjpzLGV4dGVuZFBhcmFtczooaT1uLHI9YSxmdW5jdGlvbihlPXt9KXt2YXIgdD1PYmplY3Qua2V5cyhlKVswXSxuPWVbdF07Im9iamVjdCI9PXR5cGVvZiBuJiZudWxsIT09biYmKCEwPT09aVt0XSYmKGlbdF09e2VuYWJsZWQ6ITB9KSwibmF2aWdhdGlvbiI9PT10JiZpW3RdJiZpW3RdLmVuYWJsZWQmJiFpW3RdLnByZXZFbCYmIWlbdF0ubmV4dEVsJiYoaVt0XS5hdXRvPSEwKSwwPD1bInBhZ2luYXRpb24iLCJzY3JvbGxiYXIiXS5pbmRleE9mKHQpJiZpW3RdJiZpW3RdLmVuYWJsZWQmJiFpW3RdLmVsJiYoaVt0XS5hdXRvPSEwKSx0IGluIGkmJiJlbmFibGVkImluIG4pJiYoIm9iamVjdCIhPXR5cGVvZiBpW3RdfHwiZW5hYmxlZCJpbiBpW3RdfHwoaVt0XS5lbmFibGVkPSEwKSxpW3RdfHwoaVt0XT17ZW5hYmxlZDohMX0pKSxwKHIsZSl9KSxvbjpzLm9uLmJpbmQocyksb25jZTpzLm9uY2UuYmluZChzKSxvZmY6cy5vZmYuYmluZChzKSxlbWl0OnMuZW1pdC5iaW5kKHMpfSl9KTtlPXAoe30sZWUsYSk7cmV0dXJuIHMucGFyYW1zPXAoe30sZSxsLG4pLHMub3JpZ2luYWxQYXJhbXM9cCh7fSxzLnBhcmFtcykscy5wYXNzZWRQYXJhbXM9cCh7fSxuKSxzLnBhcmFtcyYmcy5wYXJhbXMub24mJk9iamVjdC5rZXlzKHMucGFyYW1zLm9uKS5mb3JFYWNoKGU9PntzLm9uKGUscy5wYXJhbXMub25bZV0pfSkscy5wYXJhbXMmJnMucGFyYW1zLm9uQW55JiZzLm9uQW55KHMucGFyYW1zLm9uQW55KSxPYmplY3QuYXNzaWduKHMse2VuYWJsZWQ6cy5wYXJhbXMuZW5hYmxlZCxlbDp0LGNsYXNzTmFtZXM6W10sc2xpZGVzOltdLHNsaWRlc0dyaWQ6W10sc25hcEdyaWQ6W10sc2xpZGVzU2l6ZXNHcmlkOltdLGlzSG9yaXpvbnRhbCgpe3JldHVybiJob3Jpem9udGFsIj09PXMucGFyYW1zLmRpcmVjdGlvbn0saXNWZXJ0aWNhbCgpe3JldHVybiJ2ZXJ0aWNhbCI9PT1zLnBhcmFtcy5kaXJlY3Rpb259LGFjdGl2ZUluZGV4OjAscmVhbEluZGV4OjAsaXNCZWdpbm5pbmc6ITAsaXNFbmQ6ITEsdHJhbnNsYXRlOjAscHJldmlvdXNUcmFuc2xhdGU6MCxwcm9ncmVzczowLHZlbG9jaXR5OjAsYW5pbWF0aW5nOiExLGNzc092ZXJmbG93QWRqdXN0bWVudCgpe3JldHVybiBNYXRoLnRydW5jKHRoaXMudHJhbnNsYXRlLzIqKjIzKSoyKioyM30sYWxsb3dTbGlkZU5leHQ6cy5wYXJhbXMuYWxsb3dTbGlkZU5leHQsYWxsb3dTbGlkZVByZXY6cy5wYXJhbXMuYWxsb3dTbGlkZVByZXYsdG91Y2hFdmVudHNEYXRhOntpc1RvdWNoZWQ6dm9pZCAwLGlzTW92ZWQ6dm9pZCAwLGFsbG93VG91Y2hDYWxsYmFja3M6dm9pZCAwLHRvdWNoU3RhcnRUaW1lOnZvaWQgMCxpc1Njcm9sbGluZzp2b2lkIDAsY3VycmVudFRyYW5zbGF0ZTp2b2lkIDAsc3RhcnRUcmFuc2xhdGU6dm9pZCAwLGFsbG93VGhyZXNob2xkTW92ZTp2b2lkIDAsZm9jdXNhYmxlRWxlbWVudHM6cy5wYXJhbXMuZm9jdXNhYmxlRWxlbWVudHMsbGFzdENsaWNrVGltZTowLGNsaWNrVGltZW91dDp2b2lkIDAsdmVsb2NpdGllczpbXSxhbGxvd01vbWVudHVtQm91bmNlOnZvaWQgMCxzdGFydE1vdmluZzp2b2lkIDAscG9pbnRlcklkOm51bGwsdG91Y2hJZDpudWxsfSxhbGxvd0NsaWNrOiEwLGFsbG93VG91Y2hNb3ZlOnMucGFyYW1zLmFsbG93VG91Y2hNb3ZlLHRvdWNoZXM6e3N0YXJ0WDowLHN0YXJ0WTowLGN1cnJlbnRYOjAsY3VycmVudFk6MCxkaWZmOjB9LGltYWdlc1RvTG9hZDpbXSxpbWFnZXNMb2FkZWQ6MH0pLHMuZW1pdCgiX3N3aXBlciIpLHMucGFyYW1zLmluaXQmJnMuaW5pdCgpLHN9Z2V0RGlyZWN0aW9uTGFiZWwoZSl7cmV0dXJuIHRoaXMuaXNIb3Jpem9udGFsKCk/ZTp7d2lkdGg6ImhlaWdodCIsIm1hcmdpbi10b3AiOiJtYXJnaW4tbGVmdCIsIm1hcmdpbi1ib3R0b20gIjoibWFyZ2luLXJpZ2h0IiwibWFyZ2luLWxlZnQiOiJtYXJnaW4tdG9wIiwibWFyZ2luLXJpZ2h0IjoibWFyZ2luLWJvdHRvbSIsInBhZGRpbmctbGVmdCI6InBhZGRpbmctdG9wIiwicGFkZGluZy1yaWdodCI6InBhZGRpbmctYm90dG9tIixtYXJnaW5SaWdodDoibWFyZ2luQm90dG9tIn1bZV19Z2V0U2xpZGVJbmRleChlKXt2YXJ7c2xpZGVzRWw6dCxwYXJhbXM6bn09dGhpcyx0PUMoWSh0LGAuJHtuLnNsaWRlQ2xhc3N9LCBzd2lwZXItc2xpZGVgKVswXSk7cmV0dXJuIEMoZSktdH1nZXRTbGlkZUluZGV4QnlEYXRhKHQpe3JldHVybiB0aGlzLmdldFNsaWRlSW5kZXgodGhpcy5zbGlkZXMuZmluZChlPT4rZS5nZXRBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXNsaWRlLWluZGV4Iik9PT10KSl9Z2V0U2xpZGVJbmRleFdoZW5HcmlkKGUpe3JldHVybiB0aGlzLmdyaWQmJnRoaXMucGFyYW1zLmdyaWQmJjE8dGhpcy5wYXJhbXMuZ3JpZC5yb3dzJiYoImNvbHVtbiI9PT10aGlzLnBhcmFtcy5ncmlkLmZpbGw/ZT1NYXRoLmZsb29yKGUvdGhpcy5wYXJhbXMuZ3JpZC5yb3dzKToicm93Ij09PXRoaXMucGFyYW1zLmdyaWQuZmlsbCYmKGUlPU1hdGguY2VpbCh0aGlzLnNsaWRlcy5sZW5ndGgvdGhpcy5wYXJhbXMuZ3JpZC5yb3dzKSkpLGV9cmVjYWxjU2xpZGVzKCl7dmFye3NsaWRlc0VsOmUscGFyYW1zOnR9PXRoaXM7dGhpcy5zbGlkZXM9WShlLGAuJHt0LnNsaWRlQ2xhc3N9LCBzd2lwZXItc2xpZGVgKX1lbmFibGUoKXt0aGlzLmVuYWJsZWR8fCh0aGlzLmVuYWJsZWQ9ITAsdGhpcy5wYXJhbXMuZ3JhYkN1cnNvciYmdGhpcy5zZXRHcmFiQ3Vyc29yKCksdGhpcy5lbWl0KCJlbmFibGUiKSl9ZGlzYWJsZSgpe3RoaXMuZW5hYmxlZCYmKHRoaXMuZW5hYmxlZD0hMSx0aGlzLnBhcmFtcy5ncmFiQ3Vyc29yJiZ0aGlzLnVuc2V0R3JhYkN1cnNvcigpLHRoaXMuZW1pdCgiZGlzYWJsZSIpKX1zZXRQcm9ncmVzcyhlLHQpe2U9TWF0aC5taW4oTWF0aC5tYXgoZSwwKSwxKTt2YXIgbj10aGlzLm1pblRyYW5zbGF0ZSgpLGk9dGhpcy5tYXhUcmFuc2xhdGUoKTt0aGlzLnRyYW5zbGF0ZVRvKChpLW4pKmUrbix2b2lkIDA9PT10PzA6dCksdGhpcy51cGRhdGVBY3RpdmVJbmRleCgpLHRoaXMudXBkYXRlU2xpZGVzQ2xhc3NlcygpfWVtaXRDb250YWluZXJDbGFzc2VzKCl7Y29uc3QgdD10aGlzO3ZhciBlO3QucGFyYW1zLl9lbWl0Q2xhc3NlcyYmdC5lbCYmKGU9dC5lbC5jbGFzc05hbWUuc3BsaXQoIiAiKS5maWx0ZXIoZT0+MD09PWUuaW5kZXhPZigic3dpcGVyIil8fDA9PT1lLmluZGV4T2YodC5wYXJhbXMuY29udGFpbmVyTW9kaWZpZXJDbGFzcykpLHQuZW1pdCgiX2NvbnRhaW5lckNsYXNzZXMiLGUuam9pbigiICIpKSl9Z2V0U2xpZGVDbGFzc2VzKGUpe2NvbnN0IHQ9dGhpcztyZXR1cm4gdC5kZXN0cm95ZWQ/IiI6ZS5jbGFzc05hbWUuc3BsaXQoIiAiKS5maWx0ZXIoZT0+MD09PWUuaW5kZXhPZigic3dpcGVyLXNsaWRlIil8fDA9PT1lLmluZGV4T2YodC5wYXJhbXMuc2xpZGVDbGFzcykpLmpvaW4oIiAiKX1lbWl0U2xpZGVzQ2xhc3Nlcygpe2NvbnN0IG49dGhpcztpZihuLnBhcmFtcy5fZW1pdENsYXNzZXMmJm4uZWwpe2NvbnN0IGk9W107bi5zbGlkZXMuZm9yRWFjaChlPT57dmFyIHQ9bi5nZXRTbGlkZUNsYXNzZXMoZSk7aS5wdXNoKHtzbGlkZUVsOmUsY2xhc3NOYW1lczp0fSksbi5lbWl0KCJfc2xpZGVDbGFzcyIsZSx0KX0pLG4uZW1pdCgiX3NsaWRlQ2xhc3NlcyIsaSl9fXNsaWRlc1BlclZpZXdEeW5hbWljKGU9ImN1cnJlbnQiLHQ9ITEpe3ZhcntwYXJhbXM6bixzbGlkZXM6aSxzbGlkZXNHcmlkOnIsc2xpZGVzU2l6ZXNHcmlkOnMsc2l6ZTphLGFjdGl2ZUluZGV4Om99PXRoaXM7bGV0IGw9MTtpZigibnVtYmVyIj09dHlwZW9mIG4uc2xpZGVzUGVyVmlldylyZXR1cm4gbi5zbGlkZXNQZXJWaWV3O2lmKG4uY2VudGVyZWRTbGlkZXMpe2xldCB0PWlbb10/TWF0aC5jZWlsKGlbb10uc3dpcGVyU2xpZGVTaXplKTowLG47Zm9yKGxldCBlPW8rMTtlPGkubGVuZ3RoO2UrPTEpaVtlXSYmIW4mJih0Kz1NYXRoLmNlaWwoaVtlXS5zd2lwZXJTbGlkZVNpemUpLGwrPTEsdD5hKSYmKG49ITApO2ZvcihsZXQgZT1vLTE7MDw9ZTstLWUpaVtlXSYmIW4mJih0Kz1pW2VdLnN3aXBlclNsaWRlU2l6ZSxsKz0xLHQ+YSkmJihuPSEwKX1lbHNlIGlmKCJjdXJyZW50Ij09PWUpZm9yKGxldCBlPW8rMTtlPGkubGVuZ3RoO2UrPTEpKHQ/cltlXStzW2VdLXJbb108YTpyW2VdLXJbb108YSkmJihsKz0xKTtlbHNlIGZvcihsZXQgZT1vLTE7MDw9ZTstLWUpcltvXS1yW2VdPGEmJihsKz0xKTtyZXR1cm4gbH11cGRhdGUoKXtjb25zdCB0PXRoaXM7aWYodCYmIXQuZGVzdHJveWVkKXt2YXIgbix7c25hcEdyaWQ6aSxwYXJhbXM6cn09dDtyLmJyZWFrcG9pbnRzJiZ0LnNldEJyZWFrcG9pbnQoKSxbLi4udC5lbC5xdWVyeVNlbGVjdG9yQWxsKCdbbG9hZGluZz0ibGF6eSJdJyldLmZvckVhY2goZT0+e2UuY29tcGxldGUmJm8odCxlKX0pLHQudXBkYXRlU2l6ZSgpLHQudXBkYXRlU2xpZGVzKCksdC51cGRhdGVQcm9ncmVzcygpLHQudXBkYXRlU2xpZGVzQ2xhc3NlcygpO2xldCBlO2Z1bmN0aW9uIHMoKXt2YXIgZT10LnJ0bFRyYW5zbGF0ZT8tMSp0LnRyYW5zbGF0ZTp0LnRyYW5zbGF0ZSxlPU1hdGgubWluKE1hdGgubWF4KGUsdC5tYXhUcmFuc2xhdGUoKSksdC5taW5UcmFuc2xhdGUoKSk7dC5zZXRUcmFuc2xhdGUoZSksdC51cGRhdGVBY3RpdmVJbmRleCgpLHQudXBkYXRlU2xpZGVzQ2xhc3NlcygpfXIuZnJlZU1vZGUmJnIuZnJlZU1vZGUuZW5hYmxlZCYmIXIuY3NzTW9kZT8ocygpLHIuYXV0b0hlaWdodCYmdC51cGRhdGVBdXRvSGVpZ2h0KCkpOihlPSgiYXV0byI9PT1yLnNsaWRlc1BlclZpZXd8fDE8ci5zbGlkZXNQZXJWaWV3KSYmdC5pc0VuZCYmIXIuY2VudGVyZWRTbGlkZXM/KG49KHQudmlydHVhbCYmci52aXJ0dWFsLmVuYWJsZWQ/dC52aXJ0dWFsOnQpLnNsaWRlcyx0LnNsaWRlVG8obi5sZW5ndGgtMSwwLCExLCEwKSk6dC5zbGlkZVRvKHQuYWN0aXZlSW5kZXgsMCwhMSwhMCkpfHxzKCksci53YXRjaE92ZXJmbG93JiZpIT09dC5zbmFwR3JpZCYmdC5jaGVja092ZXJmbG93KCksdC5lbWl0KCJ1cGRhdGUiKX19Y2hhbmdlRGlyZWN0aW9uKHQsZT0hMCl7dmFyIG49dGhpcyxpPW4ucGFyYW1zLmRpcmVjdGlvbjtyZXR1cm4odD10fHwoImhvcml6b250YWwiPT09aT8idmVydGljYWwiOiJob3Jpem9udGFsIikpPT09aXx8Imhvcml6b250YWwiIT09dCYmInZlcnRpY2FsIiE9PXR8fChuLmVsLmNsYXNzTGlzdC5yZW1vdmUoIiIrbi5wYXJhbXMuY29udGFpbmVyTW9kaWZpZXJDbGFzcytpKSxuLmVsLmNsYXNzTGlzdC5hZGQoIiIrbi5wYXJhbXMuY29udGFpbmVyTW9kaWZpZXJDbGFzcyt0KSxuLmVtaXRDb250YWluZXJDbGFzc2VzKCksbi5wYXJhbXMuZGlyZWN0aW9uPXQsbi5zbGlkZXMuZm9yRWFjaChlPT57InZlcnRpY2FsIj09PXQ/ZS5zdHlsZS53aWR0aD0iIjplLnN0eWxlLmhlaWdodD0iIn0pLG4uZW1pdCgiY2hhbmdlRGlyZWN0aW9uIiksZSYmbi51cGRhdGUoKSksbn1jaGFuZ2VMYW5ndWFnZURpcmVjdGlvbihlKXt2YXIgdD10aGlzO3QucnRsJiYicnRsIj09PWV8fCF0LnJ0bCYmImx0ciI9PT1lfHwodC5ydGw9InJ0bCI9PT1lLHQucnRsVHJhbnNsYXRlPSJob3Jpem9udGFsIj09PXQucGFyYW1zLmRpcmVjdGlvbiYmdC5ydGwsdC5ydGw/KHQuZWwuY2xhc3NMaXN0LmFkZCh0LnBhcmFtcy5jb250YWluZXJNb2RpZmllckNsYXNzKyJydGwiKSx0LmVsLmRpcj0icnRsIik6KHQuZWwuY2xhc3NMaXN0LnJlbW92ZSh0LnBhcmFtcy5jb250YWluZXJNb2RpZmllckNsYXNzKyJydGwiKSx0LmVsLmRpcj0ibHRyIiksdC51cGRhdGUoKSl9bW91bnQobil7Y29uc3QgaT10aGlzO2lmKCFpLm1vdW50ZWQpe2xldCBlPW58fGkucGFyYW1zLmVsO2lmKCEoZT0ic3RyaW5nIj09dHlwZW9mIGU/ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKTplKSlyZXR1cm4hMTtlLnN3aXBlcj1pLGUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLmhvc3QmJmUucGFyZW50Tm9kZS5ob3N0Lm5vZGVOYW1lPT09aS5wYXJhbXMuc3dpcGVyRWxlbWVudE5vZGVOYW1lLnRvVXBwZXJDYXNlKCkmJihpLmlzRWxlbWVudD0hMCk7Y29uc3Qgcj0oKT0+Ii4iKyhpLnBhcmFtcy53cmFwcGVyQ2xhc3N8fCIiKS50cmltKCkuc3BsaXQoIiAiKS5qb2luKCIuIik7bGV0IHQ9ZSYmZS5zaGFkb3dSb290JiZlLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3Rvcj9lLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcihyKCkpOlkoZSxyKCkpWzBdOyF0JiZpLnBhcmFtcy5jcmVhdGVFbGVtZW50cyYmKHQ9UygiZGl2IixpLnBhcmFtcy53cmFwcGVyQ2xhc3MpLGUuYXBwZW5kKHQpLFkoZSwiLiIraS5wYXJhbXMuc2xpZGVDbGFzcykuZm9yRWFjaChlPT57dC5hcHBlbmQoZSl9KSksT2JqZWN0LmFzc2lnbihpLHtlbDplLHdyYXBwZXJFbDp0LHNsaWRlc0VsOmkuaXNFbGVtZW50JiYhZS5wYXJlbnROb2RlLmhvc3Quc2xpZGVTbG90cz9lLnBhcmVudE5vZGUuaG9zdDp0LGhvc3RFbDppLmlzRWxlbWVudD9lLnBhcmVudE5vZGUuaG9zdDplLG1vdW50ZWQ6ITAscnRsOiJydGwiPT09ZS5kaXIudG9Mb3dlckNhc2UoKXx8InJ0bCI9PT1YKGUsImRpcmVjdGlvbiIpLHJ0bFRyYW5zbGF0ZToiaG9yaXpvbnRhbCI9PT1pLnBhcmFtcy5kaXJlY3Rpb24mJigicnRsIj09PWUuZGlyLnRvTG93ZXJDYXNlKCl8fCJydGwiPT09WChlLCJkaXJlY3Rpb24iKSksd3JvbmdSVEw6Ii13ZWJraXQtYm94Ij09PVgodCwiZGlzcGxheSIpfSl9cmV0dXJuITB9aW5pdChlKXtjb25zdCB0PXRoaXM7cmV0dXJuIHQuaW5pdGlhbGl6ZWR8fCExIT09dC5tb3VudChlKSYmKHQuZW1pdCgiYmVmb3JlSW5pdCIpLHQucGFyYW1zLmJyZWFrcG9pbnRzJiZ0LnNldEJyZWFrcG9pbnQoKSx0LmFkZENsYXNzZXMoKSx0LnVwZGF0ZVNpemUoKSx0LnVwZGF0ZVNsaWRlcygpLHQucGFyYW1zLndhdGNoT3ZlcmZsb3cmJnQuY2hlY2tPdmVyZmxvdygpLHQucGFyYW1zLmdyYWJDdXJzb3ImJnQuZW5hYmxlZCYmdC5zZXRHcmFiQ3Vyc29yKCksdC5wYXJhbXMubG9vcCYmdC52aXJ0dWFsJiZ0LnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQ/dC5zbGlkZVRvKHQucGFyYW1zLmluaXRpYWxTbGlkZSt0LnZpcnR1YWwuc2xpZGVzQmVmb3JlLDAsdC5wYXJhbXMucnVuQ2FsbGJhY2tzT25Jbml0LCExLCEwKTp0LnNsaWRlVG8odC5wYXJhbXMuaW5pdGlhbFNsaWRlLDAsdC5wYXJhbXMucnVuQ2FsbGJhY2tzT25Jbml0LCExLCEwKSx0LnBhcmFtcy5sb29wJiZ0Lmxvb3BDcmVhdGUodm9pZCAwLCEwKSx0LmF0dGFjaEV2ZW50cygpLGU9Wy4uLnQuZWwucXVlcnlTZWxlY3RvckFsbCgnW2xvYWRpbmc9ImxhenkiXScpXSx0LmlzRWxlbWVudCYmZS5wdXNoKC4uLnQuaG9zdEVsLnF1ZXJ5U2VsZWN0b3JBbGwoJ1tsb2FkaW5nPSJsYXp5Il0nKSksZS5mb3JFYWNoKGU9PntlLmNvbXBsZXRlP28odCxlKTplLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGU9PntvKHQsZS50YXJnZXQpfSl9KSxoKHQpLHQuaW5pdGlhbGl6ZWQ9ITAsaCh0KSx0LmVtaXQoImluaXQiKSx0LmVtaXQoImFmdGVySW5pdCIpKSx0fWRlc3Ryb3koZT0hMCx0PSEwKXtjb25zdCBuPXRoaXMse3BhcmFtczppLGVsOnIsd3JhcHBlckVsOnMsc2xpZGVzOmF9PW47aWYodm9pZCAwIT09bi5wYXJhbXMmJiFuLmRlc3Ryb3llZCl7aWYobi5lbWl0KCJiZWZvcmVEZXN0cm95Iiksbi5pbml0aWFsaXplZD0hMSxuLmRldGFjaEV2ZW50cygpLGkubG9vcCYmbi5sb29wRGVzdHJveSgpLHQmJihuLnJlbW92ZUNsYXNzZXMoKSxyJiYic3RyaW5nIiE9dHlwZW9mIHImJnIucmVtb3ZlQXR0cmlidXRlKCJzdHlsZSIpLHMmJnMucmVtb3ZlQXR0cmlidXRlKCJzdHlsZSIpLGEpJiZhLmxlbmd0aCYmYS5mb3JFYWNoKGU9PntlLmNsYXNzTGlzdC5yZW1vdmUoaS5zbGlkZVZpc2libGVDbGFzcyxpLnNsaWRlRnVsbHlWaXNpYmxlQ2xhc3MsaS5zbGlkZUFjdGl2ZUNsYXNzLGkuc2xpZGVOZXh0Q2xhc3MsaS5zbGlkZVByZXZDbGFzcyksZS5yZW1vdmVBdHRyaWJ1dGUoInN0eWxlIiksZS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXNsaWRlLWluZGV4Iil9KSxuLmVtaXQoImRlc3Ryb3kiKSxPYmplY3Qua2V5cyhuLmV2ZW50c0xpc3RlbmVycykuZm9yRWFjaChlPT57bi5vZmYoZSl9KSwhMSE9PWUpe24uZWwmJiJzdHJpbmciIT10eXBlb2Ygbi5lbCYmKG4uZWwuc3dpcGVyPW51bGwpO3t0PW47Y29uc3Qgbz10O09iamVjdC5rZXlzKG8pLmZvckVhY2goZT0+e3RyeXtvW2VdPW51bGx9Y2F0Y2goZSl7fXRyeXtkZWxldGUgb1tlXX1jYXRjaChlKXt9fSl9fW4uZGVzdHJveWVkPSEwfXJldHVybiBudWxsfXN0YXRpYyBleHRlbmREZWZhdWx0cyhlKXtwKGwsZSl9c3RhdGljIGdldCBleHRlbmRlZERlZmF1bHRzKCl7cmV0dXJuIGx9c3RhdGljIGdldCBkZWZhdWx0cygpe3JldHVybiBlZX1zdGF0aWMgaW5zdGFsbE1vZHVsZShlKXtmLnByb3RvdHlwZS5fX21vZHVsZXNfX3x8KGYucHJvdG90eXBlLl9fbW9kdWxlc19fPVtdKTt2YXIgdD1mLnByb3RvdHlwZS5fX21vZHVsZXNfXzsiZnVuY3Rpb24iPT10eXBlb2YgZSYmdC5pbmRleE9mKGUpPDAmJnQucHVzaChlKX1zdGF0aWMgdXNlKGUpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2UuZm9yRWFjaChlPT5mLmluc3RhbGxNb2R1bGUoZSkpOmYuaW5zdGFsbE1vZHVsZShlKSxmfX1mdW5jdGlvbiBEKG4saSxyLHMpe3JldHVybiBuLnBhcmFtcy5jcmVhdGVFbGVtZW50cyYmT2JqZWN0LmtleXMocykuZm9yRWFjaCh0PT57aWYoIXJbdF0mJiEwPT09ci5hdXRvKXtsZXQgZT1ZKG4uZWwsIi4iK3NbdF0pWzBdO2V8fCgoZT1TKCJkaXYiLHNbdF0pKS5jbGFzc05hbWU9c1t0XSxuLmVsLmFwcGVuZChlKSksclt0XT1lLGlbdF09ZX19KSxyfU9iamVjdC5rZXlzKG4pLmZvckVhY2godD0+e09iamVjdC5rZXlzKG5bdF0pLmZvckVhY2goZT0+e2YucHJvdG90eXBlW2VdPW5bdF1bZV19KX0pLGYudXNlKFtmdW5jdGlvbih7c3dpcGVyOnMsb246ZSxlbWl0OnR9KXtjb25zdCBpPSQoKTtsZXQgbj1udWxsLHI9bnVsbDtjb25zdCBhPSgpPT57cyYmIXMuZGVzdHJveWVkJiZzLmluaXRpYWxpemVkJiYodCgiYmVmb3JlUmVzaXplIiksdCgicmVzaXplIikpfSxvPSgpPT57cyYmIXMuZGVzdHJveWVkJiZzLmluaXRpYWxpemVkJiZ0KCJvcmllbnRhdGlvbmNoYW5nZSIpfTtlKCJpbml0IiwoKT0+e3MucGFyYW1zLnJlc2l6ZU9ic2VydmVyJiZ2b2lkIDAhPT1pLlJlc2l6ZU9ic2VydmVyP3MmJiFzLmRlc3Ryb3llZCYmcy5pbml0aWFsaXplZCYmKG49bmV3IFJlc2l6ZU9ic2VydmVyKG49PntyPWkucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dmFye3dpZHRoOmUsaGVpZ2h0OnR9PXM7bGV0IGk9ZSxyPXQ7bi5mb3JFYWNoKCh7Y29udGVudEJveFNpemU6ZSxjb250ZW50UmVjdDp0LHRhcmdldDpufSk9PntuJiZuIT09cy5lbHx8KGk9dD90LndpZHRoOihlWzBdfHxlKS5pbmxpbmVTaXplLHI9dD90LmhlaWdodDooZVswXXx8ZSkuYmxvY2tTaXplKX0pLGk9PT1lJiZyPT09dHx8YSgpfSl9KSkub2JzZXJ2ZShzLmVsKTooaS5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGEpLGkuYWRkRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLG8pKX0pLGUoImRlc3Ryb3kiLCgpPT57ciYmaS5jYW5jZWxBbmltYXRpb25GcmFtZShyKSxuJiZuLnVub2JzZXJ2ZSYmcy5lbCYmKG4udW5vYnNlcnZlKHMuZWwpLG49bnVsbCksaS5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLGEpLGkucmVtb3ZlRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLG8pfSl9LGZ1bmN0aW9uKHtzd2lwZXI6aSxleHRlbmRQYXJhbXM6ZSxvbjp0LGVtaXQ6cn0pe2NvbnN0IHM9W10sYT0kKCksbj0oZSx0PXt9KT0+e3ZhciBuPW5ldyhhLk11dGF0aW9uT2JzZXJ2ZXJ8fGEuV2Via2l0TXV0YXRpb25PYnNlcnZlcikoZT0+e3ZhciB0O2kuX19wcmV2ZW50T2JzZXJ2ZXJfX3x8KDE9PT1lLmxlbmd0aD9yKCJvYnNlcnZlclVwZGF0ZSIsZVswXSk6KHQ9ZnVuY3Rpb24oKXtyKCJvYnNlcnZlclVwZGF0ZSIsZVswXSl9LGEucmVxdWVzdEFuaW1hdGlvbkZyYW1lP2EucmVxdWVzdEFuaW1hdGlvbkZyYW1lKHQpOmEuc2V0VGltZW91dCh0LDApKSl9KTtuLm9ic2VydmUoZSx7YXR0cmlidXRlczp2b2lkIDA9PT10LmF0dHJpYnV0ZXN8fHQuYXR0cmlidXRlcyxjaGlsZExpc3Q6aS5pc0VsZW1lbnR8fCh2b2lkIDA9PT10LmNoaWxkTGlzdHx8dCkuY2hpbGRMaXN0LGNoYXJhY3RlckRhdGE6dm9pZCAwPT09dC5jaGFyYWN0ZXJEYXRhfHx0LmNoYXJhY3RlckRhdGF9KSxzLnB1c2gobil9O2Uoe29ic2VydmVyOiExLG9ic2VydmVQYXJlbnRzOiExLG9ic2VydmVTbGlkZUNoaWxkcmVuOiExfSksdCgiaW5pdCIsKCk9PntpZihpLnBhcmFtcy5vYnNlcnZlcil7aWYoaS5wYXJhbXMub2JzZXJ2ZVBhcmVudHMpe3ZhciB0PXEoaS5ob3N0RWwpO2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSs9MSluKHRbZV0pfW4oaS5ob3N0RWwse2NoaWxkTGlzdDppLnBhcmFtcy5vYnNlcnZlU2xpZGVDaGlsZHJlbn0pLG4oaS53cmFwcGVyRWwse2F0dHJpYnV0ZXM6ITF9KX19KSx0KCJkZXN0cm95IiwoKT0+e3MuZm9yRWFjaChlPT57ZS5kaXNjb25uZWN0KCl9KSxzLnNwbGljZSgwLHMubGVuZ3RoKX0pfV0pO2NvbnN0IHRlPSc8c3ZnIGNsYXNzPSJzd2lwZXItbmF2aWdhdGlvbi1pY29uIiB3aWR0aD0iMTEiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAxMSAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMC4zODI5NiAyMC4wNzYyQzAuMTExNzg4IDE5LjgwNSAwLjExMTc4OCAxOS4zNjU0IDAuMzgyOTYgMTkuMDk0Mkw5LjE5NzU4IDEwLjI3OTZMMC4zODI5NiAxLjQ2NDk3QzAuMTExNzg4IDEuMTkzNzkgMC4xMTE3ODggMC43NTQxMzggMC4zODI5NiAwLjQ4Mjk2NkMwLjY1NDEzMSAwLjIxMTc5NCAxLjA5Mzc5IDAuMjExNzk0IDEuMzY0OTYgMC40ODI5NjZMMTAuNDM0MSA5LjU1MjE0QzEwLjgzNTkgOS45NTM5IDEwLjgzNTkgMTAuNjA1MyAxMC40MzQxIDExLjAwN0wxLjM2NDk2IDIwLjA3NjJDMS4wOTM3OSAyMC4zNDc0IDAuNjU0MTMxIDIwLjM0NzQgMC4zODI5NiAyMC4wNzYyWiIgZmlsbD0iY3VycmVudENvbG9yIi8+PC9zdmc+JztmdW5jdGlvbiBMKGU9IiIpe3JldHVybiIuIitlLnRyaW0oKS5yZXBsYWNlKC8oW1wuOiErXC8oKVtcXV0pL2csIlxcJDEiKS5yZXBsYWNlKC8gL2csIi4iKX1mdW5jdGlvbiBtKGUpe2NvbnN0e2VmZmVjdDpuLHN3aXBlcjppLG9uOnQsc2V0VHJhbnNsYXRlOnIsc2V0VHJhbnNpdGlvbjpzLG92ZXJ3cml0ZVBhcmFtczphLHBlcnNwZWN0aXZlOm8scmVjcmVhdGVTaGFkb3dzOmwsZ2V0RWZmZWN0UGFyYW1zOmR9PWU7dCgiYmVmb3JlSW5pdCIsKCk9Pnt2YXIgZTtpLnBhcmFtcy5lZmZlY3Q9PT1uJiYoaS5jbGFzc05hbWVzLnB1c2goIiIraS5wYXJhbXMuY29udGFpbmVyTW9kaWZpZXJDbGFzcytuKSxvJiZvKCkmJmkuY2xhc3NOYW1lcy5wdXNoKGkucGFyYW1zLmNvbnRhaW5lck1vZGlmaWVyQ2xhc3MrIjNkIiksZT1hP2EoKTp7fSxPYmplY3QuYXNzaWduKGkucGFyYW1zLGUpLE9iamVjdC5hc3NpZ24oaS5vcmlnaW5hbFBhcmFtcyxlKSl9KSx0KCJzZXRUcmFuc2xhdGUgX3ZpcnR1YWxVcGRhdGVkIiwoKT0+e2kucGFyYW1zLmVmZmVjdD09PW4mJnIoKX0pLHQoInNldFRyYW5zaXRpb24iLChlLHQpPT57aS5wYXJhbXMuZWZmZWN0PT09biYmcyh0KX0pLHQoInRyYW5zaXRpb25FbmQiLCgpPT57aS5wYXJhbXMuZWZmZWN0PT09biYmbCYmZCYmZCgpLnNsaWRlU2hhZG93cyYmKGkuc2xpZGVzLmZvckVhY2goZT0+e2UucXVlcnlTZWxlY3RvckFsbCgiLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IikuZm9yRWFjaChlPT5lLnJlbW92ZSgpKX0pLGwoKSl9KTtsZXQgYzt0KCJ2aXJ0dWFsVXBkYXRlIiwoKT0+e2kucGFyYW1zLmVmZmVjdD09PW4mJihpLnNsaWRlcy5sZW5ndGh8fChjPSEwKSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntjJiZpLnNsaWRlcyYmaS5zbGlkZXMubGVuZ3RoJiYocigpLGM9ITEpfSkpfSl9ZnVuY3Rpb24geChlLHQpe3ZhciBuPWEodCk7cmV0dXJuIG4hPT10JiYobi5zdHlsZS5iYWNrZmFjZVZpc2liaWxpdHk9ImhpZGRlbiIsbi5zdHlsZVsiLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5Il09ImhpZGRlbiIpLG59ZnVuY3Rpb24gaSh7c3dpcGVyOm4sZHVyYXRpb246ZSx0cmFuc2Zvcm1FbGVtZW50czppLGFsbFNsaWRlczpyfSl7Y29uc3Qgcz1uWyJhY3RpdmVJbmRleCJdO2lmKG4ucGFyYW1zLnZpcnR1YWxUcmFuc2xhdGUmJjAhPT1lKXtsZXQgdD0hMSxlOyhlPXI/aTppLmZpbHRlcihlPT57dmFyIHQsZT1lLmNsYXNzTGlzdC5jb250YWlucygic3dpcGVyLXNsaWRlLXRyYW5zZm9ybSIpPyh0PWUpLnBhcmVudEVsZW1lbnR8fG4uc2xpZGVzLmZpbmQoZT0+ZS5zaGFkb3dSb290JiZlLnNoYWRvd1Jvb3Q9PT10LnBhcmVudE5vZGUpOmU7cmV0dXJuIG4uZ2V0U2xpZGVJbmRleChlKT09PXN9KSkuZm9yRWFjaChlPT57ZyhlLCgpPT57dmFyIGU7dHx8biYmIW4uZGVzdHJveWVkJiYodD0hMCxuLmFuaW1hdGluZz0hMSxlPW5ldyB3aW5kb3cuQ3VzdG9tRXZlbnQoInRyYW5zaXRpb25lbmQiLHtidWJibGVzOiEwLGNhbmNlbGFibGU6ITB9KSxuLndyYXBwZXJFbC5kaXNwYXRjaEV2ZW50KGUpKX0pfSl9fWZ1bmN0aW9uIEUoZSx0LG4pe249InN3aXBlci1zbGlkZS1zaGFkb3ciKyhuPyItIituOiIiKSsoZT8iIHN3aXBlci1zbGlkZS1zaGFkb3ctIitlOiIiKSxlPWEodCk7bGV0IGk9ZS5xdWVyeVNlbGVjdG9yKCIuIituLnNwbGl0KCIgIikuam9pbigiLiIpKTtyZXR1cm4gaXx8KGk9UygiZGl2IixuLnNwbGl0KCIgIikpLGUuYXBwZW5kKGkpKSxpfXJldHVybiBmLnVzZShbZnVuY3Rpb24oe3N3aXBlcjpELGV4dGVuZFBhcmFtczplLG9uOnQsZW1pdDpMfSl7ZSh7dmlydHVhbDp7ZW5hYmxlZDohMSxzbGlkZXM6W10sY2FjaGU6ITAsc2xpZGVzUGVyVmlld0F1dG9TbGlkZVNpemU6MzIwLHJlbmRlclNsaWRlOm51bGwscmVuZGVyRXh0ZXJuYWw6bnVsbCxyZW5kZXJFeHRlcm5hbFVwZGF0ZTohMCxhZGRTbGlkZXNCZWZvcmU6MCxhZGRTbGlkZXNBZnRlcjowfX0pO2xldCBuO2U9TygpLEQudmlydHVhbD17Y2FjaGU6e30sZnJvbTp2b2lkIDAsdG86dm9pZCAwLHNsaWRlczpbXSxvZmZzZXQ6MCxzbGlkZXNHcmlkOltdfTtjb25zdCByPWUuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZnVuY3Rpb24gayhlLHQpe3ZhciBuPUQucGFyYW1zLnZpcnR1YWw7aWYobi5jYWNoZSYmRC52aXJ0dWFsLmNhY2hlW3RdKXJldHVybiBELnZpcnR1YWwuY2FjaGVbdF07bGV0IGk7cmV0dXJuIG4ucmVuZGVyU2xpZGU/InN0cmluZyI9PXR5cGVvZihpPW4ucmVuZGVyU2xpZGUuY2FsbChELGUsdCkpJiYoTShyLGkpLGk9ci5jaGlsZHJlblswXSk6aT1ELmlzRWxlbWVudD9TKCJzd2lwZXItc2xpZGUiKTpTKCJkaXYiLEQucGFyYW1zLnNsaWRlQ2xhc3MpLGkuc2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1zbGlkZS1pbmRleCIsdCksbi5yZW5kZXJTbGlkZXx8TShpLGUpLG4uY2FjaGUmJihELnZpcnR1YWwuY2FjaGVbdF09aSksaX1mdW5jdGlvbiBhKG8sbCxkKXt2YXJ7c2xpZGVzUGVyR3JvdXA6YyxjZW50ZXJlZFNsaWRlczp1LHNsaWRlc1BlclZpZXc6cCxsb29wOmgsaW5pdGlhbFNsaWRlOmZ9PUQucGFyYW1zO2lmKCEobCYmIWgmJjA8Zikpe3ZhcnthZGRTbGlkZXNCZWZvcmU6bCxhZGRTbGlkZXNBZnRlcjpmLHNsaWRlc1BlclZpZXdBdXRvU2xpZGVTaXplOm19PUQucGFyYW1zLnZpcnR1YWw7Y29uc3R7ZnJvbTpfLHRvOlQsc2xpZGVzOlMsc2xpZGVzR3JpZDpDLG9mZnNldDpBfT1ELnZpcnR1YWw7RC5wYXJhbXMuY3NzTW9kZXx8RC51cGRhdGVBY3RpdmVJbmRleCgpO2Q9dm9pZCAwPT09ZD9ELmFjdGl2ZUluZGV4fHwwOmQ7bGV0IHQ7dD1ELnJ0bFRyYW5zbGF0ZT8icmlnaHQiOkQuaXNIb3Jpem9udGFsKCk/ImxlZnQiOiJ0b3AiO2xldCBuO2lmKCJhdXRvIj09PXApaWYobSl7bGV0IGU9RC5zaXplO2U9ZXx8KEQuaXNIb3Jpem9udGFsKCk/RC5lbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDpELmVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCksbj1NYXRoLm1heCgxLE1hdGguY2VpbChlL20pKX1lbHNlIG49MTtlbHNlIG49cDtsZXQgZSxpLHI9ZC0oaT11PyhlPU1hdGguZmxvb3Iobi8yKStjK2YsTWF0aC5mbG9vcihuLzIpK2MrbCk6KGU9bisoYy0xKStmLChoP246YykrbCkpLHM9ZCtlLGE9KGh8fChyPU1hdGgubWF4KHIsMCkscz1NYXRoLm1pbihzLFMubGVuZ3RoLTEpKSwoRC5zbGlkZXNHcmlkW3JdfHwwKS0oRC5zbGlkZXNHcmlkWzBdfHwwKSk7aWYoaCYmZD49aT8oci09aSx1fHwoYSs9RC5zbGlkZXNHcmlkWzBdKSk6aCYmZDxpJiYocj0taSx1KSYmKGErPUQuc2xpZGVzR3JpZFswXSksT2JqZWN0LmFzc2lnbihELnZpcnR1YWwse2Zyb206cix0bzpzLG9mZnNldDphLHNsaWRlc0dyaWQ6RC5zbGlkZXNHcmlkLHNsaWRlc0JlZm9yZTppLHNsaWRlc0FmdGVyOmV9KSxfIT09cnx8VCE9PXN8fG8paWYoRC5wYXJhbXMudmlydHVhbC5yZW5kZXJFeHRlcm5hbClELnBhcmFtcy52aXJ0dWFsLnJlbmRlckV4dGVybmFsLmNhbGwoRCx7b2Zmc2V0OmEsZnJvbTpyLHRvOnMsc2xpZGVzOmZ1bmN0aW9uKCl7dmFyIHQ9W107Zm9yKGxldCBlPXI7ZTw9cztlKz0xKXQucHVzaChTW2VdKTtyZXR1cm4gdH0oKX0pLEQucGFyYW1zLnZpcnR1YWwucmVuZGVyRXh0ZXJuYWxVcGRhdGU/RSgpOkwoInZpcnR1YWxVcGRhdGUiKTtlbHNle3ZhciBnPVtdLHY9W10seT1lPT57bGV0IHQ9ZTtyZXR1cm4gZTwwP3Q9Uy5sZW5ndGgrZTp0Pj1TLmxlbmd0aCYmKHQtPVMubGVuZ3RoKSx0fTtpZihvKUQuc2xpZGVzLmZpbHRlcihlPT5lLm1hdGNoZXMoYC4ke0QucGFyYW1zLnNsaWRlQ2xhc3N9LCBzd2lwZXItc2xpZGVgKSkuZm9yRWFjaChlPT57ZS5yZW1vdmUoKX0pO2Vsc2UgZm9yKGxldCBlPV87ZTw9VDtlKz0xKWlmKGU8cnx8ZT5zKXtjb25zdCBNPXkoZSk7RC5zbGlkZXMuZmlsdGVyKGU9PmUubWF0Y2hlcyhgLiR7RC5wYXJhbXMuc2xpZGVDbGFzc31bZGF0YS1zd2lwZXItc2xpZGUtaW5kZXg9IiR7TX0iXSwgc3dpcGVyLXNsaWRlW2RhdGEtc3dpcGVyLXNsaWRlLWluZGV4PSIke019Il1gKSkuZm9yRWFjaChlPT57ZS5yZW1vdmUoKX0pfXZhciBiLG09aD8tUy5sZW5ndGg6MCx3PWg/MipTLmxlbmd0aDpTLmxlbmd0aDtmb3IobGV0IGU9bTtlPHc7ZSs9MSllPj1yJiZlPD1zJiYoYj15KGUpLHZvaWQgMD09PVR8fG8/di5wdXNoKGIpOihlPlQmJnYucHVzaChiKSxlPF8mJmcucHVzaChiKSkpO2lmKHYuZm9yRWFjaChlPT57RC5zbGlkZXNFbC5hcHBlbmQoayhTW2VdLGUpKX0pLGgpZm9yKGxldCBlPWcubGVuZ3RoLTE7MDw9ZTstLWUpe3ZhciB4PWdbZV07RC5zbGlkZXNFbC5wcmVwZW5kKGsoU1t4XSx4KSl9ZWxzZSBnLnNvcnQoKGUsdCk9PnQtZSksZy5mb3JFYWNoKGU9PntELnNsaWRlc0VsLnByZXBlbmQoayhTW2VdLGUpKX0pO1koRC5zbGlkZXNFbCwiLnN3aXBlci1zbGlkZSwgc3dpcGVyLXNsaWRlIikuZm9yRWFjaChlPT57ZS5zdHlsZVt0XT1hLU1hdGguYWJzKEQuY3NzT3ZlcmZsb3dBZGp1c3RtZW50KCkpKyJweCJ9KSxFKCl9ZWxzZSBELnNsaWRlc0dyaWQhPT1DJiZhIT09QSYmRC5zbGlkZXMuZm9yRWFjaChlPT57ZS5zdHlsZVt0XT1hLU1hdGguYWJzKEQuY3NzT3ZlcmZsb3dBZGp1c3RtZW50KCkpKyJweCJ9KSxELnVwZGF0ZVByb2dyZXNzKCksTCgidmlydHVhbFVwZGF0ZSIpO2Z1bmN0aW9uIEUoKXtELnVwZGF0ZVNsaWRlcygpLEQudXBkYXRlUHJvZ3Jlc3MoKSxELnVwZGF0ZVNsaWRlc0NsYXNzZXMoKSxMKCJ2aXJ0dWFsVXBkYXRlIil9fX10KCJiZWZvcmVJbml0IiwoKT0+e2lmKEQucGFyYW1zLnZpcnR1YWwuZW5hYmxlZCl7bGV0IGU7dmFyIHQ7dm9pZCAwPT09RC5wYXNzZWRQYXJhbXMudmlydHVhbC5zbGlkZXMmJih0PVsuLi5ELnNsaWRlc0VsLmNoaWxkcmVuXS5maWx0ZXIoZT0+ZS5tYXRjaGVzKGAuJHtELnBhcmFtcy5zbGlkZUNsYXNzfSwgc3dpcGVyLXNsaWRlYCkpKSYmdC5sZW5ndGgmJihELnZpcnR1YWwuc2xpZGVzPVsuLi50XSxlPSEwLHQuZm9yRWFjaCgoZSx0KT0+e2Uuc2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1zbGlkZS1pbmRleCIsdCksKEQudmlydHVhbC5jYWNoZVt0XT1lKS5yZW1vdmUoKX0pKSxlfHwoRC52aXJ0dWFsLnNsaWRlcz1ELnBhcmFtcy52aXJ0dWFsLnNsaWRlcyksRC5jbGFzc05hbWVzLnB1c2goRC5wYXJhbXMuY29udGFpbmVyTW9kaWZpZXJDbGFzcysidmlydHVhbCIpLEQucGFyYW1zLndhdGNoU2xpZGVzUHJvZ3Jlc3M9ITAsRC5vcmlnaW5hbFBhcmFtcy53YXRjaFNsaWRlc1Byb2dyZXNzPSEwLGEoITEsITApfX0pLHQoInNldFRyYW5zbGF0ZSIsKCk9PntELnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQmJihELnBhcmFtcy5jc3NNb2RlJiYhRC5faW1tZWRpYXRlVmlydHVhbD8oY2xlYXJUaW1lb3V0KG4pLG49c2V0VGltZW91dCgoKT0+e2EoKX0sMTAwKSk6YSgpKX0pLHQoImluaXQgdXBkYXRlIHJlc2l6ZSIsKCk9PntELnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQmJkQucGFyYW1zLmNzc01vZGUmJkcoRC53cmFwcGVyRWwsIi0tc3dpcGVyLXZpcnR1YWwtc2l6ZSIsRC52aXJ0dWFsU2l6ZSsicHgiKX0pLE9iamVjdC5hc3NpZ24oRC52aXJ0dWFsLHthcHBlbmRTbGlkZTpmdW5jdGlvbih0KXtpZigib2JqZWN0Ij09dHlwZW9mIHQmJiJsZW5ndGgiaW4gdClmb3IobGV0IGU9MDtlPHQubGVuZ3RoO2UrPTEpdFtlXSYmRC52aXJ0dWFsLnNsaWRlcy5wdXNoKHRbZV0pO2Vsc2UgRC52aXJ0dWFsLnNsaWRlcy5wdXNoKHQpO2EoITApfSxwcmVwZW5kU2xpZGU6ZnVuY3Rpb24odCl7dmFyIGU9RC5hY3RpdmVJbmRleDtsZXQgbj1lKzEsaT0xO2lmKEFycmF5LmlzQXJyYXkodCkpe2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSs9MSl0W2VdJiZELnZpcnR1YWwuc2xpZGVzLnVuc2hpZnQodFtlXSk7bj1lK3QubGVuZ3RoLGk9dC5sZW5ndGh9ZWxzZSBELnZpcnR1YWwuc2xpZGVzLnVuc2hpZnQodCk7aWYoRC5wYXJhbXMudmlydHVhbC5jYWNoZSl7Y29uc3Qgcj1ELnZpcnR1YWwuY2FjaGUscz17fTtPYmplY3Qua2V5cyhyKS5mb3JFYWNoKGU9Pnt2YXIgdD1yW2VdLG49dC5nZXRBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXNsaWRlLWluZGV4Iik7biYmdC5zZXRBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXNsaWRlLWluZGV4IixwYXJzZUludChuLDEwKStpKSxzW3BhcnNlSW50KGUsMTApK2ldPXR9KSxELnZpcnR1YWwuY2FjaGU9c31hKCEwKSxELnNsaWRlVG8obiwwKX0scmVtb3ZlU2xpZGU6ZnVuY3Rpb24obil7aWYobnVsbCE9bil7bGV0IHQ9RC5hY3RpdmVJbmRleDtpZihBcnJheS5pc0FycmF5KG4pKWZvcihsZXQgZT1uLmxlbmd0aC0xOzA8PWU7LS1lKUQucGFyYW1zLnZpcnR1YWwuY2FjaGUmJihkZWxldGUgRC52aXJ0dWFsLmNhY2hlW25bZV1dLE9iamVjdC5rZXlzKEQudmlydHVhbC5jYWNoZSkuZm9yRWFjaChlPT57bjxlJiYoRC52aXJ0dWFsLmNhY2hlW2UtMV09RC52aXJ0dWFsLmNhY2hlW2VdLEQudmlydHVhbC5jYWNoZVtlLTFdLnNldEF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItc2xpZGUtaW5kZXgiLGUtMSksZGVsZXRlIEQudmlydHVhbC5jYWNoZVtlXSl9KSksRC52aXJ0dWFsLnNsaWRlcy5zcGxpY2UobltlXSwxKSxuW2VdPHQmJi0tdCx0PU1hdGgubWF4KHQsMCk7ZWxzZSBELnBhcmFtcy52aXJ0dWFsLmNhY2hlJiYoZGVsZXRlIEQudmlydHVhbC5jYWNoZVtuXSxPYmplY3Qua2V5cyhELnZpcnR1YWwuY2FjaGUpLmZvckVhY2goZT0+e248ZSYmKEQudmlydHVhbC5jYWNoZVtlLTFdPUQudmlydHVhbC5jYWNoZVtlXSxELnZpcnR1YWwuY2FjaGVbZS0xXS5zZXRBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXNsaWRlLWluZGV4IixlLTEpLGRlbGV0ZSBELnZpcnR1YWwuY2FjaGVbZV0pfSkpLEQudmlydHVhbC5zbGlkZXMuc3BsaWNlKG4sMSksbjx0JiYtLXQsdD1NYXRoLm1heCh0LDApO2EoITApLEQuc2xpZGVUbyh0LDApfX0scmVtb3ZlQWxsU2xpZGVzOmZ1bmN0aW9uKCl7RC52aXJ0dWFsLnNsaWRlcz1bXSxELnBhcmFtcy52aXJ0dWFsLmNhY2hlJiYoRC52aXJ0dWFsLmNhY2hlPXt9KSxhKCEwKSxELnNsaWRlVG8oMCwwKX0sdXBkYXRlOmF9KX0sZnVuY3Rpb24oe3N3aXBlcjp2LGV4dGVuZFBhcmFtczplLG9uOnQsZW1pdDp5fSl7Y29uc3QgYj1PKCksdz0kKCk7ZnVuY3Rpb24gbih0KXtpZih2LmVuYWJsZWQpe3ZhciBuPXZbInJ0bFRyYW5zbGF0ZSJdO2xldCBlPXQ7dmFyIHQ9KGU9ZS5vcmlnaW5hbEV2ZW50P2Uub3JpZ2luYWxFdmVudDplKS5rZXlDb2RlfHxlLmNoYXJDb2RlLGk9di5wYXJhbXMua2V5Ym9hcmQucGFnZVVwRG93bixyPWkmJjMzPT09dCxpPWkmJjM0PT09dCxzPTM3PT09dCxhPTM5PT09dCxvPTM4PT09dCxsPTQwPT09dDtpZighdi5hbGxvd1NsaWRlTmV4dCYmKHYuaXNIb3Jpem9udGFsKCkmJmF8fHYuaXNWZXJ0aWNhbCgpJiZsfHxpKSlyZXR1cm4hMTtpZighdi5hbGxvd1NsaWRlUHJldiYmKHYuaXNIb3Jpem9udGFsKCkmJnN8fHYuaXNWZXJ0aWNhbCgpJiZvfHxyKSlyZXR1cm4hMTtpZighKGUuc2hpZnRLZXl8fGUuYWx0S2V5fHxlLmN0cmxLZXl8fGUubWV0YUtleXx8Yi5hY3RpdmVFbGVtZW50JiYoYi5hY3RpdmVFbGVtZW50LmlzQ29udGVudEVkaXRhYmxlfHxiLmFjdGl2ZUVsZW1lbnQubm9kZU5hbWUmJigiaW5wdXQiPT09Yi5hY3RpdmVFbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCl8fCJ0ZXh0YXJlYSI9PT1iLmFjdGl2ZUVsZW1lbnQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSkpKSl7aWYodi5wYXJhbXMua2V5Ym9hcmQub25seUluVmlld3BvcnQmJihyfHxpfHxzfHxhfHxvfHxsKSl7bGV0IHQ9ITE7aWYoMDxxKHYuZWwsYC4ke3YucGFyYW1zLnNsaWRlQ2xhc3N9LCBzd2lwZXItc2xpZGVgKS5sZW5ndGgmJjA9PT1xKHYuZWwsIi4iK3YucGFyYW1zLnNsaWRlQWN0aXZlQ2xhc3MpLmxlbmd0aClyZXR1cm47dmFyIGQ9di5lbCxjPWQuY2xpZW50V2lkdGgsdT1kLmNsaWVudEhlaWdodCxwPXcuaW5uZXJXaWR0aCxoPXcuaW5uZXJIZWlnaHQsZj1qKGQpLG09KG4mJihmLmxlZnQtPWQuc2Nyb2xsTGVmdCksW1tmLmxlZnQsZi50b3BdLFtmLmxlZnQrYyxmLnRvcF0sW2YubGVmdCxmLnRvcCt1XSxbZi5sZWZ0K2MsZi50b3ArdV1dKTtmb3IobGV0IGU9MDtlPG0ubGVuZ3RoO2UrPTEpe3ZhciBnPW1bZV07MDw9Z1swXSYmZ1swXTw9cCYmMDw9Z1sxXSYmZ1sxXTw9aCYmKDA9PT1nWzBdJiYwPT09Z1sxXXx8KHQ9ITApKX1pZighdClyZXR1cm59di5pc0hvcml6b250YWwoKT8oKHJ8fGl8fHN8fGEpJiYoZS5wcmV2ZW50RGVmYXVsdD9lLnByZXZlbnREZWZhdWx0KCk6ZS5yZXR1cm5WYWx1ZT0hMSksKChpfHxhKSYmIW58fChyfHxzKSYmbikmJnYuc2xpZGVOZXh0KCksKChyfHxzKSYmIW58fChpfHxhKSYmbikmJnYuc2xpZGVQcmV2KCkpOigocnx8aXx8b3x8bCkmJihlLnByZXZlbnREZWZhdWx0P2UucHJldmVudERlZmF1bHQoKTplLnJldHVyblZhbHVlPSExKSwoaXx8bCkmJnYuc2xpZGVOZXh0KCksKHJ8fG8pJiZ2LnNsaWRlUHJldigpKSx5KCJrZXlQcmVzcyIsdCl9fX1mdW5jdGlvbiBpKCl7di5rZXlib2FyZC5lbmFibGVkfHwoYi5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixuKSx2LmtleWJvYXJkLmVuYWJsZWQ9ITApfWZ1bmN0aW9uIHIoKXt2LmtleWJvYXJkLmVuYWJsZWQmJihiLnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLG4pLHYua2V5Ym9hcmQuZW5hYmxlZD0hMSl9ZSh7a2V5Ym9hcmQ6e2VuYWJsZWQ6ISh2LmtleWJvYXJkPXtlbmFibGVkOiExfSksb25seUluVmlld3BvcnQ6ITAscGFnZVVwRG93bjohMH19KSx0KCJpbml0IiwoKT0+e3YucGFyYW1zLmtleWJvYXJkLmVuYWJsZWQmJmkoKX0pLHQoImRlc3Ryb3kiLCgpPT57di5rZXlib2FyZC5lbmFibGVkJiZyKCl9KSxPYmplY3QuYXNzaWduKHYua2V5Ym9hcmQse2VuYWJsZTppLGRpc2FibGU6cn0pfSxmdW5jdGlvbih7c3dpcGVyOnUsZXh0ZW5kUGFyYW1zOmUsb246dCxlbWl0OnB9KXtjb25zdCBuPSQoKTtlKHttb3VzZXdoZWVsOntlbmFibGVkOiExLHJlbGVhc2VPbkVkZ2VzOiExLGludmVydDohMSxmb3JjZVRvQXhpczohMSxzZW5zaXRpdml0eToxLGV2ZW50c1RhcmdldDoiY29udGFpbmVyIix0aHJlc2hvbGREZWx0YTpudWxsLHRocmVzaG9sZFRpbWU6bnVsbCxub01vdXNld2hlZWxDbGFzczoic3dpcGVyLW5vLW1vdXNld2hlZWwifX0pLHUubW91c2V3aGVlbD17ZW5hYmxlZDohMX07bGV0IGgsaT12KCksZjtjb25zdCBtPVtdO2Z1bmN0aW9uIHIoKXt1LmVuYWJsZWQmJih1Lm1vdXNlRW50ZXJlZD0hMCl9ZnVuY3Rpb24gcygpe3UuZW5hYmxlZCYmKHUubW91c2VFbnRlcmVkPSExKX1mdW5jdGlvbiBnKGUpe3UucGFyYW1zLm1vdXNld2hlZWwudGhyZXNob2xkRGVsdGEmJmUuZGVsdGE8dS5wYXJhbXMubW91c2V3aGVlbC50aHJlc2hvbGREZWx0YXx8dS5wYXJhbXMubW91c2V3aGVlbC50aHJlc2hvbGRUaW1lJiZ2KCktaTx1LnBhcmFtcy5tb3VzZXdoZWVsLnRocmVzaG9sZFRpbWV8fDY8PWUuZGVsdGEmJnYoKS1pPDYwfHwoZS5kaXJlY3Rpb248MD91LmlzRW5kJiYhdS5wYXJhbXMubG9vcHx8dS5hbmltYXRpbmd8fCh1LnNsaWRlTmV4dCgpLHAoInNjcm9sbCIsZS5yYXcpKTp1LmlzQmVnaW5uaW5nJiYhdS5wYXJhbXMubG9vcHx8dS5hbmltYXRpbmd8fCh1LnNsaWRlUHJldigpLHAoInNjcm9sbCIsZS5yYXcpKSxpPShuZXcgbi5EYXRlKS5nZXRUaW1lKCkpfWZ1bmN0aW9uIGEoaSl7bGV0IHI9aTtpZih1LmVuYWJsZWQmJiFpLnRhcmdldC5jbG9zZXN0KCIuIit1LnBhcmFtcy5tb3VzZXdoZWVsLm5vTW91c2V3aGVlbENsYXNzKSl7dmFyIHM9dS5wYXJhbXMubW91c2V3aGVlbDt1LnBhcmFtcy5jc3NNb2RlJiZyLnByZXZlbnREZWZhdWx0KCk7bGV0IGU9dS5lbDt2YXIgYT0oZT0iY29udGFpbmVyIiE9PXUucGFyYW1zLm1vdXNld2hlZWwuZXZlbnRzVGFyZ2V0P2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodS5wYXJhbXMubW91c2V3aGVlbC5ldmVudHNUYXJnZXQpOmUpJiZlLmNvbnRhaW5zKHIudGFyZ2V0KTtpZighdS5tb3VzZUVudGVyZWQmJiFhJiYhcy5yZWxlYXNlT25FZGdlcylyZXR1cm4hMDtyLm9yaWdpbmFsRXZlbnQmJihyPXIub3JpZ2luYWxFdmVudCk7bGV0IHQ9MDt2YXIgYT11LnJ0bFRyYW5zbGF0ZT8tMToxLG89ZnVuY3Rpb24oZSl7bGV0IHQ9MCxuPTAsaT0wLHI9MDtyZXR1cm4iZGV0YWlsImluIGUmJihuPWUuZGV0YWlsKSwid2hlZWxEZWx0YSJpbiBlJiYobj0tZS53aGVlbERlbHRhLzEyMCksIndoZWVsRGVsdGFZImluIGUmJihuPS1lLndoZWVsRGVsdGFZLzEyMCksIndoZWVsRGVsdGFYImluIGUmJih0PS1lLndoZWVsRGVsdGFYLzEyMCksImF4aXMiaW4gZSYmZS5heGlzPT09ZS5IT1JJWk9OVEFMX0FYSVMmJih0PW4sbj0wKSxpPTEwKnQscj0xMCpuLCJkZWx0YVkiaW4gZSYmKHI9ZS5kZWx0YVkpLCJkZWx0YVgiaW4gZSYmKGk9ZS5kZWx0YVgpLGUuc2hpZnRLZXkmJiFpJiYoaT1yLHI9MCksKGl8fHIpJiZlLmRlbHRhTW9kZSYmKDE9PT1lLmRlbHRhTW9kZT8oaSo9NDAscio9NDApOihpKj04MDAscio9ODAwKSksaSYmIXQmJih0PWk8MT8tMToxKSxyJiYhbiYmKG49cjwxPy0xOjEpLHtzcGluWDp0LHNwaW5ZOm4scGl4ZWxYOmkscGl4ZWxZOnJ9fShyKTtpZihzLmZvcmNlVG9BeGlzKWlmKHUuaXNIb3Jpem9udGFsKCkpe2lmKCEoTWF0aC5hYnMoby5waXhlbFgpPk1hdGguYWJzKG8ucGl4ZWxZKSkpcmV0dXJuITA7dD0tby5waXhlbFgqYX1lbHNle2lmKCEoTWF0aC5hYnMoby5waXhlbFkpPk1hdGguYWJzKG8ucGl4ZWxYKSkpcmV0dXJuITA7dD0tby5waXhlbFl9ZWxzZSB0PU1hdGguYWJzKG8ucGl4ZWxYKT5NYXRoLmFicyhvLnBpeGVsWSk/LW8ucGl4ZWxYKmE6LW8ucGl4ZWxZO2lmKDA9PT10KXJldHVybiEwO3MuaW52ZXJ0JiYodD0tdCk7bGV0IG49dS5nZXRUcmFuc2xhdGUoKSt0KnMuc2Vuc2l0aXZpdHk7aWYoKG49bj49dS5taW5UcmFuc2xhdGUoKT91Lm1pblRyYW5zbGF0ZSgpOm4pPD11Lm1heFRyYW5zbGF0ZSgpJiYobj11Lm1heFRyYW5zbGF0ZSgpKSwoISF1LnBhcmFtcy5sb29wfHwhKG49PT11Lm1pblRyYW5zbGF0ZSgpfHxuPT09dS5tYXhUcmFuc2xhdGUoKSkpJiZ1LnBhcmFtcy5uZXN0ZWQmJnIuc3RvcFByb3BhZ2F0aW9uKCksdS5wYXJhbXMuZnJlZU1vZGUmJnUucGFyYW1zLmZyZWVNb2RlLmVuYWJsZWQpe2NvbnN0IGQ9e3RpbWU6digpLGRlbHRhOk1hdGguYWJzKHQpLGRpcmVjdGlvbjpNYXRoLnNpZ24odCl9O2E9ZiYmZC50aW1lPGYudGltZSs1MDAmJmQuZGVsdGE8PWYuZGVsdGEmJmQuZGlyZWN0aW9uPT09Zi5kaXJlY3Rpb247aWYoIWEpe2Y9dm9pZCAwO2xldCBlPXUuZ2V0VHJhbnNsYXRlKCkrdCpzLnNlbnNpdGl2aXR5O3ZhciBvPXUuaXNCZWdpbm5pbmcsbD11LmlzRW5kO2lmKChlPWU+PXUubWluVHJhbnNsYXRlKCk/dS5taW5UcmFuc2xhdGUoKTplKTw9dS5tYXhUcmFuc2xhdGUoKSYmKGU9dS5tYXhUcmFuc2xhdGUoKSksdS5zZXRUcmFuc2l0aW9uKDApLHUuc2V0VHJhbnNsYXRlKGUpLHUudXBkYXRlUHJvZ3Jlc3MoKSx1LnVwZGF0ZUFjdGl2ZUluZGV4KCksdS51cGRhdGVTbGlkZXNDbGFzc2VzKCksKCFvJiZ1LmlzQmVnaW5uaW5nfHwhbCYmdS5pc0VuZCkmJnUudXBkYXRlU2xpZGVzQ2xhc3NlcygpLHUucGFyYW1zLmxvb3AmJnUubG9vcEZpeCh7ZGlyZWN0aW9uOmQuZGlyZWN0aW9uPDA/Im5leHQiOiJwcmV2IixieU1vdXNld2hlZWw6ITB9KSx1LnBhcmFtcy5mcmVlTW9kZS5zdGlja3kpe2NsZWFyVGltZW91dChoKSxoPXZvaWQgMCwxNTw9bS5sZW5ndGgmJm0uc2hpZnQoKTtvPW0ubGVuZ3RoP21bbS5sZW5ndGgtMV06dm9pZCAwLGw9bVswXTtpZihtLnB1c2goZCksbyYmKGQuZGVsdGE+by5kZWx0YXx8ZC5kaXJlY3Rpb24hPT1vLmRpcmVjdGlvbikpbS5zcGxpY2UoMCk7ZWxzZSBpZigxNTw9bS5sZW5ndGgmJmQudGltZS1sLnRpbWU8NTAwJiYxPD1sLmRlbHRhLWQuZGVsdGEmJmQuZGVsdGE8PTYpe2NvbnN0IGM9MDx0Py44Oi4yO2Y9ZCxtLnNwbGljZSgwKSxoPVQoKCk9PnshdS5kZXN0cm95ZWQmJnUucGFyYW1zJiZ1LnNsaWRlVG9DbG9zZXN0KHUucGFyYW1zLnNwZWVkLCEwLHZvaWQgMCxjKX0sMCl9aD1ofHxUKCgpPT57IXUuZGVzdHJveWVkJiZ1LnBhcmFtcyYmKGY9ZCxtLnNwbGljZSgwKSx1LnNsaWRlVG9DbG9zZXN0KHUucGFyYW1zLnNwZWVkLCEwLHZvaWQgMCwuNSkpfSw1MDApfWlmKGF8fHAoInNjcm9sbCIsciksdS5wYXJhbXMuYXV0b3BsYXkmJnUucGFyYW1zLmF1dG9wbGF5LmRpc2FibGVPbkludGVyYWN0aW9uJiZ1LmF1dG9wbGF5LnN0b3AoKSxzLnJlbGVhc2VPbkVkZ2VzJiYoZT09PXUubWluVHJhbnNsYXRlKCl8fGU9PT11Lm1heFRyYW5zbGF0ZSgpKSlyZXR1cm4hMH19ZWxzZXtvPXt0aW1lOnYoKSxkZWx0YTpNYXRoLmFicyh0KSxkaXJlY3Rpb246TWF0aC5zaWduKHQpLHJhdzppfSxsPSgyPD1tLmxlbmd0aCYmbS5zaGlmdCgpLG0ubGVuZ3RoP21bbS5sZW5ndGgtMV06dm9pZCAwKTtpZihtLnB1c2gobyksKCFsfHxvLmRpcmVjdGlvbiE9PWwuZGlyZWN0aW9ufHxvLmRlbHRhPmwuZGVsdGF8fG8udGltZT5sLnRpbWUrMTUwKSYmZyhvKSxmdW5jdGlvbihlKXt2YXIgdD11LnBhcmFtcy5tb3VzZXdoZWVsO2lmKGUuZGlyZWN0aW9uPDApe2lmKHUuaXNFbmQmJiF1LnBhcmFtcy5sb29wJiZ0LnJlbGVhc2VPbkVkZ2VzKXJldHVybiAxfWVsc2UgaWYodS5pc0JlZ2lubmluZyYmIXUucGFyYW1zLmxvb3AmJnQucmVsZWFzZU9uRWRnZXMpcmV0dXJuIDF9KG8pKXJldHVybiEwfXJldHVybiByLnByZXZlbnREZWZhdWx0P3IucHJldmVudERlZmF1bHQoKTpyLnJldHVyblZhbHVlPSExLCExfX1mdW5jdGlvbiBvKGUpe2xldCB0PXUuZWw7KHQ9ImNvbnRhaW5lciIhPT11LnBhcmFtcy5tb3VzZXdoZWVsLmV2ZW50c1RhcmdldD9kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHUucGFyYW1zLm1vdXNld2hlZWwuZXZlbnRzVGFyZ2V0KTp0KVtlXSgibW91c2VlbnRlciIsciksdFtlXSgibW91c2VsZWF2ZSIscyksdFtlXSgid2hlZWwiLGEpfWZ1bmN0aW9uIGwoKXtpZih1LnBhcmFtcy5jc3NNb2RlKXUud3JhcHBlckVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoIndoZWVsIixhKTtlbHNle2lmKHUubW91c2V3aGVlbC5lbmFibGVkKXJldHVybiExO28oImFkZEV2ZW50TGlzdGVuZXIiKSx1Lm1vdXNld2hlZWwuZW5hYmxlZD0hMH1yZXR1cm4hMH1mdW5jdGlvbiBkKCl7aWYodS5wYXJhbXMuY3NzTW9kZSl1LndyYXBwZXJFbC5hZGRFdmVudExpc3RlbmVyKGV2ZW50LGEpO2Vsc2V7aWYoIXUubW91c2V3aGVlbC5lbmFibGVkKXJldHVybiExO28oInJlbW92ZUV2ZW50TGlzdGVuZXIiKSx1Lm1vdXNld2hlZWwuZW5hYmxlZD0hMX1yZXR1cm4hMH10KCJpbml0IiwoKT0+eyF1LnBhcmFtcy5tb3VzZXdoZWVsLmVuYWJsZWQmJnUucGFyYW1zLmNzc01vZGUmJmQoKSx1LnBhcmFtcy5tb3VzZXdoZWVsLmVuYWJsZWQmJmwoKX0pLHQoImRlc3Ryb3kiLCgpPT57dS5wYXJhbXMuY3NzTW9kZSYmbCgpLHUubW91c2V3aGVlbC5lbmFibGVkJiZkKCl9KSxPYmplY3QuYXNzaWduKHUubW91c2V3aGVlbCx7ZW5hYmxlOmwsZGlzYWJsZTpkfSl9LGZ1bmN0aW9uKHtzd2lwZXI6YSxleHRlbmRQYXJhbXM6ZSxvbjp0LGVtaXQ6b30pe2Z1bmN0aW9uIHIoZSl7bGV0IHQ7cmV0dXJuIShlJiYic3RyaW5nIj09dHlwZW9mIGUmJmEuaXNFbGVtZW50JiYodD1hLmVsLnF1ZXJ5U2VsZWN0b3IoZSl8fGEuaG9zdEVsLnF1ZXJ5U2VsZWN0b3IoZSkpKSYmKGUmJigic3RyaW5nIj09dHlwZW9mIGUmJih0PVsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGUpXSksYS5wYXJhbXMudW5pcXVlTmF2RWxlbWVudHMmJiJzdHJpbmciPT10eXBlb2YgZSYmdCYmMTx0Lmxlbmd0aCYmMT09PWEuZWwucXVlcnlTZWxlY3RvckFsbChlKS5sZW5ndGg/dD1hLmVsLnF1ZXJ5U2VsZWN0b3IoZSk6dCYmMT09PXQubGVuZ3RoJiYodD10WzBdKSksZSkmJiF0P2U6dH1mdW5jdGlvbiBuKGUsdCl7Y29uc3Qgbj1hLnBhcmFtcy5uYXZpZ2F0aW9uOyhlPUEoZSkpLmZvckVhY2goZT0+e2UmJihlLmNsYXNzTGlzdFt0PyJhZGQiOiJyZW1vdmUiXSguLi5uLmRpc2FibGVkQ2xhc3Muc3BsaXQoIiAiKSksIkJVVFRPTiI9PT1lLnRhZ05hbWUmJihlLmRpc2FibGVkPXQpLGEucGFyYW1zLndhdGNoT3ZlcmZsb3cpJiZhLmVuYWJsZWQmJmUuY2xhc3NMaXN0W2EuaXNMb2NrZWQ/ImFkZCI6InJlbW92ZSJdKG4ubG9ja0NsYXNzKX0pfWZ1bmN0aW9uIGkoKXt2YXJ7bmV4dEVsOmUscHJldkVsOnR9PWEubmF2aWdhdGlvbjthLnBhcmFtcy5sb29wPyhuKHQsITEpLG4oZSwhMSkpOihuKHQsYS5pc0JlZ2lubmluZyYmIWEucGFyYW1zLnJld2luZCksbihlLGEuaXNFbmQmJiFhLnBhcmFtcy5yZXdpbmQpKX1mdW5jdGlvbiBzKGUpe2UucHJldmVudERlZmF1bHQoKSxhLmlzQmVnaW5uaW5nJiYhYS5wYXJhbXMubG9vcCYmIWEucGFyYW1zLnJld2luZHx8KGEuc2xpZGVQcmV2KCksbygibmF2aWdhdGlvblByZXYiKSl9ZnVuY3Rpb24gbChlKXtlLnByZXZlbnREZWZhdWx0KCksYS5pc0VuZCYmIWEucGFyYW1zLmxvb3AmJiFhLnBhcmFtcy5yZXdpbmR8fChhLnNsaWRlTmV4dCgpLG8oIm5hdmlnYXRpb25OZXh0IikpfWZ1bmN0aW9uIGQoKXtjb25zdCBpPWEucGFyYW1zLm5hdmlnYXRpb247aWYoYS5wYXJhbXMubmF2aWdhdGlvbj1EKGEsYS5vcmlnaW5hbFBhcmFtcy5uYXZpZ2F0aW9uLGEucGFyYW1zLm5hdmlnYXRpb24se25leHRFbDoic3dpcGVyLWJ1dHRvbi1uZXh0IixwcmV2RWw6InN3aXBlci1idXR0b24tcHJldiJ9KSxpLm5leHRFbHx8aS5wcmV2RWwpe3ZhciBlPXIoaS5uZXh0RWwpLHQ9cihpLnByZXZFbCk7T2JqZWN0LmFzc2lnbihhLm5hdmlnYXRpb24se25leHRFbDplLHByZXZFbDp0fSksZT1BKGUpLHQ9QSh0KTtjb25zdCBuPShlLHQpPT57dmFyIG47ZSYmKGkuYWRkSWNvbnMmJmUubWF0Y2hlcygiLnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLWJ1dHRvbi1wcmV2IikmJiFlLnF1ZXJ5U2VsZWN0b3IoInN2ZyIpJiYoTShuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRlKSxlLmFwcGVuZENoaWxkKG4ucXVlcnlTZWxlY3Rvcigic3ZnIikpLG4ucmVtb3ZlKCkpLGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCJuZXh0Ij09PXQ/bDpzKSksIWEuZW5hYmxlZCYmZSYmZS5jbGFzc0xpc3QuYWRkKC4uLmkubG9ja0NsYXNzLnNwbGl0KCIgIikpfTtlLmZvckVhY2goZT0+bihlLCJuZXh0IikpLHQuZm9yRWFjaChlPT5uKGUsInByZXYiKSl9fWZ1bmN0aW9uIGMoKXt2YXJ7bmV4dEVsOmUscHJldkVsOnR9PWEubmF2aWdhdGlvbixlPUEoZSksdD1BKHQpO2NvbnN0IG49KGUsdCk9PntlLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIiwibmV4dCI9PT10P2w6cyksZS5jbGFzc0xpc3QucmVtb3ZlKC4uLmEucGFyYW1zLm5hdmlnYXRpb24uZGlzYWJsZWRDbGFzcy5zcGxpdCgiICIpKX07ZS5mb3JFYWNoKGU9Pm4oZSwibmV4dCIpKSx0LmZvckVhY2goZT0+bihlLCJwcmV2IikpfWUoe25hdmlnYXRpb246e25leHRFbDpudWxsLHByZXZFbDpudWxsLGFkZEljb25zOiEwLGhpZGVPbkNsaWNrOiExLGRpc2FibGVkQ2xhc3M6InN3aXBlci1idXR0b24tZGlzYWJsZWQiLGhpZGRlbkNsYXNzOiJzd2lwZXItYnV0dG9uLWhpZGRlbiIsbG9ja0NsYXNzOiJzd2lwZXItYnV0dG9uLWxvY2siLG5hdmlnYXRpb25EaXNhYmxlZENsYXNzOiJzd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCJ9fSksYS5uYXZpZ2F0aW9uPXtuZXh0RWw6bnVsbCxwcmV2RWw6bnVsbCxhcnJvd1N2Zzp0ZX0sdCgiaW5pdCIsKCk9PnsoITE9PT1hLnBhcmFtcy5uYXZpZ2F0aW9uLmVuYWJsZWQ/dTooZCgpLGkpKSgpfSksdCgidG9FZGdlIGZyb21FZGdlIGxvY2sgdW5sb2NrIiwoKT0+e2koKX0pLHQoImRlc3Ryb3kiLCgpPT57YygpfSksdCgiZW5hYmxlIGRpc2FibGUiLCgpPT57dmFye25leHRFbDplLHByZXZFbDp0fT1hLm5hdmlnYXRpb24sZT1BKGUpLHQ9QSh0KTthLmVuYWJsZWQ/aSgpOlsuLi5lLC4uLnRdLmZpbHRlcihlPT4hIWUpLmZvckVhY2goZT0+ZS5jbGFzc0xpc3QuYWRkKGEucGFyYW1zLm5hdmlnYXRpb24ubG9ja0NsYXNzKSl9KSx0KCJjbGljayIsKGUsdCk9PntsZXR7bmV4dEVsOm4scHJldkVsOml9PWEubmF2aWdhdGlvbjtuPUEobiksaT1BKGkpO3ZhciByPXQudGFyZ2V0O2xldCBzPWkuaW5jbHVkZXMocil8fG4uaW5jbHVkZXMocik7aWYoYS5pc0VsZW1lbnQmJiFzJiYodD10LnBhdGh8fHQuY29tcG9zZWRQYXRoJiZ0LmNvbXBvc2VkUGF0aCgpKSYmKHM9dC5maW5kKGU9Pm4uaW5jbHVkZXMoZSl8fGkuaW5jbHVkZXMoZSkpKSxhLnBhcmFtcy5uYXZpZ2F0aW9uLmhpZGVPbkNsaWNrJiYhcyYmKCEoYS5wYWdpbmF0aW9uJiZhLnBhcmFtcy5wYWdpbmF0aW9uJiZhLnBhcmFtcy5wYWdpbmF0aW9uLmNsaWNrYWJsZSl8fGEucGFnaW5hdGlvbi5lbCE9PXImJiFhLnBhZ2luYXRpb24uZWwuY29udGFpbnMocikpKXtsZXQgZTtuLmxlbmd0aD9lPW5bMF0uY2xhc3NMaXN0LmNvbnRhaW5zKGEucGFyYW1zLm5hdmlnYXRpb24uaGlkZGVuQ2xhc3MpOmkubGVuZ3RoJiYoZT1pWzBdLmNsYXNzTGlzdC5jb250YWlucyhhLnBhcmFtcy5uYXZpZ2F0aW9uLmhpZGRlbkNsYXNzKSksITA9PT1lP28oIm5hdmlnYXRpb25TaG93Iik6bygibmF2aWdhdGlvbkhpZGUiKSxbLi4ubiwuLi5pXS5maWx0ZXIoZT0+ISFlKS5mb3JFYWNoKGU9PmUuY2xhc3NMaXN0LnRvZ2dsZShhLnBhcmFtcy5uYXZpZ2F0aW9uLmhpZGRlbkNsYXNzKSl9fSk7Y29uc3QgdT0oKT0+e2EuZWwuY2xhc3NMaXN0LmFkZCguLi5hLnBhcmFtcy5uYXZpZ2F0aW9uLm5hdmlnYXRpb25EaXNhYmxlZENsYXNzLnNwbGl0KCIgIikpLGMoKX07T2JqZWN0LmFzc2lnbihhLm5hdmlnYXRpb24se2VuYWJsZTooKT0+e2EuZWwuY2xhc3NMaXN0LnJlbW92ZSguLi5hLnBhcmFtcy5uYXZpZ2F0aW9uLm5hdmlnYXRpb25EaXNhYmxlZENsYXNzLnNwbGl0KCIgIikpLGQoKSxpKCl9LGRpc2FibGU6dSx1cGRhdGU6aSxpbml0OmQsZGVzdHJveTpjfSl9LGZ1bmN0aW9uKHtzd2lwZXI6ZixleHRlbmRQYXJhbXM6ZSxvbjp0LGVtaXQ6bX0pe3ZhciBuPSJzd2lwZXItcGFnaW5hdGlvbiI7ZSh7cGFnaW5hdGlvbjp7ZWw6bnVsbCxidWxsZXRFbGVtZW50OiJzcGFuIixjbGlja2FibGU6ITEsaGlkZU9uQ2xpY2s6ITEscmVuZGVyQnVsbGV0Om51bGwscmVuZGVyUHJvZ3Jlc3NiYXI6bnVsbCxyZW5kZXJGcmFjdGlvbjpudWxsLHJlbmRlckN1c3RvbTpudWxsLHByb2dyZXNzYmFyT3Bwb3NpdGU6ITEsdHlwZToiYnVsbGV0cyIsZHluYW1pY0J1bGxldHM6ITEsZHluYW1pY01haW5CdWxsZXRzOjEsZm9ybWF0RnJhY3Rpb25DdXJyZW50OmU9PmUsZm9ybWF0RnJhY3Rpb25Ub3RhbDplPT5lLGJ1bGxldENsYXNzOm4rIi1idWxsZXQiLGJ1bGxldEFjdGl2ZUNsYXNzOm4rIi1idWxsZXQtYWN0aXZlIixtb2RpZmllckNsYXNzOm4rIi0iLGN1cnJlbnRDbGFzczpuKyItY3VycmVudCIsdG90YWxDbGFzczpuKyItdG90YWwiLGhpZGRlbkNsYXNzOm4rIi1oaWRkZW4iLHByb2dyZXNzYmFyRmlsbENsYXNzOm4rIi1wcm9ncmVzc2Jhci1maWxsIixwcm9ncmVzc2Jhck9wcG9zaXRlQ2xhc3M6bisiLXByb2dyZXNzYmFyLW9wcG9zaXRlIixjbGlja2FibGVDbGFzczpuKyItY2xpY2thYmxlIixsb2NrQ2xhc3M6bisiLWxvY2siLGhvcml6b250YWxDbGFzczpuKyItaG9yaXpvbnRhbCIsdmVydGljYWxDbGFzczpuKyItdmVydGljYWwiLHBhZ2luYXRpb25EaXNhYmxlZENsYXNzOm4rIi1kaXNhYmxlZCJ9fSksZi5wYWdpbmF0aW9uPXtlbDpudWxsLGJ1bGxldHM6W119O2xldCBnLHY9MDtmdW5jdGlvbiBzKCl7cmV0dXJuIWYucGFyYW1zLnBhZ2luYXRpb24uZWx8fCFmLnBhZ2luYXRpb24uZWx8fEFycmF5LmlzQXJyYXkoZi5wYWdpbmF0aW9uLmVsKSYmMD09PWYucGFnaW5hdGlvbi5lbC5sZW5ndGh9ZnVuY3Rpb24geShlLHQpe3ZhciBuPWYucGFyYW1zLnBhZ2luYXRpb25bImJ1bGxldEFjdGl2ZUNsYXNzIl07KGU9ZSYmZVtgJHsicHJldiI9PT10PyJwcmV2aW91cyI6Im5leHQifUVsZW1lbnRTaWJsaW5nYF0pJiYoZS5jbGFzc0xpc3QuYWRkKG4rIi0iK3QpLGU9ZVtgJHsicHJldiI9PT10PyJwcmV2aW91cyI6Im5leHQifUVsZW1lbnRTaWJsaW5nYF0pJiZlLmNsYXNzTGlzdC5hZGQobitgLSR7dH0tYCt0KX1mdW5jdGlvbiBpKGUpe3ZhciB0LG4saT1lLnRhcmdldC5jbG9zZXN0KEwoZi5wYXJhbXMucGFnaW5hdGlvbi5idWxsZXRDbGFzcykpO2kmJihlLnByZXZlbnREZWZhdWx0KCksZT1DKGkpKmYucGFyYW1zLnNsaWRlc1Blckdyb3VwLGYucGFyYW1zLmxvb3A/Zi5yZWFsSW5kZXghPT1lJiYoaT1mLnJlYWxJbmRleCx0PWUsbj1mLnNsaWRlcy5sZW5ndGgsIm5leHQiPT09KG49KHQlPW4pPT09KGklPW4pKzE/Im5leHQiOnQ9PT1pLTE/InByZXZpb3VzIjp2b2lkIDApP2Yuc2xpZGVOZXh0KCk6InByZXZpb3VzIj09PW4/Zi5zbGlkZVByZXYoKTpmLnNsaWRlVG9Mb29wKGUpKTpmLnNsaWRlVG8oZSkpfWZ1bmN0aW9uIHIoKXt2YXIgcj1mLnJ0bDtjb25zdCBhPWYucGFyYW1zLnBhZ2luYXRpb247aWYoIXMoKSl7dmFyIG89QShvPWYucGFnaW5hdGlvbi5lbCk7bGV0IHMsdDt2YXIgbD0oZi52aXJ0dWFsJiZmLnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQ/Zi52aXJ0dWFsOmYpLnNsaWRlcy5sZW5ndGg7Y29uc3QgdT1mLnBhcmFtcy5sb29wP01hdGguY2VpbChsL2YucGFyYW1zLnNsaWRlc1Blckdyb3VwKTpmLnNuYXBHcmlkLmxlbmd0aDtpZihmLnBhcmFtcy5sb29wPyh0PWYucHJldmlvdXNSZWFsSW5kZXh8fDAscz0xPGYucGFyYW1zLnNsaWRlc1Blckdyb3VwP01hdGguZmxvb3IoZi5yZWFsSW5kZXgvZi5wYXJhbXMuc2xpZGVzUGVyR3JvdXApOmYucmVhbEluZGV4KTp2b2lkIDAhPT1mLnNuYXBJbmRleD8ocz1mLnNuYXBJbmRleCx0PWYucHJldmlvdXNTbmFwSW5kZXgpOih0PWYucHJldmlvdXNJbmRleHx8MCxzPWYuYWN0aXZlSW5kZXh8fDApLCJidWxsZXRzIj09PWEudHlwZSYmZi5wYWdpbmF0aW9uLmJ1bGxldHMmJjA8Zi5wYWdpbmF0aW9uLmJ1bGxldHMubGVuZ3RoKXt2YXIgZD1mLnBhZ2luYXRpb24uYnVsbGV0cztsZXQgbixpLGU7aWYoYS5keW5hbWljQnVsbGV0cyYmKGc9VihkWzBdLGYuaXNIb3Jpem9udGFsKCk/IndpZHRoIjoiaGVpZ2h0IiwhMCksby5mb3JFYWNoKGU9PntlLnN0eWxlW2YuaXNIb3Jpem9udGFsKCk/IndpZHRoIjoiaGVpZ2h0Il09ZyooYS5keW5hbWljTWFpbkJ1bGxldHMrNCkrInB4In0pLDE8YS5keW5hbWljTWFpbkJ1bGxldHMmJnZvaWQgMCE9PXQmJigodis9cy0odHx8MCkpPmEuZHluYW1pY01haW5CdWxsZXRzLTE/dj1hLmR5bmFtaWNNYWluQnVsbGV0cy0xOnY8MCYmKHY9MCkpLG49TWF0aC5tYXgocy12LDApLGk9bisoTWF0aC5taW4oZC5sZW5ndGgsYS5keW5hbWljTWFpbkJ1bGxldHMpLTEpLGU9KGkrbikvMiksZC5mb3JFYWNoKGU9Pnt2YXIgdD1bLi4uWyIiLCItbmV4dCIsIi1uZXh0LW5leHQiLCItcHJldiIsIi1wcmV2LXByZXYiLCItbWFpbiJdLm1hcChlPT4iIithLmJ1bGxldEFjdGl2ZUNsYXNzK2UpXS5tYXAoZT0+InN0cmluZyI9PXR5cGVvZiBlJiZlLmluY2x1ZGVzKCIgIik/ZS5zcGxpdCgiICIpOmUpLmZsYXQoKTtlLmNsYXNzTGlzdC5yZW1vdmUoLi4udCl9KSwxPG8ubGVuZ3RoKWQuZm9yRWFjaChlPT57dmFyIHQ9QyhlKTt0PT09cz9lLmNsYXNzTGlzdC5hZGQoLi4uYS5idWxsZXRBY3RpdmVDbGFzcy5zcGxpdCgiICIpKTpmLmlzRWxlbWVudCYmZS5zZXRBdHRyaWJ1dGUoInBhcnQiLCJidWxsZXQiKSxhLmR5bmFtaWNCdWxsZXRzJiYodD49biYmdDw9aSYmZS5jbGFzc0xpc3QuYWRkKC4uLihhLmJ1bGxldEFjdGl2ZUNsYXNzKyItbWFpbiIpLnNwbGl0KCIgIikpLHQ9PT1uJiZ5KGUsInByZXYiKSx0PT09aSkmJnkoZSwibmV4dCIpfSk7ZWxzZXtsPWRbc107aWYobCYmbC5jbGFzc0xpc3QuYWRkKC4uLmEuYnVsbGV0QWN0aXZlQ2xhc3Muc3BsaXQoIiAiKSksZi5pc0VsZW1lbnQmJmQuZm9yRWFjaCgoZSx0KT0+e2Uuc2V0QXR0cmlidXRlKCJwYXJ0Iix0PT09cz8iYnVsbGV0LWFjdGl2ZSI6ImJ1bGxldCIpfSksYS5keW5hbWljQnVsbGV0cyl7dmFyIGw9ZFtuXSxjPWRbaV07Zm9yKGxldCBlPW47ZTw9aTtlKz0xKWRbZV0mJmRbZV0uY2xhc3NMaXN0LmFkZCguLi4oYS5idWxsZXRBY3RpdmVDbGFzcysiLW1haW4iKS5zcGxpdCgiICIpKTt5KGwsInByZXYiKSx5KGMsIm5leHQiKX19aWYoYS5keW5hbWljQnVsbGV0cyl7bD1NYXRoLm1pbihkLmxlbmd0aCxhLmR5bmFtaWNNYWluQnVsbGV0cys0KTtjb25zdCBwPShnKmwtZykvMi1lKmcsaD1yPyJyaWdodCI6ImxlZnQiO2QuZm9yRWFjaChlPT57ZS5zdHlsZVtmLmlzSG9yaXpvbnRhbCgpP2g6InRvcCJdPXArInB4In0pfX1vLmZvckVhY2goKGksZSk9PntpZigiZnJhY3Rpb24iPT09YS50eXBlJiYoaS5xdWVyeVNlbGVjdG9yQWxsKEwoYS5jdXJyZW50Q2xhc3MpKS5mb3JFYWNoKGU9PntlLnRleHRDb250ZW50PWEuZm9ybWF0RnJhY3Rpb25DdXJyZW50KHMrMSl9KSxpLnF1ZXJ5U2VsZWN0b3JBbGwoTChhLnRvdGFsQ2xhc3MpKS5mb3JFYWNoKGU9PntlLnRleHRDb250ZW50PWEuZm9ybWF0RnJhY3Rpb25Ub3RhbCh1KX0pKSwicHJvZ3Jlc3NiYXIiPT09YS50eXBlKXtsZXQgZTtlPWEucHJvZ3Jlc3NiYXJPcHBvc2l0ZT9mLmlzSG9yaXpvbnRhbCgpPyJ2ZXJ0aWNhbCI6Imhvcml6b250YWwiOmYuaXNIb3Jpem9udGFsKCk/Imhvcml6b250YWwiOiJ2ZXJ0aWNhbCI7dmFyIHI9KHMrMSkvdTtsZXQgdD0xLG49MTsiaG9yaXpvbnRhbCI9PT1lP3Q9cjpuPXIsaS5xdWVyeVNlbGVjdG9yQWxsKEwoYS5wcm9ncmVzc2JhckZpbGxDbGFzcykpLmZvckVhY2goZT0+e2Uuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgwLDAsMCkgc2NhbGVYKCR7dH0pIHNjYWxlWSgke259KWAsZS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249Zi5wYXJhbXMuc3BlZWQrIm1zIn0pfSJjdXN0b20iPT09YS50eXBlJiZhLnJlbmRlckN1c3RvbT8oTShpLGEucmVuZGVyQ3VzdG9tKGYscysxLHUpKSwwPT09ZSYmbSgicGFnaW5hdGlvblJlbmRlciIsaSkpOigwPT09ZSYmbSgicGFnaW5hdGlvblJlbmRlciIsaSksbSgicGFnaW5hdGlvblVwZGF0ZSIsaSkpLGYucGFyYW1zLndhdGNoT3ZlcmZsb3cmJmYuZW5hYmxlZCYmaS5jbGFzc0xpc3RbZi5pc0xvY2tlZD8iYWRkIjoicmVtb3ZlIl0oYS5sb2NrQ2xhc3MpfSl9fWZ1bmN0aW9uIGEoKXtjb25zdCBpPWYucGFyYW1zLnBhZ2luYXRpb247aWYoIXMoKSl7dmFyIGU9Zi52aXJ0dWFsJiZmLnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQ/Zi52aXJ0dWFsLnNsaWRlcy5sZW5ndGg6Zi5ncmlkJiYxPGYucGFyYW1zLmdyaWQucm93cz9mLnNsaWRlcy5sZW5ndGgvTWF0aC5jZWlsKGYucGFyYW1zLmdyaWQucm93cyk6Zi5zbGlkZXMubGVuZ3RoLHQ9QSh0PWYucGFnaW5hdGlvbi5lbCk7bGV0IG49IiI7aWYoImJ1bGxldHMiPT09aS50eXBlKXtsZXQgdD1mLnBhcmFtcy5sb29wP01hdGguY2VpbChlL2YucGFyYW1zLnNsaWRlc1Blckdyb3VwKTpmLnNuYXBHcmlkLmxlbmd0aDtmLnBhcmFtcy5mcmVlTW9kZSYmZi5wYXJhbXMuZnJlZU1vZGUuZW5hYmxlZCYmdD5lJiYodD1lKTtmb3IobGV0IGU9MDtlPHQ7ZSs9MSlpLnJlbmRlckJ1bGxldD9uKz1pLnJlbmRlckJ1bGxldC5jYWxsKGYsZSxpLmJ1bGxldENsYXNzKTpuKz1gPCR7aS5idWxsZXRFbGVtZW50fSAke2YuaXNFbGVtZW50PydwYXJ0PSJidWxsZXQiJzoiIn0gY2xhc3M9IiR7aS5idWxsZXRDbGFzc30iPjwvJHtpLmJ1bGxldEVsZW1lbnR9PmB9ImZyYWN0aW9uIj09PWkudHlwZSYmKG49aS5yZW5kZXJGcmFjdGlvbj9pLnJlbmRlckZyYWN0aW9uLmNhbGwoZixpLmN1cnJlbnRDbGFzcyxpLnRvdGFsQ2xhc3MpOmA8c3BhbiBjbGFzcz0iJHtpLmN1cnJlbnRDbGFzc30iPjwvc3Bhbj5gKyIgLyAiK2A8c3BhbiBjbGFzcz0iJHtpLnRvdGFsQ2xhc3N9Ij48L3NwYW4+YCksInByb2dyZXNzYmFyIj09PWkudHlwZSYmKG49aS5yZW5kZXJQcm9ncmVzc2Jhcj9pLnJlbmRlclByb2dyZXNzYmFyLmNhbGwoZixpLnByb2dyZXNzYmFyRmlsbENsYXNzKTpgPHNwYW4gY2xhc3M9IiR7aS5wcm9ncmVzc2JhckZpbGxDbGFzc30iPjwvc3Bhbj5gKSxmLnBhZ2luYXRpb24uYnVsbGV0cz1bXSx0LmZvckVhY2goZT0+eyJjdXN0b20iIT09aS50eXBlJiZNKGUsbnx8IiIpLCJidWxsZXRzIj09PWkudHlwZSYmZi5wYWdpbmF0aW9uLmJ1bGxldHMucHVzaCguLi5lLnF1ZXJ5U2VsZWN0b3JBbGwoTChpLmJ1bGxldENsYXNzKSkpfSksImN1c3RvbSIhPT1pLnR5cGUmJm0oInBhZ2luYXRpb25SZW5kZXIiLHRbMF0pfX1mdW5jdGlvbiBvKCl7Zi5wYXJhbXMucGFnaW5hdGlvbj1EKGYsZi5vcmlnaW5hbFBhcmFtcy5wYWdpbmF0aW9uLGYucGFyYW1zLnBhZ2luYXRpb24se2VsOiJzd2lwZXItcGFnaW5hdGlvbiJ9KTtjb25zdCB0PWYucGFyYW1zLnBhZ2luYXRpb247aWYodC5lbCl7bGV0IGU7KGU9KGU9KGU9InN0cmluZyI9PXR5cGVvZiB0LmVsJiZmLmlzRWxlbWVudD9mLmVsLnF1ZXJ5U2VsZWN0b3IodC5lbCk6ZSl8fCJzdHJpbmciIT10eXBlb2YgdC5lbD9lOlsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHQuZWwpXSl8fHQuZWwpJiYwIT09ZS5sZW5ndGgmJihmLnBhcmFtcy51bmlxdWVOYXZFbGVtZW50cyYmInN0cmluZyI9PXR5cGVvZiB0LmVsJiZBcnJheS5pc0FycmF5KGUpJiYxPGUubGVuZ3RoJiYxPChlPVsuLi5mLmVsLnF1ZXJ5U2VsZWN0b3JBbGwodC5lbCldKS5sZW5ndGgmJihlPWUuZmluZChlPT5xKGUsIi5zd2lwZXIiKVswXT09PWYuZWwpKSxBcnJheS5pc0FycmF5KGUpJiYxPT09ZS5sZW5ndGgmJihlPWVbMF0pLE9iamVjdC5hc3NpZ24oZi5wYWdpbmF0aW9uLHtlbDplfSksKGU9QShlKSkuZm9yRWFjaChlPT57ImJ1bGxldHMiPT09dC50eXBlJiZ0LmNsaWNrYWJsZSYmZS5jbGFzc0xpc3QuYWRkKC4uLih0LmNsaWNrYWJsZUNsYXNzfHwiIikuc3BsaXQoIiAiKSksZS5jbGFzc0xpc3QuYWRkKHQubW9kaWZpZXJDbGFzcyt0LnR5cGUpLGUuY2xhc3NMaXN0LmFkZChmLmlzSG9yaXpvbnRhbCgpP3QuaG9yaXpvbnRhbENsYXNzOnQudmVydGljYWxDbGFzcyksImJ1bGxldHMiPT09dC50eXBlJiZ0LmR5bmFtaWNCdWxsZXRzJiYoZS5jbGFzc0xpc3QuYWRkKCIiK3QubW9kaWZpZXJDbGFzcyt0LnR5cGUrIi1keW5hbWljIiksdj0wLHQuZHluYW1pY01haW5CdWxsZXRzPDEpJiYodC5keW5hbWljTWFpbkJ1bGxldHM9MSksInByb2dyZXNzYmFyIj09PXQudHlwZSYmdC5wcm9ncmVzc2Jhck9wcG9zaXRlJiZlLmNsYXNzTGlzdC5hZGQodC5wcm9ncmVzc2Jhck9wcG9zaXRlQ2xhc3MpLHQuY2xpY2thYmxlJiZlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixpKSxmLmVuYWJsZWR8fGUuY2xhc3NMaXN0LmFkZCh0LmxvY2tDbGFzcyl9KSl9fWZ1bmN0aW9uIGwoKXtjb25zdCB0PWYucGFyYW1zLnBhZ2luYXRpb247dmFyIGU7cygpfHwoKGU9Zi5wYWdpbmF0aW9uLmVsKSYmKGU9QShlKSkuZm9yRWFjaChlPT57ZS5jbGFzc0xpc3QucmVtb3ZlKHQuaGlkZGVuQ2xhc3MpLGUuY2xhc3NMaXN0LnJlbW92ZSh0Lm1vZGlmaWVyQ2xhc3MrdC50eXBlKSxlLmNsYXNzTGlzdC5yZW1vdmUoZi5pc0hvcml6b250YWwoKT90Lmhvcml6b250YWxDbGFzczp0LnZlcnRpY2FsQ2xhc3MpLHQuY2xpY2thYmxlJiYoZS5jbGFzc0xpc3QucmVtb3ZlKC4uLih0LmNsaWNrYWJsZUNsYXNzfHwiIikuc3BsaXQoIiAiKSksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsaSkpfSksZi5wYWdpbmF0aW9uLmJ1bGxldHMmJmYucGFnaW5hdGlvbi5idWxsZXRzLmZvckVhY2goZT0+ZS5jbGFzc0xpc3QucmVtb3ZlKC4uLnQuYnVsbGV0QWN0aXZlQ2xhc3Muc3BsaXQoIiAiKSkpKX10KCJjaGFuZ2VEaXJlY3Rpb24iLCgpPT57aWYoZi5wYWdpbmF0aW9uJiZmLnBhZ2luYXRpb24uZWwpe2NvbnN0IHQ9Zi5wYXJhbXMucGFnaW5hdGlvbjt2YXIgZT1mLnBhZ2luYXRpb25bImVsIl07KGU9QShlKSkuZm9yRWFjaChlPT57ZS5jbGFzc0xpc3QucmVtb3ZlKHQuaG9yaXpvbnRhbENsYXNzLHQudmVydGljYWxDbGFzcyksZS5jbGFzc0xpc3QuYWRkKGYuaXNIb3Jpem9udGFsKCk/dC5ob3Jpem9udGFsQ2xhc3M6dC52ZXJ0aWNhbENsYXNzKX0pfX0pLHQoImluaXQiLCgpPT57KCExPT09Zi5wYXJhbXMucGFnaW5hdGlvbi5lbmFibGVkP2Q6KG8oKSxhKCkscikpKCl9KSx0KCJhY3RpdmVJbmRleENoYW5nZSIsKCk9Pnt2b2lkIDA9PT1mLnNuYXBJbmRleCYmcigpfSksdCgic25hcEluZGV4Q2hhbmdlIiwoKT0+e3IoKX0pLHQoInNuYXBHcmlkTGVuZ3RoQ2hhbmdlIiwoKT0+e2EoKSxyKCl9KSx0KCJkZXN0cm95IiwoKT0+e2woKX0pLHQoImVuYWJsZSBkaXNhYmxlIiwoKT0+e3ZhciBlPWYucGFnaW5hdGlvblsiZWwiXTtlJiYoZT1BKGUpKS5mb3JFYWNoKGU9PmUuY2xhc3NMaXN0W2YuZW5hYmxlZD8icmVtb3ZlIjoiYWRkIl0oZi5wYXJhbXMucGFnaW5hdGlvbi5sb2NrQ2xhc3MpKX0pLHQoImxvY2sgdW5sb2NrIiwoKT0+e3IoKX0pLHQoImNsaWNrIiwoZSx0KT0+e3ZhciB0PXQudGFyZ2V0LG49QShmLnBhZ2luYXRpb24uZWwpO2YucGFyYW1zLnBhZ2luYXRpb24uZWwmJmYucGFyYW1zLnBhZ2luYXRpb24uaGlkZU9uQ2xpY2smJm4mJjA8bi5sZW5ndGgmJiF0LmNsYXNzTGlzdC5jb250YWlucyhmLnBhcmFtcy5wYWdpbmF0aW9uLmJ1bGxldENsYXNzKSYmKGYubmF2aWdhdGlvbiYmKGYubmF2aWdhdGlvbi5uZXh0RWwmJnQ9PT1mLm5hdmlnYXRpb24ubmV4dEVsfHxmLm5hdmlnYXRpb24ucHJldkVsJiZ0PT09Zi5uYXZpZ2F0aW9uLnByZXZFbCl8fCh0PW5bMF0uY2xhc3NMaXN0LmNvbnRhaW5zKGYucGFyYW1zLnBhZ2luYXRpb24uaGlkZGVuQ2xhc3MpLG0oITA9PT10PyJwYWdpbmF0aW9uU2hvdyI6InBhZ2luYXRpb25IaWRlIiksbi5mb3JFYWNoKGU9PmUuY2xhc3NMaXN0LnRvZ2dsZShmLnBhcmFtcy5wYWdpbmF0aW9uLmhpZGRlbkNsYXNzKSkpKX0pO2NvbnN0IGQ9KCk9PntmLmVsLmNsYXNzTGlzdC5hZGQoZi5wYXJhbXMucGFnaW5hdGlvbi5wYWdpbmF0aW9uRGlzYWJsZWRDbGFzcyk7dmFyIGU9Zi5wYWdpbmF0aW9uWyJlbCJdO2UmJihlPUEoZSkpLmZvckVhY2goZT0+ZS5jbGFzc0xpc3QuYWRkKGYucGFyYW1zLnBhZ2luYXRpb24ucGFnaW5hdGlvbkRpc2FibGVkQ2xhc3MpKSxsKCl9O09iamVjdC5hc3NpZ24oZi5wYWdpbmF0aW9uLHtlbmFibGU6KCk9PntmLmVsLmNsYXNzTGlzdC5yZW1vdmUoZi5wYXJhbXMucGFnaW5hdGlvbi5wYWdpbmF0aW9uRGlzYWJsZWRDbGFzcyk7dmFyIGU9Zi5wYWdpbmF0aW9uWyJlbCJdO2UmJihlPUEoZSkpLmZvckVhY2goZT0+ZS5jbGFzc0xpc3QucmVtb3ZlKGYucGFyYW1zLnBhZ2luYXRpb24ucGFnaW5hdGlvbkRpc2FibGVkQ2xhc3MpKSxvKCksYSgpLHIoKX0sZGlzYWJsZTpkLHJlbmRlcjphLHVwZGF0ZTpyLGluaXQ6byxkZXN0cm95Omx9KX0sZnVuY3Rpb24oe3N3aXBlcjpvLGV4dGVuZFBhcmFtczplLG9uOnQsZW1pdDpzfSl7Y29uc3QgYT1PKCk7bGV0IGw9ITEsZD1udWxsLGM9bnVsbCx1LHAsaCxpO2Z1bmN0aW9uIG4oKXtpZihvLnBhcmFtcy5zY3JvbGxiYXIuZWwmJm8uc2Nyb2xsYmFyLmVsKXt2YXJ7c2Nyb2xsYmFyOm4scnRsVHJhbnNsYXRlOml9PW87Y29uc3R7ZHJhZ0VsOnMsZWw6YX09bjt2YXIgbj1vLnBhcmFtcy5zY3JvbGxiYXIscj1vLnBhcmFtcy5sb29wP28ucHJvZ3Jlc3NMb29wOm8ucHJvZ3Jlc3M7bGV0IGU9cCx0PShoLXApKnI7aT8wPCh0PS10KT8oZT1wLXQsdD0wKTotdCtwPmgmJihlPWgrdCk6dDwwPyhlPXArdCx0PTApOnQrcD5oJiYoZT1oLXQpLG8uaXNIb3Jpem9udGFsKCk/KHMuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgke3R9cHgsIDAsIDApYCxzLnN0eWxlLndpZHRoPWUrInB4Iik6KHMuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgwcHgsICR7dH1weCwgMClgLHMuc3R5bGUuaGVpZ2h0PWUrInB4Iiksbi5oaWRlJiYoY2xlYXJUaW1lb3V0KGQpLGEuc3R5bGUub3BhY2l0eT0xLGQ9c2V0VGltZW91dCgoKT0+e2Euc3R5bGUub3BhY2l0eT0wLGEuc3R5bGUudHJhbnNpdGlvbkR1cmF0aW9uPSI0MDBtcyJ9LDFlMykpfX1mdW5jdGlvbiByKCl7dmFyIGUsdCxuO28ucGFyYW1zLnNjcm9sbGJhci5lbCYmby5zY3JvbGxiYXIuZWwmJihlPW9bInNjcm9sbGJhciJdLHtkcmFnRWw6dCxlbDpufT1lLHQuc3R5bGUud2lkdGg9IiIsdC5zdHlsZS5oZWlnaHQ9IiIsaD1vLmlzSG9yaXpvbnRhbCgpP24ub2Zmc2V0V2lkdGg6bi5vZmZzZXRIZWlnaHQsaT1vLnNpemUvKG8udmlydHVhbFNpemUrby5wYXJhbXMuc2xpZGVzT2Zmc2V0QmVmb3JlLShvLnBhcmFtcy5jZW50ZXJlZFNsaWRlcz9vLnNuYXBHcmlkWzBdOjApKSxwPSJhdXRvIj09PW8ucGFyYW1zLnNjcm9sbGJhci5kcmFnU2l6ZT9oKmk6cGFyc2VJbnQoby5wYXJhbXMuc2Nyb2xsYmFyLmRyYWdTaXplLDEwKSxvLmlzSG9yaXpvbnRhbCgpP3Quc3R5bGUud2lkdGg9cCsicHgiOnQuc3R5bGUuaGVpZ2h0PXArInB4IiwxPD1pP24uc3R5bGUuZGlzcGxheT0ibm9uZSI6bi5zdHlsZS5kaXNwbGF5PSIiLG8ucGFyYW1zLnNjcm9sbGJhci5oaWRlJiYobi5zdHlsZS5vcGFjaXR5PTApLG8ucGFyYW1zLndhdGNoT3ZlcmZsb3cpJiZvLmVuYWJsZWQmJmUuZWwuY2xhc3NMaXN0W28uaXNMb2NrZWQ/ImFkZCI6InJlbW92ZSJdKG8ucGFyYW1zLnNjcm9sbGJhci5sb2NrQ2xhc3MpfWZ1bmN0aW9uIGYoZSl7cmV0dXJuIG8uaXNIb3Jpem9udGFsKCk/ZS5jbGllbnRYOmUuY2xpZW50WX1mdW5jdGlvbiBtKGUpe3ZhcntzY3JvbGxiYXI6dCxydGxUcmFuc2xhdGU6bn09byx0PXRbImVsIl07bGV0IGk7aT0oZihlKS1qKHQpW28uaXNIb3Jpem9udGFsKCk/ImxlZnQiOiJ0b3AiXS0obnVsbCE9PXU/dTpwLzIpKS8oaC1wKSxpPU1hdGgubWF4KE1hdGgubWluKGksMSksMCksbiYmKGk9MS1pKTtlPW8ubWluVHJhbnNsYXRlKCkrKG8ubWF4VHJhbnNsYXRlKCktby5taW5UcmFuc2xhdGUoKSkqaTtvLnVwZGF0ZVByb2dyZXNzKGUpLG8uc2V0VHJhbnNsYXRlKGUpLG8udXBkYXRlQWN0aXZlSW5kZXgoKSxvLnVwZGF0ZVNsaWRlc0NsYXNzZXMoKX1mdW5jdGlvbiBnKGUpe3ZhciB0PW8ucGFyYW1zLnNjcm9sbGJhcix7c2Nyb2xsYmFyOm4sd3JhcHBlckVsOml9PW8se2VsOm4sZHJhZ0VsOnJ9PW47bD0hMCx1PWUudGFyZ2V0PT09cj9mKGUpLWUudGFyZ2V0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpW28uaXNIb3Jpem9udGFsKCk/ImxlZnQiOiJ0b3AiXTpudWxsLGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLGkuc3R5bGUudHJhbnNpdGlvbkR1cmF0aW9uPSIxMDBtcyIsci5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249IjEwMG1zIixtKGUpLGNsZWFyVGltZW91dChjKSxuLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj0iMG1zIix0LmhpZGUmJihuLnN0eWxlLm9wYWNpdHk9MSksby5wYXJhbXMuY3NzTW9kZSYmKG8ud3JhcHBlckVsLnN0eWxlWyJzY3JvbGwtc25hcC10eXBlIl09Im5vbmUiKSxzKCJzY3JvbGxiYXJEcmFnU3RhcnQiLGUpfWZ1bmN0aW9uIHYoZSl7dmFye3Njcm9sbGJhcjp0LHdyYXBwZXJFbDpufT1vLHtlbDp0LGRyYWdFbDppfT10O2wmJihlLnByZXZlbnREZWZhdWx0JiZlLmNhbmNlbGFibGU/ZS5wcmV2ZW50RGVmYXVsdCgpOmUucmV0dXJuVmFsdWU9ITEsbShlKSxuLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj0iMG1zIix0LnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj0iMG1zIixpLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj0iMG1zIixzKCJzY3JvbGxiYXJEcmFnTW92ZSIsZSkpfWZ1bmN0aW9uIHkoZSl7dmFyIHQ9by5wYXJhbXMuc2Nyb2xsYmFyLHtzY3JvbGxiYXI6bix3cmFwcGVyRWw6aX09bztjb25zdCByPW5bImVsIl07bCYmKGw9ITEsby5wYXJhbXMuY3NzTW9kZSYmKG8ud3JhcHBlckVsLnN0eWxlWyJzY3JvbGwtc25hcC10eXBlIl09IiIsaS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249IiIpLHQuaGlkZSYmKGNsZWFyVGltZW91dChjKSxjPVQoKCk9PntyLnN0eWxlLm9wYWNpdHk9MCxyLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj0iNDAwbXMifSwxZTMpKSxzKCJzY3JvbGxiYXJEcmFnRW5kIixlKSx0LnNuYXBPblJlbGVhc2UpJiZvLnNsaWRlVG9DbG9zZXN0KCl9ZnVuY3Rpb24gYihlKXt2YXIgdCx7c2Nyb2xsYmFyOm4scGFyYW1zOml9PW8sbj1uLmVsO24mJih0PSEhaS5wYXNzaXZlTGlzdGVuZXJzJiZ7cGFzc2l2ZTohMSxjYXB0dXJlOiExfSxpPSEhaS5wYXNzaXZlTGlzdGVuZXJzJiZ7cGFzc2l2ZTohMCxjYXB0dXJlOiExfSxuPW4pJiYobltuPSJvbiI9PT1lPyJhZGRFdmVudExpc3RlbmVyIjoicmVtb3ZlRXZlbnRMaXN0ZW5lciJdKCJwb2ludGVyZG93biIsZyx0KSxhW25dKCJwb2ludGVybW92ZSIsdix0KSxhW25dKCJwb2ludGVydXAiLHksaSkpfWZ1bmN0aW9uIHcoKXt2YXJ7c2Nyb2xsYmFyOm4sZWw6aX09byxyPShvLnBhcmFtcy5zY3JvbGxiYXI9RChvLG8ub3JpZ2luYWxQYXJhbXMuc2Nyb2xsYmFyLG8ucGFyYW1zLnNjcm9sbGJhcix7ZWw6InN3aXBlci1zY3JvbGxiYXIifSksby5wYXJhbXMuc2Nyb2xsYmFyKTtpZihyLmVsKXtsZXQgZTtpZigoZT0ic3RyaW5nIj09dHlwZW9mIHIuZWwmJm8uaXNFbGVtZW50P28uZWwucXVlcnlTZWxlY3RvcihyLmVsKTplKXx8InN0cmluZyIhPXR5cGVvZiByLmVsKWU9ZXx8ci5lbDtlbHNlIGlmKCEoZT1hLnF1ZXJ5U2VsZWN0b3JBbGwoci5lbCkpLmxlbmd0aClyZXR1cm47KGU9MDwoZT1vLnBhcmFtcy51bmlxdWVOYXZFbGVtZW50cyYmInN0cmluZyI9PXR5cGVvZiByLmVsJiYxPGUubGVuZ3RoJiYxPT09aS5xdWVyeVNlbGVjdG9yQWxsKHIuZWwpLmxlbmd0aD9pLnF1ZXJ5U2VsZWN0b3Ioci5lbCk6ZSkubGVuZ3RoP2VbMF06ZSkuY2xhc3NMaXN0LmFkZChvLmlzSG9yaXpvbnRhbCgpP3IuaG9yaXpvbnRhbENsYXNzOnIudmVydGljYWxDbGFzcyk7bGV0IHQ7IWV8fCh0PWUucXVlcnlTZWxlY3RvcihMKG8ucGFyYW1zLnNjcm9sbGJhci5kcmFnQ2xhc3MpKSl8fCh0PVMoImRpdiIsby5wYXJhbXMuc2Nyb2xsYmFyLmRyYWdDbGFzcyksZS5hcHBlbmQodCkpLE9iamVjdC5hc3NpZ24obix7ZWw6ZSxkcmFnRWw6dH0pLHIuZHJhZ2dhYmxlJiZvLnBhcmFtcy5zY3JvbGxiYXIuZWwmJm8uc2Nyb2xsYmFyLmVsJiZiKCJvbiIpLGUmJmUuY2xhc3NMaXN0W28uZW5hYmxlZD8icmVtb3ZlIjoiYWRkIl0oLi4uXyhvLnBhcmFtcy5zY3JvbGxiYXIubG9ja0NsYXNzKSl9fWZ1bmN0aW9uIHgoKXt2YXIgZT1vLnBhcmFtcy5zY3JvbGxiYXIsdD1vLnNjcm9sbGJhci5lbDt0JiZ0LmNsYXNzTGlzdC5yZW1vdmUoLi4uXyhvLmlzSG9yaXpvbnRhbCgpP2UuaG9yaXpvbnRhbENsYXNzOmUudmVydGljYWxDbGFzcykpLG8ucGFyYW1zLnNjcm9sbGJhci5lbCYmby5zY3JvbGxiYXIuZWwmJmIoIm9mZiIpfWUoe3Njcm9sbGJhcjp7ZWw6bnVsbCxkcmFnU2l6ZToiYXV0byIsaGlkZTohMSxkcmFnZ2FibGU6ITEsc25hcE9uUmVsZWFzZTohMCxsb2NrQ2xhc3M6InN3aXBlci1zY3JvbGxiYXItbG9jayIsZHJhZ0NsYXNzOiJzd2lwZXItc2Nyb2xsYmFyLWRyYWciLHNjcm9sbGJhckRpc2FibGVkQ2xhc3M6InN3aXBlci1zY3JvbGxiYXItZGlzYWJsZWQiLGhvcml6b250YWxDbGFzczoic3dpcGVyLXNjcm9sbGJhci1ob3Jpem9udGFsIix2ZXJ0aWNhbENsYXNzOiJzd2lwZXItc2Nyb2xsYmFyLXZlcnRpY2FsIn19KSxvLnNjcm9sbGJhcj17ZWw6bnVsbCxkcmFnRWw6bnVsbH0sdCgiY2hhbmdlRGlyZWN0aW9uIiwoKT0+e2lmKG8uc2Nyb2xsYmFyJiZvLnNjcm9sbGJhci5lbCl7Y29uc3QgdD1vLnBhcmFtcy5zY3JvbGxiYXI7dmFyIGU9by5zY3JvbGxiYXJbImVsIl07KGU9QShlKSkuZm9yRWFjaChlPT57ZS5jbGFzc0xpc3QucmVtb3ZlKHQuaG9yaXpvbnRhbENsYXNzLHQudmVydGljYWxDbGFzcyksZS5jbGFzc0xpc3QuYWRkKG8uaXNIb3Jpem9udGFsKCk/dC5ob3Jpem9udGFsQ2xhc3M6dC52ZXJ0aWNhbENsYXNzKX0pfX0pLHQoImluaXQiLCgpPT57KCExPT09by5wYXJhbXMuc2Nyb2xsYmFyLmVuYWJsZWQ/RToodygpLHIoKSxuKSkoKX0pLHQoInVwZGF0ZSByZXNpemUgb2JzZXJ2ZXJVcGRhdGUgbG9jayB1bmxvY2sgY2hhbmdlRGlyZWN0aW9uIiwoKT0+e3IoKX0pLHQoInNldFRyYW5zbGF0ZSIsKCk9PntuKCl9KSx0KCJzZXRUcmFuc2l0aW9uIiwoZSx0KT0+e3Q9dCxvLnBhcmFtcy5zY3JvbGxiYXIuZWwmJm8uc2Nyb2xsYmFyLmVsJiYoby5zY3JvbGxiYXIuZHJhZ0VsLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj10KyJtcyIpfSksdCgiZW5hYmxlIGRpc2FibGUiLCgpPT57dmFyIGU9by5zY3JvbGxiYXJbImVsIl07ZSYmZS5jbGFzc0xpc3Rbby5lbmFibGVkPyJyZW1vdmUiOiJhZGQiXSguLi5fKG8ucGFyYW1zLnNjcm9sbGJhci5sb2NrQ2xhc3MpKX0pLHQoImRlc3Ryb3kiLCgpPT57eCgpfSk7Y29uc3QgRT0oKT0+e28uZWwuY2xhc3NMaXN0LmFkZCguLi5fKG8ucGFyYW1zLnNjcm9sbGJhci5zY3JvbGxiYXJEaXNhYmxlZENsYXNzKSksby5zY3JvbGxiYXIuZWwmJm8uc2Nyb2xsYmFyLmVsLmNsYXNzTGlzdC5hZGQoLi4uXyhvLnBhcmFtcy5zY3JvbGxiYXIuc2Nyb2xsYmFyRGlzYWJsZWRDbGFzcykpLHgoKX07T2JqZWN0LmFzc2lnbihvLnNjcm9sbGJhcix7ZW5hYmxlOigpPT57by5lbC5jbGFzc0xpc3QucmVtb3ZlKC4uLl8oby5wYXJhbXMuc2Nyb2xsYmFyLnNjcm9sbGJhckRpc2FibGVkQ2xhc3MpKSxvLnNjcm9sbGJhci5lbCYmby5zY3JvbGxiYXIuZWwuY2xhc3NMaXN0LnJlbW92ZSguLi5fKG8ucGFyYW1zLnNjcm9sbGJhci5zY3JvbGxiYXJEaXNhYmxlZENsYXNzKSksdygpLHIoKSxuKCl9LGRpc2FibGU6RSx1cGRhdGVTaXplOnIsc2V0VHJhbnNsYXRlOm4saW5pdDp3LGRlc3Ryb3k6eH0pfSxmdW5jdGlvbih7c3dpcGVyOmMsZXh0ZW5kUGFyYW1zOmUsb246dH0pe2Uoe3BhcmFsbGF4OntlbmFibGVkOiExfX0pO2NvbnN0IHM9IltkYXRhLXN3aXBlci1wYXJhbGxheF0sIFtkYXRhLXN3aXBlci1wYXJhbGxheC14XSwgW2RhdGEtc3dpcGVyLXBhcmFsbGF4LXldLCBbZGF0YS1zd2lwZXItcGFyYWxsYXgtb3BhY2l0eV0sIFtkYXRhLXN3aXBlci1wYXJhbGxheC1zY2FsZV0iLGE9KGUsdCk9Pnt2YXIgbj1jWyJydGwiXSxuPW4/LTE6MSxpPWUuZ2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1wYXJhbGxheCIpfHwiMCI7bGV0IHI9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXBhcmFsbGF4LXgiKSxzPWUuZ2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1wYXJhbGxheC15Iik7dmFyIGE9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXBhcmFsbGF4LXNjYWxlIiksbz1lLmdldEF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItcGFyYWxsYXgtb3BhY2l0eSIpLGw9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtc3dpcGVyLXBhcmFsbGF4LXJvdGF0ZSIpO3J8fHM/KHI9cnx8IjAiLHM9c3x8IjAiKTpjLmlzSG9yaXpvbnRhbCgpPyhyPWkscz0iMCIpOihzPWkscj0iMCIpLHI9MDw9ci5pbmRleE9mKCIlIik/cGFyc2VJbnQociwxMCkqdCpuKyIlIjpyKnQqbisicHgiLHM9MDw9cy5pbmRleE9mKCIlIik/cGFyc2VJbnQocywxMCkqdCsiJSI6cyp0KyJweCIsbnVsbCE9byYmKGk9by0oby0xKSooMS1NYXRoLmFicyh0KSksZS5zdHlsZS5vcGFjaXR5PWkpO2xldCBkPWB0cmFuc2xhdGUzZCgke3J9LCAke3N9LCAwcHgpYDtudWxsIT1hJiYobj1hLShhLTEpKigxLU1hdGguYWJzKHQpKSxkKz1gIHNjYWxlKCR7bn0pYCksbCYmbnVsbCE9bCYmKGQrPWAgcm90YXRlKCR7bCp0Ki0xfWRlZylgKSxlLnN0eWxlLnRyYW5zZm9ybT1kfSxuPSgpPT57Y29uc3R7ZWw6ZSxzbGlkZXM6dCxwcm9ncmVzczppLHNuYXBHcmlkOnJ9PWM7dmFyIG49WShlLHMpO2MuaXNFbGVtZW50JiZuLnB1c2goLi4uWShjLmhvc3RFbCxzKSksbi5mb3JFYWNoKGU9PnthKGUsaSl9KSx0LmZvckVhY2goKGUsdCk9PntsZXQgbj1lLnByb2dyZXNzOzE8Yy5wYXJhbXMuc2xpZGVzUGVyR3JvdXAmJiJhdXRvIiE9PWMucGFyYW1zLnNsaWRlc1BlclZpZXcmJihuKz1NYXRoLmNlaWwodC8yKS1pKihyLmxlbmd0aC0xKSksbj1NYXRoLm1pbihNYXRoLm1heChuLC0xKSwxKSxlLnF1ZXJ5U2VsZWN0b3JBbGwocysiLCBbZGF0YS1zd2lwZXItcGFyYWxsYXgtcm90YXRlXSIpLmZvckVhY2goZT0+e2EoZSxuKX0pfSl9O3QoImJlZm9yZUluaXQiLCgpPT57Yy5wYXJhbXMucGFyYWxsYXguZW5hYmxlZCYmKGMucGFyYW1zLndhdGNoU2xpZGVzUHJvZ3Jlc3M9ITAsYy5vcmlnaW5hbFBhcmFtcy53YXRjaFNsaWRlc1Byb2dyZXNzPSEwKX0pLHQoImluaXQiLCgpPT57Yy5wYXJhbXMucGFyYWxsYXguZW5hYmxlZCYmbigpfSksdCgic2V0VHJhbnNsYXRlIiwoKT0+e2MucGFyYW1zLnBhcmFsbGF4LmVuYWJsZWQmJm4oKX0pLHQoInNldFRyYW5zaXRpb24iLChlLHQpPT57dmFyIG4saTtjLnBhcmFtcy5wYXJhbGxheC5lbmFibGVkJiYoW249Yy5wYXJhbXMuc3BlZWRdPVt0XSx7ZWw6dCxob3N0RWw6aX09Yyx0PVsuLi50LnF1ZXJ5U2VsZWN0b3JBbGwocyldLGMuaXNFbGVtZW50JiZ0LnB1c2goLi4uaS5xdWVyeVNlbGVjdG9yQWxsKHMpKSx0LmZvckVhY2goZT0+e2xldCB0PXBhcnNlSW50KGUuZ2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1wYXJhbGxheC1kdXJhdGlvbiIpLDEwKXx8bjswPT09biYmKHQ9MCksZS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249dCsibXMifSkpfSl9LGZ1bmN0aW9uKHtzd2lwZXI6aCxleHRlbmRQYXJhbXM6ZSxvbjp0LGVtaXQ6aX0pe2NvbnN0IGY9JCgpO2Uoe3pvb206e2VuYWJsZWQ6ITEsbGltaXRUb09yaWdpbmFsU2l6ZTohMSxtYXhSYXRpbzozLG1pblJhdGlvOjEscGFuT25Nb3VzZU1vdmU6ITEsdG9nZ2xlOiEwLGNvbnRhaW5lckNsYXNzOiJzd2lwZXItem9vbS1jb250YWluZXIiLHpvb21lZFNsaWRlQ2xhc3M6InN3aXBlci1zbGlkZS16b29tZWQifX0pLGguem9vbT17ZW5hYmxlZDohMX07bGV0IG09MSxzPSExLGw9ITEsZD17eDowLHk6MH07Y29uc3QgYz0tMztsZXQgcixhO2NvbnN0IG89W10sZz17b3JpZ2luWDowLG9yaWdpblk6MCxzbGlkZUVsOnZvaWQgMCxzbGlkZVdpZHRoOnZvaWQgMCxzbGlkZUhlaWdodDp2b2lkIDAsaW1hZ2VFbDp2b2lkIDAsaW1hZ2VXcmFwRWw6dm9pZCAwLG1heFJhdGlvOjN9LHY9e2lzVG91Y2hlZDp2b2lkIDAsaXNNb3ZlZDp2b2lkIDAsY3VycmVudFg6dm9pZCAwLGN1cnJlbnRZOnZvaWQgMCxtaW5YOnZvaWQgMCxtaW5ZOnZvaWQgMCxtYXhYOnZvaWQgMCxtYXhZOnZvaWQgMCx3aWR0aDp2b2lkIDAsaGVpZ2h0OnZvaWQgMCxzdGFydFg6dm9pZCAwLHN0YXJ0WTp2b2lkIDAsdG91Y2hlc1N0YXJ0Ont9LHRvdWNoZXNDdXJyZW50Ont9fSx1PXt4OnZvaWQgMCx5OnZvaWQgMCxwcmV2UG9zaXRpb25YOnZvaWQgMCxwcmV2UG9zaXRpb25ZOnZvaWQgMCxwcmV2VGltZTp2b2lkIDB9O2xldCBwPTE7ZnVuY3Rpb24geSgpe3ZhciBlLHQsbixpO3JldHVybiBvLmxlbmd0aDwyPzE6KGU9b1swXS5wYWdlWCx0PW9bMF0ucGFnZVksbj1vWzFdLnBhZ2VYLGk9b1sxXS5wYWdlWSxNYXRoLnNxcnQoKG4tZSkqKjIrKGktdCkqKjIpKX1mdW5jdGlvbiBiKCl7dmFyIGU9aC5wYXJhbXMuem9vbSx0PWcuaW1hZ2VXcmFwRWwuZ2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci16b29tIil8fGUubWF4UmF0aW87cmV0dXJuIGUubGltaXRUb09yaWdpbmFsU2l6ZSYmZy5pbWFnZUVsJiZnLmltYWdlRWwubmF0dXJhbFdpZHRoPyhlPWcuaW1hZ2VFbC5uYXR1cmFsV2lkdGgvZy5pbWFnZUVsLm9mZnNldFdpZHRoLE1hdGgubWluKGUsdCkpOnR9ZnVuY3Rpb24gdyh0KXt2YXIgZT1oLmlzRWxlbWVudD8ic3dpcGVyLXNsaWRlIjoiLiIraC5wYXJhbXMuc2xpZGVDbGFzcztyZXR1cm4gdC50YXJnZXQubWF0Y2hlcyhlKXx8MDxoLnNsaWRlcy5maWx0ZXIoZT0+ZS5jb250YWlucyh0LnRhcmdldCkpLmxlbmd0aH1mdW5jdGlvbiB4KHQpe3ZhciBlPSIuIitoLnBhcmFtcy56b29tLmNvbnRhaW5lckNsYXNzO3JldHVybiB0LnRhcmdldC5tYXRjaGVzKGUpfHwwPFsuLi5oLmhvc3RFbC5xdWVyeVNlbGVjdG9yQWxsKGUpXS5maWx0ZXIoZT0+ZS5jb250YWlucyh0LnRhcmdldCkpLmxlbmd0aH1mdW5jdGlvbiBFKHQpe2lmKCJtb3VzZSI9PT10LnBvaW50ZXJUeXBlJiZvLnNwbGljZSgwLG8ubGVuZ3RoKSx3KHQpKXt2YXIgbj1oLnBhcmFtcy56b29tO2lmKHI9ITEsYT0hMSxvLnB1c2godCksIShvLmxlbmd0aDwyKSl7aWYocj0hMCxnLnNjYWxlU3RhcnQ9eSgpLCFnLnNsaWRlRWwpe2cuc2xpZGVFbD10LnRhcmdldC5jbG9zZXN0KGAuJHtoLnBhcmFtcy5zbGlkZUNsYXNzfSwgc3dpcGVyLXNsaWRlYCksZy5zbGlkZUVsfHwoZy5zbGlkZUVsPWguc2xpZGVzW2guYWN0aXZlSW5kZXhdKTtsZXQgZT1nLnNsaWRlRWwucXVlcnlTZWxlY3RvcigiLiIrbi5jb250YWluZXJDbGFzcyk7aWYoZT1lJiZlLnF1ZXJ5U2VsZWN0b3JBbGwoInBpY3R1cmUsIGltZywgc3ZnLCBjYW52YXMsIC5zd2lwZXItem9vbS10YXJnZXQiKVswXSwoZy5pbWFnZUVsPWUpP2cuaW1hZ2VXcmFwRWw9cShnLmltYWdlRWwsIi4iK24uY29udGFpbmVyQ2xhc3MpWzBdOmcuaW1hZ2VXcmFwRWw9dm9pZCAwLCFnLmltYWdlV3JhcEVsKXJldHVybiB2b2lkKGcuaW1hZ2VFbD12b2lkIDApO2cubWF4UmF0aW89YigpfWcuaW1hZ2VFbCYmKFtuLHRdPW8ubGVuZ3RoPDI/e3g6bnVsbCx5Om51bGx9Oih0PWcuaW1hZ2VFbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxbKG9bMF0ucGFnZVgrKG9bMV0ucGFnZVgtb1swXS5wYWdlWCkvMi10LngtZi5zY3JvbGxYKS9tLChvWzBdLnBhZ2VZKyhvWzFdLnBhZ2VZLW9bMF0ucGFnZVkpLzItdC55LWYuc2Nyb2xsWSkvbV0pLGcub3JpZ2luWD1uLGcub3JpZ2luWT10LGcuaW1hZ2VFbC5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249IjBtcyIpLHM9ITB9fX1mdW5jdGlvbiBfKHQpe3ZhciBlLG4saTt3KHQpJiYoZT1oLnBhcmFtcy56b29tLG49aC56b29tLDA8PShpPW8uZmluZEluZGV4KGU9PmUucG9pbnRlcklkPT09dC5wb2ludGVySWQpKSYmKG9baV09dCksby5sZW5ndGg8Mnx8KGE9ITAsZy5zY2FsZU1vdmU9eSgpLGcuaW1hZ2VFbCYmKG4uc2NhbGU9Zy5zY2FsZU1vdmUvZy5zY2FsZVN0YXJ0Km0sbi5zY2FsZT5nLm1heFJhdGlvJiYobi5zY2FsZT1nLm1heFJhdGlvLTErKG4uc2NhbGUtZy5tYXhSYXRpbysxKSoqLjUpLG4uc2NhbGU8ZS5taW5SYXRpbyYmKG4uc2NhbGU9ZS5taW5SYXRpbysxLShlLm1pblJhdGlvLW4uc2NhbGUrMSkqKi41KSxnLmltYWdlRWwuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgwLDAsMCkgc2NhbGUoJHtuLnNjYWxlfSlgKSkpfWZ1bmN0aW9uIFQodCl7dmFyIGUsbixpOyF3KHQpfHwibW91c2UiPT09dC5wb2ludGVyVHlwZSYmInBvaW50ZXJvdXQiPT09dC50eXBlfHwoZT1oLnBhcmFtcy56b29tLG49aC56b29tLDA8PShpPW8uZmluZEluZGV4KGU9PmUucG9pbnRlcklkPT09dC5wb2ludGVySWQpKSYmby5zcGxpY2UoaSwxKSxyJiZhJiYocj0hMSxhPSExLGcuaW1hZ2VFbCkmJihuLnNjYWxlPU1hdGgubWF4KE1hdGgubWluKG4uc2NhbGUsZy5tYXhSYXRpbyksZS5taW5SYXRpbyksZy5pbWFnZUVsLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj1oLnBhcmFtcy5zcGVlZCsibXMiLGcuaW1hZ2VFbC5zdHlsZS50cmFuc2Zvcm09YHRyYW5zbGF0ZTNkKDAsMCwwKSBzY2FsZSgke24uc2NhbGV9KWAsbT1uLnNjYWxlLHM9ITEsMTxuLnNjYWxlJiZnLnNsaWRlRWw/Zy5zbGlkZUVsLmNsYXNzTGlzdC5hZGQoIiIrZS56b29tZWRTbGlkZUNsYXNzKTpuLnNjYWxlPD0xJiZnLnNsaWRlRWwmJmcuc2xpZGVFbC5jbGFzc0xpc3QucmVtb3ZlKCIiK2Uuem9vbWVkU2xpZGVDbGFzcyksMT09PW4uc2NhbGUpJiYoZy5vcmlnaW5YPTAsZy5vcmlnaW5ZPTAsZy5zbGlkZUVsPXZvaWQgMCkpfU9iamVjdC5kZWZpbmVQcm9wZXJ0eShoLnpvb20sInNjYWxlIix7Z2V0KCl7cmV0dXJuIHB9LHNldChlKXt2YXIgdCxuO3AhPT1lJiYodD1nLmltYWdlRWwsbj1nLnNsaWRlRWwsaSgiem9vbUNoYW5nZSIsZSx0LG4pKSxwPWV9fSk7bGV0IFM7ZnVuY3Rpb24gQygpe2gudG91Y2hFdmVudHNEYXRhLnByZXZlbnRUb3VjaE1vdmVGcm9tUG9pbnRlck1vdmU9ITF9ZnVuY3Rpb24gQShlKXt2YXIgdD0ibW91c2UiPT09ZS5wb2ludGVyVHlwZSYmaC5wYXJhbXMuem9vbS5wYW5Pbk1vdXNlTW92ZTtpZih3KGUpJiZ4KGUpKXt2YXIgbj1oLnpvb207aWYoZy5pbWFnZUVsKWlmKHYuaXNUb3VjaGVkJiZnLnNsaWRlRWwpaWYodClNKGUpO2Vsc2V7di5pc01vdmVkfHwodi53aWR0aD1nLmltYWdlRWwub2Zmc2V0V2lkdGh8fGcuaW1hZ2VFbC5jbGllbnRXaWR0aCx2LmhlaWdodD1nLmltYWdlRWwub2Zmc2V0SGVpZ2h0fHxnLmltYWdlRWwuY2xpZW50SGVpZ2h0LHYuc3RhcnRYPU4oZy5pbWFnZVdyYXBFbCwieCIpfHwwLHYuc3RhcnRZPU4oZy5pbWFnZVdyYXBFbCwieSIpfHwwLGcuc2xpZGVXaWR0aD1nLnNsaWRlRWwub2Zmc2V0V2lkdGgsZy5zbGlkZUhlaWdodD1nLnNsaWRlRWwub2Zmc2V0SGVpZ2h0LGcuaW1hZ2VXcmFwRWwuc3R5bGUudHJhbnNpdGlvbkR1cmF0aW9uPSIwbXMiKTt2YXIgaT12LndpZHRoKm4uc2NhbGUscj12LmhlaWdodCpuLnNjYWxlLGk9KHYubWluWD1NYXRoLm1pbihnLnNsaWRlV2lkdGgvMi1pLzIsMCksdi5tYXhYPS12Lm1pblgsdi5taW5ZPU1hdGgubWluKGcuc2xpZGVIZWlnaHQvMi1yLzIsMCksdi5tYXhZPS12Lm1pblksdi50b3VjaGVzQ3VycmVudC54PSgwPG8ubGVuZ3RoP29bMF06ZSkucGFnZVgsdi50b3VjaGVzQ3VycmVudC55PSgwPG8ubGVuZ3RoP29bMF06ZSkucGFnZVksTWF0aC5tYXgoTWF0aC5hYnModi50b3VjaGVzQ3VycmVudC54LXYudG91Y2hlc1N0YXJ0LngpLE1hdGguYWJzKHYudG91Y2hlc0N1cnJlbnQueS12LnRvdWNoZXNTdGFydC55KSkpO2lmKDU8aSYmKGguYWxsb3dDbGljaz0hMSksIXYuaXNNb3ZlZCYmIXMpe2lmKGguaXNIb3Jpem9udGFsKCkmJihNYXRoLmZsb29yKHYubWluWCk9PT1NYXRoLmZsb29yKHYuc3RhcnRYKSYmdi50b3VjaGVzQ3VycmVudC54PHYudG91Y2hlc1N0YXJ0Lnh8fE1hdGguZmxvb3Iodi5tYXhYKT09PU1hdGguZmxvb3Iodi5zdGFydFgpJiZ2LnRvdWNoZXNDdXJyZW50Lng+di50b3VjaGVzU3RhcnQueCkpcmV0dXJuIHYuaXNUb3VjaGVkPSExLHZvaWQgQygpO2lmKCFoLmlzSG9yaXpvbnRhbCgpJiYoTWF0aC5mbG9vcih2Lm1pblkpPT09TWF0aC5mbG9vcih2LnN0YXJ0WSkmJnYudG91Y2hlc0N1cnJlbnQueTx2LnRvdWNoZXNTdGFydC55fHxNYXRoLmZsb29yKHYubWF4WSk9PT1NYXRoLmZsb29yKHYuc3RhcnRZKSYmdi50b3VjaGVzQ3VycmVudC55PnYudG91Y2hlc1N0YXJ0LnkpKXJldHVybiB2LmlzVG91Y2hlZD0hMSx2b2lkIEMoKX1lLmNhbmNlbGFibGUmJmUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLGNsZWFyVGltZW91dChTKSxoLnRvdWNoRXZlbnRzRGF0YS5wcmV2ZW50VG91Y2hNb3ZlRnJvbVBvaW50ZXJNb3ZlPSEwLFM9c2V0VGltZW91dCgoKT0+e2guZGVzdHJveWVkfHxDKCl9KSx2LmlzTW92ZWQ9ITA7dmFyIHI9KG4uc2NhbGUtbSkvKGcubWF4UmF0aW8taC5wYXJhbXMuem9vbS5taW5SYXRpbykse29yaWdpblg6aSxvcmlnaW5ZOm59PWc7di5jdXJyZW50WD12LnRvdWNoZXNDdXJyZW50Lngtdi50b3VjaGVzU3RhcnQueCt2LnN0YXJ0WCtyKih2LndpZHRoLTIqaSksdi5jdXJyZW50WT12LnRvdWNoZXNDdXJyZW50Lnktdi50b3VjaGVzU3RhcnQueSt2LnN0YXJ0WStyKih2LmhlaWdodC0yKm4pLHYuY3VycmVudFg8di5taW5YJiYodi5jdXJyZW50WD12Lm1pblgrMS0odi5taW5YLXYuY3VycmVudFgrMSkqKi44KSx2LmN1cnJlbnRYPnYubWF4WCYmKHYuY3VycmVudFg9di5tYXhYLTErKHYuY3VycmVudFgtdi5tYXhYKzEpKiouOCksdi5jdXJyZW50WTx2Lm1pblkmJih2LmN1cnJlbnRZPXYubWluWSsxLSh2Lm1pblktdi5jdXJyZW50WSsxKSoqLjgpLHYuY3VycmVudFk+di5tYXhZJiYodi5jdXJyZW50WT12Lm1heFktMSsodi5jdXJyZW50WS12Lm1heFkrMSkqKi44KSx1LnByZXZQb3NpdGlvblh8fCh1LnByZXZQb3NpdGlvblg9di50b3VjaGVzQ3VycmVudC54KSx1LnByZXZQb3NpdGlvbll8fCh1LnByZXZQb3NpdGlvblk9di50b3VjaGVzQ3VycmVudC55KSx1LnByZXZUaW1lfHwodS5wcmV2VGltZT1EYXRlLm5vdygpKSx1Lng9KHYudG91Y2hlc0N1cnJlbnQueC11LnByZXZQb3NpdGlvblgpLyhEYXRlLm5vdygpLXUucHJldlRpbWUpLzIsdS55PSh2LnRvdWNoZXNDdXJyZW50LnktdS5wcmV2UG9zaXRpb25ZKS8oRGF0ZS5ub3coKS11LnByZXZUaW1lKS8yLE1hdGguYWJzKHYudG91Y2hlc0N1cnJlbnQueC11LnByZXZQb3NpdGlvblgpPDImJih1Lng9MCksTWF0aC5hYnModi50b3VjaGVzQ3VycmVudC55LXUucHJldlBvc2l0aW9uWSk8MiYmKHUueT0wKSx1LnByZXZQb3NpdGlvblg9di50b3VjaGVzQ3VycmVudC54LHUucHJldlBvc2l0aW9uWT12LnRvdWNoZXNDdXJyZW50LnksdS5wcmV2VGltZT1EYXRlLm5vdygpLGcuaW1hZ2VXcmFwRWwuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgke3YuY3VycmVudFh9cHgsICR7di5jdXJyZW50WX1weCwwKWB9ZWxzZSB0JiZNKGUpfX1mdW5jdGlvbiBuKCl7dmFyIGU9aC56b29tO2cuc2xpZGVFbCYmaC5hY3RpdmVJbmRleCE9PWguc2xpZGVzLmluZGV4T2YoZy5zbGlkZUVsKSYmKGcuaW1hZ2VFbCYmKGcuaW1hZ2VFbC5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZTNkKDAsMCwwKSBzY2FsZSgxKSIpLGcuaW1hZ2VXcmFwRWwmJihnLmltYWdlV3JhcEVsLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlM2QoMCwwLDApIiksZy5zbGlkZUVsLmNsYXNzTGlzdC5yZW1vdmUoIiIraC5wYXJhbXMuem9vbS56b29tZWRTbGlkZUNsYXNzKSxlLnNjYWxlPTEsbT0xLGcuc2xpZGVFbD12b2lkIDAsZy5pbWFnZUVsPXZvaWQgMCxnLmltYWdlV3JhcEVsPXZvaWQgMCxnLm9yaWdpblg9MCxnLm9yaWdpblk9MCl9ZnVuY3Rpb24gTShlKXt2YXIgdCxuLGkscixzLGEsbzttPD0xfHwhZy5pbWFnZVdyYXBFbHx8dyhlKSYmeChlKSYmKHQ9Zi5nZXRDb21wdXRlZFN0eWxlKGcuaW1hZ2VXcmFwRWwpLnRyYW5zZm9ybSx0PW5ldyBmLkRPTU1hdHJpeCh0KSxsPyhhPShlLmNsaWVudFgtZC54KSpjLG49KGUuY2xpZW50WS1kLnkpKmMsbz12LndpZHRoKm0scz12LmhlaWdodCptLGk9Zy5zbGlkZVdpZHRoLHI9Zy5zbGlkZUhlaWdodCxvPS0oaT1NYXRoLm1pbihpLzItby8yLDApKSxzPS0ocj1NYXRoLm1pbihyLzItcy8yLDApKSxhPU1hdGgubWF4KE1hdGgubWluKHYuc3RhcnRYK2EsbyksaSksbz1NYXRoLm1heChNYXRoLm1pbih2LnN0YXJ0WStuLHMpLHIpLGcuaW1hZ2VXcmFwRWwuc3R5bGUudHJhbnNpdGlvbkR1cmF0aW9uPSIwbXMiLGcuaW1hZ2VXcmFwRWwuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgke2F9cHgsICR7b31weCwgMClgLGQueD1lLmNsaWVudFgsZC55PWUuY2xpZW50WSx2LnN0YXJ0WD1hLHYuc3RhcnRZPW8sdi5jdXJyZW50WD1hLHYuY3VycmVudFk9byk6KGw9ITAsZC54PWUuY2xpZW50WCxkLnk9ZS5jbGllbnRZLHYuc3RhcnRYPXQuZSx2LnN0YXJ0WT10LmYsdi53aWR0aD1nLmltYWdlRWwub2Zmc2V0V2lkdGh8fGcuaW1hZ2VFbC5jbGllbnRXaWR0aCx2LmhlaWdodD1nLmltYWdlRWwub2Zmc2V0SGVpZ2h0fHxnLmltYWdlRWwuY2xpZW50SGVpZ2h0LGcuc2xpZGVXaWR0aD1nLnNsaWRlRWwub2Zmc2V0V2lkdGgsZy5zbGlkZUhlaWdodD1nLnNsaWRlRWwub2Zmc2V0SGVpZ2h0KSl9ZnVuY3Rpb24gRChyKXt2YXIgcyxhLG8sbCxkPWguem9vbSxjPWgucGFyYW1zLnpvb207aWYoIWcuc2xpZGVFbCl7ciYmci50YXJnZXQmJihnLnNsaWRlRWw9ci50YXJnZXQuY2xvc2VzdChgLiR7aC5wYXJhbXMuc2xpZGVDbGFzc30sIHN3aXBlci1zbGlkZWApKSxnLnNsaWRlRWx8fChoLnBhcmFtcy52aXJ0dWFsJiZoLnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQmJmgudmlydHVhbD9nLnNsaWRlRWw9WShoLnNsaWRlc0VsLCIuIitoLnBhcmFtcy5zbGlkZUFjdGl2ZUNsYXNzKVswXTpnLnNsaWRlRWw9aC5zbGlkZXNbaC5hY3RpdmVJbmRleF0pO2xldCBlPWcuc2xpZGVFbC5xdWVyeVNlbGVjdG9yKCIuIitjLmNvbnRhaW5lckNsYXNzKTtlPWUmJmUucXVlcnlTZWxlY3RvckFsbCgicGljdHVyZSwgaW1nLCBzdmcsIGNhbnZhcywgLnN3aXBlci16b29tLXRhcmdldCIpWzBdLChnLmltYWdlRWw9ZSk/Zy5pbWFnZVdyYXBFbD1xKGcuaW1hZ2VFbCwiLiIrYy5jb250YWluZXJDbGFzcylbMF06Zy5pbWFnZVdyYXBFbD12b2lkIDB9aWYoZy5pbWFnZUVsJiZnLmltYWdlV3JhcEVsKXtoLnBhcmFtcy5jc3NNb2RlJiYoaC53cmFwcGVyRWwuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiIsaC53cmFwcGVyRWwuc3R5bGUudG91Y2hBY3Rpb249Im5vbmUiKSxnLnNsaWRlRWwuY2xhc3NMaXN0LmFkZCgiIitjLnpvb21lZFNsaWRlQ2xhc3MpO2xldCBlLHQ7bGV0IG4saTt0PXZvaWQgMD09PXYudG91Y2hlc1N0YXJ0LngmJnI/KGU9ci5wYWdlWCxyLnBhZ2VZKTooZT12LnRvdWNoZXNTdGFydC54LHYudG91Y2hlc1N0YXJ0LnkpO3ZhciBjPW0sdT0ibnVtYmVyIj09dHlwZW9mIHI/cjpudWxsLHA9KDE9PT1tJiZ1JiYoZT12b2lkIDAsdD12b2lkIDAsdi50b3VjaGVzU3RhcnQueD12b2lkIDAsdi50b3VjaGVzU3RhcnQueT12b2lkIDApLGIoKSk7ZC5zY2FsZT11fHxwLG09dXx8cCwhcnx8MT09PW0mJnU/KG49MCxpPTApOihwPWcuc2xpZGVFbC5vZmZzZXRXaWR0aCxyPWcuc2xpZGVFbC5vZmZzZXRIZWlnaHQscz1qKGcuc2xpZGVFbCkubGVmdCtmLnNjcm9sbFgsYT1qKGcuc2xpZGVFbCkudG9wK2Yuc2Nyb2xsWSxzPXMrcC8yLWUsYT1hK3IvMi10LG89Zy5pbWFnZUVsLm9mZnNldFdpZHRofHxnLmltYWdlRWwuY2xpZW50V2lkdGgsbD1nLmltYWdlRWwub2Zmc2V0SGVpZ2h0fHxnLmltYWdlRWwuY2xpZW50SGVpZ2h0LG89bypkLnNjYWxlLGw9bCpkLnNjYWxlLG89LShwPU1hdGgubWluKHAvMi1vLzIsMCkpLGw9LShyPU1hdGgubWluKHIvMi1sLzIsMCkpLGk9MDxjJiZ1JiYibnVtYmVyIj09dHlwZW9mIHYuY3VycmVudFgmJiJudW1iZXIiPT10eXBlb2Ygdi5jdXJyZW50WT8obj12LmN1cnJlbnRYKmQuc2NhbGUvYyx2LmN1cnJlbnRZKmQuc2NhbGUvYyk6KG49cypkLnNjYWxlLGEqZC5zY2FsZSksKG49bjxwP3A6bik+byYmKG49byksKGk9aTxyP3I6aSk+bCYmKGk9bCkpLHUmJjE9PT1kLnNjYWxlJiYoZy5vcmlnaW5YPTAsZy5vcmlnaW5ZPTApLHYuY3VycmVudFg9bix2LmN1cnJlbnRZPWksZy5pbWFnZVdyYXBFbC5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249IjMwMG1zIixnLmltYWdlV3JhcEVsLnN0eWxlLnRyYW5zZm9ybT1gdHJhbnNsYXRlM2QoJHtufXB4LCAke2l9cHgsMClgLGcuaW1hZ2VFbC5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249IjMwMG1zIixnLmltYWdlRWwuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgwLDAsMCkgc2NhbGUoJHtkLnNjYWxlfSlgfX1mdW5jdGlvbiBMKCl7dmFyIGU9aC56b29tLHQ9aC5wYXJhbXMuem9vbTtpZighZy5zbGlkZUVsKXtoLnBhcmFtcy52aXJ0dWFsJiZoLnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQmJmgudmlydHVhbD9nLnNsaWRlRWw9WShoLnNsaWRlc0VsLCIuIitoLnBhcmFtcy5zbGlkZUFjdGl2ZUNsYXNzKVswXTpnLnNsaWRlRWw9aC5zbGlkZXNbaC5hY3RpdmVJbmRleF07bGV0IGU9Zy5zbGlkZUVsLnF1ZXJ5U2VsZWN0b3IoIi4iK3QuY29udGFpbmVyQ2xhc3MpO2U9ZSYmZS5xdWVyeVNlbGVjdG9yQWxsKCJwaWN0dXJlLCBpbWcsIHN2ZywgY2FudmFzLCAuc3dpcGVyLXpvb20tdGFyZ2V0IilbMF0sKGcuaW1hZ2VFbD1lKT9nLmltYWdlV3JhcEVsPXEoZy5pbWFnZUVsLCIuIit0LmNvbnRhaW5lckNsYXNzKVswXTpnLmltYWdlV3JhcEVsPXZvaWQgMH1nLmltYWdlRWwmJmcuaW1hZ2VXcmFwRWwmJihoLnBhcmFtcy5jc3NNb2RlJiYoaC53cmFwcGVyRWwuc3R5bGUub3ZlcmZsb3c9IiIsaC53cmFwcGVyRWwuc3R5bGUudG91Y2hBY3Rpb249IiIpLGUuc2NhbGU9MSxtPTEsdi5jdXJyZW50WD12b2lkIDAsdi5jdXJyZW50WT12b2lkIDAsdi50b3VjaGVzU3RhcnQueD12b2lkIDAsdi50b3VjaGVzU3RhcnQueT12b2lkIDAsZy5pbWFnZVdyYXBFbC5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249IjMwMG1zIixnLmltYWdlV3JhcEVsLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlM2QoMCwwLDApIixnLmltYWdlRWwuc3R5bGUudHJhbnNpdGlvbkR1cmF0aW9uPSIzMDBtcyIsZy5pbWFnZUVsLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlM2QoMCwwLDApIHNjYWxlKDEpIixnLnNsaWRlRWwuY2xhc3NMaXN0LnJlbW92ZSgiIit0Lnpvb21lZFNsaWRlQ2xhc3MpLGcuc2xpZGVFbD12b2lkIDAsZy5vcmlnaW5YPTAsZy5vcmlnaW5ZPTAsaC5wYXJhbXMuem9vbS5wYW5Pbk1vdXNlTW92ZSkmJihkPXt4OjAseTowfSxsKSYmKGw9ITEsdi5zdGFydFg9MCx2LnN0YXJ0WT0wKX1mdW5jdGlvbiBrKGUpe3ZhciB0PWguem9vbTt0LnNjYWxlJiYxIT09dC5zY2FsZT9MKCk6RChlKX1mdW5jdGlvbiBPKCl7cmV0dXJue3Bhc3NpdmVMaXN0ZW5lcjohIWgucGFyYW1zLnBhc3NpdmVMaXN0ZW5lcnMmJntwYXNzaXZlOiEwLGNhcHR1cmU6ITF9LGFjdGl2ZUxpc3RlbmVyV2l0aENhcHR1cmU6IWgucGFyYW1zLnBhc3NpdmVMaXN0ZW5lcnN8fHtwYXNzaXZlOiExLGNhcHR1cmU6ITB9fX1mdW5jdGlvbiBQKCl7dmFyIGU9aC56b29tO2lmKCFlLmVuYWJsZWQpe2UuZW5hYmxlZD0hMDtjb25zdHtwYXNzaXZlTGlzdGVuZXI6dCxhY3RpdmVMaXN0ZW5lcldpdGhDYXB0dXJlOm59PU8oKTtoLndyYXBwZXJFbC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsRSx0KSxoLndyYXBwZXJFbC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsXyxuKSxbInBvaW50ZXJ1cCIsInBvaW50ZXJjYW5jZWwiLCJwb2ludGVyb3V0Il0uZm9yRWFjaChlPT57aC53cmFwcGVyRWwuYWRkRXZlbnRMaXN0ZW5lcihlLFQsdCl9KSxoLndyYXBwZXJFbC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsQSxuKX19ZnVuY3Rpb24gSSgpe3ZhciBlPWguem9vbTtpZihlLmVuYWJsZWQpe2UuZW5hYmxlZD0hMTtjb25zdHtwYXNzaXZlTGlzdGVuZXI6dCxhY3RpdmVMaXN0ZW5lcldpdGhDYXB0dXJlOm59PU8oKTtoLndyYXBwZXJFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsRSx0KSxoLndyYXBwZXJFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsXyxuKSxbInBvaW50ZXJ1cCIsInBvaW50ZXJjYW5jZWwiLCJwb2ludGVyb3V0Il0uZm9yRWFjaChlPT57aC53cmFwcGVyRWwucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLFQsdCl9KSxoLndyYXBwZXJFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsQSxuKX19dCgiaW5pdCIsKCk9PntoLnBhcmFtcy56b29tLmVuYWJsZWQmJlAoKX0pLHQoImRlc3Ryb3kiLCgpPT57SSgpfSksdCgidG91Y2hTdGFydCIsKGUsdCk9Pnt2YXIgbjtoLnpvb20uZW5hYmxlZCYmKHQ9dCxuPWguZGV2aWNlLGcuaW1hZ2VFbCkmJiF2LmlzVG91Y2hlZCYmKG4uYW5kcm9pZCYmdC5jYW5jZWxhYmxlJiZ0LnByZXZlbnREZWZhdWx0KCksdi5pc1RvdWNoZWQ9ITAsbj0wPG8ubGVuZ3RoP29bMF06dCx2LnRvdWNoZXNTdGFydC54PW4ucGFnZVgsdi50b3VjaGVzU3RhcnQueT1uLnBhZ2VZKX0pLHQoInRvdWNoRW5kIiwoZSx0KT0+e2lmKGguem9vbS5lbmFibGVkKXt2YXIgbj1oLnpvb207aWYoby5sZW5ndGg9MCxnLmltYWdlRWwpaWYodi5pc1RvdWNoZWQmJnYuaXNNb3ZlZCl7di5pc1RvdWNoZWQ9ITEsdi5pc01vdmVkPSExO2xldCBlPTMwMCx0PTMwMDt2YXIgaT11LngqZSxpPXYuY3VycmVudFgraSxyPXUueSp0LHI9di5jdXJyZW50WStyLHM9KDAhPT11LngmJihlPU1hdGguYWJzKChpLXYuY3VycmVudFgpL3UueCkpLDAhPT11LnkmJih0PU1hdGguYWJzKChyLXYuY3VycmVudFkpL3UueSkpLE1hdGgubWF4KGUsdCkpLGk9KHYuY3VycmVudFg9aSx2LmN1cnJlbnRZPXIsdi53aWR0aCpuLnNjYWxlKSxyPXYuaGVpZ2h0Km4uc2NhbGU7di5taW5YPU1hdGgubWluKGcuc2xpZGVXaWR0aC8yLWkvMiwwKSx2Lm1heFg9LXYubWluWCx2Lm1pblk9TWF0aC5taW4oZy5zbGlkZUhlaWdodC8yLXIvMiwwKSx2Lm1heFk9LXYubWluWSx2LmN1cnJlbnRYPU1hdGgubWF4KE1hdGgubWluKHYuY3VycmVudFgsdi5tYXhYKSx2Lm1pblgpLHYuY3VycmVudFk9TWF0aC5tYXgoTWF0aC5taW4odi5jdXJyZW50WSx2Lm1heFkpLHYubWluWSksZy5pbWFnZVdyYXBFbC5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249cysibXMiLGcuaW1hZ2VXcmFwRWwuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgke3YuY3VycmVudFh9cHgsICR7di5jdXJyZW50WX1weCwwKWB9ZWxzZSB2LmlzVG91Y2hlZD0hMSx2LmlzTW92ZWQ9ITF9fSksdCgiZG91YmxlVGFwIiwoZSx0KT0+eyFoLmFuaW1hdGluZyYmaC5wYXJhbXMuem9vbS5lbmFibGVkJiZoLnpvb20uZW5hYmxlZCYmaC5wYXJhbXMuem9vbS50b2dnbGUmJmsodCl9KSx0KCJ0cmFuc2l0aW9uRW5kIiwoKT0+e2guem9vbS5lbmFibGVkJiZoLnBhcmFtcy56b29tLmVuYWJsZWQmJm4oKX0pLHQoInNsaWRlQ2hhbmdlIiwoKT0+e2guem9vbS5lbmFibGVkJiZoLnBhcmFtcy56b29tLmVuYWJsZWQmJmgucGFyYW1zLmNzc01vZGUmJm4oKX0pLE9iamVjdC5hc3NpZ24oaC56b29tLHtlbmFibGU6UCxkaXNhYmxlOkksaW46RCxvdXQ6TCx0b2dnbGU6a30pfSxmdW5jdGlvbih7c3dpcGVyOm8sZXh0ZW5kUGFyYW1zOmUsb246dH0pe2Z1bmN0aW9uIGwoZSx0KXtjb25zdCBuPWZ1bmN0aW9uKCl7bGV0IG4saSxyO3JldHVybihlLHQpPT57Zm9yKGk9LTEsbj1lLmxlbmd0aDsxPG4taTspZVtyPW4raT4+MV08PXQ/aT1yOm49cjtyZXR1cm4gbn19KCk7dGhpcy54PWUsdGhpcy55PXQsdGhpcy5sYXN0SW5kZXg9ZS5sZW5ndGgtMTtsZXQgaSxyO3JldHVybiB0aGlzLmludGVycG9sYXRlPWZ1bmN0aW9uKGUpe3JldHVybiBlPyhyPW4odGhpcy54LGUpLGk9ci0xLChlLXRoaXMueFtpXSkqKHRoaXMueVtyXS10aGlzLnlbaV0pLyh0aGlzLnhbcl0tdGhpcy54W2ldKSt0aGlzLnlbaV0pOjB9LHRoaXN9ZnVuY3Rpb24gbigpe28uY29udHJvbGxlci5jb250cm9sJiZvLmNvbnRyb2xsZXIuc3BsaW5lJiYoby5jb250cm9sbGVyLnNwbGluZT12b2lkIDAsZGVsZXRlIG8uY29udHJvbGxlci5zcGxpbmUpfWUoe2NvbnRyb2xsZXI6e2NvbnRyb2w6dm9pZCAwLGludmVyc2U6ITEsYnk6InNsaWRlIn19KSxvLmNvbnRyb2xsZXI9e2NvbnRyb2w6dm9pZCAwfSx0KCJiZWZvcmVJbml0IiwoKT0+eyJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYoInN0cmluZyI9PXR5cGVvZiBvLnBhcmFtcy5jb250cm9sbGVyLmNvbnRyb2x8fG8ucGFyYW1zLmNvbnRyb2xsZXIuY29udHJvbCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KT8oInN0cmluZyI9PXR5cGVvZiBvLnBhcmFtcy5jb250cm9sbGVyLmNvbnRyb2w/Wy4uLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoby5wYXJhbXMuY29udHJvbGxlci5jb250cm9sKV06W28ucGFyYW1zLmNvbnRyb2xsZXIuY29udHJvbF0pLmZvckVhY2godD0+e2lmKG8uY29udHJvbGxlci5jb250cm9sfHwoby5jb250cm9sbGVyLmNvbnRyb2w9W10pLHQmJnQuc3dpcGVyKW8uY29udHJvbGxlci5jb250cm9sLnB1c2godC5zd2lwZXIpO2Vsc2UgaWYodCl7Y29uc3Qgbj1vLnBhcmFtcy5ldmVudHNQcmVmaXgrImluaXQiLGk9ZT0+e28uY29udHJvbGxlci5jb250cm9sLnB1c2goZS5kZXRhaWxbMF0pLG8udXBkYXRlKCksdC5yZW1vdmVFdmVudExpc3RlbmVyKG4saSl9O3QuYWRkRXZlbnRMaXN0ZW5lcihuLGkpfX0pOm8uY29udHJvbGxlci5jb250cm9sPW8ucGFyYW1zLmNvbnRyb2xsZXIuY29udHJvbH0pLHQoInVwZGF0ZSIsKCk9PntuKCl9KSx0KCJyZXNpemUiLCgpPT57bigpfSksdCgib2JzZXJ2ZXJVcGRhdGUiLCgpPT57bigpfSksdCgic2V0VHJhbnNsYXRlIiwoZSx0LG4pPT57by5jb250cm9sbGVyLmNvbnRyb2wmJiFvLmNvbnRyb2xsZXIuY29udHJvbC5kZXN0cm95ZWQmJm8uY29udHJvbGxlci5zZXRUcmFuc2xhdGUodCxuKX0pLHQoInNldFRyYW5zaXRpb24iLChlLHQsbik9PntvLmNvbnRyb2xsZXIuY29udHJvbCYmIW8uY29udHJvbGxlci5jb250cm9sLmRlc3Ryb3llZCYmby5jb250cm9sbGVyLnNldFRyYW5zaXRpb24odCxuKX0pLE9iamVjdC5hc3NpZ24oby5jb250cm9sbGVyLHtzZXRUcmFuc2xhdGU6ZnVuY3Rpb24oZSx0KXt2YXIgbj1vLmNvbnRyb2xsZXIuY29udHJvbDtsZXQgaSxyO3ZhciBzPW8uY29uc3RydWN0b3I7ZnVuY3Rpb24gYShlKXt2YXIgdCxuO2UuZGVzdHJveWVkfHwodD1vLnJ0bFRyYW5zbGF0ZT8tby50cmFuc2xhdGU6by50cmFuc2xhdGUsInNsaWRlIj09PW8ucGFyYW1zLmNvbnRyb2xsZXIuYnkmJihuPWUsby5jb250cm9sbGVyLnNwbGluZT1vLnBhcmFtcy5sb29wP25ldyBsKG8uc2xpZGVzR3JpZCxuLnNsaWRlc0dyaWQpOm5ldyBsKG8uc25hcEdyaWQsbi5zbmFwR3JpZCkscj0tby5jb250cm9sbGVyLnNwbGluZS5pbnRlcnBvbGF0ZSgtdCkpLHImJiJjb250YWluZXIiIT09by5wYXJhbXMuY29udHJvbGxlci5ieXx8KGk9KGUubWF4VHJhbnNsYXRlKCktZS5taW5UcmFuc2xhdGUoKSkvKG8ubWF4VHJhbnNsYXRlKCktby5taW5UcmFuc2xhdGUoKSksIU51bWJlci5pc05hTihpKSYmTnVtYmVyLmlzRmluaXRlKGkpfHwoaT0xKSxyPSh0LW8ubWluVHJhbnNsYXRlKCkpKmkrZS5taW5UcmFuc2xhdGUoKSksby5wYXJhbXMuY29udHJvbGxlci5pbnZlcnNlJiYocj1lLm1heFRyYW5zbGF0ZSgpLXIpLGUudXBkYXRlUHJvZ3Jlc3MociksZS5zZXRUcmFuc2xhdGUocixvKSxlLnVwZGF0ZUFjdGl2ZUluZGV4KCksZS51cGRhdGVTbGlkZXNDbGFzc2VzKCkpfWlmKEFycmF5LmlzQXJyYXkobikpZm9yKGxldCBlPTA7ZTxuLmxlbmd0aDtlKz0xKW5bZV0hPT10JiZuW2VdaW5zdGFuY2VvZiBzJiZhKG5bZV0pO2Vsc2UgbiBpbnN0YW5jZW9mIHMmJnQhPT1uJiZhKG4pfSxzZXRUcmFuc2l0aW9uOmZ1bmN0aW9uKHQsZSl7dmFyIG49by5jb25zdHJ1Y3Rvcjtjb25zdCBpPW8uY29udHJvbGxlci5jb250cm9sO2xldCByO2Z1bmN0aW9uIHMoZSl7ZS5kZXN0cm95ZWR8fChlLnNldFRyYW5zaXRpb24odCxvKSwwIT09dCYmKGUudHJhbnNpdGlvblN0YXJ0KCksZS5wYXJhbXMuYXV0b0hlaWdodCYmVCgoKT0+e2UudXBkYXRlQXV0b0hlaWdodCgpfSksZyhlLndyYXBwZXJFbCwoKT0+e2kmJmUudHJhbnNpdGlvbkVuZCgpfSkpKX1pZihBcnJheS5pc0FycmF5KGkpKWZvcihyPTA7cjxpLmxlbmd0aDtyKz0xKWlbcl0hPT1lJiZpW3JdaW5zdGFuY2VvZiBuJiZzKGlbcl0pO2Vsc2UgaSBpbnN0YW5jZW9mIG4mJmUhPT1pJiZzKGkpfX0pfSxmdW5jdGlvbih7c3dpcGVyOmEsZXh0ZW5kUGFyYW1zOmUsb246dH0pe2Uoe2ExMXk6e2VuYWJsZWQ6ITAsbm90aWZpY2F0aW9uQ2xhc3M6InN3aXBlci1ub3RpZmljYXRpb24iLHByZXZTbGlkZU1lc3NhZ2U6IlByZXZpb3VzIHNsaWRlIixuZXh0U2xpZGVNZXNzYWdlOiJOZXh0IHNsaWRlIixmaXJzdFNsaWRlTWVzc2FnZToiVGhpcyBpcyB0aGUgZmlyc3Qgc2xpZGUiLGxhc3RTbGlkZU1lc3NhZ2U6IlRoaXMgaXMgdGhlIGxhc3Qgc2xpZGUiLHBhZ2luYXRpb25CdWxsZXRNZXNzYWdlOiJHbyB0byBzbGlkZSB7e2luZGV4fX0iLHNsaWRlTGFiZWxNZXNzYWdlOiJ7e2luZGV4fX0gLyB7e3NsaWRlc0xlbmd0aH19Iixjb250YWluZXJNZXNzYWdlOm51bGwsY29udGFpbmVyUm9sZURlc2NyaXB0aW9uTWVzc2FnZTpudWxsLGNvbnRhaW5lclJvbGU6bnVsbCxpdGVtUm9sZURlc2NyaXB0aW9uTWVzc2FnZTpudWxsLHNsaWRlUm9sZToiZ3JvdXAiLGlkOm51bGwsc2Nyb2xsT25Gb2N1czohMCx3cmFwcGVyTGl2ZVJlZ2lvbjohMH19KSxhLmExMXk9e2NsaWNrZWQ6ITF9O2xldCBvPW51bGwscixzLGw9KG5ldyBEYXRlKS5nZXRUaW1lKCk7ZnVuY3Rpb24gaShlKXt2YXIgdD1vOzAhPT10Lmxlbmd0aCYmTSh0LGUpfWZ1bmN0aW9uIGQoZSl7KGU9QShlKSkuZm9yRWFjaChlPT57ZS5zZXRBdHRyaWJ1dGUoInRhYkluZGV4IiwiMCIpfSl9ZnVuY3Rpb24gbihlKXsoZT1BKGUpKS5mb3JFYWNoKGU9PntlLnNldEF0dHJpYnV0ZSgidGFiSW5kZXgiLCItMSIpfSl9ZnVuY3Rpb24gYyhlLHQpeyhlPUEoZSkpLmZvckVhY2goZT0+e2Uuc2V0QXR0cmlidXRlKCJyb2xlIix0KX0pfWZ1bmN0aW9uIHUoZSx0KXsoZT1BKGUpKS5mb3JFYWNoKGU9PntlLnNldEF0dHJpYnV0ZSgiYXJpYS1yb2xlZGVzY3JpcHRpb24iLHQpfSl9ZnVuY3Rpb24gcChlLHQpeyhlPUEoZSkpLmZvckVhY2goZT0+e2Uuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIix0KX0pfWZ1bmN0aW9uIGgoZSl7KGU9QShlKSkuZm9yRWFjaChlPT57ZS5zZXRBdHRyaWJ1dGUoImFyaWEtZGlzYWJsZWQiLCEwKX0pfWZ1bmN0aW9uIGYoZSl7KGU9QShlKSkuZm9yRWFjaChlPT57ZS5zZXRBdHRyaWJ1dGUoImFyaWEtZGlzYWJsZWQiLCExKX0pfWZ1bmN0aW9uIG0oZSl7dmFyIHQsbjsxMyE9PWUua2V5Q29kZSYmMzIhPT1lLmtleUNvZGV8fCh0PWEucGFyYW1zLmExMXksbj1lLnRhcmdldCxhLnBhZ2luYXRpb24mJmEucGFnaW5hdGlvbi5lbCYmKG49PT1hLnBhZ2luYXRpb24uZWx8fGEucGFnaW5hdGlvbi5lbC5jb250YWlucyhlLnRhcmdldCkpJiYhZS50YXJnZXQubWF0Y2hlcyhMKGEucGFyYW1zLnBhZ2luYXRpb24uYnVsbGV0Q2xhc3MpKSl8fChhLm5hdmlnYXRpb24mJmEubmF2aWdhdGlvbi5wcmV2RWwmJmEubmF2aWdhdGlvbi5uZXh0RWwmJihlPUEoYS5uYXZpZ2F0aW9uLnByZXZFbCksQShhLm5hdmlnYXRpb24ubmV4dEVsKS5pbmNsdWRlcyhuKSYmKGEuaXNFbmQmJiFhLnBhcmFtcy5sb29wfHxhLnNsaWRlTmV4dCgpLGEuaXNFbmQ/aSh0Lmxhc3RTbGlkZU1lc3NhZ2UpOmkodC5uZXh0U2xpZGVNZXNzYWdlKSksZS5pbmNsdWRlcyhuKSkmJihhLmlzQmVnaW5uaW5nJiYhYS5wYXJhbXMubG9vcHx8YS5zbGlkZVByZXYoKSxhLmlzQmVnaW5uaW5nP2kodC5maXJzdFNsaWRlTWVzc2FnZSk6aSh0LnByZXZTbGlkZU1lc3NhZ2UpKSxhLnBhZ2luYXRpb24mJm4ubWF0Y2hlcyhMKGEucGFyYW1zLnBhZ2luYXRpb24uYnVsbGV0Q2xhc3MpKSYmbi5jbGljaygpKX1mdW5jdGlvbiBnKCl7cmV0dXJuIGEucGFnaW5hdGlvbiYmYS5wYWdpbmF0aW9uLmJ1bGxldHMmJmEucGFnaW5hdGlvbi5idWxsZXRzLmxlbmd0aH1mdW5jdGlvbiB2KCl7cmV0dXJuIGcoKSYmYS5wYXJhbXMucGFnaW5hdGlvbi5jbGlja2FibGV9Y29uc3QgeT0oZSx0LG4pPT57dmFyIGk7ZChlKSwiQlVUVE9OIiE9PWUudGFnTmFtZSYmKGMoZSwiYnV0dG9uIiksZS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixtKSkscChlLG4pLGk9dCxBKGUpLmZvckVhY2goZT0+e2Uuc2V0QXR0cmlidXRlKCJhcmlhLWNvbnRyb2xzIixpKX0pfSxiPWU9PntzJiZzIT09ZS50YXJnZXQmJiFzLmNvbnRhaW5zKGUudGFyZ2V0KSYmKHI9ITApLGEuYTExeS5jbGlja2VkPSEwfSx3PSgpPT57cj0hMSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PnthLmRlc3Ryb3llZHx8KGEuYTExeS5jbGlja2VkPSExKX0pfSl9LHg9ZT0+e2w9KG5ldyBEYXRlKS5nZXRUaW1lKCl9LEU9ZT0+e2lmKCFhLmExMXkuY2xpY2tlZCYmYS5wYXJhbXMuYTExeS5zY3JvbGxPbkZvY3VzJiYhKChuZXcgRGF0ZSkuZ2V0VGltZSgpLWw8MTAwKSl7Y29uc3QgaT1lLnRhcmdldC5jbG9zZXN0KGAuJHthLnBhcmFtcy5zbGlkZUNsYXNzfSwgc3dpcGVyLXNsaWRlYCk7dmFyIHQsbjtpJiZhLnNsaWRlcy5pbmNsdWRlcyhpKSYmKHM9aSx0PWEuc2xpZGVzLmluZGV4T2YoaSk9PT1hLmFjdGl2ZUluZGV4LG49YS5wYXJhbXMud2F0Y2hTbGlkZXNQcm9ncmVzcyYmYS52aXNpYmxlU2xpZGVzJiZhLnZpc2libGVTbGlkZXMuaW5jbHVkZXMoaSksdHx8bnx8ZS5zb3VyY2VDYXBhYmlsaXRpZXMmJmUuc291cmNlQ2FwYWJpbGl0aWVzLmZpcmVzVG91Y2hFdmVudHN8fChhLmlzSG9yaXpvbnRhbCgpP2EuZWwuc2Nyb2xsTGVmdD0wOmEuZWwuc2Nyb2xsVG9wPTAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57cnx8KGEucGFyYW1zLmxvb3A/YS5zbGlkZVRvTG9vcChhLmdldFNsaWRlSW5kZXhXaGVuR3JpZChwYXJzZUludChpLmdldEF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItc2xpZGUtaW5kZXgiKSkpLDApOmEuc2xpZGVUbyhhLmdldFNsaWRlSW5kZXhXaGVuR3JpZChhLnNsaWRlcy5pbmRleE9mKGkpKSwwKSxyPSExKX0pKSl9fSxfPSgpPT57Y29uc3Qgbj1hLnBhcmFtcy5hMTF5LGk9KG4uaXRlbVJvbGVEZXNjcmlwdGlvbk1lc3NhZ2UmJnUoYS5zbGlkZXMsbi5pdGVtUm9sZURlc2NyaXB0aW9uTWVzc2FnZSksbi5zbGlkZVJvbGUmJmMoYS5zbGlkZXMsbi5zbGlkZVJvbGUpLGEuc2xpZGVzLmxlbmd0aCk7bi5zbGlkZUxhYmVsTWVzc2FnZSYmYS5zbGlkZXMuZm9yRWFjaCgoZSx0KT0+e3Q9YS5wYXJhbXMubG9vcD9wYXJzZUludChlLmdldEF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItc2xpZGUtaW5kZXgiKSwxMCk6dDtwKGUsbi5zbGlkZUxhYmVsTWVzc2FnZS5yZXBsYWNlKC9ce1x7aW5kZXhcfVx9Lyx0KzEpLnJlcGxhY2UoL1x7XHtzbGlkZXNMZW5ndGhcfVx9LyxpKSl9KX0sVD0oKT0+e2NvbnN0IHQ9YS5wYXJhbXMuYTExeTthLmVsLmFwcGVuZChvKTt2YXIgbixpLGU9YS5lbCxlPSh0LmNvbnRhaW5lclJvbGVEZXNjcmlwdGlvbk1lc3NhZ2UmJnUoZSx0LmNvbnRhaW5lclJvbGVEZXNjcmlwdGlvbk1lc3NhZ2UpLHQuY29udGFpbmVyTWVzc2FnZSYmcChlLHQuY29udGFpbmVyTWVzc2FnZSksdC5jb250YWluZXJSb2xlJiZjKGUsdC5jb250YWluZXJSb2xlKSxhLndyYXBwZXJFbCk7Y29uc3Qgcj10LmlkfHxlLmdldEF0dHJpYnV0ZSgiaWQiKXx8InN3aXBlci13cmFwcGVyLSIrIngiLnJlcGVhdCgxNikucmVwbGFjZSgveC9nLCgpPT5NYXRoLnJvdW5kKDE2Kk1hdGgucmFuZG9tKCkpLnRvU3RyaW5nKDE2KSk7bj1yLEEoZSkuZm9yRWFjaChlPT57ZS5zZXRBdHRyaWJ1dGUoImlkIixuKX0pLHQud3JhcHBlckxpdmVSZWdpb24mJihzPWEucGFyYW1zLmF1dG9wbGF5JiZhLnBhcmFtcy5hdXRvcGxheS5lbmFibGVkPyJvZmYiOiJwb2xpdGUiLGk9cyxBKGUpLmZvckVhY2goZT0+e2Uuc2V0QXR0cmlidXRlKCJhcmlhLWxpdmUiLGkpfSkpLF8oKTt2YXJ7bmV4dEVsOnMscHJldkVsOmV9PWEubmF2aWdhdGlvbnx8e30scz1BKHMpLGU9QShlKTtzJiZzLmZvckVhY2goZT0+eShlLHIsdC5uZXh0U2xpZGVNZXNzYWdlKSksZSYmZS5mb3JFYWNoKGU9PnkoZSxyLHQucHJldlNsaWRlTWVzc2FnZSkpLHYoKSYmQShhLnBhZ2luYXRpb24uZWwpLmZvckVhY2goZT0+e2UuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsbSl9KSxPKCkuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIseCksYS5lbC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsRSwhMCksYS5lbC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsRSwhMCksYS5lbC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsYiwhMCksYS5lbC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLHcsITApfTt0KCJiZWZvcmVJbml0IiwoKT0+eyhvPVMoInNwYW4iLGEucGFyYW1zLmExMXkubm90aWZpY2F0aW9uQ2xhc3MpKS5zZXRBdHRyaWJ1dGUoImFyaWEtbGl2ZSIsImFzc2VydGl2ZSIpLG8uc2V0QXR0cmlidXRlKCJhcmlhLWF0b21pYyIsInRydWUiKX0pLHQoImFmdGVySW5pdCIsKCk9PnthLnBhcmFtcy5hMTF5LmVuYWJsZWQmJlQoKX0pLHQoInNsaWRlc0xlbmd0aENoYW5nZSBzbmFwR3JpZExlbmd0aENoYW5nZSBzbGlkZXNHcmlkTGVuZ3RoQ2hhbmdlIiwoKT0+e2EucGFyYW1zLmExMXkuZW5hYmxlZCYmXygpfSksdCgiZnJvbUVkZ2UgdG9FZGdlIGFmdGVySW5pdCBsb2NrIHVubG9jayIsKCk9Pnt2YXIgZSx0O2EucGFyYW1zLmExMXkuZW5hYmxlZCYmIWEucGFyYW1zLmxvb3AmJiFhLnBhcmFtcy5yZXdpbmQmJmEubmF2aWdhdGlvbiYmKHtuZXh0RWw6ZSxwcmV2RWw6dH09YS5uYXZpZ2F0aW9uLHQmJihhLmlzQmVnaW5uaW5nPyhoKHQpLG4pOihmKHQpLGQpKSh0KSxlKSYmKGEuaXNFbmQ/KGgoZSksbik6KGYoZSksZCkpKGUpfSksdCgicGFnaW5hdGlvblVwZGF0ZSIsKCk9PntpZihhLnBhcmFtcy5hMTF5LmVuYWJsZWQpe2NvbnN0IHQ9YS5wYXJhbXMuYTExeTtnKCkmJmEucGFnaW5hdGlvbi5idWxsZXRzLmZvckVhY2goZT0+e2EucGFyYW1zLnBhZ2luYXRpb24uY2xpY2thYmxlJiYoZChlKSxhLnBhcmFtcy5wYWdpbmF0aW9uLnJlbmRlckJ1bGxldHx8KGMoZSwiYnV0dG9uIikscChlLHQucGFnaW5hdGlvbkJ1bGxldE1lc3NhZ2UucmVwbGFjZSgvXHtce2luZGV4XH1cfS8sQyhlKSsxKSkpKSxlLm1hdGNoZXMoTChhLnBhcmFtcy5wYWdpbmF0aW9uLmJ1bGxldEFjdGl2ZUNsYXNzKSk/ZS5zZXRBdHRyaWJ1dGUoImFyaWEtY3VycmVudCIsInRydWUiKTplLnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1jdXJyZW50Iil9KX19KSx0KCJkZXN0cm95IiwoKT0+e3ZhciBlLHQ7YS5wYXJhbXMuYTExeS5lbmFibGVkJiYobyYmby5yZW1vdmUoKSx7bmV4dEVsOmUscHJldkVsOnR9PWEubmF2aWdhdGlvbnx8e30sZT1BKGUpLHQ9QSh0KSxlJiZlLmZvckVhY2goZT0+ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixtKSksdCYmdC5mb3JFYWNoKGU9PmUucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsbSkpLHYoKSYmQShhLnBhZ2luYXRpb24uZWwpLmZvckVhY2goZT0+e2UucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsbSl9KSxPKCkucmVtb3ZlRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIseCksYS5lbCkmJiJzdHJpbmciIT10eXBlb2YgYS5lbCYmKGEuZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXMiLEUsITApLGEuZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLGIsITApLGEuZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIix3LCEwKSl9KX0sZnVuY3Rpb24oe3N3aXBlcjphLGV4dGVuZFBhcmFtczplLG9uOnR9KXtlKHtoaXN0b3J5OntlbmFibGVkOiExLHJvb3Q6IiIscmVwbGFjZVN0YXRlOiExLGtleToic2xpZGVzIixrZWVwUXVlcnk6ITF9fSk7bGV0IHM9ITEsbj17fTtjb25zdCBvPWU9PmUudG9TdHJpbmcoKS5yZXBsYWNlKC9ccysvZywiLSIpLnJlcGxhY2UoL1teXHctXSsvZywiIikucmVwbGFjZSgvLS0rL2csIi0iKS5yZXBsYWNlKC9eLSsvLCIiKS5yZXBsYWNlKC8tKyQvLCIiKSxpPWU9Pnt2YXIgdD0kKCk7bGV0IG47ZT0obj1lP25ldyBVUkwoZSk6dC5sb2NhdGlvbikucGF0aG5hbWUuc2xpY2UoMSkuc3BsaXQoIi8iKS5maWx0ZXIoZT0+IiIhPT1lKSx0PWUubGVuZ3RoO3JldHVybntrZXk6ZVt0LTJdLHZhbHVlOmVbdC0xXX19LHI9KG4saSk9Pnt2YXIgcj0kKCk7aWYocyYmYS5wYXJhbXMuaGlzdG9yeS5lbmFibGVkKXtsZXQgZTtlPWEucGFyYW1zLnVybD9uZXcgVVJMKGEucGFyYW1zLnVybCk6ci5sb2NhdGlvbjtpPWEudmlydHVhbCYmYS5wYXJhbXMudmlydHVhbC5lbmFibGVkP2Euc2xpZGVzRWwucXVlcnlTZWxlY3RvcihgW2RhdGEtc3dpcGVyLXNsaWRlLWluZGV4PSIke2l9Il1gKTphLnNsaWRlc1tpXTtsZXQgdD1vKGkuZ2V0QXR0cmlidXRlKCJkYXRhLWhpc3RvcnkiKSk7aWYoMDxhLnBhcmFtcy5oaXN0b3J5LnJvb3QubGVuZ3RoKXtsZXQgZT1hLnBhcmFtcy5oaXN0b3J5LnJvb3Q7Ii8iPT09ZVtlLmxlbmd0aC0xXSYmKGU9ZS5zbGljZSgwLGUubGVuZ3RoLTEpKSx0PWUrIi8iKyhuP24rIi8iOiIiKSt0fWVsc2UgZS5wYXRobmFtZS5pbmNsdWRlcyhuKXx8KHQ9KG4/bisiLyI6IiIpK3QpO2EucGFyYW1zLmhpc3Rvcnkua2VlcFF1ZXJ5JiYodCs9ZS5zZWFyY2gpO2k9ci5oaXN0b3J5LnN0YXRlO2kmJmkudmFsdWU9PT10fHwoYS5wYXJhbXMuaGlzdG9yeS5yZXBsYWNlU3RhdGU/ci5oaXN0b3J5LnJlcGxhY2VTdGF0ZSh7dmFsdWU6dH0sbnVsbCx0KTpyLmhpc3RvcnkucHVzaFN0YXRlKHt2YWx1ZTp0fSxudWxsLHQpKX19LGw9KG4saSxyKT0+e2lmKGkpZm9yKGxldCBlPTAsdD1hLnNsaWRlcy5sZW5ndGg7ZTx0O2UrPTEpe3ZhciBzPWEuc2xpZGVzW2VdO28ocy5nZXRBdHRyaWJ1dGUoImRhdGEtaGlzdG9yeSIpKT09PWkmJihzPWEuZ2V0U2xpZGVJbmRleChzKSxhLnNsaWRlVG8ocyxuLHIpKX1lbHNlIGEuc2xpZGVUbygwLG4scil9LGQ9KCk9PntuPWkoYS5wYXJhbXMudXJsKSxsKGEucGFyYW1zLnNwZWVkLG4udmFsdWUsITEpfTt0KCJpbml0IiwoKT0+e3ZhciBlO2EucGFyYW1zLmhpc3RvcnkuZW5hYmxlZCYmKGU9JCgpLGEucGFyYW1zLmhpc3RvcnkpJiYoZS5oaXN0b3J5JiZlLmhpc3RvcnkucHVzaFN0YXRlPyhzPSEwLCgobj1pKGEucGFyYW1zLnVybCkpLmtleXx8bi52YWx1ZSkmJmwoMCxuLnZhbHVlLGEucGFyYW1zLnJ1bkNhbGxiYWNrc09uSW5pdCksYS5wYXJhbXMuaGlzdG9yeS5yZXBsYWNlU3RhdGV8fGUuYWRkRXZlbnRMaXN0ZW5lcigicG9wc3RhdGUiLGQpKTooYS5wYXJhbXMuaGlzdG9yeS5lbmFibGVkPSExLGEucGFyYW1zLmhhc2hOYXZpZ2F0aW9uLmVuYWJsZWQ9ITApKX0pLHQoImRlc3Ryb3kiLCgpPT57dmFyIGU7YS5wYXJhbXMuaGlzdG9yeS5lbmFibGVkJiYoZT0kKCksYS5wYXJhbXMuaGlzdG9yeS5yZXBsYWNlU3RhdGV8fGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9wc3RhdGUiLGQpKX0pLHQoInRyYW5zaXRpb25FbmQgX2ZyZWVNb2RlTm9Nb21lbnR1bVJlbGVhc2UiLCgpPT57cyYmcihhLnBhcmFtcy5oaXN0b3J5LmtleSxhLmFjdGl2ZUluZGV4KX0pLHQoInNsaWRlQ2hhbmdlIiwoKT0+e3MmJmEucGFyYW1zLmNzc01vZGUmJnIoYS5wYXJhbXMuaGlzdG9yeS5rZXksYS5hY3RpdmVJbmRleCl9KX0sZnVuY3Rpb24oe3N3aXBlcjppLGV4dGVuZFBhcmFtczplLGVtaXQ6bixvbjp0fSl7bGV0IHI9ITE7Y29uc3Qgcz1PKCksYT0kKCksbz0oZSh7aGFzaE5hdmlnYXRpb246e2VuYWJsZWQ6ITEscmVwbGFjZVN0YXRlOiExLHdhdGNoU3RhdGU6ITEsZ2V0U2xpZGVJbmRleChlLHQpe3ZhciBuO3JldHVybiBpLnZpcnR1YWwmJmkucGFyYW1zLnZpcnR1YWwuZW5hYmxlZD8obj1pLnNsaWRlcy5maW5kKGU9PmUuZ2V0QXR0cmlidXRlKCJkYXRhLWhhc2giKT09PXQpKT9wYXJzZUludChuLmdldEF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItc2xpZGUtaW5kZXgiKSwxMCk6MDppLmdldFNsaWRlSW5kZXgoWShpLnNsaWRlc0VsLGAuJHtpLnBhcmFtcy5zbGlkZUNsYXNzfVtkYXRhLWhhc2g9IiR7dH0iXSwgc3dpcGVyLXNsaWRlW2RhdGEtaGFzaD0iJHt0fSJdYClbMF0pfX19KSwoKT0+e24oImhhc2hDaGFuZ2UiKTt2YXIgZT1zLmxvY2F0aW9uLmhhc2gucmVwbGFjZSgiIyIsIiIpLHQ9aS52aXJ0dWFsJiZpLnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQ/aS5zbGlkZXNFbC5xdWVyeVNlbGVjdG9yKGBbZGF0YS1zd2lwZXItc2xpZGUtaW5kZXg9IiR7aS5hY3RpdmVJbmRleH0iXWApOmkuc2xpZGVzW2kuYWN0aXZlSW5kZXhdO2U9PT0odD90LmdldEF0dHJpYnV0ZSgiZGF0YS1oYXNoIik6IiIpfHx2b2lkIDA9PT0odD1pLnBhcmFtcy5oYXNoTmF2aWdhdGlvbi5nZXRTbGlkZUluZGV4KGksZSkpfHxOdW1iZXIuaXNOYU4odCl8fGkuc2xpZGVUbyh0KX0pLGw9KCk9Pnt2YXIgZTtyJiZpLnBhcmFtcy5oYXNoTmF2aWdhdGlvbi5lbmFibGVkJiYoZT0oZT1pLnZpcnR1YWwmJmkucGFyYW1zLnZpcnR1YWwuZW5hYmxlZD9pLnNsaWRlc0VsLnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLXN3aXBlci1zbGlkZS1pbmRleD0iJHtpLmFjdGl2ZUluZGV4fSJdYCk6aS5zbGlkZXNbaS5hY3RpdmVJbmRleF0pP2UuZ2V0QXR0cmlidXRlKCJkYXRhLWhhc2giKXx8ZS5nZXRBdHRyaWJ1dGUoImRhdGEtaGlzdG9yeSIpOiIiLGkucGFyYW1zLmhhc2hOYXZpZ2F0aW9uLnJlcGxhY2VTdGF0ZSYmYS5oaXN0b3J5JiZhLmhpc3RvcnkucmVwbGFjZVN0YXRlP2EuaGlzdG9yeS5yZXBsYWNlU3RhdGUobnVsbCxudWxsLCIjIitlfHwiIik6cy5sb2NhdGlvbi5oYXNoPWV8fCIiLG4oImhhc2hTZXQiKSl9O3QoImluaXQiLCgpPT57dmFyIGU7IWkucGFyYW1zLmhhc2hOYXZpZ2F0aW9uLmVuYWJsZWR8fCFpLnBhcmFtcy5oYXNoTmF2aWdhdGlvbi5lbmFibGVkfHxpLnBhcmFtcy5oaXN0b3J5JiZpLnBhcmFtcy5oaXN0b3J5LmVuYWJsZWR8fChyPSEwLChlPXMubG9jYXRpb24uaGFzaC5yZXBsYWNlKCIjIiwiIikpJiYoZT1pLnBhcmFtcy5oYXNoTmF2aWdhdGlvbi5nZXRTbGlkZUluZGV4KGksZSksaS5zbGlkZVRvKGV8fDAsMCxpLnBhcmFtcy5ydW5DYWxsYmFja3NPbkluaXQsITApKSxpLnBhcmFtcy5oYXNoTmF2aWdhdGlvbi53YXRjaFN0YXRlJiZhLmFkZEV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLG8pKX0pLHQoImRlc3Ryb3kiLCgpPT57aS5wYXJhbXMuaGFzaE5hdmlnYXRpb24uZW5hYmxlZCYmaS5wYXJhbXMuaGFzaE5hdmlnYXRpb24ud2F0Y2hTdGF0ZSYmYS5yZW1vdmVFdmVudExpc3RlbmVyKCJoYXNoY2hhbmdlIixvKX0pLHQoInRyYW5zaXRpb25FbmQgX2ZyZWVNb2RlTm9Nb21lbnR1bVJlbGVhc2UiLCgpPT57ciYmbCgpfSksdCgic2xpZGVDaGFuZ2UiLCgpPT57ciYmaS5wYXJhbXMuY3NzTW9kZSYmbCgpfSl9LGZ1bmN0aW9uKHtzd2lwZXI6cyxleHRlbmRQYXJhbXM6ZSxvbjp0LGVtaXQ6YSxwYXJhbXM6bn0pe2Uoe2F1dG9wbGF5OntlbmFibGVkOiEocy5hdXRvcGxheT17cnVubmluZzohMSxwYXVzZWQ6ITEsdGltZUxlZnQ6MH0pLGRlbGF5OjNlMyx3YWl0Rm9yVHJhbnNpdGlvbjohMCxkaXNhYmxlT25JbnRlcmFjdGlvbjohMSxzdG9wT25MYXN0U2xpZGU6ITEscmV2ZXJzZURpcmVjdGlvbjohMSxwYXVzZU9uTW91c2VFbnRlcjohMX19KTtsZXQgbyxsLGQ9biYmbi5hdXRvcGxheT9uLmF1dG9wbGF5LmRlbGF5OjNlMyxjPW4mJm4uYXV0b3BsYXk/bi5hdXRvcGxheS5kZWxheTozZTMsdSxwPShuZXcgRGF0ZSkuZ2V0VGltZSgpLGkscixoLGYsbSxnLHY7ZnVuY3Rpb24geShlKXshc3x8cy5kZXN0cm95ZWR8fCFzLndyYXBwZXJFbHx8ZS50YXJnZXQhPT1zLndyYXBwZXJFbHx8KHMud3JhcHBlckVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLHkpLHYpfHxlLmRldGFpbCYmZS5kZXRhaWwuYnlTd2lwZXJUb3VjaE1vdmV8fFMoKX1jb25zdCBiPSgpPT57dmFyIGU7IXMuZGVzdHJveWVkJiZzLmF1dG9wbGF5LnJ1bm5pbmcmJihzLmF1dG9wbGF5LnBhdXNlZD9pPSEwOmkmJihjPXUsaT0hMSksZT1zLmF1dG9wbGF5LnBhdXNlZD91OnArYy0obmV3IERhdGUpLmdldFRpbWUoKSxzLmF1dG9wbGF5LnRpbWVMZWZ0PWUsYSgiYXV0b3BsYXlUaW1lTGVmdCIsZSxlL2QpLGw9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57YigpfSkpfSx3PSgpPT57bGV0IGU7aWYoZT1zLnZpcnR1YWwmJnMucGFyYW1zLnZpcnR1YWwuZW5hYmxlZD9zLnNsaWRlcy5maW5kKGU9PmUuY2xhc3NMaXN0LmNvbnRhaW5zKCJzd2lwZXItc2xpZGUtYWN0aXZlIikpOnMuc2xpZGVzW3MuYWN0aXZlSW5kZXhdKXJldHVybiBwYXJzZUludChlLmdldEF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItYXV0b3BsYXkiKSwxMCl9LHg9dD0+e2lmKCFzLmRlc3Ryb3llZCYmcy5hdXRvcGxheS5ydW5uaW5nKXtjYW5jZWxBbmltYXRpb25GcmFtZShsKSxiKCk7bGV0IGU9dm9pZCAwPT09dD9zLnBhcmFtcy5hdXRvcGxheS5kZWxheTp0O2Q9cy5wYXJhbXMuYXV0b3BsYXkuZGVsYXksYz1zLnBhcmFtcy5hdXRvcGxheS5kZWxheTt2YXIgbj13KCk7IU51bWJlci5pc05hTihuKSYmMDxuJiZ2b2lkIDA9PT10JiYoZT1uLGQ9bixjPW4pLHU9ZTtjb25zdCBpPXMucGFyYW1zLnNwZWVkLHI9KCk9PntzJiYhcy5kZXN0cm95ZWQmJihzLnBhcmFtcy5hdXRvcGxheS5yZXZlcnNlRGlyZWN0aW9uPyFzLmlzQmVnaW5uaW5nfHxzLnBhcmFtcy5sb29wfHxzLnBhcmFtcy5yZXdpbmQ/KHMuc2xpZGVQcmV2KGksITAsITApLGEoImF1dG9wbGF5IikpOnMucGFyYW1zLmF1dG9wbGF5LnN0b3BPbkxhc3RTbGlkZXx8KHMuc2xpZGVUbyhzLnNsaWRlcy5sZW5ndGgtMSxpLCEwLCEwKSxhKCJhdXRvcGxheSIpKTohcy5pc0VuZHx8cy5wYXJhbXMubG9vcHx8cy5wYXJhbXMucmV3aW5kPyhzLnNsaWRlTmV4dChpLCEwLCEwKSxhKCJhdXRvcGxheSIpKTpzLnBhcmFtcy5hdXRvcGxheS5zdG9wT25MYXN0U2xpZGV8fChzLnNsaWRlVG8oMCxpLCEwLCEwKSxhKCJhdXRvcGxheSIpKSxzLnBhcmFtcy5jc3NNb2RlKSYmKHA9KG5ldyBEYXRlKS5nZXRUaW1lKCkscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57eCgpfSkpfTtyZXR1cm4gMDxlPyhjbGVhclRpbWVvdXQobyksbz1zZXRUaW1lb3V0KCgpPT57cigpfSxlKSk6cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57cigpfSksZX19LEU9KCk9PntwPShuZXcgRGF0ZSkuZ2V0VGltZSgpLHMuYXV0b3BsYXkucnVubmluZz0hMCx4KCksYSgiYXV0b3BsYXlTdGFydCIpfSxfPSgpPT57cy5hdXRvcGxheS5ydW5uaW5nPSExLGNsZWFyVGltZW91dChvKSxjYW5jZWxBbmltYXRpb25GcmFtZShsKSxhKCJhdXRvcGxheVN0b3AiKX0sVD0oZSx0KT0+eyFzLmRlc3Ryb3llZCYmcy5hdXRvcGxheS5ydW5uaW5nJiYoY2xlYXJUaW1lb3V0KG8pLGV8fChnPSEwKSxlPSgpPT57YSgiYXV0b3BsYXlQYXVzZSIpLHMucGFyYW1zLmF1dG9wbGF5LndhaXRGb3JUcmFuc2l0aW9uP3Mud3JhcHBlckVsLmFkZEV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLHkpOlMoKX0scy5hdXRvcGxheS5wYXVzZWQ9ITAsdD8obSYmKHU9cy5wYXJhbXMuYXV0b3BsYXkuZGVsYXkpLG09ITEsZSgpKToodD11fHxzLnBhcmFtcy5hdXRvcGxheS5kZWxheSx1PXQtKChuZXcgRGF0ZSkuZ2V0VGltZSgpLXApLHMuaXNFbmQmJnU8MCYmIXMucGFyYW1zLmxvb3B8fCh1PDAmJih1PTApLGUoKSkpKX0sUz0oKT0+e3MuaXNFbmQmJnU8MCYmIXMucGFyYW1zLmxvb3B8fHMuZGVzdHJveWVkfHwhcy5hdXRvcGxheS5ydW5uaW5nfHwocD0obmV3IERhdGUpLmdldFRpbWUoKSxnPyhnPSExLHgodSkpOngoKSxzLmF1dG9wbGF5LnBhdXNlZD0hMSxhKCJhdXRvcGxheVJlc3VtZSIpKX0sQz0oKT0+e3ZhciBlOyFzLmRlc3Ryb3llZCYmcy5hdXRvcGxheS5ydW5uaW5nJiYoImhpZGRlbiI9PT0oZT1PKCkpLnZpc2liaWxpdHlTdGF0ZSYmKGc9ITAsVCghMCkpLCJ2aXNpYmxlIj09PWUudmlzaWJpbGl0eVN0YXRlKSYmUygpfSxBPWU9PnsibW91c2UiIT09ZS5wb2ludGVyVHlwZXx8KGc9ITAsdj0hMCxzLmFuaW1hdGluZyl8fHMuYXV0b3BsYXkucGF1c2VkfHxUKCEwKX0sTT1lPT57Im1vdXNlIj09PWUucG9pbnRlclR5cGUmJih2PSExLHMuYXV0b3BsYXkucGF1c2VkKSYmUygpfTt0KCJpbml0IiwoKT0+e3MucGFyYW1zLmF1dG9wbGF5LmVuYWJsZWQmJihzLnBhcmFtcy5hdXRvcGxheS5wYXVzZU9uTW91c2VFbnRlciYmKHMuZWwuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmVudGVyIixBKSxzLmVsLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJsZWF2ZSIsTSkpLE8oKS5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixDKSxFKCkpfSksdCgiZGVzdHJveSIsKCk9PntzLmVsJiYic3RyaW5nIiE9dHlwZW9mIHMuZWwmJihzLmVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJlbnRlciIsQSkscy5lbC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybGVhdmUiLE0pKSxPKCkucmVtb3ZlRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsQykscy5hdXRvcGxheS5ydW5uaW5nJiZfKCl9KSx0KCJfZnJlZU1vZGVTdGF0aWNSZWxlYXNlIiwoKT0+eyhofHxnKSYmUygpfSksdCgiX2ZyZWVNb2RlTm9Nb21lbnR1bVJlbGVhc2UiLCgpPT57cy5wYXJhbXMuYXV0b3BsYXkuZGlzYWJsZU9uSW50ZXJhY3Rpb24/XygpOlQoITAsITApfSksdCgiYmVmb3JlVHJhbnNpdGlvblN0YXJ0IiwoZSx0LG4pPT57IXMuZGVzdHJveWVkJiZzLmF1dG9wbGF5LnJ1bm5pbmcmJihufHwhcy5wYXJhbXMuYXV0b3BsYXkuZGlzYWJsZU9uSW50ZXJhY3Rpb24/VCghMCwhMCk6XygpKX0pLHQoInNsaWRlckZpcnN0TW92ZSIsKCk9Pnshcy5kZXN0cm95ZWQmJnMuYXV0b3BsYXkucnVubmluZyYmKHMucGFyYW1zLmF1dG9wbGF5LmRpc2FibGVPbkludGVyYWN0aW9uP18oKToocj0hMCxoPSExLGc9ITEsZj1zZXRUaW1lb3V0KCgpPT57Zz0hMCxoPSEwLFQoITApfSwyMDApKSl9KSx0KCJ0b3VjaEVuZCIsKCk9Pnshcy5kZXN0cm95ZWQmJnMuYXV0b3BsYXkucnVubmluZyYmciYmKGNsZWFyVGltZW91dChmKSxjbGVhclRpbWVvdXQobykscj0oaD0ocy5wYXJhbXMuYXV0b3BsYXkuZGlzYWJsZU9uSW50ZXJhY3Rpb258fGgmJnMucGFyYW1zLmNzc01vZGUmJlMoKSwhMSksITEpKX0pLHQoInNsaWRlQ2hhbmdlIiwoKT0+eyFzLmRlc3Ryb3llZCYmcy5hdXRvcGxheS5ydW5uaW5nJiYobT0hMCl9KSxPYmplY3QuYXNzaWduKHMuYXV0b3BsYXkse3N0YXJ0OkUsc3RvcDpfLHBhdXNlOlQscmVzdW1lOlN9KX0sZnVuY3Rpb24oe3N3aXBlcjpjLGV4dGVuZFBhcmFtczplLG9uOnR9KXtlKHt0aHVtYnM6e3N3aXBlcjpudWxsLG11bHRpcGxlQWN0aXZlVGh1bWJzOiEwLGF1dG9TY3JvbGxPZmZzZXQ6MCxzbGlkZVRodW1iQWN0aXZlQ2xhc3M6InN3aXBlci1zbGlkZS10aHVtYi1hY3RpdmUiLHRodW1ic0NvbnRhaW5lckNsYXNzOiJzd2lwZXItdGh1bWJzIn19KTtsZXQgbj0hMSxpPSExO2Z1bmN0aW9uIHIoKXt2YXIgdD1jLnRodW1icy5zd2lwZXI7aWYodCYmIXQuZGVzdHJveWVkKXt2YXIgbj10LmNsaWNrZWRJbmRleCxlPXQuY2xpY2tlZFNsaWRlO2lmKCEoZSYmZS5jbGFzc0xpc3QuY29udGFpbnMoYy5wYXJhbXMudGh1bWJzLnNsaWRlVGh1bWJBY3RpdmVDbGFzcyl8fG51bGw9PW4pKXtsZXQgZTtlPXQucGFyYW1zLmxvb3A/cGFyc2VJbnQodC5jbGlja2VkU2xpZGUuZ2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1zbGlkZS1pbmRleCIpLDEwKTpuLGMucGFyYW1zLmxvb3A/Yy5zbGlkZVRvTG9vcChlKTpjLnNsaWRlVG8oZSl9fX1mdW5jdGlvbiBzKCl7dmFyIGU9Yy5wYXJhbXNbInRodW1icyJdO2lmKG4pcmV0dXJuITE7bj0hMDt2YXIgdD1jLmNvbnN0cnVjdG9yO2lmKGUuc3dpcGVyIGluc3RhbmNlb2YgdCl7aWYoZS5zd2lwZXIuZGVzdHJveWVkKXJldHVybiBuPSExO2MudGh1bWJzLnN3aXBlcj1lLnN3aXBlcixPYmplY3QuYXNzaWduKGMudGh1bWJzLnN3aXBlci5vcmlnaW5hbFBhcmFtcyx7d2F0Y2hTbGlkZXNQcm9ncmVzczohMCxzbGlkZVRvQ2xpY2tlZFNsaWRlOiExfSksT2JqZWN0LmFzc2lnbihjLnRodW1icy5zd2lwZXIucGFyYW1zLHt3YXRjaFNsaWRlc1Byb2dyZXNzOiEwLHNsaWRlVG9DbGlja2VkU2xpZGU6ITF9KSxjLnRodW1icy5zd2lwZXIudXBkYXRlKCl9ZWxzZSBkKGUuc3dpcGVyKSYmKGU9T2JqZWN0LmFzc2lnbih7fSxlLnN3aXBlciksT2JqZWN0LmFzc2lnbihlLHt3YXRjaFNsaWRlc1Byb2dyZXNzOiEwLHNsaWRlVG9DbGlja2VkU2xpZGU6ITF9KSxjLnRodW1icy5zd2lwZXI9bmV3IHQoZSksaT0hMCk7cmV0dXJuIGMudGh1bWJzLnN3aXBlci5lbC5jbGFzc0xpc3QuYWRkKGMucGFyYW1zLnRodW1icy50aHVtYnNDb250YWluZXJDbGFzcyksYy50aHVtYnMuc3dpcGVyLm9uKCJ0YXAiLHIpLCEwfWZ1bmN0aW9uIGEobil7dmFyIGk9Yy50aHVtYnMuc3dpcGVyO2lmKGkmJiFpLmRlc3Ryb3llZCl7dmFyIHI9ImF1dG8iPT09aS5wYXJhbXMuc2xpZGVzUGVyVmlldz9pLnNsaWRlc1BlclZpZXdEeW5hbWljKCk6aS5wYXJhbXMuc2xpZGVzUGVyVmlldztsZXQgdD0xO2NvbnN0IGQ9Yy5wYXJhbXMudGh1bWJzLnNsaWRlVGh1bWJBY3RpdmVDbGFzcztpZigxPGMucGFyYW1zLnNsaWRlc1BlclZpZXcmJiFjLnBhcmFtcy5jZW50ZXJlZFNsaWRlcyYmKHQ9Yy5wYXJhbXMuc2xpZGVzUGVyVmlldyksYy5wYXJhbXMudGh1bWJzLm11bHRpcGxlQWN0aXZlVGh1bWJzfHwodD0xKSx0PU1hdGguZmxvb3IodCksaS5zbGlkZXMuZm9yRWFjaChlPT5lLmNsYXNzTGlzdC5yZW1vdmUoZCkpLGkucGFyYW1zLmxvb3B8fGkucGFyYW1zLnZpcnR1YWwmJmkucGFyYW1zLnZpcnR1YWwuZW5hYmxlZClmb3IobGV0IGU9MDtlPHQ7ZSs9MSlZKGkuc2xpZGVzRWwsYFtkYXRhLXN3aXBlci1zbGlkZS1pbmRleD0iJHtjLnJlYWxJbmRleCtlfSJdYCkuZm9yRWFjaChlPT57ZS5jbGFzc0xpc3QuYWRkKGQpfSk7ZWxzZSBmb3IobGV0IGU9MDtlPHQ7ZSs9MSlpLnNsaWRlc1tjLnJlYWxJbmRleCtlXSYmaS5zbGlkZXNbYy5yZWFsSW5kZXgrZV0uY2xhc3NMaXN0LmFkZChkKTt2YXIgcz1jLnBhcmFtcy50aHVtYnMuYXV0b1Njcm9sbE9mZnNldCxhPXMmJiFpLnBhcmFtcy5sb29wO2lmKGMucmVhbEluZGV4IT09aS5yZWFsSW5kZXh8fGEpe3ZhciBvLGw9aS5hY3RpdmVJbmRleDtsZXQgZSx0O3Q9aS5wYXJhbXMubG9vcD8obz1pLnNsaWRlcy5maW5kKGU9PmUuZ2V0QXR0cmlidXRlKCJkYXRhLXN3aXBlci1zbGlkZS1pbmRleCIpPT09IiIrYy5yZWFsSW5kZXgpLGU9aS5zbGlkZXMuaW5kZXhPZihvKSxjLmFjdGl2ZUluZGV4PmMucHJldmlvdXNJbmRleD8ibmV4dCI6InByZXYiKTooZT1jLnJlYWxJbmRleCk+Yy5wcmV2aW91c0luZGV4PyJuZXh0IjoicHJldiIsYSYmKGUrPSJuZXh0Ij09PXQ/czotMSpzKSxpLnZpc2libGVTbGlkZXNJbmRleGVzJiZpLnZpc2libGVTbGlkZXNJbmRleGVzLmluZGV4T2YoZSk8MCYmKGkucGFyYW1zLmNlbnRlcmVkU2xpZGVzP2U9ZT5sP2UtTWF0aC5mbG9vcihyLzIpKzE6ZStNYXRoLmZsb29yKHIvMiktMTplPmwmJmkucGFyYW1zLnNsaWRlc1Blckdyb3VwLGkuc2xpZGVUbyhlLG4/MDp2b2lkIDApKX19fWMudGh1bWJzPXtzd2lwZXI6bnVsbH0sdCgiYmVmb3JlSW5pdCIsKCk9Pntjb25zdCByPWMucGFyYW1zWyJ0aHVtYnMiXTtpZihyJiZyLnN3aXBlcilpZigic3RyaW5nIj09dHlwZW9mIHIuc3dpcGVyfHxyLnN3aXBlciBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KXtjb25zdCBlPU8oKSx0PSgpPT57Y29uc3QgdD0ic3RyaW5nIj09dHlwZW9mIHIuc3dpcGVyP2UucXVlcnlTZWxlY3RvcihyLnN3aXBlcik6ci5zd2lwZXI7aWYodCYmdC5zd2lwZXIpci5zd2lwZXI9dC5zd2lwZXIscygpLGEoITApO2Vsc2UgaWYodCl7Y29uc3Qgbj1jLnBhcmFtcy5ldmVudHNQcmVmaXgrImluaXQiLGk9ZT0+e3Iuc3dpcGVyPWUuZGV0YWlsWzBdLHQucmVtb3ZlRXZlbnRMaXN0ZW5lcihuLGkpLHMoKSxhKCEwKSxyLnN3aXBlci51cGRhdGUoKSxjLnVwZGF0ZSgpfTt0LmFkZEV2ZW50TGlzdGVuZXIobixpKX1yZXR1cm4gdH0sbj0oKT0+e2MuZGVzdHJveWVkfHx0KCl8fHJlcXVlc3RBbmltYXRpb25GcmFtZShuKX07cmVxdWVzdEFuaW1hdGlvbkZyYW1lKG4pfWVsc2UgcygpLGEoITApfSksdCgic2xpZGVDaGFuZ2UgdXBkYXRlIHJlc2l6ZSBvYnNlcnZlclVwZGF0ZSIsKCk9PnthKCl9KSx0KCJzZXRUcmFuc2l0aW9uIiwoZSx0KT0+e3ZhciBuPWMudGh1bWJzLnN3aXBlcjtuJiYhbi5kZXN0cm95ZWQmJm4uc2V0VHJhbnNpdGlvbih0KX0pLHQoImJlZm9yZURlc3Ryb3kiLCgpPT57dmFyIGU9Yy50aHVtYnMuc3dpcGVyO2UmJiFlLmRlc3Ryb3llZCYmaSYmZS5kZXN0cm95KCl9KSxPYmplY3QuYXNzaWduKGMudGh1bWJzLHtpbml0OnMsdXBkYXRlOmF9KX0sZnVuY3Rpb24oe3N3aXBlcjpoLGV4dGVuZFBhcmFtczplLGVtaXQ6ZixvbmNlOm19KXtlKHtmcmVlTW9kZTp7ZW5hYmxlZDohMSxtb21lbnR1bTohMCxtb21lbnR1bVJhdGlvOjEsbW9tZW50dW1Cb3VuY2U6ITAsbW9tZW50dW1Cb3VuY2VSYXRpbzoxLG1vbWVudHVtVmVsb2NpdHlSYXRpbzoxLHN0aWNreTohMSxtaW5pbXVtVmVsb2NpdHk6LjAyfX0pLE9iamVjdC5hc3NpZ24oaCx7ZnJlZU1vZGU6e29uVG91Y2hTdGFydDpmdW5jdGlvbigpe3ZhciBlO2gucGFyYW1zLmNzc01vZGV8fChlPWguZ2V0VHJhbnNsYXRlKCksaC5zZXRUcmFuc2xhdGUoZSksaC5zZXRUcmFuc2l0aW9uKDApLGgudG91Y2hFdmVudHNEYXRhLnZlbG9jaXRpZXMubGVuZ3RoPTAsaC5mcmVlTW9kZS5vblRvdWNoRW5kKHtjdXJyZW50UG9zOmgucnRsP2gudHJhbnNsYXRlOi1oLnRyYW5zbGF0ZX0pKX0sb25Ub3VjaE1vdmU6ZnVuY3Rpb24oKXt2YXIgZSx0O2gucGFyYW1zLmNzc01vZGV8fCh7dG91Y2hFdmVudHNEYXRhOmUsdG91Y2hlczp0fT1oLDA9PT1lLnZlbG9jaXRpZXMubGVuZ3RoJiZlLnZlbG9jaXRpZXMucHVzaCh7cG9zaXRpb246dFtoLmlzSG9yaXpvbnRhbCgpPyJzdGFydFgiOiJzdGFydFkiXSx0aW1lOmUudG91Y2hTdGFydFRpbWV9KSxlLnZlbG9jaXRpZXMucHVzaCh7cG9zaXRpb246dFtoLmlzSG9yaXpvbnRhbCgpPyJjdXJyZW50WCI6ImN1cnJlbnRZIl0sdGltZTp2KCl9KSl9LG9uVG91Y2hFbmQ6ZnVuY3Rpb24oe2N1cnJlbnRQb3M6c30pe2lmKCFoLnBhcmFtcy5jc3NNb2RlKXtjb25zdHtwYXJhbXM6bCx3cmFwcGVyRWw6ZCxydGxUcmFuc2xhdGU6YyxzbmFwR3JpZDp1LHRvdWNoRXZlbnRzRGF0YTpwfT1oO3ZhciBlPXYoKS1wLnRvdWNoU3RhcnRUaW1lO2lmKHM8LWgubWluVHJhbnNsYXRlKCkpaC5zbGlkZVRvKGguYWN0aXZlSW5kZXgpO2Vsc2UgaWYocz4taC5tYXhUcmFuc2xhdGUoKSloLnNsaWRlcy5sZW5ndGg8dS5sZW5ndGg/aC5zbGlkZVRvKHUubGVuZ3RoLTEpOmguc2xpZGVUbyhoLnNsaWRlcy5sZW5ndGgtMSk7ZWxzZXtpZihsLmZyZWVNb2RlLm1vbWVudHVtKXsoISgxPHAudmVsb2NpdGllcy5sZW5ndGgpfHwocz1wLnZlbG9jaXRpZXMucG9wKCksbz1wLnZlbG9jaXRpZXMucG9wKCksYT1zLnBvc2l0aW9uLW8ucG9zaXRpb24sbz1zLnRpbWUtby50aW1lLGgudmVsb2NpdHk9YS9vLGgudmVsb2NpdHkvPTIsTWF0aC5hYnMoaC52ZWxvY2l0eSk8bC5mcmVlTW9kZS5taW5pbXVtVmVsb2NpdHkmJihoLnZlbG9jaXR5PTApLDE1MDxvKXx8MzAwPHYoKS1zLnRpbWUpJiYoaC52ZWxvY2l0eT0wKSxoLnZlbG9jaXR5Kj1sLmZyZWVNb2RlLm1vbWVudHVtVmVsb2NpdHlSYXRpbyxwLnZlbG9jaXRpZXMubGVuZ3RoPTA7bGV0IGU9MWUzKmwuZnJlZU1vZGUubW9tZW50dW1SYXRpbzt2YXIgYT1oLnZlbG9jaXR5KmU7bGV0IG49aC50cmFuc2xhdGUrYSx0PShjJiYobj0tbiksITEpLGk7dmFyIG89MjAqTWF0aC5hYnMoaC52ZWxvY2l0eSkqbC5mcmVlTW9kZS5tb21lbnR1bUJvdW5jZVJhdGlvO2xldCByO2lmKG48aC5tYXhUcmFuc2xhdGUoKSlsLmZyZWVNb2RlLm1vbWVudHVtQm91bmNlPyhuK2gubWF4VHJhbnNsYXRlKCk8LW8mJihuPWgubWF4VHJhbnNsYXRlKCktbyksaT1oLm1heFRyYW5zbGF0ZSgpLHQ9ITAscC5hbGxvd01vbWVudHVtQm91bmNlPSEwKTpuPWgubWF4VHJhbnNsYXRlKCksbC5sb29wJiZsLmNlbnRlcmVkU2xpZGVzJiYocj0hMCk7ZWxzZSBpZihuPmgubWluVHJhbnNsYXRlKCkpbC5mcmVlTW9kZS5tb21lbnR1bUJvdW5jZT8obi1oLm1pblRyYW5zbGF0ZSgpPm8mJihuPWgubWluVHJhbnNsYXRlKCkrbyksaT1oLm1pblRyYW5zbGF0ZSgpLHQ9ITAscC5hbGxvd01vbWVudHVtQm91bmNlPSEwKTpuPWgubWluVHJhbnNsYXRlKCksbC5sb29wJiZsLmNlbnRlcmVkU2xpZGVzJiYocj0hMCk7ZWxzZSBpZihsLmZyZWVNb2RlLnN0aWNreSl7bGV0IHQ7Zm9yKGxldCBlPTA7ZTx1Lmxlbmd0aDtlKz0xKWlmKHVbZV0+LW4pe3Q9ZTticmVha31uPS0obj1NYXRoLmFicyh1W3RdLW4pPE1hdGguYWJzKHVbdC0xXS1uKXx8Im5leHQiPT09aC5zd2lwZURpcmVjdGlvbj91W3RdOnVbdC0xXSl9aWYociYmbSgidHJhbnNpdGlvbkVuZCIsKCk9PntoLmxvb3BGaXgoKX0pLDAhPT1oLnZlbG9jaXR5KWU9Yz9NYXRoLmFicygoLW4taC50cmFuc2xhdGUpL2gudmVsb2NpdHkpOk1hdGguYWJzKChuLWgudHJhbnNsYXRlKS9oLnZlbG9jaXR5KSxsLmZyZWVNb2RlLnN0aWNreSYmKHM9TWF0aC5hYnMoKGM/LW46biktaC50cmFuc2xhdGUpLGE9aC5zbGlkZXNTaXplc0dyaWRbaC5hY3RpdmVJbmRleF0sZT1zPGE/bC5zcGVlZDpzPDIqYT8xLjUqbC5zcGVlZDoyLjUqbC5zcGVlZCk7ZWxzZSBpZihsLmZyZWVNb2RlLnN0aWNreSlyZXR1cm4gdm9pZCBoLnNsaWRlVG9DbG9zZXN0KCk7bC5mcmVlTW9kZS5tb21lbnR1bUJvdW5jZSYmdD8oaC51cGRhdGVQcm9ncmVzcyhpKSxoLnNldFRyYW5zaXRpb24oZSksaC5zZXRUcmFuc2xhdGUobiksaC50cmFuc2l0aW9uU3RhcnQoITAsaC5zd2lwZURpcmVjdGlvbiksaC5hbmltYXRpbmc9ITAsZyhkLCgpPT57aCYmIWguZGVzdHJveWVkJiZwLmFsbG93TW9tZW50dW1Cb3VuY2UmJihmKCJtb21lbnR1bUJvdW5jZSIpLGguc2V0VHJhbnNpdGlvbihsLnNwZWVkKSxzZXRUaW1lb3V0KCgpPT57aC5zZXRUcmFuc2xhdGUoaSksZyhkLCgpPT57aCYmIWguZGVzdHJveWVkJiZoLnRyYW5zaXRpb25FbmQoKX0pfSwwKSl9KSk6aC52ZWxvY2l0eT8oZigiX2ZyZWVNb2RlTm9Nb21lbnR1bVJlbGVhc2UiKSxoLnVwZGF0ZVByb2dyZXNzKG4pLGguc2V0VHJhbnNpdGlvbihlKSxoLnNldFRyYW5zbGF0ZShuKSxoLnRyYW5zaXRpb25TdGFydCghMCxoLnN3aXBlRGlyZWN0aW9uKSxoLmFuaW1hdGluZ3x8KGguYW5pbWF0aW5nPSEwLGcoZCwoKT0+e2gmJiFoLmRlc3Ryb3llZCYmaC50cmFuc2l0aW9uRW5kKCl9KSkpOmgudXBkYXRlUHJvZ3Jlc3MobiksaC51cGRhdGVBY3RpdmVJbmRleCgpLGgudXBkYXRlU2xpZGVzQ2xhc3NlcygpfWVsc2V7aWYobC5mcmVlTW9kZS5zdGlja3kpcmV0dXJuIHZvaWQgaC5zbGlkZVRvQ2xvc2VzdCgpO2wuZnJlZU1vZGUmJmYoIl9mcmVlTW9kZU5vTW9tZW50dW1SZWxlYXNlIil9KCFsLmZyZWVNb2RlLm1vbWVudHVtfHxlPj1sLmxvbmdTd2lwZXNNcykmJihmKCJfZnJlZU1vZGVTdGF0aWNSZWxlYXNlIiksaC51cGRhdGVQcm9ncmVzcygpLGgudXBkYXRlQWN0aXZlSW5kZXgoKSxoLnVwZGF0ZVNsaWRlc0NsYXNzZXMoKSl9fX19fSl9LGZ1bmN0aW9uKHtzd2lwZXI6dSxleHRlbmRQYXJhbXM6ZSxvbjp0fSl7ZSh7Z3JpZDp7cm93czoxLGZpbGw6ImNvbHVtbiJ9fSk7bGV0IHAsaCxmLGk7Y29uc3QgbT0oKT0+e2xldCBlPXUucGFyYW1zLnNwYWNlQmV0d2VlbjtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGUmJjA8PWUuaW5kZXhPZigiJSIpP2U9cGFyc2VGbG9hdChlLnJlcGxhY2UoIiUiLCIiKSkvMTAwKnUuc2l6ZToic3RyaW5nIj09dHlwZW9mIGUmJihlPXBhcnNlRmxvYXQoZSkpLGV9O3QoImluaXQiLCgpPT57aT11LnBhcmFtcy5ncmlkJiYxPHUucGFyYW1zLmdyaWQucm93c30pLHQoInVwZGF0ZSIsKCk9Pnt2YXJ7cGFyYW1zOmUsZWw6dH09dSxuPWUuZ3JpZCYmMTxlLmdyaWQucm93cztpJiYhbj8odC5jbGFzc0xpc3QucmVtb3ZlKGUuY29udGFpbmVyTW9kaWZpZXJDbGFzcysiZ3JpZCIsZS5jb250YWluZXJNb2RpZmllckNsYXNzKyJncmlkLWNvbHVtbiIpLGY9MSx1LmVtaXRDb250YWluZXJDbGFzc2VzKCkpOiFpJiZuJiYodC5jbGFzc0xpc3QuYWRkKGUuY29udGFpbmVyTW9kaWZpZXJDbGFzcysiZ3JpZCIpLCJjb2x1bW4iPT09ZS5ncmlkLmZpbGwmJnQuY2xhc3NMaXN0LmFkZChlLmNvbnRhaW5lck1vZGlmaWVyQ2xhc3MrImdyaWQtY29sdW1uIiksdS5lbWl0Q29udGFpbmVyQ2xhc3NlcygpKSxpPW59KSx1LmdyaWQ9e2luaXRTbGlkZXM6ZT0+e3ZhciB0PXUucGFyYW1zWyJzbGlkZXNQZXJWaWV3Il0se3Jvd3M6bixmaWxsOml9PXUucGFyYW1zLmdyaWQsZT0odS52aXJ0dWFsJiZ1LnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQ/dS52aXJ0dWFsLnNsaWRlczplKS5sZW5ndGg7Zj1NYXRoLmZsb29yKGUvbikscD1NYXRoLmZsb29yKGUvbik9PT1lL24/ZTpNYXRoLmNlaWwoZS9uKSpuLCJhdXRvIiE9PXQmJiJyb3ciPT09aSYmKHA9TWF0aC5tYXgocCx0Km4pKSxoPXAvbn0sdW5zZXRTbGlkZXM6KCk9Pnt1LnNsaWRlcyYmdS5zbGlkZXMuZm9yRWFjaChlPT57ZS5zd2lwZXJTbGlkZUdyaWRTZXQmJihlLnN0eWxlLmhlaWdodD0iIixlLnN0eWxlW3UuZ2V0RGlyZWN0aW9uTGFiZWwoIm1hcmdpbi10b3AiKV09IiIpfSl9LHVwZGF0ZVNsaWRlOihlLHQsbik9Pnt2YXIgaSxyLHM9dS5wYXJhbXNbInNsaWRlc1Blckdyb3VwIl0sYT1tKCkse3Jvd3M6byxmaWxsOmx9PXUucGFyYW1zLmdyaWQsbj0odS52aXJ0dWFsJiZ1LnBhcmFtcy52aXJ0dWFsLmVuYWJsZWQ/dS52aXJ0dWFsLnNsaWRlczpuKS5sZW5ndGg7bGV0IGQsYzsicm93Ij09PWwmJjE8cz8ocj1lLW8qcyooaT1NYXRoLmZsb29yKGUvKHMqbykpKSxuPTA9PT1pP3M6TWF0aC5taW4oTWF0aC5jZWlsKChuLWkqbypzKS9vKSxzKSxjPU1hdGguZmxvb3Ioci9uKSxyPShkPXItYypuK2kqcykrYypwL28sdC5zdHlsZS5vcmRlcj1yKToiY29sdW1uIj09PWw/KGQ9TWF0aC5mbG9vcihlL28pLGM9ZS1kKm8sKGQ+Znx8ZD09PWYmJmM9PT1vLTEpJiYoYys9MSk+PW8mJihjPTAsZCs9MSkpOihjPU1hdGguZmxvb3IoZS9oKSxkPWUtYypoKSx0LnJvdz1jLHQuY29sdW1uPWQsdC5zdHlsZS5oZWlnaHQ9YGNhbGMoKDEwMCUgLSAkeyhvLTEpKmF9cHgpIC8gJHtvfSlgLHQuc3R5bGVbdS5nZXREaXJlY3Rpb25MYWJlbCgibWFyZ2luLXRvcCIpXT0wIT09Yz9hJiZhKyJweCI6IiIsdC5zd2lwZXJTbGlkZUdyaWRTZXQ9ITB9LHVwZGF0ZVdyYXBwZXJTaXplOihlLG4pPT57dmFye2NlbnRlcmVkU2xpZGVzOnQscm91bmRMZW5ndGhzOml9PXUucGFyYW1zLHI9bSgpLHM9dS5wYXJhbXMuZ3JpZFsicm93cyJdO2lmKHUudmlydHVhbFNpemU9KGUrcikqcCx1LnZpcnR1YWxTaXplPU1hdGguY2VpbCh1LnZpcnR1YWxTaXplL3MpLXIsdS5wYXJhbXMuY3NzTW9kZXx8KHUud3JhcHBlckVsLnN0eWxlW3UuZ2V0RGlyZWN0aW9uTGFiZWwoIndpZHRoIildPXUudmlydHVhbFNpemUrcisicHgiKSx0KXt2YXIgYT1bXTtmb3IobGV0IHQ9MDt0PG4ubGVuZ3RoO3QrPTEpe2xldCBlPW5bdF07aSYmKGU9TWF0aC5mbG9vcihlKSksblt0XTx1LnZpcnR1YWxTaXplK25bMF0mJmEucHVzaChlKX1uLnNwbGljZSgwLG4ubGVuZ3RoKSxuLnB1c2goLi4uYSl9fX19LGZ1bmN0aW9uKHtzd2lwZXI6ZX0pe09iamVjdC5hc3NpZ24oZSx7YXBwZW5kU2xpZGU6ZnVuY3Rpb24odCl7Y29uc3R7cGFyYW1zOmUsc2xpZGVzRWw6bn09dGhpcztlLmxvb3AmJnRoaXMubG9vcERlc3Ryb3koKTt2YXIgaT1lPT57dmFyIHQ7InN0cmluZyI9PXR5cGVvZiBlPyhNKHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksZSksbi5hcHBlbmQodC5jaGlsZHJlblswXSksTSh0LCIiKSk6bi5hcHBlbmQoZSl9O2lmKCJvYmplY3QiPT10eXBlb2YgdCYmImxlbmd0aCJpbiB0KWZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSs9MSl0W2VdJiZpKHRbZV0pO2Vsc2UgaSh0KTt0aGlzLnJlY2FsY1NsaWRlcygpLGUubG9vcCYmdGhpcy5sb29wQ3JlYXRlKCksZS5vYnNlcnZlciYmIXRoaXMuaXNFbGVtZW50fHx0aGlzLnVwZGF0ZSgpfS5iaW5kKGUpLHByZXBlbmRTbGlkZTpmdW5jdGlvbih0KXtjb25zdHtwYXJhbXM6ZSxhY3RpdmVJbmRleDpuLHNsaWRlc0VsOml9PXRoaXM7ZS5sb29wJiZ0aGlzLmxvb3BEZXN0cm95KCk7bGV0IHI9bisxO3ZhciBzPWU9Pnt2YXIgdDsic3RyaW5nIj09dHlwZW9mIGU/KE0odD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxlKSxpLnByZXBlbmQodC5jaGlsZHJlblswXSksTSh0LCIiKSk6aS5wcmVwZW5kKGUpfTtpZigib2JqZWN0Ij09dHlwZW9mIHQmJiJsZW5ndGgiaW4gdCl7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKz0xKXRbZV0mJnModFtlXSk7cj1uK3QubGVuZ3RofWVsc2Ugcyh0KTt0aGlzLnJlY2FsY1NsaWRlcygpLGUubG9vcCYmdGhpcy5sb29wQ3JlYXRlKCksZS5vYnNlcnZlciYmIXRoaXMuaXNFbGVtZW50fHx0aGlzLnVwZGF0ZSgpLHRoaXMuc2xpZGVUbyhyLDAsITEpfS5iaW5kKGUpLGFkZFNsaWRlOmZ1bmN0aW9uKHQsbil7dmFyIGk9dGhpcyx7cGFyYW1zOnIsYWN0aXZlSW5kZXg6cyxzbGlkZXNFbDphfT1pO2xldCBvPXM7aWYoci5sb29wJiYoby09aS5sb29wZWRTbGlkZXMsaS5sb29wRGVzdHJveSgpLGkucmVjYWxjU2xpZGVzKCkpLHM9aS5zbGlkZXMubGVuZ3RoLHQ8PTApaS5wcmVwZW5kU2xpZGUobik7ZWxzZSBpZihzPD10KWkuYXBwZW5kU2xpZGUobik7ZWxzZXtsZXQgZT1vPnQ/bysxOm87dmFyIGw9W107Zm9yKGxldCBlPXMtMTtlPj10Oy0tZSl7dmFyIGQ9aS5zbGlkZXNbZV07ZC5yZW1vdmUoKSxsLnVuc2hpZnQoZCl9aWYoIm9iamVjdCI9PXR5cGVvZiBuJiYibGVuZ3RoImluIG4pe2ZvcihsZXQgZT0wO2U8bi5sZW5ndGg7ZSs9MSluW2VdJiZhLmFwcGVuZChuW2VdKTtlPW8+dD9vK24ubGVuZ3RoOm99ZWxzZSBhLmFwcGVuZChuKTtmb3IobGV0IGU9MDtlPGwubGVuZ3RoO2UrPTEpYS5hcHBlbmQobFtlXSk7aS5yZWNhbGNTbGlkZXMoKSxyLmxvb3AmJmkubG9vcENyZWF0ZSgpLHIub2JzZXJ2ZXImJiFpLmlzRWxlbWVudHx8aS51cGRhdGUoKSxyLmxvb3A/aS5zbGlkZVRvKGUraS5sb29wZWRTbGlkZXMsMCwhMSk6aS5zbGlkZVRvKGUsMCwhMSl9fS5iaW5kKGUpLHJlbW92ZVNsaWRlOmZ1bmN0aW9uKHQpe3ZhciBuPXRoaXMse3BhcmFtczplLGFjdGl2ZUluZGV4Oml9PW47bGV0IHI9aSxzPShlLmxvb3AmJihyLT1uLmxvb3BlZFNsaWRlcyxuLmxvb3BEZXN0cm95KCkpLHIpLGE7aWYoIm9iamVjdCI9PXR5cGVvZiB0JiYibGVuZ3RoImluIHQpZm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKz0xKWE9dFtlXSxuLnNsaWRlc1thXSYmbi5zbGlkZXNbYV0ucmVtb3ZlKCksYTxzJiYtLXM7ZWxzZSBhPXQsbi5zbGlkZXNbYV0mJm4uc2xpZGVzW2FdLnJlbW92ZSgpLGE8cyYmLS1zO3M9TWF0aC5tYXgocywwKSxuLnJlY2FsY1NsaWRlcygpLGUubG9vcCYmbi5sb29wQ3JlYXRlKCksZS5vYnNlcnZlciYmIW4uaXNFbGVtZW50fHxuLnVwZGF0ZSgpLGUubG9vcD9uLnNsaWRlVG8ocytuLmxvb3BlZFNsaWRlcywwLCExKTpuLnNsaWRlVG8ocywwLCExKX0uYmluZChlKSxyZW1vdmVBbGxTbGlkZXM6ZnVuY3Rpb24oKXt2YXIgdD1bXTtmb3IobGV0IGU9MDtlPHRoaXMuc2xpZGVzLmxlbmd0aDtlKz0xKXQucHVzaChlKTt0aGlzLnJlbW92ZVNsaWRlKHQpfS5iaW5kKGUpfSl9LGZ1bmN0aW9uKHtzd2lwZXI6cyxleHRlbmRQYXJhbXM6ZSxvbjp0fSl7ZSh7ZmFkZUVmZmVjdDp7Y3Jvc3NGYWRlOiExfX0pLG0oe2VmZmVjdDoiZmFkZSIsc3dpcGVyOnMsb246dCxzZXRUcmFuc2xhdGU6KCk9Pnt2YXIgZT1zWyJzbGlkZXMiXTtzLnBhcmFtcy5mYWRlRWZmZWN0O2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bis9MSl7dmFyIGk9cy5zbGlkZXNbbl07bGV0IGU9LWkuc3dpcGVyU2xpZGVPZmZzZXQsdD0ocy5wYXJhbXMudmlydHVhbFRyYW5zbGF0ZXx8KGUtPXMudHJhbnNsYXRlKSwwKTtzLmlzSG9yaXpvbnRhbCgpfHwodD1lLGU9MCk7dmFyIHI9cy5wYXJhbXMuZmFkZUVmZmVjdC5jcm9zc0ZhZGU/TWF0aC5tYXgoMS1NYXRoLmFicyhpLnByb2dyZXNzKSwwKToxK01hdGgubWluKE1hdGgubWF4KGkucHJvZ3Jlc3MsLTEpLDApLGk9eCgwLGkpO2kuc3R5bGUub3BhY2l0eT1yLGkuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgke2V9cHgsICR7dH1weCwgMHB4KWB9fSxzZXRUcmFuc2l0aW9uOnQ9Pnt2YXIgZT1zLnNsaWRlcy5tYXAoZT0+YShlKSk7ZS5mb3JFYWNoKGU9PntlLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj10KyJtcyJ9KSxpKHtzd2lwZXI6cyxkdXJhdGlvbjp0LHRyYW5zZm9ybUVsZW1lbnRzOmUsYWxsU2xpZGVzOiEwfSl9LG92ZXJ3cml0ZVBhcmFtczooKT0+KHtzbGlkZXNQZXJWaWV3OjEsc2xpZGVzUGVyR3JvdXA6MSx3YXRjaFNsaWRlc1Byb2dyZXNzOiEwLHNwYWNlQmV0d2VlbjowLHZpcnR1YWxUcmFuc2xhdGU6IXMucGFyYW1zLmNzc01vZGV9KX0pfSxmdW5jdGlvbih7c3dpcGVyOnksZXh0ZW5kUGFyYW1zOmUsb246dH0pe2Uoe2N1YmVFZmZlY3Q6e3NsaWRlU2hhZG93czohMCxzaGFkb3c6ITAsc2hhZG93T2Zmc2V0OjIwLHNoYWRvd1NjYWxlOi45NH19KTtjb25zdCBiPShlLHQsbik9PntsZXQgaT1uP2UucXVlcnlTZWxlY3RvcigiLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCIpOmUucXVlcnlTZWxlY3RvcigiLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIikscj1uP2UucXVlcnlTZWxlY3RvcigiLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQiKTplLnF1ZXJ5U2VsZWN0b3IoIi5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSIpO2l8fChpPVMoImRpdiIsKCJzd2lwZXItc2xpZGUtc2hhZG93LWN1YmUgc3dpcGVyLXNsaWRlLXNoYWRvdy0iKyhuPyJsZWZ0IjoidG9wIikpLnNwbGl0KCIgIikpLGUuYXBwZW5kKGkpKSxyfHwocj1TKCJkaXYiLCgic3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlIHN3aXBlci1zbGlkZS1zaGFkb3ctIisobj8icmlnaHQiOiJib3R0b20iKSkuc3BsaXQoIiAiKSksZS5hcHBlbmQocikpLGkmJihpLnN0eWxlLm9wYWNpdHk9TWF0aC5tYXgoLXQsMCkpLHImJihyLnN0eWxlLm9wYWNpdHk9TWF0aC5tYXgodCwwKSl9O20oe2VmZmVjdDoiY3ViZSIsc3dpcGVyOnksb246dCxzZXRUcmFuc2xhdGU6KCk9Pnt2YXIgZSx7ZWw6dCx3cmFwcGVyRWw6bixzbGlkZXM6byx3aWR0aDppLGhlaWdodDpyLHJ0bFRyYW5zbGF0ZTpsLHNpemU6ZCxicm93c2VyOnN9PXksYz13KHkpLHU9eS5wYXJhbXMuY3ViZUVmZmVjdCxwPXkuaXNIb3Jpem9udGFsKCksaD15LnZpcnR1YWwmJnkucGFyYW1zLnZpcnR1YWwuZW5hYmxlZDtsZXQgZj0wLGE7dS5zaGFkb3cmJihwPygoYT15LndyYXBwZXJFbC5xdWVyeVNlbGVjdG9yKCIuc3dpcGVyLWN1YmUtc2hhZG93IikpfHwoYT1TKCJkaXYiLCJzd2lwZXItY3ViZS1zaGFkb3ciKSx5LndyYXBwZXJFbC5hcHBlbmQoYSkpLGEuc3R5bGUuaGVpZ2h0PWkrInB4Iik6KGE9dC5xdWVyeVNlbGVjdG9yKCIuc3dpcGVyLWN1YmUtc2hhZG93IikpfHwoYT1TKCJkaXYiLCJzd2lwZXItY3ViZS1zaGFkb3ciKSx0LmFwcGVuZChhKSkpO2ZvcihsZXQgYT0wO2E8by5sZW5ndGg7YSs9MSl7dmFyIG09b1thXTtsZXQgZT1hLHQ9OTAqKGU9aD9wYXJzZUludChtLmdldEF0dHJpYnV0ZSgiZGF0YS1zd2lwZXItc2xpZGUtaW5kZXgiKSwxMCk6ZSksbj1NYXRoLmZsb29yKHQvMzYwKTtsJiYodD0tdCxuPU1hdGguZmxvb3IoLXQvMzYwKSk7dmFyIGc9TWF0aC5tYXgoTWF0aC5taW4obS5wcm9ncmVzcywxKSwtMSk7bGV0IGk9MCxyPTAscz0wO2UlND09MD8oaT00Ki1uKmQscz0wKTooZS0xKSU0PT0wPyhpPTAscz00Ki1uKmQpOihlLTIpJTQ9PTA/KGk9ZCs0Km4qZCxzPWQpOihlLTMpJTQ9PTAmJihpPS1kLHM9MypkKzQqZCpuKSxsJiYoaT0taSkscHx8KHI9aSxpPTApO3ZhciB2PWByb3RhdGVYKCR7YyhwPzA6LXQpfWRlZykgcm90YXRlWSgke2MocD90OjApfWRlZykgdHJhbnNsYXRlM2QoJHtpfXB4LCAke3J9cHgsICR7c31weClgO2c8PTEmJi0xPGcmJihmPTkwKmUrOTAqZyxsKSYmKGY9OTAqLWUtOTAqZyksbS5zdHlsZS50cmFuc2Zvcm09dix1LnNsaWRlU2hhZG93cyYmYihtLGcscCl9bi5zdHlsZS50cmFuc2Zvcm1PcmlnaW49YDUwJSA1MCUgLSR7ZC8yfXB4YCxuLnN0eWxlWyItd2Via2l0LXRyYW5zZm9ybS1vcmlnaW4iXT1gNTAlIDUwJSAtJHtkLzJ9cHhgLHUuc2hhZG93JiYocD9hLnN0eWxlLnRyYW5zZm9ybT1gdHJhbnNsYXRlM2QoMHB4LCAke2kvMit1LnNoYWRvd09mZnNldH1weCwgJHstaS8yfXB4KSByb3RhdGVYKDg5Ljk5ZGVnKSByb3RhdGVaKDBkZWcpIHNjYWxlKCR7dS5zaGFkb3dTY2FsZX0pYDoodD1NYXRoLmFicyhmKS05MCpNYXRoLmZsb29yKE1hdGguYWJzKGYpLzkwKSxpPTEuNS0oTWF0aC5zaW4oMip0Kk1hdGguUEkvMzYwKS8yK01hdGguY29zKDIqdCpNYXRoLlBJLzM2MCkvMiksdD11LnNoYWRvd1NjYWxlLGk9dS5zaGFkb3dTY2FsZS9pLGU9dS5zaGFkb3dPZmZzZXQsYS5zdHlsZS50cmFuc2Zvcm09YHNjYWxlM2QoJHt0fSwgMSwgJHtpfSkgdHJhbnNsYXRlM2QoMHB4LCAke3IvMitlfXB4LCAkey1yLzIvaX1weCkgcm90YXRlWCgtODkuOTlkZWcpYCkpO3Q9KHMuaXNTYWZhcml8fHMuaXNXZWJWaWV3KSYmcy5uZWVkUGVyc3BlY3RpdmVGaXg/LWQvMjowO24uc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGUzZCgwcHgsMCwke3R9cHgpIHJvdGF0ZVgoJHtjKHkuaXNIb3Jpem9udGFsKCk/MDpmKX1kZWcpIHJvdGF0ZVkoJHtjKHkuaXNIb3Jpem9udGFsKCk/LWY6MCl9ZGVnKWAsbi5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1zd2lwZXItY3ViZS10cmFuc2xhdGUteiIsdCsicHgiKX0sc2V0VHJhbnNpdGlvbjp0PT57dmFye2VsOmUsc2xpZGVzOm59PXk7bi5mb3JFYWNoKGU9PntlLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj10KyJtcyIsZS5xdWVyeVNlbGVjdG9yQWxsKCIuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQiKS5mb3JFYWNoKGU9PntlLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj10KyJtcyJ9KX0pLHkucGFyYW1zLmN1YmVFZmZlY3Quc2hhZG93JiYheS5pc0hvcml6b250YWwoKSYmKG49ZS5xdWVyeVNlbGVjdG9yKCIuc3dpcGVyLWN1YmUtc2hhZG93IikpJiYobi5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249dCsibXMiKX0scmVjcmVhdGVTaGFkb3dzOigpPT57Y29uc3Qgbj15LmlzSG9yaXpvbnRhbCgpO3kuc2xpZGVzLmZvckVhY2goZT0+e3ZhciB0PU1hdGgubWF4KE1hdGgubWluKGUucHJvZ3Jlc3MsMSksLTEpO2IoZSx0LG4pfSl9LGdldEVmZmVjdFBhcmFtczooKT0+eS5wYXJhbXMuY3ViZUVmZmVjdCxwZXJzcGVjdGl2ZTooKT0+ITAsb3ZlcndyaXRlUGFyYW1zOigpPT4oe3NsaWRlc1BlclZpZXc6MSxzbGlkZXNQZXJHcm91cDoxLHdhdGNoU2xpZGVzUHJvZ3Jlc3M6ITAscmVzaXN0YW5jZVJhdGlvOjAsc3BhY2VCZXR3ZWVuOjAsY2VudGVyZWRTbGlkZXM6ITEsdmlydHVhbFRyYW5zbGF0ZTohMH0pfSl9LGZ1bmN0aW9uKHtzd2lwZXI6cCxleHRlbmRQYXJhbXM6ZSxvbjp0fSl7ZSh7ZmxpcEVmZmVjdDp7c2xpZGVTaGFkb3dzOiEwLGxpbWl0Um90YXRpb246ITB9fSk7Y29uc3QgaD0oZSx0KT0+e2xldCBuPXAuaXNIb3Jpem9udGFsKCk/ZS5xdWVyeVNlbGVjdG9yKCIuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0Iik6ZS5xdWVyeVNlbGVjdG9yKCIuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AiKSxpPXAuaXNIb3Jpem9udGFsKCk/ZS5xdWVyeVNlbGVjdG9yKCIuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCIpOmUucXVlcnlTZWxlY3RvcigiLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIik7bj1ufHxFKCJmbGlwIixlLHAuaXNIb3Jpem9udGFsKCk/ImxlZnQiOiJ0b3AiKSxpPWl8fEUoImZsaXAiLGUscC5pc0hvcml6b250YWwoKT8icmlnaHQiOiJib3R0b20iKSxuJiYobi5zdHlsZS5vcGFjaXR5PU1hdGgubWF4KC10LDApKSxpJiYoaS5zdHlsZS5vcGFjaXR5PU1hdGgubWF4KHQsMCkpfTttKHtlZmZlY3Q6ImZsaXAiLHN3aXBlcjpwLG9uOnQsc2V0VHJhbnNsYXRlOigpPT57dmFye3NsaWRlczphLHJ0bFRyYW5zbGF0ZTpvfT1wLGw9cC5wYXJhbXMuZmxpcEVmZmVjdCxkPXcocCk7Zm9yKGxldCBzPTA7czxhLmxlbmd0aDtzKz0xKXt2YXIgYz1hW3NdO2xldCBlPWMucHJvZ3Jlc3M7cC5wYXJhbXMuZmxpcEVmZmVjdC5saW1pdFJvdGF0aW9uJiYoZT1NYXRoLm1heChNYXRoLm1pbihjLnByb2dyZXNzLDEpLC0xKSk7dmFyIHU9Yy5zd2lwZXJTbGlkZU9mZnNldDtsZXQgdD0tMTgwKmUsbj0wLGk9cC5wYXJhbXMuY3NzTW9kZT8tdS1wLnRyYW5zbGF0ZTotdSxyPTA7cC5pc0hvcml6b250YWwoKT9vJiYodD0tdCk6KHI9aSxpPTAsbj0tdCx0PTApLGMuc3R5bGUuekluZGV4PS1NYXRoLmFicyhNYXRoLnJvdW5kKGUpKSthLmxlbmd0aCxsLnNsaWRlU2hhZG93cyYmaChjLGUpO3U9YHRyYW5zbGF0ZTNkKCR7aX1weCwgJHtyfXB4LCAwcHgpIHJvdGF0ZVgoJHtkKG4pfWRlZykgcm90YXRlWSgke2QodCl9ZGVnKWA7eCgwLGMpLnN0eWxlLnRyYW5zZm9ybT11fX0sc2V0VHJhbnNpdGlvbjp0PT57dmFyIGU9cC5zbGlkZXMubWFwKGU9PmEoZSkpO2UuZm9yRWFjaChlPT57ZS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249dCsibXMiLGUucXVlcnlTZWxlY3RvckFsbCgiLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IikuZm9yRWFjaChlPT57ZS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249dCsibXMifSl9KSxpKHtzd2lwZXI6cCxkdXJhdGlvbjp0LHRyYW5zZm9ybUVsZW1lbnRzOmV9KX0scmVjcmVhdGVTaGFkb3dzOigpPT57cC5wYXJhbXMuZmxpcEVmZmVjdCxwLnNsaWRlcy5mb3JFYWNoKGU9PntsZXQgdD1lLnByb2dyZXNzO3AucGFyYW1zLmZsaXBFZmZlY3QubGltaXRSb3RhdGlvbiYmKHQ9TWF0aC5tYXgoTWF0aC5taW4oZS5wcm9ncmVzcywxKSwtMSkpLGgoZSx0KX0pfSxnZXRFZmZlY3RQYXJhbXM6KCk9PnAucGFyYW1zLmZsaXBFZmZlY3QscGVyc3BlY3RpdmU6KCk9PiEwLG92ZXJ3cml0ZVBhcmFtczooKT0+KHtzbGlkZXNQZXJWaWV3OjEsc2xpZGVzUGVyR3JvdXA6MSx3YXRjaFNsaWRlc1Byb2dyZXNzOiEwLHNwYWNlQmV0d2VlbjowLHZpcnR1YWxUcmFuc2xhdGU6IXAucGFyYW1zLmNzc01vZGV9KX0pfSxmdW5jdGlvbih7c3dpcGVyOmksZXh0ZW5kUGFyYW1zOmUsb246dH0pe2Uoe2NvdmVyZmxvd0VmZmVjdDp7cm90YXRlOjUwLHN0cmV0Y2g6MCxkZXB0aDoxMDAsc2NhbGU6MSxtb2RpZmllcjoxLHNsaWRlU2hhZG93czohMH19KSxtKHtlZmZlY3Q6ImNvdmVyZmxvdyIsc3dpcGVyOmksb246dCxzZXRUcmFuc2xhdGU6KCk9Pnt2YXJ7d2lkdGg6ZSxoZWlnaHQ6dCxzbGlkZXM6bCxzbGlkZXNTaXplc0dyaWQ6ZH09aSxjPWkucGFyYW1zLmNvdmVyZmxvd0VmZmVjdCx1PWkuaXNIb3Jpem9udGFsKCksbj1pLnRyYW5zbGF0ZSxwPXU/ZS8yLW46dC8yLW4saD11P2Mucm90YXRlOi1jLnJvdGF0ZSxmPWMuZGVwdGgsbT13KGkpO2ZvcihsZXQgbz0wLGU9bC5sZW5ndGg7bzxlO28rPTEpe3ZhciBnPWxbb10sdj1kW29dLHk9KHAtZy5zd2lwZXJTbGlkZU9mZnNldC12LzIpL3YseT0iZnVuY3Rpb24iPT10eXBlb2YgYy5tb2RpZmllcj9jLm1vZGlmaWVyKHkpOnkqYy5tb2RpZmllcjtsZXQgZT11P2gqeTowLHQ9dT8wOmgqeSxuPS1mKk1hdGguYWJzKHkpLGk9Yy5zdHJldGNoLHI9KCJzdHJpbmciPT10eXBlb2YgaSYmLTEhPT1pLmluZGV4T2YoIiUiKSYmKGk9cGFyc2VGbG9hdChjLnN0cmV0Y2gpLzEwMCp2KSx1PzA6aSp5KSxzPXU/aSp5OjAsYT0xLSgxLWMuc2NhbGUpKk1hdGguYWJzKHkpO01hdGguYWJzKHMpPC4wMDEmJihzPTApLE1hdGguYWJzKHIpPC4wMDEmJihyPTApLE1hdGguYWJzKG4pPC4wMDEmJihuPTApLE1hdGguYWJzKGUpPC4wMDEmJihlPTApLE1hdGguYWJzKHQpPC4wMDEmJih0PTApLE1hdGguYWJzKGEpPC4wMDEmJihhPTApO3Y9YHRyYW5zbGF0ZTNkKCR7c31weCwke3J9cHgsJHtufXB4KSAgcm90YXRlWCgke20odCl9ZGVnKSByb3RhdGVZKCR7bShlKX1kZWcpIHNjYWxlKCR7YX0pYDtpZih4KDAsZykuc3R5bGUudHJhbnNmb3JtPXYsZy5zdHlsZS56SW5kZXg9MS1NYXRoLmFicyhNYXRoLnJvdW5kKHkpKSxjLnNsaWRlU2hhZG93cyl7bGV0IGU9dT9nLnF1ZXJ5U2VsZWN0b3IoIi5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQiKTpnLnF1ZXJ5U2VsZWN0b3IoIi5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCIpLHQ9dT9nLnF1ZXJ5U2VsZWN0b3IoIi5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0Iik6Zy5xdWVyeVNlbGVjdG9yKCIuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20iKTtlPWV8fEUoImNvdmVyZmxvdyIsZyx1PyJsZWZ0IjoidG9wIiksdD10fHxFKCJjb3ZlcmZsb3ciLGcsdT8icmlnaHQiOiJib3R0b20iKSxlJiYoZS5zdHlsZS5vcGFjaXR5PTA8eT95OjApLHQmJih0LnN0eWxlLm9wYWNpdHk9MDwteT8teTowKX19fSxzZXRUcmFuc2l0aW9uOnQ9PntpLnNsaWRlcy5tYXAoZT0+YShlKSkuZm9yRWFjaChlPT57ZS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249dCsibXMiLGUucXVlcnlTZWxlY3RvckFsbCgiLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IikuZm9yRWFjaChlPT57ZS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249dCsibXMifSl9KX0scGVyc3BlY3RpdmU6KCk9PiEwLG92ZXJ3cml0ZVBhcmFtczooKT0+KHt3YXRjaFNsaWRlc1Byb2dyZXNzOiEwfSl9KX0sZnVuY3Rpb24oe3N3aXBlcjp2LGV4dGVuZFBhcmFtczplLG9uOnR9KXtlKHtjcmVhdGl2ZUVmZmVjdDp7bGltaXRQcm9ncmVzczoxLHNoYWRvd1BlclByb2dyZXNzOiExLHByb2dyZXNzTXVsdGlwbGllcjoxLHBlcnNwZWN0aXZlOiEwLHByZXY6e3RyYW5zbGF0ZTpbMCwwLDBdLHJvdGF0ZTpbMCwwLDBdLG9wYWNpdHk6MSxzY2FsZToxfSxuZXh0Ont0cmFuc2xhdGU6WzAsMCwwXSxyb3RhdGU6WzAsMCwwXSxvcGFjaXR5OjEsc2NhbGU6MX19fSksbSh7ZWZmZWN0OiJjcmVhdGl2ZSIsc3dpcGVyOnYsb246dCxzZXRUcmFuc2xhdGU6KCk9Pnt2YXJ7c2xpZGVzOnIsd3JhcHBlckVsOmUsc2xpZGVzU2l6ZXNHcmlkOnR9PXYscz12LnBhcmFtcy5jcmVhdGl2ZUVmZmVjdDtjb25zdCBhPXNbInByb2dyZXNzTXVsdGlwbGllciJdO3ZhciBvPXYucGFyYW1zLmNlbnRlcmVkU2xpZGVzLGw9dyh2KTtvJiYodD10WzBdLzItdi5wYXJhbXMuc2xpZGVzT2Zmc2V0QmVmb3JlfHwwLGUuc3R5bGUudHJhbnNmb3JtPWB0cmFuc2xhdGVYKGNhbGMoNTAlIC0gJHt0fXB4KSlgKTtmb3IobGV0IG49MDtuPHIubGVuZ3RoO24rPTEpe3ZhciBkPXJbbl0sYz1kLnByb2dyZXNzO2NvbnN0IGY9TWF0aC5taW4oTWF0aC5tYXgoZC5wcm9ncmVzcywtcy5saW1pdFByb2dyZXNzKSxzLmxpbWl0UHJvZ3Jlc3MpO2xldCBlPWY7b3x8KGU9TWF0aC5taW4oTWF0aC5tYXgoZC5vcmlnaW5hbFByb2dyZXNzLC1zLmxpbWl0UHJvZ3Jlc3MpLHMubGltaXRQcm9ncmVzcykpO3ZhciB1PWQuc3dpcGVyU2xpZGVPZmZzZXQ7Y29uc3QgbT1bdi5wYXJhbXMuY3NzTW9kZT8tdS12LnRyYW5zbGF0ZTotdSwwLDBdLGc9WzAsMCwwXTtsZXQgdD0hMSxpPSh2LmlzSG9yaXpvbnRhbCgpfHwobVsxXT1tWzBdLG1bMF09MCkse3RyYW5zbGF0ZTpbMCwwLDBdLHJvdGF0ZTpbMCwwLDBdLHNjYWxlOjEsb3BhY2l0eToxfSk7ZjwwPyhpPXMubmV4dCx0PSEwKTowPGYmJihpPXMucHJldix0PSEwKSxtLmZvckVhY2goKGUsdCk9PnttW3RdPWBjYWxjKCR7ZX1weCArICgke2U9aS50cmFuc2xhdGVbdF0sInN0cmluZyI9PXR5cGVvZiBlP2U6ZSsicHgifSAqICR7TWF0aC5hYnMoZiphKX0pKWB9KSxnLmZvckVhY2goKGUsdCk9Pnt2YXIgbj1pLnJvdGF0ZVt0XSpNYXRoLmFicyhmKmEpO2dbdF09bn0pLGQuc3R5bGUuekluZGV4PS1NYXRoLmFicyhNYXRoLnJvdW5kKGMpKStyLmxlbmd0aDt2YXIgdT1tLmpvaW4oIiwgIiksYz1gcm90YXRlWCgke2woZ1swXSl9ZGVnKSByb3RhdGVZKCR7bChnWzFdKX1kZWcpIHJvdGF0ZVooJHtsKGdbMl0pfWRlZylgLHA9ZTwwP2BzY2FsZSgkezErKDEtaS5zY2FsZSkqZSphfSlgOmBzY2FsZSgkezEtKDEtaS5zY2FsZSkqZSphfSlgLGg9ZTwwPzErKDEtaS5vcGFjaXR5KSplKmE6MS0oMS1pLm9wYWNpdHkpKmUqYSx1PWB0cmFuc2xhdGUzZCgke3V9KSAke2N9IGArcDtpZih0JiZpLnNoYWRvd3x8IXQpe2xldCBlPWQucXVlcnlTZWxlY3RvcigiLnN3aXBlci1zbGlkZS1zaGFkb3ciKTsoZT0hZSYmaS5zaGFkb3c/RSgiY3JlYXRpdmUiLGQpOmUpJiYoYz1zLnNoYWRvd1BlclByb2dyZXNzP2YqKDEvcy5saW1pdFByb2dyZXNzKTpmLGUuc3R5bGUub3BhY2l0eT1NYXRoLm1pbihNYXRoLm1heChNYXRoLmFicyhjKSwwKSwxKSl9cD14KDAsZCk7cC5zdHlsZS50cmFuc2Zvcm09dSxwLnN0eWxlLm9wYWNpdHk9aCxpLm9yaWdpbiYmKHAuc3R5bGUudHJhbnNmb3JtT3JpZ2luPWkub3JpZ2luKX19LHNldFRyYW5zaXRpb246dD0+e3ZhciBlPXYuc2xpZGVzLm1hcChlPT5hKGUpKTtlLmZvckVhY2goZT0+e2Uuc3R5bGUudHJhbnNpdGlvbkR1cmF0aW9uPXQrIm1zIixlLnF1ZXJ5U2VsZWN0b3JBbGwoIi5zd2lwZXItc2xpZGUtc2hhZG93IikuZm9yRWFjaChlPT57ZS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249dCsibXMifSl9KSxpKHtzd2lwZXI6dixkdXJhdGlvbjp0LHRyYW5zZm9ybUVsZW1lbnRzOmUsYWxsU2xpZGVzOiEwfSl9LHBlcnNwZWN0aXZlOigpPT52LnBhcmFtcy5jcmVhdGl2ZUVmZmVjdC5wZXJzcGVjdGl2ZSxvdmVyd3JpdGVQYXJhbXM6KCk9Pih7d2F0Y2hTbGlkZXNQcm9ncmVzczohMCx2aXJ0dWFsVHJhbnNsYXRlOiF2LnBhcmFtcy5jc3NNb2RlfSl9KX0sZnVuY3Rpb24oe3N3aXBlcjp3LGV4dGVuZFBhcmFtczplLG9uOnR9KXtlKHtjYXJkc0VmZmVjdDp7c2xpZGVTaGFkb3dzOiEwLHJvdGF0ZTohMCxwZXJTbGlkZVJvdGF0ZToyLHBlclNsaWRlT2Zmc2V0Ojh9fSksbSh7ZWZmZWN0OiJjYXJkcyIsc3dpcGVyOncsb246dCxzZXRUcmFuc2xhdGU6KCk9Pnt2YXJ7c2xpZGVzOm8sYWN0aXZlSW5kZXg6bCxydGxUcmFuc2xhdGU6ZH09dyxjPXcucGFyYW1zLmNhcmRzRWZmZWN0LHtzdGFydFRyYW5zbGF0ZTp1LGlzVG91Y2hlZDpwfT13LnRvdWNoRXZlbnRzRGF0YSxoPWQ/LXcudHJhbnNsYXRlOncudHJhbnNsYXRlO2ZvcihsZXQgYT0wO2E8by5sZW5ndGg7YSs9MSl7dmFyIGY9b1thXSxtPWYucHJvZ3Jlc3MsZz1NYXRoLm1pbihNYXRoLm1heChtLC00KSw0KTtsZXQgZT1mLnN3aXBlclNsaWRlT2Zmc2V0LHQ9KHcucGFyYW1zLmNlbnRlcmVkU2xpZGVzJiYhdy5wYXJhbXMuY3NzTW9kZSYmKHcud3JhcHBlckVsLnN0eWxlLnRyYW5zZm9ybT1gdHJhbnNsYXRlWCgke3cubWluVHJhbnNsYXRlKCl9cHgpYCksdy5wYXJhbXMuY2VudGVyZWRTbGlkZXMmJncucGFyYW1zLmNzc01vZGUmJihlLT1vWzBdLnN3aXBlclNsaWRlT2Zmc2V0KSx3LnBhcmFtcy5jc3NNb2RlPy1lLXcudHJhbnNsYXRlOi1lKSxuPTA7dmFyIHY9LTEwMCpNYXRoLmFicyhnKTtsZXQgaT0xLHI9LWMucGVyU2xpZGVSb3RhdGUqZyxzPWMucGVyU2xpZGVPZmZzZXQtLjc1Kk1hdGguYWJzKGcpO3ZhciB5PXcudmlydHVhbCYmdy5wYXJhbXMudmlydHVhbC5lbmFibGVkP3cudmlydHVhbC5mcm9tK2E6YSxiPSh5PT09bHx8eT09PWwtMSkmJjA8ZyYmZzwxJiYocHx8dy5wYXJhbXMuY3NzTW9kZSkmJmg8dSx5PSh5PT09bHx8eT09PWwrMSkmJmc8MCYmLTE8ZyYmKHB8fHcucGFyYW1zLmNzc01vZGUpJiZ1PGgsYj0oKGJ8fHkpJiYoYj0oMS1NYXRoLmFicygoTWF0aC5hYnMoZyktLjUpLy41KSkqKi41LHIrPS0yOCpnKmIsaSs9LS41KmIscys9OTYqYixuPShjLnJvdGF0ZXx8dy5pc0hvcml6b250YWwoKT8tMjU6MCkqYipNYXRoLmFicyhnKSsiJSIpLGc8MD90PWBjYWxjKCR7dH1weCAke2Q/Ii0iOiIrIn0gKCR7cypNYXRoLmFicyhnKX0lKSlgOjA8Zz90PWBjYWxjKCR7dH1weCAke2Q/Ii0iOiIrIn0gKC0ke3MqTWF0aC5hYnMoZyl9JSkpYDp0Kz0icHgiLHcuaXNIb3Jpem9udGFsKCl8fCh5PW4sbj10LHQ9eSksZzwwPyIiKygxKygxLWkpKmcpOiIiKygxLSgxLWkpKmcpKSx5PWAKICAgICAgICB0cmFuc2xhdGUzZCgke3R9LCAke259LCAke3Z9cHgpCiAgICAgICAgcm90YXRlWigke2Mucm90YXRlP2Q/LXI6cjowfWRlZykKICAgICAgICBzY2FsZSgke2J9KQogICAgICBgO2lmKGMuc2xpZGVTaGFkb3dzKXtsZXQgZT1mLnF1ZXJ5U2VsZWN0b3IoIi5zd2lwZXItc2xpZGUtc2hhZG93Iik7KGU9ZXx8RSgiY2FyZHMiLGYpKSYmKGUuc3R5bGUub3BhY2l0eT1NYXRoLm1pbihNYXRoLm1heCgoTWF0aC5hYnMoZyktLjUpLy41LDApLDEpKX1mLnN0eWxlLnpJbmRleD0tTWF0aC5hYnMoTWF0aC5yb3VuZChtKSkrby5sZW5ndGgseCgwLGYpLnN0eWxlLnRyYW5zZm9ybT15fX0sc2V0VHJhbnNpdGlvbjp0PT57dmFyIGU9dy5zbGlkZXMubWFwKGU9PmEoZSkpO2UuZm9yRWFjaChlPT57ZS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb249dCsibXMiLGUucXVlcnlTZWxlY3RvckFsbCgiLnN3aXBlci1zbGlkZS1zaGFkb3ciKS5mb3JFYWNoKGU9PntlLnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbj10KyJtcyJ9KX0pLGkoe3N3aXBlcjp3LGR1cmF0aW9uOnQsdHJhbnNmb3JtRWxlbWVudHM6ZX0pfSxwZXJzcGVjdGl2ZTooKT0+ITAsb3ZlcndyaXRlUGFyYW1zOigpPT4oe19sb29wU3dhcFJlc2V0OiExLHdhdGNoU2xpZGVzUHJvZ3Jlc3M6ITAsbG9vcEFkZGl0aW9uYWxTbGlkZXM6dy5wYXJhbXMuY2FyZHNFZmZlY3Qucm90YXRlPzM6MixjZW50ZXJlZFNsaWRlczohMCx2aXJ0dWFsVHJhbnNsYXRlOiF3LnBhcmFtcy5jc3NNb2RlfSl9KX1dKSxmfSgpKTshZnVuY3Rpb24obil7ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJqcXVlcnkiXSxuKToib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlLmV4cG9ydHM/bW9kdWxlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/cmVxdWlyZSgianF1ZXJ5Iik6cmVxdWlyZSgianF1ZXJ5IikoZSkpLG4odCksdH06bihqUXVlcnkpfShmdW5jdGlvbih0KXsoZT10JiZ0LmZuJiZ0LmZuLnNlbGVjdDImJnQuZm4uc2VsZWN0Mi5hbWQ/dC5mbi5zZWxlY3QyLmFtZDplKSYmZS5yZXF1aXJlanN8fChlP249ZTplPXt9LG09e30sZz17fSx2PXt9LHk9e30saT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LHI9W10uc2xpY2UsYj0vXC5qcyQvLGg9ZnVuY3Rpb24oZSx0KXt2YXIgbixpLHI9ZChlKSxzPXJbMF0sdD10WzFdO3JldHVybiBlPXJbMV0scyYmKG49RShzPWwocyx0KSkpLHM/ZT1uJiZuLm5vcm1hbGl6ZT9uLm5vcm1hbGl6ZShlLChpPXQsZnVuY3Rpb24oZSl7cmV0dXJuIGwoZSxpKX0pKTpsKGUsdCk6KHM9KHI9ZChlPWwoZSx0KSkpWzBdLGU9clsxXSxzJiYobj1FKHMpKSkse2Y6cz9zKyIhIitlOmUsbjplLHByOnMscDpufX0sZj17cmVxdWlyZTpmdW5jdGlvbihlKXtyZXR1cm4geChlKX0sZXhwb3J0czpmdW5jdGlvbihlKXt2YXIgdD1tW2VdO3JldHVybiB2b2lkIDAhPT10P3Q6bVtlXT17fX0sbW9kdWxlOmZ1bmN0aW9uKGUpe3JldHVybntpZDplLHVyaToiIixleHBvcnRzOm1bZV0sY29uZmlnOih0PWUsZnVuY3Rpb24oKXtyZXR1cm4gdiYmdi5jb25maWcmJnYuY29uZmlnW3RdfHx7fX0pfTt2YXIgdH19LHM9ZnVuY3Rpb24oZSx0LG4saSl7dmFyIHIscyxhLG8sbCxkPVtdLGM9dHlwZW9mIG4sdT1fKGk9aXx8ZSk7aWYoInVuZGVmaW5lZCI9PWN8fCJmdW5jdGlvbiI9PWMpe2Zvcih0PSF0Lmxlbmd0aCYmbi5sZW5ndGg/WyJyZXF1aXJlIiwiZXhwb3J0cyIsIm1vZHVsZSJdOnQsbz0wO288dC5sZW5ndGg7bys9MSlpZigicmVxdWlyZSI9PT0ocz0oYT1oKHRbb10sdSkpLmYpKWRbb109Zi5yZXF1aXJlKGUpO2Vsc2UgaWYoImV4cG9ydHMiPT09cylkW29dPWYuZXhwb3J0cyhlKSxsPSEwO2Vsc2UgaWYoIm1vZHVsZSI9PT1zKXI9ZFtvXT1mLm1vZHVsZShlKTtlbHNlIGlmKHcobSxzKXx8dyhnLHMpfHx3KHkscykpZFtvXT1FKHMpO2Vsc2V7aWYoIWEucCl0aHJvdyBuZXcgRXJyb3IoZSsiIG1pc3NpbmcgIitzKTthLnAubG9hZChhLm4seChpLCEwKSxmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7bVt0XT1lfX0ocykse30pLGRbb109bVtzXX1jPW4/bi5hcHBseShtW2VdLGQpOnZvaWQgMCxlJiYociYmci5leHBvcnRzIT09cCYmci5leHBvcnRzIT09bVtlXT9tW2VdPXIuZXhwb3J0czpjPT09cCYmbHx8KG1bZV09YykpfWVsc2UgZSYmKG1bZV09bil9LG89bj1hPWZ1bmN0aW9uKGUsdCxuLGkscil7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBmW2VdP2ZbZV0odCk6RShoKGUsXyh0KSkuZik7aWYoIWUuc3BsaWNlKXtpZigodj1lKS5kZXBzJiZhKHYuZGVwcyx2LmNhbGxiYWNrKSwhdClyZXR1cm47dC5zcGxpY2U/KGU9dCx0PW4sbj1udWxsKTplPXB9cmV0dXJuIHQ9dHx8ZnVuY3Rpb24oKXt9LCJmdW5jdGlvbiI9PXR5cGVvZiBuJiYobj1pLGk9ciksaT9zKHAsZSx0LG4pOnNldFRpbWVvdXQoZnVuY3Rpb24oKXtzKHAsZSx0LG4pfSw0KSxhfSxhLmNvbmZpZz1mdW5jdGlvbihlKXtyZXR1cm4gYShlKX0sby5fZGVmaW5lZD1tLChjPWZ1bmN0aW9uKGUsdCxuKXtpZigic3RyaW5nIiE9dHlwZW9mIGUpdGhyb3cgbmV3IEVycm9yKCJTZWUgYWxtb25kIFJFQURNRTogaW5jb3JyZWN0IG1vZHVsZSBidWlsZCwgbm8gbW9kdWxlIG5hbWUiKTt0LnNwbGljZXx8KG49dCx0PVtdKSx3KG0sZSl8fHcoZyxlKXx8KGdbZV09W2UsdCxuXSl9KS5hbWQ9e2pRdWVyeTohMH0sZS5yZXF1aXJlanM9byxlLnJlcXVpcmU9bixlLmRlZmluZT1jKSxlLmRlZmluZSgiYWxtb25kIixmdW5jdGlvbigpe30pLGUuZGVmaW5lKCJqcXVlcnkiLFtdLGZ1bmN0aW9uKCl7dmFyIGU9dHx8JDtyZXR1cm4gbnVsbD09ZSYmY29uc29sZSYmY29uc29sZS5lcnJvciYmY29uc29sZS5lcnJvcigiU2VsZWN0MjogQW4gaW5zdGFuY2Ugb2YgalF1ZXJ5IG9yIGEgalF1ZXJ5LWNvbXBhdGlibGUgbGlicmFyeSB3YXMgbm90IGZvdW5kLiBNYWtlIHN1cmUgdGhhdCB5b3UgYXJlIGluY2x1ZGluZyBqUXVlcnkgYmVmb3JlIFNlbGVjdDIgb24geW91ciB3ZWIgcGFnZS4iKSxlfSksZS5kZWZpbmUoInNlbGVjdDIvdXRpbHMiLFsianF1ZXJ5Il0sZnVuY3Rpb24ocyl7dmFyIGk9e307ZnVuY3Rpb24gZChlKXt2YXIgdCxuPWUucHJvdG90eXBlLGk9W107Zm9yKHQgaW4gbikiZnVuY3Rpb24iPT10eXBlb2Ygblt0XSYmImNvbnN0cnVjdG9yIiE9PXQmJmkucHVzaCh0KTtyZXR1cm4gaX1pLkV4dGVuZD1mdW5jdGlvbihlLHQpe3ZhciBuLGk9e30uaGFzT3duUHJvcGVydHk7ZnVuY3Rpb24gcigpe3RoaXMuY29uc3RydWN0b3I9ZX1mb3IobiBpbiB0KWkuY2FsbCh0LG4pJiYoZVtuXT10W25dKTtyZXR1cm4gci5wcm90b3R5cGU9dC5wcm90b3R5cGUsZS5wcm90b3R5cGU9bmV3IHIsZS5fX3N1cGVyX189dC5wcm90b3R5cGUsZX0saS5EZWNvcmF0ZT1mdW5jdGlvbihpLHIpe3ZhciBlPWQociksdD1kKGkpO2Z1bmN0aW9uIHMoKXt2YXIgZT1BcnJheS5wcm90b3R5cGUudW5zaGlmdCx0PXIucHJvdG90eXBlLmNvbnN0cnVjdG9yLmxlbmd0aCxuPWkucHJvdG90eXBlLmNvbnN0cnVjdG9yOzA8dCYmKGUuY2FsbChhcmd1bWVudHMsaS5wcm90b3R5cGUuY29uc3RydWN0b3IpLG49ci5wcm90b3R5cGUuY29uc3RydWN0b3IpLG4uYXBwbHkodGhpcyxhcmd1bWVudHMpfXIuZGlzcGxheU5hbWU9aS5kaXNwbGF5TmFtZSxzLnByb3RvdHlwZT1uZXcgZnVuY3Rpb24oKXt0aGlzLmNvbnN0cnVjdG9yPXN9O2Zvcih2YXIgbj0wO248dC5sZW5ndGg7bisrKXt2YXIgYT10W25dO3MucHJvdG90eXBlW2FdPWkucHJvdG90eXBlW2FdfWZvcih2YXIgbz0wO288ZS5sZW5ndGg7bysrKXt2YXIgbD1lW29dO3MucHJvdG90eXBlW2xdPWZ1bmN0aW9uKGUpe3ZhciB0PWZ1bmN0aW9uKCl7fSxuPShlIGluIHMucHJvdG90eXBlJiYodD1zLnByb3RvdHlwZVtlXSksci5wcm90b3R5cGVbZV0pO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBBcnJheS5wcm90b3R5cGUudW5zaGlmdC5jYWxsKGFyZ3VtZW50cyx0KSxuLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KGwpfXJldHVybiBzfTtmdW5jdGlvbiBlKCl7dGhpcy5saXN0ZW5lcnM9e319ZS5wcm90b3R5cGUub249ZnVuY3Rpb24oZSx0KXt0aGlzLmxpc3RlbmVycz10aGlzLmxpc3RlbmVyc3x8e30sZSBpbiB0aGlzLmxpc3RlbmVycz90aGlzLmxpc3RlbmVyc1tlXS5wdXNoKHQpOnRoaXMubGlzdGVuZXJzW2VdPVt0XX0sZS5wcm90b3R5cGUudHJpZ2dlcj1mdW5jdGlvbihlKXt2YXIgdD1BcnJheS5wcm90b3R5cGUuc2xpY2Usbj10LmNhbGwoYXJndW1lbnRzLDEpO3RoaXMubGlzdGVuZXJzPXRoaXMubGlzdGVuZXJzfHx7fSwwPT09KG49bnVsbD09bj9bXTpuKS5sZW5ndGgmJm4ucHVzaCh7fSksKG5bMF0uX3R5cGU9ZSlpbiB0aGlzLmxpc3RlbmVycyYmdGhpcy5pbnZva2UodGhpcy5saXN0ZW5lcnNbZV0sdC5jYWxsKGFyZ3VtZW50cywxKSksIioiaW4gdGhpcy5saXN0ZW5lcnMmJnRoaXMuaW52b2tlKHRoaXMubGlzdGVuZXJzWyIqIl0sYXJndW1lbnRzKX0sZS5wcm90b3R5cGUuaW52b2tlPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPTAsaT1lLmxlbmd0aDtuPGk7bisrKWVbbl0uYXBwbHkodGhpcyx0KX0saS5PYnNlcnZhYmxlPWUsaS5nZW5lcmF0ZUNoYXJzPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0iIixuPTA7bjxlO24rKyl0Kz1NYXRoLmZsb29yKDM2Kk1hdGgucmFuZG9tKCkpLnRvU3RyaW5nKDM2KTtyZXR1cm4gdH0saS5iaW5kPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKCl7ZS5hcHBseSh0LGFyZ3VtZW50cyl9fSxpLl9jb252ZXJ0RGF0YT1mdW5jdGlvbihlKXtmb3IodmFyIHQgaW4gZSl7dmFyIG49dC5zcGxpdCgiLSIpLGk9ZTtpZigxIT09bi5sZW5ndGgpe2Zvcih2YXIgcj0wO3I8bi5sZW5ndGg7cisrKXt2YXIgcz1uW3JdOyhzPXMuc3Vic3RyaW5nKDAsMSkudG9Mb3dlckNhc2UoKStzLnN1YnN0cmluZygxKSlpbiBpfHwoaVtzXT17fSkscj09bi5sZW5ndGgtMSYmKGlbc109ZVt0XSksaT1pW3NdfWRlbGV0ZSBlW3RdfX1yZXR1cm4gZX0saS5oYXNTY3JvbGw9ZnVuY3Rpb24oZSx0KXt2YXIgbj1zKHQpLGk9dC5zdHlsZS5vdmVyZmxvd1gscj10LnN0eWxlLm92ZXJmbG93WTtyZXR1cm4oaSE9PXJ8fCJoaWRkZW4iIT09ciYmInZpc2libGUiIT09cikmJigic2Nyb2xsIj09PWl8fCJzY3JvbGwiPT09cnx8bi5pbm5lckhlaWdodCgpPHQuc2Nyb2xsSGVpZ2h0fHxuLmlubmVyV2lkdGgoKTx0LnNjcm9sbFdpZHRoKX0saS5lc2NhcGVNYXJrdXA9ZnVuY3Rpb24oZSl7dmFyIHQ9eyJcXCI6IiYjOTI7IiwiJiI6IiZhbXA7IiwiPCI6IiZsdDsiLCI+IjoiJmd0OyIsJyInOiImcXVvdDsiLCInIjoiJiMzOTsiLCIvIjoiJiM0NzsifTtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGU/ZTpTdHJpbmcoZSkucmVwbGFjZSgvWyY8PiInXC9cXF0vZyxmdW5jdGlvbihlKXtyZXR1cm4gdFtlXX0pfSxpLl9fY2FjaGU9e307dmFyIG49MDtyZXR1cm4gaS5HZXRVbmlxdWVFbGVtZW50SWQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtc2VsZWN0Mi1pZCIpO3JldHVybiBudWxsPT10JiYodD1lLmlkPyJzZWxlY3QyLWRhdGEtIitlLmlkOiJzZWxlY3QyLWRhdGEtIisoKytuKS50b1N0cmluZygpKyItIitpLmdlbmVyYXRlQ2hhcnMoNCksZS5zZXRBdHRyaWJ1dGUoImRhdGEtc2VsZWN0Mi1pZCIsdCkpLHR9LGkuU3RvcmVEYXRhPWZ1bmN0aW9uKGUsdCxuKXtlPWkuR2V0VW5pcXVlRWxlbWVudElkKGUpO2kuX19jYWNoZVtlXXx8KGkuX19jYWNoZVtlXT17fSksaS5fX2NhY2hlW2VdW3RdPW59LGkuR2V0RGF0YT1mdW5jdGlvbihlLHQpe3ZhciBuPWkuR2V0VW5pcXVlRWxlbWVudElkKGUpO3JldHVybiB0P2kuX19jYWNoZVtuXSYmbnVsbCE9aS5fX2NhY2hlW25dW3RdP2kuX19jYWNoZVtuXVt0XTpzKGUpLmRhdGEodCk6aS5fX2NhY2hlW25dfSxpLlJlbW92ZURhdGE9ZnVuY3Rpb24oZSl7dmFyIHQ9aS5HZXRVbmlxdWVFbGVtZW50SWQoZSk7bnVsbCE9aS5fX2NhY2hlW3RdJiZkZWxldGUgaS5fX2NhY2hlW3RdLGUucmVtb3ZlQXR0cmlidXRlKCJkYXRhLXNlbGVjdDItaWQiKX0saS5jb3B5Tm9uSW50ZXJuYWxDc3NDbGFzc2VzPWZ1bmN0aW9uKGUsdCl7dmFyIG49KG49ZS5nZXRBdHRyaWJ1dGUoImNsYXNzIikudHJpbSgpLnNwbGl0KC9ccysvKSkuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiAwPT09ZS5pbmRleE9mKCJzZWxlY3QyLSIpfSksdD0odD10LmdldEF0dHJpYnV0ZSgiY2xhc3MiKS50cmltKCkuc3BsaXQoL1xzKy8pKS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIDAhPT1lLmluZGV4T2YoInNlbGVjdDItIil9KSxuPW4uY29uY2F0KHQpO2Uuc2V0QXR0cmlidXRlKCJjbGFzcyIsbi5qb2luKCIgIikpfSxpfSksZS5kZWZpbmUoInNlbGVjdDIvcmVzdWx0cyIsWyJqcXVlcnkiLCIuL3V0aWxzIl0sZnVuY3Rpb24oYyx1KXtmdW5jdGlvbiBpKGUsdCxuKXt0aGlzLiRlbGVtZW50PWUsdGhpcy5kYXRhPW4sdGhpcy5vcHRpb25zPXQsaS5fX3N1cGVyX18uY29uc3RydWN0b3IuY2FsbCh0aGlzKX1yZXR1cm4gdS5FeHRlbmQoaSx1Lk9ic2VydmFibGUpLGkucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbigpe3ZhciBlPWMoJzx1bCBjbGFzcz0ic2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIiByb2xlPSJsaXN0Ym94Ij48L3VsPicpO3JldHVybiB0aGlzLm9wdGlvbnMuZ2V0KCJtdWx0aXBsZSIpJiZlLmF0dHIoImFyaWEtbXVsdGlzZWxlY3RhYmxlIiwidHJ1ZSIpLHRoaXMuJHJlc3VsdHM9ZX0saS5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLiRyZXN1bHRzLmVtcHR5KCl9LGkucHJvdG90eXBlLmRpc3BsYXlNZXNzYWdlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMub3B0aW9ucy5nZXQoImVzY2FwZU1hcmt1cCIpLG49KHRoaXMuY2xlYXIoKSx0aGlzLmhpZGVMb2FkaW5nKCksYygnPGxpIHJvbGU9ImFsZXJ0IiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgY2xhc3M9InNlbGVjdDItcmVzdWx0c19fb3B0aW9uIj48L2xpPicpKSxpPXRoaXMub3B0aW9ucy5nZXQoInRyYW5zbGF0aW9ucyIpLmdldChlLm1lc3NhZ2UpO24uYXBwZW5kKHQoaShlLmFyZ3MpKSksblswXS5jbGFzc05hbWUrPSIgc2VsZWN0Mi1yZXN1bHRzX19tZXNzYWdlIix0aGlzLiRyZXN1bHRzLmFwcGVuZChuKX0saS5wcm90b3R5cGUuaGlkZU1lc3NhZ2VzPWZ1bmN0aW9uKCl7dGhpcy4kcmVzdWx0cy5maW5kKCIuc2VsZWN0Mi1yZXN1bHRzX19tZXNzYWdlIikucmVtb3ZlKCl9LGkucHJvdG90eXBlLmFwcGVuZD1mdW5jdGlvbihlKXt0aGlzLmhpZGVMb2FkaW5nKCk7dmFyIHQ9W107aWYobnVsbD09ZS5yZXN1bHRzfHwwPT09ZS5yZXN1bHRzLmxlbmd0aCkwPT09dGhpcy4kcmVzdWx0cy5jaGlsZHJlbigpLmxlbmd0aCYmdGhpcy50cmlnZ2VyKCJyZXN1bHRzOm1lc3NhZ2UiLHttZXNzYWdlOiJub1Jlc3VsdHMifSk7ZWxzZXtlLnJlc3VsdHM9dGhpcy5zb3J0KGUucmVzdWx0cyk7Zm9yKHZhciBuPTA7bjxlLnJlc3VsdHMubGVuZ3RoO24rKyl7dmFyIGk9ZS5yZXN1bHRzW25dLGk9dGhpcy5vcHRpb24oaSk7dC5wdXNoKGkpfXRoaXMuJHJlc3VsdHMuYXBwZW5kKHQpfX0saS5wcm90b3R5cGUucG9zaXRpb249ZnVuY3Rpb24oZSx0KXt0LmZpbmQoIi5zZWxlY3QyLXJlc3VsdHMiKS5hcHBlbmQoZSl9LGkucHJvdG90eXBlLnNvcnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMub3B0aW9ucy5nZXQoInNvcnRlciIpKGUpfSxpLnByb3RvdHlwZS5oaWdobGlnaHRGaXJzdEl0ZW09ZnVuY3Rpb24oKXt2YXIgZT10aGlzLiRyZXN1bHRzLmZpbmQoIi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSIpLHQ9ZS5maWx0ZXIoIi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQiKTsoMDx0Lmxlbmd0aD90OmUpLmZpcnN0KCkudHJpZ2dlcigibW91c2VlbnRlciIpLHRoaXMuZW5zdXJlSGlnaGxpZ2h0VmlzaWJsZSgpfSxpLnByb3RvdHlwZS5zZXRDbGFzc2VzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLmRhdGEuY3VycmVudChmdW5jdGlvbihlKXt2YXIgaT1lLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZS5pZC50b1N0cmluZygpfSk7dC4kcmVzdWx0cy5maW5kKCIuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUiKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9Yyh0aGlzKSx0PXUuR2V0RGF0YSh0aGlzLCJkYXRhIiksbj0iIit0LmlkO251bGwhPXQuZWxlbWVudCYmdC5lbGVtZW50LnNlbGVjdGVkfHxudWxsPT10LmVsZW1lbnQmJi0xPGkuaW5kZXhPZihuKT8odGhpcy5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQiKSxlLmF0dHIoImFyaWEtc2VsZWN0ZWQiLCJ0cnVlIikpOih0aGlzLmNsYXNzTGlzdC5yZW1vdmUoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RlZCIpLGUuYXR0cigiYXJpYS1zZWxlY3RlZCIsImZhbHNlIikpfSl9KX0saS5wcm90b3R5cGUuc2hvd0xvYWRpbmc9ZnVuY3Rpb24oZSl7dGhpcy5oaWRlTG9hZGluZygpO2U9e2Rpc2FibGVkOiEwLGxvYWRpbmc6ITAsdGV4dDp0aGlzLm9wdGlvbnMuZ2V0KCJ0cmFuc2xhdGlvbnMiKS5nZXQoInNlYXJjaGluZyIpKGUpfSxlPXRoaXMub3B0aW9uKGUpO2UuY2xhc3NOYW1lKz0iIGxvYWRpbmctcmVzdWx0cyIsdGhpcy4kcmVzdWx0cy5wcmVwZW5kKGUpfSxpLnByb3RvdHlwZS5oaWRlTG9hZGluZz1mdW5jdGlvbigpe3RoaXMuJHJlc3VsdHMuZmluZCgiLmxvYWRpbmctcmVzdWx0cyIpLnJlbW92ZSgpfSxpLnByb3RvdHlwZS5vcHRpb249ZnVuY3Rpb24oZSl7dmFyIHQsbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaSIpLGk9KG4uY2xhc3NMaXN0LmFkZCgic2VsZWN0Mi1yZXN1bHRzX19vcHRpb24iKSxuLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIikse3JvbGU6Im9wdGlvbiJ9KSxyPXdpbmRvdy5FbGVtZW50LnByb3RvdHlwZS5tYXRjaGVzfHx3aW5kb3cuRWxlbWVudC5wcm90b3R5cGUubXNNYXRjaGVzU2VsZWN0b3J8fHdpbmRvdy5FbGVtZW50LnByb3RvdHlwZS53ZWJraXRNYXRjaGVzU2VsZWN0b3I7Zm9yKHQgaW4obnVsbCE9ZS5lbGVtZW50JiZyLmNhbGwoZS5lbGVtZW50LCI6ZGlzYWJsZWQiKXx8bnVsbD09ZS5lbGVtZW50JiZlLmRpc2FibGVkKSYmKGlbImFyaWEtZGlzYWJsZWQiXT0idHJ1ZSIsbi5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSIpLG4uY2xhc3NMaXN0LmFkZCgic2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWRpc2FibGVkIikpLG51bGw9PWUuaWQmJm4uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUiKSxudWxsIT1lLl9yZXN1bHRJZCYmKG4uaWQ9ZS5fcmVzdWx0SWQpLGUudGl0bGUmJihuLnRpdGxlPWUudGl0bGUpLGUuY2hpbGRyZW4mJihpLnJvbGU9Imdyb3VwIixpWyJhcmlhLWxhYmVsIl09ZS50ZXh0LG4uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUiKSxuLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1ncm91cCIpKSxpKW4uc2V0QXR0cmlidXRlKHQsaVt0XSk7aWYoZS5jaGlsZHJlbil7Zm9yKHZhciByPWMobikscz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHJvbmciKSxhPShzLmNsYXNzTmFtZT0ic2VsZWN0Mi1yZXN1bHRzX19ncm91cCIsdGhpcy50ZW1wbGF0ZShlLHMpLFtdKSxvPTA7bzxlLmNoaWxkcmVuLmxlbmd0aDtvKyspe3ZhciBsPWUuY2hpbGRyZW5bb10sbD10aGlzLm9wdGlvbihsKTthLnB1c2gobCl9dmFyIGQ9YygiPHVsPjwvdWw+Iix7Y2xhc3M6InNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyBzZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMtLW5lc3RlZCIscm9sZToibm9uZSJ9KTtkLmFwcGVuZChhKSxyLmFwcGVuZChzKSxyLmFwcGVuZChkKX1lbHNlIHRoaXMudGVtcGxhdGUoZSxuKTtyZXR1cm4gdS5TdG9yZURhdGEobiwiZGF0YSIsZSksbn0saS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbih0LGUpe3ZhciByPXRoaXMsbj10LmlkKyItcmVzdWx0cyI7dGhpcy4kcmVzdWx0cy5hdHRyKCJpZCIsbiksdC5vbigicmVzdWx0czphbGwiLGZ1bmN0aW9uKGUpe3IuY2xlYXIoKSxyLmFwcGVuZChlLmRhdGEpLHQuaXNPcGVuKCkmJihyLnNldENsYXNzZXMoKSxyLmhpZ2hsaWdodEZpcnN0SXRlbSgpKX0pLHQub24oInJlc3VsdHM6YXBwZW5kIixmdW5jdGlvbihlKXtyLmFwcGVuZChlLmRhdGEpLHQuaXNPcGVuKCkmJnIuc2V0Q2xhc3NlcygpfSksdC5vbigicXVlcnkiLGZ1bmN0aW9uKGUpe3IuaGlkZU1lc3NhZ2VzKCksci5zaG93TG9hZGluZyhlKX0pLHQub24oInNlbGVjdCIsZnVuY3Rpb24oKXt0LmlzT3BlbigpJiYoci5zZXRDbGFzc2VzKCksci5vcHRpb25zLmdldCgic2Nyb2xsQWZ0ZXJTZWxlY3QiKSkmJnIuaGlnaGxpZ2h0Rmlyc3RJdGVtKCl9KSx0Lm9uKCJ1bnNlbGVjdCIsZnVuY3Rpb24oKXt0LmlzT3BlbigpJiYoci5zZXRDbGFzc2VzKCksci5vcHRpb25zLmdldCgic2Nyb2xsQWZ0ZXJTZWxlY3QiKSkmJnIuaGlnaGxpZ2h0Rmlyc3RJdGVtKCl9KSx0Lm9uKCJvcGVuIixmdW5jdGlvbigpe3IuJHJlc3VsdHMuYXR0cigiYXJpYS1leHBhbmRlZCIsInRydWUiKSxyLiRyZXN1bHRzLmF0dHIoImFyaWEtaGlkZGVuIiwiZmFsc2UiKSxyLnNldENsYXNzZXMoKSxyLmVuc3VyZUhpZ2hsaWdodFZpc2libGUoKX0pLHQub24oImNsb3NlIixmdW5jdGlvbigpe3IuJHJlc3VsdHMuYXR0cigiYXJpYS1leHBhbmRlZCIsImZhbHNlIiksci4kcmVzdWx0cy5hdHRyKCJhcmlhLWhpZGRlbiIsInRydWUiKSxyLiRyZXN1bHRzLnJlbW92ZUF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIpfSksdC5vbigicmVzdWx0czp0b2dnbGUiLGZ1bmN0aW9uKCl7dmFyIGU9ci5nZXRIaWdobGlnaHRlZFJlc3VsdHMoKTswIT09ZS5sZW5ndGgmJmUudHJpZ2dlcigibW91c2V1cCIpfSksdC5vbigicmVzdWx0czpzZWxlY3QiLGZ1bmN0aW9uKCl7dmFyIGUsdD1yLmdldEhpZ2hsaWdodGVkUmVzdWx0cygpOzAhPT10Lmxlbmd0aCYmKGU9dS5HZXREYXRhKHRbMF0sImRhdGEiKSx0Lmhhc0NsYXNzKCJzZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQiKT9yLnRyaWdnZXIoImNsb3NlIix7fSk6ci50cmlnZ2VyKCJzZWxlY3QiLHtkYXRhOmV9KSl9KSx0Lm9uKCJyZXN1bHRzOnByZXZpb3VzIixmdW5jdGlvbigpe3ZhciBlLHQ9ci5nZXRIaWdobGlnaHRlZFJlc3VsdHMoKSxuPXIuJHJlc3VsdHMuZmluZCgiLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIiksaT1uLmluZGV4KHQpO2k8PTB8fChpPWktMSwwPT09dC5sZW5ndGgmJihpPTApLCh0PW4uZXEoaSkpLnRyaWdnZXIoIm1vdXNlZW50ZXIiKSxuPXIuJHJlc3VsdHMub2Zmc2V0KCkudG9wLHQ9dC5vZmZzZXQoKS50b3AsZT1yLiRyZXN1bHRzLnNjcm9sbFRvcCgpKyh0LW4pLDA9PT1pP3IuJHJlc3VsdHMuc2Nyb2xsVG9wKDApOnQtbjwwJiZyLiRyZXN1bHRzLnNjcm9sbFRvcChlKSl9KSx0Lm9uKCJyZXN1bHRzOm5leHQiLGZ1bmN0aW9uKCl7dmFyIGUsdCxuPXIuZ2V0SGlnaGxpZ2h0ZWRSZXN1bHRzKCksaT1yLiRyZXN1bHRzLmZpbmQoIi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSIpLG49aS5pbmRleChuKSsxO24+PWkubGVuZ3RofHwoKGk9aS5lcShuKSkudHJpZ2dlcigibW91c2VlbnRlciIpLGU9ci4kcmVzdWx0cy5vZmZzZXQoKS50b3Arci4kcmVzdWx0cy5vdXRlckhlaWdodCghMSksaT1pLm9mZnNldCgpLnRvcCtpLm91dGVySGVpZ2h0KCExKSx0PXIuJHJlc3VsdHMuc2Nyb2xsVG9wKCkraS1lLDA9PT1uP3IuJHJlc3VsdHMuc2Nyb2xsVG9wKDApOmU8aSYmci4kcmVzdWx0cy5zY3JvbGxUb3AodCkpfSksdC5vbigicmVzdWx0czpmb2N1cyIsZnVuY3Rpb24oZSl7ZS5lbGVtZW50WzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZCIpLGUuZWxlbWVudFswXS5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCJ0cnVlIil9KSx0Lm9uKCJyZXN1bHRzOm1lc3NhZ2UiLGZ1bmN0aW9uKGUpe3IuZGlzcGxheU1lc3NhZ2UoZSl9KSxjLmZuLm1vdXNld2hlZWwmJnRoaXMuJHJlc3VsdHMub24oIm1vdXNld2hlZWwiLGZ1bmN0aW9uKGUpe3ZhciB0PXIuJHJlc3VsdHMuc2Nyb2xsVG9wKCksbj1yLiRyZXN1bHRzLmdldCgwKS5zY3JvbGxIZWlnaHQtdCtlLmRlbHRhWSx0PTA8ZS5kZWx0YVkmJnQtZS5kZWx0YVk8PTAsbj1lLmRlbHRhWTwwJiZuPD1yLiRyZXN1bHRzLmhlaWdodCgpO3Q/KHIuJHJlc3VsdHMuc2Nyb2xsVG9wKDApLGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKTpuJiYoci4kcmVzdWx0cy5zY3JvbGxUb3Aoci4kcmVzdWx0cy5nZXQoMCkuc2Nyb2xsSGVpZ2h0LXIuJHJlc3VsdHMuaGVpZ2h0KCkpLGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKX0pLHRoaXMuJHJlc3VsdHMub24oIm1vdXNldXAiLCIuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUiLGZ1bmN0aW9uKGUpe3ZhciB0PWModGhpcyksbj11LkdldERhdGEodGhpcywiZGF0YSIpO3QuaGFzQ2xhc3MoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RlZCIpP3Iub3B0aW9ucy5nZXQoIm11bHRpcGxlIik/ci50cmlnZ2VyKCJ1bnNlbGVjdCIse29yaWdpbmFsRXZlbnQ6ZSxkYXRhOm59KTpyLnRyaWdnZXIoImNsb3NlIix7fSk6ci50cmlnZ2VyKCJzZWxlY3QiLHtvcmlnaW5hbEV2ZW50OmUsZGF0YTpufSl9KSx0aGlzLiRyZXN1bHRzLm9uKCJtb3VzZWVudGVyIiwiLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIixmdW5jdGlvbihlKXt2YXIgdD11LkdldERhdGEodGhpcywiZGF0YSIpO3IuZ2V0SGlnaGxpZ2h0ZWRSZXN1bHRzKCkucmVtb3ZlQ2xhc3MoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZCIpLmF0dHIoImFyaWEtc2VsZWN0ZWQiLCJmYWxzZSIpLHIudHJpZ2dlcigicmVzdWx0czpmb2N1cyIse2RhdGE6dCxlbGVtZW50OmModGhpcyl9KX0pfSxpLnByb3RvdHlwZS5nZXRIaWdobGlnaHRlZFJlc3VsdHM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kcmVzdWx0cy5maW5kKCIuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkIil9LGkucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt0aGlzLiRyZXN1bHRzLnJlbW92ZSgpfSxpLnByb3RvdHlwZS5lbnN1cmVIaWdobGlnaHRWaXNpYmxlPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLGkscj10aGlzLmdldEhpZ2hsaWdodGVkUmVzdWx0cygpOzAhPT1yLmxlbmd0aCYmKGU9dGhpcy4kcmVzdWx0cy5maW5kKCIuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUiKS5pbmRleChyKSx0PXRoaXMuJHJlc3VsdHMub2Zmc2V0KCkudG9wLGk9ci5vZmZzZXQoKS50b3Asbj10aGlzLiRyZXN1bHRzLnNjcm9sbFRvcCgpKyhpLXQpLGk9aS10LG4tPTIqci5vdXRlckhlaWdodCghMSksZTw9Mj90aGlzLiRyZXN1bHRzLnNjcm9sbFRvcCgwKTooaT50aGlzLiRyZXN1bHRzLm91dGVySGVpZ2h0KCl8fGk8MCkmJnRoaXMuJHJlc3VsdHMuc2Nyb2xsVG9wKG4pKX0saS5wcm90b3R5cGUudGVtcGxhdGU9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLm9wdGlvbnMuZ2V0KCJ0ZW1wbGF0ZVJlc3VsdCIpLGk9dGhpcy5vcHRpb25zLmdldCgiZXNjYXBlTWFya3VwIiksbj1uKGUsdCk7bnVsbD09bj90LnN0eWxlLmRpc3BsYXk9Im5vbmUiOiJzdHJpbmciPT10eXBlb2Ygbj90LmlubmVySFRNTD1pKG4pOmModCkuYXBwZW5kKG4pfSxpfSksZS5kZWZpbmUoInNlbGVjdDIva2V5cyIsW10sZnVuY3Rpb24oKXtyZXR1cm57QkFDS1NQQUNFOjgsVEFCOjksRU5URVI6MTMsU0hJRlQ6MTYsQ1RSTDoxNyxBTFQ6MTgsRVNDOjI3LFNQQUNFOjMyLFBBR0VfVVA6MzMsUEFHRV9ET1dOOjM0LEVORDozNSxIT01FOjM2LExFRlQ6MzcsVVA6MzgsUklHSFQ6MzksRE9XTjo0MCxERUxFVEU6NDZ9fSksZS5kZWZpbmUoInNlbGVjdDIvc2VsZWN0aW9uL2Jhc2UiLFsianF1ZXJ5IiwiLi4vdXRpbHMiLCIuLi9rZXlzIl0sZnVuY3Rpb24obixpLHIpe2Z1bmN0aW9uIHMoZSx0KXt0aGlzLiRlbGVtZW50PWUsdGhpcy5vcHRpb25zPXQscy5fX3N1cGVyX18uY29uc3RydWN0b3IuY2FsbCh0aGlzKX1yZXR1cm4gaS5FeHRlbmQocyxpLk9ic2VydmFibGUpLHMucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbigpe3ZhciBlPW4oJzxzcGFuIGNsYXNzPSJzZWxlY3QyLXNlbGVjdGlvbiIgcm9sZT0iY29tYm9ib3giICBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+PC9zcGFuPicpO3JldHVybiB0aGlzLl90YWJpbmRleD0wLG51bGwhPWkuR2V0RGF0YSh0aGlzLiRlbGVtZW50WzBdLCJvbGQtdGFiaW5kZXgiKT90aGlzLl90YWJpbmRleD1pLkdldERhdGEodGhpcy4kZWxlbWVudFswXSwib2xkLXRhYmluZGV4Iik6bnVsbCE9dGhpcy4kZWxlbWVudC5hdHRyKCJ0YWJpbmRleCIpJiYodGhpcy5fdGFiaW5kZXg9dGhpcy4kZWxlbWVudC5hdHRyKCJ0YWJpbmRleCIpKSxlLmF0dHIoInRpdGxlIix0aGlzLiRlbGVtZW50LmF0dHIoInRpdGxlIikpLGUuYXR0cigidGFiaW5kZXgiLHRoaXMuX3RhYmluZGV4KSxlLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJmYWxzZSIpLHRoaXMuJHNlbGVjdGlvbj1lfSxzLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcyxpPWUuaWQrIi1yZXN1bHRzIjt0aGlzLmNvbnRhaW5lcj1lLHRoaXMuJHNlbGVjdGlvbi5vbigiZm9jdXMiLGZ1bmN0aW9uKGUpe24udHJpZ2dlcigiZm9jdXMiLGUpfSksdGhpcy4kc2VsZWN0aW9uLm9uKCJibHVyIixmdW5jdGlvbihlKXtuLl9oYW5kbGVCbHVyKGUpfSksdGhpcy4kc2VsZWN0aW9uLm9uKCJrZXlkb3duIixmdW5jdGlvbihlKXtuLnRyaWdnZXIoImtleXByZXNzIixlKSxlLndoaWNoPT09ci5TUEFDRSYmZS5wcmV2ZW50RGVmYXVsdCgpfSksZS5vbigicmVzdWx0czpmb2N1cyIsZnVuY3Rpb24oZSl7bi4kc2VsZWN0aW9uLmF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIsZS5kYXRhLl9yZXN1bHRJZCl9KSxlLm9uKCJzZWxlY3Rpb246dXBkYXRlIixmdW5jdGlvbihlKXtuLnVwZGF0ZShlLmRhdGEpfSksZS5vbigib3BlbiIsZnVuY3Rpb24oKXtuLiRzZWxlY3Rpb24uYXR0cigiYXJpYS1leHBhbmRlZCIsInRydWUiKSxuLiRzZWxlY3Rpb24uYXR0cigiYXJpYS1vd25zIixpKSxuLl9hdHRhY2hDbG9zZUhhbmRsZXIoZSl9KSxlLm9uKCJjbG9zZSIsZnVuY3Rpb24oKXtuLiRzZWxlY3Rpb24uYXR0cigiYXJpYS1leHBhbmRlZCIsImZhbHNlIiksbi4kc2VsZWN0aW9uLnJlbW92ZUF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIpLG4uJHNlbGVjdGlvbi5yZW1vdmVBdHRyKCJhcmlhLW93bnMiKSxuLiRzZWxlY3Rpb24udHJpZ2dlcigiZm9jdXMiKSxuLl9kZXRhY2hDbG9zZUhhbmRsZXIoZSl9KSxlLm9uKCJlbmFibGUiLGZ1bmN0aW9uKCl7bi4kc2VsZWN0aW9uLmF0dHIoInRhYmluZGV4IixuLl90YWJpbmRleCksbi4kc2VsZWN0aW9uLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJmYWxzZSIpfSksZS5vbigiZGlzYWJsZSIsZnVuY3Rpb24oKXtuLiRzZWxlY3Rpb24uYXR0cigidGFiaW5kZXgiLCItMSIpLG4uJHNlbGVjdGlvbi5hdHRyKCJhcmlhLWRpc2FibGVkIiwidHJ1ZSIpfSl9LHMucHJvdG90eXBlLl9oYW5kbGVCbHVyPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7d2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtkb2N1bWVudC5hY3RpdmVFbGVtZW50PT10LiRzZWxlY3Rpb25bMF18fG4uY29udGFpbnModC4kc2VsZWN0aW9uWzBdLGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpfHx0LnRyaWdnZXIoImJsdXIiLGUpfSwxKX0scy5wcm90b3R5cGUuX2F0dGFjaENsb3NlSGFuZGxlcj1mdW5jdGlvbihlKXtuKGRvY3VtZW50LmJvZHkpLm9uKCJtb3VzZWRvd24uc2VsZWN0Mi4iK2UuaWQsZnVuY3Rpb24oZSl7dmFyIHQ9bihlLnRhcmdldCkuY2xvc2VzdCgiLnNlbGVjdDIiKTtuKCIuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiIpLmVhY2goZnVuY3Rpb24oKXt0aGlzIT10WzBdJiZpLkdldERhdGEodGhpcywiZWxlbWVudCIpLnNlbGVjdDIoImNsb3NlIil9KX0pfSxzLnByb3RvdHlwZS5fZGV0YWNoQ2xvc2VIYW5kbGVyPWZ1bmN0aW9uKGUpe24oZG9jdW1lbnQuYm9keSkub2ZmKCJtb3VzZWRvd24uc2VsZWN0Mi4iK2UuaWQpfSxzLnByb3RvdHlwZS5wb3NpdGlvbj1mdW5jdGlvbihlLHQpe3QuZmluZCgiLnNlbGVjdGlvbiIpLmFwcGVuZChlKX0scy5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe3RoaXMuX2RldGFjaENsb3NlSGFuZGxlcih0aGlzLmNvbnRhaW5lcil9LHMucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoIlRoZSBgdXBkYXRlYCBtZXRob2QgbXVzdCBiZSBkZWZpbmVkIGluIGNoaWxkIGNsYXNzZXMuIil9LHMucHJvdG90eXBlLmlzRW5hYmxlZD1mdW5jdGlvbigpe3JldHVybiF0aGlzLmlzRGlzYWJsZWQoKX0scy5wcm90b3R5cGUuaXNEaXNhYmxlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLm9wdGlvbnMuZ2V0KCJkaXNhYmxlZCIpfSxzfSksZS5kZWZpbmUoInNlbGVjdDIvc2VsZWN0aW9uL3NpbmdsZSIsWyJqcXVlcnkiLCIuL2Jhc2UiLCIuLi91dGlscyIsIi4uL2tleXMiXSxmdW5jdGlvbihlLHQsbixpKXtmdW5jdGlvbiByKCl7ci5fX3N1cGVyX18uY29uc3RydWN0b3IuYXBwbHkodGhpcyxhcmd1bWVudHMpfXJldHVybiBuLkV4dGVuZChyLHQpLHIucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbigpe3ZhciBlPXIuX19zdXBlcl9fLnJlbmRlci5jYWxsKHRoaXMpO3JldHVybiBlWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUiKSxlLmh0bWwoJzxzcGFuIGNsYXNzPSJzZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQiPjwvc3Bhbj48c3BhbiBjbGFzcz0ic2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IiByb2xlPSJwcmVzZW50YXRpb24iPjxiIHJvbGU9InByZXNlbnRhdGlvbiI+PC9iPjwvc3Bhbj4nKSxlfSxyLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcyxpPShyLl9fc3VwZXJfXy5iaW5kLmFwcGx5KHRoaXMsYXJndW1lbnRzKSx0LmlkKyItY29udGFpbmVyIik7dGhpcy4kc2VsZWN0aW9uLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQiKS5hdHRyKCJpZCIsaSkuYXR0cigicm9sZSIsInRleHRib3giKS5hdHRyKCJhcmlhLXJlYWRvbmx5IiwidHJ1ZSIpLHRoaXMuJHNlbGVjdGlvbi5hdHRyKCJhcmlhLWxhYmVsbGVkYnkiLGkpLHRoaXMuJHNlbGVjdGlvbi5hdHRyKCJhcmlhLWNvbnRyb2xzIixpKSx0aGlzLiRzZWxlY3Rpb24ub24oIm1vdXNlZG93biIsZnVuY3Rpb24oZSl7MT09PWUud2hpY2gmJm4udHJpZ2dlcigidG9nZ2xlIix7b3JpZ2luYWxFdmVudDplfSl9KSx0aGlzLiRzZWxlY3Rpb24ub24oImZvY3VzIixmdW5jdGlvbihlKXt9KSx0aGlzLiRzZWxlY3Rpb24ub24oImJsdXIiLGZ1bmN0aW9uKGUpe30pLHQub24oImZvY3VzIixmdW5jdGlvbihlKXt0LmlzT3BlbigpfHxuLiRzZWxlY3Rpb24udHJpZ2dlcigiZm9jdXMiKX0pfSxyLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3ZhciBlPXRoaXMuJHNlbGVjdGlvbi5maW5kKCIuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIik7ZS5lbXB0eSgpLGUucmVtb3ZlQXR0cigidGl0bGUiKX0sci5wcm90b3R5cGUuZGlzcGxheT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMub3B0aW9ucy5nZXQoInRlbXBsYXRlU2VsZWN0aW9uIik7cmV0dXJuIHRoaXMub3B0aW9ucy5nZXQoImVzY2FwZU1hcmt1cCIpKG4oZSx0KSl9LHIucHJvdG90eXBlLnNlbGVjdGlvbkNvbnRhaW5lcj1mdW5jdGlvbigpe3JldHVybiBlKCI8c3Bhbj48L3NwYW4+Iil9LHIucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihlKXt2YXIgdCxuOzA9PT1lLmxlbmd0aD90aGlzLmNsZWFyKCk6KGU9ZVswXSx0PXRoaXMuJHNlbGVjdGlvbi5maW5kKCIuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIiksbj10aGlzLmRpc3BsYXkoZSx0KSx0LmVtcHR5KCkuYXBwZW5kKG4pLChuPWUudGl0bGV8fGUudGV4dCk/dC5hdHRyKCJ0aXRsZSIsbik6dC5yZW1vdmVBdHRyKCJ0aXRsZSIpKX0scn0pLGUuZGVmaW5lKCJzZWxlY3QyL3NlbGVjdGlvbi9tdWx0aXBsZSIsWyJqcXVlcnkiLCIuL2Jhc2UiLCIuLi91dGlscyJdLGZ1bmN0aW9uKHIsZSxkKXtmdW5jdGlvbiBzKGUsdCl7cy5fX3N1cGVyX18uY29uc3RydWN0b3IuYXBwbHkodGhpcyxhcmd1bWVudHMpfXJldHVybiBkLkV4dGVuZChzLGUpLHMucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbigpe3ZhciBlPXMuX19zdXBlcl9fLnJlbmRlci5jYWxsKHRoaXMpO3JldHVybiBlWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSIpLGUuaHRtbCgnPHVsIGNsYXNzPSJzZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQiPjwvdWw+JyksZX0scy5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMsaT0ocy5fX3N1cGVyX18uYmluZC5hcHBseSh0aGlzLGFyZ3VtZW50cyksZS5pZCsiLWNvbnRhaW5lciIpO3RoaXMuJHNlbGVjdGlvbi5maW5kKCIuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIikuYXR0cigiaWQiLGkpLHRoaXMuJHNlbGVjdGlvbi5vbigiY2xpY2siLGZ1bmN0aW9uKGUpe24udHJpZ2dlcigidG9nZ2xlIix7b3JpZ2luYWxFdmVudDplfSl9KSx0aGlzLiRzZWxlY3Rpb24ub24oImNsaWNrIiwiLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSIsZnVuY3Rpb24oZSl7dmFyIHQ7bi5pc0Rpc2FibGVkKCl8fCh0PXIodGhpcykucGFyZW50KCksdD1kLkdldERhdGEodFswXSwiZGF0YSIpLG4udHJpZ2dlcigidW5zZWxlY3QiLHtvcmlnaW5hbEV2ZW50OmUsZGF0YTp0fSkpfSksdGhpcy4kc2VsZWN0aW9uLm9uKCJrZXlkb3duIiwiLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSIsZnVuY3Rpb24oZSl7bi5pc0Rpc2FibGVkKCl8fGUuc3RvcFByb3BhZ2F0aW9uKCl9KX0scy5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCIpO2UuZW1wdHkoKSxlLnJlbW92ZUF0dHIoInRpdGxlIil9LHMucHJvdG90eXBlLmRpc3BsYXk9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLm9wdGlvbnMuZ2V0KCJ0ZW1wbGF0ZVNlbGVjdGlvbiIpO3JldHVybiB0aGlzLm9wdGlvbnMuZ2V0KCJlc2NhcGVNYXJrdXAiKShuKGUsdCkpfSxzLnByb3RvdHlwZS5zZWxlY3Rpb25Db250YWluZXI9ZnVuY3Rpb24oKXtyZXR1cm4gcignPGxpIGNsYXNzPSJzZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSIgdGFiaW5kZXg9Ii0xIj48c3BhbiBhcmlhLWhpZGRlbj0idHJ1ZSI+JnRpbWVzOzwvc3Bhbj48L2J1dHRvbj48c3BhbiBjbGFzcz0ic2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheSI+PC9zcGFuPjwvbGk+Jyl9LHMucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihlKXtpZih0aGlzLmNsZWFyKCksMCE9PWUubGVuZ3RoKXtmb3IodmFyIHQ9W10sbj10aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCIpLmF0dHIoImlkIikrIi1jaG9pY2UtIixpPTA7aTxlLmxlbmd0aDtpKyspe3ZhciByPWVbaV0scz10aGlzLnNlbGVjdGlvbkNvbnRhaW5lcigpLGE9dGhpcy5kaXNwbGF5KHIscyksbz1uK2QuZ2VuZXJhdGVDaGFycyg0KSsiLSIsYT0oci5pZD9vKz1yLmlkOm8rPWQuZ2VuZXJhdGVDaGFycyg0KSxzLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5IikuYXBwZW5kKGEpLmF0dHIoImlkIixvKSxyLnRpdGxlfHxyLnRleHQpLGE9KGEmJnMuYXR0cigidGl0bGUiLGEpLHRoaXMub3B0aW9ucy5nZXQoInRyYW5zbGF0aW9ucyIpLmdldCgicmVtb3ZlSXRlbSIpKSxsPXMuZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSIpO2wuYXR0cigidGl0bGUiLGEoKSksbC5hdHRyKCJhcmlhLWxhYmVsIixhKCkpLGwuYXR0cigiYXJpYS1kZXNjcmliZWRieSIsbyksZC5TdG9yZURhdGEoc1swXSwiZGF0YSIsciksdC5wdXNoKHMpfXRoaXMuJHNlbGVjdGlvbi5maW5kKCIuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIikuYXBwZW5kKHQpfX0sc30pLGUuZGVmaW5lKCJzZWxlY3QyL3NlbGVjdGlvbi9wbGFjZWhvbGRlciIsW10sZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCxuKXt0aGlzLnBsYWNlaG9sZGVyPXRoaXMubm9ybWFsaXplUGxhY2Vob2xkZXIobi5nZXQoInBsYWNlaG9sZGVyIikpLGUuY2FsbCh0aGlzLHQsbil9cmV0dXJuIGUucHJvdG90eXBlLm5vcm1hbGl6ZVBsYWNlaG9sZGVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ9InN0cmluZyI9PXR5cGVvZiB0P3tpZDoiIix0ZXh0OnR9OnR9LGUucHJvdG90eXBlLmNyZWF0ZVBsYWNlaG9sZGVyPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcy5zZWxlY3Rpb25Db250YWluZXIoKSx0PShuLmh0bWwodGhpcy5kaXNwbGF5KHQpKSxuWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciIpLG5bMF0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSIpLHQudGl0bGV8fHQudGV4dHx8bi50ZXh0KCkpO3JldHVybiB0aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCIpLmF0dHIoInRpdGxlIix0KSxufSxlLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oZSx0KXt2YXIgbj0xPT10Lmxlbmd0aCYmdFswXS5pZCE9dGhpcy5wbGFjZWhvbGRlci5pZDtpZigxPHQubGVuZ3RofHxuKXJldHVybiBlLmNhbGwodGhpcyx0KTt0aGlzLmNsZWFyKCk7bj10aGlzLmNyZWF0ZVBsYWNlaG9sZGVyKHRoaXMucGxhY2Vob2xkZXIpO3RoaXMuJHNlbGVjdGlvbi5maW5kKCIuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIikuYXBwZW5kKG4pfSxlfSksZS5kZWZpbmUoInNlbGVjdDIvc2VsZWN0aW9uL2FsbG93Q2xlYXIiLFsianF1ZXJ5IiwiLi4va2V5cyIsIi4uL3V0aWxzIl0sZnVuY3Rpb24ocixpLG8pe2Z1bmN0aW9uIGUoKXt9cmV0dXJuIGUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciBpPXRoaXM7ZS5jYWxsKHRoaXMsdCxuKSxudWxsPT10aGlzLnBsYWNlaG9sZGVyJiZ0aGlzLm9wdGlvbnMuZ2V0KCJkZWJ1ZyIpJiZ3aW5kb3cuY29uc29sZSYmY29uc29sZS5lcnJvciYmY29uc29sZS5lcnJvcigiU2VsZWN0MjogVGhlIGBhbGxvd0NsZWFyYCBvcHRpb24gc2hvdWxkIGJlIHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCB0aGUgYHBsYWNlaG9sZGVyYCBvcHRpb24uIiksdGhpcy4kc2VsZWN0aW9uLm9uKCJtb3VzZWRvd24iLCIuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIixmdW5jdGlvbihlKXtpLl9oYW5kbGVDbGVhcihlKX0pLHQub24oImtleXByZXNzIixmdW5jdGlvbihlKXtpLl9oYW5kbGVLZXlib2FyZENsZWFyKGUsdCl9KX0sZS5wcm90b3R5cGUuX2hhbmRsZUNsZWFyPWZ1bmN0aW9uKGUsdCl7aWYoIXRoaXMuaXNEaXNhYmxlZCgpKXt2YXIgbj10aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciIpO2lmKDAhPT1uLmxlbmd0aCl7dC5zdG9wUHJvcGFnYXRpb24oKTt2YXIgaT1vLkdldERhdGEoblswXSwiZGF0YSIpLHI9dGhpcy4kZWxlbWVudC52YWwoKSxzPSh0aGlzLiRlbGVtZW50LnZhbCh0aGlzLnBsYWNlaG9sZGVyLmlkKSx7ZGF0YTppfSk7aWYodGhpcy50cmlnZ2VyKCJjbGVhciIscykscy5wcmV2ZW50ZWQpdGhpcy4kZWxlbWVudC52YWwocik7ZWxzZXtmb3IodmFyIGE9MDthPGkubGVuZ3RoO2ErKylpZihzPXtkYXRhOmlbYV19LHRoaXMudHJpZ2dlcigidW5zZWxlY3QiLHMpLHMucHJldmVudGVkKXJldHVybiB2b2lkIHRoaXMuJGVsZW1lbnQudmFsKHIpO3RoaXMuJGVsZW1lbnQudHJpZ2dlcigiaW5wdXQiKS50cmlnZ2VyKCJjaGFuZ2UiKSx0aGlzLnRyaWdnZXIoInRvZ2dsZSIse30pfX19fSxlLnByb3RvdHlwZS5faGFuZGxlS2V5Ym9hcmRDbGVhcj1mdW5jdGlvbihlLHQsbil7bi5pc09wZW4oKXx8dC53aGljaCE9aS5ERUxFVEUmJnQud2hpY2ghPWkuQkFDS1NQQUNFfHx0aGlzLl9oYW5kbGVDbGVhcih0KX0sZS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKGUsdCl7dmFyIG4saTtlLmNhbGwodGhpcyx0KSx0aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciIpLnJlbW92ZSgpLHRoaXMuJHNlbGVjdGlvblswXS5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLXNlbGVjdGlvbi0tY2xlYXJhYmxlIiksMDx0aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciIpLmxlbmd0aHx8MD09PXQubGVuZ3RofHwoZT10aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCIpLmF0dHIoImlkIiksbj10aGlzLm9wdGlvbnMuZ2V0KCJ0cmFuc2xhdGlvbnMiKS5nZXQoInJlbW92ZUFsbEl0ZW1zIiksKGk9cignPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIiIHRhYmluZGV4PSItMSI+PHNwYW4gYXJpYS1oaWRkZW49InRydWUiPiZ0aW1lczs8L3NwYW4+PC9idXR0b24+JykpLmF0dHIoInRpdGxlIixuKCkpLGkuYXR0cigiYXJpYS1sYWJlbCIsbigpKSxpLmF0dHIoImFyaWEtZGVzY3JpYmVkYnkiLGUpLG8uU3RvcmVEYXRhKGlbMF0sImRhdGEiLHQpLHRoaXMuJHNlbGVjdGlvbi5wcmVwZW5kKGkpLHRoaXMuJHNlbGVjdGlvblswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLXNlbGVjdGlvbi0tY2xlYXJhYmxlIikpfSxlfSksZS5kZWZpbmUoInNlbGVjdDIvc2VsZWN0aW9uL3NlYXJjaCIsWyJqcXVlcnkiLCIuLi91dGlscyIsIi4uL2tleXMiXSxmdW5jdGlvbihpLG8sbCl7ZnVuY3Rpb24gZShlLHQsbil7ZS5jYWxsKHRoaXMsdCxuKX1yZXR1cm4gZS5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMub3B0aW9ucy5nZXQoInRyYW5zbGF0aW9ucyIpLmdldCgic2VhcmNoIiksbj1pKCc8c3BhbiBjbGFzcz0ic2VsZWN0Mi1zZWFyY2ggc2VsZWN0Mi1zZWFyY2gtLWlubGluZSI+PHRleHRhcmVhIGNsYXNzPSJzZWxlY3QyLXNlYXJjaF9fZmllbGQiIHR5cGU9InNlYXJjaCIgdGFiaW5kZXg9Ii0xIiBhdXRvY29ycmVjdD0ib2ZmIiBhdXRvY2FwaXRhbGl6ZT0ibm9uZSIgc3BlbGxjaGVjaz0iZmFsc2UiIHJvbGU9InNlYXJjaGJveCIgYXJpYS1hdXRvY29tcGxldGU9Imxpc3QiID48L3RleHRhcmVhPjwvc3Bhbj4nKSxuPSh0aGlzLiRzZWFyY2hDb250YWluZXI9bix0aGlzLiRzZWFyY2g9bi5maW5kKCJ0ZXh0YXJlYSIpLHRoaXMuJHNlYXJjaC5wcm9wKCJhdXRvY29tcGxldGUiLHRoaXMub3B0aW9ucy5nZXQoImF1dG9jb21wbGV0ZSIpKSx0aGlzLiRzZWFyY2guYXR0cigiYXJpYS1sYWJlbCIsdCgpKSxlLmNhbGwodGhpcykpO3JldHVybiB0aGlzLl90cmFuc2ZlclRhYkluZGV4KCksbi5hcHBlbmQodGhpcy4kc2VhcmNoQ29udGFpbmVyKSxufSxlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10aGlzLHI9dC5pZCsiLXJlc3VsdHMiLHM9dC5pZCsiLWNvbnRhaW5lciIsZT0oZS5jYWxsKHRoaXMsdCxuKSxpLiRzZWFyY2guYXR0cigiYXJpYS1kZXNjcmliZWRieSIscyksdC5vbigib3BlbiIsZnVuY3Rpb24oKXtpLiRzZWFyY2guYXR0cigiYXJpYS1jb250cm9scyIsciksaS4kc2VhcmNoLnRyaWdnZXIoImZvY3VzIil9KSx0Lm9uKCJjbG9zZSIsZnVuY3Rpb24oKXtpLiRzZWFyY2gudmFsKCIiKSxpLnJlc2l6ZVNlYXJjaCgpLGkuJHNlYXJjaC5yZW1vdmVBdHRyKCJhcmlhLWNvbnRyb2xzIiksaS4kc2VhcmNoLnJlbW92ZUF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIpLGkuJHNlYXJjaC50cmlnZ2VyKCJmb2N1cyIpfSksdC5vbigiZW5hYmxlIixmdW5jdGlvbigpe2kuJHNlYXJjaC5wcm9wKCJkaXNhYmxlZCIsITEpLGkuX3RyYW5zZmVyVGFiSW5kZXgoKX0pLHQub24oImRpc2FibGUiLGZ1bmN0aW9uKCl7aS4kc2VhcmNoLnByb3AoImRpc2FibGVkIiwhMCl9KSx0Lm9uKCJmb2N1cyIsZnVuY3Rpb24oZSl7aS4kc2VhcmNoLnRyaWdnZXIoImZvY3VzIil9KSx0Lm9uKCJyZXN1bHRzOmZvY3VzIixmdW5jdGlvbihlKXtlLmRhdGEuX3Jlc3VsdElkP2kuJHNlYXJjaC5hdHRyKCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiLGUuZGF0YS5fcmVzdWx0SWQpOmkuJHNlYXJjaC5yZW1vdmVBdHRyKCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiKX0pLHRoaXMuJHNlbGVjdGlvbi5vbigiZm9jdXNpbiIsIi5zZWxlY3QyLXNlYXJjaC0taW5saW5lIixmdW5jdGlvbihlKXtpLnRyaWdnZXIoImZvY3VzIixlKX0pLHRoaXMuJHNlbGVjdGlvbi5vbigiZm9jdXNvdXQiLCIuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSIsZnVuY3Rpb24oZSl7aS5faGFuZGxlQmx1cihlKX0pLHRoaXMuJHNlbGVjdGlvbi5vbigia2V5ZG93biIsIi5zZWxlY3QyLXNlYXJjaC0taW5saW5lIixmdW5jdGlvbihlKXt2YXIgdDtlLnN0b3BQcm9wYWdhdGlvbigpLGkudHJpZ2dlcigia2V5cHJlc3MiLGUpLGkuX2tleVVwUHJldmVudGVkPWUuaXNEZWZhdWx0UHJldmVudGVkKCksZS53aGljaD09PWwuQkFDS1NQQUNFJiYiIj09PWkuJHNlYXJjaC52YWwoKSYmMDwodD1pLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UiKS5sYXN0KCkpLmxlbmd0aCYmKHQ9by5HZXREYXRhKHRbMF0sImRhdGEiKSxpLnNlYXJjaFJlbW92ZUNob2ljZSh0KSxlLnByZXZlbnREZWZhdWx0KCkpfSksdGhpcy4kc2VsZWN0aW9uLm9uKCJjbGljayIsIi5zZWxlY3QyLXNlYXJjaC0taW5saW5lIixmdW5jdGlvbihlKXtpLiRzZWFyY2gudmFsKCkmJmUuc3RvcFByb3BhZ2F0aW9uKCl9KSxkb2N1bWVudC5kb2N1bWVudE1vZGUpLGE9ZSYmZTw9MTE7dGhpcy4kc2VsZWN0aW9uLm9uKCJpbnB1dC5zZWFyY2hjaGVjayIsIi5zZWxlY3QyLXNlYXJjaC0taW5saW5lIixmdW5jdGlvbihlKXthP2kuJHNlbGVjdGlvbi5vZmYoImlucHV0LnNlYXJjaCBpbnB1dC5zZWFyY2hjaGVjayIpOmkuJHNlbGVjdGlvbi5vZmYoImtleXVwLnNlYXJjaCIpfSksdGhpcy4kc2VsZWN0aW9uLm9uKCJrZXl1cC5zZWFyY2ggaW5wdXQuc2VhcmNoIiwiLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUiLGZ1bmN0aW9uKGUpe3ZhciB0O2EmJiJpbnB1dCI9PT1lLnR5cGU/aS4kc2VsZWN0aW9uLm9mZigiaW5wdXQuc2VhcmNoIGlucHV0LnNlYXJjaGNoZWNrIik6KHQ9ZS53aGljaCkhPWwuU0hJRlQmJnQhPWwuQ1RSTCYmdCE9bC5BTFQmJnQhPWwuVEFCJiZpLmhhbmRsZVNlYXJjaChlKX0pfSxlLnByb3RvdHlwZS5fdHJhbnNmZXJUYWJJbmRleD1mdW5jdGlvbihlKXt0aGlzLiRzZWFyY2guYXR0cigidGFiaW5kZXgiLHRoaXMuJHNlbGVjdGlvbi5hdHRyKCJ0YWJpbmRleCIpKSx0aGlzLiRzZWxlY3Rpb24uYXR0cigidGFiaW5kZXgiLCItMSIpfSxlLnByb3RvdHlwZS5jcmVhdGVQbGFjZWhvbGRlcj1mdW5jdGlvbihlLHQpe3RoaXMuJHNlYXJjaC5hdHRyKCJwbGFjZWhvbGRlciIsdC50ZXh0KX0sZS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcy4kc2VhcmNoWzBdPT1kb2N1bWVudC5hY3RpdmVFbGVtZW50O3RoaXMuJHNlYXJjaC5hdHRyKCJwbGFjZWhvbGRlciIsIiIpLGUuY2FsbCh0aGlzLHQpLHRoaXMucmVzaXplU2VhcmNoKCksbiYmdGhpcy4kc2VhcmNoLnRyaWdnZXIoImZvY3VzIil9LGUucHJvdG90eXBlLmhhbmRsZVNlYXJjaD1mdW5jdGlvbigpe3ZhciBlO3RoaXMucmVzaXplU2VhcmNoKCksdGhpcy5fa2V5VXBQcmV2ZW50ZWR8fChlPXRoaXMuJHNlYXJjaC52YWwoKSx0aGlzLnRyaWdnZXIoInF1ZXJ5Iix7dGVybTplfSkpLHRoaXMuX2tleVVwUHJldmVudGVkPSExfSxlLnByb3RvdHlwZS5zZWFyY2hSZW1vdmVDaG9pY2U9ZnVuY3Rpb24oZSx0KXt0aGlzLnRyaWdnZXIoInVuc2VsZWN0Iix7ZGF0YTp0fSksdGhpcy4kc2VhcmNoLnZhbCh0LnRleHQpLHRoaXMuaGFuZGxlU2VhcmNoKCl9LGUucHJvdG90eXBlLnJlc2l6ZVNlYXJjaD1mdW5jdGlvbigpe3RoaXMuJHNlYXJjaC5jc3MoIndpZHRoIiwiMjVweCIpO3ZhciBlPSIxMDAlIjsiIj09PXRoaXMuJHNlYXJjaC5hdHRyKCJwbGFjZWhvbGRlciIpJiYoZT0uNzUqKHRoaXMuJHNlYXJjaC52YWwoKS5sZW5ndGgrMSkrImVtIiksdGhpcy4kc2VhcmNoLmNzcygid2lkdGgiLGUpfSxlfSksZS5kZWZpbmUoInNlbGVjdDIvc2VsZWN0aW9uL3NlbGVjdGlvbkNzcyIsWyIuLi91dGlscyJdLGZ1bmN0aW9uKG4pe2Z1bmN0aW9uIGUoKXt9cmV0dXJuIGUucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbihlKXt2YXIgZT1lLmNhbGwodGhpcyksdD10aGlzLm9wdGlvbnMuZ2V0KCJzZWxlY3Rpb25Dc3NDbGFzcyIpfHwiIjtyZXR1cm4tMSE9PXQuaW5kZXhPZigiOmFsbDoiKSYmKHQ9dC5yZXBsYWNlKCI6YWxsOiIsIiIpLG4uY29weU5vbkludGVybmFsQ3NzQ2xhc3NlcyhlWzBdLHRoaXMuJGVsZW1lbnRbMF0pKSxlLmFkZENsYXNzKHQpLGV9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9zZWxlY3Rpb24vZXZlbnRSZWxheSIsWyJqcXVlcnkiXSxmdW5jdGlvbihhKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10aGlzLHI9WyJvcGVuIiwib3BlbmluZyIsImNsb3NlIiwiY2xvc2luZyIsInNlbGVjdCIsInNlbGVjdGluZyIsInVuc2VsZWN0IiwidW5zZWxlY3RpbmciLCJjbGVhciIsImNsZWFyaW5nIl0scz1bIm9wZW5pbmciLCJjbG9zaW5nIiwic2VsZWN0aW5nIiwidW5zZWxlY3RpbmciLCJjbGVhcmluZyJdO2UuY2FsbCh0aGlzLHQsbiksdC5vbigiKiIsZnVuY3Rpb24oZSx0KXt2YXIgbjstMSE9PXIuaW5kZXhPZihlKSYmKG49YS5FdmVudCgic2VsZWN0MjoiK2Use3BhcmFtczp0PXR8fHt9fSksaS4kZWxlbWVudC50cmlnZ2VyKG4pLC0xIT09cy5pbmRleE9mKGUpKSYmKHQucHJldmVudGVkPW4uaXNEZWZhdWx0UHJldmVudGVkKCkpfSl9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi90cmFuc2xhdGlvbiIsWyJqcXVlcnkiLCJyZXF1aXJlIl0sZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBpKGUpe3RoaXMuZGljdD1lfHx7fX1yZXR1cm4gaS5wcm90b3R5cGUuYWxsPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZGljdH0saS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmRpY3RbZV19LGkucHJvdG90eXBlLmV4dGVuZD1mdW5jdGlvbihlKXt0aGlzLmRpY3Q9dC5leHRlbmQoe30sZS5hbGwoKSx0aGlzLmRpY3QpfSxpLl9jYWNoZT17fSxpLmxvYWRQYXRoPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBlIGluIGkuX2NhY2hlfHwodD1uKGUpLGkuX2NhY2hlW2VdPXQpLG5ldyBpKGkuX2NhY2hlW2VdKX0saX0pLGUuZGVmaW5lKCJzZWxlY3QyL2RpYWNyaXRpY3MiLFtdLGZ1bmN0aW9uKCl7cmV0dXJueyLikrYiOiJBIiwi77yhIjoiQSIsIsOAIjoiQSIsIsOBIjoiQSIsIsOCIjoiQSIsIuG6piI6IkEiLCLhuqQiOiJBIiwi4bqqIjoiQSIsIuG6qCI6IkEiLCLDgyI6IkEiLCLEgCI6IkEiLCLEgiI6IkEiLCLhurAiOiJBIiwi4bquIjoiQSIsIuG6tCI6IkEiLCLhurIiOiJBIiwiyKYiOiJBIiwix6AiOiJBIiwiw4QiOiJBIiwix54iOiJBIiwi4bqiIjoiQSIsIsOFIjoiQSIsIse6IjoiQSIsIseNIjoiQSIsIsiAIjoiQSIsIsiCIjoiQSIsIuG6oCI6IkEiLCLhuqwiOiJBIiwi4bq2IjoiQSIsIuG4gCI6IkEiLCLEhCI6IkEiLCLIuiI6IkEiLCLisa8iOiJBIiwi6pyyIjoiQUEiLCLDhiI6IkFFIiwix7wiOiJBRSIsIseiIjoiQUUiLCLqnLQiOiJBTyIsIuqctiI6IkFVIiwi6py4IjoiQVYiLCLqnLoiOiJBViIsIuqcvCI6IkFZIiwi4pK3IjoiQiIsIu+8oiI6IkIiLCLhuIIiOiJCIiwi4biEIjoiQiIsIuG4hiI6IkIiLCLJgyI6IkIiLCLGgiI6IkIiLCLGgSI6IkIiLCLikrgiOiJDIiwi77yjIjoiQyIsIsSGIjoiQyIsIsSIIjoiQyIsIsSKIjoiQyIsIsSMIjoiQyIsIsOHIjoiQyIsIuG4iCI6IkMiLCLGhyI6IkMiLCLIuyI6IkMiLCLqnL4iOiJDIiwi4pK5IjoiRCIsIu+8pCI6IkQiLCLhuIoiOiJEIiwixI4iOiJEIiwi4biMIjoiRCIsIuG4kCI6IkQiLCLhuJIiOiJEIiwi4biOIjoiRCIsIsSQIjoiRCIsIsaLIjoiRCIsIsaKIjoiRCIsIsaJIjoiRCIsIuqduSI6IkQiLCLHsSI6IkRaIiwix4QiOiJEWiIsIseyIjoiRHoiLCLHhSI6IkR6Iiwi4pK6IjoiRSIsIu+8pSI6IkUiLCLDiCI6IkUiLCLDiSI6IkUiLCLDiiI6IkUiLCLhu4AiOiJFIiwi4bq+IjoiRSIsIuG7hCI6IkUiLCLhu4IiOiJFIiwi4bq8IjoiRSIsIsSSIjoiRSIsIuG4lCI6IkUiLCLhuJYiOiJFIiwixJQiOiJFIiwixJYiOiJFIiwiw4siOiJFIiwi4bq6IjoiRSIsIsSaIjoiRSIsIsiEIjoiRSIsIsiGIjoiRSIsIuG6uCI6IkUiLCLhu4YiOiJFIiwiyKgiOiJFIiwi4bicIjoiRSIsIsSYIjoiRSIsIuG4mCI6IkUiLCLhuJoiOiJFIiwixpAiOiJFIiwixo4iOiJFIiwi4pK7IjoiRiIsIu+8piI6IkYiLCLhuJ4iOiJGIiwixpEiOiJGIiwi6p27IjoiRiIsIuKSvCI6IkciLCLvvKciOiJHIiwix7QiOiJHIiwixJwiOiJHIiwi4bigIjoiRyIsIsSeIjoiRyIsIsSgIjoiRyIsIsemIjoiRyIsIsSiIjoiRyIsIsekIjoiRyIsIsaTIjoiRyIsIuqeoCI6IkciLCLqnb0iOiJHIiwi6p2+IjoiRyIsIuKSvSI6IkgiLCLvvKgiOiJIIiwixKQiOiJIIiwi4biiIjoiSCIsIuG4piI6IkgiLCLIniI6IkgiLCLhuKQiOiJIIiwi4bioIjoiSCIsIuG4qiI6IkgiLCLEpiI6IkgiLCLisaciOiJIIiwi4rG1IjoiSCIsIuqejSI6IkgiLCLikr4iOiJJIiwi77ypIjoiSSIsIsOMIjoiSSIsIsONIjoiSSIsIsOOIjoiSSIsIsSoIjoiSSIsIsSqIjoiSSIsIsSsIjoiSSIsIsSwIjoiSSIsIsOPIjoiSSIsIuG4riI6IkkiLCLhu4giOiJJIiwix48iOiJJIiwiyIgiOiJJIiwiyIoiOiJJIiwi4buKIjoiSSIsIsSuIjoiSSIsIuG4rCI6IkkiLCLGlyI6IkkiLCLikr8iOiJKIiwi77yqIjoiSiIsIsS0IjoiSiIsIsmIIjoiSiIsIuKTgCI6IksiLCLvvKsiOiJLIiwi4biwIjoiSyIsIseoIjoiSyIsIuG4siI6IksiLCLEtiI6IksiLCLhuLQiOiJLIiwixpgiOiJLIiwi4rGpIjoiSyIsIuqdgCI6IksiLCLqnYIiOiJLIiwi6p2EIjoiSyIsIuqeoiI6IksiLCLik4EiOiJMIiwi77ysIjoiTCIsIsS/IjoiTCIsIsS5IjoiTCIsIsS9IjoiTCIsIuG4tiI6IkwiLCLhuLgiOiJMIiwixLsiOiJMIiwi4bi8IjoiTCIsIuG4uiI6IkwiLCLFgSI6IkwiLCLIvSI6IkwiLCLisaIiOiJMIiwi4rGgIjoiTCIsIuqdiCI6IkwiLCLqnYYiOiJMIiwi6p6AIjoiTCIsIseHIjoiTEoiLCLHiCI6IkxqIiwi4pOCIjoiTSIsIu+8rSI6Ik0iLCLhuL4iOiJNIiwi4bmAIjoiTSIsIuG5giI6Ik0iLCLisa4iOiJNIiwixpwiOiJNIiwi4pODIjoiTiIsIu+8riI6Ik4iLCLHuCI6Ik4iLCLFgyI6Ik4iLCLDkSI6Ik4iLCLhuYQiOiJOIiwixYciOiJOIiwi4bmGIjoiTiIsIsWFIjoiTiIsIuG5iiI6Ik4iLCLhuYgiOiJOIiwiyKAiOiJOIiwixp0iOiJOIiwi6p6QIjoiTiIsIuqepCI6Ik4iLCLHiiI6Ik5KIiwix4siOiJOaiIsIuKThCI6Ik8iLCLvvK8iOiJPIiwiw5IiOiJPIiwiw5MiOiJPIiwiw5QiOiJPIiwi4buSIjoiTyIsIuG7kCI6Ik8iLCLhu5YiOiJPIiwi4buUIjoiTyIsIsOVIjoiTyIsIuG5jCI6Ik8iLCLIrCI6Ik8iLCLhuY4iOiJPIiwixYwiOiJPIiwi4bmQIjoiTyIsIuG5kiI6Ik8iLCLFjiI6Ik8iLCLIriI6Ik8iLCLIsCI6Ik8iLCLDliI6Ik8iLCLIqiI6Ik8iLCLhu44iOiJPIiwixZAiOiJPIiwix5EiOiJPIiwiyIwiOiJPIiwiyI4iOiJPIiwixqAiOiJPIiwi4bucIjoiTyIsIuG7miI6Ik8iLCLhu6AiOiJPIiwi4bueIjoiTyIsIuG7oiI6Ik8iLCLhu4wiOiJPIiwi4buYIjoiTyIsIseqIjoiTyIsIsesIjoiTyIsIsOYIjoiTyIsIse+IjoiTyIsIsaGIjoiTyIsIsafIjoiTyIsIuqdiiI6Ik8iLCLqnYwiOiJPIiwixZIiOiJPRSIsIsaiIjoiT0kiLCLqnY4iOiJPTyIsIsiiIjoiT1UiLCLik4UiOiJQIiwi77ywIjoiUCIsIuG5lCI6IlAiLCLhuZYiOiJQIiwixqQiOiJQIiwi4rGjIjoiUCIsIuqdkCI6IlAiLCLqnZIiOiJQIiwi6p2UIjoiUCIsIuKThiI6IlEiLCLvvLEiOiJRIiwi6p2WIjoiUSIsIuqdmCI6IlEiLCLJiiI6IlEiLCLik4ciOiJSIiwi77yyIjoiUiIsIsWUIjoiUiIsIuG5mCI6IlIiLCLFmCI6IlIiLCLIkCI6IlIiLCLIkiI6IlIiLCLhuZoiOiJSIiwi4bmcIjoiUiIsIsWWIjoiUiIsIuG5niI6IlIiLCLJjCI6IlIiLCLisaQiOiJSIiwi6p2aIjoiUiIsIuqepiI6IlIiLCLqnoIiOiJSIiwi4pOIIjoiUyIsIu+8syI6IlMiLCLhup4iOiJTIiwixZoiOiJTIiwi4bmkIjoiUyIsIsWcIjoiUyIsIuG5oCI6IlMiLCLFoCI6IlMiLCLhuaYiOiJTIiwi4bmiIjoiUyIsIuG5qCI6IlMiLCLImCI6IlMiLCLFniI6IlMiLCLisb4iOiJTIiwi6p6oIjoiUyIsIuqehCI6IlMiLCLik4kiOiJUIiwi77y0IjoiVCIsIuG5qiI6IlQiLCLFpCI6IlQiLCLhuawiOiJUIiwiyJoiOiJUIiwixaIiOiJUIiwi4bmwIjoiVCIsIuG5riI6IlQiLCLFpiI6IlQiLCLGrCI6IlQiLCLGriI6IlQiLCLIviI6IlQiLCLqnoYiOiJUIiwi6pyoIjoiVFoiLCLik4oiOiJVIiwi77y1IjoiVSIsIsOZIjoiVSIsIsOaIjoiVSIsIsObIjoiVSIsIsWoIjoiVSIsIuG5uCI6IlUiLCLFqiI6IlUiLCLhuboiOiJVIiwixawiOiJVIiwiw5wiOiJVIiwix5siOiJVIiwix5ciOiJVIiwix5UiOiJVIiwix5kiOiJVIiwi4bumIjoiVSIsIsWuIjoiVSIsIsWwIjoiVSIsIseTIjoiVSIsIsiUIjoiVSIsIsiWIjoiVSIsIsavIjoiVSIsIuG7qiI6IlUiLCLhu6giOiJVIiwi4buuIjoiVSIsIuG7rCI6IlUiLCLhu7AiOiJVIiwi4bukIjoiVSIsIuG5siI6IlUiLCLFsiI6IlUiLCLhubYiOiJVIiwi4bm0IjoiVSIsIsmEIjoiVSIsIuKTiyI6IlYiLCLvvLYiOiJWIiwi4bm8IjoiViIsIuG5viI6IlYiLCLGsiI6IlYiLCLqnZ4iOiJWIiwiyYUiOiJWIiwi6p2gIjoiVlkiLCLik4wiOiJXIiwi77y3IjoiVyIsIuG6gCI6IlciLCLhuoIiOiJXIiwixbQiOiJXIiwi4bqGIjoiVyIsIuG6hCI6IlciLCLhuogiOiJXIiwi4rGyIjoiVyIsIuKTjSI6IlgiLCLvvLgiOiJYIiwi4bqKIjoiWCIsIuG6jCI6IlgiLCLik44iOiJZIiwi77y5IjoiWSIsIuG7siI6IlkiLCLDnSI6IlkiLCLFtiI6IlkiLCLhu7giOiJZIiwiyLIiOiJZIiwi4bqOIjoiWSIsIsW4IjoiWSIsIuG7tiI6IlkiLCLhu7QiOiJZIiwixrMiOiJZIiwiyY4iOiJZIiwi4bu+IjoiWSIsIuKTjyI6IloiLCLvvLoiOiJaIiwixbkiOiJaIiwi4bqQIjoiWiIsIsW7IjoiWiIsIsW9IjoiWiIsIuG6kiI6IloiLCLhupQiOiJaIiwixrUiOiJaIiwiyKQiOiJaIiwi4rG/IjoiWiIsIuKxqyI6IloiLCLqnaIiOiJaIiwi4pOQIjoiYSIsIu+9gSI6ImEiLCLhupoiOiJhIiwiw6AiOiJhIiwiw6EiOiJhIiwiw6IiOiJhIiwi4bqnIjoiYSIsIuG6pSI6ImEiLCLhuqsiOiJhIiwi4bqpIjoiYSIsIsOjIjoiYSIsIsSBIjoiYSIsIsSDIjoiYSIsIuG6sSI6ImEiLCLhuq8iOiJhIiwi4bq1IjoiYSIsIuG6syI6ImEiLCLIpyI6ImEiLCLHoSI6ImEiLCLDpCI6ImEiLCLHnyI6ImEiLCLhuqMiOiJhIiwiw6UiOiJhIiwix7siOiJhIiwix44iOiJhIiwiyIEiOiJhIiwiyIMiOiJhIiwi4bqhIjoiYSIsIuG6rSI6ImEiLCLhurciOiJhIiwi4biBIjoiYSIsIsSFIjoiYSIsIuKxpSI6ImEiLCLJkCI6ImEiLCLqnLMiOiJhYSIsIsOmIjoiYWUiLCLHvSI6ImFlIiwix6MiOiJhZSIsIuqctSI6ImFvIiwi6py3IjoiYXUiLCLqnLkiOiJhdiIsIuqcuyI6ImF2Iiwi6py9IjoiYXkiLCLik5EiOiJiIiwi772CIjoiYiIsIuG4gyI6ImIiLCLhuIUiOiJiIiwi4biHIjoiYiIsIsaAIjoiYiIsIsaDIjoiYiIsIsmTIjoiYiIsIuKTkiI6ImMiLCLvvYMiOiJjIiwixIciOiJjIiwixIkiOiJjIiwixIsiOiJjIiwixI0iOiJjIiwiw6ciOiJjIiwi4biJIjoiYyIsIsaIIjoiYyIsIsi8IjoiYyIsIuqcvyI6ImMiLCLihoQiOiJjIiwi4pOTIjoiZCIsIu+9hCI6ImQiLCLhuIsiOiJkIiwixI8iOiJkIiwi4biNIjoiZCIsIuG4kSI6ImQiLCLhuJMiOiJkIiwi4biPIjoiZCIsIsSRIjoiZCIsIsaMIjoiZCIsIsmWIjoiZCIsIsmXIjoiZCIsIuqduiI6ImQiLCLHsyI6ImR6Iiwix4YiOiJkeiIsIuKTlCI6ImUiLCLvvYUiOiJlIiwiw6giOiJlIiwiw6kiOiJlIiwiw6oiOiJlIiwi4buBIjoiZSIsIuG6vyI6ImUiLCLhu4UiOiJlIiwi4buDIjoiZSIsIuG6vSI6ImUiLCLEkyI6ImUiLCLhuJUiOiJlIiwi4biXIjoiZSIsIsSVIjoiZSIsIsSXIjoiZSIsIsOrIjoiZSIsIuG6uyI6ImUiLCLEmyI6ImUiLCLIhSI6ImUiLCLIhyI6ImUiLCLhurkiOiJlIiwi4buHIjoiZSIsIsipIjoiZSIsIuG4nSI6ImUiLCLEmSI6ImUiLCLhuJkiOiJlIiwi4bibIjoiZSIsIsmHIjoiZSIsIsmbIjoiZSIsIsedIjoiZSIsIuKTlSI6ImYiLCLvvYYiOiJmIiwi4bifIjoiZiIsIsaSIjoiZiIsIuqdvCI6ImYiLCLik5YiOiJnIiwi772HIjoiZyIsIse1IjoiZyIsIsSdIjoiZyIsIuG4oSI6ImciLCLEnyI6ImciLCLEoSI6ImciLCLHpyI6ImciLCLEoyI6ImciLCLHpSI6ImciLCLJoCI6ImciLCLqnqEiOiJnIiwi4bW5IjoiZyIsIuqdvyI6ImciLCLik5ciOiJoIiwi772IIjoiaCIsIsSlIjoiaCIsIuG4oyI6ImgiLCLhuKciOiJoIiwiyJ8iOiJoIiwi4bilIjoiaCIsIuG4qSI6ImgiLCLhuKsiOiJoIiwi4bqWIjoiaCIsIsSnIjoiaCIsIuKxqCI6ImgiLCLisbYiOiJoIiwiyaUiOiJoIiwixpUiOiJodiIsIuKTmCI6ImkiLCLvvYkiOiJpIiwiw6wiOiJpIiwiw60iOiJpIiwiw64iOiJpIiwixKkiOiJpIiwixKsiOiJpIiwixK0iOiJpIiwiw68iOiJpIiwi4bivIjoiaSIsIuG7iSI6ImkiLCLHkCI6ImkiLCLIiSI6ImkiLCLIiyI6ImkiLCLhu4siOiJpIiwixK8iOiJpIiwi4bitIjoiaSIsIsmoIjoiaSIsIsSxIjoiaSIsIuKTmSI6ImoiLCLvvYoiOiJqIiwixLUiOiJqIiwix7AiOiJqIiwiyYkiOiJqIiwi4pOaIjoiayIsIu+9iyI6ImsiLCLhuLEiOiJrIiwix6kiOiJrIiwi4bizIjoiayIsIsS3IjoiayIsIuG4tSI6ImsiLCLGmSI6ImsiLCLisaoiOiJrIiwi6p2BIjoiayIsIuqdgyI6ImsiLCLqnYUiOiJrIiwi6p6jIjoiayIsIuKTmyI6ImwiLCLvvYwiOiJsIiwixYAiOiJsIiwixLoiOiJsIiwixL4iOiJsIiwi4bi3IjoibCIsIuG4uSI6ImwiLCLEvCI6ImwiLCLhuL0iOiJsIiwi4bi7IjoibCIsIsW/IjoibCIsIsWCIjoibCIsIsaaIjoibCIsIsmrIjoibCIsIuKxoSI6ImwiLCLqnYkiOiJsIiwi6p6BIjoibCIsIuqdhyI6ImwiLCLHiSI6ImxqIiwi4pOcIjoibSIsIu+9jSI6Im0iLCLhuL8iOiJtIiwi4bmBIjoibSIsIuG5gyI6Im0iLCLJsSI6Im0iLCLJryI6Im0iLCLik50iOiJuIiwi772OIjoibiIsIse5IjoibiIsIsWEIjoibiIsIsOxIjoibiIsIuG5hSI6Im4iLCLFiCI6Im4iLCLhuYciOiJuIiwixYYiOiJuIiwi4bmLIjoibiIsIuG5iSI6Im4iLCLGniI6Im4iLCLJsiI6Im4iLCLFiSI6Im4iLCLqnpEiOiJuIiwi6p6lIjoibiIsIseMIjoibmoiLCLik54iOiJvIiwi772PIjoibyIsIsOyIjoibyIsIsOzIjoibyIsIsO0IjoibyIsIuG7kyI6Im8iLCLhu5EiOiJvIiwi4buXIjoibyIsIuG7lSI6Im8iLCLDtSI6Im8iLCLhuY0iOiJvIiwiyK0iOiJvIiwi4bmPIjoibyIsIsWNIjoibyIsIuG5kSI6Im8iLCLhuZMiOiJvIiwixY8iOiJvIiwiyK8iOiJvIiwiyLEiOiJvIiwiw7YiOiJvIiwiyKsiOiJvIiwi4buPIjoibyIsIsWRIjoibyIsIseSIjoibyIsIsiNIjoibyIsIsiPIjoibyIsIsahIjoibyIsIuG7nSI6Im8iLCLhu5siOiJvIiwi4buhIjoibyIsIuG7nyI6Im8iLCLhu6MiOiJvIiwi4buNIjoibyIsIuG7mSI6Im8iLCLHqyI6Im8iLCLHrSI6Im8iLCLDuCI6Im8iLCLHvyI6Im8iLCLJlCI6Im8iLCLqnYsiOiJvIiwi6p2NIjoibyIsIsm1IjoibyIsIsWTIjoib2UiLCLGoyI6Im9pIiwiyKMiOiJvdSIsIuqdjyI6Im9vIiwi4pOfIjoicCIsIu+9kCI6InAiLCLhuZUiOiJwIiwi4bmXIjoicCIsIsalIjoicCIsIuG1vSI6InAiLCLqnZEiOiJwIiwi6p2TIjoicCIsIuqdlSI6InAiLCLik6AiOiJxIiwi772RIjoicSIsIsmLIjoicSIsIuqdlyI6InEiLCLqnZkiOiJxIiwi4pOhIjoiciIsIu+9kiI6InIiLCLFlSI6InIiLCLhuZkiOiJyIiwixZkiOiJyIiwiyJEiOiJyIiwiyJMiOiJyIiwi4bmbIjoiciIsIuG5nSI6InIiLCLFlyI6InIiLCLhuZ8iOiJyIiwiyY0iOiJyIiwiyb0iOiJyIiwi6p2bIjoiciIsIuqepyI6InIiLCLqnoMiOiJyIiwi4pOiIjoicyIsIu+9kyI6InMiLCLDnyI6InMiLCLFmyI6InMiLCLhuaUiOiJzIiwixZ0iOiJzIiwi4bmhIjoicyIsIsWhIjoicyIsIuG5pyI6InMiLCLhuaMiOiJzIiwi4bmpIjoicyIsIsiZIjoicyIsIsWfIjoicyIsIsi/IjoicyIsIuqeqSI6InMiLCLqnoUiOiJzIiwi4bqbIjoicyIsIuKToyI6InQiLCLvvZQiOiJ0Iiwi4bmrIjoidCIsIuG6lyI6InQiLCLFpSI6InQiLCLhua0iOiJ0IiwiyJsiOiJ0IiwixaMiOiJ0Iiwi4bmxIjoidCIsIuG5ryI6InQiLCLFpyI6InQiLCLGrSI6InQiLCLKiCI6InQiLCLisaYiOiJ0Iiwi6p6HIjoidCIsIuqcqSI6InR6Iiwi4pOkIjoidSIsIu+9lSI6InUiLCLDuSI6InUiLCLDuiI6InUiLCLDuyI6InUiLCLFqSI6InUiLCLhubkiOiJ1IiwixasiOiJ1Iiwi4bm7IjoidSIsIsWtIjoidSIsIsO8IjoidSIsIsecIjoidSIsIseYIjoidSIsIseWIjoidSIsIseaIjoidSIsIuG7pyI6InUiLCLFryI6InUiLCLFsSI6InUiLCLHlCI6InUiLCLIlSI6InUiLCLIlyI6InUiLCLGsCI6InUiLCLhu6siOiJ1Iiwi4bupIjoidSIsIuG7ryI6InUiLCLhu60iOiJ1Iiwi4buxIjoidSIsIuG7pSI6InUiLCLhubMiOiJ1IiwixbMiOiJ1Iiwi4bm3IjoidSIsIuG5tSI6InUiLCLKiSI6InUiLCLik6UiOiJ2Iiwi772WIjoidiIsIuG5vSI6InYiLCLhub8iOiJ2IiwiyosiOiJ2Iiwi6p2fIjoidiIsIsqMIjoidiIsIuqdoSI6InZ5Iiwi4pOmIjoidyIsIu+9lyI6InciLCLhuoEiOiJ3Iiwi4bqDIjoidyIsIsW1IjoidyIsIuG6hyI6InciLCLhuoUiOiJ3Iiwi4bqYIjoidyIsIuG6iSI6InciLCLisbMiOiJ3Iiwi4pOnIjoieCIsIu+9mCI6IngiLCLhuosiOiJ4Iiwi4bqNIjoieCIsIuKTqCI6InkiLCLvvZkiOiJ5Iiwi4buzIjoieSIsIsO9IjoieSIsIsW3IjoieSIsIuG7uSI6InkiLCLIsyI6InkiLCLhuo8iOiJ5Iiwiw78iOiJ5Iiwi4bu3IjoieSIsIuG6mSI6InkiLCLhu7UiOiJ5IiwixrQiOiJ5IiwiyY8iOiJ5Iiwi4bu/IjoieSIsIuKTqSI6InoiLCLvvZoiOiJ6IiwixboiOiJ6Iiwi4bqRIjoieiIsIsW8IjoieiIsIsW+IjoieiIsIuG6kyI6InoiLCLhupUiOiJ6IiwixrYiOiJ6IiwiyKUiOiJ6IiwiyYAiOiJ6Iiwi4rGsIjoieiIsIuqdoyI6InoiLCLOhiI6Is6RIiwizogiOiLOlSIsIs6JIjoizpciLCLOiiI6Is6ZIiwizqoiOiLOmSIsIs6MIjoizp8iLCLOjiI6Is6lIiwizqsiOiLOpSIsIs6PIjoizqkiLCLOrCI6Is6xIiwizq0iOiLOtSIsIs6uIjoizrciLCLOryI6Is65Iiwiz4oiOiLOuSIsIs6QIjoizrkiLCLPjCI6Is6/Iiwiz40iOiLPhSIsIs+LIjoiz4UiLCLOsCI6Is+FIiwiz44iOiLPiSIsIs+CIjoiz4MiLCLigJkiOiInIn19KSxlLmRlZmluZSgic2VsZWN0Mi9kYXRhL2Jhc2UiLFsiLi4vdXRpbHMiXSxmdW5jdGlvbihuKXtmdW5jdGlvbiBpKGUsdCl7aS5fX3N1cGVyX18uY29uc3RydWN0b3IuY2FsbCh0aGlzKX1yZXR1cm4gbi5FeHRlbmQoaSxuLk9ic2VydmFibGUpLGkucHJvdG90eXBlLmN1cnJlbnQ9ZnVuY3Rpb24oZSl7dGhyb3cgbmV3IEVycm9yKCJUaGUgYGN1cnJlbnRgIG1ldGhvZCBtdXN0IGJlIGRlZmluZWQgaW4gY2hpbGQgY2xhc3Nlcy4iKX0saS5wcm90b3R5cGUucXVlcnk9ZnVuY3Rpb24oZSx0KXt0aHJvdyBuZXcgRXJyb3IoIlRoZSBgcXVlcnlgIG1ldGhvZCBtdXN0IGJlIGRlZmluZWQgaW4gY2hpbGQgY2xhc3Nlcy4iKX0saS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQpe30saS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe30saS5wcm90b3R5cGUuZ2VuZXJhdGVSZXN1bHRJZD1mdW5jdGlvbihlLHQpe2U9ZS5pZCsiLXJlc3VsdC0iO3JldHVybiBlKz1uLmdlbmVyYXRlQ2hhcnMoNCksbnVsbCE9dC5pZD9lKz0iLSIrdC5pZC50b1N0cmluZygpOmUrPSItIituLmdlbmVyYXRlQ2hhcnMoNCksZX0saX0pLGUuZGVmaW5lKCJzZWxlY3QyL2RhdGEvc2VsZWN0IixbIi4vYmFzZSIsIi4uL3V0aWxzIiwianF1ZXJ5Il0sZnVuY3Rpb24oZSxvLGwpe2Z1bmN0aW9uIG4oZSx0KXt0aGlzLiRlbGVtZW50PWUsdGhpcy5vcHRpb25zPXQsbi5fX3N1cGVyX18uY29uc3RydWN0b3IuY2FsbCh0aGlzKX1yZXR1cm4gby5FeHRlbmQobixlKSxuLnByb3RvdHlwZS5jdXJyZW50PWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7ZShBcnJheS5wcm90b3R5cGUubWFwLmNhbGwodGhpcy4kZWxlbWVudFswXS5xdWVyeVNlbGVjdG9yQWxsKCI6Y2hlY2tlZCIpLGZ1bmN0aW9uKGUpe3JldHVybiB0Lml0ZW0obChlKSl9KSl9LG4ucHJvdG90eXBlLnNlbGVjdD1mdW5jdGlvbihyKXt2YXIgZSxzPXRoaXM7ci5zZWxlY3RlZD0hMCxudWxsIT1yLmVsZW1lbnQmJiJvcHRpb24iPT09ci5lbGVtZW50LnRhZ05hbWUudG9Mb3dlckNhc2UoKT8oci5lbGVtZW50LnNlbGVjdGVkPSEwLHRoaXMuJGVsZW1lbnQudHJpZ2dlcigiaW5wdXQiKS50cmlnZ2VyKCJjaGFuZ2UiKSk6dGhpcy4kZWxlbWVudC5wcm9wKCJtdWx0aXBsZSIpP3RoaXMuY3VycmVudChmdW5jdGlvbihlKXt2YXIgdD1bXTsocj1bcl0pLnB1c2guYXBwbHkocixlKTtmb3IodmFyIG49MDtuPHIubGVuZ3RoO24rKyl7dmFyIGk9cltuXS5pZDstMT09PXQuaW5kZXhPZihpKSYmdC5wdXNoKGkpfXMuJGVsZW1lbnQudmFsKHQpLHMuJGVsZW1lbnQudHJpZ2dlcigiaW5wdXQiKS50cmlnZ2VyKCJjaGFuZ2UiKX0pOihlPXIuaWQsdGhpcy4kZWxlbWVudC52YWwoZSksdGhpcy4kZWxlbWVudC50cmlnZ2VyKCJpbnB1dCIpLnRyaWdnZXIoImNoYW5nZSIpKX0sbi5wcm90b3R5cGUudW5zZWxlY3Q9ZnVuY3Rpb24ocil7dmFyIHM9dGhpczt0aGlzLiRlbGVtZW50LnByb3AoIm11bHRpcGxlIikmJihyLnNlbGVjdGVkPSExLG51bGwhPXIuZWxlbWVudCYmIm9wdGlvbiI9PT1yLmVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpPyhyLmVsZW1lbnQuc2VsZWN0ZWQ9ITEsdGhpcy4kZWxlbWVudC50cmlnZ2VyKCJpbnB1dCIpLnRyaWdnZXIoImNoYW5nZSIpKTp0aGlzLmN1cnJlbnQoZnVuY3Rpb24oZSl7Zm9yKHZhciB0PVtdLG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXS5pZDtpIT09ci5pZCYmLTE9PT10LmluZGV4T2YoaSkmJnQucHVzaChpKX1zLiRlbGVtZW50LnZhbCh0KSxzLiRlbGVtZW50LnRyaWdnZXIoImlucHV0IikudHJpZ2dlcigiY2hhbmdlIil9KSl9LG4ucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzOyh0aGlzLmNvbnRhaW5lcj1lKS5vbigic2VsZWN0IixmdW5jdGlvbihlKXtuLnNlbGVjdChlLmRhdGEpfSksZS5vbigidW5zZWxlY3QiLGZ1bmN0aW9uKGUpe24udW5zZWxlY3QoZS5kYXRhKX0pfSxuLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy4kZWxlbWVudC5maW5kKCIqIikuZWFjaChmdW5jdGlvbigpe28uUmVtb3ZlRGF0YSh0aGlzKX0pfSxuLnByb3RvdHlwZS5xdWVyeT1mdW5jdGlvbih0LGUpe3ZhciBuPVtdLGk9dGhpczt0aGlzLiRlbGVtZW50LmNoaWxkcmVuKCkuZWFjaChmdW5jdGlvbigpe3ZhciBlOyJvcHRpb24iIT09dGhpcy50YWdOYW1lLnRvTG93ZXJDYXNlKCkmJiJvcHRncm91cCIhPT10aGlzLnRhZ05hbWUudG9Mb3dlckNhc2UoKXx8KGU9bCh0aGlzKSxlPWkuaXRlbShlKSxudWxsIT09KGU9aS5tYXRjaGVzKHQsZSkpJiZuLnB1c2goZSkpfSksZSh7cmVzdWx0czpufSl9LG4ucHJvdG90eXBlLmFkZE9wdGlvbnM9ZnVuY3Rpb24oZSl7dGhpcy4kZWxlbWVudC5hcHBlbmQoZSl9LG4ucHJvdG90eXBlLm9wdGlvbj1mdW5jdGlvbihlKXtlLmNoaWxkcmVuPyh0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm9wdGdyb3VwIikpLmxhYmVsPWUudGV4dDp2b2lkIDAhPT0odD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJvcHRpb24iKSkudGV4dENvbnRlbnQ/dC50ZXh0Q29udGVudD1lLnRleHQ6dC5pbm5lclRleHQ9ZS50ZXh0LHZvaWQgMCE9PWUuaWQmJih0LnZhbHVlPWUuaWQpLGUuZGlzYWJsZWQmJih0LmRpc2FibGVkPSEwKSxlLnNlbGVjdGVkJiYodC5zZWxlY3RlZD0hMCksZS50aXRsZSYmKHQudGl0bGU9ZS50aXRsZSk7dmFyIHQsZT10aGlzLl9ub3JtYWxpemVJdGVtKGUpO3JldHVybiBlLmVsZW1lbnQ9dCxvLlN0b3JlRGF0YSh0LCJkYXRhIixlKSxsKHQpfSxuLnByb3RvdHlwZS5pdGVtPWZ1bmN0aW9uKGUpe3ZhciB0PXt9O2lmKG51bGw9PSh0PW8uR2V0RGF0YShlWzBdLCJkYXRhIikpKXt2YXIgbj1lWzBdO2lmKCJvcHRpb24iPT09bi50YWdOYW1lLnRvTG93ZXJDYXNlKCkpdD17aWQ6ZS52YWwoKSx0ZXh0OmUudGV4dCgpLGRpc2FibGVkOmUucHJvcCgiZGlzYWJsZWQiKSxzZWxlY3RlZDplLnByb3AoInNlbGVjdGVkIiksdGl0bGU6ZS5wcm9wKCJ0aXRsZSIpfTtlbHNlIGlmKCJvcHRncm91cCI9PT1uLnRhZ05hbWUudG9Mb3dlckNhc2UoKSl7Zm9yKHZhciB0PXt0ZXh0OmUucHJvcCgibGFiZWwiKSxjaGlsZHJlbjpbXSx0aXRsZTplLnByb3AoInRpdGxlIil9LGk9ZS5jaGlsZHJlbigib3B0aW9uIikscj1bXSxzPTA7czxpLmxlbmd0aDtzKyspe3ZhciBhPWwoaVtzXSksYT10aGlzLml0ZW0oYSk7ci5wdXNoKGEpfXQuY2hpbGRyZW49cn0odD10aGlzLl9ub3JtYWxpemVJdGVtKHQpKS5lbGVtZW50PWVbMF0sby5TdG9yZURhdGEoZVswXSwiZGF0YSIsdCl9cmV0dXJuIHR9LG4ucHJvdG90eXBlLl9ub3JtYWxpemVJdGVtPWZ1bmN0aW9uKGUpe2UhPT1PYmplY3QoZSkmJihlPXtpZDplLHRleHQ6ZX0pO3JldHVybiBudWxsIT0oZT1sLmV4dGVuZCh7fSx7dGV4dDoiIn0sZSkpLmlkJiYoZS5pZD1lLmlkLnRvU3RyaW5nKCkpLG51bGwhPWUudGV4dCYmKGUudGV4dD1lLnRleHQudG9TdHJpbmcoKSksbnVsbD09ZS5fcmVzdWx0SWQmJmUuaWQmJm51bGwhPXRoaXMuY29udGFpbmVyJiYoZS5fcmVzdWx0SWQ9dGhpcy5nZW5lcmF0ZVJlc3VsdElkKHRoaXMuY29udGFpbmVyLGUpKSxsLmV4dGVuZCh7fSx7c2VsZWN0ZWQ6ITEsZGlzYWJsZWQ6ITF9LGUpfSxuLnByb3RvdHlwZS5tYXRjaGVzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMub3B0aW9ucy5nZXQoIm1hdGNoZXIiKShlLHQpfSxufSksZS5kZWZpbmUoInNlbGVjdDIvZGF0YS9hcnJheSIsWyIuL3NlbGVjdCIsIi4uL3V0aWxzIiwianF1ZXJ5Il0sZnVuY3Rpb24oZSx0LGQpe2Z1bmN0aW9uIGkoZSx0KXt0aGlzLl9kYXRhVG9Db252ZXJ0PXQuZ2V0KCJkYXRhIil8fFtdLGkuX19zdXBlcl9fLmNvbnN0cnVjdG9yLmNhbGwodGhpcyxlLHQpfXJldHVybiB0LkV4dGVuZChpLGUpLGkucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oZSx0KXtpLl9fc3VwZXJfXy5iaW5kLmNhbGwodGhpcyxlLHQpLHRoaXMuYWRkT3B0aW9ucyh0aGlzLmNvbnZlcnRUb09wdGlvbnModGhpcy5fZGF0YVRvQ29udmVydCkpfSxpLnByb3RvdHlwZS5zZWxlY3Q9ZnVuY3Rpb24obil7dmFyIGU7MD09PXRoaXMuJGVsZW1lbnQuZmluZCgib3B0aW9uIikuZmlsdGVyKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQudmFsdWU9PW4uaWQudG9TdHJpbmcoKX0pLmxlbmd0aCYmKGU9dGhpcy5vcHRpb24obiksdGhpcy5hZGRPcHRpb25zKGUpKSxpLl9fc3VwZXJfXy5zZWxlY3QuY2FsbCh0aGlzLG4pfSxpLnByb3RvdHlwZS5jb252ZXJ0VG9PcHRpb25zPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMsbj10aGlzLiRlbGVtZW50LmZpbmQoIm9wdGlvbiIpLGk9bi5tYXAoZnVuY3Rpb24oKXtyZXR1cm4gdC5pdGVtKGQodGhpcykpLmlkfSkuZ2V0KCkscj1bXTtmb3IodmFyIHM9MDtzPGUubGVuZ3RoO3MrKyl7dmFyIGEsbyxsPXRoaXMuX25vcm1hbGl6ZUl0ZW0oZVtzXSk7MDw9aS5pbmRleE9mKGwuaWQpPyhhPW4uZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBkKHRoaXMpLnZhbCgpPT1lLmlkfX0obCkpLG89dGhpcy5pdGVtKGEpLG89ZC5leHRlbmQoITAse30sbCxvKSxvPXRoaXMub3B0aW9uKG8pLGEucmVwbGFjZVdpdGgobykpOihhPXRoaXMub3B0aW9uKGwpLGwuY2hpbGRyZW4mJihvPXRoaXMuY29udmVydFRvT3B0aW9ucyhsLmNoaWxkcmVuKSxhLmFwcGVuZChvKSksci5wdXNoKGEpKX1yZXR1cm4gcn0saX0pLGUuZGVmaW5lKCJzZWxlY3QyL2RhdGEvYWpheCIsWyIuL2FycmF5IiwiLi4vdXRpbHMiLCJqcXVlcnkiXSxmdW5jdGlvbihlLHQscyl7ZnVuY3Rpb24gbihlLHQpe3RoaXMuYWpheE9wdGlvbnM9dGhpcy5fYXBwbHlEZWZhdWx0cyh0LmdldCgiYWpheCIpKSxudWxsIT10aGlzLmFqYXhPcHRpb25zLnByb2Nlc3NSZXN1bHRzJiYodGhpcy5wcm9jZXNzUmVzdWx0cz10aGlzLmFqYXhPcHRpb25zLnByb2Nlc3NSZXN1bHRzKSxuLl9fc3VwZXJfXy5jb25zdHJ1Y3Rvci5jYWxsKHRoaXMsZSx0KX1yZXR1cm4gdC5FeHRlbmQobixlKSxuLnByb3RvdHlwZS5fYXBwbHlEZWZhdWx0cz1mdW5jdGlvbihlKXtyZXR1cm4gcy5leHRlbmQoe30se2RhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuIHMuZXh0ZW5kKHt9LGUse3E6ZS50ZXJtfSl9LHRyYW5zcG9ydDpmdW5jdGlvbihlLHQsbil7ZT1zLmFqYXgoZSk7cmV0dXJuIGUudGhlbih0KSxlLmZhaWwobiksZX19LGUsITApfSxuLnByb3RvdHlwZS5wcm9jZXNzUmVzdWx0cz1mdW5jdGlvbihlKXtyZXR1cm4gZX0sbi5wcm90b3R5cGUucXVlcnk9ZnVuY3Rpb24odCxuKXt2YXIgaT10aGlzLHI9KG51bGwhPXRoaXMuX3JlcXVlc3QmJigiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fcmVxdWVzdC5hYm9ydCYmdGhpcy5fcmVxdWVzdC5hYm9ydCgpLHRoaXMuX3JlcXVlc3Q9bnVsbCkscy5leHRlbmQoe3R5cGU6IkdFVCJ9LHRoaXMuYWpheE9wdGlvbnMpKTtmdW5jdGlvbiBlKCl7dmFyIGU9ci50cmFuc3BvcnQocixmdW5jdGlvbihlKXtlPWkucHJvY2Vzc1Jlc3VsdHMoZSx0KTtpLm9wdGlvbnMuZ2V0KCJkZWJ1ZyIpJiZ3aW5kb3cuY29uc29sZSYmY29uc29sZS5lcnJvciYmKGUmJmUucmVzdWx0cyYmQXJyYXkuaXNBcnJheShlLnJlc3VsdHMpfHxjb25zb2xlLmVycm9yKCJTZWxlY3QyOiBUaGUgQUpBWCByZXN1bHRzIGRpZCBub3QgcmV0dXJuIGFuIGFycmF5IGluIHRoZSBgcmVzdWx0c2Aga2V5IG9mIHRoZSByZXNwb25zZS4iKSksbihlKX0sZnVuY3Rpb24oKXsic3RhdHVzImluIGUmJigwPT09ZS5zdGF0dXN8fCIwIj09PWUuc3RhdHVzKXx8aS50cmlnZ2VyKCJyZXN1bHRzOm1lc3NhZ2UiLHttZXNzYWdlOiJlcnJvckxvYWRpbmcifSl9KTtpLl9yZXF1ZXN0PWV9ImZ1bmN0aW9uIj09dHlwZW9mIHIudXJsJiYoci51cmw9ci51cmwuY2FsbCh0aGlzLiRlbGVtZW50LHQpKSwiZnVuY3Rpb24iPT10eXBlb2Ygci5kYXRhJiYoci5kYXRhPXIuZGF0YS5jYWxsKHRoaXMuJGVsZW1lbnQsdCkpLHRoaXMuYWpheE9wdGlvbnMuZGVsYXkmJm51bGwhPXQudGVybT8odGhpcy5fcXVlcnlUaW1lb3V0JiZ3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuX3F1ZXJ5VGltZW91dCksdGhpcy5fcXVlcnlUaW1lb3V0PXdpbmRvdy5zZXRUaW1lb3V0KGUsdGhpcy5hamF4T3B0aW9ucy5kZWxheSkpOmUoKX0sbn0pLGUuZGVmaW5lKCJzZWxlY3QyL2RhdGEvdGFncyIsWyJqcXVlcnkiXSxmdW5jdGlvbih0KXtmdW5jdGlvbiBlKGUsdCxuKXt2YXIgaT1uLmdldCgidGFncyIpLHI9bi5nZXQoImNyZWF0ZVRhZyIpLHI9KHZvaWQgMCE9PXImJih0aGlzLmNyZWF0ZVRhZz1yKSxuLmdldCgiaW5zZXJ0VGFnIikpO2lmKHZvaWQgMCE9PXImJih0aGlzLmluc2VydFRhZz1yKSxlLmNhbGwodGhpcyx0LG4pLEFycmF5LmlzQXJyYXkoaSkpZm9yKHZhciBzPTA7czxpLmxlbmd0aDtzKyspe3ZhciBhPWlbc10sYT10aGlzLl9ub3JtYWxpemVJdGVtKGEpLGE9dGhpcy5vcHRpb24oYSk7dGhpcy4kZWxlbWVudC5hcHBlbmQoYSl9fXJldHVybiBlLnByb3RvdHlwZS5xdWVyeT1mdW5jdGlvbihlLGQsYyl7dmFyIHU9dGhpczt0aGlzLl9yZW1vdmVPbGRUYWdzKCksbnVsbD09ZC50ZXJtfHxudWxsIT1kLnBhZ2U/ZS5jYWxsKHRoaXMsZCxjKTplLmNhbGwodGhpcyxkLGZ1bmN0aW9uIGUodCxuKXtmb3IodmFyIGk9dC5yZXN1bHRzLHI9MDtyPGkubGVuZ3RoO3IrKyl7dmFyIHM9aVtyXSxhPW51bGwhPXMuY2hpbGRyZW4mJiFlKHtyZXN1bHRzOnMuY2hpbGRyZW59LCEwKTtpZigocy50ZXh0fHwiIikudG9VcHBlckNhc2UoKT09PShkLnRlcm18fCIiKS50b1VwcGVyQ2FzZSgpfHxhKXJldHVybiFuJiYodC5kYXRhPWksdm9pZCBjKHQpKX1pZihuKXJldHVybiEwO3ZhciBvLGw9dS5jcmVhdGVUYWcoZCk7bnVsbCE9bCYmKChvPXUub3B0aW9uKGwpKS5hdHRyKCJkYXRhLXNlbGVjdDItdGFnIiwidHJ1ZSIpLHUuYWRkT3B0aW9ucyhbb10pLHUuaW5zZXJ0VGFnKGksbCkpLHQucmVzdWx0cz1pLGModCl9KX0sZS5wcm90b3R5cGUuY3JlYXRlVGFnPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG51bGw9PXQudGVybXx8IiI9PT0odD10LnRlcm0udHJpbSgpKT9udWxsOntpZDp0LHRleHQ6dH19LGUucHJvdG90eXBlLmluc2VydFRhZz1mdW5jdGlvbihlLHQsbil7dC51bnNoaWZ0KG4pfSxlLnByb3RvdHlwZS5fcmVtb3ZlT2xkVGFncz1mdW5jdGlvbihlKXt0aGlzLiRlbGVtZW50LmZpbmQoIm9wdGlvbltkYXRhLXNlbGVjdDItdGFnXSIpLmVhY2goZnVuY3Rpb24oKXt0aGlzLnNlbGVjdGVkfHx0KHRoaXMpLnJlbW92ZSgpfSl9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9kYXRhL3Rva2VuaXplciIsWyJqcXVlcnkiXSxmdW5jdGlvbihkKXtmdW5jdGlvbiBlKGUsdCxuKXt2YXIgaT1uLmdldCgidG9rZW5pemVyIik7dm9pZCAwIT09aSYmKHRoaXMudG9rZW5pemVyPWkpLGUuY2FsbCh0aGlzLHQsbil9cmV0dXJuIGUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oZSx0LG4pe2UuY2FsbCh0aGlzLHQsbiksdGhpcy4kc2VhcmNoPXQuZHJvcGRvd24uJHNlYXJjaHx8dC5zZWxlY3Rpb24uJHNlYXJjaHx8bi5maW5kKCIuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIil9LGUucHJvdG90eXBlLnF1ZXJ5PWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10aGlzO3QudGVybT10LnRlcm18fCIiO3ZhciByPXRoaXMudG9rZW5pemVyKHQsdGhpcy5vcHRpb25zLGZ1bmN0aW9uKGUpe3ZhciB0PWkuX25vcm1hbGl6ZUl0ZW0oZSk7aS4kZWxlbWVudC5maW5kKCJvcHRpb24iKS5maWx0ZXIoZnVuY3Rpb24oKXtyZXR1cm4gZCh0aGlzKS52YWwoKT09PXQuaWR9KS5sZW5ndGh8fCgoZT1pLm9wdGlvbih0KSkuYXR0cigiZGF0YS1zZWxlY3QyLXRhZyIsITApLGkuX3JlbW92ZU9sZFRhZ3MoKSxpLmFkZE9wdGlvbnMoW2VdKSksaS50cmlnZ2VyKCJzZWxlY3QiLHtkYXRhOnR9KX0pO3IudGVybSE9PXQudGVybSYmKHRoaXMuJHNlYXJjaC5sZW5ndGgmJih0aGlzLiRzZWFyY2gudmFsKHIudGVybSksdGhpcy4kc2VhcmNoLnRyaWdnZXIoImZvY3VzIikpLHQudGVybT1yLnRlcm0pLGUuY2FsbCh0aGlzLHQsbil9LGUucHJvdG90eXBlLnRva2VuaXplcj1mdW5jdGlvbihlLHQsbixpKXtmb3IodmFyIHI9bi5nZXQoInRva2VuU2VwYXJhdG9ycyIpfHxbXSxzPXQudGVybSxhPTAsbz10aGlzLmNyZWF0ZVRhZ3x8ZnVuY3Rpb24oZSl7cmV0dXJue2lkOmUudGVybSx0ZXh0OmUudGVybX19O2E8cy5sZW5ndGg7KXt2YXIgbD1zW2FdOy0xPT09ci5pbmRleE9mKGwpP2ErKzoobD1zLnN1YnN0cigwLGEpLG51bGw9PShsPW8oZC5leHRlbmQoe30sdCx7dGVybTpsfSkpKT9hKys6KGkobCkscz1zLnN1YnN0cihhKzEpfHwiIixhPTApKX1yZXR1cm57dGVybTpzfX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2RhdGEvbWluaW11bUlucHV0TGVuZ3RoIixbXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSx0LG4pe3RoaXMubWluaW11bUlucHV0TGVuZ3RoPW4uZ2V0KCJtaW5pbXVtSW5wdXRMZW5ndGgiKSxlLmNhbGwodGhpcyx0LG4pfXJldHVybiBlLnByb3RvdHlwZS5xdWVyeT1mdW5jdGlvbihlLHQsbil7dC50ZXJtPXQudGVybXx8IiIsdC50ZXJtLmxlbmd0aDx0aGlzLm1pbmltdW1JbnB1dExlbmd0aD90aGlzLnRyaWdnZXIoInJlc3VsdHM6bWVzc2FnZSIse21lc3NhZ2U6ImlucHV0VG9vU2hvcnQiLGFyZ3M6e21pbmltdW06dGhpcy5taW5pbXVtSW5wdXRMZW5ndGgsaW5wdXQ6dC50ZXJtLHBhcmFtczp0fX0pOmUuY2FsbCh0aGlzLHQsbil9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9kYXRhL21heGltdW1JbnB1dExlbmd0aCIsW10sZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCxuKXt0aGlzLm1heGltdW1JbnB1dExlbmd0aD1uLmdldCgibWF4aW11bUlucHV0TGVuZ3RoIiksZS5jYWxsKHRoaXMsdCxuKX1yZXR1cm4gZS5wcm90b3R5cGUucXVlcnk9ZnVuY3Rpb24oZSx0LG4pe3QudGVybT10LnRlcm18fCIiLDA8dGhpcy5tYXhpbXVtSW5wdXRMZW5ndGgmJnQudGVybS5sZW5ndGg+dGhpcy5tYXhpbXVtSW5wdXRMZW5ndGg/dGhpcy50cmlnZ2VyKCJyZXN1bHRzOm1lc3NhZ2UiLHttZXNzYWdlOiJpbnB1dFRvb0xvbmciLGFyZ3M6e21heGltdW06dGhpcy5tYXhpbXVtSW5wdXRMZW5ndGgsaW5wdXQ6dC50ZXJtLHBhcmFtczp0fX0pOmUuY2FsbCh0aGlzLHQsbil9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9kYXRhL21heGltdW1TZWxlY3Rpb25MZW5ndGgiLFtdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlLHQsbil7dGhpcy5tYXhpbXVtU2VsZWN0aW9uTGVuZ3RoPW4uZ2V0KCJtYXhpbXVtU2VsZWN0aW9uTGVuZ3RoIiksZS5jYWxsKHRoaXMsdCxuKX1yZXR1cm4gZS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQsbil7dmFyIGk9dGhpcztlLmNhbGwodGhpcyx0LG4pLHQub24oInNlbGVjdCIsZnVuY3Rpb24oKXtpLl9jaGVja0lmTWF4aW11bVNlbGVjdGVkKCl9KX0sZS5wcm90b3R5cGUucXVlcnk9ZnVuY3Rpb24oZSx0LG4pe3ZhciBpPXRoaXM7dGhpcy5fY2hlY2tJZk1heGltdW1TZWxlY3RlZChmdW5jdGlvbigpe2UuY2FsbChpLHQsbil9KX0sZS5wcm90b3R5cGUuX2NoZWNrSWZNYXhpbXVtU2VsZWN0ZWQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzO3RoaXMuY3VycmVudChmdW5jdGlvbihlKXtlPW51bGwhPWU/ZS5sZW5ndGg6MDswPG4ubWF4aW11bVNlbGVjdGlvbkxlbmd0aCYmZT49bi5tYXhpbXVtU2VsZWN0aW9uTGVuZ3RoP24udHJpZ2dlcigicmVzdWx0czptZXNzYWdlIix7bWVzc2FnZToibWF4aW11bVNlbGVjdGVkIixhcmdzOnttYXhpbXVtOm4ubWF4aW11bVNlbGVjdGlvbkxlbmd0aH19KTp0JiZ0KCl9KX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2Ryb3Bkb3duIixbImpxdWVyeSIsIi4vdXRpbHMiXSxmdW5jdGlvbih0LGUpe2Z1bmN0aW9uIG4oZSx0KXt0aGlzLiRlbGVtZW50PWUsdGhpcy5vcHRpb25zPXQsbi5fX3N1cGVyX18uY29uc3RydWN0b3IuY2FsbCh0aGlzKX1yZXR1cm4gZS5FeHRlbmQobixlLk9ic2VydmFibGUpLG4ucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbigpe3ZhciBlPXQoJzxzcGFuIGNsYXNzPSJzZWxlY3QyLWRyb3Bkb3duIj48c3BhbiBjbGFzcz0ic2VsZWN0Mi1yZXN1bHRzIj48L3NwYW4+PC9zcGFuPicpO3JldHVybiBlLmF0dHIoImRpciIsdGhpcy5vcHRpb25zLmdldCgiZGlyIikpLHRoaXMuJGRyb3Bkb3duPWV9LG4ucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt9LG4ucHJvdG90eXBlLnBvc2l0aW9uPWZ1bmN0aW9uKGUsdCl7fSxuLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy4kZHJvcGRvd24ucmVtb3ZlKCl9LG59KSxlLmRlZmluZSgic2VsZWN0Mi9kcm9wZG93bi9zZWFyY2giLFsianF1ZXJ5Il0sZnVuY3Rpb24ocyl7ZnVuY3Rpb24gZSgpe31yZXR1cm4gZS5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciBlPWUuY2FsbCh0aGlzKSx0PXRoaXMub3B0aW9ucy5nZXQoInRyYW5zbGF0aW9ucyIpLmdldCgic2VhcmNoIiksbj1zKCc8c3BhbiBjbGFzcz0ic2VsZWN0Mi1zZWFyY2ggc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIj48aW5wdXQgY2xhc3M9InNlbGVjdDItc2VhcmNoX19maWVsZCIgdHlwZT0ic2VhcmNoIiB0YWJpbmRleD0iLTEiIGF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJub25lIiBzcGVsbGNoZWNrPSJmYWxzZSIgcm9sZT0ic2VhcmNoYm94IiBhcmlhLWF1dG9jb21wbGV0ZT0ibGlzdCIgLz48L3NwYW4+Jyk7cmV0dXJuIHRoaXMuJHNlYXJjaENvbnRhaW5lcj1uLHRoaXMuJHNlYXJjaD1uLmZpbmQoImlucHV0IiksdGhpcy4kc2VhcmNoLnByb3AoImF1dG9jb21wbGV0ZSIsdGhpcy5vcHRpb25zLmdldCgiYXV0b2NvbXBsZXRlIikpLHRoaXMuJHNlYXJjaC5hdHRyKCJhcmlhLWxhYmVsIix0KCkpLGUucHJlcGVuZChuKSxlfSxlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10aGlzLHI9dC5pZCsiLXJlc3VsdHMiO2UuY2FsbCh0aGlzLHQsbiksdGhpcy4kc2VhcmNoLm9uKCJrZXlkb3duIixmdW5jdGlvbihlKXtpLnRyaWdnZXIoImtleXByZXNzIixlKSxpLl9rZXlVcFByZXZlbnRlZD1lLmlzRGVmYXVsdFByZXZlbnRlZCgpfSksdGhpcy4kc2VhcmNoLm9uKCJpbnB1dCIsZnVuY3Rpb24oZSl7cyh0aGlzKS5vZmYoImtleXVwIil9KSx0aGlzLiRzZWFyY2gub24oImtleXVwIGlucHV0IixmdW5jdGlvbihlKXtpLmhhbmRsZVNlYXJjaChlKX0pLHQub24oIm9wZW4iLGZ1bmN0aW9uKCl7aS4kc2VhcmNoLmF0dHIoInRhYmluZGV4IiwwKSxpLiRzZWFyY2guYXR0cigiYXJpYS1jb250cm9scyIsciksaS4kc2VhcmNoLnRyaWdnZXIoImZvY3VzIiksd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtpLiRzZWFyY2gudHJpZ2dlcigiZm9jdXMiKX0sMCl9KSx0Lm9uKCJjbG9zZSIsZnVuY3Rpb24oKXtpLiRzZWFyY2guYXR0cigidGFiaW5kZXgiLC0xKSxpLiRzZWFyY2gucmVtb3ZlQXR0cigiYXJpYS1jb250cm9scyIpLGkuJHNlYXJjaC5yZW1vdmVBdHRyKCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiKSxpLiRzZWFyY2gudmFsKCIiKSxpLiRzZWFyY2gudHJpZ2dlcigiYmx1ciIpfSksdC5vbigiZm9jdXMiLGZ1bmN0aW9uKCl7dC5pc09wZW4oKXx8aS4kc2VhcmNoLnRyaWdnZXIoImZvY3VzIil9KSx0Lm9uKCJyZXN1bHRzOmFsbCIsZnVuY3Rpb24oZSl7bnVsbCE9ZS5xdWVyeS50ZXJtJiYiIiE9PWUucXVlcnkudGVybXx8KGkuc2hvd1NlYXJjaChlKT9pLiRzZWFyY2hDb250YWluZXJbMF0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1zZWFyY2gtLWhpZGUiKTppLiRzZWFyY2hDb250YWluZXJbMF0uY2xhc3NMaXN0LmFkZCgic2VsZWN0Mi1zZWFyY2gtLWhpZGUiKSl9KSx0Lm9uKCJyZXN1bHRzOmZvY3VzIixmdW5jdGlvbihlKXtlLmRhdGEuX3Jlc3VsdElkP2kuJHNlYXJjaC5hdHRyKCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiLGUuZGF0YS5fcmVzdWx0SWQpOmkuJHNlYXJjaC5yZW1vdmVBdHRyKCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiKX0pfSxlLnByb3RvdHlwZS5oYW5kbGVTZWFyY2g9ZnVuY3Rpb24oZSl7dmFyIHQ7dGhpcy5fa2V5VXBQcmV2ZW50ZWR8fCh0PXRoaXMuJHNlYXJjaC52YWwoKSx0aGlzLnRyaWdnZXIoInF1ZXJ5Iix7dGVybTp0fSkpLHRoaXMuX2tleVVwUHJldmVudGVkPSExfSxlLnByb3RvdHlwZS5zaG93U2VhcmNoPWZ1bmN0aW9uKGUsdCl7cmV0dXJuITB9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9kcm9wZG93bi9oaWRlUGxhY2Vob2xkZXIiLFtdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlLHQsbixpKXt0aGlzLnBsYWNlaG9sZGVyPXRoaXMubm9ybWFsaXplUGxhY2Vob2xkZXIobi5nZXQoInBsYWNlaG9sZGVyIikpLGUuY2FsbCh0aGlzLHQsbixpKX1yZXR1cm4gZS5wcm90b3R5cGUuYXBwZW5kPWZ1bmN0aW9uKGUsdCl7dC5yZXN1bHRzPXRoaXMucmVtb3ZlUGxhY2Vob2xkZXIodC5yZXN1bHRzKSxlLmNhbGwodGhpcyx0KX0sZS5wcm90b3R5cGUubm9ybWFsaXplUGxhY2Vob2xkZXI9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD0ic3RyaW5nIj09dHlwZW9mIHQ/e2lkOiIiLHRleHQ6dH06dH0sZS5wcm90b3R5cGUucmVtb3ZlUGxhY2Vob2xkZXI9ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49dC5zbGljZSgwKSxpPXQubGVuZ3RoLTE7MDw9aTtpLS0pe3ZhciByPXRbaV07dGhpcy5wbGFjZWhvbGRlci5pZD09PXIuaWQmJm4uc3BsaWNlKGksMSl9cmV0dXJuIG59LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9kcm9wZG93bi9pbmZpbml0ZVNjcm9sbCIsWyJqcXVlcnkiXSxmdW5jdGlvbihuKXtmdW5jdGlvbiBlKGUsdCxuLGkpe3RoaXMubGFzdFBhcmFtcz17fSxlLmNhbGwodGhpcyx0LG4saSksdGhpcy4kbG9hZGluZ01vcmU9dGhpcy5jcmVhdGVMb2FkaW5nTW9yZSgpLHRoaXMubG9hZGluZz0hMX1yZXR1cm4gZS5wcm90b3R5cGUuYXBwZW5kPWZ1bmN0aW9uKGUsdCl7dGhpcy4kbG9hZGluZ01vcmUucmVtb3ZlKCksdGhpcy5sb2FkaW5nPSExLGUuY2FsbCh0aGlzLHQpLHRoaXMuc2hvd0xvYWRpbmdNb3JlKHQpJiYodGhpcy4kcmVzdWx0cy5hcHBlbmQodGhpcy4kbG9hZGluZ01vcmUpLHRoaXMubG9hZE1vcmVJZk5lZWRlZCgpKX0sZS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQsbil7dmFyIGk9dGhpcztlLmNhbGwodGhpcyx0LG4pLHQub24oInF1ZXJ5IixmdW5jdGlvbihlKXtpLmxhc3RQYXJhbXM9ZSxpLmxvYWRpbmc9ITB9KSx0Lm9uKCJxdWVyeTphcHBlbmQiLGZ1bmN0aW9uKGUpe2kubGFzdFBhcmFtcz1lLGkubG9hZGluZz0hMH0pLHRoaXMuJHJlc3VsdHMub24oInNjcm9sbCIsdGhpcy5sb2FkTW9yZUlmTmVlZGVkLmJpbmQodGhpcykpfSxlLnByb3RvdHlwZS5sb2FkTW9yZUlmTmVlZGVkPWZ1bmN0aW9uKCl7dmFyIGU9bi5jb250YWlucyhkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsdGhpcy4kbG9hZGluZ01vcmVbMF0pOyF0aGlzLmxvYWRpbmcmJmUmJihlPXRoaXMuJHJlc3VsdHMub2Zmc2V0KCkudG9wK3RoaXMuJHJlc3VsdHMub3V0ZXJIZWlnaHQoITEpLHRoaXMuJGxvYWRpbmdNb3JlLm9mZnNldCgpLnRvcCt0aGlzLiRsb2FkaW5nTW9yZS5vdXRlckhlaWdodCghMSk8PWUrNTApJiZ0aGlzLmxvYWRNb3JlKCl9LGUucHJvdG90eXBlLmxvYWRNb3JlPWZ1bmN0aW9uKCl7dGhpcy5sb2FkaW5nPSEwO3ZhciBlPW4uZXh0ZW5kKHt9LHtwYWdlOjF9LHRoaXMubGFzdFBhcmFtcyk7ZS5wYWdlKyssdGhpcy50cmlnZ2VyKCJxdWVyeTphcHBlbmQiLGUpfSxlLnByb3RvdHlwZS5zaG93TG9hZGluZ01vcmU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdC5wYWdpbmF0aW9uJiZ0LnBhZ2luYXRpb24ubW9yZX0sZS5wcm90b3R5cGUuY3JlYXRlTG9hZGluZ01vcmU9ZnVuY3Rpb24oKXt2YXIgZT1uKCc8bGkgY2xhc3M9InNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1sb2FkLW1vcmUicm9sZT0ib3B0aW9uIiBhcmlhLWRpc2FibGVkPSJ0cnVlIj48L2xpPicpLHQ9dGhpcy5vcHRpb25zLmdldCgidHJhbnNsYXRpb25zIikuZ2V0KCJsb2FkaW5nTW9yZSIpO3JldHVybiBlLmh0bWwodCh0aGlzLmxhc3RQYXJhbXMpKSxlfSxlfSksZS5kZWZpbmUoInNlbGVjdDIvZHJvcGRvd24vYXR0YWNoQm9keSIsWyJqcXVlcnkiLCIuLi91dGlscyJdLGZ1bmN0aW9uKGMsYSl7ZnVuY3Rpb24gZShlLHQsbil7dGhpcy4kZHJvcGRvd25QYXJlbnQ9YyhuLmdldCgiZHJvcGRvd25QYXJlbnQiKXx8ZG9jdW1lbnQuYm9keSksZS5jYWxsKHRoaXMsdCxuKX1yZXR1cm4gZS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQsbil7dmFyIGk9dGhpcztlLmNhbGwodGhpcyx0LG4pLHQub24oIm9wZW4iLGZ1bmN0aW9uKCl7aS5fc2hvd0Ryb3Bkb3duKCksaS5fYXR0YWNoUG9zaXRpb25pbmdIYW5kbGVyKHQpLGkuX2JpbmRDb250YWluZXJSZXN1bHRIYW5kbGVycyh0KX0pLHQub24oImNsb3NlIixmdW5jdGlvbigpe2kuX2hpZGVEcm9wZG93bigpLGkuX2RldGFjaFBvc2l0aW9uaW5nSGFuZGxlcih0KX0pLHRoaXMuJGRyb3Bkb3duQ29udGFpbmVyLm9uKCJtb3VzZWRvd24iLGZ1bmN0aW9uKGUpe2Uuc3RvcFByb3BhZ2F0aW9uKCl9KX0sZS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbihlKXtlLmNhbGwodGhpcyksdGhpcy4kZHJvcGRvd25Db250YWluZXIucmVtb3ZlKCl9LGUucHJvdG90eXBlLnBvc2l0aW9uPWZ1bmN0aW9uKGUsdCxuKXt0LmF0dHIoImNsYXNzIixuLmF0dHIoImNsYXNzIikpLHRbMF0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0MiIpLHRbMF0uY2xhc3NMaXN0LmFkZCgic2VsZWN0Mi1jb250YWluZXItLW9wZW4iKSx0LmNzcyh7cG9zaXRpb246ImFic29sdXRlIix0b3A6LTk5OTk5OX0pLHRoaXMuJGNvbnRhaW5lcj1ufSxlLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oZSl7dmFyIHQ9YygiPHNwYW4+PC9zcGFuPiIpLGU9ZS5jYWxsKHRoaXMpO3JldHVybiB0LmFwcGVuZChlKSx0aGlzLiRkcm9wZG93bkNvbnRhaW5lcj10fSxlLnByb3RvdHlwZS5faGlkZURyb3Bkb3duPWZ1bmN0aW9uKGUpe3RoaXMuJGRyb3Bkb3duQ29udGFpbmVyLmRldGFjaCgpfSxlLnByb3RvdHlwZS5fYmluZENvbnRhaW5lclJlc3VsdEhhbmRsZXJzPWZ1bmN0aW9uKGUsdCl7dmFyIG47dGhpcy5fY29udGFpbmVyUmVzdWx0c0hhbmRsZXJzQm91bmR8fChuPXRoaXMsdC5vbigicmVzdWx0czphbGwiLGZ1bmN0aW9uKCl7bi5fcG9zaXRpb25Ecm9wZG93bigpLG4uX3Jlc2l6ZURyb3Bkb3duKCl9KSx0Lm9uKCJyZXN1bHRzOmFwcGVuZCIsZnVuY3Rpb24oKXtuLl9wb3NpdGlvbkRyb3Bkb3duKCksbi5fcmVzaXplRHJvcGRvd24oKX0pLHQub24oInJlc3VsdHM6bWVzc2FnZSIsZnVuY3Rpb24oKXtuLl9wb3NpdGlvbkRyb3Bkb3duKCksbi5fcmVzaXplRHJvcGRvd24oKX0pLHQub24oInNlbGVjdCIsZnVuY3Rpb24oKXtuLl9wb3NpdGlvbkRyb3Bkb3duKCksbi5fcmVzaXplRHJvcGRvd24oKX0pLHQub24oInVuc2VsZWN0IixmdW5jdGlvbigpe24uX3Bvc2l0aW9uRHJvcGRvd24oKSxuLl9yZXNpemVEcm9wZG93bigpfSksdGhpcy5fY29udGFpbmVyUmVzdWx0c0hhbmRsZXJzQm91bmQ9ITApfSxlLnByb3RvdHlwZS5fYXR0YWNoUG9zaXRpb25pbmdIYW5kbGVyPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcyxpPSJzY3JvbGwuc2VsZWN0Mi4iK3QuaWQscj0icmVzaXplLnNlbGVjdDIuIit0LmlkLHQ9Im9yaWVudGF0aW9uY2hhbmdlLnNlbGVjdDIuIit0LmlkLHM9dGhpcy4kY29udGFpbmVyLnBhcmVudHMoKS5maWx0ZXIoYS5oYXNTY3JvbGwpO3MuZWFjaChmdW5jdGlvbigpe2EuU3RvcmVEYXRhKHRoaXMsInNlbGVjdDItc2Nyb2xsLXBvc2l0aW9uIix7eDpjKHRoaXMpLnNjcm9sbExlZnQoKSx5OmModGhpcykuc2Nyb2xsVG9wKCl9KX0pLHMub24oaSxmdW5jdGlvbihlKXt2YXIgdD1hLkdldERhdGEodGhpcywic2VsZWN0Mi1zY3JvbGwtcG9zaXRpb24iKTtjKHRoaXMpLnNjcm9sbFRvcCh0LnkpfSksYyh3aW5kb3cpLm9uKGkrIiAiK3IrIiAiK3QsZnVuY3Rpb24oZSl7bi5fcG9zaXRpb25Ecm9wZG93bigpLG4uX3Jlc2l6ZURyb3Bkb3duKCl9KX0sZS5wcm90b3R5cGUuX2RldGFjaFBvc2l0aW9uaW5nSGFuZGxlcj1mdW5jdGlvbihlLHQpe3ZhciBuPSJzY3JvbGwuc2VsZWN0Mi4iK3QuaWQsaT0icmVzaXplLnNlbGVjdDIuIit0LmlkLHQ9Im9yaWVudGF0aW9uY2hhbmdlLnNlbGVjdDIuIit0LmlkO3RoaXMuJGNvbnRhaW5lci5wYXJlbnRzKCkuZmlsdGVyKGEuaGFzU2Nyb2xsKS5vZmYobiksYyh3aW5kb3cpLm9mZihuKyIgIitpKyIgIit0KX0sZS5wcm90b3R5cGUuX3Bvc2l0aW9uRHJvcGRvd249ZnVuY3Rpb24oKXt2YXIgZT1jKHdpbmRvdyksdD10aGlzLiRkcm9wZG93blswXS5jbGFzc0xpc3QuY29udGFpbnMoInNlbGVjdDItZHJvcGRvd24tLWFib3ZlIiksbj10aGlzLiRkcm9wZG93blswXS5jbGFzc0xpc3QuY29udGFpbnMoInNlbGVjdDItZHJvcGRvd24tLWJlbG93IiksaT1udWxsLHI9dGhpcy4kY29udGFpbmVyLm9mZnNldCgpLHM9KHIuYm90dG9tPXIudG9wK3RoaXMuJGNvbnRhaW5lci5vdXRlckhlaWdodCghMSkse2hlaWdodDp0aGlzLiRjb250YWluZXIub3V0ZXJIZWlnaHQoITEpfSk7cy50b3A9ci50b3Ascy5ib3R0b209ci50b3Arcy5oZWlnaHQ7dmFyIGE9dGhpcy4kZHJvcGRvd24ub3V0ZXJIZWlnaHQoITEpLG89ZS5zY3JvbGxUb3AoKSxlPWUuc2Nyb2xsVG9wKCkrZS5oZWlnaHQoKSxvPW88ci50b3AtYSxlPWU+ci5ib3R0b20rYSxyPXtsZWZ0OnIubGVmdCx0b3A6cy5ib3R0b219LGw9dGhpcy4kZHJvcGRvd25QYXJlbnQsZD0oInN0YXRpYyI9PT1sLmNzcygicG9zaXRpb24iKSYmKGw9bC5vZmZzZXRQYXJlbnQoKSkse3RvcDowLGxlZnQ6MH0pOyhjLmNvbnRhaW5zKGRvY3VtZW50LmJvZHksbFswXSl8fGxbMF0uaXNDb25uZWN0ZWQpJiYoZD1sLm9mZnNldCgpKSxyLnRvcC09ZC50b3Asci5sZWZ0LT1kLmxlZnQsdHx8bnx8KGk9ImJlbG93IiksZXx8IW98fHQ/IW8mJmUmJnQmJihpPSJiZWxvdyIpOmk9ImFib3ZlIiwoImFib3ZlIj09aXx8dCYmImJlbG93IiE9PWkpJiYoci50b3A9cy50b3AtZC50b3AtYSksbnVsbCE9aSYmKHRoaXMuJGRyb3Bkb3duWzBdLmNsYXNzTGlzdC5yZW1vdmUoInNlbGVjdDItZHJvcGRvd24tLWJlbG93IiksdGhpcy4kZHJvcGRvd25bMF0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUiKSx0aGlzLiRkcm9wZG93blswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLWRyb3Bkb3duLS0iK2kpLHRoaXMuJGNvbnRhaW5lclswXS5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLWNvbnRhaW5lci0tYmVsb3ciKSx0aGlzLiRjb250YWluZXJbMF0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1jb250YWluZXItLWFib3ZlIiksdGhpcy4kY29udGFpbmVyWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItY29udGFpbmVyLS0iK2kpKSx0aGlzLiRkcm9wZG93bkNvbnRhaW5lci5jc3Mocil9LGUucHJvdG90eXBlLl9yZXNpemVEcm9wZG93bj1mdW5jdGlvbigpe3ZhciBlPXt3aWR0aDp0aGlzLiRjb250YWluZXIub3V0ZXJXaWR0aCghMSkrInB4In07dGhpcy5vcHRpb25zLmdldCgiZHJvcGRvd25BdXRvV2lkdGgiKSYmKGUubWluV2lkdGg9ZS53aWR0aCxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIsZS53aWR0aD0iYXV0byIpLHRoaXMuJGRyb3Bkb3duLmNzcyhlKX0sZS5wcm90b3R5cGUuX3Nob3dEcm9wZG93bj1mdW5jdGlvbihlKXt0aGlzLiRkcm9wZG93bkNvbnRhaW5lci5hcHBlbmRUbyh0aGlzLiRkcm9wZG93blBhcmVudCksdGhpcy5fcG9zaXRpb25Ecm9wZG93bigpLHRoaXMuX3Jlc2l6ZURyb3Bkb3duKCl9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9kcm9wZG93bi9taW5pbXVtUmVzdWx0c0ZvclNlYXJjaCIsW10sZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCxuLGkpe3RoaXMubWluaW11bVJlc3VsdHNGb3JTZWFyY2g9bi5nZXQoIm1pbmltdW1SZXN1bHRzRm9yU2VhcmNoIiksdGhpcy5taW5pbXVtUmVzdWx0c0ZvclNlYXJjaDwwJiYodGhpcy5taW5pbXVtUmVzdWx0c0ZvclNlYXJjaD0xLzApLGUuY2FsbCh0aGlzLHQsbixpKX1yZXR1cm4gZS5wcm90b3R5cGUuc2hvd1NlYXJjaD1mdW5jdGlvbihlLHQpe3JldHVybiEoZnVuY3Rpb24gZSh0KXtmb3IodmFyIG49MCxpPTA7aTx0Lmxlbmd0aDtpKyspe3ZhciByPXRbaV07ci5jaGlsZHJlbj9uKz1lKHIuY2hpbGRyZW4pOm4rK31yZXR1cm4gbn0odC5kYXRhLnJlc3VsdHMpPHRoaXMubWluaW11bVJlc3VsdHNGb3JTZWFyY2gpJiZlLmNhbGwodGhpcyx0KX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2Ryb3Bkb3duL3NlbGVjdE9uQ2xvc2UiLFsiLi4vdXRpbHMiXSxmdW5jdGlvbihuKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10aGlzO2UuY2FsbCh0aGlzLHQsbiksdC5vbigiY2xvc2UiLGZ1bmN0aW9uKGUpe2kuX2hhbmRsZVNlbGVjdE9uQ2xvc2UoZSl9KX0sZS5wcm90b3R5cGUuX2hhbmRsZVNlbGVjdE9uQ2xvc2U9ZnVuY3Rpb24oZSx0KXtpZih0JiZudWxsIT10Lm9yaWdpbmFsU2VsZWN0MkV2ZW50KXt0PXQub3JpZ2luYWxTZWxlY3QyRXZlbnQ7aWYoInNlbGVjdCI9PT10Ll90eXBlfHwidW5zZWxlY3QiPT09dC5fdHlwZSlyZXR1cm59dmFyIHQ9dGhpcy5nZXRIaWdobGlnaHRlZFJlc3VsdHMoKTt0Lmxlbmd0aDwxfHxudWxsIT0odD1uLkdldERhdGEodFswXSwiZGF0YSIpKS5lbGVtZW50JiZ0LmVsZW1lbnQuc2VsZWN0ZWR8fG51bGw9PXQuZWxlbWVudCYmdC5zZWxlY3RlZHx8dGhpcy50cmlnZ2VyKCJzZWxlY3QiLHtkYXRhOnR9KX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2Ryb3Bkb3duL2Nsb3NlT25TZWxlY3QiLFtdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe31yZXR1cm4gZS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQsbil7dmFyIGk9dGhpcztlLmNhbGwodGhpcyx0LG4pLHQub24oInNlbGVjdCIsZnVuY3Rpb24oZSl7aS5fc2VsZWN0VHJpZ2dlcmVkKGUpfSksdC5vbigidW5zZWxlY3QiLGZ1bmN0aW9uKGUpe2kuX3NlbGVjdFRyaWdnZXJlZChlKX0pfSxlLnByb3RvdHlwZS5fc2VsZWN0VHJpZ2dlcmVkPWZ1bmN0aW9uKGUsdCl7dmFyIG49dC5vcmlnaW5hbEV2ZW50O24mJihuLmN0cmxLZXl8fG4ubWV0YUtleSl8fHRoaXMudHJpZ2dlcigiY2xvc2UiLHtvcmlnaW5hbEV2ZW50Om4sb3JpZ2luYWxTZWxlY3QyRXZlbnQ6dH0pfSxlfSksZS5kZWZpbmUoInNlbGVjdDIvZHJvcGRvd24vZHJvcGRvd25Dc3MiLFsiLi4vdXRpbHMiXSxmdW5jdGlvbihuKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oZSl7dmFyIGU9ZS5jYWxsKHRoaXMpLHQ9dGhpcy5vcHRpb25zLmdldCgiZHJvcGRvd25Dc3NDbGFzcyIpfHwiIjtyZXR1cm4tMSE9PXQuaW5kZXhPZigiOmFsbDoiKSYmKHQ9dC5yZXBsYWNlKCI6YWxsOiIsIiIpLG4uY29weU5vbkludGVybmFsQ3NzQ2xhc3NlcyhlWzBdLHRoaXMuJGVsZW1lbnRbMF0pKSxlLmFkZENsYXNzKHQpLGV9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9kcm9wZG93bi90YWdzU2VhcmNoSGlnaGxpZ2h0IixbIi4uL3V0aWxzIl0sZnVuY3Rpb24oaSl7ZnVuY3Rpb24gZSgpe31yZXR1cm4gZS5wcm90b3R5cGUuaGlnaGxpZ2h0Rmlyc3RJdGVtPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuJHJlc3VsdHMuZmluZCgiLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlOm5vdCguc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGVkKSIpO2lmKDA8dC5sZW5ndGgpe3ZhciB0PXQuZmlyc3QoKSxuPWkuR2V0RGF0YSh0WzBdLCJkYXRhIikuZWxlbWVudDtpZihuJiZuLmdldEF0dHJpYnV0ZSYmInRydWUiPT09bi5nZXRBdHRyaWJ1dGUoImRhdGEtc2VsZWN0Mi10YWciKSlyZXR1cm4gdm9pZCB0LnRyaWdnZXIoIm1vdXNlZW50ZXIiKX1lLmNhbGwodGhpcyl9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9pMThuL2VuIixbXSxmdW5jdGlvbigpe3JldHVybntlcnJvckxvYWRpbmc6ZnVuY3Rpb24oKXtyZXR1cm4iVGhlIHJlc3VsdHMgY291bGQgbm90IGJlIGxvYWRlZC4ifSxpbnB1dFRvb0xvbmc6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5pbnB1dC5sZW5ndGgtZS5tYXhpbXVtLHQ9IlBsZWFzZSBkZWxldGUgIitlKyIgY2hhcmFjdGVyIjtyZXR1cm4gMSE9ZSYmKHQrPSJzIiksdH0saW5wdXRUb29TaG9ydDpmdW5jdGlvbihlKXtyZXR1cm4iUGxlYXNlIGVudGVyICIrKGUubWluaW11bS1lLmlucHV0Lmxlbmd0aCkrIiBvciBtb3JlIGNoYXJhY3RlcnMifSxsb2FkaW5nTW9yZTpmdW5jdGlvbigpe3JldHVybiJMb2FkaW5nIG1vcmUgcmVzdWx0c+KApiJ9LG1heGltdW1TZWxlY3RlZDpmdW5jdGlvbihlKXt2YXIgdD0iWW91IGNhbiBvbmx5IHNlbGVjdCAiK2UubWF4aW11bSsiIGl0ZW0iO3JldHVybiAxIT1lLm1heGltdW0mJih0Kz0icyIpLHR9LG5vUmVzdWx0czpmdW5jdGlvbigpe3JldHVybiJObyByZXN1bHRzIGZvdW5kIn0sc2VhcmNoaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIlNlYXJjaGluZ+KApiJ9LHJlbW92ZUFsbEl0ZW1zOmZ1bmN0aW9uKCl7cmV0dXJuIlJlbW92ZSBhbGwgaXRlbXMifSxyZW1vdmVJdGVtOmZ1bmN0aW9uKCl7cmV0dXJuIlJlbW92ZSBpdGVtIn0sc2VhcmNoOmZ1bmN0aW9uKCl7cmV0dXJuIlNlYXJjaCJ9fX0pLGUuZGVmaW5lKCJzZWxlY3QyL2RlZmF1bHRzIixbImpxdWVyeSIsIi4vcmVzdWx0cyIsIi4vc2VsZWN0aW9uL3NpbmdsZSIsIi4vc2VsZWN0aW9uL211bHRpcGxlIiwiLi9zZWxlY3Rpb24vcGxhY2Vob2xkZXIiLCIuL3NlbGVjdGlvbi9hbGxvd0NsZWFyIiwiLi9zZWxlY3Rpb24vc2VhcmNoIiwiLi9zZWxlY3Rpb24vc2VsZWN0aW9uQ3NzIiwiLi9zZWxlY3Rpb24vZXZlbnRSZWxheSIsIi4vdXRpbHMiLCIuL3RyYW5zbGF0aW9uIiwiLi9kaWFjcml0aWNzIiwiLi9kYXRhL3NlbGVjdCIsIi4vZGF0YS9hcnJheSIsIi4vZGF0YS9hamF4IiwiLi9kYXRhL3RhZ3MiLCIuL2RhdGEvdG9rZW5pemVyIiwiLi9kYXRhL21pbmltdW1JbnB1dExlbmd0aCIsIi4vZGF0YS9tYXhpbXVtSW5wdXRMZW5ndGgiLCIuL2RhdGEvbWF4aW11bVNlbGVjdGlvbkxlbmd0aCIsIi4vZHJvcGRvd24iLCIuL2Ryb3Bkb3duL3NlYXJjaCIsIi4vZHJvcGRvd24vaGlkZVBsYWNlaG9sZGVyIiwiLi9kcm9wZG93bi9pbmZpbml0ZVNjcm9sbCIsIi4vZHJvcGRvd24vYXR0YWNoQm9keSIsIi4vZHJvcGRvd24vbWluaW11bVJlc3VsdHNGb3JTZWFyY2giLCIuL2Ryb3Bkb3duL3NlbGVjdE9uQ2xvc2UiLCIuL2Ryb3Bkb3duL2Nsb3NlT25TZWxlY3QiLCIuL2Ryb3Bkb3duL2Ryb3Bkb3duQ3NzIiwiLi9kcm9wZG93bi90YWdzU2VhcmNoSGlnaGxpZ2h0IiwiLi9pMThuL2VuIl0sZnVuY3Rpb24obCxzLGEsbyxkLGMsdSxwLGgsZixtLHQsZyx2LHksYix3LHgsRSxfLFQsUyxDLEEsTSxELEwsayxPLFAsZSl7ZnVuY3Rpb24gbigpe3RoaXMucmVzZXQoKX1yZXR1cm4gbi5wcm90b3R5cGUuYXBwbHk9ZnVuY3Rpb24oZSl7bnVsbD09KGU9bC5leHRlbmQoITAse30sdGhpcy5kZWZhdWx0cyxlKSkuZGF0YUFkYXB0ZXImJihudWxsIT1lLmFqYXg/ZS5kYXRhQWRhcHRlcj15Om51bGwhPWUuZGF0YT9lLmRhdGFBZGFwdGVyPXY6ZS5kYXRhQWRhcHRlcj1nLDA8ZS5taW5pbXVtSW5wdXRMZW5ndGgmJihlLmRhdGFBZGFwdGVyPWYuRGVjb3JhdGUoZS5kYXRhQWRhcHRlcix4KSksMDxlLm1heGltdW1JbnB1dExlbmd0aCYmKGUuZGF0YUFkYXB0ZXI9Zi5EZWNvcmF0ZShlLmRhdGFBZGFwdGVyLEUpKSwwPGUubWF4aW11bVNlbGVjdGlvbkxlbmd0aCYmKGUuZGF0YUFkYXB0ZXI9Zi5EZWNvcmF0ZShlLmRhdGFBZGFwdGVyLF8pKSxlLnRhZ3MmJihlLmRhdGFBZGFwdGVyPWYuRGVjb3JhdGUoZS5kYXRhQWRhcHRlcixiKSksbnVsbD09ZS50b2tlblNlcGFyYXRvcnMmJm51bGw9PWUudG9rZW5pemVyfHwoZS5kYXRhQWRhcHRlcj1mLkRlY29yYXRlKGUuZGF0YUFkYXB0ZXIsdykpKSxudWxsPT1lLnJlc3VsdHNBZGFwdGVyJiYoZS5yZXN1bHRzQWRhcHRlcj1zLG51bGwhPWUuYWpheCYmKGUucmVzdWx0c0FkYXB0ZXI9Zi5EZWNvcmF0ZShlLnJlc3VsdHNBZGFwdGVyLEEpKSxudWxsIT1lLnBsYWNlaG9sZGVyJiYoZS5yZXN1bHRzQWRhcHRlcj1mLkRlY29yYXRlKGUucmVzdWx0c0FkYXB0ZXIsQykpLGUuc2VsZWN0T25DbG9zZSYmKGUucmVzdWx0c0FkYXB0ZXI9Zi5EZWNvcmF0ZShlLnJlc3VsdHNBZGFwdGVyLEwpKSxlLnRhZ3MpJiYoZS5yZXN1bHRzQWRhcHRlcj1mLkRlY29yYXRlKGUucmVzdWx0c0FkYXB0ZXIsUCkpLG51bGw9PWUuZHJvcGRvd25BZGFwdGVyJiYoZS5tdWx0aXBsZT9lLmRyb3Bkb3duQWRhcHRlcj1UOih0PWYuRGVjb3JhdGUoVCxTKSxlLmRyb3Bkb3duQWRhcHRlcj10KSwwIT09ZS5taW5pbXVtUmVzdWx0c0ZvclNlYXJjaCYmKGUuZHJvcGRvd25BZGFwdGVyPWYuRGVjb3JhdGUoZS5kcm9wZG93bkFkYXB0ZXIsRCkpLGUuY2xvc2VPblNlbGVjdCYmKGUuZHJvcGRvd25BZGFwdGVyPWYuRGVjb3JhdGUoZS5kcm9wZG93bkFkYXB0ZXIsaykpLG51bGwhPWUuZHJvcGRvd25Dc3NDbGFzcyYmKGUuZHJvcGRvd25BZGFwdGVyPWYuRGVjb3JhdGUoZS5kcm9wZG93bkFkYXB0ZXIsTykpLGUuZHJvcGRvd25BZGFwdGVyPWYuRGVjb3JhdGUoZS5kcm9wZG93bkFkYXB0ZXIsTSkpLG51bGw9PWUuc2VsZWN0aW9uQWRhcHRlciYmKGUubXVsdGlwbGU/ZS5zZWxlY3Rpb25BZGFwdGVyPW86ZS5zZWxlY3Rpb25BZGFwdGVyPWEsbnVsbCE9ZS5wbGFjZWhvbGRlciYmKGUuc2VsZWN0aW9uQWRhcHRlcj1mLkRlY29yYXRlKGUuc2VsZWN0aW9uQWRhcHRlcixkKSksZS5hbGxvd0NsZWFyJiYoZS5zZWxlY3Rpb25BZGFwdGVyPWYuRGVjb3JhdGUoZS5zZWxlY3Rpb25BZGFwdGVyLGMpKSxlLm11bHRpcGxlJiYoZS5zZWxlY3Rpb25BZGFwdGVyPWYuRGVjb3JhdGUoZS5zZWxlY3Rpb25BZGFwdGVyLHUpKSxudWxsIT1lLnNlbGVjdGlvbkNzc0NsYXNzJiYoZS5zZWxlY3Rpb25BZGFwdGVyPWYuRGVjb3JhdGUoZS5zZWxlY3Rpb25BZGFwdGVyLHApKSxlLnNlbGVjdGlvbkFkYXB0ZXI9Zi5EZWNvcmF0ZShlLnNlbGVjdGlvbkFkYXB0ZXIsaCkpLGUubGFuZ3VhZ2U9dGhpcy5fcmVzb2x2ZUxhbmd1YWdlKGUubGFuZ3VhZ2UpLGUubGFuZ3VhZ2UucHVzaCgiZW4iKTtmb3IodmFyIHQsbj1bXSxpPTA7aTxlLmxhbmd1YWdlLmxlbmd0aDtpKyspe3ZhciByPWUubGFuZ3VhZ2VbaV07LTE9PT1uLmluZGV4T2YocikmJm4ucHVzaChyKX1yZXR1cm4gZS5sYW5ndWFnZT1uLGUudHJhbnNsYXRpb25zPXRoaXMuX3Byb2Nlc3NUcmFuc2xhdGlvbnMoZS5sYW5ndWFnZSxlLmRlYnVnKSxlfSxuLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe2Z1bmN0aW9uIG8oZSl7cmV0dXJuIGUucmVwbGFjZSgvW15cdTAwMDAtXHUwMDdFXS9nLGZ1bmN0aW9uKGUpe3JldHVybiB0W2VdfHxlfSl9dGhpcy5kZWZhdWx0cz17YW1kTGFuZ3VhZ2VCYXNlOiIuL2kxOG4vIixhdXRvY29tcGxldGU6Im9mZiIsY2xvc2VPblNlbGVjdDohMCxkZWJ1ZzohMSxkcm9wZG93bkF1dG9XaWR0aDohMSxlc2NhcGVNYXJrdXA6Zi5lc2NhcGVNYXJrdXAsbGFuZ3VhZ2U6e30sbWF0Y2hlcjpmdW5jdGlvbiBlKHQsbil7aWYobnVsbD09dC50ZXJtfHwiIj09PXQudGVybS50cmltKCkpcmV0dXJuIG47aWYobi5jaGlsZHJlbiYmMDxuLmNoaWxkcmVuLmxlbmd0aCl7Zm9yKHZhciBpPWwuZXh0ZW5kKCEwLHt9LG4pLHI9bi5jaGlsZHJlbi5sZW5ndGgtMTswPD1yO3ItLSludWxsPT1lKHQsbi5jaGlsZHJlbltyXSkmJmkuY2hpbGRyZW4uc3BsaWNlKHIsMSk7cmV0dXJuIDA8aS5jaGlsZHJlbi5sZW5ndGg/aTplKHQsaSl9dmFyIHM9byhuLnRleHQpLnRvVXBwZXJDYXNlKCksYT1vKHQudGVybSkudG9VcHBlckNhc2UoKTtyZXR1cm4tMTxzLmluZGV4T2YoYSk/bjpudWxsfSxtaW5pbXVtSW5wdXRMZW5ndGg6MCxtYXhpbXVtSW5wdXRMZW5ndGg6MCxtYXhpbXVtU2VsZWN0aW9uTGVuZ3RoOjAsbWluaW11bVJlc3VsdHNGb3JTZWFyY2g6MCxzZWxlY3RPbkNsb3NlOiExLHNjcm9sbEFmdGVyU2VsZWN0OiExLHNvcnRlcjpmdW5jdGlvbihlKXtyZXR1cm4gZX0sdGVtcGxhdGVSZXN1bHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUudGV4dH0sdGVtcGxhdGVTZWxlY3Rpb246ZnVuY3Rpb24oZSl7cmV0dXJuIGUudGV4dH0sdGhlbWU6ImRlZmF1bHQiLHdpZHRoOiJyZXNvbHZlIn19LG4ucHJvdG90eXBlLmFwcGx5RnJvbUVsZW1lbnQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmxhbmd1YWdlLGk9dGhpcy5kZWZhdWx0cy5sYW5ndWFnZSxyPXQucHJvcCgibGFuZyIpLHQ9dC5jbG9zZXN0KCJbbGFuZ10iKS5wcm9wKCJsYW5nIikscj1BcnJheS5wcm90b3R5cGUuY29uY2F0LmNhbGwodGhpcy5fcmVzb2x2ZUxhbmd1YWdlKHIpLHRoaXMuX3Jlc29sdmVMYW5ndWFnZShuKSx0aGlzLl9yZXNvbHZlTGFuZ3VhZ2UoaSksdGhpcy5fcmVzb2x2ZUxhbmd1YWdlKHQpKTtyZXR1cm4gZS5sYW5ndWFnZT1yLGV9LG4ucHJvdG90eXBlLl9yZXNvbHZlTGFuZ3VhZ2U9ZnVuY3Rpb24oZSl7aWYoIWUpcmV0dXJuW107aWYobC5pc0VtcHR5T2JqZWN0KGUpKXJldHVybltdO2lmKGwuaXNQbGFpbk9iamVjdChlKSlyZXR1cm5bZV07Zm9yKHZhciB0LG49QXJyYXkuaXNBcnJheShlKT9lOltlXSxpPVtdLHI9MDtyPG4ubGVuZ3RoO3IrKylpLnB1c2gobltyXSksInN0cmluZyI9PXR5cGVvZiBuW3JdJiYwPG5bcl0uaW5kZXhPZigiLSIpJiYodD1uW3JdLnNwbGl0KCItIilbMF0saS5wdXNoKHQpKTtyZXR1cm4gaX0sbi5wcm90b3R5cGUuX3Byb2Nlc3NUcmFuc2xhdGlvbnM9ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49bmV3IG0saT0wO2k8ZS5sZW5ndGg7aSsrKXt2YXIgcj1uZXcgbSxzPWVbaV07aWYoInN0cmluZyI9PXR5cGVvZiBzKXRyeXtyPW0ubG9hZFBhdGgocyl9Y2F0Y2goZSl7dHJ5e3M9dGhpcy5kZWZhdWx0cy5hbWRMYW5ndWFnZUJhc2UrcyxyPW0ubG9hZFBhdGgocyl9Y2F0Y2goZSl7dCYmd2luZG93LmNvbnNvbGUmJmNvbnNvbGUud2FybiYmY29uc29sZS53YXJuKCdTZWxlY3QyOiBUaGUgbGFuZ3VhZ2UgZmlsZSBmb3IgIicrcysnIiBjb3VsZCBub3QgYmUgYXV0b21hdGljYWxseSBsb2FkZWQuIEEgZmFsbGJhY2sgd2lsbCBiZSB1c2VkIGluc3RlYWQuJyl9fWVsc2Ugcj1sLmlzUGxhaW5PYmplY3Qocyk/bmV3IG0ocyk6cztuLmV4dGVuZChyKX1yZXR1cm4gbn0sbi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGUsdCl7dmFyIG49e30sZT0obltsLmNhbWVsQ2FzZShlKV09dCxmLl9jb252ZXJ0RGF0YShuKSk7bC5leHRlbmQoITAsdGhpcy5kZWZhdWx0cyxlKX0sbmV3IG59KSxlLmRlZmluZSgic2VsZWN0Mi9vcHRpb25zIixbImpxdWVyeSIsIi4vZGVmYXVsdHMiLCIuL3V0aWxzIl0sZnVuY3Rpb24oZCxuLGMpe2Z1bmN0aW9uIGUoZSx0KXt0aGlzLm9wdGlvbnM9ZSxudWxsIT10JiZ0aGlzLmZyb21FbGVtZW50KHQpLG51bGwhPXQmJih0aGlzLm9wdGlvbnM9bi5hcHBseUZyb21FbGVtZW50KHRoaXMub3B0aW9ucyx0KSksdGhpcy5vcHRpb25zPW4uYXBwbHkodGhpcy5vcHRpb25zKX1yZXR1cm4gZS5wcm90b3R5cGUuZnJvbUVsZW1lbnQ9ZnVuY3Rpb24oZSl7dmFyIHQ9WyJzZWxlY3QyIl0sbj0obnVsbD09dGhpcy5vcHRpb25zLm11bHRpcGxlJiYodGhpcy5vcHRpb25zLm11bHRpcGxlPWUucHJvcCgibXVsdGlwbGUiKSksbnVsbD09dGhpcy5vcHRpb25zLmRpc2FibGVkJiYodGhpcy5vcHRpb25zLmRpc2FibGVkPWUucHJvcCgiZGlzYWJsZWQiKSksbnVsbD09dGhpcy5vcHRpb25zLmF1dG9jb21wbGV0ZSYmZS5wcm9wKCJhdXRvY29tcGxldGUiKSYmKHRoaXMub3B0aW9ucy5hdXRvY29tcGxldGU9ZS5wcm9wKCJhdXRvY29tcGxldGUiKSksbnVsbD09dGhpcy5vcHRpb25zLmRpciYmKGUucHJvcCgiZGlyIik/dGhpcy5vcHRpb25zLmRpcj1lLnByb3AoImRpciIpOmUuY2xvc2VzdCgiW2Rpcl0iKS5wcm9wKCJkaXIiKT90aGlzLm9wdGlvbnMuZGlyPWUuY2xvc2VzdCgiW2Rpcl0iKS5wcm9wKCJkaXIiKTp0aGlzLm9wdGlvbnMuZGlyPSJsdHIiKSxlLnByb3AoImRpc2FibGVkIix0aGlzLm9wdGlvbnMuZGlzYWJsZWQpLGUucHJvcCgibXVsdGlwbGUiLHRoaXMub3B0aW9ucy5tdWx0aXBsZSksYy5HZXREYXRhKGVbMF0sInNlbGVjdDJUYWdzIikmJih0aGlzLm9wdGlvbnMuZGVidWcmJndpbmRvdy5jb25zb2xlJiZjb25zb2xlLndhcm4mJmNvbnNvbGUud2FybignU2VsZWN0MjogVGhlIGBkYXRhLXNlbGVjdDItdGFnc2AgYXR0cmlidXRlIGhhcyBiZWVuIGNoYW5nZWQgdG8gdXNlIHRoZSBgZGF0YS1kYXRhYCBhbmQgYGRhdGEtdGFncz0idHJ1ZSJgIGF0dHJpYnV0ZXMgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBmdXR1cmUgdmVyc2lvbnMgb2YgU2VsZWN0Mi4nKSxjLlN0b3JlRGF0YShlWzBdLCJkYXRhIixjLkdldERhdGEoZVswXSwic2VsZWN0MlRhZ3MiKSksYy5TdG9yZURhdGEoZVswXSwidGFncyIsITApKSxjLkdldERhdGEoZVswXSwiYWpheFVybCIpJiYodGhpcy5vcHRpb25zLmRlYnVnJiZ3aW5kb3cuY29uc29sZSYmY29uc29sZS53YXJuJiZjb25zb2xlLndhcm4oIlNlbGVjdDI6IFRoZSBgZGF0YS1hamF4LXVybGAgYXR0cmlidXRlIGhhcyBiZWVuIGNoYW5nZWQgdG8gYGRhdGEtYWpheC0tdXJsYCBhbmQgc3VwcG9ydCBmb3IgdGhlIG9sZCBhdHRyaWJ1dGUgd2lsbCBiZSByZW1vdmVkIGluIGZ1dHVyZSB2ZXJzaW9ucyBvZiBTZWxlY3QyLiIpLGUuYXR0cigiYWpheC0tdXJsIixjLkdldERhdGEoZVswXSwiYWpheFVybCIpKSxjLlN0b3JlRGF0YShlWzBdLCJhamF4LVVybCIsYy5HZXREYXRhKGVbMF0sImFqYXhVcmwiKSkpLHt9KTtmdW5jdGlvbiBpKGUsdCl7cmV0dXJuIHQudG9VcHBlckNhc2UoKX1mb3IodmFyIHI9MDtyPGVbMF0uYXR0cmlidXRlcy5sZW5ndGg7cisrKXt2YXIgcyxhPWVbMF0uYXR0cmlidXRlc1tyXS5uYW1lOyJkYXRhLSI9PWEuc3Vic3RyKDAsImRhdGEtIi5sZW5ndGgpJiYoYT1hLnN1YnN0cmluZygiZGF0YS0iLmxlbmd0aCkscz1jLkdldERhdGEoZVswXSxhKSxuW2EucmVwbGFjZSgvLShbYS16XSkvZyxpKV09cyl9ZC5mbi5qcXVlcnkmJiIxLiI9PWQuZm4uanF1ZXJ5LnN1YnN0cigwLDIpJiZlWzBdLmRhdGFzZXQmJihuPWQuZXh0ZW5kKCEwLHt9LGVbMF0uZGF0YXNldCxuKSk7dmFyIG8sbD1kLmV4dGVuZCghMCx7fSxjLkdldERhdGEoZVswXSksbik7Zm9yKG8gaW4gbD1jLl9jb252ZXJ0RGF0YShsKSktMTx0LmluZGV4T2Yobyl8fChkLmlzUGxhaW5PYmplY3QodGhpcy5vcHRpb25zW29dKT9kLmV4dGVuZCh0aGlzLm9wdGlvbnNbb10sbFtvXSk6dGhpcy5vcHRpb25zW29dPWxbb10pO3JldHVybiB0aGlzfSxlLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMub3B0aW9uc1tlXX0sZS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGUsdCl7dGhpcy5vcHRpb25zW2VdPXR9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9jb3JlIixbImpxdWVyeSIsIi4vb3B0aW9ucyIsIi4vdXRpbHMiLCIuL2tleXMiXSxmdW5jdGlvbih0LHIscyxpKXtmdW5jdGlvbiBhKGUsdCl7bnVsbCE9cy5HZXREYXRhKGVbMF0sInNlbGVjdDIiKSYmcy5HZXREYXRhKGVbMF0sInNlbGVjdDIiKS5kZXN0cm95KCksdGhpcy4kZWxlbWVudD1lLHRoaXMuaWQ9dGhpcy5fZ2VuZXJhdGVJZChlKSx0aGlzLm9wdGlvbnM9bmV3IHIodD10fHx7fSxlKSxhLl9fc3VwZXJfXy5jb25zdHJ1Y3Rvci5jYWxsKHRoaXMpO3ZhciB0PWUuYXR0cigidGFiaW5kZXgiKXx8MCx0PShzLlN0b3JlRGF0YShlWzBdLCJvbGQtdGFiaW5kZXgiLHQpLGUuYXR0cigidGFiaW5kZXgiLCItMSIpLHRoaXMub3B0aW9ucy5nZXQoImRhdGFBZGFwdGVyIikpLHQ9KHRoaXMuZGF0YUFkYXB0ZXI9bmV3IHQoZSx0aGlzLm9wdGlvbnMpLHRoaXMucmVuZGVyKCkpLG49KHRoaXMuX3BsYWNlQ29udGFpbmVyKHQpLHRoaXMub3B0aW9ucy5nZXQoInNlbGVjdGlvbkFkYXB0ZXIiKSksbj0odGhpcy5zZWxlY3Rpb249bmV3IG4oZSx0aGlzLm9wdGlvbnMpLHRoaXMuJHNlbGVjdGlvbj10aGlzLnNlbGVjdGlvbi5yZW5kZXIoKSx0aGlzLnNlbGVjdGlvbi5wb3NpdGlvbih0aGlzLiRzZWxlY3Rpb24sdCksdGhpcy5vcHRpb25zLmdldCgiZHJvcGRvd25BZGFwdGVyIikpLG49KHRoaXMuZHJvcGRvd249bmV3IG4oZSx0aGlzLm9wdGlvbnMpLHRoaXMuJGRyb3Bkb3duPXRoaXMuZHJvcGRvd24ucmVuZGVyKCksdGhpcy5kcm9wZG93bi5wb3NpdGlvbih0aGlzLiRkcm9wZG93bix0KSx0aGlzLm9wdGlvbnMuZ2V0KCJyZXN1bHRzQWRhcHRlciIpKSxpPSh0aGlzLnJlc3VsdHM9bmV3IG4oZSx0aGlzLm9wdGlvbnMsdGhpcy5kYXRhQWRhcHRlciksdGhpcy4kcmVzdWx0cz10aGlzLnJlc3VsdHMucmVuZGVyKCksdGhpcy5yZXN1bHRzLnBvc2l0aW9uKHRoaXMuJHJlc3VsdHMsdGhpcy4kZHJvcGRvd24pLHRoaXMpO3RoaXMuX2JpbmRBZGFwdGVycygpLHRoaXMuX3JlZ2lzdGVyRG9tRXZlbnRzKCksdGhpcy5fcmVnaXN0ZXJEYXRhRXZlbnRzKCksdGhpcy5fcmVnaXN0ZXJTZWxlY3Rpb25FdmVudHMoKSx0aGlzLl9yZWdpc3RlckRyb3Bkb3duRXZlbnRzKCksdGhpcy5fcmVnaXN0ZXJSZXN1bHRzRXZlbnRzKCksdGhpcy5fcmVnaXN0ZXJFdmVudHMoKSx0aGlzLmRhdGFBZGFwdGVyLmN1cnJlbnQoZnVuY3Rpb24oZSl7aS50cmlnZ2VyKCJzZWxlY3Rpb246dXBkYXRlIix7ZGF0YTplfSl9KSxlWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItaGlkZGVuLWFjY2Vzc2libGUiKSxlLmF0dHIoImFyaWEtaGlkZGVuIiwidHJ1ZSIpLHRoaXMuX3N5bmNBdHRyaWJ1dGVzKCkscy5TdG9yZURhdGEoZVswXSwic2VsZWN0MiIsdGhpcyksZS5kYXRhKCJzZWxlY3QyIix0aGlzKX1yZXR1cm4gcy5FeHRlbmQoYSxzLk9ic2VydmFibGUpLGEucHJvdG90eXBlLl9nZW5lcmF0ZUlkPWZ1bmN0aW9uKGUpe3JldHVybiJzZWxlY3QyLSIrKG51bGwhPWUuYXR0cigiaWQiKT9lLmF0dHIoImlkIik6bnVsbCE9ZS5hdHRyKCJuYW1lIik/ZS5hdHRyKCJuYW1lIikrIi0iK3MuZ2VuZXJhdGVDaGFycygyKTpzLmdlbmVyYXRlQ2hhcnMoNCkpLnJlcGxhY2UoLyg6fFwufFxbfFxdfCwpL2csIiIpfSxhLnByb3RvdHlwZS5fcGxhY2VDb250YWluZXI9ZnVuY3Rpb24oZSl7ZS5pbnNlcnRBZnRlcih0aGlzLiRlbGVtZW50KTt2YXIgdD10aGlzLl9yZXNvbHZlV2lkdGgodGhpcy4kZWxlbWVudCx0aGlzLm9wdGlvbnMuZ2V0KCJ3aWR0aCIpKTtudWxsIT10JiZlLmNzcygid2lkdGgiLHQpfSxhLnByb3RvdHlwZS5fcmVzb2x2ZVdpZHRoPWZ1bmN0aW9uKGUsdCl7dmFyIG49L153aWR0aDooKFstK10/KFswLTldKlwuKT9bMC05XSspKHB4fGVtfGV4fCV8aW58Y218bW18cHR8cGMpKS9pO2lmKCJyZXNvbHZlIj09dClyZXR1cm4gbnVsbCE9KGk9dGhpcy5fcmVzb2x2ZVdpZHRoKGUsInN0eWxlIikpP2k6dGhpcy5fcmVzb2x2ZVdpZHRoKGUsImVsZW1lbnQiKTtpZigiZWxlbWVudCI9PXQpcmV0dXJuKGk9ZS5vdXRlcldpZHRoKCExKSk8PTA/ImF1dG8iOmkrInB4IjtpZigic3R5bGUiIT10KXJldHVybiJjb21wdXRlZHN0eWxlIj09dD93aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlWzBdKS53aWR0aDp0O3ZhciBpPWUuYXR0cigic3R5bGUiKTtpZigic3RyaW5nIj09dHlwZW9mIGkpZm9yKHZhciByPWkuc3BsaXQoIjsiKSxzPTAsYT1yLmxlbmd0aDtzPGE7cys9MSl7dmFyIG89cltzXS5yZXBsYWNlKC9ccy9nLCIiKS5tYXRjaChuKTtpZihudWxsIT09byYmMTw9by5sZW5ndGgpcmV0dXJuIG9bMV19cmV0dXJuIG51bGx9LGEucHJvdG90eXBlLl9iaW5kQWRhcHRlcnM9ZnVuY3Rpb24oKXt0aGlzLmRhdGFBZGFwdGVyLmJpbmQodGhpcyx0aGlzLiRjb250YWluZXIpLHRoaXMuc2VsZWN0aW9uLmJpbmQodGhpcyx0aGlzLiRjb250YWluZXIpLHRoaXMuZHJvcGRvd24uYmluZCh0aGlzLHRoaXMuJGNvbnRhaW5lciksdGhpcy5yZXN1bHRzLmJpbmQodGhpcyx0aGlzLiRjb250YWluZXIpfSxhLnByb3RvdHlwZS5fcmVnaXN0ZXJEb21FdmVudHM9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuJGVsZW1lbnQub24oImNoYW5nZS5zZWxlY3QyIixmdW5jdGlvbigpe3QuZGF0YUFkYXB0ZXIuY3VycmVudChmdW5jdGlvbihlKXt0LnRyaWdnZXIoInNlbGVjdGlvbjp1cGRhdGUiLHtkYXRhOmV9KX0pfSksdGhpcy4kZWxlbWVudC5vbigiZm9jdXMuc2VsZWN0MiIsZnVuY3Rpb24oZSl7dC50cmlnZ2VyKCJmb2N1cyIsZSl9KSx0aGlzLl9zeW5jQT1zLmJpbmQodGhpcy5fc3luY0F0dHJpYnV0ZXMsdGhpcyksdGhpcy5fc3luY1M9cy5iaW5kKHRoaXMuX3N5bmNTdWJ0cmVlLHRoaXMpLHRoaXMuX29ic2VydmVyPW5ldyB3aW5kb3cuTXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbihlKXt0Ll9zeW5jQSgpLHQuX3N5bmNTKGUpfSksdGhpcy5fb2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLiRlbGVtZW50WzBdLHthdHRyaWJ1dGVzOiEwLGNoaWxkTGlzdDohMCxzdWJ0cmVlOiExfSl9LGEucHJvdG90eXBlLl9yZWdpc3RlckRhdGFFdmVudHM9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuZGF0YUFkYXB0ZXIub24oIioiLGZ1bmN0aW9uKGUsdCl7bi50cmlnZ2VyKGUsdCl9KX0sYS5wcm90b3R5cGUuX3JlZ2lzdGVyU2VsZWN0aW9uRXZlbnRzPWZ1bmN0aW9uKCl7dmFyIG49dGhpcyxpPVsidG9nZ2xlIiwiZm9jdXMiXTt0aGlzLnNlbGVjdGlvbi5vbigidG9nZ2xlIixmdW5jdGlvbigpe24udG9nZ2xlRHJvcGRvd24oKX0pLHRoaXMuc2VsZWN0aW9uLm9uKCJmb2N1cyIsZnVuY3Rpb24oZSl7bi5mb2N1cyhlKX0pLHRoaXMuc2VsZWN0aW9uLm9uKCIqIixmdW5jdGlvbihlLHQpey0xPT09aS5pbmRleE9mKGUpJiZuLnRyaWdnZXIoZSx0KX0pfSxhLnByb3RvdHlwZS5fcmVnaXN0ZXJEcm9wZG93bkV2ZW50cz1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5kcm9wZG93bi5vbigiKiIsZnVuY3Rpb24oZSx0KXtuLnRyaWdnZXIoZSx0KX0pfSxhLnByb3RvdHlwZS5fcmVnaXN0ZXJSZXN1bHRzRXZlbnRzPWZ1bmN0aW9uKCl7dmFyIG49dGhpczt0aGlzLnJlc3VsdHMub24oIioiLGZ1bmN0aW9uKGUsdCl7bi50cmlnZ2VyKGUsdCl9KX0sYS5wcm90b3R5cGUuX3JlZ2lzdGVyRXZlbnRzPWZ1bmN0aW9uKCl7dmFyIG49dGhpczt0aGlzLm9uKCJvcGVuIixmdW5jdGlvbigpe24uJGNvbnRhaW5lclswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLWNvbnRhaW5lci0tb3BlbiIpfSksdGhpcy5vbigiY2xvc2UiLGZ1bmN0aW9uKCl7bi4kY29udGFpbmVyWzBdLmNsYXNzTGlzdC5yZW1vdmUoInNlbGVjdDItY29udGFpbmVyLS1vcGVuIil9KSx0aGlzLm9uKCJlbmFibGUiLGZ1bmN0aW9uKCl7bi4kY29udGFpbmVyWzBdLmNsYXNzTGlzdC5yZW1vdmUoInNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCIpfSksdGhpcy5vbigiZGlzYWJsZSIsZnVuY3Rpb24oKXtuLiRjb250YWluZXJbMF0uY2xhc3NMaXN0LmFkZCgic2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIil9KSx0aGlzLm9uKCJibHVyIixmdW5jdGlvbigpe24uJGNvbnRhaW5lclswXS5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMiKX0pLHRoaXMub24oInF1ZXJ5IixmdW5jdGlvbih0KXtuLmlzT3BlbigpfHxuLnRyaWdnZXIoIm9wZW4iLHt9KSx0aGlzLmRhdGFBZGFwdGVyLnF1ZXJ5KHQsZnVuY3Rpb24oZSl7bi50cmlnZ2VyKCJyZXN1bHRzOmFsbCIse2RhdGE6ZSxxdWVyeTp0fSl9KX0pLHRoaXMub24oInF1ZXJ5OmFwcGVuZCIsZnVuY3Rpb24odCl7dGhpcy5kYXRhQWRhcHRlci5xdWVyeSh0LGZ1bmN0aW9uKGUpe24udHJpZ2dlcigicmVzdWx0czphcHBlbmQiLHtkYXRhOmUscXVlcnk6dH0pfSl9KSx0aGlzLm9uKCJrZXlwcmVzcyIsZnVuY3Rpb24oZSl7dmFyIHQ9ZS53aGljaDtuLmlzT3BlbigpP3Q9PT1pLkVTQ3x8dD09PWkuVVAmJmUuYWx0S2V5PyhuLmNsb3NlKGUpLGUucHJldmVudERlZmF1bHQoKSk6dD09PWkuRU5URVJ8fHQ9PT1pLlRBQj8obi50cmlnZ2VyKCJyZXN1bHRzOnNlbGVjdCIse30pLGUucHJldmVudERlZmF1bHQoKSk6dD09PWkuU1BBQ0UmJmUuY3RybEtleT8obi50cmlnZ2VyKCJyZXN1bHRzOnRvZ2dsZSIse30pLGUucHJldmVudERlZmF1bHQoKSk6dD09PWkuVVA/KG4udHJpZ2dlcigicmVzdWx0czpwcmV2aW91cyIse30pLGUucHJldmVudERlZmF1bHQoKSk6dD09PWkuRE9XTiYmKG4udHJpZ2dlcigicmVzdWx0czpuZXh0Iix7fSksZS5wcmV2ZW50RGVmYXVsdCgpKToodD09PWkuRU5URVJ8fHQ9PT1pLlNQQUNFfHx0PT09aS5ET1dOJiZlLmFsdEtleSkmJihuLm9wZW4oKSxlLnByZXZlbnREZWZhdWx0KCkpfSl9LGEucHJvdG90eXBlLl9zeW5jQXR0cmlidXRlcz1mdW5jdGlvbigpe3RoaXMub3B0aW9ucy5zZXQoImRpc2FibGVkIix0aGlzLiRlbGVtZW50LnByb3AoImRpc2FibGVkIikpLHRoaXMuaXNEaXNhYmxlZCgpPyh0aGlzLmlzT3BlbigpJiZ0aGlzLmNsb3NlKCksdGhpcy50cmlnZ2VyKCJkaXNhYmxlIix7fSkpOnRoaXMudHJpZ2dlcigiZW5hYmxlIix7fSl9LGEucHJvdG90eXBlLl9pc0NoYW5nZU11dGF0aW9uPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7aWYoZS5hZGRlZE5vZGVzJiYwPGUuYWRkZWROb2Rlcy5sZW5ndGgpe2Zvcih2YXIgbj0wO248ZS5hZGRlZE5vZGVzLmxlbmd0aDtuKyspaWYoZS5hZGRlZE5vZGVzW25dLnNlbGVjdGVkKXJldHVybiEwfWVsc2V7aWYoZS5yZW1vdmVkTm9kZXMmJjA8ZS5yZW1vdmVkTm9kZXMubGVuZ3RoKXJldHVybiEwO2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGUuc29tZShmdW5jdGlvbihlKXtyZXR1cm4gdC5faXNDaGFuZ2VNdXRhdGlvbihlKX0pfXJldHVybiExfSxhLnByb3RvdHlwZS5fc3luY1N1YnRyZWU9ZnVuY3Rpb24oZSl7dmFyIGU9dGhpcy5faXNDaGFuZ2VNdXRhdGlvbihlKSx0PXRoaXM7ZSYmdGhpcy5kYXRhQWRhcHRlci5jdXJyZW50KGZ1bmN0aW9uKGUpe3QudHJpZ2dlcigic2VsZWN0aW9uOnVwZGF0ZSIse2RhdGE6ZX0pfSl9LGEucHJvdG90eXBlLnRyaWdnZXI9ZnVuY3Rpb24oZSx0KXt2YXIgbj1hLl9fc3VwZXJfXy50cmlnZ2VyLGk9e29wZW46Im9wZW5pbmciLGNsb3NlOiJjbG9zaW5nIixzZWxlY3Q6InNlbGVjdGluZyIsdW5zZWxlY3Q6InVuc2VsZWN0aW5nIixjbGVhcjoiY2xlYXJpbmcifTtpZih2b2lkIDA9PT10JiYodD17fSksZSBpbiBpKXt2YXIgcj17cHJldmVudGVkOiExLG5hbWU6ZSxhcmdzOnR9O2lmKG4uY2FsbCh0aGlzLGlbZV0sciksci5wcmV2ZW50ZWQpcmV0dXJuIHZvaWQodC5wcmV2ZW50ZWQ9ITApfW4uY2FsbCh0aGlzLGUsdCl9LGEucHJvdG90eXBlLnRvZ2dsZURyb3Bkb3duPWZ1bmN0aW9uKCl7dGhpcy5pc0Rpc2FibGVkKCl8fCh0aGlzLmlzT3BlbigpP3RoaXMuY2xvc2UoKTp0aGlzLm9wZW4oKSl9LGEucHJvdG90eXBlLm9wZW49ZnVuY3Rpb24oKXt0aGlzLmlzT3BlbigpfHx0aGlzLmlzRGlzYWJsZWQoKXx8dGhpcy50cmlnZ2VyKCJxdWVyeSIse30pfSxhLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbihlKXt0aGlzLmlzT3BlbigpJiZ0aGlzLnRyaWdnZXIoImNsb3NlIix7b3JpZ2luYWxFdmVudDplfSl9LGEucHJvdG90eXBlLmlzRW5hYmxlZD1mdW5jdGlvbigpe3JldHVybiF0aGlzLmlzRGlzYWJsZWQoKX0sYS5wcm90b3R5cGUuaXNEaXNhYmxlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLm9wdGlvbnMuZ2V0KCJkaXNhYmxlZCIpfSxhLnByb3RvdHlwZS5pc09wZW49ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kY29udGFpbmVyWzBdLmNsYXNzTGlzdC5jb250YWlucygic2VsZWN0Mi1jb250YWluZXItLW9wZW4iKX0sYS5wcm90b3R5cGUuaGFzRm9jdXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kY29udGFpbmVyWzBdLmNsYXNzTGlzdC5jb250YWlucygic2VsZWN0Mi1jb250YWluZXItLWZvY3VzIil9LGEucHJvdG90eXBlLmZvY3VzPWZ1bmN0aW9uKGUpe3RoaXMuaGFzRm9jdXMoKXx8KHRoaXMuJGNvbnRhaW5lclswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMiKSx0aGlzLnRyaWdnZXIoImZvY3VzIix7fSkpfSxhLnByb3RvdHlwZS5lbmFibGU9ZnVuY3Rpb24oZSl7dGhpcy5vcHRpb25zLmdldCgiZGVidWciKSYmd2luZG93LmNvbnNvbGUmJmNvbnNvbGUud2FybiYmY29uc29sZS53YXJuKCdTZWxlY3QyOiBUaGUgYHNlbGVjdDIoImVuYWJsZSIpYCBtZXRob2QgaGFzIGJlZW4gZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIGxhdGVyIFNlbGVjdDIgdmVyc2lvbnMuIFVzZSAkZWxlbWVudC5wcm9wKCJkaXNhYmxlZCIpIGluc3RlYWQuJyk7ZT0hKGU9bnVsbCE9ZSYmMCE9PWUubGVuZ3RoP2U6WyEwXSlbMF07dGhpcy4kZWxlbWVudC5wcm9wKCJkaXNhYmxlZCIsZSl9LGEucHJvdG90eXBlLmRhdGE9ZnVuY3Rpb24oKXt0aGlzLm9wdGlvbnMuZ2V0KCJkZWJ1ZyIpJiYwPGFyZ3VtZW50cy5sZW5ndGgmJndpbmRvdy5jb25zb2xlJiZjb25zb2xlLndhcm4mJmNvbnNvbGUud2FybignU2VsZWN0MjogRGF0YSBjYW4gbm8gbG9uZ2VyIGJlIHNldCB1c2luZyBgc2VsZWN0MigiZGF0YSIpYC4gWW91IHNob3VsZCBjb25zaWRlciBzZXR0aW5nIHRoZSB2YWx1ZSBpbnN0ZWFkIHVzaW5nIGAkZWxlbWVudC52YWwoKWAuJyk7dmFyIHQ9W107cmV0dXJuIHRoaXMuZGF0YUFkYXB0ZXIuY3VycmVudChmdW5jdGlvbihlKXt0PWV9KSx0fSxhLnByb3RvdHlwZS52YWw9ZnVuY3Rpb24oZSl7aWYodGhpcy5vcHRpb25zLmdldCgiZGVidWciKSYmd2luZG93LmNvbnNvbGUmJmNvbnNvbGUud2FybiYmY29uc29sZS53YXJuKCdTZWxlY3QyOiBUaGUgYHNlbGVjdDIoInZhbCIpYCBtZXRob2QgaGFzIGJlZW4gZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIGxhdGVyIFNlbGVjdDIgdmVyc2lvbnMuIFVzZSAkZWxlbWVudC52YWwoKSBpbnN0ZWFkLicpLG51bGw9PWV8fDA9PT1lLmxlbmd0aClyZXR1cm4gdGhpcy4kZWxlbWVudC52YWwoKTtlPWVbMF07QXJyYXkuaXNBcnJheShlKSYmKGU9ZS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIGUudG9TdHJpbmcoKX0pKSx0aGlzLiRlbGVtZW50LnZhbChlKS50cmlnZ2VyKCJpbnB1dCIpLnRyaWdnZXIoImNoYW5nZSIpfSxhLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7cy5SZW1vdmVEYXRhKHRoaXMuJGNvbnRhaW5lclswXSksdGhpcy4kY29udGFpbmVyLnJlbW92ZSgpLHRoaXMuX29ic2VydmVyLmRpc2Nvbm5lY3QoKSx0aGlzLl9vYnNlcnZlcj1udWxsLHRoaXMuX3N5bmNBPW51bGwsdGhpcy5fc3luY1M9bnVsbCx0aGlzLiRlbGVtZW50Lm9mZigiLnNlbGVjdDIiKSx0aGlzLiRlbGVtZW50LmF0dHIoInRhYmluZGV4IixzLkdldERhdGEodGhpcy4kZWxlbWVudFswXSwib2xkLXRhYmluZGV4IikpLHRoaXMuJGVsZW1lbnRbMF0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1oaWRkZW4tYWNjZXNzaWJsZSIpLHRoaXMuJGVsZW1lbnQuYXR0cigiYXJpYS1oaWRkZW4iLCJmYWxzZSIpLHMuUmVtb3ZlRGF0YSh0aGlzLiRlbGVtZW50WzBdKSx0aGlzLiRlbGVtZW50LnJlbW92ZURhdGEoInNlbGVjdDIiKSx0aGlzLmRhdGFBZGFwdGVyLmRlc3Ryb3koKSx0aGlzLnNlbGVjdGlvbi5kZXN0cm95KCksdGhpcy5kcm9wZG93bi5kZXN0cm95KCksdGhpcy5yZXN1bHRzLmRlc3Ryb3koKSx0aGlzLmRhdGFBZGFwdGVyPW51bGwsdGhpcy5zZWxlY3Rpb249bnVsbCx0aGlzLmRyb3Bkb3duPW51bGwsdGhpcy5yZXN1bHRzPW51bGx9LGEucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbigpe3ZhciBlPXQoJzxzcGFuIGNsYXNzPSJzZWxlY3QyIHNlbGVjdDItY29udGFpbmVyIj48c3BhbiBjbGFzcz0ic2VsZWN0aW9uIj48L3NwYW4+PHNwYW4gY2xhc3M9ImRyb3Bkb3duLXdyYXBwZXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9zcGFuPicpO3JldHVybiBlLmF0dHIoImRpciIsdGhpcy5vcHRpb25zLmdldCgiZGlyIikpLHRoaXMuJGNvbnRhaW5lcj1lLHRoaXMuJGNvbnRhaW5lclswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLWNvbnRhaW5lci0tIit0aGlzLm9wdGlvbnMuZ2V0KCJ0aGVtZSIpKSxzLlN0b3JlRGF0YShlWzBdLCJlbGVtZW50Iix0aGlzLiRlbGVtZW50KSxlfSxhfSksZS5kZWZpbmUoImpxdWVyeS1tb3VzZXdoZWVsIixbImpxdWVyeSJdLGZ1bmN0aW9uKGUpe3JldHVybiBlfSksZS5kZWZpbmUoImpxdWVyeS5zZWxlY3QyIixbImpxdWVyeSIsImpxdWVyeS1tb3VzZXdoZWVsIiwiLi9zZWxlY3QyL2NvcmUiLCIuL3NlbGVjdDIvZGVmYXVsdHMiLCIuL3NlbGVjdDIvdXRpbHMiXSxmdW5jdGlvbihyLGUscyx0LGEpe3ZhciBvO3JldHVybiBudWxsPT1yLmZuLnNlbGVjdDImJihvPVsib3BlbiIsImNsb3NlIiwiZGVzdHJveSJdLHIuZm4uc2VsZWN0Mj1mdW5jdGlvbih0KXtpZigib2JqZWN0Ij09dHlwZW9mKHQ9dHx8e30pKXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1yLmV4dGVuZCghMCx7fSx0KTtuZXcgcyhyKHRoaXMpLGUpfSksdGhpczt2YXIgbixpO2lmKCJzdHJpbmciPT10eXBlb2YgdClyZXR1cm4gaT1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9YS5HZXREYXRhKHRoaXMsInNlbGVjdDIiKTtudWxsPT1lJiZ3aW5kb3cuY29uc29sZSYmY29uc29sZS5lcnJvciYmY29uc29sZS5lcnJvcigiVGhlIHNlbGVjdDIoJyIrdCsiJykgbWV0aG9kIHdhcyBjYWxsZWQgb24gYW4gZWxlbWVudCB0aGF0IGlzIG5vdCB1c2luZyBTZWxlY3QyLiIpLG49ZVt0XS5hcHBseShlLGkpfSksLTE8by5pbmRleE9mKHQpP3RoaXM6bjt0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgYXJndW1lbnRzIGZvciBTZWxlY3QyOiAiK3QpfSksbnVsbD09ci5mbi5zZWxlY3QyLmRlZmF1bHRzJiYoci5mbi5zZWxlY3QyLmRlZmF1bHRzPXQpLHN9KTt2YXIgZSxuLHAscyxhLGgsZixtLGcsdix5LGkscixiLG89e2RlZmluZTplLmRlZmluZSxyZXF1aXJlOmUucmVxdWlyZX07ZnVuY3Rpb24gdyhlLHQpe3JldHVybiBpLmNhbGwoZSx0KX1mdW5jdGlvbiBsKGUsdCl7dmFyIG4saSxyLHMsYSxvLGwsZCxjLHUscD10JiZ0LnNwbGl0KCIvIiksaD12Lm1hcCxmPWgmJmhbIioiXXx8e307aWYoZSl7Zm9yKHQ9KGU9ZS5zcGxpdCgiLyIpKS5sZW5ndGgtMSx2Lm5vZGVJZENvbXBhdCYmYi50ZXN0KGVbdF0pJiYoZVt0XT1lW3RdLnJlcGxhY2UoYiwiIikpLCIuIj09PWVbMF0uY2hhckF0KDApJiZwJiYoZT1wLnNsaWNlKDAscC5sZW5ndGgtMSkuY29uY2F0KGUpKSxkPTA7ZDxlLmxlbmd0aDtkKyspIi4iPT09KHU9ZVtkXSk/KGUuc3BsaWNlKGQsMSksLS1kKToiLi4iIT09dXx8MD09PWR8fDE9PT1kJiYiLi4iPT09ZVsyXXx8Ii4uIj09PWVbZC0xXXx8MDxkJiYoZS5zcGxpY2UoZC0xLDIpLGQtPTIpO2U9ZS5qb2luKCIvIil9aWYoKHB8fGYpJiZoKXtmb3IoZD0obj1lLnNwbGl0KCIvIikpLmxlbmd0aDswPGQ7LS1kKXtpZihpPW4uc2xpY2UoMCxkKS5qb2luKCIvIikscClmb3IoYz1wLmxlbmd0aDswPGM7LS1jKWlmKHI9KHI9aFtwLnNsaWNlKDAsYykuam9pbigiLyIpXSkmJnJbaV0pe3M9cixhPWQ7YnJlYWt9aWYocylicmVhazshbyYmZiYmZltpXSYmKG89ZltpXSxsPWQpfSFzJiZvJiYocz1vLGE9bCkscyYmKG4uc3BsaWNlKDAsYSxzKSxlPW4uam9pbigiLyIpKX1yZXR1cm4gZX1mdW5jdGlvbiB4KHQsbil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGU9ci5jYWxsKGFyZ3VtZW50cywwKTtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGVbMF0mJjE9PT1lLmxlbmd0aCYmZS5wdXNoKG51bGwpLGEuYXBwbHkocCxlLmNvbmNhdChbdCxuXSkpfX1mdW5jdGlvbiBFKGUpe3ZhciB0O2lmKHcoZyxlKSYmKHQ9Z1tlXSxkZWxldGUgZ1tlXSx5W2VdPSEwLHMuYXBwbHkocCx0KSksdyhtLGUpfHx3KHksZSkpcmV0dXJuIG1bZV07dGhyb3cgbmV3IEVycm9yKCJObyAiK2UpfWZ1bmN0aW9uIGQoZSl7dmFyIHQsbj1lP2UuaW5kZXhPZigiISIpOi0xO3JldHVybi0xPG4mJih0PWUuc3Vic3RyaW5nKDAsbiksZT1lLnN1YnN0cmluZyhuKzEsZS5sZW5ndGgpKSxbdCxlXX1mdW5jdGlvbiBfKGUpe3JldHVybiBlP2QoZSk6W119dmFyIGM9by5yZXF1aXJlKCJqcXVlcnkuc2VsZWN0MiIpO3JldHVybiB0LmZuLnNlbGVjdDIuYW1kPW8sY30pOwovLyMgc291cmNlTWFwcGluZ1VSTD12ZW5kb3IubWluLmpzLm1hcAo="}},"time_used":88,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":88,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/images/dhl_logo_transparent.svg","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.927Z","timestamp":1785161166927,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/images/dhl_logo_transparent.svg HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 530\r\nlast-modified: Wed, 01 Feb 2023 11:40:26 GMT\r\netag: \"3fc-5f3a1ea1a0016-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":1020,"size_decoded":814,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"ad8a1b10f9beaee724e1902987f6e980","sha1":"4e4dc94956ff19adfd6a2df7aef8f8332bb27f5a","sha256":"5577646e7f7a2629cc090af4535356845ba87ead97bcd6a6e4915737f0ac1d56","sha512":"96cabe078ebef0bd6b697cffe4e5f41ac6fe975c70181a2289bd4464136f72134221b4ff380548b05c2cf431cc7c570c009152c35e8d59f0659a4463cb0304d6","ssdeep":"","tlshash":"5e1112b0c27faa58888b4300cd2d91712d3bc08a77c5a6d0f1c117b31f45c89c4a3db4","first_seen":"2023-05-21T16:39:27Z","last_seen":"2026-07-27T14:06:41.192127Z","times_seen":138,"resource_available":false,"data":"PHN2ZyBkYXRhLW5hbWU9ImxvZ28gQmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE5NiAyNy43MTgzIj4KICA8ZyBmaWxsPSIjZDQwNTExIj4KICAgIDxwYXRoIGQ9Ik0wIDIyLjFoMjYuNTFsLTEuNDUgMS45N0gwVjIyLjF6TTAgMTguNDVoMjkuMmwtMS40NSAxLjk2SDB2LTEuOTZ6TTAgMjUuNzZoMjMuODJsLTEuNDUgMS45Nkgwdi0xLjk2eiIvPgogICAgPGc+CiAgICAgIDxwYXRoIGQ9Ik0xOTYgMjQuMDdoLTI2LjRsMS40NC0xLjk3SDE5NnYxLjk3ek0xOTYgMjcuNzJoLTI5LjA5bDEuNDQtMS45NkgxOTZ2MS45NnpNMTczLjc0IDE4LjQ1SDE5NnYxLjk2aC0yMy43MWwxLjQ1LTEuOTZ6Ii8+CiAgICA8L2c+CiAgICA8Zz4KICAgICAgPHBhdGggZD0iTTI1LjY3IDI3LjcybDEyLjU4LTE3LjFoMTUuNmMxLjczIDAgMS43MS42Ni44NyAxLjgtLjg2IDEuMTYtMi4zMSAzLjE2LTMuMTkgNC4zNC0uNDQuNi0xLjI0IDEuNjggMS40MSAxLjY4aDIwLjkxYy0xLjc0IDIuMzktNy4zOCA5LjI4LTE3LjUgOS4yOHpNOTcuNyAxOC40NGwtNi44MSA5LjI4aC0xOGw2LjgzLTkuMjhIOTcuN3pNMTIzLjcyIDE4LjQ0bC02LjgyIDkuMjhIOTguOTFsNi44My05LjI4ek0xMjkuNTcgMTguNDRzLTEuMyAxLjgtMS45NSAyLjY2Yy0yLjI2IDMuMDYtLjI2IDYuNjEgNy4xMSA2LjYxaDI4Ljg5bDYuODItOS4yN3oiLz4KICAgIDwvZz4KICAgIDxnPgogICAgICA8cGF0aCBkPSJNMzQuNDcgMEwyOC4yIDguNWgzNC4xM2MxLjcyIDAgMS43LjY2Ljg1IDEuOC0uODUgMS4xNi0yLjI4IDMuMTgtMy4xNiA0LjM2LS40NC42LTEuMjQgMS42OSAxLjQxIDEuNjlINzUuNGw0LjEzLTUuNjJDODIuMSA3LjI0IDc5Ljc2IDAgNzAuNTggMHpNMTI1LjI3IDE2LjM1SDgxLjI2TDkzLjMgMGgxNy45OGwtNi44OSA5LjM3aDguMDJsNi45LTkuMzdoMTcuOTlsLTEyLjAzIDE2LjM1ek0xNjIuMiAwbC0xMi4wMiAxNi4zNWgtMTkuMDZMMTQzLjE2IDB6Ii8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4K"}},"time_used":37,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":37,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/i/77/77/090/34090/1276x1189/QPp6vq_1276x1188_b8eacf27485b26fd.webp","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"imageset","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.935Z","timestamp":1785161166935,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /i/77/77/090/34090/1276x1189/QPp6vq_1276x1188_b8eacf27485b26fd.webp HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-length: 27004\r\nlast-modified: Wed, 21 Aug 2024 09:27:27 GMT\r\netag: \"697c-6202e26837dc0\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":27004,"size_decoded":27210,"mime_type":"image/webp","magic":"RIFF (little-endian) data, Web/P image, VP8 encoding, 1276x1188, Scaling: [none]x[none], YUV color, decoders should clamp","md5":"0940c9be57e05c1d2ad2c40d197f6d82","sha1":"6e7e901483513e7501e9ae6cb5821f9dafd3e170","sha256":"73ec3f07e9d1c4543718d609cd06d3c3298e21e7bf44a3d01980d418007b8f6b","sha512":"39070b05c33c9a5202b10ee04ddbfdca51453abf5f18e0aaaa176d5413e7ac1541f99f0363880e2346aeb2b8438930c74be665950c906f905ea88a19812b624e","ssdeep":"384:piekALMLOjozLzjQZVgilIXVKkj7icwH8Pz+ntlWyLoG7viPOzsS6QMLwmEjPe:gekzijozLHQhlCKk/ieKHgPLw57","tlshash":"93c2bfd6e6a32e196f2212f1573fd459ba4124c0c39c956b5cc6770fb528138ceba232","first_seen":"2026-07-27T14:06:41.192717Z","last_seen":"2026-07-27T14:06:41.192717Z","times_seen":1,"resource_available":false,"data":"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"}},"time_used":38,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":38,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/webfonts/fa-solid-900.woff2","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.013Z","timestamp":1785161167013,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/webfonts/fa-solid-900.woff2 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://dhlexpress.bg/public/dist/styles/vendor.min.css?v1762424770\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: font/woff2\r\nlast-modified: Thu, 06 Nov 2025 10:26:10 GMT\r\netag: \"1ba00-642ea7e5fe88d-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":113152,"size_decoded":113452,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), CFF, length 113152, version 897.256","md5":"9209428ae208e223b94b9172802e97a7","sha1":"49c2d746beabbaa5b1a58d660b217feb34272636","sha256":"bdd7887ef769948024a5cc37a018f19da6a9b355b4a09973836115e0d31ead55","sha512":"e9b4c9b779964d9c113909556b779bbd76e080684533f9b5aa0c1ea0184b6cbb1939da7d9c7deef86c2dda8019af4eabce3f97444d774fd6bded7d59bb319c70","ssdeep":"3072:61qFLgGf+tEq2a+ql8ktqmlAD2mEsiJCYY:61qF92aratrS2mQCT","tlshash":"98b302963dc0e22765ec01f25834ec7019723a4e7782c9774ad6fc826167a74648e9f7","first_seen":"2025-10-03T11:13:32.660211Z","last_seen":"2026-07-27T14:52:58.843942Z","times_seen":2055,"resource_available":false,"data":"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"}},"time_used":48,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":48,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/fonts/Delivery_W_CdLt.woff2","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.055Z","timestamp":1785161167055,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/fonts/Delivery_W_CdLt.woff2 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://dhlexpress.bg/public/dist/styles/application.min.css?v1773055958\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: font/woff2\r\ncontent-length: 33756\r\nlast-modified: Wed, 01 Feb 2023 11:40:26 GMT\r\netag: \"83dc-5f3a1ea18e6cc\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":33756,"size_decoded":34011,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 33756, version 1.66","md5":"073f912ebdec8b9c6091f5f7fd28fef4","sha1":"4ceca5bce590c592c7f4da11cfbc045a8f500227","sha256":"3287727c2dc7032a10fa3c90fe25860f5f838ece43ffee48f547c95dd6f22fb4","sha512":"5b1e5ba0df99e39c7463e800a271db99319e11c9c2927d3ac7c0c3f6987114f483a2c2940d150e5e61653f4f32d3ad7e95a33a5db21fea9588454936284e74fd","ssdeep":"768:XwqSpHnEM8WX7Tz+M3/suM4N17K5BIUg58VI7cRB4:XwqSRnlX7TH/T17K5BVS8yIRB4","tlshash":"f4e2f1447a3f9ba460a30f9702fee4a1d7186ed52a429e80ac920cc730753af97b51d6","first_seen":"2023-05-21T16:39:27Z","last_seen":"2026-07-27T14:06:41.194594Z","times_seen":256,"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":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/fonts/Delivery_W_Bd.woff2","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.056Z","timestamp":1785161167056,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/fonts/Delivery_W_Bd.woff2 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://dhlexpress.bg/public/dist/styles/application.min.css?v1773055958\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: font/woff2\r\ncontent-length: 33808\r\nlast-modified: Wed, 01 Feb 2023 11:40:26 GMT\r\netag: \"8410-5f3a1ea182b45\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":33808,"size_decoded":34063,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 33808, version 1.66","md5":"7637928007dc8ed18d0c789995aa2af2","sha1":"421ccda189112cb40cdf3fff8fb20f5f840e3dfc","sha256":"62cf91563ce604e4d98e2e0e479f636cb95f505eccae77e14da46bc28f8cedfc","sha512":"e96a77bfbf22cf933b38713a4916cef65866f15e2f01f32c780774f01195dd6a51c7c04efd082da13b8bb28fa3644274dee77f781bb5856cfdb92fb83b559cce","ssdeep":"768:lAJvYNQwoCAOdf/ECuBNZGSgwOx9wmNzQ32Fw3KUbzc37A5MHopL:lsvYNYCAq/EnpGSBOomtQ32FwE3dHop","tlshash":"a5e2f23cf3fe8c9327e815e706395a6a404072b2b961054eae37f153ea454183357d8b","first_seen":"2023-04-19T09:33:02Z","last_seen":"2026-07-27T14:06:41.195262Z","times_seen":347,"resource_available":false,"data":"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"}},"time_used":40,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":40,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/i/77/77/08e/3408e/1276x1189/tPbLy7_1276x1188_f759a8ffa421e2e9.webp","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"imageset","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.935Z","timestamp":1785161166935,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /i/77/77/08e/3408e/1276x1189/tPbLy7_1276x1188_f759a8ffa421e2e9.webp HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-length: 25714\r\nlast-modified: Wed, 21 Aug 2024 08:44:19 GMT\r\netag: \"6472-6202d8c41bec0\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":25714,"size_decoded":25920,"mime_type":"image/webp","magic":"RIFF (little-endian) data, Web/P image, VP8 encoding, 1276x1188, Scaling: [none]x[none], YUV color, decoders should clamp","md5":"4ca80a3b405849cb175305cf6f827883","sha1":"8edc1a1298b42456f6043b8f0f9cb3bf7f6ba5a8","sha256":"0fbf3c3c5f8d0cf6fe661d7ec78ab1c926cc67a8ca4e1f594e2865621b336586","sha512":"7c840f0208d433a799b459f51d31f17ac06ea240938fe5be9f59cd6ea324236421cbfb92cce2508f7fdcd5a687cc5c3f98320787a3faf3b2d8d31ea3a7101c0d","ssdeep":"384:UlyxEU3fg/z/golIkUCXEboBiUNoeq770H0J/SjZmlicrqxTQFgnYYZ1n:d13o/z/goUboPoeqsXcrqxignjj","tlshash":"acb29d93a9677c0acb6600767867d131a90764d2c3fe896b5dc6238fb89213ccaf1172","first_seen":"2026-07-27T14:06:41.195875Z","last_seen":"2026-07-27T14:06:41.195875Z","times_seen":1,"resource_available":false,"data":"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"}},"time_used":39,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":39,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/i/77/77/091/34091/1276x1189/90GwS8_1276x1188_d17051026a4b40d4.webp","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"imageset","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:06.936Z","timestamp":1785161166936,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /i/77/77/091/34091/1276x1189/90GwS8_1276x1188_d17051026a4b40d4.webp HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://dhlexpress.bg/en/shipping-advice/packaging/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:06 GMT\r\ncontent-length: 28674\r\nlast-modified: Wed, 21 Aug 2024 09:27:39 GMT\r\netag: \"7002-6202e273a98c0\"\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":28674,"size_decoded":28880,"mime_type":"image/webp","magic":"RIFF (little-endian) data, Web/P image, VP8 encoding, 1276x1188, Scaling: [none]x[none], YUV color, decoders should clamp","md5":"26385da1c04146fde6e7fb130c243445","sha1":"7b6cb545f43ced861e944e9c441059c949ebd864","sha256":"9b93a763434576c2ae4a13e747b90ec1342545847e96100990a902395da91c96","sha512":"8deeab080e2d680ed63c36a6589b827a15f343bb19a4785f192302b0a6ef663e86c3f713297f94345645a48f672201dc916e5d80d5a8d302c2ae6b95c282fda7","ssdeep":"768:C3h3pyvwHaz2tsaCsHa4KJOHPir97Gy801:Cx3cvI62tZZxKgA4y801","tlshash":"40d2d063a7237d52dfb02266202bce94b80774a2c76db73b59e2170d7842478ddb3536","first_seen":"2026-07-27T14:06:41.197182Z","last_seen":"2026-07-27T14:06:41.197182Z","times_seen":1,"resource_available":false,"data":"UklGRvpvAABXRUJQVlA4IO5vAADw5gKdASr8BKQEPlEokUajoqokoRPoyUAKCWlu+8mvYfdz/WMFnV6y1TfitlldhwxefeTAKvyHJ97J/67/q9/XI/rL+h/cf8T64XJPhJ9j00LkPn/OTsnf9L1I/or94v//8hP9i8uT1k/4v0Oec//4/R86cz1fP7z6yPnLesr6TfT/9Nv1u/1H909f/il+n/wHlH+QfVv5P+5/tz/e/ms/V8rfbNqR/KPwt+w/u/7u+2P7T+MP5h++fsF7Av4z/KP8h/df3j/wnxx/e9yjuX/I9Aj28+6/+b/Kf6D2z/rP+d/lPXT+c/0n/W9wH9b/9d/e/PS8Kf1H2BP6P/i/2i93L/c/+3nv+wP/n7iH88/u//W/v4UMb48rzVrGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRivzf7jsgwgmPwB9iaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8Ro5kgr8OMf8roc/UJ0hq24SygLsiPxbFQLEJIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGjcnHPc7y8n+zhX8UgUwHjiXLySOAx0JK7yJeL9QHlrGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPCZd3T7/yagX2Acfcu2mo3qxGkduD3v8M6hCtNYjT4Dkh9iaSMeI0kY8RpIx4jSRjxGkjFmyCY23ZdDz/59nWX1Xi8IQq+xjjmhQg2Anf6Vu0PrzIKubK6G0loQNRGrG0t8eV5q1jHiNJGPEaSMeI0kY69Fl1iqG/pS7K3FLL/zBvkT/L1ljdplOn/vUZvyv2q6JTJhLE9zXWPj0GyDpkgtzuryF4iOiZM+ez627+DaIkqWHWjqA8tYx4jSRjxGkjHiNJGOwWgfSdIIZT8utX6S+u6UMY1lwpWxL/3YgEFNQSRL7V8tDyfdt7KqXqMt8p/p+IMg6g8hDQmKabtyXVkgrgATylD0X9LiAaz+ZfhxqgbQGiGuk/M8xCqqcrNTmNsMWAV4b+BUwsS8UB5axjxGkjHiNJGPEaR59Zg8v//74a/GaC/FOVSWeZ/vCfjJ38upLNJaBBFRDiaSLPPu2d8ZRogQQjZHmhIHh9Fc8/XLfxxSfiA9xCrUQhZgQ3LEvlj0NGT5z3vRIzprf4/uFGXmjMleqBKbcc/hyMQuvGH+ZD/40Nw02hm546h9K9jNwqqxLNBPcZPDEklU9mX9K3x5XmrWMeI0kY8Q/Q1Vf+4O1/cfl/iiD+Jlu+5NibyHbrvd3hPAofO+jqXQJs6JhqRMponU1YFL0SaoEZM7JjmA4KOLbr0qXB9mezU4AMxWYMZrF/ysg8vBCGOMYJN+2bayIiSODG29F0U9qw5zHTiTJhPNN4QoGA/EpwfuEu0A3lrGPEaSMeI0kY8KC2x3eNKNoE6mRcWgVRnzMSeXcvm1etqTxkAByEUVB7w7D1THu44mAR0mDfXgmijsHUGCfvy+5eEmCuUX2wYfQXlJPu+QR7Cf+PTdzQ6APslJFEoUYohTQ5LHAiNX+vXcrosC6ZJbOsvQDJVSBI1T2ZJytsyViDbpnub/St8eV5q1jHiMw6LZZGtdLVwiynSyFxfSQ8dFzUZ0ZE9jKNDxu3xIgWImPxoX/3+yhpCW6m2YmkjLo3ErzQGhdrdOtOavAaDkR+KEwKE4PuyKow+tIc1Ux02Qxbkk7zC5kP33SQHltQomkjHiNJFciCudJXdoK9+Gii2uUPXhDH3mMCbyGzlVyoEBsJc88Pru1wd3TyRG+lw3//w11+myFs1SS7GiQJtRZdaXei1aDZonPnuV3924KHg+wxRrMJfZbt5ODTNLc/pW+PK81axXIgp3PjGXbv79Ah4rimAKYWXR8uRM8sMq5VjNZtYn6c/9jq/7Xc6hwCAtRY5dg/yoLUYzZsqMey8OK92ZPy59OoBpUJ3+lb48rzVq8frNI/0BD2mI1xwwAt1vGqm+UgECFFqgx6hBGw8adJ+Qf5katXnjFe7NJ/8IrO+140Y16jHiNJGPEaObIGkgpRkAj+nW52oLKK128cVoLUZAPsGMbB/35UWOY3iSoKerw+QF8O5evyuOKF2vVfn9K3x5XmrV4/ouBoLUWOYu/PPSLCheKwpdSD/MZInWK+X9TBugoMgH00Z3/+KpojcNg8be1R5lT9/lTahRNJGPEaObIGmVoLUWOYv6EFD3GqqVo0izP7ItYxYQq0p01GQD0UHZZT3xQCuV4DsbUW5fpAf5C+wtVTqv/z7ygpyhM/1jekh9iaSMeI0cfJZT/KgtRY5jHY6kwR+1nqXJPgFVqp462A2EQD7EzMgH0/Jzu3+NBU5PBZTf3/XGvCt+V5ptCdcMnRYjxtr+WfPEEVkEjcEI3/zn0xRZo9lyC7LWMeI0kY7BYNOal/yoLUWOXYP+9/VRXMHQ8Ufj7cEa/68iWpjzO+fKLyhiaeepmla3nmnTB8tYx2CvzftpX/806pqFmwTjy//FFCd6r6ZzNKQreQTRdJB/qv7+gqcH940kcHQpv/+o8mpxTZRcXgeWsY8Ro6Zgxgaixy7B/lQWosdwLo7GVNU3mhem39hjKyEdf01f4KRhCAzNpLdl8JIRR1KPLWMUr3ZpP/hFZ3KGAyH3+3phT/9d/m0aD2yvpORPnv2ePx+BTPo2MQtEQ64c+yRvkho+nxnuKfoMdyYNGf0i/zso9OQAjSRjxGZmzzGbl2D/KgtRY5dg/70qYfpThAtiXF/wsAcr2B8j4cX2hyxKO275DicNKKgxxoOJq/q2O03QT2wVGbmWLHgGN7X/0xrkav4+5k/VQCwprxUC3oM+SRD/739P8HNXZRNS6ISLJAoauLjGVUqhqtvQ2k+QjppQAT+VCFWlOoZNFwNBaixy7B/lQWoscx1qp3221ylSDhZw9wGBHEE6R/d4f3/962enjj6Xh6QmMHl0z/rFnFCwO/HFmUv/AwDPGHHlREnIyL6WiHnCTwYeZX72tyRmJou4POgpKX9PVWZBH2ELxGjoitNd/1xy7B/lQWoscuwf5U655hyFGWKxIg1tllAleD9Uf/89wzxN+rqDKv//6zvl5rGNx2+ZGz4jSRjrFXCK2W89QO8NNQOoETFwMr+6zONK5RzwWsqSlDaPwE6HAAOFfWanzG8ryhgM3kKLTO70ixf+/0zM4f6ynstSFN/OL8UFoD/QY5rQPpyA7IPmmYa5UFqLHLlszXKDicqD4F1tSVaJ8QOE9SljZ532Kf50qbWMdeuqMGkg9B+PECeWoNACI6PsTcKiZEkhModKzafsTSRVMs9+izEeTURvMEvUEOlb4BmHogpwtRY5dg/yoLUWOXYP8qC1XQoRqLHMbyvNWsY8RAkSMyBmJr4uOrLvMooGU/gpQ0kcqdKBJ92Qv+uOXdBHLBuUMZLPH1AeWuc/YOOY3leatYx4jRx5ar/dSwC2v0EDzzmOGRbecLwhZqObGZrB8qdKzZVuRW3ZuF4csJvKdz/siFZ0oEsrzVxgQYxsPvA8tYx4jSOsWJBvmGNp9WexHppB7rhCtx76EwsusV8ygB0DY38FVU4fIUTF/7/TMzh/pWx4AKQagpRkA+xNJGPEaN2LAe0HUg1JQ+N8HPi1NRhiS/pT38YZ+IRMwPLV5D0Trc/XSs2mZfFSWnzdK3x5b4YsFqm1jHiNJGPEQ7ZYWy+1n6MqXyfC8yorW4TTo0seWsY8KygtUqKZT4obrI1CiaSMeI0kY8RpIxsWxcCBzmzA1axjxGkjHXIImz2EMViDlBiD31Q3SISL0dEDrzVrGOwZp9fG7ett3v3N05g77RBgAPLWMeI0kY8RpIx4iq7y4RDcu6CiaSMeI0kYrTD/oY/FhFLpNGvXvK81avPw0CuYkCNAdMLwK335ISzs1Dbe3GbdpAQzl+Ag+T7fKJaVvjyvNWsY8RpIG7/f9+VGQD7E0kY8Ro3z0TCOKjFLytjSFxT+uFpP2Sv7iU0kY8RpIRlx7VCy+7dehQTMt1q1psxzRmAsewfmqBcBi/ikHzJIi9IONC3nnGXnY3MvpIfYmkjHiNJGPDdnzjkmMhCSsUID7E0kY8Ro3cb3bBtDayqI03ldlyadC6PEaSMdgtDoP+p0JQPjCxAz3Eo8ALNQkRtkIIA+4otS8uApK/WZji5k0l4XuMsZlkVBbtiKiNGPEaSMeI0kY8Rn5agMo5X5thnfzdv3zfoa6B9iaSMeI0juBfh7c+6oIaSMogeuOhzadjrmB5axjxGaOT3Y6KjXgYUh4f0YUn5jzVQHowulnuJ6VNT6W/l7xPdgdK3x5XmrWMeI0kDjqGEsozE2VvX7GDKCbrOh3QIlNjeWsY8RpIx4iHRg55G6ZqnIISW0et/ExNqFE0kY8gzLs8NYWuJc7VRNTyz/jTB3TfmhLCDA6EcKsHw5S1tQUTSRjxGkjHiNI/VnSYWH0p9R0modD/Hu1m6rEAn6p+w2sY8RpIx4jSO1j2jHRWJk5PZL1FeJ6/jyvNWsXvYIEQ3nadMrOMPzSlIR0vqrQ6vupLceByX0gP1iQnV3Zn+lb48rzVrGPDdnzZ8weZBn9PttVC2f/1qGIu+nfKgFxRmf6VvjymobP/BLzC/eL7+8Dy1jHiAIC3B7t4RDbiM+59xEnmpsWgTOBRNJGPEaSMeI0kZqeGC/3HIXfn+Atyirl9mQG9oEy1uO/jdv2+ofyapggbSRjxGWwBlmtyZgI4hNxRGGv5kQ2qvU+BaB9iaSMWFnC64r9grZcSW7gfYmkjHiNJGPEaSMWInDKJwbpw4hhvhbtlLjqSEOloWBaUR7X7CqL7T//jHj12qAk9qLqc3k/V4mnlrFcPARsSbfyt5X0cQcy6vhwVKjomDOwWgfYmkjFmyKhPfc+EmXWF8PK81axjwmm4dG3Y1Y+8Dy1jNTw0G7dJdCTA/pdmqAwVC9Ju/zmL4DAbsf5cYhPmx+qMqWYdfwqQ3DAufpVI3f0bx5/c7lTP4ioTOg5IeOBe4U7411zILebo5GVk6aBAgOifGfdzSdtyxNJGPEaSNlT9K/GyIHYqpgBx/pW+PDnm76lijLf0DfVT0Mmf6VvsYU+XKHh56L/qTKNyQgiMlsExscE18/JPdNasCWwO1PcOFElfXeqT1av2YVvrK80B24LJK8PeGTWSeRvNxB79+dV4/S9u7LQWatYx4jSRi3HH+fEMx7BZ3JRmmfjfHleS8ielIzWo0tsDmvaGJ/QRCu2vOcOodAGxIbP9LCGlBnc80wbhOoC7peBtlWru7xf/NZcqEUOoZYPX49Co99JI6GkRQ339B8h0DiYsxKNSe3nV892Uo4vE0hvIfYj10IQpqOxgPp1lThfpEmSQ+xNJGPEaSMeI0n3o7cziqK50aTEaSMU+auoPHoKSUGW0jtGGoVbnyirS17KhxNDXuJMbStAXVPfB7khQQKqekWf/CJIObMPbVH4gmB2a5/4Xipv6e/qq3qEL/GhbRxFs4VsIBMDIBswHu1EgXGqV2gkwe9qmAWatYqgWRGTv1xS6lDkh9iaSMeI0kY+gFmrXzQyYBdxME1R5axVfp428Sd3kyG2UY+gqfCokX9NmJmhoiJPWWMEb9SO73oRwJTZpCpjNxVXpgRoG4QwtdGyC9AKSR/9wFLS/rnsHCE2cA+lQ2msPf7tG2n4cYlt2LqmOoxXxRq4QcvvYDCLqrwEjSY8R+dMdLp4FVrGOr6vDlQdt7um8jSRjxGkjHiNJGPHU+LYX9iUzIfGXv4nj1CimBkl2ahuATG4UVRzLLUxykNYGJmSdPod52eJ1eiwE5Tj724DS9QZMnA49pYISLmLgiOSneieWViHXTi9Lh6QY9Ir+2DKZxvFf2RQxzUxm8B5MdNJSKpn462FIXLOwbnpw1BrzVP/5PL9kXVZQtYx4jSRjxGkjHiNJGPEZqUy56mFxkQGHNRRpIqjoHA5KZi1JStJ+tJL1oV+sZDC9cpArCYCh5JsCXqs1dGm99SVjbKa53Muhx8WFX1KMA7hJJ6o6ZFwN17uYkalbyovjjrAIq+NQ0skXVk/Fd70i3tUrVlMfyqOv5XmrWMeI0kY8RpIx4jYXrweh62oCfUVhlETGP9ZUJLrEUYGf0Ou3A8JrcosNmqo7MzMC4GxmYSt/HpkwaDpdB+sA66oC7mZ6cgjFC9w6zL/rFXhskQ+uoyvE96EuqoxOB8T0NXVp/3HLW/j6sRpIx4jSRjxGkjHiNJGPGNemk+/I3oWwWIL8V6zVrHRFdLnVtds6ZP1aKBX/xGFYBT8BWRS2N17BP66wnMza83Qeftxyyj7PG5geNy8HqY/yrY8RpIx4jSRjxGkjHiNJGPEaWGq5TDkXdLOscB7KTkygvylneW5LZi1GsG0b+iE3wXcTuNLQGCzYoawiiFiGneIHTkm8Dy0cuvN/53ENeFO9K3x5XmrWMeI0kY8RpIx4jSRjxJq/d/TabFOXan4ywU6thPVEcv7gPv5UMsP9cCN+ejzOohvmGHv+5bmZOruH/yzxJkd/pW6yps+dmODUXmrWMeI0kY8RpIx4jSRjxGkjHiNheFzXJTocJImgZtVvZjNxQmhDCHeDX5W63YrPS6fDwzb91f9ob6Iu20DSGQ5Rh8HiRyKf/yIyd/zXCfZDHHiNJGPEaSMeI0kY8RpIx4jSRjxGwvXr52pLi9DQ42TSEUHUi+Rvt7uIvdBtxNjjJ/s+4/+2RGHnqxQh1b421eA+ODNbkbJPV3U0gkPX4+BRNJGPEaSMeI0kY8RpIx4jSRjxGkjHtQ+1TeeH+4O/dTZT1naAeAp/pQIloa1QKvo3NHpAa1jSb+zFQVSpS2SgPEP//J4o7j2p0oR9iaSMeI0kY8RpIx4jSRjxGkjHiNJGPEbC9pie+E0sz2XIsrWqEiQ8ATjEUc7uNxb+QUclb48rzVrGPEaSMeI0kY8RpIx4jSRjxGkjHjGwT5ZELiHLs+Wd/f3of2GvarV8Lf+UbO/5qMeRCwja8Dy1jHiNJGPEaSMeI0kY8RpIx4jSRjxGkjH0fwRd/5yoTc1fZjBvCdjEDf4G99Ky3wx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxJBWL/M2S6npsuYENxmhZyYNAbktJ9DxvspkzNYx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGwxmDN1FbiVG4ue/XWdhOC/6vpBZq1jHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI3Ch1B5axjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiNJGPEaSMeI0kY8RpIx4jSRjxGkjHiHgAA/v8m+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABw4f4b9uEiWhuIgcAxAKXUZEWW8k3+MYu1WLDtet5oogA98q0q+tLlHJeE4ZM8rs/q9qQeVJTAAAAF+83G5GcMJRVeWxoISSL5LayK/epnr8Pg6kmnDquJknZeTlZCIOKvAnEQ/pOzFW6Mcaet9hO4yvXAf411dFmZOMxKXl+IKR021v0PDbL1qFUSfLg2xXST2YxpV5RZI8SL+uIfKMkdcRfMOmGkWNrI6o5vEorP/YY652tXDH3accEVAFQC+YdMArWSU378hn3lmsBZT53JarR7SEl79iJxIzfQX6M/v7dhxuTBQ5a+3+HrQAAAjIEbNHBXk/6Zgjhc0YO9h5cbBtnn+DlnG+7d/DOCcENk9882Bba6KgK4yrbBWKSqVHjAzuJBuDb5e97aOlmhiH3XHwn2O4c6bmn+AxfA0RLqYf3CGF9SUJJkeqGRfmxi93Y4n7wiDwJrevtGJXRHcDpzxOtLZyq9hjscE7rHZnr8FuuP8KpVUc7p8M4ty5n8Sb9oEVSFwYBhSIN2ehe5efSSiMeMvjl+Sgn6n3SdPSyb8wlohfYAAEdEHFPu5m0IKX3W/pX+MROA+IK3x+KCMIifV42iw/7EHd747BTMPy1NXBRULZSFxOqzplVxePs982il8mmVEW4touDJ6N5IHCKbyR4oTkP7QssBKXxTN1efZkGYXleJZKQAAa3X6VTpD1BVHmpLK2cVLrdv5jL638Sm1ks+pAoJ7qApkw5e1FlR3Yi5QQJ14++sH1O2oYyEoNqrWWxtJfi1nsaXvRyYpPCJUm8el4FfsbZkoAAA/G7shBOAl72UypkU9flVh1NHYwmIyyPzzcTW1YS1C7WH7bga1RcsKAHwOJ2Gl4kVMlKJcWkRs6NkvZ/T09yHC+w6m9nHj7GDprwQGMQSZ0Pn2wjDHCFlMoeLKLmCAGETyXUyc4zCbfJbz1eTNMuOontcCODZAcx+sKQN2hApf+mGZUjO0WlshOfgB0yWk3tBb0F31LXktR/eHbSPgVM0eTXdRY1GJ/atSxI3iOgv7Q+KYn8mshgNlpZBbSXmdnWVFjNYsnraRN/9XqsdHZskkhROO/Y6s8EOqZJQMWLL+ODi2EHWZkWXyAAYLkCfapTFLPNpn4+WOOX9LMvK/OjUjRZEUWiHFhM9Tf16pMussYEfjpRN8wg83uRFALAiBvH0mRLzfTsIXzfb1wpYmuYKXocb0vfVopgShLo7PnZwaUEWwz5EL/h3QcMbhubbC/dj3N7xYSijKcUcNC4ATgkVMNvimBpYsA5N9OGeeY5jB3lamZLWegcxWpRh9ewcaNTFUmQ+AP6aOIlSaorr/bney3WL5PchpZIB3s7RAUF4aCANa6qEPyLaUGxFkl48iHp9cSBO6N/wTG6QSSc4zrRVwuBzWPLF9G4MGoz1h8q7CsE4O3AVHhu+ZxwUDxfL7RJewz2P7dmwHKMkbwv+dHSN7gnKF3y/OYFMxY5/QEJdOS6qu/1XrJFuo2XAfBzI22YqXBeE1Rmgbdwt/3v6K9i/uxnbmvhZdRv1rD8ptLOX/rzySd8qRv6nnwTNw92HWH6eJhX7RB+bZCbQH3ACYl4QGinKsRWDED/b40Ak44UQcVeAk46Ou5z6xEFv9nsMEaigLhpqVI0YsO17qrpyThxeKNKwE8tBgIitI11RUxv8VN2m3Xk4hkK8GTatDSKJrmEGa2XqnSLcYJooVgJpmChMaVd8oyEAc+fte1i/wkIqLxguuaFA1g3CCb3wqMeCWDPrrPQnTYFvvD5Lv+xIulG34N1YM8w1FmfRaLMu5Rxkx/FEwAPG2yzM0D3+6aX12ffQNgC5PUQeLn/A3NQJhtfa4w+VTrhq/NDDv+KiIwxwROvIqnBiVn8cHmJusXS7MNs1Fz7vuButNRzvLTpx22Gq2xdvlsN2iHFVaV9fYHc9GExR52kdeD2sxVick8h+dXdS9BqFohZ+Hyr2s7vRiWRPPrFXnr9G+dDrVIMKRoliWDYXcXgJIW9X2iKzyUaBabk58khK9i+nyW7fHNG8Se8uWthGZ25uj/+g3gPhieSiS4JJ8w+CPzIzLZJ16F2rrT82owfqFGm3FX7GDSTv4gArcq0Yl4M7X0PBetJqZIttEjOkRwfwpAWhfuxqIzHl7CSvqTxQYMKoq/aiqS85fBl4dGXeF/7PIKqhfgz/3Jql4N49TzPFsPpfFAIP6/XabuQjU7ujRzsGVBPuxZRe3YrBmuaXG1yq0n0YiPfb2JgLGVlqgDXDUtpKdPiXm67SH9EuXED19D9geW8UKyAsFLZHv4I9JM7eUFW4Wj5y1RSnUNlOocJAATSkIhb8e2kRwwiQzOlvnHSjQCYC4TtmXU7jMBest3FT8/MdkpZnr4HhgyqKdNvN5fSDfN/d0eYedesR9pAmD2hSTfdHdwu5g5nIQ1fTckCDROUtcvxHvVrvZOFZcysvj8XG9IUrK6IhcOOrwLm8vSdM8ekVjiPAJde1YU96yIorHv8jvs2zTD+snqXwjmVt3fgwjymZh2OydlU2X6IIBjt5W5sAgWX6TqZmKCjuSjHu7W5XndRot4792fXWonhMzJv4xSnD9VhAT4OOh7RtlY154Je8sMXmN/eQ01foxe3zHVgAF3/HNDuI8lKT4IO9u8URsH+J9tiPBXZ/98d+I7GGx9CuNYeTkP5vcp6DvzwnPRVNufHvqWJ4zi3Ya04gV2bQ9RtpmBYixwKvvzJDDaQHaWDGBZshrcnfYh3jrwEp+DtdMVDPQO9PYFo5pJHswIj8H54quRXsH4P+OW5kN0x8w0QgDLSR2rvpLUSm4B3i6B920WD2j92Trjl0CXumAtf4jcWnWz4VjM3uIgSTfC2QR2zdzCehp3f00zzsidMWjnh8yHacER9brosn8cJPkigNUG9x34Z30OQ8V8Wvddtmw/DSYdc7gojAZXjznH5QcRc8OXIdLbN73+fsdiRfevrXYeR1zFS0/oEQBvcjRhna0rjPyv2d+vCTcZaOfcbzUa+0kjUDy64HBwnSj2ru+pfxCQ5wUJaV5VyqXgmjfP2j3EHDiYEEiIdbQgVPrp1s6xkTGecOckQP5gX1NNkvdrhHUjOMjRdnwkLdhqr+PDYkZ2UpabeezNyNr89YJLnPrh9s6e7HzeTrd+rhsNbyu6MOMrBLc4Byb63Oacx9DHTwdoBO/+b9ODjdQllSy3QVU2VUD+As+T/rZb0LMMCaesDvwuoPr5aT8eOY3hpRZrbDexHkGMuMpI06JXc6eQEQkPFHdkAeZlUMbe3gpCIpWYQ59QHCckEYu44iELXNKSFQcRY1iIOLi+i0By7CIVv8PX/pxG+IAJ/pZbnltaeZa2rEvKJOVFnvLK31y948rvxRgzm+8j5vqNUeakyqjHUD5OgWHk7znE27daYdS5OBf4xE4BJ4N84MlA7CldWJo/MIj2WivnXVYyrHOw3YlAiU/hf9yri8zrRwV9FfQO+XUg1qCFtAVZeAA+iGa/3dbqBNnT2miVElB8jq1VAHJWBBGFdQOJOX8y/2DCb21u/Xf5ZvOuwesK0pavRc6EG1etSPJxg7RfWLMCo8nqFgZUhVrbhCQAkHRw3X3oZMFExuNIzZsm0JhvvLfxo02ytSooLkRLufaa9YBEOBYEmTyV8unvZCU+CSsta7GhfB0Cou70MmDGlCeacCBXjk1kW5/A4tZxijn+e3jIV9O0QrghEDJWqm4o1HBy4J5uaaLIRvJM3SgqN/nIB57O0dYMegY6oJB/W0RYQ1GTporKdbvVDiuVu8N5s+UxGBr8B30WuZ5iJevzcOoSPGB3v5OMtoZwdJDC9EjS9C4eAHHcGOjQozqsJpPTHkywhwU9jB0HFmePmldmia3i00KCRtwWutjSsfmztoe4X0Gok1wwKB0kCB+e4EQGv48/tRff6OczBaIZTy3/V62EFXtb9GUhoDZQ2WVISO7xnQbSFlV+hzQC822qDUpQgUXSQlq8GPAm7pEAVFBrZ+/oSKrLaiqdvfTN2ESOhD4QKhxvJVpaEbrURBErU5DQZpAZBhog6ui4agIDkW+/+V63Eu4rLDevMtdzFSbsTmYs9dohn02lZXOH/rrV1TIbXAH0NO5mcakKoGMLTy1o2ivntqyU9in4HHZPFxul9lYajUU23uj0sHVodLMhBmL8jNBbKWRGYfxgYHT7s3BWvL+7TeU5xHyT3kcgts4j4+gKEdPib5RxQkpieHtj1yU9821QBrhqZahsNY+t08kwjT1JOYIT+yJgNCHLye1q2CdYFjbol86dxnBH5a62rj7GWvqCqkeT11qOflFX5+DAGDlMobge1i/bmceIPNdDqiekG9vlQErWsOhLfbAfBouqQIANayK4BkrO49M6d7tga5ggCxE4n6h7jWG3RswNdCI3m3K2Ej+EGo7mifVRwsf8aHGhfdwNfcUXjgxo/Nz0MDIkuaB/p/ceNcMSLqov59Jwadnq8YItPX0b5O47SJoPk2MLqWrQCaI6hvp4oRWSh362QMKRbYCsF0JJIh1e2XLxYk48sOWOuEf4t6bDrt5WCIrXI0W3ACOeCSrBDz/YCp2ZlWxXTm7xDEsTWEZrsxZNvb1ot2V5NMhub+LlCJkzZGcNFdMpUDJXuEqvzLq7CmkKJFMmtdbE5EXhPHTjksFyRoE9SG1wi/jZExV2phEEgLE3+7x8PT1kNreJ8wX9wixhVpBsRk6ry3kSiEbmxqdTUaqBvRMquu1LOJE6DZiM9+sY8bDaBZDS59yn4ihDfVoTzdmPiUw8PkdKPRcwaxA2LHT8aTjjAL2xWkH7fwmeM23xqO7Rdp6iCpb6Gt4Ka2+VRZ2GtXot3ZgNL7dbm6IOg+78oEI2I9RzmwRoEte8ryAkX3DKtFGuU94rdWYf0XPLaGmLBCEsjU3ix3NWgFlclCt5nNSm31nDhNPdOtjlCksPKKlabqxE948JNsSYz4rIzz9F2fo/Jx/jPAz3/o/oxzvEWHvqCbxyB+CGsc/ZtZucowLLEYwv+WGYWK43c7amAxdp+cfKNSDX1XjG5vr7b+GkVTOvcFXv9EIt8PGmxAcfOxz0DSGtpN/EWjca5U88ntg4Br3AyVvAIAQQdy7skDrjML2Ds6o7J0AuOiuZkIMBv73LdNXk2CB1iIwk+u//wBG2VRsgzbSwrqZTZesddtJ58xayB6c01p0O3U1TgMi02/997HWmhzwFXRiIuFEr13u34+dEfNNU02fWU/wwaYJLieGcCYMKx0ypN4UYGqoAT6LYPQTAXg6TA7pkGNMhe/2Z6tUCgIKy2m0AF98suokLGLm8GgtNDAXktbLyQJ8KywFDD7iXkeKpa3R6/sYI92UHUA5SW3cqgw41S4T9r6VFX0Yjt11AaCy0/Abb2qLiI9jK+vsvgd/IdCNKKQiEVxPY2PaFJGRQpQF7F9IlXRObYzu/pkSHj+2SYEQMDdTE8NWQDidWuS7F/Ciu/ZazajyZefRwBrzA1U9cDBFJ/qIOHDQAyLCStSrLfc8yJE74d7cDxjCnGR+W+kxJBMRbCO2t9WphXtVb0SmRdryt01cJ0csIyNeXZ2uCy+DUzZnSDxZ3eQXJpaRBPRd8sm4SJyQA6F1q6sAjLd195+gqcX8x5EmlYdeltGBFbBCFXF8M8xxC8vfesC5o4yc+F/PD2Ko3mp1eTyiQrlwrhMaq7dEyPHoo/Riz/plCL24s/QnqXYBXsfRmOJde2fmKM1aJhYPB1U4z2xoc8HAyvYV6VVc63VBculeknlIe5CQ4kik8gCibsToQ2CbjCSMDJXLr1IJIs4ZS3fVuyLxVoTOqZ535c74AYx/EyfXmr1Mw8zZP5/W95migknv1ZNwGuj+9QC035G70ee7I57YEij14KaIozSvpeVR3kPe2D9AMa/JeNoKG3xOg77thT/41YblVa3oIBlvThklaI7/iqkQL/A1QtAWkMTzxGLTeG31hE87D+k110lSNmH+AJLC698TSh+K9GAb9YTujcVzElHTgX08xaTDHbkijz/bhLvZDdNpKIz4E8NRWJQzIieBhCY8BbyEbqu8d68QbCCy87zT80m10rhfDKhf/gtrALNpvkduOKTYHIi4CfXusdZqceEngEE3Fr99ooPb5J+FfBUutiymzr52OvTFe2znpK6qmnyrlVopc3U2+6kOucXcsnZsjUEmGpt3efPOvyX8E0okXpOgIHfvYw3WlkBhZxh0vFBaXOaO+qNSEWR2l/i5U+5m7CQWb+UNwJqcPd2qlr9tKcZl57It+6DrRsO81x/+pZ18DBqyKWDn7Ms/zJCC1hq5rIEF014QCrCrsepyfmQSg/vr/1H9B/dMj393Mbb61umKGcGA/NxH3AABMQAB3RHODBG8r5pDCft139XNPnBt9Gqol6SfCv2xjrq9+97DOXlQ93hleD8gniHq5Srir1hltJ0emDcIHWJGlOsosU7P9yHFNM2livqKd1ajTZSWU1VK6USv4hIccq57HV6mIuRrqjUxY4YNTlTNxd2a2fWXQYzzeffrTffTBGvrmGo4mv7XsWbhes/E3smPIQWLRFLA1L5uihO7ywLo9eX6MzfpvJAxjLRQKxixvJOBYKDHAzexNvd/mp+sNHAB5mIk6qTeg4I+soaStXHugtZaDTizOdbZAJqpl2twJiqZ8GAGsE4m6Qjywlv2o9S0lCgrt58rdKqy3woDLcA8XmHOH7pB4HbcnvToiapYLnhbteszRLtrB3kPjO0+MKMuu2hE0Bwed9IqUJvMM3KgmQXwFy9rSTzzOFD/HbsXfJxnPMNQUn68xxmPhnVCBBkcFTQM7NGEUw+W49Pfn6eyBDwAAEwm82CL5/u19iiR3yhy6PSBeV65QTpTkDXiESXHkTfJDQ7KMJNh8Z1sOwdjq+6elCEXIfzix5WyP0MGvIADakcfCqMnVWtbWgx2smPsFT1q6O7y8ElZebccWX2DErRZw41PMv5AgeMfZ/x2UYSbDuY4VmTpVwS5Id1khrsWNlNZCQh9ZTBJjhbWeQ9N0BvDK+70wRjAw2HX5aMlzViyLyCNKeLenb5xRAMailMzw6pCNCvBdTQY9U0S5KhFclrQgjBMJNrceLXdB2cAHaU9P5E2NKZlicsCZ3QlM7f0+MNsPsIJFTPwAHDblETq6lvSNwnbEgc7Re5oU/HTCAv0ET1wG7Wolngz/DIGvEIi/HOwx2I3PobIlrYXb8nBnImlcsoB2TgqPFU4CslTm4F2DdH6j5tc5qEUHLZNgDFjpNr88+moHgUix2P00pLYenygHhF3eU9zAACzWS5TlrazG7Q+0Scxl/x2kTHOy+inzwPwVtNIGrwoUiLKRsVRjiRKaY3E/1RYwT68+BGPxAReslHEdgAScOx8Py8MBe+cwtj2S3y83ezWuhxuBGJY823ebO7xg/uZr8pIXSKmeGFNQSN7wLPt7wu9r1YeK1LcQhNnT+pKMn2xKwnpDYGltdu0rVIKeSn8RHu8ASnJ5AJ087gLT8ybwLLZEhqTL8Q+iRZESGHYJrx2FNImP52oYVsr0JVJ343OtMRRiP+YcfNmwIg4oeMMxksf0yRsco2FQP1h0MKP+otdd9sLA0lbzlU2TtYcL768ttff5+DwHpjBi2y9O6WKUjS66HNrEfF1pF0UQGuhc+qxdWcNTf668pho9P6Dz8Rb/IUQz9ZO1Tv4bpetdxulcI+Es+1LO+v3rVz3PTlhLqTzLNTMByQCduCsnqCmUNgBKicVtcBiTe4KQ0pOuQ05tQo5p3GNlM4zWnuoTvtm6GEVQAA7AeMhTrbSakmEsJLXBN+Ph0tIGuPiKzu1eogZmbzUzgnrNaAiDaW+UXExtSb4xUau5OHntxJBx9yHJcDPxNQ4IPbdgPXW9/LNnHTxrXPyyMyjY9gBbMvubY7CaRTI545/gG7nxoHrjktA9jtXz6tcgoPKQ9R2ZMiRBknDBfOtkCTBTbkumszYPfPliJbyFnXYB34SZSnkbgcIDnFlxy2zdfwG3T1ZrJTCjr7oRjqjic9aQwvY8O09zLZCV/ZmuEaMV1U9iV2hR249CU0lYMk71hvOnwpM22WMMmmpoj8ObHSK8fBCX5CHmfLQaLkauyow2ap6baTBpjx0p4M6KTjMKjG2BxdAbuPuc56eXWwNKc+Yhj+uBmAaAh/RvuDb6Eq9W91nU9K/nLg0Rm45IcgxBvnerX5MRewp4/Wmna6v1mBcYC/y32bK5wdaoo1IGibAUvQQX+sdNUjIu4RgaUn5wX9HW8RuyyLqTpLw9HrTA682jBm7HwTeVNEzUqEH9xzneMDDvgESAejIvI/cUf1tT81Suc5KHcCMkBD5w7AKgwUM9XR8c9STV+vxathBZZQAj67+hgcbMMOjMFZADoAWAiTPZ6Z66AADPiaZn1YsjJBbPI0u0dxZwnsuIOgNLh1/9baMJpdAXdRG8nL8pNH/LSECHGERST+zH2Tc2Insh0l5/ViCPn1y4J6p/cCDPk4Cqrc1P7PprmFozxUbcooPLu0zQKUaVJz/recfD77i6ZM39H6LMnfMU9yV19lNlIEZbHzsNZpeeNJzbJtHVPfefJq94in0R1N4gAq4zPJAKP0m2IqcDhM5NlqSu01Ck+CSZTVhaD/Tarw3RbHNmXwG/wdyd4KAgMlnvNZI6MC6CAbbWjEOgmSAzN/gaEgavHd+SUYK7XZJhFsbhkP50AArGxRlj3NFVARlHOGUs+JB0jB2r7kzqInnGATbjJmjANarTvgiznQwSQ4422nJovB1DuJxUmwOpwLXuzbQfAr9f1V6G570hTbUVcBx0qvE+8hGs5+BggBs46C/n+JAX9ZvJrSHc/ngXdk+zuJoUOjB1fc1jkG2GfPdReduPyN1IP5qtBtiuxkkspteSH+pfURFPoRBWSPTpiGsXRD5CUbOyjKPWkNk3yFSEUc1B3VGf0IkqPUli0bGYkTBl5PKjVjT75eFlKXRb+p7ET7Xj1hk82DS3zfTamYB4GcY+UCqCLkqQzqe322SOTzZpKtDMLKNmrlsTZ/53Bf4ifTibjfF9MLUd0AZw4xsgSmFWCtjCdTOVOC/HOQ49jr+TwfRIhQeDA8Tbu9O21xvjL0cjpVkAA+sZqCmsJHpbBuhN/NLZCVIAU8EeGptv3TIn+QK7evZkxVgmjbmQm7YA5tbph6RyCx59uSqXm/OBx4FawR9FdTKCvYI7vfPh2+oNFyAWHohYJ173TIAAAEqWig+CxNcqgmqnECYarJrgMAMaiHS0kn+zGLotSmcJ5uNskE49vQ3EESMyiPGViIlCLBfnxNFBGuzwiU8S6e1GjeD9JXfl2Y+UQXFXv4Sro+0Y+LzMIinNa0dCzgy376tG25oiNGCwQcP84KM2O3Ru9TnPxWYKXWFsMZJlzM+7E2Lt84vxkFa0M4n5QcrH2xyLRrEGOpJNl8Hgal+7TYIN32PYXSkJf93xlC1FUuHhOLTYOHoYuO64UamhSE8mzgAwIiaKHvqvSYacuXE4gT7ZguiY4AuBlOr36sd0AAqd84OM1p7uWQeEgbA9OizVIFTIE+/S7Tce9YRGHRyMm87UbHKE1CbEarNrZd/iLzLZZUDxEF/1OYxSlr+9mw+Yod49rcngU4L3RMkhUbYaU/4c8XgOVD8hYq17rholoSgNXLEg1Mdz9VSUbRv3uYdPUIQs/unhws/P9V94Mr67tPMDocKfyAtgrU8sCTH/2DmKUOqYm+ujNthqiWgiNJSmjJJIACMP9uA3MusTvEMC1KJDzwbwa0LLyzkxTgOlvjaYZ9Yt2szAOX2y8vJdAW3hzTuB7Tc5avn+8G11VPRzsWeFVQz8x4IFHstgZhjZlTleIUPY5mAYFUbZmssRxV8UeE6RQxvyiXGMsCawVmRHpe5vgS5h5LYVCMKAoVHvUjBXb47I7wYYQHitQRDlu/3kryn4zDp4s41dw1CILOwZQJ0g/Ukyg1ynu49io0A342fhM7D1QELM49Jg6dA53xdzSLuHA4LmY8WNOHUIbJMTHCbvO9okyxtMHNJJdMEJdGDgeu5czn0sEXHcAAAKg7J4+CvAJqmXiXZVtFmVQa9UACJ3dAsEGQOMWcyCgTSBuhzSvIynO8mJmcKqH26fAql8Znz4VO0c6EHRg4VeJRDBR3Z03GuzavRTklOtMFIfPr+zqaplwfM+p9aualfTTtDYM1JuZ9XrQT8noncxJOjXgtFgKRJxf6nNRQ7HuYU24plq7J7mPbSmkYWG/RYpn//mT4VnNmaILnWSHvBa8aB5bg3yoiu9DYhik70ESItWXc95MYFjn3cGk9vQguWZ4iXaAGtbCfe6DP4wVZfJOCK5K9JhXWqZQ/DlzLmusuIQAEfIKN2wR/ibPXPBQRsMzbRAqW4pqQA0cJd+b9MFZ2l9qheyvkB5LY2AVNUzJ+fvGykgvI0/qoGbUBD+CmpoOPz6UQMKHpLxsgHpnpqLtUmrR33fD8j1g+jgkPK1+aoNfPtqZPLW3VFvKJruobHzdVayfUE+cb06xt4FQXrphYhWNSBZA9+GXOhwc2dHaYUiJvGS5Ek7c+kCA83FIjp6lTs4YMdhTq4Nxfz0uwqLV8r32myI/44dm/NE4onAb9cQntlZR1i228LsKxLAWEgb4oMHEpU1Ytjk7+dzhCP/n5U8E3f0hXwmELJoh77h5hwaHmnoAYkm2KUbq/1tvH23rjAhD+PuymE/aw6ENZlGF1zmUQQIhwtPD6NAsvcoN4HvwHnvEuH4VHJchUlHaw7qYgAAABgPxQZRmcL2K4abbZ5BNWQlp1/aDkRzDI47xi99/8gmf1qjRJjycrlc85JU4RigXRYyBrxCJLgw8Z1RYCD7i2YHhpy+5Yaz1EWgAVa9Q5lPuwZbJBaU8jzaT/ane+Rf/YGITGZnQJXzz7td1atVG4aIGaB1k2SrSHeF/N16NOJnOMBTkML4d+8eHqKW+Y1o0mAUtzmf9d5i/gaQ7M5CnVgbCdWK66kgn4eGKKpU5f0nvlN5ylAj8iocgFkOEZDwVsyzCniLZxpht/ZpC4ZeKkgy2a7IhJxgd7bHVdeMT/YzfgJxwDKZjU7CUCvx4IugZ3CsMV0Lh1nAAl/DCOLeY80dGg2AFZm7Dviwo0Wf+RPZE94O5XCCQ7+3QEfdeSGGZtekAFwgAAAAKhQwyERRfdB/eBNYv8Z0nBGXdDBU8Gr0nCwJ3LkM1i7GPs+TGk4Hqixgn15rfk9rJRxFoAVhMVp14VZaJRoRXwbwzexN5CSY4xA72xjlrnWd7czT99T+3P07uKRX9Mj9z9Nu5uGqVqNix2EGmAJphscO3FhsMCR9P7ZLrSNw4QdJLpNqkdariGgz59999sby2ms363zcfJ95N/xS/G7TtnBGP1eC8kwuLPx6RcbH45ihRd3mWsrUPJMDjlGeU8PnYdHISO1vGSSwxP4Xv5azYt3BZZI//t21CAhx3ao8IwWnb0zG/AEtHHElQkKg+StrLGwIuOhbbIYi4Ev5GEi1AbCZcFRpwABt0ufAWHq/Y7+cqDYJW1g1T5kaxIbx+SbwETZNHCgqVrbSwAANMG7uG3zO6JOk0PTBGc9kmEm5WUYOxhrtaEBb2Qurg8ADXeLWQHGKPBD+iRmWeGcWWVJabCloAIJrAOWs48CaNsBYNdqaiGe7BNKwIqld4DBw6hp2FO0vsAAHZPUunABrCQecBlld3/4Th6shcz8xlVXpKtRS5X1wDaheFfiULjPU4GJeXE0AAAAAVf6gAJ6PMzJpNPR+ZSE6z/IdiHwpyoCG4eS16Ej8yiAgytglILJIZaLQ6YQQ4cAABZl1+SzoApykkrFgrSZfQdgiv5b39hP0Q9KssbQdC+jojwXqNrf3gmBVOIgABI4BMhC5Gsw6myTESx1TPb6YDYOijEc+bJaf+LB6LRvzFn5DF7hVI87KXnGKGCBgwAE2CAB9AI2DHbk4sy0h58n16RdagRpL/wG47HayXRyjYjHhfD183fdNoGdU+lnDQAF01gBRmjhntnav1JO710ykG8/UhQ//zU97Q/7DX92s8CP0WxA+j0KeXuYlSP8wtwL7/n/gADtHACs8ITdrSPXHicaoYsgAMVejb0Hqo6J6Yvjz/kNGv6vwiRQ+zuxtJhYJUCzdpROchlKhg5IMFg94T+kPiQbHLEQK0L8KUyzAFwktF9EAgJfXREChjAUNHkCWbLTEzFDO+FE/pYmx8ssTjEXJxWL8dMX8vcYZjjM4WowGtQ+AU29yqGPF0iaoq8uzTDfxdl1k/LoVZO51EuuZEyP/BR7BdoQAAAGJOaVkTlCCXsFEaBtOxwS0hOCYBKOwBJgLYhYudpcQHv9IGkDG+j5ydIGZ8xdehpRUDAo6rkvQhPwHE1VBZLJmJtQtbVMFZQ6Fj0/3qV4LcHuunI0r8YNx5k/LEtrlKAzN9voMKw0g6FMBBtb5cqOCdHEKfnxIoBF4nS0OkpU2IaDG19xJpU5e+EcQX0VaNnLu/PCn1KKkhVgAgL/D3wBPKvzf953sV0NjeyzSQ+BkSYatOv6fZ5T3x/xVsoWhiZsO7knYI0fodaNawkrUk/dG/o4hmzu2KPJ/wS35vqybfp67KPAmZzPCRVwECEPxboZ7U/vb5O1t5+K6xCUgk2bMwVeCZUstcKyMkoPkHnhvX9PJO6PrmGZssG3Oib54fuUejtZARwXatAKclyEPsuieQh4EXyE05ex44KPPnfxg/mc2/S/rVOxXw0A7ydlBN5p9dGIrTvUNJ09YycUdxMHoHkxHdyTf6wa6k61QbeH4zBKfD3HvdbQXlXWpGsLzrijsdV6QbUzeI7IYvIbJQAcgoY3dpABHy/rKBGD2a2FlSA/UrIjqR3+0XFYlGTEr/gCIxPJlyg0Ta/psENfNuZzEZjAyxfaRmk3+7T8EwKmUhyYiJnUXGnoOMugd80acKs5Vza1ECG7m9+4bbHad66mQUYflrJHj46eL4PyWTi/Wa6Q3xpq76gAVr7R2d9LycW9XOalGMG9C6tX/pW7+yo9Edn3IkEoGxKNQWBDmu3F/D2INqNqpZy/VjVVjmgsO0aoB33bdzo/VQ6kKtQaG5aKXYCguVzid4cOQ7nhHSM7QKp2JotMrFt8OlI4x+zJR9fPp/vUA16opyHWn9WxN+2a2+CC0siaGAanL4NvOsxsbPkaWcKfujoU7P99odnw4/QXoRw8ZjPs9D2yc/9o0ZbGWSU/louPDKIkGdthr+mgXk+Xnd2b9J8S7u/5sEzMn7MowkdLk190OtmkA2yDsfwQeqCNAaLMHb4TSi2OOMX19hP4ofbeVm0Uz4gnOqdURE7DkrOlvPcgrW2pVJnJh4C/wTNlyMPzP44UbztEy7c1dGT8rJNukfiTI816Uy/6t4OT4FcTdCyjqHHfw+tC2tSj1dxtrC9q3TJ6xR79QYYq2CLyn8nHOsDyrCqg2/W9EfmGMLOmNKOUKoAhNjwZdpZhCDT4zCgWX+YuHq4LYHLLN7U1LdOiHSysGJYRrxm0M2s7+0y2d98OeS6En2InEoTIacN21ppSRBQiNNM+bNeAnHA8PtYAGlqq9UmezjurOoWC0OrFDCfDt1wCcesxMvkAN10rSQ2JeIoMvqSEaoCIxPlwqMYbnSYAGgPzzbq4ZobHir26lzaVdsYlloGldV+ywfDLFpwq4t0ujXwpxNS+cyo7FDr14RuhdDVr83Y+2KV3M4hrKx+UsIFdwvFnWlMDuX3tuhWeux4gwoAZMOKAQCOz0W+1aJ1Dt9z322/8imp8UaFqTeONmUxrUWD6tNnjJ8GBvwz1sjwWBuZTcvKSHp1aH0cdXw/StJz0s5Qj48D3O+koxBYZFao9O4Gaam8H9X6UdpYpzlRANNzKcfJ4X/yOhWcmzXimqXMEiw4eh8qGkTiA9pqCCuvTdyPeqkGbk5p5rrXMD/+Xsw3DKwv9gBuiMpNvQEdMq+uV975ez9fYM2ytvlb6bYHO+Gbl4l0KQt7eclmmO117FfomP898WQR4xfl6sw+t3vZhj9KF91h86ciQr3WALUbzqrGswBAk/EOrQhIKjTAK2wWzP4/t2H1AQW0KI9h2sEe5NaGy/6UXKb68TCJNymUXblRg8VOUTzSUqkr1nx+0cwg++3lGP85qGcOvgyws132SyGQzlFK05pBwEQw+dGEQnnJtwKjj+ecE2oikUwwy7Zqcyzcun09T4oUlOTZaJq6pywf/SdYdcIgUE2zC0yitwnSUDi1JBlgrMeB+znqiWYREtRLTlxruphqGRo1u4+PUfJFApAcK9sF2AZgTLG/tZWmDNF8cvGFmVS/yzv6X1x8PvkD5K5KeMnPOFxdUpnGTwkI0JpqnFoXGTux7E4jw48VS6ljcPOrqPRBg+rHtVgRxcrRwG2Co1y3PA/OBgORatOsxRqZfHdHidAYRBwLMZzCxrOQyWEFY4jXbHx6d29wibIDlwOYPPk63mJZouFyx8O0jo5/t32sxBYRYp5tF6E5PuRBVvyFQ2ZIl+0+1cCG3fh4ELPSl012XH0QDqqC71iPEnRNz70+prEsQexv9Z+14jWIUv9XPldYHoQt8YSUgX5257lXXq59fl+DJgPWBAD/NmZ0bRZ5rdrMJ4EhYwsi3xuAWiDfYhKfhW9Zg17m5Z3LF1qBH1lCPWJJ6NItPVMf5xXbcaf1K34N9P9oBFWE6kxTukaIs3wSivaI+XlyWBcpLcGtByRn1XTocJFl4zBt0x0x7O7c1d7ieKkeHUK309yrQN4W3d1rV9JB2zc1ZG3zJrfUeFUyqcZxFmroQkwXBqht8YNZ/0S2CyGYlx/m28DPkxcsHOez4oeFYTkbKYKghTEGAPiFsObURYGytWfXVvzoNDAIMmHFsedsJDx+Oid8c3CeSwntL9lXzJ6uE5OkFimpNWWlZbr7ijLyl4a2kaqa3/mU330x2It3vtf0M90qZkf/+P+Pyt8eN8KTv+KLDcSuxBG1rSGVzgBYbjO+++b+/hIkZQalqZLTiUL7XhfgPoPj6ZK0cN7sfAechzShNnkEFkR4b/cOADo19KkVsW9qzgkfmeeaTQplDD6C9rWw9RRnk7GsGK6mtvpl1OmBA2rIoe8ImyJ98G7L3VC3KEV+GNGE2/HIPK0vG51tYlBIdySGZlZ3j70JQ1uZPw6XGh7W+a5PnRn4kDqkxGbGPOIq/J3MgoZCJaUywov2zFs5lLX4AZwW+j2x/etG3cAvJMf3YHjnAfQuxyxsV/xIUzv6i4FOhuVf2jt5Ph1duGMcQIqvzsi/OPqKsPx3MXm+lr4QM6j/lrJLXNRokmRr+tgwKJ7K1vcWXAVLp5Udyj4/94SRieMCBonLINPsAyYQFxXCsTntc81yoxVjb40YxUb7c2fvPpESu2y1kBUo+nx7gWbXVDbX9Vj5ubNWPOQ+iRAD94xv/MbNP/rmmbaOmJFivZ7wzJm64xewtDn1nFJraQceqVdYCpL0DEMCT4duMn0XI+zlxnBFZLR0x5nTBXtC9VSmqJLjXZj/sYM1BMM6vPNVL9LXd0SWS5qlv72O4YZJEvYv8ZfdpUP6BWQe3pFvp6eM1YNcHDKBa3rI5OgNSh4Gv57XiHbGHXIe8MzTcp0+BfMNy5tjxYzvcXzb6rqT6AE3Ln41s9cjIfWwidosCMVnTuTJPtJ8dp3Q8Ysl23OtFS5DazD5rdEF9Zyl0K7F/wUdLW4taN83xtFar7m1Lp6Wl+5qXKWvzoep4y2c1i/J33C15zetbzlb7MqDSMoivlHZnX/SVyVldAMSN5h772vV8NlTGPvF3Mhxt940ZSyiKwbHfMPGAIY8KvFCjYrdgk5N98q3rhdYP3Sf8/lKtsHvP4gEg36io7yTDo1ORTlAMskFKNn9mZjsUkWA6w+XTpZk5YjgE5ymjwHLiJIbk0/paNDlEAr+bLslTyT3jMARlMiEa1h3J3f2ohzib4fd2JPmUms4yhmkGuafWfTxn2Pv3ggMHtA8SzcWps6uXSBNo/Bdupw2a02NPLeZXm+GYFnUX4qfU4GNj4oLvoq38vSkoRFlcv4qjX40EmKD/CgllvPwDzLNi3T/x6Z4IeLklnkqBv0TpEMU8Susevc0qN7B6UPxTIyq19SGtNyY9CkDisghAY3eyfp48cq3da+tGP5EXwWUCTxzrfzZO8uj2CdZ++AAOiHZ/uw3vOGVTH5D8DzFLInBuj26pzhxrumz8d1CrTyqO/04vs5vW7nY0sZXcewAAsO7d93GZSN3FlbgxLDVz6d2qeRb80nUL2l+lF8GVIOFj/B6tXcE6iKXr29Exj+p9yjEQZT08HjN/xoqV2rAp0OKu7vCxeDbXyYcHyBwi8fwqe0rP2l2MxyH0RGJryenbBl3XEqowTD3GnILUrspkKHgUi719dKPrRPmY1IP6Mp9moogayhrr1l1oyD/ua5+nGUIztG7oSsPtLbPN7TVAQL3a8IuLoNF5T6ZXRrqSNHWq2Qf+a91XiitxSP4Rca/jOamD2RTGgOdhmEmNswDSuRlA9D0KVeayJTNfuuGn7InN4duV5KtecxIK+4vIyOdNJZ244cmX/+Tw3fDHq697iAFMI+NHtnz2Eugb9Rc2GaJDfCk5SFLgPbK76TB6o79imM4pzYFuJmmobF49edvvaSXfA/FG7zSlntWHfxjHm1FwhIsL5YoDqJTK3rK0ZdD0KS/ZQHpvqak/S2acpoxUK0iDsFv2KyvZgHdFmYbGECnA5xQI1SdsCtZSPSql8OAHOATrhN34BFN6OZ+c7Qi23yovfICjPJ2NYB4S23Y7bnNuCan3FKSZcZ4CcaeLAe3f5d3gP3eUf+TRTwxU6F5hddsHqKiOr0YcugY4AFAX8a+z22G7O4uwiyfk8TGMnVivwXu2HUDGAcIj/mLoKeKB55Wyz6JoCLtQ/PbHt/1h6EEixzuH9c3WqEA+Pj85WI5uKo+0Yl0UFPrvbrCe/jXziKwfz4dgKi6kaTdi1rwCFlqcVa23aGxv98tWowkXQEplX2u3y6q8VKvGMlKnVp26sREiGkBpclyOLxsdVJslhg+MlNXbpOKWu3lCrzrE/pIEhgVL2KsVdz42zN99Fhu9RPU4/K4/U8aQilWZa+Q6UPJF+2J20ls2qyFMCegw7hFl3Ajs217DMTELZAB/Ho/3oj6M5pXiSC5ONjE+5aGy2xDZSrCjFKoWC0wYf61T4awgMa9k7jd3oHhRyRZuoYXetudqGJRodH9szeKgc6SmXK/E6+xI4vF3f3vXcB6GwtkPJ54BGHq5WaA/AH7bEX/8odmqOKCSC+9ZpSnS6rIt9en8AmBMvcsURQTQ5fC4TKQcTHLLC/ngJ7/mrrRmqgtOFiDhTfbp26gdTr5M+VqOQAbzUwhmfLFp/htgkejuJnspSn+PBNuiwEePzyFCDlx+ZDO6plL6B/OK1a5PpvalXWbSdycmj6RVZ9nfUyAP0kMr7ksIdQjnWci8Eyf+0xKVY1FHunvTroRhLrA4cmcmcboUrgpLK9a7Vm/zkSeTfoj0Lgh/9y3gIYmdUvqNGH5c7WTYTyVjzsP7IyUHwuZQRNrnTJqCBRBfcDMkog4BJB0rAsa9EN7anqQB6m3ZOsTbp7cxedE7oCf5N2ImiaOJcXSrBrGG5Qj87di4556zidkfZ3yQULzC7gAA+AbC1Hb3yfoPQTvWDra99Zd+xxtvkbFWIj3ij1Isb+/p2mdilErWv9D0lX1GCPrXDwk0OnZtodOqrc7y53DUjcdQcbv/+tiOeQ5ct5geodbfdbHi/1nfp69ndYieSbEIUpdneuB08r37b6rY5vS4vYDfNYsH7Hb081VCSa+dTbC2TSGLKpUb9eoooZCVr/QPgTz85F8KK0EWqMw8LH82gH19m1DOogxvaz8KcPD9riDvhv8518ctoGGXXm1tqWMhVVPELE/CRAuDbRrA0iDUvSg5ZI/AaJ+19PW6TbEoaRPOtTtKYKKJqbL36ZYkbnTYpgAG3FeQcoN9O9zmmYNRxBaU4y6uLmw8QC/DW8fTm8hS21/9knvkTbyRwXjgwi60H8lcLhadAkv8/q5XoFyWmUUtADoNmtlPodyVdL3+yeGFtLhxc+ljD65TdPmBv8TsmhL/YS1/donohFZKC9K/ZE2+DV+GUdIbiGdK0i7JrD2gBDMyC+VZqoeQEdiazcFqBPnx9DOdIDkSleyIEgEzu1+7iWzoGeDEsfamuHqvJvzRppawraDv2r4c/tOdR09j1ZJJH8SaDiKBQ8PY3nAh//6NpGxLsv1SkoiJNgcgJYF20cHjGtPbwf1zmzb9C4c0XCieSsY1TFQ7XnOD6AdOM6Fw591fXW6UgxtkFlpXigypQEZRLZ+YreWWAAyLY2b7fQZqKXf+rlrqGqSs2Uv+39KpQ4CWkOyNp5Kx/s4ZiEMwUqlGJdHSDJjngp6YEaoETBTY3ToA6xelgphqs1c+WB810joXwkGD2Q8IiEhOKdAnl1QErGXplBcZVN4b4rJeXn9P+DzefWg3VQ2BEEvk3KWE7qG09Bv8iJqxHwrp0rY62NdaDeBaeldRGME7ARcY/aH5cHOKfwV/nxNS1c4r272ELPflYdD9s9wDDd07t5jX0+J9RMa22TyMBHieU3K1aT3uHt3YDiFGdHrf51CyqjyTRK0E6w2Pj3hAkHYnsU1zaVBOKOznBaXQLmjKPug8kme+SYqOZi9I++gM3wMwdEZAbDzZSiGHkiIiD1lJ4Vm+25+FPEwxOAENHPT7pSgojfRYHod3AfE1r2Cx8ggNQgH9LYp0D6/Sk7rvVByk71Kjo3fQrYzl5n0bGzu1SUFRbZrzQVUjg5f+etb6dS+kY9iABLg7vhPslQiUAOhVfIKWa9CUZS8IVbr2yOx6fdgJdDoYeirLqRMOTomwvExKkTnsmR5vAZkUmiZNve1YY/D4cxJhQ42wxImwJBmyjR87ySd0Hcp4iK+qKK94zYDAcEUBxqpZD23Z56GbAUObG5EhLyeXRhNl/JbOn4+u8UbIA8olPYPOLk8x+g9HJ2TZOnmiZEn3VCH9ZejJqYIvBrQIpgAn319+K59z8OM8kTYH24axel9MQLAjIThEf6rEMHfX/1GWcBpG9vuIqLathXSWKCM0FOpbufbSr8PeG9I0dmKGDiQAFm8/U9jwKnEvMCyKnmqXAao1bbUBXpa2rxLoCdTMOkPwOdcrHqMiN2gHIvxIwofapaH5EvT3qxY3P+kwqi8FQLc1qC13WSrr4i3k5WIWPFp9gHNm7IO4ldP08lk+9R5GBqdAVC6Rx+2cfcoybQiqHFz3GEEO3e5pLzN/xZJslZJJ54LDw1HEY8SyxiE/E1ut4SipGiQmQK4kGT96AilKtHf4Fe9hS16MB3MK6xu2Zbgt86VpA0W+bJKBX/KNJzjv1+7nc3f9p+u+l093+LFszbHaMVMiAkEUjxIJWS9R+SyA32XPxPQ4oLf2+uXCGQ6aWRyZP8Eq5+/HcyIepPRkROcLKXgo48pfybu0pu7NQzz8Ge3Y1S6A941lg5qWjfkqG1bNctoswuWat+NwfLAxgjzktJ3r+D4mhEkGJij5sN0/dVEgQiGUVSbbDlxUzUqjuTKJex9WCM0qSYRVzdlNej/cQ70++tF/h+2tOge0ZvQHmD1TO/1h4DlkDEYyjtDNl0LVH9fz1o17R2ySO7lj94pVJEBF24Vy2mdpeHORQ2Wbs5cCiOyvZmg0PMx7qtwffRUx/CjY7IVCwS+U3dnsmsRetQBCS///Wjo1Bk49Gu/HOXfh2Uh0767lHV/hmrgQlh0EP3aFDyV20z+48eXMiZy4f9E8+noHBJzxnb0vwMpBuQ4oYuWfKUnPWcGv88JetctZZ4OLx8/eRjtGsAvmiWQp0K5lqzANNaxVvqdUNA2rwYEkOWdKLutgzV2NVhVjshsPlYIj39C4bOBkeEdcvNnEG+c4fLCojVjeqhf+d/WeE3tVDS4LfXfAe+NaykSg24mqcRUP4f2jTohNNQTQz9oZ3E5pmfF4vGdizIbW7vGMBxUxUqyQlxZOL4l5X7OxLP8J0yG7WYxSU3t7URcUxq34SVPTSf6mr0zvVKMn1fsb3Shjsjvkktr0dAX6ayWaCM4f/ni2qCtWvr0KJhznIzcbE1E7fSGapnYu4/yjZ+qQwvdidcbzMBslS7XixPfCqQygXGeTYBfMEMq3RblNgm8MdyJjcw2+D/CG/qL0ecJNsTwhp8m0wrbMaOThVSKhXRMIecMQAekHjZMyHPkHtERa5pMb3GwHxgoQfHYlNDSCd4l+XXnhoi7iYb64pOM1mFJ6Z7YKSXzDUrfRLOoCYwayfYGVmDnJoQRUhjNgW5O/YhuwrLgvbFggrACC0GOt/t81/X6RMiqnq955DU59keS4blAigxpI00Mch7t71ox0oIG9biY+jTKFqJUUYvZhO9LpxKs+OdmorPMeiIcLpABWl3gjK51Sr8D+TkqYymMCBXbHIfT9RhPEFVl6aLVDVOGLRfJyKwTurvyjc5H2SwKgdzx6Z7T5utV8+mVLSsk7JF8oo5m08EBqVSzK0/v+jnXjntgQfFQewFtx3rIX/6FEruESLA8a8oHJM6wFG14izh8JZTt4cRuI1w4V8Vpb86MrtpkTp8ai4Rze0XmoYb7oQKLhQEM2wlbqdEd+6rDDn0zgdwuT2jN5msPAbLKe/naLKa9H2IuaJe7vuLdkyfsaN83gW4BMF07pxYm+PORgdTbaSl3v8KNbcMsBhhkHaQT36eF/lIAKI6147hHL1zF3cTnXvr6a023dr4wSy8/N9R7YFpS1dodXAxUuaO/FVJihn7BPHiDzb3JwSBnCgORQMDVoKnaA10Lp4gi+YCH8zl2M9HHrSTFuifwpSpmtwg3wb+zjb2pjoFLoYRnZM1yzcI4xDWK684bgexJeUFW2CQBObbHSLkjbdWfeLAIH+YAmBh9GeMAUvYtpTCb/5GiPeVimpOLILsqnvtN841MtKXEfhk9aGQ376xYKQ+VVpzxQGrbUt7iSC0AMsuUqY7cWg3+0CSecfG6DSRa7WbvJC7z5DuokjfLI3T++TVNWek0crR0E/1t+VVQ978NntBEnPXTHmpiCg1NWMO92hEdYeta64iTvXscgw6Xy5r8R7Nvx8pUy9VLG1FVbHzuuqgg8VhUWHOd+PFx6bd8FovimuE5BrROUYD9Z5bcSBooMBJbjfDqScZimF0347wj25cP2yLo4JK45vEeycT2x8lDVDSF1QNAsirFksNWNRf/BgOpCbnviRL2AgZlwdqTxKMB6M92a2/wZ74h5gZGOxFdTDRIBcEuS9tvboP2WbqV3sXdZh9bnfawU+jfdcEo69ys5ejFTzOc6jrnuCqspUym6L1vZhGkNZ59GcuS9XGfORd/SgqfjJ/lg323D1YwjI3VERAX8gfErP5SHpYdH+xCb3E6t9Avow0Qb/SYOlU6G6FDXbvEg8zQWPb+4tjmAHXDAQWAPpDiaJjmu8Yd++T1MNBldMiiJX0VvC+7yTlIDNrAfNaGd37srF04VQa0iYlq9yL5hUw/V5MeLTt8yaJ1EoRNqicu/NLlloFEXappWZkskgjPJImjT+8qiwgwSc+o5V4Uprj3pjTl7iwaDuuMx9UJ9Zf+/D6LIfRa0fl4bftiz9aFsDArQWuiCyVPAfjt/80xNpNK7yriPs0CpablV6eYFsc0y5WO+KXpAKj8RPp+04iQQV1nwrs+UEP+4XPQUp4MpDQUSkH0JiymvR/uaswo5mVp/iyGNfRQY5PIb4tcWwObP5rYh7wXPdKWw9c/1gossLbM52yE5B5IDDA5YcZdwAGY4E+NciEWnkS+valMBFXhcJh8uJtG2yvogvSNZxMnaDqkIdA4d2G87OJatLLI/dUTyD3PjUQub9o4FUKUA657UtVP+ulz/s1EguncA5w+gTrc71sa5FKFAueANBHHZqhzjtH4nyYECe7zxQEsl4QIbCPO0xxAiqVW0pQEPwX6GH4lwPPjD3BsBcBIK5V7ju/8uKeqC7lptjSlSETEEhgPRaTUlOy7UyY00dEfTnE0MyYjkErLssJc6lureiWqwAXbEBtn240uJUCXjYiX5UXKUXP80j7OOsOLK+GjVe/sE5yR0u8jBsMdck6MSK8vii4wq47oOVR9483xWuuc2vkfhUUhBEnhoz9xrD32tVZTZOEVH4hXGXFTHm5BTMJAtYy0MMaU4kIAOy97ecUzJbZM+bW9+VvyuKcYOIyGZ2rUvtEFIZcsUp85VYLBpRasOG25ZrKMKJmtgAktyzGQIjqQKBPYyudXfNyC0LuQOXIbu8HCizDRf8YdskidFpbI8go7WQL+BauXS9Aou5rghGQh0vSrUzhxQK1wLZtPUIGrKJ2gvLu88Xycw9tCWZ4ONpUef8iILkfFQUYzSBltT3QSbLuA24/ltjj2wPQVPBLsL17ddZ72VM/JRchlcfMlxWX8lYMn780FGosc/tqWJatKEHDeNymV2xWfzk/jpdG3Wx9CW40HqFvVJrx1+g9xZ5xWy6NnS1y5rMhdwj9rpPHo/qydEbZMeai/zyMzi/JbOYhYh3etHVsiVS71rC12/QW0Yr4aBuiSqlNw1PPUhRTDJWH9ikkdjKXYBbUg2TooKJu5lOIKBjiScTgyJf1id/l6MQrf35uFHTMJ+mQEDkAV82+Jsr5vt7eTHqb3mKBEfa3HWIw6pDC2ggO56oF304jfoYGC0AuLQN1YC/BPTn+5HXqM4d3lK+ibXwdcJlvhLLMj8tqFgu+sliFDqsD9Zu/lk3WJ8f1KoO8JaZxhfKPuOSJP+YDCc2EfA6kfolQMKjyL5/u4WudJGD0LgSUb7Znrk+3tXYgQqmZ+r364mXKrknVsQrjDnLvzup9q2uIsQ0B5wUeZ+04EpaCbrj09wk3BHNnoTDreCvBkt6lTL7h2V1WHHM/3LJfB0rbRtGWVqVdyUXyOwvIIt0tXslCAl0U2XC4rZ8siGcI4LxQRsUvcCun6uQXmpd0Vp2ixZy4re6QMThlPxaiFYJb7a2A8vhpzru0Lh+i8LTqpwaRD4CM9AIqbTYtkXzuhRun88DvfdVrJl8cSltNfeQoFT5mgR/TjV4JOmZh2ulUO+w5BBSroGnCWOJZPNKyQpdlyIvZzhwLKP89mYPaM3oHJlJkXzMr9zS49P31V07dhY7JzGMbkupdMB6TC1tMXHhFzTtOEAAHkbkOskU0FGDYePPLgWH2/DQL2TwkAyoRatG03J2fTKRW3U8njtE8MJ966iIAjUe1hn0STujwtz+eJtMUgNJYzK+o+gEh5eKcAlV0QbKzW8QzM6Qi/3P8kMO0spfd7ocnTqiN1QUJmkAItXNoR3Ji/CnaH63o1iWum5p4bAm6ccCRa1Y1a1VrSL2lC/twZAFCqdJ3UKz2EiZgHDftgrDmVrfgkhEOV1xzZ4uEaO21//Txpxkl9+t+R3w/yTwWZCoL0GHTQj0OOc17zu9ouOxhAHgLK/Co1C+eali+PQ3WfCVUS1pysY0kXauQNd5XkwG2lxg115yIq6pCRamDWqBQHm82xfZGhqupoMRmNxjZdufpaVMC4zhMS9LNVIMZmojZvs5tIus6VqbpIKN8kHdMHaN2TtcgDdtTgskQWFAlIiiqvrsdJWwwFViZbmtUKFAeMQyBREXsxLihf0+XpsA/OUl+fkBAvvXOKxFY6v07sNdKsikkTyV25x7JjQQtAUNCYmN8vGvbn/fMOIOTLfyGOnxGNA86/907nisLZgrgac4PjNTxWJCSNmESgNgYjB00m08rI1s1wNoxJ/tIKSI0mG9bzsqj/r6YNtI9okYFlS3OKGuruov7BEhRjvuvFKUrJOF1f8QIX21bnpy47t7GpwVJVA0MKnu6dn9W05zOIl4KLh9mxDVMm+PYlJ1vmC7Zn8iVCc5xunGZ+EwOqW62U9Zry12ARjl5RF87BH6uQBCUDc8x4POp7ShDQH/V+LlzzROJweuExvF5+rekaCuT77kcz1Sqy4byhVa7bhG9QIcZBcOVJKdg26VJRFPGE6gT6LjECPQ3BpU4Smh0wTIiV49ElAEuY0ef5D8CbGmW8KbllwH8POBTvC7xylDumgqrwPQpvVpR0t9O3FZYy+K/iaoKkDE5RkqWRZd9n2b7CzRizUvRaLJEqecCgntOU9QhmhVBcyz2G2i1yahbF0BhDVjMIhxgkQRwkLe52MxugPtmRlnSueQaKjCOr4t1gC07wPp+EFKuDCjtkoSDlxOMmaaJyJWImQk9z+wReakUAKuHY9enmJRWkhZ424nG7XgsuOtMYDLJ+/hc7JkYyfSlv2NikyxM+j7kHO9B4YCt0g4x4zqoboaCi6ti7b6rHaQHgxbgZ+rR+IRx7DZujdnGsqUMyfo2BRew8qivKwu5sAzY2kEfL2ROnJvWdUxURaWR9Da0CN36CYbT5NAA1snlGceY8O2sytP8Waw8ByyDEuy5EYhdIQDKrnOHAspAFyThXHey6Fqj+v560a9o7ZOGQ7mhGh4L+hIACgeMuah+EKu+W8ewIici+qg6Ow95OuhM3GZj8myBuIwUXJ79f4rwHY9+XG2o0Rrfg9BVcyv9acTSbaacOufDgFzDrgMx8w1928QhstqJ1WH4mF2AXyGnyuYLzIE2QkB/SGPNbT37eLF33juPNInv72rUlMiQBmaUvUcsXOWe7SQvff/hvIvtZOB7p75T8kq0SdH8pym1+Wz372xrTf9kIG0Y2PtyurGoUcuj8lxK8LINdW4VDzP9GjsO9pbzYCcqVyGj69Q0Z6cd703nZQUKEuz8x9XNgQNj3LcGDqFS2jAj4G5h1I63hVm4PBKE37RySrs2oxdv3yyL53HJ2XY9EDoXgi095B7V0zCDulKaaS9k6XcFTiIybhCNaeKNBSEbOunvvxYgSuxGseZhbRat7tUcIxqI4C42ubGv91TC0R/L2GoghT4C5MHX8td1jOwlSOeRquwbdybEXx3kLVscfINOUD/arDpLWWAEWWHH3qiaSjFLjLQkMvZRIpOddGCb4BUowuhhCjHqWOHp+s1jb2K1SrRCCatqbMVcY7DLYDheCKemNl7ZddbILymfw3v7Cbj4XQ8nyOEaeS2iqaebcTsreqHgayrZY+sQdo7JqQOA3ruw1/f8dub5h7PkCTW834jKAM0kms1jKbz9FCiB9HkYLQCSZtmlKRTYY50ZGn7oXGZksr2if5jcA/+hgUk3FQ2jj8LL8TyfwegUz9BYMvxH6XAEPFlCbDRL7vBZTxV2xircwZAGtW0XTd4B3cRTjfbB0X17qP+7NCdTB02p2TjxbWMK0Ix9aqCiFVzwD7w9cFdl0a5knOTNJGnw5SvxJbSRPFuTvzl0FHUciCtAqsLoWeX98zHxT/Dtb3YUxezr1XmbeEGIuDauYLKDj2I6475vki+R1p1/FwfsqMWK9bopmoS04h0yFIzejuTyjOAfs/LSiWmKiLKa9H+4h3AOu+4teNh+xo3zeBbgEwXVJ+QKQY+hpUtbocWcEXsIuadpxSMAAABHLm3JA9TwRnQzlH+tfkq/zjQMAHHFPQpr8qDvPQhhN1lMgcvvCa8M/VQPIN0v/H9LF6sawnlqJ+uaMTmp3ZLjTSsDRuyORPWfMtKnvdbUgGrur9NXtRncITsUuQJFRfB+4QrscOc1+gq57iydvFh4C5RkKHknZjR8xW3B6b0ED5aNynO9uvK6/8MIOjziToGbppcMGsBT1xk45zSs3N3tV7E5RFf6s2O7kjEGhg2LHK0ZyO6zrSSVr1ZND6xALXV1N+2Nzae7uy1OOKPbqt74NCPcC4BfIgsKQpX3/fOg/H4TaGl5qQWFaE4+gIvAfnV1qJJZnbeUHTteIKU+KySG80Hb6i8eUIuvdRabIu+PV6eZr1shSkIhS7trYTmT4iROia5LgcJ+XIPz6W3Z2DGMYHphxHFUaF6RjTQsvdr3Xy2xnNO3Mb+j10Mi1Q/Keu8+wink3wsLDr2DJ7NX7n6EnJFsd07axa14Lay0xRFUJIXsMQAdp7MRJeYECBqaRFK0uSdbBp8AAVDnt7w4U8GbuNr5FAnmxdV+/JsXMQTmasO7iKyyRJSikPS4vTDYfD5H+s0kxBsN3DOgUVnghmcP0gO02OfXwwDENEvjg+sFBlja91gjINwGj8VCb9hol1ytFxPpev3Wlm6MI3HIjB6d0mq9Hm7OlUxc0ZDo9Ve/wKXdqnVV+Zf+5ye+zqzCIz7LXVca9Zxow5Wf3FQZ0yEkMA6WV4qZtbFjuIC5MseANDLsuRLKwWqkrMrT/FlcRplvtspr1V9qRcVoHcz6uifw60/sb+ZVLjdClg4OQJ893eY24nQoEiLhnIAAF92To6g8Gy2e1eoTvn2QrzOupfYGOXVYX6Tpum/Xq1ZaqTvk3DQDKyTH9Km5DX7r7Uwt3FX9wgG7xeiF5BWSDcnarIiUtXAO1e5v8p3PP7yHIXToOr20X2WPe+LseHvBnYLUcaehmo8HL2V4DL9o7Dx+oxQ79eViVfmKtXwrogShD6vNNbvesqCLNxWK3cSNOgOiQte9qzFgGSahKs7sjMoaLzqAniDvjnwALNfTreZ4995KLQj+ULysHakdsw/0GITfBljn/1DSV7Myc8D9AOZ+KNhAawIOcITmalNUEdeWz9/knOhB/8wHouzL/y5w7WOSEi89IcsNMO1gEaO1cnPEN3c40g5qEpda0Ds9CgtVWVQYT7aJ2kbmb2PotVquj5LhbMfuiAhQ2FN1gAAmPgPjFuTsGlfOCn6xkH4wzzYtJpNX1d9xbsmT9jRvm8FFVEifLTCg6MNVr4RbaSaKWXKNbcMsB/FDO2kgAInmCqEHIbLV7V7fz6bKnMlevZmi8nteVgzMpHVfKy4LWq1/zeB94VxAXPo8fh1K64Zh797NMi1hOFu+7ePJmvvvFV+ZE3UbqJWKntXEMAY/JMIX8SutkeofVTzXBjMnneMGIEWywfOl1XdJwPa4hVq+QJBvrzoADUh+p1ofU4vxTwXKUpYTJvVqxuKH2XXL4Sk+mIvZKaXCn+41N1HGwB3SVNHrFdYeKPadN04zZETh+jK0GUCY8DlKKxogr7MsT3ruxIvXvKXgOr7xczsgmhqyc/83zxYS/MWcq+mQXjLSkF0mKIS8xC7IIHAP0Wvu/CkGSYT5Wur9nq8nA2APg9yHC4kdm/s4El9uCcMx9YoLtOsDZxnsN0miWxuUXKEiIJ20xXPNIwT+95buoe6whztUGuVA23GIvVgQKvPe1lUDf8IphuMBUdoV3IANbJ5RnHmMEDmZWn+LNYeA5ZBiXZcgvKHYIdGRznDgWUgC7QjTZv5lUuN0KWDg5Anz3d6f4Qs05EXDOQAAFA7CIW0JpCs5vE1c5wwdOomC+IksgyhpPw6ixG67YpqfUi7GyiI5pjBrbWfdDYtSNh8h0pcez85yMnQFjNPZsBwMRGiiMSlo3SRS0qPCS+kQXfFYNnN5bhQMKi09/iveDi0TfRJj2KhxsP1Oooq/OgX4eYqfftx27ejvWhOY5U9w+pMpLOqRgyXrfZP5i+AQdczRpUuJVRPkaS4UgjQzE4DzaIK1RUdM4C5YjRq21l3Wmrx/UKv1EPUbB/OzK/T9I67/lMr+4ZWHauNPHcWAQgW3dmaecTlUBVICAhiDdcnDtBZSzTFG9REM2fbL38vd2UMyNRlHO4qCNBFPBga0KXezKQFRIplHmCtUhg70xsaRns60M017mAIMuy5EXnDLOlfyh2iQ9oziZMz64S3DMr0LHb/GqBmHCB2BZPyOenBjcLUi17AQLaSaKWXKNbcMsCDmD4o1AAAJxWwCczJQ5Npv9sMTaMS/f8u8lNq2fHtS21i9O6/lTmz1z4lKrb5Kf5S1JAIzmYIrd8yl4pDpmA2CTlmNTx4PYcjVuO28dXM4BG7SgHeWsPFe8LP/dgh4cTbtExEfAdcoZkRf9Spkk4gRhVvzPUjdZ42/3GBQndNTJzi9xFd6z1JfFCKd3FbX+i3jALYCKip8WV+TnCUSS9cc6nPM8KgHwuaIjO4zNlMI0undfFozy0MCdxJ49z/349ExXJTfKhnpyG8dWaZGsdr2YfEqQMWiRE5XrpbZEKWKAQ6ZhLZIFSANFZPaGrvJtlQE8T/Wi8vCPJsAqlIuD44nu82Ue1JrEoObKGa2xZ7SiRJgBdsdfHdP9OVlwIUYghQpEZ+9JmQQftWC0HKof+JleF9AP4V++bHt/U/K223AJ6yLM5iJFsa2TvxaufMtQdp4NL/LY9sY1jdf0e0thDzHJPS/GCey02ZWn+LF86qjLvtuaShAWWqgw7Fzx8luTQLaInPqjweWWFtmc7ZCcg8jgN4bwpfn3oAAAAGXEyrL0WJ5gCjGs/bVLrUYN3ZrbqdRnY0WuPHYx10BD3c9e9HMLCrljEA1WDHWoSP6GZ2p/uzVOpXmQXhkSjZw6g8BZJMAVwtfAbrFvSJAKcCPIIdUTWxwCv80a8zUCxEZZPNQKel/S76REkr47YmFT+vzUeIRjf6yvXdKOgMuaaNpT9jN9Xhi6ijxRA3nbmPKr2IFV4CNmPsa42H2MBMSrCN2PWe3FV19uhgTH9t39PLP3nxVB/oTBRPeab+YIroOVUYpP0CxsWqfbmj+F5aDE+AFfW4yQABTE89ENZfjhqWG8TrEst8J208fcANavTEohaePUFX7ttZKlD8U4hj2fMCO8hRVW3yNa6TuKpQJElyzAhm3DfmQUdTQsfR4mn8k/U6e6C3K1piA3msgrJvywJM+qtj0bor7uceQTMmdL/iBMOp3ds8Mao8S3lqdt2NF/beg+A0Ol2MoRi20vI0eZbXFZoVi3smUJejVx5+7quqHO/Mk8MeX2pkYSJFcOhJnJj39tIYupn/EuEB3WhQSrqeCkgCO72LaGELI+L7e32uheP4NYeA5ZAZ9a8yD8Y1k3s/dp/4Td9xbsmT9jRvm03/4eZl1EgQ4VjnIBjdDizgi9hFzTtOG1eAAAABGvr2olwCrvihJ2PfEwkQ/eB9aHMOCobKJcTKxm13YG3Rsw8lrQzkBd/XN4kRuFMQ3uGI+zuhTP8B6mxUjNE08wy5zsG3t6VWyZD8miXwiT15iAeXQUJpdNBNkzJK4/7O86YOYOJnjNHbTwrHvUjce2MmDliTWOe26NnMDmzKBIpp4rdyZ0/rBGHcBZQdSo1ZoslRvcd7Tc9bY51b3b9qE7TLLdgCmUWv1gbvUmEVBE1/6jMneP9m86Xwd7y+9vnqsPbK29QN4DPA+CLc8tl0BB0RE8lwmmdHP50nsv26fDV1UNrcXMPWY9N/g+B2qwmoQB46qwsK58+HpbzDnmPk/vvzldwy41e8Kub7ciyWnOGKTcWcQAAsCYOmwvwsVgVAsgbC6kc8NA7IPxjWUMbhvlZlaf4s1h4DlkF9jVyEkmKA434k/hJOCiKxtTt0xFsuhao/r+etGvaO2ThkOxM4SPcAJAAAAIBPB+JqCZVH9g3doX/eT9xePxYx5rudy3eHbC+8KmZFEFKBoPum1jtUJhbwF3hC17v0lR1n8nau0Ek3zXhZkQsUvB77DUF2hM/btR7ADksADiCZKjyeUaFka+qNyfokZlehY7f41QMwriNz+lZxAZaQE+cR19y2kO2kmillyjW3DLAfS+4Q+AAABuQ6NddIvoS9mr6FH1yK5zZOuVZneJZ1U6Bb0DqXYP6npiiCn7bzP+as1antS1wyBxRIF6bMrT/FkMwHJBfMck9L4Os/EaTUMS5mkovBUuzYcrMqlxuhSwcHIE+e7vMbUyMbrFfdYAAAAMH4/h6GQ+Y14kyj2wqj9KKMU9aJF7HlybUHaO/Qt4QWCuVMGmQvazYIVs41kf2NXILMO1oRDLWSM3wHxdrgOPOUNcWMyvQsdv8aoGYRLmaSi8FS+dIk8CmYkS5bSTRSy5RrbhlgNiqFNs0AAABS81f6Qjw14kGVbDx7ej+APt9dqjXACX3xF9jbx3bMtMWgp95GMhN5LxF314Hyh7BJs7Gk825k5c1LMi+fsBEajDVrPo4beAJS0gF4fiNRgsNOLgHPDeb1z/XIQT64+BOJwgPeF26DnymF2ugAAAABgQ6KALYf/B/Yt4Wp7Y8KLOAxA/dr0Fpk9yeUa2zLGTt0ckgb0b34PDkEBuc7fAgAr7IfetQBHK6eGWdK/0jAaX2zi5Cfz49+A9+6dAuBnFwTHfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"}},"time_used":48,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":48,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/fonts/Delivery_W_BdIt.woff2","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.057Z","timestamp":1785161167057,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/fonts/Delivery_W_BdIt.woff2 HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://dhlexpress.bg/public/dist/styles/application.min.css?v1773055958\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: font/woff2\r\ncontent-length: 37756\r\nlast-modified: Wed, 01 Feb 2023 11:40:26 GMT\r\netag: \"937c-5f3a1ea187968\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":37756,"size_decoded":38011,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 37756, version 1.66","md5":"02d932ffdeade3905d4724a77013eb47","sha1":"6b719d6afeb1c84ec58fa67e1e19e9a2e1524d5f","sha256":"a0e0f30db458522e53ee59c377427c2fc7750cc6561b9a46dec2aa7819100064","sha512":"eee654453a6fee2dbb68cf38c8b6899694415d11259b2c6b3a0399ca9b99cb5b2a6520b3537d72fe3b7b8623e5e0a8ae53c4dafb2b7d4c84da506428ccaef90c","ssdeep":"768:L9vhwdBz6z21MEpSc8NIML7K//lIoVH8JJo:xvQBz6cIduS7K/9h4o","tlshash":"5403f1e7fc4b16f46678bf60a64495d202fdd52ad6c5c176b128f20b5108c1b7c28ede","first_seen":"2026-01-07T16:46:43.955692Z","last_seen":"2026-07-27T14:06:41.198635Z","times_seen":19,"resource_available":false,"data":"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"}},"time_used":36,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":36,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"dhlexpress.bg/public/dist/scripts/modules/photoswipe-lightbox.esm.min.js","fqdn":"dhlexpress.bg","domain":"dhlexpress.bg","tld":"bg"},"ip":{"addr":"81.95.110.236","port":443,"asn":25234,"as":"ACTIVE 24, s.r.o.","country":"Czechia","country_code":"CZ"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.122Z","timestamp":1785161167122,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.dhlexpress.bg","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Mon, 13 Jul 2026 22:39:46 GMT","end":"Sun, 11 Oct 2026 22:39:45 GMT"},"fingerprint":{"sha1":"FA:2E:BF:DA:78:50:5A:0B:D4:DE:13:AD:2F:27:4D:FB:97:79:A4:61","sha256":"07:4C:4A:F3:21:AA:65:DD:62:28:6F:97:5A:88:DB:D1:C8:91:81:86:94:1D:A4:93:94:42:8E:3D:7B:37:A9:6D"}}},"request":{"raw":"GET /public/dist/scripts/modules/photoswipe-lightbox.esm.min.js HTTP/1.1\r\nHost: dhlexpress.bg\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/public/dist/scripts/modules/application_es6.min.js?v1741105408\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: check=1785161166; session0=check; session1=f28vhQyMJd7vyOqtR3K6-qPwEuT5lL7xK0kjn9pOmb-qHrUMmStpvRDhmZeVFNHWky9u6Py4GyCfVBsSi_Ui_9OQ2CYl3Hk6nC3UlD1L4M3PV4FsKnqslpX8A8ZPfvsNPRSH8Ryvs_HckWrWP0uwyuizS_cFIc8Qm8qdcB0; session2=check; session3=0rdgYdMrM6J-L_3KR22BR05DMBEmIbIYS_Ljwh_8FQofspfRaKKrcxsIcAQk0D4-shuLsI-rU__I5g97WnhL9t5eq9pzf1VDxL65T_s; session4=check; session5=QPJcBrbEbI6IHJkFR72Z9uLDpVADY-PQym-_vxFvUL8monfbnnv7cSpX2_5IokZBPzRYFbFF7vF9QW70cOn5NQIq3nKVbQnQ0LnjlLhXC9aHqLyL00U0x9Hs8s1dI0oVc5RJ_1mv3GAfKuVckN4pOdNJtsReKaJ2MFhlQrE; session6=check; session7=HtuhZZovyJuptYWGR59RY-vJcuU7YsanozVjeRvLfZl9g0F1mvgNYO0zCYSnjScFjb58nKhVj8wLlFgnUVPWt2jqrZLt1FqzHFqLwTmmy-t_WF0V6T_Wcx60u2HwUlK2C5qzA--7uostbL67JxiLAwHOG0mRE-P-ZCCrB5c\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: application/javascript\r\ncontent-length: 4477\r\nlast-modified: Tue, 28 May 2024 09:12:56 GMT\r\netag: \"3802-619800a250c6f-gzip\"\r\naccept-ranges: bytes\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":14338,"size_decoded":4772,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (14245)","md5":"b505ee081119c5be142e0dbac4762f99","sha1":"50996ccd34878f848173526bebdc422b5237d28c","sha256":"b82c385604f90cc77082d8e1bd4f5ef7c9d3da62d95dcc3ff1691a4eb0dddd12","sha512":"4bd4645a71a36bce2d5ca1714cdee22d53f7a540ac9dfaa717ed192b60923a1982a9aea5c68bad1d4a22cc1567a8222c1fc1d6edeff7bbd1c438ec25474d532c","ssdeep":"384:GYym0lDcKZyAyHEmlpvGpn1EKWnGQJ4fVlBB6+EV6b324TT+zzIBY:D0lDcK8AyHEY9Gpn1EKuGQJ4fVlB4Bkg","tlshash":"0452a6f573a6c63426ed81d6a017f81ea371b21c5404910c78ac8cdf59a5e8a70babbd","first_seen":"2024-08-19T16:06:40.943759Z","last_seen":"2026-07-27T14:06:41.1994Z","times_seen":693,"resource_available":true,"data":"LyohCiAgKiBQaG90b1N3aXBlIExpZ2h0Ym94IDUuNC40IC0gaHR0cHM6Ly9waG90b3N3aXBlLmNvbQogICogKGMpIDIwMjQgRG15dHJvIFNlbWVub3YKICAqLwpmdW5jdGlvbiB0KHQsaSxzKXtjb25zdCBoPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoaSk7cmV0dXJuIHQmJihoLmNsYXNzTmFtZT10KSxzJiZzLmFwcGVuZENoaWxkKGgpLGh9ZnVuY3Rpb24gaSh0LGkscyl7dC5zdHlsZS53aWR0aD0ibnVtYmVyIj09dHlwZW9mIGk/YCR7aX1weGA6aSx0LnN0eWxlLmhlaWdodD0ibnVtYmVyIj09dHlwZW9mIHM/YCR7c31weGA6c31jb25zdCBzPSJpZGxlIixoPSJsb2FkaW5nIixlPSJsb2FkZWQiLG49ImVycm9yIjtmdW5jdGlvbiBvKHQsaSxzPWRvY3VtZW50KXtsZXQgaD1bXTtpZih0IGluc3RhbmNlb2YgRWxlbWVudCloPVt0XTtlbHNlIGlmKHQgaW5zdGFuY2VvZiBOb2RlTGlzdHx8QXJyYXkuaXNBcnJheSh0KSloPUFycmF5LmZyb20odCk7ZWxzZXtjb25zdCBlPSJzdHJpbmciPT10eXBlb2YgdD90Omk7ZSYmKGg9QXJyYXkuZnJvbShzLnF1ZXJ5U2VsZWN0b3JBbGwoZSkpKX1yZXR1cm4gaH1mdW5jdGlvbiByKCl7cmV0dXJuISghbmF2aWdhdG9yLnZlbmRvcnx8IW5hdmlnYXRvci52ZW5kb3IubWF0Y2goL2FwcGxlL2kpKX1jbGFzcyBse2NvbnN0cnVjdG9yKHQsaSl7dGhpcy50eXBlPXQsdGhpcy5kZWZhdWx0UHJldmVudGVkPSExLGkmJk9iamVjdC5hc3NpZ24odGhpcyxpKX1wcmV2ZW50RGVmYXVsdCgpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD0hMH19Y2xhc3MgYXtjb25zdHJ1Y3RvcihpLHMpe2lmKHRoaXMuZWxlbWVudD10KCJwc3dwX19pbWcgcHN3cF9faW1nLS1wbGFjZWhvbGRlciIsaT8iaW1nIjoiZGl2IixzKSxpKXtjb25zdCB0PXRoaXMuZWxlbWVudDt0LmRlY29kaW5nPSJhc3luYyIsdC5hbHQ9IiIsdC5zcmM9aSx0LnNldEF0dHJpYnV0ZSgicm9sZSIsInByZXNlbnRhdGlvbiIpfXRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiwidHJ1ZSIpfXNldERpc3BsYXllZFNpemUodCxzKXt0aGlzLmVsZW1lbnQmJigiSU1HIj09PXRoaXMuZWxlbWVudC50YWdOYW1lPyhpKHRoaXMuZWxlbWVudCwyNTAsImF1dG8iKSx0aGlzLmVsZW1lbnQuc3R5bGUudHJhbnNmb3JtT3JpZ2luPSIwIDAiLHRoaXMuZWxlbWVudC5zdHlsZS50cmFuc2Zvcm09ZnVuY3Rpb24odCxpLHMpe2xldCBoPWB0cmFuc2xhdGUzZCgke3R9cHgsJHtpfHwwfXB4LDApYDtyZXR1cm4gdm9pZCAwIT09cyYmKGgrPWAgc2NhbGUzZCgke3N9LCR7c30sMSlgKSxofSgwLDAsdC8yNTApKTppKHRoaXMuZWxlbWVudCx0LHMpKX1kZXN0cm95KCl7dmFyIHQ7bnVsbCE9PSh0PXRoaXMuZWxlbWVudCkmJnZvaWQgMCE9PXQmJnQucGFyZW50Tm9kZSYmdGhpcy5lbGVtZW50LnJlbW92ZSgpLHRoaXMuZWxlbWVudD1udWxsfX1jbGFzcyBke2NvbnN0cnVjdG9yKHQsaSxoKXt0aGlzLmluc3RhbmNlPWksdGhpcy5kYXRhPXQsdGhpcy5pbmRleD1oLHRoaXMuZWxlbWVudD12b2lkIDAsdGhpcy5wbGFjZWhvbGRlcj12b2lkIDAsdGhpcy5zbGlkZT12b2lkIDAsdGhpcy5kaXNwbGF5ZWRJbWFnZVdpZHRoPTAsdGhpcy5kaXNwbGF5ZWRJbWFnZUhlaWdodD0wLHRoaXMud2lkdGg9TnVtYmVyKHRoaXMuZGF0YS53KXx8TnVtYmVyKHRoaXMuZGF0YS53aWR0aCl8fDAsdGhpcy5oZWlnaHQ9TnVtYmVyKHRoaXMuZGF0YS5oKXx8TnVtYmVyKHRoaXMuZGF0YS5oZWlnaHQpfHwwLHRoaXMuaXNBdHRhY2hlZD0hMSx0aGlzLmhhc1NsaWRlPSExLHRoaXMuaXNEZWNvZGluZz0hMSx0aGlzLnN0YXRlPXMsdGhpcy5kYXRhLnR5cGU/dGhpcy50eXBlPXRoaXMuZGF0YS50eXBlOnRoaXMuZGF0YS5zcmM/dGhpcy50eXBlPSJpbWFnZSI6dGhpcy50eXBlPSJodG1sIix0aGlzLmluc3RhbmNlLmRpc3BhdGNoKCJjb250ZW50SW5pdCIse2NvbnRlbnQ6dGhpc30pfXJlbW92ZVBsYWNlaG9sZGVyKCl7dGhpcy5wbGFjZWhvbGRlciYmIXRoaXMua2VlcFBsYWNlaG9sZGVyKCkmJnNldFRpbWVvdXQoKCgpPT57dGhpcy5wbGFjZWhvbGRlciYmKHRoaXMucGxhY2Vob2xkZXIuZGVzdHJveSgpLHRoaXMucGxhY2Vob2xkZXI9dm9pZCAwKX0pLDFlMyl9bG9hZChpLHMpe2lmKHRoaXMuc2xpZGUmJnRoaXMudXNlUGxhY2Vob2xkZXIoKSlpZih0aGlzLnBsYWNlaG9sZGVyKXtjb25zdCB0PXRoaXMucGxhY2Vob2xkZXIuZWxlbWVudDt0JiYhdC5wYXJlbnRFbGVtZW50JiZ0aGlzLnNsaWRlLmNvbnRhaW5lci5wcmVwZW5kKHQpfWVsc2V7Y29uc3QgdD10aGlzLmluc3RhbmNlLmFwcGx5RmlsdGVycygicGxhY2Vob2xkZXJTcmMiLCEoIXRoaXMuZGF0YS5tc3JjfHwhdGhpcy5zbGlkZS5pc0ZpcnN0U2xpZGUpJiZ0aGlzLmRhdGEubXNyYyx0aGlzKTt0aGlzLnBsYWNlaG9sZGVyPW5ldyBhKHQsdGhpcy5zbGlkZS5jb250YWluZXIpfXRoaXMuZWxlbWVudCYmIXN8fHRoaXMuaW5zdGFuY2UuZGlzcGF0Y2goImNvbnRlbnRMb2FkIix7Y29udGVudDp0aGlzLGlzTGF6eTppfSkuZGVmYXVsdFByZXZlbnRlZHx8KHRoaXMuaXNJbWFnZUNvbnRlbnQoKT8odGhpcy5lbGVtZW50PXQoInBzd3BfX2ltZyIsImltZyIpLHRoaXMuZGlzcGxheWVkSW1hZ2VXaWR0aCYmdGhpcy5sb2FkSW1hZ2UoaSkpOih0aGlzLmVsZW1lbnQ9dCgicHN3cF9fY29udGVudCIsImRpdiIpLHRoaXMuZWxlbWVudC5pbm5lckhUTUw9dGhpcy5kYXRhLmh0bWx8fCIiKSxzJiZ0aGlzLnNsaWRlJiZ0aGlzLnNsaWRlLnVwZGF0ZUNvbnRlbnRTaXplKCEwKSl9bG9hZEltYWdlKHQpe3ZhciBpLHM7aWYoIXRoaXMuaXNJbWFnZUNvbnRlbnQoKXx8IXRoaXMuZWxlbWVudHx8dGhpcy5pbnN0YW5jZS5kaXNwYXRjaCgiY29udGVudExvYWRJbWFnZSIse2NvbnRlbnQ6dGhpcyxpc0xhenk6dH0pLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuO2NvbnN0IGU9dGhpcy5lbGVtZW50O3RoaXMudXBkYXRlU3Jjc2V0U2l6ZXMoKSx0aGlzLmRhdGEuc3Jjc2V0JiYoZS5zcmNzZXQ9dGhpcy5kYXRhLnNyY3NldCksZS5zcmM9bnVsbCE9PShpPXRoaXMuZGF0YS5zcmMpJiZ2b2lkIDAhPT1pP2k6IiIsZS5hbHQ9bnVsbCE9PShzPXRoaXMuZGF0YS5hbHQpJiZ2b2lkIDAhPT1zP3M6IiIsdGhpcy5zdGF0ZT1oLGUuY29tcGxldGU/dGhpcy5vbkxvYWRlZCgpOihlLm9ubG9hZD0oKT0+e3RoaXMub25Mb2FkZWQoKX0sZS5vbmVycm9yPSgpPT57dGhpcy5vbkVycm9yKCl9KX1zZXRTbGlkZSh0KXt0aGlzLnNsaWRlPXQsdGhpcy5oYXNTbGlkZT0hMCx0aGlzLmluc3RhbmNlPXQucHN3cH1vbkxvYWRlZCgpe3RoaXMuc3RhdGU9ZSx0aGlzLnNsaWRlJiZ0aGlzLmVsZW1lbnQmJih0aGlzLmluc3RhbmNlLmRpc3BhdGNoKCJsb2FkQ29tcGxldGUiLHtzbGlkZTp0aGlzLnNsaWRlLGNvbnRlbnQ6dGhpc30pLHRoaXMuc2xpZGUuaXNBY3RpdmUmJnRoaXMuc2xpZGUuaGVhdnlBcHBlbmRlZCYmIXRoaXMuZWxlbWVudC5wYXJlbnROb2RlJiYodGhpcy5hcHBlbmQoKSx0aGlzLnNsaWRlLnVwZGF0ZUNvbnRlbnRTaXplKCEwKSksdGhpcy5zdGF0ZSE9PWUmJnRoaXMuc3RhdGUhPT1ufHx0aGlzLnJlbW92ZVBsYWNlaG9sZGVyKCkpfW9uRXJyb3IoKXt0aGlzLnN0YXRlPW4sdGhpcy5zbGlkZSYmKHRoaXMuZGlzcGxheUVycm9yKCksdGhpcy5pbnN0YW5jZS5kaXNwYXRjaCgibG9hZENvbXBsZXRlIix7c2xpZGU6dGhpcy5zbGlkZSxpc0Vycm9yOiEwLGNvbnRlbnQ6dGhpc30pLHRoaXMuaW5zdGFuY2UuZGlzcGF0Y2goImxvYWRFcnJvciIse3NsaWRlOnRoaXMuc2xpZGUsY29udGVudDp0aGlzfSkpfWlzTG9hZGluZygpe3JldHVybiB0aGlzLmluc3RhbmNlLmFwcGx5RmlsdGVycygiaXNDb250ZW50TG9hZGluZyIsdGhpcy5zdGF0ZT09PWgsdGhpcyl9aXNFcnJvcigpe3JldHVybiB0aGlzLnN0YXRlPT09bn1pc0ltYWdlQ29udGVudCgpe3JldHVybiJpbWFnZSI9PT10aGlzLnR5cGV9c2V0RGlzcGxheWVkU2l6ZSh0LHMpe2lmKHRoaXMuZWxlbWVudCYmKHRoaXMucGxhY2Vob2xkZXImJnRoaXMucGxhY2Vob2xkZXIuc2V0RGlzcGxheWVkU2l6ZSh0LHMpLCF0aGlzLmluc3RhbmNlLmRpc3BhdGNoKCJjb250ZW50UmVzaXplIix7Y29udGVudDp0aGlzLHdpZHRoOnQsaGVpZ2h0OnN9KS5kZWZhdWx0UHJldmVudGVkJiYoaSh0aGlzLmVsZW1lbnQsdCxzKSx0aGlzLmlzSW1hZ2VDb250ZW50KCkmJiF0aGlzLmlzRXJyb3IoKSkpKXtjb25zdCBpPSF0aGlzLmRpc3BsYXllZEltYWdlV2lkdGgmJnQ7dGhpcy5kaXNwbGF5ZWRJbWFnZVdpZHRoPXQsdGhpcy5kaXNwbGF5ZWRJbWFnZUhlaWdodD1zLGk/dGhpcy5sb2FkSW1hZ2UoITEpOnRoaXMudXBkYXRlU3Jjc2V0U2l6ZXMoKSx0aGlzLnNsaWRlJiZ0aGlzLmluc3RhbmNlLmRpc3BhdGNoKCJpbWFnZVNpemVDaGFuZ2UiLHtzbGlkZTp0aGlzLnNsaWRlLHdpZHRoOnQsaGVpZ2h0OnMsY29udGVudDp0aGlzfSl9fWlzWm9vbWFibGUoKXtyZXR1cm4gdGhpcy5pbnN0YW5jZS5hcHBseUZpbHRlcnMoImlzQ29udGVudFpvb21hYmxlIix0aGlzLmlzSW1hZ2VDb250ZW50KCkmJnRoaXMuc3RhdGUhPT1uLHRoaXMpfXVwZGF0ZVNyY3NldFNpemVzKCl7aWYoIXRoaXMuaXNJbWFnZUNvbnRlbnQoKXx8IXRoaXMuZWxlbWVudHx8IXRoaXMuZGF0YS5zcmNzZXQpcmV0dXJuO2NvbnN0IHQ9dGhpcy5lbGVtZW50LGk9dGhpcy5pbnN0YW5jZS5hcHBseUZpbHRlcnMoInNyY3NldFNpemVzV2lkdGgiLHRoaXMuZGlzcGxheWVkSW1hZ2VXaWR0aCx0aGlzKTsoIXQuZGF0YXNldC5sYXJnZXN0VXNlZFNpemV8fGk+cGFyc2VJbnQodC5kYXRhc2V0Lmxhcmdlc3RVc2VkU2l6ZSwxMCkpJiYodC5zaXplcz1pKyJweCIsdC5kYXRhc2V0Lmxhcmdlc3RVc2VkU2l6ZT1TdHJpbmcoaSkpfXVzZVBsYWNlaG9sZGVyKCl7cmV0dXJuIHRoaXMuaW5zdGFuY2UuYXBwbHlGaWx0ZXJzKCJ1c2VDb250ZW50UGxhY2Vob2xkZXIiLHRoaXMuaXNJbWFnZUNvbnRlbnQoKSx0aGlzKX1sYXp5TG9hZCgpe3RoaXMuaW5zdGFuY2UuZGlzcGF0Y2goImNvbnRlbnRMYXp5TG9hZCIse2NvbnRlbnQ6dGhpc30pLmRlZmF1bHRQcmV2ZW50ZWR8fHRoaXMubG9hZCghMCl9a2VlcFBsYWNlaG9sZGVyKCl7cmV0dXJuIHRoaXMuaW5zdGFuY2UuYXBwbHlGaWx0ZXJzKCJpc0tlZXBpbmdQbGFjZWhvbGRlciIsdGhpcy5pc0xvYWRpbmcoKSx0aGlzKX1kZXN0cm95KCl7dGhpcy5oYXNTbGlkZT0hMSx0aGlzLnNsaWRlPXZvaWQgMCx0aGlzLmluc3RhbmNlLmRpc3BhdGNoKCJjb250ZW50RGVzdHJveSIse2NvbnRlbnQ6dGhpc30pLmRlZmF1bHRQcmV2ZW50ZWR8fCh0aGlzLnJlbW92ZSgpLHRoaXMucGxhY2Vob2xkZXImJih0aGlzLnBsYWNlaG9sZGVyLmRlc3Ryb3koKSx0aGlzLnBsYWNlaG9sZGVyPXZvaWQgMCksdGhpcy5pc0ltYWdlQ29udGVudCgpJiZ0aGlzLmVsZW1lbnQmJih0aGlzLmVsZW1lbnQub25sb2FkPW51bGwsdGhpcy5lbGVtZW50Lm9uZXJyb3I9bnVsbCx0aGlzLmVsZW1lbnQ9dm9pZCAwKSl9ZGlzcGxheUVycm9yKCl7aWYodGhpcy5zbGlkZSl7dmFyIGkscztsZXQgaD10KCJwc3dwX19lcnJvci1tc2ciLCJkaXYiKTtoLmlubmVyVGV4dD1udWxsIT09KGk9bnVsbD09PShzPXRoaXMuaW5zdGFuY2Uub3B0aW9ucyl8fHZvaWQgMD09PXM/dm9pZCAwOnMuZXJyb3JNc2cpJiZ2b2lkIDAhPT1pP2k6IiIsaD10aGlzLmluc3RhbmNlLmFwcGx5RmlsdGVycygiY29udGVudEVycm9yRWxlbWVudCIsaCx0aGlzKSx0aGlzLmVsZW1lbnQ9dCgicHN3cF9fY29udGVudCBwc3dwX19lcnJvci1tc2ctY29udGFpbmVyIiwiZGl2IiksdGhpcy5lbGVtZW50LmFwcGVuZENoaWxkKGgpLHRoaXMuc2xpZGUuY29udGFpbmVyLmlubmVyVGV4dD0iIix0aGlzLnNsaWRlLmNvbnRhaW5lci5hcHBlbmRDaGlsZCh0aGlzLmVsZW1lbnQpLHRoaXMuc2xpZGUudXBkYXRlQ29udGVudFNpemUoITApLHRoaXMucmVtb3ZlUGxhY2Vob2xkZXIoKX19YXBwZW5kKCl7aWYodGhpcy5pc0F0dGFjaGVkfHwhdGhpcy5lbGVtZW50KXJldHVybjtpZih0aGlzLmlzQXR0YWNoZWQ9ITAsdGhpcy5zdGF0ZT09PW4pcmV0dXJuIHZvaWQgdGhpcy5kaXNwbGF5RXJyb3IoKTtpZih0aGlzLmluc3RhbmNlLmRpc3BhdGNoKCJjb250ZW50QXBwZW5kIix7Y29udGVudDp0aGlzfSkuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47Y29uc3QgdD0iZGVjb2RlImluIHRoaXMuZWxlbWVudDt0aGlzLmlzSW1hZ2VDb250ZW50KCk/dCYmdGhpcy5zbGlkZSYmKCF0aGlzLnNsaWRlLmlzQWN0aXZlfHxyKCkpPyh0aGlzLmlzRGVjb2Rpbmc9ITAsdGhpcy5lbGVtZW50LmRlY29kZSgpLmNhdGNoKCgoKT0+e30pKS5maW5hbGx5KCgoKT0+e3RoaXMuaXNEZWNvZGluZz0hMSx0aGlzLmFwcGVuZEltYWdlKCl9KSkpOnRoaXMuYXBwZW5kSW1hZ2UoKTp0aGlzLnNsaWRlJiYhdGhpcy5lbGVtZW50LnBhcmVudE5vZGUmJnRoaXMuc2xpZGUuY29udGFpbmVyLmFwcGVuZENoaWxkKHRoaXMuZWxlbWVudCl9YWN0aXZhdGUoKXshdGhpcy5pbnN0YW5jZS5kaXNwYXRjaCgiY29udGVudEFjdGl2YXRlIix7Y29udGVudDp0aGlzfSkuZGVmYXVsdFByZXZlbnRlZCYmdGhpcy5zbGlkZSYmKHRoaXMuaXNJbWFnZUNvbnRlbnQoKSYmdGhpcy5pc0RlY29kaW5nJiYhcigpP3RoaXMuYXBwZW5kSW1hZ2UoKTp0aGlzLmlzRXJyb3IoKSYmdGhpcy5sb2FkKCExLCEwKSx0aGlzLnNsaWRlLmhvbGRlckVsZW1lbnQmJnRoaXMuc2xpZGUuaG9sZGVyRWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiwiZmFsc2UiKSl9ZGVhY3RpdmF0ZSgpe3RoaXMuaW5zdGFuY2UuZGlzcGF0Y2goImNvbnRlbnREZWFjdGl2YXRlIix7Y29udGVudDp0aGlzfSksdGhpcy5zbGlkZSYmdGhpcy5zbGlkZS5ob2xkZXJFbGVtZW50JiZ0aGlzLnNsaWRlLmhvbGRlckVsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsInRydWUiKX1yZW1vdmUoKXt0aGlzLmlzQXR0YWNoZWQ9ITEsdGhpcy5pbnN0YW5jZS5kaXNwYXRjaCgiY29udGVudFJlbW92ZSIse2NvbnRlbnQ6dGhpc30pLmRlZmF1bHRQcmV2ZW50ZWR8fCh0aGlzLmVsZW1lbnQmJnRoaXMuZWxlbWVudC5wYXJlbnROb2RlJiZ0aGlzLmVsZW1lbnQucmVtb3ZlKCksdGhpcy5wbGFjZWhvbGRlciYmdGhpcy5wbGFjZWhvbGRlci5lbGVtZW50JiZ0aGlzLnBsYWNlaG9sZGVyLmVsZW1lbnQucmVtb3ZlKCkpfWFwcGVuZEltYWdlKCl7dGhpcy5pc0F0dGFjaGVkJiYodGhpcy5pbnN0YW5jZS5kaXNwYXRjaCgiY29udGVudEFwcGVuZEltYWdlIix7Y29udGVudDp0aGlzfSkuZGVmYXVsdFByZXZlbnRlZHx8KHRoaXMuc2xpZGUmJnRoaXMuZWxlbWVudCYmIXRoaXMuZWxlbWVudC5wYXJlbnROb2RlJiZ0aGlzLnNsaWRlLmNvbnRhaW5lci5hcHBlbmRDaGlsZCh0aGlzLmVsZW1lbnQpLHRoaXMuc3RhdGUhPT1lJiZ0aGlzLnN0YXRlIT09bnx8dGhpcy5yZW1vdmVQbGFjZWhvbGRlcigpKSl9fWZ1bmN0aW9uIGModCxpLHMsaCxlKXtsZXQgbj0wO2lmKGkucGFkZGluZ0ZuKW49aS5wYWRkaW5nRm4ocyxoLGUpW3RdO2Vsc2UgaWYoaS5wYWRkaW5nKW49aS5wYWRkaW5nW3RdO2Vsc2V7Y29uc3Qgcz0icGFkZGluZyIrdFswXS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoMSk7aVtzXSYmKG49aVtzXSl9cmV0dXJuIE51bWJlcihuKXx8MH1jbGFzcyB1e2NvbnN0cnVjdG9yKHQsaSxzLGgpe3RoaXMucHN3cD1oLHRoaXMub3B0aW9ucz10LHRoaXMuaXRlbURhdGE9aSx0aGlzLmluZGV4PXMsdGhpcy5wYW5BcmVhU2l6ZT1udWxsLHRoaXMuZWxlbWVudFNpemU9bnVsbCx0aGlzLmZpdD0xLHRoaXMuZmlsbD0xLHRoaXMudkZpbGw9MSx0aGlzLmluaXRpYWw9MSx0aGlzLnNlY29uZGFyeT0xLHRoaXMubWF4PTEsdGhpcy5taW49MX11cGRhdGUodCxpLHMpe2NvbnN0IGg9e3g6dCx5Oml9O3RoaXMuZWxlbWVudFNpemU9aCx0aGlzLnBhbkFyZWFTaXplPXM7Y29uc3QgZT1zLngvaC54LG49cy55L2gueTt0aGlzLmZpdD1NYXRoLm1pbigxLGU8bj9lOm4pLHRoaXMuZmlsbD1NYXRoLm1pbigxLGU+bj9lOm4pLHRoaXMudkZpbGw9TWF0aC5taW4oMSxuKSx0aGlzLmluaXRpYWw9dGhpcy50KCksdGhpcy5zZWNvbmRhcnk9dGhpcy5pKCksdGhpcy5tYXg9TWF0aC5tYXgodGhpcy5pbml0aWFsLHRoaXMuc2Vjb25kYXJ5LHRoaXMubygpKSx0aGlzLm1pbj1NYXRoLm1pbih0aGlzLmZpdCx0aGlzLmluaXRpYWwsdGhpcy5zZWNvbmRhcnkpLHRoaXMucHN3cCYmdGhpcy5wc3dwLmRpc3BhdGNoKCJ6b29tTGV2ZWxzVXBkYXRlIix7em9vbUxldmVsczp0aGlzLHNsaWRlRGF0YTp0aGlzLml0ZW1EYXRhfSl9bCh0KXtjb25zdCBpPXQrIlpvb21MZXZlbCIscz10aGlzLm9wdGlvbnNbaV07aWYocylyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygcz9zKHRoaXMpOiJmaWxsIj09PXM/dGhpcy5maWxsOiJmaXQiPT09cz90aGlzLmZpdDpOdW1iZXIocyl9aSgpe2xldCB0PXRoaXMubCgic2Vjb25kYXJ5Iik7cmV0dXJuIHR8fCh0PU1hdGgubWluKDEsMyp0aGlzLmZpdCksdGhpcy5lbGVtZW50U2l6ZSYmdCp0aGlzLmVsZW1lbnRTaXplLng+NGUzJiYodD00ZTMvdGhpcy5lbGVtZW50U2l6ZS54KSx0KX10KCl7cmV0dXJuIHRoaXMubCgiaW5pdGlhbCIpfHx0aGlzLmZpdH1vKCl7cmV0dXJuIHRoaXMubCgibWF4Iil8fE1hdGgubWF4KDEsNCp0aGlzLmZpdCl9fWZ1bmN0aW9uIHAodCxpLHMpe2NvbnN0IGg9aS5jcmVhdGVDb250ZW50RnJvbURhdGEodCxzKTtsZXQgZTtjb25zdHtvcHRpb25zOm59PWk7aWYobil7bGV0IG87ZT1uZXcgdShuLHQsLTEpLG89aS5wc3dwP2kucHN3cC52aWV3cG9ydFNpemU6ZnVuY3Rpb24odCxpKXtpZih0LmdldFZpZXdwb3J0U2l6ZUZuKXtjb25zdCBzPXQuZ2V0Vmlld3BvcnRTaXplRm4odCxpKTtpZihzKXJldHVybiBzfXJldHVybnt4OmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCx5OndpbmRvdy5pbm5lckhlaWdodH19KG4saSk7Y29uc3Qgcj1mdW5jdGlvbih0LGkscyxoKXtyZXR1cm57eDppLngtYygibGVmdCIsdCxpLHMsaCktYygicmlnaHQiLHQsaSxzLGgpLHk6aS55LWMoInRvcCIsdCxpLHMsaCktYygiYm90dG9tIix0LGkscyxoKX19KG4sbyx0LHMpO2UudXBkYXRlKGgud2lkdGgsaC5oZWlnaHQscil9cmV0dXJuIGgubGF6eUxvYWQoKSxlJiZoLnNldERpc3BsYXllZFNpemUoTWF0aC5jZWlsKGgud2lkdGgqZS5pbml0aWFsKSxNYXRoLmNlaWwoaC5oZWlnaHQqZS5pbml0aWFsKSksaH1jbGFzcyB2IGV4dGVuZHMgY2xhc3MgZXh0ZW5kcyBjbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMudT17fSx0aGlzLnA9e30sdGhpcy5wc3dwPXZvaWQgMCx0aGlzLm9wdGlvbnM9dm9pZCAwfWFkZEZpbHRlcih0LGkscz0xMDApe3ZhciBoLGUsbjt0aGlzLnBbdF18fCh0aGlzLnBbdF09W10pLG51bGw9PT0oaD10aGlzLnBbdF0pfHx2b2lkIDA9PT1ofHxoLnB1c2goe2ZuOmkscHJpb3JpdHk6c30pLG51bGw9PT0oZT10aGlzLnBbdF0pfHx2b2lkIDA9PT1lfHxlLnNvcnQoKCh0LGkpPT50LnByaW9yaXR5LWkucHJpb3JpdHkpKSxudWxsPT09KG49dGhpcy5wc3dwKXx8dm9pZCAwPT09bnx8bi5hZGRGaWx0ZXIodCxpLHMpfXJlbW92ZUZpbHRlcih0LGkpe3RoaXMucFt0XSYmKHRoaXMucFt0XT10aGlzLnBbdF0uZmlsdGVyKCh0PT50LmZuIT09aSkpKSx0aGlzLnBzd3AmJnRoaXMucHN3cC5yZW1vdmVGaWx0ZXIodCxpKX1hcHBseUZpbHRlcnModCwuLi5pKXt2YXIgcztyZXR1cm4gbnVsbD09PShzPXRoaXMucFt0XSl8fHZvaWQgMD09PXN8fHMuZm9yRWFjaCgodD0+e2lbMF09dC5mbi5hcHBseSh0aGlzLGkpfSkpLGlbMF19b24odCxpKXt2YXIgcyxoO3RoaXMudVt0XXx8KHRoaXMudVt0XT1bXSksbnVsbD09PShzPXRoaXMudVt0XSl8fHZvaWQgMD09PXN8fHMucHVzaChpKSxudWxsPT09KGg9dGhpcy5wc3dwKXx8dm9pZCAwPT09aHx8aC5vbih0LGkpfW9mZih0LGkpe3ZhciBzO3RoaXMudVt0XSYmKHRoaXMudVt0XT10aGlzLnVbdF0uZmlsdGVyKCh0PT5pIT09dCkpKSxudWxsPT09KHM9dGhpcy5wc3dwKXx8dm9pZCAwPT09c3x8cy5vZmYodCxpKX1kaXNwYXRjaCh0LGkpe3ZhciBzO2lmKHRoaXMucHN3cClyZXR1cm4gdGhpcy5wc3dwLmRpc3BhdGNoKHQsaSk7Y29uc3QgaD1uZXcgbCh0LGkpO3JldHVybiBudWxsPT09KHM9dGhpcy51W3RdKXx8dm9pZCAwPT09c3x8cy5mb3JFYWNoKCh0PT57dC5jYWxsKHRoaXMsaCl9KSksaH19e2dldE51bUl0ZW1zKCl7dmFyIHQ7bGV0IGk9MDtjb25zdCBzPW51bGw9PT0odD10aGlzLm9wdGlvbnMpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LmRhdGFTb3VyY2U7cyYmImxlbmd0aCJpbiBzP2k9cy5sZW5ndGg6cyYmImdhbGxlcnkiaW4gcyYmKHMuaXRlbXN8fChzLml0ZW1zPXRoaXMudihzLmdhbGxlcnkpKSxzLml0ZW1zJiYoaT1zLml0ZW1zLmxlbmd0aCkpO2NvbnN0IGg9dGhpcy5kaXNwYXRjaCgibnVtSXRlbXMiLHtkYXRhU291cmNlOnMsbnVtSXRlbXM6aX0pO3JldHVybiB0aGlzLmFwcGx5RmlsdGVycygibnVtSXRlbXMiLGgubnVtSXRlbXMscyl9Y3JlYXRlQ29udGVudEZyb21EYXRhKHQsaSl7cmV0dXJuIG5ldyBkKHQsdGhpcyxpKX1nZXRJdGVtRGF0YSh0KXt2YXIgaTtjb25zdCBzPW51bGw9PT0oaT10aGlzLm9wdGlvbnMpfHx2b2lkIDA9PT1pP3ZvaWQgMDppLmRhdGFTb3VyY2U7bGV0IGg9e307QXJyYXkuaXNBcnJheShzKT9oPXNbdF06cyYmImdhbGxlcnkiaW4gcyYmKHMuaXRlbXN8fChzLml0ZW1zPXRoaXMudihzLmdhbGxlcnkpKSxoPXMuaXRlbXNbdF0pO2xldCBlPWg7ZSBpbnN0YW5jZW9mIEVsZW1lbnQmJihlPXRoaXMubShlKSk7Y29uc3Qgbj10aGlzLmRpc3BhdGNoKCJpdGVtRGF0YSIse2l0ZW1EYXRhOmV8fHt9LGluZGV4OnR9KTtyZXR1cm4gdGhpcy5hcHBseUZpbHRlcnMoIml0ZW1EYXRhIixuLml0ZW1EYXRhLHQpfXYodCl7dmFyIGkscztyZXR1cm4gbnVsbCE9PShpPXRoaXMub3B0aW9ucykmJnZvaWQgMCE9PWkmJmkuY2hpbGRyZW58fG51bGwhPT0ocz10aGlzLm9wdGlvbnMpJiZ2b2lkIDAhPT1zJiZzLmNoaWxkU2VsZWN0b3I/byh0aGlzLm9wdGlvbnMuY2hpbGRyZW4sdGhpcy5vcHRpb25zLmNoaWxkU2VsZWN0b3IsdCl8fFtdOlt0XX1tKHQpe2NvbnN0IGk9e2VsZW1lbnQ6dH0scz0iQSI9PT10LnRhZ05hbWU/dDp0LnF1ZXJ5U2VsZWN0b3IoImEiKTtpZihzKXtpLnNyYz1zLmRhdGFzZXQucHN3cFNyY3x8cy5ocmVmLHMuZGF0YXNldC5wc3dwU3Jjc2V0JiYoaS5zcmNzZXQ9cy5kYXRhc2V0LnBzd3BTcmNzZXQpLGkud2lkdGg9cy5kYXRhc2V0LnBzd3BXaWR0aD9wYXJzZUludChzLmRhdGFzZXQucHN3cFdpZHRoLDEwKTowLGkuaGVpZ2h0PXMuZGF0YXNldC5wc3dwSGVpZ2h0P3BhcnNlSW50KHMuZGF0YXNldC5wc3dwSGVpZ2h0LDEwKTowLGkudz1pLndpZHRoLGkuaD1pLmhlaWdodCxzLmRhdGFzZXQucHN3cFR5cGUmJihpLnR5cGU9cy5kYXRhc2V0LnBzd3BUeXBlKTtjb25zdCBlPXQucXVlcnlTZWxlY3RvcigiaW1nIik7dmFyIGg7aWYoZSlpLm1zcmM9ZS5jdXJyZW50U3JjfHxlLnNyYyxpLmFsdD1udWxsIT09KGg9ZS5nZXRBdHRyaWJ1dGUoImFsdCIpKSYmdm9pZCAwIT09aD9oOiIiOyhzLmRhdGFzZXQucHN3cENyb3BwZWR8fHMuZGF0YXNldC5jcm9wcGVkKSYmKGkudGh1bWJDcm9wcGVkPSEwKX1yZXR1cm4gdGhpcy5hcHBseUZpbHRlcnMoImRvbUl0ZW1EYXRhIixpLHQscyl9bGF6eUxvYWREYXRhKHQsaSl7cmV0dXJuIHAodCx0aGlzLGkpfX17Y29uc3RydWN0b3IodCl7c3VwZXIoKSx0aGlzLm9wdGlvbnM9dHx8e30sdGhpcy5nPTAsdGhpcy5zaG91bGRPcGVuPSExLHRoaXMuXz12b2lkIDAsdGhpcy5vblRodW1ibmFpbHNDbGljaz10aGlzLm9uVGh1bWJuYWlsc0NsaWNrLmJpbmQodGhpcyl9aW5pdCgpe28odGhpcy5vcHRpb25zLmdhbGxlcnksdGhpcy5vcHRpb25zLmdhbGxlcnlTZWxlY3RvcikuZm9yRWFjaCgodD0+e3QuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMub25UaHVtYm5haWxzQ2xpY2ssITEpfSkpfW9uVGh1bWJuYWlsc0NsaWNrKHQpe2lmKGZ1bmN0aW9uKHQpe3JldHVybiJidXR0b24iaW4gdCYmMT09PXQuYnV0dG9ufHx0LmN0cmxLZXl8fHQubWV0YUtleXx8dC5hbHRLZXl8fHQuc2hpZnRLZXl9KHQpfHx3aW5kb3cucHN3cClyZXR1cm47bGV0IGk9e3g6dC5jbGllbnRYLHk6dC5jbGllbnRZfTtpLnh8fGkueXx8KGk9bnVsbCk7bGV0IHM9dGhpcy5nZXRDbGlja2VkSW5kZXgodCk7cz10aGlzLmFwcGx5RmlsdGVycygiY2xpY2tlZEluZGV4IixzLHQsdGhpcyk7Y29uc3QgaD17Z2FsbGVyeTp0LmN1cnJlbnRUYXJnZXR9O3M+PTAmJih0LnByZXZlbnREZWZhdWx0KCksdGhpcy5sb2FkQW5kT3BlbihzLGgsaSkpfWdldENsaWNrZWRJbmRleCh0KXtpZih0aGlzLm9wdGlvbnMuZ2V0Q2xpY2tlZEluZGV4Rm4pcmV0dXJuIHRoaXMub3B0aW9ucy5nZXRDbGlja2VkSW5kZXhGbi5jYWxsKHRoaXMsdCk7Y29uc3QgaT10LnRhcmdldCxzPW8odGhpcy5vcHRpb25zLmNoaWxkcmVuLHRoaXMub3B0aW9ucy5jaGlsZFNlbGVjdG9yLHQuY3VycmVudFRhcmdldCkuZmluZEluZGV4KCh0PT50PT09aXx8dC5jb250YWlucyhpKSkpO3JldHVybi0xIT09cz9zOnRoaXMub3B0aW9ucy5jaGlsZHJlbnx8dGhpcy5vcHRpb25zLmNoaWxkU2VsZWN0b3I/LTE6MH1sb2FkQW5kT3Blbih0LGkscyl7aWYod2luZG93LnBzd3B8fCF0aGlzLm9wdGlvbnMpcmV0dXJuITE7aWYoIWkmJnRoaXMub3B0aW9ucy5nYWxsZXJ5JiZ0aGlzLm9wdGlvbnMuY2hpbGRyZW4pe2NvbnN0IHQ9byh0aGlzLm9wdGlvbnMuZ2FsbGVyeSk7dFswXSYmKGk9e2dhbGxlcnk6dFswXX0pfXJldHVybiB0aGlzLm9wdGlvbnMuaW5kZXg9dCx0aGlzLm9wdGlvbnMuaW5pdGlhbFBvaW50ZXJQb3M9cyx0aGlzLnNob3VsZE9wZW49ITAsdGhpcy5wcmVsb2FkKHQsaSksITB9cHJlbG9hZCh0LGkpe2NvbnN0e29wdGlvbnM6c309dGhpcztpJiYocy5kYXRhU291cmNlPWkpO2NvbnN0IGg9W10sZT10eXBlb2Ygcy5wc3dwTW9kdWxlO2lmKCJmdW5jdGlvbiI9PXR5cGVvZihuPXMucHN3cE1vZHVsZSkmJm4ucHJvdG90eXBlJiZuLnByb3RvdHlwZS5nb1RvKWgucHVzaChQcm9taXNlLnJlc29sdmUocy5wc3dwTW9kdWxlKSk7ZWxzZXtpZigic3RyaW5nIj09PWUpdGhyb3cgbmV3IEVycm9yKCJwc3dwTW9kdWxlIGFzIHN0cmluZyBpcyBubyBsb25nZXIgc3VwcG9ydGVkIik7aWYoImZ1bmN0aW9uIiE9PWUpdGhyb3cgbmV3IEVycm9yKCJwc3dwTW9kdWxlIGlzIG5vdCB2YWxpZCIpO2gucHVzaChzLnBzd3BNb2R1bGUoKSl9dmFyIG47ImZ1bmN0aW9uIj09dHlwZW9mIHMub3BlblByb21pc2UmJmgucHVzaChzLm9wZW5Qcm9taXNlKCkpLCExIT09cy5wcmVsb2FkRmlyc3RTbGlkZSYmdD49MCYmKHRoaXMuXz1mdW5jdGlvbih0LGkpe2NvbnN0IHM9aS5nZXRJdGVtRGF0YSh0KTtpZighaS5kaXNwYXRjaCgibGF6eUxvYWRTbGlkZSIse2luZGV4OnQsaXRlbURhdGE6c30pLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuIHAocyxpLHQpfSh0LHRoaXMpKTtjb25zdCBvPSsrdGhpcy5nO1Byb21pc2UuYWxsKGgpLnRoZW4oKHQ9PntpZih0aGlzLnNob3VsZE9wZW4pe2NvbnN0IGk9dFswXTt0aGlzLkkoaSxvKX19KSl9SSh0LGkpe2lmKGkhPT10aGlzLmcmJnRoaXMuc2hvdWxkT3BlbilyZXR1cm47aWYodGhpcy5zaG91bGRPcGVuPSExLHdpbmRvdy5wc3dwKXJldHVybjtjb25zdCBzPSJvYmplY3QiPT10eXBlb2YgdD9uZXcgdC5kZWZhdWx0KHRoaXMub3B0aW9ucyk6bmV3IHQodGhpcy5vcHRpb25zKTt0aGlzLnBzd3A9cyx3aW5kb3cucHN3cD1zLE9iamVjdC5rZXlzKHRoaXMudSkuZm9yRWFjaCgodD0+e3ZhciBpO251bGw9PT0oaT10aGlzLnVbdF0pfHx2b2lkIDA9PT1pfHxpLmZvckVhY2goKGk9PntzLm9uKHQsaSl9KSl9KSksT2JqZWN0LmtleXModGhpcy5wKS5mb3JFYWNoKCh0PT57dmFyIGk7bnVsbD09PShpPXRoaXMucFt0XSl8fHZvaWQgMD09PWl8fGkuZm9yRWFjaCgoaT0+e3MuYWRkRmlsdGVyKHQsaS5mbixpLnByaW9yaXR5KX0pKX0pKSx0aGlzLl8mJihzLmNvbnRlbnRMb2FkZXIuYWRkVG9DYWNoZSh0aGlzLl8pLHRoaXMuXz12b2lkIDApLHMub24oImRlc3Ryb3kiLCgoKT0+e3RoaXMucHN3cD12b2lkIDAsZGVsZXRlIHdpbmRvdy5wc3dwfSkpLHMuaW5pdCgpfWRlc3Ryb3koKXt2YXIgdDtudWxsPT09KHQ9dGhpcy5wc3dwKXx8dm9pZCAwPT09dHx8dC5kZXN0cm95KCksdGhpcy5zaG91bGRPcGVuPSExLHRoaXMudT17fSxvKHRoaXMub3B0aW9ucy5nYWxsZXJ5LHRoaXMub3B0aW9ucy5nYWxsZXJ5U2VsZWN0b3IpLmZvckVhY2goKHQ9Pnt0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLm9uVGh1bWJuYWlsc0NsaWNrLCExKX0pKX19ZXhwb3J0e3YgYXMgZGVmYXVsdH07Cg=="}},"time_used":38,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":38,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"dhlexpress.bg","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"dhlexpress.bg","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"cdn.matomo.cloud/dhlexpressbg.matomo.cloud/matomo.js","fqdn":"cdn.matomo.cloud","domain":"matomo.cloud","tld":"cloud"},"ip":{"addr":"3.167.2.128","port":443,"asn":0,"as":"","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.314Z","timestamp":1785161167314,"http_version":"HTTP/2","security_state":"","security_info":null,"request":{"raw":"GET /dhlexpressbg.matomo.cloud/matomo.js HTTP/1.1\r\nHost: cdn.matomo.cloud\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 404 \r\nserver: CloudFront\r\ncontent-type: text/html\r\ncontent-length: 0\r\ndate: Mon, 27 Jul 2026 12:00:39 GMT\r\nx-amz-replication-status: COMPLETED\r\nlast-modified: Thu, 02 Nov 2023 02:17:11 GMT\r\netag: \"d41d8cd98f00b204e9800998ecf8427e\"\r\nx-amz-version-id: x8CUW72Cdy4wRBv1lXTNc2XlWFvGGyiM\r\naccept-ranges: bytes\r\nx-cache: Error from cloudfront\r\nvia: 1.1 36817f2624d87ea26a28cf9e3afd2402.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: OSL50-P2\r\nalt-svc: h3=\":443\"; ma=86400\r\nx-amz-cf-id: oyzq26oxkDyVazJVwUqRzfgG9jLT4UTa4JNQqte2vBQi3sJEoSR6ug==\r\nage: 7528\r\nstrict-transport-security: max-age=31536000\r\ncross-origin-resource-policy: cross-origin\r\nvary: Origin\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"404","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":0,"size_decoded":0,"mime_type":"text/html","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T15:44:24.156062Z","times_seen":17565629,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/scripttemplates/202510.2.0/assets/otFlat.json","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.754Z","timestamp":1785161167754,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /scripttemplates/202510.2.0/assets/otFlat.json HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/\r\nOrigin: https://dhlexpress.bg\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: application/json\r\ncontent-length: 3145\r\ncontent-encoding: gzip\r\ncontent-md5: 9lE+2pNt17NprNYQnKidvA==\r\nlast-modified: Fri, 21 Nov 2025 06:40:37 GMT\r\netag: 0x8DE28C8E1B312DA\r\nserver: cloudflare\r\nx-ms-request-id: 7a6d1b35-b01e-00d2-0a08-f82dd2000000\r\nx-ms-version: 2009-09-19\r\nx-ms-lease-status: unlocked\r\nx-ms-blob-type: BlockBlob\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding\r\naccess-control-allow-origin: *\r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\nvary: accept-encoding\r\nage: 70360\r\ncache-control: max-age=86400\r\ncf-cache-status: HIT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\ncf-ray: a21c33f27a86783d-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":"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":15345,"size_decoded":4083,"mime_type":"application/json","magic":"JSON text data","md5":"a5898ee8b5c59336dc3586e1612b963a","sha1":"52865e87ce29c41523fc31b64cc4a9991777a45f","sha256":"1e05381160d3bc508aae36ca5a6f0ade2d359ebd1f3d2a051b7c6de6b151bba7","sha512":"1657317e9239fd86ebfdd4d91faf3a7afff321bb5a9c602f4d5804e1ec291873eb3316bb40867a873a7c39697561c8bbb62e517c834340a6488255af9525e27f","ssdeep":"384:KeD0cGDjbn42OhOT85csXf1NFyNUV/OoH6iAHyPtJJAR:KeDia/i","tlshash":"376276523e104b29e1ebcb991883b5d835327d8bfd33a8dd924da3b842ed2f50d26745","first_seen":"2025-05-25T04:56:23.337501Z","last_seen":"2026-07-27T14:33:36.251213Z","times_seen":18276,"resource_available":false,"data":"CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuYW1lIjogIm90RmxhdCIsCiAgICAgICAgICAgICAgICAiaHRtbCI6ICJQR1JwZGlCcFpEMGliMjVsZEhKMWMzUXRZbUZ1Ym1WeUxYTmtheUlnWTJ4aGMzTTlJbTkwUm14aGRDSStQR1JwZGlCeWIyeGxQU0prYVdGc2IyY2lQanhrYVhZZ1kyeGhjM005SW05MExYTmtheTFqYjI1MFlXbHVaWElpUGp4a2FYWWdZMnhoYzNNOUltOTBMWE5rYXkxeWIzY2lQanhrYVhZZ2FXUTlJbTl1WlhSeWRYTjBMV2R5YjNWd0xXTnZiblJoYVc1bGNpSWdZMnhoYzNNOUltOTBMWE5rYXkxbGFXZG9kQ0J2ZEMxelpHc3RZMjlzZFcxdWN5SStQR1JwZGlCamJHRnpjejBpWW1GdWJtVnlYMnh2WjI4aVBqd3ZaR2wyUGp4a2FYWWdhV1E5SW05dVpYUnlkWE4wTFhCdmJHbGplU0krUEdneUlHbGtQU0p2Ym1WMGNuVnpkQzF3YjJ4cFkza3RkR2wwYkdVaVBsUnBkR3hsUEM5b01qNDhaR2wySUdsa1BTSnZibVYwY25WemRDMXdiMnhwWTNrdGRHVjRkQ0krZEdsMGJHVThZU0JvY21WbVBTSWpJajV3YjJ4cFkzazhMMkUrUEM5a2FYWStQR1JwZGlCamJHRnpjejBpYjNRdFpIQmtMV052Ym5SaGFXNWxjaUkrUEdneklHTnNZWE56UFNKdmRDMWtjR1F0ZEdsMGJHVWlQbGRsSUdOdmJHeGxZM1FnWkdGMFlTQnBiaUJ2Y21SbGNpQjBieUJ3Y205MmFXUmxPand2YURNK1BHUnBkaUJqYkdGemN6MGliM1F0WkhCa0xXTnZiblJsYm5RaVBqeHdJR05zWVhOelBTSnZkQzFrY0dRdFpHVnpZeUkrWkdWelkzSnBjSFJwYjI0OEwzQStQQzlrYVhZK1BDOWthWFkrUEM5a2FYWStQQzlrYVhZK1BHUnBkaUJwWkQwaWIyNWxkSEoxYzNRdFluVjBkRzl1TFdkeWIzVndMWEJoY21WdWRDSWdZMnhoYzNNOUltOTBMWE5rYXkxMGFISmxaU0J2ZEMxelpHc3RZMjlzZFcxdWN5SStQR1JwZGlCcFpEMGliMjVsZEhKMWMzUXRZblYwZEc5dUxXZHliM1Z3SWo0OFluVjBkRzl1SUdsa1BTSnZibVYwY25WemRDMXdZeTFpZEc0dGFHRnVaR3hsY2lJK1kyaHZhV05sUEM5aWRYUjBiMjQrSUR4aWRYUjBiMjRnYVdROUltOXVaWFJ5ZFhOMExYSmxhbVZqZEMxaGJHd3RhR0Z1Wkd4bGNpSStVbVZxWldOMFBDOWlkWFIwYjI0K0lEeGlkWFIwYjI0Z2FXUTlJbTl1WlhSeWRYTjBMV0ZqWTJWd2RDMWlkRzR0YUdGdVpHeGxjaUkrUVdOalpYQjBQQzlpZFhSMGIyNCtQQzlrYVhZK1BDOWthWFkrUEM5a2FYWStQQzlrYVhZK1BHUnBkaUJqYkdGemN6MGliM1F0YzJSckxXTnZiblJoYVc1bGNpSWdhV1E5SW1KaGJtNWxjaTF2Y0hScGIyNXpJajQ4WkdsMklHTnNZWE56UFNKdmRDMXpaR3N0Wm05MWNpQnZkQzF6WkdzdFkyOXNkVzF1Y3lCaVlXNXVaWEl0YjNCMGFXOXVJajQ4WW5WMGRHOXVJR0Z5YVdFdFpYaHdZVzVrWldROUltWmhiSE5sSWlCamJHRnpjejBpWW1GdWJtVnlMVzl3ZEdsdmJpMXBibkIxZENJK1BITndZVzRnWTJ4aGMzTTlJbUpoYm01bGNpMXZjSFJwYjI0dGFHVmhaR1Z5SWo0OGFEUStVSFZ5Y0c5elpTQjNaU0IxYzJVOEwyZzBQanh6Y0dGdUlHTnNZWE56UFNKdmRDMWhjbkp2ZHkxamIyNTBZV2x1WlhJaVBqd3ZjM0JoYmo0OEwzTndZVzQrUEM5aWRYUjBiMjQrUEdScGRpQmpiR0Z6Y3owaVltRnVibVZ5TFc5d2RHbHZiaTFrWlhSaGFXeHpJajV3ZFhKd2IzTmxJR1JsYzJOeWFYQjBhVzl1UEM5a2FYWStQQzlrYVhZK1BDOWthWFkrUENFdExTQkRiRzl6WlNCQ2RYUjBiMjRnTFMwK1BHUnBkaUJwWkQwaWIyNWxkSEoxYzNRdFkyeHZjMlV0WW5SdUxXTnZiblJoYVc1bGNpSStQR0oxZEhSdmJpQmpiR0Z6Y3owaWIyNWxkSEoxYzNRdFkyeHZjMlV0WW5SdUxXaGhibVJzWlhJZ2IyNWxkSEoxYzNRdFkyeHZjMlV0WW5SdUxYVnBJR0poYm01bGNpMWpiRzl6WlMxaWRYUjBiMjRnYjNRdFkyeHZjMlV0YVdOdmJpSStQQzlpZFhSMGIyNCtQQzlrYVhZK1BDRXRMU0JEYkc5elpTQkNkWFIwYjI0Z1JVNUVMUzArUEM5a2FYWStQQzlrYVhZKyIsCiAgICAgICAgICAgICAgICAiY3NzIjogIiNvbmV0cnVzdC1iYW5uZXItc2Rre2JveC1zaGFkb3c6MCAwIDE4cHggcmdiYSgwLDAsMCwuMil9I29uZXRydXN0LWJhbm5lci1zZGsub3RGbGF0e3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6MjE0NzQ4MzY0NTtib3R0b206MDtyaWdodDowO2xlZnQ6MDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7bWF4LWhlaWdodDo5MCU7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvfSNvbmV0cnVzdC1iYW5uZXItc2RrLm90RmxhdC50b3B7dG9wOjBweDtib3R0b206YXV0b30jb25ldHJ1c3QtYmFubmVyLXNkay5vdFJlbEZvbnR7Zm9udC1zaXplOjFyZW19I29uZXRydXN0LWJhbm5lci1zZGs+Lm90LXNkay1jb250YWluZXJ7b3ZlcmZsb3c6aGlkZGVufSNvbmV0cnVzdC1iYW5uZXItc2RrOjotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDoxMXB4fSNvbmV0cnVzdC1iYW5uZXItc2RrOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojYzFjMWMxfSNvbmV0cnVzdC1iYW5uZXItc2Rre3Njcm9sbGJhci1hcnJvdy1jb2xvcjojYzFjMWMxO3Njcm9sbGJhci1kYXJrc2hhZG93LWNvbG9yOiNjMWMxYzE7c2Nyb2xsYmFyLWZhY2UtY29sb3I6I2MxYzFjMTtzY3JvbGxiYXItc2hhZG93LWNvbG9yOiNjMWMxYzF9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXBvbGljeXttYXJnaW46MS4yNWVtIDAgLjYyNWVtIDJlbTtvdmVyZmxvdzpoaWRkZW59I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXBvbGljeSAub3QtZ3YtbGlzdC1oYW5kbGVye2Zsb2F0OmxlZnQ7Zm9udC1zaXplOi44MmVtO3BhZGRpbmc6MDttYXJnaW4tYm90dG9tOjA7Ym9yZGVyOjA7bGluZS1oZWlnaHQ6bm9ybWFsO2hlaWdodDphdXRvO3dpZHRoOmF1dG99I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXBvbGljeS10aXRsZXtmb250LXNpemU6MS4yZW07bGluZS1oZWlnaHQ6MS4zO21hcmdpbi1ib3R0b206MTBweH0jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtZ3JvdXAtY29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlfSNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wb2xpY3ktdGV4dHtjbGVhcjpib3RoO3RleHQtYWxpZ246bGVmdDtmb250LXNpemU6Ljg4ZW07bGluZS1oZWlnaHQ6MS40fSNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wb2xpY3ktdGV4dCAqe2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXR9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXBvbGljeS10ZXh0IGF7Zm9udC13ZWlnaHQ6Ym9sZH0jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcG9saWN5LXRpdGxlLCNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wb2xpY3ktdGV4dHtjb2xvcjpkaW1ncmF5O2Zsb2F0OmxlZnR9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWJ1dHRvbi1ncm91cC1wYXJlbnR7bWluLWhlaWdodDoxcHg7dGV4dC1hbGlnbjpjZW50ZXJ9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWJ1dHRvbi1ncm91cHtkaXNwbGF5OmlubGluZS1ibG9ja30jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtYWNjZXB0LWJ0bi1oYW5kbGVyLCNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1yZWplY3QtYWxsLWhhbmRsZXIsI29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXBjLWJ0bi1oYW5kbGVye2JhY2tncm91bmQtY29sb3I6IzY4YjYzMTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjojNjhiNjMxO21hcmdpbi1yaWdodDoxZW07bWluLXdpZHRoOjEyNXB4O2hlaWdodDphdXRvO3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d29yZC13cmFwOmJyZWFrLXdvcmQ7cGFkZGluZzoxMnB4IDEwcHg7bGluZS1oZWlnaHQ6MS4yO2ZvbnQtc2l6ZTouODEzZW07Zm9udC13ZWlnaHQ6NjAwfSNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wYy1idG4taGFuZGxlci5jb29raWUtc2V0dGluZy1saW5re2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6bm9uZTtjb2xvcjojNjhiNjMxO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vbmV0cnVzdC1jbG9zZS1idG4tdWl7d2lkdGg6NDRweDtoZWlnaHQ6NDRweDtiYWNrZ3JvdW5kLXNpemU6MTJweDtib3JkZXI6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46YXV0bztwYWRkaW5nOjB9I29uZXRydXN0LWJhbm5lci1zZGsgLmJhbm5lcl9sb2dve2Rpc3BsYXk6bm9uZX0jb25ldHJ1c3QtYmFubmVyLXNkay5vdC1ibnItdy1sb2dvIC5vdC1ibnItbG9nb3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2xlZnQ6MHB4O21hcmdpbi1yaWdodDo1cHh9I29uZXRydXN0LWJhbm5lci1zZGsub3QtYm5yLXctbG9nbyAjb25ldHJ1c3QtcG9saWN5e21hcmdpbi1sZWZ0OjY1cHh9I29uZXRydXN0LWJhbm5lci1zZGsgLm90LWItYWRkbC1kZXNje2NsZWFyOmJvdGg7ZmxvYXQ6bGVmdDtkaXNwbGF5OmJsb2NrfSNvbmV0cnVzdC1iYW5uZXItc2RrICNiYW5uZXItb3B0aW9uc3tmbG9hdDpsZWZ0O2Rpc3BsYXk6dGFibGU7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MWVtO3dpZHRoOmNhbGMoMTAwJSAtIDFlbSl9I29uZXRydXN0LWJhbm5lci1zZGsgLmJhbm5lci1vcHRpb24taW5wdXR7Y3Vyc29yOnBvaW50ZXI7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bztib3JkZXI6bm9uZTtwYWRkaW5nOjA7cGFkZGluZy1yaWdodDozcHg7bWFyZ2luOjAgMCAxMHB4O2ZvbnQtc2l6ZTouODJlbTtsaW5lLWhlaWdodDoxLjR9I29uZXRydXN0LWJhbm5lci1zZGsgLmJhbm5lci1vcHRpb24taW5wdXQgKntwb2ludGVyLWV2ZW50czpub25lO2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXR9I29uZXRydXN0LWJhbm5lci1zZGsgLmJhbm5lci1vcHRpb24taW5wdXRbYXJpYS1leHBhbmRlZD10cnVlXX4uYmFubmVyLW9wdGlvbi1kZXRhaWxze2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OmF1dG99I29uZXRydXN0LWJhbm5lci1zZGsgLmJhbm5lci1vcHRpb24taW5wdXRbYXJpYS1leHBhbmRlZD10cnVlXSAub3QtYXJyb3ctY29udGFpbmVye3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5iYW5uZXItb3B0aW9ue21hcmdpbi1ib3R0b206MTJweDttYXJnaW4tbGVmdDowO2JvcmRlcjpub25lO2Zsb2F0OmxlZnQ7cGFkZGluZzowfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5iYW5uZXItb3B0aW9uOmZpcnN0LWNoaWxke3BhZGRpbmctbGVmdDoycHh9I29uZXRydXN0LWJhbm5lci1zZGsgLmJhbm5lci1vcHRpb246bm90KDpmaXJzdC1jaGlsZCl7cGFkZGluZzowO2JvcmRlcjpub25lfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5iYW5uZXItb3B0aW9uLWhlYWRlcntjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9ja30jb25ldHJ1c3QtYmFubmVyLXNkayAuYmFubmVyLW9wdGlvbi1oZWFkZXIgOmZpcnN0LWNoaWxke2NvbG9yOmRpbWdyYXk7Zm9udC13ZWlnaHQ6Ym9sZDtmbG9hdDpsZWZ0fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5iYW5uZXItb3B0aW9uLWhlYWRlciAub3QtYXJyb3ctY29udGFpbmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO2JvcmRlci10b3A6NnB4IHNvbGlkIHJnYmEoMCwwLDAsMCk7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQgcmdiYSgwLDAsMCwwKTtib3JkZXItbGVmdDo2cHggc29saWQgZGltZ3JheTttYXJnaW4tbGVmdDoxMHB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0jb25ldHJ1c3QtYmFubmVyLXNkayAuYmFubmVyLW9wdGlvbi1kZXRhaWxze2Rpc3BsYXk6bm9uZTtmb250LXNpemU6LjgzZW07bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6MTBweCAwcHggNXB4IDEwcHg7bWFyZ2luLXJpZ2h0OjEwcHg7aGVpZ2h0OjBweH0jb25ldHJ1c3QtYmFubmVyLXNkayAuYmFubmVyLW9wdGlvbi1kZXRhaWxzICp7Zm9udC1zaXplOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjpkaW1ncmF5fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1hcnJvdy1jb250YWluZXIsI29uZXRydXN0LWJhbm5lci1zZGsgLmJhbm5lci1vcHRpb24tZGV0YWlsc3t0cmFuc2l0aW9uOmFsbCAzMDBtcyBlYXNlLWluIDBzOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgMzAwbXMgZWFzZS1pbiAwczstbW96LXRyYW5zaXRpb246YWxsIDMwMG1zIGVhc2UtaW4gMHM7LW8tdHJhbnNpdGlvbjphbGwgMzAwbXMgZWFzZS1pbiAwc30jb25ldHJ1c3QtYmFubmVyLXNkayAub3QtZHBkLWNvbnRhaW5lcntmbG9hdDpsZWZ0fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1kcGQtdGl0bGV7bWFyZ2luLWJvdHRvbToxMHB4fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1kcGQtdGl0bGUsI29uZXRydXN0LWJhbm5lci1zZGsgLm90LWRwZC1kZXNje2ZvbnQtc2l6ZTouODhlbTtsaW5lLWhlaWdodDoxLjQ7Y29sb3I6ZGltZ3JheX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3QtZHBkLXRpdGxlICosI29uZXRydXN0LWJhbm5lci1zZGsgLm90LWRwZC1kZXNjICp7Zm9udC1zaXplOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdH0jb25ldHJ1c3QtYmFubmVyLXNkay5vdC1pYWItMiAjb25ldHJ1c3QtcG9saWN5LXRleHQgKnttYXJnaW4tYm90dG9tOjB9I29uZXRydXN0LWJhbm5lci1zZGsub3QtaWFiLTIgLm9uZXRydXN0LXZlbmRvcnMtbGlzdC1oYW5kbGVye2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWxlZnQ6MDttYXJnaW4tdG9wOjVweDtjbGVhcjpib3RoO21hcmdpbi1ib3R0b206MDtwYWRkaW5nOjA7Ym9yZGVyOjA7aGVpZ2h0OmF1dG87d2lkdGg6YXV0b30jb25ldHJ1c3QtYmFubmVyLXNkay5vdC1pYWItMiAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwIGJ1dHRvbntkaXNwbGF5OmJsb2NrfSNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWNsb3NlLWJ0bi1saW5re3BhZGRpbmctdG9wOjI1cHh9I29uZXRydXN0LWJhbm5lci1zZGsub3QtY2xvc2UtYnRuLWxpbmsgI29uZXRydXN0LWNsb3NlLWJ0bi1jb250YWluZXJ7dG9wOjE1cHg7dHJhbnNmb3JtOm5vbmU7cmlnaHQ6MTVweH0jb25ldHJ1c3QtYmFubmVyLXNkay5vdC1jbG9zZS1idG4tbGluayAjb25ldHJ1c3QtY2xvc2UtYnRuLWNvbnRhaW5lciBidXR0b257cGFkZGluZzowO3doaXRlLXNwYWNlOnByZS13cmFwO2JvcmRlcjpub25lO2hlaWdodDphdXRvO2xpbmUtaGVpZ2h0OjEuNTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2ZvbnQtc2l6ZTouNjllbX0jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcG9saWN5LXRleHQsI29uZXRydXN0LWJhbm5lci1zZGsgLm90LWRwZC1kZXNjLCNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1iLWFkZGwtZGVzY3tmb250LXNpemU6LjgxM2VtO2xpbmUtaGVpZ2h0OjEuNX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3QtZHBkLWRlc2N7bWFyZ2luLWJvdHRvbToxMHB4fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vdC1kcGQtZGVzYz4ub3QtYi1hZGRsLWRlc2N7bWFyZ2luLXRvcDoxMHB4O21hcmdpbi1ib3R0b206MTBweDtmb250LXNpemU6MWVtfUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDI1cHgpeyNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1jbG9zZS1idG4tY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo2cHg7cmlnaHQ6MnB4fSNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wb2xpY3l7bWFyZ2luLWxlZnQ6MDttYXJnaW4tdG9wOjNlbX0jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtYnV0dG9uLWdyb3Vwe2Rpc3BsYXk6YmxvY2t9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWFjY2VwdC1idG4taGFuZGxlciwjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcmVqZWN0LWFsbC1oYW5kbGVyLCNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wYy1idG4taGFuZGxlcnt3aWR0aDoxMDAlfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vbmV0cnVzdC1jbG9zZS1idG4tdWl7dG9wOmF1dG87dHJhbnNmb3JtOm5vbmV9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LXBvbGljeS10aXRsZXtkaXNwbGF5OmlubGluZTtmbG9hdDpub25lfSNvbmV0cnVzdC1iYW5uZXItc2RrICNiYW5uZXItb3B0aW9uc3ttYXJnaW46MDtwYWRkaW5nOjA7d2lkdGg6MTAwJX19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NTBweCl7I29uZXRydXN0LWJ1dHRvbi1ncm91cC5vdC1idXR0b24tb3JkZXItY29udGFpbmVyICNvbmV0cnVzdC1hY2NlcHQtYnRuLWhhbmRsZXIsI29uZXRydXN0LWJ1dHRvbi1ncm91cC5vdC1idXR0b24tb3JkZXItY29udGFpbmVyICNvbmV0cnVzdC1yZWplY3QtYWxsLWhhbmRsZXIsI29uZXRydXN0LWJ1dHRvbi1ncm91cC5vdC1idXR0b24tb3JkZXItY29udGFpbmVyICNvbmV0cnVzdC1wYy1idG4taGFuZGxlcnttYXJnaW4tcmlnaHQ6MH0jb25ldHJ1c3QtYmFubmVyLXNkayAuaGFzLXJlamVjdC1hbGwtYnV0dG9uIGRpdiNvbmV0cnVzdC1idXR0b24tZ3JvdXAub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciAjb25ldHJ1c3QtYWNjZXB0LWJ0bi1oYW5kbGVyLCNvbmV0cnVzdC1iYW5uZXItc2RrIC5oYXMtcmVqZWN0LWFsbC1idXR0b24gZGl2I29uZXRydXN0LWJ1dHRvbi1ncm91cC5vdC1idXR0b24tb3JkZXItY29udGFpbmVyICNvbmV0cnVzdC1yZWplY3QtYWxsLWhhbmRsZXIsI29uZXRydXN0LWJhbm5lci1zZGsgLmhhcy1yZWplY3QtYWxsLWJ1dHRvbiBkaXYjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgI29uZXRydXN0LXBjLWJ0bi1oYW5kbGVye21hcmdpbi1yaWdodDowfX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQyNnB4KWFuZCAobWF4LXdpZHRoOiA4OTZweCl7I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWNsb3NlLWJ0bi1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MH0jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcG9saWN5e21hcmdpbi1sZWZ0OjFlbTttYXJnaW4tcmlnaHQ6MWVtfSNvbmV0cnVzdC1iYW5uZXItc2RrIC5vbmV0cnVzdC1jbG9zZS1idG4tdWl7dG9wOjEwcHg7cmlnaHQ6MTBweH0jb25ldHJ1c3QtYmFubmVyLXNkazpub3QoLm90LWlhYi0yKSAjb25ldHJ1c3QtZ3JvdXAtY29udGFpbmVye3dpZHRoOjk1JX0jb25ldHJ1c3QtYmFubmVyLXNkay5vdC1pYWItMiAjb25ldHJ1c3QtZ3JvdXAtY29udGFpbmVye3dpZHRoOjEwMCV9I29uZXRydXN0LWJhbm5lci1zZGsub3QtYm5yLXctbG9nbyAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLXBhcmVudHtwYWRkaW5nLWxlZnQ6NTBweH0jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLXBhcmVudHt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi1sZWZ0OjB9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWJ1dHRvbi1ncm91cCBidXR0b257ZGlzcGxheTppbmxpbmUtYmxvY2t9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWJ1dHRvbi1ncm91cHttYXJnaW4tcmlnaHQ6MDt0ZXh0LWFsaWduOmNlbnRlcn0jb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgI29uZXRydXN0LWFjY2VwdC1idG4taGFuZGxlciwjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgI29uZXRydXN0LXJlamVjdC1hbGwtaGFuZGxlciwjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgI29uZXRydXN0LXBjLWJ0bi1oYW5kbGVye3dpZHRoOmF1dG99I29uZXRydXN0LWJhbm5lci1zZGsgLmhhcy1yZWplY3QtYWxsLWJ1dHRvbiAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXJ7ZGlzcGxheTppbmxpbmUtZmxleDtmbGV4LXdyYXA6d3JhcH0jb25ldHJ1c3QtYmFubmVyLXNkayAuaGFzLXJlamVjdC1hbGwtYnV0dG9uICNvbmV0cnVzdC1idXR0b24tZ3JvdXAub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciAjb25ldHJ1c3QtcGMtYnRuLWhhbmRsZXIsI29uZXRydXN0LWJhbm5lci1zZGsgLmhhcy1yZWplY3QtYWxsLWJ1dHRvbiAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgI29uZXRydXN0LXJlamVjdC1hbGwtaGFuZGxlciwjb25ldHJ1c3QtYmFubmVyLXNkayAuaGFzLXJlamVjdC1hbGwtYnV0dG9uICNvbmV0cnVzdC1idXR0b24tZ3JvdXAub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciAjb25ldHJ1c3QtYWNjZXB0LWJ0bi1oYW5kbGVye2Zsb2F0Om5vbmV9I29uZXRydXN0LWJhbm5lci1zZGsgLmhhcy1yZWplY3QtYWxsLWJ1dHRvbiAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgKltjbGFzcyo9b3QtYnV0dG9uLW9yZGVyLV06bnRoLW9mLXR5cGUoMSl7bWFyZ2luLXJpZ2h0OmF1dG8gIWltcG9ydGFudH0jb25ldHJ1c3QtYmFubmVyLXNkayAuaGFzLXJlamVjdC1hbGwtYnV0dG9uICNvbmV0cnVzdC1wYy1idG4taGFuZGxlcntmbG9hdDpsZWZ0fSNvbmV0cnVzdC1iYW5uZXItc2RrIC5oYXMtcmVqZWN0LWFsbC1idXR0b24gI29uZXRydXN0LXJlamVjdC1hbGwtaGFuZGxlciwjb25ldHJ1c3QtYmFubmVyLXNkayAuaGFzLXJlamVjdC1hbGwtYnV0dG9uICNvbmV0cnVzdC1hY2NlcHQtYnRuLWhhbmRsZXJ7ZmxvYXQ6cmlnaHR9I29uZXRydXN0LWJhbm5lci1zZGsgLmhhcy1yZWplY3QtYWxsLWJ1dHRvbiAjb25ldHJ1c3QtYnV0dG9uLWdyb3Vwe3dpZHRoOmNhbGMoMTAwJSAtIDJlbSk7bWFyZ2luLXJpZ2h0OjB9I29uZXRydXN0LWJhbm5lci1zZGsgLmhhcy1yZWplY3QtYWxsLWJ1dHRvbiAjb25ldHJ1c3QtcGMtYnRuLWhhbmRsZXIuY29va2llLXNldHRpbmctbGlua3twYWRkaW5nLWxlZnQ6MHB4O3RleHQtYWxpZ246bGVmdH0jb25ldHJ1c3QtYmFubmVyLXNkay5vdC1idXR0b25zLWZ3IC5vdC1zZGstdGhyZWUgYnV0dG9ue3dpZHRoOjEwMCU7dGV4dC1hbGlnbjpjZW50ZXJ9I29uZXRydXN0LWJhbm5lci1zZGsub3QtYnV0dG9ucy1mdyAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLXBhcmVudCBidXR0b257ZmxvYXQ6bm9uZX0jb25ldHJ1c3QtYmFubmVyLXNkay5vdC1idXR0b25zLWZ3ICNvbmV0cnVzdC1wYy1idG4taGFuZGxlci5jb29raWUtc2V0dGluZy1saW5re3RleHQtYWxpZ246Y2VudGVyfX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU1MHB4KXsjb25ldHJ1c3QtYmFubmVyLXNkayAuYmFubmVyLW9wdGlvbjpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItbGVmdDoxcHggc29saWQgI2Q4ZDhkODtwYWRkaW5nLWxlZnQ6MjVweH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MjVweClhbmQgKG1heC13aWR0aDogNTUwcHgpeyNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWlhYi0yICNvbmV0cnVzdC1idXR0b24tZ3JvdXAsI29uZXRydXN0LWJhbm5lci1zZGsub3QtaWFiLTIgI29uZXRydXN0LXBvbGljeSwjb25ldHJ1c3QtYmFubmVyLXNkay5vdC1pYWItMiAuYmFubmVyLW9wdGlvbnt3aWR0aDoxMDAlfSNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWlhYi0yICNvbmV0cnVzdC1idXR0b24tZ3JvdXAgI29uZXRydXN0LWFjY2VwdC1idG4taGFuZGxlciwjb25ldHJ1c3QtYmFubmVyLXNkay5vdC1pYWItMiAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwICNvbmV0cnVzdC1yZWplY3QtYWxsLWhhbmRsZXIsI29uZXRydXN0LWJhbm5lci1zZGsub3QtaWFiLTIgI29uZXRydXN0LWJ1dHRvbi1ncm91cCAjb25ldHJ1c3QtcGMtYnRuLWhhbmRsZXJ7d2lkdGg6MTAwJX0jb25ldHJ1c3QtYmFubmVyLXNkay5vdC1pYWItMiAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwICNvbmV0cnVzdC1hY2NlcHQtYnRuLWhhbmRsZXIsI29uZXRydXN0LWJhbm5lci1zZGsub3QtaWFiLTIgI29uZXRydXN0LWJ1dHRvbi1ncm91cCAjb25ldHJ1c3QtcmVqZWN0LWFsbC1oYW5kbGVye2Zsb2F0OmxlZnR9I29uZXRydXN0LWJhbm5lci1zZGsub3QtaWFiLTIgI29uZXRydXN0LWJ1dHRvbi1ncm91cC5vdC1idXR0b24tb3JkZXItY29udGFpbmVye3dpZHRoOmF1dG99fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpeyNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1idXR0b24tZ3JvdXB7bWFyZ2luLXJpZ2h0OjMwJX0jb25ldHJ1c3QtYmFubmVyLXNkayAjYmFubmVyLW9wdGlvbnN7bWFyZ2luLWxlZnQ6MmVtO21hcmdpbi1yaWdodDo1ZW07bWFyZ2luLWJvdHRvbToxLjI1ZW07d2lkdGg6Y2FsYygxMDAlIC0gN2VtKX19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4OTdweClhbmQgKG1heC13aWR0aDogMTAyM3B4KXsjb25ldHJ1c3QtYmFubmVyLXNkay52ZXJ0aWNhbC1hbGlnbi1jb250ZW50ICNvbmV0cnVzdC1idXR0b24tZ3JvdXAtcGFyZW50e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo4MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWNsb3NlLWJ0bi1jb250YWluZXJ7dG9wOjUwJTttYXJnaW46YXV0bzt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsIC01MCUpO3Bvc2l0aW9uOmFic29sdXRlO3BhZGRpbmc6MDtyaWdodDowfSNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1jbG9zZS1idG4tY29udGFpbmVyIGJ1dHRvbntwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MDtyaWdodDotMjJweDt0b3A6MnB4fX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCl7I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWNsb3NlLWJ0bi1jb250YWluZXJ7dG9wOjUwJTttYXJnaW46YXV0bzt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsIC01MCUpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjB9I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWNsb3NlLWJ0bi1jb250YWluZXIgYnV0dG9ue3JpZ2h0Oi0xMnB4fSNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wb2xpY3l7bWFyZ2luLWxlZnQ6MmVtfSNvbmV0cnVzdC1iYW5uZXItc2RrLnZlcnRpY2FsLWFsaWduLWNvbnRlbnQgI29uZXRydXN0LWJ1dHRvbi1ncm91cC1wYXJlbnR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjYwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0jb25ldHJ1c3QtYmFubmVyLXNkayAub3Qtb3B0b3V0LXNpZ25hbHt3aWR0aDo1MCV9I29uZXRydXN0LWJhbm5lci1zZGsub3QtaWFiLTIgI29uZXRydXN0LXBvbGljeS10aXRsZXt3aWR0aDo1MCV9I29uZXRydXN0LWJhbm5lci1zZGsub3QtaWFiLTIgI29uZXRydXN0LXBvbGljeS10ZXh0LCNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWlhYi0yIDpub3QoLm90LWRwZC1kZXNjKT4ub3QtYi1hZGRsLWRlc2N7bWFyZ2luLWJvdHRvbToxZW07d2lkdGg6NTAlO2JvcmRlci1yaWdodDoxcHggc29saWQgI2Q4ZDhkODtwYWRkaW5nLXJpZ2h0OjFyZW19I29uZXRydXN0LWJhbm5lci1zZGsub3QtaWFiLTIgI29uZXRydXN0LXBvbGljeS10ZXh0e21hcmdpbi1ib3R0b206MDtwYWRkaW5nLWJvdHRvbToxZW19I29uZXRydXN0LWJhbm5lci1zZGsub3QtaWFiLTIgOm5vdCgub3QtZHBkLWRlc2MpPi5vdC1iLWFkZGwtZGVzY3ttYXJnaW4tYm90dG9tOjA7cGFkZGluZy1ib3R0b206MWVtfSNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWlhYi0yIC5vdC1kcGQtY29udGFpbmVye3dpZHRoOjQ1JTtwYWRkaW5nLWxlZnQ6MXJlbTtkaXNwbGF5OmlubGluZS1ibG9jaztmbG9hdDpub25lfSNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWlhYi0yIC5vdC1kcGQtdGl0bGV7bGluZS1oZWlnaHQ6MS43fSNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWlhYi0yICNvbmV0cnVzdC1idXR0b24tZ3JvdXAtcGFyZW50e2xlZnQ6YXV0bztyaWdodDo0JTttYXJnaW4tbGVmdDowfSNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWlhYi0yICNvbmV0cnVzdC1idXR0b24tZ3JvdXAgYnV0dG9ue2Rpc3BsYXk6YmxvY2t9I29uZXRydXN0LWJhbm5lci1zZGs6bm90KC5vdC1pYWItMikgI29uZXRydXN0LWJ1dHRvbi1ncm91cC1wYXJlbnR7bWFyZ2luOmF1dG87d2lkdGg6MzAlfSNvbmV0cnVzdC1iYW5uZXItc2RrOm5vdCgub3QtaWFiLTIpICNvbmV0cnVzdC1ncm91cC1jb250YWluZXJ7d2lkdGg6NjAlfSNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1idXR0b24tZ3JvdXB7bWFyZ2luLXJpZ2h0OmF1dG99I29uZXRydXN0LWJhbm5lci1zZGsgI29uZXRydXN0LWFjY2VwdC1idG4taGFuZGxlciwjb25ldHJ1c3QtYmFubmVyLXNkayAjb25ldHJ1c3QtcmVqZWN0LWFsbC1oYW5kbGVyLCNvbmV0cnVzdC1iYW5uZXItc2RrICNvbmV0cnVzdC1wYy1idG4taGFuZGxlcnttYXJnaW4tdG9wOjFlbX19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4OTBweCl7I29uZXRydXN0LWJhbm5lci1zZGsub3QtYnV0dG9ucy1mdzpub3QoLm90LWlhYi0yKSAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLXBhcmVudHtwYWRkaW5nLWxlZnQ6MyU7cGFkZGluZy1yaWdodDo0JTttYXJnaW4tbGVmdDowfSNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWJ1dHRvbnMtZnc6bm90KC5vdC1pYWItMikgI29uZXRydXN0LWJ1dHRvbi1ncm91cHttYXJnaW4tcmlnaHQ6MDttYXJnaW4tdG9wOjEuMjVlbTt3aWR0aDoxMDAlfSNvbmV0cnVzdC1iYW5uZXItc2RrLm90LWJ1dHRvbnMtZnc6bm90KC5vdC1pYWItMikgI29uZXRydXN0LWJ1dHRvbi1ncm91cCBidXR0b257d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjVweDttYXJnaW4tdG9wOjVweH0jb25ldHJ1c3QtYmFubmVyLXNkay5vdC1idXR0b25zLWZ3Om5vdCgub3QtaWFiLTIpICNvbmV0cnVzdC1idXR0b24tZ3JvdXAgYnV0dG9uOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjIwcHh9fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KXsjb25ldHJ1c3QtYmFubmVyLXNkazpub3QoLm90LWlhYi0yKSAjb25ldHJ1c3QtZ3JvdXAtY29udGFpbmVye3dpZHRoOjU1JX0jb25ldHJ1c3QtYmFubmVyLXNkazpub3QoLm90LWlhYi0yKSAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLXBhcmVudHt3aWR0aDo0NCU7cGFkZGluZy1sZWZ0OjIlO3BhZGRpbmctcmlnaHQ6MiV9I29uZXRydXN0LWJhbm5lci1zZGs6bm90KC5vdC1pYWItMikudmVydGljYWwtYWxpZ24tY29udGVudCAjb25ldHJ1c3QtYnV0dG9uLWdyb3VwLXBhcmVudHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjU1JX19IgogICAgICAgICAgICB9"}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.cookielaw.org/scripttemplates/202510.2.0/assets/v2/otPcCenter.json","fqdn":"cdn.cookielaw.org","domain":"cookielaw.org","tld":"org"},"ip":{"addr":"104.18.86.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://dhlexpress.bg/en/shipping-advice/packaging/","date":"2026-07-27T14:06:07.756Z","timestamp":1785161167756,"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":"cookielaw.org","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 22:47:21 GMT","end":"Tue, 20 Oct 2026 23:47:08 GMT"},"fingerprint":{"sha1":"BE:65:35:7C:E3:8D:B8:0C:7D:40:51:C7:4B:EE:56:FE:FD:2D:ED:91","sha256":"D6:A8:FD:24:40:A2:7D:0B:B5:73:08:9C:B2:AC:6E:1F:84:CC:D4:09:7B:BA:22:E8:A5:38:A4:10:29:65:88:5C"}}},"request":{"raw":"GET /scripttemplates/202510.2.0/assets/v2/otPcCenter.json HTTP/1.1\r\nHost: cdn.cookielaw.org\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://dhlexpress.bg/\r\nOrigin: https://dhlexpress.bg\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 14:06:07 GMT\r\ncontent-type: application/json\r\ncontent-length: 13363\r\ncontent-encoding: gzip\r\ncontent-md5: +9u1YTPRR9AuO47vXGhKRw==\r\nlast-modified: Fri, 21 Nov 2025 06:40:40 GMT\r\netag: 0x8DE28C8E2FFA138\r\nserver: cloudflare\r\nx-ms-request-id: c586cf3a-601e-00f9-5b90-f3596a000000\r\nx-ms-version: 2009-09-19\r\nx-ms-lease-status: unlocked\r\nx-ms-blob-type: BlockBlob\r\naccess-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,ETag,Last-Modified,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding\r\naccess-control-allow-origin: *\r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\nvary: accept-encoding\r\nage: 16200\r\ncache-control: max-age=86400\r\ncf-cache-status: HIT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\ncf-ray: a21c33f27a97783d-OSL\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"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":67556,"size_decoded":14302,"mime_type":"application/json","magic":"JSON text data","md5":"d71282862973e83e169ebb79ec373ae1","sha1":"a259fce5c11fdbd4c2aaab9798a1d93a1b3af288","sha256":"0b080cebdfd90d40e724d27276a1125953c7efbec8afa4f322f3102c61d763e6","sha512":"ef198c779b2276242821d2ea8a149628080a503509cf9ba56329f327a0e2d2a1b817e04242227596ac9cb03e8ce4f200ca6aec6e258387b5eefa8c65727e172b","ssdeep":"768:IzgP4cBfwwYifZGpMu+0yV88mXdazQfhF:IzU4qOL+0yV88ok4F","tlshash":"7863d99b7aa0530afee3cb19eb926de87124c90fbd335dedf1424678868d7e18d11508","first_seen":"2025-11-05T01:38:18.194421Z","last_seen":"2026-07-27T14:06:41.20081Z","times_seen":3741,"resource_available":false,"data":"CiAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJvdFBjQ2VudGVyIiwKICAgICAgICAgICAgImh0bWwiOiAiUEdScGRpQnBaRDBpYjI1bGRISjFjM1F0Y0dNdGMyUnJJaUJqYkdGemN6MGliM1JRWTBObGJuUmxjaUJ2ZEMxb2FXUmxJRzkwTFdaaFpHVXRhVzRpUGp4a2FYWWdjbTlzWlQwaVpHbGhiRzluSWlCaGNtbGhMVzF2WkdGc1BTSjBjblZsSWo0OElTMHRJRU5zYjNObElFSjFkSFJ2YmlBdExUNDhaR2wySUdOc1lYTnpQU0p2ZEMxd1l5MW9aV0ZrWlhJaVBqd2hMUzBnVEc5bmJ5QlVZV2NnTFMwK1BHUnBkaUJqYkdGemN6MGliM1F0Y0dNdGJHOW5ieUkrUEM5a2FYWStQR0oxZEhSdmJpQnBaRDBpWTJ4dmMyVXRjR010WW5SdUxXaGhibVJzWlhJaUlHTnNZWE56UFNKdmRDMWpiRzl6WlMxcFkyOXVJaUJoY21saExXeGhZbVZzUFNKRGJHOXpaU0krUEM5aWRYUjBiMjQrUEM5a2FYWStQQ0V0TFNCRGJHOXpaU0JDZFhSMGIyNGdMUzArUEdScGRpQnBaRDBpYjNRdGNHTXRZMjl1ZEdWdWRDSWdZMnhoYzNNOUltOTBMWEJqTFhOamNtOXNiR0poY2lJK1BHZ3lJR2xrUFNKdmRDMXdZeTEwYVhSc1pTSStXVzkxY2lCUWNtbDJZV041UEM5b01qNDhaR2wySUdsa1BTSnZkQzF3WXkxa1pYTmpJajQ4TDJScGRqNDhZblYwZEc5dUlHbGtQU0poWTJObGNIUXRjbVZqYjIxdFpXNWtaV1F0WW5SdUxXaGhibVJzWlhJaUlHOTBMV0oxZEhSdmJpMXZjbVJsY2owaU1DSStRV3hzYjNjZ1lXeHNQQzlpZFhSMGIyNCtQSE5sWTNScGIyNGdZMnhoYzNNOUltOTBMWE5rYXkxeWIzY2diM1F0WTJGMExXZHljQ0krUEdneklHbGtQU0p2ZEMxallYUmxaMjl5ZVMxMGFYUnNaU0krVFdGdVlXZGxJRU52YjJ0cFpTQlFjbVZtWlhKbGJtTmxjend2YURNK1BHUnBkaUJqYkdGemN6MGliM1F0Y0d4cExXaGtjaUkrUEhOd1lXNGdZMnhoYzNNOUltOTBMV3hwTFhScGRHeGxJajVEYjI1elpXNTBQQzl6Y0dGdVBpQThjM0JoYmlCamJHRnpjejBpYjNRdGJHa3RkR2wwYkdVaVBreGxaMmwwTGlCSmJuUmxjbVZ6ZER3dmMzQmhiajQ4TDJScGRqNDhJUzB0SUVkeWIzVndjeUJ6WldOMGFXOXVjeUJ6ZEdGeWRITWdMUzArUEdScGRpQmpiR0Z6Y3owaWIzUXRZMkYwTFdsMFpXMGlQandoTFMwZ1IzSnZkWEFnYm1GdFpTQXRMVDQ4YURRZ1kyeGhjM005SW05MExXTmhkQzFvWldGa1pYSWlQbE4wYVdOMGJIa2dUbVZqWlhOellYSjVJRU52YjJ0cFpYTThMMmcwUGp3aExTMGdSM0p2ZFhBZ1pHVnpZM0pwY0hScGIyNGdMUzArUEhBK1ZHaGxjMlVnWTI5dmEybGxjeUJoY21VZ2JtVmpaWE56WVhKNUlHWnZjaUIwYUdVZ2QyVmljMmwwWlNCMGJ5Qm1kVzVqZEdsdmJpQmhibVE4TDNBK1BDOWthWFkrUENFdExTQkhjbTkxY0NCelpXTjBhVzl1SUdWdVpITWdMUzArUENFdExTQkJZMk52Y21ScGIyNGdSM0p2ZFhBZ2MyVmpkR2x2YmlCemRHRnlkSE1nTFMwK1BHUnBkaUJqYkdGemN6MGliM1F0WVdOamIzSmthVzl1TFd4aGVXOTFkQ0J2ZEMxallYUXRhWFJsYlNJK1BHSjFkSFJ2YmlCaGNtbGhMV1Y0Y0dGdVpHVmtQU0ptWVd4elpTSWdiM1F0WVdOamIzSmthVzl1UFNKMGNuVmxJajQ4TDJKMWRIUnZiajQ4SVMwdElFRmpZMjl5WkdsdmJpQm9aV0ZrWlhJZ0xTMCtQR1JwZGlCamJHRnpjejBpYjNRdFlXTmpMV2hrY2lJK1BHZzBJR05zWVhOelBTSnZkQzFqWVhRdGFHVmhaR1Z5SWo1SmJtWnZjbTFoZEdsdmJpQnpkRzl5WVdkbElHRnVaQ0JoWTJObGMzTThMMmcwUGp3dlpHbDJQandoTFMwZ1lXTmpiM0prYVc5dUlHUmxkR0ZwYkNBdExUNDhaR2wySUdOc1lYTnpQU0p2ZEMxaFkyTXRaM0p3WTI1MGNpQnZkQzFoWTJNdGRIaDBJajQ4Y0NCamJHRnpjejBpYjNRdFlXTmpMV2R5Y0dSbGMyTWlQand2Y0Q0OEwyUnBkajQ4TDJScGRqNDhJUzB0SUVGalkyOXlaR2x2YmlCSGNtOTFjQ0J6WldOMGFXOXVJR1Z1WkhNZ0xTMCtQQzl6WldOMGFXOXVQand2WkdsMlBqeHpaV04wYVc5dUlHbGtQU0p2ZEMxd1l5MXNjM1FpSUdOc1lYTnpQU0p2ZEMxb2FXUmxJRzkwTFdodmMzUnpMWFZwSUc5MExYQmpMWE5qY205c2JHSmhjaUkrUEdScGRpQnBaRDBpYjNRdGNHTXRhR1J5SWo0OFpHbDJJR2xrUFNKdmRDMXNjM1F0ZEdsMGJHVWlQanhpZFhSMGIyNGdZMnhoYzNNOUltOTBMV3hwYm1zdFluUnVJR0poWTJzdFluUnVMV2hoYm1Sc1pYSWlJR0Z5YVdFdGJHRmlaV3c5SWtKaFkyc2lQanh6ZG1jZ2FXUTlJbTkwTFdKaFkyc3RZWEozSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhodGJHNXpPbmhzYVc1clBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1TDNoc2FXNXJJaUI0UFNJd2NIZ2lJSGs5SWpCd2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURRME5DNDFNekVnTkRRMExqVXpNU0lnZUcxc09uTndZV05sUFNKd2NtVnpaWEoyWlNJK1BIUnBkR3hsUGtKaFkyc2dRblYwZEc5dVBDOTBhWFJzWlQ0OFp6NDhjR0YwYUNCbWFXeHNQU0lqTmpVMk5UWTFJaUJrUFNKTk1qRXpMakV6TERJeU1pNDBNRGxNTXpVeExqZzRMRGd6TGpZMU0yTTNMakExTFRjdU1EUXpMREV3TGpVMk55MHhOUzQyTlRjc01UQXVOVFkzTFRJMUxqZzBNV013TFRFd0xqRTRNeTB6TGpVeE9DMHhPQzQzT1RNdE1UQXVOVFkzTFRJMUxqZ3pOUW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUd3dE1qRXVOREE1TFRJeExqUXhOa016TWpNdU5ETXlMRE11TlRJeExETXhOQzQ0TVRjc01Dd3pNRFF1TmpNM0xEQnpMVEU0TGpjNU1Td3pMalV5TVMweU5TNDROREVzTVRBdU5UWXhURGt5TGpZME9Td3hPVFl1TkRJMUNpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZeTAzTGpBME5DdzNMakEwTXkweE1DNDFOallzTVRVdU5qVTJMVEV3TGpVMk5pd3lOUzQ0TkRGek15NDFNakVzTVRndU56a3hMREV3TGpVMk5pd3lOUzQ0TXpkc01UZzJMakUwTml3eE9EVXVPRFkwWXpjdU1EVXNOeTR3TkRNc01UVXVOallzTVRBdU5UWTBMREkxTGpnME1Td3hNQzQxTmpRS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnpNVGd1TnprMUxUTXVOVEl4TERJMUxqZ3pOQzB4TUM0MU5qUnNNakV1TkRBNUxUSXhMalF4TW1NM0xqQTFMVGN1TURNNUxERXdMalUyTnkweE5TNDJNRFFzTVRBdU5UWTNMVEkxTGpZNU4yTXdMVEV3TGpBNE5TMHpMalV4T0MweE9DNDNORFl0TVRBdU5UWTNMVEkxTGprM09Bb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRXd5TVRNdU1UTXNNakl5TGpRd09Yb2lMejQ4TDJjK1BDOXpkbWMrUEM5aWRYUjBiMjQrUEdnelBsQmxjbVp2Y20xaGJtTmxJRU52YjJ0cFpYTThMMmd6UGp3dlpHbDJQanhrYVhZZ1kyeGhjM005SW05MExXeHpkQzF6ZFdKb1pISWlQanhrYVhZZ1kyeGhjM005SW05MExYTmxZWEpqYUMxamJuUnlJajQ4Y0NCeWIyeGxQU0p6ZEdGMGRYTWlJR05zWVhOelBTSnZkQzF6WTNKdUxYSmtjaUkrUEM5d1BqeHBibkIxZENCcFpEMGlkbVZ1Wkc5eUxYTmxZWEpqYUMxb1lXNWtiR1Z5SWlCMGVYQmxQU0owWlhoMElpQnVZVzFsUFNKMlpXNWtiM0l0YzJWaGNtTm9MV2hoYm1Sc1pYSWlQaUE4YzNabklIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2VHMXNibk02ZUd4cGJtczlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MekU1T1RrdmVHeHBibXNpSUhnOUlqQndlQ0lnZVQwaU1IQjRJaUIyYVdWM1FtOTRQU0l3SUMwek1DQXhNVEFnTVRFd0lpQmhjbWxoTFdocFpHUmxiajBpZEhKMVpTSStQSFJwZEd4bFBsTmxZWEpqYUNCSlkyOXVQQzkwYVhSc1pUNDhjR0YwYUNCbWFXeHNQU0lqTW1Vek5qUTBJaUJrUFNKTk5UVXVNVFEyTERVeExqZzROMHcwTVM0MU9EZ3NNemN1TnpnMll6TXVORGcyTFRRdU1UUTBMRFV1TXprMkxUa3VNelU0TERVdU16azJMVEUwTGpjNE5tTXdMVEV5TGpZNE1pMHhNQzR6TVRndE1qTXRNak10TWpOekxUSXpMREV3TGpNeE9DMHlNeXd5TXdvZ0lDQWdJQ0FnSUNBZ0lDQnpNVEF1TXpFNExESXpMREl6TERJell6UXVOell4TERBc09TNHlPVGd0TVM0ME16WXNNVE11TVRjM0xUUXVNVFl5YkRFekxqWTJNU3d4TkM0eU1EaGpNQzQxTnpFc01DNDFPVE1zTVM0ek16a3NNQzQ1TWl3eUxqRTJNaXd3TGpreUNpQWdJQ0FnSUNBZ0lDQWdJR013TGpjM09Td3dMREV1TlRFNExUQXVNamszTERJdU1EYzVMVEF1T0RNM1F6VTJMakkxTlN3MU5DNDVPRElzTlRZdU1qa3pMRFV6TGpBNExEVTFMakUwTml3MU1TNDRPRGQ2SUUweU15NDVPRFFzTm1NNUxqTTNOQ3d3TERFM0xEY3VOakkyTERFM0xERTNjeTAzTGpZeU5pd3hOeTB4Tnl3eE53b2dJQ0FnSUNBZ0lDQWdJQ0J6TFRFM0xUY3VOakkyTFRFM0xURTNVekUwTGpZeExEWXNNak11T1RnMExEWjZJaTgrUEM5emRtYytQQzlrYVhZK1BHUnBkaUJqYkdGemN6MGliM1F0Wm14MGNpMWpiblJ5SWo0OFluVjBkRzl1SUdsa1BTSm1hV3gwWlhJdFluUnVMV2hoYm1Sc1pYSWlJR0Z5YVdFdGJHRmlaV3c5SWtacGJIUmxjaUlnWVhKcFlTMW9ZWE53YjNCMWNEMGlkSEoxWlNJK1BITjJaeUJ5YjJ4bFBTSndjbVZ6Wlc1MFlYUnBiMjRpSUdGeWFXRXRhR2xrWkdWdVBTSjBjblZsSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhodGJHNXpPbmhzYVc1clBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1TDNoc2FXNXJJaUI0UFNJd2NIZ2lJSGs5SWpCd2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURRd01pNDFOemNnTkRBeUxqVTNOeUlnZUcxc09uTndZV05sUFNKd2NtVnpaWEoyWlNJK1BIUnBkR3hsUGtacGJIUmxjaUJKWTI5dVBDOTBhWFJzWlQ0OFp6NDhjR0YwYUNCbWFXeHNQU0lqWm1abUlpQmtQU0pOTkRBd0xqZzFPQ3d4TVM0ME1qZGpMVE11TWpReExUY3VOREl4TFRndU9EVXRNVEV1TVRNeUxURTJMamcxTkMweE1TNHhNelpJTVRndU5UWTBZeTAzTGprNU15d3dMVEV6TGpZeExETXVOekUxTFRFMkxqZzBOaXd4TVM0eE16WUtJQ0FnSUNBZ1l5MHpMakl6TkN3M0xqZ3dNUzB4TGprd015d3hOQzQwTmpjc015NDVPVGtzTVRrdU9UZzFiREUwTUM0M05UY3NNVFF3TGpjMU0zWXhNemd1TnpVMVl6QXNOQzQ1TlRVc01TNDRNRGtzT1M0eU16SXNOUzQwTWpRc01USXVPRFUwYkRjekxqQTROU3czTXk0d09ETUtJQ0FnSUNBZ1l6TXVOREk1TERNdU5qRTBMRGN1TnpFc05TNDBNamdzTVRJdU9EVXhMRFV1TkRJNFl6SXVNamd5TERBc05DNDJOaTB3TGpRM09TdzNMakV6TlMweExqUXpZemN1TkRJMkxUTXVNak00TERFeExqRTBMVGd1T0RVeExERXhMakUwTFRFMkxqZzBOVll4TnpJdU1UWTJURE01Tmk0NE5qRXNNekV1TkRFekNpQWdJQ0FnSUVNME1ESXVOelkxTERJMUxqZzVOU3cwTURRdU1Ea3pMREU1TGpJek1TdzBNREF1T0RVNExERXhMalF5TjNvaUx6NDhMMmMrUEM5emRtYytQQzlpZFhSMGIyNCtQQzlrYVhZK1BHUnBkaUJwWkQwaWIzUXRZVzVqYUc5eUlqNDhMMlJwZGo0OGMyVmpkR2x2YmlCcFpEMGliM1F0Wm14MGNpMXRiMlJoYkNJK1BHUnBkaUJwWkQwaWIzUXRabXgwY2kxamJuUWlQanhrYVhZZ2FXUTlJbTkwTFdacGJIUmxjaTFzYVhOMExXaGxZV1JsY2lJK1BDOWthWFkrUEdKMWRIUnZiaUJwWkQwaVkyeGxZWEl0Wm1sc2RHVnljeTFvWVc1a2JHVnlJajVEYkdWaGNqd3ZZblYwZEc5dVBqeGthWFlnWTJ4aGMzTTlJbTkwTFdac2RISXRjMk55YkdOdWRDQnZkQzF3WXkxelkzSnZiR3hpWVhJaUlISnZiR1U5SW1keWIzVndJaUJoY21saExXeGhZbVZzYkdWa1luazlJbTkwTFdacGJIUmxjaTFzYVhOMExXaGxZV1JsY2lJK1BIVnNJR05zWVhOelBTSnZkQzFtYkhSeUxXOXdkSE1pUGp4c2FTQmpiR0Z6Y3owaWIzUXRabXgwY2kxdmNIUWlQand2YkdrK1BDOTFiRDQ4WkdsMklHTnNZWE56UFNKdmRDMW1iSFJ5TFdKMGJuTWlQanhpZFhSMGIyNGdhV1E5SW1acGJIUmxjaTFoY0hCc2VTMW9ZVzVrYkdWeUlqNUJjSEJzZVR3dlluVjBkRzl1UGlBOFluVjBkRzl1SUdsa1BTSm1hV3gwWlhJdFkyRnVZMlZzTFdoaGJtUnNaWElpUGtOaGJtTmxiRHd2WW5WMGRHOXVQand2WkdsMlBqd3ZaR2wyUGp3dlpHbDJQand2YzJWamRHbHZiajQ4TDJScGRqNDhMMlJwZGo0OGMyVmpkR2x2YmlCcFpEMGliM1F0YkhOMExXTnVkQ0lnWTJ4aGMzTTlJbTkwTFdodmMzUXRZMjUwSUc5MExYQmpMWE5qY205c2JHSmhjaUkrUEdScGRpQnBaRDBpYjNRdGMyVnNMV0pzYXlJK1BHUnBkaUJqYkdGemN6MGliM1F0YzJWc0xXRnNiQ0krUEdScGRpQmpiR0Z6Y3owaWIzUXRjMlZzTFdGc2JDMW9aSElpUGp4emNHRnVJR05zWVhOelBTSnZkQzFqYjI1elpXNTBMV2hrY2lJK1EyOXVjMlZ1ZER3dmMzQmhiajRnUEhOd1lXNGdZMnhoYzNNOUltOTBMV3hwTFdoa2NpSStUR1ZuTGtsdWRHVnlaWE4wUEM5emNHRnVQand2WkdsMlBqeGthWFlnWTJ4aGMzTTlJbTkwTFhObGJDMWhiR3d0WTJoclltOTRJajQ4TDJScGRqNDhMMlJwZGo0OEwyUnBkajQ4WkdsMklHTnNZWE56UFNKdmRDMXpaR3N0Y205M0lqNDhaR2wySUdOc1lYTnpQU0p2ZEMxelpHc3RZMjlzZFcxdUlqNDhkV3dnYVdROUltOTBMV2h2YzNRdGJITjBJajQ4YkdrZ1kyeGhjM005SW05MExXaHZjM1F0YVhSbGJTSStQR0oxZEhSdmJpQmpiR0Z6Y3owaWIzUXRhRzl6ZEMxaWIzZ2lJR0Z5YVdFdFpYaHdZVzVrWldROUltWmhiSE5sSWo0OEwySjFkSFJ2Ymo0OGMyVmpkR2x2YmlCamJHRnpjejBpYjNRdFlXTmpMV2hrY2lJK1BHUnBkaUJqYkdGemN6MGliM1F0YUc5emRDMW9aSElpUGp4b05DQmpiR0Z6Y3owaWIzUXRhRzl6ZEMxdVlXMWxJajQ4TDJnMFBqeG9OQ0JqYkdGemN6MGliM1F0YUc5emRDMWtaWE5qSWo0OEwyZzBQanh6Y0dGdUlHTnNZWE56UFNKdmRDMW9iM04wTFdWNGNHRnVaQ0krVm1sbGR5QkRiMjlyYVdWelBDOXpjR0Z1UGp3dlpHbDJQandoTFMwZ2RHOW5aMnhsY3lCaGJtUWdZWEp5YjNjZ0xTMCtQR1JwZGlCamJHRnpjejBpYjNRdGRHZHNMV051ZEhJaVBqd3ZaR2wyUGp3dmMyVmpkR2x2Ymo0OFpHbDJJR05zWVhOelBTSnZkQzFoWTJNdGRIaDBJajQ4WkdsMklHTnNZWE56UFNKdmRDMW9iM04wTFc5d2RITWlQandoTFMwZ1NFOVRWQ0JNU1ZOVUlGWkpSVmNnVlZCRVFWUkZJQ29xS2lBdExUNDhkV3dnWTJ4aGMzTTlJbTkwTFdodmMzUXRiM0IwSWo0OGJHa2dZMnhoYzNNOUltOTBMV2h2YzNRdGFXNW1ieUkrUEdSc1BqeGtkRDVPWVcxbFBDOWtkRDQ4WkdRK1kyOXZhMmxsSUc1aGJXVThMMlJrUGp3dlpHdytQQzlzYVQ0OEwzVnNQandoTFMwZ1NFOVRWQ0JNU1ZOVUlGWkpSVmNnVlZCRVFWUkZJRVZPUkNBcUtpb2dMUzArUEM5a2FYWStQQzlrYVhZK1BDOXNhVDQ4TDNWc1BqeDFiQ0JwWkQwaWIzUXRkbVZ1TFd4emRDSStQR3hwSUdOc1lYTnpQU0p2ZEMxMlpXNHRhWFJsYlNJK1BHSjFkSFJ2YmlCamJHRnpjejBpYjNRdGRtVnVMV0p2ZUNJZ1lYSnBZUzFsZUhCaGJtUmxaRDBpWm1Gc2MyVWlQand2WW5WMGRHOXVQanh6WldOMGFXOXVJR05zWVhOelBTSnZkQzFoWTJNdGFHUnlJajQ4SVMwdElGWmxibVJ2Y2lCdVlXMWxJSEJ2YkdsamVTQnNhVzVySUMwdFBqeGthWFlnWTJ4aGMzTTlJbTkwTFhabGJpMW9aSElpUGp4b05DQmpiR0Z6Y3owaWIzUXRkbVZ1TFc1aGJXVWlQand2YURRK1BHRWdZMnhoYzNNOUltOTBMWFpsYmkxc2FXNXJJaUJvY21WbVBTSWpJajVXYVdWM0lGQnlhWFpoWTNrZ1RtOTBhV05sUEM5aFBqeGljajQ4WVNCamJHRnpjejBpYjNRdGRtVnVMV3hsWjJOc1lXbHRMV3hwYm1zaUlHaHlaV1k5SWlNaVBsWnBaWGNnVEdWbklFbHVkQ0JEYkdGcGJTQk9iM1JwWTJVOEwyRStQQzlrYVhZK1BDRXRMU0IwYjJkbmJHVnpJR0Z1WkNCaGNuSnZkeUF0TFQ0OFpHbDJJR05zWVhOelBTSnZkQzEwWjJ3dFkyNTBjaUkrUEM5a2FYWStQQzl6WldOMGFXOXVQanhrYVhZZ1kyeGhjM005SW05MExXRmpZeTEwZUhRaVBqeDFiQ0JqYkdGemN6MGliM1F0ZG1WdUxXUmxkSE1pUGp4c2FTQmpiR0Z6Y3owaWIzUXRkbVZ1TFdScGMyTWlQand2YkdrK1BHeHBJR05zWVhOelBTSnZkQzEyWlc0dGNIVnlJajQ4TDJ4cFBqd3ZkV3crUEM5a2FYWStQQzlzYVQ0OEwzVnNQand2WkdsMlBqd3ZaR2wyUGp3dmMyVmpkR2x2Ymo0OEwzTmxZM1JwYjI0K1BHUnBkaUJqYkdGemN6MGliM1F0Y0dNdFptOXZkR1Z5SUc5MExYQmpMWE5qY205c2JHSmhjaUkrUEdScGRpQmpiR0Z6Y3owaWIzUXRZblJ1TFdOdmJuUmhhVzVsY2lJK1BHSjFkSFJ2YmlCamJHRnpjejBpYjNRdGNHTXRjbVZtZFhObExXRnNiQzFvWVc1a2JHVnlJaUJ2ZEMxaWRYUjBiMjR0YjNKa1pYSTlJakVpUGxKbGFtVmpkQ0JCYkd3OEwySjFkSFJ2Ymo0Z1BHSjFkSFJ2YmlCamJHRnpjejBpYzJGMlpTMXdjbVZtWlhKbGJtTmxMV0owYmkxb1lXNWtiR1Z5SUc5dVpYUnlkWE4wTFdOc2IzTmxMV0owYmkxb1lXNWtiR1Z5SWlCdmRDMWlkWFIwYjI0dGIzSmtaWEk5SWpJaVBsTmhkbVVnVFhrZ1VISmxabVZ5Wlc1alpUd3ZZblYwZEc5dVBqd3ZaR2wyUGp3aExTMGdSbTl2ZEdWeUlHeHZaMjhnTFMwK1BHUnBkaUJqYkdGemN6MGliM1F0Y0dNdFptOXZkR1Z5TFd4dloyOGlQanhoSUdoeVpXWTlJbWgwZEhCek9pOHZiMjVsZEhKMWMzUXVZMjl0TDNCdmQyVnlaV1JpZVc5dVpYUnlkWE4wSWlCMFlYSm5aWFE5SWw5aWJHRnVheUlnY21Wc1BTSnViMjl3Wlc1bGNpQnViM0psWm1WeWNtVnlJajQ4YVcxbklHRnNkRDBpVUc5M1pYSmxaQ0JpZVNCUGJtVjBjblZ6ZENJK1BDOWhQand2WkdsMlBqd3ZaR2wyUGp3aExTMGdRMjl2YTJsbElITjFZbWR5YjNWd0lHTnZiblJoYVc1bGNpQXRMVDQ4WkdsMklHTnNZWE56UFNKdmRDMXpkV0puY25BdFkyNTBjaUkrUEhWc0lHTnNZWE56UFNKdmRDMXpkV0puY25CeklqNDhiR2tnWTJ4aGMzTTlJbTkwTFhOMVltZHljQ0krUEdnMVBsUmhjbWRsZEdsdVp5QkRiMjlyYVdWelBDOW9OVDQ4WkdsMklHTnNZWE56UFNKdmRDMTBaMnd0WTI1MGNpQnZkQzF6ZFdKbmNuQXRkR2RzSWo0OEwyUnBkajQ4Y0NCamJHRnpjejBpYjNRdGMzVmlaM0p3TFdSbGMyTWlQand2Y0Q0OEwyeHBQand2ZFd3K1BDOWthWFkrUENFdExTQldaVzVrYjNJZ2JHbHpkQ0JzYVc1cklDMHRQanhrYVhZZ1kyeGhjM005SW05MExYWnNjM1F0WTI1MGNpSStQR0oxZEhSdmJpQmpiR0Z6Y3owaWIzUXRiR2x1YXkxaWRHNGdZMkYwWldkdmNua3RkbVZ1Wkc5eWN5MXNhWE4wTFdoaGJtUnNaWElpUGxacFpYY2dWbVZ1Wkc5eUlFeHBjM1E4TDJKMWRIUnZiajQ4TDJScGRqNDhJUzB0SUVOdmIydHBaU0JzYjNOMElHeHBibXNnTFMwK1BHUnBkaUJqYkdGemN6MGliM1F0YUd4emRDMWpiblJ5SWo0OFluVjBkRzl1SUdOc1lYTnpQU0p2ZEMxc2FXNXJMV0owYmlCallYUmxaMjl5ZVMxb2IzTjBMV3hwYzNRdGFHRnVaR3hsY2lJK1NHOXpkQ0JNYVhOMFBDOWlkWFIwYjI0K1BDOWthWFkrUENFdExTQlViMmRuYkdVZ1NGUk5UQ0JsYkdWdFpXNTBJQzB0UGp4a2FYWWdZMnhoYzNNOUltOTBMWFJuYkNJK1BHbHVjSFYwSUhSNWNHVTlJbU5vWldOclltOTRJaUJ1WVcxbFBTSnpkMmwwWTJnaUlHbGtQU0p6ZDJsMFkyZ3RhV1FpUGlBOGJHRmlaV3dnWTJ4aGMzTTlJbTkwTFhOM2FYUmphQ0lnWm05eVBTSnZkQzF6ZDJsMFkyZ3RhV1FpUGp4emNHRnVJR05zWVhOelBTSnZkQzF6ZDJsMFkyZ3RibTlpSWo0OEwzTndZVzQrSUR4emNHRnVJR05zWVhOelBTSnZkQzFzWVdKbGJDMTBlSFFpUGxOM2FYUmphQ0JNWVdKbGJEd3ZjM0JoYmo0OEwyeGhZbVZzUGlBOGMzQmhiaUJqYkdGemN6MGliM1F0YkdGaVpXd3RjM1JoZEhWeklqNXNZV0psYkR3dmMzQmhiajQ4TDJScGRqNDhJUzB0SUVOb1pXTnJZbTk0SUVoVVRVd2dMUzArUEdScGRpQmpiR0Z6Y3owaWIzUXRZMmhyWW05NElqNDhhVzV3ZFhRZ2FXUTlJbU5vYTJKdmVDMXBaQ0lnZEhsd1pUMGlZMmhsWTJ0aWIzZ2lQaUE4YkdGaVpXd2dabTl5UFNKamFHdGliM2d0YVdRaVBqeHpjR0Z1SUdOc1lYTnpQU0p2ZEMxc1lXSmxiQzEwZUhRaVBtTm9aV05yWW05NElHeGhZbVZzUEM5emNHRnVQand2YkdGaVpXdytJRHh6Y0dGdUlHTnNZWE56UFNKdmRDMXNZV0psYkMxemRHRjBkWE1pUG14aFltVnNQQzl6Y0dGdVBqd3ZaR2wyUGp3aExTMGdjR3gxY3lCdGFXNTFjeTB0UGp4a2FYWWdZMnhoYzNNOUltOTBMWEJzZFhNdGJXbHVkWE1pUGp4emNHRnVQand2YzNCaGJqNDhjM0JoYmo0OEwzTndZVzQrUEM5a2FYWStQQ0V0TFNCQmNuSnZkeUJUVmtjZ1pXeGxiV1Z1ZENBdExUNDhaR2wySUdOc1lYTnpQU0p2ZEMxaGNuY3RZMjUwY2lJK1BITjJaeUJqYkdGemN6MGliM1F0WVhKM0lpQmhjbWxoTFdocFpHUmxiajBpZEhKMVpTSWdabTlqZFhOaFlteGxQU0ptWVd4elpTSWdaR0YwWVMxd2NtVm1hWGc5SW1aaGN5SWdaR0YwWVMxcFkyOXVQU0pqWVhKbGRDMXlhV2RvZENJZ2NtOXNaVDBpYVcxbklpQjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4T1RJZ05URXlJajQ4Y0dGMGFDQm1hV3hzUFNKamRYSnlaVzUwUTI5c2IzSWlJR1E5SWsweE5qWXVPU0F5TmpRdU5Xd3RNVEUzTGpnZ01URTJZeTAwTGpjZ05DNDNMVEV5TGpNZ05DNDNMVEUzSURCc0xUY3VNUzAzTGpGakxUUXVOeTAwTGpjdE5DNDNMVEV5TGpNZ01DMHhOMHd4TWpjdU15QXlOVFlnTWpVdU1TQXhOVFV1Tm1NdE5DNDNMVFF1TnkwMExqY3RNVEl1TXlBd0xURTNiRGN1TVMwM0xqRmpOQzQzTFRRdU55QXhNaTR6TFRRdU55QXhOeUF3YkRFeE55NDRJREV4Tm1NMExqWWdOQzQzSURRdU5pQXhNaTR6TFM0eElERTNlaUkrUEM5d1lYUm9Qand2YzNablBqd3ZaR2wyUGp3aExTMGdRV05qYjNKa2FXOXVJR0poYzJsaklHVnNaVzFsYm5RZ0xTMCtQR1JwZGlCamJHRnpjejBpYjNRdFlXTmpMV051ZEhJaVBqeGlkWFIwYjI0Z1lYSnBZUzFsZUhCaGJtUmxaRDBpWm1Gc2MyVWlJRzkwTFdGalkyOXlaR2x2YmowaWRISjFaU0krUEM5aWRYUjBiMjQrUEdScGRpQmpiR0Z6Y3owaWIzUXRZV05qTFdoa2NpSStQQ0V0TFNCQlkyTnZjbVJwYjI0Z2FHVmhaR1Z5SUdOdmJuUmxiblFnTFMwK1BDOWthWFkrUEdScGRpQmpiR0Z6Y3owaWIzUXRZV05qTFhSNGRDSStQQ0V0TFNCQlkyTnZjbWxrYjI0Z1kyOXVkR1Z1ZENBdExUNDhMMlJwZGo0OEwyUnBkajQ4YzNCaGJpQmpiR0Z6Y3owaWIzUXRjMk55YmkxeVpISWlJR0Z5YVdFdFlYUnZiV2xqUFNKMGNuVmxJaUJoY21saExXeHBkbVU5SW5CdmJHbDBaU0krUEM5emNHRnVQandoTFMwZ1ZtVnVaRzl5SUZObGNuWnBZMlVnWTI5dWRHRnBibVZ5SUdGdVpDQnBkR1Z0SUhSbGJYQnNZWFJsSUMwdFBqeHpaV04wYVc5dUlHTnNZWE56UFNKdmRDMXpaR3N0Y205M0lHOTBMWFp1WkMxelpYSjJJajQ4WkdsMklHTnNZWE56UFNKdmRDMTJibVF0YzJWeWRpMW9aSEl0WTI1MGNpSStQR2cwSUdOc1lYTnpQU0p2ZEMxMmJtUXRjMlZ5ZGkxb1pISWlQbFpsYm1SdmNpQk9ZVzFsY3p3dmFEUStQQzlrYVhZK1BHUnBkaUJqYkdGemN6MGliM1F0ZG01a0xXeHpkQzFqYjI1MElqNDhaR2wySUdOc1lYTnpQU0p2ZEMxaFkyTnZjbVJwYjI0dGJHRjViM1YwSUc5MExXTmhkQzFwZEdWdElHOTBMWFp1WkMxcGRHVnRJajQ4WW5WMGRHOXVJR0Z5YVdFdFpYaHdZVzVrWldROUltWmhiSE5sSWlCdmRDMWhZMk52Y21ScGIyNDlJblJ5ZFdVaVBqd3ZZblYwZEc5dVBqd2hMUzBnUVdOamIzSmthVzl1SUdobFlXUmxjaUF0TFQ0OFpHbDJJR05zWVhOelBTSnZkQzFoWTJNdGFHUnlJajQ4YURRZ1kyeGhjM005SW05MExXTmhkQzFvWldGa1pYSWlQa2x1Wm05eWJXRjBhVzl1SUhOMGIzSmhaMlVnWVc1a0lHRmpZMlZ6Y3lCMFpYTjBQQzlvTkQ0OEwyUnBkajQ4SVMwdElHRmpZMjl5WkdsdmJpQmtaWFJoYVd3Z0xTMCtQR1JwZGlCamJHRnpjejBpYjNRdFlXTmpMV2R5Y0dOdWRISWdiM1F0WVdOakxYUjRkQ0J2ZEMxMmJtUXRhVzVtYnkxamJuUnlJajQ4WkdsMklHTnNZWE56UFNKdmRDMTJibVF0YVc1bWJ5SStQR2cxSUdOc1lYTnpQU0p2ZEMxMmJtUXRiR0pzSWo1VFpYSjJhV05sSUU1aGJXVThMMmcxUGp4b05pQmpiR0Z6Y3owaWIzUXRkbTVrTFdOdWRDSStSMjl2WjJ4bElFMWhjSE04TDJnMlBqd3ZaR2wyUGp3dlpHbDJQand2WkdsMlBqd3ZaR2wyUGp3dmMyVmpkR2x2Ymo0OEwyUnBkajQ4TDJScGRqND0iLAogICAgICAgICAgICAiY3NzIjogIiNvbmV0cnVzdC1wYy1zZGsub3RQY0NlbnRlcnstLW90LWZvb3Rlci1zcGFjZTogMTYwcHg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmZpeGVkO21hcmdpbjowIGF1dG87dG9wOjUlO3JpZ2h0OjA7bGVmdDowO3dpZHRoOjQwJTttYXgtd2lkdGg6NTc1cHg7bWluLXdpZHRoOjU3NXB4O2JvcmRlci1yYWRpdXM6Mi41cHg7ei1pbmRleDoyMTQ3NDgzNjQ3O2JhY2tncm91bmQtY29sb3I6I2ZmZjstd2Via2l0LWJveC1zaGFkb3c6MHB4IDJweCAxMHB4IC0zcHggIzk5OTstbW96LWJveC1zaGFkb3c6MHB4IDJweCAxMHB4IC0zcHggIzk5OTtib3gtc2hhZG93OjBweCAycHggMTBweCAtM3B4ICM5OTl9I29uZXRydXN0LXBjLXNkay5vdFBjQ2VudGVyW2Rpcj1ydGxde3JpZ2h0OjA7bGVmdDowfSNvbmV0cnVzdC1wYy1zZGsub3RSZWxGb250e2ZvbnQtc2l6ZToxcmVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LW9wdG91dC1zaWduYWx7bWFyZ2luLXRvcDouNjI1cmVtfSNvbmV0cnVzdC1wYy1zZGsgI290LWFkZHRsLXZlbmxzdCAub3QtYXJ3LWNudHIsI29uZXRydXN0LXBjLXNkayAjb3QtYWRkdGwtdmVubHN0IC5vdC1wbHVzLW1pbnVzLCNvbmV0cnVzdC1wYy1zZGsgLm90LWhpZGUtdGdse3Zpc2liaWxpdHk6aGlkZGVufSNvbmV0cnVzdC1wYy1zZGsgI290LWFkZHRsLXZlbmxzdCAub3QtYXJ3LWNudHIgKiwjb25ldHJ1c3QtcGMtc2RrICNvdC1hZGR0bC12ZW5sc3QgLm90LXBsdXMtbWludXMgKiwjb25ldHJ1c3QtcGMtc2RrIC5vdC1oaWRlLXRnbCAqe3Zpc2liaWxpdHk6aGlkZGVufSNvbmV0cnVzdC1wYy1zZGsgI290LWduLXZlbmxzdCAub3QtdmVuLWl0ZW0gLm90LWFjYy1oZHJ7bWluLWhlaWdodDo0MHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXBjLWhlYWRlcntoZWlnaHQ6MzlweDtwYWRkaW5nOjEwcHggMCAxMHB4IDMwcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U5ZTllOX0jb25ldHJ1c3QtcGMtc2RrICNvdC1wYy10aXRsZSwjb25ldHJ1c3QtcGMtc2RrICNvdC1jYXRlZ29yeS10aXRsZSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1jYXQtaGVhZGVyLCNvbmV0cnVzdC1wYy1zZGsgI290LWxzdC10aXRsZSwjb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4taGRyIC5vdC12ZW4tbmFtZSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1hbHdheXMtYWN0aXZle2ZvbnQtd2VpZ2h0OmJvbGQ7Y29sb3I6ZGltZ3JheX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hbHdheXMtYWN0aXZlLWdyb3VwIC5vdC1jYXQtaGVhZGVye3dpZHRoOjU1JTtmb250LXdlaWdodDo3MDB9I29uZXRydXN0LXBjLXNkayAub3QtY2F0LWl0ZW0gcDpub3QoW3JvbGU9aGVhZGluZ10pe2NsZWFyOmJvdGg7ZmxvYXQ6bGVmdDttYXJnaW4tdG9wOjEwcHg7bWFyZ2luLWJvdHRvbTo1cHg7bGluZS1oZWlnaHQ6MS41O2ZvbnQtc2l6ZTouODEyZW07Y29sb3I6ZGltZ3JheX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jbG9zZS1pY29ue2hlaWdodDo0NHB4O3dpZHRoOjQ0cHg7YmFja2dyb3VuZC1zaXplOjEwcHh9I29uZXRydXN0LXBjLXNkayAjb3QtcGMtdGl0bGV7ZmxvYXQ6bGVmdDtmb250LXNpemU6MWVtO2xpbmUtaGVpZ2h0OjEuNTttYXJnaW4tYm90dG9tOjEwcHg7bWFyZ2luLXRvcDoxMHB4O3dpZHRoOjEwMCV9I29uZXRydXN0LXBjLXNkayAjYWNjZXB0LXJlY29tbWVuZGVkLWJ0bi1oYW5kbGVye3Bvc2l0aW9uOnJlbGF0aXZlO291dGxpbmUtb2Zmc2V0Oi0xcHh9I29uZXRydXN0LXBjLXNkayAjb3QtcGMtZGVzY3tjbGVhcjpib3RoO3dpZHRoOjEwMCU7Zm9udC1zaXplOi44MTJlbTtsaW5lLWhlaWdodDoxLjU7bWFyZ2luLWJvdHRvbToyNXB4fSNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWRlc2MgKntmb250LXNpemU6aW5oZXJpdDtsaW5lLWhlaWdodDppbmhlcml0fSNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWRlc2MgdWwgbGl7cGFkZGluZzoxMHB4IDBweH0jb25ldHJ1c3QtcGMtc2RrIGF7Y29sb3I6IzY1NjU2NTtjdXJzb3I6cG9pbnRlcn0jb25ldHJ1c3QtcGMtc2RrIGE6aG92ZXJ7Y29sb3I6IzM4NjBiZX0jb25ldHJ1c3QtcGMtc2RrIGxhYmVse21hcmdpbi1ib3R0b206MH0jb25ldHJ1c3QtcGMtc2RrICN2ZHItbHN0LWRzY3tmb250LXNpemU6LjgxMmVtO2xpbmUtaGVpZ2h0OjEuNTtwYWRkaW5nOjEwcHggMTVweCA1cHggMTVweH0jb25ldHJ1c3QtcGMtc2RrIGJ1dHRvbnttYXgtd2lkdGg6Mzk0cHg7cGFkZGluZzoxMnB4IDMwcHg7bGluZS1oZWlnaHQ6MTt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d29yZC13cmFwOmJyZWFrLXdvcmQ7d2hpdGUtc3BhY2U6bm9ybWFsO2ZvbnQtd2VpZ2h0OmJvbGQ7aGVpZ2h0OmF1dG99I29uZXRydXN0LXBjLXNkayAub3QtbGluay1idG57cGFkZGluZzowO21hcmdpbi1ib3R0b206MDtib3JkZXI6MDtmb250LXdlaWdodDpub3JtYWw7bGluZS1oZWlnaHQ6bm9ybWFsO3dpZHRoOmF1dG87aGVpZ2h0OmF1dG99I29uZXRydXN0LXBjLXNkayAjb3QtcGMtY29udGVudHtwb3NpdGlvbjphYnNvbHV0ZTtvdmVyZmxvdy15OnNjcm9sbDtwYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6MzBweDt0b3A6NjBweDtib3R0b206MTEwcHg7bWFyZ2luOjFweCAzcHggMCAzMHB4O3dpZHRoOmNhbGMoMTAwJSAtIDYzcHgpfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LWFsd2F5cy1hY3RpdmUsI29uZXRydXN0LXBjLXNkayAub3QtY2F0LWdycCAub3QtYWx3YXlzLWFjdGl2ZXtmbG9hdDpyaWdodDtjbGVhcjpub25lO2NvbG9yOiMzODYwYmU7bWFyZ2luOjA7Zm9udC1zaXplOi44MTNlbTtsaW5lLWhlaWdodDoxLjN9I29uZXRydXN0LXBjLXNkayAub3QtcGMtc2Nyb2xsYmFyOjotd2Via2l0LXNjcm9sbGJhci10cmFja3ttYXJnaW4tcmlnaHQ6MjBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjExcHh9I29uZXRydXN0LXBjLXNkayAub3QtcGMtc2Nyb2xsYmFyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojZDhkOGQ4fSNvbmV0cnVzdC1wYy1zZGsgaW5wdXRbdHlwZT1jaGVja2JveF06Zm9jdXMrLm90LWFjYy1oZHJ7b3V0bGluZTojMDAwIDFweCBzb2xpZH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1zY3JvbGxiYXJ7c2Nyb2xsYmFyLWFycm93LWNvbG9yOiNkOGQ4ZDg7c2Nyb2xsYmFyLWRhcmtzaGFkb3ctY29sb3I6I2Q4ZDhkODtzY3JvbGxiYXItZmFjZS1jb2xvcjojZDhkOGQ4O3Njcm9sbGJhci1zaGFkb3ctY29sb3I6I2Q4ZDhkOH0jb25ldHJ1c3QtcGMtc2RrIC5zYXZlLXByZWZlcmVuY2UtYnRuLWhhbmRsZXJ7bWFyZ2luLXJpZ2h0OjIwcHh9I29uZXRydXN0LXBjLXNkayAub3QtcGMtcmVmdXNlLWFsbC1oYW5kbGVye21hcmdpbi1yaWdodDoxMHB4fSNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWRlc2MgLnByaXZhY3ktbm90aWNlLWxpbmt7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6OHB4fSNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWRlc2MgLm90LWltcHJpbnQtaGFuZGxlcnttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDo4cHh9I29uZXRydXN0LXBjLXNkayAub3Qtc3ViZ3JwLWNudHJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Y2xlYXI6Ym90aDt3aWR0aDoxMDAlO3BhZGRpbmctdG9wOjE1cHh9I29uZXRydXN0LXBjLXNkayAub3Qtc3dpdGNoKy5vdC1zdWJncnAtY250cntwYWRkaW5nLXRvcDoxMHB4fSNvbmV0cnVzdC1wYy1zZGsgdWwub3Qtc3ViZ3Jwc3ttYXJnaW46MDtmb250LXNpemU6aW5pdGlhbH0jb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgbGkgcCwjb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgbGkgaDV7Zm9udC1zaXplOi44MTNlbTtsaW5lLWhlaWdodDoxLjQ7Y29sb3I6ZGltZ3JheX0jb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgLm90LXN3aXRjaHttaW4taGVpZ2h0OmF1dG99I29uZXRydXN0LXBjLXNkayB1bC5vdC1zdWJncnBzIC5vdC1zd2l0Y2gtbm9ie3RvcDowfSNvbmV0cnVzdC1wYy1zZGsgdWwub3Qtc3ViZ3JwcyAub3QtYWNjLWhkcntkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxMDAlfSNvbmV0cnVzdC1wYy1zZGsgdWwub3Qtc3ViZ3JwcyAub3QtYWNjLXR4dHttYXJnaW46MH0jb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgbGl7cGFkZGluZzowO2JvcmRlcjpub25lfSNvbmV0cnVzdC1wYy1zZGsgdWwub3Qtc3ViZ3JwcyBsaSBoNSwjb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgbGkgcFthcmlhLWxldmVsPVwiNVwiXXtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6NXB4O2ZvbnQtd2VpZ2h0OmJvbGQ7bWFyZ2luLWJvdHRvbTowO2Zsb2F0OmxlZnR9I29uZXRydXN0LXBjLXNkayBsaS5vdC1zdWJncnB7bWFyZ2luLWxlZnQ6MjBweDtvdmVyZmxvdzphdXRvfSNvbmV0cnVzdC1wYy1zZGsgbGkub3Qtc3ViZ3JwPmg1LCNvbmV0cnVzdC1wYy1zZGsgbGkub3Qtc3ViZ3JwPnBbYXJpYS1sZXZlbD1cIjVcIl17d2lkdGg6Y2FsYygxMDAlIC0gMTAwcHgpfSNvbmV0cnVzdC1wYy1zZGsgLm90LWNhdC1pdGVtIHA+dWwsI29uZXRydXN0LXBjLXNkayBsaS5vdC1zdWJncnAgcD51bHttYXJnaW46MHB4O2xpc3Qtc3R5bGU6ZGlzYzttYXJnaW4tbGVmdDoxNXB4O2ZvbnQtc2l6ZTppbmhlcml0fSNvbmV0cnVzdC1wYy1zZGsgLm90LWNhdC1pdGVtIHA+dWwgbGksI29uZXRydXN0LXBjLXNkayBsaS5vdC1zdWJncnAgcD51bCBsaXtmb250LXNpemU6aW5oZXJpdDtwYWRkaW5nLXRvcDoxMHB4O3BhZGRpbmctbGVmdDowcHg7cGFkZGluZy1yaWdodDowcHg7Ym9yZGVyOm5vbmV9I29uZXRydXN0LXBjLXNkayAub3QtY2F0LWl0ZW0gcD51bCBsaTpsYXN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgbGkub3Qtc3ViZ3JwIHA+dWwgbGk6bGFzdC1jaGlsZHtwYWRkaW5nLWJvdHRvbToxMHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXBjLWxvZ297aGVpZ2h0OjQwcHg7d2lkdGg6MTIwcHh9I29uZXRydXN0LXBjLXNkayAub3QtcGMtZm9vdGVye3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowcHg7d2lkdGg6MTAwJTttYXgtaGVpZ2h0OnZhcigtLW90LWZvb3Rlci1zcGFjZSk7Ym9yZGVyLXRvcDoxcHggc29saWQgI2Q4ZDhkOH0jb25ldHJ1c3QtcGMtc2RrLm90LWZ0ci1zdGFja2VkICNvdC1wYy1sc3R7Ym90dG9tOnZhcigtLW90LWZvb3Rlci1zcGFjZSl9I29uZXRydXN0LXBjLXNkay5vdC1mdHItc3RhY2tlZCAjb3QtcGMtY29udGVudHtib3R0b206dmFyKC0tb3QtZm9vdGVyLXNwYWNlKX0jb25ldHJ1c3QtcGMtc2RrLm90LWZ0ci1zdGFja2VkIC5vdC1wYy1mb290ZXIgYnV0dG9ue21hcmdpbi1sZWZ0OjE1cHggIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MTVweCAhaW1wb3J0YW50O3dpZHRoOmNhbGMoMTAwJSAtIDMzcHgpO21heC13aWR0aDpub25lfSNvbmV0cnVzdC1wYy1zZGsub3QtZnRyLXN0YWNrZWQgLm90LXBjLWZvb3RlciBidXR0b246bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tYm90dG9tOjB9I29uZXRydXN0LXBjLXNkayAub3QtcGMtZm9vdGVyLWxvZ297aGVpZ2h0OjMwcHg7d2lkdGg6MTAwJTt0ZXh0LWFsaWduOnJpZ2h0O2JhY2tncm91bmQ6I2Y0ZjRmNH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1mb290ZXItbG9nbyBhe2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi10b3A6NXB4O21hcmdpbi1yaWdodDoxMHB4fSNvbmV0cnVzdC1wYy1zZGtbZGlyPXJ0bF0gLm90LXBjLWZvb3Rlci1sb2dve2RpcmVjdGlvbjpydGx9I29uZXRydXN0LXBjLXNka1tkaXI9cnRsXSAub3QtcGMtZm9vdGVyLWxvZ28gYXttYXJnaW4tcmlnaHQ6MjVweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC10Z2x7ZmxvYXQ6cmlnaHQ7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfSNvbmV0cnVzdC1wYy1zZGsgLm90LXRnbCBpbnB1dDpjaGVja2VkKy5vdC1zd2l0Y2ggLm90LXN3aXRjaC1ub2J7YmFja2dyb3VuZC1jb2xvcjojNDY4MjU0O2JvcmRlcjoxcHggc29saWQgI2ZmZn0jb25ldHJ1c3QtcGMtc2RrIC5vdC10Z2wgaW5wdXQ6Y2hlY2tlZCsub3Qtc3dpdGNoIC5vdC1zd2l0Y2gtbm9iOmJlZm9yZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDIwcHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgyMHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgyMHB4KTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiNmZmZ9I29uZXRydXN0LXBjLXNkayAub3QtdGdsIGlucHV0OmZvY3VzKy5vdC1zd2l0Y2h7b3V0bGluZTojMDAwIHNvbGlkIDFweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1zd2l0Y2h7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6NDVweDtoZWlnaHQ6MjVweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1zd2l0Y2gtbm9ie3Bvc2l0aW9uOmFic29sdXRlO2N1cnNvcjpwb2ludGVyO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6Izc2NzY3Njtib3JkZXI6MXB4IHNvbGlkICNkZGQ7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4gMHM7LW1vei10cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbiAwczstby10cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbiAwczstd2Via2l0LXRyYW5zaXRpb246YWxsIC4ycyBlYXNlLWluIDBzO2JvcmRlci1yYWRpdXM6MjBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1zd2l0Y2gtbm9iOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTtjb250ZW50OlwiXCI7aGVpZ2h0OjE4cHg7d2lkdGg6MThweDtib3R0b206M3B4O2xlZnQ6M3B4O2JhY2tncm91bmQtY29sb3I6I2ZmZjstd2Via2l0LXRyYW5zaXRpb246LjRzO3RyYW5zaXRpb246LjRzO2JvcmRlci1yYWRpdXM6MjBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jaGtib3ggaW5wdXR7d2lkdGg6MjhweCAhaW1wb3J0YW50O2hlaWdodDoyOHB4ICFpbXBvcnRhbnR9I29uZXRydXN0LXBjLXNkayAub3QtY2hrYm94IGlucHV0OmNoZWNrZWR+bGFiZWw6OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiMzODYwYmV9I29uZXRydXN0LXBjLXNkayAub3QtY2hrYm94IGlucHV0K2xhYmVsOjphZnRlcntjb250ZW50Om5vbmU7Y29sb3I6I2ZmZn0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jaGtib3ggaW5wdXQ6Y2hlY2tlZCtsYWJlbDo6YWZ0ZXJ7Y29udGVudDpcIlwifSNvbmV0cnVzdC1wYy1zZGsgLm90LWNoa2JveCBpbnB1dDpmb2N1cytsYWJlbDo6YmVmb3Jle291dGxpbmUtc3R5bGU6c29saWQ7b3V0bGluZS13aWR0aDoycHg7b3V0bGluZS1zdHlsZTphdXRvfSNvbmV0cnVzdC1wYy1zZGsgLm90LWNoa2JveCBpbnB1dFthcmlhLWNoZWNrZWQ9bWl4ZWRdfmxhYmVsOjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojMzg2MGJlfSNvbmV0cnVzdC1wYy1zZGsgLm90LWNoa2JveCBpbnB1dFthcmlhLWNoZWNrZWQ9bWl4ZWRdK2xhYmVsOjphZnRlcntjb250ZW50OlwiXCJ9I29uZXRydXN0LXBjLXNkayAub3QtY2hrYm94IGxhYmVse3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZy1sZWZ0OjMwcHg7Y3Vyc29yOnBvaW50ZXI7Zm9udC13ZWlnaHQ6NTAwO21pbi1oZWlnaHQ6MjhweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jaGtib3ggbGFiZWw6OmJlZm9yZSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1jaGtib3ggbGFiZWw6OmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO2NvbnRlbnQ6XCJcIjtkaXNwbGF5OmlubGluZS1ibG9jaztib3JkZXItcmFkaXVzOjNweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jaGtib3ggbGFiZWw6OmJlZm9yZXtoZWlnaHQ6MThweDt3aWR0aDoxOHB4O2JvcmRlcjoxcHggc29saWQgIzM4NjBiZTtsZWZ0OjRweDt0b3A6NHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWNoa2JveCBsYWJlbDo6YWZ0ZXJ7aGVpZ2h0OjVweDt3aWR0aDo5cHg7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkO2JvcmRlci1ib3R0b206M3B4IHNvbGlkO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTstby10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7LW1zLXRyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTtsZWZ0OjhweDt0b3A6OHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWxhYmVsLXR4dHtkaXNwbGF5Om5vbmV9I29uZXRydXN0LXBjLXNkayAub3QtY2hrYm94IGlucHV0LCNvbmV0cnVzdC1wYy1zZGsgLm90LXRnbCBpbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5OjA7d2lkdGg6MDtoZWlnaHQ6MH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hcnctY250cntmbG9hdDpyaWdodDtwb3NpdGlvbjpyZWxhdGl2ZTtwb2ludGVyLWV2ZW50czpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LWFydy1jbnRyIC5vdC1hcnd7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDttYXJnaW4tbGVmdDo1cHg7Y29sb3I6ZGltZ3JheTtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAxNTBtcyBlYXNlLWluIDBzOy1tb3otdHJhbnNpdGlvbjphbGwgMTUwbXMgZWFzZS1pbiAwczstby10cmFuc2l0aW9uOmFsbCAxNTBtcyBlYXNlLWluIDBzO3RyYW5zaXRpb246YWxsIDE1MG1zIGVhc2UtaW4gMHN9I29uZXRydXN0LXBjLXNkayBpbnB1dDpjaGVja2Vkfi5vdC1hY2MtaGRyIC5vdC1hcncsI29uZXRydXN0LXBjLXNkayBidXR0b25bYXJpYS1leHBhbmRlZD10cnVlXX4ub3QtYWNjLWhkciAub3QtYXJ3LWNudHIgc3Zne3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpOy1vLXRyYW5zZm9ybTpyb3RhdGUoOTBkZWcpOy1tcy10cmFuc2Zvcm06cm90YXRlKDkwZGVnKTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoOTBkZWcpfSNvbmV0cnVzdC1wYy1zZGsgaW5wdXRbdHlwZT1jaGVja2JveF06Zm9jdXMrLm90LWFjYy1oZHJ7b3V0bGluZTojMDAwIDFweCBzb2xpZH0jb25ldHJ1c3QtcGMtc2RrIC5vdC10Z2wtY250ciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1hcnctY250cntkaXNwbGF5OmlubGluZS1ibG9ja30jb25ldHJ1c3QtcGMtc2RrIC5vdC10Z2wtY250cntmbG9hdDpyaWdodDttYXJnaW4tdG9wOjJweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtY250IC5vdC10Z2wtY250cnttYXJnaW4tdG9wOjEwcHh9I29uZXRydXN0LXBjLXNkayAub3QtYWx3YXlzLWFjdGl2ZS1zdWJncm91cHt3aWR0aDphdXRvO3BhZGRpbmctbGVmdDowcHggIWltcG9ydGFudDt0b3A6M3B4O3Bvc2l0aW9uOnJlbGF0aXZlfSNvbmV0cnVzdC1wYy1zZGsgLm90LWxhYmVsLXN0YXR1c3tmb250LXNpemU6Ljc1ZW07ZGlzcGxheTpub25lO2ZvbnQtc2l6ZTouNzVlbTtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MnB4O3BhZGRpbmctcmlnaHQ6NXB4O2Zsb2F0OmxlZnR9I29uZXRydXN0LXBjLXNkayAub3QtYXJ3LWNudHJ7bWFyZ2luLXRvcDotMXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWFydy1jbnRyIHN2Z3std2Via2l0LXRyYW5zaXRpb246YWxsIDMwMG1zIGVhc2UtaW4gMHM7LW1vei10cmFuc2l0aW9uOmFsbCAzMDBtcyBlYXNlLWluIDBzOy1vLXRyYW5zaXRpb246YWxsIDMwMG1zIGVhc2UtaW4gMHM7dHJhbnNpdGlvbjphbGwgMzAwbXMgZWFzZS1pbiAwcztoZWlnaHQ6MTBweDt3aWR0aDoxMHB4fSNvbmV0cnVzdC1wYy1zZGsgaW5wdXQ6Y2hlY2tlZH4ub3QtYWNjLWhkciAub3QtYXJ3e3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpOy1vLXRyYW5zZm9ybTpyb3RhdGUoOTBkZWcpOy1tcy10cmFuc2Zvcm06cm90YXRlKDkwZGVnKTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoOTBkZWcpfSNvbmV0cnVzdC1wYy1zZGsgLm90LWFyd3t3aWR0aDoxMHB4O21hcmdpbi1sZWZ0OjE1cHg7dHJhbnNpdGlvbjphbGwgMzAwbXMgZWFzZS1pbiAwczstd2Via2l0LXRyYW5zaXRpb246YWxsIDMwMG1zIGVhc2UtaW4gMHM7LW1vei10cmFuc2l0aW9uOmFsbCAzMDBtcyBlYXNlLWluIDBzOy1vLXRyYW5zaXRpb246YWxsIDMwMG1zIGVhc2UtaW4gMHN9I29uZXRydXN0LXBjLXNkayAub3QtdmxzdC1jbnRye21hcmdpbi1ib3R0b206MH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1obHN0LWNudHJ7bWFyZ2luLXRvcDo1cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTAwJX0jb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS12ZW5kb3JzLWxpc3QtaGFuZGxlciwjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS12ZW5kb3JzLWxpc3QtaGFuZGxlcithLCNvbmV0cnVzdC1wYy1zZGsgLmNhdGVnb3J5LWhvc3QtbGlzdC1oYW5kbGVye2NsZWFyOmJvdGg7Y29sb3I6IzM4NjBiZTttYXJnaW4tbGVmdDowO2ZvbnQtc2l6ZTouODEzZW07dGV4dC1kZWNvcmF0aW9uOm5vbmU7ZmxvYXQ6bGVmdDtvdmVyZmxvdzpoaWRkZW59I29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXI6aG92ZXIsI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXIrYTpob3Zlciwjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS1ob3N0LWxpc3QtaGFuZGxlcjpob3Zlcnt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9I29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXIrYXtjbGVhcjpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZsc3QtY250ciBzdmcub3QtZXh0LWxuaywjb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4taGRyIHN2Zy5vdC1leHQtbG5re2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxM3B4O3dpZHRoOjEzcHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O21hcmdpbi1sZWZ0OjFweDttYXJnaW4tdG9wOjZweDtjdXJzb3I6cG9pbnRlcn0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4taGRyIHN2Zy5vdC1leHQtbG5re21hcmdpbi1ib3R0b206LTFweH0jb25ldHJ1c3QtcGMtc2RrIC5iYWNrLWJ0bi1oYW5kbGVye2ZvbnQtc2l6ZToxZW07dGV4dC1kZWNvcmF0aW9uOm5vbmV9I29uZXRydXN0LXBjLXNkayAuYmFjay1idG4taGFuZGxlcjpob3ZlcntvcGFjaXR5Oi42fSNvbmV0cnVzdC1wYy1zZGsgI290LWxzdC10aXRsZSBoMywjb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtdGl0bGUgcFthcmlhLWxldmVsPVwiM1wiXXtkaXNwbGF5OmlubGluZS1ibG9jazt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d29yZC13cmFwOmJyZWFrLXdvcmQ7bWFyZ2luLWJvdHRvbTowO2NvbG9yOiM2NTY1NjU7Zm9udC1zaXplOjFlbTtmb250LXdlaWdodDpib2xkO21hcmdpbi1sZWZ0OjE1cHh9I29uZXRydXN0LXBjLXNkayAjb3QtbHN0LXRpdGxle21hcmdpbjoxMHB4IDAgMTBweCAwcHg7Zm9udC1zaXplOjFlbTt0ZXh0LWFsaWduOmxlZnR9I29uZXRydXN0LXBjLXNkayAjb3QtcGMtaGRye21hcmdpbjowIDAgMCAzMHB4O2hlaWdodDphdXRvO3dpZHRoOmF1dG99I29uZXRydXN0LXBjLXNkayAjb3QtcGMtaGRyIGlucHV0OjpwbGFjZWhvbGRlcntjb2xvcjojNzA3MDcwO2ZvbnQtc3R5bGU6aXRhbGljfSNvbmV0cnVzdC1wYy1zZGsgI3ZlbmRvci1zZWFyY2gtaGFuZGxlcntoZWlnaHQ6MzFweDt3aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6NTBweDtmb250LXNpemU6LjhlbTtwYWRkaW5nLXJpZ2h0OjM1cHg7cGFkZGluZy1sZWZ0OjE1cHg7ZmxvYXQ6bGVmdDttYXJnaW4tbGVmdDoxNXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1uYW1le2Rpc3BsYXk6YmxvY2s7d2lkdGg6YXV0bztwYWRkaW5nLXJpZ2h0OjVweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtY250e292ZXJmbG93LXk6YXV0bzttYXJnaW4tbGVmdDoyMHB4O21hcmdpbi1yaWdodDo3cHg7d2lkdGg6Y2FsYygxMDAlIC0gMjdweCk7bWF4LWhlaWdodDpjYWxjKDEwMCUgLSA4MHB4KTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwgMCwgMCl9I29uZXRydXN0LXBjLXNkayAjb3QtcGMtbHN0e3dpZHRoOjEwMCU7Ym90dG9tOjEwMHB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo2MHB4fSNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWxzdDpub3QoLm90LWVuYmwtY2hyKSAub3QtdGdsLWNudHIgLm90LWFydy1jbnRyLCNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWxzdDpub3QoLm90LWVuYmwtY2hyKSAub3QtdGdsLWNudHIgLm90LWFydy1jbnRyICp7dmlzaWJpbGl0eTpoaWRkZW59I29uZXRydXN0LXBjLXNkayAjb3QtcGMtbHN0IC5vdC10Z2wtY250cntyaWdodDoxMnB4O3Bvc2l0aW9uOmFic29sdXRlfSNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWxzdCAub3QtYXJ3LWNudHJ7ZmxvYXQ6cmlnaHQ7cG9zaXRpb246cmVsYXRpdmV9I29uZXRydXN0LXBjLXNkayAjb3QtcGMtbHN0IC5vdC1hcnd7bWFyZ2luLWxlZnQ6MTBweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1sc3QgLm90LWFjYy1oZHJ7b3ZlcmZsb3c6aGlkZGVuO2N1cnNvcjpwb2ludGVyfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZsc3QtY250cntvdmVyZmxvdzpoaWRkZW59I29uZXRydXN0LXBjLXNkayAjb3Qtc2VsLWJsa3tvdmVyZmxvdzpoaWRkZW47d2lkdGg6MTAwJTtwb3NpdGlvbjpzdGlja3k7cG9zaXRpb246LXdlYmtpdC1zdGlja3k7dG9wOjA7ei1pbmRleDozfSNvbmV0cnVzdC1wYy1zZGsgI290LWJhY2stYXJ3e2hlaWdodDoxMnB4O3dpZHRoOjEycHh9I29uZXRydXN0LXBjLXNkayAub3QtbHN0LXN1Ymhkcnt3aWR0aDoxMDAlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfSNvbmV0cnVzdC1wYy1zZGsgLm90LXNlYXJjaC1jbnRye2Zsb2F0OmxlZnQ7d2lkdGg6NzglO3Bvc2l0aW9uOnJlbGF0aXZlfSNvbmV0cnVzdC1wYy1zZGsgLm90LXNlYXJjaC1jbnRyPnN2Z3t3aWR0aDozMHB4O2hlaWdodDozMHB4O3Bvc2l0aW9uOmFic29sdXRlO2Zsb2F0OmxlZnQ7cmlnaHQ6LTE1cHh9I29uZXRydXN0LXBjLXNkayAub3QtZmx0ci1jbnRye2Zsb2F0OnJpZ2h0O3JpZ2h0OjUwcHg7cG9zaXRpb246cmVsYXRpdmV9I29uZXRydXN0LXBjLXNkayAjb3QtZmlsdGVyLWxpc3QtaGVhZGVye21hcmdpbi10b3A6MjBweDttYXJnaW4tYm90dG9tOjEwcHg7ZmxvYXQ6bGVmdDttYXgtd2lkdGg6MTUwcHg7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6IzM4NjBiZTtmb250LXNpemU6LjllbTtmb250LXdlaWdodDpib2xkO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwKTtwYWRkaW5nOjFweCAxcHggMXB4IDE1cHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfSNvbmV0cnVzdC1wYy1zZGsgI2ZpbHRlci1idG4taGFuZGxlcntiYWNrZ3JvdW5kLWNvbG9yOiMzODYwYmU7Ym9yZGVyLXJhZGl1czoxN3B4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7LW1vei10cmFuc2l0aW9uOi4xcyBlYXNlOy1vLXRyYW5zaXRpb246LjFzIGVhc2U7LXdlYmtpdC10cmFuc2l0aW9uOjFzIGVhc2U7dHJhbnNpdGlvbjouMXMgZWFzZTtwYWRkaW5nOjA7bWFyZ2luOjB9I29uZXRydXN0LXBjLXNkayAjZmlsdGVyLWJ0bi1oYW5kbGVyOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzM4NjBiZX0jb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItYnRuLWhhbmRsZXIgc3Zne3dpZHRoOjEycHg7aGVpZ2h0OjEycHg7bWFyZ2luOjNweCAxMHB4IDAgMTBweDtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnN0YXRpYztyaWdodDphdXRvO3RvcDphdXRvfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1saW5rLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1sZWdjbGFpbS1saW5re2NvbG9yOiMzODYwYmU7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm9udC13ZWlnaHQ6MTAwO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmctdG9wOjEwcHg7dHJhbnNmb3JtOnRyYW5zbGF0ZSgwLCAxJSk7LW8tdHJhbnNmb3JtOnRyYW5zbGF0ZSgwLCAxJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUoMCwgMSUpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgwLCAxJSk7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1saW5rICosI29uZXRydXN0LXBjLXNkayAub3QtdmVuLWxlZ2NsYWltLWxpbmsgKntmb250LXNpemU6aW5oZXJpdH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tbGluazpob3Zlciwjb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tbGVnY2xhaW0tbGluazpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1oZHJ7d2lkdGg6Y2FsYygxMDAlIC0gMTYwcHgpO2hlaWdodDphdXRvO2Zsb2F0OmxlZnQ7d29yZC1icmVhazpicmVhay13b3JkO3dvcmQtd3JhcDpicmVhay13b3JkO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtwYWRkaW5nLWJvdHRvbTozcHh9I29uZXRydXN0LXBjLXNkayAub3QtdmVuLWxpbmssI29uZXRydXN0LXBjLXNkayAub3QtdmVuLWxlZ2NsYWltLWxpbmt7bGV0dGVyLXNwYWNpbmc6LjAzZW07Zm9udC1zaXplOi43NWVtO2ZvbnQtd2VpZ2h0OjQwMH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0c3tib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kLWNvbG9yOiNmOGY4Zjh9I29uZXRydXN0LXBjLXNkayAub3QtdmVuLWRldHMgbGk6Zmlyc3QtY2hpbGQgcDpmaXJzdC1jaGlsZHtib3JkZXItdG9wOm5vbmV9I29uZXRydXN0LXBjLXNkayAub3QtdmVuLWRldHMgLm90LXZlbi1kaXNjOm5vdCg6Zmlyc3QtY2hpbGQpe2JvcmRlci10b3A6MXB4IHNvbGlkICNkZGQgIWltcG9ydGFudH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0cyAub3QtdmVuLWRpc2M6bnRoLWNoaWxkKG4rMykgcHtkaXNwbGF5OmlubGluZS1ibG9ja30jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0cyAub3QtdmVuLWRpc2M6bnRoLWNoaWxkKG4rMykgcDpudGgtb2YtdHlwZShvZGQpe3dpZHRoOjMwJX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0cyAub3QtdmVuLWRpc2M6bnRoLWNoaWxkKG4rMykgcDpudGgtb2YtdHlwZShldmVuKXt3aWR0aDo1MCU7d29yZC1icmVhazpicmVhay13b3JkO3dvcmQtd3JhcDpicmVhay13b3JkfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1kZXRzIC5vdC12ZW4tZGlzYyBwLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1kZXRzIC5vdC12ZW4tZGlzYyBoNXtwYWRkaW5nLXRvcDo1cHg7cGFkZGluZy1ib3R0b206NXB4O2Rpc3BsYXk6YmxvY2t9I29uZXRydXN0LXBjLXNkayAub3QtdmVuLWRldHMgLm90LXZlbi1kaXNjIGg1LCNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1kZXRzIC5vdC12ZW4tZGlzYyBwW2FyaWEtbGV2ZWw9XCI1XCJde2Rpc3BsYXk6aW5saW5lLWJsb2NrfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1kZXRzIC5vdC12ZW4tZGlzYyBwOm50aC1sYXN0LWNoaWxkKC1uKzEpe3BhZGRpbmctYm90dG9tOjEwcHh9I29uZXRydXN0LXBjLXNkayAub3QtdmVuLWRldHMgLm90LXZlbi1kaXNjIHA6bnRoLWNoaWxkKC1uKzIpOm5vdCguZGlzYy1wdXIpOm5vdChbcm9sZT1oZWFkaW5nXSl7cGFkZGluZy10b3A6MTBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0cyAub3QtdmVuLWRpc2MgLmRpc2MtcHVyLWNvbnR7ZGlzcGxheTppbmxpbmV9I29uZXRydXN0LXBjLXNkayAub3QtdmVuLWRldHMgLm90LXZlbi1kaXNjIC5kaXNjLXB1cntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo1MCUgIWltcG9ydGFudDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d29yZC13cmFwOmJyZWFrLXdvcmQ7bGVmdDpjYWxjKDMwJSArIDE3cHgpfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1kZXRzIC5vdC12ZW4tZGlzYyAuZGlzYy1wdXI6bnRoLWNoaWxkKC1uKzEpe3Bvc2l0aW9uOnN0YXRpY30jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0cyBwLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1kZXRzIGg1LCNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1kZXRzIHNwYW57Zm9udC1zaXplOi42OWVtO3RleHQtYWxpZ246bGVmdDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d29yZC1icmVhazpicmVhay13b3JkO3dvcmQtd3JhcDpicmVhay13b3JkO21hcmdpbjowO3BhZGRpbmctYm90dG9tOjEwcHg7cGFkZGluZy1sZWZ0OjE1cHg7Y29sb3I6IzJlMzY0NH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0cyBoNSwjb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0cyBwW2FyaWEtbGV2ZWw9XCI1XCJde3BhZGRpbmctdG9wOjVweDtsaW5lLWhlaWdodDoxLjV9I29uZXRydXN0LXBjLXNkayAub3QtdmVuLWRldHMgc3Bhbntjb2xvcjpkaW1ncmF5O3BhZGRpbmc6MDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0cyAub3QtdmVuLXB1ciBoNSwjb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4tZGV0cyAub3QtdmVuLXB1ciBwW2FyaWEtbGV2ZWw9XCI1XCJde2JvcmRlci10b3A6MXB4IHNvbGlkICNlOWU5ZTk7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U5ZTllOTtwYWRkaW5nLWJvdHRvbTo1cHg7bWFyZ2luLWJvdHRvbTo1cHg7Zm9udC13ZWlnaHQ6Ym9sZH0jb25ldHJ1c3QtcGMtc2RrICNvdC1ob3N0LWxzdCAub3Qtc2VsLWFsbHtmbG9hdDpyaWdodDtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tcmlnaHQ6NDJweDt0b3A6MTBweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1ob3N0LWxzdCAub3Qtc2VsLWFsbCBpbnB1dFt0eXBlPWNoZWNrYm94XXt3aWR0aDphdXRvO2hlaWdodDphdXRvfSNvbmV0cnVzdC1wYy1zZGsgI290LWhvc3QtbHN0IC5vdC1zZWwtYWxsIGxhYmVse2hlaWdodDoyMHB4O3dpZHRoOjIwcHg7cGFkZGluZy1sZWZ0OjBweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1ob3N0LWxzdCAub3QtYWNjLXR4dHtvdmVyZmxvdzpoaWRkZW47d2lkdGg6OTUlfSNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtaGRye3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lO3dpZHRoOmNhbGMoMTAwJSAtIDEyNXB4KTtmbG9hdDpsZWZ0fSNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtbmFtZSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1ob3N0LWRlc2N7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6OTAlfSNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtbmFtZXtwb2ludGVyLWV2ZW50czpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtaGRyPmF7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtmb250LXNpemU6LjgyZW07cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2Zsb2F0OmxlZnQ7bWFyZ2luLWJvdHRvbTo1cHg7cG9pbnRlci1ldmVudHM6aW5pdGlhbH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1ob3N0LW5hbWUrYXttYXJnaW4tdG9wOjVweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1ob3N0LW5hbWUsI29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1uYW1lIGEsI29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1kZXNjLCNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtaW5mb3tjb2xvcjpkaW1ncmF5O3dvcmQtYnJlYWs6YnJlYWstd29yZDt3b3JkLXdyYXA6YnJlYWstd29yZH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1ob3N0LW5hbWUsI29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1uYW1lIGF7Zm9udC13ZWlnaHQ6Ym9sZDtmb250LXNpemU6LjgyZW07bGluZS1oZWlnaHQ6MS4zfSNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtbmFtZSBhe2ZvbnQtc2l6ZToxZW19I29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1leHBhbmR7bWFyZ2luLXRvcDozcHg7bWFyZ2luLWJvdHRvbTozcHg7Y2xlYXI6Ym90aDtkaXNwbGF5OmJsb2NrO2NvbG9yOiMzODYwYmU7Zm9udC1zaXplOi43MmVtO2ZvbnQtd2VpZ2h0Om5vcm1hbH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1ob3N0LWV4cGFuZCAqe2ZvbnQtc2l6ZTppbmhlcml0fSNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtZGVzYywjb25ldHJ1c3QtcGMtc2RrIC5vdC1ob3N0LWluZm97Zm9udC1zaXplOi42ODhlbTtsaW5lLWhlaWdodDoxLjQ7Zm9udC13ZWlnaHQ6bm9ybWFsfSNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtZGVzY3ttYXJnaW4tdG9wOjEwcHh9I29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1vcHR7bWFyZ2luOjA7Zm9udC1zaXplOmluaGVyaXQ7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTAwJX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1ob3N0LW9wdCBsaT5kbHtmb250LXNpemU6LjhlbTtwYWRkaW5nOjVweCAwO21hcmdpbjo1cHggMDtkaXNwbGF5OmZsZXh9I29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1vcHQgbGk+ZGwgZHR7d2lkdGg6MzAlO2Zsb2F0OmxlZnR9I29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1vcHQgbGk+ZGwgZGR7d2lkdGg6NzAlO2Zsb2F0OmxlZnQ7d29yZC1icmVhazpicmVhay13b3JkO3dvcmQtd3JhcDpicmVhay13b3JkfSNvbmV0cnVzdC1wYy1zZGsgLm90LWhvc3QtaW5mb3tib3JkZXI6bm9uZTtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDpjYWxjKDEwMCUgLSAxMHB4KTtwYWRkaW5nOjEwcHg7bWFyZ2luLWJvdHRvbToxMHB4O2JhY2tncm91bmQtY29sb3I6I2Y4ZjhmOH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1ob3N0LWluZm8+ZGl2e292ZXJmbG93OmF1dG99I29uZXRydXN0LXBjLXNkayAjbm8tcmVzdWx0c3t0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW4tdG9wOjMwcHh9I29uZXRydXN0LXBjLXNkayAjbm8tcmVzdWx0cyBwe2ZvbnQtc2l6ZToxZW07Y29sb3I6IzJlMzY0NDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d29yZC13cmFwOmJyZWFrLXdvcmR9I29uZXRydXN0LXBjLXNkayAjbm8tcmVzdWx0cyBwIHNwYW57Zm9udC13ZWlnaHQ6Ym9sZH0jb25ldHJ1c3QtcGMtc2RrICNvdC1mbHRyLW1vZGFse3dpZHRoOjEwMCU7aGVpZ2h0OmF1dG87ZGlzcGxheTpub25lOy1tb3otdHJhbnNpdGlvbjouMnMgZWFzZTstby10cmFuc2l0aW9uOi4ycyBlYXNlOy13ZWJraXQtdHJhbnNpdGlvbjoycyBlYXNlO3RyYW5zaXRpb246LjJzIGVhc2U7b3ZlcmZsb3c6aGlkZGVuO29wYWNpdHk6MTtyaWdodDowfSNvbmV0cnVzdC1wYy1zZGsgI290LWZsdHItbW9kYWwgLm90LWxhYmVsLXR4dHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6Ljg1ZW07Y29sb3I6ZGltZ3JheX0jb25ldHJ1c3QtcGMtc2RrICNvdC1mbHRyLWNudHt6LWluZGV4OjIxNDc0ODM2NDY7YmFja2dyb3VuZC1jb2xvcjojZmZmO3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDo5MCU7bWF4LWhlaWdodDozMDBweDt3aWR0aDozMjVweDtsZWZ0OjIxMHB4O21hcmdpbi10b3A6MTBweDttYXJnaW4tYm90dG9tOjIwcHg7cGFkZGluZy1yaWdodDoxMHB4O2JvcmRlci1yYWRpdXM6M3B4Oy13ZWJraXQtYm94LXNoYWRvdzowcHggMHB4IDEycHggMnB4ICNjN2M1Yzc7LW1vei1ib3gtc2hhZG93OjBweCAwcHggMTJweCAycHggI2M3YzVjNztib3gtc2hhZG93OjBweCAwcHggMTJweCAycHggI2M3YzVjN30jb25ldHJ1c3QtcGMtc2RrIC5vdC1mbHRyLXNjcmxjbnR7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO2NsZWFyOmJvdGg7bWF4LWhlaWdodDpjYWxjKDEwMCUgLSA2MHB4KX0jb25ldHJ1c3QtcGMtc2RrICNvdC1hbmNob3J7Ym9yZGVyOjEycHggc29saWQgcmdiYSgwLDAsMCwwKTtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyMTQ3NDgzNjQ3O3JpZ2h0OjU1cHg7dG9wOjc1cHg7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7LW8tdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7LW1zLXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7YmFja2dyb3VuZC1jb2xvcjojZmZmOy13ZWJraXQtYm94LXNoYWRvdzotM3B4IC0zcHggNXB4IC0ycHggI2M3YzVjNzstbW96LWJveC1zaGFkb3c6LTNweCAtM3B4IDVweCAtMnB4ICNjN2M1Yzc7Ym94LXNoYWRvdzotM3B4IC0zcHggNXB4IC0ycHggI2M3YzVjN30jb25ldHJ1c3QtcGMtc2RrIC5vdC1mbHRyLWJ0bnN7bWFyZ2luLWxlZnQ6MTVweH0jb25ldHJ1c3QtcGMtc2RrICNmaWx0ZXItYXBwbHktaGFuZGxlcnttYXJnaW4tcmlnaHQ6MTVweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1mbHRyLW9wdHttYXJnaW4tYm90dG9tOjVweDttYXJnaW4tbGVmdDoxNXB4O21pbi1oZWlnaHQ6MjBweDt3aWR0aDo3NSU7cG9zaXRpb246cmVsYXRpdmV9I29uZXRydXN0LXBjLXNkayAub3QtZmx0ci1vcHQgcHtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW46MDtmb250LXNpemU6LjllbTtjb2xvcjojMmUzNjQ0fSNvbmV0cnVzdC1wYy1zZGsgLm90LWNoa2JveCBsYWJlbCBzcGFue2ZvbnQtc2l6ZTouODVlbTtjb2xvcjpkaW1ncmF5fSNvbmV0cnVzdC1wYy1zZGsgLm90LWNoa2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XStsYWJlbDo6YWZ0ZXJ7Y29udGVudDpub25lO2NvbG9yOiNmZmZ9I29uZXRydXN0LXBjLXNkayAub3QtY2hrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQrbGFiZWw6OmFmdGVye2NvbnRlbnQ6XCJcIn0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jaGtib3ggaW5wdXRbdHlwZT1jaGVja2JveF1bYXJpYS1jaGVja2VkPW1peGVkXStsYWJlbDo6YWZ0ZXJ7Y29udGVudDpcIlwifSNvbmV0cnVzdC1wYy1zZGsgLm90LWNoa2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpmb2N1cytsYWJlbDo6YmVmb3Jle291dGxpbmUtc3R5bGU6c29saWQ7b3V0bGluZS13aWR0aDoycHg7b3V0bGluZS1zdHlsZTphdXRvfSNvbmV0cnVzdC1wYy1zZGsgI290LXNlbGFsbC12ZW5jbnRyLCNvbmV0cnVzdC1wYy1zZGsgI290LXNlbGFsbC1hZHRsdmVuY250ciwjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtaG9zdGNudHIsI29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWxpY250ciwjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtZ252ZW5jbnRye3JpZ2h0OjE1cHg7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtmbG9hdDpyaWdodH0jb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtdmVuY250ciBsYWJlbCwjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtYWR0bHZlbmNudHIgbGFiZWwsI29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWhvc3RjbnRyIGxhYmVsLCNvbmV0cnVzdC1wYy1zZGsgI290LXNlbGFsbC1saWNudHIgbGFiZWwsI29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWdudmVuY250ciBsYWJlbHtmbG9hdDpsZWZ0O3BhZGRpbmctbGVmdDowfSNvbmV0cnVzdC1wYy1zZGsgI290LXZlbi1sc3Q6Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcDoxcHggc29saWQgI2UyZTJlMn0jb25ldHJ1c3QtcGMtc2RrIHVse2xpc3Qtc3R5bGU6bm9uZTtwYWRkaW5nOjB9I29uZXRydXN0LXBjLXNkayB1bCBsaTpub3QoLm90LWZsdHItb3B0KXtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MDtwYWRkaW5nOjE1cHggMTVweCAxNXB4IDEwcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2UyZTJlMn0jb25ldHJ1c3QtcGMtc2RrIHVsIGxpIGgzLCNvbmV0cnVzdC1wYy1zZGsgdWwgbGkgaDQsI29uZXRydXN0LXBjLXNkayB1bCBsaSBwW2FyaWEtbGV2ZWw9XCIzXCJdOm5vdCgub3QtaG9zdC1uYW1lLC5vdC1ob3N0LWRlc2MpLCNvbmV0cnVzdC1wYy1zZGsgdWwgbGkgcFthcmlhLWxldmVsPVwiNFwiXTpub3QoLm90LWhvc3QtbmFtZSwub3QtaG9zdC1kZXNjKXtmb250LXNpemU6Ljc1ZW07Y29sb3I6IzY1NjU2NTttYXJnaW46MDtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDo3MCU7aGVpZ2h0OmF1dG87d29yZC1icmVhazpicmVhay13b3JkO3dvcmQtd3JhcDpicmVhay13b3JkfSNvbmV0cnVzdC1wYy1zZGsgdWwgbGkgcDpub3QoW3JvbGU9aGVhZGluZ10pe21hcmdpbjowO2ZvbnQtc2l6ZTouN2VtfSNvbmV0cnVzdC1wYy1zZGsgdWwgbGkgaW5wdXRbdHlwZT1jaGVja2JveF17cG9zaXRpb246YWJzb2x1dGU7Y3Vyc29yOnBvaW50ZXI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvcGFjaXR5OjA7bWFyZ2luOjA7dG9wOjA7bGVmdDowfSNvbmV0cnVzdC1wYy1zZGsgLm90LWNhdC1pdGVtPmJ1dHRvbjpmb2N1cywjb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2MtY250cj5idXR0b246Zm9jdXMsI29uZXRydXN0LXBjLXNkayBsaT5idXR0b246Zm9jdXN7b3V0bGluZTojMDAwIHNvbGlkIDJweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jYXQtaXRlbT5idXR0b24sI29uZXRydXN0LXBjLXNkayAub3QtYWNjLWNudHI+YnV0dG9uLCNvbmV0cnVzdC1wYy1zZGsgbGk+YnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlO2N1cnNvcjpwb2ludGVyO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7bWFyZ2luOjA7dG9wOjA7bGVmdDowO3otaW5kZXg6MTttYXgtd2lkdGg6bm9uZTtib3JkZXI6bm9uZX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jYXQtaXRlbT5idXR0b25bYXJpYS1leHBhbmRlZD1mYWxzZV1+Lm90LWFjYy10eHQsI29uZXRydXN0LXBjLXNkayAub3QtYWNjLWNudHI+YnV0dG9uW2FyaWEtZXhwYW5kZWQ9ZmFsc2Vdfi5vdC1hY2MtdHh0LCNvbmV0cnVzdC1wYy1zZGsgbGk+YnV0dG9uW2FyaWEtZXhwYW5kZWQ9ZmFsc2Vdfi5vdC1hY2MtdHh0e21hcmdpbi10b3A6MDttYXgtaGVpZ2h0OjA7b3BhY2l0eTowO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxMDAlO3RyYW5zaXRpb246LjI1cyBlYXNlLW91dDtkaXNwbGF5Om5vbmV9I29uZXRydXN0LXBjLXNkayAub3QtY2F0LWl0ZW0+YnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV1+Lm90LWFjYy10eHQsI29uZXRydXN0LXBjLXNkayAub3QtYWNjLWNudHI+YnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV1+Lm90LWFjYy10eHQsI29uZXRydXN0LXBjLXNkayBsaT5idXR0b25bYXJpYS1leHBhbmRlZD10cnVlXX4ub3QtYWNjLXR4dHt0cmFuc2l0aW9uOi4xcyBlYXNlLWluO21hcmdpbi10b3A6MTBweDt3aWR0aDoxMDAlO292ZXJmbG93OmF1dG87ZGlzcGxheTpibG9ja30jb25ldHJ1c3QtcGMtc2RrIC5vdC1jYXQtaXRlbT5idXR0b25bYXJpYS1leHBhbmRlZD10cnVlXX4ub3QtYWNjLWdycGNudHIsI29uZXRydXN0LXBjLXNkayAub3QtYWNjLWNudHI+YnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV1+Lm90LWFjYy1ncnBjbnRyLCNvbmV0cnVzdC1wYy1zZGsgbGk+YnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV1+Lm90LWFjYy1ncnBjbnRye3dpZHRoOmF1dG87bWFyZ2luLXRvcDowcHg7cGFkZGluZy1ib3R0b206MTBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1ob3N0LWl0ZW0+YnV0dG9uOmZvY3VzLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1pdGVtPmJ1dHRvbjpmb2N1c3tvdXRsaW5lOjA7Ym9yZGVyOjJweCBzb2xpZCAjMDAwfSNvbmV0cnVzdC1wYy1zZGsgLm90LWhpZGUtYWNjPmJ1dHRvbntwb2ludGVyLWV2ZW50czpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LWhpZGUtYWNjIC5vdC1wbHVzLW1pbnVzPiosI29uZXRydXN0LXBjLXNkayAub3QtaGlkZS1hY2MgLm90LWFydy1jbnRyPip7dmlzaWJpbGl0eTpoaWRkZW59I29uZXRydXN0LXBjLXNkayAub3QtaGlkZS1hY2MgLm90LWFjYy1oZHJ7bWluLWhlaWdodDozMHB4fSNvbmV0cnVzdC1wYy1zZGsub3QtYWRkdGwtdmVuZG9ycyAjb3QtbHN0LWNudDpub3QoLm90LWhvc3QtY250KXtwYWRkaW5nLXJpZ2h0OjEwcHg7d2lkdGg6Y2FsYygxMDAlIC0gMzdweCk7bWFyZ2luLXRvcDoxMHB4O21heC1oZWlnaHQ6Y2FsYygxMDAlIC0gOTBweCl9I29uZXRydXN0LXBjLXNkay5vdC1hZGR0bC12ZW5kb3JzICNvdC1sc3QtY250Om5vdCgub3QtaG9zdC1jbnQpICNvdC1zZWwtYmxre2JhY2tncm91bmQtY29sb3I6I2Y5ZjlmYztib3JkZXI6MXB4IHNvbGlkICNlMmUyZTI7d2lkdGg6Y2FsYygxMDAlIC0gMnB4KTtwYWRkaW5nLWJvdHRvbTo1cHg7cGFkZGluZy10b3A6NXB4fSNvbmV0cnVzdC1wYy1zZGsub3QtYWRkdGwtdmVuZG9ycyAjb3QtbHN0LWNudDpub3QoLm90LWhvc3QtY250KSAjb3Qtc2VsLWJsay5vdC12bmQtbGlzdC1jbnR7Ym9yZGVyOnVuc2V0O2JhY2tncm91bmQtY29sb3I6dW5zZXR9I29uZXRydXN0LXBjLXNkay5vdC1hZGR0bC12ZW5kb3JzICNvdC1sc3QtY250Om5vdCgub3QtaG9zdC1jbnQpICNvdC1zZWwtYmxrLm90LXZuZC1saXN0LWNudCAub3Qtc2VsLWFsbC1oZHJ7ZGlzcGxheTpub25lfSNvbmV0cnVzdC1wYy1zZGsub3QtYWRkdGwtdmVuZG9ycyAjb3QtbHN0LWNudDpub3QoLm90LWhvc3QtY250KSAjb3Qtc2VsLWJsay5vdC12bmQtbGlzdC1jbnQgLm90LXNlbC1hbGx7cGFkZGluZy1yaWdodDouNXJlbX0jb25ldHJ1c3QtcGMtc2RrLm90LWFkZHRsLXZlbmRvcnMgI290LWxzdC1jbnQ6bm90KC5vdC1ob3N0LWNudCkgI290LXNlbC1ibGsub3Qtdm5kLWxpc3QtY250IC5vdC1zZWwtYWxsIC5vdC1jaGtib3h7cmlnaHQ6MH0jb25ldHJ1c3QtcGMtc2RrLm90LWFkZHRsLXZlbmRvcnMgI290LWxzdC1jbnQ6bm90KC5vdC1ob3N0LWNudCkgLm90LXNlbC1hbGx7cGFkZGluZy1yaWdodDozNHB4fSNvbmV0cnVzdC1wYy1zZGsub3QtYWRkdGwtdmVuZG9ycyAjb3QtbHN0LWNudDpub3QoLm90LWhvc3QtY250KSAub3Qtc2VsLWFsbC1jaGtib3h7d2lkdGg6YXV0b30jb25ldHJ1c3QtcGMtc2RrLm90LWFkZHRsLXZlbmRvcnMgI290LWxzdC1jbnQ6bm90KC5vdC1ob3N0LWNudCkgdWwgbGl7Ym9yZGVyOjFweCBzb2xpZCAjZTJlMmUyO21hcmdpbi1ib3R0b206MTBweH0jb25ldHJ1c3QtcGMtc2RrLm90LWFkZHRsLXZlbmRvcnMgI290LWxzdC1jbnQ6bm90KC5vdC1ob3N0LWNudCkgLm90LWFjYy1jbnRyPi5vdC1hY2MtaGRye3BhZGRpbmc6MTBweCAwIDEwcHggMTVweH0jb25ldHJ1c3QtcGMtc2RrLm90LWFkZHRsLXZlbmRvcnMgLm90LXNlbC1hbGwtY2hrYm94e2Zsb2F0OnJpZ2h0fSNvbmV0cnVzdC1wYy1zZGsub3QtYWRkdGwtdmVuZG9ycyAub3QtcGx1cy1taW51c34ub3Qtc2VsLWFsbC1jaGtib3h7cmlnaHQ6MzRweH0jb25ldHJ1c3QtcGMtc2RrLm90LWFkZHRsLXZlbmRvcnMgI290LXZlbi1sc3Q6Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcDpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1jbnRye3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjZTJlMmUyO2JvcmRlci1yaWdodDoxcHggc29saWQgI2UyZTJlMjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTJlMmUyfSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1jbnRyIGlucHV0e3otaW5kZXg6MX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2MtY250cj4ub3QtYWNjLWhkcntiYWNrZ3JvdW5kLWNvbG9yOiNmOWY5ZmM7cGFkZGluZzo1cHggMCA1cHggMTVweDt3aWR0aDphdXRvfSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1jbnRyPi5vdC1hY2MtaGRyIC5vdC1wbHVzLW1pbnVze3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt0b3A6YXV0b30jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2MtY250cj4ub3QtYWNjLWhkciAub3QtYXJ3LWNudHJ7cmlnaHQ6MTBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2MtY250cj4ub3QtYWNjLWhkciBpbnB1dHt6LWluZGV4OjJ9I29uZXRydXN0LXBjLXNkayAub3QtYWNjLWNudHIub3QtYWRkLXRlY2ggLm90LWFjYy1oZHJ7cGFkZGluZzoxMHB4IDAgMTBweCAxNXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1jbnRyPmlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWR+Lm90LWFjYy1oZHJ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2UyZTJlMn0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2MtY250cj4ub3QtYWNjLXR4dHtwYWRkaW5nLWxlZnQ6MTBweDtwYWRkaW5nLXJpZ2h0OjEwcHh9I29uZXRydXN0LXBjLXNkayAub3QtYWNjLWNudHIgYnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV1+Lm90LWFjYy10eHR7d2lkdGg6YXV0b30jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2MtY250ciAub3QtYWRkdGwtdmVuYm94e2Rpc3BsYXk6bm9uZX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12bHN0LWNudHJ7bWFyZ2luLWJvdHRvbTowO3dpZHRoOjEwMCV9I29uZXRydXN0LXBjLXNkayAub3QtdmVuc2VjLXRpdGxle2ZvbnQtc2l6ZTouODEzZW07dmVydGljYWwtYWxpZ246bWlkZGxlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfSNvbmV0cnVzdC1wYy1zZGsgLmNhdGVnb3J5LXZlbmRvcnMtbGlzdC1oYW5kbGVyLCNvbmV0cnVzdC1wYy1zZGsgLmNhdGVnb3J5LXZlbmRvcnMtbGlzdC1oYW5kbGVyK2F7bWFyZ2luLWxlZnQ6MDttYXJnaW4tdG9wOjEwcHh9I29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLXZlbmNudHIubGluZS10aHJvdWdoIGxhYmVsOjphZnRlciwjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtYWR0bHZlbmNudHIubGluZS10aHJvdWdoIGxhYmVsOjphZnRlciwjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtbGljbnRyLmxpbmUtdGhyb3VnaCBsYWJlbDo6YWZ0ZXIsI29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWhvc3RjbnRyLmxpbmUtdGhyb3VnaCBsYWJlbDo6YWZ0ZXIsI29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWdudmVuY250ci5saW5lLXRocm91Z2ggbGFiZWw6OmFmdGVye2hlaWdodDphdXRvO2JvcmRlci1sZWZ0OjA7dHJhbnNmb3JtOm5vbmU7LW8tdHJhbnNmb3JtOm5vbmU7LW1zLXRyYW5zZm9ybTpub25lOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7bGVmdDo5cHg7dG9wOjEycHh9I29uZXRydXN0LXBjLXNkayAjb3QtY2F0ZWdvcnktdGl0bGV7ZmxvYXQ6bGVmdDtwYWRkaW5nLWJvdHRvbToxMHB4O2ZvbnQtc2l6ZToxZW07d2lkdGg6MTAwJX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jYXQtZ3Jwe21hcmdpbi10b3A6MTBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1jYXQtaXRlbXtsaW5lLWhlaWdodDoxLjE7bWFyZ2luLXRvcDoxMHB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjEwMCV9I29uZXRydXN0LXBjLXNkayAub3QtYnRuLWNvbnRhaW5lcnt0ZXh0LWFsaWduOnJpZ2h0fSNvbmV0cnVzdC1wYy1zZGsgLm90LWJ0bi1jb250YWluZXIgYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZTouNzVlbTttYXJnaW4tdG9wOjE1cHg7bWluLWhlaWdodDo0MHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWJ0bi1jb250YWluZXIub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lcntkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfSNvbmV0cnVzdC1wYy1zZGsgLm90LWJ0bi1jb250YWluZXIub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciAqW2NsYXNzKj1vdC1idXR0b24tb3JkZXItXTpudGgtb2YtdHlwZSgxKXttYXJnaW4tcmlnaHQ6YXV0bzttYXJnaW4tbGVmdDoxNXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWJ0bi1jb250YWluZXIub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciAqW2NsYXNzKj1vdC1idXR0b24tb3JkZXItXTpudGgtb2YtdHlwZSgyKSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1idG4tY29udGFpbmVyLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgKltjbGFzcyo9b3QtYnV0dG9uLW9yZGVyLV06bnRoLW9mLXR5cGUoMyl7bWFyZ2luLXJpZ2h0OjE1cHh9I29uZXRydXN0LXBjLXNkayAub3QtYnRuLWNvbnRhaW5lci5vdC1idXR0b24tb3JkZXItY29udGFpbmVyLm90LXN0YWNrLWJ1dHRvbnN7ZmxleDoxO3dpZHRoOmF1dG87Z2FwOi41cmVtO2hlaWdodDoxMDAlO3BhZGRpbmc6MCAzMHB4O2ZsZXgtd3JhcDpub3dyYXA7bWFyZ2luLXRvcDouNzVyZW07YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbi1ib3R0b206Ljc1cmVtO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kfSNvbmV0cnVzdC1wYy1zZGsgLm90LWJ0bi1jb250YWluZXIub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lci5vdC1zdGFjay1idXR0b25zIC5vdC1wYy1yZWZ1c2UtYWxsLWhhbmRsZXIsI29uZXRydXN0LXBjLXNkayAub3QtYnRuLWNvbnRhaW5lci5vdC1idXR0b24tb3JkZXItY29udGFpbmVyLm90LXN0YWNrLWJ1dHRvbnMgLnNhdmUtcHJlZmVyZW5jZS1idG4taGFuZGxlciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1idG4tY29udGFpbmVyLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIub3Qtc3RhY2stYnV0dG9ucyAjYWNjZXB0LXJlY29tbWVuZGVkLWJ0bi1oYW5kbGVye3dpZHRoOjEwMCU7bWFyZ2luOjAgIWltcG9ydGFudH0jb25ldHJ1c3QtcGMtc2RrICNjbG9zZS1wYy1idG4taGFuZGxlci5vdC1jbG9zZS1pY29ue3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMHB4O3JpZ2h0OjA7ei1pbmRleDoxO3BhZGRpbmc6MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7Ym9yZGVyOm5vbmV9I29uZXRydXN0LXBjLXNkayAjY2xvc2UtcGMtYnRuLWhhbmRsZXIub3QtY2xvc2UtaWNvbiBzdmd7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTBweDt3aWR0aDoxMHB4fSNvbmV0cnVzdC1wYy1zZGsgI2NsZWFyLWZpbHRlcnMtaGFuZGxlcnttYXJnaW4tdG9wOjIwcHg7bWFyZ2luLWJvdHRvbToxMHB4O2Zsb2F0OnJpZ2h0O21heC13aWR0aDoyMDBweDt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjojMzg2MGJlO2ZvbnQtc2l6ZTouOWVtO2ZvbnQtd2VpZ2h0OmJvbGQ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApO2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDApO3BhZGRpbmc6MXB4fSNvbmV0cnVzdC1wYy1zZGsgI2NsZWFyLWZpbHRlcnMtaGFuZGxlcjpob3Zlcntjb2xvcjojMjI4NWY3fSNvbmV0cnVzdC1wYy1zZGsgI2NsZWFyLWZpbHRlcnMtaGFuZGxlcjpmb2N1c3tvdXRsaW5lOiMwMDAgc29saWQgMXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWVuYmwtY2hyIGg0fi5vdC10Z2wsI29uZXRydXN0LXBjLXNkayAub3QtZW5ibC1jaHIgaDR+Lm90LWFsd2F5cy1hY3RpdmV7cmlnaHQ6NDVweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1lbmJsLWNociBoNH4ub3QtdGdsKy5vdC10Z2x7cmlnaHQ6MTIwcHh9I29uZXRydXN0LXBjLXNkayAub3QtZW5ibC1jaHIgLm90LXBsaS1oZHIub3QtbGVnLWJvcmRlci1jb2xvciBzcGFuOmZpcnN0LWNoaWxke3dpZHRoOjkwcHh9I29uZXRydXN0LXBjLXNkayAub3QtZW5ibC1jaHIgbGkub3Qtc3ViZ3JwPmg1Ky5vdC10Z2wtY250ciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1lbmJsLWNociBsaS5vdC1zdWJncnA+cFthcmlhLWxldmVsPVwiNVwiXSsub3QtdGdsLWNudHJ7cGFkZGluZy1yaWdodDoyNXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXBsdXMtbWludXN7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtmb250LXNpemU6MS41ZW07cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLXJpZ2h0OjVweDt0b3A6M3B4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXBsdXMtbWludXMgc3Bhbntwb3NpdGlvbjphYnNvbHV0ZTtiYWNrZ3JvdW5kOiMyNzQ1NWM7Ym9yZGVyLXJhZGl1czoxcHh9I29uZXRydXN0LXBjLXNkayAub3QtcGx1cy1taW51cyBzcGFuOmZpcnN0LW9mLXR5cGV7dG9wOjI1JTtib3R0b206MjUlO3dpZHRoOjEwJTtsZWZ0OjQ1JX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1wbHVzLW1pbnVzIHNwYW46bGFzdC1vZi10eXBle2xlZnQ6MjUlO3JpZ2h0OjI1JTtoZWlnaHQ6MTAlO3RvcDo0NSV9I29uZXRydXN0LXBjLXNkayBidXR0b25bYXJpYS1leHBhbmRlZD10cnVlXX4ub3QtYWNjLWhkciAub3QtYXJ3LCNvbmV0cnVzdC1wYy1zZGsgYnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV1+Lm90LWFjYy1oZHIgLm90LXBsdXMtbWludXMgc3BhbjpmaXJzdC1vZi10eXBlLCNvbmV0cnVzdC1wYy1zZGsgYnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV1+Lm90LWFjYy1oZHIgLm90LXBsdXMtbWludXMgc3BhbjpsYXN0LW9mLXR5cGV7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9I29uZXRydXN0LXBjLXNkayBidXR0b25bYXJpYS1leHBhbmRlZD10cnVlXX4ub3QtYWNjLWhkciAub3QtcGx1cy1taW51cyBzcGFuOmxhc3Qtb2YtdHlwZXtsZWZ0OjUwJTtyaWdodDo1MCV9I29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLXZlbmNudHIgbGFiZWwsI29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWFkdGx2ZW5jbnRyIGxhYmVsLCNvbmV0cnVzdC1wYy1zZGsgI290LXNlbGFsbC1ob3N0Y250ciBsYWJlbCwjb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtbGljbnRyIGxhYmVse3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHh9I29uZXRydXN0LXBjLXNkayAub3QtaG9zdC1pdGVtIC5vdC1wbHVzLW1pbnVzLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1pdGVtIC5vdC1wbHVzLW1pbnVze2Zsb2F0OmxlZnQ7bWFyZ2luLXJpZ2h0OjhweDt0b3A6MTBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12ZW4taXRlbSB1bHtsaXN0LXN0eWxlOm5vbmUgaW5zaWRlO2ZvbnQtc2l6ZToxMDAlO21hcmdpbjowfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1pdGVtIHVsIGxpe21hcmdpbjowICFpbXBvcnRhbnQ7cGFkZGluZzowO2JvcmRlcjpub25lICFpbXBvcnRhbnR9I29uZXRydXN0LXBjLXNkayAub3QtcGxpLWhkcntjb2xvcjojNzc4MDhlO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLXRvcDo3LjVweDtwYWRkaW5nLWJvdHRvbTo3LjVweDt3aWR0aDpjYWxjKDEwMCUgLSAycHgpO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6M3B4O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjNweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1wbGktaGRyIHNwYW46Zmlyc3QtY2hpbGR7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSg1MCUpO21heC13aWR0aDo5MHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXBsaS1oZHIgc3BhbjpsYXN0LWNoaWxke3BhZGRpbmctcmlnaHQ6MTBweDttYXgtd2lkdGg6OTVweDt0ZXh0LWFsaWduOmNlbnRlcn0jb25ldHJ1c3QtcGMtc2RrIC5vdC1saS10aXRsZXtmbG9hdDpyaWdodDtmb250LXNpemU6LjgxM2VtfSNvbmV0cnVzdC1wYy1zZGsgLm90LXBsaS1oZHIub3QtbGVnLWJvcmRlci1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiNmNGY0ZjQ7Ym9yZGVyOjFweCBzb2xpZCAjZDhkOGQ4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXBsaS1oZHIub3QtbGVnLWJvcmRlci1jb2xvciBzcGFuOmZpcnN0LWNoaWxke3RleHQtYWxpZ246bGVmdDt3aWR0aDo3MHB4fSNvbmV0cnVzdC1wYy1zZGsgbGkub3Qtc3ViZ3JwPmg1LCNvbmV0cnVzdC1wYy1zZGsgbGkub3Qtc3ViZ3JwPnBbYXJpYS1sZXZlbD1cIjVcIl0sI29uZXRydXN0LXBjLXNkayAub3QtY2F0LWhlYWRlcnt3aWR0aDpjYWxjKDEwMCUgLSAxMzBweCl9I29uZXRydXN0LXBjLXNkayBsaS5vdC1zdWJncnA+aDUrLm90LXRnbC1jbnRye3BhZGRpbmctbGVmdDoxM3B4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1ncnBjbnRyIC5vdC1hY2MtZ3JwZGVzY3ttYXJnaW4tYm90dG9tOjVweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2MtZ3JwY250ciAub3Qtc3ViZ3JwLWNudHJ7Ym9yZGVyLXRvcDoxcHggc29saWQgI2Q4ZDhkOH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2MtZ3JwY250ciAub3QtdmxzdC1jbnRyKy5vdC1zdWJncnAtY250cntib3JkZXItdG9wOm5vbmV9I29uZXRydXN0LXBjLXNkayAub3QtYWNjLWhkciAub3QtYXJ3LWNudHIrLm90LXRnbC1jbnRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy10eHQgaDQrLm90LXRnbC1jbnRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy10eHQgcFthcmlhLWxldmVsPVwiNFwiXSsub3QtdGdsLWNudHJ7cGFkZGluZy1sZWZ0OjEzcHh9I29uZXRydXN0LXBjLXNkayAub3QtcGxpLWhkcn4ub3QtY2F0LWl0ZW0gLm90LXN1YmdycD5oNSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1wbGktaGRyfi5vdC1jYXQtaXRlbSAub3Qtc3ViZ3JwPnBbYXJpYS1sZXZlbD1cIjVcIl0sI29uZXRydXN0LXBjLXNkayAub3QtcGxpLWhkcn4ub3QtY2F0LWl0ZW0gLm90LWNhdC1oZWFkZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMTQ1cHgpfSNvbmV0cnVzdC1wYy1zZGsgLm90LXBsaS1oZHJ+Lm90LWNhdC1pdGVtIGg1Ky5vdC10Z2wtY250ciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1wbGktaGRyfi5vdC1jYXQtaXRlbSAub3QtY2F0LWhlYWRlcisub3QtdGdse3BhZGRpbmctbGVmdDoyOHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXNlbC1hbGwtaGRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXNlbC1hbGwtY2hrYm94e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjEwMCU7cG9zaXRpb246cmVsYXRpdmV9I29uZXRydXN0LXBjLXNkayAub3Qtc2VsLWFsbC1jaGtib3h7ei1pbmRleDoxfSNvbmV0cnVzdC1wYy1zZGsgLm90LXNlbC1hbGx7bWFyZ2luOjA7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZy1yaWdodDoyM3B4O2Zsb2F0OnJpZ2h0fSNvbmV0cnVzdC1wYy1zZGsgLm90LWNvbnNlbnQtaGRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LWxpLWhkcntmbG9hdDpyaWdodDtmb250LXNpemU6LjgxMmVtO2xpbmUtaGVpZ2h0Om5vcm1hbDt0ZXh0LWFsaWduOmNlbnRlcjt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d29yZC13cmFwOmJyZWFrLXdvcmR9I29uZXRydXN0LXBjLXNkayAub3QtbGktaGRye21heC13aWR0aDoxMDBweDtwYWRkaW5nLXJpZ2h0OjEwcHh9I29uZXRydXN0LXBjLXNkayAub3QtY29uc2VudC1oZHJ7bWF4LXdpZHRoOjU1cHh9I29uZXRydXN0LXBjLXNkayAjb3Qtc2VsYWxsLWxpY250cntkaXNwbGF5OmJsb2NrO3dpZHRoOjIxcHg7aGVpZ2h0OmF1dG87ZmxvYXQ6cmlnaHQ7cG9zaXRpb246cmVsYXRpdmU7cmlnaHQ6ODBweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1zZWxhbGwtbGljbnRyIGxhYmVse3Bvc2l0aW9uOmFic29sdXRlfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZlbi1jdGdse21hcmdpbi1sZWZ0OjY2cHh9I29uZXRydXN0LXBjLXNkayAub3QtdmVuLWxpdGdsKy5vdC1hcnctY250cnttYXJnaW4tbGVmdDo4MXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWVuYmwtY2hyIC5vdC1ob3N0LWNudCAub3QtdGdsLWNudHJ7d2lkdGg6YXV0b30jb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtY250Om5vdCgub3QtaG9zdC1jbnQpIC5vdC10Z2wtY250cnt3aWR0aDphdXRvO3RvcDphdXRvO2hlaWdodDoyMHB4fSNvbmV0cnVzdC1wYy1zZGsgI290LWxzdC1jbnQgLm90LWNoa2JveHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoyOHB4O2hlaWdodDoyOHB4fSNvbmV0cnVzdC1wYy1zZGsgI290LWxzdC1jbnQgLm90LWNoa2JveCBsYWJlbHtwb3NpdGlvbjphYnNvbHV0ZTtwYWRkaW5nOjA7d2lkdGg6MjhweDtoZWlnaHQ6MjhweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtY250IC5vdC12bmQtaW5mby1jbnRye2JvcmRlcjoxcHggc29saWQgI2Q4ZDhkODtwYWRkaW5nOi43NXJlbSAycmVtO3BhZGRpbmctYm90dG9tOjA7d2lkdGg6YXV0bzttYXJnaW4tdG9wOi41cmVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjYy1ncnBkZXNjKy5vdC1sZWctYnRuLWNvbnRhaW5lcntwYWRkaW5nLWxlZnQ6MjBweDtwYWRkaW5nLXJpZ2h0OjIwcHg7d2lkdGg6Y2FsYygxMDAlIC0gNDBweCk7bWFyZ2luLWJvdHRvbTo1cHh9I29uZXRydXN0LXBjLXNkayAub3Qtc3ViZ3JwIC5vdC1sZWctYnRuLWNvbnRhaW5lcnttYXJnaW4tYm90dG9tOjVweH0jb25ldHJ1c3QtcGMtc2RrICNvdC12ZW4tbHN0IC5vdC1sZWctYnRuLWNvbnRhaW5lcnttYXJnaW4tdG9wOjEwcHh9I29uZXRydXN0LXBjLXNkayAub3QtbGVnLWJ0bi1jb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjEwcHh9I29uZXRydXN0LXBjLXNkayAub3QtbGVnLWJ0bi1jb250YWluZXIgYnV0dG9ue2hlaWdodDphdXRvO3BhZGRpbmc6Ni41cHggOHB4O21hcmdpbi1ib3R0b206MDtsZXR0ZXItc3BhY2luZzowO2ZvbnQtc2l6ZTouNzVlbTtsaW5lLWhlaWdodDpub3JtYWx9I29uZXRydXN0LXBjLXNkayAub3QtbGVnLWJ0bi1jb250YWluZXIgc3Zne2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MTRweDt3aWR0aDoxNHB4O3BhZGRpbmctcmlnaHQ6NXB4O3ZlcnRpY2FsLWFsaWduOnN1Yn0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY3RpdmUtbGVnLWJ0bntjdXJzb3I6ZGVmYXVsdDtwb2ludGVyLWV2ZW50czpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjdGl2ZS1sZWctYnRuIHN2Z3tkaXNwbGF5OmlubGluZS1ibG9ja30jb25ldHJ1c3QtcGMtc2RrIC5vdC1yZW1vdmUtb2JqZWN0aW9uLWhhbmRsZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtwYWRkaW5nOjA7Zm9udC1zaXplOi43NWVtO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxO3BhZGRpbmctbGVmdDoxMHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LW9iai1sZWctYnRuLWhhbmRsZXIgc3Bhbntmb250LXdlaWdodDpib2xkO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OjEuNX0jb25ldHJ1c3QtcGMtc2RrLm90LWNsb3NlLWJ0bi1saW5rICNjbG9zZS1wYy1idG4taGFuZGxlcntib3JkZXI6bm9uZTtoZWlnaHQ6YXV0bztsaW5lLWhlaWdodDoxLjU7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtmb250LXNpemU6LjY5ZW07YmFja2dyb3VuZDpub25lO3JpZ2h0OjE1cHg7dG9wOjE1cHg7d2lkdGg6YXV0bztmb250LXdlaWdodDpub3JtYWx9I29uZXRydXN0LXBjLXNkayAub3QtcGdwaC1saW5re2ZvbnQtc2l6ZTouODEzZW0gIWltcG9ydGFudDttYXJnaW4tdG9wOjEwcHg7cG9zaXRpb246cmVsYXRpdmV9I29uZXRydXN0LXBjLXNkayAub3QtcGdwaC1saW5rLm90LXBncGgtbGluay1zdWJncm91cHttYXJnaW4tYm90dG9tOjFyZW19I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCAub3QtcGdwaC1saW5re21hcmdpbi10b3A6NXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXBncGgtY29udHJ7bWFyZ2luOjAgMi41cmVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LXBncGgtdGl0bGV7Zm9udC1zaXplOjEuMThyZW07bWFyZ2luLWJvdHRvbToycmVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LXBncGgtZGVzY3tmb250LXNpemU6MXJlbTtmb250LXdlaWdodDo0MDA7bWFyZ2luLWJvdHRvbToycmVtO2xpbmUtaGVpZ2h0OjEuNXJlbX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1wZ3BoLWRlc2M6bm90KDpsYXN0LWNoaWxkKTphZnRlcntjb250ZW50OlwiXCI7d2lkdGg6OTYlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgYXV0bztwYWRkaW5nLWJvdHRvbToycmVtO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOWU5ZTl9I29uZXRydXN0LXBjLXNkayAub3QtY2F0LWhlYWRlcntmbG9hdDpsZWZ0O2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6Ljg3NWVtO2xpbmUtaGVpZ2h0OjEuNTttYXgtd2lkdGg6OTAlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtaXRlbT5idXR0b246Zm9jdXN7b3V0bGluZTojMDAwIHNvbGlkIDJweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtaXRlbT5idXR0b257cG9zaXRpb246YWJzb2x1dGU7Y3Vyc29yOnBvaW50ZXI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTttYXJnaW46MDt0b3A6MDtsZWZ0OjA7ei1pbmRleDoxO21heC13aWR0aDpub25lO2JvcmRlcjpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1pdGVtPmJ1dHRvblthcmlhLWV4cGFuZGVkPWZhbHNlXX4ub3QtYWNjLXR4dHttYXJnaW4tdG9wOjA7bWF4LWhlaWdodDowO29wYWNpdHk6MDtvdmVyZmxvdzpoaWRkZW47d2lkdGg6MTAwJTt0cmFuc2l0aW9uOi4yNXMgZWFzZS1vdXQ7ZGlzcGxheTpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1pdGVtPmJ1dHRvblthcmlhLWV4cGFuZGVkPXRydWVdfi5vdC1hY2MtdHh0e3RyYW5zaXRpb246LjFzIGVhc2UtaW47bWFyZ2luLXRvcDoxMHB4O3dpZHRoOjEwMCU7b3ZlcmZsb3c6YXV0bztkaXNwbGF5OmJsb2NrfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1pdGVtPmJ1dHRvblthcmlhLWV4cGFuZGVkPXRydWVdfi5vdC1hY2MtZ3JwY250cnt3aWR0aDphdXRvO21hcmdpbi10b3A6MHB4O3BhZGRpbmctYm90dG9tOjEwcHh9I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dC5vdC1jYXQtaXRlbXtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjJweDttYXJnaW46MDtwYWRkaW5nOjA7Ym9yZGVyOjFweCBzb2xpZCAjZDhkOGQ4O2JvcmRlci10b3A6bm9uZTt3aWR0aDpjYWxjKDEwMCUgLSAycHgpO2Zsb2F0OmxlZnR9I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dC5vdC1jYXQtaXRlbTpmaXJzdC1vZi10eXBle21hcmdpbi10b3A6MTBweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZDhkOGQ4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQgLm90LWFjYy1ncnBkZXNje3BhZGRpbmctbGVmdDoyMHB4O3BhZGRpbmctcmlnaHQ6MjBweDt3aWR0aDpjYWxjKDEwMCUgLSA0MHB4KTtmb250LXNpemU6LjgxMmVtO21hcmdpbi1ib3R0b206MTBweDttYXJnaW4tdG9wOjE1cHh9I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCAub3QtYWNjLWdycGRlc2M+dWx7cGFkZGluZy10b3A6MTBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0IC5vdC1hY2MtZ3JwZGVzYz51bCBsaXtwYWRkaW5nLXRvcDowO2xpbmUtaGVpZ2h0OjEuNTtwYWRkaW5nLWJvdHRvbToxMHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQgZGl2Ky5vdC1hY2MtZ3JwZGVzY3ttYXJnaW4tdG9wOjVweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0IC5vdC12bHN0LWNudHI6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDoxMHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQgLm90LXZsc3QtY250cjpsYXN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQgLm90LWhsc3QtY250cjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206NXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQgLm90LWFjYy1oZHJ7cGFkZGluZy10b3A6MTEuNXB4O3BhZGRpbmctYm90dG9tOjExLjVweDtwYWRkaW5nLWxlZnQ6MjBweDtwYWRkaW5nLXJpZ2h0OjIwcHg7d2lkdGg6Y2FsYygxMDAlIC0gNDBweCk7ZGlzcGxheTppbmxpbmUtYmxvY2t9I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCAub3QtYWNjLXR4dHt3aWR0aDoxMDAlO3BhZGRpbmc6MH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0IC5vdC1zdWJncnAtY250cntwYWRkaW5nLWxlZnQ6MjBweDtwYWRkaW5nLXJpZ2h0OjE1cHg7cGFkZGluZy1ib3R0b206MDt3aWR0aDpjYWxjKDEwMCUgLSAzNXB4KX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0IC5vdC1zdWJncnB7cGFkZGluZy1yaWdodDo1cHh9I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCAub3QtYWNjLWdycGNudHJ7ei1pbmRleDoxO3Bvc2l0aW9uOnJlbGF0aXZlfSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQgLm90LWNhdC1oZWFkZXIrLm90LWFydy1jbnRye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7cmlnaHQ6MjBweDttYXJnaW4tdG9wOi0ycHh9I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCAub3QtY2F0LWhlYWRlcisub3QtYXJ3LWNudHIgLm90LWFyd3t3aWR0aDoxNXB4O2hlaWdodDoyMHB4O21hcmdpbi1sZWZ0OjVweDtjb2xvcjpkaW1ncmF5fSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQgLm90LWNhdC1oZWFkZXJ7ZmxvYXQ6bm9uZTtjb2xvcjojMmUzNjQ0O21hcmdpbjowO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDphdXRvO3dvcmQtd3JhcDpicmVhay13b3JkO21pbi1oZWlnaHQ6aW5oZXJpdH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0IC5vdC12bHN0LWNudHIsI29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCAub3QtaGxzdC1jbnRye3BhZGRpbmctbGVmdDoyMHB4O3dpZHRoOmNhbGMoMTAwJSAtIDIwcHgpO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi10b3A6MDtwYWRkaW5nLWJvdHRvbToycHh9I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCAub3QtYWNjLWhkcntwb3NpdGlvbjpyZWxhdGl2ZTttaW4taGVpZ2h0OjI1cHh9I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCBoNH4ub3QtdGdsLCNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQgaDR+Lm90LWFsd2F5cy1hY3RpdmV7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtyaWdodDoyMHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQgaDR+Lm90LXRnbCsub3QtdGdse3JpZ2h0Ojk1cHh9I29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCAuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXIsI29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dCAuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXIrYXttYXJnaW4tdG9wOjVweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1sc3R7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0jb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtY250e21hcmdpbi10b3A6MXJlbTttYXgtaGVpZ2h0OmNhbGMoMTAwJSAtIDEwMHB4KX0jb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtY250IC5vdC12bmQtaW5mby1jbnRye2JvcmRlcjoxcHggc29saWQgI2Q4ZDhkODtwYWRkaW5nOi43NXJlbSAycmVtO3BhZGRpbmctYm90dG9tOjA7d2lkdGg6YXV0bzttYXJnaW4tdG9wOi41cmVtfSNvbmV0cnVzdC1wYy1zZGsgI290LWxzdC1jbnQgLm90LXZuZC1pbmZve21hcmdpbi1ib3R0b206MXJlbTtwYWRkaW5nLWxlZnQ6Ljc1cmVtO3BhZGRpbmctcmlnaHQ6Ljc1cmVtO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59I29uZXRydXN0LXBjLXNkayAjb3QtbHN0LWNudCAub3Qtdm5kLWluZm9bZGF0YS12bmQtaW5mby1rZXkqPURQT0VtYWlsXXtib3JkZXItdG9wOjFweCBzb2xpZCAjZDhkOGQ4O3BhZGRpbmctdG9wOjFyZW19I29uZXRydXN0LXBjLXNkayAjb3QtbHN0LWNudCAub3Qtdm5kLWluZm9bZGF0YS12bmQtaW5mby1rZXkqPURQT0xpbmtde2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNkOGQ4ZDg7cGFkZGluZy1ib3R0b206MXJlbX0jb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtY250IC5vdC12bmQtaW5mbyAub3Qtdm5kLWxibHtmb250LXdlaWdodDpib2xkO2ZvbnQtc2l6ZTouODVlbTttYXJnaW4tYm90dG9tOi41cmVtfSNvbmV0cnVzdC1wYy1zZGsgI290LWxzdC1jbnQgLm90LXZuZC1pbmZvIC5vdC12bmQtY250e21hcmdpbi1sZWZ0Oi41cmVtO2ZvbnQtd2VpZ2h0OjUwMDtmb250LXNpemU6Ljg1cmVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QsI29uZXRydXN0LXBjLXNkayAub3Qtdm5kLXNlcnZ7d2lkdGg6YXV0bztwYWRkaW5nOjFyZW0gMS4yNXJlbTtwYWRkaW5nLWJvdHRvbTowfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1zZXJ2LWhkci1jbnRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2IC5vdC12bmQtc2Vydi1oZHItY250cntwYWRkaW5nLWJvdHRvbTouNzVyZW07Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2Q4ZDhkOH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5vdC12bmQtc2Vydi1oZHItY250ciAub3Qtdm5kLXNlcnYtaGRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2IC5vdC12bmQtc2Vydi1oZHItY250ciAub3Qtdm5kLXNlcnYtaGRye2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6Ljk1ZW07bGluZS1oZWlnaHQ6MjttYXJnaW4tbGVmdDouNXJlbX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5vdC12bmQtaXRlbSwjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW17Ym9yZGVyOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIGJ1dHRvbiwjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gYnV0dG9ue291dGxpbmU6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZDhkOGQ4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIGJ1dHRvblthcmlhLWV4cGFuZGVkPXRydWVdLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2IC5vdC12bmQtaXRlbSBidXR0b25bYXJpYS1leHBhbmRlZD10cnVlXXtib3JkZXItYm90dG9tOm5vbmV9I29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW06Zmlyc3QtY2hpbGQsI29uZXRydXN0LXBjLXNkayAub3Qtdm5kLXNlcnYgLm90LXZuZC1pdGVtOmZpcnN0LWNoaWxke21hcmdpbi10b3A6LjI1cmVtO2JvcmRlci10b3A6dW5zZXR9I29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW06bGFzdC1jaGlsZCwjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW06bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOi41cmVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtOmxhc3QtY2hpbGQgYnV0dG9uLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2IC5vdC12bmQtaXRlbTpsYXN0LWNoaWxkIGJ1dHRvbntib3JkZXItYm90dG9tOm5vbmV9I29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LXZuZC1pbmZvLWNudHIsI29uZXRydXN0LXBjLXNkayAub3Qtdm5kLXNlcnYgLm90LXZuZC1pdGVtIC5vdC12bmQtaW5mby1jbnRye2JvcmRlcjoxcHggc29saWQgI2Q4ZDhkODtwYWRkaW5nOi43NXJlbSAxLjc1cmVtO3BhZGRpbmctYm90dG9tOjA7d2lkdGg6YXV0bzttYXJnaW4tdG9wOi41cmVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC12bmQtaW5mbywjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gLm90LXZuZC1pbmZve21hcmdpbi1ib3R0b206MXJlbTtwYWRkaW5nLWxlZnQ6Ljc1cmVtO3BhZGRpbmctcmlnaHQ6Ljc1cmVtO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59I29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LXZuZC1pbmZvW2RhdGEtdm5kLWluZm8ta2V5Kj1EUE9FbWFpbF0sI29uZXRydXN0LXBjLXNkayAub3Qtdm5kLXNlcnYgLm90LXZuZC1pdGVtIC5vdC12bmQtaW5mb1tkYXRhLXZuZC1pbmZvLWtleSo9RFBPRW1haWxde2JvcmRlci10b3A6MXB4IHNvbGlkICNkOGQ4ZDg7cGFkZGluZy10b3A6MXJlbX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5vdC12bmQtaXRlbSAub3Qtdm5kLWluZm9bZGF0YS12bmQtaW5mby1rZXkqPURQT0xpbmtdLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2IC5vdC12bmQtaXRlbSAub3Qtdm5kLWluZm9bZGF0YS12bmQtaW5mby1rZXkqPURQT0xpbmtde2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNkOGQ4ZDg7cGFkZGluZy1ib3R0b206MXJlbX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5vdC12bmQtaXRlbSAub3Qtdm5kLWluZm8gLm90LXZuZC1sYmwsI29uZXRydXN0LXBjLXNkayAub3Qtdm5kLXNlcnYgLm90LXZuZC1pdGVtIC5vdC12bmQtaW5mbyAub3Qtdm5kLWxibHtmb250LXdlaWdodDpib2xkO2ZvbnQtc2l6ZTouODVlbTttYXJnaW4tYm90dG9tOi41cmVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC12bmQtaW5mbyAub3Qtdm5kLWNudCwjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gLm90LXZuZC1pbmZvIC5vdC12bmQtY250e21hcmdpbi1sZWZ0Oi41cmVtO2ZvbnQtd2VpZ2h0OjUwMDtmb250LXNpemU6Ljg1cmVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3Qub3Qtdm5kLXN1YmdycC1jbnQsI29uZXRydXN0LXBjLXNkayAub3Qtdm5kLXNlcnYub3Qtdm5kLXN1YmdycC1jbnR7cGFkZGluZy1sZWZ0OjQwcHh9I29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdC5vdC12bmQtc3ViZ3JwLWNudCAub3Qtdm5kLXNlcnYtaGRyLWNudHIgLm90LXZuZC1zZXJ2LWhkciwjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2Vydi5vdC12bmQtc3ViZ3JwLWNudCAub3Qtdm5kLXNlcnYtaGRyLWNudHIgLm90LXZuZC1zZXJ2LWhkcntmb250LXNpemU6LjhlbX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0Lm90LXZuZC1zdWJncnAtY250IC5vdC1jYXQtaGVhZGVyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2Lm90LXZuZC1zdWJncnAtY250IC5vdC1jYXQtaGVhZGVye2ZvbnQtc2l6ZTouOGVtfSNvbmV0cnVzdC1wYy1zZGsgLm90LXN1YmdycC1jbnRyIC5vdC12bmQtc2VydnttYXJnaW4tYm90dG9tOjFyZW07cGFkZGluZzoxcmVtIC45NXJlbX0jb25ldHJ1c3QtcGMtc2RrIC5vdC1zdWJncnAtY250ciAub3Qtdm5kLXNlcnYgLm90LXZuZC1zZXJ2LWhkci1jbnRye3BhZGRpbmctYm90dG9tOi43NXJlbTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZDhkOGQ4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXN1YmdycC1jbnRyIC5vdC12bmQtc2VydiAub3Qtdm5kLXNlcnYtaGRyLWNudHIgLm90LXZuZC1zZXJ2LWhkcntmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOi44ZW07bGluZS1oZWlnaHQ6MjBweDttYXJnaW4tbGVmdDouODJyZW19I29uZXRydXN0LXBjLXNkayAub3Qtc3ViZ3JwLWNudHIgLm90LWNhdC1oZWFkZXJ7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZTouOGVtO2xpbmUtaGVpZ2h0OjIwcHh9I29uZXRydXN0LXBjLXNkayAub3Qtc3ViZ3JwLWNudHIgdWwub3Qtc3ViZ3JwcyAub3Qtdm5kLXNlcnYgLm90LXZuZC1sc3QtY29udCAub3QtYWNjb3JkaW9uLWxheW91dCAub3QtYWNjLWhkciBkaXYub3QtY2hrYm94e21hcmdpbi1sZWZ0Oi44MnJlbX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1jb25maWcgLm90LWFjYy1oZHIsI29uZXRydXN0LXBjLXNkayB1bC5vdC1zdWJncnBzIC5vdC1hY2MtaGRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXN1YmdycC1jbnRyIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIsI29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIsI29uZXRydXN0LXBjLXNkayAub3Qtdm5kLXNlcnYgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyLCNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWxzdCAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIsI29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dC5vdC1jaGVja2JveC1jb25zZW50IC5vdC1hY2MtaGRye3BhZGRpbmc6LjdyZW0gMDttYXJnaW46MDtkaXNwbGF5OmZsZXg7d2lkdGg6MTAwJTthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59I29uZXRydXN0LXBjLXNkayAub3QtdnMtY29uZmlnIC5vdC1hY2MtaGRyIGRpdjpmaXJzdC1jaGlsZCwjb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgZGl2OmZpcnN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgLm90LXN1YmdycC1jbnRyIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgZGl2OmZpcnN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIGRpdjpmaXJzdC1jaGlsZCwjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgZGl2OmZpcnN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWxzdCAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgZGl2OmZpcnN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQub3QtY2hlY2tib3gtY29uc2VudCAub3QtYWNjLWhkciBkaXY6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6LjVyZW19I29uZXRydXN0LXBjLXNkayAub3QtdnMtY29uZmlnIC5vdC1hY2MtaGRyIGRpdjpsYXN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgdWwub3Qtc3ViZ3JwcyAub3QtYWNjLWhkciBkaXY6bGFzdC1jaGlsZCwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zdWJncnAtY250ciB1bC5vdC1zdWJncnBzIC5vdC1hY2MtaGRyIGRpdjpsYXN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIGRpdjpsYXN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2IC5vdC12bmQtaXRlbSAub3QtYWNjLWhkciBkaXY6bGFzdC1jaGlsZCwjb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1sc3QgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIGRpdjpsYXN0LWNoaWxkLCNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQub3QtY2hlY2tib3gtY29uc2VudCAub3QtYWNjLWhkciBkaXY6bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6LjVyZW07bWFyZ2luLWxlZnQ6LjVyZW19I29uZXRydXN0LXBjLXNkayAub3QtdnMtY29uZmlnIC5vdC1hY2MtaGRyIC5vdC1hbHdheXMtYWN0aXZlLCNvbmV0cnVzdC1wYy1zZGsgdWwub3Qtc3ViZ3JwcyAub3QtYWNjLWhkciAub3QtYWx3YXlzLWFjdGl2ZSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zdWJncnAtY250ciB1bC5vdC1zdWJncnBzIC5vdC1hY2MtaGRyIC5vdC1hbHdheXMtYWN0aXZlLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIC5vdC1hbHdheXMtYWN0aXZlLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2IC5vdC12bmQtaXRlbSAub3QtYWNjLWhkciAub3QtYWx3YXlzLWFjdGl2ZSwjb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1sc3QgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIC5vdC1hbHdheXMtYWN0aXZlLCNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQub3QtY2hlY2tib3gtY29uc2VudCAub3QtYWNjLWhkciAub3QtYWx3YXlzLWFjdGl2ZXtwb3NpdGlvbjpyZWxhdGl2ZTtyaWdodDp1bnNldDt0b3A6dW5zZXQ7dHJhbnNmb3JtOnVuc2V0fSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWNvbmZpZyAub3QtYWNjLWhkciAub3QtcGx1cy1taW51cywjb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgLm90LXBsdXMtbWludXMsI29uZXRydXN0LXBjLXNkayAub3Qtc3ViZ3JwLWNudHIgdWwub3Qtc3ViZ3JwcyAub3QtYWNjLWhkciAub3QtcGx1cy1taW51cywjb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5vdC12bmQtaXRlbSAub3QtYWNjLWhkciAub3QtcGx1cy1taW51cywjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LXBsdXMtbWludXMsI29uZXRydXN0LXBjLXNkayAjb3QtcGMtbHN0IC5vdC12cy1saXN0IC5vdC12bmQtaXRlbSAub3QtYWNjLWhkciAub3QtcGx1cy1taW51cywjb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0Lm90LWNoZWNrYm94LWNvbnNlbnQgLm90LWFjYy1oZHIgLm90LXBsdXMtbWludXN7dG9wOjB9I29uZXRydXN0LXBjLXNkayAub3QtdnMtY29uZmlnIC5vdC1hY2MtaGRyIC5vdC1hcnctY250ciwjb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgLm90LWFydy1jbnRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXN1YmdycC1jbnRyIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgLm90LWFydy1jbnRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIC5vdC1hcnctY250ciwjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LWFydy1jbnRyLCNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWxzdCAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LWFydy1jbnRyLCNvbmV0cnVzdC1wYy1zZGsgLm90LWFjY29yZGlvbi1sYXlvdXQub3QtY2hlY2tib3gtY29uc2VudCAub3QtYWNjLWhkciAub3QtYXJ3LWNudHJ7ZmxvYXQ6bm9uZTt0b3A6dW5zZXQ7cmlnaHQ6dW5zZXQ7dHJhbnNmb3JtOnVuc2V0O21hcmdpbi10b3A6LTJweDtwb3NpdGlvbjpyZWxhdGl2ZX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1jb25maWcgLm90LWFjYy1oZHIgLm90LWNhdC1oZWFkZXIsI29uZXRydXN0LXBjLXNkayB1bC5vdC1zdWJncnBzIC5vdC1hY2MtaGRyIC5vdC1jYXQtaGVhZGVyLCNvbmV0cnVzdC1wYy1zZGsgLm90LXN1YmdycC1jbnRyIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgLm90LWNhdC1oZWFkZXIsI29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LWNhdC1oZWFkZXIsI29uZXRydXN0LXBjLXNkayAub3Qtdm5kLXNlcnYgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIC5vdC1jYXQtaGVhZGVyLCNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWxzdCAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LWNhdC1oZWFkZXIsI29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dC5vdC1jaGVja2JveC1jb25zZW50IC5vdC1hY2MtaGRyIC5vdC1jYXQtaGVhZGVye2ZsZXg6MTttYXJnaW46MCAuNXJlbX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1jb25maWcgLm90LWFjYy1oZHIgLm90LXRnbCwjb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgLm90LXRnbCwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zdWJncnAtY250ciB1bC5vdC1zdWJncnBzIC5vdC1hY2MtaGRyIC5vdC10Z2wsI29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LXRnbCwjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LXRnbCwjb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1sc3QgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIC5vdC10Z2wsI29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dC5vdC1jaGVja2JveC1jb25zZW50IC5vdC1hY2MtaGRyIC5vdC10Z2x7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNmb3JtOm5vbmU7cmlnaHQ6MDt0b3A6MDtmbG9hdDpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWNvbmZpZyAub3QtYWNjLWhkciAub3QtY2hrYm94LCNvbmV0cnVzdC1wYy1zZGsgdWwub3Qtc3ViZ3JwcyAub3QtYWNjLWhkciAub3QtY2hrYm94LCNvbmV0cnVzdC1wYy1zZGsgLm90LXN1YmdycC1jbnRyIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgLm90LWNoa2JveCwjb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5vdC12bmQtaXRlbSAub3QtYWNjLWhkciAub3QtY2hrYm94LCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2IC5vdC12bmQtaXRlbSAub3QtYWNjLWhkciAub3QtY2hrYm94LCNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWxzdCAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LWNoa2JveCwjb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0Lm90LWNoZWNrYm94LWNvbnNlbnQgLm90LWFjYy1oZHIgLm90LWNoa2JveHtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MCAuNXJlbX0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1jb25maWcgLm90LWFjYy1oZHIgLm90LWNoa2JveCBsYWJlbCwjb25ldHJ1c3QtcGMtc2RrIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgLm90LWNoa2JveCBsYWJlbCwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zdWJncnAtY250ciB1bC5vdC1zdWJncnBzIC5vdC1hY2MtaGRyIC5vdC1jaGtib3ggbGFiZWwsI29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LWNoa2JveCBsYWJlbCwjb25ldHJ1c3QtcGMtc2RrIC5vdC12bmQtc2VydiAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LWNoa2JveCBsYWJlbCwjb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1sc3QgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIC5vdC1jaGtib3ggbGFiZWwsI29uZXRydXN0LXBjLXNkayAub3QtYWNjb3JkaW9uLWxheW91dC5vdC1jaGVja2JveC1jb25zZW50IC5vdC1hY2MtaGRyIC5vdC1jaGtib3ggbGFiZWx7cGFkZGluZzowfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWNvbmZpZyAub3QtYWNjLWhkciAub3QtY2hrYm94IGxhYmVsOjpiZWZvcmUsI29uZXRydXN0LXBjLXNkayB1bC5vdC1zdWJncnBzIC5vdC1hY2MtaGRyIC5vdC1jaGtib3ggbGFiZWw6OmJlZm9yZSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zdWJncnAtY250ciB1bC5vdC1zdWJncnBzIC5vdC1hY2MtaGRyIC5vdC1jaGtib3ggbGFiZWw6OmJlZm9yZSwjb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5vdC12bmQtaXRlbSAub3QtYWNjLWhkciAub3QtY2hrYm94IGxhYmVsOjpiZWZvcmUsI29uZXRydXN0LXBjLXNkayAub3Qtdm5kLXNlcnYgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIC5vdC1jaGtib3ggbGFiZWw6OmJlZm9yZSwjb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1sc3QgLm90LXZzLWxpc3QgLm90LXZuZC1pdGVtIC5vdC1hY2MtaGRyIC5vdC1jaGtib3ggbGFiZWw6OmJlZm9yZSwjb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0Lm90LWNoZWNrYm94LWNvbnNlbnQgLm90LWFjYy1oZHIgLm90LWNoa2JveCBsYWJlbDo6YmVmb3Jle3Bvc2l0aW9uOnJlbGF0aXZlfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWNvbmZpZyAub3QtYWNjLWhkciAub3QtY2hrYm94IGlucHV0LCNvbmV0cnVzdC1wYy1zZGsgdWwub3Qtc3ViZ3JwcyAub3QtYWNjLWhkciAub3QtY2hrYm94IGlucHV0LCNvbmV0cnVzdC1wYy1zZGsgLm90LXN1YmdycC1jbnRyIHVsLm90LXN1YmdycHMgLm90LWFjYy1oZHIgLm90LWNoa2JveCBpbnB1dCwjb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1saXN0IC5vdC12bmQtaXRlbSAub3QtYWNjLWhkciAub3QtY2hrYm94IGlucHV0LCNvbmV0cnVzdC1wYy1zZGsgLm90LXZuZC1zZXJ2IC5vdC12bmQtaXRlbSAub3QtYWNjLWhkciAub3QtY2hrYm94IGlucHV0LCNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWxzdCAub3QtdnMtbGlzdCAub3Qtdm5kLWl0ZW0gLm90LWFjYy1oZHIgLm90LWNoa2JveCBpbnB1dCwjb25ldHJ1c3QtcGMtc2RrIC5vdC1hY2NvcmRpb24tbGF5b3V0Lm90LWNoZWNrYm94LWNvbnNlbnQgLm90LWFjYy1oZHIgLm90LWNoa2JveCBpbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTtjdXJzb3I6cG9pbnRlcjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO29wYWNpdHk6MDttYXJnaW46MDt0b3A6MDtsZWZ0OjA7ei1pbmRleDoxfSNvbmV0cnVzdC1wYy1zZGsgLm90LXN1YmdycC1jbnRyIHVsLm90LXN1YmdycHMgbGkub3Qtc3ViZ3JwIC5vdC1hY2MtaGRyIGg1Lm90LWNhdC1oZWFkZXIsI29uZXRydXN0LXBjLXNkayAub3Qtc3ViZ3JwLWNudHIgdWwub3Qtc3ViZ3JwcyBsaS5vdC1zdWJncnAgLm90LWFjYy1oZHIgaDQub3QtY2F0LWhlYWRlciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1zdWJncnAtY250ciB1bC5vdC1zdWJncnBzIGxpLm90LXN1YmdycCAub3QtYWNjLWhkciBwW2FyaWEtbGV2ZWw9XCI1XCJdLm90LWNhdC1oZWFkZXIsI29uZXRydXN0LXBjLXNkayAub3Qtc3ViZ3JwLWNudHIgdWwub3Qtc3ViZ3JwcyBsaS5vdC1zdWJncnAgLm90LWFjYy1oZHIgcFthcmlhLWxldmVsPVwiNFwiXS5vdC1jYXQtaGVhZGVye21hcmdpbjowfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLWNvbmZpZyAub3Qtc3ViZ3JwLWNudHIgdWwub3Qtc3ViZ3JwcyBsaS5vdC1zdWJncnAgaDUsI29uZXRydXN0LXBjLXNkayAub3QtdnMtY29uZmlnIC5vdC1zdWJncnAtY250ciB1bC5vdC1zdWJncnBzIGxpLm90LXN1YmdycCBwW2FyaWEtbGV2ZWw9XCI1XCJde3RvcDowO2xpbmUtaGVpZ2h0OjIwcHh9I29uZXRydXN0LXBjLXNkayAub3QtdnMtbGlzdHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmc6MDttYXJnaW46LjVyZW0gNHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLXNlbGMtYWxse2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjA7ZmxvYXQ6dW5zZXQ7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLXNlbGMtYWxsLm90LXRvZ2dsZS1jb25me2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1zZWxjLWFsbC5vdC10b2dnbGUtY29uZi5vdC1jYXJldC1jb25mIC5vdC1zZWwtYWxsLWNoa2JveHttYXJnaW4tcmlnaHQ6NDhweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1zZWxjLWFsbC5vdC10b2dnbGUtY29uZiAub3Qtc2VsLWFsbC1jaGtib3h7bWFyZ2luOjA7cGFkZGluZzowO21hcmdpbi1yaWdodDoxNHB4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1zZWxjLWFsbC5vdC10b2dnbGUtY29uZiAjb3Qtc2VsYWxsLXZlbmNudHIub3QtY2hrYm94LCNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLXNlbGMtYWxsLm90LXRvZ2dsZS1jb25mICNvdC1zZWxhbGwtdmVuY250ci5vdC10Z2x7ZGlzcGxheTppbmxpbmUtYmxvY2s7cmlnaHQ6dW5zZXQ7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bztmbG9hdDpub25lfSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLXNlbGMtYWxsLm90LXRvZ2dsZS1jb25mICNvdC1zZWxhbGwtdmVuY250ciBsYWJlbHt3aWR0aDo0NXB4O2hlaWdodDoyNXB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXZzLXNlbGMtYWxsIC5vdC1zZWwtYWxsLWNoa2JveHttYXJnaW4tcmlnaHQ6MTFweDttYXJnaW4tbGVmdDouNzVyZW07ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0jb25ldHJ1c3QtcGMtc2RrIC5vdC12cy1zZWxjLWFsbCAuc2VsLWFsbC1oZHJ7bWFyZ2luOjAgMS4yNXJlbTtmb250LXNpemU6LjgxMmVtO2xpbmUtaGVpZ2h0Om5vcm1hbDt0ZXh0LWFsaWduOmNlbnRlcjt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d29yZC13cmFwOmJyZWFrLXdvcmR9I29uZXRydXN0LXBjLXNkayAub3Qtdm5kLWxpc3QtY250ICNvdC1zZWxhbGwtdmVuY250ci5vdC1jaGtib3h7ZmxvYXQ6dW5zZXQ7cmlnaHQ6MH0jb25ldHJ1c3QtcGMtc2RrW2Rpcj1ydGxdICNvdC1iYWNrLWFydywjb25ldHJ1c3QtcGMtc2RrW2Rpcj1ydGxdIGlucHV0fi5vdC1hY2MtaGRyIC5vdC1hcnd7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpOy1vLXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTstbXMtdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfSNvbmV0cnVzdC1wYy1zZGtbZGlyPXJ0bF0gaW5wdXQ6Y2hlY2tlZH4ub3QtYWNjLWhkciAub3QtYXJ3e3RyYW5zZm9ybTpyb3RhdGUoMjcwZGVnKTstby10cmFuc2Zvcm06cm90YXRlKDI3MGRlZyk7LW1zLXRyYW5zZm9ybTpyb3RhdGUoMjcwZGVnKTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMjcwZGVnKX0jb25ldHJ1c3QtcGMtc2RrW2Rpcj1ydGxdIC5vdC1jaGtib3ggbGFiZWw6OmFmdGVye3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7LW8tdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7LW1zLXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO2JvcmRlci1sZWZ0OjA7Ym9yZGVyLXJpZ2h0OjNweCBzb2xpZH0jb25ldHJ1c3QtcGMtc2RrW2Rpcj1ydGxdIC5vdC1zZWFyY2gtY250cj5zdmd7cmlnaHQ6MH1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KXsjb25ldHJ1c3QtcGMtc2RrLm90UGNDZW50ZXJ7bGVmdDowO21pbi13aWR0aDoxMDAlO2hlaWdodDoxMDAlICFpbXBvcnRhbnQ7dG9wOjA7Ym9yZGVyLXJhZGl1czowfSNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWNvbnRlbnQub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciwjb25ldHJ1c3QtcGMtc2RrLm90LWZ0ci1zdGFja2VkIC5vdC1idG4tY29udGFpbmVyLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXJ7bWFyZ2luOjA7d2lkdGg6MTAwJTtwYWRkaW5nOi41ZW0gMWVtO2dhcDouNXJlbTtmbGV4LXdyYXA6bm93cmFwO2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Ym94LXNpemluZzpib3JkZXItYm94O2hlaWdodDpjYWxjKDEwMCUgLSAzMHB4KTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kfSNvbmV0cnVzdC1wYy1zZGsgI290LXBjLWNvbnRlbnQub3QtYnV0dG9uLW9yZGVyLWNvbnRhaW5lciAqW2NsYXNzKj1vdC1idXR0b24tb3JkZXItXSwjb25ldHJ1c3QtcGMtc2RrLm90LWZ0ci1zdGFja2VkIC5vdC1idG4tY29udGFpbmVyLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgKltjbGFzcyo9b3QtYnV0dG9uLW9yZGVyLV17bWFyZ2luOjAgIWltcG9ydGFudH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1idG4tY29udGFpbmVyIGJ1dHRvbnttYXgtd2lkdGg6bm9uZTtsZXR0ZXItc3BhY2luZzouMDFlbX0jb25ldHJ1c3QtcGMtc2RrICNjbG9zZS1wYy1idG4taGFuZGxlcnt0b3A6MTBweDtyaWdodDoxN3B4fSNvbmV0cnVzdC1wYy1zZGsgcHtmb250LXNpemU6LjdlbX0jb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1oZHJ7bWFyZ2luOjEwcHggMTBweCAwIDVweDt3aWR0aDpjYWxjKDEwMCUgLSAxNXB4KX0jb25ldHJ1c3QtcGMtc2RrIC52ZW5kb3Itc2VhcmNoLWhhbmRsZXJ7Zm9udC1zaXplOjFlbX0jb25ldHJ1c3QtcGMtc2RrICNvdC1iYWNrLWFyd3ttYXJnaW4tbGVmdDoxMnB4fSNvbmV0cnVzdC1wYy1zZGsgI290LWxzdC1jbnR7bWFyZ2luOjA7cGFkZGluZzowIDVweCAwIDEwcHg7bWluLXdpZHRoOjk1JX0jb25ldHJ1c3QtcGMtc2RrIC5zd2l0Y2grcHttYXgtd2lkdGg6ODAlfSNvbmV0cnVzdC1wYy1zZGsgLm90LWZ0ci1zdGFja2VkIGJ1dHRvbnt3aWR0aDoxMDAlfSNvbmV0cnVzdC1wYy1zZGsgI290LWZsdHItY250e21heC13aWR0aDozMjBweDt3aWR0aDo5MCU7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO21hcmdpbjowO21hcmdpbi1sZWZ0OjE1cHg7bGVmdDphdXRvO3JpZ2h0OjQwcHg7dG9wOjg1cHh9I29uZXRydXN0LXBjLXNkayAub3QtZmx0ci1vcHR7bWFyZ2luLWxlZnQ6MjVweDttYXJnaW4tYm90dG9tOjEwcHh9I29uZXRydXN0LXBjLXNkayAjb3QtZmx0ci1jbnR7cmlnaHQ6NDBweH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MDBweCl7I29uZXRydXN0LXBjLXNkayAub3QtZmx0ci1jbnRyLCNvbmV0cnVzdC1wYy1zZGsgI290LWZsdHItY250e3JpZ2h0OjEwcHh9I29uZXRydXN0LXBjLXNkayAjb3QtYW5jaG9ye3JpZ2h0OjI1cHh9I29uZXRydXN0LXBjLXNkayBidXR0b257d2lkdGg6MTAwJX0jb25ldHJ1c3QtcGMtc2RrOm5vdCgub3QtYWRkdGwtdmVuZG9ycykgI290LXBjLWxzdDpub3QoLm90LWVuYmwtY2hyKSAub3Qtc2VsLWFsbHtwYWRkaW5nLXJpZ2h0OjlweH0jb25ldHJ1c3QtcGMtc2RrOm5vdCgub3QtYWRkdGwtdmVuZG9ycykgI290LXBjLWxzdDpub3QoLm90LWVuYmwtY2hyKSAub3QtdGdsLWNudHJ7cmlnaHQ6MH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1idG4tY29udGFpbmVyLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgLm90LXBjLXJlZnVzZS1hbGwtaGFuZGxlciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1idG4tY29udGFpbmVyLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgLnNhdmUtcHJlZmVyZW5jZS1idG4taGFuZGxlciwjb25ldHJ1c3QtcGMtc2RrIC5vdC1idG4tY29udGFpbmVyLm90LWJ1dHRvbi1vcmRlci1jb250YWluZXIgI2FjY2VwdC1yZWNvbW1lbmRlZC1idG4taGFuZGxlcnt3aWR0aDoxMDAlfX1AbWVkaWEobWluLXdpZHRoOiA3NjhweCl7I29uZXRydXN0LXBjLXNkay5vdC10Z2wtd2l0aC1sYWJlbCAub3QtbGFiZWwtc3RhdHVze2Rpc3BsYXk6aW5saW5lfSNvbmV0cnVzdC1wYy1zZGsub3QtdGdsLXdpdGgtbGFiZWwgI290LXBjLWxzdCAub3QtbGFiZWwtc3RhdHVze2Rpc3BsYXk6bm9uZX19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTZweClhbmQgKG1heC1oZWlnaHQ6IDQyNXB4KWFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSl7I29uZXRydXN0LXBjLXNkay5vdFBjQ2VudGVye2xlZnQ6MDt0b3A6MDttaW4td2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtib3JkZXItcmFkaXVzOjB9I29uZXRydXN0LXBjLXNkayAub3QtcGMtaGVhZGVye2hlaWdodDphdXRvO21pbi1oZWlnaHQ6MjBweH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1oZWFkZXIgLm90LXBjLWxvZ297bWF4LWhlaWdodDozMHB4fSNvbmV0cnVzdC1wYy1zZGsgLm90LXBjLWZvb3RlcnttYXgtaGVpZ2h0OjkwcHg7aGVpZ2h0OjEwMCUgIWltcG9ydGFudH0jb25ldHJ1c3QtcGMtc2RrIC5vdC1wYy1mb290ZXIgLm90LWJ0bi1jb250YWluZXJ7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO21heC1oZWlnaHQ6Y2FsYygxMDAlIC0gMzBweCl9I29uZXRydXN0LXBjLXNkayAjb3QtcGMtY29udGVudCwjb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1sc3R7Ym90dG9tOjEwMHB4fSNvbmV0cnVzdC1wYy1zZGsub3QtZnRyLXN0YWNrZWQgI290LXBjLWNvbnRlbnQsI29uZXRydXN0LXBjLXNkay5vdC1mdHItc3RhY2tlZCAjb3QtcGMtbHN0e2JvdHRvbToxMDBweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1hbmNob3J7bGVmdDppbml0aWFsO3JpZ2h0OjUwcHh9I29uZXRydXN0LXBjLXNkayAjb3QtbHN0LXRpdGxle21hcmdpbi10b3A6MTJweH0jb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtdGl0bGUgKntmb250LXNpemU6aW5oZXJpdH0jb25ldHJ1c3QtcGMtc2RrICNvdC1wYy1oZHIgaW5wdXR7bWFyZ2luLXJpZ2h0OjA7cGFkZGluZy1yaWdodDo0NXB4fSNvbmV0cnVzdC1wYy1zZGsgLnN3aXRjaCtwe21heC13aWR0aDo4NSV9I29uZXRydXN0LXBjLXNkayAjb3Qtc2VsLWJsa3twb3NpdGlvbjpzdGF0aWN9I29uZXRydXN0LXBjLXNkayAjb3QtcGMtbHN0e292ZXJmbG93OmF1dG99I29uZXRydXN0LXBjLXNkayAjb3QtbHN0LWNudHttYXgtaGVpZ2h0Om5vbmU7b3ZlcmZsb3c6aW5pdGlhbH0jb25ldHJ1c3QtcGMtc2RrICNvdC1sc3QtY250Lm5vLXJlc3VsdHN7aGVpZ2h0OmF1dG99I29uZXRydXN0LXBjLXNkayBpbnB1dHtmb250LXNpemU6MWVtICFpbXBvcnRhbnR9I29uZXRydXN0LXBjLXNkayBwe2ZvbnQtc2l6ZTouNmVtfSNvbmV0cnVzdC1wYy1zZGsgI290LWZsdHItbW9kYWx7d2lkdGg6MTAwJTt0b3A6MH0jb25ldHJ1c3QtcGMtc2RrIHVsIGxpIHAsI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXIsI29uZXRydXN0LXBjLXNkayAuY2F0ZWdvcnktdmVuZG9ycy1saXN0LWhhbmRsZXIrYSwjb25ldHJ1c3QtcGMtc2RrIC5jYXRlZ29yeS1ob3N0LWxpc3QtaGFuZGxlcntmb250LXNpemU6LjZlbX0jb25ldHJ1c3QtcGMtc2RrLm90LXNody1mbHRyICNvdC1hbmNob3J7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9I29uZXRydXN0LXBjLXNkay5vdC1zaHctZmx0ciAjb3QtcGMtbHN0e2hlaWdodDoxMDAlICFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuO3RvcDowcHh9I29uZXRydXN0LXBjLXNkay5vdC1zaHctZmx0ciAjb3QtZmx0ci1jbnR7bWFyZ2luOjA7aGVpZ2h0OjEwMCU7bWF4LWhlaWdodDpub25lO3BhZGRpbmc6MTBweDt0b3A6MDt3aWR0aDpjYWxjKDEwMCUgLSAyMHB4KTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2xlZnQ6MDttYXgtd2lkdGg6bm9uZX0jb25ldHJ1c3QtcGMtc2RrLm90LXNody1mbHRyIC5vdC1mbHRyLXNjcmxjbnR7bWF4LWhlaWdodDpjYWxjKDEwMCUgLSA2NXB4KX19IgogICAgICAgIH0="}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}}]}
