def _get_stddevs(self, dists, mag, dctx, imt, stddev_types):
        """
        Returns the total standard deviation of the intensity measure level
        from the tables.

        :param fle:
            HDF5 data stream as instance of :class:`h5py.File`
        :param distances:
            The distance vector for the given magnitude and IMT
        :param key:
            The distance type
        :param mag:
            The rupture magnitude
        """
        stddevs = []
        for stddev_type in stddev_types:
            if stddev_type not in self.DEFINED_FOR_STANDARD_DEVIATION_TYPES:
                raise ValueError("Standard Deviation type %s not supported"
                                 % stddev_type)
            sigma = self._return_tables(mag, imt, stddev_type)
            interpolator_std = interp1d(dists, sigma,
                                        bounds_error=False)
            stddev = interpolator_std(getattr(dctx, self.distance_type))
            stddev[getattr(dctx, self.distance_type) < dists[0]] = sigma[0]
            stddev[getattr(dctx, self.distance_type) > dists[-1]] = sigma[-1]
            stddevs.append(stddev)
        return stddevs
Returns the total standard deviation of the intensity measure level
        from the tables.

        :param fle:
            HDF5 data stream as instance of :class:`h5py.File`
        :param distances:
            The distance vector for the given magnitude and IMT
        :param key:
            The distance type
        :param mag:
            The rupture magnitude