you're duplicating default value here.
```python
def __init__(self, message=None, code=None):
    super(TagError, self).__init__()
    self._message = message or self.__class__.__name__
    self._code = code or 400