#include<cstdio>

using namespace std;

int gcd(int a,int b){
	if(!b) return a;
	else return gcd(b,a%b);
}

int main(void){
	int i;
	int a[3],m[3];
	int p;
	int cx,cy,cz;
  int ans;

	for(;;){
		scanf("%d%d%d%d%d%d", &a[0],&m[0], &a[1],&m[1], &a[2],&m[2]);
		if( !a[0] && !m[0] && !a[1] && !m[1] && !a[2] && !m[2]) break;

    for(i=0;i<3;i++)
      a[i]%=m[i];

		p=1; cx=0;
		for(;;){ cx++;
      p*=a[0]; p%=m[0];
			if(p==1) break; }

		p=1; cy=0;
		for(;;){ cy++;
      p*=a[1]; p%=m[1];
			if(p==1) break; }

		p=1; cz=0;
		for(;;){ cz++;
      p*=a[2]; p%=m[2];
			if(p==1) break; }

    ans=cx/gcd(cx,cy)*cy;
    ans=ans/gcd(ans,cz)*cz;
    printf("%d\n",ans);
	}

	return 0;
}