#include using namespace std; int main(){ int N; cin >> N; long long M; cin >> M; vector W(N); for(int i = 0; i < N; i++) cin >> W[i]; int g = W[0]; for(int i = 0; i < N; i++){ g = gcd(g, W[i]); } vector d; for(int i = 1; i * i <= g; i++){ if(g % i == 0){ d.push_back(i); if(i * i != g) d.push_back(g / i); } } sort(d.begin(), d.end()); vector ans(N); for(int i = 0; i < (int)d.size(); i++){ long long sum = 0; for(int j = 0; j < N; j++){ sum += W[j] / d[i]; } if(M % sum == 0){ long long te = M / sum; for(int j = 0; j < N; j++){ ans[j] = W[j] / d[i] * te; } break; } } for(int i = 0; i < N; i++){ if(i == N - 1) cout << ans[i] << endl; else cout << ans[i] << ' '; } }