code: def _curl_header_callback(
      self, headers, header_callback, header_line
  ):
      header_line = native_str(header_line.decode("latin1"))
      if header_callback is not None:
          self.io_loop.add_callback(header_callback, header_line)
      # header_line as returned by curl includes the end-of-line characters.
      # whitespace at the start should be preserved to allow multi-line headers
      header_line = header_line.rstrip()
      if header_line.startswith("HTTP/"):
          headers.clear()
          try:
              (__, __, reason) = httputil.parse_response_start_line(
                  header_line
              )
              header_line = "X-Http-Reason: %s" % reason
          except httputil.HTTPInputError:
              return
      if not header_line:
          return
      headers.parse_line(header_line)
  
imports: from __future__ import absolute_import, division, print_function
  import collections
  import functools
  import logging
  import pycurl
  import threading
  import time
  from io import BytesIO
  from tornado import httputil
  from tornado import ioloop
  from tornado import stack_context
  from tornado.escape import utf8, native_str
  from tornado.httpclient import HTTPResponse, HTTPError, AsyncHTTPClient, main
label_desc: Use image node_id 15 for calling the CurlAsyncHTTPClient obj's underlying member method code with example usage: obj._curl_header_callback(headers, header_callback, header_line) without return types