update for structur refine