add generateOab and printCmdUsage