changed bool::not to !