@SuppressWarnings("unused")
	@Override
	public StringConfiguration parseInputParameters(String[] args) {
		GrammaticalInputReader reader = new GrammaticalInputReader();
		JCommander jcomm = new JCommander(reader, args);
		String output = reader.singleFileOutput() ? reader.output() : reader.output() + "/" + reader.buildOutputName();
		StringConfiguration gc = new StringConfiguration(reader.input(), output);

		gc.setInputSuff(reader.suffix());
		gc.setOutSuff(reader.outSuffix());
		gc.setSingleFileOutput(reader.singleFileOutput());
		
//		if(reader.lemmatise()) {
//			gc.addAnnotator(StringAnnotatorEnum.LEMMATISER.getAnnotator(),true);
//			System.out.println("Lemmatising");
//		}
//		else{
//			if(reader.stem()) {
//				gc.addAnnotator(StringAnnotatorEnum.STEMMER.getAnnotator(), true);
//			}
//			else {
//				if(reader.token()) {
//					gc.addAnnotator(StringAnnotatorEnum.TOKEN.getAnnotator(), true);
//				}
//			}
//		}
		if(reader.entities()){
			gc.addAnnotator(StringAnnotatorEnum.ENTITY.getAnnotator(),true);
		}
		if(reader.token()) {
			gc.addAnnotator(StringAnnotatorEnum.TOKEN.getAnnotator(), true);
		}
		//reader.getAdditionalAnnotators();
		if(reader.sentence()){
			gc.addAnnotator(StringAnnotatorEnum.SENTENCE.getAnnotator(), true);
		}
		if(reader.posTag()){
			gc.addAnnotator(StringAnnotatorEnum.POSTAG.getAnnotator(), true);
		}
		if(reader.chunkToken()){
			gc.addAnnotator(StringAnnotatorEnum.CHUNKTAG.getAnnotator(), true);
		}
		if(reader.person()){
			gc.addAnnotator(StringAnnotatorEnum.PERSON.getAnnotator(), true);
		}
		if(reader.location()){
			gc.addAnnotator(StringAnnotatorEnum.LOCATION.getAnnotator(), true);
		}
		if(reader.organisation()){
			gc.addAnnotator(StringAnnotatorEnum.ORGANISATION.getAnnotator(), true);
		}
		return gc;
	}