// Copyright 2019 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.

package com.google.sps.data;

import java.util.ArrayList;

/**
 * A class to make a Trip type, containing
 * a specific id, destinations, interests and routes 
 * to be used when updating a trip.
 */
public final class Trip {

  private String id;
  private String start;
  private ArrayList<String> destinations;
  private ArrayList<String> interests;
  private ArrayList<String> route;

  public Trip(String id, ArrayList<String> destinations) {
    configureTrip(id, destinations.get(0), destinations, null, null);
  }

  public Trip(String id, ArrayList<String> destinations,
              ArrayList<String> interests) {
    configureTrip(id, destinations.get(0), destinations, interests, null);
  }

  public Trip(String id, ArrayList<String> destinations,
              ArrayList<String> interests, ArrayList<String> route) {
    configureTrip(id, destinations.get(0), destinations, interests, route);
  }

  private void configureTrip(String id, String start, ArrayList<String> destinations,
              ArrayList<String> interests, ArrayList<String> route) {
    this.id = id;
    this.start = start;
    this.destinations = destinations;
    this.interests = interests;
    this.route = route;
  }

  public ArrayList<String> getInterests() {
      return this.interests;
  }

  public ArrayList<String> getRoute() {
      return this.route;
  }

  public ArrayList<String> getDestinations() {
    return this.destinations;
  }

  public String getTripId() {
      return this.id;
  }

  public String getStart() {
      return this.start;
  }
} 
@@ -1017,561 +1017,8 @@
 ing%3E
- destinations) %7B%0A    configureTrip(id, destinations.get(0), destinations, null, null);%0A  %7D%0A%0A  public Trip(String id, ArrayList%3CString%3E destinations,%0A              ArrayList%3CString%3E interests) %7B%0A    configureTrip(id, destinations.get(0), destinations, interests, null);%0A  %7D%0A%0A  public Trip(String id, ArrayList%3CString%3E destinations,%0A              ArrayList%3CString%3E interests, ArrayList%3CString%3E route) %7B%0A    configureTrip(id, destinations.get(0), destinations, interests, route);%0A  %7D%0A%0A  private void configureTrip(String id, String start, ArrayList%3CString%3E
  des
@@ -1028,16 +1028,16 @@
 ations,%0A
+
         
@@ -1133,21 +1133,35 @@
 start = 
-start
+destinations.get(0)
 ;%0A    th

Include one constructor rather than overloading to maintain consistent parameters needed