import java.util.*;
public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);		// 整数の入力


int A= sc.nextInt();
int B= sc.nextInt();
int C= sc.nextInt();
int K= sc.nextInt();
int max=A;
int sonota=B+C;
int sum=0;

	if(max<B){
		max=B;
		sonota=A+C;
	}
	if(max<C){
		max=C;
		sonota=A+B;
	}

	for(int i=0; i<K; i++){
		sum=max*2+sonota;
		max=max*2;
	}
	System.out.println(sum);
	}

} import java.util.*; util.* java public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);		// 整数の入力


int A= sc.nextInt();
int B= sc.nextInt();
int C= sc.nextInt();
int K= sc.nextInt();
int max=A;
int sonota=B+C;
int sum=0;

	if(max<B){
		max=B;
		sonota=A+C;
	}
	if(max<C){
		max=C;
		sonota=A+B;
	}

	for(int i=0; i<K; i++){
		sum=max*2+sonota;
		max=max*2;
	}
	System.out.println(sum);
	}

} Main public static void main(String[] args){
		Scanner sc = new Scanner(System.in);		// 整数の入力


int A= sc.nextInt();
int B= sc.nextInt();
int C= sc.nextInt();
int K= sc.nextInt();
int max=A;
int sonota=B+C;
int sum=0;

	if(max<B){
		max=B;
		sonota=A+C;
	}
	if(max<C){
		max=C;
		sonota=A+B;
	}

	for(int i=0; i<K; i++){
		sum=max*2+sonota;
		max=max*2;
	}
	System.out.println(sum);
	} main {
		Scanner sc = new Scanner(System.in);		// 整数の入力


int A= sc.nextInt();
int B= sc.nextInt();
int C= sc.nextInt();
int K= sc.nextInt();
int max=A;
int sonota=B+C;
int sum=0;

	if(max<B){
		max=B;
		sonota=A+C;
	}
	if(max<C){
		max=C;
		sonota=A+B;
	}

	for(int i=0; i<K; i++){
		sum=max*2+sonota;
		max=max*2;
	}
	System.out.println(sum);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int A= sc.nextInt(); A sc.nextInt() sc.nextInt sc int B= sc.nextInt(); B sc.nextInt() sc.nextInt sc int C= sc.nextInt(); C sc.nextInt() sc.nextInt sc int K= sc.nextInt(); K sc.nextInt() sc.nextInt sc int max=A; max A int sonota=B+C; sonota B+C B C int sum=0; sum 0 if(max<B){
		max=B;
		sonota=A+C;
	} max<B max B {
		max=B;
		sonota=A+C;
	} max=B max B sonota=A+C sonota A+C A C if(max<C){
		max=C;
		sonota=A+B;
	} max<C max C {
		max=C;
		sonota=A+B;
	} max=C max C sonota=A+B sonota A+B A B for(int i=0; i<K; i++){
		sum=max*2+sonota;
		max=max*2;
	} int i=0; int i=0; i 0 i<K i K i++ i++ i {
		sum=max*2+sonota;
		max=max*2;
	} {
		sum=max*2+sonota;
		max=max*2;
	} sum=max*2+sonota sum max*2+sonota max*2 max 2 sonota max=max*2 max max*2 max 2 System.out.println(sum) System.out.println 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 A= sc.nextInt();
int B= sc.nextInt();
int C= sc.nextInt();
int K= sc.nextInt();
int max=A;
int sonota=B+C;
int sum=0;

	if(max<B){
		max=B;
		sonota=A+C;
	}
	if(max<C){
		max=C;
		sonota=A+B;
	}

	for(int i=0; i<K; i++){
		sum=max*2+sonota;
		max=max*2;
	}
	System.out.println(sum);
	}

} public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);		// 整数の入力


int A= sc.nextInt();
int B= sc.nextInt();
int C= sc.nextInt();
int K= sc.nextInt();
int max=A;
int sonota=B+C;
int sum=0;

	if(max<B){
		max=B;
		sonota=A+C;
	}
	if(max<C){
		max=C;
		sonota=A+B;
	}

	for(int i=0; i<K; i++){
		sum=max*2+sonota;
		max=max*2;
	}
	System.out.println(sum);
	}

} Main
import java.util.*;
public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);		// 整数の入力


int A= sc.nextInt();
int B= sc.nextInt();
int C= sc.nextInt();
int K= sc.nextInt();
int max=A;
int sonota=B+C;
int sum=0;

	if(max<B){
		max=B;
		sonota=A+C;
	}
	if(max<C){
		max=C;
		sonota=A+B;
	}

	for(int i=0; i<K; i++){
		sum=max*2+sonota;
		max=max*2;
	}
	System.out.println(sum);
	}

}
