add command handling