All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.maps.routeoptimization.v1.RouteOptimizationServiceProto Maven / Gradle / Ivy

The newest version!
/*
 * Copyright 2024 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: google/maps/routeoptimization/v1/route_optimization_service.proto

// Protobuf Java Version: 3.25.5
package com.google.maps.routeoptimization.v1;

public final class RouteOptimizationServiceProto {
  private RouteOptimizationServiceProto() {}

  public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {}

  public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry);
  }

  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_AsyncModelConfig_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_AsyncModelConfig_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursResponse_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursResponse_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursMetadata_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursMetadata_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_OptimizeToursRequest_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_OptimizeToursRequest_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_CostsEntry_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_CostsEntry_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentModel_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentModel_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_Row_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_Row_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentModel_PrecedenceRule_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentModel_PrecedenceRule_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Shipment_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Shipment_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_LoadDemandsEntry_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_LoadDemandsEntry_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Shipment_Load_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Shipment_Load_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Shipment_LoadDemandsEntry_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Shipment_LoadDemandsEntry_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentTypeIncompatibility_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentTypeIncompatibility_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentTypeRequirement_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentTypeRequirement_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_RouteModifiers_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_RouteModifiers_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Vehicle_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Vehicle_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_Interval_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_Interval_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Vehicle_DurationLimit_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Vehicle_DurationLimit_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimitsEntry_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimitsEntry_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Vehicle_ExtraVisitDurationForVisitTypeEntry_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Vehicle_ExtraVisitDurationForVisitTypeEntry_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_TimeWindow_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_TimeWindow_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_DistanceLimit_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_DistanceLimit_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_TransitionAttributes_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_TransitionAttributes_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Waypoint_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Waypoint_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_Location_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_Location_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_BreakRule_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_BreakRule_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_BreakRule_BreakRequest_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_BreakRule_BreakRequest_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_BreakRule_FrequencyConstraint_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_BreakRule_FrequencyConstraint_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_LoadDemandsEntry_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_LoadDemandsEntry_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_VehicleLoadsEntry_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_VehicleLoadsEntry_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_VehicleLoad_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_VehicleLoad_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_EncodedPolyline_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_EncodedPolyline_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Break_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Break_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_RouteCostsEntry_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_ShipmentRoute_RouteCostsEntry_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_SkippedShipment_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_SkippedShipment_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_SkippedShipment_Reason_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_SkippedShipment_Reason_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_MaxLoadsEntry_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_MaxLoadsEntry_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_FieldReference_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_FieldReference_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_InputConfig_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_InputConfig_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_OutputConfig_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_OutputConfig_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_GcsSource_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_GcsSource_fieldAccessorTable;
  static final com.google.protobuf.Descriptors.Descriptor
      internal_static_google_maps_routeoptimization_v1_GcsDestination_descriptor;
  static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_google_maps_routeoptimization_v1_GcsDestination_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
    return descriptor;
  }

  private static com.google.protobuf.Descriptors.FileDescriptor descriptor;

  static {
    java.lang.String[] descriptorData = {
      "\nAgoogle/maps/routeoptimization/v1/route"
          + "_optimization_service.proto\022 google.maps"
          + ".routeoptimization.v1\032\034google/api/annota"
          + "tions.proto\032\027google/api/client.proto\032\037go"
          + "ogle/api/field_behavior.proto\032#google/lo"
          + "ngrunning/operations.proto\032\036google/proto"
          + "buf/duration.proto\032\037google/protobuf/time"
          + "stamp.proto\032\030google/type/latlng.proto\"\340\002"
          + "\n\031BatchOptimizeToursRequest\022\023\n\006parent\030\001 "
          + "\001(\tB\003\340A\002\022h\n\rmodel_configs\030\002 \003(\0132L.google"
          + ".maps.routeoptimization.v1.BatchOptimize"
          + "ToursRequest.AsyncModelConfigB\003\340A\002\032\303\001\n\020A"
          + "syncModelConfig\022\031\n\014display_name\030\001 \001(\tB\003\340"
          + "A\001\022H\n\014input_config\030\002 \001(\0132-.google.maps.r"
          + "outeoptimization.v1.InputConfigB\003\340A\002\022J\n\r"
          + "output_config\030\003 \001(\0132..google.maps.routeo"
          + "ptimization.v1.OutputConfigB\003\340A\002\"\034\n\032Batc"
          + "hOptimizeToursResponse\"\034\n\032BatchOptimizeT"
          + "oursMetadata\"\220\t\n\024OptimizeToursRequest\022\023\n"
          + "\006parent\030\001 \001(\tB\003\340A\002\022*\n\007timeout\030\002 \001(\0132\031.go"
          + "ogle.protobuf.Duration\022>\n\005model\030\003 \001(\0132/."
          + "google.maps.routeoptimization.v1.Shipmen"
          + "tModel\022X\n\014solving_mode\030\004 \001(\0162B.google.ma"
          + "ps.routeoptimization.v1.OptimizeToursReq"
          + "uest.SolvingMode\022V\n\013search_mode\030\006 \001(\0162A."
          + "google.maps.routeoptimization.v1.Optimiz"
          + "eToursRequest.SearchMode\022W\n\036injected_fir"
          + "st_solution_routes\030\007 \003(\0132/.google.maps.r"
          + "outeoptimization.v1.ShipmentRoute\022b\n\034inj"
          + "ected_solution_constraint\030\010 \001(\0132<.google"
          + ".maps.routeoptimization.v1.InjectedSolut"
          + "ionConstraint\022O\n\026refresh_details_routes\030"
          + "\t \003(\0132/.google.maps.routeoptimization.v1"
          + ".ShipmentRoute\0221\n)interpret_injected_sol"
          + "utions_using_labels\030\n \001(\010\022\035\n\025consider_ro"
          + "ad_traffic\030\013 \001(\010\022\032\n\022populate_polylines\030\014"
          + " \001(\010\022%\n\035populate_transition_polylines\030\r "
          + "\001(\010\0226\n.allow_large_deadline_despite_inte"
          + "rruption_risk\030\016 \001(\010\022\036\n\026use_geodesic_dist"
          + "ances\030\017 \001(\010\022\'\n\032geodesic_meters_per_secon"
          + "d\030\020 \001(\001H\000\210\001\001\022\"\n\025max_validation_errors\030\005 "
          + "\001(\005H\001\210\001\001\022\r\n\005label\030\021 \001(\t\"Y\n\013SolvingMode\022\021"
          + "\n\rDEFAULT_SOLVE\020\000\022\021\n\rVALIDATE_ONLY\020\001\022$\n "
          + "DETECT_SOME_INFEASIBLE_SHIPMENTS\020\002\"Z\n\nSe"
          + "archMode\022\033\n\027SEARCH_MODE_UNSPECIFIED\020\000\022\017\n"
          + "\013RETURN_FAST\020\001\022\036\n\032CONSUME_ALL_AVAILABLE_"
          + "TIME\020\002B\035\n\033_geodesic_meters_per_secondB\030\n"
          + "\026_max_validation_errors\"\256\006\n\025OptimizeTour"
          + "sResponse\022?\n\006routes\030\001 \003(\0132/.google.maps."
          + "routeoptimization.v1.ShipmentRoute\022\025\n\rre"
          + "quest_label\030\003 \001(\t\022L\n\021skipped_shipments\030\004"
          + " \003(\01321.google.maps.routeoptimization.v1."
          + "SkippedShipment\022Y\n\021validation_errors\030\005 \003"
          + "(\0132>.google.maps.routeoptimization.v1.Op"
          + "timizeToursValidationError\022P\n\007metrics\030\006 "
          + "\001(\0132?.google.maps.routeoptimization.v1.O"
          + "ptimizeToursResponse.Metrics\032\301\003\n\007Metrics"
          + "\022U\n\030aggregated_route_metrics\030\001 \001(\01323.goo"
          + "gle.maps.routeoptimization.v1.Aggregated"
          + "Metrics\022(\n skipped_mandatory_shipment_co"
          + "unt\030\002 \001(\005\022\032\n\022used_vehicle_count\030\003 \001(\005\022?\n"
          + "\033earliest_vehicle_start_time\030\004 \001(\0132\032.goo"
          + "gle.protobuf.Timestamp\022;\n\027latest_vehicle"
          + "_end_time\030\005 \001(\0132\032.google.protobuf.Timest"
          + "amp\022Y\n\005costs\030\n \003(\0132J.google.maps.routeop"
          + "timization.v1.OptimizeToursResponse.Metr"
          + "ics.CostsEntry\022\022\n\ntotal_cost\030\006 \001(\001\032,\n\nCo"
          + "stsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\001:\0028\001"
          + "\"\273\n\n\rShipmentModel\022=\n\tshipments\030\001 \003(\0132*."
          + "google.maps.routeoptimization.v1.Shipmen"
          + "t\022;\n\010vehicles\030\002 \003(\0132).google.maps.routeo"
          + "ptimization.v1.Vehicle\022 \n\023max_active_veh"
          + "icles\030\004 \001(\005H\000\210\001\001\0225\n\021global_start_time\030\005 "
          + "\001(\0132\032.google.protobuf.Timestamp\0223\n\017globa"
          + "l_end_time\030\006 \001(\0132\032.google.protobuf.Times"
          + "tamp\022%\n\035global_duration_cost_per_hour\030\007 "
          + "\001(\001\022j\n\032duration_distance_matrices\030\010 \003(\0132"
          + "F.google.maps.routeoptimization.v1.Shipm"
          + "entModel.DurationDistanceMatrix\022)\n!durat"
          + "ion_distance_matrix_src_tags\030\t \003(\t\022)\n!du"
          + "ration_distance_matrix_dst_tags\030\n \003(\t\022U\n"
          + "\025transition_attributes\030\013 \003(\01326.google.ma"
          + "ps.routeoptimization.v1.TransitionAttrib"
          + "utes\022f\n\037shipment_type_incompatibilities\030"
          + "\014 \003(\0132=.google.maps.routeoptimization.v1"
          + ".ShipmentTypeIncompatibility\022]\n\032shipment"
          + "_type_requirements\030\r \003(\01329.google.maps.r"
          + "outeoptimization.v1.ShipmentTypeRequirem"
          + "ent\022X\n\020precedence_rules\030\016 \003(\0132>.google.m"
          + "aps.routeoptimization.v1.ShipmentModel.P"
          + "recedenceRule\032\322\001\n\026DurationDistanceMatrix"
          + "\022X\n\004rows\030\001 \003(\0132J.google.maps.routeoptimi"
          + "zation.v1.ShipmentModel.DurationDistance"
          + "Matrix.Row\022\031\n\021vehicle_start_tag\030\002 \001(\t\032C\n"
          + "\003Row\022,\n\tdurations\030\001 \003(\0132\031.google.protobu"
          + "f.Duration\022\016\n\006meters\030\002 \003(\001\032\321\001\n\016Precedenc"
          + "eRule\022\030\n\013first_index\030\001 \001(\005H\000\210\001\001\022\031\n\021first"
          + "_is_delivery\030\003 \001(\010\022\031\n\014second_index\030\002 \001(\005"
          + "H\001\210\001\001\022\032\n\022second_is_delivery\030\004 \001(\010\0222\n\017off"
          + "set_duration\030\005 \001(\0132\031.google.protobuf.Dur"
          + "ationB\016\n\014_first_indexB\017\n\r_second_indexB\026"
          + "\n\024_max_active_vehicles\"\260\013\n\010Shipment\022\024\n\014d"
          + "isplay_name\030\020 \001(\t\022H\n\007pickups\030\001 \003(\01327.goo"
          + "gle.maps.routeoptimization.v1.Shipment.V"
          + "isitRequest\022K\n\ndeliveries\030\002 \003(\01327.google"
          + ".maps.routeoptimization.v1.Shipment.Visi"
          + "tRequest\022Q\n\014load_demands\030\016 \003(\0132;.google."
          + "maps.routeoptimization.v1.Shipment.LoadD"
          + "emandsEntry\022\031\n\014penalty_cost\030\004 \001(\001H\000\210\001\001\022\037"
          + "\n\027allowed_vehicle_indices\030\005 \003(\005\022\031\n\021costs"
          + "_per_vehicle\030\006 \003(\001\022!\n\031costs_per_vehicle_"
          + "indices\030\007 \003(\005\0225\n(pickup_to_delivery_rela"
          + "tive_detour_limit\030\010 \001(\001H\001\210\001\001\022K\n(pickup_t"
          + "o_delivery_absolute_detour_limit\030\t \001(\0132\031"
          + ".google.protobuf.Duration\022@\n\035pickup_to_d"
          + "elivery_time_limit\030\n \001(\0132\031.google.protob"
          + "uf.Duration\022\025\n\rshipment_type\030\013 \001(\t\022\r\n\005la"
          + "bel\030\014 \001(\t\022\016\n\006ignore\030\r \001(\010\032\362\004\n\014VisitReque"
          + "st\022-\n\020arrival_location\030\001 \001(\0132\023.google.ty"
          + "pe.LatLng\022D\n\020arrival_waypoint\030\002 \001(\0132*.go"
          + "ogle.maps.routeoptimization.v1.Waypoint\022"
          + "/\n\022departure_location\030\003 \001(\0132\023.google.typ"
          + "e.LatLng\022F\n\022departure_waypoint\030\004 \001(\0132*.g"
          + "oogle.maps.routeoptimization.v1.Waypoint"
          + "\022\014\n\004tags\030\005 \003(\t\022B\n\014time_windows\030\006 \003(\0132,.g"
          + "oogle.maps.routeoptimization.v1.TimeWind"
          + "ow\022+\n\010duration\030\007 \001(\0132\031.google.protobuf.D"
          + "uration\022\014\n\004cost\030\010 \001(\001\022^\n\014load_demands\030\014 "
          + "\003(\0132H.google.maps.routeoptimization.v1.S"
          + "hipment.VisitRequest.LoadDemandsEntry\022\023\n"
          + "\013visit_types\030\n \003(\t\022\r\n\005label\030\013 \001(\t\032c\n\020Loa"
          + "dDemandsEntry\022\013\n\003key\030\001 \001(\t\022>\n\005value\030\002 \001("
          + "\0132/.google.maps.routeoptimization.v1.Shi"
          + "pment.Load:\0028\001\032\026\n\004Load\022\016\n\006amount\030\002 \001(\003\032c"
          + "\n\020LoadDemandsEntry\022\013\n\003key\030\001 \001(\t\022>\n\005value"
          + "\030\002 \001(\0132/.google.maps.routeoptimization.v"
          + "1.Shipment.Load:\0028\001B\017\n\r_penalty_costB+\n)"
          + "_pickup_to_delivery_relative_detour_limi"
          + "t\"\246\002\n\033ShipmentTypeIncompatibility\022\r\n\005typ"
          + "es\030\001 \003(\t\022o\n\024incompatibility_mode\030\002 \001(\0162Q"
          + ".google.maps.routeoptimization.v1.Shipme"
          + "ntTypeIncompatibility.IncompatibilityMod"
          + "e\"\206\001\n\023IncompatibilityMode\022$\n INCOMPATIBI"
          + "LITY_MODE_UNSPECIFIED\020\000\022!\n\035NOT_PERFORMED"
          + "_BY_SAME_VEHICLE\020\001\022&\n\"NOT_IN_SAME_VEHICL"
          + "E_SIMULTANEOUSLY\020\002\"\354\002\n\027ShipmentTypeRequi"
          + "rement\022+\n#required_shipment_type_alterna"
          + "tives\030\001 \003(\t\022 \n\030dependent_shipment_types\030"
          + "\002 \003(\t\022c\n\020requirement_mode\030\003 \001(\0162I.google"
          + ".maps.routeoptimization.v1.ShipmentTypeR"
          + "equirement.RequirementMode\"\234\001\n\017Requireme"
          + "ntMode\022 \n\034REQUIREMENT_MODE_UNSPECIFIED\020\000"
          + "\022\035\n\031PERFORMED_BY_SAME_VEHICLE\020\001\022\"\n\036IN_SA"
          + "ME_VEHICLE_AT_PICKUP_TIME\020\002\022$\n IN_SAME_V"
          + "EHICLE_AT_DELIVERY_TIME\020\003\"o\n\016RouteModifi"
          + "ers\022\023\n\013avoid_tolls\030\002 \001(\010\022\026\n\016avoid_highwa"
          + "ys\030\003 \001(\010\022\025\n\ravoid_ferries\030\004 \001(\010\022\031\n\014avoid"
          + "_indoor\030\005 \001(\010B\003\340A\001\"\321\023\n\007Vehicle\022\024\n\014displa"
          + "y_name\030  \001(\t\022I\n\013travel_mode\030\001 \001(\01624.goog"
          + "le.maps.routeoptimization.v1.Vehicle.Tra"
          + "velMode\022I\n\017route_modifiers\030\002 \001(\01320.googl"
          + "e.maps.routeoptimization.v1.RouteModifie"
          + "rs\022+\n\016start_location\030\003 \001(\0132\023.google.type"
          + ".LatLng\022B\n\016start_waypoint\030\004 \001(\0132*.google"
          + ".maps.routeoptimization.v1.Waypoint\022)\n\014e"
          + "nd_location\030\005 \001(\0132\023.google.type.LatLng\022@"
          + "\n\014end_waypoint\030\006 \001(\0132*.google.maps.route"
          + "optimization.v1.Waypoint\022\022\n\nstart_tags\030\007"
          + " \003(\t\022\020\n\010end_tags\030\010 \003(\t\022H\n\022start_time_win"
          + "dows\030\t \003(\0132,.google.maps.routeoptimizati"
          + "on.v1.TimeWindow\022F\n\020end_time_windows\030\n \003"
          + "(\0132,.google.maps.routeoptimization.v1.Ti"
          + "meWindow\022%\n\030travel_duration_multiple\030\013 \001"
          + "(\001H\000\210\001\001\022S\n\020unloading_policy\030\014 \001(\01629.goog"
          + "le.maps.routeoptimization.v1.Vehicle.Unl"
          + "oadingPolicy\022N\n\013load_limits\030\036 \003(\01329.goog"
          + "le.maps.routeoptimization.v1.Vehicle.Loa"
          + "dLimitsEntry\022\025\n\rcost_per_hour\030\020 \001(\001\022\036\n\026c"
          + "ost_per_traveled_hour\030\021 \001(\001\022\032\n\022cost_per_"
          + "kilometer\030\022 \001(\001\022\022\n\nfixed_cost\030\023 \001(\001\022\036\n\026u"
          + "sed_if_route_is_empty\030\024 \001(\010\022U\n\024route_dur"
          + "ation_limit\030\025 \001(\01327.google.maps.routeopt"
          + "imization.v1.Vehicle.DurationLimit\022V\n\025tr"
          + "avel_duration_limit\030\026 \001(\01327.google.maps."
          + "routeoptimization.v1.Vehicle.DurationLim"
          + "it\022M\n\024route_distance_limit\030\027 \001(\0132/.googl"
          + "e.maps.routeoptimization.v1.DistanceLimi"
          + "t\022z\n#extra_visit_duration_for_visit_type"
          + "\030\030 \003(\0132M.google.maps.routeoptimization.v"
          + "1.Vehicle.ExtraVisitDurationForVisitType"
          + "Entry\022?\n\nbreak_rule\030\031 \001(\0132+.google.maps."
          + "routeoptimization.v1.BreakRule\022\r\n\005label\030"
          + "\033 \001(\t\022\016\n\006ignore\030\034 \001(\010\032\323\002\n\tLoadLimit\022\025\n\010m"
          + "ax_load\030\001 \001(\003H\000\210\001\001\022\025\n\rsoft_max_load\030\002 \001("
          + "\003\022$\n\034cost_per_unit_above_soft_max\030\003 \001(\001\022"
          + "Y\n\023start_load_interval\030\004 \001(\0132<.google.ma"
          + "ps.routeoptimization.v1.Vehicle.LoadLimi"
          + "t.Interval\022W\n\021end_load_interval\030\005 \001(\0132<."
          + "google.maps.routeoptimization.v1.Vehicle"
          + ".LoadLimit.Interval\0321\n\010Interval\022\013\n\003min\030\001"
          + " \001(\003\022\020\n\003max\030\002 \001(\003H\000\210\001\001B\006\n\004_maxB\013\n\t_max_l"
          + "oad\032\360\002\n\rDurationLimit\022/\n\014max_duration\030\001 "
          + "\001(\0132\031.google.protobuf.Duration\0224\n\021soft_m"
          + "ax_duration\030\002 \001(\0132\031.google.protobuf.Dura"
          + "tion\022)\n\034cost_per_hour_after_soft_max\030\003 \001"
          + "(\001H\000\210\001\001\022>\n\033quadratic_soft_max_duration\030\004"
          + " \001(\0132\031.google.protobuf.Duration\022:\n-cost_"
          + "per_square_hour_after_quadratic_soft_max"
          + "\030\005 \001(\001H\001\210\001\001B\037\n\035_cost_per_hour_after_soft"
          + "_maxB0\n._cost_per_square_hour_after_quad"
          + "ratic_soft_max\032f\n\017LoadLimitsEntry\022\013\n\003key"
          + "\030\001 \001(\t\022B\n\005value\030\002 \001(\01323.google.maps.rout"
          + "eoptimization.v1.Vehicle.LoadLimit:\0028\001\032`"
          + "\n#ExtraVisitDurationForVisitTypeEntry\022\013\n"
          + "\003key\030\001 \001(\t\022(\n\005value\030\002 \001(\0132\031.google.proto"
          + "buf.Duration:\0028\001\"C\n\nTravelMode\022\033\n\027TRAVEL"
          + "_MODE_UNSPECIFIED\020\000\022\013\n\007DRIVING\020\001\022\013\n\007WALK"
          + "ING\020\002\"b\n\017UnloadingPolicy\022 \n\034UNLOADING_PO"
          + "LICY_UNSPECIFIED\020\000\022\025\n\021LAST_IN_FIRST_OUT\020"
          + "\001\022\026\n\022FIRST_IN_FIRST_OUT\020\002B\033\n\031_travel_dur"
          + "ation_multiple\"\204\003\n\nTimeWindow\022.\n\nstart_t"
          + "ime\030\001 \001(\0132\032.google.protobuf.Timestamp\022,\n"
          + "\010end_time\030\002 \001(\0132\032.google.protobuf.Timest"
          + "amp\0223\n\017soft_start_time\030\003 \001(\0132\032.google.pr"
          + "otobuf.Timestamp\0221\n\rsoft_end_time\030\004 \001(\0132"
          + "\032.google.protobuf.Timestamp\0221\n$cost_per_"
          + "hour_before_soft_start_time\030\005 \001(\001H\000\210\001\001\022."
          + "\n!cost_per_hour_after_soft_end_time\030\006 \001("
          + "\001H\001\210\001\001B\'\n%_cost_per_hour_before_soft_sta"
          + "rt_timeB$\n\"_cost_per_hour_after_soft_end"
          + "_time\"\225\002\n\rDistanceLimit\022\027\n\nmax_meters\030\001 "
          + "\001(\003H\000\210\001\001\022\034\n\017soft_max_meters\030\002 \001(\003H\001\210\001\001\022."
          + "\n!cost_per_kilometer_below_soft_max\030\004 \001("
          + "\001H\002\210\001\001\022.\n!cost_per_kilometer_above_soft_"
          + "max\030\003 \001(\001H\003\210\001\001B\r\n\013_max_metersB\022\n\020_soft_m"
          + "ax_metersB$\n\"_cost_per_kilometer_below_s"
          + "oft_maxB$\n\"_cost_per_kilometer_above_sof"
          + "t_max\"\211\002\n\024TransitionAttributes\022\017\n\007src_ta"
          + "g\030\001 \001(\t\022\030\n\020excluded_src_tag\030\002 \001(\t\022\017\n\007dst"
          + "_tag\030\003 \001(\t\022\030\n\020excluded_dst_tag\030\004 \001(\t\022\014\n\004"
          + "cost\030\005 \001(\001\022\032\n\022cost_per_kilometer\030\006 \001(\001\022G"
          + "\n\016distance_limit\030\007 \001(\0132/.google.maps.rou"
          + "teoptimization.v1.DistanceLimit\022(\n\005delay"
          + "\030\010 \001(\0132\031.google.protobuf.Duration\"\212\001\n\010Wa"
          + "ypoint\022>\n\010location\030\001 \001(\0132*.google.maps.r"
          + "outeoptimization.v1.LocationH\000\022\022\n\010place_"
          + "id\030\002 \001(\tH\000\022\031\n\014side_of_road\030\003 \001(\010B\003\340A\001B\017\n"
          + "\rlocation_type\"R\n\010Location\022$\n\007lat_lng\030\001 "
          + "\001(\0132\023.google.type.LatLng\022\024\n\007heading\030\002 \001("
          + "\005H\000\210\001\001B\n\n\010_heading\"\224\004\n\tBreakRule\022P\n\016brea"
          + "k_requests\030\001 \003(\01328.google.maps.routeopti"
          + "mization.v1.BreakRule.BreakRequest\022^\n\025fr"
          + "equency_constraints\030\002 \003(\0132?.google.maps."
          + "routeoptimization.v1.BreakRule.Frequency"
          + "Constraint\032\276\001\n\014BreakRequest\022<\n\023earliest_"
          + "start_time\030\001 \001(\0132\032.google.protobuf.Times"
          + "tampB\003\340A\002\022:\n\021latest_start_time\030\002 \001(\0132\032.g"
          + "oogle.protobuf.TimestampB\003\340A\002\0224\n\014min_dur"
          + "ation\030\003 \001(\0132\031.google.protobuf.DurationB\003"
          + "\340A\002\032\223\001\n\023FrequencyConstraint\022:\n\022min_break"
          + "_duration\030\001 \001(\0132\031.google.protobuf.Durati"
          + "onB\003\340A\002\022@\n\030max_inter_break_duration\030\002 \001("
          + "\0132\031.google.protobuf.DurationB\003\340A\002\"\200\020\n\rSh"
          + "ipmentRoute\022\025\n\rvehicle_index\030\001 \001(\005\022\025\n\rve"
          + "hicle_label\030\002 \001(\t\0226\n\022vehicle_start_time\030"
          + "\005 \001(\0132\032.google.protobuf.Timestamp\0224\n\020veh"
          + "icle_end_time\030\006 \001(\0132\032.google.protobuf.Ti"
          + "mestamp\022E\n\006visits\030\007 \003(\01325.google.maps.ro"
          + "uteoptimization.v1.ShipmentRoute.Visit\022O"
          + "\n\013transitions\030\010 \003(\0132:.google.maps.routeo"
          + "ptimization.v1.ShipmentRoute.Transition\022"
          + "#\n\033has_traffic_infeasibilities\030\t \001(\010\022W\n\016"
          + "route_polyline\030\n \001(\0132?.google.maps.route"
          + "optimization.v1.ShipmentRoute.EncodedPol"
          + "yline\022E\n\006breaks\030\013 \003(\01325.google.maps.rout"
          + "eoptimization.v1.ShipmentRoute.Break\022D\n\007"
          + "metrics\030\014 \001(\01323.google.maps.routeoptimiz"
          + "ation.v1.AggregatedMetrics\022T\n\013route_cost"
          + "s\030\021 \003(\0132?.google.maps.routeoptimization."
          + "v1.ShipmentRoute.RouteCostsEntry\022\030\n\020rout"
          + "e_total_cost\030\022 \001(\001\032\232\003\n\005Visit\022\026\n\016shipment"
          + "_index\030\001 \001(\005\022\021\n\tis_pickup\030\002 \001(\010\022\033\n\023visit"
          + "_request_index\030\003 \001(\005\022.\n\nstart_time\030\004 \001(\013"
          + "2\032.google.protobuf.Timestamp\022\\\n\014load_dem"
          + "ands\030\013 \003(\0132F.google.maps.routeoptimizati"
          + "on.v1.ShipmentRoute.Visit.LoadDemandsEnt"
          + "ry\022)\n\006detour\030\006 \001(\0132\031.google.protobuf.Dur"
          + "ation\022\026\n\016shipment_label\030\007 \001(\t\022\023\n\013visit_l"
          + "abel\030\010 \001(\t\032c\n\020LoadDemandsEntry\022\013\n\003key\030\001 "
          + "\001(\t\022>\n\005value\030\002 \001(\0132/.google.maps.routeop"
          + "timization.v1.Shipment.Load:\0028\001\032\307\005\n\nTran"
          + "sition\0222\n\017travel_duration\030\001 \001(\0132\031.google"
          + ".protobuf.Duration\022\036\n\026travel_distance_me"
          + "ters\030\002 \001(\001\022 \n\030traffic_info_unavailable\030\003"
          + " \001(\010\0221\n\016delay_duration\030\004 \001(\0132\031.google.pr"
          + "otobuf.Duration\0221\n\016break_duration\030\005 \001(\0132"
          + "\031.google.protobuf.Duration\0220\n\rwait_durat"
          + "ion\030\006 \001(\0132\031.google.protobuf.Duration\0221\n\016"
          + "total_duration\030\007 \001(\0132\031.google.protobuf.D"
          + "uration\022.\n\nstart_time\030\010 \001(\0132\032.google.pro"
          + "tobuf.Timestamp\022W\n\016route_polyline\030\t \001(\0132"
          + "?.google.maps.routeoptimization.v1.Shipm"
          + "entRoute.EncodedPolyline\022\030\n\013route_token\030"
          + "\014 \001(\tB\003\340A\003\022c\n\rvehicle_loads\030\013 \003(\0132L.goog"
          + "le.maps.routeoptimization.v1.ShipmentRou"
          + "te.Transition.VehicleLoadsEntry\032p\n\021Vehic"
          + "leLoadsEntry\022\013\n\003key\030\001 \001(\t\022J\n\005value\030\002 \001(\013"
          + "2;.google.maps.routeoptimization.v1.Ship"
          + "mentRoute.VehicleLoad:\0028\001\032\035\n\013VehicleLoad"
          + "\022\016\n\006amount\030\001 \001(\003\032!\n\017EncodedPolyline\022\016\n\006p"
          + "oints\030\001 \001(\t\032d\n\005Break\022.\n\nstart_time\030\001 \001(\013"
          + "2\032.google.protobuf.Timestamp\022+\n\010duration"
          + "\030\002 \001(\0132\031.google.protobuf.Duration\0321\n\017Rou"
          + "teCostsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\001"
          + ":\0028\001\"\206\005\n\017SkippedShipment\022\r\n\005index\030\001 \001(\005\022"
          + "\r\n\005label\030\002 \001(\t\022I\n\007reasons\030\003 \003(\01328.google"
          + ".maps.routeoptimization.v1.SkippedShipme"
          + "nt.Reason\032\211\004\n\006Reason\022K\n\004code\030\001 \001(\0162=.goo"
          + "gle.maps.routeoptimization.v1.SkippedShi"
          + "pment.Reason.Code\022\"\n\025example_vehicle_ind"
          + "ex\030\002 \001(\005H\000\210\001\001\022&\n\036example_exceeded_capaci"
          + "ty_type\030\003 \001(\t\"\313\002\n\004Code\022\024\n\020CODE_UNSPECIFI"
          + "ED\020\000\022\016\n\nNO_VEHICLE\020\001\022#\n\037DEMAND_EXCEEDS_V"
          + "EHICLE_CAPACITY\020\002\0225\n1CANNOT_BE_PERFORMED"
          + "_WITHIN_VEHICLE_DISTANCE_LIMIT\020\003\0225\n1CANN"
          + "OT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_"
          + "LIMIT\020\004\022<\n8CANNOT_BE_PERFORMED_WITHIN_VE"
          + "HICLE_TRAVEL_DURATION_LIMIT\020\005\0223\n/CANNOT_"
          + "BE_PERFORMED_WITHIN_VEHICLE_TIME_WINDOWS"
          + "\020\006\022\027\n\023VEHICLE_NOT_ALLOWED\020\007B\030\n\026_example_"
          + "vehicle_index\"\313\004\n\021AggregatedMetrics\022 \n\030p"
          + "erformed_shipment_count\030\001 \001(\005\0222\n\017travel_"
          + "duration\030\002 \001(\0132\031.google.protobuf.Duratio"
          + "n\0220\n\rwait_duration\030\003 \001(\0132\031.google.protob"
          + "uf.Duration\0221\n\016delay_duration\030\004 \001(\0132\031.go"
          + "ogle.protobuf.Duration\0221\n\016break_duration"
          + "\030\005 \001(\0132\031.google.protobuf.Duration\0221\n\016vis"
          + "it_duration\030\006 \001(\0132\031.google.protobuf.Dura"
          + "tion\0221\n\016total_duration\030\007 \001(\0132\031.google.pr"
          + "otobuf.Duration\022\036\n\026travel_distance_meter"
          + "s\030\010 \001(\001\022T\n\tmax_loads\030\t \003(\0132A.google.maps"
          + ".routeoptimization.v1.AggregatedMetrics."
          + "MaxLoadsEntry\032l\n\rMaxLoadsEntry\022\013\n\003key\030\001 "
          + "\001(\t\022J\n\005value\030\002 \001(\0132;.google.maps.routeop"
          + "timization.v1.ShipmentRoute.VehicleLoad:"
          + "\0028\001\"\263\006\n\032InjectedSolutionConstraint\022?\n\006ro"
          + "utes\030\001 \003(\0132/.google.maps.routeoptimizati"
          + "on.v1.ShipmentRoute\022L\n\021skipped_shipments"
          + "\030\002 \003(\01321.google.maps.routeoptimization.v"
          + "1.SkippedShipment\022q\n\026constraint_relaxati"
          + "ons\030\003 \003(\0132Q.google.maps.routeoptimizatio"
          + "n.v1.InjectedSolutionConstraint.Constrai"
          + "ntRelaxation\032\222\004\n\024ConstraintRelaxation\022q\n"
          + "\013relaxations\030\001 \003(\0132\\.google.maps.routeop"
          + "timization.v1.InjectedSolutionConstraint"
          + ".ConstraintRelaxation.Relaxation\022\027\n\017vehi"
          + "cle_indices\030\002 \003(\005\032\355\002\n\nRelaxation\022q\n\005leve"
          + "l\030\001 \001(\0162b.google.maps.routeoptimization."
          + "v1.InjectedSolutionConstraint.Constraint"
          + "Relaxation.Relaxation.Level\0222\n\016threshold"
          + "_time\030\002 \001(\0132\032.google.protobuf.Timestamp\022"
          + "\035\n\025threshold_visit_count\030\003 \001(\005\"\230\001\n\005Level"
          + "\022\025\n\021LEVEL_UNSPECIFIED\020\000\022%\n!RELAX_VISIT_T"
          + "IMES_AFTER_THRESHOLD\020\001\0222\n.RELAX_VISIT_TI"
          + "MES_AND_SEQUENCE_AFTER_THRESHOLD\020\002\022\035\n\031RE"
          + "LAX_ALL_AFTER_THRESHOLD\020\003\"\205\003\n\034OptimizeTo"
          + "ursValidationError\022\014\n\004code\030\001 \001(\005\022\024\n\014disp"
          + "lay_name\030\002 \001(\t\022]\n\006fields\030\003 \003(\0132M.google."
          + "maps.routeoptimization.v1.OptimizeToursV"
          + "alidationError.FieldReference\022\025\n\rerror_m"
          + "essage\030\004 \001(\t\022\030\n\020offending_values\030\005 \001(\t\032\260"
          + "\001\n\016FieldReference\022\014\n\004name\030\001 \001(\t\022\017\n\005index"
          + "\030\002 \001(\005H\000\022\r\n\003key\030\004 \001(\tH\000\022`\n\tsub_field\030\003 \001"
          + "(\0132M.google.maps.routeoptimization.v1.Op"
          + "timizeToursValidationError.FieldReferenc"
          + "eB\016\n\014index_or_key\"\242\001\n\013InputConfig\022A\n\ngcs"
          + "_source\030\001 \001(\0132+.google.maps.routeoptimiz"
          + "ation.v1.GcsSourceH\000\022F\n\013data_format\030\002 \001("
          + "\0162,.google.maps.routeoptimization.v1.Dat"
          + "aFormatB\003\340A\002B\010\n\006source\"\262\001\n\014OutputConfig\022"
          + "K\n\017gcs_destination\030\001 \001(\01320.google.maps.r"
          + "outeoptimization.v1.GcsDestinationH\000\022F\n\013"
          + "data_format\030\002 \001(\0162,.google.maps.routeopt"
          + "imization.v1.DataFormatB\003\340A\002B\r\n\013destinat"
          + "ion\"\035\n\tGcsSource\022\020\n\003uri\030\001 \001(\tB\003\340A\002\"\"\n\016Gc"
          + "sDestination\022\020\n\003uri\030\001 \001(\tB\003\340A\002*C\n\nDataFo"
          + "rmat\022\033\n\027DATA_FORMAT_UNSPECIFIED\020\000\022\010\n\004JSO"
          + "N\020\001\022\016\n\nPROTO_TEXT\020\0022\371\004\n\021RouteOptimizatio"
          + "n\022\352\001\n\rOptimizeTours\0226.google.maps.routeo"
          + "ptimization.v1.OptimizeToursRequest\0327.go"
          + "ogle.maps.routeoptimization.v1.OptimizeT"
          + "oursResponse\"h\202\323\344\223\002b\"1/v1/{parent=projec"
          + "ts/*/locations/*}:optimizeTours:\001*Z*\"%/v"
          + "1/{parent=projects/*}:optimizeTours:\001*\022\240"
          + "\002\n\022BatchOptimizeTours\022;.google.maps.rout"
          + "eoptimization.v1.BatchOptimizeToursReque"
          + "st\032\035.google.longrunning.Operation\"\255\001\312A8\n"
          + "\032BatchOptimizeToursResponse\022\032BatchOptimi"
          + "zeToursMetadata\202\323\344\223\002l\"6/v1/{parent=proje"
          + "cts/*/locations/*}:batchOptimizeTours:\001*",
      "Z/\"*/v1/{parent=projects/*}:batchOptimiz"
          + "eTours:\001*\032T\312A routeoptimization.googleap"
          + "is.com\322A.https://www.googleapis.com/auth"
          + "/cloud-platformB\215\002\n$com.google.maps.rout"
          + "eoptimization.v1B\035RouteOptimizationServi"
          + "ceProtoP\001ZXcloud.google.com/go/maps/rout"
          + "eoptimization/apiv1/routeoptimizationpb;"
          + "routeoptimizationpb\252\002 Google.Maps.RouteO"
          + "ptimization.V1\312\002 Google\\Maps\\RouteOptimi"
          + "zation\\V1\352\002#Google::Maps::RouteOptimizat"
          + "ion::V1b\006proto3"
    };
    descriptor =
        com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
            descriptorData,
            new com.google.protobuf.Descriptors.FileDescriptor[] {
              com.google.api.AnnotationsProto.getDescriptor(),
              com.google.api.ClientProto.getDescriptor(),
              com.google.api.FieldBehaviorProto.getDescriptor(),
              com.google.longrunning.OperationsProto.getDescriptor(),
              com.google.protobuf.DurationProto.getDescriptor(),
              com.google.protobuf.TimestampProto.getDescriptor(),
              com.google.type.LatLngProto.getDescriptor(),
            });
    internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_descriptor =
        getDescriptor().getMessageTypes().get(0);
    internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_descriptor,
            new java.lang.String[] {
              "Parent", "ModelConfigs",
            });
    internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_AsyncModelConfig_descriptor =
        internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_AsyncModelConfig_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursRequest_AsyncModelConfig_descriptor,
            new java.lang.String[] {
              "DisplayName", "InputConfig", "OutputConfig",
            });
    internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursResponse_descriptor =
        getDescriptor().getMessageTypes().get(1);
    internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursResponse_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursResponse_descriptor,
            new java.lang.String[] {});
    internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursMetadata_descriptor =
        getDescriptor().getMessageTypes().get(2);
    internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursMetadata_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_BatchOptimizeToursMetadata_descriptor,
            new java.lang.String[] {});
    internal_static_google_maps_routeoptimization_v1_OptimizeToursRequest_descriptor =
        getDescriptor().getMessageTypes().get(3);
    internal_static_google_maps_routeoptimization_v1_OptimizeToursRequest_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_OptimizeToursRequest_descriptor,
            new java.lang.String[] {
              "Parent",
              "Timeout",
              "Model",
              "SolvingMode",
              "SearchMode",
              "InjectedFirstSolutionRoutes",
              "InjectedSolutionConstraint",
              "RefreshDetailsRoutes",
              "InterpretInjectedSolutionsUsingLabels",
              "ConsiderRoadTraffic",
              "PopulatePolylines",
              "PopulateTransitionPolylines",
              "AllowLargeDeadlineDespiteInterruptionRisk",
              "UseGeodesicDistances",
              "GeodesicMetersPerSecond",
              "MaxValidationErrors",
              "Label",
            });
    internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_descriptor =
        getDescriptor().getMessageTypes().get(4);
    internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_descriptor,
            new java.lang.String[] {
              "Routes", "RequestLabel", "SkippedShipments", "ValidationErrors", "Metrics",
            });
    internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_descriptor =
        internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_descriptor,
            new java.lang.String[] {
              "AggregatedRouteMetrics",
              "SkippedMandatoryShipmentCount",
              "UsedVehicleCount",
              "EarliestVehicleStartTime",
              "LatestVehicleEndTime",
              "Costs",
              "TotalCost",
            });
    internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_CostsEntry_descriptor =
        internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_CostsEntry_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_OptimizeToursResponse_Metrics_CostsEntry_descriptor,
            new java.lang.String[] {
              "Key", "Value",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentModel_descriptor =
        getDescriptor().getMessageTypes().get(5);
    internal_static_google_maps_routeoptimization_v1_ShipmentModel_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentModel_descriptor,
            new java.lang.String[] {
              "Shipments",
              "Vehicles",
              "MaxActiveVehicles",
              "GlobalStartTime",
              "GlobalEndTime",
              "GlobalDurationCostPerHour",
              "DurationDistanceMatrices",
              "DurationDistanceMatrixSrcTags",
              "DurationDistanceMatrixDstTags",
              "TransitionAttributes",
              "ShipmentTypeIncompatibilities",
              "ShipmentTypeRequirements",
              "PrecedenceRules",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentModel_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_descriptor,
            new java.lang.String[] {
              "Rows", "VehicleStartTag",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_Row_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_Row_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentModel_DurationDistanceMatrix_Row_descriptor,
            new java.lang.String[] {
              "Durations", "Meters",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentModel_PrecedenceRule_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentModel_descriptor
            .getNestedTypes()
            .get(1);
    internal_static_google_maps_routeoptimization_v1_ShipmentModel_PrecedenceRule_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentModel_PrecedenceRule_descriptor,
            new java.lang.String[] {
              "FirstIndex", "FirstIsDelivery", "SecondIndex", "SecondIsDelivery", "OffsetDuration",
            });
    internal_static_google_maps_routeoptimization_v1_Shipment_descriptor =
        getDescriptor().getMessageTypes().get(6);
    internal_static_google_maps_routeoptimization_v1_Shipment_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Shipment_descriptor,
            new java.lang.String[] {
              "DisplayName",
              "Pickups",
              "Deliveries",
              "LoadDemands",
              "PenaltyCost",
              "AllowedVehicleIndices",
              "CostsPerVehicle",
              "CostsPerVehicleIndices",
              "PickupToDeliveryRelativeDetourLimit",
              "PickupToDeliveryAbsoluteDetourLimit",
              "PickupToDeliveryTimeLimit",
              "ShipmentType",
              "Label",
              "Ignore",
            });
    internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_descriptor =
        internal_static_google_maps_routeoptimization_v1_Shipment_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_descriptor,
            new java.lang.String[] {
              "ArrivalLocation",
              "ArrivalWaypoint",
              "DepartureLocation",
              "DepartureWaypoint",
              "Tags",
              "TimeWindows",
              "Duration",
              "Cost",
              "LoadDemands",
              "VisitTypes",
              "Label",
            });
    internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_LoadDemandsEntry_descriptor =
        internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_LoadDemandsEntry_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Shipment_VisitRequest_LoadDemandsEntry_descriptor,
            new java.lang.String[] {
              "Key", "Value",
            });
    internal_static_google_maps_routeoptimization_v1_Shipment_Load_descriptor =
        internal_static_google_maps_routeoptimization_v1_Shipment_descriptor
            .getNestedTypes()
            .get(1);
    internal_static_google_maps_routeoptimization_v1_Shipment_Load_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Shipment_Load_descriptor,
            new java.lang.String[] {
              "Amount",
            });
    internal_static_google_maps_routeoptimization_v1_Shipment_LoadDemandsEntry_descriptor =
        internal_static_google_maps_routeoptimization_v1_Shipment_descriptor
            .getNestedTypes()
            .get(2);
    internal_static_google_maps_routeoptimization_v1_Shipment_LoadDemandsEntry_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Shipment_LoadDemandsEntry_descriptor,
            new java.lang.String[] {
              "Key", "Value",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentTypeIncompatibility_descriptor =
        getDescriptor().getMessageTypes().get(7);
    internal_static_google_maps_routeoptimization_v1_ShipmentTypeIncompatibility_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentTypeIncompatibility_descriptor,
            new java.lang.String[] {
              "Types", "IncompatibilityMode",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentTypeRequirement_descriptor =
        getDescriptor().getMessageTypes().get(8);
    internal_static_google_maps_routeoptimization_v1_ShipmentTypeRequirement_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentTypeRequirement_descriptor,
            new java.lang.String[] {
              "RequiredShipmentTypeAlternatives", "DependentShipmentTypes", "RequirementMode",
            });
    internal_static_google_maps_routeoptimization_v1_RouteModifiers_descriptor =
        getDescriptor().getMessageTypes().get(9);
    internal_static_google_maps_routeoptimization_v1_RouteModifiers_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_RouteModifiers_descriptor,
            new java.lang.String[] {
              "AvoidTolls", "AvoidHighways", "AvoidFerries", "AvoidIndoor",
            });
    internal_static_google_maps_routeoptimization_v1_Vehicle_descriptor =
        getDescriptor().getMessageTypes().get(10);
    internal_static_google_maps_routeoptimization_v1_Vehicle_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Vehicle_descriptor,
            new java.lang.String[] {
              "DisplayName",
              "TravelMode",
              "RouteModifiers",
              "StartLocation",
              "StartWaypoint",
              "EndLocation",
              "EndWaypoint",
              "StartTags",
              "EndTags",
              "StartTimeWindows",
              "EndTimeWindows",
              "TravelDurationMultiple",
              "UnloadingPolicy",
              "LoadLimits",
              "CostPerHour",
              "CostPerTraveledHour",
              "CostPerKilometer",
              "FixedCost",
              "UsedIfRouteIsEmpty",
              "RouteDurationLimit",
              "TravelDurationLimit",
              "RouteDistanceLimit",
              "ExtraVisitDurationForVisitType",
              "BreakRule",
              "Label",
              "Ignore",
            });
    internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_descriptor =
        internal_static_google_maps_routeoptimization_v1_Vehicle_descriptor.getNestedTypes().get(0);
    internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_descriptor,
            new java.lang.String[] {
              "MaxLoad",
              "SoftMaxLoad",
              "CostPerUnitAboveSoftMax",
              "StartLoadInterval",
              "EndLoadInterval",
            });
    internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_Interval_descriptor =
        internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_Interval_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimit_Interval_descriptor,
            new java.lang.String[] {
              "Min", "Max",
            });
    internal_static_google_maps_routeoptimization_v1_Vehicle_DurationLimit_descriptor =
        internal_static_google_maps_routeoptimization_v1_Vehicle_descriptor.getNestedTypes().get(1);
    internal_static_google_maps_routeoptimization_v1_Vehicle_DurationLimit_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Vehicle_DurationLimit_descriptor,
            new java.lang.String[] {
              "MaxDuration",
              "SoftMaxDuration",
              "CostPerHourAfterSoftMax",
              "QuadraticSoftMaxDuration",
              "CostPerSquareHourAfterQuadraticSoftMax",
            });
    internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimitsEntry_descriptor =
        internal_static_google_maps_routeoptimization_v1_Vehicle_descriptor.getNestedTypes().get(2);
    internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimitsEntry_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Vehicle_LoadLimitsEntry_descriptor,
            new java.lang.String[] {
              "Key", "Value",
            });
    internal_static_google_maps_routeoptimization_v1_Vehicle_ExtraVisitDurationForVisitTypeEntry_descriptor =
        internal_static_google_maps_routeoptimization_v1_Vehicle_descriptor.getNestedTypes().get(3);
    internal_static_google_maps_routeoptimization_v1_Vehicle_ExtraVisitDurationForVisitTypeEntry_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Vehicle_ExtraVisitDurationForVisitTypeEntry_descriptor,
            new java.lang.String[] {
              "Key", "Value",
            });
    internal_static_google_maps_routeoptimization_v1_TimeWindow_descriptor =
        getDescriptor().getMessageTypes().get(11);
    internal_static_google_maps_routeoptimization_v1_TimeWindow_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_TimeWindow_descriptor,
            new java.lang.String[] {
              "StartTime",
              "EndTime",
              "SoftStartTime",
              "SoftEndTime",
              "CostPerHourBeforeSoftStartTime",
              "CostPerHourAfterSoftEndTime",
            });
    internal_static_google_maps_routeoptimization_v1_DistanceLimit_descriptor =
        getDescriptor().getMessageTypes().get(12);
    internal_static_google_maps_routeoptimization_v1_DistanceLimit_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_DistanceLimit_descriptor,
            new java.lang.String[] {
              "MaxMeters",
              "SoftMaxMeters",
              "CostPerKilometerBelowSoftMax",
              "CostPerKilometerAboveSoftMax",
            });
    internal_static_google_maps_routeoptimization_v1_TransitionAttributes_descriptor =
        getDescriptor().getMessageTypes().get(13);
    internal_static_google_maps_routeoptimization_v1_TransitionAttributes_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_TransitionAttributes_descriptor,
            new java.lang.String[] {
              "SrcTag",
              "ExcludedSrcTag",
              "DstTag",
              "ExcludedDstTag",
              "Cost",
              "CostPerKilometer",
              "DistanceLimit",
              "Delay",
            });
    internal_static_google_maps_routeoptimization_v1_Waypoint_descriptor =
        getDescriptor().getMessageTypes().get(14);
    internal_static_google_maps_routeoptimization_v1_Waypoint_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Waypoint_descriptor,
            new java.lang.String[] {
              "Location", "PlaceId", "SideOfRoad", "LocationType",
            });
    internal_static_google_maps_routeoptimization_v1_Location_descriptor =
        getDescriptor().getMessageTypes().get(15);
    internal_static_google_maps_routeoptimization_v1_Location_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_Location_descriptor,
            new java.lang.String[] {
              "LatLng", "Heading",
            });
    internal_static_google_maps_routeoptimization_v1_BreakRule_descriptor =
        getDescriptor().getMessageTypes().get(16);
    internal_static_google_maps_routeoptimization_v1_BreakRule_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_BreakRule_descriptor,
            new java.lang.String[] {
              "BreakRequests", "FrequencyConstraints",
            });
    internal_static_google_maps_routeoptimization_v1_BreakRule_BreakRequest_descriptor =
        internal_static_google_maps_routeoptimization_v1_BreakRule_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_BreakRule_BreakRequest_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_BreakRule_BreakRequest_descriptor,
            new java.lang.String[] {
              "EarliestStartTime", "LatestStartTime", "MinDuration",
            });
    internal_static_google_maps_routeoptimization_v1_BreakRule_FrequencyConstraint_descriptor =
        internal_static_google_maps_routeoptimization_v1_BreakRule_descriptor
            .getNestedTypes()
            .get(1);
    internal_static_google_maps_routeoptimization_v1_BreakRule_FrequencyConstraint_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_BreakRule_FrequencyConstraint_descriptor,
            new java.lang.String[] {
              "MinBreakDuration", "MaxInterBreakDuration",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_descriptor =
        getDescriptor().getMessageTypes().get(17);
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentRoute_descriptor,
            new java.lang.String[] {
              "VehicleIndex",
              "VehicleLabel",
              "VehicleStartTime",
              "VehicleEndTime",
              "Visits",
              "Transitions",
              "HasTrafficInfeasibilities",
              "RoutePolyline",
              "Breaks",
              "Metrics",
              "RouteCosts",
              "RouteTotalCost",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentRoute_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_descriptor,
            new java.lang.String[] {
              "ShipmentIndex",
              "IsPickup",
              "VisitRequestIndex",
              "StartTime",
              "LoadDemands",
              "Detour",
              "ShipmentLabel",
              "VisitLabel",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_LoadDemandsEntry_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_LoadDemandsEntry_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Visit_LoadDemandsEntry_descriptor,
            new java.lang.String[] {
              "Key", "Value",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentRoute_descriptor
            .getNestedTypes()
            .get(1);
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_descriptor,
            new java.lang.String[] {
              "TravelDuration",
              "TravelDistanceMeters",
              "TrafficInfoUnavailable",
              "DelayDuration",
              "BreakDuration",
              "WaitDuration",
              "TotalDuration",
              "StartTime",
              "RoutePolyline",
              "RouteToken",
              "VehicleLoads",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_VehicleLoadsEntry_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_VehicleLoadsEntry_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Transition_VehicleLoadsEntry_descriptor,
            new java.lang.String[] {
              "Key", "Value",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_VehicleLoad_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentRoute_descriptor
            .getNestedTypes()
            .get(2);
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_VehicleLoad_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentRoute_VehicleLoad_descriptor,
            new java.lang.String[] {
              "Amount",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_EncodedPolyline_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentRoute_descriptor
            .getNestedTypes()
            .get(3);
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_EncodedPolyline_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentRoute_EncodedPolyline_descriptor,
            new java.lang.String[] {
              "Points",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Break_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentRoute_descriptor
            .getNestedTypes()
            .get(4);
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Break_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentRoute_Break_descriptor,
            new java.lang.String[] {
              "StartTime", "Duration",
            });
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_RouteCostsEntry_descriptor =
        internal_static_google_maps_routeoptimization_v1_ShipmentRoute_descriptor
            .getNestedTypes()
            .get(5);
    internal_static_google_maps_routeoptimization_v1_ShipmentRoute_RouteCostsEntry_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_ShipmentRoute_RouteCostsEntry_descriptor,
            new java.lang.String[] {
              "Key", "Value",
            });
    internal_static_google_maps_routeoptimization_v1_SkippedShipment_descriptor =
        getDescriptor().getMessageTypes().get(18);
    internal_static_google_maps_routeoptimization_v1_SkippedShipment_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_SkippedShipment_descriptor,
            new java.lang.String[] {
              "Index", "Label", "Reasons",
            });
    internal_static_google_maps_routeoptimization_v1_SkippedShipment_Reason_descriptor =
        internal_static_google_maps_routeoptimization_v1_SkippedShipment_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_SkippedShipment_Reason_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_SkippedShipment_Reason_descriptor,
            new java.lang.String[] {
              "Code", "ExampleVehicleIndex", "ExampleExceededCapacityType",
            });
    internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_descriptor =
        getDescriptor().getMessageTypes().get(19);
    internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_descriptor,
            new java.lang.String[] {
              "PerformedShipmentCount",
              "TravelDuration",
              "WaitDuration",
              "DelayDuration",
              "BreakDuration",
              "VisitDuration",
              "TotalDuration",
              "TravelDistanceMeters",
              "MaxLoads",
            });
    internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_MaxLoadsEntry_descriptor =
        internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_MaxLoadsEntry_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_AggregatedMetrics_MaxLoadsEntry_descriptor,
            new java.lang.String[] {
              "Key", "Value",
            });
    internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_descriptor =
        getDescriptor().getMessageTypes().get(20);
    internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_descriptor,
            new java.lang.String[] {
              "Routes", "SkippedShipments", "ConstraintRelaxations",
            });
    internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_descriptor =
        internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_descriptor,
            new java.lang.String[] {
              "Relaxations", "VehicleIndices",
            });
    internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_descriptor =
        internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_descriptor,
            new java.lang.String[] {
              "Level", "ThresholdTime", "ThresholdVisitCount",
            });
    internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_descriptor =
        getDescriptor().getMessageTypes().get(21);
    internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_descriptor,
            new java.lang.String[] {
              "Code", "DisplayName", "Fields", "ErrorMessage", "OffendingValues",
            });
    internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_FieldReference_descriptor =
        internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_descriptor
            .getNestedTypes()
            .get(0);
    internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_FieldReference_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_OptimizeToursValidationError_FieldReference_descriptor,
            new java.lang.String[] {
              "Name", "Index", "Key", "SubField", "IndexOrKey",
            });
    internal_static_google_maps_routeoptimization_v1_InputConfig_descriptor =
        getDescriptor().getMessageTypes().get(22);
    internal_static_google_maps_routeoptimization_v1_InputConfig_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_InputConfig_descriptor,
            new java.lang.String[] {
              "GcsSource", "DataFormat", "Source",
            });
    internal_static_google_maps_routeoptimization_v1_OutputConfig_descriptor =
        getDescriptor().getMessageTypes().get(23);
    internal_static_google_maps_routeoptimization_v1_OutputConfig_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_OutputConfig_descriptor,
            new java.lang.String[] {
              "GcsDestination", "DataFormat", "Destination",
            });
    internal_static_google_maps_routeoptimization_v1_GcsSource_descriptor =
        getDescriptor().getMessageTypes().get(24);
    internal_static_google_maps_routeoptimization_v1_GcsSource_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_GcsSource_descriptor,
            new java.lang.String[] {
              "Uri",
            });
    internal_static_google_maps_routeoptimization_v1_GcsDestination_descriptor =
        getDescriptor().getMessageTypes().get(25);
    internal_static_google_maps_routeoptimization_v1_GcsDestination_fieldAccessorTable =
        new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
            internal_static_google_maps_routeoptimization_v1_GcsDestination_descriptor,
            new java.lang.String[] {
              "Uri",
            });
    com.google.protobuf.ExtensionRegistry registry =
        com.google.protobuf.ExtensionRegistry.newInstance();
    registry.add(com.google.api.ClientProto.defaultHost);
    registry.add(com.google.api.FieldBehaviorProto.fieldBehavior);
    registry.add(com.google.api.AnnotationsProto.http);
    registry.add(com.google.api.ClientProto.oauthScopes);
    registry.add(com.google.longrunning.OperationsProto.operationInfo);
    com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor(
        descriptor, registry);
    com.google.api.AnnotationsProto.getDescriptor();
    com.google.api.ClientProto.getDescriptor();
    com.google.api.FieldBehaviorProto.getDescriptor();
    com.google.longrunning.OperationsProto.getDescriptor();
    com.google.protobuf.DurationProto.getDescriptor();
    com.google.protobuf.TimestampProto.getDescriptor();
    com.google.type.LatLngProto.getDescriptor();
  }

  // @@protoc_insertion_point(outer_class_scope)
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy