```
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:
```
ColumnPtr getColumn(
        const std::string& attribute_name,
        const DataTypePtr & result_type,
        const Columns & key_columns,
        const DataTypes & key_types,
        const ColumnPtr & default_values_column) const override;
    ColumnUInt8::Ptr hasKeys(const Columns & key_columns, const DataTypes & key_types) const override;
    BlockInputStreamPtr getBlockInputStream(const Names & column_names, size_t max_block_size) const override;
    
    using Coord = Float32;
    
    using Point = bg::model::d2::point_xy<Coord, bg::cs::cartesian>;
    
    using Polygon = bg::model::polygon<Point>;
    
    using Ring = bg::model::ring<Point>;
protected:
    /** Returns true if the given point can be found in the polygon dictionary.
     *  If true id is set to the index of a polygon containing the given point.
     *  Overridden in different implementations of this interface.
     */
    virtual bool find(const Point & point, size_t & id) const = 0;
    std::vector<Polygon> polygons;
    /** Since the original data may have been in the form of multi-polygons, an id is stored for each single polygon
     *  corresponding to the row in which any other attributes for this entry are located.
     */
    std::vector<size_t> ids;
    const DictionaryStructure dict_struct;
    const DictionarySourcePtr source_ptr;