Program: 113779
Project: 113779
Buggy source:
public static void main(String[] args){
  try {
    Logging.start(Logging.LEVEL_ERROR);
    TimeSync.initialize(null,60000,50,"String_Node_Str");
    Map<String,CLIParser.CliOption> options=new HashMap();
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.SWITCH));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.SWITCH));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.STRING));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.STRING));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.NUMBER));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.STRING));
    CLIParser.parseCLI(args,options,new ArrayList(1));
    final String hostname=options.get("String_Node_Str").stringValue;
    final Long port=options.get("String_Node_Str").numValue;
    if ((hostname == null) || (port == null)) {
      System.out.println("String_Node_Str");
      System.exit(1);
    }
    final RPCNIOSocketClient rpcClient=new RPCNIOSocketClient(null,10000,60000);
    rpcClient.start();
    rpcClient.waitForStartup();
    final DIRClient client=new DIRClient(rpcClient,new InetSocketAddress(hostname,port.intValue()));
    if (options.get("String_Node_Str").switchValue && (options.get("String_Node_Str").stringValue != null)) {
      RPCResponse<AddressMappingSet> response=client.address_mappings_get(null,options.get("String_Node_Str").stringValue);
      AddressMappingSet ams=response.get();
      printAddressMappings(ams);
    }
    if (options.get("String_Node_Str").switchValue && (options.get("String_Node_Str").stringValue != null)) {
      Pattern p=Pattern.compile("String_Node_Str");
      Matcher m=p.matcher(options.get("String_Node_Str").stringValue);
      if (m.matches()) {
        RPCResponse<AddressMappingSet> response=client.address_mappings_get(null,options.get("String_Node_Str").stringValue);
        AddressMappingSet ams=response.get();
        long version=0;
        if (ams.size() > 0) {
          version=ams.get(0).getVersion();
        }
        AddressMapping am=new AddressMapping(options.get("String_Node_Str").stringValue,version,m.group(2),m.group(3),Integer.valueOf(m.group(4)),m.group(1),3600);
        ams.clear();
        ams.add(am);
        RPCResponse<Long> r=client.address_mappings_set(null,ams);
        r.get();
      }
 else       System.out.println("String_Node_Str" + options.get("String_Node_Str").stringValue);
    }
    rpcClient.shutdown();
    rpcClient.waitForShutdown();
  }
 catch (  IOException ex) {
    System.out.println("String_Node_Str");
    ex.printStackTrace();
    System.exit(2);
  }
catch (  Throwable ex) {
    ex.printStackTrace();
    System.exit(3);
  }
}

Fixed version (ground truth):
public static void main(String[] args){
  try {
    Logging.start(Logging.LEVEL_ERROR);
    TimeSync.initialize(null,60000,50);
    Map<String,CLIParser.CliOption> options=new HashMap();
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.SWITCH));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.SWITCH));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.STRING));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.STRING));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.NUMBER));
    options.put("String_Node_Str",new CliOption(CliOption.OPTIONTYPE.STRING));
    CLIParser.parseCLI(args,options,new ArrayList(1));
    final String hostname=options.get("String_Node_Str").stringValue;
    final Long port=options.get("String_Node_Str").numValue;
    if ((hostname == null) || (port == null)) {
      System.out.println("String_Node_Str");
      System.exit(1);
    }
    final RPCNIOSocketClient rpcClient=new RPCNIOSocketClient(null,10000,60000);
    rpcClient.start();
    rpcClient.waitForStartup();
    final DIRClient client=new DIRClient(rpcClient,new InetSocketAddress(hostname,port.intValue()));
    if (options.get("String_Node_Str").switchValue && (options.get("String_Node_Str").stringValue != null)) {
      RPCResponse<AddressMappingSet> response=client.address_mappings_get(null,options.get("String_Node_Str").stringValue);
      AddressMappingSet ams=response.get();
      printAddressMappings(ams);
    }
    if (options.get("String_Node_Str").switchValue && (options.get("String_Node_Str").stringValue != null)) {
      Pattern p=Pattern.compile("String_Node_Str");
      Matcher m=p.matcher(options.get("String_Node_Str").stringValue);
      if (m.matches()) {
        RPCResponse<AddressMappingSet> response=client.address_mappings_get(null,options.get("String_Node_Str").stringValue);
        AddressMappingSet ams=response.get();
        long version=0;
        if (ams.size() > 0) {
          version=ams.get(0).getVersion();
        }
        AddressMapping am=new AddressMapping(options.get("String_Node_Str").stringValue,version,m.group(2),m.group(3),Integer.valueOf(m.group(4)),m.group(1),3600);
        ams.clear();
        ams.add(am);
        RPCResponse<Long> r=client.address_mappings_set(null,ams);
        r.get();
      }
 else       System.out.println("String_Node_Str" + options.get("String_Node_Str").stringValue);
    }
    rpcClient.shutdown();
    rpcClient.waitForShutdown();
  }
 catch (  IOException ex) {
    System.out.println("String_Node_Str");
    ex.printStackTrace();
    System.exit(2);
  }
catch (  Throwable ex) {
    ex.printStackTrace();
    System.exit(3);
  }
}