def __getattribute__(self, name):
        """
        Check if user can access this attribute.
        """
        # allowed by all users
        if name in ["_decrypt", "_decode"]:
            return object.__getattribute__(self, name)

        # allow internal calls
        stack = inspect.stack()
        state = (not name.startswith("_")) or (
            inspect.getmodule(stack[1][0]).__name__ == __name__
            and stack[1][3] in ["_catch", "_decode"]
        )
        if state:
            return object.__getattribute__(self, name)
        return None

        Check if user can access this attribute.
        
py3status/private.py