diff --git a/tests/regression/config.c b/tests/regression/config.c
index 15713d7ebecb65d46ab6e8679a4e7b307347120c..4a792e9c6d6a7aba803a04a25882dfa132edafe7 100644
--- a/tests/regression/config.c
+++ b/tests/regression/config.c
@@ -13,7 +13,7 @@
 /* Define a config for each fast level we want to test with. */
 #define FAST_LEVEL(x)                                               \
     param_value_t const level_fast##x##_param_values[] = {          \
-        {.param = ZSTD_p_compressionLevel, .value = (unsigned)-x},  \
+        {.param = ZSTD_c_compressionLevel, .value = -x},            \
     };                                                              \
     config_t const level_fast##x = {                                \
         .name = "level -" #x,                                       \
@@ -28,23 +28,22 @@
     };
 
 /* Define a config for each level we want to test with. */
-#define LEVEL(x)                                                  \
-    param_value_t const level_##x##_param_values[] = {            \
-        {.param = ZSTD_p_compressionLevel, .value = (unsigned)x}, \
-    };                                                            \
-    config_t const level_##x = {                                  \
-        .name = "level " #x,                                      \
-        .cli_args = "-" #x,                                       \
-        .param_values = PARAM_VALUES(level_##x##_param_values),   \
-    };                                                            \
-    config_t const level_##x##_dict = {                           \
-        .name = "level " #x " with dict",                         \
-        .cli_args = "-" #x,                                       \
-        .param_values = PARAM_VALUES(level_##x##_param_values),   \
-        .use_dictionary = 1,                                      \
+#define LEVEL(x)                                                \
+    param_value_t const level_##x##_param_values[] = {          \
+        {.param = ZSTD_c_compressionLevel, .value = x},         \
+    };                                                          \
+    config_t const level_##x = {                                \
+        .name = "level " #x,                                    \
+        .cli_args = "-" #x,                                     \
+        .param_values = PARAM_VALUES(level_##x##_param_values), \
+    };                                                          \
+    config_t const level_##x##_dict = {                         \
+        .name = "level " #x " with dict",                       \
+        .cli_args = "-" #x,                                     \
+        .param_values = PARAM_VALUES(level_##x##_param_values), \
+        .use_dictionary = 1,                                    \
     };
 
-
 #define PARAM_VALUES(pv) \
     { .data = pv, .size = sizeof(pv) / sizeof((pv)[0]) }
 
@@ -56,7 +55,7 @@
 static config_t no_pledged_src_size = {
     .name = "no source size",
     .cli_args = "",
-    .param_values = {.data = NULL, .size = 0},
+    .param_values = PARAM_VALUES(level_0_param_values),
     .no_pledged_src_size = 1,
 };
 
@@ -82,8 +81,61 @@ int config_get_level(config_t const* config) {
     param_values_t const params = config->param_values;
     size_t i;
     for (size_t i = 0; i < params.size; ++i) {
-        if (params.data[i].param == ZSTD_p_compressionLevel)
-            return params.data[i].value;
+        if (params.data[i].param == ZSTD_c_compressionLevel)
+            return (int)params.data[i].value;
     }
     return CONFIG_NO_LEVEL;
 }
