#include int euclid(int a, int b, int& x, int& y) { int x1 = 0; x = 1; int y1 = 1; y = 0; while (b > 0) { int q = a / b; std::tie(x, x1) = std::make_tuple(x1, x - q * x1); std::tie(y, y1) = std::make_tuple(y1, y - q * y1); std::tie(a, b ) = std::make_tuple( b, a - q * b ); } return a; } int mod(int a, int m) { if (a >= 0) return a % m; return (m + (a % m)) % m; } int mul_inv(int a, int n) { int x, y; int d = euclid(a, n, x, y); if (d != 1) return -1; return mod(x, n); } int main(void) { int a, n; std::cin >> a >> n; int inv_a = mul_inv(a, n); int m; while (std::cin >> m) { std::cout << mod(inv_a * m, n) << std::endl; } return 0; }