fatalf("non-aggregatable type: %d", type->id);
fatalf("unsupported length: %d", type->length);
void aggregateField(FieldType* type, FieldData* baseData, FieldData* deltaData) {			switch (type->id) {		case IPFIX_TYPEID_flowCreationTime:			if (type->length != 4) {				fatalf("unsupported length: %d", type->length);				return;				}			*(uint32_t*)baseData = lesserUint32Nbo(*(uint32_t*)baseData, *(uint32_t*)deltaData);			break;				case IPFIX_TYPEID_flowEndTime:			if (type->length != 4) {				fatalf("unsupported length: %d", type->length);				return;				}			*(uint32_t*)baseData = greaterUint32Nbo(*(uint32_t*)baseData, *(uint32_t*)deltaData);			break;					case IPFIX_TYPEID_inOctetDeltaCount:		case IPFIX_TYPEID_outOctetDeltaCount:		case IPFIX_TYPEID_octetDeltaCount:		case IPFIX_TYPEID_inPacketDeltaCount:		case IPFIX_TYPEID_outPacketDeltaCount:		case IPFIX_TYPEID_packetDeltaCount:		case IPFIX_TYPEID_droppedOctetDeltaCount:		case IPFIX_TYPEID_droppedPacketDeltaCount:			switch (type->length) {				case 1:					*(uint8_t*)baseData = addUint8Nbo(*(uint8_t*)baseData, *(uint8_t*)deltaData);					return;				case 2:					*(uint16_t*)baseData = addUint16Nbo(*(uint16_t*)baseData, *(uint16_t*)deltaData);					return;				case 4:					*(uint32_t*)baseData = addUint32Nbo(*(uint32_t*)baseData, *(uint32_t*)deltaData);					return;				case 8:					*(uint64_t*)baseData = addUint64Nbo(*(uint64_t*)baseData, *(uint64_t*)deltaData);					return;				default:					fatalf("unsupported length: %d", type->length);					return;				}			break;					default:			fatalf("non-aggregatable type: %d", type->id);			return;			break;		}	}