changed to synchronous execution