Animation rewrite

I believe this is good to go.