SR DTue Aug 19 15:54:18 1997srioexpgi|hp_pahp-ux5.0B6  ADDEDITENTRY XVARCOMTHENAMETHETYPETHEWIDIDTHEVAR INITIALVARENTRIES EVENTVAL2 INTERP FLAGS HELP1NEWELT NUMENTS NEWENTRIES ##,  N_ELEMENTS "  #<ENTSTRNAMEWIDIDTYPE #,  N_ELEMENTS #,  KEYWORD_SET0" !#  ,  REPLICATE # == #  #  #;7 XBFTR  KRANGENPOINTFOURIERBACKFTRKRANGENPOINT SMIN SMAXTRTITARNR DR DR2 DIFF FMUL DK KKK1ITKBRBITK_VALACA SACSC1S1J##H , ON_ERROR#J,  KEYWORD_SET0"  #K,  KEYWORD_SET0"#L @ #M Ap !#O , FLOAT #P , FLOAT #S= #T  ?/ #U= #V,  N_ELEMENTS #Y== #Z== #[  , ABS #\ 8ѷ" #]88 Error from BFTR: ftr array contains bad points -> Abort, PRINT#^:#a= #d= #f, FLTARR #g, FLTARR #h== / #i==  #j==% == / ' #k==% @@ ' #l, FLTARR #m, FLTARR #n, FLTARR #o==% '#q==%#r #s== / #t, COS #u, SIN #v #w #x, TOTAL #y, TOTAL #z  = ==!PI, SQRT #{  = ==!PI, SQRT '#, PLOT#,PAUSE#, PLOT#,PAUSE# , FLTARR #= #= #===, SQRT #=, ATAN #==%#===, ABS ?fff!PI"#=%==!PI ''#:#;7 9<BFTRSET INQUIREKRANGEMETHODMOUSECUTPLOTBFTRRRANGERSHELLWINDOWWINDPARWRANGEFOURIERBACKFTRINQUIREKRANGEMETHODMOUSECUTPLOTBFTRRRANGE RSHELLWINDOW WINDPAR WRANGE KMIN KMAX RMINRMAXWMIN WMAXI_OKTMP COMMANDI_CHANGEI_FLAGFOURIER2WW"##d , ON_ERROR#h,  KEYWORD_SET0"#i @ #j Ap !#l , FLOAT #m , FLOAT #p,  KEYWORD_SET0"#q  #r @ ! #t=, FLOAT #u=, FLOAT #x ,  KEYWORD_SET0" #y  #z  ! #|= , FLOAT #}= , FLOAT # ,  KEYWORD_SET0"  # ,  KEYWORD_SET0" >L #,  KEYWORD_SET0"= #,  KEYWORD_SET0"= #,  KEYWORD_SET"#= ##,PLOTSET#** Please, click the rmin value for the bftr, PRINT#= , CURSOR# P/+=++=,PLOTSETOVER#** Please, click the rmax value for the bftr, PRINT#= , CURSOR#=/+=++=,PLOTSETOVER# The selected points are: , PRINT#)) Are you happy with these values ? [y/n] , GETYESORNOT #"#,  KEYWORD_SET"#  ##==*************************************************************, PRINT#&& Data for the Back Fourier Transform: , PRINT#00 rmin (min for the fourier transform cutting) = , PRINT#00 rmax (max ) = , PRINT#,, kmin (min for the back fourier interval) =  , PRINT#,, kmax (max =  , PRINT#&& wmin (min for the window interval) = , PRINT#&& wmax (max ) = , PRINT# rshell (R of the shell) = , PRINT# method = , PRINT#-- 0 = Standard Back Fourier Transform, PRINT#)) 1 = Fast Back Fourier Transform, PRINT# window =  , PRINT# 1 = Gaussian Window, PRINT# 2 = Hanning Window, PRINT#'' 3 = boxcar window (no window), PRINT#(( 4 = Parzen (triangular) window, PRINT# 5 = Welch window , PRINT# 6 = Hamming window, PRINT# 7 = Tukey window, PRINT# 8 = Papul window, PRINT# 9 = Kaiser window, PRINT# =     "22 windpar (width of appodization) =  , PRINT#  ".. t-value for Bessel function =  , PRINT#==*************************************************************, PRINT#00 Do you want to change these parameters ? [y/n] , GETYESORNOT #="#= #77 For changing, type "parameter = newvalue". "-1" to end, PRINT##, READ#-1"#= !#A #="Error asigning variable., PRINT#"#="#+, CUTSETXRANGE#="#   +,BFTRKRANGENPOINT!#   +,FASTBFTRKRANGENPOINT#= = == # = "#  +, WINDOW_FTRWINDOWWINDPARWRANGE#=== #=== #,  KEYWORD_SET""#=)#,PLOTSET!"=) #==+,PLOTSET!"= )!#== +,PLOTSET!"*#;7 BBOXCHART  COLORNAMESTITLEXTITLEYNOZEROYTITLEYCOLOR NAMESTITLEXTITLE YNOZEROYTITLE NYXVALYVAL I ##) , ON_ERROR#*,  N_ELEMENTS, FLOAT #,, FINDGEN  >L #-, PRINT#/ #0,  KEYWORD_SET0", INTARR  #3,  KEYWORD_SET0", SINDGEN=,  STRCOMPRESSREM #4,  KEYWORD_SET0"  #5,  KEYWORD_SET0" #6,  KEYWORD_SET0" #7,  KEYWORD_SET0" #9 ==+==,P PLOT  NODATATITLEXRANGEXTICKNAMEXTICKSXTICKVXTITLEYNOZEROYTITLE(#<  =% #>  =  =  =  = +2!Y=9CRANGE5    2!Y=9CRANGE5+ , POLYFILLCOLOR\' #D;7 G4 CLEANUPFILTER< FILTERCOMMON WFILTERWINDOWBANDTYPE BANDWIDTHCUTOFFFILTER FILTERBASE FILTEREDIMAGE FILTEREDSPECTRUM FILTERTYPE IMAGE  IMAGETRANS NVIEWS ORDER ORDERSLIDERVIEWVIEWSIZEWBANDWIDTHSLIDER WCUTOFFSLIDER XDATA PREVIOUSSTATE#n#r, WIDGET_CONTROLGET_UVALUE#u18 COLORTABLE5, TVLCT#x2!X8MARGIN18XMARGINS56#y2!Y8MARGIN18YMARGINS56#{  #{= #{= #{= #|= #~;7 jHCOLORBARBOTTOMCHARSIZECOLOR DIVISIONSFORMATMAXMINNCOLORSPOSITIONPSCOLORRIGHTTITLETOPVERTICALBOTTOMCHARSIZECOLOR DIVISIONSFORMATMAXMINNCOLORSPOSITIONPSCOLOR RIGHT TITLE TOP VERTICAL POSTSCRIPTDEVICE  OLDDEVICE THISOS BARXSTARTYSTARTXSIZEYSIZEOLDCOLOR%#d#h2!D8NAME5PS #l,  N_ELEMENTS " #y"#z2!D8NAME5 #2!VERSION8 OS_FAMILY5 #= , STRMID #,  STRUPCASE #MAC)#, SET_PLOT!WIN)#, SET_PLOT!.#X, SET_PLOT!*# =  =, WINDOWFREEPIXMAPXSIZEYSIZE#2!D8WINDOW5, WDELETE#2!D8N_COLORS5 #, SET_PLOT! #2!D8N_COLORS5 #,  N_ELEMENTS="  #,  N_ELEMENTS=" ? #,  N_ELEMENTS=" (F6.2) #,  N_ELEMENTS=" = #,  N_ELEMENTS="  #,  N_ELEMENTS=", FLOAT= #,  N_ELEMENTS="  # ,  N_ELEMENTS=" # ,  KEYWORD_SET # ,  KEYWORD_SET"# =,  REPLICATE , BINDGEN> #,  N_ELEMENTS=" ?aG > ?s33=+ !#=, BINDGEN==,  REPLICATE> #,  N_ELEMENTS="====+ #=, BYTSCLTOP #=2!D8X_VSIZE5 #=2!D8Y_VSIZE5 #==2!D8X_VSIZE5 #==2!D8Y_VSIZE5 # ="# #2!P8COLOR5 #"#, TVXSIZEYSIZE!#, CEIL, CEIL=,CONGRIDINTERP #, TV# ,  KEYWORD_SET""# ,  KEYWORD_SET" #==+===  =(A1)(A1) =+ , PLOT    CHARSIZECOLORNODATANOERASEPOSITIONXSTYLEXTICKFORMATXTICKSYRANGEYSTYLEYTICKFORMATYTICKLENYTICKSYTITLE#=+==,H AXISCHARSIZECOLORYAXISYRANGEYSTYLEYTICKFORMATYTICKLENYTICKS!!#==+=====(A1)=+,z PLOT    CHARSIZECOLORNODATANOERASEPOSITIONXSTYLEXTICKFORMATXTICKSYRANGEYSTYLEYTICKFORMATYTICKLENYTICKS#=+(A1)= =,P AXISCHARSIZECOLORYAXISYRANGEYSTYLEYTICKFORMATYTICKLENYTICKSYTITLE(!$# ,  KEYWORD_SET"##==+=====(A1)(A1)=+ , PLOT    CHARSIZECOLORNODATANOERASEPOSITIONXRANGEXSTYLEXTICKFORMATXTICKLENXTICKSXTITLEYSTYLEYTICKFORMATYTICKS#==+=,H AXISCHARSIZECOLORXAXISXRANGEXSTYLEXTICKFORMATXTICKLENXTICKS!$#==+=====(A1)=+ , PLOT    CHARSIZECOLORNODATANOERASEPOSITIONTITLEXRANGEXSTYLEXTICKFORMATXTICKLENXTICKSYSTYLEYTICKFORMATYTICKS# ="% #;7 x` COOR2MATR  SORTEDSWITCHIN_DATAZ XYSORTSWITCHXDATAYDATANX NY ZDATA J I IX IY ##I , ON_ERROR#M,  KEYWORD_SET0"#N  #N  !#P= #P= #S,SORPURGE #T,SORPURGE #U,  N_ELEMENTS #V,  N_ELEMENTS #Welements of data : =,  N_ELEMENTS, PRINT#Xelements of x : ,  N_ELEMENTS, PRINT#Yelements of y : ,  N_ELEMENTS, PRINT#Z =,  N_ELEMENTS"#[=&&Warning: Data gridding is not regular., MESSAGEINFO#a , FLTARR #b,  KEYWORD_SET"#c= #d=,  N_ELEMENTS=, TOTAL=" #e=x array replicated, MESSAGEINFO#f= ,  N_ELEMENTS=%#g  , WHERE  '! #i=,  N_ELEMENTS=, TOTAL=" #j=y array replicated, MESSAGEINFO#k= ,  N_ELEMENTS=% #l  , WHERE  ' ! #o=33Error: Input array is not sorted. Ignoring keyword., MESSAGEINFO#p!!#v= =,  N_ELEMENTS=%#x= =%#y= =%#z   "#{ =  #|!''#--COOR2MATR: Error, value not found for index:  , PRINT'#:#;7 |COPY_STRUCTUREdSTR_INSTR_OUTTAGNAMESICOMMANDITMP##0,TYPE ,TYPE="#1 99Error: An input parameter is not an structure. Quitting., MESSAGEINFO#2:#5,  TAG_NAMES #6 ,  N_ELEMENTS=%#7str_out. = str_in. #8A #9="=Error copying stucture tag: , MESSAGEINFO'#<;7 p COVAR_FIT 4COVAROUTSIGMASIGMA STATSIGMAXYAEQUATION COVAROUTSIGMASIGMA STATSIGMA TDOUBLE ERROR RES EPS NTERMS PDER A_OLDTERMPINCYFIT1YFITWDIAG ALPHA#.#0 , ON_ERROR#1, REFORM #2, REFORM #4, SIZE #5,  N_ELEMENTS= "  !  #7 ="#8, DOUBLE #9, DOUBLE #:,  KEYWORD_SET", DOUBLE #=, N_PARAMS "#>++COVAR_FIT: Usage: covar_fit,x,y,a,equation, PRINT#?:#Byfit = A0 #C "#D&&COVAR_FIT: Error interpreting equation, PRINT#E:#J ,  NR_MACHARDOUBLE #K 18EPS5, SQRT #L,  N_ELEMENTS #M =",  N_ELEMENTS , DBLARR ! ,  N_ELEMENTS , FLTARR #P #Q= =% #R #T , ABS #U "   #V #W #Xyfit1 = A0 #Y " #Z&&COVAR_FIT: Error interpreting equation, PRINT#[:#]= ' #_ #c,  KEYWORD_SET0"== !, REFORM #d,  KEYWORD_SET", SQRT #e ?= #f, HELP#g, HELP#k , INDGEN = #l,  TRANSPOSE , FLTARR=>> #m, INVERT #n, SQRT #o@@*********************** covariance results *******************, PRINT#p "Double precission used., PRINT#q,  KEYWORD_SET"Statistical sigma weight used., PRINT#r parameters: , PRINT#s sigmas : , PRINT#tcovariance matrix: , PRINT#u, PRINT#v@@******************* end covariance results *******************, PRINT#w;7 @CUTSET\CUTCOLMOUSECUTXRANGESETINSETOUT CUTCOL MOUSECUTXRANGENCOLTMPX XMINXMAXTMP GOOD TMP2X I TMP2 ##9 , ON_ERROR#;,  KEYWORD_SET0"  #<=,  N_ELEMENTS #= #?,  KEYWORD_SET0"#@ / #A= !#C=, FLOAT #D , FLOAT #G"#H=/ #I= #N,  KEYWORD_SET" #O=, PLOT#P)) Please, click the min value for the bftr, PRINT#Q , CURSOR#R P/+= ++=,PLOTSETOVER#S)) Please, click the max value for the bftr, PRINT#T =, CURSOR#U= /+= ++=,PLOTSETOVER#V The selected points are: , PRINT#Y,  KEYWORD_SET,  KEYWORD_SET" #Z, WHERE #[= =/" #\=33No good points in the selected interval. Returning the original set., MESSAGEINFO#^ #_:! #`  !#b #d ,  N_ELEMENTS, FLTARR #e  #i= =%#j "#k  #l, WHERE  #m   '#r:#s;7 CW_COLOR_INDEXSTIDVALUEDRAWSTATEOLD_WINIXCV#R#S ,  WIDGET_INFOCHILD$ =, WIDGET_CONTROLGET_UVALUENO_COPY#T2!D8WINDOW5 #V18INITED5 "#W18PWIN_ID5, WIDGET_CONTROLGET_VALUE#X, WSET#Y18SCALE52!D8X_SIZE5, FINDGEN, LONG #Z18EXTRA5 "#[18EXTRA5, WIDGET_CONTROLGET_UVALUE#\ #^=2!D8Y_SIZE5,  REPLICATE>18 START_COLOR5, TV#_18INITED=6#b18VALUE6#c18RECT_ID5, WIDGET_CONTROLGET_VALUE#d, WSET#e2!D8X_SIZE52!D8Y_SIZE5,  REPLICATE, TV#f, WSET#g18TXT_ID5( , STRTRIM), WIDGET_CONTROLSET_VALUE#h=, WIDGET_CONTROLNO_COPYSET_UVALUE#i:#j;7 CW_DROPLIST_SETIDVALUECHILDSTATE#=#? ,  WIDGET_INFOCHILD #@=, WIDGET_CONTROLGET_UVALUENO_COPY#B1 9VALUE=,  STRCOMPRESSREM6#C18DROPID5, FIX, WIDGET_CONTROLSET_DROPLIST_SELECT#E=, WIDGET_CONTROLNO_COPYSET_UVALUE#F;7 DERIVSET  PLOTSETINDERPLOTDER1XDER2XDER3X SET_NORMMIN1MAX1DER_NORM ##D , ON_ERROR#E  ,DERIV #F=,DERIV #G=,DERIV #H =,  N_ELEMENTS, FLTARR #I== #J= #K= #L  #M,  KEYWORD_SET"#N="#O #P=, MIN #P=, MAX #Q== > #R ?/ ?+, PLOTSETYRANGE#T #U, MIN #U, MAX #V = #W= , OPLOT!#Y #Z=, MIN #Z=, MAX #[=== #\=/ @+, PLOTSETYRANGE#^ #_, MIN #_, MAX #`  ?L #a= , OPLOT#c #d, MIN #d, MAX #e  >L #f= , OPLOT#j:#k;7 DISPLAYEDITORINFOPARENTINFOTEXT#6#9-- Editor is an IDL example of a simple text >>editing application. It demonstrates the ability to read and < Abort, PRINT#h:#j , FIX #k ptstart is , PRINT#l= !#q=, FINDGEN, FIX #r====,INTERPOL #s====,INTERPOL #t = ==,INTERPOL #u==%#v= " ==   #w= "== =  ' #~==  ?/, COMPLEX #=, FFT #!PI #, FINDGEN, FIX # back kstep = , PRINT#!PI, SQRT=, SQRT #= #, FLOAT #,  IMAGINARY #, WHERE #, WHERE #, WHERE #,  N_ELEMENTS #=, FLTARR #= #= #===, SQRT #= , ATAN #==%#= = =, ABS ?!PI"#=%= = !PI ''#:#;7 HFASTFTR KSTEPNPOINTRRANGEFTRIN FOURIERKSTEPNPOINTRRANGERMINRMAXNPOINT2XMINXMAX B I FF RSTEP RRCOEFF12F13 F10F11 ##H , ON_ERROR#L,  KEYWORD_SET0"  #M,  KEYWORD_SET0" =#  #N,  KEYWORD_SET0"#O  #P @ !#R  #S  #X=,  N_ELEMENTS #Y== #Z== #[=, FLTARR #_=, FINDGEN, FIX #`==== ,INTERPOL #a= =% #b=   " = = #c=  " = = ' #h= =/, FFT #i!PI #j, FINDGEN, FIX  #n!PI, SQRT @, SQRT #o , FLOAT #p ,  IMAGINARY ?/ #t, WHERE #u, WHERE #v, WHERE #w==, SQRT # ,  N_ELEMENTS, FLTARR #= #= #= #  #:#;7  FILESUBSETFILEFILEOUTLIMITSUNITINUNITOUTCOMMANDILINE##& , ON_ERROR#', LONG #(, CHECKFILE "#)FILEPOS: file  not found. Returning. , PRINT#*:#,=, OPENRGET_LUN#-=, OPENWGET_LUN#. #/  #0, EOF0"#1, READF#2= #3 =", PRINTF!#6, FREE_LUN#7, FREE_LUN#8FILESUBSET: File  written to disk., PRINT#9;7 FPFILTEREVENTHNDLR ! FILTERCOMMONEVENTBANDTYPE BANDWIDTHCUTOFFFILTER FILTERBASE FILTEREDIMAGE FILTEREDSPECTRUM FILTERTYPEIMAGE  IMAGETRANSNVIEWS ORDER ORDERSLIDERVIEWVIEWSIZEWBANDWIDTHSLIDER WCUTOFFSLIDER XDATA!RETVALINFOTEXTI TEMPDIMENSTEXTTMPITMP FFILE UNIT TMP1 TMP2 NN XPLOTDATA.##18ID5, WIDGET_CONTROLGET_UVALUE#,  N_ELEMENTS "18VALUE5 # FourierFilter)#00This example demonstrates some of the filtering 33capabilities of IDL using fourier transformations. 44The original signals are filtered to remove certain 22frequencys while letting the others pass through. 55This filtering takes place in the frequency domain. 44The fast fourier transform converts signals between  the time and frequency domains. 22In the example, there are multiple views that let 55you see the filtering process at its various stages. 33The button on top of each view lets you pick which 55type of view you want. Pressing the button displays ++a menu that lets you choose between views. ++Below the views are the different settings 77that specify what type of filter is to be used and the 44cutoff frequency for filtering and the width of the 44filter when using bandpass or bandreject filtering. ++Different signals are available and can be %%loaded. Some of the signals are two //dimensional and others are single dimensional. ))You will notice that when viewing single 33dimensional data, the filter cross section, filter 11image and shaded surface of filter views are all 22plots of the filter. This is because these views ++do not apply to single dimensional filters.+ #FourierFilter Information18TOP5, XDISPLAYFILE1GROUPTEXTTITLE!.Open...)#,LOADDATA#, RESETFILTER#= %38VIEWTYPE5 ", RESETVIEW'!.Colors) #=18TOP5,XLOADCTGROUPSILENTI!.ORDERSELECTION) #, WIDGET_CONTROLGET_VALUE# " # #, RESETFILTER!. FILTERCUTOFF) #, WIDGET_CONTROLGET_VALUE#, RESETFILTER!.FILTERBANDWIDTH) #, WIDGET_CONTROLGET_VALUE#, RESETFILTER!.FILTERSELECTION)# 18VALUE5"#18VALUE5 # , RESETFILTER!. BANDSELECTION)#18VALUE5"#18VALUE5 #, RESETFILTER#= "=, WIDGET_CONTROLSENSITIVE!=, WIDGET_CONTROLSENSITIVE!.Exit)#!18TOP5=, WIDGET_CONTROLDESTROYE!.Save as (New ASCII File)...)+#$ , SIZE #%=="#&%%The 'Save as (New ASCII File)' option##is only implemented for 1-Dim data.+ #(=, WIDGET_MESSAGEERROR #):#+18TOP5=, WIDGET_CONTROLSENSITIVE#,Original SignalPower Spectrum Filter windowFiltered Signal All of themCancel+,WMENU2 #.18TOP5=, WIDGET_CONTROLSENSITIVE#/ ":#1=*.dat,PICKFILEFILTERWRITEx #2 ":#3  =, OPENWGET_LUN#4=)#5  ,  N_ELEMENTS=%  , PRINTF'!*=)#8 ==, SHIFT, ABS #9= ,  N_ELEMENTS=%  , PRINTF'!*=)"#<==, SHIFT #== ,  N_ELEMENTS=%!  , PRINTF' !*=)%#?=,  N_ELEMENTS=%$ , PRINTF'#!* ))#B ==, SHIFT, ABS #C==, SHIFT #D ##; index, Abscissa, Original Signal,33 Log Power Spectrum, Filter window, Filtered Signal, PRINTF#G= ,  N_ELEMENTS=%(    , PRINTF''!**#K , FREE_LUN#LFOURIERFILTER: File   written to disk., PRINT#MFile   written to disk.=, WIDGET_MESSAGEINFO !.Export data to Xplot)-#Q , SIZE #R==",#S%%The 'Save as (New ASCII File)' option##is only implemented for 1-Dim data.+ #U=, WIDGET_MESSAGEERROR #V:#X ==, SHIFT, ABS #Y==, SHIFT #Z ,  N_ELEMENTS #[  , FLTARR #^= , FINDGEN= #_=, REFORM #`= , REFORM #a= , REFORM #b=& , REFORM #d=, REFORM #eIndex AbscissasOriginal SignalPower Spectrum Filter windowFiltered Signal+=-1-1,$XPLOTCOLTITLESXCOLXTITLEYTITLED!.*#k;7 RFINDTEXT  STATETOKENTEXTCURSOROFFSETPOS CURSORCOLUMNROWCURRENTCOLUMNLOCATION NEXTROW LASTROW ROW STARTPOS BUTTON ##18 WTEXTEDIT5, WIDGET_CONTROLGET_VALUE#18 WTEXTEDIT5 ,  WIDGET_INFOTEXT_SELECT #18 WTEXTEDIT5 =,  WIDGET_INFOTEXT_OFFSET_TO_XY #==<COLUMNROW #18ROW518COLUMN5, STRPOS #=/"18ROW5+ !#18ROW5= #, SIZE= = # "=/ ! , STRPOS #=/, WHERE=  # =/"  18ROW5=+ !#=18ROW5, STRPOS #=/, WHERE=  # =/"  + !=/ #==/" # 18 WTEXTEDIT5,  WIDGET_INFOTEXT_XY_TO_OFFSET # 18 WTEXTEDIT5 , STRLEN+, WIDGET_CONTROLSET_TEXT_SELECT#=, TEXTSELECTED#18 WTEXTEDIT5=, WIDGET_CONTROLINPUT_FOCUSE! #= The text "" was not found., WIDGET_MESSAGEINFO #;7 \FITSET(DEGREEMETHODPLOTVERBOSEXRANGEEXPERFITOUTDEGREE METHOD PLOTVERBOSEXRANGE SMALLSET NPOINTS SMALLSETX SMALLSETY YFIT ERROR SIGMA AMATRIXCOEFFIFITSET##L , ON_ERROR#N,  KEYWORD_SET0"  #O,  KEYWORD_SET0"= #P,  KEYWORD_SET0", MIN, MAX+ #T, CUTSETXRANGE#U ,  N_ELEMENTS #V, FLTARR #V, FLTARR #W= #W= #a=)#b     ,POLY_FIT ! =)#c  = , SVDFITYFIT ! ) #dNot implemented yet, PRINT! *#n,  KEYWORD_SET" #oDD the fitting parameters are y = c(0) + c(1)x + c(2)x^2 + ... with: , PRINT#p=% #q c() = , PRINT' #{ #|== #}=%=== '# #,  KEYWORD_SET"=,PLOTSETOVER#:#;7  FOURIERFILTER,DATAGROUPXDATA FILTERCOMMONINDATA GROUPXINDATABANDTYPE BANDWIDTHCUTOFFFILTER FILTERBASE FILTEREDIMAGE FILTEREDSPECTRUM' FILTERTYPE*IMAGE  IMAGETRANSNVIEWS ORDER( ORDERSLIDERVIEW"VIEWSIZEWBANDWIDTHSLIDER WCUTOFFSLIDER XDATASAVEDRSAVEDGSAVEDB COLORTABLE&XMARGINSYMARGINS PREVIOUSSTATE SCREENDIMS+ I VIEWOPTIONS MBAR! MENUBAR%VIEWBASE# VIEWINDEXTEMPBASEMETHODDROPLIST CONTROLBASEFILTERS  ORDERBASE) ORDERLABEL FILTERTYPES SLIDERBASE,TEMP$##Filter, XREGISTERED"!# , TVLCTGET#+ #2!X8MARGIN5 #2!Y8MARGIN5 #< COLORTABLEXMARGINSYMARGINS # =, LOADCTSILENT#2!X8MARGIN  +6#2!Y8MARGIN==+6#= #= #= #= # A # A  #= # , DEVICEGET_SCREEN#=  L"= !=   "= != # = +  #= = +  #,  KEYWORD_SET0" #=,LOADDATANEWS! #,TYPE=" #,  N_ELEMENTS, BYTARR #, BYTSCL # =/, FFT ! # #,  KEYWORD_SET0"# ,  N_ELEMENTS, LINDGEN !#, REFORM # ,  KEYWORD_SET0"!#  =<VINSTVIEWTYPEWINDOWID WINDOWNUM,  REPLICATE #18VIEWTYPE= ===+== 6#Original SignalLog Power Spectrum Filter PlotFilter Intensity ImageFilter Cross SectionShaded Surface of FilterLog Filtered Power SpectrumFiltered Signal Save View+  #Fourier Filtering=  ,  WIDGET_BASECOLUMNMBARTITLEUVALUE  # ==1\File 0\Open...0\Save as (New ASCII File)...0\Export data to Xplot2\Exit1\Edit2\Colors1\Help0\FourierFilter+ , CW_PDMENUMBARRETURN_NAMEV # =,  WIDGET_BASEROWSPACE #==%#==,  WIDGET_BASECOLUMNFRAME # ViewEventHndlr,* WIDGET_DROPLISTEVENT_PROTITLEUVALUEVALUEXSIZE #38VIEWTYPE5, WIDGET_CONTROLSET_DROPLIST_SELECT#38WINDOWID=,  WIDGET_DRAWRETAINXSIZEYSIZE6'#=,  WIDGET_BASEROWT #Filter Function===FILTERSELECTIONButterworth FilterExponential Filter Ideal Filter+,6 CW_BGROUPEXCLUSIVEFRAMELABEL_TOPNO_RELEASEUVALUE # =,  WIDGET_BASECOLUMN #  Filter Order,  WIDGET_LABELVALUE #====ORDERSELECTION,4  WIDGET_SLIDERFRAMEMAXIMUMMINIMUMUVALUEVALUEVERTICAL # Filter Type=== BANDSELECTIONLow Pass High Pass Band Pass Band Reject+,6 CW_BGROUPEXCLUSIVEFRAMELABEL_TOPNO_RELEASEUVALUE #=,  WIDGET_BASECOLUMN #, SETSLIDERS#==, WIDGET_CONTROLHOURGLASSREALIZE#=, WIDGET_CONTROLSET_VALUE#"=, WIDGET_CONTROLSET_VALUE#&= =%#' 38WINDOWID5, WIDGET_CONTROLGET_VALUE#( 38 WINDOWNUM6'#-, RESETFILTER#.=, RESETVIEW#0FilterFilterEventHndlr CleanUpFilter,*XMANAGERCLEANUPEVENT_HANDLERGROUP_LEADER#5;7 FTR  NPOINTRRANGEFTRINFTROUTNPOINT RRANGERMINRMAXNCOLTKTCHIICHI FOUR R FOUI J DR I R_VALABAXRYRCASA CSWW1WW2C1S1RFIFFMF ##J , ON_ERROR#L,  KEYWORD_SET0"#M  #N @ !#P  #Q  #T,  KEYWORD_SET0"  #V=,  N_ELEMENTS #W= #X= #Y="= ! = #Z, FLTARR #[, FLTARR #\, FLTARR #],  N_ELEMENTS #_= #a==% #b #c #d=/, SHIFT #e @=  #f=/, SHIFT=  #g =/, SHIFT =   #h, COS #i, SIN #j #k #l #m #n, TOTAL = #o, TOTAL = #p= !PI, SQRT #q= !PI, SQRT ' #v =  #w =  #x==, SQRT #y , FLTARR #z=  #{= #|= #}  #:#;7 FTRSET( (INQUIREKPOWERLBCOEFF LEEANDBENIMETHOD PLOTFOURIER PLOTWINDOWRRANGEWINDOWWINDPARXRANGESETINFOURIER&INQUIREKPOWERA_LBF_LBMETHOD' PLOTFOURIER  PLOTWINDOWRRANGE WINDOW WINDPAR XRANGE XX( YYNPOINT"XMIN XMAXRMIN RMAX LEEANDBENILBCOEFF SET_KEYWORD!COMMANDI#I_CHANGEI_OK$I_FLAGZZ1WIND ZZ2TKTCHI NPOINT2%!ICHI"J#PHI$FTRIN%NF&YMAX')##a , ON_ERROR#c  #d  #e ,  N_ELEMENTS #i ,  KEYWORD_SET0"#j , MIN #k , MAX !#m=  #n=  #q ,  KEYWORD_SET0"#r  #s @ !#u= , FLOAT #v= , FLOAT #y ,  KEYWORD_SET0"#z= #},  KEYWORD_SET0" = #,  KEYWORD_SET0" = # ,  KEYWORD_SET0" # " B  ! >L #,  KEYWORD_SET"#0"# , FLTARR #,  KEYWORD_SET0"= #,  KEYWORD_SET"#  ##==*************************************************************, PRINT# xmin = , PRINT# xmax = , PRINT# rmin = , PRINT# rmax = , PRINT#!! kpower (power of the k) = , PRINT# method = , PRINT#(( 0 = Standard Fourier Transform, PRINT#$$ 1 = Fast Fourier Transform, PRINT# window =  , PRINT# 0 = Gaussian Window, PRINT# 1 = Hanning Window, PRINT#'' 2 = boxcar window (no window), PRINT#(( 3 = Parzen (triangular) window, PRINT# 4 = Welch window , PRINT# 5 = Hamming window, PRINT# 6 = Tukey window, PRINT# 7 = Papul window, PRINT# 8 = Kaiser window, PRINT# =  =   "22 windpar (width of appodization) =  , PRINT# = "22 angle for Bessel function [deg] =  , PRINT#&& f_lb (lee & beni correction) = , PRINT#="#44 the 4 coefficients of lee&beni correction are: , PRINT#==%# a_lb() = ,  STRCOMPRESS , PRINT'#==*************************************************************, PRINT#00 Do you want to change these parameters ? [y/n] , GETYESORNOT #="#= #77 For changing, type "parameter = newvalue". "-1" to end, PRINT##, READ#-1"#= !#A #="Error asigning variable., PRINT#"#="#+, CUTSETXRANGE#  , WINDOW_FTRWINDOWWINDPAR#= #= #,  N_ELEMENTS! #,  KEYWORD_SET"#==+ ?/=+, PLOTXRANGEYRA# , OPLOT# , OPLOT#,PAUSE#!, FLTARR" #="  #=""#=#=%!#======$ #$/$ # $, SIN/" # $, COS ' #=!, FLTARR% #=% #= % #="% # & #,  KEYWORD_SET0"##%&+,FTRNPOINTRRANGE!$#% + =# ,FASTFTRKSTEPNPOINTRRANGE#,  KEYWORD_SET")#=)%#==++,PLOTSETXRAK!)=)&#==++,PLOTSETXRAK!)=)'#==++,PLOTSETXRAK!)=)(#=, MAX=, MAX+, MAX' #', HELP#==++'/'+, PLOTSETXRAYRA#==+=,PLOTSETOVER!)*#:#;7 <GAUSSIANXAFPDERZEZ##   #= @/, EXP, ABS @ #   #=, N_PARAMS=":#,  N_ELEMENTS , FLTARR #== #==== # === # = ? # :# ;7  GETNEXTWORDl SKIP_NUMBERS WTEXTEDIT SKIPNUMBERS SYMBOLS ALPHABETWORDCHARACTERSWORDDELIMITERS ENDOFLINEMARKS REGIONMARKS ALLDELIMITERSTEXT CURSOROFFSETPOS STARTPOS WORDLENGTH COLUMNROW ROWCOLUMNDELIMITERINDEXFOUND FIRSTCHARPOS#y#} 0123456789 #~55_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ #,  KEYWORD_SET " ! # (){}/@#&!?*%^~\|-+=<>.[]:,  #;$ #'" #+ # , WIDGET_CONTROLGET_VALUE# ,  WIDGET_INFOTEXT_SELECT #= =  #= # ,  WIDGET_INFOTEXT_OFFSET_TO_XY #=  #=  # =, FINDDELIMITERSTART_OF_LINE  #"# , FINDDELIMITER #"#+ # =, FINDDELIMITEREND_OF_LINE/ #= #,  WIDGET_INFOTEXT_XY_TO_OFFSET #  +, WIDGET_CONTROLSET_TEXT_SELECT#=, WIDGET_CONTROLINPUT_FOCUSE#;7 GETTEXTP  FILENAMESTATEFILENAMEUNITERROR BUTTONPUSHEDMAXLINES LINEINCREMENT TEXT LINEINDEX  LINEOFTEXT #o#s, REQUESTTOSAVE#v,  KEYWORD_SET0"18 WEDITORWINDOW5,PICKFILEGROUP #{, STRLEN "#~18FILENAME6#18 WEDITORWINDOW5 IDL Editor - 18FILENAME5, WIDGET_CONTROLTLB_SET_TITLE#18 WEDITORWINDOW5 , WIDGET_CONTROLHOURGLASST#18FILENAME5=, OPENRERRORGET_LUN#=" !ERR_STRING Cannot open the file 18FILENAME5+, WIDGET_MESSAGE !#  #  #, STRARR #= # #, EOF0"# , READF#  #= #"#, STRARR+ # !#=== #, FREE_LUN#18 TEXTEDITTED=6#18 WTEXTEDIT5, WIDGET_CONTROLSET_VALUE #;7  GET_FILEINFOSTATE SPECHANDLEFILELIST#/#0 , ON_ERROR#1unknown #2 ==18MCA5=18MCA5,4 SPEC_ACCESSCOMPRESSFILENAMELISTMCDATANO_EMPTYSTR #618FILE5, WIDGET_CONTROLSET_VALUEN#7" #818LIST5, WIDGET_CONTROLSET_VALUEN#9:#:;7 LEGENDh..-BOXCHARSIZECOLORSCORNERS DELIMITERFILLHELP HORIZONTAL LINESTYLEMARGINNUMBERPOSITIONPSPACINGPSYMSPACING TEXTCOLORSUSERSYM VECTORFONTVERTICALITEMS BOXCHARSIZECOLORSCORNERS DELIMITER)FILLHELP  HORIZONTAL' LINESTYLE MARGIN! NUMBER POSITION PSPACING PSYMSPACING TEXTCOLORSUSERSYM VECTORFONTVERTICAL,NINP(NLNVNSTRNSZTSYMLINEXSPACING&YSPACING.POS YOFF+MAXX X0*!Y0 "Y##X"$XT$%I&NUM 'EXPAND(XP)YP*WIDTH%+BOTTOM,YWIDTH-@## , ON_ERROR#,  KEYWORD_SET"#legend, DOC_LIBRARY#:#,  N_ELEMENTS #,  N_ELEMENTS # ,  N_ELEMENTS #,  N_ELEMENTS #+, MAX #=, STRTRIM # "((No inputs! For help, type legend,/help., MESSAGE#="#,  REPLICATE !#, SIZE #=  "EEFirst parameter must be a string array. For help, type legend,/help., MESSAGE#"##Must have number of items equal to , MESSAGE#== #=" Must have 0 or  elements in psym array., MESSAGE#=" Must have 0 or  elements in linestyle array., MESSAGE# ,  N_ELEMENTS" , INTARR #,  N_ELEMENTS" , INTARR #,  N_ELEMENTS" ,  REPLICATE #,  N_ELEMENTS="#,  N_ELEMENTS="= !#,  N_ELEMENTS="0 #,  N_ELEMENTS="= # ,  N_ELEMENTS=" ? #,  N_ELEMENTS=" #,  N_ELEMENTS="2!P8CHARSIZE5 #="= #,  N_ELEMENTS=" ? # ,  N_ELEMENTS="  #2!D8 X_CH_SIZE52!D8X_SIZE5, FLOAT #2!D8 Y_CH_SIZE52!D8Y_SIZE5, FLOAT #2!X=9WINDOW52!X=9WINDOW5"#= ==+=,$ PLOTNODATANOERASEXSTYLEYSTYLEL#2!X8WINDOW5, MIN2!Y8WINDOW5, MIN2!X8WINDOW5, MAX2!Y8WINDOW5, MAX+ # ,  N_ELEMENTS="==+/+ # ,  N_ELEMENTS="= #,  N_ELEMENTS="!COLOR, INTARR #,  N_ELEMENTS="!COLOR, INTARR #,  KEYWORD_SET #,  N_ELEMENTS=" ===+==+==+==++= # > #= #=  ! #=  =" #"# #!$ #"(#=% #=&=%'#&="" ==' !# ' #&="$ =' #&="%=( !&=( #( '=%% '!#=&=%=#"*!$ !+"# #$$ ### #&=&", ==' !- ' #&=". =' #&="/=( !0=( #$( ', INDGEN) #&='="1$% @) ##', INTARR* #&"2** #&="3#), MIN), MAX+) #*, MIN*, MAX+* #& "4&, USERSYMCOLORFILL|#&"6#'="5$%=) #)*&+&==,( XYOUTSALIGNCOLORNORMSIZEWIDTHE!7#& ="7)*&=& &,. PLOTSCOLORLINESTYLENORMALPSYMSYMSIZE#"8$%$ !9), MAX$ #":$$ #$#+=&, XYOUTSCOLORNORMSIZEWIDTH#$+$ #+=";$=$ #$#&+=&, XYOUTSCOLORNORMSIZEWIDTH#$+$ #0&="<$=$ #$   ')# = $ #= # #">, !?=, #= ,=/- #$#- #+ #"@$  $$+#==--=+=, PLOTSNORM#:#;7 (LIN_REG 0 0X$Y%FBETA0FBETA1NPARNN1'SXX SXY MEANX MEANY SYY C& FSIGMA2 SSRSSE*MSRMSE.FO0FVAL! SE_FBETA1 SE_FBETA0PERCALPHABETA1LOW  BETA1HIGH SIGMA2LOW SIGMA2HIGHR2ERRDERR-IREPMAX#I" IREP !J "XNEW#YNEW($CHECK%NN&YNEWFIT)'YNEWMEAN(SSLOF+)SSPE*DOF_PE+DOF_LOF,,MSLOF/-MSPE.FO_LOF/#+#, , ON_ERROR#.= #/,  N_ELEMENTS #0,  N_ELEMENTS #1"#2++LIN_REG: Dimensions not compatible. Return., PRINT#3:#@55**************** LIN_REG results ********************, PRINT#C=, TOTAL, TOTAL= #D, TOTAL, TOTAL, TOTAL #E, TOTAL #F, TOTAL #G #H   #KRegression slope: fbeta1 = , PRINT#LRegression intercept: fbeta0 = , PRINT#M The least square fit is: yfit =  ,  STRCOMPRESSREMX + =,  STRCOMPRESSREMX x, PRINT#U=, TOTAL, TOTAL= #V  #W  #_****> testing significance of regression... , PRINT#j22 Source of | Sum of | Degrees of | mean | Fo , PRINT#k22 Variation | squares | freedom | square| , PRINT#q #r  #s= #t #u #w Regression =,  STRCOMPRESSREMX 1 =,  STRCOMPRESSREMX =,  STRCOMPRESSREMX, PRINT#y Residual =,  STRCOMPRESSREMX ==,  STRCOMPRESSREM =,  STRCOMPRESSREM, PRINT#{ Total  =,  STRCOMPRESSREM ==,  STRCOMPRESSREM, PRINT#} =L=,F_TEST #~$$ And Fval = F_TEST(0.05,1,n-npar) is, PRINT#"&& *** We reject Ho -> MAY BE LINEAR ***, PRINT#"-- *** We failed to reject Ho -> NON LINEAR ***, PRINT#, SQRT # ? =, SQRT #**> Interval estimation..., PRINT#)) Standard error of the slope fbeta1: , PRINT#)) Standard error of the intercept fbeta0: , PRINT# B # B= #=, STUDENT_T, SQRT #=, STUDENT_T, SQRT # =,  STRCOMPRESSREMX <= beta1 <= =,  STRCOMPRESSREMX, PRINT#=,CHI_SQR #==,CHI_SQR # =,  STRCOMPRESSREMX <= sigma^2 <= =,  STRCOMPRESSREMX, PRINT#  #$$ Coefficient of determination R^2: , PRINT# #, SQRT #  #= =%#=! # ="=% # "" #!=! ' #!" ! ' #="#**> Testing the Lack of Fit..., PRINT#=, FLTARR# #==# #, FLTARR$ #= =%#= #=/"#=  # #=  $ # ="=%# ""#=  # #= = #=# #="=/# #= #= "$ ''#=#=, WHERE% #%## #%$$ #=#,  N_ELEMENTS& #=#, REFORM' #&, FLTARR( #= &=%  $, TOTAL= #( '#=#('=, TOTAL) #)* #&+ #&, #),- #*+. #-./ #22 Source of | Sum of | Degrees of | mean | Fo , PRINT#22 Variation | squares | freedom | square| , PRINT# Regression =,  STRCOMPRESSREMX 1 =,  STRCOMPRESSREMX =,  STRCOMPRESSREMX, PRINT# Residual =,  STRCOMPRESSREMX ==,  STRCOMPRESSREM =,  STRCOMPRESSREM, PRINT# (Lack of Fit))=,  STRCOMPRESSREM ,=,  STRCOMPRESSREM -=,  STRCOMPRESSREM /=,  STRCOMPRESSREM, PRINT# (Pure Error) *=,  STRCOMPRESSREM +=,  STRCOMPRESSREM .=,  STRCOMPRESSREM, PRINT# Total  =,  STRCOMPRESSREM ==,  STRCOMPRESSREM, PRINT#=,+,F_TEST #** And Fval = F_TEST(0.05,dof_lof,dof_pe) is, PRINT#/".. *** The regression function is not linear ***, PRINT#/".. *** We failed to demostrate non linearity ***, PRINT#55**************** LIN_REG results ended **************, PRINT#;7 28LOADDATA|NEW FILTERCOMMONNEWFILE BANDTYPE BANDWIDTHCUTOFFFILTER FILTERBASE FILTEREDIMAGE FILTEREDSPECTRUM FILTERTYPE IMAGE  IMAGETRANSNVIEWS ORDER ORDERSLIDERVIEWVIEWSIZEWBANDWIDTHSLIDER WCUTOFFSLIDER XDATANEWDATADATADESCDATADIMFILEOK #S#X =""Please Select Sample For Filteringexamplesdata+,BGETIMAGEDESCRIPTIONDIMENSIONSONE_DIMSUBDIRECTORYTITLETWO_DIM#], SIZE  = #_" #`,  KEYWORD_SET"#a=="#c= "#e=== #f=== #h==, REBIN !#j="#l+ #n==,CONGRID !#p !#r #u2!D8N_COLORS5 " 2!D8N_COLORS5=, BYTSCLTOP #w,  KEYWORD_SET0" , SETSLIDERS#{ ,  KEYWORD_SET"  =/, FFT #~= #= #;7 8<MKPULL_PULLDOWN  PARENT UNITDATAIDXNFONTLABELVALUERETBUT ## " #,MKPULL_GETLINE #=/)#:! )#"#,  WIDGET_BUTTONFONTUVALUEVALUE !#,  WIDGET_BUTTONUVALUEVALUE ! =) #"# ,  WIDGET_BUTTONFONTMENUVALUE ! #=,  WIDGET_BUTTONMENUVALUE # ,MKPULL_PULLDOWN! =) #:! *!#;7 9dPAUSETMP##/ , ON_ERROR#0 #0 Type for next page , READ#1:#2;7 zPLOTFILEH&H AXISCOLORAZCHARSIZECOLORERRPLOTEXECUTE FREQUENCYGAUSSFITHISDATAHISTOKINDLEGEND LINESTYLENBINSNDATANODATAPSYMSHIFTVALTHICKTICKLENTITLEVALNDATAX2AXISXCOLXLOGXRANGEXTITLEXYRANGEY2AXISYCOLYLOGYRANGEYTITLEZAXISZLOGZRANGEFILE AC PAXISCOLOR)AZ4CHARSIZE*PCOLORERRPLOTPEXECUTE FREQUENCY GAUSS/ HISDATA HISTO; KIND LEGEND LINESTYLENBINS.NDATANODATA'PSYM(SHIFTVALATHICKTICKLENTITLEHVALNDATA8X2AXISXCOLXLOGXRANGE7XTITLEXYRANGEY2AXIS YCOLFYLOG" YRANGE>!YTITLE$"ZAXIS%#ZLOG&$ZRANGE%NPAR@& PTICKLENOLD' PCHARSIZEOLD(COLOR?) AXISCOLOR*I0+ INPUT_TYPE<,NCHILD-HANDLE .IMORE3/NXX20NYY1IND-2A_OLD93ARR164ARR2B5XRANGE1=6W7BINSIZE8HY,9HX::J ; XRANGEOLD< YRANGEOLD#= COLOR_OLDG> NPOINTSET1?SUR@ARR3+AAAEBTMPSETCAFIT5DYFIT!ECOMMANDFTMPDGU# # , ON_ERROR#, N_PARAMS& #& "# Usage: plotfile,file, MESSAGEINFO#:#,  KEYWORD_SET0"  #,  KEYWORD_SET0"  #",  KEYWORD_SET0" " #,  KEYWORD_SET0"= #,  KEYWORD_SET0" = #,  KEYWORD_SET0" = # ,  KEYWORD_SET0" = #,  KEYWORD_SET0" = #,  KEYWORD_SET0" = + #,  KEYWORD_SET"#2!P8TICKLEN5' #2!P8TICKLEN6#,  KEYWORD_SET"#2!P8CHARSIZE5( #2!P8CHARSIZE6#,  KEYWORD_SET0" ? #,  KEYWORD_SET0"#,  KEYWORD_SET0"2!P8COLOR5) #,  KEYWORD_SET"#, FLTARR) #)= ) !#) #,  KEYWORD_SET", FIX* #2!D8NAME5PS"#,  KEYWORD_SET0"#,  KEYWORD_SET")="=) #,  KEYWORD_SET"*="=* !#=+),  N_ELEMENTS=%+) "+=+)) '#, SIZE, SIZE= = , #, "#, READ_ASCII !$#, "##,,  N_ELEMENTS=,  HANDLE_INFO""#=,  HANDLE_INFONUM_CHILDREN- #-="!,  HANDLE_VALUE!"#=,  HANDLE_INFOFIRST_CHILD. #.,  HANDLE_VALUE#=/ !$# #,  KEYWORD_SET"'#, FIX #=,  N_ELEMENTS0 #=,  N_ELEMENTS1 #0, LINDGEN2 #3 #10, FLTARR #=+=,  N_ELEMENTS=%&#++23 '%#=4 #=5 # ,  KEYWORD_SET"-#,  KEYWORD_SET0"(  #,  KEYWORD_SET0")4, MIN4, MAX+6 !*6 #4==7 #=6=6, FLOAT8 #478=6=6, HISTOGRAMWBINSIZEMAXMIN9 #, FLTARR: #=;=%,;=68=8;: '+#:4 #95 #   #=:,  N_ELEMENTS, FLTARR #=: #=9 #,  KEYWORD_SET".#2!X8RANGE5< #2!X8RANGE6#!,  KEYWORD_SET"/#!= #2!Y8RANGE!6#,  KEYWORD_SET"0#2!X8RANGE5< #!= #2!X8RANGE6#2!Y8RANGE6#,  KEYWORD_SET0"7#,  KEYWORD_SET0"7#,  KEYWORD_SET ="1#)> #*) # ="24=5=") ,F PLOT  COLORLINESTYLEPSYMTHICKTITLEXLOGXTITLEYLOGYTITLE#  ="34=5=),$ OPLOTCOLORLINESTYLEPSYMTHICKH#  = "44=5=")=,@ PLOT COLORLINESTYLEPSYMTHICKTITLEXTITLEYLOGYTITLE# "54=5=")=,@ PLOT COLORLINESTYLEPSYMTHICKTITLEXLOGXTITLEYTITLE# "64=5=")==,F PLOT  COLORLINESTYLEPSYMTHICKTITLEXLOGXTITLEYLOGYTITLE#,  KEYWORD_SET ="7#>) #4=5=),$ OPLOTCOLORLINESTYLEPSYMTHICKH# ,  KEYWORD_SET"E#!=,  N_ELEMENTS? #"?, FLTARR@ ##=;=%9#$;;?;??=5@ '8#&,  KEYWORD_SET"<#',  N_ELEMENTS":#(=,,Inconsistent number of elements in VALNDATA , MESSAGEINFO#), INDGENA !;#+A !=#., INDGENA #0,  KEYWORD_SET0"B#1,  KEYWORD_SET0">  #2#,  KEYWORD_SET0"?=# #3%,  KEYWORD_SET0"@5, MIN5, MAX+% #4$,  KEYWORD_SET0"A=$ #5@A=?=4=="#%$,H SURFACE AZLINESTYLENODATASAVEXTITLEYTITLEZAXISZLOGZRANGE#9=;=%D#:;@B #;,  KEYWORD_SET0"D#<;A=?=4B==;),$ PLOTSCOLORDATALINESTYLET3DS'C#E/,  KEYWORD_SET,  KEYWORD_SET0"H#F=+-=%G#G.=,  HANDLE_INFOSIBLING. #H.C,  HANDLE_VALUE#IC,  N_ELEMENTS="G=C=C, OPLOT'F#O ,  KEYWORD_SET"J#P45D, GAUSS_FITE #Q,  KEYWORD_SET0"I4E), OPLOTCOLORLINESTYLE#S Sigma of the gaussian is : =D, PRINT#T FWHM of the gaussian is : @{=D, PRINT#Z ,  KEYWORD_SET"K#[ =,  STRCOMPRESSREM"K#\legend, F #]F, PRINT#]FAG #a,  KEYWORD_SET"O,  N_ELEMENTS="LAG !O +,  N_ELEMENTS=%N+AG 'M#i,  KEYWORD_SET"Q=="Q== 57," AXISYAXISYRANGEYSTYLEYTICKLEND#l,  KEYWORD_SET"R=="R===P," AXISXAXISXRANGEXSTYLEXTICKLEND#r,  KEYWORD_SET"T=="T#t==+, MAX4,  N_ELEMENTS"S#u=##Error column number does not exist., MESSAGEINFO!T#x====,ERRPLOT#2!X8RANGE=6#2!Y8RANGE=6#,  KEYWORD_SET"U2!P8CHARSIZE(6#:#;7 PLOTSET  LINESTYLEOVERPSYMTITLETIT_STRXRANGEXTITLEXYRANGEYRANGEYTITLESET LINESTYLEOVERPSYMTITLE TITLE_STRXRANGEXTITLE XYRANGE YRANGE YTITLE ARR1 ARR2 OFF1 OFF2##T , ON_ERROR#U,  KEYWORD_SET"#V,  KEYWORD_SET0"18TOP5 #W,  KEYWORD_SET0"18X5 #X ,  KEYWORD_SET0"18Y5 #\,  KEYWORD_SET0,  KEYWORD_SET0" #],  KEYWORD_SET0,  KEYWORD_SET0" #^,  KEYWORD_SET0 ,  KEYWORD_SET0" #`,  KEYWORD_SET0"  #a,  KEYWORD_SET0" = #e= #f  #j,  KEYWORD_SET0" #k=, FLTARR #l = , MAX , MIN, ABS #m , MIN  , MAX + #o ,  KEYWORD_SET0"#p=, FLTARR #q=  , MAX , MIN, ABS #r ."=  , MAX #s , MIN , MAX+ #u,  KEYWORD_SET"#v #w #z,  KEYWORD_SET0"#{    = = ,L PLOT  LINESTYLEPSYMTITLEXRANGEXSTYLEXTITLEYRANGEYSTYLEYTITLE!#  , OPLOTLINESTYLEPSYME#:#;7 POLSPL , XYWNPTSXLXH NRC NCDF A NBS XK J INE_IDLNKIBLNSNS1TN1 NCOLNKIKI1NM1MNINI1@##q , ON_ERROR#u , FLTARR #u $ %, DBLARR #u  , INTARR #v  , DBLARR #v=, DBLARR #w  #w= #w= #w= #w= #w= #x= #x= #z  #% #{  #|= =%  ''#= #== #=% #, FIX #== #" ! # # # ' #== #= #== #== #=%# ?= #="== #  #= = #=%#"!# ? #= # %  =  '# %# %#       '#      '''#= = #= #="!*#=%)#= #  #= = #=/ #= #%=   '#= #=/ #= #" !##%"= = '!#= #=  #= = #= #= #%%=   '$#= #= #= #"&!)#%(#= = '''#=%.#= #= %-    ','+#= #=%<#= # # , ABS # %3#  , ABS"1!2#  #  , ABS '0#"4!7#= %6#   #    #  '5# %;#    #%:     '9'8'/#   #=%@# #  #= # %?    '>#  '=#:#;7 POLSPL_EVALUATE  SET2XLXHC NCNRFIT XVAL YVALK I J CSTART ##J , ON_ERROR#L  #O  , MIN #P=, MAX #T== #U= #V= =%  = '#W== #X== #\= =,  N_ELEMENTS=% #]= % #^=  =  " #_= =, TOTAL #`=  #a= #b=  %    = '#c=  #d=  ''#i:#j;7 PPOSTEDGE"""NOMOUSEUNITSETINFITNOMOUSEUNIT SET2XLXHCNCI_MENU OPTIONS X1 X2 TMP ACTIONXRANGE!NR STEPIXLLNCCCUTSTEXTCUTSCOEFFS TEXTCOEFFSIOERRITMP YLL"SET22TEXTNPTSW XX YY!4##E , ON_ERROR#G  #H #I  , DBLARR #I=, DBLARR #I $, DBLARR #J=, DBLARR #L,  KEYWORD_SET"#M:: Please select for the post-edge multi-polynomial spline: , PRINT#N22 [0] default option: 3 pols, degree=3, equi-spaced, PRINT#O?? [1] user selected # of pols and degrees. Hand typing selection, PRINT#P:: [2] user selected # of pols and degrees. Mouse selection , PRINT#Q[Default=0] ? =,GETVALUE !#S--default option: 3 pols, degree=3, equi-spaced::user selected # of pols and degrees. Hand typing selection44user selected # of pols and degrees. Mouse selection99Please select for the post-edge multi-polynomial spline: + #X== ,WMENU2 #[ =)#`=, MIN #`=, MAX #a88Minimum and maximum values of the current spectrum are: , PRINT#b [ ,  STRCOMPRESSREMX, =,  STRCOMPRESSREMX], PRINT#c,  KEYWORD_SET0"#d  <X1X2 #e =MinimumMaximum+Spline limits:,"XSCRMENUACTIONNOTYPETITLESWTITLE#gDO":#h 18X15 #h 18X25 ! #j44 Input minimum value for the spline [Default=0.0] ? ,GETVALUE #k-- Input maximum value for the spline [Default= =,  STRCOMPRESSREMe] ?  ,GETVALUE #n  + #u  #v== #w= = #x==  #y= = @@ #z==% #{= #|= ' !'=)#,  KEYWORD_SET"#$$ How many intervals of the spline ? , PRINT#, READ#.. Please, input the extrema of the intervals ? , PRINT#==%#, READ# '#, HELP#++ Please, input the degree of polynomials : , PRINT#=%# polynomial  = ? , PRINT#, READ# '!#= <NR # =Number:+%% How many intervals of the spline ? :,"XSCRMENUACTIONNOTYPETITLESWTITLE#DONT":# 18NR5 #=, MIN #=, MAX # 18NR5=, FINDGEN 18NR5=, FLOAT #    #, VECT2STRING #, INDGEN== #, VECT2STRING #<CUTSCOEFFS # = Intervals: Coefficients:+ Interval limits: <,,XSCRMENUACTIONFIELDLENNOTYPETITLESWTITLE#DONT":# xl = [0., 18CUTS5]A #nc = [0, 18COEFFS5]A #=%#= #= '!'=)&#,  KEYWORD_SET"#$$ How many intervals of the spline ? , PRINT#, READ#** Please, click on the graph to select the =, FIX"" points that defines the intervals, PRINT!#= <NR # =Number:+%% How many intervals of the spline ? :,"XSCRMENUACTIONNOTYPETITLESWTITLE#DONT":# 18NR5 #=((Please, click on the graph to select the=, FIX=,  STRCOMPRESSREM points thatdefine the intervals+, WIDGET_MESSAGEINFO #==%#= , CURSOR#+==,PLOTSETOVERPSYM# selected point is : , PRINT# '#,  KEYWORD_SET"!#++ Please, input the degree of polynomials : , PRINT#=% # polynomial  = ? , PRINT#, READ# '!##, INDGEN== #, VECT2STRING #<COEFFS # = Coefficients:+ Polynomial coefficients:,"XSCRMENUACTIONNOTYPETITLESWTITLE#DONT"":#nc = [0, 18COEFFS5]A #=%%#= #= '$!'*#=+ #, CUTSETXRANGE#,  KEYWORD_SET0"*# Number of fitting points: =,  N_ELEMENTS,  STRCOMPRESS #=,  STRCOMPRESSREMX polynomials used for fitting: ++ # degree min max + #=%) =,  STRCOMPRESSREM =, FIX=,  STRCOMPRESSREM =,  STRCOMPRESSREM =,  STRCOMPRESSREM+ '(#Multispline Info, STRLEN, MAX,  N_ELEMENTS=,& XDISPLAYFILE1HEIGHNOSCROLLTEXTTITLEWIDTHW!-# Number of fitting points: =,  N_ELEMENTS, PRINT# polynomials used for fitting: , PRINT#66 # degree min max , PRINT#=%,=, PRINT'+#=,  N_ELEMENTS #=, FLTARR #=  ? #=, FLTARR #=, FLTARR! #== #==! # !, POLSPL#,  KEYWORD_SET"4#;, PRINTF#; polynomial spline, PRINTF#;, PRINTF# xrange = [=,], PRINTF#cutset,set2,set22,xrange=xrange, PRINTF#npts = n_elements(set22(1,*)), PRINTF#< tmp.lis' (to create a text file),  WIDGET_LABELALIGN_LEFTVALUE #=//'type %F >> tmp.lis' (to append to a text file),  WIDGET_LABELALIGN_LEFTVALUE ! #=++'cat %F | lp' (to send the text to printer),  WIDGET_LABELALIGN_LEFTVALUE #=**'cat %F > tmp.lis' (to create a text file),  WIDGET_LABELALIGN_LEFTVALUE #=..'cat %F >> tmp.lis' (to append to a text file),  WIDGET_LABELALIGN_LEFTVALUE #=//'a2ps %F | lp' (to use a2ps formatting program),  WIDGET_LABELALIGN_LEFTVALUE #<COMMAND # <WIDSTEXTIFILEFILE #=,  WIDGET_INFOCHILD , WIDGET_CONTROLSET_UVALUE#=, WIDGET_CONTROLREALIZEU# print_ascii,XMANAGERGROUP_LEADER#;7 4TPRINT_ASCII_EVENT   PRINTASCIIEVENTCOMMAND EVENTUVALUESTATEIDSTATETMPFILE UNITIICOMMAND1#>#A , ON_ERROR#C18ID5, WIDGET_CONTROLGET_UVALUE#E,  N_ELEMENTS " #JCANCEL)#L 18TOP5, WIDGET_CONTROLDESTROYU#M:!OK)#P18HANDLER5=,  WIDGET_INFOCHILD #Q=, WIDGET_CONTROLGET_UVALUENO_COPY#S18WIDS8COMMAND5, WIDGET_CONTROLGET_VALUEE#T= #U18IFILE5=" #V2!D8NAME5WIN" pr_ascii.txt !print_ascii.txt #X=Dumping text into file , MESSAGEINFO#Y=, OPENWGET_LUN#Z=18TEXT5,  N_ELEMENTS=%19TEXT5, PRINTF'#[, FREE_LUN! #\18FILE5 #]%F  , STRSUBSTITUTE #^= Executing: , MESSAGEINFO#^, SPAWN#_18IFILE5=" #`2!D8NAME5WIN" del  ! /bin/rm  #b= Executing: , MESSAGEINFO#b, SPAWN#d=18TOP5, WIDGET_CONTROLDESTROY#e:!.!*#j;7 7 REQUESTTOSAVE`STATE BUTTONPUSHED#X#[18 TEXTEDITTED5 "#^ Save changes to "18FILENAME5"+, WIDGET_MESSAGEQUESTION #bYES"#e18FILENAME5Untitled", SAVEASTEXT!,SAVETEXT#l;7 8 RESETDISPLAY|NOPREV CSCICALCBLOCKNOPREVCCURRENT CDISPLAYIDCDISPLAYSTRINGCLASTOPERATIONCMEMORY CPREVIOUS#P#T,  KEYWORD_SET " #W #Y;7 F@ RESETFILTER FILTERCOMMONFILTERCOMMON_DISTBANDTYPE BANDWIDTHCUTOFFFILTER FILTERBASE FILTEREDIMAGE FILTEREDSPECTRUM FILTERTYPEIMAGE IMAGETRANS NVIEWS ORDER  ORDERSLIDERVIEWVIEWSIZEWBANDWIDTHSLIDER WCUTOFFSLIDER XDATADISTFUN IMAGESIZE COUNTZEROESI ##  #= # , SIZE #,  N_ELEMENTS ,  N_ELEMENTS"#= "#=, FINDGEN #= !#=,DIST #= ?6C- #=, WIDGET_CONTROLHOURGLASS#=) #=" ? ?   ! =" ===  ! #= # , WHERE #="  8ѷ #===  #=" = !=)#="  /, EXP !="= /, EXP !#= #=  /, EXP # "= !=)#=" !="= !=" @= !== !.#ResetFilter: Bad Filter Type, MESSAGE!*# = =%38VIEWTYPE5=", RESETVIEW'# ;7 \4 RESETVIEW  FILTERCOMMON WINDOWINDEXBANDTYPE BANDWIDTHCUTOFFFILTER FILTERBASE FILTEREDIMAGE FILTEREDSPECTRUM FILTERTYPEIMAGE IMAGETRANS NVIEWS ORDER ORDERSLIDERVIEWVIEWSIZEWBANDWIDTHSLIDER WCUTOFFSLIDER XDATA IMAGESIZE  GRID_SIZE  THINFILTER"##$38 WINDOWNUM5, WSET#'38VIEWTYPE5 " d, ERASECOLOR#* , SIZE #,38VIEWTYPE5 )#0= " = ==, TVSCL! ==, PLOTXSTYLEYSTYLE!"=) #9=="  , ABS, ALOG====, SHIFT====, TVSCL!  , ABS==, SHIFT=, PLOT_IOXSTYLE!"=)#F   #H==" #J,CONGRID #L==, SHIFT = = , SURFACEXSTYLEYSTYLEZSTYLE!#P==, SHIFT=, PLOTXSTYLE#R, EMPTY!" )#X=="====, SHIFT====, TVSCL!#^38VIEWTYPE=6#`, RESETVIEW!"= )#g=="#h===, SHIFT=, PLOTXSTYLE#j, EMPTY!#m38VIEWTYPE=6#o, RESETVIEW!" )#v 0 #x=="#z,CONGRID #|==, SHIFT= = = ,  SHADE_SURFXSTYLEYSTYLEZSTYLE!#==, SHIFT=, PLOTXSTYLE#, EMPTY!" )#,  N_ELEMENTS="  #==", ABS ., ALOG====, SHIFT====, TVSCL!, FLOAT, ABS +==, SHIFT==, PLOT_IOXSTYLEYSTYLE!" ) #,  N_ELEMENTS=" =, FFT, FLOAT #=="====, TVSCL!, PLOT!"=)!!".!"*#;7 ^ SAVEASTEXT@STATEFILENAME## 18 WEDITORWINDOW5,PICKFILEGROUPWRITE #, STRLEN "#18 WEDITORWINDOW5 IDL Editor - , WIDGET_CONTROLTLB_SET_TITLE#18FILENAME6#,SAVETEXT#;7 cSAVETEXTHSTATEUNITERROR BUTTONPUSHEDTEXT LINECOUNT LINEINDEX##18 WEDITORWINDOW5 , WIDGET_CONTROLHOURGLASST#18FILENAME5=, OPENWERRORGET_LUN# " !ERR_STRINGCan not display the file:18FILENAME5+, WIDGET_MESSAGE !#18 WTEXTEDIT5, WIDGET_CONTROLGET_VALUEE#, SIZE=  #==%, PRINTF'#, FREE_LUN#18 TEXTEDITTED=6#;7 SCICALCPAI!FONTGROUP CSCICALCBLOCK WTRANSBLOCKFONT4GROUP*CCURRENT CDISPLAYIDCDISPLAYSTRINGDCLASTOPERATION?CMEMORY  CPREVIOUS(CONV1 CONV2 WSCICALCBASEROW1/SPECIALSLCOLSL2COLSMCOL SR4COLSR4ROW SRCOL S4COL0 SQRT X2 X3<X1ALOGALOG10 EXP&SIN#COS$TAN%PICASIN"ACOSATANSINH6COSHTANH:FACT5 TOGGLEBASE9DEGREEARADIAN, KEYPAD+!LCOLI"RCOL #R2COL.$R3COL)%ROW23&SEVEN'EIGHT>(NINE8)ROW37*FOUR+FIVE,SIX-ROW4;.ONE/TWO 0THREE'1ROW52ZERO3POINTE4EQUALS5CLEAR6MULT27DIV18MINUS@9PLUSF:CE;POWER-<PLUSMIN==MEMPLH>MEMRB?MEMCG@##Scicalc, XREGISTERED ":#"IDL Calculator ,  WIDGET_BASECOLUMNTITLE #),  KEYWORD_SET="*20 #,=,  WIDGET_BASEROW #.0 ==DISPLAY,*  WIDGET_TEXTALL_EVENTSFONTFRAMEUVALUEVALUE #1==,  WIDGET_BASEFRAMEROW #2=,  WIDGET_BASECOLUMN #3=,  WIDGET_BASECOLUMN #4=,  WIDGET_BASECOLUMN #5====,  WIDGET_BASECOLUMNSPACEXPADYPAD #6===,  WIDGET_BASEROWXPADYPAD #7 =,  WIDGET_BASECOLUMN #8 =,  WIDGET_BASECOLUMN #;SQRTSQRT,  WIDGET_BUTTONUVALUEVALUE #<X^2X^2,  WIDGET_BUTTONUVALUEVALUE #=X^3X^3,  WIDGET_BUTTONUVALUEVALUE #>1/X1/X,  WIDGET_BUTTONUVALUEVALUE #BLNALOG,  WIDGET_BUTTONUVALUEVALUE #CLOGALOG10,  WIDGET_BUTTONUVALUEVALUE #DEXPEXP,  WIDGET_BUTTONUVALUEVALUE #HSINSIN,  WIDGET_BUTTONUVALUEVALUE #ICOSCOS,  WIDGET_BUTTONUVALUEVALUE #JTANTAN,  WIDGET_BUTTONUVALUEVALUE #KPIPI,  WIDGET_BUTTONUVALUEVALUE #M ASINASIN,  WIDGET_BUTTONUVALUEVALUE #N ACOSACOS,  WIDGET_BUTTONUVALUEVALUE #O ATANATAN,  WIDGET_BUTTONUVALUEVALUE #Q SINHSINH,  WIDGET_BUTTONUVALUEVALUE #R COSHCOSH,  WIDGET_BUTTONUVALUEVALUE #S TANHTANH,  WIDGET_BUTTONUVALUEVALUE #V!!,  WIDGET_BUTTONUVALUEVALUE #Y===,  WIDGET_BASEEXCLUSIVEFRAMEROW #[DegreesDEGREES=,  WIDGET_BUTTONNO_RELEASEUVALUEVALUE  #^RadiansRADIANS=,  WIDGET_BUTTONNO_RELEASEUVALUEVALUE  #b==,  WIDGET_BASEFRAMEROW! #c!=,  WIDGET_BASECOLUMN" #d!=,  WIDGET_BASECOLUMN# #e!=,  WIDGET_BASECOLUMN$ #f!=,  WIDGET_BASECOLUMN% #h"=,  WIDGET_BASEROWX& #i&77,  WIDGET_BUTTONFONTUVALUEVALUE' #j&88,  WIDGET_BUTTONFONTUVALUEVALUE( #k&99,  WIDGET_BUTTONFONTUVALUEVALUE) #m"=,  WIDGET_BASEROWX* #n*44,  WIDGET_BUTTONFONTUVALUEVALUE8+ #o*55,  WIDGET_BUTTONFONTUVALUEVALUEH, #p*66,  WIDGET_BUTTONFONTUVALUEVALUEX- #r"=,  WIDGET_BASEROWX. #s.11,  WIDGET_BUTTONFONTUVALUEVALUEx/ #t.22,  WIDGET_BUTTONFONTUVALUEVALUE0 #u.33,  WIDGET_BUTTONFONTUVALUEVALUE1 #w"=,  WIDGET_BASEROWX2 #x200,  WIDGET_BUTTONFONTUVALUEVALUE3 #y2 ..,  WIDGET_BUTTONFONTUVALUEVALUE4 #z2 = =,  WIDGET_BUTTONFONTUVALUEVALUE5 #|#CC,  WIDGET_BUTTONFONTUVALUEVALUE6 #}#**,  WIDGET_BUTTONFONTUVALUEVALUE7 #~#//,  WIDGET_BUTTONFONTUVALUEVALUE8 ##--,  WIDGET_BUTTONFONTUVALUEVALUE9 ##++,  WIDGET_BUTTONFONTUVALUEVALUE(: #$CECE,  WIDGET_BUTTONFONTUVALUEVALUE8; #$^^,  WIDGET_BUTTONFONTUVALUEVALUEH< #$+/-+/-,  WIDGET_BUTTONFONTUVALUEVALUEX= #%MM,  WIDGET_BUTTONFONTUVALUEVALUEh #%M+M+,  WIDGET_BUTTONFONTUVALUEVALUEh> #%MRMR,  WIDGET_BUTTONFONTUVALUEVALUEx? #%MCMC,  WIDGET_BUTTONFONTUVALUEVALUE@ #  #= #= # #NOOP #!DTOR #!RADEG #=, WIDGET_CONTROLREALIZE#=, WIDGET_CONTROLSET_BUTTON#Scicalc Scicalc_ev,"XMANAGEREVENT_HANDLERGROUP_LEADERL#;7 ʰ SCICALC_EV  CSCICALCBLOCK WTRANSBLOCKEVENT CCURRENT CDISPLAYIDCDISPLAYSTRINGCLASTOPERATIONCMEMORY CPREVIOUSCONV1 CONV2EVENTVAL TEMPI M##18ID5, WIDGET_CONTROLGET_UVALUE#DISPLAY"#18TYPE5 "#18CH5 "CE !18CH5  "= !18CH5, STRING #DISPLAY)!M1)#1, UPDATEDISPLAY!M2)#2, UPDATEDISPLAY!M3)#3, UPDATEDISPLAY!M4) #4, UPDATEDISPLAY!M5) #5, UPDATEDISPLAY!M6) #6, UPDATEDISPLAY!M7) #7, UPDATEDISPLAY!M8) #8, UPDATEDISPLAY!M9)#9, UPDATEDISPLAY!M0)#0, UPDATEDISPLAY!M.)#., UPDATEDISPLAY!M=)#,EQUALS!M^)#NOOP)#^ #, RESETDISPLAY!^)#^ # # #, RESETDISPLAY#, STRING, SETDISPLAY!.# ,EQUALSNOSETU#^ #, RESETDISPLAY!*!M*)#NOOP)#* #, RESETDISPLAY!*)#* # # #, RESETDISPLAY#, STRING, SETDISPLAY!.# =,EQUALSNOSETU# * # , RESETDISPLAY!*!M/)#NOOP)#/ #, RESETDISPLAY!/)#/ # # #, RESETDISPLAY#, STRING, SETDISPLAY!.#=,EQUALSNOSETU#/ # , RESETDISPLAY!*!M-)"#%NOOP)#'- #(, RESETDISPLAY!!-) #+- #, #- #., RESETDISPLAY#/, STRING, SETDISPLAY!!.#2=,EQUALSNOSETU#3- #4, RESETDISPLAY!!*!M+)&#9NOOP)##;+ #<, RESETDISPLAY!%+)$#?+ #@ #A #B, RESETDISPLAY#C, STRING, SETDISPLAY!%.#F=,EQUALSNOSETU#G+ #H, RESETDISPLAY!%*!MC)'#M= #N= #O #PNOOP #Q, RESETDISPLAY#R, STRING, SETDISPLAY!MCE)(#V= #W #X, STRING, SETDISPLAY!M+/-))#\/ #], STRING, SETDISPLAY!MM)*#a #b, STRING, SETDISPLAY#c=, RESETDISPLAYNOPREV!MM+)+#g #h, STRING, SETDISPLAY#i=, RESETDISPLAYNOPREV!MMR),#m #n, STRING, SETDISPLAY#o=, RESETDISPLAYNOPREV!MMC)-#s= !MDEGREES).#w!DTOR #x!RADEG !MRADIANS)/#|= #}= !MSQRT)0#, SQRT #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MX^2)1#  #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MX^3)2#  #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!M1/X)5#="3= !42!VALUES8 F_INFINITY5 #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MALOG)6#, ALOG #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MALOG10)7#, ALOG10 #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MEXP)8#, EXP #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MSIN)9#, SIN #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MCOS):#, COS #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MTAN);#, TAN #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MPI)<#!PI #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MASIN)?#=/="=, ASIN  !>2!VALUES8F_NAN5 #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MACOS)B#=/="@, ACOS  !A2!VALUES8F_NAN5 #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MATAN)C#, ATAN  #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MSINH)D#, SINH #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MCOSH)E#, COSH #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!MTANH)F#, TANH #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!M!)L#="G:#="H= !K#, FIX # ? #=%J 'I#, FLOAT #, STRING, SETDISPLAY#=, RESETDISPLAYNOPREV!M.#Event User Value Not Found, MESSAGE!M*#;7 \ SETDISPLAYH CSCICALCBLOCKSTRINGCCURRENT CDISPLAYIDCDISPLAYSTRINGCLASTOPERATIONCMEMORY CPREVIOUS#^#b, WIDGET_CONTROLSET_VALUE#d;7  SETSLIDERS FILTERCOMMON SLIDERBASE FILTERBASE IMAGE IMAGETRANS VIEWVIEWSIZEORDERCUTOFF BANDWIDTHFILTER FILTEREDIMAGE FILTEREDSPECTRUM NVIEWS BANDTYPE WCUTOFFSLIDER WBANDWIDTHSLIDER FILTERTYPE ORDERSLIDERXDATA DIMENSIONS  SLIDERWIDTH##, SIZE #, N_PARAMS "#%     #( A = @ FILTERCUTOFFFrequency Cutoff(F6.2),: CW_FSLIDERFORMATMAXIMUMMINIMUMTITLEUVALUEVALUEXSIZE #. A == @FILTERBANDWIDTH Bandwidth(F6.2),: CW_FSLIDERFORMATMAXIMUMMINIMUMTITLEUVALUEVALUEXSIZE #4=, WIDGET_CONTROLSENSITIVE!#9= #;, WIDGET_CONTROLSET_VALUE#>=, WIDGET_CONTROLSET_VALUE#@;7 D SHOWINFO1  FONTGROUPHEIGHTINFOTEXT NO_NEWLINETITLEWIDTHXOFFSETYOFFSETFILENAMEFONTGROUPHEIGHTINFOTEXT NONEWLINETITLEWIDTHXOFFSET YOFFSET BUTTONPUSHED TEXTSIZE WINFOWINDOW WBUTTONS WQUIT WPRINT WINFOTEXT  WINDOWSIZESTATE #|#~,  KEYWORD_SET0"  #,  KEYWORD_SET0"#,  KEYWORD_SET0"# 44Filename missing in call to the procedure "ShowInfo", WIDGET_MESSAGEERROR #:#,  KEYWORD_SET0" #=, WIDGET_CONTROLHOURGLASS#, GETINFOTEXT #, SIZE #= =":!#,  KEYWORD_SET0"Info #,  KEYWORD_SET0" P #,  KEYWORD_SET0"  #,  KEYWORD_SET ,  KEYWORD_SET"  INFO_WINDOW= =,8  WIDGET_BASECOLTITLETLB_SIZE_EVENTSUVALUEXOFFSETYOFFSET !  INFO_WINDOW==,&  WIDGET_BASECOLTITLETLB_SIZE_EVENTSUVALUEE # =,  WIDGET_BASEROW # QuitQuit,  WIDGET_BUTTONUVALUEVALUE # PrintPrint,  WIDGET_BUTTONUVALUEVALUE #,  N_ELEMENTS="  ===,> WIDGET_TEXTEDITFONTNO_NEWLINESCROLLVALUEWRAPXSIZEYSIZE ! ===,8  WIDGET_TEXTEDITNO_NEWLINESCROLLVALUEWRAPXSIZEYSIZE # =, WIDGET_CONTROLREALIZE|# , WIDGET_CONTROLTLB_GET_SIZE# < WINFOWINDOW WINFOTEXT WINDOWSIZE # , WIDGET_CONTROLSET_UVALUE# ShowInfo1 ShowInfoEventHndlr1,"XMANAGEREVENT_HANDLERGROUP_LEADERD#;7 SHOWINFOEVENTHNDLR1  EVENT STATE UVALTXTUNITCOMMAND WINDOWSIZEDELTAX DELTAYTEXTEDITGEOMETRY NEWTEXTEDITXSIZE NEWTEXTEDITYSIZE ## 18TOP5 , WIDGET_CONTROLGET_UVALUENO_COPY# 18ID5=, WIDGET_CONTROLGET_UVALUENO_COPY# ,  KEYWORD_SET"#Quit)#18TOP5=, WIDGET_CONTROLDESTROYL#:!Print)#18 WINFOTEXT5, WIDGET_CONTROLGET_VALUEE# tmp.showinfo=, OPENWGET_LUN#, PRINTF#, FREE_LUN# tmp.showinfo18TOP5,XPRINTFILEGROUP#/bin/rm tmp.showinfo # SHOWINFO: , PRINT#, SPAWN#!!.!*#!18ID518 WINFOWINDOW5)#&18 WINFOWINDOW5, WIDGET_CONTROLTLB_GET_SIZE#) 1=9 WINDOWSIZE5 #*=1=9 WINDOWSIZE5 #-18 WINDOWSIZE6#018 WINFOTEXT5=,  WIDGET_INFOGEOMETRY #3 18 SCR_XSIZE5 #4 18 SCR_YSIZE5 #718 WINFOTEXT5  , WIDGET_CONTROLSCR_XSIZESCR_YSIZE!*#?18TOP5=, WIDGET_CONTROLNO_COPYSET_UVALUE#A;7  TEXTSELECTEDSTATEENABLED##18 WUPPERCASE5, WIDGET_CONTROLSENSITIVEE#18 WLOWERCASE5, WIDGET_CONTROLSENSITIVEE#;7 < TEXTWINDOW  GROUPTITLEXSIZEYSIZE TEXTARRAYGROUPTITLEXSIZEYSIZETEXTBASEMMENU  TEXTWIDGETSTATE##5 , ON_ERROR#7,  KEYWORD_SET0" TextWindow #8,  KEYWORD_SET0" P #9,  KEYWORD_SET0",  N_ELEMENTS #;  ,  WIDGET_BASECOLUMNSPACETITLE #="Done" EXIT"Print" PRINT+,XPDMENU1 #?,  WIDGET_TEXTVALUEXSIZEYSIZE #@<MMENU TEXTWIDGETDATA #A==, WIDGET_CONTROLNO_COPYREALIZESET_UVAL#B textwindow,XMANAGERGROUP_LEADER#C;7 TEXTWINDOW_EVENThEVENTSTATE EVENTUVAL##18TOP5, WIDGET_CONTROLGET_UVALUE#18ID5, WIDGET_CONTROLGET_UVALUE#EXIT)#18TOP5 , WIDGET_CONTROLDESTROYU# :!PRINT)# 18DATA518TOP5,  PRINT_ASCIIGROUPY!*#;7 TVBOX < COPYHELPNOCOPYNOERASEBOX_COM XYDX DY CLRCOPYHLPNOCOPY NOERASXCYCDXCDYCBBBLBTBRCMODEIMG X2 Y2 XX YY CC #0#:,  KEYWORD_SET"#;** Draw or erase a box on the image display., PRINT#< tvbox, x, y, dx, dy, clr, PRINT#=;; x = Device X coordinate of lower left corner of box. in, PRINT#>;; y = Device Y coordinate of lower left corner of box. in, PRINT#?;; dx = Box X size in device units. in, PRINT#@;; dy = Box Y size in device units. in, PRINT#A;; clr = box color. in, PRINT#B00 -1 to just erase last box (only last box)., PRINT#C99 -2 for dotted outline. Useful if box must cover an, PRINT#D!! unknown range of colors., PRINT#E Keywords:, PRINT#F:: /NOERASE causes last drawn box not to be erased first., PRINT#G;; /COPY use first time to set screen copy mode. Good for, PRINT#H<< windows on slow machines. Uses an internal copy of the, PRINT#I99 screen image instead of tvrd (tvrd is up to 16 times, PRINT#J77 slower than tv on some machines). Avoid for large, PRINT#K** windows. Unneeded on fast machines.', PRINT#L /NOCOPY unsets the COPY mode., PRINT#M00 Notes: /COPY and /NOCOPY should be used with no, PRINT#N other parameters., PRINT#O:#R,  KEYWORD_SET"#S, TVRD #T  #U:#X,  KEYWORD_SET"#Y  #Z= #[:#^,  N_ELEMENTS="= #`,  KEYWORD_SET0"#a,  N_ELEMENTS="#b  = #c  = #d  , TV#e  , TV#f  , TV#g  , TV#h=/":#l= #m= #o"#p  #q  #r   #s   ! #u=, TVRD #v=, TVRD #w =, TVRD #x =, TVRD #{ #{ #{ #{ #} /" #~ ,MAKEN  ,MAKEN ,MAKEN,MAKEN+ #,MAKEN ,MAKEN  ,MAKEN ,MAKEN+ # ,  N_ELEMENTS, INDGEN    #  = , PLOTSCOLORDEV! #  +  +=, PLOTSCOLORDEVICE#:#;7  UPDATEDISPLAY CSCICALCBLOCKNUMBER CDISPLAYIDCDISPLAYSTRINGCCURRENT CPREVIOUSCMEMORYCLASTOPERATION#;#@ #B , WIDGET_CONTROLSET_VALUE#D, FLOAT #F, WIDGET_CONTROLSET_VALUE#H;7 VIEWEVENTHNDLR FILTERCOMMONEVENTBANDTYPE BANDWIDTHCUTOFFFILTER FILTERBASE FILTEREDIMAGE FILTEREDSPECTRUM FILTERTYPE IMAGE  IMAGETRANS NVIEWS ORDER ORDERSLIDERVIEWVIEWSIZEWBANDWIDTHSLIDER WCUTOFFSLIDER XDATA VIEWINDEX##18ID5, WIDGET_CONTROLGET_UVALUE#38VIEWTYPE518INDEX5"#38VIEWTYPE18INDEX56#, RESETVIEW#;7 7 WINDOW_FTRNAMESWINDOWWINDPARWRANGESETINWINDOUT SETWEIGHTEDNAMESWINDOWWINDPARWRANGE TKXMAX XMIN XP XM APO1 APO2 NPOINTWINDIA 5##Y , ON_ERROR#[,  KEYWORD_SET"#\ 1 Gaussian 2 Hanning3 None4 Parzen5 Welch 6 Hamming7 Tukey8 Papul9 Kaiser+  #_:#a,  KEYWORD_SET0"  #b,  KEYWORD_SET0" >L #d  #f,  KEYWORD_SET0"#g, MAX #h, MIN ! #j=, FLOAT #k , FLOAT #n  @ #o  #p  #q #s,  N_ELEMENTS #t, FLTARR #u=) #w  = #x A33/, EXP !2=)#{==%#|  "#} ? #~ # "# ?= !PI , COS # # "#== !PI , COS # ' !2=)# =  !2 )#==%#  "#=  # # "#  # # "#=   # '!2 )#==%#  "#=  # # "#=  = # # "#=  = # '!2 )&#==%%#  " #=  # # "$# ? =q >!PI , COS # ?=q # # "%#=!="!PI , COS #=# # '!2 )+#==%*#  "(#=  # # ")#=!PI , COS= #=  # # "*#=!PI /, COS= # ''!2 )0#==%/#  "-#=  # # ".#= !PI!PI , SIN=  !PI , COS #=  # # "/#= !PI!PI , SIN=  !PI , COS # ',!2  )1#=   = =, SQRT=, BESELI=, BESELI !2*#,  KEYWORD_SET"5#==%4# "4= '3# #= # #== #:#;7 :WRITESETSETFILEUNIT##= , ON_ERROR#A , OPENWGET_LUN#B, PRINTF#C, FREE_LUN#E= ,  N_ELEMENTS=,  STRCOMPRESSREM lines written in the file: , MESSAGEINFO#G:#H;7 mXAID_FF,''GROUPSETIN'GROUP&SETKRANGE DATA SCREENDIMSIVIEWSIZE NVIEWSWMENUBAR WBASE WSTATE WFILEMENU WTMP WHELPMENUWHELP1WHELPTMP%VIEWBASEWTMPBASEWDR1 WDISPLAY1WKRANGE  WINDOWLIST#WFILTERWWINBASE WWINLABELWWINPARWKPOWERWDR2! WDISPLAY2"WRRANGE WRRRANGE$WDR3 WDISPLAY3!WKKRANGE"WRSHELL #WIDS$H1%STATE& ##, N_PARAMS "# Usage: xaid_ff,set, MESSAGEINFO#:#,TYPE ", READ_ASCII ! #!=, MIN=, MAX+ #"  @+==+=== >L<KRANGERRANGERRRANGEKKRANGEFILTERKPOWERRSHELLWINPAR #&, DEVICEGET_SCREEN#(= L"  ! =  " = ! = #- = +  #.= = +  #1 XAFS Fourier Filtering (XAID_ff)= ,  WIDGET_BASECOLUMNMBARTITLE #3 ,  WIDGET_BASE #6 File=,  WIDGET_BUTTONMENUVALUET #7  Load File Load File,  WIDGET_BUTTONUVALUEVALUE #8  Save File Save File,  WIDGET_BUTTONUVALUEVALUE #9 QuitQuit,  WIDGET_BUTTONUVALUEVALUE #; Help=,  WIDGET_BUTTONHELPVALUEE #<GUIs:=,  WIDGET_BUTTONMENUVALUEE #=xaid_ffHelp,  WIDGET_BUTTONUVALUEVALUE #> xaid_mu2chiHelp,  WIDGET_BUTTONUVALUEVALUE #?xplotHelp,  WIDGET_BUTTONUVALUEVALUE #@used xaid routines:=,  WIDGET_BUTTONMENUVALUEE #AftrsetHelp,  WIDGET_BUTTONUVALUEVALUE #BbftrsetHelp,  WIDGET_BUTTONUVALUEVALUE #C window_ftrHelp,  WIDGET_BUTTONUVALUEVALUE #DftrHelp,  WIDGET_BUTTONUVALUEVALUE #EfastftrHelp,  WIDGET_BUTTONUVALUEVALUE #FbftrHelp,  WIDGET_BUTTONUVALUEVALUE #GfastbftrHelp,  WIDGET_BUTTONUVALUEVALUE #J =,  WIDGET_BASEROWSPACE #M==,  WIDGET_BASECOLUMNFRAME #N Signal Window,  WIDGET_LABELVALUE #O=,  WIDGET_DRAWRETAINXSIZEYSIZE #P0SignalWindowed signalBothWindow+Show: DO, CW_DROPLISTTITLEUVALUEVALUE #S=k limits for Fourier Transform:,  WIDGET_LABELALIGN_LEFTVALUE #U=DO18KRANGE5, VECT2STRING,"  WIDGET_TEXTEDITSCR_XSIZEUVALUEVALUE #W= #W, WINDOW_FTRNAMES#X18FILTER5=,  STRCOMPRESS+Window: DO, CW_DROPLISTTITLEUVALUEVALUE #[=,  WIDGET_BASEROWX #\=Appodization width:,  WIDGET_LABELALIGN_LEFTVALUE #^=DO18WINPAR5,  STRCOMPRESS  ,  WIDGET_TEXTEDITUVALUEVALUEXSIZE #`001234+ K Power: DO, CW_DROPLISTTITLEUVALUEVALUE #d==,  WIDGET_BASECOLUMNFRAME #eFourier Window,  WIDGET_LABELVALUE #f=,  WIDGET_DRAWRETAINXSIZEYSIZE #g0ModulusImagReal Modulus+Imag+Show: DO=,  CW_DROPLISTTITLEUVALUEVALUEXSIZE) #j= R interval:,  WIDGET_LABELALIGN_LEFTVALUE #l=DO18RRANGE5, VECT2STRING,"  WIDGET_TEXTEDITSCR_XSIZEUVALUEVALUE #n=R limits for the Back Fourier:,  WIDGET_LABELALIGN_LEFTVALUE #p=DO18RRRANGE5, VECT2STRING,"  WIDGET_TEXTEDITSCR_XSIZEUVALUEVALUE #s==,  WIDGET_BASECOLUMNFRAME #tBack Fourier Window,  WIDGET_LABELVALUE #u=,  WIDGET_DRAWRETAINXSIZEYSIZE #v0RealModulusPhaseOriginal(...)+Real+Show: DO, CW_DROPLISTTITLEUVALUEVALUE! #y=%%K limits for the conjugated variable:,  WIDGET_LABELALIGN_LEFTVALUE #{=DO18KKRANGE5, VECT2STRING,"  WIDGET_TEXTEDITSCR_XSIZEUVALUEVALUE" #}=!!Shell radius for the back phase: ,  WIDGET_LABELALIGN_LEFTVALUE #=DO18RSHELL5=,  STRCOMPRESSREMG,"  WIDGET_TEXTEDITSCR_XSIZEUVALUEVALUE# #"# !<KRANGERRANGERRRANGEKKRANGEFILTERKPOWERRSHELLDR1DR2DR3DISPLAY1DISPLAY2DISPLAY3WINBASEWINLABELWINPAR$ #,  HANDLE_CREATEVALUEX% #$%<DATAWIDSH1& # ==, WIDGET_CONTROLHOURGLASSREALIZE#&, XAID_FF_DRAW# =,  WIDGET_INFOCHILD&=, WIDGET_CONTROLNO_COPYSET_UVALUE#xaid_ff ,XMANAGERGROUP_LEADER#;7 X XAID_FF_DRAW,SAVESTATE FILESKPOWERKPOWERIDISPSKRANGEKRANGEITMPSETUNIT TMP WIN WINPAR NEWSET ZZ1WIND ZZ2SRRANGERRANGESETFSRRRANGERRRANGESKKRANGEKKRANGESRSHELLRSHELL SETBF#Q#U18WIDS8KPOWER5, WIDGET_CONTROLGET_VALUE#V, FIX #W18WIDS8DISPLAY15, WIDGET_CONTROLGET_VALUE#Y18WIDS8KRANGE5, WIDGET_CONTROLGET_VALUE#Z  #[ krange = =A #]18H15 , PLOTFILENODATA#_,  KEYWORD_SET"#` =, OPENWGET_LUN#a #F , PRINTF#b #S 1 Original set, PRINTF#c #N 2, PRINTF#d  #L k chi(k), PRINTF#e , PRINTF#k18WIDS8DR15 , WIDGET_CONTROLGET_VALUE#k , WSET#l18WIDS8FILTER5 , WIDGET_CONTROLGET_VALUE#m= , FIX #n18WIDS8WINPAR5 , WIDGET_CONTROLGET_VALUE#o= , FLOAT #p    "#q18WIDS8WINBASE5=, WIDGET_CONTROLMAPV#r18WIDS8WINLABEL5Appodization width:, WIDGET_CONTROLSET_VALUE!#s  "#t18WIDS8WINBASE5=, WIDGET_CONTROLMAPV#u18WIDS8WINLABEL5t-value:, WIDGET_CONTROLSET_VALUE!#w18WIDS8WINBASE5=, WIDGET_CONTROLMAPV#{0)#} #}=== #~ chi*k^, PLOTFILEYTITLE! 1) #, CUTSETXRANGE#  , WINDOW_FTRWINDOWWINDPAR# #=== # chi*k^, PLOTFILEYTITLE! 2) #, CUTSETXRANGE#  , WINDOW_FTRWINDOWWINDPAR# #=== # chi*k^, PLOTFILEYTITLE# #=== # =,PLOTSETOVER! 3) #, CUTSETXRANGE#  , WINDOW_FTRWINDOWWINDPARR#,PLOTSET! .! *#==+ GP/= +, OPLOT#==+= /= +, OPLOT#18WIDS8DR25 , WIDGET_CONTROLGET_VALUEW# , WSET#18WIDS8RRANGE5, WIDGET_CONTROLGET_VALUEW#= # rrange = =A #18WIDS8KPOWER5, WIDGET_CONTROLGET_VALUEW#, FIX #18WIDS8FILTER5 , WIDGET_CONTROLGET_VALUEW#= , FIX #18WIDS8DISPLAY25, WIDGET_CONTROLGET_VALUEW#=, FIX # = ,B FTRSETKPOWERMETHODPLOTFOURIERRRANGEWINDOWWINDPARXRANGE#,  KEYWORD_SET"# #S 2 Fourier Transform, PRINTF# #N 4, PRINTF# #L R Modulus Real Imag, PRINTF# , PRINTF#18WIDS8RRRANGE5, WIDGET_CONTROLGET_VALUE#= # rrrange = =A #==+= /= +, OPLOT#==+= /= +, OPLOT#18WIDS8DR35 , WIDGET_CONTROLGET_VALUE# , WSET#18WIDS8DISPLAY35, WIDGET_CONTROLGET_VALUE#=, FIX #18WIDS8KKRANGE5, WIDGET_CONTROLGET_VALUE#= # kkrange = =A #18WIDS8RSHELL5, WIDGET_CONTROLGET_VALUE#=, FLOAT #="= ! # =  ,H BFTRSET KRANGEMETHODPLOTBFTRRRANGERSHELLWINDOWWINDPARWRANGE#="# #=== # ==,PLOTSETLINESTYLEOVER#,  KEYWORD_SET"# #S 3 Back Fourier Transform, PRINTF# #N 4, PRINTF# #L k Real Modulus Phase, PRINTF# , PRINTF# , FREE_LUN#;7  XAID_FF_EVENT0EVENTUVALUESTATEIDSTATEFILESET1XRANGETMP ##18ID5, WIDGET_CONTROLGET_UVALUE#18HANDLER5 ,  WIDGET_INFOCHILD #=, WIDGET_CONTROLGET_UVALUENO_COPY#Quit)#18TOP5=, WIDGET_CONTROLDESTROYL#:!  Load File)#,PICKFILE #"! #, READ_ASCII # , MIN=, MAX+ #18WIDS8KRANGE5, VECT2STRING, WIDGET_CONTROLSET_VALUE#18H15=,  HANDLE_VALUESETL#=, WIDGET_CONTROLHOURGLASSE#, XAID_FF_DRAW!  Save File)#= xaid_ff.out,PICKFILEFILEWRITE #"! #, CHECKFILE="#File  already exists. Overwrite it?+==, WIDGET_MESSAGECANCELDEFAULT_CANCEL #Cancel"! #=, WIDGET_CONTROLHOURGLASSl#, XAID_FF_DRAWSAVE#File  written to disk.=, WIDGET_MESSAGEINFO ! Help) # 18ID5, WIDGET_CONTROLGET_VALUE# 18TOP5, XHELPGROUPL! DO) # =, WIDGET_CONTROLHOURGLASSE#, XAID_FF_DRAW! .! *#=, WIDGET_CONTROLNO_COPYSET_UVALUE#;7  XAID_MU2CHIGROUPNODRAWSETINGROUPNODRAWWMENUBAR WBASEWTMP  WFILEMENU WVIEWMENUWOPERATION1MENU WTMP1 WOPERATION2MENU WTOOLS WHELPMENU WHELP1 WHELPTMPWDRBASE20LABEL22LABEL24LABEL26WBUTTONS WBUTTONSBASETOPNPPHANDLESETOUTWDR_IDWIDSSTATE## ,TYPE ", READ_ASCII # ,  N_ELEMENTS "= # XAFS Extraction (XAID_Mu2Chi)=Resize,.  WIDGET_BASECOLUMNMBARTITLETLB_SIZE_EVENTSUVALUE #,  WIDGET_BASE #File=,  WIDGET_BUTTONMENUVALUER # Load File Load File,  WIDGET_BUTTONUVALUEVALUE # Save File Save File,  WIDGET_BUTTONUVALUEVALUE #PrintPrint,  WIDGET_BUTTONUVALUEVALUE #QuitQuit,  WIDGET_BUTTONUVALUEVALUE #View=,  WIDGET_BUTTONMENUVALUEE #RefreshRefresh,  WIDGET_BUTTONUVALUEVALUE #DataData,  WIDGET_BUTTONUVALUEVALUE #XplotXplot,  WIDGET_BUTTONUVALUEVALUE # Operation 1=,  WIDGET_BUTTONMENUVALUEE #CutCut,  WIDGET_BUTTONUVALUEVALUE # derivatives derivatives,  WIDGET_BUTTONUVALUEVALUE #  InterpolationInterp,  WIDGET_BUTTONUVALUEVALUE #"Get EoGet Eo,  WIDGET_BUTTONUVALUEVALUE #$JumpJump,  WIDGET_BUTTONUVALUEVALUE #&Fit Polynomial=,  WIDGET_BUTTONMENUVALUEE #'  Least Squares Least Squares,  WIDGET_BUTTONUVALUEVALUE #) Singular Value DescompositionSingular Value Descomposition,  WIDGET_BUTTONUVALUEVALUE #+Fit MultiSplineFit MultiSpline,  WIDGET_BUTTONUVALUEVALUE #-Fourier FilterFourier Filter,  WIDGET_BUTTONUVALUEVALUE #0 Operation 2=,  WIDGET_BUTTONMENUVALUEE #1  Substitute Substitute,  WIDGET_BUTTONUVALUEVALUE #3  Substraction Substraction,  WIDGET_BUTTONUVALUEVALUE #5  Extraction=,  WIDGET_BUTTONMENUVALUEE #6  Experimental Experimental,  WIDGET_BUTTONUVALUEVALUE #8 ConstantConstant,  WIDGET_BUTTONUVALUEVALUE #: Lengeler-EisenbergLengeler-Eisenberg,  WIDGET_BUTTONUVALUEVALUE #=Tools=,  WIDGET_BUTTONMENUVALUEE #>  xaid_mu2chiExecute,  WIDGET_BUTTONUVALUEVALUE #? XplotExecute,  WIDGET_BUTTONUVALUEVALUE #AHelp=,  WIDGET_BUTTONHELPVALUEE #B GUIs:=,  WIDGET_BUTTONMENUVALUEE #C  xaid_mu2chiHelp,  WIDGET_BUTTONUVALUEVALUE #D xaid_ffHelp,  WIDGET_BUTTONUVALUEVALUE #E xplotHelp,  WIDGET_BUTTONUVALUEVALUE #F used xaid routines:=,  WIDGET_BUTTONMENUVALUEE #G cutsetHelp,  WIDGET_BUTTONUVALUEVALUE #H fitsetHelp,  WIDGET_BUTTONUVALUEVALUE #I e2kHelp,  WIDGET_BUTTONUVALUEVALUE #J k2eHelp,  WIDGET_BUTTONUVALUEVALUE #K gete0Help,  WIDGET_BUTTONUVALUEVALUE #L getjumpHelp,  WIDGET_BUTTONUVALUEVALUE #M postedgeHelp,  WIDGET_BUTTONUVALUEVALUE #P,  KEYWORD_SET0"  , ==Cursor,>  WIDGET_DRAWBUTTON_EVENTSMOTION_EVENTSRETAINUVALUEXSIZEYSIZE #T==BASE20,  WIDGET_BASEMAPROWUVALUE #ULABEL22X: Y:,  WIDGET_LABELUVALUEVALUE #VLABEL24Eo: 0.0,  WIDGET_LABELUVALUEVALUE #WLABEL26Jump:,  WIDGET_LABELUVALUEVALUE #Y  #ZE [Ev]E-EoK [A^-1]+= X value: XVALUE==,8 CW_BGROUPEXCLUSIVEIDSLABEL_LEFTROWSET_VALUEUVALUE #_=, WIDGET_CONTROLREALIZE#a, HANDLE_CREATE #b, N_PARAMS #c="#d==,  HANDLE_CREATEFIRST_CHILDVALUE !#f,PLOTFILE#g=,  HANDLE_CREATEFIRST_CHILDVALUE #i==,  HANDLE_CREATESIBLINGVALUE #j, WIDGET_CONTROLGET_VALUE#k<WDR BUTTONSBASE #l ===!X!Y===+<XYEOJUMP WINDOWNUMHANDLEE0E0FORK I_SCALE_KJUMPVALXYWIDSZOOM_SELZOOMXY #p=,  WIDGET_INFOCHILD=, WIDGET_CONTROLNO_COPYSET_UVALUE#q xaid_mu2chi, XMANAGERGROUP#s;7 XAID_MU2CHI_EVENTbx/ /EVENTUVALUESTATEIDSTATEHANDLE%SET1SET2FILETMP  COLTITLES/ ITMP TMP1 X1 Y1 X2-Y2.TMPOUTNPOINTSMEANSTDEVVALVECTTMP+TEXT TMPMENUACTION N_INTERPINT_STEP E0$JUMP FIT1SET22!FIT22LOCALEOSET3" SET4!II"E0LENG#I#$COORDS_D(%COORDS*&DISTX)'DISTY(COORDS0&)X0 *Y0+XRANGE,,YRANGE-COMMAND'.~#o#q #r18ID5, WIDGET_CONTROLGET_UVALUE#u18HANDLER5 ,  WIDGET_INFOCHILD #v=, WIDGET_CONTROLGET_UVALUENO_COPY#x18 WINDOWNUM5, WSET#y18X5 !X#z18Y5 !Y#|18HANDLE5=,  HANDLE_INFOFIRST_CHILD #|,  HANDLE_VALUE#}=,  HANDLE_INFOSIBLING #},  HANDLE_VALUE#,  N_ELEMENTS=Cursor Load FileHelpQuitResizeExecute"#Please Load data.,XTEXTTEXT#!~# Load File)#,PICKFILE #"!~#, READ_ASCII #18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #,PLOTFILE#18X!X6#18Y!Y6# =,  HANDLE_CREATESIBLINGVALUE #18EO5Eo: , WIDGET_CONTROLSET_VAL#18JUMP5Jump: , WIDGET_CONTROLSET_VAL!~ Save File) #=xaid_mu2chi.out,PICKFILEFILEWRITE #"!~#, CHECKFILE="#File  already exists. Overwrite it?+==, WIDGET_MESSAGECANCELDEFAULT_CANCEL #Cancel"!~#,  KEYWORD_SET" # =,  N_ELEMENTS, FLTARR #==  # = ! # #,WRITESET#File  written to disk.=, WIDGET_MESSAGEINFO !~Print) # plotfile,data18HANDLE518TOP5=,XPRINTBUFFERCOLORDATAGROUP!~Quit)#18HANDLE5,  HANDLE_FREE#18TOP5=, WIDGET_CONTROLDESTROYC#:!~Refresh)#18HANDLE5,PLOTFILE#18X!X6#18Y!Y6!~Data)#XAID_mu2chi: set118TOP5, XDISPLAYFILE1GROUPTEXTTITLE#,  N_ELEMENTS="XAID_mu2chi: set218TOP5, XDISPLAYFILE1GROUPTEXTTITLE!~Xplot)#,  KEYWORD_SET"#==,  N_ELEMENTS, FLTARR #==  #= = #Xset1set2+ !# #Xset1+ #= 18TOP5 ,XPLOTCOLTITLESGROUPYCOL!~Cut)#=This option permits to cut the 00spectrum to analyze only the desirable interval.''Please select two poins with the mouse.+=, WIDGET_MESSAGECANCELINFO # Cancel"!~#= # ="#18HANDLE5,PLOTFILE#18X!X6#18Y!Y6#  =, CURSOR# B@/+ =++= ,PLOTFILEKI#=, CURSOR#=/+=++= ,PLOTFILEKI#== +=, PLOTXRANGEXSTYLE#18X!X6#18Y!Y6#CancelRepeat Substitute+,WMENU2 # =)#18HANDLE5,PLOTFILE#18X!X6#18Y!Y6!=)!= )# +, CUTSETXRANGE#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #==,  HANDLE_CREATESIBLINGVALUE #18ZOOM_SEL=6#18HANDLE5,PLOTFILE#18X!X6#18Y!Y6#!~!*!!~ derivatives)#,DERIVSET# =,  N_ELEMENTS, FLTARR #==  # = # = xf'(x)f''(x)f''''(x)f(x)+-1-118TOP5,*XPLOTCOLTITLESGROUPXTITLEYCOLYTITLE!~Interp)'#=,  N_ELEMENTS #=,STDEV #==/, SHIFT= # ==  # ,STDEV # =,  STRCOMPRESSREM points in current spectrum<<------------- min ----- max ------- mean ------- stdev --- E : =, MIN=,  STRCOMPRESSREM =, MAX=,  STRCOMPRESSREM =,  STRCOMPRESSREM =,  STRCOMPRESSREM mu : =, MIN=,  STRCOMPRESSREM =, MAX=,  STRCOMPRESSREM =,  STRCOMPRESSREM =,  STRCOMPRESSREM DE : , MIN=,  STRCOMPRESSREM , MAX=,  STRCOMPRESSREM =,  STRCOMPRESSREM =,  STRCOMPRESSREM<<------------------------------------------------------------+ #==This option can be used to11interpolate new points between the existing ones. +, WIDGET_MESSAGECANCELINFO # Cancel" !~#0LinearSpline+ <KINDNPTS #==Interpolation: Number of points+ Interpolation,*XSCRMENUACTIONINTERPNOTYPETITLESWTITLE#DO"&# 18NPTS5 #!=, MAX=, MIN=, FLOAT #"= , FLTARR ##=, FINDGEN=, MIN #$"!#% #&55XAID_Mu2Chi: Set interp number of points to minimum: , PRINT#(1=9KIND50""#)##XAID_Mu2Chi: Liner interp selected., PRINT#*====,INTERPOL !##,$$XAID_Mu2Chi: Spline interp selected., PRINT#-====,SPLINE #/,PLOTSET#0=,STDEV #1=,STDEV #2==/, SHIFT= #3==  #4,STDEV #6 points in current spectrum, PRINT#7<<------------- min ----- max ------- mean ------- stdev ---, PRINT#8 E : =, MIN=, MAX, PRINT#9 mu : =, MIN=, MAX, PRINT#: DE : , MIN, MAX, PRINT#;<<------------------------------------------------------------, PRINT#>=,  STRCOMPRESSREM points in current spectrum<<------------- min ----- max ------- mean ------- stdev --- E : =, MIN=,  STRCOMPRESSREM =, MAX=,  STRCOMPRESSREM =,  STRCOMPRESSREM =,  STRCOMPRESSREM mu : =, MIN=,  STRCOMPRESSREM =, MAX=,  STRCOMPRESSREM =,  STRCOMPRESSREM =,  STRCOMPRESSREM DE : , MIN=,  STRCOMPRESSREM , MAX=,  STRCOMPRESSREM =,  STRCOMPRESSREM =,  STRCOMPRESSREM<<------------------------------------------------------------+ #M= Do you want to &&substutute the interpolated spectrum?.+, WIDGET_MESSAGEQUESTION #O No)$#P,PLOTSET!&Yes)%#R18HANDLE5,  HANDLE_FREE#S18HANDLE, HANDLE_CREATE6#T18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #U==,  HANDLE_CREATESIBLINGVALUE !&*!~Get Eo)1#\18WIDS8 BUTTONSBASE5, WIDGET_CONTROLGET_VALUE#]="(#^=X value must be E [Ev], WIDGET_MESSAGEERROR #_!~#a==Getting Eo from the maximum of the derivative.+, WIDGET_MESSAGECANCELINFO #c Cancel")!~#d,GETE0 #e#f,PLOTSET#g GP/+=+++=,PLOTSETOVER#hOk, use this value: ,  STRCOMPRESSGet a value with the cursor Input an external value +,WMENU2 #k =),#m18EO5Eo: =,  STRCOMPRESSREM, WIDGET_CONTROLSET_VAL!0=)-#p=, GETE0METHOD #q The selected Eo is: , PRINT!0= )/#t<E0 #u= Eo value: ,XSCRMENUACTIONNOTYPETITLES#vDO".18E05 !0*#y ="*#z18E06#{18E0FORK6!~Jump)2#,GETJUMP #,PLOTSET#18JUMPVAL6#18JUMP5Jump: =,  STRCOMPRESSREMX, WIDGET_CONTROLSET_VALUEO!~Fourier Filter)3#,XAID_FF!~ Least Squares)6#=<N #=Polynomial Degree,XSCRMENUACTIONNOTYPETITLES#DO"4!~#,PLOTSET#==Click the two limit points for the fit. Then use the Operation 2 menu''to substract the fit from the spectrum.+, WIDGET_MESSAGECANCELINFO # Cancel"5!~#  =, CURSOR# =/+ =++=,PLOTSETOVER#=, CURSOR#=/+=++=,PLOTSETOVER#=18N5 +=,&FITSETDEGREEMETHODVERBOSEXRANGEI#=,PLOTSETOVER#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #=,  HANDLE_CREATESIBLINGVALUE !~Singular Value Descomposition)9#=<N #=Polynomial Degree,XSCRMENUACTIONNOTYPETITLES#DO"7!~#,PLOTSET#==Click the two limit points for the fit. Then use the Operation 2 menu''to substract the fit from the spectrum.+, WIDGET_MESSAGECANCELINFO # Cancel"8!~#  =, CURSOR# =/+ =++=,PLOTSETOVER#=, CURSOR#=/+=++=,PLOTSETOVER#= 18N5 +=,&FITSETDEGREEMETHODVERBOSEXRANGEI#=,PLOTSETOVER#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #=,  HANDLE_CREATESIBLINGVALUE !~Fit MultiSpline);#,POSTEDGE#,  N_ELEMENTS=":!~#,PLOTSET#=,PLOTSETOVER#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #=,  HANDLE_CREATESIBLINGVALUE !~ Substitute)=#,  N_ELEMENTS="<#=Nothing to substitute., WIDGET_MESSAGEERROR #!~# #,PLOTSET#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #==,  HANDLE_CREATESIBLINGVALUE !~ Substraction)?#,  N_ELEMENTS=">#=Nothing to substract., WIDGET_MESSAGEERROR #!~# #=== #,PLOTSET#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #==,  HANDLE_CREATESIBLINGVALUE !~ Experimental)M#,  N_ELEMENTS="@#=Nothing to extract., WIDGET_MESSAGEERROR #!~#18 I_SCALE_K5="B#,K2E #,K2E #  !C# # #18E0FORK5 # #==== # ,E2KE0! #!=A=!, MAX+ >L/=D+,PLOTSETXRANGEYRANGE# d/=+=E=++=,PLOTSETOVER#Cancel SubstituteBetter look (Xplot)+,WMENU2 # =)F#,PLOTSET#=,PLOTSETOVER!L=)G#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5!=,  HANDLE_CREATEFIRST_CHILDVALUE #==,  HANDLE_CREATESIBLINGVALUE #18WIDS8 BUTTONSBASE5= , WIDGET_CONTROLSET_VALUEA#18 I_SCALE_K=6!L= )K# =!,  N_ELEMENTS, FLTARR #==!  #="=%J"==!=!" 'I#= 18TOP5-1-1k[A]chi(k)chi(k)*k chi(k)*k^2 chi(k)*k^3 base line+,*XPLOTCOLTITLESGROUPXTITLEYCOLYTITLE#18 WINDOWNUM5, WSET#18X!X6#18Y!Y6!L*!~Constant)X#,  N_ELEMENTS="N#=Nothing to extract., WIDGET_MESSAGEERROR #!~#18JUMPVAL5="O#=You must define the Jump..., WIDGET_MESSAGEERROR #!~#18 I_SCALE_K5="P#,K2E #,K2E #=A !Q# # #18E0FORK5 # # ===18JUMPVAL5 #! ,E2KE0! #"!=A=!, MAX+=D/=D+,PLOTSETXRANGEYRANGE##=E/=+=E=++=,PLOTSETOVER#$Cancel SubstituteBetter look (Xplot)+,WMENU2 #% =)R#',PLOTSET#(=,PLOTSETOVER!W=)S#+18HANDLE5,  HANDLE_FREE#,18HANDLE, HANDLE_CREATE6#-18HANDLE5!=,  HANDLE_CREATEFIRST_CHILDVALUE #.==,  HANDLE_CREATESIBLINGVALUE #/18WIDS8 BUTTONBASE5= , WIDGET_CONTROLSET_VALUEA#018 I_SCALE_K=6!W= )V#3=H=!,  N_ELEMENTS, FLTARR #4==!  #5="=%U"==!=!" 'T#6= 18TOP5-1-1k[A]chi(k)chi(k)*k chi(k)*k^2 chi(k)*k^3 base line+,*XPLOTCOLTITLESGROUPXTITLEYCOLYTITLE#918 WINDOWNUM5, WSET#:18X!X6#;18Y!Y6!W*!~Lengeler-Eisenberg)e#C,  N_ELEMENTS="Y#D=Nothing to extract., WIDGET_MESSAGEERROR #E!~#G18JUMPVAL5="Z#H=You must define the Jump..., WIDGET_MESSAGEERROR #I!~#K18 I_SCALE_K5="[#L,K2E #M,K2E #N==18E05 #O==18E05 !\#Q #R #S18WIDS8 BUTTONSBASE5, WIDGET_CONTROLGET_VALUEL#T="\#U==18E05 #V==18E05 #Y #Z18E05# #[=$=,  N_ELEMENTS=%^#\=$=$=$18JUMPVAL5 ? A @@=$## ']#_ 18E05,E2KE0! #`!=A=!, MAX+=D/=D+,PLOTSETXRANGEYRANGE#a=E/=+=E=++=,PLOTSETOVER#bCancel SubstituteBetter look (Xplot)+,WMENU2 #c =)_#e,PLOTSET#f=,PLOTSETOVER!d=)`#i18HANDLE5,  HANDLE_FREE#j18HANDLE, HANDLE_CREATE6#k18HANDLE5!=,  HANDLE_CREATEFIRST_CHILDVALUE #l==,  HANDLE_CREATESIBLINGVALUE #m18 I_SCALE_K=6#n18WIDS8 BUTTONSBASE5= , WIDGET_CONTROLSET_VALUEA!d= )c#q=H=!,  N_ELEMENTS, FLTARR #r==!  #s="=%b"==!=!" 'a#t= 18TOP5-1-1k[A]chi(k)chi(k)*k chi(k)*k^2 chi(k)*k^3 base line+,*XPLOTCOLTITLESGROUPXTITLEYCOLYTITLE#w18 WINDOWNUM5, WSET#x18X!X6#y18Y!Y6!d*!~Help)f#18ID5, WIDGET_CONTROLGET_VALUEL#18TOP5, XHELPGROUPL!~XVALUE)p#18WIDS8 BUTTONSBASE5, WIDGET_CONTROLGET_VALUEL#18SELECT5="g!~#=)j#18 I_SCALE_K5="h# #==18E05 !i#,K2E #==18E05 #,PLOTSET#18X!X6#18Y!Y6#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #==,  HANDLE_CREATESIBLINGVALUE #18 I_SCALE_K=6#18E0FORK18E056!o=)m#18 I_SCALE_K5="k# #==18E05 !l#,K2E #,PLOTSET#18X!X6#18Y!Y6#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #==,  HANDLE_CREATESIBLINGVALUE #18 I_SCALE_K=6#18E0FORK=A6!o= )n#18E0FORK5,E2KE0 #,PLOTSET#18X!X6#18Y!Y6#18HANDLE5,  HANDLE_FREE#18HANDLE, HANDLE_CREATE6#18HANDLE5=,  HANDLE_CREATEFIRST_CHILDVALUE #==,  HANDLE_CREATESIBLINGVALUE #18 I_SCALE_K=6!o.!o*!~Resize)t#2!VERSION8 OS_FAMILY5Windows"q18WIDS8WDR518X5=18Y5 D, WIDGET_CONTROLSCR_XSIZESCR_YSIZE!r18WIDS8WDR518X5=18Y5 f, WIDGET_CONTROLSCR_XSIZESCR_YSIZE# #,  N_ELEMENTS="s#18HANDLE5,PLOTFILE#18X!X6#18Y!Y6!~Cursor)|#18HANDLE5=,  HANDLE_INFOFIRST_CHILD # ,  HANDLE_VALUE#18X518Y5+% # ,  N_ELEMENTS="u18X518Y5==,  CONVERT_COORDDEVICETO_DATA& !v%& #18XY5X: =&=,  STRCOMPRESSREM Y: =&=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUE#18TYPE5="y#18ZOOM_SEL=6#="=%x1"9ZOOMXY"%6'w#18ZOOM_SEL5="z#=%1=9ZOOMXY5, ABS' #=%1=9ZOOMXY5, ABS( #'=A(=A"z#=%1=9ZOOMXY5+, MIN=%1=9ZOOMXY5+, MIN'(= /,TVBOX#18TYPE5=18ZOOM_SEL5="{#18ZOOM_SEL=6#1=9ZOOMXY51=9ZOOMXY5==,  CONVERT_COORDDEVICETO_DATA) #=)=&+, MIN* #=)=&+, MIN+ #=)=&, ABS' #=)=&, ABS( #**'+, #++(+- #18HANDLE5,-,PLOTFILEXRANGEYRANGE#18X!X6#18Y!Y6!~Execute)}#18ID5, WIDGET_CONTROLGET_VALUEA#. #= Executing: ., MESSAGEINFO#.A !~.!~*#=, WIDGET_CONTROLNO_COPYSET_UVALUE#;7  XDISPFILE_EVTtEVENTSTATEIDSTATERETVALCOMMANDTMPAFILE # # 18HANDLER5 ,  WIDGET_INFOCHILD # =, WIDGET_CONTROLGET_UVALUENO_COPY#18ID5, WIDGET_CONTROLGET_UVALUE#EXIT"#18RMFLAG5"#2!D8NAME5X" /bin/rm -f 18TEXTFILE5 !del 18TEXTFILE5 #= Executing: , MESSAGEINFO#, SPAWN#18TOP5=, WIDGET_CONTROLDESTROY#:#PRINTING"#18WIDS8TEXT5, WIDGET_CONTROLGET_VALUE#18TOP5,  PRINT_ASCIIGROUPL#"Resize"##18WIDS8TEXT518X5 &18Y5 B, WIDGET_CONTROLSCR_XSIZESCR_YSIZE#'EDIT18WIDS8MODAL5,  KEYWORD_SET"#(18WIDS8TEXT5, WIDGET_CONTROLGET_VALUE#)18WIDS8MODAL5, WIDGET_CONTROLSET_UVALUE#,LOADFILE" #-18TOP5==,PICKFILEGROUPMUST_EXISTREAD #/,  STRCOMPRESS" ! #0, READ_TEXTFILE #118WIDS8TEXT5, WIDGET_CONTROLSET_VALUE#218WIDS8MODAL5, WIDGET_CONTROLSET_UVALUE#5Help" #618ID5, WIDGET_CONTROLGET_VALUE#918TOP5, XHELPGROUPL#<=, WIDGET_CONTROLNO_COPYSET_UVALUE#=;7 H XDISPLAYFILE1  FONTGROUPHEIGHTMODALNOSCROLLREMOVETEXTTITLEWIDTHFILENAMEFONTGROUPHEIGHTMODALNOSCROLLREMOVE TEXT TITLEWIDTH RMFLAG SCROLL TEXTFILE A NNIWMENUBARFILEBASEWBASEWMODAL WFILEMENUWTMP WHELPMENUFILETEXTWIDS STATE#C#,  KEYWORD_SET0" #,  KEYWORD_SET0" #,  KEYWORD_SET0"  # ,  KEYWORD_SET0" P #,  KEYWORD_SET0"  !  #,  KEYWORD_SET0" XDisplayFile1 #,  KEYWORD_SET" = ! = # #,  KEYWORD_SET0" #, READ_TEXTFILE # ,  N_ELEMENTS== " Error opening/reading file ://Use File/Load File... menu to load a text file.+ !#,TYPE "  !#=,  N_ELEMENTS #=, STRING #="==% , STRING '#= ===Resize,B  WIDGET_BASECOLUMNMBARSPACETITLETLB_SIZE_EVENTSUVALUEXPADYPAD #,  WIDGET_BASE #,  KEYWORD_SET" ,  WIDGET_BASEUVAL !  #File=,  WIDGET_BUTTONMENUVALUE # Load File...LOADFILE,  WIDGET_BUTTONUVALUEVALUE #Print.../Save as...PRINTING,  WIDGET_BUTTONUVALUEVALUE #QuitEXIT=,  WIDGET_BUTTONSEPARATORUVALUEVALUE #Help=,  WIDGET_BUTTONHELPVALUEU # xdisplayfile1Help,  WIDGET_BUTTONUVALUEVALUE #,  N_ELEMENTS="   =EDIT=,@ WIDGET_TEXTALL_EVENTSEDITFONTSCROLLUVALUEVALUEXSIZEYSIZE !   =EDIT=,:  WIDGET_TEXTALL_EVENTSEDITSCROLLUVALUEVALUEXSIZEYSIZE #=, WIDGET_CONTROLREALIZEL#<TEXTMODAL #  <TEXTFILERMFLAGWIDS #=,  WIDGET_INFOCHILD=, WIDGET_CONTROLNO_COPYSET_UVALUE#2!VERSION8RELEASE5==, STRMID4"# XDisplayFile XDispFile_evt,(XMANAGEREVENT_HANDLERGROUP_LEADERMODAL!# XDisplayFile XDispFile_evt=,2XMANAGEREVENT_HANDLERGROUP_LEADERMODALNO_BLOCK#,  KEYWORD_SET"=, WIDGET_CONTROLDESTROYGET_UVALUER#;7 XEDIT ACTIONFORMATINFOTEXTTEXTTITLEXOFFSETYOFFSETVARACTIONFORMAT INFOTEXT TEXTTITLEXOFFSETYOFFSETSZ_VARVAR_ST BASE II JUNK FD_VAR BSBTPTR  ACTIONPTR INFOVAR1 TMP#;#= , ON_ERROR#>?#?,  N_ELEMENTS "77Incorrect number of parameters: supply name of variable, MESSAGE#A, SIZE #B=="''Incorrect size: variable must be scalar, MESSAGE#D  "44Incorrect type: variable must not be of type complex, MESSAGE#G,  N_ELEMENTS="variable #H,  N_ELEMENTS=" xedit #I,  N_ELEMENTS=" , STRING ! , STRINGFORMAT #K,  N_ELEMENTS=" = #L,  N_ELEMENTS=" = #N=,"  WIDGET_BASECOLUMNTITLEXOFFSETYOFFSET #P,  KEYWORD_SET"#Q= ,  N_ELEMENTS=%  =,  WIDGET_LABELALIGN_LEFTVALUE '#T  ,CW_FIELDTITLEVALUE #V ==,  WIDGET_BASECOLUMNFRAME #WOKOK,  WIDGET_BUTTONUVALUEVALUE #XCancelCANCEL,  WIDGET_BUTTONUVALUEVALUE #Z ,  HANDLE_CREATEVALUEL #[,  HANDLE_CREATEVALUEX #\ <ID_VARPTR ACTIONPTR #] , WIDGET_CONTROLSET_UVALUE#_ =, WIDGET_CONTROLREALIZEU#`xedit =, XMANAGERMODALU#b =,  HANDLE_VALUENO_COPY#c,  HANDLE_FREE#d=,  HANDLE_VALUENO_COPY#e,  HANDLE_FREE#gCANCEL":#i==)#k=  !=)#o= , BYTE !=)#s= , FIX ! )#w= , LONG ! )#{= , FLOAT ! )#= , DOUBLE !=)! )#=  !*# #:#= !ERR_STRING, WIDGET_MESSAGEERROR #;7  XEDITLISTGROUPTITLEWAITWTITLEOUTGROUPTITLEWAITWTITLESCROLLTOPBUTTONS B_OKB_CANCEL N M ID IDTXT I KEEP SAVE #<#>, N_PARAMS "a)b)c)+ #?,  N_ELEMENTS=" #@,  N_ELEMENTS="= #A,  N_ELEMENTS=" XEditList #B,  N_ELEMENTS "  != #E=,  WIDGET_BASECOLUMNSCROLLTITLE #F=,  WIDGET_BASEROWX #GOKOK,  WIDGET_BUTTONUVALVALO #HCancelCANCEL,  WIDGET_BUTTONUVALVALO #I,  N_ELEMENTS #J, STRLEN, MAX #K =,  WIDGET_LABELVALXSIZEYSIZE #L , INTARR #M= =% = =TEXT,"  WIDGET_TEXTEDITUVALVALXSIZEYSIZE ' #R, WIDGET_BASE #S <TEXTIDSKEEP #T, WIDGET_CONTROLSET_UVAL#W=, WIDGET_CONTROLREAL#Z xeditlist,XMANAGERGROUPMODAL#], WIDGET_CONTROLGET_UVAL#_:#`;7 XEDITLIST_EVENT,EVSAVENAMEWIDSTEXTITMP##18TOP5, WIDGET_CONTROLGET_UVAL#18ID5, WIDGET_CONTROLGET_UVAL##OK"#$18TOP5, WIDGET_CONTROLGET_UVAL#%1 9IDS5, WIDGET_CONTROLGET_VAL#& 18IDS5,  N_ELEMENTS=%#'19IDS5, WIDGET_CONTROLGET_VAL#(+ '#*18TEXT6#+18KEEP5, WIDGET_CONTROLSET_UVAL#,18TOP5=, WIDGET_CONTROLDEST#/CANCEL"#018KEEP518TEXT5, WIDGET_CONTROLSET_UVAL#118TOP5=, WIDGET_CONTROLDEST#4:#5;7  XEDIT_EVENT(EVENTINFOTESTVAR_ST#&#(18TOP5 , WIDGET_CONTROLGET_UVALUENO_COPY#)18ID5, WIDGET_CONTROLGET_UVALUE#*18 ACTIONPTR5=,  HANDLE_VALUESETA#+CANCEL)#-18TOP5=, WIDGET_CONTROLDESTROYU!OK)#118ID_VAR5, WIDGET_CONTROLGET_VALUE#218PTR5==,  HANDLE_VALUENO_COPYSET#318TOP5=, WIDGET_CONTROLDESTROYP!*#7;7 XGETFILE_EVENT EVSAVENAMEWIDSTEXTTMP## 18TOP5, WIDGET_CONTROLGET_UVAL#!18ID5, WIDGET_CONTROLGET_UVAL#&OK"#'18TOP5, WIDGET_CONTROLGET_UVAL#(18IDS5, WIDGET_CONTROLGET_VAL#)18KEEP5 , WIDGET_CONTROLSET_UVAL#*18TOP5 , WIDGET_CONTROLDEST#-CANCEL"#.18KEEP518TEXT5, WIDGET_CONTROLSET_UVAL#/18TOP5=, WIDGET_CONTROLDEST#2BROWSE"#318READ518WRITE5,PICKFILEREADWRITE #4"18IDS5, WIDGET_CONTROLSET_VAL#8:#9;7 0XHELP\ GROUPXHELPFILE OUTGROUP DOCDIR SEPARATORFFILETEXTMYFILE LISTNFULLLIST I COMMAND IFOUND UNIT LINE OUTFLAGITMP##> , ON_ERROR#A2!D8NAME5WIN"\ !/ #B2!D8NAME5WIN, STRLEN 2!VERSION8RELEASE5  , STRMID4"= , STRMID~1 #E,  KEYWORD_SET""#F.doc #G, CHECKFILE"#H, READ_TEXTFILE #Ixhelp: , XDISPLAYFILE1GROUPTITLE#J:#N,  STRLOWCASE.pro #P2!D8NAME5X" #Q!PATH:,STRPARSE #R./ #S= %   / '#T!DIR/bin/doc_library cat 0   #V , SPAWN#Wxhelp: , XDISPLAYFILE1GROUPTEXTTITLE!#X2!D8NAME5WIN"#Y!PATH;,STRPARSE #Z.+\ #[= #^ #_= #`= %#a , CHECKFILE="#b = #f ----- Documentation for   + #g  =, OPENRGET_LUN#h #i= #j , READF#k , EOF0;-, STRPOS="#m" = , STRMID+ #q;+, STRPOS=" = #r , READF! #t , FREE_LUN' #x ="=Entry  not found in path: Current directory + !PATH+, WIDGET_MESSAGEINFO !, XDISPLAYFILE1GROUPTEXT!#~;7  XLEGEND COMMANDGROUPWINDOWCOMMAND GROUPWINDOW WBASEBUFFER WWINWBASEWBASE0WQUIT WHELPWDOC WTMP WCOMMAND EXAMPLES WEXAMPLES TMPSTATE#j#l , ON_ERROR#n, WIDGET_BASE #pXlegend,  WIDGET_BASETITLEX #q ,  WIDGET_BASECOLUMN #s=,  WIDGET_BASEROWX #tQuit and discard LEGENDQuit,  WIDGET_BUTTONUVALUEVALUE #uQuit and keep LEGENDSoftQuit,  WIDGET_BUTTONUVALUEVALUE #v Help LegendHelp,  WIDGET_BUTTONUVALUEVALUE #x P 22This option permits to write legends on IDL plots. @@It uses the LEGEND procedure of F K Knight (knight@ll.mit.edu). AAYou must create the LEGEND call, and the example options can helpyou in this job.+,  WIDGET_TEXTVALUEXSIZEYSIZE #Legend command:=,  WIDGET_LABELALIGN_LEFTVALUE #== xCommand,*  WIDGET_TEXTALIGN_LEFTEDITUVALUEVALUEXSIZE #Legend examples:=,  WIDGET_LABELALIGN_LEFTVALUE #None55legend,['Plus sign','Asterisk','Period'],psym=[1,2,3]33legend,['diamond','asterisk','square'],psym=[4,2,6]44legend,['solid','dotted','DASHED'],linestyle=[0,1,2]DDlegend,['diamond','asterisk','square'],psym=[4,2,6],/horiz,chars=1.5QQlegend,['1','2','3','4','5','6'],psym=[4,2,6,0,0,0],linestyle=[0,0,0,0,1,2],box=0[[legend,['diamond','asterisk','square'],psym=[4,2,6],margin=1,spacing=2,char=2,delimiter='='PPlegend,['solid','dotted','DASHED'],linestyle=[0,1,2],pos=[.3,.5],char=3,number=4OOlegend,['diamond','asterisk','square'],psym=-[4,2,6],number=2,linestyle=[0,1,2]bblegend,['c1','c2','c3','c4','c5','c6'],/fill,psym=[8,8,8,8,8,8],colors=[10,30,50,70,90,110],char=2uulegend,['c1','c2','c3','a1','a2','a3'],/fill,psym=[8,8,8,0,0,0],line=[0,0,0,0,1,2],colors=[10,30,50,70,90,110],char=2gglegend,['A','B','C','D'],vector=['ab!9r!3','!9nu!3','!9Wf!3','!9cN!20K!3'],charsize=2,pos=[.1,.5],psp=3+  # Examples, WIDGET_DROPLISTUVALUEVALUE #, SIZE #= "2!D8WINDOW5 #="#Display not set=, WIDGET_MESSAGEERROR #:#=, WIDGET_CONTROLHOURGLASSd# , TVRD  <WCOMMANDWINDOWTVRD WEXAMPLESEXAMPLES WBASEBUFFER #==, WIDGET_CONTROLNO_COPYREALIZESET_UVALUE#xlegend=,XMANAGERGROUP_LEADERMODAL#, WIDGET_CONTROLGET_UVALUE#, PRINT#= #;7  XLEGEND_EVENTEVENTSTATEUVALCOMMANDTMP #,#.18TOP5, WIDGET_CONTROLGET_UVALUE#/18ID5, WIDGET_CONTROLGET_UVALUE#118WINDOW5, WSET#3,  KEYWORD_SET" #4Quit)#6 , WIDGET_CONTROLHOURGLASSU#718TVRD5, TV#818 WBASEBUFFER5, WIDGET_CONTROLSET_UVALUE#918TOP5=, WIDGET_CONTROLDESTROYU#::! SoftQuit)#?18WCOMMAND5, WIDGET_CONTROLGET_VALUE#@18 WBASEBUFFER5, WIDGET_CONTROLSET_UVALUE#A18TOP5=, WIDGET_CONTROLDESTROYU#B:! Help)#E=, WIDGET_CONTROLHOURGLASSU#Flegendcat > legend.hlp,  DOC_LIBRARYPRINTS#G legend.hlp18TOP5 0=, XDISPLAYFILE1GROUPHEIGHTREMOVE! Command)#K18WCOMMAND5, WIDGET_CONTROLGET_VALUEI#L, PRINT#M=, WIDGET_CONTROLHOURGLASSE#N18TVRD5, TV#O A ! Examples) #R118INDEX59EXAMPLES5 #S, PRINT#TNone"#U=, WIDGET_CONTROLHOURGLASSx#V18WCOMMAND5, WIDGET_CONTROLSET_VALUEI#W18TVRD5, TV#X=A !#Z=, WIDGET_CONTROLHOURGLASSE#[18WCOMMAND5, WIDGET_CONTROLSET_VALUEI#\18TVRD5, TV! .! *#d18TOP5=, WIDGET_CONTROLNO_COPYSET_UVALUE#f;7 OXNLFIT00GROUPNODRAW XPLOTMAINSET/OPTINPGROUP NODRAW XPLOTMAIN0X YEQUATION GUESSXMIN XMAX FPAR WBASEBUFFER WWIN$ WBASE WTMP&WQUIT"WREFRESH*WXLOADCTWHELP.WDRWEQWEQUATIONLABEL WEQUATIONWTMP1WTMP2WTMP3WTMP4 WGU WGUESSLABELWGUESSWTMP5!WTMP6+ WRA!WLA-"WX1%#WX2$WTMP0% WALLINTERVAL& WSIGMAVALUE'WSIGMAFILEBASE(( WSIGMAFILE))WTOL* WITERLIMIT#+WNUM,WIDS,-STATE'.XRANGE/## , ON_ERROR#, N_PARAMS "#((XNLFIT: Usage: xnlfit, set, keyword_pars, PRINT#:#, N_PARAMS="#, REFORM #, REFORM #=,  N_ELEMENTS, FLTARR #= #  # #[] #= , MAXMINX #,  KEYWORD_SET" 18EQU6#, WIDGET_BASE #XNLFit,  WIDGET_BASETITLEX # =,  WIDGET_BASECOLUMN #=,  WIDGET_BASEROWX #QuitQuit,  WIDGET_BUTTONUVALUEVALUE #Refresh ScreenPlotData,  WIDGET_BUTTONUVALUEVALUE # Color tableXloadct,  WIDGET_BUTTONUVALUEVALUE #HelpHelp,  WIDGET_BUTTONUVALUEVALUE #,  KEYWORD_SET0"  ,=,  WIDGET_DRAWRETAINXSIZEYSIZE #==,  WIDGET_BASECOLUMNFRAME # Model equation: y=f(x;a(0,1...))=,  WIDGET_LABELALIGN_LEFTVALUE #==Equation K,*  WIDGET_TEXTALIGN_LEFTEDITUVALUEVALUEXSIZE #=,  WIDGET_BASEROWX #ClearEquation,  WIDGET_BUTTONUVALUEVALUE # Add GaussianEquation,  WIDGET_BUTTONUVALUEVALUE #Add LorentzianEquation,  WIDGET_BUTTONUVALUEVALUE # Add PolynomialEquation,  WIDGET_BUTTONUVALUEVALUE # ==,  WIDGET_BASECOLUMNFRAME # Model parameters:=,  WIDGET_LABELALIGN_LEFTVALUE # ===Guess,*  WIDGET_TEXTALIGN_LEFTEDITUVALUEVALUEXSIZE #=,  WIDGET_BASEROWX #Clear parametersGuess,  WIDGET_BUTTONUVALUEVALUE #TemplateGuess,  WIDGET_BUTTONUVALUEVALUE # (X)Plot model PlotModel,  WIDGET_BUTTONUVALUEVALUE #Overplot model PlotModel,  WIDGET_BUTTONUVALUEVALUE # Covariance PlotModel,  WIDGET_BUTTONUVALUEVALUE #,  KEYWORD_SET" Put Model in a new columnXplotaddcolumn,  WIDGET_BUTTONUVALUEVALUE #==,  WIDGET_BASECOLFRAME! #!Fitting Abscissas Domain:=,  WIDGET_LABELALIGN_LEFTVALUE" #!=,  WIDGET_BASEROWX # X minimumPlotData  = =,6 CW_FSLIDEREDITFRAMEMAXMINTITLEUVALUEVALUEXSIZE# # X maximumPlotData  = = =,6 CW_FSLIDEREDITFRAMEMAXMINTITLEUVALUEVALUEXSIZE$ # !=,  WIDGET_BASEROWX% #!%Set all intervalPlotData,  WIDGET_BUTTONUVALUEVALUE& #"%Xplot with data in domainEXTRACT,  WIDGET_BUTTONUVALUEVALUE #%==,  WIDGET_BASEFRAMEROW #&Sigma (error) value:=,  WIDGET_LABELALIGN_LEFTVALUE #'1 Statistic From file+, WIDGET_DROPLISTVALUE' #(=,  WIDGET_BASEROWX( #)(BrowserSigmaFileBrowser,  WIDGET_BUTTONUVALUEVALUE #+( xnlfit.dat==,  WIDGET_TEXTALIGN_LEFTEDITVALUE/) #.==,  WIDGET_BASECOLFRAME #/=,  WIDGET_BASEROW% #0%Fitting tolerance: =,  WIDGET_LABELALIGN_LEFTVALUE #1%1e-4== ,"  WIDGET_TEXTALIGN_LEFTEDITVALUEXSIZE* #2%Iterations limit: =,  WIDGET_LABELALIGN_LEFTVALUE #3%20=== ,"  WIDGET_TEXTALIGN_LEFTEDITVALUEXSIZE+ #5=,  WIDGET_BASEROWX% #6%Start Fit (CurveFit)Fit,  WIDGET_BUTTONUVALUEVALUE #7%Start Fit (Powell)Fit,  WIDGET_BUTTONUVALUEVALUE #?,  KEYWORD_SET" #@2!D8WINDOW5, #A,=" #B=, WINDOWFREE#C2!D8WINDOW5, !#E=/, #G,  KEYWORD_SET0"  #I,  KEYWORD_SET0"= #J#$&'()*+< EQUATIONGUESSXMINXMAX ALLINTERVAL SIGMAVALUE SIGMAFILEBASE SIGMAFILETOL ITERLIMITXPLOT- #N,-==<WINDOWSETWIDSNPAR SIGMAVALUE. #P =, WIDGET_CONTROLREALIZE#Q(=, WIDGET_CONTROLMAPI#R,  KEYWORD_SET0"#S,, WIDGET_CONTROLGET_VAL#T.18WINDOW,6#V .=, WIDGET_CONTROLNO_COPYSET_UVAL#W=",PLOTFILE#X= d/,PLOTFILECOLORKIXRANGE#YXNLFit ,XMANAGERGROUP_LEADER#[;7 d XNLFIT_EVENT=,2 POWELLFITEVENT(EQUATIONXYSIGMAXRANGE!CHI2FIT STATEUVALTEXT TMP1GUESS'A+Y2COMMAND#ERROR XPLOTSTATE XMIN XMAX STATSIGMA. SIGMAFILE*SSNNCOL)VVALITERITMAX%TOL"FITTYPE CHI2TMPWSIGMAAICHI2I XRANGETXTTXT COVAR0OUTSIGMANCOATEXTI EVVAL!NPAR$"SIGN#A0,$A1-%A2/&STRTMP 'ACTION&(DEG)TMP12*TMP2+]#&#)18TOP5 , WIDGET_CONTROLGET_UVALUENO_COPY#*18ID5, WIDGET_CONTROLGET_UVALUE#+1 9SET5 #,1=9SET5 #-18WINDOW5, WSET#218ID518WIDS8 SIGMAVALUE5"#318 SIGMAVALUE18INDEX56#418INDEX5 "18WIDS8 SIGMAFILEBASE5=, WIDGET_CONTROLMAPU!18WIDS8 SIGMAFILEBASE5=, WIDGET_CONTROLMAPU#<, HELP#>,  KEYWORD_SET"]#?Quit)#A18TOP5=, WIDGET_CONTROLDESTROYU#B:!]Help)#E66This option permits to fit the current set of data to 33a user-defined function, by using a non-linear fit. AAFor the non-linear fit it uses either the CURVEFIT or POWELL idl --routines to find the minimum f the function: ((ChiSquare= Sum{ ([y-f(x;a)]/sigma)^2 }.  AACURVEFIT is based in the Gradient-Expansion algorithm (Marquardt)@@from the book Data Reduction and Error Analysis for the PhysicalCCSciences, P.R. Bevington & D.K. Robinson, 2nd ed. McGraw-Hill, 1992pag 162.BBPOWELL is based on the routine powell described in section 10.5 of??Numerical Recipes in C: The Art of Scientific Computing (Second22Edition), published by Cambridge University Press. >>The user must define the fitting function in IDL syntax as an AAexpression of the independent variable x and a parameter array a.,,For example a straight line is : a(0)*x+a(1)BB gaussian is a(0)*exp( -((x-a(1))/a(2))^2/2) etc etc.==For fitting with complicated functions, the user may write an<= =%-  , VECT2STRING ',#? Equation: y = Model parameters: a = , VECT2STRING xrange = all Sigma of the model parameters: , VECT2STRINGcovariance matrix:+ #DCovariance Calculations, STRLEN, MAX,  N_ELEMENTS18TOP5,& SHOWINFO1GROUPHEIGHINFOTEXTTITLEWIDTH!1 (X)Plot model)/#H, a=, VECT2STRING, XPLOTTITLEH!1Overplot model)0#I /, OPLOTPSYM!1*!]Equation)B#M18ID5!, WIDGET_CONTROLGET_VALUE#N18WIDS8EQUATION5, WIDGET_CONTROLGET_VALUE#O= #P!Clear)3#R #S18NPAR=6!A Add Gaussian)7#V18NPAR5" #W18NPAR" 6#X"="5# !6 +# #Ya("==,  STRCOMPRESSREM)$ #Za("==,  STRCOMPRESSREM)% #[a("==,  STRCOMPRESSREM)& #\#$*exp(-((x-%)/&)^2/2) !AAdd Lorentzian):#a18NPAR5" #b18NPAR"=46#c"="8# !9 +# #da("==,  STRCOMPRESSREM)$ #ea("==,  STRCOMPRESSREM)% #fa("==,  STRCOMPRESSREM)& #i#$*(&/2)^2 /((x-%)^2+(&/2)^2) !AAdd Polynomial)@#m=<N' #n'=Polynomial Degree(,XSCRMENUACTIONNOTYPETITLES#o(DO";!]#p'18N5) #q18NPAR5" #r18NPAR")=6#s"="<# != +# #t# #u= )==&? X^ =,  STRCOMPRESSREM*a(" =,  STRCOMPRESSREM)+ (>#xX^)=,  STRCOMPRESSREM*a(")=,  STRCOMPRESSREM) !A*#}18WIDS8EQUATION5, WIDGET_CONTROLSET_VALUE!]Guess)I#18ID5!, WIDGET_CONTROLGET_VALUE#=!Clear parameters)C#[] !HTemplate)G#18NPAR5<N' #'=Number of parameters:(,XSCRMENUACTIONNOTYPETITLES#(DO"D!]#'18N5="E[] !F'18N5, LONARR, VECT2STRING !H.#=! !H*#18WIDS8GUESS5, WIDGET_CONTROLSET_VALUEO!]PlotData)T#18ID518WIDS8 ALLINTERVAL5"J#18WIDS8XMIN5=, WIDGET_CONTROLSET_VALUEO#18WIDS8XMAX5=, WIDGET_CONTROLSET_VALUEO#= #= #18WIDS8XMIN5 , WIDGET_CONTROLGET_VALUEO#18WIDS8XMAX5 , WIDGET_CONTROLGET_VALUEO#  "P#=,  N_ELEMENTS, FLTARR* #=, REFORM* #=, REFORM* #  "K  + !L  + #*+, CUTSETXRANGE#18WIDS8XPLOT5="M, PLOT!N#18WIDS8XPLOT5 , WIDGET_CONTROLGET_UVALUE# , XPLOT_PLOT#=+=+ d, OPLOTCOLORU!S#  + #18WIDS8XPLOT5="Q=, PLOTNODATA!R#18WIDS8XPLOT5 , WIDGET_CONTROLGET_UVALUE# , XPLOT_PLOT#=O, OPLOTCOLORU!]Xloadct)U#18TOP5,XLOADCTGROUPL!]SigmaFileBrowser)W#==, PICKFILENOCOREAD #=,  STRCOMPRESSREMR"V!]#18WIDS8 SIGMAFILE5, WIDGET_CONTROLSET_VALU!]EXTRACT)\#18WIDS8XMIN5 , WIDGET_CONTROLGET_VALUE#18WIDS8XMAX5 , WIDGET_CONTROLGET_VALUE#  "Z#=,  N_ELEMENTS, FLTARR* #=, REFORM* #=, REFORM* #  "X  + !Y  + #*+, CUTSETXRANGE#+Fitting data in , VECT2STRING, XPLOTWTITLE![#Fitting data in all interval, XPLOTWTITLE!].!]*#18TOP5=, WIDGET_CONTROLNO_COPYSET_UVALUE#;7 aDXPLOTC0} COLTITLESGROUPLEGENDPARENT QUIT_BUTTONSPECSTATETITLE WINDOW_SIZEWTITLEXCOLXLOGXRANGEXTITLEYCOLYLOGYRANGEYTITLEINDATA INDATAOPT COLTITLESGROUPuLEGEND WXPLOTWINDOW TMPASPECPSTATETITLE W_SIZE WTITLE. XCOL XLOGz XRANGEXTITLEYCOLYLOGYRANGEYTITLEXPDT XPDT_LIMITS XPDT_TITLESyDATAvFILEINFHSPECSPEC_ACCESS_FLAGWMENUBARM WXPLOTBASE WXPLOTBUTTONST WXPLOTDRAW  WXPLOTINFO! WXPLOTMESSAGE WFILEMENUL! WLOADFILE" WRESTOREFILE%# WSAVEDATAAS&$ WSAVEPLOTAS2% WPRINTPLOT$&WEXIT"' WEDITMENU3( WCLEARALL@)WLIMITS-* WLIMITSSET#+ WLIMITSSEL,,WTITLESP- WCOLTITLESD.WLEGEND+/WLABELS00WSHIFT<1WERRPLOTE2 WEXEBUFFER(3WEXEBE44WEXEBC55WSYSVAR:6WSYSVARX97WSYSVARY 8WSYSVARP89 WVIEWMENUC: WSHOWDATA>; WSHOWDATAXY7< WSHOWDATASET==WDRAWDIM)> WCOLPANEL/?W2NDAXISQ@WCALCRA WWIDTHINTNB WCOLUMNOPERIC WEVALUATION6DWFOUFILVE WDERIVATIVE?FWINTERPOLATION1G WCONVOLUTIONJH WCORRELATIONGIWFITTINGFJWFITPOLYKKWNLFIT'LWXAFSOMWXCNPICKSN WTOOLSMENU;O WANNOTATEYP WCALCULATOR*QWXPLOTR WXPLOTCLONES WIDLCOMMANDxT WHELPMENUXUWHELPTMPUV WHELPROUTINESWWWB0ZXWB1`YWBQUIT\ZWBREDRAW][WBSAVEc\ WBSETCURRENTf]WBZOOMB^ WBCONTROLSa_WBCURSOR[`NCOL a WBSETBASEib WBSETSAVEDjc WBSET_TMPnd WBSETNCOLdeWBSETCOLhf WBSETCOLASCIIrg WBSETBXCOLkh WBSETXCOLpi WBSETBYCOLgj WBSETYCOLqk WBSETCOLSPEC^l WBSET_TMP0_mWBSETCOLNORMALmn WBSETXCOLSPECso WBSETYCOLSPECtp WBSETCOLMCAoq WBSETXMCAlr WBSETYMCAesH1t DTHCURRENT~u STRCONTROLS vWIDSHw XPEVALUATEx XPCOLUMNOPER{y XPCONVOLUTION|z XPCORRELATION{CALCSTR| EXEBUFFER} SPECHANDLE~SPECSTRSTATESTATE1wSAVEDMESSAGEbXCOLMCAYCOLMCA LABELSLIST@# # , ON_ERROR# ,  KEYWORD_SET" , WIDGET_CONTROLHOURGLASS# xpdt,XPLOT_DEFAULTS #  xpdt_limits,XPLOT_DEFAULTS #  xpdt_titles,XPLOT_DEFAULTS #  #  ,  KEYWORD_SET"18XCOL 6# ,  KEYWORD_SET"18YCOL6#  ,  KEYWORD_SET"  !Xplot , XPLOT_VERSION #  ,  KEYWORD_SET" 18TITLE 6# ,  KEYWORD_SET" # 18XTITLE6# -1,  KEYWORD_SET0" = # ,  KEYWORD_SET" # 18YTITLE6# -1,  KEYWORD_SET0" = # ,  KEYWORD_SET" # 18XMIN=6# 18XMAX=6# 1=9SYSVAR !x.range = [18XMIN5=,  STRCOMPRESSREM,18XMAX5=,  STRCOMPRESSREM]6# ,  KEYWORD_SET"# 18YMIN=6# 18YMAX=6# 1 9SYSVAR !y.range = [18YMIN5=,  STRCOMPRESSREM,18YMAX5=,  STRCOMPRESSREM]6# <NAMEDIR # ,  KEYWORD_SET"# ,TYPE "# 18NAME6# , SPEC_ACCESS # ="# , READ_ASCII # ,  KEYWORD_SET0"# Error opening file=, WIDGET_MESSAGEERROR # :# 18INFILE6!# SPEC input file.11Please use File/Load Data file option to store it+=, WIDGET_MESSAGEERROR # = !# , N_PARAMS="# XPLOT: Using two input arrays., PRINT# =,  N_ELEMENTS, FLTARR # ,  N_ELEMENTS,  N_ELEMENTS"# ;;XPLOT: Error: the two arrays must be of the same dimension., PRINT# :# =, REFORM # =, REFORM !#  # 18NFILES=6#  ,  N_ELEMENTS="#  , DEVICEGET_SCREEN# =   +   #  =,  WIDGET_BASEMBARTITLETLB_SIZE_EVENTS # =,  WIDGET_BASECOLUMN # =,  WIDGET_BASEROWX # = = =CURSOR===,H  WIDGET_DRAWBUTTON_EVENTSMOTION_EVENTSNO_COPYRETAINUVALUEXSIZEYSIZE # ==,  WIDGET_BASEFRAMEROW # 2!VERSION8RELEASE54.0"Xplot message:=,  WIDGET_LABELALIGN_LEFTVALUE !Xplot message:==,&  WIDGET_LABELALIGN_LEFTDYNAMIC_RESIZEVALUE # File=,  WIDGET_BUTTONMENUVALUE! # !Load Data File...LOADFILE,  WIDGET_BUTTONUVALUEVALUE" # !!Restore Xplot backup File...RESTORE,  WIDGET_BUTTONUVALUEVALUE# # #!''Save current set as... (new ASCII file)SAVEAS,  WIDGET_BUTTONUVALUEVALUE$ # %!Save Xplot backup file...SAVEIDL,  WIDGET_BUTTONUVALUEVALUE% # '! Print Plot...PRINT,  WIDGET_BUTTONUVALUEVALUE& # (!ExitEXIT,  WIDGET_BUTTONUVALUEVALUE' # *Edit=,  WIDGET_BUTTONMENUVALUEE( # +( Clear All CLEARDATA,  WIDGET_BUTTONUVALUEVALUE) # ,(Limits=,  WIDGET_BUTTONMENUVALUEE* # -*Set... SETLIMITS,  WIDGET_BUTTONUVALUEVALUE+ # .* Set Defaults SETLIMITSDEF,  WIDGET_BUTTONUVALUEVALUE, # 0*Set Limits as Selection Area SETLIMITSZOOM,  WIDGET_BUTTONUVALUEVALUE, # 3( Titles... SETTITLES,  WIDGET_BUTTONUVALUEVALUE- # 4(Column Titles... SETCOLTITLES,  WIDGET_BUTTONUVALUEVALUE. # 6( Legend... SETLEGEND,  WIDGET_BUTTONUVALUEVALUE/ # 7( Labels... SETLABELS,  WIDGET_BUTTONUVALUEVALUE0 # 9( Shift data...SHIFT,  WIDGET_BUTTONUVALUEVALUE1 # :( Error bars...ERRPLOT,  WIDGET_BUTTONUVALUEVALUE2 # ;(Legend/Label buffer=,  WIDGET_BUTTONMENUVALUEE3 # <3CleanEXEBUFFERCLEAN,  WIDGET_BUTTONUVALUEVALUE4 # =3Edit... EXEBUFFEREDIT,  WIDGET_BUTTONUVALUEVALUE5 # >(System Variables=,  WIDGET_BUTTONMENUVALUEE6 # ?6!xSYSVAR,  WIDGET_BUTTONUVALUEVALUE7 # @6!ySYSVAR,  WIDGET_BUTTONUVALUEVALUE8 # A6!pSYSVAR,  WIDGET_BUTTONUVALUEVALUE9 # CView=,  WIDGET_BUTTONMENUVALUEE: # D: Show Data=,  WIDGET_BUTTONMENUVALUEE; # E;!!Plotted X Y columns (current set) SHOWDATAXY,  WIDGET_BUTTONUVALUEVALUE< # G;All columns of the current set SHOWDATASET,  WIDGET_BUTTONUVALUEVALUE= # I:Draw window size...DRAWDIM,  WIDGET_BUTTONUVALUEVALUE> # K:Change Column Panel...COLPANEL,  WIDGET_BUTTONUVALUEVALUE? # M:Second X/Y axis... SECONDAXIS,  WIDGET_BUTTONUVALUEVALUE@ # P Calculations=,  WIDGET_BUTTONMENUVALUEEA # QAWidth/Integral/MinMax CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEB # SAMoments CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEB # TAOperations with columns... COLUMNOPER,  WIDGET_BUTTONUVALUEVALUEC # VAOperations with sets... CALCULATIONS,  WIDGET_BUTTONUVALUEVALUED # XAFourier Filtering... CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEE # ZA Derivative CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEF # [ACDF CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEF # \A Smooth... CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEF # ]AInterpolation... CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEG # _AConvolution... CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEH # `ACorrelation... CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEI # bAFitting=,  WIDGET_BUTTONMENUVALUEEJ # cJPolynomial/Gaussian... CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEK # eJ Non linear... CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEL # mAXAFS=,  WIDGET_BUTTONMENUVALUEEM # nMXAFS extraction (xaid_mu2chi) CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEN # pMXAFS Fourier Filter (xaid_ff) CALCULATIONS,  WIDGET_BUTTONUVALUEVALUEN # sTools=,  WIDGET_BUTTONMENUVALUEEO # uO Annotate...ANNOTATE,  WIDGET_BUTTONUVALUEVALUEP # vO CalculatorWCALC,  WIDGET_BUTTONUVALUEVALUEQ # wO Xplot (Empty)XPLOT,  WIDGET_BUTTONUVALUEVALUER # xO Xplot (Clone) XPLOTCLONE,  WIDGET_BUTTONUVALUEVALUES # zO IDL commandIDLCOMM,  WIDGET_BUTTONUVALUEVALUET # |Help=,  WIDGET_BUTTONHELPVALUEEU # }U About Xplot HELPABOUT,  WIDGET_BUTTONUVALUEVALUEV # ~UXplotHELP,  WIDGET_BUTTONUVALUEVALUEV # UXplot WWW manualHELPWWW,  WIDGET_BUTTONUVALUEVALUEV # URoutines used by Xplot=,  WIDGET_BUTTONMENUVALUEEW # W Read_AsciiHELP,  WIDGET_BUTTONUVALUEVALUEV # W Spec_AccessHELP,  WIDGET_BUTTONUVALUEVALUEV # WLegendHELP,  WIDGET_BUTTONUVALUEVALUEV # W Int_TabulatedHELP,  WIDGET_BUTTONUVALUEVALUEV # WMomentHELP,  WIDGET_BUTTONUVALUEVALUEV # WDerivHELP,  WIDGET_BUTTONUVALUEVALUEV # WConvHELP,  WIDGET_BUTTONUVALUEVALUEV # WInflHELP,  WIDGET_BUTTONUVALUEVALUEV # WLinFitHELP,  WIDGET_BUTTONUVALUEVALUEV # WLadFitHELP,  WIDGET_BUTTONUVALUEVALUEV # WPolyFitWHELP,  WIDGET_BUTTONUVALUEVALUEV # WSVDfitHELP,  WIDGET_BUTTONUVALUEVALUEV # WPlotFileHELP,  WIDGET_BUTTONUVALUEVALUEV # W Gauss_FitHELP,  WIDGET_BUTTONUVALUEVALUEV # WGaussFitHELP,  WIDGET_BUTTONUVALUEVALUEV # W Curvefit1HELP,  WIDGET_BUTTONUVALUEVALUEV # W PowellFitHELP,  WIDGET_BUTTONUVALUEVALUEV # =,  WIDGET_BASEROWLX # X==,  WIDGET_BASEFRAMEROWY # YQuitEXIT,  WIDGET_BUTTONUVALUEVALUEZ # YReDrawREDRAW,  WIDGET_BUTTONUVALUEVALUE[ # Y Save CurrentSAVE,  WIDGET_BUTTONUVALUEVALUE\ # Y Set Current SETCURRENT,  WIDGET_BUTTONUVALUEVALUE] # YZoomZOOM,  CW_BGROUPUVALUE^ # Y Show ControlsCONTROLS,  WIDGET_BUTTONUVALUEVALUE_ # X= ,  WIDGET_TEXTFRAMEXSIZE` # ,  KEYWORD_SET""# ,  N_ELEMENTS="=, PLOTFILENODATA! # =,  N_ELEMENTSa # ,  KEYWORD_SET"18YCOL6!18YCOLa6#  ,  KEYWORD_SET" 18XCOL 6!!18XCOL=6!## =a # ,  KEYWORD_SET"'# ,  N_ELEMENTS="$+ # ,  KEYWORD_SET"&# ,  N_ELEMENTS="%# a=, SINDGEN=a  # ,  N_ELEMENTSa"&>>The number of column titles is different to the column number., WIDGET_MESSAGE !(# = # ==,  WIDGET_BASEALIGN_CENTERROWb # b==,  STRCOMPRESSREM,  WIDGET_LABELVALUEc # b saved sets. Current set has ,  WIDGET_LABELVALUEd # ba=,  STRCOMPRESSREMX,  WIDGET_LABELVALUEe # b columns,,  WIDGET_LABELVALUEd # ,  WIDGET_BASEf # f===,  WIDGET_BASEALIGN_CENTERMAPROWg # g X: ,  WIDGET_LABELVALUEd # ,  KEYWORD_SET0")# g,  WIDGET_BASEh # h18XCOL5, STRING=, STRTRIM====XCOL,,  WIDGET_TEXTEDITFRAMEUVALUEVALUEXSIZEYSIZEi # g Y: ,  WIDGET_LABELVALUEd # g,  WIDGET_BASEj # j18YCOL5, STRING=, STRTRIM====YCOL,,  WIDGET_TEXTEDITFRAMEUVALUEVALUEXSIZEYSIZEk !*# g,  WIDGET_BASEh # hXCOL, WIDGET_DROPLISTUVALUEVALUEi # g Y: ,  WIDGET_LABELVALUEd # g,  WIDGET_BASEj # jYCOL, WIDGET_DROPLISTUVALUEVALUEk # f==,  WIDGET_BASEMAPROWl # l=,  WIDGET_BASEMAPm # m==,  WIDGET_BASEMAPROWn # n X:,  WIDGET_LABELVALUEd # 2!VERSION8RELEASE54.0"+nXCOL, WIDGET_DROPLISTUVALUEVALUEo !,nXCOL=," WIDGET_DROPLISTDYNAMIC_RESIZEUVALUEVALUEo # n Y:,  WIDGET_LABELVALUEd # 2!VERSION8RELEASE54.0"-n YCOL, WIDGET_DROPLISTUVALUEVALUEp !.n YCOL=," WIDGET_DROPLISTDYNAMIC_RESIZEUVALUEVALUEp # m==,  WIDGET_BASEMAPROWq # qChannelEnergy+==XCOL==,. CW_BGROUPEXCLUSIVEFRAMEROWSET_VALUEUVALUEr # q Y: ,  WIDGET_LABELVALUEd # q0====YCOL,,  WIDGET_TEXTEDITFRAMEUVALUEVALUEXSIZEYSIZEs # l Scan sel...SSCAN,  WIDGET_BUTTONUVALUEVALUEm # ==, WIDGET_CONTROLNO_COPYREALIZE# ]=, WIDGET_CONTROLSENSITIVEE# ,  KEYWORD_SET"1# ,TYPE= "/# ,  HANDLE_CREATEVALUEt # tu !0# u !3# u #  strcontrols,XPLOT_DEFAULTSv #  ,  KEYWORD_SET"4# 18KIND=6# v18AXIS=6# ,  KEYWORD_SET"5# 18KIND= 6# v18AXIS=6#  ,  KEYWORD_SET,  KEYWORD_SET"6# 18KIND=6# v18AXIS= 6# `glnqcehjikoprs]_=2=2=2=2+ <XPWIDSMAINCURSOR ASCIIPANEL SPECPANEL NORMALPANELMCAPANELSAVEDNCOLXCOLBASEYCOLBASEXCOLYCOLXCOLSPECYCOLSPECXCOLMCAYCOLMCA SETCURRENT SHOWCONTROLSCONTROLSMESSAGEDRAWw #  XPevaluate,XPLOT_DEFAULTSx #  XPcolumnoper,XPLOT_DEFAULTSy # ! XPconvolution,XPLOT_DEFAULTSz # " XPcorrelation,XPLOT_DEFAULTS{ # #xyz{< XPEVALUATE XPCOLUMNOPER XPCONVOLUTION XPCORRELATION| # &,  KEYWORD_SET"7} !8=} # (=,  HANDLE_CREATEVALUE~ # )=~===2<ONHANDLEMCASCANSCANBASELABELS # ,=,  HANDLE_CREATEVALUE~ # -w|=u=2v} @ff=!P!X!Y<PXY<WIDSCALCSTRXPDT XPDT_LIMITS XPDT_TITLESBUFFER DTHCURRENT DTHBUFFER STRCONTROLSSPEC EXEBUFFERVERSIONCLONED COLTITLESFILEINFPSYSVAR # 418WIDS518SPEC5,XPLOT_MAPPANELS# 6,  KEYWORD_SET"9 # 7,  KEYWORD_SET": # 9,  KEYWORD_SET";,XPLOT_LOADFILESPEC# =,  KEYWORD_SET"<# >i18XCOL5=, WIDGET_CONTROLSET_DROPLIST_SELECT# ?k18YCOL5=, WIDGET_CONTROLSET_DROPLIST_SELECT# B,  KEYWORD_SET"?# D18WIDS5w # E18WIDS8SAVED5, WIDGET_CONTROLGET_VALUES# F18WIDS8NCOL5a, WIDGET_CONTROLGET_VALUES# G18WIDS8XCOL5 , WIDGET_CONTROLGET_VALUES# H18WIDS8YCOL5, WIDGET_CONTROLGET_VALUES# I18WIDS8MESSAGE5, WIDGET_CONTROLGET_VALUE# J18WIDS8XCOLMCA5, WIDGET_CONTROLGET_VALUE# K18WIDS8YCOLMCA5, WIDGET_CONTROLGET_VALUE# N # O18WIDSw6# P18WIDS8SAVED5, WIDGET_CONTROLSET_VALUE# Q18WIDS8NCOL5a, WIDGET_CONTROLSET_VALUE# R18WIDS8XCOL5 , WIDGET_CONTROLSET_VALUE# S18WIDS8YCOL5, WIDGET_CONTROLSET_VALUE# T18WIDS8MESSAGE5, WIDGET_CONTROLSET_VALUE# U18WIDS8XCOLMCA5, WIDGET_CONTROLSET_VALUE# V18WIDS8YCOLMCA5, WIDGET_CONTROLSET_VALUE# X18SPEC8ON5"=# Y18WIDS518SPEC5,XPLOT_MAPPANELS# Z18SPEC8LABELS5!,STRPARSE # [18WIDS8XCOLSPEC518XPDT8XCOL5=," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE# ]18WIDS8YCOLSPEC518XPDT8YCOL5=," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE# a18WIDS8SAVED5, WIDGET_CONTROLGET_VALUEI# b, FIX=">18WIDS8 SETCURRENT5=, WIDGET_CONTROLSENSITIVEI# d, XPLOT_PLOT# e=, WIDGET_CONTROLNO_COPYSET_UVALUE# h,  KEYWORD_SET"@# j, XPLOT_PLOT# k18PSYSVAR18PSYSVAR56# n=, WIDGET_CONTROLNO_COPYSET_UVALUE# pxplot,XMANAGERGROUP_LEADER# s;7 t XPLOT_ADDCOL 8  STATE YFITTMPSETNCOLNPTSNEWSETYCOLNCOLADDTMPH1 LABELS LABELSLIST ## , ON_ERROR#18 DTHCURRENT5 , PLOTFILENODATA# ,  N_ELEMENTS #=,  N_ELEMENTS #=, FLTARR #18SPEC8ON518SPEC8MCA5"#= #====   #= #==   #= #+2 !#==  # # #= #18WIDS8NCOL5==,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUE#18WIDS8XCOL5=,  WIDGET_INFONAMETEXT"#18WIDS8YCOL5=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUE!#18 COLTITLES518 COLTITLES5,  N_ELEMENTS==,  STRCOMPRESSREM: Fit+ #, XPSTR_UPDATECOLTITLES#18WIDS8XCOL5, WIDGET_CONTROLSET_VALUE#18WIDS8YCOL5=," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE#18XPDT8YCOL6#18 DTHCURRENT5,  HANDLE_FREE#,  HANDLE_CREATEVALUE #18 DTHCURRENT 6#18SPEC8ON5=" #18SPEC8LABELS5!Fit #18SPEC8LABELS 6# ! ,STRPARSE # ,  N_ELEMENTS=, SINDGEN= ,  N_ELEMENTS ,  STRCOMPRESS:   #=/"#Error (column separator)=, WIDGET_MESSAGEERROR #:#18SPEC8MCA5" #18WIDS8YCOLMCA5=,  STRCOMPRESSREMR, WIDGET_CONTROLSET_VALUE! #18WIDS8XCOLSPEC5 , WIDGET_CONTROLSET_VALUE# 18WIDS8YCOLSPEC5 ," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE#18WIDS8MESSAGE500Xplot message: Result of the fit has been placed in column =,  STRCOMPRESSREMR, WIDGET_CONTROLSET_VALUEI#, XPLOT_PLOT#;7 XPLOT_CALCULATIONS*11 EVENTSTATEEVENTVALTMP# TMPSET_PRE TMPSET1,XMINXMAXTMPSETTTEXT. FWHM_VAL INT_VAL+ MIN_VAL MAX_VAL MIN_VAL_X MAX_VAL_X TEXT LEGENDTXT EXEBUFFER NPOINTS$XMDEVXSDEV1XMOMYMDEVYSDEVYMOMDER"TMPOUT NELEM&I%STRTMPACTION(WIDTH' EDGE!TMPMENU"N_INTERP0#INT_STEP $NEWSET%WTITLE& CONV_DATA)' CONV_FLAG-( CONV_TITLES)ITMP*TMPSET2+CONV_RES*,UNIT!-OUTTEXT. OPLOTFLAG//YFIT04#h#p18ID5, WIDGET_CONTROLGET_VALUE#q18 DTHCURRENT5,  KEYWORD_SET0"#tOperations with sets..."!#v No data in current set, WIDGET_MESSAGE #w!4#y18 DTHCURRENT5 , PLOTFILENODATA#z18XPDT8XCOL5=18XPDT8YCOL5=+ #{18 XPDT_LIMITS8XMIN5 #|18 XPDT_LIMITS8XMAX5 #}"#~+, CUTSETXRANGE###Calculations have been performed in the X interval (=,  STRCOMPRESSREMX,=,  STRCOMPRESSREMX) !# # #18WIDS8MESSAGE5Xplot message:  , WIDGET_CONTROLSET_VALUE#=,  N_ELEMENTS",PLOTFILE#Width/Integral/MinMax) #=,GETFWHMPLOT # =, INT_TABULATED #= , MAXMINX #=, MAXMINX #   FWHM value is:  =,  STRCOMPRESSREIntegral is :  =,  STRCOMPRESSREMaximum y (Peak) is :  =,  STRCOMPRESSREMinimum y is :  =,  STRCOMPRESSREMaximum x is : =,  STRCOMPRESSREMinimum x is : =,  STRCOMPRESSRE  00Do you want to write few of these values in the  plot legend? +  #===, WIDGET_MESSAGECANCELDEFAULT_CANCELINFO #Cancel"!4#legend,['FWHM value is:  =,  STRCOMPRESSRE','Integral is :  =,  STRCOMPRESSRE','Max (Peak) is :  =,  STRCOMPRESSRE','Minimum is :  =,  STRCOMPRESSRE'] #18 EXEBUFFER5,  KEYWORD_SET" 18 EXEBUFFER5+ !  #, XPSTR_UPDATEEXEBUFFER#, XPLOT_PLOT!4Moments)#=,  N_ELEMENTS #=,MOMENTMDEVSDEV #=,MOMENTMDEVSDEV #   Number of data points: =,  STRCOMPRESSREMX %%Values for the abscissas values are:  Mean: ==,  STRCOMPRESSREM Variance: ==,  STRCOMPRESSREM Skewness: =,  STRCOMPRESSREM Kurtosis: =,  STRCOMPRESSREM Mean Absolute dev: =,  STRCOMPRESSREM Standard Deviation: =,  STRCOMPRESSREM %%Values for the ordinates values are:  Mean: ==,  STRCOMPRESSREM Variance: ==,  STRCOMPRESSREM Skewness: = =,  STRCOMPRESSREM Kurtosis: = =,  STRCOMPRESSREM Mean Absolute dev: =,  STRCOMPRESSREM Standard Deviation: =,  STRCOMPRESSREM+ #Xplot Calculations/Moments18TOP5, STRLEN, MAX,  N_ELEMENTS,& SHOWINFO1GROUPHEIGHINFOTEXTTITLEWIDTH!4Operations with sets...)#18CALCSTR8 XPEVALUATE5 #18TOP5,XPLOT_EVALUATEEVAL_STRGROUP#18CALCSTR8 XPEVALUATE6!4Fourier Filtering...)#18TOP5==, FOURIERFILTERDATAGROUPXDATA!4 Derivative)# #===,DERIV #Xplot Calculations/Derivative, XPLOTWTITLE!4CDF)# #=,  N_ELEMENTS #==%=====, INT_TABULATED '#Xplot Calculations/CDF, XPLOTWTITLE!4 Smooth...)#**The Xplot smooth option smooths the Y data--of the current graph with a boxcar average ofthe specified width.It uses the SMOOTH IDL function+, WIDGET_MESSAGE # #= 0NoYes+<WIDTHEDGE #==Width of smmothing window:Edge Truncation: +,"XSCRMENUACTIONINTERPNOTYPETITLES#DO":# #18WIDTH5, FLOAT #1=9EDGE5, FIX! #== !, SMOOTHEDGE #Xplot Calculations/Smooth Width: 18WIDTH5=,  STRCOMPRESSREMG, XPLOTWTITLE!4Interpolation...)#0LinearSpline+ <KINDNPTS" #"==Interpolation: Number of points of new set:+ Interpolation,*XSCRMENUACTIONINTERPNOTYPETITLESWTITLE#DONT"!4#"18NPTS5# #=, MAX=, MIN#=, FLOAT$ #= #, FLTARR% #=#, FINDGEN$=, MIN% #"1=9KIND50"#====%,INTERPOL% !#====%,SPLINE% # Xplot Calculations/Interpolation& #"1=9KIND50"&(Linear)& !&(Spline)& #%&, XPLOTWTITLE!4Convolution...)$# 18CALCSTR8 XPCONVOLUTION5' # 1 w(0) EQ 111 w(3) EQ 0+( # TypeExternal file:Normalization:Write output to file:Output file name:+) #'18TOP5)(==Convolution data,8XSCRMENUACTIONFLAGSGROUPINTERNOTYPETITLESWTITLE#DONT"!4#'1=9TYPE5=,  STRCOMPRESSREM1" #'18FILENAME5, READ_ASCII #,  KEYWORD_SET0"#Error opening file'18FILENAME5=, WIDGET_MESSAGEERROR* #!4#== + !!#+ #+'1=9 NORMALIZATION5, FIX, CONV2NORM, #,Xplot Calculations/Convolution, XPLOTWTITLE# 18CALCSTR8 XPCONVOLUTION'6#!'1=9WRITE5=,  STRCOMPRESSREM0"###File '18FILEOUT5 already exists. Overwrite it?+==, WIDGET_MESSAGECANCELDEFAULT_CANCEL #&Cancel""!4#'-'18FILEOUT5=, OPENWGET_LUN#(-,, PRINTF#)-, FREE_LUN#*File '18FILEOUT5 written to disk.=, WIDGET_MESSAGEINFO !4Correlation...)*#/18CALCSTR8 XPCORRELATION5' #01 w(0) EQ 111 w(3) EQ 0+( #2TypeExternal file:Normalization:Write output to file:Output file name:+) #4'18TOP5)(==Convolution data,8XSCRMENUACTIONFLAGSGROUPINTERNOTYPETITLESWTITLE#7DONT"%!4#8'1=9TYPE5=,  STRCOMPRESSREM1"'#:'18FILENAME5, READ_ASCII #;,  KEYWORD_SET0"&#<Error opening file'18FILENAME5=, WIDGET_MESSAGEERROR* #>!4#@== + !(#A+ #B=, WIDGET_CONTROLHOURGLASST#C+'1=9 NORMALIZATION5, FIX, INFL2NORM, #E,Xplot Calculations/Correlation, XPLOTWTITLE#F18CALCSTR8 XPCORRELATION'6#G'1=9WRITE5=,  STRCOMPRESSREM0")#IFile '18FILEOUT5 already exists. Overwrite it?+==, WIDGET_MESSAGECANCELDEFAULT_CANCEL #L-'18FILEOUT5=, OPENWGET_LUNO#M-,, PRINTF#N-, FREE_LUN#OFile '18FILEOUT5 written to disk.=, WIDGET_MESSAGEINFO !4Polynomial/Gaussian...)0#U. #V=,  N_ELEMENTS/ #W/ d",=+/ !-=/ #Y/.,XPLOT_FITPOLGAUSSEXTRAPOPLOTOUTTEXT0 #[0,  KEYWORD_SET0".!4#\18TOP5.., STRLEN, MAX.,  N_ELEMENTS%%Xplot Polynomial/Gaussian Fit Results,& SHOWINFO1GROUPHEIGHINFOTEXTTITLEWIDTH#`18WIDS8MESSAGE5,,Xplot message: Diamond points are the result of the fit., WIDGET_CONTROLSET_VALUEI#c=  --The overplotted diamond points are the result..of the fitting routine. This data has not been++saved yet, thus will disapper when updatingthe Xplot window... ((You can append the result of the fit to ++the current set in a new additional column. Do you want to do that?+ , WIDGET_MESSAGECANCEL #lCancel"/!4#m0, XPLOT_ADDCOL!4 Non linear...)1#p=18TOP518WIDS8MAIN5,XNLFITGROUPNODRAWXPLOTMAIN!4XAFS extraction (xaid_mu2chi))2#t18TOP5,  XAID_MU2CHIGROUPP!4XAFS Fourier Filter (xaid_ff))3#v18TOP5, XAID_FFGROUPP!4.#wCALCULATIONS case not found: , PRINT!4*#z18TOP5=, WIDGET_CONTROLNO_COPYSET_UVALUEM#|;7 XPLOT_COLUMNOPER ##GROUPRESULTCOLOLUMNSTRSETGROUP  RESULTCOLUMNSTRTXTTMPCOL1COL2COL3 COL4 COL5 COL6 COL7 COL8 COL9!COL10COL11COL12COL13COL14COL15COL16COL17COL18COL19COL20 NCOL"FLAGSTITLESSTR_OLDACTIONICOMMAND NEWSET#!RESULT"## , ON_ERROR#77The 'Operation With Columns' option allows the user to 11calculate a new column data in the current set as a function of the existing ones. !!The resulting column can either: 55 1) Be appended to the set, thus substituting the // current set by a new one with one more. 00 2) Substitute an existing column in the set.// 3) Export the result to a new Xplot window.+  # =, WIDGET_MESSAGECANCELINFO #Cancel":#  # = # = # = # = # = # = # = # = # = # = # = # = # = # = #= #= #= #= #= #=,  N_ELEMENTS # "#''Operation with columns are only allowed""with set holding up to 20 columns.The current set has =,  STRCOMPRESSREM columns.+ #=, WIDGET_MESSAGEERROR #:#,  KEYWORD_SET0" XPcolumnoper,XPLOT_DEFAULTS #11 w(1) EQ 1+ #Expression for new column:  Result to: Column to overwrite: + #  #!==Operation with columns,8XSCRMENUACTIONFLAGSGROUPINTERPNOTYPETITLESWTITLE#$DO"#% #&:#-=%#.col=,  STRCOMPRESSREMX = set(==,  STRCOMPRESSREM,*)  #1 A '#4,  KEYWORD_SET0" #6Empty data set Returning+=, WIDGET_MESSAGEERROR #7 #8:#> result = 18COMMAND5 #? A #@=" #A##Operation expression not understood=, WIDGET_MESSAGEERROR #B #C:#I1=9TO5=,  STRCOMPRESSREM0) #K= #L=,  N_ELEMENTS, FLTARR! #M==!  #Nnewset(=,  STRCOMPRESSREM ,*) = result #P A !1) #S! #T18OUTCOL5, FIX #Unewset(18OUTCOL5==,  STRCOMPRESSREM ,*) = result #W A !2) #Z! #["11Xplot 'Calculations/Operations with sets' results, XPLOTWTITLE!.!*#b! #d;7 t XPLOT_COMPILE##;7 XPLOT_CONTROLS_EVENTEVENTUVALOOO##18TOP5, WIDGET_CONTROLGET_UVAL# #18TOP6#xplot ,  XREGISTEREDNOSHOW ", XPLOT_EVENT#;7  XPLOT_EVALUATE EVAL_STRGROUPSET EVAL_STRGROUPTEXTTMPFLAGSTITLES EVAL_STR_OLDACTION SET1 AX AY SET2 BX BYCXSET2OLDCYSETNEWCHOICEHANDLEHANDLE1HANDLE2HANDLE3XMAXXMINYMAXYMINUNIT## , ON_ERROR#;;The 'operations with sets' option allows the user to create33a new set of data called C (with abscissas Cx, and 66ordinates Cy) which is calculated as a function of two66existing sets: A (usually the current displayed data, 33with abscissas Ax and ordinates Ay) and an optional set B read from a 2-column file. 77The user must provide the evaluation expression written88using IDL syntax, using Ax,Ay,Bx,By and Cx as variables. 44In the case that the two sets A and B have different00abscissas, the set B is substituted by an inter-%%polated one with new abscissas as Ax. 44This option can also be used to create new data, for77example abscissas Cx:findgen(100) and ordinates Cy:Cx^2+ # =, WIDGET_MESSAGECANCELINFO #Cancel":#,  KEYWORD_SET0" XPevaluate,XPLOT_DEFAULTS #1111 w(2) EQ 11 w(5) EQ 11+ #Expression for x Cx=f(Ax): Expression for y Cy=f(Ay,By): Number of data sets: A data set: B data file:Write output to file: Output file name:Overplot original data:+ # #==Evaluate input data,8XSCRMENUACTIONFLAGSGROUPINTERPNOTYPETITLESWTITLE#"DO"## #$:#+,  KEYWORD_SET" #,18SET15 current set"#-18SET15, READ_ASCII #.,  KEYWORD_SET0"#/Error opening file Returning+=, WIDGET_MESSAGEERROR #0 #1:#3 ! #5,  KEYWORD_SET0"#6Empty data set Returning+=, WIDGET_MESSAGEERROR #7 #8:#: #<   #==  #A1= 9NSET5=,  STRCOMPRESSREM1" #C18SET25=,  STRCOMPRESSREM, READ_ASCII #D,  KEYWORD_SET0" #FError opening file Returning+=, WIDGET_MESSAGEERROR #G #H:#J #K=  #L= #R=  #S18 EXPRESSION_X5A #T=" #VExpression for x not understood=, WIDGET_MESSAGEERROR #W #X:#^1= 9NSET5=,  STRCOMPRESSREM1"#_  #`  #a=== =  ,INTERPOL #e=   #f=  #i=  #j18 EXPRESSION_Y5A #k="#lExpression for y not understood=, WIDGET_MESSAGEERROR #m #n:#q=,  N_ELEMENTS, FLTARR #r=  #s= #w1= 9SAVE_AS5=,  STRCOMPRESSREM #{1= 9OVER5=,  STRCOMPRESSREM1"#|1= 9NSET5=,  STRCOMPRESSREM1"#~, HANDLE_CREATE #=,  HANDLE_CREATEFIRST_CHILDVALUE # =,  HANDLE_CREATESIBLINGVALUE # =,  HANDLE_CREATESIBLINGVALUE #= =  =  +, MINMAXX #== = +, MINMAXX !#, HANDLE_CREATE #=,  HANDLE_CREATEFIRST_CHILDVALUE # =,  HANDLE_CREATESIBLINGVALUE #= =  +, MINMAX #== +, MINMAX #Xplot , XPLOT_VERSION## Results of Operations with sets...++,XPLOTWTITLEXRANGEYRANGE!#Xplot , XPLOT_VERSION## Results of Operations with sets..., XPLOTWTITLE#1"#18FILENAME5, CHECKFILE="#File 18FILENAME5 already exists Overwrite it?+==, WIDGET_MESSAGECANCELDEFAULT_CANCEL #Cancel":#18FILENAME5=,  STRCOMPRESSREMX=, OPENWGET_LUNR#, PRINTF#, FREE_LUN#File 18FILENAME5 written to disk=, WIDGET_MESSAGEINFORMATIONU #;7 =l XPLOT_EVENTQ QEVENT ERROR_STATUSSTATEE EVENTUVAL, WINDOWNUM(PATHOLDPATHFILEHSPECSPEC_ACCESS_FLAG TMP- NCOL/ COLTITLES' BAD% MCA FSCAN EVENT_NAME&IERRBWSIZENNEWSTATE9NSAVED PRINTBUFFER< TMPSET_PRE+TMPSETFFILEACTIONUNIT#NPOINTSFORMATGFILE2ITEXT>LABELS1 JUNK!!WIDX$"WIDY#BUFFER?$ EXEBUFFER%COMMANDI&WKIND'NEW1*(NEW2C)TMPSTR0*EVENTVAL+TMPCOL,NCOL_OLD)-NCOLADD..TMPTXT/ LABELSLIST=0H1A1ITMP42JTMP"3 XRANGEOLDO4 YRANGEOLDJ5NN6LIST7NLIST78XCOLP9YCOLQ:PSYM@; LINESTYLE8<THICK =COLOR >SHIFTVAL ?HH @INDEX3ANEWINDEXB DTHBUFFERCTEMPGDTEMP2 ETEMP1FFCOORDS_DKGCOORDSMH ZOOM_SEL_FLAGIDISTXLJDISTYDKCOORDS0HLX0:MY0;NXRANGE5OYRANGE6P#<#>, CATCH#? "#@ , CATCHCANCEL#A!#F18TOP5=, WIDGET_CONTROLGET_UVALUENO_COPY#G18ID5, WIDGET_CONTROLGET_UVALUE#K=,  TAG_NAMESSTRUCTURE_NAME WIDGET_BASE"#L2!D8NAME5WIN"18WIDS8DRAW518X5 18Y5 n, WIDGET_CONTROLSCR_XSIZESCR_YSIZE!18WIDS8DRAW518X5=18Y5 , WIDGET_CONTROLSCR_XSIZESCR_YSIZE#P, XPLOT_PLOT#Q!#T18WIDS8DRAW5, WIDGET_CONTROLGET_VALUE#U, WSET#V18PSYSVAR8P5 !P#W18PSYSVAR8X5 !X#X18PSYSVAR8Y5 !Y#ZLOADFILE)#_ #`18FILEINF8DIR5", CDCURRENT! 18FILEINF8DIR5 #b18TOP5==Select a data file,2PICKFILEGET_PATHGROUPMUST_EXISTNOCONFPATHTITLE #d" !#q=, WIDGET_CONTROLHOURGLASS#r18FILEINF8NAME6#s18FILEINF8DIR6#t18SPEC8HANDLE5,  HANDLE_VALUE#, SPEC_ACCESS # ="#, READ_ASCII # ,  N_ELEMENTS=" #Error reading ASCII file.=, WIDGET_MESSAGEERROR #!#18SPEC8ON=6#= ,  N_ELEMENTS #18XPDT8XCOL=6#18XPDT8YCOL 6#18WIDS8XCOL5=,  WIDGET_INFONAMEDROPLIST" #Col:  =, SINDGEN= =,  STRCOMPRESSREM # , XPSTR_UPDATECOLTITLES#18WIDS8XCOL5 =," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE#18WIDS8YCOL5  =," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE! #18WIDS8XCOL51, WIDGET_CONTROLSET_VALUEI#18WIDS8YCOL5 =,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEI#18SPEC8SCANBASE5= , WIDGET_CONTROLBAD_IDDESTROY#18XPDT8SHIFT =+6#18XPDT8ERRPLOT==+6#18WIDS8NCOL5 =,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUES#18WIDS518SPEC5,XPLOT_MAPPANELS#18WIDS8MESSAGE5 Xplot message: ASCII data file () read succesfully, WIDGET_CONTROLSET_VALUES!#= #-==, SPEC_SCANNO_EMPTYRETURN_INDEX=  #=/"#-==, SPEC_SCANMCDATARETURN_INDEX=  #=/"#No data found in SPEC file.=, WIDGET_MESSAGEERROR #!#= #18SPEC8HANDLE5=,  HANDLE_VALUESET#,XPLOT_READSPEC # ,  N_ELEMENTS="#!#18SPEC8ON=6#18WIDS8MESSAGE5Xplot message: SPEC data file () read succesfully, WIDGET_CONTROLSET_VALUE#18 DTHCURRENT5,  KEYWORD_SET"18 DTHCURRENT5,  HANDLE_FREE#18 DTHCURRENT ,  HANDLE_CREATEVALUE6#18WIDS518SPEC5,XPLOT_MAPPANELS#18SPEC8SCANBASE5 18SPEC8SCANBASE5 =<IDTOPHANDLER, WIDGET_CONTROLBAD_IDSEND_EVENT#, XPLOT_PLOT!SSCAN)#18SPEC8SCANBASE5= , WIDGET_CONTROLBAD_IDSHOW#=,  TAG_NAMESSTRUCTURE_NAME #NEW_SCAN_EVENT"#=, WIDGET_CONTROLHOURGLASS#18NEWSCAN518MCA5=,XPLOT_READSPECOLDCOL #18 DTHCURRENT ,  HANDLE_CREATEVALUEO6#18WIDS518SPEC5,XPLOT_MAPPANELS#, XPLOT_PLOT!# 18SPEC8SCANBASE5"#18SPEC8HANDLE518ID5 18SPEC8MCA5=18TOP5Scan Selection,6 XSPECSCANCALLERGROUP_LEADERMCANOT_ALLTITLETLB_ID#18SPEC8SCANBASE 6!RESTORE)%#*.bck=18TOP5=,PICKFILEFILTERGROUPNOCONFREAD  #"!#,"XPLOT_RESTORESTATEFILENAMEIERROLDSTATEWSIZE #="#!!Error restoring Xplot backup file=, WIDGET_MESSAGEERROR #!#18WIDS=9CONTROLS5=,  WIDGET_INFOVALID_ID"#18WIDS8 SHOWCONTROLS5 Show Controls, WIDGET_CONTROLSET_VALUER#18WIDS=9CONTROLS5=, WIDGET_CONTROLDESTROYE# #18SPEC8ON=6#=2!D8X_SIZE5=2!D8Y_SIZE5"#18WIDS8DRAW5==, WIDGET_CONTROLXSIZEYSIZE#, XPLOT_PLOT#18WIDS8MESSAGE5..Xplot message: Xplot restored backup file was , WIDGET_CONTROLSET_VALUEZ#18BUFFER5,  KEYWORD_SET"18BUFFER5,  N_ELEMENTS != #18WIDS8SAVED5=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUE#=" 18WIDS8 SETCURRENT5=, WIDGET_CONTROLSENSITIVE#18 DTHCURRENT5 =, PLOTFILENODATA#= ,  N_ELEMENTS #18WIDS8NCOL5 =,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUE#18WIDS8XCOL5=,  WIDGET_INFONAMEDROPLIST"##18 COLTITLES5,  KEYWORD_SET0"!#COl:  =, SINDGEN= =,  STRCOMPRESSREM # , XPSTR_UPDATECOLTITLES#18 COLTITLES5,  N_ELEMENTS ""# =, SINDGEN=  # , XPSTR_UPDATECOLTITLES#18WIDS8XCOL518 COLTITLES518XPDT8XCOL5=, WIDGET_CONTROLSET_DROPLIST_SELSET_VALUE#18WIDS8YCOL518 COLTITLES518XPDT8YCOL5=, WIDGET_CONTROLSET_DROPLIST_SELSET_VALUE!$# 18WIDS8XCOL518XPDT8XCOL5=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEI# 18WIDS8YCOL518XPDT8YCOL5=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEI!PRINT)&#  #, XPLOT_PLOTPRINTBUFFER#18TOP5=,XPRINTBUFFERCOLORGROUP! CLEARDATA)*#==..This options deletes all your Xplot graph and 22initialize command. Is really that you want to do?+, WIDGET_MESSAGECANCELDEFAULT_CANCEL # Cancel"'!#====,4 XPSTR_UPDATENOBUFFERNODTHBUFFERNODTHCURRENTNOEXEBUFFER# 18XPDT8SHIFT==+6#!18XPDT8ERRPLOT==+6#"18 XPDT_TITLES xpdt_titles,XPLOT_DEFAULTS6##18 XPDT_LIMITS xpdt_limits,XPLOT_DEFAULTS6#$18XPDTxpdt,XPLOT_DEFAULTS6#%18 STRCONTROLS strcontrols,XPLOT_DEFAULTS6#&, ERASE#'18WIDS8NCOL50, WIDGET_CONTROLSET_VALUER#(18WIDS8XCOL50, WIDGET_CONTROLSET_VALUER#)18WIDS8YCOL50, WIDGET_CONTROLSET_VALUER#*18WIDS8SAVED50, WIDGET_CONTROLSET_VALUER#,18WIDS=9CONTROLS5=,  WIDGET_INFOVALID_ID"(#-18WIDS8 SHOWCONTROLS5 Show Controls, WIDGET_CONTROLSET_VALUER#/18WIDS=9CONTROLS5=, WIDGET_CONTROLDESTROYE#218SPEC8ON5")#318SPEC8SCANBASE5= , WIDGET_CONTROLBAD_IDDESTROY#418SPEC8ON=6#518WIDS518SPEC5,XPLOT_MAPPANELS!SAVEAS)0#918 DTHCURRENT5,  KEYWORD_SET0"+#:Nothing to save=, WIDGET_MESSAGEERROR #;!#=18 DTHCURRENT5=, PLOTFILENODATA#>18XPDT8XCOL5=18XPDT8YCOL5=+ #@ xplot.dat0 Current data All columns+<FFILESAVE #BOutput file name: Data to save:+= Save as...18TOP5=,0XSCRMENUACTIONGROUPINTERNOTYPETITLESWTITLE#EDO"/#F18FFILE5, CHECKFILE=",#G==File 18FFILE5 already exists. Overwrite it?+, WIDGET_MESSAGECANCELDEFAULT_CANCEL #I Cancel",!#K18FFILE5=, OPENWGET_LUN#L1=9SAVE5=,  STRCOMPRESSREM0"-, PRINTF!.#N=,  N_ELEMENTS #O=,  N_ELEMENTS #P( , STRING (G0.6," ")) #Q, PRINTFFORMAT#S, FREE_LUN#T=File 18FFILE5 written to disk., WIDGET_MESSAGEINFO !SAVEIDL)3#Y=*.bck,PICKFILEFILTERWRITEx #Z"2#[18BUFFER5,  KEYWORD_SET"118BUFFER5,  N_ELEMENTS  "1Xplot MAY fail in restoring a00 Xplot backup file when the number of saved sets is greater than 10.+, WIDGET_MESSAGE #`, XPLOT_SAVESTATEFILENAME#a=File  written to disk., WIDGET_MESSAGEINFO !EXIT);#f!3, XYOUTS#g18TOP5=, WIDGET_CONTROLDESTROY#h=18XPDT8SYSVAR5,  N_ELEMENTS=%518XPDT9 SYSVAR_OLD5A '4#l18CLONED5=":#m18 DTHBUFFER5,  KEYWORD_SET"8=18 DTHBUFFER5,  N_ELEMENTS=%719 DTHBUFFER5,  HANDLE_INFO"719 DTHBUFFER5,  HANDLE_FREE'6#q18 DTHCURRENT5,  KEYWORD_SET"918 DTHCURRENT5,  HANDLE_INFO"918 DTHCURRENT5,  HANDLE_FREE#t18SPEC8HANDLE5,  HANDLE_INFO":18SPEC8HANDLE5,  HANDLE_FREE#x:! SETLIMITS)L#{18 XPDT_LIMITS5 #| =18TOP5 Xplot limits=,*XSCRMENUACTIONGROUPINTERPNOTYPEWTITLEW#~DO"K#18 XPDT_LIMITS 6#18XPDT 9SYSVAR !x.range = [18 XPDT_LIMITS8XMIN5=,  STRCOMPRESSREM,18 XPDT_LIMITS8XMAX5=,  STRCOMPRESSREM]6#18XPDT 9SYSVAR !y.range = [18 XPDT_LIMITS8YMIN5=,  STRCOMPRESSREM,18 XPDT_LIMITS8YMAX5=,  STRCOMPRESSREM]6#18 XPDT_LIMITS=9XSTYLE5, FIX # =)?#18XPDT 9SYSVAR !x.style = 16!D=)@#18XPDT=>9SYSVAR !x.style = 26!D=<)A#18XPDT=>9SYSVAR !x.style = 46!D==)B#18XPDT=>9SYSVAR !x.style = 86!D=>)C#18XPDT=>9SYSVAR !x.style = 166!D*#18 XPDT_LIMITS=9YSTYLE5, FIX # =)E#18XPDT=9SYSVAR !y.style = 16!J=)F#18XPDT=9SYSVAR !y.style = 26!J=<)G#18XPDT=9SYSVAR !y.style = 46!J==)H#18XPDT=9SYSVAR !y.style = 86!J=>)I#18XPDT=9SYSVAR !y.style = 166!J*#, XPLOT_PLOT! SETLIMITSDEF)M#18 XPDT_LIMITS8XMIN=6#18 XPDT_LIMITS8XMAX=6#18 XPDT_LIMITS8YMIN=6#18 XPDT_LIMITS8YMAX=6#18XPDT=<9SYSVAR!x.range = [0.0,0.0]6#18XPDT==9SYSVAR!y.range = [0.0,0.0]6#, XPLOT_PLOT! SETLIMITSZOOM)N#18 XPDT_LIMITS8XMIN18XPDT=9ZOOMSEL56#18 XPDT_LIMITS8XMAX18XPDT=9ZOOMSEL56#18 XPDT_LIMITS8YMIN18XPDT=<9ZOOMSEL56#18 XPDT_LIMITS8YMAX18XPDT==9ZOOMSEL56#18XPDT=<9SYSVAR !x.range = [18XPDT=9ZOOMSEL5=,  STRCOMPRESSREM,18XPDT=9ZOOMSEL5=,  STRCOMPRESSREM]6#18XPDT==9SYSVAR !y.range = [18XPDT=<9ZOOMSEL5=,  STRCOMPRESSREM,18XPDT==9ZOOMSEL5=,  STRCOMPRESSREM]6#, XPLOT_PLOT! SETTITLES)R#18 COLTITLES5,  KEYWORD_SET18SPEC8ON5,  KEYWORD_SET="P#You have started xplot''with the keyword 'COLTITLES' on, or youare using SPEC files.--With these options, if you have a text in the++corresponding [xy]title equal to '-1', then//you will get as [xy]titles those defined in theColumn Titles...' option.+ #18SPEC8ON5,  KEYWORD_SET"O,,With SPEC files, the symbol #x (i.e. #S) is ..substituted by its corresponding value in the  scan header.+ #=, WIDGET_MESSAGEINFO #18 XPDT_TITLES5 # =18TOP5 Xplot titles P,,XSCRMENUACTIONFIELDLENGROUPNOTYPEWTITLEI#DO"Q#18 XPDT_TITLES 6#, XPLOT_PLOT! SETCOLTITLES)\#18SPEC8ON5="T#18SPEC8LABELS5 # ! ,STRPARSE! #!=/"S#Error (column separator)=, WIDGET_MESSAGEERROR! #!!V#18 COLTITLES5,  KEYWORD_SET0"U#Option only availablewhen starting xplot with the 'COLTILES'keyword, or when using SPEC files+, WIDGET_MESSAGE! #!#18 COLTITLES5 # =18TOP5 TXplot column titles,,XSCRMENUACTIONFIELDLENGROUPNOTYPEWTITLEI#DONT"W!#18SPEC8ON5="Z#=  #= ,  N_ELEMENTS=%Y !  'X#18SPEC8LABELS 6# ,  N_ELEMENTS=, SINDGEN= ,  N_ELEMENTS ,  STRCOMPRESS:   #18WIDS8XCOLSPEC5" #18WIDS8YCOLSPEC5# ![#18 COLTITLES 6#18WIDS8XCOL5" #18WIDS8YCOL5# #" 18XPDT8XCOL5=," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE## 18XPDT8YCOL5=," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE#, XPLOT_PLOT! SETLABELS)`#=$ #$18TOP5,XXYOUTSBUFFERGROUPT#$,  KEYWORD_SET0"]!#18 EXEBUFFER5,  KEYWORD_SET"^18 EXEBUFFER5$+% !_$% #%, XPSTR_UPDATEEXEBUFFERP#, XPLOT_PLOT! SETLEGEND)d#=& #&18TOP5,XLEGENDCOMMANDGROUP# &"a!# 18 EXEBUFFER5,  KEYWORD_SET"b18 EXEBUFFER5&+$ !c&$ # $, XPSTR_UPDATEEXEBUFFERU# , XPLOT_PLOT!ANNOTATE)f# ANNOTATE, XPLOT_TEXT # ==, WIDGET_MESSAGECANCELDEFAULT_CANCEL #  Cancel"e!# ,ANNOTATE! SHOWDATAXY)g# 18 DTHCURRENT5=, PLOTFILENODATA# 18XPDT8XCOL5=18XPDT8YCOL5=+ # 18TOP5Xplot XY data., XDISPLAYFILE1GROUPTEXTTITLE! SHOWDATASET)h# 18 DTHCURRENT5=, PLOTFILENODATA# 18TOP5Xplot set data., XDISPLAYFILE1GROUPTEXTTITLE!SHIFT)j# 18XPDT=9SHIFT518XPDT=9SHIFT5< HORIZONTALVERTICAL #  18TOP5= Xplot shift,"XSCRMENUACTIONGROUPNOTYPEWTITLE# DO"i# 18XPDT8SHIFT 18 HORIZONTAL5 18VERTICAL5+6# , XPLOT_PLOT!ERRPLOT)l# #18XPDT=9ERRPLOT518XPDT=9ERRPLOT5<BOTTOMTOP # % 18TOP5=Xplot Error bar columnsCol with bottom data error:Col with top data error:+,*XSCRMENUACTIONGROUPNOTYPETITLESWTITLE# (DO"k# )18XPDT8ERRPLOT 18BOTTOM5 18TOP5+6# *, XPLOT_PLOT!DRAWDIM)n# .2!D8X_SIZE52!D8Y_SIZE5< HORIZONTALVERTICAL # 0 18TOP5=Xplot Drawing size (pixels),"XSCRMENUACTIONGROUPNOTYPEWTITLE# 2DONT"m!# 318WIDS8DRAW5 18 HORIZONTAL5 18VERTICAL5, WIDGET_CONTROLXSIZEYSIZE# 5, XPLOT_PLOT!COLPANEL)t# 818SPEC8ON5"o# 9=))This option is not allowed with SPEC data, WIDGET_MESSAGEERROR # ;!# =18WIDS8XCOL5=,  WIDGET_INFONAME' # >18 DTHCURRENT5 =, PLOTFILENODATA# ?= ,  N_ELEMENTS # @'TEXT"r# A18 COLTITLES5,  KEYWORD_SET0"p# B =, SINDGEN=  # C , XPSTR_UPDATECOLTITLESZ# E 18 COLTITLES5,  N_ELEMENTS"q# F=,,Number of columns not equal to stored labels, WIDGET_MESSAGEERROR # H!# J18WIDS8XCOL5=, WIDGET_CONTROLDESTROYS# K18WIDS8YCOL5=, WIDGET_CONTROLDESTROYS# L18WIDS8XCOLBASE518 COLTITLES5XCOL, WIDGET_DROPLISTUVALUEVALUE( # N18WIDS8YCOLBASE518 COLTITLES5YCOL, WIDGET_DROPLISTUVALUEVALUE) # P(18XPDT8XCOL5=, WIDGET_CONTROLSET_DROPLIST_SEL# Q)18XPDT8YCOL5=, WIDGET_CONTROLSET_DROPLIST_SEL# R18WIDS8XCOL(6# S18WIDS8YCOL)6!s# U18WIDS8XCOL5=, WIDGET_CONTROLDESTROYL# V18WIDS8YCOL5=, WIDGET_CONTROLDESTROYL# W18WIDS8XCOLBASE518XPDT8XCOL5=,  STRCOMPRESSREM=>===XCOL,,  WIDGET_TEXTEDITFRAMEUVALUEVALUEXSIZEYSIZE( # Z18WIDS8YCOLBASE518XPDT8YCOL5=,  STRCOMPRESSREM=>===YCOL,,  WIDGET_TEXTEDITFRAMEUVALUEVALUEXSIZEYSIZE) # ]18WIDS8XCOL(6# ^18WIDS8YCOL)6! SECONDAXIS)v# b18XPDT8AXIS25 # c= = =< == <XMINXMAXYMINYMAX* # d*18TOP5=Xplot 2nd axis limits,"XSCRMENUACTIONGROUPNOTYPEWTITLE# fDO"u!# g18XPDT8AXIS2*18XMIN5*18XMAX5*18YMIN5*18YMAX5+6# i, XPLOT_PLOT!SYSVAR)# l18ID5+, WIDGET_CONTROLGET_VALUEG# m%%This is an advanced option which use ""requires a deep knowdledge of IDL.00Its use is not recommended for the general user. ..The modifications done here will remain after  quiting xplot+ # s==, WIDGET_MESSAGECANCELDEFAULT_CANCEL # t Cancel"w!# u+!x)y# w!X # x 18TOP5=>,XSCRMENUACTIONGROUPNCOL# yDONT"x!# z !X# {, XPLOT_PLOT!~!y){# ~!Y #  18TOP5=>,XSCRMENUACTIONGROUPNCOL# DONT"z!#  !Y# , XPLOT_PLOT!~!p)}# !P #  18TOP5=>=, XSCRMENUACTIONGROUPNCOLNOTYPE# DONT"|!#  !P# , XPLOT_PLOT!~*!EXEBUFFERCLEAN)# ==##Are you sure you want to delete all''Legens and Labels present in the graph?+, WIDGET_MESSAGECANCELDEFAULT_CANCEL #  Cancel"!# =, XPSTR_UPDATENOEXEBUFFERO# , XPLOT_PLOT! EXEBUFFEREDIT)# 18ID5+, WIDGET_CONTROLGET_VALUER# ))This is an advanced option which permits ..to clean and modify the Xplot internal buffer //where the Legend and Label commands are stored. 11This is useful for modifying these legend/labels 33after being saved, and requires a small knowdledge of IDL syntax.00Its use is not recommended for the general user. +  # ==, WIDGET_MESSAGECANCELDEFAULT_CANCEL #  Cancel"!# 18 EXEBUFFER5 #  , XSCRMENUACTION# DONT"!# tmp:  , PRINT# = "=, XPSTR_UPDATENOEXEBUFFERO! , XPSTR_UPDATEEXEBUFFERR# , XPLOT_PLOT! CALCULATIONS)# ,XPLOT_CALCULATIONS# :! COLUMNOPER)# 18 DTHCURRENT5,  KEYWORD_SET0"# No data in current set=, WIDGET_MESSAGEERROR # !# 18 DTHCURRENT5=, PLOTFILENODATA# 18CALCSTR8 XPCOLUMNOPER5* # =, # =,  N_ELEMENTS- # *,, XPLOT_COLUMNOPERRESSTR# ,,  KEYWORD_SET0"!# ,=/"!# =,  N_ELEMENTS # . # 18SPEC8ON518SPEC8MCA5"#  =< # ,=<, # +2. # 18WIDS8YCOLMCA5,=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUE# 18WIDS8NCOL5 =,  STRCOMPRESSREM., WIDGET_CONTROLSET_VALUE# 18WIDS8XCOL5=,  WIDGET_INFONAMETEXT"# 18WIDS8YCOL5,=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUE!#  18 COLTITLES5,  N_ELEMENTS==,  STRCOMPRESSREM: / # 18 COLTITLES5/Oper with columns+ # - "#  , XPSTR_UPDATECOLTITLES# 18WIDS8XCOL5 , WIDGET_CONTROLSET_VALUE# 18WIDS8YCOL5 , WIDGET_CONTROLSET_VALUE# 18WIDS8YCOL5,=, WIDGET_CONTROLSET_DROPLIST_SELECT# 18XPDT8YCOL,6# 18CALCSTR8 XPCOLUMNOPER*6# 18SPEC8ON5="# 18SPEC8LABELS5 #  !0,STRPARSE #  =/"# Error (column separator)=, WIDGET_MESSAGEERROR # !#  -"# ,= Column Oper0 !# 0 Column Oper+0 # =0 # =0,  N_ELEMENTS=% !0 '# 18SPEC8LABELS 6# 0,  N_ELEMENTS=, SINDGEN=0,  N_ELEMENTS ,  STRCOMPRESS: 00 # 18WIDS8XCOLSPEC50, WIDGET_CONTROLSET_VALUES# 18WIDS8YCOLSPEC50,=," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE# 18 DTHCURRENT5,  HANDLE_FREE# ,  HANDLE_CREATEVALUE1 # 18 DTHCURRENT16# , XPLOT_PLOT# 18WIDS8MESSAGE5--Xplot message: Current set has been modified 55with the option 'Calculations/Operation with columns', WIDGET_CONTROLSET_VALUEI!XPLOT)# XPLOT , XPLOT_VERSION -child of xplot-,XPLOTWTITLE! XPLOTCLONE)# 18CLONED=6# XPLOT , XPLOT_VERSION -clone of xplot-2!D8X_SIZE52!D8Y_SIZE5+,XPLOTSTATEWINDOW_SIZEWTITLE!IDLCOMM)#  print,'hello'<COMMAND #  Type IDL command: IDL command=, XSCRMENUACTIONNOTYTITLESWTITLE# DO"#  18COMMAND5A2 # 2="Error executing IDL command=, WIDGET_MESSAGEERROR3 !XLOADCT)# 18TOP5,XLOADCTGROUP!FONT)# 18 STRCONTROLS8FONT18INDEX56# '!==18 STRCONTROLS8FONT5, FIX=,  STRCOMPRESSREM', XYOUTS# , XPLOT_PLOT!WCALC)# 18TOP5,SCICALCGROUP! HELPABOUT)#  HELPABOUT, XPLOT_TEXT # = About Xplot, WIDGET_MESSAGEINFOTITLE !HELPWWW)# www,XPLOT_DEFAULTS& # ''Xplot Hyper Text manual will be chargedwith the command :& 44If you want to modify this call in your installation55set the new calling command in the xplot_defaults.profile and recompile Xplot+ # %=, WIDGET_MESSAGECANCEL # & Cancel"!# '&, SPAWN!HELP)# *18ID5+, WIDGET_CONTROLGET_VALUE# ++,  STRLOWCASE18TOP5, XHELPGROUPL!REDRAW)# 218WIDS8MESSAGE5Xplot message: , WIDGET_CONTROLSET_VALUE# 3, XPLOT_PLOT!ZOOM)# :18XPDT=<9SYSVAR54 # ;18XPDT==9SYSVAR55 # B18XPDT=<9SYSVAR !x.range = 18XPDT==9ZOOMSEL5, VECT2STRING6# D18XPDT==9SYSVAR !y.range = 18XPDT=<==9ZOOMSEL5, VECT2STRING6# F, XPLOT_PLOT# G18XPDT=<9SYSVAR46# H18XPDT==9SYSVAR56# I18WIDS8MESSAGE5Xplot message: //Use ReDraw button to zoom back to the top level, WIDGET_CONTROLSET_VALUE!SAVE)# O=, XPLOT_PLOTSAVE# P18WIDS8SAVED5 , WIDGET_CONTROLGET_VALUE# Q18WIDS8SAVED5 , LONG==,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUE# S18WIDS8MESSAGE5))Xplot message: Current set saved and now ++the current set is a copy of the saved one., WIDGET_CONTROLSET_VALUE# V18WIDS8 SETCURRENT5=, WIDGET_CONTROLSENSITIVE! SETCURRENT)# ] 6 # ^6 Set Current... 33This option permits to modify an already saved set. 66It will move the already saved set to the current set. //Please enter the saved set number to be moved: +,"XEDITACTIONINFOTEXTTEXTTITLE# eCANCEL"!# f618BUFFER5,  N_ELEMENTS"# g!!There are not so many saved sets.=, WIDGET_MESSAGEERROR # i!# m16=9BUFFER5,7,STRPARSE8 # rhh = =7A # s=< %# t<><> executing : 7, PRINT# u7A '# x 7,  7A # |18XPDT8XCOL96# }18XPDT8YCOL:6# ~18XPDT8PSYM;6# 18XPDT8 LINESTYLE<6# 18XPDT8THICK=6# 18XPDT=9SYSVAR !p.color = >=,  STRCOMPRESSREMX6# 18XPDT8SHIFT?6# 18BUFFER5,  N_ELEMENTS # ="=@, XPSTR_UPDATEDTHCURRENTNOBUFFER!# , LINDGENA # A6=, WHEREB # 1B9BUFFER5$ # 1B9 DTHBUFFER5C # $C@," XPSTR_UPDATEBUFFERDTHBUFFERDTHCURRENT# 18WIDS=9CONTROLS5=,  WIDGET_INFOVALID_ID"# 18WIDS8 SHOWCONTROLS5 Show Controls, WIDGET_CONTROLSET_VALUET# 18WIDS=9CONTROLS5=, WIDGET_CONTROLDESTROYE# 18 STRCONTROLS8SYMBOL;6# 18 STRCONTROLS8 LINESTYLE<6# 18 STRCONTROLS8 THICKNESS=6# 18 STRCONTROLS8COLOR>6# ="18WIDS8 SETCURRENT5=, WIDGET_CONTROLSENSITIVET# @ =, PLOTFILENODATA# = ,  N_ELEMENTS # 18WIDS8XCOL5=,  WIDGET_INFONAMEDROPLIST"#  =, SINDGEN=  # 18WIDS8XCOL5 9=," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE# 18WIDS8YCOL5 :=," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE!# 18WIDS8XCOL59=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEI# 18WIDS8YCOL5:=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEI# 18WIDS8NCOL5 =,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEI# 18WIDS8SAVED5==,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEI# 18WIDS8MESSAGE5Xplot message:, WIDGET_CONTROLSET_VALUEI# 18SPEC8ON5="# 18SPEC8SCANBASE5= , WIDGET_CONTROLBAD_IDDESTROY# 18SPEC8ON=6# 18WIDS518SPEC5,XPLOT_MAPPANELS# , XPLOT_PLOT!CONTROLS)# 18ID5 , WIDGET_CONTROLGET_VALUES#   Show Controls)# 18ID5 Hide Controls, WIDGET_CONTROLSET_VALUES# 18WIDS8CONTROLS18TOP518TOP518 STRCONTROLS5,XPLOT_CONTROLSGROUPINITVAL6! Hide Controls)# 18WIDS8 SHOWCONTROLS5 Show Controls, WIDGET_CONTROLSET_VALUES# 18WIDS=9CONTROLS5=,  WIDGET_INFOVALID_ID"18WIDS=9CONTROLS5=, WIDGET_CONTROLDESTROYE!.!*!PSYMSIGN)# 18XPDT8CONNECT18INDEX56# 18 STRCONTROLS8CONNECT18INDEX56# , XPLOT_PLOT!PSYM)# 18XPDT8PSYM18INDEX56# 18 STRCONTROLS8SYMBOL18INDEX56# , XPLOT_PLOT! LINESTYLE)# 18XPDT8 LINESTYLE18INDEX56# 18 STRCONTROLS8 LINESTYLE18INDEX56# , XPLOT_PLOT!KIND)# 18INDEX5D # 18 STRCONTROLS8AXIS18INDEX56# D="18XPDT8KIND=6# D="18XPDT8KIND==6# D=<"18XPDT8KIND=>6# D=="18XPDT8KIND=6# , XPLOT_PLOT!TICKLEN)# 18 STRCONTROLS8TICKS18INDEX56# 18INDEX5D # D="18XPDT=9SYSVAR!p.ticklen = 0.02 6# D="18XPDT=9SYSVAR!p.ticklen = -0.02 6# D=<"18XPDT=9SYSVAR!p.ticklen = 1.06# , XPLOT_PLOT!THICK)# 18ID5D, WIDGET_CONTROLGET_VALUES# 18 STRCONTROLS8 THICKNESSD6# 18XPDT8THICKD6# , XPLOT_PLOT!CHARSIZE)# 18ID5D, WIDGET_CONTROLGET_VALUES# 18 STRCONTROLS8CHARSIZED6# 18XPDT=9SYSVAR!p.charsize = D=,  STRCOMPRESSREM6# , XPLOT_PLOT!CLR_BACK)# 18ID5D, WIDGET_CONTROLGET_VALUES# 18 STRCONTROLS8 BACKGROUNDD6# 18XPDT 9SYSVAR!p.background = D=,  STRCOMPRESSREM6# , XPLOT_PLOT!CLR_AXIS)# 18ID5D, WIDGET_CONTROLGET_VALUES# 18 STRCONTROLS8 AXISCOLORD6# , XPLOT_PLOT!XLOADCT)# 18TOP5,XLOADCTGROUPV!CLR)# 18ID5D, WIDGET_CONTROLGET_VALUES# 18 STRCONTROLS8COLORD6# 18XPDT=9SYSVAR !p.color = D=,  STRCOMPRESSREM6# , XPLOT_PLOT! CLR_RESET)# 18XPDT=9SYSVAR18XPDT=9 SYSVAR_OLD56# 18XPDT=9SYSVAR18XPDT=9 SYSVAR_OLD56# !18XPDT=9SYSVAR5A # "18XPDT=9SYSVAR5A # #18WIDS=9CONTROLS52!P8 BACKGROUND5, WIDGET_CONTROLSET_VALE# $18WIDS=<9CONTROLS52!P8COLOR5, WIDGET_CONTROLSET_VALE# %18WIDS==9CONTROLS52!P8COLOR5, WIDGET_CONTROLSET_VALE# &18 STRCONTROLS8 BACKGROUND2!P8 BACKGROUND56# '18 STRCONTROLS8 AXISCOLOR2!P8COLOR56# (18 STRCONTROLS8COLOR2!P8COLOR56# ), XPLOT_PLOT!XCOL)# .18WIDS8NCOL5E, WIDGET_CONTROLGET_VALUES# /=E, FIX # 018SPEC8ON5"# 118SPEC8MCA5"# 218ID5F, WIDGET_CONTROLGET_VALUE# 3 =F9 !# 518INDEX5=9 !# 818WIDS8XCOL5=,  WIDGET_INFONAMETEXT"# 918ID5F, WIDGET_CONTROLGET_VALUE# :=F, FIX9 !# <18INDEX5, FIX=9 # ?18SPEC8MCA509 "# @Error selecting column.=, WIDGET_MESSAGEERROR # A18ID518XPDT8XCOL5=,  STRCOMPRESSREMR, WIDGET_CONTROLSET_VALUE!# D18XPDT8XCOL96# E, XPLOT_PLOT!YCOL)# I18WIDS8NCOL5E, WIDGET_CONTROLGET_VALUE# J=E, FIX # K18SPEC8ON518SPEC8MCA50"# L18INDEX5=: !# N18WIDS8XCOL5=,  WIDGET_INFONAMETEXT18SPEC8MCA5="# P18ID5F, WIDGET_CONTROLGET_VALUE# Q=F, FIX: !# S18INDEX5, FIX=: # X: :="# YError selecting column.=, WIDGET_MESSAGEERROR # Z18ID518XPDT8YCOL5=,  STRCOMPRESSREMR, WIDGET_CONTROLSET_VALUE!# ]18XPDT8YCOL:6# ^, XPLOT_PLOT!CURSOR)# b18X518Y5+G # c=G2!D8X_SIZE5=G==G2!D8Y_SIZE5=G="!# e18 DTHCURRENT5,  KEYWORD_SET"# f18X518Y5==,  CONVERT_COORDDEVICETO_DATAH !# gGH # h18WIDS8CURSOR5X:=H=,  STRCOMPRESSREM Y:=H=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUE# n18TYPE5="# o18XPDT8ZOOMSEL /=/=/=/+6# p18XPDT=9ZOOMSEL=G6# q18XPDT=<9ZOOMSEL=G6# s18XPDT=9ZOOMSEL518XPDT==9ZOOMSEL518XPDT=9ZOOMSEL5=/"=I !=I # vI="# w=G18XPDT=9ZOOMSEL5, ABSJ # x=G18XPDT=<9ZOOMSEL5, ABSK # yJ=K="# z=G18XPDT=9ZOOMSEL5+, MIN=G18XPDT=<9ZOOMSEL5+, MINJK=</,TVBOX# ~18TYPE5=I="# 18 DTHCURRENT5,  KEYWORD_SET"# 18XPDT=9ZOOMSEL518XPDT=<9ZOOMSEL5==,  CONVERT_COORDDEVICETO_DATAL !# 18XPDT=9ZOOMSEL518XPDT=<9ZOOMSEL5+L # =L=H+, MINM # =L=H+, MINN # =L=H, ABSJ # =L=H, ABSK # MMJ+O # NNK+P # 18XPDT8ZOOMSELMMJNNK+6# 18WIDS8MESSAGE5//Xplot message: Selection Limits: [x1,x2,y1,y2]=18XPDT8ZOOMSEL5, VECT2STRING, WIDGET_CONTROLSET_VALUE!*# 18TOP5=, WIDGET_CONTROLNO_COPYSET_UVALUE# ;7 GXPLOT_LOADFILESPEC8STATEINPUTNTYPEHSPECNNMCAFSCANTMP ## , ON_ERROR# ,TYPE #  ", SPEC_ACCESS ! #  # - =, SPEC_SCANNO_EMPTYRETURN_INDEX=  #=/"#-==, SPEC_SCANMCDATARETURN_INDEX=  #=/"#No data found in SPEC file.=, WIDGET_MESSAGEERROR #! #= #18SPEC8HANDLE5=,  HANDLE_VALUESET#,XPLOT_READSPEC #,  N_ELEMENTS="#! #18SPEC8ON=6#18WIDS8MESSAGE5Xplot message: SPEC data file (18SPECFILE5) read succesfully, WIDGET_CONTROLSET_VALUE#!18 DTHCURRENT5,  KEYWORD_SET"18 DTHCURRENT5,  HANDLE_FREE##18 DTHCURRENT,  HANDLE_CREATEVALUE6#%18WIDS518SPEC5,XPLOT_MAPPANELS#'18SPEC8SCANBASE518SPEC8SCANBASE5 = <IDTOPHANDLER, WIDGET_CONTROLBAD_IDSEND_EVENT#), XPLOT_PLOT#+;7 LXPLOT_MAPPANELS<WIDSSPEC##18ON5"#18 ASCIIPANEL5 , WIDGET_CONTROLMAPV#18 SPECPANEL5 , WIDGET_CONTROLMAPV#18MCA5"# 18 NORMALPANEL5=, WIDGET_CONTROLMAPV#!18MCAPANEL5=, WIDGET_CONTROLMAPV!##18MCAPANEL5=, WIDGET_CONTROLMAPV#$18 NORMALPANEL5=, WIDGET_CONTROLMAPV!#'18 ASCIIPANEL5=, WIDGET_CONTROLMAPV#(18 SPECPANEL5=, WIDGET_CONTROLMAPV#*;7 n4 XPLOT_PLOT NOCOMMAND PRINTBUFFERSAVESTATE NOCOMMAND PRINTBUFFER SAVEI TMP  NDATASETSLOGSTYLEPSYMSIGNCOMMAND1 XTITLETEXT LABELS LABELSLIST YTITLETEXT TITLETEXTHSPECCOMMAND HHA%## , ON_ERROR# 18XPDT8SYSVAR5,  N_ELEMENTS %#18XPDT9SYSVAR5A '#18 DTHBUFFER5,  KEYWORD_SET"18 DTHBUFFER5,  N_ELEMENTS != #18XPDT8KIND5 ) #,/ylog ! ) #,/xlog ! ) # ,/xlog,/ylog ! .# ! *#18XPDT8CONNECT5=" - ! # plotfile,18 DTHCURRENT5,  STRCOMPRESSL,xcol=18XPDT8XCOL5=,  STRCOMPRESSREMX,ycol=18XPDT8YCOL5=,  STRCOMPRESSREMX,psym=18XPDT8PSYM5=,  STRCOMPRESSREMX ,linestyle=18XPDT8 LINESTYLE5=,  STRCOMPRESSREMX,thick=18XPDT8THICK5=,  STRCOMPRESSREMX,color=18 STRCONTROLS8COLOR5=,  STRCOMPRESSREMX ,shiftval=18XPDT8SHIFT5, VECT2STRING #18 XPDT_TITLES8XTITLE5 # -1"#18SPEC8ON5="118XPDT8XCOL5=9 COLTITLES5 !#18SPEC8LABELS5 # ! ,STRPARSE #=/"Error (column separator xtitle)=, WIDGET_MESSAGEERROR !18XPDT8XCOL5=  #18 XPDT_TITLES8YTITLE5 # -1"#18SPEC8ON5="118XPDT8YCOL5=9 COLTITLES5 !#18SPEC8LABELS5 # ! ,STRPARSE #=/"Error (column separator xtitle)=, WIDGET_MESSAGEERROR !18XPDT8YCOL5=  #18 XPDT_TITLES8TITLE5 #=,  STRCOMPRESSREMX18SPEC8ON5="#18SPEC8HANDLE5,  HANDLE_VALUE#,XPLOT_SPECTITLE # ,title="",xtitle=" ",ytitle=" " ,axiscolor=18 STRCONTROLS8 AXISCOLOR5=,  STRCOMPRESSREMX #18XPDT=9AXIS2518XPDT=9AXIS25",x2axis=18XPDT=9AXIS2518XPDT=9AXIS25+, VECT2STRING #18XPDT=9AXIS2518XPDT=9AXIS25",y2axis=18XPDT=9AXIS2518XPDT=9AXIS25+, VECT2STRING #18XPDT=9ERRPLOT518XPDT=9ERRPLOT5" ,errplot=18XPDT=9ERRPLOT518XPDT=9ERRPLOT5+, VECT2STRING #,  KEYWORD_SET"#18 DTHCURRENT5=, PLOTFILENODATA#,  HANDLE_CREATEVALUE #18BUFFER5,  KEYWORD_SET0"# ,ki=218 DTHCURRENT5+, XPSTR_UPDATEBUFFERDTHBUFFER!# 18BUFFER5 ,ki=2+18 DTHBUFFER518 DTHCURRENT5+, XPSTR_UPDATEBUFFERDTHBUFFER#18 DTHCURRENT6#!%#,  KEYWORD_SET"#+ #18BUFFER5,  KEYWORD_SET"18BUFFER5+ #18 EXEBUFFER5,  KEYWORD_SET"18 EXEBUFFER5+ #!%#,  KEYWORD_SET0"#!, ERASE##A #'18BUFFER5,  KEYWORD_SET""#*=18BUFFER5,  N_ELEMENTS=%!19BUFFER5A ' #.18 EXEBUFFER5,  KEYWORD_SET"%#018 EXEBUFFER5, PRINT#1=18 EXEBUFFER5,  N_ELEMENTS=%$19 EXEBUFFER5A '##518PSYSVAR8P!P6#618PSYSVAR8X!X6#718PSYSVAR8Y!Y6#8;7 wpXPLOT_SAVESTATE  FILENAMESTATE FILENAMEVERSIONREDGREEN BLUE WSIZEFILEMANE DTCURRENT STRDTBUFFER I COMMAND TMP #7#; , ON_ERROR#<, XPLOT_VERSION #= , TVLCTGETh#>2!D8X_SIZE52!D8Y_SIZE5+ #?,  KEYWORD_SET0" xplot.bck #A18 DTHCURRENT5,  KEYWORD_SET"18 DTHCURRENT5=, PLOTFILENODATA!  #E #F18BUFFER5,  KEYWORD_SET"#G  18BUFFER5,  N_ELEMENTS=%#Hplotfile,state.dthbuffer( =,  STRCOMPRESSREM),/nodata,dtbuffer =,  STRCOMPRESSREM #JXPLOT_SAVESTATE: executing:  , PRINT#K A #L dtbuffer =,  STRCOMPRESSREMX, '#Psave,version,state,dtcurrent,red,green,blue,wsize,  FILENAME='=,  STRCOMPRESSREMX' ,/VERBOSE #SXPLOT_SAVESTATE: executing:  , PRINT#T A #U;7 XPLOT_SPECSCAN_EVENT  EVENTSTATE ERROR SPECHANDLEEVUVALSCANINDEX  DUMMYEVENTMSGTMP AUX #V#W18TOP5, WIDGET_CONTROLGET_UVALUE#X18ID518TOP5"#Y,XPLOT_SPECSCAN_INIT#Z18TOP5, WIDGET_CONTROLSET_UVALUE#["18TOP5 , WIDGET_CONTROLDESTROYU#\:#_18HANDLE5=,  HANDLE_VALUENO_COPY#`18ID5, WIDGET_CONTROLGET_UVALUE#bACCEPT) #d18FIELD5, WIDGET_CONTROLGET_VALUE#e  , STRTRIM #f=/ #g-, STRPOS=/"==18MCA5=18MCA5,. SPEC_SCANMCDATANO_EMPTYNO_RANGERETURN_INDEX=  #j=="#k18SCANIDX=6#l18BUTID5 ==18SCANIDX518MCA5<NEW_SCAN_EVENTIDTOPHANDLERFHANDLENEWSCANMCA #o18BUTID5, WIDGET_CONTROLSEND_EVENT#p18CURRENT5Current scan :=,  SPEC_SCANINDEX, STRING, WIDGET_CONTROLSET_VALUE!#sScan "" is not valid. #t=18TOP5, WIDGET_MESSAGEDIALOG_PARENTERROR ! CLOSE) ! DATATYPE) #{18ID5 , WIDGET_CONTROLGET_VALUE#|18MCA 6#}, GET_FILEINFO! *#18HANDLE5==,  HANDLE_VALUENO_COPYSET#18TOP5, WIDGET_CONTROLSET_UVALUE#CLOSE" 18TOP5=, WIDGET_CONTROLDESTROYU#;7 hXPLOT_SPECSCAN_INITSTATE ERROR_STATUSFILETMP SPECHANDLE SCAN_INDEXSCAN#>#?, CATCH#@ "#A , CATCHCANCEL#BCan't find SPEC file: =, WIDGET_MESSAGEERROR #C!#F18HANDLE5=,  HANDLE_VALUENO_COPY#Hcurrent=, SPEC_SCANRETURN_INDEX #I18SCANIDX6#J=,  SPEC_SCANINDEX #K18FIELD5, WIDGET_CONTROLSET_VALUE#L18CURRENT5Current scan :, STRING, WIDGET_CONTROLSET_VALUE#N, GET_FILEINFO#Q18HANDLE5==,  HANDLE_VALUENO_COPYSET#R;7  XPOWELLFITGROUP POWELLFITXPOWSETOPTINPGROUPEQUATIONXYSIGMAXRANGECHI2FITFPARTEXTTMPFLAGS TITLES ACTIONERROR  STATSIGMA SS NNCOL A Y2 COVAROUTSIGMAOUT1OUT2HHHANDLENCOATEXT IUNIT### , ON_ERROR#$, N_PARAMS "#%00XPOWELLFIT: Usage: xpowellfit, set, keyword_pars, PRINT#&:#)66This option permits to fit the current set of data to 33a user-defined function, by using a non-linear fit. EEFor the non-linear fit it uses the the NR_POWELL idl function to findBBthe minimum f the function ChiSquare= Sum{ ([y-f(x;a)]/sigma)^2 }. >>The user must define the fitting function in IDL syntax as an AAexpression of the independent variable x and a parameter array a.,,For example a straight line is : a(0)*x+a(1)== gaussian is a(0)*exp( (x-a(1))^2/a(2)) etc etc.==For fitting with complicated functions, the user may write an< #? #A;7  XSCRMENU_EVXVARCOMEVENT THEVAR INITIALVARENTRIES  EVENTVAL2INTERP FLAGSHELP1 EVENTVALITMPINEWVALERRORREALVALIMAGVALWWTMP WTMP2 TEXT TMP FFLAG IVAL ##18ID5, WIDGET_CONTROLGET_UVALUE# #Resize"#18ID518X518Y5, WIDGET_CONTROLSCR_XSIZESCR_YSIZE#HELP)#A !DONT)# #18TOP5 , WIDGET_CONTROLDESTROY<!DO) #  #,  N_ELEMENTS" #38TYPE5 "#38WIDID5, WIDGET_CONTROLGET_VALUE#38NAME5 = newval(0)A ! #38WIDID5, WIDGET_CONTROLGET_VALUE#= #38WIDID5, WIDGET_CONTROLGET_VALUE#38NAME5 = complex(=, STRING,=, STRING)A #= !#18TOP5=, WIDGET_CONTROLDESTROYE!.#,  N_ELEMENTS="#= #  #,  N_ELEMENTS"#38TYPE5="#38WIDID5 , WIDGET_CONTROLGET_VALUE#=  # ,TYPE " # .+-0123456789  =,  STRCOMPRESSREM==, STRMID,STRPARSE=" = # + !#38WIDID5 , WIDGET_CONTROLGET_VALUE# + #= #38WIDID5 , WIDGET_CONTROLGET_VALUE# + #= ! #=,  N_ELEMENTS= #= #,  N_ELEMENTS"#38TYPE5="#1"# #fflag =  A # "= != #38WIDID5, WIDGET_CONTROLMAPV!#= !!*#;7 XSCRMENU_FLAGS0D  FLAGSSTRUCTRESULTFLAGSNTWI RRTEXT TMPFFLAG IVAL #`#g, N_TAGS #h, FLTARR #j  %#k185 #n=,TYPE "#o .+-0123456789 ==,  STRCOMPRESSREM==, STRMID,STRPARSE="= != !#q= '#t, STRARR #u==% #v #xfflag = A #y " = ! = #z =,  STRCOMPRESSREMOVE_ALL '#|;7 0XSPECGROUPFILEGROUPWTITLETEXT SPECHANDLEWMENUBARWWINDOWWBASE WFILEMENU WLOADFILE WEXIT WTOOLSMENU WSPEC WXPLOT WHELPMENUWHELPTMPWBUTTONS WHEADERWLABELS WMOTORSWOPLOTWPLOTWTEXTWTMP WLABELWSCAN STATE## , ON_ERROR#,  KEYWORD_SET0"Xspec #,  KEYWORD_SET"# , WIDGET_CONTROLHOURGLASS<# Spec file: + #Scan list (compressed form): ===, SPEC_ACCESSCOMPRESSLISTSTR+ !# #  #,  WIDGET_BASEMBARTITLE #=,  WIDGET_BASECOLUMN #File=,  WIDGET_BUTTONMENUVALUE #Load SPEC File...LOADFILE,  WIDGET_BUTTONUVALUEVALUE #ExitEXIT,  WIDGET_BUTTONUVALUEVALUE #Tools=,  WIDGET_BUTTONMENUVALUEE #  Xspec (empty)XSPEC,  WIDGET_BUTTONUVALUEVALUE #  Xplot (empty)XPLOT,  WIDGET_BUTTONUVALUEVALUE # Help=,  WIDGET_BUTTONHELPVALUEE # XspecHELP,  WIDGET_BUTTONUVALUEVALUE #  Spec_accessHELP,  WIDGET_BUTTONUVALUEVALUE #=,  WIDGET_BASEROWL #HeaderHEADER,  WIDGET_BUTTONUVALUEVALUE # Column LabelsLABELS,  WIDGET_BUTTONUVALUEVALUE # Motor namesMOTORS,  WIDGET_BUTTONUVALUEVALUE #PlotOPLOT,  WIDGET_BUTTONUVALUEVALUE #Plot (New Window)PLOT,  WIDGET_BUTTONUVALUEVALUE # < ,  WIDGET_TEXTVALUEXSIZEYSIZE #=,  WIDGET_BASEROWX #Select SPEC ScanId:=,  WIDGET_LABELALIGN_LEFTVALUE #SCAN=,  WIDGET_TEXTEDITUVALUEVALUE #! /<WTEXTWSCAN SPECHANDLEXPLOTID #$==, WIDGET_CONTROLNO_COPYREALIZE#%=, WIDGET_CONTROLNO_COPYSET_UVALUE#'xspec,XMANAGERGROUP_LEADER#(;7 N XSPECSCAN CALLER GROUP_LEADERMCANOT_ALLTITLETLB_ID XSPECSCANHANDLESCAN_IDX CALLER GROUPMCA NOT_ALLTITLEMAINBASEMCA_DATA  SCAN_INDEXMODENOTALL DATATYPE IDL_H DESTROY IDL_HANDLE SPEC_HANDLETMP0TMP1TMP2TMP3FILENAME SCANCURRENT INPUTBASESCANLIST SCANFIELDTMP NAMEPANEL WIDGETSSTATEERROR#6#:,  KEYWORD_SET, N_PARAMS "#;  !#<, N_PARAMS="#=  #>= !#?, N_PARAMS="#@= #A= !#CWrong parameters., MESSAGE#F,  N_ELEMENTS="= ! = #G,  KEYWORD_SET #H,  KEYWORD_SET #I" = !  0" = ! = #K, SIZE=   #L= #M "#N=,  HANDLE_INFOVALID0"#O=" ((Handle must be initialized in SLAVE mode, MESSAGE#P=,  HANDLE_CREATEVALUE #Q="= #S #T ,  HANDLE_VALUE!#V="((An IDL handle must be used in SLAVE mode, MESSAGE#W #X,  HANDLE_CREATEVALUE #Y="= #\,  KEYWORD_SET0" Xspecscan #]==,  WIDGET_BASECOLUMNMBARTITLEUVALUE #_File,  WIDGET_BUTTONVALUE #`="Open ...OPEN,  WIDGET_BUTTONUVALUEVALUE #bReloadRELOAD,  WIDGET_BUTTONUVALUEVALUE #c="ExitQUIT=,  WIDGET_BUTTONSEPARATORUVALUEVALUE #eOptions,  WIDGET_BUTTONVALUE #f Show namesSHOW,  WIDGET_BUTTONUVALUEVALUE #gView scan header/dataVIEW,  WIDGET_BUTTONUVALUEVALUE #i,  WIDGET_LABEL #j,  WIDGET_LABEL #k==,  WIDGET_BASECOLUMNFRAME #l,  WIDGET_LABEL #m=,  WIDGET_BASEROW #nScan id.ACCEPT =,(CW_FIELDRETURN_EVENTSTITLEUVALUEXSIZEx #p "CountersMCA+ !CountersMCAAll+ #t== DATATYPE=,. CW_BGROUPEXCLUSIVEFRAMEROWSET_VALUEUVALUE #w==,  WIDGET_BASEALIGN_CENTERCOLUMN #x=,  WIDGET_BASEROW #yLoadACCEPT,  WIDGET_BUTTONUVALUEVALUE #z="Cancel !Close #{QUIT,  WIDGET_BUTTONUVALUEVALUE #}<CALLERINPUTFIELDFILECURRENTNAMESLIST #  =, HANDLE_CREATE =<MODEHANDLEDESTROY_HANDLESCANIDX LISTHANDLEDATATYPECANCELW #,XSPECSCAN_UPDATE#=="#=, WIDGET_CONTROLDESTROY8#:#=, WIDGET_CONTROLREALIZESET_UVALUE#="# xspecscanxspecscan_cleanup=,"XMANAGERCLEANUPGROUP_LEADERMODAL#  #  # 0"# ,  HANDLE_VALUE# ,  HANDLE_FREE!# xspecscanxspecscan_cleanup,XMANAGERCLEANUPGROUP_LEADER#:#;7 QXSPECSCAN_CLEANUP| XSPECSCANID SCAN_INDEXMCA_DATASTATE#`#c, WIDGET_CONTROLGET_UVALUE#d18CANCEL5"#e  #f= !#h18SCANIDX5 #i18DATATYPE5  #k18DESTROY_HANDLE5"18HANDLE5,  HANDLE_FREE#l18 LISTHANDLE5,  HANDLE_FREE#m;7 \DXSPECSCAN_CREATELIST  UPDATESTATE SPECHANDLEUPDATENAMES CURRENT INDX_LISTTMPOLD_LIST NAME_LISTAUX #o#p18W8NAMES5 ,  WIDGET_INFOCHILD #q,  KEYWORD_SET ":#s18CURRSCAN5= #t-=18DATATYPE5=18DATATYPE5=,$ SPEC_SCANMCDATANO_EMPTYRETURN_INDEX #v=,  SPEC_SCANINDEX #w18 LISTHANDLE5,  HANDLE_VALUE#x,  N_ELEMENTS,  N_ELEMENTS,  N_ELEMENTS=", WHERE=/":#}18 LISTHANDLE5=,  HANDLE_VALUESET#~=="# !#1=9SCAN8SCAN_N5, STRING. 1=9SCAN8NAME5 #="=, WIDGET_CONTROLDESTROY#18W8NAMES5ACCEPT  ,  N_ELEMENTS=+, MIN,  WIDGET_LISTUVALUEVALUEYSIZE #, WHERE=  # =" , WIDGET_CONTROLSET_LIST_SELECT#;7 zXSPECSCAN_EVENT EVENTSTATE ERROR SPECHANDLERELOADEVUVALFILE  NEWHANDLEAUXTMP TITLE FLIST N INDEX EVENT_NAMESCAN DUMMYEVENTMSG  ##18TOP5, WIDGET_CONTROLGET_UVALUE#18ID518TOP5"#,XSPECSCAN_UPDATE#18TOP5, WIDGET_CONTROLSET_UVALUE#"18TOP5 , WIDGET_CONTROLDESTROYU#:#18HANDLE5=,  HANDLE_VALUENO_COPY#  #18ID5, WIDGET_CONTROLGET_UVALUE#OPEN)#Select a spec data file=,PICKFILEMUST_EXISTTITLE #"#=, WIDGET_CONTROLHOURGLASS#, SPEC_ACCESS="#==,  SPEC_SCANINDEX # !#File is not a SPEC data file=, WIDGET_MESSAGEERROR !RELOAD)#= !QUIT) #18CANCEL=6#EXIT !SHOW) #18SCANIDX5=" #,XSPECSCAN_CREATELIST#18ID5 Hide NamesHIDE, WIDGET_CONTROLSET_UVALUESET_VALUE! # No data file., WIDGET_MESSAGE !VIEW)#18SPECFILE5 # /, STRPOS=/" # / ,STRPARSE #   # (scan:current, SPEC_SCAN=,  STRCOMPRESSREMX) #18TOP5= , XSPECVIEWGROUPNOSELTITLE!HIDE)#18W8NAMES5=,  WIDGET_INFOCHILD=, WIDGET_CONTROLDESTROYN#18 LISTHANDLE5=/=,  HANDLE_VALUESETY#18ID5 Show NamesSHOW, WIDGET_CONTROLSET_UVALUESET_VALUE!ACCEPT)#=/ #=,  TAG_NAMESSTRUCTURE_NAME # WIDGET_LIST"#18W8FIELD5, WIDGET_CONTROLGET_VALUE#= , STRTRIM #-, STRPOS=,, STRPOS="#Scan ranges are not supported=18TOP5, WIDGET_MESSAGEDIALOG_PARENTERROR !#==18DATATYPE5=18DATATYPE5=,. SPEC_SCANMCDATANO_EMPTYNO_RANGERETURN_INDEX=  !# 18 LISTHANDLE5 ,  HANDLE_VALUE# 18INDEX5  #  ="#  ==, SPEC_SCANINDEXRETURN_INDEX !# # ="#18SCANIDX 6#18MODE5=)!=)#EXIT !=)# ==18HANDLE518SCANIDX518DATATYPE5=<NEW_SCAN_EVENTIDTOPHANDLERFHANDLENEWSCANMCA #18W8CALLER5, WIDGET_CONTROLSEND_EVENT!*!#!Scan "" is not valid. #"=18TOP5, WIDGET_MESSAGEDIALOG_PARENTERROR !DATATYPE)#'18ID5, WIDGET_CONTROLGET_VALUE#(18DATATYPE6!*#,18HANDLE5=,  HANDLE_VALUESETL#-, XSPECSCAN_UPDATERELOAD#.18TOP5, WIDGET_CONTROLSET_UVALUE#/EXIT18MODE5==" #018TOP5=, WIDGET_CONTROLDESTROYU#2;7 XSPECSCAN_UPDATE,  RELOADSTATE ERROR_STATUSRELOADFILE TMP SPECHANDLEVALIDSCANLIST NLIST ##, CATCH# "# , CATCHCANCEL#Can't find SPEC file: =, WIDGET_MESSAGEERROR #! #18HANDLE5=,  HANDLE_VALUENO_COPYE#= #, SIZE   "#,  TAG_NAMES= SPECFILE"#= #"#18SPECFILE5 #18SCANIDX18CURRSCAN5=6#18SCANIDX5=,  SPEC_SCANINDEX=, STRTRIM #=, WIDGET_CONTROLHOURGLASSD#===18DATATYPE5=18DATATYPE5=,6 SPEC_ACCESSCOMPRESSLISTMCDATANO_EMPTYREADALWAYSSTR #=, XSPECSCAN_CREATELISTUPDATE#18W8INPUT5=, WIDGET_CONTROLSENSITIVE!#  #18SCANIDX=6# # #18W8INPUT5=, WIDGET_CONTROLSENSITIVE#" #, STRLEN # " #= (, STRMID...(skipped)... = = , STRMID #18W8FIELD5, WIDGET_CONTROLSET_VALUE#18W8CURRENT5Current scan : , WIDGET_CONTROLSET_VALUE#18W8FILE5, WIDGET_CONTROLSET_VALUE#18W8LIST5, WIDGET_CONTROLSET_VALUE#18HANDLE5==,  HANDLE_VALUENO_COPYSET#;7 d XSPECVIEW  GROUPNOSELTITLEHSPECGROUPNOSEL TITLEBASEBBOX TMPBASE TMPBTEXT WIDS CURRENTSCAN SPECHANDLE STATE ## , ON_ERROR#, N_PARAMS "Usage: xspecview,hspec, MESSAGE#,  KEYWORD_SET0" XSpecView # =,  WIDGET_BASECOLUMNTITLETLB_SIZE_EVENTS #==,  WIDGET_BASECOLUMNFRAME #=,  WIDGET_BASEROWX #QuitQUIT,  WIDGET_BUTTONUVALUEVALUE #Print/SaveAs...PRINT,  WIDGET_BUTTONUVALUEVALUE #,  KEYWORD_SET0" Scan sel...SSCAN,  WIDGET_BUTTONUVALUEVALUE #AllDataHeader+SEL====,2 CW_BGROUPEXCLUSIVEFRAMERETURN_INDEXROWUVALUE # ,  REPLICATE P ==,&  WIDGET_TEXTEDITSCROLLVALUEXSIZEYSIZE #<TEXT #current=, SPEC_SCANRETURN_INDEX #,  HANDLE_CREATEVALUEX #  ==<WIDSSCANBASE SPECHANDLESPECMCASEL #=,  WIDGET_INFOCHILD , WIDGET_CONTROLSET_UVALUE#=, WIDGET_CONTROLREALIZEU#  ,XSPECVIEW_DISPLAYSCANINDEX# XSPECVIEW, XMANAGERGROUPX#;7 DXSPECVIEW_DISPLAY\   SCANINDEXSTATE SCANINDEXHTEXTTMPN TMP1I NCOLLABELS #/#1 , ON_ERROR#2 , WIDGET_CONTROLHOURGLASS#318 SPECHANDLE5,  HANDLE_VALUE#4,  KEYWORD_SET0"current=, SPEC_SCANRETURN_INDEX #618SEL5=,  STRCOMPRESSREMT0) #8=,  SPEC_HEADERSINDEX #9==, SPEC_DATAINDEXSTRING #: ,  N_ELEMENTS #;, STRARR #<==% , STRACCUMULATE '#=+ #>=,  SPEC_POINTSINDEX="#?=,  SPEC_COLUMNSINDEX #@=,  SPEC_LABELSINDEX #A,,*************** arranged data **************+ #B==% : =,  STRCOMPRESSREM+ '#C+ !1) #G==, SPEC_DATAINDEXSTRING #H=,  N_ELEMENTS #I, STRARR #J==%  , STRACCUMULATE ' !2) #L=,  SPEC_HEADERSINDEX !.!*#O18WIDS8TEXT5, WIDGET_CONTROLSET_VALUE#P;7 XSPECVIEW_EVENTEVENT EVENTUVALUESTATEIDSTATETEXTBAD EVENT_NAMETMP#T#V18ID5, WIDGET_CONTROLGET_UVALUE#X,  N_ELEMENTS " #Y,  KEYWORD_SET0" #[18HANDLER5 ,  WIDGET_INFOCHILD #\=, WIDGET_CONTROLGET_UVALUENO_COPY#^18TOP518ID5"#_2!D8NAME5WIN"18WIDS8TEXT518X5 18Y5 A, WIDGET_CONTROLSCR_XSIZESCR_YSIZE!18WIDS8TEXT518X5 18Y5 2, WIDGET_CONTROLSCR_XSIZESCR_YSIZE#c!#fQUIT)#h18 SPECHANDLE5,  HANDLE_FREE#i=18TOP5, WIDGET_CONTROLDESTROYZ#j:!PRINT)#m18WIDS8TEXT5, WIDGET_CONTROLGET_VALUE#n18TOP5,  PRINT_ASCIIGROUPL!SEL) #q18SELECT5=" !#r18SEL18VALUE56#s,XSPECVIEW_DISPLAY!SSCAN) #v18SCANBASE5=, WIDGET_CONTROLBAD_IDSHOW#w=,  TAG_NAMESSTRUCTURE_NAME #xNEW_SCAN_EVENT" #y18NEWSCAN5,XSPECVIEW_DISPLAYSCANINDEXO! #z18SCANBASE5" #{18 SPECHANDLE518ID518SPECMCA5=18TOP5Scan Selection,6 XSPECSCANCALLERGROUP_LEADERMCANOT_ALLTITLETLB_ID#~18SCANBASE6!.!*#=, WIDGET_CONTROLNO_COPYSET_UVALUEA#;7 @ XSPEC_EVENTEVENT EVENTUVALSTATEFILEWTEXTWSCANTEXT H1SCANTMP INDEX LABELS MOTORS LABELS2 I DATAPARENT NCOLSSSEVENTVAL #7#:18ID5, WIDGET_CONTROLGET_UVALUE#;18TOP5 , WIDGET_CONTROLGET_UVALUENO_COPY#=LOADFILE)#?*=18TOP5=,PICKFILEFILTERGROUPNOCONFREAD  #@"! #A=, WIDGET_CONTROLHOURGLASSL#B18WTEXT5 #C18WSCAN5 #D Spec file: + #EScan list (compressed form): ===, SPEC_ACCESSCOMPRESSLISTSTR+ #G, WIDGET_CONTROLSET_VALUE#H /<WTEXTWSCAN SPECHANDLEXPLOTID ! EXIT)#K18TOP5=, WIDGET_CONTROLDESTROYd#L:! HEADER)#O18WSCAN5, WIDGET_CONTROLGET_VALUE#P  #Q=,  STRCOMPRESSREM"#R=No selection has been done.Please select a scan.+, WIDGET_MESSAGEERROR #T! #V18 SPECHANDLE5, SPEC_SCAN #W =/"#X=Error reading selected scan.Please select a scan.+, WIDGET_MESSAGEERROR #Z! #\18 SPECHANDLE5, SPEC_HEADERS #]18 SPECHANDLE8SPECFILE5 Header of Scan: 18TOP5, STRLEN, MAX,  N_ELEMENTS,&SHOWINFOGROUPHEIGHINFOTEXTTITLEWIDTH! LABELS) #b18WSCAN5, WIDGET_CONTROLGET_VALUEI#c= #d=,  STRCOMPRESSREM" #e=No selection has been done.Please select a scan.+, WIDGET_MESSAGEERROR #g! #i18 SPECHANDLE5, SPEC_SCAN #j =/" #k=Error reading selected scan.Please select a scan.+, WIDGET_MESSAGEERROR #m! #o18 SPECHANDLE5, SPEC_LABELS #p18 SPECHANDLE8SPECFILE5 Columns of Scan: 18TOP5  , STRLEN, MAX ,  N_ELEMENTS,&SHOWINFOGROUPHEIGHINFOTEXTTITLEWIDTH! MOTORS)#u18WSCAN5, WIDGET_CONTROLGET_VALUEI#v= #w=,  STRCOMPRESSREM" #x=No selection has been done.Please select a scan.+, WIDGET_MESSAGEERROR #z! #|18 SPECHANDLE5, SPEC_SCAN #} =/" #~=Error reading selected scan.Please select a scan.+, WIDGET_MESSAGEERROR #! #18 SPECHANDLE5, SPEC_MOTORS #18 SPECHANDLE8SPECFILE5 Motors of Scan: 18TOP5  , STRLEN, MAX ,  N_ELEMENTS,&SHOWINFOGROUPHEIGHINFOTEXTTITLEWIDTH! PLOT)#18WSCAN5, WIDGET_CONTROLGET_VALUEI#= #=,  STRCOMPRESSREM"#=No selection has been done.Please select a scan.+, WIDGET_MESSAGEERROR #! #18 SPECHANDLE5, SPEC_SCAN # =/"#=Error reading selected scan.Please select a scan.+, WIDGET_MESSAGEERROR #! #18 SPECHANDLE5, SPEC_LABELS #  #= ,  N_ELEMENTS=%Column ==,  STRCOMPRESSREM is:   '#18 SPECHANDLE5, SPEC_DATA #18 SPECHANDLE8SPECFILE5 Data of Scan: ,XPLOTPARENTWTITLE#18 SPECHANDLE8SPECFILE5 Columns of Scan:   , STRLEN, MAX ,  N_ELEMENTS,&SHOWINFOGROUPHEIGHINFOTEXTTITLEWIDTH#18XPLOTID6! OPLOT)#18WSCAN5, WIDGET_CONTROLGET_VALUEI#= #=,  STRCOMPRESSREM"#=No selection has been done.Please select a scan.+, WIDGET_MESSAGEERROR #! #18 SPECHANDLE5, SPEC_SCAN # =/"#=Error reading selected scan.Please select a scan.+, WIDGET_MESSAGEERROR #! #18 SPECHANDLE5, SPEC_LABELS #  #= ,  N_ELEMENTS=%Column ==,  STRCOMPRESSREM is:   '#18 SPECHANDLE5, SPEC_DATA #18XPLOTID5=,  WIDGET_INFOVALID_ID #18 SPECHANDLE5, SPEC_COLUMNS #18XPLOTID5=/ ="#18 SPECHANDLE8SPECFILE5 Data of Scan: ,XPLOTPARENTWTITLE#18XPLOTID6!#18XPLOTID5=, WIDGET_CONTROLGET_UVALUENO_COPY#18 DTHCURRENT, HANDLE_CREATE6#18 DTHCURRENT5=,  HANDLE_VALUESETV#18WIDS8NCOL5=,  STRCOMPRESSREMX, WIDGET_CONTROLSET_VALUEE#18WIDS8MESSAGE5))Xplot message: Current set is SPEC scan: , WIDGET_CONTROLSET_VALUEE#18WIDS8XCOL5, FIX"#18WIDS8XCOL51, WIDGET_CONTROLSET_VALUEE#18XPDT8XCOL=6#18WIDS8YCOL5, FIX"#18WIDS8YCOL5=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEE#18XPDT8YCOL6#, XPLOT_PLOT#18XPLOTID5=, WIDGET_CONTROLNO_COPYSET_UVALUE#18 SPECHANDLE8SPECFILE5 Columns of Scan: 18XPLOTID5  , STRLEN, MAX ,  N_ELEMENTS,&SHOWINFOGROUPHEIGHINFOTEXTTITLEWIDTH! XPLOT)#,XPLOT! XSPEC)#,XSPEC! HELP)#18ID5, WIDGET_CONTROLGET_VALUEI#,  STRLOWCASE #cat > .hlp,  DOC_LIBRARYPRINTL#.hlp18TOP5 0=, XDISPLAYFILE1GROUPHEIGHTREMOVE! .! *#18TOP5=, WIDGET_CONTROLNO_COPYSET_UVALUEE#;7 @L XSURFACE1?" .GROUP WINDOW_SIZEWTITLEXTITLEYTITLEZTITLE ORIENTATION1 DATADATAXDATAYGROUPW_SIZEWTITLEXTITLEYTITLE ZTITLEZROT THEDATAXROTSKIRT SHADE#AXES&THEDRAWXMARGIN YMARGINUPPER) COMMANDID- TITLES THESIZE XSURFACEBASE THEBASE VER XSURFACEPALETTE CONTROLSITOSSXSURFACEDISPLAYXSURFACECONTROLS SKIRTBASE!SKIRTOFF"SKIRTON. SHADEBASE$SHADEOFF%SHADEON AXESBASE(AXESON,AXESOFF' UPPERBASE+UPPERONUPPEROFF* COMMANDBASE COMMANDLABEL TEMP!D#"#(XSurface, XREGISTERED":#.,  KEYWORD_SET0" XSurface1 #/,  KEYWORD_SET0" #0,  KEYWORD_SET0" #1,  KEYWORD_SET0" #2<XYZ #3,  N_ELEMENTS "#4, DEVICEGET_SCREEN#5   +   #9, SIZE #: A #;=  #<= #== #>= #? A @@+ #@ @ @+ #A= #B  #D ,  WIDGET_BASECOLUMNTITLE #G"Done" EXIT"Print" PRINT"Set Titles" TITLES "Tools" {"XLoadct" XLOADCT"XPalette" XPALETTE"XManagerTool" XMANTOOL}+ ,XPDMENU#Q = ,  WIDGET_BASEROWX #S= ,  WIDGET_INFOVERSION #T 18STYLE5 OPEN LOOK) #V = = = ,  WIDGET_BASECOLUMNEXCLUSIVEFRAME ! .#\ = = ,  WIDGET_BASECOLUMNFRAME ! *#d = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = +=   ?= +  =  + p= = = + = = =+ 4= 0= 8+ = P=  + |= = (+ ====+  =  >=+ $= =  !+ = = =!+== = ==+="= = ==+=%= = =%= +== = =$= +=== = += == == += = == = += = == = += = == = += = == = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = ++(= = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += == = +=== ==+== = = =+=%= =%= + = == ,+=$=  = 5+ =  = =!+===%= %+=)=== =+  '= = ="+=== = =+==%= = =+=$=%= = ="+= == = =+= == = =+= @= ==+= === = += = =+= = += = =*= = += = == = += = =%= = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = += = = = = ++(= = = = = += = = = = += ==== += =- =&= +=  == += =/ D= = += === = += === = += === = += === = += =%== = += =%== = += =%=== += =%= = += =%==%= += =%=%== += =%=2 `= += =%=== += == = =+=    += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += ==$=%= += ==$=%= += = =%= += ==$=%= += = =$= += =/ *=8= += =- =&= += ==== += = = = = += = = = = ++(= = = = = += = = = = += ==== += =-=;=&= += =/=:=8= += ==9=$= += ==$=%= += ==8=%= += ==$=%= += ==$=%= += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =%=%== += =4=5=6=7+= == = =+= =%=== += =%=2=3= += =%=%== += =%==%= += =%==2= += =%=== += =%== = += =%== = += === = += === = += === = += === = += =/=1= = += =/=0== += =-=.=&= += ==== += = = = = += = = = = ++(= = =%= = += = =%= = += = I= = += = =:= = += = =)= = += = =%= = += = = = = +=====+== = = =+== = = =+== = = =+== = = =+== = = =+== = = =+== = = =+== = = =+=,= = = =#+== = = =(+== = = =++ = = = +== = = =++== = = =(+=,= = = =#+== = = =+== = = =+== = = =+== = = =+== = = =+== = = =+== = = =+== = = =+== = = =+=====+= = = = = += = =%= = += = =)= = += = =:= = += = =<= = += = =%= = += = =%= = ++(= = = = = += = = = = += = = = = +===== +=%= = = =+=%= =%= =+=%= =)= =+=%= =:= =+=%= =<= =+=%= =%= =+=%= =%= =+=%= =%= =+=%= =%= =+=%= =%= =+=%= = = =+=%= = = =+=%== = =+== = ==+ H= = = =(+ == = +=== = =' +== = = =>+=%== = =(+=%= = ==+=%= = = =+=%= = = =+=%= = = =+=%= == =+=%= == =+=%= == =+=%= == =+=%= = =+=%= T= =+=%= == =+=%= == =+=%= = = =+===== += = = = = += = = = = += = = = = ++(+ #f===,  N_ELEMENTS= %@ , STRING,  WIDGET_BUTTONUVALUEVALUE '?#k == =,  WIDGET_DRAWRETAINXSIZEYSIZE #p = ,  WIDGET_BASEROWX #s= = = ,  WIDGET_BASECOLUMNEXCLUSIVEFRAME #xNo SkirtSKIRTOFF,  WIDGET_BUTTONUVALUEVALUE #|SkirtSKIRTON,  WIDGET_BUTTONUVALUEVALUE #= = = ,  WIDGET_BASECOLUMNEXCLUSIVEFRAME # Wire FrameSHADEOFF,  WIDGET_BUTTONUVALUEVALUE #Shaded SurfaceSHADEON,  WIDGET_BUTTONUVALUEVALUE #= = = ,  WIDGET_BASECOLUMNEXCLUSIVEFRAME # Show AxesAXESON,  WIDGET_BUTTONUVALUEVALUE # Hide AxesAXESOFF,  WIDGET_BUTTONUVALUEVALUE #= = = ,  WIDGET_BASECOLUMNEXCLUSIVEFRAME #Show Top and BottomUPPERON,  WIDGET_BUTTONUVALUEVALUE # Only Show TopUPPEROFF,  WIDGET_BUTTONUVALUEVALUE # = = ,  WIDGET_BASECOLUMNFRAME #%%IDL Commmand To Produce Above Output:,  WIDGET_LABELVALUE # 18STYLE5 OPEN LOOK)A#SURFACE, data.z, data.x, data.y,  WIDGET_LABELVALUE !B.#SURFACE, data.z, data.x, data.y F= = ,  WIDGET_TEXTSCROLLVALUEXSIZEYSIZE  !B*# = , WIDGET_CONTROLREALIZE0#= , WIDGET_CONTROLSET_BUTTON#= , WIDGET_CONTROLSET_BUTTON#= , WIDGET_CONTROLSET_BUTTON#= , WIDGET_CONTROLSET_BUTTON#!, WIDGET_CONTROLGET_VALUE#! #, N_PARAMS "C#<ZXY #,XSURFACE_DRAW1!D#, N_PARAMS="D#=,  N_ELEMENTS, LINDGEN=,  N_ELEMENTS, LINDGEN<ZXY #,XSURFACE_DRAW1# XSurface1  XSurface_ev1,"XMANAGEREVENT_HANDLERGROUP_LEADERI#;7 L4XSURFACE_DRAW18 ORIENTATION1 ZROTTHEDATAXROTSKIRTSHADEAXESTHEDRAW XMARGINYMARGINUPPER COMMANDID TITLES XY DATACOMMAND TMP #D#J, WSET#L18X5,  KEYWORD_SET0"#M1 9Z5,  N_ELEMENTS, LINDGEN #N1=9Z5,  N_ELEMENTS, LINDGEN !#P18X5 #Q18Y5 #S18Z5<ZXY #="SURFACE, data.z, data.x, data.y !""SHADE_SURF, data.z, data.x, data.y # A"(", AX = ",I3.3), STRINGFORMAT #="(", AZ = ",I3.3), STRINGFORMAT #=" , /SKIRT #= A " $$(", XMARGIN = [",F4.1,", ",F4.1,"]"), STRINGFORMAT #=  @"  $$(", YMARGIN = [",F4.1,", ",F4.1,"]"), STRINGFORMAT # ="  , /UPPER_ONLY #=" $$, XSTYLE = 4, YSTYLE = 4, ZSTYLE = 4 # 18X5" , xtitle=' 18X5' # 18Y5" , ytitle=' 18Y5' # 18Z5" , ztitle=' 18Z5' # , WIDGET_CONTROLSET_VALUE#A #;7 a XSURFACE_EV1 h ORIENTATION1 EVENTZROTTHEDATAXROT SKIRTSHADEAXESTHEDRAW XMARGINYMARGINUPPER COMMANDID TITLES EVENTVALCOMMAND  TMPTITLES ACTION(##18ID5, WIDGET_CONTROLGET_UVALUE# 0)#  h # "= #,XSURFACE_DRAW1#18ID5=, WIDGET_CONTROLSET_BUTTON!( 1)#== #="= #,XSURFACE_DRAW1#18ID5=, WIDGET_CONTROLSET_BUTTON!( 2) #== #="= #,XSURFACE_DRAW1#18ID5=, WIDGET_CONTROLSET_BUTTON!( 3) #== #=" = #,XSURFACE_DRAW1#18ID5=, WIDGET_CONTROLSET_BUTTON!( 4) # ? # =  #,XSURFACE_DRAW1#18ID5=, WIDGET_CONTROLSET_BUTTON!( 5)# ?L # = #,XSURFACE_DRAW1#18ID5=, WIDGET_CONTROLSET_BUTTON!(SKIRTON)#18SELECT5 "#= #,XSURFACE_DRAW1!(SKIRTOFF)#18SELECT5="#= #,XSURFACE_DRAW1!(SHADEOFF)#18SELECT5="#= #,XSURFACE_DRAW1!(SHADEON)#18SELECT5="#= #,XSURFACE_DRAW1!(AXESOFF)#18SELECT5="#  #,XSURFACE_DRAW1!(AXESON)#18SELECT5="#= #,XSURFACE_DRAW1!(UPPERON)#18SELECT5="#= #,XSURFACE_DRAW1!(UPPEROFF) #18SELECT5="#= #,XSURFACE_DRAW1!(XLOADCT)!#18TOP5,XLOADCTGROUPB!(XPALETTE)"#18TOP5,XPALETTEGROUPB!(XMANTOOL)##18TOP5,XMTOOLGROUPB!(EXIT)$#18TOP5=, WIDGET_CONTROLDESTROYO!(PRINT)%# , WIDGET_CONTROLGET_VALUE#, XPRINTBDATAL!(TITLES)'#   # =x titley titlez title+,XSCRMENUACTIONNOTITLES#DO"&# #,XSURFACE_DRAW1!(.!(*#;7 lXTEXT  ACTION CANCEL_BUTTONGROUPSIZETEXTACTIONCANCEL GROUP SIZETEXT SSIZE MAIN_BASEMESSAGE VERSIONFONT JUNK PTR #;#=,  KEYWORD_SET0"****************** #> , INTARR #?,  KEYWORD_SET0"  + ! #@xtext,  WIDGET_BASETITLE #Anote: ,  WIDGET_BASECOLUMNTITLE #C=,  WIDGET_INFOVERSION #D18STYLE5Motif18STYLE5 OPEN LOOK"*times-medium-r-*180* ! #J= = +,$  WIDGET_TEXTFONTFRAMEVALUEXSIZEYSIZE #MOKOK=,  WIDGET_BUTTONNO_RELUVALUEVALUE #O,  KEYWORD_SET"CANCELCANCEL=,  WIDGET_BUTTONNO_RELUVALUEVALUE #R=, WIDGET_CONTROLREALIZE(#T, WIDGET_BASE #V , WIDGET_CONTROLSET_UVALUE#Xxtext=,XMANAGERGROUP_LEADERMODAL#Z , WIDGET_CONTROLGET_UVALUE#[ =, WIDGET_CONTROLDESTROYU#];7 p XTEXT_EVENTEVENTPTRUVALUE#)#+18TOP5, WIDGET_CONTROLGET_UVALUE#,18ID5, WIDGET_CONTROLGET_UVALUE#.OK)#0DO, WIDGET_CONTROLSET_UVALUE#118TOP5 , WIDGET_CONTROLDESTROYU!CANCEL)#4DONT, WIDGET_CONTROLSET_UVALUE#518TOP5=, WIDGET_CONTROLDESTROYU!*#8;7 XWINDOWBUFFERDATAEDITGROUP WINDOW_SIZEWTITLEBUFFERDATAEDITGROUPW_SIZEWTITLEWBASEWBUTTONS WQUITWPRINT WDRAW WEDIT STATE TMP I #m#o,  KEYWORD_SET0"  #p,  KEYWORD_SET0" surface,data #q,  KEYWORD_SET0" ,DIST #r,  KEYWORD_SET0"Xwindow #x =,  WIDGET_BASECOLTITLETLB_SIZE_EVENTS  #y=,  WIDGET_BASEROWX #{QuitQUIT,  WIDGET_BUTTONUVALUEVALUE #|PrintPRINT,  WIDGET_BUTTONUVALUEVALUE #~,  N_ELEMENTS "#, DEVICEGET_SCREEN#=  +   #==,  WIDGET_DRAWXSIZEYSIZE #,  KEYWORD_SET" #,  N_ELEMENTS="Edit Xwindow bufferEDIT,  WIDGET_BUTTONUVALUEVALUE ! ==EDIT, STRLEN ,*  WIDGET_TEXTALIGN_LEFTEDITUVALUEVALUEXSIZE # <WSETBUFFERDATA # =, WIDGET_CONTROLREALIZESET_UVAL#=, WIDGET_CONTROLREALIZE#,  N_ELEMENTS=" =A ! =,  N_ELEMENTS=% A ' #2!VERSION8RELEASE5==, STRMID4"xwindow, XMANAGERGROUP|!xwindow=,XMANAGERGROUPNO_BLOCK#;7  XWINDOW_EVENT  EVENTUVALUESTATE  WINDOWNUMDATAITMPIJUNKTMP#A#C18ID5, WIDGET_CONTROLGET_UVALUE#D18TOP5, WIDGET_CONTROLGET_UVALUE#F18WSET5, WIDGET_CONTROLGET_VALUE#G, WSET#J18TOP518ID5"#K18WSET518X5 18Y5 %, WIDGET_CONTROLSCR_XSIZESCR_YSIZE#L18DATA5 #M18BUFFER5,  N_ELEMENTS "1 9BUFFER5A !=18BUFFER5,  N_ELEMENTS=%19BUFFER5A '#P:#SQUIT)#T18TOP5=, WIDGET_CONTROLDESTROY(!PRINT) #U18BUFFER518DATA5,XPRINTBUFFERDATA!EDIT)#W18BUFFER5 #X18DATA5 #Y,  N_ELEMENTS=" #\=Buffer to edit, XDISPLAYFILE1MODALTEXTTITLE! #^18ID5, WIDGET_CONTROLGET_VALUE#_18TOP518WSET5<WSETBUFFERDATA, WIDGET_CONTROLSET_UVALUE#a,  N_ELEMENTS=" =A !=,  N_ELEMENTS=%A ' !.!*#h;7 XXYOUTS0BUFFERGROUPWINDOWBUFFERGROUPWINDOW WBASEBUFFERWWINWBASEWBASE0 WQUIT  WSOFTQUIT WBASE01 WSAVELABEL WREFRESH WTEXT WBASE1 WXWYWBASE2 WCHARSIZE WCHARTHICKWBASE3 WORIENTATIONWBASE33 WCLRTABLEWCLRTXTWCOLORWFONTSWCOMMANDNBUFFERTMPSTATE ## , ON_ERROR#, WIDGET_BASE #Xxyouts,  WIDGET_BASETITLEX # ,  WIDGET_BASECOLUMN #=,  WIDGET_BASEROWX #Quit and discard saved labelsQuit,  WIDGET_BUTTONUVALUEVALUE #Quit and keep saved labelsSoftQuit,  WIDGET_BUTTONUVALUEVALUE #HelpHelp,  WIDGET_BUTTONUVALUEVALUE #=,  WIDGET_BASEROWL #  Save Label SaveLabel,  WIDGET_BUTTONUVALUEVALUE # Refresh ScreenRefresh,  WIDGET_BUTTONUVALUEVALUE #= 2=text=,*  WIDGET_TEXTALL_EVENTSEDITFRAMEVALUEXSIZE #=,  WIDGET_BASEROWX # = Normalized Horizontal Position X=  ? = ?,4 CW_FSLIDERDRAGEDITFRAMEMAXMINTITLEVALUEXSIZE # =Normalized Vertical Position Y======,4 CW_FSLIDERDRAGEDITFRAMEMAXMINTITLEVALUEXSIZE #=,  WIDGET_BASEROWX #=Character Size== A ===,4 CW_FSLIDERDRAGEDITFRAMEMAXMINTITLEVALUEXSIZE #=Character Thickness======,4 CW_FSLIDERDRAGEDITFRAMEMAXMINTITLEVALUEXSIZE #=,  WIDGET_BASEROWX #=Orientation [degrees]= C4/ ===,4 CW_FSLIDERDRAGEDITFRAMEMAXMINTITLEVALUEXSIZE #==,  WIDGET_BASECOLUMNFRAME #Change color tableXloadct,  WIDGET_BUTTONUVALUEVALUE #Color:=,  WIDGET_LABELALIGN_LEFTVALUE # s , CW_CLR_INDEXXSIZEYSIZE #3: Simplex Roman4: Simplex Greek5: Duplex Roman6: Complex Roman7: Complex Greek8: Complex Italic9: Math and Special 10: Special11: Gothic English12: Simplex Script13: Complex Script14: Gothic Italian15: Gothic German 16: Cyrillic17: Triplex Roman18: Triplex Italic+Font: Fonts, WIDGET_DROPLISTTITLEUVALUEVALUE #==,  WIDGET_TEXTFRAMEVALUEXSIZE #  # ,  REPLICATE #, SIZE #==" 2!D8WINDOW5 #=" #Display not set=, WIDGET_MESSAGEERROR #:#=, WIDGET_CONTROLHOURGLASST#  , TVRD=<WTEXTWINDOWTVRDWXWY WCHARSIZE WCHARTHICK WORIENTATIONWCOLORIFONTSWCOMMAND COMMAND_OLD WBASEBUFFERBUFFERNBUFFER #==, WIDGET_CONTROLNO_COPYREALIZESET_UVALUE# , WIDGET_CONTROLSET_VALUER#=, WIDGET_CONTROLSET_VALUER#xxyouts=,XMANAGERGROUP_LEADERMODAL#, WIDGET_CONTROLGET_UVALUE#18NBUFFER5=" 1=18NBUFFER5=9BUFFER5 ! = #;7 0 XXYOUTS_EVENT EVENT STATEUVALTMPI TEXTXYCHARSIZE  CHARTHICK ORIENTATION COLOR FONTS COMMAND TMPCOMMAND#N#P18TOP5, WIDGET_CONTROLGET_UVALUE#Q18ID5, WIDGET_CONTROLGET_UVALUE#S18WINDOW5, WSET#U,  KEYWORD_SET" #VQuit)#X))Are you sure you want to discard all your labels? =, WIDGET_MESSAGECANCELDEFAULT_CANCEL #ZCancel"#[=, WIDGET_CONTROLHOURGLASS(#\18TVRD5, TV#]18NBUFFER 6#^18 WBASEBUFFER5, WIDGET_CONTROLSET_UVALUE#_18TOP5=, WIDGET_CONTROLDESTROYU#`:! SoftQuit)#d18 WBASEBUFFER5, WIDGET_CONTROLSET_UVALUE#e18TOP5=, WIDGET_CONTROLDESTROYU#f:! Help)#i=, WIDGET_CONTROLHOURGLASSU#jxxyoutscat > xxyouts.hlp,  DOC_LIBRARYPRINTS#k xxyouts.hlp18TOP5 0=, XDISPLAYFILE1GROUPHEIGHTREMOVE! Fonts)#n18IFONTS18INDEX56! Xloadct)#o18TOP5,XLOADCTGROUPO! Refresh) #q18TVRD5, TV#r=18NBUFFER5=% 19BUFFER5A ' #s:! .! *#y18WTEXT5, WIDGET_CONTROLGET_VALUE#z18WX5, WIDGET_CONTROLGET_VALUE#{18WY5, WIDGET_CONTROLGET_VALUE#|18 WCHARSIZE5, WIDGET_CONTROLGET_VALUE#}18 WCHARTHICK5 , WIDGET_CONTROLGET_VALUE#~18 WORIENTATION5 , WIDGET_CONTROLGET_VALUE#18WCOLOR5 , WIDGET_CONTROLGET_VALUE#!18IFONTS5, FIX =,  STRCOMPRESSREM  #18 COMMAND_OLD5" 18 COMMAND_OLD5,COLOR=!p.backgroundA # xyouts,/NORM,=,  STRCOMPRESSREMX,=,  STRCOMPRESSREMX,'  !X',charsize==,  STRCOMPRESSREMX ,CharThick= =,  STRCOMPRESSREMX ,Orientation= =,  STRCOMPRESSREMX #18 COMMAND_OLD= 6# , HELP# "#= ,color= =,  STRCOMPRESSREM # executing : , PRINT#A #18WCOMMAND5, WIDGET_CONTROLSET_VALUE!#=  # executing : , PRINT#= A #18WCOMMAND5, WIDGET_CONTROLSET_VALUE#,  KEYWORD_SET" SaveLabel"#18 COMMAND_OLD6#18WX5 ?, WIDGET_CONTROLSET_VALUE#18WY5=, WIDGET_CONTROLSET_VALUE#18WTEXT5, WIDGET_CONTROLSET_VALUE#18NBUFFER5 "#Maximum number of labels is 200=, WIDGET_MESSAGEERROR #!#118NBUFFER59BUFFER6#18WCOMMAND5Label saved in Xxyouts buffer with index: 18NBUFFER5=,  STRCOMPRESSREMR, WIDGET_CONTROLSET_VALUE#18NBUFFER18NBUFFER5=6#****** Saved buffer is: , PRINT#=18NBUFFER5=%19BUFFER5, PRINT'#18TOP5=, WIDGET_CONTROLNO_COPYSET_UVALUE#;7 __ADDSCANPSCANLISTSLINECTRANGE SCANCOUNTER##18 HEADERLINES 6#18 PREDATALINES 6#18 DATALINES 6#18 POSTDATALINES 6#=" !+ #= #;7 ׄ __HEADERLOADh  HANDLE N MOTORLBLMOTOR_NOEPOCHUNITLINEMOTLINE NMOTLINESI AUX ##18HEADERPT5118CURRSCAN59SCAN8HEADERPT5" #118CURRSCAN59SCAN8 HEADERLINES5 #18 MOTORNAMES5 # #18MOTOR_NO5 #  # / #=" #18SPECFILE5 , OPENRGET_LUN#118CURRSCAN59SCAN8HEADERPT5,  POINT_LUN# #= #=/ #= % #, __READLINE#==, STRMIDE)#  , STRLEN=, STRMID, LONG ! O) #, __LINECUT # (2X,I), READSFORMAT#===, __LINESPLIT #= "#= !# ,  N_ELEMENTS #= ,  N_ELEMENTS=  #="= ! .! *'#, FREE_LUN# 18HEADERPT118CURRSCAN59SCAN8HEADERPT56#!18EPOCH6#"18 NMOTORLINES6##18MOTOR_NO6#$18 MOTORNAMES6#&;7 4 __READLINEDUNITLINEPAUX#s#t, READF#u, STRLEN  #v #w=, STRMID\"#x , STRPUT#y, READF#z #{, STRLEN= !#};7 T__READS  LINE ARRAYERROR NARR _LINEPOSNLENGTHNREADLIST I ## , SIZE   "#= #?#= !ERROR#, READS#?#!ERROR="= != ! # #,  N_ELEMENTS # ,  STRCOMPRESS, STRTRIM #, BYTE  , WHERE #,  N_ELEMENTS #="#==, STRLEN=, STRMID ! #=, STRLEN+= # #" = ! = #, STRARR #= =% #  = , STRMID ' #;7 __SPECCHECKHANDLE##,__ISASPECHANDLE0"#, SPEC_ACCESS "$$Variable is not a valid SPEC handle., MESSAGE#;7 H __SPECLOAD INDEXHANDLESCAN_ID ERRMSGIDXAUXN CURR_NCURR_AP UP_SCAN_IDS_NO P S_AP UNIT LINE *#*#,, SIZE #- ="#.""Scan number must be a scalar value, MESSAGE#118CURRSCAN5 #2="#319SCAN8SCAN_N5 #419SCAN8SCAN_AP5 !#6 / #7=/ #:=="!#;= "#<,  STRUPCASE #=CURRENT) #?="#@No current scan #A= !ERR#B:!#D!(!NEXT) #I=18TOTAL5=" #J= #K!(! #M No next scan #N= !ERR#O:!FIRST)#T18TOTAL5=" #U= #V!(!#X No first scan #Y= !ERR#Z:!LAST)#_18TOTAL5="#`18TOTAL5= #a!(!#c No last scan #d= !ERR#e:!.#j= #k?#l, FIX #m?#n., STRPOS= #o ="#p , STRLEN , STRMID, FIX !#r= !*!#w=== "#xNot a valid scan number. #y= !ERR#z:#|, FIX #} d , ROUND # = =,  KEYWORD_SET0"#Not a valid scan number. #= !ERR#:#,  KEYWORD_SET"# ="18TOTAL5 = # = 18TOTAL5"# = #!(!#Not enough scans in "18SPECFILE5". #= !ERR#:! #  = " #!(# ="$#="##18TOTAL5=%"#19SCAN8SCAN_N5 ""!('!#= #=18TOTAL5=%&#19SCAN8SCAN_N5 19SCAN8SCAN_AP5 "&#!('%#Scan  , STRING , STRTRIM[ , STRING=', STRTRIM] not found in "18SPECFILE5". #= !ERR#:#18CURRSCAN5"*#19LABEL6#19SCAN8N_COL5=19SCAN8LABELPT5=")# 18SPECFILE5=, OPENRGET_LUN# 19SCAN8LABELPT5=',  POINT_LUN# #  , __READLINE# , FREE_LUN# ='19SCAN8N_COL519SCAN8N_COL5, __LINESPLIT #18LABEL6#18CURRSCAN6#= !ERR#;7 ATAN2 DEGZEROARR1ARR2DEGZRFSIZSSIZNDIM FTYPN1 N2 ZERO PI PI2 RADEG CRRESJ IXY R0##0, SIZE #1, SIZE #2 ="= !#3Arrays must be same dimension , MESSAGECONTINUE#4 :#6 "#7Dimension must be 2D or less=, MESSAGECONTINUE#8=:#:====, ABS, TOTAL="#;Incompatible data types=, MESSAGECONTINUE#<=:#>= #?  " #@..Data type must be floating or double precision=, MESSAGECONTINUE#B=:#F=" #G= #H= ! #J= #K= #M " #N  #O!PI #P!PI @ #Q C4  #R, FLTARR #S ="  , FLTARR !#U  #V!DPI #W!DPI @ #X @f  #Y, DBLARR #Z =" , DBLARR #^ ="#_= =%#`==%#a #b #d  ",  KEYWORD_SET"#f  !#h%%Undefined result: zero divide by zero=, MESSAGECONTINUE#i=:!#k " "  ! / ! " "  !  !#p, ATAN #q "#r "  !#t "  #w '#y= '!/#}==%-#~ # #  "#,  KEYWORD_SET"!#  !"#%%Undefined result: zero divide by zero=, MESSAGECONTINUE#=:!,# "& "$  !% / !, ") "'  !(  !,#, ATAN # "+# "*  !,# ",  # ' #=". !/= #,  KEYWORD_SET"0  #:#;7 CASTXLOWHIGHCONVILOIHIITYP ##0 , ON_ERROR#1nadabytefixlongfloatdoublecomplexstring+ #2,  N_ELEMENTS "= !=, FIX  #3,  N_ELEMENTS="= !, FIX= #5,TYPE #6=="Can't do that!, MESSAGE! " ,:! " ,:! :#:;7  CHECKFILE|VERBOSEFILEVERBOSEERRORUNIT##, , ON_ERROR#-, CATCH#. "#/,  KEYWORD_SET"CHECKFILE: cannot open file: , PRINT#0=:#2 , OPENRGET_LUNN#3, FREE_LUN#4=:#5;7 &CONV CUTMETHODNOSORTF1F2CUTMETHODNOSORTDIFFXSORT NPTS INDEXI NPTS2 STEP XX J Z2Z3H FF1FF2FF3NINT1INT2AARES ##7 , ON_ERROR#; ,  N_ELEMENTS=,  N_ELEMENTS"#<55 Error from CONV: mismatch of array dimensions. Abort, PRINT#==:#?= ==, ABS #@ 8ѷ"#A55 Error from CONV: mismatch of abscissas arrays. Abort, PRINT#B=:#E,  KEYWORD_SET0"#F=, SORT #G== #H== #I=, SORT #J== #K== #P=,  N_ELEMENTS #Q=/ #R  =% = ="  '#T=" == ! #U= #V= #\==== #] , FLTARR #^=== #_  #`  =% #a =   = #b = ' #d == #h , FLTARR #i=== #j , FLTARR #k=== #l , FLTARR #v,  KEYWORD_SET0"#z=/, FFT #{=/, FFT #| #}=, FFT #~, FLOAT  !#=  =%# = #=  %#   #    ''#=, TOTAL #=, TOTAL #, TOTAL  # #= , FLTARR #=  #= #,  KEYWORD_SET"= #:#;7 1CONV2NORMALPLOTA1A2A_INTERP NORMALPLOTXMIN XMAXSTEPNPOINTSXNEW YNEW B1 B2 NPAR RESUL##1 , ON_ERROR#5 , MIN=, MIN+, MIN #6=, MAX=, MAX+, MAX #;= ======+, MIN, ABS #=, LONG #?, FINDGEN, FLOAT #@  ? #D=, FLTARR #E=, FLTARR #F=  #G=  #H==== ,INTERPOL #I==== ,INTERPOL #M, N_PARAMS #N ="#O , FLTARR #P=  #Q==  #R==  #U,  KEYWORD_SET"#V interpolated data, PLOTFILETITLE#W =,PLOTFILEKIND#\  ,CONV #a,  KEYWORD_SET"#e=== = , INT_TABULATED #h:#i;7 < CONV_GAUSS F1SIGMA TDOUBLEX Y NNSTEP SORTXSORT STEPLAST YCONV I GAUSS F2##- , ON_ERROR#/, SIZE #0,  N_ELEMENTS= "  !  #1", DOUBLE !, FLOAT #3=, REFORM #4=, REFORM #6,  N_ELEMENTS #7== #8 "= != #9" #:CONV_GAUSS: Sorting data..., PRINT#;, SORT #<  #=  #?, ABS, ABS" 33CONV_GAUSS: Warning: sigma smaller than step size. , PRINT#A== #B  3ֿ" #C88CONV_GAUSS: Error: X sampling must be regular. Returning, PRINT#D=:#F" , DBLARR ! , FLTARR #G, PRINT#I= =%#J = @=/, EXP=!PI, SQRT #K  , INT_TABULATED '#N #O= #P=  #R:#T;7 ?x COUNTWORDS WTEXTEDIT WORDCOUNTCURSOROFFSETPOS##  #  , GETNEXTWORDSKIP_NUMBERS##=,  WIDGET_INFOTEXT_SELECT #&=="#(= #*=, GETNEXTWORDSKIP_NUMBERS#-=,  WIDGET_INFOTEXT_SELECT !#1:#3;7 V CURVEFIT1 h% %CHI2 FUNCTION_NAMEITERITMAX NODERIVATIVETOLXYWA!SIGMAACHI2  FUNCTION_NAMEITER ITMAX NODERIVATIVE TOL TYPE DOUBLE RES EPSNTERMSNFREE FLAMBDADIAG PDERYFITCOMMANDTMP ITMPTERMPINCYFIT1A_OLD$BETA"ALPHA#CHISQ1%ALL_DONE C!ARRAY"B#CHISQR$## , ON_ERROR#  #,  N_ELEMENTS "FUNCT # ,  N_ELEMENTS=" :o #,  N_ELEMENTS="  #, SIZE #=,TYPE=,TYPE #  #  =" , FLOAT # ,  KEYWORD_SET" # ,  NR_MACHARDOUBLE # 18EPS5, SQRT #,  N_ELEMENTS #,  N_ELEMENTS,  N_ELEMENTS #=" ""Curvefit - not enough data points., MESSAGE#= #, LINDGEN= # " ,  N_ELEMENTS, FLTARR ! ,  N_ELEMENTS, DBLARR #=%# ,  KEYWORD_SET"#= #yfit =  #A #0"#=Error executing function, WIDGET_MESSAGEERROR #==%# #, ABS # " # #= # # #yfit1 =  #A # # #0"#=Error executing function, WIDGET_MESSAGEERROR #= '!#,#> #,  TRANSPOSE, FLTARR=>> #=, TOTAL #, ABS, TOTAL K ##>, SQRT! #!" #" ?" #", INVERT" #"!,  TRANSPOSE># #= # ## #yfit =  #A ## # #0"#=Error executing function, WIDGET_MESSAGEERROR #=, TOTAL$ # "!# A  #$"#  B # # # $ "!'#Failed to converge=, MESSAGEINFORMATIONAL#", SQRT #$ #:#;7 d CW_COLOR_INDEX1t  COLOR_VALUES EVENT_FUNCFRAMELABELNCOLORS START_COLORUVALUEXSIZEYSIZEPARENTCVEFUNFRAMELABELNCOLORS START_COLOR UVALUE XSIZE YSIZE BASE STATE CHILD #o#q,  N_ELEMENTS "= #r,  N_ELEMENTS="= #s,  N_ELEMENTS="  #t ,  N_ELEMENTS="   #u,  N_ELEMENTS="#v,  N_ELEMENTS #w= #y,  N_ELEMENTS="2!D8N_COLORS5 #z,  N_ELEMENTS="= #{,  N_ELEMENTS="  #} CW_COLOR_INDEXECW_COLOR_INDEXGCW_COLOR_INDEXS,B  WIDGET_BASEEVENT_FUNCFRAMEFUNC_GET_VALUEPRO_SET_VALUEROWUVALUE #,  N_ELEMENTS="  # = = =, FLOAT= , LONG= < CW_C_INDEX_STATETXT_IDRECT_IDPWIN_IDINITEDEFUNSCALEVALUE START_COLOREXTRA # ,  WIDGET_LABELVALUE # 18TXT_ID = (0),  WIDGET_TEXTVALUEXSIZEYSIZE6#,  N_ELEMENTS=" # 18TXT_ID5, WIDGET_CONTROLSET_UVALUE# 18EXTRA 18TXT_ID56# 18RECT_ID =  = ,(  WIDGET_DRAWFRAMERETAINUVALUEXSIZEYSIZEP6# 18PWIN_ID =  = =,(  WIDGET_DRAWBUTTONFRAMERETAINXSIZEYSIZE86#  , WIDGET_CONTROLSET_UVALUE# :#;7 iHCW_COLOR_INDEXEEVBASESTATECCVRET#<#=18PRESS5 "=:#>18HANDLER5 #? ,  WIDGET_INFOCHILD, WIDGET_CONTROLGET_UVALUE#@18 START_COLOR518X518SCALE5, LONG #A18EXTRA5 "#B18EXTRA5, WIDGET_CONTROLGET_UVALUE#C #E,CW_COLOR_INDEXS#F18TOP5=<CW_COLOR_INDEXIDTOPHANDLERVALUE #G18EFUN5":!18EFUN5,:#I;7 jCW_COLOR_INDEXGIDSTATE#L#M ,  WIDGET_INFOCHILD, WIDGET_CONTROLGET_UVALUE#N18VALUE5:#O;7 ux CW_DROPLIST  FRAMETITLEUVALUEVALUEXSIZEPARENT FRAME INIT_LABELUVAL INIT_VALUE XSIZECW_TLB WSTATELABEL LIST DROP STATE #w#y , ON_ERROR#z, N_PARAMS="Must have one parameter, MESSAGE#{,  N_ELEMENTS "= #|,  N_ELEMENTS="0Sel aSel b+ #},  N_ELEMENTS="= #=cw_droplist_Eventcw_droplist_Setcw_droplist_Get,B  WIDGET_BASEEVENT_FUNCFRAMEFUNC_GET_VALUEPRO_SET_VALUEROWUVALUE #,  WIDGET_BASE #,  N_ELEMENTS=",  WIDGET_LABELVALUE !  #=,  N_ELEMENTS= # , HELP# , WIDGET_DROPLISTVALUE #,  KEYWORD_SET"  , WIDGET_CONTROLXSIZE# =, FIX, WIDGET_CONTROLSET_DROPLIST_SELECT# <LABELIDDROPIDVALUE # =, WIDGET_CONTROLNO_COPYSET_UVALUE#=, WIDGET_CONTROLSET_VALUEE#:#;7 zCW_DROPLIST_EVENTTEVENTCHILDSTATEUVALUE#W#Y18HANDLER5 ,  WIDGET_INFOCHILD #Z=, WIDGET_CONTROLGET_UVALUENO_COPY#\=, HELPSTR_#`1 9VALUE18INDEX5=,  STRCOMPRESSREM6#c=, WIDGET_CONTROLNO_COPYSET_UVALUE#g18ID5, WIDGET_CONTROLGET_UVALUE#h,  N_ELEMENTS="= #i18HANDLER518TOP5 <IDTOPHANDLERVALUE:#k;7 }tCW_DROPLIST_GET,IDCHILDSTATEVALUE#J#K ,  WIDGET_INFOCHILD #L=, WIDGET_CONTROLGET_UVALUENO_COPY#N1 9VALUE5 #Q=, WIDGET_CONTROLNO_COPYSET_UVALUE#R:#S;7 ,DEFAULT\  DTYPEHIGHLOWSTRICTXYDEFTHITLOT STRITXTYPYTYPATYPRES ##/ , ON_ERROR#0,TYPE #1,TYPE #3 ,  KEYWORD_SET0" !=" !Insufficient data!, MESSAGE#6" ! #8,  KEYWORD_SET"#9,  N_ELEMENTS=" #:,  N_ELEMENTS=" #= "  :!  ,CAST:#>;7 E2KE0INSETE0TMPXOUTSET##F , ON_ERROR#K,  KEYWORD_SET0"  #L  #M== , ABS, SQRT ?' #O #P= #R:#S;7 FILEPATH1FILELISTIFLG SEPARATORIAA##2!D8NAME5WIN"#!PATH;,STRPARSE #\ !#!PATH:,STRPARSE #./+ #/ # ,  N_ELEMENTS %#, FINDFILE #=":'#:#;7  FILEPOSITION(FILEKEYUNITCOMMANDILINEIRESULTBUFFER ##( , ON_ERROR#), CHECKFILE "#*FILEPOS: file  not found. Returning. , PRINT#+=/:#-=, OPENRGET_LUN#. #/  #0, EOF0"#1, READF#2= #3 ,  N_ELEMENTS=%#4, STRPOS #5=/"#6,  KEYWORD_SET0" !+ '!#;, FREE_LUN#<,  KEYWORD_SET0" =/:! :#=;7 D FINDDELIMITERd   END_OF_LINE START_OF_LINETEXT DELIMITERSCOLUMN ROW DELIMITERINDEXENDOFLINEMARKS  REGIONMARKS ENDOFLINE STARTOFLINE LASTCOLUMN DELIMITERGROUP CURRENTCOLUMN #-#/,  KEYWORD_SET =" :#2,  N_ELEMENTS=" #5,  N_ELEMENTS=" #8+ #:="#<, STRLEN= #? "#A=, STRMID, STRPOS #C=/, WHERE=  #E ) #I= #J  , STRMID  =, STRMID, STRPOS #L=/" = !  = ! =) #S = ! =) #V=:! .#Z= ! *!#c,  KEYWORD_SET="=:#g= #h= #k, SIZE= =, SIZE= "=:#n,  KEYWORD_SET="=:!#t=:#v;7 x FONT_NAMES  RETURN_LISTNAME RETURN_LISTLISTNAME1FONT!##% , ON_ERROR#',  KEYWORD_SET"#(2!D8NAME5X" Times Small Times Medium Times LargeHelvetica SmallHelvetica MediumHelvetica LargeNew Century SmallNew Century MediumNew Century Large Lucida Small Lucida Medium Lucida Large Courier SmallCourier Medium Courier Large+ ! Times Small Times Medium Times Large Century SmallCentury Medium Century Large Verdana SmallVerdana Medium Verdana Large Courier SmallCourier Medium Courier Large+  #2:#6,  STRLOWCASE ,  STRCOMPRESSREMX #72!D8NAME5X"#8 timessmall)#:::-adobe-times-medium-r-normal--11-80-100-100-p-54-iso8859-1 ! timesmedium)#<;;-adobe-times-medium-r-normal--14-100-100-100-p-74-iso8859-1 ! timeslarge)#>;;-adobe-times-medium-r-normal--20-140-100-100-p-96-iso8859-1 !helveticasmall)#@>>-adobe-helvetica-medium-r-normal--11-80-100-100-p-56-iso8859-1 !helveticamedium)#B??-adobe-helvetica-medium-r-normal--14-100-100-100-p-76-iso8859-1 !helveticalarge) #D@@-adobe-helvetica-medium-r-normal--20-140-100-100-p-100-iso8859-1 !newcenturysmall) #FKK-adobe-new century schoolbook-medium-r-normal--11-80-100-100-p-60-iso8859-1 !newcenturymedium) #HLL-adobe-new century schoolbook-medium-r-normal--14-100-100-100-p-82-iso8859-1 !newcenturylarge) #JMM-adobe-new century schoolbook-medium-r-normal--25-180-100-100-p-136-iso8859-1 ! lucidasmall) #L==-b&h-lucida-medium-r-normal-sans-11-80-100-100-p-63-iso8859-1 ! lucidamedium)#N>>-b&h-lucida-medium-r-normal-sans-14-100-100-100-p-80-iso8859-1 ! lucidalarge)#P??-b&h-lucida-medium-r-normal-sans-20-140-100-100-p-114-iso8859-1 ! couriersmall)#R<<-adobe-courier-medium-r-normal--11-80-100-100-m-60-iso8859-1 ! couriermedium)#T<<-adobe-courier-medium-r-normal--11-80-100-100-m-60-iso8859-1 ! courierlarge)#V>>-adobe-courier-medium-r-normal--25-180-100-100-m-150-iso8859-1 !.#W !*!!#Z timessmall)#[times*12 !! timesmedium)#\times*14 !! timeslarge)#]times*18 !! centurysmall)#^CenturySchoolbook*12 !! centurymedium)#_CenturySchoolbook*14 !! centurylarge)#`CenturySchoolbook*18 !! verdanasmall)#a verdana*12 !! verdanamedium)#b verdana*14 !! verdanalarge)#c verdana*18 !! couriersmall)#d couriernew*12 !! couriermedium)#e couriernew*14 !! courierlarge) #f couriernew*18 !!.#g !!*#j:#k;7 l GAUSS_FITTX YACMNYF CYDYMAX XMAX IMAX YMIN XMIN IMIN I0 DYDELISIGMAA# #1 , ON_ERROR#2  ?,  CHECK_MATH #3,  N_ELEMENTS #4 ,POLY_FIT #5 #6, MAX #6!C #6!C #7, MIN #7!C #7!C #9, ABS , ABS"  !  #:== #; #<=, EXP #=  #>==, ABS, ABS, ABS, ABS"= !#B, ABS=+ #C= !C#E=,  REPLICATEgaussian,CURVEFITFUNCTION_NAME:#G;7 GETE0METHODSET METHOD NPTSTMPDER YMAXI XMAXE0SET_NORM MIN1 MAX1 DER_NORM TMP1 ##D , ON_ERROR#G ,  N_ELEMENTS #H ,DERIV #I #J= #N,  KEYWORD_SET0"#O / #P==%#Q="#R= #S= '#V !#[ #\=, MIN #\=, MAX #]==    > #^ ?/ ?+, PLOTSETYRANGE#` #a=, MIN #a=, MAX #b==    = #c =,PLOTSETOVER#e<< Please, move the cursor until the selected value and click , PRINT#f , CURSOR#g #l:#m;7 GETFWHMPLOT REVERSE_PLOTSETPLOT REVERSE_PLOTZ1XHM NPTSXLEFT J I_FOUND XRIGHT M N XXL XXRFWHM ##) , ON_ERROR#-  #.  #0, MAX @ #1,  N_ELEMENTS #7  #8  #8= #9 =="#:="#; #<= #>= !#A,  N_ELEMENTS= #B= #B= #C =="#D="#E #F= #H= !#J= ,  N_ELEMENTS=" #KGETFWHM: Value not found, PRINT#L=:#P== #Q  #R   #T =  =  #U    #V   #Y , ABS #Z,  KEYWORD_SET"  ++=, OPLOTPSYM#],  KEYWORD_SET" + +=, OPLOTPSYM#b:#c;7 π GETINFOTEXT  HEIGHTWIDTHFILENAMEHEIGHT WIDTHUNITERROR BUTTONPUSHEDMAXLINESLINEINC INFOTEXT LINENUMBER LINEOFTEXT LINELENGTH LONGESTLENGTH #D#F , OPENRERRORGET_LUN#I "= !ERR_STRING Can not get information from ""+, WIDGET_MESSAGEERROR ! #O  #P  #Q, STRARR #R= #S #T= #U= #V, EOF0"#X , READF#Z  , STRLEN #\   #^ = #b "#c, STRARR+ #d !#i= == #k,  KEYWORD_SET=" = #m,  KEYWORD_SET="  #p, FREE_LUN#r:#u:#w;7 GETJUMP NOMOUSEEXPERNOMOUSE I_CHANGE XMINXMAX XMIN_GOOD XMAX_GOODGOOD TMP1 I_HOW TMP TMP2 ITMP ACTION ##F , ON_ERROR#M  #N,PLOTSET#O,GETE0 #P=, MAX #Q >L #R > #S+, CUTSETXRANGE#T , TOTAL=,  N_ELEMENTS=, MIN #U==  #V=,PLOTSETOVER#W====, MIN, OPLOT#X,  KEYWORD_SET"#Y"" The selected value for Jump is : , PRINT#Z)) Do you want to change this value ? [y/n], GETYESORNOT !#^Store this value (=,  STRCOMPRESSREM) and continueChange Jump value+,WMENU2 #h"#i#j,PLOTSET#k,  KEYWORD_SET"#l Get the jump by: , PRINT#m&& [0] Selecting a point with the mouse , PRINT#n [1] Entering the value , PRINT#o , READ!#sSelecting jump with the mouse Entering the value+,WMENU2 #v =" #w,  KEYWORD_SET" #yDDPlease, move the cursor until the selected value for JUMP and click , PRINT#z  , CURSOR#{ +==,PLOTSETOVERPSYM#~==Please, move the cursor until the selected baseline and click, PRINT#  = , CURSOR#&& The selected value for baseline is :  , PRINT#  +==,PLOTSETOVERPSYM! #=Click two points:The upper and the  baseline for jump+, WIDGET_MESSAGEINFO # = , CURSOR# +==,PLOTSETOVERPSYM#  = , CURSOR#  +==,PLOTSETOVERPSYM#  #="" The selected value for Jump is : , ABS,  STRCOMPRESS, WIDGET_MESSAGEINFO !#,  KEYWORD_SET"#"" Give me the new value for jump ? , PRINT#, READ# B@/+= ++=,PLOTSETOVER!# ?<N # = Jump value: Input Jump ,"XSCRMENUACTIONNOTYPETITLESWTITLE# DO" 18N5 != #,  KEYWORD_SET")) Do you want to change this value ? [y/n], GETYESORNOT != #="#, ABS:#;7 GETSYSPRINTERDVERBOSEVERBOSE PRINTERNAME##* , ON_ERROR#,2!VERSION8OS5hp-ux)#-LPDEST, GETENV !sunos)#.PRINTER, GETENV !.#/PRINTER, GETENV !*#1:#2;7 HISTOGRAMW$ BINSIZEINPUTMAXMINNBINSOMAXOMINXVALARR WEI  P_BINSIZEHY P_MAXP_MINNBINSOMAX OMINXVAL BINSIZE ICUT NMAX NMIN FLGNELEM HWARRIIHW##N , ON_ERROR#O,  KEYWORD_SET" !  #P, N_PARAMS=" ?,  N_ELEMENTS,  REPLICATE #S  #T,  N_ELEMENTS="#U, FLOAT #V= !#W, MAX #X,  N_ELEMENTS="#Y, FLOAT #Z= !#[, MIN #\ " #]  , WHERE #^ #_ #c,  N_ELEMENTS #f,  KEYWORD_SET" #g   ! #i   , ROUND #o,  N_ELEMENTS=" , FLTARR #p,  N_ELEMENTS=,  N_ELEMENTS=" , MAXMIN #r ,  N_ELEMENTS=" , FINDGEN=   #u  , LONG= #w =%#x #y '#|:#};7  HISTOGRAMW2 BINSIZEXBINSIZEYINPUTNBINSXNBINSYXRANGEXVALYRANGEYVALARR1ARR2WEI  P_BINSIZEX P_BINSIZEY HYNBINSXNBINSYP_XRANGE XVAL P_YRANGE YVAL XRANGE YRANGE FLGNELEMBINSIZEXBINSIZEYHWX_ARRHWY_ARRIIHWXHWY##8 , ON_ERROR#:, N_PARAMS=" ?,  N_ELEMENTS,  REPLICATE #;,  N_ELEMENTS,  N_ELEMENTS,  N_ELEMENTS,  N_ELEMENTS"#=!! array dimensions not compatible., PRINT#> :#C,  KEYWORD_SET" !, MIN, MAX+ #E ,  KEYWORD_SET"  ! , MIN, MAX+ #I, HELP#J, HELP#R,  KEYWORD_SET ,  KEYWORD_SET" #S=   = =  , WHERE #U,  N_ELEMENTS= " #V #W #X #[,  N_ELEMENTS #\, N_PARAMS=" =,  REPLICATE #`,  KEYWORD_SET"  !=  #a,  KEYWORD_SET" !=  #f,  KEYWORD_SET"#g=  =  !#i=  = , ROUND #l,  KEYWORD_SET"#m=  =  !#o=  = , ROUND #rHISTOGRAMW2: bins in x and y: , PRINT#s""HISTOGRAMW2: bin size in x and y: , PRINT#w,  N_ELEMENTS=", FLTARR #x= , FIX=  #y= , FIX=  #z = %#{ #| #} '# ,  N_ELEMENTS="= , FINDGEN= =  =  # ,  N_ELEMENTS="= , FINDGEN= =  =  #:#;7  HISTOGRAMW3 BINSIZEXBINSIZEYBINSIZEZXRANGEYRANGEZRANGEARR1ARR2ARR3WEI  P_BINSIZEX P_BINSIZEY P_BINSIZEZP_XRANGE P_YRANGE P_ZRANGE XRANGE YRANGE ZRANGE BINSIZEX BINSIZEYBINSIZEZNBINSXNBINSYNBINSZHYNELEMIIHWXHWYHWZ##* , ON_ERROR#,, N_PARAMS "#.EEHISTPGRAMW3: Usage Result = histogramw3(arr1,arr2,arr3,[w,],keywords), PRINT#/ :#2, N_PARAMS="  ? #4,  N_ELEMENTS,  N_ELEMENTS,  N_ELEMENTS,  N_ELEMENTS,  N_ELEMENTS,  N_ELEMENTS"#7!! array dimensions not compatible., PRINT#8=:#=,  KEYWORD_SET" !, MIN, MAX+ #?,  KEYWORD_SET" ! , MIN, MAX+ #A ,  KEYWORD_SET"   ! , MIN, MAX+ #F,  KEYWORD_SET"  !  #G,  KEYWORD_SET" !=  #H,  KEYWORD_SET" !=  #I ?r=  =  , FIX #J==  = , FIX #K==  = , FIX #L!!HISTOGRAMW3: bins in X, Y and Z: , PRINT#P, FLTARR #Q,  N_ELEMENTS #R = %#S= =  = =  = =  "#V=  , FIX #W= , FIX #X= , FIX #Y"=  #Y="= #Z"=  #Z="= #["=  #[="= #\ '#_:#`;7 !INFL0METHODF1F2 METHODDIFFNPTSNPTS2STEPXX IZ2 Z3 H FF1 FF2 FF3 JINT1INT2AARES ##6 , ON_ERROR#: ,  N_ELEMENTS=,  N_ELEMENTS"#;55 Error from CONV: mismatch of array dimensions. Abort, PRINT#<=:#>= ==, ABS #? 8ѷ"#@55 Error from CONV: mismatch of abscissas arrays. Abort, PRINT#A=:#F=,  N_ELEMENTS #G= #H==== #I, FLTARR #J=== #K==%== '#M== #P, FLTARR #Q, FLTARR #T== #U=== #W, FLTARR #Z,  KEYWORD_SET0"#^ =/, FFT #_ =/, FFT #` , CONJ  #a=, FFT #b , FLOAT ! #g==% #h= #i=% #j    ' ' #q=, TOTAL #r=, TOTAL #s , TOTAL #t  #x=, FLTARR #y= #z=  #|:#~;7 ,\INFL2NORMALPLOTA1A2A_INTERP NORMALPLOTXMIN XMAXSTEPNPOINTSXNEW YNEW B1 B2 NPAR RESUL##- , ON_ERROR#1 , MIN=, MIN+, MIN #2=, MAX=, MAX+, MAX #7= ======+, MIN, ABS #9, LONG #;, FINDGEN, FLOAT #<  ? #@=, FLTARR #A=, FLTARR #B=  #C=  #D==== ,INTERPOL #E==== ,INTERPOL #I, N_PARAMS #J ="#K , FLTARR #L=  #M==  #N==  #Q,  KEYWORD_SET"#R interpolated data, PLOTFILETITLE#S =,PLOTFILEKIND#X  ,INFL #],  KEYWORD_SET"#a=== = , INT_TABULATED #d:#e;7 3INTEGSET  XRANGESETCDFXRANGENPTS DIFF VALTOTTOT_SET  TOT_SET_CUTNPTS2 I A ##B , ON_ERROR#F,  KEYWORD_SET0"#G=, FLTARR #H =, MIN #I =, MAX #N=,  N_ELEMENTS #O==/, SHIFT= #P ?==/, SHIFT= #Q #R=, FLTARR #S= #T== #Y, CUTSETXRANGE#]=,  N_ELEMENTS #^= , FLTARR #_== #`=  =%#a==  #b=  , TOTAL '#e= =:#f;7 5K2ELINSETTMPXNPTSOUTSET##E , ON_ERROR#G  #H,  N_ELEMENTS #O==  @s8 #Q #R= #T:#U;7 :TMAKENHELPXLOXHINHLPXST## , N_PARAMS ,  KEYWORD_SET"#!<< Make an array of N values, linear between two given limits., PRINT#" x = makex( first, last, num), PRINT##99 first, last = array start and end values. in, PRINT#$99 num = number of values from first to last. in, PRINT#%:: x = array of values. out, PRINT#& /:#)="+:#*=, FLOAT #+, FINDGEN:#-;7 DMAKE_STR,FILEHEADERTEXTFILEHEADER A N  TAG_DESCRIPTTAGNAMES TAGVALUESILIST NN OUT COMMAND ITMP ##= , ON_ERROR#>,  KEYWORD_SET"#?, READ_TEXTFILE #A,  KEYWORD_SET",  N_ELEMENTS  !#B #D,  N_ELEMENTS #E, STRARR #F, STRARR #G, STRARR #H =% #I| ,STRPARSE #J = =" #K=  #L=  #M ="=  ! =  '#Q= #Rout={ #S=" ==%  :, ' #U =:=} #V A #X==%#Yout.= #[ A #\ ="#]=Error executing:  , MESSAGEINFO#^=:' #a :#b;7 LMKPULL_GETLINE  UNITDATA IDXNLABELVALUERETNOT_EOF DELIMPOS #x# / # # " !, EOF0 #=/"#="# #= !#, READF# , STRTRIM #==, STRMID #) !#) !}) #= !.#= , STRMID #, STRPOS # =/" #Bad delimiter in line: =, MESSAGEINFORM!#= , STRMID # == , STRMID=, STRTRIM #{"# #= !#, STRLEN=" #= !*#=" !, EOF0 !#==/"#, FREE_LUN#= #:#;7 S POWELLFIT6ERROR STATSIGMA POWELLFITA ERROR STATSIGMAEQUATIONXY SIGMAXRANGECHI2FIT Y1DATA DATA2NTERMSNFREE #M#Py1 = A0 #Q"#R&&POWELLFIT: Error interpreting equation, PRINT#S :!#U,  KEYWORD_SET"#V, SQRT #W**POWELLFIT6: considering statistical error., PRINT#[ =+> #\=  #]==", CUTSETXRANGE! #_,  N_ELEMENTS #`=,  N_ELEMENTS #a="""POWELLFIT: Not enough data points., PRINT#b=, TOTAL:#d;7 ` READ_ASCIIBUFFERDOUBLE ERROR_STATUSHEADERNPOINTSSHOWSKIPFILNAMBUF DOUB ERRHEADNCRSHOSKIPBUFSIZNRTEM DTYP DATUN LINE NC I FINFBLINEDATLINE DATANR ##E  #F==+ #G ,DEFAULT C, ROUND   #H #I ,  KEYWORD_SET #J?#K  , OPENRGET_LUN#M #N #O= #P?#Q,  N_ELEMENTS "==%  , READF'#R = , EOF0" #S , FSTAT #T  , READF#U " #V =, STRTRIM, BYTE #W .+-0123456789 =, STRING,STRPARSE=" #X,  TEMPORARY + #Y,  KEYWORD_SET"  , PRINT! #Z=  , ,STRPARSE !#],  N_ELEMENTS=,  TRANSPOSE #_ ="#` 18CUR_PTR5,  POINT_LUN#a  ,  MAKE_ARRAYTYPE #b  ,  MAKE_ARRAYTYPE #c? #d= #f , EOF0"#g , READF#h #i= #j "#k  ,  MAKE_ARRAYTYPE+ #l  !#o== #p + !#q= #s , FREE_LUN#t:#w , FREE_LUN#y !ERR_STRING, PRINT#z!ERROR #{=:#};7 fT READ_TEXTFILE(BUFFERFILENAMEBUFFERUNITIAC ##. , ON_ERROR#0 , OPENRERRORGET_LUN#1,  KEYWORD_SET", LONG ! ' #2 "#3=Error reading file: , MESSAGEINFO#4 ! #6, STRARR #7  #8 #9, EOF0" #:, READF#<=" !,  TEMPORARY+ #== !#?==,  TEMPORARY #@, FREE_LUN#B:#C;7 jlSORPURGEhNETLENARRNLSORPDUMNDIFWDUM##' , ON_ERROR#),  N_ELEMENTS #* "Variable is not defined!, MESSAGE!=" + !#-, SORT #. #/=== =, WHERE #0="=+ !==+ #1= #4:#5;7 L SPEC_ACCESS# #COMPRESSFILENAMELISTMCDATANOREADNO_EMPTY READALWAYSSTRINGHANDLEFILECOMPRESS FILE0LISTMCANOREADNOEMPRALLSTR# ERROR_STATUS UNIT STATUS SCANCOUNTER SCANLISTLINENAME RANGELINECTN_COLMAX N_MOTLINESMAXN_MOTPERLINEMAX  MAXNUMBERSMEMORY_POINTER"SCAN_N AUXINDEXIFULLLISTTOTSIZE NCOLS!NGROUPS N!STR0"G#(#) , CATCH#* "#+ , CATCHCANCEL#, , ON_ERROR#- !ERR_STRING, __CLEANMSG, MESSAGE#1, N_PARAMS="#2Incorrect number of arguments., MESSAGE#5, N_PARAMS="#6,__ISASPECHANDLE0"#7Select a spec data file=,PICKFILEMUST_EXISTTITLE #8"No file selected., MESSAGE!#:18SPECFILE5 #> #@,  KEYWORD_SET" #A!.#I, FINDFILE= " File not found, MESSAGE#J =, OPENRGET_LUN#K , FSTAT #M,  KEYWORD_SET0,__ISASPECHANDLE" #N18SPECFILE518FILESIZE5 18SIZE5" #O!-#S= #Tno scans #V #W #X  #Y , LONARR #Z= #[= #\= #]= #` = = = = = /= = /= /= = = = <SCANSCAN_NSCAN_APNAME PREDATALINES DATALINES POSTDATALINESSCANPTLABELPTDATAPTN_COLN_CHAN N_DATAPOINTS A_DATAPOINTSHEADERPT HEADERLINES #s==/ #t , EOF0"(#u /,  POINT_LUN#v , __READLINE#w= #y==, STRMID#"##z="  #|==, STRMIDS)#~=/ #=, STRLEN=, STRMID  #, READS#==, STRMID ="#="# , __ADDSCAN#= #===+= #" #18SCAN_N6#18NAME=, STRTRIM6#18SCANPT6#18N_COL=/6#18 N_DATAPOINTS=6#18 A_DATAPOINTS=6#18DATAPT= 6#18LABELPT= /6!"N)#18N_COL=, STRLEN=, STRMID, FIX6#18N_COL5"18N_COL5 !"L)#18LABELPT6!"F)#="# , __ADDSCAN#= #18HEADERPT6#== !"E)#="# , __ADDSCAN#= #18HEADERPT6#== !"O)#="# , __ADDSCAN#= #18HEADERPT6#== #, __LINECUT #(2X,I), READSFORMAT#="= #===, __LINESPLIT,  N_ELEMENTS #" !"@)!#= , STRMIDCHANN" # -1(7X,I), READSFORMAT#18N_CHAN6!".!"*!'#"'#="$#18DATAPT6#= !%#="%#=== #== #= #="'#==, STRMID@A"&#18 A_DATAPOINTS18 A_DATAPOINTS5=6!'#18 N_DATAPOINTS18 N_DATAPOINTS5=6!#=")#= # , __ADDSCAN#=, INTARR #= =%+#38SCAN_N5 #= #38SCAN_AP6'*#==",#= #= # 18SIZE5 =/, STRARR= /= /=, INTARR, STRARR< SPECFILEFILESIZETOTALSCANCURRSCANLABELHEADERPTEPOCH NMOTORLINESMOTOR_NO MOTORNAMES #==,  __SPECLOADINDEX# , FREE_LUN#18TOTAL5="5#,  KEYWORD_SET,  KEYWORD_SET"0# 19SCAN8 A_DATAPOINTS5=19SCAN8 N_DATAPOINTS5=, WHERE # ==/"/19SCAN8SCAN_N5 !5# ,  KEYWORD_SET"2# 19SCAN8 A_DATAPOINTS5=, WHERE #==/"119SCAN8SCAN_N5 !5#,  KEYWORD_SET"4#19SCAN8 N_DATAPOINTS5=, WHERE #==/"319SCAN8SCAN_N5 !5#19SCAN8SCAN_N5 #,  N_ELEMENTS #="7# ,  KEYWORD_SET"6#:!7#=:#= # = #!,  KEYWORD_SET">#",  KEYWORD_SET0"8## #$ !=#&= #'==+ #(= =%<#)! #*!= ==":#+= =! !;#-!!++ #. = '9!?#3 #7 ,  KEYWORD_SET0"@#8:!G#: #;= =%F#<="B#=, STRING=, STRTRIM" !D#>=="C#?=, STRING=, STRTRIM" !D#A=, STRING=, STRTRIM-=, STRING=, STRTRIM" #E="E" !F , " 'A#G :#I;7  SPEC_COLUMNS\INDEXMCDATAHANDLESCAN_IDIDXMCDATA ERROR_STATUSERRMSG##, CATCH# "# , CATCHCANCEL# , ON_ERROR# !ERR_STRING, __CLEANMSG, MESSAGE#, N_PARAMS="Incorrect number of arguments., MESSAGE#, __SPECCHECK#, __SPECLOADINDEX#!ERR", MESSAGE#,  KEYWORD_SET"#118CURRSCAN59SCAN8N_CHAN5:!#118CURRSCAN59SCAN8N_COL5:#;7 Ǵ SPEC_DATA++ CALIBRATEDCHANNELSDOUBLEFLOATINDEXINTLABELSLONGMCDATANPOINTSOFFSETSTEPSTRINGHANDLESCAN_IDCOLUMNSCALIBCHANN'DTYPEFTYPEIDXITYPELABELS LTYPE MCDATA NP OFFSET" STEPSTYPE ERROR_STATUS#ERRMSGN%NPOINTSNCOLS INDEX AUX$IC)J DATADATALDATATYPEUNITLINE POINT!PT OK !FOUND"AUX0#NCHAN$CHMIN(%CHMAX&&CHREDUC'CALA*(CALB+)CALC*@## , CATCH#  "# , CATCHCANCEL# , ON_ERROR#  !ERR_STRING, __CLEANMSG, MESSAGE#, N_PARAMS=, N_PARAMS "Incorrect number of arguments., MESSAGE#, __SPECCHECK#, __SPECLOADINDEX#!ERR", MESSAGE# ,  KEYWORD_SET ,  KEYWORD_SET"No labels in multichannel data., MESSAGE# ,  KEYWORD_SET0"= #,  KEYWORD_SET0" = # ,  KEYWORD_SET0" = # , LONG #, LONG # , LONG # ="  OFFSET must be a positive value., MESSAGE# =" STEP must be >= 1., MESSAGE#!=" NPOINTS must be >= 0., MESSAGE## ,  KEYWORD_SET"#$118CURRSCAN59SCAN8N_CHAN5 #%118CURRSCAN59SCAN8 A_DATAPOINTS5 !#'118CURRSCAN59SCAN8N_COL5 #(118CURRSCAN59SCAN8 N_DATAPOINTS5 #*="No data points., MESSAGE#+ "Offset too big., MESSAGE#, =, LONG= #- = "  #/, N_PARAMS="#0 #1, INDGEN !!#3, SIZE #4=="Too many dimensions., MESSAGE#5== #6, INTARR #7== #8= "#9, FIX ! #: "#;==%#<= #=?#>, FIX #??#@="#A ,  KEYWORD_SET"#B**Not labels allowed with multichannel data., MESSAGE#D=%#E1=9LABEL5"#F #G!'#K '! #NBad data type., MESSAGE#P/= #Q==/ #T=, WHERE #U==/""#VWrong column specification [=, STRING=, STRTRIM]., MESSAGE#Z,  KEYWORD_SET"##[, STRARR #\, STRARR #]= !%#^ ,  KEYWORD_SET,  KEYWORD_SET0,  KEYWORD_SET0"$#`, LONARR #a, LONARR #b= !%#d, DBLARR #e, DBLARR #f= #i18SPECFILE5=, OPENRGET_LUN#j118CURRSCAN59SCAN8DATAPT5,  POINT_LUN#k #l / #m  #n=&118CURRSCAN59SCAN8 DATALINES5=%1#o "(!2#p, __READLINE#q==! #r=" #s==, STRMID))!.#)*!.@),#y ,  KEYWORD_SET==, STRMIDA"+#z=" #{!"+#|, __LINECUT# #},__READS!..# ,  KEYWORD_SET0"-#=" #!"-#,__READS!.*#""0#!"/#  # = #= ''# ,  KEYWORD_SET";#=$ # % #=3& #=' #=3( # ?) #=3* #118CURRSCAN59SCAN8SCANPT5,  POINT_LUN#=118CURRSCAN59SCAN8 PREDATALINES5%8#, __READLINE#==, STRMID#@CHANN"7#=, STRLEN=, STRMID 0 0 0 0 #$%&', READS#'="5=' #%&$="6#%$='& !8#==, STRMID#@CALIB"8#=, STRLEN=, STRMID 0 0 0 #()*, READS'4#$="9#%$, FINDGEN&%$= !:#% #()* #, FREE_LUN# ,  KEYWORD_SET0"<#18LABEL5+ # #,  KEYWORD_SET"=:#,  KEYWORD_SET">, FLOAT:#,  KEYWORD_SET"?, FIX:# ,  KEYWORD_SET"@, LONG:#, REFORM:#;7 X SPEC_HEADERSALLINDEXHANDLESCAN_IDHEADERS ALL IDX ERROR_STATUSERRMSGNLHAUXNHEADERS _HEADERS I HEADLEN NL0 NL1NLTUNIT LINE CTJRESULT# # , CATCH# "# , CATCHCANCEL# , ON_ERROR# !ERR_STRING, __CLEANMSG, MESSAGE#, N_PARAMS="Incorrect number of arguments., MESSAGE#, N_PARAMS="# #, __SPECCHECK#, __SPECLOADINDEX#!ERR", MESSAGE#,  KEYWORD_SET"#, __HEADERLOAD#118CURRSCAN59SCAN8 HEADERLINES5 ! # = ##, SIZE #$== ==" #%--Argument is not a valid header specification., MESSAGE#'== #( , STRARR #*=  =%#+ ==, STRMID#" #, #  ! #.   ' #1 , STRLEN #3118CURRSCAN59SCAN8 PREDATALINES5 #4 118CURRSCAN59SCAN8 DATALINES5 #5118CURRSCAN59SCAN8 POSTDATALINES5 #718SPECFILE5=, OPENRGET_LUN#8="#9118CURRSCAN59SCAN8HEADERPT5,  POINT_LUN#; #<= #== %#> ="#?118CURRSCAN59SCAN8SCANPT5,  POINT_LUN#A, __READLINE#B   ,  KEYWORD_SET"#C==, STRMID#"#D= =%#E= , STRMID "#F="#G !#I+ #K= #L!''#S, FREE_LUN#U="#V:!#X:#Z;7  SPEC_LABELSdINDEXHANDLESCAN_IDIDX ERROR_STATUSERRMSGN##, CATCH# "# , CATCHCANCEL# , ON_ERROR# !ERR_STRING, __CLEANMSG, MESSAGE#, N_PARAMS="Incorrect number of arguments., MESSAGE#, __SPECCHECK#, __SPECLOADINDEX#!ERR", MESSAGE#118CURRSCAN59SCAN8N_COL5 #="1==9LABEL5:!:#;7 SPEC_MOTORSp  INDEXNOERRORHANDLE SCAN_ID MOTORLISTBADVALUEIDXNOERROR ERROR_STATUSERRMSGAUXLIST RETURNBADVALUE HEADERSP MOTORLINES ROWS IAUXLINEMOTLINEMOTLINELIST MOTLIST COLS ALLMOTPOS  CORRUPTED MOTORNAMES JKPOS MOTFOUNDPXYMOTORPOS.##, CATCH# "# , CATCHCANCEL# , ON_ERROR# !ERR_STRING, __CLEANMSG, MESSAGE#, N_PARAMS=, N_PARAMS "Incorrect number of arguments., MESSAGE#, __SPECCHECK#, __SPECLOADINDEX#!ERR", MESSAGE#, __HEADERLOAD#, N_PARAMS " #, SIZE #== "#=, STRTRIM ! #((Argument is not a valid motor name list., MESSAGE#, N_PARAMS=" #= # `x ! #= # current#P, SPEC_HEADERS #  ,  N_ELEMENTS #  =" #= !#= =%#  #, __LINECUT # #(2X,I), READSFORMAT#===, __LINESPLIT #="# #,  N_ELEMENTS !#+ #,  N_ELEMENTS+ ' #, MAX= # , INTARR #  , MAX, FLTARR #"= =%## #$ #% ===, __LINESPLIT #&====, FLOAT '#*18 NMOTORLINES5 "#+= !#-= #.= =%#/19MOTOR_NO5"#0= '#5,  KEYWORD_SET0"#6File headers corrupted, MESSAGE#9, N_PARAMS="!#: #;0" #<=18 NMOTORLINES5=%#==19MOTOR_NO5=%#>="#?19 MOTORNAMES5 !#A19 MOTORNAMES5+ ''#F:!.#H= ,  N_ELEMENTS=%-#I #J= #K= =%&#L==%%#M0"%#N19 MOTORNAMES5 "%#O #P= #Q!)'$'##V0")#W ,, STRPOS #X=")#Y?'#Z =, STRMID, FIX #[ = , STRLEN=, STRMID, FIX= #\= "'#]="'#^ #_= #b?(#f ,  KEYWORD_SET",#g="*#h !+#j+ !-#mMotor "  " not found., MESSAGE'"#p:#s;7 SPEC_NAMEINDEXHANDLESCAN_IDIDX ERROR_STATUSERRMSG##, CATCH# "# , CATCHCANCEL# , ON_ERROR# !ERR_STRING, __CLEANMSG, MESSAGE#, N_PARAMS="Incorrect number of arguments., MESSAGE#, __SPECCHECK#, __SPECLOADINDEX#!ERR", MESSAGE#118CURRSCAN59SCAN8NAME5:#;7  SPEC_POINTSpINDEXMCDATAHANDLESCAN_IDIDXMCDATA ERROR_STATUSERRMSGNPOINTS##, CATCH# "# , CATCHCANCEL# , ON_ERROR# !ERR_STRING, __CLEANMSG, MESSAGE#, N_PARAMS="Incorrect number of arguments., MESSAGE#, __SPECCHECK#, __SPECLOADINDEX#!ERR", MESSAGE#,  KEYWORD_SET"#118CURRSCAN59SCAN8 A_DATAPOINTS5 !#118CURRSCAN59SCAN8 N_DATAPOINTS5 #:#;7 @ SPEC_SAVE t  COLUMNSCOMMENTSLABELSNAME NO_CONFIRMNO_ERROR OVERWRITEHANDLEDATAFILECOLUMNSCOMMLABELSNAMENO_CONF NOERROR OVERWRITE ERROR_STATUS AUX TOTCOL NCOL NLAB EXTRALBLUNITERR STATUSSCANTMP #C#D , CATCH#E "#F , CATCHCANCEL#G , ON_ERROR#H,  KEYWORD_SET"=/:#I !ERR_STRING, __CLEANMSG, MESSAGE#L, SIZE #M= ="#NData is not a 2D array., MESSAGE#P=  #R,  N_ELEMENTS=" , INDGEN #S,  N_ELEMENTS #T, MIN=, MAX "#UColumn values are out of range., MESSAGE#X,  N_ELEMENTS #Y " #ZColumn , INDGEN=, STRTRIM =  #[=" #\ ! #^+ #a= = #c,  KEYWORD_SET0"  #e,  KEYWORD_SET0" #f,__ISASPECHANDLE" #g18SPECFILE5 ! #j=,PICKFILEWRITE #k" #l=:#s==, OPENWAPPENDERRORGET_LUN#t"#u Cannot open "" for writting., MESSAGE#w, FSTAT #x18SIZE5="#y, SPEC_ACCESS="#z, CLOSE#{Exists and is not a SPEC file, MESSAGE!#}last, SPEC_SCAN= !#= # ,  KEYWORD_SET"#,  KEYWORD_SET0="#File exists, overwrite data ?= Writting data=, WIDGET_MESSAGEDEFAULT_NOQUESTIONTITLE #No"#, CLOSE#=:#, CLOSE#=, OPENWGET_LUN#= !#,  KEYWORD_SET0="#File exists, append data ?= Writting data, WIDGET_MESSAGEQUESTIONTITLE #No"#, CLOSE#=:#="##F , PRINTF##E=, SYSTIME, LONG,  STRCOMPRESS, PRINTF##D =, SYSTIME, PRINTF#, PRINTF##S,  STRCOMPRESS , PRINTF##D =, SYSTIME, PRINTF#,  KEYWORD_SET"#C ,  TRANSPOSE, PRINTF# ("#N ", I2) , PRINTFFORMAT#("#L", , STRING (" ",A)), PRINTFFORMAT#( , STRING (G0.6," ")), PRINTFFORMAT#, FREE_LUN#:#;7 / SPEC_SCAN    INDEXMCDATANO_EMPTYNO_RANGE OCCURRENCE RETURN_INDEXSTRINGHANDLE SCAN_LIST ERRMSG IDXMCA NOEMPNO_RANGEOCCURRRINDEXSTR ERROR_STATUS AUX NELEM ISSTRING I INDEXLIST _SCAN_LISTPNGROUPSNEXTCHARSCAN0SCAN1 FIRSTSCANDELTAJDPOINTSRESULT *## , CATCH# "# , CATCHCANCEL# , ON_ERROR# !ERR_STRING, __CLEANMSG, MESSAGE#, N_PARAMS=, N_PARAMS "#Incorrect number of arguments., MESSAGE# # , __SPECCHECK#", SIZE ##,  N_ELEMENTS #$= =   #%,  KEYWORD_SET"#& ="=/:#' "#(=,, STRPOS=/=-, STRPOS=/"=/:#- 0" #.= =% #/, __SPECLOADINDEX#0!ERR" =/:#1=" #218CURRSCAN5 ! #418CURRSCAN5+ '!"#8= #9= =%, '#:=,  STRCOMPRESSREMOVE_ALL #;,, STRPOS #<="#= , STRPUT#>,, STRPOS !#@,  STRCOMPRESS===, __LINESPLIT #A,  N_ELEMENTS #B=="=/:#C==%!#D-, STRPOS #E=,  KEYWORD_SET"#F==, STRMID #G-+"#H-=, STRPOS #K="#L=, STRMID #M"FIRST #N=, STRLEN=, STRMID #O"LAST !#Q #R #T, __SPECLOADINDEX#U!ERR"=/:#V18CURRSCAN5 #W="#X !#Z+ #\"!#], __SPECLOADINDEX#^!ERR"=/:#_18CURRSCAN5"= !=/ #`18CURRSCAN5& #a+ ('#g,  KEYWORD_SET"##h19SCAN8 A_DATAPOINTS5 !%#i,  KEYWORD_SET"$#j19SCAN8 N_DATAPOINTS5 !%#k!'#l=, WHERE #m= =/"&=/:#n  #q,  KEYWORD_SET"(#r= !*#s,  KEYWORD_SET")#t19SCAN8SCAN_N519SCAN8SCAN_AP5 B !*#w19SCAN8SCAN_N5 #z:#{;7 2t STRACCUMULATElLINE SEPARATORNOUTI##$ , ON_ERROR#%,  N_ELEMENTS " #&,  N_ELEMENTS #'= #( =% '#):#*;7 ESTREP $ HELPSCMDIP SS IFLGHLPNPBS BSS JFLG T NSS ND #/#1 , N_PARAMS ,  KEYWORD_SET"#2== Edit a string by position. Precede, Follow, Replace, Delete., PRINT#3** newstring = strep(string,cmd,p,ss,[iflg]), PRINT#4<< string = string to edit. in, PRINT#5<< cmd = edit command: in, PRINT#600 'P' = precede position p with substring ss., PRINT#7// 'F' = follow position p with substring ss., PRINT#8.. 'R' = replace text starting at position p, PRINT#9'' with text from substring ss., PRINT#:** 'D' = delete N characters starting at, PRINT#;00 position p. The calling sequence for, PRINT#<.. this command is slightly different:, PRINT#=.. IFLG = STREP(string,'D',p,n,[iflg]), PRINT#>44 Where n = number of characters to delete., PRINT#?<< p = character position to use. in, PRINT#@)) 0 = first char. Any number larger, PRINT#A** than the string length = last char., PRINT#B<< ss = substring to use. For 'D' command in, PRINT#C n is used instead of ss., PRINT#D== iflg = 0 for a successful edit, out, PRINT#E22 iflg = -1 for an error and no change to string., PRINT#F== newstring = edited string. out, PRINT#G /:#J, STRLEN= #K="D":!:#M= #N, BYTE #OD", BYTE #P= #RP) #T=" + !== + !F) #X" #Y + ! #[=" #\= =+ ! #^ + !R)#c, STRLEN #d ="== + !#g #h  !D)#l= #m=" =" ! + #p=" ="==+ !== + !.#u=/ !*#x =" #y =" , STRING #z=, N_PARAMS "  #} :#;7 JSTREQxCASEONWARNSTR1STR2LENCASWNDLENDUM1DUM2##*,TYPE ,TYPE="#+,  KEYWORD_SET" Not a string! , MESSAGECONTINUE#, :#/ ,DEFAULT #0=", STRLEN, STRLEN+, MAX #1,  KEYWORD_SET0"#2,  STRUPCASE #3,  STRUPCASE !#5 #6 #9=, STRMID=, STRMID:#:;7 M STRMATCHALLCASEONSTRLISTLENALLCASNMATCHMATCH##/,STREQCASEON, WHERE #0,  KEYWORD_SET0"  #1=" #3:#4;7 RHSTRPARSELINEDELIMLISTINDEXLENIITEMSINLIST ##*,TYPE " /:#+=/ #, #-, STRLEN #. =%#/=, STRMID, STRPOS=/"+ '#1+ #2=,  N_ELEMENTS %#3===, STRMID+ '#5, WHERE #6="  #8=, FIX:#9;7 Y STRSUBSTITUTE  NOCASENOGLOBALS_IN S_FROMS_TONOCASENOGLOBALI CNTPOS SS_INSS_FROM S_OUT ISTART ILEN ##3  #4= #5 / #6,  KEYWORD_SET"#7,  STRUPCASE #8,  STRUPCASE !#: #; #==/" #> , STRPOS #?=/" #@= #A= #B,  N_ELEMENTS="#C=/"= !=+ ! #E=+ !#I=" :#N==, STRMID #P,  KEYWORD_SET" = #Q==%#R, STRLEN #S="  !=  #U   , STRMID ' #Y :#Z;7 [TYPEXDUM###, SIZE #$  :#%;7 `L VECT2STRINGADUMTYPENELEMRESULTI ##, SIZE #   # ,  N_ELEMENTS # [ #  "# = %#'', '#'='] ! #==%#=,  STRCOMPRESSREMOVE_ALL, '#==,  STRCOMPRESSREMOVE_ALL] #:#;7 cLVOIGT1XAXXLORGAURES##$  #% ? ? = #' @, ALOG, SQRT==/, EXP #( ==  #):#*;7 sWMENU2 < HELPINITIAL_SELECTIONNOMOUSE NOWIDGETSTITLELIST HLP INITNOMNOWTTNAMEFLAGB E IN MX I TXT ###% , N_PARAMS ,  KEYWORD_SET"#&BB Like wmenu but allows non-mouse menus. Uses widgets if available., PRINT#' i = wmenu2(list), PRINT#(++ list = menu in a string array. in, PRINT#),, i = selected menu item number. out, PRINT#* Keywords:, PRINT#+99 TITLE=t item number to use as title (def = no title)., PRINT#,99 INITIAL_SELECTION=s initial item selected (=default)., PRINT#-## /NOMOUSE forces no mouse mode., PRINT#.$$ /NOWIDGETS forces no widget mode., PRINT#/=/:#2,  N_ELEMENTS="=/ #3,  N_ELEMENTS="=/ #52!D8NAME5 #6= #7SUN"= #8X"= #9WIN"= #:,  KEYWORD_SET" = #=="#>2!D8FLAGS5 =,  KEYWORD_SET0" #A,  N_ELEMENTS, INDGEN,XMENUBASEUVAL#B=, WIDGET_CONTROLREAL#C,  WIDGET_EVENT #D 18ID5 , WIDGET_CONTROLGET_UVAL#E " ! #F=, WIDGET_CONTROLDEST#G :!#J,WMENU2INITTITLE #K =" ! #L :#Q , PRINT#R,  N_ELEMENTS= #S=" , PRINT#T=  %#U "    , PRINT'#W #X="#Y Choose (def =  , STRTRIM):  , READ!#[ Choose:  , READ#] " #^ = #_ =  "#`!! You must choose one of the above, PRINT#a!#c "#d!! You must choose one of the above, PRINT#e!#g :#i;7 8XGETFILE DEFAULTGROUPREADTITLEWAITWRITEWTITLEDEFAULTGROUPREADTITLE WAITWRITEWTITLEOUTTOPBUTTONS B_OK B_CANCEL B_BROWSE ID IDTXTKEEPSAVE #@#B,  N_ELEMENTS " #C,  N_ELEMENTS="= #D,  N_ELEMENTS="XGetFile #E,  KEYWORD_SET"Select File to Read: != #F,  KEYWORD_SET"Select File to Write: != #G,  KEYWORD_SET"  !  #J ,  WIDGET_BASECOLUMNTITLEx #K= ,  WIDGET_BASEROWX #L OKOK,  WIDGET_BUTTONUVALVALE #M CancelCANCEL,  WIDGET_BUTTONUVALVALE #N BrowseBROWSE,  WIDGET_BUTTONUVALVALE #O = ,  WIDGET_LABELVALXSIZEYSIZE #P= = = TEXT,"  WIDGET_TEXTEDITUVALVALXSIZEYSIZE #T, WIDGET_BASE #U<TEXTIDSKEEPREADWRITE #V, WIDGET_CONTROLSET_UVAL#Y<TEXTIDSKEEP #Z= , WIDGET_CONTROLREAL#]xgetfile,XMANAGERGROUPMODAL#`, WIDGET_CONTROLGET_UVAL#b:#c;7 XPDMENU1`  BASECOLUMNFONTFRAMETITLEDESCPARENTBASECOLUMNFONTFRAME TITLE SUNITN ##, SIZE #  ="#= #,  KEYWORD_SET0"Menu !#=="PARENT must be a scalar value.", MESSAGE#= "PARENT must be a long integer.", MESSAGE#, SIZE #== "--Description argument must be of type string.", MESSAGE#=="#=, OPENRGET_LUN#= ! #==" String array must be 1-D.", MESSAGE#= #= #,  KEYWORD_SET0" = #,  KEYWORD_SET0"  #=",  KEYWORD_SET" =,  WIDGET_BASECOLUMNFRAMETITLE !=,  WIDGET_BASEFRAMEROWTITLE !,  KEYWORD_SET"=,  WIDGET_BASECOLUMNFRAME !=,  WIDGET_BASEFRAMEROW #= ,MKPULL_PULLDOWN#:# ;7 XPLOT_CONTROLSXGROUPINITVALTOPGROUPINITVALIDWBQUIT WBDROP  WBCONNECTWBSYMBOL WBLINESTYLEWBKIND WBTICKS WBFONTS WBSLI WBTHICK WBCHARWBC WBCLR_RESET WBXLOADCTWBBACKG WBAXISCOLORWBCOLOR## , ON_ERROR#,  KEYWORD_SET0"  #,  KEYWORD_SET0"  # Xplot controls,  WIDGET_BASECOLUMNTITLEx # Hide ControlsCONTROLS,  WIDGET_BUTTONUVALUEVALUE #==,  WIDGET_BASECOLUMNFRAME #PSYMSIGN ConnectedDisconnected + Symbols:, WIDGET_DROPLISTTITLEUVALUEVALUE #PSYM0: Line1: +2: * 3: Period 4: Diamond 5: Triangle 6: Square7: X8: User-defined  9: Undefined 10:Histogram+  Symbol:, WIDGET_DROPLISTTITLEUVALUEVALUE #0: Solid 1: Dotted 2: Dashed 3: Dash-Dot4: -...5: Long Dash + Linestyle: LINESTYLE, WIDGET_DROPLISTTITLEUVALUEVALUE #Lin/LinLin/LogLog/LinLog/Log + Axis:KIND, WIDGET_DROPLISTTITLEUVALUEVALUE #InOutGrid + Ticks:TICKLEN , WIDGET_DROPLISTTITLEUVALUEVALUEXSIZE) #3: Simplex Roman4: Simplex Greek5: Duplex Roman6: Complex Roman7: Complex Greek8: Complex Italic9: Math and Special 10: Special11: Gothic English12: Simplex Script13: Complex Script14: Gothic Italian15: Gothic German 16: Cyrillic17: Triplex Roman18: Triplex Italic+ Font:FONT, WIDGET_DROPLISTTITLEUVALUEVALUE #==,  WIDGET_BASECOLUMNFRAME # Line/Symbol thickness=THICK  A =,0 CW_FSLIDEREDITFRAMEMAXMINTITLEUVALUEXSIZE # Character Size=CHARSIZE = @@ =,0 CW_FSLIDEREDITFRAMEMAXMINTITLEUVALUEXSIZE #==,  WIDGET_BASECOLUMNFRAME # Reset initial color  CLR_RESET,  WIDGET_BUTTONUVALUEVALUE # Change color table XLOADCT,  WIDGET_BUTTONUVALUEVALUE #Bkgd: CLR_BACK Z ,  CW_CLR_INDEXLABELUVALUEXSIZEYSIZE) #Axis: CLR_AXIS==,  CW_CLR_INDEXLABELUVALUEXSIZEYSIZE) #Lines:CLR==,  CW_CLR_INDEXLABELUVALUEXSIZEYSIZE) #,  KEYWORD_SET"#18CONNECT5, WIDGET_CONTROLSET_DROPLIST_SELECT#18SYMBOL5, WIDGET_CONTROLSET_DROPLIST_SELECT#18 LINESTYLE5, WIDGET_CONTROLSET_DROPLIST_SELECT# 18AXIS5, WIDGET_CONTROLSET_DROPLIST_SELECT# 18TICKS5, WIDGET_CONTROLSET_DROPLIST_SELECT# 18FONT5, WIDGET_CONTROLSET_DROPLIST_SELECT# 18 THICKNESS5, WIDGET_CONTROLSET_VALUES#18CHARSIZE5, WIDGET_CONTROLSET_VALUES#, WIDGET_CONTROLSET_UVAL#=xplot_controls_event, WIDGET_CONTROLEVENT_PROGROUPREALIZE#,  KEYWORD_SET"#18 BACKGROUND5, WIDGET_CONTROLSET_VALUEO#18 AXISCOLOR5, WIDGET_CONTROLSET_VALUEO#18COLOR5, WIDGET_CONTROLSET_VALUEO#xplot_controls,XMANAGERGROUP_LEADER#+:#;7 àXPLOT_DEFAULTS  INPSTRING SYSVAR_OLD SYSVARDEFOUT## , ON_ERROR#,  STRLOWCASE # xpdt)# !p.charsize = 2!P8CHARSIZE5 ,  STRCOMPRESSREM !p.ticklen = 2!P8TICKLEN5=,  STRCOMPRESSREM !x.range = 2!X8RANGE5, VECT2STRING !y.range = 2!Y8RANGE5, VECT2STRING !x.style = 2!X8STYLE5=,  STRCOMPRESSREM !y.style = 2!Y8STYLE5=,  STRCOMPRESSREM!p.background = 2!P8 BACKGROUND5=,  STRCOMPRESSREM !p.color = 2!P8COLOR5=,  STRCOMPRESSREM+ #!p.charsize = 2!P8CHARSIZE5=,  STRCOMPRESSREMX !p.ticklen = 2!P8TICKLEN5=,  STRCOMPRESSREMX !x.range = 2!X8RANGE5, VECT2STRING !y.range = 2!Y8RANGE5, VECT2STRING !x.style = 1 !y.style = 1!p.background = 0!p.color = 255+ #! ====  ?= 0 =+ =+ ====+====+<XPDTXCOLYCOLCONNECTPSYM LINESTYLEKINDTHICKNFILESFILENAMEFONTSHIFTERRPLOTINFILE SYSVAR_OLDSYSVARZOOMSELAXIS2 ! xpdt_limits)#)2!X=9RANGE52!X=9RANGE50ExactExtendNo axisNo boxNo zero+2!Y=9RANGE52!Y=9RANGE50ExactExtendNo axisNo boxNo zero+< XPDT_LIMITSXMINXMAXXSTYLEYMINYMAXYSTYLE ! xpdt_titles)#.   < XPDT_TITLESTITLEXTITLEYTITLE ! strcontrols) #0========= = < XPSTRCONTROLSCONNECTSYMBOL LINESTYLEAXISTICKS THICKNESSCHARSIZEFONT BACKGROUND AXISCOLORCOLOR ! xpevaluate) #8 Cx = Ax*1.0 Cy = Ay*1.0012+ current set 0NoYes+ xplot.dat0NoYes+< XPEVALUATE EXPRESSION_X EXPRESSION_YNSETSET1SET2SAVE_ASFILENAMEOVER ! xpcolumnoper) #F col2*col10Append new columnOverwrite existing columnNew Xplot window+2< XPCOLUMNOPERCOMMANDTOOUTCOL ! xpconvolution) #N0Autoconvolution((Convolution with data from external file+1NoYes+1YesNo+ xplot.dat< XPCONVOLUTIONTYPEFILENAME NORMALIZATIONWRITEFILEOUT ! xpcorrelation)#Y0Auto-correlation((Correlation with data from external file+1NoYes+1YesNo+ xplot.dat< XPCORRELATIONTYPEFILENAME NORMALIZATIONWRITEFILEOUT !www)#`YYnetscape -install http://www.esrf.fr/computing/expg/subgroups/theory/idl/xplot/xplot.html !.#a= !*#d:#e;7 ּXPLOT_FITGAUSS  OUTTEXTSETOUTTEXTTEXTTMP ITMPSETXSETYRESULTYFIT I YFITMAX ## , ON_ERROR#//The gaussian fit option of XPlot permits to fit;;the current data y=f(x) to one of the following functions:   1) F(x) = A0*EXP(-z^2/2) + A3 with z=(x-A1)/A2 where:CC A0 = height of exp, A1 = center of exp, A2 = sigma (the width) A3 = constant term%% (it uses the function GAUSS_FIT) // 2) F(x) = A0*EXP(-z^2/2) + A3 + A4*x + A5*x^2 with z=(x-A1)/A2 where:CC A0 = height of exp, A1 = center of exp, A2 = sigma (the width)?? A3 = constant term, A4 = linear term, A5 = quadratic term.$$ (it uses the function GAUSSFIT) 66Please read the documentation in the Help/Routines for44detailed references of the method used for each fit.+ # =, WIDGET_MESSAGECANCELINFO #Cancel" :#=, WIDGET_CONTROLSENSITIVE# F(x) = A0*EXP(-z^2/2) + A3,, F(x) = A0*EXP(-z^2/2) + A3 + A4*x + A5*x^2+,WMENU2 #=, WIDGET_CONTROLSENSITIVE#=, REFORM #=, REFORM #=)#, GAUSS_FIT #$$ Gaussina Fit (GAUSS_FIT) results 88 Fit result : F(x) = A0*EXP(-z^2/2) + A3, z=(x-A1)/A2 A0: ==,  STRCOMPRESSREM A1: ==,  STRCOMPRESSREM A2: ==,  STRCOMPRESSREM A3: =,  STRCOMPRESSREM+ #= ,  N_ELEMENTS=% , PRINT'! =) #,GAUSSFIT #$$ Gaussina Fit (GAUSS_FIT) results ;; Fit result : F(x) = A0*EXP(-z^2/2) + A3 + A4*x + A5*x^2 z=(x-A1)/A2 A0: ==,  STRCOMPRESSREM A1: ==,  STRCOMPRESSREM A2: ==,  STRCOMPRESSREM A3: ==,  STRCOMPRESSREM A4: =,  STRCOMPRESSREM A5: =,  STRCOMPRESSREM+  #= ,  N_ELEMENTS=%  , PRINT' ! .! *# Minimum y value for the fit:  , MINMAXX=,  STRCOMPRESSREMXMaximum y value for the fit:  =,  STRCOMPRESSREMX+ #:#;7  (XPLOT_FITPOLGAUSSD  EXTRAPOPLOTOUTTEXTSETEXTRAPOPLOTOUTTEXT TEXTTMPITMPSETX SETYSDEV CHISQR PROB SIG_AB RESULT EQUATIONIYFIT STRTMPACTIONWDEGYBANDSIGMA AATEXTCHISQ COVARVARIANCEXYYFITCOMMANDYFITMAX*#.#9 , ON_ERROR#:>>The Polynomial/Gaussian fit option of XPlot permits to perform::different kind of linear, polynomial and gaussian fitting.66The different options refer to different IDL routines. 66Please read the documentation in the Help/Routines for44detailed references of the method used for each fit. ::A correspondence between Xplot polynomial fit options and ##the IDL routines is the following:  @@ 1) Chi-Square Liner Regression - LINFIT@@ 2) Robust Estimation Linear Regression - LADFITBB 3) Least Square Polynomial Fit - POLYFITW@@ 4) Singular Value Decomposition Polynomial Fit - SVDFITCC 5) Gaussian + independent term fit - GAUSS_FITBB 6) Gaussian + 2nd degree polynomial - GAUSSFIT+ #K =, WIDGET_MESSAGECANCELINFO #LCancel" :#N=, WIDGET_CONTROLSENSITIVEt#O 1) Chi-Square Linear Regression'' 2) Robust Estimation Linear Regrassion 3) Least Square Polynomial Fit// 4) Singular Value Decomposition Polynomial Fit00 5) F(x) = A0*EXP(-z^2/2) + A3 with z=(x-A1)/A2?? 6) F(x) = A0*EXP(-z^2/2) + A3 + A4*x + A5*x^2 with z=(x-A1)/A2 7) Cancel+,WMENU2 #V=, WIDGET_CONTROLSENSITIVE#Y=, REFORM #Z=, REFORM #\=)#^ ?,  N_ELEMENTS,  REPLICATE #_    , LINFITCHISQRPROBSDEVSIG_AB #ax*Result(1)+Result(0) #c&& Linear Regression (LINFIT) results  Fit result : yfit = A + Bx  A: = =,  STRCOMPRESSREM B: = =,  STRCOMPRESSREM ChiSqr:  =,  STRCOMPRESSREM Prob:  =,  STRCOMPRESSREM Sigma(A): = =,  STRCOMPRESSREM Sigma(B): = =,  STRCOMPRESSREM+ #l=,  N_ELEMENTS=%, PRINT'#m= =  !&=) #p,LADFIT #qx*Result(1)+Result(0) #s&& Linear Regression (LADFIT) results  Fit result : yfit = A + Bx  A: = =,  STRCOMPRESSREM B: = =,  STRCOMPRESSREM+ #x=,  N_ELEMENTS=% , PRINT' #y= =  !&=)#|=<N #}=Polynomial Degree,XSCRMENUACTIONNOTYPETITLES#~=,  N_ELEMENTS,  REPLICATE #DO" =:#18N5 #18N5,POLYFITW # X^=,  STRCOMPRESSREMX * Result(=,  STRCOMPRESSREMX) #===/& + X^=,  STRCOMPRESSREM * Result(=,  STRCOMPRESSREM) ( #18N5=, STRARR #=18N5%, VECT2STRING '#$$ Polynomial fit (POLYFITW) Results Fit coefficients :  , VECT2STRING Standard Deviation: =,  STRCOMPRESSREM Correlation matrix: + #=,  N_ELEMENTS=%, PRINT'!& )#=<N #=Polynomial Degree,XSCRMENUACTIONNOTYPETITLES#=,  N_ELEMENTS,  REPLICATE # #= #= #= #DO"=:#18N5=,,SVDFITCHISQCOVARVARIANCEWEIGHTYFIT #18N5 # X^=,  STRCOMPRESSREM * Result(=,  STRCOMPRESSREM) #===/& + X^=,  STRCOMPRESSREM * Result(=,  STRCOMPRESSREM) (#18N5=, STRARR #=18N5%, VECT2STRING '#"" Polynomial fit (SVDFIT) Results Fit coefficients :  , VECT2STRING Variance: , VECT2STRING ChiSq : =,  STRCOMPRESSREM Correlation matrix: + #=,  N_ELEMENTS=%, PRINT'!& ) #= # , GAUSS_FIT #99Result(0)*EXP(-((x-Result(1))/Result(2))^2/2) + Result(3) #$$ Gaussina Fit (GAUSS_FIT) results 88 Fit result : F(x) = A0*EXP(-z^2/2) + A3, z=(x-A1)/A2 A0: = =,  STRCOMPRESSREM A1: = =,  STRCOMPRESSREM A2: = =,  STRCOMPRESSREM A3: = =,  STRCOMPRESSREM+ #=,  N_ELEMENTS=%, PRINT'!& )$#= # ,GAUSSFIT #..Result(0)*EXP(-((x-Result(1))/Result(2))^2/2) ,, + Result(3) + x*Result(4) + x^2 * Result(5) #$$ Gaussina Fit (GAUSS_FIT) results ;; Fit result : F(x) = A0*EXP(-z^2/2) + A3 + A4*x + A5*x^2 z=(x-A1)/A2 A0: = =,  STRCOMPRESSREM A1: = =,  STRCOMPRESSREM A2: = =,  STRCOMPRESSREM A3: = =,  STRCOMPRESSREM A4: = =,  STRCOMPRESSREM A5: =! =,  STRCOMPRESSREM+  #=,  N_ELEMENTS=%#, PRINT'"!&6)%#=:!&.!&*#,  KEYWORD_SET")#="' !(, DINDGEN=,  N_ELEMENTS=== #= #yyfit =  #A #=/, OPLOTPSYM#,  KEYWORD_SET"*#=, DOUBLE #= #yfit =  #A # Minimum y value for the fit: , MINMAXX=,  STRCOMPRESSREMXMaximum y value for the fit: =,  STRCOMPRESSREMX+ #:#;7 !,XPLOT_READSPEC OLDCOLSTATE SCAN_INDEXMCACOLHSPEC DATANCOL LABELSSCANTMP TMPLABELS I XCOL YCOL CHANNENERGYNCHAUX ## , ON_ERROR#18SPEC8HANDLE5,  HANDLE_VALUE#0"# =, SPEC_DATAFLOATINDEX # ,  N_ELEMENTS #=,  SPEC_LABELSINDEX #,  N_ELEMENTS"#Error reading data from scan #=,  STRCOMPRESSREMX.=, WIDGET_MESSAGEERROR #=:#= #= ,  N_ELEMENTS=% !  '#18SPEC8LABELS 6#= # #,  KEYWORD_SET"#18XPDT8XCOL518XPDT8YCOL5"#18XPDT8XCOL5 #18XPDT8YCOL5 ! #===,0 SPEC_DATACALIBRATEDCHANNELSFLOATINDEXMCDATA #,  TEMPORARY,  TRANSPOSE #=,  N_ELEMENTS #,  N_ELEMENTS #=,  N_ELEMENTS"#""Error reading MCA data from scan #=,  STRCOMPRESSREM.=, WIDGET_MESSAGEERROR #=:#, REFORM=, REFORM=, REFORM+ #18WIDS8XCOLMCA5, WIDGET_CONTROLGET_VALUE#= #= #,  KEYWORD_SET" #18XPDT8YCOL5" #18XPDT8YCOL5 #18SPEC8HANDLE5=,  HANDLE_VALUESETL#18SPEC8SCAN6#18SPEC8MCA6#0" #,  N_ELEMENTS=, SINDGEN=,  N_ELEMENTS ,  STRCOMPRESS:  #18WIDS8XCOLSPEC5  =," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE#18WIDS8YCOLSPEC5  =," WIDGET_CONTROLSET_DROPLIST_SELECTSET_VALUE! #18WIDS8YCOLMCA5 =,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEI#18WIDS8NCOL5=,  STRCOMPRESSREM, WIDGET_CONTROLSET_VALUEI#18XPDT8XCOL 6#18XPDT8YCOL 6#18XPDT8SHIFT = +6#18XPDT8ERRPLOT==+6#:#;7 -XPLOT_RESTORESTATE FILENAMEIERROLDSTATEWSIZEFILENAME IERROLDSTATEWSIZEVERSIONSTATE  DTCURRENTREDGREEN BLUE I TMP H1 COMMAND LINES1NEWLINE ## , ON_ERROR#, CATCH# "#11XPLOT_RESTORESTATE: Error restoring Xplot backup., PRINT#=:#,  KEYWORD_SET0" xplot.bck #= #= #= #==+ #= #= #= #=  %dtbuffer ,  STRCOMPRESSREM = 0A '# =, RESTOREVERBOSEL#**XPLOT_RESTORESTATE: Restored Xplot backup , PRINT#,  KEYWORD_SET"#,  HANDLE_CREATEVALUEX #18 DTHCURRENT 6! #18 DTHCURRENT 6#= ###XPLOT_RESTORESTATE: old dthbuffer: 18 DTHBUFFER5, PRINT#18BUFFER5,  KEYWORD_SET" #= 18BUFFER5,  N_ELEMENTS=% #, HANDLE_CREATE #handle_value, h1,dtbuffer =,  STRCOMPRESSREM,/set # A #1 9 DTHBUFFER 6#!1 9BUFFER5 #"L, STRPOS ## plotfile,  =,  STRCOMPRESSREMX, STRLEN, STRMID #$1 9BUFFER6' #'##XPLOT_RESTORESTATE: new dthbuffer: 18 DTHBUFFER5, PRINT#+ , TVLCT#/,  KEYWORD_SET" 18WIDS18WIDS56#1:#2;7 :XPLOT_SPECSCAN GROUP_LEADERHANDLEBUTIDMCAGROUPMENUBARMAINBASEFILENAME SCANCURRENT TMP0 SCANLIST TMP1 SCANFIELD DATATYPE ACCEPTBUTT CLOSEBUTT STATE ERROR##Scan Selection  ,  WIDGET_BASECOLUMNMBARTITLEUVALUE #,  WIDGET_LABEL #,  WIDGET_LABEL #==,  WIDGET_BASECOLUMNFRAME #,  WIDGET_LABEL #=,  WIDGET_BASEROW # Scan id.ACCEPT =,(CW_FIELDRETURN_EVENTSTITLEUVALUEXSIZE # CountersMCA+==DATATYPE=,. CW_BGROUPEXCLUSIVEFRAMEROWSET_VALUEUVALUE #=,  WIDGET_BASEROW # LoadACCEPT,  WIDGET_BUTTONUVALUEVALUE # CloseCLOSE,  WIDGET_BUTTONUVALUEVALUE #  =<BUTIDFIELDFILECURRENTLISTHANDLESCANIDXMCA #,XPLOT_SPECSCAN_INIT#="#=, WIDGET_CONTROLREALIZESET_UVALUE#xplot_specscan,XMANAGERGROUP_LEADER!#=, WIDGET_CONTROLDESTROYL#:#;7 @lXPLOT_SPECTITLE  TITLE SPECHANDLESPECSCANICNTPOSNEWTITLES_FROM S_TO ##,  N_ELEMENTS "current, SPEC_SCAN #  #= #=/ #=/" ##, STRPOS #=/"#= #= #,  N_ELEMENTS="#=/"= !=+ !#+ !#=" :# #==% # , STRMID #, SPEC_HEADERS #= , STRLEN= , STRMID #, STRSUBSTITUTE ' #:#;7 H0 XPLOT_TEXT|TEXT##,  STRUPCASEANNOTATE)#22This Xplot options calls the IDL utility ANNOTATE.00The ANNOTATE widget allows you to interactively 11annotate images and plots with text and drawings. 22The ANNOTATE utility is *NOT* integrated in Xplot.--This means that the objects overplotted with 33ANNOTATE onto your Xplot graphic will not be passed44to XPlot, and will be lost when closing the ANNOTATE..window. The Xplot graphic modified by ANNOTATEcan only be printed from the 33ANNOTATE/File/Write PostScript/Everything option to..a PostScript file containing the bitmap of the11display, not the PostScript objects and lines, as11Xplot does. In any case, this application may be ..useful sometimes, and that is why we are here.+ ! HELPABOUT)#  ,, Xplot  ,, by  ,, Manuel Sanchez del Rio   ,, European Synchrotron Radiation Facility ,, BP 220, F-38043 Grenoble Cedex 9  ,, email: srio@esrf.fr ,, Tel: +33-76882513 ,, Fax: +33-76882160   + !.# !*#:#;7 H XPLOT_VERSION,##2.2:#;7 p XSCRMENUFIELD, ,FIELDLEN FLAGS_INIINTERPNAMENCOLUMNNOTYPENROWRECNAMETITLESBASE+VALFIELDLEN( FLAGS_INIINTERPNAME NCOLUMNNOTYPE NROWRECNAME# TITLES, NCOL DIMARR TYPARR VARSIZEVARDIMSTYPE NUMELEMENTS  SCROLLVALABASE SUFFIX&J$LBLMODULII%ELEMENT' INDEXNAMEINDEXARR FLATINDEX*THENAME"THEBASEALABEL FRAMESETTING THEVALUE !ROWBASE"LABLE#ID$TAGS%ERROR& FIELDVALUE'FLDSIZE!(FLDDIMS))CCNAME *TTYPE+5# ##,  KEYWORD_SET0"  !  #$,  KEYWORD_SET0"= #%,  KEYWORD_SET0"= #&,  KEYWORD_SET0"   #'==" #(= #(= #+     = =+ #. UndefinedByteIntegerLongword IntegerFloating PointDouble Precision FloatingComplex Floating PointString Structure+  #4, SIZE #5,  N_ELEMENTS  #6 #7= #9= " = != #>= =,*  WIDGET_BASECOLUMNFRAMEROWSCROLLXPADYPAD #F="#G Array( #H==%#I= , STRTRIM #J=",  '#L) !#M #P="=,  TAG_NAMESSTRUCTURE #S,  KEYWORD_SET0"#T,  KEYWORD_SET" ( ),  WIDGET_LABELVALUE ! ,  WIDGET_LABELVALUE !#^,  KEYWORD_SET",  WIDGET_LABELVALUE !,  WIDGET_LABELVALUE #e ,  KEYWORD_SET0"thevar #i==" #j==, LONARR= #k== =/&#l==%= =  '(#q==%5#s="'#t( #u== , STRTRIM #w=="&#x==, LONARR #y #z== ==/&##{ #| ("#~=== %%, = , STRTRIM '$#) #  #==,  WIDGET_BASEFRAMEROW #: ,  WIDGET_LABELVALUE #= !(#= #  # #=))#Undefined Variable! !4=)*#(I3), STRINGFORMAT! !4 )+#=,  WIDGET_BASEROW" #"Real: ,  WIDGET_LABELVALUE# #", FLOAT, STRING = = ,0  WIDGET_TEXTEDITABLEFRAMEUVALUEVALUEXSIZEYSIZE$ #$, ADDEDITENTRY#" Imaginary: ,  WIDGET_LABELVALUE# #",  IMAGINARY, STRING = = ,0  WIDGET_TEXTEDITABLEFRAMEUVALUEVALUEXSIZEYSIZE$ #$, ADDEDITENTRY!4= ),#! !4=)3#,  TAG_NAMES% #=%,  N_ELEMENTS=%2#fieldvalue = val(element).%A& #', SIZE( #(,  N_ELEMENTS= ) # ,  KEYWORD_SET". * !/%* #=(=(+ #+= ',  N_ELEMENTS=="0#=',  N_ELEMENTS='=*=', FIX=',  N_ELEMENTS=',0 CW_BSELECTORFRAMELABEL_TOPRETURN_UVALUESET_VALUE$ #.%(0)+$, ADDEDITENTRY!1#'*.%,& XSCRMENUFIELDFIELDLENNAMENOTYPERECNAME$ #,  KEYWORD_SET"2$, WIDGET_CONTROLMAP'-!4.#= , STRTRIM! !4*#=*="5#! = = ,0  WIDGET_TEXTEDITABLEFRAMEUVALUEVALUEXSIZEYSIZE$ #$, ADDEDITENTRY'!#$:#;7 r$ __CLEANMSGMSGP##:, STRPOS # , STRLEN, STRMID , STRTRIM:#;7 t__ISASPECHANDLE@HANDLEA#j#k, SIZE #l  " :#m,  TAG_NAMES #n=SPECFILE"=:! :#o;7 v __LINECUTlLINELENPAUX## , STRTRIM  #, STRLEN # , STRPOS # , STRMID #= #, STRMID , STRTRIM #:#;7  __LINESPLIT@  OLDLINENSPACESIMIN IMAXLINE POSAUX0 AUXNLIST LENGTH I ## )# ,  STRCOMPRESS, STRTRIM #, BYTE  , WHERE ! )# =, STRTRIM #, BYTE #= #= += ,  N_ELEMENTS=+0, WHERE #  #, STRING,  STRCOMPRESS #, BYTE=, WHERE ! .#:! *#,  N_ELEMENTS #=" #, STRLEN, STRMID ! #=, STRLEN+ # #, STRARR #= =%     , STRMID ' #= ,  N_ELEMENTS"Too few fields in <>, MESSAGE#= ,  N_ELEMENTS"Too many fields in <>, MESSAGE# :#;7