add null ref check