#include <stdio.h>
#include <stdint.h>
int main(void) {
// your code goes here
int32_t offset_initial = -1760;
int32_t r = (offset_initial * 2) / 1000;
int32_t offset = (r + 1) >> 1;
int32_t position = -5;
int32_t position_shifted = position / 2;
printf("\n%d", position_shifted
); int32_t vel = 2;
int32_t pos = -4;
//int32_t pos_vel = (pos & 0xFFFFF) | (((uint32_t)vel) & 0xFFF) << 20;
int32_t pos_vel = (pos & 0xFFFFF) | (vel & 0xFFF) << 20;
int32_t accum_el = -2000000000;
// uint32_t accum_uint = accum_el;
// int32_t adjust_el = accum_uint >> 24;
// adjust_el &= (1 << 24) - 1;
// accum_el = adjust_el;
int32_t adjust_el = accum_el / (1 << 24);
adjust_el &= (1 << 24) - 1;
accum_el = adjust_el;
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRpbnQuaD4KaW50IG1haW4odm9pZCkgewoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJaW50MzJfdCBvZmZzZXRfaW5pdGlhbCA9IC0xNzYwOwoJaW50MzJfdCByID0gKG9mZnNldF9pbml0aWFsICogMikgLyAxMDAwOwoJCglpbnQzMl90IG9mZnNldCA9IChyICsgMSkgPj4gMTsKCXByaW50ZigiJWQiLCBvZmZzZXQpOwoJaW50MzJfdCBwb3NpdGlvbiA9IC01OwoJaW50MzJfdCBwb3NpdGlvbl9zaGlmdGVkID0gcG9zaXRpb24gLyAyOwoJcHJpbnRmKCJcbiVkIiwgcG9zaXRpb25fc2hpZnRlZCk7CglpbnQzMl90IHZlbCA9IDI7CglpbnQzMl90IHBvcyA9IC00OwoJLy9pbnQzMl90IHBvc192ZWwgPSAocG9zICYgMHhGRkZGRikgfCAoKCh1aW50MzJfdCl2ZWwpICYgMHhGRkYpIDw8IDIwOwoJaW50MzJfdCBwb3NfdmVsID0gKHBvcyAmIDB4RkZGRkYpICB8ICh2ZWwgJiAweEZGRikgPDwgMjA7CglwcmludGYoIlxuJWQiLCBwb3NfdmVsKTsKCWludDMyX3QgYWNjdW1fZWwgPSAtMjAwMDAwMDAwMDsKCS8vIHVpbnQzMl90IGFjY3VtX3VpbnQgPSBhY2N1bV9lbDsKCS8vIGludDMyX3QgYWRqdXN0X2VsID0gYWNjdW1fdWludCA+PiAyNDsKCS8vIGFkanVzdF9lbCAmPSAoMSA8PCAyNCkgLSAxOwoJLy8gYWNjdW1fZWwgPSBhZGp1c3RfZWw7CglpbnQzMl90IGFkanVzdF9lbCA9IGFjY3VtX2VsIC8gKDEgPDwgMjQpOwoJYWRqdXN0X2VsICY9ICgxIDw8IDI0KSAtIDE7CglhY2N1bV9lbCA9IGFkanVzdF9lbDsKCXByaW50ZigiXG4lZCIsIGFjY3VtX2VsKTsKCQoJcmV0dXJuIDA7Cn0K