Added step() and alternate model