Create AbstractFacotry.cpp