1.2.0
patterns implementation