use tuples instead of lists