#include <iostream>
#define MAX_BITS	(80)

class LargeNumber
{
public:
	LargeNumber() : bits({0}) {}
	~LargeNumber() {}
	void fromString(const std::string& str) {
		int size = str.length();
		int max = size < MAX_BITS ? size : MAX_BITS;
		for (int i=0; i<max; i++) {
			bits[i] = str[size-1-i] - '0';
		}
		for (int i=max; i<size; i++) {
			if (str[size-1-i] - '0' > 0) {
				bits[MAX_BITS] = 1;
				break;
			}
		}
	}
	std::string toString() {
		std::string str = "";
		bool b = false;
		for (int i=MAX_BITS-1; i>0; i--) {
			if (!b) {
				if (!bits[i]) {
					continue;
				}
				b = true;
			}
			str.push_back(bits[i] + '0');
		}
		str.push_back(bits[0] + '0');
		return str;
	}
	bool isOverflow() {
		if (bits[MAX_BITS]) return true;
		return false;
	}
	const LargeNumber operator+(const LargeNumber& rhs) const {
		LargeNumber ret;
		for (int i=0; i<MAX_BITS; i++) {
			ret.bits[i]  += bits[i] + rhs.bits[i];
			ret.bits[i+1] = ret.bits[i] / 10;
			ret.bits[i]   = ret.bits[i] % 10;
		}
		ret.bits[MAX_BITS] += bits[MAX_BITS] + rhs.bits[MAX_BITS];
		return ret;
	}
private:
	unsigned char bits[MAX_BITS+1];
};

int main() {
	int n; std::cin >> n;
	std::string line;
	for (int i=0; i<n; i++) {
		LargeNumber in1; std::cin >> line; in1.fromString(line);
		LargeNumber in2; std::cin >> line; in2.fromString(line);
		LargeNumber out = in1 + in2;
		if (out.isOverflow()) {
			std::cout << "overflow" << std::endl;
		} else {
			std::cout << out.toString() << std::endl;
		}
	}
	return 0;
}
