Help
RSS
API
Feed
Maltego
Contact
Domain > 7979.uapsgaer.com
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2025-09-15
154.207.77.90
(
ClassC
)
2025-11-27
154.207.253.29
(
ClassC
)
Port 443
HTTP/1.1 200 OKDate: Thu, 27 Nov 2025 04:45:56 GMTContent-Type: text/html; charsetutf-8Transfer-Encoding: chunkedConnection: keep-aliveServer: cloudflareX-Powered-By: PHP/7.3.6P3P: CPCAO PSA OURAccess-Control-Allow-Origin: *Access-Control-Allow-Methods: GET, POST, PUT,DELETE,OPTIONS,PATCHAccess-Control-Allow-Headers: content-type,tokenNel: {report_to:cf-nel,success_fraction:0.0,max_age:604800}cf-cache-status: DYNAMICReport-To: {group:cf-nel,max_age:604800,endpoints:{url:https://a.nel.cloudflare.com/report/v4?sXwQCOXTgClhI4AnyUMou30R1qL8mXU1Of8R7A2aXdIcJk3kOseeqvr%2BExZLZItSCZSNZyrNtjgZIrgDJU255pBV1D3v8wbochr8MUXiYVQ%3D%3D}}CF-RAY: 9a4efa97e9d4feff-PDXalt-svc: h3:443; ma86400 script>Base64{_keyStr:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/,decode:function(input){var output;var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i0;inputinput.replace(/^A-Za-z0-9\+\/\/g,);while(iinput.length){enc1this._keyStr.indexOf(input.charAt(i++));enc2this._keyStr.indexOf(input.charAt(i++));enc3this._keyStr.indexOf(input.charAt(i++));enc4this._keyStr.indexOf(input.charAt(i++));chr1(enc12)|(enc2>>4);chr2((enc2&15)4)|(enc3>>2);chr3((enc3&3)6)|enc4;outputoutput+String.fromCharCode(chr1);if(enc3!64){outputoutput+String.fromCharCode(chr2)}if(enc4!64){outputoutput+String.fromCharCode(chr3)}}outputBase64._utf8_decode(output);return output},_utf8_decode:function(utftext){var string;var i0;var cc1c20;while(iutftext.length){cutftext.charCodeAt(i);if(c128){string+String.fromCharCode(c);i++}else if((c>191)&&(c224)){c2utftext.charCodeAt(i+1);string+String.fromCharCode(((c&31)6)|(c2&63));i+2}else{c2utftext.charCodeAt(i+1);c3utftext.charCodeAt(i+2);string+String.fromCharCode(((c&15)12)|((c2&63)6)|(c3&63));i+3}}return string}}; document.write(Base64.decode(PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIKICAgICAgICAgIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIG1heGltdW0tc2NhbGU9MSxtaW5pbXVtLXNjYWxlPTEsIHVzZXItc2NhbGFibGU9bm8iPgogICAgPG1ldGEgbmFtZT0iYXV0aG9yIiBjb250ZW50PSIwYzliNDJlMzEwYzcwNDdiNmFhMjM5MjJkYmU0OTU4MSI+CiAgICA8bWV0YSBuYW1lPSJyZWZlcnJlciIgY29udGVudD0ic2FtZS1vcmlnaW4iPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NTBweCkiIGhyZWY9Ii9pbmRleC8yMDI0LXYxL2Nzcy9pbmRleC5jc3M/dj0xIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgbWVkaWE9InNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIiBocmVmPSIvaW5kZXgvMjAyNC12MS9jc3MvbW9iaWxlLmNzcz92PTEiPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvaW5kZXgvMjAyNC12MS9tb2JpbGUvYW5kcm9pZE1vZGFsLmNzcyI+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9pbmRleC8yMDI0LXYxL2Nzcy9zd2lwZXItYnVuZGxlLm1pbi5jc3MiIC8+CiAgICA8c2NyaXB0PgogICAgICAgIHZhciBkYXRhTWFwID0gewogICAgICAgICAgICBhZmZDb2RlOiAiIiwKICAgICAgICAgICAgaW9zTGluazogImluZGV4LnBocC9pbmRleC9wd2E/YWZmX2NvZGU9IiwKICAgICAgICAgICAgaW9zTGluazY0OiAiaW5kZXgucGhwL2luZGV4L3B3YT9hZmZfY29kZT0iLAogICAgICAgICAgICBhbmRyb2lkTGluazogImh0dHBzOi8vZGl2Zjd5ZDdsazUxdy5jbG91ZGZyb250Lm5ldC9kb3duL3BpbGlsaS9waWxpXzMxMV8wNjI4XzEuYXBrIiwKICAgICAgICAgICAgYW5kcm9pZExpbms2NDogImh0dHBzOi8vZGl2Zjd5ZDdsazUxdy5jbG91ZGZyb250Lm5ldC9kb3duL3BpbGlsaS9waWxpXzMxMV8wNjI4XzEuYXBrIiwKICAgICAgICAgICAgbGluazE6ICJodHRwczovL3QubWUvcGlsaXBpbGlndWFuZmFuZ3F1biIsCiAgICAgICAgICAgIGxpbmsyOiAiaHR0cHM6Ly90Lm1lL3d5ZG0wMDEiLAogICAgICAgICAgICBjb3B5VGV4dDogIm5vdGZvcnN0b3JlIiwKICAgICAgICB9OwogICAgPC9zY3JpcHQ+CgogIDx0aXRsZT5QaWxpcGlsaS3mnIDlhajmrKHlhYPpq5jog73msaHmvKs8L3RpdGxlPgo8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0i5aSacGlsaXBpbGksYmlsaWJpbGksYmxpYmxpLOS6jOasoeWFgyznpo/liKnlp6wsY29zZXIsY29zcGxheSxKSyxjb3MsTU1ELHN3YWcsSlZJRCzliLbmnI0sSOa8qyxoYW50YWksaG1hbmdhLGhhbnRhaSBtYW5nYSxFLWhhbnRhaSzmt7HlpJznlaos6YeM55WqLOaXpea8qyzogonnlaos56aP5Yip5aWX5Zu+LGxvbGks6JCd6I6JLOacrOWtkCzpq5jog73msaHmvKss5Lmx5LymLOaVmeW4iCxOVFIsQ00s5aa55oqWLOm7keaal+Wco+e7jyznpo/liKnop4bpopEs55qu5ZOp55qu5ZOpIj4KPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlBpbGlwaWxpLeacgOWFqOasoeWFg+mrmOiDveaxoea8q+OAguWFqOe9kemAn+mAku+8jOS6jOasoeWFg+aIkOS6uui1hOa6kOW6k+aMgee7reabtOaWsOS4re+8jOiQneiOie+8jGNvc++8jOemj+WIqeWnrO+8jOiCieeVqu+8jOWknOeVqu+8jOWKsueIhumHjOeVqu+8jOacgOaWsOaXpea8q++8jOacgOeDremfqea8q++8jHBpbGlwaWxp5Li65Li75Lq65YWo5Yqb5pCc6ZuG77yBIj4KPG1ldGEgcHJvcGVydHk9Im9nOnRpdGxlIiBjb250ZW50PSJQaWxpcGlsaS3mnIDlhajmrKHlhYPpq5jog73msaHmvKsiLz4KPG1ldGEgcHJvcGVydHk9Im9nOmRlc2NyaXB0aW9uIiBjb250ZW50PSJQaWxpcGlsaS3mnIDlhajmrKHlhYPpq5jog73msaHmvKvjgILlhajnvZHpgJ/pgJLvvIzkuozmrKHlhYPmiJDkurrotYTmupDlupPmjIHnu63mm7TmlrDkuK3vvIzokJ3ojonvvIxjb3PvvIznpo/liKnlp6zvvIzogonnlarvvIzlpJznlarvvIzlirLniIbph4znlarvvIzmnIDmlrDml6XmvKvvvIzmnIDng63pn6nmvKvvvIxwaWxpcGlsaeS4uuS4u+S6uuWFqOWKm+aQnOmbhu+8gSIvPgo8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2UiIGNvbnRlbnQ9Ii9pbmRleC8yMDI0LXYxL2ltYWdlcy9wYy9sb2dvLW4ucG5nIi8+CjxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IlBpbGlwaWxpLeacgOWFqOasoeWFg+mrmOiDveaxoea8qyIvPgo8bWV0YSBuYW1lPSJ0d2l0dGVyOnRpdGxlIiBjb250ZW50PSJQaWxpcGlsaS3mnIDlhajmrKHlhYPpq5jog73msaHmvKsiLz4KPG1ldGEgbmFtZT0idHdpdHRlcjpkZXNjcmlwdGlvbiIgY29udGVudD0iUGlsaXBpbGkt5pyA5YWo5qyh5YWD6auY6IO95rGh5ryr44CC5YWo572R6YCf6YCS77yM5LqM5qyh5YWD5oiQ5Lq66LWE5rqQ5bqT5oyB57ut5pu05paw5Lit77yM6JCd6I6J77yMY29z77yM56aP5Yip5aes77yM6IKJ55Wq77yM5aSc55Wq77yM5Yqy54iG6YeM55Wq77yM5pyA5paw5pel5ryr77yM5pyA54Ot6Z+p5ryr77yMcGlsaXBpbGnkuLrkuLvkurrlhajlipvmkJzpm4bvvIEiLz4KPG1ldGEgbmFtZT0idHdpdHRlcjppbWFnZSIgY29udGVudD0iL2luZGV4LzIwMjQtdjEvaW1hZ2VzL3BjL2xvZ28tbi5wbmciLz4KPC9oZWFkPgo8Ym9keT4KPHNlY3Rpb24gY2xhc3M9ImRlc2t0b3AiPgogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICA8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWV4cGFuZC1sZyBuYXZiYXItbGlnaHQgZml4ZWQtdG9wIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibG9nby1hcmVhIj4KICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9pbWFnZXMvcGMvbG9nby1uLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVudSI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icy1mLW1lbnUiIG9uY2xpY2s9Im9uQWRkcmVzcygnbGluazEnKSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvaW1hZ2VzL3BjL2dyb3VwLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzLWYtbWVudSIgb25jbGljaz0ib25BZGRyZXNzKCdsaW5rMicpIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9pbWFnZXMvcGMvdGcucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvbmF2PgogICAgICAgIDwhLS0gU3dpcGVyIC0tPgogICAgICAgIDxkaXYgY2xhc3M9InN3aXBlciBteVN3aXBlciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN3aXBlci13cmFwcGVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN3aXBlci1zbGlkZSI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGljdHVyZS1jb250YWluZXIiPgogICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJiZyIgc3JjPSIvaW5kZXgvMjAyNC12MS9pbWFnZXMvcGMvcy0xLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImYtYXJlYSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udC1hcmVhIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icXJjb2RlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InFyIj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcC1hcmVhIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImYtYXBwLWFyZWEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImYtYXBwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaS1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnRubiIgb25jbGljaz0iZG93bmxvYWRBcHAoJ2lvcycpIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpb3PkuIvovb0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9InMtYXBwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaS1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnRubiIgb25jbGljaz0iZG93bmxvYWRBcHAoJ2lvczY0JykiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlvcy02NOS9jeWFg+S4i+i9vQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZi1hcHAtYXJlYSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZi1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpLWFwcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidG5uIiBvbmNsaWNrPSJkb3dubG9hZEFwcCgnYW5kcm9pZCcpIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDlronljZPkuIvovb0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9InMtYXBwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaS1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnRubiIgb25jbGljaz0iZG93bmxvYWRBcHAoJ2FuZHJvaWQ2NCcpIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDlronljZMtNjTkvY3lhYPkuIvovb0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImYtdHh0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD7lm6DooYzkuJrljp/lm6DvvIzmnKxBUFDooqvmn5DkupvmnYDmr5Lou5/ku7bor6/liKTkuLrmg6HmhI/ou5/ku7bmiJbnl4Xmr5LvvJvmiJHku6w8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+5pyJ5q2j5b2T5bm/5ZGK5pS255uK5LiU5bey55uI5Yip77yM5a6J6KOF5LiN5Lya5a+55oKo55qE5omL5py66YCg5oiQ5Lu75L2V5o2f5a6z77yBPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzLWFyZWEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9pbWFnZXMvcGMvcC0xLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzd2lwZXItc2xpZGUiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBpY3R1cmUtY29udGFpbmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz0iYmciIHNyYz0iL2luZGV4LzIwMjQtdjEvaW1hZ2VzL3BjL3MtMi5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzLWFyZWEtMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9pbmRleC8yMDI0LXYxL2ltYWdlcy9wYy9wLTMucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImYtYXJlYS0xIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250LWFyZWEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJxcmNvZGUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0icXIxIj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcC1hcmVhIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImYtYXBwLWFyZWEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImYtYXBwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaS1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnRubiIgb25jbGljaz0iZG93bmxvYWRBcHAoJ2lvcycpIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpb3PkuIvovb0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9InMtYXBwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaS1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnRubiIgb25jbGljaz0iZG93bmxvYWRBcHAoJ2lvczY0JykiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlvcy02NOS9jeWFg+S4i+i9vQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZi1hcHAtYXJlYSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZi1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpLWFwcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidG5uIiBvbmNsaWNrPSJkb3dubG9hZEFwcCgnYW5kcm9pZCcpIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDlronljZPkuIvovb0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9InMtYXBwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaS1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnRubiIgb25jbGljaz0iZG93bmxvYWRBcHAoJ2FuZHJvaWQ2NCcpIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDlronljZMtNjTkvY3lhYPkuIvovb0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImYtdHh0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD7lm6DooYzkuJrljp/lm6DvvIzmnKxBUFDooqvmn5DkupvmnYDmr5Lou5/ku7bor6/liKTkuLrmg6HmhI/ou5/ku7bmiJbnl4Xmr5LvvJvmiJHku6w8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+5pyJ5q2j5b2T5bm/5ZGK5pS255uK5LiU5bey55uI5Yip77yM5a6J6KOF5LiN5Lya5a+55oKo55qE5omL5py66YCg5oiQ5Lu75L2V5o2f5a6z77yBPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzd2lwZXItc2xpZGUiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBpY3R1cmUtY29udGFpbmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz0iYmciIHNyYz0iL2luZGV4LzIwMjQtdjEvaW1hZ2VzL3BjL3MtMy5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmLWFyZWEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnQtYXJlYSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InFyY29kZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJxcjIiPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwLWFyZWEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZi1hcHAtYXJlYSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZi1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpLWFwcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidG5uIiBvbmNsaWNrPSJkb3dubG9hZEFwcCgnaW9zJykiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlvc+S4i+i9vQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz0icy1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpLWFwcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidG5uIiBvbmNsaWNrPSJkb3dubG9hZEFwcCgnaW9zNjQnKSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW9zLTY05L2N5YWD5LiL6L29CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmLWFwcC1hcmVhIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmLWFwcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImktYXBwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ0bm4iIG9uY2xpY2s9ImRvd25sb2FkQXBwKCdhbmRyb2lkJykiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOWuieWNk+S4i+i9vQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz0icy1hcHAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpLWFwcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidG5uIiBvbmNsaWNrPSJkb3dubG9hZEFwcCgnYW5kcm9pZDY0JykiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOWuieWNky02NOS9jeWFg+S4i+i9vQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZi10eHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPuWboOihjOS4muWOn+WboO+8jOacrEFQUOiiq+afkOS6m+adgOavkui7n+S7tuivr+WIpOS4uuaDoeaEj+i7n+S7tuaIlueXheavku+8m+aIkeS7rDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD7mnInmraPlvZPlub/lkYrmlLbnm4rkuJTlt7Lnm4jliKnvvIzlronoo4XkuI3kvJrlr7nmgqjnmoTmiYvmnLrpgKDmiJDku7vkvZXmjZ/lrrPvvIE8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InMtYXJlYSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9pbmRleC8yMDI0LXYxL2ltYWdlcy9wYy9wLTMucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPCEtLSBJZiB3ZSBuZWVkIHBhZ2luYXRpb24gLS0+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzd2lwZXItcGFnaW5hdGlvbiI+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+Cjwvc2VjdGlvbj4KPHNlY3Rpb24gY2xhc3M9Im1vYmlsZSI+CiAgICA8ZGl2IGNsYXNzPSJ3cmFwLWJvZHkiPgogICAgICAgIDxkaXYgY2xhc3M9Im1haW4tY29udGVudCI+CiAgICAgICAgICAgIDxuYXYgY2xhc3M9Im5hdmJhciBuYXZiYXItZXhwYW5kLWxnIG5hdmJhci1saWdodCBmaXhlZC10b3AiPgogICAgICAgICAgICAgICAgPGhlYWRlcj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2dvLWNvbnRhaW5lciI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9pbmRleC8yMDI0LXYxL2ltYWdlcy9tYi9sb2dvLW4ucG5nIiBhbHQ9InRleHQiIHRpdGxlPSIiIGNsYXNzPSJsb2dvLW1iIj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtY29udGFpbmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9Im5hdi1pdGVtIiBvbmNsaWNrPSJvbkFkZHJlc3MoJ2xpbmsxJykiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9pbmRleC8yMDI0LXYxL2ltYWdlcy9tYi9ncm91cC5wbmciIGFsdD0idGV4dCIgdGl0bGU9IiIgY2xhc3M9InRnX2F2YXRhcl8iIC8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9Im5hdi1pdGVtIiBvbmNsaWNrPSJvbkFkZHJlc3MoJ2xpbmsyJykiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9pbmRleC8yMDI0LXYxL2ltYWdlcy9tYi90Zy5wbmciIGFsdD0idGV4dCIgdGl0bGU9IiIgY2xhc3M9InRnX2F2YXRhcl8iIC8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvaGVhZGVyPgogICAgICAgICAgICA8L25hdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXlTd2lwZXIxIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN3aXBlci13cmFwcGVyIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzd2lwZXItc2xpZGUiPgogICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJiZ2ciIHNyYz0iL2luZGV4LzIwMjQtdjEvaW1hZ2VzL21iL20tMS1iZy5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudC1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBob3RvIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvaW1hZ2VzL21iL3AtMS5wbmciIGFsdD0iIiBjbGFzcz0iaW1nLTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN3aXBlci1zbGlkZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImJnZyIgc3JjPSIvaW5kZXgvMjAyNC12MS9pbWFnZXMvbWIvbS0yLWJnLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50LXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGhvdG8iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9pbWFnZXMvbWIvcC0zLnBuZyIgYWx0PSIiIGNsYXNzPSJpbWctMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3dpcGVyLXNsaWRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz0iYmdnIiBzcmM9Ii9pbmRleC8yMDI0LXYxL2ltYWdlcy9tYi9tLTMtYmcucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaG90byI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9pbmRleC8yMDI0LXYxL2ltYWdlcy9tYi9wLTIucG5nIiBhbHQ9IiIgY2xhc3M9ImltZy0xIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8IS0tIElmIHdlIG5lZWQgcGFnaW5hdGlvbiAtLT4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzd2lwZXItcGFnaW5hdGlvbiI+PC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJmb290ZXJfIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcC1tYiI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwLWwiIG9uY2xpY2s9ImRvd25sb2FkQXBwKCdpb3MnKSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9pbWFnZXMvbWIvaW9zLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcC1yIiBvbmNsaWNrPSJkb3dubG9hZEFwcCgnYW5kcm9pZCcpIj4KICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvaW1hZ2VzL21iL2lvcy02NC5wbmciIGFsdD0iIj4gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9pbWFnZXMvbWIvYW5kLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9ImFwcC1tYi0yIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcHAtbCIgb25jbGljaz0iZG93bmxvYWRBcHAoJ2FuZHJvaWQnKSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9pbWFnZXMvbWIvYW5kLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcC1yIiBvbmNsaWNrPSJkb3dubG9hZEFwcCgnYW5kcm9pZDY0JykiPgogICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvaW1hZ2VzL21iL2FuZC02NC5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PiAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InR4dC1tYiI+CiAgICAgICAgICAgICAgICAgICAgPHA+5Zug6KGM5Lia5Y6f5Zug77yM5pysQVBQ6KKr5p+Q5Lqb5p2A5q+S6Luf5Lu26K+v5Yik5Li65oOh5oSP6Luf5Lu25oiW55eF5q+S77yb5oiR5LusPC9wPgogICAgICAgICAgICAgICAgICAgIDxwPuacieato+W9k+W5v+WRiuaUtuebiuS4lOW3suebiOWIqe+8jOWuieijheS4jeS8muWvueaCqOeahOaJi+acuumAoOaIkOS7u+S9leaNn+Wus++8gTwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYW5kcm9pZC1tb2RhbCIgaWQ9InBsYXRmb3JtLWxpc3QiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5kcm9pZC1tb2RhbC1hcnJvdyIgZGF0YS10eXBlPSIxIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2JhY2stYmxhY2sucG5nIiBhbHQ9IiI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSIgaWQ9InNob3ctcGxhdGZvcm0tdGlwcyI+PGltZyBzcmM9Ii9pbmRleC8yMDI0LXYxL21vYmlsZS91LTEucG5nIiBhbHQ9IiI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2PiZuYnNwOyZuYnNwOzwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF0Zm9ybS1pdGVtIiBkYXRhLXNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGwxLWRldGFpbC5qcGciPjxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9tb2JpbGUvY2VsbDEucG5nIgogICAgICAgICAgICAgICAgICAgICAgICBhbHQ9IiI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF0Zm9ybS1pdGVtIiBkYXRhLXNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGwyLWRldGFpbC5qcGciPjxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9tb2JpbGUvY2VsbDIucG5nIgogICAgICAgICAgICAgICAgICAgICAgICBhbHQ9IiI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF0Zm9ybS1pdGVtIiBkYXRhLXNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGwzLWRldGFpbDEuanBnIgogICAgICAgICAgICAgICAgICAgIGRhdGEtc3JjMj0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGwzLWRldGFpbDIuanBnIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGwzLnBuZyIgYWx0PSIiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhdGZvcm0taXRlbSIgZGF0YS1zcmM9Ii9pbmRleC8yMDI0LXYxL21vYmlsZS9jZWxsNC1kZXRhaWwuanBnIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGw0LnBuZyIKICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSIiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhdGZvcm0taXRlbSIgZGF0YS1zcmM9Ii9pbmRleC8yMDI0LXYxL21vYmlsZS9jZWxsNS1kZXRhaWwuanBnIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGw1LnBuZyIKICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSIiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhdGZvcm0taXRlbSIgZGF0YS1zcmM9Ii9pbmRleC8yMDI0LXYxL21vYmlsZS9jZWxsNi1kZXRhaWwuanBnIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGw2LnBuZyIKICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSIiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhdGZvcm0taXRlbSIgZGF0YS1zcmM9Ii9pbmRleC8yMDI0LXYxL21vYmlsZS9jZWxsNy1kZXRhaWwuanBnIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGw3LnBuZyIKICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSIiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhdGZvcm0taXRlbSIgZGF0YS1zcmM9Ii9pbmRleC8yMDI0LXYxL21vYmlsZS9jZWxsOC1kZXRhaWwuanBnIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGw4LnBuZyIKICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSIiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhdGZvcm0taXRlbSIgZGF0YS1zcmM9Ii9pbmRleC8yMDI0LXYxL21vYmlsZS9jZWxsOS1kZXRhaWwuanBnIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2NlbGw5LnBuZyIKICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSIiPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJhbmRyb2lkLW1vZGFsIHR3byIgaWQ9InBsYXRmb3JtLWRldGFpbCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRlciI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmRyb2lkLW1vZGFsLWFycm93IiBkYXRhLXR5cGU9IjIiPjxpbWcgc3JjPSIvaW5kZXgvMjAyNC12MS9tb2JpbGUvYmFjay1ibGFjay5wbmciIGFsdD0iIj48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL3UtMS5wbmciIGFsdD0iIj48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXY+Jm5ic3A7Jm5ic3A7PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9Im1vZGFsLWNvbW1vbi1pbWciIGFsdD0iIj4KICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9Im1vZGFsLWNvbW1vbi1pbWctMiIgYWx0PSIiPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJhbmRyb2lkLW1vZGFsIHR3byIgaWQ9Imlvcy1kZXRhaWwiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5kcm9pZC1tb2RhbC1hcnJvdyIgZGF0YS10eXBlPSIzIj48aW1nIHNyYz0iL2luZGV4LzIwMjQtdjEvbW9iaWxlL2JhY2stYmxhY2sucG5nIiBhbHQ9IiI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+PGltZyBzcmM9Ii9pbmRleC8yMDI0LXYxL21vYmlsZS91LTIucG5nIiBhbHQ9IiI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2PiZuYnNwOyZuYnNwOzwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJtb2RhbC1jb21tb24taW1nIiBzcmM9Ii9pbmRleC8yMDI0LXYxL21vYmlsZS9kb2MtaW9zLTEuanBlZyI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+Cjwvc2VjdGlvbj4KCgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvaW5kZXgvMjAyNC12MS9qcy9qUXVlcnkubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCBzcmM9Ii9pbmRleC8yMDI0LXYxL2pzL3FyY29kZS5taW4uanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0iL2luZGV4LzIwMjQtdjEvanMvc3dpcGVyLWJ1bmRsZS5taW4uanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvaW5kZXgvMjAyNC12MS9qcy9jbGlwYm9hcmQubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgY29uc3QgZ2V0RGV2aWNlSW5mbyA9ICgpID0+IHsKICAgICAgICBjb25zdCB1c2VyQWdlbnQgPSBuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkKICAgICAgICBsZXQgaXNQYyA9IEJvb2xlYW4odXNlckFnZW50Lm1hdGNoKC9tb2JpbGV8YW5kcm9pZHxpcGhvbmUvaSkpID09PSBmYWxzZQogICAgICAgIGxldCBpc01vYmlsZSA9IEJvb2xlYW4odXNlckFnZW50Lm1hdGNoKC9tb2JpbGV8YW5kcm9pZHxpcGhvbmUvaSkpCiAgICAgICAgbGV0IGlzSW9zID0gQm9vbGVhbih1c2VyQWdlbnQubWF0Y2goL2lwaG9uZXxpcGFkL2kpKQogICAgICAgIGxldCBpc0FuZHJvaWQgPSBCb29sZWFuKHVzZXJBZ2VudC5tYXRjaCgvYW5kcm9pZHxtb2JpbGV8cGFkL2kpICYmIEJvb2xlYW4odXNlckFnZW50Lm1hdGNoKC9pcGFkL2kpKSA9PT0gZmFsc2UgJiYgQm9vbGVhbih1c2VyQWdlbnQubWF0Y2goL21hYy9pKSkgPT09IGZhbHNlKQoKICAgICAgICBpZiAoc2NyZWVuLmF2YWlsV2lkdGggPj0gMTAyNCAmJiBpc0FuZHJvaWQpIHsKICAgICAgICAgICAgLy/lronljZPlubPmnb8g6KeG5Li6cGPnq68KICAgICAgICAgICAgaXNQYyA9IHRydWUKICAgICAgICAgICAgaXNNb2JpbGUgPSBmYWxzZQogICAgICAgICAgICBpc0FuZHJvaWQgPSBmYWxzZQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIHsgaXNQYywgaXNNb2JpbGUsIGlzSW9zLCBpc0FuZHJvaWQgfQogICAgfQogICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgewoKICAgICAgICBsZXQgc3dpcGVyID0gbmV3IFN3aXBlcigiLm15U3dpcGVyIiwgewogICAgICAgICAgICBsb29wOiB0cnVlLAogICAgICAgICAgICBlZmZlY3Q6ICdmYWRlJywKICAgICAgICAgICAgbW91c2V3aGVlbDogdHJ1ZSwKICAgICAgICAgICAgLy8gYXV0b3BsYXk6IHsKICAgICAgICAgICAgLy8gICBkZWxheTogMjAwMCwKICAgICAgICAgICAgLy8gICBwYXVzZU9uTW91c2VFbnRlcjogdHJ1ZSwKICAgICAgICAgICAgLy8gICBkaXNhYmxlT25JbnRlcmFjdGlvbjogZmFsc2UsCiAgICAgICAgICAgIC8vIH0sCiAgICAgICAgICAgIHBhZ2luYXRpb246IHsKICAgICAgICAgICAgICAgIGVsOiAnLnN3aXBlci1wYWdpbmF0aW9uJywKICAgICAgICAgICAgICAgIGNsaWNrYWJsZTogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgfSk7CgogICAgICAgIGxldCBzd2lwZXIxID0gbmV3IFN3aXBlcigiLm15U3dpcGVyMSIsIHsKICAgICAgICAgICAgbG9vcDogdHJ1ZSwKICAgICAgICAgICAgZWZmZWN0OiAnZmFkZScsCiAgICAgICAgICAgIG1vdXNld2hlZWw6IHRydWUsCiAgICAgICAgICAgIC8vIGF1dG9wbGF5OiB7CiAgICAgICAgICAgIC8vICAgICBkZWxheTogMjAwMCwKICAgICAgICAgICAgLy8gICAgIHBhdXNlT25Nb3VzZUVudGVyOiB0cnVlLAogICAgICAgICAgICAvLyAgICAgZGlzYWJsZU9uSW50ZXJhY3Rpb246IGZhbHNlLAogICAgICAgICAgICAvLyB9LAogICAgICAgICAgICBwYWdpbmF0aW9uOiB7CiAgICAgICAgICAgICAgICBlbDogJy5zd2lwZXItcGFnaW5hdGlvbicsCiAgICAgICAgICAgICAgICBjbGlja2FibGU6IHRydWUKICAgICAgICAgICAgfQogICAgICAgIH0pOwoKICAgICAgICBpZihnZXREZXZpY2VJbmZvKCkuaXNJb3MpewogICAgICAgICAgICAkKCIuc2V0dXAtdGlwcy1jb250YWluZXIiKS5vbignY2xpY2snLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAkKCcjaW9zLWRldGFpbCcpLmZhZGVJbigpLmNzcygnZGlzcGxheScsICdmbGV4Jyk7CiAgICAgICAgICAgIH0pCiAgICAgICAgfWVsc2UgewogICAgICAgICAgICAkKCIuc2V0dXAtdGlwcy1jb250YWluZXIiKS5vbignY2xpY2snLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAkKCcjcGxhdGZvcm0tbGlzdCcpLmZhZGVJbigpLmNzcygnZGlzcGxheScsICdmbGV4Jyk7CiAgICAgICAgICAgIH0pCiAgICAgICAgfQoKICAgICAgICAkKCcucGxhdGZvcm0taXRlbScpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgY29uc3QgaW1nU3JjID0gJCh0aGlzKS5kYXRhKCdzcmMnKTsKICAgICAgICAgICAgY29uc3QgaW1nU3JjMiA9ICQodGhpcykuZGF0YSgnc3JjMicpOwogICAgICAgICAgICBjb25zdCBwbGF0Zm9ybURldGFpbCA9ICQoJyNwbGF0Zm9ybS1kZXRhaWwnKQogICAgICAgICAgICBwbGF0Zm9ybURldGFpbC5maW5kKCcubW9kYWwtY29tbW9uLWltZycpLmF0dHIoJ3NyYycsIGltZ1NyYykKICAgICAgICAgICAgaWYgKGltZ1NyYzIgIT09ICIiIHx8IGltZ1NyYzIgIT09IHVuZGVmaW5lZCkgewogICAgICAgICAgICAgICAgcGxhdGZvcm1EZXRhaWwuZmluZCgnLm1vZGFsLWNvbW1vbi1pbWctMicpLmF0dHIoJ3NyYycsIGltZ1NyYzIpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IHNyYyA9IHBsYXRmb3JtRGV0YWlsLmZpbmQoJy5tb2RhbC1jb21tb24taW1nLTInKS5hdHRyKCdzcmMnKQogICAgICAgICAgICBpZiAoc3JjKSB7CiAgICAgICAgICAgICAgICBwbGF0Zm9ybURldGFpbC5maW5kKCcubW9kYWwtY29tbW9uLWltZy0yJykuc2hvdygpCiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBwbGF0Zm9ybURldGFpbC5maW5kKCcubW9kYWwtY29tbW9uLWltZy0yJykuaGlkZSgpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcGxhdGZvcm1EZXRhaWwuZmFkZUluKCkuY3NzKCdkaXNwbGF5JywgJ2ZsZXgnKTsKICAgICAgICB9KQoKICAgICAgICAkKCcuYW5kcm9pZC1tb2RhbC1hcnJvdycpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgY29uc3QgdHlwZSA9ICQodGhpcykuZGF0YSgndHlwZScpCiAgICAgICAgICAgIGlmICh0eXBlID09PSAxKSB7CiAgICAgICAgICAgICAgICAkKCcjcGxhdGZvcm0tbGlzdCcpLmZhZGVPdXQoKQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICh0eXBlID09PSAyKSB7CiAgICAgICAgICAgICAgICAkKCcjcGxhdGZvcm0tZGV0YWlsJykuZmFkZU91dCgpCiAgICAgICAgICAgICAgICBjb25zdCBwbGF0Zm9ybURldGFpbCA9ICQoJyNwbGF0Zm9ybS1kZXRhaWwnKTsKICAgICAgICAgICAgICAgIHBsYXRmb3JtRGV0YWlsLmZpbmQoJy5tb2RhbC1jb21tb24taW1nJykuYXR0cignc3JjJywgJycpOwogICAgICAgICAgICAgICAgcGxhdGZvcm1EZXRhaWwuZmluZCgnLm1vZGFsLWNvbW1vbi1pbWctMicpLmF0dHIoJ3NyYycsICcnKQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICh0eXBlID09PSAzKSB7CiAgICAgICAgICAgICAgICAkKCcjaW9zLWRldGFpbCcpLmZhZGVPdXQoKTsKICAgICAgICAgICAgfQogICAgICAgIH0pCiAgICAgICAgCiAgICB9KTsKCiAgICBjcmVhdFFyKCIjcXIiLCBsb2NhdGlvbi5ocmVmLCAxMjApOwogICAgY3JlYXRRcigiI3FyMSIsIGxvY2F0aW9uLmhyZWYsIDEyMCk7CiAgICBjcmVhdFFyKCIjcXIyIiwgbG9jYXRpb24uaHJlZiwgMTIwKTsKCiAgICBmdW5jdGlvbiBjcmVhdFFyKGlkLCB1cmwsIHNpemUpIHsKICAgICAgICBuZXcgUVJDb2RlKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoaWQpLCB7CiAgICAgICAgICAgIHRleHQ6IHVybCwKICAgICAgICAgICAgd2lkdGg6IHNpemUsCiAgICAgICAgICAgIGhlaWdodDogc2l6ZSwKICAgICAgICAgICAgY29sb3JEYXJrOiAiIzAwMDAwMCIsCiAgICAgICAgICAgIGNvbG9yTGlnaHQ6ICIjZmZmZmZmIiwKICAgICAgICAgICAgY29ycmVjdExldmVsOiBRUkNvZGUuQ29ycmVjdExldmVsLlEKICAgICAgICB9KTsKICAgIH0KCiAgICBmdW5jdGlvbiBkb3dubG9hZEFwcCh0eXBlKSB7CiAgICAgICAgY29weVRleHQoZGF0YU1hcC5jb3B5VGV4dCkKICAgICAgICBpZiAodHlwZSA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgIGlmIChnZXREZXZpY2VJbmZvKCkuaXNJb3MpIHsKICAgICAgICAgICAgICAgIHR5cGUgPSAnaW9zJzsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHR5cGUgPSAnYW5kcm9pZCc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHR5cGUgPT09ICdpb3MnKSB7CiAgICAgICAgICAgIGRvd25hcHBfaW9zKCk7CiAgICAgICAgfSBlbHNlIGlmICh0eXBlID09PSAnaW9zNjQnKSB7CiAgICAgICAgICAgIGRvd25hcHBfaW9zNjQoKTsKICAgICAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdhbmRyb2lkNjQnKSB7CiAgICAgICAgICAgIGRvd25hcHBfYW5kcm9pZDY0KCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZG93bmFwcF9hbmRyb2lkKCk7CiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIGRvd25hcHBfaW9zKCkgewogICAgICAgIGNvcHlUZXh0KGRhdGFNYXAuY29weVRleHQpCiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIGxvY2F0aW9uLmhyZWYgPSBkYXRhTWFwLmlvc0xpbms7CiAgICAgICAgfSwgMjAwKTsKICAgIH0KICAgIGZ1bmN0aW9uIGRvd25hcHBfaW9zNjQoKSB7CiAgICAgICAgY29weVRleHQoZGF0YU1hcC5jb3B5VGV4dCkKICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGRhdGFNYXAuaW9zTGluazY0OwogICAgICAgIH0sIDIwMCk7CiAgICB9CiAgICBmdW5jdGlvbiBkb3duYXBwX2FuZHJvaWQ2NCgpIHsKICAgICAgICBjb3B5VGV4dChkYXRhTWFwLmNvcHlUZXh0KTsKICAgICAgICAkLmFqYXgoewogICAgICAgICAgICB1cmw6ICcvaW5kZXgucGhwL2luZGV4L2Rvd25sb2FkQW5kcm9pZCcKICAgICAgICB9KTsKICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGRhdGFNYXAuYW5kcm9pZExpbms2NDsKICAgICAgICB9LCAyMDApOwogICAgfQogICAgZnVuY3Rpb24gZG93bmFwcF9hbmRyb2lkKCkgewogICAgICAgIGNvcHlUZXh0KGRhdGFNYXAuY29weVRleHQpCiAgICAgICAgJC5hamF4KHsKICAgICAgICAgICAgdXJsOiAnL2luZGV4LnBocC9pbmRleC9kb3dubG9hZEFuZHJvaWQnCiAgICAgICAgfSk7CiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIGxvY2F0aW9uLmhyZWYgPSBkYXRhTWFwLmFuZHJvaWRMaW5rOwogICAgICAgIH0sIDIwMCk7CiAgICB9CgogICAgZnVuY3Rpb24gb25BZGRyZXNzKHR5cGUpIHsKICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKQogICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICAgICBjYXNlICdsaW5rMSc6CiAgICAgICAgICAgICAgICB3aW5kb3cub3BlbihkYXRhTWFwLmxpbmsxLCAiX2JsYW5rIikKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICdsaW5rMic6CiAgICAgICAgICAgICAgICB3aW5kb3cub3BlbihkYXRhTWFwLmxpbmsyLCAiX2JsYW5rIikKICAgICAgICAgICAgICAgIGJyZWFrOyAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBjb3B5VGV4dChvYmopIHsKICAgICAgICBpZiAoIW9iaikgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHZhciB0ZXh0OwogICAgICAgIGlmICh0eXBlb2YgKG9iaikgPT0gJ29iamVjdCcpIHsKICAgICAgICAgICAgaWYgKG9iai5ub2RlVHlwZSkgeyAvLyBET00gbm9kZQogICAgICAgICAgICAgICAgb2JqID0gJChvYmopOyAvLyB0byBqUXVlcnkgb2JqZWN0CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIHRleHQgPSBvYmoudGV4dCgpOwogICAgICAgICAgICAgICAgaWYgKCF0ZXh0KSB7IC8vIE1heWJlIDx0ZXh0YXJlYSAvPgogICAgICAgICAgICAgICAgICAgIHRleHQgPSBvYmoudmFsKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyAvLyBhcyBKU09OCiAgICAgICAgICAgICAgICB0ZXh0ID0gSlNPTi5zdHJpbmdpZnkob2JqKTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHRleHQgPSBvYmo7CiAgICAgICAgfQoKICAgICAgICB2YXIgJHRlbXAgPSAkKCc8dGV4dGFyZWE+Jyk7CiAgICAgICAgJCgnYm9keScpLmFwcGVuZCgkdGVtcCk7CiAgICAgICAgJHRlbXAudmFsKHRleHQpLnNlbGVjdCgpOwogICAgICAgIHZhciByZXMgPSBkb2N1bWVudC5leGVjQ29tbWFuZCgnY29weScpOwogICAgICAgICR0ZW1wLnJlbW92ZSgpOwogICAgICAgIHJldHVybiByZXM7CiAgICB9Cgo8L3NjcmlwdD4KCjwhLS0gR29vZ2xlIHRhZyAoZ3RhZy5qcykgLS0+CjxzY3JpcHQgYXN5bmMgc3JjPSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndGFnL2pzP2lkPUctRUdTRTg3RlE1UCI+PC9zY3JpcHQ+CjxzY3JpcHQ+CiAgICB3aW5kb3cuZGF0YUxheWVyID0gd2luZG93LmRhdGFMYXllciB8fCBbXTsKICAgIGZ1bmN0aW9uIGd0YWcoKSB7IGRhdGFMYXllci5wdXNoKGFyZ3VtZW50cyk7IH0KICAgIGd0YWcoJ2pzJywgbmV3IERhdGUoKSk7CiAgICBndGFnKCdjb25maWcnLCAnRy1FR1NFODdGUTVQJyk7Cjwvc2NyaXB0Pgo8L2JvZHk+CjwvaHRtbD4K));/script>noscript>error ../noscript>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]