 
 // Connect to the GPS on the hardware port
 Adafruit_GPS GPS(&GPSSerial);
+
+#ifdef NMEA_EXTENSIONS
+// Create another GPS object to hold the state of the boat, with no communications, 
+// so don't call Boat.begin() in setup.
+// We will build some fake sentences from the Boat data to feed to GPS for testing.
+Adafruit_GPS Boat(&GPSSerial);
+#endif
 
 // Set GPSECHO to 'false' to turn off echoing the GPS data to the Serial console
 // Set to 'true' if you want to debug and listen to the raw GPS sentences

      Serial.print("Altitude: "); Serial.println(GPS.altitude);
      Serial.print("Satellites: "); Serial.println((int)GPS.satellites);
    }
  }
}

    Serial.println(s, 3);
    Serial.print("Fix: "); Serial.print((int)GPS.fix);
    Serial.print(" quality: "); Serial.println((int)GPS.fixquality);
    Serial.print("Time [s] since last fix: "); Serial.println(GPS.secondsSinceFix(),3); 
    Serial.print("    since last GPS time: "); Serial.println(GPS.secondsSinceTime(),3); 
    Serial.print("    since last GPS date: "); Serial.println(GPS.secondsSinceDate(),3); 
    if (GPS.fix) {
      Serial.print("Location: ");
      Serial.print(GPS.latitude, 4); Serial.print(GPS.lat);
