class ClientFactory {
  private ClientFactory() {
    throw new IllegalStateException("Utility class");
  }

  public static KnativeClient newClient(String[] args) {
    ConfigBuilder config = new ConfigBuilder();
    for (int i = 0; i < args.length - 1; i++) {

      String key = args[i];
      String value = args[i + 1];

      if (key.equals("--api-server")) {
        config = config.withMasterUrl(value);
      }

      if (key.equals("--token")) {
        config = config.withOauthToken(value);
      }

      if (key.equals("--username")) {
        config = config.withUsername(value);
      }

      if (key.equals("--password")) {
        config = config.withPassword(value);
      }
      if (key.equals("--namespace")) {
        config = config.withNamespace(value);
      }
    }
    return new KubernetesClientBuilder().withConfig(config.build()).build().adapt(KnativeClient.class);
  }

  public static String getOptions(String[] args, String name, String defaultValue) {<FILL_FUNCTION_BODY>}
}

    for (int i = 0; i < args.length - 1; i++) {
      String key = args[i];
      String value = args[i + 1];
      if (key.equals(name)) {
        return value;
      }
    }
    return defaultValue;
  
<no_super_class>