wondering whether it could be a good idea to test for than for equal shapes, looking at the test case restoring X2 should equal X.