code: def _formatparam(param, value=None, quote=True):
      """Convenience function to format and return a key=value pair.
  
      This will quote the value if needed or if quote is true.  If value is a
      three tuple (charset, language, value), it will be encoded according
      to RFC2231 rules.
      """
      if value is not None and len(value) > 0:
          # A tuple is used for RFC 2231 encoded parameter values where items
          # are (charset, language, value).  charset is a string, not a Charset
          # instance.
          if isinstance(value, tuple):
              # Encode as per RFC 2231
              param += "*"
              value = utils.encode_rfc2231(value[2], value[0], value[1])
          # BAW: Please check this.  I think that if quote is set it should
          # force quoting even if not necessary.
          if quote or tspecials.search(value):
              return '%s="%s"' % (param, utils.quote(value))
          else:
              return "%s=%s" % (param, value)
      else:
          return param
  
imports: import re
  import uu
  import binascii
  import warnings
  from cStringIO import StringIO
  import email.charset
  from email import utils
  from email import errors
label_desc: Use image node_id 2 for calling a global function with example usage: _formatparam(param, value, quote) and returns: param, unknown, unknown