everything compiles now. lets implement the math