avoid looser noexcept