#include <bits/stdc++.h>
using namespace std;
// cơ sở để học dp bitmask, dp sos
// duyệt trâu bằng bitmask
// Cách 1: x & (1 << i)
// giá trị trả về:
// trường hợp bit thứ i bật: trả về 2^i
// trường hợp bit thứ i tắt: trả về 0
// idx 5 4 3 2 1 0
// ------------------
// x = 1 0 1 0 0 1
// & 0 1 1 1 1 1
// ----------------
// 0 0 1 0 0 1
// Cách 2: (x >> i) & 1
// idx 5 4 3 2 1 0
// ------------------
// x = 1 0
// & 1
// ----------------
// 0
// giá trị trả về:
// trường hợp bit thứ i bật: trả về 1
// trường hợp bit thứ i tắt: trả về 0
bool checkBit(int x, int i) {// để kiểm tra bit thứ i của x có bật hay không?
return (x & (1 << i)); // Cách 1
return ((x >> i) & 1); // Cách 2
}
int turnOnBit(int x, int i) {// bật bit thứ i của x
return (x | (1 << i));
}
// 0 ^ 1 = 1
// 1 ^ 1 = 0
int flipBit(int x, int i) {// đảo bit thứ i của x
return (x ^ (1 << i));
}
int turnOffBit(int x, int i) { // tắt bit thứ i của x
return (x & ~(1 << i));
}
// n = 5
// 1 0 1 0 0: {0, 2}
// 1 1 0 1 1: {0, 1, 3, 4}
// liệt kê tất cả tập con của một mảng có n phần tử
// n = 3
// 000
// 001
// 010
// 011
// 100
// 101
// 110
// 111 = 7 = 2^3 - 1
void backtrack(int n) {
for (int msk = 0; msk < (1 << n); msk++) {
for (int i = 0; i < n; i++) {
if (checkBit(msk, i)) cout << i << ' ';
}
cout << '\n';
}
}
// __builtin_popcount(x) // đếm số bit 1 của x, x = 1110001 (__builtin_popcountll(x) cho x kiểu long long)
// __builtin_ctz(x) // đếm số bit 0 tận cùng của x counting trailing zeroes
// __builtin_clz(x) // đếm số bit ở đầu của x
// x = 110011000
// __builtin_ctz(x) = 3
// x & (-x) fenwick tree, BIT
// lỗi tràn số:
// (1ll << i)
// code tìm kiếm nhị phân, segment tree:
// int mid = (l + r) / 2;
// => int mid = (l + r) >> 1;
// an toàn cho trường hợp đoạn âm
int main() {
ios::sync_with_stdio(0); cin.tie(0);
// &: and
// |: or
// ^: xor
// ~: not
// <<: dịch trái
// >>: dịch phải
// and
// 1 & 1 = 1
// 0 & 1 = 0
// 0 & 0 = 0
// or
// 1 | 1 = 1
// 0 | 1 = 1
// 0 | 0 = 0
// xor
// 1 ^ 1 = 0
// 0 ^ 1 = 1
// 0 ^ 0 = 0
// // a = b <=> a ^ b = 0
// ~
// ~1 = 0
// ~0 = 1
// <<: phép dịch trái
// 1101 << 1 = 11010 (tương đương với nhân 2)
// << i (tương đương với nhân 2^i)
// >>: phép dịch phải
// 1101 >> 1 = 110 (tương đương với / 2)
// >> i (tương đương với / 2^i)
cout << (1ll << 60) << '\n';
}