from enum import Enum, auto

class X():
    class Status(Enum):
        def _generate_next_value_(name, start, count, last_values):
            return name
        def __str__(self):
            return str(self.value)
        on = auto()
        off = auto()
        FINAL = auto()

    def __init__(self):
        self._status = None
        self.setStatus(X.Status.on)

    def getStatusFullName(self):
        answer = self._status.__str__()
        return answer

    def getStatus(self):
        return self._status

    def turnoff(self):
        wasEventProcessed = False
        aStatus = self._status
        if aStatus == X.Status.on :
            self.setStatus(X.Status.off)
            wasEventProcessed = True
        else :
            pass
        return wasEventProcessed

    def powerOff(self):
        wasEventProcessed = False
        aStatus = self._status
        if aStatus == X.Status.on :
            self.setStatus(X.Status.FINAL)
            wasEventProcessed = True
        else :
            pass
        return wasEventProcessed

    def turnOn(self):
        wasEventProcessed = False
        aStatus = self._status
        if aStatus == X.Status.off :
            self.setStatus(X.Status.on)
            wasEventProcessed = True
        else :
            pass
        return wasEventProcessed

    def setStatus(self, aStatus):
        self._status = aStatus
        if self._status == X.Status.FINAL :
            self.delete()

    def delete(self):
        pass

