def METHOD_NAME(self, x_next):
    """ parse the next suggestion to the proper format """
    counter = 0
    result = []
    for i in range(len(self._types)):
        if self._types[i] == api_pb2.INT:
            result.append(int(round(x_next[counter], 0)))
            counter = counter + 1
        elif self._types[i] == api_pb2.DISCRETE:
            for param in self._discrete_info:
                if param["name"] == self._names[i]:
                    result.append(
                        deal_with_discrete(
                            param["values"], x_next[counter])
                    )
                    counter = counter + 1
                    break
        elif self._types[i] == api_pb2.CATEGORICAL:
            for param in self._categorical_info:
                if param["name"] == self._names[i]:
                    result.append(deal_with_categorical(
                        feasible_values=param["values"],
                        one_hot_values=x_next[counter:counter +
                                              param["number"]],
                    ))
                    counter = counter + param["number"]
                    break
        elif self._types[i] == api_pb2.DOUBLE:
            result.append(x_next[counter])
            counter = counter + 1
    return result