⎗ ✓ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18def spiral_transposition(m): output = [] direction = 0 while len(m) > 0: match direction: case 0: output += m.pop(0) direction += 1 case 1: output += [m[i].pop(-1) for i in range(len(m))] direction += 1 case 2: output += m.pop(-1)[::-1] direction += 1 case 3: output += [m[i].pop(0) for i in range(len(m))][::-1] direction = 0 return output