 			let globalItem = NSMenuItem(title: "Global Log Level", action: nil, keyEquivalent: "")
 			globalItem.submenu = globalLevelMenu
 			parentMenu.addItem(globalItem)
+			parentMenu.addItem(categoryMenuItem)
 			let resetItem = NSMenuItem(title: "Reset All Categories", action: #selector(AppLogger.resetAllCategoriesToDefault(_:)), keyEquivalent: "")
 			resetItem.target = self
 			parentMenu.addItem(resetItem)
 			for aCategory in LogCategory.allRc2Categories {
 				let catMenu = menuItem(for: aCategory)
 				menu2Category[catMenu.submenu!] = aCategory
-				parentMenu.addItem(catMenu)
+				categoryMenuItem.submenu?.addItem(catMenu)
 			}
 		}
 	}

				anItem.state = config.globalLevel == itemLevel ? .on : .off
				anItem.isEnabled = itemLevel != config.globalLevel
			}
			return
		} else {
			//figure out what category we're dealing  with, and its current value

	
	/// creates a menu item for category with an item for each possible OtherLogLevel
	private func menuItem(for category: LogCategory) -> NSMenuItem {
		let item = NSMenuItem(title: category.rawValue, action: nil, keyEquivalent: "")
		let menu = NSMenu(title: category.rawValue)
		item.submenu = menu
		for aLevel in OtherLogLevel.allCases {
