anchor.diff:          let i4max = defaultArg i4max (t.Shape.[4] - 1)
           let bounds = array2D [[i0min; i0max]; [i1min; i1max]; [i2min; i2max]; [i3min; i3max]; [i4min; i4max]]
           t.GetSlice(bounds)
  +
       member t.GetSlice(i0min:int option, i0max:int option, i1:int, i2:int, i3min:int option, i3max:int option, i4:int) =
           let i0min = defaultArg i0min 0
           let i0max = defaultArg i0max (t.Shape.[0] - 1)
  
positive.code:         let i5max = i5
          let bounds = array2D [[i0min; i0max]; [i1min; i1max]; [i2min; i2max]; [i3min; i3max]; [i4min; i4max]; [i5min; i5max]]
          t.GetSlice(bounds)
  
  
  [<RequireQualifiedAccess>]
  [<CompilationRepresentation (CompilationRepresentationFlags.ModuleSuffix)>]
  module Tensor =
      let create (count:int) (value:float32) = Tensor.Create(Array.create count value)
      let zeroCreate (count:int) = Tensor.Create(Array.zeroCreate count)
      let init (count:int) (initializer:int->float32) = Tensor.Create(Array.init count initializer)
      let shape (t:Tensor) = t.Shape
      let dim (t:Tensor) = t.Dim
negative.code:         let i5max = i5
          let bounds = array2D [[i0min; i0max]; [i1min; i1max]; [i2min; i2max]; [i3min; i3max]; [i4min; i4max]; [i5min; i5max]]
          t.GetSlice(bounds)
  
      member t.GetSlice(i0:int, i1:int, i2:int, i3:int, i4:int, i5min:int option, i5max:int option) =
          let i0min = i0
          let i0max = i0
  