let
  fun unturn(x) = turn(turn(turn(x)))
  fun pile(x, y) = unturn(sew(turn(y), turn(x)))
  val row1 = sew(turn(b), unturn(b))
  val row2 = sew(unturn(b), turn(a))
  val row3 = sew(turn(a), unturn(a))
  val top_left_cell = pile(row1,row2)
  fun make_square(x) = pile(sew(x, turn(x)), sew(unturn(x), turn(turn(x))))
in
        make_square(make_square(top_left_cell))
end