Result (@NotNull TraceInfo info) { final Map<TraceElement, List<TraceElement>> direct = info.getDirectTrace(); final Map<TraceElement, List<TraceElement>> reverse = info.getReverseTrace(); if (direct == null || reverse == null) { // TODO: throw correct exception throw new RuntimeException(); } return Result.of(direct, reverse); }