I'm currently trying to solve a mass balance useful in metallurgical processing.

There are 4 ingoing streams (streams "c", "f","h" and "o") and 3 outgoing streams ("m", "e" and "s") and 5 chemical elements: Cu, Fe, S, O, and Si. The components are written as moles/100g of the respective stream.

The compositions of streams "m", "s", "o", "f" and "h" are known, but the Fe, Si and O content of stream "e" is unknown. The O content of it can be obtained by charge balance, given that the oxidation states are: Cu =+1, Fe= x (+2<x<+3), Si=+4, S= -2, O = -2.

Note: The vector "A" is the vector of atomic weights, useful because the dot product of it and the composition vector of any stream must be 1 (i.e the sum of mass % of all components must be 100%). The factor "R" is the (known) iron/silicon ratio of stream "e"

The equation I am trying to solve is the following lineal system:

Fee = Sie*R
Oe = (Cue*1 + Fee*x + Sie*4 - Se*2)/2
m = {Cum, Fem, Sm, Om, Sim }
e = {Cue, Fee, Se, Oe, Sie }
c = {Cuc, Fec, Sc, Oc, Sic }
f = {Cuf, Fef, Sf, Of, Sif }
h = {Cuh, Feh, Sh, Oh, Sih }
s = {0, 0, Ss, 2 Ss, 0 }
o = {0, 0, 0, Oo, 0 }
A = {ACu, AFe, AS, AO, ASi }
Solve[{Mm*m + Me*e + Ms*s == Mc*c +Mf*f +Mh*h +Mo*o,
Mm + Me + Ms == Mc +Mf +Mh +Mo , e.A == 1}, {Mm, Me, Mf, Mh, Ms,
Mo, Sie}, Reals]

Unfortunately, the program does not run, even after a week of trying to symplify/rearrange the equations. I cannot find the mistake, it should run as a system of 7 equations with 7 unknowns.
Perhaps there is some (implicit) unknown variable or equation redundant or missing in the system of equations. The unknown variables should be the following:

Mm, Me, Ms, Mo, Mf, Mh = masses Mi of the streams "m", "s", "o", "f" , "h" and "e"

Sie = silicon concentration in stream "e"

Thank you in advance for your help,

Alberto