use std::setw() for padding instead of spaces