#include<cstdio>

int c[8];
int m[8]={1,4,1,4,1,2,1,2};
int mm[8][8];
int main(void){
	for(int i=0;i<8;i++){
		for(int j=0;j<8;j++)mm[i][j]=m[(j+i)%8];
	}
	while(~scanf("%d%d%d%d%d%d%d%d",&c[0],&c[1],&c[2],&c[3],&c[4],&c[5],&c[6],&c[7])){
		int res=114514,num=0,id=0;
		for(int i=0;i<8;i++){
			int cnt=0;
			for(int j=0;j<8;j++)if(c[j]>mm[i][j])cnt+=c[j]-mm[i][j];
			if(cnt<res){
				res=cnt;
				id=i;
				num=0;
				for(int j=0;j<8;j++){
					num*=10;
					num+=mm[i][j];
				}
			}else if(cnt==res){
				int nnum=0;
				for(int j=0;j<8;j++){
					nnum*=10;
					nnum+=mm[i][j];
				}
				if(nnum<num){
					id=i;
					num=nnum;
				}
			}
		}
		for(int i=0;i<8;i++)printf("%d%c",mm[id][i],i==7?'\n':' ');
	}
	return 0;
}