add keywords, fix bugs
move keywords to data