assoc now handles nil