avoid copy from mutable