. . "For each factory there was an abstract factory (who knows, the factory might have to change and then you do not want the calling code to have to change...)." . .