anchor.diff:      member this.``Arr of tuples``() = 
           let command = 
               <@ 
  -                fun (range:_1D) (buf:array<int>) (k1:int*int) (arr:array<int*int>)  -> 
  +                fun (range:_1D) (buf:array<int>)  (k1:int*int) (arr:array<int*int>) (arr2:array<int*byte>)  -> 
                       let k2 = (5, 6)
  +                    let k3 = (0, 1uy)
  +                    arr2.[0] <- k3
                       arr.[0] <- k1
                       arr.[1] <- k2
                       buf.[0] <- fst (arr.[0]) + snd (arr.[1]) + snd (arr.[2])
  -            @>
  -        let run,check = checkResult command
  -        run _1d intInArr (1, 2) [|(1, 2); (3, 4); (5, 6)|]
  -        check intInArr [|13; 1; 2; 3|]
  +                    buf.[1] <- fst (arr2.[0])
  +            @>
  +        let run,check = checkResult command
  +        run _1d intInArr (1, 2) [|(1, 2); (3, 4); (5, 6)|] [|(1, 2uy)|]
  +        check intInArr [|13; 0; 2; 3|]
   
       [<Test>]
       member this.``Triple``() = 
  
positive.code:         check1 intInArr [|1; 2; 2; 3|]
  
      [<Test>]
      member this.``Struct with bool``() = //doesn't work
          let command = 
              <@ 
                  fun (range:_1D) (buf:array<int>) (s:e)  -> 
  
negative.code:                     buf.[1] <- int(fst k3)
              @>
          let run,check = checkResult command
          run _1d intInArr (10, 2) (4294967297L, 4uy) (float32(0), 9)
          check intInArr [|10; 0; 2; 3|]
  
      [<Test>]
      member this.``Multiple assignment``() = 
          let command = 
              <@ 
                  fun (range:_1D) (buf:array<int>) -> 
                      let (a, b) = (1, 2)
                      buf.[0] <- a
              @>
          let run,check = checkResult command
          run _1d intInArr  
          check intInArr [|1; 1; 2; 3|]
  
      [<Test>]
      [<Ignore("Ignore a test")>]
      member this.``Multiple assignment doesn't work``() = 
          let command = 
              <@ 
                  fun (range:_1D) (buf:array<int>) -> 
                      let (a, b) = (1, 2)
                      buf.[0] <- fst (a, b)
              @>
          let run,check = checkResult command
          run _1d intInArr  
          check intInArr [|1; 2; 2; 3|]
  
      [<Test>]
      member this.``fst, snd and new tuple``() = 
  