public static void votepred(int COPYK) throws IOException {
    //		if (!(new File(Main.dir_votepred)).exists()) {
    //			(new File(Main.dir_votepred)).mkdir();
    //		}
    // DelimitedWriter dw = new DelimitedWriter(Main.file_votepred);
    List<String[]> clauses = new ArrayList<String[]>();
    {
      List<String[]> all1 = (new DelimitedReader(Main.file_typeclause)).readAll();
      List<String[]> all2 = (new DelimitedReader(Main.file_relationrelclause)).readAll();
      for (String[] a : all1) {
        clauses.add(a);
      }
      for (String[] b : all2) {
        clauses.add(b);
      }
    }
    HashCount<String> hc = new HashCount<String>();
    for (int i = 0; i < COPYK; i++) {
      D.p("iter", i);
      Collections.shuffle(clauses);
      WeightedClauses wc = new WeightedClauses(clauses);
      wc.update();
      List<String> vars = wc.printFinalResult();
      for (String v : vars) {
        hc.add(v);
      }
    }
    hc.printAll(Main.file_predict_vote);
    // dw.close();

  }
  public static void predtypeonly() {

    WeightedClauses wc = new WeightedClauses(Main.file_typeclause);
    wc.update();
    wc.printFinalResult(Main.file_predict_typeonly);
  }
  public static void predjoint() {

    WeightedClauses wc = new WeightedClauses(Main.file_jointlclause);
    wc.update();
    wc.printFinalResult(Main.file_predict_joint);
  }
  public static void predrelonly() {

    WeightedClauses wc = new WeightedClauses(Main.file_relationrelclause);
    wc.update();
    wc.printFinalResult(Main.file_predict_relonly);
  }