      "        root = Node(data)\n",
      "        return root\n",
      "    if data <= root.data:\n",
      "        if root.left is None:\n",
      "            root.left = Node(data)\n",
      "            root.left.parent = root\n",
      "            return root.left\n",
      "        else:\n",
      "            return insert(root.left, data)\n",
      "    else:\n",
 
</s> remove     "            return root.left\n",
 </s> add  </s> remove     "            return insert(root.left, data)\n",
 </s> add     "            insert(root.left, data)\n", </s> remove     "            root.right = Node(data)\n",
 </s> add     "            root.right = insert(root.right, data)\n", </s> remove     "            return root.right\n",
 </s> add 
    "            root.left = insert(root.left, data)\n",
      "        root = Node(data)\n",
      "        return root\n",
      "    if data <= root.data:\n",
      "        if root.left is None:\n",
    "            root.left = insert(root.left, data)\n",
      "            root.left.parent = root\n",
      "            return root.left\n",
      "        else:\n",
      "            return insert(root.left, data)\n",
      "    else:\n",
keep keep keep keep replace keep keep keep keep keep
 Polish bst challenge and solution (#75)

Update constraints, algorithm discussion, and code. 
graphs_trees/bst/bst_solution.ipynb