function check(x, y){
var ret = 0;
var len = Math.min(x.length, y.length);
for(var i = 0; i < len; ++i){
if(x.charAt(i) == y.charAt(i)){
++ret;
}else{
break;
}
}
return ret;
}
function mmmmax(x_, y_){
var x, y, x_len, y_len;
if(x_.length > y_.length){
x = y_; y = x_;
}else{
x = x_; y = y_;
}
x_len = x.length; y_len = y.length;
var max = 0;
for(var i = 0; i < x_len; ++i){
var current_max = x_len - i;
var func = function(a, b){
var ret = check(x.substring(a), y.substring(b));
if(ret == current_max){
return ret;
}
if(max < ret){
max = ret;
}
};
if(current_max > max){
var ret;
for(var j = 0; j < i; ++j){
ret = func(j, y_len - current_max);
if(ret) return ret;
}
for(var j = 0; j < y_len - current_max + 1; ++j){
ret = func(i, j);
if(ret) return ret;
}
}else{
break;
}
}