{"scan":{"id":"48d71c83-a10c-414f-9654-18faf4b87da7","inputUrl":"https://charente.cidff.info","url":"https://charente.cidff.info/","site":"charente.cidff.info","collectionId":"74e55664-7c15-4c39-bfa3-88d7686c3094","status":"success","error":null,"pageTitle":"Accueil - Charente — CIDFF","finalUrl":"https://charente.cidff.info/","dnsServer":"9.9.9.9","pages":3,"browsingHistory":["https://charente.cidff.info/","https://charente.cidff.info/services/education-citoyennete/","https://charente.cidff.info/nos-partenaires/"],"device":"mobile","phase":"pre","postOf":null,"consentResult":null,"consentCmp":null,"language":"fr-FR","languageSource":"html-lang","acceptLanguage":"en-US","languageDocument":true,"tcfVendors":null,"tcfConsented":null,"tcfPurposes":null,"tcfCmpId":null,"blocked":null,"blockedBy":null,"totalTrackingRequests":0,"analysisVersion":10,"trackerdbVersion":"1.0.920","maxmindDate":"2026-06-17","collectorVersion":"3.11.0","wikidataQid":null,"wikidataConfidence":null,"priority":0,"runnerId":null,"leaseExpiresAt":null,"requiredTag":null,"avoidRunnerId":null,"attempts":1,"createdAt":"2026-08-21T13:00:43.927Z","startedAt":"2026-08-23T02:24:42.629Z","finishedAt":"2026-08-23T02:24:58.678Z"},"pageAfterConsent":false,"half":{"id":"48d71c83-a10c-414f-9654-18faf4b87da7","status":"success","at":"2026-08-21T13:00:43.927Z","pages":["https://charente.cidff.info/","https://charente.cidff.info/services/education-citoyennete/","https://charente.cidff.info/nos-partenaires/"],"consentResult":null,"consentCmp":null,"tcfVendors":null,"tcfConsented":null,"tcfPurposes":null,"trackerRefs":[],"trackers":0,"requests":0,"thirdPartyHosts":5,"cookies":0,"thirdPartyCookies":0},"other":{"id":"90c41e2f-8b5b-40c1-ab5b-be36f6430b08","status":"success","at":"2026-08-23T02:24:58.709Z","pages":["https://charente.cidff.info/","https://charente.cidff.info/services/education-citoyennete/","https://charente.cidff.info/nos-partenaires/"],"consentResult":"nopopup","consentCmp":null,"tcfVendors":null,"tcfConsented":null,"tcfPurposes":null,"trackerRefs":[],"trackers":0,"requests":0,"thirdPartyHosts":5,"cookies":0,"thirdPartyCookies":0,"phase":"post","trackerRows":[]},"trackers":[],"unidentified":[],"hosts":[{"id":118545,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","hostname":"charente.cidff.info","party":"first","addresses":["147.135.162.2"],"countries":["FR"],"providers":["OVH SAS (AS16276)"],"asns":[16276],"source":"observed","error":null},{"id":118546,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","hostname":"unpkg.com","party":"third","addresses":["104.18.1.22"],"countries":["US"],"providers":["Cloudflare, Inc. (AS13335)"],"asns":[13335],"source":"observed","error":null},{"id":118547,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","hostname":"cdnjs.cloudflare.com","party":"third","addresses":["104.17.24.14"],"countries":["US"],"providers":["Cloudflare, Inc. (AS13335)"],"asns":[13335],"source":"observed","error":null},{"id":118548,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","hostname":"c.basemaps.cartocdn.com","party":"third","addresses":["151.101.206.132"],"countries":["US"],"providers":["Fastly, Inc. (AS54113)"],"asns":[54113],"source":"observed","error":null},{"id":118549,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","hostname":"a.basemaps.cartocdn.com","party":"third","addresses":["151.101.62.132"],"countries":["US"],"providers":["Fastly, Inc. (AS54113)"],"asns":[54113],"source":"observed","error":null},{"id":118550,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","hostname":"b.basemaps.cartocdn.com","party":"third","addresses":["151.101.206.132"],"countries":["US"],"providers":["Fastly, Inc. (AS54113)"],"asns":[54113],"source":"observed","error":null}],"consentManagers":[],"signals":[{"id":66009,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","kind":"behaviour","label":"KEYBOARD","source":"data:text/javascript;base64,CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXBJZCA9ICJjaWRmZi1tYXAiOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbWFwUmVmID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobWFwSWQpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbWFwRGV0YWlsc1JlZiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjaWRmZi1zaXRlLWRldGFpbHMnKTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhZGRyZXNzUG9pbnRzID0gWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE1vZGVsIDogWyBsYXQsIGxvbiwgdG9vbHRpcCwgc2l0ZURhdGEgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDYuMDIwNzI1LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuNjg5OTc2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBDb25mb2xlbnNgLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsiaWQiOiIxMTYwIiwiY2VudHJlX2lkIjoiNzQiLCJub20iOiJDb25mb2xlbnMiLCJub21fc2x1ZyI6ImNvbmZvbGVucyIsImFkcmVzc2UiOiJQbGFjZSBkZSBsJ0hcdTAwZjR0ZWwgZGUgVmlsbGUiLCJjcCI6IjE2NTAwIiwidmlsbGUiOiJDb25mb2xlbnMiLCJ2aWxsZV9zbHVnIjoiY29uZm9sZW5zIiwiY2l0eV9pZCI6IjU1OTEiLCJlbWFpbCI6IiIsInRlbGVwaG9uZSI6IjA1IDQ1IDkyIDM0IDAyIiwicXB2IjoiMCIsInpyciI6IjEiLCJhY2N1ZWlsIjoiTWFpcmllIiwiYWNjdWVpbF9wcmVjaXNpb24iOiIiLCJob3JhaXJlcyI6Ilx1MDBlMCBsYSBkZW1hbmRlXG5zdXIgcmVuZGV6LXZvdXMiLCJ2b2xfaHJfaGViZG8iOiIzaCBtZW5zdWVsbGVzIiwiaWkiOiIxIiwiaWMiOiIxIiwiZSI6IjAiLCJ2IjoiMCIsInByZWNpc2lvbiI6IiIsImNhcnRvZ3JhcGhpZSI6IjEiLCJkZWxldGVkIjoiMCIsImNhZHJlMSI6IkwnYWNjXHUwMGU4cyBhdXggZHJvaXRzIHRvdXRlcyB0aFx1MDBlOW1hdGlxdWVzIGNvbmZvbmR1ZXMgKERcdTAwZTljcmV0IDIwMTUtMTc0NSBkdSAyMyBkXHUwMGU5Y2VtYnJlIDIwMTUgcmVsYXRpZiBcdTAwZTAgbCdhZ3JcdTAwZTltZW50KSIsImNhZHJlMiI6bnVsbCwiY2FkcmUzIjpudWxsLCJjYWRyZTQiOm51bGwsImNhZHJlNSI6bnVsbCwiYWNjZXNzaWJpbGl0ZTEiOiJBdWRpdGlmIiwiYWNjZXNzaWJpbGl0ZTIiOm51bGwsImFjY2Vzc2liaWxpdGUzIjoiTW90ZXVyIiwiYWNjZXNzaWJpbGl0ZTQiOiJWaXN1ZWwiLCJhY2Nlc3NpYmlsaXRlNSI6bnVsbCwidHlwZTEiOiJQaHlzaXF1ZSIsInR5cGUyIjoiVFx1MDBlOWxcdTAwZTlwaG9uaXF1ZSIsInR5cGUzIjoiVmlzaW9jb25mXHUwMGU5cmVuY2UiLCJ0eXBlNCI6bnVsbCwibWZzIjpudWxsLCJkZXBhcnRlbWVudCI6IkNoYXJlbnRlIiwicmVnaW9uIjoiTm91dmVsbGUtQXF1aXRhaW5lIiwiY29vcmRzIjp7ImxhdCI6NDYuMDIwNzI1LCJsb24iOjAuNjg5OTc2LCJ1cmwiOiJodHRwczpcL1wvd3d3Lmdvb2dsZS5mclwvbWFwc1wvQDQ2LjAyMDcyNSwwLjY4OTk3NiwxNXoifSwic2l0ZV9pbnRlcm5ldCI6Imh0dHBzOlwvXC9jaGFyZW50ZS5jaWRmZi5pbmZvXC8ifSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDYuMDMxMTI4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMjAzMTY2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBSdWZmZWNgLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsiaWQiOiIxMTYxIiwiY2VudHJlX2lkIjoiNzQiLCJub20iOiJSdWZmZWMiLCJub21fc2x1ZyI6InJ1ZmZlYyIsImFkcmVzc2UiOiJDQ0FTXG43IEJvdWxldmFyZCBkZXMgR3JhbmRzIFJvY3MiLCJjcCI6IjE2NzAwIiwidmlsbGUiOiJSdWZmZWMiLCJ2aWxsZV9zbHVnIjoicnVmZmVjIiwiY2l0eV9pZCI6IjU3NjkiLCJlbWFpbCI6IiIsInRlbGVwaG9uZSI6IjA1IDQ1IDkyIDM0IDAyIiwicXB2IjoiMCIsInpyciI6IjEiLCJhY2N1ZWlsIjoiQ2VudHJlIENvbW11bmFsIGQnYWN0aW9ucyBzb2NpYWxlIiwiYWNjdWVpbF9wcmVjaXNpb24iOiIiLCJob3JhaXJlcyI6IkEgbGEgZGVtYW5kZSAtIHN1ciByZW5kZXotdm91cyIsInZvbF9ocl9oZWJkbyI6IjNIIG1lbnN1ZWxsZXMiLCJpaSI6IjEiLCJpYyI6IjEiLCJlIjoiMCIsInYiOiIwIiwicHJlY2lzaW9uIjoiIiwiY2FydG9ncmFwaGllIjoiMSIsImRlbGV0ZWQiOiIwIiwiY2FkcmUxIjoiTCdhY2NcdTAwZThzIGF1eCBkcm9pdHMgdG91dGVzIHRoXHUwMGU5bWF0aXF1ZXMgY29uZm9uZHVlcyAoRFx1MDBlOWNyZXQgMjAxNS0xNzQ1IGR1IDIzIGRcdTAwZTljZW1icmUgMjAxNSByZWxhdGlmIFx1MDBlMCBsJ2Fnclx1MDBlOW1lbnQpIiwiY2FkcmUyIjpudWxsLCJjYWRyZTMiOm51bGwsImNhZHJlNCI6IkwnYWNjb21wYWduZW1lbnQgcGFyZW50YWxpdFx1MDBlOSAoRUlDQ0YsIG1cdTAwZTlkaWF0aW9uIGZhbWlsaWFsZSkiLCJjYWRyZTUiOm51bGwsImFjY2Vzc2liaWxpdGUxIjoiQXVkaXRpZiIsImFjY2Vzc2liaWxpdGUyIjpudWxsLCJhY2Nlc3NpYmlsaXRlMyI6Ik1vdGV1ciIsImFjY2Vzc2liaWxpdGU0IjoiVmlzdWVsIiwiYWNjZXNzaWJpbGl0ZTUiOm51bGwsInR5cGUxIjoiUGh5c2lxdWUiLCJ0eXBlMiI6bnVsbCwidHlwZTMiOm51bGwsInR5cGU0IjpudWxsLCJtZnMiOm51bGwsImRlcGFydGVtZW50IjoiQ2hhcmVudGUiLCJyZWdpb24iOiJOb3V2ZWxsZS1BcXVpdGFpbmUiLCJjb29yZHMiOnsibGF0Ijo0Ni4wMzExMjgsImxvbiI6MC4yMDMxNjYsInVybCI6Imh0dHBzOlwvXC93d3cuZ29vZ2xlLmZyXC9tYXBzXC9ANDYuMDMxMTI4LDAuMjAzMTY2LDE1eiJ9LCJzaXRlX2ludGVybmV0IjoiaHR0cHM6XC9cL2NoYXJlbnRlLmNpZGZmLmluZm9cLyJ9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NS42OTgzMzUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTAuMzI4MjcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYENvZ25hY2AsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyJpZCI6IjExNjIiLCJjZW50cmVfaWQiOiI3NCIsIm5vbSI6IkNvZ25hYyIsIm5vbV9zbHVnIjoiY29nbmFjIiwiYWRyZXNzZSI6Ik1haXNvbiBEXHUwMGU5cGFydGVtZW50YWxlIGRlcyBTb2xpZGFyaXRcdTAwZTlzXG5WaWxsYSBGcmFuXHUwMGU3b2lzIDFlciAtIDEyMSBib3VsZXZhcmQgRGVuZmVydCBSb2NoZXJlYXUiLCJjcCI6IjE2MTAwIiwidmlsbGUiOiJDb2duYWMiLCJ2aWxsZV9zbHVnIjoiY29nbmFjIiwiY2l0eV9pZCI6IjU1ODciLCJlbWFpbCI6IiIsInRlbGVwaG9uZSI6IjA1IDQ1IDkyIDM0IDAyIiwicXB2IjoiMCIsInpyciI6IjAiLCJhY2N1ZWlsIjoiTWFpc29uIERcdTAwZTlwYXJ0ZW1lbnRhbGUgZGUgU29saWRhcml0XHUwMGU5IiwiYWNjdWVpbF9wcmVjaXNpb24iOiIiLCJob3JhaXJlcyI6IjJcdTAwZThtZSB2ZW5kcmVkaSBkdSBtb2lzIC0gMTQtMTZoXG5zdXIgcmVuZGV6LXZvdXMiLCJ2b2xfaHJfaGViZG8iOiIzaCBtZW5zdWVsbGVzIiwiaWkiOiIxIiwiaWMiOiIxIiwiZSI6IjAiLCJ2IjoiMCIsInByZWNpc2lvbiI6IiIsImNhcnRvZ3JhcGhpZSI6IjEiLCJkZWxldGVkIjoiMCIsImNhZHJlMSI6IkwnYWNjXHUwMGU4cyBhdXggZHJvaXRzIHRvdXRlcyB0aFx1MDBlOW1hdGlxdWVzIGNvbmZvbmR1ZXMgKERcdTAwZTljcmV0IDIwMTUtMTc0NSBkdSAyMyBkXHUwMGU5Y2VtYnJlIDIwMTUgcmVsYXRpZiBcdTAwZTAgbCdhZ3JcdTAwZTltZW50KSIsImNhZHJlMiI6bnVsbCwiY2FkcmUzIjpudWxsLCJjYWRyZTQiOm51bGwsImNhZHJlNSI6bnVsbCwiYWNjZXNzaWJpbGl0ZTEiOiJBdWRpdGlmIiwiYWNjZXNzaWJpbGl0ZTIiOm51bGwsImFjY2Vzc2liaWxpdGUzIjoiTW90ZXVyIiwiYWNjZXNzaWJpbGl0ZTQiOiJWaXN1ZWwiLCJhY2Nlc3NpYmlsaXRlNSI6bnVsbCwidHlwZTEiOiJQaHlzaXF1ZSIsInR5cGUyIjoiVFx1MDBlOWxcdTAwZTlwaG9uaXF1ZSIsInR5cGUzIjpudWxsLCJ0eXBlNCI6bnVsbCwibWZzIjpudWxsLCJkZXBhcnRlbWVudCI6IkNoYXJlbnRlIiwicmVnaW9uIjoiTm91dmVsbGUtQXF1aXRhaW5lIiwiY29vcmRzIjp7ImxhdCI6NDUuNjk4MzM1LCJsb24iOi0wLjMyODI3LCJ1cmwiOiJodHRwczpcL1wvd3d3Lmdvb2dsZS5mclwvbWFwc1wvQDQ1LjY5ODMzNSwtMC4zMjgyNywxNXoifSwic2l0ZV9pbnRlcm5ldCI6Imh0dHBzOlwvXC9jaGFyZW50ZS5jaWRmZi5pbmZvXC8ifSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDUuNDc1NzQ4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0wLjE0ODU5MiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgQmFyYmV6aWV1eGAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyJpZCI6IjExNjMiLCJjZW50cmVfaWQiOiI3NCIsIm5vbSI6IkJhcmJlemlldXgiLCJub21fc2x1ZyI6ImJhcmJlemlldXgiLCJhZHJlc3NlIjoiTWFpc29uIERcdTAwZTlwYXJ0ZW1lbnRhbGUgZGVzIFNvbGlkYXJ0aXRcdTAwZTlzXG42IGF2ZW51ZSBQaWVycmUgVmlhdWQiLCJjcCI6IjE2MzAwIiwidmlsbGUiOiJCYXJiZXppZXV4LVNhaW50LUhpbGFpcmUiLCJ2aWxsZV9zbHVnIjoiYmFyYmV6aWV1eHNhaW50aGlsYWlyZSIsImNpdHlfaWQiOiI1NTE0IiwiZW1haWwiOiIiLCJ0ZWxlcGhvbmUiOiIwNSA0NSA5MiAzNCAwMiIsInFwdiI6IjAiLCJ6cnIiOiIxIiwiYWNjdWVpbCI6Ik1haXNvbiBkXHUwMGU5cGFydGVtZW50YWxlIGRlcyBzb2xpZGFyaXRcdTAwZTlzIiwiYWNjdWVpbF9wcmVjaXNpb24iOiIiLCJob3JhaXJlcyI6IjFlciBWZW5kcmVkaSBkZSAxNCBcdTAwZTAgMTZoMzBcbnN1ciByZW5kZXotdm91cyIsInZvbF9ocl9oZWJkbyI6IjNoIG1lbnN1ZWxsZXMiLCJpaSI6IjEiLCJpYyI6IjEiLCJlIjoiMCIsInYiOiIwIiwicHJlY2lzaW9uIjoiIiwiY2FydG9ncmFwaGllIjoiMSIsImRlbGV0ZWQiOiIwIiwiY2FkcmUxIjoiTCdhY2NcdTAwZThzIGF1eCBkcm9pdHMgdG91dGVzIHRoXHUwMGU5bWF0aXF1ZXMgY29uZm9uZHVlcyAoRFx1MDBlOWNyZXQgMjAxNS0xNzQ1IGR1IDIzIGRcdTAwZTljZW1icmUgMjAxNSByZWxhdGlmIFx1MDBlMCBsJ2Fnclx1MDBlOW1lbnQpIiwiY2FkcmUyIjpudWxsLCJjYWRyZTMiOm51bGwsImNhZHJlNCI6bnVsbCwiY2FkcmU1IjoiQXV0cmUiLCJhY2Nlc3NpYmlsaXRlMSI6IkF1ZGl0aWYiLCJhY2Nlc3NpYmlsaXRlMiI6bnVsbCwiYWNjZXNzaWJpbGl0ZTMiOiJNb3RldXIiLCJhY2Nlc3NpYmlsaXRlNCI6IlZpc3VlbCIsImFjY2Vzc2liaWxpdGU1IjpudWxsLCJ0eXBlMSI6IlBoeXNpcXVlIiwidHlwZTIiOiJUXHUwMGU5bFx1MDBlOXBob25pcXVlIiwidHlwZTMiOiJWaXNpb2NvbmZcdTAwZTlyZW5jZSIsInR5cGU0IjpudWxsLCJtZnMiOm51bGwsImRlcGFydGVtZW50IjoiQ2hhcmVudGUiLCJyZWdpb24iOiJOb3V2ZWxsZS1BcXVpdGFpbmUiLCJjb29yZHMiOnsibGF0Ijo0NS40NzU3NDgsImxvbiI6LTAuMTQ4NTkyLCJ1cmwiOiJodHRwczpcL1wvd3d3Lmdvb2dsZS5mclwvbWFwc1wvQDQ1LjQ3NTc0OCwtMC4xNDg1OTIsMTV6In0sInNpdGVfaW50ZXJuZXQiOiJodHRwczpcL1wvY2hhcmVudGUuY2lkZmYuaW5mb1wvIn0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQ1LjY0ODMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4xNjI3NjYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYE1haXNvbiBkZXMgcGFyZW50c2AsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyJpZCI6IjExNjQiLCJjZW50cmVfaWQiOiI3NCIsIm5vbSI6Ik1haXNvbiBkZXMgcGFyZW50cyIsIm5vbV9zbHVnIjoibWFpc29uLWRlcy1wYXJlbnRzIiwiYWRyZXNzZSI6IkZhbWlsbGknQnVsbGUgLSA0IHBsYWNlIGR1IENoYW1wcyBkZSBNYXJzIiwiY3AiOiIxNjAwMCIsInZpbGxlIjoiQW5nb3VsXHUwMGVhbWUiLCJ2aWxsZV9zbHVnIjoiYW5nb3VsZW1lIiwiY2l0eV9pZCI6IjU1MDIiLCJlbWFpbCI6IiIsInRlbGVwaG9uZSI6IjA1IDQ1IDkyIDM0IDAyIiwicXB2IjoiMCIsInpyciI6IjAiLCJhY2N1ZWlsIjoiTWFpc29uIGRlcyBwYXJlbnRzIiwiYWNjdWVpbF9wcmVjaXNpb24iOiIiLCJob3JhaXJlcyI6IjNcdTAwZThtZSBtYXJkaSBkdSBtb2lzIC0gMTQtMTdoXG5zdXIgcmVuZGV6LXZvdXMiLCJ2b2xfaHJfaGViZG8iOiIzIGggbWVuc3VlbGxlcyIsImlpIjoiMSIsImljIjoiMSIsImUiOiIwIiwidiI6IjAiLCJwcmVjaXNpb24iOiIiLCJjYXJ0b2dyYXBoaWUiOiIxIiwiZGVsZXRlZCI6IjAiLCJjYWRyZTEiOiJMJ2FjY1x1MDBlOHMgYXV4IGRyb2l0cyB0b3V0ZXMgdGhcdTAwZTltYXRpcXVlcyBjb25mb25kdWVzIChEXHUwMGU5Y3JldCAyMDE1LTE3NDUgZHUgMjMgZFx1MDBlOWNlbWJyZSAyMDE1IHJlbGF0aWYgXHUwMGUwIGwnYWdyXHUwMGU5bWVudCkiLCJjYWRyZTIiOm51bGwsImNhZHJlMyI6IkwnYWNjb21wYWduZW1lbnQgdmlvbGVuY2UiLCJjYWRyZTQiOiJMJ2FjY29tcGFnbmVtZW50IHBhcmVudGFsaXRcdTAwZTkgKEVJQ0NGLCBtXHUwMGU5ZGlhdGlvbiBmYW1pbGlhbGUpIiwiY2FkcmU1IjoiQXV0cmUiLCJhY2Nlc3NpYmlsaXRlMSI6IkF1ZGl0aWYiLCJhY2Nlc3NpYmlsaXRlMiI6bnVsbCwiYWNjZXNzaWJpbGl0ZTMiOiJNb3RldXIiLCJhY2Nlc3NpYmlsaXRlNCI6IlZpc3VlbCIsImFjY2Vzc2liaWxpdGU1IjpudWxsLCJ0eXBlMSI6IlBoeXNpcXVlIiwidHlwZTIiOiJUXHUwMGU5bFx1MDBlOXBob25pcXVlIiwidHlwZTMiOiJWaXNpb2NvbmZcdTAwZTlyZW5jZSIsInR5cGU0IjpudWxsLCJtZnMiOm51bGwsImRlcGFydGVtZW50IjoiQ2hhcmVudGUiLCJyZWdpb24iOiJOb3V2ZWxsZS1BcXVpdGFpbmUiLCJjb29yZHMiOnsibGF0Ijo0NS42NDgzLCJsb24iOjAuMTYyNzY2LCJ1cmwiOiJodHRwczpcL1wvd3d3Lmdvb2dsZS5mclwvbWFwc1wvQDQ1LjY0ODMsMC4xNjI3NjYsMTV6In0sInNpdGVfaW50ZXJuZXQiOiJodHRwczpcL1wvY2hhcmVudGUuY2lkZmYuaW5mb1wvIn0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQ1LjY1MzkxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjE3MzE5NSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgQ0FKIExhIEdyYW5kIEZvbnRgLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsiaWQiOiIxMTY1IiwiY2VudHJlX2lkIjoiNzQiLCJub20iOiJDQUogTGEgR3JhbmQgRm9udCIsIm5vbV9zbHVnIjoiY2FqLWxhLWdyYW5kLWZvbnQiLCJhZHJlc3NlIjoiUGxhY2UgSGVucmkgQ2hhbWFyZSBMYSBHcmFuZCBGb250IiwiY3AiOiIxNjAwMCIsInZpbGxlIjoiQW5nb3VsXHUwMGVhbWUiLCJ2aWxsZV9zbHVnIjoiYW5nb3VsZW1lIiwiY2l0eV9pZCI6IjU1MDIiLCJlbWFpbCI6IiIsInRlbGVwaG9uZSI6IjA1IDQ1IDkzIDIyIDIyIiwicXB2IjoiMSIsInpyciI6IjAiLCJhY2N1ZWlsIjoiQ0FKIiwiYWNjdWVpbF9wcmVjaXNpb24iOiIiLCJob3JhaXJlcyI6ImxlIDRcdTAwZThtZSB2ZW5kcmVkaSBkdSBtb2lzXG4xNGgtMTZoIHN1ciByZW5kZXogdm91cyIsInZvbF9ocl9oZWJkbyI6IjJoIG1lbnN1ZWxsZXMiLCJpaSI6IjEiLCJpYyI6IjEiLCJlIjoiMCIsInYiOiIwIiwicHJlY2lzaW9uIjoiIiwiY2FydG9ncmFwaGllIjoiMSIsImRlbGV0ZWQiOiIwIiwiY2FkcmUxIjoiTCdhY2NcdTAwZThzIGF1eCBkcm9pdHMgdG91dGVzIHRoXHUwMGU5bWF0aXF1ZXMgY29uZm9uZHVlcyAoRFx1MDBlOWNyZXQgMjAxNS0xNzQ1IGR1IDIzIGRcdTAwZTljZW1icmUgMjAxNSByZWxhdGlmIFx1MDBlMCBsJ2Fnclx1MDBlOW1lbnQpIiwiY2FkcmUyIjoiTCdhY2NvbXBhZ25lbWVudCBlbXBsb2kiLCJjYWRyZTMiOm51bGwsImNhZHJlNCI6bnVsbCwiY2FkcmU1IjpudWxsLCJhY2Nlc3NpYmlsaXRlMSI6IkF1ZGl0aWYiLCJhY2Nlc3NpYmlsaXRlMiI6bnVsbCwiYWNjZXNzaWJpbGl0ZTMiOiJNb3RldXIiLCJhY2Nlc3NpYmlsaXRlNCI6IlZpc3VlbCIsImFjY2Vzc2liaWxpdGU1IjpudWxsLCJ0eXBlMSI6IlBoeXNpcXVlIiwidHlwZTIiOiJUXHUwMGU5bFx1MDBlOXBob25pcXVlIiwidHlwZTMiOiJWaXNpb2NvbmZcdTAwZTlyZW5jZSIsInR5cGU0IjpudWxsLCJtZnMiOm51bGwsImRlcGFydGVtZW50IjoiQ2hhcmVudGUiLCJyZWdpb24iOiJOb3V2ZWxsZS1BcXVpdGFpbmUiLCJjb29yZHMiOnsibGF0Ijo0NS42NTM5MTYsImxvbiI6MC4xNzMxOTUsInVybCI6Imh0dHBzOlwvXC93d3cuZ29vZ2xlLmZyXC9tYXBzXC9ANDUuNjUzOTE2LDAuMTczMTk1LDE1eiJ9LCJzaXRlX2ludGVybmV0IjoiaHR0cHM6XC9cL2NoYXJlbnRlLmNpZGZmLmluZm9cLyJ9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NS42NTAyOTcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4xNjkwMTMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYEFuZ291bMOqbWVgLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsiaWQiOiIxNzE4IiwiY2VudHJlX2lkIjoiNzQiLCJub20iOiJBbmdvdWxcdTAwZWFtZSIsIm5vbV9zbHVnIjoiYW5nb3VsZW1lIiwiYWRyZXNzZSI6IjE2IHJ1ZSBkZXMgQm9pc3NpXHUwMGU4cmVzIiwiY3AiOiIxNjAwMCIsInZpbGxlIjoiQW5nb3VsXHUwMGVhbWUiLCJ2aWxsZV9zbHVnIjoiYW5nb3VsZW1lIiwiY2l0eV9pZCI6IjU1MDIiLCJlbWFpbCI6ImNpZGZmLmNoYXJlbnRlQGNpZGZmMTYub3JnIiwidGVsZXBob25lIjoiMDUgNDUgOTIgMzQgMDIiLCJxcHYiOiIwIiwienJyIjoiMCIsImFjY3VlaWwiOiJDSURGRiBDSEFSRU5URSIsImFjY3VlaWxfcHJlY2lzaW9uIjoiIiwiaG9yYWlyZXMiOiI5SC0xMkgzMCBcL1wvIDE0SC0xN0hcblN1ciBSZW5kZXotVm91c1xuIiwidm9sX2hyX2hlYmRvIjoiNkgiLCJpaSI6IjEiLCJpYyI6IjEiLCJlIjoiMSIsInYiOiIxIiwicHJlY2lzaW9uIjoiIiwiY2FydG9ncmFwaGllIjoiMSIsImRlbGV0ZWQiOiIwIiwiY2FkcmUxIjoiTCdhY2NcdTAwZThzIGF1eCBkcm9pdHMgdG91dGVzIHRoXHUwMGU5bWF0aXF1ZXMgY29uZm9uZHVlcyAoRFx1MDBlOWNyZXQgMjAxNS0xNzQ1IGR1IDIzIGRcdTAwZTljZW1icmUgMjAxNSByZWxhdGlmIFx1MDBlMCBsJ2Fnclx1MDBlOW1lbnQpIiwiY2FkcmUyIjoiTCdhY2NvbXBhZ25lbWVudCBlbXBsb2kiLCJjYWRyZTMiOiJMJ2FjY29tcGFnbmVtZW50IHZpb2xlbmNlIiwiY2FkcmU0IjoiTCdhY2NvbXBhZ25lbWVudCBwYXJlbnRhbGl0XHUwMGU5IChFSUNDRiwgbVx1MDBlOWRpYXRpb24gZmFtaWxpYWxlKSIsImNhZHJlNSI6IkF1dHJlIiwiYWNjZXNzaWJpbGl0ZTEiOiJBdWRpdGlmIiwiYWNjZXNzaWJpbGl0ZTIiOiJNZW50YWxcL1BzeWNoaXF1ZSIsImFjY2Vzc2liaWxpdGUzIjoiTW90ZXVyIiwiYWNjZXNzaWJpbGl0ZTQiOiJWaXN1ZWwiLCJhY2Nlc3NpYmlsaXRlNSI6bnVsbCwidHlwZTEiOiJQaHlzaXF1ZSIsInR5cGUyIjoiVFx1MDBlOWxcdTAwZTlwaG9uaXF1ZSIsInR5cGUzIjoiVmlzaW9jb25mXHUwMGU5cmVuY2UiLCJ0eXBlNCI6bnVsbCwibWZzIjpudWxsLCJkZXBhcnRlbWVudCI6IkNoYXJlbnRlIiwicmVnaW9uIjoiTm91dmVsbGUtQXF1aXRhaW5lIiwiY29vcmRzIjp7ImxhdCI6NDUuNjUwMjk3LCJsb24iOjAuMTY5MDEzLCJ1cmwiOiJodHRwczpcL1wvd3d3Lmdvb2dsZS5mclwvbWFwc1wvQDQ1LjY1MDI5NywwLjE2OTAxMywxNXoifSwic2l0ZV9pbnRlcm5ldCI6Imh0dHBzOlwvXC9jaGFyZW50ZS5jaWRmZi5pbmZvXC8ifSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDUuNjgyMjc3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0wLjE3MDc2MSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgSmFybmFjYCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ImlkIjoiMjI5MSIsImNlbnRyZV9pZCI6Ijc0Iiwibm9tIjoiSmFybmFjIiwibm9tX3NsdWciOiJqYXJuYWMiLCJhZHJlc3NlIjoiRXNwYWNlIEZyYW5jZSBTZXJ2aWNlc1xuMTYgcnVlIERvZ2xpYW5pIiwiY3AiOiIxNjIwMCIsInZpbGxlIjoiSmFybmFjIiwidmlsbGVfc2x1ZyI6Imphcm5hYyIsImNpdHlfaWQiOiI1NjUwIiwiZW1haWwiOiIiLCJ0ZWxlcGhvbmUiOiIwNSA0NSA5MiAzNCAwMiIsInFwdiI6IjAiLCJ6cnIiOiIwIiwiYWNjdWVpbCI6IkV0YWJsaXNzZW1lbnQgRnJhbmNlIFNlcnZpY2UiLCJhY2N1ZWlsX3ByZWNpc2lvbiI6IiIsImhvcmFpcmVzIjoibGUgMlx1MDBlOG1lIG1hcmRpIGR1IG1vaXMgLSAxNGgwMCBcdTAwZTAgIDE2aDMwXG5zdXIgcmVuZGV6LXZvdXMiLCJ2b2xfaHJfaGViZG8iOiIxLjUgaGV1cmVzIiwiaWkiOiIxIiwiaWMiOiIxIiwiZSI6IjAiLCJ2IjoiMCIsInByZWNpc2lvbiI6IiIsImNhcnRvZ3JhcGhpZSI6IjEiLCJkZWxldGVkIjoiMCIsImNhZHJlMSI6IkwnYWNjXHUwMGU4cyBhdXggZHJvaXRzIHRvdXRlcyB0aFx1MDBlOW1hdGlxdWVzIGNvbmZvbmR1ZXMgKERcdTAwZTljcmV0IDIwMTUtMTc0NSBkdSAyMyBkXHUwMGU5Y2VtYnJlIDIwMTUgcmVsYXRpZiBcdTAwZTAgbCdhZ3JcdTAwZTltZW50KSIsImNhZHJlMiI6bnVsbCwiY2FkcmUzIjpudWxsLCJjYWRyZTQiOm51bGwsImNhZHJlNSI6bnVsbCwiYWNjZXNzaWJpbGl0ZTEiOiJBdWRpdGlmIiwiYWNjZXNzaWJpbGl0ZTIiOiJNZW50YWxcL1BzeWNoaXF1ZSIsImFjY2Vzc2liaWxpdGUzIjoiTW90ZXVyIiwiYWNjZXNzaWJpbGl0ZTQiOiJWaXN1ZWwiLCJhY2Nlc3NpYmlsaXRlNSI6bnVsbCwidHlwZTEiOiJQaHlzaXF1ZSIsInR5cGUyIjoiVFx1MDBlOWxcdTAwZTlwaG9uaXF1ZSIsInR5cGUzIjpudWxsLCJ0eXBlNCI6bnVsbCwibWZzIjoiRnJhbmNlIFNlcnZpY2UiLCJkZXBhcnRlbWVudCI6IkNoYXJlbnRlIiwicmVnaW9uIjoiTm91dmVsbGUtQXF1aXRhaW5lIiwiY29vcmRzIjp7ImxhdCI6NDUuNjgyMjc3LCJsb24iOi0wLjE3MDc2MSwidXJsIjoiaHR0cHM6XC9cL3d3dy5nb29nbGUuZnJcL21hcHNcL0A0NS42ODIyNzcsLTAuMTcwNzYxLDE1eiJ9LCJzaXRlX2ludGVybmV0IjoiaHR0cHM6XC9cL2NoYXJlbnRlLmNpZGZmLmluZm9cLyJ9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NS44OTQ4NDcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wMTA3MjUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYEFpZ3JlYCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ImlkIjoiMzQxNCIsImNlbnRyZV9pZCI6Ijc0Iiwibm9tIjoiQWlncmUiLCJub21fc2x1ZyI6ImFpZ3JlIiwiYWRyZXNzZSI6IkVzcGFjZSBGcmFuY2UgU2VydmljZXNcbjI5IEdyYW5kZSBydWUiLCJjcCI6IjE2MTQwIiwidmlsbGUiOiJBaWdyZSIsInZpbGxlX3NsdWciOiJhaWdyZSIsImNpdHlfaWQiOiI1NDkzIiwiZW1haWwiOiIiLCJ0ZWxlcGhvbmUiOiIwNSA0OCAxNyAwNCAxMCIsInFwdiI6IjAiLCJ6cnIiOiIxIiwiYWNjdWVpbCI6IiIsImFjY3VlaWxfcHJlY2lzaW9uIjoiIiwiaG9yYWlyZXMiOiIzXHUwMGU4bWUgamV1ZGkgYXByXHUwMGU4cy1taWRpIGR1IG1vaXMgMTRoLTE3aCIsInZvbF9ocl9oZWJkbyI6IiIsImlpIjoiMSIsImljIjoiMSIsImUiOiIwIiwidiI6IjEiLCJwcmVjaXNpb24iOiIiLCJjYXJ0b2dyYXBoaWUiOiIxIiwiZGVsZXRlZCI6IjAiLCJjYWRyZTEiOiJMJ2FjY1x1MDBlOHMgYXV4IGRyb2l0cyB0b3V0ZXMgdGhcdTAwZTltYXRpcXVlcyBjb25mb25kdWVzIChEXHUwMGU5Y3JldCAyMDE1LTE3NDUgZHUgMjMgZFx1MDBlOWNlbWJyZSAyMDE1IHJlbGF0aWYgXHUwMGUwIGwnYWdyXHUwMGU5bWVudCkiLCJjYWRyZTIiOm51bGwsImNhZHJlMyI6bnVsbCwiY2FkcmU0IjpudWxsLCJjYWRyZTUiOm51bGwsImFjY2Vzc2liaWxpdGUxIjoiQXVkaXRpZiIsImFjY2Vzc2liaWxpdGUyIjoiTWVudGFsXC9Qc3ljaGlxdWUiLCJhY2Nlc3NpYmlsaXRlMyI6Ik1vdGV1ciIsImFjY2Vzc2liaWxpdGU0IjoiVmlzdWVsIiwiYWNjZXNzaWJpbGl0ZTUiOm51bGwsInR5cGUxIjoiUGh5c2lxdWUiLCJ0eXBlMiI6bnVsbCwidHlwZTMiOm51bGwsInR5cGU0IjpudWxsLCJtZnMiOiJGcmFuY2UgU2VydmljZSIsImRlcGFydGVtZW50IjoiQ2hhcmVudGUiLCJyZWdpb24iOiJOb3V2ZWxsZS1BcXVpdGFpbmUiLCJjb29yZHMiOnsibGF0Ijo0NS44OTQ4NDcsImxvbiI6MC4wMTA3MjUsInVybCI6Imh0dHBzOlwvXC93d3cuZ29vZ2xlLmZyXC9tYXBzXC9ANDUuODk0ODQ3LDAuMDEwNzI1LDE1eiJ9LCJzaXRlX2ludGVybmV0IjoiaHR0cHM6XC9cL2NoYXJlbnRlLmNpZGZmLmluZm9cLyJ9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NS43Mzc3ODQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4zODU2NTksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYExhIFJvY2hlZm91Y2F1bGRgLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsiaWQiOiIyNzI5IiwiY2VudHJlX2lkIjoiNzQiLCJub20iOiJMYSBSb2NoZWZvdWNhdWxkIiwibm9tX3NsdWciOiJsYS1yb2NoZWZvdWNhdWxkIiwiYWRyZXNzZSI6IkVzcGFjZSBGcmFuY2UgU2VydmljZXNcbjEgcnVlIGRlIGwnQXVtXHUwMGY0bmVyaWUiLCJjcCI6IjE2MTEwIiwidmlsbGUiOiJSb2NoZWZvdWNhdWxkIChMYSkiLCJ2aWxsZV9zbHVnIjoicm9jaGVmb3VjYXVsZC0obGEpIiwiY2l0eV9pZCI6IjU3NTkiLCJlbWFpbCI6IiIsInRlbGVwaG9uZSI6IjA1IDQ1IDkyIDM0IDAyIiwicXB2IjoiMCIsInpyciI6IjEiLCJhY2N1ZWlsIjoibWFpc29uIGZyYW5jZSBzZXJ2aWNlcyIsImFjY3VlaWxfcHJlY2lzaW9uIjoiIiwiaG9yYWlyZXMiOiIxIG1lcmNyZWRpIHBhciBtb2lzIC0gMTQtMTZoMzBcbnN1ciByZW5kZXotdm91cyIsInZvbF9ocl9oZWJkbyI6IjAuNSIsImlpIjoiMSIsImljIjoiMSIsImUiOiIwIiwidiI6IjAiLCJwcmVjaXNpb24iOiIiLCJjYXJ0b2dyYXBoaWUiOiIxIiwiZGVsZXRlZCI6IjAiLCJjYWRyZTEiOiJMJ2FjY1x1MDBlOHMgYXV4IGRyb2l0cyB0b3V0ZXMgdGhcdTAwZTltYXRpcXVlcyBjb25mb25kdWVzIChEXHUwMGU5Y3JldCAyMDE1LTE3NDUgZHUgMjMgZFx1MDBlOWNlbWJyZSAyMDE1IHJlbGF0aWYgXHUwMGUwIGwnYWdyXHUwMGU5bWVudCkiLCJjYWRyZTIiOm51bGwsImNhZHJlMyI6bnVsbCwiY2FkcmU0IjpudWxsLCJjYWRyZTUiOm51bGwsImFjY2Vzc2liaWxpdGUxIjoiQXVkaXRpZiIsImFjY2Vzc2liaWxpdGUyIjoiTWVudGFsXC9Qc3ljaGlxdWUiLCJhY2Nlc3NpYmlsaXRlMyI6Ik1vdGV1ciIsImFjY2Vzc2liaWxpdGU0IjoiVmlzdWVsIiwiYWNjZXNzaWJpbGl0ZTUiOm51bGwsInR5cGUxIjoiUGh5c2lxdWUiLCJ0eXBlMiI6bnVsbCwidHlwZTMiOm51bGwsInR5cGU0IjpudWxsLCJtZnMiOiJGcmFuY2UgU2VydmljZSIsImRlcGFydGVtZW50IjoiQ2hhcmVudGUiLCJyZWdpb24iOiJOb3V2ZWxsZS1BcXVpdGFpbmUiLCJjb29yZHMiOnsibGF0Ijo0NS43Mzc3ODQsImxvbiI6MC4zODU2NTksInVybCI6Imh0dHBzOlwvXC93d3cuZ29vZ2xlLmZyXC9tYXBzXC9ANDUuNzM3Nzg0LDAuMzg1NjU5LDE1eiJ9LCJzaXRlX2ludGVybmV0IjoiaHR0cHM6XC9cL2NoYXJlbnRlLmNpZGZmLmluZm9cLyJ9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NS42NDgxNTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4xODMxMTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYEZMRVBgLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsiaWQiOiIyNzgzIiwiY2VudHJlX2lkIjoiNzQiLCJub20iOiJGTEVQIiwibm9tX3NsdWciOiJmbGVwIiwiYWRyZXNzZSI6IjkgYmxkIGxlb24gYmx1bSAiLCJjcCI6IjE2ODAwIiwidmlsbGUiOiJTb3lhdXgiLCJ2aWxsZV9zbHVnIjoic295YXV4IiwiY2l0eV9pZCI6IjU4NDIiLCJlbWFpbCI6IiIsInRlbGVwaG9uZSI6IjA1IDQ1IDkzIDExIDU4IiwicXB2IjoiMSIsInpyciI6IjAiLCJhY2N1ZWlsIjoiY2VudHJlIHNvY2lhbCIsImFjY3VlaWxfcHJlY2lzaW9uIjoiIiwiaG9yYWlyZXMiOiI0XHUwMGU4bWUgbWFyZGkgZHUgbW9pcyAtIDE0LTE2aDMwXG5zdXIgcmVuZGV6LXZvdXMiLCJ2b2xfaHJfaGViZG8iOiIwLjUiLCJpaSI6IjEiLCJpYyI6IjEiLCJlIjoiMSIsInYiOiIxIiwicHJlY2lzaW9uIjoiIiwiY2FydG9ncmFwaGllIjoiMSIsImRlbGV0ZWQiOiIwIiwiY2FkcmUxIjoiTCdhY2NcdTAwZThzIGF1eCBkcm9pdHMgdG91dGVzIHRoXHUwMGU5bWF0aXF1ZXMgY29uZm9uZHVlcyAoRFx1MDBlOWNyZXQgMjAxNS0xNzQ1IGR1IDIzIGRcdTAwZTljZW1icmUgMjAxNSByZWxhdGlmIFx1MDBlMCBsJ2Fnclx1MDBlOW1lbnQpIiwiY2FkcmUyIjoiTCdhY2NvbXBhZ25lbWVudCBlbXBsb2kiLCJjYWRyZTMiOm51bGwsImNhZHJlNCI6bnVsbCwiY2FkcmU1IjpudWxsLCJhY2Nlc3NpYmlsaXRlMSI6IkF1ZGl0aWYiLCJhY2Nlc3NpYmlsaXRlMiI6Ik1lbnRhbFwvUHN5Y2hpcXVlIiwiYWNjZXNzaWJpbGl0ZTMiOiJNb3RldXIiLCJhY2Nlc3NpYmlsaXRlNCI6IlZpc3VlbCIsImFjY2Vzc2liaWxpdGU1IjpudWxsLCJ0eXBlMSI6IlBoeXNpcXVlIiwidHlwZTIiOm51bGwsInR5cGUzIjpudWxsLCJ0eXBlNCI6bnVsbCwibWZzIjpudWxsLCJkZXBhcnRlbWVudCI6IkNoYXJlbnRlIiwicmVnaW9uIjoiTm91dmVsbGUtQXF1aXRhaW5lIiwiY29vcmRzIjp7ImxhdCI6NDUuNjQ4MTUyLCJsb24iOjAuMTgzMTExLCJ1cmwiOiJodHRwczpcL1wvd3d3Lmdvb2dsZS5mclwvbWFwc1wvQDQ1LjY0ODE1MiwwLjE4MzExMSwxNXoifSwic2l0ZV9pbnRlcm5ldCI6Imh0dHBzOlwvXC9jaGFyZW50ZS5jaWRmZi5pbmZvXC8ifSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDUuNzM5MTMxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMjQxNjIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYEJyaWVgLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsiaWQiOiIyOTkwIiwiY2VudHJlX2lkIjoiNzQiLCJub20iOiJCcmllIiwibm9tX3NsdWciOiJicmllIiwiYWRyZXNzZSI6IkVzcGFjZSBGcmFuY2UgU2VydmljZXNcbjU1IFJ1ZSBkZSBsYSBNYWlyaWVcbkxlIEJvdXJnIiwiY3AiOiIxNjU5MCIsInZpbGxlIjoiQnJpZSIsInZpbGxlX3NsdWciOiJicmllIiwiY2l0eV9pZCI6IjU1NDciLCJlbWFpbCI6IiIsInRlbGVwaG9uZSI6IjA1IDQ1IDY5IDk2IDg5IiwicXB2IjoiMCIsInpyciI6IjAiLCJhY2N1ZWlsIjoiIiwiYWNjdWVpbF9wcmVjaXNpb24iOiJNYWlzb24gRnJhbmNlIFNlcnZpY2VzIiwiaG9yYWlyZXMiOiI0ZW1lIGpldWRpIGR1IG1vaXMgXG4xNC0xNmgzMCIsInZvbF9ocl9oZWJkbyI6IiIsImlpIjoiMSIsImljIjoiMSIsImUiOiIwIiwidiI6IjAiLCJwcmVjaXNpb24iOiIiLCJjYXJ0b2dyYXBoaWUiOiIxIiwiZGVsZXRlZCI6IjAiLCJjYWRyZTEiOiJMJ2FjY1x1MDBlOHMgYXV4IGRyb2l0cyB0b3V0ZXMgdGhcdTAwZTltYXRpcXVlcyBjb25mb25kdWVzIChEXHUwMGU5Y3JldCAyMDE1LTE3NDUgZHUgMjMgZFx1MDBlOWNlbWJyZSAyMDE1IHJlbGF0aWYgXHUwMGUwIGwnYWdyXHUwMGU5bWVudCkiLCJjYWRyZTIiOm51bGwsImNhZHJlMyI6bnVsbCwiY2FkcmU0IjpudWxsLCJjYWRyZTUiOm51bGwsImFjY2Vzc2liaWxpdGUxIjoiQXVkaXRpZiIsImFjY2Vzc2liaWxpdGUyIjoiTWVudGFsXC9Qc3ljaGlxdWUiLCJhY2Nlc3NpYmlsaXRlMyI6Ik1vdGV1ciIsImFjY2Vzc2liaWxpdGU0IjoiVmlzdWVsIiwiYWNjZXNzaWJpbGl0ZTUiOm51bGwsInR5cGUxIjoiUGh5c2lxdWUiLCJ0eXBlMiI6bnVsbCwidHlwZTMiOm51bGwsInR5cGU0IjpudWxsLCJtZnMiOiJGcmFuY2UgU2VydmljZSIsImRlcGFydGVtZW50IjoiQ2hhcmVudGUiLCJyZWdpb24iOiJOb3V2ZWxsZS1BcXVpdGFpbmUiLCJjb29yZHMiOnsibGF0Ijo0NS43MzkxMzEsImxvbiI6MC4yNDE2MiwidXJsIjoiaHR0cHM6XC9cL3d3dy5nb29nbGUuZnJcL21hcHNcL0A0NS43MzkxMzEsMC4yNDE2MiwxNXoifSwic2l0ZV9pbnRlcm5ldCI6Imh0dHBzOlwvXC9jaGFyZW50ZS5jaWRmZi5pbmZvXC8ifSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDUuODg1MDI2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuNTgzMjM2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBUZXJyZXMtZGUtSGF1dGUtQ2hhcmVudGVgLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsiaWQiOiIzNDE1IiwiY2VudHJlX2lkIjoiNzQiLCJub20iOiJUZXJyZXMtZGUtSGF1dGUtQ2hhcmVudGUiLCJub21fc2x1ZyI6InRlcnJlc2RlaGF1dGVjaGFyZW50ZSIsImFkcmVzc2UiOiJFc3BhY2UgRnJhbmNlIFNlcnZpY2VzXG41IHJ1ZSBkZXMgUGFsZWluZXNcbiIsImNwIjoiMTYyNzAiLCJ2aWxsZSI6IlRlcnJlcy1kZS1IYXV0ZS1DaGFyZW50ZSIsInZpbGxlX3NsdWciOiJ0ZXJyZXNkZWhhdXRlY2hhcmVudGUiLCJjaXR5X2lkIjoiMzY4NjciLCJlbWFpbCI6IiIsInRlbGVwaG9uZSI6IjA1IDg2IDg0IDA1IDY3IiwicXB2IjoiMCIsInpyciI6IjEiLCJhY2N1ZWlsIjoiIiwiYWNjdWVpbF9wcmVjaXNpb24iOiIiLCJob3JhaXJlcyI6IjNcdTAwZThtZSB2ZW5kcmVkaSBhcHJcdTAwZThzLW1pZGkgZHUgbW9pcyAoMTRoLTE3aCkiLCJ2b2xfaHJfaGViZG8iOiIiLCJpaSI6IjEiLCJpYyI6IjEiLCJlIjoiMCIsInYiOiIxIiwicHJlY2lzaW9uIjoiIiwiY2FydG9ncmFwaGllIjoiMSIsImRlbGV0ZWQiOiIwIiwiY2FkcmUxIjoiTCdhY2NcdTAwZThzIGF1eCBkcm9pdHMgdG91dGVzIHRoXHUwMGU5bWF0aXF1ZXMgY29uZm9uZHVlcyAoRFx1MDBlOWNyZXQgMjAxNS0xNzQ1IGR1IDIzIGRcdTAwZTljZW1icmUgMjAxNSByZWxhdGlmIFx1MDBlMCBsJ2Fnclx1MDBlOW1lbnQpIiwiY2FkcmUyIjpudWxsLCJjYWRyZTMiOm51bGwsImNhZHJlNCI6bnVsbCwiY2FkcmU1IjpudWxsLCJhY2Nlc3NpYmlsaXRlMSI6IkF1ZGl0aWYiLCJhY2Nlc3NpYmlsaXRlMiI6Ik1lbnRhbFwvUHN5Y2hpcXVlIiwiYWNjZXNzaWJpbGl0ZTMiOiJNb3RldXIiLCJhY2Nlc3NpYmlsaXRlNCI6IlZpc3VlbCIsImFjY2Vzc2liaWxpdGU1IjpudWxsLCJ0eXBlMSI6IlBoeXNpcXVlIiwidHlwZTIiOm51bGwsInR5cGUzIjpudWxsLCJ0eXBlNCI6bnVsbCwibWZzIjoiRnJhbmNlIFNlcnZpY2UiLCJkZXBhcnRlbWVudCI6IkNoYXJlbnRlIiwicmVnaW9uIjoiTm91dmVsbGUtQXF1aXRhaW5lIiwiY29vcmRzIjp7ImxhdCI6NDUuODg1MDI2LCJsb24iOjAuNTgzMjM2LCJ1cmwiOiJodHRwczpcL1wvd3d3Lmdvb2dsZS5mclwvbWFwc1wvQDQ1Ljg4NTAyNiwwLjU4MzIzNiwxNXoifSwic2l0ZV9pbnRlcm5ldCI6Imh0dHBzOlwvXC9jaGFyZW50ZS5jaWRmZi5pbmZvXC8ifSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDUuNjUwMjk3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMTY5MDEzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBDaGFyZW50ZSwgQW5nb3VsZW1lYCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ImlkIjoiNzQiLCJub20iOiJDaGFyZW50ZSwgQW5nb3VsZW1lIiwiYWRyZXNzZSI6IjE2IHJ1ZSBkZXMgQm9pc3NpXHUwMGU4cmVzIiwiY3AiOiIxNjAwMCIsInZpbGxlIjoiQW5nb3VsXHUwMGVhbWUiLCJ0ZWxlcGhvbmUiOiIwNSA0NSA5MiAzNCAwMiIsIm1haWwiOiJjaWRmZi5jaGFyZW50ZUBjaWRmZjE2Lm9yZyIsInNpdGVfaW50ZXJuZXQiOiJodHRwczpcL1wvY2hhcmVudGUuY2lkZmYuaW5mb1wvIiwiYWNjZXNfZHJvaXQiOiJMJ2FjY1x1MDBlOHMgYXV4IGRyb2l0cyB0b3V0ZXMgdGhcdTAwZTltYXRpcXVlcyBjb25mb25kdWVzIChEXHUwMGU5Y3JldCAyMDE1LTE3NDUgZHUgMjMgZFx1MDBlOWNlbWJyZSAyMDE1IHJlbGF0aWYgXHUwMGUwIGwnYWdyXHUwMGU5bWVudCkiLCJlbXBsb2kiOiJMJ2FjY29tcGFnbmVtZW50IGVtcGxvaSIsInZpb2xlbmNlcyI6IkwnYWNjb21wYWduZW1lbnQgdmlvbGVuY2UiLCJwYXJlbnRhbGl0ZSI6IkwnYWNjb21wYWduZW1lbnQgcGFyZW50YWxpdFx1MDBlOSAoRUlDQ0YsIG1cdTAwZTlkaWF0aW9uIGZhbWlsaWFsZSkiLCJhdXRyZSI6IkF1dHJlIiwic2llZ2UiOnRydWUsImNvb3JkcyI6eyJsYXQiOjQ1LjY1MDI5NywibG9uIjowLjE2OTAxMywidXJsIjoiaHR0cHM6XC9cL3d3dy5nb29nbGUuZnJcL21hcHNcL0A0NS42NTAyOTcsMC4xNjkwMTMsMTV6In0sInJlZ2lvbiI6Ik5vdXZlbGxlLUFxdWl0YWluZSIsImRlcGFydGVtZW50IjoiQ2hhcmVudGUifSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVmYXVsdFpvb20gPSA3OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlZmF1bHRab29tTW9iaWxlID0gNjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtaW5ab29tID0gNjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXhab29tID0gMjA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBtYXAgPSBudWxsOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGluaXRNYXAoc2VsZWN0ZWRDYXRlZ29yaWVzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwID0gbmV3IEwubWFwKG1hcElkLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpvb21Db250cm9sOiBmYWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgTC5jb250cm9sLnpvb20oewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogJ2JvdHRvbXJpZ2h0JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLmFkZFRvKG1hcCk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBMLnRpbGVMYXllcigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2h0dHBzOi8ve3N9LmJhc2VtYXBzLmNhcnRvY2RuLmNvbS9saWdodF9hbGwve3p9L3t4fS97eX17cn0ucG5nJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluWm9vbSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heFpvb20KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkuYWRkVG8obWFwKTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGF5ZXJDYXRlZ29yeTEgPSBbXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsYXllckNhdGVnb3J5MiA9IFtdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxheWVyQ2F0ZWdvcnkzID0gW107CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGF5ZXJDYXRlZ29yeTQgPSBbXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsYXllckNhdGVnb3J5NSA9IFtdOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXJrZXJzID0gbmV3IEwubWFya2VyQ2x1c3Rlckdyb3VwKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BpZGVyTGVnUG9seWxpbmVPcHRpb25zOiB7IHdlaWdodDogNjAwLCBjb2xvcjogJyMyMjInLCBvcGFjaXR5OiAwIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heENsdXN0ZXJSYWRpdXM6IDQwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG1haW5NYXJrZXJzID0gbmV3IEwubGF5ZXJHcm91cCgpOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFkZHJlc3NQb2ludHMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYSA9IGFkZHJlc3NQb2ludHNbaV07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRpdGxlID0gYVsyXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IGFbM107CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvb3JkcyA9IG5ldyBMLkxhdExuZyhhWzBdLCBhWzFdKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXJrZXIgPSB7IGRhdGE6IG5ldyBMLm1hcmtlcihjb29yZHMsIHsgdGl0bGUgfSksIHNpZWdlOiBkYXRhLnNpZWdlIH07CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIGRhdGFbJ2NhZHJlMSddIHx8IGRhdGFbJ2FjY2VzX2Ryb2l0J10gKSBsYXllckNhdGVnb3J5MS5wdXNoKG1hcmtlcik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICggZGF0YVsnY2FkcmUyJ10gfHwgZGF0YVsndmlvbGVuY2VzJ10gKSBsYXllckNhdGVnb3J5Mi5wdXNoKG1hcmtlcik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICggZGF0YVsnY2FkcmUzJ10gfHwgZGF0YVsnZW1wbG9pJ10gKSBsYXllckNhdGVnb3J5My5wdXNoKG1hcmtlcik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICggZGF0YVsnY2FkcmU0J10gfHwgZGF0YVsncGFyZW50YWxpdGUnXSApIGxheWVyQ2F0ZWdvcnk0LnB1c2gobWFya2VyKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCBkYXRhWydjYWRyZTUnXSB8fCBkYXRhWydhdXRyZSddICkgbGF5ZXJDYXRlZ29yeTUucHVzaChtYXJrZXIpOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFya2VyLmRhdGEuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZSkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLnBhblRvKGNvb3Jkcyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBSZWYuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ29uLW1hcmtlci1pbnRlcmFjdCcsIHsgZGV0YWlsOiBkYXRhIH0pKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5hZGRMYXllcihtYWluTWFya2Vycyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLmFkZExheWVyKG1hcmtlcnMpOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsYXllcnNUb0Rpc3BsYXkgPSBbXTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNlbGVjdGVkQ2F0ZWdvcmllcykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIHNlbGVjdGVkQ2F0ZWdvcmllcy5pbmNsdWRlcygxKSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyc1RvRGlzcGxheS5wdXNoKC4uLmxheWVyQ2F0ZWdvcnkxKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICggc2VsZWN0ZWRDYXRlZ29yaWVzLmluY2x1ZGVzKDIpICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXJzVG9EaXNwbGF5LnB1c2goLi4ubGF5ZXJDYXRlZ29yeTIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCBzZWxlY3RlZENhdGVnb3JpZXMuaW5jbHVkZXMoMykgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllcnNUb0Rpc3BsYXkucHVzaCguLi5sYXllckNhdGVnb3J5MykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIHNlbGVjdGVkQ2F0ZWdvcmllcy5pbmNsdWRlcyg0KSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyc1RvRGlzcGxheS5wdXNoKC4uLmxheWVyQ2F0ZWdvcnk0KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICggc2VsZWN0ZWRDYXRlZ29yaWVzLmluY2x1ZGVzKDUpICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXJzVG9EaXNwbGF5LnB1c2goLi4ubGF5ZXJDYXRlZ29yeTUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllcnNUb0Rpc3BsYXkucHVzaCguLi5sYXllckNhdGVnb3J5MSwgLi4ubGF5ZXJDYXRlZ29yeTIsIC4uLmxheWVyQ2F0ZWdvcnkzLCAuLi5sYXllckNhdGVnb3J5NCwgLi4ubGF5ZXJDYXRlZ29yeTUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXJrZXJzVG9TaG93ID0gWy4uLm5ldyBTZXQobGF5ZXJzVG9EaXNwbGF5KV07CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbWFya2Vyc1RvU2hvdy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtID0gbWFya2Vyc1RvU2hvd1tpXTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtLnNpZWdlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtLmRhdGEuYWRkVG8obWFpbk1hcmtlcnMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbS5kYXRhLnNldFpJbmRleE9mZnNldCgxMDAwKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG0uZGF0YS5zZXRJY29uKGNyZWF0ZU1haW5NYXJrZXIoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtLmRhdGEuYWRkVG8obWFya2Vycyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtLmRhdGEuc2V0SWNvbihjcmVhdGVNYXJrZXIoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICggbWFya2Vycy5nZXRMYXllcnMoKS5sZW5ndGggPiAwICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLmZpdEJvdW5kcyhtYXJrZXJzLmdldEJvdW5kcygpLCB7IHBhZGRpbmc6IFsgMTAsIDEwIF0gfSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAobWFpbk1hcmtlcnMuZ2V0TGF5ZXJzKClbMF0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5zZXRWaWV3KG1haW5NYXJrZXJzLmdldExheWVycygpWzBdLmdldExhdExuZygpLCA1KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLnNldFZpZXcoWzQ2LjUsIDIuMzQ1NDkyM10sIDMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnRlcmFjdGlvbiBydWxlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5zY3JvbGxXaGVlbFpvb20uZGlzYWJsZSgpOyAvLyBEaXNhYmxlIHNjcm9sbCBpbnRlcmFjdGlvbiBhdCBmaXJzdAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgKGUpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLnNjcm9sbFdoZWVsWm9vbS5lbmFibGUoKTsgLy8gUmVlbmFibGUgc2Nyb2xsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW91dCcsICgpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLnNjcm9sbFdoZWVsWm9vbS5kaXNhYmxlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcFJlZi5hZGRFdmVudExpc3RlbmVyKCdvbi1tYXJrZXItaW50ZXJhY3QnLCAoZSkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRTaXRlRGV0YWlscyhlLmRldGFpbCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGhpZGVEZXRhaWxzRXZlbnRzID0gWydjbGljaycsICdtb3Zlc3RhcnQnXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVEZXRhaWxzRXZlbnRzLmZvckVhY2goZSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5hZGRFdmVudExpc3RlbmVyKGUsICgpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVTaXRlRGV0YWlscygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZS5rZXkgPT09ICJFc2NhcGUiKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaWRlU2l0ZURldGFpbHMoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0TWFwKCk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gY3JlYXRlTWFya2VyKGNsYXNzTmFtZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgTC5pY29uKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvblVybDogJ2h0dHBzOi8vY2hhcmVudGUuY2lkZmYuaW5mby93cC1jb250ZW50L3RoZW1lcy9jaWRmZi13cC9hc3NldHMvaW1hZ2VzL3dlYnAvaWNvbi1waW5zLXNlY29uZGFyeS1maWxsZWQud2VicCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb25TaXplOiBbMTgsIDIzXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hhZG93VXJsOiAnaHR0cHM6Ly9jaGFyZW50ZS5jaWRmZi5pbmZvL3dwLWNvbnRlbnQvdGhlbWVzL2NpZGZmLXdwL2Fzc2V0cy9pbWFnZXMvd2VicC9pY29uLXBpbnMtZmlsbGVkLXNoYWRvdy53ZWJwJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hhZG93U2l6ZTogWzI1LCAyNV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoYWRvd0FuY2hvcjogWzQsIDE1XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGNyZWF0ZU1haW5NYXJrZXIoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBMLmljb24oewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uVXJsOiAnaHR0cHM6Ly9jaGFyZW50ZS5jaWRmZi5pbmZvL3dwLWNvbnRlbnQvdGhlbWVzL2NpZGZmLXdwL2Fzc2V0cy9pbWFnZXMvd2VicC9pY29uLXBpbnMtZmlsbGVkLndlYnAnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uU2l6ZTogWzI4LCAzM10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoYWRvd1VybDogJ2h0dHBzOi8vY2hhcmVudGUuY2lkZmYuaW5mby93cC1jb250ZW50L3RoZW1lcy9jaWRmZi13cC9hc3NldHMvaW1hZ2VzL3dlYnAvaWNvbi1waW5zLWZpbGxlZC1zaGFkb3cud2VicCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoYWRvd1NpemU6IFszMCwgMzBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFkb3dBbmNob3I6IFs0LCAxNl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBzZXRTaXRlRGV0YWlscyhkYXRhKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvd1NpdGVEZXRhaWxzKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzZWVNb3JlS2V5ID0gZGF0YS5zaWVnZSA/IGAke25ldyBTdHJpbmcoZGF0YS5ub20pLnJlcGxhY2UoL1xcfFwsfFxzL2dpLCAnLScpLnRvTG93ZXJDYXNlKCl9LSR7ZGF0YS5pZH1gIDogYCR7ZGF0YS5ub21fc2x1Z30tJHtkYXRhLmlkfWAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gU2V0IGRhdGEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBEZXRhaWxzUmVmLnF1ZXJ5U2VsZWN0b3IoIltyZWY9J3NpdGUtdGl0bGUnXSIpLmlubmVySFRNTCA9IGRhdGEubm9tOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcERldGFpbHNSZWYucXVlcnlTZWxlY3RvcigiW3JlZj0nc2l0ZS1zZWUtbW9yZSddIikuaHJlZiA9IGBodHRwczovL2NoYXJlbnRlLmNpZGZmLmluZm8vbGlzdGUtZGVzLXBlcm1hbmVuY2VzLz9kZXBhcnRlbWVudD0ke2RhdGEuZGVwYXJ0ZW1lbnR9JmNlbnRyZS1pZD0ke3NlZU1vcmVLZXl9YDsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEuaG9yYWlyZXMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwRGV0YWlsc1JlZi5xdWVyeVNlbGVjdG9yKCJbcmVmPSdzaXRlLWhvdXJzLXdyYXBwZXInXSIpLnN0eWxlLmRpc3BsYXkgPSAnZmxleCc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcERldGFpbHNSZWYucXVlcnlTZWxlY3RvcigiW3JlZj0nc2l0ZS1ob3VycyddIikuaW5uZXJIVE1MID0gZGF0YS5ob3JhaXJlczsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBEZXRhaWxzUmVmLnF1ZXJ5U2VsZWN0b3IoIltyZWY9J3NpdGUtaG91cnMtd3JhcHBlciddIikuc3R5bGUuZGlzcGxheSA9ICdub25lJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcERldGFpbHNSZWYucXVlcnlTZWxlY3RvcigiW3JlZj0nc2l0ZS1sb2NhdGlvbiddIikuaW5uZXJIVE1MID0gYCR7ZGF0YS5hZHJlc3NlfSwgJHtkYXRhLmNwfSAke2RhdGEudmlsbGV9YDsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEudGVsZXBob25lKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcERldGFpbHNSZWYucXVlcnlTZWxlY3RvcigiW3JlZj0nc2l0ZS10ZWwtd3JhcHBlciddIikuc3R5bGUuZGlzcGxheSA9ICdmbGV4JzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwRGV0YWlsc1JlZi5xdWVyeVNlbGVjdG9yKCJbcmVmPSdzaXRlLXRlbCddIikuaW5uZXJIVE1MID0gZGF0YS50ZWxlcGhvbmU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwRGV0YWlsc1JlZi5xdWVyeVNlbGVjdG9yKCJbcmVmPSdzaXRlLXRlbC13cmFwcGVyJ10iKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEuY2FkcmUxIHx8IGRhdGEuYWNjZXNfZHJvaXQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwRGV0YWlsc1JlZi5xdWVyeVNlbGVjdG9yKCJbcmVmPSdzaXRlLWNhZHJlLTEnXSIpLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcERldGFpbHNSZWYucXVlcnlTZWxlY3RvcigiW3JlZj0nc2l0ZS1jYWRyZS0xJ10iKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEuY2FkcmUyIHx8IGRhdGEuZW1wbG9pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcERldGFpbHNSZWYucXVlcnlTZWxlY3RvcigiW3JlZj0nc2l0ZS1jYWRyZS0yJ10iKS5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBEZXRhaWxzUmVmLnF1ZXJ5U2VsZWN0b3IoIltyZWY9J3NpdGUtY2FkcmUtMiddIikuc3R5bGUuZGlzcGxheSA9ICdub25lJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkYXRhLmNhZHJlMyB8fCBkYXRhLnZpb2xlbmNlcykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBEZXRhaWxzUmVmLnF1ZXJ5U2VsZWN0b3IoIltyZWY9J3NpdGUtY2FkcmUtMyddIikuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwRGV0YWlsc1JlZi5xdWVyeVNlbGVjdG9yKCJbcmVmPSdzaXRlLWNhZHJlLTMnXSIpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YS5jYWRyZTQgfHwgZGF0YS5wYXJlbnRhbGl0ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBEZXRhaWxzUmVmLnF1ZXJ5U2VsZWN0b3IoIltyZWY9J3NpdGUtY2FkcmUtNCddIikuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwRGV0YWlsc1JlZi5xdWVyeVNlbGVjdG9yKCJbcmVmPSdzaXRlLWNhZHJlLTQnXSIpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGhpZGVTaXRlRGV0YWlscygpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBEZXRhaWxzUmVmLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gc2hvd1NpdGVEZXRhaWxzKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcERldGFpbHNSZWYuY2xhc3NMaXN0LmFkZCgnYWN0aXZlJykKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiByZXNldE1hcExheW91dCgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaWRlU2l0ZURldGFpbHMoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAub2ZmKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLnJlbW92ZSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvbi1tYXAtcmVmcmVzaCIsIChlKSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXRNYXBMYXlvdXQoKTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGxhc3RDYXRlZ29yaWVzID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhc3QtZmlsdGVyLWNhdGVnb3JpZXMnKTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxhc3RDYXRlZ29yaWVzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhc3RDYXRlZ29yaWVzID0gSlNPTi5wYXJzZShsYXN0Q2F0ZWdvcmllcykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5pdE1hcChsYXN0Q2F0ZWdvcmllcyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaXRNYXAoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvbi1jYXRlZ29yeS1maWx0ZXItY2hhbmdlIiwgKGUpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzZWxlY3RlZENhdGVnb3JpZXMgPSBlLmRldGFpbDsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGlkZVNpdGVEZXRhaWxzKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLm9mZigpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5yZW1vdmUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0TWFwKHNlbGVjdGVkQ2F0ZWdvcmllcyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAg","details":["keydown"]},{"id":66008,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","kind":"behaviour","label":"MOUSE","source":"https://charente.cidff.info/wp-content/cache/autoptimize/autoptimize_single_fa03f187c5d2fdfce7632be6f0a06478.php?ver=1.9.4","details":["scroll"]}],"cookies":[],"software":[],"platforms":[{"id":4371,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","kind":"cms","name":"WordPress","evidence":"/wp-content/cache/autoptimize/autoptimize_single_64ac31699f5326cb3c76122498b76f66.php?ver=6.1.4","source":"path"}],"offeredLanguages":[],"resources":[{"id":63029,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","party":"first","kind":"image","requests":69,"bytes":3217354},{"id":63030,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","party":"third","kind":"image","requests":6,"bytes":317863},{"id":63031,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","party":"third","kind":"script","requests":4,"bytes":182103},{"id":63032,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","party":"first","kind":"font","requests":12,"bytes":172599},{"id":63033,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","party":"first","kind":"script","requests":29,"bytes":120112},{"id":63034,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","party":"first","kind":"style","requests":13,"bytes":56724},{"id":63035,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","party":"first","kind":"document","requests":3,"bytes":35724},{"id":63036,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","party":"third","kind":"style","requests":3,"bytes":11853}],"dependencies":[],"pixels":[],"headers":[{"id":16134,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","name":"content-security-policy","value":"frame-ancestors 'self';"},{"id":16135,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","name":"server","value":"Apache"},{"id":16136,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","name":"x-content-type-options","value":"nosniff"}],"identifiers":[],"domain":{"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","domain":"cidff.info","dnssec":"signed","ipv6":false,"ipv6Reachable":null,"ipv6Reason":"no-aaaa","spf":false,"dmarcPolicy":null,"dnsError":null,"tlsProtocol":"TLSv1.3","tlsCipher":"TLS_AES_256_GCM_SHA384","tlsAlpn":"h2","tlsIssuer":"Let's Encrypt","tlsValidFrom":"2026-07-07T07:01:48.000Z","tlsValidTo":"2026-10-05T07:01:47.000Z","tlsAuthorized":true,"tlsError":null,"registrar":null,"registeredAt":null,"expiresAt":null,"holderCountry":null,"rdapSource":"rdap.identitydigital.services","rdapError":"réponse 400 du registre","robotsFound":false,"robotsAllows":true,"adsFound":false,"adsPartners":0,"securityFound":false,"securityContact":null,"probedAt":"2026-08-23T02:24:58.692Z","mailProvider":"OVHcloud","dnsProvider":"OVHcloud","tlsAuthority":"Let's Encrypt (ISRG)","tlsAuthorityCountry":"US"},"dns":[{"id":43159,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","kind":"mx","value":"mx4.mail.ovh.net","rank":1,"cnameTarget":null,"provider":"OVHcloud"},{"id":43160,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","kind":"mx","value":"mx3.mail.ovh.net","rank":10,"cnameTarget":null,"provider":"OVHcloud"},{"id":43161,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","kind":"mx","value":"mail.nexylan.net","rank":0,"cnameTarget":"lba-sov.soverin.net","provider":null},{"id":43162,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","kind":"ns","value":"dns14.ovh.net","rank":null,"cnameTarget":null,"provider":"OVHcloud"},{"id":43163,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","kind":"ns","value":"ns14.ovh.net","rank":null,"cnameTarget":null,"provider":"OVHcloud"}],"adsPartners":[],"blocklists":[{"id":65521,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"Quad9","resolverIp":"9.9.9.9","kind":"security","verdict":"allowed","note":null},{"id":65522,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"CleanBrowsing Security","resolverIp":"185.228.168.9","kind":"security","verdict":"allowed","note":null},{"id":65523,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"Comodo Secure","resolverIp":"8.26.56.26","kind":"security","verdict":"unknown","note":"ETIMEOUT"},{"id":65524,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"OpenDNS","resolverIp":"208.67.222.222","kind":"security","verdict":"unknown","note":"EREFUSED"},{"id":65525,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"AdGuard","resolverIp":"94.140.14.14","kind":"ads","verdict":"allowed","note":null},{"id":65526,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"AdGuard Famille","resolverIp":"94.140.14.15","kind":"family","verdict":"allowed","note":null},{"id":65527,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"Cloudflare Famille","resolverIp":"1.1.1.3","kind":"family","verdict":"allowed","note":null},{"id":65528,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"CleanBrowsing Famille","resolverIp":"185.228.168.168","kind":"family","verdict":"allowed","note":null},{"id":65529,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"CleanBrowsing Adulte","resolverIp":"185.228.168.10","kind":"family","verdict":"allowed","note":null},{"id":65530,"scanId":"48d71c83-a10c-414f-9654-18faf4b87da7","resolver":"OpenDNS Famille","resolverIp":"208.67.222.123","kind":"family","verdict":"unknown","note":"EREFUSED"}],"threats":[],"wayback":null,"cnames":[],"reputation":[],"webcompat":{"consulted":false,"rules":0,"updatedAt":null,"flags":[]},"wikidata":{"entities":{"Q34045622":{"qid":"Q34045622","label":"Fastly","description":"entreprise américaine de cloud computing","officialWebsite":"https://www.fastly.com","image":"http://commons.wikimedia.org/wiki/Special:FilePath/Fastly%20logo.svg","tosdrId":"9951","influenceWatchId":null,"wikipedia":{"en":"https://en.wikipedia.org/wiki/Fastly","fr":"https://fr.wikipedia.org/wiki/Fastly"},"parentQid":null,"countryCode":"US","countryLabel":"États-Unis","fetchedAt":"2026-10-18T15:05:56.758Z"},"Q568183":{"qid":"Q568183","label":"OVHcloud","description":"hébergeur de sites web français","officialWebsite":"https://www.ovhcloud.com/en/","image":"http://commons.wikimedia.org/wiki/Special:FilePath/Logo%20OVH.svg","tosdrId":null,"influenceWatchId":null,"wikipedia":{"en":"https://en.wikipedia.org/wiki/OVHcloud","fr":"https://fr.wikipedia.org/wiki/OVHcloud"},"parentQid":null,"countryCode":"FR","countryLabel":"France","fetchedAt":"2026-10-18T15:08:27.232Z"},"Q4778915":{"qid":"Q4778915","label":"Cloudflare","description":"entreprise américaine spécialisée dans la sécurité et les services web","officialWebsite":"https://www.cloudflare.com/","image":"http://commons.wikimedia.org/wiki/Special:FilePath/Cloudflare%20Logo.svg","tosdrId":"894","influenceWatchId":null,"wikipedia":{"en":"https://en.wikipedia.org/wiki/Cloudflare","fr":"https://fr.wikipedia.org/wiki/Cloudflare"},"parentQid":null,"countryCode":"US","countryLabel":"États-Unis","fetchedAt":"2026-10-18T15:05:57.236Z"}},"asnToQid":{"13335":"Q4778915","16276":"Q568183","54113":"Q34045622"}},"siteMatch":{"qid":null,"confidence":null,"decided":false}}