#LarvFest.cfg
#fire gulpers on last southward run of line at depth of 5m
#define YOYO_MIN_ALTITUDE 7.5
#define MISSION_SPEED 1.4

# mission timer set to 120% of estimated time of mission
behavior missionTimer {
timeOut = 72000;
}

# depth envelope set to commanded + 5 m, abort at commanded + 10
behavior depthEnvelope {
 minDepth = 0;
 maxDepth     = 30;
 abortDepth   = 35;
 abortAltitude  = 2.5;
 abortLockoutDepth = 8.0;
}

# End of mission

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

behavior FireTheGulper {
duration = 2;
gulperToFire = 9;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 5;
}

#first leg - waypoint 1
#N 36 46.5 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.775;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

behavior FireTheGulper {
duration = 2;
gulperToFire = 8;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#second leg - waypoint 2
#N 36 47.52 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.792;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}


behavior FireTheGulper {
duration = 2;
gulperToFire = 7;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#third leg - waypoint 3
#N 36 48.53 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8088;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}


behavior FireTheGulper {
duration = 2;
gulperToFire = 6;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fourth leg - waypoint 4
#N 36 49.55 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8258;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#fifth leg - waypoint 5
#N 36 49.55 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8258;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#sixth leg - waypoint 6
#N 36 49.78 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8297;
longitude = -121.9088;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#seventh leg - waypoint 7
#N 36 49.78 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8297;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#eigth leg - waypoint 8
#N 36 50.01 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}


behavior FireTheGulper {
duration = 2;
gulperToFire = 5;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 90.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 90.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#ninth leg - waypoint 9 - the ESP
#N 36 50.01 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.8992;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#tenth leg - waypoint 10
#N 36 50.01 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#eleventh leg - waypoint 11
#N 36 50.24 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8373;
longitude = -121.9088;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#twelvth leg - waypoint 12
#N 36 50.24 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8373
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#thirteenth leg - waypoint 13
#N 36 50.47 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8412;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

behavior FireTheGulper {
duration = 2;
gulperToFire = 4;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 90.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 90.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fourteenth leg - waypoint 14
#N 36 50.47 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8412;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}


behavior FireTheGulper {
duration = 2;
gulperToFire = 3;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fifteenth leg - waypoint 15
#N 36 51.13 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8522;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}


behavior FireTheGulper {
duration = 2;
gulperToFire = 2;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180.0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#sixteenth leg - waypoint 16
#N 36 51.79 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8632;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

behavior FireTheGulper {
duration = 2;
gulperToFire = 1;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180.0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#seventeenth leg - waypoint 17
#N 36 52.44 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8740;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

behavior FireTheGulper {
duration = 2;
gulperToFire = 0;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#eighteenth leg - waypoint 18
#N 36 53.1 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8850;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#seventeenth leg - waypoint 17
#N 36 52.44 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8740;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#sixteenth leg - waypoint 16
#N 36 51.79 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8632;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fifteenth leg - waypoint 15
#N 36 51.13 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8522;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fourteenth leg - waypoint 14
#N 36 50.47 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8412;
longitude = -121.8992;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#thirteenth leg - waypoint 13
#N 36 50.47 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8412;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#twelvth leg - waypoint 12
#N 36 50.24 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8373
longitude = -121.8895;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#eleventh leg - waypoint 11
#N 36 50.24 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8373;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}


#tenth leg - waypoint 10
#N 36 50.01 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 270.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 270.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#ninth leg - waypoint 9 - the ESP
#N 36 50.01 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.8992;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#eigth leg - waypoint 8
#N 36 50.01 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#seventh leg - waypoint 7
#N 36 49.78 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8297;
longitude = -121.8895;
captureRadius = 10;
duration      = 1200;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#sixth leg - waypoint 6
#N 36 49.78 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8297;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#fifth leg - waypoint 5
#N 36 49.55 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8258;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 270.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 270.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fourth leg - waypoint 4
#N 36 49.55 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8258;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#third leg - waypoint 3
#N 36 48.53 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8088;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#second leg - waypoint 2
#N 36 47.52 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.792;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#first leg - waypoint 1
#N 36 46.5 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.775;
longitude = -121.8992;
captureRadius = 10;
duration      = 600;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#first leg - waypoint 1
#N 36 46.5 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.775;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#second leg - waypoint 2
#N 36 47.52 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.792;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#third leg - waypoint 3
#N 36 48.53 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8088;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fourth leg - waypoint 4
#N 36 49.55 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8258;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#fifth leg - waypoint 5
#N 36 49.55 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8258;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#sixth leg - waypoint 6
#N 36 49.78 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8297;
longitude = -121.9088;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#seventh leg - waypoint 7
#N 36 49.78 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8297;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#eigth leg - waypoint 8
#N 36 50.01 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 90.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 90.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#ninth leg - waypoint 9 - the ESP
#N 36 50.01 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.8992;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#tenth leg - waypoint 10
#N 36 50.01 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#eleventh leg - waypoint 11
#N 36 50.24 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8373;
longitude = -121.9088;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#twelvth leg - waypoint 12
#N 36 50.24 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8373
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#thirteenth leg - waypoint 13
#N 36 50.47 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8412;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 90.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 90.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fourteenth leg - waypoint 14
#N 36 50.47 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8412;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fifteenth leg - waypoint 15
#N 36 51.13 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8522;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180.0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#sixteenth leg - waypoint 16
#N 36 51.79 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8632;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 180.0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#seventeenth leg - waypoint 17
#N 36 52.44 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8740;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 180.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 180.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#eighteenth leg - waypoint 18
#N 36 53.1 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8850;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#seventeenth leg - waypoint 17
#N 36 52.44 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8740;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#sixteenth leg - waypoint 16
#N 36 51.79 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8632;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fifteenth leg - waypoint 15
#N 36 51.13 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8522;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fourteenth leg - waypoint 14
#N 36 50.47 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8412;
longitude = -121.8992;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#thirteenth leg - waypoint 13
#N 36 50.47 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8412;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#twelvth leg - waypoint 12
#N 36 50.24 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8373
longitude = -121.8895;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#eleventh leg - waypoint 11
#N 36 50.24 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8373;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}


#tenth leg - waypoint 10
#N 36 50.01 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 270.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 270.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#ninth leg - waypoint 9 - the ESP
#N 36 50.01 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.8992;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#eigth leg - waypoint 8
#N 36 50.01 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8335;
longitude = -121.8895;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#seventh leg - waypoint 7
#N 36 49.78 W121 53.37
behavior waypoint_yoyo  {
latitude = 36.8297;
longitude = -121.8895;
captureRadius = 10;
duration      = 1200;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#sixth leg - waypoint 6
#N 36 49.78 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8297;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

#fifth leg - waypoint 5
#N 36 49.55 W121 54.53
behavior waypoint_yoyo  {
latitude = 36.8258;
longitude = -121.9088;
captureRadius = 10;
duration      = 800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 270.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 270.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#fourth leg - waypoint 4
#N 36 49.55 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8258;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#third leg - waypoint 3
#N 36 48.53 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.8088;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = heading;
horizontal       = 0;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#second leg - waypoint 2
#N 36 47.52 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.792;
longitude = -121.8992;
captureRadius = 10;
duration      = 1800;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}

# ascend behavior
behavior ascend {
duration  = 1200;
horizontalMode   = rudder;
horizontal       = 10;
pitch            = 20;
speed            = 1.5;
endDepth         = 2;
}

#first leg - waypoint 1
#N 36 46.5 W121 53.95
behavior waypoint_yoyo  {
latitude = 36.775;
longitude = -121.8992;
captureRadius = 10;
duration      = 600;
speed         = MISSION_SPEED;
minDepth      = MISSION_YOYO_MIN_DEPTH;
maxDepth      = 25;
minAltitude   = YOYO_MIN_ALTITUDE;
maxCycles     = 2000;
}

# Descend behavior to 5 meters
behavior descend {
horizontalMode   = heading;
horizontal      = 0.0;
pitch        = -15;
speed        = 1.5;
maxDepth     = 5;
minAltitude  = 9;
duration     = 60;
}

# setpoint on surface to gather momentum
behavior setpoint {
duration     = 30;
heading      = 0.0;
speed        = 1.5;
verticalMode = pitch;
pitch        = 0;
}

behavior getgps {
duration = 300;
minHits = 15;
abortOnTimeout = True;
}
