I hope this can be at any help
M(CaCO3) = 100,09g/mol
M(CaO) = 56,08g/mol
M(Ca) = 40,08g/mol
M(Mg) = 24,31g/mol
M(HCO3) = 61,02g/mol
10mg CaO/L = 1ºdH (deutsche härtegrader)
10mg/L x (40,08g/mol / 56,08g/mol) = 7,147mg Ca/L = 1ºdH
10mg/L x (24,31g/mol / 56,08g/mol) = 4,335mg Mg/L = 1ºdH
10mg/L x (2x61,02g/mol / 56,08g/mol) = 21,761mg HCO3/L = 1ºdH
1mg CaCO3/L = 1 ppm
1mg/L x (40,08g/mol / 100,09g/mol) = 0,400mg Ca/L = 1ppm
1mg/L x (24,31g/mol / 100,09g/mol) = 0,243mg Mg/L = 1ppm
1mg/L x (2x61,02g/mol / 100,09g/mol) = 1,219mg HCO3/L = 1ppm
ppm → ºdH
(56,08g/mol / 100,09g/mol) / 10 = 0,056
ºdH → ppm
(100,09g/mol / 56,08g/mol) x 10 = 17,848
ninoboys tap water contains 72ppm Ca plus 26ppm Mg and alkalinity 133ppm (72mg Ca/L, 26mg Mg/L, 133mg HCO3/L )
GH (72mg/L / 0,400) + (26mg/L / 0,243) = 286 ppm
KH 133mg/L / 1,219 = 109 ppm (taken for granted that it is HCO3)