added smooth turning