// This file is auto-generated. Changes to this file will be lost!

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 0);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 12);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 3, 4);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(12)->CastI2(), 4, 3);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2());
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(0->CastI2(), 3);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2());
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 0);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(3->CastI2(), 4, 2, 3);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.From(Range(12)->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.From(Range(12)->CastI2(), 12);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.From(Range(12)->CastI2(), 3, 4);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.From(Range(12)->CastI2(), 4, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.From(Range(4)->CastI2(), 1, 0, 1);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.From(Range(4)->CastI2(), 3, 1, 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.Fill(0->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.Fill(0->CastI2(), 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.Fill(3->CastI2());
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.Fill(3->CastI2(), 0);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.Fill(3->CastI2(), 4, 2, 3);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

`` T := Tensor.Fill(4->CastI2(), 5, 3, 6);
`` U := Tensor.Fill(4->CastI2(), 5, 3, 6);
({'  T': T}, {'  U': U }, {Dot: T->Dot(U)})

