add pattern Composit