How do I find the ratio in which the residue of a reaction combines with HCl?

A mixture weighing $4.08\ \mathrm g$ of $\ce{BaO}$ ($M(\ce{Ba})$ = $138\ \mathrm{g\ mol^{-1}}$) and an unknown carbonate $\ce{XCO3}$ was heated strongly. The residue weighed $3.64\ \mathrm g$. This was dissolved in $100\ \mathrm{ml}$ of $1\ \mathrm M$ $\ce{HCl}$. The excess acid required $16\ \mathrm{ml}$ of $2.5\ \mathrm M$ $\ce{NaOH}$ solution for complete neutralization. What is the molar mass of $\ce{X}?$

My approach:

$16\ \mathrm{ml}$ of $2.5\ \mathrm M$ $\ce{NaOH}$ means $0.04\ \mathrm{mol}$ of $\ce{NaOH}$. Thus, the excess acid was $0.04\ \mathrm{mol}$ of $\ce{HCl}$. $100\ \mathrm{ml}$ of $1\ \mathrm M$ $\ce{HCl}$ means $0.1\ \mathrm{mol}$ of $\ce{HCl}$. Thus, $0.06\ \mathrm{mol}$ of $\ce{HCl}$ reacted with the residue. Now, how can I find the ratio in which the residue reacted with $\ce{HCl}?$ What is the composition of the residue?

In the comments I mentioned one way to solve the problem, but it turns out that was the roundabout way! There is a simpler solution, as follows.

From the neutralization reaction, it is possible to calculate that the mixture reacted with $0.06\ \mathrm{mol}$ of $\ce{H+}$. The carbonate and the oxide react in a proportion of 1:2 with the hydrogen ions, so we know that $n_{\ce{BaO}}+n_{\ce{XO}}=0.03\ \mathrm{mol}$. The mass balance from the thermal decomposition then suggests that $m_{\ce{XCO3}}-m_{\ce{XO}}=0.44\ \mathrm g$. These two equations are already enough.

Notice that the for the molar masses of the unknown oxide and carbonate, we have $M_{\ce{XCO3}}-M_{\ce{XO}}=44\ \mathrm{g/mol}$. If one converts the masses in the second equation into expressions in $M$ and $n$, the result is $n_{\ce{XCO3}}M_{\ce{XCO3}}-n_{\ce{XO}}M_{\ce{XO}}=0.44\ \mathrm g$, which can be turned into $n_{\ce{XCO3}}M_{\ce{XCO3}}-n_{\ce{XO}}\left(M_{\ce{XCO3}}-44\ \mathrm{g/mol}\right)=0.44\ \mathrm g$. It is easy to see that the thermal decomposition does not alter the number of moles of compound containing $\ce{X}$, so that $n_{\ce{XCO3}}=n_{\ce{XO}}$. Thus:

$$n_{\ce{XCO3}}M_{\ce{XCO3}}-n_{\ce{XCO3}}\left(M_{\ce{XCO3}}-44\ \mathrm{g/mol}\right)=0.44\ \mathrm g$$

$$n_{\ce{XCO3}}\left(M_{\ce{XCO3}}-M_{\ce{XCO3}}+44\ \mathrm{g/mol}\right)=0.44\ \mathrm g$$

$$n_{\ce{XCO3}}\times 44\ \mathrm{g/mol}=0.44\ \mathrm g\quad\Rightarrow\quad n_{\ce{XCO3}}=0.01\ \mathrm{mol}$$

Now the problem unravels easily. We get that $n_{\ce{BaO}}=0.02\ \mathrm{mol}$, which implies $m_{\ce{BaO}}=3.08\ \mathrm g$ and $m_{\ce{XCO3}}=1.00\ \mathrm g$. Hence, $M_{\ce{XCO3}}=100\ \mathrm{g/mol}$, and from there $M_{\ce{X}}=40\ \mathrm{g/mol}$. A quick look on a periodic table yields calcium as the most likely candidate, and indeed its carbonate has the formula $\ce{CaCO3}$ and a molar mass of $100\ \mathrm{g/mol}$.
{"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 1, "mathjax_display_tex": 1, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0, "katex": 0, "math-container": 0, "wp-katex-eq": 0, "align": 0, "equation": 0, "x-ck12": 0, "texerror": 0}