QML-FAST -- A Fast Code for low-$\ell$ Tomographic Maximum Likelihood Power Spectrum Estimation

Extracted source text · arXiv 2510.05215

\documentclass[a4paper]{article}
\usepackage[english]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath}
\usepackage{fixmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tabularx}
\usepackage{dirtytalk}
\usepackage{graphicx}
\usepackage{subfigure}
\usepackage{hyperref}
\usepackage{bbm}
\usepackage[colorinlistoftodos]{todonotes}
\usepackage{geometry}
\usepackage{orcidlink}

 \geometry{
 a4paper,
 total={170mm,257mm},
 left=20mm,
 top=20mm,
 }
\usepackage[sorting=none, url=false, doi = false]{biblatex}
\usepackage{dirtytalk}
\addbibresource{bibliography.bbl}

\usepackage{color}
\newcommand{\anderson}[1]{\textcolor{red}{#1}}
\newcommand{\blue}[1]{\textcolor{blue}{#1}}
\newcommand{\purple}[1]{\textcolor{magenta}{#1}}


\newcommand{\moritz}[1]{\textcolor{blue}{[MM: #1]}}
\newcommand{\yurii}[1]{\textcolor{green}{[YK: #1]}}
\newcommand{\kms}[1]{\textcolor{magenta}{[KS: #1]}}


\title{QML-FAST - A Fast Code for low-$\ell$ Tomographic Maximum Likelihood Power Spectrum Estimation}

\usepackage{authblk}

\author[1]{Yurii Kvasiuk\, \orcidlink{0009-0002-4720-1320}} 
\author[1]{Anderson Lai\, \orcidlink{0000-0003-2741-4556}} 
\author[1,2]{Moritz M\"unchmeyer\, \orcidlink{0000-0002-3777-7791}} 
\author[3]{Kendrick M. Smith, \orcidlink{0000-0002-3777-7791}} 

\affil[1]{Department of Physics, University of Wisconsin-Madison, Madison, WI 53706, USA}
\affil[2]{NSF-Simons AI Institute for the Sky (SkAI), Chicago, IL 60611, USA}
\affil[3]{Perimeter Institute for Theoretical Physics, Waterloo, ON N2L 2Y5, Canada}

\date{\today}



\begin{document}

\maketitle

\begin{abstract}
We present a novel implementation for the quadratic maximum likelihood (QML) power spectrum estimator for multiple correlated scalar fields on the sphere. Our estimator supports arbitrary binning in redshift and multipoles $\ell$ and includes cross-correlations of redshift bins. It implements a fully optimal analysis with a pixel-wise covariance model. We implement a number of optimizations which make the estimator and associated covariance matrix computationally tractable for a low-$\ell$ analysis, suitable for example for kSZ velocity reconstruction or primordial non-Gaussianity from scale-dependent bias analyses. We validate our estimator extensively on simulations and compare its features and precision with the common pseudo-$C_\ell$ method, showing significant gains at large scales. We make our code publicly available\footnote{https://github.com/ykvasiuk/qmlfast}. In a companion paper, we apply the estimator to kSZ velocity reconstruction using data from ACT and DESI Legacy Survey and construct full set of QML estimators on 40 correlated fields up to $N_{\text{side}}= 32$ in timescale of an hour on a single 24-core CPU requiring $<256\ \mathrm{Gb}$ RAM, demonstrating the performance of the code.
\end{abstract}


\tableofcontents


\section{Introduction}
A central statistic of cosmological theory and data analysis are power spectra and cross-power spectra of various fields. For this reason, there is a large toolkit of different power spectrum estimators, including the popular and fast (but not optimal) pseudo-$C_\ell$ method \cite{Wandelt:2000av}. Optimal power spectrum estimation, with statistically minimal error bars, remains challenging in practice. The Quadratic Maximum Likelihood (QML) estimator was introduced in \cite{Tegmark_1997} as a method to optimally estimate the power spectrum of the CMB temperature anisotropy and extended to include polarization power spectra in \cite{Tegmark_2001}. It was shown that this estimator is an optimal and unbiased estimator of the power spectrum multipoles given the pixel map with an arbitrary mask. The estimator was applied to study large-scale WMAP polarization spectra in \cite{Gjerl_w_2015}. An extension of the formalism, xQML,  that allows correlating different CMB datasets was presented in \cite{Vanneste:2018azc}. A more optimized implementation of the standard QML estimator was introduced in \cite{Bilbao_Ahedo_2021}. There, the authors discuss how the sparsity of the basis matrices of the signal covariance decomposition and precomputation and reuse of certain elements can speed up the Fisher matrix calculation, which is the most computationally intensive part. The applications of QML to weak lensing surveys were discussed in \cite{Maraio_2023}, where the authors introduced several approaches to deal with $\ell^6$ scaling of the method, such as evaluating an approximate Fisher matrix with finite differences. In a more recent galaxy weak lensing study~\cite{Terawaki:2025:weak_lensing}, the computational cost of quadratic estimators is reduced by assuming a diagonal fiducial covariance and sampling the Fisher matrix through Monte-Carlo simulation. All the previous implementations of the QML estimator were developed for the CMB analyses, where one only has up to 3 correlated fields. The need for a multi-field version of the QML is motivated by the fact that it's an ideal tool for the low-$\ell$ power spectrum analysis and can be used in the context of the photometric galaxy surveys, where galaxy samples are usually binned in redshift bins with a width proportional to the photometric redshift error. In this work, we generalize the QML framework to an arbitrary number of correlated fields. We introduce further optimization techniques, such as symmetries of the building blocks of the Fisher matrix and the basis of real spherical harmonics, in addition to the ones already discussed in \cite{Bilbao_Ahedo_2021} and provide both efficient and user-friendly $\texttt{python}$ implementation. Our resulting code is several orders of magnitude faster than a naive implementation and will be useful to analyze large-scale data from upcoming photometric galaxy surveys and CMB experiments. This paper presents the features of our QML estimator and validates it with simulations, while the companion paper~\cite{Lai2025kszpaper} applies it to the case of kSZ velocity reconstruction with ACT and Desi Legacy Survey data.  

This paper is organized as follows. We give an overview of the QML formalism, generalized to multiple fields in the Section \ref{sec:qml}, where we also discuss the conditions of unbiasedness, optimality, relations to the field-level likelihoods, removal of the auto-powers from cross-powers, and removal of unwanted $\ell$-modes. In the Section \ref{sec:optimization}, we discuss the details of efficient computational implementation and parametric complexity. The Section \ref{sec:validation} provides the details of numerical validation and performance comparison to the pseudo-$C_{\ell}$ method. We conclude in the Section \ref{sec:conclusion}.


\section{Review of the QML Formalism for Power Spectrum Estimation}
\label{sec:qml}
We provide a brief review of the quadratic maximum likelihood power spectrum estimator \cite{Tegmark_1997}, generalized to an arbitrary number of correlated scalar Gaussian random fields. Let ${\pmb\phi} = \{\phi_\alpha\}$ represent the pixel-space fields, the power spectra of which we want to estimate. Assuming $N_f$ fields and $N_p$ is a number of unmasked pixels, the total pixel-space covariance is $N_f\times N_f$ matrix of $N_p\times N_p$ blocks. We decompose the signal term in the power spectrum basis:
\begin{equation}
\label{eq:cov_decomposition}
    \langle\pmb{\phi\phi^T}\rangle = \mathbb{S+N} = \sum_{\{A\}}P_Ac_A +\mathbb{N}
\end{equation}
Motivated by cosmological applications, we assume each field to be a 2-d scalar field on a sphere, however, the formalism is easily generalizable to arbitrary fields. Then, $c_A$ is a $\ell$-th multipole of the cross power spectrum of the pair $\alpha\beta$ and
\begin{equation}
    P_A \equiv \frac{\partial \mathbb{C}}{\partial c_A}
\end{equation}
is the basis element. If $A=(\alpha,\beta,\ell)$, then block matrix $P_A$ is $P_A= \delta_{\alpha\beta}\otimes P^\ell_{ij}$ where $P^{\ell}_{ij} = \frac{2\ell+1}{4\pi}\mathcal{P}^\ell(\hat{\mathbf{n}}_i \cdot \hat{\mathbf{n}}_j)$, and $\mathcal{P}^{\ell}(\hat{\mathbf{n}}_i\cdot \hat{\mathbf{n}}_j)$ is a Legendre polynomial of the order $\ell$ of the cosine of the angle between unit-vectors pointing in the direction of $i$-th and $j$-th pixels. Then the estimator of $c_A$ is given by
\begin{equation}
\label{eq:qml}
    \hat{c}_A = (F^{-1})_{AB}\left[\pmb{\phi}^TQ_B\pmb{\phi}-n_B\right]
\end{equation}
Where 
\begin{equation}
    Q_A = \frac{1}{2}C^{-1}P_AC^{-1},\quad n_A = \texttt{Tr}[NQ_A] 
\end{equation}
And 
\begin{equation}
\label{eq:fisher_def}
    F_{AB} = \frac{1}{2}\texttt{Tr}[\mathbb{C}^{-1}\mathbb{C}_{,c_A}\mathbb{C}^{-1}\mathbb{C}_{,c_B}]\equiv \frac{1}{2}\texttt{Tr}[\mathbb{C}^{-1}P_A\mathbb{C}^{-1}P_B]
\end{equation}
This estimator is unbiased and optimal according to the Cramer-Rao lower bound:
\begin{equation}
    \langle\hat{c}_A\rangle = c_A, \quad \langle(c_A-\hat{c}_A)( c_B-\hat{c}_B)\rangle = (F^{-1})_{AB}
\end{equation}

\subsection{Mismodelling the data covariance}
The last statement assumes that our fiducial model covariance used for the Fisher matrix calculation equals the data covariance. This is not always the case, as often we are interested in the parameter inference where the fiducial covariance is only assumed to be close to the true data covariance. However, the estimator remains unbiased, even if we use the wrong signal covariance (but not the noise covariance!). Let's denote the mismodeled quantities with tildes, eg. $\tilde{\mathbb{C}} = \tilde{\mathbb{S}} + \tilde{\mathbb{N}}$, and $\tilde{Q}_A = \frac{1}{2}\tilde{\mathbb{C}}^{-1}P_A\tilde{\mathbb{C}}^{-1}$. Let's define \begin{equation}
\label{eq:y}
\hat{y}_A \equiv F_{AB}\hat{c}_B = \texttt{Tr}[Q_A(\pmb{\phi}\pmb{\phi^T}-\mathbb{N})]
\end{equation}
Then it follows that
\begin{equation}
    \langle\tilde{y}_A\rangle = \texttt{Tr}[\tilde{Q}_A(\mathbb{S}+(\mathbb{N}-\tilde{\mathbb{N}}))] = \sum_{AB}c_B\texttt{Tr}[\tilde{Q}_AP_B] + \texttt{Tr}[\tilde{Q}_A(\mathbb{N}-\tilde{\mathbb{N}})]
\end{equation}
But $\texttt{Tr}[\tilde{Q}_AP_B] = \tilde{F}_{AB}$. So that the estimator $\tilde{\hat{c}}$
\begin{equation}
    \langle (\tilde{F}^{-1})_{AB}\tilde{y}_B\rangle \equiv \langle \tilde{\hat{c}}_A\rangle = c_A + (\tilde{F}^{-1})_{AB}\texttt{Tr}[\tilde{Q}_B(\mathbb{N}-\tilde{\mathbb{N}})]
\end{equation}
is unbiased unless the noise is mismodeled. However, the resulting estimator is no longer optimal, as we show in  Appendix \ref{app:mismod_var}.


\subsection{Connection to the field-level likelihood}
Here, we want to draw a parallel between using the QML estimator and maximizing the field-level likelihood. Consider a typical cosmological parameter inference problem. We are interested in a set of parameters $\Omega$, having measured data $\pmb{\phi}$ that is assumed to be a mean-zero Gaussian random field with a parameter-dependent covariance. Then MLE $\Omega^*$ is typically found by solving
\begin{align}
\Omega^* &= \mathrm{argmax}_{\Omega}
  \ln \mathcal{L}_{field}(\pmb\phi|\Omega) = \\
  &=\mathrm{argmin}_{\Omega} \left[\frac{1}{2}\pmb{\phi^T}(\mathbb{S}(\Omega)+\mathbb{N})^{-1}\pmb\phi +\frac{1}{2}\ln\det(\mathbb{S}(\Omega)+\mathbb{N})\right]
\end{align}
Define the score function $s(\Omega)$ by $s({\Omega})\equiv\partial_\Omega\ln{\mathcal{L}}$. Let's expand it at some $\Omega_0$ up to the first order. At the optimum we have $s({\Omega^*}) = 0$:
\begin{equation}
    0 = s({\Omega_0}) + (\hat{\Omega}^*-\Omega_0)\partial_{\Omega}s|_{\Omega_0}
\end{equation}
If we substitute $\partial_{\Omega}s\rightarrow\langle\partial_{\Omega}s|_{\Omega_0}\rangle=\langle\partial^2_{\Omega}\mathcal{L}|_{\Omega_0}\rangle = -F_0^{\Omega\Omega}$, 
we get
\begin{equation}
\label{eq:nr_update}
    \hat{\Omega}^* = \Omega_0 + (F_0^{\Omega\Omega})^{-1}s(\Omega_0)
\end{equation}
It is exactly a Newton-Raphson update step, and the QML estimator is equivalent to the first update step. For the Gaussian score, we have
\begin{equation}
    \partial_{\Omega}\ln\mathcal{L} = \frac{1}{2}\texttt{Tr}[\mathbb{C}^{-1}(\partial_{\Omega}\mathbb{C})\mathbb{C}^{-1}\pmb{\phi\phi}^T]-\frac{1}{2}\texttt{Tr}[\mathbb{C}^{-1}(\partial_{\Omega}\mathbb{C})]
\end{equation}
Identifying $\Omega$ with $c_A$, we have then 
\begin{equation}
\texttt{Tr}[\mathbb{C}^{-1}P_A] = \texttt{Tr}[\mathbb{C}Q_A] = \texttt{Tr}[Q_A(\mathbb{S+N})] = \texttt{Tr}[Q_A\mathbb{N}] + F_{AB}c_B,
\end{equation}
so that the equation \eqref{eq:nr_update} becomes identical to the equation \eqref{eq:qml}.
Another useful property is that in the approximation where QML estimates are Gaussian, which is true to leading order in $1/l$ by the central limit theorem, their covariance is $\mathrm{cov}^{-1}(\hat{c})_{AB} = F_{AB}$, so that the information content of the power-spectrum likelihood 
\begin{equation}
    \ln\mathcal{L}_{ps}(\hat{c}_A(\pmb{\phi})|\Omega) \cong -\frac{1}{2}(\hat{c}_A-c_A(\Omega))\mathrm{cov}(\hat{c})^{-1}_{AB}(\hat{c}_{B}-c_B(\Omega)) 
\end{equation}
is equal to the field-level one, as
\begin{equation}
    F^{ps}_{\Omega\Omega} =\langle\partial_\Omega\ln\mathcal{L}^{ps}\partial_\Omega\ln\mathcal{L}^{ps}\rangle =\frac{\partial c_A}{\partial \Omega}F_{AB}\frac{\partial c_B}{\partial\Omega} = \frac{1}{2}\mathrm{Tr}[\mathbb{C}^{-1}(\partial_\Omega\mathbb{C})\mathbb{C}^{-1}(\partial_\Omega\mathbb{C})] = F^{field}_{\Omega\Omega}
\end{equation}
This property can be useful for the exact Fisher forecasting.

\subsection{Binned estimator}\label{subsec:Bandpowered estimator}
To get the estimator, we need to calculate 
\begin{equation}
    \hat{c}_{A} = (F^{-1})_{AB}\hat{y}_{B}
\end{equation}
In the case when the sky coverage is sufficiently small, $(F_{AB})^{-1}$ might not exist. The minimum resolution width in $\ell$-space is inversely proportional to the angular separation \cite{Tegmark_1996}:
\begin{equation}
    \Delta\ell \sim \frac{1}{\Delta\theta}
\end{equation}
where $\Delta\theta$ is the smallest angular separation of the sky patch in radians. For simplicity, we consider a one-field case and introduce a linear binning operator $\mathcal{P}$:
\begin{equation}\label{eq: bandpowering y_ell}
    \hat{y}_b = \mathcal{P}_{b\ell}\hat{y}_{\ell}
\end{equation}
Then we can define "unbinning" operator $\mathcal{S}$ to be the right pseudo-inverse $\mathcal{S} = \mathcal{P}^T(\mathcal{P}\mathcal{P}^T)^{-1}$ such that
\begin{equation}\label{eq: bandpowering pinv}
    \hat{y}_{b'} = \mathcal{P}_{b'\ell}\mathcal{S}_{\ell b} \hat{y}_{b}
\end{equation}
and assume that
\begin{equation}
    c_{\ell} \approx \mathcal{S}_{\ell b}c_{b}
\end{equation}
Then
\begin{equation}
    \langle y_{b}\rangle = \mathcal{P}_{b\ell}F_{\ell\ell'}\mathcal{S}_{\ell'b'}c_{b'}
\end{equation}
And 
\begin{equation}\label{eq: bandpowering QML estimate}
    \hat{c}_{b} = (\mathcal{P}F\mathcal{S})^{-1}_{bb'}\mathcal{P}_{b'\ell}\hat{y}_{\ell}
\end{equation}




\subsection{Deprojection for cross-power spectra}
\label{subsec:deprojx}
QML estimator is minimum-variance by construction. However, for the case of multiple fields, this results in the presence of the autopowers in the estimator of the cross power
(\cite{Tegmark_2001}, Sec. III D). This is often undesired, for example when auto-powers are affected by large calibration systematics. In the case when we are interested in measuring the cross-correlation, we naturally would like to ensure that the estimator of cross-powers is constructed only from the cross-products or the corresponding fields $\hat{C}_{XY} \supset XY$. This is achieved by setting the corresponding entries $C_{XY}$ in the fiducial covariance to zero. We note here that this ad-hoc prescription is natural when one is concerned with the cross-power detection SNR. For example, when we have two fields (or two groups of fields) $\phi_X$ and $\phi_Y$, we introduce an amplitude $\mathcal{A}$ in the total covariance:
\begin{equation}
    \mathbb{C}=\begin{pmatrix}
        C_{XX} & \mathcal{A}C_{XY} \\
        \mathcal{A}C_{YX} & C_{YY}
    \end{pmatrix}
\end{equation}
Then for the rejection of the null hypothesis that the fields are uncorrelated $H_0:\{A=0\}$, we usually need to evaluate $\sigma^2_\mathcal{A}\bigg|_{\mathcal{A}=0} = F^{-1}_{\mathcal{A}\mathcal{A}}\bigg|_{\mathcal{A}=0}$ setting the cross-powers equal to zero in the fiducial covariance explicitly. We also note that setting the off-diagonal blocks of the total covariance to zero can be leveraged to further reduce the memory consumption and the time to calculate the Fisher matrix. We elaborate on this in \ref{subsec:fisher_eval}.


\subsection{Deprojection of the unwanted multipoles}\label{subsec:deproj_ell}
In usual applications, we often need to restrict our analysis to the $\ell$-modes only for some $\ell>\ell_{min}$ (for example the monopole and dipole are usually excluded from CMB analysis). It was argued in \cite{Tegmark_1997}, that in the 1 field case, one can define the "pseudo-inverse" matrix $M=\pi[\pi C\pi^T+\eta ZZ^T]^{-1}\pi^T$, where $Z$ is constructed from the orthonormalized columns corresponding to the unwanted multipoles, $Z^TZ = 1$; and $\pi = 1-ZZ^T$ - a projector to the orthogonal subspace. The matrix $M$ is used everywhere instead of $C^{-1}$ and the result is independent of $\eta$. The same argument extends to the case of general $N$ fields. We define \begin{equation}
    \mathrm{\Pi} = \mathbbm{1}_{N_f} \otimes \pi
\end{equation}
Here, the $\mathbbm{1}_{N_f}$ is an identity matrix of the size $N_f \times N_f$. Then the matrix $\mathbb{M}$ is defined as follows:
\begin{equation}
    \mathbb{M} = \mathrm{\Pi}\left[\mathrm{\Pi}\mathbb{C}\mathrm{\Pi}+\eta(\mathbbm{1}_{N_b}\otimes ZZ^T)\right]^{-1}\mathrm{\Pi}
\end{equation}
We use the matrix $\mathbb{M}$ instead of $\mathbb{C}^{-1}$ in the definition of the Fisher matrix and the estimator. This procedure still results in the optimal estimator for the remaining multipoles. In the Appendix \ref{app:pi}, we provide the justification for this statement.

\section{Computational Optimization}
\label{sec:optimization}


\subsection{Evaluating the Fisher Matrix}
\label{subsec:fisher_eval}

The most computationally intensive part of the QML estimation procedure is the calculation of the Fisher matrix, given by the equation \eqref{eq:fisher_def}. Since matrix multiplication scales approximately as $\mathcal{O}(N^3)$ with the number of elements, the total naive computational complexity makes it practically almost impossible to compute for realistic tasks. For the given $N_f,N_p$ and $\ell_{max}$ the computational complexity is $\mathcal{O}(N^4_f\ell_{max}^2)\times\mathcal{O}(N^3_fN^3_p)$. However, the covariance decomposition basis elements $P_A$ are sparse and have different symmetries that one can use to make the task computationally feasible. Let's first make the trace over field indices explicit:
\begin{equation}
    \texttt{Tr}[C^{-1}P_AC^{-1}P_B] = \sum^{N_f}_{\alpha\beta\gamma\delta}\texttt{tr}[(C^{-1})_{\alpha\beta}P^A_{\beta\gamma}(C^{-1})_{\gamma\delta}P^B_{\delta\alpha}]
\end{equation}
Here, $\texttt{tr}$ is used to denote trace over the pixels. One can notice that $P$ can be represented as a Kronecker product: 
\begin{equation}
P^A_{\gamma\delta} = P^{(\alpha,\beta,\ell)}_{\gamma\delta} = K^{(\alpha\beta)}_{\gamma\delta}\otimes P_{\ell}
\end{equation}
Here, $(P_\ell)_{ij} = \frac{2\ell+1}{4\pi}\mathcal{P}_{\ell}(\hat{\bf{n}}_i\cdot\hat{\bf{n}}_j)$, where $P_\ell(\hat{\bf{n}}_i\cdot\hat{\bf{n}}_j)$ is a Legendre polynomial of a degree $\ell$ of the cosine of the angle between the unit vectors pointing towards $i$-th and $j$-th pixels and round brackets $(\alpha\beta)$ represent ordering between the fields. We introduced the object $K^{(\alpha\beta)}_{\gamma\delta}$ that represents the sparsity of the basis elements. It's equal to $1$ only if $\gamma=\alpha,\ \delta=\beta$ or $\gamma=\beta,\ \delta=\alpha$ and $0$ otherwise. Then we can rewrite the expression 
\begin{equation}
F_{AB} = F_{(\rho\epsilon\ell_1)(\kappa\sigma\ell_2)} = \frac{1}{2}K^{(\rho\epsilon)}_{\beta\gamma}K^{(\kappa\sigma)}_{\delta\alpha}\texttt{tr}[(C^{-1})_{\alpha\beta}P_{\ell_1}(C^{-1})_{\gamma\delta}P_{\ell_2}] \equiv \frac{1}{2}K^{(\rho\epsilon)}_{\beta\gamma}K^{(\kappa\sigma)}_{\delta\alpha}\texttt{t}^{\ell_1\ell_2}_{\alpha\beta\gamma\delta}
\end{equation}
We can further decompose the trace using the addition theorem for the Legendre polynomials $\mathcal{P}_{\ell}(\hat{\bf{n}}_i\cdot\hat{\bf{n}}_j) = \frac{2\ell+1}{4\pi}\sum^{\ell}_{m=-\ell}Y^{*}_{\ell m}(\hat{\bf{n}}_i)Y_{\ell m}(\hat{\bf{n}}_j)$. For practical purposes, however, it's useful to define this decomposition in terms of the real basis. This is important because floating-point matrix operations with complex numbers take $\sim4$ times longer on modern architectures then with real numbers and require $\times 2$ the amount of RAM.

\[
Y_{\ell m}^{\mathrm{real}}(\theta,\phi)=
\begin{cases}
\dfrac{(-1)^m Y_{\ell m} + Y_{\ell,-m}}{\sqrt{2}}, & m>0, \\[0.6em]
Y_{\ell 0}, & m=0, \\[0.6em]
\dfrac{(-1)^m Y_{\ell,|m|} - Y_{\ell,-|m|}}{i\sqrt{2}}, & m<0~.
\end{cases}
\]

Then we can further simplify 
\begin{equation}
\label{eq:t_tensor}
    \texttt{t}^{\ell_1\ell_2}_{\alpha\beta\gamma\delta} = \sum_{m_1m_2} (C^{-1})_{\alpha\beta}^{\ \ ij}Y^{\ell_1m_1}_{j}Y^{\ell_1m_1}_{k}(C^{-1})_{\gamma\delta}^{\ \ kl}Y^{\ell_2m_2}_{k}Y^{\ell_2m_2}_{i} = \texttt{tr}_m \left[{}^{\ell_2\ell_1}C^{-1}_{\alpha\beta}{}^{\ell_1\ell_2}C^{-1}_{\gamma\delta}\right]
\end{equation}
In the expression above, there's no summation over $\ell_1,\ell_2$. We defined 
${}^{\ell_2\ell_1}(C^{-1})^{m_2m_1}_{\alpha\beta} = Y^{\ell_2m_2}_i(C^{-1})^{ij}_{\alpha\beta}Y^{\ell_1m_1}_j$ and the sum over pixel indices $i,j$ is implied. The benefit of this decomposition is tremendous. Typically, $N_p \propto \ell^2_{max}$ and we reduced trace over pixels to trace over $m$. From $\mathcal{O}(N_p^2)$ operations (if we precomputed the products of $C^{-1}_{\alpha\beta}P_{\ell}$) we now need to do $\mathcal{O}(\ell_{max}^2)$ operations (given that we precomputed the products $YC^{-1}Y$ before). We can further reduce the number of computations and memory by exploiting the symmetries of $\texttt{t}^{\ell_1\ell_2}_{\alpha\beta\gamma\delta}$. First we note that we can flip the first pair of field indices with the second one and simultaneously flip multipole indices. The second symmetry property follows from the fact that the covariance is a symmetric matrix: $(C^{-1})^{\alpha\beta}_{ij} = (C^{-1})^{\beta\alpha}_{ji}$. We can then flip simultaneously the multipole indices and indices in the first and second pair with each other. To conclude:
\begin{equation}
\label{eq:t_tensors}
\texttt{t}^{\ell_1\ell_2}_{\alpha\beta\gamma\delta} = \texttt{t}^{\ell_2\ell_1}_{\gamma\delta\alpha\beta} = \texttt{t}^{\ell_1\ell_2}_{\delta\gamma\beta\alpha} 
\end{equation}
 The use of the mentioned symmetries is practically important, because one needs to compute and store only the upper- (or lower-) triangular part of $YC^{-1}Y$ contractions. Some of the mentioned techniques were already discussed in \cite{Bilbao_Ahedo_2021, Gjerl_w_2015} for the case of CMB temperature and polarization power spectrum. However, here we generalize it to the case of an arbitrary number of fields and further improve by using explicit symmetries and a real representation of spherical harmonics.


\subsection{Partial case: block-diagonal covariance}
Further simplifications are possible in the case when the total data covariance takes a block-diagonal form. This is the case when we are interested in estimates of the cross powers that don't contain auto powers, as discussed in \ref{subsec:deprojx}. First, it is faster to calculate the $\mathbb{C}^{-1}$, as we can invert the blocks independently. Secondly, certain elements of the Fisher matrix are zero, while the other ones contain fewer terms. Let's, for simplicity, consider the setup when the total covariance (and its inverse) has two diagonal blocks:
\begin{equation}
    \mathbb{C}_0 = \begin{pmatrix}
        C_{\alpha\beta} && 0 \\
        0 && C_{\dot{\alpha}\dot{\beta}}
    \end{pmatrix}
\end{equation}
where we used dotted indices to denote separate blocks. This implies $(C^{-1})_{\alpha\beta}\neq0$, $(C^{-1})_{\dot{\alpha}\dot{\beta}}\neq0$, but $(C^{-1})_{\alpha\dot\beta}=0$, so that the elements $\texttt{t}^{\ell_1\ell_2}_{\alpha\beta\gamma\delta}$, introduced in eq. \eqref{eq:t_tensor}, are zero if the dotted index is between two undotted ones and vice versa. For example, $\texttt{t}^{\ell_1\ell_2}_{\alpha\dot\beta\gamma\delta} = 0$ and $\texttt{t}^{\ell_1\ell_2}_{\alpha\dot\beta\gamma\dot\delta} = 0$, but $\texttt{t}^{\ell_1\ell_2}_{\dot\alpha\dot\beta\gamma\delta} \neq 0$.

\subsection{Optimized implementation of $\ell$ binning}
To compute the binned estimates as in Sec \ref{subsec:Bandpowered estimator}, one still needs to calculate the full Fisher matrix first. It's inefficient from a computational performance perspective, as it's the most time-consuming part. We can gain an additional $\mathcal{O}((\Delta\ell)^2)$ of improvement by starting from the binned basis. Our current implementation does not support this, but here we outline how it can be achieved. For simplicity, we discuss the one-field case, since this simplifications concerns the $\ell$-part of the calculation and trivially extends to the multifield case. The derivation of the QML estimator starts from the decomposition of the pixel-space covariance in the set of basis elements, as specified in the equation \eqref{eq:cov_decomposition}. However, one can instead decompose in the binned basis:
\begin{equation}
    \mathbb{S} = \sum_{\ell}c_\ell P_{\ell} \approx \sum_b c_bP_b = \sum_{b,\ell}c_\ell\mathcal{P}_{\ell b}P_b 
\end{equation}
such that the new basis is related to the old one as follows 
\begin{equation}
    P_b = \mathcal{S}^TP_{\ell}
\end{equation}
Where the operator $\mathcal{S}$ was defined in the section \ref{subsec:Bandpowered estimator}. Then, to make it computationally tractable, one needs to find an analog of the addition theorem for the new basis elements $P_b \sim \sum_{m_b}Y_{bm_b}Y_{bm_b}$. We postpone this development to future work.

\subsection{Parametric complexity and implementation details}
Our implementation is in $\texttt{python}$, but we rely on the libraries that have efficient parallelized backends. The exact inverse of the full covariance matrix still scales as $\mathcal{O}(N_f^3N^3_p)$. Then we need to precompute ${}^{\ell_2\ell_1}(C^{-1})^{m_2m_1}_{\alpha\beta}$. The most efficient way to calculate it scales as $\mathcal{O}(\ell_{max}^2 N_p^2 + \ell_{max}^4 N_p)\times\mathcal{O}(N^2_f)$. In our implementation, we use $\texttt{opt\_einsum}$ \cite{Smith2018} for this step. It calculates the optimal contraction path and is backend-agnostic, giving the ability to utilize different software and hardware acceleration methods, including GPU backend and out-of-memory distributed computations. The rest is the loop over the Fisher matrix indices with the trace over $m$ - $\mathcal{O}(N_f^2\ell_{max}^2)\times\mathcal{O}(\ell^2_{max})$ operations. We use $\texttt{numba}$ \cite{lam2015numba} for this part to handle compilation, parallelization, and customized logic to utilize all the symmetries. Hence, the total complexity is dominated by the $\mathcal{O}(\ell_{max}^2 N_p^2 + \ell_{max}^4 N_p)\times\mathcal{O}(N^2_f)$ term. As previously discussed, when the covariance is block diagonal, $N^2_f$ multiple is replaced by the number of fields in the largest block.

\section{Validation on Simulations and Comparison with Pseudo-$C_\ell$}
\label{sec:validation}

In this section we validate our estimator on simulations, compare it with pseudo-C$_\ell$, and perform iterative parameter inference.


\subsection{Code validation: Unbiasedness and Mode-deprojection}

We validate our code using simple power-law power spectra and a realistic experimental mask.


\paragraph{Fiducial powers.}To evaluate the performance of our multi-field QML estimator, we simulated a set of 4 correlated Gaussian fields $a_1, a_2, b_1, b_2$, which follows an inverse-square power law fiducial angular power spectrum:
\begin{align}\label{eq:fiducial auto power}
    S^{a_1, a_1}_{\ell} &= S^{a_2, a_2}_{\ell} =  \ell^{-2}\, , \\
    S^{b_1, b_1}_{\ell} &= S^{b_2, b_2}_{\ell} = 0.8\,\ell^{-2}\, . \nonumber
\end{align}
To differentiate the observed autopower from the underlying signal, a uniform noise power spectrum $N_\ell = 10^{-4}$ is added to the auto-powers (we are signal dominated on all scales in this example), such that:
\begin{align}\label{eq:fiducial auto power w/ noise}
    C^{a_*, a_*}_{\ell} &= S^{a_*, a_*}_{\ell} + N_{\ell} \, , \\
    C^{b_*, b_*}_{\ell} &= S^{b_*, b_*}_{\ell} + N_{\ell} \, . \nonumber
\end{align}
where the $*$ symbol denotes any one of the two indexes (1, 2). It is noted that only $C^{a_*, a_*}_{\ell}, C^{b_*, b_*}_{\ell}$ are used in the simulation. We also consider a simple cross-correlation structure as follows:
\begin{align}\label{eq:fiducial cross power}
    C^{a_1, a_2}_{\ell} &= 0.5\,S^{a_1, a_1}_{\ell} \, , \\ 
    C^{b_1, b_2}_{\ell} &= 0.3\,S^{b_1, b_1}_{\ell} \, , \nonumber\\
    C^{a_*, b_*}_{\ell} &= A\times\sqrt{S^{a_1, a_1}_{\ell}\times S^{b_1, b_1}_{\ell}} \, , \nonumber
\end{align}
The cross-power amplitude $A$ is set to $0.4$. The maps are simulated on $N_{\text{side}} = 16$ resolution in \texttt{Healpix} format. The is achieved by the \texttt{hp.synalm} function available in the \texttt{Healpy} package~\cite{Zonca2019:Healpix1, 2005ApJ:Healpix2}. In the present work we use $N_{\text{side}} = 16$ to illustrate the approach, but higher $N_{\text{side}}$ are tractable and in particular we use $N_{\text{side}} = 32$ in our companion kSZ analysis paper.


\paragraph{Choice of mask.} To include the partial sky scenario analogous to the realistic survey geometry, we adopt a binary mask from~\cite{Lai2025kszpaper} that accounts for an overlapping region between the ACT DR6 Temperature map~\cite{DR6} and DESI LRG survey. The mask is obtained in $N_{side} = 32$ and then downgraded to $N_{side} = 16$ to match our resolution. Fig.~\ref{fig:mask} shows the mask that was used in this setup. The number of effective pixels reduces from $3072$ for the full-sky simulation to $766$ pixels for the masked sky.

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.5\columnwidth]{mask.pdf}
    \caption{An $N_{\text{side}}=16$ binary mask downgraded from $N_{\text{side}}=32$ and applied to the kSZ analysis in~\cite{Lai2025kszpaper}, the unmasked pixels have a value of 1.}
    \label{fig:mask}
\end{figure}

\paragraph{Mode removal.} We investigate the robustness of the mode deprojection described in Sec.~\ref{subsec:deproj_ell} by removing the QML estimations below $\ell = 5$ through three separate methods.
\begin{enumerate}
\item Calculate the complete Fisher matrix $F_{\ell\ell'}$ and the estimator $Q_\ell$, then remove the rows and columns of the Fisher matrix corresponding to the unwanted modes. While this is the most direct approach, there is a big problem with it. Since the pixel-space inverse covariance matrix still involves unwanted fiducial modes $l < l_{\rm min}$ that are subjected to systematics, the power spectrum estimator, by construction, remains sensitive to those contaminated modes even if the couplings in the Fisher matrix are removed.

    \item Follow the prescription in~\cite{Tegmark_1997}, which is further elaborated and generalized to the multi-field scenario in Sec.~\ref{subsec:deproj_ell}. This is achieved by the construction of a pseudo-inverse covariance that spans a subspace orthogonal to the unwanted modes. This method is exact in a way that it removes the contribution from unwanted modes from the pixel-space covariance level. 

    \item Finally, we scale the unwanted modes by a factor of $10^3$ according to the prescription in~\cite{Tegmark_1997}. This approach utilizes that fact that the Fisher coupling scales roughly as $\sim\text{Tr}(C^{-2})$. Therefore, by scaling the unwanted modes in the fiducial power, one essentially suppresses the corresponding Fisher matrix element, which effectively 'decouples' the unwanted modes from the other.
\end{enumerate}
We comment on the different properties of these approaches below.

\paragraph{Comparing full sky to partial sky.} Fig.~\ref{fig:QML_fullsky_partialsky} compares the QML estimates from $\ell = 5$ to $\ell = 47$ for the three different mode-deprojection methods. One can observe that in the full-sky limit (left plot), three approaches give the same results. This is because in the full-sky limit, the modes are completely decoupled due to statistical isotropy, leading to a diagonal Fisher matrix. Therefore, the three mode-removal treatments are equivalent in this regime due to zero coupling between modes. Furthermore, it can be seen that all QML estimates converge to the naive fullsky power spectrum estimates obtained from the \texttt{hp.anafast} (purple curve), given by $\hat{C_\ell} = \frac{1}{2\ell+1}\sum_{m=-\ell}^{\ell}|a_{\ell m}|^2$, showing that our multi-field QML pipeline is optimal in the full-sky limit.

The three mode deprojection methods start to differ from each other in the cut-sky regime. With mode coupling introduced by the mask, the off-diagonal of the Fisher matrix $F_{\ell\ell'}$ is no longer zero. It can be seen that both the power spectrum estimates and the error bars are different for all three methods at $\ell < 30$. In particular, the data points obtained from the pseudo-inverse approach and the mode-scaling approach are similar to each other, revealing mode-scaling approach as a good approximation to the exact pseudo-inverse method. All three methods converge nicely at $\ell > 30$. The transition around $\ell = 30$ sets a characteristic scale at which mode-coupling becomes negligible.

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.85\columnwidth]{QML_estimates_fullsky_to_partialsky.pdf}
    \caption{Comparison of mode-deprojection methods. Left: The full-sky QML estimates and the associated error bars for the $C^{a_2, a_2}_{\ell}$ power spectrum. The red curve shows the fiducial power spectrum given in Eq.~\ref{eq:fiducial auto power w/ noise} and the purple curve represents the power spectrum estimation from the fullsky Gaussian simulation using \texttt{hp.anafast}. Data points with solid, dashed and dotted error bars give the three different mode deprojection methods, with 'no treatment' stands for simple column/row removal (method 1), 'pinv' stands for pesudo-inverse covariance construction (method 2) and 'scale' for scaling unwanted modes (method 3). Right: Same as left panel, but with the mask shown in Fig.~\ref{fig:mask} applied to the same set of simulated maps. Green and orange data points are shifted by $\pm0.3$ along the x-axis to avoid overlapping.}
    \label{fig:QML_fullsky_partialsky}
\end{figure}

\paragraph{(Un-)biasedness of different mode deprojection methods.} While Fig.~\ref{fig:QML_fullsky_partialsky} illustrates that different mode deprojection treatments can yield different results in the partial-sky regime, it does not provide evidence that the pseudo-inverse method is more appropriate. A good test to check whether the three methods are unbiased. We generate 5000 Gaussian simulations with mask applied and process them with the three different mode removal technique. The QML outputs are then averaged for each approach. We plot the result in Fig.~\ref{fig:QML_partialsky_biastest}. One can see both the pseudo inverse and mode scaling nicely converge to the fiducial power, while simply removing unwanted columns and rows from the Fisher matrix would lead to a bias around the boundary ($\ell = 5$) where the cut is applied, eventually giving QML estimates that overpredicts the power spectrum. There are also biases around the smallest mode $\ell =47$ for all three approaches, which is due to the low pixel resolution of the map.
\begin{figure}[h!]
    \centering
    \includegraphics[width=0.5\columnwidth]{QML_mode_deproj_bias_partialsky.pdf}
    \caption{Comparison of (un-)biasedness of mode-deprojection methods. The QML estimates of the $C^{a_2, a_2}_{\ell}$ power spectrum averaged from 5000 masked Gaussian realizations. Each realization is processed with the multi-field QML pipeline and modes below $\ell = 5$ are removed according to the three prescriptions in main text. The fiducial power spectrum is also plotted for reference.
}
    \label{fig:QML_partialsky_biastest}
\end{figure}

\paragraph{Sub-optimal estimates due to wrong fiducial power.} Another feature of the QML method is that the power spectrum estimates are unbiased by construction regardless of the choice of fiducial power. This property guarantees that the QML always gives correct estimates to the full-sky power spectrum even if the fiducial power poorly explains the observation. Instead, a fiducial power that is different from the true power leads to a suboptimal estimator i.e., slightly larger error bars. We give a proof in App.~\ref{app:mismod_var} on how mismodeling fiducial power leads to suboptimal estimates. To illustrate it, we change the input fiducial power by modifying the signal $S^{aa}_{\ell}$ from $\ell^{-2}$ to $\ell^{-3}$ and Noise from $10^{-4}$ to $10^{-2}$

We generate 5000 masked realization from the power spectrum without any modification and evaluate the QML output with the modified fiducial power spectrum. The blue data points in Fig.~\ref{fig:QML_partialsky_wrongfiducial} show the average of the QML estimates over the 5000 simulations. The fact that they fall on the true fiducial power shows that a mismodeled fiducial power still gives an unbiased estimation from the QML pipeline. The 1-sigma error of the simulation is highlighted as the orange region, which is larger than the optimal error bars computed analytically from the true fiducial power (green shaded region). 

As a result, constructing the QML pipeline with a wrong fiducial power leads to unbiased, yet suboptimal estimates when compared to the one that better describes the data. In this respect, the pseudo-$C_{\ell}$ formalism can be understood as a special case of mismodeling the fiducial covariance to be an identity matrix, as shown in~\cite{Terawaki:2025:weak_lensing}.

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.6\columnwidth]{QML_mode_deproj_bias_wrong_cov.pdf}
    \caption{Influence of the fiducial power on the estimator optimality. The average of 5000 QML estimates, each realization is simulated from the true fiducial power spectrum given by green curve while evaluated with a modified covariance matrix that is computed from the orange curve. The green and orange shaded region highlight the 1-sigma uncertainty obtained from the 5000 simulations. The ratio of the 1-sigma uncertainty between Wrong and True fiducial power is plotted in the bottom, and it is consistently above 1.}
    \label{fig:QML_partialsky_wrongfiducial}
\end{figure}


\subsection{Comparison with pseudo-C$_\ell$}

We now compare our estimator with the traditional pseudo-C$_\ell$ method that is widely used for power spectrum estimation on the sphere. For the pseudo-C$_\ell$ method, the covariance matrix needs to be determined by Monte Carlo, while in our QML case we calculate it exactly in a dense covariance matrix. Therefore, the pseudo-C$_\ell$ analysis in total is often slower than our approach, for the low angular resolution where the QML is tractable. Of course, the pseudo-C$_\ell$ are tractable to far higher angular resolution.

\paragraph{Comparison to pseudo-$C_{\ell}$: Single Field.} We compare the performance of the QML estimator with the more conventional pseudo-$C_{\ell}$ approach in the single field case generated from the autopower spectrum $C^{a_*, a_*}_{\ell}$ in Eq.~\ref{eq:fiducial auto power w/ noise}. The pseudo-$C_{\ell}$ pipeline is implemented using the Python package \texttt{PyMaster}. We use the mask introduced in Fig.~\ref{fig:mask} as the input and construct bandpowers from $\ell = 1$ to $\ell = 46$ on a $\Delta\ell = 1$ basis. It is known that pseudo-$C_{\ell}$ estimates could be biased when the geometry of the mask is too complex, or when mask is not appropriately apodized. To test the pseudo-$C_{\ell}$ in an equivalent setting to the QML, we inject $10^5$ realizations to the pseudo-$C_{\ell}$ and plot the average power spectrum in Fig.~\ref{fig:pcl_convergence}. Modes beyond $\ell = 46$ are identified to be unreliable (at the border of our angular resolution). No apodization is needed to achieve unbiasedness at this low angular resolution.


\begin{figure}[h!]
    \centering
    \includegraphics[width=0.5\columnwidth]{pcl_convergence.pdf}
    \caption{Test of the pseudo-$C_{\ell}$ pipeline. Pseudo-$C_{\ell}$ estimates on the autopower $C^{a,a}_{\ell}$ from averaging $10^5$ pseudo-$C_{\ell}$ outputs. The pseudo-$C_{\ell}$ power spectrum is calculated using \texttt{PyMaster} without apodization to the mask. The red curve shows the fiducial power spectrum convolved with the bandpower window function. There is residual bias beyond $\ell = 46$. The spikiness of the fiducial power is due to the window function.}
    \label{fig:pcl_convergence}
\end{figure}

The left panel of Fig.~\ref{fig:QML_vs_PCL_1field} visualizes the QML and pseudo-$C_{\ell}$ power spectrum with their 1-sigma error bar. Note that while the pseudo-$C_{\ell}$ estimates are consistent with the fiducial power (green curve) within 1-sigma, they are more scattered compared to the QML estimates. The better quality of QML estimates is also illustrated in terms of the ratio of the error bars between the two methods, which increases from around 0.5 for large scale to 0.85 for small scale. For the single-field case, this ratio can be directly translated to the net improvement from switching the pseudo-$C_{\ell}$ estimator to a pixel-space QML estimator.


\begin{figure}[h!]
    \centering
    \includegraphics[width=0.9\columnwidth]{QML_vs_PCL_fin_1field.pdf}
    \caption{Comparison of pseudo-$C_{\ell}$ and QML error bars. Left: A comparison between pseudo-$C_{\ell}$ estimate and QML estimate of the autopower $C^{a, a}_{\ell}$ for the same input masked maps. The pseudo-$C_{\ell}$ power spectrum is evaluated with the \texttt{PyMaster} pipeline starting at $\ell = 1$. $\ell = 0$ has been deprojected with a pseudo-inverse covariance for QML output. The grey shaded region highlights the modes that fail to converge for both methods. Right: The ratio of the 1-sigma uncertainty between the QML estimates and the pseudo-$C_{\ell}$ output. QML yields the greatest improvement on large scales and gradually approaching to a constant ratio as $\ell$ increases.}
    \label{fig:QML_vs_PCL_1field}
\end{figure}

\paragraph{Comparison to pseudo-$C_{\ell}$: Two fields.}
For a setup with more than one input fields, the QML outputs the autopower spectrum for all fields and crosspower spectrum for any pair of fields. Parameter estimation can often benefit from the crosspowers, since they are more robust to systematics and calibration than the autopowers. Pseudo-$C_{\ell}$ consider only the information from the pair of associated field when constructing estimators for crosspowers. On the other hand, a multi-field QML pipeline constructs crosspower estimators by accounting the correlation of all fields, hence provides extra constraining power to the variance on top of its pixel-space nature.

We found that the QML outputs benefit the most from cross-correlation when the autopowers of fields are in a deep signal-dominant regime and differ a lot from each other. To illustrate this, we consider a simplified setup of one type $a$ field and one type $b$ field, where the fiducial power of $b$ field $S^{b,b}$, noise level $N_{\ell}$ and cross-correlation coefficient $A$ are modified as follows:
\begin{align}
    S^{a,a}_{\ell} = \ell^{-0.5}&,\,\, S^{b,b}_{\ell} = \ell^{-2}\, ,\\
    N_{\ell} =& 10^{-4} \, , \\
    A =& 0.9 \, ,
\end{align}
such that $C^{a,a}_{\ell} \approx S^{a,a}_{\ell} \gg S^{b,b}_{\ell} \approx C^{b,b}_{\ell}$. We consider two configurations of input fiducial power here, one with a dense pixel-space covariance matrix that incorporates autopowers and the crosspowers. The fiducial crosspower, $C^{a,b}_{fid}$, is set to zero for another configuration. This procedure follows the prescription in Sec.~\ref{subsec:deprojx} and helps the crosspower estimator to avoid contribution from autopowers, which could be less reliable due to systematics.

The left panel of Fig.~\ref{fig:QML_vs_PCL_2field} displays the ratio of the QML error bars to that of the pseudo-$C_{\ell}$ estimation for autopower $C^{aa}_{\ell}$ and cross power $C^{ab}_{\ell}$ on the right panel. The gray curve illustrates the configuration in which the fiducial crosspower is zeroed out in the QML pipeline, while the red curve utilizes the dense covariance matrix with the fiducial crosspower included. As expected, both the red and gray curves are consistently below 1, demonstrating the optimal nature of QML compared to pseudo-$C_{\ell}$. In addition, since zeroing out the fiducial crosspower can be understood as a special case of mismodeling the underlying fiducial power, the QML error bar should be larger than the one computed from the full covariance matrix. This is depicted by the ratio between the gray curve to the red curve, which is given by the bottom panel of each plot. 

The right plot in Fig.~\ref{fig:QML_vs_PCL_2field} answers an interesting question: How much of the improvement of a cross-power measurement with the QML over the pseudo-$C_{\ell}$ comes from the better pixel-wise weighting, and how much comes from the additional inclusion of auto-powers in the estimator (which is often undesirable because these are affected by systematics and calibration issues)? We see that for our setup, the improvement comes primarily from the better weighting.



\begin{figure}[h!]
    \centering
    \includegraphics[width=0.9\columnwidth]{QML_vs_PCL_fin_2field_fin.pdf}
    \caption{Influence of fiducial cross-powers on estimator error bars. Left: The ratio of QML error bar to the pseudo-$C_{\ell}$ error bars for the autopower $C^{a,a}_{\ell}$. Pseudo-$C_{\ell}$ error bars are evaluated from $5\times10^4$ simulations. The QML error bars represented in the gray curves are calculated using a pixel-space fiducial covariance matrix without crosspower contribution, while red curve uses the full covariance matrix. The bottom panel shows the ratio of the gray curve to the red curves. Right: Same as the left panel but for the crosspower $C^{a,b}_{\ell}$. An orange line at 1 is included in every plot to help identify that the ratio is consistently above/below 1.}
    \label{fig:QML_vs_PCL_2field}
\end{figure}

\subsection{Band-powering of the Fisher matrix} Following the procedure in Sec.~\ref{subsec:Bandpowered estimator}, we also demonstrate how bandpowering can be performed to deal with the non-invertability of the Fisher matrix $F_{\ell,\ell'}$ in the case of a severely limited sky region. We use the sky mask in Fig.~\ref{fig:bandpower_mask} with a sky fraction of around 0.055 for this test. We also employ a single-field configuration that follows the fiducial power setup for $C^{a,a}_{\ell}$ in Eq.~\ref{eq:fiducial auto power w/ noise}. The analytic Fisher elements $F_{\ell, \ell'}$ for $\ell = 10$ is presented as the gray curve in the left panel of Fig.~\ref{fig:QML_bpw}. While $F_{\ell, \ell'}$ is well-defined, it is poorly-conditioned for inversion. We therefore employ a bandpowering matrix $P_{b\ell}$ to the uncoupled estimators $\hat{y}_{\ell}$ that bins every 6 multipoles from $\ell = 1$ to $\ell = 43$ with a uniform weight. The bandpowered Fisher elements that centers at $\ell = 10$ are represented as the red curve in the left panel of Fig.~\ref{fig:QML_bpw}. By reducing the dimension, the bandpowered Fisher matrix becomes invertible, and bandpower estimates can be computed according Eq.~\ref{eq: bandpowering QML estimate}. We present the results in the right panel of Fig.~\ref{fig:QML_bpw}.

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.5\columnwidth]{QML_bpw_mask.pdf}
    \caption{Small sky fraction mask. An $N_{\text{side}}=16$ binary mask covering a connected patch in the sky with sky fraction is 0.055, the restricted minimum angular size of the unmasked region leads to a singular Fisher matrix.}
    \label{fig:bandpower_mask}
\end{figure}

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.9\columnwidth]{QML_bpw.pdf}
    \caption{Bandpowered analysis. Left: The Fisher element corresponds to the $\ell = 10$ coupling before (gray) and after (red) bandpowering. The bandpowering is performed by uniformly binning every 6 modes between $\ell = 1$ to $\ell = 43$, forming 7 bandpowers. The data points marks the center of each bandpower. The bandpowered Fisher elements are larger since they contain the information of several $\ell$. Right: The bandpowered QML computed from the bandpowered Fisher matrix, displayed as the red curve. This is to compare to the bandpowered fiducial $C^{a,a}_{\ell}$, which is given by the gray curve. The bandpowered Fisher matrix and QML estimates are calculated following the prescription in Eq.~\ref{eq: bandpowering y_ell}-Eq.~\ref{eq: bandpowering QML estimate}}
    \label{fig:QML_bpw}
\end{figure}


\subsection{Iterative parameter inference}

Finally, we discuss the use of the QML for power-spectrum-based parameter inference. 

\paragraph{QML as a parameter inference.}The fact that the pixel covariance matrix implicitly depends on the fiducial power spectrum relates the optimal QML estimator to the inference of power spectrum modeling parameters. If the modeling parameters are inferred from the initial QML estimates, the initial fiducial power leads to suboptimal error bars (see the orange shaded region in Fig.~\ref{fig:QML_partialsky_wrongfiducial}, for instance). As mentioned in~\cite{Bilbao_Ahedo_2021}, the mismatch between an initial guess on the fiducial power and the one that generates the observed maps can be addressed through an iterative process, where the fiducial power for the next QML estimator is updated from the output of the previous QML. In this section, instead of using a smoothened QML power spectrum as the new input, we explore the convergence to optimal estimate within the framework of a given model, such that the best-fit modeling parameters are inferred and used to compute the new fiducial power.

We generate a set of observed maps according to the fiducial powers in Eq.~\ref{eq:fiducial auto power w/ noise},~\ref{eq:fiducial cross power}. However, we construct the covariance matrix with modified auto-powers:
\begin{align}\label{eq:mismodelling parameters}
    \tilde{S}^{a_*, a_*}_{\ell} &=  A_a S^{a_*, a_*}_{\ell}\, , \nonumber \\
    \tilde{S}^{b_*, b_*}_{\ell} &=  A_b S^{b_*, b_*}_{\ell}\, , \nonumber \\
    \tilde{C}^{a_*, b_*}_{\ell} &= A\times\sqrt{\tilde{S}^{a_1, a_1}_{\ell}\times \tilde{S}^{b_1, b_1}_{\ell}} \, , \nonumber
\end{align}
Note that the two parameters $A_a$ and $A_b$ are included to introduce mismodeling into the covariance matrix so that the simulated maps have a fiducial setup of $A_a = 1, A_b = 1$. We consider two models $M_1: (A_a = 5, A_b = 20)$ and $M_2: (A_a = 0.7, A_b = 0.9)$. For each of the models, we construct a QML pipeline and inject the simulated maps to obtain power spectrum estimates. We assume the power spectrum estimates follow a Gaussian likelihood: 
\begin{equation}
\label{eq:log likelihood function}
    -2\ln\mathcal{L}(A_a, A_b|\hat{\tilde{C}}_{\ell}) = (\hat{\tilde{C}}_{\ell} - \tilde{C}_{\ell}(A_a, A_b))^T \tilde{F}_{\ell\ell'}(\hat{\tilde{C}}_{\ell'} - \tilde{C}_{\ell'}(A_a, A_b)) \, ,
\end{equation}
the quantity $\hat{\tilde{C}}_{\ell}$ should be understood as a vector of all QML estimates. $\tilde{F}_{\ell\ell'}$ is the analytic Fisher matrix from the QML pipeline, the tilde notation denotes a quantity that is derived from the mismodeled fiducial power. For this test case, we restrict ourselves to the QML estimates between $5 \leq \ell \leq 45$, where a Gaussian likelihood provides a good approximation. However, it is noted that the Wishart distribution should instead be used for analysis that includes modes with $\ell < 5$. To demonstrate the flexibility to extend to more complex and nonlinear models, we perform a Markov Chain Monte-Carlo (MCMC) sampling using the package \texttt{emcee} to determine the best-fit parameters $A_1, A_2$. The best-fit parameters from each iteration are then used to update the fiducial model in the following fashion:
\begin{align}\label{eq:fiducial model update}
    A^{i+1}_a = A^{i, \text{best-fit}}_a\times A^{i}_a \, , \nonumber \\
    A^{i+1}_b = A^{i, \text{best-fit}}_b\times A^{i}_b \, ,
\end{align}
where $A^{i, \text{best-fit}}_a$ is the best-fit parameter in the i-th iteration and $A^{i}_a$ is the modeling parameter that is used to construct the QML covariance matrix for the i-th iteration. The left panel of Fig.~\ref{fig:QML_iteration} shows the best-fit parameters computed from the mean of MCMC chains for 10 iterations, note that the modeling parameters for both models $M_1$ and $M_2$ already converge to the fiducial value $A_1 = A_2 = 1$ in the second iteration. The plot on the right displays the signal-to-noise ratio (SNR), defined as:
\begin{align}\label{eq:SNR definition}
    \text{SNR}^i &= \sqrt{(\mathbf{A}^{i})^T \text{Cov}^{-1}(\mathbf{A}^i)\mathbf{A}^i} \, ,
\end{align}
here $\mathbf{A}^{i} = (A^{i, \text{best-fit}}_a,  A^{i, \text{best-fit}}_b)$ is the flattened best-fit modeling parameter and $\text{Cov}^{-1}(\mathbf{A}^i)$ is the 2$\times$2 covariance matrix evaluated from the MCMC chains. While the SNR converges to the same value (30) and at the same rate as the modeling parameter for both models, one has to be careful about evaluating the SNR without any iterations, since it could be strongly biased by choice of fiducial power.

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.9\columnwidth]{QML_iteration.pdf}
    \caption{Iterative QML application. Left: The best-fit modeling parameter $A^{\text{best-fit}}_a, A^{\text{best-fit}}_b$ from taking the average of the MCMC sampling chain for the two mismodeled fiducial powers $M_1, M_2$ in 10 iterations. The shaded regions denotes the 1-sigma uncertainties, which is also calculated from the MCMC chains. All the modeling parameters quickly approach to the fiducial values $A_a = A_b = 1$ that are used to generate the observations. Right: The SNR computed according to Eq.~\ref{eq:SNR definition} for the two models. Depending on the exact choice of initial fiducial power, the SNR can over or undershoots the converging value.}
    \label{fig:QML_iteration}
\end{figure}
\paragraph{Different approaches in updating the fiducial power.} We recall that in~\cite{Bilbao_Ahedo_2021}, the fiducial power is updated using a smoothed QML output from the previous iteration. This method allows the QML pipeline to iterate for globally optimal errorbars that fit the observed data the best. Nevertheless, in more common circumstances where errorbars and SNR are quantified with respect to a given model with a certain number of free parameters, the iterative process in~\cite{Bilbao_Ahedo_2021} becomes less applicable. In our approach we combine QML estimation with parameter inference, either through MCMC sampling or likelihood maximization over the model space, such that the fiducial powers can be improved within restricted degrees of freedom. As shown in Fig.~\ref{fig:QML_iteration}, a local optimality can still be achieved by updating the best-fit modeling parameters, hence one can quantify the optimal error bars and SNR for a given model.


\section{Conclusion}
\label{sec:conclusion}
In this work, we developed the python-based QML estimator code \texttt{QML-FAST} for power spectrum estimation of redshift-binned spherical data, based on the QML formalism in~\cite{Tegmark_1997, Tegmark_2001}. While the QML has been used in modern CMB data analysis for example in ~\cite{Bilbao_Ahedo_2021} or for weak-lensing data in~\cite{Maraio_2023}, our pipeline extends the QML estimator to a large number of correlated fields. We incorporated a series of tests to illustrate the unbiasedness and optimality of our pipeline. We also employed a pseudo-inverse covariance construction to deproject unwanted modes from the pixel-space covariance matrix. By combining the QML output with parameter inference, we showed that an iterative scheme can be applied to optimize the best-fit parameters and variances with respect to a fixed fiducial model. Various computational optimizations, including the use of highly efficient libraries like \texttt{opt\_einsum} and \texttt{numba}, sparse matrix multiplication, and change of basis have been introduced to our pipeline to reduce the complexity of the calculation and to make memory allocation more efficient. For example, to get the QML estimates for the 2-by-2 fields configuration on $N_{\text{side}} = 16$ resolution requires less than a minute on a 24-core CPU. A more complicated and physical scenario presented in the companion paper~\cite{Lai2025kszpaper}, which contains 40-by-40 fields configuration on $N_{\text{side}} = 32$, takes only about an hour. The code, together with documentation and associated tutorial notebooks, is made available in~\url{https://github.com/ykvasiuk/qmlfast}. Our code will allow the optimal analysis of binned photometric galaxy survey data from current and upcoming surveys on large scales, in particular, primordial non-Gaussianity search with scale-dependent bias and kSZ velocity reconstruction. Because it features a binned pixel-wise covariance matrix, our code could also be useful to examine and de-project large-scale systematics that affect such analyses. 


\section*{Acknowledgements}
M.M., Y.K. and A.L acknowledge the support by the U.S. Department of Energy, Office of Science, Office of High Energy Physics under Award Number DE-SC0017647, the support by the National Science Foundation (NSF) under Grant Number 2307109 and 2509873 and
the Wisconsin Alumni Research Foundation (WARF). Y.K. is grateful for the hospitality of Perimeter Institute,  where a part of this work was done. KMS was supported by an NSERC Discovery Grant, by the Daniel Family Foundation, and by the Centre for the Universe at Perimeter Institute. Research at Perimeter Institute is supported in part by the Government of Canada through the Department of Innovation, Science and Economic Development Canada and by the Province of Ontario through the Ministry of Colleges and Universities.
\printbibliography
\appendix
\section{Variance due to mismodeling of the signal covariance}
\label{app:mismod_var}
Here, we show that the QML estimator, built with $\mathbb{C}_{fid}\neq\mathbb{C}_{true}$ is suboptimal. Let us \begin{itemize}
    \item assume we mismodel the signal covariance, but not the noise, so that the estimator is unbiased;
    \item absorb the noise term in the signal for brevity;
    \item denote with tildas the quantities derived from the mismodelled data covariance
\end{itemize} 
Then the following holds
\begin{equation}
        \langle \tilde{y}_A\rangle = \langle\pmb{\phi^T}\tilde{Q}_A\pmb{\phi}\rangle = \tilde{F}_{AB}c_B
\end{equation}
Without the mismodelling, we have
\begin{equation}
        \langle y_A\rangle = \langle\pmb{\phi^T}Q_A\pmb{\phi}\rangle = F_{AB}c_B
\end{equation}
Gaussian $\pmb{\phi}$ and symmetric $A,B$ satisfy
\begin{equation}
    \mathrm{cov}(\pmb{\phi^T}A\pmb{\phi}, \pmb{\phi^T}B\pmb{\phi}) = 2\texttt{Tr}[\mathbb{C}A\mathbb{C}B]
\end{equation}
Let's consider $\mathfrak{y}_A = \begin{pmatrix}
    y_A \\
    \tilde{y}_A
\end{pmatrix}$.
For the covariance $\mathrm{cov}(\mathfrak{y}_A,\mathfrak{y}_B)$, we can calculate:
\begin{itemize}
    \item $\mathrm{cov}(y_A,y_B) = F_{AB}$
    \item $\mathrm{cov}(y_A,\tilde{y}_B) = \frac{1}{2}\texttt{Tr}[\mathbb{C}\mathbb{C}^{-1}P_A\mathbb{C}^{-1}\mathbb{C}\tilde{\mathbb{C}}^{-1}P_B\tilde{\mathbb{C}}^{-1}] \equiv \tilde{F}_{AB}$
    \item $\mathrm{cov}(\tilde{y}_A,\tilde{y}_B) = \frac{1}{2}\texttt{Tr}[\mathbb{C}\tilde{\mathbb{C}}^{-1}P_A\tilde{\mathbb{C}}^{-1}\mathbb{C}\tilde{\mathbb{C}}^{-1}P_B\tilde{\mathbb{C}}^{-1}] \equiv G_{AB}$
\end{itemize}
So that
\begin{equation}
    \mathfrak{C}_{AB} = \mathrm{cov}(\mathfrak{y}_A,\mathfrak{y}_B) = \begin{pmatrix}
        F_{AB} & \tilde{F}_{AB} \\
        \tilde{F}_{AB} & G_{AB}
    \end{pmatrix}
\end{equation}
Because $\mathfrak{C}_{AB}$ is a covariance, it has to be at least positive semi-definite:
\begin{equation}
    \mathfrak{C}_{AB} 	\succeq 0
\end{equation}
(Statement "$A\succeq 0$" is equivalent to the statement "for any non-zero $x$, $x^TAx \geq 0$"). We assume that the inverses $\tilde{F}^{-1}$ and $F^{-1}$ exist. Then it follows that 
\begin{equation}
\label{eq:mism_var}
    \tilde{F}^{-1}G\tilde{F}^{-1} - F^{-1} \succeq 0
\end{equation}
It suffices to show that $v^T \big( \tilde{F}^{-1}G\tilde{F}^{-1} - F^{-1} \big) v \geq 0$ for any vector $v\ne 0$:
\begin{equation}
v^T \big( \tilde{F}^{-1}G\tilde{F}^{-1} - F^{-1} \big) v
  = \begin{pmatrix} -F^{-1}v & \tilde{F}^{-1}v \end{pmatrix}
  \underbrace{\begin{pmatrix}
      F & \tilde{F} \\ \tilde{F} & G
  \end{pmatrix}}_{=\mathfrak{C}_{AB}}
  \begin{pmatrix} -F^{-1}v \\ \tilde{F}^{-1}v \end{pmatrix}
  \geq 0  \hspace{1cm} \mbox{since } \mathfrak{C}_{AB} \succeq 0
\end{equation}
We can recognize the first term from the left in the equation \eqref{eq:mism_var} as the covariance matrix of the estimator $\tilde{\hat{c}}$.

\section{Pseudo-inverse in the case of $N$ fields}
\label{app:pi}
We are going to repeat the argument of \cite{Tegmark_1997} (Appendix C) first and then show how it extends to the general case. The original argument defines an orthogonal $N_p\times N_p$ matrix $R$ such that its first $\ell_{min}$ columns and rows are equal to the rows and columns of $Z$. In this basis, $\pi$ takes block-diagonal form:
\begin{equation}
    R\pi R^T = R[1 - ZZ^T]R^T = \begin{pmatrix}
        0 & 0 \\
        0 & 1
    \end{pmatrix}
\end{equation}
So does the deprojected covariance:
\begin{equation}
    R\pi C \pi^TR^T = \begin{pmatrix}
        0 & 0 \\
        0 & C_*
    \end{pmatrix}
\end{equation}
And for the pseudo-inverse $M$ one has in the same basis
\begin{equation}
    RMR^T = \begin{pmatrix}
        0 & 0 \\
        0 & 1
    \end{pmatrix} \left[\begin{pmatrix}
        0 & 0 \\
        0 & C_*
    \end{pmatrix}+ \begin{pmatrix}
        \eta1 & 0 \\
        0 & 0
    \end{pmatrix}\right]^{-1}\begin{pmatrix}
        0 & 0 \\
        0 & 1
    \end{pmatrix} = \begin{pmatrix}
        0 & 0 \\
        0 & C_*^{-1}
    \end{pmatrix}
\end{equation}
To see why the same argument works in the case of $N$ fields, it is useful to recall the properties of the commutation matrix $S$. Let $A$ be a $(p\times q)$ matrix and $B$ - $(m\times n)$ matrix. Then one of the equivalent definitions of the $(ab \times ab)$ matrix $S^{(a,b)}$ is via the property
\begin{equation}
    S^{(m,p)}(A \otimes B)S^{(q,n)} = B \otimes A
\end{equation}
Commutation matrix $S$ is orthogonal: 
\begin{equation}
    (S^{(a,b)})^T = S^{(b,a)} = (S^{(a,b)})^{-1}
\end{equation}
Throughout this paper, we have naturally assumed the covariance of the block form with $N_f\times N_f$ blocks of the size $N_p\times N_p$. More formally, we define decomposition
\begin{equation}
    \mathbb{C} = \sum_{ab \in \mathcal{F}}\sum_{ij \in \mathcal{P}} c_{ab;ij}E^{ab}_{\mathcal{F}} \otimes E^{ij}_\mathcal{P}
\end{equation}
with $\mathcal{F}$ and $\mathcal{P}$ representing fields and pixels correspondingly. It follows then that the action of $S^{(N_f,N_p)}$ switches the order of basis elements:
\begin{equation}
    \mathbb{C'} = S\mathbb{C}S^T = \sum_{ab \in \mathcal{F}}\sum_{ij \in \mathcal{P}} c_{ij;ab}E^{ij}_{\mathcal{P}} \otimes E^{ab}_\mathcal{F}
\end{equation}
For the projection operator $\Pi$, one gets:
\begin{equation}
    \mathrm{S}\Pi\mathrm{S^T} = \mathrm{S}[\mathbbm{1}_{N_f}\otimes \pi]\mathrm{S^T} = \pi \otimes \mathbbm{1}_{N_f}
\end{equation}
Without loss of generality, let's consider a case of two fields. The deprojected covariance takes the following form:
\begin{equation}
    \mathrm{\Pi}\mathbb{C}\mathrm{\Pi}^T = \begin{pmatrix}
        \pi C_{11} \pi^T & \pi C_{12} \pi^T \\
        \pi^T C^T_{12} \pi & \pi C_{22} \pi^T
    \end{pmatrix}
\end{equation}
In the basis defined by matrix $\mathbb{R} = \mathbbm{1}_{N_f} \otimes R$, we have:
\begin{equation}
\mathbb{R}\mathrm{\Pi}\mathbb{C}\mathrm{\Pi}^T\mathbb{R}^T = \begin{pmatrix}
        \begin{pmatrix}
        0 & 0 \\
        0 & C^{11}_{*}
    \end{pmatrix} & \begin{pmatrix}
        0 & 0 \\
        0 & C^{12}_*
    \end{pmatrix} \\
        \begin{pmatrix}
        0 & 0 \\
        0 & C^{21}_*
    \end{pmatrix} & \begin{pmatrix}
        0 & 0 \\
        0 & C^{22}_*
    \end{pmatrix}
    \end{pmatrix}
\end{equation}
The action of the commutation matrix S then gives:

\begin{equation}
\mathrm{S}\mathbb{R}\mathrm{\Pi}\mathbb{C}\mathrm{\Pi}^T\mathbb{R}^T\mathrm{S^T} = \begin{pmatrix}
        \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} & \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} \\
        \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} & \begin{pmatrix}
        C^{11}_* & C^{12}_* \\
        C^{21}_* & C^{22}_*
    \end{pmatrix}
    \end{pmatrix}
\end{equation}
Similarly, for the matrix $\mathbb{M}$, we have
\begin{align}
&(\mathrm{S}\mathbb{R})\mathbb{M}(\mathbb{R}^T\mathrm{S^T}) = \\
&=\begin{pmatrix}
        \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} & \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} \\
        \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} & \begin{pmatrix}
        1 & 0 \\
        0 & 1
    \end{pmatrix}
    \end{pmatrix}\times\begin{pmatrix}
        \begin{pmatrix}
        \eta^{-1}1 & 0 \\
        0 & \eta^{-1}1
    \end{pmatrix} & \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} \\
        \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} & \begin{pmatrix}
        C^{11}_* & C^{12}_* \\
        C^{21}_* & C^{22}_*
    \end{pmatrix}^{-1}
    \end{pmatrix}\times\begin{pmatrix}
        \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} & \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} \\
        \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} & \begin{pmatrix}
        1 & 0 \\
        0 & 1
    \end{pmatrix}
    \end{pmatrix} \\
    &=\begin{pmatrix}
        \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} & \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} \\
        \begin{pmatrix}
        0 & 0 \\
        0 & 0
    \end{pmatrix} & \begin{pmatrix}
        C^{11}_* & C^{12}_* \\
        C^{21}_* & C^{22}_*
    \end{pmatrix}^{-1}
    \end{pmatrix}
\end{align}
This completes the justification of the definition of $\mathbb{M}$. Similarly, one shows that the losslessness property holds as well.
\end{document}

% $ biblatex auxiliary file $
% $ biblatex bbl format version 3.3 $
% Do not modify the above lines!
%
% This is an auxiliary file used by the 'biblatex' package.
% This file may safely be deleted. It will be recreated by
% biber as required.
%
\begingroup
\makeatletter
\@ifundefined{ver@biblatex.sty}
  {\@latex@error
     {Missing 'biblatex' package}
     {The bibliography requires the 'biblatex' package.}
      \aftergroup\endinput}
  {}
\endgroup


\refsection{0}
  \datalist[entry]{none/global//global/global/global}
    \entry{Wandelt:2000av}{article}{}{}
      \name{author}{3}{}{%
        {{hash=63f05e18032df46f413ae4d011f9120e}{%
           family={Wandelt},
           familyi={W\bibinitperiod},
           given={Benjamin\bibnamedelima D.},
           giveni={B\bibinitperiod\bibinitdelim D\bibinitperiod}}}%
        {{hash=18c0a465699dfb9fd70996c3504a1471}{%
           family={Hivon},
           familyi={H\bibinitperiod},
           given={Eric},
           giveni={E\bibinitperiod}}}%
        {{hash=f5b967161d2b6c7ae87d457009328788}{%
           family={Gorski},
           familyi={G\bibinitperiod},
           given={Krzysztof\bibnamedelima M.},
           giveni={K\bibinitperiod\bibinitdelim M\bibinitperiod}}}%
      }
      \strng{namehash}{8368a63f23b93f809a254f36ac74c28c}
      \strng{fullhash}{8368a63f23b93f809a254f36ac74c28c}
      \strng{fullhashraw}{8368a63f23b93f809a254f36ac74c28c}
      \strng{bibnamehash}{8368a63f23b93f809a254f36ac74c28c}
      \strng{authorbibnamehash}{8368a63f23b93f809a254f36ac74c28c}
      \strng{authornamehash}{8368a63f23b93f809a254f36ac74c28c}
      \strng{authorfullhash}{8368a63f23b93f809a254f36ac74c28c}
      \strng{authorfullhashraw}{8368a63f23b93f809a254f36ac74c28c}
      \field{sortinit}{1}
      \field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{eprinttype}{arXiv}
      \field{journaltitle}{Phys. Rev. D}
      \field{title}{{The pseudo-c{\_}l method: cosmic microwave background anisotropy power spectrum statistics for high precision cosmology}}
      \field{volume}{64}
      \field{year}{2001}
      \field{pages}{083003}
      \range{pages}{1}
      \verb{doi}
      \verb 10.1103/PhysRevD.64.083003
      \endverb
      \verb{eprint}
      \verb astro-ph/0008111
      \endverb
    \endentry
    \entry{Tegmark_1997}{article}{}{}
      \name{author}{1}{}{%
        {{hash=b9b3c445e1013a97fc6318e06799b37b}{%
           family={Tegmark},
           familyi={T\bibinitperiod},
           given={Max},
           giveni={M\bibinitperiod}}}%
      }
      \list{publisher}{1}{%
        {American Physical Society (APS)}%
      }
      \strng{namehash}{b9b3c445e1013a97fc6318e06799b37b}
      \strng{fullhash}{b9b3c445e1013a97fc6318e06799b37b}
      \strng{fullhashraw}{b9b3c445e1013a97fc6318e06799b37b}
      \strng{bibnamehash}{b9b3c445e1013a97fc6318e06799b37b}
      \strng{authorbibnamehash}{b9b3c445e1013a97fc6318e06799b37b}
      \strng{authornamehash}{b9b3c445e1013a97fc6318e06799b37b}
      \strng{authorfullhash}{b9b3c445e1013a97fc6318e06799b37b}
      \strng{authorfullhashraw}{b9b3c445e1013a97fc6318e06799b37b}
      \field{extraname}{1}
      \field{sortinit}{2}
      \field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{issn}{1089-4918}
      \field{journaltitle}{Physical Review D}
      \field{month}{5}
      \field{number}{10}
      \field{title}{How to measure CMB power spectra without losing information}
      \field{volume}{55}
      \field{year}{1997}
      \field{pages}{5895\bibrangedash 5907}
      \range{pages}{13}
      \verb{doi}
      \verb 10.1103/physrevd.55.5895
      \endverb
      \verb{urlraw}
      \verb http://dx.doi.org/10.1103/PhysRevD.55.5895
      \endverb
      \verb{url}
      \verb http://dx.doi.org/10.1103/PhysRevD.55.5895
      \endverb
    \endentry
    \entry{Tegmark_2001}{article}{}{}
      \name{author}{2}{}{%
        {{hash=b9b3c445e1013a97fc6318e06799b37b}{%
           family={Tegmark},
           familyi={T\bibinitperiod},
           given={Max},
           giveni={M\bibinitperiod}}}%
        {{hash=bc77b9d64535ca1af29ebc56dcd363fe}{%
           family={Oliveira-Costa},
           familyi={O\bibinithyphendelim C\bibinitperiod},
           given={Angelica},
           giveni={A\bibinitperiod},
           prefix={de},
           prefixi={d\bibinitperiod}}}%
      }
      \list{publisher}{1}{%
        {American Physical Society (APS)}%
      }
      \strng{namehash}{c15a37dbda56ffc96dc42859855ad925}
      \strng{fullhash}{c15a37dbda56ffc96dc42859855ad925}
      \strng{fullhashraw}{c15a37dbda56ffc96dc42859855ad925}
      \strng{bibnamehash}{c15a37dbda56ffc96dc42859855ad925}
      \strng{authorbibnamehash}{c15a37dbda56ffc96dc42859855ad925}
      \strng{authornamehash}{c15a37dbda56ffc96dc42859855ad925}
      \strng{authorfullhash}{c15a37dbda56ffc96dc42859855ad925}
      \strng{authorfullhashraw}{c15a37dbda56ffc96dc42859855ad925}
      \field{sortinit}{3}
      \field{sortinithash}{ad6fe7482ffbd7b9f99c9e8b5dccd3d7}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{issn}{1089-4918}
      \field{journaltitle}{Physical Review D}
      \field{month}{8}
      \field{number}{6}
      \field{title}{How to measure CMB polarization power spectra without losing information}
      \field{volume}{64}
      \field{year}{2001}
      \verb{doi}
      \verb 10.1103/physrevd.64.063001
      \endverb
      \verb{urlraw}
      \verb http://dx.doi.org/10.1103/PhysRevD.64.063001
      \endverb
      \verb{url}
      \verb http://dx.doi.org/10.1103/PhysRevD.64.063001
      \endverb
    \endentry
    \entry{Gjerl_w_2015}{article}{}{}
      \name{author}{8}{}{%
        {{hash=f2dfe3c5d65e691565500a7ccd2c71aa}{%
           family={Gjerløw},
           familyi={G\bibinitperiod},
           given={E.},
           giveni={E\bibinitperiod}}}%
        {{hash=0012454a15fcbdacec806b9a5bfcacda}{%
           family={Colombo},
           familyi={C\bibinitperiod},
           given={L.\bibnamedelimi P.\bibnamedelimi L.},
           giveni={L\bibinitperiod\bibinitdelim P\bibinitperiod\bibinitdelim L\bibinitperiod}}}%
        {{hash=64bd0df945d4f2a6ecb2b80de474ab41}{%
           family={Eriksen},
           familyi={E\bibinitperiod},
           given={H.\bibnamedelimi K.},
           giveni={H\bibinitperiod\bibinitdelim K\bibinitperiod}}}%
        {{hash=23e4ad315635e35af89b2fc44906f01a}{%
           family={Górski},
           familyi={G\bibinitperiod},
           given={K.\bibnamedelimi M.},
           giveni={K\bibinitperiod\bibinitdelim M\bibinitperiod}}}%
        {{hash=7dd50b4cbefb7fadcbd7866d82a9fd20}{%
           family={Gruppuso},
           familyi={G\bibinitperiod},
           given={A.},
           giveni={A\bibinitperiod}}}%
        {{hash=b2c3bb916f8f31021ca435e01659bcb4}{%
           family={Jewell},
           familyi={J\bibinitperiod},
           given={J.\bibnamedelimi B.},
           giveni={J\bibinitperiod\bibinitdelim B\bibinitperiod}}}%
        {{hash=88c200cfaf5decefe1825197719e0f06}{%
           family={Plaszczynski},
           familyi={P\bibinitperiod},
           given={S.},
           giveni={S\bibinitperiod}}}%
        {{hash=eafe8e325328fc85d499e23eafaacf1d}{%
           family={Wehus},
           familyi={W\bibinitperiod},
           given={I.\bibnamedelimi K.},
           giveni={I\bibinitperiod\bibinitdelim K\bibinitperiod}}}%
      }
      \list{publisher}{1}{%
        {American Astronomical Society}%
      }
      \strng{namehash}{c5c98805344a1e638cd3527bfb45713f}
      \strng{fullhash}{405bd6ccb26ad85ddcfd30838db7e060}
      \strng{fullhashraw}{405bd6ccb26ad85ddcfd30838db7e060}
      \strng{bibnamehash}{c5c98805344a1e638cd3527bfb45713f}
      \strng{authorbibnamehash}{c5c98805344a1e638cd3527bfb45713f}
      \strng{authornamehash}{c5c98805344a1e638cd3527bfb45713f}
      \strng{authorfullhash}{405bd6ccb26ad85ddcfd30838db7e060}
      \strng{authorfullhashraw}{405bd6ccb26ad85ddcfd30838db7e060}
      \field{sortinit}{4}
      \field{sortinithash}{9381316451d1b9788675a07e972a12a7}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{issn}{1538-4365}
      \field{journaltitle}{The Astrophysical Journal Supplement Series}
      \field{month}{10}
      \field{number}{1}
      \field{title}{OPTIMIZED LARGE-SCALE CMB LIKELIHOOD AND QUADRATIC MAXIMUM LIKELIHOOD POWER SPECTRUM ESTIMATION}
      \field{volume}{221}
      \field{year}{2015}
      \field{pages}{5}
      \range{pages}{1}
      \verb{doi}
      \verb 10.1088/0067-0049/221/1/5
      \endverb
      \verb{urlraw}
      \verb http://dx.doi.org/10.1088/0067-0049/221/1/5
      \endverb
      \verb{url}
      \verb http://dx.doi.org/10.1088/0067-0049/221/1/5
      \endverb
    \endentry
    \entry{Vanneste:2018azc}{article}{}{}
      \name{author}{4}{}{%
        {{hash=0858ccf04393a498f9212a3d37c8d6e3}{%
           family={Vanneste},
           familyi={V\bibinitperiod},
           given={S.},
           giveni={S\bibinitperiod}}}%
        {{hash=3dbdde9d123771a93c69d7c21cabe0ef}{%
           family={Henrot-Versillé},
           familyi={H\bibinithyphendelim V\bibinitperiod},
           given={S.},
           giveni={S\bibinitperiod}}}%
        {{hash=b1ea85fab6d84d8aeaadd94530ad7613}{%
           family={Louis},
           familyi={L\bibinitperiod},
           given={T.},
           giveni={T\bibinitperiod}}}%
        {{hash=174b72c28d65a56a25c3641b4dade29e}{%
           family={Tristram},
           familyi={T\bibinitperiod},
           given={M.},
           giveni={M\bibinitperiod}}}%
      }
      \strng{namehash}{67f82f5d49fffc4a6ea8339d67455410}
      \strng{fullhash}{8c6d9dd3658927604532e49c34e2f265}
      \strng{fullhashraw}{8c6d9dd3658927604532e49c34e2f265}
      \strng{bibnamehash}{67f82f5d49fffc4a6ea8339d67455410}
      \strng{authorbibnamehash}{67f82f5d49fffc4a6ea8339d67455410}
      \strng{authornamehash}{67f82f5d49fffc4a6ea8339d67455410}
      \strng{authorfullhash}{8c6d9dd3658927604532e49c34e2f265}
      \strng{authorfullhashraw}{8c6d9dd3658927604532e49c34e2f265}
      \field{sortinit}{5}
      \field{sortinithash}{20e9b4b0b173788c5dace24730f47d8c}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{eprintclass}{astro-ph.CO}
      \field{eprinttype}{arXiv}
      \field{journaltitle}{Phys. Rev. D}
      \field{number}{10}
      \field{title}{{Quadratic estimator for CMB cross-correlation}}
      \field{volume}{98}
      \field{year}{2018}
      \field{pages}{103526}
      \range{pages}{1}
      \verb{doi}
      \verb 10.1103/PhysRevD.98.103526
      \endverb
      \verb{eprint}
      \verb 1807.02484
      \endverb
    \endentry
    \entry{Bilbao_Ahedo_2021}{article}{}{}
      \name{author}{5}{}{%
        {{hash=ca9a43414ac13063486e67e60250751e}{%
           family={Bilbao-Ahedo},
           familyi={B\bibinithyphendelim A\bibinitperiod},
           given={J.D.},
           giveni={J\bibinitperiod}}}%
        {{hash=5d39e7673aa4212da24dff088d357fc1}{%
           family={Barreiro},
           familyi={B\bibinitperiod},
           given={R.B.},
           giveni={R\bibinitperiod}}}%
        {{hash=6a27f92e5c4048e33b165c7b5b76a601}{%
           family={Vielva},
           familyi={V\bibinitperiod},
           given={P.},
           giveni={P\bibinitperiod}}}%
        {{hash=92b7bcf52a91dbe50c3c499698d850af}{%
           family={Martínez-González},
           familyi={M\bibinithyphendelim G\bibinitperiod},
           given={E.},
           giveni={E\bibinitperiod}}}%
        {{hash=91f83f0d79c71a4fe7c4cb54551b8530}{%
           family={Herranz},
           familyi={H\bibinitperiod},
           given={D.},
           giveni={D\bibinitperiod}}}%
      }
      \list{publisher}{1}{%
        {IOP Publishing}%
      }
      \strng{namehash}{e5723ec0cf34a9797462aca084b677be}
      \strng{fullhash}{acba38272a9cb9c990aacd52cde5fc49}
      \strng{fullhashraw}{acba38272a9cb9c990aacd52cde5fc49}
      \strng{bibnamehash}{e5723ec0cf34a9797462aca084b677be}
      \strng{authorbibnamehash}{e5723ec0cf34a9797462aca084b677be}
      \strng{authornamehash}{e5723ec0cf34a9797462aca084b677be}
      \strng{authorfullhash}{acba38272a9cb9c990aacd52cde5fc49}
      \strng{authorfullhashraw}{acba38272a9cb9c990aacd52cde5fc49}
      \field{sortinit}{6}
      \field{sortinithash}{b33bc299efb3c36abec520a4c896a66d}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{issn}{1475-7516}
      \field{journaltitle}{Journal of Cosmology and Astroparticle Physics}
      \field{month}{7}
      \field{number}{07}
      \field{title}{ECLIPSE: a fast Quadratic Maximum Likelihood estimator for CMB intensity and polarization power spectra}
      \field{volume}{2021}
      \field{year}{2021}
      \field{pages}{034}
      \range{pages}{1}
      \verb{doi}
      \verb 10.1088/1475-7516/2021/07/034
      \endverb
      \verb{urlraw}
      \verb http://dx.doi.org/10.1088/1475-7516/2021/07/034
      \endverb
      \verb{url}
      \verb http://dx.doi.org/10.1088/1475-7516/2021/07/034
      \endverb
    \endentry
    \entry{Maraio_2023}{article}{}{}
      \name{author}{3}{}{%
        {{hash=90778523d1e3ddad37df4ed18976778c}{%
           family={Maraio},
           familyi={M\bibinitperiod},
           given={Alessandro},
           giveni={A\bibinitperiod}}}%
        {{hash=e8253182adf1ee08b8111ef6c7c798ef}{%
           family={Hall},
           familyi={H\bibinitperiod},
           given={Alex},
           giveni={A\bibinitperiod}}}%
        {{hash=10f40b39bd21cfc4a2b4f8ecd33ce36a}{%
           family={Taylor},
           familyi={T\bibinitperiod},
           given={Andy},
           giveni={A\bibinitperiod}}}%
      }
      \list{publisher}{1}{%
        {Oxford University Press (OUP)}%
      }
      \strng{namehash}{3257c8d594fe8e11de5ff9f1af773af5}
      \strng{fullhash}{3257c8d594fe8e11de5ff9f1af773af5}
      \strng{fullhashraw}{3257c8d594fe8e11de5ff9f1af773af5}
      \strng{bibnamehash}{3257c8d594fe8e11de5ff9f1af773af5}
      \strng{authorbibnamehash}{3257c8d594fe8e11de5ff9f1af773af5}
      \strng{authornamehash}{3257c8d594fe8e11de5ff9f1af773af5}
      \strng{authorfullhash}{3257c8d594fe8e11de5ff9f1af773af5}
      \strng{authorfullhashraw}{3257c8d594fe8e11de5ff9f1af773af5}
      \field{sortinit}{7}
      \field{sortinithash}{108d0be1b1bee9773a1173443802c0a3}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{issn}{1365-2966}
      \field{journaltitle}{Monthly Notices of the Royal Astronomical Society}
      \field{month}{2}
      \field{number}{4}
      \field{title}{Testing quadratic maximum likelihood estimators for forthcoming Stage-IV weak lensing surveys}
      \field{volume}{520}
      \field{year}{2023}
      \field{pages}{4836\bibrangedash 4852}
      \range{pages}{17}
      \verb{doi}
      \verb 10.1093/mnras/stad426
      \endverb
      \verb{urlraw}
      \verb http://dx.doi.org/10.1093/mnras/stad426
      \endverb
      \verb{url}
      \verb http://dx.doi.org/10.1093/mnras/stad426
      \endverb
    \endentry
    \entry{Terawaki:2025:weak_lensing}{article}{}{}
      \name{author}{3}{}{%
        {{hash=f4ff3b54ac3b5540804dcf3d323b712d}{%
           family={Terawaki},
           familyi={T\bibinitperiod},
           given={Taisei},
           giveni={T\bibinitperiod}}}%
        {{hash=40e9a4a92df465e4b32fc6ae4e695333}{%
           family={Takada},
           familyi={T\bibinitperiod},
           given={Masahiro},
           giveni={M\bibinitperiod}}}%
        {{hash=690121cf68fd1d4bc0b7c5dbeeec8591}{%
           family={Taniguchi},
           familyi={T\bibinitperiod},
           given={Takanori},
           giveni={T\bibinitperiod}}}%
      }
      \strng{namehash}{e457da97af8171b7aa7b3fd2211305ef}
      \strng{fullhash}{e457da97af8171b7aa7b3fd2211305ef}
      \strng{fullhashraw}{e457da97af8171b7aa7b3fd2211305ef}
      \strng{bibnamehash}{e457da97af8171b7aa7b3fd2211305ef}
      \strng{authorbibnamehash}{e457da97af8171b7aa7b3fd2211305ef}
      \strng{authornamehash}{e457da97af8171b7aa7b3fd2211305ef}
      \strng{authorfullhash}{e457da97af8171b7aa7b3fd2211305ef}
      \strng{authorfullhashraw}{e457da97af8171b7aa7b3fd2211305ef}
      \field{sortinit}{8}
      \field{sortinithash}{a231b008ebf0ecbe0b4d96dcc159445f}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{eprintclass}{astro-ph.CO}
      \field{eprinttype}{arXiv}
      \field{month}{7}
      \field{title}{{Quadratic estimators for unwindowed power spectrum of galaxy-galaxy weak lensing and its application to $P_{\rm gm}(k)$ estimation}}
      \field{year}{2025}
      \verb{eprint}
      \verb 2507.18789
      \endverb
    \endentry
    \entry{Lai2025kszpaper}{article}{}{}
      \name{author}{3}{}{%
        {{hash=23803a392c0dff063ac8fffce707b5e8}{%
           family={Lai},
           familyi={L\bibinitperiod},
           given={Anderson\bibnamedelimb C.\bibnamedelimi M.},
           giveni={A\bibinitperiod\bibinitdelim C\bibinitperiod\bibinitdelim M\bibinitperiod}}}%
        {{hash=651a7ccb6b4988c368b72d91b871816d}{%
           family={Kvasiuk},
           familyi={K\bibinitperiod},
           given={Yurii},
           giveni={Y\bibinitperiod}}}%
        {{hash=b540ff98c0fa9d26cbe8ad29b7c4801f}{%
           family={Münchmeyer},
           familyi={M\bibinitperiod},
           given={Moritz},
           giveni={M\bibinitperiod}}}%
      }
      \strng{namehash}{23f7c12d5b30d51e83a70d0dd1cd0f65}
      \strng{fullhash}{23f7c12d5b30d51e83a70d0dd1cd0f65}
      \strng{fullhashraw}{23f7c12d5b30d51e83a70d0dd1cd0f65}
      \strng{bibnamehash}{23f7c12d5b30d51e83a70d0dd1cd0f65}
      \strng{authorbibnamehash}{23f7c12d5b30d51e83a70d0dd1cd0f65}
      \strng{authornamehash}{23f7c12d5b30d51e83a70d0dd1cd0f65}
      \strng{authorfullhash}{23f7c12d5b30d51e83a70d0dd1cd0f65}
      \strng{authorfullhashraw}{23f7c12d5b30d51e83a70d0dd1cd0f65}
      \field{sortinit}{1}
      \field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{eprintclass}{astro-ph.CO}
      \field{eprinttype}{arXiv}
      \field{month}{6}
      \field{title}{{KSZ Velocity Reconstruction with ACT and DESI-LS using a Tomographic QML Power Spectrum Estimator}}
      \field{year}{2025}
      \verb{eprint}
      \verb 2506.21684
      \endverb
    \endentry
    \entry{Tegmark_1996}{article}{}{}
      \name{author}{1}{}{%
        {{hash=e1192849db13e443ab3ce0607d56773e}{%
           family={Tegmark},
           familyi={T\bibinitperiod},
           given={M.},
           giveni={M\bibinitperiod}}}%
      }
      \list{publisher}{1}{%
        {Oxford University Press (OUP)}%
      }
      \strng{namehash}{e1192849db13e443ab3ce0607d56773e}
      \strng{fullhash}{e1192849db13e443ab3ce0607d56773e}
      \strng{fullhashraw}{e1192849db13e443ab3ce0607d56773e}
      \strng{bibnamehash}{e1192849db13e443ab3ce0607d56773e}
      \strng{authorbibnamehash}{e1192849db13e443ab3ce0607d56773e}
      \strng{authornamehash}{e1192849db13e443ab3ce0607d56773e}
      \strng{authorfullhash}{e1192849db13e443ab3ce0607d56773e}
      \strng{authorfullhashraw}{e1192849db13e443ab3ce0607d56773e}
      \field{extraname}{2}
      \field{sortinit}{1}
      \field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{issn}{1365-2966}
      \field{journaltitle}{Monthly Notices of the Royal Astronomical Society}
      \field{month}{5}
      \field{number}{1}
      \field{title}{A method for extracting maximum resolution power spectra from microwave sky maps}
      \field{volume}{280}
      \field{year}{1996}
      \field{pages}{299\bibrangedash 308}
      \range{pages}{10}
      \verb{doi}
      \verb 10.1093/mnras/280.1.299
      \endverb
      \verb{urlraw}
      \verb http://dx.doi.org/10.1093/mnras/280.1.299
      \endverb
      \verb{url}
      \verb http://dx.doi.org/10.1093/mnras/280.1.299
      \endverb
    \endentry
    \entry{Smith2018}{article}{}{}
      \name{author}{2}{}{%
        {{hash=0422ec418ed690a32ed5a1e89cb518fd}{%
           family={Smith},
           familyi={S\bibinitperiod},
           given={Daniel\bibnamedelima G.},
           giveni={D\bibinitperiod\bibinitdelim G\bibinitperiod},
           prefix={a.},
           prefixi={a\bibinitperiod}}}%
        {{hash=f80d9df3eff02314b535af35952e6013}{%
           family={Gray},
           familyi={G\bibinitperiod},
           given={Johnnie},
           giveni={J\bibinitperiod}}}%
      }
      \list{publisher}{1}{%
        {The Open Journal}%
      }
      \strng{namehash}{5032a3697a68ab6054297ed4cd8695ba}
      \strng{fullhash}{5032a3697a68ab6054297ed4cd8695ba}
      \strng{fullhashraw}{5032a3697a68ab6054297ed4cd8695ba}
      \strng{bibnamehash}{5032a3697a68ab6054297ed4cd8695ba}
      \strng{authorbibnamehash}{5032a3697a68ab6054297ed4cd8695ba}
      \strng{authornamehash}{5032a3697a68ab6054297ed4cd8695ba}
      \strng{authorfullhash}{5032a3697a68ab6054297ed4cd8695ba}
      \strng{authorfullhashraw}{5032a3697a68ab6054297ed4cd8695ba}
      \field{sortinit}{1}
      \field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{journaltitle}{Journal of Open Source Software}
      \field{number}{26}
      \field{title}{opt\_einsum - A Python package for optimizing contraction order for einsum-like expressions}
      \field{volume}{3}
      \field{year}{2018}
      \field{pages}{753}
      \range{pages}{1}
      \verb{doi}
      \verb 10.21105/joss.00753
      \endverb
      \verb{urlraw}
      \verb https://doi.org/10.21105/joss.00753
      \endverb
      \verb{url}
      \verb https://doi.org/10.21105/joss.00753
      \endverb
    \endentry
    \entry{lam2015numba}{inproceedings}{}{}
      \name{author}{3}{}{%
        {{hash=31e738d2abdeaf4aad96d0dc47e87405}{%
           family={Lam},
           familyi={L\bibinitperiod},
           given={Siu\bibnamedelima Kwan},
           giveni={S\bibinitperiod\bibinitdelim K\bibinitperiod}}}%
        {{hash=5367bdb73444f39a0ea034f24f104805}{%
           family={Pitrou},
           familyi={P\bibinitperiod},
           given={Antoine},
           giveni={A\bibinitperiod}}}%
        {{hash=b8f8a4b90ef94fad8c504d0a293755d9}{%
           family={Seibert},
           familyi={S\bibinitperiod},
           given={Stanley},
           giveni={S\bibinitperiod}}}%
      }
      \strng{namehash}{0e3fe92a0dc3d3c6114b4c4a7b5319a4}
      \strng{fullhash}{0e3fe92a0dc3d3c6114b4c4a7b5319a4}
      \strng{fullhashraw}{0e3fe92a0dc3d3c6114b4c4a7b5319a4}
      \strng{bibnamehash}{0e3fe92a0dc3d3c6114b4c4a7b5319a4}
      \strng{authorbibnamehash}{0e3fe92a0dc3d3c6114b4c4a7b5319a4}
      \strng{authornamehash}{0e3fe92a0dc3d3c6114b4c4a7b5319a4}
      \strng{authorfullhash}{0e3fe92a0dc3d3c6114b4c4a7b5319a4}
      \strng{authorfullhashraw}{0e3fe92a0dc3d3c6114b4c4a7b5319a4}
      \field{sortinit}{1}
      \field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{booktitle}{Proceedings of the Second Workshop on the LLVM Compiler Infrastructure in HPC}
      \field{title}{Numba: A llvm-based python jit compiler}
      \field{year}{2015}
      \field{pages}{1\bibrangedash 6}
      \range{pages}{6}
    \endentry
    \entry{Zonca2019:Healpix1}{article}{}{}
      \name{author}{7}{}{%
        {{hash=2442ed961fc7054de13ff6b3c9f1a221}{%
           family={Zonca},
           familyi={Z\bibinitperiod},
           given={Andrea},
           giveni={A\bibinitperiod}}}%
        {{hash=added7a1fe8f01c7623aee008ae10c27}{%
           family={Singer},
           familyi={S\bibinitperiod},
           given={Leo},
           giveni={L\bibinitperiod}}}%
        {{hash=5b1634a235477ae48039554372077354}{%
           family={Lenz},
           familyi={L\bibinitperiod},
           given={Daniel},
           giveni={D\bibinitperiod}}}%
        {{hash=e31e9ca16950ddb0b61f4bcc820416a7}{%
           family={Reinecke},
           familyi={R\bibinitperiod},
           given={Martin},
           giveni={M\bibinitperiod}}}%
        {{hash=d38c5cf1e2120edc3e1df893e2595e0f}{%
           family={Rosset},
           familyi={R\bibinitperiod},
           given={Cyrille},
           giveni={C\bibinitperiod}}}%
        {{hash=18c0a465699dfb9fd70996c3504a1471}{%
           family={Hivon},
           familyi={H\bibinitperiod},
           given={Eric},
           giveni={E\bibinitperiod}}}%
        {{hash=b6d94f26b371ee3078724f160d1bc23b}{%
           family={Gorski},
           familyi={G\bibinitperiod},
           given={Krzysztof},
           giveni={K\bibinitperiod}}}%
      }
      \list{publisher}{1}{%
        {The Open Journal}%
      }
      \strng{namehash}{ffb1748d87b140c4ce19cbbb7c47c22b}
      \strng{fullhash}{cf176056c03654b47b92d5d489ffe819}
      \strng{fullhashraw}{cf176056c03654b47b92d5d489ffe819}
      \strng{bibnamehash}{ffb1748d87b140c4ce19cbbb7c47c22b}
      \strng{authorbibnamehash}{ffb1748d87b140c4ce19cbbb7c47c22b}
      \strng{authornamehash}{ffb1748d87b140c4ce19cbbb7c47c22b}
      \strng{authorfullhash}{cf176056c03654b47b92d5d489ffe819}
      \strng{authorfullhashraw}{cf176056c03654b47b92d5d489ffe819}
      \field{sortinit}{1}
      \field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{journaltitle}{Journal of Open Source Software}
      \field{month}{3}
      \field{number}{35}
      \field{title}{healpy: equal area pixelization and spherical harmonics transforms for data on the sphere in Python}
      \field{volume}{4}
      \field{year}{2019}
      \field{pages}{1298}
      \range{pages}{1}
      \verb{doi}
      \verb 10.21105/joss.01298
      \endverb
      \verb{urlraw}
      \verb https://doi.org/10.21105/joss.01298
      \endverb
      \verb{url}
      \verb https://doi.org/10.21105/joss.01298
      \endverb
    \endentry
    \entry{2005ApJ:Healpix2}{article}{}{}
      \name{author}{7}{}{%
        {{hash=23e4ad315635e35af89b2fc44906f01a}{%
           family={{Górski}},
           familyi={G\bibinitperiod},
           given={K.\bibnamedelimi M.},
           giveni={K\bibinitperiod\bibinitdelim M\bibinitperiod}}}%
        {{hash=bd44eacd36cd07f70a26bcd344209e22}{%
           family={{Hivon}},
           familyi={H\bibinitperiod},
           given={E.},
           giveni={E\bibinitperiod}}}%
        {{hash=f3d862cbc08a419afdc99977d27338bc}{%
           family={{Banday}},
           familyi={B\bibinitperiod},
           given={A.\bibnamedelimi J.},
           giveni={A\bibinitperiod\bibinitdelim J\bibinitperiod}}}%
        {{hash=889a1896f2e2b2b3b3e5e5d23ae13c72}{%
           family={{Wandelt}},
           familyi={W\bibinitperiod},
           given={B.\bibnamedelimi D.},
           giveni={B\bibinitperiod\bibinitdelim D\bibinitperiod}}}%
        {{hash=7aebafad76356ba7f0dbf60e86b20b64}{%
           family={{Hansen}},
           familyi={H\bibinitperiod},
           given={F.\bibnamedelimi K.},
           giveni={F\bibinitperiod\bibinitdelim K\bibinitperiod}}}%
        {{hash=949f3cbf08e30a3269ac344cef603e79}{%
           family={{Reinecke}},
           familyi={R\bibinitperiod},
           given={M.},
           giveni={M\bibinitperiod}}}%
        {{hash=c2a2f542a4b2c906fdfae0edc151364a}{%
           family={{Bartelmann}},
           familyi={B\bibinitperiod},
           given={M.},
           giveni={M\bibinitperiod}}}%
      }
      \strng{namehash}{1d9ee49f1da3fb12791f203960214672}
      \strng{fullhash}{bf2fb5c4b72568630705450c579930b3}
      \strng{fullhashraw}{bf2fb5c4b72568630705450c579930b3}
      \strng{bibnamehash}{1d9ee49f1da3fb12791f203960214672}
      \strng{authorbibnamehash}{1d9ee49f1da3fb12791f203960214672}
      \strng{authornamehash}{1d9ee49f1da3fb12791f203960214672}
      \strng{authorfullhash}{bf2fb5c4b72568630705450c579930b3}
      \strng{authorfullhashraw}{bf2fb5c4b72568630705450c579930b3}
      \field{sortinit}{1}
      \field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{journaltitle}{ApJ}
      \field{month}{4}
      \field{title}{{HEALPix: A Framework for High-Resolution Discretization and Fast Analysis of Data Distributed on the Sphere}}
      \field{volume}{622}
      \field{year}{2005}
      \field{pages}{759\bibrangedash 771}
      \range{pages}{13}
      \verb{doi}
      \verb 10.1086/427976
      \endverb
      \verb{eprint}
      \verb arXiv:astro-ph/0409513
      \endverb
      \keyw{Cosmology: Cosmic Microwave Background,Cosmology: Observations,Methods: Statistical}
    \endentry
    \entry{DR6}{misc}{}{}
      \name{author}{172}{}{%
        {{hash=9f1ea279256efb3cdbd47bfcad5ede99}{%
           family={Calabrese},
           familyi={C\bibinitperiod},
           given={Erminia},
           giveni={E\bibinitperiod}}}%
        {{hash=02b0eb768c2f8efdc6176ecd7c5b0f7b}{%
           family={Hill},
           familyi={H\bibinitperiod},
           given={J.\bibnamedelimi Colin},
           giveni={J\bibinitperiod\bibinitdelim C\bibinitperiod}}}%
        {{hash=2eb8bcc2e7b2e0a9f63d02c6e57aa66d}{%
           family={Jense},
           familyi={J\bibinitperiod},
           given={Hidde\bibnamedelima T.},
           giveni={H\bibinitperiod\bibinitdelim T\bibinitperiod}}}%
        {{hash=d00e3c94d25a0429123db506638db163}{%
           family={Posta},
           familyi={P\bibinitperiod},
           given={Adrien\bibnamedelima La},
           giveni={A\bibinitperiod\bibinitdelim L\bibinitperiod}}}%
        {{hash=8517cd52514f87bb79ab19d383503b9b}{%
           family={Abril-Cabezas},
           familyi={A\bibinithyphendelim C\bibinitperiod},
           given={Irene},
           giveni={I\bibinitperiod}}}%
        {{hash=569b33928af5bc6db5668b15765eb266}{%
           family={Addison},
           familyi={A\bibinitperiod},
           given={Graeme\bibnamedelima E.},
           giveni={G\bibinitperiod\bibinitdelim E\bibinitperiod}}}%
        {{hash=1ed18fcaf82706a034b6c0d9fc3a0b8c}{%
           family={Ade},
           familyi={A\bibinitperiod},
           given={Peter\bibnamedelimb A.\bibnamedelimi R.},
           giveni={P\bibinitperiod\bibinitdelim A\bibinitperiod\bibinitdelim R\bibinitperiod}}}%
        {{hash=5ba8e19ce08ba4d9312d7f3be2c5efff}{%
           family={Aiola},
           familyi={A\bibinitperiod},
           given={Simone},
           giveni={S\bibinitperiod}}}%
        {{hash=f7821a4d518f597f3683a8687879be65}{%
           family={Alford},
           familyi={A\bibinitperiod},
           given={Tommy},
           giveni={T\bibinitperiod}}}%
        {{hash=616de3263b076cfa5c29bf8927a1b333}{%
           family={Alonso},
           familyi={A\bibinitperiod},
           given={David},
           giveni={D\bibinitperiod}}}%
        {{hash=ae77d70b59feaf34acfa9c6c8760302c}{%
           family={Amiri},
           familyi={A\bibinitperiod},
           given={Mandana},
           giveni={M\bibinitperiod}}}%
        {{hash=cb6c97635b89c800d046478e4a2dc59f}{%
           family={An},
           familyi={A\bibinitperiod},
           given={Rui},
           giveni={R\bibinitperiod}}}%
        {{hash=8cdc63fa3936f96fdef4e4cf9129d3eb}{%
           family={Atkins},
           familyi={A\bibinitperiod},
           given={Zachary},
           giveni={Z\bibinitperiod}}}%
        {{hash=8ff6f46c1336d9188363023408521202}{%
           family={Austermann},
           familyi={A\bibinitperiod},
           given={Jason\bibnamedelima E.},
           giveni={J\bibinitperiod\bibinitdelim E\bibinitperiod}}}%
        {{hash=e43a3a43cc9312124164a8461c79fd7a}{%
           family={Barbavara},
           familyi={B\bibinitperiod},
           given={Eleonora},
           giveni={E\bibinitperiod}}}%
        {{hash=bf9d4e04fb9ad746bb70aaffbcac5dd1}{%
           family={Barbieri},
           familyi={B\bibinitperiod},
           given={Nicola},
           giveni={N\bibinitperiod}}}%
        {{hash=76aacf4f3858b51999570dd1b5a4e5f0}{%
           family={Battaglia},
           familyi={B\bibinitperiod},
           given={Nicholas},
           giveni={N\bibinitperiod}}}%
        {{hash=63513c80d1f38e5f62a2d58699f2ca55}{%
           family={Battistelli},
           familyi={B\bibinitperiod},
           given={Elia\bibnamedelima Stefano},
           giveni={E\bibinitperiod\bibinitdelim S\bibinitperiod}}}%
        {{hash=73639feb105d83b53febe4e1384802ab}{%
           family={Beall},
           familyi={B\bibinitperiod},
           given={James\bibnamedelima A.},
           giveni={J\bibinitperiod\bibinitdelim A\bibinitperiod}}}%
        {{hash=5e50f9739cc61b1b76a0e2bda2c6066b}{%
           family={Bean},
           familyi={B\bibinitperiod},
           given={Rachel},
           giveni={R\bibinitperiod}}}%
        {{hash=2b358b73d13094f35d9c3da025ef9c82}{%
           family={Beheshti},
           familyi={B\bibinitperiod},
           given={Ali},
           giveni={A\bibinitperiod}}}%
        {{hash=ae6316f5304c067210bb9c8972543c8f}{%
           family={Beringue},
           familyi={B\bibinitperiod},
           given={Benjamin},
           giveni={B\bibinitperiod}}}%
        {{hash=13084306d09a242891266c57d9bb7865}{%
           family={Bhandarkar},
           familyi={B\bibinitperiod},
           given={Tanay},
           giveni={T\bibinitperiod}}}%
        {{hash=01aff868907e4416d1bc043d5557bbcd}{%
           family={Biermann},
           familyi={B\bibinitperiod},
           given={Emily},
           giveni={E\bibinitperiod}}}%
        {{hash=27a97b1d04acd1bbbc8d61066d9eb7f8}{%
           family={Bolliet},
           familyi={B\bibinitperiod},
           given={Boris},
           giveni={B\bibinitperiod}}}%
        {{hash=6a3d29af6517710fac34f738b3a5a971}{%
           family={Bond},
           familyi={B\bibinitperiod},
           given={J\bibnamedelima Richard},
           giveni={J\bibinitperiod\bibinitdelim R\bibinitperiod}}}%
        {{hash=e76413fba47311e16e2a30361c7d29b6}{%
           family={Capalbo},
           familyi={C\bibinitperiod},
           given={Valentina},
           giveni={V\bibinitperiod}}}%
        {{hash=f5b051ba12046b10979168531a7250e4}{%
           family={Carrero},
           familyi={C\bibinitperiod},
           given={Felipe},
           giveni={F\bibinitperiod}}}%
        {{hash=7b4b79d53a32cd5a9d027510e735cbf4}{%
           family={Chen},
           familyi={C\bibinitperiod},
           given={Shi-Fan},
           giveni={S\bibinithyphendelim F\bibinitperiod}}}%
        {{hash=d1b4b492cf04216199cbdf2dc44cb973}{%
           family={Chesmore},
           familyi={C\bibinitperiod},
           given={Grace},
           giveni={G\bibinitperiod}}}%
        {{hash=d28ee5370e532c98178073f4b54ea7c0}{%
           family={Cho},
           familyi={C\bibinitperiod},
           given={Hsiao-mei},
           giveni={H\bibinithyphendelim m\bibinitperiod}}}%
        {{hash=9d727e0bafb6837c4f9f54bfe4ebf983}{%
           family={Choi},
           familyi={C\bibinitperiod},
           given={Steve\bibnamedelima K.},
           giveni={S\bibinitperiod\bibinitdelim K\bibinitperiod}}}%
        {{hash=933b08fe8c339479d6d88d6c83829990}{%
           family={Clark},
           familyi={C\bibinitperiod},
           given={Susan\bibnamedelima E.},
           giveni={S\bibinitperiod\bibinitdelim E\bibinitperiod}}}%
        {{hash=e45a326c88fa89db67f222ded670c39e}{%
           family={Cothard},
           familyi={C\bibinitperiod},
           given={Nicholas\bibnamedelima F.},
           giveni={N\bibinitperiod\bibinitdelim F\bibinitperiod}}}%
        {{hash=dd9cd34cce0b14c29899854d20a73790}{%
           family={Coughlin},
           familyi={C\bibinitperiod},
           given={Kevin},
           giveni={K\bibinitperiod}}}%
        {{hash=02bbc8ab88d13c2da463d3e0b84acbba}{%
           family={Coulton},
           familyi={C\bibinitperiod},
           given={William},
           giveni={W\bibinitperiod}}}%
        {{hash=e1a98545ecf6550dd50726303bbcd309}{%
           family={Crichton},
           familyi={C\bibinitperiod},
           given={Devin},
           giveni={D\bibinitperiod}}}%
        {{hash=d55609f2f0da4dfb114a972519b4d526}{%
           family={Crowley},
           familyi={C\bibinitperiod},
           given={Kevin\bibnamedelima T.},
           giveni={K\bibinitperiod\bibinitdelim T\bibinitperiod}}}%
        {{hash=01a51dc4765cc320e3f1af5ad872251d}{%
           family={Darwish},
           familyi={D\bibinitperiod},
           given={Omar},
           giveni={O\bibinitperiod}}}%
        {{hash=c556af46de14d3e76ef4bb5c761e1069}{%
           family={Devlin},
           familyi={D\bibinitperiod},
           given={Mark\bibnamedelima J.},
           giveni={M\bibinitperiod\bibinitdelim J\bibinitperiod}}}%
        {{hash=bab896a4f8c4ce491f019b1e441d35d8}{%
           family={Dicker},
           familyi={D\bibinitperiod},
           given={Simon},
           giveni={S\bibinitperiod}}}%
        {{hash=dc4245bb577b4febb782ac673650715a}{%
           family={Duell},
           familyi={D\bibinitperiod},
           given={Cody\bibnamedelima J.},
           giveni={C\bibinitperiod\bibinitdelim J\bibinitperiod}}}%
        {{hash=a156a71e626b10771bc600d27bc3a096}{%
           family={Duff},
           familyi={D\bibinitperiod},
           given={Shannon\bibnamedelima M.},
           giveni={S\bibinitperiod\bibinitdelim M\bibinitperiod}}}%
        {{hash=de24d1ee423c15477e33df14cfce05d6}{%
           family={Duivenvoorden},
           familyi={D\bibinitperiod},
           given={Adriaan\bibnamedelima J.},
           giveni={A\bibinitperiod\bibinitdelim J\bibinitperiod}}}%
        {{hash=61b47f4b4c162d1f6da7150abf2cae63}{%
           family={Dunkley},
           familyi={D\bibinitperiod},
           given={Jo},
           giveni={J\bibinitperiod}}}%
        {{hash=7dd372e40f859e13f65556398fe1b758}{%
           family={Dunner},
           familyi={D\bibinitperiod},
           given={Rolando},
           giveni={R\bibinitperiod}}}%
        {{hash=f392eeb3efeeb809d53ed86c117c259e}{%
           family={Villagra},
           familyi={V\bibinitperiod},
           given={Carmen\bibnamedelima Embil},
           giveni={C\bibinitperiod\bibinitdelim E\bibinitperiod}}}%
        {{hash=45312ccecdce6da58ab88872ec64db50}{%
           family={Fankhanel},
           familyi={F\bibinitperiod},
           given={Max},
           giveni={M\bibinitperiod}}}%
        {{hash=2f7109cac5521c345f237372fb439371}{%
           family={Farren},
           familyi={F\bibinitperiod},
           given={Gerrit\bibnamedelima S.},
           giveni={G\bibinitperiod\bibinitdelim S\bibinitperiod}}}%
        {{hash=8a5cf20202c27e73408bd9f1ce188ce5}{%
           family={Ferraro},
           familyi={F\bibinitperiod},
           given={Simone},
           giveni={S\bibinitperiod}}}%
        {{hash=281533cb6cb5d072252f1a81c32f5c8e}{%
           family={Foster},
           familyi={F\bibinitperiod},
           given={Allen},
           giveni={A\bibinitperiod}}}%
        {{hash=f071fce1537dc6746d6e562a63e119c1}{%
           family={Freundt},
           familyi={F\bibinitperiod},
           given={Rodrigo},
           giveni={R\bibinitperiod}}}%
        {{hash=06b1b276287cdf1d74222767a2497a26}{%
           family={Fuzia},
           familyi={F\bibinitperiod},
           given={Brittany},
           giveni={B\bibinitperiod}}}%
        {{hash=2587fff471986dffa1799f0850879ee6}{%
           family={Gallardo},
           familyi={G\bibinitperiod},
           given={Patricio\bibnamedelima A.},
           giveni={P\bibinitperiod\bibinitdelim A\bibinitperiod}}}%
        {{hash=edfe8e37625f58cc6f509019e09c14fc}{%
           family={Garrido},
           familyi={G\bibinitperiod},
           given={Xavier},
           giveni={X\bibinitperiod}}}%
        {{hash=00660008e4b36a45ffd7706db88c83df}{%
           family={Gerbino},
           familyi={G\bibinitperiod},
           given={Martina},
           giveni={M\bibinitperiod}}}%
        {{hash=eee7e2407531b2b6979d99c861b79ee8}{%
           family={Giardiello},
           familyi={G\bibinitperiod},
           given={Serena},
           giveni={S\bibinitperiod}}}%
        {{hash=8ded3350c5ea6be8848d15ee33604f22}{%
           family={Gill},
           familyi={G\bibinitperiod},
           given={Ajay},
           giveni={A\bibinitperiod}}}%
        {{hash=7dff0ca122349de15f80f55f930cce16}{%
           family={Givans},
           familyi={G\bibinitperiod},
           given={Jahmour},
           giveni={J\bibinitperiod}}}%
        {{hash=96e8bd162805b6f7c9b879367d41d2ff}{%
           family={Gluscevic},
           familyi={G\bibinitperiod},
           given={Vera},
           giveni={V\bibinitperiod}}}%
        {{hash=cdc4498902c510cc01cacbf40d648033}{%
           family={Goldstein},
           familyi={G\bibinitperiod},
           given={Samuel},
           giveni={S\bibinitperiod}}}%
        {{hash=0a04cc49feaa7710718dfb3d928e02c6}{%
           family={Golec},
           familyi={G\bibinitperiod},
           given={Joseph\bibnamedelima E.},
           giveni={J\bibinitperiod\bibinitdelim E\bibinitperiod}}}%
        {{hash=2a7263324ef8e2cb90dd453f5fa61bc8}{%
           family={Gong},
           familyi={G\bibinitperiod},
           given={Yulin},
           giveni={Y\bibinitperiod}}}%
        {{hash=08b2aabf7b2ea380fd2e5ca2705daa22}{%
           family={Guan},
           familyi={G\bibinitperiod},
           given={Yilun},
           giveni={Y\bibinitperiod}}}%
        {{hash=1124ee95edd945406609eeb02f6bbf3b}{%
           family={Halpern},
           familyi={H\bibinitperiod},
           given={Mark},
           giveni={M\bibinitperiod}}}%
        {{hash=343682055a738a55646968619a5b7f62}{%
           family={Harrison},
           familyi={H\bibinitperiod},
           given={Ian},
           giveni={I\bibinitperiod}}}%
        {{hash=7cbae00696899a94ecc67f50b063f6fe}{%
           family={Hasselfield},
           familyi={H\bibinitperiod},
           given={Matthew},
           giveni={M\bibinitperiod}}}%
        {{hash=5da297558cfd2d0a13898df7e6a6d657}{%
           family={He},
           familyi={H\bibinitperiod},
           given={Adam},
           giveni={A\bibinitperiod}}}%
        {{hash=1add8bbe6f9c77f51553e6d6334ba02b}{%
           family={Healy},
           familyi={H\bibinitperiod},
           given={Erin},
           giveni={E\bibinitperiod}}}%
        {{hash=4af309b2574b7e6189c4c844d70e735b}{%
           family={Henderson},
           familyi={H\bibinitperiod},
           given={Shawn},
           giveni={S\bibinitperiod}}}%
        {{hash=70142a88ca2ff51f15600b659b3754de}{%
           family={Hensley},
           familyi={H\bibinitperiod},
           given={Brandon},
           giveni={B\bibinitperiod}}}%
        {{hash=1901bea3395387a79ff6c6f77996e3da}{%
           family={Hervías-Caimapo},
           familyi={H\bibinithyphendelim C\bibinitperiod},
           given={Carlos},
           giveni={C\bibinitperiod}}}%
        {{hash=d06671f02da0543775d13ab426a04f06}{%
           family={Hilton},
           familyi={H\bibinitperiod},
           given={Gene\bibnamedelima C.},
           giveni={G\bibinitperiod\bibinitdelim C\bibinitperiod}}}%
        {{hash=3b9bb1d83d2982513c191fcfa86a41b4}{%
           family={Hilton},
           familyi={H\bibinitperiod},
           given={Matt},
           giveni={M\bibinitperiod}}}%
        {{hash=8638b4e9ded4c449429baf159b6d04a7}{%
           family={Hincks},
           familyi={H\bibinitperiod},
           given={Adam\bibnamedelima D.},
           giveni={A\bibinitperiod\bibinitdelim D\bibinitperiod}}}%
        {{hash=fc58ee9c65682c7f946664bf2a6d3525}{%
           family={Hložek},
           familyi={H\bibinitperiod},
           given={Renée},
           giveni={R\bibinitperiod}}}%
        {{hash=0c38b2dca61aec57b1f0a287fd0bb5d2}{%
           family={Ho},
           familyi={H\bibinitperiod},
           given={Shuay-Pwu\bibnamedelima Patty},
           giveni={S\bibinithyphendelim P\bibinitperiod\bibinitdelim P\bibinitperiod}}}%
        {{hash=cd99f9d8db86a981a542f723036f767b}{%
           family={Hood},
           familyi={H\bibinitperiod},
           given={John},
           giveni={J\bibinitperiod}}}%
        {{hash=1fe80d30234b7f656e186dcc7eaa5ea0}{%
           family={Hornecker},
           familyi={H\bibinitperiod},
           given={Erika},
           giveni={E\bibinitperiod}}}%
        {{hash=e1a64cc44a6d6d182ee3f98ed76d2cd0}{%
           family={Huber},
           familyi={H\bibinitperiod},
           given={Zachary\bibnamedelima B.},
           giveni={Z\bibinitperiod\bibinitdelim B\bibinitperiod}}}%
        {{hash=827a90b8324b4ff3b15a7d16a76aa7fa}{%
           family={Hubmayr},
           familyi={H\bibinitperiod},
           given={Johannes},
           giveni={J\bibinitperiod}}}%
        {{hash=d5540aeb9e0047b215da82522890ec95}{%
           family={Huffenberger},
           familyi={H\bibinitperiod},
           given={Kevin\bibnamedelima M.},
           giveni={K\bibinitperiod\bibinitdelim M\bibinitperiod}}}%
        {{hash=bc91f76d32ba96c58a6fc05bd8fd9793}{%
           family={Hughes},
           familyi={H\bibinitperiod},
           given={John\bibnamedelima P.},
           giveni={J\bibinitperiod\bibinitdelim P\bibinitperiod}}}%
        {{hash=b30449227d6402e0d35cceb7b54b6cbc}{%
           family={Ikape},
           familyi={I\bibinitperiod},
           given={Margaret},
           giveni={M\bibinitperiod}}}%
        {{hash=31cd1eb93ab06ed5ef46343921c9d2ec}{%
           family={Irwin},
           familyi={I\bibinitperiod},
           given={Kent},
           giveni={K\bibinitperiod}}}%
        {{hash=38886704d112d006424b45d6116c8002}{%
           family={Isopi},
           familyi={I\bibinitperiod},
           given={Giovanni},
           giveni={G\bibinitperiod}}}%
        {{hash=f47b7b7890189079dcda873ad5cd4aaa}{%
           family={Joshi},
           familyi={J\bibinitperiod},
           given={Neha},
           giveni={N\bibinitperiod}}}%
        {{hash=c4a882febc8a5b27211720c0f5263380}{%
           family={Keller},
           familyi={K\bibinitperiod},
           given={Ben},
           giveni={B\bibinitperiod}}}%
        {{hash=9e2d5b32d623f7234e823376abea275d}{%
           family={Kim},
           familyi={K\bibinitperiod},
           given={Joshua},
           giveni={J\bibinitperiod}}}%
        {{hash=d47d777168318b1f26db1490c377602e}{%
           family={Knowles},
           familyi={K\bibinitperiod},
           given={Kenda},
           giveni={K\bibinitperiod}}}%
        {{hash=5d35fe28f2257b407e5a83d61a857dd1}{%
           family={Koopman},
           familyi={K\bibinitperiod},
           given={Brian\bibnamedelima J.},
           giveni={B\bibinitperiod\bibinitdelim J\bibinitperiod}}}%
        {{hash=09a682c15c1243ea159186c9f1c608f8}{%
           family={Kosowsky},
           familyi={K\bibinitperiod},
           given={Arthur},
           giveni={A\bibinitperiod}}}%
        {{hash=f3d96a923315e9ac96c3e69214984f57}{%
           family={Kramer},
           familyi={K\bibinitperiod},
           given={Darby},
           giveni={D\bibinitperiod}}}%
        {{hash=7e7f82b1431c1eb71776fb4a6909c3d0}{%
           family={Kusiak},
           familyi={K\bibinitperiod},
           given={Aleksandra},
           giveni={A\bibinitperiod}}}%
        {{hash=bcda4f542c6274dae448f0b702463934}{%
           family={Lague},
           familyi={L\bibinitperiod},
           given={Alex},
           giveni={A\bibinitperiod}}}%
        {{hash=cb9800eb36a5c36ce72146a95aa4520e}{%
           family={Lakey},
           familyi={L\bibinitperiod},
           given={Victoria},
           giveni={V\bibinitperiod}}}%
        {{hash=4336908c01ba7f0293255134babaa91d}{%
           family={Lattanzi},
           familyi={L\bibinitperiod},
           given={Massimiliano},
           giveni={M\bibinitperiod}}}%
        {{hash=a2c57345ded4bceab7ba512b5089e6e5}{%
           family={Lee},
           familyi={L\bibinitperiod},
           given={Eunseong},
           giveni={E\bibinitperiod}}}%
        {{hash=b826d8e5f23f278d95419829cdc65e9e}{%
           family={Li},
           familyi={L\bibinitperiod},
           given={Yaqiong},
           giveni={Y\bibinitperiod}}}%
        {{hash=3b35bc5251d387e54ca54cffdb7f22fe}{%
           family={Li},
           familyi={L\bibinitperiod},
           given={Zack},
           giveni={Z\bibinitperiod}}}%
        {{hash=f4825ea6c9f41b8102f9ee6069480e5e}{%
           family={Limon},
           familyi={L\bibinitperiod},
           given={Michele},
           giveni={M\bibinitperiod}}}%
        {{hash=ffb90b136c1dc0a4b5dfa4cdbeb12a6c}{%
           family={Lokken},
           familyi={L\bibinitperiod},
           given={Martine},
           giveni={M\bibinitperiod}}}%
        {{hash=cd199c401eeadcd3c5bdead077f7cd71}{%
           family={Louis},
           familyi={L\bibinitperiod},
           given={Thibaut},
           giveni={T\bibinitperiod}}}%
        {{hash=9db9604f10d638cb61271f78482d390b}{%
           family={Lungu},
           familyi={L\bibinitperiod},
           given={Marius},
           giveni={M\bibinitperiod}}}%
        {{hash=6c3470fc191e13c6136f3a531bcaa9c1}{%
           family={MacCrann},
           familyi={M\bibinitperiod},
           given={Niall},
           giveni={N\bibinitperiod}}}%
        {{hash=b44849b2f7488ba87942e570612ef0f3}{%
           family={MacInnis},
           familyi={M\bibinitperiod},
           given={Amanda},
           giveni={A\bibinitperiod}}}%
        {{hash=b9f7385d17b161ce56d6cdf9e9a24275}{%
           family={Madhavacheril},
           familyi={M\bibinitperiod},
           given={Mathew\bibnamedelima S.},
           giveni={M\bibinitperiod\bibinitdelim S\bibinitperiod}}}%
        {{hash=2274aa81c7fb9ebf4664b7ac6d3509ee}{%
           family={Maldonado},
           familyi={M\bibinitperiod},
           given={Diego},
           giveni={D\bibinitperiod}}}%
        {{hash=7a08b6606046ca9356525c3579ca3696}{%
           family={Maldonado},
           familyi={M\bibinitperiod},
           given={Felipe},
           giveni={F\bibinitperiod}}}%
        {{hash=df8882f655c4c612b0d7e78bfcccff52}{%
           family={Mallaby-Kay},
           familyi={M\bibinithyphendelim K\bibinitperiod},
           given={Maya},
           giveni={M\bibinitperiod}}}%
        {{hash=ec7230f6cc3b41846610b68094f47087}{%
           family={Marques},
           familyi={M\bibinitperiod},
           given={Gabriela\bibnamedelima A.},
           giveni={G\bibinitperiod\bibinitdelim A\bibinitperiod}}}%
        {{hash=d3db075a0fa52526f475163bc86afb7a}{%
           family={Marrewijk},
           familyi={M\bibinitperiod},
           given={Joshiwa},
           giveni={J\bibinitperiod},
           prefix={van},
           prefixi={v\bibinitperiod}}}%
        {{hash=20173117ab19986f6c4d0c2332b1dec7}{%
           family={McCarthy},
           familyi={M\bibinitperiod},
           given={Fiona},
           giveni={F\bibinitperiod}}}%
        {{hash=4b34178d87ca7839e3a62ffea12d984c}{%
           family={McMahon},
           familyi={M\bibinitperiod},
           given={Jeff},
           giveni={J\bibinitperiod}}}%
        {{hash=4dcd168e808d028df892f92c262cccf9}{%
           family={Mehta},
           familyi={M\bibinitperiod},
           given={Yogesh},
           giveni={Y\bibinitperiod}}}%
        {{hash=22de2074d30e37aa9006ba4f53a57f04}{%
           family={Menanteau},
           familyi={M\bibinitperiod},
           given={Felipe},
           giveni={F\bibinitperiod}}}%
        {{hash=0a2762a8b15959e0043dae5f307fb2f4}{%
           family={Moodley},
           familyi={M\bibinitperiod},
           given={Kavilan},
           giveni={K\bibinitperiod}}}%
        {{hash=292afc000d826f519a85925bb8235490}{%
           family={Morris},
           familyi={M\bibinitperiod},
           given={Thomas\bibnamedelima W.},
           giveni={T\bibinitperiod\bibinitdelim W\bibinitperiod}}}%
        {{hash=824574667309afc9b7dc74cb14e1a523}{%
           family={Mroczkowski},
           familyi={M\bibinitperiod},
           given={Tony},
           giveni={T\bibinitperiod}}}%
        {{hash=a04a406be3e4ec3ba336933fe3d4df86}{%
           family={Naess},
           familyi={N\bibinitperiod},
           given={Sigurd},
           giveni={S\bibinitperiod}}}%
        {{hash=76f5bac42692d513edfebc626f629065}{%
           family={Namikawa},
           familyi={N\bibinitperiod},
           given={Toshiya},
           giveni={T\bibinitperiod}}}%
        {{hash=ad1baab641a7080848ba6a20c43e16e1}{%
           family={Nati},
           familyi={N\bibinitperiod},
           given={Federico},
           giveni={F\bibinitperiod}}}%
        {{hash=ab1a7345b5ff9647a52967322e2195bc}{%
           family={Nerval},
           familyi={N\bibinitperiod},
           given={Simran\bibnamedelima K.},
           giveni={S\bibinitperiod\bibinitdelim K\bibinitperiod}}}%
        {{hash=dd0c29f8aabb2ded4e3b12cf64f6e983}{%
           family={Newburgh},
           familyi={N\bibinitperiod},
           given={Laura},
           giveni={L\bibinitperiod}}}%
        {{hash=92216fd479254f61a0e8565132478197}{%
           family={Nicola},
           familyi={N\bibinitperiod},
           given={Andrina},
           giveni={A\bibinitperiod}}}%
        {{hash=20b1afb78e8d49b460a32a8f27b39cc2}{%
           family={Niemack},
           familyi={N\bibinitperiod},
           given={Michael\bibnamedelima D.},
           giveni={M\bibinitperiod\bibinitdelim D\bibinitperiod}}}%
        {{hash=b3029cc82a7af1fc3511d4d00568ac21}{%
           family={Nolta},
           familyi={N\bibinitperiod},
           given={Michael\bibnamedelima R.},
           giveni={M\bibinitperiod\bibinitdelim R\bibinitperiod}}}%
        {{hash=2808c213e780da1c2870ba506f2cdd14}{%
           family={Orlowski-Scherer},
           familyi={O\bibinithyphendelim S\bibinitperiod},
           given={John},
           giveni={J\bibinitperiod}}}%
        {{hash=6a2a3edf63cb4cfd81502ca8d9c877a9}{%
           family={Pagano},
           familyi={P\bibinitperiod},
           given={Luca},
           giveni={L\bibinitperiod}}}%
        {{hash=49ef9d891f88423f4a3368ec480a6320}{%
           family={Page},
           familyi={P\bibinitperiod},
           given={Lyman\bibnamedelima A.},
           giveni={L\bibinitperiod\bibinitdelim A\bibinitperiod}}}%
        {{hash=91a9aec85d659746452ab1c48e6715f2}{%
           family={Pandey},
           familyi={P\bibinitperiod},
           given={Shivam},
           giveni={S\bibinitperiod}}}%
        {{hash=df7ee80763997bb0f5987b3362660c04}{%
           family={Partridge},
           familyi={P\bibinitperiod},
           given={Bruce},
           giveni={B\bibinitperiod}}}%
        {{hash=edc45b9b4f9d5954af5d32bfe8c75a37}{%
           family={Sarmiento},
           familyi={S\bibinitperiod},
           given={Karen\bibnamedelima Perez},
           giveni={K\bibinitperiod\bibinitdelim P\bibinitperiod}}}%
        {{hash=71928206f1f43f9b8207725ea20e7515}{%
           family={Prince},
           familyi={P\bibinitperiod},
           given={Heather},
           giveni={H\bibinitperiod}}}%
        {{hash=bda9e3244be11e156b25ed140d7144cb}{%
           family={Puddu},
           familyi={P\bibinitperiod},
           given={Roberto},
           giveni={R\bibinitperiod}}}%
        {{hash=9b188e6d6df3e24bb70608a4ab04ec29}{%
           family={Qu},
           familyi={Q\bibinitperiod},
           given={Frank\bibnamedelima J.},
           giveni={F\bibinitperiod\bibinitdelim J\bibinitperiod}}}%
        {{hash=89fd5c8ff6dd895df61b57ab3559a31a}{%
           family={Ragavan},
           familyi={R\bibinitperiod},
           given={Damien\bibnamedelima C.},
           giveni={D\bibinitperiod\bibinitdelim C\bibinitperiod}}}%
        {{hash=05da344e41455483d95ba80fc2c7d9ca}{%
           family={Guachalla},
           familyi={G\bibinitperiod},
           given={Bernardita\bibnamedelima Ried},
           giveni={B\bibinitperiod\bibinitdelim R\bibinitperiod}}}%
        {{hash=385120ad9197a38abe6b7a7defde6536}{%
           family={Rogers},
           familyi={R\bibinitperiod},
           given={Keir\bibnamedelima K.},
           giveni={K\bibinitperiod\bibinitdelim K\bibinitperiod}}}%
        {{hash=be18756bf61347863466a92e96aad992}{%
           family={Rojas},
           familyi={R\bibinitperiod},
           given={Felipe},
           giveni={F\bibinitperiod}}}%
        {{hash=d944c89e13de86adede1ef9ac7e2ed03}{%
           family={Sakuma},
           familyi={S\bibinitperiod},
           given={Tai},
           giveni={T\bibinitperiod}}}%
        {{hash=a9563d665af9a2d52b8b6ea052e4e535}{%
           family={Schaan},
           familyi={S\bibinitperiod},
           given={Emmanuel},
           giveni={E\bibinitperiod}}}%
        {{hash=ac33f64dcf94aafeb351d9d921840e81}{%
           family={Schmitt},
           familyi={S\bibinitperiod},
           given={Benjamin\bibnamedelima L.},
           giveni={B\bibinitperiod\bibinitdelim L\bibinitperiod}}}%
        {{hash=a1875fb0c754165abf1cd23bba9d1d96}{%
           family={Sehgal},
           familyi={S\bibinitperiod},
           given={Neelima},
           giveni={N\bibinitperiod}}}%
        {{hash=52545a5ddc8e5fb126da6439cb505777}{%
           family={Shaikh},
           familyi={S\bibinitperiod},
           given={Shabbir},
           giveni={S\bibinitperiod}}}%
        {{hash=83463b693e0142e481db279117cd3f7d}{%
           family={Sherwin},
           familyi={S\bibinitperiod},
           given={Blake\bibnamedelima D.},
           giveni={B\bibinitperiod\bibinitdelim D\bibinitperiod}}}%
        {{hash=909e18db650211a7d74d314fad50edfb}{%
           family={Sierra},
           familyi={S\bibinitperiod},
           given={Carlos},
           giveni={C\bibinitperiod}}}%
        {{hash=89d579b9fbb6ebf2f2c7123abba4fec9}{%
           family={Sievers},
           familyi={S\bibinitperiod},
           given={Jon},
           giveni={J\bibinitperiod}}}%
        {{hash=b5552b16e54e45335b93648e87d3bda4}{%
           family={Sifón},
           familyi={S\bibinitperiod},
           given={Cristóbal},
           giveni={C\bibinitperiod}}}%
        {{hash=f4633cbf6ea765537269d8e819608b9d}{%
           family={Simon},
           familyi={S\bibinitperiod},
           given={Sara},
           giveni={S\bibinitperiod}}}%
        {{hash=59123f7c63bc7e9f71e32f405f3c243e}{%
           family={Sonka},
           familyi={S\bibinitperiod},
           given={Rita},
           giveni={R\bibinitperiod}}}%
        {{hash=28da91bfaf78ab22ad19a6b9d8fd62e1}{%
           family={Spergel},
           familyi={S\bibinitperiod},
           given={David\bibnamedelima N.},
           giveni={D\bibinitperiod\bibinitdelim N\bibinitperiod}}}%
        {{hash=821778d34b132ce325824dda52c74ddd}{%
           family={Staggs},
           familyi={S\bibinitperiod},
           given={Suzanne\bibnamedelima T.},
           giveni={S\bibinitperiod\bibinitdelim T\bibinitperiod}}}%
        {{hash=e33b2ad1ae3e9b1b9729aeb498e61946}{%
           family={Storer},
           familyi={S\bibinitperiod},
           given={Emilie},
           giveni={E\bibinitperiod}}}%
        {{hash=d8651178b62d5228de3e4007e9a20bbc}{%
           family={Surrao},
           familyi={S\bibinitperiod},
           given={Kristen},
           giveni={K\bibinitperiod}}}%
        {{hash=b48b2beb0abb2768cb461738c0dbde0c}{%
           family={Switzer},
           familyi={S\bibinitperiod},
           given={Eric\bibnamedelima R.},
           giveni={E\bibinitperiod\bibinitdelim R\bibinitperiod}}}%
        {{hash=6624f599a484cc390f442df38df6500b}{%
           family={Tampier},
           familyi={T\bibinitperiod},
           given={Niklas},
           giveni={N\bibinitperiod}}}%
        {{hash=d95f0a79f639652cf1af1d7b638b09a0}{%
           family={Thiele},
           familyi={T\bibinitperiod},
           given={Leander},
           giveni={L\bibinitperiod}}}%
        {{hash=9949b8c8d44a4c0cd6adbc3c97f6cc36}{%
           family={Thornton},
           familyi={T\bibinitperiod},
           given={Robert},
           giveni={R\bibinitperiod}}}%
        {{hash=42dfa12b46122bdd11bb7a7c8c1681eb}{%
           family={Trac},
           familyi={T\bibinitperiod},
           given={Hy},
           giveni={H\bibinitperiod}}}%
        {{hash=975f1fcae207ebbb786395ec02ce1144}{%
           family={Tucker},
           familyi={T\bibinitperiod},
           given={Carole},
           giveni={C\bibinitperiod}}}%
        {{hash=6572563fdd596fcd17a1686cdc5f5e39}{%
           family={Ullom},
           familyi={U\bibinitperiod},
           given={Joel},
           giveni={J\bibinitperiod}}}%
        {{hash=2fcc99f87391786edf666d5c452f54d1}{%
           family={Vale},
           familyi={V\bibinitperiod},
           given={Leila\bibnamedelima R.},
           giveni={L\bibinitperiod\bibinitdelim R\bibinitperiod}}}%
        {{hash=f7e87bbd5202c9393a300a845578660c}{%
           family={Engelen},
           familyi={E\bibinitperiod},
           given={Alexander\bibnamedelima Van},
           giveni={A\bibinitperiod\bibinitdelim V\bibinitperiod}}}%
        {{hash=87b537627a7f08981f0124829daa23eb}{%
           family={Lanen},
           familyi={L\bibinitperiod},
           given={Jeff\bibnamedelima Van},
           giveni={J\bibinitperiod\bibinitdelim V\bibinitperiod}}}%
        {{hash=7c3039f637bb4e63328255454d1cb1ae}{%
           family={Vargas},
           familyi={V\bibinitperiod},
           given={Cristian},
           giveni={C\bibinitperiod}}}%
        {{hash=1b29aff0e88f6a537399711b16202665}{%
           family={Vavagiakis},
           familyi={V\bibinitperiod},
           given={Eve\bibnamedelima M.},
           giveni={E\bibinitperiod\bibinitdelim M\bibinitperiod}}}%
        {{hash=9a062cb964f4c8f6fc0442c8455d79b0}{%
           family={Wagoner},
           familyi={W\bibinitperiod},
           given={Kasey},
           giveni={K\bibinitperiod}}}%
        {{hash=f09bcf039fad548685e22adbafd36be1}{%
           family={Wang},
           familyi={W\bibinitperiod},
           given={Yuhan},
           giveni={Y\bibinitperiod}}}%
        {{hash=1df17de2f7013e4c1263b702a1a53c03}{%
           family={Wenzl},
           familyi={W\bibinitperiod},
           given={Lukas},
           giveni={L\bibinitperiod}}}%
        {{hash=059c07bad979c858ce4b3e9858ac97f9}{%
           family={Wollack},
           familyi={W\bibinitperiod},
           given={Edward\bibnamedelima J.},
           giveni={E\bibinitperiod\bibinitdelim J\bibinitperiod}}}%
        {{hash=552b6a19e96c2e5e828173167804de67}{%
           family={Zheng},
           familyi={Z\bibinitperiod},
           given={Kaiwen},
           giveni={K\bibinitperiod}}}%
      }
      \strng{namehash}{7710d8bd0744719194719ba1e8646b74}
      \strng{fullhash}{fac0aee0b6e6a0307b245af11fedd519}
      \strng{fullhashraw}{fac0aee0b6e6a0307b245af11fedd519}
      \strng{bibnamehash}{7710d8bd0744719194719ba1e8646b74}
      \strng{authorbibnamehash}{7710d8bd0744719194719ba1e8646b74}
      \strng{authornamehash}{7710d8bd0744719194719ba1e8646b74}
      \strng{authorfullhash}{fac0aee0b6e6a0307b245af11fedd519}
      \strng{authorfullhashraw}{fac0aee0b6e6a0307b245af11fedd519}
      \field{sortinit}{2}
      \field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{eprintclass}{astro-ph.CO}
      \field{eprinttype}{arXiv}
      \field{title}{The Atacama Cosmology Telescope: DR6 Constraints on Extended Cosmological Models}
      \field{year}{2025}
      \verb{eprint}
      \verb 2503.14454
      \endverb
      \verb{urlraw}
      \verb https://arxiv.org/abs/2503.14454
      \endverb
      \verb{url}
      \verb https://arxiv.org/abs/2503.14454
      \endverb
    \endentry
  \enddatalist
\endrefsection
\endinput