private @NotNull Iterator<Instruction> indicesToInstructions(int[] next) {
      if (next == null) return Collections.emptyIterator();
      List<Instruction> out = new ArrayList<>(next.length);
      for (int i : next) {
        out.add(myInstructions[i]);
      }
      return out.iterator();
    }
private @NotNull Iterator<Instruction> indicesToInstructions(int[] next)