import sys input = sys.stdin.readline N,K,seed,a,b,m=map(int,input().split()) F=[seed] for i in range(2*N-1): F.append((F[-1]*a+b)%m) V=[[],[],[]] for i in range(N): w=F[i]%3+1 v=F[i+N]*w V[w-1].append(v) for i in range(3): V[i].sort() ANS=0 for i in range(K): for j in range(3): if V[j]==[]: V[j]=[0] v3=V[2][-1] v12=V[0][-1]+V[1][-1] v1=0 for j in range(3): if len(V[0])-1-j>=0: v1+=V[0][len(V[0])-1-j] MAX=max(v1,v12,v3) if MAX==v3: ANS+=V[2].pop() elif MAX==v12: ANS+=V[1].pop() ANS+=V[0].pop() else: ANS+=V[0].pop() if V[0]==[]: V[0].append(0) ANS+=V[0].pop() if V[0]==[]: V[0].append(0) ANS+=V[0].pop() if V[0]==[]: V[0].append(0) print(ANS)