no need to copy on !contains