def min_beads(a, b, c, k):
return (k + 2) // 2 if k <= a + b + c - k else (a + b + c + 1) // 2
a, b, c, k = map(int, input().split())
print(min_beads(a, b, c, k))
ZGVmIG1pbl9iZWFkcyhhLCBiLCBjLCBrKToKICAgIHJldHVybiAoayArIDIpIC8vIDIgaWYgayA8PSBhICsgYiArIGMgLSBrIGVsc2UgKGEgKyBiICsgYyArIDEpIC8vIDIKCmEsIGIsIGMsIGsgPSBtYXAoaW50LCBpbnB1dCgpLnNwbGl0KCkpCnByaW50KG1pbl9iZWFkcyhhLCBiLCBjLCBrKSkK