def from2dBlocks(arr):
s = arr.shape<EOL>s0, s1 = s[<NUM_LIT:0>] * s[<NUM_LIT:2>], s[<NUM_LIT:1>] * s[<NUM_LIT:3>]<EOL>return unblockshaped(arr.reshape(s[<NUM_LIT:0>] * s[<NUM_LIT:1>], s[<NUM_LIT:2>], s[<NUM_LIT:3>]), s0, s1)<EOL>
input needs to be 4d array (2d array of 2d arrays)