docs: public static Assignment unionAll(Collection<Assignment> assignments) {
      int numVars = 0;
      for (Assignment assignment : assignments) {
        numVars += assignment.size();
      }
  
      int[] vars = new int[numVars];
      Object[] values = new Object[numVars];
      int numFilled = 0;
      for (Assignment assignment : assignments) {
        int[] assignmentVars = assignment.vars;
        Object[] assignmentValues = assignment.values;
        int numAssignmentVars = assignment.vars.length;
        for (int i = 0; i < numAssignmentVars; i++) {
          vars[numFilled] = assignmentVars[i];
          values[numFilled] = assignmentValues[i];
          numFilled++;
        }
      }
      Preconditions.checkState(numFilled == numVars);
      return Assignment.fromUnsortedArrays(vars, values);
    }