a simple data structure for efficiently storing a large number of strings to search against