anchor.diff:                             "Count/Second"; "None" ]
   
   [<AutoOpen>]
  +module Utils =
  +    let inline lowerCase (str : string)          = str.ToLower()
  +    let inline isRegexMatch pattern input        = Regex.IsMatch(input, pattern)
  +
  +    let inline eqFilter filter term lf           = filter <| (term, fun rt -> lowerCase lf = lowerCase rt)
  +    let inline regexFilter filter term pattern   = filter <| (term, fun input -> isRegexMatch (lowerCase pattern) (lowerCase input))
  +
  +    let inline statsFilter term op value = StatsFilter <| (term, fun x -> op x value)
  +
  +[<AutoOpen>]
   module InternalDSL = 
  -    let private lowerCase (str : string) = str.ToLower()
  -    let private isRegexMatch pattern input = Regex.IsMatch(input, pattern)
  -
  -    let inline private eqFilter filter term lf = filter <| (term, fun rt -> lowerCase lf = lowerCase rt)
  -    let inline private regexFilter filter term pattern = filter <| (term, fun input -> isRegexMatch (lowerCase pattern) (lowerCase input))
  -
       let namespaceIs ns        = eqFilter MetricFilter Namespace ns
       let namespaceLike pattern = regexFilter MetricFilter Namespace pattern
   
  
positive.code: 
  [<AutoOpen>]
  module ExternalDSL =
      ()
  
  [<AutoOpen>]
  module Execution = 
  
negative.code:     let nameLike pattern      = regexFilter MetricFilter Name pattern
  
      let unitIs unit           = eqFilter UnitFilter Unit unit
      
      let average op value      = statsFilter Average op value
      let min op value          = statsFilter Min op value
      let max op value          = statsFilter Max op value
  