Added some keywords, tried to refactor a bit.