add Simple Factory Pattern