#ifndef WORK_FLASH_INTERFACE_H
#define WORK_FLASH_INTERFACE_H

#pragma pack(1)

typedef struct 
{//64bytes
    uint32_t ID;//Don`t move!!!! //4
    uint8_t  PartNum[16];
    uint8_t  PartNum_AssemblyWorkshop[16];
	uint32_t ClusterID;
	uint32_t BarcodeDate;
	uint8_t  SerialNumber[4];
	uint8_t  Reserve[12];
    uint32_t Crc32Check;//4
}WK_SERVICE_ACCUMULATED_PACK;
extern WK_SERVICE_ACCUMULATED_PACK SAFPack;

typedef struct 
{//64bytes
    uint32_t ID;//Don`t move!!!!//4
    uint32_t DateTime;//4
    uint32_t Diaplay_test;//4
    uint8_t  CheckResult[48];
    
    uint32_t Crc32Check;//4
}WK_USM_USERPROFILE_PACK;
extern WK_USM_USERPROFILE_PACK UsmUserRecordPack;


typedef struct 
{
    uint32_t ID;//Don`t move!!!!
    //EOL_STRUCT Eol;
    uint8_t EolResult;
    uint8_t EolCounts;
    
    uint8_t VIN[17];
    uint8_t VIN_State;
    
    uint8_t  DealerID[5];
    uint8_t  ChangeData[4];
    uint8_t  ODO[4];
    uint8_t  Sum;
    uint8_t ChangeTimes;
    uint8_t ODO_State;
    
    uint8_t    Checkflag;
    uint8_t    AppExist;
    uint8_t    SessionType;
    
    uint8_t Reserve[13];
    uint32_t Crc32Check;
}WK_EOL_UDS_PACK;  
extern WK_EOL_UDS_PACK WkEolUdsPack;
extern uint8_t VIN_State;
extern uint8_t ODO_State;

#pragma pack()

#endif