fixed update bug in immutable map