Instead of confusing `setXXX()` calls, overwrite the `__constructor()`.