#include <iostream>
#include <math.h>
using namespace std;
int flag[10010];
int judge(int n)
{
if(n == 1)
{
return 0;
}
int r = sqrt(n * 1.0), i;
for(i = 2; i <= r; i++)
{
if(n % i == 0)
{
return 0;
}
}
return 1;
}
int main()
{
int msize, n;
scanf("%d%d", &msize, &n);
while(judge(msize) == 0)
{
msize++;
}
int i, j, base, num, r = msize / 2, index, first = 1;
for(i = 1; i <= n; i++)
{
scanf("%d", &num);
base = num % msize;
for(j = 0; j <= r; j++)
{
index = (base + j * j) % msize;
if(flag[index] == 0)
{
flag[index] = 1;
break;
}
}
if(first == 1)
{
first = 0;
}
else
{
printf(" ");
}
if(j > r)
{
printf("-");
}
else
{
printf("%d", index);
}
}
printf("\n");
system("pause");
return 0;
}