pattern compo