build pattern