class AkCollatorFactory {

    static synchronized Collator forScheme(final CollationSpecifier specifier) {
        RuleBasedCollator collator = (RuleBasedCollator) sourceMap.get(specifier.toString());
        if (collator == null) {
            collator = specifier.createCollator();
            sourceMap.put(specifier.toString(), collator);
        }
        collator = collator.cloneAsThawed();
        return collator;
    }

}