Correctly interpret patterns beggining with !