takes empty list