#include <iostream>
#include <vector>
using namespace std;

vector< vector<int> > matrix_product(vector< vector<int> > &A, vector< vector<int> > &B, int M){
  int n = A.size(), m = B[0].size(), l = A[0].size();
  vector< vector<int> > ret(n,vector<int>(m));
  for(int i = 0; i < n; ++i){
    for(int j = 0; j < m; ++j){
      ret[i][j] = 0;
      for(int k = 0; k < l; ++k){
        ret[i][j] += (A[i][k]*B[k][j])%M;
        ret[i][j] %= M;
      }
    }
  }
  return ret;
}

vector< vector<int> > matrix_pow(vector< vector<int> > &P, int N, int M){
  vector< vector<int> > ret(P.size(),vector<int>(P.size(),0)), t = P;
  for(int i = 0; i < P.size(); ++i) ret[i][i] = 1;
  int k = 0;
  while((1<<k) <= N){
    if((N>>k)&1){
      ret = matrix_product(ret,t,M);
    }
    ++k;
    t = matrix_product(t,t,M);
  }
  return ret;
}

int main(){
  int N, M, A, B, C, T;
  while(cin >> N >> M >> A >> B >> C >> T, N){
    vector< vector<int> > S(N,vector<int>(1));
    for(int i = 0; i < N; ++i) cin >> S[i][0];
    vector< vector<int> > P(N,vector<int>(N,0));
    for(int i = 0; i < N; ++i) P[i][i] = B;
    for(int i = 1; i < N; ++i) P[i][i-1] = A;
    for(int i = 0; i < N-1; ++i) P[i][i+1] = C;
    vector< vector<int> > P_ = matrix_pow(P,T,M);
    vector< vector<int> > ans = matrix_product(P_,S,M);
    for(int i = 0; i < N; ++i){
      cout << ans[i][0];
      if(i < N-1) cout << " ";
    }
    cout << endl;
  }
  return 0;
}