@cached_property<EOL><INDENT>def is_rectilinear(self):<DEDENT>
a, b, c, d, e, f, g, h, i = self<EOL>return (abs(a) < EPSILON and abs(e) < EPSILON) or (<EOL>abs(d) < EPSILON and abs(b) < EPSILON<EOL>)<EOL>
True if the transform is rectilinear, i.e., whether a shape would
        remain axis-aligned, within rounding limits, after applying the
        transform.