created simple-factory