code: def is_dynamic(self):
          
          if self is not self.final:
              return self.final.is_dynamic
  
          return any([x.is_dynamic for x in self.children])
docs: True if this type uses dynamic (Heap) memory.
          e.g. strings or dynamic arrays