Now, how much do you know about exceptions in Java. There are checked exceptions and unchecked exceptions. IOException is a checked exception, which means if you call something that can throw an IOException, then you need to either put that call in a try block, and follow with a catch block that catches IOException or one of its superclasses, or you need to declare your method to throw IOException or one of its superclasses. If you look at the Javadocs for BufferedReader, you'll find that the readLine() method can throw IOException, so that's your problem. Let us know if that explanation doesn't make sense, and we'll a back up a step or two.