class MetaSelector:
    _name: str = None
    _required_attr: str = None

    def __init__(self, name: str, required_attr=None):
        self._name = name
        self._required_attr = required_attr

    def __str__(self) -> str:
        return 'name is {}, attr is {}'.format(self.name, self._required_attr)

    @property
    def get_name(self) -> str:
        return self._name

    @property
    def get_required_attr(self):
        return self._required_attr
