add Root struct