LoggerAddress = "localhost"
#LoggerAddress = "193.136.136.136"
LoggerPort = 32767
DefaultCPUs = 2
+OBJBROWSE = {
    Class = HttpClassListResource
    Fake = 1
}
+THRBROWSE = {
    Class = HttpThreadListResource
}
+SECURITY = {
    Class = GCReferenceContainer
    +PASSWORD = {
        Class = HttpDigestRealm
        Users = {
            ivoc = "9bcac9371159a58bcea2218b39fe5dbf"
            pduarte = "22e353055d26b77f7e3270afcc71efe0"
            opertok = "e6a9155cca44a92ff3b741d99be028c7"
			ipfn = "7b2a0c1e8cee979d915439af7ba21901"
        }
    }
}
+BROWSE = {
    Title = "Http GCRC Browser"
    Class = HttpGCRCBrowser
    Realm = SECURITY.PASSWORD
    AddReference = {StateMachine MARTe OBJBROWSE THRBROWSE HTTPCFGUploader HTTPSignalServer MATLABSupport AdvancedConfiguration DischargeConfigurator}
}
+HTTPSERVER = {
    Class = HttpService
    Port = 8080
    VerboseLevel = 4
	HttpRelayURL = "ignore.me:1234"    
    Root = BROWSE
}
+HTTPCFGUploader = {
    Class = CFGUploader
}
+HTTPSignalServer = {
    Class = SignalServer
}
+MATLABSupport =
{
    Class = MATLABHandler
}
+StateMachine = {
    Class = StateMachine
    VerboseLevel = 10
    +INITIAL = {
        Class = StateMachineState
        StateCode = 0x0
        +START = {
            Class = StateMachineEvent
            NextState = IDLE
            Value = START
            +STARTALL = {
                Class = MessageDeliveryRequest
                Sender = StateMachine
                Destinations = "HTTPSERVER MARTe"
                MsecTimeOut = 1000
                Flags = NoReply
                Message = {
                    Class = Message
                    Content = START
                }
            }
        }
    }
    +IDLE = {
        Class = StateMachineState
        StateCode = 0x500
        +PULSE_SETUP_COMPLETED = {
            Class = StateMachineEvent
            Code = 0x701
            NextState = WAITING_FOR_PRE
            +NOTIFY = {
                Class = MessageEnvelope
                Sender = StateMachine
                Destination = MARTe
                +MESSAGE = {
                    Class = Message
                    Content = PREPULSECHECK
                }
            }
            +UPDATE_HTTP_SIGNAL_SERVER = {
                Class = MessageEnvelope
                Destination = HTTPSignalServer
                +MESSAGE = {
                    Class = Message
                    Content = AUTODETECT
                }
            }
            +UPDATE_GAP = {
                Class = MessageEnvelope
                Destination = MATLABSupport
                +MESSAGE = {
                    Class = Message
                    Content = AUTODETECT
                }
            }
        }
        +INHIBIT = {
            Class = StateMachineEvent
            Code = 0x704
            NextState = INHIBIT
        }
        +ACTIVATE = {
            Class = StateMachineEvent
            Code = 0x705
            NextState = SAMESTATE
        }
        +STOP = {
            Class = StateMachineEvent
            NextState = IDLE
            Value = STOP
            +STOPALL = {
                Class = MessageDeliveryRequest
                Sender = StateMachine
                Destinations = "HTTPSERVER MARTe"
                MsecTimeOut = 1000
                Flags = NoReply
                Message = {
                    Class = Message
                    Content = STOP
                }
            }
        }
    }
    +WAITING_FOR_PRE = {
        Class = StateMachineState
        StateCode = 0x504
        +PRE = {
            Class = StateMachineEvent
            Code = 0x708
            NextState = PULSING
            +NOTIFY = {
                Class = MessageEnvelope
                Sender = StateMachine
                Destination = MARTe
                +MESSAGE = {
                    Class = Message
                    Content = PULSESTART
                }
            }
        }
        +COLLECTION_COMPLETED = {
            Class = StateMachineEvent
            Code = 0x703
            NextState = COMM_ERROR
        }
    }
    +PULSING = {
        Class = StateMachineState
        StateCode = 0x505
        +EJP = {
            Class = StateMachineEvent
            Code = 0x709
            NextState = POST_PULSE
            +NOTIFY = {
                Class = MessageEnvelope
                Sender = StateMachine
                Destination = MARTe
                +MESSAGE = {
                    Class = Message
                    Content = PULSESTOP
                }
            }
        }
    }
    +POST_PULSE = {
        Class = StateMachineState
        StateCode = 0x507
        +COLLECTION_COMPLETED = {
            Class = StateMachineEvent
            Code = 0x703
            NextState = IDLE
            +NOTIFY = {
                Class = MessageEnvelope
                Sender = StateMachine
                Destination = MARTe
                +MESSAGE = {
                    Class = Message
                    Content = COLLECTIONCOMPLETED
                }
            }
        }
    }
    +INHIBIT = {
        Class = StateMachineState
        StateCode = 0x508
        +ACTIVATE = {
            Class = StateMachineEvent
            Code = 0x705
            NextState = IDLE
        }
    }
    +ERROR = {
        Class = StateMachineState
        StateCode = 0x601
        +ACTIVATE = {
            Class = StateMachineEvent
            Code = 0x705
            NextState = INIT
        }
        +COLLECTION_COMPLETED = {
            Class = StateMachineEvent
            Code = 0x703
            NextState = INIT
        }
    }
    +UNRECOVERABLE = {
        Class = StateMachineState
        StateCode = 0x601
        +DEFAULT = {
            Class = StateMachineEvent
            UserCode = 0
            NextState = UNRECOVERABLE
        }
    }
    +COMM_ERROR = {
        StateCode = 0x601
        Class = StateMachineState
        +ABORT = {
            Class = StateMachineEvent
            Code = 0x702
            NextState = SAMESTATE
        }
    }
    +DEFAULT = {
        Class = StateMachineState
        StateCode = 0x601
        +ABORT = {
            Class = StateMachineEvent
            Code = 0x702
            NextState = IDLE
        }
        +PRE = {
            Class = StateMachineEvent
            Code = 0x708
            NextState = SAMESTATE
        }
        +EJP = {
            Class = StateMachineEvent
            Code = 0x709
            NextState = SAMESTATE
        }
    }
}
+MARTeMenu = {
    Class = MarteSupLib::MARTeMenu
    Title = "MARTe Menu"
    +MenuA = {
        Class = MenuContainer
        Title = "CODAS Interface"
        +ABORT = {
            Class = SendMessageMenuEntry
            Title = Abort
            Envelope = {
                Class = MessageEnvelope
                Sender = MARTeMenu
                Destination = StateMachine
                +Message = {
                    Class = Message
                    Code = 0x702
                    Content = ABORT
                }
            }
        }
        +INHIBIT = {
            Class = SendMessageMenuEntry
            Title = Inhibit
            Envelope = {
                Class = MessageEnvelope
                Sender = MARTeMenu
                Destination = StateMachine
                +Message = {
                    Class = Message
                    Code = 0x704
                    Content = Inhibit
                }
            }
        }
        +ACTIVATE = {
            Class = SendMessageMenuEntry
            Title = Activate
            Envelope = {
                Class = MessageEnvelope
                Sender = MARTeMenu
                Destination = StateMachine
                +Message = {
                    Class = Message
                    Code = 0x705
                    Content = Activate
                }
            }
        }
        +PULSESETUPCOMPLETE = {
            Class = SendMessageMenuEntry
            Title = "Pulse Setup Complete"
            Envelope = {
                Class = MessageEnvelope
                Sender = MARTeMenu
                Destination = StateMachine
                +Message = {
                    Class = Message
                    Code = 0x701
                    Content = WAITING_FOR_PRE
                }
            }
        }
        +PRE = {
            Class = SendMessageMenuEntry
            Title = "Pulse Start"
            Envelope = {
                Class = MessageEnvelope
                Sender = MARTeMenu
                Destination = StateMachine
                +Message = {
                    Class = Message
                    Code = 0x708
                    Content = PRE
                }
            }
        }
        +EJP = {
            Class = SendMessageMenuEntry
            Title = "Pulse End"
            Envelope = {
                Class = MessageEnvelope
                Sender = MARTeMenu
                Destination = StateMachine
                +Message = {
                    Class = Message
                    Code = 0x709
                    Content = EJP
                }
            }
        }
        +COLLECTIONCOMPLETED = {
            Class = SendMessageMenuEntry
            Title = "Collection Completed"
            Envelope = {
                Class = MessageEnvelope
                Sender = MARTeMenu
                Destination = StateMachine
                +Message = {
                    Class = Message
                    Code = 0x703
                    Content = POSTPULSE
                }
            }
        }
    }
    AddReference = MARTe.MARTe
}
+MARTe = {
    Class = MARTeContainer
    StateMachineName = StateMachine
    Level1Name = LEVEL1
    MenuContainerName = MARTe
    +MARTe = {
        Class = MenuContainer
    }
    +DriverPool = {
        Class = GCReferenceContainer
        +TimerBoard = {
            Class = GenericTimerDrv
            NumberOfInputs = 2
            NumberOfOutputs = 0
            TimerUsecPeriod = 1000
            SynchronizationMethod = Synchronizing
            CPUMask = 4
        }
        +FileReader = {
            Class = FileReadDrv
	        TimeFileName = "../../data/timeBase_05-03-2018_17_19_1.189.0.0.0.bin"
            NumberOfInputs  = 58
//          NumberOfOutputs = 0
            +file_time = {
                Class = FileSignalList
	        	FileName = "../../data/timeBase_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = uint32
				SignalArraySize = 1
            }
            +file_ch0 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_000_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch1 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_001_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch2 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_002_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch3 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_003_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch4 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_004_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch5 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_005_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch6 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_006_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch7 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_007_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch8 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_008_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch9 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_009_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch10 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_010_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch11 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_011_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch12 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_012_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch13 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_013_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch14 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_014_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch15 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_015_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch16 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_016_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch17 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_017_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch18 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_018_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch19 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_019_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch20 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_020_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch21 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_021_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch22 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_022_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ch23 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_023_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_H_alpha = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_046_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_v_primary = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_104_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_sine_probe = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_047_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_cosine_probe = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_048_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_main_rogowski = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_049_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_horizontal_current = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_042_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_vertical_current = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_041_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_primary_current = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_040_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_interferometry_sine = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_044_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_interferometry_cosine = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_045_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_vloop = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_043_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_0 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_028_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_1 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_029_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_2 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_030_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_3 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_031_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_4 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_032_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_5 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_033_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_6 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_034_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_7 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_035_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_8 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_036_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_9 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_037_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_10 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_038_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_magnetic_11 = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_039_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_electric_top_near = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_024_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_electric_outer_near = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_025_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_electric_bottom_near = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_026_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_ADC_electric_inner_near = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_027_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_InSaturation = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_097_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_SlowStopBool = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_098_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_HardStopBool = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_099_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_MagneticProbesR = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_083_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_MagneticProbesZ = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_084_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
            +file_MagneticProbesPlasmaCurrent = {
                Class = FileSignalList
	        	FileName = "../../data/Channel_085_05-03-2018_17_19_1.189.0.0.0.bin"
                SignalType  = float 
				SignalArraySize = 1
            }
        }
    }
    +ExternalTimeTriggeringService = {
        Class = InterruptDrivenTTS
        TsOnlineUsecPeriod = 1000
        TsOnlineUsecPhase = 0
        TsOfflineUsecPeriod = 1000
        TsOfflineUsecPhase = 0
        TimeModule = {
            BoardName = TimerBoard
        }
    }
    +Messages = {
        Class = GCReferenceContainer
        +FatalErrorMessage = {
            Class = MessageDeliveryRequest
            Destinations = StateMachine
            MsecTimeOut = 1000
            Flags = NoReply
            Message = {
                Class = Message
                Code = 0x776
                Content = UNRECOVERABLE
            }
        }
        +ConfigLoadErrorMessage = {
            Class = MessageDeliveryRequest
            Destinations = StateMachine
            MsecTimeOut = 1000
            Flags = NoReply
            Message = {
                Class = Message
                Code = 0x777
                Content = CONFIG_ERROR
            }
        }
        +ConfigLoadOKMessage = {
            Class = MessageDeliveryRequest
            Destinations = StateMachine
            MsecTimeOut = 1000
            Flags = NoReply
            Message = {
                Class = Message
                Code = 0x778
                Content = CONFIG_OK
            }
        }
        +SafetyErrorMessage = {
            Class = MessageDeliveryRequest
            Destinations = MARTe
            MsecTimeOut = 1000
            Flags = NoReply
            Message = {
                Class = Message
                Content = ERROR
            }
        }
    }
    +RealTimeThread = {
        Class = RealTimeThread
        ThreadPriority = 0
        RunOnCPU = 8
        RTStatusChangeMsecTimeout = 1000
        SMStatusChangeMsecTimeout = 1000
        OfflineSemaphoreTimeout = 100
        TriggeringServiceName = MARTe.ExternalTimeTriggeringService
        +DDB = {
            Class = DDB
            Fake = 1
        }
        +Timer = {
            Class = IOGAMs::TimeInputGAM
            TriggeringServiceName = ExternalTimeTriggeringService
            BoardName = TimerBoard
            Signals = {
                time = {
                    SignalName = usecTime
                    SignalType = int32
                }
                counter = {
                    SignalName = counter
                    SignalType = int32
                }
            }
        }
        +InputATCA = {
            Class = IOGAMs::InputGAM
            BoardName = FileReader
            UsecTimeSignalName = usecTime
            Signals = {
                Time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                ch_0 = {
                    SignalName = ADC_tomography_top_0
                    SignalType = float
                }
                ch_1 = {
                    SignalName = ADC_tomography_top_1
                    SignalType = float
                }
                ch_2 = {
                    SignalName = ADC_tomography_top_2
                    SignalType = float
                }
                ch_3 = {
                    SignalName = ADC_tomography_top_3
                    SignalType = float
                }
                ch_4 = {
                    SignalName = ADC_tomography_top_4
                    SignalType = float
                }
                ch_5 = {
                    SignalName = ADC_tomography_top_5
                    SignalType = float
                }
                ch_6 = {
                    SignalName = ADC_tomography_top_6
                    SignalType = float
                }
                ch_7 = {
                    SignalName = ADC_tomography_top_7
                    SignalType = float
                }
                ch_8 = {
                    SignalName = ADC_tomography_outer_0
                    SignalType = float
                }
                ch_9 = {
                    SignalName = ADC_tomography_outer_1
                    SignalType = float
                }
                ch_10 = {
                    SignalName = ADC_tomography_outer_2
                    SignalType = float
                }
                ch_11 = {
                    SignalName = ADC_tomography_outer_3
                    SignalType = float
                }
                ch_12 = {
                    SignalName = ADC_tomography_outer_4
                    SignalType = float
                }
                ch_13 = {
                    SignalName = ADC_tomography_outer_5
                    SignalType = float
                }
                ch_14 = {
                    SignalName = ADC_tomography_outer_6
                    SignalType = float
                }
                ch_15 = {
                    SignalName = ADC_tomography_outer_7
                    SignalType = float
                }
                ch_16 = {
                    SignalName = ADC_tomography_bottom_0
                    SignalType = float
                }
                ch_17 = {
                    SignalName = ADC_tomography_bottom_1
                    SignalType = float
                }
                ch_18 = {
                    SignalName = ADC_tomography_bottom_2
                    SignalType = float
                }
                ch_19 = {
                    SignalName = ADC_tomography_bottom_3
                    SignalType = float
                }
                ch_20 = {
                    SignalName = ADC_tomography_bottom_4
                    SignalType = float
                }
                ch_21 = {
                    SignalName = ADC_tomography_bottom_5
                    SignalType = float
                }
                ch_22 = {
                    SignalName = ADC_tomography_bottom_6
                    SignalType = float
                }
                ch_23 = {
                    SignalName = ADC_tomography_bottom_7
                    SignalType = float
                }
                ch_46 = {
                    SignalName = ADC_H_alpha
                    SignalType = float
                }
                ch_104 = {
                    SignalName = ADC_v_primary
                    SignalType = float
                }
                ch_47 = {
                    SignalName = ADC_sine_probe
                    SignalType = float
                }
                ch_48 = {
                    SignalName = ADC_cosine_probe
                    SignalType = float
                }
                ch_49 = {
                    SignalName = ADC_main_rogowski
                    SignalType = float
                }
                ch_41 = {
                    SignalName = ADC_horizontal_current
                    SignalType = float
                }
                ch_42 = {
                    SignalName = ADC_vertical_current
                    SignalType = float
                }
                ch_40 = {
                    SignalName = ADC_primary_current
                    SignalType = float
                }
                ch_44 = {
                    SignalName = ADC_interferometry_sine
                    SignalType = float
                }
                ch_45 = {
                    SignalName = ADC_interferometry_cosine
                    SignalType = float
                }
                ch_43 = {
                    SignalName = ADC_vloop
                    SignalType = float
                }
                ch_28 = {
                    SignalName = ADC_magnetic_0
                    SignalType = float
                }
                ch_29 = {
                    SignalName = ADC_magnetic_1
                    SignalType = float
                }
                ch_30 = {
                    SignalName = ADC_magnetic_2
                    SignalType = float
                }
                ch_31 = {
                    SignalName = ADC_magnetic_3
                    SignalType = float
                }
                ch_32 = {
                    SignalName = ADC_magnetic_4
                    SignalType = float
                }
                ch_33 = {
                    SignalName = ADC_magnetic_5
                    SignalType = float
                }
                ch_34 = {
                    SignalName = ADC_magnetic_6
                    SignalType = float
                }
                ch_35 = {
                    SignalName = ADC_magnetic_7
                    SignalType = float
                }
                ch_36 = {
                    SignalName = ADC_magnetic_8
                    SignalType = float
                }
                ch_37 = {
                    SignalName = ADC_magnetic_9
                    SignalType = float
                }
                ch_38 = {
                    SignalName = ADC_magnetic_10
                    SignalType = float
                }
                ch_39 = {
                    SignalName = ADC_magnetic_11
                    SignalType = float
                }
                ch_24 = {
                    SignalName = ADC_electric_top_near
                    SignalType = float
                }
                ch_25 = {
                    SignalName = ADC_electric_outer_near
                    SignalType = float
                }
                ch_26 = {
                    SignalName = ADC_electric_bottom_near
                    SignalType = float
                }
                ch_27 = {
                    SignalName = ADC_electric_inner_near
                    SignalType = float
                }
                ch_97 = {
                    SignalName = InSaturation
                    SignalType = int32
                }
                ch_98 = {
                    SignalName = SlowStopBool
                    SignalType = int32
                }
                ch_99 = {
                    SignalName = HardStopBool
                    SignalType = int32
                }
                ch_83 = {
                    SignalName = MagneticProbesR
                    SignalType = float
                }
                ch_84 = {
                    SignalName = MagneticProbesZ
                    SignalType = float
                }
                ch_85 = {
                    SignalName = MagneticProbesPlasmaCurrent
                    SignalType = float
                }
            }
        }
		+Statistic = {
			Class = WebStatisticGAM
			Verbose = True
			FrequencyOfVerbose = 2000000
			Signals = {
				SignalU = {
					SignalName = usecTime
					SignalType = int32
				}
				Signal0 = {
					SignalName = CycleUsecTime
					SignalType = float
				}
				Signal1 = {
					SignalName = fileTime
					SignalType = uint32
				}
				Signal2 = {
					SignalName = ADC_tomography_top_0
					SignalType = float
				}
				Signal3 = {
					SignalName = ADC_tomography_top_1
					SignalType = float
				}
			}
		}
        +DataCollection = {
            Class = CollectionGAMs::DataCollectionGAM
            UsecTimeSignalName = usecTime
            EventTrigger = {
                TimeWindow0 = {
                    NOfSamples = 11110
                    UsecPeriod = 1000
                }
            }
            NOfAcquisitionSamples = 11110
            Signals = {
                timeBase = {
                    SignalName = fileTime
                    SignalType = uint32
                    JPFName = TimeBase
                    Cal0 = 0.0
                    Cal1 = 1.0e-06
                }
                Channel_000 = {
                    SignalName = ADC_tomography_top_0
                    SignalType = float
                    JPFName = ADC_tomography_top_0
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_001 = {
                    SignalName = ADC_tomography_top_1
                    SignalType = float
                    JPFName = ADC_tomography_top_1
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_002 = {
                    SignalName = ADC_tomography_top_2
                    SignalType = float
                    JPFName = ADC_tomography_top_2
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_003 = {
                    SignalName = ADC_tomography_top_3
                    SignalType = float
                    JPFName = ADC_tomography_top_3
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_004 = {
                    SignalName = ADC_tomography_top_4
                    SignalType = float
                    JPFName = ADC_tomography_top_4
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_005 = {
                    SignalName = ADC_tomography_top_5
                    SignalType = float
                    JPFName = ADC_tomography_top_5
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_006 = {
                    SignalName = ADC_tomography_top_6
                    SignalType = float
                    JPFName = ADC_tomography_top_6
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_007 = {
                    SignalName = ADC_tomography_top_7
                    SignalType = float
                    JPFName = ADC_tomography_top_7
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_008 = {
                    SignalName = ADC_tomography_outer_0
                    SignalType = float
                    JPFName = ADC_tomography_outer_0
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_009 = {
                    SignalName = ADC_tomography_outer_1
                    SignalType = float
                    JPFName = ADC_tomography_outer_1
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_010 = {
                    SignalName = ADC_tomography_outer_2
                    SignalType = float
                    JPFName = ADC_tomography_outer_2
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_011 = {
                    SignalName = ADC_tomography_outer_3
                    SignalType = float
                    JPFName = ADC_tomography_outer_3
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_012 = {
                    SignalName = ADC_tomography_outer_4
                    SignalType = float
                    JPFName = ADC_tomography_outer_4
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_013 = {
                    SignalName = ADC_tomography_outer_5
                    SignalType = float
                    JPFName = ADC_tomography_outer_5
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_014 = {
                    SignalName = ADC_tomography_outer_6
                    SignalType = float
                    JPFName = ADC_tomography_outer_6
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_015 = {
                    SignalName = ADC_tomography_outer_7
                    SignalType = float
                    JPFName = ADC_tomography_outer_7
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_016 = {
                    SignalName = ADC_tomography_bottom_0
                    SignalType = float
                    JPFName = ADC_tomography_bottom_0
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_017 = {
                    SignalName = ADC_tomography_bottom_1
                    SignalType = float
                    JPFName = ADC_tomography_bottom_1
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_018 = {
                    SignalName = ADC_tomography_bottom_2
                    SignalType = float
                    JPFName = ADC_tomography_bottom_2
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_019 = {
                    SignalName = ADC_tomography_bottom_3
                    SignalType = float
                    JPFName = ADC_tomography_bottom_3
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_020 = {
                    SignalName = ADC_tomography_bottom_4
                    SignalType = float
                    JPFName = ADC_tomography_bottom_4
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_021 = {
                    SignalName = ADC_tomography_bottom_5
                    SignalType = float
                    JPFName = ADC_tomography_bottom_5
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_022 = {
                    SignalName = ADC_tomography_bottom_6
                    SignalType = float
                    JPFName = ADC_tomography_bottom_6
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_023 = {
                    SignalName = ADC_tomography_bottom_7
                    SignalType = float
                    JPFName = ADC_tomography_bottom_7
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_024 = {
                    SignalName = ADC_electric_top_near
                    SignalType = float
                    JPFName = ADC_electric_top_near
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_025 = {
                    SignalName = ADC_electric_outer_near
                    SignalType = float
                    JPFName = ADC_electric_outer_near
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_026 = {
                    SignalName = ADC_electric_bottom_near
                    SignalType = float
                    JPFName = ADC_electric_bottom_near
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_027 = {
                    SignalName = ADC_electric_inner_near
                    SignalType = float
                    JPFName = ADC_electric_inner_near
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_028 = {
                    SignalName = ADC_magnetic_0
                    SignalType = float
                    JPFName = ADC_magnetic_0
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_029 = {
                    SignalName = ADC_magnetic_1
                    SignalType = float
                    JPFName = ADC_magnetic_1
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_030 = {
                    SignalName = ADC_magnetic_2
                    SignalType = float
                    JPFName = ADC_magnetic_2
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_031 = {
                    SignalName = ADC_magnetic_3
                    SignalType = float
                    JPFName = ADC_magnetic_3
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_032 = {
                    SignalName = ADC_magnetic_4
                    SignalType = float
                    JPFName = ADC_magnetic_4
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_033 = {
                    SignalName = ADC_magnetic_5
                    SignalType = float
                    JPFName = ADC_magnetic_5
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_034 = {
                    SignalName = ADC_magnetic_6
                    SignalType = float
                    JPFName = ADC_magnetic_6
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_035 = {
                    SignalName = ADC_magnetic_7
                    SignalType = float
                    JPFName = ADC_magnetic_7
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_036 = {
                    SignalName = ADC_magnetic_8
                    SignalType = float
                    JPFName = ADC_magnetic_8
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_037 = {
                    SignalName = ADC_magnetic_9
                    SignalType = float
                    JPFName = ADC_magnetic_9
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_038 = {
                    SignalName = ADC_magnetic_10
                    SignalType = float
                    JPFName = ADC_magnetic_10
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_039 = {
                    SignalName = ADC_magnetic_11
                    SignalType = float
                    JPFName = ADC_magnetic_11
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_040 = {
                    SignalName = ADC_primary_current
                    SignalType = float
                    JPFName = ADC_primary_current
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_041 = {
                    SignalName = ADC_vertical_current
                    SignalType = float
                    JPFName = ADC_vertical_current
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_042 = {
                    SignalName = ADC_horizontal_current
                    SignalType = float
                    JPFName = ADC_horizontal_current
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_043 = {
                    SignalName = ADC_vloop
                    SignalType = float
                    JPFName = ADC_vloop
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_044 = {
                    SignalName = ADC_interferometry_sine
                    SignalType = float
                    JPFName = ADC_interferometry_sine
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_045 = {
                    SignalName = ADC_interferometry_cosine
                    SignalType = float
                    JPFName = ADC_interferometry_cosine
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_046 = {
                    SignalName = ADC_H_alpha
                    SignalType = float
                    JPFName = ADC_H_alpha
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_047 = {
                    SignalName = ADC_sine_probe
                    SignalType = float
                    JPFName = ADC_sine_probe
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_048 = {
                    SignalName = ADC_cosine_probe
                    SignalType = float
                    JPFName = ADC_cosine_probe
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_049 = {
                    SignalName = ADC_main_rogowski
                    SignalType = float
                    JPFName = ADC_main_rogowski
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_050 = {
                    SignalName = CycleUsecTime
                    SignalType = float
                    JPFName = Cycle_Usec_Time
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_051 = {
                    SignalName = InputATCARelativeUsecTime
                    SignalType = float
                    JPFName = InputATCARelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_052 = {
                    SignalName = DataCollectionRelativeUsecTime
                    SignalType = float
                    JPFName = DataCollectionRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_053 = {
                    SignalName = time_windowsRelativeUsecTime
                    SignalType = float
                    JPFName = time_windowsRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_054 = {
                    SignalName = tomographyRelativeUsecTime
                    SignalType = float
                    JPFName = tomographyRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_055 = {
                    SignalName = electric_probesRelativeUsecTime
                    SignalType = float
                    JPFName = electric_probesRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
/*
                Channel_056 = {
                    SignalName = magnetic_probesRelativeUsecTime
                    SignalType = float
                    JPFName = magnetic_probesRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
*/
                Channel_057 = {
                    SignalName = sine_probeRelativeUsecTime
                    SignalType = float
                    JPFName = sine_probeRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_058 = {
                    SignalName = cosine_probeRelativeUsecTime
                    SignalType = float
                    JPFName = cosine_probeRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_059 = {
                    SignalName = main_rogowskiRelativeUsecTime
                    SignalType = float
                    JPFName = main_rogowskiRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_060 = {
                    SignalName = interferometryRelativeUsecTime
                    SignalType = float
                    JPFName = interferometryRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_061 = {
                    SignalName = H_alphaRelativeUsecTime
                    SignalType = float
                    JPFName = H_alphaRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_062 = {
                    SignalName = technical_signalsRelativeUsecTime
                    SignalType = float
                    JPFName = technical_signalsRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_063 = {
                    SignalName = plasma_parametersRelativeUsecTime
                    SignalType = float
                    JPFName = plasma_parametersRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
/*
                Channel_064 = {
                    SignalName = machine_protectionRelativeUsecTime
                    SignalType = float
                    JPFName = machine_protectionRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
*/
                Channel_065 = {
                    SignalName = waveform_primaryRelativeUsecTime
                    SignalType = float
                    JPFName = waveform_primaryRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_066 = {
                    SignalName = waveform_verticalRelativeUsecTime
                    SignalType = float
                    JPFName = waveform_verticalRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_067 = {
                    SignalName = waveform_horizontalRelativeUsecTime
                    SignalType = float
                    JPFName = waveform_horizontalRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_068 = {
                    SignalName = waveform_toroidalRelativeUsecTime
                    SignalType = float
                    JPFName = waveform_toroidalRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_069 = {
                    SignalName = waveform_puffingRelativeUsecTime
                    SignalType = float
                    JPFName = waveform_puffingRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_070 = {
                    SignalName = controllerRelativeUsecTime
                    SignalType = float
                    JPFName = controllerRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
/*
                Channel_071 = {
                    SignalName = PSCommunicator_horizontalRelativeUsecTime
                    SignalType = float
                    JPFName = PSCommunicator_horizontalRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_072 = {
                    SignalName = PSCommunicator_verticalRelativeUsecTime
                    SignalType = float
                    JPFName = PSCommunicator_verticalRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_073 = {
                    SignalName = PSCommunicator_primaryRelativeUsecTime
                    SignalType = float
                    JPFName = PSCommunicator_primaryRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
*/
                Channel_074 = {
                    SignalName = CodacRelativeUsecTime
                    SignalType = float
                    JPFName = CodacRelativeUsecTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_075 = {
                    SignalName = DischargeStatus
                    SignalType = int32
                    JPFName = DischargeStatus
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_076 = {
                    SignalName = usecDischargeTime
                    SignalType = int32
                    JPFName = usecDischargeTime
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_077 = {
                    SignalName = PlasmaDirection
                    SignalType = int32
                    JPFName = PlasmaDirection
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_078 = {
                    SignalName = TomographyR
                    SignalType = float
                    JPFName = TomographyR
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_079 = {
                    SignalName = TomographyZ
                    SignalType = float
                    JPFName = TomographyZ
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_080 = {
                    SignalName = TomographyIntensity
                    SignalType = float
                    JPFName = TomographyIntensity
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_081 = {
                    SignalName = ElectricProbesR
                    SignalType = float
                    JPFName = ElectricProbesR
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_082 = {
                    SignalName = ElectricProbesZ
                    SignalType = float
                    JPFName = ElectricProbesZ
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_083 = {
                    SignalName = MagneticProbesR
                    SignalType = float
                    JPFName = MagneticProbesR
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_084 = {
                    SignalName = MagneticProbesZ
                    SignalType = float
                    JPFName = MagneticProbesZ
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_085 = {
                    SignalName = MagneticProbesPlasmaCurrent
                    SignalType = float
                    JPFName = MagneticProbesPlasmaCurrent
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_086 = {
                    SignalName = SineProbeZ
                    SignalType = float
                    JPFName = SineProbeZ
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_087 = {
                    SignalName = CosineProbeR
                    SignalType = float
                    JPFName = CosineProbeR
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_088 = {
                    SignalName = RogowskiPlasmaCurrent
                    SignalType = float
                    JPFName = RogowskiPlasmaCurrent
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_089 = {
                    SignalName = InterferometryDensity
                    SignalType = float
                    JPFName = InterferometryDensity
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_090 = {
                    SignalName = InterferometryR
                    SignalType = float
                    JPFName = InterferometryR
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_091 = {
                    SignalName = HorizontalCurrent
                    SignalType = float
                    JPFName = HorizontalCurrent
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_092 = {
                    SignalName = VerticalCurrent
                    SignalType = float
                    JPFName = VerticalCurrent
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_093 = {
                    SignalName = PrimaryCurrent
                    SignalType = float
                    JPFName = PrimaryCurrent
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_094 = {
                    SignalName = IronCoreSaturation
                    SignalType = float
                    JPFName = IronCoreSaturation
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_095 = {
                    SignalName = VLoop
                    SignalType = float
                    JPFName = VLoop
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_096 = {
                    SignalName = HAlfa
                    SignalType = float
                    JPFName = HAlfa
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_097 = {
                    SignalName = InSaturation
                    SignalType = int32
                    JPFName = InSaturation
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_098 = {
                    SignalName = SlowStopBool
                    SignalType = int32
                    JPFName = SlowStopBool
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_099 = {
                    SignalName = HardStopBool
                    SignalType = int32
                    JPFName = HardStopBool
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_100 = {
                    SignalName = PlasmaCurrent
                    SignalType = float
                    JPFName = PlasmaCurrent
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_101 = {
                    SignalName = PositionR
                    SignalType = float
                    JPFName = PositionR
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_102 = {
                    SignalName = PositionZ
                    SignalType = float
                    JPFName = PositionZ
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_103 = {
                    SignalName = Density
                    SignalType = float
                    JPFName = Density
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_104 = {
                    SignalName = ADC_v_primary
                    SignalType = float
                    JPFName = ADC_v_primary
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_105 = {
                    SignalName = PrimaryOutputWaveform
                    SignalType = float
                    JPFName = PrimaryOutputWaveform
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_106 = {
                    SignalName = VerticalOutputWaveform
                    SignalType = float
                    JPFName = VerticalOutputWaveform
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_107 = {
                    SignalName = HorizontalOutputWaveform
                    SignalType = float
                    JPFName = HorizontalOutputWaveform
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_108 = {
                    SignalName = ToroidalOutputWaveform
                    SignalType = float
                    JPFName = ToroidalOutputWaveform
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_109 = {
                    SignalName = PuffingOutputWaveform
                    SignalType = float
                    JPFName = PuffingOutputWaveform
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_110 = {
                    SignalName = SendToPuffing
                    SignalType = float
                    JPFName = SendToPuffing
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
/*
                Channel_111 = {
                    SignalName = ADC_tomography_extra_00
                    SignalType = float
                    JPFName = ADC_tomography_extra_00
                }
                Channel_112 = {
                    SignalName = ADC_tomography_extra_01
                    SignalType = float
                    JPFName = ADC_tomography_extra_01
                }
                Channel_113 = {
                    SignalName = ADC_tomography_extra_02
                    SignalType = float
                    JPFName = ADC_tomography_extra_02
                }
                Channel_114 = {
                    SignalName = ADC_tomography_extra_03
                    SignalType = float
                    JPFName = ADC_tomography_extra_03
                }
                Channel_115 = {
                    SignalName = ADC_tomography_extra_04
                    SignalType = float
                    JPFName = ADC_tomography_extra_04
                }
                Channel_116 = {
                    SignalName = ADC_tomography_extra_05
                    SignalType = float
                    JPFName = ADC_tomography_extra_05
                }
                Channel_117 = {
                    SignalName = ADC_tomography_extra_06
                    SignalType = float
                    JPFName = ADC_tomography_extra_06
                }
                Channel_118 = {
                    SignalName = ADC_tomography_extra_07
                    SignalType = float
                    JPFName = ADC_tomography_extra_07
                }
                Channel_119 = {
                    SignalName = UnidentifiedChannel_Physical_033
                    SignalType = float
                    JPFName = UnidentifiedChannel_Physical_033
                }
                Channel_120 = {
                    SignalName = UnidentifiedChannel_Physical_035
                    SignalType = float
                    JPFName = UnidentifiedChannel_Physical_035
                }
                Channel_121 = {
                    SignalName = UnidentifiedChannel_Physical_036
                    SignalType = float
                    JPFName = UnidentifiedChannel_Physical_036
                }
                Channel_122 = {
                    SignalName = UnidentifiedChannel_Physical_037
                    SignalType = float
                    JPFName = UnidentifiedChannel_Physical_037
                }
                Channel_123 = {
                    SignalName = UnidentifiedChannel_Physical_038
                    SignalType = float
                    JPFName = UnidentifiedChannel_Physical_038
                }
*/
                Channel_124 = {
                    SignalName = SendToPrimaryValue
                    SignalType = float
                    JPFName = SendToPrimaryValue
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_125 = {
                    SignalName = SendToVerticalValue
                    SignalType = float
                    JPFName = SendToVerticalValue
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_126 = {
                    SignalName = SendToHorizontalValue
                    SignalType = float
                    JPFName = SendToHorizontalValue
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_127 = {
                    SignalName = ElectrodeBiasingTrigger
                    SignalType = float
                    JPFName = ElectrodeBiasingTrigger
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_128 = {
                    SignalName = electrode_biasingRelativeUsecTime
                    SignalType = float
                    JPFName = electrode_biasingRelativeUsecTime
                    Cal0 = 0
                    Cal1 = 1.0e-6
                }
/*
                Channel_129 = {
                    SignalName = ADC_magnetic_chopper_fp_0
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_0
                }
                Channel_130 = {
                    SignalName = ADC_magnetic_chopper_fp_1
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_1
                }
                Channel_131 = {
                    SignalName = ADC_magnetic_chopper_fp_2
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_2
                }
                Channel_132 = {
                    SignalName = ADC_magnetic_chopper_fp_3
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_3
                }
                Channel_133 = {
                    SignalName = ADC_magnetic_chopper_fp_4
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_4
                }
                Channel_134 = {
                    SignalName = ADC_magnetic_chopper_fp_5
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_5
                }
                Channel_135 = {
                    SignalName = ADC_magnetic_chopper_fp_6
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_6
                }
                Channel_136 = {
                    SignalName = ADC_magnetic_chopper_fp_7
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_7
                }
                Channel_137 = {
                    SignalName = ADC_magnetic_chopper_fp_8
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_8
                }
                Channel_138 = {
                    SignalName = ADC_magnetic_chopper_fp_9
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_9
                }
                Channel_139 = {
                    SignalName = ADC_magnetic_chopper_fp_10
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_10
                }
                Channel_140 = {
                    SignalName = ADC_magnetic_chopper_fp_11
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_fp_11
                }
*/
/*
                Channel_141 = {
                    SignalName = Channel_076
                    SignalType = int32
                    JPFName = Channel_076
                }
                Channel_142 = {
                    SignalName = Channel_077
                    SignalType = int32
                    JPFName = Channel_077
                }
                Channel_143 = {
                    SignalName = Channel_078
                    SignalType = int32
                    JPFName = Channel_078
                }
                Channel_144 = {
                    SignalName = Channel_079
                    SignalType = int32
                    JPFName = Channel_079
                }
*/
/*
                Channel_145 = {
                    SignalName = ADC_magnetic_chopper_pl_0_In_Down
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_0_In_Down
                }
                Channel_146 = {
                    SignalName = ADC_magnetic_chopper_pl_1_Down_In
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_1_Down_In
                }
                Channel_147 = {
                    SignalName = ADC_magnetic_chopper_pl_2_Down
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_2_Down
                }
                Channel_148 = {
                    SignalName = ADC_magnetic_chopper_pl_3_Down_Out
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_3_Down_Out
                }
                Channel_149 = {
                    SignalName = ADC_magnetic_chopper_pl_4_Out_Down
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_4_Out_Down
                }
                Channel_150 = {
                    SignalName = ADC_magnetic_chopper_pl_5_Out
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_5_Out
                }
                Channel_151 = {
                    SignalName = ADC_magnetic_chopper_pl_6_Out_Up
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_6_Out_Up
                }
                Channel_152 = {
                    SignalName = ADC_magnetic_chopper_pl_7_Up_Out
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_7_Up_Out
                }
                Channel_153 = {
                    SignalName = ADC_magnetic_chopper_pl_8_Up
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_8_Up
                }
                Channel_154 = {
                    SignalName = ADC_magnetic_chopper_pl_9_Up_In
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_9_Up_In
                }
                Channel_155 = {
                    SignalName = ADC_magnetic_chopper_pl_10_In_Up
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_10_In_Up
                }
                Channel_156 = {
                    SignalName = ADC_magnetic_chopper_pl_11_In
                    SignalType = int32
                    JPFName = ADC_magnetic_chopper_pl_11_In
                }
*/
/*
                Channel_157 = {
                    SignalName = Channel_092
                    SignalType = int32
                    JPFName = Channel_092
                }
                Channel_158 = {
                    SignalName = Channel_093
                    SignalType = int32
                    JPFName = Channel_093
                }
                Channel_159 = {
                    SignalName = Channel_094
                    SignalType = int32
                    JPFName = Channel_094
                }
                Channel_160 = {
                    SignalName = Channel_095
                    SignalType = int32
                    JPFName = Channel_095
                }
*/
                Channel_161 = {
                    SignalName = SpectroscopyTrigger
                    SignalType = float
                    JPFName = SpectroscopyTrigger
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_162 = {
                    SignalName = spectroscopy_triggerRelativeUsecTime
                    SignalType = float
                    JPFName = spectroscopy_triggerRelativeUsecTime
                    Cal0 = 0
                    Cal1 = 1.0e-6
                }
/*
                Channel_163 = {
                    SignalName = PSHorizontalLEM
                    SignalType = float
                    JPFName = PSHorizontalLEM
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_164 = {
                    SignalName = PSVerticalLEM
                    SignalType = float
                    JPFName = PSVerticalLEM
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                Channel_165 = {
                    SignalName = PSPrimaryLEM
                    SignalType = float
                    JPFName = PSPrimaryLEM
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
*/
            }
        }
        +waveform_primary = {
            Class = isttokbiblio::WaveformGAM
            input_signals = {
                input_time = {
                    SignalName = usecDischargeTime
                    SignalType = int32
                }
                input_mode = {
                    SignalName = PrimaryWaveformMode
                    SignalType = int32
                }
                input_AC_cycle = {
                    SignalName = PlasmaDirection
                    SignalType = int32
                }
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
            }
            waveform_mode_1_positive = {
                vector_size = 4
                index_vector = {0.000000e+00 2.500000e+01 2.501000e+01 3.000000e+01}
                data_vector = {2.100000e+02 2.200000e+02 0.000000e+00 0.000000e+00}
                max_value = 3.500000e+02
                min_value = -3.500000e+02
            }
            waveform_mode_1_negative = {
                vector_size = 4
                index_vector = {0.000000e+00 2.500000e+01 2.501000e+01 3.000000e+01}
                data_vector = {-2.100000e+02 -2.200000e+02 0.000000e+00 0.000000e+00}
            }
            waveform_mode_2_positive = {
                vector_size = 8
                index_vector = {0.000000e+00 5.000000e+00 7.000000e+00 1.000000e+01 1.200000e+01 1.500000e+01 2.000000e+01 3.000000e+01}
                data_vector = {0.000000e+00 6.000000e+01 6.000000e+01 -6.000000e+01 -8.000000e+01 3.000000e+01 1.000000e+02 0.000000e+00}
                max_value = 7.000000e+03
                min_value = -7.000000e+03
            }
            waveform_mode_2_negative = {
                vector_size = 5
                index_vector = {0.000000e+00 5.000000e+00 1.000000e+01 1.500000e+01 3.000000e+01}
                data_vector = {3.000000e+02 3.000000e+02 3.500000e+02 3.500000e+02 0.000000e+00}
            }
            waveform_breakdown = {
                vector_size = 10
                index_vector = {0.000000e+00 1.000000e+00 1.010000e+00 5.000000e+00 5.010000e+00 7.000000e+00 7.010000e+00 8.000000e+00 8.010000e+00 9.000000e+00}
                data_vector = {-5.000000e+01 -5.000000e+01 -5.000000e+01 -5.000000e+01 1.500000e+02 1.500000e+02 1.500000e+02 1.500000e+02 0.000000e+00 0.000000e+00}
            }
            waveform_breakdown_negative = {
                vector_size = 8
                index_vector = {0.000000e+00 1.000000e+00 1.010000e+00 5.000000e+00 5.010000e+00 8.000000e+00 8.010000e+00 9.000000e+00}
                data_vector = {3.000000e+01 3.000000e+01 3.000000e+01 3.000000e+01 -1.500000e+02 -1.500000e+02 0.000000e+00 0.000000e+00}
            }
            waveform_inversion_positive_to_negative = {
                vector_size = 9
                index_vector = {0.000000e+00 1.000000e+00 1.010000e+00 3.000000e+00 4.000000e+00 5.010000e+00 7.000000e+00 7.010000e+00 8.000000e+00}
                data_vector = {1.500000e+02 0.000000e+00 -1.500000e+02 -1.500000e+02 -1.500000e+02 -1.500000e+02 -1.500000e+02 0.000000e+00 0.000000e+00}
            }
            waveform_inversion_negative_to_positive = {
                vector_size = 9
                index_vector = {0.000000e+00 1.000000e+00 1.010000e+00 3.000000e+00 3.990000e+00 5.010000e+00 7.000000e+00 7.010000e+00 8.000000e+00}
                data_vector = {-1.500000e+02 0.000000e+00 1.500000e+02 1.500000e+02 1.500000e+02 1.500000e+02 1.500000e+02 0.000000e+00 0.000000e+00}
            }
            output_signals = {
                output_waveform = {
                    SignalName = PrimaryOutputWaveform
                    SignalType = float
                }
            }
        }
        +waveform_vertical = {
            Class = isttokbiblio::WaveformGAM
            input_signals = {
                input_time = {
                    SignalName = usecDischargeTime
                    SignalType = int32
                }
                input_mode = {
                    SignalName = VerticalWaveformMode
                    SignalType = int32
                }
                input_AC_cycle = {
                    SignalName = PlasmaDirection
                    SignalType = int32
                }
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
            }
            waveform_mode_1_positive = {
                vector_size = 4
                index_vector = {0.000000e+00 2.500000e+01 2.501000e+01 3.000000e+01}
                data_vector = {-2.000000e+02 -2.000000e+02 0.000000e+00 0.000000e+00}
                max_value = 3.000000e+02
                min_value = -3.000000e+02
            }
            waveform_mode_1_negative = {
                vector_size = 6
                index_vector = {0.000000e+00 1.999000e+01 2.000000e+01 2.500000e+01 2.501000e+01 3.000000e+01}
                data_vector = {1.100000e+02 1.100000e+02 2.500000e+02 2.500000e+02 0.000000e+00 0.000000e+00}
            }
            waveform_mode_2_positive = {
                vector_size = 3
                index_vector = {0.000000e+00 3.000000e+01 3.100000e+01}
                data_vector = {1.500000e+01 1.500000e+01 0.000000e+00}
                max_value = 8.000000e+01
                min_value = -8.000000e+01
            }
            waveform_mode_2_negative = {
                vector_size = 3
                index_vector = {0.000000e+00 3.000000e+01 3.100000e+01}
                data_vector = {2.000000e+01 2.000000e+01 0.000000e+00}
            }
            waveform_breakdown = {
                vector_size = 8
                index_vector = {0.000000e+00 5.000000e+00 5.010000e+00 7.000000e+00 7.010000e+00 8.000000e+00 8.010000e+00 9.000000e+00}
                data_vector = {-6.000000e+01 -6.000000e+01 -2.000000e+02 -2.000000e+02 -2.000000e+02 -2.000000e+02 0.000000e+00 0.000000e+00}
            }
            waveform_breakdown_negative = {
                vector_size = 6
                index_vector = {0.000000e+00 5.000000e+00 5.010000e+00 8.000000e+00 8.010000e+00 9.000000e+00}
                data_vector = {3.000000e+01 3.000000e+01 1.000000e+02 1.000000e+02 0.000000e+00 0.000000e+00}
            }
            waveform_inversion_positive_to_negative = {
                vector_size = 6
                index_vector = {0.000000e+00 2.000000e+00 5.000000e+00 7.000000e+00 7.010000e+00 8.000000e+00}
                data_vector = {-1.800000e+02 8.000000e+01 8.000000e+01 8.000000e+01 0.000000e+00 0.000000e+00}
            }
            waveform_inversion_negative_to_positive = {
                vector_size = 6
                index_vector = {0.000000e+00 2.000000e+00 5.000000e+00 7.000000e+00 7.010000e+00 8.000000e+00}
                data_vector = {-8.000000e+01 -1.800000e+02 -1.800000e+02 -1.800000e+02 0.000000e+00 0.000000e+00}
            }
            output_signals = {
                output_waveform = {
                    SignalName = VerticalOutputWaveform
                    SignalType = float
                }
            }
        }
        +waveform_horizontal = {
            Class = isttokbiblio::WaveformGAM
            input_signals = {
                input_time = {
                    SignalName = usecDischargeTime
                    SignalType = int32
                }
                input_mode = {
                    SignalName = HorizontalWaveformMode
                    SignalType = int32
                }
                input_AC_cycle = {
                    SignalName = PlasmaDirection
                    SignalType = int32
                }
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
            }
            waveform_mode_1_positive = {
                vector_size = 4
                index_vector = {0.000000e+00 2.500000e+01 2.501000e+01 3.000000e+01}
                data_vector = {-1.500000e+01 -1.500000e+01 0.000000e+00 0.000000e+00}
                max_value = 2.000000e+02
                min_value = -2.000000e+02
            }
            waveform_mode_1_negative = {
                vector_size = 4
                index_vector = {0.000000e+00 2.500000e+01 2.501000e+01 3.000000e+01}
                data_vector = {-7.000000e+01 -7.000000e+01 0.000000e+00 0.000000e+00}
            }
            waveform_mode_2_positive = {
                vector_size = 3
                index_vector = {0.000000e+00 2.000000e+02 3.000000e+02}
                data_vector = {1.000000e+00 -1.000000e+00 0.000000e+00}
                max_value = 8.000000e+01
                min_value = -8.000000e+01
            }
            waveform_mode_2_negative = {
                vector_size = 2
                index_vector = {0.000000e+00 3.000000e+03}
                data_vector = {2.000000e+00 -2.000000e+00}
            }
            waveform_breakdown = {
                vector_size = 8
                index_vector = {0.000000e+00 5.000000e+00 5.010000e+00 7.000000e+00 7.010000e+00 8.000000e+00 8.010000e+00 9.000000e+00}
                data_vector = {-2.500000e+01 -2.500000e+01 -1.500000e+01 -1.500000e+01 -1.500000e+01 -1.500000e+01 0.000000e+00 0.000000e+00}
            }
            waveform_breakdown_negative = {
                vector_size = 6
                index_vector = {0.000000e+00 5.000000e+00 5.010000e+00 8.000000e+00 8.010000e+00 9.000000e+00}
                data_vector = {-2.000000e+01 -2.000000e+01 -6.500000e+01 -6.500000e+01 0.000000e+00 0.000000e+00}
            }
            waveform_inversion_positive_to_negative = {
                vector_size = 6
                index_vector = {0.000000e+00 1.000000e+00 5.000000e+00 7.000000e+00 7.010000e+00 8.000000e+00}
                data_vector = {-3.000000e+01 -6.000000e+01 -6.000000e+01 -6.000000e+01 0.000000e+00 0.000000e+00}
            }
            waveform_inversion_negative_to_positive = {
                vector_size = 5
                index_vector = {0.000000e+00 5.000000e+00 7.000000e+00 7.010000e+00 8.000000e+00}
                data_vector = {-3.000000e+01 -3.000000e+01 -3.000000e+01 0.000000e+00 0.000000e+00}
            }
            output_signals = {
                output_waveform = {
                    SignalName = HorizontalOutputWaveform
                    SignalType = float
                }
            }
        }
        +waveform_toroidal = {
            Class = isttokbiblio::WaveformGAM
            input_signals = {
                input_time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                input_mode = {
                    SignalName = ToroidalWaveformMode
                    SignalType = int32
                }
                input_AC_cycle = {
                    SignalName = PlasmaDirection
                    SignalType = int32
                }
                discharge_status = {
                    SignalName = ToroidalStatus
                    SignalType = int32
                }
            }
            waveform_mode_1_positive = {
                vector_size = 6
                index_vector = {0.000000e+00 5.000000e+00 1.000000e+01 1.500000e+01 3.000000e+01 3.500000e+01}
                data_vector = {0.000000e+00 3.000000e+02 3.000000e+02 3.500000e+02 3.500000e+02 0.000000e+00}
                max_value = 1.000000e+04
                min_value = -1.000000e+04
            }
            waveform_mode_1_negative = {
                vector_size = 6
                index_vector = {0.000000e+00 5.000000e+00 1.000000e+01 1.500000e+01 3.000000e+01 3.500000e+01}
                data_vector = {0.000000e+00 3.000000e+02 3.000000e+02 3.500000e+02 3.500000e+02 0.000000e+00}
            }
            waveform_mode_2_positive = {
                vector_size = 5
                index_vector = {0.000000e+00 5.000000e+00 1.000000e+01 1.500000e+01 3.000000e+01}
                data_vector = {0.000000e+00 3.000000e+02 3.000000e+02 3.500000e+02 3.500000e+02}
                max_value = 7.000000e+03
                min_value = -7.000000e+03
            }
            waveform_mode_2_negative = {
                vector_size = 5
                index_vector = {0.000000e+00 5.000000e+00 1.000000e+01 1.500000e+01 3.000000e+01}
                data_vector = {3.000000e+02 3.000000e+02 3.500000e+02 3.500000e+02 0.000000e+00}
            }
            waveform_breakdown = {
                vector_size = 2
                index_vector = {0.000000e+00 3.000000e+03}
                data_vector = {-1.000000e+00 1.000000e+00}
            }
            waveform_breakdown_negative = {
                vector_size = 2
                index_vector = {0.000000e+00 3.000000e+03}
                data_vector = {-1.000000e+00 1.000000e+00}
            }
            waveform_inversion_positive_to_negative = {
                vector_size = 2
                index_vector = {0.000000e+00 3.000000e+03}
                data_vector = {-2.000000e+00 2.000000e+00}
            }
            waveform_inversion_negative_to_positive = {
                vector_size = 2
                index_vector = {0.000000e+00 3.000000e+03}
                data_vector = {-2.000000e+00 2.000000e+00}
            }
            output_signals = {
                output_waveform = {
                    SignalName = ToroidalOutputWaveform
                    SignalType = float
                }
            }
        }
        +waveform_puffing = {
            Class = isttokbiblio::WaveformGAM
            input_signals = {
                input_time = {
                    SignalName = usecDischargeTime
                    SignalType = int32
                }
                input_mode = {
                    SignalName = PuffingWaveformMode
                    SignalType = int32
                }
                input_AC_cycle = {
                    SignalName = PlasmaDirection
                    SignalType = int32
                }
                discharge_status = {
                    SignalName = PuffingStatus
                    SignalType = int32
                }
            }
            waveform_mode_1_positive = {
                vector_size = 18
                index_vector = {0.000000e+00 9.900000e-01 1.000000e+00 2.000000e+00 2.010000e+00 2.100000e+00 2.110000e+00 2.210000e+00 7.990000e+00 9.210000e+00 1.000000e+01 1.101000e+01 1.499000e+01 1.600000e+01 1.601000e+01 1.700000e+01 1.701000e+01 5.000000e+01}
                data_vector = {0.000000e+00 0.000000e+00 1.000000e+02 1.000000e+02 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 1.000000e+02 1.000000e+02 0.000000e+00 0.000000e+00}
                max_value = 1.000000e+02
                min_value = 0.000000e+00
            }
            waveform_mode_1_negative = {
                vector_size = 21
                index_vector = {0.000000e+00 9.900000e-01 1.000000e+00 2.200000e+00 2.210000e+00 2.990000e+00 4.110000e+00 4.990000e+00 6.110000e+00 6.210000e+00 9.990000e+00 1.000000e+01 1.001000e+01 1.100000e+01 1.101000e+01 1.121000e+01 1.499000e+01 1.621000e+01 1.631000e+01 1.641000e+01 5.000000e+01}
                data_vector = {0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 1.000000e+02 1.000000e+02 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00}
            }
            waveform_mode_2_positive = {
                vector_size = 3
                index_vector = {0.000000e+00 6.000000e+00 3.000000e+01}
                data_vector = {1.200000e+00 1.200000e+00 1.200000e+00}
                max_value = 1.000000e+01
                min_value = 0.000000e+00
            }
            waveform_mode_2_negative = {
                vector_size = 3
                index_vector = {0.000000e+00 6.000000e+00 3.000000e+01}
                data_vector = {1.200000e+00 1.200000e+00 1.200000e+00}
            }
            waveform_breakdown = {
                vector_size = 12
                index_vector = {0.000000e+00 1.000000e+00 1.300000e+00 1.310000e+00 3.000000e+00 3.010000e+00 4.000000e+00 4.010000e+00 5.000000e+00 6.510000e+00 1.121000e+01 1.999000e+01}
                data_vector = {1.000000e+02 1.000000e+02 1.000000e+02 0.000000e+00 0.000000e+00 1.000000e+02 1.000000e+02 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00}
            }
            waveform_breakdown_negative = {
                vector_size = 12
                index_vector = {0.000000e+00 1.000000e+00 1.300000e+00 1.310000e+00 3.000000e+00 3.010000e+00 4.000000e+00 4.010000e+00 5.000000e+00 6.510000e+00 1.121000e+01 1.999000e+01}
                data_vector = {1.000000e+02 1.000000e+02 1.000000e+02 0.000000e+00 0.000000e+00 1.000000e+02 1.000000e+02 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00}
            }
            waveform_inversion_positive_to_negative = {
                vector_size = 2
                index_vector = {0.000000e+00 3.000000e+03}
                data_vector = {-2.000000e+00 2.000000e+00}
            }
            waveform_inversion_negative_to_positive = {
                vector_size = 2
                index_vector = {0.000000e+00 3.000000e+03}
                data_vector = {-2.000000e+00 2.000000e+00}
            }
            output_signals = {
                output_waveform = {
                    SignalName = PuffingOutputWaveform
                    SignalType = float
                }
            }
        }
        +time_windows = {
            Class = isttokbiblio::TimeWindowsGAM
            discharge_time = 1.100000e+03
            number_of_cycles = 40
            first_cycle_positive_bool = 1
            auto_breakdown = 0
            usecthread_cycle_time = 100
            usec_pre_pulse_time = 8000
            maximum_inversion_usectime = 7000
            usectime_to_wait_for_starting_operation = 1000
            puffing_mode = 2
            end_discharge_after_unsuccess_bool = 0
            time_between_online_and_discharge = 100000000
            input_signals = {
                plasma_current = {
                    SignalName = PlasmaCurrent
                    SignalType = float
                }
                system_time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                is_saturated_bool = {
                    SignalName = InSaturation
                    SignalType = int32
                }
                slow_stop = {
                    SignalName = SlowStopBool
                    SignalType = int32
                }
                hard_stop = {
                    SignalName = HardStopBool
                    SignalType = int32
                }
            }
            positive_time_windows = {
                number_of_time_windows = 4
                time_windows_values = {0.000000e+00 4.000000e+00 1.800000e+01 2.500000e+01}
                primary_mode = {1 1 1 7}
                horizontal_mode = {1 2 1 7}
                vertical_mode = {1 2 1 7}
            }
            negative_time_windows = {
                number_of_time_windows = 4
                time_windows_values = {0.000000e+00 5.000000e+00 2.000000e+01 2.500000e+01}
                primary_mode = {1 1 1 7}
                horizontal_mode = {1 1 1 7}
                vertical_mode = {1 2 1 7}
            }
            output_signals = {
                primary_mode = {
                    SignalName = PrimaryWaveformMode
                    SignalType = int32
                }
                horizontal_mode = {
                    SignalName = HorizontalWaveformMode
                    SignalType = int32
                }
                vertical_mode = {
                    SignalName = VerticalWaveformMode
                    SignalType = int32
                }
                time_to_waveforms = {
                    SignalName = usecDischargeTime
                    SignalType = int32
                }
                discharge_direction = {
                    SignalName = PlasmaDirection
                    SignalType = int32
                }
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
                toroidal_mode = {
                    SignalName = ToroidalWaveformMode
                    SignalType = int32
                }
                toroidal_status = {
                    SignalName = ToroidalStatus
                    SignalType = int32
                }
                puffing_mode = {
                    SignalName = PuffingWaveformMode
                    SignalType = int32
                }
                puffing_status = {
                    SignalName = PuffingStatus
                    SignalType = int32
                }
            }
        }
        +tomography = {
            Class = isttokbiblio::TomographyGAM
            file_to_load = "../../cfgs/Tomography/last.tomography"
            nch = 24
            onlineChannels = {1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1}
            tomography_radial_bool = 0
            tomography_vertical_bool = 0
            usectime_to_wait_for_starting_operation = 1000
            input_signals = {
                Channel_0 = {
                    SignalName = ADC_tomography_top_0
                    SignalType = float
                }
                Channel_1 = {
                    SignalName = ADC_tomography_top_1
                    SignalType = float
                }
                Channel_2 = {
                    SignalName = ADC_tomography_top_2
                    SignalType = float
                }
                Channel_3 = {
                    SignalName = ADC_tomography_top_3
                    SignalType = float
                }
                Channel_4 = {
                    SignalName = ADC_tomography_top_4
                    SignalType = float
                }
                Channel_5 = {
                    SignalName = ADC_tomography_top_5
                    SignalType = float
                }
                Channel_6 = {
                    SignalName = ADC_tomography_top_6
                    SignalType = float
                }
                Channel_7 = {
                    SignalName = ADC_tomography_top_7
                    SignalType = float
                }
                Channel_8 = {
                    SignalName = ADC_tomography_outer_0
                    SignalType = float
                }
                Channel_9 = {
                    SignalName = ADC_tomography_outer_1
                    SignalType = float
                }
                Channel_10 = {
                    SignalName = ADC_tomography_outer_2
                    SignalType = float
                }
                Channel_11 = {
                    SignalName = ADC_tomography_outer_3
                    SignalType = float
                }
                Channel_12 = {
                    SignalName = ADC_tomography_outer_4
                    SignalType = float
                }
                Channel_13 = {
                    SignalName = ADC_tomography_outer_5
                    SignalType = float
                }
                Channel_14 = {
                    SignalName = ADC_tomography_outer_6
                    SignalType = float
                }
                Channel_15 = {
                    SignalName = ADC_tomography_outer_7
                    SignalType = float
                }
                Channel_16 = {
                    SignalName = ADC_tomography_bottom_0
                    SignalType = float
                }
                Channel_17 = {
                    SignalName = ADC_tomography_bottom_1
                    SignalType = float
                }
                Channel_18 = {
                    SignalName = ADC_tomography_bottom_2
                    SignalType = float
                }
                Channel_19 = {
                    SignalName = ADC_tomography_bottom_3
                    SignalType = float
                }
                Channel_20 = {
                    SignalName = ADC_tomography_bottom_4
                    SignalType = float
                }
                Channel_21 = {
                    SignalName = ADC_tomography_bottom_5
                    SignalType = float
                }
                Channel_22 = {
                    SignalName = ADC_tomography_bottom_6
                    SignalType = float
                }
                Channel_23 = {
                    SignalName = ADC_tomography_bottom_7
                    SignalType = float
                }
                system_time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                tomography_r = {
                    SignalName = TomographyR
                    SignalType = float
                }
                tomography_z = {
                    SignalName = TomographyZ
                    SignalType = float
                }
                tomography_intensity = {
                    SignalName = TomographyIntensity
                    SignalType = float
                }
            }
        }
        +electric_probes = {
            Class = isttokbiblio::ElectricProbesGAM
            electric_radial_bool = 1
            electric_vertical_bool = 1
            usectime_to_wait_for_starting_operation = 1000
            input_signals = {
                Channel_0 = {
                    SignalName = ADC_electric_top_near
                    SignalType = float
                }
                Channel_1 = {
                    SignalName = ADC_electric_inner_near
                    SignalType = float
                }
                Channel_2 = {
                    SignalName = ADC_electric_outer_near
                    SignalType = float
                }
                Channel_3 = {
                    SignalName = ADC_electric_bottom_near
                    SignalType = float
                }
                system_time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                electric_probes_r = {
                    SignalName = ElectricProbesR
                    SignalType = float
                }
                electric_probes_z = {
                    SignalName = ElectricProbesZ
                    SignalType = float
                }
            }
        }
        +hibd = {
            Class = isttokbiblio::HeavyIonBeamGAM
            hibd_radial_bool = 0
            hibd_vertical_bool = 0
            hibd_pos_from_isec_bool = 0
            hibd_pos_from_nesigmasimple_bool = 1
            hibd_nav = 43
            hibd_detector_description = {
                no_of_sec_hibd_chs = 12
                positions = {56.80 46.80 35.80 25.30 14.80 4.57 -6.82 -17.20 -27.20 -37.20 -47.20 -56.10}
                dls = {7.39 10.90 10.80 10.70 10.60 10.50 10.40 10.30 10.20 10.10 10.10 10.00}
            }
            hibd_iprim_i = 1200.0
            hibd_iprim_f = 1800.0
            hibd_iprim_dt = 0.15
            hibd_radial_constant = 1.0
            hibd_radial_offset = 0.0
            hibd_vertical_constant = 1.0
            hibd_vertical_offset = -0.0025
            hibd_isec_total_threshold = 5.0
            hibd_nesigmasimple_total_threshold = 0.2
            input_signals = {
                Channel_0 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_1 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_2 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_3 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_4 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_5 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_6 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_7 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_8 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_9 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_10 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                Channel_11 = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                hibd_r = {
                    SignalName = HeavyIonBeamR
                    SignalType = float
                }
                hibd_z = {
                    SignalName = HeavyIonBeamZ
                    SignalType = float
                }
                hibd_isec_total = {
                    SignalName = HeavyIonBeamISecTotal
                    SignalType = float
                }
                hibd_r_isec = {
                    SignalName = HeavyIonBeamRISec
                    SignalType = float
                }
                hibd_z_isec = {
                    SignalName = HeavyIonBeamZISec
                    SignalType = float
                }
                hibd_iprim_0 = {
                    SignalName = HeavyIonBeamIprim0
                    SignalType = float
                }
                hibd_nesigmasimple_total = {
                    SignalName = HeavyIonBeamNeSigmaSimpleTotal
                    SignalType = float
                }
                hibd_r_nesigmasimple = {
                    SignalName = HeavyIonBeamRNeSigmaSimple
                    SignalType = float
                }
                hibd_z_nesigmasimple = {
                    SignalName = HeavyIonBeamZNeSigmaSimple
                    SignalType = float
                }
            }
        }
        +electrode_biasing = {
            Class = isttokbiblio::ElectrodeBiasingGAM
            input_signals = {
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
            }
            output_signals = {
                eb_trigger = {
                    SignalName = ElectrodeBiasingTrigger
                    SignalType = float
                }
            }
        }
        +spectroscopy_trigger = {
            Class = isttokbiblio::SpectroscopyTriggerGAM
            min_time_between_triggers_usec = 35000
            input_signals = {
                DischargeStatus = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
                usecDischargeTime = {
                    SignalName = usecDischargeTime
                    SignalType = int32
                }
                usecTime = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                spectr_trigger = {
                    SignalName = SpectroscopyTrigger
                    SignalType = float
                }
            }
        }
/*
        +magnetic_probes = {
            Class = MagneticsGAM
            usectime_to_wait_for_starting_operation = 1000
            magnetic_radial_bool = 0
            magnetic_vertical_bool = 0
            magnetic_module_correction_bool = 1
            MirnovArrayDescription = {
                NumberOfProbes = 12
                Angles = {3.450000e+02 3.150000e+02 2.850000e+02 2.550000e+02 2.250000e+02 1.950000e+02 1.650000e+02 1.350000e+02 1.050000e+02 7.500000e+01 4.500000e+01 1.500000e+01}
                Calibration = {1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00}
            }
            Measurements = {
                NumberOfMeasurements = 12
                ProbeNumbers = {0 1 2 3 4 5 6 7 8 9 10 11}
            }
            ModuleOffsetCorrectionLSBusec = {
                NumberOfModules = 12
                OffsetCalibration = {0.167013 0.2123 -0.26216 0.1146 -130.9 -0.282783 -0.276683 0.2461 -0.25804 -0.100316 0.17467 -0.171933}
                PolarityCalibration = {1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 1.0 -1.0}
            }
            input_signals = {
                Channel_0 = {
                    SignalName = ADC_magnetic_chopper_fp_0
                    SignalType = int32
                }
                Channel_1 = {
                    SignalName = ADC_magnetic_chopper_fp_1
                    SignalType = int32
                }
                Channel_2 = {
                    SignalName = ADC_magnetic_chopper_fp_2
                    SignalType = int32
                }
                Channel_3 = {
                    SignalName = ADC_magnetic_chopper_fp_3
                    SignalType = int32
                }
                Channel_4 = {
                    SignalName = ADC_magnetic_chopper_fp_4
                    SignalType = int32
                }
                Channel_5 = {
                    SignalName = ADC_magnetic_chopper_fp_5
                    SignalType = int32
                }
                Channel_6 = {
                    SignalName = ADC_magnetic_chopper_fp_6
                    SignalType = int32
                }
                Channel_7 = {
                    SignalName = ADC_magnetic_chopper_fp_7
                    SignalType = int32
                }
                Channel_8 = {
                    SignalName = ADC_magnetic_chopper_fp_8
                    SignalType = int32
                }
                Channel_9 = {
                    SignalName = ADC_magnetic_chopper_fp_9
                    SignalType = int32
                }
                Channel_10 = {
                    SignalName = ADC_magnetic_chopper_fp_10
                    SignalType = int32
                }
                Channel_11 = {
                    SignalName = ADC_magnetic_chopper_fp_11
                    SignalType = int32
                }
                Channel_12 = {
                    SignalName = HorizontalCurrent
                    SignalType = float
                }
                Channel_13 = {
                    SignalName = VerticalCurrent
                    SignalType = float
                }
                Channel_14 = {
                    SignalName = PrimaryCurrent
                    SignalType = float
                }
                time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                magnetic_probes_r = {
                    SignalName = MagneticProbesR
                    SignalType = float
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                magnetic_probes_z = {
                    SignalName = MagneticProbesZ
                    SignalType = float
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
                magnetic_probes_plasma_current = {
                    SignalName = MagneticProbesPlasmaCurrent
                    SignalType = float
                    Cal0 = 0.0
                    Cal1 = 1.0
                }
            }
        }
*/
        +sine_probe = {
            Class = isttokbiblio::SineProbeGAM
            usectime_to_wait_for_starting_operation = 1000
            sine_vertical_bool = 0
            input_signals = {
                input_sine_signals = {
                    SignalName = ADC_sine_probe
                    SignalType = float
                }
                system_time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                sine_probe_z = {
                    SignalName = SineProbeZ
                    SignalType = float
                }
            }
        }
        +cosine_probe = {
            Class = isttokbiblio::CosineProbeGAM
            usectime_to_wait_for_starting_operation = 1000
            cosine_radial_bool = 0
            input_signals = {
                input_cosine_signals = {
                    SignalName = ADC_cosine_probe
                    SignalType = float
                }
                system_time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                cosine_probe_r = {
                    SignalName = CosineProbeR
                    SignalType = float
                }
            }
        }
        +main_rogowski = {
            Class = isttokbiblio::MainRogowskiGAM
            usectime_to_wait_for_starting_operation = 1000
            input_signals = {
                main_rogowski_input = {
                    SignalName = ADC_main_rogowski
                    SignalType = float
                }
                system_time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                rogowski_plasma_current = {
                    SignalName = RogowskiPlasmaCurrent
                    SignalType = float
                }
            }
        }
        +interferometry = {
            Class = isttokbiblio::InterferometryGAM
            usectime_to_wait_for_starting_operation = 1000
            interferometry_radial_control_bool = 0
            input_signals = {
                interferometry_sine_signal = {
                    SignalName = ADC_interferometry_sine
                    SignalType = float
                }
                interferometry_cosine_signal = {
                    SignalName = ADC_interferometry_cosine
                    SignalType = float
                }
                H_alpha = {
                    SignalName = HAlfaOutput
                    SignalType = float
                }
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
            }
            output_signals = {
                density = {
                    SignalName = InterferometryDensity
                    SignalType = float
                }
                radial_position = {
                    SignalName = InterferometryR
                    SignalType = float
                }
            }
        }
        +H_alpha = {
            Class = isttokbiblio::HAlphaGAM
            usectime_to_wait_for_starting_operation = 1000
            input_signals = {
                h_alfa_raw = {
                    SignalName = ADC_H_alpha
                    SignalType = float
                }
                time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                h_alfa_output = {
                    SignalName = HAlfaOutput
                    SignalType = float
                }
            }
        }
        +technical_signals = {
            Class = isttokbiblio::TechnicalSignalsGAM
            usectime_to_wait_for_starting_operation = 1000
            input_signals = {
                horizontal_current_transducer = {
                    SignalName = ADC_horizontal_current
                    SignalType = float
                }
                vertical_current_transducer = {
                    SignalName = ADC_vertical_current
                    SignalType = float
                }
                primary_current_transducer = {
                    SignalName = ADC_primary_current
                    SignalType = float
                }
                v_loop = {
                    SignalName = ADC_vloop
                    SignalType = float
                }
                h_alfa_output = {
                    SignalName = HAlfaOutput
                    SignalType = float
                }
                system_time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                horizontal_current = {
                    SignalName = HorizontalCurrent
                    SignalType = float
                }
                vertical_current = {
                    SignalName = VerticalCurrent
                    SignalType = float
                }
                primary_current = {
                    SignalName = PrimaryCurrent
                    SignalType = float
                }
                iron_core_saturation = {
                    SignalName = IronCoreSaturation
                    SignalType = float
                }
                v_loop = {
                    SignalName = VLoop
                    SignalType = float
                }
                h_alpha = {
                    SignalName = HAlfa
                    SignalType = float
                }
            }
        }
/*
        +machine_protection = {
            Class = isttokbiblio::MachineProtectionGAM
            iron_core_saturation_value = 5.000000e+00
            iron_core_dangerous_value = 5.000000e+03
            input_signals = {
                plasma_current = {
                    SignalName = PlasmaCurrent
                    SignalType = float
                }
                horizontal_current = {
                    SignalName = HorizontalCurrent
                    SignalType = float
                }
                vertical_current = {
                    SignalName = VerticalCurrent
                    SignalType = float
                }
                primary_current = {
                    SignalName = PrimaryCurrent
                    SignalType = float
                }
                iron_core_saturation = {
                    SignalName = IronCoreSaturation
                    SignalType = float
                }
                v_loop = {
                    SignalName = VLoop
                    SignalType = float
                }
                density = {
                    SignalName = Density
                    SignalType = float
                }
                h_alpha = {
                    SignalName = HAlfa
                    SignalType = float
                }
                time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                soft_stop_primary = {
                    SignalName = SoftStopPrimaryPS
                    SignalType = int32
                }
                soft_stop_horizontal = {
                    SignalName = SoftStopVerticalPS
                    SignalType = int32
                }
                soft_stop_vertical = {
                    SignalName = SoftStopHorizontalPS
                    SignalType = int32
                }
            }
            output_signals = {
                saturated_bool = {
                    SignalName = InSaturation
                    SignalType = int32
                }
                slow_stop = {
                    SignalName = SlowStopBool
                    SignalType = int32
                }
                hard_stop = {
                    SignalName = HardStopBool
                    SignalType = int32
                }
            }
        }
*/
        +plasma_parameters = {
            Class = isttokbiblio::PlasmaStatusGAM
            high_current_threshold_value = 5.000000e+02
            tomography = {
                tomography_radial_bool = 0
                tomography_vertical_bool = 0
                radial_high_current_weight = 1.000000e-01
                radial_low_current_weight = 1.000000e-01
                vertical_high_current_weight = 1.000000e-01
                vertical_low_current_weight = 1.000000e-01
            }
            electric_probes = {
                electric_radial_bool = 1
                electric_vertical_bool = 1
                radial_high_current_weight = 3.000000e+00
                radial_low_current_weight = 3.000000e+00
                vertical_high_current_weight = 3.000000e+00
                vertical_low_current_weight = 3.000000e+00
            }
            magnetic_probes = {
                magnetic_radial_bool = 0
                magnetic_vertical_bool = 0
                radial_high_current_weight = 1.000000e-04
                radial_low_current_weight = 1.000000e-04
                vertical_high_current_weight = 1.000000e-04
                vertical_low_current_weight = 1.000000e-04
            }
            sine_probe = {
                sine_vertical_bool = 0
                vertical_high_current_weight = 1.000000e+00
                vertical_low_current_weight = 1.000000e-01
                radial_high_current_weight = 1.000000e+00
                radial_low_current_weight = 1.000000e-01
            }
            cosine_probe = {
                cosine_radial_bool = 0
                radial_high_current_weight = 1.000000e+00
                radial_low_current_weight = 1.000000e-01
                vertical_high_current_weight = 1.000000e+00
                vertical_low_current_weight = 1.000000e-01
            }
            hibd = {
                hibd_radial_bool = 0
                hibd_vertical_bool = 0
                radial_high_current_weight = 1.000000e+00
                radial_low_current_weight = 1.000000e+00
                vertical_high_current_weight = 1.000000e-03
                vertical_low_current_weight = 1.000000e-03
            }
            input_signals = {
                rogowski_coil = {
                    SignalName = RogowskiPlasmaCurrent
                    SignalType = float
                }
                density = {
                    SignalName = InterferometryDensity
                    SignalType = float
                }
                hibd_r = {
                    SignalName = HeavyIonBeamR
                    SignalType = float
                }
                hibd_z = {
                    SignalName = HeavyIonBeamZ
                    SignalType = float
                }
                sine_probe_z = {
                    SignalName = SineProbeZ
                    SignalType = float
                }
                cosine_probe_r = {
                    SignalName = CosineProbeR
                    SignalType = float
                }
                magnetic_probes_r = {
                    SignalName = MagneticProbesR
                    SignalType = float
                }
                magnetic_probes_z = {
                    SignalName = MagneticProbesZ
                    SignalType = float
                }
                magnetic_probes_plasma_current = {
                    SignalName = MagneticProbesPlasmaCurrent
                    SignalType = float
                }
                electric_probes_r = {
                    SignalName = ElectricProbesR
                    SignalType = float
                }
                electric_probes_z = {
                    SignalName = ElectricProbesZ
                    SignalType = float
                }
                tomography_r = {
                    SignalName = TomographyR
                    SignalType = float
                }
                tomography_z = {
                    SignalName = TomographyZ
                    SignalType = float
                }
                time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
            output_signals = {
                plasma_current = {
                    SignalName = PlasmaCurrent
                    SignalType = float
                }
                position_r = {
                    SignalName = PositionR
                    SignalType = float
                }
                position_z = {
                    SignalName = PositionZ
                    SignalType = float
                }
                density = {
                    SignalName = Density
                    SignalType = float
                }
            }
        }
        +controller = {
            Class = isttokbiblio::ControllerGAM
            file_to_load = "../../cfgs/Control/last.control"
            usecthread_cycle_time = 100
            maximum_horizontal_current = 2.000000e+02
            minimum_horizontal_current = -2.000000e+02
            maximum_vertical_current = 3.000000e+02
            minimum_vertical_current = -3.000000e+02
            maximum_primary_current = 3.500000e+02
            minimum_primary_current = -3.500000e+02
            maximum_horizontal_position = 8.000000e+01
            minimum_horizontal_position = -8.000000e+01
            maximum_vertical_position = 8.000000e+01
            minimum_vertical_position = -8.000000e+01
            maximum_plasma_current = 7.000000e+03
            minimum_plasma_current = -7.000000e+03
            maximum_toroidal_current = 1.000000e+04
            minimum_toroidal_current = -1.000000e+04
            maximum_puffing_output = 1.000000e+02
            minimum_puffing_output = 0.000000e+00
            maximum_density_halpha_scenario = 1.000000e+01
            minimum_density_halpha_scenario = 0.000000e+00
            puffing_duration_in_puffing_feedback_in_ms = 8.000000e-01
            maximum_idle_time_in_puffing_feedback_in_ms = 1.231400e+02
            minimum_idle_time_in_puffing_feedback_in_ms = 8.000000e+00
            puffing_feedback_usec_change_percentage_by_cycle = 1.500000e+02
            puffing_feedback_mode = 2
            interferometry_radial_control_bool = 0
            puffing_mode = 2
            input_signals = {
                primary_current = {
                    SignalName = PrimaryCurrent
                    SignalType = float
                }
                horizontal_current = {
                    SignalName = HorizontalCurrent
                    SignalType = float
                }
                vertical_current = {
                    SignalName = VerticalCurrent
                    SignalType = float
                }
                primary_waveform = {
                    SignalName = PrimaryOutputWaveform
                    SignalType = float
                }
                horizontal_waveform = {
                    SignalName = HorizontalOutputWaveform
                    SignalType = float
                }
                vertical_waveform = {
                    SignalName = VerticalOutputWaveform
                    SignalType = float
                }
                puffing_waveform = {
                    SignalName = PuffingOutputWaveform
                    SignalType = float
                }
                toroidal_waveform = {
                    SignalName = ToroidalOutputWaveform
                    SignalType = float
                }
                plasma_current = {
                    SignalName = PlasmaCurrent
                    SignalType = float
                }
                position_r = {
                    SignalName = PositionR
                    SignalType = float
                }
                position_z = {
                    SignalName = PositionZ
                    SignalType = float
                }
                density = {
                    SignalName = Density
                    SignalType = float
                }
                halpha = {
                    SignalName = HAlfa
                    SignalType = float
                }
                interferometry_radial_position = {
                    SignalName = InterferometryR
                    SignalType = float
                }
                primary_mode = {
                    SignalName = PrimaryWaveformMode
                    SignalType = int32
                }
                horizontal_mode = {
                    SignalName = HorizontalWaveformMode
                    SignalType = int32
                }
                vertical_mode = {
                    SignalName = VerticalWaveformMode
                    SignalType = int32
                }
                time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
            }
            PID_horizontal = {
                proportional_soft = 1.000000e+00
                proportional_normal = 2.000000e+01
                proportional_hard = 1.500000e+01
                integral_soft = 5.000000e-01
                integral_normal = 5.000000e+00
                integral_hard = 1.500000e+01
                derivative_soft = 5.000000e-01
                derivative_normal = 5.000000e+00
                derivative_hard = 5.000000e+00
            }
            PID_vertical = {
                proportional_soft = 5.000000e+00
                proportional_normal = 1.000000e+01
                proportional_hard = 1.500000e+01
                integral_soft = 5.000000e+00
                integral_normal = 1.000000e+01
                integral_hard = 1.500000e+01
                derivative_soft = 0.000000e+00
                derivative_normal = 5.000000e+00
                derivative_hard = 5.000000e+00
            }
            PID_primary = {
                proportional_soft = 1.000000e+00
                proportional_normal = 2.000000e+00
                proportional_hard = 3.000000e+00
                integral_soft = 1.000000e+00
                integral_normal = 2.000000e+00
                integral_hard = 3.000000e+00
                derivative_soft = 1.000000e+00
                derivative_normal = 2.000000e+00
                derivative_hard = 3.000000e+00
            }
            output_signals = {
                output_horizontal = {
                    SignalName = SendToHorizontalValue
                    SignalType = float
                }
                output_vertical = {
                    SignalName = SendToVerticalValue
                    SignalType = float
                }
                output_primary = {
                    SignalName = SendToPrimaryValue
                    SignalType = float
                }
                output_Puffing = {
                    SignalName = SendToPuffing
                    SignalType = float
                }
                output_Toroidal = {
                    SignalName = SendToToroidal
                    SignalType = float
                }
            }
		}
        /*
        +PSCommunicator_horizontal = {
            Class = isttokbiblio::PowerSupplyCommunicatorGAM
            UARTPortAddress = 0xBF08
            PointOfZeroCurrent = 5.110000e+02
            CurrentStep = 2.929700e+00
            usecGlobalPeriod = 100
            input_signals = {
                CurrentSignal = {
                    SignalName = SendToHorizontalValue
                    SignalType = float
                }
                GlobalTime = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
            }
            output_signals = {
                soft_stop = {
                    SignalName = SoftStopHorizontalPS
                    SignalType = int32
                }
                ReceiveValue = {
                    SignalName = PSHorizontalLEM
                    SignalType = float
                }
            }
        }
        +PSCommunicator_vertical = {
            Class = isttokbiblio::PowerSupplyCommunicatorGAM
            UARTPortAddress = 0xBF00
            PointOfZeroCurrent = 5.110000e+02
            CurrentStep = 2.929700e+00
            usecGlobalPeriod = 100
            input_signals = {
                CurrentSignal = {
                    SignalName = SendToVerticalValue
                    SignalType = float
                }
                GlobalTime = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
            }
            output_signals = {
                soft_stop = {
                    SignalName = SoftStopVerticalPS
                    SignalType = int32
                }
                ReceiveValue = {
                    SignalName = PSVerticalLEM
                    SignalType = float
                }
            }
        }
        +PSCommunicator_primary = {
            Class = isttokbiblio::PowerSupplyCommunicatorGAM
            UARTPortAddress = 0xBF10
            PointOfZeroCurrent = 5.110000e+02
            CurrentStep = 2.929700e+00
            usecGlobalPeriod = 100
            input_signals = {
                CurrentSignal = {
                    SignalName = SendToPrimaryValue
                    SignalType = float
                }
                GlobalTime = {
                    SignalName = fileTime
                    SignalType = uint32
                }
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
            }
            output_signals = {
                soft_stop = {
                    SignalName = SoftStopPrimaryPS
                    SignalType = int32
                }
                ReceiveValue = {
                    SignalName = PSPrimaryLEM
                    SignalType = float
                }
            }
        }
*/
        +Codac = {
            Class = isttokbiblio::FireSignalDischargeStatusGAM
            input_signals = {
                discharge_status = {
                    SignalName = DischargeStatus
                    SignalType = int32
                }
                system_time = {
                    SignalName = fileTime
                    SignalType = uint32
                }
            }
        }
        Online = "Timer InputATCA time_windows tomography electric_probes electrode_biasing spectroscopy_trigger sine_probe cosine_probe main_rogowski H_alpha interferometry technical_signals plasma_parameters waveform_primary waveform_vertical waveform_horizontal waveform_toroidal waveform_puffing controller DataCollection Codac Statistic"
        Offline = "Timer InputATCA time_windows tomography electric_probes electrode_biasing spectroscopy_trigger sine_probe cosine_probe main_rogowski H_alpha interferometry technical_signals plasma_parameters waveform_primary waveform_vertical waveform_horizontal waveform_toroidal waveform_puffing controller DataCollection Codac Statistic"
        Safety = "Timer InputATCA time_windows tomography electric_probes electrode_biasing spectroscopy_trigger sine_probe cosine_probe main_rogowski H_alpha interferometry technical_signals plasma_parameters waveform_primary waveform_vertical waveform_horizontal waveform_toroidal waveform_puffing controller DataCollection Codac Statistic"
        SafetyMsecSleep = 1
    }
}
+AdvancedConfiguration = {
    Class = isttokbiblio::AdvancedConfigurator
    Description = "===== configuration =====last
- as #34852.
- 1 cycles
- >1s
- radial position feedback on electric probes.
- puffing feedback on H-alpha."
    default_directories = {
        default_config_file_path = "../../cfgs/last.cfg"
        config_files_directory = "../../cfgs/MainConfig/"
    }
    colours = {
        header_colour = AliceBlue
        colour1 = Wheat
        colour2 = LightSkyBlue
        colour3 = LightGoldenRodYellow
        colour4 = LightSkyBlue
        colour5 = LightGoldenRodYellow
        footer_colour = AliceBlue
    }
}
+DischargeConfigurator = {
    Class = isttokbiblio::MainConfigurator
    Description = "===== configuration =====
- #34852
- 1 cycles
- 4 kA
- radial position feedback on electric probes"
    graphics = {
        screen_resolution_x = 1280
        screen_resolution_y = 1024
    }
    colours = {
        header_colour = AliceBlue
        diagnostics_parameters_colour = Wheat
        control_parameters_colour = LightSkyBlue
        time_windows_colour = LightGoldenRodYellow
        edit_colour = White
        footer_colour = AliceBlue
    }
    default_directories = {
        default_config_file_path = "../../cfgs/last.cfg"
        config_files_directory = "../../cfgs/MainConfig/"
    }
}
