     // MARK: - Other publics
     
     func allAccountedFor() -> Bool {
-        return self.remainingFlags().count == 0 && self.remainingOptions().count == 0
+        return self.remainingFlagOptions().count == 0 && self.remainingKeyedOptions().count == 0
     }
     
     func unaccountedForMessage(#command: Command, routedName: String) -> String? {

        
        if command.unhandledOptionsPrintingBehavior() != .PrintOnlyUsage {
            message += "Unrecognized options:"
            for flag in self.remainingFlags() {
                message += "\n\t\(flag)"
            }
            for option in self.remainingOptions() {
                message += "\n\t\(option) \(self.keyedOptions[option]!)"
            }
            

    
    // MARK: - Privates
    
    private func remainingFlagOptions() -> [String] {
        let remainingFlags = self.flagOptions.filter({ !contains(self.accountedForFlags, $0) })
        return remainingFlags
    }
    
    private func remainingKeyedOptions() -> [String] {
        let remainingKeys = self.keyedOptions.keys.filter({ !contains(self.accountedForKeys, $0) })
        return Array(remainingKeys)
    }
    
}