doesn't break if shipping is nil