code: def format_param(p):
      "Formats function param to `param1:Type=val`. Font weights: param1=bold, val=bold+italic"
      arg_prefix = arg_prefixes.get(p.kind, '') # asterisk prefix for *args and **kwargs
      res = f"**{arg_prefix}{code_esc(p.name)}**"
      if hasattr(p, 'annotation') and p.annotation != p.empty: res += f':{anno_repr(p.annotation)}'
      if p.default != p.empty:
          default = getattr(p.default, 'func', p.default)
          default = getattr(default, '__name__', default)
          res += f'=***`{repr(default)}`***'
      return ref format_param(p):
      "Formats function param to `param1:Type=val`. Font weights: param1=bold, val=bold+italic"
      arg_prefix = arg_prefixes.get(p.kind, '') # asterisk prefix for *args and **kwargs
      res = f"**{arg_prefix}{code_esc(p.name)}**"
      if hasattr(p, 'annotation') and p.annotation != p.empty: res += f':{anno_repr(p.annotation)}'
      if p.default != p.empty:
          default = getattr(p.default, 'func', p.default)
          default = getattr(default, '__name__', default)
          res += f'=***`{repr(default)}`***'
      return res
docs: Formats function param to `param1:Type=val`. Font weights: param1=bold, val=bold+italic