add error hundling