code: public ScriptWrapper loadScript(ScriptWrapper script) throws IOException {
  		try {
  			return loadScript(script, DEFAULT_CHARSET);
  		} catch (MalformedInputException e) {
  			if (Charset.defaultCharset() == DEFAULT_CHARSET) {
  				// No point trying the (JVM) default charset if it's the same...
  				throw e;
  			}
  
  			if (logger.isDebugEnabled()) {
  				logger.debug(
  						"Failed to load script [" + script.getName() + "] using [" + DEFAULT_CHARSET + "], falling back to ["
  								+ Charset.defaultCharset() + "].",
  						e);
  			}
  			return loadScript(script, Charset.defaultCharset());
  		}
  	}
docs: Loads the script from the file, using {@link #DEFAULT_CHARSET}.
  <p>
  If the file contains invalid byte sequences (for {@code DEFAULT_CHARSET}) it will be loaded again using the
  {@link Charset#defaultCharset() (JVM) default charset}, to load scripts saved with older ZAP versions (which relied on
  default charset).
  
  @param script the ScriptWrapper to be loaded (read script from 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} is {@code null}.
  @see #loadScript(ScriptWrapper, Charset)