code: def split(self, depth):
          
  
          l = len(self.labels)
          if depth == 0:
              return (self, dns.name.empty)
          elif depth == l:
              return (dns.name.empty, self)
          elif depth < 0 or depth > l:
              raise ValueError('depth must be >= 0 and <= the length of the name')
          return (Name(self[: -depth]), Name(self[-depth :]))
docs: Split a name into a prefix and suffix at depth.
  
          @param depth: the number of labels in the suffix
          @type depth: int
          @raises ValueError: the depth was not >= 0 and <= the length of the
          name.
          @returns: the tuple (prefix, suffix)
          @rtype: tuple