Go: package main

import (
        "fmt"
        "bufio"
        "os"
)

func main() {
        var n int
        var a, b string
        sc := bufio.NewScanner(os.Stdin)
        fmt.Scanf("%d", &n)
        for i := 0; i < n; i++ {
                sc.Scan()
                a = sc.Text()
                sc.Scan()
                b = sc.Text()

                if len(a) > len(b) {
                        s := add(a, b)
                        if s[len(a)] > 0 {
                                if len(a) >= 80 {
                                        fmt.Printf("overflow")
                                } else {
                                        for i := 0; i <= len(a);i++ {
                                                fmt.Printf("%d", s[len(a)-i])
                                        }
                                }
                                fmt.Printf("\n")
                        } else {
                                if len(a)-1 >= 80 {
                                        fmt.Printf("overflow")
                                } else {
                                        for i := 0; i < len(a);i++ {
                                                fmt.Printf("%d", s[len(a)-i-1])
                                        }
                                }
                                fmt.Printf("\n")
                        }
                } else {
                        s := add(b, a)
                        if s[len(b)] > 0 {
                                if len(b) >= 80 {
                                        fmt.Printf("overflow")
                                } else {
                                        for i := 0; i <= len(b);i++ {
                                                fmt.Printf("%d", s[len(b)-i])
                                        }
                                }
                                fmt.Printf("\n")
                        } else {
                                if len(b)-1 >= 80 {
                                        fmt.Printf("overflow")
                                } else {
                                        for i := 0; i < len(b);i++ {
                                                fmt.Printf("%d", s[len(b)-i-1])
                                        }
                                }
                                fmt.Printf("\n")
                        }
                }
        }
}

// expects ln > lm
func add(n string, m string) (s [100]int) {
        ln := len(n)
        lm := len(m)
        var sum [100]int

        for i := 0; i < ln; i++ {
                var s, t int
                s = int(n[ln-1-i]) - int('0')

                if lm - 1 - i >= 0 {
                        t = int(m[lm-1-i]) - int('0')
                } else {
                        t = 0
                }

                sum[i+1] = (s + t + sum[i]) / 10
                sum[i] = (s + t + sum[i]) % 10
        }

        return sum
}

Python: n = int(input())
for _ in range(n):
    a, b = input(), input()
    m = abs(len(a) - len(b))
    if len(a) > len(b):
        a = '0' + a
        b = '0' * (m+1) + b
    else:
        a = '0' * m + a
        b = '0' + b
    a, b = a[::-1], b[::-1]
    
    budget = []
    flag = False
    for i in range(0, len(a), 10):
        t = int(a[i:i+10][::-1]) + int(b[i:i+10][::-1]) 
        if flag: t += 1
        t = str(t)

        if len(t) > 10:
            t = t[1:]
            flag = True
        elif i + 10 <= len(a):
            t = '0' * abs(len(t) - 10) + t
            flag = False
        else:
            flag = False
        budget.append(t)
    
    budget = ''.join(budget[::-1])
    if len(budget) < 80:
        print(budget)
    else:
        print('overflow')

Python: for _ in range(int(input())):
    a = int(input())
    b = int(input())
    s = a + b
    if s >= 1e79:
        print('overflow')
    else:
        print(s)

Python: i = int(input())
for n in range(i):
    j = int(input())
    k = int(input())
    if len(str(j + k)) >= 80:
        print("overflow")
    else:
        print(j + k)

Python: n=int(input())
for i in range(n):
    a=input()
    b=input()
    s=int(a)+int(b)
    if len(str(s))>80:
        print("overflow")
    else:
        print(s)

Python: m = 100000000000000000000000000000000000000000000000000000000000000000000000000000000
n = int(input())
for i in range(n):
    a = int(input())
    b = int(input())
    sum = a + b
    if sum > m or sum == m:
        print("overflow")
    else:
        print(sum)

Python: n=input()
for i in range(n):
	a=input()
	b=input()
	print(a+b)

Python: def f(): return int(raw_input())
n = f()
for _ in [0]*n:
  a = f()
  b = f()
  c = a+b
  print [c, "overflow"][len(str(c))>80]

Python: import math

n = int(input())

for i in range(0, n):
    a = int(input())
    b = int(input())
    if int(math.log10(a + b)) + 1 > 80:
        print("overflow")
    else :
        print(a + b)

Python: n = input()
for _ in [0]*n:
  a = input()
  b = input()
  c = a+b
  print [c,"overflow"][len(str(c))>80]

Python: # -*- coding: utf-8 -*-

import math

BIG_NUM = 100000000000000000000000000000000000000000000000000000000000000000000000000000000


def main():
    n = int(input())
    for _ in range(n):
        a = int(input())
        b = int(input())
        if a >= BIG_NUM  or b >= BIG_NUM or a + b >= BIG_NUM:
            print("overflow")
        else:
            print(a+b)

if __name__ == "__main__":
    main()

Python: import sys
N=int(input())
N=int(N/2)
for i in range(N):
    a=input()
    b=input()
    len_a=len(a)
    len_b=len(b)
    c=[]
    kuriage=0
    if(len_a>=len_b):
        for i in range(len_b):
            c.append((kuriage+int(a[len_a-1-i])+int(b[len_b-1-i]))%10)
            kuriage=(kuriage+int(a[len_a-1-i])+int(b[len_b-1-i]))//10
        for i in range(len_b,len_a):
            c.append((kuriage+int(a[len_a-1-i]))%10)
            kuriage=(kuriage+int(a[len_a-1-i]))//10



    else :
        for i in range(len_a):
            c.append((kuriage+int(a[len_a-1-i])+int(b[len_b-1-i]))%10)
            kuriage=(kuriage+int(a[len_a-1-i])+int(b[len_b-1-i]))//10
        for i in range(len_a,len_b):
            c.append((kuriage+int(b[len_b-1-i]))%10)
            kuriage=(kuriage+int(b[len_b-1-i]))//10

    if(kuriage==1):
        c.append(1)

    if(len(c)>=80):
        print('overflow')

    else:
        for i in c[::-1]:
            print(i,end='')
        print('')

Python: num_datasets = int(input())

for i in range(num_datasets):
    n = input().strip()
    m = input().strip()
    first_num_str = ""
    second_num_str = ""
    if len(n) > len(m):
        first_num_str = n
        second_num_str = m
    else:
        first_num_str = m
        second_num_str = n
    total = ""
    carry = 0
    first_int = 0
    second_int = 0
    first_last_index = len(first_num_str)-1
    second_last_index = len(second_num_str)-1
    for i in range(len(first_num_str)):
        first_int = int(first_num_str[first_last_index-i])
        if i < len(second_num_str):
            second_int = int(second_num_str[second_last_index-i])
        else:
            second_int = 0
        added = (first_int + second_int + carry) % 10
        carry = (first_int + second_int + carry) // 10
        total = str(added) + total
    if carry > 0:
        total = str(carry) + total
    if len(total) > 80:
        print("overflow")
    else:
        print(total)

Python: import math
count=int(input())
for i in range(count):
    x=int(input())
    y=int(input())
    ans=x+y
    if int(math.log10(ans)>=80):
        print("overflow")
    else:
        print(ans)

Python: n = int(input())
for i in range(n):
	s = int(input())+int(input())
	if len(str(s))>=80:
		print("overflow")
	else:
		print(s)

Python: N = int(input())
for i in range(N):
    a = int(input())
    b = int(input())
    ans = a + b
    if len(str(ans)) > 80:
        print("overflow")
    else:
        print(ans)