     }
 }
 
-public extension BidirectionalCollection where Iterator.Element : Equatable {
+extension BidirectionalCollection where Iterator.Element : Equatable {
     
     @_inlineable
     public func suffix(until element: Iterator.Element) -> SubSequence {

    }
}

public extension BidirectionalCollection {
    
    @_inlineable
    public func suffix(while predicate: (Iterator.Element) throws -> Bool) rethrows -> SubSequence {

    }
}

extension RangeReplaceableCollection {
    
    @_inlineable
    public mutating func replace<C : Collection>(with newElements: C) where Iterator.Element == C.Iterator.Element {
