Run with promises

Use jQuery deffered to start new cycle only when previous done