typical dataStruct