std::min std::max