
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] kokuban=new int[3];
		for(int i=0;i<3;i++) {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		}
		int K=0;
		try {K=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}

	/*	for(int i=0;i<3;i++) {
			System.out.print(kokuban[i]+" ");
			}
*/
		//System.out.println("");
		//System.out.println(K);
		for(int i=0;i<3;i++) {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		}
		if(K<1||K>10) {
			//System.out.println("Kの値が不正です");
			System.exit(1);
			}
		int max=-1;
		for(int z=0;z<K;z++) {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		}
		int sum=0;
		for(int i=0;i<3;i++)sum+=kokuban[i];
		System.out.print(sum);
		}
	} import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] kokuban=new int[3];
		for(int i=0;i<3;i++) {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		}
		int K=0;
		try {K=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}

	/*	for(int i=0;i<3;i++) {
			System.out.print(kokuban[i]+" ");
			}
*/
		//System.out.println("");
		//System.out.println(K);
		for(int i=0;i<3;i++) {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		}
		if(K<1||K>10) {
			//System.out.println("Kの値が不正です");
			System.exit(1);
			}
		int max=-1;
		for(int z=0;z<K;z++) {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		}
		int sum=0;
		for(int i=0;i<3;i++)sum+=kokuban[i];
		System.out.print(sum);
		}
	} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] kokuban=new int[3];
		for(int i=0;i<3;i++) {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		}
		int K=0;
		try {K=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}

	/*	for(int i=0;i<3;i++) {
			System.out.print(kokuban[i]+" ");
			}
*/
		//System.out.println("");
		//System.out.println(K);
		for(int i=0;i<3;i++) {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		}
		if(K<1||K>10) {
			//System.out.println("Kの値が不正です");
			System.exit(1);
			}
		int max=-1;
		for(int z=0;z<K;z++) {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		}
		int sum=0;
		for(int i=0;i<3;i++)sum+=kokuban[i];
		System.out.print(sum);
		} main {
		Scanner sc = new Scanner(System.in);
		int[] kokuban=new int[3];
		for(int i=0;i<3;i++) {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		}
		int K=0;
		try {K=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}

	/*	for(int i=0;i<3;i++) {
			System.out.print(kokuban[i]+" ");
			}
*/
		//System.out.println("");
		//System.out.println(K);
		for(int i=0;i<3;i++) {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		}
		if(K<1||K>10) {
			//System.out.println("Kの値が不正です");
			System.exit(1);
			}
		int max=-1;
		for(int z=0;z<K;z++) {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		}
		int sum=0;
		for(int i=0;i<3;i++)sum+=kokuban[i];
		System.out.print(sum);
		} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int[] kokuban=new int[3]; kokuban new int[3] 3 for(int i=0;i<3;i++) {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		} int i=0; int i=0; i 0 i<3 i 3 i++ i++ i {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		} {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		} try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);} catch(Exception e) {//System.out.print(e);
		System.exit(1);} Exception e {//System.out.print(e);
		System.exit(1);} System.exit(1) System.exit System 1 {kokuban[i]=sc.nextInt();} kokuban[i]=sc.nextInt() kokuban[i] kokuban i sc.nextInt() sc.nextInt sc int K=0; K 0 try {K=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);} catch(Exception e) {//System.out.print(e);
		System.exit(1);} Exception e {//System.out.print(e);
		System.exit(1);} System.exit(1) System.exit System 1 {K=sc.nextInt();} K=sc.nextInt() K sc.nextInt() sc.nextInt sc for(int i=0;i<3;i++) {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		} int i=0; int i=0; i 0 i<3 i 3 i++ i++ i {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		} {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		} if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			} kokuban[i]<1||kokuban[i]>50 kokuban[i]<1 kokuban[i] kokuban i 1 kokuban[i]>50 kokuban[i] kokuban i 50 {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			} System.exit(1) System.exit System 1 if(K<1||K>10) {
			//System.out.println("Kの値が不正です");
			System.exit(1);
			} K<1||K>10 K<1 K 1 K>10 K 10 {
			//System.out.println("Kの値が不正です");
			System.exit(1);
			} System.exit(1) System.exit System 1 int max=-1; max -1 1 for(int z=0;z<K;z++) {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		} int z=0; int z=0; z 0 z<K z K z++ z++ z {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		} {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		} if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;} kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2] kokuban[0]>=kokuban[1] kokuban[0] kokuban 0 kokuban[1] kokuban 1 kokuban[0]>=kokuban[2] kokuban[0] kokuban 0 kokuban[2] kokuban 2 {max=0;} max=0 max 0 if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;} kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0] kokuban[1]>=kokuban[2] kokuban[1] kokuban 1 kokuban[2] kokuban 2 kokuban[1]>=kokuban[0] kokuban[1] kokuban 1 kokuban[0] kokuban 0 {max=1;} max=1 max 1 if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;} kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0] kokuban[2]>=kokuban[0] kokuban[2] kokuban 2 kokuban[0] kokuban 0 kokuban[2]>=kokuban[0] kokuban[2] kokuban 2 kokuban[0] kokuban 0 {max=2;} max=2 max 2 kokuban[max]*=2 kokuban[max] kokuban max 2 int sum=0; sum 0 for(int i=0;i<3;i++)sum+=kokuban[i]; int i=0; int i=0; i 0 i<3 i 3 i++ i++ i sum+=kokuban[i]; sum+=kokuban[i] sum kokuban[i] kokuban i System.out.print(sum) System.out.print System.out System System.out sum String[] args args public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] kokuban=new int[3];
		for(int i=0;i<3;i++) {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		}
		int K=0;
		try {K=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}

	/*	for(int i=0;i<3;i++) {
			System.out.print(kokuban[i]+" ");
			}
*/
		//System.out.println("");
		//System.out.println(K);
		for(int i=0;i<3;i++) {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		}
		if(K<1||K>10) {
			//System.out.println("Kの値が不正です");
			System.exit(1);
			}
		int max=-1;
		for(int z=0;z<K;z++) {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		}
		int sum=0;
		for(int i=0;i<3;i++)sum+=kokuban[i];
		System.out.print(sum);
		}
	} public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] kokuban=new int[3];
		for(int i=0;i<3;i++) {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		}
		int K=0;
		try {K=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}

	/*	for(int i=0;i<3;i++) {
			System.out.print(kokuban[i]+" ");
			}
*/
		//System.out.println("");
		//System.out.println(K);
		for(int i=0;i<3;i++) {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		}
		if(K<1||K>10) {
			//System.out.println("Kの値が不正です");
			System.exit(1);
			}
		int max=-1;
		for(int z=0;z<K;z++) {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		}
		int sum=0;
		for(int i=0;i<3;i++)sum+=kokuban[i];
		System.out.print(sum);
		}
	} Main

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] kokuban=new int[3];
		for(int i=0;i<3;i++) {
		try{kokuban[i]=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}
		}
		int K=0;
		try {K=sc.nextInt();}
		catch(Exception e) {//System.out.print(e);
		System.exit(1);}

	/*	for(int i=0;i<3;i++) {
			System.out.print(kokuban[i]+" ");
			}
*/
		//System.out.println("");
		//System.out.println(K);
		for(int i=0;i<3;i++) {
		if(kokuban[i]<1||kokuban[i]>50) {
			//System.out.println(i+"番目の値が不正です");
			System.exit(1);
			}
		}
		if(K<1||K>10) {
			//System.out.println("Kの値が不正です");
			System.exit(1);
			}
		int max=-1;
		for(int z=0;z<K;z++) {
		if(kokuban[0]>=kokuban[1]&&kokuban[0]>=kokuban[2]) {max=0;}
		else if(kokuban[1]>=kokuban[2]&&kokuban[1]>=kokuban[0]) {max=1;}
		else if(kokuban[2]>=kokuban[0]&&kokuban[2]>=kokuban[0]) {max=2;}
		kokuban[max]*=2;
		}
		int sum=0;
		for(int i=0;i<3;i++)sum+=kokuban[i];
		System.out.print(sum);
		}
	}
