code: def insert(self, key):
          
          # Create new node
          n = TreeNode(key)
          if not self.node:
              self.node = n
              self.node.left = AvlTree()
              self.node.right = AvlTree()
          elif key < self.node.val:
              self.node.left.insert(key)
          elif key > self.node.val:
              self.node.right.insert(key)
          self.re_balance()
docs: Insert new key into node