first implementation of animation