def _batch_dot(x: np.ndarray, y: np.ndarray) -> np.ndarray:
        """
        Compute batch dot product.

        :param x: Sample batch.
        :param y: Sample batch.
        :return: Batch dot product.
        """
        batch_size = x.shape[0]
        assert batch_size == y.shape[0]

        var_x_ = x.reshape(batch_size, 1, -1)
        var_y_ = y.reshape(batch_size, -1, 1)

        result = np.matmul(var_x_, var_y_).reshape(batch_size)

        return result

        Compute batch dot product.

        :param x: Sample batch.
        :param y: Sample batch.
        :return: Batch dot product.
        
art/attacks/evasion/wasserstein.py