diff --git a/Example58_UAV_OnStation.mp b/Example58_UAV_OnStation.mp
new file mode 100644
index 0000000000000000000000000000000000000000..b0a4843a6de5b0aa90def20feb3aee5dea139043
--- /dev/null
+++ b/Example58_UAV_OnStation.mp
@@ -0,0 +1,148 @@
+/*********************************************************************************************
+
+A Model for an Unmanned Aerial Vehicle in the OnStation Phase of an ISR Mission
+  
+Demonstrates use of concurrent events within a root and annotations with
+SAY and MARK
+
+"Comprehensive use case scenario generation: An approach for modeling system 
+of systems behaviors" by Kristin Giammarco, Kathleen Giles, and Clifford A. Whitcomb
+Paper available at https://ieeexplore.ieee.org/abstract/document/7994950
+
+  created by K.Giammarco on 02-03-2017
+  modified by K.Giammarco on 02-04-2017 to remove normal events from failure mode scenarios
+  modified by K.Giammarco on 02-05-2017 to add normal events back to failure mode scenarios 
+  										and added annotations
+  
+*********************************************************************************************/
+
+
+SCHEMA UAV_OnStation
+
+
+/*-----------------------
+  GCS OPERATOR MODEL
+-------------------------*/
+
+ROOT GCS_Operator: 	(+ Receive_status
+    				   [ Receive_UAV_video ]
+					   [ Assess_target
+						  ( Target_is_not_of_interest Command_to_resume_search |
+                              
+                            Target_is_of_Interest Command_target_monitoring ) 	]
+						[ Receive_bingo_fuel_status_message ] 
+    				+)
+						Command_end_of_mission End_search;
+
+
+/*------------------------------------------------------------------
+  UAV MODEL
+--------------------------------------------------------------------*/
+
+ROOT UAV: 	/*Reach_OnStation_area*/
+			
+			{ Stream_video, Search, Monitor_status };
+			
+     		Stream_video: (* Send_UAV_video *); 
+	 		
+			Search: Follow_search_pattern
+					(*  ( Target_detected 
+                          Send_target_info
+								( Resume_search_pattern 	| 
+                                    
+                                  Monitor_target 			)	| 
+                        
+                          No_target_detected Continue_search 	) 
+                    *)
+
+					End_search;
+			
+			Monitor_status: ( Health_normal [ Detect_bingo_fuel ] 	| 
+                				Failure_mode Failsafe_behavior 		);
+
+
+/*-----------------------
+  ENVIRONMENT MODEL
+-------------------------*/
+
+ROOT Environment:  (* Present_target_signature *);
+
+
+/*-----------------------
+  INTERACTIONS
+-------------------------*/
+
+UAV, GCS_Operator SHARE ALL End_search;
+
+COORDINATE 	$a: ( Health_normal | Failure_mode )	FROM UAV,
+			$b: Receive_status						FROM GCS_Operator
+		DO ADD $a PRECEDES $b; OD;
+
+COORDINATE 	$a: Send_UAV_video		FROM UAV,
+			$b: Receive_UAV_video	FROM GCS_Operator
+		DO ADD $a PRECEDES $b; OD; 
+
+COORDINATE 	$a: Send_target_info		FROM UAV,
+			$b: Assess_target			FROM GCS_Operator
+		DO ADD $a PRECEDES $b; OD; 
+
+COORDINATE 	$a: Command_to_resume_search	FROM GCS_Operator,
+			$b: Resume_search_pattern  		FROM UAV
+		DO ADD $a PRECEDES $b; OD; 
+
+COORDINATE 	$a: Command_target_monitoring	FROM GCS_Operator,
+			$b: Monitor_target				FROM UAV
+		DO ADD $a PRECEDES $b; OD; 
+
+COORDINATE 	$a: Detect_bingo_fuel					FROM UAV,
+			$b: Receive_bingo_fuel_status_message	FROM GCS_Operator
+		DO ADD $a PRECEDES $b; OD; 
+
+COORDINATE 	$a: Present_target_signature 	FROM Environment,
+			$b: ( Target_detected | No_target_detected )	FROM UAV
+		DO ADD $a PRECEDES $b; OD; 
+
+/*-----------------------
+  GENERAL CONSTRAINTS
+-------------------------*/
+
+ENSURE #Health_normal > 0 -> #Send_UAV_video > 0;
+
+
+/*-----------------------
+  ANNOTATIONS
+-------------------------*/
+
+COORDINATE $s: Stream_video 
+
+	DO	IF #Send_UAV_video IN $s == 0 THEN MARK; 
+		FI;
+	OD;
+
+IF #Health_normal > 0 THEN
+	SAY("UAV health was normal");
+FI;
+
+IF #Failure_mode > 0 THEN
+	SAY("UAV had a failure mode");
+FI;
+
+IF #Send_UAV_video == 0 THEN
+	SAY("No streaming video");
+FI;
+
+IF #Detect_bingo_fuel > 0 THEN
+	SAY("UAV had bingo fuel condition");
+FI;
+
+IF #Monitor_target > 0 THEN
+	SAY("Target of interest was detected");
+FI;
+
+IF #Resume_search_pattern > 0 THEN
+	SAY("Target was not mission-related");
+FI;
+
+IF #No_target_detected > 0 THEN
+	SAY("UAV missed a target signature");
+FI;