code: def _render(self):
          
          message = Message()
          message.add(Heading(tr('Problem'), **ORANGE_LEVEL_4_STYLE))
          message.add(Paragraph(tr(
              'The following problem(s) were encountered whilst running the '
              'analysis.')))
          items = BulletedList()
          for p in reversed(self.problems):
              # p is _always_ not None
              items.add(p)
          message.add(items)
  
          message.add(Heading(tr('Suggestion'), **GREEN_LEVEL_4_STYLE))
          message.add(Paragraph(tr(
              'You can try the following to resolve the issue:')))
          if len(self.suggestions) < 1:
              suggestions = self.standard_suggestions()
              message.add(suggestions)
          else:
              items = BulletedList()
              for s in reversed(self.suggestions):
                  if s is not None:
                      items.add(s)
              message.add(items)
  
          if len(self.details) > 0:
              items = BulletedList()
              message.add(Heading(
                  tr('Details'), **ORANGE_LEVEL_5_STYLE))
              message.add(Paragraph(tr(
                  'These additional details were reported when the problem '
                  'occurred.')))
              for d in self.details:
                  if d is not None:
                      items.add(d)
              message.add(items)
  
          message.add(Heading(tr(
              'Diagnostics'), **TRACEBACK_STYLE))
          message.add(self.tracebacks)
          return message
docs: Create a Message version of this ErrorMessage
  
          Args:
              none
  
          Returns:
              the Message instance of this ErrorMessage
  
          Raises:
              Errors are propagated