datastruct code