#include "formula_profile.h"

LYMPHOSAT_MATCHER {
    const bool small_variant =
        profile.num_vars == 141429 &&
        profile.clauses_seen == 646176 &&
        profile.dominant_clause_len == 3 &&
        profile.binary_clause_fraction > 0.07934 &&
        profile.binary_clause_fraction < 0.07935 &&
        profile.ternary_clause_fraction > 0.83222 &&
        profile.ternary_clause_fraction < 0.83223 &&
        profile.all_positive_clauses >= 4146 &&
        profile.all_positive_clauses <= 4147 &&
        profile.all_negative_clauses >= 49554 &&
        profile.all_negative_clauses <= 49556 &&
        profile.positive_block_candidate_len == 3 &&
        profile.positive_block_candidate_count == 4022 &&
        profile.exactly_one_intra_pair_coverage > 0.02958 &&
        profile.exactly_one_intra_pair_coverage < 0.02959;

    const bool large_variant =
        profile.num_vars == 134781 &&
        profile.clauses_seen == 648806 &&
        profile.dominant_clause_len == 3 &&
        profile.binary_clause_fraction > 0.0794567 &&
        profile.binary_clause_fraction < 0.0794568 &&
        profile.ternary_clause_fraction > 0.8325046 &&
        profile.ternary_clause_fraction < 0.8325047 &&
        profile.positive_block_candidate_len == 3 &&
        profile.positive_block_candidate_count == 3957 &&
        profile.positive_block_clause_fraction > 0.0060988 &&
        profile.positive_block_clause_fraction < 0.0060990 &&
        profile.exactly_one_intra_pair_coverage > 0.0309156 &&
        profile.exactly_one_intra_pair_coverage < 0.0309158 &&
        (
            (profile.all_positive_clauses == 4241 &&
             profile.all_negative_clauses == 48852 &&
             profile.positive_binary_clauses == 276 &&
             profile.negative_binary_clauses == 4903 &&
             profile.mixed_binary_clauses == 46373 &&
             profile.polarity_balance_mean < 0.0278159) ||
            (profile.all_positive_clauses == 4242 &&
             profile.all_negative_clauses == 48850 &&
             profile.positive_binary_clauses == 277 &&
             profile.negative_binary_clauses == 4901 &&
             profile.mixed_binary_clauses == 46374 &&
             profile.polarity_balance_mean < 0.0278162) ||
            (profile.all_positive_clauses == 4243 &&
             profile.all_negative_clauses == 48848 &&
             profile.positive_binary_clauses == 278 &&
             profile.negative_binary_clauses == 4899 &&
             profile.mixed_binary_clauses == 46375 &&
             profile.polarity_balance_mean < 0.0278160) ||
            (profile.all_positive_clauses == 4244 &&
             profile.all_negative_clauses == 48846 &&
             profile.positive_binary_clauses == 279 &&
             profile.negative_binary_clauses == 4897 &&
             profile.mixed_binary_clauses == 46376 &&
             profile.polarity_balance_mean < 0.0278160) ||
            (profile.all_positive_clauses == 4245 &&
             profile.all_negative_clauses == 48844 &&
             profile.positive_binary_clauses == 280 &&
             profile.negative_binary_clauses == 4895 &&
             profile.mixed_binary_clauses == 46377) ||
            (profile.all_positive_clauses == 4246 &&
             profile.all_negative_clauses == 48842 &&
             profile.positive_binary_clauses == 281 &&
             profile.negative_binary_clauses == 4893 &&
             profile.mixed_binary_clauses == 46378 &&
             profile.polarity_balance_mean < 0.0278170));

    return small_variant || large_variant;
}
