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

/** 
    Una semplice classe per leggere stringhe e numeri 
    dallo standard input.
*/

public class Input{
    
    private static BufferedReader reader = 
        new BufferedReader(new InputStreamReader(System.in));
    
    /**
       Legge una linea di input. Nell'improbabile caso di una
       IOException, il programma termina. 
       @return restituisce la linea di input che l'utente ha battuto.
    */
    public static String readLine(){  
        String inputLine = "";
        try{  
            inputLine = reader.readLine();
        }
        catch(IOException e){  
            System.out.println(e);
            System.exit(1);
        }
        return inputLine;
    }
    
    /**
       Legge una linea di input e la converte in un intero.
       Eventuali spazi bianchi prima e dopo l'intero vengono ignorati.
       @return l'intero dato in input dall'utente
    */
    public static int readInt(){  
        String inputString = readLine();
        inputString = inputString.trim();
        int n = Integer.parseInt(inputString);
        return n;
    }
   
    /**
       Legge una linea di input e la converte in un numero
       in virgola mobile.  Eventuali spazi bianchi prima e
       dopo il numero vengono ignorati.
       @return il numero dato in input dall'utente 
    */
    public static double readDouble(){  
        String inputString = readLine();
        inputString = inputString.trim();
        double x = Double.parseDouble(inputString);
        return x;
    }
   
    /**
       Legge una linea di input e ne estrae il primo carattere.  
       @return il primo carattere della riga data in input dall'utente 
    */
    public static char readChar(){  
        String inputString = readLine();
        char c = inputString.charAt(0);
        return c;
    }
}