The 
hh_mm_ss class template
splits a 
duration
into a multi-field time structure
hours:
minutes:
seconds and
possibly 
subseconds,
where 
subseconds will be a duration unit
based on a non-positive power of 10
.  The 
Duration template parameter dictates the precision
to which the time is split
.  A 
hh_mm_ss models negative durations
with a distinct 
is_negative getter
that returns 
true when the input duration is negative
.  The individual duration fields always return non-negative durations
even when 
is_negative() indicates
the structure is representing a negative duration
.