'use strict';
const p = s => console.log(s);
// let a,b,c,d;
// [a,b,c,d] = input[0].trim().split(" ").map(i => parseInt(i));

function main(input) {
  let A,B,C,K;
  [A,B,C,K] = input[0].trim().split(" ").map(i=> parseInt(i));

  let max =0;
  let flag = false;

  if(!flag) {
    if(A <= K) {
      max += A;
      K -= A;
    } else {
      max = K;
      flag = true;
    }
  }

  if(!flag) {
    if(B <= K) {
      K -= B;
    } else {
      flag = true;
    }
  }

  if(!flag) {
    max -= K;
  }

  p(max);

}
main(require('fs').readFileSync('/dev/stdin', 'utf8').trim().split("\n"));
