trivial_pattern approach