added basic calculation functionality