docs: public String transform(CharSequence content, File inputFile) {
  		final ParsingContext rootContextForReplacements = new ParsingContext();
  		initializeContext(rootContextForReplacements);
  		CharSequence rawContent = preProcessing(content);
  		Stage stage = Stage.first();
  		do {
  			final ContentParserInterceptor interceptor = new ContentParserInterceptor();
  			// Reset the lineno because it is not reset between the different stages.
  			rootContextForReplacements.setLineNo(1);
  			final boolean hasChanged = parse(rawContent, inputFile, 0, stage, rootContextForReplacements, interceptor);
  			if (hasChanged) {
  				rawContent = interceptor.getResult();
  			}
  			stage = stage.next();
  		} while (stage != null);
  		return postProcessing(rawContent);
  	}