The form of input and output for console applications depends on the current modes for the console handles being used. There are several I/O modes that may be set independently. The modes apply individually to input and output handles and must be set separately for each handle and handle type. The following modes are relevant only to applications that are accessing the console with the File I/O functions: line input, processed input, echo input, processed output, and wrap at EOL output. The other modes are relevant only to those using the Console functions: mouse aware input, and window aware input. All modes can be set with the SetConsoleMode function or queried with the GetConsoleMode function.