#include <stdio.h>
#include <stdint.h>
union Data{
uint32_t raw;
uint8_t bytes[4];
};
uint32_t convert_endian(uint32_t value) {
// Write logic to swap bytes
//1. Split 32 bit value into 4 bytes ? Union?
//1.1 Define new union instance & set raw 32 bit value
Data value_bytes;
value_bytes.raw = value;
//printf("Raw: %d\n",value_bytes.raw);
//printf("Byte: %d\n",value_bytes.bytes[2]);
//2. Create a second union instance to put swapped bytes
Data new_value;
//3. Swap bytes into new union
for(int i=0;i<4;i++){
new_value.bytes[i] = value_bytes.bytes[3-i];
}
//4. Return raw 32 bit value with swapped bytes
return new_value.raw;
}
int main() {
uint32_t val;
scanf("%u", &val);
printf("%u", convert_endian(val));
return 0;
}