anchor.diff:      member val Position6 = position with get, set
       member val Position7 = position with get, set
   
  -type BigPositionComponent2 (position : Vector3) =
  -    inherit Component ()
  -
  -    member val Position1 = position with get, set
  -    member val Position2 = position with get, set
  -    member val Position3 = position with get, set
  -    member val Position4 = position with get, set
  -    member val Position5 = position with get, set
  -    member val Position6 = position with get, set
  -    member val Position7 = position with get, set
  -
  -type BigPositionComponent3 (position : Vector3) =
  -    inherit Component ()
  -
  -    member val Position1 = position with get, set
  -    member val Position2 = position with get, set
  -    member val Position3 = position with get, set
  -    member val Position4 = position with get, set
  -    member val Position5 = position with get, set
  -    member val Position6 = position with get, set
  -    member val Position7 = position with get, set
  -
  -type BigPositionComponent4 (position : Vector3) =
  -    inherit Component ()
  -
  -    member val Position1 = position with get, set
  -    member val Position2 = position with get, set
  -    member val Position3 = position with get, set
  -    member val Position4 = position with get, set
  -    member val Position5 = position with get, set
  -    member val Position6 = position with get, set
  -    member val Position7 = position with get, set
  -
  -type BigPositionComponent5 (position : Vector3) =
  -    inherit Component ()
  -
  -    member val Position1 = position with get, set
  -    member val Position2 = position with get, set
  -    member val Position3 = position with get, set
  -    member val Position4 = position with get, set
  -    member val Position5 = position with get, set
  -    member val Position6 = position with get, set
  -    member val Position7 = position with get, set
  -
   let proto () =
       entity {
           add (PositionComponent Unchecked.defaultof<Vector3>)
           add (SubSystemComponent ())
           add (BigPositionComponent1 Unchecked.defaultof<Vector3>)
  -        add (BigPositionComponent2 Unchecked.defaultof<Vector3>)
  -        add (BigPositionComponent3 Unchecked.defaultof<Vector3>)
  -        add (BigPositionComponent4 Unchecked.defaultof<Vector3>)
  -        add (BigPositionComponent5 Unchecked.defaultof<Vector3>)
       }
   
   type title =
  
positive.code: open System
  
  open Foom.Collections
  
  let perf title iterations f =
      let mutable total = 0.
      GC.Collect (2, GCCollectionMode.Forced, true)
      for i = 1 to iterations do
          let stopwatch = System.Diagnostics.Stopwatch.StartNew ()
          f ()
          stopwatch.Stop ()
          total <- total + stopwatch.Elapsed.TotalMilliseconds
  
      printfn "%s: %A" title (total / double iterations)
  
  [<Struct>]
  type Vector3 =
  
negative.code:                 }
              plotOptions =
                  {
                      series = { pointStart = 0 }
                  }
              series = 
                  [|
                      test1
                      test2
                      test3
                      test4
                      test5
                      test6
                      test7
                      test8
                  |]
          }
  
  