data structure defined