defprotocol for ctags