factorypattern

@factorypattern