```sql
SELECT sumIF(1, 0)

Query id: 3a3db9bd-b0ad-4d2f-bd8b-39daeda0546c

┌─countIf(0)─┐
│          0 │
└────────────┘

1 rows in set. Elapsed: 0.244 sec. 
```
is OK.

```sql
CREATE TABLE agg
ENGINE = AggregatingMergeTree
ORDER BY tuple() AS
SELECT
    t,
    sumIF(n, 0)
FROM data
GROUP BY t

Query id: f47b729e-c574-4978-b565-aa805b7b896f


0 rows in set. Elapsed: 0.009 sec. 

Received exception from server (version 21.13.1):
Code: 46. DB::Exception: Received from localhost:9000. DB::Exception: Unknown function sumIF: While processing t, sumIF(n, 0). (UNKNOWN_FUNCTION)
```
const auto * first_literal = if_arguments[1]->as<ASTLiteral>();
        const auto * second_literal = if_arguments[2]->as<ASTLiteral>();
        if (first_literal && second_literal)
        {
            if (!DB::isInt64OrUInt64FieldType(first_literal->value.getType()) || !DB::isInt64OrUInt64FieldType(second_literal->value.getType()))
                return;
            auto first_value = first_literal->value.get<UInt64>();
            auto second_value = second_literal->value.get<UInt64>();
            
            if (first_value == 1 && second_value == 0)
            {
                auto new_func = makeASTFunction("countIf", if_arguments[0]);
                new_func->setAlias(func.alias);
                ast = std::move(new_func);
                return;
            }
            
            if (first_value == 0 && second_value == 1)
            {
                auto not_func = makeASTFunction("not", if_arguments[0]);
                auto new_func = makeASTFunction("countIf", not_func);
                new_func->setAlias(func.alias);
                ast = std::move(new_func);
                return;
            }
        }
    }
}
}