separate animate and touchAnimate