コピーをとるって、そのコンテナの要素に値を代入するときはどうするのかと
foreach (it; container)
はやめて
foerach (it; container.begin)
にすれば解決しそうだが、どうも納得いかないな