#5,#6,#14三点TLE,求助
#include<bits/stdc++.h>
using namespace std;
const int L=4e7+10;
#define int long long
int z[L],a,b;
char s1[L],s2[L];
signed main(){
scanf("%s%s",s1,s2);
int l1=strlen(s1),l2=strlen(s2);
l1+=l2+1;
s2[l2]='#';
char *s=strcat(s2,s1);
for(int i=0,l=0,r=0;i<l1;i++){
if(i<=r && z[i-l]<r-i+1)z[i]=z[i-l];
else{
z[i]=max(0ll,r-i+1);
while(i+z[i]<l1 && s[z[i]]==s[i+z[i]])z[i]++;
}
l=i;r=i+z[i]-1;
}z[0]=l2;
for(int i=0;i<l2;i++)a^=(i+1)*(z[i]+1);
for(int i=l2+1;i<l1;i++)b^=(i-l2)*(z[i]+1);
printf("%lld\n%lld",a,b);
return 0;
}