added general form of input file