GraphEdges (int rowIndex) { int upNeighborIndex = getUpNeighborIndex(rowIndex); GraphEdges graphEdges = cacheNU.get(upNeighborIndex); if (graphEdges == null) { graphEdges = getUCorrectEdges(upNeighborIndex); cacheNU.put(upNeighborIndex, graphEdges); } return graphEdges.copyInstance(); }