keywords stored as lowercase.