add some more gate definitions