construction from const reference