symmetric tree recursive