Need more care on match()