`__new__` is the method which actually *builds* new objects. It's `__new__` that actually means the object has the methods of the class available to it for example. `__init__` is then used for initialization of the object which of course you know all about.

So:

    a = Affine(...)

roughly equals

   a