#include "formula_profile.h"

LYMPHOSAT_MATCHER {
    return profile.num_vars > 100000 &&
           ((profile.exactly_one_intra_pair_coverage >= 0.99 &&
             profile.binary_clause_fraction >= 0.74 &&
             profile.binary_clause_fraction <= 0.88 &&
             profile.all_positive_clause_fraction >= 0.0048 &&
             profile.all_positive_clause_fraction <= 0.0135 &&
             profile.positive_block_clause_fraction >= 0.0044 &&
             profile.positive_block_clause_fraction <= 0.0075 &&
             profile.small_span_clause_fraction >= 0.015 &&
             profile.small_span_clause_fraction <= 0.27 &&
             profile.normalized_clause_span_mean < 0.02 &&
             profile.avg_clause_len >= 2.29 &&
             profile.avg_clause_len <= 2.39) ||
            (profile.exactly_one_intra_pair_coverage >= 0.99 &&
             profile.binary_clause_fraction >= 0.75 &&
             profile.binary_clause_fraction <= 0.9135 &&
             profile.all_positive_clause_fraction >= 0.0046 &&
             profile.all_positive_clause_fraction <= 0.0115 &&
             profile.positive_block_clause_fraction >= 0.0043 &&
             profile.positive_block_clause_fraction <= 0.008 &&
             profile.normalized_clause_span_mean >= 0.12 &&
             profile.normalized_clause_span_mean <= 0.171 &&
             profile.small_span_clause_fraction > 0.015 &&
             profile.avg_clause_len >= 2.23 &&
             profile.avg_clause_len <= 2.33) ||
            (profile.exactly_one_intra_pair_coverage >= 0.15 &&
             profile.exactly_one_intra_pair_coverage <= 0.3 &&
             profile.binary_clause_fraction >= 0.81 &&
             profile.binary_clause_fraction <= 0.86 &&
             profile.all_positive_clause_fraction >= 0.0109 &&
             profile.all_positive_clause_fraction <= 0.0112 &&
             profile.positive_block_clause_fraction >= 0.0049 &&
             profile.positive_block_clause_fraction <= 0.0051 &&
             profile.normalized_clause_span_mean >= 0.13 &&
             profile.normalized_clause_span_mean <= 0.136 &&
             profile.small_span_clause_fraction < 0.03 &&
             profile.avg_clause_len >= 2.26 &&
             profile.avg_clause_len <= 2.29));
}
