_ _ left right) = 1 + max (height left) (height right)

specialInsert x tree = updateDiffs $ treeInsert tree x

updateDiffs (Node _ root left right) =
  (Node heightDiff root (updateDiffs left) (updateDiffs right))
    where heightDiff = abs ((height left) - (height right))
updateDiffs (Node _ root left right) =
  (Node heightDiff root (updateDiffs left) (updateDiffs right))
    where heightDiff = abs ((height left) - (height right))