#fixed code
                                private int go(String[] args) {

        m_parser.setUsageWidth(80);

        try {
            m_parser.parseArgument(args);
        }
        catch (CmdLineException e) {
            System.err.println(e.getMessage());
            printUsage(System.err);
            return 1;
        }

        if (m_needsHelp) {
            printUsage(System.out);
            return 0;
        }

        if (m_resource == null || m_metric == null) {
            System.err.println("Missing required argument(s)");
            printUsage(System.err);
            return 1;
        }

        System.out.printf("timestamp,%s%n", m_metric);

        for (Results.Row<Sample> row : m_repository.select(m_resource, timestamp(m_start), timestamp(m_end))) {
            System.out.printf("%s,%.2f%n", row.getTimestamp().asDate(), row.getElement(m_metric).getValue().doubleValue());
        }

        return 0;
    }
#vulnerable code 
                                private int go(String[] args) {

        m_parser.setUsageWidth(80);

        try {
            m_parser.parseArgument(args);
        }
        catch (CmdLineException e) {
            System.err.println(e.getMessage());
            printUsage(System.err);
            return 1;
        }

        if (m_needsHelp) {
            printUsage(System.out);
            return 0;
        }

        if (m_resource == null || m_metric == null) {
            System.err.println("Missing required argument(s)");
            printUsage(System.err);
            return 1;
        }

        System.out.printf("timestamp,%s%n", m_metric);

        for (Results.Row<Sample> row : m_repository.select(m_resource, timestamp(m_start), timestamp(m_end))) {
            System.out.printf("%s,%.2f%n", row.getTimestamp().asDate(), row.getElement(m_metric).getValue());
        }

        return 0;
    } 
                            #location 28 
                            #vulnerability type CHECKERS_PRINTF_ARGS