the table iterator is now generic