#include <stdio.h>
#include <stdint.h>
uint32_t update_register(uint32_t reg) {
// Your logic here
//1. Extraction
uint32_t Bf=0;
/*for (int i=10;i<15;i++){
Bf = Bf | ((reg & (1U<<i))>>(i-10));
} */
for (int i = 0; i < 5; i++) {
if (reg & (1U << (10 + i))) {
Bf |= (1U << i);
}
}
if (Bf<31){
Bf=Bf+1;
}
reg&=(~(0x1FU<<10));
reg|=(Bf<<10);
return reg;
}
int main() {
uint32_t reg;
scanf("%u", ®);
uint32_t updated = update_register(reg);
printf("%u", updated);
return 0;
}