class NumLinesLOCUtil {

    /**
     * Reads data, if they exist, from the specified document.
     * @param doc {@link Document} instance
     * @return a defined instance
     */
    public static NullableNumLinesLOC read(Document doc) {<FILL_FUNCTION_BODY>}

    /* private to enforce static */
    private NumLinesLOCUtil() {
    }
}

        String path = doc.get(QueryBuilder.D);
        if (path == null) {
            path = doc.get(QueryBuilder.PATH);
        }
        Long numLines = NumberUtil.tryParseLong(doc.get(QueryBuilder.NUML));
        Long loc = NumberUtil.tryParseLong(doc.get(QueryBuilder.LOC));
        return new NullableNumLinesLOC(path, numLines, loc);
    
<no_super_class>