For [the rule in the list](https://github.com/ClickHouse/ClickHouse/blob/82fc7375dd3ac4faae6c3b0db9f3a28fb2802d05/tests/config/top_level_domains/public_suffix_list.dat#L6430) `*.sch.uk` 

and domain like `www.something.sheffield.sch.uk`  the correct / expected result is `sheffield.sch.uk`

Example with python (correct)

```
-- pip install publicsuffix2
-- python3
>>> from publicsuffix2 import get_public_suffix
>>> get_public_suffix('www.something.sheffield.sch.uk')
'something.sheffield.sch.uk'
```

Same from clickhouse:
```
SELECT cutToFirstSignificantSubdomain('www.something.sheffield.sch.uk')

Query id: 9661461f-a393-43ea-97a1-47c0a8850515

┌─cutToFirstSignificantSubdomain('www.something.sheffield.sch.uk')─┐
│ sch.uk                                                           │
└──────────────────────────────────────────────────────────────────┘
```

/cc @azat 
continue;
        line = trim(line, [](char c) { return std::isspace(c); });
        
        if (line.empty())
            continue;
        tld_list_tmp.emplace(line);
    }
    if (!in.eof())
        throw Exception(ErrorCodes::LOGICAL_ERROR, "Not all list had been read", name);
    TLDList tld_list(tld_list_tmp.size());
    for (const auto & host : tld_list_tmp)
    {
        StringRef host_ref{host.data(), host.size()};
        tld_list.insert(host_ref);
    }
    size_t tld_list_size = tld_list.size();
    std::lock_guard<std::mutex> lock(tld_lists_map_mutex);
    tld_lists_map.insert(std::make_pair(name, std::move(tld_list)));
    return tld_list_size;
}
const TLDList & TLDListsHolder::getTldList(const std::string & name)
{
    std::lock_guard<std::mutex> lock(tld_lists_map_mutex);
    auto it = tld_lists_map.find(name);
    if (it == tld_lists_map.end())
        throw Exception(ErrorCodes::TLD_LIST_NOT_FOUND, "TLD list {} does not exist", name);
    return it->second;
}
}