use high-level function to do root travse