it's better to use steady_clock