rename Factory to SimpleFactory