Only concrete classes depend on CharacterModel