def getlevel(self, threshold):
        """
        Returns all clusters with a maximum distance of *threshold* in between
        each other

        :param threshold: the maximum distance between clusters.

        See :py:meth:`~cluster.cluster.Cluster.getlevel`
        """

        # if it's not worth clustering, just return the data
        if len(self._input) <= 1:
            return self._input

        # initialize the cluster if not yet done
        if not self.__cluster_created:
            self.cluster()

        return self._data[0].getlevel(threshold)