I have a question about keyword usage in a c++ struct.

I have seen a struct defined like this:

```
typedef struct {
    SIGSELECT signo;
    U32 id;
    U32 re;
    U16 id1;
    U8 id2;
}First;

```

Please help me understand these keywords: SIGSELECT,U32,U16,U8