use set instead of list to avoid potential duplicate entries