<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def determine_reach_subtype(event_name):
 """Returns the category of reach rule from the reach rule instance. Looks at a list of regular expressions corresponding to reach rule types, and returns the longest regexp that matches, or None if none of them match. Parameters evidence : indra.statements.Evidence A reach evidence object to subtype Returns ------- best_match : str A regular expression corresponding to the reach rule that was used to extract this evidence """


    best_match_length = None
    best_match = None
    for ss in reach_rule_regexps:
        if re.search(ss, event_name):
            if best_match is None or len(ss) > best_match_length:
                best_match = ss
                best_match_length = len(ss)

    return best_match