import java.util.*;

class Main{
	
	public static void main(String args[]){

		Scanner sc = new Scanner(System.in);
		int A[] = new int[3];
		for(int n=0;n<3;n++){
			A[n] = sc.nextInt();
		}
		int K = sc.nextInt();

		long v = 0;
		if(A[0] >= A[1] && A[0] >= A[2]){
			v += A[0] * Math.pow(2,K);
			v += A[1]+A[2];
		}
		else{
			if(A[1] >= A[0] && A[1] >= A[2]){
				v += A[1] * Math.pow(2,K);
				v += A[0]+A[2];
			}
			else{
				if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				}
			}
		}
		

		System.out.println(v);
	}
} import java.util.*; util.* java class Main{
	
	public static void main(String args[]){

		Scanner sc = new Scanner(System.in);
		int A[] = new int[3];
		for(int n=0;n<3;n++){
			A[n] = sc.nextInt();
		}
		int K = sc.nextInt();

		long v = 0;
		if(A[0] >= A[1] && A[0] >= A[2]){
			v += A[0] * Math.pow(2,K);
			v += A[1]+A[2];
		}
		else{
			if(A[1] >= A[0] && A[1] >= A[2]){
				v += A[1] * Math.pow(2,K);
				v += A[0]+A[2];
			}
			else{
				if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				}
			}
		}
		

		System.out.println(v);
	}
} Main public static void main(String args[]){

		Scanner sc = new Scanner(System.in);
		int A[] = new int[3];
		for(int n=0;n<3;n++){
			A[n] = sc.nextInt();
		}
		int K = sc.nextInt();

		long v = 0;
		if(A[0] >= A[1] && A[0] >= A[2]){
			v += A[0] * Math.pow(2,K);
			v += A[1]+A[2];
		}
		else{
			if(A[1] >= A[0] && A[1] >= A[2]){
				v += A[1] * Math.pow(2,K);
				v += A[0]+A[2];
			}
			else{
				if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				}
			}
		}
		

		System.out.println(v);
	} main {

		Scanner sc = new Scanner(System.in);
		int A[] = new int[3];
		for(int n=0;n<3;n++){
			A[n] = sc.nextInt();
		}
		int K = sc.nextInt();

		long v = 0;
		if(A[0] >= A[1] && A[0] >= A[2]){
			v += A[0] * Math.pow(2,K);
			v += A[1]+A[2];
		}
		else{
			if(A[1] >= A[0] && A[1] >= A[2]){
				v += A[1] * Math.pow(2,K);
				v += A[0]+A[2];
			}
			else{
				if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				}
			}
		}
		

		System.out.println(v);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int A[] = new int[3]; A new int[3] 3 for(int n=0;n<3;n++){
			A[n] = sc.nextInt();
		} int n=0; int n=0; n 0 n<3 n 3 n++ n++ n {
			A[n] = sc.nextInt();
		} {
			A[n] = sc.nextInt();
		} A[n] = sc.nextInt() A[n] A n sc.nextInt() sc.nextInt sc int K = sc.nextInt(); K sc.nextInt() sc.nextInt sc long v = 0; v 0 if(A[0] >= A[1] && A[0] >= A[2]){
			v += A[0] * Math.pow(2,K);
			v += A[1]+A[2];
		}
		else{
			if(A[1] >= A[0] && A[1] >= A[2]){
				v += A[1] * Math.pow(2,K);
				v += A[0]+A[2];
			}
			else{
				if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				}
			}
		} A[0] >= A[1] && A[0] >= A[2] A[0] >= A[1] A[0] A 0 A[1] A 1 A[0] >= A[2] A[0] A 0 A[2] A 2 {
			v += A[0] * Math.pow(2,K);
			v += A[1]+A[2];
		} v += A[0] * Math.pow(2,K) v A[0] * Math.pow(2,K) A[0] A 0 Math.pow(2,K) Math.pow Math 2 K v += A[1]+A[2] v A[1]+A[2] A[1] A 1 A[2] A 2 {
			if(A[1] >= A[0] && A[1] >= A[2]){
				v += A[1] * Math.pow(2,K);
				v += A[0]+A[2];
			}
			else{
				if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				}
			}
		} if(A[1] >= A[0] && A[1] >= A[2]){
				v += A[1] * Math.pow(2,K);
				v += A[0]+A[2];
			}
			else{
				if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				}
			} A[1] >= A[0] && A[1] >= A[2] A[1] >= A[0] A[1] A 1 A[0] A 0 A[1] >= A[2] A[1] A 1 A[2] A 2 {
				v += A[1] * Math.pow(2,K);
				v += A[0]+A[2];
			} v += A[1] * Math.pow(2,K) v A[1] * Math.pow(2,K) A[1] A 1 Math.pow(2,K) Math.pow Math 2 K v += A[0]+A[2] v A[0]+A[2] A[0] A 0 A[2] A 2 {
				if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				}
			} if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				} A[2] >= A[0] && A[2] >= A[1] A[2] >= A[0] A[2] A 2 A[0] A 0 A[2] >= A[1] A[2] A 2 A[1] A 1 {
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				} v += A[2] * Math.pow(2,K) v A[2] * Math.pow(2,K) A[2] A 2 Math.pow(2,K) Math.pow Math 2 K v += A[1]+A[0] v A[1]+A[0] A[1] A 1 A[0] A 0 System.out.println(v) System.out.println System.out System System.out v String args[] args
import java.util.*;

class Main{
	
	public static void main(String args[]){

		Scanner sc = new Scanner(System.in);
		int A[] = new int[3];
		for(int n=0;n<3;n++){
			A[n] = sc.nextInt();
		}
		int K = sc.nextInt();

		long v = 0;
		if(A[0] >= A[1] && A[0] >= A[2]){
			v += A[0] * Math.pow(2,K);
			v += A[1]+A[2];
		}
		else{
			if(A[1] >= A[0] && A[1] >= A[2]){
				v += A[1] * Math.pow(2,K);
				v += A[0]+A[2];
			}
			else{
				if(A[2] >= A[0] && A[2] >= A[1]){
					v += A[2] * Math.pow(2,K);
					v += A[1]+A[0];
				}
			}
		}
		

		System.out.println(v);
	}
}