41    typedef std::map<std::u16string_view, std::u16string_view> ConstraintData;
 
   42    typedef std::pair<std::u16string_view, ConstraintData> PronounEntry;
 
   43    struct DefaultPronounData;
 
   46    std::shared_ptr<PronounData> pronounData;
 
   47    ::std::map<std::u16string, ::std::u16string> defaultConstraints {  };
 
   48    int32_t defaultPronounIndex { -1 };
 
   51    static std::shared_ptr<PronounConcept::DefaultPronounData> createPronounDataForModel(
const SemanticFeatureModel& model, 
const char16_t* 
const readerCharArray);
 
   52    static std::shared_ptr<PronounConcept::DefaultPronounData> getPronounData(
const SemanticFeatureModel& model);
 
   53    static std::optional<::std::u16string_view> getFeatureValueForPronoun(
const PronounConcept::ConstraintData &constraintData, 
const SemanticFeature& feature);
 
   54    bool isMatchingSoundProperty(const ::std::u16string& displayValue, std::u16string_view matchType) 
const;
 
   55    bool isMatchingInitialPronoun() 
const;
 
   56    static MatchState getMatchState(
const PronounConcept::ConstraintData& valueConstraintMap, 
const std::u16string& semanticName, 
const std::u16string& semanticValue);
 
  113    PronounConcept(
const SemanticFeatureModel& model, const ::std::vector<::inflection::dialog::DisplayValue>& defaultDisplayData, const ::std::map<SemanticFeature, ::std::u16string>& defaultConstraints);
 
  149    static std::map<std::u16string, std::shared_ptr<PronounConcept::DefaultPronounData>>* PRONOUN_DATA_CACHE();