move semantics updates