add a matching function