code: def dyn_strided_slice_pattern(inp, end):
      """A pattern to detect dynamic strided slice op."""
      zero = is_constant()
      cast_like = is_op("cast_like")(zero, is_constant())
      less = is_op("less")(is_constant(), cast_like)
      shape_of = is_op("shape_of")(inp)
      cast_like = is_op("cast_like")(shape_of, is_constant())
      add = is_op("add")(is_constant(), cast_like)
      where = is_op("where")(less, add, is_constant())
  
      return is_op("dyn.strided_slice")(inp, where, end, is_constant())
  
imports: from ..None import expr
  from ..None import op
  from ..dataflow_pattern import wildcard, is_constant, is_op, rewrite, is_tuple, is_tuple_get_item, is_if, DFPatternCallback
label_desc: Use image node_id 3 for calling a global function with example usage: dyn_strided_slice_pattern(inp, end) and returns: is_op