code: private OptimizerPostPass getPostPassFromPlan(Plan program) {
  		final String className =  program.getPostPassClassName();
  		if (className == null) {
  			throw new CompilerException("Optimizer Post Pass class description is null");
  		}
  		try {
  			Class<? extends OptimizerPostPass> clazz = Class.forName(className).asSubclass(OptimizerPostPass.class);
  			try {
  				return InstantiationUtil.instantiate(clazz, OptimizerPostPass.class);
  			} catch (RuntimeException rtex) {
  				// unwrap the source exception
  				if (rtex.getCause() != null) {
  					throw new CompilerException("Cannot instantiate optimizer post pass: " + rtex.getMessage(), rtex.getCause());
  				} else {
  					throw rtex;
  				}
  			}
  		} catch (ClassNotFoundException cnfex) {
  			throw new CompilerException("Cannot load Optimizer post-pass class '" + className + "'.", cnfex);
  		} catch (ClassCastException ccex) {
  			throw new CompilerException("Class '" + className + "' is not an optimizer post passer.", ccex);
  		}
  	}
docs: ------------------------------------------------------------------------