add trycatch