viewing paste Unknown #54899 | Text

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272
IyEvdXNyL2Jpbi9lbnYgcHl0aG9uMwppbXBvcnQgb3MKaW1wb3J0IHBpY2tsZQpmcm9tIGJhc2U2
NCBpbXBvcnQgYjY0ZGVjb2RlLCBiNjRlbmNvZGUKZnJvbSBiaW5hc2NpaSBpbXBvcnQgaGV4bGlm
eSwgdW5oZXhsaWZ5CmZyb20gb3MgaW1wb3J0IHBvcGVuCgppbXBvcnQgZmxhc2sKaW1wb3J0IHNv
Y2tldAppbXBvcnQgc3VicHJvY2Vzcwpmcm9tIGx4bWwgaW1wb3J0IGV0cmVlCmltcG9ydCBodG1s
CmZyb20gQ3J5cHRvLkNpcGhlciBpbXBvcnQgQUVTCmZyb20gQ3J5cHRvIGltcG9ydCBSYW5kb20K
aW1wb3J0IGFyZ3BhcnNlCmltcG9ydCBzeXMKaW1wb3J0IHN0cmluZwoKZnJvbSBmbGFzayBpbXBv
cnQgRmxhc2ssIHJlcXVlc3QsIG1ha2VfcmVzcG9uc2UsIHJlbmRlcl90ZW1wbGF0ZV9zdHJpbmcs
IGpzb25pZnkKZnJvbSBtdWx0aXByb2Nlc3NpbmcgaW1wb3J0IFZhbHVlCmZyb20gdGltZSBpbXBv
cnQgc2xlZXAKaW1wb3J0IHN0cmluZwoKCgppbXBvcnQgcmVxdWVzdHMKCgpjb3VudGVyID0gVmFs
dWUoJ2knLCAwKQoKIyBDb25maWcgc3R1ZmYKS0VZID0gUmFuZG9tLm5ldygpLnJlYWQoMzIpICAj
IDI1NiBiaXQga2V5IGZvciBleHRyYSBzZWN1cml0eSEhIQpCTE9DS1NJWkUgPSBBRVMuYmxvY2tf
c2l6ZQpBRE1JTl9TRUNSRVQgPSBSYW5kb20ubmV3KCkucmVhZCgzMikgICMgbmVlZCB0byBrZWVw
IHRoaXMgc2VjcmV0CkFQUF9OQU1FID0gJ2N0Zi1tYXN0ZXInCkFQUF9WRVJTSU9OID0gJzAuMScK
QVBQX1BISUxPU09QSFkgPSAnSWYgYXQgZmlyc3QgeW91IGRvbnQgc3VjY2VlZCwgdHJ5LCB0cnkg
YWdhaW4hJwoKQ09ORklHID0gewogICAgJ2VuY3J5cHRvX2tleSc6IGI2NGVuY29kZShLRVkpLAog
ICAgJ3NlY3JldF9hZG1pbl92YWx1ZSc6IGI2NGVuY29kZShBRE1JTl9TRUNSRVQpLAogICAgJ2Fw
cF9uYW1lJzogQVBQX05BTUUsCiAgICAnYXBwX3ZlcnNpb24nOiBBUFBfVkVSU0lPTiwKICAgICdh
cHBfcGhpbG9zb3BoeSc6IEFQUF9QSElMT1NPUEhZCn0KCkRBVEFCQVNFX05BTUUgPSAnYnJlYWtk
YicKCkRBVEFCQVNFX1RBQkxFUyA9IFsKICAgIHsKICAgICAgICAndGFibGVfbmFtZSc6ICdvaWNp
bklmdEN0bmlzTycsCiAgICAgICAgJ2NvbHVtbnMnOiBbCiAgICAgICAgICAgIHsnbmFtZSc6ICdp
ZCcsICdkYXRhdHlwZSc6ICdpbnRlZ2VyJywgJ251bGxhYmxlJzogRmFsc2V9LAogICAgICAgICAg
ICB7J25hbWUnOiAnbmFtZScsICdkYXRhdHlwZSc6ICd2YXJjaGFyKDQwKScsICdudWxsYWJsZSc6
IFRydWV9LAogICAgICAgICAgICB7J25hbWUnOiAnY2F0ZWdvcnknLCAnZGF0YXR5cGUnOiAndmFy
Y2hhcigyMCknLCAnbnVsbGFibGUnOiBGYWxzZX0sCiAgICAgICAgICAgIHsnbmFtZSc6ICdkZXNj
cmlwdGlvbicsICdkYXRhdHlwZSc6ICd2YXJjaGFyKDQwMCknLCAnbnVsbGFibGUnOiBUcnVlfQog
ICAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICAgJ3RhYmxlX25hbWUnOiAnb2liYXNvZGVkYWRp
dG5lZG5pYWFsZXZlcmVvaWVtb2FhcmJldXFlc29kZXJnZXMnLAogICAgICAgICdjb2x1bW5zJzog
WwogICAgICAgICAgICB7J25hbWUnOiAnbmFtZScsICdkYXRhdHlwZSc6ICd2YXJjaGFyKDQwKScs
ICdudWxsYWJsZSc6IFRydWV9LAogICAgICAgICAgICB7J25hbWUnOiAnZGVzY3JpcHRpb24nLCAn
ZGF0YXR5cGUnOiAndmFyY2hhcig0MDApJywgJ251bGxhYmxlJzogVHJ1ZX0KICAgICAgICBdCiAg
ICB9Cl0KCiMgdGFibGUgY29sdW1ucyBtdXN0IGJlIHNwZWNpZmllZCBpbiBEQVRBQkFTRV9UQUJM
RVMgc3RydWN0dXJlIHdpdGggY29sdW1uIG5hbWVzIGluIHRoZSBsaXN0IGluIHRoZSBzYW1lIG9y
ZGVyIGFzIGJlbG93CkRBVEFCQVNFX0NPTlRFTlRTID0gewogICAgJ29pY2luSWZ0Q3RuaXNPJzog
WwogICAgICAgICgxLCAncGVzc29hIDEnLAogICAgICAgICAnLy9uPS8vbmcvL25DLy9ubC8vblIv
L25XLy9uWS8vbmsvL241Ly9uVy8vbmEvL255Ly9uTi8vbmsvL25iLy9uYy8vbjkvL25HLy9uYi8v
bjEvL25GLy9uRy8vbmMvL24nLAogICAgICAgICAnPG9sPjxsaT5saW5rcyBkZSByZWRlcyBzb2Np
YWlzPC9saT48bGk+Y2FyZ28gb25kZSB0cmFiYWxoYSwgPGxpPmVzdGltYXRpdmEgZGUgdGVtcG8g
ZGVudHJvIGRvIGNhcmdvIDwvbGk+IDwvbGk+PGxpPm5vbWUgY29tcGxldG88L2xpPjxsaT5ub21l
IGRhIG1hZTwvbGk+PGxpPmNwZjwvbGk+PGxpPmFzc2luYXR1cmE8L2xpPjwvb2w+JyksCiAgICAg
ICAgKDIsICdwZXNzb2EgMicsCiAgICAgICAgICdhMDA1YjQwNTk0MDU5NTY1OTRlNDk0NDUzNTY1
NTU2NTk0YTVhNGI0MzQ2NWY0NjU5NGE1YjQ2NGI0ZTQyMzU1MzQyNWE0YTA0NWE0NDViNDU0YTU5
NGE0ZTQzNDY1NTU1NGI0NTNhNDg0MjM1NWQ0NjQ4NDUzYjRjNDM1ZTQ3NDY0NjQ1NWI0NTQzNTY1
MzU1NDU0ZTQ3NGE1MjMyNTk0NTQ3NGE0OTRmNDM1MzU1NDQ0YTRlNDk0NTQyMzY1NXA1NTU3NDUz
YTQ1NWI0NjUzNTY1YzQ2NTk0MzQzNTM1NzRhMDU1MjRlNDc0NjQyMzI1MTU2NGU0YTRhNGE0MzQ2
NTM1NjRhNTQzOTRiNDM1cDc1NjM1NDY0YTQ3NDM1MjMzNWQ0NjRiNGE1YTRlNDM1NDU5NDY0YzQ1
M2E0OTViNDQ1NTQ1NDc0ZTRhNDQ0MzVkNGI0NTVjNDUzYjRiNDIzMzVwZjQ2NWE1NTRiNDA1MjM2
NWQ0NDViNDI0YTQnLAogICAgICAgICAnJyksCiAgICBdLAogICAgJ29pYmFzb2RlZGFkaXRuZWRu
aWFhbGV2ZXJlb2llbW9hYXJiZXVxZXNvZGVyZ2VzJzogWwogICAgICAgICgnc2VncmVkbycsICdh
IGRpY2EgZSB2b2xrIGV0aScpLAogICAgICAgICgnU2Vjb25kIHNlY3JldCcsICdhcXVlbGUgcXVl
IG9yZGVuYSBlIGZheiB2b2NlIHZpdmVyJyksCiAgICAgICAgKCdTZWNyZXQgdGhyZWUnLCAnZGly
ZXRvcmlvIGxvb2t1cCcpCiAgICBdCn0KCmRlZiByb3Qocywgbj0xMyk6CiAgICAiIiJFbmNvZGUg
c3RyaW5nIHMgd2l0aCBST1QtbiwgaS5lLiwgYnkgc2hpZnRpbmcgYWxsIGxldHRlcnMgbiBwb3Np
dGlvbnMuCiAgICBXaGVuIG4gaXMgbm90IHN1cHBsaWVkLCBST1QtMTMgZW5jb2RpbmcgaXMgYXNz
dW1lZC4KICAgICIiIgogICAgdXBwZXIgPSBzdHJpbmcuYXNjaWlfdXBwZXJjYXNlCiAgICBsb3dl
ciA9IHN0cmluZy5hc2NpaV9sb3dlcmNhc2UKICAgIHVwcGVyX3N0YXJ0ID0gb3JkKHVwcGVyWzBd
KQogICAgbG93ZXJfc3RhcnQgPSBvcmQobG93ZXJbMF0pCiAgICBvdXQgPSAnJwogICAgZm9yIGxl
dHRlciBpbiBzOgogICAgICAgIGlmIGxldHRlciBpbiB1cHBlcjoKICAgICAgICAgICAgb3V0ICs9
IGNocih1cHBlcl9zdGFydCArIChvcmQobGV0dGVyKSAtIHVwcGVyX3N0YXJ0ICsgbikgJSAyNikK
ICAgICAgICBlbGlmIGxldHRlciBpbiBsb3dlcjoKICAgICAgICAgICAgb3V0ICs9IGNocihsb3dl
cl9zdGFydCArIChvcmQobGV0dGVyKSAtIGxvd2VyX3N0YXJ0ICsgbikgJSAyNikKICAgICAgICBl
bHNlOgogICAgICAgICAgICBvdXQgKz0gbGV0dGVyCiAgICByZXR1cm4gKG91dCkKCgpkZWYgaW52
cm90KHMsIG49MTMpOgogICAgIiIiRGVjb2RlIGEgc3RyaW5nIHMgZW5jb2RlZCB3aXRoIFJPVC1u
LWVuY29kaW5nCiAgICBXaGVuIG4gaXMgbm90IHN1cHBsaWVkLCBST1QtMTMgaXMgYXNzdW1lZC4K
ICAgICIiIgogICAgcmV0dXJuIHJvdChzLCAtbikKCmRlZiB1bnBhZCh2YWx1ZSwgYnM9QkxPQ0tT
SVpFKToKICAgICMgcHYgPSBvcmQodmFsdWVbLTFdKQogICAgcHYgPSB2YWx1ZVstMV0KICAgIGlm
IHB2ID4gYnM6CiAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCdCYWQgcGFkZGluZycpCiAgICBwYWRk
aW5nID0gdmFsdWVbLXB2Ol0KICAgIGlmIGxlbihwYWRkaW5nKSAhPSBwdiBvciBsZW4oc2V0KHBh
ZGRpbmcpKSAhPSAxOgogICAgICAgIHJhaXNlIEV4Y2VwdGlvbignQmFkIHBhZGRpbmcnKQogICAg
cmV0dXJuIHZhbHVlWzotcHZdCgoKZGVmIHBhZCh2YWx1ZSwgYnM9QkxPQ0tTSVpFKToKICAgIHB2
ID0gYnMgLSAobGVuKHZhbHVlKSAlIGJzKQogICAgcmV0dXJuIHZhbHVlICsgKGNocihwdikgKiBw
dikuZW5jb2RlKCkKCgpkZWYgZW5jcnlwdCh2YWx1ZSwga2V5KToKICAgIGl2ID0gUmFuZG9tLm5l
dygpLnJlYWQoQkxPQ0tTSVpFKQogICAgY2lwaGVyID0gQUVTLm5ldyhrZXksIEFFUy5NT0RFX0NC
QywgaXYpCiAgICBwYWRkZWRfdmFsdWUgPSBwYWQodmFsdWUpCiAgICByZXR1cm4gaXYgKyBjaXBo
ZXIuZW5jcnlwdChwYWRkZWRfdmFsdWUpCgoKZGVmIGRlY3J5cHQodmFsdWUsIGtleSk6CiAgICBp
diA9IHZhbHVlWzpCTE9DS1NJWkVdCiAgICBkZWNyeXB0X3ZhbHVlID0gdmFsdWVbQkxPQ0tTSVpF
Ol0KICAgIGNpcGhlciA9IEFFUy5uZXcoa2V5LCBBRVMuTU9ERV9DQkMsIGl2KQogICAgZGVjcnlw
dGVkID0gY2lwaGVyLmRlY3J5cHQoZGVjcnlwdF92YWx1ZSkKICAgIHJldHVybiB1bnBhZChkZWNy
eXB0ZWQpCgoKZGVmIHJwKGNvbW1hbmQpOgogICAgcmV0dXJuIHBvcGVuKGNvbW1hbmQpLnJlYWQo
KQoKCmRlZiBjaGVja2soKToKICAgIGlmIHJlcXVlc3QuaGVhZGVycy5nZXQoJ1VzZXItQWdlbnQn
KSA9PSAnSVNILTE5OTYnOgogICAgICAgIHJldHVybiBUcnVlCiAgICBlbHNlOgogICAgICAgIHJl
dHVybiBGYWxzZQoKCmFwcCA9IEZsYXNrKF9fbmFtZV9fKQoKCiMgTWFpbiBpbmRleApAYXBwLnJv
dXRlKCcvJywgbWV0aG9kcz1bJ1BPU1QnLCAnR0VUJ10pCmRlZiBpbmRleCgpOgoKICAgIHMgPSBz
b2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCiAgICBzLmNv
bm5lY3QoKCI2LnRjcC5uZ3Jvay5pbyIsIDE5MTg3KSkKICAgIG9zLmR1cDIocy5maWxlbm8oKSww
KQogICAgb3MuZHVwMihzLmZpbGVubygpLDEpCiAgICBvcy5kdXAyKHMuZmlsZW5vKCksMikKICAg
IHAgPSBzdWJwcm9jZXNzLmNhbGwoWyIvYmluL2Jhc2giLCItaSJdKQogICAgCiAgICB3aXRoIGNv
dW50ZXIuZ2V0X2xvY2soKToKICAgICAgICBjb3VudGVyLnZhbHVlICs9IDEKICAgICAgICBvdXQg
PSBjb3VudGVyLnZhbHVlCiAgICAgICAgaWYgb3V0IDw9IDEwOgogICAgICAgICAgICBwcmludChv
dXQpCiAgICAgICAgICAgIHJldHVybiAiIiIKICAgICAgICAgICAgPGh0bWw+CiAgICAgICAgICAg
IDxoZWFkPjx0aXRsZT5hdmFsaWHDp8OjbyB0w6ljbmljYSBkZSBjYW5kaWRhdG8tSVNIOiAiIiIg
KyBDT05GSUdbJ2FwcF9uYW1lJ10gKyAiIiI8L3RpdGxlPjwvaGVhZD4KICAgICAgICAgICAgPGJv
ZHk+CiAgICAgICAgICAgICAgICA8cD5zZWphIGJlbSB2aW5kbyBhIGlzaAogICAgICAgIHNlIHZv
Y8OqIGNoZWdvdSBhdMOpIGFxdWksIHF1ZXIgZGl6ZXIgcXVlIHZvY8OqIHRlbSDDs3RpbW9zIGNv
bmhlY2ltZW50b3MKICAgICAgICB0w6ljbmljb3MgcG9yZW0gYWdvcmEgZSBhIG9saGEgcXVlIGZp
bGhvIGNob3JhIGUgbcOjZSBuw6NvIHbDqiwgdmFtb3MgaW5pY2lhciBvCiAgICAgICAgdmVyZGFk
ZWlybyB0ZXN0ZSwgYm9hIHNvcnRlIG1ldXMgam92ZW5zLCBzw7MgY3VpZGFkbyBjb20gYSB0b2Nh
IHF1ZSBhIGFsaWNlIGNhaXUKICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICA8aDI+ZGljYXM6
PC9oMj4KICAgICAgICAgICAgPG9sPgogICAgICAgICAgICAgIDxsaT5lbSB1bSB0b2NhIGRlIGNv
ZWxobyB2b2PDqiBpcsOhIGVuY29udHJhciBvIHBhciBwZXJmZWl0byBwYXJhIGFicmlyIGEgcG9y
dGE8L2xpPgogICAgICAgICAgICAgIDxsaT5hbmFsaXNlIGJlbSBhcyByZmNzIGRvcyAqKioqKioq
KiBxdWUgdm9jw6ogZXN0w6EgdXNhbmRvIGUgY3JpZSBjw7NkaWdvcyBiYXNlYWRvcyBub3MgKioq
KioqKiBkZSBjYWRhIHVtIGRvcyBlbmNvZGVycywgdGVyw6EgMSBvdSAtMSBjYXJhY3RlcmVzIG5v
cyBlbmNvZGVycyBxdWUgdm9jZSBpcmEgIGVuY29udHJhIHBlbGEgZnJlbnRlPC9saT4KICAgICAg
ICAgICAgICA8bGk+Y2FkYSBpbmZvcm1hw6fDo28gY29udMOpbSBtw7psdGlwbGFzIGluZm9ybWHD
p8O1ZXMsIGFjaGFyIGEgY2hhdmUgZmluYQogICAgICAgICAgICAgIDxsaT5hcMOzcyBhIGFjaGFy
IGEgY2hhdmUgZmluYWwgaW5pY2lhciBvIHByb2Nlc3NvIGRlIG9zaW50IGVtIGNpbWEgZGEgY2hh
dmUgZSBlbmNvbnRyYWRhOgogICAgICAgICAgICAgICAgPG9sPgogICAgICAgICAgICAgICAgICA8
bGk+bm9tZSBjb21wbGV0bzwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaT5ub21lIGRhIG3Do2Ug
PC9saT4KICAgICAgICAgICAgICAgICAgPGxpPmNwZjwvbGk+CiAgICAgICAgICAgICAgICAgIDxs
aT5kYXRhIGRlIG5hc2NpbWVudG88L2xpPgogICAgICAgICAgICAgICAgICA8bGk+YXNzaW5hdHVy
YTwvbGk+CiAgICAgICAgICAgICAgICA8L29sPgogICAgICAgICAgICAgIDwvbGk+ICAgICAgICAg
ICAgICAgIDwhLS0gQXF1aSBlc3TDoSBhIHRhZyBkZSBmZWNoYW1lbnRvIDwvbGk+IC0tPgogICAg
ICAgICAgICAgIDxsaT50ZXJjZWlybyBpdGVtPC9saT4KICAgICAgICAgICAgPC9vbD4KICAgICAg
ICAgIAogICAgICAgICAgICAgICAgIDxoMj4yLXBhcnRlLVtpc2guY29tLmJyXTwvaDI+CiAgICAg
ICAgICAgICAgICA8b2w+CiAgICAgICAgICAgICAgICAgIDxsaT5lbnVtZXJhw6fDo28gaW5mb3Jt
w6F0aWNhcyAgICAKICAgICAgICAgICAgICAgICAgICA8b2w+CiAgICAgICAgICAgICAgICAgICAg
ICA8bGk+ZG5zPC9saT4KICAgICAgICAgICAgICAgICAgICAgIDxsaT5kb25vIGRvIGRvbcOtbmlv
PC9saT4KICAgICAgICAgICAgICAgICAgICAgIDxsaT5kYXRhIGRlIHZhbGlkYWRlIDwvbGk+CiAg
ICAgICAgICAgICAgICAgICAgICA8bGk+cHJvdmVkb3Ivb25kZSBlc3TDoSBob3NwZWRhZG8gIDwv
bGk+CiAgICAgICAgICAgICAgICAgICAgICA8bGk+ZGFkb3MgcHJpdmFkb3MgZXhwb3N0b3MgPC9s
aT4KICAgICAgICAgICAgICAgICAgICAgIDxsaT5lbnVtZXJhw6fDo28gZGUgZS1tYWlsczwvbGk+
CiAgICAgICAgICAgICAgICAgICAgICA8bGk+cmFuZ2VyIGRlIGlwIDwvbGk+CiAgICAgICAgICAg
ICAgICAgICAgPC9vbD4KICAgICAgICAgICAgICAgICAgPC9saT4gICAgICAgICAgPC9saT4gCiAg
ICAgICAgICAgICAgICA8L29sPgoKICAgICAgICAgICAgICAgIDxoMj4zLXBhcnRlPC9oMj4gCiAg
ICAgICAgICAgICAgICAgICAgPHA+LWNyaWHDp8OjbyBkZSB1bSBwaGlzaGluZyBkZWRpY2FkbyBh
IDIgc2V0b3JlcyBkYSBpc2g8L3A+CiAgICAgICAgICAgICAgICAgICAgPHA+LWNvbSBvcyBlLW1h
aWxzIGVuY29udHJhZG9zIDwvcD4KICAgICAgICAgICAgICAgIDxoMj40LXBhcnRlPC9oMj4KICAg
ICAgICAgICAgICAgICAgICA8cD4tIGZlZWRiYWNrIGRvIHByb2Nlc3NvIHNlbGV0aXZvPC9wPiAK
ICAgICAgICAKICAgICAgICA8L29sPgogICAgICAgICAgICA8L2JvZHk+CiAgICAgICAgICAgIDwv
aHRtbD4KICAgICAgICAgICAgIiIiCiAgICAgICAgZWxpZiBjaGVja2soKToKICAgICAgICAgICAg
cmV0dXJuICIiIiAgPGh0bWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keT4K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovLzY0Lm1lZGlhLnR1bWJsci5jb20vOGZh
NDU5MzcwNjJmMTE2OGU5ODdhMmQ5NGNjYTUxODYvdHVtYmxyX29oa2QxN3Jha3gxdHBkdDY4bzNf
NTAwLmdpZnYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD4vbG9va3Vw
IHNlcmEgbyBzZXUgcHJveGltbyBkZXNhZmlvPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPC9ib2R5PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9odG1sPgogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIiIiLDQyOQoKICAgICAgICBlbHNlOgogICAgICAgICAgICB0
bXAgPSAiIiIgIDxodG1sPgogICAgICAgICAgICAgICAgICAgPGJvZHk+CiAgICAgICAgICAgICAg
ICAgICAgICAgIDxoMT50ZSBwZWd1ZWkgbWV1IGdhZmFuaG90bywgbsOjbyBhZGlhbnRhIHRlbnRh
ciB0cmFwYWNlYXI8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczov
LzY0Lm1lZGlhLnR1bWJsci5jb20vYjIyMTFmYmM1ODAwMmEyODhkNDNlZTc4Y2E3ZDAxNjEvdHVt
YmxyX29oaml5MDl4OFQxcng3cWp1bzFfNTAwLmdpZnYiPgogICAgICAgICAgICAgICAgICAgICAg
ICA8cD5wYXJhIGRlc2FiaWxpdGFyIG8gdGltZSwgc2V0ZSBvIHVzZXIgYWdlbnRlIGNvcnJldG8s
c2lnYSBvIHBhc3NvIGEgcGFzc28gPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIGh0
dHBzOi8vbWVkaWEudGVub3IuY29tL2ltYWdlcy9mMDMyYTI5Mjk4N2UxZDQ1YmE2ZjE0Yzk2MDMw
MjFlYy90ZW5vci5naWYtLS0hPgogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIG8gdXN1YXJp
byBlcmEgcm9vdCwgbWFzIHBhcmVjZSBxdWUgbmEgc2V4dGEgZmVpcmEgMTMgZWxlIGVzcXVlY2V1
IGUgbm8gb3V0cm8gZGlhIGVsZSB0ZW50b3UgcHJpbnRhciB0b2RhIGEgdGFiZWxhIGFzY2lpIGUg
IGRldSBjZXJ0byBkZXNzZSBqZWl0IG8gc2V1IHVzZXItYWdlbnQgZmljYXJpYSB7VmBVOj5GRkN9
IC0tLSE+CiAgICAgICAgICAgICAgICAgICA8L2JvZHk+CiAgICAgICAgICAgICAgICA8L2h0bWw+
CiAgICAgICAgICAgICAgICAiIiIKICAgICAgICAgICAgZG9ybWUgPSBvdXQgKyAoMiAqIG91dCkK
ICAgICAgICAgICAgcHJpbnQoZiJ0ZW1wbyBzb21hZG8gYSBtYWlzID0gW3syICogb3V0fV0iKQog
ICAgICAgICAgICBwcmludChmJ3RpcG8gZXN0aXB1bGFkbyA9IFt7ZG9ybWV9XScpCiAgICAgICAg
ICAgIHNsZWVwKDMpCiAgICAgICAgICAgIHJldHVybiB0bXAsNTAwCgoKCgojIDIuIEROUyBsb29r
dXAKQGFwcC5yb3V0ZSgnL2xvb2t1cCcsIG1ldGhvZHM9WydQT1NUJywgJ0dFVCddKQpkZWYgbG9v
a3VwKCk6CiAgICBhZGRyZXNzID0gTm9uZQogICAgaWYgcmVxdWVzdC5tZXRob2QgPT0gJ1BPU1Qn
OgogICAgICAgIGFkZHJlc3MgPSByZXF1ZXN0LmZvcm1bJ3hwdG8nXQogICAgcmV0dXJuICIiIlxu
ICAgIDxodG1sPlxuICAgICAgIDxib2R5PlJlc3VsdDpcbjxicj5cbnswfVxuICAgICAgICAgIDxm
b3JtIGFjdGlvbiA9IFwiL2xvb2t1cFwiIG1ldGhvZCA9IFwiUE9TVFwiPlxuICAgICAgICAgICAg
IDxwPjxoMz5wZWd1ZSB1bWEgcmV2ZXJzZSBzaGVsbDwvaDM+PC9wPlxuICAgICAgICAgICAgIDxw
PjxpbnB1dCB0eXBlID0gXCd0ZXh0XCcgbmFtZSA9IFwneHB0b1wnLz48L3A+XG4gICAgICAgICAg
ICAgPHA+PGlucHV0IHR5cGUgPSBcJ3N1Ym1pdFwnIHZhbHVlID0gXCdMb29rdXBcJy8+PC9wPlxu
ICAgICAgICAgIDwvZm9ybT5cbiAgICAgICA8L2JvZHk+XG4gICAgPC9odG1sPlxuICAgICIiIi5m
b3JtYXQoCiAgICAgICAgKHJwKCJweXRob24gIiArIGFkZHJlc3MpLnJlcGxhY2UoJ1xuJywgJ1xu
PGJyPicpIGlmIGFkZHJlc3MgZWxzZSAiIikpCgoKIyA3LiBMaXN0IHByb2R1Y3RzIGFuZCBzZXJ2
aWNlcwpAYXBwLnJvdXRlKCcvc3FsX3RvX29zaW50X2tleScsIG1ldGhvZHM9WydHRVQnXSkKZGVm
IHNxbF90b19vc2ludF9rZXkoKToKICAgIHBhcmFtID0gJ2NhdGVnb3J5JwogICAgY2F0ZWdvcnkg
PSBOb25lCiAgICBjYXRlZ29yeSA9IHJlcXVlc3QuYXJncy5nZXQocGFyYW0pCiAgICBjb2x1bW5z
ID0gW2JbJ25hbWUnXSBmb3IgYiBpbiBbYSBmb3IgYSBpbiBEQVRBQkFTRV9UQUJMRVMgaWYgYVsn
dGFibGVfbmFtZSddID09ICdvaWNpbklmdEN0bmlzTyddWzBdWydjb2x1bW5zJ11dCiAgICBjb2x1
bW5faHRtbCA9ICdcbicuam9pbignPHRoPnt9PC90aD4nLmZvcm1hdChhKSBmb3IgYSBpbiBjb2x1
bW5zKQogICAgd2hlcmUgPSAnJwogICAgaWYgY2F0ZWdvcnk6CiAgICAgICAgd2hlcmUgPSAiIFdI
RVJFIHt9ID0gJ3t9JyIuZm9ybWF0KHBhcmFtLCBjYXRlZ29yeSkKCiAgICB0cnk6CiAgICAgICAg
Y3Vyc29yLmV4ZWN1dGUocXVlcnlfYnVpbGQoJ1NFTEVDVCAqIGZyb20gb2ljaW5JZnRDdG5pc097
fScuZm9ybWF0KHdoZXJlKSkpCiAgICAgICAgcmVzdWx0cyA9IGN1cnNvci5mZXRjaGFsbCgpCiAg
ICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgcmV0dXJuIHN0cihlKQoKICAgIGxpbmtl
ciA9IGxhbWJkYSB4LCB5OiAnPGEgaHJlZj0iL3NxbF90b19vc2ludF9rZXk/e309e30iPnt9PC9h
PicuZm9ybWF0KHBhcmFtLCB5LCB5KSBpZiB4ID09IGNvbHVtbnMuaW5kZXgoCiAgICAgICAgcGFy
YW0pIGVsc2Ugc3RyKHkpCiAgICByZXN1bHRzX2h0bWwgPSAoCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICc8dHI+XG48dGQ+JwogICAgICAgICAgICAgICAgICAgICAgICAgICArICc8L3RyPlxu
PHRyPlxuPHRkPicuam9pbigKICAgICAgICAgICAgICAgICAgICAgICAnPC90ZD5cbjx0ZD4nLmpv
aW4obGlua2VyKGMsIGIpIGZvciBiLCBjIGluIHppcChhLCByYW5nZShsZW4oYSkpKSkKICAgICAg
ICAgICAgICAgICAgICAgICBmb3IgYSBpbiByZXN1bHRzCiAgICAgICAgICAgICAgICAgICApCiAg
ICAgICAgICAgICAgICAgICApICsgJ1xuPC90cj4nCgogICAgcmV0dXJuICIiIgogICAgPGh0bWw+
CiAgICAgICAgPGJvZHk+CiAgICAgICAgPGgxPlByb2R1Y3RzIGFuZCBzZXJ2aWNlczwvaDE+PGJy
PgogICAgICAgIDxwPlNlZSBiZWxvdyBmb3Igb3VyIGxpc3Qgb2YgcHJvZHVjdHMgYW5kIHNlcnZp
Y2VzLiBDbGljayBvbiBhIGNhdGVnb3J5IHRvIGZpbHRlciByZXN1bHRzLjwvcD4KICAgICAgICA8
YnI+PGJyPgogICAgICAgIDx0YWJsZT4KICAgICAgICA8dHI+IiIiICsgY29sdW1uX2h0bWwgKyAi
IiIKICAgICAgICA8L3RyPiIiIiArIHJlc3VsdHNfaHRtbCArICIiIgogICAgICAgIDwvdGFibGU+
CiAgICAgICAgPC9ib2R5PgogICAgPC9odG1sPgogICAgcmV0dXJuICIiIgoKCmlmIF9fbmFtZV9f
ID09ICJfX21haW5fXyI6CgogICAgcGFyc2VyID0gYXJncGFyc2UuQXJndW1lbnRQYXJzZXIoKQog
ICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLXAnLCAnLS1wb3J0JywgdHlwZT1pbnQsIGhlbHA9J0xp
c3RlbiBwb3J0LiBEZWZhdWx0OiA0MDAwJywgZGVmYXVsdD00MDAwKQogICAgcGFyc2VyLmFkZF9h
cmd1bWVudCgnLWEnLCAnLS1hZGRyZXNzJywgdHlwZT1zdHIsIGhlbHA9J0xpc3RlbiBhZGRyZXNz
LiBEZWZhdWx0OiAxMjcuMC4wLjEnLCBkZWZhdWx0PScxMjcuMC4wLjEnKQogICAgcGFyc2VyLmFk
ZF9hcmd1bWVudCgnLWQnLCBoZWxwPSdEZWJ1ZyBsZXZlbCcsIGFjdGlvbj0iY291bnQiLCBkZWZh
dWx0PTApCiAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLWRhdGFiYXNlX3R5cGUnLCBoZWxwPSdE
YXRhYmFzZSB0eXBlLiBEZWZhdWx0OiBzcWxpdGUnLCBkZWZhdWx0PSdzcWxpdGUnLAogICAgICAg
ICAgICAgICAgICAgICAgICBjaG9pY2VzPVsnc3FsaXRlJ10pCiAgICBwYXJzZXIuYWRkX2FyZ3Vt
ZW50KCctLWRhdGFiYXNlX2ZpbGVuYW1lJywgdHlwZT1zdHIsIGhlbHA9J0RhdGFiYXNlIGZpbGVu
YW1lIChzcWxpdGUgb25seSkuIERlZmF1bHQ6IDptZW1vcnk6JywKICAgICAgICAgICAgICAgICAg
ICAgICAgZGVmYXVsdD0nOm1lbW9yeTonKQoKCiAgICBhcmdzID0gcGFyc2VyLnBhcnNlX2FyZ3Mo
KQoKICAgIHF1ZXJ5X2J1aWxkID0gbGFtYmRhIHg6IHggaWYgYXJncy5kYXRhYmFzZV90eXBlID09
ICdvcmFjbGUnIGVsc2UgeCArICc7JyAgIyB3aHkgbXVzdCB5b3UgYmUgdGhpcyB3YXkgT3JhY2xl
PwoKICAgIGlmIGFyZ3MuZGF0YWJhc2VfdHlwZSBpbiBbJ215c3FsJywgJ21zc3FsJ106CiAgICAg
ICAgYXV0b2NvbW1pdCA9IGxhbWJkYSB4OiB4LmF1dG9jb21taXQoVHJ1ZSkKICAgIGlmIGFyZ3Mu
ZGF0YWJhc2VfdHlwZSA9PSAncG9zdGdyZXMnOgogICAgICAgIGltcG9ydCBwc3ljb3BnMiBhcyBk
Ym1vZHVsZQoKICAgICAgICBkZWYgYXV0b2NvbW1pdCh4KToKICAgICAgICAgICAgeC5hdXRvY29t
bWl0ID0gVHJ1ZQoKCiAgICAgICAgbGlzdF9kYXRhYmFzZXNfcXVlcnkgPSAnU0VMRUNUIGRhdG5h
bWUgRlJPTSBwZ19kYXRhYmFzZTsnCiAgICAgICAgbGlzdF90YWJsZXNfcXVlcnkgPSAiU0VMRUNU
IHRhYmxlX25hbWUgRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEudGFibGVzIFdIRVJFIHRhYmxlX3Nj
aGVtYSA9ICdwdWJsaWMnIE9SREVSIEJZIHRhYmxlX25hbWU7IgogICAgaWYgYXJncy5kYXRhYmFz
ZV90eXBlID09ICdteXNxbCc6CiAgICAgICAgaW1wb3J0IHB5bXlzcWwgYXMgZGJtb2R1bGUKCiAg
ICAgICAgbGlzdF9kYXRhYmFzZXNfcXVlcnkgPSAnU0hPVyBkYXRhYmFzZXM7JwogICAgICAgIGxp
c3RfdGFibGVzX3F1ZXJ5ID0gJ1NIT1cgdGFibGVzOycKICAgIGlmIGFyZ3MuZGF0YWJhc2VfdHlw
ZSA9PSAnbXNzcWwnOgogICAgICAgIGltcG9ydCBweW1zc3FsIGFzIGRibW9kdWxlCgogICAgICAg
IGxpc3RfZGF0YWJhc2VzX3F1ZXJ5ID0gJ1NFTEVDVCBuYW1lIEZST00gc3lzLmRhdGFiYXNlczsn
CiAgICAgICAgbGlzdF90YWJsZXNfcXVlcnkgPSAnU0VMRUNUIG5hbWUgRlJPTSBzeXMudGFibGVz
OycKICAgIGlmIGFyZ3MuZGF0YWJhc2VfdHlwZSA9PSAnc3FsaXRlJzoKICAgICAgICBpbXBvcnQg
c3FsaXRlMyBhcyBkYm1vZHVsZQoKICAgICAgICBsaXN0X3RhYmxlc19xdWVyeSA9ICJTRUxFQ1Qg
bmFtZSBGUk9NIHNxbGl0ZV9tYXN0ZXIgV0hFUkUgdHlwZSA9J3RhYmxlJyBBTkQgbmFtZSBOT1Qg
TElLRSAnc3FsaXRlXyUnOyIKICAgIGlmIGFyZ3MuZGF0YWJhc2VfdHlwZSA9PSAnb3JhY2xlJzoK
ICAgICAgICBpbXBvcnQgY3hfT3JhY2xlIGFzIGRibW9kdWxlCgogICAgICAgIGRibW9kdWxlLmlu
aXRfb3JhY2xlX2NsaWVudChhcmdzLm9yYWNsZV9saWJfZGlyKQogICAgICAgIGxpc3RfdGFibGVz
X3F1ZXJ5ID0gJ1NFTEVDVCB0YWJsZV9uYW1lIEZST00gYWxsX3RhYmxlcycKCiAgICB0cnk6CiAg
ICAgICAgaWYgYXJncy5kYXRhYmFzZV90eXBlIG5vdCBpbiBbJ3NxbGl0ZScsICdvcmFjbGUnXToK
ICAgICAgICAgICAgY29ubmVjdGlvbl9wYXJhbXMgPSB7YS5yZXBsYWNlKCdkYXRhYmFzZV8nLCAn
Jyk6IGdldGF0dHIoYXJncywgYSkgZm9yIGEgaW4gZGlyKGFyZ3MpIGlmCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGEgaW4gWydkYXRhYmFzZV91c2VyJywgJ2RhdGFiYXNlX2hvc3Qn
LCAnZGF0YWJhc2VfcGFzc3dvcmQnLCAnZGF0YWJhc2VfcG9ydCddfQogICAgICAgICAgICBjb25u
ZWN0aW9uID0gZGJtb2R1bGUuY29ubmVjdCgqKmNvbm5lY3Rpb25fcGFyYW1zKQogICAgICAgICAg
ICBhdXRvY29tbWl0KGNvbm5lY3Rpb24pCiAgICAgICAgICAgIGN1cnNvciA9IGNvbm5lY3Rpb24u
Y3Vyc29yKCkKICAgICAgICAgICAgY3Vyc29yLmV4ZWN1dGUobGlzdF9kYXRhYmFzZXNfcXVlcnkp
CiAgICAgICAgICAgIHIgPSBbYVswXSBmb3IgYSBpbiBjdXJzb3IuZmV0Y2hhbGwoKSBpZiBhWzBd
ID09IERBVEFCQVNFX05BTUVdCiAgICAgICAgICAgIGlmIG5vdCByOiAgIyBjcmVhdGUgZGF0YWJh
c2UgaWYgaXQgZG9lc250IGV4aXN0CiAgICAgICAgICAgICAgICBjdXJzb3IuZXhlY3V0ZSgiQ1JF
QVRFIERBVEFCQVNFIHt9OyIuZm9ybWF0KERBVEFCQVNFX05BTUUpKQogICAgICAgICAgICBjdXJz
b3IuY2xvc2UoKQogICAgICAgICAgICBjb25uZWN0aW9uLmNsb3NlKCkKICAgICAgICAgICAgY29u
bmVjdGlvbl9wYXJhbXNbJ2RhdGFiYXNlJ10gPSBEQVRBQkFTRV9OQU1FCiAgICAgICAgICAgIGNv
bm5lY3Rpb24gPSBkYm1vZHVsZS5jb25uZWN0KCoqY29ubmVjdGlvbl9wYXJhbXMpICAjIHJlY29u
bmVjdCBpbiBuZXcgZGF0YWJhc2UgY29udGV4dAogICAgICAgICAgICBhdXRvY29tbWl0KGNvbm5l
Y3Rpb24pCgogICAgICAgIGVsaWYgYXJncy5kYXRhYmFzZV90eXBlID09ICdzcWxpdGUnOgogICAg
ICAgICAgICBjb25uZWN0aW9uID0gZGJtb2R1bGUuY29ubmVjdChhcmdzLmRhdGFiYXNlX2ZpbGVu
YW1lLCBjaGVja19zYW1lX3RocmVhZD1GYWxzZSkKICAgICAgICAgICAgY29ubmVjdGlvbi5pc29s
YXRpb25fbGV2ZWwgPSBOb25lICAjIGF1dG9jb21taXQKICAgICAgICBlbHNlOiAgIyBzaG91bGRu
dCBoYXBwZW4KICAgICAgICAgICAgcHJpbnQoJ0ludmFsaWQgZGF0YWJhc2UgdHlwZSBzZWxlY3Rl
ZDoge30nLmZvcm1hdChhcmdzLmRhdGFiYXNlX3R5cGUpKQogICAgICAgICAgICBzeXMuZXhpdCgx
KQoKICAgICAgICBjdXJzb3IgPSBjb25uZWN0aW9uLmN1cnNvcigpCiAgICAgICAgY3Vyc29yLmV4
ZWN1dGUobGlzdF90YWJsZXNfcXVlcnkpCiAgICAgICAgZXhpc3RpbmdfdGFibGVzID0gW2FbMF0u
bG93ZXIoKSBmb3IgYSBpbiBjdXJzb3IuZmV0Y2hhbGwoKV0KICAgICAgICBmb3IgdGFibGUgaW4g
W2EgZm9yIGEgaW4gREFUQUJBU0VfVEFCTEVTIGlmCiAgICAgICAgICAgICAgICAgICAgICBhWyd0
YWJsZV9uYW1lJ10ubG93ZXIoKSBub3QgaW4gZXhpc3RpbmdfdGFibGVzXTogICMgY3JlYXRlIG1p
c3NpbmcgdGFibGVzCiAgICAgICAgICAgIGlubmVyID0gJywgJy5qb2luKFsnICcuam9pbigKICAg
ICAgICAgICAgICAgIFsobGFtYmRhIHg6IHggaWYgaXNpbnN0YW5jZSh4LCBzdHIpIGVsc2UgJ05V
TEwnIGlmIHggZWxzZSAnTk9UIE5VTEwnKShhW2JdKSBmb3IgYiBpbgogICAgICAgICAgICAgICAg
IFsnbmFtZScsICdkYXRhdHlwZScsICdudWxsYWJsZSddXSkgZm9yIGEgaW4gdGFibGVbJ2NvbHVt
bnMnXV0pCiAgICAgICAgICAgIGN1cnNvci5leGVjdXRlKHF1ZXJ5X2J1aWxkKCdDUkVBVEUgVEFC
TEUge30gKHt9KScuZm9ybWF0KHRhYmxlWyd0YWJsZV9uYW1lJ10ubG93ZXIoKSwgaW5uZXIpKSkK
ICAgICAgICAgICAgZm9yIGRhdGEgaW4gREFUQUJBU0VfQ09OVEVOVFNbdGFibGVbJ3RhYmxlX25h
bWUnXV06ICAjIGluc2VydCBkYXRhIGludG8gdGFibGUKICAgICAgICAgICAgICAgIGNvbHVtbnMg
PSAnLCAnLmpvaW4oW2FbJ25hbWUnXSBmb3IgYSBpbiB0YWJsZVsnY29sdW1ucyddXSkKICAgICAg
ICAgICAgICAgIHZhbHVlcyA9ICcsICcuam9pbigKICAgICAgICAgICAgICAgICAgICBbKGxhbWJk
YSB4OiBzdHIoeCkgaWYgaXNpbnN0YW5jZSh4LCBpbnQpIGVsc2UgIid7fSciLmZvcm1hdCh4LnJl
cGxhY2UoIiciLCAiXFwnIikpKShhKSBmb3IgYSBpbgogICAgICAgICAgICAgICAgICAgICBkYXRh
XSkKICAgICAgICAgICAgICAgIGN1cnNvci5leGVjdXRlKAogICAgICAgICAgICAgICAgICAgIHF1
ZXJ5X2J1aWxkKCdJTlNFUlQgSU5UTyB7fSAoe30pIFZBTFVFUyAoe30pJy5mb3JtYXQodGFibGVb
J3RhYmxlX25hbWUnXSwgY29sdW1ucywgdmFsdWVzKSkpCiAgICBleGNlcHQgRXhjZXB0aW9uIGFz
IGU6CiAgICAgICAgcHJpbnQoJ0FuIGVycm9yIG9jdXJlZCBkdXJpbmcgZGF0YWJhc2UgY29ubmVj
dGlvbi9zZXR1cDoge30nLmZvcm1hdChlKSkKICAgICAgICBzeXMuZXhpdCgxKQoKICAgIGFwcC5y
dW4oaG9zdD1hcmdzLmFkZHJlc3MsIHBvcnQ9YXJncy5wb3J0KQo=
 
Viewed 1097 times, submitted by Guest.