#define N 1000005
#include <fstream>
using namespace std;
ifstream f("curcubeu.in");
ofstream g("curcubeu.out");
int Next[N],a[N],b[N],c[N],i,j,n,w[N];
int nxt(int node)
{
if (!Next[node]) return node;
Next[node]=nxt(Next[node]);
return Next[node];
}
int main()
{
f>>n>>a[1]>>b[1]>>c[1];
for(i=2;i<n;++i)
{
a[i]=(int)(1LL*a[i-1]*i)%n;
b[i]=(int)(1LL*b[i-1]*i)%n;
c[i]=(int)(1LL*c[i-1]*i)%n;
}
for(i=n-1;i;--i)
{
for(j=nxt(a[i]);j<=b[i];++j,j=nxt(j))
{
Next[j]=b[i]+1;
w[j]=c[i];
}
}
for(i=1;i<n;++i) g<<w[i]<<'\n';
return 0;
}