#vulnerable code 
                                @Test
    public void testNextToken3Escaping() throws IOException {
        /* file: a,\,,b
        *       \,,
        */
        String code = "a,\\,,b\\\\\n\\,,\\\nc,d\\\n";
        CSVFormat format = CSVFormat.DEFAULT.withEscape('\\');
        assertTrue(format.isEscaping());
        Lexer parser = getLexer(code, format);

        assertTokenEquals(TOKEN, "a", parser.nextToken(new Token()));
        assertTokenEquals(TOKEN, ",", parser.nextToken(new Token()));
        assertTokenEquals(EORECORD, "b\\", parser.nextToken(new Token()));
        assertTokenEquals(TOKEN, ",", parser.nextToken(new Token()));
        assertTokenEquals(TOKEN, "\nc", parser.nextToken(new Token()));
        assertTokenEquals(EOF, "d\n", parser.nextToken(new Token()));
        assertTokenEquals(EOF, "", parser.nextToken(new Token()));
    } 
                            #location 17 
                            #vulnerability type RESOURCE_LEAK
#fixed code
                                @Test
    public void testNextToken3Escaping() throws IOException {
        /* file: a,\,,b
        *       \,,
        */
        String code = "a,\\,,b\\\\\n\\,,\\\nc,d\\\r\ne";
        CSVFormat format = CSVFormat.DEFAULT.withEscape('\\').withEmptyLinesIgnored(false);
        assertTrue(format.isEscaping());
        Lexer parser = getLexer(code, format);

        assertTokenEquals(TOKEN, "a", parser.nextToken(new Token()));
        assertTokenEquals(TOKEN, ",", parser.nextToken(new Token()));
        assertTokenEquals(EORECORD, "b\\", parser.nextToken(new Token()));
        assertTokenEquals(TOKEN, ",", parser.nextToken(new Token()));
        assertTokenEquals(TOKEN, "\nc", parser.nextToken(new Token()));
        assertTokenEquals(EORECORD, "d\r", parser.nextToken(new Token()));
        assertTokenEquals(EOF, "e", parser.nextToken(new Token()));
    }