code: def _create_complete_edges_from_nodes_static(
      n_node, exclude_self_edges
  ):
      """Creates complete edges for a graph with `n_node`.
  
      Args:
        n_node: (python integer) The number of nodes.
        exclude_self_edges: (bool) Excludes self-connected edges.
  
      Returns:
        A dict of RECEIVERS, SENDERS and N_EDGE data (`Tensor`s of rank 1).
      """
      receivers = []
      senders = []
      n_edges = 0
      for node_1 in range(n_node):
          for node_2 in range(n_node):
              if not exclude_self_edges or node_1 != node_2:
                  receivers.append(node_1)
                  senders.append(node_2)
                  n_edges += 1
  
      return {
          RECEIVERS: tf.constant(receivers, dtype=tf.int32),
          SENDERS: tf.constant(senders, dtype=tf.int32),
          N_EDGE: tf.constant([n_edges], dtype=tf.int32),
      }
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import collections
  import functools
  from absl import logging
  from graph_nets import graphs
  from graph_nets import utils_np
  import six
  from six.moves import range
  import tensorflow
  import tree
label_desc: Use image node_id 17 for calling a global function with example usage: _create_complete_edges_from_nodes_static(n_node, exclude__edges) and returns: dict