code: def max(
      input,
      axis=None,
      return_indices=False,
      return_indices_tie_break_left=True,
      keep_dims=False,
  ):
      input = core._promote_bfloat16_to_float32(input)
      if return_indices:
          if return_indices_tie_break_left:
              return core._reduce_with_indices(
                  input,
                  axis,
                  _argmax_combine_tie_break_left,
                  keep_dims=keep_dims,
              )
          else:
              return core._reduce_with_indices(
                  input,
                  axis,
                  _argmax_combine_tie_break_fast,
                  keep_dims=keep_dims,
              )
      else:
          if core.constexpr(
              input.dtype.primitive_bitwidth
          ) < core.constexpr(32):
              if core.constexpr(input.dtype.is_floating()):
                  input = input.to(core.float32)
              else:
                  assert input.dtype.is_integer_type()
                  input = input.to(core.int32)
          return core.reduce(input, axis, maximum, keep_dims=keep_dims)
  
imports: from __future__ import annotations
  from ..runtime.jit import jit
  from .None import core, math
label_desc: Use image node_id 13 for calling a global function with example usage: max(input, axis, return_indices, return_indices_tie_break_left, keep_dims) and returns: core, core, core