rewrite animation system