text: import re
  from lm_eval.base import MultipleChoiceTask
  from . common import HFTask
  
  
  class HellaSwag(HFTask, MultipleChoiceTask):
      VERSION = 0
      DATASET_PATH = "hellaswag"
      DATASET_NAME = None
  
      def has_training_docs(self):
          return True
  
      def has_validation_docs(self):
          return True
  
      def has_test_docs(self):
          return False
  
      @classmethod
      def preprocess(cls, text):
          text = text.strip()
          # NOTE: Brackets are artifacts of the WikiHow dataset portion of HellaSwag.
          text = text.replace(" [title]", ". ")
          text = re.sub('\\[.*?\\]', '', text)
          text = text.replace("  ", " ")
          return text
  
      def _convert_standard(self, doc):
          ctx = doc["ctx_a"] + " " + doc["ctx_b"].capitalize()
          out_doc = {
              "query": self.preprocess(doc['activity_label'] + ': ' + ctx),
              "choices": [self.preprocess(ending) for ending in doc['endings']],
              "gold": int(doc['label']),
          }
          return out_doc
  
      def doc_to_text(self, doc):
          return doc["query"]
  