added try /catch for async funtions also