#include <stdio.h>
#include <string.h>
 
 
void allNull(char str[], int n);
 
void plus(char first[], char second[], char result[]);
 
void reverse(char str[], int n);
void toNumber(char str[], int n);
void toString(char str[], int n);
 
void display(char data[], int n){
     
    int i;
     
    printf("??°???%d\n", n);
     
    for(i=0; i<n; i++){
         
        printf("%d ", data[i]);
         
    }
     
    printf("\n\n\n");
}
 
int main(void){
     
     
    //????????????????????°
    int n;
     
     
     
    //80????????§?????´??°???????´???????????????????
    char first[801];
    char second[801];
     
    //??????????´?????????????
    char result[801];
     
     
    //????????????????????°?????\???
    fgets(result, sizeof(result), stdin);
    sscanf(result, "%d", &n);
     
     
    //??°?????????
    while(n--){
         
        //?????????
        allNull(result, sizeof(result));
        allNull(first, sizeof(first));
        allNull(second, sizeof(second));
         
         
        //80????????§?????´??°?????\???, \n????¶????
        fgets(first, sizeof(first), stdin);
        first[strlen(first)-1] = '\0';
         
        fgets(second, sizeof(second), stdin);
        second[strlen(second)-1] = '\0';
         
         
        //???????????????80???????¶????????????????????????????
        if(strlen(first) > 80 || strlen(second) > 80){
             
            printf("overflow\n");
            continue;
             
        }
         
        //???????±???????
        plus(first, second, result);
         
         
        //80???????¶????????????????overflow
        if(strlen(result) > 80){
             
            printf("overflow\n");
             
        }
        else{
             
            printf("%s\n", result);
             
        }
         
    }
     
     
}
 
 
 
void allNull(char str[], int n){
     
    int i;
     
    for(i=0; i<n; i++){
         
        str[i] = 0;
         
    }
     
}
 
 
 
void plus(char first[], char second[], char result[]){
     
    int firstSize = strlen(first);
    int secondSize = strlen(second);
     
    int idx = 0;
     
    int kuriagari;
     
    //???????????????
    reverse(first, firstSize);
    reverse(second, secondSize);
     
     
    //???????±???????
    while(!(first[idx] == 0 && second[idx] == 0)){
         
        kuriagari = 0;
         
        if(first[idx] == 0){
             
            //printf("second[%d]???%d????????????????¶????\n", idx, second[idx]-'0');
             
            result[idx] += (second[idx]-'0');
             
        }
        else if(second[idx] == 0){
             
            //printf("first[%d]???%d????????????????¶????\n", idx, first[idx]-'0');
             
            result[idx] += (first[idx]-'0');
             
        }
        else{
             
            //printf("%d??¨%d????¶????\n",first[idx]-'0', second[idx]-'0');
             
            result[idx] += ((first[idx]-'0') + (second[idx]-'0'));
             
        }
         
        if(result[idx] >= 10){
             
            result[idx] -= 10;
            result[idx+1]+=1;
             
            kuriagari = 1;
             
        }
         
        idx++;
        /*
        if(kuriagari){
             
            //printf("kuriagari!\n");
            display(result, idx+1);
             
        }
        else{
             
            display(result, idx);
             
        }
        */
         
    }
     
     
    //???????????°???????????£???????????£??????????????????idx++
    if(kuriagari){
         
        idx++;
         
    }
     
    //display(result, idx);
     
    //???????????????
    toString(result, idx);
     
     
     
    //?????????????????????
    reverse(result, idx);
     
     
}
 
 
void reverse(char str[], int n){
     
    int i, temp;
     
    for(i=0; i<n-i-1; i++){
         
        temp = str[i];
        str[i] = str[n-i-1];
        str[n-i-1] = temp;
         
    }
     
}
 
 
 
void toNumber(char str[], int n){
     
    int i;
     
    for(i=0; i<n; i++){
         
        str[i] -= '0';
         
    }
     
}
 
 
 
void toString(char str[], int n){
     
    int i;
     
    for(i=0; i<n; i++){
         
        str[i] += '0';
         
    }
     
}

Measured memory_bytes: 592