day represents a day of a month
.  It normally holds values in the range 1 to 31,
but may hold non-negative values outside this range
.  It can be constructed with any 
unsigned value,
which will be subsequently truncated to fit into 
day's unspecified internal storage
.  day meets the 
Cpp17EqualityComparable (Table 
28)
and 
Cpp17LessThanComparable (Table 
29) requirements,
and participates in basic arithmetic with 
days objects,
which represent a difference between two 
day objects
.