public int traitHyphenationCharacter() {
/* TODO: Clean this method up after we clean up the construction. */
final Fo generatedBy = this.traitGeneratedBy();
if (generatedBy instanceof CharacterSequence) {
final CharacterSequence character = (CharacterSequence) generatedBy;
return character.traitHyphenationCharacter(this);
} else {
final NormalBlockArea blockArea = this.ancestorNormalBlockArea();
final Block block = blockArea.traitGeneratedBy();
return block.traitHyphenationCharacter(blockArea);
}