def METHOD_NAME(self, exclude_fields: Tuple[str], accept_value_types: Tuple[Type]):
    fields = self._FIELDS
    kv = {}
    no_value = object()
    for name, field in fields.items():
        if name not in exclude_fields:
            value = getattr(self, name, no_value)
            if value is not no_value and isinstance(value, accept_value_types):
                kv[field.tag] = value
    return kv