fn inclusive_end<T: Idx>(
    domain: usize,
    range: impl RangeBounds<T>
) -> Option<u32>