added blocking contruct for delay
uses Await.ready instead of Thread.sleep