def METHOD_NAME(testcase):
  """Request precise bisection."""
  pubsub_topic = _get_topic()
  if not pubsub_topic:
    return
  # Only request bisects for reproducible security bugs with a bug filed, found
  # by engine fuzzers.
  if not testcase.security_flag:
    return
  if testcase.fixed == 'NA':
    # Testcase got into an invalid state.
    notify_bisection_invalid(testcase)
    return
  if testcase.one_time_crasher_flag:
    return
  if not testcase.bug_information:
    return
  target = testcase.get_fuzz_target()
  if not target:
    return
  # Only make 1 request of each type per testcase.
  if (not testcase.get_metadata('requested_regressed_bisect') and
      _make_bisection_request(pubsub_topic, testcase, target, 'regressed')):
    testcase.set_metadata('requested_regressed_bisect', True)
  if (not testcase.get_metadata('requested_fixed_bisect') and
      _make_bisection_request(pubsub_topic, testcase, target, 'fixed')):
    testcase.set_metadata('requested_fixed_bisect', True)