/**
 *  http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0015
 */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define MAX_DIGITS 80
#define MAX_INPUTS 101

char           *add(const char *n1, const char *n2);
char           *overflowmsg();
char           *stralloc(const size_t length);

int
main(int argc, char *argv[])
{
    int             n, i;
    char            n1[MAX_INPUTS];
    char            n2[MAX_INPUTS];
    char           *r;

    scanf("%d", &n);
    for (i = 0; i < n; i++) {
        scanf("%s", n1);
        scanf("%s", n2);
        r = add(n1, n2);

        printf("%s\n", r);

        free(r);
    }

    return 0;
}

char           *
add(const char *n1, const char *n2)
{
    int             l1, l2, lr;
    int             c = 0;
    int             d;
    int             i = 0;
    char           *r;
    char           *n;

    l1 = strlen(n1);
    l2 = strlen(n2);
    if (l1 > MAX_DIGITS || l2 > MAX_DIGITS) {
        return overflowmsg();
    }
    lr = l1 > l2 ? l1 : l2;

    r = stralloc(lr + 1);
    while (lr >= 0) {
        d = c + (l1-- > 0 ? n1[l1] - '0' : 0) + (l2-- > 0 ? n2[l2] - '0' : 0);
        c = d / 10;
        r[lr--] = d % 10 + '0';
    }
    while (r[i] == '0') {
        i++;
    }
    if (strlen(r + i) > MAX_DIGITS) {
        free(r);
        return overflowmsg();
    }
    if (i != 0) {
        n = r;
        r = stralloc(strlen(n + i));
        strcpy(r, n + i);
        free(n);
    }
    return r;
}

char           *
overflowmsg()
{
    const char     *e = "overflow";
    char           *r;
    r = stralloc(strlen(e));
    strcpy(r, e);
    return r;
}

char           *
stralloc(const size_t length)
{
    char           *r;
    r = (char *)calloc(length + 1, sizeof(char));
    return r;
}