factory interface fix