add flexible cmds