protected List<List<Statement>> buildStatements(InputContext inputContext) {
   return coverageBycodeFragments
       .keySet()
       .stream()
       .map(
           cf -> {
             List<Statement> list = new ArrayList<>(2);
             list.add(cf.clone());
             return list;
           })
       .flatMap(
           list -> {
             InputContext cloneInputContext = inputContext.clone();
             return buildContext(cloneInputContext, list, list.size() - 1).stream();
           })
       .collect(Collectors.toList());
 }