← Home
package main

import (
	"fmt"
)

func getSG(mask int, memo map[int]int) int {
	if mask == 0 {
		return 0
	}
	if val, ok := memo[mask]; ok {
		return val
	}

	seen := 0
	limit := 0
	for (1 << limit) <= mask {
		limit++
	}

	for k := 1; k < limit; k++ {
		newMask := (mask & ((1 << k) - 1)) | (mask >> k)
		newMask &= ^1
		sg := getSG(newMask, memo)
		seen |= (1 << sg)
	}

	sg := 0
	for (seen&(1<<sg)) != 0 {
		sg++
	}
	memo[mask] = sg
	return sg
}

func main() {
	var n int
	if _, err := fmt.Scan(&n); err != nil {
		return
	}

	primeMask := make(map[int]int)
	for i := 0; i < n; i++ {
		var x int
		fmt.Scan(&x)
		for p := 2; p*p <= x; p++ {
			if x%p == 0 {
				e := 0
				for x%p == 0 {
					x /= p
					e++
				}
				primeMask[p] |= (1 << e)
			}
		}
		if x > 1 {
			primeMask[x] |= (1 << 1)
		}
	}

	memo := make(map[int]int)
	xorSum := 0
	for _, mask := range primeMask {
		xorSum ^= getSG(mask, memo)
	}

	if xorSum > 0 {
		fmt.Println("Mojtaba")
	} else {
		fmt.Println("Arpa")
	}
}