code: def get_width(self, element):
          '''get_width
  
          High-level api: Calculate how much indent is needed for a node.
  
          Parameters
          ----------
  
          element : `Element`
              A node in model tree.
  
          Returns
          -------
  
          int
              Start position from the left margin.
          '''
  
          parent = element.getparent()
          if parent in self.width:
              return self.width[parent]
          ret = 0
          for sibling in parent.getchildren():
              w = len(self.get_name_str(sibling))
              if w > ret:
                  ret = w
          self.width[parent] = math.ceil((ret + 3) / 3.0) * 3
          return self.width[parentf get_width(self, element):
          '''get_width
  
          High-level api: Calculate how much indent is needed for a node.
  
          Parameters
          ----------
  
          element : `Element`
              A node in model tree.
  
          Returns
          -------
  
          int
              Start position from the left margin.
          '''
  
          parent = element.getparent()
          if parent in self.width:
              return self.width[parent]
          ret = 0
          for sibling in parent.getchildren():
              w = len(self.get_name_str(sibling))
              if w > ret:
                  ret = w
          self.width[parent] = math.ceil((ret + 3) / 3.0) * 3
          return self.width[parent]
docs: get_width
  
          High-level api: Calculate how much indent is needed for a node.
  
          Parameters
          ----------
  
          element : `Element`
              A node in model tree.
  
          Returns
          -------
  
          int
              Start position from the left margin.