modify to immutable collection