internal static long GetRemainingUnusedBytes(GZipStream gz) { var deflateStream = gz.GetFieldOrProperty("deflateStream"); var buffer = deflateStream.GetFieldOrProperty("buffer"); var inflater = deflateStream.GetFieldOrProperty("inflater"); var input = inflater.GetFieldOrProperty("input"); return((int)input.GetFieldOrProperty("AvailableBytes")); }