import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main{

	public static void main(String[] args) {
		BufferedReader bfr=new BufferedReader(new InputStreamReader(System.in));
		String str="";
		StringTokenizer stk;

		int a,b,c=0;

		try {
			str=bfr.readLine();

			if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			}
		}catch(IOException e) {
			System.exit(0);
		}

		catch(NumberFormatException ee) {
			System.exit(0);
		}

		catch(NullPointerException eee) {
			System.exit(0);
		}
	}
} import java.io.BufferedReader; BufferedReader java.io import java.io.IOException; IOException java.io import java.io.InputStreamReader; InputStreamReader java.io import java.util.StringTokenizer; StringTokenizer java.util public class Main{

	public static void main(String[] args) {
		BufferedReader bfr=new BufferedReader(new InputStreamReader(System.in));
		String str="";
		StringTokenizer stk;

		int a,b,c=0;

		try {
			str=bfr.readLine();

			if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			}
		}catch(IOException e) {
			System.exit(0);
		}

		catch(NumberFormatException ee) {
			System.exit(0);
		}

		catch(NullPointerException eee) {
			System.exit(0);
		}
	}
} Main public static void main(String[] args) {
		BufferedReader bfr=new BufferedReader(new InputStreamReader(System.in));
		String str="";
		StringTokenizer stk;

		int a,b,c=0;

		try {
			str=bfr.readLine();

			if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			}
		}catch(IOException e) {
			System.exit(0);
		}

		catch(NumberFormatException ee) {
			System.exit(0);
		}

		catch(NullPointerException eee) {
			System.exit(0);
		}
	} main {
		BufferedReader bfr=new BufferedReader(new InputStreamReader(System.in));
		String str="";
		StringTokenizer stk;

		int a,b,c=0;

		try {
			str=bfr.readLine();

			if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			}
		}catch(IOException e) {
			System.exit(0);
		}

		catch(NumberFormatException ee) {
			System.exit(0);
		}

		catch(NullPointerException eee) {
			System.exit(0);
		}
	} BufferedReader bfr=new BufferedReader(new InputStreamReader(System.in)); bfr new BufferedReader(new InputStreamReader(System.in)) String str=""; str "" StringTokenizer stk; stk int a a b b c=0; c 0 try {
			str=bfr.readLine();

			if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			}
		}catch(IOException e) {
			System.exit(0);
		}

		catch(NumberFormatException ee) {
			System.exit(0);
		}

		catch(NullPointerException eee) {
			System.exit(0);
		} catch(IOException e) {
			System.exit(0);
		} IOException e {
			System.exit(0);
		} System.exit(0) System.exit System 0 catch(NumberFormatException ee) {
			System.exit(0);
		} NumberFormatException ee {
			System.exit(0);
		} System.exit(0) System.exit System 0 catch(NullPointerException eee) {
			System.exit(0);
		} NullPointerException eee {
			System.exit(0);
		} System.exit(0) System.exit System 0 {
			str=bfr.readLine();

			if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			}
		} str=bfr.readLine() str bfr.readLine() bfr.readLine bfr if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			} str.equals("") str.equals str "" {
				System.exit(0);
			} System.exit(0) System.exit System 0 {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			} stk=new StringTokenizer(str," ") stk new StringTokenizer(str," ") a=Integer.parseInt(stk.nextToken()) a Integer.parseInt(stk.nextToken()) Integer.parseInt Integer stk.nextToken() stk.nextToken stk b=Integer.parseInt(stk.nextToken()) b Integer.parseInt(stk.nextToken()) Integer.parseInt Integer stk.nextToken() stk.nextToken stk c=Integer.parseInt(stk.nextToken()) c Integer.parseInt(stk.nextToken()) Integer.parseInt Integer stk.nextToken() stk.nextToken stk str=bfr.readLine() str bfr.readLine() bfr.readLine bfr if(str.equals("")) {
					System.exit(0);
				} str.equals("") str.equals str "" {
					System.exit(0);
				} System.exit(0) System.exit System 0 int kaisu=Integer.parseInt(str); kaisu Integer.parseInt(str) Integer.parseInt Integer str int max_coffee=Math.max(a, Math.max(b,c)); max_coffee Math.max(a, Math.max(b,c)) Math.max Math a Math.max(b,c) Math.max Math b c if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				} a==max_coffee a max_coffee {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				} for(int i=0; i<kaisu; i++) {
						a*=2;
					} int i=0; int i=0; i 0 i<kaisu i kaisu i++ i++ i {
						a*=2;
					} {
						a*=2;
					} a*=2 a 2 if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				} b==max_coffee b max_coffee {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				} for(int i=0; i<kaisu; i++) {
					b*=2;
					} int i=0; int i=0; i 0 i<kaisu i kaisu i++ i++ i {
					b*=2;
					} {
					b*=2;
					} b*=2 b 2 if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				} c==max_coffee c max_coffee {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				} for(int i=0; i<kaisu; i++) {
						c*=2;
					} int i=0; int i=0; i 0 i<kaisu i kaisu i++ i++ i {
						c*=2;
					} {
						c*=2;
					} c*=2 c 2 System.out.println(a+b+c) System.out.println System.out System System.out a+b+c a+b+c a b c String[] args args public class Main{

	public static void main(String[] args) {
		BufferedReader bfr=new BufferedReader(new InputStreamReader(System.in));
		String str="";
		StringTokenizer stk;

		int a,b,c=0;

		try {
			str=bfr.readLine();

			if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			}
		}catch(IOException e) {
			System.exit(0);
		}

		catch(NumberFormatException ee) {
			System.exit(0);
		}

		catch(NullPointerException eee) {
			System.exit(0);
		}
	}
} public class Main{

	public static void main(String[] args) {
		BufferedReader bfr=new BufferedReader(new InputStreamReader(System.in));
		String str="";
		StringTokenizer stk;

		int a,b,c=0;

		try {
			str=bfr.readLine();

			if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			}
		}catch(IOException e) {
			System.exit(0);
		}

		catch(NumberFormatException ee) {
			System.exit(0);
		}

		catch(NullPointerException eee) {
			System.exit(0);
		}
	}
} Main
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main{

	public static void main(String[] args) {
		BufferedReader bfr=new BufferedReader(new InputStreamReader(System.in));
		String str="";
		StringTokenizer stk;

		int a,b,c=0;

		try {
			str=bfr.readLine();

			if(str.equals("")) {
				System.exit(0);
			}

			else {
				stk=new StringTokenizer(str," ");
				a=Integer.parseInt(stk.nextToken());
				b=Integer.parseInt(stk.nextToken());
				c=Integer.parseInt(stk.nextToken());

				str=bfr.readLine();

				if(str.equals("")) {
					System.exit(0);
				}

				int kaisu=Integer.parseInt(str);


				int max_coffee=Math.max(a, Math.max(b,c));
				if(a==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						a*=2;
					}
				}

				else if(b==max_coffee) {
					for(int i=0; i<kaisu; i++) {
					b*=2;
					}
				}

				else if(c==max_coffee) {
					for(int i=0; i<kaisu; i++) {
						c*=2;
					}
				}
				System.out.println(a+b+c);
			}
		}catch(IOException e) {
			System.exit(0);
		}

		catch(NumberFormatException ee) {
			System.exit(0);
		}

		catch(NullPointerException eee) {
			System.exit(0);
		}
	}
}