private void replaceNullStatementsWithBasicBlocks(List<@Nullable Statement> statements, @NotNull List<List<StatEdge>> edges) {
    for (int i = 0; i < statements.size(); i++) {
      if (statements.get(i) == null) {
        BasicBlockStatement basicBlock = new BasicBlockStatement(new BasicBlock(
          DecompilerContext.getCounterContainer().getCounterAndIncrement(CounterContainer.STATEMENT_COUNTER)));
        StatEdge sampleEdge = edges.get(i).get(0);
        basicBlock.addSuccessor(new StatEdge(sampleEdge.getType(), basicBlock, sampleEdge.getDestination(), sampleEdge.closure));
        for (StatEdge edge : edges.get(i)) {
          edge.getSource().changeEdgeType(EdgeDirection.FORWARD, edge, EdgeType.REGULAR);
          edge.closure.getLabelEdges().remove(edge);
          edge.getDestination().removePredecessor(edge);
          edge.getSource().changeEdgeNode(EdgeDirection.FORWARD, edge, basicBlock);
          basicBlock.addPredecessor(edge);
        }
        statements.set(i, basicBlock);
        stats.addWithKey(basicBlock, basicBlock.id);
        basicBlock.setParent(this);
      }
    }
  }
private void replaceNullStatementsWithBasicBlocks(List<@Nullable Statement> statements, @NotNull List<List<StatEdge>> edges)