class RegexRuleFilterEvaluator {

  private final RegexRuleFilter filter;

  public RegexRuleFilterEvaluator(RegexRuleFilter filter) {
    this.filter = filter;
  }

  @Nullable
  public RuleMatch runFilter(String filterArgs, RuleMatch ruleMatch, AnalyzedSentence sentenceObj, Matcher patternMatcher) {
    Map<String,String> args = getResolvedArguments(filterArgs);
    return filter.acceptRuleMatch(ruleMatch, args, sentenceObj, patternMatcher);
  }

  private Map<String,String> getResolvedArguments(String filterArgs) {<FILL_FUNCTION_BODY>}

}

    Map<String,String> result = new HashMap<>();
    String[] arguments = filterArgs.split("\\s+");
    for (String arg : arguments) {
      int delimPos = arg.indexOf(':');
      if (delimPos == -1) {
        throw new RuntimeException("Invalid syntax for key/value, expected 'key:value', got: '" + arg + "'");
      }
      String key = arg.substring(0, delimPos);
      String val = arg.substring(delimPos + 1);
      result.put(key, val);
    }
    return result;
  
<no_super_class>