requestAnimationFrame -> setTimeout