Re: ncl-talk Digest, Vol 86, Issue 32

From: Ed Martino <Ed.Martino_at_nyahnyahspammersnyahnyah>
Date: Thu Jan 20 2011 - 13:46:27 MST

All

Problem solved. I forgot to add these lines

; Overlay contour and vector plots on the map plot.
   overlay(mpid,slpanom)
   overlay(mpid,windanom)

before the last line

; Export Plot
maximize_output(wks2, True)

Thanks again.
Ed

On 1/20/2011 2:00 PM, ncl-talk-request@ucar.edu wrote:
> Send ncl-talk mailing list submissions to
> ncl-talk@ucar.edu
>
> To subscribe or unsubscribe via the World Wide Web, visit
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
> or, via email, send a message with subject or body 'help' to
> ncl-talk-request@ucar.edu
>
> You can reach the person managing the list at
> ncl-talk-owner@ucar.edu
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of ncl-talk digest..."
>
>
> Today's Topics:
>
> 1. overlay plots to postscript ? (Ed Martino)
> 2. Re: overlay plots to postscript ? (Adam Phillips)
> 3. Re: About how to plot a kind of fig (Mary Haley)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Thu, 20 Jan 2011 09:42:50 -0500
> From: Ed Martino<Ed.Martino@noaa.gov>
> Subject: overlay plots to postscript ?
> To: ncl-talk@ucar.edu
> Message-ID:<4D3849EA.10602@noaa.gov>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
> Hi
>
> I am plotting slp contours and wind vectors on the same plot using the
> "overlay" function, and I'm having trouble with the postscript output.
> The code copied below generate the desired plot and exports the results
> to an X11 display. However, I cannot get a postscript output of this
> plot. The script works fine down to line
> "wks=gsn_open_wks("ps","slpanom")" and the slp-wind plot is displayed to
> my X-win display. However, the few lines of code after this line fail
> to produce a postscript output file, as I've done with many
> non-overlaying plots, and I receive the following errors.
>
> "warning:Attempt to reference attribute (gsnPaperOrientation) which is
> undefined
> warning:NhlCvtScalarToEnum:Unable to convert from Integer to
> WorkOrientation,
> -999 is not a valid value for WorkOrientation
> warning:Error retrieving resource wkOrientation from args - Ignoring Arg
> warning:PSWorkstationInitialize:Device X Coordinates invalid, defaulting
> warning:PSWorkstationInitialize:Device Y Coordinates invalid, defaulting"
>
> I suspect the "overlay" function is causing this problem but cannot sort
> it out. Thanks in advance.
>
> Ed
>
> *** NCL script ********
>
>
> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
>
> begin
>
> ; open netcdf files
> slp_file=addfile("slp.mon.mean.nc","r")
> u_file=addfile("uwnd.mon.mean.nc", "r")
> v_file=addfile("vwnd.mon.mean.nc", "r")
>
> ;NOTE the wind and slp files are both monthly mean files
> ;from the NCEP Reanalysis files thus no time/date conversions necessary
>
> time=slp_file->time ;; read the variables from files
> slp=slp_file->slp
> lat=slp_file->lat
> lon=slp_file->lon
>
> u=u_file->uwnd
> lat=u_file->lat
> lon=u_file->lon
>
> v=v_file->vwnd
> lat=v_file->lat
> lon=v_file->lon
>
> utc_date = ut_calendar(time(12), -5) ;; use "ut_calender" to check
> the date in year, month,
> print(utc_date) ;; day format, given the the
> index of the "time" variable.
>
> ; first calculate all winds
>
>
> slp1959=dim_avg_n(slp(131:137,:,:),0)
> slp1960=dim_avg_n(slp(143:149,:,:),0)
> slp1961=dim_avg_n(slp(155:161,:,:),0)
> slp1962=dim_avg_n(slp(167:173,:,:),0)
> slp1963=dim_avg_n(slp(179:185,:,:),0)
> slp1964=dim_avg_n(slp(191:197,:,:),0)
> slp1965=dim_avg_n(slp(203:209,:,:),0)
> slp1966=dim_avg_n(slp(215:221,:,:),0) ;; average the Dec-June slp for
> each year of interest
> slp1967=dim_avg_n(slp(227:233,:,:),0)
> slp1968=dim_avg_n(slp(239:245,:,:),0)
> slp1969=dim_avg_n(slp(251:257,:,:),0)
> slp1970=dim_avg_n(slp(263:269,:,:),0) ;; using the "dim_avg_n" function
> slp1971=dim_avg_n(slp(275:281,:,:),0)
> slp1972=dim_avg_n(slp(287:293,:,:),0)
> slp1973=dim_avg_n(slp(299:305,:,:),0)
> slp1974=dim_avg_n(slp(311:317,:,:),0)
> slp1975=dim_avg_n(slp(323:329,:,:),0)
> slp1976=dim_avg_n(slp(335:341,:,:),0)
> slp1977=dim_avg_n(slp(347:353,:,:),0)
> slp1978=dim_avg_n(slp(359:365,:,:),0)
> slp1979=dim_avg_n(slp(371:377,:,:),0)
> slp1980=dim_avg_n(slp(383:389,:,:),0)
> slp1981=dim_avg_n(slp(395:401,:,:),0)
> slp1982=dim_avg_n(slp(407:413,:,:),0)
> slp1983=dim_avg_n(slp(419:425,:,:),0)
> slp1984=dim_avg_n(slp(431:437,:,:),0)
> slp1985=dim_avg_n(slp(443:449,:,:),0)
> slp1986=dim_avg_n(slp(455:461,:,:),0)
> slp1987=dim_avg_n(slp(467:473,:,:),0)
> slp1988=dim_avg_n(slp(479:485,:,:),0)
> slp1989=dim_avg_n(slp(491:497,:,:),0)
> slp1990=dim_avg_n(slp(503:509,:,:),0)
> slp1991=dim_avg_n(slp(515:521,:,:),0)
> slp1992=dim_avg_n(slp(527:533,:,:),0)
> slp1993=dim_avg_n(slp(539:545,:,:),0) ;; averaging months for all years
> slp1994=dim_avg_n(slp(551:557,:,:),0) ;; for anomaly calculation
> slp1995=dim_avg_n(slp(563:569,:,:),0) ;; NOTE should we only use
> years when fish data?
> slp1996=dim_avg_n(slp(575:581,:,:),0) ;; or available years? ESRL
> online tool?
> slp1997=dim_avg_n(slp(587:593,:,:),0)
> slp1998=dim_avg_n(slp(599:605,:,:),0)
> slp1999=dim_avg_n(slp(611:617,:,:),0)
> slp2000=dim_avg_n(slp(623:629,:,:),0)
> slp2001=dim_avg_n(slp(635:641,:,:),0)
> slp2002=dim_avg_n(slp(647:653,:,:),0)
> slp2003=dim_avg_n(slp(659:665,:,:),0)
> slp2004=dim_avg_n(slp(671:677,:,:),0)
> slp2005=dim_avg_n(slp(683:689,:,:),0)
> slp2006=dim_avg_n(slp(695:701,:,:),0)
> slp2007=dim_avg_n(slp(707:713,:,:),0)
> slp2008=dim_avg_n(slp(719:725,:,:),0)
> slp2009=dim_avg_n(slp(731:737,:,:),0)
> slp2010=dim_avg_n(slp(743:749,:,:),0)
>
> u1959=dim_avg_n(u(131:137,:,:),0)
> u1960=dim_avg_n(u(143:149,:,:),0)
> u1961=dim_avg_n(u(155:161,:,:),0)
> u1962=dim_avg_n(u(167:173,:,:),0)
> u1963=dim_avg_n(u(179:185,:,:),0)
> u1964=dim_avg_n(u(191:197,:,:),0)
> u1965=dim_avg_n(u(203:209,:,:),0)
> u1966=dim_avg_n(u(215:221,:,:),0) ;; average the Dec-June u for each
> year of interest
> u1967=dim_avg_n(u(227:233,:,:),0)
> u1968=dim_avg_n(u(239:245,:,:),0)
> u1969=dim_avg_n(u(251:257,:,:),0)
> u1970=dim_avg_n(u(263:269,:,:),0) ;; using the "dim_avg_n" function
> u1971=dim_avg_n(u(275:281,:,:),0)
> u1972=dim_avg_n(u(287:293,:,:),0)
> u1973=dim_avg_n(u(299:305,:,:),0)
> u1974=dim_avg_n(u(311:317,:,:),0)
> u1975=dim_avg_n(u(323:329,:,:),0)
> u1976=dim_avg_n(u(335:341,:,:),0)
> u1977=dim_avg_n(u(347:353,:,:),0)
> u1978=dim_avg_n(u(359:365,:,:),0)
> u1979=dim_avg_n(u(371:377,:,:),0)
> u1980=dim_avg_n(u(383:389,:,:),0)
> u1981=dim_avg_n(u(395:401,:,:),0)
> u1982=dim_avg_n(u(407:413,:,:),0)
> u1983=dim_avg_n(u(419:425,:,:),0)
> u1984=dim_avg_n(u(431:437,:,:),0)
> u1985=dim_avg_n(u(443:449,:,:),0)
> u1986=dim_avg_n(u(455:461,:,:),0)
> u1987=dim_avg_n(u(467:473,:,:),0)
> u1988=dim_avg_n(u(479:485,:,:),0)
> u1989=dim_avg_n(u(491:497,:,:),0)
> u1990=dim_avg_n(u(503:509,:,:),0)
> u1991=dim_avg_n(u(515:521,:,:),0)
> u1992=dim_avg_n(u(527:533,:,:),0)
> u1993=dim_avg_n(u(539:545,:,:),0) ;; averaging months for all years
> u1994=dim_avg_n(u(551:557,:,:),0) ;; for anomaly calculation
> u1995=dim_avg_n(u(563:569,:,:),0) ;; NOTE should we only use years
> when fish data?
> u1996=dim_avg_n(u(575:581,:,:),0) ;; or available years? ESRL online
> tool?
> u1997=dim_avg_n(u(587:593,:,:),0)
> u1998=dim_avg_n(u(599:605,:,:),0)
> u1999=dim_avg_n(u(611:617,:,:),0)
> u2000=dim_avg_n(u(623:629,:,:),0)
> u2001=dim_avg_n(u(635:641,:,:),0)
> u2002=dim_avg_n(u(647:653,:,:),0)
> u2003=dim_avg_n(u(659:665,:,:),0)
> u2004=dim_avg_n(u(671:677,:,:),0)
> u2005=dim_avg_n(u(683:689,:,:),0)
> u2006=dim_avg_n(u(695:701,:,:),0)
> u2007=dim_avg_n(u(707:713,:,:),0)
> u2008=dim_avg_n(u(719:725,:,:),0)
> u2009=dim_avg_n(u(731:737,:,:),0)
> u2010=dim_avg_n(u(743:749,:,:),0)
>
> v1959=dim_avg_n(v(131:137,:,:),0)
> v1960=dim_avg_n(v(143:149,:,:),0)
> v1961=dim_avg_n(v(155:161,:,:),0)
> v1962=dim_avg_n(v(167:173,:,:),0)
> v1963=dim_avg_n(v(179:185,:,:),0)
> v1964=dim_avg_n(v(191:197,:,:),0)
> v1965=dim_avg_n(v(203:209,:,:),0)
> v1966=dim_avg_n(v(215:221,:,:),0) ;; average the Dec-Jvne v for each
> year of interest
> v1967=dim_avg_n(v(227:233,:,:),0)
> v1968=dim_avg_n(v(239:245,:,:),0)
> v1969=dim_avg_n(v(251:257,:,:),0)
> v1970=dim_avg_n(v(263:269,:,:),0) ;; vsing the "dim_avg_n" fvnction
> v1971=dim_avg_n(v(275:281,:,:),0)
> v1972=dim_avg_n(v(287:293,:,:),0)
> v1973=dim_avg_n(v(299:305,:,:),0)
> v1974=dim_avg_n(v(311:317,:,:),0)
> v1975=dim_avg_n(v(323:329,:,:),0)
> v1976=dim_avg_n(v(335:341,:,:),0)
> v1977=dim_avg_n(v(347:353,:,:),0)
> v1978=dim_avg_n(v(359:365,:,:),0)
> v1979=dim_avg_n(v(371:377,:,:),0)
> v1980=dim_avg_n(v(383:389,:,:),0)
> v1981=dim_avg_n(v(395:401,:,:),0)
> v1982=dim_avg_n(v(407:413,:,:),0)
> v1983=dim_avg_n(v(419:425,:,:),0)
> v1984=dim_avg_n(v(431:437,:,:),0)
> v1985=dim_avg_n(v(443:449,:,:),0)
> v1986=dim_avg_n(v(455:461,:,:),0)
> v1987=dim_avg_n(v(467:473,:,:),0)
> v1988=dim_avg_n(v(479:485,:,:),0)
> v1989=dim_avg_n(v(491:497,:,:),0)
> v1990=dim_avg_n(v(503:509,:,:),0)
> v1991=dim_avg_n(v(515:521,:,:),0)
> v1992=dim_avg_n(v(527:533,:,:),0)
> v1993=dim_avg_n(v(539:545,:,:),0) ;; averaging months for all years
> v1994=dim_avg_n(v(551:557,:,:),0) ;; for anomaly calcvlation
> v1995=dim_avg_n(v(563:569,:,:),0) ;; NOTE shovld we only vse years
> when fish data?
> v1996=dim_avg_n(v(575:581,:,:),0) ;; or available years? ESRL online
> tool?
> v1997=dim_avg_n(v(587:593,:,:),0)
> v1998=dim_avg_n(v(599:605,:,:),0)
> v1999=dim_avg_n(v(611:617,:,:),0)
> v2000=dim_avg_n(v(623:629,:,:),0)
> v2001=dim_avg_n(v(635:641,:,:),0)
> v2002=dim_avg_n(v(647:653,:,:),0)
> v2003=dim_avg_n(v(659:665,:,:),0)
> v2004=dim_avg_n(v(671:677,:,:),0)
> v2005=dim_avg_n(v(683:689,:,:),0)
> v2006=dim_avg_n(v(695:701,:,:),0)
> v2007=dim_avg_n(v(707:713,:,:),0)
> v2008=dim_avg_n(v(719:725,:,:),0)
> v2009=dim_avg_n(v(731:737,:,:),0)
> v2010=dim_avg_n(v(743:749,:,:),0)
>
>
> slp_sbass =
> (slp1966+slp1970+slp1993+slp1994+slp1996+slp1998+slp1999+slp2000+slp2001+slp2003+slp2005)/11
> ;; average the Dec-June slp for the 11 years
> slp_all_years =
> (slp1959+slp1960+slp1961+slp1962+slp1963+slp1964+slp1965+slp1966+slp1967+slp1968+slp1969+slp1970+slp1971+slp1972+slp1973+slp1974+slp1975+slp1976+slp1977+slp1978+slp1979+slp1980+slp1981+slp1982+slp1983+slp1984+slp1985+slp1986+slp1987+slp1988+slp1989+slp1990+slp1991+slp1992+slp1993+slp1994+slp1995+slp1996+slp1997+slp1998+slp1999+slp2000+slp2001+slp2002+slp2003+slp2004+slp2005+slp2006+slp2007+slp2008+slp2009+slp2010)/52
> slp_anom = (slp_sbass - slp_all_years)
>
> u_sbass =
> (u1966+u1970+u1993+u1994+u1996+u1998+u1999+u2000+u2001+u2003+u2005)/11
> ;; average the Dec-June u wind
> u_all_years=(u1959+u1960+u1961+u1962+u1963+u1964+u1965+u1966+u1967+u1968+u1969+u1970+u1971+u1972+u1973+u1974+u1975+u1976+u1977+u1978+u1979+u1980+u1981+u1982+u1983+u1984+u1985+u1986+u1987+u1988+u1989+u1990+u1991+u1992+u1993+u1994+u1995+u1996+u1997+u1998+u1999+u2000+u2001+u2002+u2003+u2004+u2005+u2006+u2007+u2008+u2009+u2010)/52
> u_anom = (u_sbass - u_all_years)
>
> v_sbass =
> (v1966+v1970+v1993+v1994+v1996+v1998+v1999+v2000+v2001+v2003+v2005)/11
> ;; average the Dec-Jvne v wind
> v_all_years=(v1959+v1960+v1961+v1962+v1963+v1964+v1965+v1966+v1967+v1968+v1969+v1970+v1971+v1972+v1973+v1974+v1975+v1976+v1977+v1978+v1979+v1980+v1981+v1982+v1983+v1984+v1985+v1986+v1987+v1988+v1989+v1990+v1991+v1992+v1993+v1994+v1995+v1996+v1997+v1998+v1999+v2000+v2001+v2002+v2003+v2004+v2005+v2006+v2007+v2008+v2009+v2010)/52
> v_anom = (v_sbass - v_all_years)
>
>
> slp_anom!0="lat" ;; Assign lat and lon coordinates to slp_anom to
> enable plotting
> slp_anom!1="lon"
> slp_anom&lat=lat
> slp_anom&lon=lon
>
> u_anom!0="lat" ;; Assign lat and lon coordinates to u_anom to
> enable plotting
> u_anom!1="lon"
> u_anom&lat=lat
> u_anom&lon=lon
>
> v_anom!0="lat" ;; Assign lat and lon coordinates to v_anom to
> enable plotting
> v_anom!1="lon"
> v_anom&lat=lat
> v_anom&lon=lon
>
>
> wks = gsn_open_wks("X11","slp_anom") ;; Open graphic workstation for
> xwindow or file output
>
>
> ;******** Define RGB triplet colors
> colors = (/ (/255, 255,255/),
> (/15,10,120/),(/20,30,155/),(/25,55,180/),(/28,65,197/),(/29,75,200/), \
>
> (/28,78,200/),(/28,80,210/),(/30,85,210/),(/30,95,215/),(/32,100,220/),(/32,102,220/),(/35,105,228/),(/35,115,228/),
> \
>
> (/37,125,230/),(/37,135,230/),(/37,155,230/),(/38,165,231/),(/38,175,231/),(/39,180,233/),(/39,185,233/),(/40,190,233/),
> \
> (/50,205,232/),(/120,230,245/),(/180,240,255/), \
> (/255, 255,255/),(/255, 255,255/), (/255, 255,255/), \
> (/250,
> 245,175/),(/250,235,165/),(/245,235,165/),(/245,225,155/),(/243,220,140/), \
> (/243,
> 218,135/),(/242,212,125/),(/240,210,118/),(/240,205,115/),(/238,204,112/),(/238,200,108/),
> \
> (/235,
> 200,108/),(/235,185,105/),(/225,180,103/),(/220,175,85/),(/220,150,75/),(/215,130,60/),
> \
>
> (/215,125,55/),(/215,100,45/),(/218,90,45/),(/210,70,35/),(/200,60,15/),
> (/195,55,10/)\
> /) * 1.0 ; we
> multiply by 1.0 to make colors float
> colors = colors/255. ;
> normalize (required by NCL)
>
> gsn_define_colormap(wks, colors) ;
> ; gsn_define_colormap(wks,"nrl_sirkes")
>
>
> res = True
> res@gsnDraw = False
> res@gsnFrame = False
> vcres = res
> mpres = res
>
>
> res@cnFillOn = True ; turn on color fill
> res@lbLabelAutoStride = True ; automatically choose best stride
> res@cnLevelSpacingF = 0.2
> res@gsnSpreadColors = True
> res@gsnMaximize = True
> res@gsnPaperOrientation = "auto"
> res@lbLabelAngleF = 0
> res@pmLabelBarOrthogonalPosF = 0.1
> res@tiMainString = "Dec-Jun SLP (millibars) and Wind (m/s)
> Anomalies"
> res@cnLevelSelectionMode = "ExplicitLevels" ; set explicit
> contour levels
> res@cnLevels = (/
> -1.35,-1.30,-1.25,-1.20,-1.15,-1.10,-1.05,-1.0,-0.95,-0.90,-0.85,-0.80,-0.75,-0.70,-0.65,-0.60,-0.55,-0.50,-0.45,-0.40,
> \
> -0.35,-0.30,-0.25,-0.20,-0.15,-0.10,-0.05, 0,
> 0.05,0.10,0.15,0.20,0.25,0.30,0.35,0.40,0.45,0.50,0.55,0.60,0.65,0.70,0.75,0.80,0.85,
> \
> 0.90,0.95,1.0,1.05,1.10,1.15,1.20,1.25,1.30,1.35
> /) ; set levels
> res@cnLinesOn = False ; turn off the contour lines
> res@cnFillDrawOrder = "Predraw"
>
>
> ; Set up some vector resources.
>
> vcres@vcLevelSelectionMode = "ManualLevels"
> vcres@gsnMaximize = True
> vcres@gsnPaperOrientation = "auto"
> vcres@vcMinLevelValF = -20.0
> vcres@vcMaxLevelValF = 100.0
> vcres@vcLevelSpacingF = 0.25
> ; vcres@gsnSpreadColors = False
> ; vcres@gsnSpreadColorEnd = 3
> vcres@vcGlyphStyle = "LineArrow"
> ; vcres@vcFillArrowsOn = False
> vcres@vcLineArrowColor = "gray40"
> ; vcres@vcFillArrowFillColor = 30
> ; vcres@vcFillArrowEdgeColor = 30
> vcres@vcLineArrowThicknessF = 0.50
> vcres@vcMinFracLengthF = 0.005
> vcres@vcMinMagnitudeF = 0.025
> vcres@vcRefLengthF = 0.022
> vcres@vcRefMagnitudeF = 0.50
> vcres@vcRefAnnoOrthogonalPosF = -0.55
> vcres@vcRefAnnoParallelPosF = 0.997
> vcres@vcRefAnnoFontHeightF = 0.010
> vcres@lbTitleString = "Surface Wind Anomaly"
> vcres@lbTitleOffsetF = -1.50
> vcres@lbTitleFontHeightF = 0.005
> vcres@lbLabelFontHeightF = 0.005
> vcres@lbLabelAutoStride = True
> vcres@vcLineArrowHeadMinSizeF = 0.005
> vcres@vcLineArrowHeadMaxSizeF = 0.005
>
> ;
> ; Make sure vectors are drawn in "predraw" phase.
> ;
>
> vcres@vcVectorDrawOrder = "Predraw"
>
> ; Control appearance of map.
> ;
> ; mpres@mpProjection = "LambertEqualArea"
> mpres@mpDataBaseVersion = "MediumRes"
> mpres@gsnMaximize = True
> mpres@gsnPaperOrientation = "auto"
> mpres@mpLabelsOn = False
> mpres@mpPerimOn = True
> mpres@mpGridAndLimbOn = False
> mpres@mpFillOn = False
> mpres@mpOutlineOn = True
> mpres@mpOutlineDrawOrder = "PostDraw"
> mpres@mpFillDrawOrder = "Predraw"
> mpres@mpOceanFillColor = 9
> mpres@mpLandFillColor = 43
> mpres@mpGeophysicalLineThicknessF = 1.5
>
>
> ;
> ; Zoom in on area
> ;
> mpres@mpLimitMode = "LatLon"
> mpres@mpMinLatF = 0.
> mpres@mpMaxLatF = 90.
> mpres@mpMinLonF = -120.
> mpres@mpMaxLonF = 0.
>
> ; Use "overlay" to overlay anomalies for slp and wind
>
> ; slpanom = gsn_csm_contour(wks,slp_anom,res)
> ; windanom = gsn_csm_vector_map(wks,u_anom, v_anom,res2)
>
> slpanom = gsn_csm_contour(wks,slp_anom,res)
> windanom = gsn_csm_vector(wks,u_anom, v_anom,vcres)
> mpid = gsn_csm_map(wks,mpres)
>
> ; Overlay contour and vector plots on the map plot.
>
> overlay(mpid,slpanom)
> overlay(mpid,windanom)
>
> ; Draw to Xwindow
> maximize_output(wks, True)
>
> wks=gsn_open_wks("ps","slpanom")
>
> ; Export Plot
> maximize_output(wks, True)
>
> end
>
>

-- 
Edward J. Martino, Ph.D.
NOAA-JHT
Cooperative Oxford Laboratory
904 S Morris St
Oxford, MD 21654
Ph: (410) 226 5193   ext: 179
_______________________________________________
ncl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk
Received on Thu Jan 20 13:46:34 2011

This archive was generated by hypermail 2.1.8 : Tue Jan 25 2011 - 14:22:15 MST