https://www.technotification.com/2018/08/binary-search-trees-in-python-1.html