implement swap_rows,delete_row