Version 21.8.3

With  `legacy_column_name_of_tuple_literal` set to 0, this query succeeds:

```
SELECT countIf(chi_count, video_level IN ('Video_3', 'Video_4', 'Video_5', 'Video_6', ' Video_7', 'Video_8', 'Video_9')) AS LBR
FROM comcast_xcr_maple.atsec_cdvr_1m
WHERE datetime > (now() - 300)
```

This query fails:

```
SELECT countIf(chi_count, (video_level = 'Video_3') OR (video_level = 'Video_4') OR (video_level = 'Video_5') OR (video_level = 'Video_6') OR (video_level = 'Video_7') OR (video_level = 'Video_8') OR (video_level = 'Video_9')) AS LBR
FROM comcast_xcr_maple.atsec_cdvr_1m
WHERE datetime > (now() - 300)

Received exception from server (version 21.8.3):
Code: 10. DB::Exception: Received from localhost:9440. DB::Exception: Not found column countIf(chi_count, in(video_level, tuple('Video_3', 'Video_4', 'Video_5', 'Video_6', 'Video_7', 'Video_8', 'Video_9'))) in block. There are only columns: countIf(chi_count, in(video_level, ('Video_3', 'Video_4', 'Video_5', 'Video_6', 'Video_7', 'Video_8', 'Video_9'))): While executing Remote. 
```

Both queries work with `legacy_column_name_of_tuple_literal` set to 1.  Presumably whatever code converts the multiple OR statements to a tuple uses the "old" column name and is incompatible with the new approach.
{
    
    
    std::unordered_map<const ASTFunction *, ASTs::iterator> garbage_map;
    
    garbage_map.reserve(processed_count);
    for (const auto & chain : disjunctive_equality_chains_map)
    {
        if (!chain.second.is_processed)
            continue;
        const auto & or_with_expression = chain.first;
        auto & operands = getFunctionOperands(or_with_expression.or_function);
        garbage_map.emplace(or_with_expression.or_function, operands.end());
    }
    
    for (const auto & chain : disjunctive_equality_chains_map)
    {
        const auto & equalities = chain.second;
        if (!equalities.is_processed)
            continue;
        const auto & or_with_expression = chain.first;
        auto & operands = getFunctionOperands(or_with_expression.or_function);
        const auto & equality_functions = equalities.functions;
        auto it = garbage_map.find(or_with_expression.or_function);
        if (it == garbage_map.end())
            throw Exception("LogicalExpressionsOptimizer: garbage map is corrupted",
                ErrorCodes::LOGICAL_ERROR);
        auto & first_erased = it->second;