import java.io.StreamTokenizer;
import java.io.BufferedReader;
import java.io.InputStreamReader;

/**
 *
 * This code demonstrates how to read values from standard input
 *
 */
public final class SRC3Reader
{
	/**
	 * internal word reader
	 */
	private final static StreamTokenizer m_reader = new StreamTokenizer (new BufferedReader(new InputStreamReader(System.in)));

	/**
	 * initiate m_reader first
	 */
	static
	{
		// set such set all alphanumberic characters and symbols
		// are recognized as part of word
		m_reader.resetSyntax ();
		m_reader.wordChars (33, 127);
		// every thing up to space are space chars
		m_reader.whitespaceChars (0, 32);
	}

	/**
	 * read a word character from standard input
	 *
	 * @return the word if successful
	 * @throws exception if failure
	 */
	private static String readWord () throws Exception
	{
		while (true)
		{
			int returnVal = m_reader.nextToken ();
			if (returnVal == StreamTokenizer.TT_WORD)
				return m_reader.sval;
			if (returnVal == StreamTokenizer.TT_EOF)
				throw new Exception ();
		}
	}

	/**
	 * read an integer from input
	 *
	 * @return the integer value.
	 */
	public static int readInt ()
	{
		try
		{
			return Integer.parseInt (readWord ());
		}
		catch (Exception ex)
		{
			return 0;
		}
	}
	/**
	 * read a real from input
	 *
	 * @return the real value.
	 */
	public static double readReal ()
	{
		try
		{
			return Double.parseDouble (readWord ());
		}
		catch (Exception ex)
		{
			return 0.0;
		}
	}

	/**
	 * read a word from input
	 *
	 * @return the word
	 */
	public static String readString ()
	{
		try
		{
			return readWord ();
		}
		catch (Exception ex)
		{
			return "";
		}
	}

	/**
	 * function for testing/debugging purpose
	 */
	public static void main (String args[])
	{
		int i = readInt ();
		double j = readReal ();
		String k = readString ();
		System.out.println ("" + i + ", " + j + ", " + k);
	}
}
