some more cannon functionality