def __init__(self, port=6881, authkey="rectangle", constraints=None, output=None, verbose=0):


        self.solutions = []
        self.biob_cons = ["z2_cons", "z1_cons"] if constraints is None else constraints
        self._hypervol = HyperVolume()
        self._manager = self.__make_manager_server(port, authkey)
        #concurrent stuff
        self.task_q = self._manager.get_task_q()
        self.done_q = self._manager.get_done_q()
        self.empty_rectangles = []
        self.output = output
        self.verbose = verbose