anchor.diff:  /// Represents the result of a computation.
   type Result<'TSuccess, 'TMessage> = 
       /// Represents the result of a successful computation.
  -    | OK of 'TSuccess * 'TMessage list
  +    | Ok of 'TSuccess * 'TMessage list
       /// Represents the result of a failed computation.
       | Fail of 'TMessage list
   
  
positive.code:     [<Extension>]
      static member inline Flatten(value) : Result<seq<'a>,'b>=
          match value with
          | Result.OK(values:Result<'a,'b> seq, msgs:'b list) -> 
              match collect values with
              | Result.OK(values,msgs) -> OK(values |> List.toSeq,msgs)
              | Result.Fail(msgs:'b list) -> Fail msgs
          | Result.Fail(msgs:'b list) -> Fail msgs
  
  
negative.code:     /// Categorizes a result based on its state and the presence of extra messages
      let inline (|Pass|Warn|Fail|) result =
        match result with
        | Ok  (value, []  ) -> Pass  value
        | Ok  (value, msgs) -> Warn (value,msgs)
        | Fail        msgs  -> Fail        msgs
  
      let inline failOnWarnings result =
  