class RuleComponentImpl implements RuleComponent {

    private final List<Rule> rules;

    public RuleComponentImpl(
        final ProjectComponent projectComponent,
        final IssueComponent issues
    ) {
        this.rules = new LinkedList<>();
        install(new ProtectedNameRule(projectComponent, issues));
        install(new ReferencesEnabledRule(projectComponent, issues));
    }

    @Override
    public void install(Rule rule) {
        rules.add(rule);
    }

    @Override
    @SuppressWarnings("unchecked")
    public CompletableFuture<Boolean> verify() {<FILL_FUNCTION_BODY>}
}

        final CompletableFuture<Boolean>[] futures;
        futures = rules.stream().parallel()
            .map(Rule::verify)
            .toArray(CompletableFuture[]::new);

        return CompletableFutureUtil.allOf(Boolean.TRUE, Boolean::logicalAnd, futures);
    
<no_super_class>