This is the code about data structure