rethinking format_num and precision