update chain