void (@NotNull final StdArrangementMatchRule rule, @NotNull final List<? super StdArrangementMatchRule> rules, @NotNull final Map<String, StdArrangementRuleAliasToken> tokenIdToDefinition) { final List<StdArrangementMatchRule> sequence = getRuleSequence(rule, tokenIdToDefinition); if (sequence.isEmpty()) { rules.add(rule); return; } final ArrangementCompositeMatchCondition ruleTemplate = removeAliasRuleToken(rule.getMatcher().getCondition()); for (StdArrangementMatchRule matchRule : sequence) { final ArrangementCompositeMatchCondition extendedRule = ruleTemplate.clone(); extendedRule.addOperand(matchRule.getMatcher().getCondition()); rules.add(new StdArrangementMatchRule(new StdArrangementEntryMatcher(extendedRule), rule.getOrderType())); } }