update and reorginzation