add return value check