code: public ScriptWrapper loadScript(ScriptWrapper script, Charset charset) throws IOException {
  		if (script == null) {
  			throw new IllegalArgumentException("Parameter script must not be null.");
  		}
  		if (charset == null) {
  			throw new IllegalArgumentException("Parameter charset must not be null.");
  		}
  		script.loadScript(charset);
          
          if (script.getType() == null) {
          	// This happens when scripts are loaded from the configs as the types 
          	// may well not have been registered at that stage
          	script.setType(this.getScriptType(script.getTypeName()));
          }
  	    return script;
  	}
docs: Loads the script from the file, using the given charset.
  
  @param script the ScriptWrapper to be loaded (read script from file).
  @param charset the charset to use when reading the script from the file.
  @return the {@code ScriptWrapper} with the actual script read from the file.
  @throws IOException if an error occurred while reading the script from the file.
  @throws IllegalArgumentException if the {@code script} or the {@code charset} is {@code null}.
  @since 2.7.0
  @see #loadScript(ScriptWrapper)