do some math
changes to model