code: def addconstraint(self, x, y=0, fnct=None, fid=0):
          
          self._checkid(fid)
          i = 0
          if "constraint" in self._fitids[fid]:
              i = len(self._fitids[fid]["constraint"])
          else:
              self._fitids[fid]["constraint"] = {}
          # dict key needs to be string
          i = str(i)
          self._fitids[fid]["constraint"][i] = {}
          if isinstance(fnct, functional):
              self._fitids[fid]["constraint"][i]["fnct"] = fnct.todict()
          else:
              self._fitids[fid]["constraint"][i]["fnct"] = \
                  functional("hyper", len(x)).todict()
          self._fitids[fid]["constraint"][i]["x"] = [float(v) for v in x]
          self._fitids[fid]["constraint"][i]["y"] = float(y)
          six.print_(self._fitids[fid]["constraint"])
docs: Add constraint.