PPU173%*-=ul;oiMY mainunitU mainunit.pas#:{UNSystemW/@"objpasǂ#KqClasses9'8`j"sysutilsq$uM4zForms*s"`Controls0??7 %WGraphicsj\Dialogsʛ^X;1CustomDrawnControlsl8>OSpink }ZJxStdCtrlsiH^eꎇExtCtrls3[Osyss PrintersDlgs>7n jTAGraph1q꠪ TATransformationsuZd~l&_TASeries;ղtwD,dosĂD"processJF..9Gd TAChartUtilsPKjCJ TADrawUtilst ǥ8I*JfTAToolsp~lSӵ/=(9LCLTypeю^vT6TAChartAxisUtilsL;TACustomSourceb/T@"FWTATypes[i#'cs TAFuncSeries+d*Typesys%K mainunit.o  d R mainunit.lfm$FORMSSYSTEMTAGRAPH TADRAWUTILSCONTROLSCLASSESTATOOLSWINDOWS TACHARTUTILSTASERIESSTDCTRLS TAFUNCSERIESCUSTOMDRAWNCONTROLSSPINDIALOGSEXTCTRLSTATRANSFORMATIONS PRINTERSDLGS LCLCLASSESSYSUTILSLCLTYPEUTYPESTAPRINTGRAPHICSTACUSTOMSERIES CUSTOMTIMERPRINTERSTACHARTAXISUTILS Y   ]   dKk oswz   ~                                 5 ( 5 5\ 5 5 5v      5  ---   ( ( ()q 5 5 5 ( ( 5 5 5 5 5 5 5 ( (          !"#$%&'()*+,-fl 9a78;=~DFGHJKLMU[EDhwt  OuN!Mkl\]_`cfghijklmopqrtuvwx||j#CDE R ! &+/Y89:>?@FIJunUiXYZm\]^Svg~jkIefghmnpPMb`befoqrxz$|JKT  !'./2  .ks~..  K&`\ckrw0F0      .3      4444           59:<=>?EFHLTm{~9:!A  [A0>TmainpN 4              (1:CLU^gpy $-6?HQZclu~ )2;DMV_hqz %.7@IR[dmv!*3<ENW`ir{ &/8AJS\enw"+4=FOXajs| '09BKT]fox#,5>GPYbkt} (1:CLU^gpy $-6?HQZ[[-+<B49MAINUNIT$_$TMAIN_$__$$_CHARTAFTERDRAW$TCHART$ICHARTDRAWER[)"ZASenderP' )"[ADrawerP/)2'"\$selfP4B:+HL'VMAINUNIT$_$TMAIN_$__$$_CHARTMOUSEDOWN$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("^SenderQU^ ("_ButtonQ/`i'"`ShiftRkt#"aXRv(#"bYR2'"c$selfQB+:TMAINUNIT$_$TMAIN_$__$$_CHARTMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("eSenderS ("fButtonS-'"gShiftT#"hXT(#"iYT2'"j$selfSB+#)RMAINUNIT$_$TMAIN_$__$$_CHARTTOOLSETDATAPOINTDRAGTOOLAFTERMOUSEUP$TCHARTTOOL$TPOINT['"lAToolU9 ("mAPointV'"n$selfUB!+/3Z` XMAINUNIT$_$TMAIN_$__$$_CHARTTOOLSETDATAPOINTDRAGTOOLDRAG$TDATAPOINTDRAGTOOL$TDOUBLEPOINT[)"pASenderW1<E -"q AGraphPointX GP'"r$selfWRBX+fj3MAINUNIT$_$TMAIN_$__$$_COMMANDKEYPRESS$TOBJECT$CHAR[("tSenderYs| %"uKeyY4~'"v$selfYB+B1MAINUNIT$_$TMAIN_$__$$_CURRENTBUTTONCLICK$TOBJECT[("xSenderZ" '"y$selfZB+5MAINUNIT$_$TMAIN_$__$$_DLEDITMAXKEYPRESS$TOBJECT$CHAR[("{Sender[! %"|Key[6'"}$self[B+ LRIXMAINUNIT$_$TMAIN_$__$$_DLEDITMAXMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Sender\   ("Button\1!'"Shift]#,#"X].7(#"Y]9B2'"$self\DBJ+ X\5MAINUNIT$_$TMAIN_$__$$_DLEDITMINKEYPRESS$TOBJECT$CHAR[("Sender^!en %"Key^6py'"$self^{B+ XMAINUNIT$_$TMAIN_$__$$_DLEDITMINMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Sender_  ("Button_1'"Shift`#"X`(#"Y`2'"$self_B+ ;MAINUNIT$_$TMAIN_$__$$_EXPFUNCSERIESCALCULATE$DOUBLE$DOUBLE[$"AXa, $"AYa<'"$selfa B+ ">D0MAINUNIT$_$TMAIN_$__$$_FITEXPBUTTONCLICK$TOBJECT[("Senderb!+4 '"$selfb6B<+JNjp0MAINUNIT$_$TMAIN_$__$$_FITLINBUTTONCLICK$TOBJECT[("Senderc!W` '"$selfcbBh+vz+MAINUNIT$_$TMAIN_$__$$_FORMACTIVATE$TOBJECT[("Senderd '"$selfdB+5MAINUNIT$_$TMAIN_$__$$_FORMCLOSE$TOBJECT$TCLOSEACTION[("Sendere -" CloseActione.'"$selfeB+ ;MAINUNIT$_$TMAIN_$__$$_LINFUNCSERIESCALCULATE$DOUBLE$DOUBLE[$"AXf, $"AYf<'"$selffB~+06*MAINUNIT$_$TMAIN_$__$$_PEMODECLICK$TOBJECT[("Senderg& '"$selfg(B.+<@\b-MAINUNIT$_$TMAIN_$__$$_PE_SBMODECLICK$TOBJECT[("SenderhIR '"$selfhTBZ+hl0MAINUNIT$_$TMAIN_$__$$_REDRAWBUTTONCLICK$TOBJECT[("Senderi!u~ '"$selfiB}+-)MAINUNIT$_$TMAIN_$__$$_TEXT1CLICK$TOBJECT[("Senderj '"$selfjB+ O[MAINUNIT$_$TMAIN_$__$$_THERMOBUTTONMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Senderk# ("Buttonk4'"Shiftl#"Xl(#"Yl2'"$selfkB }+8>)MAINUNIT$_$TMAIN_$__$$_FORMCREATE$TOBJECT[("Senderm%. '"$selfm0B6}+DHdj)MAINUNIT$_$TMAIN_$__$$_IMAGECLICK$TOBJECT[("SendernQZ '"$selfn\Bb~+pt*MAINUNIT$_$TMAIN_$__$$_MANUALCLICK$TOBJECT[("Sendero} '"$selfoB+7MAINUNIT$_$TMAIN_$__$$_CURRENTEDITKEYPRESS$TOBJECT$CHAR[("Senderp# %"Keyp8'"$selfpB+%ZMAINUNIT$_$TMAIN_$__$$_CURRENTEDITMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Senderq" ("Buttonq3'"Shiftr#"Xr (#"Yr 2'"$selfqB}++/KQ)MAINUNIT$_$TMAIN_$__$$_PRINTCLICK$TOBJECT[("Senders8A '"$selfsCBI|+W[w}(MAINUNIT$_$TMAIN_$__$$_QUITCLICK$TOBJECT[("Sendertdm '"$selftoBu|+(MAINUNIT$_$TMAIN_$__$$_SAVECLICK$TOBJECT[("Senderu '"$selfuB~+>*MAINUNIT$_$TMAIN_$__$$_SBMODECLICK$TOBJECT[("Senderv '"$selfvB+ h0MAINUNIT$_$TMAIN_$__$$_TEMPEDITMAXCHANGE$TOBJECT[("Senderw! '"$selfwB+! 287MAINUNIT$_$TMAIN_$__$$_TEMPEDITMAXKEYPRESS$TOBJECT$CHAR[("Senderx# %"Keyx8('"$selfx*B0+">BZMAINUNIT$_$TMAIN_$__$$_TEMPEDITMAXMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Sendery"KT ("Buttony3V_'"Shiftzaj#"Xzlu(#"Yzw2'"$selfyB+#g7MAINUNIT$_$TMAIN_$__$$_TEMPEDITMINKEYPRESS$TOBJECT$CHAR[("Sender{# %"Key{8'"$self{B+$oZMAINUNIT$_$TMAIN_$__$$_TEMPEDITMINMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Sender|" ("Button|3'"Shift}#"X}(#"Y}2'"$self|B+%%)qwZMAINUNIT$_$TMAIN_$__$$_TEMPERATUREMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Sender~"2; ("Button~3=F'"ShiftHQ#"XS\(#"Y^g2'"$self~iBo+&}[7MAINUNIT$_$TMAIN_$__$$_TIMEEDITMAXKEYPRESS$TOBJECT$CHAR[("Sender# %"Key8'"$selfB+'  dZMAINUNIT$_$TMAIN_$__$$_TIMEEDITMAXMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Sender" ("Button3'"Shift#"X(#"Y2'"$selfB+(  7 = w7MAINUNIT$_$TMAIN_$__$$_TIMEEDITMINKEYPRESS$TOBJECT$CHAR[("Sender# " %"Key8$ - '"$self/ B5 +)C G  ZMAINUNIT$_$TMAIN_$__$$_TIMEEDITMINMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Sender"P Y (" Button3[ d '" Shiftf o #" Xq z (#" Y| 2'" $self B +*  SMAINUNIT$_$TMAIN_$__$$_TIMEMOUSEUP$TOBJECT$TMOUSEBUTTON$TSHIFTSTATE$LONGINT$LONGINT[("Sender ("Button, '"Shift #"X (#"Y 2'"$self B ~++   *MAINUNIT$_$TMAIN_$__$$_TIMER1TIMER$TOBJECT[("Sender '"$self B }+, # ? E )MAINUNIT$_$TMAIN_$__$$_TIMERTIMER$TOBJECT[("Sender, 5 '"$self7 B= +-K O k q ;/MAINUNIT$_$TMAIN_$__$$_XMODEBUTTONCLICK$TOBJECT[("Sender X a '"$selfc Bi g3ChartConstantLine1w 3 ChartConstantLine2 -! ChartToolset >"ChartToolsetDataPointDragTool (#Command .$ ExpFuncSeries .% LinFuncSeries /&currentButton1 -' currentedit1 -( FitexpButton -) FitlinButton  +* OpenDialog! *+ PE_SBmode" ',PEmode# -- RedrawButton$ (6.SelectDirectoryDialog% 0'/T1Text& 8&0Text1' @&1Text2( H62thermo_TempLineSeries)" P33thermoConstantLine*+ X'4Timer1+4 `,5 xmodeButton,= h46Temp_TimeLineSeries-F p67thermo_TimeLineSeries.O x28dLLinearAxisTrans/X 49TempLinearAxisTrans0a 4:TimeLinearAxisTrans1j .; TempAxisTrans2s ,< dLAxisTrans3| .= TimeAxiTsrans4 ,> CurrentText5 '?T2Text6 &@Chart7 *A dLeditmax8 ,B currentedit9 *C dLeditmin: ,D PrintDialog; +E SaveDialog< .F currentButton= 'GSBmode> 'Hmanual? ,I Tempeditmax@  ,J TimeeditminA  %KSaveB  &LImageC &MPrintD ( %NQuitE 0 ,O TemperatureF' 8 -P ThermoButtonG0 @ %QTimeH9 H ,R TimeeditmaxIB P ,S TempeditminJK X &TTimerKT ` )UTimeTextL] h )VTempTextMf p ,W thermofTextNo x ,X coursortextOx "YChartAfterDrawP "]ChartMouseDownQ d ChartMouseUpS =k)ChartToolsetDataPointDragToolAfterMouseUpU 5o!ChartToolsetDataPointDragToolDragW #sCommandKeyPressY &wcurrentButtonClickZ %zdLeditmaxKeyPress[ $~dLeditmaxMouseUp\ %dLeditminKeyPress^ $dLeditminMouseUp_ *ExpFuncSeriesCalculatea %FitexpButtonClickb %FitlinButtonClickc  FormActivated  FormClosee *LinFuncSeriesCalculatef  PEmodeClickg "PE_SBmodeClickh %RedrawButtonClicki  Text1Clickj 'ThermoButtonMouseUpk  FormCreatem  ImageClickn  manualClicko 'currenteditKeyPressp &currenteditMouseUpq  PrintClicks#  QuitClickt)  SaveClicku/  SBmodeClickv5 %TempeditmaxChangew; 'TempeditmaxKeyPressxA &TempeditmaxMouseUpyG 'TempeditminKeyPress{M &TempeditminMouseUp|S &TemperatureMouseUp~Y 'TimeeditmaxKeyPress_ &TimeeditmaxMouseUpe 'TimeeditminKeyPressk &TimeeditminMouseUpq  TimeMouseUpw  Timer1Timer}  TimerTimer $xmodeButtonClick *-.c<data_t0[[(thermofk( currentt#!T1}#"T2##dT %$time(h+/ MAINUNIT_$$_PARAMOUT[!mainunit system objpas Classes SysUtils Forms Controls  Graphics ' Dialogs 1! CustomDrawnControls : Spin  StdCtrls ExtCtrls  PrintersDlgs TAGraph +TATransformations 4TASeries GDos Process  TAChartUtils  TADrawUtils TATools +LCLType 4TAChartAxisUtils =TACustomSource OTATypes TAFuncSeries TypesTmain data_t $%DATASIZE'%&main'paramout  OSPrintersXSߥѦ11rPrinters !u)PTAPrinttFE-acomUSB5+N31]math #d7utypes_{Z,)SpNumulfitdszunlfit@gZCD ufftǁCconnectچM"&%[2+0 MAINUNIT_$$_init$INIT$_$MAINUNITMAINUNIT_$$_init$[,*1 [,*2  [,*3 &'[,*4/3<[v+5EI]_ #MAINUNIT_$$_GET_INSTDIR$$ANSISTRING[)"l$result RA[)7eit+9rv !MAINUNIT_$$_TEMP2R$DOUBLE$$DOUBLE[#"tT j+: MAINUNIT_$$_CREATE_R2T[w+< #MAINUNIT_$$_TEMPCONV$DOUBLE$$DOUBLE[$"x w+= #MAINUNIT_$$_TIMECONV$DOUBLE$$DOUBLE[$"x y+>( %MAINUNIT_$$_THERMOCONV$DOUBLE$$DOUBLE[$"x( o+? 3 MAINUNIT_$$_ADD_DRAW$DATA_T[$"x3 )D$(j+E.2;=: MAINUNIT_$$_CLEARLINES[i+FCGPRE MAINUNIT_$$_CLEANDRAW[j+HX\egP MAINUNIT_$$_SETTIMEMAX[)Jmqj+Lz~l MAINUNIT_$$_SETTIMEMIN[g+T MAINUNIT_$$_READUSB[)em+m MAINUNIT_$$_MANUAL_REMOTE[j+{Z MAINUNIT_$$_SETTEMPMIN[j+~x MAINUNIT_$$_SETTEMPMAX[l+ MAINUNIT_$$_SETTHERMOMIN[e+  MAINUNIT_$$_SAVEP[f+') MAINUNIT_$$_CLOSEP[)/3l+<@IK MAINUNIT_$$_SETTHERMOMAX[)QU)^b)koj+x|b MAINUNIT_$$_INITVALUES[)))l+2 MAINUNIT_$$_SAVEQUESTION[~+n *MAINUNIT_$$_REGFUNC$DOUBLE$TVECTOR$$DOUBLE[$"dXn $"eBn+-/t 3MAINUNIT_$$_DERIVPROC$DOUBLE$DOUBLE$TVECTOR$TVECTOR[$"lXt  $"mYt $"nBt# $"oDt&"+(v+59MO} "MAINUNIT_$$_LINFUNC$DOUBLE$$DOUBLE[$"sx}BK v+UYmo "MAINUNIT_$$_EXPFUNC$DOUBLE$$DOUBLE[$"xxbk )uyk+ MAINUNIT_$$_GETINTERVAL[n+ MAINUNIT_$$_GETINTERVAL_DT[)h+ MAINUNIT_$$_LOADDRAW[)))*+9 MAINUNIT_$$_init_implicit$2INIT$_$MAINUNITMAINUNIT_$$_init_implicit$[+: MAINUNIT_$$_finalize_implicit$  2FINALIZE$_$MAINUNITMAINUNIT_$$_finalize_implicit$[a( OSPrinters)Printers*TAPrint+comusb$,math,-utypes2.umulfit9/unlfitA0ufftH1connectN&2$MAINUNIT_$$_init$(3timemin!#(4timemax%.0*5 timescale2;=+6 timeoffset?HJ(7tempminLUW(8tempmaxYbd*9 tempscalefoq+: tempoffsets|~*; thermomin*< thermomax,= thermoscale-> thermooffset(?running+@ oldrunning,A saverequest(Bmanualb)Cmainpath/Dimagedirectory.E savedirectory  $Fbbs*G imagefile%')Himagenum)240Iprinterselected6?A(JcurdataCIK*K data_listMSU(LdatanumW`b%Mmodedmo'Nmode_rqz|&Omodeb~,P modepointer,Q timepointer#Rc1#Sc2#Tcp &Uclock &Vxmode/Wseebeckrunning/Xpeltierrunning)Ypeltierm*Z connected  -[ notconnected#\XX$&#]YY(13$^XXn5>@"_BBKM"`VOXZ#an0\eg#bn1irt(clinfitbv(dexpfitb"ea%fzero%gbeta $hT_0&iT_inf(jevaluebk get_instdir sTemp2R ~ create_r2t tempconv timeconv  thermoconv( Add_draw3   clearlines:   cleandrawE   settimemaxP   settimeminl  readUSB  " manual_remote &  settempminZ ,  settempmaxx 2 ! setthermomin 8 savep > closep D ! setthermomax J & initvaluesb P !\ savequestion2 V cRegFuncn \ k DerivProct b rlinfunc} h wexpfunc n  getinterval t #getinterval_dt z loaddraw  0$MAINUNIT_$$_init_implicit$2 4$MAINUNIT_$$_finalize_implicit$2 S     'p