tried adding support for not ('!')