+
+ZSTD_parameters config_get_zstd_params(
+    config_t const* config,
+    uint64_t srcSize,
+    size_t dictSize) {
+    ZSTD_parameters zparams = {};
+    param_values_t const params = config->param_values;
+    int level = config_get_level(config);
+    if (level == CONFIG_NO_LEVEL)
+        level = 3;
+    zparams = ZSTD_getParams(
+        level,
+        config->no_pledged_src_size ? ZSTD_CONTENTSIZE_UNKNOWN : srcSize,
+        dictSize);
+    for (size_t i = 0; i < params.size; ++i) {
+        unsigned const value = params.data[i].value;
+        switch (params.data[i].param) {
+            case ZSTD_c_contentSizeFlag:
+                zparams.fParams.contentSizeFlag = value;
+                break;
+            case ZSTD_c_checksumFlag:
+                zparams.fParams.checksumFlag = value;
+                break;
+            case ZSTD_c_dictIDFlag:
+                zparams.fParams.noDictIDFlag = !value;
+                break;
+            case ZSTD_c_windowLog:
+                zparams.cParams.windowLog = value;
+                break;
+            case ZSTD_c_chainLog:
+                zparams.cParams.chainLog = value;
+                break;
+            case ZSTD_c_hashLog:
+                zparams.cParams.hashLog = value;
+                break;
+            case ZSTD_c_searchLog:
+                zparams.cParams.searchLog = value;
+                break;
+            case ZSTD_c_minMatch:
+                zparams.cParams.minMatch = value;
+                break;
+            case ZSTD_c_targetLength:
+                zparams.cParams.targetLength = value;
+                break;
+            case ZSTD_c_compressionStrategy:
+                zparams.cParams.strategy = (ZSTD_strategy)value;
+                break;
+            default:
+                break;
+        }
+    }
+    return zparams;
+}
diff --git a/tests/regression/config.h b/tests/regression/config.h
index 164f48b55e2a70335bd075c26149bad7e2749a8f..3cd0308a0987d9eca2047971d9386b2ab0b1c55b 100644
--- a/tests/regression/config.h
+++ b/tests/regression/config.h
@@ -20,7 +20,7 @@
 
 typedef struct {
     ZSTD_cParameter param;
-    unsigned value;
+    int value;
 } param_value_t;
 
 typedef struct {
@@ -70,6 +70,14 @@ int config_skip_data(config_t const* config, data_t const* data);
  */
 int config_get_level(config_t const* config);
 
+/**
+ * Returns the compression parameters specified by the config.
+ */
+ZSTD_parameters config_get_zstd_params(
+    config_t const* config,
+    uint64_t srcSize,
+    size_t dictSize);
+
 /**
  * The NULL-terminated list of configs.
  */
diff --git a/tests/regression/method.c b/tests/regression/method.c
index 3fedcbe78c48983a04448c8042d1f228f357cc77..73d8bbf591969ba95eb7947b0099868a26ed792a 100644
--- a/tests/regression/method.c
+++ b/tests/regression/method.c
@@ -15,6 +15,8 @@
 
 #include <zstd.h>
 
+#define MIN(x, y) ((x) < (y) ? (x) : (y))
+
 static char const* g_zstdcli = NULL;
 
 void method_set_zstdcli(char const* zstdcli) {
@@ -35,6 +37,7 @@ void method_set_zstdcli(char const* zstdcli) {
 typedef struct {
     method_state_t base;
     data_buffers_t inputs; /**< The input buffer for each file. */
+    data_buffer_t dictionary; /**< The dictionary. */
     data_buffer_t compressed; /**< The compressed data buffer. */
     data_buffer_t decompressed; /**< The decompressed data buffer. */
 } buffer_state_t;
@@ -54,6 +57,7 @@ static method_state_t* buffer_state_create(data_t const* data) {
         return NULL;
     state->base.data = data;
     state->inputs = data_buffers_get(data);
+    state->dictionary = data_buffer_get_dict(data);
     size_t const max_size = buffers_max_size(state->inputs);
     state->compressed = data_buffer_create(ZSTD_compressBound(max_size));
     state->decompressed = data_buffer_create(max_size);
@@ -67,7 +71,9 @@ static void buffer_state_destroy(method_state_t* base) {
     free(state);
 }
 
-static int buffer_state_bad(buffer_state_t const* state) {
+static int buffer_state_bad(
+    buffer_state_t const* state,
+    config_t const* config) {
     if (state == NULL) {
         fprintf(stderr, "buffer_state_t is NULL\n");
         return 1;
@@ -77,13 +83,17 @@ static int buffer_state_bad(buffer_state_t const* state) {
         fprintf(stderr, "buffer state allocation failure\n");
         return 1;
     }
+    if (config->use_dictionary && state->dictionary.data == NULL) {
+        fprintf(stderr, "dictionary loading failed\n");
+        return 1;
+    }
     return 0;
 }
 
 static result_t simple_compress(method_state_t* base, config_t const* config) {
     buffer_state_t* state = container_of(base, buffer_state_t, base);
 
-    if (buffer_state_bad(state))
+    if (buffer_state_bad(state, config))
         return result_error(result_error_system_error);
 
     /* Keep the tests short by skipping directories, since behavior shouldn't
@@ -132,10 +142,10 @@ static result_t compress_cctx_compress(
     config_t const* config) {
     buffer_state_t* state = container_of(base, buffer_state_t, base);
 
-    if (buffer_state_bad(state))
+    if (buffer_state_bad(state, config))
         return result_error(result_error_system_error);
 
-    if (config->use_dictionary || config->no_pledged_src_size)
+    if (config->no_pledged_src_size)
         return result_error(result_error_skip);
 
     if (base->data->type != data_type_dir)
@@ -146,8 +156,9 @@ static result_t compress_cctx_compress(
         return result_error(result_error_skip);
 
     ZSTD_CCtx* cctx = ZSTD_createCCtx();
-    if (cctx == NULL) {
-        fprintf(stderr, "ZSTD_createCCtx() failed\n");
+    ZSTD_DCtx* dctx = ZSTD_createDCtx();
+    if (cctx == NULL || dctx == NULL) {
+        fprintf(stderr, "context creation failed\n");
         return result_error(result_error_system_error);
     }
 
@@ -156,23 +167,45 @@ static result_t compress_cctx_compress(
     for (size_t i = 0; i < state->inputs.size; ++i) {
         data_buffer_t const input = state->inputs.buffers[i];
 
-        state->compressed.size = ZSTD_compressCCtx(
-            cctx,
-            state->compressed.data,
-            state->compressed.capacity,
-            input.data,
-            input.size,
-            level);
+        if (config->use_dictionary)
+            state->compressed.size = ZSTD_compress_usingDict(
+                cctx,
+                state->compressed.data,
+                state->compressed.capacity,
+                input.data,
+                input.size,
+                state->dictionary.data,
+                state->dictionary.size,
+                level);
+        else
+            state->compressed.size = ZSTD_compressCCtx(
+                cctx,
+                state->compressed.data,
+                state->compressed.capacity,
+                input.data,
+                input.size,
+                level);
         if (ZSTD_isError(state->compressed.size)) {
             result = result_error(result_error_compression_error);
             goto out;
         }
 
-        state->decompressed.size = ZSTD_decompress(
-            state->decompressed.data,
-            state->decompressed.capacity,
-            state->compressed.data,
-            state->compressed.size);
+        if (config->use_dictionary)
+            state->decompressed.size = ZSTD_decompress_usingDict(
+                dctx,
+                state->decompressed.data,
+                state->decompressed.capacity,
+                state->compressed.data,
+                state->compressed.size,
+                state->dictionary.data,
+                state->dictionary.size);
+        else
+            state->decompressed.size = ZSTD_decompressDCtx(
+                dctx,
+                state->decompressed.data,
+                state->decompressed.capacity,
+                state->compressed.data,
+                state->compressed.size);
         if (ZSTD_isError(state->decompressed.size)) {
             result = result_error(result_error_decompression_error);
             goto out;
@@ -188,6 +221,7 @@ static result_t compress_cctx_compress(
     result = result_data(data);
 out:
     ZSTD_freeCCtx(cctx);
+    ZSTD_freeDCtx(dctx);
     return result;
 }
 
@@ -204,9 +238,7 @@ static void method_state_destroy(method_state_t* state) {
     free(state);
 }
 
-static result_t cli_compress(
-    method_state_t* state,
-    config_t const* config) {
+static result_t cli_compress(method_state_t* state, config_t const* config) {
     if (config->cli_args == NULL)
         return result_error(result_error_skip);
 
@@ -257,20 +289,249 @@ static result_t cli_compress(
     return result_data(data);
 }
 
+static int advanced_config(
+    ZSTD_CCtx* cctx,
+    buffer_state_t* state,
+    config_t const* config) {
+    for (size_t p = 0; p < config->param_values.size; ++p) {
+        param_value_t const pv = config->param_values.data[p];
+        if (ZSTD_isError(ZSTD_CCtx_setParameter(cctx, pv.param, pv.value))) {
+            return 1;
+        }
+    }
+    if (config->use_dictionary) {
+        if (ZSTD_isError(ZSTD_CCtx_loadDictionary(
+                cctx, state->dictionary.data, state->dictionary.size))) {
+            return 1;
+        }
+    }
+    return 0;
+}
+
+static result_t advanced_one_pass_compress_output_adjustment(
+    method_state_t* base,
+    config_t const* config,
+    size_t const subtract) {
+    buffer_state_t* state = container_of(base, buffer_state_t, base);
+
+    if (buffer_state_bad(state, config))
+        return result_error(result_error_system_error);
+
+    ZSTD_CCtx* cctx = ZSTD_createCCtx();
+    result_t result;
+
+    if (!cctx || advanced_config(cctx, state, config)) {
+        result = result_error(result_error_compression_error);
+        goto out;
+    }
+
+    result_data_t data = {.total_size = 0};
+    for (size_t i = 0; i < state->inputs.size; ++i) {
+        data_buffer_t const input = state->inputs.buffers[i];
+
+        if (!config->no_pledged_src_size) {
+            if (ZSTD_isError(ZSTD_CCtx_setPledgedSrcSize(cctx, input.size))) {
+                result = result_error(result_error_compression_error);
+                goto out;
+            }
+        }
+        size_t const size = ZSTD_compress2(
+            cctx,
+            state->compressed.data,
+            ZSTD_compressBound(input.size) - subtract,
+            input.data,
+            input.size);
+        if (ZSTD_isError(size)) {
+            result = result_error(result_error_compression_error);
+            goto out;
+        }
+        data.total_size += size;
+    }
+
+    result = result_data(data);
+out:
+    ZSTD_freeCCtx(cctx);
+    return result;
+}
+
+static result_t advanced_one_pass_compress(
+    method_state_t* base,
+    config_t const* config) {
+  return advanced_one_pass_compress_output_adjustment(base, config, 0);
+}
+
+static result_t advanced_one_pass_compress_small_output(
+    method_state_t* base,
+    config_t const* config) {
+  return advanced_one_pass_compress_output_adjustment(base, config, 1);
+}
+
+static result_t advanced_streaming_compress(
+    method_state_t* base,
+    config_t const* config) {
+    buffer_state_t* state = container_of(base, buffer_state_t, base);
+
+    if (buffer_state_bad(state, config))
+        return result_error(result_error_system_error);
+
+    ZSTD_CCtx* cctx = ZSTD_createCCtx();
+    result_t result;
+
+    if (!cctx || advanced_config(cctx, state, config)) {
+        result = result_error(result_error_compression_error);
+        goto out;
+    }
+
+    result_data_t data = {.total_size = 0};
+    for (size_t i = 0; i < state->inputs.size; ++i) {
+        data_buffer_t input = state->inputs.buffers[i];
+
+        if (!config->no_pledged_src_size) {
+            if (ZSTD_isError(ZSTD_CCtx_setPledgedSrcSize(cctx, input.size))) {
+                result = result_error(result_error_compression_error);
+                goto out;
+            }
+        }
+
+        while (input.size > 0) {
+            ZSTD_inBuffer in = {input.data, MIN(input.size, 4096)};
+            input.data += in.size;
+            input.size -= in.size;
+            ZSTD_EndDirective const op =
+                input.size > 0 ? ZSTD_e_continue : ZSTD_e_end;
+            size_t ret = 0;
+            while (in.pos < in.size || (op == ZSTD_e_end && ret != 0)) {
+                ZSTD_outBuffer out = {state->compressed.data,
+                                      MIN(state->compressed.capacity, 1024)};
+                ret = ZSTD_compressStream2(cctx, &out, &in, op);
+                if (ZSTD_isError(ret)) {
+                    result = result_error(result_error_compression_error);
+                    goto out;
+                }
+                data.total_size += out.pos;
+            }
+        }
+    }
+
+    result = result_data(data);
+out:
+    ZSTD_freeCCtx(cctx);
+    return result;
+}
+
+static result_t old_streaming_compress(
+    method_state_t* base,
+    config_t const* config) {
+    buffer_state_t* state = container_of(base, buffer_state_t, base);
+
+    if (buffer_state_bad(state, config))
+        return result_error(result_error_system_error);
+
+    int const level = config_get_level(config);
+    if (level == CONFIG_NO_LEVEL)
+        return result_error(result_error_skip);
+
+    ZSTD_CStream* zcs = ZSTD_createCStream();
+    result_t result;
+    if (zcs == NULL) {
+        result = result_error(result_error_compression_error);
+        goto out;
+    }
+    size_t zret;
+    if (config->use_dictionary) {
+        zret = ZSTD_initCStream_usingDict(
+            zcs, state->dictionary.data, state->dictionary.size, level);
+    } else {
+        zret = ZSTD_initCStream(zcs, level);
+    }
+    if (ZSTD_isError(zret)) {
+        result = result_error(result_error_compression_error);
+        goto out;
+    }
+
+    result_data_t data = {.total_size = 0};
+    for (size_t i = 0; i < state->inputs.size; ++i) {
+        data_buffer_t input = state->inputs.buffers[i];
+        zret = ZSTD_resetCStream(
+            zcs,
+            config->no_pledged_src_size ? ZSTD_CONTENTSIZE_UNKNOWN
+                                        : input.size);
+        if (ZSTD_isError(zret)) {
+            result = result_error(result_error_compression_error);
+            goto out;
+        }
+
+        while (input.size > 0) {
+            ZSTD_inBuffer in = {input.data, MIN(input.size, 4096)};
+            input.data += in.size;
+            input.size -= in.size;
+            ZSTD_EndDirective const op =
+                input.size > 0 ? ZSTD_e_continue : ZSTD_e_end;
+            zret = 0;
+            while (in.pos < in.size || (op == ZSTD_e_end && zret != 0)) {
+                ZSTD_outBuffer out = {state->compressed.data,
+                                      MIN(state->compressed.capacity, 1024)};
+                if (op == ZSTD_e_continue || in.pos < in.size)
+                    zret = ZSTD_compressStream(zcs, &out, &in);
+                else
+                    zret = ZSTD_endStream(zcs, &out);
+                if (ZSTD_isError(zret)) {
+                    result = result_error(result_error_compression_error);
+                    goto out;
+                }
+                data.total_size += out.pos;
+            }
+        }
+    }
+
+    result = result_data(data);
+out:
+    ZSTD_freeCStream(zcs);
+    return result;
+}
+
 method_t const simple = {
-    .name = "ZSTD_compress",
+    .name = "compress simple",
     .create = buffer_state_create,
     .compress = simple_compress,
     .destroy = buffer_state_destroy,
 };
 
 method_t const compress_cctx = {
-    .name = "ZSTD_compressCCtx",
+    .name = "compress cctx",
     .create = buffer_state_create,
     .compress = compress_cctx_compress,
     .destroy = buffer_state_destroy,
 };
 
+method_t const advanced_one_pass = {
+    .name = "advanced one pass",
+    .create = buffer_state_create,
+    .compress = advanced_one_pass_compress,
+    .destroy = buffer_state_destroy,
+};
+
+method_t const advanced_one_pass_small_out = {
+    .name = "advanced one pass small out",
+    .create = buffer_state_create,
+    .compress = advanced_one_pass_compress,
+    .destroy = buffer_state_destroy,
+};
+
+method_t const advanced_streaming = {
+    .name = "advanced streaming",
+    .create = buffer_state_create,
+    .compress = advanced_streaming_compress,
+    .destroy = buffer_state_destroy,
+};
+
+method_t const old_streaming = {
+    .name = "old streaming",
+    .create = buffer_state_create,
+    .compress = old_streaming_compress,
+    .destroy = buffer_state_destroy,
+};
+
 method_t const cli = {
     .name = "zstdcli",
     .create = method_state_create,
@@ -282,6 +543,10 @@ static method_t const* g_methods[] = {
     &simple,
     &compress_cctx,
     &cli,
+    &advanced_one_pass,
+    &advanced_one_pass_small_out,
+    &advanced_streaming,
+    &old_streaming,
     NULL,
 };
 
diff --git a/tests/regression/results.csv b/tests/regression/results.csv
index d9f1873cebe3581a268f5e07b67519ea87ef1b48..3e9d791a53d4355353ed2015a96245b4e08bf634 100644
--- a/tests/regression/results.csv
+++ b/tests/regression/results.csv
@@ -1,101 +1,350 @@
-Data,               Config,             Method,             Total compressed size
-This line is intentionally added to see how the nightly job reports failures
-silesia.tar,        level -5,           ZSTD_compress,      7160438
-silesia.tar,        level -3,           ZSTD_compress,      6789024
-silesia.tar,        level -1,           ZSTD_compress,      6195462
-silesia.tar,        level 0,            ZSTD_compress,      4875071
-silesia.tar,        level 1,            ZSTD_compress,      5339697
-silesia.tar,        level 3,            ZSTD_compress,      4875071
-silesia.tar,        level 4,            ZSTD_compress,      4813104
-silesia.tar,        level 5,            ZSTD_compress,      4726961
-silesia.tar,        level 6,            ZSTD_compress,      4654401
-silesia.tar,        level 7,            ZSTD_compress,      4591933
-silesia.tar,        level 9,            ZSTD_compress,      4554098
-silesia.tar,        level 13,           ZSTD_compress,      4503496
-silesia.tar,        level 16,           ZSTD_compress,      4387233
-silesia.tar,        level 19,           ZSTD_compress,      4283123
-silesia,            level -5,           ZSTD_compressCCtx,  7152294
-silesia,            level -3,           ZSTD_compressCCtx,  6789969
-silesia,            level -1,           ZSTD_compressCCtx,  6191548
-silesia,            level 0,            ZSTD_compressCCtx,  4862377
-silesia,            level 1,            ZSTD_compressCCtx,  5318036
-silesia,            level 3,            ZSTD_compressCCtx,  4862377
-silesia,            level 4,            ZSTD_compressCCtx,  4800629
-silesia,            level 5,            ZSTD_compressCCtx,  4715005
-silesia,            level 6,            ZSTD_compressCCtx,  4644055
-silesia,            level 7,            ZSTD_compressCCtx,  4581559
-silesia,            level 9,            ZSTD_compressCCtx,  4543862
-silesia,            level 13,           ZSTD_compressCCtx,  4493931
-silesia,            level 16,           ZSTD_compressCCtx,  4381885
-silesia,            level 19,           ZSTD_compressCCtx,  4296899
-github,             level -5,           ZSTD_compressCCtx,  232744
-github,             level -3,           ZSTD_compressCCtx,  220611
-github,             level -1,           ZSTD_compressCCtx,  176575
-github,             level 0,            ZSTD_compressCCtx,  136397
-github,             level 1,            ZSTD_compressCCtx,  143457
-github,             level 3,            ZSTD_compressCCtx,  136397
-github,             level 4,            ZSTD_compressCCtx,  136144
-github,             level 5,            ZSTD_compressCCtx,  135106
-github,             level 6,            ZSTD_compressCCtx,  135108
-github,             level 7,            ZSTD_compressCCtx,  135108
-github,             level 9,            ZSTD_compressCCtx,  135108
-github,             level 13,           ZSTD_compressCCtx,  133741
-github,             level 16,           ZSTD_compressCCtx,  133741
-github,             level 19,           ZSTD_compressCCtx,  133717
-silesia,            level -5,           zstdcli,            7152342
-silesia,            level -3,           zstdcli,            6790021
-silesia,            level -1,           zstdcli,            6191597
-silesia,            level 0,            zstdcli,            4862425
-silesia,            level 1,            zstdcli,            5318084
-silesia,            level 3,            zstdcli,            4862425
-silesia,            level 4,            zstdcli,            4800677
-silesia,            level 5,            zstdcli,            4715053
-silesia,            level 6,            zstdcli,            4644103
-silesia,            level 7,            zstdcli,            4581607
-silesia,            level 9,            zstdcli,            4543910
-silesia,            level 13,           zstdcli,            4493979
-silesia,            level 16,           zstdcli,            4381933
-silesia,            level 19,           zstdcli,            4296947
-silesia.tar,        level -5,           zstdcli,            7159586
-silesia.tar,        level -3,           zstdcli,            6791018
-silesia.tar,        level -1,           zstdcli,            6196283
-silesia.tar,        level 0,            zstdcli,            4876730
-silesia.tar,        level 1,            zstdcli,            5340312
-silesia.tar,        level 3,            zstdcli,            4876730
-silesia.tar,        level 4,            zstdcli,            4817723
-silesia.tar,        level 5,            zstdcli,            4730389
-silesia.tar,        level 6,            zstdcli,            4655708
-silesia.tar,        level 7,            zstdcli,            4593407
-silesia.tar,        level 9,            zstdcli,            4556135
-silesia.tar,        level 13,           zstdcli,            4503500
-silesia.tar,        level 16,           zstdcli,            4387237
-silesia.tar,        level 19,           zstdcli,            4283127
-silesia.tar,        no source size,     zstdcli,            4876726
-github,             level -5,           zstdcli,            234744
-github,             level -5 with dict, zstdcli,            47528
-github,             level -3,           zstdcli,            222611
-github,             level -3 with dict, zstdcli,            46394
-github,             level -1,           zstdcli,            178575
-github,             level -1 with dict, zstdcli,            43401
-github,             level 0,            zstdcli,            138397
-github,             level 0 with dict,  zstdcli,            40316
-github,             level 1,            zstdcli,            145457
-github,             level 1 with dict,  zstdcli,            43242
-github,             level 3,            zstdcli,            138397
-github,             level 3 with dict,  zstdcli,            40316
-github,             level 4,            zstdcli,            138144
-github,             level 4 with dict,  zstdcli,            40292
-github,             level 5,            zstdcli,            137106
-github,             level 5 with dict,  zstdcli,            40938
-github,             level 6,            zstdcli,            137108
-github,             level 6 with dict,  zstdcli,            40632
-github,             level 7,            zstdcli,            137108
-github,             level 7 with dict,  zstdcli,            40766
-github,             level 9,            zstdcli,            137108
-github,             level 9 with dict,  zstdcli,            41326
-github,             level 13,           zstdcli,            135741
-github,             level 13 with dict, zstdcli,            41670
-github,             level 16,           zstdcli,            135741
-github,             level 16 with dict, zstdcli,            39940
-github,             level 19,           zstdcli,            135717
-github,             level 19 with dict, zstdcli,            39576
+Data,                        Config,                      Method,                      Total compressed size
+silesia.tar,                 level -5,                    compress simple,             7160438
+silesia.tar,                 level -3,                    compress simple,             6789024
+silesia.tar,                 level -1,                    compress simple,             6195462
+silesia.tar,                 level 0,                     compress simple,             4875071
+silesia.tar,                 level 1,                     compress simple,             5339697
+silesia.tar,                 level 3,                     compress simple,             4875071
+silesia.tar,                 level 4,                     compress simple,             4813104
+silesia.tar,                 level 5,                     compress simple,             4726961
+silesia.tar,                 level 6,                     compress simple,             4654401
+silesia.tar,                 level 7,                     compress simple,             4591933
+silesia.tar,                 level 9,                     compress simple,             4554098
+silesia.tar,                 level 13,                    compress simple,             4503496
+silesia.tar,                 level 16,                    compress simple,             4387233
+silesia.tar,                 level 19,                    compress simple,             4283123
+silesia,                     level -5,                    compress cctx,               7152294
+silesia,                     level -3,                    compress cctx,               6789969
+silesia,                     level -1,                    compress cctx,               6191548
+silesia,                     level 0,                     compress cctx,               4862377
+silesia,                     level 1,                     compress cctx,               5318036
+silesia,                     level 3,                     compress cctx,               4862377
+silesia,                     level 4,                     compress cctx,               4800629
+silesia,                     level 5,                     compress cctx,               4715005
+silesia,                     level 6,                     compress cctx,               4644055
+silesia,                     level 7,                     compress cctx,               4581559
+silesia,                     level 9,                     compress cctx,               4543862
+silesia,                     level 13,                    compress cctx,               4493931
+silesia,                     level 16,                    compress cctx,               4381885
+silesia,                     level 19,                    compress cctx,               4296899
+github,                      level -5,                    compress cctx,               232744
+github,                      level -5 with dict,          compress cctx,               45704
+github,                      level -3,                    compress cctx,               220611
+github,                      level -3 with dict,          compress cctx,               44510
+github,                      level -1,                    compress cctx,               176575
+github,                      level -1 with dict,          compress cctx,               41586
+github,                      level 0,                     compress cctx,               136397
+github,                      level 0 with dict,           compress cctx,               38700
+github,                      level 1,                     compress cctx,               143457
+github,                      level 1 with dict,           compress cctx,               41538
+github,                      level 3,                     compress cctx,               136397
+github,                      level 3 with dict,           compress cctx,               38700
+github,                      level 4,                     compress cctx,               136144
+github,                      level 4 with dict,           compress cctx,               38639
+github,                      level 5,                     compress cctx,               135106
+github,                      level 5 with dict,           compress cctx,               38934
+github,                      level 6,                     compress cctx,               135108
+github,                      level 6 with dict,           compress cctx,               38628
+github,                      level 7,                     compress cctx,               135108
+github,                      level 7 with dict,           compress cctx,               38741
+github,                      level 9,                     compress cctx,               135108
+github,                      level 9 with dict,           compress cctx,               39335
+github,                      level 13,                    compress cctx,               133741
+github,                      level 13 with dict,          compress cctx,               39670
+github,                      level 16,                    compress cctx,               133741
+github,                      level 16 with dict,          compress cctx,               37928
+github,                      level 19,                    compress cctx,               133717
+github,                      level 19 with dict,          compress cctx,               37567
+silesia,                     level -5,                    zstdcli,                     7152342
+silesia,                     level -3,                    zstdcli,                     6790021
+silesia,                     level -1,                    zstdcli,                     6191597
+silesia,                     level 0,                     zstdcli,                     4862425
+silesia,                     level 1,                     zstdcli,                     5318084
+silesia,                     level 3,                     zstdcli,                     4862425
+silesia,                     level 4,                     zstdcli,                     4800677
+silesia,                     level 5,                     zstdcli,                     4715053
+silesia,                     level 6,                     zstdcli,                     4644103
+silesia,                     level 7,                     zstdcli,                     4581607
+silesia,                     level 9,                     zstdcli,                     4543910
+silesia,                     level 13,                    zstdcli,                     4493979
+silesia,                     level 16,                    zstdcli,                     4381933
+silesia,                     level 19,                    zstdcli,                     4296947
+silesia.tar,                 level -5,                    zstdcli,                     7159586
+silesia.tar,                 level -3,                    zstdcli,                     6791018
+silesia.tar,                 level -1,                    zstdcli,                     6196283
+silesia.tar,                 level 0,                     zstdcli,                     4876730
+silesia.tar,                 level 1,                     zstdcli,                     5340312
+silesia.tar,                 level 3,                     zstdcli,                     4876730
+silesia.tar,                 level 4,                     zstdcli,                     4817723
+silesia.tar,                 level 5,                     zstdcli,                     4730389
+silesia.tar,                 level 6,                     zstdcli,                     4655708
+silesia.tar,                 level 7,                     zstdcli,                     4593407
+silesia.tar,                 level 9,                     zstdcli,                     4556135
+silesia.tar,                 level 13,                    zstdcli,                     4503500
+silesia.tar,                 level 16,                    zstdcli,                     4387237
+silesia.tar,                 level 19,                    zstdcli,                     4283127
+silesia.tar,                 no source size,              zstdcli,                     4876726
+github,                      level -5,                    zstdcli,                     234744
+github,                      level -5 with dict,          zstdcli,                     47528
+github,                      level -3,                    zstdcli,                     222611
+github,                      level -3 with dict,          zstdcli,                     46394
+github,                      level -1,                    zstdcli,                     178575
+github,                      level -1 with dict,          zstdcli,                     43401
+github,                      level 0,                     zstdcli,                     138397
+github,                      level 0 with dict,           zstdcli,                     40316
+github,                      level 1,                     zstdcli,                     145457
+github,                      level 1 with dict,           zstdcli,                     43242
+github,                      level 3,                     zstdcli,                     138397
+github,                      level 3 with dict,           zstdcli,                     40316
+github,                      level 4,                     zstdcli,                     138144
+github,                      level 4 with dict,           zstdcli,                     40292
+github,                      level 5,                     zstdcli,                     137106
+github,                      level 5 with dict,           zstdcli,                     40938
+github,                      level 6,                     zstdcli,                     137108
+github,                      level 6 with dict,           zstdcli,                     40632
+github,                      level 7,                     zstdcli,                     137108
+github,                      level 7 with dict,           zstdcli,                     40766
+github,                      level 9,                     zstdcli,                     137108
+github,                      level 9 with dict,           zstdcli,                     41326
+github,                      level 13,                    zstdcli,                     135741
+github,                      level 13 with dict,          zstdcli,                     41670
+github,                      level 16,                    zstdcli,                     135741
+github,                      level 16 with dict,          zstdcli,                     39940
+github,                      level 19,                    zstdcli,                     135717
+github,                      level 19 with dict,          zstdcli,                     39576
+silesia,                     level -5,                    advanced one pass,           7152294
+silesia,                     level -3,                    advanced one pass,           6789969
+silesia,                     level -1,                    advanced one pass,           6191548
+silesia,                     level 0,                     advanced one pass,           4862377
+silesia,                     level 1,                     advanced one pass,           5318036
+silesia,                     level 3,                     advanced one pass,           4862377
+silesia,                     level 4,                     advanced one pass,           4800629
+silesia,                     level 5,                     advanced one pass,           4715005
+silesia,                     level 6,                     advanced one pass,           4644055
+silesia,                     level 7,                     advanced one pass,           4581559
+silesia,                     level 9,                     advanced one pass,           4543862
+silesia,                     level 13,                    advanced one pass,           4493931
+silesia,                     level 16,                    advanced one pass,           4381885
+silesia,                     level 19,                    advanced one pass,           4296899
+silesia,                     no source size,              advanced one pass,           4862377
+silesia.tar,                 level -5,                    advanced one pass,           7160438
+silesia.tar,                 level -3,                    advanced one pass,           6789024
+silesia.tar,                 level -1,                    advanced one pass,           6195462
+silesia.tar,                 level 0,                     advanced one pass,           4875071
+silesia.tar,                 level 1,                     advanced one pass,           5339697
+silesia.tar,                 level 3,                     advanced one pass,           4875071
+silesia.tar,                 level 4,                     advanced one pass,           4813104
+silesia.tar,                 level 5,                     advanced one pass,           4726961
+silesia.tar,                 level 6,                     advanced one pass,           4654401
+silesia.tar,                 level 7,                     advanced one pass,           4591933
+silesia.tar,                 level 9,                     advanced one pass,           4554098
+silesia.tar,                 level 13,                    advanced one pass,           4503496
+silesia.tar,                 level 16,                    advanced one pass,           4387233
+silesia.tar,                 level 19,                    advanced one pass,           4283123
+silesia.tar,                 no source size,              advanced one pass,           4875071
+github,                      level -5,                    advanced one pass,           232744
+github,                      level -5 with dict,          advanced one pass,           45528
+github,                      level -3,                    advanced one pass,           220611
+github,                      level -3 with dict,          advanced one pass,           44394
+github,                      level -1,                    advanced one pass,           176575
+github,                      level -1 with dict,          advanced one pass,           41401
+github,                      level 0,                     advanced one pass,           136397
+github,                      level 0 with dict,           advanced one pass,           38316
+github,                      level 1,                     advanced one pass,           143457
+github,                      level 1 with dict,           advanced one pass,           41242
+github,                      level 3,                     advanced one pass,           136397
+github,                      level 3 with dict,           advanced one pass,           38316
+github,                      level 4,                     advanced one pass,           136144
+github,                      level 4 with dict,           advanced one pass,           38292
+github,                      level 5,                     advanced one pass,           135106
+github,                      level 5 with dict,           advanced one pass,           38938
+github,                      level 6,                     advanced one pass,           135108
+github,                      level 6 with dict,           advanced one pass,           38632
+github,                      level 7,                     advanced one pass,           135108
+github,                      level 7 with dict,           advanced one pass,           38766
+github,                      level 9,                     advanced one pass,           135108
+github,                      level 9 with dict,           advanced one pass,           39326
+github,                      level 13,                    advanced one pass,           133741
+github,                      level 13 with dict,          advanced one pass,           39670
+github,                      level 16,                    advanced one pass,           133741
+github,                      level 16 with dict,          advanced one pass,           37940
+github,                      level 19,                    advanced one pass,           133717
+github,                      level 19 with dict,          advanced one pass,           37576
+github,                      no source size,              advanced one pass,           136397
+silesia,                     level -5,                    advanced one pass small out, 7152294
+silesia,                     level -3,                    advanced one pass small out, 6789969
+silesia,                     level -1,                    advanced one pass small out, 6191548
+silesia,                     level 0,                     advanced one pass small out, 4862377
+silesia,                     level 1,                     advanced one pass small out, 5318036
+silesia,                     level 3,                     advanced one pass small out, 4862377
+silesia,                     level 4,                     advanced one pass small out, 4800629
+silesia,                     level 5,                     advanced one pass small out, 4715005
+silesia,                     level 6,                     advanced one pass small out, 4644055
+silesia,                     level 7,                     advanced one pass small out, 4581559
+silesia,                     level 9,                     advanced one pass small out, 4543862
+silesia,                     level 13,                    advanced one pass small out, 4493931
+silesia,                     level 16,                    advanced one pass small out, 4381885
+silesia,                     level 19,                    advanced one pass small out, 4296899
+silesia,                     no source size,              advanced one pass small out, 4862377
+silesia.tar,                 level -5,                    advanced one pass small out, 7160438
+silesia.tar,                 level -3,                    advanced one pass small out, 6789024
+silesia.tar,                 level -1,                    advanced one pass small out, 6195462
+silesia.tar,                 level 0,                     advanced one pass small out, 4875071
+silesia.tar,                 level 1,                     advanced one pass small out, 5339697
+silesia.tar,                 level 3,                     advanced one pass small out, 4875071
+silesia.tar,                 level 4,                     advanced one pass small out, 4813104
+silesia.tar,                 level 5,                     advanced one pass small out, 4726961
+silesia.tar,                 level 6,                     advanced one pass small out, 4654401
+silesia.tar,                 level 7,                     advanced one pass small out, 4591933
+silesia.tar,                 level 9,                     advanced one pass small out, 4554098
+silesia.tar,                 level 13,                    advanced one pass small out, 4503496
+silesia.tar,                 level 16,                    advanced one pass small out, 4387233
+silesia.tar,                 level 19,                    advanced one pass small out, 4283123
+silesia.tar,                 no source size,              advanced one pass small out, 4875071
+github,                      level -5,                    advanced one pass small out, 232744
+github,                      level -5 with dict,          advanced one pass small out, 45528
+github,                      level -3,                    advanced one pass small out, 220611
+github,                      level -3 with dict,          advanced one pass small out, 44394
+github,                      level -1,                    advanced one pass small out, 176575
+github,                      level -1 with dict,          advanced one pass small out, 41401
+github,                      level 0,                     advanced one pass small out, 136397
+github,                      level 0 with dict,           advanced one pass small out, 38316
+github,                      level 1,                     advanced one pass small out, 143457
+github,                      level 1 with dict,           advanced one pass small out, 41242
+github,                      level 3,                     advanced one pass small out, 136397
+github,                      level 3 with dict,           advanced one pass small out, 38316
+github,                      level 4,                     advanced one pass small out, 136144
+github,                      level 4 with dict,           advanced one pass small out, 38292
+github,                      level 5,                     advanced one pass small out, 135106
+github,                      level 5 with dict,           advanced one pass small out, 38938
+github,                      level 6,                     advanced one pass small out, 135108
+github,                      level 6 with dict,           advanced one pass small out, 38632
+github,                      level 7,                     advanced one pass small out, 135108
+github,                      level 7 with dict,           advanced one pass small out, 38766
+github,                      level 9,                     advanced one pass small out, 135108
+github,                      level 9 with dict,           advanced one pass small out, 39326
+github,                      level 13,                    advanced one pass small out, 133741
+github,                      level 13 with dict,          advanced one pass small out, 39670
+github,                      level 16,                    advanced one pass small out, 133741
+github,                      level 16 with dict,          advanced one pass small out, 37940
+github,                      level 19,                    advanced one pass small out, 133717
+github,                      level 19 with dict,          advanced one pass small out, 37576
+github,                      no source size,              advanced one pass small out, 136397
+silesia,                     level -5,                    advanced streaming,          7152294
+silesia,                     level -3,                    advanced streaming,          6789973
+silesia,                     level -1,                    advanced streaming,          6191549
+silesia,                     level 0,                     advanced streaming,          4862377
+silesia,                     level 1,                     advanced streaming,          5318036
+silesia,                     level 3,                     advanced streaming,          4862377
+silesia,                     level 4,                     advanced streaming,          4800629
+silesia,                     level 5,                     advanced streaming,          4715005
+silesia,                     level 6,                     advanced streaming,          4644055
+silesia,                     level 7,                     advanced streaming,          4581559
+silesia,                     level 9,                     advanced streaming,          4543862
+silesia,                     level 13,                    advanced streaming,          4493931
+silesia,                     level 16,                    advanced streaming,          4381885
+silesia,                     level 19,                    advanced streaming,          4296899
+silesia,                     no source size,              advanced streaming,          4862341
+silesia.tar,                 level -5,                    advanced streaming,          7160440
+silesia.tar,                 level -3,                    advanced streaming,          6789026
+silesia.tar,                 level -1,                    advanced streaming,          6195465
+silesia.tar,                 level 0,                     advanced streaming,          4875071
+silesia.tar,                 level 1,                     advanced streaming,          5339701
+silesia.tar,                 level 3,                     advanced streaming,          4875071
+silesia.tar,                 level 4,                     advanced streaming,          4813104
+silesia.tar,                 level 5,                     advanced streaming,          4726977
+silesia.tar,                 level 6,                     advanced streaming,          4654404
+silesia.tar,                 level 7,                     advanced streaming,          4591934
+silesia.tar,                 level 9,                     advanced streaming,          4554105
+silesia.tar,                 level 13,                    advanced streaming,          4503496
+silesia.tar,                 level 16,                    advanced streaming,          4387233
+silesia.tar,                 level 19,                    advanced streaming,          4283123
+silesia.tar,                 no source size,              advanced streaming,          4875067
+github,                      level -5,                    advanced streaming,          232744
+github,                      level -5 with dict,          advanced streaming,          45528
+github,                      level -3,                    advanced streaming,          220611
+github,                      level -3 with dict,          advanced streaming,          44394
+github,                      level -1,                    advanced streaming,          176575
+github,                      level -1 with dict,          advanced streaming,          41401
+github,                      level 0,                     advanced streaming,          136397
+github,                      level 0 with dict,           advanced streaming,          38316
+github,                      level 1,                     advanced streaming,          143457
+github,                      level 1 with dict,           advanced streaming,          41242
+github,                      level 3,                     advanced streaming,          136397
+github,                      level 3 with dict,           advanced streaming,          38316
+github,                      level 4,                     advanced streaming,          136144
+github,                      level 4 with dict,           advanced streaming,          38292
+github,                      level 5,                     advanced streaming,          135106
+github,                      level 5 with dict,           advanced streaming,          38938
+github,                      level 6,                     advanced streaming,          135108
+github,                      level 6 with dict,           advanced streaming,          38632
+github,                      level 7,                     advanced streaming,          135108
+github,                      level 7 with dict,           advanced streaming,          38766
+github,                      level 9,                     advanced streaming,          135108
+github,                      level 9 with dict,           advanced streaming,          39326
+github,                      level 13,                    advanced streaming,          133741
+github,                      level 13 with dict,          advanced streaming,          39670
+github,                      level 16,                    advanced streaming,          133741
+github,                      level 16 with dict,          advanced streaming,          37940
+github,                      level 19,                    advanced streaming,          133717
+github,                      level 19 with dict,          advanced streaming,          37576
+github,                      no source size,              advanced streaming,          136397
+silesia,                     level -5,                    old streaming,               7152294
+silesia,                     level -3,                    old streaming,               6789973
+silesia,                     level -1,                    old streaming,               6191549
+silesia,                     level 0,                     old streaming,               4862377
+silesia,                     level 1,                     old streaming,               5318036
+silesia,                     level 3,                     old streaming,               4862377
+silesia,                     level 4,                     old streaming,               4800629
+silesia,                     level 5,                     old streaming,               4715005
+silesia,                     level 6,                     old streaming,               4644055
+silesia,                     level 7,                     old streaming,               4581559
+silesia,                     level 9,                     old streaming,               4543862
+silesia,                     level 13,                    old streaming,               4493931
+silesia,                     level 16,                    old streaming,               4381885
+silesia,                     level 19,                    old streaming,               4296899
+silesia,                     no source size,              old streaming,               4862341
+silesia.tar,                 level -5,                    old streaming,               7160440
+silesia.tar,                 level -3,                    old streaming,               6789026
+silesia.tar,                 level -1,                    old streaming,               6195465
+silesia.tar,                 level 0,                     old streaming,               4875071
+silesia.tar,                 level 1,                     old streaming,               5339701
+silesia.tar,                 level 3,                     old streaming,               4875071
+silesia.tar,                 level 4,                     old streaming,               4813104
+silesia.tar,                 level 5,                     old streaming,               4726977
+silesia.tar,                 level 6,                     old streaming,               4654404
+silesia.tar,                 level 7,                     old streaming,               4591934
+silesia.tar,                 level 9,                     old streaming,               4554105
+silesia.tar,                 level 13,                    old streaming,               4503496
+silesia.tar,                 level 16,                    old streaming,               4387233
+silesia.tar,                 level 19,                    old streaming,               4283123
+silesia.tar,                 no source size,              old streaming,               4875067
+github,                      level -5,                    old streaming,               232744
+github,                      level -5 with dict,          old streaming,               45528
+github,                      level -3,                    old streaming,               220611
+github,                      level -3 with dict,          old streaming,               44394
+github,                      level -1,                    old streaming,               176575
+github,                      level -1 with dict,          old streaming,               41401
+github,                      level 0,                     old streaming,               136397
+github,                      level 0 with dict,           old streaming,               38316
+github,                      level 1,                     old streaming,               143457
+github,                      level 1 with dict,           old streaming,               41242
+github,                      level 3,                     old streaming,               136397
+github,                      level 3 with dict,           old streaming,               38316
+github,                      level 4,                     old streaming,               136144
+github,                      level 4 with dict,           old streaming,               38292
+github,                      level 5,                     old streaming,               135106
+github,                      level 5 with dict,           old streaming,               38938
+github,                      level 6,                     old streaming,               135108
+github,                      level 6 with dict,           old streaming,               38632
+github,                      level 7,                     old streaming,               135108
+github,                      level 7 with dict,           old streaming,               38766
+github,                      level 9,                     old streaming,               135108
+github,                      level 9 with dict,           old streaming,               39326
+github,                      level 13,                    old streaming,               133741
+github,                      level 13 with dict,          old streaming,               39670
+github,                      level 16,                    old streaming,               133741
+github,                      level 16 with dict,          old streaming,               37940
+github,                      level 19,                    old streaming,               133717
+github,                      level 19 with dict,          old streaming,               37576
+github,                      no source size,              old streaming,               141003