code: def _split_n_from(n, min_size_of_first_part):
      # splits j in two parts of which the first is at least
      # the second argument
      assert n >= min_size_of_first_part
      for p1 in range(min_size_of_first_part, n + 1):
          yield p1, n - p1
  
imports: from copy import deepcopy
  from functools import lru_cache
  from random import choice
  import networkx
  from networkx.utils import not_implemented_for
label_desc: Use image node_id 1 for calling a global function with example usage: _split_n_from(n, min_size_of_first_part) without return types