#include <iostream>
using namespace std;
int main()
{
int cnt2[1000001];
int a[1000001];
int x[1000001];
int n;
cin>>n>>x[0];
int pr=0;
int max=-10000;
int maxi=-10000;
int cnt=1;
for(int i=0;i<n;i++)
{
cnt2[i]=0;
}
for(int i=0;i<n;i++)
{
x[i+1]=((x[i]*3703+1047)%n)+1;
a[i]=x[i];
}
for(int i=0;i<=n;i++)
{
if(a[i]==pr)
{
cnt++;
}
else
{
for(int j=cnt;j>=1;j--)
{
cnt2[pr]=cnt2[pr]+j;
}
cnt=1;
}
pr=a[i];
}
for(int i=0;i<n;i++)
{
if(max<cnt2[i])
{
max=cnt2[i];
maxi=i;
}
}
cout<<max;
return 0;
}