def _stateMeetsRule(state, rule):
    if rule.HasField('phase'):
        if rule.phase != state.phase:
            return False

    if rule.HasField('min_level'):
        if state.level < rule.min_level:
            return False

    if rule.HasField('max_level'):
        if state.level > rule.max_level:
            return False

    # The state must contain ALL of the rule's stages
    for stage in rule.stage:
        if stage not in state.stage:
            return False

    # The state must contain NONE of the rule's not_stages
    for stage in rule.not_stage:
        if stage in state.not_stage:
            return False

    return True
Returns array with the "include" directives expanded out by
dataset/ETHPy150Open NVIDIA/DIGITS/digits/model/tasks/caffe_train.py/_stateMeetsRule--crossover with--dataset/ETHPy150Open letsencrypt/letsencrypt/certbot-nginx/certbot_nginx/parser.py/NginxParser._get_included_directives