sample files for factory design pattern