Better pattern matching.