hmm. maybe better using some algebraic manipulation tool