     
     /// SwifterSwift: Get all indices where condition is met.
     ///
-    /// - Parameter where: condition to evaluate each element against.
-    /// - Returns: all indices where the specified condition evaluates to true.
-    public func indices(where conditon: (Element) -> Bool) -> [Int]? {
+    /// - Parameter condition: condition to evaluate each element against.
+    /// - Returns: all indices where the specified condition evaluates to true. (optional)
+    public func indices(where condition: (Element) -> Bool) -> [Int]? {
         var indicies: [Int] = []
         for (index, value) in lazy.enumerated() {
-            if conditon(value) { indicies.append(index) }
+            if condition(value) { indicies.append(index) }
         }
         return indicies.isEmpty ? nil : indicies
     }
     
     /// SwifterSwift: Check if all elements in array match a conditon.
     ///
-    /// - Parameter match: condition to evaluate each element against.
+    /// - Parameter condition: condition to evaluate each element against.
     /// - Returns: true when all elements in the array match the specified condition.
     public func all(match condition: (Element) -> Bool) -> Bool {
         return !contains { !condition($0) }

    
    /// SwifterSwift: Get last element that satisfies a conditon.
    ///
    /// - Parameter where: condition to evaluate each element against.
    /// - Returns: the last element in the array matching the specified condition.
    public func last(where condition: (Element) -> Bool) -> Element? {
        for element in reversed() where condition(element) { return element }
        return nil

	/// SwifterSwift: Swap values at index positions.
	///
	/// - Parameters:
	///   - index: index of first element.
	///   - otherIndex: index of other element.
	public mutating func swap(from index: Int, to otherIndex: Int)  {
		Swift.swap(&self[index], &self[otherIndex])
	}
    
    /// SwifterSwift: Get first index where condition is met.
    ///
    /// - Parameter condition: condition to evaluate each element against.
    /// - Returns: first index where the specified condition evaluates to true. (optional)
    public func firstIndex(where condition: (Element) -> Bool) -> Int? {
        for (index, value) in lazy.enumerated() {
            if condition(value) { return index }
