removed constexpr to work with legacy boost