class TranslationTable {

    @VisibleForTesting
    @SuppressFBWarnings(value = "OCP_OVERLY_CONCRETE_PARAMETER", justification = "glyph order is semantically important")
    public final List<GlyphPair> scriptTwoToScriptOneList(List<GlyphPair> homoglyphPairs) {
        return homoglyphPairs.stream()
                .map(GlyphPair::swap)
                .sorted(sortByLength.reversed().thenComparing(sortByNaturalOrder))
                .collect((toList()));
    }

    public  TranslationTable(Pattern script1Reg, Pattern script2Reg, List<GlyphPair> homoglyphPairs);

}