code: def pr_curves_route(self, request):
      
      runs = request.args.getlist('run')
      if not runs:
        return http_util.Respond(
            request, 'No runs provided when fetching PR curve data', 400)
  
      tag = request.args.get('tag')
      if not tag:
        return http_util.Respond(
            request, 'No tag provided when fetching PR curve data', 400)
  
      try:
        response = http_util.Respond(
            request, self.pr_curves_impl(runs, tag), 'application/json')
      except ValueError as e:
        return http_util.Respond(request, str(e), 'text/plain', 400)
  
      return response
docs: A route that returns a JSON mapping between runs and PR curve data.
  
      Returns:
        Given a tag and a comma-separated list of runs (both stored within GET
        parameters), fetches a JSON object that maps between run name and objects
        containing data required for PR curves for that run. Runs that either
        cannot be found or that lack tags will be excluded from the response.