@NotNull
      private NewSelector getSelector(@NotNull List<TempVarAssignmentItem> tempVarAssignments, List<Exprent> firstSwitchExprents) {
        int lastExprentIndex = firstSwitchExprents.size();
        if (lastExprentIndex > 0) {
          AssignmentExprent assignment = addTempVarAssignment(firstSwitchExprents.get(lastExprentIndex - 1), tmpVarInFirstSwitch,
                                                              secondSwitch, tempVarAssignments);
          if (assignment != null) {
            lastExprentIndex--;
          }
        }
        Exprent newSelector = firstSwitchSelector;
        if (lastExprentIndex > 0) {
          AssignmentExprent assignment = addTempVarAssignment(firstSwitchExprents.get(lastExprentIndex - 1), firstSwitchSelector,
                                                              secondSwitch, tempVarAssignments);
          if (assignment != null) {
            lastExprentIndex--;
            newSelector = assignment.getRight();
          }
        }
        return new NewSelector(lastExprentIndex, newSelector);
      }
@NotNull
      private NewSelector getSelector(@NotNull List<TempVarAssignmentItem> tempVarAssignments, List<Exprent> firstSwitchExprents)