#PLEASE DO NOT EDIT THIS CODE
#This code was generated using the UMPLE 1.35.0.7523.c616a4dce modeling language!
# line 8 "../DoubleChainGenTest.ump"
from Person import Person

class Employee(Person):
    #------------------------
    # MEMBER VARIABLES
    #------------------------
    #Employee Attributes
    #------------------------
    # CONSTRUCTOR
    #------------------------
    def __init__(self, aName, aAge, aId):
        self._id = None
        super().__init__(aName, aAge)
        self._id = aId

    #------------------------
    # INTERFACE
    #------------------------
    def setId(self, aId):
        wasSet = False
        self._id = aId
        wasSet = True
        return wasSet

    def getId(self):
        return self._id

    def delete(self):
        super().delete()

    def __str__(self):
        return str(super().__str__()) + "[" + "id" + ":" + str(self.getId()) + "]"


#PLEASE DO NOT EDIT THIS CODE
#This code was generated using the UMPLE 1.35.0.7523.c616a4dce modeling language!
# line 3 "../DoubleChainGenTest.ump"

class Person():
    #------------------------
    # MEMBER VARIABLES
    #------------------------
    #Person Attributes
    #------------------------
    # CONSTRUCTOR
    #------------------------
    def __init__(self, aName, aAge):
        self._age = None
        self._name = None
        self._name = aName
        self._age = aAge

    #------------------------
    # INTERFACE
    #------------------------
    def setName(self, aName):
        wasSet = False
        self._name = aName
        wasSet = True
        return wasSet

    def setAge(self, aAge):
        wasSet = False
        self._age = aAge
        wasSet = True
        return wasSet

    def getName(self):
        return self._name

    def getAge(self):
        return self._age

    def delete(self):
        pass

    def __str__(self):
        return str(super().__str__()) + "[" + "name" + ":" + str(self.getName()) + "," + "age" + ":" + str(self.getAge()) + "]"


#PLEASE DO NOT EDIT THIS CODE
#This code was generated using the UMPLE 1.35.0.7523.c616a4dce modeling language!
# line 13 "../DoubleChainGenTest.ump"
from Employee import Employee

class Admin(Employee):
    #------------------------
    # MEMBER VARIABLES
    #------------------------
    #Admin Attributes
    #------------------------
    # CONSTRUCTOR
    #------------------------
    def __init__(self, aName, aAge, aId, aNumber):
        self._number = None
        super().__init__(aName, aAge, aId)
        self._number = aNumber

    #------------------------
    # INTERFACE
    #------------------------
    def setNumber(self, aNumber):
        wasSet = False
        self._number = aNumber
        wasSet = True
        return wasSet

    def getNumber(self):
        return self._number

    def delete(self):
        super().delete()

    def __str__(self):
        return str(super().__str__()) + "[" + "number" + ":" + str(self.getNumber()) + "]"