updated blocking/non-blocking statements