/* package codechef; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;



/* Name of the class has to be "Main" only if the class is public. */
public class Main
 
 
{
    static Scanner in = new Scanner(System.in);
    
    public static void solve()
    {
      int a =in.nextInt(),b=in.nextInt(),c=in.nextInt(),k=in.nextInt();
      
      if(a>=k)
      {
          System.out.println(k);
      }
      else if(a+b>=k)
      {
          System.out.println(a);
      }
      else
      {
          
          k=k-a-b;
          System.out.println(a-(k));
      }
    }
    

    
	public static void main (String[] args) throws java.lang.Exception
	{
		// your code goes here
		
		int t=1;
	//	in.nextLine();
		
		while(t>0)
		{
		    
		    solve();
		    t--;
		}
		
		
	
	//	System.out.println(x);
	}
} import java.util.*; util.* java import java.lang.*; lang.* java import java.io.*; io.* java public class Main
 
 
{
    static Scanner in = new Scanner(System.in);
    
    public static void solve()
    {
      int a =in.nextInt(),b=in.nextInt(),c=in.nextInt(),k=in.nextInt();
      
      if(a>=k)
      {
          System.out.println(k);
      }
      else if(a+b>=k)
      {
          System.out.println(a);
      }
      else
      {
          
          k=k-a-b;
          System.out.println(a-(k));
      }
    }
    

    
	public static void main (String[] args) throws java.lang.Exception
	{
		// your code goes here
		
		int t=1;
	//	in.nextLine();
		
		while(t>0)
		{
		    
		    solve();
		    t--;
		}
		
		
	
	//	System.out.println(x);
	}
} Main static Scanner in = new Scanner(System.in); in new Scanner(System.in) public static void solve()
    {
      int a =in.nextInt(),b=in.nextInt(),c=in.nextInt(),k=in.nextInt();
      
      if(a>=k)
      {
          System.out.println(k);
      }
      else if(a+b>=k)
      {
          System.out.println(a);
      }
      else
      {
          
          k=k-a-b;
          System.out.println(a-(k));
      }
    } solve {
      int a =in.nextInt(),b=in.nextInt(),c=in.nextInt(),k=in.nextInt();
      
      if(a>=k)
      {
          System.out.println(k);
      }
      else if(a+b>=k)
      {
          System.out.println(a);
      }
      else
      {
          
          k=k-a-b;
          System.out.println(a-(k));
      }
    } int a =in.nextInt() a in.nextInt() in.nextInt in b=in.nextInt() b in.nextInt() in.nextInt in c=in.nextInt() c in.nextInt() in.nextInt in k=in.nextInt(); k in.nextInt() in.nextInt in if(a>=k)
      {
          System.out.println(k);
      }
      else if(a+b>=k)
      {
          System.out.println(a);
      }
      else
      {
          
          k=k-a-b;
          System.out.println(a-(k));
      } a>=k a k {
          System.out.println(k);
      } System.out.println(k) System.out.println System.out System System.out k if(a+b>=k)
      {
          System.out.println(a);
      }
      else
      {
          
          k=k-a-b;
          System.out.println(a-(k));
      } a+b>=k a+b a b k {
          System.out.println(a);
      } System.out.println(a) System.out.println System.out System System.out a {
          
          k=k-a-b;
          System.out.println(a-(k));
      } k=k-a-b k k-a-b k-a-b k a b System.out.println(a-(k)) System.out.println System.out System System.out a-(k) a (k) public static void main (String[] args) throws java.lang.Exception
	{
		// your code goes here
		
		int t=1;
	//	in.nextLine();
		
		while(t>0)
		{
		    
		    solve();
		    t--;
		}
		
		
	
	//	System.out.println(x);
	} main {
		// your code goes here
		
		int t=1;
	//	in.nextLine();
		
		while(t>0)
		{
		    
		    solve();
		    t--;
		}
		
		
	
	//	System.out.println(x);
	} int t=1; t 1 while(t>0)
		{
		    
		    solve();
		    t--;
		} t>0 t 0 {
		    
		    solve();
		    t--;
		} solve() solve t-- t String[] args args public class Main
 
 
{
    static Scanner in = new Scanner(System.in);
    
    public static void solve()
    {
      int a =in.nextInt(),b=in.nextInt(),c=in.nextInt(),k=in.nextInt();
      
      if(a>=k)
      {
          System.out.println(k);
      }
      else if(a+b>=k)
      {
          System.out.println(a);
      }
      else
      {
          
          k=k-a-b;
          System.out.println(a-(k));
      }
    }
    

    
	public static void main (String[] args) throws java.lang.Exception
	{
		// your code goes here
		
		int t=1;
	//	in.nextLine();
		
		while(t>0)
		{
		    
		    solve();
		    t--;
		}
		
		
	
	//	System.out.println(x);
	}
} public class Main
 
 
{
    static Scanner in = new Scanner(System.in);
    
    public static void solve()
    {
      int a =in.nextInt(),b=in.nextInt(),c=in.nextInt(),k=in.nextInt();
      
      if(a>=k)
      {
          System.out.println(k);
      }
      else if(a+b>=k)
      {
          System.out.println(a);
      }
      else
      {
          
          k=k-a-b;
          System.out.println(a-(k));
      }
    }
    

    
	public static void main (String[] args) throws java.lang.Exception
	{
		// your code goes here
		
		int t=1;
	//	in.nextLine();
		
		while(t>0)
		{
		    
		    solve();
		    t--;
		}
		
		
	
	//	System.out.println(x);
	}
} Main
/* package codechef; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;



/* Name of the class has to be "Main" only if the class is public. */
public class Main
 
 
{
    static Scanner in = new Scanner(System.in);
    
    public static void solve()
    {
      int a =in.nextInt(),b=in.nextInt(),c=in.nextInt(),k=in.nextInt();
      
      if(a>=k)
      {
          System.out.println(k);
      }
      else if(a+b>=k)
      {
          System.out.println(a);
      }
      else
      {
          
          k=k-a-b;
          System.out.println(a-(k));
      }
    }
    

    
	public static void main (String[] args) throws java.lang.Exception
	{
		// your code goes here
		
		int t=1;
	//	in.nextLine();
		
		while(t>0)
		{
		    
		    solve();
		    t--;
		}
		
		
	
	//	System.out.println(x);
	}
}
