use std::chrono for time tracking