added smooth move