separating factories