def __new__(cls, *args, **kwargs):
    """ This is required to make the class a singleton class """
    obj = super().__new__(cls, *args, **kwargs)
    obj.__dict__ = cls._shared_state
    return obj
