 extension _ClosedRange {
   public func contains(value: Bound) -> Bool {
     return lowerBound <= value && upperBound >= value
-  }
-}
-
-public // disambiguation
-protocol _HalfOpenRangeOfStrideable : RandomAccessCollection, _HalfOpenRange {}
-
-extension _HalfOpenRangeOfStrideable {
-  public var isEmpty : Bool {
-    return lowerBound >= upperBound
   }
 }
 

) -> RangeOfStrideable<Pos> {
  // FIXME: swift-3-indexing-model: tests for traps.
  _precondition(start <= end, "Can't form Range with end < start")
  return RangeOfStrideable(lowerBound: start, upperBound: end)
}

/// Forms a closed range that contains both `start` and `end`.

  // FIXME: swift-3-indexing-model: tests for traps.
  _precondition(start <= end, "Can't form Range with end < start")
  _precondition(endPlusOne > end, "Range end has no valid successor")
  return RangeOfStrideable(_uncheckedBounds: (lower: start, upper: endPlusOne))
}

@warn_unused_result
