added keyword processing