calculations working - eliminate dependencies/make more flexible