add pattern matching project