abstract_pattern_2