revise data structure.