offensive tree functionality complete