code: def summary(self, raw):
          
          taxonomies = []
          level = "info"
          namespace = "Patrowl"
  
          # getreport service
          if self.service == 'getreport':
              if 'risk_level' in raw and raw['risk_level']:
                  risk_level = raw['risk_level']
  
                  # Grade
                  if risk_level['grade'] in ["A", "B"]:
                      level = "safe"
                  else:
                      level = "suspicious"
                  
                  taxonomies.append(self.build_taxonomy(level, namespace, "Grade", risk_level['grade']))
  
                  # Findings
                  if risk_level['high'] > 0:
                      level = "malicious"
                  elif risk_level['medium'] > 0 or risk_level['low'] > 0:
                      level = "suspicious"
                  else:
                      level = "info"
  
                  taxonomies.append(self.build_taxonomy(
                      level, namespace, "Findings", "{}/{}/{}/{}".format(
                          risk_level['high'],
                          risk_level['medium'],
                          risk_level['low'],
                          risk_level['info']
                      )))
          #todo: add_asset service
  
          return {"taxonomies": taxonomies}
docs: Parse, format and return scan summary.