[MODULE_PARAMETERS]
tsp_IOT_LGen_FSMs := {
	{
/**** FSM Editor layout information. ****
@state "registered" (772, 546)
@selfstate "registered" (1254, 548)
@state "deregistering" (573, 994)
@state "idle" (73, 592)
@state "inititated" (568, 188)
@parallellink "idle" -- "inititated" (88, 580) (134, 542) * (553, 200) (507, 238)
@link "idle" -- "inititated"
singleevent "EPTF_CLL_LGenBase" "LGenBase: Start_the_traffic_case!"
@link "inititated" -- "idle"
singleevent "LWM2M Behavior" "LWM2M rsp: 3xxto6xx"
@link "inititated" -- "idle"
singleevent "Special behavior for timeout reporting" "userWatchdog"
@link "inititated" -- "idle"
singleevent "COAP Behavior" "COAP transaction: timeout"
@parallellink "inititated" -- "registered" (575, 200) (594, 233) * (765, 534) (746, 501)
@link "inititated" -- "registered"
singleevent "LWM2M Behavior" "LWM2M rsp: 201"
@parallellink "registered" -- "registered" (811, 546) (852, 546) * (1216, 548) (1176, 548)
@link "registered" -- "registered"
singleevent "LWM2M Behavior" "LWM2M rsp: 204"
@link "registered" -- "registered"
singleevent "LWM2M Behavior" "LWM2M req: Read"
@link "registered" -- "registered"
singleevent "LWM2M Behavior" "LWM2M req: Write"
@link "registered" -- "registered"
singleevent "LWM2M Behavior" "LWM2M req: Execute"
@link "registered" -- "registered"
singleevent "Special behavior for timeout reporting" "update"
@link "registered" -- "registered"
singleevent "Special behavior for timeout reporting" "refresh"
@link "registered" -- "registered"
singleevent "COAP Behavior" "COAP observe: cancel"
@parallellink "deregistering" -- "idle" (558, 982) (511, 944) * (88, 604) (135, 642)
@link "deregistering" -- "idle"
singleevent "LWM2M Behavior" "LWM2M rsp: 202"
@link "deregistering" -- "idle"
singleevent "LWM2M Behavior" "LWM2M rsp: 3xxto6xx"
@link "deregistering" -- "idle"
singleevent "COAP Behavior" "COAP transaction: timeout"
@parallellink "registered" -- "idle" (734, 548) (676, 552) * (91, 591) (153, 587)
@link "registered" -- "idle"
singleevent "LWM2M Behavior" "LWM2M rsp: 3xxto6xx"
@link "registered" -- "idle"
singleevent "COAP Behavior" "COAP transaction: timeout"
@parallellink "registered" -- "deregistering" (767, 558) (748, 600) * (578, 982) (597, 940)
@link "registered" -- "deregistering"
singleevent "EPTF_CLL_LGenBase" "LGenBase: Stop_the_traffic_case!"
*/
		name := "LWM2M_SimDevice_FSM",
		fsmParams := {
			{
				stateList := {
					"idle",
					"inititated",
					"registered",
					"deregistering"
				}
			},
			{
				timerList := {
					{
						name := "userWatchdog",
						startValue := 80.0
					},
					{
						name := "update",
						startValue := 25.0
					},
					{
						name := "dereg",
						startValue := 60.0
					},
					{
						name := "refresh",
						startValue := 20.0
					}
				}
			},
			{
				varList := {
					// var:localHost
					{
						name := "localHost",
						initValue := {
							charstringVal := "127.0.0.1"
						},
						scope := TC
					},
					// var:localPort
					{
						name := "localPort",
						initValue := {
							intVal := 11000
						},
						scope := TC
					},
					// var:remoteHost
					{
						name := "remoteHost",
						initValue := {
							charstringVal := "127.0.0.1"
						},
						scope := TC
					},
					// var:remotePort
					{
						name := "remotePort",
						initValue := {
							intVal := 5683
						},
						scope := TC
					}
				}
			},
			{
				statHandlerStatList := { }
			}
		},// fsmParams
		table := {
			extendedTable := {
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "EPTF_CLL_LGenBase",
									iName := "LGenBase: Start_the_traffic_case!",
									eventType := fsm
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "idle"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "COAP Applib: init", 
											contextArgs := omit
										},
										{
											stepOrFunctionName := "IOT App COAP: setLocalAddress_byVars", 
											contextArgs := {
												varNames := {
													"localHost", 
													"localPort"
												}
											}
										},
										{
											stepOrFunctionName := "COAP Applib: setRemoteAddress_byVars", 
											contextArgs := {
												varNames := {
													"remoteHost", 
													"remotePort"
												}
											}
										},
										{
											stepOrFunctionName := "COAP Applib: reportCoapEventForEntity", 
											contextArgs := {
												stepContextArgs := {
													0
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createDevice", 
											contextArgs := omit
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObject", 
											contextArgs := {
												stepContextArgs := {
													0
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObjectInstance", 
											contextArgs := {
												stepContextArgs := {
													0
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObject", 
											contextArgs := {
												stepContextArgs := {
													1
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObjectInstance", 
											contextArgs := {
												stepContextArgs := {
													1
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObject", 
											contextArgs := {
												stepContextArgs := {
													3
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObjectInstance", 
											contextArgs := {
												stepContextArgs := {
													3
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObject", 
											contextArgs := {
												stepContextArgs := {
													6
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObjectInstance", 
											contextArgs := {
												stepContextArgs := {
													6
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObject", 
											contextArgs := {
												stepContextArgs := {
													3303
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: createObjectInstance", 
											contextArgs := {
												stepContextArgs := {
													3303
												}
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: logDevice", 
											contextArgs := omit
										},
										{
											stepOrFunctionName := "IOT Fsm LWM2M_SimDevice: initResourceValues", 
											contextArgs := omit
										},
										{
											stepOrFunctionName := "LWM2M Applib: loadTemplate_byStringId", 
											contextArgs := {
												charstringValue := "t_LWM2M_SimDevice_FSM_register"
											}
										},
										{
											stepOrFunctionName := "IOT App LwM2M: setClientNameInRegister", 
											contextArgs := omit
										},
										{
											stepOrFunctionName := "LWM2M Applib: send", 
											contextArgs := omit
										}
									},
									nextStateCalculation := omit,
									nextState := "inititated"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "LWM2M Behavior",
									iName := "LWM2M rsp: 201",
									eventType := entity
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "inititated"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
											contextArgs := {
												timerName := "update"
											}
										},
										{
											stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
											contextArgs := {
												timerName := "refresh"
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "registered"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "LWM2M Behavior",
									iName := "LWM2M rsp: 204",
									eventType := entity
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "registered"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
											contextArgs := {
												timerName := "update"
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "registered"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "LWM2M Behavior",
									iName := "LWM2M rsp: 202",
									eventType := entity
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "deregistering"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
											contextArgs := {
												verdict := {
													verdict := pass,
													reason := ""
												}
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "idle"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "LWM2M Behavior",
									iName := "LWM2M rsp: 3xxto6xx",
									eventType := entity
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "inititated"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
											contextArgs := {
												verdict := {
													verdict := fail,
													reason := ""
												}
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "idle"
								}
							},
							{
								inState := {
									state := "registered"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
											contextArgs := {
												verdict := {
													verdict := fail,
													reason := ""
												}
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "idle"
								}
							},
							{
								inState := {
									state := "deregistering"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
											contextArgs := {
												verdict := {
													verdict := fail,
													reason := ""
												}
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "idle"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "LWM2M Behavior",
									iName := "LWM2M req: Read",
									eventType := entity
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "registered"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "COAP Applib: handleRequest", 
											contextArgs := omit
										},
										{
											stepOrFunctionName := "LWM2M Applib: handleReadRequest", 
											contextArgs := omit
										}
									},
									nextStateCalculation := omit,
									nextState := "registered"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "LWM2M Behavior",
									iName := "LWM2M req: Write",
									eventType := entity
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "registered"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "COAP Applib: handleRequest", 
											contextArgs := omit
										},
										{
											stepOrFunctionName := "LWM2M Applib: handleWriteRequest", 
											contextArgs := omit
										}
									},
									nextStateCalculation := omit,
									nextState := "registered"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "LWM2M Behavior",
									iName := "LWM2M req: Execute",
									eventType := entity
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "registered"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "COAP Applib: handleRequest", 
											contextArgs := omit
										},
										{
											stepOrFunctionName := "LWM2M Applib: handleExecuteRequest", 
											contextArgs := omit
										}
									},
									nextStateCalculation := omit,
									nextState := "registered"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "Special behavior for timeout reporting",
									iName := "update",
									eventType := fsm
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "registered"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "LWM2M Applib: loadTemplate_byStringId", 
											contextArgs := {
												charstringValue := "t_LWM2M_SimDevice_FSM_update"
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: send", 
											contextArgs := omit
										}
									},
									nextStateCalculation := omit,
									nextState := "registered"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "EPTF_CLL_LGenBase",
									iName := "LGenBase: Stop_the_traffic_case!",
									eventType := fsm
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "registered"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "LGenBase: StepFunction_timerCancelIfRunning", 
											contextArgs := {
												timerName := "update"
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: loadTemplate_byStringId", 
											contextArgs := {
												charstringValue := "t_LWM2M_SimDevice_FSM_deregister"
											}
										},
										{
											stepOrFunctionName := "LWM2M Applib: send", 
											contextArgs := omit
										}
									},
									nextStateCalculation := omit,
									nextState := "deregistering"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "Special behavior for timeout reporting",
									iName := "userWatchdog",
									eventType := fsm
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "inititated"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
											contextArgs := {
												verdict := {
													verdict := fail,
													reason := ""
												}
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "idle"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "COAP Behavior",
									iName := "COAP transaction: timeout",
									eventType := fsm
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "inititated"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
											contextArgs := {
												verdict := {
													verdict := fail,
													reason := ""
												}
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "idle"
								}
							},
							{
								inState := {
									state := "registered"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
											contextArgs := {
												verdict := {
													verdict := fail,
													reason := ""
												}
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "idle"
								}
							},
							{
								inState := {
									state := "deregistering"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
											contextArgs := {
												verdict := {
													verdict := fail,
													reason := ""
												}
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "idle"
								}
							}
						}
					}
				},
				{
					events2Listen := {
						events := {
							{
								singleEvent := {
									bName := "Special behavior for timeout reporting",
									iName := "refresh",
									eventType := fsm
								}
							}
						}
					},
					cellRow := {
						statedCellRow := {
							{
								inState := {
									state := "registered"
								},
								cell := {
									actionList := {
										{
											stepOrFunctionName := "IOT Fsm LWM2M_SimDevice: updateResourceValues", 
											contextArgs := omit
										},
										{
											stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
											contextArgs := {
												timerName := "refresh"
											}
										}
									},
									nextStateCalculation := omit,
									nextState := "registered"
								}
							}
						}
					}
				}
			}
		}
	},
  {
/**** FSM Editor layout information. ****
@state "initiated" (541, 159)
@state "reading" (991, 519)
@state "idle" (78, 521)
@parallellink "initiated" -- "idle" (526, 171) (483, 205) * (93, 509) (136, 475)
@link "initiated" -- "idle"
singleevent "HTTP Behavior" "HTTP Message arrived, Result Code: 4XX"
@link "idle" -- "initiated"
singleevent "EPTF_CLL_LGenBase" "LGenBase: Start_the_traffic_case!"
@link "initiated" -- "idle"
singleevent "Special behavior for timeout reporting" "userWatchdog"
@parallellink "reading" -- "idle" (966, 519) (879, 519) * (93, 521) (180, 521)
@link "reading" -- "idle"
singleevent "HTTP Behavior" "HTTP Message arrived, Result Code: 4XX"
@link "reading" -- "idle"
singleevent "Special behavior for timeout reporting" "userWatchdog"
@link "reading" -- "idle"
singleevent "HTTP Behavior" "HTTP Message arrived, Result Code: 200 Ok"
@parallellink "initiated" -- "reading" (556, 171) (598, 205) * (976, 507) (934, 473)
@link "initiated" -- "reading"
singleevent "HTTP Behavior" "HTTP Message arrived, Result Code: 200 Ok"
*/
    name := "HTTP_GET_FSM",
    fsmParams := {
      {
        stateList := {
          "idle",
          "initiated",
          "reading"
        }
      },
      {
        timerList := {
          {
            name := "userWatchdog",
            startValue := 10.0
          }
        }
      },
      {
        varList := {
          // var:remoteHost
          {
            name := "remoteHost",
            initValue := {
              charstringVal := "127.0.0.1"
            },
            scope := TC
          },
          // var:remotePort
          {
            name := "remotePort",
            initValue := {
              intVal := 8080
            },
            scope := TC
          },
          // var:clientName
          {
            name := "clientName",
            initValue := {
              charstringVal := ""
            },
            scope := TC
          },
          {
            name := "localHost",
            initValue := {
              charstringVal := "127.0.0.1"
            },
            scope := TC
          },//var:localHost
          {
            name := "localPort",
            initValue := {
              intVal := 20000
            },
            scope := TC
          }//var:localPort
        }
      },
      {
        statHandlerStatList := { }
      }
    },// fsmParams
    table := {
      extendedTable := {
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "HTTP Behavior",
                  iName := "HTTP Message arrived, Result Code: 4XX",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "initiated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "reading"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "EPTF_CLL_LGenBase",
                  iName := "LGenBase: Start_the_traffic_case!",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "idle"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: initEntityContext", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: openConnection_byVars", 
                      contextArgs := {
                        varNames := {
                          "localHost", 
                          "localPort", 
                          "remoteHost", 
                          "remotePort"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: setMethod_stringParam", 
                      contextArgs := {
                        charstringValue := "GET"
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: setUri_stringParam", 
                      contextArgs := {
                        charstringValue := "/api/clients"
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: addHostHeader_byVars", 
                      contextArgs := {
                        varNames := {
                          "remoteHost", 
                          "remotePort"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "EPTF HTTP: Sends HTTP Request", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
                      contextArgs := {
                        timerName := "userWatchdog"
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "initiated"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "Special behavior for timeout reporting",
                  iName := "userWatchdog",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "initiated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "reading"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "HTTP Behavior",
                  iName := "HTTP Message arrived, Result Code: 200 Ok",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "initiated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App Leshan: getClientFromResponse_intoVar", 
                      contextArgs := {
                        varNames := {
                          "clientName"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: setUri_stringParam", 
                      contextArgs := {
                        charstringValue := "/api/clients/"
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: addToUri_byVars", 
                      contextArgs := {
                        varNames := {
                          "clientName"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: addToUri_stringParam", 
                      contextArgs := {
                        charstringValue := "/3/0/0?format=JSON"
                      }
                    },
                    {
                      stepOrFunctionName := "EPTF HTTP: Sends HTTP Request", 
                      contextArgs := omit
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "reading"
                }
              },
              {
                inState := {
                  state := "reading"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := pass,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        }
      }
    }
  }
}

