#include<bits/stdc++.h>
using namespace std;
unordered_map<int,int>mp;
int dfs(int x){
if(mp.find(x)!=mp.end())return mp[x];
int zt=0;
for(int i=0;(1<<i)<=x;++i){
zt|=1<<dfs(x>>(i+1)|(x&((1<<i)-1)));
}
return mp[x]=__builtin_ctz(~zt);
}
int main(){
int n;scanf("%d",&n);
map<int,int>mm;
for(int i=1;i<=n;++i){
int a;scanf("%d",&a);
for(int p=2;1ll*p*p<=a;++p)if(a%p==0){
int z=0;while(a%p==0)a/=p,++z;
mm[p]|=1<<(z-1);
}
if(a>1)mm[a]|=1;
}
int yh=0;
for(auto pi:mm)yh^=dfs(pi.second);
if(yh)puts("Mojtaba");
else puts("Arpa");
return 0;
}