swift memory conflict access