code: def with_zero_out_padding_outputs(
      graph_net: Callable[[gn_graph.GraphsTuple], gn_graph.GraphsTuple]
  ) -> Callable[[gn_graph.GraphsTuple], gn_graph.GraphsTuple]:
      """A wrapper for graph to graph functions that zeroes padded d output values.
  
      See `zero_out_padding` for a full explanation of the method.
  
      Args:
        graph_net: A Graph Neural Network.
  
      Returns:
        A Graph Neural Network that will zero out all output padded values.
      """
  
      @functools.wraps(graph_net)
      def wrapper(graph: gn_graph.GraphsTuple) -> gn_graph.GraphsTuple:
          return zero_out_padding(graph_net(graph))
  
      return wrapper
  
imports: import functools
  from typing import Any, Callable, Generator, Iterable, Iterator, List, Mapping, Optional, Sequence, Union
  import jax
  from jax import lax
  import jax.numpy
  import jax.tree_util
  from jraph._src import graph
  import numpy
label_desc: Use image node_id 37 for calling a global function with example usage: with_zero_out_padding_outputs(graph_net) and returns: wrapper, zero_out_padding