code: def defines_shrink_pass():
      """A convenient decorator for defining shrink passes."""
  
      def accept(run_step):
          ShrinkPassDefinition(run_with_chooser=run_step)
  
          def run(self):  # pragma: no cover
              raise AssertionError(
                  "Shrink passes should not be run directly"
              )
  
          run.__name__ = run_step.__name__
          run.is_shrink_pass = True
          return run
  
      return accept
  
imports: from __future__ import absolute_import, division, print_function
  from collections import defaultdict
  import attr
  from hypothesis.internal.compat import hbytes, hrange, int_from_bytes, int_to_bytes
  from hypothesis.internal.conjecture.choicetree import ChoiceTree
  from hypothesis.internal.conjecture.data import ConjectureResult, Overrun, Status
  from hypothesis.internal.conjecture.floats import DRAW_FLOAT_LABEL, float_to_lex, lex_to_float
  from hypothesis.internal.conjecture.junkdrawer import binary_search, replace_all
  from hypothesis.internal.conjecture.shrinking import Float, Integer, Lexical, Ordering
  from hypothesis.internal.conjecture.shrinking.common import find_integer
label_desc: Use image node_id 2 for calling a global function with example usage: defines_shrink_pass() and returns: accept, run