inverted x <-> y.
x can be different from y size