class Program
{
public static void Main()
{
uint max = uint.MaxValue;
SuperWriteLine(ref max);
Console.WriteLine(0);
}
static void SuperWriteLine(ref uint num)
{
if ((num & (1 << 31)) > 0) { WriteLine32(ref num); }
if ((num & (1 << 30)) > 0) { WriteLine31(ref num); }
if ((num & (1 << 29)) > 0) { WriteLine30(ref num); }
if ((num & (1 << 28)) > 0) { WriteLine29(ref num); }
if ((num & (1 << 27)) > 0) { WriteLine28(ref num); }
if ((num & (1 << 26)) > 0) { WriteLine27(ref num); }
if ((num & (1 << 25)) > 0) { WriteLine26(ref num); }
if ((num & (1 << 24)) > 0) { WriteLine25(ref num); }
if ((num & (1 << 23)) > 0) { WriteLine24(ref num); }
if ((num & (1 << 22)) > 0) { WriteLine23(ref num); }
if ((num & (1 << 21)) > 0) { WriteLine22(ref num); }
if ((num & (1 << 20)) > 0) { WriteLine21(ref num); }
if ((num & (1 << 19)) > 0) { WriteLine20(ref num); }
if ((num & (1 << 18)) > 0) { WriteLine19(ref num); }
if ((num & (1 << 17)) > 0) { WriteLine18(ref num); }
if ((num & (1 << 16)) > 0) { WriteLine17(ref num); }
if ((num & (1 << 15)) > 0) { WriteLine16(ref num); }
if ((num & (1 << 14)) > 0) { WriteLine15(ref num); }
if ((num & (1 << 13)) > 0) { WriteLine14(ref num); }
if ((num & (1 << 12)) > 0) { WriteLine13(ref num); }
if ((num & (1 << 11)) > 0) { WriteLine12(ref num); }
if ((num & (1 << 10)) > 0) { WriteLine11(ref num); }
if ((num & (1 << 9)) > 0) { WriteLine10(ref num); }
if ((num & (1 << 8)) > 0) { WriteLine09(ref num); }
if ((num & (1 << 7)) > 0) { WriteLine08(ref num); }
if ((num & (1 << 6)) > 0) { WriteLine07(ref num); }
if ((num & (1 << 5)) > 0) { WriteLine06(ref num); }
if ((num & (1 << 4)) > 0) { WriteLine05(ref num); }
if ((num & (1 << 3)) > 0) { WriteLine04(ref num); }
if ((num & (1 << 2)) > 0) { WriteLine03(ref num); }
if ((num & (1 << 1)) > 0) { WriteLine02(ref num); }
if ((num & (1 << 0)) > 0) { WriteLine01(ref num); }
}
private static void WriteLine32(ref uint num) { WriteLine31(ref num); WriteLine31(ref num); }
private static void WriteLine31(ref uint num) { WriteLine30(ref num); WriteLine30(ref num); }
private static void WriteLine30(ref uint num) { WriteLine29(ref num); WriteLine29(ref num); }
private static void WriteLine29(ref uint num) { WriteLine28(ref num); WriteLine28(ref num); }
private static void WriteLine28(ref uint num) { WriteLine27(ref num); WriteLine27(ref num); }
private static void WriteLine27(ref uint num) { WriteLine26(ref num); WriteLine26(ref num); }
private static void WriteLine26(ref uint num) { WriteLine25(ref num); WriteLine25(ref num); }
private static void WriteLine25(ref uint num) { WriteLine24(ref num); WriteLine24(ref num); }
private static void WriteLine24(ref uint num) { WriteLine23(ref num); WriteLine23(ref num); }
private static void WriteLine23(ref uint num) { WriteLine22(ref num); WriteLine22(ref num); }
private static void WriteLine22(ref uint num) { WriteLine21(ref num); WriteLine21(ref num); }
private static void WriteLine21(ref uint num) { WriteLine20(ref num); WriteLine20(ref num); }
private static void WriteLine20(ref uint num) { WriteLine19(ref num); WriteLine19(ref num); }
private static void WriteLine19(ref uint num) { WriteLine18(ref num); WriteLine18(ref num); }
private static void WriteLine18(ref uint num) { WriteLine17(ref num); WriteLine17(ref num); }
private static void WriteLine17(ref uint num) { WriteLine16(ref num); WriteLine16(ref num); }
private static void WriteLine16(ref uint num) { WriteLine15(ref num); WriteLine15(ref num); }
private static void WriteLine15(ref uint num) { WriteLine14(ref num); WriteLine14(ref num); }
private static void WriteLine14(ref uint num) { WriteLine13(ref num); WriteLine13(ref num); }
private static void WriteLine13(ref uint num) { WriteLine12(ref num); WriteLine12(ref num); }
private static void WriteLine12(ref uint num) { WriteLine11(ref num); WriteLine11(ref num); }
private static void WriteLine11(ref uint num) { WriteLine10(ref num); WriteLine10(ref num); }
private static void WriteLine10(ref uint num) { WriteLine09(ref num); WriteLine09(ref num); }
private static void WriteLine09(ref uint num) { WriteLine08(ref num); WriteLine08(ref num); }
private static void WriteLine08(ref uint num) { WriteLine07(ref num); WriteLine07(ref num); }
private static void WriteLine07(ref uint num) { WriteLine06(ref num); WriteLine06(ref num); }
private static void WriteLine06(ref uint num) { WriteLine05(ref num); WriteLine05(ref num); }
private static void WriteLine05(ref uint num) { WriteLine04(ref num); WriteLine04(ref num); }
private static void WriteLine04(ref uint num) { WriteLine03(ref num); WriteLine03(ref num); }
private static void WriteLine03(ref uint num) { WriteLine02(ref num); WriteLine02(ref num); }
private static void WriteLine02(ref uint num) { WriteLine01(ref num); WriteLine01(ref num); }
private static void WriteLine01(ref uint num) { Console.WriteLine(num--); }
}
class Program
{
public static void Main()
{
uint max = uint.MaxValue;
SuperWriteLine(ref max);
Console.WriteLine(0);
}
static void SuperWriteLine(ref uint num)
{
if ((num & (1 << 31)) > 0) { WriteLine32(ref num); }
if ((num & (1 << 30)) > 0) { WriteLine31(ref num); }
if ((num & (1 << 29)) > 0) { WriteLine30(ref num); }
if ((num & (1 << 28)) > 0) { WriteLine29(ref num); }
if ((num & (1 << 27)) > 0) { WriteLine28(ref num); }
if ((num & (1 << 26)) > 0) { WriteLine27(ref num); }
if ((num & (1 << 25)) > 0) { WriteLine26(ref num); }
if ((num & (1 << 24)) > 0) { WriteLine25(ref num); }
if ((num & (1 << 23)) > 0) { WriteLine24(ref num); }
if ((num & (1 << 22)) > 0) { WriteLine23(ref num); }
if ((num & (1 << 21)) > 0) { WriteLine22(ref num); }
if ((num & (1 << 20)) > 0) { WriteLine21(ref num); }
if ((num & (1 << 19)) > 0) { WriteLine20(ref num); }
if ((num & (1 << 18)) > 0) { WriteLine19(ref num); }
if ((num & (1 << 17)) > 0) { WriteLine18(ref num); }
if ((num & (1 << 16)) > 0) { WriteLine17(ref num); }
if ((num & (1 << 15)) > 0) { WriteLine16(ref num); }
if ((num & (1 << 14)) > 0) { WriteLine15(ref num); }
if ((num & (1 << 13)) > 0) { WriteLine14(ref num); }
if ((num & (1 << 12)) > 0) { WriteLine13(ref num); }
if ((num & (1 << 11)) > 0) { WriteLine12(ref num); }
if ((num & (1 << 10)) > 0) { WriteLine11(ref num); }
if ((num & (1 << 9)) > 0) { WriteLine10(ref num); }
if ((num & (1 << 8)) > 0) { WriteLine09(ref num); }
if ((num & (1 << 7)) > 0) { WriteLine08(ref num); }
if ((num & (1 << 6)) > 0) { WriteLine07(ref num); }
if ((num & (1 << 5)) > 0) { WriteLine06(ref num); }
if ((num & (1 << 4)) > 0) { WriteLine05(ref num); }
if ((num & (1 << 3)) > 0) { WriteLine04(ref num); }
if ((num & (1 << 2)) > 0) { WriteLine03(ref num); }
if ((num & (1 << 1)) > 0) { WriteLine02(ref num); }
if ((num & (1 << 0)) > 0) { WriteLine01(ref num); }
}
private static void WriteLine32(ref uint num) { WriteLine31(ref num); WriteLine31(ref num); }
private static void WriteLine31(ref uint num) { WriteLine30(ref num); WriteLine30(ref num); }
private static void WriteLine30(ref uint num) { WriteLine29(ref num); WriteLine29(ref num); }
private static void WriteLine29(ref uint num) { WriteLine28(ref num); WriteLine28(ref num); }
private static void WriteLine28(ref uint num) { WriteLine27(ref num); WriteLine27(ref num); }
private static void WriteLine27(ref uint num) { WriteLine26(ref num); WriteLine26(ref num); }
private static void WriteLine26(ref uint num) { WriteLine25(ref num); WriteLine25(ref num); }
private static void WriteLine25(ref uint num) { WriteLine24(ref num); WriteLine24(ref num); }
private static void WriteLine24(ref uint num) { WriteLine23(ref num); WriteLine23(ref num); }
private static void WriteLine23(ref uint num) { WriteLine22(ref num); WriteLine22(ref num); }
private static void WriteLine22(ref uint num) { WriteLine21(ref num); WriteLine21(ref num); }
private static void WriteLine21(ref uint num) { WriteLine20(ref num); WriteLine20(ref num); }
private static void WriteLine20(ref uint num) { WriteLine19(ref num); WriteLine19(ref num); }
private static void WriteLine19(ref uint num) { WriteLine18(ref num); WriteLine18(ref num); }
private static void WriteLine18(ref uint num) { WriteLine17(ref num); WriteLine17(ref num); }
private static void WriteLine17(ref uint num) { WriteLine16(ref num); WriteLine16(ref num); }
private static void WriteLine16(ref uint num) { WriteLine15(ref num); WriteLine15(ref num); }
private static void WriteLine15(ref uint num) { WriteLine14(ref num); WriteLine14(ref num); }
private static void WriteLine14(ref uint num) { WriteLine13(ref num); WriteLine13(ref num); }
private static void WriteLine13(ref uint num) { WriteLine12(ref num); WriteLine12(ref num); }
private static void WriteLine12(ref uint num) { WriteLine11(ref num); WriteLine11(ref num); }
private static void WriteLine11(ref uint num) { WriteLine10(ref num); WriteLine10(ref num); }
private static void WriteLine10(ref uint num) { WriteLine09(ref num); WriteLine09(ref num); }
private static void WriteLine09(ref uint num) { WriteLine08(ref num); WriteLine08(ref num); }
private static void WriteLine08(ref uint num) { WriteLine07(ref num); WriteLine07(ref num); }
private static void WriteLine07(ref uint num) { WriteLine06(ref num); WriteLine06(ref num); }
private static void WriteLine06(ref uint num) { WriteLine05(ref num); WriteLine05(ref num); }
private static void WriteLine05(ref uint num) { WriteLine04(ref num); WriteLine04(ref num); }
private static void WriteLine04(ref uint num) { WriteLine03(ref num); WriteLine03(ref num); }
private static void WriteLine03(ref uint num) { WriteLine02(ref num); WriteLine02(ref num); }
private static void WriteLine02(ref uint num) { WriteLine01(ref num); WriteLine01(ref num); }
private static void WriteLine01(ref uint num) { Console.WriteLine(num--); }
}