 }
 
 /**
-Returns the sum of all elements in the vector.
-
-:param: vector  The vector to sum.
-
-:returns: The sum of all elements in the vector. When the vector is empty
-zero is returned.
+    Returns the sum of all elements in the vector.
+
+    :param: vector  The vector to sum.
+
+    :returns: The sum of all elements in the vector. When the vector is empty
+                zero is returned.
 */
 public func sum(vector: Vector<Double>) -> Double {
     return sum(vector.elements)

}

/**
Returns the sum of all elements in the array.

:param: seq The array to sum.

:returns: The sum of all elements in the array. When the array is empty
zero is returned.
*/
public func sum(seq: [Double]) -> Double {
    

    :exception: Throws an exception when the given sequence is empty.
*/
public func min <S: SequenceType where S.Generator.Element: protocol<Comparable, IntegerLiteralConvertible>> (seq: S) -> S.Generator.Element {
    
    var generator = seq.generate()
    if let initial = generator.next() {
