Create factory-pattern.h