Factory Pattern changes :factory: