added clean hierarchy