fixed operator !! and some other bugs