code: def _preceding_siblings(
              self, qname: Union[QualName, bool] = None) -> List[InstanceNode]:
          
          if qname and self.qual_name != qname:
              return []
          res = []
          en = self
          for _ in self.before:
              en = en.previous()
              res.append(en)
          return res
docs: XPath - return the list of receiver's preceding siblings.