using System.IO.Compression;
static string Decompress(string inputStr)
StringBuilder result = new StringBuilder();
string decompressedString = string.Empty;
byte[] compressedBytes = new byte[0];
compressedBytes = Convert.FromBase64String(inputStr);
using (var compressedStream = new MemoryStream(compressedBytes))
using (var decompressedStream = new MemoryStream())
using (var gzip = new GZipStream(compressedStream, CompressionMode.Decompress))
byte[] buffer = new byte[4096];
while ((read = gzip.Read(buffer, 0, buffer.Length)) > 0)
decompressedStream.Write(buffer, 0, read);
byte[] decompressedBytes = decompressedStream.ToArray();
decompressedString = Encoding.UTF8.GetString(decompressedBytes);
result.Append(decompressedString);
return result.ToString();
public static void Main(string[] args)
var inputStr = "H4sIAAAAAAAACu2ZTW+bQBCG75X6H5BP6SHLLt9ElIvTqJGaxG0cH3rbOpMaFYyzLK2cX98FY8eYdVVVY7dUuXlfhneWeTw2A9EYCjkEIZOHZMolxK9fGUZUiZfzh1xkXCb5vBaVfLMAwWUurnkGsZypjyGLzJbaRF5KyIb5PcSfbZeeUsaCyNxoTcwtiISn12X2BURMqe/7yqwlrtN+VwnS9BMUZSpjKUpQSVtaE1hte7xcQHxRzqfVxnkamRtxK+i8ulKLWrZJPZO5BnXPmHfG7FV0fbSJ/ljyNJHL4Qym35rULakJG4n8vqxTNlv3fZc5kdnRm/hhnmUwl3Fkrj81B949lsmiEupKRWZ7XcMxdXTqy1pVo1h7XalFkoEEcQW8KAVsJaoOb4mTPJX8KxgnkzeRqY0e3d4ZTdTbwcCmJBwMjGEphIpSgqtW5nP0UCQqbcKND/kPEOOZgGKWp/cq0CGBCr1bLNqyS6y2w9YmziHly5hRamRFa3erA7pTJjwtIXYJpYppR9+ccVOquqpv7YgXynm90lao67Uus/mrOv+bEBglro4Cs2sdGQNjxA9CJA4asx6D0PaCE+AzUFsMPBeJgcasxwx84ukoBMTHxxAQGvhIFLpePYZwSgm1dBgoPoQqF6VYzaBz+y9BEIaPQiVjnodEQmPWYxBUD6GGg00BC8Bha38h4LGE+XRpnLx/OnT5Q4/tuUdS3Y6PIPQDJAi7Tj1uAYtYWgQWsfEJqGSBhwVBY/b3OdjEOfLM5r7MbGgQjj6zBZThzWy7Zj3uhuoOyd7z53wAEvX9pY31GEPn1mMWR57dQiwMXa8eQzj67OY7mN2w49ZjEJR4e36YDtAOKpkXYA3RGrM+c3gZ3RBGtz8u//FHN4L1CKPr1eM2sIizZ3xzDzG+OT610Ma3jtlvcFi9mXt+Cbdab79c/QlPChT7bh0AAA==";
var result = Decompress( inputStr );
Console.Out.WriteLine(result);