docs: def extract(self, topic: str, parseNumbers=True) -> list:
          """
          Extract items of given topic and return as list of objects.
  
          The topic is a string like TradeConfirm, ChangeInDividendAccrual,
          Order, etc.
          """
          cls = type(topic, (DynamicObject,), {})
          results = [cls(**node.attrib) for node in self.root.iter(topic)]
          if parseNumbers:
              for obj in results:
                  d = obj.__dict__
                  for k, v in d.items():
                      with suppress(ValueError):
                          d[k] = float(v)
                          d[k] = int(v)
          return results