anchor.diff:                          if Array.exists Option.isNone window
                           then None
                           else Some(Array.averageBy Option.get window))
  +                  
  +    /// The catOptions function takes a list of Options and returns an array of all the Some values.
  +    let catOptions (xs:Option<'a>[]) =
  +        [|
  +            for x in xs do
  +                if x.IsSome then yield x.Value
  +        |]
   
   /// Extensions for F#'s List module.
   module List =
  
positive.code:             list
          else
              pad (total - List.length list) elem list
  
  [<CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
  /// Extensions for System.Collections.Generic.Dictionary.
  
negative.code:               notFirst := true
        } 
  
      /// The catOptions function takes a list of Options and returns a seq of all the Some values.
      let catOptions (xs:seq<Option<'a>>) =
          seq {
              for x in xs do
                  if x.IsSome then yield x.Value
          }
  
  [<CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
  /// Extensions for F#'s Array module.
  module Array = 
  