should it really be mutable ?