def insert(self, val):
    currentNode = self
    while True:
        if (val < currentNode.val):
            if (currentNode.left is None):
                currentNode.left = BST(val)
                break
            else:
                currentNode = currentNode.left
        elif (currentNode.right is None):
            currentNode.right = BST(val)
            break
        else:
            currentNode = currentNode.right
    return self
def insert(self, val):
    currentNode = self
    while True:
        if (val < currentNode.val):
            if (currentNode.left is None):
                currentNode.left = BST(val)
                break
            else:
                currentNode = currentNode.left
        elif (currentNode.right is None):
            currentNode.right = BST(val)
            break
        else:
            currentNode = currentNode.right
    return self