fix hierarchy bug