The unstable bin and sexp format is that of `Time_ns.Span`, with the caveat that deserialization implicitly floors the time span to the nearest power of two nanoseconds. This ensures that the alarm precision that is used is at least as precise than the alarm precision that is stated.

`type t``= t```
`include sig ... end`
`val bin_t : t Bin_prot.Type_class.t`
`val bin_read_t : t Bin_prot.Read.reader`
`val __bin_read_t__ : (Core_kernel__.Import.int ‑> t) Bin_prot.Read.reader`
`val bin_reader_t : t Bin_prot.Type_class.reader`
`val bin_size_t : t Bin_prot.Size.sizer`
`val bin_write_t : t Bin_prot.Write.writer`
`val bin_writer_t : t Bin_prot.Type_class.writer`
`val bin_shape_t : Bin_prot.Shape.t`
`val compare : t ‑> t ‑> Core_kernel__.Import.int`
`val t_of_sexp : Base.Sexp.t ‑> t`
`val sexp_of_t : t ‑> Base.Sexp.t`