         "Y": .Y
     ]
     
-    internal static var possibleCodes: [String] { return Array(codes.keys) }
+    internal static var possibleCodes: [String]
+    {
+        return Array(codes.keys)
+    }
+    
+    internal static var possibleSubjectAreas: [SubjectArea]
+    {
+        return Array(Set(codes.values))
+    }
     
     public var parts: [String]
     {

    internal static var possibleCodes: [String]
    {
        return Array(codes.keys)
    }
    
    internal static func from(dictionaryCode code: String) -> Frequency?

    internal static var possibleCodes: [String]
    {
        return Array(codes.keys)
    }
    
    internal static var possibleAges: [Age]
    {
        return Array(Set(codes.values))
    }
    
    public var code: String { return self.rawValue }
