int CountAllBits(uint num)
int CountSetBits(uint num)
uint SetAllBits(uint num)
var mask = SetAllBits(num) >> 1;
uint num = uint.Parse(Console.ReadLine());
Console.WriteLine(Convert.ToString(num, 2));
uint numWithoutMBS = RemoveMBS(num);
Console.WriteLine(Convert.ToString(numWithoutMBS, 2));
int allBitsCount = CountAllBits(numWithoutMBS);
int setBitCount = CountSetBits(numWithoutMBS);
if (setBitCount % 2 == 0)
answer = (((uint) 1) << (allBitsCount + 2)) | numWithoutMBS;
answer = (((uint) numWithoutMBS) << 1) | (((uint) 1) << (allBitsCount + 1));
Console.WriteLine(answer);
Console.WriteLine(Convert.ToString(answer, 2));