```
SELECT *
FROM system.dictionaries
WHERE name LIKE 'XXXX%'

Row 1:
──────
database:                    default
name:                        XXXX_dict
uuid:                        00000000-0000-0000-0000-000000000000
status:                      LOADED
origin:                      default.XXXX_dict
type:                        Polygon
key:                         (Array(Array(Array(Array(Float64)))))
attribute.names:             ['name','id']
attribute.types:             ['String','String']
bytes_allocated:             0
query_count:                 0
hit_rate:                    1
element_count:               433731
load_factor:                 1
source:                      ClickHouse: default.XXXX
lifetime_min:                60
lifetime_max:                1800
loading_start_time:          2021-03-11 00:07:52
last_successful_update_time: 2021-03-11 00:08:24
loading_duration:            31.595
last_exception:
```
{
    return dict_struct;
}
bool IPolygonDictionary::isInjective(const std::string &) const
{
    return false;
}
ColumnPtr IPolygonDictionary::getColumn(
    const std::string & attribute_name,
    const DataTypePtr & result_type,
    const Columns & key_columns,
    const DataTypes &,
    const ColumnPtr & default_values_column) const
{
    ColumnPtr result;
    const auto index = getAttributeIndex(attribute_name);
    const auto & dictionary_attribute = dict_struct.getAttribute(attribute_name, result_type);
    auto keys_size = key_columns.front()->size();
    auto type_call = [&](const auto &dictionary_attribute_type)
    {
        using Type = std::decay_t<decltype(dictionary_attribute_type)>;
        using AttributeType = typename Type::AttributeType;
        using ColumnProvider = DictionaryAttributeColumnProvider<AttributeType>;
        const auto & null_value = std::get<AttributeType>(null_values[index]);
        DictionaryDefaultValueExtractor<AttributeType> default_value_extractor(null_value, default_values_column);
        auto column = ColumnProvider::getColumn(dictionary_attribute, keys_size);
        if constexpr (std::is_same_v<AttributeType, String>)
        {