Still need to work on bubbleUp and trickleDown methods.