읽기 source와 쓰기 result를 분리해 traversal membership을 안정화한다.
source membership을 복사한다.
snapshot 원소만 읽는다.
별도 value를 만든다.
새 immutable list로 게시한다.
핵심: mutable element 내부까지 격리하려면 immutable domain 값이나 더 강한 snapshot이 필요하다.