import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
         Scanner sc = new Scanner(System.in);

         //A,B,C格納用配列
         int[] numList = new int[3];

         //入力値を配列に格納
         for (int i = 0; i < numList.length; i++) {
             numList[i] = sc.nextInt();
         }
         //取り出すカードの枚数: K
         int K = sc.nextInt();
         sc.close();

         //取り出したカードの総和
         int count = 0;
         //カードの数
         int cardNum = 1;

         for (int num : numList) {
             if (num > 0) {
                 if (num > K) {
                     num = K;
                 }
                 count += (cardNum * num);
                 K -= num;
                 if (K == 0) {
                     break;
                 }
             }
             cardNum--;
         }
         System.out.println(count);

    }

}

/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz