class Table extends Relation implements Iterable<Row> {

  public Table dropDuplicateRows() {

    Table sorted = this.sortOn(columnNames().toArray(new String[columns().size()]));
    Table temp = emptyCopy();

    for (int row = 0; row < rowCount(); row++) {
      if (temp.isEmpty() || !Rows.compareRows(row, sorted, temp)) {
        Rows.appendRowToTable(row, sorted, temp);
      }
    }
    return temp;
  }

  private  Table();
  private  Table(String name);
  protected  Table(String name, Column<?>... columns);
  protected  Table(String name, Collection<Column<?>> columns);

}