odm recursive setup finish