factory method app file