# bulk:1425
function pb_and(a, b, r, i, ai, bi, p) {
r = 0
p = 1
for (i = 0; i < 32; i++) {
ai = a % 2
a = int(a / 2)
bi = b % 2
b = int(b / 2)
if (ai && bi) {
r += p
}
p *= 2
if (a == 0 && b == 0) {
break
}
}
return r
}
function pb_or(a, b, r, i, ai, bi, p) {
r = 0
p = 1
for (i = 0; i < 32; i++) {
ai = a % 2
a = int(a / 2)
bi = b % 2
b = int(b / 2)
if (ai || bi) {
r += p
}
p *= 2
if (a == 0 && b == 0) {
break
}
}
return r
}
function pb_xor(a, b, r, i, ai, bi, p) {
r = 0
p = 1
for (i = 0; i < 32; i++) {
ai = a % 2
a = int(a / 2)
bi = b % 2
b = int(b / 2)
if ((ai && !bi) || (!ai && bi)) {
r += p
}
p *= 2
if (a == 0 && b == 0) {
break
}
}
return r
}
function pb_lshift(x, n, i) {
for (i = 0; i < n; i++) {
x *= 2
}
return x
}
function pb_rshift(x, n, i) {
for (i = 0; i < n; i++) {
x = int(x / 2)
}
return x
}
BEGIN {
printf "%d\n", pb_or(8, 0)
printf "%d\n", (82 < 15) + (15 < 45) * 2
printf "%s\n", substr("0123456789", 0, 4)
{ _s = ""; for (_i = 0; _i < 0 + 2; _i++) _s = _s "0"; printf "%d\n", length(_s) }
}