public ICUNormalizer2FilterFactory(Map<String,String> args) {super(args);String form = get(args, "form", "nfkc_cf");String mode = get(args, "mode", Arrays.asList("compose", "decompose"), "compose");Normalizer2 normalizer = Normalizer2.getInstance(null, form, "compose".equals(mode) ? Normalizer2.Mode.COMPOSE : Normalizer2.Mode.DECOMPOSE);String filter = get(args, "filter");if (filter != null) {UnicodeSet set = new UnicodeSet(filter);if (!set.isEmpty()) {set.freeze();normalizer = new FilteredNormalizer2(normalizer, set);}}if (!args.isEmpty()) {throw new IllegalArgumentException("Unknown parameters: " + args);}this.normalizer = normalizer;}

public ICUNormalizer2FilterFactory(IDictionary<string, string> args): base(args){string name = Get(args, "name", "nfkc_cf");string mode = Get(args, "mode", new string[] { "compose", "decompose" }, "compose");Normalizer2 normalizer = Normalizer2.GetInstance(null, name, "compose".Equals(mode, StringComparison.Ordinal) ? Normalizer2Mode.Compose : Normalizer2Mode.Decompose);string filter = Get(args, "filter");if (filter != null){UnicodeSet set = new UnicodeSet(filter);if (set.Any()){set.Freeze();normalizer = new FilteredNormalizer2(normalizer, set);}}if (args.Count > 0){throw new ArgumentException("Unknown parameters: " + args);}this.normalizer = normalizer;}
