https://www.karlancer.com/blog/decision-tree/