#include <stdio.h>
#include <stdint.h>
typedef union {
uint16_t status;
struct{
uint16_t first : 4;
uint16_t second : 5;
uint16_t last : 7;
}bits;
}Register;
uint8_t extract_field(uint16_t reg) {
// Your logic here
/*SOLUTION 1 WITH BIT FIELD :
Register r;
r.status = reg;
return r.bits.second;*/
/*SOLUTION 2 -> XXXX XXX1 1111 XXXX*/
return (reg >> 4)& 0x1F;
}
int main() {
uint16_t reg;
scanf("%hx", ®);
printf("%u", extract_field(reg));
return 0;
}