':param key_type: a column class indicating the types of the key
:param value_type: a column class indicating the types of the value'

def __init__(self, key_type, value_type, default=dict, **kwargs):

    super(Map, self).__init__((key_type, value_type), default=default, **kwargs)
    self.key_col = self.types[0]
    self.value_col = self.types[1]
    if (not self.key_col._python_type_hashable):
        raise ValidationError('Cannot    create    a    Map    with    unhashable    key    type    (see    PYTHON-494)')
    self.db_type = 'map<{0},    {1}>'.format(self.key_col.db_type, self.value_col.db_type)
